自动化论坛
标题:
工控机在工业控制方面的自我监视法
[打印本页]
作者:
nclanke
时间:
2013-6-14 17:51
标题:
工控机在工业控制方面的自我监视法
在不同的工业控制系统中,工控软件虽然完成的功能不同,但就其结构来说,一般 具有如下特点:
实时性:工业控制系统中有些事件的发生具有随机性,要求工控软件能够及时地 处理随机事件。
周期性:工控软件在完成系统的初始化工作后,随之进入主程序循环。在执行主程序过程中,如有中断申请,则在执行完相应的中断服务程序后,继续主程序循环。
相关性:工控软件由多个任务模块组成,各模块配合工作,相互关联,相互依 存。
人为性:工控软件允许操作人员干预系统的运行,调整系统的工作参数。在理想情况下,工控软件可以正常执行。但在工业现场环境的干扰下,工控软件的周期性、相关性及实时性受到破坏,程序无法正常执行,导致工业控制系统的失控,其表现是:
程序计数器PC值发生变化,破坏了程序的正常运行。PC值被干扰后的数据是随机的,因此引起程序执行混乱,在PC值的错误引导下,程序执行一系列毫无意义的指令,最后常常进入一个毫无意义的“死循环”中,使系统失去控制。
入/输出接口状态受到干扰,破坏了工控软件的相关性和周期性,造成系统资源被某个任务模块独占,使系统发生“死锁”。
数据采集误差加大。干扰侵入系统的前向通道,叠加在信号上,导致数据采集误差加大。特别是当前向通道的传感器接口是小电压信号输入时,此现象更加严重。
RAM
数据区受到干扰发生变化。根据干扰窜入渠道、受干扰数据性质的不同,系统受损坏的状况不同,有的造成数值误差,有的使控制失灵,有的改变程序状态,有的改变某些部件(如定时器/计数器、串行口等)的工作状态等。
控制状态失灵。在工业控制系统中,控制状态的输出常常是依据某些条件状态的输入和条件状态的逻辑处理结果而定。在这些环节中,由于干扰的侵入,会造成条件状态错误,致使输出控制误差加大,甚至控制失常。
2
工控计算机实时控制软件运行过程中的自监视法
自监视法是
工业控制
计算机自己对自己的运行状态的监视。
一般的工控机
CPU
内部具有
Watchdog Timer
,使用定时中断来监视程序运行状态。定时器的定时时间稍大于主程序正常运行一个循环的时间,在主程序运行过程中执行一次定时器时间常数刷新操作。这样,只要程序正常运行,定时器不会出现定时中断。而当程序运行失常,不能及时刷新定时器时间常数而导致定时中断,利用定时中断服务程序将系统复位。在
8031
应用系统
中作为软件抗干扰的一个事例,具体做法是:
使用
8155
的定时器所产生的
“
溢出
”
信号作为
8031
的外部中断源
INT1
。用
555
定时器作为
8155
中定时器的外部时钟输入;
8155
定时器的定时值稍大于主程序的正常循环时间;
在主程序中,每循环一次,对
8155
定时器的定时常数进行刷新;
在主控程序开始处,对硬件复位还是定时中断产生的自动恢复进行分类判断处
理。
然而,这并不等于万无一失。例如,
① Watchdog
电路本身失效;
②
设置
Watchdog
的指令正好在取指令时被干扰而读错;
③ Watchdog“
发现
”
程序跑飞之后,其产生的复位脉冲或者
NMI
申请信号正好被干扰而没奏效等等。虽然以上的导致
Watchdog
失效的因素的几率很小,但总是存在的。另一个方面,还有相当数量的工业控制计算机没有
Watchdog
电路。因此,以下重点讨论的软件自监视法就势在必行了。
本文发表于工控机价格http://www.nclanke.com/content/?424.html转载请申明
欢迎光临 自动化论坛 (https://bbs.ca168.com/)
Powered by Discuz! X2.5