JP6520772B2 - 評価システム、評価プログラムおよび評価方法 - Google Patents

評価システム、評価プログラムおよび評価方法 Download PDF

Info

Publication number
JP6520772B2
JP6520772B2 JP2016049934A JP2016049934A JP6520772B2 JP 6520772 B2 JP6520772 B2 JP 6520772B2 JP 2016049934 A JP2016049934 A JP 2016049934A JP 2016049934 A JP2016049934 A JP 2016049934A JP 6520772 B2 JP6520772 B2 JP 6520772B2
Authority
JP
Japan
Prior art keywords
value
output
safety
input
evaluation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016049934A
Other languages
English (en)
Other versions
JP2017167653A (ja
Inventor
亮輔 藤村
亮輔 藤村
伸行 田熊
伸行 田熊
拓 菅沼
拓 菅沼
旭 松井
旭 松井
正也 井上
正也 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Priority to JP2016049934A priority Critical patent/JP6520772B2/ja
Priority to CN201710024706.5A priority patent/CN107193250B/zh
Priority to EP17153178.3A priority patent/EP3220222B1/en
Priority to US15/417,412 priority patent/US10656636B2/en
Publication of JP2017167653A publication Critical patent/JP2017167653A/ja
Application granted granted Critical
Publication of JP6520772B2 publication Critical patent/JP6520772B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0286Modifications to the monitored process, e.g. stopping operation or adapting control
    • G05B23/0291Switching into safety or degraded mode, e.g. protection and supervision after failure
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14008Pc monitors plc
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14116Safe, emergency shutdown, esd of system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24024Safety, surveillance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0256Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults injecting test signals and analyzing monitored process response, e.g. injecting the test signal while interrupting the normal operation of the monitored system; superimposing the test signal onto a control signal during normal operation of the monitored system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Storage Device Security (AREA)
  • Safety Devices In Control Systems (AREA)

Description

本技術は、安全プログラムの機能安全を評価する評価システム、評価プログラムおよび、評価方法に関する。
多くの製造現場で使用される機械を安全に使用するためには、国際規格に従う安全機器(安全コンポーネント)を使用しなければならばない。この安全機器は、ロボットなどの自動的に動く装置によって人の安全が脅かされることの防止を目的としている。このような安全機器は、安全プログラムを実行する安全コントローラをはじめとして、人の存在や侵入を検知する検知機器、非常時の操作を受付ける入力機器、実際に機器を停止させる出力機器などを含む。
このような製造現場での安全を確保する技術の一つとして、例えば、特開2014−137621号公報(特許文献1)は、安全コントローラのユーザプログラムの設計を容易にすることが可能な安全コントローラのユーザプログラムの設計を支援する方法を開示する。
特開2014−137621号公報(特許文献1)は、安全コントローラと安全I/Oターミナルとがバス型ネットワークを介して接続され、安全コントローラでは、安全I/Oターミナルに接続される安全入力機器からの入力信号に基づいて、安全I/Oターミナルに接続される安全出力機器に対して安全動作を行うための指令を出力する構成を開示する。
特開2014−137621号公報
ところで、安全コントローラで実行される安全プログラムについては、予め設計されたとおりに動作することを確認する必要がある。上述の特許文献1は、安全コントローラのユーザプログラムの設計を容易にすることが可能な安全コントローラのユーザプログラムの設計を支援する方法を開示するが、出来上がった安全コントローラのユーザプログラムを検査する手法については教示されていない。
そのため、安全プログラムの機能安全をより容易に評価できる技術が要望されている。
本発明のある局面に従えば、予め定められた条件が成立すると対象機器を安全が保たれるように動作させるための安全プログラム、の機能安全を評価する評価システムが提供される。評価システムは、安全プログラムを取得する取得手段を含む。安全プログラムは、1または複数の入力信号に対して、1または複数の出力信号の値を決定するための命令の組み合わせを含む。評価システムは、安全プログラムに含まれる命令のうち、対象機器を安全が保たれるように動作させるための演算処理に向けられた命令を抽出する命令抽出手段と、安全プログラムから抽出された命令に関連付けられている入力信号および出力信号を抽出する信号抽出手段と、抽出された入力信号と出力信号とを対応付けて表示するとともに、表示された出力信号について、対象機器を安全が保たれるように動作させるための値である出力期待値の設定を受付ける設定手段と、抽出された入力信号の値を変化させるとともに、当該入力信号の値の変化に応じて、安全プログラムに従う演算により算出される出力信号の値が、設定された出力期待値と一致するか否かを判断する評価手段とを含む。
好ましくは、設定手段は、抽出された入力信号を複数表示するとともに、抽出された入力信号に関連付けられる複数の出力信号を各入力信号に対応付けて表示する。
好ましくは、評価システムは、入力信号を抽出した命令に対して設定されている種別を抽出する種別抽出手段をさらに含む。抽出される種別は、入力信号の値が対象機器を安全が保たれるように動作させる条件を示す入力値に変化した後、元の入力値に戻ったときに、対応する出力信号の出力値を連動して元の値に戻すことを示す第1の種別と、予め定められたリセット条件が成立するまでは対応する出力信号の出力値を元の値に戻さないことを示す第2の種別とのいずれかである。
好ましくは、命令抽出手段は、安全プログラムに含まれる非常停止ファンクションブロックを抽出する。信号抽出手段は、非常停止ファンクションブロックに割り当てられている入力信号を抽出する。
さらに好ましくは、信号抽出手段は、抽出した非常停止ファンクションブロックの出力先に接続されている他のファンクションブロックを辿って最終出力される信号を、対象の出力信号として抽出する。
本発明の別の局面に従えば、予め定められた条件が成立すると対象機器を安全が保たれるように動作させるための安全プログラム、の機能安全を評価する評価プログラムが提供される。評価プログラムはコンピュータに、安全プログラムを取得するステップを実行させる。安全プログラムは、1または複数の入力信号に対して、1または複数の出力信号の値を決定するための命令の組み合わせを含む。評価プログラムはコンピュータに、安全プログラムに含まれる命令のうち、対象機器を安全が保たれるように動作させるための演算処理に向けられた命令を抽出するステップと、安全プログラムから抽出された命令に関連付けられている入力信号および出力信号を抽出するステップと、抽出された入力信号と出力信号とを対応付けて表示するとともに、表示された出力信号について、対象機器を安全が保たれるように動作させるための値である出力期待値の設定を受付けるステップと、抽出された入力信号の値を変化させるとともに、当該入力信号の値の変化に応じて、安全プログラムに従う演算により算出される出力信号の値が、設定された出力期待値と一致するか否かを判断するステップとをさらに実行させる。
本発明のさらに別の局面に従えば、予め定められた条件が成立すると対象機器を安全が保たれるように動作させるための安全プログラム、の機能安全を評価する評価方法が提供される。評価方法は、安全プログラムを取得するステップを含む。安全プログラムは、1または複数の入力信号に対して、1または複数の出力信号の値を決定するための命令の組み合わせを含む。評価方法は、安全プログラムに含まれる命令のうち、対象機器を安全が保たれるように動作させるための演算処理に向けられた命令を抽出するステップと、安全プログラムから抽出された命令に関連付けられている入力信号および出力信号を抽出するステップと、抽出された入力信号と出力信号とを対応付けて表示するとともに、表示された出力信号について、対象機器を安全が保たれるように動作させるための値である出力期待値の設定を受付けるステップと、抽出された入力信号の値を変化させるとともに、当該入力信号の値の変化に応じて、安全プログラムに従う演算により算出される出力信号の値が、設定された出力期待値と一致するか否かを判断するステップとを含む。
本発明によれば、安全プログラムの機能安全をより容易に評価できる。
本実施の形態に従う評価システムの概要を機能的な面から説明する模式図である。 本実施の形態に従う評価システムのハードウェア構成の一例を示す模式図である。 本実施の形態に従う評価システムのソフトウェア構成の一例を示す模式図である。 本実施の形態に従う評価システムの構成例を示す模式図である。 本実施の形態に従う評価システムが対象とする安全プログラムの一例を示す模式図である。 本実施の形態に従う安全プログラムに含まれる非常停止FBに設定されるリセット種別を説明するための図である。 本実施の形態に従う評価システムが対象とする安全プログラムの別の一例を示す模式図である。 本実施の形態に従う機能安全評価の手順の一例を説明するタイムチャートである。 本実施の形態に従う評価システムにおいて評価条件を設定するためのユーザインターフェイス画面の一例を示す模式図である。 本実施の形態に従う評価システムにおいて出力期待値のエクスポートおよびインポート処理を説明するための図である。 本実施の形態に従う評価システムにおいて他のアプリケーションとの連携によって出力期待値を設定する処理を説明するための図である。 本実施の形態に従う評価システムにおいて実行される機能安全評価の処理手順を示すフローチャートである。 本実施の形態に従う評価システムにおいて実行される機能安全評価の処理手順を示すフローチャートである。 本実施の形態に従う評価システムにおいて実行される機能安全評価の評価結果の一例を示す模式図である。 本実施の形態に従う評価システムが提供する評価条件の設定支援機能を説明する模式図である。 本実施の形態に従う評価システムが提供する評価条件の設定支援機能を説明する模式図である。 本実施の形態に従う評価システムが提供する評価条件の設定支援機能に係る処理手順を示すフローチャートである。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<A.評価システムの概要>
まず、本実施の形態に従う評価システムの概要について説明する。評価システムは、任意の安全プログラムの機能安全を評価する。
本明細書において、「安全プログラム」は、予め定められた条件(安全条件)が成立すると対象機器を安全が保たれるように動作させるためのプログラムであり、安全コントローラの処理を定義する命令群を意味する。より具体的には、安全プログラムは、1または複数の入力信号に対して、1または複数の出力信号の値を決定するための命令の組み合わせを含む。
安全プログラムは、安全コントローラの処理を定義するものであれば、どのような実体であってもよい。すなわち、安全プログラムは、1または複数のソースコードとして存在してもよいし、1または複数のオブジェクトコードとして存在してもよいし、安全コントローラのプロセッサで実行可能な形式(実行形式)であってもよい。
また、安全プログラムは、ファンクションブロックダイアグラム(FBD:Function Block Diagram)を用いて記述されていてもよい。あるいは、ラダーダイアグラム(LD:Ladder Diagram)、命令リスト(IL:Instruction List)、構造化テキスト(ST:Structured Text)、および、シーケンシャルファンクションチャート(SFC:Sequential Function Chart)のいずれか、あるいは、これらの組み合わせで記述されてもよい。さらにあるいは、JavaScript(登録商標)やC言語のような汎用的なプログラミング言語で記述されていてもよい。
なお、PLCプログラミングの国際基準IEC 61131−3(JIS B 3503)の普及活動と、ベンダに依存しない標準ファンクションブロックダイアグラムの仕様策定および認定を行う第三者機関であるPLCopen(登録商標)が、technical committee 5において公開している規約に準拠して安全プログラムを作成することが好ましい。
本実施の形態に従う評価システムにおける安全プログラムの機能安全の評価とは、対象の安全プログラムによる挙動がしかるべき安全規格に適合しているか否かを検証するものである。具体的には、安全プログラムに入力される変数の値の各組み合わせを入力し、当該入力に対する出力結果が、本来あるべき結果と一致するか否かを逐次判断する。評価システムは、このよう入力値の各組み合わせについての検証動作を自動的に実行することができる。
以下の説明では、変数プログラムとして記述された安全プログラムについて例示する。そのため、実際に安全コントローラと安全コンポーネントなどとの間で遣り取りされる信号(典型的には、入力信号および出力信号)を安全プログラム内では、それぞれ「変数」として取り扱うことになる。これらの現実の信号と安全プログラム内の対応する変数とは本質的に同じものであるため、以下の説明では、これらを「信号」と総称することもある。すなわち、本明細書において、「信号」は、現実に遣り取りされる電気信号に加えて、安全コントローラ上でその電気信号に割り当てられた値を参照する変数を含み得る。
図1は、本実施の形態に従う評価システム1の概要を機能的な面から説明する模式図である。図1を参照して、評価システム1は、その主たる機能として、プログラム実行機能2と、比較機能4と、解析・抽出機能6とを含む。
プログラム実行機能2は、安全プログラム10に従って所定周期毎またはイベント発生毎に演算処理を実行し、その実行結果を出力する。プログラム実行機能2のプログラム実行時には、1または複数の入力値を取得し、その取得した入力値に基づいて論理演算などを実行する。入力値と当該入力値に対応する出力期待値との組み合わせを含む、評価条件20が予め用意されており、評価条件20に基づいて、安全プログラム10の入力値が順次更新される。
比較機能4は、評価条件20に基づく入力値をプログラム実行機能2に入力したときに出力される出力値と、評価条件20において当該入力値に対応する出力期待値とを比較する。両者が一致する場合には、1次的な安全動作が健全であると判断する。
評価条件20には、入力値および当該入力値に対応する出力期待値が格納されるとともに、復帰動作の条件についても格納されている。本実施の形態に従う機能安全評価においては、設定されている復帰動作の条件に従って、先に入力された入力値が変化または維持される。そして、この入力値の変化または維持に伴う出力値の変化または維持が、予め設定されている復帰動作の条件に適合するか否かも判断される。
このように、本実施の形態においては、安全動作のトリガとなる入力値を与えることでしかるべき安全動作が実行されるか否かの評価(1次的な安全動作の評価)に加えて、安全動作のトリガとなる入力値が元の値に復帰したときに、停止状態などが維持されるか、あるいは、停止状態などが通常の動作状態に復帰するかについても評価(2次的な安全動作の評価)がなされる。なお、2次的な安全動作の評価では、予め設定された復帰動作の条件に従う挙動であるか否かが判断される。
以上のような評価結果は、機能安全評価結果30として、画面上または紙面上に出力されてもよい。
本実施の形態に従う評価システム1は、安全プログラム10に定義されている入力値を自動的に抽出し、評価条件20に必要な入力値のリストなどを自動的に生成機能が実装されていてもよい。安全プログラム10に含まれる論理(安全パス)が多くなると、すべての入力値と出力値との関係を手動で抽出することは難しくなる。そこで、本実施の形態に従う評価システム1では、解析・抽出機能6が安全プログラム10を解析し、その中に含まれる入力値などを抽出し、評価条件20の作成を支援する。このような支援機能を実装することで、より確実に機能安全を評価することができる。
以下、機能安全評価を実行する処理、および、評価条件20の作成を支援する処理などについて、より詳細に説明する。
<B.評価システムのハードウェア構成>
次に、評価システム1のハードウェア構成について例示する。図2は、本実施の形態に従う評価システム1のハードウェア構成の一例を示す模式図である。
図2に示す本実施の形態に従う評価システム1は、典型的には、汎用コンピュータが予めインストールされたプログラムを実行することで実現される。具体的には、評価システム1は、主たるコンポーネントとして、オペレーティングシステム(OS:Operating System)および後述するような各種プログラムを実行するプロセッサ102と、プロセッサ102でのプログラム実行に必要なデータを格納するための作業領域を提供するメモリ104と、キーボードやマウスなどのユーザ操作を受付ける入力部106と、ディスプレイ、各種インジケータ、プリンタなどの処理結果を出力する出力部108と、外部ネットワークと通信するためのネットワークインターフェイス(I/F:Inter Face)110と、光学ドライブ112と、安全コントローラなどと通信するためのローカル通信インターフェイス(I/F)116と、補助記憶装置120とを含む。これらのコンポーネントは、内部バス118などを介してデータ通信可能に接続される。
評価システム1は、光学ドライブ112を有しており、コンピュータ読取可能なプログラムを非一過的に格納する光学記録媒体(例えば、DVD(Digital Versatile Disc)など)のコンピュータ読取可能な記録媒体114から、各種プログラムを読取って補助記憶装置120などにインストールする。本実施の形態に従う機能安全の評価に係る処理は、安全コントローラに対する設定、プログラミング、デバッグなどの機能を提供する開発環境プログラムの一部として提供されてもよい。
評価システム1で実行される各種プログラムは、コンピュータ読取可能な記録媒体114を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に従う機能安全の評価に係るプログラムは、OSが提供するモジュールの一部を利用する形で実現される場合もある。このような場合には、本実施の形態に従う機能安全の評価の実現に必要なすべてのソフトウェアモジュールが配布されるのではなく、その一部のみが配布されることになる。このような場合であっても、本発明の技術的範囲に包含されることは自明である。また、本実施の形態に従う機能安全の評価に係る処理が、他のプログラムまたはソフトウェアの一部として実装されてもよい。
補助記憶装置120は、例えば、HDD(Hard Disk Drive)やSSD(Flash Solid State Drive)などで構成され、プロセッサ102で実行されるプログラムを格納する。具体的には、補助記憶装置120は、後述するような処理を提供するプログラムとして、安全プログラム(ソースプログラム)からプロセッサ102で実行可能なコード(実行モジュール)を生成するための実行モジュール生成プログラム122と、安全コントローラを模擬して安全プログラム(実行モジュール)を実行するためのエミュレータプログラム124と、後述するような機能安全を評価するための機能安全評価プログラム126とを含む。これらのプログラムが提供する機能および処理については、後述する。
また、補助記憶装置120は、機能安全の評価対象となる安全プログラム10および各種設定130を保持する。
図2には、汎用コンピュータがプログラムを実行することで、本実施の形態に従う安全プログラムの機能安全の評価を実現するが、このような構成に代えて、その全部または一部をハードワイヤード回路で実装してもよい。例えば、プロセッサ102が上述の各種プログラムを実行することで提供される機能をASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)を用いて実装してもよい。
<C.評価システムのソフトウェア構成>
次に、評価システム1のソフトウェア構成について例示する。図3は、本実施の形態に従う評価システム1のソフトウェア構成の一例を示す模式図である。図3を参照して、評価システム1は、そのソフトウェアコンポーネントとして、実行モジュール生成部152と、エミュレータ154と、入力値変更部156と、比較部158と、結果出力部160と、評価条件生成部170とを含む。
実行モジュール生成部152は、プロセッサ102が実行モジュール生成プログラム122(図2)を実行することで実現され、安全プログラム10から実行モジュールを生成する。実行モジュール生成部152は、典型的には、コンパイラ、アセンブラ、リンカなどの機能を含む。
エミュレータ154は、プロセッサ102がエミュレータプログラム124(図2)を実行することで実現され、実行モジュール生成部152により生成された実行プログラムを実行する。
入力値変更部156は、予め用意された評価条件に従って、機能安全を評価するための入力値をエミュレータ154へ与える。比較部158は、機能安全を評価するための入力値をエミュレータ154へ与えることで算出される出力値と、当該入力値に対応する出力期待値とを比較し、その比較結果を出力する。この比較処理については、後述するように複数種類存在する。結果出力部160は、比較部158からの比較結果を機能安全の評価出力として出力する。
入力値変更部156、比較部158、および、結果出力部160は、プロセッサ102が機能安全評価プログラム126(図2)を実行することで実現される。
評価条件生成部170は、安全プログラム10の内容を解析して、機能安全評価に必要な入力値の組み合わせなどを生成する。
図2および図3には、汎用コンピュータに実装されるエミュレータを用いて安全プログラムを実行する構成について例示したが、現実の安全コントローラを用いてもよい。以下、本実施の形態に従う評価システムの具体的な構成例について例示する。
図4は、本実施の形態に従う評価システムの構成例を示す模式図である。図4(A)には、汎用コンピュータのみで評価システムを実現する例を示し、図4(B)には、汎用コンピュータおよび安全コントローラを用いて評価システムを実現する例を示す。
図4(A)に示すように、汎用コンピュータPCのみで評価システムを実現する場合には、汎用コンピュータPC上に、エミュレータ154、比較部158、結果出力部160を実装することになる。
これに対応して、汎用コンピュータPCおよび安全コントローラを用いて評価システムを実現する場合には、汎用コンピュータPCと安全コントローラとをデータ遣り取り可能に接続する。その上で、汎用コンピュータPC上に比較部158および結果出力部160を実装するとともに、安全コントローラ上で対象の安全プログラム10を実行させることになる。
このように、評価システム1は、1または複数の入力信号に基づいて、安全プログラム10に従う演算を実行することで、対応する1または複数の出力信号の値を決定する処理実行機能を有しており、この処理実行機能は、安全プログラム10を現実または仮想的に実行できる環境により実現できる。
<D.安全プログラム>
次に、本実施の形態に従う評価システム1が対象とする安全プログラムの一例について説明する。本実施の形態においては、一例として、国際基準IEC 61131−3(JIS B 3503)に従うファンクションブロックダイアグラム(FBD:Function Block Diagram)を用いて記述する例を示す。
図5は、本実施の形態に従う評価システム1が対象とする安全プログラム10の一例を示す模式図である。図5に示す安全プログラム10は、典型的には、何らかのロボットが配置され、その周囲にある危険エリアを安全柵で囲むとともに、安全柵の一部に人が出入りできるようになっている設備などを想定したものである。人が危険エリアに出入りする部分には、ライトカーテンが設けられるとともに、危険エリアの周囲には、万が一の事態が発生したときに、ロボットを緊急停止できる非常停止ボタンが設けられているとする。
図5に示す安全プログラム10では、2つの非常停止ファンクションブロック(以下、「非常停止FB」とも記す。)12,14と、出力チェックファンクションブロック(以下、「出力チェックFB」とも記す。)18と、両者を接続するアンドブロック16とを含む。非常停止FB12は、非常停止ボタンからの入力信号を処理する論理であり、非常停止FB14は、ライトカーテンからの入力信号するための論理である。
本実施の形態に従う評価システム1が対象とする安全プログラム10では、変数プログラミングによりプログラムが記述されている。すなわち、非常停止ボタンやライトカーテンから出力される信号の各々は、予め定められた設定に従って、ユニークな内部変数に割り当てられている。安全プログラム10においては、各ファンクションブロックに対して、適切な内部変数を入力または出力に論理的に関連付けることで、目的の動作が実現される。
非常停止FB12,14の各々は、その入力として、ファンクションブロックの処理の有効/無効を設定する「Activate」と、非常停止に係る安全コンポーネントから出力される信号が入力される「S_EStopIn」と、リセット後のプログラム実行を開始するか否かを設定する信号が入力される「S_StartReset」と、安全動作後のリセット種別を設定する信号が入力される「S_AutoReset」と、安全動作後の動作をリセットする信号が入力される「Reset」との、合計5つを有している。
また、非常停止FB12,14の各々は、その出力として、ファンクションブロックが運転状態であるか否か示す信号を出力する「Ready」と、安全動作を指示する信号を出力する「S_EStopOut」と、何らかのエラーの発生を示す信号を出力する「Error」と、発生したエラーの内容に対応するコードを出力する「DiagCode」との、合計4つを有している。
本実施の形態において、安全プログラム10では、正常時における入力値および出力値を「TRUE」(「1」または「真」)とする。すなわち、何らかの条件にて安全動作を行う場合には、当該安全動作のトリガとなる入力値が「FALSE(「0」または「偽」)」に変化することで、出力値も「FALSE」となり、「FALSE」の出力値によって、対象の装置が安全動作を行う。
入力信号および出力信号の初期値として設定される「TRUE」は、安全プログラム10を実行する安全コントローラに供給される電源が喪失したときと同様のメモリの状態において示される値(すなわち、「FALSE」)とは異なる値が用いられる。すなわち、安全コントローラの不揮発性メモリに電荷などが保持されていない状態において示される値とは異なる値を用いることで、ハードウェアの故障などにおいて、安全動作が行われる、いわゆるフェールセーフを実現できる。
なお、正常時および非常時における入力値および出力値に対する値の割り付けは設計事項であり、どのようなものであってもよい。但し、上述したようなフェールセーフの観点などからは、正常時の入力値および出力値を「TRUE」とすることが好ましい。
図5に示す安全プログラム10において、非常停止FB12の入力「S_EStopIn」には、非常停止ボタンから出力される信号を示す変数「Var_EmergencyStop1」が割り当てられ、入力「Reset」には、安全コントローラに対するシステムリセットを示す変数「SystemReset」が割り当てられている。
非常停止FB14の入力「S_EStopIn」には、ライトカーテンから出力される信号を示す変数「Var_LightCurtain1」が割り当てられ、入力「Reset」には、安全コントローラに対するシステムリセットを示す変数「SystemReset」が割り当てられている。
非常停止FB12,14の「Activate」にはいずれも「TRUE」、すなわち処理の有効が設定されており、「S_StartReset」にはいずれも「TRUE」、すなわちリセット後のプログラム実行が設定されており、「S_AutoReset」にはいずれも「FALSE」、すなわちリセット種別として「マニュアルリセット」が設定されている。
非常停止FB12,14の各々は、基本的には、「S_EStopIn」に入力される変数が「FALSE」になると、「S_EStopOut」の出力値が「FALSE」に変化する。このような安全動作の後、設定されたリセット種別に従って、「S_EStopIn」に入力される変数、および/または、「Reset」に入力される変数の値に応じて、「S_EStopOut」の出力値をリセットまたは維持する。
非常停止FB12および非常停止FB14のそれぞれのからの「S_EStopOut」は、アンドブロック16に入力され、両者の論理積が出力チェックFB18へ入力される。
出力チェックFB18は、安全動作を司る安全コンポーネントが指令どおりに機能しているかをチェックする論理である。出力チェックFB18は、その入力として、ファンクションブロックの処理の有効/無効を設定する「Activate」と、安全コンポーネントの動作指令を示す信号が入力される「S_OutControl」と、安全コンポーネントの状態値を示す信号が入力される「S_EDM1」および「S_EDM2」と、健全性の監視周期を示す値が入力される「MonitoringTime」と、リセット後のプログラム実行を開始するか否かを設定する信号が入力される「S_StartReset」と、安全動作後の状態値をリセットする信号が入力される「Reset」との、合計7つを有している。
また、出力チェックFB18は、その出力として、ファンクションブロックが運転状態であるか否か示す信号を出力する「Ready」と、安全コンポーネントに対する安全動作を指示する最終的な信号を出力する「S_EDM_Out」と、何らかのエラーの発生を示す信号を出力する「Error」と、発生したエラーの内容に対応するコードを出力する「DiagCode」との、合計4つを有している。
出力チェックFB18は、「S_OutControl」への入力値に応じて、「S_EDM_Out」から対象の安全コンポーネントへ与える指令値を変化させるとともに、安全コンポーネントの状態値が指令値と一致しているか否かを判断する。これによって、例えば、安全リレーの断線などによる不動、および、溶着などによる常時動作などの不具合を検出することができる。
図5に示す安全プログラム10は、簡単な論理の一例を示すが、より多くの入力信号が与えられえるとともに、より多くの安全コンポーネントに対して指令値を与えるようにしてもよい。
<E.リセット種別>
次に、図5に示す安全プログラム10に含まれる非常停止FBに設定されるリセット種別について説明する。上述したように、非常停止FBに、一例として、「オートリセット」および「マニュアルリセット」を選択的に設定できるようになっている。
「オートリセット」は、例えば、ライトカーテンなどの安全コンポーネントからの入力信号が「FALSE」になっている間だけ安全動作を行うような場合などに好適である。例えば、人が危険エリアに侵入している間だけ装置を停止させ、それ以外の状態では装置を動作させるような状況に用いることができる。このような「オートリセット」を設定することで、作業者に対する安全を確保しつつ、タクトタイムへの影響を低減できる。
「マニュアルリセット」は、一般的なリセット種別であり、非常停止ボタンなどの安全コンポーネントが操作されて、安全動作が行われた後、リセットには所定の復帰操作を必要とするような場合に好適である。例えば、非常停止ボタンが操作されて、装置が作業途中で停止した場合などには、当該装置を初期位置に戻した上で、リセットすることが好ましい。
このように、リセット種別としては、入力信号の値が「FALSE」(第2の入力値)から「TRUE」(第1の入力値)に戻ったときに、対応する出力信号の出力値を連動して元の値に戻すことを示す「オートリセット」(第1の種別)と、予め定められたリセット条件が成立するまでは出力信号の出力値を元の値に戻さないことを示す「マニュアルリセット」(第2の種別)とを含む。
図6は、本実施の形態に従う安全プログラム10に含まれる非常停止FBに設定されるリセット種別を説明するための図である。
図6(A)は、リセット種別として「オートリセット」が設定されている場合を示し、図6(B)は、リセット種別として「マニュアルリセット」が設定されている場合を示す。
図6(A)に示す「オートリセット」では、非常停止FBの入力「S_EStopIn」が「TRUE」から「FALSE」に変化すると、非常停止FBの出力「S_EStopOut」が「TRUE」から「FALSE」に変化する。この「S_EStopOut」の変化によって、安全動作が行われる。その後、非常停止FBの入力「S_EStopIn」が「FALSE」から「TRUE」に復帰すると、リセット動作も併せて実行される。すなわち、非常停止FBの入力「S_EStopIn」に連動して、非常停止FBの出力「S_EStopOut」も変化することになる。
本実施の形態に従う評価システム1では、「オートリセット」が設定されている出力変数については、対応する入力変数の値の変化に連動して、その値が変化することを確認する。
図6(B)に示す「マニュアルリセット」では、非常停止FBの入力「S_EStopIn」が「TRUE」から「FALSE」に変化して、非常停止FBの出力「S_EStopOut」が「TRUE」から「FALSE」に変化した後、非常停止FBの入力「S_EStopIn」が「FALSE」から「TRUE」に復帰したとしても、非常停止FBの出力「S_EStopOut」が「FALSE」に維持される。この状態において、非常停止FBの入力「Reset」が「FALSE」から「TRUE」に変化することで、はじめて非常停止FBの出力「S_EStopOut」は「FALSE」から「TRUE」に変化する。
本実施の形態に従う評価システム1では、「マニュアルリセット」が設定されている出力変数については、安全動作の実行後、対応する入力変数の値が変化したとしても、その変化後の値が維持されること、および、リセットに係る変数が入力されたときには、その値が初期値にリセットされること、を確認する。
<F.機能安全評価の全体手順>
次に、本実施の形態に従う評価システム1が提供する機能安全評価の全体手順について説明する。
図7は、本実施の形態に従う評価システム1が対象とする安全プログラム10の別の一例を示す模式図である。図8は、本実施の形態に従う機能安全評価の手順の一例を説明するタイムチャートである。図8には、図7に示す安全プログラム10を対象に機能安全評価を適用した場合の手順を時系列に示す。図7に示す安全プログラム10において、非常停止FB12の「S_EStopIn」に入力される変数を「入力変数1」とし、非常停止FB14の「S_EStopIn」に入力される変数を「入力変数2」とし、非常停止FB12,14の「Reset」に共通して入力される変数を「リセット変数」とし、て、非常停止FB12の「S_EStopOut」から出力される変数を「出力変数1」とする。なお、非常停止FB14の「S_EStopOut」から出力される変数については、図8には示していない。
図8(A)は、出力変数に対して「オートリセット」が設定されている例を示し、図8(B)は、出力変数に対して「マニュアルリセット」が設定されている例を示す。
本実施の形態に従う機能安全評価は、典型的には、3つのフェーズ(初期化フェーズ、遮断フェーズ、復帰フェーズ)を含む。初期化フェーズでは、すべての入力変数を予め設定された初期値に設定したときに、出力変数がしかるべき初期状態になっていることを確認する。遮断フェーズでは、設定された入力変数が安全動作を示す値に変化したときに、対応する出力変数がしかるべき値に変化していること、および/または、対応する出力変数が変化していないこと、を確認する。復帰フェーズでは、入力変数および/またはリセット変数がリセット動作を示す値に変化したときに、設定されたリセット種別でリセットされることを確認する。
図8に示す機能安全評価の手順において、出力変数1は、期待値として「TRUE」が設定されている変数であり、入力変数1に対して連動することが予定されている。これに対して、出力変数2は、期待値として「FALSE」が設定されている変数であり、入力変数1に対して連動しないことが予定されている。以下に説明する判断処理は、図1に示す比較機能4および図3に示す比較部158によって実行される。
まず、図8(A)を参照して、リセット種別として「オートリセット」が設定されている場合の機能安全評価の手順について説明する。
初期化フェーズにおいて、評価対象の入力信号の値を初期値(第1の入力値)に設定するとともに、安全プログラム10に従う演算処理によって決定される評価対象の出力信号の値(第4の出力値)が初期値と一致しているか否かが判断される。
具体的には、登録されているすべての入力変数を「TRUE」にセットする(符号202)。併せて、リセット変数を一旦「TRUE」にセットした後(符号204)、「FALSE」にセットする(符号206)。この変化に対応して、登録されているすべての出力変数が「TRUE」であることを確認する(符号208)。いずれかの出力変数が「FALSE」であれば、何らかの異常があると判断される(符号210)。
続く遮断フェーズにおいて、評価対象の入力信号の値を初期値である「TRUE」(第1の入力値)から「FALSE」(第2の入力値)に変化させるとともに、安全プログラム10に従う演算処理によって決定される評価対象の出力信号の値(第1の出力値)が対応する出力期待値と一致しているか否かが判断される。
具体的には、特定の入力変数1を「TRUE」から「FALSE」にセットする(符号212)。この変化に対応して、期待値設定がチェックされている(入力変数1に対する連動することが予定されている)出力変数1が「FALSE」であることを確認する(符号214)。出力変数1が「TRUE」であれば、入力変数1に連動しておらず、何らかの異常があると判断される(符号216)。一方、期待値設定がチェックされていない(入力変数1に対する連動しないことが予定されている)出力変数2が「TRUE」であることを確認する(符号218)。出力変数2が「FALSE」であれば、入力変数1と連動しており、何らかの異常があると判断される(符号220)。
最終の復帰フェーズにおいて、評価対象の入力信号の値を「FALSE」(第2の入力値)から「TRUE」(第1の入力値)に戻すとともに、安全プログラム10に従う演算処理によって決定される評価対象の出力信号の値(第2の出力値)が遮断フェーズでの値(第1の出力値)と一致しているか否かが判断される。
具体的には、入力変数1を「FALSE」から「TRUE」にセットする(符号222)。このとき、リセット変数は「FALSE」のまま維持される。この変化に対応して、登録されているすべての出力変数が「TRUE」であることを確認する(符号224,228)。いずれかの出力変数が「FALSE」であれば、何らかの異常があると判断される(符号226,230)。
このように、「オートリセット」(第1の種別)が設定されている場合には、入力信号の値を「FALSE」から「TRUE」に戻したときの評価対象の出力信号の出力値が「FALSE」(第1の出力値)とは異なっているときに正常と判断する。
次に、図8(B)を参照して、リセット種別として「マニュアルリセット」が設定されている場合の機能安全評価の手順について説明する。「マニュアルリセット」が設定されている場合の機能安全評価の手順のうち、初期化フェーズおよび遮断フェーズについては、図8(A)に示す「オートリセット」の初期化フェーズおよび遮断フェーズとそれぞれ同一であるので、その説明は繰返さない。
復帰フェーズにおいて、入力変数1を「FALSE」から「TRUE」にセットする(符号232)。このとき、リセット変数は「FALSE」のまま維持される。この変化に対応して、この変化に対応して、期待値設定がチェックされている(入力変数1に対する連動することが予定されている)出力変数1が「FALSE」であることを確認する(符号236)。出力変数1が「TRUE」に変化すれば、リセット変数の変化を待たずに入力変数1に連動したことになり、何らかの異常があると判断される(符号238)。
続いて、リセット変数を一旦「TRUE」にセットした後(符号240)、「FALSE」にセットする(符号242)。この変化に対応して、登録されているすべての出力変数が「TRUE」であることを確認する(符号244)。いずれかの出力変数が「FALSE」であれば、何らかの異常があると判断される(符号246)。
このように、「マニュアルリセット」(第2の種別)が設定されている場合には、入力信号の値を「FALSE」から「TRUE」に戻したときの評価対象の出力信号の出力値が「FALSE」(第1の出力値)と一致しているときに正常と判断する。その上で、リセット信号を有効化するとともに、安全プログラム10に従う演算処理によって決定される評価対象の出力信号の値(第3の出力値)が遮断フェーズでの値(第1の出力値)と一致しているか否かが判断される。
<G.評価条件の設定>
本実施の形態に従う評価システム1は、図8に示すような機能安全評価を自動的に実行する。以下、機能安全評価の自動実行に必要な評価条件20の設定方法などについて説明する。
図9は、本実施の形態に従う評価システム1において評価条件20を設定するためのユーザインターフェイス画面の一例を示す模式図である。評価システム1は、図9に示すような設定画面300を表示するとともに、設定画面300に対するユーザからの設定を受付ける。
より具体的には、設定画面300は、機能安全評価の自動実行を指示するRUNボタン302と、機能安全評価の実行結果を表示する表示ボタン304と、評価対象の変数を登録するための変数登録ボタン306と、リセット変数に用いられる変数を設定するリセット変数設定エリア308と、入力変数に係る設定値を表示する入力設定表示エリア310と、出力変数に係る設定値を表示する出力設定表示エリア320と、入力変数に対する出力変数の期待値(以下、「出力期待値」とも称す。)を設定する期待値設定エリア330とを含む。
リセット変数設定エリア308には、評価対象の安全プログラムに含まれるファンクションブロックにリセット信号として共通して入力される変数が設定される。すなわち、評価条件20は、オートリセットの予め定められたリセット条件としてのリセット信号の設定を含む。なお、図9に示す設定画面300では、単一のリセット信号が共通に入力されるようになっているが、ファンクションブロック毎に別々のリセット信号を用いるようにしてもよい。
入力設定表示エリア310では、対象の安全プログラムに含まれる入力変数に係る情報の登録および表示が可能になっている。出力設定表示エリア320では、対象の安全プログラムに含まれる出力変数に係る情報の登録および表示が可能になっている。入力設定表示エリア310および出力設定表示エリア320での変数登録については、変数登録ボタン306が選択されることで有効化される。
入力設定表示エリア310は、予め設定されている入力変数の変数名を表示する変数名表示欄312と、対応する入力変数についてのコメントを表示するコメント表示欄314と、対応する入力変数についてのリセット種別を表示するリセット種別表示欄316と、対応する入力変数についての入力タイプを表示する入力タイプ表示欄318とを含む。
出力設定表示エリア320は、予め設定されている出力変数の変数名を表示する変数名表示欄322と、対応する出力変数についてのコメントを表示するコメント表示欄324とを含む。
期待値設定エリア330は、本実施の形態に従う機能安全評価に必要な評価条件を受付ける。すなわち、期待値設定エリア330の各行が機能安全評価の各条件となる。具体的には、期待値設定エリア330は、対象となる入力変数を表示する入力変数表示エリア334と、対応する入力変数についてのコメントを表示するコメント表示欄336と、対応する入力変数についてのリセット種別を表示するリセット種別表示欄338と、対応する入力変数についての各出力変数の出力期待値を設定する期待値設定欄340とを含む。
期待値設定欄340は、1つの入力変数に対して、対象となる出力変数の数だけ出力値(出力期待値)が設定されるようになっている。図9に示す設定画面300の例では、出力設定表示エリア320に表示されている4つの出力変数に対応して、4つの欄が設けられており、各欄に出力期待値を設定できるようになっている。ユーザは、事前の安全設計に基づいて、期待値設定欄340にしかるべき値を設定することになる。なお、図9の期待値設定欄340において、「0」は、対応の入力変数が「FALSE」になった場合に、対応の出力変数も「FALSE」へ変化することを意味し、「1」は、対応の入力変数が「FALSE」になった場合であっても、対応の出力変数が「TRUE」を維持することを意味する。
例えば、ある非常停止ボタンAが危険エリアAに配置されている装置Aの安全動作をトリガするものであり場合には、当該非常停止ボタンAからの入力信号に対応する入力変数に関連付けて、危険エリアAにある装置Aの非常停止を司る安全リレーへの指令を示す出力変数については、安全動作を示す「FALSE」、つまり「0」が出力期待値として設定される。一方で、非常停止ボタンAは危険エリアBに向けられるものではなく、危険エリアBには別の非常停止ボタンBが設けられる場合には、非常停止ボタンAに対する操作によって、危険エリアBの装置Bが停止することは予定されていない。そのため、当該非常停止ボタンAからの入力信号に対応する入力変数に関連付けて、危険エリアBにある装置Bの非常停止を司る安全リレーへの指令を示す出力変数については、安全動作しないことを示す「TRUE」、つまり「1」が出力期待値として設定される。このように、期待値設定欄340において、入力変数の各々とそれぞれの出力変数との間の関係が設定される。
期待値設定エリア330は、各入力変数を機能安全評価の対象とするか否かを設定するためのチェックボックス332を含む。本実施の形態に従う機能安全評価においては、対応するチェックボックス332がチェックされた入力変数の値(入力値)を変化させるとともに、各出力変数の値が期待値設定欄340に設定された期待値と一致しているか否かが判断される。
図9に示すように、期待値設定欄340は、評価対象の入力信号と、評価対象の出力信号と、評価対象の入力信号の値の変化に対応して出力されるべき評価対象の出力信号の値である出力期待値とを含む、評価条件20を受付ける。通常、評価条件20としては、入力信号と、出力信号と、出力期待値との組が複数含まれ得る。
図9を参照して説明したように、本実施の形態に従う評価システム1は、評価対象の入力信号と、評価対象の出力信号と、評価対象の入力信号の値の変化に対応して出力されるべき評価対象の出力信号の値である出力期待値とを含む、評価条件を受付ける。
次に、評価条件の一部である、図9に示す設定画面300に含まれる期待値設定欄340への出力期待値の設定を容易化する機能の一例について説明する。
本実施の形態に従う評価システム1は、出力期待値の設定および再利用を容易化できるように、一般的なフォーマット(典型的には、CSV(Comma-Separated Values)形式やテキスト形式)に従って記述された出力期待値のデータの外部読み込みが可能である。また、予め設定した出力期待値を当該一般的なフォーマットのデータとして出力することも可能である。
図10は、本実施の形態に従う評価システムにおいて出力期待値のエクスポートおよびインポート処理を説明するための図である。例えば、ユーザが設定画面300のエクスポートボタン342(図9)を選択すると、設定画面300の期待値設定欄340に設定されている出力期待値の一覧がCSV形式のデータ(外部出力データ346)として外部出力/保存される。
また、ユーザが設定画面300のインポートボタン344(図9)を選択すると、予め用意されていたCSV形式のデータ(外部出力データ346)が読み込まれ、設定画面300の期待値設定欄340に各値が設定される。
このように、出力期待値が一般的なフォーマットのデータとして外部出力および外部読み込みできる機能が実装されることで、他のアプリケーションなどとの連携も強化され、機能安全の評価をより迅速かつ容易に行うことができる。
図10に示すファイルを用いた他のアプリケーションとの連携に加えて、他のアプリケーションで設定した出力期待値を直接用いるようにしてもよい。
図11は、本実施の形態に従う評価システムにおいて他のアプリケーションとの連携によって出力期待値を設定する処理を説明するための図である。図11を参照して、例えば、表計算アプリケーション400上で期待値設定欄340に設定する出力期待値を示す表を作成し、この作成した対象となる範囲402を選択およびコピーし、設定画面300の期待値設定欄340上でペースト(いわゆる、コピー&ペースト操作)を行うことで、ユーザが所望する出力期待値を設定できる。
なお、図11には、典型例として、表計算アプリケーションとの連携について例示したが、これに限られることなく、コピー&ペースト操作が可能なアプリケーションであれば、どのようなアプリケーションとも連携できる。
このように、他のアプリケーションとの連携により、出力期待値をより容易に設定できる。
<H.機能安全評価の処理手順>
次に、本実施の形態に従う機能安全評価の処理手順について説明する。図9に示すような設定画面300において、評価対象の入力変数と対応する出力期待値との組が設定されると、以下のような手順に従って、対象の安全プログラムの機能安全が評価される。
図12および図13は、本実施の形態に従う評価システム1において実行される機能安全評価の処理手順を示すフローチャートである。図12および図13に示す各ステップは、典型的にはプロセッサ102が機能安全評価プログラム126(いずれも図2)を実行することで実現される。なお、図9に示す評価条件が予め設定されているとする。
図12および図13を参照して、まず、評価対象の安全プログラムが取得され、当該取得された安全プログラムの実行モジュールが生成される(ステップS2)。そして、エミュレータ(または、外部の安全コントローラ)にて実行モジュールの実行が開始される(ステップS4)。つまり、1または複数の入力信号に基づいて、安全プログラムに従う演算を実行することで、対応する1または複数の出力信号の値を決定する処理が繰返し実行される。そして、評価処理が開始される。
まず、評価処理の初期化フェーズが実行される。初期化フェーズでは、評価対象の入力信号の値を初期値である「TRUE」(第1の入力値)に設定するとともに、安全プログラムに従う演算により決定される評価対象の出力信号の出力値が初期値である「FALSE」と一致しているか否かを判断する処理が実行される。
具体的には、エミュレータに入力されるすべての入力変数を初期値である「TRUE」にセットする(ステップS10)。安全プログラムの実行モジュールをエミュレータにて実行する場合には、内部インターフェイス(典型的には、API(Application Programming Interface))を介して、設定された入力変数の値が当該エミュレータへ与えられる。一方、安全プログラムの実行モジュールを外部の安全コントローラにて実行する場合には、ローカル通信インターフェイス116などを介して入力変数および出力変数が遣り取りされる。
続いて、リセット変数を「TRUE」に一旦セットした後、「FALSE」に戻す(ステップS12)。その後、評価対象である1または複数の出力変数の値がいずれも「TRUE」であるか否かが判断される(ステップS14)。
評価対象であるいずれかの出力変数の値が「FALSE」である場合(ステップS14においてNOの場合)には、「FALSE」である出力変数を特定するとともに、初期化フェーズでのエラーメッセージを出力する(ステップS16)。この場合、以降の機能安全評価の処理は中止される。初期化フェーズでのエラーメッセージとしては、例えば、「出力変数(XXX)がリセット時にFALSEとなっています」といったものが用いられる。
評価対象であるいずれの出力変数の値も「TRUE」である場合(ステップS14においてYESの場合)には、以下の遮断フェーズおよび復帰フェーズの処理が実行される。期待値設定エリア330(評価条件20)に設定される入力変数毎に、遮断フェーズおよび復帰フェーズの処理が繰返される。
具体的には、まず、期待値設定エリア330に設定されている入力変数のうち、対応するチェックボックス332がチェックされている入力変数の1つを選択する(ステップS20)。そして、評価対象の入力信号の値を初期値である「TRUE」(第1の入力値)から「FALSE」(第2の入力値)に変化させるとともに、安全プログラムに従う演算により決定される評価対象の出力信号の第1の出力値が出力期待値と一致しているか否かを判断する処理が実行される。
具体的には、選択されている入力変数を「FALSE」にセットし(ステップS22)、評価対象である1または複数の出力変数の値を取得する(ステップS24)。つまり、選択されている入力変数が遮断される。続いて、選択されている入力変数に対応する、評価対象のそれぞれの出力変数についての出力期待値と、取得したそれぞれの出力変数の値とが一致するか否かを判断する(ステップS26)。すなわち、出力期待値として「FALSE」が設定されている出力変数については、取得された値が「FALSE」であるか否かが判断され、出力期待値として「TRUE」が設定されている出力変数については、取得された値が「TRUE」であるか否かが判断される。
いずれかの出力変数について取得した値と出力期待値とが一致しない場合(ステップS26においてNOの場合)には、当該出力期待値と一致しない出力変数を特定するとともに、遮断フェーズでのエラーメッセージを出力する(ステップS28)。この場合には、後続の復帰フェーズはスキップされ、ステップS60の処理が実行される。遮断フェーズでのエラーメッセージとしては、例えば、「出力変数(XXX)が出力期待値と一致しません」といったものが用いられる。
一方、評価対象のそれぞれの出力変数についての出力期待値と、取得したそれぞれの出力変数の値とがすべて一致する場合(ステップS26においてYESの場合)には、続いて、復帰フェーズの処理が実行される。すなわち、評価対象の入力信号の値を「FALSE」(第2の入力値)から「TRUE」(第1の入力値)に戻すとともに、安全プログラムに従う演算により決定される評価対象の出力信号の第2の出力値が第1の出力値と一致しているか否かを判断する処理が実行される。
具体的には、選択されている入力変数に設定されているリセット種別が「オートリセット」および「マニュアルリセット」のいずれであるかが判断される(ステップS30)。
リセット種別として「オートリセット」が設定されている場合(ステップS30において「オートリセット」の場合)には、選択されている入力変数を「TRUE」に戻し(ステップS32)、評価対象である1または複数の出力変数の値を取得する(ステップS34)。つまり、選択されている入力変数を復帰させる。続いて、選択されている入力変数に対応する、評価対象であるいずれの出力変数もその値が「TRUE」であるか否かを判断する(ステップS36)。すなわち、選択されている入力変数の復帰に伴って、対応するすべての出力変数も復帰しているか否かが判断される。
評価対象であるいずれかの出力変数の値が「FALSE」のままである場合(ステップS36においてNOの場合)には、「FALSE」のままである出力変数を特定するとともに、復帰フェーズでのエラーメッセージを出力し(ステップS38)、ステップS60の処理が実行される。復帰フェーズでのエラーメッセージとしては、例えば、「出力変数(XXX)が自動復帰しませんでした」といったものが用いられる。
一方、評価対象であるいずれの出力変数もその値が「TRUE」である場合(ステップS36においてYESの場合)には、選択されている入力変数については、機能安全評価のすべてに合格であることを出力し(ステップS40)、ステップS60の処理が実行される。
一方、リセット種別として「マニュアルリセット」が設定されている場合(ステップS30において「マニュアルリセット」の場合)には、選択されている入力変数を「TRUE」に戻し(ステップS42)、評価対象である1または複数の出力変数の値を取得する(ステップS44)。つまり、選択されている入力変数を復帰させる。続いて、選択されている入力変数に対応する評価対象の出力変数のうち、出力期待値がいずれも「FALSE」に設定されている出力変数の値が「FALSE」のままであるか否かを判断する(ステップS46)。すなわち、「マニュアルリセット」の対象となっている出力変数の値が、選択されている入力変数の復帰に伴って復帰していないことが判断される。
出力期待値がいずれも「FALSE」に設定されているいずれかの出力変数の値が「TRUE」である場合(ステップS46においてNOの場合)には、「TRUE」である出力変数を特定するとともに、復帰フェーズでのエラーメッセージを出力し(ステップS48)、ステップS60の処理が実行される。復帰フェーズでのエラーメッセージとしては、例えば、「出力変数(XXX)が自動復帰しました」といったものが用いられる。
出力期待値がいずれも「FALSE」に設定されているすべての出力変数の値が「FALSE」である場合(ステップS46においてYESの場合)には、リセット信号を有効化するとともに、安全プログラムに従う演算により決定される評価対象の出力信号の第3の出力値が第1の出力値と一致しているか否かを判断する処理が実行される。すなわち、リセット変数を一旦「TRUE」にセットした後、「FALSE」に戻し(ステップS50)、評価対象である1または複数の出力変数の値を取得する(ステップS52)。つまり、リセット変数を活性化する。続いて、評価対象である1または複数の出力変数の値がいずれも「TRUE」であるか否かが判断される(ステップS54)。
評価対象であるいずれかの出力変数の値が「FALSE」である場合(ステップS54においてNOの場合)には、「FALSE」である出力変数を特定するとともに、復帰フェーズでのエラーメッセージを出力する(ステップS56)。復帰フェーズでのエラーメッセージとしては、例えば、「出力変数(XXX)がリセット時にFALSEとなっています」といったものが用いられる。
評価対象であるいずれの出力変数の値も「TRUE」である場合(ステップS54においてYESの場合)には、選択されている入力変数については、機能安全評価のすべてに合格であることを出力し(ステップS58)、ステップS60の処理が実行される。
ステップS60において、期待値設定エリア330に設定されている入力変数のうち、対応するチェックボックス332がチェックされている入力変数のすべてについて評価が実行されたか否かが判断される(ステップS60)。チェックされているいずれかの入力変数についての評価が未だ実行されていない場合(ステップS60においてNOの場合)には、評価が未だ実行されていないいずれかの入力変数を選択し(ステップS62)、ステップS22以下の処理が再度実行される。
チェックされているすべての入力変数についての評価が実行されている場合(ステップS60においてYESの場合)には、機能安全評価の処理は終了する。
<I.機能安全評価の評価結果>
次に、図12および図13に示す機能安全評価の評価結果について説明する。
本実施の形態に従う評価システム1は、評価対象の入力信号に関連付けて、機能安全評価の評価結果を出力する機能を有している。
図14は、本実施の形態に従う評価システム1において実行される機能安全評価の評価結果の一例を示す模式図である。図14を参照して、評価結果画面350は、対象となった入力変数の変数名を表示する変数名表示欄354と、対応する入力変数についてのコメントを表示するコメント表示欄356と、対応する入力変数についてのリセット種別を表示するリセット種別表示欄358と、対応する入力変数についての出力期待値の組み合わせを表示する期待値設定欄360と、評価結果を示す結果表示欄372と、評価結果に対応するコメントを表示する結果コメント表示欄374と、評価実行日時を示す日時表示欄376とを含む。
結果表示欄372には、上述の評価によって、合格したものについては「Passed」が表示され、何らかのエラーが生じたものについては「Failed」が表示される。さらに、何らかのエラーが生じた場合には、期待値設定欄360において、そのエラーが生じた出力変数の表示態様が異なったものとされる。結果コメント表示欄374には、そのエラーに対応するエラーメッセージが表示される。すなわち、いずれのフェーズにおいて異常であると判断されたのかを特定する情報が判断結果に含められる。また、異常であると判断されたフェーズに応じたコメントが判断結果に含められる。
図14に示すように、一般的には、評価条件20は、評価対象の入力信号と、評価対象の出力信号と、出力期待値とからなる組を複数含む。そして、上述したような評価処理は各組について実行される。いずれの組の入力信号について異常であると判断されたのかを特定する情報が判断結果に含められる。
また、図14に示すように、一般的には、評価条件20は、評価対象の入力信号と、複数の評価対象の出力信号と、それぞれ対応する複数の出力期待値とからなる組を含む。そして、上述したような、評価処理は複数の出力期待値の各々について実行される。いずれの出力信号について異常であると判断されたのかを特定する情報が判断結果に含められる。
このような出力期待値を基準として、いずれかの出力変数にエラーが生じると、当該エラーの内容が出力期待値と対応付けて表示されることで、安全プログラムの機能安全評価をより効率的に行うことができる。
<J.評価条件の設定支援>
次に、図9に示すような設定画面300にて入力される評価条件の設定を支援するための構成について説明する。以下に説明する処理は、図1に示す解析・抽出機能6によって提供される。
本実施の形態に従う評価条件は、1または複数の入力信号(あるいは、入力変数)の設定、1または複数の出力信号(あるいは、出力変数)、および、出力期待値を含む。ユーザがこれらの情報を任意に設定してもよいが、安全プログラムのステップ数(プログラム量)が大きくなると、対象とすべき入力信号および出力信号のすべてを設定することは、比較的手間を要する。そこで、本実施の形態に従う評価システム1において、評価条件の設定を支援する機能を実装してもよい。
図15および図16は、本実施の形態に従う評価システム1が提供する評価条件の設定支援機能を説明する模式図である。
図15を参照して、安全プログラム10に含まれる命令のうち、対象機器を安全が保たれるように動作させるための演算処理に向けられた命令を抽出する処理が実行される。続いて、安全プログラム10から抽出された命令に関連付けられている入力信号および出力信号を抽出する処理が実行される。このように、安全プログラム10に含まれる安全動作に係る命令を抽出し、その抽出した命令に設定されている変数などを抽出することができる。そして、図9に示すように、設定画面300にて、抽出された入力信号と出力信号とを対応付けて表示するとともに、表示された出力信号について、対象機器を安全が保たれるように動作させるための値である出力期待値の設定を受付ける処理が実行される。最終的に、図13および図14に示すように、抽出された入力信号の値を変化させるとともに、当該入力信号の値の変化に応じて、安全プログラムに従う演算により算出される出力信号の値が、設定された出力期待値と一致するか否かを判断することで、機能安全が評価される。
安全プログラム10は、他のプログラムの一部として組み込まれている場合もあり、また、安全動作以外の処理に係る命令を含む場合もある。そこで、安全プログラム10に含まれる安全動作に係る命令(図15に示す例では、ファンクションブロック)を選択的に抽出することが好ましい。
特に、何らかの規約に準拠して作成された安全プログラムについては、安全動作に用いられるファンクションブロックの仕様などは、メーカを問わず共通化されており、例えば、非常停止FBおよび出力チェックFBが安全プログラムから抽出される。そして、抽出されたファンクションブロックに入力または出力として設定されている変数が評価条件に用いられる変数として抽出される。また、入力信号を抽出した命令に対して設定されているリセット種別も併せて抽出されてもよい。
図15に示す例では、対象の入力変数として、非常停止FB12の「S_EStopIn」に割り当てられている変数「Var_EmergencyStop1」が抽出され、非常停止FB14の「S_EStopIn」に割り当てられている変数「Var_EmergencyStop2」が抽出される。この入力変数の抽出に併せて、対象のファンクションブロックに設定されているリセット種別の値が抽出される。図15に示す例では、非常停止FB12およびFB14の「S_AutoReset」に設定されている値である「FALSE」から、「マニュアルリセット」であることが判断される。
また、対象の出力変数として、出力チェックFB18の「S_EDM_OUT」に割り当てられている変数「Var_Safety_Relay1」が抽出される。
このように、PLCopen(登録商標)などが公開している規約に準拠してファンクションブロックを用いて安全プログラムが記述されている場合には、安全プログラムに含まれる非常停止ファンクションブロック(図15に示す例では、非常停止FB12,14)が抽出される。そして、非常停止ファンクションブロックに割り当てられている入力信号が抽出される。さらに、抽出した非常停止ファンクションブロックの出力先に接続されている他のファンクションブロック(図15に示す例では、出力チェックFB18)を辿って最終出力される信号が対象の出力信号として抽出される。
図16に示すように設定された変数について、上述のような処理によって、機能安全評価の対象となる入力変数および出力変数が抽出される。そして、抽出された入力変数および出力変数の組み合わせが、設定画面300の期待値設定エリア330(図9)などに表示される。
通常、複数の入力信号が抽出されるので、図9の設定画面300に示すように、これらの抽出された入力信号が複数表示されるとともに、抽出された入力信号に関連付けられる複数の出力信号が各入力信号に対応付けて表示される。
図17は、本実施の形態に従う評価システム1が提供する評価条件の設定支援機能に係る処理手順を示すフローチャートである。図17に示す各ステップは、典型的にはプロセッサ102が機能安全評価プログラム126(いずれも図2)を実行することで実現される。
図17を参照して、まず、評価対象の安全プログラムが取得され、当該取得された安全プログラムに対する解析(パース)が実行される(ステップS100)。続いて、安全プログラムに対する解析結果に基づいて、安全プログラムに含まれる安全動作に係る命令(ファンクションブロック:例えば、非常停止FBおよび出力チェックFB)を抽出し(ステップS102)、抽出した命令に割り当てられている入力変数を抽出する(ステップS104)。この入力変数の抽出に併せて、対象の命令に設定されているリセット種別の情報を抽出する(ステップS106)。さらに、抽出した命令に割り当てられている出力変数を抽出する(ステップS108)。
これらの抽出された、入力変数、入力変数に対応するリセット種別、出力変数の情報を、図9に示す設定画面300の期待値設定欄340に反映する(ステップS110)。そして、処理は終了する。
このような評価条件の設定を支援するための処理の実行後、ユーザからの評価条件の設定を受付ける。
<K.利点>
本実施の形態によれば、安全プログラムに含まれる入力信号と、当該入力信号に対応付けられた1または複数の出力信号との組み合わせを規定するとともに、各組み合わせにおける各出力信号値の期待値(出力期待値)が設定される。また、各入力信号に対応付けられたリセット種別も設定される。その上で、入力信号の値(入力値)を3つのフェーズ(初期化フェーズ、遮断フェーズ、復帰フェーズ)に応じて変化させるとともに、各フェーズにおいて算出される出力値が、予め設定された出力期待値およびリセット種別に応じた値であるか否かが判断されることで、安全プログラムの総合的な機能安全が自動的に評価される。そのため、安全プログラムの機能安全をより容易に評価できる。
また、本実施の形態によれば、いずれかのフェーズにおいて異常が発生すると、当該異常が発生したフェーズ、および、当該異常が発生した出力信号が特定されるとともに、機能安全の評価結果として出力される。そのため、安全プログラムの機能安全に何らかの不具体があっても、容易にその原因および解決方法を特定することができる。
また、本実施の形態によれば、安全プログラムに含まれる入力信号、出力信号、リセット種別が自動的に抽出されるので、ユーザは、出力期待値のみを設定すれば、機能安全の評価を容易に行うことができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 評価システム、2 プログラム実行機能、4 比較機能、6 解析・抽出機能、10 安全プログラム、12,14 非常停止FB、16 アンドブロック、18 出力チェックFB、20 評価条件、30 機能安全評価結果、102 プロセッサ、104 メモリ、106 入力部、108 出力部、112 光学ドライブ、114 記録媒体、116 ローカル通信インターフェイス、118 内部バス、120 補助記憶装置、122 実行モジュール生成プログラム、124 エミュレータプログラム、126 機能安全評価プログラム、130 各種設定、152 実行モジュール生成部、154 エミュレータ、156 入力値変更部、158 比較部、160 結果出力部、170 評価条件生成部、300 設定画面、400 表計算アプリケーション。

Claims (7)

  1. 予め定められた条件が成立すると対象機器を安全が保たれるように動作させるための安全プログラム、の機能安全を評価する評価システムであって、
    前記安全プログラムを取得する取得手段を備え、前記安全プログラムは、1または複数の入力信号に対して、1または複数の出力信号の値を決定するための命令の組み合わせを含み、
    前記安全プログラムに含まれる命令のうち、前記対象機器を安全が保たれるように動作させるための演算処理に向けられた命令を抽出する命令抽出手段と、
    前記安全プログラムから抽出された命令に関連付けられている入力信号および出力信号を抽出する信号抽出手段と、
    前記抽出された入力信号と出力信号とを対応付けて表示するとともに、前記表示された出力信号について、前記対象機器を安全が保たれるように動作させるための値である出力期待値の設定を受付ける設定手段と、
    前記抽出された入力信号の値を変化させるとともに、当該入力信号の値の変化に応じて、前記安全プログラムに従う演算により算出される出力信号の値が、設定された出力期待値と一致するか否かを判断する評価手段とを備える、評価システム。
  2. 前記設定手段は、前記抽出された入力信号を複数表示するとともに、前記抽出された入力信号に関連付けられる複数の出力信号を各入力信号に対応付けて表示する、請求項1に記載の評価システム。
  3. 前記入力信号を抽出した命令に対して設定されている種別を抽出する種別抽出手段をさらに備え、前記抽出される種別は、前記入力信号の値が前記対象機器を安全が保たれるように動作させる条件を示す入力値に変化した後、元の入力値に戻ったときに、対応する出力信号の出力値を連動して元の値に戻すことを示す第1の種別と、予め定められたリセット条件が成立するまでは対応する出力信号の出力値を元の値に戻さないことを示す第2の種別とのいずれかである、請求項1または2に記載の評価システム。
  4. 前記命令抽出手段は、前記安全プログラムに含まれる非常停止ファンクションブロックを抽出し、
    前記信号抽出手段は、前記非常停止ファンクションブロックに割り当てられている入力信号を抽出する、請求項1〜3のいずれか1項に記載の評価システム。
  5. 前記信号抽出手段は、前記抽出した非常停止ファンクションブロックの出力先に接続されている他のファンクションブロックを辿って最終出力される信号を、対象の出力信号として抽出する、請求項4に記載の評価システム。
  6. 予め定められた条件が成立すると対象機器を安全が保たれるように動作させるための安全プログラム、の機能安全を評価する評価プログラムであって、前記評価プログラムはコンピュータに
    前記安全プログラムを取得するステップを実行させ、前記安全プログラムは、1または複数の入力信号に対して、1または複数の出力信号の値を決定するための命令の組み合わせを含み、
    前記安全プログラムに含まれる命令のうち、前記対象機器を安全が保たれるように動作させるための演算処理に向けられた命令を抽出するステップと、
    前記安全プログラムから抽出された命令に関連付けられている入力信号および出力信号を抽出するステップと、
    前記抽出された入力信号と出力信号とを対応付けて表示するとともに、前記表示された出力信号について、前記対象機器を安全が保たれるように動作させるための値である出力期待値の設定を受付けるステップと、
    前記抽出された入力信号の値を変化させるとともに、当該入力信号の値の変化に応じて、前記安全プログラムに従う演算により算出される出力信号の値が、設定された出力期待値と一致するか否かを判断するステップとを実行させる、評価プログラム。
  7. 予め定められた条件が成立すると対象機器を安全が保たれるように動作させるための安全プログラム、の機能安全を評価する評価方法であって、
    前記安全プログラムを取得するステップを備え、前記安全プログラムは、1または複数の入力信号に対して、1または複数の出力信号の値を決定するための命令の組み合わせを含み、
    前記安全プログラムに含まれる命令のうち、前記対象機器を安全が保たれるように動作させるための演算処理に向けられた命令を抽出するステップと、
    前記安全プログラムから抽出された命令に関連付けられている入力信号および出力信号を抽出するステップと、
    前記抽出された入力信号と出力信号とを対応付けて表示するとともに、前記表示された出力信号について、前記対象機器を安全が保たれるように動作させるための値である出力期待値の設定を受付けるステップと、
    前記抽出された入力信号の値を変化させるとともに、当該入力信号の値の変化に応じて、前記安全プログラムに従う演算により算出される出力信号の値が、設定された出力期待値と一致するか否かを判断するステップとを備える、評価方法。
JP2016049934A 2016-03-14 2016-03-14 評価システム、評価プログラムおよび評価方法 Active JP6520772B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016049934A JP6520772B2 (ja) 2016-03-14 2016-03-14 評価システム、評価プログラムおよび評価方法
CN201710024706.5A CN107193250B (zh) 2016-03-14 2017-01-13 评价系统和评价方法
EP17153178.3A EP3220222B1 (en) 2016-03-14 2017-01-26 Evaluation system, evaluation method, and evaluation program
US15/417,412 US10656636B2 (en) 2016-03-14 2017-01-27 Evaluation system, non-transitory storage medium storing thereon evaluation program, and evaluation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016049934A JP6520772B2 (ja) 2016-03-14 2016-03-14 評価システム、評価プログラムおよび評価方法

Publications (2)

Publication Number Publication Date
JP2017167653A JP2017167653A (ja) 2017-09-21
JP6520772B2 true JP6520772B2 (ja) 2019-05-29

Family

ID=57956102

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016049934A Active JP6520772B2 (ja) 2016-03-14 2016-03-14 評価システム、評価プログラムおよび評価方法

Country Status (4)

Country Link
US (1) US10656636B2 (ja)
EP (1) EP3220222B1 (ja)
JP (1) JP6520772B2 (ja)
CN (1) CN107193250B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6145153B2 (ja) * 2015-11-30 2017-06-07 ファナック株式会社 ロボットの非常停止の発生状況を記録するロボット制御装置
JP6540561B2 (ja) * 2016-03-14 2019-07-10 オムロン株式会社 評価システム、評価プログラムおよび評価方法
CN107977311B (zh) * 2017-11-15 2021-10-22 中国电力科学研究院有限公司 一种自动进行配电终端信息安全检测的方法及系统
WO2019123510A1 (ja) * 2017-12-18 2019-06-27 三菱電機株式会社 表示制御装置、表示システム、表示装置、表示方法および表示プログラム
KR20190098109A (ko) * 2019-08-02 2019-08-21 엘지전자 주식회사 홈 모니터링 시스템
JP7404748B2 (ja) * 2019-10-03 2023-12-26 オムロン株式会社 プログラム開発装置およびプログラム開発装置を実現するためのプログラム
JP7392370B2 (ja) 2019-10-03 2023-12-06 オムロン株式会社 制御システム、サポート装置およびサポートプログラム
CN111507615A (zh) * 2020-04-15 2020-08-07 江苏鹏为软件有限公司 一种智慧城市检测用评价系统
CN111638998A (zh) * 2020-05-29 2020-09-08 宝鸡文理学院 一种区块链测评系统
DE102020128026A1 (de) * 2020-10-23 2022-04-28 Pilz Gmbh & Co. Kg Steuervorrichtung mit Schutzmodul

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3053265B2 (ja) * 1991-09-02 2000-06-19 株式会社日立製作所 シーケンスプログラム検索時の画面表示方法
US9026394B2 (en) * 2007-10-08 2015-05-05 Wurldtech Security Technologies Testing and mitigation framework for networked devices
DE102009019089A1 (de) * 2009-04-20 2010-11-04 Pilz Gmbh & Co. Kg Verfahren und Vorrichtung zum Erstellen eines Anwenderprogramms für eine Sicherheitssteuerung
US20110125302A1 (en) * 2009-10-23 2011-05-26 Gm Global Technology Operations, Inc. Method and system for formal safety verification of manufacturing automation systems
JP5423468B2 (ja) * 2010-02-23 2014-02-19 オムロン株式会社 異常解析装置、および、異常解析装置の制御方法
JP5622553B2 (ja) * 2010-12-15 2014-11-12 株式会社東芝 発電プラントの運転管理支援装置
DE102011079786A1 (de) * 2011-07-26 2013-01-31 Hilti Aktiengesellschaft Verfahren und Vorrichtung zum Testen eines auf einem Speicher eines elektrischen Gerätes gespeicherten Programms
US9606902B2 (en) * 2012-07-03 2017-03-28 Hitachi, Ltd. Malfunction influence evaluation system and evaluation method using a propagation flag
JP6015178B2 (ja) * 2012-07-11 2016-10-26 オムロン株式会社 安全システム
JP5911581B2 (ja) 2012-08-08 2016-04-27 三菱電機株式会社 ロジック図面誤り箇所推定装置及びその方法
TWI489232B (zh) * 2012-11-14 2015-06-21 Inst Information Industry 遠端監控系統及方法及其記錄媒體
JP6111675B2 (ja) 2013-01-15 2017-04-12 オムロン株式会社 安全コントローラのユーザプログラムの設計を支援する方法、装置およびプログラム
JP5814299B2 (ja) * 2013-05-28 2015-11-17 アイダエンジニアリング株式会社 プレスシステムおよびプレスシステムの制御方法
US9361073B2 (en) * 2013-12-31 2016-06-07 Rockwell Automation Technologies, Inc. Development environment for a safety relay configuration system
CN104199445B (zh) * 2014-09-17 2017-07-04 北京汽车股份有限公司 车身控制器测试系统及方法
CN104536436B (zh) * 2014-12-19 2017-03-08 东北大学 一种工业生产过程控制逻辑的自动测试系统及方法

Also Published As

Publication number Publication date
US10656636B2 (en) 2020-05-19
EP3220222B1 (en) 2019-06-12
JP2017167653A (ja) 2017-09-21
US20170261970A1 (en) 2017-09-14
CN107193250A (zh) 2017-09-22
CN107193250B (zh) 2019-08-20
EP3220222A1 (en) 2017-09-20

Similar Documents

Publication Publication Date Title
JP6520772B2 (ja) 評価システム、評価プログラムおよび評価方法
JP6540561B2 (ja) 評価システム、評価プログラムおよび評価方法
CN108572610B (zh) 评价系统、安全控制器、可读取记录媒体及评价方法
US9411333B2 (en) Method and tool for automatic distribution of control code in a safety system
JP6096414B2 (ja) バッチ構成を試験するための方法、装置、およびプログラム
US9829866B2 (en) Method and apparatus for automatically creating an executable safety function for a device
JPH01166219A (ja) ソフトウェア・コードを解放するための装置
CN108572611B (zh) 信息处理装置、信息处理方法及计算机可读取记录媒体
CN108228190B (zh) 持续集成和交付方法、系统、设备及计算机可读存储介质
CN107193249B (zh) 程序开发辅助装置以及程序开发辅助方法
JP7000703B2 (ja) 情報処理装置、情報処理方法、および、情報処理プログラム
JP4791990B2 (ja) プラントモデル開発システム
JP6290147B2 (ja) 制御機器プログラムコードを作成するコンピュータ実装方法および関連するメッセージ管理システム
KR20190094779A (ko) Plc 명령어 컴파일러 테스트케이스 자동 생성 장치
CN111552263B (zh) 用于检查工业设施的方法、计算机可读存储介质和系统
Herb A continuous integration platform for the deterministic safety analyses code system AC2
JP2009181180A (ja) プログラム生成ツールの検査プログラムおよびプログラム生成ツールの検査方法ならびにプログラム生成ツールの検査装置
JP6653205B2 (ja) プログラムソース変換方法、プログラムソース変換装置、情報処理装置、情報処理方法、および、プログラム
Doerr et al. On the Impact of the Second Edition of the ISO 26262 on Model-Based Development of Safety-Related Systems
JP2020204847A (ja) 制御用ソフトウェアのテストシナリオ自動生成方法、装置及び自動テスト方法、装置ならびにコンピュータプログラム
JP2005258981A (ja) プログラムジェネレータ自動テストシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180828

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190415

R150 Certificate of patent or registration of utility model

Ref document number: 6520772

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250