[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP6643020B2 - ロボット制御装置、ロボット制御方法及びコンピュータプログラム - Google Patents

ロボット制御装置、ロボット制御方法及びコンピュータプログラム Download PDF

Info

Publication number
JP6643020B2
JP6643020B2 JP2015188931A JP2015188931A JP6643020B2 JP 6643020 B2 JP6643020 B2 JP 6643020B2 JP 2015188931 A JP2015188931 A JP 2015188931A JP 2015188931 A JP2015188931 A JP 2015188931A JP 6643020 B2 JP6643020 B2 JP 6643020B2
Authority
JP
Japan
Prior art keywords
robot
posture
target
determining
orientation
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
JP2015188931A
Other languages
English (en)
Other versions
JP2017061025A5 (ja
JP2017061025A (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.)
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 JP2015188931A priority Critical patent/JP6643020B2/ja
Publication of JP2017061025A publication Critical patent/JP2017061025A/ja
Publication of JP2017061025A5 publication Critical patent/JP2017061025A5/ja
Application granted granted Critical
Publication of JP6643020B2 publication Critical patent/JP6643020B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、ロボットの行動を計画するロボット制御装置、ロボット制御方法及びコンピュータプログラムに関する。
従来、ロボットを利用して対象物の姿勢変更を行う場合、対象物の静的な状態を考慮して対象物(ワーク)の姿勢が、変更後の姿勢に変更されるように搬送する手法があった。すなわち、対象物の姿勢変更後の目標位置及び姿勢において、ロボットが対象物をリリースする手法である。
例えば特許文献1は、設定された作業計画に基づいて対象物を把持する場合に、次の動作の障害等にならないような把持手法(把持位置)を決定可能なロボット制御装置及びロボットシステム等を開示する。具体的には、特許文献1では、対象物の姿勢変更前後で共に成り立つ共通の把持パターンを求め、対象物の姿勢変更を行う。
特開2012−206219号公報
しかしながら、特許文献1の技術では、姿勢変更の前後で対象物を把持する共通の把持パターンが存在しない場合は、最終的な目標姿勢に至るまでに複数回の姿勢変更動作を行う必要が生じる。このため、タクトタイム(tact time)が延びてしまうという課題があった。
そこで、本発明の目的は、ロボットが対象物を、より少ない動作回数で効率的に姿勢変更させることができるロボット制御装置、ロボット制御方法及びコンピュータプログラムを提供することにある。
上記課題を解決するために、本願発明に係るロボット制御装置の一態様は、対象物を操作するロボットを制御するロボット制御装置であって、前記対象物の位置及び姿勢を取得する取得手段と、前記取得手段により取得された前記対象物の第1の位置及び姿勢と、操作後の前記対象物の目標状態である第2の位置及び姿勢と、前記対象物に発生する運動とに基づいて、前記ロボットが前記対象物を把持する把持位置及びリリースするリリース位置を含む操作位置を決定する決定手段と、前記決定手段により決定された前記操作位置に基づいて、前記ロボットが前記対象物の姿勢を変更する行動計画を生成する生成手段と、を備え、前記決定手段は、前記対象物が、前記把持位置から前記第2の位置に至る間に、前記リリース位置を決定する。
本願発明に係るロボット制御装置の他の一態様は、対象物を操作するロボットを制御するロボット制御装置であって、前記対象物の位置及び姿勢を取得する取得手段と、前記取得手段により取得された前記対象物の第1の位置及び姿勢と、操作後の前記対象物の目標状態である第2の位置及び姿勢と、前記対象物に発生する運動とに基づいて、前記ロボットが前記対象物を把持する把持位置及びリリースするリリース位置を含む操作位置を決定する決定手段と、前記決定手段により決定された前記操作位置に基づいて、前記ロボットが前記対象物の姿勢を変更する行動計画を生成する生成手段と、を備え、前記決定手段は、前記対象物が、リリース位置からの運動により前記第2の位置及び姿勢へ至るよう、前記操作位置を決定する。
本発明によれば、ロボットが対象物を、より少ない動作回数で効率的に姿勢変更させることができる。
実施形態1に係るロボットシステムを実現する装置構成を表した図である。 実施形態1に係るロボットシステムの機能要素の構成図である。 ロボットシステムの処理を示すフローチャートである。 ロボットシステムの位置・姿勢計測部の処理を示すフローチャートである。 ロボットシステムの操作位置決定部の処理を示すフローチャートである。 操作位置決定部の判断部の処理を示すフローチャートである。 ロボットシステムの対象物の初期状態を模式的に表した図である。 ロボットシステムの対象物の回転後の状態を模式的に表現した図である。 対象物の回転後のリリース時の状態を模式的に表現した図である。 対象物のリリース後の対象物の傾いた状態を模式的に表現した図である。 対象物の傾く過程とエンドエフェクタの関係を表現した模式図である。 対象物のリリース後のエンドエフェクタの状態を表現した図である。 実施形態2に係るロボットシステムの機能要素の構成図である。 実施形態3に係るロボットシステムの機能要素の構成図である。 実施形態3に係るロボットシステムの処理を示すフローチャートである。 内容物計測部と操作位置決定部の処理の流れを示すフローチャートである。 実施形態4に係るロボットシステムの装置構成図である。 実施形態4に係るロボットシステムの機能要素構成図である。 操作位置決定部の判断部の処理の流れを示すフローチャートである。 対象物のリリース後の状態を模式的に表現した図である。 対象物の初期状態から目標状態への遷移過程を模式的に表現した図である。 実施形態で説明した各部のハードウエア構成の一例を示す図である。
以下、添付図面を参照して、本発明を実施するための形態について詳細に説明する。
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
実施形態1
本実施形態においては、対象物に運動を発生させる要因を考慮することによって、把持した対象物を最終的な目標位置及び姿勢(以下、単に「目標姿勢」ともいう)の手前でリリースして、対象物を目標姿勢へ向かわせるようにしたものである。本実施形態においては、このような制御を実現するように、ロボットが対象物を把持する位置及びリリースする位置を決定する。
具体的には、本実施形態では、対象物の位置及び姿勢を計測して、この計測結果から対象物がどの部品でどのような位置及び姿勢かを判断する。さらに、対象物の支持基底面を求め、この支持基底面を用いて、ロボットによる操作で対象物を姿勢変更するための操作位置を決定する。
ここで、対象物とは、姿勢変更の対象物(ワーク)をいい、例えばトナーカートリッジのような容器である。
また、支持基底面とは、対象物が面の上に目標とする目標姿勢で置かれているとき、対象物の重心から対象物が置かれている面に垂線を下ろした際に垂線が交わる対象物の面をいう。本実施形態では、対象物を目標姿勢に変更する際に、静的な操作では一回で姿勢変更できない場合、動的な操作を考慮して目標姿勢の手前の、最適なリリース位置でリリースする。すなわち、動的な操作を考慮して目標姿勢の手前の最適なリリース位置でリリースするという動作命令をロボットに送り、ロボットにその動作命令に従って対象物を操作させる。
ここで、静的な操作とは、対象物の静的な状態を考慮した操作方法である。例えば、対象物をリリースする状態(位置及び姿勢)と目標状態(位置及び姿勢)が一致している場合、リリースしてから対象物の姿勢に変化は生じないため、これを静的な操作と考える。
他方、動的な操作とは、対象物の動的な状態まで考慮した操作方法である。例えば、対象物をリリースする状態と目標状態が一致していない場合でも、リリース後に対象物に運動が発生して、最終的に対象物の状態が目標状態と一致するような操作方法を、動的な操作であると考える。なお、本実施形態においては、対象物に運動を発生させる要因として、重力を考慮する。
図1は、本実施形態におけるロボットシステム100を構成する機器構成を説明する図である。図1の例に示す機器構成は一例であり、本発明の適用範囲を限定するものではない。
ロボット101は、マニピュレータやロボットハンドのようなエンドエフェクタなどの機器によって構成される。ロボット101は、情報処理装置104(ロボット制御装置)
が決定した行動を実行し、例えば対象物106を操作する。
ここで、「行動」とは、対象物106を操作するためのロボット101の動作のことをいい、例えば、ロボット101により対象物106を搬送することや、把持すること等を含む。
撮像装置102は、対象物106及びその周辺環境等を撮像する装置であり、例えばカメラや光を検出するセンサ、フォトダイオードなどで構成される。このような構成によって、撮像装置102は、対象物106の画像情報を取得する。取得した画像情報は情報処理装置104によって処理される。
光源103は、例えばプロジェクタで構成され、可視光又は赤外線レーザー等を投影することができる。このような構成によって、光源103は、対象物106を均一光や所定のパターン光で照明することができる。なお、撮像装置102及び光源103に替えて、撮像装置102と光源103とで構成されるレーザーレンジファインダ装置を使ってもよい。
あるいは、光源103を使わずに、2つの撮像装置102を用いて、パッシブに計測を行い、対象物の位置及び姿勢を計測するための情報を得てもよい。また、光源103を使わずに、1つの撮像装置102を用いてもよく、対象物106の位置及び姿勢を計測するための情報が得られるものであればよい。
情報処理装置104は、コンピュータなどの計算機およびハードディスクなどの補助記憶装置によって構成される。情報処理装置104は、所定のインタフェース機器を介してロボット101、撮像装置102、光源103、搬送装置105と接続されており、これらの機器と随時通信することができ、これらの機器の動作を制御する。また、情報処理装置104は、対象物106の三次元形状、ロボット101の作業手順などの情報を記憶装置に保持する。
本実施形態において、情報処理装置104は、撮像装置102から入力された画像情報をもとに、情報処理装置104に保持されている各種情報を参照して、対象物106の位置及び姿勢を計測(認識)する。そして、情報処理装置104は、対象物106の計測(認識)された位置及び姿勢に基づき、対象物106の把持位置とリリース位置を決定し、ロボット101の行動を計画し、その結果をロボット101に対して出力する。
搬送装置105は、対象物106を撮像装置102の計測可能範囲内へ搬送する。搬送装置105はベルトコンベアなどの装置によって構成されてよく、情報処理装置104は、この搬送装置105を制御し、動作・停止等を行わせる。
対象物106は、ロボットの操作により姿勢変更の処理がなされる対象物である。本実施形態においては、対象物106はトナーカートリッジであり、把持して搬送し姿勢変更させることが想定されるものとして説明する。
図2は本実施形態1における対象物106の姿勢変更を実現するためのロボットシステム100の機能要素の構成と機能要素間の関係を模式的に表現した図である。図2において、撮像装置102は、対象物106を撮像し画像情報を得る。撮像された画像情報は、画像取得部201により取得される。図2に示すように、情報処理装置104は、画像取得部201と、位置・姿勢計測部202(取得手段)と、操作位置決定部204(決定手段)と、行動計画部205(生成手段)とを備えるロボット制御装置である。
画像取得部201は、撮像装置102で撮像された画像情報を取得する。この撮像された画像情報は、位置・姿勢計測部202に出力されて使用される。なお、画像取得部201は、例えばキャプチャボードやRAM(メモリ)で構成されてよい。
位置・姿勢計測部202(取得手段)は、画像取得部201で取得した画像情報を入力として、対象物106の位置及び姿勢を計測(認識)する。具体的には、位置・姿勢計測部202は、取得された画像情報から、部品データベース203に蓄積される対象物106の部品種及び形状の情報を参照して対象物106の位置及び姿勢を決定(取得)する。そして、位置・姿勢計測部202は、この決定された位置及び姿勢を操作位置決定部204へ出力する。
位置・姿勢計測部202により参照される部品データベース203は、姿勢変更の対象となる対象物106の部品種及び形状の情報を保持している。保持されるデータの形態は、例えばCADデータやCGポリゴンなどのモデルデータであってよい。
操作位置決定部204(決定手段)は、位置・姿勢計測部202から出力される対象物106の位置及・姿勢情報を入力し、対象物106の操作位置として、少なくとも把持位置とリリース位置とを決定する。決定された操作位置(把持位置とリリース位置)は、行動計画部205へ出力される。
行動計画部205(生成手段)は、操作位置決定部204により決定された操作位置を入力として、ロボット101の行動を計画(生成)する。具体的には、行動計画部205は、操作データベース206に保持されている部品種と作業手順の情報を参照して、対象物106を操作するロボットの行動を計画する。行動計画部205は、計画されたロボット101の行動を、動作命令としてロボット101へ出力する。
操作データベース206は、行動計画部205が行動を計画する際に参照する部品種と作業手順の情報を保持する。行動計画部205は、適宜操作データベース206の情報を参照して、計画を作成する。ロボット101は、行動計画部205が出力する動作命令(行動)に従って動作する。
図3は、本実施形態におけるロボットシステム100の処理の流れを示すフローチャートである。図3に示される処理動作は、情報処理装置104の備えるCPUがプログラムを実行することによって達成される。以下、図3に従って処理の手順を説明する。
S1において、本実施形態におけるロボットシステム100の初期化を行う。具体的には、ユーザーがロボットシステム100を起動し、情報処理装置104にロボットシステム100を構築するためのプログラムがロードされる。ロードされたプログラムは、情報処理装置104中のメモリ上に展開されて実行可能な状態となる。また、ロボット101、撮像装置102において、機器パラメータの読み込みや初期位置への復帰などが行われ、使用可能な状態となる。
S2において、情報処理装置104は、搬送装置105を駆動して、撮像装置102が計測可能な範囲内に対象物106を配置する。また、画像取得部201は、撮像装置102を用いて対象物106に関する画像情報を取得する。
S3において、位置・姿勢計測部202は、対象物106の位置及び姿勢の計測を行う。ここで、図4を参照して、図3のS3における位置・姿勢計測処理の詳細を説明する。
図4は、本実施形態1におけるロボットシステム100を構成する情報処理装置104の位置・姿勢計測部202が実行する処理の流れを示すフローチャートである。図4に示される位置・姿勢計測部202の処理動作は、情報処理装置104のCPUがプログラムを実行することによって実現される。
S31において、位置・姿勢計測部202は、対象物106のパターンマッチングを行う。具体的には、位置・姿勢計測部202は、部品データベース203の情報を参照し、画像取得部201により取得された画像情報をもとにして、パターンマッチングにより対象物106の部品種を判断する。パターンマッチングの方法としては、例えば相関ベースマッチングが挙げられる。位置・姿勢計測部202は、部品データベース203が保持している複数種類の部品パターンと、入力された画像情報とを比較し、最も類似するパターンを推定することにより対象物106の部品種の決定を行う。ただし、パターンマッチングはこれに限定されず、対象物106の部品種を判別できれば他の処理でもよい。
S32において、位置・姿勢計測部202は、S31において判断された結果をもとにして、対象物106のモデルフィッティングを行う。具体的には、位置・姿勢計測部202は、例えば、均一照明を用いて撮像手段102が撮像した画像情報を用いて、対象物106のエッジと部品データベース203に保持されているCADデータを元にしたエッジモデルとのフィッティング処理を行う。位置・姿勢計測部202は、このようなフィッティング処理を行うことによって、対象物106の位置及び姿勢を計測することができる。あるいは、位置・姿勢計測部202は、均一照明に替えて、例えばマルチラインのパターン光を用いて対象物106の表面に投影されたパターンを検出し、三角測量の原理に基づき対象物106の表面の距離点群データを求めもよい。この場合、位置・姿勢計測部202は、求めた距離点群データと、部品データベース203中に保持されている点群モデルとのフィッティング処理を、ICP(Iterative Closest Point)アルゴリズムを利用して行うことができる。
S33において、位置・姿勢計測部202は、S32で判断された結果をもとにして、対象物106の欠損・欠品判定処理を行う。例えば、S32のモデルフィッティング処理において、部分的にマッチング度評価を行い、明らかにマッチしない場合、その部分に欠損・欠品があると判断することができる。S33の処理が終了した後、S4へ移行する。
図3に戻り、S4において、操作位置決定部204は、S3の計測結果に基づいて、対象物106の操作位置(把持位置及びリリース位置を含む)の決定を行う。ここで、図5を参照して、図3のS4における操作位置決定処理の詳細を説明する。
図5は、本実施形態1におけるロボットシステム100を構成する情報処理装置104の操作位置決定部204が実行する処理の流れを示すフローチャートである。図5に示される操作位置決定部204の処理動作は、情報処理装置104等のCPUがプログラムを実行することによって実現される。
S41において、操作位置決定部204は、S3で計測された対象物106の位置及び姿勢の結果を元に、対象物106の現在姿勢と目標姿勢とを比較し、姿勢を変える必要があるかどうかを判定する。この判定の結果、姿勢を変える必要がない場合は、S47の処理へ移行する。他方、姿勢を変える必要があると判定した場合はS42の処理へ移行する。
S42において、操作位置決定部204は、静的な操作のみを考慮して対象物106の姿勢変更ができるか否かを判定する。具体的には、操作位置決定部204は、例えば、現在姿勢と目標姿勢とのそれぞれで、把持可能な位置を求め、それら把持可能な位置が合致するか否かを判定する。この判定の結果、合致すると判定された場合には、静的な操作のみを考慮して姿勢変更ができるとして、S46の処理へ移行する。他方、合致しないと判定された場合、すなわち静的な操作のみでは姿勢変更ができず、動的に姿勢を変える必要があると判定した場合は、S43の処理へ移行する。
S43において、操作位置決定部204は、動的な操作を考慮すれば対象物106の姿勢変更ができるかを判定する。この判定は、物理シミュレーションを行ったり、ロボット101に実際に動作させた結果を蓄積するデータベースを参照したりすることによって行うことができる。この判定の結果、動的な操作を考慮しても、姿勢変更が困難な場合は、S44に移行する。他方、姿勢変更が可能であると判定した場合は、S45へ移行する。この判定の処理において、本実施形態では、物理シミュレーションを行って判定を行う場合を説明するが、本発明の適用範囲は、これに限定されず他の手法で判定の処理を行ってもよい。ここで、図6を参照して、図5のS43における動的な操作を考慮した対象物106の姿勢変更の可否の判定処理の詳細を説明する。
図6は、S43の処理内容を示すフローチャートである。図6に示される操作位置決定部204の処理動作は、情報処理装置104等のCPUがプログラムを実行することによって実現される。
S431において、操作位置決定部204は、ロボット101のエンドエフェクタが対象物106を把持可能な把持位置を求める。操作位置決定部204は、位置・姿勢計測部202から入力される位置及び姿勢の情報を元に、例えば対象物106に突起などの凹凸がある場合はその部分を避けるようにする。このようにして、ロボット101のエンドエフェクタ(図7の101a)が把持可能な把持位置を求める。
S432において、操作位置決定部204は、対象物106の支持基底面を、目標姿勢での接触面へ変化させるための、ロボット101の操作位置を求める。ここで、接触面とは、対象物106が載置される面に接触する対象物106の面をいう。図7は、対象物106とエンドエフェクタ101aとの関係を示す図であり、対象物106が載置される所定の面上に対象物106が置かれている様子を示す図である。図7において、対象物106の−Z方向のx−y平面が接触面に該当する。
初期姿勢が図7に示すような状態の対象物106を、+X方向のy−z平面が接触面になるように、対象物106を回転させた姿勢に変化させる場合を考える。すなわち、対象物106を、Y軸回りに711の方向へ+90度回転させた姿勢に変化させるように、ロボット101のエンドエフェクタ101aで把持して姿勢変更させる場合を考える。
図8は、図7の対象物106をY軸周りで回転させる場合に、Y軸方向から、対象物106を観察した様子を示す図である。
この場合、図8に示すように、対象物106をY軸回りに812の方向へ回転させる必要がある。図8では、回転前(姿勢変更前)の対象物106が破線で表され、それを把持するエンドエフェクタ101aも破線で表されている。ある程度回転が進んだ(θ)後(姿勢変更後)の対象物106が実線で示され、その対象物106を把持するエンドエフェクタ101aも実線で示されている。
ここで、対象物106に運動を発生させる要因として重力の影響を考慮する場合、回転角θは、支持基底面を変化させるために図8で示すθthを上回る位置まで回転させる必要がある。図8から理解されるように、回転量θが、θthを上まわれば、支持基底面が変化するので、そこまで回転させた状態で対象物106をリリースすれば、対象物106を所定の最終的な目標姿勢(位置及び姿勢)に向かわせることができる。
図6に戻り、S433において、操作位置決定部204は、ロボット101による対象物106のリリース位置を求める。具体的には、ロボット101が対象物106を回転させることで姿勢変更し、その後にリリースをするが、このリリース位置を求める。
図9は、エンドエフェクタ101aが対象物106を把持して回転させた後、エンドエフェクタ101aが開く様子を示す図である。図8と同様に、図9においては、エンドエフェクタ101aが開く前の位置が破線で示されており、開いた後のエンドエフェクタ101aの位置が実線で示されている。同様に、図9においては、エンドエフェクタ101aが開く前の対象物106が破線で示されており、エンドエフェクタ101aが開いた後の対象物106が実線で示されている。
図9に示す姿勢において、対象物106を把持しているロボット101のエンドエフェクタ101aが開くことで対象物106のリリースを行う。このリリースの際、対象物106の回転角度θとエンドエフェクタ101aが開いた幅aからリリース位置が求まる。図9に示すように、重力の影響によって、エンドエフェクタ101aが開くにつれて、対象物106が所定量移動する。
S434において、操作位置決定部204は、リリース時における対象物106に運動を発生させる要因の影響によって、対象物106に生じる運動を求める。本実施形態における対象物106に運動を発生させる要因とは、対象物106に加わる重力である。重力による影響としては、まず図10に示すように、リリース後の対象物106の傾きがある。
図10は、図9に示すようにロボット101のエンドエフェクタ101aが開くことで対象物106のリリースを行った後、重力によって対象物106が回転し傾く様子を示す図である。図10において、リリース直後の対象物106は破線で示されており、回転しθ’分だけ傾いた対象物106が実線で示されている。具体的には、リリース時のエンドエフェクタ101aの先端と、対象物106がエンドエフェクタ101aに接触している面と、対象物106が載置されるべき面との距離関係によって、対象物106の初期姿勢からの傾きがθからθ−θ’と変化する。言い換えれば、図10に示すように、リリース直後は対象物106の最下部の角と、対象物106の載置されるべき面との距離はhであるが、このhの分だけ、対象物106の最下部の角が落下する。他方、エンドエフェクタ101aの先端と未だ接触している部分はほとんど高さが変化しない。
この結果、対象物106は、リリース直後の初期姿勢からの傾きがθであるが、回転し移動することによって傾きがθ−θ’へと変化する。そのため、このθ’分の傾きが生じた後でも、支持基底面が目標姿勢における接触面と一致している必要がある。一致していれば、その状態からエンドエフェクタ101aを対象物106から離しても、対象物106の支持基底面が目標姿勢の接触面と一致するので、対象物106に目標姿勢をとらせることができる。
また、対象物106のθ’分の傾きは、エンドエフェクタ101aの先端を回転の中心とした回転運動で生じるが、その際、エンドエフェクタ101aが対象物106の回転の障害にならないようにする必要がある。
具体的には、図11に示すように、エンドエフェクタ101aの開く幅(開く量)が2aであるとすると、対象物106は傾くときにd×cosθ’の分だけ+Z側のエンドエフェクタ101aに接近する。したがって、対象物106が接近しても、対象物106とエンドエフェクタ101aの干渉を避けられるようにエンドエフェクタ101aの開く幅2aを設定する必要がある。
さらに、エンドエフェクタ101aが対象物106をリリースした際、対象物106はリリースされた姿勢から目標姿勢へ変化するが、例えば図12のようなリリース姿勢のときは、重力の影響で、今度はY軸回りに812の方向へ回転する。
このような回転の際にも、エンドエフェクタ101aが、対象物106のリリース姿勢から目標姿勢へ変化する軌道上にないように制御を行う必要がある。この制御のためには、リリース時のエンドエフェクタ101aの位置を最初から対象物106の軌道上に置かないように設計することが考えられる。あるいは対象物106のリリース姿勢から目標姿勢への変化の間に、エンドエフェクタ101aを動作させて軌道上で干渉しないよう制御することが考えられる。
以上説明したように、リリース時における対象物106に運動を発生させる要因の影響による対象物106の運動を求める。
図6に戻り、S435において、操作位置決定部204は、S431〜S434で求めた条件を元に、これらの条件を全て満たす条件があるかを判別する。この判別において、全て満たす条件が存在しない場合はS44へ移行する。他方、存在する場合はS45へ移行する。
図5に戻り、S44において、操作位置決定部204は、S43において動的な操作を考慮しても姿勢変更が実現できないと判断された場合、ロボット101を一時停止させる。このようにすることによって、対象物106にロボット101に対して外力を印加することで現在の姿勢を変更することができる。また、操作する対象を変更したり、システムを新たに実行、再起動させたりすることが可能となる。
S45において、操作位置決定部204は、S43で存在すると判別された条件の組み合わせを用いて目標状態の手前の最適な位置で対象物をリリースするように、対象物106のリリース位置を決定する。
すなわち、操作位置決定部204は、対象物106が、把持位置から目標状態における目標位置に至る間のいずれかに、最適なリリース位置を決定する。このリリース位置は、目標位置よりも手前に決定されてよい。
本実施形態では、S434において、リリース時における対象物106に運動を発生させる要因の影響によって、対象物106に生じる運動を求めている。このため、操作位置決定部204は、対象物106が、リリース位置からの運動により目標位置及び姿勢へ至るよう、把持位置及びリリース位置を決定することになる。
このようにして、操作位置決定部204が最適なリリース位置を決定した後、決定された把持位置及びリリース位置を含む操作位置の情報に基づいて、ロボット101の行動計画が決定される(図3のS5)。
ここでS45において、操作位置決定部204は、操作位置に複数の条件が存在する場合は任意の組み合わせを選定できる。しかし、一般的にはタクトタイム(tact time)最小化が求められる場合が多いので、対象物回転角θが最小となるような組み合わせを選定すればよい。タクトタイム以外の条件が重要である場合は、他の条件に基づき、組み合わせを選定してよい。このような組み合わせを選定され、決定された後、図3のS5へ移行する。
S46において、操作位置決定部204は、S42で判定された静的な操作のみ考慮して実現できる姿勢変更動作を行うための操作位置を決定する。この決定された操作位置に基づき、ロボットの行動計画が決定される。具体的には、リリース状態と目標姿勢が一致するように決定された操作位置を元に、ロボット101の行動計画が決定される。
S47において、操作位置決定部204は、S41で判定された姿勢変更の必要がないという決定に基づき行動計画を計画するための操作位置の決定を行う。具体的には、現在の姿勢を維持するように操作位置を決定し、引き続き、ロボット101の行動計画を決定処理へ移行するために、S5へ移行する。
図3に戻り、S5において、行動計画部205は、S4で決定された操作位置に基づき、これら操作位置を実現するためのロボット101の行動計画を決定する。行動計画部205は、行動計画の決定の際は、S4において決定された操作位置を元に、操作データベース206に蓄積されている部品種と作業手順の情報を参照して、行動計画を決定する。この行動計画で計画された動作は、S6におけるロボット動作で用いられる。
S6において、行動計画部205は、S5で決定したロボット101の行動計画に基づき、所定の動作命令をロボット101に出力する。この動作命令によって、ロボット101が、行動計画に従った動作を実行する。
S7において、位置・姿勢計測部202は、画像取得部201により取得された画像情報を元に、搬送装置105を通じて搬送されてくる次の対象物106が存在するか否かを検知する。
次の対象物106が存在する場合には、S2に戻り、次の対象物106に対する処理が続行される。次の対象物106が存在しない場合には、本実施形態1における計測その他の動作処理を終了する。
以上説明したように、本実施形態によれば、対象物106の位置及び姿勢を計測して、対象物106がどの部品でどのような位置及び姿勢かに基づき、ロボット101による対象物106の操作位置を決定する。
ここで、対象物106の姿勢を変える必要があり、かつ静的な操作のみを考慮したのでは姿勢変更が1回の動作で実現できない場合、対象物106に運動を発生させる要因を考慮して動的な操作を行う。その際、対象物106の姿勢変更を行う操作位置を決定するという動作命令をロボット101に送り、ロボット101はその動作命令に従って対象物106を把持する。このような処理を実行することによって、対象物106の姿勢変更を行う場合において、持ち替え動作や仮置き動作を行うことなく、対象物106を姿勢変更することができるロボット101の行動を計画することができる。また、本実施形態によれば、想定していない対象物106を操作する場合でも、対応することが可能である。
なお、本実施形態の図7では対象物106を直方体形状である例を説明したが、対象物106の面が平面ではなく凹凸があった場合でも本実施形態を適用することができる。例えば、目標姿勢における対象物106の接触面に凹凸があった場合、その凹部分を覆うように対象物106のバウンダリーボックス(Boundary Box)を仮定し、バウンダリーボックス上で擬似的に支持基底面を考え、姿勢変更を行えばよい。
このようにして、本実施形態によれば、対象物106の姿勢変更前後の操作位置(把持位置及びリリース位置を含む)を決定することで、ロボット101による対象物106の持ち替え動作や仮置き動作を減らしている。したがって、本実施形態1によれば、より少ない動作で対象物106の姿勢変更をすることができる。その結果、タクトタイムをより短縮することができる。また、単腕のロボット101で操作する例を説明したが、単腕であるため、より簡易なシステムで対象物106の姿勢変更を実現することができる。
実施形態2
本実施形態に係るロボットシステムは、対象物106を目標状態へ遷移させるためのバリエーションとして、データベースを用いて操作位置を決定してロボット101を動作させ、対象物106を目標姿勢へ変化させることができる。
実施形態1においては、物理シミュレーションを用いて対象物106の動作を計算によって求めた。それに対して、本実施形態においては、物理シミュレーションを行わずに動作データベースを参照することで操作位置を決定してロボット101を動作させ、対象物106を目標姿勢へ変化させることができる。
図13は、本実施形態における対象物106の姿勢変更を実現するためのロボットシステム1300の機能要素の構成と機能要素間の関係を模式的に表現した図である。図2と比較すれば、操作位置決定部204a(決定手段)の動作が、図2の操作位置決定部204と異なる。また、図3に示す構成においては、図2と異なり、動作データベース207(保持手段)が追加されている。
本実施形態に係る操作位置決定部204aは、位置・姿勢計測部202からの位置及び姿勢情報を入力として、対象物106の操作位置である把持位置と、リリース位置と、を決定する。操作位置決定部204aは、動作データベース207の対象物動作の情報を参照して、対象物106の操作位置である把持位置と、リリース位置と、を決定する。操作位置決定部204aが決定した操作位置(把持位置及びリリース位置を含む)は、行動計画部205へ出力される。
動作データベース207は、操作位置決定部204aが操作位置を決定する際に参照する対象物106の動作の情報を保持している。操作位置決定部204aは、適宜動作データベース207の情報を参照して操作位置を決定する。
ここで、動作データベース207のデータベースの作成方法について説明する。上述した実施形態1においては、物理シミュレーションを行うことによって、操作位置を決定しているため、動作データベース207のような構成を必要としなかった。そこで、本実施形態では、まず、ヒューリスティックな手法を適用して対象物106を操作する手法について述べる。
具体的には、予め対象物106の動作を記録しておいたデータベースの情報を参照し、その結果からロボット101で対象物106を扱う際の対象物106の姿勢に最も近い姿勢を求め、その動作をロボット101で再現している。つまり、現在姿勢と目標姿勢のそれぞれに対して、ロボット101で扱う対象物106の状態と、データベースに蓄積されている情報を比較することで、データベースの姿勢をロボット101で再現する。このようなデータベースの情報は、予め人間が動作した結果を用いて構築してもよいし、ロボット101が実際に動作して行った結果を用いて構築してもよい。なお、人間と対象物106の動作をデータベース化する手法としては、人間の上肢と対象物106にマーカーを取り付けて、モーションキャプチャーシステムを用いて取得する手法が考えられる。しかし、人間と対象物106の動作を取得できれば他の方法でもよい。また、ロボット101と対象物106の動作をデータベース化する手法としては、ロボット101の軌道データから位置及び姿勢や関節角度の情報を取得し、カメラなどを用いて対象物106の動作を記録する等の技術も考えられる。しかし、ロボット101と対象物106の動作を取得できれば他の方法でもよい。
以上述べたように、本実施形態によれば、対象物106の物理シミュレーションを実施せずとも対象物106の姿勢変更を実現することができる。すなわち、本実施形態によれば、複雑な物理シミュレーションに替えて、動作データベース207を用いることによって対象物106を姿勢変更できるという効果を奏する。
実施形態3
本実施形態に係るロボットシステムは、対象物106が内容物を収容する場合、その内容物の量と偏りまで計測し、操作位置を決定することができる。
上述した実施形態1、2では対象物106の内容物については考慮していなかったが、内容物が含まれる容器を対象物106として取り扱うことはできた。
他方、本実施形態においては、対象物106に内容物を含む場合、内容物の量と偏りまで計測し、操作位置を決定することで、内容物を含み質量分布が偏っている対象物106の姿勢変更をより安定的に実行することができる。
本実施形態において、想定する対象物106は、中に何かを入れる中空構造の物体であり、例えばトナーカートリッジのような容器であるものとして説明する。また、内容物とは、対象物106の中に入っているべき物であり、例えばトナーカートリッジ内に入っているトナーのようなものでよい。
図14は本実施形態における対象物106の姿勢変更を実現するためのロボットシステム1400の機能要素の構成と機能要素間の関係を模式的に表現した図である。このロボットシステム1400は、撮像装置102と、情報処理装置104b(ロボット制御装置)と、ロボット101と、とから構成される。情報処理装置104bは、図2の情報処理装置104と比較して、下記の点が異なる。
図14の情報処理装置104bの操作位置決定部204b(決定手段)は、図2の操作位置決定部204の処置と異なる処理動作を実行する。また、図2と比較して、図4においては、内容物計測部208(判定手段)と、状態データベース209と、が追加されている。
操作位置決定部204bは、位置・姿勢計測部202からの位置及び姿勢情報と内容物計測部208からの内容物の量と偏りとの状態情報を入力として、対象物106の操作位置である把持位置と、リリース位置と、を決定する。操作位置決定部204bは、決定した操作位置(把持位置及びリリース位置)を、行動計画部205へ出力する。
内容物計測部208(判定手段)は、画像取得部201が取得した画像情報を入力として、対象物106の内容物の量と偏りとの状態を認識する(判定する)。内容物計測部208は、この認識の際には、状態データベース209の情報を参照して、対象物106の状態を元に対象物106のパラメータ情報を決定する。また、内容物計測部208は、決定したパラメータ情報を、操作位置決定部204bへ出力する。
状態データベース209は、姿勢変更の対象となる対象物106のパラメータ情報を保持している。パラメータ情報とは、例えば、対象物106の内容物の量と状態を対応付けたテーブルの形で保持されている情報である。内容物計測部208は、適宜、状態データベース209の情報を参照する。
図15は、本実施形態におけるロボットシステム1400を実現するための処理の流れを示すフローチャートである。図15に示される処理動作は、情報処理装置104bの備えるCPUがプログラムを実行することによって実現される。この図15のフローチャートは、図3のフローチャートと比較すれば、内容物計測S8が追加されている点が異なる。
以下、図15に従って、本実施形態における情報処理装置104bの処理の手順を説明するが、S8、S4以外は、図3のフローチャートで示した処理と同様であるので、その説明を省略する。
S8において、内容物計測部208は、内容物計測を実行する。図16は、本実施形態におけるロボットシステム1400を構成する内容物計測部208の処理の流れを示すフローチャートである。図16は、図15におけるS8と、S4と、を詳細に示したフローチャートである。図16に示される内容物計測部208の処理動作は、情報処理装置104bの備えるCPUがプログラムを実行することによって実現される。
図16において、まず、S8に該当するS81からS82の処理の手順を説明する。
S81において、内容物計測部208は、対象物106の内容物の有無の判定を行う。内容物計測部208は、この判定の際に、状態データベース209が保持している対象物106の内容物の量と状態とを対応付けたテーブルの情報を参照し、対象物106の中に内容物が含まれているかの確認を行う。この確認の結果、内容物計測部208が、対象物106の中に内容物がないと判定した場合は、判定後、対象物中身判定処理が終了され、S4の処理の中のステップS402の処理へ移行する。他方、内容物があると判定した場合は、S82の処理へ移行する。
S82において、内容物計測部208は、対象物106の内容物の量と分布の判定を行う。この判定では、内容物の量が空の状態と比較してどの程度どの部分に存在するかが判定される。内容物計測部208は、この判定の際に、状態データベース209が保持している対象物106の内容物の量と状態とを対応付けたテーブルの情報を参照し、対象物106の中に内容物がどの程度どの部分に含まれているかの確認を行う。内容物計測部208は、この判定の後、対象物中身判定処理を終了し、S4の処理の中のステップS401の処理へ移行する。
次に、図16において、図15のS4に該当する各処理について説明する。S4に該当する各処理は、操作位置決定部204bが実行する。
S401において、操作位置決定部204bは、S82で判定された対象物106の内容物の量と分布に合わせてロボット101の操作位置を設定するように計画が行われる。もし、対象物106中に内容物の偏りがあれば、その偏り近傍を把持するように計画が行われ、より重心に近い位置をロボット101が把持できるように操作位置が計画において設定される。その後、ステップS41へ移行し、図5と同様の処理が行われ、ロボット操作の計画が作成されるが、S401において設定された操作位置の計画がS41以降の計画に影響を与える。
S402において、操作位置決定部204bは、ロボット101の操作位置を内容物の影響を考慮せずに計画するという処理を行う。その後、S41へ移行する。図16におけるS41〜S47の処理は、図5で説明した処理と同様であるので、その説明を省略する。
以上述べたように、本実施形態によれば、対象物106の内容物の量と偏りを判定し、より重心に近い位置をロボット101で把持するよう操作位置を決定することにより、対象物106をより安定的に姿勢変更を行うことができる。すなわち、本実施形態によれば、対象物106の内容物の量と偏りを考慮して操作位置を決定することができ、対象物106をより安定的に姿勢変更することができるという効果を奏する。
実施形態4
本施形態に係るロボットシステムは、姿勢変更前後の対象物106の質量と把持部分にかかる力のモーメントを計測することによって対象物106の姿勢変更を行うことができる。
上述した実施形態1、2、3では撮像装置102を用いて対象物106の情報を取得したが、本実施では力覚センサを用いて対象物106の情報を取得することで、より確実に対象物106の姿勢変更を実現することができる。
図17は本実施形態におけるロボットシステム1701を構成する機器構成を説明する図である。図1と比較すれば、図17のロボットシステム1701においては、力覚センサ1707(取得手段)がロボット101に追加されている。また、図17のロボットシステム1701は、図1に示した情報処理装置104と異なる情報処理装置104c(ロボット制御装置)を備えている。なお、図17の機器構成は一例であり、本実施形態の技術的範囲を限定するものではない。
図18は本実施形態に係るロボットシステム1701の機能要素の構成と機能要素間の関係を模式的に表現した図である。ロボットシステム1701は、対象物106の姿勢変更を実現するためのロボットシステムである。
図18において、力覚センサ1707は、ロボット101のエンドエフェクタ101a部分に取り付けられており、ひずみゲージや圧電素子で構成されている。力覚センサ1707は、エンドエフェクタ101aで把持した対象物106の質量とエンドエフェクタ101a部分にかかる力のモーメントを計測する6軸力覚センサ(Force/Torqueセンサ)である。対象物106の質量と、エンドエフェクタ101a部分のモーメントが計測できれば、他の手段でもよいし、質量とモーメントとをそれぞれ別のセンサで計測してもよい。力覚センサ1707が取得した力覚情報(対象物106の質量と、エンドエフェクタ101a部分のモーメント)は情報処理装置104cが処理を行う。
図18に示す情報処理装置104cは、図2に示した情報処理装置104と比べて、異なる構成を採用している。情報処理装置104cの操作位置決定部204cは、図2の操作位置決定部104とは異なる処理動作を実行する。また、情報処理装置104cは、図2の情報処理装置104と比べて、さらに力覚情報取得部301と、質量・力のモーメント計測部302(計測手段)と、が追加されている。
操作位置決定部204c(決定手段)は、位置・姿勢計測部202からの対象物106の位置及び姿勢情報と、質量・力のモーメント計測部302からの質量・力のモーメント情報と、を入力として、対象物106の操作位置を決定する。ここで、操作位置とは対象物106の把持位置とリリース位置とである。決定された操作位置(把持位置及びリリース位置)は、行動計画部205へ出力される。
力覚情報取得部301は、力覚センサ1707で取得した力覚情報を取得する。取得した力覚情報は、質量・力のモーメント計測部302で使われる。力覚情報取得部301は、例えば所定のCPUやRAM(メモリ)で構成される。力覚センサ1707の信号を受信することができる手段であればどのような構成でもよい。
質量・力のモーメント計測部302(計測手段)は、力覚情報取得部210で取得した力覚情報を入力として、対象物106の質量とロボット101のエンドエフェクタ101aにかかる力のモーメントを認識(計測)する。認識した結果を操作位置決定部204cへ出力する。
図19は、本実施形態におけるロボットシステム1701を構成する情報処理装置104cの、特に操作位置決定部204cの処理の流れを示すフローチャートである。特に、図6に示すフローチャートと同様に、動的な操作を考慮すれば対象物106の姿勢変更ができるか否かを判断する処理を表す。図19に示すフローチャートは、図6に示すフローチャートと比較して、S434に替えて、S434aが追加されているが、他の処理はほぼ同様であり、その説明を省略する。図19に示される操作位置決定部204cの処理動作は、情報処理装置104cの備えるCPUがプログラムを実行することによって実現される。
図6に示すS434において、操作位置決定部204は、リリース時における対象物に運動を発生させる要因の影響による、対象物106の運動を求めている。
S434aにおいて、操作位置決定部204cは、対象物106の質量とロボット101のエンドエフェクタ101aにかかる力のモーメントの情報に基づいて、対象物106の運動を求める。
つまり、上述した実施形態1において、操作位置決定部204は、図10で説明したように、リリース後の対象物106の傾きについて、対象物106の重心を位置及び姿勢情報から体積の中心と仮定して計算を行っている。
これに対して、本実施形態のS434aにおいて、操作位置決定部204cは、力覚センサ1707によって得られた力覚情報に基づき、直接的に重心位置を求めることにより傾きを計算する。
図20は、対象物106の中心に重心がない場合の計算の様子を示す図である。上記実施形態1等においては、操作位置決定部204等は、力覚情報を用いずに、対象物106の中心が重心であると仮定しているので、図20に示す破線矢印のように支持基底面を計算していた。これに対して、本実施形態においては、操作位置決定部204cは、力覚情報を用いることで対象物106の内容物の質量分布まで考慮して計算する。そのため、本実施形態に係る操作位置決定部204cは、対象物106の重心位置が変化し、図20における実線矢印で示されるように支持基底面が変化することまで計算することが可能である。
以上説明したように、本実施形態によれば、対象物106の質量とロボット101のエンドエフェクタ101aにかかる力のモーメントを計測することにより支持基底面を直接的に求めている。したがって、本実施形態に係る情報処理装置104c及びロボットシステム1701は、対象物106に内容物がある場合でもより正確に対象物106の姿勢変更を実現することができる。すなわち、本実施形態によれば、力覚センサ1707を用いて対象物106の質量やエンドエフェクタ101aにかかる力のモーメントを考慮することができた。したがって、より正確に対象物106を姿勢変更できるという効果を奏する。
実施形態5
本施形態に係るロボットシステムは、対象物106に慣性力を働かせることで姿勢変更を行うことを可能とする。
上述した実施形態1、2、3、4では、対象物106に、対象物に運動を発生させる要因として重力を考慮する場合の姿勢変更について述べた。これに対して、本実施形態では、対象物106に運動を発生させる要因の別の例として慣性力を考慮する場合について説明する。このように、本実施形態によれば、慣性力を考慮することによって、持ち替え動作や仮置き動作を実行することなく、ロボット101による対象物106の姿勢変更を、より幅広く実現することができる。
以下、本実施形態では慣性力を考慮する場合の姿勢変更の例を説明する。その動作主体としては、図1に示すロボットシステム100、特に情報処理装置104を前提としているが、図17に示すロボットシステム1701でも同様の姿勢変更を行わせることができる。
図21は、本実施形態における慣性力の考慮を行う場合の姿勢変更の概念を説明する図である。
図21(a)は本実施形態における対象物106の初期状態を示す図である。対象物106が図21(a)のように置かれている状態から、対象物106の−X方向の面を接触面とするように姿勢変更を行うことを考える。
図21(b)は対象物106に対してロボット101で操作を行い対象物106が傾き始めた状態を示した図である。ロボット101は図21(b)の矢印で示す位置・方向で対象物106に対して外力を印加する。この結果、対象物106はその力を受けて傾く。なお、図21(b)においては、傾く前の対象物2106の位置が破線で示されている。このときロボット101を制御する情報処理装置104、特に操作位置決定部204は、図5に示した処理を行っている。特に、図21(b)においては、操作位置決定部204は、S45に示した操作を実行しており、目標状態の手前でリリースする操作位置を決定している。
図21(c)は、ロボット101が所定の位置でリリースを行った後、慣性力によって、対象物106が回転を続け、最終的に−X方向の面が接触面となり、対象物106が姿勢変更を完了した状態を示す図である。なお、図21(c)においては、リリースを行った直後の対象物2106bが破線で示されている。
以上述べたように、本実施形態によれば、対象物106に対してロボット101で操作を加えることにより、対象物106に運動を発生させる要因として慣性力を考慮することでできる例を説明した。このように、本実施形態によれば、慣性力を考慮して、対象物106の姿勢変更を実現することができる。すなわち、本実施形態によれば、対象物106に運動を発生させる要因として、重力以外の、特に慣性力を考慮して対象物106の姿勢変更をすることができるという効果を奏する。
なお、本実施形態では、慣性力を考慮する例を説明したが、重力と慣性力の双方を考慮するように構成してもよい。また、慣性力と重力とのいずれか一方を考慮するようにユーザーが選択できるように構成してもよい。
<他の構成例>
図22は、上記各実施形態の各部を構成することのできるコンピュータ420の構成の例を示す。例えば、図1の例に示す情報処理装置104を、コンピュータ420で構成してもよい。また、情報処理装置104の各部を、それぞれコンピュータ(例えばコンピュータ420)で構成することができる。図13、図14の例に示す情報処理装置104a、104bについても、同様にコンピュータ420で構成することができる。
CPU421は、ROM422や、RAM423、外部メモリ424等に格納されたプログラムを実行することによって、上記各実施形態の各部を実現する。ROM422は上記CPUが実行するプログラムや各種データを保持することができる。RAM423は、撮像装置102が撮像した画像データや、対象物106の位置や姿勢を保持することができる。
また、外部メモリ424は、ハードディスク、光学式ディスクや半導体記憶装置等で構成してよく、部品データベース203や、操作データベース206等を構成することができる。また、入力部425は、キャプチャボード等で構成してよく、画像取得部201を構成することができる。
表示部426は、各種ディスプレイで構成することができる。そして、操作者に対して、情報処理装置104等のロボットの制御の結果や、各種処理の結果等を表示することができる。通信I/F427は、外部と通信を行うインタフェースであり、インターネット等を通じてロボット101等を操作することなどを実現することができる。また、コンピュータ420の上記説明した各部はバス428によって相互に接続されている。
<変形例>
以上説明した実施形態1〜5においては、対象物106に運動を発生させる要因として、重力や慣性力の例を説明した。しかし、外的な状態として対象物に影響を与えるものであればどのような要因でもロボット制御に取り入れることができる。
また、本実施形態において、対象物に内容物が含まれている例を説明したが、対象物106の中に入っているべき物(内容物)であればどのようなものであってもよい。例えば、一例として本施形態で説明したトナーが挙げられる。つまり、トナーのような粉体であってもよいし、そのほか、固体や液体、粒体等であってもよい。
また、上記各実施形態は、以下の処理を実行することによっても実現される。即ち、上述した各実施形態の1以上の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給することによって実現してよい。その場合、当該システム或いは装置のコンピュータ(またはCPUやMPUまたは1つ以上のプロセッサ等)がプログラムを読み出して処理を実行する。また、そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供してもよい。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100・・・ロボットシステム、101・・・ロボット、102・・・撮像装置、103・・・光源、104・・・情報処理装置、105・・・搬送装置、106・・・対象物、107・・・力覚センサ、201・・・画像取得部、202・・・位置・姿勢計測部、203・・・部品データベース、204・・・操作位置決定部、205・・・行動計画部、206・・・操作データベース、207・・・動作データベース、208・・・内容物計測部、209・・・状態データベース、301・・・力覚情報取得部、302・・・質量・力のモーメント計測部

Claims (10)

  1. 対象物を操作するロボットを制御するロボット制御装置であって、
    前記対象物の位置及び姿勢を取得する取得手段と、
    前記取得手段により取得された前記対象物の第1の位置及び姿勢と、操作後の前記対象物の目標状態である第2の位置及び姿勢と、前記対象物に発生する運動とに基づいて、前記ロボットが前記対象物を把持する把持位置及びリリースするリリース位置を含む操作位置を決定する決定手段と、
    前記決定手段により決定された前記操作位置に基づいて、前記ロボットが前記対象物の姿勢を変更する行動計画を生成する生成手段と、を備え
    前記決定手段は、前記対象物が、前記把持位置から前記第2の位置に至る間に、前記リリース位置を決定する、
    ことを特徴とするロボット制御装置。
  2. 対象物を操作するロボットを制御するロボット制御装置であって、
    前記対象物の位置及び姿勢を取得する取得手段と、
    前記取得手段により取得された前記対象物の第1の位置及び姿勢と、操作後の前記対象物の目標状態である第2の位置及び姿勢と、前記対象物に発生する運動とに基づいて、前記ロボットが前記対象物を把持する把持位置及びリリースするリリース位置を含む操作位置を決定する決定手段と、
    前記決定手段により決定された前記操作位置に基づいて、前記ロボットが前記対象物の姿勢を変更する行動計画を生成する生成手段と、を備え、
    前記決定手段は、前記対象物が、リリース位置からの運動により前記第2の位置及び姿勢へ至るよう、前記操作位置を決定する、
    ことを特徴とするロボット制御装置。
  3. 前記決定手段は、前記第1の位置及び姿勢から、前記対象物の支持基底面を判定し、判定された前記支持基底面が、前記対象物がリリースされた後に前記第2の位置及び姿勢における前記対象物が載置される面へ接触する接触面となるよう、前記操作位置を決定する、ことを特徴とする請求項1または2に記載のロボット制御装置。
  4. 前記決定手段は、前記対象物に作用する重力及び慣性力の少なくとも一方を算出することにより、前記操作位置を決定する、ことを特徴とする請求項1からのいずれか1項に記載のロボット制御装置。
  5. 前記ロボット及び前記対象物の動作の情報を保持する保持手段をさらに備え、
    前記決定手段は、前記保持手段が保持する前記動作の情報を参照することにより、前記操作位置を決定する、ことを特徴とする請求項1からのいずれか1項に記載のロボット制御装置。
  6. 前記対象物に収容される内容物の量及び偏りを判定する判定手段をさらに備え、
    前記決定手段は、さらに、前記判定手段により判定された前記内容物の前記量及び偏りに基づいて、前記操作位置を決定する、ことを特徴とする請求項1からのいずれか1項に記載のロボット制御装置。
  7. 前記対象物の質量と、前記ロボットが前記対象物を把持する部分に作用する力のモーメントを計測する計測手段をさらに備え、
    前記決定手段は、さらに、前記計測手段により計測された前記質量及び前記力のモーメントに基づいて、前記操作位置を決定する、ことを特徴とする請求項1からのいずれか1項に記載のロボット制御装置。
  8. 対象物を操作するロボットを制御するロボット制御方法であって、
    前記対象物の位置及び姿勢を取得するステップと、
    前記取得された前記対象物の第1の位置及び姿勢と、操作後の前記対象物の目標状態である第2の位置及び姿勢と、前記対象物に発生する運動とに基づいて、前記ロボットが前記対象物を把持する把持位置及びリリースするリリース位置を含む操作位置を決定するステップと、
    前記決定された前記操作位置に基づいて、前記ロボットが前記対象物の姿勢を変更する行動計画を生成するステップと、を含み、
    前記決定するステップは、前記対象物が、前記把持位置から前記第2の位置に至る間に、前記リリース位置を決定する、
    ことを特徴とするロボット制御方法。
  9. 対象物を操作するロボットを制御するロボット制御方法であって、
    前記対象物の位置及び姿勢を取得するステップと、
    前記取得された前記対象物の第1の位置及び姿勢と、操作後の前記対象物の目標状態である第2の位置及び姿勢と、前記対象物に発生する運動とに基づいて、前記ロボットが前記対象物を把持する把持位置及びリリースするリリース位置を含む操作位置を決定するステップと、
    前記決定された前記操作位置に基づいて、前記ロボットが前記対象物の姿勢を変更する行動計画を生成するステップと、を含み、
    前記決定するステップは、前記対象物が、リリース位置からの運動により前記第2の位置及び姿勢へ至るよう、前記操作位置を決定する、
    ことを特徴とするロボット制御方法。
  10. コンピュータを、請求項1からのいずれか1項に記載のロボット制御装置の各手段として機能させるためのコンピュータプログラム。
JP2015188931A 2015-09-25 2015-09-25 ロボット制御装置、ロボット制御方法及びコンピュータプログラム Active JP6643020B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015188931A JP6643020B2 (ja) 2015-09-25 2015-09-25 ロボット制御装置、ロボット制御方法及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015188931A JP6643020B2 (ja) 2015-09-25 2015-09-25 ロボット制御装置、ロボット制御方法及びコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2017061025A JP2017061025A (ja) 2017-03-30
JP2017061025A5 JP2017061025A5 (ja) 2018-11-01
JP6643020B2 true JP6643020B2 (ja) 2020-02-12

Family

ID=58430372

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015188931A Active JP6643020B2 (ja) 2015-09-25 2015-09-25 ロボット制御装置、ロボット制御方法及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6643020B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6914528B2 (ja) * 2017-11-21 2021-08-04 ウエノテックス株式会社 タイヤ移動装置および廃タイヤ処理システム
JP6833777B2 (ja) 2018-09-10 2021-02-24 株式会社東芝 物体ハンドリング装置及びプログラム
JP7378934B2 (ja) 2019-01-29 2023-11-14 キヤノン株式会社 情報処理装置、情報処理方法及びシステム
JP7136729B2 (ja) 2019-03-20 2022-09-13 ファナック株式会社 ロボットを用いて負荷の重量及び重心位置を推定するための装置、方法、プログラム、制御装置及びロボットシステム
JP6966117B1 (ja) * 2020-08-12 2021-11-10 株式会社MaaS Tech Japan 情報検索プログラム及び情報検索装置
CN112720495A (zh) * 2020-12-30 2021-04-30 深兰人工智能芯片研究院(江苏)有限公司 机械手的控制方法、装置、拾取设备及存储介质
WO2024038323A1 (en) * 2022-08-17 2024-02-22 Nomagic Sp z o.o. Item manipulation system and methods

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0281102A (ja) * 1988-09-16 1990-03-22 Sanyo Electric Co Ltd 把持ロボットの行動計画方法
JP2010184300A (ja) * 2009-02-10 2010-08-26 Seiko Epson Corp 姿勢変更システムおよび姿勢変更方法
JP2012206219A (ja) * 2011-03-30 2012-10-25 Seiko Epson Corp ロボット制御装置及びロボットシステム
JP5733516B2 (ja) * 2011-05-12 2015-06-10 株式会社Ihi 移動体把持装置と方法
JP6021533B2 (ja) * 2012-09-03 2016-11-09 キヤノン株式会社 情報処理システム、装置、方法及びプログラム

Also Published As

Publication number Publication date
JP2017061025A (ja) 2017-03-30

Similar Documents

Publication Publication Date Title
JP6643020B2 (ja) ロボット制御装置、ロボット制御方法及びコンピュータプログラム
JP5949242B2 (ja) ロボットシステム、ロボット、ロボット制御装置、ロボット制御方法、およびロボット制御プログラム
JP6807949B2 (ja) 干渉回避装置
US9415511B2 (en) Apparatus and method for picking up article randomly piled using robot
US20130158947A1 (en) Information processing apparatus, control method for information processing apparatus and storage medium
JP6931457B2 (ja) モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
JP6541397B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP6892286B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP6057862B2 (ja) 部品供給装置および部品供給装置のプログラム生成方法
JP2018161692A (ja) 情報処理装置、情報処理方法およびプログラム
JP6950638B2 (ja) マニピュレータ制御装置、マニピュレータ制御方法、及びマニピュレータ制御プログラム
JP6700726B2 (ja) ロボット制御装置、ロボット制御方法、ロボット制御システムおよびコンピュータプログラム
JP2009523623A (ja) ワーク自動把持の方法と装置
JP2017136677A (ja) 情報処理装置、情報処理方法、ロボット制御装置及びロボットシステム
JP2014205209A (ja) ロボットシステム、及びロボットシステムの制御方法
JP2013184279A (ja) 情報処理装置、情報処理方法
JP4794011B2 (ja) 画像処理装置、およびロボット制御システム
JP6415167B2 (ja) 搬送制御装置、搬送制御方法、プログラムおよび搬送システム
JP6662836B2 (ja) 収容領域又は治具にワークを配置するワーク配置システム
JP7331527B2 (ja) ロボットの動作を決定する装置、方法およびプログラム
JP7028092B2 (ja) 把持姿勢評価装置及び把持姿勢評価プログラム
US20190278991A1 (en) Control apparatus, robot system, and method of detecting object
JP5857803B2 (ja) 産業用機械の干渉判定装置、干渉判定方法、コンピュータプログラムおよび記録媒体
JP5659787B2 (ja) 操作環境モデル構築システム、および操作環境モデル構築方法
JP7519222B2 (ja) 画像処理装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180920

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180920

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191114

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200106

R151 Written notification of patent or utility model registration

Ref document number: 6643020

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03