发明内容
本发明提供一种频响曲线校正方法,以解决上述现有技术中频响曲线校正效率低、误差大的缺陷,以实现快速、准确地校正初始波形的频响曲线。
为达到上述目的,本发明提供如下技术方案:
第一方面,本发明实施例提供了一种频响曲线校正方法,包括:
获取待测量的电路或器件的原始频响曲线;
根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线;
根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,使滤波器对所述原始频响曲线进行校正。
根据本发明提供的一种频响曲线校正方法,所述获取待测量的电路或器件的原始频响曲线,具体包括:
设定待划分的频段数量,根据待划分的频段数量等间隔划分模数转换器件的采集带宽得到一系列频段,记录每个间隔点的频率作为一系列待测频率;
向待测量的电路或器件输入幅度相同,频率为所述一系列待测频率的信号,分别记录输出信号幅度及对应的频率点,作为所述原始频响曲线。
根据本发明提供的一种频响曲线校正方法,根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线,具体包括:
获取原始频响曲线各频率点及对应的幅度值,计算幅度均值,以所述各频率点为横坐标,所述幅度均值为所述各频率点对应的纵坐标,得到目标频响曲线;
计算所述目标频响曲线和所述原始频响曲线在所述各频率点的幅度差值,作为所述校正频响曲线的幅度值。
根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,具体包括:
将所述校正频响曲线变换到时域,得到时域数据;
对所述时域数据做序列变换,得到校正数据;
将所述校正数据输入滤波器,作为滤波器的校正参数。
根据本发明提供的一种频响曲线校正方法,优选的,在所述获取原始频响曲线各频率点及对应的幅度值之前,还包括:
保留滤波器带宽范围内的频率点上原始频响曲线对应的幅度值,其余频率点对应的数据幅度值设置为零。
根据本发明提供的一种频响曲线校正方法,优选的,将所述校正频响曲线变换到时域,包括:
对所述校正频响曲线做快速傅里叶逆变换,取变换结果的模值作为时域数据。
根据本发明提供的一种频响曲线校正方法,优选的,对所述时域数据做序列变换,具体包括:
将所述时域数据平均分为2组 ,按照下述规则进行变换:
若i≤N/2,coff(i)=c(N/2-i);
若i>N/2,coff(i)=c(N+1-i+N/2);
其中N为所述时域数据的数量且N为偶数,i是1~N之间的所有整数,coff是所述序列变换后的数据,c是所述时域数据。
第二方面,本发明实施例还提供了一种频响曲线校正装置,包括:
获取模块,用于获取待测量的电路或器件的原始频响曲线;
处理模块,用于根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线;
校正模块,用于根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,使滤波器对所述原始频响曲线进行校正。
第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述频响曲线校正方法的步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述频响曲线校正方法的步骤。
由上述技术方案可知,本发明提供的频响曲线校正方法,根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线,即基于表征原始频响曲线的幅值均值与原始频响曲线的幅值的差值的校正频响曲线,对原始频响曲线进行校正,获得的最终频响曲线是一条接近理想的频响曲线。与现有技术相比,本发明所提供的频响曲线校正方法的有益效果为:该方法不仅具有易于实现、快速和高效的优点,而且该方法基于模拟器件自身非线性特性进行输出频率响应特性自修正,能够很好地适应各种不同的模拟电子器件,具有很好的普适性以及较高的准确性。此外所述频响曲线校正方法还可以同时对不同频率点进行校正,相较于其他只能分段校正的校正方法更加灵活。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本实施例提供的频响曲线校正方法流程图,如图1所示,该包括:
步骤S1,获取待测量的电路或器件的原始频响曲线。
步骤S2,根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线。
步骤S3,根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,使滤波器对所述原始频响曲线进行校正。
本实施例提供的频响曲线校正方法,根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线,即基于表征原始频响曲线的幅值均值与原始频响曲线的幅值的差值的校正频响曲线,对原始频响曲线进行校正,获得的最终频响曲线是一条接近理想的频响曲线。与现有技术相比,本发明所提供的频响曲线校正方法不仅具有易实现、快速和高效的优点,还由于该方法基于模拟器件自身非线性特性进行输出频率响应特性自修正,能够很好地适应各种不同的模拟电子器件,具有很好的普适性以及较高的准确性。此外所述频响曲线校正方法还可以同时对不同频率点进行校正,相较于其他只能分段校正的校正方法更加灵活。
在步骤S1中,获取待测量的电路或器件的原始频响曲线,具体通过先设定待划分的频段数量,根据待划分的频段数量等间隔划分模数转换器件的采集带宽,以得到一系列频段,记录每个间隔点的频率作为一系列待测频率,再向待测量的电路或器件输入幅度相同,频率为所述一系列待测频率的信号,分别记录输出信号幅度及对应的频率点,作为所述原始频响曲线。
在一种实施方式中,设定ADC的采样率为Fs,ADC采集最大带宽为0到Fs/2,将带宽等分成256份。
设定采样率Fs = 250MHz,带宽为125M,那么采样间隔就是(125/256)M,即每间隔(125/256)M测量一次ADC采集到的信号幅度并记录,最后绘制成256个点的频响曲线,如图2所示,横坐标表示频率点数,纵坐标为幅度,单位为dBm。
需要说明的是,在测量原始器件频响曲线的过程中,输入信号必须为幅度相同频率不同的一系列信号,才能使得绘制出的原始频响曲线能够精确反应由于模拟器件自身非线性特性对不同频率信号通过系统后产生的不同影响,以便后续校正。
在步骤S2中,根据所述原始频响曲线计算校正频响曲线,具体通过先获取原始的频响曲线各频率点及对应的幅度值,计算幅度均值,由所述各频率点和所述幅度均值得到目标频响曲线,再计算所述目标频响曲线和所述原始频响曲线在所述各频率点的幅度差值,得到所述校正频响曲线的幅度值。
可选地,在频响曲线校准前选取校准频段,使得所述校准频段和滤波器频段相匹配,以避免不必要的计算。具体通过保留滤波器带宽范围内的频率点上原始频响曲线对应的幅度值,其余频率点对应的数据幅度值设置为零来实现。
在一种实施方式中,如图3所示,展示试了一种根据有限脉冲响应数字滤波器(Finite Impulse Response filter,简写为FIR滤波器)系数计算得到的带宽范围,保留原始频响曲线上所述带宽范围内的幅度值,其余频率点幅度值设定为0后得到的结果。所述频段范围保留所述原始频响曲线中第20到第125个点之间的频率点所对应的幅度,其余频率点的幅度值设定为0,并将得到的256组幅频数据作为选择校准频段后的频响曲线。
所述获取原始的频响曲线各频率点及对应的幅度值,计算幅度均值,以所述各频率点为横坐标,所述幅度均值为所述各频率点对应的纵坐标,得到目标频响曲线,在一种实施方式中,本发明根据上述校准频段后的频响曲线每个频率点对应的幅度值计算出幅度均值,绘制出如图4所示的目标频响曲线图。所述目标频响曲线图在每一频率点上对相同幅值不同频率的输入信号产生的影响相同,即频响曲线为一条接近理想的频响曲线。
计算所述目标频响曲线和所述原始频响曲线在所述各频率点的幅度差值,在一种具体实施方式中,使用上述步骤绘制出的目标频响曲线和选择校准频段后的频响曲线中每个频率点的幅度值做减法操作,记录差值,再将每个差值数据和对应的频率点绘制在坐标轴上,得到如图5所示的校正频响曲线。
在步骤S3中,用所述校正频响曲线对所述原始频响曲线进行调整,获得最终频响曲线,具体通过先将所述校正频响曲线变换到时域,得到时域数据,再对所述时域数据做序列变换,得到校正数据,最后将所述校正数据输入滤波器,作为滤波器的校正参数。
使得滤波器可以根据某一频率点点输入信号的幅度值以及对应的所述校正参数校正所述频率点上的幅度值,使其接近真实值,避免受到模拟器件或模拟电路非线性的影响造成较大误差。
由于在实际的信号处理过程中,滤波器需要在时域进行信号的幅度校正,即对某一时间点的输入信号进行处理,因而需要将所述校正频响曲线变换到时域。所述变换可以通过多种信号处理或数学计算方法实现。
可选的,本发明的一种实施方式中,使用快速傅里叶逆变换(Inverse FastFourier Transform,简写为IFFT)对校正曲线每个间隔频率点对应的256个幅度值数据进行IFFT,得到256个时域数据,如图6所示。
需要说明的是,由于使用IFFT计算得到的数据结果常为复数,既包含实数部分也包含虚数部分。由于复信号的模值反映该信号的幅度信息,在本发明的一种实施方式中,取IFFT后数据的模值,作为时域数据进行后续处理。
由于IFFT运算后频率分量会产生偏移,需要将进行过零频平移的傅里叶变换重新排列回原始变换输出的样子,因此需要对所述时域数据做序列变换,具体包括:
将所述时域数据平均分为2组,按照下述规则进行变换:
若i≤N/2,coff(i)=c(N/2-i);
若i>N/2,coff(i)=c(N+1-i+ N/2);
其中N为所述时域数据的数量且N为偶数,i是1~N之间的所有整数,coff是所述序列变换后的数据,c是所述时域数据。
按照上述步骤,在本发明的一种具有256个数据点的实施方式中,具体规则为:
将256组数据分为两组,第1个点到第128个点的数据为第一组,第129个点到第256个点的数据为第二组,
第一组的变换公式为:
coff(i)=c(129-i);
第二组的变换公式为:
coff(i)=c(257-i+128);
其中第一组的i取1~128之间的所有整数,第二组的i取129~256之间的所有整数;coff是所述序列变换后的数据,c是所述实数部分数据。序列变换后的数据结果如图7所示。
需要说明的是,图7所示的变换结果为时域数据,其对应的傅里叶变换后的频域数据表现为一条光滑的、接近理想频响曲线的平整曲线。
得到所述校正数据后,将所述校正数据输入滤波器,作为滤波器的FIR系数。可以直接根据所述FIR系数设计滤波器,也可以将所述FIR系数作为滤波器的修正参数,使滤波器自行对输入信号幅度值进行相应的调整,得到最终频响曲线。所述最终频响曲线为一条接近理想频响曲线的平整曲线。
在本发明提供的一种实施方式中,将前述步骤中序列变换后产生的256个校正数据作为FIR系数输入到滤波器后,滤波器根据所述校正数据,自行将这256个点的幅度在原值的基础上进行调整,最后调整后的256个点的值绘制出来的图接近为一条平整的曲线。例如第10个点的校正数据是3,第10个点的幅度值为20dBm,滤波器会根据所述校正数据和所述第10个点输入的幅度值校正第10个点的幅度值。校正后第10个点的幅度值非常接近平均值,依次对其他点的幅度值按照相同的规则进行校正,得到的各点的幅度值都接近平均值,即整个频响曲线接近于一条平整的曲线。
需要说明的是,本发明提供的频响曲线校正方法的校正结果,即产生的最终频响曲线是一条平整的、接近理想的频响曲线。在整个实施过程中,原始频响曲线由于模拟器件自身的非线性特性,信号幅频特性波形并不平整、光滑,并且占据了较大的带宽,而经过一系列处理步骤,最后得到的校正后的频响曲线,接近理想的频响曲线平整,光滑,对经过模拟器件的不同频率的信号不会产生太大的失真,因此能够很好解决现有技术中通过模拟电路处理的幅度相同频率不同的信号,经过ADC采集后,采集到的信号幅度不一致的问题。此外所述频响曲线校正方法还可以同时对不同频率点进行校正,相较于其他只能分段校正的校正方法更加灵活。
如图8所示,本发明还提供一种频响曲线校正装置,包括:
获取模块810,用于获取待测量的电路或器件的原始频响曲线。
处理模块820,用于根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线。
校正模块830,用于根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,使滤波器对所述原始频响曲线进行校正。
本实施例提供的频响曲线校正装置,根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线,即基于表征原始频响曲线的幅值均值与原始频响曲线的幅值的差值的校正频响曲线,对原始频响曲线进行校正,获得的最终频响曲线是一条接近理想的频响曲线。与现有技术相比,本发明所提供的频响曲线校正方法不仅具有易实现、快速和高效的优点,还由于该方法基于模拟器件自身非线性特性进行输出频率响应特性自修正,能够很好地适应各种不同的模拟电子器件,具有很好的普适性以及较高的准确性。此外所述频响曲线校正方法还可以同时对不同频率点进行校正,相较于其他只能分段校正的校正方法更加灵活。
可选地,所述获取模块810,包括:
频段划分模块,用于设定待划分的频段数量,根据待划分的频段数量等间隔划分模数转换器件的采集带宽得到一系列频段,记录每个间隔点的频率作为一系列待测频率。
原始数据记录模块,用于向待测量的电路或器件输入幅度相同,频率为所述一系列待测频率的信号,分别记录输出信号幅度及对应的频率点,作为所述原始频响曲线。
可选地,所述处理模块820,包括:
目标幅度计算模块,用于获取原始的频响曲线各频率点及对应的幅度值,计算幅度均值,以所述各频率点为横坐标,所述幅度均值为所述各频率点对应的纵坐标,得到目标频响曲线。
校正幅度计算模块,用于计算所述目标频响曲线和所述原始频响曲线在所述各频率点的幅度差值,作为所述校正频响曲线的幅度值。
可选的,所述目标幅度计算模块包括:
频段校准模块,用于在获取原始频响曲线各频率点及对应的幅度值之前,保留滤波器带宽范围内的频率点上原始频响曲线对应的幅度值,其余频率点对应的幅度值设置为零。
可选地,所述校正模块830,包括:
时域数据获取模块,用于将所述校正频响曲线变换到时域,得到时域数据。
校正数据获取模块,用于对所述时域数据做序列变换,得到校正数据。
输入模块,用于将所述校正数据输入滤波器,作为滤波器的校正参数。
可选的,所述校正模块830还包括:
傅里叶逆变换模块,用于对所述校正频响曲线做快速傅里叶逆变换,取变换结果的模值作为时域数据。
序列变换模块,用于将所述时域数据平均分为2组 ,按照下述规则进行变换:
若i≤N/2,coff(i)=c(N/2-i)。
若i>N/2,coff(i)=c(N+1-i+N/2)。
其中N为所述时域数据的数量且N为偶数,i是1~N之间的所有整数,coff是所述序列变换后的数据,c是所述时域数据。
图9为本发明提供的电子设备的实体结构示意图,如图9所示,所述电子设备可以包括:处理器(processor)910、通信接口(communication interface)920、存储器(memory)930和通信总线(bus)940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行上述频响曲线校正方法,包括:获取待测量的电路或器件的原始频响曲线;根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线;根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,使滤波器对所述原始频响曲线进行校正。
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的频响曲线校正方法,包括:获取待测量的电路或器件的原始频响曲线;根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线;根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,使滤波器对所述原始频响曲线进行校正。
又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的频响曲线校正方法,包括:获取待测量的电路或器件的原始频响曲线;根据所述原始频响曲线的幅值均值与原始频响曲线的幅值的差值计算校正频响曲线;根据所述校正频响曲线获得滤波器的校正参数并输入滤波器,使滤波器对所述原始频响曲线进行校正。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。