TOP > 国内特許検索 > 移動ロボット、移動ロボット制御システム、及びプログラム > 明細書

明細書 :移動ロボット、移動ロボット制御システム、及びプログラム

発行国 日本国特許庁(JP)
公報種別 特許公報(B2)
特許番号 特許第6259233号 (P6259233)
公開番号 特開2015-055969 (P2015-055969A)
登録日 平成29年12月15日(2017.12.15)
発行日 平成30年1月10日(2018.1.10)
公開日 平成27年3月23日(2015.3.23)
発明の名称または考案の名称 移動ロボット、移動ロボット制御システム、及びプログラム
国際特許分類 G05D   1/02        (2006.01)
FI G05D 1/02 E
請求項の数または発明の数 6
全頁数 19
出願番号 特願2013-188164 (P2013-188164)
出願日 平成25年9月11日(2013.9.11)
審査請求日 平成28年6月13日(2016.6.13)
特許権者または実用新案権者 【識別番号】503420833
【氏名又は名称】学校法人常翔学園
発明者または考案者 【氏名】小林 裕之
個別代理人の代理人 【識別番号】100115749、【弁理士】、【氏名又は名称】谷川 英和
【識別番号】100121223、【弁理士】、【氏名又は名称】森本 悟道
審査官 【審査官】藤島 孝太郎
参考文献・文献 特開2012-221490(JP,A)
特開2008-090827(JP,A)
特開2012-239897(JP,A)
特開2004-298977(JP,A)
米国特許第05525883(US,A)
調査した分野 G05D 1/00- 1/12
B25J 1/00-21/02
特許請求の範囲 【請求項1】
自律的に移動する移動ロボットであって、
シートに表示された2次元図形であって、仮想的な図形であり、前記移動ロボットの移動の制御に影響を与える図形である仮想図形の前記2次元図形に対する相対的な位置関係を示す仮想図形情報を含むコードを表示する2次元図形である制御図形を撮影する撮影手段と、
前記撮影手段が撮影した撮影画像に含まれる制御図形から、前記仮想図形情報を取得する取得手段と、
前記撮影画像に含まれる制御図形と、当該制御図形のサイズを示すサイズ情報と、前記取得手段が取得した仮想図形情報とを用いて、前記移動ロボットと前記仮想図形との位置関係を取得する位置関係取得手段と、
前記移動ロボットを移動させる移動手段と、
前記位置関係取得手段が取得した位置関係に応じて、前記移動手段による移動を制御する移動制御手段と、を備え、
前記コードは、前記サイズ情報をも含み、
前記取得手段は、前記サイズ情報をも取得し、
前記位置関係取得手段が用いるサイズ情報は、前記取得手段が取得したサイズ情報である、移動ロボット。
【請求項2】
前記位置関係取得手段は、前記撮影画像に含まれる制御図形とサイズ情報とを用いて、前記移動ロボットの座標系と前記制御図形の座標系との座標変換を示す座標変換情報を算出し、当該座標変換情報と前記仮想図形情報とを用いて、前記移動ロボットと前記仮想図形との位置関係を取得する、請求項1記載の移動ロボット。
【請求項3】
前記コードは、前記制御図形の位置及び姿勢を示す位置姿勢情報をも含み、
前記取得手段は、前記位置姿勢情報をも取得し、
前記位置関係取得手段は、前記取得手段が取得した位置姿勢情報をも用いて、前記移動ロボットの座標系と前記制御図形の座標系との座標変換を示す座標変換情報を算出する、請求項2記載の移動ロボット。
【請求項4】
前記仮想図形は、移動に関する境界を示すものであり、
前記移動制御手段は、前記仮想図形の示す境界を越えないで移動するように、前記移動手段による移動を制御する、請求項1から請求項3のいずれか記載の移動ロボット。
【請求項5】
請求項1から請求項4のいずれか記載の移動ロボットと、
当該移動ロボットの移動の制御に用いられる前記制御図形の表示された1または2以上のシートと、を備え、
ユーザが、前記制御図形の表示されたシートを前記移動ロボットの移動空間に配置することにより前記移動ロボットの移動が制御される、移動ロボット制御システム。
【請求項6】
自律的に移動する移動ロボットにおける処理をコンピュータに実行させるためのプログラムであって、
シートに表示された2次元図形であって、仮想的な図形であり、前記移動ロボットの移動の制御に影響を与える図形である仮想図形の前記2次元図形に対する相対的な位置関係を示す仮想図形情報を含むコードを表示する2次元図形である制御図形を撮影する撮影手段が撮影した撮影画像に含まれる制御図形から、前記仮想図形情報を取得する取得ステップと、
前記撮影画像に含まれる制御図形と、当該制御図形のサイズを示すサイズ情報と、前記取得ステップで取得した仮想図形情報とを用いて、前記移動ロボットと前記仮想図形との位置関係を取得する位置関係取得ステップと、
前記位置関係取得ステップで取得した位置関係に応じて、前記移動ロボットを移動させる移動手段による移動を制御する移動制御ステップと、をコンピュータに実行させ、
前記コードは、前記サイズ情報をも含み、
前記取得ステップでは、前記サイズ情報をも取得し、
前記位置関係取得ステップにおいて用いられるサイズ情報は、前記取得ステップで取得したサイズ情報である、プログラム。
発明の詳細な説明 【技術分野】
【0001】
本発明は、自律的に移動する移動ロボット等に関する。
【背景技術】
【0002】
従来、移動ロボットにおいて、移動範囲等を制限することが行われていた。例えば、特許文献1には、バーコードパターンの表示された物体を複数用意することによって仮想壁を定義し、掃除ロボットの移動を制限することが記載されている。また、例えば、特許文献2には、バーコードを印刷した紙を床面に一定間隔で貼り付け、掃除ロボット等を誘導することが記載されている。また、特許文献3には、バーコードなどで規定されたランドマークで有界領域を策定し、ロボットが隣接する有界領域へ移動しないようにすることが記載されている。また、特許文献4には、掃除ロボットが標示体の位置を検出及び記録し、その標示体が取り除かれた後も、その標示体が存在するかのように掃除を実行することが記載されている。また、赤外線を発する部品を掃除ロボットの移動空間に配置することによって、掃除ロボットの進入を制限するための仮想壁を設けたり、掃除ロボットが充電のため自動的にホームベースに帰還できるようにしたりすることが行われている。
【先行技術文献】
【0003】

【特許文献1】特開2012-221490号公報
【特許文献2】国際公開第2005/092632号
【特許文献3】特開2013-144112号公報
【特許文献4】特開2012-239897号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の移動ロボットにおいては、移動を制限したい領域や、移動させたい領域に、物体を配置したりバーコードを貼付したりする必要があった。例えば、特許文献1では、掃除ロボットの移動を制限するために用いられる仮想ラインを2個以上の特定パターンを用いて定義するため、2個以上の特定パターンをそれぞれ有する2個以上の物体を仮想ラインの位置に配置する必要があった。また、例えば、特許文献4でも、掃除ロボットが標示体の位置を検出及び記録するまでは、掃除ロボットに通過してほしくない領域に標示体を配置したり、掃除ロボットに掃除をしてほしい領域に標示体を配置したりすることが必要であった。また、仮想壁や移動ルート等は、実空間に配置されたバーコード等によって決められるものであり、それらの範囲等を任意に設定することはできなった。また、赤外線を発する部品を用いる場合には、その部品自体が高価であり、またその部品の動作のために充電池等の電源が必要であるという問題があった。また、赤外線による制御の場合には、窓際等の自然光の入射するところでは、自然光に含まれる赤外線によって誤作動する可能性があるという問題もあった。
【0005】
本発明は、上記問題を解決するためになされたものであり、移動ロボットの移動を制御するための仮想壁等の設定に用いられるものを、必ずしも仮想壁等の近くに配置しなくてもよいようにすることを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明による移動ロボットは、自律的に移動する移動ロボットであって、シートに表示された2次元図形であって、仮想的な図形である仮想図形の2次元図形に対する相対的な位置関係を示す仮想図形情報を含むコードを表示する2次元図形である制御図形を撮影する撮影手段と、撮影手段が撮影した撮影画像に含まれる制御図形から、仮想図形情報を取得する取得手段と、撮影画像に含まれる制御図形と、制御図形のサイズを示すサイズ情報と、取得手段が取得した仮想図形情報とを用いて、移動ロボットと仮想図形との位置関係を取得する位置関係取得手段と、移動ロボットを移動させる移動手段と、位置関係取得手段が取得した位置関係に応じて、移動手段による移動を制御する移動制御手段と、を備えたものである。
このような構成により、制御図形のコードに含まれる仮想図形情報によって、移動ロボットの移動を制御することができる。したがって、仮想図形情報によって任意の仮想図形を設定できるため、制御図形を必ずしも仮想図形の近くに配置しなくてもよく、移動ロボットの移動制御の設定の自由度が高まることになる。例えば、制御図形を必ずしも仮想壁の位置に配置しなくてもよいことになる。また例えば、任意の形状や範囲の仮想壁等を設定することができるようになる。また、仮想図形の設定のために赤外線を発する部品を用いなくてよいため、仮想図形を容易に設定することができ、また自然光によって誤作動することもない。
【0007】
また、本発明による移動ロボットでは、位置関係取得手段は、撮影画像に含まれる制御図形とサイズ情報とを用いて、移動ロボットの座標系と制御図形の座標系との座標変換を示す座標変換情報を算出し、座標変換情報と仮想図形情報とを用いて、移動ロボットと仮想図形との位置関係を取得してもよい。
【0008】
また、本発明による移動ロボットでは、コードは、制御図形の位置及び姿勢を示す位置姿勢情報をも含み、取得手段は、位置姿勢情報をも取得してもよい。その場合には、位置関係取得手段は、取得手段が取得した位置姿勢情報をも用いて、移動ロボットの座標系と制御図形の座標系との座標変換を示す座標変換情報を算出することになる。
このような構成により、制御図形に応じた任意の座標系における移動ロボットの位置を特定することも可能になる。したがって、例えば、制御図形に応じた座標系が、移動ロボットの存在する領域の座標系に対応している場合には、移動ロボットは、制御図形を用いることによって、その領域における移動ロボットの絶対的な位置を取得することも可能となる。
【0009】
また、本発明による移動ロボットでは、コードは、サイズ情報をも含み、取得手段は、サイズ情報をも取得し、位置関係取得手段が用いるサイズ情報は、取得手段が取得したサイズ情報であってもよい。
このような構成により、制御情報ごとにサイズ情報が異なる場合であっても、そのサイズ情報をコードに含めることにより、移動ロボットと仮想図形情報との位置関係を適切に取得することができるようになる。
【0010】
また、本発明による移動ロボットでは、仮想図形は、移動に関する境界を示すものであり、移動制御手段は、仮想図形の示す境界を越えないで移動するように、移動手段による移動を制御してもよい。
このような構成により、仮想図形によって、移動ロボットに対して仮想的な境界を設定できるようになる。
【0011】
また、本発明による移動ロボットでは、制御図形は、2次元コードであってもよい。
このような構成により、仮想図形のコードに含まれる仮想図形情報やその他の情報を精度高く読み出すことができるようになる。
【0012】
また、本発明による移動ロボット制御システムは、上記移動ロボットと、その移動ロボットの移動の制御に用いられる前記制御図形の表示された1または2以上のシートと、を備え、ユーザが、制御図形の表示されたシートを移動ロボットの移動空間に配置することにより移動ロボットの移動が制御される、ものである。
このような構成により、制御図形の表示されたシートを用いることにより、移動ロボットの移動を制御することができる。
【0013】
また、本発明による制御図形の表示されたシートは、上記移動ロボットが撮影する制御図形の表示されたシートであって、仮想図形情報を含むコードを表示する制御図形の表示されたシートである。
このような構成により、このシートを移動ロボットの移動する範囲に配置することによって、そのシートに表示された制御図形のコードに含まれる仮想図形情報を用いて、移動ロボットの移動を制御することができる。
【発明の効果】
【0014】
本発明による移動ロボット等によれば、制御図形のコードに含まれる仮想図形情報によって、移動ロボットの移動を制御できるようになる。
【図面の簡単な説明】
【0015】
【図1】本発明の実施の形態1による移動ロボットと制御図形との関係を示す模式図
【図2】同実施の形態による移動ロボットの構成を示すブロック図
【図3】同実施の形態における制御図形と撮影画像との関係を示す図
【図4】同実施の形態による移動ロボットの動作を示すフローチャート
【図5】同実施の形態におけるコンピュータシステムの構成の一例を示す図
【発明を実施するための形態】
【0016】
以下、本発明による移動ロボットや、制御図形の表示されたシートについて、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。

【0017】
(実施の形態1)
本発明の実施の形態1による移動ロボットについて、図面を参照しながら説明する。本実施の形態による移動ロボットは、2次元の図形である制御図形を用いて移動に関する制御がなされるロボットである。

【0018】
図1は、本実施の形態による移動ロボット1、及び制御図形2の表示されたシート3を備えた移動ロボット制御システムと、仮想図形4との関係を示す図である。制御図形2は、仮想図形情報を含むコードを表示する2次元図形である。その仮想図形情報は、仮想的な図形である仮想図形4の制御図形2に対する相対的な位置関係を示す情報である。移動ロボット1は、撮影手段11によって制御図形2を撮影し、その撮影画像に含まれる制御図形2と、制御図形2の実空間でのサイズとを用いることによって、移動ロボット1に対する制御図形2の位置(ベクトルC)や姿勢(例えば、オイラー角や、オイラー角に応じた回転行列、制御図形2の法線ベクトル等である。以下、他の姿勢についても同様である)をUVW座標系(移動ロボット1のローカル座標系)上の情報として知ることができる。また、移動ロボット1は、撮影画像に含まれる制御図形2から仮想図形情報を読み出すことによって、UVW座標系における仮想図形4の位置関係、すなわち制御図形2に対する仮想図形4の位置関係を知ることができる。その結果、移動ロボット1は、移動ロボット1と、仮想図形4との位置関係をUVW座標系上で知ることができ、その仮想図形4との位置関係に応じた移動制御を行うことができる。その仮想図形は、後述するように、例えば仮想壁等を示す図形であってもよい。また、移動ロボット1は、ワールド座標系(移動空間に固定された絶対座標系)であるXYZ座標系における制御図形2の位置(ベクトルB)や姿勢を、例えば、制御図形2のコードに含めるようにして知ることができてもよい。移動ロボット1は、このXYZ座標系における制御図形2の姿勢と、先に求めたUVW座標系における制御図形2の姿勢から、XYZ座標系とUVW座標系の変換を求めることができる。これにより先に求めたUVW座標系におけるベクトルCを、XYZ座標系におけるベクトルとして求めることができる。その結果、移動ロボット1は、XYZ座標系における移動ロボット1の位置(ベクトルA=ベクトルB-ベクトルC)や姿勢を知ることもできる。以下、そのような移動ロボット1の詳細について説明する。

【0019】
図2は、本実施の形態による移動ロボット1の構成を示すブロック図である。本実施の形態による移動ロボット1は、自律的に移動するロボットであって、撮影手段11と、記憶手段12と、取得手段13と、位置関係取得手段14と、移動手段15と、移動制御手段16とを備える。なお、自律的に移動するとは、ユーザ等から受け付ける操作指示に応じて移動するのではない、という意味である。この移動ロボット1は、例えば、掃除ロボットであってもよく、エンターテイメントロボットであってもよく、監視ロボットであってもよく、自律的に移動するその他の用途のロボットであってもよい。

【0020】
撮影手段11は、シート3に表示された制御図形2を撮影する。撮影手段11は、例えば、CCDやCMOSなどのイメージセンサによって実現することができる。また、撮影手段11は、撮影対象からの光をイメージセンサの受光平面に結像させるための光学系を有していてもよい。また、撮影画像のデータ形式等は問わない。通常、撮影手段11は移動ロボット1に固定されているため、移動ロボット1の移動に応じて撮影手段11の撮影対象が異なることになる。したがって、撮影手段11は、連続的に撮影を行い、撮影範囲に制御図形2が含まれる場合に、その制御図形2を含む撮影画像を記憶手段12に蓄積してもよい。なお、撮影範囲に制御図形2が含まれるかどうかは、例えば、制御図形2のパターンマッチングによって行ってもよく、その他の方法によって行ってもよい。

【0021】
ここで、制御図形2について説明する。制御図形2は、前述のように、コードを表示する2次元図形である。制御図形2の形状は、例えば、正方形や、長方形、その他の四角形状、その他の多角形状であってもよく、円形状や楕円形状、それらの組み合わせ等であってもよい。ただし、その制御図形2は、特定可能な3以上の点を有していることが好適である。その特定可能な点は、例えば、多角形の頂点であってもよく、円形状における切り欠き等のマークであってもよく、楕円形における長軸や単軸との交点であってもよく、特定可能なその他の点であってもよい。例えば、その特定可能な点間の距離が、後述するサイズ情報によって示されてもよい。なお、上記撮影手段11が撮影した撮影画像において、上記少なくとも3点と、仮想図形情報等を含むコードとを認識しうる範囲内において、制御図形2は凹凸があってもよく、曲面であってもよい。ただし、各点やコードの認識のし易さ、作成のし易さ、貼付のし易さ等の観点から、制御図形2は平面図形であることが好ましく、紙、フィルム、箔、織物等のシート3への印刷物等が好ましい。また、使用空間の美観上、制御図形が容易に認識できる範囲で、シートの色、背景図柄等も適宜選択することができる。制御図形2に表示されるコードは、仮想図形情報を含んでいる。また、そのコードは、サイズ情報を含んでいてもよく、位置姿勢情報を含んでいてもよい。制御図形2のコードは、例えば、2次元コードであってもよく、または、その他のコードであってもよい。前者の場合には、制御図形2は、2次元コードそのものであってもよい。2次元コードは、2つの次元の方向(例えば、水平方向と垂直方向)に情報を有するコードであり、例えば、マトリックス式の2次元コードであるQRコード(登録商標)であってもよく、スタック式の2次元コードであってもよく、その他の形式の2次元コードであってもよい。本実施の形態では、制御図形2がQRコード(登録商標)である場合について主に説明する。制御図形2が2次元コードでない場合には、サイズ情報等を含むコードは、例えば、サイズ情報等を示す文字列であってもよい。その場合には、制御図形2は、例えば、矩形や多角形状等の枠と、その枠内に表示された文字列とを表示するものであってもよい。その文字列は、数字や記号をも含んでいてもよい。

【0022】
仮想図形情報は、制御図形2に対する仮想図形の相対的な位置関係を示す情報である。その仮想図形は、例えば、立体であってもよく、平面や曲面であってもよく、直線や曲線であってもよく、点であってもよく、それらを組み合わせたものであってもよい。仮想図形情報が平面である仮想図形を示す場合に、その仮想図形の平面は、制御図形2の延長面である平面内に存在する矩形であってもよい。その矩形の上辺及び下辺が水平方向であり、右辺及び左辺が鉛直方向である場合には、仮想図形情報は、制御図形2の中心位置を基準とした仮想図形の4辺のそれぞれまでの距離を示す情報であってもよい。また、その仮想図形の平面が、制御図形2の延長面内に存在しない場合には、仮想図形情報は、制御図形2に対する仮想図形の位置を示す情報と、制御図形2に対する仮想図形の姿勢を示す情報とをさらに含んでいてもよい。その仮想図形情報は、制御図形2と所定の位置関係にある、制御図形2を基準としたIJK座標系あるいはXYZ座標系における仮想図形の位置関係を示す情報であってもよい。例えば、その仮想図形は、XYZ座標系の座標値であってもよく、aX+aY+aZ+a=0等で示される平面であってもよく、(X-b)/c=(Y-b)/c=(Z-b)/c等で示される直線であってもよく、その他の図形であってもよい。なお、a~a,b~b,c~cは係数である。仮想図形情報の用途については後述する。

【0023】
サイズ情報は、制御図形2のサイズを示す情報である。そのサイズは、通常、実空間でのサイズである。また、後述するように、撮影画像に含まれる制御図形2と、そのサイズ情報とを用いて、移動ロボット1の座標系における制御図形2の位置や姿勢を取得できるのであれば、サイズ情報はどのような情報であってもよい。そのサイズ情報は、例えば、制御図形2における特定可能な複数の点間のサイズ(長さ)を示すものであってもよい。その特定可能な複数の点は、制御図形2の輪郭上に存在してもよく、輪郭内に存在してもよい。すなわち、サイズ情報は、制御図形2の輪郭に関するサイズを示す情報であってもよく、制御図形2の輪郭以外の領域に関するサイズを示す情報であってもよい。その複数の点は、3点以上であってもよい。また、サイズ情報は、特定可能な複数の点間のサイズを結果として知ることができるのであれば、そのサイズそのものでなくてもよい。例えば、制御図形2が正方形である場合には、サイズ情報は一辺の長さであってもよい。その場合には、一辺の長さを用いて対角の頂点間の長さを算出できるからである。また、撮影画像に含まれる制御図形2における特定可能な点間の距離と、サイズ情報の示す実空間での長さとの対応が分かるようになっていることが好適である。例えば、制御図形2が長方形であり、サイズ情報が長辺の長さ及び短辺の長さである場合には、撮影画像において、長方形の長辺と短辺とを区別できないことがある。したがって、そのような場合には、例えば、長辺が水平方向となるように決められていてもよく、長辺や短辺の少なくとも一方を、他方と区別できるようにしていてもよい。後者の場合としては、例えば、一方の辺に切り欠きや突起等のマークを付けてもよく、長辺と短辺との色を変更してもよい。本実施の形態では、サイズ情報が、正方形であるQRコード(登録商標)の一辺の長さを示す場合について主に説明する。なお、サイズ情報は、制御図形2のコードに含まれていてもよく、または、移動ロボット1の図示しない記録媒体で記憶されていてもよい。前者の場合には、制御図形2ごとにサイズ情報が異なってもよいことになる。一方、後者の場合には、あらかじめ決められたサイズ情報の制御図形2を用いることが必要となる。

【0024】
位置姿勢情報は、制御図形2の位置及び姿勢を示す情報である。その位置姿勢情報は、例えば、図1のXYZ座標系における制御図形2の位置と姿勢を示す情報であってもよい。位置は、例えば、XYZ座標系における制御図形2の代表点の位置であってもよい。代表点とは、例えば、中心点であってもよく、特定の頂点であってもよく、または、制御図形2におけるその他の点であってもよい。その代表点は、撮影画像に含まれる制御図形2においても特定可能な点であることが好適である。また、姿勢は、前述のように、XYZ座標系に対する制御図形2のオイラー角や、そのオイラー角に応じた回転行列、XYZ座標系における制御図形2の法線ベクトル等であってもよい。

【0025】
なお、サイズ情報や位置姿勢情報は、結果としてサイズや位置及び姿勢を知ることができる情報であれば、サイズそのものを示す情報や、位置及び姿勢そのものを示す情報でなくてもよい。具体的には、制御図形2が正方形や矩形である場合には、3次元座標系における4頂点の座標値が分かれば、サイズや位置、姿勢を取得することができる。したがって、そのような場合には、制御図形2の4頂点の座標値が、サイズ情報及び位置姿勢情報であると考えることができる。

【0026】
ここで、仮想図形情報を少なくとも含むコードを表示する制御図形2が表示されたシート3を生成する方法について簡単に説明する。ユーザは、制御図形2と仮想図形との位置関係を決定し、その位置関係に応じた仮想図形情報を取得する。その仮想図形情報は、あらかじめ決められたフォーマットに応じた仮想図形の位置を示す数字列等(例えば、座標値や、平面の式の係数、直線の式の係数等)であってもよい。そして、ユーザは、その仮想図形情報を含むコードを表示する制御図形2を、コンピュータを用いることなどによって生成する。例えば、制御図形2が2次元コードである場合には、仮想図形情報を2次元コードのエンコーダでエンコードすることにより、2次元コードである制御図形2を生成できる。そして、その制御図形2をプリントアウトすることによって、制御図形2が表示されるシート3を生成することができる。なお、制御図形2のコードには、前述のようにサイズ情報や、位置姿勢情報が含まれていてもよい。例えば、プリンタ等に依存して制御図形2の大きさが異なることがあり得るため、ユーザは、プリントアウトした制御図形2のサイズを定規等で測ることによってサイズ情報を特定し、そのサイズ情報を含むコードを生成するようにしてもよい。また、例えば、制御図形2のコードが文字列である場合には、ユーザは、仮想図形情報等を示す文字列を含む制御図形2をプリントアウトしたり、手書きしたりすることによって、制御図形2が表示されるシート3を生成してもよい。

【0027】
記憶手段12には、撮影手段11によって撮影された撮影画像が記憶される。その撮影画像は、前述のように、制御図形2を有するものであってもよい。その撮影画像は、例えば、撮影手段11によって蓄積されてもよい。記憶手段12での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。記憶手段12は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。

【0028】
取得手段13は、撮影手段11が撮影した撮影画像に含まれる制御図形2から、仮想図形情報を取得する。具体的には、制御図形2のコードから仮想図形情報を取得する。また、制御図形2のコードにサイズ情報や位置姿勢情報が含まれる場合には、取得手段13は、撮影画像に含まれる制御図形2から、サイズ情報や位置姿勢情報をも取得してもよい。制御図形2が2次元コードである場合には、取得手段13は、その2次元コードをデコードすることによって、仮想図形情報等を取得できる。また、制御図形2が文字列を含むコードである場合には、取得手段13は、その文字列を文字認識することによって、仮想図形情報等を取得できる。なお、取得手段13は、台形補正等によって歪みを除去した後に、文字認識を行ってもよい。取得手段13によって取得された仮想図形情報等は、図示しない記録媒体において記憶されてもよい。

【0029】
位置関係取得手段14は、撮影画像に含まれる制御図形2と、その制御図形2のサイズを示すサイズ情報と、取得手段13が取得した仮想図形情報とを用いて、移動ロボット1と仮想図形との位置関係を取得する。そのサイズ情報は、取得手段13が取得したものであってもよく、または図示しない記録媒体で記憶されているものであってもよい。移動ロボット1と仮想図形との位置関係は、移動ロボット1の座標系における仮想図形の位置関係を示す情報であってもよい。具体的には、位置関係取得手段14は、撮影画像に含まれる制御図形2とサイズ情報とを用いて、移動ロボット1の座標系と制御図形2の座標系との座標変換を示す座標変換情報を算出してもよい。移動ロボット1の座標系における長さの単位と、サイズ情報の長さの単位とが異なる場合には、位置関係取得手段14は、サイズ情報を、移動ロボット1の座標系の長さの単位に変換してから用いてもよい。移動ロボット1の座標系とは、例えば、移動ロボット1が移動制御に用いる座標系であってもよい。制御図形2の座標系とは、制御図形2と所定の位置関係にある座標系であってもよい。その座標変換情報は、両座標系の座標変換を行うことができる情報であればどのようなものであってもよく、例えば、一方の座標系における他方の座標系の原点の位置を示す情報と、一方の座標系における他方の座標系の姿勢を示す情報(例えば、オイラー角や回転行列等)とを含んでいてもよい。位置関係取得手段14は、その座標変換情報と仮想図形情報とを用いて、移動ロボット1と仮想図形との位置関係を取得してもよい。また、取得手段13が位置姿勢情報を取得した場合には、位置関係取得手段14は、取得手段13が取得した位置姿勢情報をも用いて、移動ロボット1の座標系と制御図形2の座標系との座標変換を示す座標変換情報を算出してもよい。位置関係取得手段14によって取得された位置関係を示す情報は、図示しない記録媒体で記憶されてもよい。なお、この位置関係の取得の処理の詳細については後述する。

【0030】
移動手段15は、移動ロボット1を移動させる。その移動の方法は問わない。移動手段15は、例えば、タイヤや車輪、無限軌道等を用いて平面上を走行する走行手段であってもよく、歩行ロボットが有する脚式の移動手段であってもよく、プロペラ等を用いて空中を飛行する飛行手段であってもよく、移動のためのその他の手段であってもよい。

【0031】
移動制御手段16は、位置関係取得手段14が取得した位置関係に応じて、移動手段15による移動を制御する。すなわち、移動制御手段16は、移動ロボット1に対する仮想図形の位置関係に応じて、移動ロボット1の位置を制御する。例えば、仮想図形が移動に関する境界を示す場合には、移動制御手段16は、移動ロボット1が仮想図形の示す境界を越えないで移動するように、移動手段15による移動を制御してもよい。具体的には、移動制御手段16は、移動ロボット1の現在位置を取得し、その現在位置の軌跡が仮想図形によって示される境界と交わらないように制御してもよい。例えば、移動制御手段16は、移動ロボット1が境界の前に位置した場合に、方向を転換するように移動手段15を制御してもよく、停止するように移動手段15を制御してもよい。また、例えば、移動ロボット1の通過するべき位置を仮想図形が示す場合には、移動制御手段16は、仮想図形の示す位置に移動ロボット1が到達するように、または、仮想図形の示すルートを移動ロボット1が移動するように移動手段15を制御してもよい。具体的には、移動制御手段16は、移動ロボット1の目標位置を仮想図形の示す位置に設定し、移動ロボット1が仮想図形の位置に到達するように移動手段15を制御してもよい。また、例えば、移動ロボット1がより長時間滞在するべき領域を仮想図形が示す場合には、移動制御手段16は、仮想図形の示す領域における移動ロボット1の滞在時間が、他の領域に対して長くなるように移動手段15を制御してもよい。このような制御は、例えば、掃除ロボットである移動ロボット1に特定の領域を念入りに掃除させたい場合や、監視ロボットである移動ロボット1に特定の領域を念入りに監視させたい場合などに有用である。また、仮想図形の用途を示す情報が、制御図形2の表示するコードに含まれており、移動制御手段16は、その用途に応じた制御を行ってもよい。その用途は、例えば、境界や、目的地、ルート、滞在等であってもよい。なお、境界を越えないようにする移動制御や、目的地に到達するようにする移動制御、指定されたルートを通過するようにする移動制御等はすでに公知であり、その説明を省略する。また、現在位置を取得する方法は、例えば、オドメトリによる方法であってもよく、GPS等によって取得する方法であってもよく、加速度センサやジャイロ等を用いて取得する方法であってもよく、その他の方法であってもよい。

【0032】
ここで、位置関係取得手段14による移動ロボット1と仮想図形との位置関係を取得する方法について説明する。ここでは、制御図形2は、仮想図形情報とサイズ情報と位置姿勢情報とを含む正方形の2次元コードであるとする。また、サイズ情報は、その2次元コードの実空間における一辺の長さ「L」であるとする。また、位置姿勢情報は、制御図形2と所定の位置関係にある3次元直交座標系であるXYZ座標系における制御図形2の中心位置を示すベクトルと、ワールド座標系に対する制御図形2のz-x-zのオイラー角(θ,φ,ψ)とであるとする。なお、そのpの左上の添字がWである場合には、ワールド座標系のベクトルであることを示し、Lである場合には、後述する移動ロボット1のローカル座標系のベクトルであることを示すものとする。

【0033】
図3で示されるように、ローカル座標系xyzは、撮影手段11の視点を原点とし、受光平面と平行な方向にxy座標をとり、そのxy直交座標系に直交する視線方向にz軸をとった3次元直交座標系である。その撮影画像における制御図形2の4頂点を頂点V1~V4とし、ローカル座標系における頂点Viの位置ベクトルを、si=(psix,psiy,f)とする。ただし、i=1,2,3,4であり、Tは転置を示す。また、psix,psiyは、頂点Viのxy平面上の座標値であり、撮影画像において、基準点から各頂点V1~V4までのx軸方向及びy軸方向の距離を測定することによって取得できる。基準点は、ローカル座標系でx=y=0となる撮影画像上の点である。また、fは、焦点距離であり、撮影手段11の光学系によって決まる値である。なお、ローカル座標系と、ワールド座標系と、実空間とのそれぞれにおいて、長さの単位は同じであるとしている。

【0034】
実空間における制御図形2の4頂点の位置は、ローカル座標系において、スカラーkを用いて次のように表すことができる。
=ksi (1)
また、制御図形2の2次元コードから取得されたサイズ情報「L」を用いると、次の3個の式が得られる。
|=L (2)
|=L (3)
|=21/2L (4)
したがって、(1)~(4)式を用いることによって、k,k,kを求めることができ、その結果、(1)式から、ローカル座標系における制御図形2の各頂点の位置ベクトルを計算することができる。

【0035】
また、RQR(θ,φ,ψ),Rcam(α,β,γ)を、それぞれz-x-zのオイラー角(θ,φ,ψ),(α,β,γ)の回転行列であるとする。(θ,φ,ψ)は、前述のように、ワールド座標系における、QRコード(登録商標)である制御図形2の姿勢を示すz-x-zのオイラー角であり、(α,β,γ)は、ワールド座標系における、撮影手段11の受光平面の姿勢を示すz-x-zのオイラー角である。

【0036】
ワールド座標系の原点に、オイラー角(θ,φ,ψ)=(0,0,0)となるように制御図形2の中心位置を配置したときの制御図形2の3頂点のベクトルをそれぞれ,及びとすると、次式のようになる。
=(-L/2,+L/2,0) (5)
=(+L/2,+L/2,0) (6)
=(-L/2,-L/2,0) (7)

【0037】
また、ワールド座標系における制御図形2の各頂点のベクトルは、次のようにできる。
=RQR (8)
ここで、は、前述のように、ワールド座標系における制御図形2の中心位置を示す位置ベクトルである。,RQRは、制御図形2のコードに含まれる位置姿勢情報から得られる情報であり、は、制御図形2のコードに含まれるサイズ情報と、上記(5)~(7)式とを用いて容易に得られる情報である。

【0038】
また、(8)式の両辺にRcamを掛けて整理すると、i=1,2,3について次式のようになる。
camQR=Rcam
(9)
ここで、=()/2であるため、それを用いて(9)式を解くことによって、オイラー角(α,β,γ)を取得することができる。また、ワールド座標系におけるローカル座標系の原点から制御図形2の中心位置までのベクトルをとすると、
=Rcam-1 (10)
となる。したがって、ワールド座標系の原点からローカル座標系の原点までのベクトルcamを、次式のように算出できる。
cam
-Rcam-1 (11)
なお、上記説明は、camやRcamを算出する一例であって、他の方法によってそれらを算出することもできる。例えば、ローカル座標系における制御図形2の各頂点の位置ベクトルを用いて、ローカル座標系における制御図形2の姿勢を示すオイラー角を算出することも可能であり、それを用いることによって、Rcam等を算出することも可能である。

【0039】
このようにして、ワールド座標系とローカル座標系との座標変換を示す座標変換情報であるベクトルcam及び回転行列Rcamを得ることができたため、それらを用いて、ワールド座標系の仮想図形を示す仮想図形情報を、ローカル座標系における仮想図形の情報に変換できるようになる。したがって、位置関係取得手段14は、ローカル座標系における仮想図形の位置関係、すなわち、移動ロボット1と仮想図形との位置関係を取得することができる。

【0040】
なお、2以上の制御図形2を用いた移動ロボット1の制御も可能である。その場合には、制御図形2ごとに、仮想図形を設定することができる。例えば、第1の制御図形2のコードに含まれる仮想図形情報で示される仮想図形について、移動ロボット1のローカル座標系における位置関係を取得し、第2の制御図形2のコードに含まれる仮想図形情報で示される仮想図形についても、移動ロボット1のローカル座標系における位置関係を取得することによって、移動ロボット1は、その2個の仮想図形に応じて制御されることになる。また、1個の制御図形2のコードに、2以上の仮想図形を示す仮想図形情報が含まれていてもよい。また、2以上の制御図形2によって、同じ仮想図形を設定するようにしてもよい。制御図形2が撮影されなければ、その制御図形2のコードに含まれる仮想図形情報に応じた制御を行うことができない。したがって、制御図形2が撮影される可能性を上げるために、2以上の制御図形2によって同じ仮想図形を設定することは好ましいことである。なお、その場合には、それらの制御図形2は、異なる位置に配置されることが好適である。

【0041】
また、移動ロボット1の座標系として、視点を原点とし、受光平面がxy平面に平行となる座標系を用いる場合について説明したが、そうでなくてもよい。別途、移動ロボット1の座標系が存在してもよい。その場合には、上述したxyz座標系と、移動ロボット1の座標系との座標変換を行うことによって、上述したxyz座標系における仮想図形の位置関係を、移動ロボット1の座標系における仮想図形の位置関係に変換することができる。また、移動ロボット1において、撮影方向や撮影位置が変化しうる場合(例えば、制御図形2を探すため、移動ロボット1において、撮影手段11をパンニングしたり、チルトしたりする場合)には、移動ロボット1の基準位置、基準面に対する視点位置、受光平面の姿勢を考慮した上で、xyz座標系と、移動ロボット1の座標系との変換を行ってもよい。

【0042】
また、上記説明では、制御図形2の位置や姿勢が、2次元コードに含まれる位置姿勢情報によって示される場合について説明したが、そうでなくてもよい。その位置姿勢情報は、あらかじめ決められたものであってもよい。あらかじめ決められた位置姿勢情報としては、例えば、=(0,0,0)であり、RQRが3次元の単位行列である場合、すなわち、制御図形2の中心位置がワールド座標系の原点であり、制御図形2がXY平面上にある場合としてもよい。なお、RQRが3次元の単位行列である場合には、通常、オイラー角は、(θ,φ,ψ)=(0,0,0)となる。また、それ以外のあらかじめ決められた位置姿勢情報を用いてもよい。その場合には、例えば、そのあらかじめ決められた位置姿勢情報が制御図形2のコードに含まれていてもよく、または、移動ロボット1の図示しない記録媒体において、そのあらかじめ決められた位置姿勢情報が記憶されており、位置関係取得手段14は、その位置姿勢情報を読み出して用いてもよい。ここで、上記説明のように、制御図形2の位置や姿勢が、2次元コードに含まれる位置姿勢情報によって示される場合のメリットについて簡単に説明する。その場合には、例えば、ワールド座標系の原点を、移動ロボット1の移動空間の基準点(例えば、ある部屋の基準点等)とすることができる。そして、あらかじめ移動ロボット1がワールド座標系における移動空間の地図情報を保持している場合には、移動ロボット1は、撮影された制御図形2を用いてcamやRcamを算出することによって、地図上における位置を知ることができる。したがって、その場合には、移動ロボット1は、制御図形2を用いることによって、仮想図形の位置のみでなく、自らの位置をも知ることができるようになる。

【0043】
次に、移動ロボット1の動作について図4のフローチャートを用いて説明する。このフローチャートでは、制御図形2のコードに仮想図形情報、サイズ情報、及び位置姿勢情報が含まれる場合について説明する。
(ステップS101)撮影手段11は、撮影した画像に制御図形2が含まれているかどうか判断する。そして、制御図形2が含まれている場合には、ステップS102に進み、そうでない場合には、撮影した画像に制御図形2が含まれるまで、ステップS101の処理を繰り返す。なお、撮影手段11は、前述のように、パターンマッチング等によって、制御図形2を撮影したかどうかを判断してもよい。

【0044】
(ステップS102)撮影手段11は、撮影した画像に含まれる制御図形2が、すでに仮想図形情報等を取得したものであるかどうか判断する。そして、その制御図形2が、すでに仮想図形情報等を取得したものである場合には、撮影した画像を蓄積せずにステップS101に戻り、そうでない場合には、撮影した画像を記憶手段12に蓄積してステップS103に進む。なお、撮影手段11は、過去に撮影した制御図形2の画像を図示しない記録媒体で記憶しておき、撮影画像に含まれる制御図形2が、その記録媒体で記憶されている制御図形2のいずれかと一致する場合には、すでに仮想図形情報等を取得した制御図形2であると判断してもよい。その場合には、撮影手段11は、ステップS103に進む際に、新たに撮影した制御図形2の画像を、その図示しない記録媒体に蓄積するものとする。

【0045】
(ステップS103)取得手段13は、記憶手段12で記憶されている撮影画像に含まれる制御図形2のコードから仮想図形情報等を取得する。その取得の際に、取得手段13は、デコードや文字認識等の処理を行ってもよい。また、取得された仮想図形情報等は、図示しない記録媒体で記憶されてもよい。

【0046】
(ステップS104)位置関係取得手段14は、移動ロボット1の座標系と、制御図形2に対応する座標系との座標変換に関する座標変換情報を取得する。その取得された座標変換情報は、図示しない記録媒体で記憶されてもよい。具体的には、位置関係取得手段14は、サイズ情報と、撮影画像における制御図形2の頂点の位置と、(1)~(4)式とを用いて、を算出し、またその結果を用いてを算出する。また、位置関係取得手段14は、位置姿勢情報に含まれる制御図形2の姿勢を示す情報から、RQRを算出し、そのRQRと、(5)~(7)、(9)式と、サイズ情報とを用いて、撮影手段11の受光平面のオイラー角(α,β,γ)を算出することによって、回転行列Rcamを取得する。また、位置関係取得手段14は、(11)式と、位置姿勢情報に含まれる制御図形2の中心位置と、算出した回転行列Rcamとを用いて、camを算出する。このようにして、位置関係取得手段14は、座標変換情報であるベクトルcam及び回転行列Rcamを取得することができる。

【0047】
(ステップS105)位置関係取得手段14は、取得手段13によって取得された仮想図形情報の示す仮想図形に対して座標変換情報に応じた座標変換を行うことにより、移動ロボット1の座標系における仮想図形の位置関係を示す情報を取得する。具体的には、位置関係取得手段14は、ベクトルcam及び回転行列Rcamを用いて仮想図形情報の示すワールド座標系における仮想図形の位置関係を、ローカル座標系における仮想図形の位置関係に変換する。

【0048】
(ステップS106)位置関係取得手段14は、移動制御手段16に対して、移動ロボット1の座標系における仮想図形の位置関係を示す情報である制御情報を設定する。そして、ステップS101に戻る。
なお、図4のフローチャートには含まれないが、移動制御手段16は、その設定された制御情報に応じて、移動手段15による移動を制御するものとする。また、移動手段15は、移動制御手段16の制御に応じて移動ロボット1を移動させる。その結果、例えば、移動ロボット1は、境界を示す仮想図形を超えないように移動したり、ルートを示す仮想図形をたどるように移動したりすることになる。また、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。

【0049】
次に、実験例について説明する。この実験では、三脚の上部に2次元コードとしてQRコード(登録商標)を用い、QRコード(登録商標)による制御図形2の印刷された紙のシート3を固定した。その2次元コードに次の情報が含まれているものとする。なお、この具体例では、制御図形2の延長面内に仮想図形が存在し、次のt,b,l,rは、それぞれ制御図形2の中心位置から仮想図形の上辺、下辺、左辺、右辺までの長さであるとしている。なお、長さの単位は、mmである。
仮想図形情報:(t,b,l,r)=(500,1000,2000,800)
位置姿勢情報:
制御図形2の中心位置(X,Y,Z)=(12000,2500,1200)
制御図形2の姿勢(θ,φ,ψ)=(90°,0,0)
サイズ情報:L=180

【0050】
また、撮影手段11の撮影機構としては、6Mピクセル、1/2.5型のCCDを有するデジタルカメラ(SONY DSC-T9)を用いた。なお、そのデジタルカメラの焦点距離は6.33mmに設定した。また、撮影手段11を、2次元コードから約3mの位置に配置した。そして、デジタルカメラで撮影した撮影画像を用いて、仮想図形情報、位置姿勢情報、サイズ情報を取得し(ステップS101~S103)、上述のように座標変換情報を取得することによって、移動ロボット1のローカル座標系における仮想図形の位置を算出した(ステップS104,S105)。その結果、その仮想図形は、2次元コードの中心位置から上述のt,b,l,rに応じた距離の4辺を有する仮想面となっていた。したがって、その仮想面を用いて移動ロボット1を制御することにより、例えば、移動ロボット1の移動範囲を制限することなどができる。

【0051】
なお、この具体例では、シート3が紙である場合について説明したが、シート3は、2次元図形である制御図形2を表示することができるものであれば、どのようなものであってもよい。シート3は、例えば、フィルム、箔、膜、織物、プレート、板状のものなどであってもよく、制御図形2を表示可能なその他のものであってもよい。

【0052】
また、制御図形2の表示されたシート3をユーザが作成する場合について説明したが、そうでなくてもよい。例えば、複数のシート3があらかじめ用意されており、ユーザは、その中から目的にあったシート3を選択し、移動ロボット1の移動空間に配置してもよい。具体的には、次のようなシート3のセットが用意されていてもよい。
仮想図形(仮想壁)に関する情報 シートの枚数
後方進入禁止 5枚
前方1m以後進入禁止 2枚
半径2m以内進入禁止 2枚
後方30cm以後、左右方向各1mの範囲進入禁止 2枚
後方30cm以後、左方向1mの範囲侵入禁止 2枚
後方30cm以後、左方向2mの範囲侵入禁止 2枚
後方30cm以後、右方向1mの範囲侵入禁止 2枚
後方30cm以後、右方向2mの範囲侵入禁止 2枚
シートに向かって右方向1mの範囲進入禁止 2枚
シートに向かって左方向1mの範囲進入禁止 2枚
: :
: :
それらのシート3は、制御図形2に対して、前、後、上、下、右、左、斜め右上、斜め右下、斜め左上、斜め左下等の所定の範囲(例えば、A1メートル~A2メートル等)にある仮想図形を用いて、移動ロボット1の進入禁止や、近接促進等の移動制御を行うものである。

【0053】
なお、「後方進入禁止」等の仮想図形の位置関係を示す文字列や図などの情報が、制御図形2の表示されたシート3と対応付けられて表示されていてもよい。例えば、その仮想図形の位置関係を示す情報は、シート3の裏面に記載されていてもよく、シール状のシート3の枠外等に記載されていてもよい。また、例えば、「後方進入禁止」のシート3に表示されている制御図形2は、その制御図形2の延長面である仮想壁を示す仮想図形情報を含むコードを表示するものであってもよい。また、例えば、「前方1m以後進入禁止」のシート3に表示されている制御図形2は、その制御図形2の前方1mの位置に、制御図形2と平行な方向に延びる仮想壁を示す仮想図形情報を含むコードを表示するものであってもよい。また、例えば、「後方30cm以後、右方向0.2~1mの範囲侵入禁止」のシート3に表示されている制御図形2は、その制御図形2の右側20cmから1mまでの範囲であり、制御図形2の面から30cmだけ後方(制御図形2の裏面側)の位置の仮想壁を示す仮想図形情報を含むコードを表示するものであってもよい。そのシート3を壁に貼付することによって、例えば、その仮想壁の裏側に扉が存在するような場合に、その扉まで移動ロボット1が移動しないように制御することができる。また、ユーザは、例えば、「半径2m以内進入禁止」に対応するシート3を壁等に貼付することによって、移動ロボット1がその制御図形2の中心位置から半径2メートル以内に近づかないように制御することができる。
更に、上記シートは裏側に粘着剤層が形成され、多数の上記制御図形が並んで納められて制御図形部分が個々に型抜きされており、ユーザーが適宜必要な制御図形を剥がして用いるようになっていてもよい。尚特定の制御図形が無くなった時に備え、制御図形の印刷原稿を原紙として加えておけば、足らなくなった制御図形をユーザーが適宜印刷して用いることができる。

【0054】
以上のように、本実施の形態による移動ロボット1によれば、移動ロボット1の移動を制御するための制御図形2のコードが仮想図形情報を含み、その仮想図形情報を用いて移動ロボット1が制御されることによって、移動ロボット1の制御の自由度が高まることになる。例えば、従来例では、バーコード等を配置した位置が仮想壁等を決定することになっていたが、本実施の形態の場合には、その仮想壁等を制御図形2に対して任意の位置に設定することができることになる。また、上述のt,b,l,r等の仮想図形情報を用いることにより、その仮想壁等の範囲を決定することもでき、より細かい移動制御を実現できるようになる。また、コードにサイズ情報も含まれている場合には、異なったサイズの制御図形2を用いたとしても、移動ロボット1の制御を適切に行うことができるようになる。また、制御図形2のコードにサイズ情報や、位置姿勢情報も含まれている場合には、制御図形2のコードに含まれる情報のみで自己完結することになり、移動ロボット1に対してサイズ情報等を与える必要がなくなる。

【0055】
また、上記説明では、制御図形2に対応する座標系をワールド座標系とし、移動ロボット1に対応する座標系をローカル座標系としたが、それらの名称は、単に両座標系を区別するために用いただけであり、ワールド座標系とローカル座標系とは逆であってもよい。

【0056】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。

【0057】
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、あるいは、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。

【0058】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、生成したりした情報や、各構成要素が処理で用いるしきい値や数式、設定値等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。

【0059】
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いるしきい値や各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、あるいは、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。

【0060】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。なお、上記実施の形態における移動ロボット1の少なくとも一部の機能を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、自律的に移動する移動ロボットにおける処理をコンピュータに実行させるためのプログラムであって、シートに表示された2次元図形であって、仮想的な図形である仮想図形の2次元図形に対する相対的な位置関係を示す仮想図形情報を含むコードを表示する2次元図形である制御図形を撮影する撮影手段が撮影した撮影画像に含まれる制御図形から、仮想図形情報を取得する取得ステップと、撮影画像に含まれる制御図形と、制御図形のサイズを示すサイズ情報と、取得ステップで取得した仮想図形情報とを用いて、移動ロボットと仮想図形との位置関係を取得する位置関係取得ステップと、位置関係取得ステップで取得した位置関係に応じて、移動ロボットを移動させる移動手段による移動を制御する移動制御ステップと、をコンピュータに実行させるためのプログラムである。

【0061】
なお、上記プログラムにおいて、情報を取得する取得ステップなどでは、ハードウェアでしか行われない処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理は少なくとも含まれない。

【0062】
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD-ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。

【0063】
図5は、上記プログラムを実行して、上記実施の形態による移動ロボット1の少なくとも一部の機能を実現するコンピュータシステム900の内部構成を示す図である。図5において、コンピュータシステム900は、CD-ROMドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。また、コンピュータ901は、CD-ROMドライブ905に加えて、MPU911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANやWAN等への接続を提供する図示しないネットワークカードを含んでいてもよい。

【0064】
コンピュータシステム900に、上記実施の形態による移動ロボット1の少なくとも一部の機能を実行させるプログラムは、CD-ROM921に記憶されて、CD-ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD-ROM921、またはネットワークから直接、ロードされてもよい。また、CD-ROM921に代えて他の記録媒体(例えば、DVD等)を介して、プログラムがコンピュータシステム900に読み込まれてもよい。

【0065】
プログラムは、コンピュータ901に、上記実施の形態による移動ロボット1の少なくとも一部の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。

【0066】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0067】
以上より、本発明による移動ロボット等によれば、制御図形のコードに含まれる仮想図形情報によって、移動ロボットの移動を制御できるという効果が得られ、自律的に移動する移動ロボット等として有用である。
【符号の説明】
【0068】
1 移動ロボット
2 制御図形
3 シート
11 撮影手段
12 記憶手段
13 取得手段
14 位置関係取得手段
15 移動手段
16 移動制御手段
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4