分享好友 方案首页 频道列表

工控软件的抗干扰设计

2012-04-15深圳永菱科技有限公司

软件抗干扰问题的研究愈来愈引起人们的重视。

一、工控软件的结构特点及干扰途径

  在不同的工业控制系统中,工控软件虽然完成的功能不同,但就其结构来说,一般 具有如下特点:

* 实时性:工业控制系统中有些事件的发生具有随机性,要求工控软件能够及时地 处理随机事件。

* 周期性:工控软件在完成系统的初始化工作后,随之进入主程序循环。在执行主 程序过程中,如有中断申请,则在执行完相应的中断服务程序后,继续主程序循 环。

* 相关性:工控软件由多个任务模块组成,各模块配合工作,相互关联,相互依 存。

* 人为性:工控软件允许操作人员干预系统的运行,调整系统的工作参数。 在理想情况下,工控软件可以正常执行。但在工业现场环境的干扰下,工控软件的 周期性、相关性及实时性受到破坏,程序无法正常执行,导致工业控制系统的失 控,其表现是:

* 程序计数器PC值发生变化,破坏了程序的正常运行。PC值被干扰后的数据是随机 的,因此引起程序执行混乱,在PC值的错误引导下,程序执行一系列毫无意义的指 令,最后常常进入一个毫无意义的“死循环”中,使系统失去控制。

* 输入/输出接口状态受到干扰,破坏了工控软件的相关性和周期性,造成系统资源 被某个任务模块独占,使系统发生“死锁”。

* 数据采集误差加大。干扰侵入系统的前向通道,叠加在信号上,导致数据采集误 差加大。特别是当前向通道的传感器接口是小电压信号输入时,此现象更加严重。

* RAM数据区受到干扰发生变化。根据干扰窜入渠道、受干扰数据性质的不同,系统 受损坏的状况不同,有的造成数值误差,有的使控制失灵,有的改变程序状态,有 的改变某些部件(如定时器/计数器、串行口等)的工作状态等。笔者在研制电力远 程抄表系统时就曾遇到因现场强电磁干扰而造成RAM数据经常性被破坏的情况。

* 控制状态失灵。在工业控制系统中,控制状态的输出常常是依据某些条件状态的 输入和条件状态的逻辑处理结果而定。在这些环节中,由于干扰的侵入,会造成条 件状态错误,致使输出控制误差加大,甚至控制失常。

  二、程序运行失常的软件对策

系统受到干扰侵害致使PC值改变,造成程序运行失常。对于程序运行失常的软件对 策主要是发现失常状态后及时引导系统恢复原始状态。

1.设置监视跟踪定时器 使用定时中断来监视程序运行状态。定时器的定时时间稍大于主程序正常运行一个 循环的时间,在主程序运行过程中执行一次定时器时间常数刷新操作。这样,只要 程序正常运行,定时器不会出现定时中断。而当程序运行失常,不能及时刷新定时 器时间常数而导致定时中断,利用定时中断服务程序将系统复位。在8031应用系统 中作为软件抗干扰的一个事例,具体做法是:

* 使用8155的定时器所产生的“溢出”信号作为8031的外部中断源INT1。用555定时 器作为8155中定时器的外部时钟输入; * 8155定时器的定时值稍大于主程序的正常循环时间;

* 在主程序中,每循环一次,对8155定时器的定时常数进行刷新;

* 在主控程序开始处,对硬件复位还是定时中断产生的自动恢复进行分类判断处 理。

2.设置软件陷井 当PC失控,造成程序“乱飞”而不断进入非程序区,只要在非程序区设置拦截措 施,使程序进入陷井,然后强迫使程序进入初始状态。例如Z80指令系统中数据FFH 正好对应为重新起动指令RST 56,该指令使程序自动转入0038H入口地址。因此,在 Z80 CPU构成的应用系统中,只要将所有非程序区全部置成FFH用以拦截失控程序。 并在0038H处设置转移指令,使程序转至抗干扰处理程序。

三、系统“死锁”的软件对策

在工业控制系统中,A/D、D/A,显示等输入/输出接口电路是必不可少的。这些接口 与CPU之间采用查询或中断方式工作,而这些设备或接口对干扰很敏感,干扰信号一 旦破坏了某一接口的状态字后,就会导致CPU误认为该接口有输入/输出请求而停止 现行工作,转去执行相应的输入/输出服务程序。但由于该接口本身并没有输入/输 出数据,从而使CPU资源被该服务程序长期占用,而不释放,其它任务程序无法执 行,使整个系统出现“死锁”。对这种干扰造成的“死锁”问题,在软件编程中, 可采用“时间片”的方法来解决。其具体步骤为:

* 根据不同的输入/输出外设对时间的要求,分配相应的最大正常的输入/输出时 间。

* 在每一输入/输出的任务模块中,加入相应的超时判断程序。这样当干扰破坏了接 口的状态造成CPU误操作后,由于该外设准备好信息长期无效,经一定时间后,系统 会从该外设的服务程序中自动返回,保证整个软件的周期性不受影响,从而避免 “死锁”情况的发生。

  四、数据采集误差的软件对策

根据数据受干扰性质及干扰后果的不同,采取的软件对策各不相同,没有固定的模 式。对于实时数据采集系统,为了消除传感器通道中的干扰信号,在硬件措施上常 采取有源或无源RLC网络,构成模拟滤波器对信号实现频率滤波。同样,运用CPU的 运算、控制功能也可以实现频率滤波,完成模拟滤波器类似的功能,这就是数字滤 波。在许多数字信号处理专著中都有专门论述,可以参考。随着计算机运算速度的 提高,数字滤波在实时数据采集系统中的应用将愈来愈广。 在一般数据采集系统中,可以采用一些简单的数值、逻辑运算处理来达到滤波的效 果。下面介绍几种常用的方法。

1.算术平均值法 对于一点数据连续采样多次,计算其算术平均值,以其平均值作为该点采样结果。 这种方法可以减少系统的随机干扰对采集结果的影响。一般3~5次平均即可。

2.比较取舍法 当控制系统测量结果的个别数据存在偏差时,为了剔除个别错误数据,可采用比较 取舍法,即对每个采样点连续采样几次,根据所采数据的变化规律,确定取舍,从 而剔除偏差数据。例如,“采三取二”即对每个采样点连续采样三次,取两次相同的 数据为采样结果。

3.中值法 根据干扰造成采样数据偏大或偏小的情况,对一个采样点连续采集多个信号,并对 这些采样值进行比较,取中值作为该点的采样结果。

4.一阶递推数字滤波法 这种方法是利用软件完成RC低通滤波器的算法,实现用软件方法代替硬件RC滤波 器。一阶递推数字滤波公式为Yn=QXn+(1-Q)Yn-1 式中Q -数字滤波器时间常数; Xn-第n次采样时的滤波器输入; Yn-第n次采样时的滤波器输出。 采用软件滤波器对消除数据采集中的误差可以获得满意的效果。但应注意,选取何 种方法应根据信号的变化规律选择。

五、RAM数据出错的软件对策

在实时控制过程中,干扰造成比较严重的危害之一就是冲毁RAM中的数据,由于RAM 中保存的是各种原始数据、标志、变量等,如果被破坏,会造成系统出错或无法运 行,根据数据被冲毁的程度,一般可分为三类: * 整个RAM数据被冲毁; * RAM中某片数据被冲毁; * 个别数据被冲毁。 在工业控制系统中,RAM的大部分内容是为了进行分析、比较而临时存放的,不允许 丢失的数据只占极少部分。在这种情况下,除了这些不允许丢失的数据外,其余大 部分内容允许短时间被破坏,最多只引起系统的一个很短时间的波动,很快能自动 恢复正常。因此,在工控软件中,只要注意对少数不允许丢失的数据保护,一般常 用的方法有“校验法” 和“设标法”。这两种方法各有千秋,校验法比较繁锁,但 查错的可信度高。设标法简单,但对数据表中个别数据冲毁的情况,查错则无难为 力。在编程中一般应综合使用,其具体做法为: * 将RAM工作区重要区域的始端和尾端各设置一个标志码“0” 或“1”; * 对RAM中固定不变的数据表格设置校验字。 在程序的执行过程中,每隔一定的时间通过事先设计的查错程序来检查其各标志码 是否正常,如果不正常,则利用数据冗余技术通过抗干扰处理程序来进行修正;冗 余数据表的一般设计原则是: * 各数据表应相互远离分散设置,减少冗余数据同时被冲毁的概率。 * 数据表应尽可能远离栈区,减少由于操作错误造堆栈被成数据冲的可能 。 上述对RAM区域的恢复处理方法,在不同的应用系统中应根据的具体情况进行取舍。

六、控制状态失常的软件对策

在条件控制系统中,人们关注的问题是能否确保正常的控制状态。如果干扰进入系 统,会影响各种控制条件、造成控制输出失误。为了确保系统安全可以采取下述软 件抗干扰措施: 1.软件冗余 对于条件控制系统,将控制条件的一次采样、处理控制输出,改为循环采样、处理 控制输出。这种方法具有良好的抗偶然因素干扰作用。 2.设置当前输出状态寄存单元 当干扰侵入输出通道造成输出状态破坏时,系统可以及时查询当前输出状态寄存单 元的输出状态信息,及时纠正错误的输出状态。 3.设置自检程序 在计算机系统内的特定部位或某些内存单元设状态标志,在运行中不断循环测试, 以保证系统中信息存储、传输、运算的高可*性。 上述介绍的几种有关工控软件的抗干扰编程方法是笔者在工作实践中的体会。在设 计工控软件的过程中只要采取相应的抗干扰措施,就可获得较好的抗干扰效果

收藏
神州普惠试验检验管理解决方案
试验检验管理系统TCM紧紧围绕产品生产试验检验的全过程进行系统规范的监控和管理,有力的监管了整个试验检验过程、协调组织了试验检验工作的开展、规范了试验检验过程的管理,同时还以方便高效的手段,整理和收集了全部试验检验过程的信息数据。

0评论2014-03-24

宏电工业级TD无线路由器应用于交警局电子警察项目
“电子警察”是高科技的交通管理手段,也是道路交通技术监控系统的重要环节,是智能交通系统建设的重要组成部分。它以其无人值守、自动记录、容量大、无需当场处罚、便于管理等优点成为交通管理工作中必不可少的装备。

0评论2013-02-27

领邦公布新型全自动检测方案:弹丸尺寸的快速检测
近日,北京领邦仪器技术有限公司(后文简称“领邦”)公布了一套新型的全自动检测方案——弹丸尺寸检测系统。该系统是一套在线全自动终检设备,采用激光扫描的方式,在计算机中还原炮弹外形,能够实现炮弹外形尺寸和形位公差的快速检测,满足大批量产品的在线自动化检测,避免人为检测造成的误差,同时保证数据的可靠性以及提高数据管理方便性。

0评论2012-08-31

仪器总线技术的回顾与展望
在测试测量领域,仪器总线技术的发展历来是工程师和科学家们最为关心的部分。从上世纪60年代推出的专用于仪器控制的GPIB总线,到现在被广泛使用的 USB、VXI、PXI和最新推出的LXI、PXI Express,不断涌现的新型总线技术在帮助我们的工程师更快捷高效的完成测量任务的同时,也引起了行业内专家们的广泛争论,究竟哪一种总线将会主宰未 来的测试测量领域呢?

0评论2012-05-28

加固电源典型应用方案
美国北大西洋(NAII)公司为军工和航空领域的嵌入式市场所提供的加固电源,类型齐全,无论是标准型产品还是定制型产品,都应有尽有。在国内外航空、航海、舰船等应用中占有及其重要的地位。

0评论2012-05-03

倾角传感器在无人机上的应用
无人驾驶飞机简称无人机,是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机。机上无驾驶舱,但安装有自动驾驶仪、程

0评论2012-04-13

倾角传感器在移动通讯车平衡系统上的应用
移动通信基站车是移动通信领域中用于应急通信信道建立的系统集成车辆。主要的功能一般包括GSM、CDMA、3G基站信道的建立、无线计

0评论2012-04-13

倾角传感器在水平平台测量上的应用
在仪器仪表、精密工具、机械制件的检验等行业经常会使用到水平平台,而大理石平台可以作为一个理想的选择,因为大理石的平台是一

0评论2012-04-13

SST倾角传感器在阳光追踪系统上的应用
随着能源的匮乏,人类越来越注重利用新型能源来代替现有的煤、石油原料,利用太阳能获得能源就是一个非常好的办法。阳光追踪器

0评论2012-04-13