トップ :: G 物理学 :: G05 制御;調整

【発明の名称】 自律移動ロボット、自律移動方法および自律移動情報処理プログラム
【発明者】 【氏名】陳 彬

【要約】 【課題】従来の自律移動ロボットでは、自律移動中の障害物の回避が不能等の突発的事態に対処するための人的介入や、自律移動中に一時的な経路変更をするなどの人的介入を行う場合に、当初の自律移動を強制終了して新たな移動条件を与えて新たな自律移動を開始することが必要で、自律移動中の人的介入を柔軟に行うことができない、という課題があった。

【構成】自律移動ロボットを駆動する走行制御系と、該自律移動ロボットの周囲の存在物の相対位置を観測する観測手段と、外部からの人的介入情報を入力する人的介入情報入力手段と、前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画エンジンと、前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成部と、を有する自律移動ロボットによって上記課題が解決される。
【特許請求の範囲】
【請求項1】
所与の始点、終点間を自律的に移動する自律移動ロボットであって、
該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御系と、
該自律移動ロボットの周囲の存在物の相対位置を観測する観測手段と、
外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力手段と、
前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画エンジンと、
前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成部と、
を有することを特徴とする自律移動ロボット。
【請求項2】
請求項1記載の自律移動ロボットであって、さらに、
地図データベースに基づく壁や柱などの固定物と観測手段によりその都度に観測した動的障害物とを含む存在物情報を有した地図グリッドマップを生成する地図グリッドマップ生成部を有し、
さらに、前記半自律移動経路計画エンジンは、
前記生成された地図グリッドマップからポテンシャル場仮想力ベクトルを算出するポテンシャル場仮想力生成部と、
前記算出されたポテンシャル場仮想力ベクトルと、前記人的介入情報入力手段が生成する仮想人的介入力ベクトルとから経路を生成する経路生成部と、
を有することを特徴とする自律移動ロボット。
【請求項3】
請求項1ないし請求項2記載の自律移動ロボットであって、さらに、
前記エンコーダ情報および前記観測された存在物位置情報を所与として組み込むが、前記人的介入情報は組み込まないアルゴリズムで移動経路を作成する完全自律移動経路計画エンジンと、
前記人的介入情報に基づいて、前記完全自律移動経路計画エンジンが作成する移動経路と前記半自律移動経路計画エンジンが作成する移動経路のいずれを採用するかを切り替える切替手段と、
を有し、さらに、
前記走行コマンド生成部は前記切替手段によって採用された移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成することを特徴とする自律移動ロボット。
【請求項4】
所与の始点、終点間を自律的に移動する自律移動ロボットの自律移動方法であって、
該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御ステップと、
該自律移動ロボットの周囲の存在物の相対位置を観測する観測ステップと、
外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力ステップと、
前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画ステップと、
前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成ステップと、
を有することを特徴とする自律移動方法。
【請求項5】
所与の始点、終点間を自律的に移動する自律移動ロボットの自律移動情報処理をコンピュータに実行させる自律移動情報処理プログラムであって、
該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御ステップと、
該自律移動ロボットの周囲の存在物の相対位置を観測する観測ステップと、
外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力ステップと、
前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画ステップと、
前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成ステップと、
をコンピュータに実行させることを特徴とする自律移動情報処理プログラム。
【発明の詳細な説明】【技術分野】
【0001】
本発明は、自律移動ロボットに関する発明であり、特に、自律移動ロボットへの人的介入技術に関するものである。
【背景技術】
【0002】
本明細書では、所与の始点、終点間を自律的に移動(例えば途中で突発的に現れる障害物を回避する移動経路を見出して移動)することを自律移動と呼び、このような機能を持つロボットを自律移動ロボットと呼ぶ。一般に従来の自律移動ロボットは、その移動経路の計画プロセスに人的介入は考慮しないアルゴリズムで移動経路作成していた。本明細書では、本発明を明確に述べるために、このようなアルゴリズム、すなわち、移動経路の計画プロセスに人的介入は考慮しないアルゴリズムで移動経路作成し、これに基づいて移動するような自律移動を特に「完全自律移動」と呼ぶことにする。
【0003】
近年のロボット工学の進展により多くの自律移動ロボットが開発され、運搬や案内業務を行うなどに実用化されている。例えば、本発明者が出願した未公開の下記特許文献1には障害物のある環境下で自律移動する移動ロボットの制御方法が開示されている。この移動ロボットの動作を、図8に基づいて簡単に説明しておく。
図8は下記特許文献1の実施例に基づいたブロック構成図である。このロボットは障害物が存在する環境下において、与えられたグローバル経路に沿って移動する自律走行モジュール9を備えた移動ロボットである。本移動ロボットは走行制御系1によってロボットを移動させ、観測手段2によって周囲の固定物および障害物の相対位置を観測する。自律走行モジュール9は制御エンジン3および完全自律移動経路計画エンジン4を備えている。制御エンジン3は移動ロボットの走行距離・走行方向と、上記観測した固定物もしくは障害物の相対位置から現在のロボットの位置を推定する自己位置推定部31を持ち、また、予め格納された移動ロボットの走行領域の固定物の位置を表すグリッドマップと上記観測した障害物の情報とを重ね合わせた地図グリッドマップを生成する地図グリッドマップ生成部32を有している。(なお、特許文献1ではこの地図グリッドマップのことを統合マップと呼んでいる。)
制御エンジン3中の経路計画要求部33は自己位置推定部31が算出する現在の自己位置推定値と地図グリッドマップ生成部32が生成する地図グリッドマップ(図の※)を完全自律移動経路計画エンジン4に渡すとともに、経路計画要求(図の白抜き矢印)を完全自律移動経路計画エンジン4に渡す。
【0004】
完全自律移動経路計画エンジン4はこの要求を受け取り、仮想ロボットを、上記地図グリッドマップ上で上記障害物を回避させながら、前記予め定められたグローバル経路に沿って移動させ、仮想ロボットの通過点を求め、この通過点の点列(ローカル経路)を上記制御エンジン3の走行コマンド生成部34に渡す。走行コマンド生成部34は、上記通過点の点列に沿って移動ロボットを移動させる走行コマンドを生成して走行制御系1を制御する。
【0005】
本特許文献1ではローカル経路の各通過点間の距離を所定単位距離D(例えば40cm)とするように移動点列を求める。上記のように、完全自律移動経路計画エンジン4はあらかじめ定められた所定最大点数J(例えば10点程度)の移動点列を作成して制御エンジン3の走行コマンド生成部34に返すので、ひとつのローカル経路移動長さは約J×D(例えば4m程度)である。制御エンジン3の経路計画要求部33は、完全自律移動経路計画エンジン4から生成したローカル経路を受け取ったタイミングで、次のローカル経路作成要求を完全自律移動経路計画エンジン4に対して発する。
【0006】
完全自律移動経路計画エンジン4の内部で障害物を回避しつつ上記ローカル経路を算出決定するアルゴリズムが特許文献1の眼目であって、同文献で詳細に開示されているが、一般に完全自律移動経路計画エンジンは公知であり、特許文献1で述べるアルゴリズムに限らない。
【0007】
また、下記特許文献2では複数の自律移動ロボットにユーザを案内させる場合に、ユーザが携帯端末を操作することにより、自律移動ロボットに人的介入情報を与えて、ユーザの最も近くに位置する自律移動ロボットを決定して当該自律移動ロボットに案内を担当させるロボット管理サーバと交信する自律移動ロボットが示されている。また下記特許文献3では頻繁に作業位置を変える業務に用いる自律移動ロボットで、作業位置を指示する人的介入手段(リモコン部)の指示を受ける自律移動ロボットが開示されている。
【特許文献1】特願2006−72459号公報(未公開)
【特許文献2】特許第3009395号公報
【特許文献3】特開2002−41144号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
一般に従来の自律移動ロボットは、上記特許文献1に示すように完全自律移動ロボットであって、完全自律移動中の障害物の回避が不能等の突発的事態に対処するための人的介入や、完全自律移動中に一時的な経路変更をするなどの人的介入を行う場合に、当初の完全自律移動を強制終了して新たな移動条件を与えて新たな完全自律移動を開始することが必要である。また、前記特許文献2や特許文献3においても人的介入がなされるが、これはあくまで完全自律移動ロボットに計画済みの人的介入であり、介入のつど現在の完全自律移動を強制終了して、人的介入による新たな移動条件を与えて新たな完全自律移動を開始するプログラムが事前に組み込まれているのであって、そのプログラムの範囲を越えた人的介入はできない。その意味で、完全自律移動中の人的介入が柔軟に行えるロボットではない。
【0009】
すなわち、従来の自律移動ロボットでは、自律移動中の障害物の回避が不能等の突発的事態に対処するための人的介入や、自律移動中に一時的な経路変更をするなどの人的介入を行う場合に、当初の自律移動を強制終了して新たな移動条件を与えて新たな自律移動を開始することが必要で、自律移動中の人的介入を柔軟に行うことができない、という課題があった。
【課題を解決するための手段】
【0010】
課題を解決する手段を説明するために「半自律移動」という用語を次のように定義する。すなわち、移動経路の計画プロセスに人的介入情報を所与とするアルゴリズムで移動経路を作成し、これに基づいて移動するような自律移動を半自律移動と呼ぶ。この用語を用いると、従来の自律移動ロボットでは自律移動中の人的介入を柔軟に行うことができない、という前記課題は、図1に示すごとく、所与の始点、終点間を自律的に移動する自律移動ロボットであって、該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御系1と、該自律移動ロボットの周囲の存在物の相対位置を観測する観測手段2と、外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力手段5と、前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画エンジン6と、前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成部34と、を有する自律移動ロボットによって解決される。
【0011】
すなわち、本発明の自律移動ロボットでは、半自律移動経路計画エンジン6が人的介入情報入力手段5からの人的介入情報を所与として経路生成を行うので、人的介入による自律移動の強制終了がなく、柔軟な人的介入が行える。
【0012】
また、前記課題は、図1に示すごとく、地図データベースに基づく壁や柱などの固定物と観測手段2によりその都度に観測した動的障害物とを含む存在物情報を有した地図グリッドマップを生成する地図グリッドマップ生成部32を有し、半自律移動経路計画エンジン6は、生成された地図グリッドマップからポテンシャル場仮想力ベクトルを算出するポテンシャル場仮想力生成部61と、算出されたポテンシャル場仮想力ベクトル(図1のA)と人的介入情報入力手段5が生成する仮想人的介入力ベクトル(図1のB)とから経路を生成する経路生成部62を有する自律移動ロボットにより、効果的に解決される。
【0013】
すなわち、ポテンシャル場仮想力生成部61は自己位置のまわりのポテンシャル場を図6(c)のごとく算出し、自己位置におけるポテンシャル場仮想力ベクトルを決定するが、経路生成部62はこれに仮想人的介入力ベクトルを加算することにより経路を生成するので、微妙な人的介入の度合が反映でき、柔軟な人的介入が行える。
【0014】
また、前記課題は、図1に示すごとく、エンコーダ情報および前記観測された存在物位置情報を所与として組み込むが人的介入情報は組み込まないアルゴリズムで移動経路を作成する完全自律移動経路計画エンジン4と、人的介入情報(図1の介入フラグf)に基づいて、完全自律移動経路計画エンジン4が作成する移動経路と半自律移動経路計画エンジン6が作成する移動経路のいずれを採用するかを切り替える切替手段7と、切替手段7によって採用された移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成部34と、を有する自律移動ロボットにより、効果的に解決される。
【0015】
すなわち、一般に完全自律移動経路計画エンジン4の方が半自律移動経路計画エンジン6に比べて少ない計算量で移動経路を作成できるアルゴリズムを採りやすいので、予定された経路については完全自律移動経路計画エンジン4を用い、人的介入によって一時的に半自律移動経路計画エンジン6に切り替える方が、人的介入の柔軟性を維持しつつ効率的な経路計算ができる。
【0016】
また、前記課題は、図2に示すごとく、人的介入情報入力手段5は、少なくともひとつのタッチセンサからなる入力受信部51と、該センサタッチ時のセンサ状態に基づいて仮想人的介入力ベクトルの向きと大きさとを生成する人的介入情報生成部52と、を有する自律移動ロボットにより、操作性よく人的介入が行われる。
【0017】
すなわち、タッチセンサへのタッチの有無を前記介入フラグfのオンオフに対応させ、例えば図2(b)のように二つのタッチセンサの前後移動量に基づいて仮想人的介入力ベクトルBを定義すれば、直感的なロボット回転操作がわかりやすく行える。
【0018】
また、前記課題は、図7に示すごとく、人的介入を行うユーザに警告を伝達する警告伝達手段8を有し、切替手段7によって半自律移動経路計画エンジン6が作成する移動経路が採用されており、かつ、該移動経路が算出不可能であり、かつ該人的介入を無視すると該移動経路が算出可能である場合に、該半自律移動経路計画エンジン6は前記人的介入情報を無視して移動経路を算出するとともに、警告伝達手段8によって人的介入を行うユーザに警告を伝達する自律移動ロボットにより、不用意な人的介入による異常終了を回避できる。
【0019】
すなわち、不用意な人的介入によって移動経路が算出不可能となる方向に誘導せられても、この人的介入を無視して移動することにより異常終了を回避し、そのことを警告伝達手段8によってユーザに警告するので、さらに操作性の向上が図られる。
【発明の効果】
【0020】
本発明の自律移動ロボットによれば、自律移動中に一時的な経路変更をさせようと人的介入を行う場合に、当初の自律移動を強制終了することなく介入に応じた経路変更を自律的に継続するので、人的介入を柔軟に行うことができ、異常停止を起こしにくい、という効果がある。
【発明を実施するための最良の形態】
【0021】
本発明の自律移動ロボットの実施例を図1〜図8により説明する。なお、本発明におけるコンピュータ処理は、当該コンピュータの主記憶装置上に展開されたコンピュータプログラムにより実行されるが、このコンピュータプログラムの提供形態は、当該コンピュータに接続された補助記憶装置をはじめ、CD−ROM等の可搬型記憶装置やネットワーク接続された他のコンピュータの主記憶装置及び補助記憶装置等の各記録媒体に格納されて提供されるもので、このコンピュータプログラムの実行に際しては、当該コンピュータの主記憶装置上にローディングされ実行されるものである。
【実施例1】
【0022】
本発明の自律移動ロボットの第1の実施例について図1〜図3によって説明する。図1は本実施例の自律移動ロボットの構成図であって、これを既に説明した図8の従来の自律移動ロボットの構成と比較すると、本実施例では人的介入情報入力手段5、半自律移動経路計画エンジン6および切替手段7が追加されている。そこでこれら追加された部分を以下に説明する。
【0023】
図2は人的介入情報入力手段5の実施例を示す。図2(a)のように入力受信部51はロボットの両肩に配置されたタッチセンサである。本タッチセンサはタッチの有無をセンスするとともにロボットの進行方向、背面方向への変位が可能である。ユーザはロボット背面より肩のタッチセンサをタッチしつつ前後変位をさせてロボットを誘導する。図2(b)には本実施例における人的介入情報の例を示す。人的介入情報としては介入フラグfおよび仮想人的介入力ベクトルBが人的介入情報生成部52によって生成される。介入フラグfはユーザがタッチセンサにタッチしているときf=1となり、両センサともタッチがないとf=0とリセットされる。また、右肩センサ変位量Δr、左肩センサ変位量Δlに対して人的介入情報生成部52は、仮想人的介入力ベクトルBの向きをΔrおよびΔlの所定の関数として、また、 仮想人的介入力ベクトルBの大きさを|Δr|および|Δl|の所定の関数として算出する。これらの関数は設計時の実験を通じて事前に決定されている。これらの関数は、ユーザがロボットを右に回転させたいときは右肩センサを引き左肩センサを押し出すなどの直感的な操作で人的介入が行えるように、仮想人的介入力ベクトルBを決めるものとして決定されたものである。
【0024】
なお、これらの値は切替手段7によって一定時間間隔で(例えば40msごとに)サンプリングされるので、人的介入情報生成部52はこのレンジで入力受信部51の出力をフィルタリングし、チャタリングなどの影響をなくしておくものとする。また、すでに背景技術として図8において説明したように、本実施例に於いても経路計画要求部33はほぼ一定距離のローカル経路移動ごとに次のローカル経路の計画を切替手段7に要求するが、その間人的介入情報入力手段5は常に最新の介入フラグfおよび仮想人的介入力ベクトルBをサンプリング更新しておく。その様子を図3の動作フローによって説明する。(図3の動作フロー全体が人的介入情報入力ステップである。)
人的介入情報入力手段5はまずステップS301でサンプリングトリガを待ち、トリガがあると、その時点でステップS302のタッチがあるかを判定し、タッチを検出するとステップS303で瞬間介入フラグf´=1を図示しないLIFOスタックに記録する。またタッチがなかった場合はステップS304でLIFOスタックに瞬間介入フラグf´=0を記録する。ここにLIFOスタックは直近のデータ書込みによって最過去のデータが押し出され、常に直近の一定点数のデータがスタックされるバッファである。
【0025】
ついで人的介入情報生成部52はステップS305で瞬間右肩センサ変位量Δr´と瞬間左肩センサ変位量Δl´を取得して瞬間仮想人的介入力ベクトルB´を作成する。その算出は、右肩センサ変位量Δr、左肩センサ変位量Δlの所定の関数f(Δr , Δl )でBの向きを求め、両変位の大きさ(絶対値)所定の関数g( |Δr| , |Δl| )でBの大きさを求める。 そしてステップS306でこれら瞬間仮想人的介入力ベクトルB´もLIFOスタックに記録する。
【0026】
ついで人的介入情報生成部52はステップS307で、LIFOスタック内の直近20点の瞬間介入フラグf´の平均値の四捨五入に基づいて介入フラグfの代表値として介入フラグf=0/1として図示しない共有バッファにおく。すなわち、人間のタッチ操作の意図しない変化をソフト的にフィルタリングしてその時点の介入フラグfとする。同様にステップS308で、LIFOスタック内の直近20点の瞬間右肩センサ変位量Δr´、瞬間左肩センサ変位量Δl´についてもその平均値を右肩センサ変位量Δr、左肩センサ変位量Δlとして共有バッファにおく。
【0027】
切替手段7は経路計画要求部33からの経路計画要求を受けた時点で前記共有バッファの介入フラグfの値に応じて完全自律移動経路計画エンジン4または半自律移動経路計画エンジン6を指定して経路計画を行わせる。この部分を図4の制御エンジン3と切替手段7の動作フローによって次に説明する。
【0028】
本実施例の制御エンジン3は図8の制御エンジン3と同じく、先に発した経路計画要求に対するローカル経路を受け取ったタイミングで次の経路計画要求割り込みを起こす。制御エンジン3はステップS401でこの経路計画要求割り込みがあるとステップS402で観測手段2から存在物情報を取得する。また、ステップS403で走行制御系1からエンコーダ情報を取得する。
【0029】
次いで自己位置推定部31はこれら存在物情報とエンコーダ情報と内部に持つ地図データベースとから、ステップS404で自己位置推定値を求める。また、地図グリッドマップ生成部32はステップS405で地図グリッドマップを生成する。これは特許文献1では統合マップと呼ぶもので、自己位置推定値を中心とした一定幅の周囲の矩形部分を小さなグリッドに分割し、各グリッドに存在物があれば1を、なければ0を記入した二次元マトリクスである。
【0030】
制御エンジン3はステップS406で自己位置推定値は終点付近かを判定し、そうであれば自律移動を終了し終わりとなる。そうでなければステップS407で経路計画要求部33は切替手段7にローカル経路計画要求を出す。このタイミングで切替手段7はステップS408で共有バッファの介入フラグfは1かを判定する。そして、もし1(フラグオン)であればステップS409で切替手段7は半自律移動経路計画エンジン6に経路計画要求を出す。また、介入フラグfが0(フラグオフ)であればステップS411にとび、切替手段7は完全自律移動経路計画エンジン4に経路計画要求を出す。そしてステップS410またはステップS412で対応する移動経路計画エンジンの移動点列生成部から移動点列が返されるのを待つ。半自律移動経路計画エンジン6における移動点列生成方法は後に図5、図6を用いて詳細に説明する。なお、完全自律移動経路計画エンジン4における移動点列生成方法は特許文献1に開示されており、本明細書では省略する。
【0031】
やがてステップS410またはステップS412で対応する移動経路計画エンジンの移動点列生成部から移動点列が返されると、ステップS413で切替手段7は走行コマンド生成部34に当該移動点列を渡す。ステップS414で走行コマンド生成部34は当該移動点列に対応する移動コマンドを生成して走行制御系1を制御する。ステップS415で走行制御系1は移動コマンドに応じてエンコーダ情報を送出しつつロボットを駆動する。
【0032】
以上の制御により、本実施例の自律移動ロボットは通常は従来の完全自律移動を行うが、人的介入がなされている間は、半自律移動経路計画エンジン6によって人的介入情報を取り入れた経路計画を行い、半自律移動を行うこととなる。そこで、次に図5、図6を用いて本実施例の半自律移動経路計画エンジン6の動作を説明する。
【0033】
図5は半自律移動経路計画エンジン6の動作フローである。(このフローの全体が半自律移動経路計画ステップである。)半自律移動経路計画エンジン6はステップS501で切替手段7からの経路計画要求の到来を待っており、経路計画要求を受けた場合、ステップS502でポテンシャル場仮想力生成部61は地図グリッドマップから自己位置推定値の周囲のポテンシャル場を算出する。ここでポテンシャル場仮想力ベクトルAについて図6によって説明する。
【0034】
図6(a)には図示しないが地図グリッドマップのイメージを示す。すなわち、地図グリッドマップは自己位置推定値を中心とする例えば200×200グリッドで、1グリッドは例えば10cm四方の正方形である。各グリッドは存在物の有無により値1/0をとる。そして図6(b)に示すように各グリッドG(x,y)のポテンシャル値P(x,y)を算出する。すなわち、(1)値1のグリッドではポテンシャル値P(x,y)=1(最大)である。また、(2)値0のグリッドでは値1の他グリッドg(v ,w)(すなわち存在物があるグリッド)までの距離d(v ,w)に対してポテンシャル関数U(v ,w)=F(d(v ,w))を定義する。関数Fの形は種々考えられるが、距離dが小さいほど大きな値をとるdの単調減少関数であって、例えば下記文献では、距離dが一定閾値d0を超える場合はU(v ,w)=0とし、距離dが一定閾値d0以下の場合に次式の形をとることを紹介している。(式中のηは正の重み係数である。)
【0035】
【数1】




【0036】
文献: 太田順、倉林大輔、新井民夫:「知能ロボット入門」, コロナ社(2001)
そして求めるポテンシャル値P(x,y)はこのU(v ,w)の総和として次式で算出される。
【0037】
【数2】


【0038】
このようなポテンシャル値P(x,y)をプロットすると、図6(c)に示すようなポテンシャル場のイメージが作られる。これによってポテンシャル場仮想力生成部61は自己位置推定値周辺のポテンシャル場の斜面状況を把握し、図6(d)に示すようにポテンシャル場仮想力ベクトルAを生成する。すなわち、ポテンシャル場仮想力ベクトルAは小球が自己位置推定値から仮想重力によってこの斜面を転がり落ちる方向と大きさをもつベクトルとして算出できる。
【0039】
ここで、再び図5に戻ってステップS503以下を説明する。ここでは、半自律移動経路計画エンジン6はローカル経路である所定点数の移動点列を求めるために、仮想ロボットを移動させつつその軌跡を記録する。すなわち、経路生成部62はステップS503で変数j=0とし、ステップS509でj<J(所定点数)である間jをインクリメントしつつ移動点列を蓄積する。以下ではローカル経路第j番目の仮想ロボット位置xy(j)でのポテンシャル場仮想力ベクトルAを特にA(j)と表記し、仮想人的介入力ベクトルBを特にB(j)と表記する。
【0040】
まず、j=0すなわち開始点における第1移動点をステップS504から508で求めている。すなわち、ステップS504で経路生成部62はローカル経路第0番目の仮想ロボット位置xy(0)を自己位置推定値におく。ステップS505で経路生成部62はローカル経路第0番目の仮想ロボット位置xy(0)におけるポテンシャル場仮想力ベクトルA(0)を受け取る。
【0041】
次いでステップS506で経路生成部62は人的介入情報生成部52の生成した仮想人的介入力ベクトルB(0)を共有バッファから取得する。ここに仮想人的介入力ベクトルB(j)はすでに図2で説明したように共有バッファ上で40msごとに更新されているものをローカル経路第j番目の計算時点で参照するものであり、図6(d)に示すように、ポテンシャル場で人的介入によって小球を移動させたい方向と大きさとして意味づけられる。
【0042】
次にステップS507で経路生成部62はポテンシャル場仮想力ベクトルA(0)と仮想人的介入力ベクトルB(0)との合力ベクトルを算出してポテンシャル場における仮想力ベクトルC(0)を得る。かくしてステップS508では経路生成部62は仮想力ベクトルC(0)からローカル経路第0番目からの仮想ロボットの仮想回転速度ir(0)、ローカル経路第0番目からの仮想ロボットの仮想移動速度iv(0)を求め、所定単位距離Dを移動させ、ローカル経路第0番目からの移動後の仮想ロボットの位置xy(1)を求めて軌跡メモリに記録する。
【0043】
次にステップS509でj<J(所定点数)かを判定し、まだ点数が足りないときはステップS510でj=j+1とし、ローカル経路第j番目の仮想ロボット位置xy(j)における移動点をステップS511から515で求めている。この内容はローカル経路第0番目の仮想ロボット位置xy(0)における上記ステップS504から508の説明と同様であるので、説明を要しないであろう。
【0044】
かくして、j=Jにいたると、軌跡メモリにはJ点の移動点列(ローカル経路第j番目の仮想ロボット位置xy(j)、ローカル経路第j番目からの仮想ロボットの仮想回転速度ir(j)、ローカル経路第j番目からの仮想ロボットの仮想移動速度iv(j)の組の集合)が記録されている。そこでステップS516で移動点列生成部63は軌跡メモリ内のJ点の移動点列を切替手段7に返して半自律移動経路計画エンジン6の動作が終了する。
【実施例2】
【0045】
本実施例の自律移動ロボットのブロック構成は図7に示される。これを第1実施例の図1の構成と比較すると、本実施例では警告伝達手段8が付加されており、これに伴って経路生成部62が経路生成部6’2に変更された半自律移動経路計画エンジン6’を有している。本警告伝達手段8は人的介入を行うユーザに警告を伝達する手段であり、具体的には、各種ディスプレイ表示やランプ、音声などによる警告を伝達する装置である。本警告伝達手段8は半自律移動経路計画エンジン6’の経路生成部6’2によって制御される。
【0046】
経路生成部6’2の動作について、図5の第1実施例の半自律移動経路計画エンジン6の動作フローを援用して説明する。図5のステップS508,515では経路生成部62は仮想力ベクトルC(j)から無条件にローカル経路第j番目からの仮想ロボットの仮想回転速度ir(j)、ローカル経路第j番目からの仮想ロボットの仮想移動速度iv(j)を求め、所定単位距離Dを移動させていた。
【0047】
しかし、人的介入のミスで仮想力ベクトルCの値が不適当となり、ローカル経路第j番目の仮想ロボット位置xy(j)のポテンシャル値よりローカル経路第j+1番目の仮想ロボット位置xy(j+1)のポテンシャル値の方が不当に高くなる場合には本経路生成部6’2においてはこの経路を採用しない。ここに不当と評価する条件は種々考えられるが、例えば本実施例ではポテンシャル値が極めて1(最大値)に近くなるなどのポテンシャル値評価閾値を越えた場合を不当と評価する。
【0048】
このような場合には、経路生成部6’2は算出不可能であると判定し、仮想人的介入力ベクトルB(j)の値を0に置き換えて(すなわち人的介入を無視して)経路を再計算する。その結果、該移動経路が算出可能である場合に、経路生成部6’2はこれを採用するとともに、警告伝達手段8に警告を出させる。これによって、警告伝達手段8は人的介入を行うユーザに警告を伝達する。
【0049】
すなわち、不用意な人的介入によって移動経路が算出不可能となる方向に誘導せられても、この人的介入を無視して移動することにより異常終了を回避し、そのことを警告伝達手段8によってユーザに警告する。
【0050】
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)所与の始点、終点間を自律的に移動する自律移動ロボットであって、
該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御系と、
該自律移動ロボットの周囲の存在物の相対位置を観測する観測手段と、
外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力手段と、
前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画エンジンと、
前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成部と、
を有することを特徴とする自律移動ロボット。
(付記2)付記1記載の自律移動ロボットであって、さらに、
地図データベースに基づく壁や柱などの固定物と観測手段によりその都度に観測した動的障害物とを含む存在物情報を有した地図グリッドマップを生成する地図グリッドマップ生成部を有し、
さらに、前記半自律移動経路計画エンジンは、
前記生成された地図グリッドマップからポテンシャル場仮想力ベクトルを算出するポテンシャル場仮想力生成部と、
前記算出されたポテンシャル場仮想力ベクトルと、前記人的介入情報入力手段が生成する仮想人的介入力ベクトルとから経路を生成する経路生成部と、
を有することを特徴とする自律移動ロボット。
(付記3)付記1ないし2記載の自律移動ロボットであって、さらに、
前記エンコーダ情報および前記観測された存在物位置情報を所与として組み込むが、前記人的介入情報は組み込まないアルゴリズムで移動経路を作成する完全自律移動経路計画エンジンと、
前記人的介入情報に基づいて、前記完全自律移動経路計画エンジンが作成する移動経路と前記半自律移動経路計画エンジンが作成する移動経路のいずれを採用するかを切り替える切替手段と、
を有し、さらに、
前記走行コマンド生成部は前記切替手段によって採用された移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成することを特徴とする自律移動ロボット。
(付記4)付記1ないし3記載の自律移動ロボットであって、さらに、
前記人的介入情報入力手段は、少なくともひとつのタッチセンサからなる入力受信部と、
該センサタッチ時のセンサ状態に基づいて仮想人的介入力ベクトルの向きと大きさとを生成する人的介入情報生成部と、
を有することを特徴とする自律移動ロボット。
(付記5)付記1ないし4記載の自律移動ロボットであって、さらに、
人的介入を行うユーザに警告を伝達する警告伝達手段を有し、
前記切替手段によって前記半自律移動経路計画エンジンが作成する移動経路が採用されており、かつ、該移動経路が算出不可能であり、かつ前記人的介入情報を無視すると該移動経路が算出可能である場合に、該半自律移動経路計画エンジンは前記人的介入情報を無視して移動経路を算出するとともに、前記警告伝達手段によって人的介入を行うユーザに警告を伝達すること、
を特徴とする自律移動ロボット。
(付記6)所与の始点、終点間を自律的に移動する自律移動ロボットの自律移動方法であって、
該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御ステップと、
該自律移動ロボットの周囲の存在物の相対位置を観測する観測ステップと、
外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力ステップと、
前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画ステップと、
前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成ステップと、
を有することを特徴とする自律移動方法。
(付記7)所与の始点、終点間を自律的に移動する自律移動ロボットの自律移動情報処理をコンピュータに実行させる自律移動情報処理プログラムであって、
該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御ステップと、
該自律移動ロボットの周囲の存在物の相対位置を観測する観測ステップと、
外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力ステップと、
前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画ステップと、
前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成ステップと、
をコンピュータに実行させることを特徴とする自律移動情報処理プログラム。
(付記8)所与の始点、終点間を自律的に移動する自律移動ロボットの自律移動情報処理をコンピュータに実行させる自律移動情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該自律移動ロボットの走行に応じてエンコーダ情報を送出しつつロボットを駆動する走行制御ステップと、
該自律移動ロボットの周囲の存在物の相対位置を観測する観測ステップと、
外部からの人的介入による情報である人的介入情報を入力する人的介入情報入力ステップと、
前記エンコーダ情報および前記観測された存在物位置情報を所与として、かつ前記人的介入情報を所与とするアルゴリズムで移動経路を作成する半自律移動経路計画ステップと、
前記移動経路に基づいて該自律移動ロボットを移動させる走行コマンドを生成する走行コマンド生成ステップと、
をコンピュータに実行させることを特徴とする自律移動情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【産業上の利用可能性】
【0051】
本発明の自律移動ロボットは、自律移動中の障害物の回避が不能等の突発的事態に対処するための人的介入や、自律移動中に一時的な経路変更をするなどの人的介入を行う場合に、当初の自律移動を強制終了して新たな移動条件を与えて新たな自律移動を開始するという硬直性がないので、自律移動中の人的介入を柔軟に行うことができ、オフィスや倉庫などの人間と共存する空間での運搬や案内業務を行う装置提供ビジネスなどで利用される可能性がある。
【図面の簡単な説明】
【0052】
【図1】本発明の第1実施例の自律移動ロボットのブロック構成
【図2】人的介入情報入力手段5の実施例
【図3】第1実施例の人的介入情報入力手段5の動作フロー
【図4】第1実施例の制御エンジン3と切替手段7の動作フロー
【図5】第1実施例の半自律移動経路計画エンジン6の動作フロー
【図6】第1実施例におけるポテンシャル場のイメージと仮想力ベクトル例
【図7】本発明の第2実施例の自律移動ロボットのブロック構成
【図8】従来の自律移動ロボットのブロック構成例
【符号の説明】
【0053】
1 走行制御系
2 観測手段
3 制御エンジン
4 完全自律移動経路計画エンジン
5 人的介入情報入力手段
6 半自律移動経路計画エンジン
6´ 半自律移動経路計画エンジン
7 切替手段
8 警告伝達手段
31 自己位置推定部
32 地図グリッドマップ生成部
33 経路計画要求部
34 走行コマンド生成部
51 入力受信部
52 人的介入情報生成部
61 ポテンシャル場仮想力生成部
62 経路生成部
6´2 経路生成部
63 移動点列生成部
A ポテンシャル場仮想力ベクトル
B 仮想人的介入力ベクトル
f 介入フラグ
Δr 右肩センサ変位量
Δl 左肩センサ変位量
xy(j) ローカル経路第j番目の仮想ロボット位置
iv(j) ローカル経路第j番目からの仮想ロボットの仮想移動速度
ir(j) ローカル経路第j番目からの仮想ロボットの仮想回転速度
【出願人】 【識別番号】000005223
【氏名又は名称】富士通株式会社
【出願日】 平成18年7月13日(2006.7.13)
【代理人】 【識別番号】100108187
【弁理士】
【氏名又は名称】横山 淳一


【公開番号】 特開2008−21178(P2008−21178A)
【公開日】 平成20年1月31日(2008.1.31)
【出願番号】 特願2006−193143(P2006−193143)