JP2013244560A - 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 - Google Patents
把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 Download PDFInfo
- Publication number
- JP2013244560A JP2013244560A JP2012119785A JP2012119785A JP2013244560A JP 2013244560 A JP2013244560 A JP 2013244560A JP 2012119785 A JP2012119785 A JP 2012119785A JP 2012119785 A JP2012119785 A JP 2012119785A JP 2013244560 A JP2013244560 A JP 2013244560A
- Authority
- JP
- Japan
- Prior art keywords
- reference point
- trajectory
- gripping mechanism
- gripping
- transportation
- 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.)
- Pending
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39536—Planning of hand motion, grasping
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
【課題】対象物5の運搬のために当該対象物5を把持する把持機構25を移動させる軌道を、効率的に生成可能とする技術の提供を目的とする。
【解決手段】そのTCP6に対して所定の位置関係を満たす対象物5を把持する把持機構25を用いて対象物5を運搬するために、把持機構25を移動させる軌道が生成される。運搬前の対象物5を把持機構25で把持する際のTCP6の位置に対象物5の運搬前基準点9が設定され、運搬後の対象物5を把持機構25で把持する際のTCP6の位置に対象物の運搬後基準点8が設定される。そして、運搬前基準点9から運搬後基準点8までTCP6が移動するように、把持機構25の軌道が演算により生成される。このような構成では、把持機構25の軌道生成のためには、対象物5の基準点9、8が設定されれば良く、把持機構25の動作を動画で確認する必要がない。
【選択図】図7
【解決手段】そのTCP6に対して所定の位置関係を満たす対象物5を把持する把持機構25を用いて対象物5を運搬するために、把持機構25を移動させる軌道が生成される。運搬前の対象物5を把持機構25で把持する際のTCP6の位置に対象物5の運搬前基準点9が設定され、運搬後の対象物5を把持機構25で把持する際のTCP6の位置に対象物の運搬後基準点8が設定される。そして、運搬前基準点9から運搬後基準点8までTCP6が移動するように、把持機構25の軌道が演算により生成される。このような構成では、把持機構25の軌道生成のためには、対象物5の基準点9、8が設定されれば良く、把持機構25の動作を動画で確認する必要がない。
【選択図】図7
Description
この発明は、把持機構を用いて対象物を運搬する技術に関し、特に対象物の運搬のために把持機構を移動させる軌道を生成する技術に関する。
従来、部品等の対象物を運搬するために、ロボットハンド等の把持機構が用いられる。例えば、複数の部品を組み付けて製品を製造する用途にロボットハンドを用いる場合では、組み付け前の部品を把持して組み付け位置まで運搬する動作を、ロボットハンドが繰り返し実行する。
また、特許文献1では、予め生成された軌道に沿ってロボットハンドを移動させることで、部品を運搬する技術が記載されている。特に同文献では、演算により求めた軌跡を部品が通過するように、ロボットハンドの動作が決定される。この際、ロボットハンドの動作の決定は、部品を把持するロボットハンドの動作を動画で確認しつつ実行される。
つまり、上記文献の技術は、把持機構(ロボットハンド)の軌道を決定するために、把持機構を仮想的に動かした様子を動画で確認させるものであった。しかしながら、このような動画での確認に要する手間が、把持機構の軌道生成の効率化を妨げる要因となる場合があった。
この発明は上記課題に鑑みなされたものであり、対象物の運搬のために当該対象物を把持する把持機構を移動させる軌道を、効率的に生成可能とする技術の提供を目的とする。
この発明にかかる把持機構の軌道生成装置は、上記目的を達成するために、その把持基準点に対して所定の位置関係を満たす対象物を把持する把持機構を用いて対象物を運搬するために把持機構を移動させる軌道を生成する、把持機構の軌道生成装置において、運搬前の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬前基準点が設定され、運搬後の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬後基準点が設定される設定入力部と、把持基準点が運搬前基準点から運搬後基準点まで移動するように、把持機構の軌道を演算により生成する軌道演算部とを備えることを特徴としている。
この発明にかかる把持機構の軌道生成方法は、上記目的を達成するために、その把持基準点に対して所定の位置関係を満たす対象物を把持する把持機構を用いて対象物を運搬するために把持機構を移動させる軌道を生成する、把持機構の軌道生成方法において、運搬前の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬前基準点が設定され、運搬後の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬後基準点が設定される工程と、把持基準点が運搬前基準点から運搬後基準点まで移動するように、把持機構の軌道を演算により生成する工程とを備えることを特徴としている。
この発明にかかる把持機構の軌道生成プログラムは、上記目的を達成するために、その把持基準点に対して所定の位置関係を満たす対象物を把持する把持機構を用いて対象物を運搬するために把持機構を移動させる軌道をコンピュータに生成させる、把持機構の軌道生成プログラムにおいて、運搬前の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬前基準点が設定され、運搬後の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬後基準点が設定される工程と、把持基準点が運搬前基準点から運搬後基準点まで移動するように、把持機構の軌道を演算により生成する工程とをコンピュータに実行させることを特徴としている。
この発明にかかる記録媒体は、上記の把持機構の軌道生成プログラムがコンピュータにより読み出し可能に記録されたことを特徴としている。
この発明にかかるロボットプログラム作成装置は、上記目的を達成するために、その把持基準点に対して所定の位置関係を満たす対象物を把持するハンドを用いて対象物を運搬するロボットの制御をコンピュータに実行させるロボットプログラムを作成するロボットプログラム作成装置において、運搬前の対象物をハンドで把持する際の把持基準点の位置に対象物の運搬前基準点が設定され、運搬後の対象物をハンドで把持する際の把持基準点の位置に対象物の運搬後基準点が設定される設定入力部と、把持基準点が運搬前基準点から運搬後基準点まで移動するように、ハンドの軌道を演算により生成する軌道演算部と、軌道生成部が生成した軌道をハンドが通るように、ロボットプログラムを作成するプログラム作成部とを備えることを特徴としている。
このように構成された発明(把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置)では、その把持基準点に対して所定の位置関係を満たす対象物を把持する把持機構を用いて対象物を運搬するために、把持機構を移動させる軌道が生成される。この軌道生成にあたっては、運搬前の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬前の把持基準点が設定され、運搬後の対象物を把持機構で把持する際の把持基準点の位置に対象物の運搬後の把持基準点が設定される。そして、こうして設定された運搬前基準点から運搬後基準点まで把持基準点が移動するように、把持機構の軌道が演算により生成される。このように本発明によれば、対象物の基準点(運搬前基準点、運搬後基準点)が設定されれば、対象物を運搬する把持機構の軌道が演算により自動的に生成できる。換言すれば、把持機構の軌道生成のためには、対象物の基準点が設定されれば良く、把持機構の動作を動画で確認する必要がない。その結果、対象物の運搬のために当該対象物を把持する把持機構を移動させる軌道を、効率的に生成することが可能となっている。
また、運搬前および/または運搬後それぞれの対象物の状態を仮想空間上で再現して表示する対象物表示画面をさらに備えるように、把持機構の軌道生成装置を構成しても良い。このような構成では、ユーザは、対象物の状態を対象物表示画面で確認しながら、対象物の運搬前基準点および/または運搬後基準点を設定することができ、ユーザにとっての操作性が向上する。
この際、設定入力部には、ユーザが対象物表示画面上で指定した運搬前基準点および/または運搬後基準点が設定されるように、把持機構の軌道生成装置を構成しても良い。このような構成では、対象物の状態の確認のみならず、運搬前および/または運搬後基準点の設定についても対象物表示画面上で実行することができ、ユーザにとっての操作性がより向上する。
また、軌道演算部が生成した軌道を表示する軌道表示部をさらに備えるように、把持機構の軌道生成装置を構成しても良い。このような構成では、ユーザは、生成された軌道を軌道表示部で確認しながらその適否を判断でき、ユーザにとっての操作性が向上する。
ちなみに、把持機構の軌道演算のために設定可能な条件は、運搬前・運搬後基準点に限られない。つまり、これら以外に設定された条件を満たすように把持機構の軌道演算を行うことで、より適切な軌道を生成することが可能となる。
具体的には、設定入力部には、運搬前の対象物を把持する把持機構の姿勢が運搬前姿勢として設定可能であり、軌道演算部は、把持基準点が運搬前基準点にあるときに把持機構が運搬前姿勢を取るように、把持機構の軌道を演算により生成するように、把持機構の軌道生成装置を構成しても良い。
設定入力部には、運搬後の対象物を把持する把持機構の姿勢が運搬後姿勢として設定可能であり、軌道演算部は、把持基準点が運搬後基準点にあるときに把持機構が運搬後姿勢を取るように、把持機構の軌道を演算により生成するように、把持機構の軌道生成装置を構成しても良い。
あるいは、設定入力部には、把持基準点が運搬後基準点に接近する際のアプローチ方向が設定可能であり、軌道演算部は、把持基準点がアプローチ方向から運搬後基準点へ接近するように、把持機構の軌道を演算により生成するように、把持機構の軌道生成装置を構成しても良い。
対象物の運搬のために当該対象物を把持する把持機構を移動させる軌道を、効率的に生成することが可能となる。
図1は、本発明により作成したロボットプログラムに基づいて制御可能なロボットの一例を模式的に示す斜視図である。なお、図1では、ロボット2を制御するコンピュータ3がロボット2の他に併記されている。図2は、図1に示すロボットを制御する電気的構成を模式的に示すブロック線図である。図1および以下に示す図では、鉛直方向をz軸方向とするxyz直交座標軸を適宜示すこととする。
図1に示すロボット2は、胴体部21に2本のアーム22を取り付けた概略構成を備えた双腕ロボットである。各アーム22は、駆動モータM23に接続された肩関節23を介して取り付けられている。したがって、駆動モータM23で肩関節23を回転させて、アーム22を動かすことができる。また、各アーム22の先端には、手首関節24を介してハンド25が取り付けられている。この手首関節24には駆動モータM24が接続されている。したがって、駆動モータM24で手首関節24を回転させることで、ハンド25の向きを変えることができる。さらに、ハンド25には駆動モータM25が接続されている。したがって、駆動モータM25によってハンド25を開閉させることができる。
このようなロボット2の動作は、コンピュータ3によって制御される。コンピュータ3は、CPU(Central Processing Unit)やメモリーで構成された主制御部31を備える。そして、主制御部31は駆動モータM23〜M25を制御することで、ハンド25で部品5(機械部品、電子部品)を掴んだり、部品5を掴んだハンド25を移動させたり、ハンド25を回転させて部品5の姿勢を変えたり、ハンド25から部品5を放したりといった基本動作を、ロボット2に実行させることができる。
特に、コンピュータ3には、ロボット2に所定手順を実行させるために作成されたロボットプログラム4がインストールされている。つまり、主制御部31はロボットプログラム4に従って駆動モータM23〜M25を制御することで、ロボットプログラム4に規定された手順をロボット2に実行させる。具体的には、この実施形態で説明するロボットプログラム4は、複数の部品5の組み立てをロボット2に実行させるものである。つまり、ハンド25は、ロボットプログラム4に従って、部品5を初期位置で把持して組立位置まで移動させる動作を各部品について実行して、複数の部品を組み立てる。なお、このような部品5の組み立てを実行するためには、ハンド25によって部品5を的確に把持する必要がある。そこで、ロボットプログラム4は、ハンド25に対して設定されたTCP(Tool Center Point)を基準に、ハンド25に部品5の把持動作を実行させる。
図3は、図1のロボットが備えるハンドの把持動作を模式的に示す図である。図3では、初期位置にある部品5へ向けて移動するハンド25が破線で示され、初期位置で部品5を把持するハンド25が実線で示されている。図3に示すように、ハンド25に対しては、仮想的な点であるTCP6が設定されている。ハンド25とTCP6との位置関係は固定されており、ハンド25はTCP6を伴って移動する。そして、部品5とTCP6とが所定の位置関係を満たす状態で、ハンド25を作動させる(閉じる)ことで、部品5をハンド25で把持することができる。具体的には、例えば図4に示すように、部品5に対して設定された適当な代表点とTCP6とが一致した状態で、部品5をハンド25で把持できるように構成することができる。
図4は、部品とTCPの位置合わせの一例を模式的に示す図である。同図において、「移動」の欄ではハンド25が初期位置の部品5へ向けて移動する様子が示され、「把持」の欄ではハンド25が初期位置で部品5を把持する様子が示されている。同図に示す例では、ハンド25のみならず、部品5に対してもTCP7(代表点)が付されている。この部品側TCP7は、部品5の把持態様に適した位置に設定することができる。そして、部品5までハンド25を移動させて、部品側TCP7にハンド側TCP6を一致させた状態でハンド25を作動させることで、部品5をハンド25で把持することができる。この際、部品5の把持態様のバリエーションに応じて複数の部品側TCP7を設定しておき、部品5の把持態様に応じて選択された一の部品側TCP7を基準に、部品5とハンド25の位置合わせを行なうように構成することもできる。
このようなハンド25の動作は、上述のとおりロボットプログラム4に基づいて制御される。続いては、このロボットプログラム4を作成する構成および動作の一例について説明する。図5は、ロボットプログラム作成装置の電気的構成の一例を模式的に示すブロック線図である。なお、図5では、ロボットプログラム作成装置100の他に、ロボットプログラム作成用の作成プログラム200を記録した記録媒体300およびシミュレータ400が併記されている。
ロボットプログラム作成装置100は、CPUやメモリーで構成された主制御部110を具備するコンピュータである。さらに、ロボットプログラム作成装置100は、外部とのデータの入出力を制御する入出力部120、メモリーやハードディスクで構成された記憶部130、キーボードやマウスで構成された入力機器140、およびディスプレイ150を具備する。なお、ディスプレイ150としては、タッチパネル型のように入力機能を有するものを用いても良い。
かかる構成を具備するロボットプログラム作成装置100は、記憶部130に読み込んだ作成プログラム200に基づいてロボットプログラム4を作成する。作成プログラム200は、例えばロボットプログラム作成装置100により読み取りが可能な記録媒体300に記録された状態で供給される。このような記録媒体300としては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、USB(Universal Serial Bus)メモリー等の種々のものが挙げられる。具体的には、作成プログラム200には、図6に示すフローチャートが組み込まれており、ロボットプログラム作成装置100は、同フローチャートを実行することでロボットプログラム4を作成する。
図6は、ロボットプログラムを作成するフローチャートの一例を示す図である。図7は、図6のフローチャートで実行される作業の一例を模式的に示す斜視図である。図7では、平面視において略台形状の部品5aの上に平面視において略矩形状の部品5bを重ねて、2本のネジ状の部品5c、5dで部品5a、5bを相互に固定することで、部品5(5a〜5d)を組み立てる例が示されており、複数の部品5a〜5dの組立前における状態が「組立前」の欄に示され、複数の部品5a〜5dの組立後における状態が「組立後」の欄に示されている。
図6のフローチャートは、組立前の初期位置から組立後の組立位置に部品5a〜5dそれぞれを運搬するハンド25の軌道を生成するステップS101〜S107と、当該軌道をハンド25が通過するようにロボットプログラム4を作成するステップS108とに大別される。これらの詳細は次のとおりである。
ロボットプログラム4の作成が開始すると、ステップS101において、組立対象である複数の部品5a〜5dのCAD(computer aided design)データが、外部の三次元CAD(computer aided design)ツールから入出力部120を介して記憶部130に読み込まれる。続くステップS102では、主制御部110が、複数の部品5a〜5dの組立後における状態を示す組み図を、読み込んだCADデータに基づいて仮想空間上に再現する。
この際、組み図の作成は、外部の三次元CADツールで行なっても良いし、三次元CADソフトを用いてロボットプログラム作成装置100で行なっても良い。前者の例では、ロボットプログラム作成装置100は、外部の三次元CADツールで作成された組み図をそのまま再現すれば良い。後者の例では、ロボットプログラム作成装置100は、外部の三次元CADツールが読み込んだ個々の部品5のCADデータに基づいて組み図を作成して、これを再現すれば良い。
ステップS103では、作成された組み図に基づいて、組立後における各部品5a〜5dの運搬後基準点8a〜8dが記憶部130に設定される。具体的には図7の「組立後」の欄に示すように、これら運搬後基準点8(8a〜8d)は、組立位置にある運搬後の部品5(5a〜5d)を把持するハンド25のTCP6の位置に設定され、三次元の仮想空間における点(x,y,z)として表される。この運搬後基準点8は、運搬後における部品5の部品側TCP7に相当する。
また、ステップS103では、運搬後の部品5(5a〜5d)を把持するハンド25の姿勢(Rx、Ry、Rz)が設定される。さらに、ステップS103では、組立位置に部品5(5a〜5d)を運搬するにあたって、ハンド25のTCP6が運搬後基準点8(8a〜8d)に接近する際のアプローチ方向(Dx、Dy、Dz)が設定される。ここで、ハンド25の姿勢(Rx、Ry、Rz)は、ハンド25の姿勢をオイラー角あるいはロール・ピッチ・ヨー角で示したものである。また、ハンド25のアプローチ方向(Dx、Dy、Dz)は、ハンド25のアプローチ方向を三次元ベクトルで示したものである。
これら運搬後基準点8、ハンド25の姿勢(Rx、Ry、Rz)およびアプローチ方向(Dx、Dy、Dz)等の各値の設定は、ユーザが仮想空間上で再現された組み図をディスプレイ150で確認しながら、入力機器140等を操作することで実行できる。特に運搬後基準点8の設定態様については、次のように構成しても良い。
すなわち、ディスプレイ150に表示された運搬後の部品5の適当な箇所に、マウスで操作可能なカーソルを合わせることでユーザが指定した位置に、運搬後基準点8を設定するように構成しても良い。あるいは、タッチパネル型のディスプレイ150を用いた場合は、ディスプレイ150を押すことでユーザが指定した位置に、運搬後基準点8を設定するように構成しても良い。これらの構成例では、部品5a〜5dの状態を仮想空間上で表示するディスプレイ150上でユーザにより指定された位置が、運搬後基準点8として設定される。なお、ユーザの指定位置が適当でない場合は、その旨をディスプレイ150に表示して指定位置の変更をユーザに促したり、主制御部110がユーザの指定位置から修正した位置を運搬後基準点8として設定したりするように、構成することもできる。
続くステップS104では、主制御部110が、複数の部品5a〜5dの組立前における状態を示す初期配置図をCADデータに基づいて仮想空間上に再現する。具体例を挙げて説明すると、実作業空間における組立前の部品5a〜5bをカメラで撮像した結果から、部品5a〜5bの初期位置を示す初期位置情報を予め取得しておき、個々の部品5のCADデータを初期位置情報の示す位置に配置することで、初期配置図が作成される。
ステップS105では、作成した初期配置図に基づいて、組立前における各部品5a〜5dの運搬前基準点9a〜9dが記憶部130に設定される。具体的には図7の「組立前」の欄に示すように、これら運搬前基準点9(9a〜9d)は、初期位置にある運搬前の部品5(5a〜5d)を把持するハンド25のTCP6の位置に設定され、三次元の仮想空間における点(x,y,z)として表される。この運搬前基準点9は、運搬前における部品5の部品側TCP7に相当する。
この際、運搬前基準点9a〜9dの設定は、運搬後基準点8a〜8dの設定と同様にして、ディスプレイ150上でのユーザの指定に基づいて実行することができる。あるいは、運搬前基準点9a〜9dの設定は、初期配置図と運搬後基準点8a〜8dの設定結果に基づいて主制御部110が演算により自動的に実行しても良い。つまり、運搬前基準点9a〜9dと部品5a〜5dの位置関係と、運搬後基準点8a〜8dと部品5a〜5dの位置関係とは互いに同一である。したがって、先のステップS103で設定済みの運搬後基準点8a〜8dと部品5a〜5dの位置関係を参照することで、初期配置図における各部品5a〜5dの位置から、運搬前基準点9a〜9dを演算によって自動的に求められる。
また、ステップS105では、運搬前の部品5(5a〜5d)を把持するハンド25の姿勢(Rx、Ry、Rz)が設定される。さらに、ステップS105では、初期位置にある部品5(5a〜5d)を把持しに行くために、ハンド25のTCP6が運搬前基準点9(9a〜9d)に接近する際のアプローチ方向(Dx、Dy、Dz)が設定される。これらハンド25の姿勢(Rx、Ry、Rz)およびアプローチ方向(Dx、Dy、Dz)等の各値の設定は、ユーザが仮想空間上で再現された組み図をディスプレイ150で確認しながら、入力機器140等を操作することで実行できる。
ステップS106では、先のステップS103、S105での設定結果に基づいて、主制御部110が組立前後の基準点8、9等のリスト(図8)を作成して、記憶部130に記憶する。ここで、図8は、組立前後における基準点等のリストの一例を表で示す図である。図8に示すように、組立前と組立後それぞれにおける基準点、姿勢およびアプローチ方向が、部品5a〜5dのそれぞれについて求められる。
ステップS107では、主制御部110に構成された軌道演算部111が、組立前後の基準点等を示す図8のリストに基づいて、ハンド25の軌道を演算により生成する。具体的には、ハンド25のTCP6が運搬対象である部品5の運搬前基準点9から運搬後基準点8まで移動するといった条件を満たすように、当該部品5を運搬するハンド25の軌道が生成される。このような軌道生成は、出発地(運搬前基準点9)から目的地(運搬後基準点)までの経路を探索する経路探索技術を用いて行うことができる。
この際、ステップS107では、さらに次の条件
・運搬対象である部品5について設定された組立前のアプローチ方向から、ハンド25のTCP6が当該部品5の運搬前基準点9へ接近する
・ハンド25のTCP6が運搬対象である部品5の運搬前基準点9にあるとき、ハンド25が当該部品5について設定された運搬前の姿勢を取る
・運搬対象である部品5について設定された組立後のアプローチ方向から、ハンド25のTCP6が当該部品5の運搬後基準点8へ接近する
・ハンド25のTCP6が運搬対象である部品5の運搬後基準点8にあるとき、ハンド25が当該部品5について設定された運搬後の姿勢を取る
・部品5を運搬中にハンド25および部品5が障害物と干渉しない
を満たすように、ハンド25の軌道が生成される。このような条件も満たすようにハンド25の軌道演算を行うことで、より適切な軌道を生成することが可能となる。
・運搬対象である部品5について設定された組立前のアプローチ方向から、ハンド25のTCP6が当該部品5の運搬前基準点9へ接近する
・ハンド25のTCP6が運搬対象である部品5の運搬前基準点9にあるとき、ハンド25が当該部品5について設定された運搬前の姿勢を取る
・運搬対象である部品5について設定された組立後のアプローチ方向から、ハンド25のTCP6が当該部品5の運搬後基準点8へ接近する
・ハンド25のTCP6が運搬対象である部品5の運搬後基準点8にあるとき、ハンド25が当該部品5について設定された運搬後の姿勢を取る
・部品5を運搬中にハンド25および部品5が障害物と干渉しない
を満たすように、ハンド25の軌道が生成される。このような条件も満たすようにハンド25の軌道演算を行うことで、より適切な軌道を生成することが可能となる。
こうして、部品5a〜5dのそれぞれについて、当該部品を運搬するハンド25の軌道が求められる。この際、上記条件を満たす複数の軌道の候補を、部品5a〜5dのそれぞれについて求めても良い。この場合、複数の候補のうちから例えば運搬時間が最短となる候補をハンド25の軌道として、部品5a〜5dのそれぞれについて選出することができ、より適切なハンド25の軌道を生成することができる。
そして、ステップS108では、主制御部110に構成されたプログラム作成部112がロボットプログラム4を生成する。具体的には、プログラム作成部112は、部品5a〜5dそれぞれについて生成された軌道を通ってハンド25が当該部品5a〜5dを運搬するようにロボット2を制御する運搬プログラムを、部品5a〜5d毎に生成する。
ちなみに、実際の組立作業では、部品5を運搬する以外の目的で、部品5の姿勢等を調整する必要が生じることがある。例えばネジ等の部品は、ネジ止めを行う方向に合わせてその姿勢を調整する必要がある。このような場合には、運搬途中において部品5の姿勢を調整するといったことが行われる。そこで、プログラム作成部112は、このような姿勢調整を行う姿勢調整プログラムも作成する。
さらに、実際の作業空間では、組立前において部品5が決められた初期位置から多少ずれて配置されることがある。このような場合、初期位置からずれた部品5を適切に把持するためには、部品5a〜5dの実際の位置をカメラで認識した結果に基づいて、ハンド25の位置を補正するといったことが行われる。そこで、プログラム作成部112は、このような位置補正を行う位置補正プログラムも作成する。そして、プログラム作成部112は、運搬プログラム、姿勢調整プログラムおよび位置補正プログラムを組み合わせて、ロボットプログラム4を作成する。こうして、ロボットプログラム4の作成が終了する。
この際、ロボットプログラム作成装置100が作成したロボットプログラム4は、シミュレータ400によって検証することができる。具体的には、シミュレータ400は、パーソナルコンピュータ等で構成されており、ロボットプログラム4に従ってロボット2を動作させたときの様子をシミュレーションする。したがって、ユーザは、このシミュレーション結果に基づいて、ロボットプログラム4の適否を判断できる。
以上に説明したように、この実施形態では、そのTCP6に対して所定の位置関係を満たす部品5を把持するハンド25を用いて部品5を運搬するために、ハンド25を移動させる軌道が生成される。この軌道生成にあたっては、運搬前の部品5をハンド25で把持する際のTCP6の位置に部品5の運搬前基準点9が設定され、運搬後の部品5をハンド25で把持する際のTCP6の位置に部品の運搬後基準点8が設定される。そして、こうして設定された運搬前基準点9から運搬後基準点8までTCP6が移動するように、ハンド25の軌道が演算により生成される。このように、この実施形態によれば、部品の基準点(運搬前基準点9、運搬後基準点8)が設定されれば、部品5を運搬するハンド25の軌道が演算により自動的に生成できる。換言すれば、ハンド25の軌道生成のためには、部品5の基準点9、8が設定されれば良く、ハンド25の動作を動画で確認する必要がない。その結果、部品5の運搬のために当該部品5を把持するハンド25を移動させる軌道を、効率的に生成することが可能となっている。
また、この実施形態では、運搬前および/または運搬後それぞれの部品5の状態を仮想空間上で再現して表示するディスプレイ150が設けられている。このような構成では、ユーザは、部品5の状態をディスプレイ150で確認しながら、部品5の運搬前基準点および/または運搬後基準点を設定することができ、ユーザにとっての操作性が向上する。
さらに、この実施形態では、ユーザがディスプレイ150上で指定した運搬前基準点9および/または運搬後基準点8が設定されるように構成されている。このような構成では、部品5の状態の確認のみならず、運搬前および/または運搬後基準点9、8の設定についてもディスプレイ150上で実行することができ、ユーザにとっての操作性がより向上する。
このように、上記実施形態では、ロボットプログラム作成装置100が本発明の「把持機構の軌道生成装置」あるいは「ロボットプログラム作成装置」の一例に相当し、作成プログラム200が本発明の「軌道生成プログラム」の一例に相当し、記録媒体300が本発明の「記録媒体」の一例に相当する。また、ハンド25が本発明の「把持機構」の一例に相当し、部品5が本発明の「対象物」の一例に相当し、TCP6が本発明の「把持基準点」の一例に相当し、記憶部130およびディスプレイ150が協働して本発明の「設定入力部」の一例として機能し、軌道演算部111が本発明の「軌道演算部」の一例に相当し、運搬前基準点9が本発明の「運搬前基準点」の一例に相当し、運搬後基準点8が本発明の「運搬後基準点」の一例に相当し、ディスプレイ150が本発明の「対象物表示画面」の一例に相当し、ロボットプログラム作成装置100が本発明の「コンピュータ」の一例に相当する。
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。そこで、例えば軌道演算部111が生成した軌道をディスプレイ150(軌道表示部)に表示するように、ロボットプログラム作成装置100を構成しても良い。このような構成では、ユーザは、生成された軌道をディスプレイ150で確認しながらその適否を判断でき、ユーザにとっての操作性が向上する。
この際、ディスプレイ150には、軌道を移動するハンド25の様子を動画で表示しても構わない。つまり、本発明は、動画での確認を要すること無くハンド25の軌道生成を可能とすることで、軌道生成の効率化を図ったものであり、生成済みのハンド25の軌道を動画で表示することを妨げるものではない。ちなみに、このように構成した場合、実際の作業空間におけるハンド25の動きが把握しやすくなり、ユーザにとっての操作性がより向上すると期待できる。
また、上記実施形態においてハンド25の軌道生成のために設定された条件についても適宜変更可能である。具体的には、上記条件のうち、アプローチ方向やハンド25の姿勢に関する条件については、適宜削除しても構わない。あるいは、上記条件以外の条件をさらに満たすように、ハンド25の軌道を生成することも可能である。
また、ロボットプログラム作成装置100に対して、各種の機能を追加するような変形も可能である。具体例を挙げれば、上記のシミュレータ400が有するシミュレーション機能を、ロボットプログラム作成装置100に持たせても良い。
また、上記実施形態で示した例では、ハンド25が有する複数のフィンガーの略中心にTCP6が設定されていた。しかしながら、TCP6の設定箇所は、適宜変更しても構わない。
また、上記実施形態では、運搬前・運搬後基準点9、8、ハンド25の姿勢(Rx、Ry、Rz)およびアプローチ方向(Dx、Dy、Dz)等の設定は、ユーザによって実行されていた。しかしながら、これらの設定を例えば主制御部110が自動的に行うように構成しても良い。
また、ハンド25により組み立てる部品5の形状、個数および組立態様等が上記の例に限られないことは、言うまでもない。
また、上記実施形態では、把持機構の一例として、対象物(部品5)を掴むことで把持動作を実行するハンド25が挙げられていた。しかしながら、把持機構の具体的構成はこれに限られず、例えば対象物を吸着して把持するものであっても良い。
この発明は、対象物を運搬する把持機構の軌道を求める技術全般に対して適用可能であり、特に、対象物である部品をロボットのハンドで運搬して組み立てる技術に好適に適用可能である。
100…ロボットプログラム作成装置
110…主制御部
111…軌道演算部
112…プログラム作成部
120…入出力部
130…記憶部
140…入力機器
150…ディスプレイ
200…作成プログラム
300…記録媒体
25…ハンド
4…ロボットプログラム
5a,5b,5c,5d,5…部品
6…TCP
7…TCP
8a,8b,8c,8d…運搬後基準点
9a,9b,9c,9d…運搬前基準点
110…主制御部
111…軌道演算部
112…プログラム作成部
120…入出力部
130…記憶部
140…入力機器
150…ディスプレイ
200…作成プログラム
300…記録媒体
25…ハンド
4…ロボットプログラム
5a,5b,5c,5d,5…部品
6…TCP
7…TCP
8a,8b,8c,8d…運搬後基準点
9a,9b,9c,9d…運搬前基準点
Claims (11)
- その把持基準点に対して所定の位置関係を満たす対象物を把持する把持機構を用いて前記対象物を運搬するために前記把持機構を移動させる軌道を生成する、把持機構の軌道生成装置において、
運搬前の前記対象物を前記把持機構で把持する際の前記把持基準点の位置に前記対象物の運搬前基準点が設定され、運搬後の前記対象物を前記把持機構で把持する際の前記把持基準点の位置に前記対象物の運搬後基準点が設定される設定入力部と、
前記把持基準点が前記運搬前基準点から前記運搬後基準点まで移動するように、前記把持機構の軌道を演算により生成する軌道演算部と
を備えることを特徴とする把持機構の軌道生成装置。 - 運搬前および/または運搬後の前記対象物の状態を仮想空間上で再現して表示する対象物表示画面をさらに備える請求項1に記載の把持機構の軌道生成装置。
- 前記設定入力部には、ユーザが前記対象物表示画面上で指定した前記運搬前基準点および/または前記運搬後基準点が設定される請求項2に記載の把持機構の軌道生成装置。
- 前記軌道演算部が生成した軌道を表示する軌道表示部をさらに備える請求項1ないし3のいずれか一項に記載の把持機構の軌道生成装置。
- 前記設定入力部には、運搬前の前記対象物を把持する前記把持機構の姿勢が運搬前姿勢として設定可能であり、
前記軌道演算部は、前記把持基準点が前記運搬前基準点にあるときに前記把持機構が前記運搬前姿勢を取るように、前記把持機構の軌道を演算により生成する請求項1ないし4のいずれか一項に記載の把持機構の軌道生成装置。 - 前記設定入力部には、運搬後の前記対象物を把持する前記把持機構の姿勢が運搬後姿勢として設定可能であり、
前記軌道演算部は、前記把持基準点が前記運搬後基準点にあるときに前記把持機構が前記運搬後姿勢を取るように、前記把持機構の軌道を演算により生成する請求項1ないし5のいずれか一項に記載の把持機構の軌道生成装置。 - 前記設定入力部には、前記把持基準点が前記運搬後基準点に接近する際のアプローチ方向が設定可能であり、
前記軌道演算部は、前記把持基準点が前記アプローチ方向から前記運搬後基準点へ接近するように、前記把持機構の軌道を演算により生成する請求項1ないし6のいずれか一項に記載の把持機構の軌道生成装置。 - その把持基準点に対して所定の位置関係を満たす対象物を把持する把持機構を用いて前記対象物を運搬するために前記把持機構を移動させる軌道を生成する、把持機構の軌道生成方法において、
運搬前の前記対象物を前記把持機構で把持する際の前記把持基準点の位置に前記対象物の運搬前基準点が設定され、運搬後の前記対象物を前記把持機構で把持する際の前記把持基準点の位置に前記対象物の運搬後基準点が設定される工程と、
前記把持基準点が前記運搬前基準点から前記運搬後基準点まで移動するように、前記把持機構の軌道を演算により生成する工程と
を備えることを特徴とする把持機構の軌道生成方法。 - その把持基準点に対して所定の位置関係を満たす対象物を把持する把持機構を用いて前記対象物を運搬するために前記把持機構を移動させる軌道をコンピュータに生成させる、把持機構の軌道生成プログラムにおいて、
運搬前の前記対象物を前記把持機構で把持する際の前記把持基準点の位置に前記対象物の運搬前基準点が設定され、運搬後の前記対象物を前記把持機構で把持する際の前記把持基準点の位置に前記対象物の運搬後基準点が設定される工程と、
前記把持基準点が前記運搬前基準点から前記運搬後基準点まで移動するように、前記把持機構の軌道を演算により生成する工程と
を前記コンピュータに実行させることを特徴とする把持機構の軌道生成プログラム。 - 請求項9に記載された把持機構の軌道生成プログラムがコンピュータにより読み出し可能に記録されたことを特徴とする記録媒体。
- その把持基準点に対して所定の位置関係を満たす対象物を把持するハンドを用いて前記対象物を運搬するロボットの制御をコンピュータに実行させるロボットプログラムを作成するロボットプログラム作成装置において、
運搬前の前記対象物を前記ハンドで把持する際の前記把持基準点の位置に前記対象物の運搬前基準点が設定され、運搬後の前記対象物を前記ハンドで把持する際の前記把持基準点の位置に前記対象物の運搬後基準点が設定される設定入力部と、
前記把持基準点が前記運搬前基準点から前記運搬後基準点まで移動するように、前記ハンドの軌道を演算により生成する軌道演算部と、
前記軌道生成部が生成した軌道を前記ハンドが通るように、前記ロボットプログラムを作成するプログラム作成部と
を備えることを特徴とするロボットプログラム作成装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012119785A JP2013244560A (ja) | 2012-05-25 | 2012-05-25 | 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 |
PCT/JP2012/082757 WO2013175666A1 (ja) | 2012-05-25 | 2012-12-18 | 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012119785A JP2013244560A (ja) | 2012-05-25 | 2012-05-25 | 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013244560A true JP2013244560A (ja) | 2013-12-09 |
Family
ID=49623384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012119785A Pending JP2013244560A (ja) | 2012-05-25 | 2012-05-25 | 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2013244560A (ja) |
WO (1) | WO2013175666A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9902059B2 (en) | 2014-08-27 | 2018-02-27 | Canon Kabushiki Kaisha | Robot teaching apparatus, method, and robot system |
JP2018083277A (ja) * | 2016-11-25 | 2018-05-31 | 富士通株式会社 | 組立作業ロボットの動作生成方法、動作生成プログラム、及び動作生成装置 |
JP2018144161A (ja) * | 2017-03-03 | 2018-09-20 | 株式会社キーエンス | ロボット設定装置、ロボット設定方法、ロボット設定プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
JP2019155509A (ja) * | 2018-03-09 | 2019-09-19 | オムロン株式会社 | ロボットの制御装置、制御方法及びプログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08328637A (ja) * | 1995-05-29 | 1996-12-13 | Toyoda Mach Works Ltd | ロボット制御装置 |
JP2875498B2 (ja) * | 1995-07-18 | 1999-03-31 | 株式会社神戸製鋼所 | ロボットマニピュレータの移動経路の自動生成方法 |
JP2009134352A (ja) * | 2007-11-28 | 2009-06-18 | Toyota Motor Corp | ロボットの動作経路作成装置及びロボットの動作経路作成方法 |
JP2010142910A (ja) * | 2008-12-19 | 2010-07-01 | Yaskawa Electric Corp | ロボットシステム |
JP2010179388A (ja) * | 2009-02-04 | 2010-08-19 | Toshiba Mach Co Ltd | ロボット教示システム |
-
2012
- 2012-05-25 JP JP2012119785A patent/JP2013244560A/ja active Pending
- 2012-12-18 WO PCT/JP2012/082757 patent/WO2013175666A1/ja active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9902059B2 (en) | 2014-08-27 | 2018-02-27 | Canon Kabushiki Kaisha | Robot teaching apparatus, method, and robot system |
JP2018083277A (ja) * | 2016-11-25 | 2018-05-31 | 富士通株式会社 | 組立作業ロボットの動作生成方法、動作生成プログラム、及び動作生成装置 |
JP2018144161A (ja) * | 2017-03-03 | 2018-09-20 | 株式会社キーエンス | ロボット設定装置、ロボット設定方法、ロボット設定プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
JP2019155509A (ja) * | 2018-03-09 | 2019-09-19 | オムロン株式会社 | ロボットの制御装置、制御方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2013175666A1 (ja) | 2013-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10521522B2 (en) | Robot simulator and file generation method for robot simulator | |
JP6601179B2 (ja) | シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム | |
JP5606816B2 (ja) | 溶接ロボットのティーチング装置およびティーチング方法 | |
EP2282873B1 (en) | A method and a system for facilitating calibration of an off-line programmed robot cell | |
US9186792B2 (en) | Teaching system, teaching method and robot system | |
CN110573308A (zh) | 机器人***的混合现实辅助空间编程 | |
WO2014080652A1 (ja) | 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 | |
EP3166084B1 (en) | Method and system for determining a configuration of a virtual robot in a virtual environment | |
JP6444957B2 (ja) | ロボットシステムの動作のシミュレーションを行うシミュレーション装置、シミュレーション方法、およびコンピュータプログラムを記録する記録媒体 | |
WO2004085120A1 (ja) | ロボットシミュレーション装置、および、シミュレーションプログラム | |
CN109834698B (zh) | 对机器人进行示教操作的示教装置 | |
JP2019018272A (ja) | モーション生成方法、モーション生成装置、システム及びコンピュータプログラム | |
WO2013175666A1 (ja) | 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 | |
JP7246267B2 (ja) | 組立計画装置、組立計画方法、及び組立計画プログラム | |
CN114080590A (zh) | 使用先进扫描技术的机器人料箱拾取***和方法 | |
JP2019171498A (ja) | ロボットプログラム実行装置、ロボットプログラム実行方法、プログラム | |
JP2020505244A (ja) | ロボット製造での所定のターゲットへの到達をロボットにティーチングするための方法およびシステム | |
US20220281103A1 (en) | Information processing apparatus, robot system, method of manufacturing products, information processing method, and recording medium | |
WO2016132521A1 (ja) | 教示データ生成装置 | |
JP2019188545A (ja) | ロボット制御装置 | |
JP2010179388A (ja) | ロボット教示システム | |
WO2022254538A1 (ja) | ロボットシミュレーション装置 | |
WO2018180298A1 (ja) | ロボット教示装置、ロボット教示装置の制御方法及びロボット教示プログラム | |
US20230311324A1 (en) | Method and system for automatically determining a motion data sample of a given robot and its surrounding object set | |
JP7099470B2 (ja) | ロボット教示装置 |