DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1219|回复: 0
打印 上一主题 下一主题

[待整理] 准周期信号基2同步数据采集系统的设计

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-5 14:13:15 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
准周期信号基2同步数据采集系统的设计

摘要:介绍了一款基于单片机的倍频电路。该电路能够实现对准周期信号的整周期同步采样,具有倍频精度高、跟踪速度快、能对准周期信号进行预测和补偿等特点;同时介绍了一种周期预测的方法和原理以及基于PC总线实现准周期信号的同步数据采集系统。    关键词:准周期信号 整周期采样 单片机 预测
数据采集及其傅立叶分析是信号处理的重要环节和基本手段。众所周知,利用FFT技术对信号进行频谱分析时,其精度受谱泄漏和栅栏效应等因素的制约。理论研究和实验均表明:对周期或准周期信号实行按基频整周期同步采集2n个数据,即整周期基2同步采样,可以减小傅立叶分析中的固有误差——谱泄漏和栅栏效应[1]。
对周期信号,通常可采用由锁相环和分频器组成的锁相倍频电路[2],实现对信号的整周期基2同步采样。但对周期缓慢变化的准周期信号,要实现整周期基2同步采样,则非易事。一文提出一款基于单片机周期预测和补偿,从而实现对准周期信号整周期基2号同步采样的倍频电路。该电路倍频精度高、跟踪速度快,能对准周期信号进行预测和补偿,在信号处理和数据采集领域有较好的应用前景。最后给出了基于PC总线实现同步要样的数据采集系统。

1 准周期信号基2倍频电路的实现

1.1 准周期信号基2倍频原理
设待采集的准周期信号的频率为fx,周期Tx。为了实现对输入信号的整周期同步采样,要求对输入信号N倍频,即产生一个频率为Nfx的A/D采样脉冲。又设某基准时钟脉冲信号的频率为fo(fo>>fx),周期为To,对fo进行M分频后,使其恰好等于输入待采集周期信号频率fx的N倍,即:
Nfx=(f0)/M    (1)

Tx=M·NT0=N·MT0    (2)
为了实现基2同步采样,通常取:
N=2 n    (3)
式(3)中n=4,5,...8。显然,当n的位数确定后,改变M,使M随Tx的变化而变化,就能保证整周期基2同步采样。
1.2 准周期信号基2倍频电路的硬件实现
为了保证对准周期信号基2整周期同步采样有较高的精度,笔者提出一款基于双单片机的基2倍频电路如图1所示。它由过零比较器、二分频器、单片机和或门组成,其中单片机选用AT89C2051,外部晶振频率为12MHz,内部计数频率fo为1MHz,输入信号fx经整形和二分频后直接与两单片机的外中断INT0和INT1相连。图1中A、B、C、D、E、F、G各点波形如图2所示。

    其工作原理是:在信号的奇周期Tx1期间,单片机(1)定时器To由输入信号Tx1的上升沿启动,并对Tx1填脉冲计数,Tx1的下降沿关闭定时器To;借助单片机的运算功能,确定M值,并利用定时器T1产生频率为Nfx的输出脉冲信号。定时器To设为内部计数形式,工作方式1(16位计数,初值为0),GATE位为1,利用外部中断INT0引脚上的电平Tx1,直接启动和关才计数器。其计数结果是16位二进制数HL,其中高位为H,低位为L值。
当输入信号频率较低时,计数器T0会溢出触发中断,在中断服务程序中使用单片机内部寄存器(R4)记灵中断次数,以扩展计数范围。利用外部中断INT0引脚上Tx1电平的下降沿产生中断,读取T0的计数值HL和R4的值。通常(3)式中的n可根据输入信号的频率,智能地选取4到8位的二进制数,(2)式中的M值由下式给出:
M=R4HL N (4)
显然M为16位二进制数,因此设置定时器T1为内部计数方式,GATE位为1。当输入信号频率较高时,选工作方式2(8们,初值自动重装载);当输入信号频率较低时,选工作方式1(16位)。定时器T1的初值取决于上一奇周期期间测得的M值,当计数溢出中断时,在中断服务程序中使PLO输出电平翻转,即获得fx的N倍频的方波信号。
同理,可实现单片机(2)在偶周期Tx2期间,输出N倍频的方波信号。可见当输入单片机的外部信号?x每产生一个周期脉冲,在其输出端就会有N个输出脉冲,用输出脉冲去触发A/D板卡采集,即实现了N倍频的整周期采样。
1.3 准周期信号的周期预测
上述方法实现整周期采样时,是把这一周的周期值作为下一周的周期来计算采样脉冲输出频率的。对周期性信号,周期固定不会影响结果;但对准周期信号,周期是渐变的,会带来较大的误差。为了减少或补偿这种误差,本设计借助单片机的运算和数据处理功能,分别对下一周期进行周期预测。即利用前m个周期的T值,对下一个周期作出预测,再以预测的M来设置定时器T1的初值。用拉格朗日线性插值法可预测周期[3],如图3所示。提取最近两周的周期值,推算下一周的周期值。
图3中Tj为第j周终了时刻测得的周期值,Tj-1为第j-1周终了时刻测得的周期值,Tj+1为要预估的下一周终了时刻的周期值,则可得预估公式:
Tj+1=2Tj-Tj-1=Tj±ΔTj    (5)
由此可得:
Mj+1=2Mj-Mj-1=Mj±ΔMj    (6)
2 基于PC总线控制的数据采集系统
基于PC总线的同步采样系统框图见图4,它主要由地址译码器、单片机倍频电路、A/D转换器组成。各模块功能如下:
地址译码:PC机中用户可使用0300H~031FH地址,采用与非门74LS133对PC总线的地址信号A0~A9译码,端口地址为030FH和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)式可求得:
Txmin=8х24T0+TP=128μs+TP (7)
式(7)中的TP为单片机周期预测所需的时间,设约为72μs。

    当输入信号频率较低时,(3)式中的n取8位二进制,(4)式中的M可取16位二进制的最大值,因此由(2)式可求得:
Txmax=28х216T0≈16s (8)
则由(7)、(8)两式可确定:
fxH≤5kHz和fxH≥0.1Hz
(2)误差分析
根据(5)式估算的周期值,如果准周期信号的周期变化是均匀的,即遵从匀变速规律,由此引入的误差为0;如果周期变化是非均匀的,则仍会带来一定误差。在许多实际应用场合(如旋转机械的起停过程)周期主要是匀变速或接近匀变速,而少许的偏离经(5)式的修正后影响很小。其它的计数误差和单片机中断引起的误差,可看作系统误差,由单片机修正。
本文介绍的准周期信号同步数据采集系统,借助单片机的周期预测功能,对准周期信号智能倍频,从而实现整周期基2同步采样,进而大大消除频谱分析中的泄漏误差和栅栏效应,在机械故障诊断、信号测试等相关领域具有很强的实用性。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-4-28 12:55 , 耗时 0.099107 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

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