説明

マニピュレータ制御システム、マニピュレータ制御方法およびプログラム

【課題】重量が未知の把持対象物をマニピュレータが把持する際に、マニピュレータから把持対象物が滑り落ちることなく、かつ把持対象物がもろい物でも破壊せずに確実に把持・移動できるようにする。
【解決手段】このマニピュレータ作業支援システムは、マニピュレータ11の把持部10に設けられた成分分析装置13により非接触で計測された材質と、把持部10に設けられた形状計測センサ14により非接触で測定された3次元形状データと物体情報データベース43bのデータを基に対象物Aの重量を算出し、算出した対象物Aの重量から把持部10が対象物Aを把持するための把持力を算出する形状計測処理用PC42と、この形状計測処理用PC42により求められた把持力にてマニピュレータ11を動作させる制御用PC41とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、把持対象物をマニピュレータで把持および移動するためのマニピュレータ制御システム、マニピュレータ制御方法およびプログラムに関する。
【背景技術】
【0002】
人が直接手で掴んで作業を行えないような物体を人の代わりに把持して移動や操作を行うために、マニピュレータが利用されている。
【0003】
マニピュレータを用いた作業を行う場合、把持対象物は、特定されていることが多く、その物体形状、重量、把持位置、必要把持力、物体設置位置などの情報は既知であるものとして扱われることが多い。
【0004】
把持対象物の設置位置や形状が不明な場合、画像処理システムあるいはそれに代わる計測システムと組み合わせて対象物の設置位置や形状を計測することで、把持位置や姿勢を修正することが可能である。
【0005】
従来、把持対象物の重量が不明確な場合にマニピュレータの把持力を適切に調整する方法として、例えば把持物体を指内で滑らせることで押付け力と摩擦力より摩擦係数を推定して適切な把持力を決定する方法がある(例えば特許文献1参照)。
【0006】
また、マニピュレータの指先に貼り付けた曲面弾性体と把持物体との固着状態から物体の滑り量を測定して把持力の調整に活用する方法もある(例えば特許文献2参照)。
【特許文献1】特開2005−144573
【特許文献2】特開2000−254884
【発明の開示】
【発明が解決しようとする課題】
【0007】
上述した従来のマニピュレータの物体把持力調整方法の場合、把持対象物の固有情報に基づいてマニピュレータ把持力調整を行うため、一般的に既知の対象物に対してしか把持作業が行えない。
【0008】
これでは、汎用性がなく、様々な物体の把持作業を想定したとき、それぞれの対象物固有の情報を予め設定しておくことは困難であり、マニピュレータが未知の対象物に対しても作業を行えるように柔軟に対応できるようにすることが望ましい。
【0009】
そのためには、把持対象物の形状のみならず重量やそれに適した把持位置、把持力などを自動的に判別できるようにする必要がある。
物体の外形(形状)は、カメラによるステレオ視の技術やレーザスキャン計測技術などの従来技術により3次元的に測定することが可能である。
【0010】
しかしながら、形状計測を行うことで未知の形状の対象物を扱う場合、対象物の重量までは分からないため、適切な把持力を決定することができないという問題があった。
【0011】
物体の把持作業においてマニピュレータが過大な把持力で物体を把持すると、対象物を握りつぶしてしまうことになる。また、この逆に把持力が不足した場合は、対象物が滑り落ちたりする恐れがある。このため、把持対象物の重量に応じた適切な把持力を決定することは重要である。
【0012】
上述した先行技術に見られる手法は、重量が未知の把持対象物に対しても重量を推定して把持力を適切に調整することを可能にしているものの、物体把持後の指内での滑りを検出して重量推定を行っているため、把持対象物に接触したときの初期の推定値に大きな誤差があった場合は、把持力不足によって把持対象物を滑り落としたり、逆に把持力過多のため対象物を握りつぶしたりしてしまう恐れがある。
【0013】
本発明はこのような課題を解決するためになされたもので、重量が未知の把持対象物をマニピュレータが把持部で把持する際に、マニピュレータの把持部から把持対象物が滑り落ちることなく、かつ把持対象物がもろい物でも破壊せずに確実に把持・移動することができるマニピュレータ制御システム、マニピュレータ制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0014】
上記した課題を解決するために、本発明のマニピュレータ制御システムは、把持対象物を把持・移動するための把持部を有するマニピュレータと、前記把持部に設けられ、接近した前記把持対象物に対して光または放射線を放射してその材質を非接触で計測する成分分析器と、前記把持部に設けられ、接近した前記把持対象物に対して光または放射線を放射してその立体形状を非接触で測定する形状計測センサと、前記成分分析器により計測された前記把持対象物の材質と前記形状計測センサにより計測された立体形状とから前記把持対象物の体積を算出する体積算出部と、既知の把持対象物の形状、物質の密度情報、把持位置、把持力を含む物体情報を蓄積したデータベースと、前記体積算出部により計算された前記把持対象物の体積と、前記成分分析器により計測された把持対象物の材質をキーに前記データベースから読み出した物質の密度情報とから前記把持対象物の重量を算出する重量算出部と、前記重量算出部により算出された前記把持対象物の重量から前記把持対象物の把持力を算出する把持力算出部と、前記把持力算出部により算出された把持力にて前記マニピュレータを動作させる制御部とを具備することを特徴とする。
【0015】
本発明のマニピュレータ制御方法は、把持対象物を把持・移動するための把持部を有するマニピュレータを制御して把持対象物を把持・移動するマニピュレータ制御方法において、前記把持部に設けられた成分分析器が、接近した前記把持対象物に対して光または放射線を放射してその材質を非接触で計測するステップと、前記把持部に設けられた形状計測センサが、接近した前記把持対象物に対して光または放射線を放射してその立体形状を非接触で測定するステップと、前記成分分析器により計測された前記把持対象物の材質と前記形状計測センサにより計測された立体形状とからコンピュータが前記把持対象物の体積を算出するステップと、計算した前記把持対象物の体積と、計測した前記把持対象物の材質をキーにデータベースから読み出した物質の密度情報とから前記コンピュータが前記把持対象物の重量を算出するステップと、算出した前記把持対象物の重量から前記コンピュータが、前記把持対象物を前記マニピュレータが把持するための把持力を算出するステップと、算出した把持力にて前記コンピュータが前記マニピュレータを動作させるステップとを有することを特徴とする。
【0016】
本発明のプログラムは、把持対象物を把持・移動するための把持部を有するマニピュレータをコンピュータが制御するためのプログラムにおいて、前記コンピュータを、前記把持部に設けられた成分分析器が前記把持対象物に対して光または放射線を放射して非接触で計測した材質と、前記把持部に設けられた形状計測センサが、前記把持対象物に対して光または放射線を放射して非接触で測定した立体形状とから前記把持対象物の体積を算出する体積算出部と、既知の把持対象物の形状、物質の密度情報、把持位置、把持力を含む物体情報を蓄積したデータベースと、前記体積算出部により計算された前記把持対象物の体積と、前記成分分析器により計測された前記把持対象物の材質をキーに前記データベースから読み出した物質の密度情報とから前記把持対象物の重量を算出する重量算出部と、前記重量算出部により算出された前記把持対象物の重量から前記把持対象物の把持力を算出する把持力算出部と、前記把持力算出部により算出された把持力にて前記マニピュレータを動作させる制御部として機能させることを特徴とする。
【0017】
すなわち、本発明では、重量が未知の把持対象物をマニピュレータで把持する際に、把持対象物の形状と質量を光または放射線を放射して非接触で計測し、その計測結果と質量から把持対象物の重量を計算により求め、把持対象物を把持するための適正な把持力を決定してから、マニピュレータで把持対象物を把持する。つまり重量が未知の把持対象物に対して事前にマニピュレータの把持力を適切に調整する。
【発明の効果】
【0018】
本発明によれば、重量が未知の把持対象物をマニピュレータが把持部で把持する際に、マニピュレータの把持部から把持対象物が滑り落ちることなく、かつ把持対象物がもろい物でも破壊せずに確実に把持・移動することができる。
【発明を実施するための最良の形態】
【0019】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
(第1実施形態)
まず、図1を参照してマニピュレータ制御システムの一つの実施形態であるマニピュレータ作業支援システムについて説明する。図1は第1実施形態のマニピュレータ作業支援システムの構成を示す図である。
【0020】
この第1実施形態のマニピュレータ作業支援システムは、マニピュレータ11と、このマニピュレータ11と通信ケーブル20を介して接続されたマニピュレータコントローラ30と、このマニピュレータコントローラ30とLAN21などのネットワークを介して接続された複数のコンピュータ(制御用コンピュータ41、形状計測処理用コンピュータ42、物体情報データベース用コンピュータ43、状態表示コンピュータ44)とから構成されている。
【0021】
以下、コンピュータを「PC」と称す。各PCには、CPU、ROM、RAMなどのメモリ、ハードディスク装置などの記憶装置、マウス、キーボードなどの入力装置、ディスプレイ、外部インターフェースなどの出力装置が備えられている。
【0022】
ハードディスク装置にはCPUを動作させるためのオペレーティングシステム(以下「OS」と称す)および制御プログラムなどが記憶されている。マウス、キーボードなどは、オペレータによる各種指示操作を受付け、その指示をCPUへ入力する。
【0023】
マニピュレータ11は、複数の関節11a、11b、11cと、腕部11d,11eと、関節11a、11b、11cを各方向へ駆動する駆動部11fと、腕部11eの先端に設けられた把持部10とを有している。
【0024】
把持部10の先端には、グリッパ部12が設けられている。グリッパ部12は、把持対象物A(以下「対象物A」と称す。)を把持するために指状の先端部12aを有しており、2つの先端部12aを開閉動作することにより対象物Aを把持または離すことができる。グリッパ部12には、先端部12aの把持力を計測する把持力計測センサ(図示せず)が設けられている。
【0025】
把持部10には、グリッパ部12の先端、つまり手先に加わる外力(力とモーメント)を計測する6軸力センサ15が備えられている。この6軸力センサ15の上には、グリッパ部12の先端の方向に向けて成分分析装置13と形状計測センサ14とが設けられている。
【0026】
成分分析装置13としては、例えば蛍光X線分析装置や赤外分光光度計測装置などの、放射線または光学系を用い、対象物Aに触れることなく(非接触で)、対象物Aの成分を分析してその構成を同定できる装置を利用する。
【0027】
蛍光X線分析装置は、X線管球から発生されたX線を測定対象物Aに照射し、その測定対象物Aから放射された蛍光X線を受けて分析する装置である。この測定対象物Aから放射される蛍光X線のエネルギーは、元素に固有のエネルギー値を持っているため、蛍光X線を測定することで測定対象物に含まれている元素の種類を特定することが可能である。
【0028】
赤外分光光度計測装置は、対象物に赤外光を照射して、対象物からの透過光、反射光、あるいは散乱光を分光し、それぞれ透過スペクトル、反射スペクトルあるいは拡散スペクトルを得ることにより、対象物の物性情報を得る手法である。得られたスペクトルはその物質特有のものであり、これにより構成材料の同定を行うことが可能である。
【0029】
形状計測センサ14は、例えば2つのCCDカメラを用いたステレオ視の技術またはレーザスキャンの技術を利用して3次元形状(立体形状)の認識を行う。レーザスキャンを行う場合の装置は、測定対象物に対してレーザ光を照射してから、そのレーザ光が測定対象物に反射して戻るまでの時間差により対象物Aとの距離を計測する機構を、直接またはミラーの反射を用いて2次元的に走査することで対象物の3次元形状を測定する。ここではCCDカメラを使用するものとして説明する。
【0030】
なお、成分分析装置13、形状計測センサ14の種類は、ここに例示したものだけに限定されるものではなく、同じ目的であれば他の手段を用いてもよい。また、外力計測用のセンサとして6軸力センサ15を用いたが、これに限らずロードセルを用いるなど、作業・操作内容に応じて代替して使用してもよい。
【0031】
マニピュレータコントローラ30には、CPU31、メモリ32、制御用インターフェース34、通信インターフェース35などが備えられている。
【0032】
マニピュレータコントローラ30のメモリ32には、各関節11a、11b、11cを駆動するモータを制御するためのモータドライバや制御ソフトウェア等が収容されている。
【0033】
制御用インターフェース34は、マニピュレータコントローラ30に通信ケーブル20を接続するためのインターフェースであり、マニピュレータ11を動作させるための制御信号を通信ケーブル20を通じてマニピュレータ11へ送信する。
【0034】
制御用インターフェース34は、マニピュレータ11の成分分析装置13および形状計測センサ14により測定された測定データを通信ケーブル20を通じて受信し、CPU31へ渡す。
【0035】
通信インターフェース35は、LAN接続ボードなどであり、マニピュレータコントローラ30をLAN21に接続する。通信インターフェース35は、制御用PC41からの動作指令を受信してCPU31に渡す。
【0036】
CPU31は、通信インターフェース35から渡された動作指令をマニピュレータ11用の制御信号にして制御用インターフェース34を通じてマニピュレータ11へ送信する。
【0037】
また、CPU31は、制御用インターフェース34により受信された測定データを通信インターフェース35からLAN21を通じて各PC(制御用PC41、形状計測処理用PC42、物体情報データベース用PC43、状態表示PC44)へ伝送する。
【0038】
制御用PC41は、マニピュレータ11の動作の決定とマニピュレータコントローラ30に対して各軸の動作指令を与える。制御用PC41は、決定したマニピュレータ11の動作およびマニピュレータコントローラ30に対して各軸の動作指令などをディスプレイ41aに表示する。
【0039】
制御用PC41のCPUは、成分分析装置13により計測された対象物Aの材質と形状計測センサ14により計測された対象物Aの3次元形状(立体形状)とから対象物Aの体積を算出する体積算出部として機能する。
【0040】
制御用PC41のCPUは、体積算出部により計算された対象物Aの体積と、成分分析装置13により計測された対象物Aの材質をキーに物体情報データベース用PC43の物体情報データベース43bから読み出した物質の密度情報とから対象物Aの重量を算出する重量算出部として機能する。
【0041】
制御用PC41のCPUは、重量算出部により算出された把持対象物の重量からマニピュレータ11が対象物Aを把持するための把持力を算出する把持力算出部として機能する。
【0042】
制御用PC41のCPUは、把持力算出部により算出された把持力にてマニピュレータ11を動作させる制御部として機能する。
【0043】
形状計測処理用PC42のCPUは、手先(グリッパ部12)の形状計測センサ14から得られた対象物Aの形状計測結果の情報に基づいて対象物Aの3次元形状のデータを演算(計算)して求め、演算結果(計算結果)の3次元形状のデータをディスプレイ42aに表示する。
【0044】
物体情報データベース用PC43は、既知の把持物体固有の情報(3次元の形状データ、物質の密度情報、把持位置、把持力、重量、重心位置、把持可能位置などの物体情報)が登録(蓄積)された物体情報データベース43bを有している。
物体情報データベース43bは、一つのキーワードから関連する情報を検索可能であり、例えば計算された把持対象物の体積と、成分分析器13により計測された把持対象物の材質をキーにして物質の密度情報を読み出し可能である。
【0045】
物体情報データベース用PC43のCPUは、計測された対象物Aの形状データを検索キーとして、物体情報データベース43bから該当対象物A(物体)のデータ(特性データなど)を検索する検索部と、この検索部により検索された対象物Aのデータ(特性データなど)をディスプレイ43aに表示(出力)する出力部として機能する。
【0046】
物体情報データベース用PC43のCPUは、検索部による検索の結果、対象物Aの情報が物体情報データベース43bに存在しない場合、その対象物Aを未知の物体として、計測および計算により求めた情報(形状データ、材質など)を物体情報データベース43bに追加登録する登録部として機能する。
【0047】
物体情報データベース用PC43のCPUは、検索部による検索の結果、対象物Aの情報が物体情報データベース43bに存在しない場合、その対象物Aを未知の物体とし、未知の物体について、対象物Aの形状に類似する物体のデータ(特性データなど)を物体情報データベース43bから読み出してそのデータ(特性データなど)を対象物Aのデータとするデータ選出部として機能する。
【0048】
物体情報データベース用PC43のCPUは、データ選出部により対象物Aのものとされた類似する物体の特性データを基に(キーとして)物体情報データベース43bに予め記憶された把持位置、把持力の中から適切な把持位置、把持力を決定する把持力決定部として機能する。
【0049】
状態表示PC44は、形状計測センサ14により計測された対象物Aの形状を基にマニピュレータ11の把持部10が対象物Aを把持する3次元空間上の位置を求める。そして、状態表示PC44は、マニピュレータ11の姿勢やその把持部10と対象物Aとの位置姿勢関係を3次元のコンピュータグラフィック(以下「CG」と称す。)でディスプレイ44aの画面に表示する。
【0050】
なお、各PC41〜44は、LAN21に接続されており、互いに情報を送受信することができる。ここでは各処理毎にPCを分けて設置する例を示したが、各PCの処理機能を一つにまとめて1台のPCに集約してもよい。
【0051】
続いて、図2を参照してこの第1実施形態のマニピュレータ作業支援システムの動作を説明する。図2はこの第1実施形態のマニピュレータ作業支援システムの処理動作を示すフローチャートである。
【0052】
この第1実施形態のマニピュレータ作業支援システムの場合、制御用PC41のCPUは、把持部10の先端部12a、つまり手先のCCDカメラから得られた映像を画像処理することによって対象物Aの3次元空間上の位置(座標)を認識し、マニピュレータコントローラ30に対してマニピュレータ11を動作させるための指示を送り、まずマニピュレータ11を動作させて、その先端部12a、つまり手先を対象物Aの近傍まで移動し(図2のステップ101)、対象物Aに接近させる。なお、ステップは処理工程を意味し、以下では、ステップを「S」と称す。
【0053】
このとき、対象物Aの大まかな3次元空間上の位置(座標)は、予め物体情報データベース43bに登録されているものとしても良く、手先のCCDカメラの映像に基づく画像処理によって認識しても良い。
【0054】
次に、マニピュレータ11の手先に設けた形状計測センサ14により対象物Aの3次元形状の計測が行われる(S102)。
【0055】
形状計測センサ14では、ステレオ視による画像処理やレーザスキャン装置による計測を行う上で、手先位置固定の固定視点からでは対象物Aの一部しか計測できない恐れがある。
【0056】
このため、制御用PC41のCPUは、対象物Aの周囲を周回するようにマニピュレータ11の先端を移動させる。この移動に伴い形状計測処理用PC42のCPUは、対象物Aの外観を計測した計測結果を合成処理することで、対象物Aの3次元形状データを得る。
【0057】
次に、形状計測処理用PC42のCPUは、得られた対象物Aの3次元形状データを用いて対象物Aの体積を算出する(S103)。
【0058】
このときの形状計測によって得られるデータは、3次元の位置情報を有する計測点群であるので、形状計測処理用PC42のCPUは、これらの点群を表面として構成するソリッドモデルを生成する。ソリッドモデルから体積を算出する手法は、3次元CADなどで広く使用されており、同様の手法を用いるものとする。
【0059】
次に、形状計測処理用PC42のCPUは、形状計測センサ14の情報に基づき手先位置と対象物Aまでの距離を計算し、手先を対象物Aに接近させる。
【0060】
その後、形状計測処理用PC42のCPUは、成分分析装置により対象物Aの成分を分析する(S104)。
【0061】
成分分析には、まず、手先に搭載した蛍光X線分析装置にてX線を照射して対象物Aより放射される蛍光X線の強度を測定する。
【0062】
次に、形状計測処理用PC42のCPUは、測定した蛍光X線の強度スペクトルの値から物体情報データベース43bを参照することで対象物Aの構成材料を選定し、その材料をキーワードにしてさらに物体情報データベース43bに登録されている物質の密度情報を参照することで、対象物Aの密度を算出する(S105)。
【0063】
また、形状計測処理用PC42のCPUは、その物質によって構成される一般的な物体について物体情報データベース43bを参照することでその物体の摩擦係数の値も読み出す。なお、本実施形態では対象物Aは、均一の材料にて構成されているものとして扱うものとする。
【0064】
次に、形状計測処理用PC42のCPUは、算出した対象物の体積と密度の情報を用いて重量=体積×密度の関係式より対象物Aの重量を算出する(S106)。
【0065】
次に、形状計測処理用PC42のCPUは、算出した対象物Aの重量と、物体情報データベース43bの参照により得られた物体の摩擦係数値より、適した把持力を決定し(S107)、決定した把持力をLAN21を通じて制御用PC41へ通知する。
【0066】
次に、把持力が通知された制御用PC41のCPUは、形状計測センサ14を用いて対象物Aの位置姿勢を確認しながら、グリッパ部12の先端部12aを対象物Aを把持可能位置へ移動し(S108)、先に決定した把持力になるように把持力計測センサ(図示せず)から得られる計測値で把持力を調整しながら先端部12aを閉じてゆき対象物Aを把持する(S109)。
【0067】
最後に、対象物Aを持ち上げた後、グリッパ部12に装着している6軸力センサ15により対象物Aの正確な重量を測定し、その測定結果と計算で求めた重量とを比較して誤差分に相当する把持力を調整(修正)する(S110)。
【0068】
例えば、計算した重量よりも実際の重量が重ければ、把持力を増加させることでグリッパ部12の指部から対象物Aが滑り落ちることを防止する。この逆に指部に滑り触覚センサを搭載しておき、対象物Aの滑りを検出した際に把持力を増加させるといった方法も有効である。
【0069】
このようにこの第1実施形態によれば、マニピュレータ11で対象物Aを把持する前に対象物Aの形状の認識と重量の推定(計算)を行うので、始めにグリッパ部12で対象物Aを掴むときから適切な把持力で対象物Aを把持することができ、かつ対象物Aの設置位置の変化に自律的に対応可能であり、対象物Aの把持・移動作業時にマニピュレータ11の把持力が弱すぎて対象物Aが落下したり、マニピュレータ11の把持力が強すぎて対象物Aを握りつぶす(破損)などのミスを極力なくすことができる。
【0070】
(第2実施形態)
次に、図3を参照して第2実施形態について説明する。図3は第2実施形態のマニピュレータ作業支援システムの処理動作を示すフローチャートである。なお以下の実施形態において、第1実施形態と同一の構成および動作工程には同一の符号を付し重複する説明は省略する。
【0071】
この第2実施形態は、第1実施形態に示したマニピュレータ作業支援システムの構成において、対象物Aの形状計測を行うことで、把持可能な位置を探索して自動的に設定する動作の一例である。
【0072】
この第2実施形態のマニピュレータ作業支援システムでは、形状計測処理用PC42のCPUは、上記第1実施形態と同様の処理で重量を推定、つまり計算により求めた後(S101〜S106)、対象物Aより得た3次元形状のデータより対象物Aの重心位置を計算により求める(S207)。
【0073】
次に、形状計測処理用PC42のCPUは、求めた対象物Aの重心位置近傍でかつグリッパ部12にて把持可能な位置を特定(決定)する(S208)。重心位置近傍とは、重心からの距離が予め設定された範囲内をいい、この例では例えば数cm以内をいう。
【0074】
把持可能位置は、グリッパ部12の指形状に依存するが、例えば単純な2本指の開閉機構からなるグリッパ部12の場合は、指の開口幅と把持部の接触面積から決定される。
【0075】
重心位置付近位置で把持が不可能な場合は、重心位置を中心にしてなるべくその近傍にて把持可能位置を探索して決定する。
【0076】
次に、形状計測処理用PC42のCPUは、計算により求めた対象物Aの重量から対象物Aに適した把持力を決定する(S209)。このとき、把持位置が重心よりもずれる場合は、その把持位置を持つことによって発生する回転モーメントの値をパラメータの一つとして把持力を決定し、決定した把持力を制御用PC41へ通知する。
【0077】
把持力の通知を受けた制御用PC41のCPUは、形状計測センサ14により測定された測定値によって対象物Aの位置姿勢を確認しながらマニピュレータ11を動作させてグリッパ部12(手先)を形状計測処理用PC42により決定された把持可能位置へ移動し(S210)、その位置でグリッパ部12にて対象物Aを把持する(S211)。
【0078】
このとき制御用PC41のCPUは、把持力計測センサ(図示せず)の把持力測定値が先に決定した力になるようにグリッパ部12の把持力を調整しながらグリッパ部12の先端部12a(手先)を閉じてゆき対象物Aを把持する。
【0079】
なお、手先に加わる外力の計測センサとして6軸力センサ15を利用した場合は、力成分のみならずモーメント成分の測定も可能であるため、モーメントの大きさから対象物Aの重心位置を測定することが可能であり、計算で求めた重心位置を補正(修正)する(S212)。
【0080】
このようにこの第2実施形態によれば、第1実施形態の機能に加えて、把持位置が不確定な対象物Aについてもその位置を自律的に決定および修正することが可能な物体の把持・移動作業を実現することができる。
【0081】
(第3実施形態)
次に、図4を参照して第3実施形態について説明する。図4は第3実施形態のマニピュレータ作業支援システムの処理動作を示すフローチャートである。
この第3実施形態では、第1実施形態に示した物体情報データベース用PC43の物体情報物体情報データベース43bに、把持対象物の特性データを収納しておく。
【0082】
図4に示すように、物体情報データベース43bに、各々の対象物の正確な形状、重量、重心位置、把持可能位置、把持位置の摩擦係数、適切な把持力など、物体固有の情報を登録しておく。
【0083】
次に、マニピュレータ11による把持作業時に、第1実施形態と同様に、形状計測処理用PC42のCPUは、グリップ部12(手先)の形状計測センサ14により計測された対象物Aの3次元形状計測データを取得し(S302)、この3次元形状データを基に物体情報データベース43bを参照することで、対象物Aの密度を計算する(S303)。
【0084】
そして、形状計測処理用PC42のCPUは、該当する物体固有の情報を、物体情報データベース43bから検索して取得することで適切な把持力を決定し、制御用PC41のCPUがその決定した把持力でマニピュレータ11を動作させてそのグリップ部12(手先)を対象物Aの位置へ移動し(S304)、対象物Aを把持する(S305)。
【0085】
対象物Aの3次元形状計測データを用いた検索方法の例としては、3次元空間上で表現される対象物Aの形状の特徴を表す頂点の位置関係やサイズなどの比較によって行う方法がある。
【0086】
この場合、物体固有の情報を物体情報データベース43bに登録できるので、その把持にかかわる情報だけでなく、例えばその対象物Aの利用方法の情報なども登録しておくことができる。
【0087】
例えば、対象物Aがネジ回しなどの工具であれば、ネジ山に先端を押し付け長手軸方向に回転させるといった、その工具の使用方法の情報を物体情報データベース43bから取得して作業に利用することができる。
【0088】
このようにこの第3実施形態によれば、物体情報データベース43bに、既知の把持対象物の正確な形状、重量、重心位置、把持可能位置、把持位置の摩擦係数、適切な把持力などを登録しておくことで、対象物Aについて詳細な情報を得ることができ、正確な把持動作を行うことができる。また、把持動作のみならず対象物Aを把持した状態での作業に応用することが可能である。
【0089】
(第4実施形態)
次に、図5を参照して第4実施形態について説明する。図5は第4実施形態のマニピュレータ作業支援システムの処理動作を示すフローチャートである。
【0090】
上記第3実施形態では、物体情報データベース43bの情報を予め人の手によって入力および登録する必要があり、既知の対象物Aにしか対応できない。
【0091】
そこで、この第4実施形態では、第1実施形態および第2実施形態の機能によって取得した未知の対象物Aの形状や重量、適切な把持力などのデータを物体情報データベース43bに登録することで、対応可能な対象物Aを自動的に追加するものである。
【0092】
すなわち、この第4実施形態のマニピュレータ作業支援システムでは、形状計測処理用PC42のCPUは、上記第1実施形態と同様の処理で重量を推定した後(S101〜S106)、対象物Aより得た3次元形状のデータより対象物Aの重心位置を計算により求める(S207)。
【0093】
次に、形状計測処理用PC42のCPUは、求めた対象物Aの重心位置近傍でかつグリッパ部12にて把持可能な位置を特定(決定)する(S208)。重心位置近傍とは、予め設定された数cm以内をいう。
【0094】
把持可能位置は、グリッパ部12の指形状に依存するが、例えば単純な2本指の開閉機構からなるグリッパ部12の場合は、指の開口幅と把持部の接触面積から決定される。
【0095】
重心位置付近位置で把持が不可能な場合は、重心位置を中心にしてなるべくその近傍にて把持可能位置を探索して決定する。
【0096】
次に、形状計測処理用PC42のCPUは、計算により求めた対象物Aの重量から対象物Aに適した把持力を決定する(S209)。このとき、把持位置が重心よりもずれる場合は、その把持位置を持つことによって発生する回転モーメントの値をパラメータの一つとして把持力を決定し、決定した把持力を制御用PC41へ通知する。
【0097】
把持力の通知を受けた制御用PC41のCPUは、形状計測センサ14により測定された測定値によって対象物Aの位置姿勢を確認しながらマニピュレータ11を動作させてグリッパ部12(手先)を形状計測処理用PC42により決定された把持可能位置へ移動し(S210)、その位置でグリッパ部12にて対象物Aを把持する(S211)。
【0098】
このとき制御用PC41のCPUは、把持力計測センサ(図示せず)の把持力測定値が先に決定した力になるようにグリッパ部12の把持力を調整しながらグリッパ部12の先端部12a(手先)を閉じてゆき対象物Aを把持する。
【0099】
なお、手先に加わる外力の計測センサとして6軸力センサ15を利用した場合は、力成分のみならずモーメント成分の測定も可能であるため、モーメントの大きさから対象物Aの重心位置を測定することが可能であり、計算で求めた重心位置を補正(修正)する(S212)。
【0100】
最後に、形状計測処理用PC42のCPUは、取得した未知の対象物Aの形状や重量、適切な把持力などのデータを物体情報データベース43bに登録し、物体情報データベース43bの内容を更新する(S413)。
【0101】
このようにこの第4実施形態によれば、対象物Aの固有情報が既知であるものに加え、未知であるものも計測を行い計算した物体の情報を、物体情報データベース43bに追加登録することで、同じ物体を再度把持するときは物体情報データベース43bを参照することで、人手によるデータベース登録がない物体についても適正な把持力で物体を把持・移動することができる。
【0102】
(第5実施形態)
次に、第5実施形態について説明する。
第5実施形態は、第4実施形態に関連し、対象物Aの形状が物体情報データベース43bに登録されている物体のデータと一致しないものの近似、つまり形状が類似する場合に、その類似した物体のデータに基づいて対象物Aの特性を計算で求めて、マニピュレータ11を制御し対象物Aを把持するものである。
【0103】
例えばネジ回しなどの工具は大きさが異なる類似した形状のものが多数存在する。また、これら工具は、形が異なっていても工具としての使用方法は同じである。
【0104】
上記第4実施形態で示したように、形状計測の結果、物体情報データベース43bに存在する形状のものとは一致せず、対象物Aが未知形状であるものの、物体情報データベース43bに類似形状のデータが存在する場合、形状計測処理用PC42のCPUは、類似形状のデータを持つ物体の情報から、未知の対象物Aの重量を計算で求め、把持位置や把持力などを推定して決定すると共に、未知の対象物Aについての使用方法を既知の物と同じであるものとして物体情報データベース43bに追加登録する。
【0105】
第1実施形態および第2実施形態で示したような対象物Aの特性データの算出も併せて行うことで、特性の推定精度をより向上することができる。
【0106】
なお、実際に把持作業を実施した後には、その対象物の特性情報を物体情報データベース43bに追加して登録を行い、再活用できるようにする。
【0107】
このようにこの第5実施形態によれば、対象物Aの固有情報が未知であるものに対しても、物体情報データベース43bに類似する形状の物体情報が存在すれば、その物体情報を基に対象物Aの特性を計算により求めて、把持に係るパラメータを決定することができ、計測だけによる特性推定と併せて推定精度を向上させた物体の把持・移動作業を実現することができる。
【0108】
(第6実施形態)
次に、図6を参照して本発明に係る第6実施形態について説明する。図6は第6実施形態のマニピュレータの構成を示す図である。
この第6実施形態では、第1実施形態に示した構成に加えて、マニピュレータ11の手先部(把持部10)に搭載された非接触ICタグのリーダライタ61と、リーダライタ61がデータを書き込んだ非接触ICタグとしての情報タグ60を対象物Aに貼り付けるタグ設置機構62とから構成されている。
【0109】
リーダライタ61は、対象物Aの特性データを情報タグ60に記憶する情報書込部として機能する。
【0110】
また、リーダライタ61は、対象物Aに取り付けられている情報タグ60から、光または電波による無線通信で対象物Aの特性データを読み込み、把持力決定部である形状計測処理用PC42へ渡す情報読取部として機能する。
【0111】
情報タグ60の片面には、粘着剤が塗布されている。タグ設置機構62は、伸縮可能な筒状部62aを有している。筒状部62aは、吸着ノズルとなっており、その先端に、粘着剤が塗布されていない情報タグ60の他の面が吸引などで吸着されている。
【0112】
タグ設置機構62は、リーダライタ61によって特性データが書き込まれた情報タグ60を対象物Aに取り付ける取付部として機能する。
【0113】
このタグ設置機構62の場合、情報タグ60を対象物Aに押し付けて吸引を停止することで、情報タグ60を対象物Aに貼り付ける装置である。
【0114】
第1実施形態乃至第5実施形態で示した物体情報データベース43bを検索、参照する方式は照合の際に処理時間が発生すると共に、物体情報データベース43bの運用・管理が必要となる。
【0115】
そこで、この第6実施形態では、一度推定した対象物の特性データをリーダライタ61が情報タグ60に書き込み、その情報タグ60をタグ設置機構62が把持対象物に貼り付ける。なお、情報タグ60は、貼り付けるだけでなく、磁石などで取り付けても良い。
【0116】
このようにすることで、次回、同じ対象物Aを把持するときには、対象物Aに貼り付けられた情報タグ60に記憶された特性データをリーダライタ61が読み取り(読み込み)、形状計測処理用PC42に入力することで、形状計測処理用PC42のCPUは、当該対象物Aの適切な把持位置や把持力などの把持に係るパラメータを、測定および計算によらずに瞬時に決定することができる。
【0117】
情報タグ60としては、この例のような電気的に読み書き可能なICタグの他、2次元バーコードをその場で印刷して作成して利用してもよい。なお、2次元バーコードの読み込みは、視覚センサによって行うため、形状計測用カメラを把持部10に搭載するようにする。また、情報タグ60に特性データ自体を書き込むのではなく、物体情報データベース43bの参照先のアドレスやパスを情報タグ60に記憶してもよい。
【0118】
このようにこの第6実施形態によれば、一度推定した対象物Aの把持に係る特性データ、つまりパラメータなどを情報タグ60に書き込み対象物Aに貼り付けておくことで、次回の把持作業時に、計測や計算および物体情報データベース43bの参照などを行うことなく、瞬時に物体の特性を取得し、適正な把持力で対象物Aを把持し移動作業を行うことができる。
【0119】
(第7実施形態)
次に、図7を参照して第7実施形態について説明する。図7は第7実施形態の状態表示画面の一例を示す図である。
この第7実施形態は、第1実施形態に示した構成において、マニピュレータ11を操作するオペレータが状態表示PC44のディスプレイ44aに表示された状態表示を確認して操作を行うことで、マニピュレータ11の状態の確認と指示を与えられるようにしたものである。
【0120】
状態表示PC44のCPUは、マニピュレータ11自身の姿勢やその手先の位置姿勢、また周囲の環境構造物を、視覚的に分かりやすいように3次元グラフィック処理にてディスプレイ44aに表示を行う。
【0121】
ディスプレイ44aの状態表示画面71には、対象物Aの外形とその周辺の環境構造物がリアルに表示される。オペレータが状態表示画面71の操作カーソル72を、マウスなどで移動して対象物Aの表示を選択すると、状態表示PC44のCPUは、物体情報表示ウインドウ73をポップアップ表示する。
【0122】
物体情報表示ウインドウ73には、物体情報データベース43bに登録された対象物Aの材質や重量などの特性データおよび各計測装置により測定された対象物Aの材質や重量などの特性データが表示される。
【0123】
ここで、表示する特性データには、第1実施形態乃至第3実施形態で示した成分分析装置13および形状計測装置14による計測結果と形状計測処理用PC42による算出結果とを用いると共に、物体情報データベース用PC43の物体情報データベース43bに登録されている物体情報を検索により読み出して表示する。
【0124】
また、マウスなどにより、状態表示画面71の対象物Aの表示が選択されたことで、状態表示PC44のCPUは、把持作業開始のトリガ信号をLAN21を通じて制御用PC41へ送信して、トリガ信号を受信した制御用PC41のCPUがマニピュレータコントローラ30に対して把持作業開始の制御指令を出すようにしても良い。
【0125】
このようにこの第7実施形態によれば、オペレータが視覚的にロボットの状態と対象物Aの特性データを把握することが可能であり、画面上に表示されている対象物Aを選択することで、対象物Aの材質や重量などの特性データが表示されるので、オペレータは、これを見ながら物体の把持・移動作業を行うことができる。
【0126】
以上説明したように上記実施形態によれば、マニピュレータ11の把持作業の適用範囲を拡大することができ、例えば家庭環境など多種多様な対象物が存在する空間での作業を行うロボットへの応用につなげることが可能である。
【0127】
なお、本発明は上記実施形態のみに限定されるものではなく、変形が可能である。上記各実施形態では、多軸および多関節のマニピュレータ11を用いたが、本発明は、上記実施形態のみに限定されるものではなく、一軸のもの(関節のないもの)でもよく、物体を把持する機構に広く適用可能である。
【0128】
また、上記実施形態では、対象物Aの材質や形状を計測する計測器をマニピュレータ11の手先に搭載する例を示したが、計測器の搭載位置は、マニピュレータ11の手先の位置に限定されるものではなくマニピュレータ11の手先以外の部分やマニピュレータ11とは別の位置に設置してもよい。
【0129】
さらに、上述した各実施形態を適宜組み合わせて、本発明の主旨を逸脱しない範囲で種々変形して実施することができる。
【図面の簡単な説明】
【0130】
【図1】本発明の一つの実施形態のマニピュレータ制御システムの構成を示す図。
【図2】第1実施形態のマニピュレータ制御システムの処理を示すフローチャート。
【図3】第2実施形態のマニピュレータ制御システムの処理を示すフローチャート。
【図4】第3実施形態のマニピュレータ制御システムの処理を示すフローチャート。
【図5】第4実施形態のマニピュレータ制御システムの処理を示すフローチャート。
【図6】第6実施形態のマニピュレータ制御システムの処理を示すフローチャート。
【図7】第7実施形態におけるディスプレイの状態表示画面を示す図。
【符号の説明】
【0131】
A… 把持対象物
10… 把持部
11… マニピュレータ
12… グリッパ部
13… 成分分析装置
14… 形状計測装置
15… 6軸力センサ
17… 作業台
18… 信号線・動力線
20… 通信線
21… LAN
30… マニピュレータコントローラ
41… 制御用コンピュータ(制御用PC)
42… 形状計測処理用コンピュータ(形状計測処理用PC)
43… 物体情報データベース用コンピュータ(物体情報データベース用PC)
44… 状態表示用コンピュータ(状態表示用PC)
60… 情報タグ
61… リーダライタ
62… タグ設置機構
71… 状態表示画面
72… 操作カーソル
73… 物体情報表示ウインドウ

【特許請求の範囲】
【請求項1】
把持対象物を把持・移動するための把持部を有するマニピュレータと、
前記把持部に設けられ、接近した前記把持対象物に対して光または放射線を放射してその材質を非接触で計測する成分分析器と、
前記把持部に設けられ、接近した前記把持対象物に対して光または放射線を放射してその立体形状を非接触で測定する形状計測センサと、
前記成分分析器により計測された前記把持対象物の材質と前記形状計測センサにより計測された立体形状とから前記把持対象物の体積を算出する体積算出部と、
既知の把持対象物の形状、物質の密度情報、把持位置、把持力を含む物体情報を蓄積したデータベースと、
前記体積算出部により計算された前記把持対象物の体積と、前記成分分析器により計測された把持対象物の材質をキーに前記データベースから読み出した物質の密度情報とから前記把持対象物の重量を算出する重量算出部と、
前記重量算出部により算出された前記把持対象物の重量から前記把持対象物の把持力を算出する把持力算出部と、
前記把持力算出部により算出された把持力にて前記マニピュレータを動作させる制御部と
を具備することを特徴とするマニピュレータ制御システム。
【請求項2】
前記形状計測センサにより計測された前記把持対象物の形状を基に前記マニピュレータの把持部が前記把持対象物を把持する3次元空間上の位置を求める手段を具備することを特徴とする請求項1記載のマニピュレータ制御システム。
【請求項3】
計測された前記把持対象物の形状を検索キーとして、前記物体情報データベースから前記把持対象物の特性データを検索する検索部と、
前記検索部により検索された前記把持対象物の特性データを出力する手段と
を具備することを特徴とする請求項1記載のマニピュレータ制御システム。
【請求項4】
前記検索部による検索の結果、前記把持対象物の情報が前記データベースに存在しない場合、計測および計算された前記未知の物体の情報を前記データベースに追加登録する登録部を具備することを特徴とする請求項3記載のマニピュレータ制御システム。
【請求項5】
前記検索部による検索の結果、前記把持対象物の情報が前記データベースに存在しない場合、計測および計算された前記未知の物体について、前記把持対象物の形状に類似する物体のデータを前記データベースから読み出してその特性データを前記把持対象物のデータとするデータ選出部と、
前記把持対象物の特性データを基に前記データベースに予め記憶された把持位置、把持力の中から適切な把持位置、把持力を決定する把持力決定部と
を具備することを特徴とする請求項3記載のマニピュレータ制御システム。
【請求項6】
前記把持対象物の特性データを情報タグに記憶する情報書込部と、
前記情報書込部により書き込まれた情報タグを前記把持対象物に取り付る取付部と
を具備することを特徴とする請求項1乃至5いずれか1記載のマニピュレータ制御システム。
【請求項7】
前記把持対象物に取り付けられている情報タグから、光または電波による無線通信で前記把持対象物のデータを読み込み、前記把持力決定部へ渡す情報読取部を具備することを特徴とする請求項5記載のマニピュレータ制御システム。
【請求項8】
前記マニピュレータおよび把持対象物の位置および姿勢を立体的に表示する表示手段、
前記把持対象物の形状、重量および特性などの計算値または推定値、あるいは前記データベースより読み出した情報を表示する表示手段の少なくとも一つを備えることを特徴とする請求項1乃至7いずれか1記載のマニピュレータ制御システム。
【請求項9】
把持対象物を把持・移動するための把持部を有するマニピュレータを制御して前記把持対象物を把持・移動するマニピュレータ制御方法において、
前記把持部に設けられた成分分析器が、接近した前記把持対象物に対して光または放射線を放射してその材質を非接触で計測するステップと、
前記把持部に設けられた形状計測センサが、接近した前記把持対象物に対して光または放射線を放射してその立体形状を非接触で測定するステップと、
前記成分分析器により計測された前記把持対象物の材質と前記形状計測センサにより計測された立体形状とからコンピュータが前記把持対象物の体積を算出するステップと、
計算した前記把持対象物の体積と、計測した前記把持対象物の材質をキーにデータベースから読み出した物質の密度情報とから前記コンピュータが前記把持対象物の重量を算出するステップと、
算出した前記把持対象物の重量から前記コンピュータが、前記把持対象物を前記マニピュレータが把持するための把持力を算出するステップと、
算出した把持力にて前記コンピュータが前記マニピュレータを動作させるステップと
を有することを特徴とするマニピュレータ制御方法。
【請求項10】
把持対象物を把持・移動するための把持部を有するマニピュレータをコンピュータが制御するためのプログラムにおいて、
前記コンピュータを、
前記把持部に設けられた成分分析器が前記把持対象物に対して光または放射線を放射して非接触で計測した材質と、前記把持部に設けられた形状計測センサが、前記把持対象物に対して光または放射線を放射して非接触で測定した立体形状とから前記把持対象物の体積を算出する体積算出部と、
既知の把持対象物の形状、物質の密度情報、把持位置、把持力を含む物体情報を蓄積したデータベースと、
前記体積算出部により計算された前記把持対象物の体積と、前記成分分析器により計測された前記把持対象物の材質をキーに前記データベースから読み出した物質の密度情報とから前記把持対象物の重量を算出する重量算出部と、
前記重量算出部により算出された前記把持対象物の重量から前記把持対象物の把持力を算出する把持力算出部と、
前記把持力算出部により算出された把持力にて前記マニピュレータを動作させる制御部
として機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate