(57)【特許請求の範囲】
【請求項１】
複数の実行手段を備え、前記複数の実行手段はそれぞれ少なくとも１つ以上の制御対象を制御するとともに、全ての制御対象を１台の制御装置で制御する作業機械の制御装置において、
複数の制御対象の動作を第１の協調ジョブとして記述した命令を記憶するとともに実行する第１の系列実行手段と、
前記第１の系列実行手段が司る複数の制御対象の中のいずれか１つの制御対象と前記第１の系列実行手段が司る複数の制御対象以外の１つ以上の制御対象の動作を第２の協調ジョブとして記述した命令を記憶するとともに実行する第２の系列実行手段と、
前記第１の系列実行手段と第２の系列実行手段を起動する命令を記憶するとともに、これらを非同期かつ同時に実行させる第３の系列実行手段とを備え、
前記第３の系列実行手段は、前記第１の系列実行手段又は前記第２の系列実行手段の一方を主、他方を従に指定することを特徴とする作業機械の制御装置。
【請求項２】
前記第１と第２の系列実行手段が出力する動作指令を一時記憶する動作指令出力エリアを設けたことを特徴とする請求項１記載の作業機械の制御装置。
【請求項３】
前記第２の系列実行手段は前記動作指令出力エリアに出力された前記第１の系列実行手段の動作指令を参照し、教示時との差分を補償するように自己の動作を制御することを特徴とする請求項１乃至請求項２いずれかに記載の作業機械の制御装置。
【請求項４】
前記複数の制御対象の動作が左右対称の場合に、ひとつの動作を第１の協調ジョブに教示し、その協調ジョブから前記第１の協調ジョブが司る複数の制御対象以外の１つ以上の制御対象の動作を第２の協調ジョブとして生成するとき、
前記第１の協調ジョブが司る制御対象の位置データからそれ以外の制御対象の位置データを左右対称になるように変換する手段を設けたことを特徴とする請求項１乃至請求項３いずれかに記載の作業機械の教示装置。
【請求項５】
前記協調ジョブを作成・編集するための、操作対象ジョブを指定・切り換えできる手段を備え、ある協調ジョブで指定した位置を他のジョブの作成・編集に使用できることを特徴とする請求項１乃至請求項４いずれかに記載の作業機械の制御装置。
【発明の詳細な説明】
〔技術分野〕
本発明は、産業用ロボットの制御装置に関するもので、さらに詳しく言えば、制御対象（ロボットや外部軸等、１または複数軸でひとつの機構を構成するものを制御対象と呼ぶ）を複数の作業ジョブで共有するケースに適用できる作業機械の制御装置に関するものである。
〔背景技術〕
特開平４−２５２３０４号公報に示されるように、１台の制御装置でロボットと複数軸からなるターンテーブルを制御すること、また特開昭６３−２１６６８９号公報に示されるように、１台のロボットと、複数台のポジショナーで協調作業を行わせることは公知である。
また、例えば図１に示すように、１台の制御装置で３つの制御対象（２台のロボット（Ｂ）、（Ｃ）と、１台の複数軸からなるステーション（Ａ））を制御するケースもあった。この場合は、（Ａ）−（Ｂ）−（Ｃ）の全制御対象を同期して制御するか、または、（Ａ）−（Ｂ）間での協調作業が完了した後に（Ａ）−（Ｃ）間での協調作業を行うやり方で行っていた。
しかし、（Ａ）−（Ｂ）−（Ｃ）の全制御対象を同期して制御する場合は、全制御対象が同時スタート／同時停止で制御されるので、各々の制御対象を個別の速度で制御できない。また、（Ａ）−（Ｂ）間での協調作業が完了した後に（Ａ）−（Ｃ）間での協調作業を行う場合は、（Ａ）−（Ｂ）間での協調作業中は制御対象（Ｃ）が、（Ａ）−（Ｃ）間での協調作業中は制御対象（Ｂ）が独立に動作することはできるが、制御対象（Ａ）と協調して作業できないため作業効率が悪くなるという問題点があった。
〔発明の開示〕
そこで、本発明は上記のような問題点を解消するため次のように構成したのである。
請求項１記載の作業機械の制御装置は、複数の実行手段を備え、前記複数の実行手段はそれぞれ少なくとも１つ以上の制御対象を制御するとともに、全ての制御対象を１台の制御装置で制御する作業機械の制御装置において、複数の制御対象の動作を第１の協調ジョブとして記述した命令を記憶するとともに実行する第１の系列実行手段と、前記第１の系列実行手段が司る複数の制御対象の中のいずれか１つの制御対象と前記第１の系列実行手段が司る複数の制御対象以外の１つ以上の制御対象の動作を第２の協調ジョブとして記述した命令を記憶するとともに実行する第２の系列実行手段と、前記第１の系列実行手段と第２の系列実行手段を起動する命令を記憶するとともに、これらを非同期かつ同時に実行させる第３の系列実行手段とを備え、前記第３の系列実行手段は、前記第１の系列実行手段又は前記第２の系列実行手段の一方を主、他方を従に指定することを特徴とするものである。
請求項２記載の作業機械の制御装置は、前記第１と第２の系列実行手段が出力する動作指令を一時記憶する動作指令出力エリアを設けたことを特徴とするものである。
請求項３記載の作業機械の制御装置は、前記第２の系列実行手段は前記動作指令出力エリアに出力された前記第１の系列実行手段の動作指令を参照し、教示時との差分を補償するように自己の動作を制御することを特徴とするものである。
請求項４記載の作業機械の制御装置は、前記複数の制御対象の動作が左右対称の場合に、ひとつの動作を第１の協調ジョブに教示し、その協調ジョブジョブから前記第１の協調ジョブが司る複数の制御対象以外の１つ以上の制御対象の動作を第２の協調ジョブとして生成するとき、前記第１の協調ジョブが司る制御対象の位置データからそれ以外の制御対象の位置データを左右対称になるように変換する手段を設けたことを特徴とするものである。
請求項５記載の作業機械の制御装置は、前記協調ジョブを作成・編集するための、操作対象ジョブを指定・切り換えできる手段を備え、ある協調ジョブで指定した位置を他のジョブの作成・編集に使用できることを特徴とするものである。
【図面の簡単な説明】
図１は本発明を適用するシステムを示す図、図２は本発明の実施例を示す概念図、図３は本発明の動作説明図、図４は作業が左右対称の例を示す図、図５は本発明における作業が左右対称の場合の位置データを反転する軸を示す図、図６は作業が左右対称の場合の作用説明図である。
〔発明を実施するための最良の形態〕
以下、本発明の実施例を図に基づいて説明する。
図２は本発明の実施例を示し、作業機械の制御装置１０は系列０実行部１、系列１実行部２、系列２実行部３の３つの系列の実行部と、動作指令出力エリア４、駆動制御部５からなる。
各々の系列実行部は、教示装置６を介して教示され、記憶されている命令の解釈および実行を行い、動作指令を作成して動作指令出力エリア４に出力する。動作指令がそろえば、駆動制御部５に一斉に指令され、複数の制御対象が駆動制御される。
これらの系列は、マルチタスクとすることで、相互に非同期に実行可能である。系列とは作業ジョブのことであり、ひとつの作業ジョブは少なくとも２つの作業機械の組に対する命令列である。
ただし、系列０は他の系列に対する指令のみを司る点で、他の系列と異なる。本願では、系列０のようなジョブをマスタージョブと呼び、実動作を司るジョブをサブジョブと呼ぶことにする。本発明は、このような１つの系列０実行部と、具体的実動作を伴う２つ以上の系列実行部を備える。なお、後述するように、具体的実動作を伴う２つ以上の系列実行部は、１つの主系列実行部と他の従属系列実行部に分けられる。
なお、各系列間は相互に非同期に実行されるが、系列０以外の各系列が司っている複数の制御対象は各系列内では同期して制御される。したがって、各系列の作業ジョブは協調ジョブとも呼べる。
ここで、図３で示す作業ジョブを実行する場合を例にとり説明する。
２０１は系列０実行部で実行されるマスタージョブ、２０２は系列１実行部で実行され制御対象（Ａ）と（Ｂ）を駆動制御するサブジョブ（ＳＵＢ１）、２０３は系列２実行部で実行され制御対象（Ａ）と（Ｃ）を駆動制御するサブジョブ（ＳＵＢ２）である。すなわち、サブジョブ６とサブジョブ７は制御対象（Ａ）を共有している。この例では、制御対象（Ｂ）と（Ｃ）が溶接ロボット、制御対象（Ａ）がステーション（ワークポジショナー）の例であるが、制御対象（Ａ）、（Ｂ）、（Ｃ）が何であるかは本発明の本質には全く関係ない。
マスタージョブ２０１は、２ライン目の命令で系列１に対してサブジョブ（ＳＵＢ１）を実行するように起動（ＰＳＴＡＲＴ）をかける。３ライン目の命令で、同様に系列２に対してサブジョブ（ＳＵＢ２）を実行するように起動をかけるが、このとき、命令に「ＳＹＮＣ」を付けることで、制御対象が重複していることを表すとともに、「ＳＹＮＣ」を付けられたジョブが従属、「ＳＹＮＣ」を付けられないジョブが主となる。ジョブが３以上ある場合は、「ＳＹＮＣ」を付けられないジョブは１つだけとなり、他のジョブには全て「ＳＹＮＣ」が付けられることになる。
系列１では、制御対象（Ａ）と（Ｂ）に対しての動作が教示されているので、これについて命令を解釈実行し、制御対象（Ａ）と（Ｂ）の動作指令が動作指令出力エリア４に書かれる。系列２でも同様に制御対象（Ａ）と（Ｃ）について命令を解釈実行するが、系列２はＳＹＮＣ（系列１に従属すること）であることが系列０より知らされているので、系列１と重複している制御対象（Ａ）について、系列１によって作成された動作指令出力データ（動作指令出力エリア４に一時記憶されているのでこれを参照できる）と教示データ（教示装置６によって教示され、記憶されていたデータ）との差分を計算し、この差分を補正するように制御対象（Ｃ）の動作指令出力データを作成し、動作指令出力エリアに書く。
制御対象（Ａ）の動作（ステーションの回転動作）により、制御対象（Ｃ）が動作すべき軌跡（ロボットの溶接線）がずれるのでそのずれ分を補正した動作指令出力データを作成するのである。
そして全制御対象の動作指令出力データが作成されると、実際にサーボ系に出力する。
つまり、主系列は自己の制御動作を他に関係なく実行するが、従属系列はその動作指令出力を参照し、それによって影響を受ける自己の動作指令に補正を加えるという動作を制御サイクル毎に行うことになる。このようにして全ての制御対象の全軸に対する指令を揃えて駆動制御部５へ渡すので、従属系列に指定された系列力住系列に対して動作遅れが生ずる心配はない。
なお、図３に示す例でのティーチング方法を説明する。
▲１▼ロボットＢとステーションＡの協調ジョブ（ＳＵＢ１）を教示する。
▲２▼ロボットＣとステーションＡの協調ジョブ（ＳＵＢ２）を登録する（具体的教示は伴わずタイトルだけを仮に登録する）
▲３▼マスタージョブを作成し登録する。
▲４▼マスタージョブをネクスト動作（動作確認のために１ステップずつ動作させること）させる。２つのＰＳＴＡＲＴ命令も順に実行されＳＵＢ１とＳＵＢ２が起動する。
▲５▼操作対象をＳＵＢ１とし（教示装置６の図示しないキースイッチから操作したいジョブの指定・切り換えができるものとする）、ロボットＢをステップ１（最初の教示点）に動作させ、ステーションＡの位置を決める。
▲６▼操作対象をＳＵＢ２に切り換え、ＳＵＢ１に対するロボットＣのステップ１（最初の教示点）を教示する。
▲７▼ステップ２（第２番目の教示点）以降も、▲５▼、▲６▼の手順で各ステップを教示する。
このように、教示装置６のキースイッチから操作したいジョブの指定・切り換えができるので、あるジョブで決めた位置を他のジョブの作成・編集に簡単に利用できる。
更に、作業が左右対称（図４参照）の場合は、ロボットＢとステーションＡ’の協調ジョブ（ＳＵＢ１）を教示した後に、次に示すようにロボットＣとステーションＡ’の協調ジョブ（ＳＵＢ２）を作成することができる。
これは、ひとつの動作を第１の協調ジョブに教示し、その協調ジョブジョブから前記第１の協調ジョブが司る複数の制御対象以外の１つ以上の制御対象の動作を第２の協調ジョブとして生成するとき、前記第１の協調ジョブが司る制御対象の位置データからそれ以外の制御対象の位置データを左右対象になるように変換する手段を制御装置１０内に付加することにより実現できる。
具体的には、系列１実行部に記憶されているの作業ジョブを読出し、これを作業が左右対称の場合は、ロボットの機構によって定まる特定の軸（本実施例におけるロボットでは第１、４、６軸となる。図５参照）の符号を反転し位置データを生成して系列２実行部の作業ジョブとする。結果としては図６のようになる。
左右同一の作業の場合は、当然ではあるが、単に複写すればよい。
以上述べたように、本発明によれば、制御対象が重複した場合でも同時にしかも非同期で制御できるため、作業効率の向上が図れる。また、サブジョブに対する教示は全く従来と同じであり、マスタージョブでの主従関係を規定するのみでよいので、教示後の主従関係の変更も容易であり、極めて実用性が高いものである。
〔産業上の利用可能性〕
本発明は、複数のロボットで協調して溶接作業等を行う場合に適用される。
【図１】
0003823324.tif 000002
【図２】
0003823324.tif 000003
【図３】
0003823324.tif 000004
【図４】
0003823324.tif 000005
【図５】
0003823324.tif 000006
【図６】
0003823324.tif 000007