基于单片机和FPGA的频率特性测试仪的设计
扫描二维码
随时随地手机看文章
1 引言
频率特性是网络的性能最直观反映。频率特性测试仪是测量网络的幅频特性和相频特性,并显示相应曲线的一种快速、方便、动态、直观的测量仪器,可广泛应用于电子工程领域。
该测试仪以扫频外差为基本原理,并以单片机和FPGA构成的最小系统为控制核心,很好地完成对有源双T网络进行频率在100 Hz~100 kHz范围内的幅频响应和相频响应特性的测试,并实现在通用数字示波器上同时显示幅频和相频响应特性曲线。
2 系统设计方案
2.1 总体方案
该设计采用单片机和FPGA结合的方式。将输出频率可步进的正弦信号的扫描信号源作为被测网络的输入信号Vi,则被测网络的输出信号Vo为频率可步进的信号。通过测量各频率点的幅度就可得到Vo和Vi的有效值,两者之比就是该点的幅度频率响应;对Vo和Vi进行过零比较、整形,再送到FPGA测量相位差。 Vi的上升沿启动计数,Vo的上升沿停止计数,所得时间值与信号周期之比,就是该点的相位频率响应。此方案采用FPGA测量相位差,而且便于制作DDS扫描信号源。
2.2 扫频信号源设计方案
该设计采用直接数字合成(DDS)信号源。DDS信号源是由数字量控制的频率源,如图 1所示,其具体实现过程是:将输出波形一个完整周期的幅度值按相位步进顺序量化存储于双端口RAM中,按一定的地址间隔读出,经D/A转换成模拟信号,再经低通滤波器滤去D/A转换带来的小台阶和数字电路产生的毛刺,即可获得高精度、高纯度的正弦信号。理论上只要累加器的位数足够多,便可实现任意小的频率步进,且频率分辨率很高,十分接近于连续变化。通过预设相位累加器初值可很方便地实现精密相位调节。
2.3 幅度测量模块的方案
该模块采用集成真有效值变换器件。测量被测信号的真有效值,然后将其换算为幅值。即可实现对正弦波的幅值测量。该方案硬件、软件都很简单,而且精度高,效果理想。
2.4 相位测量模块的方案
该模块采用相位一时间转化法。两个频率相同、相位不同的正弦信号经整形异或运算后产生脉宽为Tx、周期为T的方波,相位差与(TX/T)之间始终存在一一对应关系。因此无论频率如何变化,只要测出(Tx/T),相位差的大小也就确定。
3 理论分析与计算
3.1 DDS相关计算
由DDS原理可得:
式中,N为相位累加器位数,K为频率控制字。
当K=1时,可知DDS的最低输出频率为:
此即DDS的频率分辨率。
(1)移相信号发生器部分DDS由于输出级D/A转换器DAC0800的建立时间为100 ns,则时钟频率应小于10 MHz,取时钟频率fout=8.388 608 MHz,相位累加器N=23bit,则:
(2)扫频信号部分DDS 由于FPGA片内资源丰富,为保证足够的扫频精度,取参考时钟频率fclk为40 MHz。通过控制频率控制字K的变化范围,完全可以满足DAC0800的速度要求。
3.2 相位测量相关计算
由FPGA利用等精度法测得被测信号和基准时钟的频率分别为f0、fCP,对被测信号鉴相后,由得到的相位差脉冲宽度T控制计数器计数,其计数值设为M,则被测信号的相位差为:
(1)相位测量误差计算 若让计数器在1 s内累计记数,则累计数:M1=Mf0,式(5)改为
其测量误差△φ为:
(2)相位测量分辨率计算 数字移相信号发生器频率范围为20 Hz~20 kHz,相位差测量范围为0~359°,因此计数器时钟频率fclk至少为72 MHz,取fCP=100 MHz,由于计数器分辨率为±1,对应最小相位分辨率(f0=20 kHz时):
4 系统整体框图
系统设计发挥FPGA稳定、可靠、可编程的特点,让FP-GA实现尽可能多的功能,从而减少模拟部分的工作,使整个设计更加可靠。系统整体框图如图2所示。
5.2 示波器显示部分
系统除实现LCD显示外,还可借助示波器显示曲线。为分别显示幅频和相频特性曲线,用叠加直流电平的方法使两种曲线显示在示波器荧光屏适当位置(示波器上方为幅频曲线,下方为相频曲线)。根据需要,亦可独立显示某一种曲线。幅度、相位数据均取256 bit,D/A转换采用DAC0800完成。图4为共电路图。
5.3 系统软件的设计
软件设计由C和Verilog HDL语言编写完成,前者由单片机运行完成实时显示、键值读取、数据处理等系统的主控功能;后者写入FPGA完成键盘扫描。
并在其中写入滤波模块对波形进行处理,DDS控制产生最终波形的显示并充当单片机与外围电路的桥梁。系统软件流程如图5所示。
6 结束语
系统很好地完成对有源双T网络进行100 Hz~100 kHz频率范围内的幅频响应和相位响应特性的测试,频率稳定度达到10-6,并能在通用数字示波器上同时显示幅频和相频响应特性曲线。同时系统单片机的软件设计实现友好的人机交互界面,充分发挥了单片机智能化的特点。