式中,fs是信号的采样频率,fg是工频干扰的频率(50Hz)。在自适应模板法中,要求fs为fg的整数倍,即fs=k·50Hz(k为正整数)。  ">   式中,fs是信号的采样频率,fg是工频干扰的频率(50Hz)。在自适应模板法中,要求fs为fg的整数倍,即fs=k·50Hz(k为正整数)。  " />
单片机应用系统中去除工频干扰的快速实现

单片机应用系统中去除工频干扰的快速实现

ID:22318404

大小:54.00 KB

页数:6页

时间:2018-10-28

单片机应用系统中去除工频干扰的快速实现_第1页
单片机应用系统中去除工频干扰的快速实现_第2页
单片机应用系统中去除工频干扰的快速实现_第3页
单片机应用系统中去除工频干扰的快速实现_第4页
单片机应用系统中去除工频干扰的快速实现_第5页
资源描述:

《单片机应用系统中去除工频干扰的快速实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、单片机应用系统中去除工频干扰的快速实现

2、第1内容加载中...lunouseg(this)">  式中,fs是信号的采样频率,fg是工频干扰的频率(50Hz)。在自适应模板法中,要求fs为fg的整数倍,即fs=k·50Hz(k为正整数)。  由于N(n)为周期信号,若S(n)为零均值信号,当M足够大时,有500)this.style.ouseg(this)">  所以,只要从原始输入信号中减去模板信号就能达到滤除工频干扰的目的,即500)this.style.ouseg(this)">(1)对(1)式两端取Z变换,可得该系统的传递函数为500)this.style.ouseg(this)

3、">(2)1.2幅频响应特性  根据系统传递函数(2)式,利用MATLAB语言,对不同采样频率、不同M值的幅频响应特性进行比较,如图1所示。  从图1A组可看出,该滤波器不仅对50Hz有滤波效果,对所有频率为50Hz整数倍的信号都有滤波作用。因此,若采用自适应相干模板法滤除工频干扰,则当有用信号频带范围较宽,信号采样率较高时,将对工频干扰50Hz及其各谐波信号都有很好的抑制作用。  因此不仅要求采样率为50Hz的整数倍,而且要求有用信号的最高频率分量不超过100Hz,否则,频率为100Hz的有用信号也和工频干扰一样被滤除。这样,滤波后的信号将产生失真。  从图1B组可看出,滤波器的幅频

4、特性受M值影响较大。当M值较大时,通频带的纹波系数较小,阻带宽度也较窄。也就是说,M值越大对滤除理想的50Hz来说效果越好;然而,实际工频干扰具有一定的频率变化范围,当M值大到超过某一值后将导致工频干扰滤除效果下降,因此,在实际设计滤波器时,M值的选取要综合考虑。一般M值可选256。图1系统幅频响应特性(a)(b)(c)2单片机实现  用自适应相干模板法去除工频干扰,可以达到实时滤波,这由信号的采样频率、单片机的速度决定。若信号的采样频率不高,单片机速度较快,则在信号的采样间隔时间内就能实现工频干扰的滤除。因此,在使用该方法前,应大概估计信号滤波所需的时间(与信号的通道数成正比),再适

5、当选择采样率和晶振。  为方便说明,下面以A/D采样精度为16位、单片机为89C51、fs=200Hz、M=256为例,来讨论单通道信号中工频干扰去除的快速实现问题。由于A/D精度为16位,因此,单片机中所涉及的运算一般为双字节或三字节加法或减法运算,且由于M值取为256,使得除法运算也变得极其简单,直接简化为甩掉低字节即可。2.1建立初始模板  如前所述,利用自适应相干模板法去除工频干扰的关键在于建立工频干扰的模板,而为实现连续滤波,首先需建立一个初始模板。  由于信号的采样率为200Hz,是工频干扰50Hz的4倍,即在一个工频干扰周期内有4个采样值,所以,建立的模板包括4个值,对应

6、4个不同相位的采样值。另外,由于M值为256,因此,最初采集的1024个(=256×4)数据(16位)是用来建立初始模板的:将1024个数据根据mod(n/4)(n=0,1,2,…,1023)取值的不同,分别将数据进行累加存入不同地址的内存单元中(共需3字节×4=12字节)。当1024个数据分别累加完毕,此时对应内存单元中存放的数据即为500)this.style.ouseg(this)">(m=0,1,2,3)。这4个数据分别取高16位(中、高字节,即求500)this.style.ouseg(this)">(m=0,1,2,3))就是工频干扰的初始模板。2.2滤除工频干扰  在建立

7、初始模板之后,就可对信号进行工频干扰的滤除:对于第1024个(n=1024)采样数据,由于mod(n/4)=0,因此,只要将该采样值减去初始模板值0,即进行减法运算500)this.style.ouseg(this)">,就完成了该时刻信号的工频干扰的滤除。但为快速、连续、实时地实现50Hz滤波,还需将初始模板值0进行修改,即将存放500)this.style.ouseg(this)">的内存单元的内容修改为500)this.style.ouseg(this)">。同理,对于第1025个(n=1025)采样数据,此时mod(n/4)=1,要滤除该时刻信号中包含的工频干扰,只需减去初始模

8、板值1,即完成减法运算500)this.style.ouseg(this)">。当然,也需修改初始模板值1,即将存放500)this.style.ouseg(this)">的内存单元内容修改为500)this.style.ouseg(this)">。  依此类推,以后采入的每一个数据都做相应处理:滤波和修改模板,最终就可实现整个信号的快速、连续、实时去除工频干扰。由于滤波过程中涉及减法运算,而单片机对于有符号数的运算处理较复杂,因此,在进行减法

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。