(57)【要約】【課題】制御対象の制御軸をある時は同期して、ある時は独立に制御することができる作業機械の制御装置を提供する。【解決手段】２軸以上で構成される複数の制御対象を制御する作業機械の制御装置において、各制御対象１、２の各軸を駆動するモータなどのアクチュエータを制御する際に、アクチュエータと制御対象１、２を関係付ける軸構成情報入力手段２０３を備え、制御対象への動作指令をアクチュエータに出力する際は、軸構成情報入力手段２０３で作成された、制御対象と物理的なアクチュエータの接続関係を記す物理軸構成情報に基づいて、動作指令を所定のアクチュエータに分配する指令分配処理部２０８を備えた作業機械の制御装置。これにより、重複したアクチュエータは同時に同期して制御できるし、切り離されて独立に非同期に制御できるため、作業効率の向上が図られる。【選択図】図３
2006302314.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２軸以上のアクチュエータで駆動される複数の作業機械と、前記作業機械の各々を制御対象として制御する制御装置と、を備えた作業機械の制御システムにおいて、
前記制御装置は、前記各制御対象と前記アクチュエータとを関係付ける物理軸構成情報を記憶する記憶部と、
前記物理軸構成情報に基づいて、動作指令を所定のアクチュエータに分配する指令分配処理部と、を備え、
前記物理軸構成情報の物理軸構成は、
前記制御対象の各軸を駆動するアクチュエータのうち、同期制御と非同期制御を切り替えて動作させるアクチュエータは前記制御対象とは別個の独立した制御対象として割り当てられる構成であることを特徴とする作業機械の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業機械の制御装置に関するもので、さらに詳しく言えば、複数のアクチュエータを１つの制御対象で構成したり、前記制御対象で構成されたアクチュエータの一部を他の制御対象に構成することにより、各アクチュエータを同時に制御し、または、切り離して独立に制御できる作業機械の制御装置に関するものである。なお、制御対象とは、ロボットや外部軸など、１または複数軸でひとつの機構を構成するものをいう。また、アクチュエータとは、ひとつの制御対象の各軸を駆動するモータ、シリンダ等の駆動要素をいう。  
【背景技術】
【０００２】
例えば、図１に示すように、１台の制御装置で３つの制御対象（２台のロボットＡ１、Ｂ２と１台の２軸からなる外部軸Ｃ３）を制御する場合がある。ここで、外部軸Ｃ３は２つの軸が同期して同じ方向に回転する構成である。この制御装置の作業としては溶接作業を仮定し、外部軸の制御軸Ｃ３の１軸目側に取り付けられたワーク１をロボットＡ１と外部軸Ｃ３で溶接作業し、次に外部軸Ｃ３の２軸目側に取り付けられたワーク２をロボットＢ２と外部軸Ｃ３で溶接作業し、次にワーク１とワーク２を結合させるために、ロボットＡ１とロボットＢ２と外部軸Ｃ３でワーク１及び２の結合部を溶接する作業がある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このように、外部軸の２つの軸を同期して制御する場合、まず、ロボットＡ１と外部軸Ｃ３でワーク１の作業を行い、次に、ロボットＢ２と外部軸Ｃ３でワーク２の作業を行う場合、シリーズに制御しなければならないため、作業時間が長くなる。また、ロボットＡ１と外部軸Ｃ３が作業を行っている場合は、ロボットＢ２は、停止しているため、ロボットＡ１、Ｂ２を効率良く制御できない問題点があった。また、従来においては、国際公開ＷＯ９５／２５９９１号公報に示されるように、複数の制御対象を１台の制御装置で制御する作業機械の制御装置において、複数の動作を第１の協調ジョブとして記述した命令を記憶するとともに実行する第１の系列実行手段と、前記第１の系列実行手段が司る複数の制御対象の中のいずれか１つの制御対象と、前記第１の系列実行手段が司る複数の制御対象以外の１つ以上の制御対象の動作を第２の協調ジョブとして記述した命令を記憶するとともに実行する第２の系列実行手段と、前記第１の系列実行手段と第２の系列実行手段を起動する命令を記憶するとともに、これらを非同期かつ同時に実行させる第３の系列実行手段とを設けた作業機械の制御装置が提案された。この従来の装置では、第１の系列実行手段と第２の系列実行手段は非同期かつ同時に実行していたが、特定の区間（作業区間）のみを同期して動作させる必要がある場合には、特定の区間の開始の位置で開始のタイミングを自動的に合わせると共に作業条件を調整する必要があり、ティーチングが煩雑になっていた。
【０００４】
さらに、従来においては、作業プログラムの教示は、制御装置で制御している制御対象すべての位置データを教示、登録していた。また、作業プログラムの実行では、すべての制御対象を教示し作業プログラムを実行していた。作業プログラムの教示においては、本来教示すべき制御対象のみを軸操作し、位置の教示を行いたいところであるが、従来は、制御対象すべてが動作可能状態であるため、キー操作の間違いで、別の制御対象を動作することがあり、予期せぬ動作となり非常に危険である。作業プログラムの実行では、作業プログラムは全ての制御対象の教示位置が登録されていることから、本来動作するはずのない制御対象が、教示の間違いにより動作する場合がある。本発明は上記のような問題点を解消するためになされたもので、制御対象の制御軸をある時は同期して、ある時は独立に制御することができ、また任意の区間を容易に同期して動作することができ、さらに作業プログラムの教示において教示すべき制御対象のみを軸操作して位置の教示ができる作業機械の制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記問題を解決するため、本発明は、次のように構成したのである。
請求項１に記載の発明は、少なくとも２軸以上のアクチュエータで駆動される複数の作業機械と、前記作業機械の各々を制御対象として制御する制御装置と、を備えた作業機械の制御システムにおいて、前記制御装置は、前記各制御対象と前記アクチュエータとを関係付ける物理軸構成情報を記憶する記憶部と、前記物理軸構成情報に基づいて、動作指令を所定のアクチュエータに分配する指令分配処理部と、を備え、前記物理軸構成情報の物理軸構成は、前記制御対象の各軸を駆動するアクチュエータのうち、同期制御と非同期制御を切り替えて動作させるアクチュエータは前記制御対象とは別個の独立した制御対象として割り当てられる構成であることを特徴とするものである。
【発明の効果】
【０００６】
以上述べたように、本発明によれば、下記の効果を奏する。
（１）軸構成情報入力手段で作成された、制御対象と物理的なアクチュエータの接続関係を記す物理軸構成情報に基づいて、動作指令を所定のアクチュエータに分配するようにしたので、アクチュエータであるモータを重複して制御対象に割り当てることにより、重複したモータは同時に同期して制御できるし、切り離されて独立に非同期に制御できるため、作業効率の向上が図られる。
（２）第１、第２の協調ジョブの中の任意の区間で同期する手段を設けたことにより、任意の区間を容易に同期して動作することが出来るため、作業ジョブの作成が簡単になり、教示作業効率を向上することができる。
（３）作業プログラム作成時には、動作する制御対象を選択する手段を備え、制御対象を選択した情報を作業プログラムに記憶するエリアを備え、前記選択した制御対象情報を記憶する手段を備えたことにより、作業プログラムの教示において、教示すべき制御対象のみを軸操作し、位置の教示を行うことができ、キー操作の間違いで、別の制御対象を動作することがなくなる。また、作業プログラムの実行では、作業プログラムは、選択された制御対象のみの教示位置が登録されていることから、動作する必要のない、つまり、選択されていない制御対象が、教示の間違いにより動作することがないという効果がある。
【発明を実施するための最良の形態】
【０００７】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【０００８】
以下、本発明の実施の形態について説明する。図２は、本実施例の制御対象の構成を示すものであり、ロボットＡ、Ｂがそれぞれ６軸、外部軸Ｃが２軸である。図３に本実施例の制御装置４の構成を示す。図３において、２００はモードの切り替えや作業プログラムの起動や停止の操作を行うプログラミングボックス、２０１はロボットＡ１、ロボットＢ２、外部軸Ｃ３と制御装置４と制御対象を選択し、作業プログラムを
登録したり、軸操作を行ったりするためのプログラミングペンダントである。
【０００９】
本制御装置４は系列動作可能な制御装置であり、プログラミングペンダント２０１と作業プログラム記憶部２０２と物理軸構成情報記憶部２０３と系列０実行部２０４と系列１実行部２０５と系列２実行部２０６の３つの系列の実行部と、動作指令出力エリア２０７と指令分配処理部２０８と駆動制御部２０９からなる。作業プログラムは、プログラミングペンダント２０１より、作業プログラム記憶部２０２に記憶され、制御構成情報を入力し、物理軸構成情報を物理軸構成情報記憶部２０３に記憶する軸制御構成情報入力手段を持つ。各々の系列実行部２０４，２０５，２０６はプログラミングペンダント２０１にて教示され記憶された作業プログラムの解釈及び実行を行い、動作指令を作成して動作指令出力エリア２０７に出力する。動作指令出力エリア２０７に指令された動作指令は、物理軸構成情報を元に、物理軸番号に相当する駆動制御部２０９に一斉に指令され、指令されたモータは動作する。系列実行部２０４，２０５，２０６は、マルチタスクとすることで、相互に非同期に作業プログラムの実行が可能である。
【００１０】
軸制御構成情報入力手段では制御対象１にロボットＡ１、制御対象２にロボットＢ２、制御対象３に外部軸Ｃの２軸を割り当てる。そして、制御対象３は２つのモータが、同じ方向に同期して回転する構成とする。
つまり、プログラミングペンダント２０１で制御対象３の１軸目（外部軸Ｃの１軸目）の軸操作を行うと、それと同じ方向に制御対象３の２軸目（外部軸Ｃの２軸目）も同じ指令を出力する構成である。そして、制御対象４に外部軸Ｃの１軸目を割り当て、制御対象５に外部軸Ｃの２軸目を割り当てた構成とし、プログラミングペンダントよりこれらの情報を入力する。これにより、各制御対象と各ロボット、外部軸のモータの割り当ての情報が決定される。この情報を物理軸構成情報と称する。
図４は、本実施例のシステムの物理軸構成情報の内容である。論理軸番号３０１は制御対象毎の軸番号である。物理軸番号３０２は、アクチュエータであるモータの物理的な番号である。
なお、この軸制御構成情報入力手段による作業は、制御装置のセットアップ時のみ行えば良い。
【００１１】
この物理軸構成情報を見ると、制御対象１の論理軸番号の１番目から６番目の動作指令は、物理軸番号１から６番目に指令されることが分かる。制御対象２の論理軸番号の１番目から６番目の動作指令は、物理軸番号７から１２番目に指令されることが分かる。制御対象３の論理軸番号の１番目と２番目の動作指令は、物理軸番号１３と１４番目に指令されることが分かる。制御対象４の論理軸番号の１番目の動作指令は、物理軸番号１３番目に指令されることが分り、制御対象３の１軸目と共有していることが分かる。制御対象５の論理軸番号の１番目の動作指令は、物理軸番号１４番目に指令されることが分り、制御対象３の２軸目と共有していることが分かる。ここで、制御対象１の論理軸番号６番目の物理軸番号を１３とすると、制御対象１の論理軸番号６番目の指令データは１３番目のモータへの指令となる、つまり、外部軸の１軸目への指令となる。
【００１２】
ここで、図５に示す作業プログラムを実行する場合を例にとり説明する。ジョブ１（４０１）は、後述するジョブ２（４０２）、ジョブ３（４０３）、ジョブ４（４０４）の作業プログラムの起動を行う作業プログラム、ジョブ２は制御対象１と制御対象４で作業を行う作業プログラム、ジョブ３は制御対象２と制御対象５で作業を行う作業プログラム、ジョブ４は制御対象１と制御対象２と制御対象３で作業を行う作業プログラムである。まず、プログラミングボックス２００からジョブ１に起動をかける。この時、３つの系列実行部２０４，２０５，２０６は何も実行していないものとして、系列０実行部２０４で実行させるものとする。ジョブ１は２ライン目の命令でジョブ２が実行するように起動（ＰＳＴＡＲＴ）をかける。この時、空きの系列実行部を探し、実行させる。ここでは系列１実行部２０５で実行する。３ライン目の命令でジョブ３が実行するように起動（ＰＳＴＡＲＴ）をかける。これも前述同様に、空きの系列実行部を探し、実行させる。ここでは系列２実
行部２０６で実行する。４ライン目の命令はジョブ２の作業が終了するのを待ち、５ライン目の命令はジョブ３の作業が終了するのを待つ。６ライン目の命令は、４ライン目、５ライン目の作業待ち命令で作業の終了を待った後で実行され、ジョブ４が実行するように起動をかける。ここでは、系列１実行部２０５、系列２実行部２０６は空き状態になっているため、どちらかの系列実行部で実行できるがここでは、系列１実行部２０５で実行するものとする。
【００１３】
系列１実行部２０５で実行されるジョブ２は、制御対象１と制御対象４に対しての動作が教示されているので、これについて命令を解釈実行し、制御対象１と制御対象４の動作指令が動作指令出力エリアに書かれる。系列２実行部２０６で実行されるジョブ３は、制御対象２と制御対象５に対しての動作が教示されているので、これについて命令を解釈実行し、制御対象２と制御対象５の動作指令が動作指令出力エリア２０７に出力される。その後、指令分配処理部２０８が物理軸構成情報を元に動作指令を所定の個所に分配する。その結果、制御対象１の動作指令はロボット１へ、制御対象２の動作指令はロボット２へ、制御対象４の動作指令は外部軸の１軸目へ、制御対象５の動作指令は外部軸の２軸目へ、動作指令を出力することになる。次に、系列１実行部２０５で実行されるジョブ４は、制御対象１と制御対象２と制御対象３に対しての動作が教示されているので、これについて命令を解釈実行し、制御対象１と制御対象２と制御対象３の動作指令が動作指令出力エリア２０７に分配される。そして、動作指令出力エリア２０７に出力された動作指令は、物理軸構成情報を元に、駆動制御部のロボットＡとロボットＢと外部軸の１軸目と２軸目の各軸に分配される。図６に示すジョブ５（５０１）では、前記のジョブ２をＰＳＴＡＲＴで起動後、制御対象３のみのジョブ６（５０２）をＰＳＴＡＲＴにより起動した場合、ジョブ２の制御対象４とジョブ６の制御対象３の論理軸番号は、どちらも物理軸番号の１３番目に動作指令の出力を行うので、動作指令は重複することになり、外部軸の１軸目のモータは正しく制御されない。このような場合は、制御対象の間で共有されたモータに対して系列実行部がチェックを行い、アラームを発生させ動作を停止する。また、系列実行部は、同じ制御対象が他の系列実行部で制御される場合も、チェックを行い、アラームを発生させ動作を停止する。
【実施例２】
【００１４】
次に、任意の区間を容易に同期して動作することが出来る本発明の実施例を図８に基づいて説明する。図３における各々の系列実行部２０４，２０５，２０６は、プログラミングペンダント２０１を介して教示され、記憶されている命令の解釈実行を行い、動作指令を作成して動作指令出力エリア２０７に出力する。動作指令がそろえば、駆動制御部２０９に一斉に指令され、複数の制御対象が駆動される。系列１実行部２０５または系列２実行部２０６で同期開始命令（ＦＳＹＮＣＯＮ）を解釈実行すると、もう一方の系列が同期開始命令を解釈するのを待つ。
同期を開始すると系列１実行部２０５は、動作指令と各ステップの移動時間を動作指令出力エリア２０７に出力する。系列２実行部２０６は、その移動時間を参照し、各ステップの移動時間が同じになるように動作指令を動作指令出力エリア２０７に出力する。これにより、任意の区間を容易に同期して動作することが出来るため、作業ジョブの作成が簡単になり、教示作業効率を向上することができる。
【実施例３】
【００１５】
次に、作業プログラムの教示において教示すべき制御対象のみを軸操作して位置の教示ができる本発明の実施例を、図３及び図７、図９、図１０を参照しながら詳細に説明する。図７は、作業プログラムのデータ構造であり、作業プログラム名称エリア７と制御対象情報エリア８と補間や速度や位置など複数の動作情報エリア９のデータ構造である。図９は、作業プログラム作成時の操作フローである。選択する制御対象がロボットＡ１と外部軸Ｃ３と仮定しフローチャートに従って説明する。
ステップ１：プログラミングボックス２００で、ティーチングモードにする。
ステップ２：作業プログラムの名称を作業プログラム名称エリア７に登録する。
ステップ３：制御対象を選択する。ここでロボットＡ１と外部軸Ｃ３を選択する。
ステップ４：選択した制御対象を制御対象情報エリア８に記憶する。
ステップ５：制御対象情報エリアの制御対象が複数の場合、軸操作を行う制御対象の選択を行う。
ステップ６：軸操作を行い所望の位置に制御対象を動作させる。
ステップ７：補間、速度を決定する。もし、制御対象情報エリアの制御対象が複数の場合ステップ４で選択した以外の制御対象の軸操作を行う場合ステップ５へ戻りステップ５、ステッブ６、ステップ７を繰り返す。例えば、最初ステップ５でロボットＡを選択した時、外部軸Ｃ３の位置も変えたい場合、ステップ５に戻り、外部軸Ｃ３を選択し、ステップ６で外部軸Ｃ３の軸操作を行う。
ステップ８：動作情報エリア８動作情報を記憶する。後は、ステップ５、ステップ６、ステップ７、ステップ８を必要なだけ繰り返し、作業プログラムの作成を行う。
図１０は、作業プログラム実行時のフローチャートである。
ステップ１：プログラミングボックス２００で作業プログラム実行モードに切り替える。
ステップ２：作業プログラムの選択を行う。なお、ステップ１とステップ２の手順は逆でも良い。
ステップ３：プログラミングボックス６の作業プログラム起動ボタンを押し、ステップ１で選択した作業プログラムを起動する。
【図面の簡単な説明】
【００１６】
【図１】本発明を適用するシステムを示す概略平面図である。
【図２】本発明を適用するシステムの他の例を示す概略平面図である。
【図３】本発明の実施例を示すシステム構成図である。
【図４】本発明の動作説明図である。
【図５】本発明におけるジョブの内容を示す説明図である。
【図６】本発明におけるジョブの内容を示す説明図である。
【図７】本発明の実施例を示す作業プログラムデータ構造図である。
【図８】本発明における同期動作を示す説明図である。
【図９】本発明の実施例を示す作業プログラム作成時の操作フローチャートである。
【図１０】本発明の実施例を示す作業プログラム起動時の操作フローチャートである。
【符号の説明】
【００１７】
１  ロボットＡ
２  ロボットＢ
３  外部軸Ｃ
４  制御装置
７  作業プログラム名称エリア
８  制御対象情報エリア
９  動作情報エリア
２００  プログラミングボックス
２０１  プログラミングペンダント
２０２  作業プログラム
２０３  物理軸構成情報記憶部
２０４  系列０実行部
２０５  系列１実行部
２０６  系列２実行部
２０７  動作指令出力エリア
２０８  指令分配処理部
２０９  駆動制御部
【図１】
2006302314.tif 000003
【図２】
2006302314.tif 000004
【図３】
2006302314.tif 000005
【図４】
2006302314.tif 000006
【図５】
2006302314.tif 000007
【図６】
2006302314.tif 000008
【図７】
2006302314.tif 000009
【図８】
2006302314.tif 000010
【図９】
2006302314.tif 000011
【図１０】
2006302314.tif 000012