JP5858168B2 - リアルタイムウィービングモーション制御装置およびその方法 - Google Patents

リアルタイムウィービングモーション制御装置およびその方法 Download PDF

Info

Publication number
JP5858168B2
JP5858168B2 JP2014538695A JP2014538695A JP5858168B2 JP 5858168 B2 JP5858168 B2 JP 5858168B2 JP 2014538695 A JP2014538695 A JP 2014538695A JP 2014538695 A JP2014538695 A JP 2014538695A JP 5858168 B2 JP5858168 B2 JP 5858168B2
Authority
JP
Japan
Prior art keywords
weaving
motion
unit
time
real
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014538695A
Other languages
English (en)
Other versions
JP2014534083A (ja
Inventor
ヨンジュン パク,
ヨンジュン パク,
ヨンギョル ハ,
ヨンギョル ハ,
サンミン カン,
サンミン カン,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Heavy Industries Co Ltd
Original Assignee
Samsung Heavy Industries Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Heavy Industries Co Ltd filed Critical Samsung Heavy Industries Co Ltd
Publication of JP2014534083A publication Critical patent/JP2014534083A/ja
Application granted granted Critical
Publication of JP5858168B2 publication Critical patent/JP5858168B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49384Control of oscillatory movement like filling a weld, weaving

Description

本発明は、作業空間で動作するロボットがリアルタイムでウィービングモーションを制御する制御装置およびその方法に関するものである。
最近、産業現場にはロボットによって行われる作業の種類が多様化している。ロボットによって行われる作業目標地点の位置が移動する場合、ロボットのモーションを制御するための制御システムが必要である。
ロボットのモーション制御のための制御システムは、プログラムされたモーション経路に沿ってロボットが移動するように制御する。また、制御システムは、プログラムされた作業内容によりロボットの動作を制御する。
プログラムされた内容によりロボットを制御する制御システムは、ロボットの作業環境の変化およびモーション経路の変更によるリアルタイム状況変化が発生したとき、ロボットのモーションおよび動作を適切に制御することができない。
本発明の目的は、リアルタイム状況変化が発生したとき、ロボットのモーションおよび動作を適切に制御することができる制御装置およびその方法を提供することにある。
本発明の一実施形態によれば、作業空間上でロボットの動作を制御するためのリアルタイムウィービングモーション制御装置において、前記作業空間上で前記ロボットの主移動経路を決めて、前記決められた主移動経路を構成する単位モーションを発生させ、単位モーションが連結された連続モーションのうちのオフセットを動的に変更するウィービングを発生させ、前記作業環境により決定される補償変位および補償回転量のうちの少なくとも一つを生成する前処理部;および前記単位モーションと前記ウィービング、および補償変位と前記補償回転量のうちの少なくとも一つにより前記作業空間上で前記ロボットの位置および回転量を算出する作業空間モーション合成部を含むリアルタイムウィービングモーション制御装置が提供される。
前記前処理部は、前記ロボットのモーション開始前に決められた主移動経路またはリアルタイムで生成される主移動経路を連続モーション方法選択情報により決めて、前記単位モーションを生成する連続モーション処理部;前記ロボットのモーション開始前に決められたウィービングまたはリアルタイムで生成されるウィービングをウィービングモーション方法選択情報により選択して相対ウィービング量を生成するウィービングモーション処理部;および前記作業空間の状況変化による任意の変位または回転量をモーションに反映するための前記補償変位または前記補償回転量を生成する補償姿勢処理部を含むことができる。
前記連続モーション処理部は、前記モーション開始前に決められた主移動経路が保存されている経路リスト保存部;前記作業空間の状況変化またはモーション経路変更の事由が発生した場合、リアルタイムで新たな単位モーションを生成するリアルタイム経路発生器;前記リアルタイム経路発生器から生成された単位モーションを保存する経路キュー;前記経路キューの単位モーションおよび前記経路リスト保存部の単位モーションのうちの一つを前記連続モーション方法選択情報により選択する経路選択器;および所定の作業開始点と作業終了点を示す連続モーション開始/終了情報により、前記経路選択器から伝達される単位モーションを連続モーションに連結する作業空間連続モーション発生器を含むことができる。
前記作業空間連続モーション発生器は、単位モーション開始方法により連続モーションのうちのn+1番目単位モーションを開始し、以前モーション処理方法によりn番目単位モーションを処理することができる。
前記単位モーション開始方法は、前記n番目単位モーションの加速または等速から減速に変化する時点に前記n+1番目単位モーションを開始する方法;前記n番目単位モーションの加速から等速または減速に変換する時点に前記n+1番目単位モーションを開始する方法;前記n番目単位モーションが停止する一定時間前の時点に前記n+1番目単位モーションを開始する方法;および前記n番目単位モーションおよびn−1番目以前単位モーション間の重畳モーションが終了する時点にn+1番目単位モーションを開始する方法のうちの一つであることができる。
前記以前モーション処理方法は、前記n番目単位モーションを減速し、前記n+1番目単位モーションを開始する方法;および前記n番目単位モーションをそのまま維持し、前記n+1番目単位モーションを開始する方法のうちの一つであることができる。
前記ウィービングモーション処理部は、前記モーション開始前に決められたウィービングリストが保存されたウィービングリスト保存部;前記作業空間の状況変化または作業中モーション経路変更事由が発生すると、リアルタイムでウィービングを生成するリアルタイムウィービング発生器;前記リアルタイムウィービング発生器から生成されたウィービングを単位ウィービング単位で保存するウィービングキュー;前記ウィービングモーション方法選択情報により前記ウィービングリストに含まれている単位ウィービングまたは前記ウィービングキューの単位ウィービングを選択するウィービング選択器;および前記ウィービング選択器によって選択された単位ウィービングを区分するためのウィービング開始/終了情報、ウィービングサンプリング時間およびウィービング基準変数情報を受信し、前記選択した単位ウィービングおよびウィービング基準変数情報を利用して前記ウィービングサンプリング時間内に相対ウィービング量を決める作業空間ウィービングモーション発生器を含み、前記ウィービング基準変数情報は、現在単位ウィービングのうちの次の単位ウィービングが施行されるウィービング変更起点を設定するためのウィービング基準変数を含むことができる。
前記作業空間ウィービングモーション発生器は、前記ウィービング基準変数を前記連続モーションの時間、前記連続モーションの軌跡長、または前記連続モーションの軌跡回転量を基準として決めることができる。
前記作業空間ウィービングモーション発生器は、前記ウィービング基準変数を決め、前記ウィービング関数を繰り返すウィービング周期、および前記決められたウィービング基準変数を利用して第1変数を決め、前記ウィービング関数を前記第1変数に対する関数に生成することができる。
前記作業空間ウィービングモーション発生器は、前記ウィービング基準変数が前記ウィービング変更起点に到達しなければ、前記ウィービング基準変数および前記第1変数を生成することができる。
前記作業空間モーション合成部、前記作業空間連続モーション発生器、前記作業空間ウィービングモーション発生器、および前記補償姿勢発生器は、前記ウィービングサンプリング時間に同期されて動作することができる。
前記作業空間モーション合成部からロボットの位置および回転量の入力を受けて、前記ウィービングモーションを実現するために前記ロボットのジョイントの動作を生成するジョイント空間変換器をさらに含み、前記ジョイント空間変換器は、前記ウィービングサンプリング周期に同期されて動作することができる。
本発明の他の一実施形態によれば、作業空間上でロボットの動作を制御するためのリアルタイムウィービングモーション制御方法において、前記作業空間の状況変化および作業中モーション経路変更事由を含むリアルタイム変更事由の発生有無によりリアルタイムで単位モーションが生成され、前記ロボットのモーション開始前に決められた単位モーションまたは前記リアルタイムで生成される単位モーションのうちの一つを選択する段階;前記リアルタイム変更事由の発生有無によりリアルタイムで単位ウィービングが生成され、前記ロボットのモーション開始前に決められた単位ウィービングおよび前記リアルタイムで生成される単位ウィービングのうちの一つを選択する段階;前記作業空間の状況変化によって決定される補償変位および補償回転量のうちの少なくとも一つを生成する段階;および前記単位モーション、前記単位ウィービング、および前記補償変位と前記補償回転量のうちの少なくとも一つにより、前記作業空間上で前記ロボットの位置および回転量を算出する段階を含むリアルタイムウィービングモーション制御方法が提供される。
前記選択された単位ウィービングにより相対ウィービング量を決める段階をさらに含み、前記相対ウィービング量を決める段階は、前記選択された単位ウィービングおよびウィービング基準変数情報を利用してウィービングサンプリング時間内に相対ウィービング量を決める段階を含み、前記ウィービング基準変数情報は、現在単位ウィービングのうちの次の単位ウィービングが施行されるウィービング変更起点を設定するためのウィービング基準変数を含むことができる。
前記相対ウィービング量を決める段階は、前記ウィービング基準変数を前記連続モーションの時間、前記連続モーションの軌跡長、または前記連続モーションの軌跡回転量を基準として決める段階;および前記ウィービング関数を繰り返すウィービング周期および前記決められたウィービング基準変数を利用して第1変数を決め、前記ウィービング関数を前記第1変数に対する関数に生成する段階を含むことができる。
本発明は、リアルタイム状況変化が発生したとき、ロボットのモーションおよび動作を適切に制御することができる制御装置およびその方法を提供する。
本発明の一実施形態による溶接ロボットのモーションを制御するモーション制御システムを示した図面である。 n−1番目単位モーションとn番目単位モーションのそれぞれの時間帯速度を示した図面である。 計画されたn番目モーションの時間帯速度を示した図面である。 異なるモーション処理方法に従うとき、n番目単位モーションとn+1番目単位モーションのそれぞれの時間帯速度を示した図面である。 異なるモーション処理方法に従うとき、n番目単位モーションとn+1番目単位モーションのそれぞれの時間帯速度を示した図面である。 基準変数が軌跡長基準に従うとき、単位モーションと基準変数の関係を示すグラフである。 作業空間ウィービングモーション発生器の動作を示したフローチャートである。 ウィービング関数がサイン関数であり、ウィービング基準変数が時間基準である場合を示した図面である。 ウィービング関数が一次関数であり、ウィービング基準変数が時間基準である場合を示した図面である。 ウィービング関数がサイン関数であり、ウィービング基準変数が軌跡長基準である場合を示した図面である。 ウィービング関数が一次関数であり、ウィービング基準変数が軌跡長基準である場合を示した図面である。
以下、添付した図面を参照して、本発明の実施形態について本発明が属する技術分野における通常の知識を有する者が容易に実施できるように詳細に説明する。しかし、本発明は種々の異なる形態に実現でき、ここで説明する実施形態に限られない。図面において、本発明を明確に説明するために説明上不必要な部分は省略した。明細書の全体にわたって類似する部分に対しては類似する図面符号を付けた。
明細書の全体において、ある部分が他の部分と「連結」されているというとき、これは「直接的に連結」されている場合だけでなく、その中間に他の素子を介して「電気的に接続」されている場合も含む。また、ある部分がある構成要素を「含む」というとき、これは特に反対になる記載がない限り、他の構成要素を除くことではなく、他の構成要素をさらに含むことができるのを意味する。
以下、本発明が属する技術分野における通常の知識を有する者が本発明を容易に実施できる実施形態について、添付した図面を参照しながら詳細に説明する。
図1は、本発明の一実施形態によるウィービングモーション制御装置および制御方法が溶接ロボットのモーションを制御するために適用された例を示した図面である。本発明の一実施形態では、産業ロボットのうち溶接を行う溶接ロボットを一例として挙げて説明している。しかし、本発明がこれに限定されることではなく、実施形態で説明される技術的な思想は他のロボットのモーション制御に用いられる。
図1に示されているように、モーション制御システム1は、前処理部10、作業空間モーション合成部20、ジョイント空間変換器30、およびサーボ制御部40を含む。図1には、モーション制御システム1の制御対象であるロボット器具部2が共に示されている。
前処理部10は、ロボットの作業空間上で主移動経路を決め、決められた主移動経路による単位モーションを発生させ、連続モーション中オフセット(off set)を動的に変更するウィービングを発生させ、作業環境により決定される補償変位または補償回転量を生成する。以下、ウィービングモーションは単位モーションとウィービングが結合されたモーションを含む。連続モーションは単位モーションの連結を意味する。補償変位または補償回転量はウィービングモーションに反映される。
前処理部10は、連続モーション処理部100、ウィービングモーション処理部200、および補償姿勢処理部300を含む。
連続モーション処理部100は、ロボットの作業空間上で主移動経路を決め、決められた主移動経路に単位モーションを発生させる。このとき、主移動経路はモーション開始前に決定されるか、または動作中リアルタイムで生成され、モーション開始前に決められた主移動経路およびリアルタイムで生成された主移動経路のうちの一つを選択するために連続モーション方法選択情報(A1)が発生する。
連続モーション処理部100は、経路リスト保存部110、リアルタイム経路発生器120、経路キュー130、経路選択器140、および作業空間連続モーション発生器150を含む。
連続モーション方法選択情報(A1)は、ロボットのモーション中発生可能な外部状況変化および作業中モーション経路変更によって生成される。つまり、外部状況変化およびモーション経路変更が発生すると、モーション開始前に決められた主移動経路の代わりにリアルタイムで生成される主移動経路を選択する連続モーション方法選択情報(A1)が発生する。そうではない場合には、モーション開始前に決められた主移動経路を選択する連続モーション方法選択情報(A1)が発生する。
ロボット作業において発生可能な外部状況変化の例は、次の通りである。
1)溶接による部材の変形
2)塗装噴射力による塗装対象物の変化
3)ブラスト収去のための吸入力による対象物の変更
作業中のモーション経路変更の事由の例は、次の通りである。
1)事前計画時に無かった外部対象物が作業領域に侵した場合
2)多重ロボット作業において、事前に計画された作業を他のロボットが代わりに処理する場合
上記のような内容は一例であり、ロボットの使用用途により多様な要求が発生しうる。
このような多様な要求が発生時ごとにリアルタイムで主移動経路を生成する必要がある。
連続モーション処理部100は、作業空間上で決められた主移動経路にモーションを発生させる。主移動経路は単位モーションの集合である。単位モーションは、順序、ターゲットポーズ(pose)、ロボット配置(configuration)、加速度または加速時間、減速または減速時間、最大速度または等速時間、角加速度または角加速時間、角減速度または角減速時間、最大角速度または等速時間、単位モーション開始方法、および以前モーション処理方法を含むプロファイルと定義される。
ポーズは、ロボットの位置とロボットの回転に対する情報を意味する。経路を構成する複数の単位モーション間の先後により単位モーションの順序が決定される。単位モーションそれぞれは自分の順序情報を含む。目標ポーズは、目標位置および目標方向を含む情報である。
ロボット配置はロボットの姿勢を意味する。ロボットは、作業により適した姿勢に設定され、同一のポーズでも異なる姿勢でありうる。例えば、溶接ロボットの場合、人の腕と類似した形態に姿勢を取るようになるが、溶接ロボットが同一のポーズであって、左腕または右腕の姿勢を取ることができる。つまり、作業空間で溶接ロボットが同じ位置で同じ回転を行っても、左腕の姿勢なのかまたは右腕の姿勢なのかによって作業内容が変化する。
ロボット配置は、ロボットの軸(axis)の数と種類によって異なり、ロボット別にロボット配置が決定される。
ロボットの移動経路は移動速度により、移動速度が増加する加速区間、最大速度に維持される等速区間、および減少する減速区間に区分されることができる。また、ロボットの回転経路は角速度により、角速度が増加する角加速区間、最大角速度に維持される角等速区間、および減少する角減速区間に区分されることができる。
加速度または加速時間は加速区間に、減速または減速時間は減速区間に、最大速度または等速時間は等速区間に、角加速度または角加速時間は角加速区間に、角減速度または角減速時間は角減速区間に、および最大角速度または等速時間は角等速中区間に対応する情報である。
経路リスト保存部110は、モーション開始前に決められた移動経路が保存されている。
移動経路は単位モーションの集合であるため、決められた移動経路を示す単位モーションの集合が経路リスト保存部110に保存されている。
リアルタイム経路発生器120は、外部状況変化または作業中モーション経路変更の事由が発生した場合、リアルタイムで新たな移動経路を生成する。つまり、リアルタイム経路発生器120はリアルタイムで単位モーションを生成する。
リアルタイム経路発生器120は、リアルタイムで新たな移動経路を生成するために多様な方法を使用することができる。例えば、ビジョンカメラによってポーズが選定(単位モーション生成)される方法によれば、ビジョンカメラによってビジョン処理された結果に基づいて経路の目標ポーズが変化することがある。このように生成された経路にウィービングが連動するようにウィービングモーション処理部がウィービングモーションを制御する。
ビジョン処理に所要される時間を含む経路生成時間は非確定的であるため、ロボットのモーションが停止しうる。これを防止するために、バッファ手段が必要であり、本発明の実施形態ではバッファ手段として「経路キュー」を使用する。具体的に、リアルタイム経路発生器120の単位モーション生成が遅延してモーションが停止するのを防止するために、経路キュー130に単位モーションを保存させることができる。
経路キュー130は、単位モーション保存のための保存空間を含み、保存空間は、単位モーション単位で分けられているメモリに具現できる。リアルタイム経路発生器120の単位モーション生成に所要される時間により経路キュー130の大きさを適切に設定することができる。
具体的に、連続モーション開始/終了情報(B1)が単位モーションの開始を知らせる場合、経路キュー130は当該単位モーションを経路選択器140に伝達する。そして連続モーション開始/終了情報(B1)が単位モーションの終了を知らせる場合、経路キュー130は当該単位モーションをメモリから削除する。
経路選択器140は、連続モーション方法選択情報(A1)により経路リスト保存部110の単位モーションまたは経路キュー130から伝達される単位モーションのうちの一つを選択する。
作業空間連続モーション発生器150は、連続モーション開始/終了情報(B1)および経路選択器140から伝達される単位経路を受信し、所定の作業開始点と作業終了点の間の作業経路上で作業を行うロボットのモーション制御のリアルタイム応答のための軌跡を発生させてターゲットポーズを決定する。タケットポーズは、ターゲット位置を示す位置ベクトルT_p(t)と、ターゲット回転量を示す回転ベクトルT_r(t)の行列に表示される。
連続モーション開始/終了情報(B1)は、所定の作業開始点と作業終了点に対する情報を含む。つまり、連続モーション開始/終了情報(B1)は、複数の単位モーションのうちの一つの単位モーションを区分するための情報である。モーション制御システム1は種々の単位モーションを制御する。例えば、P2P(POSE to POSE:開始ポーズから終了ポーズにロボットを移動させ、その間の経路は、ロボットの各ジョイント別の最適化した形態を決めてロボットを移動させる方式)、またはJOG(軸別速度または姿勢速度に対する指令によりロボットを動かす方式)方式に従う種々の単位モーション中、現在モーション制御システム1によって制御される単位モーションの開始と終了を示す情報である。
作業空間連続モーション発生器150は、連続モーション開始/終了情報(B1)により、現在生成している連続モーションと、他の単位モーションの連続モーションとを区分する。
作業空間連続モーション発生器150は、単位モーション開始方法により連続モーションのうちの各単位モーションを開始する。単位モーション開始方法は、連続する単位モーションのうちの後順の単位モーションの開始時点を決定する方法を意味する。
図2を参照して、単位モーション開始方法について説明する。
図2は、n−1番目単位モーションとn番目単位モーションのそれぞれの時間帯速度を示した図面である。図2を参照して、n+1番目単位モーション開始方法について説明する。
n+1番目単位モーションを開始する方法は、下記の4つの場合中1つでありうる。
1)以前単位モーション(n番目単位モーション)の加速から等速または減速に変換する時点t1
2)以前単位モーション(n番目単位モーション)およびその以前単位モーション(n−1番目単位モーション)間の重畳モーションが終了する時点t2
3)以前単位モーション(n番目単位モーション)が停止する一定時間(t_b)前の時点t3
4)以前単位モーション(n番目単位モーション)の加速または等速から減速に変化する時点t4
時点t1乃至時点t4のいずれか一つの時点で次の単位モーションのn+1番目単位モーションが開始することができる。また、期間t2−t4、期間t4−t3、および期間t3−t1間の任意の時点でn+1番目単位モーションが開始することができる。
作業空間連続モーション発生器150は、以前モーションの処理方法により連続モーションのうちの以前単位モーションを処理する。以前モーション処理方法は、新しく開始する単位モーションの以前単位モーションを処理する方法を意味する。
以下、図3a〜3cを参照して、以前モーション処理方法について説明する。
図3aは、計画されたn番目モーションの時間帯速度を示した図面である。
図3bおよび3cそれぞれは、他の以前モーション処理方法に従うとき、n番目単位モーションとn+1番目単位モーションそれぞれの時間帯速度を示した図面である。
図3bおよび図3cに示されているように、以前モーション処理方法は次の通りである。
1)以前モーション(n番目単位モーション)を減速し、次のモーション(n+1番目単位モーション)を開始する方法
2)以前モーション(n番目単位モーション)をそのまま維持し、次のモーション(n+1番目単位モーション)を開始する方法
図3bおよび3cに示された以前モーション処理方法は、次の単位モーションが「1)以前単位モーション(n番目単位モーション)の加速または等速から減速に変化する時点t4」に従うことと仮定して説明する。本発明がこれに限定されることではなく、一実施形態で以前モーション処理方法を説明するための設定である。
以前モーション処理方法1によれば、計画されたn番目単位モーションは、次の単位モーション(n+1番目単位モーション)が開始する時点t4に点線で示したようにまだ終了していないが、時点t4から減速させて終了させる。
これとは異なり、以前モーション処理方法2)によれば、計画されたn番目単位モーションはそのまま維持され、時点t4に次のn+1番目単位モーションが開始して二つのモーションが重なる。
上述した次の単位モーション処理方法中、時点t4以外の他の時点でも同一の原理で以前モーション処理方法が適用される。
作業空間連続モーション発生器150は、単位モーションの開始時点にロボットの初期速度が「0」の場合、ロボットの移動速度により加速、等速、および減速の三区間に分ける。
作業空間連続モーション発生器150は、設定された三区間それぞれに対する速度プロファイルを生成する。具体的に、作業空間連続モーション発生器150は、加速区間および減速区間の速度プロファイルを所定次数の多項式に生成し、等速区間における速度プロファイルを定数値を有する速度プロファイルを生成する。
作業空間連続モーション発生器150は、単位モーションの開始時点にロボットの初期速度が「0」でない場合、ブレンディング(blending)、等速、および減速の三区間に分けて区間を設定する。ブレンディング区間とは、初期速度が0ではないので、以前単位モーションと現在単位モーションとが結合される区間を意味する。
作業空間連続モーション発生器150は、以前単位モーションと現在単位モーションそれぞれのポーズに含まれている位置情報を加え、それぞれのポーズに含まれている回転情報行列をかけて以前単位モーションと現在単位モーションとを結合する。このことにより、ブレンディング期間の間に移動しなければならない最終位置が決定される。
作業空間連続モーション発生器150は、ブレンディング区間において初期速度で速度を「0」にする速度プロファイルと、最終位置への移動のための加速区間の速度プロファイルをブレンディングする。ブレンディング区間で移動しなければならない距離において初期速度で速度を0にする期間の間に移動した距離の差を、与えられたブレンディング区間の間に移動するための速度プロファイルを合わせてブレンディング区間の速度プロファイルを生成する。
初期速度が「0」でない場合の減速区間において、作業空間連続モーション発生器150は、所定次数の多項式で速度プロファイルを生成することができる。このとき、多項式次数は、上述した初期速度が0のとき、減速区間における速度プロファイル次数より高い。
初期速度が「0」でない場合の等速区間において、作業空間連続モーション発生器150は等速度の速度プロファイルを生成する。
作業空間連続モーション発生器150は、このように生成された速度プロファイルにより軌跡を発生させて、ターゲット位置を示す位置ベクトルT_p(t)と、ターゲット回転量を示す回転ベクトルT_r(t)の行列を含むターゲットポーズを生成する。作業空間連続モーション発生器150は、生成されたターゲットポーズを作業空間モーション合成部20に伝達する。
ウィービングモーション処理部200は、連続モーションのうちのオフセットを動的に変更するモーション、つまり、ウィービングを生成する。ウィービングモーション処理部200は、オフセットを動的に変化させる方法として、事前に計画されたウィービングリストまたはリアルタイムウィービング発生器を利用する。
ウィービングモーション処理部200は、作業空間上で決められたウィービングリストによりウィービングモーションを発生させる。先に、リアルタイム経路発生器の説明で言及した通り、外部状況変化またはモーション経路変更の事由が発生した場合、ウィービングモーション処理部200は事前に計画されたウィービングリストをそのまま使用することができない。この場合、ウィービングモーション処理部200は、リアルタイムウィービング発生器から生成されるウィービングリストにより相対ウィービング量を生成する。
つまり、ウィービングモーション処理部200は、状況に応じて相対ウィービング量を生成するために、リアルタイムウィービングリストを生成するか、または保存されたウィービングリストを選択的に利用することができる。
ウィービングモーション処理部200は、ウィービングリスト保存部210、リアルタイムウィービング発生器220、ウィービングキュー230、ウィービング選択器240、および作業空間ウィービングモーション発生器250を含む。
ウィービングリスト保存部210は、モーション開始前に決められたウィービングのリストを保存する。
ウィービングモーション方法選択情報(A2)は、ロボットのモーション中発生可能な外部状況変化および作業中モーション経路変更事由の発生有無により生成される。つまり、外部状況変化およびモーション経路変更事由のうちの一つが発生すると、モーション開始前に決められた主ウィービングの代わりにリアルタイムで生成されるウィービングを選択するウィービングモーション方法選択情報(A2)が発生する。そうではない場合には、モーション開始前に決められたウィービングを選択する連続モーション方法選択情報(A2)が発生する。
リアルタイムウィービング発生器220は、外部状況変化または作業中モーション経路変更事由が発生した場合、リアルタイムで新たなウィービングを生成する。つまり、リアルタイムウィービング発生器220はリアルタイムで単位ウィービングを生成する。リアルタイムウィービング発生器220は、リアルタイムで新たなウィービングを生成するために多様な方法を使用することができる。
ウィービングキュー230は単位ウィービング保存のための保存空間を含み、保存空間は単位ウィービング単位で分けられているメモリに具現される。リアルタイムウィービング発生器220の単位ウィービング生成に所要される時間により、ウィービングキュー230の大きさを適切に設定することができる。ウィービングキュー130は、ウィービング開始/終了情報(B2)により保存された単位ウィービングを伝達および削除する。
具体的に、ウィービング開始/終了情報(B2)が単位ウィービングの開始を知らせる場合、ウィービングキュー230は当該単位ウィービングをウィービング選択器240に伝達する。そしてウィービング開始/終了情報(B2)が単位ウィービングの終了を知らせる場合、ウィービングキュー230は当該単位ウィービングをメモリから削除する。
ウィービング選択器240は、ウィービングモーション方法選択情報(B2)により、ウィービングリスト保存部110から伝達される単位ウィービング、またはウィービングキュー230から伝達される単位ウィービングのうちの一つを選択する。
作業空間ウィービングモーション発生器250は、ウィービングモーション開始/終了情報(B2)およびウィービング選択器240から伝達される単位ウィービングを受信して、単位ウィービングにより連続モーション中相対ウィービング量を決定する。相対ウィービング量は、位置ベクトルW_p(t)と回転ベクトルW_r(t)の行列に表示される。
ウィービング開始/終了情報(B2)は、作業空間ウィービングモーション発生器250およびウィービングキュー230に伝達される。ウィービングキュー230は、ウィービング開始/終了情報がウィービング終了を知らせれば、ウィービングキューを空ける。ウィービング開始/終了情報(B2)は、連続モーション開始/終了情報(B1)と共に複数のウィービングモーションのうちの一つのウィービングモーションを区分するための情報である。作業空間ウィービングモーション発生器250は、ウィービングモーション開始/終了情報(B2)により、現在生成している連続モーションのウィービングと、他の連続モーションのウィービングとを区分する。
上述した通り、経路キュー130およびウィービングキュー230それぞれは、連続モーション開始/終了情報(B1)およびウィービング開始/終了情報(B2)によりキューを空ける。つまり、次に開始するウィービングモーションと、現在生成されるウィービングモーションとが混ざらないように、現在ウィービングモーションに対するデータは削除される。これはウィービングモーション生成において発生しうる誤動作を防止する。
先に言及したウィービングリストは単位ウィービングの集合である。単位ウィービングは、方向選択、基準ベクトル、ウィービング変更起点、最大ウィービングポーズ(pose)、ウィービング周期、およびウィービング関数によって定義される。
単位ウィービングの方向選択は、移動方向ベクトルと基準ベクトルによって決定される。
単位ウィービングの方向を示すベクトルをウィービング方向ベクトルWdという。Wdは、xyz座標軸によりWd_x、Wd_y、Wd_zから構成される。
ウィービングモーション処理部200は、相対ウィービング量を決定するためのウィービング方向ベクトルWdを設定する。ウィービング方向ベクトルWを設定する方法は多様である。
例えば、1)移動方向ベクトルDと基準ベクトルNに直角を成す方向にウィービング方向ベクトルWを決める方法、および2)作業空間基準の任意のベクトルにウィービング方向ベクトルWを決める方法のうちの一つによることができる。
1)の方法において、移動方向ベクトルDは、連続モーション処理部100で選択された経路を示すベクトルであり、基準ベクトルNは、移動方向ベクトルDと同一平面上で垂直のベクトルである。このとき、移動方向ベクトルDはD_x、D_y、D_zであり、基準ベクトルNはN_x、N_y、N_zに示される。
2)の方法の場合、移動方向ベクトルDは1、0、0であり、基準ベクトルNは0、1、0であり、ウィービング方向ベクトルWは0、0、1に決定される。
ウィービング変更起点は、現在進行中の単位ウィービングの次の単位ウィービングが施行される起点を示す。リアルタイムで単位ウィービングが発生する場合に、ウィービングキューの大きさが0であれば、任意で所望の起点でウィービングの変更が可能なので、単位ウィービング内のウィービング変更起点は関係ない。
しかし、リアルタイムで単位ウィービングが発生する場合に、ウィービングキューの大きさが0でない場合、所望の起点でウィービングの変更が不可能なので、ウィービングキューの大きさにより現在進行中の単位ウィービングのうちの次の単位ウィービングが施行される起点が設定されなければならない。つまり、ウィービングキューが存在する場合(キューの大きさが0でない場合)は、次の単位ウィービングが反映されなければならない時点(ウィービング変更起点)に対する時間情報を有していなければならない。もし、この情報がなければ、ウィービングキューに保存されたウィービング情報が同時に全て施行されるようになる。
ウィービング変更起点は、連続モーションの単位モーションと同期されるように設定されなければならない。または、ウィービング変更起点を設定するためのウィービング基準変数「s」の一定の起点、「s_d」をウィービング変更起点に設定することができる。
sの一定の起点、s_dをウィービング変更起点に設定した場合、次の単位ウィービングが開始する時点は、s>s_dを最初に満足する起点である。
ウィービング基準変数は、時間基準、軌跡長基準、または軌跡回転量基準に設定されることができる。ウィービング基準変数が時間基準である場合、ウィービング基準変数はs(t)となる。
ウィービング基準変数が軌跡長基準である場合、モーションを直線単位モーションの集合と見たとき、動いた長さDをウィービング基準変数に設定する。このことによってウィービング基準変数はsDとなる。
もし、連続モーションが等速である場合には、時間基準のウィービング基準変数による作業空間上の結果と、軌跡長基準のウィービング基準変数による作業空間上の結果が同一である。連続モーションが等速でない場合には、軌跡長基準のウィービング基準変数による作業空間上の結果は、時間基準のウィービング基準変数による作業空間上の結果と異なる。
図4は、ウィービング基準変数が軌跡長基準に従うときの単位モーションとウィービング基準変数との関係を示すグラフである。
図4に示された連続した単位モーションd(1)、d(2)、およびd(3)が合算されて、ウィービング基準変数「sD」が生成される。
ウィービング基準変数が軌跡回転量基準である場合、モーションを回転単位モーションの集合と見たとき、動いた回転量rをウィービング基準変数に設定する。先に、図4に示された軌跡長基準によるウィービング基準変数生成方式と同一である。つまり、回転単位モーションが合算されて、ウィービング基準変数「s(r)」が生成される。
最大ウィービングポーズP_maxは、ウィービング方向ベクトルによる相対的なポーズを決定する。相対的なポーズは、ウィービング方向ベクトルで所定の大きさおよびいずれの方向にウィービングが進めるかを示す。つまり、最大ウィービングポーズP_maxおよびウィービング方向ベクトルWによりウィービングの方向および大きさが決定される。 最大ウィービングポーズP_maxは、P_x、P_y、P_z、P_roll、P_pitch、P_yawと定義される。例えば、最大ウィービングポーズP_maxは、均質変換(Homogeneous Transform)行列の積の形態に算出される。均質変換行列は、位置と回転に対する情報を全て含む。このとき、P_x、P_y、P_zは、xyz座標軸における位置であり、P_roll、P_pitch、P_yawは、xyz座標軸の回転程度を示す情報である。
ウィービング関数f(k)は、最大ウィービングポーズP_maxをいかなるモーションで発生させるのかを決める関数である。つまり、最大ウィービングポーズP_maxが発生するモーション形状を決める関数である。ウィービング関数f(k)は、周期および最大値が1である周期関数に選ばれる[max(f(k))=1]。
ウィービングの大きさは最大ウィービングポーズP_maxに反映されているので、ウィービング関数f(k)の最大大きさは1に設定し、ウィービング関数f(k)の周期が1となるようにウィービング関数f(k)設定する。
例えば、ウィービング関数f(k)をsin(k/2pi)、cos(k/pi)などのような三角関数に設定するか、または最大大きさが1であり、周期が1である四角パルスまたは三角パルスを設定することができる。このとき、ウィービング関数f(k)が三角関数である場合は連続的なウィービング関数であり、四角パルスまたは三角パルスである場合は非連続ウィービング関数である。
連続的なウィービング関数f(k)は、時間に対する微分値(d(f(k))/dt)が0ではなく、時点と終点は同一である[f(0=f1]。
ウィービング周期spは、ウィービング関数が繰り返される時間を示し、ウィービング基準変数s(t)と変数kとの間には数式1のような関係がある。
[数式1]
mod(s(t), sp)=k(t)
ここで、mod演算は、時間によるウィービング基準変数s(t)をウィービング周期spで割った余りを意味する。つまり、時間によるウィービング基準変数s(t)をウィービング周期にspで割った余りが変数kである。
ウィービングモーション処理部200は、ウィービングサンプリング時間tsを周期で動作する。したがって、ウィービングモーション処理部200は、ウィービングサンプリング時間ts内にウィービング量を計算しなければならない。ウィービングサンプリング時間tsおよびウィービング基準変数sの設定方法を知らせるウィービング基準変数情報SIは、作業空間ウィービングモーション発生器250に伝達される。
作業空間ウィービングモーション発生器250は、ウィービング基準変数情報SIによりウィービング基準変数sを決め、ウィービング基準変数sが決定されれば変()を決め、単位ウィービング、ウィービング基準変数sにより相対ウィービング量を生成する。このとき、作業空間ウィービングモーション発生器250は、ウィービングサンプリング時間tsごとに一定の順序により動作して相対ウィービング量を決定する。ウィービング基準変数sが時間基準である場合、相対ウィービング量はW_p(t)ベクトルとW_r(t)行列である。
ウィービング基準変数情報SIは、ウィービング基準変数sが時間基準の変数なのか、軌跡長基準の変数なのか、または軌跡回転量基準の変数なのかに対する情報を含む。したがって、ウィービングモーション発生器250は、ウィービング基準変数情報SIによりウィービング基準変数sを決めて、変数kを決定する。ウィービング基準変数情報SIが時間基準の基準変数である場合、数式1により変数k(t)が決定される。ウィービングモーション発生器250にはウィービング基準変数sにより変数kを設定する方法が予め設定されている。
もし、ウィービング基準変数情報SIがウィービング基準変数sを軌跡長基準または軌跡回転量基準の変数に指示すれば、作業空間ウィービングモーション発生器250は、ウィービングサンプリング時間tsごとに、軌跡長または軌跡回転量を生成する。作業空間連続モーション発生器150から単位モーションの伝達を受け、単位モーションを合算して軌跡長または軌跡回転量を生成することができる。
例えば、先に、図4を参照して説明した軌跡長を合算する方法を利用して、作業空間ウィービングモーション発生器250は、作業空間連続モーション発生器150から単位ウィービング(d1、d2、...)の伝達を受け、これを合算してウィービング基準変数sDを生成することができる。
また、作業空間ウィービングモーション発生器250は、作業空間連続モーション発生器150から単位ウィービングの回転量(r1、r2、...)を合算してウィービング基準変数s(r)を生成することができる。
図5は、ウィービング基準変数が時間基準である場合、作業空間ウィービングモーション発生器の動作を示すフローチャートである。下記に説明する動作は、ウィービング基準変数が軌跡長および軌跡回転量基準であるときにも同一に適用される。変数が時間から軌跡長および軌跡回転量に変更されるだけである。
図5に示されているように、先ず、作業空間ウィービングモーション発生器250はウィービング基準変数s(t)および変数k(t)を生成する(S100)。ウィービング基準変数s(t)が時間基準であると説明する。しかし、本発明がこれに限定されることではない。
作業空間ウィービングモーション発生器250は、基準変数s(t)がウィービング変更起点sdと同一であるかを判断する(S110)。
判断結果、ウィービング基準変数s(t)がウィービング変更起点と同一である場合、作業空間ウィービングモーション発生器250は次の単位ウィービングを選択し、ウィービング基準変数s(t)を初期化する(S120)[s(t)=0]。
判断結果ウィービング基準変数s(t)がウィービング変更起点と異なる場合、作業空間ウィービングモーション発生器250は、ウィービング基準変数s(t)および変数k(t)を生成する段階S100を繰り返す。
作業空間ウィービングモーション発生器250は、現在単位ウィービングのウィービング量を計算する(S130)。ウィービング量P_r(t)は、数式2のように最大ウィービングポーズP_maxとウィービング関数f(k)の積で示す。二つの因子の積は、ロボットの位置および回転を示し、ロボットの位置はxyz座標軸における座標で、ロボットの回転はxyz座標軸の回転で示すことができる。
最大ウィービングポーズP_maxとウィービング関数f(k)の積は、最大ウィービングポーズP_maxの構成成分に対応するウィービング関数f(k)の成分を代入することを意味する。
[数式2]
P_r(t)=P_max*f(k(t))
=(P_r_x(t), P_r_y(t), P_r_z(t),P_r_roll(t), P_r_pitch(t), P_r_yaw(t))
このとき、位置を示すウィービング量を位置ウィービング量P_r_p(t)といい、回転を示すウィービング量を回転ウィービング量P_r_r(t)という。
数式2において、生成されたウィービング量のうちの位置ウィービング量P_r_p(t)は、P_r_x(t)、P_r_y(t)、P_r_z(t))であり、回転ウィービング量P_r_r(t)は、P_r_roll(t)、P_r_pitch(t)、P_r_yaw(t)である。
作業空間ウィービングモーション発生器250はウィービング方向を計算する(S140)。ウィービング方向はウィービングベクトルRw(t)で示される。作業空間ウィービングモーション発生器250は、上述した通り、移動方向ベクトルDと基準ベクトルNの外積を計算して、ウィービング方向ベクトルRw(t)を計算する。
作業空間ウィービングモーション発生器250は、ウィービング方向とウィービング量の積で相対ウィービング量を計算する(S140)。相対ウィービング量は、相対ウィービング量ベクトルW_p(t)、W_r(t)でに示す。相対ウィービング量ベクトルのうちの位置相対ウィービング量ベクトルW_p(t)は、数式3の通り、ウィービング方向ベクトルRw(t)に位置ウィービング量P_r_p(t)をかけた値である。相対ウィービング量ベクトルのうちの回転相対ウィービング量ベクトルW_r(t)は、数式4の通り、ウィービング方向ベクトルRw(t)に回転ウィービング量P_r_r(t)をかけた値である。
[数式3]
W_p(t)=Rw(t)*P_r_p(t)
[数式4]
W_r(t)=Rw(t)*P_r_r(t)
このような方式により、作業空間ウィービングモーション発生器250は相対ウィービング量を計算する。作業空間ウィービングモーション発生器250は、ウィービング開始/終了情報(B2)により、現在生成しているウィービングモーションのウィービングと、他のウィービングモーションのウィービングとを区分する。
補償姿勢処理部300は、外部状況変化に応じた任意の変位または回転量をモーションに反映する。外部状況の変化に応じた変位または回転量の算出は多様な方法で算出される。
本発明の実施形態では、予め設定された所定の方法により外部状況の変換に応じた任意の変位または回転量を算出する。
補償姿勢処理部300は、外部状況を受信する補償姿勢発生器310を含む。補償姿勢発生器310は外部状況を感知し、外部状況に変化が発生すると、これを補償するための変位または回転量を予め設定された方法により算出する。
補償姿勢処理部300は、外部状況に応じた任意の補償姿勢値により決定される補償変位M_p(t)および補償回転量(M_r(t))を生成する。
作業空間モーション合成部20は、作業空間連続モーション発生器150、作業空間ウィービングモーション発生器250、および補償姿勢発生器310それぞれの出力の入力受けて、作業空間上でロボットの位置および回転量を算出する。
作業空間モーション合成部20、作業空間連続モーション発生器150、作業空間ウィービングモーション発生器250、補償姿勢発生器310、およびジョイント空間変換器30は、同一の作業空間サンプリング周期で同期化されている。作業空間サンプリング周期は、ウィービングサンプリング周期tsと同期化されている。
作業空間モーション合成部20は、入力に基づいて作業空間上の位置TS_p(t)および作業空間上の回転量TS_r(t)を下記の数式5および6のように算出する。
[数式5]
TS_p(t)=T_p(t)+W_p(t)+M_p(t)
[数式6]
TS_r(t)=T_r(t)*W_r(t)*M_r(t)
数式5および6のように、作業空間モーション合成器20は、作業空間サンプリング周期ごとに施行して、リアルタイムでウィービング発生および補償姿勢値の反映が可能である。
ジョイント空間変換器30は、作業空間モーション合成部20から作業空間上の位置および回転量を受信して、作業空間で生成されたウィービングモーションを実現するためにロボットのジョイントで行われるべきの動作を生成する。つまり、作業空間のウィービングモーションをジョイント空間のモーションに変換する。具体的な方法として、逆機構学(Inverse Kinematics)がジョイント空間変換器30に適用される。
サーボ制御部40は、インピーダンス制御、位置制御、速度制御、およびトルク制御などのようにロボットのジョイント単位の制御を行う構成である。
図6a〜図6dそれぞれは、本発明の実施形態によるモーション制御システムが適用されて生成されるウィービングモーションを示したものである。
図6aは、ウィービング関数がサイン関数であり、ウィービング基準変数が時間基準である場合を示した図面である。
図6aにおいて、始点ST1から終点EN1まで行く連続モーション経路は、1点鎖線で示されている。また、連続モーションにウィービングが加われた作業空間におけるウィービングモーションは、実線で示されている。図6aのウィービング関数f(k)はsin(k/2pi)である。
図6aにおいて、始点ST1と経由点TH1との間の区間PE1における速度V1が、経由点TH1と終点EN1との間の区間PE2における速度V2より速い。
ウィービング関数f(k)は、時間基準のウィービング基準変数s(t)に従うので、図6aに示されているように、区間PE2に含まれるウィービング周期が、区間PE1のウィービング周期よりさらに多い。速度V1が速度V2より速いので、同一距離を移動するのに所要される時間がさらに短い。ウィービング基準変数s(t)は時間基準であるので、時間が短いほど当該時間内に含まれるウィービング周期は減少する。
図6bは、ウィービング関数が一次関数であり、ウィービング基準変数が時間基準である場合を示した図面である。図6bは図6aと同様に、連続モーション経路は一点鎖線で、作業空間でウィービングモーションは実線で示されている。図6aのウィービング関数f(k)はkである。
図6bにおいて、始点ST2と経由点TH2との間の区間PE2における速度V3が、経由点TH2と終点EN2との間の区間PE2における速度V4より速い。したがって、区間PE4に含まれるウィービング周期が、区間PE3のウィービング周期よりさらに多い。
図6cは、ウィービング関数がサイン関数であり、ウィービング基準変数が軌跡長基準である場合を示した図面である。図6cは図6aと同様に、連続モーション経路は一点鎖線で、作業空間でウィービングモーションは実線で示されている。図6cのウィービング関数f(k)はsin(k/2pi)である。
図6cに示されているように、ウィービング基準変数sが軌跡長基準である場合、速度V5および速度V6に関係なしに、区間PE5および区間PE6に含まれるウィービング周期の個数は、連続モーション移動経路長さにより決定される。
したがって、区間PE5および区間PE6の長さが同一である場合、各区間に含まれるウィービング周期個数は同一である。ただし、作業ロボットが作業区間PE5を通過する時間と、作業区間PE6を通過する時間との間には、速度により差がある。
図6dは、ウィービング関数が一次関数であり、ウィービング基準変数が軌跡長基準である場合を示した図面である。図6dは図6aと同様に、連続モーション経路は一点鎖線で、作業空間でウィービングモーションは実線で示されている。図6dのウィービング関数f(k)はkである。
図6dに示されているように、ウィービング基準変数sが軌跡長基準である場合、速度V7および速度V8に関係なしに、作業区間PE7および作業区間PE8それぞれに含まれるウィービング周期の個数は、連続モーション移動経路の長さにより決定される。
以上、参照した図面と記載された発明の詳細な説明は単に本発明の例示的なものであり、これは本発明を説明するための目的で用いられたもので、意味の限定や特許請求の範囲に記載された本発明の範囲を制限するために用いられたものではない。したがって、本技術分野の通常の知識を有する者であれば、これらから多様な変形および均等な他の実施形態が可能であるという点を理解しなければならない。したがって、本発明の真の技術的保護範囲は、添付された特許請求の範囲の技術的な思想によって決められなければならない。
産業上利用の可能性
このように、リアルタイムでウィービングモーションを制御できる本発明の実施形態によれば、外部作業環境の変化にリアルタイムで対応することができる。

Claims (15)

  1. 作業空間上でロボットの動作を制御するためのリアルタイムウィービングモーション制御装置において、
    前記作業空間上で前記ロボットの主移動経路を決めて、前記決められた主移動経路を構成する単位モーションを発生させ、単位モーションが連結された連続モーションのうちのオフセットを動的に変更するウィービングを発生させ、前記作業環境により決定される補償変位および補償回転量のうちの少なくとも一つを生成する前処理部と、
    前記単位モーションと前記ウィービング、および前記補償変位と前記補償回転量のうちの少なくとも一つによって、前記作業空間上で前記ロボットの位置および回転量を算出する作業空間モーション合成部と
    を含み、
    前記前処理部は、前記ロボットのモーション開始前に決められたウィービングまたはリアルタイムで生成されるウィービングを選択して前記ウィービングを発生させる、リアルタイムウィービングモーション制御装置。
  2. 前記前処理部は、
    前記ロボットのモーション開始前に決められた主移動経路またはリアルタイムで生成される主移動経路を連続モーション方法選択情報により決めて、前記単位モーションを生成する連続モーション処理部と、
    前記ロボットのモーション開始前に決められた前記ウィービングまたはリアルタイムで生成される前記ウィービングをウィービングモーション方法選択情報により選択し、相対ウィービング量を生成するウィービングモーション処理部と、
    前記作業空間の状況変化に応じた任意の変位または回転量をモーションに反映するための前記補償変位または前記補償回転量を生成する補償姿勢処理部と
    を含む、請求項1に記載のリアルタイムウィービングモーション制御装置。
  3. 前記連続モーション処理部は、
    前記モーション開始前に決められた主移動経路が保存されている経路リスト保存部と;
    前記作業空間の状況変化またはモーション経路変更の事由が発生した場合、リアルタイムで新たな単位モーションを生成するリアルタイム経路発生器と、
    前記リアルタイム経路発生器から生成された単位モーションを保存する経路キューと;
    前記経路キューの単位モーションおよび前記経路リスト保存部の単位モーションのうちの一つを前記連続モーション方法選択情報により選択する経路選択器と、
    所定の作業開始点と作業終了点を示す連続モーション開始/終了情報によって、前記経路選択器から伝達される単位モーションを連続モーションに連結する作業空間連続モーション発生器と
    を含む、請求項2に記載のリアルタイムウィービングモーション制御装置。
  4. 前記作業空間連続モーション発生器は、
    単位モーション開始方法により連続モーションのうちのn+1番目単位モーションを開始し、以前モーションの処理方法によりn番目単位モーションを処理する、請求項3に記載のリアルタイムウィービングモーション制御装置。
  5. 前記単位モーション開始方法は、
    前記n番目単位モーションの加速または等速から減速に変化する時点に前記n+1番目単位モーションを開始する方法、
    前記n番目単位モーションの加速から等速または減速に変換する時点に前記n+1番目単位モーションを開始する方法、
    前記n番目単位モーションが停止する一定時間前の時点に前記n+1番目単位モーションを開始する方法、および
    前記n番目単位モーションおよびn−1番目以前単位モーション間の重畳モーションが終了する時点にn+1番目単位モーションを開始する方法
    のうちの一つである、請求項4に記載のリアルタイムウィービングモーション制御装置。
  6. 前記以前モーション処理方法は、
    前記n番目単位モーションを減速し、前記n+1番目単位モーションを開始する方法、および
    前記n番目単位モーションをそのまま維持し、前記n+1番目単位モーションを開始する方法
    のうちの一つである、請求項4に記載のリアルタイムウィービングモーション制御装置。
  7. 前記ウィービングモーション処理部は、
    前記モーション開始前に決められたウィービングリストが保存されたウィービングリスト保存部と、
    前記作業空間の状況変化または作業中モーション経路変更の事由が発生すると、リアルタイムでウィービングを生成するリアルタイムウィービング発生器と、
    前記リアルタイムウィービング発生器から生成されたウィービングを単位ウィービング単位で保存するウィービングキューと、
    前記ウィービングモーション方法選択情報によって、前記ウィービングリストに含まれている単位ウィービングまたは前記ウィービングキューの単位ウィービングを選択するウィービング選択器と、
    前記ウィービング選択器によって選択された単位ウィービングを区分するためのウィービング開始/終了情報、ウィービングサンプリング時間、およびウィービング基準変数情報を受信し、前記選択された単位ウィービングおよびウィービング基準変数情報を利用して、前記ウィービングサンプリング時間内に相対ウィービング量を決める作業空間ウィービングモーション発生器と
    を含み、
    前記ウィービング基準変数情報は、
    現在単位ウィービングのうちの次の単位ウィービングが施行されるウィービング変更起点を設定するためのウィービング基準変数を含む、請求項2に記載のリアルタイムウィービングモーション制御装置。
  8. 前記作業空間ウィービングモーション発生器は、
    前記ウィービング基準変数を前記連続モーションの時間、前記連続モーションの軌跡長、または前記連続モーションの軌跡回転量を基準として決める、請求項7に記載のリアルタイムウィービングモーション制御装置。
  9. 前記作業空間ウィービングモーション発生器は、
    前記ウィービング基準変数を決め、前記ウィービング関数を繰り返すウィービング周期および前記決められたウィービング基準変数を利用して第1変数を決め、前記ウィービング関数を前記第1変数に対する関数に生成する、請求項8に記載のリアルタイムウィービングモーション制御装置。
  10. 前記作業空間ウィービングモーション発生器は、
    前記ウィービング基準変数が前記ウィービング変更起点に到達しなければ、前記ウィービング基準変数および前記第1変数を生成する、請求項9に記載のリアルタイムウィービングモーション制御装置。
  11. 前記作業空間モーション合成部、前記作業空間連続モーション発生器、前記作業空間ウィービングモーション発生器、および前記補償姿勢処理部は、前記ウィービングサンプリング時間に同期されて動作する、請求項7に記載のリアルタイムウィービングモーション制御装置。
  12. 前記作業空間モーション合成部からロボットの位置および回転量を受信して、前記ウィービングモーションを実現するために前記ロボットのジョイントの動作を生成するジョイント空間変換器をさらに含み、
    前記ジョイント空間変換器は、
    前記ウィービングサンプリング周期に同期されて動作する、請求項11に記載のリアルタイムウィービングモーション制御装置。
  13. 作業空間上でロボットの動作を制御するためのリアルタイムウィービングモーション制御方法において、
    前記作業空間の状況変化および作業中のモーション経路変更事由を含むリアルタイム変更事由の発生有無によりリアルタイムで単位モーションが生成され、前記ロボットのモーション開始前に決められた単位モーションまたは前記リアルタイムで生成される単位モーションのうちの一つを選択する段階と、
    前記リアルタイム変更事由の発生有無によりリアルタイムで単位ウィービングが生成され、前記ロボットのモーション開始前に決められた単位ウィービングおよび前記リアルタイムで生成される単位ウィービングのうちの一つを選択する段階と、
    前記作業空間の状況変化によって決定される補償変位および補償回転量のうちの少なくとも一つを生成する段階と、
    前記単位モーション、前記単位ウィービング、および前記補償変位と補償回転量のうちの少なくとも一つによって、前記作業空間上で前記ロボットの位置および回転量を算出する段階と
    を含む、リアルタイムウィービングモーション制御方法。
  14. 前記選択された単位ウィービングにより相対ウィービング量を決める段階をさらに含み、
    前記相対ウィービング量を決める段階は、
    前記選択された単位ウィービングおよびウィービング基準変数情報を利用して、ウィービングサンプリング時間内に相対ウィービング量を決める段階を含み、
    前記ウィービング基準変数情報は、
    現在単位ウィービングのうちの次の単位ウィービングが施行されるウィービング変更起点を設定するためのウィービング基準変数を含む、請求項13に記載のリアルタイムウィービングモーション制御方法。
  15. 前記相対ウィービング量を決める段階は、
    前記ウィービング基準変数を前記連続モーションの時間、前記連続モーションの軌跡長、または前記連続モーションの軌跡回転量を基準として決める段階と、
    前記ウィービング関数を繰り返すウィービング周期および前記決められたウィービング基準変数を利用して第1変数を決め、前記ウィービング関数を前記第1変数に対する関数に生成する段階と
    を含む、請求項14に記載のリアルタイムウィービングモーション制御方法。
JP2014538695A 2011-11-02 2012-10-05 リアルタイムウィービングモーション制御装置およびその方法 Active JP5858168B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2011-0113482 2011-11-02
KR1020110113482A KR101337650B1 (ko) 2011-11-02 2011-11-02 실시간 위빙 모션 제어 장치 및 그 방법
PCT/KR2012/008059 WO2013065955A1 (ko) 2011-11-02 2012-10-05 실시간 위빙 모션 제어 장치 및 그 방법

Publications (2)

Publication Number Publication Date
JP2014534083A JP2014534083A (ja) 2014-12-18
JP5858168B2 true JP5858168B2 (ja) 2016-02-10

Family

ID=48192266

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014538695A Active JP5858168B2 (ja) 2011-11-02 2012-10-05 リアルタイムウィービングモーション制御装置およびその方法

Country Status (6)

Country Link
US (1) US9302390B2 (ja)
JP (1) JP5858168B2 (ja)
KR (1) KR101337650B1 (ja)
CN (1) CN104023922B (ja)
DE (1) DE112012004592B4 (ja)
WO (1) WO2013065955A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102235166B1 (ko) * 2015-09-21 2021-04-02 주식회사 레인보우로보틱스 실시간 로봇 시스템, 로봇 시스템 제어 장치 및 로봇 시스템 제어 방법
EP3428754B1 (de) * 2017-07-13 2023-02-15 Siemens Aktiengesellschaft Verfahren zum einrichten eines bewegungsautomaten und einrichtungsanordnung
CN107998656B (zh) * 2017-11-22 2020-12-22 福建天晴数码有限公司 一种编排方法及终端
JP6999444B2 (ja) * 2018-02-16 2022-01-18 日本電産サンキョー株式会社 産業用ロボットの補正値算出方法
KR20210085946A (ko) * 2019-12-31 2021-07-08 주식회사 한화 로봇의 제어 장치, 방법 및 컴퓨터 프로그램
JP2023047209A (ja) 2021-09-24 2023-04-05 株式会社神戸製鋼所 ウィービング制御方法、溶接制御装置、溶接システム及びウィービング制御プログラム

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6188975A (ja) * 1984-10-05 1986-05-07 Fanuc Ltd 自動溶接機の経路補正方式
JPH07106454B2 (ja) 1989-06-14 1995-11-15 新明和工業株式会社 溶接線倣い制御方法
JP3146550B2 (ja) 1991-08-26 2001-03-19 株式会社日立製作所 産業用ロボットの制御装置
JPH06222817A (ja) * 1993-01-27 1994-08-12 Komatsu Ltd ロボットのウィービング制御装置
JPH0720919A (ja) 1993-06-22 1995-01-24 Mitsubishi Heavy Ind Ltd マニプレータの制御装置
JP3208261B2 (ja) 1994-10-07 2001-09-10 株式会社神戸製鋼所 アーク溶接ロボット
KR0155913B1 (ko) 1995-10-26 1998-12-15 김광호 위빙기능을 갖는 로봇제어 방법
JPH10244367A (ja) 1997-03-03 1998-09-14 Fanuc Ltd 溶接ロボットシステム
JPH11296215A (ja) 1998-04-07 1999-10-29 Daihen Corp 産業用ロボットの自動プログラミング方法
KR100621100B1 (ko) * 2000-02-11 2006-09-07 삼성전자주식회사 용접로봇 교시위치 보정방법 및 용접로봇시스템
AT410641B (de) 2000-04-05 2003-06-25 Fronius Schweissmasch Prod Verfahren zum fortlaufenden regeln bzw. nachführen einer position eines schweissbrenners bzw. eines schweisskopfes
JP2002096170A (ja) 2000-09-19 2002-04-02 Daihen Corp アーク溶接ロボットの自動プログラミング法における自動センシングプロセスの修正法
CN1255249C (zh) 2002-12-05 2006-05-10 上海交通大学 机器人运行轨迹坐标在线补偿方法
JP2004252814A (ja) * 2003-02-21 2004-09-09 Daihen Corp 多関節型ロボットの速度制御法および制御装置
JP4647325B2 (ja) * 2004-02-10 2011-03-09 株式会社小松製作所 建設機械の作業機の制御装置、建設機械の作業機の制御方法、及びこの方法をコンピュータに実行させるプログラム
DE102004024378B4 (de) 2004-05-17 2009-05-20 Kuka Roboter Gmbh Verfahren zur robotergestützten Vermessung von Objekten
SE0401542D0 (sv) * 2004-06-14 2004-06-14 Abb Ab A method and a device for providing feedback on weaving parameters
JP4498061B2 (ja) 2004-08-18 2010-07-07 株式会社ダイヘン 溶接ロボット制御装置
JP2007061983A (ja) 2005-09-01 2007-03-15 Fanuc Ltd ロボット監視システム
JP4842656B2 (ja) 2006-02-14 2011-12-21 株式会社ダイヘン 溶接ロボット制御装置
JP4891726B2 (ja) * 2006-10-06 2012-03-07 株式会社神戸製鋼所 タンデムアーク溶接システムを制御するロボット制御装置およびそれを用いたアーク倣い制御方法
JP5049916B2 (ja) 2007-10-31 2012-10-17 株式会社神戸製鋼所 アーク溶接ロボットの制御装置、その方法及びそのプログラム
CN101402199B (zh) 2008-10-20 2011-01-26 北京理工大学 基于视觉的手眼式低伺服精度机器人抓取移动目标的方法
JP5498246B2 (ja) * 2010-05-11 2014-05-21 株式会社神戸製鋼所 タンデムアーク溶接システムを制御するロボットコントローラ、それを用いたアーク倣い制御方法およびタンデムアーク溶接システム
KR20120005082A (ko) 2010-07-08 2012-01-16 대우조선해양 주식회사 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템

Also Published As

Publication number Publication date
WO2013065955A1 (ko) 2013-05-10
US9302390B2 (en) 2016-04-05
CN104023922A (zh) 2014-09-03
KR101337650B1 (ko) 2013-12-05
DE112012004592B4 (de) 2015-11-12
KR20130048566A (ko) 2013-05-10
DE112012004592T5 (de) 2014-08-21
US20140316568A1 (en) 2014-10-23
JP2014534083A (ja) 2014-12-18
CN104023922B (zh) 2016-08-24

Similar Documents

Publication Publication Date Title
JP5858168B2 (ja) リアルタイムウィービングモーション制御装置およびその方法
CN111399514B (zh) 一种机器人时间最优轨迹规划方法
CN103970139B (zh) 一种机器人连续点位运动规划方法
US9981383B1 (en) Real-time trajectory generation for actuators of a robot to reduce chance of collision with obstacle(s)
JP2019517929A (ja) ロボット関節空間におけるポイントツーポイント移動の軌跡計画方法
US9764471B2 (en) Trajectory generation apparatus for robot to generate trajectory including curved portion
US9981381B1 (en) Real time generation of phase synchronized trajectories
JP6501470B2 (ja) 軌道生成方法、軌道生成装置、ロボット装置、プログラム及び記録媒体
US9975244B1 (en) Real-time generation of trajectories for actuators of a robot
JP2020093364A (ja) 軌道生成装置
CN109304711A (zh) 串联机器人轨迹规划方法
JP2014161917A (ja) ロボット制御システム、ロボット、ロボット制御方法及びプログラム
JP2006059037A (ja) 溶接ロボット制御装置
CN115808904A (zh) 一种工业机器人圆弧过辅助点轨迹规划方法
Brinker et al. Lagrangian based dynamic analyses of delta robots with serial-parallel architecture
Shen et al. Trajectory optimization algorithm based on robot dynamics and convex optimization
Dantam et al. Spherical parabolic blends for robot workspace trajectories
JP4528577B2 (ja) 工業用ロボット
JP7042209B2 (ja) 軌道生成装置、軌道生成方法、及びロボットシステム
JP7060700B2 (ja) コーディネートシステム、ハンドリング装置及び方法
CN112262026B (zh) 加速度调整装置及存储介质
KR100540588B1 (ko) 모션 제어의 실시간 응답을 위한 궤적발생방법 및 시스템
JP6046994B2 (ja) 制御装置
Zribi et al. Smooth motion profile for trajectory planning of a flexible manipulator
Zhang Research and analysis on the robot trajectory interpolation methods

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150306

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150317

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150617

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151130

R150 Certificate of patent or registration of utility model

Ref document number: 5858168

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250