| 【発明の名称】 |
検証パターン生成装置及び方法、並びに検証パターン生成プログラム |
| 【発明者】 |
【氏名】尾口 健太郎
【氏名】溝部 達也
|
| 【要約】 |
【課題】検証仕様の内容を動作図として予め記述することなく、容易にシーケンスプログラムを検証する。
【解決手段】要素選定部24は、用語辞書データベース21に記憶された用語辞書を参照しながら、前記シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する複数の検証項目に含まれる要素名称とのマッチングを行って、マッチングした要素名称を選定する。個別検証パターン生成部25は、要素選定部24で選定された要素名称と、当該要素名称に対応する要素アドレスと、検証内容データベース22に記憶された検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する。 |
【特許請求の範囲】
【請求項1】 要素名称及び要素アドレスを含む設備制御コンピュータのシーケンスプログラムから、前記設備制御コンピュータを検証するための検証パターンを生成する検証パターン生成装置であって、規格用語及びそれに対応する要素名称との関係を示す用語辞書を記憶する用語辞書記憶手段と、前記設備制御コンピュータの検証内容を予め複数の検証項目に分類して記憶する検証内容記憶手段と、前記用語辞書記憶手段に記録された用語辞書を参照しながら、前記シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する各検証項目に含まれる要素名称とのマッチングを行って、マッチングした要素名称を選定する選定手段と、前記マッチング手段から出力された要素名称と、当該要素名称に対応する要素アドレスと、前記検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する個別検証パターン生成手段と、を備えた検証パターン生成装置。 【請求項2】 前記個別検証パターン生成手段で生成された個別検証パターンを前記設備制御コンピュータに送信して前記設備制御コンピュータの動作を検証する検証手段を更に備えたことを特徴とする請求項1記載の検証パターン生成装置。 【請求項3】 要素名称及び要素アドレスを含む設備制御コンピュータのシーケンスプログラムから、前記設備制御コンピュータを検証するための検証パターンを生成する検証パターン生成方法であって、規格用語及びそれに対応する要素名称との関係を示す用語辞書を参照しながら、前記シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する複数の検証項目に含まれる要素名称とのマッチングを行って、マッチングした要素名称を選定する選定工程と、前記選定工程で選定された要素名称と、当該要素名称に対応する要素アドレスと、前記検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する個別検証パターン生成工程と、を備えた検証パターン生成方法。 【請求項4】 前記個別検証パターン生成工程で生成された個別検証パターンを前記設備制御コンピュータに送信して前記設備制御コンピュータの動作を検証する検証工程を更に備えたことを特徴とする請求項3記載の検証パターン生成方法。 【請求項5】 要素名称及び要素アドレスを含む設備制御コンピュータのシーケンスプログラムから、前記設備制御コンピュータを検証するための検証パターンを生成する検証パターン生成プログラムであって、コンピュータを、規格用語及びそれに対応する要素名称との関係を示す用語辞書を記憶する用語辞書記憶手段と、前記設備制御コンピュータの検証内容を予め複数の検証項目に分類して記憶する検証内容記憶手段と、前記用語辞書記憶手段に記録された用語辞書を参照しながら、前記シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する各検証項目に含まれる要素名称とのマッチングを行って、マッチングした要素名称を選定する選定手段と、前記マッチング手段から出力された要素名称と、当該要素名称に対応する要素アドレスと、前記検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する個別検証パターン生成手段と、して機能させるための検証パターン生成プログラム。 【請求項6】 前記コンピュータを、前記個別検証パターン生成手段で生成された個別検証パターンを前記設備制御コンピュータに送信して前記設備制御コンピュータの動作を検証する検証手段として更に機能させることを特徴とする請求項5記載の検証パターン生成プログラム。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、検証パターン生成装置及び方法、並びに検証パターン生成プログラムに係り、特に、工場内の機械設備を制御するプログラマブル・ロジック・コントローラ(Programmable Logic Controller:以下「PLC」という。)のシーケンスプログラムを検証するのに用いて好適な検証パターン生成装置及び方法、並びに検証パターン生成プログラムに関する。 【0002】 【従来の技術及び発明が解決しようとする課題】工場内に設置された搬送装置や加工装置等の機械設備は、一般に、PLCによって制御されている。PLCは、安全性を確保する観点から、工場内の各設備機械の基本的な動作を一元して管理している。したがって、PLCを設計した場合や仕様を変更した場合には、PLCのシーケンスが正常に動作するかを検証する必要がある。 【0003】例えば、特開平8−305422号公報(以下「先行技術文献」という。)では、PLCに搭載されたシーケンスプログラムの正確性を検証すると共に、タイムチャートを基礎にして作成されたシーケンスプログラムから最終的に一覧性を有する動作図を作成するシーケンスプログラムのチェック方法及び装置が提案されている。先行技術文献によれば、シーケンスプログラムのチェックを行うコンピュータは、PLCにオンラインで接続されており、PLCに対して条件設定を行い、シーケンスプログラムによる動作を検証仕様の動作図と比較対照して、検証を実行する。 【0004】したがって、シーケンスプログラムのチェックを行うコンピュータは、設備の動作仕様が予め動作図として明記されていなければシーケンスプログラムを検証することができない問題があった。 【0005】さらに、設備には動作仕様として明記されていないが、一般的な仕様として準拠すべき項目が多くある。このため、多くの設備の共通する検証項目を検証する場合においても、その内容を設備毎に動作図として記述しなければ検証を行うことができず、オペレータの負担も大きかった。 【0006】本発明は、上述した課題を解決するために提案されたものであり、検証仕様の内容を動作図として予め記述することなく、容易にシーケンスプログラムを検証することができる検証パターン生成装置及び方法、並びに検証パターン生成プログラムを提供することを目的とする。 【0007】 【課題を解決するための手段】請求項1記載の発明は、要素名称及び要素アドレスを含む設備制御コンピュータのシーケンスプログラムから、前記設備制御コンピュータを検証するための検証パターンを生成する検証パターン生成装置であって、規格用語及びそれに対応する要素名称との関係を示す用語辞書を記憶する用語辞書記憶手段と、前記設備制御コンピュータの検証内容を予め複数の検証項目に分類して記憶する検証内容記憶手段と、前記用語辞書記憶手段に記録された用語辞書を参照しながら、前記シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する各検証項目に含まれる要素名称とのマッチングを行って、マッチングした要素名称を選定する選定手段と、前記マッチング手段から出力された要素名称と、当該要素名称に対応する要素アドレスと、前記検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する個別検証パターン生成手段と、を備えている。 【0008】請求項3記載の発明は、要素名称及び要素アドレスを含む設備制御コンピュータのシーケンスプログラムから、前記設備制御コンピュータを検証するための検証パターンを生成する検証パターン生成方法であって、規格用語及びそれに対応する要素名称との関係を示す用語辞書を参照しながら、前記シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する複数の検証項目に含まれる要素名称とのマッチングを行って、マッチングした要素名称を出力する選定工程と、前記選定工程で選定された要素名称と、当該要素名称に対応する要素アドレスと、前記検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する個別検証パターン生成工程と、を備えている。 【0009】請求項5記載の発明は、要素名称及び要素アドレスを含む設備制御コンピュータのシーケンスプログラムから、前記設備制御コンピュータを検証するための検証パターンを生成する検証パターン生成プログラムであって、コンピュータを、規格用語及びそれに対応する要素名称との関係を示す用語辞書を記憶する用語辞書記憶手段と、前記設備制御コンピュータの検証内容を予め複数の検証項目に分類して記憶する検証内容記憶手段と、前記用語辞書記憶手段に記録された用語辞書を参照しながら、前記シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する各検証項目に含まれる要素名称とのマッチングを行って、マッチングした要素名称を選定する選定手段と、前記マッチング手段から出力された要素名称と、当該要素名称に対応する要素アドレスと、前記検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する個別検証パターン生成手段と、して機能させている。 【0010】本発明は、設備制御コンピュータの要素を特定するための要素名称を含むシーケンスプログラムから、設備制御コンピュータを検証するための個別検証パターンを生成する。 【0011】用語辞書は、規格用語及びそれに対応する要素名称との関係、すなわち、規格用語と当該規格用語の同義語である要素名称とを示している。規格用語は意味が統一された1つの語彙であるが、要素名称は設計者や設備メーカーによって異なっている。そこで、このような要素名称のばらつきをなくすために、用語辞書が用いられる。 【0012】設備制御コンピュータの検証内容は、予め複数の検証項目に分類して記憶されている。検証項目は、設備制御コンピュータの要素を所定の条件に設定することを示している。 【0013】つぎに、用語辞書を参照しながら、シーケンスプログラムに含まれる要素名称と、前記検証内容に対応する各検証項目に含まれる要素名称とのマッチングを行う。シーケンスプログラムに含まれる要素名称は設備メーカーや設計者によって異なっている。そこで、要素名称に用語辞書の規格名称を関連付けて、規格名称が関連付けられた要素名称と各検証項目の要素名称とをマッチングする。 【0014】そして、マッチングで得られた要素名称と、当該要素名称に対応する要素アドレスと、前記検証内容に対応する各検証項目とに基づいて、要素を所定の条件に設定するための個別検証パターンを生成する。これにより、本発明は、オペレータが設備毎に検証データを生成しなくても、各設備に対応した個別検証パターンを自動的に生成することができる。 【0015】請求項2記載の発明は、請求項1記載の発明において、前記個別検証パターン生成手段で生成された個別検証パターンを前記設備制御コンピュータに送信して前記設備制御コンピュータの動作を検証する検証手段を更に備えたことを特徴とする。 【0016】請求項4記載の発明は、請求項3記載の発明において、前記個別検証パターン生成工程で生成された個別検証パターンを前記設備制御コンピュータに送信して前記設備制御コンピュータの動作を検証する検証工程を更に備えたことを特徴とする。 【0017】請求項6記載の発明は、請求項5記載の発明において、前記コンピュータを、前記個別検証パターン生成手段で生成された個別検証パターンを前記設備制御コンピュータに送信して前記設備制御コンピュータの動作を検証する検証手段として更に機能させることを特徴とする。 【0018】本発明は、さらに、個別検証パターンを設備制御コンピュータに送信する。そして、設備制御コンピュータが個別検証パターンに対応する詳細項目を実行するかを確認することで、前記設備制御コンピュータの検証を行うことができる。 【0019】 【発明の実施の形態】以下、本発明の実施の形態について図面を参照しながら詳細に説明する。 【0020】図1に示すように、本発明の実施の形態に係るシーケンスプログラム検証装置10は、制御コンピュータ(以下「PLC」という。)30に対して条件設定を行い、PLC30の動作状態をモニタリングすることによって、制御コンピュータのシーケンスプログラムを検証するものである。 【0021】ここで、工場内に設置される制御コンピュータは、安全性を確保する観点から、工場内の各設備の起動や停止などの基本的な動作を一元して制御している。PLC30は、このように工場内に設置される実際の制御コンピュータに代わってシミュレートするコンピュータである。PLC30は、具体的には、制御コンピュータのシーケンスプログラムを記憶するプログラム記憶部31と、設定された条件に従って制御コンピュータや仮想設備の動作内容を演算してシミュレートするシミュレータ32とを備えている。 【0022】一方、シーケンスプログラム検証装置10は、マウスやキーボードからなる操作部11と、入力された条件に基づいてPLC30のシーケンスプログラムを検証する制御部12と、検証内容や検証結果等を表示する表示部13とを備えている。 【0023】表示部13には、例えば図2に示すように、検証内容を示す検証内容ウィンドウ50と、PLC30のシーケンスの動作状況を示すPLCウィンドウ60と、PLC30によって制御される仮想設備の動作状況を表示する設備シミュレータウィンドウ70と、が表示される。 【0024】検証内容ウィンドウ50は、PLC30の検証内容を選択したり、検証内容の編集を行うときに使用される。なお、検証内容ウィンドウ50の詳細については後述する。 【0025】PLCウィンドウ60は、例えば図3に示すように、PLC30のシーケンスをラダーで表示すると共に、実行時のシーケンスの各要素の様子をリアルタイムで表示する。ここで、シーケンスプログラムは、制御プログラムの他に、シーケンスの要素の名称である要素名称及び前記要素を特定するアドレス(以下「要素アドレス」という。)を含んでいる。例えば、要素名称としては「起動LS」、「全原位置」、「自動」等があり、要素アドレスとしては「X002」、「M008」、「X000」等がある。なお、要素名称は、日本語のテキストデータである。 【0026】設備シミュレータウィンドウ70は、PLC30によって制御される仮想設備の動作状況をリアルタイムでサイクル線図を用いて表示する。 【0027】図4は、制御部12のソフトウェア構成を示すブロック図である。制御部12は、用語辞書を記憶する用語辞書データベース21と、PLC30の検証内容を記憶する検証内容データベース22と、検証内容を編集する検証内容エディタ23と、シーケンスプログラムと用語辞書とのマッチングを行う要素選定部24と、検証パターンを生成する個別検証パターン生成部25と、PLC30を検証する自動検証部26とを備えている。 【0028】用語辞書データベース21は、図5に示すように、規格用語に対応する同義語を表した用語辞書を記憶している。ここで、シーケンスプログラムに含まれる要素名称は、設計者によって付されたものであるため、設計者が所属する設備メーカーによって多少異なっている。そこで、異なる要素名称を統一するため、最も一般的な要素名称を「規格用語」とし、この規格用語と同じ意味の要素名称を「同義語」とした。例えば図5によると、「起動釦」は規格用語であり、「起動釦」の同義語として「起動スイッチ」、「起動LS」、「起動ボタン」がある。 【0029】検証内容データベース22は、図6に示すように、安全に関する複数の検証内容と、検証内容を実行するためにシーケンスの各要素の条件設定を行う複数の検証項目と、を記憶している。 【0030】検証内容としては、例えば「設備に異常がある場合は起動釦を押しても設備が起動してはいけない」、「起動釦が故障(溶着)した時、続けて次のサイクルに入らない」などである。なお、検証内容の文章は、解釈に疑義が生じないように、規格用語を用いて記述されている。 【0031】検証内容の内容を実行するためには、各検証項目に従って各要素に所定の条件を設定する必要がある。ここで、検証項目は、検証を行うための前提条件を設定する「前提」、検証を行うために要素に所定の動作を行わせる「アクション」、所定の要素が予想通りに動作するかを検証する「検証」の3つに分類される。そこで、検証項目は、上記3種類のいずれにも対応するように、定型的に記述されている。 【0032】例えば図6において、検証内容「設備に異常がある場合は起動釦を押しても設備が起動してはいけない」に対して、検証項目1:「運転準備をONに設定する」(前提) 検証項目2:「設備異常をONに設定する」(前提) 検証項目3:「起動釦をONに設定する」(アクション) 検証項目4:「自動運転中がOFFかどうか検証する」(検証) が設定されている。なお、他の検証内容の詳細については省略するが、同様に、複数の検証項目が設定されている。 【0033】このように、検証項目は、「(要素)を(状態)に設定する」又は「(要素)が(状態)かどうか検証する」という定型文で記述されている。なお、(要素)には、解釈に疑義が生じないように規格用語が用いられる。 【0034】また、検証項目の中には、一般的な仕様として準拠すべき項目も含まれている。したがって、1つの検証内容に対して予め複数の検証項目を設定することによって、多くの設備に共通する検証内容を検証する場合であっても、個別の設備用の動作図を作成しなくても検証することができる。 【0035】検証内容エディタ23は、オペレータの操作部11の操作に応じて、検証内容データベース22に記憶されている検証項目の要素や状態を変換して、検証項目を編集することができる。このとき、オペレータは、シーケンスプログラム検証装置10の表示部13に展開されている検証内容ウィンドウ50に対して、マウスを用いて所望の検証内容を選択したり、検証項目の中から所望の要素や状態を選択すればよい。 【0036】検証内容ウィンドウ50は、具体的には図7に示すように、複数の検証内容の中から1つだけ表示する検証内容ボックス51と、検証内容ボックス51に対応する複数の検証項目をそれぞれ表示する検証項目ボックス53a,53b,53c,53dと、で構成されている。 【0037】検証内容ボックス51は、検証内容ボタン51aがクリックされると、すべての検証内容を表示する図示しないプルダウンメニューを表示する。そして、オペレータが操作部11を操作して所望の検証内容を選択すると、検証内容ボックス51は選択された検証内容を表示する。 【0038】検証項目ボックス53a,53b,53c,53dは、検証内容ボックス51に表示されている検証内容に対応した検証項目をそれぞれ表示する。したがって、検証項目ボックス53a,53b,53c,53dは、検証内容ボックス51に表示される検証内容が変わると、変更後の検証内容に応じた検証項目をそれぞれ表示するようになっている。なお、図7では検証内容に対応する検証項目の数が4つの場合を例にして説明しているが、検証項目の数は3つでもよいし、5つ以上であってもよい。 【0039】要素選定部24は、用語辞書データベース21に記憶されている用語辞書を参照しながら、検証内容データベース22に記憶されている1つの検証内容と、要素名称や要素アドレスを含んだシーケンスプログラムとのマッチングを行う。なお、制御コンピュータのメーカーや設計者によってシーケンスプログラムに含まれる要素名称が規格用語であるとは限らないので、要素選定部24は用語辞書を参照ながらマッチングを行っている。そして、要素選定部24は、検証すべき3以上の要素を選定して、当該要素の要素名称及び要素アドレスを記憶する。 【0040】このように、要素選定部24は、シーケンスプログラムに含まれる要素名称に規格用語を関連付け、各要素名称と、検証内容データベース22に記憶されている検証項目の各要素とをマッチングさせることによって、検証対象となる要素を特定している。 【0041】個別検証パターン生成部25は、用語辞書データベース21、検証内容データベース22、要素名称及び要素アドレスを用いて、PLC30に命令するための個別検証パターンを生成する。 【0042】自動検証部26は、個別検証パターン生成部25で生成された個別検証パターンをPLC30に送信し、PLC30の動作状態をモニタリングして、PLC30のシーケンスプログラムの検証を行う。 【0043】以上のように構成されたシーケンスプログラム検証装置10は、オペレータの検証内容を選択に応じて、次の手順に従ってPLC30の検証を行う。 【0044】なお、本実施の形態では、検証内容として「設備に異常がある場合は起動釦を押しても設備が起動してはいけない」が選択され、この検証項目に対応する検証項目1〜4は編集されていないものとする。 【0045】最初に、要素選定部24は、図8に示すステップST1からステップST4までの処理を実行する。 【0046】ステップST1において、要素選定部24は、検証内容データベース22から検証内容を読み込むと共に、PLC30からシーケンスプログラムを読み込んで、ステップST2に移行する。なお、シーケンスプログラムには、例えば以下に示す要素アドレス及び要素名称の組(要素アドレス,要素名称)が含まれているものとする。 【0047】(X000,自動) (X001,運転準備) (M001,設備異常) (X002,起動LS) (M002,自動運転中) (M008,全原位置) ステップST2において、要素選定部24は、用語辞書データベース21に記憶されている用語辞書を参照して、シーケンスプログラムと検証内容の関連付け(マッチング)を行って、ステップST3に移行する。 【0048】具体的には、要素選定部24は、シーケンスプログラムに含まれる要素名称と、検証内容を構成する複数の検証項目に含まれる要素名称とのマッチングを行う。検証項目に含まれる要素名称は規則用語で記述されているが、シーケンスプログラムに含まれる要素名称は規則用語で記述されていない場合がある。この場合、要素選定部24は、用語辞書を参照して要素名称を規則用語に翻訳し、翻訳した要素名称と検証項目に含まれる要素名称とをマッチングする。 【0049】例えば、上述したようなシーケンスプログラムの場合、要素選定部24は、用語辞書を参照して「起動LS」を「起動釦」に翻訳する。そして、要素選定部24は、シーケンスプログラムに含まれる各要素名称「自動」,「運転準備」,「設備異常」,「起動LS(起動釦)」,「自動運転中」,「全原位置」と、図7に示す検証項目ボックス53a,53b,53c,53dに表示された各要素名称「運転準備」,「設備異常」,「起動釦」,「自動運転中」との関連付けを行う。 【0050】ステップST3において、要素選定部24は、シーケンスプログラムと検証項目との間で関連する要素名称があるかを判定し、関連する要素名称があるときはステップST4に移行し、関連する要素名称がないときは処理を終了する。例えば、上述したようなシーケンスプログラムの場合、「運転準備」,「設備異常」,「起動LS」,「自動運転中」の4つの要素名称が関連している。 【0051】ステップST4において、要素選定部24は、関連する要素名称を選定すると共に、当該要素名称を保存して、処理を終了する。例えば、上述したようなシーケンスプログラムの場合、要素選定部24は、上記4つの要素名称を選定して、これらの要素名称及び要素アドレスを保存して処理を終了する。 【0052】個別検証パターン生成部25は、要素選定部24で選定された4つの要素名称及び要素アドレスに基づいて個別検証パターンを生成すべく、図9に示すステップST11からステップST17までの処理を実行する。 【0053】ステップST11において、個別検証パターン生成部25は、個別検証パターンを生成するのに必要な要素名称があるかを判定し、必要な要素名称があるときはステップST12に移行し、必要な要素名称がないときは処理を終了する。 【0054】ステップST12において、個別検証パターン生成部25は、要素選定部24で選定されたすべての要素名称に対してそれぞれ個別検証パターンが存在するかを判定し、すべての要素名称に対して個別検証パターンが存在するときはステップST17に移行し、すべての要素名称に対して個別検証パターンが存在しないときはステップST13に移行する。 【0055】ステップST13において、個別検証パターン生成部25は、PLC30からシーケンスプログラムを読み込み、読み込んだシーケンスプログラムを保存して、ステップST14に移行する。 【0056】ステップST14において、個別検証パターン生成部25は、用語辞書データベース21に記憶されている用語辞書を参照し、要素選定部24で選定された要素名称に関連付けを行って、ステップST15に移行する。ここでは、「起動LS」に「起動釦」を関連付ける。 【0057】ステップST15において、個別検証パターン生成部25は、要素選定部24で選定された各要素名称及び関連付けされた要素名称を用いて、検証項目1〜4にそれぞれ対応する個別検証パターンを生成して、ステップST16に移行する。上述したようなシーケンスプログラムの場合、個別検証パターン生成部25は、次に示すような個別検証パターンを生成する。 【0058】個別検証パターン生成部25は、要素名称「運転準備」について、検証項目1の条件に設定するための個別検証パターンsetPlc(****,ON)を生成する。同様にして、個別検証パターン生成部25は、要素名称「設備異常」,「起動LS」,「自動運転中」のそれぞれについて、検証項目2〜4の条件に設定するための個別検証パターンsetPlc(****,ON) setPlc(****,ON) checkPlc(****,OFF) を生成する。なお、「****」は、要素アドレスが記述される場所を示している。 【0059】ステップST16において、個別検証パターン生成部25は、各要素名称の個別検証パターンに対して、それぞれ対応する要素アドレスを付加して、ステップST12に戻る。例えば上述したような個別検証パターンの場合、次に示すように要素アドレスする。 【0060】「運転準備」に関する検証項目1:setPlc(X001,ON) 「設備異常」に関する検証項目2:setPlc(M001,ON) 「起動LS」に関する検証項目3:setPlc(X002,ON) 「自動運転中」に関する検証項目4:checkPlc(M002,OFF) そして、個別検証パターン生成部25は、ステップST12からステップST16までの処理を繰り返し、すべての検証項目について個別検証パターンを生成すると、ステップST17に移行する。 【0061】ステップST17において、個別検証パターン生成部25は、各個別検証パターンを保存すると共に、自動検証処理に移行すべく、個別検証パターン生成処理を終了する。 【0062】自動検証部26は、個別検証パターン生成部25で生成された各要素における個別検証パターンをPLC30に送信することで、検証項目が示す前提及び動作になるようにPLC30を設定する。そして、PLC30の仮想動作状態をモニタリングし、検証項目が示す検証通りになるかの確認を行う。具体的には、自動検証部26は、図10に示すステップST21からステップST30までの処理を実行する。 【0063】ステップST21において、自動検証部26は、PLC30を検証するのに必要な個別検証パターンがあるかを判定し、必要な個別検証パターンがあるときはステップST22に移行し、必要な個別検証パターンがないときは処理を終了する。 【0064】ステップST22において、自動検証部26は、まだ個別検証パターンをPLC30に送信していないか、すなわち未検証の個別検証パターンがあるかを判定し、未検証の個別検証パターンがあるときはステップST23に移行し、未検証の個別検証パターンがないときはステップST30に移行する。 【0065】ステップST23において、自動検証部26は、個別検証パターン生成部25からすべての個別検証パターンを読み出して保存し、ステップST24に移行する。 【0066】ステップST24において、自動検証部26は、PLC30の初期状態を設定する。自動検証部26は、具体的には、検証項目の「前提」に対応する個別検証パターンsetPlc(X001,ON) setPlc(M001,ON) をPLC30に送信して、ステップST25に移行する。これにより、PLC30は、前提状態として、運転準備をONに設定すると共に、異常設備をONに設定することができる。 【0067】ステップST25において、自動検証部26は、PLC30が出力する信号をモニタリングすることでPLC30の仮想動作が終了したかを判定し、仮想動作が終了したときはステップST28に移行し、仮想動作が終了していないときはステップST26に移行する。 【0068】ステップST26において、自動検証部26は、PLC30にシミュレーションを行わせて、ステップST27に移行する。 【0069】ステップST27において、自動検証部26は、PLC30の動作状態を設定する。自動検証部26は、具体的には、検証項目の「アクション」に対応する個別検証パターンsetPlc(X002,ON) をPLC30に送信して、ステップST27に移行する。これにより、PLC30は、前提状態の下で、起動LSをONに設定することができる。 【0070】自動検証部26は、このようにステップST24からステップST27までの処理を行うことで、検証項目の「前提」及び「アクション」に対応する個別検証パターンをPLC30に送信する。 【0071】ステップST25で仮想動作が終了したと判定したときのステップST28において、自動検証部26は、PLC30の仮想動作状態が予想動作状態に一致したかを検証して、ステップST29に移行する。ここでは、自動検証部26は、検証項目の「検証」に対応する個別検証パターンcheckPlc(M002,OFF) をPLC30に送信して、PLC30の現在の状態が当該個別検証パターンに一致するかを検証する。ここでは、自動検証部26は、PLC30のシミュレート結果をモニタリングすることで、「自動運動中」がOFFになったかを検証する。 【0072】ステップST29において、自動検証部26は、合致した又は合致していない検証項目を記憶して、ステップST22に戻る。このように、自動検証部26は、ステップST22からステップST29までの処理を実行することで、各個別検証パターンをPLC30に送信して、PLC30の動作状態を検証することができる。 【0073】そして、ステップST22で未検証の個別検証パターンがないと判定したときのステップST30において、自動検証部26は、ステップST29で保存されたPLC30の検証結果を図1に示す表示部13に表示させて、自動検証処理を終了する。 【0074】以上のように、上記シーケンスプログラム検証装置10は、PLC30の検証内容に対応する複数の検証項目を予め検証内容データベース22に記憶しておき、シーケンスプログラムに含まれる要素名称と検証項目とをマッチングさせることで、要素名称が付加された個別検証パターンを自動的に生成することができる。 【0075】この結果、オペレータは、設備毎に検証用データを作成する手間を省いて、PLC30を容易に検証することができる。すなわち、従来は各設備に共通する検証内容であっても設備毎に検証パターンを生成する必要があったのに対して、上記シーケンスプログラム検証装置10は、シーケンスプログラムに要素名称及び要素アドレスが含まれていれば、個別検証パターンを自動的に生成して、PLC30を検証することができる。 【0076】また、シーケンスプログラム検証装置10は、要素名称のばらつきの影響を受けないようにするために、要素名称に規格用語を関連付けるための用語辞書を用語辞書データベース21に記憶することで、個別検証パターンを自動的に生成することができる。 【0077】特に、設備メーカーから様々な設備を購入して自動車を生産するラインを構築する場合、設計管理者又はオペレータは、設備使用時の安全性を確保することができると共に、生産準備期間を短縮化することができ、さらに、設備制御プログラムのミスや、誤操作によって設備停止が生じることによる生産ロスの抑制を事前に確認することができる。 【0078】一方、設備メーカーのオペレータは、複数種類の設備を複数の設計者が設計する場合であっても、設備の品質確認を容易に行うことができる。 【0079】本発明は、上述した実施の形態に限定されるものではなく、以下の場合にも適用することができる。要素名称は、日本語に限らず、アルファベットや記号であってもよい。また、要素名称の代わりにリレー番号を用いてもよい。 【0080】本実施の形態では、オペレータは、検証項目を編集しなかったが、検証項目を編集することもできる。例えば図7において、検証項目ボックス53aに表示された検証項目1の「運転準備」をオペレータがクリックすると、要素名称の候補を表した図示しないプルダウンメニューが表示される。このとき、オペレータは、検証項目1の要素名称を変えることができるようになる。また、オペレータは「ON」をクリックすると、状態候補を表した図示しないプルダウンメニューが表示され、検証項目1の状態を変えることができるようになる。その他の検証項目ボックス53b,53c,53dについても同様である。 【0081】また、本実施の形態に係るシーケンスプログラム検証装置10は、コンピュータに所定の制御プログラムをインストールすることにより構成されているものでもよい。 【0082】 【発明の効果】請求項1、請求項3、請求項5記載の発明は、規格用語及びそれに対応する要素名称との関係を示す用語辞書を参照しながら、シーケンスプログラムに含まれる要素名称と、検証内容に対応する複数の検証項目に含まれる要素名称とのマッチングを行う。そして、要素名称及び要素アドレス、検証内容に対応する各検証項目に基づいて、要素を所定の条件に設定するための個別検証パターンを生成することにより、オペレータが設備毎にデータを制作することなく、設備制御コンピュータを検証するための個別検証パターンを自動的に生成することができる。 【0083】請求項2、請求項4,請求項6記載の発明は、個別検証パターンを前記設備制御コンピュータに送信して前記設備制御コンピュータの動作を検証することにより、検証仕様の内容を動作図として予め記述することなく、容易にシーケンスプログラムを検証することができる。
|
| 【出願人】 |
【識別番号】000003609 【氏名又は名称】株式会社豊田中央研究所 【識別番号】000003207 【氏名又は名称】トヨタ自動車株式会社
|
| 【出願日】 |
平成13年3月30日(2001.3.30) |
| 【代理人】 |
【識別番号】100079049 【弁理士】 【氏名又は名称】中島 淳 (外1名)
|
| 【公開番号】 |
特開2002−297205(P2002−297205A) |
| 【公開日】 |
平成14年10月11日(2002.10.11) |
| 【出願番号】 |
特願2001−101996(P2001−101996) |
|