JPH06259131A - 移動ロボットの誘導制御装置 - Google Patents

移動ロボットの誘導制御装置

Info

Publication number
JPH06259131A
JPH06259131A JP4824193A JP4824193A JPH06259131A JP H06259131 A JPH06259131 A JP H06259131A JP 4824193 A JP4824193 A JP 4824193A JP 4824193 A JP4824193 A JP 4824193A JP H06259131 A JPH06259131 A JP H06259131A
Authority
JP
Japan
Prior art keywords
robot
orientation
module
estimation
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP4824193A
Other languages
English (en)
Inventor
Akio Kosaka
明生 小坂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Olympus Corp
Original Assignee
Olympus Optical Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Olympus Optical Co Ltd filed Critical Olympus Optical Co Ltd
Priority to JP4824193A priority Critical patent/JPH06259131A/ja
Publication of JPH06259131A publication Critical patent/JPH06259131A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 (修正有) 【目的】 移動ロボットの位置や姿勢の推定値が、実際
値から、かけ離れた場合に、環境内経路を再設計して、
障害物を多く含むような複雑な環境下でも、安定でかつ
高速な移動ロボットの誘導を実現する。 【構成】 推定計画部3がその位置・姿勢の推定のため
に環境の一部または環境に含まれる道標を観察する方法
を計画した後、位置推定部7が地点Cで環境観察と位置
推定のための処理を開始するとともに、移動制御部4は
地点Bに向かってロボットの移動を制御し、位置推定部
7が地点Cにおけるロボットの位置・姿勢の推定が終了
した地点Dにおいて、移動制御部4が算出した地点Cと
地点Dの事前推定値と位置推定部7が推定した地点Cの
新たな位置姿勢推定値とを利用して位置更新部8が地点
Dでのロボットの位置と姿勢の推定値を更新し、その更
新された位置から目的地Bまでの経路を経路計画部1が
再計画する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は移動ロボットの誘導制御
装置に関する。
【0002】
【従来の技術】以下の文献は移動ロボットの誘導制御装
置に関する技術を開示している。
【0003】文献1:A.Kosaka and A.C.Kak,"Fast vis
ion-guided mobile robotnavigation using model-base
d reasoning and prediction of uncertainties,"Compu
ter Vision,graphics and Image Processig--Image Und
erstanding,Vol.56,No..3,November 1992,pp271-329. 文献2:O.I.Camps,L.G.Shapiro,and R.M.Haralick,"Ob
ject Recognitionusing Prediction and Probabilistic
Matching,"Proceedings of the 1992IEEE Internation
al Conference on Intelligent Robots and Systems,Ra
leigh,NC,1992,pp.1044-1052. 病院や工場さらには原子力発電所の内部など、物を自動
的に運搬したり、人間が入れないような危険で遠隔な場
所で、自律移動の利点を生かした移動ロボットが応用さ
れている。一般的に、移動ロボットには走行距離計な
ど、移動用モーターに装着された内部センサがあるが、
走行距離計から読み取れる移動ロボットの位置や姿勢の
値は、実際の位置と姿勢からかけ離れたものとなる。こ
うした違いは、移動ロボットの車輪と床面との間の滑べ
りや、移動ロボットの車輪間の半径の違い、移動ロボッ
トの左右重量のバランスの違いなどによるものであるこ
とが、文献1に説明されている。しかも、ロボットが長
い距離を移動すれば移動するほど、その違いは大きくな
ることが予想される。
【0004】こうした問題を解決するためには、ロボッ
トに与えられた環境の地図とロボットが環境を観察した
結果をロボット自身が参照して、環境に対するロボット
の相対位置と姿勢を推定することが重要となる。こうし
た方法としては、文献1に表されたような方法がある。
文献1の方法では、ロボットの環境をモデル化してお
き、ロボットの位置と姿勢の不確定度が大きくなったと
き、ロボットが自分の位置と姿勢を推定するように制御
する。推定すべきときには、まずロボットは完全に立ち
止まる。そして、その位置でどちらの方向を向いて環境
を観察したらよいかを計画し、その方向でロボットが見
るべき予測図を作成する。その予測図に現れる予測道標
(ランドマーク)を選択し、その予測道標に対応する画
像道標を実際にロボットが撮影した画像の中から抽出
し、予測図内の予測道標の環境内での位置と画像内の画
像道標の画像内に位置を比較することにより、環境に対
するロボットの相対的位置を計算するわけである。その
計算後、ロボットは環境内の経路を再計画して、ロボッ
トは目標地に向けて再出発することになる。
【0005】この方法では、予測画に現れる顕著な予測
道標に対応する画像道標だけを画像内から抽出しようと
試みるので障害物を多く含むような複雑な環境下でもロ
ボットを誘導することができたが、画像内からの画像道
標抽出ならびに予測道標と画像道標の比較に時間がかか
るので、位置姿勢推定のためのロボットが立ち止まって
いる時間が多大となるという問題点があった。
【0006】別の従来例としては、特開昭60−217
412号公報をあげることができる。この従来例では、
ロボットはある一定時間間隔で環境の観察を行い、自分
の位置を推定するように制御されている。実際には、ロ
ボットは自分の位置の事前推定量X0 を用意しておき、
その事前推定量をロボットの観察の視点と仮定して環境
モデルから予測画像を生成し、実際に観測された観測画
像と予測画像とを比較する。この比較によって得られた
画像誤差Ef をロボットの位置誤差Ex に変換し、この
位置誤差Ex をリアルタイムでロボットにフィードバッ
クすることでロボットが次に進むべき方向や位置を設定
するという方法を提案している。
【0007】この方法を用いると、単純な環境では画像
認識による高速な誘導は実現できるが、ロボットの前方
に障害物があるような複雑な環境においては、ロボット
の誘導が困難になるという問題点があった。たとえば、
ある一定時間ロボットの前方に障害物などがあり、予測
画像にない物体の特徴が道標として抽出されたとき、そ
の期間中ロボットが進むべき方向が定義されなかった
り、本来進むべきでない方向に移動したりするので、安
定した誘導が困難となる点があげられる。
【0008】さらに、複数個の画像特徴と予測特徴を比
較する際、複数の特徴の中で最も良好に認識された特徴
を誘導の指標とする点に別の問題点がある。ロボットの
位置姿勢を平面上で規定するには少なくとも3個のパラ
メータ、すなわち、平面上の位置座標(px ,py )と
ロボットの角度方向φを決定しなければならない。従来
例で説明されているように1本の予測直線成分と1本の
観測直線成分でロボットの位置誤差を計算する場合を考
える。直線成分の端点は、3次元空間内にある他の物体
による遮蔽、照明条件、あるいは測定誤差の問題で、必
ずしも正確に検出できるとは限らない。そこで端点の情
報を使用しないで直線として照合しようとすると、照合
によって得られるパラメータの制約の数は2にすぎな
い。
【0009】従って、推定する3次元パラメータを制約
数2のパラメータによって推定することとなり、安定し
た解は必ずしも求められないことが示される。さらに、
障害物などがロボットの観測画像内に新たな観測パター
ンを形成するときには、照合の正確さの点で、1組の特
徴間の照合だけによる位置の測定には問題がある。
【0010】
【発明が解決しようとする課題】こうした問題を解決す
るには、複数の特徴パターンと複数の観測パターンの照
合によって得られる制約条件を融合して解を求めればよ
いが、従来例ではこの点に関して解説するに及んでいな
い。一方、このように複数の予測パターンと複数の観測
パターンとの照合を考えると、第1の従来例のように処
理に要する時間がかかることが予測され、従来例で示さ
れているようなリアルタイムによる位置情報のフィード
バックが困難であるという問題点があった。
【0011】本発明の移動ロボットの誘導制御装置はこ
のような課題に着目してなされたものであり、その目的
とするところは、障害物を多く含むような複雑な環境下
でも、安定でかつ高速な移動ロボットの誘導を実現する
ことにある。
【0012】
【課題を解決するための手段及び作用】上記の目的を達
成するために、本発明の移動ロボットの誘導制御装置
は、環境の地図を記憶する手段と、その地図を利用しロ
ボットの経路を計画する経路計画手段と、その経路情報
に基づいてロボットの移動を制御しロボットの位置姿勢
の事前推定値を算出する移動制御手段と、前記地図を利
用し環境の一部または環境に含まれる道標を観察してロ
ボットの位置・姿勢を推定する位置推定手段と、ロボッ
トの位置・姿勢の推定方法を計画する推定計画手段と、
ロボット位置・姿勢の推定値の更新を行う位置更新手段
とを具備し、ある地点Aから別の地点Bまで移動するこ
とを命令された移動ロボットの誘導制御装置において、
経路計画手段が作成した経路に基づいて移動制御手段が
制御するロボットの進行に応じて、推定計画手段がその
位置・姿勢の推定のために環境の一部または環境に含ま
れる道標を観察する方法を計画した後、位置推定手段が
地点Cで環境観察と位置推定のための処理を開始すると
ともに、移動制御手段は地点Bに向かってロボットの移
動を制御し、位置推定手段が地点Cにおけるロボットの
位置・姿勢の推定が終了した地点Dにおいて、移動制御
手段が算出した地点Cと地点Dの事前推定値と位置推定
手段が推定した地点Cの新たな位置姿勢推定値とを利用
して位置更新手段が地点Dでのロボットの位置と姿勢の
推定値を更新し、その更新された位置から目的地Bまで
の経路を経路計画手段が再計画し、その経路にもとづい
て移動制御手段がロボットの移動を制御することを基本
サイクルとし、以上の基本サイクルをロボットが地点B
付近に到達するまで繰り返す。
【0013】
【実施例】以下、図面を参照して本発明の実施例を説明
する。
【0014】まず、第1実施例について説明する。本実
施例で説明される移動ロボットは、あらかじめ地図が与
えられた環境の中を移動することを前提としている。そ
の環境の地図は、環境の特徴となる対象物や道標(ラン
ドマーク)を含んだものである。しかしながら、その環
境に障害物が存在しても構わない。また、環境の地図は
必ずしも正確でなくても構わないとする。
【0015】ロボットが環境を移動することを明確にす
るためには、こうした環境とロボットとの位置関係を規
定する必要がある。その例として、ロボットが部分的に
平面で近似できる環境内を移動すると考える。するとロ
ボットの位置と姿勢を規定するためには、3個のパラメ
ータ、すなわち各部分平面上でのロボットの基準点の位
置(px,py)と各部分平面上でのロボットの向き
(方角、方向)φを利用すればよい。
【0016】より一般的には、ロボットが3次元空間内
を移動すると仮定すると6個のパラメータ、すなわちロ
ボット内の基準点の位置(px,py,pz)とロボッ
トの3次元方向(方角)(φx,φy,φz)によって
規定することができる。本実施例では、どちらの方法で
位置関係を規定しても構わないが、説明を簡単にするた
めに、以下の実施例ではロボットは部分的に平面で記述
できる環境を移動すると仮定する。
【0017】図2は、この仮定のもとで3個のパラメー
タを説明したものである。図中、斜線で表された5角形
はロボットを表し、ハッチングされた領域はロボットが
移動できる通路を表している。
【0018】環境を記述するために、環境内にある原点
Owを設定し、この原点に基づいて世界座標系(xw,
yw,zw)を定義する。さらにロボットに関連するロ
ボット座標系(xr,yr,zr)(原点をOrとす
る)を定義する。ロボットは2次元空間内を移動するの
で、ロボット座標系のzr軸は、世界座標系のzw軸と
平行で、ロボット座標系の原点Orと世界座標系の原点
Owは同一平面上にあると設定してもかまわない。この
条件のもとで、世界座標系とロボット座標系を関連づけ
るためには、3個のパラメータp=(px,py,φ)
が必要となる。ここに、(px,py)はロボット座標
系の原点Orの、世界座標系におけるxy座標であり、
φはxrのxwに対する回転角度である。
【0019】ロボットの移動にともない、ロボット座標
系の位置と方向は順次変化することとなるが、その位置
と方向はp=(px,py,φ)によって規定すること
ができる。本実施例では、このベクトルp=(px,p
y,φ)をロボットの位置と姿勢を表すパラメータと呼
ぶことにする。もし、3次元的な移動を考える際には、
ロボットの位置と姿勢を表すパラメータとして、p=
(px,py,pz、φx,φy,φz)を利用すれば
よい。
【0020】文献1で説明されているように、ロボット
の位置と姿勢は、ロボットが移動するにつれて不確定と
なる。例えばロボットが車輪駆動の場合には、車輪間の
半径の違い、床面でのすべり、また移動量を計測するセ
ンサでの読み取り誤差などが原因となることが知られて
いる。従って、ロボットはその位置と姿勢を表すパラメ
ータを移動中に推定することが重要となる。本実施例が
提案しようとするのは、ロボットの移動に際しロボット
の位置と姿勢の推定処理を効率的に制御する方法であ
る。
【0021】図1は、本実施例の基本構成を表したもの
である。移動ロボットの誘導制御部分は、ロボットが移
動する環境の地図やその環境に存在する道標を記憶する
地図記憶モジュール2と、その地図情報101と操作者
からの移動命令100に基づいて出発地から目的地まで
の経路を計画する経路計画モジュール1と、その経路情
報104をロボットが移動できる形の基本コマンドに分
解し実際にロボットの移動機構がその移動を実行してい
るかを管理・制御し、ロボットの位置と姿勢を表すパラ
メータを事前推定値として随時算出する移動制御モジュ
ール4と、ロボットの位置と姿勢を環境を認識すること
によって推定する方法を計画する推定計画モジュール3
と、その推定計画に基づいて実際に位置姿勢推定を行う
位置姿勢推定モジュール7と、その位置推定に必要な画
像を撮像する画像入力モジュール9と撮影された画像信
号を記憶する画像記憶モジュール10と、位置姿勢推定
モジュール7が新しいロボットの位置姿勢推定値109
を計算したとき、移動制御モジュール4が算出した事前
位置姿勢値105を新しい推定値を用いて更新する位置
更新モジュール8と、移動ロボットの前方にある障害物
を検知し、障害物がある領域の情報を移動制御モジュー
ル4に告知する障害物検知モジュール6からなる。
【0022】以下、各モジュールの機能に関して説明す
る。
【0023】まず、地図記憶モジュール2について説明
する。地図記憶モジュール2は、環境に関するモデルを
含んだものである。環境内にある経路を図2にあるよう
に世界座標系xy平面上に投影して、2次元的な地図と
して保有している。具体的に述べれば、ロボットが移動
できる経路の境界線を基本要素として地図を作成する。
【0024】図3は、図2に表された環境について、こ
れら基本要素としての境界線を表したものである。図3
において、直線成分L1 ,…,L20は境界線を表す。こ
の例の場合は直線成分を境界線の基本要素として表した
が、基本要素としてパラメータ化ができる曲線成分など
で表しても構わない。こうした基本要素は世界座標系で
のxy座標を用いてパラメータ化される。例えば、図3
のL1 の場合には、L1 が直線成分があることから2端
点のxy座標(x11,y11),(x12,y12)を用いて
表されることとなる。
【0025】境界を表す各基本成分には、経路を特徴づ
けるような道標が割り付けられている。ここで道標とし
ては、経路内にあるドア、掲示版、窓、床と壁を分ける
側線、あるいは特殊なマークなどであってもよい。図4
は、こうした道標の例を表したものである。図中、道標
としては、ドア301、掲示版302、側線303、3
04が示されている。こうした道標にはそれぞれID番
号が与えられている。さらに、道標の位置を表すパラメ
ータは3次元の世界座標系の中での3次元ベクトルを基
準として記述される。例えば、図4のドア301の場合
には、そのドアを構成する4本の直線成分を詳細特徴要
素として所有し、以下のような、データ構造で表現され
る: ID:301 種類:ドア 詳細特徴要素個数:4 詳細特徴要素: 1:ID:3011 種類:直線成分 端点:(x1 ,y1 ,z1 ),(x2 ,y2 ,z1 ) 2:ID:3012 種類:直線成分 端点:(x1 ,y1 ,z2 ),(x1 ,y1 ,z2 ) 3:ID:3013 種類:直線成分 端点:(x1 ,y1 ,z2 ),(x2 ,y2 ,z2 ) 4:ID:3014 種類:直線成分 端点:(x2 ,y2 ,z2 ),(x2 ,y2 ,z1 ) ここで、(x1 ,y1 ,z1 ),(x2 ,y2 ,z2 )
などは直線成分の端点のxyz座標を表す。道標はこの
ように、この詳細特徴要素が世界座標系での3次元座標
をパラメータとして表現されている。
【0026】次に、経路計画モジュール1について説明
する。
【0027】図1において、移動ロボットには操作者な
どから移動命令100が与えられる。その移動命令は、
出発地Aから目的地Bへ移動せよ、という形でのコマン
ドである。移動コマンドの地点A、Bは世界座標系での
xy座標とロボットの方向で与えられる。すなわち、
A:(xa,ya,φa),B:(xb,yb,φb)
の形で与えられる。ここに、(xa,ya)は出発地A
の世界座標系でのxy座標であり、φaは出発地Aにお
けるロボットの方向を表したものである。一方、(x
b,yb)は目的地Bの世界座標系でのxy座標であ
り、φbの目的地Bにおけるロボットの方向を表したも
のである。ここで出発地Aを表す値は、必ずしも正確な
値である必要はなく、その推定値であってもよい。
【0028】このように、ロボットに移動の出発地Aと
目的地Bが与えられると、その命令は経路計画モジュー
ル1に送られる。経路計画モジュール1では、地図記憶
モジュール2に格納された地図情報に基づいて出発地A
から目的地Bまでの経路が計画される。その経路情報は
移動制御モジュール4に送られる。その経路が如何にし
て作成されるかについては、例えば文献1などが説明し
ている。これには多くの方法が考えられるが、経路を計
画する方法が本実施例の主となる点ではないので、ここ
では詳しい説明を省略する。
【0029】図5は、経路計画モジュールが作成した経
路を表したものである。これは、図3の出発地Aから目
的地Bまでの経路を計画した結果である。図3におい
て、矢印で表示されているのは、地点A、Bでのロボッ
トの方向を表したものである。図5の場合は、出発地A
から目的地Bまでの3本の直線成分s1 ,s2 ,s3 で
近似される。この経路情報は、その直線成分の端点の世
界座標の形、すなわち、点A,P1 ,P2 ,Bという点
列の2次元世界座標の形で、移動制御モジュール4に送
られる。
【0030】次に、障害物検知モジュール6について説
明する。
【0031】障害物検知モジュール6は、移動ロボット
の前方に存在する障害物を検知するモジュールである。
本実施例の場合、このモジュールには、超音波センサア
レイが装備されている。超音波センサアレイは、ロボッ
トの前方に超音波を発し、そのエコーが帰ってくるまで
の時間を計測することにより、障害物の存在する相対的
な方向と距離とその障害物の大きさを検出するものであ
る。この結果により、もしロボットの経路を侵害するよ
うな障害物が検知されたときには、その障害物の存在す
る相対的な方向と距離とその障害物の大きさの情報11
5を移動制御モジュール4に送る。
【0032】次に、移動制御モジュール4について説明
する。
【0033】経路計画モジュール1から与えられる経路
情報104は点列A,P1 ,P2 ,…,Pn ,Bで表現
され、その点間はほぼ直線成分で近似できるものから成
り立つ。移動制御モジュール4では、上記直線成分をロ
ボットの移動軌道とするように、ロボットに装着された
車輪や足を制御する機能を果たす。
【0034】実際、移動ロボットには、図1には図示さ
れない車輪や足などを備えた移動機構がある。この移動
機構は、この移動制御モジュール4によって制御され
る。移動制御モジュール4は、前述の直線成分で近似さ
れた軌道を直進や回転などという移動機構が認識できる
基本コマンドに変形し、そのコマンドに対応する移動が
移動機構で実行されたか否かをモニタしながら、移動を
制御することになる。実際には移動機構に装着された移
動量を計測するセンサの出力とコマンドで示された移動
量との差をモニタしながら移動を制御する。
【0035】さらに、移動制御モジュール4は、ロボッ
トの移動量に基づいて、環境に対する移動ロボットの位
置と姿勢p=(px,py,φ)を各時間ごとにモニタ
し、目的地Bに到着したか否かも常時チェックする。こ
うしてモニタされたロボットの位置姿勢データは、経路
計画モジュール1、推定計画モジュール3、位置姿勢推
定モジュール7、位置更新モジュール8などで、事前推
定値として利用される。
【0036】一方、もし障害物検知モジュール6が障害
物をロボットの前方に検知したときには、移動制御モジ
ュール4が局所的にその障害物を退避するような局所的
な経路を生成し、その新しい経路に従って障害物を退避
する。この際、ロボットはあらかじめ作成された経路
A,P1 ,P2 ,…,Pn ,Bから離れてしまうので、
障害物退避後、移動制御モジュール4はもとの経路に復
帰するように、ロボットの経路を局所的に計画し、その
移動を移動機構に命令する。
【0037】次に、推定計画モジュール3について説明
する。
【0038】ロボットが自分の位置と姿勢を推定する必
要が発生したとき、推定計画モジュール3は、環境のど
の位置で、どの方向に対して、どのような手段で環境を
観察したらよいかを計画する。具体的には、現在位置す
る場所付近で観察に都合のよい位置と姿勢、あるいはカ
メラの視線方向を設定するものである。このような計画
を作成するために、推定計画モジュール3は、移動制御
モジュール4が送出する現在地の事前位置姿勢推定値1
05と、地図記憶モジュール2が送出する道標情報10
2とを利用する。
【0039】図6は、推定計画モジュール3の処理を説
明するためのものである。図6において、ロボットは現
時点でPで示される位置で矢印で示された方向を向いて
いると仮定する。その時、ロボットに装着されたカメラ
を含む画像入力モジュール9で撮影されると予測される
ものは、図6の黒色で示された環境の領域であることが
わかる。そこで、推定計画モジュール3は、この黒色で
示された領域に存在する道標群を選択する。これを実行
するには、黒色で示される領域と、地図記憶モジュール
2に格納されている境界線を示す基本要素との交わりを
求めればよい。図6では、直線成分L2 の一部である線
分Q1 Q2 、直線成分L3 の一部である線分Q2 Q3 、
そして直線成分L14の一部である線分Q4 Q5 が、これ
に相当する。そして、こうした線分領域Q1 Q2 ,Q2
Q3 ,Q4 Q5 内に含まれる道標を地図記憶モジュール
2の道標情報から抽出する。推定計画モジュール3で
は、現在地の推定値からロボットの位置と姿勢を推定す
るのに充分な数の道標が得られたときには、現在地の位
置と姿勢で、ロボットの位置と姿勢を推定することとし
て、現在地から可視な道標の情報を位置姿勢推定モジュ
ール7に送出する。
【0040】もし現在地の事前推定値では、ロボットの
位置姿勢を推定するのに充分な道標が得られないと判断
できるときには、まず画像入力モジュール9内のカメラ
の位置や姿勢を変更して充分な可視な道標が得られるか
否かをチェックする。具体的には、現在のカメラの方向
から、45°、−45°、90°、−90°、135
°、−135°、180°などの角度分だけカメラを回
転したと仮定したときに、その新しい方向での道標の数
をチェックすることによって回転方向を決定する。
【0041】もし、移動ロボットのカメラが固定されて
いて、回転できないときには、ロボット自体を上記のよ
うな角度分回転すると仮定したときの道標の数と内容を
チェックする。もしある方向が決定したら、その回転角
度分の移動を移動制御モジュール4に命令し、ロボット
を回転させた後、可視の道標の情報を位置姿勢推定モジ
ュール7に送出する。
【0042】もし、現時点の回転だけでは、充分な可視
な道標が得られないときには、移動ロボットを進行方向
に移動させた時に充分な道標が得られる場所を計算す
る。この計算は、現時点PからBまでの経路を適当な間
隔で離散化することによって実現する。その点をPに近
い方から、R1 ,R2 ,…,Rm,Bとする。そして、
R1 ,R2 ,…,Rm,Bの順で、その点での可視な道
標の数をチェックすればよい。
【0043】もし、道標の数が点Riで充分であること
がわかったならば、PからRiまで、ロボットを移動さ
せることを移動制御モジュール4に命令する。その移動
が確認された後、ロボットは地点Riでの可視な道標の
情報を位置姿勢推定モジュール7に送出する。もちろ
ん、送出される道標の情報は、前述した道標のデータ構
造に従ったものであるが、道標としては、その全貌が可
視でなくても構わない。実際には、道標に含まれる詳細
特徴要素がいくつか可視であるかが、推定計画モジュー
ル3が推定を実行すべき位置と姿勢を決定する条件とな
る。
【0044】こうしてロボットの局所的な移動が必要と
なったときには、推定計画モジュール3は、移動制御モ
ジュール4と連携して、ロボットの位置姿勢を観察に必
要な位置まで移動させた後、ロボット位置姿勢推定に必
要な観察の情報を位置姿勢推定モジュール7に送出す
る。
【0045】次に、画像入力モジュール9について説明
する。
【0046】画像入力モジュール9は、画像を入力する
TVカメラなどを含む。このTVカメラは、その視線方
向が回転によって変更できるものでもよいし、ロボット
本体に固定されているものでも構わない。TVカメラの
向きを変更できるものに関しては、先に述べたように、
推定計画モジュール3のカメラ移動命令によってカメラ
の向きの方向が決定される。カメラで撮影された画像信
号114は、画像記憶モジュール10へ送られる。ここ
で、画像入力モジュール9内に格納されているカメラ
は、較正されていると仮定する。すなわち、3次元空間
内の点Pを既知のロボットの位置姿勢で撮像したときに
は、点Pの像P′の位置は計算できると仮定する。
【0047】次に、画像記憶モジュール10について説
明する。
【0048】画像入力モジュール9で撮像された画像信
号114が、画像記憶モジュール10で受けとられる
と、その信号はまずディジタル信号に変換され、本モジ
ュール内にある画像メモリに格納される。位置姿勢推定
モジュール7で、ロボットの位置と姿勢の推定の処理が
必要になったときには、ディジタル化されたカメラ画像
データ113が位置姿勢推定モジュール7に送出され
る。
【0049】次に、位置姿勢推定モジュール7について
説明する。
【0050】位置姿勢推定モジュール7は、推定計画モ
ジュール3で可視であると予測された道標107を画像
記憶モジュール10に格納されたカメラ画像113の中
から抽出し、道標のカメラ画像内での位置と世界座標系
での道標の位置と関係を利用して、ロボットの世界座標
系に対する位置と姿勢を推定するモジュールである。推
定計画モジュール3によって与えられる可視な道標の情
報は、その詳細特徴要素の3次元パラメータとして与え
られる。移動制御モジュール4によって与えられる位置
姿勢推定値105により、推定すべきロボットの位置と
姿勢から、どのような詳細特徴要素がカメラ画像のどこ
に位置するかを予測することができる。たとえば、いま
画像入力モジュール9のカメラの較正行列をTとし、ロ
ボットの位置姿勢を表すパラメータを前述したようにp
=(px,py,φ)とする。このとき、世界座標系の
3次元点P(x,y,z)をカメラによって撮影したと
き、その画像内の像の位置P′(r,c)は、遠近効果
を表すパラメータwを用いて、
【数1】 と表すことができる。ここにHは世界座標系からロボッ
ト座標系への変換を表す変換行列であり、
【数2】 となる。実際、式(1)から画像点P′(r,c)は、
r=rw/w、c=cw/wという計算によって求める
ことができる。上記の計算によって、可視な道標の詳細
特徴要素の画像内の位置の予測を立てることができる。
例えば、図6のロボットの位置から予測される詳細特徴
要素群は、図7のようになる。図7では、8個の詳細特
徴要素S1 ,S2 ,S3 ,…,S8 が予測される。本実
施例では、こうした図のことを予測図と呼ぶことにし、
詳細特徴要素で予測図の中に現れたものをモデル特徴と
呼ぶことにする。
【0051】こうしたモデル特徴は、たとえば直線成分
の端点など、特徴点の集合として表現することが可能と
なる。たとえば、予測画内のモデル特徴S1 は、2個の
端点Q1 ′とQ2 ′によって表現できる。これら予測画
内の特徴点に対応する詳細特徴要素内の3次元点をQ1
,Q2 とすると、位置姿勢推定モジュール7では、こ
の両者の座標を利用する。
【0052】さて位置姿勢推定モジュール7では、続い
てモデル特徴をカメラ画像内から抽出することを行う。
これに際して図8に示されたように、以下のステップを
とる。
【0053】ステップS1:モデル特徴のインデックス
kを定義し、その初期値を1とする。またモデル特徴の
総数をNとする。
【0054】ステップS2:各モデル特徴を画像内に探
索する領域W(k) を設定する。これは、予測図内のモデ
ル特徴の位置のまわりに適当なウィンドウを設定するこ
とにより実現する。このウィンドウは、ある一定の大き
さであってもよいし、ロボットが移動し距離や時間に応
じて可変であってもよい。図9は、直線成分のモデル特
徴(k)に対する探索領域W(k) を表したものである。
【0055】ステップS3:ステップS2で設定された
ウィンドウ内W(k) で、モデル特徴(k)に類似した画
像特徴を抽出する。この際、ウィンドウ内に類似した複
数の画像特徴が抽出される場合があり得る。そうした場
合には、その全てを候補としてC(k) に格納する。
【0056】例えばモデル特徴が図7に示されたような
直線成分のときには、原画像に微分処理を施すことによ
ってエッジ画像を得た後、そのモデル直線特徴と傾きが
ある差θ(k) 以内の画像直線をハフ変換などを利用して
抽出することができる。こうして画像内で得られた直線
成分は、以下のようなデータ構造によって表現される: ID: 187 端点: (r1 ,c1 ),(r2 ,c2
) ハフ変換パラメータ: (ρ,γ) ここで、IDは画像直線に固有の番号を表し、端点(r
1 ,c1 ),(r2 ,c2 )は、画像特徴の端点の画像
内座標を表す。ハフ変換パラメータ(ρ,γ)は、図1
0に示すような直線を記述するためのパラメータであ
り、ρは画像原点から画像直線までの距離、γは直線の
法線が画像座標軸rとなす角度を表す。
【0057】ステップS4:次のモデル特徴を画像内か
ら探索するように、インデックスkの値を1増やす。
【0058】ステップS5:インデックスkとモデル特
徴の総数Nとが比較される。もし、kがNを超えた場合
には、全てのモデル特徴に対して画像特徴が求まったこ
とになり、ステップS6に進む。そうでなければ、ステ
ップ2に戻る。
【0059】ステップS6:このステップでは、予測画
内のモデル特徴とステップS3で抽出された画像特徴と
の間の最適な対応を探索し、その対応に基づいて、ロボ
ットの位置姿勢を推定する。
【0060】基本的なステップは以上のようである。以
下では、ステップS6で行われる処理について、詳しく
説明する。
【0061】いまモデル特徴として直線成分を考える
と、その直線成分を3次元空間内で記述するのには、そ
の直線成分上の1点(x1 ,y1 ,z1 )と直線の方向
余弦(a,b,c)を用いて表現することができる。す
なわち、直線上の各点(x,y,z)は、
【数3】 ここで、uは直線の各点への媒介変数である。同様に、
抽出された画像特徴は、ハフ変換パラメータ(ρ,γ)
を用いて、
【数4】 と書くことができる。ここで、sは直線の各点への媒介
変数である。モデル特徴点(x,y,z)と画像特徴点
(r,c)が対応したと仮定すると、式(1)(3)
(4)を利用して、ロボットの位置姿勢を表す未知の3
個のパラメータpx,py,φの間の制約方程式を得る
ことができる。実際測定するパラメータは、ρ,γの2
個であるから、
【数5】 の2個の制約方程式が得られる。(具体的な制約方程式
の形については、文献1を参照。)もし、モデル特徴が
点(x,y,z)であり、その画像特徴が点(r,c)
であるときにも、測定するパラメータの数が2であるか
ら、式(5)と同様に、2個の制約方程式を求めること
ができる。同様に、任意のモデル特徴に関して、独立に
m個のパラメータを測定したとすれば、m個の制約方程
式を求めることができる。
【0062】いまモデル特徴がn個あるとし、もし各モ
デル特徴sk (k=1,2,…,n)に正しく対応する
画像特徴をbk と書くことにする。すると正しい対応の
組み合わせ(sk ,bk )(k=1,2,…,n)は、
以下のような制約方程式を与える。
【0063】
【数6】 ここに、f1 ,…,fMは独立な方程式であると仮定す
る。Mは整数で制約条件の数を表わす。
【0064】実際に、画像特徴を抽出する際には、雑音
(ノイズ)が混入してしまうので、上記の制約方程式
は、必ずしも正確に満たされるわけではない。実際的に
は、ある許容誤差εを認めて、正しい対応の組み合わせ
は、次のような不等式を満たすと考える。
【0065】
【数7】 ここで、もう一度、モデル特徴と画像特徴の対応問題を
考える。各モデル特徴sk に関して、探索領域W(k) 内
で抽出された画像特徴候補をck1,ck2,…,ck,mk
する。もちろん、この探索領域W(k) 内にモデル特徴k
に対応するものがない可能性もある。例えば、障害物が
そのモデル特徴を隠してしまった場合には、対応する画
像特徴はck1,ck2,…,ck,mkの中にない。
【0066】このとき、モデル特徴と画像特徴の間の正
しい対応を探すということは、各モデル特徴にsk に対
して、上記の不等式(7)を満たすような画像特徴bk
をck1,ck2,…,ck,mkの中から捜すことと考えるこ
とができる。
【0067】我々に与えられた最終問題は、ロボットの
位置姿勢パラメータ(px,py,φ)を推定すること
にあるが、このパラメータ数(制約数)は3である。一
方、モデル特徴sk と画像特徴bk の対応関係が作り出
す制約方程式の制約数はMとなる。いまM>3であると
仮定する。こう仮定できるのは、推定計画モジュール3
において、ある一定以上の数のモデル特徴が得られるよ
うに、環境の観察の方法を選択しているからである。
【0068】この仮定のもとで、式(7)を満たすモデ
ル特徴と画像特徴の対応の正しい組み合わせを如何にし
て求めるかを説明する。本実施例では、モデル特徴と画
像特徴の対応の組み合わせの中で、少なくともN(N>
3)個の制約数を持つ独立な制約不等式を満たすもの
は、正しいモデル特徴と画像特徴の組み合わせであると
仮定する。例えば、h個のモデル特徴s1 ,s2 ,…,
h と画像特徴c1 ,c2 ,…,ch による対応の組み
合わせ(s1 ,c1 ),(s2 ,c2 ),…(sh ,c
h )から得られるパラメータ(px,py,φ)が制約
不等式
【数8】 を満たし、H≧Nを満たすならば、(s1 ,c1 ),
(s2 ,c2 ),…(sh,ch )を正しい組み合わせ
であり、(px,py,φ)を求めるべきパラメータの
推定値である。ここで、組み合わせ(s1 ,c1 ),
(s2 ,c2 ),…(sh ,ch )から得られるパラメ
ータ(px,py,φ)は、制約方程式
【数9】 なる非線形方程式を適当な方法で解くことによって得ら
れる。ただし、Hはある整数で制約条件の数(制約数)
である。この方程式では、解(px,py,φ)の初期
推定値が、移動制御モジュール4が与える事前推定値1
05として、与えられているので、各種の非線形方程式
の解法を利用することができる。例えば、Newton法、最
急勾配法、共役勾配法などを利用すればよい。また、制
約数Hが3より大きいときには、統計的な処理によって
最も誤差を小さくする解を求める方法なども多く提案さ
れているので、そうした方法を利用すればよい。
【0069】以下、モデル特徴と画像特徴の組み合わせ
問題を如何に探索するかを説明する。 まず、全てのモ
デル特徴に関して、モデル特徴と画像特徴候補の組Qj
をリストとして作成する(j=1,2,…,L):
【数10】 図11は、こうした組み合わせを表現するために、作成
されたものである。図には、予測画に現れた4本のモデ
ル特徴S1 ,S2 ,S3 ,S4 が存在し、それらは破線
で表示されている。一方、各モデル特徴に対して画像内
から抽出された画像特徴候補も、この図の中に実線で表
示されている。特徴S1 では画像特徴候補a,b、モデ
ル特徴S2 では画像特徴候補c,d、モデル特徴S3 で
は画像特徴候補e、モデル特徴S4 では画像特徴候補
f,gが抽出されたとする。すると、
【数11】 となるモデル特徴と画像特徴候補の対応が作られる。こ
こで、Q1 ,Q2 ,Q3,Q4 ,Q5 ,Q6 ,Q7 が作
る独立な制約方程式(6)の制約数は、それぞれ2,
2,1,1,2,1,1である。
【0070】次に、以下の方法をとる: (1)LISTを空集合に設定する。
【0071】(2)インデックスiを1からLまで変え
て、処理(a)または(b)をする。
【0072】(a) もしQi が制約数3以上の制約方程式
を作り、その方程式(9)の解(px,py,φが制約
不等式(8)を満たすならば、LISTに{Qi }を加
える。
【0073】(b) もしQi が制約数3以上の制約方程式
を作らなければ、(b.1) インデックスjを1からLまで
変えて、処理(b.1.1)または(b.1.2)を行なう。
【0074】(b.1.1) もし{Qi }と{Qj }がLI
STの要素でなく、次数3以上の制約方程式を作り、そ
の方程式(9)の解(px,py,φ)が、制約不等式
(8)を満たすならば、LISTに{Qi ,Qj }を加
える。
【0075】(b.1.2) もしQi とQj が制約数3以上
の制約方程式を作らなければ、(b.1.2.1) インデックス
kを1からLまで変えて、以下の処理をする。
【0076】(b.1.2.1.1) もし{Qi },{Qj },
{Qk },{Qi ,Qj},{Qi ,Qk },{Qj ,
Qk }がLISTの要素でなく、制約数3以上の制約式
を作り、その方程式(9)の解(px,py,φ)が、
制約不等式(8)を満たすならば、LISTに{Qi ,
Qj ,Qk }を加える。
【0077】(3)LISTをその要素が作る制約方程
式の制約数の高い順に整列する。その要素をR1 ,R2
,…,RMとする。
【0078】(4)次の操作をLIST内の要素Ri に
ついてR1 ,R2 ,…の順に、解が発見できるまで行
う。Ri に含まれていないモデル特徴sに対して、その
モデル特徴sと画像特徴の組が作る制約不等式(8)
を、Ri が作る解(px,py,φ)が満たすようなモ
デル特徴sが少なくともN−3個存在するなら、Ri を
正しい対応とし、(px,py,φ)をその推定値とす
る。そうでなければ、次のRi+1 について調べる。
【0079】図11の例では、LISTは、
【数12】 が構成される。ここで、全てのRi (i=1,2,…1
5)は、制約数3の制約方程式を形成する。
【0080】本例でN=5が解が満足する最小制約数と
すると、R1 から順に上記(4)の処理を行い、結局、
{Q1 ,Q4 ,Q5 ,Q7 }が、制約数5の制約方程式
の解を与える組み合せとして求まる。
【0081】この方法では、あかじめ可能性のある解の
候補をリストアップしておき、その中で解として有望で
あるものから順に、その妥当性を検証してゆく方法をと
っている。言い替えれば、LISTの可能性のある解の
候補をリストアップしておき、それを制約次数の高い順
に整列させることで、有望な解の候補を先に検証できる
ようにし、有望な解から順にその妥当性を制約方程式の
制約数によって検証しているわけである。
【0082】この方法では、制約数H≧Nを満たす解が
存在しない場合ももちろんありうる。これは、おもに障
害物などがモデル特徴を遮蔽してしまっている場合であ
る。この場合の対処の方法は、後述する第2実施例で説
明する。
【0083】以上のような方法によって、モデル特徴と
画像特徴との対応と新しいロボットの位置姿勢推定値を
求めることができる。ここでは、モデル特徴と画像特徴
の対応とロボットの位置姿勢推定を同時に求める一例を
示したが、上記文献2に示す従来の方法のようにモデル
特徴と画像特徴の最適な対応を適当な評価関数を利用し
て求めた後、その対応関係が作り出す制約方程式から新
しいロボットの位置を推定してもよい。
【0084】次に、位置更新モジュール8について説明
する。
【0085】位置姿勢推定モジュール7で環境が観察さ
れた地点のロボットの位置姿勢が推定されながら、ロボ
ットは移動を続ける。推定の処理が終った時刻Nでのロ
ボットの位置姿勢は、環境が観察された場所とは異なっ
ているので、時刻Nでの場所がどこにあたるのかを新し
い推定値の基づいて更新する必要がある。いま移動制御
モジュール4が算出したロボットの事前位置姿勢推定値
をp(O) =(px(O),Py(O) ,φ(O)),p(N) =
(px(N) ,py(N) ,φ(N))として、位置姿勢推定モ
ジュール7で求められた新しい位置姿勢推定値をpnew
(O) =(pxnew(O),pynew (O) ,φnew (O))とす
ると、時刻Nでの新しいロボットの位置姿勢推定値は以
下のように計算することができる。いまθを
【数13】 と定義したとき、
【数14】 によって与えられる。こうして、この位置更新モジュー
ル8では時刻Nでの新しいロボットの位置姿勢推定値を
計算する。
【0086】以上、各モジュールの機能について説明し
てきた。次に各モジュールがどのような時間的スケジュ
ールのもとで、機能を果たすかを図12のタイムチャー
トを利用して説明する。図において、各矢印は、その矢
印に対応する処理があるモジュールでなされることを示
し、上記三角マークは画像が画像入力モジュール9で入
力された瞬間を表す。
【0087】図12において、時刻t0 において、経路
計画モジュール1は現在地点Aから目的地Bまでの経路
を計画を開始する。その計画作成が時刻t1 に終了する
と、移動制御モジュール4はその経路に従って、ロボッ
トの移動を制御する。ある一定の距離を進んだところ
(時刻t2 )で、移動制御モジュール4は、いったんロ
ボットの移動を停止し、推定計画モジュール3にその地
点での位置姿勢の推定値105を送る。ロボットの現在
地の位置姿勢推定値105を受け取った推定計画モジュ
ール3は、どのような方法でロボットの位置と姿勢を推
定したらよいかを計画する(もし必要ならば、カメラの
方向を変えたり、ロボットを移動させたりする。この場
合、その計画が終了すると、経路計画モジュール1が再
び観察位置から目的地までの経路を再計画する。これ
は、推定計画モジュール3でロボットが移動した時のみ
必要な作業である。)こうして、ロボットの位置姿勢の
推定方法(環境の観察方法)が決定した時刻t3 から、
ロボットの位置姿勢推定が、位置姿勢推定モジュール7
で開始される。位置姿勢推定のために画像入力モジュー
ル9で環境が撮像され、その画像が画像記憶モジュール
10に格納された後、その撮像された際のロボットの位
置と姿勢(地点Cとする)がまずp(O) として、移動制
御モジュール4から各モジュールに送られる。続いて、
ロボットの移動は再開される。ロボットの移動が再開さ
れると、移動制御モジュール4は各時刻のロボットの位
置姿勢の推定値105を算出する。
【0088】位置姿勢モジュール7が、地点Cの事前推
定値p(O) に対応する移動ロボットの位置と姿勢の新し
い推定値pnew (O) を算出したとき、移動制御モジュー
ル4がロボットの移動をいったん停止し、停止した地点
Dでのロボットの事前位置姿勢履歴p(N) が移動制御モ
ジュール4で算出される。時刻t4 において位置更新モ
ジュール8は、地点Cでのロボットの新しい位置姿勢推
定値pnew (O) の値を利用して、移動制御モジュール4
で算出された地点Dでの事前位置姿勢推定値p(N) を更
新して、地点Dの新しい推定値pnew (N) を算出する。
【0089】こうして更新が終了したのち、時刻t5 に
おいて現時点Dでのロボットの新しい位置姿勢推定値p
new (N) を使用して、経路計画モジュール1がp
new (N) から目的地までの経路を計画する。
【0090】以上の時刻t0 から時刻t5 までを1サイ
クルとして、移動ロボットは目的地付近の到達するま
で、このサイクルを繰り返す。そして、移動制御モジュ
ール4は、ロボットの移動の際、目的地と現在位置(p
x,py,φ)の推定値とを比較し、その差がある閾値
より小さくなるまでロボットの移動を制御する。一方、
その差がある閾値より小さくなったときは、目的地に到
達したことを、経路計画モジュールに報告するととも
に、移動を終了する。
【0091】以上、第1の実施例について説明した。文
献1に述べられているような従来の方法では、位置姿勢
推定モジュール7がロボットの位置と姿勢を推定してい
る間、すなわち時刻t3 からt4 までの間、ロボットの
移動を完全に停止させていなければならなかった。本発
明の方法によれば、ロボットが位置推定を行っている間
も、ロボットを移動させることができるので、より高速
なロボットの誘導を実現することができる。
【0092】以上では、ロボットの位置姿勢推定をする
時期を、それまでロボットが進んだ距離によって制御し
た例を説明したが、そのかわりにロボットが移動した時
間などによって制御してもかまわない。また、後述する
第6の実施例で説明するように、ロボットの位置姿勢に
含まれる不確定度をモデル化して、その不確定度によっ
て制御してもかまわない。
【0093】以下に第2実施例について説明する。
【0094】環境には、未知の障害物が含まれている場
合がある。こうした場合は、観察する画像内に障害物が
現れ、その障害物が本来見えるべきモデル特徴を遮蔽し
てしまうような場合である。第2実施例は、障害物が多
くある環境でも、安定でかつ高速なロボットの誘導が実
現可能であることを表す実施例である。
【0095】実際に障害物がロボットの環境観察を妨害
する場合は、モデル特徴が障害物によって遮蔽されてし
まう場合がほとんどである。こうした場合には、推定計
画モジュール3が選択したモデル特徴が、画像特徴とし
て抽出されないことを意味する。従って、位置姿勢推定
モジュール7でモデル特徴と画像特徴の正しい対応を探
そうとしても充分な数の対応が得られないこととなる。
【0096】この場合に対処するために、位置姿勢推定
モジュール7は、第1実施例で表された方法をさらに拡
張することによって、環境の観察が成功したか否か、あ
るいは算出された解が本当に正しい解とみなし得るのか
を、自動的に判断する。
【0097】具体的には、第1の実施例で説明した制約
不等式に関して、ある制約数以上の制約不等式を満たす
組み合わせが求められないときには、観察が失敗したと
判定する。もし、失敗したと判定した場合には、移動ロ
ボットは、もう一度環境の観察をして、位置姿勢を推定
しなおすわけである。それを実現するために、位置姿勢
推定モジュール7が、移動制御モジュール4と推定計画
モジュール3に観察の失敗したことを告げると、移動制
御モジュール4は、ロボットの移動を一時停止し、推定
計画モジュール3は、再度観察をする計画するわけであ
る。
【0098】以下、図13を使用して説明する。図13
において、時刻t0 において、経路計画モジュール1は
現在地点Aから目的地Bまでの経路を計画を開始する。
その計画作成が時刻t1 に終了すると、移動制御モジュ
ール4はその経路に基づいて、ロボットの移動を制御す
る。ある一定の距離を進んだところ(時刻t2 )で、移
動制御モジュール4は、いったんロボットの移動を停止
し、推定計画モジュール3にその地点での位置姿勢の推
定値(105)を送る。ロボットの現在地の位置姿勢推
定値105を受け取った推定計画モジュール3は、どの
ような方法でロボットの位置と姿勢を推定したらよいか
を計画する(もし必要ならば、カメラの方向を変えた
り、ロボットを移動させたりする。この場合、その計画
が終了すると、経路計画モジュール1が再び観察位置か
ら目的地までの経路を再計画する。これは、推定計画モ
ジュール3でロボットが移動した時のみに必要な作業で
ある。)。
【0099】こうして、ロボットの位置姿勢の推定方法
(環境の観察方法)が決定した時刻t3 から、ロボット
の位置姿勢推定が、位置姿勢推定モジュール7で開始さ
れる。画像入力モジュール9で環境が撮像され、その画
像が画像記憶モジュール10に格納された後、その撮像
された際のロボットの位置と姿勢(地点Cとする)が事
前推定値p(O) として、移動制御モジュール4から各モ
ジュールに送られる。続いてロボットの移動は再開され
る。ロボットの移動が再開されると、移動制御モジュー
ル4は各時刻のロボットの位置姿勢の事前推定値105
を算出する。
【0100】位置姿勢推定モジュール7において、ある
制約数N以上の制約不等式を満たす解が求められなかっ
たときには、モジュール7は観察が失敗したと判断し、
移動制御モジュール4にロボットの移動と一時停止する
ように命令する。移動制御モジュール4は、その地点の
ロボットの事前推定値105を推定計画モジュール3に
送る。推定計画モジュール3は、その事前推定値105
に基づいて、観察方法の計画を行う。こうして、観察方
法が決定した時刻t5 から、位置姿勢推定モジュール7
で、ロボットの位置姿勢推定が開始する。環境観察のた
め、画像入力モジュール9で環境が撮像され、その画像
が画像記憶モジュール10に格納された後、その撮像さ
れた際のロボットの位置と姿勢(その地点をC′とす
る)の推定値p(O) が事前推定値として、移動制御モジ
ュール4から各モジュールに送られる。続いて、ロボッ
トの移動が、移動成業モジュール4の制御のもとに開始
される。ロボットの移動が再開されると、移動制御モジ
ュール4は、各時刻のロボットの位置姿勢の事前推定値
105を算出する。
【0101】位置姿勢推定モジュール7は地点C′の位
置推定の処理をおこなう。もし、その結果が成功の場合
には、地点C′の推定結果pnew (O) を位置更新モジュ
ール8に送出し、移動制御モジュール4にロボットの移
動を一時停止させる。移動制御モジュール4は、停止し
た後の地点Dでのロボットの位置姿勢の事前推定値10
5をp(N) として、位置更新モジュール8に送出する。
位置更新モジュール8は、地点C′の事前推定値p(O)
とその新しい推定値pnew (O) と地点Dにおける事前推
定値p(N) を利用して、地点Dでの位置姿勢推定値を更
新し、pnew (N) を算出する。その値は、経路計画モジ
ュール1に送られ、地点Dから目的地Bまでの経路が再
計画され、移動制御モジュール4はその経路に基づいて
目的地Bへの移動を制御する。
【0102】もし地点C′での観察が再度失敗したこと
がわかったときには、上記の観察をくりかえしてロボッ
トの位置姿勢を推定する。
【0103】以上の時刻t0 から時刻t7 までを1サイ
クルとして、移動ロボットは目的地付近の到達するま
で、このようなサイクルを繰り返す。そして、移動制御
モジュール4は、ロボットの移動の際、目的地と現在位
置(px,py,φ)の推定値とを比較し、その差があ
る閾値より小さくなるまでロボットの移動を制御する。
一方、その差がある閾値より小さくなったときには、目
的地に到達したことを、経路計画モジュール1に報告す
るとともに、移動を終了する。
【0104】以上、第2実施例について説明した。第2
の実施例によれば、障害物などの影響などで環境の観察
が安定的になされない場合には、その観察の良否を自動
的に判断するようにし、一度の観察が失敗したときには
観察をくりかえすことによって、ロボットの位置姿勢を
安定的に推定することができる。
【0105】以下に第3実施例について説明する。
【0106】図14は、第3の実施例を説明するための
タイムチャートである。第3実施例で使用されるモジュ
ールは、第1実施例で使用されたモジュールと基本的に
同じ機能を持つ。しかしながら、その時間的スケジュー
ルが異なり、図14はその時間的スケジュールを表した
ものである。
【0107】第1、2の実施例では、移動ロボットがあ
る一定距離進んだところで、ロボット位置姿勢を推定し
た。本実施例では、移動ロボットが位置姿勢推定の処理
が終了した時点で次の位置姿勢推定の処理を実行する点
が異なる。
【0108】図14において、時刻t0 において、ロボ
ットは一時停止しており、推定計画モジュール3がロボ
ットの位置姿勢推定のための環境観察の計画を立てる
(必要ならば、カメラの方向を変えたり、ロボットの位
置や姿勢を変えたりして、観察の位置に到達した後、環
境の観察が開始される。)。その後、経路計画モジュー
ル1は時刻t1において環境観察をする位置から目的地
までの経路の作成を開始される。
【0109】また推定計画が終了した時刻t1 には、位
置姿勢推定モジュール7は、推定計画モジュール3が立
てた計画に基づいて、環境の観察を開始する。この際、
画像入力モジュール9が環境の画像を撮り、その画像信
号114が画像記憶モジュール10に格納される。この
観察した位置(地点C)でのロボットの位置と姿勢は、
移動制御モジュール4にて推定され、その地点Cでの推
定値はp(O) とされる。
【0110】経路計画が終了した時刻t2 において、移
動制御モジュール4の制御のもとに、経路計画モジュー
ル1が計画した経路に基づいてロボットは移動を開始す
る。この移動の間、移動制御モジュール4が各時刻kの
事前位置姿勢推定値p(K) を算出する。
【0111】時刻t3 において、観察位置Cの事前推定
値p(O) に対する新しい推定値pnew (0) が、位置姿勢
推定モジュール7で得られたとき、移動制御モジュール
4はロボットの移動を一時停止し、停止した時点Dでの
ロボットの位置と姿勢の事前推定値p(N) が移動制御モ
ジュール4で算出される。その後、ロボットの位置更新
モジュール8が移動制御モジュール4で算出された時点
Dでのロボットの位置姿勢の事前推定値p(N) を更新
し、pnew (N) を作成する。
【0112】更新が終った時点t4 において、推定計画
モジュール3が現在位置Dの推定値pnew (N) を利用し
て、次の環境観察の方法を計画する。
【0113】以上述べてきた時刻t0 から時刻t4 まで
の処理を1サイクルとして、このサイクルを繰り返しな
がら、移動ロボットは目的地付近に到達する。この間、
移動制御モジュール4は、現在の位置姿勢と目的地の位
置と姿勢の差を常時モニタしておき、その差がある閾値
以下になったときには、その移動を終了する。
【0114】第3実施例を利用すると、全体の処理の基
本サイクルが短くなる。従って、ロボットの位置と姿勢
の推定値は、第1実施例の場合より真値に近いことが統
計的に予想されるため、位置姿勢推定モジュール7がカ
メラ画像内でモデル特徴をさらに簡単に探索することが
できる。従って、位置姿勢推定モジュール7で処理に必
要な時間が短縮されるという利点がある。また、推定計
画モジュール3での処理を経路計画モジュール1での処
理に先行させることにより、位置姿勢推定モジュール7
での処理と経路計画モジュール1での処理を平行して行
うことができるようになる点と、推定計画モジュール3
で観察のためにロボットが移動する必要ができたときに
も、その後の経路再計画が経路計画モジュール1で直ち
に処理できるようになる点で、処理の効率化を図ること
もできる。
【0115】図14で示されるように、ロボットの移動
とロボットの位置姿勢推定が平行して処理されるため、
ロボットは位置姿勢推定処理の間、その移動を停止する
必要はなく、ロボットの誘導に要する時間が短くなる。
こうして、文献1に示されるような方法に較べて、高速
な処理が実現出来る。また、環境を観察するのに適した
方向など位置姿勢推定に適した方法を計画してから環境
の観察を行うので、特開昭60−217412号公報に
述べられている方法よりも安定した位置姿勢推定を実行
することができる。
【0116】以下に、第4実施例を説明する。
【0117】第4実施例でも、移動ロボットを誘導する
のに必要なモジュール群は第1の実施例の場合と同様で
ある。しかし、それらのモジュールの処理を時間的にど
のようにスケジューリングするかが異なる。
【0118】以下、図15のタイムチャートを使用しな
がら、第4実施例を説明する。現時点t0 において、ロ
ボットは停止している。移動制御モジュール4によって
与えられる現時点でのロボットの事前位置姿勢推定値1
05を利用して、経路計画モジュール1が現在地の推定
値から目的地Bまでの経路を計画する。その経路に基づ
いて、時刻t1 から移動制御モジュール4はロボットを
目的地に向けて移動させる。その移動が開始してからあ
る一定距離を進行したことを移動モジュール4が認識し
た時刻t2 において、推定計画モジュール3は、画像入
力モジュール9と画像記憶モジュール10に命令して、
ある時刻s1 での環境を撮影し、その画像を画像記憶モ
ジュール10に格納する。同時にその時刻s1 でのロボ
ットの事前位置姿勢推定値105を、推定計画モジュー
ル3が移動制御モジュール4から入手して、時刻s1 で
観察した位置と方向が適切であったか否かを判定する。
この判定は、予測図内のモデル特徴の数などによってな
される。これは、第1実施例で説明した通りである。
【0119】もし時刻s1 で観察した位置と方向が不適
切であったときには、別の時刻s2で画像を撮り、時刻
s2 で観察した位置と方向が適切であるか否かを推定計
画モジュール3が判断する。このような操作をロボット
が移動している間、適切な観察画像が得られるまで繰り
返す。図15に示すように、適切な観察画像が得られた
地点をC、その時刻をsn とし、その観測画像が適切で
あったことの判断が終了した時刻をt3 とする。この
間、もちろん移動制御モジュール4は、時刻s1からロ
ボットの事前位置姿勢推定値を算出する。
【0120】時刻t3 において、位置推定モジュール7
は、時刻t3 において撮影された画像を利用して、地点
Cでのロボットの位置姿勢の推定を開始する。
【0121】その推定が終了した時刻t4 において、移
動制御モジュール4はロボットに移動を一時停止し、移
動が停止した時点Dでの事前位置姿勢推定値p(N) を、
位置更新モジュール8に送出する。新しく得られた地点
Cでの位置姿勢推定値pnew(O) を利用して、位置更新
モジュール8が地点Dでの事前推定値p(N) の値を更新
して、その結果pnew (N) は経路計画モジュール1に送
られ、新しい経路が再計画される。
【0122】第4実施例の方法では、推定計画モジュー
ルで計画される観察の方法がロボットを一時停止しなく
ても実行できるので、ロボットを停止させない時間分移
動ロボットの誘導を高速化することができる。
【0123】以下に、第5実施例を説明する。
【0124】第5実施例は、環境内に障害物があまり存
在しないとき、特に有効な移動ロボットの誘導を表した
ものである。本実施例を実現するための機能モジュール
は、第1実施例と同様であるが、それらの機能モジュー
ルでの処理をどのようにスケジューリングするかが、本
実施例と第1、2、3、4の実施例と異なる点である。
具体的には、推定計画モジュール3が、ロボットの移動
に際して、次にロボットが位置姿勢の推定をすべき地点
をあらかじめ決定しておき、ロボットがこの地点付近に
到達した時に、位置姿勢推定の処理を行うものである。
もちろん、この処理が実現できるのは、ロボットの移動
がほぼ予測通りにいく場合、すなわち、障害物が環境内
にあまり存在しない場合である。
【0125】以下、図16のタイムチャートを使用しな
がら、第5実施例を説明する。現時点t0 において、ロ
ボットは停止している。移動制御モジュール4によって
与えられる現時点Aでのロボットの事前位置姿勢推定値
105を利用して、経路計画モジュール1が現在地の推
定値から目的地までの経路を計画する。その経路に基づ
いて、時刻t1 から移動制御モジュール4はロボットを
目的地Bに向けて移動させる。移動が開始された後、推
定計画モジュール3は、その計画された経路のどの位置
で、位置姿勢推定のための環境観察を行ったらよいかを
計画する。
【0126】図17にその計画方法を示す。図におい
て、計画された経路上にある一定間隔ごとに代表点P1
,P2 ,P3 ,…PMをとり、出発地点Aからある距
離以上離れ、かつある一定距離以内の代表点Pi に関し
て、その代表点での観察が有効であるかを判定する。図
17においては、P3 ,P4 ,P5 ,P6 ,P7 がその
範囲にある代表点となる。有効性の判定には、その位置
姿勢で予測画内に現れるモデル特徴の数を利用する。も
しモデル特徴の数がある値を越えた時には、有効である
とする。もしこの代表点が複数個存在するときには、現
在地から最遠の代表点を観察点とする。このようにして
決定された観察点のある地点をCとする。
【0127】ロボットの移動は、移動制御モジュール4
によって制御されるが、移動制御モジュール4は、この
観察すべき地点Cの付近にロボットが到達したか否か
を、ロボットの位置と姿勢の事前推定値105と地点C
との差を利用して判定する。ロボットが地点C付近に到
達されたと判定できたとき(時刻t3 )、移動制御モジ
ュール4がその時刻t3 での事前位置姿勢推定値p(O)
を再度推定計画モジュール3に送るとともに、推定計画
モジュール3が先に計画した観察方法に従って、画像入
力モジュール9が時刻t3 での画像を撮るとともに、そ
の画像信号を画像記憶モジュール10が記憶する。
【0128】時刻t3 での事前推定値105を利用し
て、推定計画モジュール3は、再度予測図を作成し、そ
の予測図に含まれるモデル特徴の情報を位置姿勢推定モ
ジュール7に送る。ここで、推定計画モジュール3が再
度予測図を作成する理由は、時刻t3 でのロボットの位
置が必ずしも、推定計画モジュール3が先に観察地とし
て決定しておいた場所と一致しないためである。
【0129】位置姿勢推定モジュール7にモデル特徴の
情報が送られた後、時刻t4 において位置姿勢推定モジ
ュール7は、ロボットの位置姿勢推定処理を開始する。
位置姿勢推定の処理が位置姿勢推定モジュール7で終了
したとき、移動制御モジュール4は、ロボットの移動を
一時停止し(その時点をDとする)、その時点t5 での
ロボットの事前位置姿勢推定値p(N) を位置更新モジュ
ール8に送信する。位置更新モジュール8は、位置姿勢
推定モジュール7で計算された位置姿勢推定値p
new (O) とその事前推定値p(O) を利用して、p(N) を
更新してpnew (N) を算出する。
【0130】この処理が終了した時刻t6 において、経
路計画モジュール1は地点Dに関する更新された位置姿
勢推定値p(N) を利用して、地点Dから目的地Bまでの
経路を再計画する。
【0131】以上、時刻t1 から時刻t6 までの処理
を、ロボットが目的地B付近に到達するまで、実行す
る。目的地Bに到達したか否かは、移動制御モジュール
4が、事前推定値105と目的地Bの差をモニタしなが
ら判定する。
【0132】第5実施例の方法では、推定計画モジュー
ルで計画される観察の方法がロボットを一時停止しなく
ても実行できるので、ロボットを停止させない時間分移
動ロボットの誘導を高速化することができる。
【0133】以下に、第6実施例を説明する。
【0134】第6実施例は、移動制御モジュール4で算
出される事前位置姿勢推定値105の形式を変え、新し
い形式のもとでロボットの誘導を制御しようとするもの
である。この方法では、移動制御モジュール4、位置姿
勢推定モジュール7、位置更新モジュール8での処理が
異なるとともに、事前位置姿勢推定値の履歴をロボット
の移動にともなって記憶する履歴記憶モジュール5が加
わってくるので、以下に説明する。
【0135】図18は、第6実施例の基本構成を示す図
である。移動ロボットの誘導制御部分は、ロボットが移
動する環境の地図やその環境に存在する道標を記憶する
地図記憶モジュール2と、その地図情報101と操作者
からの移動命令100に基づいて出発地から目的地まで
の経路を計画する経路計画モジュール1と、その経路情
報104をロボットが移動できる形の基本コマンドに分
解し実際にロボットの移動機構がその実行しているかを
管理・制御し、その移動の軌跡からロボットの位置と姿
勢を表すパラメータの平均値と共分散行列を組としたロ
ボットの位置と姿勢の事前推定値を算出する移動制御モ
ジュール4と、ロボットの位置と姿勢を環境を観察する
ことによって推定する方法を計画する推定計画モジュー
ル3と、その推定計画に基づいて実際に位置姿勢推定を
行う位置姿勢推定モジュール7と、その位置推定に必要
な画像を撮影する画像入力モジュール9と撮影された画
像信号を記憶する画像記憶モジュール10と、移動制御
モジュール4が算出する事前位置姿勢推定値をロボット
の移動の間、順次記憶する履歴記憶モジュール5と、位
置姿勢推定モジュール7が新しいロボットの位置姿勢推
定値を計算したとき、履歴記憶モジュール5に記憶され
た推定値の履歴を参考にして事前推定値を更新する位置
更新モジュール8と、移動ロボットに前方にある障害物
を検知し、障害物がある領域の情報を移動制御モジュー
ル4に告知する障害物検知モジュール6からなる。
【0136】以下、第1実施例と機能の異なるモジュー
ルに関して、その機能の説明をする。
【0137】まず、移動制御モジュール4について説明
する。
【0138】第1実施例では、ロボットの位置と姿勢の
事前推定値が、(px,Py,φ)の形で算出された。
文献1で詳しく述べられているように、ロボットの走行
状態によって起こり得るロボットの位置の不確定度は、
2次統計量によって近似することができる。すなわち、
ロボットの位置と姿勢のパラメータp=(px,py,
φ)をその平均値pバーと共分散行列Σp によって表現
することができる。
【0139】具体的には、ロボットの移動を基本直線移
動と基本回転移動で近似し、各基本移動によって、ロボ
ットの位置姿勢推定値がどのように変化するかを計算す
るわけである。図19は、この方法を説明するためのも
のである。図19(a)は、移動制御モジュール4によ
って、計測されたAB間の経路である。図19の点A,
Bで示されている矢印は、A,Bにおけるロボットの方
向を示す。この曲線経路ABを、その下図(b)で示さ
れるように、線分によって近似し、その端点をP1 ,P
2 ,…,PMとする。直線部分にマークされたL0 ,L
1 ,…,LMは、基本直線移動を表し、その直線成分と
矢印とがなす角度部分にマークされたR1 ,R2 ,…R
M,RBは、その角度分の基本回転移動を表す。する
と、AからBまで進行する間に、以下のような基本移動
R0 ,L0 ,R1 ,L1 ,R2 ,L2 ,…RM-1,LM
-1,RM,LM,RBの組み合せによって、AからBま
でのロボットの移動を近似することができる。
【0140】
【数15】 いま基本移動S(Ri またはLi )の前の位置姿勢のパ
ラメータの平均値をpバー、共分散行列をΣp とし、基
本移動Sの後の位置姿勢のパラメータの平均値p′バー
とその共分散行列をΣp ′とすると、文献1に述べられ
ているように、
【数16】 一方、移動制御モジュール4は、こうした位置姿勢パラ
メータの変化をモニタする。一般的に、推定値の共分散
行列内の分散が大きくなったときには、そのパラメータ
の不確定度が大きくなったということができる。移動制
御モジュール4では、共分散行列Σp のpx,pyに関
する分散とφに関する分散とを別々にモニタしながら、
不確定度の増加を管理する。後述するように、そのいず
れかの分散がある閾値を越えたときには、不確定度が十
分大きくなったと判断し、ロボットの移動を一時停止す
ることができる機能を持つ。
【0141】次に、履歴記憶モジュール5について説明
する。
【0142】履歴記憶モジュール5は、移動制御モジュ
ール4で算出されるロボット位置・姿勢のパラメータp
の事前推定値(pバー,Σp )を順次記憶するモジュー
ルである。具体的には、時刻kの推定値p(K) を
【数17】 の点列の形で記憶することになる。これらの事前推定値
は、位置更新モジュール8に送られる。
【0143】次に、位置姿勢推定モジュール7について
説明する。
【0144】位置姿勢推定モジュール7での処理は、文
献1に述べられている方法と同様である。推定計画モジ
ュール3が、地点Cでのロボットの位置姿勢推定値を利
用して、予測図を作成し、その予測図に現れるモデル特
徴群を、位置姿勢推定モジュール7は受け取る。こうし
て受け取った特徴群が画像内と特徴空間内(ハフ空間
内)で存在し得る領域を限定する。この限定を実行する
に際しては、移動制御モジュール4が算出した事前位置
姿勢推定量を画像空間と特徴空間に伝播することによっ
て行う。
【0145】こうしてモデル特徴の存在する空間を限定
したのち、その限定空間を探索領域として、ハフ変換な
どを利用してモデル特徴に対応する画像特徴候補を抽出
する。もちろん画像特徴は一意に抽出できるとは限らな
い。そこで、カルマン・フィルタを利用して、モデル特
徴に対する最適な画像特徴の対応関係を求め、その対応
関係から地点Cにおけるロボットの位置姿勢推定値を求
めるわけである。こうして求められた推定値は、
【数18】 の形で表現され、位置更新モジュール8に送られる。
【0146】次に、位置更新モジュール8について説明
する。
【0147】
【数19】 によって時刻kでの平均値が与えられる。この後、これ
ら平均値の点列が作る経路を、移動制御モジュール4の
項で説明したように、基本移動に分解して、各基本移動
ごと、位置推定値の共分散行列を求めていけばよい。式
(18)、(19)において、地点Aの推定値p
new (O) として、地点Bの推定値pnew (N) とするわけ
である。こうして、このモジュール8では時刻Nでの新
しいロボットの位置姿勢推定値pnew (N) を計算する。
【0148】次に、その他のモジュールについて説明す
る。
【0149】その他のモジュールでの処理は、基本的に
第1実施例と同じである。ただし、本実施例では、事前
位置推定値が(pバー,ΣP )の形で表現される。その
他のモジュールでは、事前位置推定値に含まれる平均値
pバーを第1実施例の場合の事前位置推定値として使用
する。
【0150】以上、各モジュールの機能について説明し
てきた。次に各モジュールがどのような時間的スケジュ
ールのもとで機能を果たすかを図20を利用して説明す
る。図20において、時刻t0 において、経路計画モジ
ュール1は現在地点Aから目的地Bまでの経路を計画を
開始する。その計画作成が時刻t1 に終了すると、移動
制御モジュール4はその経路に従って、ロボットの移動
を制御する。この間、移動制御モジュール4は、ロボッ
トの位置姿勢推定値を各時刻ごとに算出する。そして、
その推定値の共分散行列のpx,pyの分散がある閾値
を越えるか、またはφの分散がある閾値を越えたときに
は、ロボットの位置姿勢パラメータの不確定度が大きい
と判断し、移動制御モジュール4は、いったんロボット
の移動を停止し、推定計画モジュール3にその地点での
事前位置姿勢の推定値(105)を送る。
【0151】ロボットの現在地の事前位置姿勢推定値1
05を受け取った推定計画モジュール3は、どのような
方法でロボットの位置と姿勢を推定したらよいかを計画
する(もし必要ならば、カメラの方向を変えたり、ロボ
ットを移動させたりする。この場合、その計画が終了す
ると、経路計画モジュール1が再び観察位置から目的地
までの経路を再計画する。これは、推定計画モジュール
3でロボットが移動した時のみ必要な作業である。)。
【0152】こうして、ロボットの位置姿勢の推定方法
(環境の観察方法)が決定した時刻t3 から、ロボット
の位置姿勢推定が、位置姿勢推定モジュール7で開始さ
れる。位置姿勢推定のために画像入力モジュール9で環
境が撮像され、その画像が画像記憶モジユール10に格
納された後、その撮像された際のロボットの位置と姿勢
(地点Cとする)がまずp(O) として、移動制御モジュ
ール4から履歴記憶モジュール5に送られて記憶され
る。続いて、ロボットの移動は再開される。ロボットの
移動が再開されると、移動制御モジュール4は各時刻k
のロボットの位置姿勢の推定値p(k) を算出し、履歴記
憶モジュール5に送る。これを受け取った履歴記憶モジ
ュール5は、その推定値p(k) を記憶する。
【0153】位置姿勢モジュール7が、地点Cの事前推
定値p(O) に対応する移動ロボットの位置と姿勢の新し
い推定値pnew (O) を算出したとき、移動制御モジュー
ル4がロボットの移動をいったん停止し、停止した地点
Dでのロボットの事前位置姿勢履歴p(N) が移動制御モ
ジュール4で算出される。その事前位置姿勢推定値p
(N) は、履歴記憶モジュール5に記憶される。時刻t4
において位置更新モジュール8は、地点Cでのロボット
の新しい位置姿勢推定値pnew (O) の値を利用して、履
歴記憶モジュール5に記憶された位置姿勢の履歴{p
(k) }を順次更新し、最後に地点Dでの事前位置姿勢推
定値p(N) を更新して、地点Dの新しい推定値p
new (N) を算出する。
【0154】こうして更新が終了した時刻t5 におい
て、線路計画モジュール1は現時点Dでのロボットの新
しい位置姿勢推定値pnew (N) を使用して、pnew (N)
から目的地Bまでの経路を計画する。
【0155】以上の時刻t0 から時刻t5 までを1サイ
クルとして、移動ロボットは目的地付近の到達するま
で、このサイクルを繰り返す。そして、移動制御モジュ
ール4は、ロボットの移動の際、目的地と現在位置の平
均推定値とを比較し、その差がある閾値より小さくなる
までロボットの移動を制御する。一方、その差がある閾
値より小さくなったときには、目的地に到達したことと
判断し、その旨を経路計画モジュール1に報告するとと
もに、移動を終了する。
【0156】以上、第6実施例について説明した。本実
施例では、文献1に述べられているのと同様な方法で、
ロボットの位置と姿勢の不確定度をモニタし、その大き
さに応じて、ロボットの移動を一時停止して位置姿勢の
推定を実行する方法を採用した。この結果、第1から第
5までの実施例と異なり、ロボットが移動した経路の複
雑さに応じてロボットの位置推定の間隔を制御すること
ができるため、より安定したロボットの誘導が実現でき
る。例えば、ロボットが障害物を退避して、回転や直進
を繰り返すと位置の不確定度が急激に増大するので、ロ
ボットの位置推定を短い時間間隔で行わなければならな
いが、第6実施例では、こうした制御が可能となる。
【0157】しかしながら、文献1に述べられているよ
うな従来の方法では、位置姿勢推定モジュール7がロボ
ットの位置と姿勢を推定している間、すなわち時刻t3
からt4 までの間、ロボットの移動を完全に停止させて
いなければならなかった。本実施例によれば、ロボット
が位置推定を行っている間も、ロボットを移動させるこ
とができるので、より高速なロボットの誘導を実現する
ことができる。第6実施例では、ロボットの位置姿勢を
表すパラメータを不確定度(平均値と共分散行列)を付
加して表現した。この方法を用いて、第2、3、4、5
実施例に表されているスケジューリングのもとでロボッ
トを誘導することが出来ることを記しておく。
【0158】以上、6個の実施例では、ロボットの位置
姿勢を表すパラメータと3次元ベクトル(px,py,
φ)として、それを推定する方法を中心に述べてきた。
本発明で提案されている方法は、ロボットの位置姿勢
は、3次元ベクトルである必要はない。より一般的に、
ロボットの位置姿勢を表すパラメータとして、6次元ベ
クトル(px,py,pz,φx,φy,φz)を用い
たとしても、基本的な動作は変わらない。
【0159】また、道標を構成するモデル特徴として、
直線特徴を例として説明してきたが、これもパラメータ
できるより一般的な特徴を利用することが可能であるこ
とも記しておく。
【0160】さらに、第2実施例では、観察が失敗した
ときに直ちに再観察を行う方法を述べた。この再観察の
方法は、第3、4、5、6実施例でも組み合わせて使用
することができる。
【0161】
【発明の効果】以上詳述したように、本発明の移動ロボ
ットの誘導制御装置によれば、ロボットが位置姿勢の推
定を行っている間も、できる限りロボットを移動させる
ことにより、高速な移動ロボットの誘導を実現すること
ができる。
【図面の簡単な説明】
【図1】第1実施例の基本構成を示す図である。
【図2】部分的に平面で記述できる環境を移動する場合
のロボットの動作を説明するための図である。
【図3】図2に表された環境について、これら基本要素
としての境界線を表した図である。
【図4】道標の例を表した図である。
【図5】経路計画モジュールが作成した経路を表した図
である。
【図6】推定計画モジュールの処理を説明するための図
である。
【図7】図6のロボットの位置から予測される詳細特徴
要素群を示す図である。
【図8】モデル特徴をカメラ画像内から抽出する工程を
示すフローチャートである。
【図9】直線成分のモデル特徴(k)に対する探索領域
w(k) を表した図である。
【図10】ハフ変換パラメータによって記述された直線
を示す図である。
【図11】モデル特徴と画像特徴の組み合わせを表現す
るために作成された図である。
【図12】各モジュールがどのような時間的スケジュー
ルのもとで、機能を果たすかを説明するための図であ
る。
【図13】第2実施例を説明するためのタイムチャート
である。
【図14】第3実施例を説明するためのタイムチャート
である。
【図15】第4実施例を説明するためのタイムチャート
である。
【図16】第5実施例を説明するためのタイムチャート
である。
【図17】位置姿勢推定のための環境観察を計画された
どの位置で行ったらよいかを説明するための図である。
【図18】第6実施例の基本構成を示す図である。
【図19】ロボットの位置姿勢推定値がどのように変化
するかを計算するための図である。
【図20】各モジュールがどのような時間的スケジュー
ルのもとで機能を果たすかを説明するための図である。
【符号の説明】
1…経路計画モジュール、2…地図記憶モジュール、3
…推定計画モジュール、4…移動制御モジュール、6…
障害物検知モジュール、7…位置姿勢推定モジュール、
8…位置行進モジュール、9…画像入力モジュール、1
0…画像記憶モジュール。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 環境の地図を記憶する手段と、 その地図を利用しロボットの経路を計画する経路計画手
    段と、 その経路情報に基づいてロボットの移動を制御しロボッ
    トの位置・姿勢の事前推定値を算出する移動制御手段
    と、 前記地図を利用し環境の一部または環境に含まれる道標
    を観察してロボットの位置・姿勢を推定する位置推定手
    段と、 ロボットの位置・姿勢の推定方法を計画する推定計画手
    段と、 ロボットの位置・姿勢の推定値の更新を行う位置更新手
    段とを具備し、 ある地点Aから別の地点Bまで移動することを命令され
    た移動ロボットの誘導制御装置において、 経路計画手段が作成した経路に基づいて移動制御手段が
    制御するロボットの進行に応じて、推定計画手段がその
    位置・姿勢の推定のために環境の一部または環境に含ま
    れる道標を観察する方法を計画した後、位置推定手段が
    地点Cで環境観察と位置推定のための処理を開始すると
    ともに、移動制御手段は地点Bに向かってロボットの移
    動を制御し、位置推定手段が地点Cにおけるロボットの
    位置・姿勢の推定が終了した地点Dにおいて、移動制御
    手段が算出した地点Cと地点Dの事前推定値と位置推定
    手段が推定した地点Cの新たな位置姿勢推定値とを利用
    して位置更新手段が地点Dでのロボットの位置と姿勢の
    推定値を更新し、その更新された位置から目的地Bまで
    の経路を経路計画手段が再計画し、その経路にもとづい
    て移動制御手段がロボットの移動を制御することを基本
    サイクルとし、以上の基本サイクルをロボットが地点B
    付近に到達するまで繰り返すことを特徴とする移動ロボ
    ットの誘導制御装置。
JP4824193A 1993-03-09 1993-03-09 移動ロボットの誘導制御装置 Withdrawn JPH06259131A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4824193A JPH06259131A (ja) 1993-03-09 1993-03-09 移動ロボットの誘導制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4824193A JPH06259131A (ja) 1993-03-09 1993-03-09 移動ロボットの誘導制御装置

Publications (1)

Publication Number Publication Date
JPH06259131A true JPH06259131A (ja) 1994-09-16

Family

ID=12797950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4824193A Withdrawn JPH06259131A (ja) 1993-03-09 1993-03-09 移動ロボットの誘導制御装置

Country Status (1)

Country Link
JP (1) JPH06259131A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005024426A (ja) * 2003-07-03 2005-01-27 Univ Of Tsukuba 化学物質発生源探索装置
JP2005288628A (ja) * 2004-03-31 2005-10-20 Matsushita Electric Works Ltd 移動ロボットシステム
JP2007316966A (ja) * 2006-05-26 2007-12-06 Fujitsu Ltd 移動ロボット、その制御方法及びプログラム
JP2020060924A (ja) * 2018-10-09 2020-04-16 三菱重工業株式会社 複数のビークルの移動制御方法、移動制御装置、移動制御システム、プログラム及び記録媒体
DE112018005907T5 (de) 2017-11-20 2020-07-30 Sony Corporation Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren, programm und beweglicher körper
KR20200111587A (ko) * 2019-03-19 2020-09-29 한국전자통신연구원 특징점 지도 관리방법 및 장치

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005024426A (ja) * 2003-07-03 2005-01-27 Univ Of Tsukuba 化学物質発生源探索装置
JP2005288628A (ja) * 2004-03-31 2005-10-20 Matsushita Electric Works Ltd 移動ロボットシステム
JP2007316966A (ja) * 2006-05-26 2007-12-06 Fujitsu Ltd 移動ロボット、その制御方法及びプログラム
DE112018005907T5 (de) 2017-11-20 2020-07-30 Sony Corporation Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren, programm und beweglicher körper
US11661084B2 (en) 2017-11-20 2023-05-30 Sony Corporation Information processing apparatus, information processing method, and mobile object
JP2020060924A (ja) * 2018-10-09 2020-04-16 三菱重工業株式会社 複数のビークルの移動制御方法、移動制御装置、移動制御システム、プログラム及び記録媒体
US11789444B2 (en) 2018-10-09 2023-10-17 Mitsubishi Heavy Industries, Ltd. Moving control method, moving control device, moving control system, program, and storage medium for multi-vehicle
KR20200111587A (ko) * 2019-03-19 2020-09-29 한국전자통신연구원 특징점 지도 관리방법 및 장치

Similar Documents

Publication Publication Date Title
US11567502B2 (en) Autonomous exploration framework for indoor mobile robotics using reduced approximated generalized Voronoi graph
US5999866A (en) Infrastructure independent position determining system
CN108051002B (zh) 基于惯性测量辅助视觉的运输车空间定位方法及系统
Olson Probabilistic self-localization for mobile robots
US20070276541A1 (en) Mobile robot, and control method and program for the same
KR20200041355A (ko) 마커를 결합한 동시 위치결정과 지도작성 내비게이션 방법, 장치 및 시스템
EP3939863A1 (en) Overhead-view image generation device, overhead-view image generation system, and automatic parking device
KR20150058679A (ko) 단지내 도로에서 자율주행차량의 위치 및 해딩 정보 제공 장치 및 방법
JP5016399B2 (ja) 地図情報作成装置及びそれを備えた自律移動装置
WO2013049597A1 (en) Method and system for three dimensional mapping of an environment
CN112197770A (zh) 一种机器人的定位方法及其定位装置
JP2003015739A (ja) 外環境地図、並びに自己位置同定装置および誘導制御装置
Corke et al. Sensor influence in the performance of simultaneous mobile robot localization and map building
JP5169273B2 (ja) 移動ロボットの制御装置および移動ロボットシステム
US20210304518A1 (en) Method and system for generating an environment model for positioning
JP2007141108A (ja) 自律移動装置
JPH06259131A (ja) 移動ロボットの誘導制御装置
CN111580530B (zh) 一种定位方法、装置、自主移动设备及介质
Tsukiyama Global navigation system with RFID tags
Madhavan et al. Map-building and map-based localization in an underground-mine by statistical pattern matching
Stella et al. Self-location of a mobile robot by estimation of camera parameters
JP2022074331A (ja) 状態判定装置、状態判定システム及び状態判定方法
Hayet et al. Qualitative modeling of indoor environments from visual landmarks and range data
Summan Positioning for mobile NDE inspection robots
Zhang et al. Autonomous Localization and Motion Control of Under-Vehicle Inspection Robot

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20000509