(57)【要約】  シミュレーション装置（１０）は、プログラマブルコントローラの動作のシミュレーションを、第一のプログラムに基づいて実行する第一シミュレーション部（２）と、モーションコントローラの動作のシミュレーションを、第二のプログラムに基づいて実行する第二シミュレーション部（４）と、第一シミュレーション部（２）および第二シミュレーション部（４）がデータの書き込みおよび読み出しが可能なデータ共有部（５）と、を備える。
2018070041.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルコントローラの動作のシミュレーションを、第一のプログラムに基づいて実行する第一シミュレーション部と、
モーションコントローラの動作のシミュレーションを、第二のプログラムに基づいて実行する第二シミュレーション部と、
前記第一シミュレーション部および前記第二シミュレーション部がデータの書き込みおよび読み出しが可能なデータ共有部と、
を備える
ことを特徴とするシミュレーション装置。
【請求項２】
前記第一シミュレーション部および前記第二シミュレーション部は、同期時間毎に計算結果を前記データ共有部に転送する
ことを特徴とする請求項１に記載のシミュレーション装置。
【請求項３】
前記第一シミュレーション部および前記第二シミュレーション部は、前記計算結果に時間データを添付して前記データ共有部に転送する
ことを特徴とする請求項２に記載のシミュレーション装置。
【請求項４】
前記第一シミュレーション部は、前記プログラマブルコントローラに接続された外部ユニットにかかる外部入出力データを模擬した模擬信号を生成する外部入出力データ模擬部を備える
ことを特徴とする請求項１から３のいずれか１つに記載のシミュレーション装置。
【請求項５】
前記第二シミュレーション部は、前記モーションコントローラに接続された外部ユニットにかかる外部入出力データを模擬した模擬信号を生成する外部入出力データ模擬部を備える
ことを特徴とする請求項１から３のいずれか１つに記載のシミュレーション装置。
【請求項６】
前記第一のプログラムの作成を支援して、前記第一シミュレーション部を起動する第一設定部と、
前記第二のプログラムの作成を支援して、前記第二シミュレーション部を起動する第二設定部と、
をさらに備える
ことを特徴とする請求項１に記載のシミュレーション装置。
【請求項７】
前記第二シミュレーション部における前記モーションコントローラの動作のシミュレーションにおいて、前記プログラマブルコントローラの動作のシミュレーションのパラメータまたは前記第一のプログラムが原因となるエラーが発生した場合は、前記第二設定部は、前記エラーを識別するエラーコードを表示装置に表示し、
その後、前記第二設定部が前記エラーコードを受け付けると、前記データ共有部を介して前記エラーコードを取得した前記第一設定部は、前記エラーコードに対応する前記パラメータまたは前記第一のプログラムの入力設定画面を前記表示装置に表示する
ことを特徴とする請求項６に記載のシミュレーション装置。
【請求項８】
前記第一シミュレーション部における前記プログラマブルコントローラの動作のシミュレーションにおいて、前記モーションコントローラの動作のシミュレーションのパラメータまたは前記第二のプログラムが原因となるエラーが発生した場合は、前記第一設定部は、前記エラーを識別するエラーコードを表示装置に表示し、
その後、前記第一設定部が前記エラーコードを受け付けると、前記データ共有部を介して前記エラーコードを取得した前記第二設定部は、前記エラーコードに対応する前記パラメータまたは前記第二のプログラムの入力設定画面を前記表示装置に表示する
ことを特徴とする請求項６に記載のシミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラおよびモーションコントローラの機能をシミュレーションするシミュレーション装置に関する。
【背景技術】
【０００２】
ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）機器が複数接続されたＦＡシステムであるユーザシステムの動作の検証は、エンジニアリング設定ツールを介したＦＡ機器の動作のシミュレーションを実行することにより行われる。エンジニアリング設定ツールは、ソフトウェアを実行することにより実現される設定ツールであって、ユーザに対してユーザインタフェースを提供し、ユーザによるユーザプログラムの作成を支援し、ＦＡ機器の動作のシミュレーションを実行するシミュレータを起動することができる。【０００３】
ユーザシステムがプログラマブルコントローラおよびモーションコントローラを有している場合、上記した既存のシミュレーション環境においては、複数のコントローラそれぞれに対応するシミュレータがそれぞれのユーザプログラムを実行する。これにより、それぞれのユーザプログラムの実行条件の設定、実行開始または停止の設定、データ処理、軸の移行位置の計算といった処理が正しく実行されるかどうかを確認することができる。【０００４】
しかし、上記した従来のシミュレーション環境においては、プログラマブルコントローラとモーションコントローラとの間でのデータのやり取りおよび外部入出力データのシミュレーションへの組み込みを実現することができなかった為、どのタイミングで軸を始動するか、運転終了後に外部入出力データはどう変化するかといったことを確認することができなかった。そのため、具体的には、特許文献１に示されるように、現場にてプログラマブルコントローラおよびモーションコントローラを立ち上げた上で、ユーザプログラムを実行させながら調整することが必要であった。その結果、ユーザシステムの立上げに工数がかかるという問題点があった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２５９１１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記問題点を解決するためには、プログラマブルコントローラおよびモーションコントローラといったＦＡ機器それぞれの動作のシミュレーションを実行する過程で出力されるデータをシミュレータ同士が交換して利用しつつそれぞれのシミュレーションを実行することが望ましく、シミュレータ同士を連携させる機能が必要であった。【０００７】
本発明は、上記に鑑みてなされたものであって、プログラマブルコントローラおよびモーションコントローラそれぞれのシミュレータ同士を連携させることを可能にするシミュレーション装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、プログラマブルコントローラの動作のシミュレーションを、第一のプログラムに基づいて実行する第一シミュレーション部と、モーションコントローラの動作のシミュレーションを、第二のプログラムに基づいて実行する第二シミュレーション部と、を備える。本発明は、第一シミュレーション部および第二シミュレーション部がデータの書き込みおよび読み出しが可能なデータ共有部をさらに備えることを特徴とする。
【発明の効果】
【０００９】
本発明にかかるシミュレーション装置は、プログラマブルコントローラおよびモーションコントローラそれぞれのシミュレータ同士を連携させることが可能になるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態１にかかるユーザシステムの構成を示すブロック図
【図２】実施の形態１にかかるシミュレーション装置の機能構成を示すブロック図
【図３】実施の形態１にかかるシミュレーション装置の機能をコンピュータで実現する場合のハードウェア構成を示す図
【図４】実施の形態１にかかるシミュレーション装置の動作を示したフローチャート
【図５】実施の形態１にかかるシミュレーション装置の動作を示した別のフローチャート
【図６】実施の形態１にかかるシミュレーション装置の同期動作を説明するフローチャート
【図７】本発明の実施の形態２にかかるユーザシステムの構成を示すブロック図
【図８】実施の形態２にかかるシミュレーション装置の機能構成を示すブロック図
【図９】実施の形態２にかかるシミュレーション装置の動作を示したフローチャート
【図１０】本発明の実施の形態３にかかるシミュレーション装置の動作を示したフローチャート
【図１１】実施の形態３にかかる表示装置の画面を模式化した図
【図１２】実施の形態３にかかるシミュレーション装置の別の動作を示したフローチャート
【図１３】実施の形態４にかかるシミュレーション装置の機能構成を示すブロック図
【発明を実施するための形態】
【００１１】
以下に、本発明の実施の形態にかかるシミュレーション装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、本発明の実施の形態１にかかるユーザシステム１００の構成を示すブロック図である。ユーザシステム１００は、図示せぬ位置決め制御装置を駆動するサーボモータ１０１と、サーボモータ１０１を制御するサーボアンプ１０２と、サーボアンプ１０２を制御するモーションコントローラ１０３と、モーションコントローラ１０３を制御するプログラマブルコントローラ１０４と、を備える。
【００１３】
プログラマブルコントローラ１０４は、ユーザが作成した第一のプログラムであるプログラマブルコントローラプログラムに基づいて動作する。プログラマブルコントローラプログラムは、プログラマブルコントローラ１０４がモーションコントローラ１０３を制御するために実行するプログラムであり、具体例は、ラダープログラムである。
【００１４】
モーションコントローラ１０３は、ユーザが作成した第二のプログラムであるモーションコントローラプログラムに基づいて動作する。モーションコントローラプログラムは、モーションコントローラ１０３がサーボアンプ１０２を制御するために実行するサーボ制御のためのプログラムである。
【００１５】
プログラマブルコントローラ１０４は、プログラマブルコントローラプログラムに基づいてモーションコントローラ１０３に位置決めの開始を指示する動作開始指令を出力する。モーションコントローラ１０３は、モーションコントローラプログラムに基づいて位置決めの演算を実行してサーボアンプ１０２に位置指令を出力する。
【００１６】
図２は、実施の形態１にかかるシミュレーション装置１０の機能構成を示すブロック図である。シミュレーション装置１０は、ユーザシステム１００の動作をシミュレーションする装置である。シミュレーション装置１０は、第一設定部であるプログラマブルコントローラ１０４用のエンジニアリング設定ツール１と、第一シミュレーション部であるプログラマブルコントローラ１０４用のシミュレータ２と、第二設定部であるモーションコントローラ１０３用のエンジニアリング設定ツール３と、第二シミュレーション部であるモーションコントローラ１０３用のシミュレータ４と、データ共有部５と、連携機能処理部６と、を備える。
【００１７】
エンジニアリング設定ツール１は、ソフトウェアを実行することにより実現される機能部であって、ユーザに対してユーザインタフェースを提供し、ユーザによるプログラマブルコントローラプログラムの作成を支援し、ユーザの指示といったトリガに基づいてプログラマブルコントローラ１０４用のシミュレータ２を起動する。
【００１８】
エンジニアリング設定ツール３は、ソフトウェアを実行することにより実現される機能部であって、ユーザに対してユーザインタフェースを提供し、ユーザによるモーションコントローラプログラムの作成を支援し、ユーザの指示といったトリガに基づいてモーションコントローラ１０３用のシミュレータ４を起動する。
【００１９】
シミュレータ２は、エンジニアリング設定ツール１を介してユーザが作成したプログラマブルコントローラプログラムおよびユーザが設定したシミュレーションのパラメータに基づいてプログラマブルコントローラ１０４の動作のシミュレーションを実行する。
【００２０】
シミュレータ４は、エンジニアリング設定ツール３を介してユーザが作成したモーションコントローラプログラムおよびユーザが設定したシミュレーションのパラメータに基づいてモーションコントローラ１０３の動作のシミュレーションを実行する。
【００２１】
データ共有部５は記憶領域を確保することができ、データ共有部５の記憶領域には、シミュレータ２およびシミュレータ４からのデータの書き込みが可能であると共に、シミュレータ２およびシミュレータ４によるデータの読出しも可能である。連携機能処理部６は、シミュレータ２とシミュレータ４との連携機能を調整し、データ共有部５の記憶領域の確保といった制御を実行する。
【００２２】
図３は、実施の形態１にかかるシミュレーション装置１０の機能をコンピュータで実現する場合のハードウェア構成を示す図である。シミュレーション装置１０の機能をコンピュータで実現する場合、シミュレーション装置１０の機能は、図３に示すようにＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１、メモリ２０２、記憶装置２０３、表示装置２０４および入力装置２０５により実現される。エンジニアリング設定ツール１，３、シミュレータ２，４、データ共有部５および連携機能処理部６の機能の一部は、ソフトウェアにより実現される。ソフトウェアは、プログラムとして記述されて記憶装置２０３に格納される。ＣＰＵ２０１は、記憶装置２０３に記憶されたソフトウェアであるシミュレーションプログラムをメモリ２０２に読み出して実行することにより、エンジニアリング設定ツール１，３、シミュレータ２，４、データ共有部５および連携機能処理部６の機能の一部を実現する。すなわち、シミュレーション装置１０は、各部の機能の一部がコンピュータにより実行されるときに、エンジニアリング設定ツール１，３、シミュレータ２，４、データ共有部５および連携機能処理部６の機能の一部を実施するステップが結果的に実行されることになるシミュレーションプログラムを格納するための記憶装置２０３を備える。また、このシミュレーションプログラムは、エンジニアリング設定ツール１，３、シミュレータ２，４、データ共有部５および連携機能処理部６の機能の一部が実現するシミュレーション方法をコンピュータに実行させるものであるともいえる。ここで、データ共有部５の記憶領域は、メモリ２０２により実現される。また、記憶装置２０３は、ユーザが作成したプログラマブルコントローラプログラムおよびモーションコントローラプログラムを保持することができる。メモリ２０２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）といった揮発性の記憶領域が該当する。記憶装置２０３は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリー、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）といった不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）が該当する。表示装置２０４の具体例は、モニタ、ディスプレイなどである。入力装置２０５の具体例は、キーボード、マウス、タッチパネルなどである。
【００２３】
次に、図２に戻って、シミュレーション装置１０の詳細な構成を説明する。
【００２４】
エンジニアリング設定ツール１は、入力設定画面を表示装置２０４に表示する設定編集表示部１１と、出力表示画面を表示装置２０４に表示する実行結果表示部１２と、シミュレータ２とのデータの送受信を行う通信インタフェース１３と、を備える。ユーザは、設定編集表示部１１が表示する入力設定画面を介して、プログラマブルコントローラプログラムを作成することができる。さらに、ユーザは、入力設定画面を介してプログラマブルコントローラ１０４のシミュレーションのパラメータを設定することができる。パラメータの具体例は、プログラマブルコントローラ１０４とモーションコントローラ１０３との間のデータの通信周期、データの通信サイズといったシミュレーションにかかる値である。実行結果表示部１２は、シミュレータ２がプログラマブルコントローラプログラムを実行したときのエラー情報を上記出力表示画面に表示するエラー情報表示部１２１と、シミュレータ２がプログラマブルコントローラプログラムを実行して出力したデータを上記出力表示画面に表示する実行データ表示部１２２と、を備える。
【００２５】
シミュレータ２は、設定編集表示部１１が表示した入力設定画面を介してユーザが設定したパラメータおよびユーザが作成したプログラマブルコントローラプログラムを保存する設定データ保存部２１と、プログラマブルコントローラプログラムを実行する制御演算処理部２２と、を備える。シミュレータ２は、さらに、制御演算処理部２２が計算したプログラマブルコントローラ１０４の制御に係る設定値といったデータを記憶するデータ管理部２３と、データ共有部５とのデータの送受信を行う通信インタフェース２５と、を備える。
【００２６】
エンジニアリング設定ツール３は、入力設定画面を表示装置２０４に表示する設定編集表示部３１と、出力表示画面を表示装置２０４に表示する実行結果表示部３２と、シミュレータ４とのデータの送受信を行う通信インタフェース３３と、を備える。ユーザは、設定編集表示部３１が表示する入力設定画面を介して、モーションコントローラプログラムを作成することができる。さらに、ユーザは、入力設定画面を介してモーションコントローラ１０３のシミュレーションのパラメータを設定することができる。実行結果表示部３２は、シミュレータ４がモーションコントローラプログラムを実行したときのエラー情報を上記出力表示画面に表示するエラー情報表示部３２１と、シミュレータ４がモーションコントローラプログラムを実行して出力したデータを上記出力表示画面に表示する実行データ表示部３２２と、を備える。
【００２７】
シミュレータ４は、設定編集表示部３１が表示した入力設定画面を介してユーザが設定したパラメータおよびユーザが作成したモーションコントローラプログラムを保存する設定データ保存部４１と、モーションコントローラプログラムを実行する制御演算処理部４２と、を備える。シミュレータ４は、さらに、制御演算処理部４２が計算したモーションコントローラ１０３の制御に係る設定値といったデータを記憶するデータ管理部４３と、データ共有部５とのデータの送受信を行う通信インタフェース４５と、を備える。
【００２８】
データ共有部５は、シミュレータ２およびシミュレータ４とのデータの送受信を行う通信インタフェース５１と、プログラマブルコントローラ１０４のシミュレータ２からのデータを保存するデータ保存部５２と、モーションコントローラ１０３のシミュレータ４からのデータを保存するデータ保存部５３と、を備える。
【００２９】
シミュレータ２の設定データ保存部２１およびデータ管理部２３、シミュレータ４の設定データ保存部４１およびデータ管理部４３、データ共有部５のデータ保存部５２，５３は、図３のメモリ２０２に記憶領域が確保されて実現される。シミュレータ２，４およびデータ共有部５のそれ以外の各部の機能、エンジニアリング設定ツール１，３の機能、連携機能処理部６の機能は、図３の記憶装置２０３に記憶されたシミュレーションプログラムをＣＰＵ２０１がメモリ２０２に読み出して実行することにより実現される。
【００３０】
図４は、実施の形態１にかかるシミュレーション装置１０の動作を示したフローチャートである。図５は、実施の形態１にかかるシミュレーション装置１０の動作を示した別のフローチャートである。図４は、シミュレータ２からシミュレータ４へのデータ転送の動作を中心に記載してあり、図５は、シミュレータ４からシミュレータ２へのデータ転送の動作を中心に記載してある。シミュレータ２およびシミュレータ４の起動後は、シミュレータ２からシミュレータ４へのデータ転送とシミュレータ４からシミュレータ２へのデータ転送とが交互に生じ得るが、以下では簡単のため一方のデータ転送ごとに説明する。
【００３１】
はじめに、図４を参照してシミュレータ２からシミュレータ４へのデータ転送の動作を説明する。
【００３２】
まず、設定編集表示部１１が表示装置２０４に入力設定画面を表示する（ステップＳ１０１）。ユーザは、設定編集表示部１１が表示する入力設定画面を介して、プログラマブルコントローラ１０４のシミュレーションのパラメータを設定し、プログラマブルコントローラプログラムを作成する。次に、ユーザの指示に基づいてエンジニアリング設定ツール１がシミュレータ２を起動する（ステップＳ１０２）。なお、ステップＳ１０２はステップＳ１０１の前であってもかまわない。
【００３３】
シミュレータ２の起動後、作成されたプログラマブルコントローラプログラムは、エンジニアリング設定ツール１により、通信インタフェース１３を介してシミュレータ２に転送される（ステップＳ１０３）。転送されたプログラマブルコントローラプログラムは、設定データ保存部２１に書き込まれる。そして、制御演算処理部２２がプログラマブルコントローラプログラムを実行することによりプログラマブルコントローラ１０４のシミュレーションが実行される（ステップＳ１０４）。プログラマブルコントローラ１０４においては数ｍｓ程度の処理周期で処理が実行される。制御演算処理部２２は、上記処理周期の各周期に相当する処理単位でシミュレーションを実行してプログラマブルコントローラ１０４の制御に係る設定値といったデータを計算して（ステップＳ１０５）、計算したデータをデータ管理部２３に書き込んで更新する。ステップＳ１０５で計算されるデータには、シミュレータ４が利用する位置決めアドレス、位置決め速度といったデータが含まれる。シミュレータ２は、上記処理単位毎に計算されてデータ管理部２３に書き込まれたデータをデータ共有部５に通信インタフェース２５を介して転送する（ステップＳ１０６）。
【００３４】
データ共有部５に転送されたデータは、通信インタフェース５１を介してデータ保存部５２に保存される。次に、シミュレータ４が通信インタフェース４５を介してデータ保存部５２に保存されたデータを取得し（ステップＳ１０７）、データ管理部４３に書き込む。データ管理部４３に書き込まれたデータを用いて、制御演算処理部４２がモーションコントローラプログラムを実行することによりモーションコントローラ１０３のシミュレーションが実行される（ステップＳ１０８）。
【００３５】
なお、データ共有部５のデータ保存部５２およびデータ保存部５３の領域は、シミュレータ２またはシミュレータ４のいずれかが起動されたときに、連携機能処理部６がメモリ２０２上に確保してもよいし、シミュレータ２およびシミュレータ４の両方が起動された状態になったときに連携機能処理部６がメモリ２０２上に確保してもよい。しかし、少なくともシミュレータ２およびシミュレータ４が共に起動された状態においては、データ保存部５２およびデータ保存部５３の領域がメモリ２０２上に確保されている必要がある。上記説明では、ステップＳ１０７の時点でシミュレータ４は既に起動しているが、それより前であれば起動のタイミングは限定されないので、図４のフローチャートでは記載を省いてある。
【００３６】
なお、連携機能処理部６が、メモリ２０２上にデータ保存部５２およびデータ保存部５３の記憶領域を確保するのは、エンジニアリング設定ツール１からのシミュレータ２の起動通知またはエンジニアリング設定ツール３からのシミュレータ４の起動通知に基づいて実行してもよいし、シミュレータ２またはシミュレータ４の起動状態に基づいて実行してもよい。
【００３７】
次に、図５を参照してシミュレータ４からシミュレータ２へのデータ転送の動作を説明する。
【００３８】
まず、設定編集表示部３１が表示装置２０４に入力設定画面を表示する（ステップＳ２０１）。ユーザは、設定編集表示部３１が表示する入力設定画面を介して、モーションコントローラ１０３のシミュレーションのパラメータを設定し、モーションコントローラプログラムを作成する。次に、ユーザの指示に基づいてエンジニアリング設定ツール３がシミュレータ４を起動する（ステップＳ２０２）。なお、ステップＳ２０２はステップＳ２０１の前であってもかまわない。
【００３９】
シミュレータ４の起動後、作成されたモーションコントローラプログラムは、エンジニアリング設定ツール３により、通信インタフェース３３を介してシミュレータ４に転送される（ステップＳ２０３）。転送されたモーションコントローラプログラムは、設定データ保存部４１に書き込まれる。そして、制御演算処理部４２がモーションコントローラプログラムを実行することによりモーションコントローラ１０３のシミュレーションが実行され（ステップＳ２０４）、各軸への指令位置が計算される。モーションコントローラ１０３とプログラマブルコントローラ１０４とはそれぞれ異なった処理周期で処理が実行される。制御演算処理部４２は、モーションコントローラ１０３の処理周期の各周期に相当する処理単位でシミュレーションを実行してモーションコントローラ１０３の制御に係る設定値に基づいたデータを計算して（ステップＳ２０５）、計算したデータをデータ管理部４３に書き込んで更新する。ステップＳ２０５で計算されるデータには、シミュレータ２が利用する位置決めの現在位置、位置決めの完了通知といったデータが含まれる。シミュレータ４は、上記処理単位毎に計算されてデータ管理部４３に書き込まれたデータをデータ共有部５に通信インタフェース４５を介して転送する（ステップＳ２０６）。
【００４０】
データ共有部５に転送されたデータは、通信インタフェース５１を介してデータ保存部５３に保存される。次に、シミュレータ２が通信インタフェース２５を介してデータ保存部５３に保存されたデータを取得し（ステップＳ２０７）、データ管理部２３に書き込む。データ管理部２３に書き込まれたデータを用いて、制御演算処理部２２がプログラマブルコントローラプログラムを実行することによりプログラマブルコントローラ１０４のシミュレーションが実行される（ステップＳ２０８）。
【００４１】
なお、データ共有部５のデータ保存部５２およびデータ保存部５３の領域は、シミュレータ２またはシミュレータ４のいずれかが起動されたときに、連携機能処理部６がメモリ２０２上に確保してもよいし、シミュレータ２およびシミュレータ４の両方が起動された状態になったときに連携機能処理部６がメモリ２０２上に確保してもよい。しかし、少なくともシミュレータ２およびシミュレータ４が共に起動された状態においては、データ保存部５２およびデータ保存部５３の領域がメモリ２０２上に確保されている必要がある。上記説明では、ステップＳ２０７の時点でシミュレータ２は既に起動しているが、上述したようにそれより前であれば起動のタイミングは限定されないので、図５のフローチャートでは記載を省いてある。
【００４２】
図６は、実施の形態１にかかるシミュレーション装置１０の同期動作を説明するフローチャートである。同期動作は、プログラマブルコントローラ１０４用のシミュレータ２とモーションコントローラ１０３用のシミュレータ４とが実機と同じようにデータのやりとりを処理単位毎に同期させるために必要となる動作である。
【００４３】
まず、ユーザの指示といったトリガに基づいてシミュレータ２およびシミュレータ４が共に起動する（ステップＳ３０１）。連携機能処理部６は、シミュレータ２およびシミュレータ４が共に起動したことを確認すると、シミュレータ２およびシミュレータ４にリセット要求を送信する（ステップＳ３０２）。リセット要求を受け取ったシミュレータ２およびシミュレータ４は、それぞれの処理周期の各周期に相当する処理単位でシミュレーションを実行してデータを計算し、連携機能処理部６から取得したあらかじめ決められた同期時間毎に、計算結果である上記データをデータ共有部５に転送する。同期時間は、計算結果をデータ共有部５にシミュレータ２およびシミュレータ４が同期して転送するタイミングを定めるためのシミュレータ２およびシミュレータ４で同一の時間である。したがって、同期時間は、シミュレータ２が計算結果をデータ共有部５に転送するタイミングと次に計算結果をデータ共有部５に転送するタイミングとの間に、シミュレータ２が連続して実行するシミュレーションの処理周期の合計以上の値である。また、同期時間は、シミュレータ４が計算結果をデータ共有部５に転送するタイミングと次に計算結果をデータ共有部５に転送するタイミングとの間に、シミュレータ４が連続して実行するシミュレーションの処理周期の合計以上の値である。さらに、シミュレータ２およびシミュレータ４は、それぞれが計算結果をデータ共有部５に転送する際に、時間データを添付してもよい。データ共有部５に時間データが添付された計算結果を転送する方法としては、各同期時間内でシミュレータ２およびシミュレータ４それぞれが最後の処理周期に計算したデータに当該データにかかる時間データを添付して同期時間毎に転送してもよいし、各同期時間内でシミュレータ２およびシミュレータ４それぞれが処理周期毎に計算したデータそれぞれに時間データを添付してそれらを纏めて同期時間毎に転送してもよい。時間データの具体例は、最初から何番目の処理単位のシミュレーションの実行結果であるかを示す自然数である。また、時間データとして実機での処理にかかる実時間を用いてもよい。しかし、時間データはこれらに限定されない。計算結果であるデータと共にこの時間データをデータ共有部５から受け取ることにより、シミュレータ２およびシミュレータ４は同期時間毎にシミュレーションを同期して実行することができる（ステップＳ３０３）。
【００４４】
以上説明したように、実施の形態１にかかるシミュレーション装置１０によれば、データ共有部５を介してシミュレータ２およびシミュレータ４がシミュレーション中の計算結果であるデータを交換することができるので、シミュレータ同士を連携させることが可能になる。具体的には、シミュレータ２の計算結果に基づいて、シミュレータ４の動作を開始または中断することが可能となり、逆に、シミュレータ４の計算結果に基づいて、シミュレータ２の動作を開始または中断することが可能となる。
【００４５】
また、シミュレータ２およびシミュレータ４がデータ共有部５にデータを転送する際に時間データを添付することにより同期時間毎のシミュレーションの同期が可能となり、ユーザシステム１００のシミュレーションを実環境に近い実行タイミングで実施することが可能となる。
【００４６】
したがって、実施の形態１にかかるシミュレーション装置１０によれば、ユーザシステム１００の実機に近いシミュレーションが可能となり、プログラマブルコントローラプログラムおよびモーションコントローラプログラムのデバッグの精度が向上し、プログラマブルコントローラプログラムおよびモーションコントローラプログラムの作成工数を大幅に削減することができる。これにより、現場でのユーザシステムの立上げの工数を削減することも可能となる。
【００４７】
実施の形態２．
図７は、本発明の実施の形態２にかかるユーザシステム２００の構成を示すブロック図である。ユーザシステム２００は、図１に示したユーザシステム１００に入力ユニット１０５および出力ユニット１０６が追加されている。入力ユニット１０５および出力ユニット１０６はプログラマブルコントローラ１０４に接続されている。入力ユニット１０５はプログラマブルコントローラ１０４に入力信号を入力する。プログラマブルコントローラ１０４は出力ユニット１０６に出力信号を出力する。
【００４８】
入力ユニット１０５は、ユーザシステム２００の運転開始時に押下される運転ボタン１０７と、ユーザシステム２００の停止時に押下される停止ボタン１０８と、を備える。出力ユニット１０６は、ユーザシステム２００の正常時に点灯する正常ランプ１０９と、ユーザシステム２００の異常時に点灯する異常ランプ１１０と、を備える。
【００４９】
図８は、実施の形態２にかかるシミュレーション装置２０の機能構成を示すブロック図である。シミュレーション装置２０は、ユーザシステム２００の動作をシミュレーションする装置である。シミュレーション装置２０は、第一設定部であるプログラマブルコントローラ１０４用のエンジニアリング設定ツール１と、第一シミュレーション部であるプログラマブルコントローラ１０４用のシミュレータ２−１と、第二設定部であるモーションコントローラ１０３用のエンジニアリング設定ツール３と、第二シミュレーション部であるモーションコントローラ１０３用のシミュレータ４−１と、データ共有部５と、連携機能処理部６と、を備える。実施の形態１にかかるシミュレーション装置１０と同一の機能を有する構成要素は図２と同じ符号を付してあり説明を省略する。実施の形態２にかかるシミュレーション装置２０の機能をコンピュータで実現する場合のハードウェア構成は、図３と同じである。
【００５０】
シミュレータ２−１は、シミュレータ２に外部入出力データ模擬部２４が追加されている。外部入出力データ模擬部２４は、ユーザが作成した外部入出力データ模擬プログラムを実行することにより、プログラマブルコントローラ１０４に接続された外部ユニットにかかる外部入出力データを模擬した模擬信号を生成して出力する。具外的には、外部入出力データ模擬部２４は、入力ユニット１０５からの入力信号を模擬した模擬入力信号および出力ユニット１０６への出力信号を模擬した模擬出力信号を出力する。
【００５１】
シミュレータ４−１は、シミュレータ４に外部入出力データ模擬部４４が追加されている。外部入出力データ模擬部４４は、ユーザが作成した上記とは別の外部入出力データ模擬プログラムを実行することにより、モーションコントローラ１０３に接続された外部ユニットにかかる外部入出力データを模擬して出力する。モーションコントローラ１０３に図７には示していないセンサユニットといった外部ユニットが接続されていた場合は、外部入出力データ模擬部４４は、外部入出力データであるセンサ信号を模擬した模擬信号を生成して出力する。
【００５２】
図９は、実施の形態２にかかるシミュレーション装置２０の動作を示したフローチャートである。以下では、図９を参照して、ユーザシステム２００のシミュレーションにおいて、シミュレーション装置２０がプログラマブルコントローラ１０４に接続された外部ユニットにかかる外部入出力データを模擬する場合について説明する。
【００５３】
シミュレータ２−１およびシミュレータ４−１は共に起動しているとする。まず、制御演算処理部２２がプログラマブルコントローラプログラムを実行することによりプログラマブルコントローラ１０４のシミュレーションが実行される（ステップＳ４０１）。シミュレーションが実行されると、制御演算処理部２２が計算したデータがデータ管理部２３に書き込まれる。外部入出力データ模擬部２４は、データ管理部２３に書き込まれて更新されたデータをモニタしている。プログラマブルコントローラ１０４のシミュレーションの結果によって、データ管理部２３に書き込まれて更新されたデータが、入力ユニット１０５からの運転開始を示す入力信号に対応するデータになると（ステップＳ４０２）、外部入出力データ模擬部２４は、上記外部入出力データ模擬プログラムを実行して、入力ユニット１０５からの運転開始を示す入力信号を模擬した模擬入力信号を生成して出力する（ステップＳ４０３）。ステップＳ４０３は、実機においては入力ユニット１０５の運転ボタン１０７が押下されたときに入力ユニット１０５がプログラマブルコントローラ１０４に運転開始を示す入力信号を出力することに相当する。その後、シミュレータ２−１は、外部入出力データ模擬部２４が出力した模擬入力信号をデータ共有部５に通信インタフェース２５を介して転送する（ステップＳ４０４）。
【００５４】
データ共有部５に転送された模擬入力信号は、通信インタフェース５１を介してデータ保存部５２に保存される。次に、シミュレータ４−１が通信インタフェース４５を介してデータ保存部５２に保存された模擬入力信号を取得する（ステップＳ４０５）。ステップＳ４０５でシミュレータ４−１が模擬入力信号を取得することは、実機においてはモーションコントローラ１０３がプログラマブルコントローラ１０４から動作開始指令を受け取ることに相当する。
【００５５】
そして、シミュレータ４−１が取得した模擬入力信号に基づいて、制御演算処理部４２は、モーションコントローラプログラムを実行することによりモーションコントローラ１０３のシミュレーションを実行する（ステップＳ４０６）。このシミュレーションは、実機においては、プログラマブルコントローラ１０４から受け取った動作開始指令に関連する軸を動かすために、モーションコントローラ１０３がサーボアンプ１０２に位置指令を出力する動作などに相当する。ステップＳ４０６のシミュレーションにおいて指定された位置への軸の移動が完了すると、制御演算処理部４２は、データ管理部４３に移動完了信号を書き込む。シミュレータ４−１は、データ管理部４３に書き込まれた移動完了信号をデータ共有部５に通信インタフェース４５を介して転送する（ステップＳ４０７）。
【００５６】
データ共有部５に転送された移動完了信号は、通信インタフェース５１を介してデータ保存部５３に保存される。次に、シミュレータ２−１が通信インタフェース２５を介してデータ保存部５３に保存された移動完了信号を取得する（ステップＳ４０８）。外部入出力データ模擬部２４は、上記外部入出力データ模擬プログラムを実行して、プログラマブルコントローラ１０４から出力ユニット１０６への移動が正常に完了したことを示す出力信号を模擬した模擬出力信号を生成して出力する（ステップＳ４０９）。ステップＳ４０９は、実機においてはプログラマブルコントローラ１０４から出力ユニット１０６に移動が正常に完了したことを示す出力信号が出力されることに相当する。なお、出力ユニット１０６は、移動が正常に完了したことを示す出力信号を受け取ると正常ランプ１０９を点灯させる。
【００５７】
以上では、ユーザシステム２００のシミュレーションにおいて、外部入出力データ模擬部２４がプログラマブルコントローラ１０４に接続された外部ユニットにかかる外部入出力データを模擬する場合について説明した。しかし、モーションコントローラ１０３にセンサユニットといった外部ユニットが接続されていた場合は、外部入出力データ模擬部４４が、センサ信号といった外部入出力データを模擬した模擬信号を生成して出力すれば、データ共有部５を介して、当該模擬信号を利用してプログラマブルコントローラ１０４のシミュレーションを実行することができる。
【００５８】
なお、プログラマブルコントローラ１０４に接続された外部ユニットにかかる外部入出力データのみを模擬する場合、外部入出力データ模擬部４４は不要であり、モーションコントローラ１０３に接続された外部ユニットにかかる外部入出力データのみを模擬する場合、外部入出力データ模擬部２４は不要である。したがって、シミュレーション装置２０は、外部入出力データ模擬部２４および外部入出力データ模擬部４４の両方を必ずしも備えている必要はない。
【００５９】
以上説明したように、実施の形態２にかかるシミュレーション装置２０によれば、プログラマブルコントローラ１０４またはモーションコントローラ１０３に接続された外部ユニットにかかる外部入出力データを模擬した模擬信号を生成して、データ共有部５を介して２つのシミュレータで利用することができるので、ユーザシステム２００の実機の動作に近いシミュレーションが可能となる。
【００６０】
実施の形態３．
本発明の実施の形態３にかかるシミュレーション装置１０の機能構成は図２に示される。シミュレーション装置１０において、データ共有部５を介してシミュレータ２およびシミュレータ４を連携させた環境下で、一方のシミュレータでエラーが発生した場合に、エラー原因となる他方のシミュレータのユーザプログラムまたはパラメータの入力設定画面を表示装置２０４に表示する。
【００６１】
具体的には、シミュレータ４によるモーションコントローラ１０３のシミュレーションでエラーが発生した場合に、当該エラーの原因となるプログラマブルコントローラプログラムの入力設定画面またはプログラマブルコントローラ１０４のシミュレーションのパラメータの入力設定画面が表示装置２０４に表示される。このときのシミュレーション装置１０の動作を図２、図１０および図１１を用いて説明する。図１０は、本発明の実施の形態３にかかるシミュレーション装置１０の動作を示したフローチャートである。図１１は、実施の形態３にかかる表示装置２０４の画面を模式化した図である。
【００６２】
シミュレータ２およびシミュレータ４は共に起動しているとする。まず、シミュレータ４がモーションコントローラ１０３のシミュレーションを実行した結果、エラーが発生する（ステップＳ５０１）。ここで、このエラーは、プログラマブルコントローラ１０４のシミュレーションのもととなるパラメータの設定またはプログラマブルコントローラプログラムが原因であるとする。
【００６３】
シミュレータ４は、当該エラーにかかる情報であるエラー情報をエンジニアリング設定ツール３に通知し、通信インタフェース３３を介してエラー情報を受け取った実行結果表示部３２は、エラー情報を示す図１１の出力表示画面９０１を表示装置２０４に表示する（ステップＳ５０２）。出力表示画面９０１にはモーションコントローラ１０３のシミュレーションにおいて発生したエラーを識別するエラーコードが表示されている。
【００６４】
ここで、ユーザがマウスといった入力装置２０５を用いて出力表示画面９０１をクリックするなどしてエラーコードが選択されると（ステップＳ５０３）、エンジニアリング設定ツール３はこの選択を受け付けて、シミュレータ４に当該エラーコードをデータ共有部５に転送させる（ステップＳ５０４）。転送されたエラーコードはデータ保存部５３に保存される。そして、シミュレータ２がデータ保存部５３に保存されたエラーコードを取得し（ステップＳ５０５）、取得したエラーコードをエンジニアリング設定ツール１に送る。
【００６５】
ここで、エンジニアリング設定ツール１は、エラーコードと、当該エラーコードにより識別されるエラーの発生原因となるプログラマブルコントローラ１０４のシミュレーションのパラメータの入力設定画面の識別子または当該エラーコードにより識別されるエラーの発生原因となるプログラマブルコントローラプログラムの入力設定画面の識別子との対応関係をテーブルといった形式で、メモリ２０２に保持している。したがって、図１１に示すように、エンジニアリング設定ツール１の設定編集表示部１１は、取得したエラーコードと上記対応関係とに基づいて、エラーの発生原因となるプログラマブルコントローラ１０４のシミュレーションのパラメータまたはプログラマブルコントローラプログラムの入力設定画面９０２を表示装置２０４に表示する（ステップＳ５０６）。
【００６６】
同様に、シミュレータ２によるプログラマブルコントローラ１０４のシミュレーションでエラーが発生した場合に、当該エラーの原因となるモーションコントローラプログラムの入力設定画面またはモーションコントローラ１０３のシミュレーションのパラメータの入力設定画面を表示装置２０４に表示することも可能である。このときのシミュレーション装置１０の動作を図２および図１２を用いて説明する。図１２は、本発明の実施の形態３にかかるシミュレーション装置１０の別の動作を示したフローチャートである。
【００６７】
シミュレータ２およびシミュレータ４は共に起動しているとする。まず、シミュレータ２がプログラマブルコントローラ１０４のシミュレーションを実行した結果、エラーが発生する（ステップＳ６０１）。ここで、このエラーは、モーションコントローラ１０３のシミュレーションのもととなるパラメータの設定またはモーションコントローラプログラムが原因であるとする。
【００６８】
シミュレータ２は、当該エラーにかかる情報であるエラー情報をエンジニアリング設定ツール１に通知し、通信インタフェース１３を介してエラー情報を受け取った実行結果表示部１２は、エラー情報を示す出力表示画面を表示装置２０４に表示する（ステップＳ６０２）。表示装置２０４に表示された出力表示画面にはプログラマブルコントローラ１０４のシミュレーションにおいて発生したエラーを識別するエラーコードが表示されている。
【００６９】
ここで、ユーザがマウスといった入力装置２０５を用いて出力表示画面をクリックするなどしてエラーコードが選択されると（ステップＳ６０３）、エンジニアリング設定ツール１はこの選択を受け付けて、シミュレータ２に当該エラーコードをデータ共有部５に転送させる（ステップＳ６０４）。転送されたエラーコードはデータ保存部５２に保存される。そして、シミュレータ４がデータ保存部５２に保存されたエラーコードを取得し（ステップＳ６０５）、取得したエラーコードをエンジニアリング設定ツール３に送る。
【００７０】
ここで、エンジニアリング設定ツール３は、エラーコードと、当該エラーコードにより識別されるエラーの発生原因となるモーションコントローラ１０３のシミュレーションのパラメータの入力設定画面の識別子または当該エラーコードにより識別されるエラーの発生原因となるモーションコントローラプログラムの入力設定画面の識別子との対応関係をテーブルといった形式で、メモリ２０２に保持している。したがって、エンジニアリング設定ツール３の設定編集表示部３１は、取得したエラーコードと上記対応関係とに基づいて、エラーの発生原因となるモーションコントローラ１０３のシミュレーションのパラメータまたはモーションコントローラプログラムの入力設定画面を表示装置２０４に表示する（ステップＳ６０６）。
【００７１】
なお、実施の形態３にかかるシミュレーション装置１０は、図１０のフローチャートを用いて説明した動作および図１２のフローチャートを用いて説明した動作の両方の動作を実現してもよいが、いずれか一方の動作を実現するのでもかまわない。
【００７２】
以上説明したように、実施の形態３にかかるシミュレーション装置１０によれば、一方のシミュレータでエラーが発生した場合に、ユーザはエラーの発生原因を確認でき、エラー原因となる他方のシミュレータのユーザプログラムまたはパラメータの入力設定画面が簡単に表示されるので、プログラム修正の手間が低減され、エラー原因を速やかに除去することが可能となる。
【００７３】
なお、実施の形態３で説明した、一方のシミュレータでエラーが発生した場合に、エラー原因となる他方のシミュレータのユーザプログラムまたはパラメータの入力設定画面を表示装置２０４に表示することは、図８のシミュレーション装置２０でも可能であることは言うまでもない。
【００７４】
実施の形態４．
実施の形態１から実施の形態３においては、図１および図７に示すように１台のプログラマブルコントローラ１０４と１台のモーションコントローラ１０３とを含んだユーザシステムの動作をシミュレーション装置１０またはシミュレーション装置２０がシミュレーションするとして説明した。しかし、シミュレーションの対象となるユーザシステムの構成は、上記に限定されない。具体的には、ユーザシステムは、複数台のプログラマブルコントローラと複数台のモーションコントローラを含む場合もある。このようなユーザシステムの動作をシミュレーションするシミュレーション装置においても、データ共有部５および連携機能処理部６を設ける。
【００７５】
図１３は、実施の形態４にかかるシミュレーション装置３０の機能構成を示すブロック図である。シミュレーション装置３０は、一台のプログラマブルコントローラと二台のモーションコントローラを含むユーザシステムをシミュレーションする。シミュレーション装置３０は、第一設定部であるプログラマブルコントローラ用のエンジニアリング設定ツール１と、第一シミュレーション部であるプログラマブルコントローラ用のシミュレータ２と、第二設定部である一台目のモーションコントローラ用のエンジニアリング設定ツール３と、第二シミュレーション部である一台目のモーションコントローラ用のシミュレータ４と、第三設定部である二台目のモーションコントローラ用のエンジニアリング設定ツール７と、第三シミュレーション部である二台目のモーションコントローラ用のシミュレータ８と、データ共有部５と、連携機能処理部６と、を備える。このように、シミュレーション装置３０においても、データ共有部５および連携機能処理部６を設けたことにより、実施の形態１から実施の形態３と同様の効果が得られる。
【００７６】
データ共有部５の記憶領域には、シミュレータ２、シミュレータ４およびシミュレータ８からのデータの書き込みが可能であると共に、シミュレータ２、シミュレータ４およびシミュレータ８によるデータの読出しも可能である。連携機能処理部６は、シミュレータ２、シミュレータ４およびシミュレータ８との連携機能を調整し、データ共有部５の記憶領域の確保といった制御を実行する。
【００７７】
また、エンジニアリング設定ツール７がユーザシステムの機械構成のＣＡＤ（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ）用の設定ツールで、シミュレータ８がＣＡＤ用のシミュレータであるとすれば、プログラマブルコントローラおよびモーションコントローラのシミュレーションにＣＡＤのシミュレーションを連携させることができる。この場合においても、データ共有部５および連携機能処理部６を設けたことにより、実施の形態１から実施の形態３と同様の効果が得られる。
【００７８】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００７９】
１，３，７  エンジニアリング設定ツール、２，４，２−１，４−１，８  シミュレータ、５  データ共有部、６  連携機能処理部、１０，２０，３０  シミュレーション装置、１１，３１  設定編集表示部、１２，３２  実行結果表示部、１３，２５，３３，４５，５１  通信インタフェース、２１，４１  設定データ保存部、２２，４２  制御演算処理部、２３，４３  データ管理部、２４，４４  外部入出力データ模擬部、５２，５３  データ保存部、１００，２００  ユーザシステム、１０１  サーボモータ、１０２  サーボアンプ、１０３  モーションコントローラ、１０４  プログラマブルコントローラ、１０５  入力ユニット、１０６  出力ユニット、１０７  運転ボタン、１０８  停止ボタン、１０９  正常ランプ、１１０  異常ランプ、２０１  ＣＰＵ、２０２  メモリ、２０３  記憶装置、２０４  表示装置、２０５  入力装置、９０１  出力表示画面、９０２  入力設定画面。
【図１】
2018070041.tif 000003
【図２】
2018070041.tif 000004
【図３】
2018070041.tif 000005
【図４】
2018070041.tif 000006
【図５】
2018070041.tif 000007
【図６】
2018070041.tif 000008
【図７】
2018070041.tif 000009
【図８】
2018070041.tif 000010
【図９】
2018070041.tif 000011
【図１０】
2018070041.tif 000012
【図１１】
2018070041.tif 000013
【図１２】
2018070041.tif 000014
【図１３】
2018070041.tif 000015
【手続補正書】
【提出日】平成29年5月24日(2017.5.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プログラマブルコントローラの動作のシミュレーションを、第一のプログラムに基づいて実行する第一シミュレーション部と、
モーションコントローラの動作のシミュレーションを、前記第一のプログラムとは別の第二のプログラムに基づいて実行する第二シミュレーション部と、
前記第一シミュレーション部および前記第二シミュレーション部の双方によるデータの書き込みおよび読み出しが可能なデータ共有部と、
を備える
ことを特徴とするシミュレーション装置。
【請求項２】
前記第一シミュレーション部および前記第二シミュレーション部は、同期時間毎に計算結果を前記データ共有部に転送する
ことを特徴とする請求項１に記載のシミュレーション装置。
【請求項３】
前記第一シミュレーション部および前記第二シミュレーション部は、前記計算結果に時間データを添付して前記データ共有部に転送する
ことを特徴とする請求項２に記載のシミュレーション装置。
【請求項４】
前記第一シミュレーション部は、前記プログラマブルコントローラに接続された外部ユニットにかかる外部入出力データを模擬した模擬信号を生成する外部入出力データ模擬部を備える
ことを特徴とする請求項１から３のいずれか１つに記載のシミュレーション装置。
【請求項５】
前記第二シミュレーション部は、前記モーションコントローラに接続された外部ユニットにかかる外部入出力データを模擬した模擬信号を生成する外部入出力データ模擬部を備える
ことを特徴とする請求項１から３のいずれか１つに記載のシミュレーション装置。
【請求項６】
前記第一のプログラムの作成を支援して、前記第一シミュレーション部を起動する第一設定部と、
前記第二のプログラムの作成を支援して、前記第二シミュレーション部を起動する第二設定部と、
をさらに備える
ことを特徴とする請求項１に記載のシミュレーション装置。
【請求項７】
前記第二シミュレーション部における前記モーションコントローラの動作のシミュレーションにおいて、前記プログラマブルコントローラの動作のシミュレーションのパラメータまたは前記第一のプログラムが原因となるエラーが発生した場合は、前記第二設定部は、前記エラーを識別するエラーコードを表示装置に表示し、
その後、前記第二設定部が前記エラーコードを受け付けると、前記データ共有部を介して前記エラーコードを取得した前記第一設定部は、前記エラーコードに対応する前記パラメータまたは前記第一のプログラムの入力設定画面を前記表示装置に表示する
ことを特徴とする請求項６に記載のシミュレーション装置。
【請求項８】
前記第一シミュレーション部における前記プログラマブルコントローラの動作のシミュレーションにおいて、前記モーションコントローラの動作のシミュレーションのパラメータまたは前記第二のプログラムが原因となるエラーが発生した場合は、前記第一設定部は、前記エラーを識別するエラーコードを表示装置に表示し、
その後、前記第一設定部が前記エラーコードを受け付けると、前記データ共有部を介して前記エラーコードを取得した前記第二設定部は、前記エラーコードに対応する前記パラメータまたは前記第二のプログラムの入力設定画面を前記表示装置に表示する
ことを特徴とする請求項６に記載のシミュレーション装置。
【国際調査報告】
2018070041.tif 000016
2018070041.tif 000017