JP2006107475A - 移動ロボット - Google Patents

移動ロボット Download PDF

Info

Publication number
JP2006107475A
JP2006107475A JP2005262334A JP2005262334A JP2006107475A JP 2006107475 A JP2006107475 A JP 2006107475A JP 2005262334 A JP2005262334 A JP 2005262334A JP 2005262334 A JP2005262334 A JP 2005262334A JP 2006107475 A JP2006107475 A JP 2006107475A
Authority
JP
Japan
Prior art keywords
obstacle
information
mobile robot
detection
sensor
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.)
Granted
Application number
JP2005262334A
Other languages
English (en)
Other versions
JP4464893B2 (ja
Inventor
Tamao Okamoto
球夫 岡本
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005262334A priority Critical patent/JP4464893B2/ja
Publication of JP2006107475A publication Critical patent/JP2006107475A/ja
Application granted granted Critical
Publication of JP4464893B2 publication Critical patent/JP4464893B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device

Abstract

【課題】 障害物が存在する環境下で移動する移動ロボットにおいて、リアルタイムにかつ効率的な目的地への移動を実現することができる移動ロボットを提供する。
【解決手段】 移動可能なロボット本体部の自己位置を計測し、本体部の移動範囲の地図情報を地図データベースに格納し、自己位置情報と地図情報に基づいて地図情報上に設定されかつ本体部の移動に対して障害物となる障害物情報を検出可能な仮想センサの検出領域において障害物情報を抽出し、抽出された障害物情報に基づいて本体部が移動するための移動経路を算出する。
【選択図】図1A

Description

本発明は、移動ロボットに関する。
従来、障害物が存在する環境下における移動ロボットの目的地への移動の方法として、移動ロボットに備えられた複数の障害物検出センサにより障害物の位置などを検出し、移動ロボットの現在の位置情報と障害物検出センサにより検出した障害物の位置情報とに基づいて、移動ロボットが障害物を回避する移動経路を算出し、移動ロボットをその経路に沿って移動させるものがある(例えば、特許文献1参照)。
ここで、特許文献1に記載されている従来例1の移動ロボットの概略を、図7A、図7B、図7C、図8A、図8Bを用いて説明する。図7A、図7B、図7Cは、特許文献1に記載されている移動ロボットの構成を示す。図8A、図8Bは、図7A、図7B、図7Cに示した移動ロボットの移動経路の決定方法を示す。
図7A、図7B、図7Cに示すように、移動ロボット171は、ロボットの移動に必要な車輪178、補助車輪179や、モータなどの駆動装置175を具備する移動可能な本体部171aと、本体部171aの周囲に取り付けられて超音波や赤外線などを用いて周囲の任意の検出領域に存在する障害物を検出する障害物検出センサ177と、例えば車輪軸に取り付けられたエンコーダ161により計測されたエンコーダ値をオドメトリ計算機162を用いてロボットの現在位置(以下、自己位置と記す)の計測を行う自己位置計測装置172と、障害物検出センサ177によって検出した障害物の情報と自己位置計測装置172により計測した移動ロボット171の自己位置情報から検出した障害物を回避し移動目的地に移動するための経路を算出する経路計算装置174を有する。
このような、移動ロボット171の移動経路は、例えば、図8Aのように決定される。詳細には、例えば、図8Aのように移動ロボット171が目的地183に向かって移動している途中に、進行方向に障害物検出センサ177の検出領域182内に進入する障害物がない場合には、移動ロボット171は経路計算装置174において、自己位置計測装置172により計測される自己位置と目的地183の位置情報より目的地183に向かうように図8A中の実線の矢印にて示す経路185を算出し、この経路185に従って移動ロボット171は移動を行う。
しかし、移動ロボット171が移動している途中に、例えば、図8Bのように障害物184が進行方向にあたる障害物検出センサ177の検出領域内182に進入した場合には、障害物検出センサ177によって移動ロボット171から障害物184の方向や距離を計測し、経路計算装置174では自己位置計測装置172により計測される自己位置情報と移動目的地183の位置情報に加え、障害物検出センサ177により計測された障害物184の情報に基づいて経路を算出する。算出される経路は、例えば、移動ロボット171と障害物184との距離に反比例した大きさで障害物184とは逆方向の障害物回避成分186と、前記の障害物がない場合の経路185を合成した経路187とする。このように移動ロボット171の周囲の障害物情報によりリアルタイムに算出される経路に従って移動ロボット171が移動することで、移動ロボット171は障害物184を回避し目的地183に到達する。
また、図7A、図7B、図7C及び図8A、図8Bに示した移動ロボット171とは異なり、例えば、移動ロボットの移動目的地及び移動ロボットの移動範囲内の障害物情報を地図情報として具備し、その地図情報をそのまま用いて移動ロボットの移動経路を算出するものがある(例えば、特許文献2参照)。
ここで、特許文献2に記載されている従来例2の移動ロボットの概略を、図10A、図10B、図10C及び図11を用いて説明する。図10A、図10B、図10Cは、特許文献2に記載されている移動ロボットの構成を示す。図11は、図10A、図10B、図10Cに示した移動ロボットにおける移動経路の決定方法を示す。
図10A、図10B、図10Cに示すように、移動ロボット201は、ロボット201の移動に必要な車輪207、補助車輪208や、モータなどの駆動装置205を具備する移動可能な本体部201aと、例えば車輪軸に取り付けられたエンコーダ209により計測されたエンコーダ値をオドメトリ計算機230を用いてロボット201の現在位置(以下、自己位置と記す)の計測を行う自己位置計測装置202と、目的地がどこにあるのかという情報、障害物があらかじめどこに存在しているのかという位置情報、移動ロボット201の移動範囲の地図情報などを格納する地図データベース203と、自己位置計測装置202により計測された移動ロボット201の自己位置情報と地図データベース203の地図情報から障害物を回避し移動経路を算出する経路計算装置204を有する。
この移動ロボット201における移動経路は、図11に示すようにして決定される。地図情報301に、自己位置計測装置により計測された自己位置情報を基づいてロボット201と目的地303を設定する。ここで、例えば必要とする移動精度に従って地図情報301のように地図情報をメッシュ状に分割し、拡大図307に示すように移動ロボット201の存在するブロックから移動目的地303の存在するブロックまで障害物304のあるブロックに通らないように順次ブロックをたどって行く経路を決定する。ここで、各ブロックは308のように複数の移動可能方向が存在するためその移動可能方向をたどった例えば309で例示されるような経路が複数存在する。そのため、目的地303に到達する経路候補は305で示すように複数算出されるため、例えば最短到達経路などの条件によって一意に経路306を選定する。
特開平7−110711号公報 特開平6−138940号公報
しかしながら、図7A、図7B、図7C、図8A及び図8Bに示した従来例1の移動ロボット171の場合、障害物検出センサ177が検出した障害物情報に基づいて経路の算出を行っているが、障害物検出センサ177の検出領域182の範囲には限界があるため、算出する経路の先を予測することができない。このため、移動ロボットが行き止まりのある通路や障害物の窪みに入り込んでしまうという非効率な移動となってしまう。さらに、最悪の場合にはこの行き止まりの箇所で身動きが取れなくなるといったいわゆるデッドロックの状態に陥るおそれがある。
その詳細を、図9を参照しながら説明する。図9は、従来例1の移動ロボット171が非効率な移動や、デッドロック状態に陥る場合を示す。
図9に示すように、例えば、移動ロボット171が通過できる程度の開口部197を有するとともに行き止まり198となっている窪みを有する障害物194が目的地183の方向に存在する場合、本来なら、移動ロボット171が目的地183に向かう経路195に従って移動してもその先が行き止まりとなるため、この移動ロボット171が事前に、障害物194全体を回避するような理想的な経路196を取りながら目的地183に向かうことが望ましい。
しかし、前記のように、移動ロボット171の障害物検出センサ177の検出領域182は移動ロボット171における周囲の限られた範囲であるため、移動ロボット171は、障害物194の窪みの開口部197付近においては、移動ロボット171の両側に障害物があると検出して、その開口部197の幅が移動ロボット171の通過可能な幅であるならば、経路195に従って開口部197よりも奥側に入り込んでしまう。このとき、窪みの行き止まり198はまだ検出されていない。そして、移動ロボット171が経路195に従って進み、行き止まり198に到達してやっと通行不可能であることを検出し、窪みを抜け出して異なる経路を選択することができる。しかも、最悪の場合は行き止まりにおいて経路195の方向に従って移動しようとする移動成分と、行き止まりを回避しようとする成分とが合成されるなどして身動きが取れなくなり、デッドロック状態に陥ってしまうおそれがある。
一方、図10A、図10B、図10C及び図11に示した従来例2の移動ロボット201では、地図データベース203に格納されている地図情報に基づいて経路の算出を行っているが、この地図情報を用いた経路計算は移動範囲全体を対象として計算が行われているため、例えば、障害物304が多かったり地図情報が広大なものであったりする場合には、経路計算における計算量は莫大なものとなり、小型の移動ロボットに搭載されるプロセッサでリアルタイムに処理を行うことは困難になってしまう。
例えば、前記の例で挙げたように、ある点から移動目的地303までの最短経路の算出には、グラフ理論により参照点(参照面積/移動精度)の2乗に比例した計算量が必要であることが知られている。例えば、わずか1m四方を1cmの精度で移動するだけでも100×100すなわち10000点の参照点が必要となり、経路計算に必要な計算量はK×10(Kは比例定数)と膨大な計算量となる。一方、比較として従来例1のロボットの場合の計算量は、センサ数に比例する計算量となっている。
そこで、本発明の目的は、このような問題を解決するもので、障害物が存在する環境下で移動する移動ロボットにおいて、リアルタイムにかつ効率的な目的地への移動を実現することができる移動ロボットを提供することにある。
前記目的を達成するために、本発明は以下のように構成する。
本発明の第1態様によれば、移動可能なロボット本体部と、
前記本体部の自己位置を計測する自己位置計測装置と、
前記本体部の移動範囲の地図情報を格納する地図データベースと、
前記自己位置計測装置により計測された自己位置情報と、前記地図データベースに格納された前記地図情報とに基づいて、前記地図情報上に設定されかつ前記本体部の移動に対して障害物となる障害物情報を検出可能な仮想センサの検出領域において前記障害物情報を抽出する障害物情報抽出部と、
前記障害物情報抽出部により抽出された前記障害物情報に基づいて、前記本体部が移動するための移動経路を算出する経路計算装置と、
を備える移動ロボットを提供する。
本発明の第2態様によれば、前記本体部の周囲の検出領域における障害物を検出する障害物検出センサをさらに有し、前記経路計算装置が、前記障害物情報抽出部により抽出された前記障害物情報に加えて、前記障害物検出センサからの検出情報に基づいて前記本体部が移動するための移動経路を算出する第1の態様に記載の移動ロボットを提供する。
本発明の第3態様によれば、前記障害物情報抽出部より抽出される前記障害物情報を、前記障害物検出センサが前記検出情報を前記経路計算装置に出力する信号と同じ信号に変換して前記経路計算装置に出力する変換装置をさらに備える第2の態様に記載の移動ロボットを提供する。
本発明の第4態様によれば、前記障害物情報抽出部が前記障害物情報を抽出するための抽出条件を設定変更する仮想センサ設定変更装置をさらに備える第1〜3のいずれか1つの態様に記載の移動ロボットを提供する。
本発明の第5態様によれば、前記仮想センサ設定変更装置が、前記地図データベースに格納された前記地図情報と、前記自己位置計測装置により計測された前記自己位置情報と、前記障害物情報抽出部により抽出された前記障害物情報と、前記障害物検出センサの検出情報と、前記経路計算装置により算出された移動経路との少なくとも1つに基づいて前記障害物情報抽出部が前記障害物情報を抽出するための抽出条件を変更する第4の態様に記載の移動ロボットを提供する。
このような構成によれば、地図情報より仮想的にセンサ情報を算出するため、「検出できる障害物までの距離や範囲に限界がある」とか「障害物の表面物性によって検出できない」とか「センサ同士が干渉して検出できない」などといった実際の障害物検出センサ特有の物理的制限を受けることがないため、障害物環境に応じた自由な検出領域を設定でき、精度良く障害物を検出することができる。従って、実際の障害物検出センサのみを用いる場合に較べて効率の良い目的地への移動を実現することができる。また、本発明の経路計算に必要な全計算量は、障害物情報抽出部における計算量は、検出領域に障害物があるかないかの計算となるため(センサの検出領域/移動精度)に比例した計算量と、従来例1の経路計算の計算量の和となるため、地図から経路を直接算出する場合に較べて大幅に計算量を削減することができ、小型の移動ロボットに搭載されるようなプロセッサでリアルタイムに処理を行うことも可能となる。
以上のように本発明によると、地図情報から仮想センサの検出領域において障害物情報を抽出することで、実際の障害物センサの物理的制限によって検出できない障害物を検出することができる。さらに、地図情報から直接経路を算出する場合に較べて経路計算時の計算量を大幅に削減していることから、小型の移動ロボットに搭載されるプロセッサであっても、リアルタイムに処理を行うことができる。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
本発明の記述を続ける前に、添付図面において同じ部品については同じ参照符号を付している。
本発明の1つの実施形態の移動ロボットを、図1A〜図1Eを参照しながら説明する。
図1Aは、本実施形態の移動ロボット20の構成を示す図、図1Bは、実際の移動ロボット20とその障害物検出センサ4の第1の検出領域3を示す図、図1Cは、マップ13上における移動ロボット20とその仮想センサ(詳細は後述)の第2の検出領域21を示す図である。また、図1Dは、移動ロボット20が算出する回避経路Bを示す図、図1Fは、図1Aに示す移動ロボット20とは異なる移動ロボット20Bの構成を示す図である。
図1Aに示すように、移動ロボット20は、移動可能な直方体形状の本体部2と、複数の(図1Aでは本体部2の両側の上部に4個ずつ配置された)障害物検出センサ4と、自己位置計測装置5と、地図データベース11と、障害物認識装置22と、経路計算装置6と、駆動装置7とを備えている。
前記本体部2は、ロボット20の移動に必要な4つの車輪2wや、モータなどの駆動装置7を具備する移動可能に構成されている。
前記複数の(図1Aでは本体部2の両側の上部に4個ずつ配置された)障害物検出センサ4は、本体部2の周囲に取り付けられて超音波や赤外線やレーザなどを用いて本体部2の周囲に形成された第1の検出領域3内に存在する障害物を検出する。
前記自己位置計測装置5は、例えば車輪2wの車輪軸に取り付けられたエンコーダにより計測されたエンコーダ値をオドメトリ計算機を用いてロボット20の現在位置(以下、自己位置と記す)の計測を行う。
前記地図データベース11は、目的地8がどこにあるのかという情報、障害物9、16があらかじめどこに存在しているのかという位置情報、本体部2の移動範囲の地図情報を有する。
前記障害物認識装置22は、メモリ領域12において、地図データベース11に記録されかつ仮想センサの第2の検出領域21内に存在する既知の障害物9、16を検出する。
前記経路計算装置6は、障害物認識装置22により認識した障害物9、16についての情報と障害物検出センサ4により検出した本体部2の周囲に存在する未知の障害物23(図1B参照)の情報と自己位置計測装置5により計測した移動ロボット20の自己位置情報とに基づいて移動ロボット20における回避経路(障害物を回避し移動目的地に移動するための経路)Bを算出する。
前記駆動装置7は、算出された回避経路Bに基づいて本体部2を移動させる。
障害物認識装置22は、メモリ領域12において、地図の図形データとしてのマップ(地図情報)13を形成し、このマップ13上に、既知の障害物9、16、本体部2を形成し、かつ、この本体部2に第1の検出領域3とは別の第2の検出領域21に存在する既知の障害物9、16を検出可能な第2の検出領域21を有する仮想センサを設定することで、マップ13上において、この仮想センサの第2の検出領域21内に存在する障害物9、16を検出している。
前記仮想センサは、実際のセンサではなく、マップ13上で仮想的にセンサと同等の検出機能を有する第2の検出領域21を設定することができるものであって、障害物認識装置22はこの第2の検出領域21内に存在する既知の障害物9、16を認識して抽出することができるようにしている。より具体的には、仮想センサの第2の検出領域21は、移動ロボット20の前方に、移動ロボット20が旋回時(障害物などの回避のための旋回時)に必要な回転時に描く円が入るような幅(回転半径の2倍以上の幅)を持ち、マップ13上に予め既知となっている障害物のうち移動ロボット20からみて最大の窪みを持つ障害物の窪みの深さより長い距離を持つ三角形又は長方形の領域とするのが好ましい。この領域を最大領域とし、1つの態様としては、仮想センサの第2の検出領域21を常にこの最大領域に設定するものでもよい。又は、別の態様としては、詳しくは後述するように、障害物を検出していないときは、最大領域より小さく、移動ロボット20の移動経路に沿って移動しているとき移動ロボット20に停止指令を出して停止するまでに移動ロボット20が進む距離(ただし、移動ロボット20の速度により依存して距離が変わる。)の長さで、移動ロボット20の旋回時(障害物などの回避のための旋回時)の回転時に描く円が通る幅(回転半径の2倍以上の幅)を持つ領域を最低限の領域として、この最低限の領域を第2の検出領域21とし、障害物を検出したときなどにおいては、最大領域に変更するようにしてもよい。また、マップ13上で、仮想センサの第2の検出領域21を最小領域に設定する領域(例えば、障害物が比較的少ないと想定される領域)と、仮想センサの第2の検出領域21を最大領域に設定する領域(例えば、障害物が比較的多いと想定される領域)とを予め設定しておくようにしてもよい。
このような仮想センサによれば、実際のセンサとは異なり、物理的な拘束条件にとらわれず、領域や検出精度の設定が自由にできる。例えば、実際のセンサであれば検出できない遠距離の領域や大きな領域や、物体の裏側の領域、複雑で入り組んだ領域などをも、仮想センサであれば検出することができる。さらに、実際のセンサでは不可能なほどの高い精度の情報の取得も仮想センサであれば可能である。また、仮想センサであれば、センサ同士の干渉を気にする必要が無く、また、実際のセンサを使用する際に生じる取付位置や、センサの駆動源や配線や、配管などの問題も仮想センサであれば考える必要が無い。さらに、仮想センサであれば、センサの設定、例えば検出領域や、検出精度などを、仮想センサを設定するプログラムを別のプログラムに切り替えたり、仮想センサを設定するプログラムで使用するパラメータの値を変更するなどすることにより、自由に設定変更することが可能である。従って、仮想センサを使用するとき、通常時は粗い精度での検出の設定にしておき、障害物の発見時には精度を上げた検出の設定に変更することができる。又は、仮想センサを使用するとき、通常では、ロボット20の狭い前方領域だけの検出の設定で、障害物が多いと予め判っている場所では、検出範囲を広げ、ロボット20の周囲全般に検出するような設定に変更したりすることができる。このように、必要に応じて、言い換えれば、時と場所などに応じて、仮想センサの検出精度や領域などを設定することが可能である。
このような構成の仮想センサによる障害物の検出は、マップ13における第2の検出領域21内のそれぞれの箇所の情報(それぞれの箇所での障害物の存在情報、例えば、第2の検出領域21内の障害物の有無、第2の検出領域21内に存在する障害物の形状、ロボット20から第2の検出領域21内の障害物までの距離及び方向などの情報)を、地図データベース11から部分的に取得するようにしていることで可能とされており、したがって、通常の障害物検出センサ4であれば、図1AのXで示すような、移動ロボット20に対して障害物9の背後となる領域を検出することができないことがあるが、前記のような仮想センサでは第2の検出領域21内の情報を地図データベース11から部分的に取得するようにしているので、障害物認識装置22は、このような移動ロボット20に対して障害物9の背後となる領域Xを検出することができる。すなわち、障害物認識装置22は、あらかじめ地図データベース11に登録されている既知の障害物9、16であれば、第2の検出領域21内に存在すれば、障害物9、16の位置関係にかかわらず(言い換えれば、移動ロボット20から見て、たとえ障害物同士が互いに重なっていたとしても)、全て検出することができる。なお、この仮想センサにおける第2の検出領域21は、例えば、第1の検出領域3よりも本体部2の進行方向側を検出可能なように、第1の検出領域3よりも本体部2の進行方向側に向けて遠くまで広がる三角形状に設定されている。
また、上述のように、障害物認識装置22では、この第2の検出領域21内に存在する障害物のみを認識し、この第2の検出領域21外に存在する障害物に対しては認識を行わない。これにより、この第2の検出領域21の範囲内におけるマップ13の一部分のみを、移動ロボット20の回避経路の算出時の計算対象とすることができる。
このような構成において、移動ロボット20が出口の無い障害物16の内部に入り込まないようにする回避経路Bの算出方法を説明する。なお、障害物16の位置情報は地図データベース11に登録されているとする。
ここで、図1Bに示すように、実際に目的地8に向かって経路Aを進んでいる移動ロボット20では、自己位置計測装置5により移動ロボット20の現在位置が計測されており、得られた自己位置情報と地図データベース11における地図情報などが障害物認識装置22に送られている。障害物認識装置22では、図1Cに示すように、メモリ領域12において、送られた地図情報に基づいてマップ13が形成されるとともに、地図データベース11にあらかじめ登録されている目的地8および障害物9、16がマップ13上に形成される。また、自己位置計測装置5から送られた自己位置情報に基づいてマップ13上に移動ロボット20が形成されるとともにこの移動ロボット20に仮想センサが設定され、仮想センサの第2の検出領域21が設定されている。また、実際に移動中の移動ロボット20の周囲には、地図データベース11にあらかじめ登録されている既知の障害物9、障害物16、および地図データベース11に登録されていない未知の障害物23が存在しており、障害物16は、移動ロボット20が進入可能な開口部16aとこの開口部16aよりも奥側の行き止まり部16bとを有しており、目的地8は、この障害物16の背後に存在しているとする。
このような、移動ロボット20の移動経路は、例えば、移動ロボット20が目的地8に向かって移動している途中に、進行方向に障害物検出センサ4の第1の検出領域3内に進入する障害物がない場合には、移動ロボット20は経路計算装置6において、自己位置計測装置5により計測される自己位置と目的地8の位置情報より目的地8に向かうように経路を算出し、この経路に従って移動ロボット20は移動を行う。
このとき、移動中の移動ロボット20の障害物検出センサ4が、障害物16の開口部16a側の一部と障害物23の一部を検出し、移動ロボット20における経路計算装置6が、障害物検出センサ4が検出した障害物23の情報のみに基づいて回避経路を算出する場合であれば、既に従来技術で述べたように、障害物検出センサ4の第1の検出領域3の範囲には限界があるため、算出する経路の先を予測することができず、図1Bに示すように、障害物16の内部に進んでしまうような回避経路、すなわち経路Aと同方向の回避経路を算出してしまい、移動ロボット20が障害物16の内部でデッドロックの状態や永久動作に陥るおそれがある。
しかし、この実施形態の移動ロボット20においては、図1Cに示すように、障害物認識装置22が、マップ13上の移動ロボット20に設定された仮想センサの第2の検出領域21内に存在する既知の障害物16を認識しており、この第2の検出領域21は任意に設定できるため、図1Cのように、第1の検出領域3よりも本体部2の進行方向側に向けて遠くまで広がる三角形状に第2の検出領域21を設定すれば、障害物16の内部の奥側まで検出することができて、障害物16の内部の奥側に行き止まり部16bが存在することを検出することができる。
このように、実際の障害物検出センサ4を用いることで、仮想センサでは検出できない、すなわち地図データベース11に登録されていない未知の障害物23を検出することができ、かつ、仮想センサを用いることで、既知の障害物16における、障害物検出センサ4の第1の検出領域3が及ばない箇所を検出することができる。したがって、仮想センサを用いることで、障害物検出センサ4のみを用いる場合に比べて、精度の良い障害物検出を行うことができる。
そして、自己位置計測装置5により計測された自己位置情報と、障害物検出センサ4により得られたあらかじめ地図データベース11に登録されていない障害物23の情報と、障害物認識装置22によって検出された既知の障害物16の情報とが、経路計算装置6に送られる。
そして、経路計算装置6において、図1Dに示すように、移動ロボット20の自己位置情報、および前記の障害物23と障害物16の位置情報とに基づいて、障害物23と内部の奥側に行き止まり部16bを有する障害物16とを回避することができる回避経路Bを算出する。
このとき、上述したように、障害物認識装置22では、第2の検出領域21内に存在する障害物のみを認識し、この第2の検出領域21外に存在する障害物に対しては認識を行わない。これにより、経路計算装置6は、第2の検出領域21の範囲内における、マップ13の一部分のみを、移動ロボット20の回避経路の算出時の計算対象とすることができ、例えば、マップ13の全範囲を計算の対象として回避経路の算出を行う場合に比べて、計算量を大幅に削減することができる。
これにより、小型の移動ロボットに搭載されるプロセッサであっても、迅速に回避経路の算出を行うことができる。また、移動中に新たな障害物を検出して、再び回避経路の算出を行う必要が生じても、上述の通り、計算量を大幅に削減していることから、迅速に新たな回避経路の算出を行うことができる。なお、経路計算については、仮想センサの検出情報も実際の障害物検出センサ4の検出情報も同様のセンサ情報として取り扱うことができ、センサ情報を入力とする関数(例えば、従来例1で挙げたように、目的地への移動成分に対して、センサ情報、すなわち障害物の方向や距離に応じて移動成分の補正量を加えていって移動ロボットの経路を算出するような関数)を解くことで経路の算出を行っている。このような関数の一例としては、以下のようなものである。
(数1)
Do(ロボットの経路) =F([センサ情報])
例 :F([センサ情報]) =
Dt(目的地への移動成分)
+ G(回避ゲイン) * L1(障害物1までの距離)* D1(障害物1の方向)
+ G(回避ゲイン) * L2(障害物2までの距離)* D1(障害物2の方向)
+ ...
(障害物の数だけ続く)

なお、Do , Dt , D1, D2 ... はベクトルとする。
なお、図1Aに示した移動ロボット20では、マップ13上において既知の障害物9を認識するデータ処理を障害物認識装置22により行い、回避経路の算出を行うデータ処理を経路計算装置6により行っているが、これらのデータ処理を一つの計算装置(図示は省略)によって行うようにしてもよい。この場合、仮想センサによる障害物の検出情報の受渡しは、前記装置内のメモリ、または内部通信機能を用いて行うようにする。
また、図1Eに示すように、移動ロボット20Bの障害物認識装置22内に、仮想センサを用いて認識した既知の障害物9の情報を障害物検出センサ4が実際に障害物9を検出したときの出力信号と同じ信号、例えば、同じ種類の信号、に変換する変換装置24を具備させても良い。この場合、変換装置24により、仮想センサの出力信号を実際の障害物検出センサ4の出力信号と同様にすることができるため、例えば、仮想センサにおける第2検出領域21の設定などを変更することで、実際にセンサを追加したり、その設置位置を変更したりすることなく、センサを追加したり、その設置位置を変更したりした場合の効果を検証することができる。また、逆に、実際の障害物検出センサ4の代わりに、仮想センサを用いることも容易にできる。これにより、実験段階や調整中の移動ロボットにおいても、実際にセンサを追加したりその設置位置を変更したりすることなく、センサを追加などをした場合の効果を検証することができる。
前記実施形態によれば、地図データベース11に基づいて、地図の図形データ(地図情報)を形成し、この図形データ上に、既知の障害物及び本体部2を形成するとともに、この本体部2に、実際のセンサによる第1の検出領域3とは別の第2の検出領域21に存在する既知の障害物9,16を検出可能な仮想センサを設定することで、例えば、本体部2に設けられた障害物検出センサ4の第1の検出領域3が及ばない箇所であっても、地図データベース11に位置情報が格納されている既知の障害物9,16であれば、この仮想センサにより検出することができ、仮想センサを用いることで、本体部2に設けられている障害物検出センサ4のみを用いる場合に比べて、精度の良い障害物検出を行うことができる。また、仮想センサにおける第2の検出領域21は、この第2の検出領域21内に入り込んだ既知の障害物9,16を検出し、この第2の検出領域21の外に存在する既知の障害物9,16については検出しないので、経路計算装置6が回避経路の算出を行う際には、仮想センサにおける第2の検出領域21内に入り込んだ既知の障害物9,16の情報と、本体部2における障害物検出センサ4が検出した障害物のうちの未知の障害物の情報とに基づいて、回避経路の算出を行うことができるので、例えば、地図の図形データの全てを、経路計算時の計算対象とする場合に比べて、計算量を大幅に削減することができる。
従って、回避経路の算出を行うに際して仮想センサを設けたことで、経路計算時の計算量を大幅に削減していることから、小型の移動ロボットに搭載されるプロセッサであっても、リアルタイムに回避経路の算出を行うことができる。また、移動中に新たな障害物を検出して、再び回避経路の算出を行う必要が生じても、同様にリアルタイムに新たな回避経路の算出を行うことができる。
次に、本発明の前記実施形態のより具体的な例の移動ロボットを、図1F〜図6B参照しながら説明する。
図1F、図1G及び、図1Hに示すように、本発明の上記実施形態のより具体的な例の移動ロボット51は、移動可能な直方体形状の本体部51aと、前記本体部51aの位置を計測する自己位置計測装置53と、前記本体部51aの移動目的地までの移動範囲の地図情報を格納する地図データベース52と、仮想センサ情報計算装置54が仮想センサの算出情報を算出するための算出条件を設定変更する仮想センサ設定変更装置57と、前記自己位置計測装置53により計測された自己位置情報73と前記地図データベース52に格納された前記地図情報に基づいて、地図情報上の任意の検出領域において本体部51aの移動に対して障害物となる障害物情報を抽出して前記設定された算出条件の下に仮想センサの算出情報を算出する仮想センサ情報計算装置54(言い換えれば、前記自己位置計測装置53により計測された自己位置情報73と前記地図データベース52に格納された前記地図情報に基づいて、地図情報上の任意の検出領域において本体部51aの移動に対して障害物となる障害物情報を抽出する障害物情報抽出部)と、前記仮想センサ情報計算装置54により算出された仮想センサの算出情報(言い換えれば、前記障害物情報抽出部54により抽出された障害物情報)に基づいて、前記本体部51aが移動するための移動経路を算出する経路計算装置55を有する。また、移動ロボット51には、さらに、地図データベース52と仮想センサ設定変更装置57とに障害物に関する障害物情報や仮想センサ設定に関する情報や目的地に関する情報を入力するための入力装置39と、各種の情報(例えば、地図情報、仮想センサの設定情報、移動経路情報など)を出力する例えばディスプレイのような出力装置38とを備えている。
ここで、先の図1Aでの移動ロボット20の本体部2は、この移動ロボット51の本体部51aに相当し、以下同様に、障害物検出センサ4は障害物検出センサ56に相当し、自己位置計測装置5は自己位置計測装置53に相当し、地図データベース11は地図データベース52に相当し、障害物認識装置22は仮想センサ設定変更装置57と仮想センサ情報計算装置54に相当し、経路計算装置6は経路計算装置55に相当し、駆動装置7は駆動装置61に相当する。
障害物検出センサ56は、本体部51aの周囲の任意の検出領域の障害物を検出し、前記経路計算装置55は仮想センサの算出情報に加えて障害物検出センサ56の検出情報に基づいて移動経路の算出を行うこともできるものとする。
また、仮想センサ情報計算装置54が仮想センサの算出情報を算出するための算出条件を設定変更する前記仮想センサ設定変更装置57をロボット51は有しており、この仮想センサ設定変更装置57によって、前記地図データベース52に格納された地図情報と、前記自己位置計測装置53により計測された自己位置情報73と、前記仮想センサ情報計算装置54により算出された仮想センサの算出情報と、前記障害物センサ56の検出情報と、前記経路計算装置55により算出された移動経路に基づいて仮想センサの算出情報を算出するための算出条件を変更することもできるものとする。
ここで、前記ロボット51の具体的な仕様例として、図1F、図1G、図1Hの移動可能な本体部51aは、それぞれ独立に駆動可能な左右の2つの駆動車輪59とキャスター型の補助的な2つの小さな補助車輪60で構成された移動装置58で構成されているものとする。左右の駆動車輪59は左右のモータ61aを用いた駆動装置61により所定の回転速度でそれぞれ制御が可能であり、両駆動車輪59の回転速度の差によって方向転換や旋回を行うことが可能である。本体部51aは前後に縦長の直方体に近似される形状とし、左右の2つの駆動車輪59と左右の2つの補助車輪60は4隅に配置され、前方2輪を駆動車輪59、後方2輪を補助車輪60とする。これらの2つの駆動車輪59と2つの補助車輪60は、図1Aの4つの車輪2wに相当する。
また、自己位置計測装置53は、2つの駆動車輪59の回転駆動軸に取り付けられたエンコーダ62と、エンコーダ62の値から自己位置を算出するオドメトリ計算装置63とを備えて構成されるものとし、経路計算装置55では、2つのエンコーダ62から得られた2つの駆動車輪59の回転速度を基にオドメトリ計算を行うことでリアルタイムなロボット51の自己位置情報73を算出する。算出される位置計測情報は、具体的にはロボット51の本体部51aの位置と、姿勢(進行方向)である。また、時系列な自己位置情報73の差分によってロボット51の速度情報の算出も加えて行うことができる。
また、障害物検出のための障害物検出センサ56として、複数の光電センサ64と超音波センサ65を用いている。
図2で示すように、個々に64sのような大略矩形の検出領域を検出可能な光電センサ64を、ロボット51の本体部51aの周囲に複数配置して(具体的には、本体部51aの前後面の中央部に1個ずつ、左右側面の中央部に2個ずつ配置して)、ロボット51の本体部51aの周囲を取り囲むような近接領域の検出を行っている。また、65sのような細長い検出領域の超音波センサ65を前方に複数配置して(具体的には、本体部51aの前面に2個配置して)、前方の障害物40を検出する。これら障害物検出センサ56による検出値としては、光電センサ64ではロボット51の進入不可領域40a−6を検出値とするとともに、超音波センサ65では障害物40までの距離Lを検出値としている。よって、これらの光電センサ64の検出領域64sと超音波センサ65の検出領域65sとより、障害物検出センサ56の第1の検出領域56s(図1Aの移動ロボット20の障害物検出センサ4の第1の検出領域3に相当。)を構成している。
また、地図データベース52に格納されている地図情報70として、図4Aに示すように、障害物40の位置、大きさ、形状に関する障害物情報72と、目的地の情報71が登録されている。仮想センサの算出時には、この地図情報70の上に自己位置情報73を基に移動ロボット51の情報が重ねられる。
また、仮想センサの算出条件の設定(仮想センサの第2の検出領域41(図1Aの移動ロボット20の仮想センサの第2の検出領域21に相当。)の設定)の仕方についてであるが、図1Iに示すように仮想センサ設定変更装置57が無い移動ロボット51では、図3Aで示すように、第2の検出領域41は、移動ロボット51の前方に、移動ロボット51が旋回時(障害物などの回避のための旋回時)に必要な回転時に描く円が入るような幅(回転半径42の2倍以上の幅)を持ち、地図情報70に予め既知となっている障害物40のうち移動ロボット51からみて最大の窪みを持つ障害物40Gの窪みの深さ40G−1より長い距離を持つ長方形の領域としている。なお、ここでは、障害物40Gの窪みの深さ40G−1は、前記超音波センサ65の細長い検出領域65sでは届かないくらい深いものとする。なお、図1Iのロボット51では、入力装置39から仮想センサの設定情報を仮想センサ情報計算装置54に入力して、仮想センサの第2検出領域41を任意に設定することができる。ただし、この例では、ロボット移動中には仮想センサの設定を変更することはできない。
また、移動ロボット51は、仮想センサ情報計算装置54が仮想センサの算出情報を算出するための算出条件を設定変更する前記仮想センサ設定変更装置57を具備しているため、移動ロボット51の移動開始時に仮想センサの第2検出領域41を一旦設定すれば、その領域を固定したものとすることもできる他、障害物検知センサ56から仮想センサ設定変更装置57に入力された障害物情報などの各種情報により仮想センサの第2検出領域41の設定を移動ロボット51の移動途中で仮想センサ設定変更装置57で変更することもできる。
各種情報、例えば、障害物発見情報により仮想センサの第2検出領域41の設定を移動ロボット51の移動途中で仮想センサ設定変更装置57で変更する例について説明する。
仮想センサの第2検出領域41としては、例えば、図3Bで示すように、移動ロボット51の通常移動時(障害物発見前)では、ロボット51がその移動経路に沿って移動しているときロボット51に停止指令を出してロボット51が停止するまでに進む距離(ただし、移動ロボット51の速度により依存して距離が変わる。)の長さ43で、ロボット51の旋回時(障害物などの回避のための旋回時)の回転時に描く円が通る幅(回転半径42の2倍以上の幅)を持つ領域41gとすることができる。
そして、図3Bのように、仮想センサの通常時(障害物発見前)の前記第2の検出領域41gに、例えば、障害物40Gが入った場合、その障害物40Gの検出位置より、地図情報70から検出した障害物40Gの形状や位置などを仮想センサ設定変更装置57で抽出し、今度は前記の通常時の検出領域41gに加えて、障害物40の周囲のロボット51の旋回時(障害物などの回避のための旋回時)の回転時に描く円が通る幅(回転半径42の2倍以上)の追加領域41hも第2の検出領域41に変更することができる。
なお、ロボット51が障害物を回避した後、図3Bで示すように、移動ロボット51の通常移動時(障害物発見前)に戻った場合には、追加領域41hを無くし、通常時の検出領域41gのみとするようにしてもよい。
そして、前記設定された仮想センサの第2の検出領域41により検出を行いつつ仮想センサ情報計算装置54により算出される仮想センサの算出情報は、前記自己位置計測装置53により計測されたロボット51の自己位置情報73と、前記地図データベース52に格納された前記地図情報70とに基づいて抽出され、前記地図情報70上に設定された仮想センサの第2の検出領域41において前記ロボット51の移動に対して障害物となる情報を意味する。この仮想センサの算出情報の具体的な例としては、障害物の情報を考慮して、障害物を回避可能でかつロボット51が移動可能な情報であり、移動ロボット51から障害物40までの距離と、移動ロボット51の移動可能な角度範囲とがある。このような、移動ロボット51から障害物40までの距離と、移動ロボット51の移動可能な角度範囲の情報は、以下のように、第2の検出領域41内での障害物の有無によって、図3C〜図3Fのように算出されたものであり、経路計算装置55へ入力される。なお、図3C〜図3Fは、仮想センサ設定変更装置57により仮想センサの第2の検出領域41を移動途中で変更しない場合として例示しているが、前記したように移動途中で変更する場合でも、同様の算出を行う。
(1) 図3Cのように、地図データベース52に格納されている地図情報70と自己位置計測装置53で計測された移動ロボット51の自己位置情報とに基づき、移動ロボット51が進む前方に障害物40が無いと仮想センサ情報計算装置54で判断できるときには、仮想センサ情報計算装置54は、障害物距離無限大(∞)で移動可能角度は41c−3のように移動ロボット51の前面の全方向とする算出情報を算出する。なお、ここでは、仮想センサの第2の検出領域41は、移動ロボット51の前方に伸びる長方形の検出領域41c−2となっており、以下の(2)〜(4)でも同様な領域となっている。
(2) 図3Dのように、地図データベース52に格納されている地図情報70と自己位置計測装置53で計測された移動ロボット51の自己位置情報とに基づき、移動ロボット51が進む前方に、2つの対向して配置された障害物40d−6,40d−7があると仮想センサ情報計算装置54で判断できるときであって、かつ、2つの障害物40d−6,40d−7間に通行可能な通路40d−5が形成されていると仮想センサ情報計算装置54で判断した場合、移動ロボット51から移動ロボット51の前面に近い障害物40d−6までの距離を、移動ロボット51から障害物40d−6までの距離40d−4とし、2つの障害物40d−6,40d−7間の通路40d−5内に入る角度方向と通路40d−5を回避する角度方向の2つの角度範囲40d−3を、移動ロボット51の移動可能角度とする算出情報を、仮想センサ情報計算装置54は算出する。ここで、2つの障害物40d−6,40d−7間にロボット51が通行可能な通路40d−5が形成されているか否かの判断は、以下のようにして仮想センサで行うことができる。例えば、アルゴリズム的には、もし、2つの対向して配置された障害物が存在する場合、その2つの障害物の間の距離が、(ロボット51の全体の幅)に(安全余裕分の寸法)を加えた幅寸法以上であるか否かを仮想センサ情報計算装置54で判断し、そのような幅寸法以上であると仮想センサ情報計算装置54で判断するならば、ロボット51は通行可として図3Dの処理を行う一方、そのような幅寸法未満であると仮想センサ情報計算装置54で判断するならばロボット51は通行不可として図3Fの処理を行う。また、ロボット51の幅及び長さ、旋回時の回転半径などの情報については、仮想センサを設定するときの情報の中に含まれているものとする。
(3) 図3Eのように、地図データベース52に格納されている地図情報70と自己位置計測装置53で計測された移動ロボット51の自己位置情報とに基づき、移動ロボット51が進む前方の真正面に、障害物40e−6があると仮想センサ情報計算装置54で判断できるときは、移動ロボット51から移動ロボット51の前面方向の障害物40e−6までの距離を、移動ロボット51から障害物40e−6までの距離40e−4とし、移動ロボット51が障害物40e−6を回避する角度方向40e−3を移動可能角度とする算出情報を、仮想センサ情報計算装置54は算出する。
(4) 図3Fのように、地図データベース52に格納されている地図情報70と自己位置計測装置53で計測された移動ロボット51の自己位置情報とに基づき、移動ロボット51が進む前方の真正面に、障害物40f−6があると仮想センサ情報計算装置54で判断できるときであって、かつ、移動ロボット51からみて障害物40f−6の窪みが行き止まり40f−7もしくは通行不可能な通路状40f−5になっていると仮想センサ情報計算装置54で判断できるときには、障害物40f−6の窪みの開口部が塞がったような障害物40f−6と考え、移動ロボット51の前面方向の移動ロボット51から障害物40f−6までの距離を、移動ロボット51から障害物40f−6までの距離40f−4とし、移動ロボット51が障害物40f−6を回避する角度方向40f−3を、移動ロボット51の移動可能角度とする算出情報を、仮想センサ情報計算装置54は算出する。
次に、経路計算装置55では、図4B、図4Cのように移動ロボット51の移動経路を算出する。
まず、地図データベース52に格納されている地図情報70と自己位置計測装置53で計測された移動ロボット51の自己位置情報とに基づき、ロボット51の進行方向に障害物の無いと仮想センサ情報計算装置54で判断されている場合(図3Cのような場合)は、図4Bで示すように、移動ロボット51と目的地71b−2を結ぶ目的地71b−2への方向71b−3と、自己位置計測装置53により計測された現在の移動ロボット51の進行方向51b−4の角度差を経路計算装置55で算出し、その角度差に比例した旋回速度成分51b−5を、直進速度成分に加えた移動経路51b−6を経路計算装置55で算出し、なお、ロボット51の直進速度成分は障害物や目的地までの距離及び前記旋回速度成分によって設定される。
以上のように、経路計算装置55において、このような移動速度を算出することによって移動経路51b−6で移動できる。経路計算装置55で算出された移動速度は、駆動装置61に入力されて、移動ロボット51が移動を行う。なお、障害物等が何も無ければロボット51の最大速度にて移動が行われる。
ここで、移動ロボット51と目的地71b−2を結ぶ目的地71b−2への方向71b−3は、仮想センサ情報計算装置54又は経路計算装置55で、必要に応じて個別に求めることができる。仮想センサ情報計算装置54では、仮想センサの検出設定が、目的地71b−2への方向71b−3の領域を第2検出領域41として検出する場合などにおいて、目的地71b−2への方向71b−3の算出を行う。この場合、仮想センサに送られた自己位置情報と地図情報の目的地の情報から仮想センサ情報計算装置54で目的地71b−2への方向71b−3を算出することができる。これに対して、経路計算装置55では、経路算出用として使用するために目的地71b−2への方向71b−3も算出する(ここでは、ロボット51の現在の進行方向と目標(目的地71b−2)との角度差の算出などにも使用する)。仮想センサ情報計算装置54の場合と同様に、自己位置情報と地図情報の目的地の情報からも経路計算装置55で算出することができる。また、自己位置計測装置53により、現在の移動ロボット51の進行方向51b−4を求めるとき、例えばオドメトリと呼ばれる方法で算出することができる。本例の場合は、ロボット51の両車輪の回転速度を積分することで、ロボット51の位置及び方向を算出することができる。
また、旋回速度成分51b−5、及び、直進速度成分は、どちらも、経路計算装置55で求めることができる。ちなみに、各種ゲインなど設定については、パラメータとすることも可能であるが、ここでは、予め必要数値がアルゴリズムに含まれているものとし、説明を簡略化するため、設定装置等については説明を省略する。旋回速度成分については、本明細書に記載しているように、「現在の進行方向」と「目的地の方向」の差を求め(又は、「進行方向」と「移動可能で進入不可な領域を除き目的地方向に最も近い角度)」の差を求め)、
その差に比例ゲインを掛けた大きさを旋回速度成分とする。そうすることで、目的地の方向にロボット51が向くように方向の制御が行われる。また、直線速度成分は、以下のように算出することができる。まず、目的地との距離や障害物との距離に応じて進行速度を設定する。ここで、進行速度であるが、ロボットのモータが継続的に出しうる最大の回転速度時の速度を「最大速度」とすると、目的地付近や障害物が近い場合には、減速を始める距離をXdとして、例えば目的地や障害物の距離をxとすると、距離Xdの間に目的地や障害物が何も無ければその100%の速度を進行速度とする。距離Xdの間に目的地や障害物があれば以下の式で与えられるものとする。
(数2)
[進行速度] = [最高速度] *( 1 − [減速ゲイン] * (Xd − x))
また、直線速度成分であるが、上記の旋回成分が大きい時に大きな直線速度で移動しようとすると、ロボットが遠心力により旋回方向外側に転倒する可能性があるので、以下の式で与えるとする。
(数3)
[直線速度成分] = [進行速度] * ( 1 − [旋回減速ゲイン] * | 旋回速度成分| )
また、最大速度は、前記したように、ロボット51のモータが継続的に出しうる最大の回転速度時の速度を「最大速度」とする。具体的には、本例の場合以下の式で算出することができる。
(数4)
[最大速度] = [車輪の半径] * [モータの継続最大回転数] * [ギア比]
また、最大速度に関する設定は、前記したように経路計算装置55のアルゴリズム内に含まれているものとする。
また、図4Cで示すように、地図データベース52に格納されている地図情報70と自己位置計測装置53で計測された移動ロボット51の自己位置情報とに基づき、ロボット51の進行方向に障害物が存在していると仮想センサ情報計算装置54で判断されている場合で、かつ、障害物検出センサ56や仮想センサの算出情報に障害物40の情報がある場合(図3D〜図3Fのような場合)には、次のような経路を経路計算装置55で算出する。
図4Cで示すように、障害物40c−9が目的地方向やロボット51の近辺に存在する場合、仮想センサの算出情報として算出したロボット51の移動可能角度51c−7の中で、障害物検出センサ56が検出した進入不可領域40c−8を除く角度範囲でかつ、移動ロボット51と目的地71c−2を結ぶ目的地の方向71c−3に最も近い方向に向かうように、旋回速度成分51c−5を直進速度成分に加えることにより移動経路51c−6を経路計算装置55で算出する。また、移動ロボット51から障害物40までの距離に応じて減速させた速度を経路計算装置55で算出する。経路計算装置55で算出された移動速度は、駆動装置61に入力されて、移動ロボット51が駆動される。
なお、旋回速度成分51c−5、及び、直進速度成分は、前記したのと同様に求められる。ただし、旋回速度成分については、本明細書に記載しているが、「現在の進行方向」と「移動可能で進入不可な領域を除き目的地方向に最も近い角度」の差を求め、その差に比例ゲインを掛けた大きさを旋回速度成分とする。
また、直線速度成分は、以下のように算出する。まず、目的地との距離や障害物との距離に応じて進行速度を設定する。ここで、進行速度であるが、ロボットのモータが継続的に出しうる最大の回転速度時の速度を「最大速度」とすると、目的地付近や障害物が近い場合には、減速を始める距離をXdとして、例えば目的地や障害物の距離をxとすると、距離Xdの間に目的地や障害物が何も無ければその100パーセントの速度を進行速度とする。距離Xdの間に目的地や障害物があれば、以下の式で与えられるものとする。
(数5)
[進行速度] = [最高速度] *( 1 − [減速ゲイン] * (Xd− x ) )
また、直線速度成分であるが、上記の旋回成分が大きい時に大きな直線速度で移動しようとすると、ロボット51が遠心力により旋回方向外側に転倒する可能性があるので、以下の式で与えるとする。
(数6)
[直線速度成分] = [進行速度] * ( 1 − [旋回減速ゲイン] * | 旋回速度成分| )
このように、障害物40が移動ロボット51の進行方向にある場合は、移動ロボット51が障害物40の回避を行うような移動経路をとり、障害物40を移動ロボット51が通り過ぎると(言い換えれば、第1、第2の検出領域から障害物が無くなると直ちに)、再び目的地71c−2に向かう経路をとって(図4Bのような算出を行って)目的地71c−2に向かう。
なお、経路計算装置55で算出された移動経路に沿って移動ロボット51が移動するためには、駆動装置61の左右のモータ61aの左右の駆動車輪59の回転速度を次のように制御することで実現する。すなわち、直進速度成分については左右2つの駆動車輪59の平均速度で与え、旋回速度成分については左右2つの駆動車輪59の速度差によって与えるようにすればよい。
また、前記のような構成を持つ移動ロボット51の基本的な処理フローは、以下のように図6A及び図6Bに示すようなものとなる。
仮想センサの第2の検出領域41の設定を移動途中で変更しない移動ロボット51では、図6Aのような基本のフローにより処理を行う。
ステップS1: まず、入力装置39によりロボット51の移動目的地を地図データベース52に入力する。入力により地図情報70上の目的地を更新し、目的地到達まで以降のステップを実行する。なお、移動目的地の入力においては、目的地の座標と到達判定の際に用いる到達条件距離を入力するものとする。
ステップS2: 自己位置計測装置53によりロボット51の自己位置情報73を取得する。
ステップS3: ステップS2で取得された自己位置情報73と地図情報70に基づいて仮想センサの算出情報を仮想センサ情報計算装置54により算出する。
ステップS4: ステップS2で取得されたロボット51の自己位置情報73と地図情報70の目的地の情報とを経路計算装置55により比較して、目的地に到達したか否かを判定する。この時、自己位置(現在位置)の座標と目的地の座標より、移動ロボット51の自己位置(現在位置)から目的地までの距離を経路計算装置55により算出し、その距離がステップS1にて入力された到達条件距離以内であると経路計算装置55により判定すれば、ロボット51は目的地へ到達したものとし、地図情報70より目的地の情報をクリアして、ロボット51の移動を駆動装置61により終了し(ステップS7)、新たな目的地入力(ステップS1)待ちとなる。
ステップS5: もし、目的地に到達していなければ、すなわち、ロボット51の自己位置から目的地までの距離が到達条件距離より大きいと経路計算装置55により判定する場合には、ステップS2,3で算出された情報に基づいてロボット51の移動経路を経路計算装置55で算出する。
ステップS6: ステップS4で算出された移動経路に沿ったロボット51の移動を実現するように、駆動装置61によりロボット51の移動を制御する。ステップS5を実施後は、再びステップS2に戻る。
さらに、障害物検出センサ56と仮想センサ設定変更装置57を用いて、仮想センサの第2の検出領域41の設定を移動途中で変更するような、移動ロボット51では、図6Bのようなフローにより処理を行う。
ステップS11: まず、入力装置39によりロボット51の移動目的地を地図データベース52に入力する。入力により地図情報70上の目的地を更新し、目的地到達まで以降のステップを実行する。なお、移動目的地の入力においては、目的地の座標と到達判定の際に用いる到達条件距離を入力するものとする。
ステップS12: 障害物検出センサ56及び自己位置計測装置53により各種情報を取得する。具体的には、以下のステップS12−1とステップS12−2を行う。
ステップS12−1: 自己位置計測装置53によりロボット51の自己位置情報73を取得する。
ステップS12−2: 障害物検出センサ56により障害物の検出情報を取得する。
ステップS13: ステップS12で取得された情報を基に仮想センサの算出情報の算出条件を設定し、仮想センサの算出情報を仮想センサ情報計算装置54により算出する。具体的には、以下のステップS13−1とステップS13−2とステップS13−3を行う。
ステップS13−1: ステップS12で取得された自己位置情報73や障害物の検出情報、地図データベース52に格納された地図情報70を基に、必要であれば、仮想センサ設定変更装置57により仮想センサの算出情報の算出条件の設定を変更する。
ステップS13−2: ステップS12で取得された自己位置情報73を基に、仮想センサ設定変更装置57に従った算出条件によって、地図データベース52に格納された地図情報70より仮想センサの算出情報を仮想センサ情報計算装置54により算出する。
ステップS13−3: ステップS13−2で算出された仮想センサの算出情報を基に、必要であれば、仮想センサ設定変更装置57により仮想センサの算出情報の算出条件の設定を変更し、変更した仮想センサ設定変更装置57に従った算出条件によって地図データベース52に格納された地図情報70より、再度、仮想センサの算出情報を仮想センサ情報計算装置54により算出する。
ステップS14: ステップS12で取得された自己位置情報73と地図情報70の目的地の情報とを経路計算装置55により比較して、目的地に到達したか否かを判定する。この時、自己位置(現在位置)の座標と目的地の座標より、移動ロボット51の自己位置(現在位置)から目的地までの距離を経路計算装置55により算出し、その距離がステップS11にて入力された到達条件距離以内であると経路計算装置55により判定すれば、ロボット51は目的地へ到達したものとし、地図情報70より目的地の情報をクリアして、ロボット51の移動を駆動装置61により終了し(ステップS17)、新たな目的地入力(ステップS1)待ちとなる。
ステップS15: もし、目的地に到達していなければ、すなわち、ロボット51の自己位置から目的地までの距離が到達条件距離より大きいと経路計算装置55により判定する場合には、ステップS12,S13で取得された情報に基づいてロボット51の移動経路を経路計算装置55で算出する。
ステップS16: ステップS15で算出された移動経路に沿ったロボット51の移動を実現するように、駆動装置61によりロボット51の移動を制御する。ステップS16を実施後は、再びステップS12に戻る。
以上のような、移動ロボット51とすれば、仮想センサの第2の検出領域41の設定を移動途中で変更しない基本的なフローにおいても、実際の障害物検出センサ56ではセンサの物理的な特性によって検出できないような、長距離で広範囲な障害物の検出を仮想センサの第2の検出領域41で行うことができ、例えば、行き止まりの通路を事前に仮想センサの第2の検出領域41で検出することができるようになり、事前に回避することができるため、誤って行き止まりの通路に入り込み非効率な移動を行ったり、デッドロックに陥ることを防ぐことができる。また、経路算出における計算量においても仮想的センサ算出時の計算量は、(仮想センサの第2の検出領域41の検出面積の検索計算=検出面積/精度)に比例となるため、最悪の場合でも、移動範囲全面を検出領域にとっても、(検出面積/精度)の2乗に比例する従来例2に比べて、非常に小さい計算量で算出が可能となる。従って、障害物が存在する環境下にある移動ロボットにおいて、リアルタイムにかつ効率的な目的地への移動を実現することができる。
本発明では、仮想センサを設定することができるため、特に実際のセンサの物理的な検出特性に縛られることなく自由に特性(例えば検出領域の大きさや方向など)を設定することができるため、例えば、障害物の裏側や離れた個所の検索を行ったり、前記の例で挙げたように地図データベース52の地図情報70に基づいて障害物の形状を認識したり、その周囲を検出するなど実際のセンサには検出不可能な情報も取得することができる。さらに、実際のセンサを搭載する際に起こりうる、検出精度と検出領域の問題、センサ数や取付けに関する問題、センサ間の干渉の問題、周囲環境の影響の問題なども考える必要が無くなる。
また、仮想センサに、実際のセンサである障害物検出センサ56を組合わせることで、地図データベース52に登録されていない未知の障害物、及び、移動する障害物を障害物検出センサ56で検出することができて、これらの未知の障害物、及び、移動する障害物への対応が可能となる。そして、実際の障害物検出センサ56によって検出された障害物を地図データベース52の地図情報に地図登録装置69(図1H参照)により登録するようにしてもよく、このようにすれば、地図データベース52を更新することでより正確な仮想センサの算出情報を算出することが可能となる。
また、仮想センサ設定変更装置57を搭載することでロボットや周囲の状態に応じた算出設定を変更を行うことができるため、障害物が少ない個所では検出領域を小さく精度を粗く設定することができ、必要な場合だけ検出領域を増やしたり精度を上げることで全体の計算量を抑えながら、高精度の検出を実現することができる。精度や検出領域だけでなく、必要に応じて特性を変える事もが可能となり、例えば、算出設定を切り替えるだけで複数のセンサの機能を兼ねることも可能となる。
ここで、本発明の最適な仮想センサの設定方法であるが、前記例に挙げたようにロボットの移動特性及び障害物の特性に合わせて、必要最小限の検出領域と精度とするのが良い。検出領域は小さく、検出精度は粗いほど計算量が少なくなり、計算装置などの処理装置への負担が小さくなる。さらに、検出領域だけではなく、検出特性についても必要に応じて最適なものを設定すれば良い。
ここで、検出特性とは、仮想センサにより、情報として「抽出(検出)できるもの」を意味し、例えば、以下のようなものがある。
(1)仮想センサの第2の検出領域内の障害物の有無の情報。最も近い障害物の位置や方向の情報。
これは、仮想センサの、実際のセンサ的な使い方を可能とするものである。
(2)通路の通行の可否判定の情報。
仮想センサにより、袋小路や迷路でロボットが通行できるか否かの判定情報。
(ロボットの移動経路が続く方向に、第2の検出領域を順次伸ばして行き、通路の出口に達するか否かを検出する。)
(3)障害物の種類(例えば、重さや材質など)の情報。
地図データベース52に、障害物の位置や形状と同様に、障害物のプロパティとして登録すればよい。
軽い障害物であれば、ロボットにより押しのけるという選択ができる。
また、障害物が脆い材質なら、慎重にロボットがよける判断材料にもなる。
また、障害物検出センサ56と仮想センサとが組み合わさった場合は、実際の障害物検出センサ56と仮想センサのお互いの長所をそれぞれ生かした役割分担を行うことができる。例えば、前記例にあるように実際の障害物検出センサ56は、最終的な安全確保のためのロボット51の周辺の検出領域と、未知の障害物に対する事前回避のためにロボット51の前方へのロングレンジの検出に用い、仮想センサではロボット51の移動状況に伴ったロボット51の移動経路上の障害物の検出や障害物検出時に障害物の周辺の詳細な情報収集など実際のセンサでは検出困難な領域を検出するのが良い。
また、最適な移動経路の算出方法であるが、これは、実際の障害物検出センサ56の情報に基づく経路計算方法をそのまま用いるのが良い。仮想センサの算出情報自体、実際の障害物検出センサ56と同じ情報内容となっていて区別する必要性が無いことと、逆に実際の障害物検出センサ56の代わりに仮想的なセンサを用いて開発していて、目的となる仕様のセンサが市販などにより入手できたときに、仮想的なセンサ(例えば図5の仮想センサ計算装置54と変換装置50とより構成される、置換可能な仮想的なセンサ56z)の実際のセンサへの置き換え(図5の矢印参照)が容易に行うことができるからである。
その特性を利用して、さらに図5のように仮想センサの算出情報を障害物検出センサ56が実際に障害物を検出したときの出力信号と同じ信号、例えば、同じ種類の信号、に変換する変換装置50を具備させても良い。この場合、変換装置50により、仮想センサの出力信号を実際の障害物検出センサ56の出力信号と同様にすることができるため、例えば、仮想センサにおける検出領域の設定などを変更することで、実際にセンサを追加したり、その実際のセンサの設置位置を変更したりすることなく、センサを追加したり、その設置位置を変更したりした場合の効果を検証することができる。また、逆に、実際の障害物検出センサ56の代わりに仮想センサを用いることも容易にできる。これにより、実験段階や調整中の移動ロボットにおいても、実際にセンサを追加したりその設置位置を変更したりすることなく、センサを追加などをした場合の効果を検証することができる。
ここで、仮想センサとの比較において、実際の障害物検出センサの代表的な例としては、以下のようなものが挙げられる。
(1) 領域の障害物の有無を判定するセンサ(例:エリアセンサなど)。
(2) 障害物までの距離を検出するセンサ(例:超音波センサ、レーザーセンサなど)。
(3) ある角度範囲における障害物の有無や距離情報を検出するセンサ(例:光電センサ、レーザースキャナ)。
図5の本例で挙げられた仮想センサは、前記(3)のバリエーションとして機能するものである。例えば、仮想センサを、障害物が無い角度領域を検出するセンサとして使用するようにすれば、ロボットの移動可能な角度範囲の検出と同義となる。実際のセンサについては、単に物理的に値を検出するだけでなく、その値を、ある程度センサ内で意味ある形に計算して、出力を行うものも、センサとして考えることができる。例えば、前記(3)のスキャニングを行うセンサや、ステレオカメラを使った距離センサなどが、これに該当する。
すなわち、センサの物理的なデバイスにより検出された情報を基に得られた、検出情報が、センサによる「検出情報」と言うことができる。
一方、仮想センサの「算出情報」とは、「地図データベースに蓄積されている情報から抽出される情報」である。実際のセンサには、実際のセンサ自体の物理的制限が加わるのに対し、仮想センサであれば、地図データベースに情報さえあれば、何でも抽出することができ、逆に、必要となるデータをデータベースに登録しておけば良いので、検出できる情報に制限が無く、結果的に、仮想センサの「算出情報」は、実際のセンサの「検出情報」の内容を包含するものとなる。
前述したように、仮想センサ設定変更装置57によって、前記地図データベース52に格納された地図情報と、前記自己位置計測装置53により計測された自己位置情報73と、前記仮想センサ情報計算装置54により算出された仮想センサの算出情報と、前記障害物センサ56の検出情報と、前記経路計算装置55により算出された移動経路に基づいて仮想センサの算出情報を算出するための算出条件を変更する例について、以下に、より具体的に例示する。
まず、地図情報に基づいて、仮想センサ設定変更装置57により算出条件を変更する場合について説明する。図3Aを通常の第2の検出領域41であるとするとき、図12Aに示されるように、地図データベース52に蓄積された地図情報中で障害物が多い領域IIIにロボット51が進入しかけたとき(ロボット51のIの状態)、仮想センサ設定変更装置57により算出条件を、通常の第2の検出領域41s−1の設定状態(図12B)から、障害物が多い領域用の第2の検出領域41s−2の設定状態(図12C)に変更する。通常の第2の検出領域41s−1の設定状態は、図12Bに示されるように、ロボット51の前方の領域のみで障害物の検出を行う。これに対して、障害物が多い領域用の第2の検出領域41s−2の設定状態は、図12Cに示されるように、ロボット51の前方の領域のみならず、ロボット51の周囲言い換えれば全方位に、現在の安全停止可能な距離(速度停止までに進む距離)を設定して、その設定された領域で障害物の検出を行う。一方、地図情報中で障害物が多い領域IIIからロボット51が出かけたとき(ロボット51のIIの状態)、仮想センサ設定変更装置57により算出条件を、障害物が多い領域用の第2の検出領域41s−2の設定状態(図12C)から、通常の第2の検出領域41s−1の設定状態(図12B)に戻すように変更する。
次に、自己位置情報(例えば速度情報)に基づいて、仮想センサ設定変更装置57により算出条件を変更する場合について説明する。図3Aを通常の第2の検出領域41であるとするとき、ロボット51の移動速度が閾値以上になったとき、仮想センサ設定変更装置57により算出条件を、遅い速度用の第2の検出領域41s−3の設定状態(図13A)から、速い速度用の第2の検出領域41s−4の設定状態(図13B)に変更する。遅い速度用の第2の検出領域41s−3の設定状態は、図12Bの通常の第2の検出領域41s−1の設定状態と同様である。これに対して、速い速度用の第2の検出領域41s−4の設定状態は、図13Bに示されるように、ロボット51の前方に、ロボット51が現在の速度で安全停止可能な距離(速度停止までに進む距離)を設定して、その設定された領域で障害物の検出を行う。一方、ロボット51の移動速度が閾値未満になったとき、仮想センサ設定変更装置57により算出条件を、速い速度用の第2の検出領域41s−4の設定状態(図13B)から、遅い速度用の第2の検出領域41s−3の設定状態(図13A)に戻すように変更する。
次に、仮想センサの算出情報に基づいて、仮想センサ設定変更装置57により算出条件を変更する場合については、既に前述したように、仮想センサが障害物を検出した(第2の検出領域41に障害物が存在した)とき、仮想センサ設定変更装置57により算出条件を、通常の第2の検出領域41gの設定状態(図3A)から、追加領域41hを含む、障害物検出後用の第2の検出領域41の設定状態(図3B)に変更する。一方、仮想センサが障害物を検出しなくなった(第2の検出領域41に障害物が無くなった)とき、追加領域41hを含む、障害物検出後用の第2の検出領域41の設定状態(図3B)から、通常の第2の検出領域41gの設定状態(図3A)に戻すように変更する。
次に、移動経路に基づいて、仮想センサ設定変更装置57により算出条件を変更する場合については、図3Bに示されるように、ロボット51の移動経路に沿って、ロボット51に移動停止指令を出してロボット51が停止するまでに進む距離(速度に依存した距離)の長さにより、ロボット51の旋回時に、通常の第2の検出領域41gの設定状態(図3A)から、ロボット51が描く円軌道が通る幅(回転半径42の2倍以上)を含む検出領域に変更する。ロボット51の旋回動作が終了すると、ロボット51が描く円軌道が通る幅(回転半径42の2倍以上)を含む検出領域から、通常の第2の検出領域41gの設定状態(図3A)に戻すように変更する。
さらに、障害物検出センサ56の検出情報に基づいて、仮想センサ設定変更装置57により算出条件を変更する場合について説明する。図14Aは通常の設定領域であって、障害物検出センサ56の第1の検出領域56sと仮想センサの第2の検出領域41とが設定されている。図14Bに示されるように、障害物検出センサ56の第1の検出領域56sで障害物40が検出されたとき、仮想センサ設定変更装置57により算出条件を、図14Aは通常の設定領域から、図14Cに示されるように、ロボット51の前方の領域のみならず、ロボット51の周囲言い換えれば全方位に、現在の安全停止可能な距離(速度停止までに進む距離)を仮想センサとして追加設定して、その追加設定された領域と第1の検出領域56sとが合わさった検出領域56tと、第2の検出領域41とで、障害物の検出を行う。一方、図14Dに示すように、追加設定された領域と第1の検出領域56sとが合わさった検出領域56tで障害物40が検出されなくなったとき、仮想センサ設定変更装置57により算出条件を、図14Eに示すように、通常の設定領域に戻すように変更する。
なお、本実施形態では、補助車輪付きの独立駆動2輪型の移動ロボットを想定したが、その他の移動機構を採用しても良い。例えば、自動車のような舵によって曲がる移動機構でも良いし、車輪を用いない足型の移動機構でも良い、さらに海上を移動する船舶型の移動ロボットにも適応しても良い。その場合は、個々の移動機構の特性に合わせた仮想センサの設定や、移動経路の算出方法を採用すれば良い。また、本実施形態では二次元の平面での移動を想定しているが3次元空間の移動に適応しても良い。この場合も、仮想センサの検出領域は3次元的に設定するだけで容易に適応できる。従って、本発明の技術は、飛行船や飛行機のような飛行体や、マニピュレータの先端部の移動にも適応することができる。
なお、前記様々な実施形態及びより具体的な例のうちの任意の実施形態及びより具体的な例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
本発明の移動ロボットは、障害物が存在する環境下にある移動ロボットにおいて、リアルタイムにかつ効率的な目的地への移動を実現することができるため、工場や、駅、空港等の公共の場で自立的に作業を行うロボットや、家庭用ロボットなどにも適応することができる。
本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形や修正は明白である。そのような変形や修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
図1Aは、本発明の1つの実施形態の移動ロボットの構成を示す図である。 図1Bは、実際の移動ロボットとそのセンサの検出領域を示す図である。 図1Cは、マップ上における移動ロボットとその仮想センサの検出領域を示す図である。 図1Dは、図1Aに示す移動ロボットが算出する回避経路を示す図である。 図1Eは、図1Aに示す移動ロボットとは異なる移動ロボットの構成を示す図である。 図1Fは、本発明の上記実施形態の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図1Gは、本発明の上記実施形態の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図1Hは、本発明の上記実施形態の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図1Iは、本発明の上記実施形態の変形例であって、仮想センサ設定変更装置が無い移動ロボットの概略を示すブロック図である。 図2は、障害物検出センサの検出領域とその検出値を示す図である。 図3Aは、1つの形態における移動ロボットにおける仮想センサ(詳細は後述)の検出領域を示す図である。 図3Bは、別の形態における移動ロボットにおける仮想センサ(詳細は後述)の検出領域を示す図である。 図3Cは、障害物が無い場合の仮想センサの算出情報を示す図である。 図3Dは、通路上に障害物が存在する場合の仮想センサの算出情報を示す図である。 図3Eは、一般的な障害物が存在する場合の仮想センサの算出情報を示す図である。 図3Fは、通り抜けができない障害物が存在する場合の仮想センサの算出情報を示す図である。 図4Aは、地図データベースに格納された地図情報を示す図である。 図4Bは、障害物が無い場合の経路算出方法を示す図である。 図4Cは、障害物が存在する場合の経路算出方法を示す図である。 図5は、信号変換装置の効果を示す図である。 図6Aは、基本の移動ロボットの処理フローを示す図である。 図6Bは、障害物センサや仮想センサ設定変更装置を用いる場合の移動ロボットの処理フローを示す図である。 図7Aは、従来例1の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図7Bは、従来例1の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図7Cは、従来例1の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図8Aは、図7A、図7B、図7Cに示した移動ロボットの移動経路の決定方法を示す図である。 図8Bは、図7A、図7B、図7Cに示した移動ロボットの移動経路の決定方法を示す図である。 図9は、従来例1の移動ロボットが非効率な移動や、デッドロック状態に陥る場合を示す図である。 図10Aは、従来例2の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図10Bは、従来例2の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図10Cは、従来例2の移動ロボットの概略を示す斜視図、及び、透視平面図、ブロック図である。 図11は、図10A、図10B、図10Cに示した移動ロボットにおける移動経路の決定方法を示す図である。 図12Aは、地図情報に基づいて、仮想センサ設定変更装置により算出条件を変更する例を説明するための説明図である。 図12Bは、通常の第2の検出領域の設定状態を説明するための説明図である。 図12Cは、障害物が多い領域用の第2の検出領域の設定状態を説明するための説明図である。 図13Aは、遅い速度用の第2の検出領域の設定状態を説明するための説明図である。 図13Bは、速い速度用の第2の検出領域41s−4の設定状態を説明するための説明図である。 図14Aは、通常の設定領域であって、障害物検出センサの第1の検出領域と仮想センサの第2の検出領域とが設定されている状態を説明するための説明図である。 図14Bは、障害物検出センサの第1の検出領域で障害物が検出されたときの状態を説明するための説明図である。 図14Cは、ロボットの前方の領域のみならず、ロボットの周囲言い換えれば全方位に、現在の安全停止可能な距離(速度停止までに進む距離)を仮想センサとして追加設定して、その追加設定された領域と第1の検出領域とが合わさった検出領域と、第2の検出領域とで、障害物の検出を行う状態を説明するための説明図である。 図14Dは、追加設定された領域と第1の検出領域とが合わさった検出領域で障害物が検出されなくなったときの状態を説明するための説明図である。 図14Eは、通常の設定領域に戻した状態を説明するための説明図である。
符号の説明
2,51a…本体部、3,56s…第1の検出領域、4,56…障害物検出センサ、5,53…自己位置計測装置、6,55…経路計算装置、7,61…駆動装置、8,71b−2…目的地、9…障害物、11,52…地図データベース、12…メモリ領域、13…マップ、16…障害物、16a…開口部、16b…行き止まり部、20,20B,51…移動ロボット、21,41g…第2の検出領域、22…障害物認識装置、23…障害物、24…変換装置、38…出力装置、39…入力装置、40a−6…進入不可領域、
40d−4,40e−4…距離、40d−5…通行可能な通路、40d−6,40d−7,40e−6,40f−6…障害物、40e−3…角度方向、40f−7…行き止まり、40f−5…通路状、41s−1,41s−2,41s−3,41s−4…第2の検出領域、40G…障害物、40G−1…窪みの深さ、41h…追加領域、42…回転半径、51b−4…進行方向、51b−5…旋回速度成分、51b−6…移動経路、54…仮想センサ情報計算装置、56t,64s,65s…検出領域、57…仮想センサ設定変更装置、62…エンコーダ、63…オドメトリ計算装置、64…光電センサ、65…超音波センサ、70…地図情報、71b−3…方向、73…自己位置情報。

Claims (5)

  1. 移動可能なロボット本体部と、
    前記本体部の自己位置を計測する自己位置計測装置と、
    前記本体部の移動範囲の地図情報を格納する地図データベースと、
    前記自己位置計測装置により計測された自己位置情報と、前記地図データベースに格納された前記地図情報とに基づいて、前記地図情報上に設定されかつ前記本体部の移動に対して障害物となる障害物情報を検出可能な仮想センサの検出領域において前記障害物情報を抽出する障害物情報抽出部と、
    前記障害物情報抽出部により抽出された前記障害物情報に基づいて、前記本体部が移動するための移動経路を算出する経路計算装置と、
    を備える移動ロボット。
  2. 前記本体部の周囲の検出領域における障害物を検出する障害物検出センサをさらに有し、前記経路計算装置が、前記障害物情報抽出部により抽出された前記障害物情報に加えて、前記障害物検出センサからの検出情報に基づいて前記本体部が移動するための移動経路を算出する請求項1に記載の移動ロボット。
  3. 前記障害物情報抽出部より抽出される前記障害物情報を、前記障害物検出センサが前記検出情報を前記経路計算装置に出力する信号と同じ信号に変換して前記経路計算装置に出力する変換装置をさらに備える請求項2に記載の移動ロボット。
  4. 前記障害物情報抽出部が前記障害物情報を抽出するための抽出条件を設定変更する仮想センサ設定変更装置をさらに備える請求項1〜3のいずれか1つに記載の移動ロボット。
  5. 前記仮想センサ設定変更装置が、前記地図データベースに格納された前記地図情報と、前記自己位置計測装置により計測された前記自己位置情報と、前記障害物情報抽出部により抽出された前記障害物情報と、前記障害物検出センサの検出情報と、前記経路計算装置により算出された移動経路との少なくとも1つに基づいて前記障害物情報抽出部が前記障害物情報を抽出するため抽出条件を変更する請求項4に記載の移動ロボット。
JP2005262334A 2004-09-13 2005-09-09 移動ロボット Expired - Fee Related JP4464893B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005262334A JP4464893B2 (ja) 2004-09-13 2005-09-09 移動ロボット

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004264769 2004-09-13
JP2005262334A JP4464893B2 (ja) 2004-09-13 2005-09-09 移動ロボット

Publications (2)

Publication Number Publication Date
JP2006107475A true JP2006107475A (ja) 2006-04-20
JP4464893B2 JP4464893B2 (ja) 2010-05-19

Family

ID=36377046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005262334A Expired - Fee Related JP4464893B2 (ja) 2004-09-13 2005-09-09 移動ロボット

Country Status (1)

Country Link
JP (1) JP4464893B2 (ja)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009175932A (ja) * 2008-01-23 2009-08-06 Ihi Corp 移動ロボットの走行領域判別装置及び走行領域判別方法
WO2010026710A1 (ja) * 2008-09-03 2010-03-11 村田機械株式会社 経路計画方法、経路計画装置、及び自律移動装置
JP2010061442A (ja) * 2008-09-04 2010-03-18 Murata Machinery Ltd 自律移動装置
JP2010117847A (ja) * 2008-11-12 2010-05-27 Toyota Motor Corp 移動体、移動体制御システム及び移動体の制御方法
JP2010205228A (ja) * 2009-03-06 2010-09-16 Toyota Motor Corp 移動軌跡生成装置
US7844398B2 (en) 2008-07-09 2010-11-30 Panasonic Corporation Path risk evaluating apparatus
JP2011128899A (ja) * 2009-12-17 2011-06-30 Murata Machinery Ltd 自律移動装置
JP2011150512A (ja) * 2010-01-21 2011-08-04 Ihi Aerospace Co Ltd 無人移動体の制御方法及び無人移動体
KR101341602B1 (ko) 2012-03-19 2013-12-16 노틸러스효성 주식회사 이동식 로봇의 전역경로 최적화 방법
JP2014209293A (ja) * 2013-04-16 2014-11-06 富士ゼロックス株式会社 経路探索装置、自走式作業装置、プログラム及び記録媒体
JP2017126367A (ja) * 2010-12-30 2017-07-20 アイロボット コーポレイション カバレッジロボットナビゲーション
JP2017151499A (ja) * 2016-02-22 2017-08-31 株式会社Ihi 障害物回避方法および装置
KR101804184B1 (ko) * 2015-10-20 2017-12-05 한국해양과학기술원 드론을 이용한 연안지형 조사장치
JP2018120482A (ja) * 2017-01-26 2018-08-02 パナソニック株式会社 ロボットおよびその制御方法
CN110750092A (zh) * 2018-07-06 2020-02-04 松下知识产权经营株式会社 移动机器人以及控制方法
CN111714028A (zh) * 2019-03-18 2020-09-29 北京奇虎科技有限公司 清扫设备的禁区脱困方法、装置、设备及可读存储介质
US10930162B2 (en) 2016-06-13 2021-02-23 SZ DJI Technology Co., Ltd. Unmanned aerial vehicle, delivery system, control method for unmanned aerial vehicle, and program for controlling unmanned aerial vehicle
WO2021249460A1 (zh) * 2020-06-10 2021-12-16 北京卫星制造厂有限公司 一种可移动机器人智能控制系统
US11548529B2 (en) 2019-03-28 2023-01-10 Nec Corporation Control method, control device, and recording medium

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009175932A (ja) * 2008-01-23 2009-08-06 Ihi Corp 移動ロボットの走行領域判別装置及び走行領域判別方法
US7844398B2 (en) 2008-07-09 2010-11-30 Panasonic Corporation Path risk evaluating apparatus
KR101228485B1 (ko) * 2008-09-03 2013-01-31 무라다기카이가부시끼가이샤 경로 계획 방법, 경로 계획 장치, 및 자율 이동 장치
WO2010026710A1 (ja) * 2008-09-03 2010-03-11 村田機械株式会社 経路計画方法、経路計画装置、及び自律移動装置
KR101307299B1 (ko) * 2008-09-03 2013-09-11 무라다기카이가부시끼가이샤 자율 이동 장치
US8515612B2 (en) 2008-09-03 2013-08-20 Murata Machinery, Ltd. Route planning method, route planning device and autonomous mobile device
KR101262778B1 (ko) 2008-09-03 2013-05-09 무라다기카이가부시끼가이샤 경로 계획 장치, 및 자율 이동 장치
JP2010061442A (ja) * 2008-09-04 2010-03-18 Murata Machinery Ltd 自律移動装置
JP2010117847A (ja) * 2008-11-12 2010-05-27 Toyota Motor Corp 移動体、移動体制御システム及び移動体の制御方法
JP2010205228A (ja) * 2009-03-06 2010-09-16 Toyota Motor Corp 移動軌跡生成装置
JP2011128899A (ja) * 2009-12-17 2011-06-30 Murata Machinery Ltd 自律移動装置
US8897947B2 (en) 2009-12-17 2014-11-25 Murata Machinery, Ltd. Autonomous mobile device
JP2011150512A (ja) * 2010-01-21 2011-08-04 Ihi Aerospace Co Ltd 無人移動体の制御方法及び無人移動体
JP2017126367A (ja) * 2010-12-30 2017-07-20 アイロボット コーポレイション カバレッジロボットナビゲーション
US11157015B2 (en) 2010-12-30 2021-10-26 Irobot Corporation Coverage robot navigating
KR101341602B1 (ko) 2012-03-19 2013-12-16 노틸러스효성 주식회사 이동식 로봇의 전역경로 최적화 방법
JP2014209293A (ja) * 2013-04-16 2014-11-06 富士ゼロックス株式会社 経路探索装置、自走式作業装置、プログラム及び記録媒体
KR101804184B1 (ko) * 2015-10-20 2017-12-05 한국해양과학기술원 드론을 이용한 연안지형 조사장치
JP2017151499A (ja) * 2016-02-22 2017-08-31 株式会社Ihi 障害物回避方法および装置
US10930162B2 (en) 2016-06-13 2021-02-23 SZ DJI Technology Co., Ltd. Unmanned aerial vehicle, delivery system, control method for unmanned aerial vehicle, and program for controlling unmanned aerial vehicle
JP2018120482A (ja) * 2017-01-26 2018-08-02 パナソニック株式会社 ロボットおよびその制御方法
CN110750092A (zh) * 2018-07-06 2020-02-04 松下知识产权经营株式会社 移动机器人以及控制方法
CN111714028A (zh) * 2019-03-18 2020-09-29 北京奇虎科技有限公司 清扫设备的禁区脱困方法、装置、设备及可读存储介质
US11548529B2 (en) 2019-03-28 2023-01-10 Nec Corporation Control method, control device, and recording medium
WO2021249460A1 (zh) * 2020-06-10 2021-12-16 北京卫星制造厂有限公司 一种可移动机器人智能控制系统

Also Published As

Publication number Publication date
JP4464893B2 (ja) 2010-05-19

Similar Documents

Publication Publication Date Title
JP4464893B2 (ja) 移動ロボット
JP5112666B2 (ja) 移動装置
JP2761454B2 (ja) 自律移動機械の誘導方法
JP4699426B2 (ja) 障害物回避方法と障害物回避移動装置
US20060058921A1 (en) Mobile robot
JP5782708B2 (ja) 走行支援装置
KR101374616B1 (ko) 자율 이동체와 그 제어 방법
KR102018832B1 (ko) 자율주행 카트
JP4682973B2 (ja) 移動経路作成方法、自律移動体および自律移動体制御システム
KR100520049B1 (ko) 자율이동로봇을 위한 경로계획방법
CN109643128B (zh) 移动体及移动体的控制方法
JP5085251B2 (ja) 自律移動装置
JP2011054082A (ja) 自律移動装置
JP6094279B2 (ja) 追跡装置、追跡プログラムおよび追跡方法
CN107421538B (zh) 导航系统及导航方法
JP2021503334A5 (ja)
Song et al. Reactive navigation in dynamic environment using a multisensor predictor
JP2021503334A (ja) 自律移動ロボットによる床の処理
JP2020004095A (ja) 自律移動体制御装置及び自律移動体
JP2013225253A (ja) 自律移動装置、自律移動方法及び自律移動装置用のプログラム
JP2019053391A (ja) 移動体
JP2012014265A (ja) 移動体
Kenk et al. Human-aware Robot Navigation in Logistics Warehouses.
JP5314788B2 (ja) 自律移動装置
Morales et al. Safe and reliable navigation in crowded unstructured pedestrian areas

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20061208

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090917

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100126

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100219

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4464893

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140226

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees