(57)【要約】【課題】ロボットコントローラおよび操作盤等の複数の機器から構成されるステーションに対して、異なる条件のステーション毎に簡便な手順でシミュレーションを行うことを可能にする。【解決手段】シミュレーション装置１０は、擬似コントローラ１２ａ〜１２Ｌと、シーケンサ１４と、擬似操作盤１６と、シミュレーションデータに基づいてロボットの姿勢を表示するビューワ１８と、汎用ネットワーク２８と、シミュレーションに必要なオブジェクトを設定および記録するオブジェクト管理コンピュータ２４とを備える。オブジェクト管理コンピュータ２４は、シミュレーションを実行する前に汎用ネットワーク２８を介してシーケンサ１４、擬似操作盤１６、ビューワ１８にオブジェクトを供給する。擬似コントローラ１２ａ〜１２Ｌのうち、シミュレーションに必要な台数分にティーチングデータを供給する。【選択図】図２
2004148428.tif 000002
【特許請求の範囲】
【請求項１】
ロボットを有する生産システムの動作検証を行うシミュレーション装置において、
ロボット用のティーチングデータが供給され、該ティーチングデータに基づき、前記ロボットを示す仮想ロボットの動作制御を行うとともに、前記仮想ロボットの各関節の動作量を示すシミュレーションデータをリアルタイムに生成する擬似コントローラと、
少なくとも前記擬似コントローラを制御するシーケンサと、
前記シーケンサと前記擬似コントローラとを接続する主通信手段と、
少なくとも前記シーケンサに対して操作信号の送受信を行う擬似操作盤と、
前記シミュレーションデータに基づいて前記仮想ロボットの姿勢に関する情報を表示するビューワと、
複数のシミュレーションの条件にそれぞれ適応したオブジェクトを設定および記憶するオブジェクト管理部と、
前記擬似コントローラと前記ビューワと前記オブジェクト管理部と前記シーケンサとに接続される副通信手段と、
を有し、
前記オブジェクト管理部は、シミュレーションを実行する前に、シミュレーション条件に適応したオブジェクトを、前記副通信手段を介して、前記擬似コントローラ、前記擬似操作盤、前記シーケンサおよび／または前記ビューワに供給することを特徴とするシミュレーション装置。
【請求項２】
請求項１記載のシミュレーション装置において、
前記オブジェクト管理部は、シミュレーションの条件に応じて、前記ビューワに前記ロボットの関節構成や寸法および設置位置等を示す描画情報を供給し、
前記ビューワは、前記描画情報と前記シミュレーションデータとに基づいて前記仮想ロボットを３次元表示することを特徴とするシミュレーション装置。
【請求項３】
請求項１または２記載のシミュレーション装置において、
前記オブジェクト管理部は、シミュレーションの条件に応じて、前記シーケンサにシーケンスプログラムまたはその生成用ファイルを供給することを特徴とするシミュレーション装置。
【請求項４】
請求項１〜３のいずれか１項に記載のシミュレーション装置において、
前記オブジェクト管理部は、シミュレーションの条件に応じて、前記擬似コントローラに前記ティーチングデータを供給することを特徴とするシミュレーション装置。
【請求項５】
請求項１〜４のいずれか１項に記載のシミュレーション装置において、
前記オブジェクト管理部は、シミュレーションの条件に応じて、前記擬似操作盤に画面生成情報を含む入出力プログラムを供給することを特徴とするシミュレーション装置。
【請求項６】
請求項１〜５のいずれか１項に記載のシミュレーション装置において、
前記主通信手段は複数種類が存在し、
前記擬似コントローラおよび前記シーケンサは、前記オブジェクト管理部から供給されるネットワーク種別データに基づいて前記主通信手段のいずれか１つを選択することを特徴とするシミュレーション装置。
【請求項７】
請求項１〜６のいずれか１項に記載のシミュレーション装置において、
前記生産システムは、ワークを搬送する生産ラインを備え、
前記生産ラインは、前記ロボットが配置された複数のステーションを備え、
前記オブジェクト管理部は、シミュレーション対象である前記ステーションが属する生産ラインに関する情報であるライン属性データを、前記擬似操作盤、前記擬似コントローラおよび／または前記シーケンサに供給することを特徴とするシミュレーション装置。
【請求項８】
請求項１〜６のいずれか１項に記載のシミュレーション装置において、
前記生産システムは、ワークを搬送する生産ラインを備え、
前記生産ラインは、前記ロボットが配置された複数のステーションを備え、
前記オブジェクト管理部は、シミュレーション対象である前記ステーションに関する情報であるステーション属性データを、前記擬似操作盤、前記擬似コントローラおよび／または前記シーケンサに供給することを特徴とするシミュレーション装置。
【請求項９】
請求項１〜６のいずれか１記載のシミュレーション装置において、
前記生産システムは、ワークを搬送する生産ラインを備え、
前記生産ラインは、前記ロボットが配置された複数のステーションを備え、
前記オブジェクト管理部は、シミュレーション対象である前記ステーションが属する生産ラインに関する情報であるライン属性データを示すシンボルと、前記ステーションに関する情報であるステーション属性データを示すシンボルとが階層構造で表示された選択表示部を備え、
該選択表示部を操作することにより、前記ライン属性データおよび前記ステーション属性データを選択可能であることを特徴とするシミュレーション装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、多関節型のロボットを有する生産システムの動作検証を行うシミュレーション装置に関し、特に、生産システムにおける種々のステーションに適用するシミュレーション装置に関する。
【０００２】
【従来の技術】
自動車のプレス部品の接合工程等において、多関節型のロボットが利用されている。このようなロボットの動作教示では、３次元ＣＡＤ等を用いることにより実機のロボットを不要とするオフラインによる教示、所謂オフラインティーチングが行われている。
【０００３】
自動車のプレス部品の接合工程では、例えば、図１５に示すような構成の生産システム５００が用いられている。このような生産システム５００の場合、３台のロボット５０２、５０４、５０６の相互干渉を防止するために、シーケンサ（プログラマブルロジックコントローラとも呼ばれる）５０８がネットワーク５１０を介して各ロボットコントローラ５１２、５１４、５１６に接続されており、各ロボット５０２、５０４、５０６の状態を監視および制御している。また、シーケンサ５０８は操作盤５１８や生産ライン（図示せず）等にも接続されて制御を行っている。生産システム５００の基本的な動作は操作盤５１８によって作業員が操作できるようになっている。
【０００４】
ロボット５０２、５０４、５０６は、例えば、６つの関節の動作により、６自由度を有する多関節型の産業用ロボットが用いられる。ロボット５０２、５０４、５０６の先端部には溶接ガン５２０が設けられており、この溶接ガン５２０によってワーク５２４の溶接を行うことができる。
【０００５】
図１５に示すような生産システム５００は、一連の製造工程における１つのステーションとして位置づけられている。各工程は１つまたは複数のステーションからなり、生産ラインには複数のステーションが設けられる。
【０００６】
ところで、オフラインティーチングによる教示動作を行った後に、動作の検証を行うためにシミュレーションを行う必要があるが、シミュレーションの条件設定方法は簡便であることが望ましい。
【０００７】
シミュレーションを行う方法として、シミュレーション装置上のモデルと実機とを同時に動作させて該モデルと実際のロボットとの動作を相互に確認する方法（例えば、特許文献１参照）が提案されている。
【０００８】
【特許文献１】
特開平８−８７３１６号公報（図１）
【０００９】
【発明が解決しようとする課題】
例えば、自動車メーカ等では、所有する複数の工場にそれぞれ複数の生産ラインがあり、各生産ラインに複数のステーションが設けられている。ロボットのシミュレーションを行う際に、各ステーション単位に、そのステーションに割り当てられた複数のロボットに対して同時にシミュレーションを実行すると、該ステーションにおける作業のサイクルタイムやロボット相互の相対的な動作等が把握できて好適である。
【００１０】
ところで、特許文献１に開示された方法では、ロボットコントローラおよびＰＬＣに接続された制御装置の記憶部にティーチングデータをロードした後にシミュレーションを実行している。ロボットが複数存在する場合には、それぞれ対応する制御装置に個別のティーチングデータをロードする必要がある。また、ＰＬＣにも対応するシーケンスプログラムをその都度ロードする必要がある。
【００１１】
従って、ステーションが多数存在し、各ステーションに対するシミュレーションを順番に繰り返して実行する場合には、ティーチングデータおよびシーケンスプログラムのロード作業が繁雑になる。シミュレーションの対象となる各ステーションは、備えられているロボットの数、種類および配置が異なる場合が多く、ティーチングデータをロードする際には、これらの条件を理解しなければならないので、担当者の負担が大きく、またロード作業に長時間を要する。
【００１２】
さらに、前記の特許文献１に開示された方法では、実際のロボットを動かすことにより動作検証を行うので、教示処理に実機が不要であるというオフラインティーチングの特徴が活かされない。
【００１３】
本発明はこのような課題を考慮してなされたものであり、ロボット、ロボットコントローラおよび操作盤等の複数の機器から構成されるステーションに対して、異なる条件のステーション毎に簡便な手順でシミュレーションを行うことを可能にするシミュレーション装置を提供することを目的とする。
【００１４】
【課題を解決するための手段】
本発明に係るシミュレーション装置は、ロボットを有する生産システムの動作検証を行うシミュレーション装置において、ロボット用のティーチングデータが供給され、該ティーチングデータに基づき、前記ロボットを示す仮想ロボットの動作制御を行うとともに、前記仮想ロボットの各関節の動作量を示すシミュレーションデータをリアルタイムに生成する擬似コントローラと、少なくとも前記擬似コントローラを制御するシーケンサと、前記シーケンサと前記擬似コントローラとを接続する主通信手段と、少なくとも前記シーケンサに対して操作信号の送受信を行う擬似操作盤と、前記シミュレーションデータに基づいて前記仮想ロボットの姿勢に関する情報を表示するビューワと、複数のシミュレーションの条件にそれぞれ適応したオブジェクトを設定および記憶するオブジェクト管理部と、前記擬似コントローラと前記ビューワと前記オブジェクト管理部と前記シーケンサとに接続される副通信手段と、を有し、前記オブジェクト管理部は、シミュレーションを実行する前に、シミュレーション条件に適応したオブジェクトを、前記副通信手段を介して、前記擬似コントローラ、前記擬似操作盤、前記シーケンサおよび／または前記ビューワに供給することを特徴とする。
【００１５】
このように、オブジェクト管理部によってオブジェクトを管理し、シミュレーションの条件に応じて、オブジェクトを擬似コントローラ、擬似操作盤、シーケンサおよび／またはビューワに供給することによって、ロボット、ロボットコントローラおよび操作盤等の複数の機器から構成されるステーションに対して、異なる条件のステーション毎に簡便な手順でシミュレーションを行うことができる。
【００１６】
この場合、前記オブジェクト管理部は、シミュレーションの条件に応じて、前記ビューワに前記ロボットの関節構成や寸法および設置位置等を示す描画情報を供給し、前記ビューワは、前記描画情報と前記シミュレーションデータとに基づいて前記仮想ロボットを３次元表示するようにすると、動作状態を把握しやすい。
【００１７】
また、前記オブジェクト管理部は、シミュレーションの条件に応じて、前記シーケンサにシーケンスプログラムまたはその生成用ファイルを供給するようにしてもよい。
【００１８】
前記オブジェクト管理部は、シミュレーションの条件に応じて、前記擬似コントローラに前記ティーチングデータを供給するようにしてもよい。
【００１９】
前記オブジェクト管理部は、シミュレーションの条件に応じて、前記擬似操作盤に画面生成情報を含む入出力プログラムを供給するようにしてもよい。
【００２０】
このようにすることにより、シーケンサ、擬似コントローラおよび擬似操作盤は、シミュレーションに適応したプログラム、ティーチングデータまたは操作画面を得ることができる。
【００２１】
さらに、前記主通信手段は複数種類が存在し、前記擬似コントローラおよび前記シーケンサは、前記オブジェクト管理部から供給されるネットワーク種別データに基づいて前記主通信手段のいずれか１つを選択するようにしてもよい。
【００２２】
このように主通信手段を選択可能にすると、シミュレーション対象が有する主通信手段と同じ種類のものを選択して使用することができるので、シミュレーションの精度が向上する。
【００２３】
前記生産システムは、ワークを搬送する生産ラインを備え、前記生産ラインは、前記ロボットが配置された複数のステーションを備え、前記オブジェクト管理部は、シミュレーション対象である前記ステーションが属する生産ラインに関する情報であるライン属性データを、前記擬似操作盤、前記擬似コントローラおよび／または前記シーケンサに供給するようにしてもよい。
【００２４】
前記生産システムは、ワークを搬送する生産ラインを備え、前記生産ラインは、前記ロボットが配置された複数のステーションを備え、前記オブジェクト管理部は、シミュレーション対象である前記ステーションに関する情報であるステーション属性データを、前記擬似操作盤、前記擬似コントローラおよび／または前記シーケンサに供給するようにしてもよい。
【００２５】
このように、オブジェクトをライン属性およびステーション属性に分類することにより、オブジェクトの管理、供給および操作が容易になる。
【００２６】
前記生産システムは、ワークを搬送する生産ラインを備え、前記生産ラインは、前記ロボットが配置された複数のステーションを備え、前記オブジェクト管理部は、シミュレーション対象である前記ステーションが属する生産ラインに関する情報であるライン属性データを示すシンボルと、前記ステーションに関する情報であるステーション属性データを示すシンボルとが階層構造で表示された選択表示部を備え、該選択表示部を操作することにより、前記ライン属性データおよび前記ステーション属性データを選択可能とすることにより、ライン属性とステーション属性との関係が明瞭になり、ライン属性データおよびステーション属性データの選択および管理が容易である。
【００２７】
【発明の実施の形態】
以下、本発明に係るシミュレーション装置について好適な実施の形態を挙げ、添付の図１〜図１５を参照しながら説明する。
【００２８】
図１および図２に示すように、本実施の形態に係るシミュレーション装置１０は、例えば、生産システム５００（図１５参照）における３台のロボット５０２、５０４、５０６の動作を仮想空間上でシミュレーションするものであり、実際のロボットコントローラ５１２、５１４、５１６の代わりに擬似コントローラ１２ａ、１２ｂ、１２ｃが仮想のロボットＲ１、Ｒ２、Ｒ３（図３参照）をそれぞれ制御する。
【００２９】
また、シミュレーション装置１０は、予備の擬似コントローラ１２ｄ、１２ｅ、１２ｆ、１２ｇ、１２ｈ、１２ｉ、１２ｊ、１２ｋ、１２Ｌを有する。つまり、シミュレーション装置１０は、擬似コントローラ１２ａ〜１２Ｌを用いて１２台のロボットのシミュレーションを実行することができる。なお、擬似コントローラを増設することにより１３台以上のロボットのシミュレーションを実行できることはもちろんである。
【００３０】
シミュレーション装置１０は、擬似コントローラ１２ａ〜１２Ｌと、シーケンス処理を行うシーケンサ１４と、擬似操作盤１６と、シミュレーションの結果を表示するビューワ１８と、ロボットＲ１、Ｒ２、Ｒ３のそれぞれのティーチングデータを作成するオフラインティーチングコンピュータ２０と、シミュレーションの条件等のデータであるオブジェクトを管理および供給するオブジェクト管理コンピュータ（オブジェクト管理部）２４とを有する。オフラインティーチングコンピュータ２０で作成するティーチングデータは、ロボットＲ１、Ｒ２、Ｒ３の動作プログラム自体と、動作経路を示す複数の教示点データと、ロボットＲ１、Ｒ２、Ｒ３の相互干渉を示す干渉領域のデータとから構成される。
【００３１】
擬似操作盤１６、ビューワ１８、オフラインティーチングコンピュータ２０およびオブジェクト管理コンピュータ２４は、それぞれモニタ画面１６ａ、１８ａ、２０ａ、２４ａを備える。
【００３２】
また、シミュレーション装置１０は、２つのＦＡ用ネットワーク（主通信手段）２６ａ、２６ｂと、汎用ネットワーク（副通信手段）２８とを有する。ＦＡ用ネットワーク２６ａ、２６ｂは、擬似コントローラ１２ａ〜１２Ｌとシーケンサ１４とを接続しており、これらの機器間のデータ通信を行う。汎用ネットワーク２８は、擬似コントローラ１２ａ〜１２Ｌと、シーケンサ１４と、擬似操作盤１６と、ビューワ１８と、オフラインティーチングコンピュータ２０と、オブジェクト管理コンピュータ２４とを接続しており、これらの機器間のデータ通信を行う。擬似操作盤１６とシーケンサ１４とは専用の通信手段２５で接続されている。擬似操作盤１６とシーケンサ１４とは、ＦＡ用ネットワーク２６ａ、２６ｂまたは汎用ネットワーク２８により通信を行うようにしてもよい。
【００３３】
擬似コントローラ１２ａ、１２ｂ、１２ｃ、シーケンサ１４、擬似操作盤１６およびＦＡ用ネットワーク２６ａ、２６ｂは、図１５に示す実際のロボットコントローラ５１２、５１４、５１６、シーケンサ５０８、操作盤５１８およびネットワーク５１０に相当する。
【００３４】
ロボットＲ１、Ｒ２、Ｒ３およびロボット５０２、５０４、５０６は、例えば、図３に示すような産業用の多関節ロボットであり、ベース部３０と、ベース部３０を基準にしてロボットの先端に向かって順に第１アーム３２、第２アーム３４および第３アーム３６と、第３アーム３６の先端に設けられた溶接ガン３８とを有する。第１アーム３２は、ベース部３０に対して水平および垂直に回動可能な軸Ｊ１、Ｊ２によって回動可能である。第２アーム３４は第１アーム３２と軸Ｊ３で回動可能に連結されている。第２アーム３４は軸Ｊ４によって捻れ回転が可能になっている。第３アーム３６は第２アーム３４と軸Ｊ５で回動可能に連結されている。第３アーム３６は軸Ｊ６によって捻れ回転が可能になっている。また、作業内容によっては、ロボットＲ１、Ｒ２、Ｒ３には付加軸が設けられることがある。例えば、第３アーム３６の先端と溶接ガン３８との間に回転または伸縮自在な第７の軸（図示せず）を設ける場合がある。
【００３５】
なお、ロボットＲ１、Ｒ２、Ｒ３およびロボット５０２、５０４、５０６は、溶接用ロボットに限らず、組み立て用ロボットや塗装用ロボット等でもよい。
【００３６】
図４に示すように、擬似コントローラ１２ａ〜１２Ｌは、プログラム実行部５０と、擬似動作部５２と、入出力部５４とを有しており、ロボットコントローラ５１２、５１４、５１６（図１５参照）と類似の作用をする。
【００３７】
プログラム実行部５０は、制御処理部５６と記憶部５８とを有し、オフラインティーチングコンピュータ２０から供給されるティーチングデータを記憶部５８に記憶し、制御処理部５６がティーチングデータに基づいてロボットＲ１、Ｒ２、Ｒ３および溶接ガン３８の移動指令値を生成する。生成した移動指令値は、ロボットの各軸Ｊ１〜Ｊ６および溶接ガン３８の開度の値として擬似動作部５２に供給する。
【００３８】
制御処理部５６は、先読み機能部６０とインターロック判断部６２とを有する。先読み機能部６０は、ティーチングデータに含まれる教示点が空間上で近接する箇所については、ロボットＲ１、Ｒ２、Ｒ３の動作に先行して移動指令値の生成を行う。これにより、ロボットＲ１、Ｒ２、Ｒ３は滑らかな動作が可能になる。インターロック判断部６２は、シーケンサ１４と情報の送受信を行いながらインターロックの要否を判断する。インターロックを行う必要がある場合には、擬似動作部５２に対する指令値をロックする。インターロック判断部６２は、判断の結果を入出力部５４にも供給する。
【００３９】
先読み機能部６０およびインターロック判断部６２は、実際のロボットコントローラ５１２、５１４、５１６が備えている機能と同じものである。
【００４０】
擬似動作部５２は、プログラム実行部５０から供給された各軸Ｊ１〜Ｊ６の移動指令値および溶接ガン３８の移動指令値に基づいてロボットＲ１、Ｒ２、Ｒ３の姿勢を推定する。推定によって求めた結果は、シミュレーションデータとしてプログラム実行部５０および入出力部５４を経由してビューワ１８に供給する。
【００４１】
擬似動作部５２は、ロボットＲ１、Ｒ２、Ｒ３の各軸Ｊ１〜Ｊ６の動作を推定するロボット擬似動作部６４と、付加軸の動作を推定する付加軸擬似動作部６６と、溶接ガン３８の動作を推定する溶接ガン動作推定部６８とを有する。
【００４２】
シミュレーションデータは、１組のデータ列Ｍ＝（θ１、θ２、θ３、θ４、θ５、θ６、θ７）で表される。このうち、データθ１〜θ６は、ロボットＲ１、Ｒ２、Ｒ３の各軸Ｊ１〜Ｊ６の角度（動作量）であり、ロボット擬似動作部６４によって求められる。データθ７は付加軸の動作量であり、付加軸擬似動作部６６によって求められる。
【００４３】
ロボット擬似動作部６４は、指令値に対する各軸Ｊ１〜Ｊ６の機械的な追従遅れ時間を推定するロボット追従遅れ時間推定部７０と、ティーチングデータによる予定された動作時間に対する到着時間の遅れを推定するロボット到着遅れ時間推定部７２とを有する。
【００４４】
付加軸擬似動作部６６は、付加軸の機械的な追従遅れ時間を推定する付加軸追従遅れ時間推定部７４と、ティーチングデータによる予定された動作時間に対する付加軸の到着時間の遅れを推定する付加軸到着遅れ時間推定部７６と、付加軸の電流値を検出してトルクの遅れ時間を推定する付加軸トルク到着遅れ時間推定部７８とを有する。付加軸トルク到着遅れ時間推定部７８は、付加軸の機械的な撓み時間を推定する撓み時間推定部８０と、トルクが安定するまでの時間を推定するトルク安定時間推定部８２とを有する。
【００４５】
ロボット擬似動作部６４には、付加軸トルク到着遅れ時間推定部７８に相当する機能が設けられていないが、付加軸以外の関節部、つまり軸Ｊ１〜Ｊ６については先読み機能部６０により同様の推定が可能である。
【００４６】
入出力部５４は、ＦＡ用ネットワーク２６ａ、２６ｂに対する入出力の信号や、プログラム実行部５０と擬似動作部５２との間の信号を検出する情報取得機能部８４と、汎用ネットワーク２８を介してビューワ１８にシミュレーションデータと入出力データを送信するシミュレーションデータ送出部８６とを有する。
【００４７】
入出力データは、擬似コントローラ１２ａ〜１２Ｌとシーケンサ１４との間で送受信されるインターロック信号と、その他の制御データから構成される。インターロック信号は、擬似コントローラ１２ａ〜１２Ｌからシーケンサ１４に送信されるインターロック設定信号およびインターロック解除信号と、シーケンサ１４から擬似コントローラ１２ａ〜１２Ｌへ送信するアンサ信号等を含む。その他の制御データとしては、例えば、溶接ガン３８または付加軸との間で送受信されるデータや、エラー信号や、サーボオン信号、サーボオフ信号等が挙げられる。入出力データを構成する各信号は、オン・オフで表される１ビットの信号である。従って、例えば、入出力データを構成する信号が１２８点（１６バイト）程度であれば、汎用ネットワーク２８により高速に伝送可能である。
【００４８】
入出力部５４は、汎用ネットワーク２８とのインターフェースである第１ポート８８、ＦＡ用ネットワーク２６ａ、２６ｂとのインターフェースである第２および第３ポート９０ａ、９０ｂに接続されている。
【００４９】
擬似コントローラ１２ａ〜１２Ｌにおける第２ポート９０ａ、第３ポート９０ｂや、プログラム実行部５０は、実際のロボットコントローラ５１２、５１４、５１６におけるポートやプログラム実行部と略同仕様に構成されている。
【００５０】
図２に戻り、シーケンサ１４は、シーケンス処理により擬似コントローラ１２ａ〜１２Ｌの動作を制御するものであり、実際のシーケンサ５０８と同仕様のハードウェアが使用される。
【００５１】
シーケンサ１４は、オブジェクト管理コンピュータ２４から供給されるラダープログラム生成用ファイル１６２（図６参照）が変換されたシーケンスプログラムを実行する動作処理機能部９６を有する。
【００５２】
処理時間設定部９４は、入出力処理時間設定部９８と内部処理時間設定部１００とを有し、サイクル時間が実際のシーケンサ５０８と同じとなるようにウェイト時間などが設定される。また、シーケンサ１４はＦＡ用ネットワーク２６ａ、２６ｂに対して入出力を行う入出力部２７を有する。
【００５３】
シーケンサ１４で実行されるシーケンスプログラムはシーケンサ５０８と基本的に同一のものが用いられている。従って、例えば、シーケンサ１４は実際のロボットコントローラ５１２、５１４、５１６を制御することも可能である。
【００５４】
シーケンサ１４は、ＦＡ用ネットワーク２６ａまたは２６ｂを介して各擬似コントローラ１２ａ〜１２ＬからロボットＲ１、Ｒ２、Ｒ３の干渉領域に対するインターロック設定信号またはインターロック解除信号を受け取り、全てのロボットＲ１、Ｒ２、Ｒ３の状態を把握して干渉が発生しないことを確認する。干渉が発生しないと判断した場合、進行許可を示すアンサ信号を返送する。
【００５５】
擬似操作盤１６は、オブジェクト管理コンピュータ２４から画面生成用設定ファイル１６８（図６参照）に基づいてモニタ画面１６ａの画面設定を行い、擬似操作処理部１０４が実際の操作盤５１８（図１５参照）の作用を代替する。擬似操作処理部１０４は、入力および表示を行う入力・表示機能部１０６と、シミュレーションの開始から終了までの時間を計測する時間測定機能部１０８とを有する。入力・表示機能部１０６は、汎用のキーボード、マウスおよびモニタを用いることができる。擬似操作盤１６のモニタ画面１６ａはタッチパネル式でもよい。時間測定機能部１０８は、オペレーティングシステムが備えるタイマ機能を用いることができる。実際の操作盤５１８が移動可能である場合には、操作盤５１８自体を汎用ネットワーク２８に接続して擬似操作盤１６として用いてもよい。また、擬似操作盤１６は、所定の操作によってシミュレーションのスタート信号（操作信号）をシーケンサ１４に送信することができる。
【００５６】
擬似操作盤１６のモニタ画面１６ａには、図５に示すように、マウスにより操作可能なウィンドウ形式の操作画面１０９が表示される。この操作画面１０９において、第１インディケータ１０９ａは入出力データに基づいてシミュレーションの実況状況を示す領域である。サイクルタイム表示テーブル１０９ｂは時間測定機能部１０８により計測したシミュレーション時間を表示する領域である。サイクルタイム表示テーブル１０９ｂに表示されるシミュレーション時間は所定の記録部に記録される。機種コンボボックス１０９ｃは生産機種を選定する領域である。タグパネル１０９ｄはアラームおよびその説明を表示する領域である。第１モード選択スイッチ部１０９ｅおよび第２モード選択スイッチ部１０９ｆはそれぞれシミュレーションの動作モードを選択する領域である。
【００５７】
なお、シーケンサ１４には、一般的に計時機能が設けられているので、この計時機能によって計測したシミュレーション時間をサイクルタイム表示テーブル１０９ｂに表示するようにしてもよい。
【００５８】
第２インディケータ１０９ｇはロボットＲ１、Ｒ２、Ｒ３のシミュレーション状況を示す領域である。第２インディケータ１０９ｇにおいて、ロボットＲ１、Ｒ２、Ｒ３相互間におけるインターロックの状況は矢印で示される。図５では、ロボットＲ２の動作により、ロボットＲ１が待機している状況を示す。異常が発生した場合には、対応するロボットＲ１、Ｒ２、Ｒ３を示すボックスの色が変更される。また、利用されない予備のロボットについては「＊＊＊」の文字列が表示される。ロボット選定スイッチ部１０９ｈは、シミュレーションの実行対象となるロボットＲ１、Ｒ２、Ｒ３を選択する領域である。
【００５９】
図２に戻り、ビューワ１８は、シミュレーションの結果をリアルタイムに表示するコンピュータであり、ビューワデータ（描画情報）１１０と画像変換部１１２とを有する。ビューワデータ１１０は、各ロボットＲ１、Ｒ２、Ｒ３の関節構成や寸法および設置位置等の情報である。ビューワデータ１１０は、オブジェクト管理コンピュータ２４から供給される。
【００６０】
画像変換部１１２は、関節角度画像変換機能部１１４とＩ・Ｏ情報画像変換機能部１１６とを有する。関節角度画像変換機能部１１４は、各擬似コントローラ１２ａ〜１２Ｌから供給されるシミュレーションデータとビューワデータ１１０とに基づいて各ロボットＲ１、Ｒ２、Ｒ３をソリッドモデルによって３次元表示する。
【００６１】
Ｉ・Ｏ情報画像変換機能部１１６は、各擬似コントローラ１２ａ〜１２Ｌから供給される入出力データの内容を表示する。また、Ｉ・Ｏ情報画像変換機能部１１６は、供給された入出力データを一覧形式で表示したり、入出力データのうち所定の信号に基づいてソリッドモデルの表示色を変更する機能をもつ。例えば、エラー信号やサーボオン信号が発生したときには、対応するロボットＲ１、Ｒ２、Ｒ３または対応する箇所の色を変更または点滅表示させる。さらに、インターロック信号に基づいて、ロボットＲ１、Ｒ２、Ｒ３のインターロック状態を表示する。つまり、どのロボットがどの干渉領域に入っていて、どのロボットがインターロックによる動作停止状態であるかをグラフィック形式または文字情報形式として表示する。
【００６２】
ビューワ１８は、シミュレーションの結果表示を行うものであり、またロボットＲ１、Ｒ２、Ｒ３同士の干渉回避処理や動作プログラムの実行または解析等を行うことがないので汎用の３次元ＣＡＤシステムを適用することができる。ビューワ１８は、３次元ＣＡＤの一般的な機能、例えば、視点位置の変更、拡大、縮小表示等の機能が利用可能である。
【００６３】
オフラインティーチングコンピュータ２０は、ロボットＲ１、Ｒ２、Ｒ３のティーチングデータをオフラインで作成するものである。オフラインティーチングコンピュータ２０は、各ロボットＲ１、Ｒ２、Ｒ３を３次元表示させながら、一連の動作を順番に教示点データとして設定することができる。
【００６４】
オフラインティーチングコンピュータ２０は、必ずしも汎用ネットワーク２８に接続されている必要はない。オフラインティーチングコンピュータ２０で作成されたティーチングデータは、他の通信手段または汎用の記録媒体を介して擬似コントローラ１２ａ〜１２Ｌにロードしてもよい。
【００６５】
オブジェクト管理コンピュータ２４は、汎用ネットワーク２８に対して信号の送受信を行うデータ配信機能部１２０と、シミュレーションを行うためのオブジェクトを設定し格納するオブジェクトデータベース１２２と、シミュレーションの条件に対応する実態的なオブジェクトの記憶部であるオブジェクト記憶部１２４とを有する。オブジェクトとは、生産ラインまたはステーションの情報、またはシミュレーション装置１０の構成に関する情報が記録されたデータまたはプログラムである。
【００６６】
また、オブジェクト管理コンピュータ２４は、シミュレーションの実行結果を擬似コントローラ１２ａ〜１２Ｌまたはビューワ１８等からログ形式で受信してシミュレーション結果データ１２６として記録可能である。
【００６７】
図６に示すように、オブジェクトデータベース１２２には、シミュレーション装置１０の各機器に関する情報が記録された設備構成データ１３０と、生産ラインにおけるシステムの情報が記録されたシステム属性データ１３２と、生産ラインに関する情報が記録されたライン属性データ１３４と、ステーションに関する情報が記録されたステーション属性データ１３６とを有する。
【００６８】
設備構成データ１３０は、シーケンサ設定データ１４０と、擬似操作盤設定データ１４２と、ビューワ設定データ１４４と、擬似コントローラデータ１４５とを有し、それぞれ汎用ネットワーク２８に接続された各機器のＩＰアドレス、ポート番号およびネットワークＩＤ番号等が記録されている。
【００６９】
システム属性データ１３２は、擬似コントローラ１２ａ〜１２Ｌやビューワ１８等で使用されるアプリケーションプログラムに関する情報が記録された個別アプリケーション情報データ１４６と、擬似コントローラ１２ａ〜１２Ｌ以外にシミュレーション対象とする機器に関する情報が記録された個別接続機器情報データ１４８とを有する。
【００７０】
ライン属性データ１３４は、対応する生産ラインにおける機種およびワークの種類を記録した生産機種データ１５０を有する。
【００７１】
ステーション属性データ１３６は、ＦＡ用ネットワーク２６ａまたは２６ｂ（図２参照）のいずれを用いるかが記録されたネットワーク種別データ１５２と、ＦＡ用ネットワーク２６ａまたは２６ｂにおける擬似コントローラ１２ａ〜１２Ｌの各ＩＰアドレスおよびネットワークＩＤ番号が記録されたロボットネットワーク情報データ１５４とを有する。また、ステーション属性データ１３６は、使用する擬似コントローラ１２ａ〜１２Ｌの種別が記録されたロボット情報データ１５６と、ロボットＲ１、Ｒ２、Ｒ３…の相互間におけるインターロックに関する情報が記録されたロボットインターロック情報データ１５８と、シミュレーションを実行する際に必要となるデータが記録されたオブジェクト情報データ１６０とを有する。
【００７２】
ロボットインターロック情報データ１５８は、インターロックに関する情報に基づいてラダープログラムを生成するための条件が設定されたラダープログラム生成用ファイル１６２を含む。
【００７３】
オブジェクト情報データ１６０は、ロボットＲ１、Ｒ２、Ｒ３の関節構成、寸法等の情報が記録されたビューワデータ（描画情報）１６４と、擬似コントローラ１２ａ〜１２ＬとロボットＲ１、Ｒ２、Ｒ３…との割り付けを示すロボット割付データ１６６と、擬似操作盤１６において操作画面１０９（図５参照）を表示するためのデータである画面生成用設定ファイル１６８とを有する。また、オブジェクト情報データ１６０は、オフラインティーチングコンピュータ２０（図１参照）で作成したティーチングデータ１７０を有する。
【００７４】
ビューワデータ１６４は、ビューワ１８へ送信されてビューワデータ１１０（図２参照）として参照される。ティーチングデータ１７０は、シミュレーションで用いる擬似コントローラ１２ａ〜１２Ｌに対してそれぞれ用意され、生産ラインで生産される全てのワークに対応することができる。さらに、オブジェクト情報データ１６０は、ＦＡ用ネットワーク２６ａまたは２６ｂで通信を行うために必要な情報が記録された通信設定データ１７２を有する。
【００７５】
ライン属性データ１３４は、対象となる生産ラインの数に応じて増減可能であり、それぞれの生産ラインに対して１つのライン属性データ１３４が適用される。ステーション属性データ１３６は、対象となるステーションの数に応じて増減可能であり、それぞれのステーションに対して１つのステーション属性データ１３６が適用される。
【００７６】
また、ライン属性データ１３４とステーション属性データ１３６とは階層構造になっており、ライン属性データ１３４の下位に１つまたは複数のステーション属性データ１３６が設定されている。具体的には、ライン属性データ１３４には下位のステーション番号を示す下位階層データ（図示せず）が記録されており、ステーション属性データ１３６には、上位の生産ラインを示す上位階層データ（図示せず）が記録されている。さらに、ライン属性データ１３４は、それぞれ複数に区分して管理することが可能であり、この区分の単位は「ゾーン」と呼ばれる。複数のステーション属性データ１３６は、それぞれ１つの工程毎にまとめて管理することが可能である。また、ステーション属性データ１３６は、それぞれ生産ラインにおける配置が右側、左側、左右両側のいずれであるかが「Ａサイド」、「Ｂサイド」、「ＡＢサイド」と表される「サイド」と呼ばれる小属性を付加することが可能である。従って、見かけ上、上位から順に「ライン」、「ゾーン」、「工程」、「ステーション」および「サイド」の５区分の階層構造に分類して管理することができる。
【００７７】
次に、オブジェクト管理コンピュータ２４のモニタ画面２４ａに表示されるオブジェクト管理画面２００について図７〜図１１を参照しながら説明する。オブジェクト管理画面２００は、オブジェクトの設定および転送を行うための操作用の画面である。
【００７８】
図７に示すように、オブジェクト管理画面２００は、メニューバー２０２と、データ選択部２０４と、ダイアログ表示部２０６と、状態表示部２０７とから構成される。メニューバー２０２のファイルメニュー２０８は、ファイルの新規設定および操作の終了等を示すサブメニューを表示させるメニューである。挿入メニュー２１０は、ライン属性データ１３４およびステーション属性データ１３６の追加または削除を示すサブメニューを表示させるメニューである。シミュレーションメニュー２１２は、マウスカーソル２１４の操作によりダウンロードサブメニュー２１６、イニシャライズサブメニュー２１８、ログアップロードサブメニュー２２０、ベリファイサブメニュー２２２およびシステム設定サブメニュー２２４を表示させるメニューである。
【００７９】
イニシャライズサブメニュー２１８を選択することにより、所定の初期設定を行うことができる。ログアップロードサブメニュー２２０を選択することにより、シミュレーション結果を示すログデータをアップロードしてシミュレーション結果データ１２６（図１参照）として記録することができる。ベリファイサブメニュー２２２を選択することにより、オブジェクト管理コンピュータ２４で管理している各種のオブジェクトと、擬似コントローラ１２ａ〜１２Ｌ、シーケンサ１４、擬似操作盤１６およびビューワ１８に格納しているオブジェクト（またはデータ）とを比較確認することができる。システム設定サブメニュー２２４を選択することにより、システム属性データ（図６参照）１３２の編集を行うことができる。
【００８０】
また、ダウンロードサブメニュー２１６を選択することにより、オブジェクトのうち、所定のライン属性データ１３４およびステーション属性データ１３６を擬似コントローラ１２ａ〜１２Ｌ、シーケンサ１４、擬似操作盤１６およびビューワ１８に供給することができる。具体的には、ダイアログ表示部２０６にダウンロードダイアログ２２６が表示され、データの転送状況に合わせてチェックマーク２２６ａの数が増えるように表示される。このとき、詳細な状況が状態表示部２０７に表示される。
【００８１】
データ選択部２０４は、設備構成データ１３０の選択編集をするための設備構成データ選択パネル２２８と、ライン属性データ１３４の選択編集をするためのライン属性データ選択パネル２３０と、ステーション属性データ１３６の選択編集をするためのステーション属性データ選択パネル２３２とから構成される。
【００８２】
設備構成データ選択パネル２２８は、シーケンサ設定データ１４０を選択編集するためのシーケンサ設定ボタン２３４と、擬似操作盤設定データ１４２を選択編集するための擬似操作盤設定ボタン２３６と、ビューワ設定データ１４４を選択編集するためのビューワ設定ボタン２３８と、擬似コントローラデータ１４５を選択編集するためのロボットコントローラ設定ボタン２４０とを有する。
【００８３】
ライン属性データ選択パネル２３０には、挿入メニュー２１０で設定されたラインの名称およびゾーンの名称が表示される。例えば、「Ｃｓｓ−Ｎｏ．１」という表示がラインの名称であり、「Ａ−Ｚｏｎｅ」という表示がゾーンの名称である。ステーション属性データ選択パネル２３２には、挿入メニュー２１０で設定された工程の名称およびステーションの名称が表示される。例えば、「ＦＲ−ＣＯＭＰ」という表示が工程の名称であり、「１ＳＴ」という表示がステーションの名称である。これらのライン、ゾーン、工程およびステーションは、それぞれツリー状の階層形式で表示されている。
【００８４】
設備構成データ１３０のうち、例えば、擬似コントローラデータ１４５を編集する際には、図８に示すように、ロボットコントローラ設定ボタン２４０をマウスカーソル２１４で選択することによって、ダイアログ表示部２０６にコントローラアドレス設定ダイアログ２４２が表示される。このコントローラアドレス設定ダイアログ２４２のネットワークタブ２４６を選択することにより、アドレステーブル２４８が表示されるので、このアドレステーブル２４８においてＩＰアドレス等を設定する。設定したデータは擬似コントローラデータ１４５として記録される。
【００８５】
ライン属性データ１３４の生産機種データ１５０を編集する際には、図９に示すように、ラインの名称のうち、例えば、「Ｃｓｓ−Ｎｏ．１」という表示をマウスカーソル２１４で選択することによって、ダイアログ表示部２０６に生産機種設定ダイアログ２５０が表示される。この生産機種設定ダイアログ２５０の機種タブ２５２を選択することにより、機種テーブル２５４が表示されるので、この機種テーブル２５４において対応する機種およびワークの種類に関する情報を設定する。設定したデータは、生産機種データ１５０として記録される。
【００８６】
生産機種データ１５０は、ダウンロードの処理を行うことによって擬似操作盤１６に供給され、操作画面１０９（図５参照）の機種コンボボックス１０９ｃに反映される。
【００８７】
ステーション属性データ１３６のネットワーク種別データ１５２及びオブジェクト情報データ１６０を編集する際には、図１０に示すように、ステーションの名称のうち、例えば、「２ＳＴ」という表示をマウスカーソル２１４で選択することによって、ダイアログ表示部２０６にステーション設定ダイアログ２５６が表示される。このステーション設定ダイアログ２５６のオブジェクト・ネットワークタブ２５８を選択することにより、オブジェクト設定テーブル２６０が表示されるので、このオブジェクト設定テーブル２６０においてオブジェクト情報データ１６０の設定を行う。例えば、オブジェクト設定テーブル２６０の欄２６０ａは、擬似コントローラ１２ａへ供給するためのティーチングデータ１７０の指定をする欄である。
【００８８】
また、ステーション設定ダイアログ２５６のネットワーク種別コンボボックス２６２を操作することにより、ＦＡ用ネットワーク２６ａまたは２６ｂのいずれかを選択することができる。このネットワーク種別コンボボックス２６２による選択情報は、ネットワーク種別データ１５２として記録される。
【００８９】
さらに、ステーション属性データ１３６のロボットインターロック情報データ１５８を編集する際には、図１１に示すように、ステーション設定ダイアログ２５６のインターロックタブ２６６を選択することにより、インターロックテーブル２６８が表示されるので、このインターロックテーブル２６８においてインターロック処理に関する必要な情報を入力する。インターロックテーブル２６８で設定した情報はロボットインターロック情報データ１５８に記録され、さらに、所定のラダープログラムと結合されてラダープログラム生成用ファイル１６２となる。
【００９０】
オブジェクト管理画面２００および前記の操作画面１０９（図５参照）における表示は、他の適当な方法で行ってもよいことはもちろんであり、例えば、文字列で表示される情報をシンボルや色の変化によって示すようにしてもよい。
【００９１】
次に、このように構成されるシミュレーション装置１０を用いてシミュレーションを行う方法について図１２を参照しながら説明する。
【００９２】
まず、ステップＳ１において、シミュレーション装置１０における汎用ネットワーク２８に接続された各機器の情報、つまり設備構成データ１３０を設定する。具体的には、オブジェクト管理コンピュータ２４のオブジェクト管理画面２００（図８参照）において、設備構成データ選択パネル２２８に表示されている所定のボタンをクリックしてアドレスやＩＰの設定を行う。例えば、擬似コントローラ１２ａ〜１２Ｌの設定を行う際には、アドレステーブル２４８を操作して設定する。
【００９３】
各機器の入れ替え等を行わない限り、設備構成データ１３０を再設定する必要はなく、このステップＳ１の処理は省略可能である。
【００９４】
次に、ステップＳ２において、オフラインティーチングコンピュータ２０で作成したロボットＲ１、Ｒ２、Ｒ３のティーチングデータ１７０をオブジェクト記憶部１２４（図１参照）に記録する。各ティーチングデータ１７０に関する情報はオブジェクト情報データ１６０に登録される。
【００９５】
次に、ステップＳ３において、オブジェクト管理コンピュータ２４を操作し、シミュレーションを行う搬送ラインおよびステーションに関する情報を設定する。
【００９６】
例えば、システム属性データ１３２を設定する際には、システム設定サブメニュー２２４を選択した後、所定の操作画面で設定を行う。また、ライン属性データ１３４の生産機種データ１５０を設定する際には、機種テーブル２５４（図９参照）を操作することにより設定を行う。さらに、例えば、ステーション属性データ１３６のネットワーク種別データ１５２を設定する際には、ネットワーク種別コンボボックス２６２（図１０参照）を操作することにより設定を行う。
【００９７】
設定したデータは記録されるので、オブジェクト管理コンピュータ２４を起動するたびに再設定する必要はない。
【００９８】
新たな生産ラインやステーションを設定する際には、挿入メニュー２１０（図７）を操作してライン属性データ選択パネル２３０またはステーション属性データ選択パネル２３２に対応する生産ラインまたはステーションを追加する。
【００９９】
システム属性データ１３２、ライン属性データ１３４およびステーション属性データ１３６を変更または追加する必要がない場合には、このステップＳ３の処理は省略可能である。
【０１００】
次に、ステップＳ４において、オブジェクト管理画面２００（図７参照）のステーション属性データ選択パネル２３２でシミュレーションを行うステーションを選択した後、ダウンロードサブメニュー２１６を指定することによりオブジェクトの送信を行う。ことのき、ダウンロードダイアログ２２６により送信の状態が表示される。オブジェクト管理コンピュータ２４が行うダウンロード処理方法の詳細については後述する。
【０１０１】
また、ティーチングデータ１７０は、擬似コントローラ１２ａ〜１２Ｌのうち実際にシミュレーションに使用するものに対してのみ供給を行う。例えば、生産システム５００のシミュレーションを行う場合、３台の擬似コントローラ１２ａ、１２ｂ、１２ｃにのみティーチングデータ１７０を送信すればよい。
【０１０２】
以下の説明では、シミュレーション時に擬似コントローラ１２ａ、１２ｂ、１２ｃを動作させるものとする。
【０１０３】
次に、ステップＳ５において、シミュレーションを実行するための初期処理を行う。シーケンサ１４における初期処理では、生成したシーケンスプログラムに対して処理時間設定部９４により動作周期の設定を行う。
【０１０４】
擬似操作盤１６における初期処理では、供給された画面生成用設定ファイル１６８に基づき、モニタ画面１６ａの設定と入出力プログラムの設定を行う。
【０１０５】
ビューワ１８における初期処理では、供給されたビューワデータ１１０により各ロボットＲ１、Ｒ２、Ｒ３および周辺設備に関するデータを認識し、３次元描画の設定を行う。
【０１０６】
次に、ステップＳ６において、擬似操作盤１６の操作画面１０９（図５参照）を操作して、シミュレーション動作の開始指示命令を各擬似コントローラ１２ａ、１２ｂ、１２ｃおよびシーケンサ１４に送信する。このとき、擬似操作盤１６の時間測定機能部１０８（図２参照）は、シミュレーション時間の計測を開始する。
【０１０７】
また、操作画面１０９の機種コンボボックス１０９ｃで生産機種を選定する。この生産機種に関する情報は各擬似コントローラ１２ａ、１２ｂ、１２ｃに送信される。
【０１０８】
各擬似コントローラ１２ａ、１２ｂ、１２ｃのプログラム実行部５０は、記憶部５８に格納したティーチングデータのうち、指定の生産機種に対応したデータに従って同時に動作を開始する。また、シーケンサ１４は格納したシーケンスプログラムを実行する。
【０１０９】
次に、ステップＳ７において、シーケンサ１４、擬似コントローラ１２ａ、１２ｂ、１２ｃおよびビューワ１８がそれぞれ連動しながらシミュレーション動作を行う。
【０１１０】
具体的には、擬似コントローラ１２ａ、１２ｂ、１２ｃは、ティーチングデータ１７０に基づいてロボットＲ１、Ｒ２、Ｒ３のシミュレーションを行い、ロボットＲ１、Ｒ２、Ｒ３に関するシミュレーションデータをビューワ１８に供給する。ビューワ１８は、供給されたシミュレーションデータと、ビューワデータ１１０とに基づいてロボットＲ１、Ｒ２、Ｒ３をリアルタイムに３次元表示する。
【０１１１】
また、擬似コントローラ１２ａ、１２ｂ、１２ｃは、ティーチングデータ１７０に含まれる干渉領域に関する情報を参照し、ロボットＲ１、Ｒ２、Ｒ３が干渉領域に進入する際にはシーケンサ１４にインターロック設定信号を送信する。シーケンサ１４は、シーケンスプログラムに組み込まれているロボットインターロック情報データ１５８に基づき、ロボットＲ１、Ｒ２、Ｒ３同士の干渉が発生しないことを確認した後に、インターロック設定信号の送信元に対して進入許可を示すアンサ信号を送信する。
【０１１２】
さらに、擬似コントローラ１２ａ、１２ｂ、１２ｃは、ロボットＲ１、Ｒ２、Ｒ３が干渉領域から退出する際には、シーケンサ１４に対してインターロック解除信号を送信する。シーケンサ１４は、内部フラグを監視して、ロボットＲ１、Ｒ２、Ｒ３同士が干渉するおそれがある場合には、インターロック解除信号を受信するまで、アンサ信号の送出を留保する。
【０１１３】
また、シーケンサ１４が受信するインターロック設定信号およびインターロック解除信号と、シーケンサ１４が送信するアンサ信号に関する情報は、リアルタイムで擬似操作盤１６に供給される。擬似操作盤１６では、これらの信号に基づき、第２インディケータ１０９ｇ（図５参照）にインターロックの状態を矢印により表す。
【０１１４】
なお、シミュレーションを実行している最中は、オフラインティーチングコンピュータ２０およびオブジェクト管理コンピュータ２４は処理を行う必要がない。
【０１１５】
次に、ステップＳ８において、擬似コントローラ１２ａ、１２ｂ、１２ｃは、格納したティーチングデータに基づいた処理が終了すると、シーケンサ１４に終了を示す信号を送信する。シーケンサ１４は、３台の擬似コントローラ１２ａ、１２ｂ、１２ｃからそれぞれ終了通知を受信した後、擬似操作盤１６およびビューワ１８にシミュレーションの終了を示す信号（操作信号）を送信する。
【０１１６】
この信号により、擬似操作盤１６および擬似コントローラ１２ａ、１２ｂ、１２ｃはシミュレーションに対応した処理を終了し、擬似操作盤１６の時間測定機能部１０８はシミュレーションに要した時間を操作画面１０９のサイクルタイム表示テーブル１０９ｂ（図５参照）に表示する。
【０１１７】
次に、オブジェクト管理コンピュータ２４からオブジェクトをダウンロードする方法について図１３を参照しながら説明する。
【０１１８】
ダウンロードサブメニュー２１６が選択された後、図１３のステップＳ１０１において、オブジェクト管理コンピュータ２４は、シミュレーションを行うために必要な全てのオブジェクトが入力されていることを確認する。シミュレーションを行うために設定が不足しているときにはエラーメッセージを表示し、再設定を促す。
【０１１９】
次に、ステップＳ１０２において、汎用ネットワーク２８に接続されている機器、すなわち擬似コントローラ１２ａ〜１２Ｌ、シーケンサ１４、擬似操作盤１６、ビューワ１８が設定されたアドレスに対応して接続されていることを確認する。具体的には、接続確認要求信号を送信してその応答信号を受信することにより接続を確認する。また、シーケンサ１４の応答信号に含まれるシーケンサ１４自身の機種コードを確認する。
【０１２０】
次に、ステップＳ１０３において、擬似コントローラ１２ａ〜１２Ｌ、シーケンサ１４、擬似操作盤１６、ビューワ１８に対して、各機器が備えるアプリケーションの停止指令信号を送信する。これにより、擬似コントローラ１２ａ〜１２Ｌ、シーケンサ１４、擬似操作盤１６、ビューワ１８は、その時点で実行中の各アプリケーションを停止し、シミュレーションに必要なデータ、オブジェクトの受信待ちの状態となる。また、擬似コントローラ１２ａ〜１２Ｌ、シーケンサ１４、擬似操作盤１６、ビューワ１８は、それぞれその時点で使用しているオブジェクトを所定の記憶領域へ待避させる。
【０１２１】
次に、ステップＳ１０４において、オブジェクト管理コンピュータ２４は、ロボットインターロック情報データ１５８に基づいてラダープログラム生成用ファイル１６２を作成する。また、入力情報に基づいて画面生成用設定ファイル１６８を作成する。
【０１２２】
次に、ステップＳ１０５において、オブジェクト管理コンピュータ２４は、擬似コントローラ１２ａ、１２ｂ、１２ｃ、シーケンサ１４、擬似操作盤１６、ビューワ１８に対してそれぞれ対応するオブジェクトを送信する。
【０１２３】
つまり、擬似コントローラ１２ａ、１２ｂ、１２ｃに対しては、ネットワーク種別データ１５２、ロボットネットワーク情報データ１５４、ロボット割付データ１６６、ティーチングデータ１７０および通信設定データ１７２を送信する。ティーチングデータ１７０が供給されない擬似コントローラ１２ｄ〜１２Ｌは待機状態を保持する。
【０１２４】
擬似コントローラ１２ａ、１２ｂ、１２ｃは、供給されたティーチングデータ１７０に基づいて、ロボットＲ１、Ｒ２、Ｒ３のシミュレーションを行うことができる。
【０１２５】
シーケンサ１４に対しては、ネットワーク種別データ１５２、ロボットネットワーク情報データ１５４、ラダープログラム生成用ファイル１６２、ロボット割付データ１６６、および通信設定データ１７２を送信する。シーケンサ１４は、ラダープログラム生成用ファイル１６２によって実行可能なシーケンスプログラムを生成することができる。
【０１２６】
さらに、ネットワーク種別データ１５２により、擬似コントローラ１２ａ、１２ｂ、１２ｃおよびシーケンサ１４は、ＦＡ用ネットワーク２６ａまたは２６ｂのうち適用する一方を選択することができる。
【０１２７】
擬似操作盤１６に対しては、生産機種データ１５０、ロボット情報データ１５６、画面生成用設定ファイル１６８を送信する。擬似操作盤１６は、画面生成用設定ファイル１６８に基づいて操作画面１０９（図５参照）を表示させることができる。また、生産機種データ１５０を機種コンボボックス１０９ｃに反映させることができる。
【０１２８】
ビューワ１８に対しては、ビューワデータ１６４およびロボット割付データ１６６を送信する。ビューワ１８は、ビューワデータ１６４およびロボット割付データ１６６と、シミュレーション実行中に擬似コントローラ１２ａ、１２ｂ、１２ｃから供給されるシミュレーションデータに基づいてロボットＲ１、Ｒ２、Ｒ３を３次元表示させることができる。
【０１２９】
次に、ステップＳ１０６において、オブジェクト管理コンピュータ２４は、各機器に対して所定のアプリケーションプログラムの実行を指示する。これにより、擬似コントローラ１２ａ、１２ｂ、１２ｃ、シーケンサ１４、擬似操作盤１６およびビューワ１８は供給されたオブジェクトに基づいてアプリケーションプログラムを起動させ、シミュレーションの実行準備を行う。この後、前記のステップＳ６の処理、つまり擬似操作盤１６を操作することによりシミュレーションを行う。
【０１３０】
次に、シミュレーション実行中のビューワ１８の処理内容について図１４を参照しながら説明する。
【０１３１】
図１４のステップＳ２０１において、ビューワ１８は、擬似コントローラ１２ａ、１２ｂ、１２ｃからそれぞれシミュレーションデータを受信し、このシミュレーションデータとビューワデータ１１０とに基づいて、関節角度画像変換機能部１１４により各ロボットＲ１、Ｒ２、Ｒ３の姿勢を演算する。受信したシミュレーションデータは時系列形式に記憶する。
【０１３２】
次に、ステップＳ２０２において、各ロボットの姿勢をモニタ画面１８ａ上にソリッドモデルにより３次元表示する。表示の形式は、ワイヤフレーム形式や、数値列による情報表示等でもよい。
【０１３３】
次に、ステップＳ２０３において、擬似コントローラ１２ａ、１２ｂ、１２ｃからそれぞれ入出力データを受信して、時系列形式に記憶する。
【０１３４】
次に、ステップＳ２０４において、入出力データに基づく情報をモニタ画面１８ａ上にグラフィック形式または文字情報形式で表示する。
【０１３５】
次いで、ステップＳ２０５において、シミュレーションが終了か否かを判断する。すなわち、擬似操作盤１６から終了信号を受信した場合には、次のステップＳ２０６へ移り、終了信号が検出されない場合にはステップＳ２０１に戻る。
【０１３６】
ステップＳ２０６においては、記憶したシミュレーションデータおよび入出力データに基づいて各ロボットＲ１、Ｒ２、Ｒ３の動作のタイミングチャートを生成する。このタイミングチャートは、シミュレーションの開始から終了までの間における動作、溶接、インターロックによる待機、エラー発生等の各ロボットＲ１、Ｒ２、Ｒ３の状態を時系列的に表す。生成したタイミングチャートは、モニタ画面１８ａ上に表示するとともに所定の記憶部に記憶する。
【０１３７】
このステップＳ２０１〜Ｓ２０５で形成されるループは、微小時間で実行されるので、モニタ画面１８ａには、ロボットＲ１、Ｒ２、Ｒ３の姿勢および入出力データに基づく情報がリアルタイムで表示される。
【０１３８】
上述したように、本実施の形態に係るシミュレーション装置１０によれば、オブジェクト管理コンピュータ２４から各機器に対して汎用ネットワーク２８を介してリモートアクセスし、それぞれの機器に設定されているデータを送受信することが可能になり、オブジェクト管理コンピュータ２４でデータを一括管理することで、データ管理の作業を簡素化することができる。
【０１３９】
また、生産ラインやステーションの設定変更を行う場合、オブジェクト管理コンピュータ２４の操作によって、対応するライン属性データ１３４、ステーション属性データ１３６を選択および変更するだけでよい。オブジェクト管理コンピュータ２４は、擬似コントローラ１２ａ〜１２Ｌ、シーケンサ１４、擬似操作盤１６およびビューワ１８へはそれぞれ必要なオブジェクトを自動的に選択して供給するので、シミュレーション作業の担当者は、オブジェクトの選択やロードの作業を行う必要がなく、シミュレーションを行うための段取り作業が大幅に短縮される。シーケンサ１４、擬似コントローラ１２ａ〜１２Ｌ、擬似操作盤１６およびビューワ１８は、シミュレーションに適応したプログラム、ティーチングデータ、操作画面、ビューワデータ等を得ることができる。
【０１４０】
この際、オブジェクト管理コンピュータ２４は、ロボットインターロック情報データ１５８に基づいてラダープログラム生成用ファイル１６２を自動的に生成するので、シミュレーション作業の担当者は、ラダープログラムのソースコードを操作する必要がない。また、シミュレーション装置１０の各機器の接続を変更する必要はない。
【０１４１】
このように、シミュレーション装置１０においては、異なる条件のステーション毎に簡便な手順でシミュレーションを行うことができる。
【０１４２】
さらに、オブジェクト管理コンピュータ２４では、シミュレーションのオブジェクトをライン属性データ１３４およびステーション属性データ１３６による階層構造で記憶しているので、これらのデータの管理および選択が容易である。
【０１４３】
実際のステーションまたは生産ラインでは、複数のＦＡ用ネットワーク２６ａまたは２６ｂのいずれかに相当するネットワークが用いられているが、これらのネットワークと同じ仕様（または規格）のものを選択的に適用可能であり、実際の動作を正確に再現することができるのでシミュレーションの精度が向上する。
【０１４４】
また、汎用ネットワーク２８は、オブジェクト管理コンピュータ２４から擬似コントローラ１２ａ〜１２Ｌ等へのオブジェクト転送用に用いられる。一方、シミュレーションの実行中には、汎用ネットワーク２８は擬似コントローラ１２ａ〜１２Ｌからビューワ１８へのシミュレーションデータを送信する手段としても機能するので、簡便な構成になるとともに汎用ネットワーク２８の利用率が高い。
【０１４５】
本発明に係るシミュレーション装置は、上述の実施の形態に限らず、本発明の要旨を逸脱することなく、種々の構成を採り得ることはもちろんである。
【０１４６】
【発明の効果】
以上説明したように、本発明に係るシミュレーション装置によれば、、ロボット、ロボットコントローラおよび操作盤等の複数の機器から構成されるステーションに対して、異なる条件のステーション毎に簡便な手順でシミュレーションを行うという効果を達成することができる。
【図面の簡単な説明】
【図１】本実施の形態に係るシミュレーション装置を構成する機器の接続図である。
【図２】本実施の形態に係るシミュレーション装置のブロック図である。
【図３】シミュレーション対象のロボットの斜視図である。
【図４】擬似コントローラの内部ブロック図である。
【図５】擬似操作盤のモニタ画面上に表示される操作画面である。
【図６】オブジェクトデータベースに記録されるデータを示す表である。
【図７】ダウンロードダイアログが表示されている状態を示すオブジェクト管理画面である。
【図８】コントローラアドレス設定ダイアログが表示されている状態を示すオブジェクト管理画面である。
【図９】生産機種設定ダイアログが表示されている状態を示すオブジェクト管理画面である。
【図１０】ステーション設定ダイアログにオブジェクト設定テーブルが表示されている状態を示すオブジェクト管理画面である。
【図１１】ステーション設定ダイアログにインターロックテーブルが表示されている状態を示すオブジェクト管理画面である。
【図１２】シミュレーションの手順を示すフローチャートである。
【図１３】オブジェクトをダウンロードする手順を示すフローチャートである。
【図１４】ビューワの処理内容を示すフローチャートである。
【図１５】実際のシステムの概略ブロック図である。
【符号の説明】
１０…シミュレーション装置          １２ａ〜１２Ｌ…擬似コントローラ
１４…シーケンサ                    １６…擬似操作盤
１８…ビューワ
２０…オフラインティーチングコンピュータ
２４…オブジェクト管理コンピュータ  ２６ａ、２６ｂ…ＦＡ用ネットワーク
２８…汎用ネットワーク              ８８、９０ａ、９０ｂ…ポート
９４…処理時間設定部                ９６…動作処理機能部
１００…内部処理時間設定部          １０４…擬似操作処理部
１０６…入力・表示機能部            １０８…時間測定機能部
１０９…操作画面                    １１０…ビューワデータ
１１２…画像変換部                  １１４…関節角度画像変換機能部
１１６…Ｉ・Ｏ情報画像変換機能部    １２２…オブジェクトデータベース
１２４…オブジェクト記憶部          １２６…シミュレーション結果データ
１３０…設備構成データ              １３２…システム属性データ
１３４…ライン属性データ            １３６…ステーション属性データ
１６８…画面生成用設定ファイル
５０２、５０４、５０６、Ｒ１、Ｒ２、Ｒ３…ロボット
【図１】
2004148428.tif 000003
【図２】
2004148428.tif 000004
【図３】
2004148428.tif 000005
【図４】
2004148428.tif 000006
【図５】
2004148428.tif 000007
【図６】
2004148428.tif 000008
【図７】
2004148428.tif 000009
【図８】
2004148428.tif 000010
【図９】
2004148428.tif 000011
【図１０】
2004148428.tif 000012
【図１１】
2004148428.tif 000013
【図１２】
2004148428.tif 000014
【図１３】
2004148428.tif 000015
【図１４】
2004148428.tif 000016
【図１５】
2004148428.tif 000017