(57)【要約】【課題】  設計段階で想定していない状態遷移が組込み制御システムのプログラム上で発生しても、組込み制御システムの動作に影響を与えることなく、障害発生前後の制御対象の状態をトレースすることができるようにする。【解決手段】  モデル要素の追加を受け付けるモデル要素追加部２３ａを内蔵し、動作モデルを構成するモデル要素に対する障害検出条件の設定を受け付ける障害検出条件設定部２３を設け、制御対象２の状態に応じてモデル要素の追加が受け付けられた動作モデルのシミュレーションを実行し、そのシミュレーション結果と制御データ収集部２２により収集された制御データを参照して、その障害検出条件が成立しているか否かを判定する。【選択図】        図１
2006331113.tif 000002
【特許請求の範囲】
【請求項１】
組込み制御システムにおける制御対象の状態を監視する状態監視手段と、上記組込み制御システムから上記制御対象に出力される制御データを収集する制御データ収集手段と、上記組込み制御システムの動作モデルに対するモデル要素の追加を受け付けるとともに、その動作モデルを構成するモデル要素に対する障害検出条件の設定を受け付ける設定受付手段と、上記状態監視手段により監視されている制御対象の状態に応じて、上記設定受付手段によりモデル要素の追加が受け付けられた動作モデルのシミュレーションを実行し、そのシミュレーション結果と上記制御データ収集手段により収集された制御データを参照して、上記設定受付手段により設定が受け付けられた障害検出条件が成立しているか否かを判定する障害検出手段とを備えた組込み制御システムの障害監視装置。
【請求項２】
障害検出手段により障害検出条件が成立していると判定されると、その障害検出条件の成立前後の制御対象の状態、シミュレーション結果及び制御データを記録するデータ記録手段を設けたことを特徴とする請求項１記載の組込み制御システムの障害監視装置。
【請求項３】
制御対象の状態、シミュレーション結果及び制御データを一時的に記録する一時記録部と、障害検出手段により障害検出条件が成立していると判定されると、上記一時記録部から障害検出条件の成立前後の制御対象の状態、シミュレーション結果及び制御データを読み取り、その制御対象の状態、シミュレーション結果及び制御データを保存するデータ保存部とからデータ記録手段が構成されていることを特徴とする請求項２記載の組込み制御システムの障害監視装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、組込み制御システムにおける障害の発生を検出する組込み制御システムの障害監視装置に関するものである。
【背景技術】
【０００２】
組込み制御システムの開発及び運用において、組込み制御システムに発生する障害の原因を解析するために、障害監視装置が組込み制御システムの動作状況を記録する。
障害監視装置が、組込み制御システムの動作中のすべての動作状況を記録する方法を採用する場合、記録するデータ量が膨大になるため、膨大な記録領域が必要になるとともに、解析に必要な障害発生前後のデータの抽出に時間を要する問題がある。
【０００３】
この問題を解決するために、障害監視装置が障害発生前後の動作状況を選択的に記録するように、障害監視装置を構成することが一般的である。
このような障害監視装置を構成する場合、障害発生原因を十分に解析できるようにするためには、障害検出条件を設定して、設定通りのタイミングで障害を検出できなければならない。
障害を検出する方法としては、組込み制御システムのプログラムに障害検出機能を追加する方法や、組込み制御システムのプログラムに、障害監視装置により観測可能なデータを出力する機能を追加する方法がある。
【０００４】
しかしながら、組込み制御システムにおいては、機能の追加によるプログラムの変更によって動作タイミングが影響を受けてしまうという特徴がある。
監視対象の組込み制御システムが動作タイミングに影響を受けると、意図したタイミングで障害を検出することができなくなる。
このため、組込み制御システムのプログラムに機能を追加する方法は、組込み制御システムの障害監視装置を構成するために利用することができないことがある。
【０００５】
これに対して、組込み制御システムのプログラムに機能を追加することなく、組込み制御システムに対する入力データや、その組込み制御システムの出力データ等を監視することにより、障害の発生を検出する障害監視装置の構成が考えられる。
その具体例の1つとして、組込み制御システムの動作モデルを作成し、その動作モデルの遷移と、組込み制御システムの動作を比較することにより、障害の発生を監視する障害監視装置の構成がある。
【０００６】
特に、モデルに基づく組込み制御システムの開発方法を採用する場合、設計段階での成果物を障害監視に再利用することができるため、障害監視のためにモデルを新たに作成する必要がないという利点がある。
ここで、モデルに基づく開発方法とは、システム設計段階で開発対象のシステムのモデルを作成し、モデルで動作の妥当性を確認した上で、そのモデルに基づき実際の組込み制御システムのプログラムを開発する方法である。
例えば、以下の特許文献１には、動作モデルのシミュレーション手段の動作結果と、プログラムの実行手段の動作結果との対応関係を特定し、対応する動作結果を関連付けて出力して、動作モデル及び制御プログラムのうちの少なくとも一方の異常の有無を検査する方法が開示されている。
【０００７】
【特許文献１】特開２００４−２８０７８６号公報（段落番号［０００７］から［０００８］、図２）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来の組込み制御システムの障害監視装置は以上のように構成されているので、動作モデル及び制御プログラムのうちの少なくとも一方の異常の有無を検査するために、動作モデルと制御プログラムの動作を対応付けて出力しているが、制御プログラム上でのみ存在する状態遷移については、動作モデル上での動作結果を定義することができず、動作モデルと制御プログラムの動作を関連付けて出力することができないため、異常を検出することができない。即ち、設計段階で作成された動作モデルを組込み制御システムの制御プログラムに変換する際に不具合が混入する状況や、設計段階で動作モデルとして表現されていない機能が組込み制御システムに実装される状況が発生すると、設計段階で想定していない状態や状態遷移が組込み制御システムの制御プログラムに発生することがあるが、このような状況を検出することができない課題があった。
【０００９】
また、動作モデル上にブレークポイントを設定することができるが、想定しない状態や状態遷移に関しては、ブレークポイントの設定対象となるモデル要素が存在しないため、ブレークポイントを設定することができない。一方、監視対象の組込み制御システムにブレークポイントを設定する場合、その設定により組込み制御システムの動作タイミングが影響を受けてしまって、意図したタイミングで障害を検出することができなくなることがあるなどの課題があった。
【００１０】
この発明は上記のような課題を解決するためになされたもので、設計段階で想定していない状態遷移が組込み制御システムのプログラム上で発生しても、組込み制御システムの動作に影響を与えることなく、障害発生前後の制御対象の状態をトレースすることができる組込み制御システムの障害監視装置を得ることを目的とする。
【課題を解決するための手段】
【００１１】
この発明に係る組込み制御システムの障害監視装置は、組込み制御システムの動作モデルに対するモデル要素の追加を受け付けるとともに、その動作モデルを構成するモデル要素に対する障害検出条件の設定を受け付ける設定受付手段を設け、状態監視手段により監視されている制御対象の状態に応じて、その設定受付手段によりモデル要素の追加が受け付けられた動作モデルのシミュレーションを実行し、そのシミュレーション結果と制御データ収集手段により収集された制御データを参照して、その設定受付手段により設定が受け付けられた障害検出条件が成立しているか否かを判定するようにしたものである。
【発明の効果】
【００１２】
この発明によれば、組込み制御システムの動作モデルに対するモデル要素の追加を受け付けるとともに、その動作モデルを構成するモデル要素に対する障害検出条件の設定を受け付ける設定受付手段を設け、状態監視手段により監視されている制御対象の状態に応じて、その設定受付手段によりモデル要素の追加が受け付けられた動作モデルのシミュレーションを実行し、そのシミュレーション結果と制御データ収集手段により収集された制御データを参照して、その設定受付手段により設定が受け付けられた障害検出条件が成立しているか否かを判定するように構成したので、設計段階で想定していない状態遷移が組込み制御システムのプログラム上で発生しても、組込み制御システムの動作に影響を与えることなく、障害発生前後の制御対象の状態をトレースすることができるようになり、その結果、速やかに障害発生要因を特定することができるようになる効果がある。
【発明を実施するための最良の形態】
【００１３】
実施の形態１．
図１はこの発明の実施の形態１による制御システムの障害監視装置を示す構成図であり、図において、組込み制御システム１は予め制御プログラムが組み込まれ、制御対象２の状態に応じて制御プログラムを実行することにより、制御対象２を制御する。
障害監視装置３は制御対象２の状態に応じて、組込み制御システム１の動作モデルのシミュレーションを実行し、そのシミュレーション結果と組込み制御システム１から出力された制御データなどを参照して、組込み制御システム１に組み込まれている制御プログラムの障害を検出する。
【００１４】
組込み制御システム１の状態監視部１１は制御対象２の状態を監視して、その監視結果をプログラム実行部１２に出力する処理を実施する。
組込み制御システム１のプログラム実行部１２は状態監視部１１の監視結果に応じて、予め組み込まれている制御プログラムを実行して制御データを出力する処理を実施する。
組込み制御システム１の制御データ出力部１３はプログラム実行部１２から出力された制御データを制御対象２に送信する処理を実施する。
なお、組込み制御システム１と制御対象２間のデータ通信は、例えば、シリアル伝送によって実現される。
【００１５】
障害監視装置３の状態データ収集部２１は制御対象２の状態を監視し、その状態を表す状態データのデータ形式をモデルシミュレーション実行部２４が利用可能なデータ形式に変換する処理を実施する。なお、状態データ収集部２１は状態監視手段を構成している。
障害監視装置３の制御データ収集部２２は組込み制御システム１から制御対象２に出力される制御データを収集し、その制御データのデータ形式をモデルシミュレーション実行部２４のシミュレーション結果と対比可能なデータ形式に変換する処理を実施する。なお、制御データ収集部２２は制御データ収集手段を構成している。
【００１６】
障害監視装置３の障害検出条件設定部２３は組込み制御システム１の動作モデルに対するモデル要素の追加を受け付けるモデル要素追加部２３ａを内蔵し、その動作モデルを構成するモデル要素に対する障害検出条件の設定を受け付ける処理を実施する。なお、障害検出条件設定部２３及びモデル要素追加部２３ａから設定受付手段が構成されている。
障害監視装置３のモデルシミュレーション実行部２４は状態データ収集部２１によりデータ形式が変換された状態データに応じて、障害検出条件設定部２３によりモデル要素の追加が受け付けられた動作モデルのシミュレーションを実行する。
モデルシミュレーション実行部２４に内蔵されている障害検出条件判定部２４ａはモデルシミュレーション実行部２４のシミュレーション結果と制御データ収集部２２によりデータ形式が変換された制御データなどを参照して、障害検出条件設定部２３により設定が受け付けられた障害検出条件が成立しているか否かを判定する処理を実施する。
なお、モデルシミュレーション実行部２４及び障害検出条件判定部２４ａから障害検出手段が構成されている。
【００１７】
次に動作について説明する。
ここでは、列車の制御を表す状態遷移モデルが動作モデルとして、障害監視装置３のモデルシミュレーション実行部２４に組み込まれているものとして説明する。
図２は組込み制御システム１の動作モデルの入出力関係を示す説明図であり、図３は動作モデルの状態遷移を示す状態遷移図である。
【００１８】
図２の例では、制御対象２に該当する機器が、速度計２ａ、ドア２ｂ、マスコン２ｃ、ドア開閉ボタン２ｄ、モータ・ブレーキ２ｅ、ドア２ｆであることを表している。
また、組込み制御システム１が監視する制御対象２の状態が、「速度」、「ドア状態」、「加減速指令」、「ドア開閉指令」であることを表している。
「速度」は速度計２ａから得られる情報であり、「ドア状態」はドア２ｂから得られる情報である。
「加減速指令」は運転士が操作するマスコン２ｃから得られる情報であり、「ドア開閉指令」は車掌が操作するドア開閉ボタン２ｄから得られる情報である。
【００１９】
組込み制御システム１から出力される制御データが、「加減速制御」、「ドア開閉制御」であることを表している。
「加減速制御」はモータ・ブレーキ２ｅを制御する制御データであり、「ドア開閉制御」はドア２ｆを制御する制御データである。
【００２０】
図３の例では、組込み制御システム１の動作モデルを構成するモデル要素が状態Ｓ１〜Ｓ３で定義されている。
状態Ｓ１〜Ｓ３は速度とドア状態の組み合わせによって定義されており、状態間の矢印は状態遷移を表している。
矢印に付されているラベルのうち、“／”の左側は遷移条件を表し、“／”の右側は遷移時に実行する動作を表している。
例えば、動作モデルが状態Ｓ２にあるときに、「加減速指令」として加速が入力されると、「加速制御」を出力して状態Ｓ１に遷移することを表している。
【００２１】
まず、組込み制御システム１の状態監視部１１は、制御対象２の状態（「速度」、「ドア状態」、「加減速指令」、「ドア開閉指令」）を監視する処理を実施する。
組込み制御システム１のプログラム実行部１２は、図３の動作モデルに基づいて作成された制御プログラムが組み込まれおり、状態監視部１１の監視結果である制御対象２の状態（「速度」、「ドア状態」、「加減速指令」、「ドア開閉指令」）を取得すると、制御対象２の状態に応じて制御プログラムを実行して制御データ（「加減速制御」、「ドア開閉制御」の制御データ）を出力する。
組込み制御システム１の制御データ出力部１３は、プログラム実行部１２から制御データを受けると、その制御データを制御対象２に送信することにより、制御対象２であるモータ・ブレーキ２ｅ及びドア２ｆを制御する。
【００２２】
障害監視装置３の状態データ収集部２１は、制御対象２の状態（「速度」、「ドア状態」、「加減速指令」、「ドア開閉指令」）を監視し、その制御対象２の状態を表す状態データのデータ形式をモデルシミュレーション実行部２４が利用可能なデータ形式に変換する処理を実施する。
ここで、図４は状態データ収集部２１がデータ形式を変換する際に参照する入力データ変換表の一例を示す説明図である。
入力データ変換表は、状態データ収集部２１における入力データ（制御対象２の状態を示す状態データ）のデータ形式の変換方法のほか、状態データ収集部２１における入力データと状態データ収集部２１における出力データ（モデルシミュレーション実行部２４に与えるデータ）との対応関係を示している。
【００２３】
障害監視装置３の状態データ収集部２１は、例えば、制御対象２である速度計２ａから「速度」を受けると、入力データ変換表を参照して、その「速度」のデータ形式をＢＣＤ（Ｂｉｎａｒｙ  Ｃｏｄｅｄ  Ｄｅｃｉｍａｌ）表現からバイナリ形式の表現に変換し、バイナリ形式の「速度」をモデルシミュレーション実行部２４に出力する。
また、状態データ収集部２１は、例えば、制御対象２であるドア２ｂから「ドア状態」、あるいは、ドア開閉ボタン２ｄから「ドア開閉指令」を受けると、図４における入力データ変換表の変換方法が「なし」であるため、「ドア状態」や「ドア開閉指令」のデータ形式を変換することなく、モデルシミュレーション実行部２４に出力する。
状態データ収集部２１は、例えば、制御対象２であるマスコン２ｃから「加減速指令」を受けると、その加減速指令が１以上の加速ノッチであれば、「加速指令」をモデルシミュレーション実行部２４に出力し、その加減速指令が１以上の減速ノッチであれば、「減速指令」をモデルシミュレーション実行部２４に出力する。その加減速指令のノッチが零であれば、モデルシミュレーション実行部２４には何も出力しない。
なお、マスコン２ｃから受ける「加減速指令」は、加減速の絶対値が反映された形式で表現されており、実際には３種類以上の値が存在するが、動作モデルの作成においては、これらを３通りの値として取り扱うものとする。
【００２４】
障害監視装置３の制御データ収集部２２は、組込み制御システム１から制御対象２に出力される制御データを収集し、その制御データのデータ形式をモデルシミュレーション実行部２４のシミュレーション結果と対比可能なデータ形式に変換する処理を実施する。
ここで、図５は制御データ収集部２２がデータ形式を変換する際に参照する出力データ変換表の一例を示す説明図である。
出力データ変換表は、制御データ収集部２２における入力データ（組込み制御システム１から出力される制御データ）のデータ形式の変換方法のほか、制御データ収集部２２における入力データと制御データ収集部２２における出力データ（モデルシミュレーション実行部２４の障害検出条件判定部２４ａに与えるデータ）との対応関係を示している。
【００２５】
障害監視装置３の制御データ収集部２２は、例えば、組込み制御システム１から制御対象２であるモータ・ブレーキ２ｅに出力される制御データとして「加減速制御」を収集すると、出力データ変換表を参照して、モータに対する加速制御信号の値とブレーキに対する減速制御信号の値とを加算し、その加算結果をモータ・ブレーキ２ｅの制御データとしてモデルシミュレーション実行部２４の障害検出条件判定部２４ａに出力する。
また、制御データ収集部２２は、例えば、組込み制御システム１から制御対象２であるドア２ｆに出力される制御データとして「ドア開閉制御」を収集すると、図５における出力データ変換表の変換方法が「なし」であるため、「ドア開閉制御」のデータ形式を変換することなく、モデルシミュレーション実行部２４の障害検出条件判定部２４ａに出力する。
【００２６】
障害監視装置３のモデルシミュレーション実行部２４は、上記のようにして、状態データ収集部２１が状態データのデータ形式を変換すると、その状態データに応じて、予め設定されている動作モデル（図３を参照）のシミュレーションを実行する。
即ち、モデルシミュレーション実行部２４は、状態データ収集部２１から出力された状態データに応じて動作モデルの状態Ｓ１〜Ｓ３を遷移させて、遷移後の状態に関連付けられている処理を実行する。
【００２７】
モデルシミュレーション実行部２４の障害検出条件判定部２４ａは、モデルシミュレーション実行部２４が動作モデルのシミュレーションを実行すると、そのシミュレーション結果を参照して、障害検出条件設定部２３により設定された障害検出条件が成立しているか否かを判定する。
例えば、障害検出条件設定部２３により状態Ｓ３（速度＝０、ドア状態＝開）から状態Ｓ３（速度＝０、ドア状態＝開）に遷移する状況を障害検出条件として設定されている場合には、モデルシミュレーション実行部２４のシミュレーション結果が状態Ｓ３を表しているとき、状態データ収集部２１から出力された状態データが「加減速指令＝加速」であれば、状態Ｓ３から状態Ｓ３に遷移するので、障害検出条件判定部２４ａが障害の発生を検出する。
【００２８】
ここで、動作モデルに基づく開発方法を採用する場合、上述したように、開発者が動作モデルに対応する組込み制御システム１の制御プログラムを作成する作業が発生する。
この作業において、組込み制御システム１のプログラム実行部１２により実行される制御プログラムに不適切な処理が混入して、動作モデルの作成時に想定していない状態が新たに発生することがある。
例えば、「速度＞０、かつ、ドア状態＝開」の状態Ｓ４（図６を参照）は、図３の動作モデルでは想定されていない状態である。
図３の動作モデルに表されている状態Ｓ１〜Ｓ３であれば、障害検出条件設定部２３が、その状態Ｓ１〜Ｓ３の発生を検出する障害検出条件を設定することができるが、図３の動作モデルに表されていない状態Ｓ４の発生を検出する障害検出条件については設定することができない。
したがって、動作モデルの作成時に想定していない状態Ｓ４が新たに発生しても、その状態Ｓ４の発生を検出することができない。
【００２９】
そこで、動作モデルの作成時に想定していない状態Ｓ４の実行状態を識別することができる機能を組込み制御システム１の制御プログラムに追加して、障害監視装置が制御プログラムの実行状態を取得することができるようにすれば、動作モデルの作成時に想定していない状態Ｓ４の発生を検出することができる。
しかし、組込み制御システム１は、機能の追加に伴って制御プログラムを変更すると、動作タイミングに影響を受けて、意図したタイミングで障害を検出することができなくなることがある。
また、本来の組込み制御システム１に必要のないプログラムを、障害情報を取得するためだけに一時的に追加する必要が生じて、制御プログラムの保守性が悪化する不具合も発生する。
【００３０】
この実施の形態１では、下記の示すように、組込み制御システム１の制御プログラムに機能を追加することなく、動作モデルの作成時に想定していない状態Ｓ４の発生を検出することができるようにしている。
図３の動作モデルの作成時に想定していない状態Ｓ４が発生していることを組込み制御システム１の開発者が認識すると、障害検出条件設定部２３のモデル要素追加部２３ａを用いて、状態Ｓ４に対応するモデル要素を図３の動作モデルに追加するようにする。
図６の例では、状態Ｓ３（速度＝０、ドア状態＝開）から状態Ｓ４（速度＞０、ドア状態＝開）に対する遷移と、状態Ｓ１（速度＞０、ドア状態＝閉）から状態Ｓ４（速度＞０、ドア状態＝開）に対する遷移を追加するようにしている。
【００３１】
ただし、状態Ｓ３から状態Ｓ４に対する遷移においては、通常、組込み制御システム１の開発者でも、その状態遷移の原因が分からないので、状態Ｓ３における組込み制御システム１の制御データ出力部１３から出力される制御データが「加減速制御＝加速」になることによって発生する状態遷移として表現される。
状態Ｓ１から状態Ｓ４に対する遷移においても同様であり、状態Ｓ１における組込み制御システム１の制御データ出力部１３から出力される制御データが「ドア開閉制御＝ドア開」になることによって発生する状態遷移として表現される。
組込み制御システム１の開発者は、上記のようにして、状態Ｓ４に対応するモデル要素を追加すると、障害検出条件設定部２３を用いて、状態Ｓ４に遷移する全ての状況を障害検出条件として設定することができる。
【００３２】
モデルシミュレーション実行部２４の障害検出条件判定部２４ａは、上記のようにして、状態Ｓ４に対応するモデル要素が追加されて、状態Ｓ４に遷移する全ての状況を障害検出条件として設定されると、モデルシミュレーション実行部２４のシミュレーション結果と制御データ収集部２２から出力された制御データを参照して、その障害検出条件が成立しているか否かを判定する。
例えば、モデルシミュレーション実行部２４のシミュレーション結果が状態Ｓ３を表しているとき、制御データ収集部２２から出力された制御データが「加減速制御＝加速」であれば、状態Ｓ３から状態Ｓ４に遷移するので、障害検出条件判定部２４ａが障害の発生を検出する。
また、モデルシミュレーション実行部２４のシミュレーション結果が状態Ｓ１を表しているとき、制御データ収集部２２から出力された制御データが「ドア開閉制御＝ドア開」であれば、状態Ｓ１から状態Ｓ４に遷移するので、障害検出条件判定部２４ａが障害の発生を検出する。
モデルシミュレーション実行部２４の障害検出条件判定部２４ａは、上記のようにして障害の発生を検出すると、その障害の発生状況を記録するとともに、その障害の発生を通知するなどの処理を実施する。
【００３３】
以上で明らかなように、この実施の形態１によれば、組込み制御システム１の動作モデルに対するモデル要素の追加を受け付けるモデル要素追加部２３ａを内蔵し、その動作モデルを構成するモデル要素に対する障害検出条件の設定を受け付ける障害検出条件設定部２３を設け、状態データ収集部２１により監視されている制御対象２の状態に応じて、モデル要素追加部２３ａによりモデル要素の追加が受け付けられた動作モデルのシミュレーションを実行し、そのシミュレーション結果と制御データ収集部２２により収集された制御データを参照して、その障害検出条件設定部２３により設定が受け付けられた障害検出条件が成立しているか否かを判定するように構成したので、設計段階で想定していない状態遷移が組込み制御システム１の制御プログラム上で発生しても、組込み制御システム１の動作に影響を与えることなく、障害発生前後の制御対象の状態をトレースすることができるようになり、その結果、速やかに障害発生要因を特定することができるようになる効果を奏する。
【００３４】
実施の形態２．
図７はこの発明の実施の形態２による制御システムの障害監視装置を示す構成図であり、図において、図１と同一符号は同一または相当部分を示すので説明を省略する。
トレース記録部２５は一時記録部２５ａとデータ保存部２５ｂから構成されており、モデルシミュレーション実行部２４の障害検出条件判定部２４ａにより障害検出条件が成立していると判定されると、その障害検出条件の成立前後の状態データ及び制御データとモデルシミュレーション実行部２４のシミュレーション結果を記録する処理を実施する。なお、トレース記録部２５はデータ記録手段を構成している。
【００３５】
トレース記録部２５の一時記録部２５ａは記録対象のデータ（状態データ、制御データ、シミュレーション結果）に変化があると、その変化があった時刻と記録対象のデータ（状態データ、制御データ、シミュレーション結果、障害検出条件）を対にして一時的に記録するメモリである。一時記録部２５ａは例えば一定の記録領域を有するリングバッファから構成され、過去一定量のデータを記録するため、記録領域の先頭の領域から順次データを格納し、全ての記録領域にデータを格納すると、記録しているデータのうち、最も古いデータに対して新たなデータを上書きする処理を実施する。
トレース記録部２５のデータ保存部２５ｂは障害検出条件判定部２４ａにより障害検出条件が成立していると判定されると、一時記録部２５ａに記録されているデータ（状態データ、制御データ、シミュレーション結果、障害検出条件）の中から、その障害検出条件の成立前後のデータを読み取り、そのデータを保存するメモリである。
【００３６】
次に動作について説明する。
上記実施の形態１では、モデルシミュレーション実行部２４の障害検出条件判定部２４ａが障害の発生を検出すると、その障害の発生状況を記録するものについて示したが、障害検出条件の成立前後のデータ（状態データ、制御データ、シミュレーション結果、障害検出条件）を記録するトレース記録部２５を別途設けるようにしてもよい。
【００３７】
トレース記録部２５の一時記録部２５ａは、記録対象のデータ（状態データ、制御データ、シミュレーション結果）の変化を監視し、いずれかのデータに変化があると、その変化があった時刻と記録対象のデータ（状態データ、制御データ、シミュレーション結果、障害検出条件）を対にして一時的に記録する。
なお、一時記録部２５ａは、一定の記録領域を有するリングバッファから構成されており、過去一定量のデータを記録するため、記録領域の先頭の領域から順次データを格納し、全ての記録領域にデータを格納すると、記録しているデータのうち、最も古いデータに対して新たなデータを上書きする処理を実施する。
ここでは、記録対象のデータに変化があると、一時記録部２５ａがデータを記録するようにしているが、これに限るものではなく、例えば、一定時間毎に記録対象のデータをサンプリングして、そのデータを記録するようにしてもよい。
【００３８】
トレース記録部２５のデータ保存部２５ｂは、障害検出条件判定部２４ａから障害検出条件が成立している旨の通知を受けると、一時記録部２５ａに記録されているデータ（状態データ、制御データ、シミュレーション結果、障害検出条件）の中から、その障害検出条件の成立前後のデータを読み取り、そのデータを保存する処理を実施する。
これにより、組込み制御システム１の開発者は、データ保存部２５ｂから障害原因の解析に必要な情報を取得することができるようになる。
【００３９】
以上で明らかなように、この実施の形態２によれば、モデルシミュレーション実行部２４の障害検出条件判定部２４ａにより障害検出条件が成立していると判定されると、その障害検出条件の成立前後の状態データ及び制御データとモデルシミュレーション実行部２４のシミュレーション結果を記録するように構成したので、組込み制御システム１の開発者が障害原因の解析に必要な情報を取得することができるようになる効果を奏する。
【図面の簡単な説明】
【００４０】
【図１】この発明の実施の形態１による制御システムの障害監視装置を示す構成図である。
【図２】組込み制御システム１の動作モデルの入出力関係を示す説明図である。
【図３】動作モデルの状態遷移を示す状態遷移図である。
【図４】状態データ収集部２１がデータ形式を変換する際に参照する入力データ変換表の一例を示す説明図である。
【図５】制御データ収集部２２がデータ形式を変換する際に参照する出力データ変換表の一例を示す説明図である。
【図６】モデル要素が追加された動作モデルの状態遷移を示す状態遷移図である。
【図７】この発明の実施の形態２による制御システムの障害監視装置を示す構成図である。
【符号の説明】
【００４１】
１  組込み制御システム、２  制御対象、３  障害監視装置、１１  状態監視部、１２  プログラム実行部、１３  制御データ出力部、２１  状態データ収集部（状態監視手段）、２２  制御データ収集部（制御データ収集手段）、２３  障害検出条件設定部（設定受付手段）、２３ａ  モデル要素追加部（設定受付手段）、２４  モデルシミュレーション実行部（障害検出手段）、２４ａ  障害検出条件判定部（障害検出手段）、２５  トレース記録部（データ記録手段）、２５ａ  一時記録部、２５ｂ  データ保存部。
【図１】
2006331113.tif 000003
【図２】
2006331113.tif 000004
【図３】
2006331113.tif 000005
【図４】
2006331113.tif 000006
【図５】
2006331113.tif 000007
【図６】
2006331113.tif 000008
【図７】
2006331113.tif 000009