(57)【特許請求の範囲】
【請求項１】
教示点Ｐn に向かう第１の経路と前記第１の経路を動作中に確認信号が与えられたときに前記教示点Ｐn から次の教示点Ｐn+1 に向かう第２の経路に移動するロボットの制御方法において、前記第１の経路上に教示短絡経路の始点を教示し、前記第２の経路上に教示短絡経路の終点を教示し、前記教示点Ｐｎへの移動中に前記第１の経路から前記教示短絡経路を通り前記第２の経路に至る軌道を予め算出し、（ａ）前記確認信号が前記第１の経路の全動作区間中に入力されなかったときは、前記教示点Ｐn までロボットを移動させるとともに滑らかに減速して前記教示点Ｐn で停止させ、前記確認信号の入力を待って前記教示点Ｐn から前記教示点Ｐn+1 に向かって滑らかに加速して前記第２の経路を移動させ、（ｂ）前記確認信号が前記第１の経路の前記教示短絡経路の始点に至るまでに入力されたときは、前記算出した教示短絡経路の軌道に従って前記教示短絡経路の始点から前記第１の経路から前記第２の経路に至る動作経路短絡のための制御を開始し、（ｃ）前記第１の経路の前記教示短絡経路の始点に到達の後で前記教示点Ｐn に至る間に前記確認信号が入力されたときは、前記第１の経路と前記第２の経路の速度の重ね合わせを実行する、ロボットの制御方法。
【請求項２】
教示点Ｐn に向かう第１の経路と前記第１の経路を動作中に確認信号が与えられたときに前記教示点Ｐn から次の教示点Ｐn+1 に向かう第２の経路に移動するロボットの制御方法において、前記第１の経路上に教示短絡経路の始点を教示し、前記第２の経路上に教示短絡経路の終点を教示し、前記教示点Ｐｎへの移動中に前記第１の経路から前記教示短絡経路を通り前記第２の経路に至る軌道を予め算出し、前記第１の経路には前記教示点Ｐn に近い減速開始点を設け、前記第２の経路には前記教示点Ｐn に近い加速終了点を設け、（ａ）前記確認信号が前記第１の経路の全動作区間中に入力されなかったときは、前記教示点Ｐn までロボットを移動させるとともに前記減速開始点から前記教示点Ｐn に至る間で滑らかに減速して前記教示点Ｐn で停止させ、前記確認信号の入力を待って前記教示点Ｐn から前記第２の経路の前記加速終了点に向かって滑らかに加速して前記第２の経路を移動させ、（ｂ）前記確認信号が前記第１の経路の前記教示短絡経路の始点に至るまでに入力されたときは、前記算出した教示短絡経路の軌道に従って前記教示短絡経路の始点から前記第１の経路から前記第２の経路に至る動作経路短絡のための制御を開始し、（ｃ）前記第１の経路の前記教示短絡経路の始点に到達の後で前記教示点Ｐnに至る間に前記確認信号が入力されたときは、前記第１の経路の減速区間と前記第２の経路の加速区間の速度の重ね合わせを実行させるロボットの制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ロボットを高速タクトラインに適用する場合でのロボット制御方法に係り、外部からの確認信号の入力時期によって、マニピュレータを構成するメカニズムに多大な衝撃を与えることなくロボットの動作を教示点で停止させ、外部からの信号の変化を待機させるか、そのまま教示点もしくは教示点近傍を通過して、後続する動作経路における動作と滑らかに接続させるかを選択させるようにした、ロボットの制御方法に関するものである。
【０００２】
【従来の技術】
外部機器とのインターロックが必要で、かつタクトタイムに高速性が要求されるラインにロボットを適用する場合、ワーククランプ等の確認を行うための入力待ち無駄時間を、いかに最小にするかは高速タクトラインにおける最重要課題の一つである。このため、ロボットの動作を停止させてから確認信号の入力の有無を判定するのではなく、ロボットを動作させながら同時に確認信号の有無判定を行う方法がとられている。この場合確認信号がすでに入力されていればそのまま動作を継続し、教示点もしくは教示点近傍を通過して継続する動作経路の動作と直接に接続される。
【０００３】
一方、確認入力が存在しない場合は、ロボットを安全な位置にて待機させるために、確認信号の有無判定命令を教示した点で停止させる。
【０００４】
通常高速タクトラインにおいては、ロボットを高速に動作させるため、教示点を通らずに適当な近回り動作をさせるのが一般的である。これは連続する２つの動作経路のうちの前者の終了部における減速部と、後者の開始部における加速部の速度を重ね合わせたり、連続する２つの動作経路における前者の経路の終了点付近一定区間と後者経路の開始点付近一定区間の動作経路を短絡、すなわち近回りさせることによって実現している。
【０００５】
【発明が解決しようとする課題】
ところで、このような重ね合わせ区間または動作経路短絡区間において確認信号の有無の判定を行おうとする場合、確認信号が入力されたからといって、ロボットの動作を急激に変化させたり停止させたりすると、マニピュレータを構成するメカニズムに多大な衝撃を与えることとなり、減速機等にダメージを与える可能性が大きい。したがって、これらの重ね合わせ区間または経路短絡区間においては、ロボットを動作させながら同時に確認信号の有無判定を行う手段をとることができず、タクトタイム短縮の要求に答えることができない。
本発明の目的は、このような重ね合わせ区間においても、ロボットを動作させながら同時に確認信号の入力の有無の判定を行って、ロボットを高速に制御し得る制御方法を提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するために本発明においては、連続する２つの動作経路の交点に至る直前の減速開始点、または経路短絡を始めるべき時点においてもなお確認信号が入力されない場合は、速度の重ね合わせまたは経路短絡を行わずはじめの動作経路の教示点に向かって滑らかに停止するよう減速制御を実行し、教示点に向かっての動作中に確認信号が入力された場合は、その時点で継続する動作経路の動作を開始して、加減速度の重ね合わせを行う。
【０００７】
【作用】
図１または図２に示すようなロボット言語で記述したプログラムに基いてロボットを動作させる場合を考える。入力確認命令（ＩＮＰＵＴＱ）は前後の動作命令に挾まれており、この入力確認命令の実行で確認信号が入力されない場合は、前者の動作命令の教示点でロボットを停止させて入力確認待機をさせる。一方、前者の動作命令の教示点へ到達するまでに確認信号が入力された場合には、前後の動作命令の実行を分断させることなく、可能な限り目標に近い高速度または短絡経路で動作を継続させ、タクトタイムの短縮をはかる。
【０００８】
【発明の実施の形態】
以下、本発明を図面により説明する。
図１および図２は、本発明に係る動作方法について、ロボット言語を用いて記述した作業プログラムの例である。同図においてＭＯＶＥＰ命令は、ロボットを現在位置からその教示目標点に位置決め動作させる命令であるが、教示目標点近傍の減速区間で、後続するＭＯＶＥＰ命令の加速区間と速度の重ね合わせ処理を行い、教示点を通過せずに教示点近傍を高速で滑らかに通過させるものである。
【０００９】
ＭＯＶＥＱ命令は、同様にロボットを現在位置からその教示目標点に位置決め動作させる命令であるが、その教示目標点より指定距離手前で動作終了し、後続するＭＯＶＥＱ命令の開始点（すなわち先行するＭＯＶＥＱ命令の教示点）から指定距離進んだ点に向かう短絡経路をリアルタイムに作成して、近回り動作を行なわせるための命令である。ここで短絡させるべき距離の指定は、ＭＯＶＥＱ命令の１つのパラメータで行なわれる。
【００１０】
ＩＮＰＵＴＱ命令は、直前のＭＯＶＥＰまたはＭＯＶＥＱ命令の実行中に、それらの教示目標点へ到達するより指定時間前から指定入力ポートの入力を監視し、動作中に指定の入力があれば、後続するＭＯＶＥＰ命令との速度の重ね合わせ処理、または後続するＭＯＶＥＱ命令との短絡動作を可能とする命令である。
【００１１】
図３（ａ）、（ｂ）および図４（ａ）、（ｂ）は、図１または図２に示す作業プログラムを実行した場合の、ロボットの動作経路を表したものである。図３および図４において１は教示点Ｐn に向かって位置決め動作する場合に、減速を開始する点である。２は教示点Ｐn から教示点Ｐn+1 に位置決め動作する場合に、加速を終了する点である。また、３は減速点１よりも手前で教示点Ｐn までの所定距離に定めた短絡経路への分岐点である。
【００１２】
図３（ａ）は、Ｐn 点への位置決め動作中で短絡経路への分岐点３通過以前に入力が確認された場合の例を示す。ロボットはＰn 点に向かう経路から教示短絡経路４に進路変更する。この教示短絡経路４の始点は教示点Ｐn からＭＯＶＥＱ命令のパラメータで指定した分だけ戻った点であり、終点は後続するＭＯＶＥＱ命令でＰn+1 点に向かう位置決め経路上で、教示点Ｐn からＭＯＶＥＱ命令のパラメータで指定した分だけ進んだ点である。教示短絡経路４の動作を完了すると、ロボットはその点から後続する教示点Ｐn+1 に向かう経路に進路変更する。ただし、進路変更については急激に行うものではなく、ロボット構成要素に許容以上の機械的衝撃を与えないような速度変化の平滑化を行う。教示短絡経路は、図３の（ａ）に示すように教示点Ｐn を通過せず停止することもなく近回りするので、ロボットの動作時間を短縮させることになる。
【００１３】
図３（ｂ）は、Ｐn 点への位置決め動作中で短絡経路への分岐点３の通過以後で、かつ減速開始点１より手前で確認信号が入力された場合の経路を示す。この場合、ロボットは速度重ね合わせ経路５を通過する。そしてＰn+1 点への位置決め動作経路を継続する。この場合は先の教示短絡経路４よりは経路、動作時間とも長くなるが、減速しきって教示点Ｐn に到達し、再度加速してＰn+1 点に向かうよりは、短時間で動作させることができる。
【００１４】
図４（ａ）はＰn 点への位置決め動作中で減速開始点１を通過した後に確認信号が入力された場合の動作経路を示す。この場合、減速区間の速度指令と次の教示点Ｐn+1 への位置決め動作の加速区間の速度指令とを重ね合わせた遅れ重ね合わせ経路６が実行される。この場合は、入力が確認された以降の残り減速区間の速度指令のみを、次のＭＯＶＥＰ命令の加速区間の速度指令と重ね合わせるため、図３（ｂ）の速度重ね合わせ経路５よりは動作量、動作時間とも長くなる。しかしながら、減速しきって教示点Ｐn に到達し、再度加速してＰn+1 点に向かうよりは、短時間で動作させることができる。
【００１５】
図４（ｂ）はＰn 点への位置決め動作中には確認信号が入力されなかった場合の動作経路を表す。この場合は完全に減速して教示点Ｐn に到達した後に外部入力を待ち、その後に教示点Ｐn+1 に向かって加速を開始するのでもっとも経路が長くまた動作時間も長くかかる。
【００１６】
ところで上記のように外部信号の入力タイミングによって速度の重ね合わせタイミングを調整したり、短絡経路をリアルタイムで変更するためには、作業プログラムの解釈、軌道計画、およびサーボ出力データの生成を、実際の動作区間に先行して演算しておく必要がある。すなわち、加減速の重ね合わせ処理を行うためには、減速処理が始まる時点において、減速パターンはもちろんのこと後続経路の加速パターンをサーボ出力データの段階まで算出しておく。また、短絡経路の生成については、短絡経路への切替え点到達前に短絡経路の軌道計画をサーボ出力データの段階まで算出しておく。後続の位置決め動作経路の軌道計画は、短絡経路の動作完了までにサーボ出力データの段階まで算出しておく。このようにしておくことにより、速度の重ね合わせ処理が十分に行なわれなかったり、経路の切替え時にロボットが一瞬停止したりすることが防止できる。
【００１７】
このため、ロボット制御装置にはＣＰＵを１つ以上採用し、サーボ機構へのデータ出力処理を行っている間にも、ＣＰＵの空き時間を利用して次にサーボ回路に出力すべきデータの作成を行ない、あるいはＣＰＵを特定の処理専用に割り当てることによって、作業プログラムから現在実行中の命令に続く命令を取り出して解釈を行い、軌道計画やサーボ出力データの算出を並行して行う。もちろん、各処理毎にＣＰＵを専用で割り当てもよいし、または各処理毎にタスクを割付け１つのＣＰＵをマルチタスク制御方式で実行させてもよい。
【００１８】
図５はロボット制御装置内部構成の一例をしめす図である。同図において、７は、作業プログラム解釈部であり、複数の作業プログラムが格納されたファイル８から指定された作業プログラムを読みだし順次命令の解釈を行う。解釈された命令は、各命令専用の処理部に実行が任される。例えば、動作命令は軌道計画部９に、入出力命令は入出力管理部１０にといった類いである。
【００１９】
軌道計画部９では、動作命令の記憶内容にしたがって、加減速部を含めて速度の出力パターンを時間の関数で生成する。すなわち、所定のサンプリング時間単位にロボットを動かす経路上の目標点を算出し、これら目標点データを順次バッファ１１に格納する。ただし、次の座標変換部１２が直前のデータを読み取っていなければ待機する。また、確認信号の入力状態に応じて算出済みの軌道計画を変更させる必要が発生するため、入出力管理部１０との同期制御を行う。
【００２０】
入出力管理部１０では、入出力命令の実行を司るが、入出力の実行および完了と、ロボット動作の開始および終了タイミングとが密接に関係するため、軌道計画部９またはサーボ出力部１８と同期制御を行う。また上述のように、軌道計画部９との同期制御を行う場合もある。
【００２１】
座標変換部１２は、バッファ１１のサンプリング時間毎のロボット目標点を、ロボット機構データ１３に基づいて座標変換を行い、バッファ１４に格納する。ただし、バッファ１４は１段であるため次のサーボ出力データ生成部１５が直前のデータを読み取っていなければ待機する。
【００２２】
サーボ出力データ生成部１５は、バッファ１４に格納されたサンプリング時間毎の座標変換されたロボット目標点データを、サーボ制御パラメータ１６に基づいて、サーボ出力データに変換し、バッファ１７に格納する。ただし、次のサーボ出力部１８が直前のデータを読み取っていなければ待機する。サーボ出力部１８は、サンプリング時間に対応したクロックパルスに同期して、バッファ１７のデータを取り出しサーボ機構に出力する。また、入出力管理部１０との同期制御が必要となることがある。たとえば、ある教示点にロボットが到達したことを確認した後、あるポートへの出力を行う必要がある場合には、その教示点への到達に対応するサーボ出力の完了後、入出力管理部１０に通知することが必要である。また、ある入力命令の完了後ロボットの動作を可能とする場合には、サーボ出力部１８は、入出力管理部１０からの入力確認通知を待った後、サーボ機構１９への出力を行う。また、サーボ機構への出力前に、出力データの急激な変化をなくしてロボットを滑らかに動作させるために、通常は一種のローパスフィルタの処理を行う場合も多い。
【００２３】
図５の構成の装置の動作を図６ないし図８によって本発明の実施の形態を詳細に説明する。
【００２４】
図５において、２つのＭＯＶＥＰ命令に挾まれたＩＮＰＵＴＱ命令が実行される時、確認信号の入力タイミングによってロボットの速度指令がどのように変化するかを示したものである。縦軸に速度指令、横軸に時間を取ると、位置決め動作中のグラフは一般に台形状となる。すなわち加速時の右上がり直線の区間、速度一定の区間、減速時の右下がり直線の区間から構成される。連続する２つの位置決め動作の速度指令の重ね合わせは、確認信号の入力のタイミングによって、図６（ａ），（ｂ），（ｃ）の３通りの現象が発生する。
【００２５】
図６において、（ａ）は先行するＭＯＶＥＰ命令の実行中で減速区間に到達する以前に確認信号が入力された場合である。ここで確認信号の認識動作の開始は、ＩＮＰＵＴＱ命令のパラメータで指定できるものである。この場合、先行する位置決め動作の減速開始とともに後続の位置決め動作の加速を始めることが出来るため、確認信号認識命令を教示しない場合と同じ動作時間で後続のＭＯＶＥＰ命令の教示点に到達することができる。この場合の制御装置内部での演算処理は次のように行なわれる。
【００２６】
図５において、作業プログラム解釈部７は、ＭＯＶＥＰ命令を解釈すると、その直後にＩＮＰＵＴＱ命令が存在するか否か確認する。存在すればさらにＭＯＶＥＰ命令が続くか否か確認する。こうしてＭＯＶＥＰ−ＩＮＰＵＴＱ−ＭＯＶＥＰの命令シーケンスが確認されると、作業プログラム解釈部７は、軌道計画部９に前者ＭＯＶＥＰの情報と後者ＭＯＶＥＰの情報を順次引き渡す。また入出力管理部１０にＩＮＰＵＴＱの情報を引き渡す。ただし、これらの情報には以下に示す情報が付加される。先ず前者ＭＯＶＥＰ命令の情報には本来の軌道情報と速度情報以外に、ＩＮＰＵＴＱ命令のパラメータである確認信号認識開始先行時間の算出依頼と、その時刻の到来を入出力管理部１０に通知するための同期番号Ａが付加される。また、後者ＭＯＶＥＰ命令の情報には本来の軌道情報と速度情報以外に、動作開始のタイミング通知を受ける同期番号Ｂが付加される。
【００２７】
入出力管理部１０に引き渡されるＩＮＰＵＴＱ命令の情報には、本来の入力ポート番号以外に確認信号入力監視開始時刻の到来を認識するための前期同期番号Ａが付加される。さらに確認信号の入力と同時に後者ＭＯＶＥＰの動作開始を軌道計画部９に通知するための別の同期番号Ｂが付加される。
【００２８】
軌道計画部９では、受け取った前者ＭＯＶＥＰ命令の情報に基づいて軌道計画を行い、サンプル時間毎の目標位置と確認信号入力認識開始先行時間の算出を行う。サンプル時間毎の目標位置は時間順にバッファ１１に出力されるが、確認信号入力認識開始タイミングとなるサンプリング時間の目標位置データは、特に前期同期番号Ａとセットで出力される。続いて後者ＭＯＶＥＰ命令の情報を受取り、同様に軌道計画を行いサンプル時間毎の目標位置を算出するが、第１データに前期同期番号Ｂが付加されるためバッファ１１への出力は待機状態となる。出力が可能となるのは、入出力管理部１０から前記同期番号Ｂの通知を受けた後で、前者ＭＯＶＥＰ軌道の減速が開始する時点である。これ以降は、両軌道のサンプル時間毎の動作量を合成し再度目標位置に変換した値を順次バッファ１１へ出力する。これにより速度指令の重ね合わせが行なわれ、重ね合わせ経路３上を動作させることができる。バッファ１１，１４，１７に格納されるデータの構造を図７に示す。各バッファ間でデータは変換され次元の異なるものとなるが、サンプリング時間毎の対応はとられているため、同期番号と各データとの同期関係は保たれる。
【００２９】
入出力管理部１０は、ＩＮＰＵＴＱ命令と同期番号Ａおよび同期番号Ｂを受け取ると、サーボ出力部１８から同期番号Ａが通知されるのを待って指定入力の確認を開始する。同期番号Ａが通知された後その指定入力が確認されると、軌道計画部９に同期番号Ｂを通知する。また、命令の実行完了通知として入力が確認されたことを作業プログラム解釈部７に通知する。
【００３０】
座標変換部１２とサーボ出力データ生成部１５は、前述のように実行が進められる。サーボ出力部１８は、サーボ出力データに前記同期番号Ａが付帯されていれば、入出力管理部１０に確認信号の入力認識開始の通知を行う。
【００３１】
図６（ｂ）は図５において先行するＭＯＶＥＰ命令の実行中で減速区間に到達したが、まだ教示点には到達していない間に確認信号が入力された場合である。この場合、すでに減速区間にはいっているために速度は減少しつつあるが、可能な限り早急に後続の位置決め動作の加速を始める。そうすることにより、先行する位置決め動作の減速区間での未消化部分が、後続の位置決め動作の加速部分と一部ではあるが重ね合わせられるため、後続のＭＯＶＥＰ命令の教示点に到達するための動作時間は、先行位置決め動作が教示点Ｐn に行き着いてしまう場合よりも短縮されることになる。この場合の制御装置内部での演算処理は次のように行なわれる。
【００３２】
軌道計画部９では、第６図（ａ）の場合と同様に前者ＭＯＶＥＰ命令の情報に基づくサンプル時間毎の目標位置を時間順にバッファ１１に出力した後、後者ＭＯＶＥＰ命令の情報に基づくサンプル時間毎の目標位置を算出し、入出力管理部１０からの同期番号Ｂの通知を待機している。しかしながら（ａ）の場合と異なり、この同期番号Ｂの通知を受けるのは前者ＭＯＶＥＰ軌道の減速が開始した後である。これ以降は、両軌道のサンプル時間毎の動作量を合成し再度目標位置に変換した値を順次バッファ１１へ出力する。これにより（ａ）の場合よりは短い期間ではあるが、速度指令の重ね合わせが行なわれ図３（ａ）の重ね合わせ経路４上を動作させることができる。
【００３３】
図６（ｃ）は図５において先行するＭＯＶＥＰ命令の目標教示点に到達した後、確認信号が入力された場合である。この場合、前後の位置決め動作の速度指令が重ね合わせられることはなく、全く動作時間および距離の短縮は行なわれない。この場合の制御装置内部での演算処理は次のように行なわれる。
【００３４】
軌道計画部９では、図６（ａ）の場合と同様に前者ＭＯＶＥＰ命令の情報に基づくサンプル時間毎の目標位置を時間順にバッファ１１に出力した後、後者ＭＯＶＥＰ命令の情報に基づくサンプル時間毎の目標位置を算出し、入出力管理部１０からの同期番号Ｂの通知を待機している。しかしながら図６（ａ），（ｂ）の場合と異なり、この同期番号Ｂの通知を受けるのは前者ＭＯＶＥＰ軌道の減速が完了した後である。すなわちＰn 点でロボットが停止した後である。これ以降は、後者ＭＯＶＥＰ命令の軌道に沿ってロボットは動作することとなる。
【００３５】
図８は２つのＭＯＶＥＱ命令に挾まれたＩＮＰＵＴＱ命令が実行される時、確認信号の入力のタイミングによってロボットの合成速度指令がどのように変化するかを示したものである。この場合には同図（ａ），（ｂ），（ｃ），（ｄ）に示す４通りの現象が発生する。
【００３６】
図８（ａ）は図５において先行するＭＯＶＥＱ命令の実行中で教示短絡軌道への分岐点に到達する以前に確認信号が入力された場合である。ここで確認信号の入力認識動作の開始は、ＩＮＰＵＴＱ命令のパラメータで指定できるものである。この場合、確認信号入力認識命令を教示しない場合と同じ動作時間で後続のＭＯＶＥＱ命令の教示点に到達することができる。この場合の制御装置内部での演算処理は、次のように行なわれる。
【００３７】
図５において、作業プログラム解釈部７は、ＭＯＶＥＱ命令を解釈すると、その直後にＩＮＰＵＴＱ命令が存在するか否か確認する。存在すればさらにＭＯＶＥＱ命令が続くか否か確認する。こうしてＭＯＶＥＱ−ＩＮＰＵＴＱ−ＭＯＶＥＱの命令シーケンスが確認されると、作業プログラム解釈部７は、軌道計画部９に前者ＭＯＶＥＱの情報と後者ＭＯＶＥＱの情報を順次引き渡す。また入出力管理部１０にＩＮＰＵＴＱの情報を引き渡す。ただし、これらの情報には以下に示す情報が付加される。先ず前者ＭＯＶＥＱ命令の情報には本来の軌道情報と速度情報以外に、ＩＮＰＵＴＱ命令のパラメータである確認信号入力認識開始先行時間の算出依頼と、その時刻の到来を入出力管理部１０に通知するための同期番号Ａが付加される。また、後者ＭＯＶＥＱ命令の情報には本来の軌道情報と速度情報以外に、動作開始のタイミング通知を受ける同期番号Ｂが付加される。
【００３８】
入出力管理部１０に引き渡されるＩＮＰＵＴＱ命令の情報には、本来の入力ポート番号以外に入力監視開始時刻の到来を認識するための前期同期番号Ａが付加される。さらに入力確認と同時に後者ＭＯＶＥＰの動作開始を軌道計画部９に通知するための別の同期番号Ｂが付加される。
【００３９】
軌道計画部９では、受け取った先行および後行の各ＭＯＶＥＱ命令の情報に基づいて、３つの軌道を計画する。このうち２つは図６と同様加減速部を持つ前後ＭＯＶＥＱ命令に対応する区間の台形状の速度関数であり、もう一つは、教示短絡経路を動作する場合の速度関数である。さらに２つのＭＯＶＥＱ命令に対応する区間の速度関数は、それぞれ短絡軌道への分岐点、または短絡軌道からの復帰点で前後に分けられる。図９はこのときに作成される５つの速度関数の例を示す線図である。まず、図９（ａ）に示す速度関数２１から、サンプリング時間毎の目標位置と確認信号入力認識開始先行時間の算出を行う。サンプル時間毎の目標位置データは時間順にバッファ１１に出力されるが、入力確認開始タイミングとなるサンプリング時間の目標位置データは、特に前期同期番号Ａとセットで出力される。図９（ｂ）の速度関数２３の最初のサンプリング時間の目標位置データには同期番号Ｂが付加され、バッファ１１への出力は待機状態となる。出力が可能となるのは入出力管理部１０から前記同期番号Ｂの通知を受けた後で、前者ＭＯＶＥＰ命令の軌道が短絡軌道に分岐する時点である。これ以降は、図９（ｂ）の速度関数２３のサンプリング時間毎の目標位置がバッファ１１に出される。これにより教示短絡経路５上を動作させることができる。この後、図９（ｃ）の速度関数２４は破棄され、速度関数２５のサンプリング時間毎の目標位置がバッファ１１に出される。
【００４０】
入出力管理部１０は、ＩＮＰＵＴＱ命令と同期番号Ａおよび同期番号Ｂを受け取ると、サーボ出力部１８から同期番号Ａが通知されるのを待って確認信号の入力の監視を開始する。同期番号Ａが通知された後確認信号が入力されると、軌道計画部９に同期番号Ｂを通知する。また、命令の実行完了通知として確認信号が入力されたことを作業プログラム解釈部７に通知する。
【００４１】
座標変換部１２とサーボ出力データ生成部１５は、前述のように実行が進められる。サーボ出力部１８は、サーボ出力データに前記同期番号Ａが付帯されていれば、入出力管理部１０に確認信号の入力認識開始の通知を行う。
【００４２】
図８（ｂ）は、図５において先行するＭＯＶＥＱ命令の実行中で教示短絡軌道への分岐点に到達した後、減速開始点に到達以前に確認信号が入力された場合である。この場合は、図６（ａ）と同様に前後の位置決め動作の加減速部を重ね合わせることができるので、短絡動作をまったく行なわれないが教示点Ｐn を通る場合よりも、短時間で次の教示点Ｐn+1 に到達することができる。この場合の制御装置内部での演算処理は次のように行なわれる。
【００４３】
軌道計画部９では、図９（ａ）の速度関数２１の出力が完了した時点、すなわち教示短絡経路への分岐点を通過しても入出力管理部１０からの確認信号の入力通知がない場合は、図９（ｂ）の速度関数２３を破棄し図９（ａ）の速度関数２２からサンプリング時間毎の目標位置データを算出し、バッファ１１への出力を開始する。また図９（ｂ）の速度関数２４のサンプリング時間毎の目標位置データを算出し、特に第１データには同期番号Ｂを付加する。ただしバッファ１１へ出力が可能となるのは、入出力管理部１０から前記同期番号Ｂの通知を受けた後で、前者ＭＯＶＥＰ命令の軌道が減速区間に到達した時である。これ以降は図９（ａ）の速度関数２２と図９（ｃ）の速度関数２４のサンプリング時間毎の動作量を合成し、再度目標位置に変換した値を順次バッファ１１に出する。図９（ａ）および（ｃ）の速度関数２２と２４の成分の出力が完了した後は、図９（ｃ）の速度関数２５のサンプリング時間毎の目標位置がバッファ１１に出力される。
【００４４】
図８（ｃ）は図５において先行するＭＯＶＥＱ命令の実行で教示短絡軌道への分岐が行なわれず、減速区間へ入ってから教示点に到達するまでに確認信号の入力が行なわれた場合である。この場合は、図６（ｂ）の場合と同様に可能な限り早急に後続の位置決め動作の加速を始める。そうすることにより、先行する位置決め動作の減速区間での未消化部分が、後続の位置決め動作の加速部分と一部ではあるが重ね合わせられるため、図８（ｂ）の場合よりは動作距離は長いが、重ね動作をまったく行わず教示点Ｐn を通る場合よりも、短時間で次の教示点Ｐn+1 に到達することができる。この場合の制御装置内部での演算処理は次のように行なわれる。
【００４５】
軌道計画部９では、図９（ａ）の速度関数２１の出力が完了した時点、すなわち教示短絡経路への分岐点を通過しても入出力管理部１０からの確認信号入力認識の通知がないため、図９（ｂ）の速度関数２３を破棄し図９（ａ）の速度関数２２からサンプリング時間毎の目標位置データを算出し、バッファ１１への出力を開始する。また図９（ｃ）の速度関数２４のサンプリング時間毎の目標位置データを算出し、第１データに同期番号Ｂを付加して、入出力管理部１０からの同期番号Ｂの通知を待機する。しかしながら図８（ｂ）の場合と異なり、この同期番号Ｂの通知を受けるのは前者ＭＯＶＥＰ軌道の減速が開始した後である。これ以降は図９（ａ）および（ｃ）の速度関数２２と２４のサンプリング時間毎の動作量を合成し、再度目標位置に変換した値を順次バッファ１１に出力する。図９（ａ）および（ｃ）の速度関数２２と２４の成分の出力が完了した後は、図９（ｃ）の速度関数２５のサンプリング時間毎の目標位置がバッファ１１に出力される。
【００４６】
図８（ｄ）は、図５において先行するＭＯＶＥＰ命令の目標教示点に到達した後に確認信号が入力された場合である。この場合、前後の位置決め動作経路が短絡されることも、速度指令が重ね合わせられることもなく、全く動作時間および距離の短縮は行なわれない。この場合の制御装置内部での演算処理は次のように行なわれる。
【００４７】
軌道計画部９では、図９（ａ）の速度関数２１の出力が完了した時点、すなわち教示短絡経路への分岐点を通過しても入出力管理部１０からの確認信号の入力通知がないため、図９（ｂ）の速度関数２３を破棄し図９（ａ）の速度関数２２からサンプリング時間毎の目標位置データを算出し、バッファ１１への出力を開始する。また図９（ｃ）の速度関数２４のサンプリング時間毎の目標位置データを算出し、第１データに同期番号Ｂを付加して、入出力管理部１０からの同期番号Ｂの通知を待機する。しかしながら図８（ａ）ないし（ｃ）の場合と異なり、この同期番号Ｂの通知を受けるのは前者ＭＯＶＥＰ命令軌道の減速が完了した後である。すなわちＰn 点でロボットが停止した後である。
【００４８】
これ以降は図９（ｃ）の速度関数２４のサンプリング時間毎の目標位置データを順次バッファ１１に出力し、続いて図９（ｃ）の速度関数２５のサンプリング時間毎の目標位置データを順次バッファ１１に出力することによって、後者ＭＯＶＥＰ命令の軌道に沿ってロボットは動作することとなる。
【００４９】
【発明の効果】
以上説明したように本発明によれば、連続する２つの動作経路の先行する経路の終了部における減速部と後行する経路の開始部における加速部の速度を重ね合わせることによってロボットの高速動作を実現するシステムにおいて、動作継続のための外部確認信号が入力されない場合は先行する動作経路の目標教示点に滑らかに停止させ、先行する動作経路の目標教示点に到達するまでに外部からの確認信号が入力された場合には、その時点で可能な限りの最高速度を保持し後行する動作経路の動作に滑らかに接続させることができる。
【００５０】
また、連続する２つの動作経路の先行する動作経路の終了点付近一定区間と後行する動作経路の開始部付近における一定区間の動作経路を短絡、すなわち近回りさせることによってロボットの高速動作を実現するシステムにおいて、動作継続のための外部確認信号が入力されない場合は先行する動作経路の目標教示点に滑らかに停止させ、先行する動作経路の目標教示点に到達するまでに外部確認信号が入力された場合には、短絡経路を生成して後者動作経路の動作に滑らかに接続させるか、あるいは最高速度を保持し後行する動作経路の動作に滑らかに接続させることができる。これにより、ロボット駆動機構に衝撃を与えず、安全でかつ無駄な待ち時間を徹底的に排除したロボットシステムが実現できるものである。
【図面の簡単な説明】
【図１】作業プログラムの例を示す図。
【図２】作業プログラムの例を示す図。
【図３】ロボットの教示短絡経路と速度重ね合わせ経路の例を示す図。
【図４】遅れ重ね合わせ経路と重ね合わせが行われなかった時の経路の例を示す図。
【図５】ロボット制御装置内部構成の例を示す図。
【図６】外部確認信号の入力タイミングと速度指令の例を示す図。
【図７】目標位置データの内部記憶構成の例を示す図。
【図８】外部確認信号の入力タイミングと速度指令の例を示す図。
【図９】本発明における速度関数の例を示す図。
【符号の説明】
１      減速開始点
２    加速終了点
３    教示短絡経路への分岐点
４    短絡経路
５    速度の重ね合わせ経路
６    遅れ重ね合わせ経路
７    作業プログラム解釈部
８    作業プログラムファイル
９    軌道計画部
１０    入出力管理部
１１    バッファ
１２    座標変換部
１３    ロボット機構データ
１４    バッファ
１５    サーボ出力データ生成部
１６    サーボ制御パラメータ
１７    バッファ
１８    サーボ出力部
１９    サーボ機構
【図１】
0003689194.tif 000002
【図２】
0003689194.tif 000003
【図３】
0003689194.tif 000004
【図４】
0003689194.tif 000005
【図５】
0003689194.tif 000006
【図６】
0003689194.tif 000007
【図７】
0003689194.tif 000008
【図８】
0003689194.tif 000009
【図９】
0003689194.tif 000010