微型机与应用
MICROCOMPUTER & ITS APPLICATIONS
1999年 第18卷 第2期 Vol.18 No.2 1999



基于PC总线的高精度频率测量卡设计
张志明　李蓉艳
　　摘　要：本文应用等精度测频原理，设计了基于PC总线的高精度频率测量卡。克服了一般直接测频法在低频段精度不高的缺陷，实现了在整个测量频段保持高精度不变的目标。给出了等精度测频电路图和软件功能子程序图。
　　关键词：PC总线　频率测量　等精度测量　PC集成仪器
　　谐振式传感器是利用某种谐振器的固有频率随被测物理量(如力场、压力、加速度、电场、磁场、温度、气体量等)的变化而变化的原理，由精确测量频率的变化来度量上述物理量的变化。因其输出信号为频率型信号，具有适合远距离传输、便于与数字计算机系统连接、抗干扰性好等优点。本文介绍的传感器频率信号检测仪和微机系统相结合，用来精确测量谐振式传感器输出频率信号，并将其转换为待测量，具有数据处理、存储功能。该测量卡还可作为电子通用计数器使用。
1　工作原理
　　高精度频率测量是频率信号检测仪的关键。传统的直接测频法，由于被测频率信号与阀门时间的不同步存在较大的计数误差，此误差在整个频率测量范围内对测频精度影响不同，特别在低频时测频精度很低。采用等精度测频法克服了这一缺点。其原理是采用多周期同步测量原理，即在整数个被测信号周期内计数频标信号，经运算求得被测频率值。采用这种方法在整个频率范围内可获得同样高的精度和分辨率。


图1　等精度频率测量法时序图
　　图1是等精度测频法的时序图。当测频预置门打开，即当测频允许信号有效(TQ＝1)后，计数阀门并不是立即打开，计数器A、B也没有立即开始计数，而是在此后的第1个被测信号有效沿到来后才打开计数阀门，开始计数；当计数到阀门时间预定值时，发出预置门关闭即测频允许无效信号(TQ＝0)，但这时计数阀门仍未关闭，计数器A、B也没有停止计数，而是在此后的下一个被测信号有效沿到来后才关闭计数阀门，停止计数。实际的阀门时间为T，这样就保证了被测信号与阀门时间的同步。显然，在时间T内，A计数器对被测信号的计数值NA和B计数器对时钟频标信号的计数值NB分别为：
　　NA＝Fx×T
　　NB＝F0×T
　　被测信号频率为：
　　Fx=F0×NA/NB
　　由上分析可知，被测信号与阀门信号的同步，保证了阀门时间T准确地等于被测信号周期的整数倍，因此计数值NA没有±1计数误差。所以等精度测频法的误差可以表示为：
　　ΔFx/Fx=ΔF0/F0+ΔNB/NB
　　由上式可知，等精度测频法的误差主要有2项：频标信号误差ΔF0/F0和B计数器计数误差ΔNB/NB。由于时钟频标信号F0很高(10MHz)，基数NB＞＞1，故B计数器的±1个字误差(ΔNB＝±1)引起的计数误差ΔNB/NB很小；另外基准晶体振荡器的精度很高，频标信号误差ΔF0/F0很小，所以等精度测频法具有很高的精度。同时可以看出，在输入信号无噪声，触发误差和频标误差可忽略不计的情况下，等精度测频误差只取决于频标信号的计数测量误差，而与被测信号频率无关。因此，在整个频率测量范围测量精度均等，分辨率很高。
　　与普通计数器/频率计的电路相比，采用等精度测频原理的电路结构复杂、体积庞大，但若用微型计算机来实现其运算和控制功能，则是简单和方便的，只要利用软件就可替代复杂的硬件电路。本文论述的频率信号检测系统即以此为原则，和PC微机系统相结合而设计。
2　硬件电路
　　智能等精度频率信号检测系统的硬件主要由5部分电路组成：PC微机及其接口电路、输入信号通道(包括光耦隔离通道、非光耦信号通道和通道选通门)、同步门电路(包括同步门、同步门控制器和阀门时间控制器)、计数器(包括事件计数器、时间计数器)、频标发生电路(石英晶体TCXO振荡电路及外部频标接口)。系统的整机框图如图2。


图2　等精度频率计整机框图
　　下面仅对实现等精度测频原理的主要电路：同步门电路和计数器部分作一说明。
　　输入信号及频标信号经74HC14施密特高速反相器缓冲后，由同步门和同步门控制器同步后，进入计数器电路进行计数。等精度频率测量法设计电路中采用2个计数器分别对被测信号Fx和频标信号F0计数；同步门控制电路保证阀门开启时间与被测信号同步。
2.1　同步门及同步门控制器
　　同步门控制器是一个带预置和清除的D触发器。D端接阀门测量时间控制信号；CLR端接复位信号；Q端输出门控信号控制同步门与门74HC08。被测信号同时发送至D触发器的CLK端和同步门输入端，起到同步控制作用。

图3  同步门与同步门控制器
　　阀门时间控制器由CTC8254的通道2和前级分频计数器74HC393组成，向测量电路提供预置阀门信号时间。预置阀门从0.01～10.0s可任选。当预置阀门时间较长时，CTC—2通道作为单位时间循环体，循环次数由软件控制。
2.2　计数器
　　频率测量部分是本仪器的关键，由可编程三通道CTC8254计数器和前级计数器组成，其中CTC8254共有3个计数通道，分别作为时间计数器NA、事件计数器NB和阀门时间定时器NC，分别用于对被测频率信号Fx、频标信号F0计数和对阀门时间TQ定时以准确求得频率值。CTC8254计数器的3个输出端与微机中断请求信号线相连，在计数溢出后，8254输出脉冲信号，引起中断。使用硬件计数可以避免使用软件计数器带来的时间误差。又由于硬件计数器溢出值的限制，我们采用软硬件结合的方法来扩展计数范围：当8254计数器回零溢出进位时发生PC机硬件中断，CPU响应中断后在中断服务程序里对相应的计数器进行最后级的软件计数。

图4　等精度测频原理电路图
　　图4是等精度测频原理电路图。具体测量过程如下：
　　1.测量前由程序先对计数器清零(清硬件计数器及相应的RAM单元)，控制CPU发出复位控制信号12H，通过74LS174复位同步门控制器74HC74和清零前级分频计数器IC1、IC2，禁止CTC8254三通道计数器计数。D触发器门控信号Q端处于低电平，测量阀门时间控制信号D端(D0线)为低电平“0”，Q端与D端逻辑状态相同，触发器处于闭锁状态，被测信号到达D触发器的CLK端并不能使其翻转。这时同步门与门74HC08处于关闭状态，频标信号和待测信号均不能进入计数器计数。
　　2.测量开始时，由CPU根据程序发出的指令0DH，测量阀门时间控制信号由低电平跳变为高电平，D端变为高电平“1”，一旦有被测信号的上升沿到达CLK端，触发器立即翻转，Q端和D端逻辑状态相同，变为高电平“1”，触发器解除闭锁，同步门置位被打开，允许信号进入计数器计数；同时，CTC8254计数器和前级计数器IC1、IC2允许计数；硬件阀门时间定时器开始计数测量预置阀门时间。
　　3.同步门打开后，被测信号与时间信号经施密特反相器74HC14整形后分别进入相应的计数器进行计数。在计数过程中同步门控制器D触发器74HC74的D端保持为高电平“1”，触发器再次处于闭锁状态，Q端输出也保持为高电平“1”，同步门仍保持开门状态。
　　4.测量预置阀门时间到以后，CPU发出控制信号1CH，使测量阀门时间控制信号恢复到低电平，即同步门控制器D输入端为低电平“0”，因同步门时钟端是和被测信号连在一起的，所以在下一个待测信号的上升沿到来的时候，被测信号再次触发D触发器使之翻转，输出端Q为低电平“0”，同步门关闭。
　　5.在CPU发出控制信号到同步门关闭期间，事件计数器、时间计数器继续计数；同步门关闭后，停止计数。
　　6.CPU检测同步门关闭信号线电平，检测到同步门已经关闭后即从总线接口读入前级硬件计数器的各计数值，与后级软件计数值构成一组完整的计数值，再转换为规格化的数据，进行运算和数据处理，并在显示器上显示经过数据处理后的测量结果。
　　7.下次测量过程重复上述过程。
3　测量程序流程
　　智能频率测量卡的软件采用BORLAND C++3.1，模块化结构设计，整个软件由顶向下分层分块设计，每个模块完成一项功能。其功能子程序如图5。如要扩充其它功能，只要编写相应的功能子程序模块加入即可。 

图5  等精度频率计软件功能子程序图
　　如进一步利用微机资源，可以微机BIOS的INT 15H的扩展功能实时时钟周期中断来作预置阀门时间定时器，可省下8254的通道2及其前级计数器，硬件设计更为简单。当建立允许中断标志后，微机实时时钟以每隔976.562μs的间隔产生实时时钟中断请求信号，并引发硬件中断请求IRQ8。中断服务程序判断32位的事件等待计数器计数值是否已到设定的等待时间，如是，则把用户指定的标记单元置为80H。由此即可设定等待时间为预置阀门时间，标记单元为预置时间到标志，也可完成预置阀门事件定时器的功能，且在各种型号的微机上均能实现和正常工作。
　　通过对样机的调试，高精度频率信号测量卡有以下特点：
　　(1)采用等精度测频法，测量精度高，且在同一阀门时间内，频率测量精度相等。当频标信号稳定度为10-7、阀门时间为10s时，测频精度可达10-6。
　　(2)测量阀门时间可以在0.01～10.0s间任意设置。
　　(3)测频范围0.1Hz～40MHz。
　　(4)输入频率信号全程灵敏度为50mV。
　　(5)与微机结合，智能化程序高，具有数据记忆及处理能力。
　　(6)如外接高稳定度的频标信号源，则测频精度还可进一步提高。
　　(7)适用于任何频率输出型传感器。
作者单位：张志明　西安西北工业大学519#信箱(710072)
　　　　　李蓉艳　西安微电子技术研究所(710054)
参考文献
1　陈成.微机电子仪器的实用设计.北京：水利电力出版社
2　张学庄.电子仪器和测量原理.北京：人民邮电出版社
3　董渭清，王换招.高档微机接口技术与应用.西安：西安交通大学出版社
(收稿日期：1998-07-13)
