软件抗干扰技术
单片机软件抗干扰技术

() 3 中值法 。根据干扰造成采样数据偏大或偏小 的情况 , 对一个采样点连续采集多次 , 并对这些采样值进行 比较 , 取中
值作为该点的采样结果 。
() 4 一阶递推数字滤波法 。这种方法是 利用 软件完成 R C 低 通滤波器的算法 , 实现用软 件方法替代硬件 R C滤波器。一 阶递推数字滤波公式为 :
Eq i me M a f crngTe h l g u p nt nu a ti c noo y No. 1, 0 1 2 08
单 片机 软 件抗 干扰 技术
汤 海燕
( 天津 机电职业技术学院 天津 3 0 3 ) 0 1 1
摘要 : 在安装 于设备上起控 制作用的单片微 型计 算机 中 , 由于设备 的频繁启动和停止 , 电网电压的波动 , 大型设备运行 时产 生磁场 等 诸 多方面的干扰 , 致使单片机的工作 受到影响。 基于这一情况, 采取相应的抗干扰措施是 完全 必要的。 文运用软件抗干扰技术 , 本 解决
序处于无序状态 。 处于这种状态下的时间越短 , 系统 的影响 对 就越小 。 解决这一 问题 的方法 , 就是有意识地在程序 中插入一 些空操作指令 N P 由于这些指令为单字节指令 , 中心处理 O 。 对 机的工作状态元任何影响 ,这样就使失控的程序在 遇到该指
】 =Q ( ) 1 , x +1 Y 一 n ~Q
式中 :
果 。由于干扰 的侵入 , 输入 / 输出接 口状态受干扰 , 造成条件 状 态偏差 、 失误 , 致使控制 失常 , 至造成 系统资源 被某 一任 甚
务模块独 占, 使系统 出现 “ 死锁” 。 () 3 数据受干扰发生变化 。由于 R M是 可以读 / 的 , A 写 因 此, 就有可能在 干扰 的侵 害下 , A R M中数据发生窜改 , 使系统
软件抗干扰策略分析与优化

软件抗干扰策略分析与优化在现代信息化社会中,软件系统的稳定性与可靠性显得尤为重要。
然而,由于各种复杂因素的存在,软件系统很容易受到外界干扰而产生问题。
因此,设计和实施一种有效的软件抗干扰策略变得至关重要。
本文将对软件抗干扰策略进行分析,并提出相应的优化方法,以提高软件系统的稳定性和可靠性。
首先,我们需要了解什么是软件系统的干扰。
软件系统的干扰可以来自多个方面,例如硬件故障、软件错误、外部环境变化、网络攻击等。
这些干扰都可能导致软件系统的性能下降、功能失效甚至崩溃。
针对软件系统的干扰,我们可以采取以下策略进行抗干扰:1. 异常检测与处理通过实时监测软件系统的运行状态,及时发现并处理异常情况。
通过使用异常检测工具和算法,可以从数据流中检测出异常行为,并采取相应的处理措施,以避免可能的软件崩溃。
2. 容错设计在软件系统的设计阶段,引入容错机制。
容错设计可以通过增加冗余、引入备份系统、实施错误恢复机制等方式来实现。
当软件系统出现问题时,容错设计能够保障系统继续正常运行或者尽快恢复到正常状态。
3. 安全措施加强软件系统的安全性,以抵御外部的恶意攻击。
安全措施可以包括加密传输、访问控制、安全审计等技术手段,以防止黑客入侵、数据泄漏等安全问题。
4. 定期维护与更新软件系统的维护与更新是保障系统稳定运行的重要环节。
定期进行软件系统的巡检和维护,及时修复已知的漏洞和问题,更新软件版本,以确保软件系统的可用性和稳定性。
优化软件抗干扰策略的方法包括:1. 整体评估与改进对软件系统进行综合评估,并制定相应的改进措施。
通过对现有的软件系统进行全面分析,评估各个方面的干扰情况,并针对性地提出相应的策略和方案,以减少或消除干扰。
2. 采用高可靠性技术引入高可靠性技术来提高软件系统的稳定性和可靠性。
例如,采用冗余设计、容错算法、容灾机制等技术手段,使系统具备自我修复和自我保护的能力。
3. 增强安全意识与培训加强软件系统用户和开发者的安全意识,提升他们对干扰源和干扰方式的认识和理解。
从软件角度提升PLC高抗干扰性能的策略

从软件角度提升PLC高抗干扰性能的策略在提升PLC(可编程逻辑控制器)高抗干扰性能方面,软件角度起着至关重要的作用。
通过合理的软件设计和优化,可以降低PLC受到干扰的风险,提高系统的可靠性和稳定性。
以下是从软件角度提升PLC高抗干扰性能的一些策略:1. 合理选择PLC硬件:选择具有抗干扰能力强的PLC硬件是提升高抗干扰性能的基础。
首先,要选择防护措施完善、具备优秀热设计的PLC设备,以确保其能在恶劣环境下可靠工作。
其次,选择具备较高抗干扰能力的模块和接口组件,例如选择具有低噪声指标的输入输出模块、具备良好抗电磁干扰特性的电源模块等。
此外,还应选择具有良好抗辐射干扰能力的布线和连接线材料。
2. 降低PLC系统工作频率:通过降低PLC系统的工作频率,可以减少系统受到干扰的机会。
可以通过合理的切换工作模式、优化命令的发送和响应时间等方式降低系统的频率。
3. 增加冗余性和容错性:在软件设计中增加冗余和容错机制,可以降低干扰对系统运行的影响。
例如,使用冗余备份的控制单元和通信模块,同时进行故障检测和自动恢复等技术手段,以提高系统的可靠性和稳定性。
4. 使用抗干扰算法:通过采用抗干扰算法,可以在软件层面上对PLC系统进行优化。
例如,使用滤波器技术对输入信号进行滤波处理,滤除干扰成分;使用差分编码技术对通信信号进行编码,提高抗干扰能力;使用纠错码等方法提高系统的容错性等。
5. 合理分配系统资源:在软件设计中,合理分配系统资源可以提高系统的抗干扰性能。
例如,通过合理分配任务优先级和时间片,保证重要任务的及时处理,减少干扰对关键任务的影响;合理配置系统的缓冲区,以降低数据传输过程中受到的干扰;配置适当大小的任务缓存,预留一定的处理能力来应对突发干扰等。
6. 优化代码编写:在软件开发过程中,优化代码编写是提高系统抗干扰性能的有效手段。
编写高效的代码可以提高系统的响应速度和处理能力,降低受到干扰时的延迟和错误率。
应避免使用复杂的逻辑判断和大量循环,提高代码的可读性和执行效率。
软件抗干扰技术PPT课件

2021/3/9
8
例:某压力仪表采样数据如下:
序号 1 2 3 4 5 6 7 8 9
24 25 20 27 24 60 24 25 26
☆软件陷阱由三条指令构成:
NOP
NOP
LJMP ERR ;ERR错误处理程序入口
☆软件陷阱安排在下列四种地方:
1)、未使用的中断向量区
2)、未使用的大片ROM区
3)、表格区尾部
2021/3/9
20
4)、程序区
软件陷阱安排在程序的断裂点处,这类指令有LJMP、SJMP、AJMP、RET、 RETI,正常执行的程序到此便不会继续往下执行,如果还要顺序执行,必 然是出错了,就有必要设陷阱将其扑捉出来。
特点:对周期性干扰有良好的抑制作用,平滑度高,灵敏度低; 但对偶然出现的脉冲性干扰抑制作用差,不易消除由于脉冲干 扰引起的采样值偏差。所以不适合脉冲干扰比较严重的场合, 而适用于高频振荡系统。
N值设定的工程经验值为:
参数 流量 压力 液面 温度
N值 12 4
4~12 1~4
2021/3/9
10
4.限幅滤波法
20J2B1/3//J9 NB、JBC、CJNE、DJNZ等。
17
如:利用减法比较两无符号数的大小程序(数放A、B中):
无指令冗余程序:
有指令冗余的情况:
CLR C SUBB A,B JC BBIG … … BBIG:NOP …..
CLR C
SUBB A,B
智能仪表常用的软件抗干扰措施

智能仪表常用的软件抗干扰措施在实际应用中,干扰信号可能影响到智能仪表的CPU、程序计数器(PC)或RAM等,导致程序运行失常。
因此,在设计智能仪表时除了在硬件方面采取抗干扰措施外,必须考虑软件的抗干扰措施。
干扰对软件的影响有两个方面,即程序运行失常和数据受干扰而发生变化。
单片机系统受到干扰后,会使RAM、程序计数器或总线上的数字信号错乱,从而引发一系列不良后果。
CPU得到错误的数据,就会使运行操作出错,导致错误结果,并将错误一直传递下去,形成一系列错误。
如果CPU获得错误地址信息,会使程序失控,即便此后程序恢复到正常状态,但是已经造成不良后果,埋下隐患,最终导致后续程序出错。
同时,如果干扰改变RAM以及特殊功能寄存器的状态,可能导致数值误差,改变程序状态,引起误动作。
软件抗干扰的任务在于CPU抗干扰技术和输入输出的抗干扰技术两方面。
前者主要是防止因干扰造成的程序“跑飞”,后者主要是消除信号中的干扰以便提高系统准确度。
1、数字滤波技术随机干扰会使仪表产生随机误差。
随机误差是指在相同条件下测量某一量时,其大小符号作无规律变化的误差,但随机误差在多次测量中服从统计规律。
在硬件设计中可以模拟滤波器来削弱随机误差,但是它在低频、甚低频时实现较困难。
数字滤波可以完成模拟滤波的功能,而且与模拟滤波相比,它具有如下优势:数字滤波是用程序实现的,无须添加硬件,可靠性高,稳定性好,不存在阻抗匹配的问题,而且多个输入通道可以共用,从而降低系统硬件成本;可以根据需要选择不同的滤波方法或改变滤波器的参数,使用灵活方便;数字滤波器可以对频率很低的信号进行滤波,而模拟滤波由于受电容容量的限制,频率不能太低。
常用的数字滤波算法有程序判断滤波、中值滤波、算术平均值滤波、滑动平均值滤波、加权滑动平均滤波、一阶惯性滤波等。
(1)程序判断滤波经验说明,许多物理量的变化都需要一定时间,相邻两次采样值之间的变化有一定的限度。
程序判断滤波的方法,便是根据生产经验,确定出相邻两次采样信号之间可能出现的偏差ΔY。
软件的抗干扰技术

容 量 越太 、系统 功 耗越 小 , U 可利 用的 时 间就 越 长 ,一 般
可达 到毫秒 级 ,程 序 应该 能完成 一 些必 要的 保 护工作 。
当 系统恢 复供 电后 ,掉 电保 护现 场的 恢复是 系统 软 件
的 一个 重要 工作 ,包括 判 断是 否发 生掉 电保 护 、 数据 是否 还 有 效和恢 复现 场 等工 作 。 判 断是 否发 生掉 电保 护的 目的 是 区别正 常关 机 和掉 电 保 护关机 ,若 是前 者就 没有 必 要恢 复现 场 了 。 个工 作要 这 从 系统 关机 的软 硬件 结构 谈起 ,对拥有 掉 电保 护装置 叉 要 与正 常关机 区别 的系统 ,关机 就不是 一个 简单 的关电源 了 , 在 关机 时必 须给 CPU一 个信 息 ,其 中的 一种 方案 是 采用 软 关机” 的方 法 , 过 一个 按键 通 知系 统 关机 ,由 CPU 通 完成 断 电工作 并 设定 正常 关机 标 志 。不论 是关 机 标志 还是 掉 电标 志 , 都 不应 是 一位标 志的 置 位 或清 零 , 而 应该 是
根 据 电磁兼容 性 设计 ,微 机 化仪 表在 结构 上必 须采 取 足够 的硬件 抗干扰 措施 ,以保证微机 系 统不受 干扰 的影 响 但由 于 微机 系 统一旦 受 干扰 ,后 果将 非 常严 重 ,所 以 , 在 设 计 实 际系 统时 , 均考 虑 万 一出现 干 扰 时 , 微机 系统 自 身 的抵 御措 施 。
寝棒抗司抗的工作主要集中在 C U抗干扰技术和输 = P
r
^ 输 的抗 千 扰技 术 两个方 面 。前 者 主要是 抵 御 园干扰 造
成 的 程序 “ 飞 ”,后 者 主要是 消 除信 号 中的 干 扰 以提 高 跑
单片机测控系统中的软件抗干扰技术

244 •电子技术与软件工程 Electronic Technology & Software Engineering单片机技术• SCM Technology【关键词】单片机 抗干扰技术 数字滤波技术1 引言如图1所示,单片机测控系统是在程序化管理下形成的测控系统,它可以在工业生产过程中提高机械控制的效率。
但是,工业现场环境复杂,具有电磁功能的大量设备频繁启动、停止,产生的干扰影响了单片机系统的正常运行。
本文针对单片机测控系统中的抗干扰问题,单片机测控系统中的软件抗干扰技术文/陈欣从软件抗干扰技术方面进行了分析和研究,并提出了解决方案。
工业单片机测控系统的常见影响如下:1.1 干扰加大数据采集的误差测试系统通道的输入部分受到干扰信号的入侵,有用信号和外来干扰信号相互叠加,加剧了该通道数据采集的误差。
尤其在当前系统输入的是小电压信号时,数据干扰的现象更加严重。
1.2 干扰使数据发送变化单片机系统中的程序是存放在存储器EPROM 中,这些程序不易发生变化。
但是单片机系统的RAM 数据区是可以读写的,它可能会受到读入信息的干扰从而发生变化。
因为干扰渠道的区别,以及数据性质的区别,单片机系统受损害的情况也各不相同,可能造成控制失灵,也可能造成数值误差,更严重的会改变单片机系统某些部件(如串行口、定时器/计数器等)的运行状态等。
1.3 干扰使控制状态失灵在单片机系统中,控制状态依赖于特定条件的输入状况和处理结果,干扰的侵入会造成条件状态错误,引起虚假的信号,从而加大输出控制的误差,甚至控制失常。
1.4 干扰使程序运行失常单片机系统正常运行的前提是CPU 正常工作,如果干扰信号影响到了CPU ,则程序计数器不能正常运行,从而引起系统混乱、控制失灵,即通常说的程序“跑飞”。
现在使用的单片机抗干扰技术主要分为硬件与软件两类。
硬件抗干扰技术固然可以降低系统受干扰的程度,但是成本较高,灵活性不足,而且容易受电磁干扰。
单片机测控系统软件抗干扰技术

开机 后首先对 单片机系统的硬件及软件状态进行检 测, 只有各 项检查 均正常, 序方能继续执行, 程 一旦发现不正常 就进行相 应的处理 。开机 自检程序通常包 括对 RM R M / A 、 O 、I 0口状态及其他接 口电路的检测 。以检测 RM为例 ,实 际操 A 作是向RM A单元写 “O ”读 出也应为“O”再 向其写 “F ” OH, OH , FH, 读出也应为 “F” FH 。如果 RM A 单元读 写出错,应 给出 RM A出 错提示 ( 如声光报警等) ,并转入错误处理程序 。 2 掉电保护 电网瞬间断电或电压突然下降, 将使微机系统陷入混乱 状态 。 当电 网电压恢复正常后, 微机系统难 以恢复正常状态 , 处理这一类事故的有效方法就是采用掉电保护, 即把硬件电 路预先检测到的掉电信号加到单片机的外部中断输入端。 软 件中将掉电中断规定为高级中断, 使系统能及时对掉电作出 反应 。在掉电 中断子程序 中,首先进行现场保护 ,把当时的 重要状态参数 、 中间结果一一从片外RM A 中调入单片机 的RM A 中,某些 SR 内容也调入到 片内通用 RM F的 A 中。其次是对 有 关设备作 出妥善处理, 使外设处于 非工 作状 态等。 后必 须 最 在 片内 R M A 的某一个 或两 个单元作 上特 定标 记,例 如存 入 OF 或4 H 类的代码 ,作为掉电标记。 该注意的是,掉 FH 4 之 应 电后外 围电路失 电,但 C U不能失电,以保持 RM中内容不 P A 变,故 C U P 应有一套 备用电源 。如 CO 型 8 C 1 片执行一 MS 03 芯 条 O LP O ,# 2 的指令后 即可进入掉 电工作状态。 R CN 0H 3 睡眠抗千扰 CO 型 8C 1 MS 03 通过执行 O LPO,≠ l 还 可以进入 睡 R CN ≠ H o 眠状态,只有定时 / 计数系统和 中断系统 处于工作状态 。 这
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
须保证在严重干扰条件下也能可靠运行。
二.软件抗干扰研究的主要内容
1.采用软件的方法抑制叠加在输入输出信号上噪声影响,
于用移位来代替除法求得平均值。 2 )平均值滤波法一般适用于具有周期性干扰噪声的信号,特 别适用信号本身在某一数值范围上下波动的情况,如压力、流 量、液面等。但对偶然出现的脉冲干扰信号,滤波效果尚不理 想。
2.中位值滤波法(中值滤波)
中位值滤波法的原理是对被测参数连续采样 m次(m≥3)且是 奇数,并按大小顺序排列;再取中间值作为本次采样的有效数 据。一般m取3~5次即可。 •特点:中位值滤波法对脉冲干扰信号等偶然因素引发的干扰有 良好的滤波效果。如对温度、液位等变化缓慢的被测参数采用
如模拟输入信号的数字滤波技术;
2.由于干扰而使程序发生混乱,导致程序乱飞或陷入死循 环,采取使程序纳入正轨的措施,如指令冗余、软件陷阱、 “看门狗”技术等; 3.发现程序失控后,解决系统恢复正常运行的方法,如重 要信息的恢复,系统重入的条件等。
Hale Waihona Puke 6.6.1数字滤波技术
由于工业生产的现场环境非常恶劣,各种干扰源很多, 计算机系统通过输入通道采集到的数据信号,虽经硬件电路的 滤波处理,但仍会混有随机干扰噪声。因此,为了提高系统性 能,达到准确的测量与控制,一般情况下还需要进行数字滤波。 所谓数字滤波,就是通过一定的计算或判断程序减少干 扰在有用信号中的比重。故实质上它是一种程序滤波。 数字滤波可靠性高,稳定性好,修改滤波参数也容易, 而且一种滤波子程序可以被多个通道所共用,因而成本很低。 另外,数字滤波可以对各种干扰信号,甚至极低频率的信号进 行滤波。它的不足之处是需要占用CPU的机时。
特点: 1 ) N值决定了信号平滑度和灵敏度。随着 N的增大,平滑度提
高,灵敏度降低。应该视具体情况选择N,以便得到满意的滤
波效果。一般地,流量参数N=8-16 ,常取 12;压力 N=4 ;液面 N=4-12;温度N=1-4,温度、成分等缓变信号可取2 。
在编制算法程序时,m一般取2、4、8等2的整数幂,以便
参数 N值
流量 12
压力 4
液面 4~12
温度 1~4
4.限幅滤波法
经验说明,生产过程中许多物理量的变化需要一定的时间, 因此相邻两次采样值之间的变化幅度应在一定的限度之内。限 幅滤波就是把两次相邻的采样值相减,求其增量的绝对值,再 与两次采样所允许的最大差值 Y 进行比较,如果小于或等 于 Y,表示本次采样值 y(k)是真实的,则取 y(k)为有效采 样值;反之,y(k)是不真实的, 则取上次采样值 y(k 1)作 为本次有效采样值。 (1)限幅滤波:采用上、下限限幅,即
与模拟滤波器相比,有以下几个优点:
1.数字滤波是用程序实现的,不需要增加硬设备,所以
可靠性高,稳定性好。 2. 数字滤波可以对频率很低 ( 如 0 . 01HZ) 的信号实现滤
波,克服了模拟滤波器的缺陷。
3.数字滤波器可以根据信号的不同,采用不同的滤波方 法或滤波参数,具有灵活、方便、功能强的特点。
•
• •
当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,否则,非但 达不到滤波效果,反而会降低控制品质。
在 RAM 区中设置一个先进先出的循环队列作测量数据缓冲 区,其长度固定为 N ,每采样一个新数据,就将其存入队尾, 而丢掉原来队首的一个数据,而后求出包括新数据在内的 N 个 数据的算术平均值。这样每进行一次采样,就可计算出一个新 的平均值,从而提高了系统响应速度和测量精度。
特点:对周期性干扰有良好的抑制作用,平滑度高,灵敏度低; 但对偶然出现的脉冲性干扰抑制作用差,不易消除由于脉冲干 扰引起的采样值偏差。所以不适合脉冲干扰比较严重的场合, 而适用于高频振荡系统。 N值设定的工程经验值为:
主要数字滤波算法:算术平均值法、中位值滤波法、限幅 滤波法、惯性滤波法 等
1、算术平均值法
算术平均值法是对输入的 N个采样数据 xi(i=1~ N),寻找这样一个y,使y与各采样值间的偏差的平方和 为最小,即
N E min ( y xi )2 i 1
由一元函数求极值原理可得:
序 号 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. 滑动平均值法滤波
此法会收到良好的滤波效果;对流量、速度等快速变化的参数
一般不宜采用中位值滤波法。 即在每个采样周期,先用中位值滤波法得到 m 个滤波值,再对 这 m 个滤波值进行算术平均,得到可用的被测参数。也称为去
•中位值滤波法和平均值滤波法结合起来使用,滤波效果会更好。
脉冲干扰平均值滤波法。
例:某压力仪表采样数据如下:
例:某压力仪表采样数据如下: 序 号 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 干扰被平均到采样值中去了
1 y N
i 1
N
xi
意义
假设某次测量的测量值包括信号成分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 倍。