一种基于可编程功能的射频信号幅值的自动化检测方法与流程
未命名
09-09
阅读:74
评论:0

一种基于可编程功能的射频信号幅值的自动化检测方法
1.本技术是名为《一种基于可编程功能的射频信号幅值的自动化检测方法》的专利申请的分案申请,原申请的申请日为2021年03月10日,申请号为202110260326.8。
技术领域
2.本发明涉及射频信号的检测技术领域,特别是涉及一种基于可编程功能的射频信号幅值的自动化检测方法。
背景技术:
3.射频信号光纤传输技术(radio overfiber,rof)作为一种蓬勃发展的技术,将射频信号调制到光信号上,充分利用光纤频带宽、损耗小、重量轻的特点,由光纤链路实现大容量数据高速远程传输。
4.在信号传输方面,利用射频信号光纤传输技术可以克服将地面站控制中心必须和天线建设安装在同一地点的缺陷。天线场地安装在偏僻处(信号质量好);数据处理设备、解调器、变频器可以安装在距离天线场地几十公里以外的城市内(生活方便)的数据中心,工作人员可直接去数据中心工作,免去了往返天线阵地和办公室之间所造成的麻烦和浪费。
5.利用射频信号光纤传输技术可以很好地解决电磁干扰以及多数据连接问题。一根很细很轻的包含10芯20芯或更多芯单模光纤的光缆完成设备和天线场地的连接很容易,并且省去了昂贵的密封波导、同轴电缆或铜缆。同时解决了多电缆间的rfi/emi问题。
6.在移动通信中,射频光纤传输系统最主要的灵活应用就是宽带室内覆盖,如地铁、大型商场、火车站、机场、展览中心等。
7.随着军事技术的不断发展,射频信号光纤传输技术广泛也应用于卫星通信、雷达侦测、电子对抗等场合。
8.目前,在射频模块的生产调试过程中,射频信号幅值的检测程序需要逐一定制,不利于批量生产的问题。
9.射频信号是一种具有一定频率和功率(即幅值)的电信号,射频模块是用来处理或传输射频信号的,模块里除了硬件还有软件,软件运行的载体是射频模块内的mcu芯片,软件的功能之一是计算出射频信号的幅值。
10.如下图1所示,射频信号首先送入射频模块内的放大器,将放大器输出的检波信号进行ad采样,即将模拟量转化为数字量,方便计算机处理。采样的结果就是一个整数,10位精度的情况下,范围为0~1023,它反映了信号幅值的大小,mcu程序利用它进行一系列计算,计算出的信号幅值,通过计算机可以查询得到,即在计算机上输入命令,命令通过串口通信发送给mcu,mcu将结果回报。
11.为了计算信号幅值,在现有技术中,首先进行信号测量,因为ad采样值与信号幅值之间的关系没有固定的规律,但一般情况下,信号幅值越大,ad采样值也越大,变化率(即斜率:δ幅值/δad采样值)与硬件电路密切相关。
12.在mcu程序中设计一套与计算机通信的测量命令,即通过计算机发送命令给mcu,
mcu将当前射频信号的ad采样值上报。射频信号源(简称信号源)给定不同幅值的信号(这个信号由于是从信号源发出的,从信号源显示屏上直接可读出幅值大小),放大器输出的检波也不同,经过ad转换,mcu获得的ad采样值也不同。逐一给定射频模块能够处理的整个范围的信号幅值,就会获得一份信号幅值与ad采样值的对应关系表,如下表1所示,信号源输出的信号幅值最大是0dbm,最小为-50dbm,信号依次递减2db,共测出了26个信号的ad采样值,表中同时计算出了相邻ad采样值两两之差,以观察变化是否线性,可以看出信号幅值在-30dbm~0dbm时,ad采样值的变化与幅值的变化呈一致的线性关系,幅值每降低1db,ad采样值近似减小12.2。当幅值小于-30dbm之后,就没有明显的线性变化了,只能人为划分近似的线性区间。
13.表1某l频段模拟接收插板信号测量
14.[0015][0016]
通过上述线性区间的划分及各区间近似的斜率值,在mcu程序中可以这样来计算信号幅值,首先,以信号-30dbm时ad采样值为643为参考点,当某未知信号的ad采样值为655(≈643+12.2),则信号幅值约为-29dbm,依次类推,给定动态范围内任意的ad采样值都可以近似计算出信号幅值。
[0017]
很明显,上述的方法至少存在3个缺陷,一是,当信号小于-30dbm时,由于线性关系不明显,计算结果与实际的误差将会变大;二是,mcu程序不能通用,不利于批量生产和软件
归档。比如,另有一块射频模块,由于元器件的差异,测出的信号幅值与ad采样值的对应关系表发生了变化,则需要重新评估线性区间并计算斜率,进而修改程序,最坏的情况是每个模块的程序都不一样;三是,结果修改不方便,比如,模块调试完成后,当需要对检测结果进行修改时,则需重新修改程序,显然将费时费力。
技术实现要素:
[0018]
为了克服现有技术的不足,本发明的目的是提供一种基于可编程功能的射频信号幅值的自动化检测方法。
[0019]
为实现上述目的,本发明提供了如下方案:
[0020]
1.一种基于可编程功能的射频信号幅值的自动化检测方法,其特征在于,包括如下步骤:
[0021]
1)信号测量:将测量命令嵌入待测射频模块内部的mcu程序中,通过射频信号源向射频模块输入模块能够处理的全范围内的不同幅值的射频信号,射频信号先后经过放大器和ad转换后,其ad采样值由mcu通过串口传输至pc端,获得一份信号幅值和ad采样值的对应关系表;
[0022]
2)数据固化:在射频模块内部的mcu程序中嵌入用于与计算机通信的读写命令,在计算机输入写命令时,将数据写入mcu内部的非易失性存储器中;输入读命令时,将mcu内部的非易失性存储器中的数据上报给计算机,将步骤1)获得的ad采样值转化为16进制后,通过在计算机输入命令,将信号幅值和ad采样值的对应关系表写入mcu内部的非易失性存储器中,完成数据固化;
[0023]
3)自动计算:mcu程序启动后,周期性读取输入射频模块的任意信号的ad采样值的同时,将内部非易失性存储器中存储的信号幅值和ad采样值的对应关系表读取出来,使用折半查找法找出输入信号的ad采样值在关系表中所对应的信号幅值;
[0024]
步骤3)中,所述的使用折半查找法找出输入信号的ad采样值在关系表中所对应的信号幅值,具体步骤如下:
[0025]
3-1)设置两个变量left和right,用于记录查找的索引范围;其中left最开始记录第一个ad采样值的索引,right最开始记录最后一个ad采样值的索引,每次查找都以中间索引即mid=(left+right)
÷
2的ad采样值与查找值进行比较;
[0026]
3-2)若查找值≥中间值,说明查找值位于中间值左边,则将right设置为mid-1,下一次需要查找的序列位于索引[left,mid-1]的区间;
[0027]
3-3)若查找值<中间值,说明查找值位于中间值右边,则将left置为mid+1,下一次需要查找的序列位于索引[mid+1,right]的区间;
[0028]
3-4)重复步骤3-2)和步骤3-3),直到left》right结束;结束后,left和right的值指出了查找值所在的范围,据此计算出信号幅值;
[0029]
3-5)若left为0,则表明查找值大于或等于索引0对应的ad采样值,表明信号幅值大于等于0dbm,信号处于饱和状态;
[0030]
3-6)若left为最后一个索引值加1,则表明查找值小于最后一个索引值对应的ad采样值,表明信号幅值小于最后一个ad采样值所代表的幅值,表明处于无信号状态;否则,查找值介于索引为right的ad采样值和索引为left的ad采样值之间,也即信号幅值介于索
引为right的幅值和索引为left的幅值之间,此时,left比right大1,此时该区间信号幅值的变化很小,认为该区间内幅值与ad采样值成线性关系,而进行线性计算。
[0031]
本发明提供的一种基于可编程功能的射频信号幅值的自动化检测方法,该方法具有如下优点:
[0032]
1)利用了mcu内部的非易失性可编程存储器的读写功能来存储测量数据,无需外置存储芯片,提高访问效率的同时节省了器件的成本;
[0033]
2)实现了程序和数据的分离,实现了程序的统一,便于归档;
[0034]
3)测量数据可反复写入,多次修改,校正方便;
[0035]
4)采用折半查找法代码执行更加高效,计算结果精度高;
[0036]
5)测量数据可交由调试人员去测定和固化,研发人员可专注于软硬件设计,板卡便于批量化生产。
附图说明
[0037]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0038]
图1为射频信号幅值测量原理图;
[0039]
图2为数据固化原理图;
[0040]
图3为数据固化命令示意图;
[0041]
图4为读取非易失性存储器命令示意图。
具体实施方式
[0042]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0043]
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0044]
本技术的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤、过程、方法等没有限定于已列出的步骤,而是可选地还包括没有列出的步骤,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤元。
[0045]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0046]
实施例:
[0047]
一种基于可编程功能的射频信号幅值的自动化检测方法,包括如下步骤:
[0048]
1)信号测量:如图1所示,将测量命令嵌入待测射频模块内部的mcu程序中,通过射频信号源向射频模块输入模块能够处理的全范围内的不同幅值的射频信号,射频信号先后经过放大器和ad转换后,其ad采样值由mcu通过串口传输至pc端,获得一份信号幅值和ad采样值的对应关系表;
[0049]
2)数据固化:如图2所示,在射频模块内部的mcu程序中嵌入用于与计算机通信的读写命令。在计算机输入写命令时,将数据写入mcu内部的非易失性存储器中;输入读命令时,将mcu内部的非易失性存储器中的数据上报给计算机;将步骤1)获得的ad采样值转化为16进制后,通过在计算机输入命令,将信号幅值和ad采样值的对应关系表写入mcu内部的非易失性存储器中,完成数据固化;
[0050]
具体是:对于测量数据(即信号幅值与ad采样值的对应关系表)进行整理,提取关键信息。由于信号幅值以2db的规律递减,因此,起始点的信号幅值是关键信息,其次还有幅值个数(即ad采样值个数),以及每个幅值对应的ad采样值;然后,将这些关键信息,以设计好的命令格式发送给mcu。
[0051]
以上述背景技术中的表1中的测量数据举例说明,由于计算机处理16进制的数据最为方便,将10进制ad采样值转化为16进制数,见表2:
[0052]
表2ad采样值由10进制转化为16进制表
[0053]
[0054][0055]
表2一共有26个ad采样值,即26个测量点,每个ad采样值都是一个整数,都可以用一个16位无符号数表示。起始点的信号幅值为0dbm,考虑到它有可能为负数和/或带有1位小数,计算机存储整数最方便,故将起始点的幅值扩大10倍以方便存储,从而可用一个16位
有符号数来表示,后面计算时再除以10还原。ad采样值个数是第二个关键信息,接下来为26个ad采样值,核心的数据进一步整理为:
[0056]
表3整理后的关键信息
[0057][0058]
将这些数据两两组合,通过在计算机输入命令写入mcu内部非易失性存储器中,如图3所示,命令flash w 000x0000001a表示将起始点信号幅值和ad采样值个数组合成32位数0x0000001a后写入页面0的偏移0处,依次将数据全部写入,完成固化。
[0059]
通过命令flash r 0可读出页面0的数据,以此检查写入是否正确,如图4所示。
[0060]
3)自动计算:mcu程序启动后,周期性读取输入射频模块的任意信号的ad采样值的同时,将内部非易失性存储器中存储的信号幅值和ad采样值的对应关系表读取出来,使用折半查找法找出输入信号的ad采样值在关系表中所对应的信号幅值。
[0061]
以表3中的数据举例说明,见表4。
[0062]
表4ad采样值及对应的信号幅值
[0063]
索引012345......12......25ad采样值1010986961936912887......715......455信号幅值0-2-468-10......-24......50
[0064]
折半查找法是一种时间复杂度为o(logn)的查找法,一般要求查找序列要有序,下面以表4的降序为例,由于计算机中计数一般从0开始,则26个ad采样值的索引依次为0~25。
[0065]
所述的使用折半查找法找出输入信号的ad采样值在关系表中所对应的信号幅值,具体步骤如下:
[0066]
3-1)设置两个变量left和right,用于记录查找的索引范围。其中left最开始记录第一个ad采样值的索引,即0;right最开始记录最后一个ad采样值的索引,即25;每次查找都以中间索引即mid=(left+right)
÷
2的ad采样值与查找值进行比较;
[0067]
3-2)若查找值≥中间值,说明查找值位于中间值左边,则将right设置为mid-1,下一次需要查找的范围位于索引[left,mid-1]的区间;
[0068]
3-3)若查找值<中间值,说明查找值位于中间值右边,则将left置为mid+1,下一次需要查找的范围位于索引[mid+1,right]的区间;
[0069]
3-4)重复步骤3-2)和步骤3-3),直到left》right结束;结束后,left和right的值指出了查找值所在的范围,据此计算出信号幅值;
[0070]
3-5)若left为0,则表明查找值大于或等于索引0对应的ad采样值,表明信号幅值大于等于0dbm,信号处于饱和状态;
[0071]
3-6)若left为最后一个索引值加1,本例为26,则表明查找值小于索引25对应的ad采样值,表明信号幅值小于最后一个ad采样值所代表的幅值,本例为-50dbm,表明处于无信号状态;否则,查找值介于索引为right的ad采样值和索引为left的ad采样值之间,也即信号幅值介于索引为right的幅值和索引为left的幅值之间,此时,left比right大1,此时该区间信号幅值的变化很小,可认为该区间内幅值与ad采样值成线性关系,而进行线性计算,由于区间段很小,误差也将很小。
[0072]
以表4举例说明,假设待查找的ad采样值为1000。
[0073]
第一次查找时,left=0,right=25,mid=(0+25)
÷
2=12,索引12的ad采样值为715,由于1000》715,则查找值在中间值的左边;
[0074]
进行第二次查找,right=12-1=11,left仍为0,mid=(0+11)
÷
2=5,索引5的ad采样值为887,由于1000》715,则查找值在中间值的左边;
[0075]
进行第三次查找,right=5-1=4,left仍为0,mid=(0+4)
÷
2=2,索引2的ad采样值为961,由于1000》961,则查找值在中间值的左边;
[0076]
进行第四次查找,right=2-1=1,left仍为0,mid=(0+1)
÷
2=0,索引0的ad采样值为1010,由于1000《1010,则查找值在中间值的右边;
[0077]
进行第五次查找,left=0+1=1,right仍为1,mid=(1+1)
÷
2=1,索引1的ad采样值为986,由于1000》986,则查找值在中间值的左边;
[0078]
进行第六次查找,left仍为1,right=1-1=0,此时left》right,查找结束,正如预想的一样,查找值1000介于索引right的ad采样值和索引left的ad采样值之间,在此区间内可以认为幅值与ad采样值成线性关系,则信号幅值=-2+2
÷
(1010-986)
×
(1000-986)≈-0.8,显然,该算法精度和效率都能等到保证。
[0079]
综合上述,经过上面三个步骤,实现了射频信号幅值的自动化检测。
[0080]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0081]
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
技术特征:
1.一种基于可编程功能的射频信号幅值的自动化检测方法,其特征在于,包括如下步骤:1)信号测量:将测量命令嵌入待测射频模块内部的mcu程序中,通过射频信号源向射频模块输入模块能够处理的全范围内的不同幅值的射频信号,射频信号先后经过放大器和ad转换后,其ad采样值由mcu通过串口传输至pc端,获得一份信号幅值和ad采样值的对应关系表;2)数据固化:在射频模块内部的mcu程序中嵌入用于与计算机通信的读写命令,在计算机输入写命令时,将数据写入mcu内部的非易失性存储器中;输入读命令时,将mcu内部的非易失性存储器中的数据上报给计算机,将步骤1)获得的ad采样值转化为16进制后,通过在计算机输入命令,将信号幅值和ad采样值的对应关系表写入mcu内部的非易失性存储器中,完成数据固化;3)自动计算:mcu程序启动后,周期性读取输入射频模块的任意信号的ad采样值的同时,将内部非易失性存储器中存储的信号幅值和ad采样值的对应关系表读取出来,使用折半查找法找出输入信号的ad采样值在关系表中所对应的信号幅值;步骤3)中,所述的使用折半查找法找出输入信号的ad采样值在关系表中所对应的信号幅值,具体步骤如下:3-1)设置两个变量left和right,用于记录查找的索引范围;其中left最开始记录第一个ad采样值的索引,right最开始记录最后一个ad采样值的索引,每次查找都以中间索引即mid=(left+right)
÷
2的ad采样值与查找值进行比较;3-2)若查找值≥中间值,说明查找值位于中间值左边,则将right设置为mid-1,下一次需要查找的序列位于索引[left,mid-1]的区间;3-3)若查找值<中间值,说明查找值位于中间值右边,则将left置为mid+1,下一次需要查找的序列位于索引[mid+1,right]的区间;3-4)重复步骤3-2)和步骤3-3),直到left>right结束;结束后,left和right的值指出了查找值所在的范围,据此计算出信号幅值;3-5)若left为0,则表明查找值大于或等于索引0对应的ad采样值,表明信号幅值大于等于0dbm,信号处于饱和状态;3-6)若left为最后一个索引值加1,则表明查找值小于最后一个索引值对应的ad采样值,表明信号幅值小于最后一个ad采样值所代表的幅值,表明处于无信号状态;否则,查找值介于索引为right的ad采样值和索引为left的ad采样值之间,也即信号幅值介于索引为right的幅值和索引为left的幅值之间,此时,left比right大1,此时该区间信号幅值的变化很小,认为该区间内幅值与ad采样值成线性关系,而进行线性计算。
技术总结
本发明提供了一种基于可编程功能的射频信号幅值的自动化检测方法,通过信号测量获得一份信号幅值和AD采样值的对应关系表;然后在射频模块内部的MCU程序中嵌入用于与计算机通信的读写命令,在计算机输入写命令时,将数据写入MCU内部的非易失性存储器中;输入读命令时,将MCU内部的非易失性存储器中的数据上报给计算机,将AD采样值转化为16进制后,通过在计算机输入命令,将信号幅值和AD采样值的对应关系表写入MCU内部的非易失性存储器中,完成数据固化;最后MCU周期性读取输入射频模块的任意信号的AD采样值的同时,将内部非易失性存储器中的信号幅值和AD采样值的对应关系表读取出来,使用折半查找法找出输入信号的AD采样值在关系表中所对应的信号幅值。值在关系表中所对应的信号幅值。值在关系表中所对应的信号幅值。
技术研发人员:郭文龙 郑志伟 向霖 覃勇 尹怡辉 朱宏韬 黄天发 李锐清 张维路
受保护的技术使用者:中国电子科技集团公司第三十四研究所
技术研发日:2021.03.10
技术公布日:2023/9/7
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/