JP6079415B2 - 自律移動体 - Google Patents

自律移動体 Download PDF

Info

Publication number
JP6079415B2
JP6079415B2 JP2013096340A JP2013096340A JP6079415B2 JP 6079415 B2 JP6079415 B2 JP 6079415B2 JP 2013096340 A JP2013096340 A JP 2013096340A JP 2013096340 A JP2013096340 A JP 2013096340A JP 6079415 B2 JP6079415 B2 JP 6079415B2
Authority
JP
Japan
Prior art keywords
obstacle
travel
unit
control unit
self
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.)
Active
Application number
JP2013096340A
Other languages
English (en)
Other versions
JP2014219723A (ja
Inventor
中野 剛
剛 中野
昌司 田中
昌司 田中
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.)
Murata Machinery Ltd
Original Assignee
Murata Machinery 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 Murata Machinery Ltd filed Critical Murata Machinery Ltd
Priority to JP2013096340A priority Critical patent/JP6079415B2/ja
Publication of JP2014219723A publication Critical patent/JP2014219723A/ja
Application granted granted Critical
Publication of JP6079415B2 publication Critical patent/JP6079415B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Engineering & Computer Science (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)

Description

本発明は、環境地図作成機能、経路計画機能、及び自律走行機能を有する自律移動体に関する。
従来から、超音波センサ、赤外線センサ、バンパーセンサなどのセンサにより周囲の障害物を検知し、障害物との接触を避けながらランダムに走行する自律移動体が提案されている。例えば、特許文献1には、自律移動体として、本体から壁面などの障害物までの距離を計測して、本体の姿勢を制御しながら自律走行する自走式掃除機が開示されている。
特許文献1に記載されているような自走式掃除機において、ランダムに走行する方式を適用した場合、清掃が必要であるにも関わらず自律移動体が到達しない空間が生じたり、清掃が不要な空間を通過したり、あるいは同じ空間を複数回通過するという不都合が生じる。
また、操作者の手動操作により走行経路を手動走行させながら、走行経路上の通過点又は操作内容を記憶させる教示走行モードを設け、この教示走行モードで記憶された走行経路と操作内容を自律的に再現する再現走行モードを実行する場合には、前述したような不都合を解消することができる。
しかしながら、このような自律移動体は、再現走行モードを行う際に、障害物との接触を避けるためには、進行方向の障害物との距離が所定距離以下になった場合に、走行停止の制御を行う必要がある。
上記の場合、教示走行モードで記憶された走行経路のうち、壁面などの障害物に接近し過ぎた通過点がある場合には、その地点で走行停止状態となることから、自律移動体の走行スケジュールを完了できないという問題がある。
特開平01−106204号公報
本発明の課題は、自律移動体において、教示走行モードにおいて適切な走行スケジュールを設定し、それにより再現走行モードにおいて走行スケジュールに沿った自律走行を完了できるようにすることにある。
以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
本発明の一見地による自律移動体は、操作者の手動操作により、走行経路を手動走行させながら、通過時刻と通過時刻における通過点データの集合でなる走行スケジュールを作成する教示走行モードと、走行スケジュールを再現しながら、走行経路を自律的に走行する再現走行モードとを実行する。
自律移動体は、本体と、走行部と、走行制御部と、障害物情報取得部と、記憶部と、自己位置推定部と、教示データ作成部と、走行命令生成部と、通知部とを備えている。
走行部は、制御量が入力される複数のアクチュエータを有する。走行制御部は、アクチュエータに入力する制御量を作成し走行部に入力する。障害物情報取得部は、本体の周囲に存在する障害物の位置情報を取得する。記憶部は、走行経路に対応する環境地図を記憶する。自己位置推定部は、環境地図上における自己位置を推定する。教示データ作成部は、教示走行モードにおいて、自己位置推定部により推定される環境地図上の自己位置を、その通過時刻と対応させた通過点データとして走行スケジュールを作成する。走行命令生成部は、再現走行モードにおいて、走行スケジュールに沿って走行するように走行命令を生成するとともに、障害物情報取得部により取得した障害物の位置情報に基づいて進行方向に障害物が存在する場合に減速又は停止の走行命令を生成し、走行制御部に入力する。通知部は、教示走行モードにおいて、障害物情報取得部より取得した障害物の位置情報に基づいて、本体と障害物との距離が所定値以下である場合に、障害物に接近している旨の通知を行う。通知のレベルは、本体と障害物との距離の接近度合いに応じて多段階とすることができる。
この自律移動体では、教示走行モードにおいて、自律移動体の本体と障害物との距離が所定距離以下になると、通知部を介して操作者に通知を行う。このことにより、教示走行モードにおいて作成される走行スケジュールは、自律移動体の本体と障害物との距離が所定距離以下になる箇所を含みにくい。したがって、再現走行モードにおいて、走行スケジュールの途中で減速又は停止することが減る。
通知部は、本体と障害物との距離が所定値以下である場合に、アラーム音を発生させるスピーカとしてもよい。
この場合、アラーム音により、障害物との距離が接近していることを操作者に通知して、通過点を適切な位置に変更することを促すことができる。
通知部は、本体と障害物との距離が所定値以下である場合に、障害物が接近している旨の表示を行う表示装置としてもよい。
表示装置は、例えば、液晶ディスプレイ、LEDランプ、その他のディスプレイ装置とすることができ、スピーカのアラーム音と併用して、操作者に通知を行うことが可能である。
本発明に係る自律移動体では、教示走行モードにおいて適切な走行スケジュールを設定できる。また、再現走行モードにおいて走行スケジュールに沿った自律走行を完了できる。
一実施形態による自律移動体の概略構成を示すブロック図。 清掃用ロボットの制御ブロック図。 自律移動体の制御動作の概略を示す制御フローチャート。 教示走行モードにおける自律移動体の制御フローチャート。 レーザレンジセンサの走査範囲の一例を示す説明図。 レーザレンジセンサの走査範囲の他の例を示す説明図。 レーザレンジセンサにより検出した障害物の位置情報の一例を示すテーブル。 センサを中心とした座標系でのローカルマップの説明図。 自己位置推定処理の制御フローチャート。 事後確率分布の一例を示す説明図。 事前確率分布の一例を示す説明図。 尤度計算処理の制御フローチャート。 尤度計算処理により得られた尤度分布の一例を示す説明図。 事後確率計算処理により得られた事後確率分布の一例を示す説明図。 グローバルマップ更新処理の概念構成を示す説明図。 再現走行モードにおける自律移動体の制御フローチャート。 動的環境地図の更新処理の説明図。 自己位置推定時における尤度計算の説明図。
(1)概略構成
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、各図において、同一要素には同一符号を付して重複する説明を省略する。
図1は、本発明の一実施形態による自律移動体の概略構成を示すブロック図である。
自律移動体1は、制御部11、測距センサ31、操作部32、通知部33、走行部27を備えている。
測距センサ31は、自律移動体1の走行方向前側にある障害物を検出するセンサである。測距センサ31は、例えば、レーザ発振器によりパルス発振されたレーザ光を目標物に照射し、目標物から反射した反射光をレーザ受信器により受信することにより、目標物までの距離を算出するレーザレンジファインダ(LRF:Laser Range Finder)である。測距センサ31は、照射するレーザ光を回転ミラーを用いて所定の角度で扇状にレーザ光を操作することができる。このような測距センサ31は、自律移動体1の後方にも配置することができる。
操作部32は、自律移動体1を手動操作により走行させる際に、操作者が操作するユーザインターフェイスであって、走行速度の指示を受け付けるスロットル、走行方向の指示を受け付けるハンドルなどを備える。
通知部33は、現在の走行状況に関する情報、その他の各種情報を表示するものであって、液晶ディスプレイ、LEDランプ、スピーカなどで構成される。
走行部27は、走行経路を走行するための複数の走行車輪(図示せず)を備え、これら走行車輪を駆動するためのアクチュエータとしての複数の走行モータ(図示せず)を備えている。
制御部11は、CPU、RAM、ROMを備えるコンピュータであり、所定のプログラムを実行することで走行制御を行う。
制御部11は、障害物情報取得部21、記憶部22、自己位置推定部23、教示データ作成部24、走行命令生成部25、走行制御部26を備える。
障害物情報取得部21は、測距センサ31の検出信号に基づいて、本体1a(図5及び図6を参照)の周囲に存在する障害物の位置情報を取得する。記憶部22は、走行経路に対応する環境地図を記憶する。自己位置推定部23は、環境地図上における自己位置を推定する。
教示データ作成部24は、教示走行モードにおいて、自己位置推定部23により推定される環境地図上の自己位置を、その通過時刻と対応させた通過点データとして走行スケジュールを作成する。
走行命令生成部25は、再現走行モードにおいて、走行スケジュールに沿って走行するように走行命令を生成するとともに、障害物情報取得部21により取得した障害物の位置情報に基づいて進行方向に障害物が存在する場合に減速又は停止の走行命令を生成し、走行制御部26に入力する。走行制御部26は、アクチュエータに入力する制御量を作成し走行部27に入力する。
自律移動体1は、教示走行モードにおいて、操作者が操作部32を手動操作することにより、走行経路を手動走行させながら、通過時刻と通過時刻における通過点データの集合でなる走行スケジュールを作成する。この時、障害物情報取得部21より取得した障害物の位置情報に基づいて、本体1aと障害物との距離が所定値以下である場合に、通知部33を介して、操作者に対して障害物に接近している旨の通知を行う。通知部33をスピーカとした場合には、所定のアラーム音を発生して操作者に障害物の接近を通知することができる。また、通知部33を液晶ディスプレイやLEDランプ等の表示装置とした場合には、所定の通知表示を行うことで、操作者に障害物の接近を通知できる。
(2)機能ブロック
本発明の第1実施形態による自律移動体を以下に説明する。
図2は、本発明の第1実施形態が採用される清掃用ロボットの制御ブロック図である。
この清掃用ロボット40は、操作者の手動操作により走行開始位置から走行終了位置まで手動走行させながら、通過時刻と通過時刻における通過点データの集合でなる走行スケジュールと環境地図復元用データを作成する教示走行モードと、走行スケジュールを再現しながら、走行開始位置から走行終了位置まで自律的に走行する再現走行モードとを実行する。
清掃用ロボット40は、自律移動体1と、スロットル42、清掃部ユーザインターフェイス43を備える。清掃用ロボット40は、さらに、清掃部(図示せず)を有している。清掃部は、自律移動体1の下部に設けられており、自律移動体1の移動と共に床面を清掃するための装置である。
スロットル42は、図1の操作部32に対応するものであり、操作者の手動操作による指示入力を受け付ける。スロットル42は、軸周りの回転角度により制御の指示入力を受け付けるスロットルグリップを左右独立して設けることができる。また、スロットル42は、前進速度を受け付けるスロットルグリップと、操舵方向の指示を受け付けるハンドルの組合せとすることも可能である。さらに、スロットル42は、スロットルレバーやその他の入力手段を組み合わせたものとすることができる。
清掃部ユーザインターフェイス43は、清掃部(図示せず)による清掃動作の指示を操作者から受け付けるものであり、例えば、液晶ディスプレイ、操作ボタン、タッチパネル、その他操作スイッチの組合せで構成できる。清掃部ユーザインターフェイス43に、液晶ディスプレイやタッチパネルなどの表示装置を備える場合には、制御部11から出力される各種情報をこの清掃部ユーザインターフェイス43に表示させることができ、教示走行モードにおいて障害物が接近した旨の通知もこの表示装置を介して表示させることができる。
自律移動体1は、コントロールボード51、ブレーカ52、前方レーザレンジセンサ53、後方レーザレンジセンサ54、バンパースイッチ55、非常停止スイッチ56、スピーカ57、走行部27を備える。
ブレーカ52は、主電源スイッチであって、操作者の操作に基づいて、自律移動体1の各部にバッテリ(図示せず)からの電源電圧供給のオン、オフを行う。
前方レーザレンジセンサ53は、自律移動体1の前方に位置する障害物の位置情報を検出するものであり、所定の角度範囲で水平方向にレーザ光を照射して、障害物から反射される反射光を受信して、本体1aから障害物までの距離を測定する。
後方レーザレンジセンサ54は、自律移動体1の後方に位置する障害物の位置情報を検出するものであり、所定の角度範囲で水平方向にレーザ光を照射して、障害物から反射される反射光を受信して、本体1aから障害物までの距離を測定する。
バンパースイッチ55は、自律移動体1の車体外周に取り付けられた感圧スイッチとすることができ、障害物に接触したことを検出して、検出信号を出力する。
非常停止スイッチ56は、自律移動体1の動作を緊急停止させる指示を受け付けるものであって、操作者による操作が可能なスイッチである。
スピーカ57は、自律移動体1の動作中における各種情報を音により操作者に通知する。
コントロールボード51は、CPU、ROM、RAMを搭載する回路基板であり、制御部11、教示データ作成部24、SLAM処理部63、不揮発メモリ64、障害物情報取得部21、記憶部22、走行制御部26を含む。
記憶部22は、各種データを記憶するものであり、教示走行モードにおいて作成された走行スケジュール及び走行経路を含むグローバルマップ、又はグローバルマップを復元するための環境地図復元用データを時刻、又はこの時刻に関連付けた識別子と関連付けて記憶する。
制御部11は、コントロールボード51に搭載されるマイクロプロセッサであり、所定のプログラムを実行することにより、自律移動体1の各部の動作を制御する。
教示データ作成部24は、教示走行モードにおける通過時刻と通過時刻に対応する通過点データの集合である走行スケジュールを作成する。
SLAM処理部63は、自己位置推定と環境地図作成を同時に行うSLAM(Simultaneous Localization and Mapping)処理を実行する機能ブロックであって、地図作成部72、自己位置推定部23、マップマッチング部73を備える。
地図作成部72は、障害物情報取得部21により取得した障害物の位置情報を、取得した時刻と対応付けて環境地図復元用データとして記憶部22に記憶させる。また、地図作成部72は、障害物情報取得部21により取得した障害物の位置情報に基づいて、本体1aの周辺領域におけるローカルマップ(局所地図)を作成する。さらに、地図作成部72は、作成したローカルマップに基づいて、自己位置推定用のグローバルマップ(環境地図)を作成する。また、地図作成部72は、再現走行モードにおいて、現在の通過点よりも先の時刻に対応する環境地図復元用データを記憶部22から読み出して、それに基づいてグローバルマップを更新する。
自己位置推定部23は、前回の自己位置からの移動量を前回の自己位置に加算することで、現在の自己位置を推定する。
マップマッチング部73は、本体1aの周囲に位置する障害物の位置情報に基づいて作成されたローカルマップと、更新されたグローバルマップとを比較することで、自己位置推定部23により推定された自己位置を補正する。
不揮発メモリ64は、制御部11のブートプログラム、走行制御に関するプログラム、各種パラメータなどを記憶する。
障害物情報取得部21は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の検出信号に基づいて本体1aの周囲に位置する障害物の位置情報を取得する。
走行命令生成部25は、走行制御部26に走行命令を出力するものである。走行命令生成部25は、教示走行モードにおいて、スロットル42を介して入力される操作者からの指示入力に基づいて走行命令を走行制御部26に出力する。また、走行命令生成部25は、再現走行モードにおいて、SLAM処理部63により推定されるグローバルマップ上の自己位置、更新されたグローバルマップ及び走行スケジュールに基づいて走行命令を生成し、走行制御部26に出力する。
さらに、走行命令生成部25は、再現走行モードにおいて、障害物情報取得部21により取得した障害物の位置情報に基づいて進行方向に障害物が存在する場合に減速又は停止の走行命令を生成し、走行制御部26に入力する。
走行制御部(モーションコントローラ)26は、入力される走行命令に基づいて走行部27のアクチュエータの制御量を生成して、走行部27に入力する。
走行制御部26は、演算部81、判断部82、移動制御部83を備えている。判断部82は、入力された走行命令を解釈する。演算部81は、判断部82により解釈された走行命令に基づいて、走行部27のアクチュエータの制御量を算出する。移動制御部83は、演算部81により算出された制御量を走行部27に出力する。
走行部27は、2つの走行車輪(図示せず)に対応して、一対のモータ93、94を有し、それぞれの回転位置を検出するエンコーダ95、96と、モータ駆動部91、92を備えている。
モータ駆動部(モータドライバ)91は、走行制御部26から入力される制御量と、エンコーダ95により検出されるモータ93の回転位置とに基づいて、モータ93をフィードバック制御する。モータ駆動部92は、同様に、走行制御部26から入力される制御量と、エンコーダ96により検出されるモータ94の回転位置とに基づいて、モータ94をフィードバック制御する。
走行命令生成部25、教示データ作成部24、障害物情報取得部21、走行制御部26、SLAM処理部63は、それぞれ制御部11がプログラムを実行することにより実現される機能ブロックとすることができ、また、それぞれ独立した集積回路で構成することも可能である。
(3)制御動作
図3は、自律移動体の制御動作の概略を示す制御フローチャートである。以下、図2における制御部11が所定のプログラムを実行することにより、走行命令生成部25、教示データ作成部24、SLAM処理部63、障害物情報取得部21、及び走行制御部26の各機能ブロックを実現するものとして説明する。
ステップS31において、制御部11は、操作者によりモード選択が行われたか否かを判別する。具体的には、操作者による操作部32の操作により指示入力を受け付けた場合、又はリモコンからの指示入力信号を受信した場合に、制御部11はステップS32に移行する。
ステップS32において、制御部11は選択されたモードが教示走行モードであるか否かを判別する。制御部11は、教示走行モードを選択する指示入力を受け付けたと判断した場合、ステップS33に移行し、そうでない場合にはステップS34に移行する。
ステップS33において、制御部11は教示走行モードを実行し、その後、ステップS36に移行する。
ステップS34において、制御部11は選択されたモードが再現走行モードであるか否かを判別する。制御部11は、再現走行モードを選択する指示入力を受け付けたと判断した場合、ステップS35に移行する。
ステップS35において、制御部11は再現走行モードを実行し、その後、ステップS36に移行する。
ステップS36において、制御部11は、終了指示を受け付けたか否か、もしくは教示された走行スケジュールを終えたか否かを判別する。具体的には、制御部11は、操作者による操作部32の操作により処理終了する旨の指示入力があった場合、リモコンにより処理終了する旨の指示入力信号を受信した場合、あるいは、教示走行モードにより作成された走行スケジュールを終了したと判断した場合には、処理を終了し、そうでない場合には、ステップS31に移行する。
(3−1)教示走行モード
図4は、教示走行モードにおける自律移動体の制御フローチャートである。
ステップS40において、制御部11は、初期設定を行う。具体的に、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の検出信号に基づいて、本体1aの周囲に位置する障害物の位置情報を取得し、これに基づいて本体1aの周囲におけるローカルマップを作成する。
図5は、レーザレンジセンサの走査範囲の一例を示す説明図である。
自律移動体1では、本体1aの前端部に前方レーザレンジセンサ53が取り付けられており、パルス発振されたレーザ光を回転ミラーにより扇状に走査して、自律移動体1の前方に位置する障害物から反射する反射光を受信する。
図5に示す例では、前方レーザレンジセンサ53は、前方約180度の走査領域101にレーザ光を送信する。前方レーザレンジセンサ53では、障害物から反射した反射光を所定周期で受信し、送信したレーザ光の送信パルスと受信した反射光の受信パルスとを比較して、障害物までの距離を検出する。
自律移動体1の本体1aには、後端部に後方レーザレンジセンサ54が取り付けられている。後方レーザレンジセンサ54は、前方レーザレンジセンサ53と同様に、パルス発振されたレーザ光を回転ミラーにより扇状に走査して、その結果、自律移動体1の後方に位置する障害物から反射する反射光を受信する。
図5に示す例では、後方レーザレンジセンサ54は、後方約180度の走査領域103にレーザ光を送信する。ただし、自律移動体1は、後述する教示走行モードにおいて、障害物の検出を行わないマスク領域105を設け、第1走査領域115及び第2走査領域117に位置する障害物の位置情報を検出する。なお、マスク領域150は、自律移動体1の後方に位置する操作者に対応させて設けられている。
図6は、レーザレンジセンサの走査範囲の他の例を示す説明図である。
図5に示す例では、前方レーザレンジセンサ53及び後方レーザレンジセンサ54が、約180度の角度でレーザ光の走査を行っているのに対して、図6に示す例では、それぞれ約240度の角度でレーザ光の走査を行っている点で異なる。
具体的には、前方レーザレンジセンサ53による走査領域101は前方240度の角度範囲である。また、後方レーザレンジセンサ54による走査領域103は後方240度の角度範囲であり、マスク領域105を除く第1走査領域115及び第2走査領域117に位置する障害物の位置情報を検出する。
図7は、レーザレンジセンサにより検出した障害物の位置情報の一例を示すテーブルである。
前方レーザレンジセンサ53及び後方レーザレンジセンサ54は、所定の走査領域にレーザ光を照射し、さらに障害物からの反射光を受信して、その後に照射したレーザ光の送信パルスと受信した反射光の受信パルスとに基づいて、障害物までの距離Rを出力値として算出する。また、前方レーザレンジセンサ53及び後方レーザレンジセンサ54は、障害物までの距離Rを得た時のセンサ角度Nも出力する。
制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の出力を、所定の角度毎に取得し、それに基づいてセンサ角度Nと障害物までの距離Rとを対応付けた位置情報テーブルを作成する。図7に示す位置情報テーブルは、0.72度毎にセンサ出力を取得して障害物の位置情報テーブルとしたものである。
制御部11は、センサ座標系によるローカルマップの作成処理を実行する。具体的には、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により取得した障害物の位置情報テーブル(例えば、図7に示す障害物の位置情報テーブル)に基づいて、センサを中心とした座標系における自己位置近傍の環境地図であるローカルマップを作成する。
例えば、図5及び図6に示すように、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により走査される走査領域101、103内を、所定の面積のグリッドに分割し、次に、障害物の位置情報テーブルに基づいて、各グリッドにおける障害物存在確率を算出する。
図8は、センサを中心とした座標系でのローカルマップの説明図である。
制御部11は、前方レーザレンジセンサ53又は後方レーザレンジセンサ54のセンサ中心を原点132とし、障害物の位置情報テーブルのセンサ角度Nに対応する走査線131上のグリッドに対して障害物存在確率を決定する。ここで、障害物が存在するグリッドの障害物存在確率を「1.0」とし、障害物が存在するか否か不明であるグリッドの障害物存在確率を「0」とし、障害物と原点との間に位置するグリッドの障害物存在確率を「−1+(r/R)=−1.0〜0」とする。
制御部11は、走査線131上であって、原点132からの距離rが障害物までの距離Rと一致するグリッドを検出グリッド133として、そのグリッドの障害物存在確率を「1.0」とする。
制御部11は、走査線131上であって、原点132からの距離rが障害物までの距離R未満にあるグリッドには障害物が存在しないと判断する。図8において、原点132と検出グリッド133との間に位置する中間グリッド134〜138の障害物存在確率を「−1+(r/R)=−1.0〜0」とする。
制御部11は、走査線131上であって、原点132からの距離rが障害物までの距離Rよりも遠くにあるグリッドには、障害物が存在するか否かは不明であると判断して、不明グリッド139の障害物存在確率を「0」とする。
このことにより、図5又は図6に示すように、前方レーザレンジセンサ53及び後方レーザレンジセンサ54を中心として、障害物存在確率が「1.0」である検出グリッド107と、障害物存在確率が「−1.0〜0」である中間グリッド109と、障害物存在確率が「0」である不明グリッド111とを含むセンサ座標系によるローカルマップが作成される。
ただし、後方レーザレンジセンサ54のマスク領域105に位置するグリッドは、不明グリッド113として障害物存在確率が「0」に設定される。
図5及び図6に示す例では、自律移動体1の前方に位置して直線状に検出グリッド107が存在しており、したがって走行経路を構成する壁面又は大型の障害物が存在すると推定することができる。
このようにして、センサ座標系のローカルマップ作成処理では、前方レーザレンジセンサ53及び後方レーザレンジセンサ54を中心とする周囲に位置する各グリッドの障害物存在確率を算出して、これをセンサ座標系のローカルマップとして出力する。
ステップS40における初期設定では、前述したように、制御部11では、障害物情報取得部21が、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の検出信号から障害物の位置情報を取得し、さらに、地図作成部72が本体1aの周囲に位置するローカルマップを作成する。制御部11は、障害物の位置情報を取得した時刻(t1)における自己位置の座標と姿勢を含む自己位置(x1,y1,θ1)が絶対座標系の原点(あるいは所定の座標)になるように、ローカルマップをグローバルマップとして置き換える。
この時、制御部11は、グローバルマップにおける現在の自己位置(x1,y1,θ1)が走行開始位置として適切であるか否かの判断を行う。例えば、自己位置の周辺に障害物がほとんど存在しない場合又は単純形状が連続する場合には、再現走行モードにおいて走行開始位置を判定することが困難であることから、制御部11は清掃部ユーザインターフェイス43及び/又はスピーカ57を通じて、走行開始位置として不適切である旨の通知を行って、操作者に走行開始位置の変更を促す。
また、制御部11は、自己位置(x1,y1,θ1)と、グローバルマップ上に存在する障害物との距離が所定距離以下であれば、走行開始位置として不適切であると判断することもできる。この場合も、同様に、制御部11が清掃部ユーザインターフェイス43又はスピーカ57を介して走行開始位置が不適切である旨の通知を行うことができる。
制御部11は、自己位置(x1,y1,θ1)が走行開始位置として適切であると判断した場合には、障害物情報取得部21により取得した障害物の位置情報を時刻(t1)と関係付けて環境地図復元用データとして、それを記憶部22に記憶させる。また、制御部11は、自己位置の座標(x1,y1)と本体1aの姿勢(θ1)及び時刻(t1)を関係付けた通過点データ(x1,y1,θ1,t1)を走行スケジュールとして、記憶部22に記憶させる。
さらに、制御部11は、地図作成部72により作成された自己位置(x1,y1,θ1)を中心としたグローバルマップの一部を、記憶部22に一時的に記憶させる。
ステップS41において、制御部11は、操作者が入力した走行命令に基づいて、走行部27のアクチュエータの制御量を作成し、それを走行部27に出力する。教示走行モードでは、制御部11は、操作者がスロットル42を操作することにより入力する走行速度及び操舵に関する指示入力を受け付け、走行経路内における走行制御を行う。操作者による指示入力は、リモコンによる無線での指示入力信号を受信する方式でもよい。
ステップS42において、制御部11はデータ計測処理を実行する。具体的には、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により、レーザ光を照射しさらに障害物から反射した反射光を受信することで、障害物の距離及び方向に関する障害物情報を得る。
また、制御部11は、さらに自律移動体1の一定時間内の移動量に関する情報を取得する。具体的には、制御部11は、走行部27のエンコーダ95、96から、それぞれ対応するモータ93、94の回転位置に関する情報を取得し、一定時間内の移動量を算出する。
一定時間内の移動量は、自律移動体1の前回の計測時点(t−1)の2次元座標(x(t−1),y(t−1))からの移動量と、進行方向の変更量とを備える移動量(dx,dy,dθ)として表すことができる。
ステップS43において、制御部11は、センサ座標系によるローカルマップの作成処理を実行する。具体的には、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により取得した障害物の位置情報テーブル(例えば、図7に示す障害物の位置情報テーブル)に基づいて、センサを中心とした座標系における本体1aの周囲に位置する所定範囲を所定の大きさのグリッドに分割し、さらに各グリッドに算出された障害物存在確率を対応付けたローカルマップを作成する。
ステップS44において、制御部11は、自己位置推定部23により、時刻(t−1)における自己位置に時刻(t−1)〜時刻(t)間の移動量(dx,dy,dθ)を加算することで時刻(t)の自己位置を推定する。また、制御部11は、マップマッチング部73により、自己位置のパラメータとして、2次元座標(x,y)と進行方向(θ)を有する3次元のグリッド空間(x,y,θ)を想定し、さらに移動前後における各グリッドの自己位置の確率分布を算出することで、マップマッチングを行う。
図9は、自己位置推定処理の制御フローチャートである。
ステップS91において、制御部11は、事前確率計算処理を実行する。
制御部11は、現在時刻である時刻(t)を用いて、時刻(t−1)の事後確率分布と、時刻(t−1)〜時刻(t)間の移動量(dx,dy,dθ)とに基づいて、時刻(t)における自己位置の事前確率分布を算出する。
図10は、事後確率分布の一例を示す説明図であり、図11は、事前確率分布の一例を示す説明図である。
制御部11は、図10に示す時刻(t−1)の事後確率分布に、時刻(t−1)〜時刻(t)間の移動量(dx,dy,dθ)を加算して、座標をシフトさせる。
制御部11は、さらに、正規分布を畳み込み演算することによって、図11に示すような時刻(t)における事前確率分布を得る。
制御部11は、このような事前確率計算処理を、3次元グリッド空間(x,y,θ)内の各グリッドに対して実行することにより、車輪のスリップなどを考慮しながら、エンコーダ95、96から取得した移動量(dx,dy,dθ)を加えた自己位置の確率分布を更新する。
ステップS92において、制御部11は尤度計算処理を実行する。
図12は、尤度計算処理の制御フローチャートである。
ステップS121において、制御部11は、仮の自己位置座標を抽出する。具体的には、制御部11は、事前確率分布処理により算出された時刻(t)における事前確率のうち閾値を超える座標を1つ抽出し、これを仮の自己位置座標とする。制御部11は、時刻(t)の事前確率分布、ローカルマップ、及び作成中のグルーバルマップに基づいて、抽出した仮の自己位置座標における尤度を算出する。
ステップS122において、制御部11は、座標変換処理を実行する。具体的には、制御部11は、センサ座標系によるローカルマップを、仮の自己位置座標に基づいて、絶対座標系のローカルマップに変換する。
制御部11は、事前確率分布に基づいて抽出された仮の自己位置座標を(x,y,θ)とし、センサ座標系によるローカルマップの各グリッドの座標を(lx,ly)として、絶対座標系のローカルマップの各グリッドの座標(gx,gy)を数式1により算出する。

ステップS123において、制御部11は、マップマッチング処理を実行する。
制御部11は、作成中のグローバルマップと絶対座標系のローカルマップとのマップマッチング処理を行い、それに基づいて絶対座標系のローカルマップ上における各グリッドの障害物存在確率を算出する。
制御部11は、絶対座標系のローカルマップにおいて、障害物存在確率「1.0」のグリッドがN個存在した場合、i番目のグリッドの座標を(gx_occupy(i),gy_occupy(i))とし、グローバルマップ上の座標(gx_occupy(i),gy_occupy(i))における障害物存在確率をGMAP(gx_occupy(i),gy_occupy(i))として、以下の数式2により一致度を表すスコアsを算出する。



制御部11は、複数の仮の自己位置に対してそれぞれスコアsを算出して、それを自己位置の尤度分布とする。
図13は、尤度計算処理により得られた尤度分布の一例を示す説明図である。
ステップS93において、制御部11は、事後確率計算処理を実行する。具体的に、制御部11は、絶対座標系のローカルマップの各グリッドに対して、時刻(t)における事前確率分布に、時刻(t)における尤度分布を掛けることにより、時刻(t)における事後確率を算出する。
図14は、事後確率計算処理により得られた事後確率分布の一例を示す説明図である。図14では、図11に示す時刻(t)における事前確率分布と、図13に示す時刻(t)における尤度分布とを掛けて得られた事後確率分布を示している。
制御部11は、複数の仮の自己位置に対して事後確率計算処理を実行し、その結果事後確率が最大となるものを自己位置とすることができる。
上述のような構成とすることにより、尤度が同程度の値を持つ仮の自己位置に対して、事前確率の差を事後確率に反映させることができ、さらに前方レーザレンジセンサ53、後方レーザレンジセンサ54と走行部27のエンコーダ95,96の出力信号に基づいてデッドレコニング(Dead−Reckoning)により、自己位置を推定することが可能となる。また、時刻(t)における事前確率計算を行う際に、時刻(t−1)の事後確率を用いていることから、走行部27における車輪(図示せず)のスリップや前方レーザレンジセンサ53、後方レーザレンジセンサ54のノイズなどの外乱要因を阻止でき、つまり自己位置を正確に推定できる。
ステップS45において、制御部11は、障害物情報取得部21より取得した障害物の位置情報に基づいて、本体1aと障害物との距離が所定値以下であるか否かを判別する。具体的には、制御部11は、本体1aの進行方向前方に位置して障害物存在確率「1.0」であるグリッドが存在しており、自己位置からその障害物までの距離が所定値以下であると判断した場合に(ステップS45でYes)、ステップS46に移行し、自己位置からその障害物までの距離が所定距離を超えると判断した場合に、ステップS46をスキップしてステップS47に移行する。ここでの所定値は、再現走行モードにおいて、本体1aと障害物との距離が接近した場合に、減速又は停止の走行命令を生成する閾値とすることができる。
ステップS46において、制御部11は、操作者に対して障害物に接近している旨の通知を行う。具体的には、制御部11は、スピーカ57を介して所定のアラーム音を発生させて、操作者に進路を変更することを促す。これと同時に、制御部11は、清掃部ユーザインターフェイス43の表示部に、障害物に接近している旨の警告表示を作成して表示させることもできる。この後、制御部11はステップS47に移行する。
上記の通知により、教示走行モードにおいて作成される走行スケジュールは、自律移動体1の本体1aと障害物との距離が所定距離以下になる箇所を含みにくい。
ステップS47において、制御部11は、障害物情報取得部21により、グローバルマップ上における現在の自己位置の周囲に位置する障害物の位置情報を取得し、これを時刻に対応させて、環境地図復元用データとして記憶部22に記憶させる。
ここで、記憶部22に記載される環境地図復元用データは、グローバルマップ上の自己位置の周囲を所定面積の単位グリッドで分割し、各グリッドに障害物存在確率を対応付けて、障害物の位置情報を取得した時刻(t)と関連つけたものとすることができる。
ステップS48おいて、制御部11はグローバルマップ更新処理を実行する。具体的に、制御部11は、時刻(t−1)におけるグローバルマップに対して、自己位置推定処理により推定された自己位置により座標変換を行った絶対座標系のローカルマップを足し合わせすることで、時刻(t)におけるグローバルマップを作成する。
図15は、グローバルマップ更新処理の概念構成を示す説明図である。図15に示す例では、自己位置近傍の4×4のグリッドを対象にしており、(a)は時刻(t−1)におけるグローバルマップ、(b)は時刻(t)における絶対座標系のローカルマップ、(c)は更新された時刻(t)におけるグローバルマップを示す。
図15に示すように、時刻(t−1)におけるグローバルマップ及び時刻(t)におけるローカルマップは、それぞれのグリッドに障害物存在確率が記憶されている。前述したように、障害物が存在していると推定されるグリッドの障害物存在確率は「1.0」、障害物が存在していないと推定されるグリッドの障害物存在確率は「−1.0〜0」、障害物の存在が不明であるグリッドの障害物存在確率は「0」に設定されるものとする。
グローバルマップ更新処理では、制御部11は、自己位置推定処理により推定された自己位置に基づいて、絶対座標系に変換されたローカルマップの各グリッド(図15(b))をグローバルマップの各グリッド(図15(a))に対応させ、各グリッドの障害物存在確率を加算する。
制御部11は、各グリッドの障害物存在確率が演算により「1.0」以上になる場合、及び「−1.0」以下になる場合には切り捨て計算を行って、それぞれ「1.0」、「−1.0」とする。このことにより、繰り返し障害物が存在すると判別されたグリッドの障害物存在確率は「1.0」に近い値となり、繰り返し障害物が存在しないと判別されたグリッドの障害物存在確率は「−1.0」に近い値となる。
このようにして、制御部11は、図15(c)に示す時刻(t)におけるグローバルマップの各グリッドの障害物存在確率を算出することで、グローバルマップを更新する。
時刻(t)におけるグローバルマップは、少なくとも次の時刻(t+1)において、制御部11が自己位置推定処理を実行するために必要な範囲を含むものであり、一時的に記憶部22に記憶される。
このグローバルマップ更新処理では、グローバルマップの各グリッドの障害物存在確率が、絶対座標系のローカルマップの対応する各グリッドの障害物存在確率を加算することで更新されるので、車輪のスリップやセンサの計測誤差に基づくノイズの影響を極力少なくすることができる。
ここで、制御部11は、さらに、自律移動体1が通過後の通過点におけるグローバルマップを削除することもできる。この点は、時刻(t)において更新されるグローバルマップとして必要なものは、次の時刻(t+1)において、制御部11が自己位置推定処理を実行するために必要な範囲だけある。したがって、次の時刻(t+1)において、制御部が自己位置推定処理を実行するために必要でない範囲は削除することが可能である。このため、環境地図において、環状経路が閉じないという問題を考慮する必要がなくなる。
ステップS50において、制御部11は、終了指示を受け付けたか否かを判別する。具体的には、制御部11は、操作者による操作部32の操作により処理終了する旨の指示入力があった場合、又はリモコンにより処理終了する旨の指示入力信号を受信した場合には終了処理を実行して処理を終了し、そうでない場合には、ステップS41に移行する。
(3−2)再現走行モード
図16は、再現走行モードにおける自律移動体の制御フローチャートである。
ステップS161において、制御部11はデータ計測処理を実行する。具体的には、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により、レーザ光を照射しさらに障害物から反射した反射光を受信することで、障害物の距離及び方向に関する障害物情報を得る。ここでのデータ計測処理は、教示走行モードにおけるデータ計測処理と同様であり、詳細説明は省略する。
ステップS162において、制御部11は、センサ座標系によるローカルマップの作成処理を実行する。具体的には、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により取得した障害物の位置情報テーブル(例えば、図7に示す障害物の位置情報テーブル)に基づいて、センサを中心とした座標系における自己位置近傍の各グリッドに障害物存在確率を対応させたローカルマップを作成する。
ステップS163において、制御部11は、グローバルマップ上の自己位置を推定する。具体的には、自己位置推定部23により、時刻(t−1)における自己位置に時刻(t−1)〜時刻(t)間の移動量(dx,dy,dθ)を加算することで時刻(t)の自己位置として推定する。また、制御部11は、自己位置のパラメータとして、2次元座標(x,y)と進行方向(θ)を有する3次元のグリッド空間(x,y,θ)を想定した上で、移動前後における各グリッドの自己位置の確率分布を算出することで、マップマッチングを行って、それにより自己位置の補正を行うことができる。
ステップS164において、制御部11は、本体1aと障害物との距離が所定値以下であるか否かを判別する。再現走行モードでは、自律移動体1が自律走行を実行していることから、障害物との接触を回避するために、障害物と接近した場合には、走行速度を減速するか、あるいは停止する必要がある。したがって、制御部11は、本体1aと障害物との距離が所定距離以下であると判断した場合には(ステップS164でYes)、ステップS165に移行し、本体1aと障害物との距離が所定距離を超えていると判断した場合には(ステップS164でNo)、ステップS166に移行する。
ステップS165において、制御部11は、走行命令生成部25により停止の走行命令を生成させる。具体的に、制御部11は、走行制御部26から走行部27に出力されるアクチュエータの制御量が0になるように、走行命令生成部25に停止命令を出力させる。ステップS165において、本体1aと障害物との接近を判断するための閾値を大きめに設定している場合には、制御部11は走行命令生成部25に減速命令を出力させることもできる。この後、制御部11は処理を終了する。
ステップS166において、制御部11は、推定された自己位置に対応するグローバルマップと、障害物情報取得部21により取得した障害物の位置情報から作成したローカルマップと比較して、現在の自己位置に対応する走行スケジュール中の時刻を推定する。このとき、制御部11は、予め記憶部22に記憶されたグローバルマップ、又は教示走行モードにおいて作成し記憶部22に記憶されたグローバルマップを用いることができる。また、教示走行モードにおいて、環境地図復元用データを記憶部22に記憶させた場合には、制御部11は、環境地図復元用データを用いて自己位置近傍のグローバルマップを復元し、これをローカルマップと比較することもできる。
ステップS167において、制御部11は、記憶部22に記憶されている走行スケジュールのうち推定した時刻に対応する通過点データを記憶部22から読み出す。
ステップS168において、制御部11はグローバルマップ更新処理を実行する。具体的に、制御部11は、時刻(t−1)におけるグローバルマップに対して、自己位置推定処理により推定された自己位置により座標変換を行った絶対座標系のローカルマップを足し合わせて、時刻(t)におけるグローバルマップを更新する。このグローバルマップ更新処理では、グローバルマップの各グリッドの障害物存在確率が、絶対座標系のローカルマップの対応する各グリッドの障害物存在確率を加算することで更新されるため、車輪のスリップや摩耗、センサの計測誤差に基づくノイズの影響を極力少なくすることができる。
制御部11は、教示走行モードにおいて、通過時刻に対応する環境地図復元用データを作成して記憶部22に記憶させる場合には、通過点近傍におけるグローバルマップを記憶部22に残し、通過後のグローバルマップの情報を削除することも可能である。
ステップS169において、制御部11は、走行部27のアクチュエータの制御量を作成し、走行部27に出力する。具体的には、制御部11は、グローバルマップ上の自己位置と、記憶部22から読み出された通過点データに基づいて、走行スケジュールに沿うように、アクチュエータの制御量を決定し、これに基づく走行命令を走行部27に入力する。
ステップS170において、制御部11は、再現走行モードを終了するか否かを判別する。具体的には、制御部11は、記憶部22に記憶された走行スケジュールのうち最終の通過点データに到達した場合、操作者により非常停止スイッチ56が操作された場合、バンパースイッチ55により障害物に衝突したことを検出した場合、障害物情報取得部21により検出された障害物の位置情報が所定距離以下に近接した場合などにおいて、制御部11は再現走行モードを終了すると判断する。制御部11は、再現走行モードを終了しないと判断した場合にはステップS161に移行する。
以上に述べた実施形態では、図16に示す再現走行モードにおいて、自律移動体1と障害物との距離が所定値以下になった場合には(ステップS164でYes)、減速又は停止を行っている(ステップS165)。しかし、この実施形態では、図4に示す教示走行モードにおいて、自律移動体1と障害物との距離が所定値以下になった場合には(ステップS45でYes)、操作者に通知を行って経路変更を促している(ステップS46)。このことにより、教示走行モードにおいて作成される走行スケジュールは、自律移動体1の本体1aと障害物との距離が所定距離以下になる箇所を含みにくい。その結果、図16に示す再現走行モードにおいて、自律移動体1が走行スケジュール完了前に強制的に停止することを極力回避できる。
(4)実施形態の特徴
上記実施形態は、下記の構成及び機能を有している。
自律移動体1(自律移動体の一例)は、教示走行モード(例えば、図4のステップS40〜S50)と、再現走行モード(例えば、図16のステップS161〜S170)とを実行する。教示走行モードは、操作者の手動操作により、走行経路を手動走行させながら、通過時刻と通過時刻における通過点データの集合でなる走行スケジュールを作成する。再現走行モードは、走行スケジュールを再現しながら、走行経路を自律的に走行する。
自律移動体1は、本体1a(本体の一例)と、走行部27(走行部の一例)と、走行制御部26(走行制御部の一例)と、障害物情報取得部21(障害物情報取得部の一例)と、記憶部22(記憶部の一例)と、自己位置推定部23(自己位置推定部の一例)と、教示データ作成部24(教示データ作成部の一例)と、走行命令生成部25(走行命令生成部の一例)と、通知部33(通知部の一例)とを備えている。
走行部27は、制御量が入力されるモータ93,94(アクチュエータの一例)を有する。走行制御部26は、モータ93,94に入力する制御量を作成し走行部27に入力する(例えば、ステップS41、ステップS169)。障害物情報取得部21は、本体1aの周囲に存在する障害物の位置情報を取得する(例えば、ステップS42、ステップS161)。記憶部22は、走行経路に対応する環境地図を記憶する。自己位置推定部23は、環境地図の上における自己位置を推定する(例えば、ステップS44、S163)。教示データ作成部24は、教示走行モードにおいて、自己位置推定部23により推定される環境地図上の自己位置を、その通過時刻と対応させた通過点データとして走行スケジュールを作成する(例えば、ステップS49)。走行命令生成部25は、再現走行モードにおいて、走行スケジュールに沿って走行するように走行命令を生成するとともに(例えば、ステップS169)、障害物情報取得部21により取得した障害物の位置情報に基づいて進行方向に障害物が存在する場合に減速又は停止の走行命令を生成し、走行制御部26に入力する(例えば、ステップS165)。通知部33は、教示走行モードにおいて、障害物情報取得部21より取得した障害物の位置情報に基づいて、本体1aと障害物との距離が所定値以下である場合に、障害物に接近している旨の通知を行う(例えば、ステップS46)。
この自律移動体1では、再現走行モードにおいて、進行方向に障害物が存在する場合に(具体的には、本体1aと障害物との距離が所定値以下になる場合に)、走行命令生成部25により停止又は減速の走行命令を生成して、障害物との接触を回避する。一方、教示走行モードにおいては、本体1aと障害物との距離が所定値以下になると、通知部33を介して操作者に通知を行う。このことにより、教示走行モードにおいて作成される走行スケジュールは、本体1aと障害物との距離が所定距離以下になる箇所を含みにくい。その結果、再現走行モードにおいて、走行スケジュールの途中で減速又は停止することが減り、自律走行を円滑に行うことができる。
(5)他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
(5−1)環境地図の更新・削除処理
制御部10は、環境地図を、静的環境地図と動的環境地図の2層構造で管理することが可能である。静的環境地図は、教示走行モードで作成される地図復元用データに基づいて復元することができる。また、動的環境地図は、時刻(t)の動的環境地図と、時刻(t+1)において障害物情報取得部21が取得する自己位置の周辺における障害物の位置情報に基づくローカルマップとの重ね合わせにより作成することができる。
例えば、時刻(t)の動的環境地図の各グリッドにおける障害物存在確率を、DynamicMap(t)とし、静的環境地図の各グリッドにおける障害物存在確率を、StaticMapとする。また、時刻(t)において、静的環境地図からの障害物の配置変化を示す差分地図の各グリッドにおける障害物存在確率を、DiffMap(t)とする。
さらに、動的環境地図の各グリッドの値の範囲を決定するパラメータをP1とすると、
DynamicMap(t)=StaticMap・P1+DiffMap(t)
として算出できる。
制御部10は、障害物情報取得部21により取得した自機の周囲に位置する障害物情報と、環境地図復元用データから復元された静的環境地図を用いて自己位置を推定し、絶対座標系のローカルマップを作成する。
時刻(t+1)における動的環境地図は、時刻(t)における動的環境地図と、時刻(t+1)におけるローカルマップとを用いて、各グリッドの障害物存在確率が算出される。絶対座標系のローカルマップにおける各グリッドの障害物存在確率をLocalMap(t+1)とすると、
DynamicMap(t+1)=DynamicMap(t)+LocalMap(t+1)
として算出できる。
制御部10は、時刻(t+1)における動的環境地図と、静的環境地図との差分を求めて、時刻(t+1)における差分地図の各グリッドの障害物存在確率であるDiffMap(t+1)を
DiffMap(t+1)=DynamicMap(t+1)−StaticMap・P1
として作成し、これを用いて動的環境地図を更新する。
図17は、動的環境地図の更新処理の説明図である。図17に示す例では、自己位置近傍の4×4のグリッドを対象にしており、(a)は時刻(t)における動的環境地図、(b)は静的環境地図、(c)は時刻(t)における差分地図を示す。
図17に示すように、時刻(t)における差分地図DiffMap(t)中の各グリッドの障害物存在確率と、静的環境地図StaticMap中の各グリッドの障害物存在確率にパラメータP1を乗算した値とを加算して、時刻(t)における動的環境地図DynamicMap(t)が算出される。各グリッドの障害物存在確率は、−1.0〜1.0の範囲の値であり、パラメータP1を「0.5」としている。
このことから、DynamicMap(t)=StaticMap・P1+DiffMap(t)で算出された動的環境地図の各グリッドの障害物存在確率は、図17(c)のようになる。
図18は、自己位置推定時における尤度計算の説明図である。図18に示す例では、自己位置近傍の4×4のグリッドを対象にしており、(a)は絶対座標系のローカルマップ、(b)は静的環境地図、(c)は動的環境地図である。
障害物情報取得部21により取得した自機の周辺における障害物位置情報に基づいて、絶対座標系のローカルマップに変換した後の各グリッドの障害物存在確率が、図18(a)に示される。
絶対座標系のローカルマップにおいて、障害物存在確率が「1.0」であるグリッドがN個存在する時、i番目のグリッドの座標を(gx_occupy(i),gy_occupy(i))とする。静的環境地図の座標(gx_occupy(i),gy_occupy(i))における障害物存在確率をStaticMap(gx_occupy(i),gy_occupy(i))とし、動的環境地図の座標(gx_occupy(i),gy_occupy(i))における障害物存在確率をDynamicMap(gx_occupy(i),gy_occupy(i))とする。
絶対座標系のローカルマップにおいて、障害物存在確率が「1.0」になるグリッドのそれぞれに対し、静的環境地図と動的環境地図のうち、障害物存在確率が高い方を用いて、以下の数式により尤度計算を行う。



このことにより、図18に示す例では、s=(1.0+1.0+0.3+0.3)/4=0.65として尤度を算出することができる。
このように、グローバルマップとして静的環境地図と動的環境地図の2層で構成する場合においても、通過後の所定距離離れた領域の動的環境地図が削除されていることから、環状経路が閉じないという問題を防止できる。
また、教示走行モードで作成された環境地図復元用データを用いて静的環境地図を復元した際に、障害物の位置情報が変化しているような場合であっても、差分地図を用いて障害物の配置の変化を検知することが可能となる。従って、自律移動体1は、走行経路上のレイアウト変更や移動体の存在に対応して、障害物との接触を回避することが可能となる。
本発明は、清掃用ロボット、搬送用ロボット、その他の自律走行を行う自律移動体に適用することができる。
1 自律移動体
1a 本体
11 制御部
21 障害物情報取得部
22 記憶部
23 自己位置推定部
24 教示データ作成部
25 走行命令生成部
26 走行制御部
27 走行部
31 測距センサ
32 操作部
33 表示部
40 清掃用ロボット
42 スロットル
43 清掃部ユーザインターフェイス
51 コントロールボード
52 ブレーカ
53 前方レーザレンジセンサ
54 後方レーザレンジセンサ
55 バンパースイッチ
56 非常停止スイッチ
57 スピーカ
63 SLAM処理部
64 不揮発メモリ
72 地図作成部
73 マップマッチング部
81 演算部
82 判断部
83 移動制御部
91 モータ駆動部
92 モータ駆動部
93 モータ
94 モータ
95 エンコーダ
96 エンコーダ
101 走査領域
103 走査領域
105 マスク領域
107 検出グリッド
109 中間グリッド
111 不明グリッド
115 第1走査領域
117 第2走査領域
131 走査線
132 原点
133 検出グリッド
134 中間グリッド
135 中間グリッド
136 中間グリッド
137 中間グリッド
138 中間グリッド
139 不明グリッド

Claims (3)

  1. 操作者の手動操作により、走行経路を手動走行させながら、通過時刻と前記通過時刻における通過点データの集合でなる走行スケジュールを作成する教示走行モードと、前記走行スケジュールを再現しながら、前記走行経路を自律的に走行する再現走行モードとを実行する自律移動体であって、
    本体と、
    制御量が入力される複数のアクチュエータを有する走行部と、
    前記アクチュエータに入力する制御量を作成し前記走行部に入力する走行制御部と、
    前記本体の周囲に存在する障害物の位置情報を取得する障害物情報取得部と、
    前記走行経路に対応する環境地図を記憶する記憶部と、
    前記環境地図の上における自己位置を推定する自己位置推定部と、
    前記教示走行モードにおいて、前記自己位置推定部により推定される前記環境地図上の自己位置を、その通過時刻と対応させた通過点データとして走行スケジュールを作成する教示データ作成部と、
    前記再現走行モードにおいて、前記走行スケジュールに沿って走行するように走行命令を生成するとともに、前記障害物情報取得部により取得した障害物の位置情報に基づいて進行方向に障害物が存在する場合に減速又は停止の走行命令を生成し、前記走行制御部に入力する走行命令生成部と、
    前記教示走行モードにおいて、前記障害物情報取得部より取得した障害物の位置情報に基づいて、前記本体と障害物との距離が所定値以下である場合に、障害物に接近している旨の通知を行う通知部と、
    を備える自律移動体。
  2. 前記通知部は、前記本体と障害物との距離が所定値以下である場合に、アラーム音を発生させるスピーカである、請求項1に記載の自律移動体。
  3. 前記通知部は、前記本体と障害物との距離が所定値以下である場合に、障害物が接近している旨の表示を行う表示装置である、請求項1に記載の自律移動体。
JP2013096340A 2013-05-01 2013-05-01 自律移動体 Active JP6079415B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013096340A JP6079415B2 (ja) 2013-05-01 2013-05-01 自律移動体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013096340A JP6079415B2 (ja) 2013-05-01 2013-05-01 自律移動体

Publications (2)

Publication Number Publication Date
JP2014219723A JP2014219723A (ja) 2014-11-20
JP6079415B2 true JP6079415B2 (ja) 2017-02-15

Family

ID=51938140

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013096340A Active JP6079415B2 (ja) 2013-05-01 2013-05-01 自律移動体

Country Status (1)

Country Link
JP (1) JP6079415B2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015111336A (ja) * 2013-12-06 2015-06-18 トヨタ自動車株式会社 移動ロボット
KR101803598B1 (ko) * 2014-09-02 2017-12-01 네이버비즈니스플랫폼 주식회사 클라우드 포인트를 이용한 실내 지도 구축 장치 및 방법
US10019821B2 (en) 2014-09-02 2018-07-10 Naver Business Platform Corp. Apparatus and method for constructing indoor map using cloud point
JP2016191735A (ja) * 2015-03-30 2016-11-10 シャープ株式会社 地図作成装置、自律走行体、自律走行体システム、携帯端末、地図作成方法、地図作成プログラム及びコンピュータ読み取り可能な記録媒体
KR20170015115A (ko) 2015-07-30 2017-02-08 삼성전자주식회사 자율 주행 차량 및 자율 주행 차량 제어 방법
KR20170015114A (ko) 2015-07-30 2017-02-08 삼성전자주식회사 자율 주행 차량 및 자율 주행 차량 제어 방법
JP2017054393A (ja) * 2015-09-11 2017-03-16 パナソニックIpマネジメント株式会社 監視システム、及びこれに用いられる移動検知装置、監視装置
JP2017097402A (ja) * 2015-11-18 2017-06-01 株式会社明電舎 周辺地図作成方法、自己位置推定方法および自己位置推定装置
JP6708828B2 (ja) * 2016-03-28 2020-06-10 国立大学法人豊橋技術科学大学 自律走行装置及びその開始位置判定プログラム
JP6508114B2 (ja) 2016-04-20 2019-05-08 トヨタ自動車株式会社 移動体の自動運転制御システム
JP6668915B2 (ja) * 2016-04-22 2020-03-18 トヨタ自動車株式会社 移動体の自動運転制御システム
US11796673B2 (en) 2016-07-06 2023-10-24 Lawrence Livermore National Security, Llc Object sense and avoid system for autonomous vehicles
JP6885160B2 (ja) 2017-03-31 2021-06-09 カシオ計算機株式会社 移動装置、移動装置の制御方法及びプログラム
CN110476133B (zh) * 2017-04-10 2022-06-07 三菱电机株式会社 地图管理装置和自主移动体控制装置
WO2018190834A1 (en) 2017-04-12 2018-10-18 Paglieroni David W Attract-repel path planner system for collision avoidance
JP6962007B2 (ja) * 2017-06-02 2021-11-05 村田機械株式会社 自律走行台車の走行制御装置、自律走行台車
JP2019046381A (ja) * 2017-09-06 2019-03-22 パナソニックIpマネジメント株式会社 自律走行掃除機、および、マップ補正方法
JP7356264B2 (ja) * 2019-05-29 2023-10-04 アマノ株式会社 自律走行作業装置
JP7058635B2 (ja) * 2019-11-21 2022-04-22 ヤンマーパワーテクノロジー株式会社 自律走行システム
US11927972B2 (en) 2020-11-24 2024-03-12 Lawrence Livermore National Security, Llc Collision avoidance based on traffic management data

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01106204A (ja) * 1987-10-20 1989-04-24 Sanyo Electric Co Ltd 自走式掃除機
JPH08326025A (ja) * 1995-05-31 1996-12-10 Tokico Ltd 清掃ロボット
JP2003015739A (ja) * 2001-07-02 2003-01-17 Yaskawa Electric Corp 外環境地図、並びに自己位置同定装置および誘導制御装置
JP2004362022A (ja) * 2003-06-02 2004-12-24 Toyota Motor Corp 移動体
JP2010160735A (ja) * 2009-01-09 2010-07-22 Toyota Motor Corp 移動ロボット、走行計画マップ生成方法、管理システム
JP6136543B2 (ja) * 2013-05-01 2017-05-31 村田機械株式会社 自律移動体

Also Published As

Publication number Publication date
JP2014219723A (ja) 2014-11-20

Similar Documents

Publication Publication Date Title
JP6079415B2 (ja) 自律移動体
JP6136543B2 (ja) 自律移動体
JP6052045B2 (ja) 自律移動体
JP5141507B2 (ja) 自律移動装置
JP5278283B2 (ja) 自律移動装置及びその制御方法
JP5819498B1 (ja) 自律移動体及び自律移動体システム
JP6867120B2 (ja) 地図作成方法及び地図作成装置
US20200345191A1 (en) Self-propelled vacuum cleaner
WO2011074165A1 (ja) 自律移動装置
JP5805841B1 (ja) 自律移動体及び自律移動体システム
JP6202517B2 (ja) 地図作成装置、地図作成プログラムおよび地図作成方法
JP2017501472A (ja) 周縁記録機能を備えるロボット掃除機
JP5276931B2 (ja) 移動体および移動体の位置推定誤り状態からの復帰方法
KR20100098997A (ko) 로봇 청소기 및 그의 위치 검출 방법
JP2015001820A (ja) 自律移動体、その制御システム、および自己位置検出方法
JP6074205B2 (ja) 自律移動体
JP2018206004A (ja) 自律走行台車の走行制御装置、自律走行台車
JP2009223757A (ja) 自律移動体、その制御システム、自己位置推定方法
US20160231744A1 (en) Mobile body
JP2009174898A (ja) 移動体および環境情報作成方法
JP2009176031A (ja) 自律移動体,自律移動体制御システムおよび自律移動体の自己位置推定方法
JP2010061483A (ja) 自走移動体及び自走移動体の目的位置設定方法
JP2021026244A (ja) 自律走行作業装置
JP6156793B2 (ja) 位置推定装置、位置推定プログラムおよび位置推定方法
JP2023155919A (ja) 走行領域決定方法及び自律走行体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160223

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161214

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170102

R150 Certificate of patent or registration of utility model

Ref document number: 6079415

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250