2016年全国大学生电子设计竞赛(F题)数字频率计

[复制链接]

31

主题

98

帖子

349

积分

二氧化硅

Rank: 2

积分
349
楼主
查看: 9770回复: 3 发表于 2019-1-25 15:36:34   只看该作者
摘    要
本系统以STM32F103C8T6和FPGA-EP2C5为主控制器,采用AD8099芯片TLV3501产生稳定的方波,并输入FPGA, 使用MCU产生控制信号。本系统包括信号调理模块,FPGA模块,MCU模块,液晶显示模块。FPGA进行数据采集并送回MCU进行数据处理,实现精确测量频率,周期,占空比,时间差。设置功能模式选择,实现精确测量并显示。在满足题目基本要求的前提下,发挥部分也全部实现。实际测试表明,所采用的设计方案科学有效,可完全达到基本要求并充分完成发挥部分。

关键词:FPGA   MCU   信号调理    精确测量

1. 系统方案
本系统主要由信号调理模块、数字电路芯片模块、MCU模块、显示模块组成,下面分别论证这几个模块的选择。


图一

1.1宽带放大模块的论证与选择
方案一:采用AD811芯片
使用AD811芯片设计出的宽带放大电路毛刺太大,且不满足频率要求。

方案二:采用AD8099芯片
使用AD8099芯片设计出的宽带电路放大倍数可达10倍,对于正弦波可满足1HZ~120MHZ,有效值8mV的信号放大;对于方波可满足1HZ~40MHZ,最小有效值40mV的信号放大,超额完成系统设计要求。

综合考虑,选择使用AD8099芯片搭建宽带放大模块。   

1.2整形模块的论证与选择
按照设计要求,输入信号带宽为100MHz,最高频率可达100MHz,因此必须使用高速运算放大器对信号进行整形,所选芯片为TI公司的TLV3501,TLV3501是4.5ns 轨至轨高速比较器,可以满足高速处理的要求,基于这一点有以下方案:

方案一:单门限比较器
运放的负输入端接地,比较电压为0V,用以将输入的正弦波整形为同频率方波,但在实测过程中发现对于高频信号,输出波形不理想,纹波较大且波形不稳定,后级无法处理这些波形。

方案二:迟滞比较器
通过分析方案一,由于输入的波形并不会是严格的正弦波,再过零处会存在一些毛刺,单纯的使用过零比较器会使芯片误动作。

方案三:两种比较器结合
为了提高其容错能力,考虑在在方案一的基础上加入一个小的迟滞电压提高其抗噪声能力。

综合以上三种方案,选择方案三。建议过零比较加入一个小的迟滞电压,这样在实际应用的时候抗噪声能力强一些。如果用于计数的话会更加的准确。

1.3 数字电路芯片
方案一:使用DSP实现功能
DSP芯片,也称数字信号处理器,为串行处理,是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。支持流水线操作,使取指、译码和执行等操作可以重叠执行。
方案二:使用FPGA实现功能
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,为并行处理,结构主要分为三部分:可编程逻辑块、可编程I/O模块、可编程内部连线。可编程逻辑块和可编程互连资源的构造主要有两种类型:即查找表类型和多路开关型。允许无限次编程。
结合实际情况经过比较,FPGA时序控制能力强,且为并行处理方式,效率高,可以满足要求。故采用FPGA-EP2C5。

1.4 MCU
方案一:使用MSP430实现功能
由MSP430F149 单片机作为上位机,MSP430F149编程较为简单,功耗低,速度偏低,不可以很好地满足本设计对数据处理的要求。
方案二:使用STM32实现功能
由STM32F103C8T6作为上位机,STM32F103C8T6编程较为复杂,速度适中,还拥有PWM发生器,可以产生较为精准的方波信号,可以较好地满足本设计对数据处理的要求。
基于上述考虑,为了提高系统的精度,我们采用方案二。

1.5 显示模块
方案一:使用LCD12864实现功能
采用12864LCD液晶显示模块,12864液晶显示其分辨率是128X64,内置8192个16X16点汉字和128个16X8点ASCII字符集,利用该模块可以简单显示。
方案二:使用OLED实现功能
采用0.96寸OLED作为显示模块,该模块显示面积较小,对于多位精准显示的程序调试过程较麻烦。
为满足题目要求并使得调试过程较为简便,本系统采用第一种方案。

2. 系统理论分析与计算
2.1 等精度测量   
2.1.1 工作原理
采用频率准确的高频信号作为标准频率信号,保证测量的闸门时间为被测时间的整数倍,并在闸门时间内同时对标准信号脉冲和被测信号脉冲进行计数,实现整个频率测量范围内的测量精度相等,当标准信号频率很高,闸门时间也足够长时,就可实现高精度的频率测量。即为:测量一定闸门时间内标准信号与被测信号的脉冲个数,分别记为和,则被测信号频率为 : 。


等精度算法原理图

2.1.2 等精度测量的计算
(1)被测频率
为被测信号频率; 为标准信号频率;为被测信号一个闸门时间内的脉冲个数;为标准信号一个闸门时间内的脉冲个数。

(2)测量误差
考虑最大误差为1,则






2.2 测量原理

测频模块
   
测量占空比模块

2.2.1 测频过程分析
在测频开始之前,先由STM32向FPGA发送清零信号,清除有关寄存器的值。然后由STM32向FPGA送门控信号,在门控信号内开始对被测信号和标准频率进行计数。当计数结束时,FPGA向STM32发送计数结束信号,由该信号STM32开始选择存储计数值的寄存器,开启读数使能信号并从FPGA读入计数值。读完后关闭读数使能端,再由STM32处理数据并在LCD上显示。然后又循环开始执行。

2.2.2测时间差过程分析
在测时间差之前同样需要先由STM32向FPGA发送清零信号,清除有关寄存器的值。然后一路被测信号通过测频模块,先测出周期,如果频率小于10K,则可以直接测量时间差。先将两路信号进行异或得到一路新的信号。然后一路进过一个非门,和原信号同时测量两路的高电平时的计数值,存入两个计数器中。计数结束后,FPGA向STM32发送结束信号,在由STM32向FPGA发送寄存器选择信号,再送读数时钟,读取两个计数值。读完后,比较两个计数值的大小,通过用周期减去较大的计数值即可得到时间差。如果频率大于10K,则先通过1000分频,得到低频信号,在通过测低频的方法来测量。一次测量结束后循环。

2.2.3 测量占空比过程分析
在测占空比之前同样需要先由STM32向FPGA发送清零信号,清除有关寄存器的值。然后被测信号通过测频模块,先测出周期,如果频率小于10K,则可以直接测量占空比。被测信号一路通过非门,和原信号同时测量两路的高电平时的计数值,存入两个计数器中。计数结束后,FPGA向STM32发送结束信号,在由STM32向FPGA发送寄存器选择信号,再送读数时钟,读取两个计数值。读完后,STM32比较两个数的大小,由较大的一个数来计算占空比。最后在LCD上显示。一次完成后循环,实现实时刷新。

3. 电路与程序设计
3.1电路的设计
3.1.1系统总体框图

硬件系统总体框图

3.1.2 电路原理图

比较器模块

单门限比较器

宽带放大模块

3.1.3电源
电源由变压部分、滤波部分、稳压部分组成。为整个系统提供正负5V电压,确保电路的正常稳定工作。这部分电路比较简单,都采用三端稳压管实现,故不作详述。

3.2程序的设计
3.2.1程序功能描述
根据题目要求软件部分主要实现菜单功能选择和测量数据的显示。
1)键盘实现功能:选择菜单功能。
2)显示部分:根据所选择的功能在LCD12864上显示频率,周期,占空比和时间间隔等信息。
3)测量部分:测量频率为1HZ~100MHZ,最小有效值为10mv正弦波的频率和周期,相对误差的绝对值不大于0.01% ;测量频率为100HZ~100MHZ,最小有效值为50mv方波的时间间隔,相对误差的绝对值不大于1% ;测量频率为1HZ~5MHZ,最小有效值为50mv方波的占空比,相对误差的绝对值不大于1% 。

3.2.2程序设计思路
使用FPGA对输入信号进行计数并锁存,门控信号为低时产生结束信号并发送至MCU,此时MCU进行通信传递数据(用MCU产生的门控信号,计数脉冲,结束信号等信号来控制FPGA的工作状态 ;FPGA也会产生控制(反馈)信号来给MCU,使MCU产生正确的控制信号)。当数据成功传送至MCU后,使用等精度算法等将FPGA传递的数据进行计算处理,并将处理后的结果显示在LCD12864上。

4. 测试方案与测试结果
4.1测试方案
1)硬件测试
将信号发生器产生的符合题目要求的信号接入信号调理电路,测试频率,有效值,放大倍数等参数,并将输出端接上示波器,观察产生的波形是否稳定。
2)软件仿真测试
使用QUARTUS软件进行仿真,观察时序图;时序图正确后将FPGA与MCU连接,测试两者之间通信和传送数据是否正确。
3)硬件软件联调
将信号调理电路产生的信号接入FPGA,观察MCU处理后并显示的数据是否与输入信号的参数相符合。

4.2 测试条件与仪器
测试条件:检查多次,仿真电路和硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。
测试仪器:120M示波器,高频率信号发生器

4.3 测试结果及分析
4.3.1软件测试结果

1HZ~100MH正弦信号频率测量测试结果如下表所示:(最小有效值:10mV)   

100HZ~1MH方波信号时间间隔测量测试结果如下表所示:(电压范围:50mV~1V)   

1HZ~5MH方波信号占空比测量测试结果如下表所示:(电压范围:50mV~1V)  

4.3.2硬件测试结果


频率

时间差

占空比

5. 测试分析与结论
根据上述测试数据,在所要求的条件下,数据测量较为精准,由此可以得出以下结论:
1)该系统可以测量频率为1HZ~100MHZ,最小有效值为10mv正弦波的频率和周期,相对误差的绝对值不大于0.01% 。
2)测量频率为100HZ~100MHZ,最小有效值为50mv方波的时间间隔,相对误差的绝对值不大于1% 。
3)测量频率为1HZ~5MHZ,最小有效值为50mv方波的占空比,相对误差的绝对值不大于1% 。
综上所述,本设计达到设计要求。





7

主题

20

帖子

49

积分

一粒轻沙

Rank: 1

积分
49
沙发
发表于 2019-1-25 16:04:45   只看该作者
感谢楼主的分享,正好可以和论坛里面2015年的F题对比学习

43

主题

241

帖子

509

积分

单晶硅锭

Rank: 3Rank: 3

积分
509
板凳
发表于 2019-1-25 17:30:01   只看该作者
感谢楼主的分享,请问有原文件吗

31

主题

98

帖子

349

积分

二氧化硅

Rank: 2

积分
349
4#
发表于 2019-1-26 13:56:05   只看该作者
春风十里 发表于 2019-1-25 17:30
感谢楼主的分享,请问有原文件吗

忘记上传文件了

数字频率计(F题).rar

651.4 KB, 下载次数: 226, 下载积分: 积分 -1

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