软件抗干扰的几种办法
10种简单的数值滤波方法

单片机利用软件抗干扰的几种滤波方法1、限幅滤波法(又称程序判断滤波法)A、方法:根据经验判断,确定两次采样允许的最大偏差值(设为A),每次检测到新值时判断:如果本次值与上次值之差<=A,则本次值有效;如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值。
B、优点:能有效克服因偶然因素引起的脉冲干扰。
C、缺点无法抑制那种周期性的干扰,平滑度差。
2、中位值滤波法A、方法:连续采样N次(N取奇数),把N次采样值按大小排列,取中间值为本次有效值。
B、优点:能有效克服因偶然因素引起的波动干扰,对温度、液位的变化缓慢的被测参数有良好的滤波效果。
C、缺点:对流量、速度等快速变化的参数不宜。
3、算术平均滤波法A、方法:连续取N个采样值进行算术平均运算,N值较大时:信号平滑度较高,但灵敏度较低;N值较小时:信号平滑度较低,但灵敏度较高;N值的选取:一般流量,N=12;压力:N=4。
B、优点:适用于对一般具有随机干扰的信号进行滤波,这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动。
C、缺点:对于测量速度较慢或要求数据计算速度较快的实时控制不适用,比较浪费RAM。
4、递推平均滤波法(又称滑动平均滤波法)。
A、方法:把连续取N个采样值看成一个队列,队列的长度固定为N,每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则),把队列中的N个数据进行算术平均运算,就可获得新的滤波结果。
N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4。
B、优点:对周期性干扰有良好的抑制作用,平滑度高,适用于高频振荡的系统C、缺点:灵敏度低,对偶然出现的脉冲性干扰的抑制作用较差,不易消除由于脉冲干扰所引起的采样值偏差,不适用于脉冲干扰比较严重的场合,比较浪费RAM。
5、中位值平均滤波法(又称防脉冲干扰平均滤波法)A、方法:相当于“中位值滤波法”+“算术平均滤波法”,连续采样N个数据,去掉一个最大值和一个最小值,然后计算N-2个数据的算术平均值,N值的选取:3~14,B、优点:融合了两种滤波法的优点,对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差。
单片机软件抗干扰技术

() 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. 增强安全意识与培训加强软件系统用户和开发者的安全意识,提升他们对干扰源和干扰方式的认识和理解。
抗干扰的措施主要包括屏蔽、隔离、滤波、接地和软件

数控车床如何抗干扰数控车床作为cnc机床自然也会像其他的电子仪器仪表一样受到众多的干扰,所以面对有可能发生的干扰我们必须有应对的措施,抗干扰的措施主要包括屏蔽、隔离、滤波、接地和软件处理等。
①屏蔽技术:屏蔽是目前采用最多也是最有效的一种方式。
屏蔽技术切断辐射电磁噪声的传输途径通,常用金属材料或磁性材料把所需屏蔽的区域包围起来,使屏蔽体内外的场相互隔离,切断电磁辐射信号,以保护被屏蔽体免受干扰,屏蔽分为电场屏蔽、磁场屏蔽及电磁屏蔽。
在实际工程应用时,对于电场干扰时,系统中的强电设备金属外壳(伺服驱动器、变频器、驱动器、开关电源、电机等)可靠接地实现主动屏蔽;敏感设备如智能纠错装置等外壳应可靠接地,实现被动屏蔽;强电设备与敏感设备之间距离尽可能远;高电压大电流动力线与信号线应分开走线,选用带屏蔽层的电缆,对于磁场干扰,选用高导磁率的材料,如玻莫合金等,并适当增加屏蔽体的壁厚;用双绞线和屏蔽线,让信号线与接地线或载流回线扭绞在一起,以便使信号与接地或载流回线之间的距离最近;增大线间的距离,使得干扰源与受感应的线路之间的互感尽可能地小;敏感设备应远离干扰源强电设备变压器等。
②隔离技术:隔离就是用隔离元器件将干扰源隔离,以防干扰窜入设备,保证电火花机床的正常运行。
常见的隔离方法有光电隔离、变压器隔离和继电器隔离等方法。
(1)光电隔离:光电隔离能有效地抑制系统噪声,消除接地回路的干扰。
在智能纠错系统的输入和输出端,用光耦作接口,对信号及噪声进行隔离;在电机驱动控制电路中,用光耦来把控制电路和马达高压电路隔离开。
(2)变压器隔离是一种用得相当广泛的电源线抗干扰元件,它最基本的作用是实现电路与电路之间的电气隔离,从而解决地线环路电流带来的设备与设备之间的干扰,同时隔离变压器对于抗共模干扰也有一定作用。
隔离变压器对瞬变脉冲串和雷击浪涌干扰能起到很好的抑制作用,对于交流信号的传输,一般使用变压器隔离干扰信号的办法。
单片机软件系统的抗干扰设计

式 中Q为数字滤波系数; X n 为第1 1 次采样时的滤波 器输入 ; Y n 为第n 次
采样 时的滤波器输 出; Yn — I 为第n + 1 次采样时的滤波器输 出。
滤波系数Q=A T / T f < 1 ,其中A T 为采样周期 : T 伪 数字滤波器的时间 系数 。 具体 的参数应通过实际运行选取适当数值 , 使周期性噪声减至最弱或 全部消除。
字节,都能复位 。也可在程序区每隔一段 ( 如几十条指令) 连续安排三条 NoP 于 旨 令。因为8 0 5 1 指令字节最长为三字节。当程序失控 时, 只要不跳转 , 指令连续执行, 就会运行NOP  ̄' 令, 就能使程序恢复正常。 3 . 2设置“ 看门狗” 。设置软件陷阱能解决一部分程序失控 问题, 但当程
科 学 论 坛
献 嗨与 蛄
单片机软件 系统的抗干扰设计
马卫滨 - 李艳华z
( 1 . 鹤煤技师学院; 2 . 鹤煤新 闻中心 河南 鹤壁 4 5 8 0 0 0 ) 摘 要: 为了保证单片机产 品能够长期稳定、 可靠地工作 , 在产 品设计 时必须对抗干扰 能力给 予足够 的重视, 尤其在软件方面, 而且很容易造成数据 采集误 差增大 , 程序- ‘ ‘ 飞走 ” 失控或陷入死循环等严重的后果。所以提 高单片机软件系统的抗干扰 能力是很有必要 的。 关键 词: 单片机 干扰 软件 滤波
特别是单片机产品。由于产品本 身比较复杂 , 再加上工作环境比较恶劣 ( 如 温度和湿度高, 有振动和冲击, 空气中灰尘 多, 并含有腐蚀性气体 以及 电磁
场的干扰等) , 同时还要受到使用条件 ( 包括 电源质量 、 运行条件、 维护条件 等) 的影响, 因而可以毫不夸张地说 , 当代世界的干扰如同环境污染 一样 , 正 危机着现代工业的各个方面。抗干扰方面的课题不但有许多实际问题要解 决, 而且有不少理论问题要探讨。 软件的抗干扰设计 是单片机应用系统的一个重要组成部分。干扰对单
modbus抗干扰方法

modbus抗干扰方法
Modbus通信协议是广泛应用于工业自动化领域的一种串行通信协议。
由于工业环境中存在大量的电磁干扰源,为确保Modbus通信的稳定性和可靠性,需要采取一些抗干扰方法。
1. 环境隔离:在工业环境中,通过合理的布线和工业电磁屏蔽措施,如使用金属屏蔽导线和屏蔽接地,可以有效减少外界电磁场对Modbus通信的干扰。
2. 信号优化:合理的信号调节和滤波可以减小Modbus通信中的干扰。
例如,可以采用光电隔离器将Modbus信号转换为光信号进行传输,以减少电磁干扰的影响。
3. 电源稳定:提供稳定的电源供应对于Modbus通信的稳定性至关重要。
通过使用稳压稳流电源,并采取合适的电源滤波措施,可避免电源波动对Modbus通信带来的影响。
4. 线路保护:通过合理的线路保护措施,如使用终端电阻、磁隔离器和防雷措施,可以降低电磁波、雷击等外界干扰对Modbus通信的影响。
5. 软件优化:在Modbus通信的软件设计中,采用校验机制、重发机制和错误检测机制等,可以提高通信的稳定性和可靠性,减少干扰带来的错误。
总而言之,为保证Modbus通信的稳定性,我们需要综合考虑硬件和软件两个方面的抗干扰方法。
通过合理的环境隔离、信号优化、电源稳定、线路保护和软件优化等措施,可以有效减少外界干扰对Modbus通信的影响,确保通信的可靠性和稳定性。
软件测试中的抗干扰与鲁棒性验证

软件测试中的抗干扰与鲁棒性验证在软件开发和测试过程中,抗干扰和鲁棒性验证是非常重要的方面。
软件的性能和可靠性往往受到外部干扰的影响,因此,确保软件在干扰条件下的正常运行是至关重要的。
本文将重点探讨软件测试中的抗干扰与鲁棒性验证,并提出相应的解决方案。
一、干扰的类型在软件测试中,干扰的类型可以分为内部干扰和外部干扰两类。
1.内部干扰内部干扰指的是软件中的自身问题或错误所导致的干扰。
例如,软件中存在的缺陷、逻辑错误或者性能瓶颈都可能对软件的正常运行产生干扰。
2.外部干扰外部干扰指的是软件在实际运行环境中可能遇到的各种干扰因素。
例如,网络延迟、硬件故障、用户输入错误等都属于外部干扰。
二、抗干扰与鲁棒性验证的重要性抗干扰和鲁棒性验证在软件测试中具有重要的意义。
1.确保软件的稳定性抗干扰与鲁棒性验证能够帮助开发人员及时发现和修复软件中可能存在的问题,从而提高软件的稳定性。
通过在干扰条件下进行测试,可以验证软件在不同情况下的抗干扰能力。
2.提高软件的可靠性抗干扰与鲁棒性验证还可以提高软件的可靠性。
通过模拟实际运行环境中可能出现的干扰因素,可以评估软件在面对不同干扰时的表现,并及时修复软件中的问题,从而提高软件的可靠性。
三、抗干扰与鲁棒性验证的解决方案为了确保软件在干扰条件下的正常运行,我们可以采取以下几个方面的解决方案:1.测试用例设计在测试用例设计中,应该充分考虑各种可能出现的干扰因素。
例如,针对网络延迟,可以设计相应的网络连接测试用例;针对用户输入错误,可以设计相应的输入验证测试用例。
通过全面的测试用例设计,可以评估软件在不同情况下的表现。
2.异常处理机制在开发软件时,应该充分考虑异常情况的处理机制,并及时捕获和处理异常。
在测试过程中,可以通过模拟各种异常情况来验证软件的鲁棒性,并及时修复存在的问题。
3.性能测试性能测试是鲁棒性验证的重要手段之一。
通过对软件在大负载、高并发等情况下的性能测试,可以评估软件在干扰条件下的鲁棒性,并发现和修复潜在的性能问题。
解决信号干扰的方法

解决信号干扰的方法(原创实用版4篇)《解决信号干扰的方法》篇1信号干扰是指信号在传输过程中受到其他信号的影响,导致信号的质量下降或丢失。
以下是几种常见的解决信号干扰的方法:1. 屏蔽:通过使用屏蔽材料或屏蔽器件,如金属箔或信号隔离器,来防止信号被干扰。
2. 滤波:使用滤波器来滤除信号中的干扰信号。
滤波器可以是硬件滤波器或软件滤波器,如低通滤波器或高通滤波器。
3. 调制:通过改变信号的调制方式,如频率调制或相位调制,来降低信号干扰的影响。
4. 解调:通过解调信号,可以将干扰信号从原始信号中分离出来,从而减少信号干扰的影响。
5. 抗干扰技术:使用抗干扰技术,如自适应滤波器或自适应信道均衡器,来抵消信号干扰的影响。
6. 信号放大:通过放大信号,可以增加信号的强度,从而降低信号干扰的影响。
7. 信号隔离:通过使用信号隔离器,可以将信号与干扰信号隔离开来,从而减少信号干扰的影响。
《解决信号干扰的方法》篇2信号干扰是指信号在传输过程中受到其他信号的影响,导致信号的质量下降或丢失。
以下是几种解决信号干扰的方法:1. 信号隔离器:信号隔离器是一种电子元件,用于隔离电路中的信号,防止信号互相干扰。
信号隔离器可以将输入信号与输出信号隔离,从而减小信号干扰的影响。
2. 滤波器:滤波器是一种用于信号处理的电路元件,用于滤除信号中的干扰信号。
滤波器可以通过选择合适的滤波器类型和参数,来滤除特定频率范围内的干扰信号,从而提高信号的质量。
3. 屏蔽:屏蔽是指在信号传输的路径上添加屏蔽层或屏蔽网,以防止信号受到外部干扰。
屏蔽可以采用金属箔或金属网,覆盖在信号传输线的表面或包裹在信号传输设备的外部。
4. 接地:接地是指将电路中的金属部件连接到地面,以减小电路中的干扰信号。
接地可以有效地消除电磁干扰和静电干扰,从而提高信号的质量。
5. 调整信号传输路线:调整信号传输路线可以避免信号受到干扰信号的影响。
例如,可以将信号传输线远离干扰源或调整信号传输线的走向,以减小信号干扰的影响。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件抗干扰的几种办法
在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。
下面以MCS-51单片机系统为例,对微机系统软件抗干扰方法进行研究。
1、软件抗干扰方法的研究
在工程实践中,软件抗干扰研究的内容主要是:一、消除模拟输入信号的噪声(如数字滤波技术);二、程序运行混乱时使程序重入正轨的方法。
本文针对后者提出了几种有效的软件抗干扰方法。
(1) 指令冗余
CPU取指令过程是先取操作码,再取操作数。
当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,误将操作数当作操作码,程序将出错。
若“飞”到了三字节指令,出错机率更大。
在关键地方人为插入一些单字节指令,或将有效单字节指令重写称为指令冗余。
通常是在双字节指令和三字节指令后插入两个字节以上的NOP。
这样即使乱飞程序飞到操作数上,由于空操作指令NOP的存在,避免了后面的指令被当作操作数执行,程序自动纳入正轨。
此外,对系统流向起重要作用的指令如RET、RETI、LCALL、LJMP、JC等指令之前插入两条NOP,也可将乱飞程序纳入正轨,确保这些重要指令的执行。
(2) 拦截技术
所谓拦截,是指将乱飞的程序引向指定位置,再进行出错处理。
通常用软件陷阱来拦截乱飞的程序。
因此先要合理设计陷阱,其次要将陷阱安排在适当的位置。
软件陷阱的设计
当乱飞程序进入非程序区,冗余指令便无法起作用。
通过软件陷阱,拦截乱飞程序,将其引向指定位置,再进行出错处理。
软件陷阱是指用来将捕获的乱飞程序引向复位入口地址0000H的指令。
通常在EPROM中非程序区填入以下指令作为软件陷阱:
NOPNOPLJMP 0000H其机器码为0000020000。
陷阱的安排
通常在程序中未使用的EPROM空间填0000020000。
最后一条应填入020000,当乱飞程序落到此区,即可自动入轨。
在用户程序区各模块之间的空余单元也可填入陷阱指令。
当使用的中断因干扰而开放时,在对应的中断服务程序中设置软件陷阱,能及时捕获错误的中断。
如某应用系统虽未用到外部中断 1,外部中断1的中断服务程序可为如下形式:
NOPNOPRETI返回指令可用“RETI”,也可用“LJMP0000H”。
如果故障诊断程序与系统自恢复程序的设计可靠、完善,用“LJMP0000H”作返回指令可直接进入故障诊断程序,尽早地处理故障并恢复程序的运行。
考虑到程序存贮器的容量,软件陷阱一般1K空间有2-3个就可以进行有效拦截。
(3)软件“看门狗”技术
若失控的程序进入“死循环”,通常采用“看门狗”技术使程序脱离“死循环”。
通过不断检测程序循环运行时间,若发现程序循环时间超过最大循环运行时间,则认为系统陷入“死循环”,需进行出错处理。
“看门狗”技术可由硬件实现,也可由软件实现。
在工业应用中,严重的干扰有时会破坏中断方式控制字,关闭中断。
则系统无法定时“喂狗”,硬件看门狗电路失效。
而软件看门狗可有效地解决这类问题。
笔者在实际应用中,采用环形中断监视系统。
用定时器T0监视定时器T1,用定时器T1监视主程序,主程序监视定时器T0。
采用这种环形结构的软件“看门狗”具有良好的抗干扰性能,大大提高了系统可靠性。
对于需经常使用T1定时器进行串口通讯的测控系统,则定时器T1不能进行中断,可改由串口中断进行监控(如果用的是MCS-52系列单片机,也可用T2代替T1进行监视)。
这种软件“看门狗”监视原理是:在主程序、T0中断服务程序、T1中断服务程序中各设一运行观测变量,假设为MWatch、T0Watch、T1Watch,主程序每循环一次,MWatch加1,同样T0、T1中断服务程序执行一次,T0Watch、
T1Watch加1。
在T0中断服务程序中通过检测T1Watch的变化情况判定T1运行是否正常,在T1中断服务程序中检测 MWatch的变化情况判定主程序是否正常运行,在主程序中通过检测T0Watch的变化情况判别T0是否正常工作。
若检测到某观测变量变化不正常,比如应当加1而未加1,则转到出错处理程序作排除故障处理。
当然,对主程序最大循环周期、定时器T0和T1定时周期应予以全盘合理考虑。
限于篇幅不赘述。
2、系统故障处理、自恢复程序的设计
单片机系统因干扰复位或掉电后复位均属非正常复位,应进行故障诊断并能自动恢复非正常复位前的状态。
(1)非正常复位的识别
程序的执行总是从0000H开始,导致程序从0000H开始执行有四种可能:一、系统开机上电复位;二、软件故障复位;三、看门狗超时未喂狗硬件复位;四、任务正在执行中掉电后来电复位。
四种情况中除第一种情况外均属非正常复位,需加以识别。
硬件复位与软件复位的识别
此处硬件复位指开机复位与看门狗复位,硬件复位对寄存器有影响,如复位后PC=0000H,SP=07H,PSW=00H等。
而软件复位则对SP、 SPW无影响。
故对于微机测控系统,当程序正常运行时,将SP设置地址大于07H,或者将PSW 的第5位用户标志位在系统正常运行时设为1,那么系统复位时只需检测PSW.5标志位或SP值便可判此是否硬件复位。
由于硬件复位时片内RAM状态是随机的,而软件复位片内RAM则可保持复位前状态,因此可选取片内某一个或两个单元作为上电标志。
设40H用来做上电标志,上电标志字为78H,若系统复位后40H单元内容不等于78H,则认为是硬件复位,否则认为是软件复位,转向出错处理。
若用两个单元作上电标志,则这种判别方法的可靠性更高。
开机复位与看门狗故障复位的识别
开机复位与看门狗故障复位因同属硬件复位,所以要想予以正确识别,一般要借助非易失性RAM或者EEROM。
当系统正常运行时,设置一可掉电保护的观测单元。
当系统正常运行时,在定时喂狗的中断服务程序中使该观测单元保持正常值(设为AAH),而在主程中将该单元清零,因观测单元掉电可保护,则开机时通过检测该单元是否为正常值可判断是否看门狗复位。
正常开机复位与非正常开机复位的识别
识别测控系统中因意外情况如系统掉电等情况引起的开机复位与正常开机复位,对于过程控制系统尤为重要。
如某以时间为控制标准的测控系统,完成一次测控任务需1小时。
在已执行测控50分钟的情况下,系统电压异常引起复位,此时若系统复位后又从头开始进行测控则会造成不必要的时间消耗。
因此可通过一监测单元对当前系统的运行状态、系统时间予以监控,将控制过程分解为若干步或若干时间段,每执行完一步或每运行一个时间段则对监测单元置为关机允许值,不同的任务或任务的不同阶段有不同的值,若系统正在进行测控任务或正在执某时间段,则将监测单元置为非正常关机值。
那么系统复位后可据此单元判系统原来的运行状态,并跳到出错处理程序中恢复系统原运行状态。
(2)非正常复位后系统自恢复运行的程序设计
对顺序要求严格的一些过程控制系统,系统非正常复位否,一般都要求从失控的那一个模块或任务恢复运行。
所以测控系统要作好重要数据单元、参数的备份,如系统运行状态、系统的进程值、当前输入、输出的值,当前时钟值、观测单元值等,这些数据既要定时备份,同时若有修改也应立即予以备份。
当在已判别出系统非正常复位的情况下,先要恢复一些必要的系统数据,如显示模块的初始化、片外扩展芯片的初始化等。
其次再对测控系统的系统状态、运行参数等予以恢复,包括显示界面等的恢复。
之后再把复位前的任务、参数、运行时间等恢复,再进入系统运行状态。
应当说明的是,真实地恢复系统的运行状态需要极为细致地对系统的重要数据予以备份,并加以数据可靠性检查,以保证恢复的数据的可靠性。
其次,对多任务、多进程测控系统,数据的恢复需考虑恢复的次序问题。
系统基本初始化是指对芯片、显示、输入输出方式等进行初始化,要注意输入输出的初始化不应造成误动作。
而复位前任务的初始化是指任务的执行状态、运行时间等。
对于软件抗干扰的还有一些其它常用方法,如数字滤波、RAM数据保护与纠错等。
在工程实践中通常都是几种抗干扰方法并用,互相补充完善,才能取得较好的抗干扰效果。
从根本上来说,硬件抗干扰是主动的,而软件抗干扰是被动的。
细致周到地分析干扰源,硬件与软件抗干扰相结合,完善系统监控程序,设计一稳定可靠的单片机系统是完全可行的。