(57)【要約】【課題】プログラマブルコントローラ及び外部機器を接続せずにデータ送受信を含めたプログラムの検証を行うことができるプログラマブルコントローラのプログラムのシミュレーション装置、及び方法を提供する。【解決手段】ツールソフト３は、ＰＬＣ１及び外部機器２を接続しない状態で、プログラム格納エリア３２内のプログラムをＰＬＣ仮想実行部３３で実行する。プログラム中にＰＬＣ１から外部機器２へデータを送信する処理が含まれる場合、プログラムに従って作成した送信データが送受信データ格納エリア３４内に登録されていれば、送受信データ格納エリア３４内の送信データに対応する受信データを内部メモリ３５にセットする。プログラム内に受信処理がある場合、ＰＬＣ仮想実行部３３は内部メモリ３５を参照し、送信データに対応して受信されるであろう受信データに基づいてプログラムを動作させる。【選択図】        図１
2004258926.tif 000002
【特許請求の範囲】
【請求項１】
外部機器を接続したプログラマブルコントローラを動作させるためのプログラムの作成手段と、プログラマブルコントローラと同様にプログラムを動作させるＰＬＣ仮想実行手段と、プログラマブルコントローラから外部機器への送信データとその送信データに対応してプログラマブルコントローラが外部機器から受信する受信データとを予め記憶している第１の記憶手段と、プログラム中にプログラマブルコントローラから外部機器へのデータ送信処理がある場合、前記データ送信処理の送信データに対応してプログラマブルコントローラが外部機器から受信する受信データを第１の記憶手段を参照して記憶する第２の記憶手段とを備え、ＰＬＣ仮想実行手段は、プログラム中に前記データ送信処理に対応するデータ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する受信データに基づいてプログラムを実行することを特徴とするプログラマブルコントローラのプログラムのシミュレーション装置。
【請求項２】
位置決めユニットを介して外部機器の位置決め制御を行うプログラマブルコントローラを動作させるためのプログラムの作成手段と、プログラマブルコントローラと同様にプログラムを動作させるＰＬＣ仮想実行手段と、プログラマブルコントローラから位置決めユニットへ送信する外部機器の位置決めデータとその位置決めデータによる位置決め完了時にプログラマブルコントローラが位置決めユニットから受信する完了データとを予め記憶している第１の記憶手段と、プログラム中にプログラマブルコントローラから位置決めユニットへ外部機器の位置決めデータ送信処理がある場合、前記データ送信処理の位置決めデータに対応してプログラマブルコントローラが位置決めユニットから受信する完了データを第１の記憶手段を参照して記憶する第２の記憶手段とを備え、ＰＬＣ仮想実行手段は、プログラム中に前記データ送信処理に対応する完了データ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の位置決めデータに対応する完了データに基づいてプログラムを実行することを特徴とするプログラマブルコントローラのプログラムのシミュレーション装置。
【請求項３】
外部機器を接続したプログラマブルコントローラを動作させるためのプログラムの検証をプログラマブルコントローラ及び外部機器を接続しない状態で行い、プログラム中にプログラマブルコントローラから外部機器へのデータ送信処理がある場合、送信データとその送信データに対応してプログラマブルコントローラが外部機器から受信する受信データとを予め記憶している第１の記憶手段を参照して前記データ送信処理の送信データが登録されておれば、前記データ送信処理の送信データに対応してプログラマブルコントローラが外部機器から受信する受信データを第２の記憶手段に記憶させ、プログラム中に前記データ送信処理に対応するデータ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する受信データに基づいてプログラムを実行することを特徴とするプログラマブルコントローラのプログラムのシミュレーション方法。
【請求項４】
位置決めユニットを介して外部機器の位置決め制御を行うプログラマブルコントローラを動作させるためのプログラムの検証をプログラマブルコントローラ、位置決めユニット、及び外部機器を接続しない状態で行い、プログラム中にプログラマブルコントローラから位置決めユニットへ外部機器の位置決めデータ送信処理がある場合、送信する位置決めデータとその位置決めデータによる位置決め完了時にプログラマブルコントローラが位置決めユニットから受信する完了データとを予め記憶している第１の記憶手段を参照して前記データ送信処理の位置決めデータが登録されておれば、前記データ送信処理の位置決めデータに対応してプログラマブルコントローラが位置決めユニットから受信する完了データを第２の記憶手段に記憶させ、プログラム中に前記データ送信処理に対応する完了データ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する完了データに基づいてプログラムを実行することを特徴とするプログラマブルコントローラのプログラムのシミュレーション方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラマブルコントローラを動作させるためのプログラムを検証するプログラマブルコントローラのプログラムのシミュレーション装置、及び方法に関するものである。
【０００２】
【従来の技術】
プログラマブルコントローラ（以下ＰＬＣと称す）を動作させるためのプログラムの検証は、プログラムを作成するプログラム開発ツール（以下ツールソフトと称す）からＰＬＣにプログラムを転送して、ＰＬＣ上で行っていた。また、ＰＬＣと外部機器との間でデータの送受信を行うようなプログラムを検証する場合は、実際にＰＬＣに外部機器を接続してＰＬＣ上で検証を行っていた。さらに、ＰＬＣと同様にプログラムを動作させるＰＬＣ仮想実行手段をツールソフト上に搭載し、ＰＬＣをツールソフトに接続することなく、ツールソフト上のＰＬＣ仮想実行手段で検証を行う装置、方法もあった。（例えば、特許文献１参照。）
【０００３】
【特許文献１】
特開２０００−２７６２１２号公報（２頁右欄第３９行〜３頁左欄第６行、６頁左欄第４８行〜右欄第９行、図１）
【０００４】
【発明が解決しようとする課題】
ＰＬＣ上でプログラムの検証を行う場合は、まず少なくともＰＬＣを用意しなければならず、さらに必要によっては外部機器も用意しなければならず、検証のための環境を整える必要があり、何らかの事情でこれらの装置，機器が揃わない場合はプログラムの検証が進まないという問題があった。
【０００５】
またツールソフト上でプログラムの検証を行う場合は、ＰＬＣを用意する必要はないが、ＰＬＣと外部機器との間のデータ等の送受信を含めた検証を行うことはできなかった。
【０００６】
本発明は、上記事由に鑑みてなされたものであり、その目的は、プログラマブルコントローラ及び外部機器を接続せずにデータ送受信を含めたプログラムの検証を行うことができるプログラマブルコントローラのプログラムのシミュレーション装置、及び方法を提供することにある。
【０００７】
【課題を解決するための手段】
請求項１の発明は、外部機器を接続したプログラマブルコントローラを動作させるためのプログラムの作成手段と、プログラマブルコントローラと同様にプログラムを動作させるＰＬＣ仮想実行手段と、プログラマブルコントローラから外部機器への送信データとその送信データに対応してプログラマブルコントローラが外部機器から受信する受信データとを予め記憶している第１の記憶手段と、プログラム中にプログラマブルコントローラから外部機器へのデータ送信処理がある場合、前記データ送信処理の送信データに対応してプログラマブルコントローラが外部機器から受信する受信データを第１の記憶手段を参照して記憶する第２の記憶手段とを備え、ＰＬＣ仮想実行手段は、プログラム中に前記データ送信処理に対応するデータ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する受信データに基づいてプログラムを実行することを特徴とする。
【０００８】
請求項２の発明は、位置決めユニットを介して外部機器の位置決め制御を行うプログラマブルコントローラを動作させるためのプログラムの作成手段と、プログラマブルコントローラと同様にプログラムを動作させるＰＬＣ仮想実行手段と、プログラマブルコントローラから位置決めユニットへ送信する外部機器の位置決めデータとその位置決めデータによる位置決め完了時にプログラマブルコントローラが位置決めユニットから受信する完了データとを予め記憶している第１の記憶手段と、プログラム中にプログラマブルコントローラから位置決めユニットへ外部機器の位置決めデータ送信処理がある場合、前記データ送信処理の位置決めデータに対応してプログラマブルコントローラが位置決めユニットから受信する完了データを第１の記憶手段を参照して記憶する第２の記憶手段とを備え、ＰＬＣ仮想実行手段は、プログラム中に前記データ送信処理に対応する完了データ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の位置決めデータに対応する完了データに基づいてプログラムを実行することを特徴とする。
【０００９】
請求項３の発明は、外部機器を接続したプログラマブルコントローラを動作させるためのプログラムの検証をプログラマブルコントローラ及び外部機器を接続しない状態で行い、プログラム中にプログラマブルコントローラから外部機器へのデータ送信処理がある場合、送信データとその送信データに対応してプログラマブルコントローラが外部機器から受信する受信データとを予め記憶している第１の記憶手段を参照して前記データ送信処理の送信データが登録されておれば、前記データ送信処理の送信データに対応してプログラマブルコントローラが外部機器から受信する受信データを第２の記憶手段に記憶させ、プログラム中に前記データ送信処理に対応するデータ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する受信データに基づいてプログラムを実行することを特徴とする。
【００１０】
請求項４の発明は、位置決めユニットを介して外部機器の位置決め制御を行うプログラマブルコントローラを動作させるためのプログラムの検証をプログラマブルコントローラ、位置決めユニット、及び外部機器を接続しない状態で行い、プログラム中にプログラマブルコントローラから位置決めユニットへ外部機器の位置決めデータ送信処理がある場合、送信する位置決めデータとその位置決めデータによる位置決め完了時にプログラマブルコントローラが位置決めユニットから受信する完了データとを予め記憶している第１の記憶手段を参照して前記データ送信処理の位置決めデータが登録されておれば、前記データ送信処理の位置決めデータに対応してプログラマブルコントローラが位置決めユニットから受信する完了データを第２の記憶手段に記憶させ、プログラム中に前記データ送信処理に対応する完了データ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する完了データに基づいてプログラムを実行することを特徴とする。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【００１２】
（実施形態１）
本実施形態は図１に示され、プログラマブルコントローラ１（以下ＰＬＣ１と称す）は、内部に格納したプログラムを実行することで動作し、外部機器２と接続してデータの送信を行い、送信したデータに対応したデータを外部機器２から受信する。
【００１３】
ツールソフト３はＰＬＣ１を動作させるためのプログラムを作成、検証するもので、プログラムを作成するプログラム作成部３０と、ＰＬＣ１との間でプログラムやデータのやり取りを行うためのＰＬＣ接続用インターフェース３１と、プログラム作成部３０で作成したプログラムあるいはインターフェース部３１を介してＰＬＣ１から転送したプログラムが格納されるプログラム格納エリア３２と、ＰＬＣ１と同様にプログラムを動作させるＰＬＣ仮想実行部３３と、ＰＬＣ１から外部機器２への送信データとその送信データに対応して外部機器２からＰＬＣ１が受信する受信データとを予め記憶している送受信データ格納エリア３４（第１の記憶手段）と、ＰＬＣ仮想実行部３２で用いるデータ等を記憶する内部メモリ３５（第２の記憶手段）とから構成される。
【００１４】
図１に示す送受信データ格納エリア３４は、実際にＰＬＣ１に外部機器２が接続されて、ＰＬＣ１から外部機器２に「ＡＢＣ」、「ＸＸＸ」、「５５５」、「ＳＴＩ」という各データが送信された場合に、外部機器２からＰＬＣ１に「ＸＹＺ」、「ＡＡＡ」、「ＩＭＰ」、「ＲＡＣ」という各データが各々返信される仕様であることを意味している。
【００１５】
上記構成を備えるツールソフト３は、ＰＬＣ１及び外部機器２を接続しない状態で、プログラム格納エリア３２に格納したプログラムを検証するシミュレーション機能を有しており、以下、図２のフローチャートを用いて説明する。まずプログラム検証処理が開始されると、プログラム格納エリア３２内のプログラムをＰＬＣ仮想実行部３３で実行する（ステップＳ１）。ＰＬＣ仮想実行部３３は、プログラム中にＰＬＣ１から外部機器２へデータを送信する処理が含まれる場合、送信されるデータをプログラムに従って作成する（ステップＳ２）。その後、送受信データ格納エリア３４を参照し（ステップＳ３）、作成した送信データが送受信データ格納エリア３４内の送信データに登録されているかをチェックする（ステップＳ４）。登録がある場合は、送受信データ格納エリア３４内の送信データに対応する受信データを内部メモリ３５にセットする（ステップＳ５）。
【００１６】
そしてプログラム中にステップＳ２の送信処理に対応する受信処理がある場合（ステップＳ６）、ＰＬＣ仮想実行部３３は内部メモリ３５を参照し（ステップＳ７）、送信したデータに対応して受信されるであろうデータに基づいてプログラムを動作させる（ステップＳ８）。
【００１７】
したがって、少なくとも「プログラムが仕様通りの送信データを生成しているか」という検証と「仕様通りの受信データを受信したと仮定すると、その処理は正しく動作するか」という検証が、ＰＬＣ１や外部機器２を接続することなく実行できる。なお、ステップＳ２，Ｓ４，Ｓ６の判断処理がＮｏの場合はステップＳ２に戻る。
【００１８】
（実施形態２）
本実施形態は図３に示され、ＰＬＣ１は、内部に格納したプログラムを実行することで動作する。そして、位置決めユニット４に位置決めデータを送信することで、位置決めユニット４を介して接続した例えばモータ等の外部機器２の位置決め制御を行い、外部機器２の位置決めが完了した時点で完了データを位置決めユニット４から受信する。
【００１９】
ツールソフト３の構成は実施形態１の送受信データ格納エリア３４を位置決めデータ格納エリア３６に置き換えたものであり、他の構成は実施形態１と同様なので同様の構成には同一の符号を付して、説明は省略する。
【００２０】
位置決めデータ格納エリア３６は、ＰＬＣ１から位置決めユニット４へ送信する位置決めデータと、その位置決めデータに対応して位置決めユニット４からＰＬＣ１が受信する完了データとを予め記憶している。図３に示す位置決めデータ格納エリア３６は、実際にＰＬＣ１に位置決めユニット４及び外部機器２が接続されて、ＰＬＣ１から位置決めユニット４に「ＸＹＺ」、「ＸＸＸ」という各位置決めデータが送信された場合に、外部機器２の位置決めが完了した時点で位置決めユニット４からＰＬＣ１に「ＯＫ」、「ＮＧ」という各完了データが各々返信される仕様であることを意味している。
【００２１】
上記構成を備えるツールソフト３は、ＰＬＣ１、位置決めユニット４及び外部機器２を接続しない状態で、プログラム格納エリア３２に格納したプログラムを検証するシミュレーション機能を有しており、以下、図４のフローチャートを用いて説明する。まずプログラム検証処理が開始されると、プログラム格納エリア３２内のプログラムをＰＬＣ仮想実行部３３で実行する（ステップＳ１１）。ＰＬＣ仮想実行部３３は、プログラム中にＰＬＣ１から位置決めユニット４へ位置決めデータを送信する処理が含まれる場合、送信される位置決めデータをプログラムに従って作成する（ステップＳ１２）。その後、位置決めデータ格納エリア３６を参照し（ステップＳ１３）、作成した位置決めデータが位置決めデータ格納エリア３６内の位置決めデータに登録されているかをチェックする（ステップＳ１４）。登録がある場合は、位置決めデータ格納エリア３６内の位置決めデータに対応する完了データを内部メモリ３５にセットする（ステップＳ１５）。
【００２２】
そしてプログラム中にステップＳ１２の送信処理に対応する受信処理がある場合（ステップＳ１６）、ＰＬＣ仮想実行部３３は内部メモリ３５を参照し（ステップＳ１７）送信した位置決めデータに対応して受信されるであろう完了データに基づいてプログラムを動作させる（ステップＳ１８）。
【００２３】
したがって、少なくとも「プログラムが仕様通りの位置決めデータを生成しているか」という検証と「仕様通りの完了データを受信したと仮定すると、その処理は正しく動作するか」という検証が、ＰＬＣ１、外部機器２、及び位置決めユニット４を接続することなく実行できる。なお、ステップＳ１２，Ｓ１４，Ｓ１６の判断処理がＮｏの場合はステップＳ１２に戻る。
【００２４】
【発明の効果】
請求項１の発明は、外部機器を接続したプログラマブルコントローラを動作させるためのプログラムの作成手段と、プログラマブルコントローラと同様にプログラムを動作させるＰＬＣ仮想実行手段と、プログラマブルコントローラから外部機器への送信データとその送信データに対応してプログラマブルコントローラが外部機器から受信する受信データとを予め記憶している第１の記憶手段と、プログラム中にプログラマブルコントローラから外部機器へのデータ送信処理がある場合、前記データ送信処理の送信データに対応してプログラマブルコントローラが外部機器から受信する受信データを第１の記憶手段を参照して記憶する第２の記憶手段とを備え、ＰＬＣ仮想実行手段は、プログラム中に前記データ送信処理に対応するデータ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する受信データに基づいてプログラムを実行するので、プログラマブルコントローラ及び外部機器を接続せずにプログラマブルコントローラと外部機器との間のデータ送受信を含めたプログラムの検証を行うことができるという効果がある。
【００２５】
請求項２の発明は、位置決めユニットを介して外部機器の位置決め制御を行うプログラマブルコントローラを動作させるためのプログラムの作成手段と、プログラマブルコントローラと同様にプログラムを動作させるＰＬＣ仮想実行手段と、プログラマブルコントローラから位置決めユニットへ送信する外部機器の位置決めデータとその位置決めデータによる位置決め完了時にプログラマブルコントローラが位置決めユニットから受信する完了データとを予め記憶している第１の記憶手段と、プログラム中にプログラマブルコントローラから位置決めユニットへ外部機器の位置決めデータ送信処理がある場合、前記データ送信処理の位置決めデータに対応してプログラマブルコントローラが位置決めユニットから受信する完了データを第１の記憶手段を参照して記憶する第２の記憶手段とを備え、ＰＬＣ仮想実行手段は、プログラム中に前記データ送信処理に対応する完了データ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の位置決めデータに対応する完了データに基づいてプログラムを実行するので、プログラマブルコントローラ、位置決めユニット及び外部機器を接続せずにプログラマブルコントローラと位置決めユニットとの間のデータ送受信を含めたプログラムの検証を行うことができるという効果がある。
【００２６】
請求項３の発明は、外部機器を接続したプログラマブルコントローラを動作させるためのプログラムの検証をプログラマブルコントローラ及び外部機器を接続しない状態で行い、プログラム中にプログラマブルコントローラから外部機器へのデータ送信処理がある場合、送信データとその送信データに対応してプログラマブルコントローラが外部機器から受信する受信データとを予め記憶している第１の記憶手段を参照して前記データ送信処理の送信データが登録されておれば、前記データ送信処理の送信データに対応してプログラマブルコントローラが外部機器から受信する受信データを第２の記憶手段に記憶させ、プログラム中に前記データ送信処理に対応するデータ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する受信データに基づいてプログラムを実行するので、プログラマブルコントローラ及び外部機器を接続せずにプログラマブルコントローラと外部機器との間のデータ送受信を含めたプログラムの検証を行うことができるという効果がある。
【００２７】
請求項４の発明は、位置決めユニットを介して外部機器の位置決め制御を行うプログラマブルコントローラを動作させるためのプログラムの検証をプログラマブルコントローラ、位置決めユニット、及び外部機器を接続しない状態で行い、プログラム中にプログラマブルコントローラから位置決めユニットへ外部機器の位置決めデータ送信処理がある場合、送信する位置決めデータとその位置決めデータによる位置決め完了時にプログラマブルコントローラが位置決めユニットから受信する完了データとを予め記憶している第１の記憶手段を参照して前記データ送信処理の位置決めデータが登録されておれば、前記データ送信処理の位置決めデータに対応してプログラマブルコントローラが位置決めユニットから受信する完了データを第２の記憶手段に記憶させ、プログラム中に前記データ送信処理に対応する完了データ受信処理がある場合、第２の記憶手段に記憶した前記データ送信処理の送信データに対応する完了データに基づいてプログラムを実行するので、プログラマブルコントローラ、位置決めユニット及び外部機器を接続せずにプログラマブルコントローラと位置決めユニットとの間のデータ送受信を含めたプログラムの検証を行うことができるという効果がある。
【図面の簡単な説明】
【図１】本発明の実施形態１の構成を示す図である。
【図２】同上の動作フローチャートを示す図である。
【図３】本発明の実施形態２の構成を示す図である。
【図４】同上の動作フローチャートを示す図である。
【符号の説明】
１  ＰＬＣ
２  外部機器
３  ツールソフト
３０  プログラム作成部
３１  ＰＬＣ接続用インターフェース
３２  プログラム格納エリア
３３  ＰＬＣ仮想実行部
３４  送受信データ格納エリア
３５  内部メモリ
【図１】
2004258926.tif 000003
【図２】
2004258926.tif 000004
【図３】
2004258926.tif 000005
【図４】
2004258926.tif 000006