社区导航

 

搜索
查看: 145|回复: 0

[资料分享] 采用数字频率合成技术、FPGA和单片机进行扫频仪的设计

[复制链接]

1962

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-1-11 15:55 | 显示全部楼层 |阅读模式
      一个网络的频率特性包括幅频特性和相频特性,在系统设计时,各个网络的频率特性对该系统的稳定性、工作频带、传输特性等都具有重要影响。实际操作中,扫频仪大大简化了测量操作,提高了工作效率,达到了测量过程快速、直观、准确、方便的目的,在生产、科研、教学上得到广泛运用。本设计采用数字频率合成技术产生扫频信号,以单片机和FPGA为控制核心,通过A/D和D/A转换器等接口电路,实现扫频信号频率的步进调整、数字显示及被测网络幅频特性与相频特性参数的显示。


1 系统总体方案及设计框图


1.1 系统总体方案


         将输出频率步进可调的正弦扫频信号源作为被测网络的激励Vi,可得被测网络的响应为V0。通过测量各频率点的幅度就可得到V0和Vi的有效值,两者之比就是该点的幅度频率响应;对V0和Vi进行过零比较、整形,再送到FPGA测量相位差,即可得到相频特性。


输入g*(n)的输出v*(n)是v(n)的复共轭。于是得到输出y(n)的表达式:


采用数字频率合成技术、FPGA和单片机进行扫频仪的设计
          因此,输出信号和输入信号是频率相同的正弦波,仅有2点不同:1 振幅被加权,即网络系统在ω=ω0的幅度函数值;2 输出信号的相位相当于输入有一个q(ω0)时延,即网络系统在ω=ω0的相位值。该方案幅度和相位测量的控制都通过FPGA实现,能够使测量结果精确。


1.2 系统总体设计框图


系统通过键盘扫描得到外界设置的扫频范围和频率步进,通过调用DDS控模块控制DAC904,输出扫频信号。由于信号在被测网络阻带内会有很大的衰减,故用程控放大处理经被测网络的扫频信号之后,利用AD637进行有效值采样,LM311进行整形。信号有效值经MAXl270进行AD转换后得到有效值的数字量,整形后的信号经测相模块处理得到相位差值。在FPGA中写入2个RAM存放被测信号的有效值和相位差值。完成一次扫频后通过波形显示模块将幅频、相频曲线显示在示波器上,并将特定频率点的幅度和相位差值在液晶显示器上进行显示。系统实现框图如图1所示。
360截图20190111155300726.jpg
采用数字频率合成技术、FPGA和单片机进行扫频仪的设计
2 系统功能部分设计


2.1 扫频信号的产生


直接数字合成(DDFS)信号源。它是一种完全数字化的方法:先将一个周期的正弦波(或者其他波形)的离散样点幅值的数字量预先存储于ROM或者RAM中,按一定的地址增量间隔读出,经D/A转换后成为不同频率的模拟正弦波信号波形,再经低通滤掉毛刺即可得到所需频率的输入信号。按此原理,DDS可以合成任意波形,且可以精确控制相位,频率也非常稳定。利用FPGA制作起来相当容易,且扫频步进实现简单。设FPGA内部的参考频率源的频率为fclk,采用计数容量为2N的相位累加器(N为相位累加器的位数),频率控制字为M,则DDS系统输出信号的频率fout=fclk/2N×M。频率分辨率为:△f=fclk/2N。


若选取晶振频率为40 MHz,频率控制字为24位,相位累加器的位数为31位,则输出频率范围为0.02 Hz~312 kHz,步进频率为40 MHz/231≈0.02 Hz。


系统采用高速14-bit电流输出型D/A转换器DAC904制作DDS扫频信号源。通过FPGA给其20 MHz的时钟信号以输出10 Hz~100 kHz的扫频信号。该器件制作成的PCB板中,很好地考虑了接地,使得输出信号在频率为1 MHz可以达到无明显失真。DAC904采用内部基准和双极性接法,输出信号幅值范围为0~5 V。其原理图如图2所示。
360截图20190111155328054.jpg
2.2 幅频特性测试方案


使用集成真有效值转换器AD637先检测出信号每个频率点的有效值,再经过A/D采样将得到的数据读到单片机中进行处理即可。该器件外接电路简单,工作频带很宽,与A/D转换器级联,可以对任何复杂波形的有效值、平均值、均方值、绝对值进行采样,测量误差小于±(0.2%读数+0.5 mV),可以达到很高的测量精度


2.3 相频特性测试方案


       采用计数法实现相位的测量。计数法的思想是将相位量转化为数字脉冲量,然后对数字脉冲进行测量而得到相位差。对转换后的数字脉冲量进行异或运算,产生脉宽为T0、周期为T的另一路方波,若高频计数时钟脉冲周期为TCP,则在一个周期T的时间内的计数数值为:


360截图20190111155350701.jpg
式中,φx为相位差的度数。这种方法应用比较广泛,精度较高,电路形式简单,适合FPGA实现。


实际测量中,当两输入信号频率较高且相位差很小时,得到的脉冲很窄,这会造成较大误差。为了克服上述缺陷,引入等精度测量的思想(如图3),采用多周期同步计数法,利用触发器产生一个宽度为被测信号fa整数倍的闸门信号。利用计数器1测量出闸门信号内通过高频脉冲fm的个数N1,利用计数器2测量出相同时间内闸门信号、异或信号、高频脉冲三者相与后的脉冲数N2。因此,相位差值为△φ=N2/N1x360°。测量相位的同时,在FPGA内部引入一D触发器,用一路方波信号控制另一路方波,通过触发器输出的高低以判断信号相位差范围是大于180°还是小于180°。


360截图20190111155424741.jpg
2.4 系统显示电路设计


      为了在示波器上显示曲线,需要通过2个D/A转换器向X、Y轴同步送入扫描信号和数据信号。X轴方向的DA转换器输出扫描信号为O~5 V的锯齿波信号,而数据信号为-5~5 V,反应了各个频率点上的信号幅值和相位,由另一片D/A转换器向Y轴方向输出。


3 系统软件设计


      系统软件设计由单片机和FPGA组成。整个系统以用户按键中断为主线,调用不同的处理函数,与FPGA中各个控制模块之间,以总线的进行数据的交换,实现了系统测量频率特性的功能。软件流程图见图4。
360截图20190111155458661.jpg
4 结束语


     本扫频仪利用数字频率合成技术(DDS)产生扫频信号,通过14位D/A转换器DAC904产生了10 Hz~100 kHz的正弦扫频信号,作用于被测网络。网络的输出信号通过有效值采样电路,以及由比较器LM311配合FPGA内部实现的测相电路,完成了对被测网络频率特性的测量。


     为对系统的性能进行测试,制作了一个中心频率为5 kHz。带宽为±50 Hz的阻容双T网络。测试结果表明,在网络的通带和阻带内,相频特性测量均达到了3°以内的测量精度,幅频特性的测量误差均小于50%。此外,该系统可以通过键盘输入扫频范围,通过示波器显示幅频、相频曲线,并可以在液晶显示器上显示该网络在特定频率点上的幅度、相位特性值。该系统操作简单,成本低廉,测量精确,具有很强的实用性。



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2019-4-21 14:21 , Processed in 0.073909 second(s), 17 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表