机电设备控制系统中需要检测和控制的设备很多,它们在工作过程中都可能产生故障或误动作,造成事故和损失,必须及时、准确地发现系统中存在的故障,并采取相应的处理措施。某机电设备控制系统的核心是一台OMRONC1000H PLC,用于控制液压系统电磁阀等器件,推动执行机构动作。为了实现自动化控制,系统应用了大量开关量和模拟量的传感器,检测各执行机构的动作过程和状态。对于这样一个系统,故障的来源可能是系统的检测设备,也可能是控制器件,还可能来自控制系统内部的逻辑错误。
为了提高系统的可靠性,在硬件设计的基础上,通过故障自动检测和处理软件的设计,实现控制系统对故障的自检测和自处理,其工作流程如图7-19所示。它包括3个步骤:一是控制器的功能自检,通过运行系统功能自检程序,由操作人员进行配合和观察,对控制器的功能进行全面检查;二是对故障的动态检测,在程序的运行过程中,同时运行故障的自动检测程序,对可能发生的各类故障进行实时检测和动态跟踪;三是对故障的处理,软件对检测到的各类故障信息进行分类处理,尽可能避免和减少故障带来的影响。
1.系统功能自检
控制器是系统的控制核心。系统联机工作前,对控制器进行全面的功能自检可以及时发现和排除故障,消除事故隐患。为了能够方便、准确和全面地实现控制器的功能自检,设计了自检程序完成自检过程,包括:
(1)指示灯测试
进入控制器自检状态后,首先调用指示灯测试子程序。通过此项测试可以检查PLC软件的启动、运行是否正常,同时判断各指示灯及其输出通路是否存在故障。
(2)控制开关测试
指示灯测试通过后,自检程序转入控制开关测试子程序。此时,操作人员依次按下或接通控制面板上各按钮开关,测试子程序对各按钮开关及输入通路是否正常进行判断。
(3)反馈信号通路测试
完成控制面板功能测试后,通过I/O等效器,由自检程序进行反馈信号通路测试。
(4)控制信号通路测试
进入控制信号通路测试子程序后,PLC为各输出端口输出相应的信号,对控制信号输出通路进行测试。
(5)控制程序测试
在各I/O部件和通路测试完成后,自检程序调用实际的控制程序,在不进行实际输出的情况下,验证控制程序的正确性。
图7-19 故障自检测流程示意图
2.故障动态检测
系统工作过程中,敏感器件、控制器件及控制器本身随时都可能出现故障和错误。为了能及时检测到故障的存在,系统通过软件的设计实现系统运行过程中对故障的实时动态检测。
该设备的控制系统实质上是一个系统状态的顺序控制过程,基于PLC特殊的周期扫描运行机制,控制程序的设计通过3个功能模块的设计来完成:输入信号检测模块,完成对外部各开关量和模拟量反馈信号的检测及转换;系统状态转换模块,检测信号、历史状态和实际要求,确定系统的当前状态;输出信号转换模块,根据系统当前状态,确定各控制信号的状态。PLC在一个扫描周期内依次执行上述3个功能,在扫描周期的最后,实现对输出端口的刷新,完成系统控制功能。实现故障的动态检测功能就是在上述3个功能模块后加入故障检测模块,以判断整个控制过程是否正常。故障动态检测和处理过程如图7-20所示。
(1)输入信号相容性检查
控制器的外部开关量和模拟量输入信号,由于噪声、干扰、开关的误动作、模拟量信号误差等因素的影响,不可避免会形成输入信号的错误,引起程序判断的失误,造成事故。因此在PLC完成对输入信号的检测后,要对其正确性进行检查,主要是进行输入信号的相容性检查,包括开关信号之间的状态是否矛盾、模拟量值的变化范围是否正常、开关量信号与模拟量信号之间是否一致以及各信号的时序关系是否正确。
以两个状态相反的开关信号为例,在PLC的一个扫描周期内,两个信号不可能同时为“1”,也不可能同时为“0”。可以根据此类开关信号相互间的逻辑关系,通过梯形图的编制来判断敏感器件或电路是否存在故障。图7-21中,X00010和X00011为故障标志位,当两个输入信号同时为“0”或同时为“1”时,3000为“1”。此信号锁存,以便故障处理程序进行查询。
(www.xing528.com)
图7-20 故障动态检测和处理过程示意图
图7-21 对开关信号逻辑关系的检查
图7-22 实现状态多一检查的梯形图
(2)系统状态正确性检查
该系统是一个状态的顺序控制系统,输入信号用于控制系统状态的转换,状态转换的正确性是实现系统控制过程的关键。对系统状态正确性进行检查,主要是测试系统状态的序列是否正确、当前状态与外部输入信号的状态是否矛盾以及内部的时间标志是否正确,此外还可以检查系统是否存在“多一”故障。所谓“多一”,是指在同一时刻系统同时有两个状态执行标志位被开放,从而造成输出控制信号的逻辑混乱,产生不可预测的后果。通过软件完成对系统状态是否“多一”的检查。实现状态“多一”检查的梯形逻辑图如图7-22所示,其中070通道各位为系统状态标志位。当系统处于某一状态时,相应的标志位为“1”,其他位为“0”。通过检查各标志位中为“1”的个数,即可判断系统状态是否“多一”。当检测到“多一”故障时,程序控制系统急停,同时置“多一”标志位06601为“1”,供故障处理模块检测。
(3)输出信号正确性检查
控制程序的执行,最终是要产生控制信号。在程序执行的最后,在对PLC输出端口进行刷新之前,对产生的控制信号的正确性进行检查,是防止错误信号输出、避免故障发生的重要环节。
如同对输入信号的正确性检查一样,对输出信号的正确性检查,首先也是检查各信号之间的逻辑关系及时序关系是否正确。此外,还可根据输出信号的状态与控制过程之间的逻辑关系,判断设备的运行状况是否正常。如某一控制信号发出后,在一定时间内执行机构动作并到位。如果时间已到,但PLC并未接收到到位信号,则说明系统中存在故障。
3.故障的分级处理
故障信息是通过分级进行处理的。
(1)一级故障
可能产生严重后果的故障,如“多一”故障等,要求系统立即停机,并向操作人员进行声光报警。当故障检测软件检测到一级故障时,由故障处理模块直接控制PLC输出端口的状态。
(2)二级故障
可能对控制过程产生影响,软件无法进行自纠正的故障。控制程序将转入暂停,各输出端口置为初始状态,并向操作人员进行声光报警。操作人员处理后,再继续执行程序。
(3)三级故障
对控制过程不立即产生影响,由故障处理程序进行自纠正处理,并通过信号输出模块屏蔽错误信号,同时向操作人员进行声光报警。一段时间后,如故障仍然存在,则故障升级。
(4)四级故障
程序检测到的一般性错误或异常,只记忆并向操作人员作出相应的指示,控制程序继续执行。
故障处理程序根据故障自检测程序检测到的故障信息进行相应的处理,为了便于进行分级处理,对各故障信息按级别进行故障编码,完成故障检测模块与故障处理模块之间的信息交换。
在系统硬件设计的基础上,通过软件方法实现对控制系统故障的检测与处理是提高系统可靠性和容错能力,避免和减少故障影响的重要一环。这里所述的方法是根据PLC控制系统的特点,通过梯形图软件的设计实现故障的自检测和自处理功能。这是一种经济、灵活和易于实现的方法,在某大型机电设备控制系统设计中得到了成功的应用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。