IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソニー株式会社の特許一覧

特開2022-46350情報処理装置、情報処理方法及び情報処理プログラム
<>
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図1
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図2
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図3
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図4
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図5
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図6A
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図6B
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図6C
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図6D
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図7
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図8
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図9
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図10
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図11
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022046350
(43)【公開日】2022-03-23
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
   B25J 13/08 20060101AFI20220315BHJP
【FI】
B25J13/08 Z
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2020152352
(22)【出願日】2020-09-10
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】特許業務法人酒井国際特許事務所
(72)【発明者】
【氏名】笠井 栄良
(72)【発明者】
【氏名】坪井 利充
(72)【発明者】
【氏名】永仮 智子
(72)【発明者】
【氏名】鈴木 裕之
(72)【発明者】
【氏名】駒見 卓哉
(72)【発明者】
【氏名】原口 智治
(72)【発明者】
【氏名】坂本 篤之
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS15
3C707BS27
3C707CS08
3C707ES03
3C707ES07
3C707EV02
3C707HS27
3C707KS07
3C707KS34
3C707KT01
3C707KT04
3C707KW03
3C707KX08
3C707MS08
(57)【要約】
【課題】把持する様々な対象物の形状を容易に推定することができる情報処理装置、情報処理方法及び情報処理プログラムを提案する。
【解決手段】情報処理装置は、第1指部及び第2指部が対象物を把持した状態で、第1指部及び第2指部の少なくとも一方を、対象物に対する接触位置が変化するように動作させる動作制御部と、第1指部及び第2指部の接触位置と姿勢との関係に基づいて、対象物の形状を推定する推定部と、を備える。
【選択図】図4
【特許請求の範囲】
【請求項1】
第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させる動作制御部と、
前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定する推定部と、
を備える情報処理装置。
【請求項2】
前記第2指部は、前記対象物を把持する前記第1指部と対向する部分に設けられた平面部を有し、
前記動作制御部は、前記第1指部が前記対象物に接触した状態を維持し、かつ前記第2指部の前記平面部を前記対象物と接触した状態で前記第2指部の姿勢が変化するように移動させる
請求項1に記載の情報処理装置。
【請求項3】
前記推定部は、前記第2指部の前記平面部における前記対象物との前記接触位置及び前記第2指部の姿勢の変化に基づいて、前記対象物の形状を推定する
請求項2に記載の情報処理装置。
【請求項4】
前記動作制御部は、前記対象物を把持したときの前記第2指部の接触位置を起点として、前記対象物との前記接触位置及び前記第2指部の姿勢が変化するように、前記第2指部を動作させる
請求項3に記載の情報処理装置。
【請求項5】
前記動作制御部は、前記第1指部及び前記第2指部が前記対象物を把持すると、前記対象物を持ち上げる前に、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させる
請求項4に記載の情報処理装置。
【請求項6】
前記平面部は、圧力分布を検出可能な圧力センサが設けられており、
前記推定部は、前記圧力分布に基づく前記接触位置と前記姿勢との関係に基づいて、前記対象物の形状を推定する
請求項5に記載の情報処理装置。
【請求項7】
前記動作制御部は、前記対象物との前記接触位置及び前記第2指部の姿勢が変化させても、前記平面部の前記接触位置に反力が発生するように、前記第2指部を動作させる
請求項6に記載の情報処理装置。
【請求項8】
前記動作制御部は、前記起点から第1方向へ前記第2指部の姿勢を変化させ、前記第2指部と前記対象物との圧力分布が切り替え条件を満たす場合に、前記第1方向とは異なる第2方向へ前記第2指部の姿勢を変化させる
請求項4に記載の情報処理装置。
【請求項9】
前記動作制御部は、前記第2方向へ前記第2指部の姿勢を変化させ、前記第2指部と前記対象物との圧力分布が終了条件を満たす場合に、前記第2指部の姿勢の変化を終了させる
請求項8に記載の情報処理装置。
【請求項10】
前記推定部が推定した前記対象物の形状に基づいて、前記第1指部及び前記第2指部の把持位置を決定する決定部をさらに備え、
前記動作制御部は、前記把持位置で把持するように、前記第1指部及び前記第2指部の動作を制御する
請求項4に記載の情報処理装置。
【請求項11】
前記動作制御部は、前記第1指部及び前記第2指部が前記把持位置で前記対象物を把持すると、前記対象物を持ち上げるように、前記第1指部及び前記第2指部が設けられたハンドを動作させる
請求項10に記載の情報処理装置。
【請求項12】
コンピュータが、
第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させること、
前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定すること、
を含む情報処理方法。
【請求項13】
コンピュータに、
第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させること、
前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定すること、
を実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、人が行っていた作業をロボットにさせる研究が進んでいる。特許文献1には、計測対象物と押圧部との圧力分布の情報を基に、計測対象物の特性を測定可能な計測システムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006-47145号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
マニピュレータは、例えば、家事支援や介護・介助に利用するケースが想定されており、様々な形状の物体を把持することが望まれている。
【0005】
そこで、本開示では、把持する様々な対象物の形状を容易に推定することができる情報処理装置、情報処理方法及び情報処理プログラムを提案する。
【課題を解決するための手段】
【0006】
上記の課題を解決するために、本開示に係る一形態の情報処理装置は、第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させる動作制御部と、前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定する推定部と、を備える。
【0007】
また、本開示に係る一形態の情報処理方法は、コンピュータが、第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させること、前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定すること、を含む。
【0008】
また、本開示に係る一形態の情報処理プログラムは、コンピュータに、第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させること、前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定すること、を実行させる。
【図面の簡単な説明】
【0009】
図1】実施形態に係る情報処理装置を備えるロボットの一例を説明するための図である。
図2】実施形態に係るロボットのハンドの構成の一例を示す図である。
図3図2に示すハンドの動作の一例を説明するための図である。
図4】実施形態に係るロボットの構成例を示す図である。
図5】実施形態に係る情報処理装置が実行する処理手順を示すフローチャートである。
図6A】実施形態に係る情報処理装置の制御による拇指と示指と圧力分布との関係を説明するための図である。
図6B】実施形態に係る情報処理装置の制御による拇指と示指と圧力分布との関係を説明するための図である。
図6C】実施形態に係る情報処理装置の制御による拇指と示指と圧力分布との関係を説明するための図である。
図6D】実施形態に係る情報処理装置の制御による拇指と示指と圧力分布との関係を説明するための図である。
図7】実施形態に係る情報処理装置の制御による拇指と示指と圧力分布との関係を説明するための図である。
図8】実施形態に係る情報処理装置の制御による拇指と示指と圧力分布との関係を説明するための図である。
図9】実施形態の変形例(1)に係る情報処理装置が実行する処理手順を示すフローチャートである。
図10】実施形態の変形例(2)に係るハンドの構成の一例を示す図である。
図11】実施形態の変形例(3)に係る情報処理装置の情報処理の一例を説明するための図である。
図12】情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0010】
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
【0011】
モバイルマニピュレータ等のロボットを家事支援や介護・介助支援に利用する場合、想定されるユースケースとして、ポットに入った液体を別の容器に注ぐというシーンがあげられる。これを行うには溢れさせない程度に液体を注ぐ必要があるが、これには注ぎ先の容器にはどの程度の量を注ぐことができるかを認識しなければならない。
【0012】
例えば、扱う容器の形状があらかじめ容器形状が特定できている環境では、ロボットは、容器の正確な容積を見積もっておくことが可能である。これに対し、容器形状があらかじめ特定できない環境では、ロボットは、何らかの方法で注ぐことが可能な量を適時観測、認識しなければならない。例えば、容器の詳細形状を計測することで容積を認識する方法や、液面や液位を観測しながら注ぐことで溢れないようにする方法などが考えられる。容積を認識する方法は、容器の側面がテーパ形状や滑らかな曲面であっても、容器の形状を正しく認識することが求められる。また、液面や液位を観測しながら注ぐことで溢れないようにする方法は、液面や液位を観測するための構成が必要となり、ロボットがコストアップしてしまう。このため、本開示では、簡単な構成で対象物の形状を推定することができる技術を提供する。
【0013】
(実施形態)
[実施形態に係るロボットの概要]
図1は、実施形態に係る情報処理装置を備えるロボットの一例を説明するための図である。図2は、実施形態に係るロボットのハンドの構成の一例を示す図である。図3は、図2に示すハンドの動作の一例を説明するための図である。
【0014】
図1に示すように、ロボット100は、例えば、人型を模した双腕のロボットである。ロボット100は、本体部110を含む。本体部110は、基台としてのベース部111と、ベース部111上に支持される胴体部112と、胴体部112に設けられるアーム113と、胴体部112の上部に設けられる頭部114と、ベース部111の下側に設けられる移動機構115と、を備える。
【0015】
頭部114には、本体部110の前方を撮像する撮像部11が設けられる。以下では、本体部110において、撮像部11が設けられる面を前面といい、撮像部11が設けられる面と対向する面を後面といい、前面と後面とに挟まれ、上下方向ではない方向の面を側面というものとする。撮像部11として、光学式のカメラなどを例示することができる。撮像部11は、アーム113のハンド120で把持する対象物のセンシングに用いることができる。
【0016】
アーム113は、胴体部112に設けられる。アーム113の数は、任意である。図の例では、胴体部112の対向する2つの側面に対称的に2本のアーム113が設けられる場合が示されている。アーム113は、例えば7自由度アームである。アーム113の先端には、対象物を把持することができるハンド120が設けられる。ハンド120は、金属材料または樹脂材料などからなる。対象物は、例えば、グラス、カップ、瓶、ペットボトル、紙パック(牛乳パック)等を含む。移動機構115は、本体部110を移動させる手段であり、車輪または脚などによって構成される。
【0017】
本実施形態では、ロボット100のハンド120は、拇指121と、示指122と、を有する。拇指121は、例えば、ハンド120の親指に相当し、第1指部の一例である。示指122は、例えば、ハンド120の人差し指に相当し、第2指部の一例である。拇指121は、示指122よりも小さな形状となっている。本実施形態では、説明を簡単化するために、ハンド120は、拇指121と示指122との2本の指を備える場合について説明するが、3本以上の指を備える構成としてもよい。
【0018】
拇指121及び示指122は、指節間関節部分に設けられたアクチュエータにより、可動可能に構成されている。例えば、示指122は、図2に示すように、3つの第1関節部123、124、125によって複数のリンク126、127、128のそれぞれを回転可能な構成となっている。ハンド120は、拇指121と示指122との間隔が変更可能なように構成されている。拇指121は、第2関節部129によってアーム113の軸を中心に回転可能な構成となっている。示指122は、アーム113によってアーム113の軸を中心に回転可能な構成となっている。
【0019】
図3に示すように、対象物600は、水平方向に沿った断面が円形で滑らかな曲面のグラスとなっている。対象物600は、例えば、テーブル等に置かれた状態になっている。場面ST1では、ハンド120は、対象物600が拇指121と示指122との間に位置すると、拇指121及び示指122の間隔を狭めるように動作することで、対象物600を把持する。この場合、拇指121及び示指122は、対象物600の側部を挟持している。
【0020】
場面ST2では、ハンド120は、拇指121が対象物600に接触した状態で静止している。ハンド120は、示指122が第2関節部129の軸を中心として、方向C1への回転と方向C2への回転とが可能な構成であることを示している。すなわち、ハンド120は、示指122と対象物600の側部の表面との接触位置をなぞるように変化させることが可能な構成となっている。
【0021】
図2に戻り、ハンド120は、圧力センサ13が拇指121及び示指122の平面部120Fに設けられている。拇指121の平面部120Fは、示指122の平面部120Fよりも表面積が小さくなっている。圧力センサ13は、ハンド120が対象物600を把持する場合に、対象物600と接触する拇指121及び示指122の平面部120Fのそれぞれに設けられている。圧力センサ13は、例えば、圧力の2次元分布を計測する圧力分布センサ等を用いることができる。圧力センサ13は、ハンド120が対象物600を把持している場合に、対象物600によって力が加えられた接触位置(圧力中心)、その力に応じて生じた反力(変形)の2次元平面内での変位量等を識別可能な圧力情報を提供する。すなわち、圧力センサ13は、拇指121及び示指122と対象物600との接触状態の変化を識別可能な情報を提供する。
【0022】
なお、ハンド120は、複数の圧力センサを行列状に配置し、各圧力センサにより検知された圧力を示す情報を、行列における座標情報と関連付けて提供する構成を用いてもよい。
【0023】
[実施形態に係るロボットの構成]
図4は、実施形態に係るロボット100の構成例を示す図である。図4に示すように、ロボット100は、センサ部10と、駆動部20と、情報処理装置30と、通信部40と、を備える。情報処理装置30は、上述したロボット100の制御部の一例である。情報処理装置30は、センサ部10、駆動部20及び通信部40とデータや信号を授受可能に接続されている。情報処理装置30は、例えば、ロボット100における動作を制御するユニットとして、ロボット100に組み込まれる場合について説明するが、ロボット100の外部に設けられてもよい。なお、ロボット100は、通信部40を備えない構成としてもよい。
【0024】
センサ部10は、ロボット100の処理に用いる情報を検出する各種のセンサ等を備える。センサ部10は、検出した情報を情報処理装置30等に供給する。本実施形態では、センサ部10は、上述した撮像部11と、状態センサ12と、上述した圧力センサ13と、を含む。センサ部10は、撮像部11が撮像した画像を示すセンサ情報を情報処理装置30に供給する。状態センサ12は、例えば、ジャイロセンサ、加速度センサ、周囲情報検出センサ等を含む。状態センサ12は、例えば、拇指121及び示指122に設けられている。周囲情報検出センサは、例えば、ロボット100の周囲の物品を検出する。周囲情報検出センサは、例えば、超音波センサ、レーダ、LiDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)、ソナー等を含む。センサ部10は、状態センサ12の検出結果を示すセンサ情報を情報処理装置30に供給する。センサ部10は、圧力センサ13が計測した圧力情報を情報処理装置30に供給する。
【0025】
例えば、センサ部10は、ロボット100の現在位置を検出するための各種のセンサを備えてもよい。具体的には、例えば、センサ部10は、GPS(Global Positioning System)受信機、GNSS(Global Navigation Satellite System)衛星からのGNSS信号を受信するGNSS受信機等を備えてもよい。例えば、センサ部10は、ロボット100の周囲の音を集音するマイクを備えてもよい。
【0026】
駆動部20は、ロボット100の駆動系に関わる各種の装置を備える。駆動部20は、例えば、複数の駆動用モータ等の駆動力を発生させるための駆動力発生装置等を備える。駆動用モータは、例えば、ロボット100の移動機構115を動作させる。移動機構115は、例えば、車輪、脚部等のロボット100の移動形態に応じた機能を含む。駆動部20は、例えば、情報処理装置30からの指令等を含む制御情報に基づいて駆動用モータを回転させることで、ロボット100を自律移動させる。
【0027】
駆動部20は、ロボット100の駆動可能な各部位を駆動させる。駆動部20は、ハンド120等を動作させるアクチュエータを有する。駆動部20は、情報処理装置30と電気的に接続されており、情報処理装置30によって制御される。駆動部20は、アクチュエータを駆動させることで、ロボット100のハンド120を可動させる。
【0028】
通信部40は、ロボット100と外部の様々な電子機器、情報処理サーバ、基地局等と通信を行う。通信部40は、情報処理サーバ等から受信した各種情報を情報処理装置30に出力したり、情報処理装置30からの各種情報を情報処理サーバ等に送信したりする。なお、通信部40がサポートする通信プロトコルは、特に限定されるものではなく、また、通信部40が、複数の種類の通信プロトコルをサポートすることも可能である。
【0029】
情報処理装置30は、障害物との衝突を回避し、目標地点まで移動しながら掃除するように、ロボット100の動作を制御する。情報処理装置30は、例えば、専用または汎用コンピュータである。情報処理装置30は、ロボット100の移動動作、掃除ユニット等を制御する機能を有する。情報処理装置30は、例えば、認識した対象物600をハンド120に把持させたり、当該対象物600に対してポットに入った液体を注いだりするように、駆動部20を制御する機能を有する。
【0030】
情報処理装置30は、記憶部31と、制御部32と、を備える。なお、情報処理装置30は、センサ部10及び通信部40少なくとも一方を構成に備えてもよい。
【0031】
記憶部31は、各種データ及びプログラムを記憶する。例えば、記憶部31は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、ハードディスク、光ディスク等である。記憶部31は、例えば、圧力情報311、姿勢情報312、モデル情報313等の各種情報を記憶する。圧力情報311は、例えば、圧力センサ13の計測結果を時系列で示す情報を含む。姿勢情報312は、例えば、圧力センサ13の測定時に対応した示指212の姿勢を識別可能な情報を含む。モデル情報313は、例えば、圧力分布と示指212の姿勢との関係から形状モデルを識別可能な情報を含む。形状モデルは、例えば、圧力分布と示指212の姿勢との関係に基づいて形状を機械学習したモデルを含む。
【0032】
制御部32は、動作制御部321と、推定部322と、決定部323と、認識部324と、を備える。動作制御部321、推定部322、決定部323、及び認識部324の各機能部は、CPU(Central Processing Unit)やMPU(Micro Control Unit)等によって、情報処理装置30の内部に記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。また、各処理部は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)等の集積回路により実現されてもよい。
【0033】
動作制御部321は、拇指121(第1指部の一例)及び示指122(第2指部の一例)が対象物600を把持した状態を維持し、かつ拇指121及び示指122の少なくとも一方を対象物600に対する姿勢(接触位置)が変化するように動作させる。動作制御部321は、拇指121が対象物600に接触した状態を維持し、かつ示指122の圧力センサ13が設けられた平面部120Fが対象物600と接触した状態で姿勢が変化するように動作を制御する。動作制御部321は、対象物600を把持したときの示指122の接触位置を起点として、対象物600との接触位置及び示指122の姿勢が変化するように、示指122を動作させる。例えば、動作制御部321は、図3に示したように、起点を中心に示指122が方向C1または方向C2へ回転するように、駆動部20を制御する。
【0034】
動作制御部321は、拇指121及び示指122が対象物600を把持すると、対象物600を持ち上げる前に、拇指121及び示指122の少なくとも一方を対象物600に対する姿勢が変化するように動作させる。動作制御部321は、平面部120Fの接触位置における反力を維持し、かつ対象物600との接触位置及び示指122の姿勢が変化するように、示指122を動作させる。
【0035】
推定部322は、拇指121及び示指122の変化する姿勢と接触位置との関係に基づいて、対象物600の形状を推定する。推定部322は、示指122の平面部120Fにおける対象物600との接触位置及び示指122の姿勢の変化に基づいて、対象物600の形状を推定する。推定部322は、平面部120Fにおける圧力分布に基づく接触位置と姿勢との関係に基づいて、対象物600の形状を推定する。
【0036】
例えば、拇指121及び示指122の対象物600に対する姿勢が変化すると、対象物600の形状に応じて接触位置が変化する。このため、推定部322は、拇指121及び示指122の変化する姿勢と接触位置との関係とモデル情報313とに基づいて、姿勢と接触位置との関係が類似する形状を対象物600から推定する。推定部322は、変化する示指122の姿勢ごとに、示指122が接触している箇所の対象物600の断面形状を推定し、相異なる複数の断面形状に基づいて、対象物600の全体の形状を推定してもよい。
【0037】
決定部323は、推定した対象物600の形状に基づいて、拇指121及び示指122の把持位置を決定する。決定部323は、拇指121及び示指122の接触位置を変化させた複数の把持位置の中から、対象物600の把持に適した把持位置を決定する。例えば、決定部323は、圧力が作用する面積が最も広範囲となる把持位置を決定する。例えば、決定部323は、対象物600とハンド120との間に作用する力の重力方向成分が最も小さくなる把持位置を決定する。例えば、決定部323は、示指122が拇指121の接触位置に最も近くなる把持位置を決定する。
【0038】
認識部324は、撮像部11が撮像した画像情報、状態センサ12のセンサ情報等に基づいて、ロボット100の周辺の物体、対象物600等の存在の有無を認識する。モデル情報313は、物体、対象物600等の形状を示すモデルを有している。この場合、認識部324は、モデル情報313が示す複数のモデルの中から、検出した幾何学的形状と一致または類似するモデルを検索し、モデルを抽出した場合に、物体、対象物600等の存在を認識する。
【0039】
以上、本実施形態に係るロボット100の機能構成例について説明した。なお、図4を用いて説明した上記の構成はあくまで一例であり、本実施形態に係るロボット100の機能構成は係る例に限定されない。本実施形態に係るロボット100の機能構成は、仕様や運用に応じて柔軟に変形可能である。
【0040】
[実施形態に係る情報処理装置の処理手順]
次に、実施形態に係る情報処理装置30の処理手順の一例について説明する。図5は、実施形態に係る情報処理装置30が実行する処理手順を示すフローチャートである。図6Aから図6Dは、実施形態に係る情報処理装置30の制御による拇指121と示指122と圧力分布との関係を説明するための図である。図5に示す処理手順は、情報処理装置30の制御部32がプログラムを実行することによって実現される。図5に示す処理手順は、例えば、対象物600を認識した場合、情報処理装置30の外部の電子機器から開始指示を受信した場合等のタイミングで、制御部32によって実行される。
【0041】
図5に示すように、情報処理装置30の制御部32は、認識した対象物600を挟む位置に拇指121及び示指122を移動させる(ステップS101)。例えば、制御部32は、センサ部10のセンサ情報に基づいて、ハンド120が把持可能な対象物600を認識する。例えば、制御部32は、ハンド120の拇指121及び示指122が対象物600を挟むことが可能な位置に移動するように、駆動部20を制御する。例えば、制御部32は、拇指121及び示指122を結ぶ直線上に、対象物600の高さ方向の中央近傍が位置するように、ハンド120、アーム113等を動作させる制御を行う。制御部32は、ステップS101の処理が終了すると、処理をステップS102に進める。
【0042】
制御部32は、対象物600を挟むように、拇指121及び示指122の間隔を狭める方向への移動を開始する(ステップS102)。例えば、制御部32は、図6Aの場面ST11に示すように、拇指121及び示指122を対象物600に向かう方向Nへの移動を開始するように、駆動部20を制御する。図5に戻り、制御部32は、ステップS102の処理が終了すると、処理をステップS103に進める。
【0043】
制御部32は、圧力センサ13から取得した圧力情報311に基づいて、拇指121及び示指122が対象物600に接触したか否かを判定する(ステップS103)。例えば、制御部32は、拇指121及び示指122の圧力情報311の双方が、対象物600によって力が加えられた接触位置に圧力を示している場合に、拇指121及び示指122が接触したと判定する。制御部32は、拇指121及び示指122が接触していないと判定した場合(ステップS103でNo)、処理を既に説明したステップS102に戻し、処理を継続する。また、制御部32は、拇指121及び示指122が接触したと判定した場合(ステップS103でYes)、処理をステップS104に進める。
【0044】
制御部32は、拇指121及び示指122の移動を停止する(ステップS104)。例えば、制御部32は、拇指121及び示指122を対象物600に向かう方向Nへの移動を停止するように、駆動部20を制御する。これにより、図6Bの場面ST12に示すように、拇指121は、拇指121の平面部120Fにおける接触位置P11で対象物600に接触している。示指122は、示指122の平面部120Fにおける接触位置P21で対象物600に接触している。そして、拇指121及び示指122は、対象物600を挟持している。この場合、拇指121の圧力センサ13は、圧力分布M11を示す圧力情報131を制御部32に供給する。圧力分布M11は、拇指121の検出領域を分割した8×7の領域に対する圧力分布を示している。圧力分布M11は、接触位置P11に対応した1つの領域とその周囲の領域に圧力が加わっていることを示している。また、示指122の圧力センサ13は、圧力分布M21を示す圧力情報131を制御部32に供給する。圧力分布M21は、示指122の検出領域を分割した14×7の領域に対する圧力分布を示している。圧力分布M21は、接触位置P21に対応した3つの領域とその周囲の領域に圧力が加わっていることを示している。図5に戻り、制御部32は、ステップS104の処理が終了すると、処理をステップS105に進める。
【0045】
制御部32は、拇指121及び示指122の接触位置・反力を算出する(ステップS105)。例えば、制御部32は、拇指121及び示指122のそれぞれの圧力分布M11、圧力分布M21を示す圧力情報131を、拇指121及び示指122の圧力センサ13から取得する。例えば、制御部32は、拇指121及び示指122のそれぞれに対し、平面部120Fにおける接触位置x(圧力中心を示すベクトル)、接触反力Fを、以下の式(1)、式(2)に基づいて算出する。なお、圧力センサ13は、圧力分布センサであるとする。
【数1】
【数2】
【0046】
式(1)及び式(2)において、k、P、x(ベクトル)、ΔSは、パラメータである。kは、圧力分布センサのセル番号(セルID)である。Pは、圧力分布センサのセルが計測した圧力値/力値である。x(ベクトル)は、圧力分布センサの圧力分布(平面部120F)における位置である。位置は、圧力分布センサの中心点を原点としているが、ロボットのリンク座標系やロボットのベース座標系、世界座標系の他の表現方法で位置を記述してもよい。ΔSは、圧力分布センサのセルの面積もしくは基準セルに対する面積比率である。PとΔSとの積は、力の次元を持つようになっている。また、圧力分布センサは、セルサイズが等しいので、ΔSの添え字kを省略しているが、セルごとにサイズが異なる場合、ΔSとすればよい。
【0047】
制御部32は、算出した拇指121及び示指122の接触位置・反力を記憶部31に記憶すると、処理をステップS106に進める。制御部32は、示指122が接触位置を起点として方向C1への転がり動作を行うように、示指122の姿勢を制御する(ステップS106)。転がり動作とは、接触位置を起点とし、示指122を対象物600の表面に接触した状態で転がす動作を意味する。転がり動作は、例えば、示指122を対象物600の表面に接触させた状態で、第2関節部129、アーム113等の軸を中心に示指122を回転させる動作を含む。例えば、制御部32は、第2関節部129の軸を中心として、方向C1へ回転するように、第2関節部129の回転を制御する。詳細には、制御部32は、示指122の姿勢を徐々に変化するように、第2関節部129の回転速度を決定し、当該回転速度で第2関節部129を方向C1へ回転させる。制御部32は、ステップS106の処理が終了すると、処理をステップS107に進める。
【0048】
制御部32は、拇指121及び示指122の接触状態を認識する(ステップS107)。例えば、制御部32は、拇指121及び示指122の圧力センサ13のそれぞれから圧力情報311を取得し、当該圧力情報311に基づいて平面部120Fにおける接触状態を認識する。例えば、制御部32は、平面部120Fにおける圧力がかかっている面積、圧力中心、圧力の大きさ等の接触状態を、その時の示指122の位置、姿勢に紐付けて記憶部31に記憶する。例えば、制御部32は、第2関節部129を制御している角度、指令した位置等に基づいて、示指122の位置、姿勢を特定する。例えば、制御部32は、第2関節部129に設けたトルクセンサからの情報に基づいて、示指122の位置、姿勢を特定してもよい。制御部32は、ステップS107の処理が終了すると、処理をステップS108に進める。
【0049】
制御部32は、切り替え条件を満たすか否かを判定する(ステップS108)。切り替え条件は、方向C1から方向C2へ示指122の移動方向を切り替える条件である。例えば、制御部32は、示指122の平面部120Fにおける接触位置xの変化がなくなった場合に、切り替え条件を満たすと判定する。制御部32は、切り替え条件を満たしていないと判定した場合(ステップS108でNo)、処理を既に説明したステップS106に戻し、処理を継続する。また、制御部32は、切り替え条件を満たすと判定した場合(ステップS108でYes)、処理をステップS109に進める。
【0050】
この場合、図6Cの場面ST13に示すように、拇指121は、拇指121の平面部120Fにおける接触位置P12で対象物600に接触している。拇指121が移動していないため、接触位置P12は、接触位置P11と同一の接触位置である。示指122は、示指122の平面部120Fにおける接触位置P22で対象物600に接触している。そして、拇指121及び示指122は、対象物600を挟持している。この場合、拇指121の圧力センサ13は、圧力分布M12を示す圧力情報131を制御部32に供給する。圧力分布M12は、圧力分布M11と同一である。また、示指122の圧力センサ13は、圧力分布M22を示す圧力情報131を制御部32に供給する。圧力分布M22は、示指122の検出領域を分割した14×7の領域に対する圧力分布を示している。圧力分布M22は、接触位置P22に対応した領域とその周囲の領域に圧力が加わっていることを示している。
【0051】
図5に戻り、制御部32は、示指122が接触位置を起点として方向C2へ転がり動作を行うように、示指122の姿勢を制御する(ステップS109)。すなわち、制御部32は、方向C1から方向C2へ切り替えて、示指122の転がり動作を実行させる。例えば、制御部32は、第2関節部129の軸を中心として、方向C2へ回転するように、第2関節部129の回転を制御する。詳細には、制御部32は、示指122の姿勢を徐々に変化するように、第2関節部129の回転速度を決定し、当該回転速度で第2関節部129を方向C2へ回転させる。制御部32は、ステップS109の処理が終了すると、処理をステップS110に進める。
【0052】
制御部32は、拇指121及び示指122の接触状態を認識する(ステップS110)。例えば、制御部32は、上述したステップS107と同様に、拇指121及び示指122の圧力センサ13のそれぞれから圧力情報311を取得し、当該圧力情報311に基づいて接触状態を認識する。例えば、制御部32は、平面部120Fにおける圧力がかかっている面積、圧力中心、圧力の大きさ等の接触状態を、その時の示指122の位置、姿勢を識別可能な姿勢情報312に紐付けて記憶部31に記憶する。制御部32は、ステップS110の処理が終了すると、処理をステップS111に進める。
【0053】
制御部32は、終了条件を満たすか否かを判定する(ステップS111)。終了条件は、方向C2への示指122の移動を終了する条件である。例えば、制御部32は、示指122の接触位置xが圧力分布を縦断した場合、方向C1から方向C2へ方向を1度切り替えて後、上述した切り替え条件を満たす場合、外部の電子機器から終了指示を受け付けた場合等に、終了条件を満たすと判定する。制御部32は、終了条件を満たしていないと判定した場合(ステップS111でNo)、処理を既に説明したステップS109に戻し、処理を継続する。また、制御部32は、終了条件を満たすと判定した場合(ステップS111でYes)、処理をステップS112に進める。
【0054】
制御部32は、示指122の動作を終了する(ステップS112)。例えば、制御部32は、示指122の転がり動作を停止するように、駆動部20を制御する。これにより、図6Dの場面ST14に示すように、示指122は、示指122の平面部120Fにおける接触位置P23で対象物600に接触している。そして、拇指121及び示指122は、対象物600を挟持している。この場合、拇指121の圧力センサ13は、圧力分布M13を示す圧力情報131を制御部32に供給する。圧力分布M13は、圧力分布M11と同一である。また、示指122の圧力センサ13は、圧力分布M23を示す圧力情報131を制御部32に供給する。圧力分布M23は、示指122の検出領域を分割した14×7の領域に対する圧力分布を示している。圧力分布M23は、接触位置P23に対応した領域とその周囲の領域に圧力が加わっていることを示している。図5に戻り、制御部32は、ステップS112の処理が終了すると、処理をステップS113に進める。
【0055】
制御部32は、対象物600の形状を推定する(ステップS113)。例えば、制御部32は、複数の異なる接触位置ごとに認識した接触状態と、そのときの示指122の位置、姿勢を識別可能な姿勢情報312とをトレースすることで、対象物600の形状を推定する。例えば、制御部32は、複数の異なる接触位置ごと対象物600の断面形状をつなぎ合わせることで、対象物600の全体の形状を推定する。例えば、制御部32は、複数の異なる接触位置ごとに認識した接触状態と、そのときの示指122の位置、姿勢を識別可能な姿勢情報312とモデル情報313とに基づいて、例えば、圧力分布と示指212の姿勢との関係から類似する形状モデルを特定し、当該形状モデルを対象物600の形状として推定する。制御部32は、ステップS113の処理が終了すると、処理をステップS114に進める。
【0056】
制御部32は、対象物600の把持位置を決定する(ステップS114)。例えば、制御部32は、推定した対象物600の形状に基づいて、拇指121と示指122との圧力が作用する平面部120Fにおける面積が最も広くなる姿勢、対象物600とハンド120との間に作用する力の重力方向成分が最も小さくなる姿勢、拇指121の接触位置に示指122が最も近くなる姿勢等の少なくとも1つを満たすように、対象物600の把持位置を決定する。本実施形態では、制御部32は、拇指121の接触位置は固定しているため、複数の接触位置ごとに認識した示指122の接触面積に基づいて、面積が最も広い示指122の姿勢を抽出し、当該姿勢の示指122の接触位置を把持位置として決定する。例えば、制御部32は、拇指121及び示指122の状態センサ12が計測した重力方向の加速度成分等に基づいて、重力方向成分が最も小さくなる拇指121及び示指122の姿勢を求め、対象物600の把持位置として決定してもよい。例えば、制御部32は、拇指121と示指122の間隔を複数の異なる接触位置ごとに求め、拇指121の接触位置に示指122が最も近くなる姿勢となるように、対象物600の把持位置として決定してもよい。制御部32は、決定した把持位置を記憶部31に記憶すると、処理をステップS115に進める。
【0057】
制御部32は、決定した把持位置で把持するように、拇指121及び示指122の動作を制御する(ステップS115)。例えば、制御部32は、把持位置に対応した拇指121及び示指122の対象物600に対する接触位置を求め、現在位置から当該接触位置へ移動するように、ハンド120、アーム113等を動作させる制御を行う。詳細には、制御部32は、拇指121及び示指122の現在位置から当該接触位置への移動計画を求め、当該移動計画に基づいて駆動部20を制御する。例えば、制御部32は、図6Dの場面ST14に示す接触位置を把持位置と決定している場合、拇指121が接触位置P13、示指122が接触位置P23で対象物600と接触するように、拇指121及び示指122を位置付ける。これにより、ロボット100は、対象物600の形状に適した把持位置で、拇指121及び示指122によって把持することができる。図5に戻り、制御部32は、ステップS115の処理が終了すると、処理をステップS116に進める。
【0058】
制御部32は、対象物600を持ち上げるように、ハンド120の動作を制御する(ステップS116)。例えば、制御部32は、拇指121及び示指122が対象物600を把持した状態で、ハンド120が上方へ移動するように、駆動部20を制御する。これにより、ロボット100は、拇指121及び示指122が把持している対象物600を持ち上げることができる。制御部32は、ステップS116の処理が終了すると、図5に示す処理手順を終了させる。
【0059】
上述した図5に示す処理手順では、説明を簡単化するために、制御部32は、拇指121を固定して移動させない場合について説明したが、拇指121を移動させる処理手順を追加してもよい。図5に示す処理手順は、示指122を方向C1へ移動させた後に方向C2へ移動させる場合について、示指122を方向C2へ移動させた後に方向C1へ移動させる処理手順としてもよい。
【0060】
[実施形態に係る情報処理装置によるハンドの動作例]
図7及び図8は、実施形態に係る情報処理装置30の制御による拇指121と示指122と圧力分布との関係を説明するための図である。
【0061】
図7に示す一例では、対象物600Aは、側部が円柱状のグラスとなっている。図7に示す場面ST21では、情報処理装置30は、拇指121を平面部120Fにおける接触位置P111で対象物600Aに接触させている。情報処理装置30は、示指122を平面部120Fにおける接触位置P121で対象物600Aに接触させている。対象物600Aが円柱状であるため、示指122の平面部120Fは、対象物600Aの側部の上部から下部にわたって接触している。そして、拇指121及び示指122は、対象物600Aを挟持している。この場合、情報処理装置30は、拇指121の圧力センサ13から圧力分布M111を示す圧力情報131を取得し、示指122の圧力センサ13から圧力分布M121を示す圧力情報131を取得する。圧力分布M111を示す圧力情報131は、接触位置P111に対応した1つの領域とその周囲の領域に圧力が加わっていることを示している。圧力分布M121を示す圧力情報131は、直線的な接触位置P121に対応した14個の連続した領域とその左右の領域に圧力が加わっていることを示している。情報処理装置30は、拇指121及び示指122のそれぞれに対し、圧力分布M111、M121における接触位置x(圧力中心を示すベクトル)、接触反力Fを算出し、その時の示指122の位置、姿勢に紐付けて記憶部31に記憶する。
【0062】
その後、場面ST22に示すように、情報処理装置30は、方向C1への転がり動作を示指122に行わせ、示指122が平面部120Fにおける接触位置P122で対象物600Aの側部の上方で接触させている。情報処理装置30は、拇指121を平面部120Fにおける接触位置P112で対象物600Aに接触させている。本実施形態では、拇指121を移動していないため、接触位置P112は、接触位置P111と同一の接触位置である。この場合、情報処理装置30は、拇指121の圧力センサ13から圧力分布M112を示す圧力情報131を取得し、示指122の圧力センサ13から圧力分布M122を示す圧力情報131を取得する。圧力分布M112を示す圧力情報131は、接触位置P112に対応した1つの領域とその周囲の領域に圧力が加わっていることを示している。圧力分布M122を示す圧力情報131は、対象物600Aの側部の上方を示す接触位置P122に対応した6個の連続した領域とその周囲の領域に圧力が加わっていることを示している。情報処理装置30は、拇指121及び示指122のそれぞれに対し、圧力分布M112、M122における接触位置x(圧力中心を示すベクトル)、接触反力Fを算出し、その時の示指122の位置、姿勢に紐付けて記憶部31に記憶する。
【0063】
その後、場面ST23に示すように、情報処理装置30は、方向C2への転がり動作を示指122に行わせ、示指122が平面部120Fにおける接触位置P123で対象物600Aの側部の下方で接触させている。情報処理装置30は、拇指121を平面部120Fにおける接触位置P113で対象物600Aに接触させている。本実施形態では、拇指121を移動していないため、接触位置P113は、接触位置P111、P112と同一の接触位置である。この場合、情報処理装置30は、拇指121の圧力センサ13から圧力分布M113を示す圧力情報131を取得し、示指122の圧力センサ13から圧力分布M123を示す圧力情報131を取得する。圧力分布M113を示す圧力情報131は、接触位置P113に対応した1つの領域とその周囲の領域に圧力が加わっていることを示している。圧力分布M123を示す圧力情報131は、対象物600Aの側部の下方を示す接触位置P123に対応した5個の連続した領域とその周囲の領域に圧力が加わっていることを示している。情報処理装置30は、拇指121及び示指122のそれぞれに対し、圧力分布M113、M123における接触位置x(圧力中心を示すベクトル)、接触反力Fを算出し、その時の示指122の位置、姿勢に紐付けて記憶部31に記憶する。
【0064】
情報処理装置30は、複数の異なる接触位置P121、P122、P123等の示指122の接触状態、そのときの示指122の位置、姿勢等に基づいて、対象物600Aが円柱状の形状であると推定する。情報処理装置30は、対象物600Aの形状が円柱状と推定したことで、拇指121及び示指122を対象物600Aの側部の中央付近を把持位置と決定する。情報処理装置30は、決定した把持位置に拇指121及び示指122を位置付けて対象物600Aを把持させる。これにより、情報処理装置30は、円柱状の対象物600Aの形状に適した位置で、ハンド120に把持させることができる。
【0065】
次に、図8に示す一例では、対象物600Bは、下部がテーパ状のグラスとなっている。図8に示す場面ST31では、情報処理装置30は、拇指121を平面部120Fにおける接触位置P211で対象物600Bに接触させている。情報処理装置30は、示指122を平面部120Fにおける接触位置P221で対象物600Bに接触させている。対象物600Bの側部がテーパ状であるため、示指122の平面部120Fは、対象物600Aの側部の上端寄りの部分で接触している。そして、拇指121及び示指122は、対象物600Bを挟持している。この場合、情報処理装置30は、拇指121の圧力センサ13から圧力分布M211を示す圧力情報131を取得し、示指122の圧力センサ13から圧力分布M221を示す圧力情報131を取得する。圧力分布M211を示す圧力情報131は、接触位置P211に対応した1つの領域とその周囲の領域に圧力が加わっていることを示している。圧力分布M221を示す圧力情報131は、接触位置P221に対応した2つの連続した領域とその周囲の領域に圧力が加わっていることを示している。情報処理装置30は、拇指121及び示指122のそれぞれに対し、圧力分布M211、M221における接触位置x(圧力中心を示すベクトル)、接触反力Fを算出し、その時の示指122の位置、姿勢に紐付けて記憶部31に記憶する。
【0066】
その後、場面ST32に示すように、情報処理装置30は、方向C1への転がり動作を示指122に行わせ、示指122が平面部120Fにおける接触位置P222で対象物600Bの側部の上端で接触させている。情報処理装置30は、拇指121を平面部120Fにおける接触位置P212で対象物600Bに接触させている。本実施形態では、拇指121を移動していないため、接触位置P212は、接触位置P211と同一の接触位置である。この場合、情報処理装置30は、拇指121の圧力センサ13から圧力分布M212を示す圧力情報131を取得し、示指122の圧力センサ13から圧力分布M222を示す圧力情報131を取得する。圧力分布M212を示す圧力情報131は、接触位置P212に対応した1つの領域とその周囲の領域に圧力が加わっていることを示している。圧力分布M222を示す圧力情報131は、対象物600Aの側部の上端寄りを示す接触位置P222に対応した2つの連続した領域とその周囲の領域に圧力が加わっていることを示している。すなわち、示指122が方向C1へ移動できていないため、圧力分布M222を示す圧力情報131は、圧力分布M221が示す圧力情報131と同一の圧力分布となっている。情報処理装置30は、拇指121及び示指122のそれぞれに対し、圧力分布M212、M222における接触位置x(圧力中心を示すベクトル)、接触反力Fを算出し、その時の示指122の位置、姿勢に紐付けて記憶部31に記憶する。
【0067】
その後、場面ST33に示すように、情報処理装置30は、方向C2への転がり動作を示指122に行わせ、示指122が平面部120Fにおける接触位置P223で対象物600Bの側部の上方で接触させている。情報処理装置30は、拇指121を平面部120Fにおける接触位置P213で対象物600Bに接触させている。本実施形態では、拇指121を移動していないため、接触位置P213は、接触位置P211、P212と同一の接触位置である。この場合、情報処理装置30は、拇指121の圧力センサ13から圧力分布M213を示す圧力情報131を取得し、示指122の圧力センサ13から圧力分布M223を示す圧力情報131を取得する。圧力分布M213を示す圧力情報131は、接触位置P213に対応した1つの領域とその周囲の領域に圧力が加わっていることを示している。圧力分布M223を示す圧力情報131は、対象物600Bの側部の上方を示す接触位置P223に対応した4つの連続した領域とその周囲の領域に圧力が加わっていることを示している。情報処理装置30は、拇指121及び示指122のそれぞれに対し、圧力分布M213、M223における接触位置x(圧力中心を示すベクトル)、接触反力Fを算出し、その時の示指122の位置、姿勢に紐付けて記憶部31に記憶する。
【0068】
情報処理装置30は、複数の異なる接触位置P221、P222、P223等の示指122の接触状態、そのときの示指122の位置、姿勢等に基づいて、対象物600Bが逆円錐台状の形状であると推定する。情報処理装置30は、対象物600Bの形状が逆円錐台状と推定したことで、拇指121及び示指122を対象物600Aの側部の中央から下方付近を把持位置と決定する。情報処理装置30は、決定した把持位置に拇指121及び示指122を位置付けて対象物600Bを把持させる。これにより、情報処理装置30は、逆円錐台状の対象物600Bの形状に適した位置で、ハンド120に把持させることができる。
【0069】
[実施形態の変形例(1)]
次に、実施形態の変形例(1)に係る情報処理装置30の情報処理の一例を説明する。図9は、実施形態の変形例(1)に係る情報処理装置30が実行する処理手順を示すフローチャートである。図9に示す処理手順は、情報処理装置30の制御部32がプログラムを実行することによって実現される。図9に示す処理手順は、例えば、対象物600を認識した場合、外部の電子機器から開始指示を受信した場合等のタイミングで、制御部32によって実行される。
【0070】
図9に示す処理手順では、ステップS101からステップS116の処理は、図5に示すステップS101からステップS116の処理と同一であるため、詳細な説明は省略する。
【0071】
図9に示すように、情報処理装置30の制御部32は、認識した対象物600を挟む位置に拇指121及び示指122を移動させる(ステップS101)。制御部32は、対象物600を挟むように、拇指121及び示指122の間隔を狭める方向への移動を開始する(ステップS102)。制御部32は、圧力センサ13から取得した圧力情報311に基づいて、拇指121及び示指122が接触したか否かを判定する(ステップS103)。制御部32は、拇指121及び示指122が接触していないと判定した場合(ステップS103でNo)、処理を既に説明したステップS102に戻し、処理を継続する。また、制御部32は、拇指121及び示指122が接触したと判定した場合(ステップS103でYes)、処理をステップS104に進める。
【0072】
制御部32は、拇指121及び示指122の移動を停止する(ステップS104)。制御部32は、拇指121及び示指122の接触位置・反力を算出する(ステップS105)。制御部32は、ステップS105の処理が終了すると、処理をステップS120に進める。
【0073】
制御部32は、持ち上げ条件を満たすか否かを判定する(ステップS120)。持ち上げ条件は、例えば、拇指121及び示指122と対象物600との接触状態に基づいて、持ち上げることが可能であるか否かを判定するための条件である。例えば、制御部32は、拇指121及び示指122のそれぞれの圧力分布に基づいてそれぞれの接触面積を求め、当該接触面積が予め設定された閾値よりも大きい場合に、持ち上げ条件を満たすと判定する。
【0074】
制御部32は、持ち上げ条件を満たすと判定した場合(ステップS120でYes)、処理を既に説明したステップS116に進める。この場合、拇指121及び示指122は、対象物600を持ち上げることが可能な接触面積を担保できている。このため、制御部32は、対象物600を持ち上げるように、ハンド120の動作を制御する(ステップS116)。例えば、制御部32は、拇指121及び示指122が対象物600を把持した状態で、ハンド120が上方へ移動するように、駆動部20を制御する。これにより、ロボット100は、対象物600の形状を認識する処理を行うことなく、拇指121及び示指122が把持している対象物600を持ち上げることができる。制御部32は、ステップS116の処理が終了すると、図9に示す処理手順を終了させる。
【0075】
また、制御部32は、持ち上げ条件を満たさないと判定した場合(ステップS120でNo)、処理を既に説明したステップS106に進める。制御部32は、ステップS106からステップS116の一連の処理を実行することで、対象物600の形状を推定し、当該形状に応じた把持位置を決定し、当該把持位置で把持した対象物600を持ち上げる動作を制御する。
【0076】
このように、情報処理装置30は、拇指121及び示指122の対象物600の接触状態が持ち上げ条件を満たす場合、対象物600の形状を推定することなく、対象物600を持ち上げることができる。また、情報処理装置30は、拇指121及び示指122の対象物600の接触状態が持ち上げ条件を満たさない場合、対象物600の形状を推定し、対象物600の形状に適した把持位置で把持した状態で、対象物600を持ち上げることができる。その結果、情報処理装置30は、拇指121及び示指122の把持状態に応じて、対象物600の形状を推定するか否かを切り替えるので、対象物600を持ち上げる動作の効率化を図ることができる。
【0077】
[実施形態の変形例(2)]
次に、実施形態の変形例(2)に係る情報処理装置30の情報処理の一例を説明する。図10は、実施形態の変形例(2)に係るハンド120の構成の一例を示す図である。
【0078】
図10に示すように、ハンド120は、拇指121及び示指122を有する。示指122は、3つの第1関節部123、124、125によって複数のリンク126、127、128のそれぞれを回転可能な構成となっている。示指122は、第2関節部129によってアーム113の軸を中心に回転可能な構成となっている。拇指121は、アーム113に設けられており、アーム113の軸を中心に回転可能な構成となっている。情報処理装置30は、拇指121及び示指122のそれぞれを回転させるように、駆動部20を制御する。
【0079】
[実施形態の変形例(3)]
上述した実施形態では、情報処理装置30は、拇指121及び示指122が1つの把持位置で、示指122の姿勢を変化させることで、対象物600の形状を推定する場合について説明したが、これに限定されない。情報処理装置30は、対象物600の複数の把持位置ごとに、示指122の姿勢を変化させて、対象物600の形状を推定してもよい。
【0080】
図11は、実施形態の変形例(3)に係る情報処理装置30の情報処理の一例を説明するための図である。図11に示すように、情報処理装置30は、把持パターンPS1で、拇指121及び示指122に対象物600を把持させる。この状態で、情報処理装置30は、上述したように、示指122の姿勢を変化させ、把持パターンPS1での対象物600の形状を推定する。そして、情報処理装置30は、拇指121及び示指122を対象物600の周囲に沿って反時計回りの方向へ移動させ、把持パターンPS2で、拇指121及び示指122に対象物600を把持させる。この状態で、情報処理装置30は、上述したように、示指122の姿勢を変化させ、把持パターンPS2での対象物600の形状を推定する。
【0081】
例えば、情報処理装置30は、把持パターンPS1と把持パターンPS2との対象物600の形状の推定結果が一致している場合、対象物600の形状の推定結果を確定する。例えば、情報処理装置30は、把持パターンPS1と把持パターンPS2の対象物600の形状の推定結果が一致していない場合、拇指121及び示指122を対象物600の周囲を反時計回りの方向へ移動させ、異なる把持パターンで対象物600の形状を推定してもよい。このように、情報処理装置30は、相異なる複数の把持パターンで対象物600の形状を推定することで、推定結果の精度を向上させることができる。また、情報処理装置30は、把持パターンの数を増加させるにしたがって、対象物600の様々な形状を推定することができる。
【0082】
[実施形態のその他の変形例]
実施形態では、情報処理装置30は、1つの拇指121及び1つの示指122を備えるロボット100を制御する場合について説明したが、これに限定されない。例えば、情報処理装置30は、1つの拇指121及び複数の示指122を備えるロボット、マニピュレータ等を制御するように構成してもよい。すなわち、情報処理装置30は、対象物600に対して接触させた複数の示指122の少なくとも1つの姿勢を変化させることで、対象物600の形状を推定するように構成してもよい。この場合、情報処理装置30は、複数の示指122のそれぞれの姿勢を変化させてもよいし、複数の示指122を直線的に並べて固定した略平面として姿勢を変化させてもよい。
【0083】
実施形態では、情報処理装置30は、ロボット100を制御する装置として実現する場合について説明したが、これに限定されない。情報処理装置30は、ロボット100を遠隔操作する遠隔装置、サーバ装置等で実現してもよい。また、情報処理装置30は、例えば、容器に内容物を注入する注入装置、手術用や産業用のマニピュレータを制御する制御装置等で実現してもよい。
【0084】
なお、上述した実施形態、変形例(1)から変形例(3)は、適宜組み合わせることができる。
【0085】
[ハードウェア構成]
上述してきた実施形態に係る情報処理装置30は、例えば図12に示すような構成のコンピュータ1000によって実現してもよい。以下、実施形態に係る情報処理装置30を例に挙げて説明する。図12は、情報処理装置30の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
【0086】
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
【0087】
ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0088】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
【0089】
通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
【0090】
入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0091】
例えば、コンピュータ1000が実施形態に係る情報処理装置30として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、動作制御部331、推定部332、決定部323、認識部334等の機能を実現する。また、HDD1400には、本開示に係るプログラムや、記憶部31内のデータが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
【0092】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0093】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【0094】
また、コンピュータに内蔵されるCPU、ROMおよびRAMなどのハードウェアに、情報処理装置30が有する構成と同等の機能を発揮させるためのプログラムも作成可能であり、当該プログラムを記録した、コンピュータに読み取り可能な記録媒体も提供され得る。
【0095】
また、本明細書の情報処理装置30の処理に係る各ステップは、必ずしもフローチャートに記載された順序に沿って時系列に処理される必要はない。例えば、情報処理装置30の処理に係る各ステップは、フローチャートに記載された順序と異なる順序で処理されても、並列的に処理されてもよい。
【0096】
(効果)
情報処理装置30は、拇指121(第1指部)及び示指122(第2指部)が対象物600を把持した状態で、拇指121及び示指122の少なくとも一方を対象物600に対する接触位置が変化するように動作させる動作制御部321と、拇指121及び示指122の接触位置と姿勢との関係に基づいて、対象物600の形状を推定する推定部322と、を備える。
【0097】
これにより、情報処理装置30は、対象物600を把持している拇指121及び示指122の少なくとも一方の接触位置を変化するように動作させることで、対象物600の形状を推定することができる。その結果、情報処理装置30は、把持した対象物600の形状を容易に推定することができるので、様々な形状の対象物600を把持させることができる。また、情報処理装置30は、拇指121及び示指122の接触位置と姿勢に基づいて対象物600の形状を推定できるので、非接触センサ等を用いる必要がなくなり、ハンドのコストを抑制することができる。さらに、情報処理装置30は、拇指121及び示指122の接触位置と姿勢に基づいて対象物600の形状を推定することで、例えば、透明、不透明等の対象物の性質の影響を抑制することができる。
【0098】
情報処理装置30では、示指122は、対象物600を把持する拇指121と対向する部分に設けられた平面部120Fを有し、動作制御部321は、拇指121が対象物600に接触した状態を維持し、かつ示指122の平面部120Fを対象物600と接触した状態で示指122の姿勢が変化するように移動させる。
【0099】
これにより、情報処理装置30は、拇指121を対象物600に接触させた状態で、示指122の平面部120Fを対象物600と接触した状態で示指122の姿勢を変化させることで、対象物600の形状を推定することができる。その結果、情報処理装置30は、示指122の平面部120Fの姿勢を変化させればよいので、制御を簡単化でき、かつ把持している拇指121及び示指122のワークスペースを抑制することができる。
【0100】
情報処理装置30では、推定部322は、示指122の平面部120Fにおける対象物600との接触位置及び示指122の姿勢の変化に基づいて、対象物600の形状を推定する。
【0101】
これにより、情報処理装置30は、示指122の平面部120Fと対象物600の接触状態を変化するように、示指122の姿勢を変化させることで、対象物600の形状を推定することができる。その結果、情報処理装置30は、示指122の平面部120Fにおける接触位置及び姿勢の変化に着目することで、対象物600の形状を推定する精度を向上させることができる。
【0102】
情報処理装置30では、動作制御部321は、対象物600を把持したときの示指122の接触位置を起点として、対象物600との接触位置及び示指122の姿勢が変化するように、示指122を動作させる。
【0103】
これにより、情報処理装置30は、対象物600を把持したときの示指122の接触位置を起点に、示指122の姿勢を変化させることができる。その結果、情報処理装置30は、示指122が対象物600の表面に接触した状態で示指122の姿勢を変更できる可能性が向上するので、推測した対象物600の形状の精度を向上させることができる。
【0104】
情報処理装置30では、動作制御部321は、拇指121及び示指122が対象物600を把持すると、対象物600を持ち上げる前に、拇指121及び示指122の少なくとも一方を対象物600に対する接触位置が変化するように動作させる。
【0105】
これにより、情報処理装置30は、拇指121及び示指122が把持している対象物600を持ち上げる前に、対象物600の形状を推定することができる。その結果、情報処理装置30は、示指122の姿勢を変化させても、把持している対象物600が落下することもないので、安全性を向上させることができる。
【0106】
情報処理装置30では、平面部120Fは、圧力分布を検出可能な圧力センサ13が設けられており、推定部322は、圧力分布に基づく接触位置と姿勢との関係に基づいて、対象物600の形状を推定する。
【0107】
これにより、情報処理装置30は、平面部120Fの圧力分布に基づいて、対象物600と示指122との接触位置をより一層正確に検出できる。その結果、情報処理装置30は、示指122の平面部120Fにおける接触位置と姿勢との関係も正確になるので、対象物600の形状を推定する精度を向上させることができる。
【0108】
情報処理装置30では、動作制御部321は、対象物600との接触位置及び示指122の姿勢が変化させても、平面部120Fの接触位置に反力が発生するように、示指122を動作させる。
【0109】
これにより、情報処理装置30は、対象物600と平面部120Fとの接触位置及び示指122の姿勢を変化しても、対象物600が接触している反力を発生させることができる。その結果、情報処理装置30は、平面部120Fと対象物600との接触状態を維持させることができるので、拇指121及び示指122の把持状態を維持させることができる。
【0110】
情報処理装置30では、動作制御部321は、起点から方向C1(第1方向)へ示指122の姿勢を変化させ、示指122と対象物600との圧力分布が切り替え条件を満たす場合に、方向C1とは異なる方向C2(第2方向)へ示指122の姿勢を変化させる。
【0111】
これにより、情報処理装置30は、対象物600と示指122との接触点を起点とし、方向C1へ示指の姿勢を変化させても、圧力分布が切り替え条件を満たすと、方向C2へ示指122の姿勢を変化させることができる。その結果、情報処理装置30は、対象物600と示指122との接触状態を広範囲で確認することができるので、対象物600の形状を推定する精度をより一層向上させることができる。
【0112】
情報処理装置30では、動作制御部321は、方向C2へ示指122の姿勢を変化させ、示指122と対象物600との圧力分布が終了条件を満たす場合に、示指122の姿勢の変化を終了させる。
【0113】
これにより、情報処理装置30は、方向C2へ示指122の姿勢を変化させても、示指122と対象物600との圧力分布が終了条件を満たすと、示指122の姿勢の変化を終了させることができる。その結果、情報処理装置30は、示指122と対象物600との圧力分布に応じて示指122の姿勢の変化を終了させることができるので、対象物600の形状を効率的に推定することができる。
【0114】
情報処理装置30では、推定部322が推定した対象物600の形状に基づいて、拇指121及び示指122の把持位置を決定する決定部323をさらに備え、動作制御部321は、把持位置で把持するように、拇指121及び示指122の動作を制御する。
【0115】
これにより、情報処理装置30は、推定した対象物600の形状に基づく把持位置を検定し、当該把持位置で拇指121及び示指122に対象物600を把持させることができる。その結果、情報処理装置30は、対象物600の形状に基づいた把持位置で把持させることで、対象物600の把持を安定させることができる。
【0116】
情報処理装置30では、動作制御部321は、拇指121及び示指122が把持位置で対象物600を把持すると、対象物600を持ち上げるように、拇指121及び示指122が設けられたハンドを動作させる。
【0117】
これにより、情報処理装置30は、対象物600の形状に基づく把持位置で拇指121及び示指122に対象物600を把持した後に、対象物600をハンド120に持ち上げさせることができる。その結果、情報処理装置30は、対象物600の形状に基づいた把持位置で把持させた後に持ち上げさせることで、対象物600を安全に持ち上げさせることができる。
【0118】
情報処理方法は、コンピュータが、拇指121及び示指122が対象物600を把持した状態で、拇指121及び示指122の少なくとも一方を対象物600に対する接触位置が変化するように動作させること、拇指121及び示指122の接触位置と姿勢との関係に基づいて、対象物600の形状を推定すること、を含む。
【0119】
これにより、情報処理方法は、対象物600を把持している拇指121及び示指122の少なくとも一方の接触位置を変化するように動作させることで、対象物600の形状をコンピュータによって推定することができる。その結果、情報処理方法は、把持した対象物600の形状を容易に推定することができるので、様々な形状の対象物600を把持させることができる。また、情報処理方法は、拇指121及び示指122の接触位置と姿勢に基づいて対象物600の形状を推定できるので、非接触センサ等を用いる必要がなくなり、ハンド120のコストを抑制することができる。さらに、情報処理方法は、拇指121及び示指122の接触位置と姿勢に基づいて対象物600の形状を推定することで、例えば、透明、不透明等の対象物の性質の影響を抑制することができる。
【0120】
情報処理プログラムは、コンピュータに、拇指121及び示指122が対象物600を把持した状態で、拇指121及び示指122の少なくとも一方を対象物600に対する接触位置が変化するように動作させること、拇指121及び示指122の接触位置と姿勢との関係に基づいて、対象物600の形状を推定すること、実行させる。
【0121】
これにより、情報処理プログラムは、対象物600を把持している拇指121及び示指122の少なくとも一方の接触位置を変化するように動作させることで、対象物600の形状をコンピュータに推定させることができる。その結果、情報処理方法は、把持した対象物600の形状を容易に推定することができるので、様々な形状の対象物600を把持させることができる。また、情報処理方法は、拇指121及び示指122の接触位置と姿勢に基づいて対象物600の形状を推定できるので、非接触センサ等を用いる必要がなくなり、ハンド120のコストを抑制することができる。さらに、情報処理方法は、拇指121及び示指122の接触位置と姿勢に基づいて対象物600の形状を推定することで、例えば、透明、不透明等の対象物の性質の影響を抑制することができる。
【0122】
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させる動作制御部と、
前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定する推定部と、
を備える情報処理装置。
(2)
前記第2指部は、前記対象物を把持する前記第1指部と対向する部分に設けられた平面部を有し、
前記動作制御部は、前記第1指部が前記対象物に接触した状態を維持し、かつ前記第2指部の前記平面部を前記対象物と接触した状態で前記第2指部の姿勢が変化するように移動させる
前記(1)に記載の情報処理装置。
(3)
前記推定部は、前記第2指部の前記平面部における前記対象物との前記接触位置及び前記第2指部の姿勢の変化に基づいて、前記対象物の形状を推定する
前記(2)に記載の情報処理装置。
(4)
前記平面部は、圧力分布を検出可能な圧力センサが設けられており、
前記推定部は、前記圧力分布に基づく前記接触位置と前記姿勢との関係に基づいて、前記対象物の形状を推定する
前記(2)または(3)に記載の情報処理装置。
(5)
前記動作制御部は、前記対象物を把持したときの前記第2指部の接触位置を起点として、前記対象物との前記接触位置及び前記第2指部の姿勢が変化するように、前記第2指部を動作させる
前記(1)から(4)いずれかに記載の情報処理装置。
(6)
前記動作制御部は、前記第1指部及び前記第2指部が前記対象物を把持すると、前記対象物を持ち上げる前に、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させる
前記(1)から(5)いずれかに記載の情報処理装置。
(7)
前記動作制御部は、前記対象物との前記接触位置及び前記第2指部の姿勢が変化させても、前記平面部の前記接触位置に反力が発生するように、前記第2指部を動作させる
前記(1)から(6)いずれかに記載の情報処理装置。
(8)
前記動作制御部は、前記起点から第1方向へ前記第2指部の姿勢を変化させ、前記第2指部と前記対象物との圧力分布が切り替え条件を満たす場合に、前記第1方向とは異なる第2方向へ前記第2指部の姿勢を変化させる
前記(5)に記載の情報処理装置。
(9)
前記動作制御部は、前記第2方向へ前記第2指部の姿勢を変化させ、前記第2指部と前記対象物との圧力分布が終了条件を満たす場合に、前記第2指部の姿勢の変化を終了させる
前記(8)に記載の情報処理装置。
(10)
前記推定部が推定した前記対象物の形状に基づいて、前記第1指部及び前記第2指部の把持位置を決定する決定部をさらに備え、
前記動作制御部は、前記把持位置で把持するように、前記第1指部及び前記第2指部の動作を制御する
前記(1)から(4)いずれかに記載の情報処理装置。
(11)
前記動作制御部は、前記第1指部及び前記第2指部が前記把持位置で前記対象物を把持すると、前記対象物を持ち上げるように、前記第1指部及び前記第2指部が設けられたハンドを動作させる
前記(1)から(10)いずれかに記載の情報処理装置。
(12)
コンピュータが、
第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させること、
前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定すること、
を含む情報処理方法。
(13)
コンピュータに、
第1指部及び第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を前記対象物に対する接触位置が変化するように動作させること、
前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定すること、
を実行させる情報処理プログラム。
(14)
第1指部及び第2指部を有するアームと、
第1指部及び第2指部を可動させる駆動部と、
前記駆動部を制御する情報処理装置と、
を備えるロボットであって、
前記情報処理装置は、
前記第1指部及び前記第2指部が対象物を把持した状態で、前記第1指部及び前記第2指部の少なくとも一方を、前記対象物に対する接触位置が変化するように、前記駆動部の制御によって動作させる動作制御部と、
前記第1指部及び前記第2指部の前記接触位置と姿勢との関係に基づいて、前記対象物の形状を推定する推定部と、
を備えるロボット。
【符号の説明】
【0123】
10 センサ部
11 撮像部
12 状態センサ
13 圧力センサ
20 駆動部
30 情報処理装置
31 記憶部
32 制御部
40 通信部
100 ロボット
120 ハンド
121 拇指(第1指部)
122 示指(第2指部)
311 圧力情報
312 姿勢情報
321 動作制御部
322 推定部
323 決定部
324 認識部
図1
図2
図3
図4
図5
図6A
図6B
図6C
図6D
図7
図8
図9
図10
図11
図12