准周期信号基2同步数据采集系统的设计
2008-08-19
作者:郑金菊 余水宝
摘 要: 介绍了一款基于单片机的倍频电路。该电路能够实现对准周期信号的整周期同步采样" title="同步采样">同步采样,具有倍频精度高、跟踪速度快、能对准周期信号进行预测和补偿等特点;同时介绍了一种周期预测的方法和原理以及基于PC总线实现准周期信号的同步数据采集系统" title="数据采集系统">数据采集系统。
关键词: 准周期信号 整周期采样 单片机 预测
数据采集及其傅立叶分析是信号处理的重要环节和基本手段。众所周知,利用FFT技术对信号进行频谱分析时,其精度受谱泄漏和栅栏效应等因素的制约。理论研究和实验均表明:对周期或准周期信号实行按基频整周期同步采集2n个数据,即整周期基2同步采样,可以减小傅立叶分析中的固有误差——谱泄漏和栅栏效应[1]。
对周期信号,通常可采用由锁相环和分频器组成的锁相倍频电路[2],实现对信号的整周期基2同步采样。但对周期缓慢变化的准周期信号,要实现整周期基2同步采样,则非易事。本文提出一款基于单片机周期预测和补偿,从而实现对准周期信号整周期基2同步采样的倍频电路。该电路倍频精度高、跟踪速度快,能对准周期信号进行预测和补偿,在信号处理和数据采集领域有较好的应用前景。最后给出了基于PC总线实现同步采样的数据采集系统。
1 准周期信号基2倍频电路的实现
1.1 准周期信号基2倍频原理
设待采集的准周期信号的频率为fX,周期TX。为了实现对输入信号" title="输入信号">输入信号的整周期同步采样,要求对输入信号N倍频,即产生一个频率为NfX的A/D" title="A/D">A/D采样脉冲。又设某基准时钟脉冲信号的频率为f0(f0>>fX),周期为T0,对f0进行M分频后,使其恰好等于输入待采集周期信号频率fX的N倍,即:
式(3)中n=4, 5,…,8。显然,当n的位数确定后,改变M,使M随Tx的变化而变化,就能保证整周期基2同步采样。
1.2 准周期信号基2倍频电路的硬件实现
为了保证对准周期信号基2整周期同步采样有较高的精度,笔者提出一款基于双单片机的基2倍频电路如图1所示。它由过零比较器、二分频器、单片机和或门组成,其中单片机选用AT89C2051,外部晶振频率为12MHz,内部计数频率f0为1MHz,输入信号fX经整形和二分频后直接与两单片机的外中断相连。图1中A、B、C、D、E、F、G各点波形如图2所示。
其工作原理是:在信号的奇周期TX1期间,单片机(1)定时器T0由输入信号TX1的上升沿启动,并对TX1填脉冲计数, TX1的下降沿关闭定时器T0;借助单片机的运算功能,确定M值,并利用定时器T1产生频率为NfX的输出脉冲信号。定时器T0设为内部计数形式,工作方式" title="工作方式">工作方式1(16位计数,初值为0),GATE位为1,利用外部中断引脚上的电平TX1,直接启动和关闭计数器。其计数结果是16位二进制数HL,其中高位为H,低位为L值。
当输入信号频率较低时,计数器T0会溢出触发中断,在中断服务程序中使用单片机内部寄存器(R4)记录中断次数,以扩展计数范围。利用外部中断引脚上TX1电平的下降沿产生中断,读取T0的计数值HL和R4的值。通常(3)式中的n可根据输入信号的频率,智能地选取4到8位的二进制数,(2)式中的M值由下式给出:
显然M为16位二进制数,因此设置定时器T1为内部计数方式,GATE位为1。当输入信号频率较高时,选工作方式2(8位,初值自动重装载);当输入信号频率较低时,选工作方式1(16位)。定时器T1的初值取决于上一奇周期期间测得的M值,当计数溢出中断时,在中断服务程序中使P1.0输出电平翻转,即获得fX的N倍频的方波信号。
同理,可实现单片机(2)在偶周期TX2期间,输出N倍频的方波信号。可见当输入单片机的外部信号fX每产生一个周期脉冲,在其输出端就会有N个输出脉冲,用输出脉冲去触发A/D板卡采样,即实现了N倍频的整周期采样。
1.3 准周期信号的周期预测
上述方法实现整周期采样时,是把这一周的周期值作为下一周的周期来计算采样脉冲输出频率的。对周期性信号,周期固定不会影响结果;但对准周期信号,周期是渐变的,会带来较大的误差。为了减少或补偿这种误差,本设计借助单片机的运算和数据处理功能,分别对下一周期进行周期预测。即利用前m个周期的T值,对下一个周期作出预测,再以预测的M来设置定时器T1的初值。用拉格朗日线性插值法可预测周期[3],如图3所示。提取最近两周的周期值,推算下一周的周期值。
图3中Tj为第j周终了时刻测得的周期值,Tj-1为第j-1周终了时刻测得的周期值,Tj+1为要预估的下一周终了时刻的周期值,则可得预估公式:
2 基于PC总线控制的数据采集系统
基于PC总线的同步采样系统框图见图4,它主要由地址译码器、单片机倍频电路、A/D转换器组成。各模块功能如下:
地址译码: PC机中用户可使用0300H~031FH地址,采用与非门74LS133对PC总线的地址信号A0~A9译码,端口地址为030EH和030FH。
单片机倍频电路:产生同步信号进行同步采样,保证信号截断长度正好是信号周期的整数倍。
A/D转换器:采用AD678芯片实现模数转换。AD678是带采样保持器的12位A/D转换器,其精度为2-12=1/4096=0.024%,转换时间为5μs,其工作速率满足采样频率的要求。
3 性能及误差分析
(1)输入信号上下限频率fxH和fxL的确定
当输入信号频率较高时,(3)式中的n取4位二进制,考虑到单片机的中断响应时间需要3~8个T0,因此由(2)式可求得:
式(7)中的TP为单片机周期预测所需的时间,设约为72μs。
当输入信号频率较低时,(3)式中的n取8位二进制,(4)式中的M可取16位二进制的最大值,因此由(2)式可求得:
(2)误差分析
根据(5)式估算的周期值,如果准周期信号的周期变化是均匀的,即遵从匀变速规律,由此引入的误差为0;如果周期变化是非均匀的,则仍会带来一定误差。在许多实际应用场合(如旋转机械的起停过程)周期主要是匀变速或接近匀变速,而少许的偏离经(5)式的修正后影响很小。其它的计数误差和单片机中断引起的误差,可看作系统误差,由单片机修正。
本文介绍的准周期信号同步数据采集系统,借助单片机的周期预测功能,对准周期信号智能倍频,从而实现整周期基2同步采样,进而大大消除频谱分析中的泄漏误差和栅栏效应,在机械故障诊断、信号测试等相关领域具有很强的实用性。
参考文献
1 牛玉广,侯维宁.多通道信号的同相位整周期采样[J].数据采集与处理;1997;12(2)
2 吴炳超,刘会金,王茂海.基于PC总线控制的带锁相环的多路数据采集卡的设计[J].电测与仪表,2002;39(5)
3 胡劲松,吴昭同,严洪标.提高旋转机械振动信号整周期采样精度的一种方法[J].浙江大学学报(工学版),2002;36(3)
4 余水宝.智能数字锁相倍频技术研究[J].浙江师范大学学报,2003;26(1)