zexuly200630
zexuly200630
程序流检查能确保基本功能能按正确的顺序执行,数据确认使所有的关键数据在存储器里进行冗余存储。并且在使用前进行有效性测试,在软件开发过程中,一个安全PLC需要附加的软件测试技术,为了核实数据完整性检查,必须执行一系列[软件失效注入"测试,也就是人为对程序进行故意破坏,来检查PLC的响应是否运行在预计的安全方式。软件的设计和测试带有详细的文件资料,这样第三方的检查员就能够明白PLC的运行原理,而多数软件开发没有使用这种规范的操作流程,这也正好说明为什么众多的垃圾软件会出现那么多的臭虫而无法发现了,举例下面试通过某公司的一款安全PLC。来更具体地说明安全PLC与常规PLC的区别,2.1安全PLC与常规PLC的CPU的差别常规PLC内部CPU的数量有一个或多个。
它或它们的作用是:执行用户的程序,进行I/O的扫描和系统的诊断,但用户的程序通常就进行一次处理。多个CPU的功能是把程序中的逻辑运算,算数运算,通信功能等分担实现,也就是协作处理,而安全PLC的CPU至少有两个或多个,两个CPU的功能是:分别对同一个用户程序各自执行一次,然后再把两个结果放在一起进行比较。如果比较的结果是一致的,就输出这个结果,如果是不一致的,选择安全的结果输出,由此看出,这才是安全PLC与常规PLC的不同:冗余+比较,2.2安全PLC内部CPU的结构安全PLC包含2个处理器,每个处理器在自己的存储器区中。执行它们自己的安全逻辑,然后在每个周期的结尾和对方的结果进行比较,每个处理器有它自己独立的停机通道。
如果检测到结果的不同或有失效成分,它能够实现系统停机,切到安全状态,这种双处理结构被称为内部的二选一结构。下图表示了这种安全PLC的内部结构:安全PLC通常都有两个处理器,同时进行解码和执行,这种差异性提供了失效检测的下列优点:◎两个可执行码独自生成,编译的差异性使得在代码生成时,容易检测系统失效,◎两个生成码由不同的处理器执行。因此,CPU能够在代码执行时,检测出系统失效和PLC的随机失效,◎两个独立的存储器区用于两个处理器,因此,CPU能够检测出RAM的随机失效,而这在每个扫描周期的全部RAM检查时测不出来,这里我们接着引出安全PLC与常规PLC第二个的不同:随时+步步进行诊断和检测。这种检测有的是通过自身信息进行的。

下表描述了对电源电压的监视:电源监视来自背板总线的电压,理论上的值为18.5V。有两个过压检测器,每个处理器系统有一个,每个监测器能够处理可能出现的过压,用断开电源开关和触发复位块的方法,复位块用于管理电源的接通和断开,并且停止两个处理器运行,如果背板电源电压还在升高,限制器块会对电子元件提供保护。在现场侧的电源信息,由直流-到-直流的转换器生成,有两个过压和欠压监测器,每个处理器系统有一个,如果两个的直流-到-直流转换器生成一个电源到现场侧电子元件的失效信号,监测器通过器发送失效信号至处理器,在运行时。当一个现场的输入电源电压达到60V,有2个过压和欠压监测器,每个处理器系统提供1个,以同样方式监视直流-到-直流转换器。
一旦失效,监测器会发出失效信号,对用户逻辑的状态位设置,警告系统可能出现了输入不一致。2.5安全PLC的安全模拟量输入模块接地断线检测:安全模拟量输入模块具有监视接地失效(漏电流)的功能,外接线一端通常要连接到中性地,在接地端子与中性地之间可以接入一个分流电阻(比如250欧姆),那么模拟量输入的漏电流就可以通过这个电阻上的电压。检测出来,内部诊断:现场侧包括了8个独立的输入通道,每个输入具有2个相同的电路构成,每个电路的微处理器通过驱动它的模拟量-数字量转换器,再经过器得到输入值,另外,当进行诊断时,微处理器还驱动它的数字量-模拟量转换器并且把它置成高阻抗(非干涉)或者低阻抗。强迫做为模拟量-数字量转换器的输入。
模拟量输入模块执行:◎短期间的自检,使用常规的,周期的差异值检测,判断内部是否失效,◎长期间的自检,使用每个通道的健康状态来核实内部是否失效,现场电源:没有电源。这个功能由模拟量-数字量转换器检测期间,对模拟量-数字量转换器和数字量-模拟量转换器提供的根据它们电源电压的值来实现,2.6安全PLC的安全数字量输入模块内部诊断:每个输入通道使用一个公共输入电路和2个独立获取链路。每个微处理器驱动一个数字输入串行器(DIS)来实现对输入信息的采样,另外,微处理器还驱动一个数字输入还原器(DID),再驱动诊断功能块进行诊断,实现还原数据与输入数据的同步比较,输入通道错误检测:数字量输入监视现场侧电源。