×

工控软件的抗干扰设计

消耗积分:0 | 格式:rar | 大小:444 | 2009-04-28

世态薄凉

分享资料个

工控软件的抗干扰设计:计算机系统在工业现场使用时,大量的干扰源虽不能造成硬件系统的损坏,但常常使计算机系统不能正常运行,致使控制失灵,造成重大事故。计算机系统的抗干扰不可能完全依靠硬件解决,因此,软件抗干扰问题的研究愈来愈引起人们的重视。
一、工控软件的结构特点及干扰途径
在不同的工业控制系统中,工控软件虽然完成的功能不同,但就其结构来说,一般具有如下特点:
1、 实时性:
工业控制系统中有些事件的发生具有随机性,要求工控软件能够及时地处理随机事件。
2、 周期性:
工控软件在完成系统的初始化工作后,随之进入主程序循环。在执行主程序过程中,如有中断申请,则在执行完相应的中断服务程序后,继续主程序循环。
3、 相关性:
工控软件由多个任务模块组成,各模块配合工作,相互关联,相互依存。
4、 人为性:
工控软件允许操作人员干预系统的运行,调整系统的工作参数。在理想情况下,工控软件可以正常执行。但在工业现场环境的干扰下,工控软件的周期性、相关性及实时性受到破坏,程序无法正常执行,导致工业控制系统的失控,其表现是:
􀁺 程序计数器PC值发生变化,破坏了程序的正常运行。PC值被干扰后的数据是随机的,因此引起程序执行混乱,在PC值的错误引导下,程序执行一系列毫无意义的指令,最后常常进入一个毫无意义的“死循环”中,使系统失去控制。
􀁺 输入/输出接口状态受到干扰,破坏了工控软件的相关性和周期性,造成系统资源被某个任务模块独占,使系统发生“死锁”。
􀁺 数据采集误差加大。干扰侵入系统的前向通道,叠加在信号上,导致数据采集误差加大。特别是当前向通道的传感器接口是小电压信号输入时,此现象更加严重。* RAM数据区受到干扰发生变化。根据干扰窜入渠道、受干扰数据性质的不同,系统受损坏的状况不同,有的造成数值误差,有的使控制失灵,有的改变程序状态,有的改变某些部件(如定时器/计数器、串行口等)的工作状态等。笔者在研制电力远程抄表系统时就曾遇到因现场强电磁干扰而造成RAM数据经常性被破坏的情况。
􀁺 控制状态失灵。在工业控制系统中,控制状态的输出常常是依据某些条件状态的输入和条件状态的逻辑处理结果而定。在这些环节中,由于干扰的侵入,会造成条件状态错误,致使输出控制误差加大,甚至控制失常。
二、程序运行失常的软件对策
系统受到干扰侵害致使PC值改变,造成程序运行失常。对于程序运行失常的软件对策主要是发现失常状态后及时引导系统恢复原始状态。
1. 设置监视跟踪定时器
使用定时中断来监视程序运行状态。定时器的定时时间稍大于主程序正常运行一个循环的时间,在主程序运行过程中执行一次定时器时间常数刷新操作。这样,只要程序正常运行,定时器不会出现定时中断。而当程序运行失常,不能及时刷新定时器时间常数而导致定时中断,利用定时中断服务程序将系统复位。在8031应用系统中作为软件抗干扰的一个事例,具体做法是:
5、 使用8155的定时器所产生的“溢出”信号作为8031的外部中断源INT1。用555定时器作 为8155中定时器的外部时钟输入;
6、 8155定时器的定时值稍大于主程序的正常循环时间;
7、 在主程序中,每循环一次,对8155定时器的定时常数进行刷新;
8、 在主控程序开始处,对硬件复位还是定时中断产生的自动恢复进行分类判断处理。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !