(57)【特許請求の範囲】
【請求項１】
接地面に沿って移動する移動体と、
前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、
操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置が、予め設定した複数の分割領域のいずれの領域内に存在しているかに基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、
前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、を備え、
前記複数の分割領域それぞれは、隣接する分割領域と重複する重複部分を有しており、
前記ＺＭＰの位置が、前記重複部分にあるときには、前記操作意図推定手段は、直前に推定された操作意図が維持されていると推定することを特徴とする移動体装置。
【請求項２】
車輪の回転により接地面に沿って移動する移動体と、
前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、
操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置に基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、
前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、
前記車輪の回転を検知する回転検知手段と、
前記移動体の加速度を検知する加速度検知手段と、を備え、
前記ＺＭＰ検出手段は、前記回転検知手段の検知結果と前記加速度検知手段の検知結果とに基づいて算出される、前記移動体が位置している接地面の傾斜に起因するＺＭＰの移動量に基づいて、ＺＭＰの位置の検出結果を補正し、
前記操作意図推定手段は、補正後のＺＭＰの位置に基づいて、前記操作意図を推定することを特徴とする移動体装置。
【請求項３】
車輪の回転により接地面に沿って移動する移動体と、
前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、
操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置に基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、
前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、
前記車輪を回転させる車輪駆動手段に供給する電流を検知する電流検知手段と、を備え、
前記移動手段は、前記電流検知手段による検知結果に基づいて、前記車輪の空転を検出し、当該空転を考慮して、前記車輪駆動手段に供給する電流を制御することを特徴とする移動体装置。
【請求項４】
接地面に沿って移動する移動体と、
前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、
操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置に基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、
前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、
操作者が所定の操作を行ったときにＺＭＰが所定の領域に存在する確率を保持する確率保持手段と、を備え、
前記操作意図推定手段は、前記確率保持手段が保持する確率を用いて、ベイズの定理に基づき、前記操作意図を推定することを特徴とする移動体装置。
【請求項５】
接地面に沿って移動する移動体と、
前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、
操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置に基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、
前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、
前記ＺＭＰ検出手段の検出結果に基づいて、前記移動体を接地面に沿って移動させようとする力以外の力の大きさを検出する非操作力検出手段と、を備え、
前記移動手段は、前記非操作力検出手段による検出値が、所定の値を超えた場合に、前記移動体の移動を禁止することを特徴とする移動体装置。
【請求項６】
前記非操作力検出手段による検出値の変動量が、所定の変動量以下で所定時間継続した場合には、前記移動手段は、前記移動体の移動を禁止せずに、その状態におけるＺＭＰの位置をＺＭＰの初期位置とすることを特徴とする請求項５に記載の移動体装置。
【請求項７】
接地面に沿って移動する移動体と、
前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、
操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置に基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、
前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、を備え、
前記ＺＭＰ検出手段は、前記移動体の加速により生じる慣性力に起因するＺＭＰの移動量に基づいて、ＺＭＰの位置の検出結果を補正し、
前記操作意図推定手段は、当該補正後のＺＭＰの位置に基づいて、前記操作意図を推定することを特徴とする移動体装置。
【請求項８】
非ホロノミック系の移動部を介して接地面に沿って移動する移動体と、
前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、
操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置に基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、
前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、を備え、
前記移動体の外周部には、前記接地面に垂直な軸を中心として回転するリング状部材が設けられ、
前記リング状部材は、前記移動体の旋回力よりも小さい摩擦力で回転する状態で前記移動体に保持されていることを特徴とする移動体装置。
【請求項９】
前記操作意図推定手段は、前記ＺＭＰが、前記移動体が無負荷状態にあるときのＺＭＰの位置を含む所定の退避判定範囲から外れたか否かを判断し、
前記移動手段は、前記ＺＭＰが前記退避判定範囲から外れている時間に応じた速度で、前記移動体を退避させることを特徴とする請求項８に記載の移動体装置。
【請求項１０】
前記移動手段は、
操作者から前記移動体に対して力が加えられた際に、前記力の方向と、前記移動体の並進方向が一致するまで、前記移動体を旋回動作させ、
前記旋回動作が完了した後に、前記移動体を前記力の方向に並進移動させることを特徴とする請求項８又は９に記載の移動体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、ロボットなどの移動体装置に関する。
【背景技術】
【０００２】
近年、人が存在する環境下で動作して、人と共棲する自走型サービスロボットが開発されてきている。このようなロボットは、例えば、人に代わって荷物を運んだり、人を所定の場所に案内したりする機能を有している。しかるに、人が存在する環境下では、ロボットが人の通行を妨げるおそれがある。このような場合、人は、自己の進路上からロボットを移動させるため、手で押すなどの動作を行うのが自然かつ一般的である。
【０００３】
上記動作に応じてロボットを移動させるためには、例えば、ロボットの走行車輪の駆動用モータをサーボオフして、走行車輪が自由に回転できるようにすることが考えられる。この場合、人が走行車輪用モータを明示的にサーボオフしなければならず、またロボットがスロープ上にある場合は重力方向に転がる危険性もあり、望ましい方法ではない。これに対し、最近では、人がロボットを手で押したときの力から人の意図を検知して、駆動用モータを制御し、人の意図通り動作する技術が提案されている。このような技術は「パワーアシスト」として分類される技術である。
【０００４】
パワーアシスト技術は、大別して（Ａ）ロボットに３軸力覚センサや複数の荷重センサを搭載し、ロボットのボディに加わった力を検知する方法（特許文献１参照）や、（Ｂ）力検知センサを備えた専用のハンドルで人の操作力を検知する方法（特許文献２参照）がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２５９８９号公報
【特許文献２】特開２００１−１３８２７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記（Ａ）に属する技術では、人によって操作感覚が異なるため、操作に慣れるまでに時間が掛かるおそれがある。また、（Ｂ）に属する技術では、公共性の高い空間にロボットを設置する場合には、不特定対数の人に触れられる可能性があるハンドルを専用のハンドルとすることが安全性の観点から難しい場合もある。また、（Ｂ）に属する技術では、ハンドルの付いた特定の方向からしかロボットを操作できず、不便になるおそれもある。
【０００７】
そこで本件は上記の課題に鑑みてなされたものであり、外部から受けた力に応じた適切な移動が可能な移動体装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本明細書に記載の移動体装置は、接地面に沿って移動する移動体と、前記移動体の重力と慣性力の合力が接地面と交わる点であるＺＭＰの位置を検出するＺＭＰ検出手段と、操作者から前記移動体に対して力が加えられたときの前記ＺＭＰの位置に基づいて、前記操作者の前記移動体に対する操作意図を推定する操作意図推定手段と、前記操作意図推定手段により推定された操作意図に基づいて、前記移動体を移動させる移動手段と、を備える。
【発明の効果】
【０００９】
本明細書に記載の移動体装置は、外部から受けた力に応じた適切な移動ができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係るロボットを示す図である。
【図２】図２（ａ）は、ロボットの構成を模式的に示す図であり、図２（ｂ）は、土台部及び走行車輪等の配置を模式的に示す図である。
【図３】第１の実施形態に係るロボットの制御系を示すブロック図である。
【図４】操作意図推定領域及びバッファ領域を説明するための図である。
【図５】図４の操作意図推定領域及びバッファ領域の説明を示す図である。
【図６】ＺＭＰの状態遷移図である。
【図７】ＺＭＰの位置から操作意図を推定する方法について説明するための図（その１）である。
【図８】ＺＭＰの位置から操作意図を推定する方法について説明するための図（その２）である。
【図９】ロボットにおける車輪駆動手段の制御手順を示すフローチャートである。
【図１０】ロボットがスロープ上に位置している場合の処理について説明するための図である。
【図１１】ロボットがスロープ上を加速度ａxにて加速しつつ移動している場合の処理について説明するための図である。
【図１２】図１２（ａ）は、車輪制御手段がロボットの移動を禁止する場合について説明するための図であり、図１２（ｂ）は、荷物を搬送するロボットを移動させる場合について説明するための図である。
【図１３】図３の制御系の別例を示すブロック図である。
【図１４】第１の実施形態の変形例を示す図である。
【図１５】図１５（ａ）、図１５（ｂ）は、図１４に示す圧力センサの構成各部を説明するための図である。
【図１６】第２の実施形態に係るロボットの制御系を示すブロック図である。
【図１７】図１７（ａ）、図１７（ｂ）は、第２の実施形態に係る、ベイズの定理を用いた処理を説明するための図である。
【図１８】図１８（ａ）は、第３の実施形態に係るロボットの側面図であり、図１８（ｂ）は、ロボットの平面図である。
【図１９】図１８（ｂ）のＡ−Ａ線断面図である。
【図２０】第３の実施形態に係るロボットの走行車輪と、キャスタの配置例を示す図である。
【図２１】図２１（ａ）〜図２１（ｃ）は、２輪速度差方式の駆動方法を説明するための図である。
【図２２】第３の実施形態のロボットの回転部材に対して人が操作力を付与した際のロボットの移動の様子を模式的に示す図である。
【図２３】第３の実施形態の比較例を示す図である。
【図２４】回転部材を設けた場合のＺＭＰの移動状態を示す図である。
【図２５】第４の実施形態に係るロボットの制御系による処理を示すフローチャートである。
【図２６】角度誤差αを示す図である。
【図２７】退避判定領域及び第４の実施形態の効果を説明するための図である。
【図２８】第３、第４の実施形態の変形例を示す図である。
【発明を実施するための形態】
【００１１】
≪第１の実施形態≫
以下、移動体装置の第１の実施形態について、図１〜図１３に基づいて詳細に説明する。図１には、移動体としてのロボット１００が概略的に示されている。なお、本実施形態の移動体装置は、図１に示すロボット１００と、ロボット１００内に格納され、ロボット１００の移動を制御する制御系（図３参照）と、を備えている。なお、図３の制御系の一部が、ロボット１００の外部に配置されていてもよい。
【００１２】
ロボット１００は、図１に示すように、ボディ１０と、２つの走行車輪１２ａ，１２ｂと、キャスタ１６ａ〜１６ｃと、を備える。
【００１３】
ボディ１０は、図２（ａ）に模式的に示すように、土台部３０と、土台部３０上に設けられた支持台２０と、支持台２０により支持された外装体１０ａと、を有する。外装体１０ａは、実際には、図１に示すような複雑な形状を有しているが、図２（ａ）では簡略化して示している。また、土台部３０の周囲は、カバー１０ｂにより覆われている。
【００１４】
支持台２０は、テーブル状の形状を有しており、支持板２０ａと、支持板２０ａを土台部３０上で支持する３本の脚部２０ｂとを有する。３本の脚部２０ｂそれぞれと、土台部３０との間には、ＺＭＰ検出手段２２が設けられている。ＺＭＰ検出手段２２は、感圧センサを含んでおり、ロボットの高さに比べて十分に低く、接地面に近い高さに設置されていて、外装体１０ａに矢印Ｆで示す外力が加わったときに３本の脚部２０ｂそれぞれにかかる力の大きさを検出する。これにより、ＺＭＰ検出手段２２は、ロボットの重力と慣性力の合力が接地面と交わる点、すなわちＺＭＰ（Zero Moment Point）の位置を近似的に検出する。本発明では、この近似的なＺＭＰをＺＭＰとして扱う。なお、感圧センサとしては、ロードセル、ＦＳＲ（Force Sensing Resistors）などを用いることができる。
【００１５】
土台部３０には、前述した走行車輪１２ａ、１２ｂと、キャスタ１６ａ〜１６ｃと、加速度検知手段１８と、が設けられている。図２（ｂ）には、土台部３０の平面図が模式的に示されている。この図２（ｂ）に示すように、走行車輪１２ａ，１２ｂは、ロボット１００の走行面の座標系であるｘｒｙｒ座標系におけるｙｒ軸方向に関して、所定間隔をあけて配置されている。これらのうち、走行車輪１２ａは、モータ等を含む車輪駆動手段２４ａにより回転駆動される。また、走行車輪１２ａの回転は、走行車輪１２ａの車軸に設けられた、図２に示す回転検知手段１４ａにより検知される。同様に、走行車輪１２ｂは、車輪駆動手段２４ｂにより回転駆動され、その回転は、走行車輪１２ｂの車軸に設けられた回転検知手段１４ｂにより検知される。回転検知手段１４ａ，１４ｂは、例えばロータリエンコーダやタコジェネレータなどのセンサを含んでいる。なお、走行車輪１２ａ，１２ｂの車軸の方向は、ｘｒｙｒ面内で変更可能とされている。走行車輪１２ａ，１２ｂの車軸の方向は、図３に示す車軸方向検知手段４８により常時検知されている。
【００１６】
キャスタ１６ａ〜１６ｃは、ロボット１００が転倒しないように姿勢を安定化させるためのものであり、土台部３０の外縁近くに沿ってほぼ等間隔で設けられている。
【００１７】
加速度検知手段１８は、土台部３０のｘrｙｒ面内における中央部近傍に設けられている。この加速度検知手段１８は、ロボット１００のｘｒ方向に関する加速度及びｙｒ方向に関する加速度を検知する。
【００１８】
図３には、本実施形態のロボット１００の制御系の構成がブロック図にて示されている。この図３に示すように、ロボット１００の制御系は、前述したＺＭＰ検出手段２２、回転検知手段１４ａ，１４ｂ、車軸方向検知手段４８、加速度検知手段１８のほか、操作意図推定手段４４、電流検知手段４６、移動手段４２、を含んでいる。
【００１９】
操作意図推定手段４４は、ＺＭＰ検出手段２２による検出結果や回転検知手段１４ａ，１４ｂによる検知結果に基づいて、操作者からロボット１００に与えられた操作力が、どのような操作意図を意味しているかを推定する。ここでの操作意図には、例えば、ロボットを「前進」させる意図、「前右旋回」させる意図、「後右旋回」させる意図、「後進」させる意図、「後左旋回」させる意図、「前左旋回」させる意図、及び「停止」させる意図などが含まれる。なお、操作意図推定手段４４による操作意図の推定方法については、後述する。
【００２０】
電流検知手段４６は、車輪駆動手段２４ａ，２４ｂに含まれるモータにおいて使用されている電流の値を検知する。
【００２１】
移動手段４２は、前述した車輪駆動手段２４ａ，２４ｂと、当該車輪駆動手段２４ａ，２４ｂの駆動を制御する車輪制御手段４０と、を有する。車輪制御手段４０は、回転検知手段１４ａ，１４ｂによる検知結果、車軸方向検知手段４８による検知結果、加速度検知手段１８による検知結果、及び電流検知手段４６による検知結果、並びに操作意図推定手段４４による推定結果に基づいて、車輪駆動手段２４ａ，２４ｂを制御する。
【００２２】
次に、操作意図推定手段４４による、操作意図推定方法について、図４〜図８に基づいて説明する。ここで、操作意図推定手段４４は、ＺＭＰ検出手段２２により検出されるＺＭＰの位置が図４に示す推定マップ上のどの領域に位置しているかを求め、それに基づいて操作者の意図を推定する。以下、図４の推定マップについて説明する。
【００２３】
図４に示す推定マップは、図２のＺＭＰ検出手段２２が載っている土台部３０の上部に設定された領域であり、６つの領域Ａ〜Ｆを含んでいる。これら６つの領域Ａ〜Ｆは、隣接する領域と重ならない部分、及び重なる部分を有している。図４では、隣接する領域と重ならない部分を、アルファベットの小文字を付して、「操作意図推定領域ａ〜ｆ」と定義し、隣接する領域と重なる部分を、括弧付き数字を付して、「バッファ領域（１）〜（６）」と定義している。また、マップの中央部には、操作意図推定領域Ｏも定義されている。
【００２４】
図５には、操作意図推定領域ａ〜ｆ及びＯ、並びにバッファ領域（１）〜（６）の説明が示されている。この図５に示すように、操作意図推定領域ａは、「前進」を検出する領域であり、操作意図推定領域ｂは、「前右旋回」を検出する領域であり、操作意図推定領域ｃは、「後右旋回」を検出する領域である。また、操作意図推定領域ｄは、「後進」を検出する領域であり、操作意図推定領域ｅは、「後左旋回」を検出する領域であり、操作意図推定領域ｆは、「前左旋回」を検出する領域である。操作意図推定領域Ｏは、「停止」を検出する領域である。これに対し、バッファ領域（１）〜（６）については、図５において、隣接する２つの領域のオーバーラップ領域である旨、示されている。
【００２５】
図６は、ＺＭＰの移動によるロボット１００の状態遷移を示す図である。この図６に示すように、操作意図推定領域ａに着目すると、ＺＭＰは、領域ａからは、隣接する領域（１）、（６）、Ｏのいずれかにのみ移動することができる。また、その他の領域からも、その領域に隣接する領域にのみ移動することができるようになっている。
【００２６】
次に、操作意図推定手段４４による、操作者の操作意図の推定方法の基本的な処理について、図７（ａ）〜図８（ｃ）に基づいて説明する。
【００２７】
ここでは、前提として、図７（ａ）に示すように、ＺＭＰが操作意図推定領域Ｏ内に位置しているものとする。この場合、操作意図推定手段４４は、図４の推定マップに基づいて、操作者にはロボット１００を操作する意図がない、すなわち停止させる意図がある、と推定する。この状態から、図７（ｂ）に示すように、ロボット１００に対して操作者が力ＦL、ＦR（ただし、ＦL＝ＦR）を加えると、ＺＭＰが操作意図推定領域ａに移動したことを、ＺＭＰ検出手段２２が検出する。操作意図推定手段４４は、ＺＭＰ検出手段２２による検出結果と図４の推定マップに基づいて、操作者にはロボット１００を前進させる意図があると推定する。
【００２８】
次いで、図７（ｃ）に示すように、ロボット１００に力ＦL、ＦR（ただし、ＦL＞ＦR）が操作者から加えられると、ＺＭＰ検出手段２２は、ＺＭＰがバッファ領域（１）に移動したことを検出する。この場合、操作意図推定手段４４は、操作者にロボット１００を前進させる意図があるとの推定を維持する。すなわち、本実施形態では、操作意図推定手段４４は、ＺＭＰがバッファ領域（１）〜（６）のいずれかに位置した場合には、その直前にＺＭＰが位置していた操作意図推定領域の操作意図を維持するものとする。
【００２９】
その後、図８（ａ）のように、ＺＭＰがバッファ領域（１）から操作意図推定領域ｂに移動したことをＺＭＰ検出手段２２が検出すると、操作意図推定手段４４は、推定マップに基づいて操作者にロボット１００を前右旋回させる意図があると推定する。
【００３０】
その後、図８（ａ）の状態から、図８（ｂ）に示すように、ロボット１００に力ＦL、ＦR（ただし、ＦL＜ＦR）が操作者から加えられ、ＺＭＰがバッファ領域（１）に移動したものとする。この場合、操作意図推定手段４４は、直前にＺＭＰが位置していた操作意図推定領域（ここでは領域ｂ）の操作意図（前右旋回）を維持する。そして、図８（ｃ）に示すように、ＺＭＰがバッファ領域（１）から操作意図推定領域ａに移動した場合には、操作意図推定手段４４は、図４、図５のマップに基づいて、操作者にロボット１００を前進させる意図があると推定する。
【００３１】
次に、図９のフローチャートに沿って、ロボット１００の駆動に関する一連の処理について説明する。図９のフローチャートは繰り返し実行されるものである。
【００３２】
図９に示すように、まず、ステップＳ１０では、ＺＭＰ検出手段２２が、ＺＭＰの位置を検出する。次いで、ステップＳ１２では、操作意図推定手段４４が、前述したようにして、検出されたＺＭＰの位置から操作者の意図を推定する。次いで、ステップＳ１４では、車輪制御手段４０が、操作意図推定手段４４において推定された操作者の意図が移動に関するものか、すなわち、停止以外であるか否かを判断する。ここでの判断が肯定された場合には、車輪制御手段４０は、ステップＳ１６において、車軸方向検知手段４８の検知結果をモニタしつつ、車輪駆動手段２４ａ，２４ｂを制御する。これにより、ロボット１００の移動方向を、ステップＳ１２において推定された意図する方向に設定する。
【００３３】
次いで、ステップＳ１８では、車輪制御手段４０が、回転検知手段１４ａ，１４ｂの検知結果をモニタして、ロボット１００の速度Ｖが最大速度Ｖmaxであるか否かを判断する。ここでの判断が否定された場合には、ステップＳ２０において、車輪制御手段４０が、車輪駆動手段２４ａを介して、加速度ａで加速した後に、ステップＳ１０に戻る。一方、ステップＳ１８における判断が肯定された場合には、そのままステップＳ１０に戻る。その後、ステップＳ１２において、同一の操作意図が維持されている間は、ロボット１００の速度がＶmaxに達するまで、車輪制御手段４０は、ロボット１００を加速度ａで加速しつづける。
【００３４】
これに対し、ステップＳ１４における判断が否定された場合、すなわち、操作者の意図が「停止」であった場合には、ステップＳ２２に移行する。ステップＳ２２では、車輪制御手段４０が、回転検知手段１４ａ，１４ｂの検知結果をモニタすることで、速度Ｖが０であるか否かを判断する。ここでの判断が否定された場合には、ステップＳ２４において、車輪制御手段４０は、車輪駆動手段２４ａを介してロボット１００を加速度ａで減速させる。一方、ステップＳ２２の判断が肯定された場合には、そのままステップＳ１０に移行する。その後、ステップＳ１２において、停止の意図が維持されている間は、ロボット１００の速度が０に達するまで、車輪制御手段４０は、ロボット１００を加速度ａで減速しつづける。
【００３５】
その後は、上記処理を繰り返すことにより、操作者の意図に応じたロボット１００の移動制御を継続的に実行する。すなわち、操作者がロボット１００に対して力を加えている間は、その力の方向にロボット１００が移動し続け、操作者がロボット１００に力を加えていない間は、ロボット１００は静止し続けることになる。
【００３６】
次に、（i）ロボット１００がスロープ上に位置している場合、（ii）ロボット１００がスロープ上を加速度ａxにて加速して移動している場合、（iii）ロボット１００の移動を禁止する場合、（iv）ロボットが荷物を搬送するロボットである場合、及び（v）走行車輪に空転が生じた場合、の各処理について説明する。
【００３７】
（i）ロボット１００がスロープ上に位置している場合
まず、ロボット１００がスロープ上に位置している場合の処理について説明する。図１０には、角度θのスロープ上にロボット１００が位置している状態が示されている。この図１０に示すように、ロボット１００がスロープ上に位置していることに起因して、ＺＭＰの位置が、平坦な接地面に位置していた場合におけるＺＭＰの位置（符合ＺＭＰで示している）から、図１０のＺＭＰ’の位置まで変位することになる。
【００３８】
ここで、ＺＭＰの変位量Ｐθｘは、次式（１）にて表すことができる。なお、次式（１）のｈは、ロボット１００の重心高さであり、既知の値である。また、ｇは重力加速度、θは水平面に対するスロープの傾斜角度を表す。
Ｐθｘ＝−ｈtanθ＝（−ｇsinθ／ｇcosθ）・ｈ    …（１）
【００３９】
上式（１）において、傾斜角が５°程度であるとすると、cosθ≒１とすることができる。また、ｇsinθは、加速度検知手段１８により検知されるｘr方向の加速度Ａｘと定義することができる。ここで、ロボット１００は、実際にはスロープ上で停止した状態にあるが、スロープに沿って下方向にスライドないように加速しているとも看做すことができるので、加速度検知手段１８の値は正となる。したがって、上式（１）は、次式（２）のように表すことができる。
Ｐθｘ＝{−Ａｘ／（ｇ×１）}・ｈ＝−Ａｘ・ｈ／ｇ            …（２）
【００４０】
このように、ロボット１００がスロープ上に位置しているときには、ＺＭＰ検出手段２２は、図９のステップＳ１０において、検出されたＺＭＰから、変位量Ｐθｘを差し引いた値を真のＺＭＰとする。そして、操作意図推定手段４４は、ステップＳ１２において、当該真のＺＭＰに基づいて、操作者の操作意図を推定することとする。このようにすることで、ロボット１００がスロープ上に存在していても、操作者の操作意図を精度良く推定することが可能である。なお、ロボット１００がスロープ上に位置しているか否かは、ロボット１００を所定の加速度で加速した場合に得られるべき走行車輪１２ａ，１２ｂの回転（理論値）と、実際の回転とを比較することで判断することができる。なお、これに限らず、ロボット１００がスロープ上に位置しているか否かは、加速度検知手段１８などを用いて判断することとしてもよい。
【００４１】
（ii）ロボット１００がスロープ上を加速度ａxにて加速しつつ、移動している場合
次に、ロボット１００がスロープ上を加速度ａxにて加速しつつ、移動している場合の処理について、図１１に基づいて説明する。ここで、ロボット１００が図１１の紙面右側に加速した場合、当該加速方向とは逆方向の力（慣性力）がロボット１００に働く。この場合、ＺＭＰの変位方向が加速度ａxとは逆向きになることから、図１１に示すように、スロープの傾斜に起因するＺＭＰの変位（Ｐθｘ）の方向と、慣性力によるＺＭＰの変位（Ｐaｘ）の方向とが一致する。
【００４２】
ここで、慣性力によるＺＭＰの変位量（Ｐax）と、スロープの傾斜に起因するＺＭＰの変位量（Ｐθｘ）とを合算した変位量（Ｐax＋Ｐθｘ）は、次式（３）のように表すことができる。
Ｐax＋Ｐθｘ＝（−ａx・ｈ／ｇcosθ）−ｈtanθ
＝−（ａx＋ｇsinθ）・ｈ／ｇcosθ        …（３）
【００４３】
上式（３）において、ａx＋ｇsinθは、加速度検知手段１８により検出されるｘr方向の加速度Ａｘを意味する。また、図１０の場合と同様、傾斜角は５°程度であるので、cosθ≒１とすることができる。したがって、上式（３）は、次式（４）にて表すことができる。
Ｐax＋Ｐθｘ＝−（Ａｘ）・ｈ／（ｇ×１）＝−Ａｘ・ｈ／ｇ        …（４）
【００４４】
すなわち、ＺＭＰ検出手段２２は、ｘｒ、ｙｒ面上における加速度検知手段１８の値をＡ（Ａx，Ａy）として、傾斜の角度及び加減速度にかかわらず、ＺＭＰの位置を、次式（５）で表される変位ベクトルδで補正する（ステップＳ１０）。そして、操作意図推定手段４４は、当該補正後のＺＭＰを用いて、操作意図を推定する（ステップＳ１２）
δ＝−ｈ・Ａ／ｇ          …（５）
【００４５】
このようにすることで、ロボット１００が斜面を移動している場合でも、慣性力や斜面に起因するＺＭＰの検出誤差を低減することが可能である。
【００４６】
なお、ロボット１００がスロープ上に位置していない場合にも、上記と同様に、慣性力に起因するＺＭＰの移動量を考慮することとしてもよい。
【００４７】
（iii）ロボット１００の移動を禁止する場合
次に、図１２（ａ）に基づいて、車輪制御手段４０が、ロボット１００の移動を禁止する場合について、説明する。
【００４８】
図１２（ａ）には、ロボット１００の近傍にいる人が、ロボット１００に肘をついて休憩等をした場合にかかる力Ｆを示している。このような場合には、ロボット１００に横方向から力がかかった場合でも、ロボット１００は移動すべきでない。したがって、車輪制御手段４０は、図１２（ａ）のような下向きの力がロボット１００にかかっている場合には、ロボット１００の移動を禁止する。
【００４９】
具体的には、例えば、一般女性の上肢の重量を２．５ｋｇとし、前肢の重量１．０ｋｇよりも重い荷重（１０Ｎ）がロボット１００にかかった場合に、ロボット１００の移動を禁止することとする。すなわち、車輪制御手段４０は、荷重（１０Ｎ）を閾値として、当該閾値よりも大きい下向きの力がロボット１００にかかった場合に、ロボット１００の移動を禁止することとする。このようにすることで、ロボット１００に人が肘をついているような場合に、ロボット１００が不用意に動作したりするのを防止することができる。
【００５０】
（iv）ロボットが、荷物を搬送するロボットである場合
ロボットが荷物を搬送するロボットである場合には、上述した(iii)のように、単に荷重が所定の閾値を超えた場合にロボット１００の移動を禁止するのでは、ロボットの搬送機能が発揮されないおそれがある。すなわち、ロボット１００に掛かっている荷重が、図１２（ｂ）に示す荷物ＢＧによるものであるのか、人が肘をついていることに起因するものなのかを判別しなければ、ロボット１００を意図どおりに移動させることができなくなるおそれがある。
【００５１】
そこで、本実施形態では、ロボット１００が、荷物ＢＧを搬送するロボットである場合には、車輪制御手段４０は、ＺＭＰ検出手段２２により検出される荷重Ｆ’の変動をモニタする。そして、車輪制御手段４０は、荷重Ｆ’の変動が所定値（例えば、２Ｎ）以下で、所定時間（例えば３秒）以上持続した場合に、ロボット１００が荷物を保持していると判断する。このように判断するのは、人は、荷物と異なり、静止しているときでもわずかに揺動する可能性が高いからである。
【００５２】
上記のように判断された場合、車輪制御手段４０は、ロボット１００の移動を禁止しないこととする。そして、ＺＭＰ検出手段２２は、図９のステップＳ１０において、荷物ＢＧの荷重を含むロボット１００全体のＺＭＰを、ＺＭＰの初期値に設定して、ＺＭＰの位置を検出する。そして、当該初期値を用いて検出されたＺＭＰの位置に基づいて、操作意図推定手段４４が、ステップＳ１２において、操作者の操作意図を推定する。このようにすることで、荷物ＢＧを搬送するロボットを、高精度に駆動制御することができるようになる。
【００５３】
なお、上記の説明では、図１２（ａ）、図１２（ｂ）の制御を、車輪制御手段４０が行う場合について説明したが、これに限られるものではない。例えば、図１３に示すように、ＺＭＰ検出手段２２の検出結果に基づいて、人が肘をついているのか、あるいは荷物ＢＧが載置されたのかを判定する非操作力検出手段５２を別途設け、これにより、上述した制御を行うこととしてもよい。
【００５４】
（v）走行車輪に空転が生じた場合
次に、ロボット１００において、走行車輪１２ａ，１２ｂに空転が生じた場合の処理について説明する。ロボット１００に対する外力（操作力）の加わり方によっては、ロボット１００の姿勢が変化し、車輪が空転する可能性がある。このような場合の対処法として、車輪制御手段４０は、車輪駆動手段２４ａ，２４ｂに供給されている電流値を電流検知手段４６を用いて検知し、当該検知結果に基づいて、ロボット１００の制御を行う。具体的には、電流値が車輪の回転速度に応じて定められる閾値以下である場合には、車輪制御手段４０は、車輪が空転していると判断する。そして、当該判断がなされたときには、車輪制御手段４０は、図９のフローチャートよりも優先的に、車輪の回転速度を低下させ、あるいは回転を停止する制御を実行する。このようにすることで、車輪が空転した場合にも、適切なロボット１００の移動制御を行うことができる。
【００５５】
以上、詳細に説明したように、本第１の実施形態によると、接地面に沿って移動するロボット１００のＺＭＰの位置をＺＭＰ検出手段２２により検出し、当該ＺＭＰの位置に基づいて、操作意図推定手段４４が操作意図を推定する。そして、移動手段４２が、操作意図に基づいてロボット１００を移動させる。これにより、ＺＭＰの位置に基づいて適切に推定される人の操作意図に沿ったロボット１００の移動を実現することができる。この場合、操作意図推定手段４４は、操作者からロボット１００に対して加えられた力により移動したＺＭＰの位置が予め設定した複数の分割領域（操作意図推定領域）のいずれの領域内に存在しているかに基づいて、操作意図を推定するので、操作意図を簡易且つ適切に推定することができる。これにより、外部から受けた力に応じたロボットの適切な移動を実現できるので、ハンドル等を用いずに、操作者は直感的にロボット１００を移動させることができる。また、外部からの力が、ロボット１００の任意の位置に加えられた場合でも、ロボット１００をその力の方向に移動させることができる。したがって、従来の足元接触センサを具備するロボットでは対応できない障害物（高い位置にある障害物）に接触した場合でも、当該障害物を避けるように適切な移動することが可能である。
【００５６】
また、本第１の実施形態によると、複数の領域Ａ〜Ｆそれぞれが、隣接する領域と重複する重複部分（バッファ領域（１）〜（６））を有している。そして、ＺＭＰの位置が、バッファ領域にあるときには、操作意図推定手段４４が、直前に推定された操作意図が維持されていると推定する。これにより、操作者がロボットを所定方向に移動させようとしていることが明確になった場合にのみ、その所定方向にロボット１００を移動するので、操作者がロボット１００に与える操作力に個人差があるような場合であっても、その操作力の違いを吸収し、ロボット１００を適切に移動することが可能である。逆に言えば、人の性質上、ロボット１００を押したにもかかわらずロボットが思い通りに動かなければ、更に力を加えることから、上記のようなバッファ領域を設けても、問題なくロボットを移動させることができる。また、バッファ領域を設けることで、ロボット１００に加わるわずかな外乱が操作意図に即座に反映されるのを防止することができるので、意図していないロボット１００の移動を抑制することができる。
【００５７】
また、本第１の実施形態によると、感圧センサとして、ＦＳＲ（Force Sensing Resistors）などの安価なセンサを用いることができるので、従来のような３軸力覚センサを用いる場合と比較してコストダウンを図ることができる。
【００５８】
また、本第１の実施形態によると、ＺＭＰ検出手段２２は、回転検知手段１４ａ，１４ｂの検知結果と、加速度検知手段１８の検知結果とに基づいて算出される、接地面の傾斜に起因するＺＭＰの移動量に基づいてＺＭＰの位置の検出結果を補正する。そして、操作意図推定手段４４は、補正後のＺＭＰの位置を用いて操作意図を推定する（上式（２）参照）。したがって、ロボット１００が傾斜した接地面（スロープ）上に位置している場合にも、当該傾斜の影響を考慮した適切なロボット１００の移動制御を行うことが可能である。
【００５９】
また、本第１の実施形態によると、走行車輪１２ａ，１２ｂを回転させる車輪駆動手段２４ａ，２４ｂに供給されている電流を検知する電流検知手段４６を備えており、車輪制御手段４０は、電流検知手段４６による検知結果に基づいて、走行車輪１２ａ，１２ｂの空転を検出し、当該空転を考慮して、車輪駆動手段２４ａ，２４ｂに供給する電流を制御、すなわち、走行車輪１２ａ，１２ｂの回転を制御する。したがって、ロボット１００に対して操作者から加えられる力の方向によって生じる可能性のある走行車輪１２ａ，１２ｂの空転に対して、適切に対処することができる。
【００６０】
また、本第１の実施形態によると、ＺＭＰ検出手段２２の検出結果に基づいて、ロボット１００を接地面に沿って移動させようとする力以外の力の大きさを検出する非操作力検出手段５２（又は車輪制御手段４０の一部機能）を備えており、車輪制御手段４０は、非操作力検出手段５２（又は車輪制御手段４０の一部機能）による検出値が、所定の値を超えた場合に、ロボットの移動を禁止する。これにより、ロボット１００の上に人が肘を付いて休憩している場合などにおいて、ロボット１００が移動するのを防止することができる。
【００６１】
また、本第１の実施形態によると、非操作力検出手段５２（又は車輪制御手段４０の一部機能）による検出値の変動量が、所定の変動量以下で所定時間継続するような場合、すなわち、ロボット１００に荷物を搭載したような場合には、ロボット１００の移動を禁止せずに、そのときのＺＭＰの位置をＺＭＰの初期位置として取り扱う。したがって、ロボット１００が荷物を搭載したロボットである場合であっても、荷物を搭載しないロボットと同様に移動制御を行うことができる。
【００６２】
また、本第１の実施形態によると、ＺＭＰ検出手段２２は、ロボット１００の加速により生じる慣性力に起因するＺＭＰの移動量に基づいて、ＺＭＰの位置の検出結果を補正する。そして、操作意図推定手段４４は、当該補正後のＺＭＰの位置に基づいて、操作意図を推定する。したがって、慣性力によるＺＭＰの移動による影響を受けずに、操作者の操作意図を適切に推定することができる。
【００６３】
なお、上記第１の実施形態では、ＺＭＰ検出手段２２が感圧センサを３つ含んでいる場合について説明したが、これに限らず、少なくとも３つの感圧センサを含んでいれば、その数は問わない。
【００６４】
なお、上記第１の実施形態では、ＺＭＰ検出手段２２が３つの感圧センサを含んでいる場合について説明したが、これに限られるものではない。ＺＭＰ検出手段２２は、例えば、図１４に示すような力の加わっている位置を検知できるシート状の圧力センサ６６を含んでいてもよい。
【００６５】
圧力センサ６６は、図１４に示すように、土台部３０側に設けられた板状センサ群６２と、板状センサ群６２に対向して、外装体１０ａ側に設けられたボールグリッド板６４と、を有する。板状センサ群６２は、図１５（ａ）に示すように、６枚の板状センサ６８が、隣接する板状センサ６８と一部重複するような状態で、配置されたものである。一方、ボールグリッド板６４は、図１５（ｂ）に示すように、多数の半球状のボールグリッド７０を有している。
【００６６】
上記のように構成される圧力センサ６６では、図１５（ａ）に示す操作意図推定領域ａ〜ｆ及びＯ、並びにバッファ領域（１）〜（６）のうち、ボールグリッド板６４から与えられる圧力が最も大きい部位を特定する。そして、操作意図推定手段４４は、圧力の合計が最も大きい部位にＺＭＰが存在すると判定し、その部位に応じて、操作者の操作意図を推定する。この推定には、図７、図８と同様の手法が用いられる。このような圧力センサ６６を用いることとしても、上記第１の実施形態と同様の効果を得ることができる。
【００６７】
なお、上記第１の実施形態では、操作意図推定領域ａ〜ｆの間に、バッファ領域（１）〜（６）を設けた場合について説明したが、分割数はこれに限らず、任意に設定してもよい。同様の観点からすると、図１５（ａ）のようなシート状のセンサ群６２を用いる場合も、操作意図推定領域を６つ設けた場合について説明したが、これに限らず、その数は任意である。
【００６８】
≪第２の実施形態≫
次に、移動体装置の第２の実施形態について、図１６、図１７に基づいて説明する。
【００６９】
図１６は、第２の実施形態にかかるロボット１００の制御系を示すブロック図である。この図１６に示すように、本第２の実施形態では、確率保持手段５４が設けられている点が、第１の実施形態と異なる。また、図１７（ｂ）に示すように、推定マップが７つの領域Ａj（ｊ＝１〜７）に分割されている点も、第１の実施形態と異なる。
【００７０】
確率保持手段５４は、図１７（ａ）に示すような操作者の操作Ｂi（ここでは、ｉ＝１〜７）が定められている場合に、操作者の操作がＢiである確率ｐ（Ｂi）を保持している。また、確率保持手段５４は、操作者が操作Ｂiを行ったときに、ＺＭＰが図１７（ｂ）に示す領域Ａj（ｊ＝１〜７）に存在する確率ｐ（Ａj｜Ｂi）を保持している。なお、確率ｐ（Ａj｜Ｂi）は、予め実験等により求めた値である。
【００７１】
図１６の操作意図推定手段４４は、確率保持手段５４が保持している確率のデータを用い、以下のようにして操作意図を推定する。
【００７２】
仮に、ＺＭＰが領域Ａjにある確率をｐ（Ａj）とすると、ＺＭＰが領域Ａjにあるときに、操作者が操作Ｂiを行った確率Ｐ（Ｂi｜Ａj）は、ベイズの定理を用いると、次式（６）のように表すことができる。
Ｐ（Ｂi｜Ａj）＝ｐ（Ａj｜Ｂi）・ｐ（Ｂi）／ｐ（Ａj）    …（６）
【００７３】
したがって、操作意図推定手段４４は、Ｐ（Ｂi｜Ａj）をｉ＝１〜７について計算し、その確率と、ＺＭＰ検出手段２２により検出されるＺＭＰの位置（Ａj）とに基づいて、最も確率の高い操作意図（Ｂi）を、操作者の操作意図と推定する。
【００７４】
以上、説明したように、本第２の実施形態によると、確率保持手段５４が保持する、操作者が所定の操作を行ったときにＺＭＰが所定の領域に存在する確率を用いて、操作意図推定手段４４が、ベイズの定理に基づき操作意図を推定する。したがって、操作意図推定手段４４は、確率論に基づいて、操作者の操作意図を適切に推定することができる。これにより、ロボット１００を操作者の操作意図に沿って適切に移動させることが可能である。
【００７５】
なお、上記第２の実施形態では、第１の実施形態の制御系（図３）に、確率保持手段５４を設けた場合の例について説明したが、これに限られるものではない。第１の実施形態の変形例に係る制御系（図１３）などに、確率保持手段５４を設けることとしてもよい。
【００７６】
なお、上記第１、第２の実施形態では、走行車輪１２ａ,１２ｂを採用し、その回転軸のｘr軸、ｙr軸に対する角度が変更可能である場合について説明したが、これに限られるものではない。例えば、走行車輪に代えて、オムニホイルを用いた全方位移動走行機構や、独立ステアリング型の全方位移動走行機構を採用することとしてもよい。全方位移動機構の場合、図４の領域（２）や（５）にＺＭＰがある場合は、それぞれ右真横に移動、左真横に移動という意図の推定としてもよい。これらを採用することで、簡易に、全方位にロボット１００を移動させることが可能となる。
【００７７】
≪第３の実施形態≫
次に、移動体装置の第３の実施形態について、図１８〜図２３に基づいて説明する。
【００７８】
図１８（ａ）には、本第３の実施形態に係る移動体装置としての非ホロノミックなロボット１００’の側面図が示され、図１８（ｂ）には、ロボット１００’の平面図が示されている。これらの図に示すように、ロボット１００’の上端部近傍には、リング状部材としての回転部材１０２が設けられている。この回転部材１０２は、人間工学等に基づいて人が触れやすい高さ位置に設けられている。回転部材１０２は、人がロボット１００’を退避させたいときに力を加える部材として、予め定められている部材である。
【００７９】
図１９には、図１８（ｂ）のＡ−Ａ線断面図が示されている。図１９に示すように、回転部材１０２は、ロボット１００’のボディ１０の外周部に設けられた複数のカムフォロア１０６に係合した状態となっている。このカムフォロア１０６の作用により、回転部材１０２は、ボディ１０に対して、ロボット１００’の接地面（走行面）に垂直な軸を中心として回転するようになっている。なお、回転部材１０２は、ロボット１００’が旋回する場合の旋回力より小さな摩擦力で回転するように、すなわち、ロボット１００’の旋回力よりも小さな摩擦力での回転が許容された状態で、ロボット１００’に設けられているものとする。なお、回転部材１０２は、更に、ロボット１００’の移動時の振動では、回転しないという条件を満たすように、ロボット１００’に設けられていても良い。
【００８０】
図２０には、ロボット１００’の走行車輪１２ａ，１２ｂと、キャスタ１６ａ，１６ｂの配置例が示されている。図２０では、説明及び図示の簡素化のため、上記第１、第２の実施形態と異なり、キャスタ１６ａ，１６ｂの個数を２個としている。ここでは、走行車輪１２ａ，１２ｂの回転速度差を利用して旋回動作を行う、２輪速度差方式の駆動方法を採用している。
【００８１】
ここで、２輪速度差方式の駆動方法について、図２１（ａ）〜図２１（ｃ）に基づいて、説明する。図２１（ａ）に示すように、走行車輪１２ａ，１２ｂを同一の速度で回転させれば、ロボット１００’を、直進（並進）移動させることができる。これに対し、２輪速度差方式では、任意の方向には並進移動することができないため、旋回動作などで向きを変更して走行方向を変える必要がある。旋回動作は、例えば、図２１（ｂ）、図２１（ｃ）のような動作で実現可能である。例えば、図２１（ｂ）に示すように、走行車輪１２ａ，１２ｂを逆方向に回転させると、ロボット１００’は、車輪間距離Ｌ以下の曲率での旋回動作を行うことができる。なお、走行車輪１２ａ，１２ｂを逆方向かつ同一速度で回転させれば、ロボット１００’をその場で旋回させることができる。また、図２１（ｃ）に示すように、走行車輪１２ａ，１２ｂを同一方向に異なる回転速度で回転させれば、ロボット１００’を、車輪間距離Ｌ以上の曲率で旋回させることができる。これら、図２１（ａ）〜図２１（ｃ）の動作を組み合わせることで、ロボット１００’は、任意の方向に移動することが可能となる。なお、２輪速度差方式には、構造が簡素化できるとともに、制御が容易になるというメリットがある。
【００８２】
図２２には、本第３の実施形態のロボット１００’の回転部材１０２に対して人が操作力を付与した際の、ロボット１００’の移動の様子が模式的に示されている。
【００８３】
ここで、人が回転部材１０２に対して操作力を与えてロボット１００’を退避させようとする場合、走行車輪１２ａ，１２ｂの位置や向きに関係なく、図２２に示すような操作力Ｆを回転部材１０２に作用させる。この場合、操作力Ｆの方向は、操作力Ｆの作用点とロボット１００’の中心を結ぶ方向とほぼ一致している。また、操作力Ｆの作用点とロボット１００’の中心を結ぶベクトルの方向は、ロボット１００’を退避させたい方向とほぼ一致するようになっている。
【００８４】
本第３の実施形態では、人が、ロボット１００’（回転部材１０２）の作用点に図２２のようなロボット１００’を退避させようとする操作力Ｆを加えると、操作意図推定手段４４（図３参照）が、ＺＭＰ検出手段２２にて検出されるＺＭＰから、上記第１の実施形態と同様にして操作意図を推定する。そして、移動手段４２が、操作意図の推定結果に基づいて、ロボット１００’を移動する。この場合、ロボット１００’は、図２２のように旋回動作を行うが、回転部材１０２は、操作力Ｆを受け続けている間、ロボット１００’の旋回には追従しないようになっている。このため、本第３の実施形態では、人は、ロボット１００’を退避させるための操作力Ｆを、継続的に同一の作用点に作用させることができるようになっている。
【００８５】
ここで、比較例（回転部材１０２を設けない場合）について、図２３に基づいて説明する。図２３に示すように、回転部材１０２を設けない場合、ロボットに図２２と同様の操作力Ｆを作用させると、ロボットは図２２と同様の動作を行う。この場合、ロボットの旋回動作に伴って、操作力Ｆを最初に作用させていた作用点も移動することから、人は、操作力Ｆの作用点をロボットの旋回にあわせて随時変更する必要がある。これにより、比較例では、ロボット対して、操作力Ｆを継続的に作用させることができず、ロボットを意図どおりに退避させることができない可能性がある。
【００８６】
以上説明したように、本第３の実施形態によると、２輪速度差方式の移動部（走行車輪１２ａ，１２ｂ）を介して走行面（接地面）に沿って移動するロボット１００’の外周部に、走行面に垂直な軸を中心として回転する回転部材１０２が設けられており、当該回転部材１０２が、ロボット１００’の旋回力よりも小さな摩擦力で回転する状態でロボット１００’に保持されている。これにより、人が回転部材１０２に対して操作力を付与する際に、ロボット１００’が旋回しても、回転部材１０２は当該ロボット１００’の旋回に追従しないようにすることができる。したがって、人は、操作力を同一の作用点に継続的に作用させることができるので、意図通りにロボット１００’を退避させることができる。これにより、ロボット１００’を退避させる際の操作性の向上を図ることが可能である。
【００８７】
なお、上記第３の実施形態では、非ホロノミックな駆動方法として、２輪速度差方式の駆動方法を採用した場合について説明したが、これに限らず、その他の非ホロノミック系の駆動方法を採用することとしても良い。
【００８８】
≪第４の実施形態≫
次に、移動体装置の第４の実施形態について、図２４〜図２７に基づいて説明する。なお、本第４の実施形態のロボット１００’は、上述した第３の実施形態と同様の構成を有している。
【００８９】
本第４の実施形態では、上記のように第３の実施形態と同様の構成を採用しているので、人がロボット１００’を退避させようとする場合には、回転部材１０２の同一の作用点に対して連続的に操作力Ｆを作用させることになる。この場合、ＺＭＰは、例えば図２４に示すように、定常静止状態のＺＭＰの位置（ロボット１００’が無負荷状態にあるときのＺＭＰの位置）から離れた位置を移動し続けることになる。
【００９０】
そこで、本第４の実施形態では、人がロボット１００’を退避させるときには、ＺＭＰが、図２４のように移動するという特徴を利用した処理を採用している。
【００９１】
図２５は、第４の実施形態に係るロボット１００’の制御系（図３と同様）による処理を示すフローチャートである。この図２５の処理では、まず、ステップＳ３０において、ＺＭＰ検出手段２２がＺＭＰの位置を検出する。また、加速度検知手段１８が加速度を検知したり、回転検知手段１４ａ，１４ｂが走行車輪１２ａ，１２ｂの回転を検知したりする。
【００９２】
次いで、ステップＳ３２では、操作意図推定手段４４が、ＺＭＰが退避判定領域を超えたか否かを判断する。ここで、退避判定領域とは、図２７（ａ）に示すような円形の領域であるものとし、図２のＺＭＰ検出手段２２が載っている土台部３０の上部に設定された領域である。この退避判定領域には、ロボット１００’が無負荷状態にあるときのＺＭＰ（定常静止状態でのＺＭＰ）の位置を含んでいる。なお、ステップＳ３２の判断が否定された場合には、ステップＳ３４以降の、退避速度算出及び当該退避速度を用いた制御が行われ、ステップＳ３２の判断が肯定された場合には、ステップＳ４８以降の通常モードでの制御が行われる。以下、これらの処理について具体的に説明する。
【００９３】
ステップＳ３２の判断が肯定され、ステップＳ３４に移行すると、車輪制御手段４０は、時間Ｔをカウントアップする。次いで、ステップＳ３６では、旋回最大速度Ωを算出する。なお、旋回最大速度Ωとは、ＺＭＰが退避判定領域から外れている時間の長さのみを考慮して定められる、旋回速度の最大値（仮の最大値）を意味する。具体的には、比例ゲインをＣとして、次式（７）に基づいて、旋回最大速度Ωを算出する。
Ω＝Ｃ×Ｔ        …（７）
【００９４】
次いで、ステップＳ３８では、車輪制御手段４０が、ロボット並進自由度と操作方向の角度誤差αを計算する。具体的には、角度誤差αは、図２６に示すような操作力の方向とロボット１００’の並進方向との間の角度であり、ｘｒｙr座標系上におけるＺＭＰの位置から、算出することができる。
【００９５】
次いで、ステップＳ４０では、旋回速度指令ωを次式（８）に基づいて、算出する。
ω＝Ω×α        …（８）
【００９６】
なお、上式（７）は、ロボット１００’に対して操作力Ｆを長時間付与している場合に、なるべく早く旋回を終了させようとの観点から、操作力Ｆを付与している時間に応じて、旋回最大速度を徐々に速くするための式である。また、上式（８）は、人がロボット１００’を退避させたい方向に対する、ロボット１００’の実際の向きの近づき度合い（角度誤差α）に応じて旋回最大速度Ωを補正して、旋回速度指令ωを算出するための式である。
【００９７】
次いで、ステップＳ４２では、車輪制御手段４０が、ステップＳ４０で算出した旋回速度指令ωが、システム許容値（ロボット１００’が実際に旋回できる旋回速度の最大値）ω0以下であるか否かを判断する。ここでの判断が肯定された場合には、ステップＳ４４に移行して、車輪制御手段４０は、車輪駆動手段２４ａ，２４ｂを介して、予め定められている退避並進速度ｖでロボット１００’を並進させるとともに、ステップＳ４０で算出された旋回速度指令ωにてロボット１００’を旋回させる。なお、ステップＳ４４の処理の後は、ステップＳ３０に戻る。
【００９８】
一方、ステップＳ４２の判断が否定された場合には、ステップＳ４６に移行する。ステップＳ４６では、車輪制御手段４０が、旋回速度指令ωをω0に置き換える。そして、ステップＳ４４では、車輪制御手段４０は、車輪駆動手段２４ａ，２４ｂを介して、予め定められている退避並進速度ｖでロボット１００’を並進させるとともに、置き換え後の旋回速度指令ω0にてロボット１００’を旋回させる。なお、ステップＳ４４の処理の後は、ステップＳ３０に戻る。
【００９９】
これに対し、ステップＳ３２の判断が否定された場合には、ステップＳ４８に移行して、車輪制御手段４０が、時間Ｔをゼロにリセットする。そして、ステップＳ５０では、車輪制御手段４０が、並進速度ｖを０、旋回速度指令ωを０に設定することで、ロボット１００’を停止させる。ステップＳ５０の処理の後は、ステップＳ３０に戻る。
【０１００】
その後は、ステップＳ３０以降の処理が繰り返され、ロボット１００’の電源がＯＦＦにされるなどして、ロボット１００’の移動制御が終了した段階で、図２５の処理が終了する。
【０１０１】
以上のような制御を行うことにより、図２７（ａ）に示すように、退避判定領域からＺＭＰが外れている間は、車輪制御手段４０は、ロボット１００’に適切な退避動作を継続的に行わせることが可能である。これに対し、図２７（ｂ）に示すようにＺＭＰが移動する場合には、車輪制御手段４０は、ロボット１００’に継続的な退避動作を行わせないようにすることが可能である。これにより、例えば、人が回転部材１０２以外の部分を押すような場合には、図２７（ｂ）のようなＺＭＰの挙動が得られるので、このような場合には、退避動作ではないとして、退避動作を継続的に行わないようにすることができる。また、ロボット１００’に荷物などを載せる際に、ロボット１００’の一部に荷物がぶつかったりしても、その一時的な力ではロボット１００’はほとんど動かないので、荷物の積載を容易に行うことが可能となる。
【０１０２】
以上、説明したように、本第４の実施形態によると、操作意図推定手段４４は、ＺＭＰが、ロボット１００’が無負荷状態にあるときのＺＭＰの位置を含む所定の退避判定範囲から外れたか否かを判断し（ステップＳ３２）、移動手段４２（車輪制御手段４０）は、ＺＭＰが退避判定範囲から外れている時間に応じた速度で、ロボット１００’を退避させる（ステップＳ３６〜ステップＳ４６）ので、回転部材１０２に操作力Ｆが継続的に付与されている時間に応じた退避速度で、ロボット１００’を適切に退避させることができる。
【０１０３】
なお、上記第４の実施形態では、回転部材１０２に人が接触したこと、あるいは所定の力で押していることを検知する検知手段を、回転部材１０２に設けることとしてもよい。この検知手段としては、例えば、静電タッチセンサやマイクロスイッチ等の接触センサを採用することができる。検知手段を設けることで、当該検知手段において回転部材１０２に対する人の接触があったことを検知した後に、図２５の処理を開始するというシーケンスを採用することができる。これにより、回転部材１０２に操作力Ｆが付与されていない間は、ロボット１００’は退避動作を行わないこととすることができるので、ロボット１００’の誤動作を抑制することができる。また、検知手段を設けることで、退避判定領域を狭くしても問題なく退避動作の制御を行うことができるので、退避操作に必要な操作力の低減を図ることができる。
【０１０４】
なお、退避判定領域としては、図４の領域Ｏを利用することとしても良い。また、図１４、図１５のような機構を用いて、ＺＭＰが退避判定領域内にあるか否かを判断することとしても良い。なお、退避判定領域は、図２７（ａ）のように、円形である場合に限らず、楕円形や矩形であっても良い。
【０１０５】
なお、上記第３、第４の実施形態では、図２２や図２６に示すように、ロボット１００’が退避する際に、旋回動作と並進動作を同時に行う場合について説明したが、これに限られるものではない。例えば、図２８に示すように、ロボット１００’に操作力Ｆが作用した直後は、車輪制御手段４０は、ロボット１００’が旋回動作のみを行うように制御し、操作力Ｆとロボット１００’の並進方向とが一致した段階で、ロボット１００’が並進動作のみを行うように制御することとしてもよい。このような制御を行うことで、ロボット１００’を操作力Ｆの方向に直接的に移動させることができるので、ロボット１００’が狭い通路上に存在するような場合でも、問題なく移動させることが可能となる。なお、この方法が採用できるのは、上記第３、第４の実施形態のロボット１００’に回転部材１０２が設けられているため、ロボット１００’が旋回動作のみを行っても、人は、操作力Ｆを回転部材１０２の同一作用点に作用させ続けることができるからである。
【０１０６】
上述した各実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【０１０７】
１２ａ，１２ｂ  走行車輪（車輪）
１４ａ，１４ｂ  回転検知手段
１８ａ，１８ｂ  加速度検知手段
２２  ＺＭＰ検出手段
４２  移動手段
４４  操作意図推定手段
４６  電流検知手段
５２  非操作力検出手段
５４  確率保持手段
１００  ロボット（移動体）
１０２  回転部材（リング状部材）
【図１】
0005601048.tif 000002
【図２】
0005601048.tif 000003
【図３】
0005601048.tif 000004
【図４】
0005601048.tif 000005
【図５】
0005601048.tif 000006
【図６】
0005601048.tif 000007
【図７】
0005601048.tif 000008
【図８】
0005601048.tif 000009
【図９】
0005601048.tif 000010
【図１０】
0005601048.tif 000011
【図１１】
0005601048.tif 000012
【図１２】
0005601048.tif 000013
【図１３】
0005601048.tif 000014
【図１４】
0005601048.tif 000015
【図１５】
0005601048.tif 000016
【図１６】
0005601048.tif 000017
【図１７】
0005601048.tif 000018
【図１８】
0005601048.tif 000019
【図１９】
0005601048.tif 000020
【図２０】
0005601048.tif 000021
【図２１】
0005601048.tif 000022
【図２２】
0005601048.tif 000023
【図２３】
0005601048.tif 000024
【図２４】
0005601048.tif 000025
【図２５】
0005601048.tif 000026
【図２６】
0005601048.tif 000027
【図２７】
0005601048.tif 000028
【図２８】
0005601048.tif 000029