(57)【要約】【課題】脚式移動ロボットにおいて第１の目標位置を経由して第２の目標位置に向けて移動する場合の移動効率を高くする。【解決手段】第１の目標位置を経由する場合に、できるだけ少ない歩数でその経由における方向転換経路が第１の目標位置に対する許容誤差範囲内を通過するように、踏み出し角度及び歩幅を算出し、算出された踏み出し角度及び歩幅で歩行することにより両目標位置を結ぶ線分上に達する場合にはその設定条件で歩行して方向転換する。現在位置から第１の目標位置を経由してカーブを移動するように第２の目標位置に向かう場合に、第１の目標位置に対して経路が内側となるため、第１及び第２の目標位置を結ぶ線より外側に大きく膨らむことを防止し得る。また、歩幅及び斜め踏み出し角度を一定にして方向転換することにより、移動効率が高く安定した脚式移動が可能となる。【選択図】図３
2006297496.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２本の脚を有しかつ１歩ずつ踏み出して自律的に移動可能な脚式移動ロボットを、現在位置から次の移動目標となる第１の目標位置を経由して当該第１の目標位置に向かう方向とは異なる方向にあるその次の移動目標となる第２の目標位置に向けて移動させるための脚式移動ロボットの移動制御方法であって、
前記ロボットの移動領域内の位置情報を参照可能な位置情報参照手段を有し、
前記位置情報参照手段を参照して、前記現在位置を検出すると共に前記第１の目標位置と前記第２の目標位置とを設定する過程と、
前記第１の目標位置を経由する時の通過位置に対して前記第１の目標位置からの許容誤差範囲を設定する過程と、
前記第１の目標位置を経由して前記第２の目標位置に向けて前進しながら方向転換するための方向転換経路を、斜め前方に踏み出すための踏み出し角度及び歩幅を算出して設定する過程と、
前記方向転換経路が前記許容誤差範囲内を通過するか否かを判別する過程と、
前記通過すると判別された場合には前記算出された踏み出し角度と歩幅とを前記方向転換経路における移動制御に採用し、前記通過しないと判別された場合には前記第１の目標位置に到達したと判断してから前記第２の目標位置に向けて方向転換する制御に移る過程とを有することを特徴とする脚式移動ロボットの移動制御方法。
【請求項２】
前記踏み出し角度及び前記歩幅にて前記歩数分を移動した位置が前記両目標位置を通る直線上にあるか否かを判別する過程をさらに有し、
前記直線上にあると判別された場合には前記前記算出された踏み出し角度と歩幅とを前記方向転換経路における移動制御に採用し、前記直線上にないと判別された場合には前記第１の目標位置に到達したと判断してから前記第２の目標位置に向けて方向転換する制御に移るとすることを特徴とする請求項１に記載の脚式移動ロボットの移動制御方法。
【請求項３】
前記許容誤差範囲をユーザが任意に設定することを特徴とする請求項１または請求項２に記載の脚式移動ロボットの制御方法。
【請求項４】
前記方向転換経路を移動している時に前記ロボットの頭部を前記第２の目標位置に向けることを特徴とする請求項１乃至請求項３のいずれかに記載の脚式移動ロボットの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、少なくとも２本の脚を有しかつ１歩ずつ踏み出して自律的に移動可能な脚式移動ロボットの移動制御方法に関するものである。
【背景技術】
【０００２】
従来、目標位置でのロボットの姿勢（目標に対する正対）を考慮して移動経路を生成するようにした移動ロボットが同一出願人より提案されている（例えば特許文献１参照）。
【０００３】
【特許文献１】特開２００４−２０９５６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
一方、移動ロボットを複数の地点を経由させて移動させる場合には次の目標位置（第１の目標位置）に達したらその次の目標位置（第２の目標位置）に向けて向きを変えて移動させることになる。そのような制御を上記移動ロボットの制御により行おうとすると、例えば第１の目標位置における正対方向を第２の目標位置の方向とすることが考えられる。
【０００５】
しかしながら、上記移動ロボットの制御にあっては、第１の目標位置に対してのみの経路の生成であり、第２の目標位置に対しては第１の目標位置に達してから設定することになるため、第１の目標位置から第２の目標位置に向かうために方向転換する角度が大きい場合には第１の目標位置で大きく向きを変えることになる。
【０００６】
上記移動ロボットの制御においても、円滑な方向転換を行うべく、第１の目標位置の近傍（許容誤差範囲）に入ったら向きを変える（正対させる）ようにしているが、そのようにしても、向きを変え始めるのは第１の目標位置近傍に達してからであるため、方向転換角度が大きい場合には外側に大きく膨らんでしまう。そのため、ロボットの移動経路に大きなマージンを設ける必要があり、経路が限定されてしまうなど移動効率が悪いという問題があった。例えば舞台上でロボットを移動させる場合に舞台の縁の近く（観客席に近い所）でロボットを歩行させながら方向転換させることができないなどの不都合がある。
【課題を解決するための手段】
【０００７】
このような課題を解決して、脚式移動ロボットにおいて次の目標位置を経由してその次の目標位置に向けて移動する場合の移動効率を高くするために本発明に於いては、少なくとも２本の脚を有しかつ１歩ずつ踏み出して自律的に移動可能な脚式移動ロボットを、現在位置から次の移動目標となる第１の目標位置を経由して当該第１の目標位置に向かう方向とは異なる方向にあるその次の移動目標となる第２の目標位置に向けて移動させるための脚式移動ロボットの移動制御方法であって、前記ロボット（１）の移動領域内の位置情報を参照可能な位置情報参照手段（１１）を有し、前記位置情報参照手段（１１）を参照して、前記現在位置（Ｐ０）を検出すると共に前記第１の目標位置（Ｐ１）と前記第２の目標位置（Ｐ２）とを設定する過程と、前記第１の目標位置（Ｐ１）を経由する時の通過位置に対して前記第１の目標位置（Ｐ１）からの許容誤差範囲（ＡＥ）を設定する過程と、前記第１の目標位置（Ｐ１）を経由して前記第２の目標位置（Ｐ２）に向けて前進しながら方向転換するための方向転換経路（Ｒｃ）を、歩数（ｎ）が少なくなることを優先して斜め前方に踏み出すための踏み出し角度（θｗ）及び歩幅（Ｗ）を算出して設定する過程と、前記方向転換経路（Ｒｃ）が前記許容誤差範囲（ＡＥ）内を通過するか否かを判別する過程と、前記通過すると判別された場合には前記算出された踏み出し角度（θｗ）と歩幅（Ｗ）とを前記方向転換経路における移動制御に採用し、前記通過しないと判別された場合には前記第１の目標位置（Ｐ１）に到達したと判断してから前記第２の目標位置（Ｐ２）に向けて方向転換する制御に移る過程とを有するものとした。
【０００８】
特に、前記踏み出し角度（θｗ）及び前記歩幅（Ｗ）にて前記歩数（ｎ）分を移動した位置が前記両目標位置（Ｐ１・Ｐ２）を通る直線（Ｌ）上にあるか否かを判別する過程をさらに有し、前記直線上にあると判別された場合には前記前記算出された踏み出し角度（θｗ）と歩幅（Ｗ）とを前記方向転換経路における移動制御に採用し、前記直線（Ｌ）上にないと判別された場合には前記第１の目標位置（Ｐ１）に到達したと判断してから前記第２の目標位置（Ｐ２）に向けて方向転換する制御に移ると良い。また、前記許容誤差範囲（ＡＥ）をユーザが任意に設定したり、前記方向転換経路を移動している時に前記ロボット（１）の頭部を前記第２の目標位置に向けたりすると良い。
【発明の効果】
【０００９】
このように本発明によれば、脚式移動ロボットが現在位置から第１の目標位置を経由して第２の目標位置に移動するべく第１の目標位置の経由時に向きを換えて移動する場合に、その向きを換えるための方向転換経路が第１の目標位置に対して設定された許容誤差範囲内を通るように、踏み出し角度（斜め前方に踏み出すための直進に対する角度）及び歩幅を設定することにより、現在位置から第１の目標位置に対してカーブを描くように経由して第２の目標位置に向かう場合に、第１の目標位置に対して経路が内側となるため、第１及び第２の目標位置を結ぶ線より外側に大きく膨らむことを防止し得る。また、歩幅及び斜め踏み出し角度を一定にして方向転換することにより、移動効率が高く安定した脚式移動が可能となる。
【００１０】
特に、算出された踏み出し角度及び歩幅で歩数分移動した位置が両目標位置を通る直線上にあるか否かを判別することにより、より一層正確な移動経路を設定し得る。また、許容誤差範囲をユーザが任意に設定することにより、ロボットの移動経路をユーザが調整して設定することができるため、移動領域内の障害物や例えば舞台上の立ち位置などを考慮することもできる。また、方向転換経路を移動している時に頭部を第２の目標位置に向けるようにすることにより、ロボットの移動していく方向を視認することができ、ロボットの移動領域内に人が混在する場合などにロボットの進行方向を予測して人が避けることができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態を、図面を参照しながら説明する。図１は本発明が適用される脚式移動ロボットの移動経路の一例を示す平面図である。脚式移動ロボットとしては、自律的に例えば２足歩行により移動可能な２本の脚を有する形態であって良い。なお、１歩ずつ脚を踏み出して前進するタイプであれば良く、３本以上の脚を設けたものであっても良い。
【００１２】
図１には、脚式移動ロボットの移動経路Ｒが実線で示されており、その移動方向が矢印で示されている。図では、出発位置Ｐ０から次の到達目標である第１の目標位置Ｐ１に向かい、第１の目標位置Ｐ１を経由してその次の到達目標である第２の目標位置Ｐ２に向かい、その第２の目標位置Ｐ２を経由してさらにその次の到達目標である第３の目標位置Ｐ３に向かい、その第３の目標位置Ｐ３を経由したら出発位置Ｐ０に戻ってくるように設定された移動経路Ｒが示されている。
【００１３】
なお、このように各目標位置Ｐ１・Ｐ２・Ｐ３を経由して移動する場合には、必ずしも目標位置Ｐ１・Ｐ２・Ｐ３の上を通過する必要はない。各目標位置Ｐ１・Ｐ２・Ｐ３にあっては所定の許容誤差範囲ＡＥが設定されており、図１に示されるように許容誤差範囲ＡＥ内を移動経路Ｒが通過すれば各目標位置Ｐ１・Ｐ２・Ｐ３を通過したとするようにされている。上記許容誤差範囲ＡＥは、予め各目標位置毎に大きさを設定しておいても良いが、例えば経由対象の目標位置における方向転換角度に応じて大きさを設定するなどしても良い。
【００１４】
次に、本発明が適用される脚式移動ロボット１の概略構成を図２のブロック図を参照して次に示す。図２に示すように、本ロボット１には、スピーカ２、マイクロフォン３、及び左右一対のビデオカメラ４が設けられており、ビデオカメラ４からの画像信号が画像入力部５を介して画像認識部６に入力され、マイクロフォン３からの音信号が音源定位部７並びに音声認識部８に入力され、発話生成部９で生成された合成音声信号がスピーカ２から出力されるようになっている。そして発話生成部９からの発話信号が音声認識部８に入力され、音声認識部８からの音声認識信号が発話生成部９にフィードバックされるようになっている。
【００１５】
ビデオカメラ４は、モノクロまたはカラーの撮像素子を備えており、パン（左右方向）及びチルト（上下方向）動作がモータによって行われる。このビデオカメラ４からの画像出力は、フレームグラバーによってディジタル化されて画像入力部５に取り込まれ、ここで連続または任意の間隔の２フレーム間の差分から動体が抽出される。そして画像認識部６において、左右一対のビデオカメラ４の画像から立体視して距離情報を求めると共に、ロボット１の移動領域（図１のＥ）の環境地図が作成される。また画像情報からオプティカルフローに基づいて人の輪郭や移動体の位置を求め、人の顔を識別するための画像処理が行われる。
【００１６】
音源定位部７では、複数のマイクロフォン３間の音圧差及び音の到達時間差に基づいて音源位置を特定する。また、音の立ち上がり部分から、人が発する音声であるか、何らかの物体同士がぶつかり合う衝撃音であるかを推定する。音声認識部８では、予め登録された語彙を参照してマイクロフォン３からの音声信号を認識し、人の命令や意図を認識する。発話生成部９では、後記する人応答部１０からの指示もしくは発話生成部９の内部での音声認識の結果により、人に伝える内容を音声合成してスピーカに出力する言語処理を行う。
【００１７】
このロボット１には、予め登録された地図（移動領域Ｅの座標）情報の更新およびロボット１の上記移動経路Ｒの設定やタスクの設定を行うための地図データベースが格納された位置情報参照手段として地図管理部１１が設けられている。また、ロボット１には、ＩＤ・氏名・性別・生年月日・血液型などの一般情報および会社名・所属・役職・電話番号・メールアドレス・端末情報などの職業情報が格納された個人情報データベースと、顔認識のための顔データベースとを備える個人情報管理部１２とが設けられたロボット支援サーバ１３からの情報が与えられるようになっている。なお、地図管理部１１をロボット支援サーバ１３に設けても良く、その場合にはロボット１との間で無線通信による位置情報の授受が行われる。
【００１８】
人応答部１０は、画像、音、言語、地図、および個人の情報を基に、ロボット１の周囲の人情報（例えばオペレータと来訪者とを区別する）を管理すると共に、人とのコミュニケーションを支援する人情報マップと、人とのコミュニケーションにおけるロボットの行動様式を定義し、条件によって遂行する行動を制御管理するシナリオ管理部とを備えている。
【００１９】
画像認識部６には、ロボット支援サーバ１３に設けられた地図管理部１１に格納されている地図情報が入力される。また画像認識部６では、ロボット支援サーバ１３に設けられた個人情報管理部１２に格納されている顔データベースを参照して個人の顔を識別する。
【００２０】
移動計画部１４では、接近したい対象（人や物体）から視線を外さずに移動する場合には、ロボット１の移動経路を設定し、歩行指示値を移動指示部１５に出力する。また、移動計画部１４にあっては、画像認識部６の画像処理信号が直接入力され、地図管理部１１からの位置情報を参照しつつロボットの周辺の障害物の有無をチェックし、移動中に現れた障害物あるいは人などに衝突しないように、移動速度や移動経路の変更あるいは停止指示を移動指示部１５に出力する。
【００２１】
行動指示部１６では、非同期で入力される移動指示部１５からの移動指示値と人応答部１０からのアクション指示値とに基づいた行動指示値を生成し、これを移動制御部１７並びに手腕制御部１８に与え、ロボット１の運動を制御する。ここで移動制御部１７は、２脚あるいは３脚以上の複数脚の移動機構部１９を制御し、歩行型（脚式）における歩幅および歩数の指示を受け、それに基づいて移動機構部１９の制御を行う。また手腕制御部１８は、手・腕に設けられたアクチュエータなどの手腕機構部２０を、行動指示部１６が発する所定の動作指令に基づいて制御する。また、移動計画部１４並びに行動指示部１６は、人応答部１０との間で互いに信号の授受が行われる。
【００２２】
自己位置推定部２１は、ロボット１の方向転換角度や移動距離を移動制御部１７から入力し、これとジャイロコンパス、地磁気センサ、或いはガスレートセンサを用いた位置補正装置、もしくはＤＰＳ等による自己位置検知装置の検出値から、最新の自己位置及び姿勢を推定し、これを行動指示部１６を介して移動計画部１４にフィードバックする。これによって目標地点と自己位置とを比較し、進路や姿勢の補正を行う。
【００２３】
一方、ビデオカメラ４は、その視線の向きを自由に変えられるようになっており、画像認識部６で得られた目標対象の位置情報をパン・チルト角度に変換し、それらの値に基づいてビデオカメラ４の動きを制御することにより、目標対象を注視することができるようになっている。また、音源定位部７から得られた音の種別および音源位置の情報に基づいてその音源方向を注視させることもできるし、人応答部１０並びに移動計画部１４からの情報に基づいて視線を任意位置に向けさせることもできる。
【００２４】
ロボット支援サーバ１３には、キーボードやタッチパネルなどのユーザ操作部２２およびディスプレーパネルなどのモニタ２３が接続され、各種情報の新規・更新登録をユーザーが任意に行うことができるようになっている。なお、ユーザ操作部２２は、ロボット１の起動・停止・原点復帰などをオペレータが指示してロボット１を遠隔操作するためのユーザインターフェースとしても用いられ、モニタ２３は、マイクロフォン３からの音やビデオカメラ４の映像をオペレータが監視し得るようになっている。
【００２５】
また、ロボット１の頭部を左右方向に首振りするために頭部制御部２４及び頭部機構部２５が設けられている。頭部制御部２４は、首に設けられたアクチュエータなどの頭部機構部２５を、行動指示部１６が発する所定の動作指令に基づいて制御する。
【００２６】
次に、２足歩行を行う脚式移動ロボットの場合の移動経路設定に関するアルゴリズムについて、図３のフロー図を参照して説明する。なお、ロボット１の現在位置は図１の出発位置Ｐ０であるとする。また、図４に示されるように、ロボット１の向いている方向をＸ軸とし、現在位置を原点（例えば踵の位置）としてＸ軸に直交する軸をＹ軸とする。なお、以下の説明ではＸ軸・Ｙ軸共ロボット１の進行方向を正とする。
【００２７】
本ロボット１の歩行制御にあっては、歩行させる場合の位置姿勢（ｘ，ｙ，θｚ）を設定する。この場合のｘはロボットの向いた方向に対する１歩当たりの進行量であり、ｙはそれに直交する方向に対する１歩当たりの進行量であり、θｚはＸ軸に対する踏み出し方向線のなす角度（踏み出し角度）である。例えば、歩幅Ｗで直進する場合には（Ｗ，０，０）となり、横歩きする場合には（０，Ｗ，０）となり、前進で斜め方向（Ｘ軸に対する角度θｗ）に踏み出す場合には（Ｗ，０，θｗ）となる。本制御では、前進しかつ斜め方向に踏み出すことにより方向転換していく経路（方向転換経路）を求めるため、上記歩幅Ｗ及び踏み出し角度θｗを求めることになる。
【００２８】
まずステップＳＴ１で、次の目標位置とその次の目標位置となる第１及び第２の目標位置Ｐ１・Ｐ２を通る直線またはその延長線（線分Ｌ）とＸ軸との交点Ｐｘが正の値となる位置か否かを判別する。ここで交点Ｐｘが正ということは、ロボット１の現在位置で向いている方向に線分Ｌがあるということである。ロボット１の現時点における到達目標は、第２の目標位置Ｐ２であり、その第２の目標位置Ｐ２に至るために線分Ｌ上に乗ることを目的とする。したがって、上記交点Ｐｘが正という条件により、ロボット１は前進してその線分Ｌに乗ることができる。
【００２９】
なお、交点Ｐｘが正になる場合として、例えば図４に示されるように、第１の目標位置Ｐ１ａ及び第２の目標位置Ｐ２ａが共にＸ軸の負の領域にあったとしても両点を結ぶ線分Ｌａの延長線がＸ軸の正の領域で交差する場合がある。その場合には線分Ｌａの延長線上に対して前進しながら到達可能である。
【００３０】
一方、図４に示されるように、例えば第１の目標位置Ｐ１ｂがＸ軸の正側に位置していたとしても、その第１の目標位置Ｐ１ｂと第２の目標位置Ｐ２ｂとを結ぶ線分Ｌｂの延長線とＸ軸との交点が負となる場合には、第１の目標位置Ｐ１ｂに向かった後に第２の目標位置Ｐ２ｂに方向転換する場合に大きくＵターンするような動作となり、円滑な方向転換をすることができない。また、第１の目標位置が現在位置に対してＸ軸の負の領域に位置している場合には現在位置から後退することになる。したがって、それらの場合には本制御の対象外とする。
【００３１】
上記したように前進して目標に近付くことができると判別された場合（Ｐｘ＞０）にはステップＳＴ２に進み、そこでは第２の目標位置Ｐ２に向くために要する最小歩数ｎminを算出し、それを方向転換時の歩数ｎの初期値として設定する。最小歩数ｎminは、第２の目標位置Ｐ２に向くための方向転換角度θｃ（Ｘ軸から線分Ｌへ向きを変えるための角度）と１歩を踏み出す時の最大踏み出し角度θｗmaxとに基づいて例えば式（１）により算出する。脚式移動ロボットの場合には直進に対して斜め前方に踏み出すことにより向きを変えることができ、その１歩を踏み出す時のロボット１の向き（ボディの向き）が変わる角度を踏み出し角度θｗとする（図５参照）。なお、最大踏み出し角度θｗmaxは、仕様によりロボット１が最大に向きを変えることができる角度である。
ｎmin＝［θｃ／θｗmax］＋１  …（１）
なお、［］はガウス記号である。
【００３２】
次のステップＳＴ３では上記歩数ｎから方向転換角度θｃに要する１歩の踏み出し角度θｗを式（２）により算出する。
θｗ＝θｃ／ｎ  …（２）
次のステップＳＴ４では、ステップＳＴ２で設定した歩数ｎで方向転換角度θｃだけ向きを変えかつ線分Ｌまたはその延長線上に乗るための歩幅（１歩の踏み出し量）Ｗを算出する。まず、ｎ歩進んだ位置の座標（Ｘｎ，Ｙｎ）は次式で表せる。
【００３３】
【数１】
2006297496.tif 000003
また、第１の目標位置Ｐ１の座標を（ｘ１，ｙ１）とし、第２の目標位置Ｐ２の座標を（ｘ２，ｙ２）とすると、（Ｘｎ，Ｙｎ）が両位置Ｐ１・Ｐ２を通る直線上に存在するための条件は次式となる。
（Ｘｎ−ｘ１）／（Ｙｎ−ｙ１）＝（Ｘｎ−ｘ２）／（Ｙｎ−ｙ２）  …（５）
ここで、式の簡略表示のために、
【００３４】
【数２】
2006297496.tif 000004
と表せる。そして、式（６）・（７）を上記式（５）に代入して整理すると、
【００３５】
【数３】
2006297496.tif 000005
となり、歩幅Ｗが一意に決定される。
【００３６】
次のステップＳＴ５では、ステップＳＴ４で算出された歩幅Ｗがロボット１の仕様における最大歩幅Ｗmax以下であるか否かを判別する。算出された歩幅Ｗが最大歩幅Ｗmaxを超えていた場合には仕様上歩行不可能なため、ステップＳＴ６に進み、そこで歩数ｎをインクリメントしてステップＳＴ３に戻り、踏み出し角度θｗを再計算し、それに応じて歩幅Ｗを計算し直して、歩幅Ｗが最大歩幅Ｗmax以下になるまでステップＳＴ３〜ＳＴ５を繰り返す。歩幅Ｗが最大歩幅Ｗmax以下であると判別された場合にはステップＳＴ７に進む。
【００３７】
ステップＳＴ７では、ステップＳＴ５までに求めた各値による方向転換経路が経由する対象となる第１の目標位置Ｐ１に対して許容誤差範囲（図５のＡＥ）内を通過するか否かを判別する。ここでは、座標を踵の位置としており、方向転換するための経路（図５の想像線）Ｒｃが終了する（ｎ歩目）までの踵の座標位置が予測できるため、その踵の予測座標位置が許容誤差範囲ＡＥ内にあるか否かを判別することで上記判別が可能である。
【００３８】
例えば図５に示されるように、現在位置の座標（０，０）に対して、座標予測位置Ｒｃ１が（Wcosθ，Wsinθ）である場合に、次の座標予測位置Ｒｃ２は（Wcosθ＋Wcos２θ，Wsinθ＋Wsin２θ）となる。図５では、その座標予測位置Ｒｃ２が第１の目標位置Ｐ１に対する許容誤差範囲ＡＥ内を通過する場合が示されている。
【００３９】
ステップＳＴ７で許容誤差範囲ＡＥ内を通過すると判別された場合にはステップＳＴ８に進む。ステップＳＴ８では、経路Ｒの一部である方向転換するための経路Ｒｃの終了位置が線分Ｌ上であるか否かを判別する。例えば図６（ａ）に示されるように、両位置Ｐ１・Ｐ２を結ぶ線分Ｌ上に方向転換するための経路Ｒｃの終了位置（ｎ歩目の踵位置）Ｒｃｅがある場合には、その終了位置Ｒｃｅでボディが第２の目標位置Ｐ２を向いており、そのまま第２の目標位置Ｐ２に向けて前進することができる。したがって、線分Ｌ上に終了位置Ｒｃｅがある場合にはステップＳＴ９に進み、そこで、ステップＳＴ３で算出された踏み出し角度θｗと、ステップＳＴ４で算出された歩幅Ｗとを前進歩行の制御値として採用し、本制御ルーチンを終了する。そして、図示されないメインルーチンにおいてそれらの制御値に基づいて経由移動時の方向転換の歩行制御を実行する。
【００４０】
なお、上記線分Ｌ上に終了位置Ｒｃｅがあるとされる条件としては、厳密に線分Ｌ上にあるとする必要はなく、１歩における踏み出し位置の誤差範囲を許容する幅をもたせ、その幅以内であれば線分Ｌ上であるとして良い。
【００４１】
それに対して、ステップＳＴ１で線分ＬとＸ軸との交点Ｐｘが負であると判別された場合や、ステップＳＴ７で第１の目標位置Ｐ１の許容誤差範囲ＡＥ外を通過すると判別された場合や、ステップＳＴ８でｎ歩目が線分Ｌの外にあると判別された場合には、それぞれステップＳＴ１０に進む。それらの場合には、そのまま前進しながら方向転換しようとして本制御を用いた場合に第１の目標位置Ｐ１を経由して第２の目標位置Ｐ２に到達することができないため、本制御の対象外となる。
【００４２】
ステップＳＴ１０では、本制御の目的である２つ先の目標（Ｐ２）に向けて効率良く円滑な方向転換をした前進を行うことができないと判別された場合となり、デフォルト歩行の制御を採用する。ここでデフォルト歩行とは、本実施の形態にあっては、目標位置に体を向けるように回転しながら、踵位置を直線的に目標位置に近づける歩行のことである。したがって、第１の目標位置Ｐ１に正対させて移動している場合であって方向転換するには遠過ぎる場合（ステップＳＴ７で許容誤差範囲ＡＥ内を通過しないと判断される場合）には、目標位置（Ｐ１）に体を向けたまま（踏み出し角度は０度）の状態で前進歩行することになる。
【００４３】
デフォルト歩行では、到達目標を第１の目標位置Ｐ１とし、そこへ近付くように移動し、第１の目標位置Ｐ１に到達したと判断してから第２の目標位置Ｐ２に向けて方向転換する制御を行う。なお、第１の目標位置Ｐ１に到達したと判断する基準としては、例えば歩いてきた歩幅であと１歩を踏み出したら第１の目標位置Ｐ１に達するか超えてしまう所に来たとすることであって良い。そのようにして第１の目標位置Ｐ１に到達したと判断したら次の目標を第２の目標位置Ｐ２に切り換えて、その第２の目標位置Ｐ２に向けて向きを変える制御を行う。この場合にはその場で向きを変えるようになり、例えば図７に示されるように第１の目標位置Ｐ１に到達したと判断した所（矢印ａ）で第２の目標位置Ｐ２に向きを向けるように次の１歩を踏み出す。
【００４４】
その後は、ロボット１の機械仕様により決まる１歩毎の方向転換角度をもって向きを変えていくことになる。その場合のロボット１の向きは図の矢印Ｄａ〜Ｄｆにより示されるように変化する。図では、できるだけ最小半径で方向転換するようにカーブの内側の歩幅を小さく、外側の歩幅を大きくして方向転換する様子を示している。なお、その場でカーブ内側の脚を回転中心とするように方向転換することもでき、図示例に限定されるものではない。このようにして、方向転換のために本制御を採用できない場合でもロボット１が最終目標位置に到達する前にその歩行が停止してしまうことがない。
【００４５】
なお、上記しようにロボット１のビデオカメラ４を用いて目標までの距離情報や位置情報を求めるようにしている。また、第１の目標位置Ｐ１を経由するべく経路Ｒｃ上を歩行し始めるためにその１歩を踏み出したら第１の目標位置Ｐ１は目標対象とならなくなるため、その１歩を踏み出した時から、図８に示されるように第２の目標位置Ｐ２に向けて頭の向きを向けるように制御すると良い（図８の１歩目）。これにより、ロボット１の次に向かう方向を頭部の向きにより視認することができるため、ロボット１の移動領域Ｅ内に人（観客等）が混在する場合に、ロボット１の進行を人が妨げてしまうことを回避することができる。また、例えば第１の目標位置Ｐ１から第２の目標位置Ｐ２に至る途中に障害物がある場合に、ビデオカメラ４を用いて早い時期にその情報を取得することができ、早めの回避行動を取ることもできる。
【００４６】
また、図１に示した移動経路Ｒをモニタ２３に表示し、併せて各目標位置Ｐ１〜Ｐ３及び各許容誤差範囲ＡＥを表示すると共に、例えばキーボードからなるユーザ操作部２２により許容誤差範囲ＡＥを目標位置Ｐ１〜Ｐ３毎に調整するようにすることができる。例えば図９に示されるように、第１の目標位置Ｐ１に対する許容誤差範囲ＡＥ１を図１に示される場合よりも小さくし、第２及び第３の目標位置Ｐ２・Ｐ３に対する各許容誤差範囲ＡＥ２・ＡＥ３を図１に示される場合よりもそれぞれ大きくするように設定することができる。それにより、図に示されるように移動経路Ｒの全体が変化するため、ユーザによるロボット１の移動経路Ｒの調整を任意に行うことができる。例えば目標位置を障害物の位置とした場合には、その障害物の大きさに応じて許容誤差範囲ＡＥを調整することにより、各障害物の直近を通過する効率的な回避を行う移動経路Ｒを設定することができる。
【００４７】
なお、歩数ｎをサンプリングステップ数、歩幅Ｗをサンプリング時間当たりの移動距離または速度、踏み出し角度θｗをサンプリング時間当たりの回転角度または角速度とすれば、車両型の移動ロボットにも適用可能である。
【産業上の利用可能性】
【００４８】
本発明にかかる脚式移動ロボットの移動制御方法は、次の目標位置が経由地となりその次の目標位置に向かう場合を考慮して円滑な方向転換を伴う移動を可能とし、歩行により移動するロボットの効率的な移動経路の生成等として有用である。
【図面の簡単な説明】
【００４９】
【図１】本発明が適用された脚式移動ロボットの移動経路の一例を示す図である。
【図２】本発明が適用されるロボットの制御構成ブロック図である。
【図３】本発明に基づく方向転換経路の設定を行うためのフロー図である。
【図４】ロボットの移動における座標軸を説明する図である。
【図５】踏み出し角度θｗ及び歩幅Ｗを示す説明図である。
【図６】（ａ）第１の目標位置Ｐ１から第２の目標位置Ｐ２に向かう線分Ｌ上に方向転換経路の終了位置がある場合を示す図であり、（ｂ）は線分Ｌから外れた場合を示す図である。
【図７】デフォルト歩行時におけるロボットの移動要領の一例を示す模式図である。
【図８】方向転換移動時における頭部の向きを示す説明図である。
【図９】移動経路をモニタに表示した例を示す図である。
【符号の説明】
【００５０】
１  ロボット
１１  地図管理部（位置情報参照手段）
ＡＥ  許容誤差範囲
ｎ  歩数
Ｐ１  第１の目標位置
Ｐ２  第２の目標位置
Ｒｃ  方向転換経路
Ｗ  歩幅
θｗ  踏み出し角度
【図１】
2006297496.tif 000006
【図２】
2006297496.tif 000007
【図３】
2006297496.tif 000008
【図４】
2006297496.tif 000009
【図５】
2006297496.tif 000010
【図６】
2006297496.tif 000011
【図７】
2006297496.tif 000012
【図８】
2006297496.tif 000013
【図９】
2006297496.tif 000014