JP2015160253A - 軌道生成方法、ロボット装置、プログラム及び記録媒体 - Google Patents

軌道生成方法、ロボット装置、プログラム及び記録媒体 Download PDF

Info

Publication number
JP2015160253A
JP2015160253A JP2014034932A JP2014034932A JP2015160253A JP 2015160253 A JP2015160253 A JP 2015160253A JP 2014034932 A JP2014034932 A JP 2014034932A JP 2014034932 A JP2014034932 A JP 2014034932A JP 2015160253 A JP2015160253 A JP 2015160253A
Authority
JP
Japan
Prior art keywords
trajectory
robot arm
robot
point
robot arms
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.)
Granted
Application number
JP2014034932A
Other languages
English (en)
Other versions
JP6282140B2 (ja
Inventor
弦 木村
Gen Kimura
弦 木村
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2014034932A priority Critical patent/JP6282140B2/ja
Publication of JP2015160253A publication Critical patent/JP2015160253A/ja
Application granted granted Critical
Publication of JP6282140B2 publication Critical patent/JP6282140B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】各ロボットアームの開始点から目標点までの動作時間を短縮化する軌道を生成する。【解決手段】仮想空間内の各ロボットアームA,Bの開始点と目標点との間の経路を生成する。各ロボットアームA,Bの経路上に複数の中間点を設定する。複数の中間点のそれぞれに対し、開始点から中間点までの第1区間では、複数のロボットアームA,Bが互いに衝突を回避しながら各ロボットアームA,Bで同期して動作するよう、各ロボットアームA,Bの関節角度の推移を演算する。中間点から目標点までの第2区間では、各ロボットアームA,Bで独立して動作するよう、各ロボットアームA,Bの関節角度の推移を演算する。これら演算結果に基づき、各ロボットアームA,Bの複数の仮の軌道を生成する。複数の仮の軌道のうち、複数のロボットアームA,Bが互いに衝突しない仮の軌道を本軌道に設定する。【選択図】図1

Description

本発明は、複数のロボットアームの軌道を求める軌道生成方法、ロボット装置、プログラム及び記録媒体に関する。
自動車や電機製品等の生産ラインでは、複数のロボットアームを用いて、溶接や組み立て等の作業を自動化している。複数のロボットアームは、互いの動作領域が重なり合うように互いに近接して配置されている。複数のロボットアームの教示作業は、従来、教示者が各ロボットアームを1ステップずつ実際に動作させながら行っていた。そして、教示者は、ロボットアーム間で衝突が生じないように各ロボットアームの動作軌道と、各動作軌道間の実行タイミングを試行錯誤的に教示していた。
しかし、教示者による試行錯誤的な教示では、複数のロボットアームを効率的に動作させるのが非常に難しいという問題があった。複数のロボットアームを効率的に動作させようとすると、その教示作業は非常に複雑になり、かつ教示および動作確認に非常に時間がかかっていた。特に、製品の種類が頻繁に変わる環境では、製品の種類が変更される度に教示者が教示作業を全てやり直すことになる。実際にロボットアームが稼動して生産を行う直接工程よりも、教示作業などの間接工程時間の比率が増大し、生産性が極端に低下してしまっていた。
そこで、近年では、教示者による直接教示に代わって、計算機を用いて複数のロボットアームの教示作業と動作制御を効率化する方法や装置が提案されている(非特許文献1参照)。非特許文献1には、PRM(Probabilistic RoadMap Method)による経路生成アルゴリズムにしたがって経路生成を行い、ロボットアーム同士の衝突回避を行う手法が開示されている。
G. S´anchez and J.-C. Latombe, "On delaying collision checking in PRM planning: Application to multi-robot coordination" International Journal of Robotics Research, vol. 21, no. 1, pp. 5-26, 2002.
非特許文献1の方法は、双腕ロボットアームを1つのロボットアームとみなして、PRMによるアルゴリズムにしたがって各ロボットアームの経路の生成を行い、ロボットアームを同期させ、ロボットアーム同士の衝突(干渉)を回避する軌道を計算する手法である。この非特許文献1の方法では、双腕ロボットアームを1つのロボットアームとみなし、双腕ロボットアームのコンフィグレーション(各軸の関節角度)を関節空間、いわゆるCスペース(Configuration Space)で1つの点として扱う。例えば、各ロボットアームが2軸の場合には、1つのロボットアームとみなした開始点や目標点のコンフィグレーションは、4つのパラメータで表される。そして、2つのロボットアームをそれぞれ開始点から目標点まで終始、衝突を回避するよう同期させると、2つのロボットアームがそれぞれの目標点に到着するタイミングが同じになる。
しかしながら、ロボットアーム同士の衝突の回避動作の必要のない区間においても、ロボットアーム同士を同期させているため、各ロボットアームの動きに無駄な制約が生じ、ロボットアームが目標点に到達する時間が長くなっていた。つまり、従来の方法では、それぞれのロボットアームの移動時間の最適化が十分ではなかったため、動作時間に無駄が生じていた。そのため、ロボットアームの動作時間の短縮化が望まれていた。
そこで、本発明は、各ロボットアームの開始点から目標点までの動作時間を短縮化する軌道を生成する軌道生成方法、ロボット装置、プログラム及び記録媒体を提供することを目的とする。
本発明の軌道生成方法は、多関節である複数のロボットアームの軌道を求める軌道生成方法であって、演算部が、前記各ロボットアームの開始点と目標点との間の経路を生成する経路生成工程と、前記演算部が、前記各ロボットアームの経路上に複数の中間点を設定する中間点設定工程と、前記演算部が、前記中間点設定工程で設定した前記複数の中間点のそれぞれに対し、前記開始点から前記中間点までの第1区間では、前記複数のロボットアームが互いに衝突を回避しながら前記各ロボットアームで同期して動作するよう、前記各ロボットアームの関節角度の推移を演算し、かつ前記中間点から前記目標点までの第2区間では、前記各ロボットアームで独立して動作するよう、前記各ロボットアームの関節角度の推移を演算して、前記各ロボットアームの複数の仮の軌道を生成する仮軌道生成工程と、前記演算部が、前記仮軌道生成工程にて生成した複数の仮の軌道のうち、前記複数のロボットアームが互いに衝突しない仮の軌道を、前記各ロボットアームの軌道に設定する軌道設定工程と、を備えたことを特徴とする。
本発明によれば、各ロボットアームの開始点から目標点までの軌道の動作時間を短縮化することができる。
実施形態に係るロボット装置の概略構成を示す説明図である。 実施形態に係るロボット装置の構成を示すブロック図である。 実施形態に係るロボット装置の演算部が実行する軌道生成方法の各工程を示すフローチャートである。 実施形態に係る関節空間における各ロボットアームの経路を示す説明図である。 実施形態の軌道生成方法で生成した軌道と、比較例の軌道生成方法で生成した軌道とを、2次元関節空間上に射影して表現した概念図である。 実施形態に係る軌道生成方法で生成した軌道を辿って動作するロボットアームの説明図である。 比較例の軌道生成方法で生成した軌道を辿って動作するロボットアームの説明図である。
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。図1は、本発明の実施形態に係るロボット装置の概略構成を示す説明図である。ロボット装置100は、複数(本実施形態では2つ)のロボットアーム101,102と、各ロボットアーム101,102の動作を制御する制御装置200とを備えている。また、ロボット装置100は、制御装置200に教示点のデータ等を送信する操作装置300と、制御装置200の演算結果等を表示する表示装置400とを備えている。
ロボットアーム101,102は、多関節のロボットアームであり、関節とリンク機構で構成される。関節には回転関節や直動関節の他、球体関節などさまざまな種類の関節が適用可能である。関節の動作はモータ等で能動的に動作する場合と、動力源を持たずに受動的に動作する場合とがある。各関節間はリンク機構により結びつけられ、関節とリンク機構が交互に直列されたシリアルリンク型と関節とリンクの組合せが並列となったパラレルリンク型などがある。
本実施形態では、ロボットアーム101,102は、回転関節を有するシリアルリンク型のロボットアームであり、関節はモータ及び駆動回路等を有する駆動装置により駆動されるよう構成されている。また、ロボットアーム101は、複数(本実施形態では2つ)の関節(自由度)Ja1,Ja2を備えた2軸のロボットアームである。ロボットアーム102は、複数(本実施形態では2つ)の関節(自由度)Jb1,Jb2を備えた2軸のロボットアームである。
なお、ロボットアーム101及びロボットアーム102は、一般的にはロボットアーム自体が動作するような動作体として広く観念されるものであればよく、特に限定して解釈されるものではない。例えば、ロボットアーム101,102は、2軸のロボットアームとしたが、6軸多関節ロボットアームであってもよい。
操作装置300は、作業者が操作するものであり、ロボットアーム101,102の動作を指定したり、制御装置200に各ロボットアーム101,102に対する教示点を教示したりするのに用いる。
制御装置200は、各ロボットアーム101,102の軌道のデータに基づき、各ロボットアーム101,102の動作を制御するものである。更に、本実施形態では、制御装置200は、軌道生成装置でもあり、軌道生成方法により、ロボットアームA,B同士が衝突(干渉)しないように各ロボットアーム101,102の軌道を生成する。即ち、制御装置200は、ロボットアーム101に対応する仮想的なロボットアームA、ロボットアーム102に対応する仮想的なロボットアームBをそれぞれ定義し、各ロボットアームA,Bの軌道を演算により生成するシミュレータとしての機能を有する。各ロボットアームA,Bは、コンピュータで定義された仮想空間内に配置され、各ロボットアーム101,102の形状データ(CADデータ)等に基づいて定義された仮想的なロボットアームである。
ここで、ロボットアームAの自由度を表すパラメータを関節角度として、ロボットアームAの各関節(軸)Ja1,Ja2の関節角度をそれぞれθa1,θa2とする。ロボットアームAのコンフィグレーション(各軸の関節角度)は、(θa1,θa2)で表すことができる。同様に、ロボットアームBの自由度を表すパラメータを関節角度として、ロボットアームBの各関節(軸)Jb1,Jb2の関節角度をそれぞれθb1,θb2とする。ロボットアームBのコンフィグレーションは、(θb1,θb2)で表すことができる。
本実施形態では、制御装置200は、仮想の各ロボットアームA,Bについて、オフラインにより、教示点間を移動する軌道を生成し、生成した軌道に基づいて、実際の各ロボットアーム101,102の動作を制御する。動作開始点となる教示点が開始点、動作終了点となる教示点が目標点である。教示点は、関節空間(コンフィグレーション空間、いわゆるCスペース)又はタスク空間で表される。
関節空間では、教示点は、ロボットアームの関節の角度で表されるパラメータで表され、関節の数だけパラメータを有している。関節空間とは、ロボットアームA,Bがとり得る全てのコンフィグレーションのパラメータの組が構成する空間である。また、タスク空間では、教示点は、ロボットアームの基端を原点とする座標系を基準とする、ロボットアームの先端の3次元的な位置及び姿勢の6つのパラメータで表される。
本実施形態では、教示点は、関節空間で表されているものとする。ロボットアームAに対する開始点は、2軸の関節角度(θas1,θas2)で表され、ロボットアームAに対する目標点は、2軸の関節角度(θag1,θag2)で表される。一方、ロボットアームBに対する開始点は、2軸の関節角度(θbs1,θbs2)で表され、ロボットアームBに対する目標点は、2軸の関節角度(θbg1,θbg2)で表される。
このように、ロボットアームA,Bの自由度を表すパラメータ(例えば、関節角度や伸縮長さ)を座標軸の値とした場合、ロボットアームA,Bのコンフィグレーションは関節空間上の点として表現することができる。
図2は、本発明の実施形態に係るロボット装置100の構成を示すブロック図である。図2に示すように、制御装置200は、コンピュータで構成され、演算部(制御部)としてのCPU(Central Processing Unit)201を備えている。また、制御装置200は、記憶部として、ROM(Read Only Memory)202、RAM(Random Access Memory)203、HDD(Hard Disk Drive)204を備えている。また、制御装置200は、記録ディスクドライブ205及び各種のインタフェース211〜215を備えている。
CPU201には、ROM202、ROM203、HDD204、記録ディスクドライブ205及び各種のインタフェース211〜215が、バス216を介して接続されている。ROM202には、BIOS等の基本プログラムが格納されている。RAM203は、CPU201の演算処理結果等、各種データを一時的に記憶する記憶装置である。
HDD204は、CPU201の演算処理結果や外部から取得した各種データ等を記憶する記憶装置であると共に、CPU201に、後述する演算処理の各工程を実行させるためのプログラムを記録(格納)するものである。CPU201は、HDD204に記録(格納)されたプログラム230に基づいて軌道生成方法の各工程を実行する。
記録ディスクドライブ205は、記録ディスク240に記録された各種データやプログラム等を読み出すことができる。ロボットアーム101,ロボットアーム102,操作装置300,表示装置400,外部記憶装置500はインタフェース211〜215にそれぞれ接続されている。
操作装置300は、作業者の入力操作により、ロボットアーム101,102を教示する教示点を指定する。教示点のデータは、インタフェース212及びバス216を通じてCPU201又はRAM203、HDD204に出力される。CPU201は、操作装置300から、又はRAM203若しくはHDD204から教示点のデータの入力を受ける。
表示装置400は、CPU201の制御の下、画像を表示するディスプレイである。表示装置400は、CPU201の制御の下、例えばロボットアームA,Bやその作業空間(仮想空間)を3D(3次元)グラフィックスで表示する。これにより、作業者は、生成された動作経路を目視により確認することができる。外部記憶装置500は、書き換え可能な不揮発性メモリや外付けHDD等である。
CPU201は、各ロボットアーム101,102に対する教示点のデータに基づき、各ロボットアーム101,102の軌道を生成する。そして、CPU201は、各ロボットアーム101,102の各関節のモータに対する駆動指令を所定時間間隔(例えば1[ms])でバス216及びインタフェース211,212を介して不図示のモータ駆動回路に出力する。各関節のモータ駆動回路がモータを駆動することにより、各ロボットアーム101,102が動作する。
プログラム230は、衝突チェックプログラム231と、キネマティクス計算プログラム232と、経路生成プログラム233と、経路短縮プログラム234と、軌道生成プログラム235と、衝突回避終了点探索プログラム236と、を有している。
衝突チェックプログラム231は、物体同士が衝突するかどうかをCPU201に判断させるプログラムである。例えば、ロボットアームA,Bと障害物ObのCADデータをポリゴン(例えば三角形等の多角形)の集合とする。衝突チェックプログラム231に基づき動作するCPU201は、対象となるロボットアームA,Bのポリゴンの集合と障害物Obのポリゴンの集合とが幾何学的に接触するか否かを判断する。
なお、衝突チェックは、ポリゴンではなく、ロボットアームA,Bと障害物Obを点や線ないし面の集合として表して、このような点と面との衝突チェック、又は線と面との衝突チェックを行ってもよい。さらに、関節空間上における衝突チェックに限定されるものではなく、実空間内で点や線ないしポリゴンを利用した衝突チェックを採用することもできる。
キネマティクス計算プログラム232は、ロボットアームA,Bのコンフィグレーションから、ロボットアームA,Bのタスク空間での位置及び姿勢を求める順キネマティクスをCPU201に計算させるプログラムである。更に、キネマティクス計算プログラム232は、ロボットアームA,Bの手先位置(先端)から、ロボットアームA,Bのコンフィグレーションを計算する逆キネマティクスをCPU201に計算させるプログラムである。
順キネマティクス計算は、例えば、図1におけるロボットアームAが、あるコンフィグレーション(θa1,θa2)で、ロボットアームB及び障害物Obに衝突するか否かを判断する際に行う。つまり、衝突するか否かの判断は、タスク空間上のロボットアームAの位置及び姿勢で行う。したがって、CPU201は、衝突チェックプログラム231を実行することにより、ロボットアームAが、あるコンフィグレーション(θa1,θa2)でロボットアームB及び障害物Obに衝突するか否かを判断できる。
経路生成プログラム233は、関節空間上において、障害物Obを避けて開始点と目標点とを接続する各ロボットアームA,Bの経路をCPU201に生成させるプログラムである。経路とは、ロボットアームA,Bのコンフィグレーションが時間の経過とともに変化するときの、関節空間におけるロボットアームのコンフィグレーションの軌跡である。なお、この経路には、単にどのルートで通過するか(どの関節角度となるか)が規定されており、通過時刻は規定されていない。
経路生成プログラム233は、あるコンフィグレーションでロボットアームA,Bが衝突しているか否かをチェックするため、衝突チェックプログラム231と、キネマティクス計算プログラム232とを併せて用いる。経路生成方法には、PRM(Probabilistic RoadMap Method)、RRT(Rapidly-exploring Random Tree)といった方法が、計算時間と探索能力の観点から好ましい。なお、経路生成方法は、PRMやRMTに限定するものではなく、ポテンシャル法、可視グラフ法、セル分割法、ボロノイ図法などの他の方法も適用できる。
いずれの経路生成方法であっても、CPU201は、ロボットアームA,B同士の衝突及びロボットアームA,Bと障害物Obとの衝突の回避を考慮に入れた経路を生成するために、まず、ロボットアームA,Bを1つのロボットアームCとみなす。そして、CPU201は、4次元関節空間で、開始点(θas1,θas2,θbs1,θbs2)から目標点(θag1,θag2,θbg1,θbg2)へと障害物を回避する経路探索を行い、経路を算出する。
経路生成プログラム233により生成した経路は、回り道をしていたり尖っていたりするため無駄が多く、経路修正を行う必要がある。経路短縮プログラム234は、経路生成プログラム233で生成した経路の短縮化をCPU201に行わせるプログラムである。CPU201がプログラム234を実行する際、あるコンフィグレーション(θa1,θa2,θb1,θb2)でロボットアームが衝突しているかをチェックするため、衝突チェックプログラム231と、キネマティクス計算プログラム232を併せて用いる。
経路短縮化手法としては、例えば、経路生成プログラム233で生成した、関節空間上の経路に対し補間点を新たに追加する。そして、任意の2点をつなぐ直線に障害物Obとの衝突がない場合は、2点の間にある経路の代わりに新たにその直線を経路として置き換えるという作業を、繰り返し行い短縮化をする手法がある。
なお、経路短縮方法はこれに限定されるものではなく、経路の先端から衝突せずに接続可能な点を探索していき経路を短縮化する、貪欲アルゴリズムを用いてもよい。また、関節空間上の経路をゴムモデルと仮定し、経路が縮む力を発生させると同時に、障害物Obからの効力も定義することにより、衝突回避をしつつ経路を短縮化する手法を用いてもよい。また、B−Spline曲線により経路を平滑化する手法を用いてもよい。
軌道生成プログラム235は、経路生成プログラム233により算出された経路に対し、ロボットアームA,Bのコンフィグレーションの最適な変化速度を計算し、軌道をCPU201に生成させるプログラムである。ここで、軌道とは、ロボットアームA,Bのコンフィグレーション(θa1,θa2),(θb1,θb2)の時間変化として変化速度を時間の関数として扱い表したものである。つまり、軌道は、経路を辿る各ロボットアームA,Bの各関節の関節角度の時間変化を表したものである。
この軌道生成プログラム235は、双腕(2つ)のロボットアームA,Bを同期させた軌道を生成することができるプログラムである。ここでいう双腕ロボットアームA,Bの同期とは、ロボットアームAのコンフィグレーションがPaj(θaj1,θaj2)の時、ロボットアームBをそれに対応するコンフィグレーションPbj(θbj1,θbj2)を指定して連動させることである。
また、軌道生成プログラム235は、双腕ロボットアームA,Bを同期させている途中で、ロボットアームA,B同士の同期をやめ、ロボットアームA,B単独で最適な動作をさせる軌道を生成することもできる。
衝突回避終了点探索プログラム236は、ロボットアームA,Bを併せて1つのロボットアームCとみなし算出した経路に対し、衝突回避終了点(以下、単に「終了点」という)をCPU201に探索させるプログラムである。
図3は、制御装置200のCPU201が実行する軌道生成方法の各工程を示すフローチャートである。CPU201は、プログラム230(プログラム231〜236)を実行することで、以下に説明する各工程を実行する。
まず、CPU201は、ロボットアームA,Bが作業を行う作業空間(仮想空間)でのロボットアームA,B及び障害物Obの位置及び形状情報を読み込む(S101)。ロボットアームA,B及び障害物Obは、設計情報などであり、例えば3次元CADのデータ、若しくはカメラの映像や各種センサによる計測等で収集したデータを用いて、又は手動で設定する。
図4は、関節空間における各ロボットアームA,Bの経路を示す説明図であり、図4(a)はロボットアームAの経路、図4(b)はロボットアームBの経路を示している。
CPU201は、ロボットアームAの開始点Pas(θas1,θas2)、及びロボットアームBの開始点Pbs(θbs1,θbs2)を決定する(S102)。例えば、CPU201は、ロボットアームA,Bの開始点を、手先の位置及び姿勢を入力として、キネマティクス計算プログラム232により逆キネマティクスを解くことによって決定する。つまり、取得した開始点Pas,Pbsのパラメータがタスク空間で定義されている場合には、関節空間に変換する必要があり、CPU201は、開始点Pas,Pbsのパラメータをタスク空間から関節空間に変換する演算を行う。なお、CPU201が取得した開始点Pas,Pbsのパラメータが関節空間である場合には、変換作業は省略可能である。
また、CPU201は、ロボットアームAの目標点Pag(θag1,θag2)、及びロボットアームBの目標点Pbg(θbg1,θbg2)を決定する(S103)。例えば、CPU201は、ロボットアームA,Bの目標点を、手先の位置及び姿勢を入力として、キネマティクス計算プログラム232により逆キネマティクスを解くことによって決定する。つまり、取得した目標点Pag,Pbgのパラメータがタスク空間で定義されている場合には、関節空間に変換する必要があり、CPU201は、目標点Pag,Pbgのパラメータをタスク空間から関節空間に変換する演算を行う。なお、CPU201が取得した目標点Pag,Pbgのパラメータが関節空間である場合には、変換作業は省略可能である。
次に、CPU201は、開始点Pas,Pbs及び目標点Pag,Pbgで、ロボットアームA及びロボットアームBがそれぞれ障害物Obに衝突していないか否か、ロボットアームA,B同士が衝突していないか否かを判断する(S104)。
CPU201は、開始点Pas,Pbs又は目標点Pag,PbgでいずれかのロボットアームA,Bが障害物Obに衝突する場合、又はロボットアーム同士が衝突する場合(S104:No)は、エラーコードを表示装置400に出力し、処理を終了する。表示装置400は、エラーコードに従った表示画像を表示する。これにより、作業者は、入力操作した開始点Pas,Pbs又は目標点Pag,Pbgの変更が必要なことを知ることができ、教示点の変更操作をすることができる。
次に、CPU201は、衝突していないと判断した場合(S104:Yes)、ロボットアームA及びロボットアームBを、計4個の関節を持つ1つのロボットアームCとみなす。そして、CPU201は、ロボットアームCについて、新たに開始点Pcs(θas1,θas2,θbs1,θbs2)及び目標点Pcg(θag1,θag2,θbg1,θbg2)を定義する。CPU201は、経路生成プログラム233を用い、4次元の関節空間で、開始点Pcsと目標点Pcgを結ぶように、作業空間(仮想空間)における障害物Ob及びロボットアームA,B同士の衝突回避を考慮した経路を生成する(S105:経路生成工程)。
次に、CPU201は、経路生成プログラム233により、ロボットアームCが目標点Pcgに到達する経路を生成したか否かを判断する(S106)。CPU201は、ロボットアームCが経路生成プログラム233により目標点Pcgに到達できないと判断した場合(S106:No)は、エラーコードを表示装置400に出力し、処理を終了する。表示装置400は、エラーコードに従った表示画像を表示する。これにより、作業者は、ロボットアームC(即ちロボットアームA,B)が目標点Pcg(Pag,Pbg)に到達できないことを目視により確認することができる。よって、開始点Pas,Pbs又は目標点Pag,Pbgの変更が必要なことを知ることができ、教示点の変更操作をすることができる。
次に、CPU201は、作成した経路Hで目標点Pcgに到達できたと判断した場合(S106:Yes)、作成した経路Hに対し、経路短縮プログラム234を用いて短縮処理を行う(S107)。
次に、CPU201は、経路Hを関節空間上でいくつかに分割(例えば等分割)することで複数の補間点Pc0,Pc1,Pc2,Pc3,…,PcNを追加する。その際、開始点Pcsから目標点Pcgに向かって補間点Pc0,Pc1,Pc2,Pc3,…,PcNの順に設定する(S108)。即ち、CPU201は、ロボットアームAの経路H上の複数の補間点Pa0,Pa1,…PaNを求めると共に、ロボットアームBの経路H上の複数の補間点Pb0,Pb1,…PbNを求めたのと同じである。なお、補間点Pcjは、補間点Paj及び補間点Pbj(j=0,…,N)からなる。
次に、CPU201は、ロボットアームA及びロボットアームBがそれぞれの終了点の候補となる関節空間上のコンフィグレーションを、終了点候補(中間点)Pciとし、i=N−1と設定し、初期化を行う(S109)。ただし、iは正の整数である変数とする。即ち、CPU201は、ロボットアームA,Bを1つのロボットアームCとみなして、ロボットアームCの経路H上に終了点候補(中間点)Pciを設定する(中間点設定工程)。これは、ロボットアームAの経路H上に終了点候補(中間点)Paiを、ロボットアームBの経路H上に終了点候補(中間点)Pbiを、それぞれ設定したのと同じである。
次に、CPU201は、経路H上の任意の点Pcj(θaj1,θaj2,θjb1,θjb2)(jは0からNまでの整数)を、Paj(θaj1,θaj2)で構成される経路Hと、Pbj(θbj1,θbj2)で構成される経路Hに分割する。図4に、それぞれ経路H,Hを示す。CPU201は、軌道生成プログラム235を用い、開始点Pcsから終了点候補PciまでロボットアームA,Bで経路Hに沿って同期をし、終了点候補PciからはロボットアームA,Bで同期をせずに仮の軌道を生成する(S110:仮軌道生成工程)。同期をしない区間では、ロボットアームAは経路Hに沿って終了点候補Paiから目標点Pagまで、ロボットアームBは経路Hに沿って終了点候補Pbiから目標点Pbgまでの仮の軌道を生成する。終了点候補Paiは(θai1,θai2)、終了点候補Paiは(θai1,θai2)からなる。ここで、「仮の軌道」と称したのは、この段階では設定する軌道が決定していないためであり、設定する軌道は、後の工程で複数の仮の軌道の中から決定される。
仮の軌道は、開始点Pcsと終了点候補Pciとの間の同期をする区間(第1区間)と、終了点候補Pciと目標点Pcgとの間の同期をしない区間(第2区間)との境界において、各ロボットアームA,Bが停止をせずに滑らかに動作するよう生成する。生成したロボットアームAの仮の軌道をTai、ロボットアームBの仮の軌道をTbiとする。
即ち、CPU201は、開始点Pcsから終了点候補Pciまでの第1区間では、ロボットアームA,Bが互いに衝突を回避しながらロボットアームA,Bで同期して動作するよう、ロボットアームA,Bの各関節の関節角度の時間変化を演算する。また、CPU201は、終了点候補Pai,Pbiから目標点Pag,Pbgまでの第2区間では、ロボットアームA,Bで独立して動作するよう、ロボットアームA,Bの各関節の関節角度θ(t)=(θaj1(t),θaj2(t))、θ(t)=(θbj1(t),θbj2(t))を演算する。tは時刻である。以下では、この量を関節角度の時間変化、又は、関節角度の推移と呼ぶこともある。CPU201は、これら演算結果に基づき、ロボットアームA,Bの仮の軌道Tai,Tbiを生成する。このように生成された仮の軌道Tai,Tbiは、開始点Pcsから目標点Pcgまで同期させて生成した軌道よりも速く目標点Pag,Pbgに到達する。
本実施形態では、CPU201は、第2区間では、各ロボットアームA,Bが目標点Pag,Pbgに最短時間で到達するように各ロボットアームA,Bの関節の角度変化を演算することで、軌道Tai,Tbiを生成している。これにより、各ロボットアームA,Bは、より速く目標点Pag,Pbgに到達する。
次に、CPU201は、ステップS110で生成した軌道Tai,Tbiを記憶装置であるHDD204に保存する(S111)。
次に、CPU201は、ステップS110で算出したロボットアームAの仮の軌道Tai及びロボットアームBの仮の軌道Tbiにおいて、ロボットアームAとロボットアームBとが衝突(干渉)するか否かを判断する(S112)。CPU201は、衝突すると判断した場合(S112:Yes)は、ステップS113の処理に移行し、衝突しないと判断した場合(S112:No)は、ステップS114の処理に移行する。
CPU201は、ステップS114では、ループ変数iが0であるか否かを判断する。CPU201は、ループ変数iが0ではないと判断した場合(S114:No)、ループ変数iを1減らし(S115)、ステップS110の処理に戻る。
即ち、CPU201は、ステップS109,S115の処理で、ロボットアームCの経路上に複数(少なくとも2つ)の終了点候補Pc(N−1),Pc(N−2),…を設定することとなる。
そして、CPU201は、ステップS115を経てステップS110の処理へ帰還させている。これにより、CPU201は、複数の終了点候補Pc(N−1),Pc(N−2),…のそれぞれに対し、ロボットアームAの仮の軌道Ta(N−1),Ta(N−2),…及びロボットアームBの仮の軌道Tb(N−1),Tb(N−2)…を生成する。
CPU201は、ステップS113では、仮の軌道Ta(i+1),Tb(i+1)を各ロボットアームA,B(101,102)の軌道に設定する(軌道設定工程)。また、CPU201は、ステップS116では、仮の軌道Ta0,Tb0を各ロボットアームA,B(101,102)の軌道に設定する(軌道設定工程)。即ちCPU201は、ロボットアームAの仮の軌道Ta(N−1),Ta(N−2),…、ロボットアームBの仮の軌道Tb(N−1),Tb(N−2),…のうち、ロボットアームA,Bが互いに衝突しない仮の軌道をロボットアームA,Bの軌道に設定する。
詳述すると、ロボットアームA,Bが互いに衝突しない仮の軌道が複数組ある場合には、これら仮の軌道のうち1組の仮の軌道を本軌道に設定し、ロボットアームA,Bが互いに衝突しない仮の軌道が1組の場合には、当該仮の軌道を本軌道に設定する。これにより、各ロボットアームA,Bの開始点Pas,Pbsから目標点Pag,Pbgまでの軌道の動作時間を短縮化することができる。
特に、本実施形態では、ロボットアームA,Bが互いに衝突しない仮の軌道が複数組ある場合には、複数組の仮の軌道のうち、開始点Pas,Pbsに最も近い終了点候補に対応する仮の軌道を、ロボットアームA,Bの軌道に設定している。これにより、各ロボットアームA,Bの開始点Pas,Pbsから目標点Pag,Pbgまでの軌道の動作時間を更に短縮化することができる。
ここで、CPU201は、ステップS115にてループ変数iを1減じることにより、ロボットアームCの経路H上で開始点Pcsに近づくように順次、終了点候補Pciを設定している。具体的には、CPU201は、開始点Pcsに近づくように、複数の補間点Pc0,Pc1,Pc2,Pc3,…の中から終了点候補Pciを設定している。
そして、CPU201は、ステップS112では、ステップS110にて順次設定される終了点候補Pciに対応して順次生成される仮の軌道Tai,TbiでロボットアームA,Bが互いに衝突するか否かを判断している。ステップS111にて記録され、衝突しないと判断された仮の軌道Tai,Tbiは、後の本軌道となり得る候補である。
CPU201は、ステップS112で衝突すると判断した場合は、軌道候補のうち開始点Pcsに最も近い終了点候補Pc(i+1)に対応する軌道候補Ta(i+1),Tb(i+1)を、各ロボットアームA,Bの本軌道に設定する。このときの終了点候補Pa(i+1),Pb(i+1)を終了点Pae,Pbeとする。
このように、経路H,H上を開始点Pas,Pbsに向かって終了点Pae,Pbeを探索することで、簡単に終了点Pae,Pbeを探索することができ、CPU201における演算負荷が減少する。
なお、本実施形態では、軌道計算において、同期させる第1区間における計算を簡略化するため、ロボットアームA,Bを1つのロボットアームCとみなしていたが、これに限定するものではない。ロボットアームAとロボットアームBとの同期をとることができれば、1つのロボットアームCとみなさなくてもよい。
以下、上記ステップS101〜S116により生成された各ロボットアームA,Bの軌道について説明する。
図4(a)に示すように、ロボットアームAは、開始点Pasから終了点Paeまで、ロボットアームBと同期し、終了点Paeから同期をやめ、目標点PagまではロボットアームA単独で、移動時間を短縮した最適な動作をする。図4(b)に示すように、ロボットアームBは、開始点Pbsから終了点Pbeまで、ロボットアームAと同期し、終了点Pbeから同期をやめ、目標点PbgまではロボットアームB単独で、移動時間を短縮した最適な動作をする。
図5は、本実施形態の軌道生成方法で生成した軌道Lと、比較例として開始点から目標点まで各ロボットアームを同期させた方法で生成した軌道Lとを、2次元関節空間上に射影して表現した概念図である。図5では、ロボットアームAのコンフィグレーションθ(θa1,θa2)をひとつのベクトルとして横軸に、ロボットアームBのコンフィグレーションθ(θb1,θb2)をひとつのベクトルとして縦軸にとっている。
図5に示すように、ロボットアームA,Bを開始点から目標点まで同期させた比較例の軌道Lの場合は、障害物Obをよけて、開始点から目標点まで到達するのに、関節空間での距離は最短にはなる。なお、ロボットアームの到達範囲内に配置された障害物以外にも、ロボットアーム同士も特定のコンフィグレーションを取る場合、障害物Obになり得る。つまり図5中の障害物Obは、配置された障害物およびロボットアームの衝突(干渉)を共に含んだ“障害物”として描かれている。しかし、ロボットアームBが、ロボットアームAの動きに合わせて遅くなるため、ロボットアームB単体で考えた場合、動作時間が最短にはならない。
一方、本実施形態の軌道生成方法で生成した軌道Lは、関節空間での距離は軌道Lより長くなるが、ロボットアームBはロボットアームAより先に目標点に到達するため、ロボットアームBの動作時間は速くなる。これは、比較例の軌道生成方法が、時間軸を考慮に入れていないのに対し、本実施形態の軌道生成方法では時間軸を考慮に入れて軌道を生成しているためである。
このときの各ロボットアームA,Bの動作について説明する。図6は、本発明の実施形態に係る軌道生成方法で生成した軌道を辿って動作するロボットアームの説明図である。図7は、比較例の軌道生成方法で生成した軌道を辿って動作するロボットアームの説明図である。図6(a)〜図6(g)は、各動作タイミングでの各ロボットアームA,Bの姿勢を示し、図7(a)〜図7(g)は、各図6(a)〜図6(g)の動作タイミングと同じ動作タイミングでの各ロボットアームA,Bの姿勢を示している。
図7(a)〜図7(g)に示すように、比較例の軌道では、開始点から目標点まで終始ロボットアームA,Bを同期させているため、各ロボットアームA,Bは各目標点Pag,Pbgに同時に到着する。一方、図6(a)〜図6(g)に示すように、本実施形態の軌道では、終了点Pae,Pbe以降は、ロボットアームAとロボットアームBとがそれぞれ単独で目標点Pag,Pbgにたどり着くように最適化されている。そのため、図6(e)では、移動距離の短いロボットアームAがロボットアームBよりも先に目標点Pagに到着する。
ここで、終了点Pce(Pae,Pbe)について説明する。図6では、ロボットアームAとロボットアームBとを併せて1つのロボットアームCとみなし、経路生成プログラム233により経路を生成した場合のロボットアームA,Bの動作の移り変わりを示す。また、ロボットアームCの関節空間(4次元)における経路をHとする。また、ロボットアームCの関節空間(4次元)における経路Hの任意の中間点(途中点)を終了点候補Pciとする。
まず、図6(a)における開始点Pcsから、終了点候補PciまでロボットアームAとロボットアームBを同期させて軌道を生成する。次に、終了点候補Pciからは、ロボットアームAは、ロボットアームAの関節空間(2次元)の目標点PagまでロボットアームBと同期をせずに軌道を生成する。同様に、ロボットアームBは終了点候補Pciからは、ロボットアームBの関節空間(2次元)の目標点PbgまでロボットアームAと同期をせずに軌道を生成する。このとき、ロボットアームAとロボットアームBとが衝突しないで動作ができる、最も開始点Pas,Pbsに近い終了点候補Pciを終了点Pceとする。このときのロボットアームAのコンフィグレーションを終了点Pae、ロボットアームBのコンフィグレーションを終了点Pbeとする。
図6(c)に終了点Pce(Pae,Pbe)におけるロボットアームA及びロボットアームBの姿勢を示す。例えば、仮に図6(b)の姿勢から、同期をせずに、単腕ロボットアームA,Bでそれぞれ軌道を生成すると、ロボットアームAとロボットアームBとの衝突回避の姿勢の組み合わせがずれるため、衝突が発生すると考えられる。
これに対し本実施形態では、終了点Pceである図6(c)では、ロボットアームAとロボットアームBが衝突回避を終えていると考えられ、その後、同期をせずにロボットアームA,Bで単独で軌道を生成し、最短で目標点に到達することができる。
制御装置200は、このようにして生成した仮の軌道のうち、複数の仮の軌道のうち、複数のロボットアームA,Bが互いに衝突しない仮の軌道を、実際の各ロボットアーム101,102の軌道に設定する。そして、制御装置200は、設定した軌道に従って、実際のロボットアーム101,102を動作させる。従って、終了点Pae,Pbe以降は各ロボットアーム101,102が非同期で動作するため、各ロボットアーム101,102の開始点Pas,Pbsから目標点Pag,Pbgまでの軌道の動作時間を短縮化することができる。
また、本実施形態では、双腕ロボットアームA,Bにおいて障害物Obの回避とロボットアームA,B同士の衝突回避を考慮に入れた軌道を生成するため、障害物がある場合でも双腕ロボットアーム101,102全体の動作時間を短縮化できる。
また、本実施形態によれば、ロボットアーム101,102が互いのロボットアームを避ける際にのみ動作同期をし、ロボットアーム101,102同士の衝突回避の必要がない第2区間では、単腕ロボットアームとして動作速度が最大化する。このため、衝突回避の必要がない第2区間では、ロボットアーム101,102単独で動作が可能であり、動作の自由度が高くなる。
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。
上記実施形態では、双腕ロボットアーム、すなわち2つのロボットアームの場合について説明したが、2つに限定するものではなく、2つ以上のロボットアームについて本発明は適用可能である。
また、上記実施形態では、終了点Pae,Pbeを探索する際、経路の後方から順に探索を行う場合について説明したが、これに限定されるものではなく、2分法などの探索方法を用いてもよい。
また、上記実施形態では、終了点Pae,Pbeは、ロボットアームA,B同士が干渉しない軌道候補の中の終了点候補のうち、開始点Pas,Pbsに最も近い終了点候補とし、この場合が動作時間の短縮上最も好ましいが、これに限定するものではない。つまり、複数のロボットアームの軌道候補が複数組ある場合は、複数組の軌道候補の中から1組の軌道候補を複数のロボットアームの軌道に設定すればよい。
また、上記実施形態では、ロボットアームを制御する制御装置が、軌道生成方法の各工程にしたがって各ロボットアームの軌道を生成する場合について説明したが、これに限定するものではない。制御装置とは別に軌道生成装置(コンピュータ)に軌道生成方法の各工程にしたがって各ロボットアームの軌道を生成させてもよい。この場合、制御装置は、軌道生成装置から軌道のデータを取得して、各ロボットアームの動作を制御すればよい。
また、上記実施形態の各処理動作は具体的にはCPU201により実行されるものである。従って上述した機能を実現するプログラムを記録した記録媒体を制御装置200に供給し、制御装置200のコンピュータ(CPUやMPU)が記録媒体に格納されたプログラムを読み出し実行することによって達成されるようにしてもよい。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、プログラム自体及びそのプログラムを記録した記録媒体は本発明を構成することになる。
また、上記実施形態では、コンピュータ読み取り可能な記録媒体がHDD204であり、HDD204にプログラム230が格納される場合について説明したが、これに限定するものではない。プログラムは、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラムを供給するための記録媒体としては、図2に示すROM202、記録ディスク240、外部記憶装置500等を用いてもよい。具体例を挙げて説明すると、記録媒体として、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、書き換え可能な不揮発性のメモリ(例えばUSBメモリ)、ROM等を用いることができる。
また、上記実施形態におけるプログラムを、ネットワークを介してダウンロードしてコンピュータにより実行するようにしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施形態の機能が実現されるだけに限定するものではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上記実施形態の機能が実現される場合も含まれる。
また、上記実施形態では、コンピュータがHDD等の記録媒体に記録されたプログラムを実行することにより、画像処理を行う場合について説明したが、これに限定するものではない。プログラムに基づいて動作する演算部の一部又は全部の機能をASICやFPGA等の専用LSIで構成してもよい。なお、ASICはApplication Specific Integrated Circuit、FPGAはField-Programmable Gate Arrayの頭字語である。
100…ロボット装置、101,102…ロボットアーム、200…制御装置、201…CPU(演算部)、230…プログラム

Claims (8)

  1. 多関節である複数のロボットアームの軌道を求める軌道生成方法であって、
    演算部が、前記各ロボットアームの開始点と目標点との間の経路を生成する経路生成工程と、
    前記演算部が、前記各ロボットアームの経路上に複数の中間点を設定する中間点設定工程と、
    前記演算部が、前記中間点設定工程で設定した前記複数の中間点のそれぞれに対し、前記開始点から前記中間点までの第1区間では、前記複数のロボットアームが互いに衝突を回避しながら前記各ロボットアームで同期して動作するよう、前記各ロボットアームの関節角度の推移を演算し、かつ前記中間点から前記目標点までの第2区間では、前記各ロボットアームで独立して動作するよう、前記各ロボットアームの関節角度の推移を演算して、前記各ロボットアームの複数の仮の軌道を生成する仮軌道生成工程と、
    前記演算部が、前記仮軌道生成工程にて生成した複数の仮の軌道のうち、前記複数のロボットアームが互いに衝突しない仮の軌道を、前記各ロボットアームの軌道に設定する軌道設定工程と、を備えたことを特徴とする軌道生成方法。
  2. 前記軌道設定工程では、前記演算部が、前記複数のロボットアームが互いに衝突しない仮の軌道が複数ある場合に、該複数の仮の軌道のうち、前記開始点に最も近い中間点に対応する仮の軌道を、前記各ロボットアームの軌道に設定することを特徴とする請求項1に記載の軌道生成方法。
  3. 前記中間点設定工程では、前記演算部が、前記各ロボットアームの経路上で前記開始点に近づくように順次、前記中間点を設定し、
    前記軌道設定工程では、前記演算部が、前記仮軌道生成工程にて順次設定される前記中間点に対応して順次生成される仮の軌道で前記複数のロボットアームが互いに衝突するか否かを判断し、衝突しないと判断した場合には、前記複数のロボットアームが互いに衝突しない仮の軌道を軌道候補とし、衝突すると判断した場合は、前記軌道候補のうち、前記開始点に最も近い中間点に対応する軌道候補を、前記各ロボットアームの軌道に設定することを特徴とする請求項2に記載の軌道生成方法。
  4. 前記中間点設定工程では、前記演算部が、前記各ロボットアームの経路上の複数の補間点を予め求めておき、前記中間点を前記複数の補間点の中から設定することを特徴とする請求項1乃至3のいずれか1項に記載の軌道生成方法。
  5. 前記仮軌道生成工程では、前記演算部が、前記第2区間では、前記各ロボットアームが前記目標点に最短時間で到達するように前記各ロボットアームの関節の角度変化を演算することを特徴とする請求項1乃至4のいずれか1項に記載の軌道生成方法。
  6. 多関節である複数のロボットアームと、
    請求項1乃至5のいずれか1項に記載の軌道生成方法により生成した軌道に基づき、前記複数のロボットアームの動作を制御する制御装置と、を備えたことを特徴とするロボット装置。
  7. コンピュータに請求項1乃至5のいずれか1項に記載の軌道生成方法の各工程を実行させるためのプログラム。
  8. 請求項7に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2014034932A 2014-02-26 2014-02-26 軌道生成方法、ロボット装置、プログラム及び記録媒体 Active JP6282140B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014034932A JP6282140B2 (ja) 2014-02-26 2014-02-26 軌道生成方法、ロボット装置、プログラム及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014034932A JP6282140B2 (ja) 2014-02-26 2014-02-26 軌道生成方法、ロボット装置、プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2015160253A true JP2015160253A (ja) 2015-09-07
JP6282140B2 JP6282140B2 (ja) 2018-02-21

Family

ID=54183713

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014034932A Active JP6282140B2 (ja) 2014-02-26 2014-02-26 軌道生成方法、ロボット装置、プログラム及び記録媒体

Country Status (1)

Country Link
JP (1) JP6282140B2 (ja)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3195990A1 (en) * 2016-01-25 2017-07-26 Canon Kabushiki Kaisha Robot trajectory generation method, robot trajectory generation apparatus, product fabrication method, recording medium, program, and robot system
JP2018144223A (ja) * 2017-03-06 2018-09-20 キヤノン株式会社 複数のロボットに動作を教示する教示方法、およびそれに用いる教示装置
JP2019000918A (ja) * 2017-06-12 2019-01-10 日立Geニュークリア・エナジー株式会社 作業用ロボットのアーム姿勢制御システムおよび方法
CN109521878A (zh) * 2018-11-08 2019-03-26 歌尔科技有限公司 交互方法、装置和计算机可读存储介质
JP2020011328A (ja) * 2018-07-17 2020-01-23 ファナック株式会社 自動経路生成装置
CN110914020A (zh) * 2017-08-07 2020-03-24 罗伯特·博世有限公司 具有机器人的操纵装置以及方法和计算机程序
WO2020158320A1 (ja) * 2019-01-31 2020-08-06 オムロン株式会社 制御システム、及び、制御システムの制御方法
JP2020179466A (ja) * 2019-04-25 2020-11-05 株式会社日立製作所 軌道計画装置、軌道計画方法及びプログラム
US10919153B2 (en) 2017-03-06 2021-02-16 Canon Kabushiki Kaisha Teaching method for teaching operations to a plurality of robots and teaching system used therefor
WO2021049028A1 (ja) * 2019-09-13 2021-03-18 三菱電機株式会社 数値制御装置、および機械学習装置
CN112549025A (zh) * 2020-11-27 2021-03-26 北京工业大学 一种基于融合人体运动学约束的协调图双臂协作控制方法
JP2021094644A (ja) * 2019-12-17 2021-06-24 川崎重工業株式会社 オフラインプログラミング装置及びオフラインプログラミング方法
CN113710432A (zh) * 2019-04-16 2021-11-26 西门子股份公司 用于确定机器人的轨迹的方法
JPWO2022009333A1 (ja) * 2020-07-08 2022-01-13
DE102019118202B4 (de) 2018-07-17 2022-11-03 Fanuc Corporation Robotersystem
WO2022256402A1 (en) * 2021-06-03 2022-12-08 Intrinsic Innovation Llc Workcell modeling using motion profile matching and swept profile matching
DE112020007185T5 (de) 2020-09-11 2023-04-20 Mitsubishi Electric Corporation Numerische Steuerung und Industriemaschinen-Steuerungssystem
CN117086919A (zh) * 2023-10-16 2023-11-21 武汉东湖学院 一种工业机器人避障检测装置
WO2024049444A1 (en) * 2022-09-02 2024-03-07 Intel Corporation Post-attack real-time trajectory recovery of collaborative robotic arms

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04305704A (ja) * 1991-04-03 1992-10-28 Toshiba Corp ロボット制御装置
JPH05119814A (ja) * 1991-05-20 1993-05-18 Brother Ind Ltd ロボツトアームの非干渉制御装置
JP2003200368A (ja) * 2001-10-25 2003-07-15 Yaskawa Electric Corp 複数ロボットの作業教示方法および作業教示装置
JP2006133863A (ja) * 2004-11-02 2006-05-25 Honda Motor Co Ltd ロボット制御装置
WO2008031700A1 (en) * 2006-09-14 2008-03-20 Abb Research Ltd. A method and a device for avoiding collisions between an industrial robot and an object
JP2013504447A (ja) * 2009-09-15 2013-02-07 ハリス コーポレイション 衝突回避スキームを実行するロボット装置及びそれに関連する方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04305704A (ja) * 1991-04-03 1992-10-28 Toshiba Corp ロボット制御装置
JPH05119814A (ja) * 1991-05-20 1993-05-18 Brother Ind Ltd ロボツトアームの非干渉制御装置
JP2003200368A (ja) * 2001-10-25 2003-07-15 Yaskawa Electric Corp 複数ロボットの作業教示方法および作業教示装置
JP2006133863A (ja) * 2004-11-02 2006-05-25 Honda Motor Co Ltd ロボット制御装置
WO2008031700A1 (en) * 2006-09-14 2008-03-20 Abb Research Ltd. A method and a device for avoiding collisions between an industrial robot and an object
JP2013504447A (ja) * 2009-09-15 2013-02-07 ハリス コーポレイション 衝突回避スキームを実行するロボット装置及びそれに関連する方法

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10207406B2 (en) 2016-01-25 2019-02-19 Canon Kabushiki Kaisha Robot trajectory generation method, robot trajectory generation apparatus, product fabrication method, recording medium, program, and robot system
EP3195990A1 (en) * 2016-01-25 2017-07-26 Canon Kabushiki Kaisha Robot trajectory generation method, robot trajectory generation apparatus, product fabrication method, recording medium, program, and robot system
US10919153B2 (en) 2017-03-06 2021-02-16 Canon Kabushiki Kaisha Teaching method for teaching operations to a plurality of robots and teaching system used therefor
JP2018144223A (ja) * 2017-03-06 2018-09-20 キヤノン株式会社 複数のロボットに動作を教示する教示方法、およびそれに用いる教示装置
JP2019000918A (ja) * 2017-06-12 2019-01-10 日立Geニュークリア・エナジー株式会社 作業用ロボットのアーム姿勢制御システムおよび方法
CN110914020A (zh) * 2017-08-07 2020-03-24 罗伯特·博世有限公司 具有机器人的操纵装置以及方法和计算机程序
KR20200038468A (ko) * 2017-08-07 2020-04-13 로베르트 보쉬 게엠베하 로봇을 구비한 취급 장치, 방법 및 컴퓨터 프로그램
JP2020529931A (ja) * 2017-08-07 2020-10-15 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングRobert Bosch Gmbh ロボットを備えるハンドリング装置、方法及びコンピュータプログラム
KR102553391B1 (ko) * 2017-08-07 2023-07-11 로베르트 보쉬 게엠베하 로봇을 구비한 취급 장치, 방법 및 컴퓨터 프로그램
CN110914020B (zh) * 2017-08-07 2023-08-18 罗伯特·博世有限公司 具有机器人的操纵装置以及方法和计算机程序
JP7003220B2 (ja) 2017-08-07 2022-01-20 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング ロボットを備えるハンドリング装置、方法及びコンピュータプログラム
JP2020011328A (ja) * 2018-07-17 2020-01-23 ファナック株式会社 自動経路生成装置
DE102019118202B4 (de) 2018-07-17 2022-11-03 Fanuc Corporation Robotersystem
US11433537B2 (en) 2018-07-17 2022-09-06 Fanuc Corporation Automatic path generation device
CN109521878A (zh) * 2018-11-08 2019-03-26 歌尔科技有限公司 交互方法、装置和计算机可读存储介质
WO2020158320A1 (ja) * 2019-01-31 2020-08-06 オムロン株式会社 制御システム、及び、制御システムの制御方法
US11738451B2 (en) 2019-01-31 2023-08-29 Omron Corporation Control system and control method of control system
JP7143776B2 (ja) 2019-01-31 2022-09-29 オムロン株式会社 制御システム、及び、制御システムの制御方法
JP2020121384A (ja) * 2019-01-31 2020-08-13 オムロン株式会社 制御システム、及び、制御システムの制御方法
CN113710432A (zh) * 2019-04-16 2021-11-26 西门子股份公司 用于确定机器人的轨迹的方法
JP2020179466A (ja) * 2019-04-25 2020-11-05 株式会社日立製作所 軌道計画装置、軌道計画方法及びプログラム
JP7222803B2 (ja) 2019-04-25 2023-02-15 株式会社日立製作所 軌道計画装置、軌道計画方法及びプログラム
JP6914452B1 (ja) * 2019-09-13 2021-08-04 三菱電機株式会社 数値制御装置、および機械学習装置
WO2021049028A1 (ja) * 2019-09-13 2021-03-18 三菱電機株式会社 数値制御装置、および機械学習装置
JP7382217B2 (ja) 2019-12-17 2023-11-16 川崎重工業株式会社 オフラインプログラミング装置及びオフラインプログラミング方法
JP2021094644A (ja) * 2019-12-17 2021-06-24 川崎重工業株式会社 オフラインプログラミング装置及びオフラインプログラミング方法
JPWO2022009333A1 (ja) * 2020-07-08 2022-01-13
JP7313564B2 (ja) 2020-07-08 2023-07-24 三菱電機株式会社 ロボット制御装置、ロボット制御方法、およびロボット制御プログラム
WO2022009333A1 (ja) * 2020-07-08 2022-01-13 三菱電機株式会社 ロボット制御装置、ロボット制御方法、およびロボット制御プログラム
DE112020007185T5 (de) 2020-09-11 2023-04-20 Mitsubishi Electric Corporation Numerische Steuerung und Industriemaschinen-Steuerungssystem
DE112020007185B4 (de) 2020-09-11 2024-03-21 Mitsubishi Electric Corporation Numerische Steuerung und Industriemaschinen-Steuerungssystem
US11940772B2 (en) 2020-09-11 2024-03-26 Mitsubishi Electric Corporation Numerical controller and industrial machine control system
CN112549025B (zh) * 2020-11-27 2022-06-21 北京工业大学 一种基于融合人体运动学约束的协调图双臂协作控制方法
CN112549025A (zh) * 2020-11-27 2021-03-26 北京工业大学 一种基于融合人体运动学约束的协调图双臂协作控制方法
WO2022256402A1 (en) * 2021-06-03 2022-12-08 Intrinsic Innovation Llc Workcell modeling using motion profile matching and swept profile matching
WO2024049444A1 (en) * 2022-09-02 2024-03-07 Intel Corporation Post-attack real-time trajectory recovery of collaborative robotic arms
CN117086919A (zh) * 2023-10-16 2023-11-21 武汉东湖学院 一种工业机器人避障检测装置
CN117086919B (zh) * 2023-10-16 2023-12-15 武汉东湖学院 一种工业机器人避障检测装置

Also Published As

Publication number Publication date
JP6282140B2 (ja) 2018-02-21

Similar Documents

Publication Publication Date Title
JP6282140B2 (ja) 軌道生成方法、ロボット装置、プログラム及び記録媒体
CN110116405B (zh) 轨迹生成方法和轨迹生成装置
JP6576255B2 (ja) ロボット軌道生成方法、ロボット軌道生成装置、および製造方法
CN110198813B (zh) 机器人路径生成装置和机器人系统
Lu et al. Collision-free and smooth joint motion planning for six-axis industrial robots by redundancy optimization
CN109397271B (zh) 一种7自由度拟人机械臂及其控制方法和系统
JP7439206B2 (ja) 情報処理方法、情報処理装置、プログラム、記録媒体、生産システム、ロボットシステム、物品の製造方法
US9649765B2 (en) Reducing energy consumption of industrial robots by using new methods for motion path programming
US10919153B2 (en) Teaching method for teaching operations to a plurality of robots and teaching system used therefor
JP6567101B2 (ja) 教示方法、ロボットの動作方法、プログラム、記憶媒体、教示装置
JP4693643B2 (ja) ロボットの教示支援装置及びそのためのプログラム
CN102152308A (zh) 用于工业机器人的无碰撞轨迹规划的方法
Kabir et al. Generation of synchronized configuration space trajectories of multi-robot systems
JP6501470B2 (ja) 軌道生成方法、軌道生成装置、ロボット装置、プログラム及び記録媒体
CN110561419B (zh) 臂型线约束柔性机器人轨迹规划方法及装置
Gochev et al. Motion planning for robotic manipulators with independent wrist joints
JP2012157955A (ja) 移動制御装置及び移動制御方法、並びにコンピューター・プログラム
Li et al. Research on planning and optimization of trajectory for underwater vision welding robot
JP2020049554A (ja) 軌道生成方法、軌道生成装置、およびロボットシステム
Ramer et al. A robot motion planner for 6-DOF industrial robots based on the cell decomposition of the workspace
JP2021082222A (ja) 情報処理方法、ロボットシステム、物品の製造方法、および情報処理装置
CN113146637B (zh) 一种机器人笛卡尔空间的运动规划方法
Seyboldt et al. Sampling-based path planning to cartesian goal positions for a mobile manipulator exploiting kinematic redundancy
Wada et al. Dynamic collision avoidance method for co-worker robot using time augmented configuration-space
JP2011056624A (ja) 経路計画生成装置および該方法ならびにロボット制御装置およびロボットシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171221

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: 20171226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180123

R151 Written notification of patent or utility model registration

Ref document number: 6282140

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151