您当前的位置:五五电子网电子知识电工技术电工文摘工控计算机软件抗干扰技术 正文
工控计算机软件抗干扰技术

工控计算机软件抗干扰技术

点击数:7120 次   录入时间:03-04 11:42:55   整理:http://www.55dianzi.com   电工文摘
4 其它常采用的软件抗干扰方法
4.1 陷井法 有时意想不到的干扰,破坏了中断和所有程序的正常运行。此时PC值可能在程序区内,也可能在程序区之外,要使其能够自恢复正常运行,只有依赖于广布“陷井”的绝招了。 这里所谓的“陷井”,是指某些类型的CPU提供给用户使用的软中断指令或者复位指令。例如,Z80指令RST 38H,其机器码为FFH。CPU执行该指令时,则将当前程序计数器PC的值压入堆栈,然后转到0038H地址执行程序。如果把0038H作为一个重启动入口,则机器就可以恢复新的工作了。再例如,INTEL8098、80198系列的复位指令RST,机器码也为FFH。CPU执行该指令时,其内部进行复位操作,然后从2080H开始执行程序。当然,80198系列还有更多的非法操作码可作为陷井指令使用,这时只需要在2012H的一个字的中断矢量单元里安排中断入口,并且编制一个处理非法操作码的中断服务程序,一遇非法操作码就能进行故障处理。作者多年的经验表明,陷井不但需要在ROM的全部非内容区、RAM的全部非数据区设置,而且在程序区内的模块之间广泛布置。一旦机器程序跑飞,总会碰上陷井,立即就可以救活机器了。
4.2 重复功能设定法
工控机的很多功能的设定,通常都是在主程序开始时的初始化程序里设定的,以后再也不去设定了。这在正常情况下本无问题。但偶然的干扰会改变CPU内部的这些寄存器或者接口芯片的功能寄存器,例如,把中断的类型、中断的优先级别、串行口、并行口的设定修改了,机器的运行肯定会出错,因此,只要重复设定功能操作不影响其当前连续工作的性能,都应当纳入主程序的循环圈里。每个循环就可以刷新一次设定,避免了偶然不测发生。对于那些重复设定功能操作会影响当前连续工作性能的,要尽量想法找机会重新设定。例如串行口,如果接收完某帧信息或者发送完某帧信息之后,串口会有一个短暂的空闲时,就应作出判断并且安排重新设定一次的操作。
4.3 重要数据备份法 工控机中的一些关键数据,应当有至少有两个以上的备份副本,当操作这些数据时,可以把主、副本进行比较,如其改变,就要分析原因,采取预先设计好的方法处理。还可以把重要数据采用校验和或者分组BCH校验的方法进行校验。这两种方法一并使用则更可靠。
4.4 系统“死锁”的软件对策 在工业控制系统中,A/D、D/A,显示等输入/输出接口电路是必不可少的。这些接口 与CPU之间采用查询或中断方式工作,而这些设备或接口对干扰很敏感,干扰信号一 旦破坏了某一接口的状态字后,就会导致CPU误认为该接口有输入/输出请求而停止 现行工作,转去执行相应的输入/输出服务程序。但由于该接口本身并没有输入/输 出数据,从而使CPU资源被该服务程序长期占用,而不释放,其它任务程序无法执 行,使整个系统出现“死锁”。对这种干扰造成的“死锁”问题,在软件编程中, 可采用“时间片”的方法来解决。其具体步骤为:
* 根据不同的输入/输出外设对时间的要求,分配相应的最大正常的输入/输出时 间。
* 在每一输入/输出的任务模块中,加入相应的超时判断程序。这样当干扰破坏了接 口的状态造成CPU误操作后,由于该外设准备好信息长期无效,经一定时间后,系统 会从该外设的服务程序中自动返回,保证整个软件的周期性不受影响,从而避免 “死锁”情况的发生。
4.5 数据采集误差的软件对策根据数据受干扰性质及干扰后果的不同,采取的软件对策各不相同,没有固定的模式。对于实时数据采集系统,为了消除传感器通道中的干扰信号,在硬件措施上常采取有源或无源RLC网络,构成模拟滤波器对信号实现频率滤波。同样,运用CPU的运算、控制功能也可以实现频率滤波,完成模拟滤波器类似的功能,这就是数字滤波。在许多数字信号处理专著中都有专门论述,可以参考。随着计算机运算速度的提高,数字滤波在实时数据采集系统中的应用将愈来愈广。在一般数据采集系统中,可以采用一些简单的数值、逻辑运算处理来达到滤波的效果。用的方法有算术平均值法、比较取舍法、中值法、一阶递推数字滤波法等。具体见本版的有关文章。
5 结束语
软件抗干扰的内容还有很多,例如,检测量的数字滤波、坏值剔除;人工控制指令的合法性和输入设定值的合法性判别等等,这些都是一个完善的工业控制系统必不可少的,有关的文章可以参阅本版的其他文章。 工业控制是计算机的最重要的应用领域,也是计算机的最艰难的应用环境。我从多年来的研究经验认为:工业控制计算机的抗干扰性能根本在硬件结构,软件抗干扰只是一个补充。硬件的设计应当尽可能的完善,不能轻易降低标准,让软件去补救!而软件的编制则要处处考虑到硬件可能的失效,可能受到的干扰等种种问题,在保证实时性、控制精度和控制功能的前提下,尽力提高系统的抗干扰性能。要考虑得很细致,努力赋予软件高度的智能。这样,软件才是完美的。把硬件和软件有机的结合起来,一个经得起长期现场考验的尽可能完善的工业控制系统才能实现。

上一页  [1] [2] 


本文关键字:技术  计算机软件  电工文摘电工技术 - 电工文摘