安全控制期间工业控制器中的故障检测制造技术

技术编号:2856386 阅读:242 留言:0更新日期:2012-04-11 18:40
一种在现实世界对象在线安全控制期间检测工业控制器的CPU中故障的方法,包括如下步骤:    -将应用程序编译成汇编指令,其中预先用将用于安全控制的高级语言来定义应用程序,    其特征在于,所述方法包括如下步骤:    -将测试应用编译成汇编指令,其中所述汇编指令是所述CPU可用的汇编指令总数的子集,其中预先用将用于安全控制的所述高级语言来定义测试应用,并且所述测试应用至少覆盖了用在所述应用程序中的所有语言结构;    -将所述应用程序和所述测试应用下载到工业控制器的中央单元;    -在所述工业控制器中重复执行所述测试应用;    -通过测试模块将来自所述测试应用的结果与所述测试模块中的预定义结果进行重复比较;    -当来自所述测试应用的所述结果不等于在所述测试模块中存储的所述预定义结果、且所述测试应用的意外结果是由于执行所述测试应用的汇编指令时,检测所述CPU中的故障;    -终止所述应用程序的执行,其中所述应用程序被禁止执行所述汇编指令,否则会引起所述应用程序失效。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及在工业控制系统环境中执行安全控制指令的CPU的诊断。
技术介绍
工业控制系统应用于例如制造与加工业,诸如化工厂、油生产厂、冶炼厂、纸浆和造纸厂、钢厂和自动化工厂。工业控制系统还广泛用于电力工业。定义工业控制系统语言结构的标准是IEC 61131-3。这种工业控制系统可包含或可结合附加有安全特性的某些设备。这种设备的例子有安全控制器。需要附加安全特性而不是标准工业控制系统所提供的加工的例子有在近海处生产平台上的加工、核能工厂的某些加工区和化工厂的危险区。安全特性可与安全关闭、火和/或报警系统以及火和气检测结合使用。涉及附加了安全特性的工业控制系统的复杂计算机系统的使用,给不断增加的检测工业控制器故障的需求提出了挑战。GB2277814中描述了一种已提高了故障检测能力的工业控制系统中设备的例子,其是关于包括CPU的容错PLC(可编程逻辑控制器)。在正电源总线与负载之间连接一对第一I/O模块。在负电源总线与负载之间连接一对第二I/O模块。GB2277814还描述了电源到负载不会因为负载任何一侧的一个I/O模块失效而断开。该方法的缺点是它没有将CPU中的可能失效考虑进去。通常,计算让程序执行包括CPU指令的测试并将结果与预定义的正确结果相比较是已知的。这可在启动时执行一次,或在运行时间内循环执行。US 6081908描述了一种存储和验证测试码的方法。该方法关于具有至少在单一封装中装有CPU和ROM的单片微计算机的测试。检测CPU中故障的其他已知通用计算方法利用看门狗定时器。定时器计数器接收预定频率的时钟输入脉冲,并且每次施加时钟输入脉冲,定时器计数器便增加计数。在计数达到预设最大计数的情况下,定时器计数器产生输出脉冲。用检查计算机处理器是否正确运行的自测试模块来对CPU进行编程。CPU周期性地将从自测试模块得到的信号提供给复位输入以对计数器进行复位。如果CPU中发生故障,将不会发生复位,并且计数器将达到其指示故障的最大值。用这种方法的缺点是当CPU中发生故障时,复位信号可能被阻塞,且尽管CPU中有故障,但计数器可能永远达不到其最大值。EP 1063591描述了一种检测运行主程序的计算机处理器中故障条件的方法。该方法包括基于初始输入值来顺序执行多个功能的步骤。用这种故障检测方法的缺点是它没有描述如何检测CPU中的故障,换句话说,可能在执行包括安全相关指令的应用程序期间发生故障。在先有技术中,可通过离线执行应用程序来测试将用于安全控制的CPU,即在安全控制器用于现实世界对象的在线安全控制之前。用这种方法的缺点是一旦CPU用于在线安全控制,就在执行应用程序期间可能发生CPU故障,因此这种方法不会检测出在线安全控制期间的CPU故障。另一个缺点是这种离线测试不是自动进行的,因此只有当操作人员启动离线测试时才进行离线测试。先有技术中已知的更完全测试是离线运行包括CPU所有主指令的测试程序。用这种测试方法的缺点是它不适于在线测试,因为它太耗CPU。
技术实现思路
本专利技术的目的是提供一种检测将用于现实世界对象安全控制的工业控制器CPU中故障的方法。本专利技术允许在应用程序在线执行期间通过重复执行测试应用(test application)来检测CPU中的故障。所述测试应用包括CPU可用的汇编指令总数的子集。根据在权利要求1中描述的方法,本专利技术实现了这个和其它目的。在从属权利要求中描述了有利的实施例。基于本专利技术的方法包括如下步骤在应用程序中定义的高级语言结构又在测试应用中定义。用将用于安全控制的高级语言来定义应用程序,并随后编译成汇编指令。所述方法包括如下步骤将测试应用编译成汇编指令,其中所述汇编指令是CPU可用的指令总数的子集。应用程序以及测试应用被下载到工业控制器。在工业控制器中,重复执行测试应用。进一步地,将来自测试应用的结果与在测试模块中预定义的结果相比较。所述方法还包括如下步骤在现实世界对象在线安全控制期间检测CPU中的故障,其中通过执行所述测试应用来检测CPU中的故障。基于本专利技术的方法允许检测CPU中的故障,在执行包含在所述测试应用中的某汇编指令时该故障变得明显。CPU中故障的例子有CPU寄存器中的失效和存储器(诸如高速缓冲存储器)中的失效。本专利技术允许在安全关键应用程序执行汇编指令之前检测CPU故障。本专利技术的一个重要方面是在现实世界对象在线安全控制期间,在某汇编指令执行时进行CPU故障检测。基于本专利技术的方法的步骤不必按它们被提到的顺序执行。在本专利技术上下文中,术语“工业控制器”不应限制本专利技术的范围,并且备选术语的例子有PLC(可编程逻辑控制器)。本专利技术的又一目的是提供一种用在工业控制系统中的计算机程序产品,包含可加载到将用于现实世界对象安全控制的工业控制器中央单元中的软件码装置。所述计算机程序产品包括使工业控制器执行上述方法的相关步骤的装置。本专利技术的再一目的是提供一个工业控制系统,包括带有配备了将用于现实世界对象安全控制的CPU的中央单元的工业控制器、以及根据上述方法CPU受到故障检测的I/O系统。本专利技术直接的重要优点是它提供了安全关键应用的增强的安全整体水平。本专利技术的进一步优点是它公开了一种涉及现实世界对象安全控制的测试CPU指令并检测故障的有效方法,其中用诸如IEC61131-3的高级控制语言来定义安全应用。本专利技术的另一有利特征是它提供了CPU中故障的检测,其故障在执行某CPU指令时变得明显。附图说明结合所附示意图,将更加详细地描述本专利技术。图1示出了测试应用的简化图(用例如IEC 61131-3的高级语言),测试应用被编译成汇编CPU指令。图2示出了基于本专利技术的方法的概略图。图3是基于本专利技术的系统的示意性概略图。具体实施例方式图1示出了包括CPU 8、22的工业控制器6的中央单元6。将用于现实世界对象24安全控制的CPU 8、22通常是将用于一般工业用途的CPU。这种CPU包含在工业控制器的中央单元6中。这种CPU的例子有摩托罗拉公司的MPC86x CPU。这种CPU有约230条主指令的指令集。涉及现实世界对象安全控制的典型应用程序使用1/3的主指令。专利技术人已经发现CPU的有效在线故障检测要执行只包含预先来自用高级控制语言(例如IEC 61131)定义的测试应用的那些汇编指令的测试应用。图1示出了本专利技术的概略图。测试应用1包括用于现实世界对象24安全控制的所有相关高级语言结构。在优选实施例中,根据IEC61131-3定义高级测试应用。语言型式可以是在IEC 61131-3中所定义的任一种,诸如结构文本、阶梯或功能框图。测试应用1被编译2成汇编码3中的测试应用。已编译成汇编码3的测试应用包括是CPU的所有可用主指令4的子集的指令。因此,大多数主CPU指令5不用在测试应用3中,这使得与包括所有可用CPU指令的测试相比该测试应用在执行期间消耗的资源较少。在本专利技术的一个实施例中,测试应用包括对应于在线安全控制应用程序的汇编指令。进一步地,图1示出了汇编码的测试应用被下载7到工业控制器的至少一个中央单元6。中央单元6可包括多个模块和/或板,例如电路板。典型的中央单元6包括底板和与现实世界对象通信的通信装置。出于冗余原因,中央单元可包括多个特定类型的电路板和/或模块。冗余的主CPU板是这种冗余的一个例子。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种在现实世界对象在线安全控制期间检测工业控制器的CPU中故障的方法,包括如下步骤-将应用程序编译成汇编指令,其中预先用将用于安全控制的高级语言来定义应用程序,其特征在于,所述方法包括如下步骤-将测试应用编译成汇编指令,其中所述汇编指令是所述CPU可用的汇编指令总数的子集,其中预先用将用于安全控制的所述高级语言来定义测试应用,并且所述测试应用至少覆盖了用在所述应用程序中的所有语言结构;-将所述应用程序和所述测试应用下载到工业控制器的中央单元;-在所述工业控制器中重复执行所述测试应用;-通过测试模块将来自所述测试应用的结果与所述测试模块中的预定义结果进行重复比较;-当来自所述测试应用的所述结果不等于在所述测试模块中存储的所述预定义结果、且所述测试应用的意外结果是由于执行所述测试应用的汇编指令时,检测所述CPU中的故障;-终止所述应用程序的执行,其中所述应用程序被禁止执行所述汇编指令,否则会引起所述应用程序失效。2.如权利要求1所述的方法,其中所述测试应用的汇编型式包括从可用于现实世界对象安全控制的所述高级语言中的所有语言结构中得到的汇编码。3.如权利要求1或2所述的方法,其中将用于安全控制的所述高级语言基于IEC 61131-3。4.如权利要求3所述的方法,其特征在于,定义测试应用的步骤包括分析应用,以便确定用在所述应用码中的子集和软件库。5.如权利要求4所述的方法,其特征在...

【专利技术属性】
技术研发人员:M·古马尔卡K·汉森A·奥皮姆
申请(专利权)人:ABB股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1