(57)【要約】  ロボット（１）は、設置面（５）に接する面を有する台座（１１）と、前記台座（１１）に垂直に取り付けられ、垂直軸回りを回転可能な支柱（１２）と、前記支柱（１２）に接続され、単数または複数の関節（２１，２２，２３）により向きを変えることを可能とするアーム（１５，１６）と、前記アームの先端に接続され、前記アームとの向きを変えることを可能とする先端部（３１）と、前記支柱に対して固定された位置に設けられ前記台座自身と前記台座の周辺の前記設置面とを撮影可能とした複数の第１カメラ（１４Ｌ，１４Ｒ）と、前記複数の第１カメラから第１画像を取得し、前記第１画像を座標変換することによって部分平面図画像を生成し、複数の前記部分平面図の位置合わせを行って合成することによって前記台座の画像を含んだ平面図画像を生成するとともに、前記平面図画像に基づいて前記先端部を所定の位置に移動させるために前記アームの向きを変えるよう制御する制御部（４０）と、を備える。
2020044491.tif 000002
【特許請求の範囲】
【請求項１】
設置面に接する点を有する台座と、
前記台座に垂直に取り付けられ、垂直軸回りを回転可能な支柱と、
前記支柱に接続され、単数または複数の関節により向きを変えることを可能とするアームと、
前記アームの先端に接続され、前記アームとの向きを変えることを可能とした先端部と、
前記支柱に対して固定された位置に設けられ前記台座自身と前記台座の周辺の前記設置面とを撮影可能とした複数の第１カメラと、
前記複数の第１カメラから第１画像を取得し、前記第１画像を座標変換することによって部分平面図画像を生成し、複数の前記部分平面図の位置合わせを行って合成することによって前記台座の画像を含んだ平面図画像を生成するとともに、前記平面図画像に基づいて前記先端部を所定の位置に移動させるために前記アームの向きを変えるよう制御する制御部と、
を備えるロボット。
【請求項２】
前記先端部に固定して設けられ、前記設置面方向に所定のパターンを有する光を照射する照射部、
をさらに備える請求項１に記載のロボット。
【請求項３】
前記先端部に設けられた第２カメラ、
をさらに備え、
前記制御部は、前記第２カメラから取得する第２画像にも基づいて前記アームの向きを変えるよう制御する、
請求項１または２に記載のロボット。
【請求項４】
前記設置面上を自律移動するための自律移動部、
をさらに備えた請求項１に記載のロボット。
【請求項５】
前記第１カメラおよび前記第２カメラは、同時に対象物を撮影し、
前記制御部は、前記第１カメラおよび前記第２カメラによって同時にそれぞれ撮影された画像に基づいて前記アームの向きを変えるよう制御する、
請求項３に記載のロボット。
【請求項６】
前記第１カメラおよび前記第２カメラは、互いに異なるフェーズにおいて対象物を撮影し、
前記制御部は、前記フェーズごとに、前記第１カメラが撮影した前記第１画像に基づいて前記アームの向きを変えるよう制御し、前記第２カメラが撮影した前記第２画像に基づいて前記アームの向きを変えるよう制御する、
請求項３に記載のロボット。
【請求項７】
複数の前記照射部を備え、
複数の前記照射部のうちの少なくとも一部の照射部は、他の照射部とは異なる方向に前記光を照射する、
請求項２に記載のロボット。
【請求項８】
前記制御部は、前記照射部が、前記設置面上の複数の所定位置の方向に前記光を順次照射するよう、前記先端部を移動させながら制御し、
前記制御部は、前記複数の所定位置の方向に前記照射部が前記光を照射しているタイミングの各々に対応して複数の前記平面図画像を生成し、
前記制御部は、前記複数の平面図画像に含まれる前記所定のパターンの光の位置に基づいて、前記設置面の段差または凹凸を算出する、
請求項２に記載のロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの動作の自動化を実現するため、画像を取得し処理する技術に関するものである。
【背景技術】
【０００２】
産業用のロボット（アームを備え、作業場所に設置されて通常は自ら移動しないもの。以降「ロボット」とはこの定義のものを言うこととする）を使い、工場や実験室での作業の自動化が進んでいる。ロボットが作業する際には、作業対象やその周辺の情報を取得する必要がある。従来より、カメラを用いて画像を取得し、その画像を処理することで、作業対象やその周辺の障害物などの形状や位置などの情報を得て、所望の作業を実施するためのロボットの動作を計算する方法が知られている。【０００３】
特許文献１（図１等）に記載されているシステムでは、固定カメラ５が、ロボットの作業対象の場所であるトレイ７の上空に固定された状態で設置され、トレイ７を撮影する。固定カメラ座標系Ｆは、既知の座標系である。そして、固定カメラ５で撮影された画像を用いて、作業対象の位置ずれ量を取得し、その位置ずれ量がロボットの制御に用いられている。【０００４】
特許文献２に記載されている技術では、ロボットが電線群を加工するために、２次元ビジョンシステム６０と３次元ビジョンシステム７０という２系統の撮像手段を有している。そして、図３（フローチャート）等によると、まず２次元ビジョンシステム６０を用いて電線群全体を含む範囲の画像である第１画像データＤ１を取得し、次に、第１画像データＤ１に基づいて決定される領域（Ｒ２）を３次元ビジョンシステム７０で撮像し第２画像データＤ２を得ている。そして、第２画像データＤ２に基づいて、加工対象の位置等を認識し、加工ロボットに対する指示が与えられている。【０００５】
特許文献３に記載されている技術では、物品を仕分けするためのロボット２４の先端部分に、レーザセンサ２６とビジョンセンサ２７とが設けられている（図５等）。そして、図１２（フローチャート）等によると、まずレーザセンサ２６を用いて荷物の上面までの距離を取得し、上面が最も高い位置にある荷物を特定している。そして、その後、特定された荷物の外形情報等を、ビジョンセンサ２７を用いて取得している。【０００６】
特許文献４に記載されている技術では、固定したカメラを用いてマーク物体を撮影し、このマーク物体を基に、今までの座標系から新しく設定した座標系への位置データ較正を行っている。【０００７】
上記の特許文献１や特許文献４に記載されている技術では、ロボットの作業環境において固定されたカメラで撮影した画像により、作業対象の位置情報を取得している。
特許文献２に記載されている技術においても、第１段階において第１画像データＤ１を取得するためのカメラ６２は、カメラ支持部材６４によって支持され、電線群が配設されることが予想される全ての領域である領域Ｒ１を撮像可能に配設されている（段落００３６）。
特許文献３に記載されている技術では、レーザセンサ２６およびビジョンセンサ２７の両方は、ロボットの先端部分に設けられており、アームの動きに伴って位置可変である。【０００８】
このように、従来技術は、固定的なカメラを用いるものであり、ロボットの可動範囲を広く見渡す上で、ロボットよりも十分高い位置に設置する必要があり、そのためのしっかりとした構造物を設置する必要があった。また、ロボット本体とは独立した構造物にカメラを設置するため、ロボット本体と設置面との位置関係、および、カメラを設置した構造物と設置面との位置関係を事前に把握し、その位置関係を前提としてロボットを操作する必要があった。ロボット動作中は、ロボット本体もカメラを設置した構造物も、位置関係が変わらないよう、設置面にしっかりと固定した状態で使うことが想定されていた。
また、固定的なカメラを用いる従来技術では、固定された位置から対象物を撮影する必要があるため、ロボット自身や構造物などによる死角がなくなるよう、カメラの配置や角度を工夫して固定する必要があった。
さらに、固定的なカメラを用いる従来技術では、高い位置から対象物の置かれている場所に加え、対象物の形状や立体構造までも認識できるよう、レンズの精度も良く、撮像素子の解像度も高い、高精度なカメラモジュールを使用する必要があった。
一方で、例えば比較的小型のロボットは、作業環境に恒久的あるいは半恒久的に固定設置されるものではなく、機動的にどこにでも持ち運んで活用可能なロボットである。そのような小型のロボットは、特定の場所に固定設置される代わりに、台座を床面あるいは作業台面等に、単に置くことにより、その場でロボットを動かし、対象物をピックアップしたり選別したりといった目的で使用することができる。
あるいは、移動用のレールや車輪などを備えた移動型のロボットの場合、広い範囲を自律的に移動し、対象物をピックアップし、選別して、異なるラインに流したり、離れた場所に収納したりすることが可能である。【０００９】
そういった可搬型のロボットは、置いた位置で手軽に作業を行うことができる反面、特許文献１、２、４のように作業環境（作業場所等）に対する精度の高い位置の把握が困難であるという問題を有していた。可搬型のロボットの外部に固定カメラ等を配置して位置情報を取得することも考えられるが、ロボットが動作中は、可搬型ロボット本体や固定カメラをしっかりと固定する必要が生じる。可搬型ロボットを持ち運んで設置するたびに置き方が変わるため、固定カメラの配置や角度も再調整する必要がある。このため、固定カメラ等を設置しなければならない場合には、可搬型のロボットの機動性が犠牲になる。
また、移動型のロボットの場合、固定的なカメラでロボットの可動範囲を見渡すため、例えば移動用のレールの長さに合わせて一定間隔で固定的なカメラを多数設置するなどが必要となる。ロボット１台に対し、高精度なカメラモジュールが複数必要となり、また、構造物の規模も大きくなり、コストがかさむ。
もしくは、ロボットが自由軌道を移動する場合、移動可能な場所の自由度が多すぎ、固定的なカメラの設置は現実的ではない。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１７−０７１０３３号公報
【特許文献２】特開２０１６−１９２１３５号公報
【特許文献３】特開２０１３−０８６９１５号公報
【特許文献４】特開２０００−０７６４４１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明が解決しようとする問題点は、固定カメラ等を設置することなく、可搬型ロボットもしくは移動型のロボットが作業するために必要な、作業環境についての精度の高い位置情報を取得できるようにすることである。
【課題を解決するための手段】
【００１２】
［１］上記の課題を解決するため、一態様によるロボットは、設置面に接する点を有する台座と、前記台座に垂直に取り付けられ、垂直軸回りを回転可能な支柱と、前記支柱に接続され、単数または複数の関節により向きを変えることを可能とするアームと、前記アームの先端に接続され、前記アームとの向きを変えることを可能とした先端部と、前記支柱に対して固定された位置に設けられ前記台座自身と前記台座の周辺の前記設置面とを撮影可能とした複数の第１カメラと、前記複数の第１カメラから第１画像を取得し、前記第１画像を座標変換することによって部分平面図画像を生成し、複数の前記部分平面図の位置合わせを行って合成することによって前記台座の画像を含んだ平面図画像を生成するとともに、前記平面図画像に基づいて前記先端部を所定の位置に移動させるために前記アームの向きを変えるよう制御する制御部と、を備える。【００１３】
［２］また、一態様は、上記のロボットにおいて、前記先端部に固定して設けられ、前記設置面方向に所定のパターンを有する光を照射する照射部、をさらに備える。【００１４】
［３］また、一態様は、上記のロボットにおいて、前記先端部に設けられた第２カメラ、をさらに備え、前記制御部は、前記第２カメラから取得する第２画像にも基づいて前記アームの向きを変えるよう制御する。【００１５】
［４］また、一態様は、上記のロボットにおいて、前記設置面上を自律移動するための自律移動部、をさらに備えたものである。【００１６】
［５］また、一態様は、上記のロボットにおいて、前記第１カメラおよび前記第２カメラは、同時に対象物を撮影し、前記制御部は、前記第１カメラおよび前記第２カメラによって同時にそれぞれ撮影された画像に基づいて前記アームの向きを変えるよう制御する。【００１７】
［６］また、一態様は、上記のロボットにおいて、前記第１カメラおよび前記第２カメラは、互いに異なるフェーズにおいて対象物を撮影し、前記制御部は、前記フェーズごとに、前記第１カメラが撮影した前記第１画像に基づいて前記アームの向きを変えるよう制御し、前記第２カメラが撮影した前記第２画像に基づいて前記アームの向きを変えるよう制御する。【００１８】
［７］また、一態様は、上記のロボットにおいて、複数の前記照射部を備え、複数の前記照射部のうちの少なくとも一部の照射部は、他の照射部とは異なる方向に前記光を照射する。【００１９】
［８］また、一態様は、上記のロボットにおいて、前記制御部は、前記照射部が、前記設置面上の複数の所定位置の方向に前記光を順次照射するよう、前記先端部を移動させながら制御し、前記制御部は、前記複数の所定位置の方向に前記照射部が前記光を照射しているタイミングの各々に対応して複数の前記平面図画像を生成し、前記制御部は、前記複数の平面図画像に含まれる前記所定のパターンの光の位置に基づいて、前記設置面の段差または凹凸を算出する。
【発明の効果】
【００２０】
本発明のロボットは、カメラをロボット本体に取り付けるため、ロボット以外にカメラを取り付ける構造物は必要ない。このため、ロボット本体と設置面との位置関係のみを把握すれば、ロボットを操作することができる。さらに、ロボットの台座を、その周辺の設置面とともに撮影可能であるため、ロボット本体と設置面との位置関係を自動的に把握できる。よって、ロボットを移動させた後にも、位置の設定のための操作を行う必要がない。
【図面の簡単な説明】
【００２１】
【図１】第１実施形態によるロボットの概略構成を示す側面図である。
【図２】第１実施形態において、第１カメラで撮影された画像を基に生成される合成済画像を示す概略図である。
【図３】第１実施形態において、レーザー照射部によって設置面に照射される複数のポイントを含んだ合成済画像を示す概略図である。
【図４】第１実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その１）。
【図５】第１実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その２）。
【図６】第１実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その３）。
【図７】第１実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その４）。
【図８】第２実施形態の特徴的部分であるレーザー照射部の配置と、レーザーが照射される面との関係を示す概略図である。
【図９】第２実施形態によるレーザー照射部が照射したパターンの第１の例を示す概略図である。
【図１０】第２実施形態によるレーザー照射部が照射したパターンの第２の例を示す概略図である。
【図１１】第２実施形態によるロボットが、レーザー照射部から照射面までの距離を算出するための原理を説明する概略図である。
【図１２】第２実施形態の変形例によるロボットが、レーザー照射部から照射面までの距離を算出するための原理を説明する概略図である。
【図１３】第３実施形態によるロボットの移動動作を示す概略図である。
【図１４】第３実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その１）。
【図１５】第３実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その２）。
【図１６】第３実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その３）。
【図１７】第３実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その４）。
【図１８】第４実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その１）。
【図１９】第４実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その２）。
【図２０】第４実施形態によるロボットがターゲットをつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである（その３）。
【図２１】第５実施形態において設置面が段差を有する場合のロボットの動作環境を示す斜視図である。
【図２２】第５実施形態において第１カメラで撮影された画像を基に生成される合成済画像を示す概略図である。
【図２３】第５実施形態におけるレーザー照射部３２が照射した設置面上のポイントを示す画像であって、第１カメラで撮影した画像をすべて重ね合わせて得られる合成済画像である。
【図２４】第５実施形態におけるレーザー照射部３２が照射した設置面上のポイントを示す画像であって、設置面に段差がある場合の合成済画像である。
【図２５】第５実施形態によるロボットが、レーザー照射部から段差を有する照射面までの距離を算出するための原理を説明する概略図（側面図）である。
【図２６】図２５に対応する平面図である。
【図２７】図２５の側面図における各点の幾何学的関係を抽出した概略図である。
【発明を実施するための形態】
【００２２】
以下では図面を参照しながら実施形態について説明する。
【００２３】
［第１実施形態］
［１．ロボットの構成］
図１は、第１実施形態によるロボットの概略構成を示す側面図である。図示するように、ロボット１は、台座１１と、支柱１２と、第１カメラ１４Ｌ，１４Ｒと、第１アーム１５と、第２アーム１６と、第１関節２１と、第２関節２２と、第３関節２３と、先端部（ハンド）３１と、レーザー照射部３２と、フィンガー３３と、第２カメラ３４と、制御部４０と、を含んで構成される。同図の左側がロボット１の正面側であり、右側がロボット１の背面側である。ロボット１は、比較的小型で、人が持ち運べるサイズの装置である。ロボット１は、設置面５の上に置くことにより使用することができる。台座１１の底面は設置面５と接している。外部からの力が働かない限りは、台座１１は設置面５上の所定の位置に固定されており動かない。支柱１２はアームの一部であり、台座１１に対する位置は固定している。ただし、支柱１２は、設置面５に垂直な回転軸を中心として回転することが可能である。
【００２４】
なお、第１カメラ１４Ｌ，１４Ｒを「ステレオカメラ」と呼ぶ場合がある。また、第２カメラ３４を「先端カメラ」と呼ぶ場合がある。
【００２５】
台座１１は、ロボット１全体を支えるものである。台座１１の底面は平面であり、設置面５の上に置くことができる。つまり、台座１１は、設置面５に接する点あるいは面を有する。
支柱１２は、台座１１に対して固定されており、第１アーム１５より先を支えるものである。
【００２６】
第１カメラ１４Ｌ，１４Ｒは、それぞれ、支柱１２の左側および右側に設けられたカメラである。本実施例では、２台の第１カメラ１４Ｌ，１４Ｒが、支柱１２に固定されて設けられている。第１カメラ１４Ｌおよび１４Ｒは、ロボット１の本体の正面側（図１における左側）を撮影するように設けられる。また、第１カメラ１４Ｌおよび１４Ｒのそれぞれのレンズの主軸がロボット１の本体の正面側のやや下方に向くように設けられる。したがって、第１カメラ１４Ｌおよび１４Ｒが撮像する画像には、設置面５が多く含まれる。第１カメラ１４Ｌおよび１４Ｒが撮像する画像に、ロボット１自身の一部（例えば、台座１１の一部や、支柱１２の一部等）が写り込んでもよい。つまり、第１カメラは、支柱１２に対して固定された位置に設けられ台座１１自身と台座の周辺の設置面５とを撮影可能として設けられたものである。
【００２７】
第１カメラの台数は、３台以上であってもよい。後述するように、第１カメラは、ロボット１の本体の周囲をすべて撮影範囲としてカバーする目的で用いられる。したがって、死角が生じないようにするために、複数台の第１カメラが設けられる。また、それら複数台の第１カメラの少なくとも一部は、支柱１２の代わりに、台座１１に固定されて設けられてもよい。これらいずれの場合も、複数の第１カメラのそれぞれは、設置面５に対して固定された画角の画像を取得する。
複数の第１カメラを総称して「第１カメラ１４」と呼ぶ場合がある。
【００２８】
第１アーム１５および第２アーム１６は、ロボットのアームである。第１アーム１５および第２アーム１６を総称して単に「アーム」と呼ぶ。アームは、  台座１１に直接的あるいは間接的に接続され、単数または複数の関節により向きを変えることを可能とするものである。
第１関節２１は、支柱１２と第１アーム１５とを接続する関節である。
第２関節２２は、第１アーム１５と第２アーム１６とを接続する関節である。
第３関節２３は、第２アーム１６と先端部３１（「ハンド」とも呼ぶ）とを接続する関節である。
第１関節２１，第２関節２２，第３関節２３のそれぞれは、設置面５に平行な回転軸、あるいは設置面５に垂直な回転軸を中心とした回転を可能とするものである。いずれかの関節が、複数軸で回転するものであってもよい。
これらのアームと関節の作用により、ロボット１は、先端部３１を、可動範囲内の任意の位置に移動させることができる。また、ロボット１は、先端部３１を可動範囲内の任意の向きに向かせることができる。
ロボット１において関節等の可動部の状態（例えば、変位回転角等）は、制御部４０によって常に把握可能である。
【００２９】
ここでは、アームが２個で、関節が３個のロボット１を構成するようにしているが、アームの個数や関節の個数は、ここに例示しているものに限定されるわけではなく、任意である。設計等に応じて、適切な数の関節や、適切な数のアームを用いてよい。
【００３０】
先端部（ハンド）３１は、ロボット１が作業をするための機能を有するものである。具体的には、先端部３１には、レーザー照射部３２や、フィンガー３３や、第２カメラ３４が取り付けられている。前述の通り、アームと関節とにより、先端部３１は作業対象である物体等（ターゲット）に近づくことができる。先端部３１が有する機能により、ロボット１は、ターゲットの画像を取得したり、ターゲットをつかんだり、つかんだ状態のターゲットを運んだりすることができる。つまり、先端部３１は、アームの先端に関節等を介して接続される。先端部３１と第２アーム１６との間の向きを変えることができる。
【００３１】
レーザー照射部３２（照射部）は、主に設置面５に向く方向に（設置面５に対して垂直に、あるいは斜めに）、レーザー光線を照射する。図１では１個のレーザー照射部３２のみを示しているが、レーザー照射部３２は、複数個所に設けられていてもよい。また、１個のレーザー照射部３２が、同時に、あるいは時分割で、複数の方向にレーザー光線を照射するようにしてもよい。レーザー照射部３２としては、例えば、クロスレーザーを用いる。クロスレーザーは、十字型にクロスしたパターンを照射するものである。
つまり、レーザー照射部３２は、先端部３１に固定して設けられ、（ほぼ）設置面方向に所定のパターンを有する光を照射する。
【００３２】
フィンガー３３は、作業対象の物体をつかむことのできる機構を有する部材である。フィンガー３３は、物体をつかむだけでなく、例えば設置面５の上に置かれている物体を押し動かすこともできる。また、フィンガー３３が物体を吸着する機構を備えていてもよい。
【００３３】
第２カメラ３４は、先端部３１に固定して取り付けられたカメラである。前述の第１カメラが、設置面５に対して固定された高さ位置および画角で画像を取得するのに対して、第２カメラ３４は、先端部３１の移動に伴って、先端部３１の可動範囲の制約の中で、様々な場所に近づいて画像を取得することができる。第２カメラ３４は、通常は下向き（ほぼ設置面５を向く方向）で画像を撮影する。
第２カメラ３４で撮影される画像（第２画像）は、対象物の位置を把握したり、フィンガー３３の状態（フィンガー３３が対象物をつかんでいるか否か）を把握したりするために用いられる。これらの把握に基づき、ロボット１のアームの移動および作業が計画される。
なお、図１では１個の第２カメラ３４のみを示しているが、先端部３１に複数の第２カメラ３４が設けられていてもよい。
【００３４】
上で説明したように、ロボット１は、第１カメラ１４および第２カメラ３４が撮影した画像により、視覚的な情報を取得する。なお、ロボット１が、各種センサー等を有することによって視覚以外の情報を取得するようにしてもよい。
【００３５】
制御部４０は、ロボット１全体を制御するための機能を有する。制御部４０は、例えば電子回路により実現される。コンピューター（マイコンチップ等）を用いて制御部４０を実現するようにしてもよい。コンピューターを用いる場合、ロボット１を制御するための機能をプログラムで記述することができる。制御部４０が有する記憶手段（例えば、半導体メモリー等）にプログラムを記憶させて置き、コンピューターがプログラムを実行するようにすることもできる。制御部４０が設けられる位置は任意であるが、例えば、図示するように台座１１の内部に制御部４０の機能を格納することができる。また、制御部４０は複数の機器から構成されていてもよい。例えば、ロボット１のアーム制御に特化したハードウェア基板が台座１１の内部に格納され、カメラからの画像処理やアームの制御方法は、ロボット１の外部にあるコンピューターによってソフトウェア的に実現され、ロボット１と外部にあるコンピューターとが通信して制御部４０の処理を実現する構成であってもよい。
【００３６】
ロボット１が稼働するとき、制御部４０は、第１カメラ１４や第２カメラ３４が撮影した画像を取得したり、ロボット１の各所に設けられた各種センサーからの信号を取得したりする。制御部４０は、それらの情報あるいは信号に基づいて必要な判断を行い、その結果、ロボット１の各部材を動作させるための制御信号を出力する。制御部４０は、例えば、第１関節２１や第２関節２２や第３関節２３を所望の状態にするための指示信号を出力する。また、制御部４０は、先端部３１が有するレーザー照射部３２やフィンガー３３が所定の動作をするように指示信号を出力する。
【００３７】
制御部４０は、複数の第１カメラから第１画像を取得し、第１画像を座標変換することによって部分平面図画像を生成し、複数の部分平面図の位置合わせを行って合成することによって台座の画像を含んだ平面図画像を生成する。また、制御部４０は、平面図画像に基づいて先端部３１を所定の位置に移動させるためにアームの向きを変えるよう制御する。
また、制御部４０は、第２カメラ３４から取得する第２画像にも基づいてアームの向きを変えるよう制御する。
【００３８】
［２．平面図画像の生成  ロボット周辺の状況把握］
制御部４０は、複数の第１カメラ１４Ｌおよび１４Ｒが取得した画像を基に、１枚の平面図に相当する画像を生成する。そのために、制御部４０は、まず、第１カメラ１４Ｌおよび１４Ｒから得られる画像のそれぞれを座標変換（アフィン変換）する。そして、制御部４０は、次に、座標変換された各画像を合成（貼り付け）することによって、１枚の大きな画像を生成する。
【００３９】
図２は、第１カメラ１４Ｌおよび１４Ｒがそれぞれ撮影した画像を基に制御部４０が生成した１枚の平面図画像を示す概略図である。同図において、１０１Ｌは、第１カメラ１４Ｌが撮影した画像を座標変換して得られる部分平面図である。また、１０１Ｒは、第１カメラ１４Ｌが撮影した画像を座標変換して得られる部分平面図である。第１カメラ１４Ｌおよび１４Ｒのそれぞれは斜め下方向に向けられたレンズで撮影を行うが、既存技術である座標変換を用いることにより、各カメラの画像は平面図の一部分として利用可能となる。このような画像を、それぞれ、座標変換済画像１０１Ｌおよび１０１Ｒと呼ぶ。座標変換済み画像１０１Ｌおよび１０１Ｒのそれぞれは、上方から設置面５を平面視した画像に相当する。制御部４０は、座標変換済画像１０１Ｌおよび１０１Ｒを適切な位置で位置合わせし、両画像で重複して写されている領域を適切に重ね合わせ、あるいは必要に応じて切り落とすことによって合成済画像１０１を得る。合成済画像１０１内には、台座１１の一部分が写り込んでいる。また、合成済画像１０１の大部分には、設置面５が写っている。また、設置面５上の撮影範囲内に物体等が置かれている場合には、それらの物体を平面視した画像も、合成済画像１０１内に含まれる。
【００４０】
なお、本実施形態では、ロボット１の支柱１２の左右にそれぞれ第１カメラ１４Ｌおよび１４Ｒを配置しているが、複数の第１カメラ１４の配置のしかたは、左右には限られない。また、用いる第１カメラ１４の台数も、２台には限定されず、例えば、３台以上の第１カメラを用いてもよい。一例として、ロボットの前後左右に計４台の第１カメラを設け、それらの各々のカメラにより、前方、後方、左方、右方を撮影し、その４枚の画像を座標変換したのちに１枚の平面図画像に合成してもよい。また、合成済画像１０１は、ロボット１の周囲全部（平面における３６０度）をカバーしていてもよいし、その一部の角度範囲のみをカバーしていてもよい。図２に例示する合成済画像１０１は、主として前方（一部、左方と右方とを含む）を映した平面図画像である。合成済画像１０１は、ロボット１の作業に関係する範囲のみを写した画像であってもよい。
【００４１】
制御部４０が座標変換（アフィン変換）する際のパラメーター（変換行列の係数等）は、例えば、ロボット１の個体ごとに予め設定しておいてよい。あるいは、撮影対象である設置面５上に基準となる位置を示す標識を置いておいて、撮影した画像に含まれる標識の画像内での座標位置に基づいて動的に座標変換のパラメーターを決定してもよい。なお、標識としては、例えば、バーコードや２次元コード等を用いる。以後において標識を用いて特定の物体あるいは場所等を認識する場合も同様である。
【００４２】
なお、制御部４０が複数の第１カメラで撮影した画像を基に、座標変換処理平面図画像（の部分画像）を生成する処理を、「アラウンドビュー処理」と呼ぶことがある。
【００４３】
このように、複数の第１カメラ１４が撮影した画像を基に制御部４０が平面図画像を作成する。これにより、ロボット１は、ロボット１の周辺の比較的広い範囲（例えば、先端部３１の可動領域をカバーする範囲）の平面図の情報を、死角なしに取得することができる。このように得られる平面図の情報には、ロボット１が実行する作業を計画するための情報が含まれており、円滑にロボット１が作業を進められるようになる。
【００４４】
なお、支柱１２は設置面に対して垂直方向の軸を中心として回転可能であるが、第１カメラ１４は、ロボット１の台座を含む範囲を撮影するため、制御部４０は、生成される平面図画像に基づき、その回転方向を把握することも可能である。
【００４５】
また、制御部４０は、生成した平面図画像を基に、台座１１の向き、および各アーム（第１アーム１５および第２アーム１６）の向きや先端部３１の向きを把握する。具体的には、制御部４０は、生成した平面図画像内に写っている台座１１の、周辺環境における向きを把握する。言い換えれば、制御部４０は、生成した平面図画像内に写っている周辺の物体等（既知の位置を示す標識等を含んでいてもよい）の位置と、自ロボット１の台座１１の位置との関係を把握する。そして、制御部４０は、台座１１の位置と、第１関節２１の状態（当該関節の回転軸を中心とする変位角）とから、第１アーム１５の方向を把握する。そして、制御部４０は、第１アーム１５の方向と、第２関節２２の状態（当該関節の回転軸を中心とする変位角）とから、第２アーム１６の方向を把握する。そして、制御部４０は、第２アーム１６の方向と、第３関節２３の状態（当該関節の回転軸を中心とする変位角）とから、先端部３１の方向を把握する。なお、第１アーム１５および第２アーム１６の長さは固定であるため、制御部４０は、第２関節２２および第３関節２３のそれぞれの位置をも把握できる。さらに、制御部４０は、第３関節２３の位置に基づき、先端部３１の位置を把握することができる。
制御部４０は、上記の方法で求められた各アームの方向、各関節の位置、先端部３１の位置や方向を、適宜、記憶することができる。
【００４６】
また、制御部４０は、生成した平面図画像を基に、自ロボット１の台座１１の位置を基準とした、ターゲット（作業対象である物体や場所等）の位置を把握することができる。制御部４０は、上記ターゲットの画像としての特徴を予め学習しておくことにより、生成した平面図画像内でのターゲットの位置を把握することができる。あるいは、ＧＵＩ（graphical user interface）によりユーザーがターゲットの位置を指定できるようにしてもよい。ＧＵＩを用いる場合、制御部４０は生成した平面図画像をユーザーが操作する端末装置のディスプレイに表示して、ユーザーがターゲットの位置をその平面図画像上で指示することによって制御部４０がターゲットの位置を把握する。これらの方法により、制御部４０は、自ロボット１を基準としたときのターゲットの位置を所定の精度で把握することができる。つまり、制御部４０は、把握できたターゲットの位置に基づいて、例えば先端部３１をそのターゲットの近くまで移動させる計画を立てることができる。
【００４７】
［３．レーザーの照射によるターゲットの構造の推定、およびターゲットをつかむ動作］
先端部３１に設けられているレーザー照射部３２は、レーザーを照射する。先端部３１に設けられている第２カメラ３４は、レーザーが照射された状態で撮影を行うこともできる。なお、レーザー照射部３２は、所定のパターンを有するレーザー（投影面に所定の形状で照射されるレーザー）を照射してもよい。また、レーザー照射部３２は、１種類のレーザーのみを照射してもよいし、複数の位置からあるいは複数の角度でレーザーを照射してもよい。また、第２カメラ３４は、１台だけ設けられていてもよいし、複数設けられていてもよい。いずれの場合にも、制御部４０は、対象物体（ターゲット）に投影されたレーザー光に基づいて、対象物体との距離や対象物体の向きを推定する。このとき、制御部４０は、予め取得しておいた対象物体の形状に関する情報を参照してもよい。
【００４８】
なお、対象物体との距離や向きが推定できない場合には、制御部４０は、アームを所定量動かすことにより先端部３１の位置や向きを少し変える。制御部４０は、先端部３１を動かす前後における画像の変化（対象物体に投影されるレーザー光の形状あるいは大きさ等の変化を含む）を基に、対象物体との距離や向きを再推定することが可能となる。
【００４９】
制御部４０は、第２カメラ３４の画像を解析することによって得られた対象物体との距離や向きといった情報を基に、先端部３１を対象物体にさらに近づけるためにアームを動かす量を算出する。また、対象物体をつかむ場合には、制御部４０は、そのための先端部３１の適切な向きの情報を基に、第３関節２３を動かす量を算出する。また、必要に応じて、制御部４０は、対象物体をつかむためのフィンガー３３の動作量を算出する。そして、制御部４０は、算出されたこれらの値に基づき、実際に各関節やフィンガーを動かす制御を行う事により、対象物体をつかむ。
【００５０】
つかむ動作を行った後、制御部４０は、さらに第２カメラ３４が撮影を行うよう指示を出す。そして、制御部４０は、第２カメラ３４が撮影した画像を取得する。複数の第２カメラ３４が設けられている場合にはそれら複数のカメラのそれぞれから画像を取得してもよい。制御部４０は、画像を解析することにより、フィンガー３３が対象物体をつかむことができたかどうかを判断することができる。なお、第２カメラによって判断する代わりに、第１カメラによって判断することでもよい。また、フィンガー３３にリミットスイッチあるいは触覚センサーが実装され、対象物体をつかむことができたかはその出力信号によって判定できるしくみとしてもよい。
【００５１】
［４．つかんだ物体をプレース位置まで運んで格納する動作］
ロボット１のフィンガー３３が物体をつかんでいる状態から、その物体をプレース位置まで運ぶ動作のための制御は、次の通りである。なおここで、「プレース」とは、物体等を置くために指定された場所、あるいは物体等を格納するための容器等である。
フィンガー３３が対象物体をつかんだ位置は、設置面とほぼ同じ高さ位置のため、対象物体移動時に、設置面や周囲と干渉しないよう、ある一定の高さ位置までアームを上げる。
第１カメラ１４Ｌおよび１４Ｒは、撮影を行う。制御部４０は、第１カメラ１４Ｌおよび１４Ｒから画像を取得し、それらの画像を用いて平面図画像を生成する。平面図画像を生成するための方法は、既に説明した通りである。
次に、制御部４０は、生成した平面図画像に基づいて、プレース位置を把握する。制御部４０は、予めプレース位置の画像の特徴を学習しており、平面図画像から自動的にその場所を認識する。あるいは、ＧＵＩによりユーザーがプレースの位置を指定できるようにしてもよい。ＧＵＩを用いる場合、制御部４０は、平面図画像を端末装置のディスプレイに表示し、ユーザーが指示した平面図画像上の位置の情報を取得する。
【００５２】
次に、制御部４０は、先端部３１を、現在位置からプレース位置の上部まで移動させる計画を立てる。この移動計画を作成する処理は、前述の、先端部３１をターゲット物体の上部まで移動させる計画を行った処理と同様のものである。制御部４０は、作成した計画に基づいて、アームを動かす制御を行う事により、先端部３１をプレース位置の上部まで移動させる。この移動は、ｘ−ｙ平面に平行な移動である。
次に、制御部４０は、第２カメラが撮影した画像を取得し、その画像を解析することによって先端部３１がプレース位置の上部に来ているか否かを確認する。確認ができた場合に、制御部４０は、物体をプレース位置に格納するための制御を行う。即ち、制御部４０は、先端部３１をプレース位置まで下す制御をした上で、物体をその位置に格納する（つまり、つかんでいた物体を放す）ようにフィンガー３３を制御する。
【００５３】
なお、ロボット１は、フィンガー３３を使って物体をつかんだり放したりするだけではなく、例えば置かれている物体を押し動かすなどといった動作を行ってもよい。また、ロボット１は、フィンガー３３が有する吸着機構を用いて物体を吸着させたり、吸着した状態でその物体を動かしたりしてもよい。この場合にも、制御部４０は、先端部３１を適切に移動させ、フィンガー３３を適切に動作させる。
【００５４】
［５．レーザーの照射］
先端部３１に設けられているレーザー照射部３２からレーザーを照射することにより、設置面の高さ（段差や面上の凹凸）を測定することが可能となる。以下にその説明を行う。
【００５５】
（１）複数のレーザー照射部の利用
先端部３１に複数のレーザー照射部３２を設けることができる。
図３は、レーザー照射部３２による照射の状況を示す概略図である。同図は、２つのレーザー照射部３２が設置面５上に、それぞれ、Ｐ１およびＰ２の２つの照射光を照射している状況を示す。Ｐ１およびＰ２は、点状にまたはほぼ点状に照射されたレーザー光である。ここで、設置面５上で、点Ｐ１と点Ｐ２との間の距離をｄとする。なお、第１カメラ１４Ｌおよび１４Ｒが設置面５上に照射されたこれら点Ｐ１およびＰ２を含む画像を撮影し、制御部４０がその画像を取得することができる。なお、図３は、それらの画像を合成して得られた合成済画像である。
【００５６】
（２）取り付け角度の異なるレーザーの利用
先端部３１に複数のレーザー照射部３２を設ける場合、それら複数のレーザー照射部３２のうちの少なくとも１つが、他のレーザー照射部３２とは異なる方向にレーザーを照射するよう調整しておくことが可能である。この場合、先端部３１の高さ（設置面５からの距離）が変われば、その変化に応じて、設置面に照射された２つのレーザー光の間の距離（図３における距離ｄ）も変わる。このことを利用して、設置面５上に照射されたレーザー光の間の距離ｄに基づいて、先端部３１から設置面までの高さを計算することができる。なお、設置面５上の距離ｄは、制御部４０が取得した画像に適切なスケール処理を施すことにより求められる。
これにより、制御部４０は、フィンガー３３が対象物をつかんでいる状態であってもつかんでいない状態であっても、先端部３１を移動させたときの高さ方向の移動量を求めることができる。
【００５７】
（３）設置面に垂直に照射するレーザーの利用  
制御部４０は、ロボットを制御することにより、設置面５上に予め設定した複数の設定位置に先端部３１を順次動かす。制御部４０は、各設定位置上で、真下に向けて（設置面５に対して垂直に）レーザー光を照射するように設けられたレーザー照射部３２による照射を行うよう制御する。制御部４０は、その都度、第１カメラ１４Ｌおよび１４Ｒで撮影した画像を取得する。撮影した画像に基づいて、座標変換と位置合わせを行うことにより合成して、合成済画像を得ることができる。各設定位置において上記の操作を行うことによって得られる合成済画像では、すべて同じ位置に照射光の点が現れるはずである。ただし、設置面５に段差あるいは凹凸が存在する場合には、照射光の点の位置がずれる。制御部は、各設定位置で得られた合成済画像を重ね合わせる処理を行うことにより、設置面５の高さのずれを検知することができる。
【００５８】
設置面５上における上記の照射点のずれを計算することにより、設置面５の凹凸状況が分かる。制御部４０は、この計算により、ターゲットをつかむ高さを決めることが出来る。
【００５９】
［６．処理手順］
図４，図５，図６，図７は、ロボット１がターゲットの物体をつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すフローチャートである。図４，図５，図６，図７は、結合子によって結合された１つのフローチャートである。以下、このフローチャートに沿って、処理手順について説明する。
【００６０】
まず図４のステップＳ１において、制御部４０は、第１カメラ１４Ｌおよび１４Ｒが撮影した画像を取得する。
次に、ステップＳ２において、制御部４０は、ステップＳ１で取得した各画像のアラウンドビュー処理（座標変換処理）を行い、それらの画像を合成する処理を行う。これにより、制御部４０は、ロボット１の周辺の平面図画像を生成する。
次に、ステップＳ３において、制御部４０は、ステップＳ２で生成した平面図画像内に含まれる台座１１を認識する。台座１１を認識するために、制御部４０は、予め台座１１の画像としての特徴を学習しておく。あるいは、制御部４０は、台座１１の所定の箇所に付けられた標識（特徴的な画像）を認識することにより台座１１を認識する。あるいは、制御部４０は、各々の第１カメラ（１４Ｌや１４Ｒ）で撮影した画像における台座１１のおよその座標位置を予め取得しておく。制御部４０は、台座１１を認識するために、ここに例示した方法の複数を組み合わせて用いてもよい。
【００６１】
次に、ステップＳ４において、制御部４０は、前述の方法により、ロボット１が有する各アーム（第１アーム１５、第２アーム１６）の向きや角度、支柱１２の向き（回転軸を中心とした回転の向き）、および先端部３１の位置と向きを計算し、記憶する。なお、制御部４０は、各アームの向きや、先端部３１の位置および向きを、台座１１を基準として相対的な向きあるいは位置として計算する。ステップＳ３において平面図画像内の台座１１が認識されているため、制御部４０は、平面図画像の座標を基準として各アームの向きや、先端部３１の位置および向きを把握できる。
次に、ステップＳ５において、制御部４０は、操作の対象とするターゲット（物体や場所）を平面図画像内で認識する。制御部４０は、前述の通り、予め取得しているターゲットの特徴を用いて平面図画像内のターゲットを認識できる。また、制御部４０が、ユーザーによる指定（ＧＵＩからの指定）によりターゲットを認識するようにしてもよい。
【００６２】
次に、ステップＳ６において、制御部４０は、アームおよび先端部３１の移動計画を行う。制御部４０は、既に把握しているアームおよび先端部３１の現在位置と、ターゲットの位置とに基づき、アームおよび先端部３１の移動を計画する。例えば、制御部４０は、先端部３１をｘ−ｙ平面（設置面５）と平行に移動させることによりターゲット位置の上部に持っていくよう、アームの動きを計画する。このとき、制御部４０は、直交座標（ｘ軸およびｙ軸）を用いた計算を行ってもよいし、台座１１の所定の位置を極とする極座標を用いた計算を行ってもよい。なお、「ターゲット位置の上部」とは、必ずしもターゲットの真上の位置（ｘ−ｙ平面におけるターゲット位置から、ｘ−ｙ平面と垂直に上方に移動させた位置）でなくてもよい。例えば、先端部３１に取り付けられた第２カメラ３４がターゲットを認識しやすい位置や、フィンガー３３がターゲットを操作しやすい位置を「ターゲット位置の上部」としてもよい。
次に、ステップＳ７において、制御部４０は、ステップＳ６で立てた計画に基づき、アームを移動させる制御を行う。これにより、何らかの不測の状況（例えば、ロボット１自体が持ち上げられてその位置が変えられてしまうなど）が生じない限り、先端部３１は、ターゲット位置の上方に移動する。
【００６３】
次に、ステップＳ８において、制御部４０は、第２カメラ３４で撮影した画像を取得する。
次に、ステップＳ９において、制御部４０は、ステップＳ８で取得した画像を解析し、その画像内におけるターゲットを認識する。また、制御部４０は、その画像内におけるターゲットの位置を把握する。本ステップでターゲットの認識を行うのは、ステップＳ６で立てた移動計画で目標としたターゲット位置の上部に実際に先端部３１が来ているか否かをチェックするためである。
【００６４】
次に、ステップＳ１０において、制御部４０は、ステップＳ９で把握したターゲットの位置（第２カメラ３４で撮影した画像内の位置）に基づき、先端部３１の現在位置がターゲットに対して適切であるか否かを判断する。先端部３１の位置（アームの位置）が適切である場合（ステップＳ１０：ＹＥＳ）には、図５のステップＳ１２に進む。先端部３１の位置が適切ではない場合（ステップＳ１０：ＮＯ）には、位置を補正するためにＳ１１に進む。
ステップＳ１１に進んだ場合には、制御部４０は、ターゲットが第２カメラの視野内に存在するか否かを判定する。言い換えれば、制御部４０は、ステップＳ８で第２カメラ３４から取得した画像内にターゲットが存在していたか否かを判定する。ターゲットが第２カメラの視野内である場合（ステップＳ１１：ＹＥＳ）には、アームの再移動による位置の補正を行うために、ステップＳ６に進む。ターゲットが第２カメラの視野内ではない場合（ステップＳ１１：ＮＯ）には、第１カメラによるターゲットの捕捉からやり直すために、ステップＳ１に戻る。
【００６５】
次に、図５に示す処理を説明する。
ステップＳ１２に進んだ場合、制御部４０は、レーザー照射部３２がレーザーを照射するよう制御する。
次に、ステップＳ１３において、レーザーが照射されている状態で、第２カメラ３４が撮影を行う。制御部４０は、第２カメラ３４からその画像を取得する。
次に、ステップＳ１４において、制御部４０は、ステップＳ１３で取得した画像に基づいて、ターゲットの立体構造を推定する処理を行う。ここで具体的には、前述の通り、制御部４０は、ターゲットである物体までの距離や、物体の向きなどを推定する処理を行う。
【００６６】
次に、ステップＳ１５において、制御部４０は、ステップＳ１４の処理によってターゲットの立体構造が推定可能であったか否かを判定する。立体構造が推定可能であった場合（ステップＳ１５：ＹＥＳ）には、ステップＳ１７に進む。立体構造が推定可能ではなかった場合（ステップＳ１５：ＮＯ）には、先端部３１の位置を変えて再度画像取得を行うためにステップＳ１６に進む。
次に、ステップＳ１６に進んだ場合、制御部４０は、アームを少し下げるよう制御する。言い換えれば、制御部４０は、先端部３１の位置が今までよりも少し（所定量）下の位置になるよう、関節を動かす制御を行う。これにより、先端部３１はターゲットである物体により近づくため、より良い画像（第２カメラ３４による画像）を取得できるようになることが期待される。ステップＳ１６の次には、ステップＳ１２に戻る。
【００６７】
次に、ステップＳ１７において、制御部４０は、ステップＳ１４における処理で推定された結果に基づいて、ターゲットである物体をつかむための高さと角度とを算出する。この算出結果に基づいて、制御部４０は、ターゲットである物体をつかむ位置まで先端部３１を移動させるための、各関節の変位量を求める。
次に、ステップＳ１８において、制御部４０は、ステップＳ１７で求めた結果に基づいて各関節の動きを制御し、アームを動かすことによって先端部３１を所望の位置に移動させる。そして、制御部４０は、フィンガー３３がターゲットの物体をつかむ動作をするよう制御する。
【００６８】
次に、ステップＳ１９において、制御部４０は、第２カメラ３４が撮影した画像を取得し、その画像を解析する。制御部４０は具体的には、フィンガー３３がターゲットの物体をうまくつかめているか否かを解析する。
次に、ステップＳ２０において、制御部４０は、ステップＳ１９における解析結果に基づいて、ターゲットをつかむことに成功しているか否かを判定する。ターゲットをつかむことに成功している場合（ステップＳ２０：ＹＥＳ）、ステップＳ２２に進む。ターゲットをつかむことに成功していない場合（ステップＳ２０：ＮＯ）、ステップＳ２１に進む。
ステップＳ２１に進んだ場合、制御部４０は、先端部３１を上げる（ターゲットの物体から離れる）よう、アームを移動させたうえで、再度ターゲットをつかむための一連の手順を実行するためにステップＳ１２の処理に戻る。
【００６９】
ステップＳ２２に進んだ場合、フィンガー３３がターゲットの物体をつかんだ状態で、制御部４０は、先端部３１を上げるようアームを移動させる制御を行う。
【００７０】
図６のステップＳ２３からの処理は、ロボット１がつかんだ物体をプレース位置まで運んで置く動作を行うための制御である。
ステップＳ２３において、制御部４０は、第１カメラ１４が撮影した画像を取得する。
次に、ステップＳ２４において、制御部４０は、ステップＳ２３で取得した画像に基づいて、座標変換処理（アラウンドビュー処理）および合成処理を行い、平面図画像を生成する。
次に、ステップＳ２５において、制御部４０は、ステップＳ２４で生成した平面図画像上で、つかんでいる物体を置くためのプレース位置を認識する。具体的には、制御部４０は、予め取得しているプレース位置の特徴を用いて自動的にプレース位置を認識する。あるいは、制御部４０は、ＧＵＩによりユーザーが指定するプレース位置の情報を把握する。あるいは、制御部４０は、台座１１を基準としたときのプレース位置の座標情報を予め与えられていてもよい。
【００７１】
次に、ステップＳ２６において、制御部４０は、先端部３１を現在位置からプレース位置の上部まで移動させる計画を作成する。ここでの移動は、先端部３１をｘ−ｙ平面に平行な方向に移動させるものである。具体的には、制御部４０は、各関節を変位させる量を求める。
次に、ステップＳ２７において、制御部４０は、ステップＳ２６で作成した計画に基づいて、先端部３１を移動させる制御を行う。
【００７２】
次に、ステップＳ２８において、制御部４０は、第２カメラ３４で撮影した画像を取得する。
次に、ステップＳ２９において、制御部４０は、ステップＳ２８で取得した画像に基づいて、プレースの位置を認識する処理を行う。ここでも、制御部４０は、予め取得しているプレース位置の特徴を用いて自動的にプレース位置を認識する。
次に、ステップＳ３０において、制御部４０は、アームおよび先端部３１の位置が、ステップＳ２９で認識したプレースの位置に対して適切であるか否かを判定する。アームおよび先端部３１の位置が適切である場合（ステップＳ３０：ＹＥＳ）には、図７のステップＳ３２に進む。アームおよび先端部３１の位置が適切はない場合（ステップＳ３０：ＮＯ）には、ステップＳ３１に進む。
ステップＳ３１に進んだ場合、制御部４０は、ステップＳ２９での認識処理の結果として、プレースの位置が第２カメラの視野内であったか否かを判定する。言い換えれば、制御部４０は、ステップＳ２８で第２カメラ３４から取得した画像内に、プレースが写っているか否かを判定する。
プレースの位置が第２カメラの視野内である場合（ステップＳ３１：ＹＥＳ）には、先端部３１を再度移動させるためにステップＳ２６に移る。
プレースの位置が第２カメラの視野内ではない場合（ステップＳ３１：ＮＯ）には、第１カメラ１４で広範囲の画像を撮影しなおす処理からやり直すためにステップＳ２３に移る。
【００７３】
そして、図７のステップＳ３２に進んだ場合、制御部４０は、アームを下げて先端部３１がプレースの位置に近付くようにする。
そして、ステップＳ３３において、制御部４０は、フィンガー３３がつかんでいた対象物体を離すように制御することによって、その対象物体（ターゲット）をプレースに格納する。
ステップＳ３３で、ロボット１がターゲットをつかみプレースに格納するまでの一連の動きの制御の全体（図４から図７までのフローチャート）を終了する。
【００７４】
以上説明したように、このフローチャートに示した手順では、第１カメラおよび第２カメラは、互いに異なるフェーズにおいて対象物を撮影し、制御部は、それらのフェーズごとに、第１カメラが撮影した第１画像に基づいてアームの向きを変えるよう制御し、第２カメラが撮影した第２画像に基づいてアームの向きを変えるよう制御する。
【００７５】
以上説明したように、本実施形態によると、複数の第１カメラ１４が広域の画像を撮影する。制御部４０は、第１カメラで撮影された画像を座標変換し平面図の部分画像とする（アラウンドビュー処理）。また、制御部４０は、それらの複数の部分画像を合成して１枚の平面図画像を生成する。複数の画像から平面図画像を合成することにより、ロボット１自体（台座１１等）による死角のない平面図画像を取得できる。つまり、制御部４０は、ロボット１の周辺の状況を把握することができる。また、制御部４０は、平面図画像内における台座１１を認識する。これにより、制御部４０は、周辺の状況と、ロボット１自身の台座の位置および向きと、各アームの向きおよび先端部３１の位置および向きをすべて関連付けて把握することができる。即ち、制御部４０は、ロボット１および周辺の位置情報を正確に把握することができる。つまり、例えばユーザーがロボット１を持ち運んだり向きを変えたりした場合にも、ロボット１の制御部４０は、周辺（作業環境）に固定設置されたカメラ等に頼ることなく、自己の位置を自動的に把握することができる。即ち、ロボット１の位置等を変えても、そのための再調整の操作を行う必要がない。
【００７６】
また、本実施形態によると、先端部３１に固定された第２カメラで撮影した画像を用いて、制御部４０が操作対象物体や場所等を認識する。つまり、ロボットとカメラとの位置関係を設定する操作を行う必要がない。
【００７７】
また、本実施形態によると、ロボット１は、比較的広域を撮影する第１カメラと、アームの先端部３１に固定設置された第２カメラとを併用する。これにより、ロボット１は、周辺全体を見渡して把握しつつ、先端の操作対象物体等を細かく認識することが可能となる。つまり、ロボット１は正確な作業を行えるようになる。加えて、第１カメラ１４の解像度や精度は、遠距離から対象物の存在する位置が認識できる程度のものであればよい。また、第２カメラ３４の解像度や精度は、近距離から対象物の形状を認識できる程度のものであればよい。これら２種類のカメラの使い分けにより、必ずしも、精度や解像度が特別に高いカメラを用いずともロボット１は正確な作業を実施できる。カメラモジュールの選択の自由度が広がる。
操作対象物体等に近づいて詳細な状況を把握することと、全体を広く見渡すこととは、背反する要求であるが、本実施形態のロボット１は、固定カメラを設置することなく、それら両方の要求を満たすことが可能となる。
また、対象物体がカメラの視野の外に出てしまい、ロボット１が対象物体を見失った場合でも、アームを動かすことにより、カメラがアームとともに動き再度対象物体を捉えることができる。死角が発生した場合でもアームの動きによって解消できる可能性があるため、カメラを固定する際の配置や角度に自由度がある。
以上のように、本実施例によれば、比較的小型のロボットの可搬性や機動性を損なうことなく、ロボット動作の自動化を実現することができる。
【００７８】
［第２実施形態］
次に、第２実施形態について説明する。第２実施形態の特徴は、先端部３１に複数のレーザー照射部が設けられており、それら複数のレーザー照射部のうちの少なくとも１つは、他のレーザー照射部とは異なる方向にレーザーを照射することである。
【００７９】
図８は、本実施形態による特徴的部分である先端部３１ｂの詳細な構成を示す概略図（側面図）である。また、同図は、本実施形態での複数のレーザー照射部の配置と、レーザーが照射される面との関係を示している。図示するように、先端部３１ｂは、複数のレーザー照射部を備える。具体的には、先端部３１ｂは、レーザー照射部３２−１および３２−２を有している。また、先端部３１ｂは、第２カメラ３４を備えている。なお、先端部３１ｂに備えられているフィンガー３３をこの図では省略している。
【００８０】
図示するように、レーザー照射部３２−１が照射する方向（破線Ａで示す）と、レーザー照射部３２−２が照射する方向（破線Ｂで示す）とは、異なる。つまり、複数のレーザー照射部のうちの少なくとも１つは、他のレーザー照射部とは異なる方向にレーザーを照射する。これら２つのレーザー照射部３２−１および３２−２は、設置面５に投射される。このとき、先端部３１ｂと設置面５との距離に応じて、この２本のレーザーによって照射されるポイント間の設置面上での距離が異なる。
【００８１】
図９および図１０は、図８に示したレーザー照射部がそれぞれ設置面５に投射するパターンの例を示す概略図である。図９は、レーザー照射部と設置面とが、ある距離だけ離れている場合の、設置面５に投射されるパターンを示す。図１０は、レーザー照射部が図９のときよりも設置面に近づいた場合の、設置面５に投射されるパターンを示す。
図９において、上側の十字型（斜めの十字型）は、レーザー照射部３２−２によって照射されているパターンである。また、下側の十字型（縦線および横線からなる十字型）は、レーザー照射部３２−１によって照射されているパターンである。
図１０において、破線で示す十字型は、図９において上側の十字型が投射されていた位置を示す。また、２個の実線による十字型のうち、上側の十字型（斜めの十字型）は、レーザー照射部３２−２によって照射されているパターンである。また、下側の十字型（縦線および横線からなる十字型）は、レーザー照射部３２−１によって照射されているパターンである。
このように、図９の場合と図１０の場合とで、投射されるパターン間の距離が異なる。言い換えれば、投射されるパターンにおける両者間の距離を測定することにより、レーザー照射部の位置から投射面の位置までの距離を推定することができる。
【００８２】
図１１は、先端部３１ｂの詳細な構成を示す概略図（側面図）である。また、同図は、本実施形態での複数のレーザー照射部の配置と、レーザーが照射される面との関係を示している。この図を参照しながら、次に、先端部３１ｂと設置面５との間の距離を測定する方法を説明する。
【００８３】
図示するように、先端部３１ｂには、２個のレーザー照射部３２−１および３２−２が設けられている。レーザー照射部３２−１とレーザー照射部３２−２との光源間の距離はｘである。レーザー照射部３２−１からは真下に（設置面５に対して垂直に）レーザー光（光線Ａ）が照射されるようになっている。また、レーザー照射部３２−２からは斜め方向に、つまり水平面（例えば先端部３１ｂの底面）から下方向にθの角度の方向に、レーザー光（光線Ｂ）が照射されるようになっている。レーザー照射部３２−１および３２−２の位置およびレーザー照射方向が変わらない限り、ｘおよびθの値は不変である。
【００８４】
先端部３１ｂに取り付けられた第２カメラ３４は、下方向を、即ち設置面５の方向を撮影する。制御部４０は、第２カメラ３４が撮影した画像を取得し、次のように、先端部３１ｂの底面（ロボットの先端部）から設置面５までの距離を求める。つまり、制御部４０は、撮影された画像を基にスケーリング処理を行い、光線Ａの設置面５への照射位置のポイント（レーザー照射部３２−１からの照射）と、光線Ｂの設置面５への照射位置のポイント（レーザー照射部３２−２からの照射）との距離を求める。その距離をｄとする。また、既に述べたように両光源間の距離はｘであるので、先端部３１ｂの底面から設置面５までの距離ｚを、制御部４０は、次の式により計算する。ここで、ｔａｎ（）は正接関数である。
ｚ＝（ｘ−ｄ）・ｔａｎ（θ）
【００８５】
以上のように、先端部３１ｂに、真下に（垂直に）照射するように取り付けられたレーザー照射部３２−１と、斜めに（角度θで）照射するように取り付けられたレーザー３２−２とが、それぞれ設置面５にレーザー光を照射する。そして、第２カメラ３４が撮影した画像を基に、制御部４０は、設置面５に照射された２点のレーザー光を認識する。制御部４０はこの２点間の距離に基づいて先端部３１ｂの底面から設置面５までの距離（高さ）を測定する。これにより、制御部４０は、フィンガー３３を用いて対象物をつかむ際の高さ方向の移動量を求めることができる。
【００８６】
なお、次のような変形例によって制御部４０が先端部３１ｂの高さを測定するようにしてもよい。例えば、レーザー照射部３２−１を先端部３１ｂに取り付ける際、照射方向が真下（先端部３１ｂの底面に対して垂直）でなくてもよい。レーザー照射部３２−１の照射方向が斜め（但し、既知の角度での照射）であっても、適宜、制御部４０は高さを算出することができる。また、例えば、設置面５に照射したレーザー光を認識するために、第２カメラ３４で撮影した画像の代わりに、第１カメラ１４Ｌや１４Ｒで撮影した画像を用いてもよい。
【００８７】
また、レーザー照射部３２−１および３２−２が照射するレーザー光が交差後に設置面５に照射されてもよい。
図１２は、２本のレーザー光が交差した後に設置面に照射される例を示す先端部３１ｂの概略図（側面図）である。図示するように、レーザー照射部３２−１は、真下に（設置面５に対して垂直に）レーザー光（光線Ａ）を照射する。また、レーザー照射部３２−２は、先端部３１ｂからの角度θで斜め下方向にレーザー光（光線Ｂ）を照射する。光線ＡとＢとは交差した後に、設置面５に照射される。設置面５における照射ポイント間の距離はｄである。また、レーザー照射部３２−１と３２−２との光源間の距離はｘである。この場合、制御部４０は、光線ＡおよびＢが交差した後で設置面５に照射されていることを前提として、先端部３１ｂの底面から設置面５までの距離ｚを、次の式により計算する。
ｚ＝（ｘ＋ｄ）・ｔａｎ（θ）
【００８８】
以上説明した通り、本実施形態によれば、制御部４０は対象物をつかむ位置を自動的に算出できるため、ロボットの設置場所を変更した場合にも、対象物をつかむ位置を設定する操作を行う必要がない。つまり、小型のロボットの可搬性を損なうことなく、ロボット動作の自動化を実現できる。
【００８９】
［第３実施形態］
次に、第３実施形態について説明する。第３実施形態の特徴は、ロボットが自律移動部を備えている点である。これにより、ロボットは、設置面に固定して置かれるだけではなく、広範囲に移動することもできる。
【００９０】
図１３は、本実施形態によるロボット２の移動動作の概略を示す概略図である。図示する例では、ロボット２ａは移動前の位置を表し、ロボット２ｂは移動後の位置を表す。同図に示すように、ロボット２が稼働する場所には、レール２０１が敷設されている。またレール２０１の近くに、ロボット２が操作対象とする対象物２０２が置かれている。ロボット２は、例えばモーターによって車輪（不図示）を駆動することにより、レール２０１に沿って前後方向に移動することができる。あるいは、ロボット２は、レール２０１上だけでなく、車輪（例えば４輪）で平面上を任意の方向に自由に移動できるようになっていてもよい。ロボット２の制御部４０が車輪を駆動するよう制御することにより、ロボット２は対象物２０２に近付くことができる。また、ロボット２は、状況に応じて、所望の位置に移動することができる。
【００９１】
なお、上記の、車輪およびそれらの車輪を駆動する機構を、「自律移動部」と呼ぶ。即ち、自律移動部は、ロボットが設置面を自律移動するための機能である。自律移動部は、制御部４０によって制御される。自動移動部が機能することにより、アームが届かない位置に対象物やプレースがある場合や、第１カメラ１４から目的物やプレースが視認できない場合にも、ロボット２は、自律的に所望の対象物あるいはプレースの近傍に移動することができる。
【００９２】
図１４，図１５，図１６，図１７は、本実施におけるロボット２の処理の手順を示すフローチャートである。このフローチャートは、ロボット２がターゲットの物体をつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すものである。図１４，図１５，図１６，図１７は、結合子によって結合された１つのフローチャートである。以下、このフローチャートに沿って、処理手順について説明する。
【００９３】
図１４のステップＳ１０１からＳ１０５までの処理は、それぞれ対応する図４のステップＳ１からＳ５までの処理と同様のものである。
ステップＳ１０６において、制御部４０は、ターゲットにアームが届く範囲にあるか否かを判定する。なお、ターゲットの認識処理（ステップＳ１０５）を行った結果としてターゲットが見つからない場合も、制御部４０は、ターゲットにアームが届く範囲にはないと判断する。ターゲットにアームが届く範囲にあると判断した場合（ステップＳ１０５：ＹＥＳ）、ステップＳ１０８に進む。ターゲットにアームが届く範囲にないと判断した場合（ステップＳ１０５：ＮＯ）、ロボットを移動させてターゲットを認識しなおすために、ステップＳ１０７に進む。
【００９４】
ステップＳ１０７に進んだ場合、制御部４０は、自律移動部を制御し、ロボット２自身を移動させる。具体的には、ロボット２の車輪を動かすことにより、ロボット２を所定の位置まで移動させる。本ステップの終了後は、ステップＳ１０１に戻って処理を続ける。
【００９５】
ステップＳ１０８に進んだ場合、ステップＳ１０８からＳ１１１までにおいて、制御部４０は、アームを移動させる制御を行い、第２カメラ３４から取得した画像に基づいてターゲットの位置を認識する。この処理は、図４のステップＳ６からＳ９までの処理と同様のものである。
次に、ステップＳ１１２において、制御部４０は、図４のステップＳ１０と同様の判断を行い、判断結果に応じて分岐する。即ち、先端部３１の位置（アームの位置）が適切である場合（ステップＳ１１２：ＹＥＳ）には、図１５のステップＳ１１４に進む。先端部３１の位置が適切ではない場合（ステップＳ１１２：ＮＯ）には、位置を補正するためにＳ１１３に進む。
ステップＳ１１３に進んだ場合には、制御部４０は、図４のステップＳ１１と同様の判断を行い、判断結果に応じて分岐する。即ち、ターゲットが第２カメラの視野内である場合（ステップＳ１１３：ＹＥＳ）には、アームの再移動による位置の補正を行うために、ステップＳ１０８に進む。ターゲットが第２カメラの視野内ではない場合（ステップＳ１１３：ＮＯ）には、第１カメラによるターゲットの捕捉からやり直すために、ステップＳ１０１に戻る。
【００９６】
図１５のステップＳ１１４からＳ１２４までの処理は、それぞれ、図５のステップＳ１２からＳ２２までの処理と同様のものである。図１５のステップＳ１２４の処理が終了すると、ステップＳ１２５に移る。
【００９７】
図１６のステップＳ１２５からＳ１２７までの処理は、それぞれ、図６のステップＳ２３からＳ２５までの処理と同様のものである。
次に、ステップＳ１２８において、制御部４０は、プレースにアームが届く範囲にあるか否かを判定する。なお、プレースの認識処理（ステップＳ１２７）を行った結果としてプレースが見つからない場合も、制御部４０は、プレースにアームが届く範囲にはないと判断する。プレースにアームが届く範囲にあると判断した場合（ステップＳ１２８：ＹＥＳ）、ステップＳ１３０に進む。プレースにアームが届く範囲にないと判断した場合（ステップＳ１２８：ＮＯ）、ロボットを移動させてターゲットを認識しなおすために、ステップＳ１２９に進む。
【００９８】
ステップＳ１２９に進んだ場合、制御部４０は、自律移動部を制御し、ロボット２自身を移動させる。具体的には、ロボット２の車輪を動かすことにより、ロボット２を所定の位置まで移動させる。本ステップの終了後は、ステップＳ１２５に戻って処理を続ける。
【００９９】
ステップＳ１３０に進んだ場合、ロボット２は、ステップＳ１３０からＳ１３５までの処理を行う。ステップＳ１３０からＳ１３５までの処理は、図６のステップＳ２６からＳ３１までの処理と同様のものである。
ステップＳ１３４において、制御部４０がアーム位置はプレースに対して適切であると判定した場合（ステップＳ１３４：ＹＥＳ）、図１７のステップＳ１３６に移る。ステップＳ１３４において、制御部４０がアーム位置はプレースに対して適切ではないと判定した場合（ステップＳ１３４：ＮＯ）、テップＳ１３５に移る。ステップＳ１３５において図６のステップＳ３１と同様の判定を行うことにより、ステップＳ１２５またはＳ１３０のいずれか適切な側の処理に戻る。
【０１００】
図１７のステップＳ１３６に進んだ場合、ロボット２は、ステップＳ１３６およびＳ１３７の処理を行う。ステップＳ１３６およびＳ１３７の処理は、それぞれ、図７のステップＳ３２およびＳ３３の処理と同様のものである。
ステップＳ１３７の処理が終了すると、本フローチャート全体の処理手順を終了する。
【０１０１】
以上のように、ロボット２が自律移動した場合には、その移動先において、ロボット２は、第１カメラを用いて周囲の画像を取得し直し、座標変換等を行って合成済画像を生成する。
このとき、制御部４０は、平面画像（合成済画像）中の台座１１の位置に基づいて、上記移動先でのアームの先端と設置面との座標関係を認識することができる。
【０１０２】
以上説明したように、本実施形態によれば、任意の場所に移動した後でも、第１カメラおよび第２カメラは、必ずロボットの周囲を観測可能な位置に設置されており、ターゲットやプレースの位置を認識することができる。移動型ロボットの自律移動性を損なうことなく、ロボットの動作の自動化が可能となる。
【０１０３】
［第４実施形態］
次に、第４実施形態について説明する。第４実施形態の特徴は、第１カメラと第２カメラを同時に使用しながらロボットを操作することである。つまり、本実施形態では、制御部４０の制御により、第１カメラ１４Ｌ，１４Ｒおよび第２カメラ３４は、同時に対象物を撮影する。また、制御部４０は、第１カメラ１４Ｌ，１４Ｒおよび第２カメラ３４によって同時にそれぞれ撮影された画像に基づいて、アームの位置や向きを変えるよう制御する。
【０１０４】
図１８，図１９，図２０は、本実施におけるロボット３の処理の手順を示すフローチャートである。このフローチャートは、ロボット３がターゲットの物体をつかんでプレース位置まで運ぶ動作を制御するための処理の手順を示すものである。図１８，図１９，図２０は、結合子によって結合された１つのフローチャートである。以下、このフローチャートに沿って、処理手順について説明する。
【０１０５】
図１８のステップＳ２０１からＳ２０７までの処理は、それぞれ、図４のステップＳ１からＳ７までの処理と同様である。
次に、ステップＳ２０８において、制御部４０は、第１カメラ１４Ｌおよび１４Ｒと、第２カメラ３４との両方が、それぞれ撮影を行うよう制御する。制御部４０は、第１カメラ１４Ｌおよび１４Ｒと、第２カメラ３４とから、画像を取得する。つまり、制御部４０は、第１カメラ１４Ｌ，１４Ｒおよび第２カメラ３４を同時に使用する。
【０１０６】
次に、ステップＳ２０９において、制御部４０は、第１カメラ１４Ｌ，１４Ｒおよび第２カメラ３４から取得した画像を用いて、ターゲットの位置を認識する。第１カメラ１４Ｌ，１４Ｒと第２カメラ３４の両方を使うことにより、例えば第２カメラ３４の視野内にターゲットがない場合でも、第１カメラ１４Ｌ，１４Ｒで撮影した画像を基に合成した合成済画像に基づいて、制御部４０は、どの方向にターゲットがあるかを認識することができる。
【０１０７】
次に、ステップＳ２１０において、制御部４０は、アームの先端部３１の位置がターゲットに対して適切（例えば、先端部３１がターゲットの上方にあり、ターゲットに近づくことができる）か否かを判定する。アーム位置がターゲットに対して適切である場合（ステップＳ２１０：ＹＥＳ）には、図１９のステップＳ２１１に進む。アーム位置が適切ではない場合（ステップＳ２１０：ＮＯ）には、アームの移動を再度行うためにステップＳ２０６に戻る。
【０１０８】
図１９のステップＳ２１１からステップＳ２２１までの処理は、それぞれ、図５のステップＳ１２からステップＳ２２までの処理と同様である。
【０１０９】
次に、図２０のステップＳ２２２からステップＳ２２６までの処理は、それぞれ、図６のステップＳ２３からステップＳ２７までの処理と同様である。
次に、ステップＳ２２７において、制御部４０は、第１カメラ１４Ｌおよび１４Ｒと、第２カメラ３４との両方が、それぞれ撮影を行うよう制御する。制御部４０は、第１カメラ１４Ｌおよび１４Ｒと、第２カメラ３４とから、画像を取得する。
次に、ステップＳ２２８において、制御部４０は、第１カメラ１４Ｌ，１４Ｒおよび第２カメラ３４から取得した画像を用いて、プレースの位置を認識する。第１カメラ１４Ｌ，１４Ｒと第２カメラ３４の両方を使うことにより、例えば第２カメラ３４の視野内にプレースがない場合でも、第１カメラ１４Ｌ，１４Ｒで撮影した画像を基に合成した合成済画像に基づいて、制御部４０は、どの方向にプレースがあるかを認識することができる。
【０１１０】
次に、ステップＳ２２９において、制御部４０は、アームの先端部３１の位置がプレースに対して適切か否かを判定する。アーム位置がプレースに対して適切である場合（ステップＳ２２９：ＹＥＳ）には、ステップＳ２３０に進む。アーム位置が適切ではない場合（ステップＳ２２９：ＮＯ）には、アームの移動を再度行うためにステップＳ２２５に戻る。
次のステップＳ２３０およびステップＳ２３１の処理は、それぞれ、図７のステップＳ３２およびステップＳ３３の処理と同様である。
ステップＳ２３１の処理が終わると、ロボット３は、このフローチャートの処理をすべて終了する。
【０１１１】
以上のように、本実施形態では、制御部４０は、第１カメラと第２カメラとを同時に使用してターゲットの位置やプレースの位置を認識する。
これにより、例えば第２カメラ３４の視野内にターゲットやプレースがない場合でも、第１カメラ１４Ｌ，１４Ｒによりどの方向にターゲットやプレースがあるかを認識できる。よって、制御部４０は、より早く、ターゲットやプレースの位置にアームのセンタ部を移動させるよう制御することができる。
つまり、本実施例によれば、比較的小型のロボットの可搬性や機動性を損なうことなく、ロボット動作の自動化を実現することができる。
【０１１２】
［第５実施形態］
次に、第５実施形態について説明する。第５実施形態によるロボット４の特徴は、レーザー照射部が照射した設置面を撮影し、得られた画像に基づいて設置面の段差を把握・測定することである。
【０１１３】
図２１は、設置面が段差を有する場合のロボットの動作環境を示す斜視図である。図示するように、設置面５は段差を有している。その段差の上側の段が５Ｕであり、下側の段が５Ｌである。ロボット４の先端部３１に設けられたレーザー照射部３２は、図示する例では、十字型のパターンを形成するようにレーザー光線を照射している。第１カメラ１４Ｌおよび１４Ｒは、レーザー光線が照射された、段差を有する設置面を撮影する。撮影された画像に含まれるレーザー光の照射の形状により、制御部４０は、設置面に段差が存在することを認識することができる。
【０１１４】
図２２は、段差を有する設置面を第１カメラ１４Ｌおよび１４Ｒで撮影した画像を基に、座標変換および合成の処理を行って得られる合成済画像を示す。同図において、設置面の上側の段は５Ｕであり、下側の段は５Ｌである。また破線で示す５Ｇは段差を表す。
【０１１５】
図２３は、レーザー照射部３２による照射方法の一例を示す概略図である。同図は、第１カメラ１４Ｌおよび１４Ｒが複数のタイミングで撮影した画像を合成して得られる合成済画像である。図示する例では、レーザー照射部３２は、設置面５の所定の領域に、３行４列の計１２個のポイント（Ｐ１１からＰ１４まで、Ｐ２１からＰ２４まで、Ｐ３１からＰ３４まで）を照射する。同図に示す例では、設置面５内の当該領域には段差や凸凹はない。ロボット４は、アームを動かすことによって先端部３１に設けられるレーザー照射部３２の位置を順次変えながら、第１カメラ１４Ｌおよび１４Ｒによる撮影を行う。つまり、まず、レーザー照射部３２がＰ１１の位置を照射しているときに第１カメラ１４Ｌおよび１４Ｒが撮影を行い、次に、レーザー照射部３２がＰ１２の位置を照射しているときに第１カメラ１４Ｌおよび１４Ｒが撮影を行い、以下同様に繰り返す。つまり、レーザー照射部３２がＰ１１からＰ３４までの１２個のポイントを順次照射しながら、各ポイントを照射しているタイミングにおいて第１カメラ１４Ｌおよび１４Ｒが撮影を行う。制御部４０は、アームを移動させる制御と、第１カメラ１４Ｌ，１４Ｒによる撮影を実行するための制御を、順次行う。また、制御部４０は、第１カメラ１４Ｌおよび１４Ｒから取得した画像の座標変換と左右合成を行うことにより、各照射タイミングに対応する計１２枚の合成済画像を生成する。さらに、制御部４０は、各ポイントの照射のタイミングに対応する１２枚の画像をすべて重ね合わせる合成処理を行う。その結果、制御部４０は、図２３に示す１２個のポイント（照射されているポイント）を含む１枚の合成済画像を生成する。
【０１１６】
図２４は、設置面５に段差がある場合に、図２３で説明したのと同じ手順で生成した合成済画像を示す概略図である。  図２４に示す画像は、図２３で説明したのと同じ手順で制御部４０がアームを動かすよう制御して、レーザー照射装置３２が図２３の場合と同じ１２種類の位置から順次撮影した画像を合成したものである。但し、図２３の画像は段差のない設置面５に照射されたレーザー光を撮影したものであるのに対して、図２４の画像は、図２１にも示した段差の存在する設置面５を撮影して得られたものである。図示するように、Ｐ１１からＰ１４までの点は、図２３の画像と図２４の画像とで同じ位置に現れる。一方、５Ｇの位置の段差が存在するため、Ｐ２１からＰ２４まで、およびＰ３１からＰ３４までの点の位置は、図２３の画像と図２４の画像との間でずれる。
【０１１７】
図２５，図２６，図２７は、上記の点の位置のずれが生じる原理を説明するための概略図である。
図２５は、ロボット４と、設置面５と、ロボット４による照射のポイントと、そのポイントを含む領域を撮影するカメラ（第１カメラ）との関係を示す側面図である。また、図２６は、図２５に対応する平面図である。
【０１１８】
図示するように、ロボット４が有するレーザー照射部３２が、設置面５Ｕ上の点であるＰ２１に向けた照射を行う。しかしながら、この例では、段差があることによって、レーザー照射部３２から発せられるレーザー光は、面５Ｕよりも低い位置にある面５Ｌ上の点を照射する。第１カメラ１４は、この段差を有する面を撮影する。レーザー照射部３２はＰ２１に向けた照射を行っているが、第１カメラ１４が撮影する画像は、照射されている点はあたかも設置面５上の点であるＰ２１´の位置に存在する点であるかのような画像となる。図２６（平面図）を参照すると、面５Ｌ上の点であるＰ２１の方向を照射しているレーザー光が、別の点であるＰ２１´の位置を照射しているかのように見える画像が生成される。
【０１１９】
図２７は、図２５と同様の側面図であり、図２５に現れる代表的な位置と位置との間の距離の情報を抽出した側面図である。設置面５を基準としたときのレーザー照射部３２の光源の高さをｚとする。面６（設置面５よりも下）を基準としたときのレーザー照射部３２の光源の高さをｚ´とする。点Ｐ２１から第１カメラ１４のレンズの主点までの、水平方向の距離をｒ´とする。また、点Ｐ２１´から第１カメラ１４のレンズの主点までの、水平方向の距離をｒとする。ｒとｒ´の差であるｄが、段差が存在することによるレーザー照射位置のずれ量である。つまり、ｄ＝ｒ´−ｒである。
これらの量を用いて、制御部４０は、設置面５と面６との間の高さΔｚを、次の式に基づいて算出することができる。
Δｚ＝（ｚ´−ｚ）＝ｄ＊ｚ´／ｒ＝ｄ＊ｚ／（ｒ−ｄ）
【０１２０】
図２５や図２６では、Ｐ２１について説明したが、制御部４０は、すべての照射点について同様の計算をすることにより、面の段差の状況や凹凸の状況を把握できる。制御部４０は、算出した高さの情報に基づいて、ターゲットをつかんだり離したりする高さを決定することができる。
【０１２１】
レーザー照射部３２による照射パターンは他の形状であってもよい。例えば、照射パターンは、十字型（交わる２本の線分によるもの）であってもよい。
また、レーザー照射部３２は、複数の発光部（光源）を有していてもよい。この場合、例えば設置面上の複数のポイントを同時に照射することができる。例えば、レーザー照射部３２は、図２３に示す１２個のポイントのうちのいくつかを同時に照射することができる。また、レーザー照射部３２は、時分割で複数のポイントを照射するようにしてもよい。また、照射するポイントの数は１２個でなくともよい。また、レーザー照射部３２は、必ずしも設置面に対して垂直に照射しなくてもよい。レーザー照射部３２が斜め方向に設置面を照射してもよい。
【０１２２】
なお、複数のタイミングで撮影した画像を合成（重ね合わせ）して図２４に示す画像を生成する代わりに、各タイミングで撮影して得られた合成済画像における照射光の位置にそれぞれ基づいて、設置面の段差あるいは凹凸を算出するようにしてもよい。
【０１２３】
つまり、本実施形態では、制御部４０は、レーザー照射部３２が、設置面５上の複数の所定位置の方向に光を順次照射するよう、先端部３１を移動させながら制御する。また、制御部４０は、複数の所定位置の方向にレーザー照射部３２が光を照射しているタイミングの各々に対応して複数の合成済画像（平面図画像）を生成する。また、制御部４０は、複数の合成済画像（平面図画像）に含まれる所定パターンの光の位置に基づいて、設置面５の段差や凹凸を算出する。この過程において、上記複数のタイミングの合成済画像を重ね合わせる処理を行い、１枚の合成済画像（平面図画像）を生成してもよい。
【０１２４】
以上説明したように、本実施形態によれば、ロボット４は、設置面の段差や起伏を自動的に把握できる。したがって、ロボット４の設置場所を変更した場合でも、ターゲットをつかむ高さなどの位置を設定する操作を行う必要がない。つまり、小型のロボットの可搬性を損なうことなく、ロボット動作の自動化を実現できる。
【０１２５】
なお、上述した各実施形態におけるロボットの制御部４０の少なくとも一部の機能をコンピューターで実現することができる。その場合、この機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＵＳＢメモリー等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、一時的に、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【産業上の利用可能性】
【０１２６】
本発明は、例えば産業用あるいは娯楽用等、あらゆる種類のロボットに利用することができる。ただし、本発明の利用範囲は、ここに例示したものには限定されない。
【符号の説明】
【０１２７】
１，２，２ａ，２ｂ，３，４  ロボット
５，５Ｌ，５Ｕ  設置面
１１  台座
１２  支柱
１４，１４Ｌ，１４Ｒ  第１カメラ
１５  第１アーム
１６  第２アーム
２１  第１関節
２２  第２関節
２３  第３関節
３１，３１ｂ  先端部（ハンド）
３２，３２−１，３２−２  レーザー照射部
３３  フィンガー
３４  第２カメラ
４０  制御部
１０１  合成済画像（平面図画像）
１０１Ｌ，１０１Ｒ  座標変換済画像（平面図部分画像）
２０１  レール
２０２  対象物
【図１】
2020044491.tif 000003
【図２】
2020044491.tif 000004
【図３】
2020044491.tif 000005
【図４】
2020044491.tif 000006
【図５】
2020044491.tif 000007
【図６】
2020044491.tif 000008
【図７】
2020044491.tif 000009
【図８】
2020044491.tif 000010
【図９】
2020044491.tif 000011
【図１０】
2020044491.tif 000012
【図１１】
2020044491.tif 000013
【図１２】
2020044491.tif 000014
【図１３】
2020044491.tif 000015
【図１４】
2020044491.tif 000016
【図１５】
2020044491.tif 000017
【図１６】
2020044491.tif 000018
【図１７】
2020044491.tif 000019
【図１８】
2020044491.tif 000020
【図１９】
2020044491.tif 000021
【図２０】
2020044491.tif 000022
【図２１】
2020044491.tif 000023
【図２２】
2020044491.tif 000024
【図２３】
2020044491.tif 000025
【図２４】
2020044491.tif 000026
【図２５】
2020044491.tif 000027
【図２６】
2020044491.tif 000028
【図２７】
2020044491.tif 000029
【国際調査報告】
2020044491.tif 000030
2020044491.tif 000031
2020044491.tif 000032
2020044491.tif 000033