以单片机89C51和可编程逻辑器件(FPGA)为控制中心,设计了一个频率特性测试仪,用于测试某一特定网络的频率响应特性。本系统的主要特点是由FPGA驱动多种串行芯片,在精简了系统电路结构的同时也不影响程序的效率。其中扫频信号由AD9851的串行方式产生,扩展了频率范围及稳定性。幅度测量由有效值采样芯片AD637和10住串行A/D转换器TLV1544配合实现,相位测量采用计数法实现。频率特性曲线由12位串行双D/A转换器TLV5638输出,并经示波器显示出来。本系统幅度测量精度达到5%,相位测量精度达到1°。
频率特性的测量采用扫频的方法实现,用AD9851产生扫频信号,可产生频谱纯净、频率范围广且稳定度非常高的正弦波。通过二极管负反馈桥式限幅放大电路及有效值采样电路等实现频响特性的测量,最后用示波器显示被测网络的幅频特性及相频特性。
本系统的一个特点是采用了较多串行芯片(AD9851,TLV1544和TLV5638)。为了使电路中的信号干净,应减少电路连线,采用串行芯片可以有效精简电路,保证电路的稳定性和减少信号噪声。但由于串行芯片牺牲了程序的时间效率,所以应该合理设计程序结构。
1系统方案论证与选择
1.1幅度测量电路的设计与论证
方案1:峰值检波电路。基本的峰值检波电路是由二极管电路和电压跟随器组成,通过电容的充放电实现。此电路测量低频信号时检波的纹波较大,适合于测量中高频率段的信号。
方案2:真有效值检波。从真有效值检波的工作原理可以分为线性有效值检波器、对数有效值检波器和数字有效值检波器。典型的真有效值转换芯片为AD637,使用AD637在测量峰值系数高达10的信号时附加误差仅为1%,且外围元件少、频带宽。
综上,选择方案1。
1.2相位测量电路的设计与论证
方案1:波形分析法。采用两片高速A/D转换芯片同时对输入的两路信号进行等时间间隔采样并将采样结果分别存储,然后对所测信号的波形数据进行分析。扫描存储在RAM中的波形数据,计算两片A/D转换器采集两部分波形数据的最大值或最小值的时间间隔,则信号的相位差为:φx=(Tx/T)x360°其中,Tx为两路信号相临极值的时间间隔,T为信号周期。
方案2:计数法。将两路被测信号经过异或门后,产生一个鉴相脉冲信号,送入FPGA进行记数,计数值为N。若信号频率为,f,计数频率为fclk,则相位差为:φx(Nf/fclk)x360°,可判断被测信号是比标准信号相位超前还是滞后。由于相差在0°~180°之间和360°~180°之间是对称的,异或后的计数值是相同的,故需加上一极性判别电路。相位的极性判决电路可由D触发器实现,将两路信号接D触发器的D端和CP端,从0端输出的高低电平可判别相差的极性。
方案1需要用软件对大量的波形数据进行处理才能达到较高的精度,且采集时间间隔难以精确控制,主要适用于精度要求不是很高的情况。方案2的测量过程可以全部由FPGA实现,AD9851产生的信号频率f已知,无需测频,所以这种方法非常容易实现,而且采用FPGA的40M高频晶振计数,测量精度和测量范围都得到提高。因此采用方案2。
2系统总体设计方案及实现框图
本系统以单片机及FPGA为核心,由扫频信号源模块、峰值检测模块、限幅放大模块和相位测量模块构成。系统框图如图1所示。为了提高效率,芯片控制主要由FPGA实现,单片机仅提供系统各模块的触发信号。系统工作时,AD9851产生一定频率的正弦信号,经过被测网络后,其幅值、相位会有所改变。将被测网络的输出端经过AD637有效值检测电路即得出信号的真有效值,A/D采样后送于单片机。同时,分别将被测网络前后的信号经过限幅放大模块整形为峰峰值为+5V的方波,送入FPGA进行相位测量。再改变信号发生器的频率,测量对应频率点的相位差与幅度值,直到完成整个频率段的测试,最后将被测网络的幅频特性和相频特性曲线用示波器显示出来。
3主要功能电路设计
3.1扫频信号发生器
AD9851是AD公司采用先进CMOS技术生产的具有高集成度的直接数字合成器,可以直接作为信号源,也可通过其内部的高速比较器转换为方波输出,作为灵敏的时钟产生器。它将相位累加器,波形存储器,10Bit高速D/A集于一块芯片中,频带宽,频率精度和稳定度高,外围电路简单。
其内部结构如图2所示。AD9851内部的控制字寄存器首先寄存来自外部的频率、相位控制字,相位累加器接收来自控制字寄存器的数据后,决定最终输出的信号频率和相位,再经过内部D/A转换器,所得到的就是最终的数字合成信号。
设相位累加器的位数为N,相位控制字的值为FN,频率控制字的位数为M,频率控制字的值为FM,内部工作时钟为Fc,最终合成信号的频率和相位可由下式来决定:F=Fc·FM/2N,θ=2πFN/2M。其中M=32,N=5,外部输入25MHz的时钟,经过内部6倍频后为fc=150MHz。由于不需要设置相位,所以五位相位控制字一直写入0,频率控制字为FM=2NxF/Fc。
3.2有效值检波模块
真有效值检波电路采用ADI公司的AD637,该芯片根据真有效值计算公式,直接输出信号的有效值电压,原理图如图3所示,通过使用片内后级滤波网络可以有效减小带内纹波。在C_AV口接入1μF的电容,在输入信号频率小于1MHz时,幅度的测量误差小于1%。精度非常高。
3.3限幅放大电路
在对信号进行相位测量前,要先将其整形为方波。但当信号经被测网络后幅值有较大变化,可能出现信号较强时超出后级处理芯片的测量范围,而信号较弱时又不能够被后级处理芯片识别的情况。由于对信号进行频率或者相位的测量只需要知道其周期信息,而非幅值信息,因此在把正弦信号整形成方波的模块中,采取限幅放大,而不采用单纯的LM311整形电路,可以达到更好的效果。
具体电路如图4所示,此限幅放大电路由前级同相放大、限幅放大和电平转换电路3部分组成。前级同相放大电路主要起到阻抗变换的作用;限幅放大电路采用二极管1N4148实现负反馈桥式限幅。如果输出信号幅值大于5V,桥式电路的二极管导通,稳压二极管工作,将电压钳位于5V左右;电平转换电路将放大后的信号经比较后整形为方波信号。转换为TTL电平,便于送入后级电路处理。
由于比较器一级的输入输出电压都很大,因此电路中的运放芯片应该选取超高摆率、输出电流大、耐压高的运放。同时,为使进入比较器的信号更加稳定,应选取增益带宽积较大的运放。综合以上因素,选取LF356。其增益带宽积达到5MHz,摆率12V/μs,远满足设计要求。
4系统软件的设计
系统软件设计部分基于单片机及FPGA为平台,完成了键盘输入、幅值测量、相位测量以及示波器显示扫频信号的功能。键盘输入设置扫频范围和频率步进。幅值测量由10位串行AD/CTLV1544实现,相位测量由40M晶振计数,测量精度高。测量数据存于FPGA的RAM中,通过双通道TLV5638输出。系统提供两种显示方式,一种是通过示波器显示整个被测网络的幅频和相频曲线,一种是通过LCD显示特定输入频率的幅值和相位。由于系统采用的AD9851,TLV1544和TLV5638全部是串行控制的,导致程序有些复杂,需要严格控制好时序,否则容易出问题。同时考虑到程序的时间效率,应避免冗余代码,在能用移位运算的情况下避免使用乘除运算。扫频测量流程如图5所示。
5测试方法和结果
为了验证该频率特性测试仪的性能,用一个中心频率5kHz的双T网络作为被测网络。手动输入某一频率,通过液晶显示该频率点所对应的幅值和相位。幅度测量精度能够达到5%,相位测量精度1°。设置扫频信号频带范围为1~10kHz,其中频率步进为10Hz。从示波器上显示双T网络的频率特性曲线如图6。
6结束语
本系统比较好地完成测量某一特定网络的频率响应特性的功能,幅频特性和相频特性能够准确测量与显示。系统可以在全频范围和特定频率范围内自动步进测量,可手动预置测量范围及步进频率值。用LCD显示5位的频率值,3位的电压值及三位的相位值(另以一位作符号显示)。示波器上可同时显示幅频和相频特性曲线。整个系统在单片机和FPGA的有机结合、协同控制下,工作稳定,测量精度高,人机交互灵活。 |