第6章6.6软件抗干扰技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
主要数字滤波算法:算术平均值法、中位值滤波法、限幅 滤波法、惯性滤波法 等
1、算术平均值法
算术平均值法是对输入的 N个采样数据 xi(i=1~ N),寻找这样一个y,使y与各采样值间的偏差的平方和 为最小,即
N 2 Emin (y xi ) i1
由一元函数求极值原理可得:
应多采用单字节指令,并在关键地方人为插入一些单字 节指令,或将有效单字节指令重复书写,提高弹飞程序纳入 正轨的机会,这便是指令冗余。
在 RAM 区中设置一个先进先出的循环队列作测量数据缓冲 区,其长度固定为 N ,每采样一个新数据,就将其存入队尾, 而丢掉原来队首的一个数据,而后求出包括新数据在内的 N 个 数据的算术平均值。这样每进行一次采样,就可计算出一个新 的平均值,从而提高了系统响应速度和测量精度。
特点:对周期性干扰有良好的抑制作用,平滑度高,灵敏度低; 但对偶然出现的脉冲性干扰抑制作用差,不易消除由于脉冲干 扰引起的采样值偏差。所以不适合脉冲干扰比较严重的场合, 而适用于高频振荡系统。 N值设定的工程经验值为:
优点:对周期性干扰具有良好的抑制作用,适用于波动频率 较高的场合。 缺点:相位滞后,灵敏度低。
6、其它滤波方法
(1).去极值平均滤波
算术平均滤波不能将明显的偶然的脉冲干扰消除,只是 把其平均到采样结果中,从而降低了测量精度。去极值平均 滤波是对连续采样的 m 个数据进行比较,去掉其中的最 大值与最小值,然后计算余下的m-2 个数据的算术平均值。
式中,第 m 次为最新值,C1、C2、…、Cm 为加权系数, 先小后大,且均为小于1但总和等于1的小数,即满足下式
C1 C2 … Cm 1
Cm > Cm-1 > …C1 > 0 C1、C2、…、Cm 的取值应视具体情况选取,并通过调试确定。 例如,某纯滞后时间为τ的被控对象,采用m =4的加权平均 滤波算式为
6.6 软件抗干扰技术
一、测控系统软件的基本要求 (1)易理解、易维护 指软件系统容易阅读和理解,容易发现和纠正错误,容 易修改和补充。 (2)实时性 要求系统及时响应外部事件的发生,并及时给出处理结果。 (3)可测试性
两方面含义:其一是比较容易制定出测试准则,并根据这 些准则对软件进行测试;其二软件设计完成后,首先在模拟环 境下运行,经过静态分析和动态仿真运行,证明正确无误后才 可投入实际运行。
1.开关量(数字量)信号输入抗干扰措施
干扰信号多呈毛刺状,作用时间短,利用这一特点,我们 在采集某一开关量信号时,可多次重复采集,直到连续两次或 两次以上结果完全一致方为有效。
2.开关量(数字量)信号输出抗干扰措施
在软件上,最为有效的方法就是重复输出同一个数据。只要 有可能,其重复周期尽可能短些。
输出设备是电位控制型还是同步锁存型,对干扰的敏感性相 差较大。前者有良好的抗“毛刺”干扰能力,后者不耐干扰,当 锁存线上出现干扰时,它就会盲目锁存当前的数据,也不管此时 数据是否有效。
y ( k ) = C1 y 1 C2 y 2 C3 y 3 C4 y 4
式中权系数
e C1 R
3
,
e C2 R
2
,
e C3 R
,
C4
1 R
,
3 2 R e e e 1
优点: 这种算法能协调系统的平滑度和灵敏度的矛盾,提高灵 敏度,更适用于纯滞后较大的对象和采用周期较短的系统。 缺点:对于纯滞后时间常数较小和采用周期较长,变化缓慢的 信号不能迅速反应当前所受干扰的严重程度,滤波效果差。
2、指令冗余 CPU受干扰后,往往将操作数当作操作码执行,造成程序混乱。 ※当程序弹飞到一单字节指令上时,便自动纳入正轨;
※当程序弹飞到一双字节指令上时(操作码、操作数),有 可能落到操作数上,从而出错; ※当程序弹飞到一三字节指令上时(操作码、操作数、操 作数),因其有两个操作数,从而出错机会更大 。
序 号 1
பைடு நூலகம்
2
3
4
5
6
7
8
9
24 25 20 27 24 60 24 25 26
采样值 采样数据明显存在被干扰现象(彩色数据)。 对1、2、3次采样中位值滤波后值:24 对4、5、6次采样中位值滤波后值:27
对7、8、9次采样中位值滤波后值:25
采用去脉冲干扰平均值滤波后,其采样值为:25
3. 滑动平均值法滤波
特点: 1 ) N值决定了信号平滑度和灵敏度。随着 N的增大,平滑度提
高,灵敏度降低。应该视具体情况选择N,以便得到满意的滤
波效果。一般地,流量参数N=8-16 ,常取 12;压力 N=4 ;液面 N=4-12;温度N=1-4,温度、成分等缓变信号可取2 。
在编制算法程序时,m一般取2、4、8等2的整数幂,以便
T T f s •稍加整理得 y ( n ) x ( n ) y ( n 1 ) ( 1 α ) x ( n ) y ( n 1 ) T T T T f s f s
•其中, α 称为滤波系数,且 0 < α <1 ,Ts 为采样周期, Tf 为 滤波器时间常数。
•根据惯性滤波器的频率特性,若滤波系数α越大(Tf越大), 则带宽越窄,滤波频率也越低。因此,需要根据实际情况,适 当选取α值,使得被测参数既不出现明显的纹波,反应又不太 迟缓。
于用移位来代替除法求得平均值。 2 )平均值滤波法一般适用于具有周期性干扰噪声的信号,特 别适用信号本身在某一数值范围上下波动的情况,如压力、流 量、液面等。但对偶然出现的脉冲干扰信号,滤波效果尚不理 想。
2.中位值滤波法(中值滤波)
中位值滤波法的原理是对被测参数连续采样 m次(m≥3)且是 奇数,并按大小顺序排列;再取中间值作为本次采样的有效数 据。一般m取3~5次即可。 •特点:中位值滤波法对脉冲干扰信号等偶然因素引发的干扰有 良好的滤波效果。如对温度、液位等变化缓慢的被测参数采用
•
• •
当y(n)≥yH时,则取y(n)=yH(上限值);
当y(n)≤yL时,则取y(n)=yL(下限值); 当yL<y(n)<yH时,则取y(n)。
(2)限速滤波(亦称限制变化率):即 当|y(n)-y(n-1)|≤Δy0时,则取y(n); 当|y(n)-y(n-1)|>Δy0时,则取y(n)=y(n-1)。 其中Δy0为两次相邻采样值之差的可能最大变化量。Δy0值 的选取,取决于采样周期T及被测参数y应有的正常变化率。 因此,一定要按照实际情况来确定Δy0、yH及yL,否则,非但 达不到滤波效果,反而会降低控制品质。
7、各种滤波方法选择
(1)滤波效果 一般地,对于变化比较慢的参数,如温度,采 用限幅滤波和惯性滤波法。对变化较快的参数,如 压力、流量等,可选用算术平均和加权平均滤波, 特别是加权平均滤波效果更好。对要求比较高的系 统,需采用复合滤波法。
(2)滤波时间:应选用滤波时间较短的程序。
6.6.2 开关量的软件抗干扰技术
例:某压力仪表采样数据如下: 序 号 1
2
3
4
5
6
7
8
9
10
采样值
24 25 20 27 24 60 24 25 26 23
采样数据明显存在被干扰现象(彩色数据)。 采用算术平均值滤波后,其采样值为: Y=(24+25+20+27+24+60+24+25+ 26+23)/10=28 干扰被平均到采样值中去了
优点:能有效克服因偶然因素引起的脉冲干扰。对随机干 扰或采样器不稳定引起的失真有良好的滤波效果。 缺点:无法抑制周期性干扰,平滑度差。
5.惯性滤波法
•常用的RC滤波器的传递函数是: y( s)
x(s)
1 1 Tf s
• 其中 Tf=RC ,它的滤波效果取决于滤波时间常数 Tf 。因此, RC滤波器不可能对极低频率的信号进行滤波。为此,人们模仿 上式做成一阶惯性滤波器亦称低通滤波器。 y ( n ) y ( n 1 ) •即将上式写成差分方程 T y ( n ) x ( n ) f T s
此法会收到良好的滤波效果;对流量、速度等快速变化的参数
一般不宜采用中位值滤波法。 即在每个采样周期,先用中位值滤波法得到 m 个滤波值,再对 这 m 个滤波值进行算术平均,得到可用的被测参数。也称为去
•中位值滤波法和平均值滤波法结合起来使用,滤波效果会更好。
脉冲干扰平均值滤波法。
例:某压力仪表采样数据如下:
在编制算法程序时,为便于用移位来代替除法求得平均值, m-2应取2、4、8等,故m取4、6、10等。 这种算法适用于工业场合经常遇到的尖峰脉冲干扰的信号滤 波。
(2). 加权平均滤波 算术平均滤波和去极值平均滤波都存在平滑性和灵敏度的矛 盾。采样次数太少则平滑效果差,次数太多则灵敏度下降,对 测量参数的变化趋势不敏感。为协调两者关系,可采用加权平 均滤波。 加权平均滤波是对每次采样值不以相同的权系数而以增加新 鲜采样值的权重相加。一个m项加权平均式为:
参数 N值
流量 12
压力 4
液面 4~12
温度 1~4
4.限幅滤波法
经验说明,生产过程中许多物理量的变化需要一定的时间, 因此相邻两次采样值之间的变化幅度应在一定的限度之内。限 幅滤波就是把两次相邻的采样值相减,求其增量的绝对值,再 与两次采样所允许的最大差值 Y 进行比较,如果小于或等 于 Y,表示本次采样值 y(k)是真实的,则取 y(k)为有效采 样值;反之,y(k)是不真实的, 则取上次采样值 y(k 1)作 为本次有效采样值。 (1)限幅滤波:采用上、下限限幅,即
1 y N
x
i 1
N
i
意义
假设某次测量的测量值包括信号成分Si和噪音成分Ci,进行N次测 量后信号成分之和为:
Si N * S
i 1
N
噪音的强度是用均方根来衡量的:
2 Ci NC i 1 N
上两式中,S、C分别表示进行N次测量后信号和噪音的平均强度。
N*S S N 信噪比: C N *C 即算术平均值法使信噪比提高了 N 倍。
6.6.3 CPU抗干扰技术
当干扰作用到CPU本身时,CPU将不能按正常状态执行程序, 从而引起混乱。 1、睡眠抗干扰 CMOS 型单片机通过执行 ORL PCON , #1 可以进入睡眠 (待机)状态,只有定时/计数系统和中断系统处于值班状 态。这时 CPU对系统三总线上的出现的干扰不会作出什么 反应,从而大大降低系统对干扰的敏感程度。 软件设计: 主程序自检、初始化 LOOP:ORL PCON,#1 LJMP LOOP CPU睡眠 PC指针位置 中断唤醒CPU PC指针自动压栈 中断服务程序 中断返回
(4)准确性 算法选择、位数选择等要符合要求。 (5)可靠性 最重要的指标之一,两方面含义: 第一是运行参数环境发生变化时,软件能可靠 运行并给出准确结果,即软件应具有自适应性; 第二是工业环境极其恶劣,干扰严重,软件必
须保证在严重干扰条件下也能可靠运行。
二.软件抗干扰研究的主要内容
1.采用软件的方法抑制叠加在输入输出信号上噪声影响,
与模拟滤波器相比,有以下几个优点:
1.数字滤波是用程序实现的,不需要增加硬设备,所以
可靠性高,稳定性好。 2. 数字滤波可以对频率很低 ( 如 0 . 01HZ) 的信号实现滤
波,克服了模拟滤波器的缺陷。
3.数字滤波器可以根据信号的不同,采用不同的滤波方 法或滤波参数,具有灵活、方便、功能强的特点。
如模拟输入信号的数字滤波技术;
2.由于干扰而使程序发生混乱,导致程序乱飞或陷入死循 环,采取使程序纳入正轨的措施,如指令冗余、软件陷阱、 “看门狗”技术等; 3.发现程序失控后,解决系统恢复正常运行的方法,如重 要信息的恢复,系统重入的条件等。
6.6.1
数字滤波技术
由于工业生产的现场环境非常恶劣,各种干扰源很多, 计算机系统通过输入通道采集到的数据信号,虽经硬件电路的 滤波处理,但仍会混有随机干扰噪声。因此,为了提高系统性 能,达到准确的测量与控制,一般情况下还需要进行数字滤波。 所谓数字滤波,就是通过一定的计算或判断程序减少干 扰在有用信号中的比重。故实质上它是一种程序滤波。 数字滤波可靠性高,稳定性好,修改滤波参数也容易, 而且一种滤波子程序可以被多个通道所共用,因而成本很低。 另外,数字滤波可以对各种干扰信号,甚至极低频率的信号进 行滤波。它的不足之处是需要占用CPU的机时。