基于单片机与 FPGA 的等精度频率计设计

摘要 : 利用准等精度测频原理,提出了一种基于单片机与 FPGA 的等精度频率计设计方案 。 该频率计的测频范围可达 1Hz ~ 40MHz ,测量范围内频率测量的精度达到 10 -7 。
关键词 : 单片机与 FPGA ; 等精度测频; 频率计
频率是指周期性信号在单位时间( 1 s ) 内的变化次数 。频率检测是电子测量领域的最基本测量之一,在工作及生产中有着重要的作用 。 在自动检测系统中,人们常把压力、 转速 、 振动等信号转换为频率信号进行测量,因而频率检测的精确度也就成了影响检测结果准确度的一个重要因素 。 介绍了一种采用单片机与 FPGA 相结合的准等精度测频电路,从而能够以较低的成本来实现频率的高精度测量。

1 影响测频精度的因素

一般常见的影响测频精度的因素主要有 2 个方面,一方面是脉冲信号的形状,另一方面就是测频方法的选用。 在自动检测中,为了得到比较理想的脉冲形状,要注意传感器的初始安装位置,另外通常也会在信号的输入端加入脉冲放大整形电路,从而使脉冲的形状符合要求。 而在测频方式方法上,伴随着电子技术软、 硬件技术的发展,在现代测频技术中应用最多的是电子计数法。
电子计数法就是采用电子计数器对一个周期信号在单位时间内重复变化的次数进行计数,从而得到信号的频率值。 此方法的测量精度主要取决于基准时间和计数的量化误差。 电子计数法中较典型的测频方法有 M 法( 脉冲数定时测频法) 测频、 T 法( 脉冲周期测频法) 测频 。M 法测频是在确定时间 t c 内记录待测脉冲个数 m ,然后用所得的脉冲数 m 除以测量时间 t c ,就可得到频率 f 。 M 法测频适合于频率较高的场合,影响其测量精度的因素主要是所记录的脉冲个数 m 和 t c 的大小 。 例如,若脉冲的频率 f = 10 000 Hz,tc = 1 s 时,此时的测量精度可达 0. 01% 左右; 而当频率较低时,若脉冲的频率 f = 100 Hz ,tc 仍为 1 s 时,此时的测量精度就降低到 1% 左右了 。 另外 t c 的长短也会影响测量精度。 虽然 t c 取得较长时,测量精度较高,但不能反映被测量( 如转速) 的瞬时变化,不适合动态测量。 t c 也不能取得太小,太小会导致在 t c 时间段内得到的脉冲数太少,从而使测量精度降低。
T法测频则是在待测信号的一个周期 T x 内,记录标准频率信号变化次数 n ,然后用 n 除以 T x 得到频率 f 。 T 法测频适合于频率较低的场合。 例如,若脉冲的频率 f = 10 Hz ,标准频率信号的频率为 f s = 10 kHz 时,测量精度可达 0.1%左右; 但当频率较高时,若脉冲的频率 f = 1 000 Hz ,标准频率信号的频率 f s 仍为 10 kHz ,测量精度则会降低至 10% 左右 。由以上分析可见,不管是 M 法测频或 T 法测频都无法使频率信号在整个测量范围内得到一个同样的精度。 其精度会随着输入频率的高低不同而发生变化。 要想不论被测信号频率高低,测频精度始终保持不变,通常需采用多周期同步测频法。

2 多周期同步测频法的原理

多周期同步测频是指由被测信号控制门控信号的开启,在被测信号的多个时间周期内测量信号频率。 其原理波形图如图 1 所示 。

由图 1 可看出,这里所介绍的多周期同步测频只是对被测信号同步,对标准时钟信号并不同步,因此这只是一种准同步。 但由于闸门时间与被测信号同步,因此就消除了对被测信号计数产生的 ± 1 个字误差,使测频精度与待测信号的频率无关,从而可以实现在整个测频范围内的等精度测量。设在闸门时间 T 内,被测信号被计数为 N 个脉冲,标准时钟脉冲被计数为 M 个脉冲,那么被测信号的频率则为

相关推荐
工业互联网专业31 分钟前
Python毕业设计选题:基于python的酒店推荐系统_django+hadoop
hadoop·python·django·vue·毕业设计·源码·课程设计
最后一个bug1 小时前
rt-linux中使用mlockall与free的差异
linux·c语言·arm开发·单片机·嵌入式硬件·算法
musir11 小时前
寄存器控制LED灯亮
单片机
JaneZJW2 小时前
Proteus仿真——《51单片机AD和DA转换器的设计》
单片机·嵌入式硬件·51单片机·proteus
赵谨言2 小时前
基于python 微信小程序的医院就诊小程序
经验分享·python·毕业设计
NEWEVA__zzera224 小时前
利用光耦来隔离485芯片与串口引脚,实现自动收发485电路
单片机·嵌入式硬件
m0_748240544 小时前
STM32第十一课:STM32-基于标准库的42步进电机的简单IO控制(附电机教程,看到即赚到)
stm32·单片机·嵌入式硬件
温柔的男孩像海洋丶4 小时前
vscode的keil assistant 中搜索不到全局变量
ide·vscode·单片机
沐欣工作室_lvyiyi5 小时前
基于单片机的多功能智能小车(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·单片机毕业设计
猿来入此小猿5 小时前
基于SpringBoot在线音乐系统平台功能实现十二
java·spring boot·后端·毕业设计·音乐系统·音乐平台·毕业源码