(57)【特許請求の範囲】
【請求項１】
少なくとも１つの車輪と、当該車輪に回転可能に連結された負荷体とを備え、前記車輪を駆動することで前記負荷体の倒立制御を行う倒立型移動体であって、
前記負荷体の傾斜角度である負荷角度を検出する負荷角度検出器と、
前記負荷角度検出器により検出された負荷角度に基づいて、前記車輪を駆動するためのトルク指令を生成し、前記倒立制御を行う制御器と、
前記倒立型移動体の数式モデルに基づいて導出される推定器を用いて、前記負荷角度検出器により検出された負荷角度と、前記制御器により生成されたトルク指令と、に基づいて、前記負荷角度の推定値を算出し、当該算出した推定値と前記負荷角度検出器により検出された負荷角度との誤差である負荷角度推定誤差を算出する負荷角度推定誤差演算部と、
前記負荷角度推定誤差演算部により算出された負荷角度推定誤差が発散するか否かを判別する状態判別器と、
前記状態判別器により前記負荷角度推定誤差が発散すると判別された場合には、前記制御器による制御を切り替えて所定の安全確保制御を実施させる制御切替器と、を備える
倒立型移動体。
【請求項２】
前記負荷角度推定誤差演算部は、
前記負荷角度検出器により検出された負荷角度と、前記制御器により生成されたトルク指令と、に基づいて、前記推定器のゲインを算出する推定器ゲイン演算器と、
前記推定器を用いて、前記推定器ゲイン演算器により算出されたゲインと、前記負荷角度検出器により検出された負荷角度と、前記制御器により生成されたトルク指令と、に基づいて、前記負荷角度推定誤差を算出する負荷角度推定誤差演算器と、を備える
ことを特徴とする請求項１に記載の倒立型移動体。
【請求項３】
前記車輪の回転角度を検出する車輪角度検出器を更に備え、
前記状態判別器は、
前記負荷角度推定誤差演算部により算出された負荷角度推定誤差が発散するか否かを判別すると共に、当該負荷角度推定誤差と、前記負荷角度検出器により検出された負荷角度と、前記車輪角度検出器により算出された車輪角度と、に基づいて、前記倒立型移動体について予め定めた複数の状態のうちのいずれの状態であるかを判別し、
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散すると判別された場合には、前記制御器による制御を切り替えて、前記判別された状態に応じた所定の安全確保制御を実施させ、
前記状態判別器により前記負荷角度推定誤差が発散しないと判別された場合には、前記倒立制御の開始、継続、再開のいずれか１の制御を前記制御器に実施させる
ことを特徴とする請求項１に記載の倒立型移動体。
【請求項４】
前記状態判別器は、
前記負荷角度推定誤差が発散すると判別した場合に、当該負荷角度推定誤差に基づいて、前記倒立型移動体の移動中に搭乗物体が飛び降りた後の状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項５】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、前記倒立型移動体の移動中に搭乗物体が飛び降りた後の状態であると判別された場合に、前記制御器による制御を、前記搭乗物体の飛び降り後、所定のペースで徐々に減速し停止する制御に切り替えて実施させる
ことを特徴とする請求項４に記載の倒立型移動体。
【請求項６】
前記状態判別器は、
前記負荷角度推定誤差が発散すると判別した場合に、前記負荷角度に基づいて、搭乗物体の搭乗前または搭乗後に外部物体により前記倒立型移動体が支えられている状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項７】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、前記搭乗物体の搭乗前または搭乗後に外部物体により前記倒立型移動体が支えられている状態であると判別された場合に、前記制御器による制御を、前記トルク指令を０とする制御に切り替えて実施させる
ことを特徴とする請求項６に記載の倒立型移動体。
【請求項８】
前記状態判別器は、
前記負荷角度推定誤差が発散すると判別した場合に、前記負荷角度推定誤差に基づいて、移動中に前記倒立型移動体が物体と衝突した瞬間から後の状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項９】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、移動中に前記倒立型移動体が物体と衝突した瞬間から後の状態であると判別された場合に、前記制御器による制御を、前記車輪を衝突時と反対方向に所定の短い時間回転させ、減速停止する制御に切り替えて実施させる
ことを特徴とする請求項８に記載の倒立型移動体。
【請求項１０】
前記状態判別器は、
前記負荷角度推定誤差が発散すると判別した場合に、前記車輪角度に基づいて、前記車輪が溝または段差に挟まれて、少なくとも１方向に回転できなくなった状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項１１】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、前記車輪が溝または段差に挟まれて、少なくとも１方向に回転できなくなった状態であると判別された場合に、前記制御器による制御を、前記トルク指令を０とする制御に切り替えて実施させる
ことを特徴とする請求項１０に記載の倒立型移動体。
【請求項１２】
前記状態判別器は、
前記負荷角度推定誤差が発散すると判別した場合に、前記車輪角度と、前記負荷角度推定誤差と、に基づいて、路面との摩擦が小さく前記車輪が空転している状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項１３】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、路面との摩擦が小さく前記車輪が空転している状態であると判別された場合に、前記制御器による制御を、前記負荷角度検出器により検出される負荷角度がπ／２[ｒａｄ]に近付くまでの間、比較的低いモータトルクで、前記倒立型移動体の進行方向に前記車輪を回転させた後、当該検出される負荷角度がπ／２[ｒａｄ]に近付いた以降は、前記モータトルクを連続的に０に変化させる制御に切り替えて実施させる
ことを特徴とする請求項１２に記載の倒立型移動体。
【請求項１４】
前記状態判別器は、
前記負荷角度推定誤差が発散すると判別した場合に、前記負荷角度と、前記負荷角度推定誤差と、に基づいて、搭乗物体の搭乗時に、当該搭乗物体の一部が地面に残っている状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項１５】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、搭乗物体の搭乗時に、当該搭乗物体の一部が地面に残っている状態であると判別された場合に、前記制御器による制御を、当該搭乗物体が完全に前記倒立型移動体に搭乗するまでの間、前記制御器が用いる制御ゲインを比較的低い値に設定する制御に切替えて実施させる
ことを特徴とする請求項１４に記載の倒立型移動体。
【請求項１６】
前記状態判別器は、
前記負荷角度推定誤差が発散しないと判別した場合に、前記負荷角度に基づいて、搭乗物体が搭乗したまま移動している状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項１７】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散しないと判別され、かつ、搭乗物体が搭乗したまま移動している状態であると判別された場合に、前記制御器による制御を、前記倒立型移動体を倒立走行させる制御に切り替えて実施させる
ことを特徴とする請求項１６に記載の倒立型移動体。
【請求項１８】
前記状態判別器は、
前記負荷角度推定誤差が発散しないと判別した場合に、前記負荷角度に基づいて、搭乗物体が搭乗せずに前記倒立型移動体がその場で倒立している状態であるか否かを判別する
ことを特徴とする請求項３に記載の倒立型移動体。
【請求項１９】
前記制御切替器は、
前記状態判別器により前記負荷角度推定誤差が発散しないと判別され、かつ、搭乗物体が搭乗せずに前記倒立型移動体がその場で倒立している状態であると判別された場合に、前記制御器による制御を、前記倒立型移動体をその場で倒立させる制御に切り替えて実施させる
ことを特徴とする請求項１８に記載の倒立型移動体。
【請求項２０】
少なくとも１つの車輪と、当該車輪に回転可能に連結された負荷体とを備え、前記車輪を駆動することで前記負荷体の倒立制御を行う倒立型移動体の制御方法であって、
前記負荷体の傾斜角度である負荷角度を検出するステップと、
検出された負荷角度に基づいて、前記車輪を駆動するためのトルク指令を生成し、前記倒立制御を行うステップと、
前記倒立型移動体の数式モデルに基づいて導出される推定器を用いて、検出された負荷角度と、生成された前記トルク指令と、に基づいて、前記負荷角度の推定値を算出するステップと、
算出された前記負荷角度の推定値と検出された前記負荷角度との誤差である負荷角度推定誤差を算出するステップと、
算出された前記負荷角度推定誤差が発散するか否かを判別するステップと、
前記判別の結果、前記負荷角度推定誤差が発散する場合に、前記倒立制御を切り替えて所定の安全確保制御を実施させるステップと、を備える
倒立型移動体の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、倒立型移動体及びその制御方法に関する。
【背景技術】
【０００２】
倒立制御を行って移動する移動体が開発されている。このような倒立型移動体を具現化するに際しては、転倒や暴走などを防止し、安全に操作できるようにすることが重要となる。ここで、「倒立型移動体」とは、車輪などの移動手段と、人や荷物などの負荷体を載せるステップと、を備えた移動体であって、車輪を駆動動作させることにより負荷体が倒立した状態を保ちながら移動する移動体を意味する。
【０００３】
図５に、「倒立型移動体」の例を示す。図５に示す例は、ホイール５０１と、プラットホーム５０２と、ハンドル５０３と、グリップ５０４とを備えて構成され、ユーザ５０５を搬送する２輪倒立ロボットであり、倒立型移動体の典型である。
【０００４】
特許文献１乃至４には、倒立制御を行って移動する移動体が開示されている。例えば、特許文献１には、倒立型移動体に設けられた近接検出器を用いて搭乗者の存在の有無を検出し、搭乗者の存在が確認できなかった場合に、安全スイッチを用いて、車輪を有する地面接地モジュールの操作を阻止する倒立型移動体が開示されている（第４１頁、第１図など）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００３−５０２００２号公報
【特許文献２】特開２００９−２８０１３２号公報
【特許文献３】特開２００９−１４２１２７号公報
【特許文献４】特開２００９−１０１８９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば、倒立型移動体の搭乗者が存在しない場合において、安全に操作可能とすることを目的として、倒立型移動体の操作を安全スイッチにより阻止する技術は、従来から知られていた（例えば、特許文献１）。
しかしながら、倒立型移動体の危険な挙動（転倒、暴走など）は、搭乗者の有無のみに依存するわけではなく、他の複数の要因にも起因して引き起こされる。倒立型移動体の危険な状態としては、例えば、以下の状態が考えられる。
（１）走行中に搭乗者が倒立型移動体から飛び降りた後の状態、
（２）搭乗者の搭乗前または搭乗後に、搭乗者が手で倒立型移動体を支えている状態、
（３）走行中に倒立型移動体が物体と衝突した瞬間から後の状態、
（４）倒立型移動体の車輪が溝または段差に挟まれて、少なくとも１車輪が、少なくとも１方向に回転できなくなった状態、
（５）路面との摩擦が小さく、車輪が空転している状態、
（６）搭乗者の搭乗時に、その片足が地面に残っている状態、など。
従って、倒立型移動体を安全に操作するためには、このような危険な状態であるか否かを判別可能として、危険な状態であると判別される場合には、転倒や暴走などを防止するように安全に制御することが強く求められている。
【０００７】
従って、本発明は、上述した課題を解決して、倒立制御を実施すると危険な状態であるかを判別して、倒立型移動体を安全に制御させることが可能な倒立型移動体及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る倒立型移動体は、少なくとも１つの車輪と、当該車輪に回転可能に連結された負荷体とを備え、前記車輪を駆動することで前記負荷体の倒立制御を行う倒立型移動体であって、前記負荷体の傾斜角度である負荷角度を検出する負荷角度検出器と、前記負荷角度検出器により検出された負荷角度に基づいて、前記車輪を駆動するためのトルク指令を生成し、前記倒立制御を行う制御器と、前記倒立型移動体の数式モデルに基づいて導出される推定器を用いて、前記負荷角度検出器により検出された負荷角度と、前記制御器により生成されたトルク指令と、に基づいて、前記負荷角度の推定値を算出し、当該算出した推定値と前記負荷角度検出器により検出された負荷角度との誤差である負荷角度推定誤差を算出する負荷角度推定誤差演算部と、前記負荷角度推定誤差演算部により算出された負荷角度推定誤差が発散するか否かを判別する状態判別器と、前記状態判別器により前記負荷角度推定誤差が発散すると判別された場合には、前記制御器による制御を切り替えて所定の安全確保制御を実施させる制御切替器と、を備えるものである。
【０００９】
これにより、倒立型移動体の負荷角度と車輪のトルク指令とに基づいて、負荷角度推定誤差を算出し、負荷角度推定誤差が発散するか否かを判別することができ、判別結果に応じて、倒立型移動体は安全確保制御に切り替えることできるため、危険な状態を判別して、転倒や暴走などを防止することができる。
【００１０】
また、前記負荷角度推定誤差演算部は、前記負荷角度検出器により検出された負荷角度と、前記制御器により生成されたトルク指令と、に基づいて、前記推定器のゲインを算出する推定器ゲイン演算器と、前記推定器を用いて、前記推定器ゲイン演算器により算出されたゲインと、前記負荷角度検出器により検出された負荷角度と、前記制御器により生成されたトルク指令と、に基づいて、前記負荷角度推定誤差を算出する負荷角度推定誤差演算器と、を備えるようにしてもよい。
【００１１】
さらにまた、前記車輪の回転角度を検出する車輪角度検出器を更に備え、前記状態判別器は、前記負荷角度推定誤差演算部により算出された負荷角度推定誤差が発散するか否かを判別すると共に、当該負荷角度推定誤差と、前記負荷角度検出器により検出された負荷角度と、前記車輪角度検出器により算出された車輪角度と、に基づいて、前記倒立型移動体について予め定めた複数の状態のうちのいずれの状態であるかを判別し、前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散すると判別された場合には、前記制御器による制御を切り替えて、前記判別された状態に応じた所定の安全確保制御を実施させ、前記状態判別器により前記負荷角度推定誤差が発散しないと判別された場合には、前記倒立制御の開始、継続、再開のいずれか１の制御を前記制御器に実施させるようにしてもよい。
【００１２】
また、前記状態判別器は、前記負荷角度推定誤差が発散すると判別した場合に、当該負荷角度推定誤差に基づいて、前記倒立型移動体の移動中に搭乗物体が飛び降りた後の状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、前記倒立型移動体の移動中に搭乗物体が飛び降りた後の状態であると判別された場合に、前記制御器による制御を、前記搭乗物体の飛び降り後、所定のペースで徐々に減速し停止する制御に切り替えて実施させると好適である。
【００１３】
さらにまた、前記状態判別器は、前記負荷角度推定誤差が発散すると判別した場合に、前記負荷角度に基づいて、搭乗物体の搭乗前または搭乗後に外部物体により前記倒立型移動体が支えられている状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、前記搭乗物体の搭乗前または搭乗後に外部物体により前記倒立型移動体が支えられている状態であると判別された場合に、前記制御器による制御を、前記トルク指令を０とする制御に切り替えて実施させると好適である。
【００１４】
また、前記状態判別器は、前記負荷角度推定誤差が発散すると判別した場合に、前記負荷角度推定誤差に基づいて、移動中に前記倒立型移動体が物体と衝突した瞬間から後の状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、移動中に前記倒立型移動体が物体と衝突した瞬間から後の状態であると判別された場合に、前記制御器による制御を、前記車輪を衝突時と反対方向に所定の短い時間回転させ、減速停止する制御に切り替えて実施させると好適である。
【００１５】
さらにまた、前記状態判別器は、前記負荷角度推定誤差が発散すると判別した場合に、前記車輪角度に基づいて、前記車輪が溝または段差に挟まれて、少なくとも１方向に回転できなくなった状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、前記車輪が溝または段差に挟まれて、少なくとも１方向に回転できなくなった状態であると判別された場合に、前記制御器による制御を、前記トルク指令を０とする制御に切り替えて実施させると好適である。
【００１６】
また、前記状態判別器は、前記負荷角度推定誤差が発散すると判別した場合に、前記車輪角度と、前記負荷角度推定誤差と、に基づいて、路面との摩擦が小さく前記車輪が空転している状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、路面との摩擦が小さく前記車輪が空転している状態であると判別された場合に、前記制御器による制御を、前記負荷角度検出器により検出される負荷角度がπ／２[ｒａｄ]に近付くまでの間、比較的低いモータトルクで、前記倒立型移動体の進行方向に前記車輪を回転させた後、当該検出される負荷角度がπ／２[ｒａｄ]に近付いた以降は、前記モータトルクを連続的に０に変化させる制御に切り替えて実施させると好適である。
【００１７】
さらにまた、前記状態判別器は、前記負荷角度推定誤差が発散すると判別した場合に、前記負荷角度と、前記負荷角度推定誤差と、に基づいて、搭乗物体の搭乗時に、当該搭乗物体の一部が地面に残っている状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散すると判別され、かつ、搭乗物体の搭乗時に、当該搭乗物体の一部が地面に残っている状態であると判別された場合に、前記制御器による制御を、当該搭乗物体が完全に前記倒立型移動体に搭乗するまでの間、前記制御器が用いる制御ゲインを比較的低い値に設定する制御に切替えて実施させると好適である。
【００１８】
また、前記状態判別器は、前記負荷角度推定誤差が発散しないと判別した場合に、前記負荷角度に基づいて、搭乗物体が搭乗したまま移動している状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散しないと判別され、かつ、搭乗物体が搭乗したまま移動している状態であると判別された場合に、前記制御器による制御を、前記倒立型移動体を倒立走行させる制御に切り替えて実施させると好適である。
【００１９】
さらにまた、前記状態判別器は、前記負荷角度推定誤差が発散しないと判別した場合に、前記負荷角度に基づいて、搭乗物体が搭乗せずに前記倒立型移動体がその場で倒立している状態であるか否かを判別するようにしてもよい。前記制御切替器は、前記状態判別器により前記負荷角度推定誤差が発散しないと判別され、かつ、搭乗物体が搭乗せずに前記倒立型移動体がその場で倒立している状態であると判別された場合に、前記制御器による制御を、前記倒立型移動体をその場で倒立させる制御に切り替えて実施させると好適である。
【００２０】
本発明に係る倒立型移動体の制御方法は、少なくとも１つの車輪と、当該車輪に回転可能に連結された負荷体とを備え、前記車輪を駆動することで前記負荷体の倒立制御を行う倒立型移動体の制御方法であって、前記負荷体の傾斜角度である負荷角度を検出するステップと、検出された負荷角度に基づいて、前記車輪を駆動するためのトルク指令を生成し、前記倒立制御を行うステップと、前記倒立型移動体の数式モデルに基づいて導出される推定器を用いて、検出された負荷角度と、生成された前記トルク指令と、に基づいて、前記負荷角度の推定値を算出するステップと、算出された前記負荷角度の推定値と検出された前記負荷角度との誤差である負荷角度推定誤差を算出するステップと、算出された前記負荷角度推定誤差が発散するか否かを判別するステップと、前記判別の結果、前記負荷角度推定誤差が発散する場合に、前記倒立制御を切り替えて所定の安全確保制御を実施させるステップと、を備えるものである。
【００２１】
これにより、倒立型移動体の負荷角度と車輪のトルク指令とに基づいて、負荷角度推定誤差を算出し、負荷角度推定誤差が発散するか否かを判別することができ、判別結果に応じて、倒立型移動体は安全確保制御に切り替えることができるため、危険な状態を判別して、転倒や暴走などを防止することができる。
【発明の効果】
【００２２】
本発明によれば、倒立制御を実施すると危険な状態であるかを判別して、倒立型移動体を安全に制御させることが可能な倒立型移動体及びその制御方法を提供することができる。
【図面の簡単な説明】
【００２３】
【図１】実施の形態１にかかる倒立型移動体の制御システムの構成を示す図である。
【図３】実施の形態１にかかる倒立型移動体の模式的側面図である。
【図２】実施の形態１にかかる倒立型移動体の制御方法を示すフローチャートである。
【図４】実施の形態１にかかる倒立型移動体の危険又は安全な状態を判定する効果を確かめるシミュレーション結果を示す図である。
【図５】本発明に関連する倒立型移動体を示す図である。
【発明を実施するための形態】
【００２４】
実施の形態１．
以下、図面を参照して本発明の実施の形態について説明する。
図１は、本実施の形態に係る倒立型移動体の制御システムの構成図である。制御システム１００は、指令入力装置１０１と、制御器１０２と、倒立型移動体１０３と、負荷角度検出器１０４と、負荷角度推定誤差演算部１０５と、状態判別器１０８と、制御切替器１０９と、を備えている。
【００２５】
指令入力装置１０１は、例えば、搭乗者による走行操作（ハンドル操作、スイッチ操作、重心移動操作等）に応じて、移動体１０３が所望の走行状態（前後進、加減速、左右旋回、停止等）となる指令値を生成する。指令入力装置１０１は、例えば、負荷角度指令や倒立型移動体１０３の移動速度指令などを指令入力として生成する。
【００２６】
制御器１０２は、倒立型移動体１０３の負荷角度が、入力された指令に追従するように倒立型移動体１０３の倒立制御を実施する。また、制御器１０２は、制御切替器１０９からの制御切替指示に応じて、退避走行または停止などの所定の安全確保のための制御を実施する。制御器１０２は、これらの制御を行うため、トルク指令を生成する。
【００２７】
負荷角度検出器１０４は、制御器１０２が倒立制御に使用する負荷角度として、倒立型移動体１０３の鉛直線に対する傾斜角度を検出する。負荷角度検出器１０４は、倒立型移動体１０３に設置されている。負荷角度検出器１０４は、例えば、ジャイロセンサや加速度センサを用いて構成される姿勢センサである。
【００２８】
負荷角度推定誤差演算部１０５は、推定器ゲイン演算器１０５と、負荷角度推定誤差演算器１０６と、を備えている。負荷角度推定誤差演算部１０５は、倒立型移動体１０３の数式モデルにより導出される推定器（オブザーバ）を用いて、制御器１０２が出力するトルク指令と、負荷角度検出器１０４により検出される負荷角度と、に基づいて、負荷角度の推定値を算出し、算出した負荷角度の推定値と検出された負荷角度との誤差である負荷角度推定誤差を算出する。
【００２９】
推定器ゲイン演算器１０６は、制御器１０２が出力するトルク指令と、負荷角度検出器１０４により検出される負荷角度と、に基づいて、推定器（オブザーバ）を用いて、負荷角度推定値、負荷角速度推定値、負荷角加速度推定値などを推定する。さらに、推定器ゲイン演算器１０５は、制御器１０２が出力するトルク指令と、負荷角度検出器１０４により検出される負荷角度と、負荷角度推定値と、に基づいて、推定器ゲインを算出する。
【００３０】
負荷角度推定誤差演算器１０７は、推定器（オブザーバ）を用いて、トルク指令と、検出される負荷角度と、算出された推定器ゲインと、に基づいて、算出した負荷角度の推定値と検出された負荷角度との誤差である負荷角度推定誤差を算出する。
【００３１】
状態判別器１０８は、算出した負荷角度推定誤差が発散するか否かを判別する。また、状態判別器１０８は、算出した負荷角度推定誤差の波形形状に基づいて、倒立型移動体１０３の複数の状態のいずれの状態であるかを判別する。
【００３２】
制御切替器１０９は、状態判別器１０８による判別結果に基づいて、制御器１０２による倒立制御を切替えて、退避走行または停止するなどの所定の安全性確保制御を、制御器１０２に実施させる。制御切替器１０９は、状態判別器１０８により負荷角度推定誤差が発散すると判別された場合には、さらに、判別された状態に応じて、制御器１０２による制御を切り替えて、その判別された状態に対応する安全確保制御を、制御器１０２に実施させる。また、制御切替器１０９は、状態判別器１０８により負荷角度推定誤差が発散しないと判別された場合には、さらに、判別された状態に応じて、制御器１０２に通常の倒立制御（開始、継続、再開させるいずれか１の制御）を実施させる。
【００３３】
次に、図２を参照して倒立型移動体が、その状態に応じて倒立制御を切り替える仕組みについて詳細に説明する。図２は、本実施の形態にかかる倒立型移動体の模式的側面図である。
【００３４】
図２に示すように、倒立型移動体１０３は、同軸上に配置した２つの車輪２０２と、車輪に連結された負荷体２０１と、を備えている。負荷体２０１は、車輪２０２の回転軸を回転の中心として、回転可能に連結されている。負荷体２０１は、搭乗者や荷物などの搭乗物体、さらには、搭乗物体を支持するステップを含んで構成される。負荷角度とは、鉛直方向に対する負荷体２０１の傾斜角度を示す。倒立型移動体１０３は、負荷体２０１の倒立状態を維持し、かつ、進行方向（例えば、図の左右方向）に所望の速度で移動するように、車輪２０２を回転させるものである。移動体１０３は、例えば、負荷体２０１を前傾又は後傾させたときの傾斜角度に応じて、前進又は後進するように構成されている。なお、図示は省略するが、倒立型移動体１０３は、車輪２０２を回転させるモータトルクを伝達する減速機と、該モータトルクを発生するモータと、該モータを駆動するサーボアンプと、車輪２０２の回転角度を検出する車輪角度検出器と、モータに所望の回転速度指令を入力する入力装置と、を備えている。
【００３５】
ここで、倒立型移動体の状態とは、具体的には以下に定める状態を含む。なお、以下の状態１〜８のうち、状態１及び状態２は、搭乗者にとって安全な状態の例を示す。また、状態３から状態８は、危険な状態の例を示す。
状態１：搭乗物体が搭乗したまま走行している状態
状態２：搭乗物体が搭乗せずに倒立型移動体がその場で倒立している状態
状態３：走行中に搭乗物体が倒立型移動体１０３から飛び降りた後の状態
状態４：搭乗物体の搭乗前または搭乗後に、搭乗者の手などの外部物体によって倒立型移動体１０３が支えられている状態
状態５：走行中に倒立型移動体１０３が物体と衝突した瞬間から後の状態
状態６：倒立型移動体の車輪２０２が溝または段差に挟まれて、少なくとも１方向に回転できなくなった状態
状態７：路面との摩擦が小さく、車輪２０２が空転している状態
状態８：搭乗物体の搭乗時に、搭乗者の片足などその一部が地面に残っている状態
【００３６】
危険状態（状態３から状態８）の詳細を以下に説明する。
状態３では、搭乗者が飛び降りた後、倒立型移動体１０３と搭乗者とが接触する可能性がある。例えば、跳ね上がってきたハンドル（例えば、図５のハンドル５０３）と接触する可能性がある。
状態４では、搭乗者に向かってハンドル（例えば、図５のハンドル５０３）が傾斜する角度で、搭乗者が倒立型移動体１０３を支えると、倒立型移動体１０３が搭乗者に向かって走行して、搭乗者と接触する可能性がある。
状態５では、搭乗者による制御が実施できずに倒立型移動体１０３が暴走してしまう可能性がある。
状態６では、倒立型移動体１０３が、車輪２０２が回転できなくなった方向に回転させようとすることで、車輪２０２が溝または段差からわずかに外れた瞬間に最大トルクで回転して、結果として、倒立型移動体１０３が大きく転倒してしまう可能性がある。
状態７では、車輪２０２は床から小さな反力しか受けられないため、負荷角度を所望の角度にするために最大トルクで車輪２０２が回転してしまい、その結果、路面の摩擦が変化すると、倒立移動体１０３が大きく振れてしまう可能性がある。
状態８では、状態４と同様に、ハンドルの角度に応じて、搭乗者の地面に残っている足と、倒立型移動体１０３やその車輪２０２と、が接触する可能性がある。
【００３７】
図２に例示した倒立型移動体を数式モデルによりモデル化するため、倒立型移動体の運動方程式を説明する。以下、解析力学の手法を用いて運動方程式を導出する。
まず、運動エネルギーＴとポテンシャルエネルギーＶは、以下の（数１）と（数２）を用いてそれぞれ表される。
【００３８】
【数１】
0005488095.tif 000002
【００３９】
【数２】
0005488095.tif 000003
【００４０】
なお、（数１）及び（数２）で用いた記号の意味は次の通りである。
θ１：負荷角度
θ２：車輪角度
ｍ１：負荷質量
Ｊ１：負荷慣性モーメント
ｍ２：車輪質量
Ｊ２：車輪慣性モーメント
ｌ：負荷重心と車軸の距離
ｒ：車輪半径
ｇ：重力加速度
【００４１】
次に、（数１）と（数２）を用いてラグランジアンＬ＝Ｔ−Ｖを算出し、オイラー・ラグランジュ方程式を用いると、運動方程式は、以下の（数３）及び（数４）として求められる。
【００４２】
【数３】
0005488095.tif 000004
なお、（数３）で用いた記号の意味は次の通りである。
Ｔｍ：モータトルク
【００４３】
【数４】
0005488095.tif 000005
【００４４】
次に、上述した状態１から状態８を検出し、検出した各状態に応じて倒立制御を切り替える原理を説明する。まず（数３）と（数４）から、車輪角度θ２の２階時間微分値（式中では、θ２の上部に２つのドットを付して示す変数）を消去することで、以下の（数５）を得る。
【００４５】
【数５】
0005488095.tif 000006
【００４６】
負荷角度θ１を推定する推定器（オブザーバ）を、(数５）に基づいて、以下の（数６）の構成で設計する。推定器（オブザーバ）は、検出される負荷角度θ１と、トルク指令Ｔｍと、から、負荷角度推定値、負荷角速度推定値、負荷角加速度推定値などを推定することができる。なお、詳細は後述するが、（数６）において、後述する（数９）で示す推定器ゲインＬを設定することで、負荷角度推定値が負荷角度に収束する。
【数６】
0005488095.tif 000007
【００４７】
なお、（数６）で用いた記号の意味は次の通りである。
Ｌ：推定器ゲイン
ｓｇｎ（・）：シグナム関数（符号関数）
θ１＾：負荷角度推定値（式中では、θ１の上部にハット（＾）を付して示す変数）
θ１〜：負荷角度推定誤差（式中では、θ１の上部にチルダ（〜）を付して示す変数）
ｓ：中間変数
ｃ：負荷角度推定誤差の収束の速さ
【００４８】
次に、負荷角度推定誤差θ１〜を０に収束させる推定器ゲインＬの十分条件を、（数６）の推定器を用いて導出する。（数６）において負荷角度推定誤差θ１〜を０に収束させるためには、中間変数ｓを０に収束させればよいので、リアプノフ関数の候補として以下の（数７）を用いる。
【００４９】
【数７】
0005488095.tif 000008
【００５０】
（数７）において、全てのｓ≠０においてＶ＞０である。リアプノフ関数候補Ｖの１階時間微分が、全てのｓ≠０において負となれば、中間変数ｓは０に収束する。すなわち、以下の（数８）が成り立てばよい。
【００５１】
【数８】
0005488095.tif 000009
【００５２】
（数８）の十分条件は、以下の（数９）となる。
【数９】
0005488095.tif 000010
【００５３】
なお、（数９）に用いた記号の意味は次の通りである。
δ：倒立型移動体１０３の状態判定指標
【００５４】
検出器ゲインＬを（数９）のように設定することで（数８）が成立し、中間変数ｓは、０に収束する。ｓが０に収束すると（数６）より負荷角度推定誤差θ１〜はｃの速さで収束し、負荷角度推定値θ１＾は負荷角度θ１に収束することになる。
【００５５】
ここで、倒立型移動体１０３に対して、（数３）及び（数４）で示した運動方程式に含まれない外力が加わった状況を想定する。かかる状況において、その外力の絶対値が（数９）の状態判定指標δよりも大きくなった場合には（数９）が成立しなくなり、負荷角度推定誤差θ１〜が発散する。
【００５６】
従って、負荷角度推定誤差θ１〜の発散または収束状況に応じて、倒立型移動体１０３に対して、状態判定指標δよりも大きな外力が加わったか否かを判定することができる。上述した複数の危険状態のうち、状態１及び状態２の場合には負荷角度推定誤差θ１〜は０に収束するのに対して、状態３から状態８の場合には、負荷角度推定誤差θ１〜は発散する。
【００５７】
以上説明した原理に基づいて、図１に示した推定器ゲイン演算器１０６は、（数９）を用いて推定器ゲインＬを算出する。負荷角度推定誤差演算器１０７は、（数５）及び（数６）に基づいて、負荷角度推定誤差θ１〜を算出する。状態判別器１０８は、算出された負荷角度推定誤差θ１〜が発散するか否かを判別する。判別の結果、負荷角度推定誤差θ１〜が０に収束している間は、倒立型移動体１０３は安全な状態にあると判定し、倒立制御を継続する。一方で、判別の結果、負荷角度推定誤差θ１〜が発散する場合には、上述した状態３から状態８のような危険な状態であるため、倒立型移動体１０３を退避走行または停止させる制御を実施する。さらに、後述するように、状態判別器１０８は、倒立型移動体１０３が上述した状態１から状態８のいずれであるかを判別することもできる。
【００５８】
負荷角度推定誤差θ１〜を用いて、上述した状態１から状態８を、以下の条件に基づいて判別する。この判別は、状態判別器１０８により行う。なお、以下の判別条件において、ｄは負荷角度推定誤差θ１〜の収束・発散を判定する閾値であり、ｃ５１、ｃ５２、ｃ６１、ｃ６２、ｃ７１、ｃ７２は一定値とする。
【００５９】
（状態１の判別条件）
【数１０】
0005488095.tif 000011
状態１の判別条件（数１０）は、走行中の倒立型移動体１０３の負荷角度θ１は、進行方向に非零値を取ることに基づいて導出した。
【００６０】
（状態２の判別条件）
【数１１】
0005488095.tif 000012
状態２の判別条件（数１１）は、搭乗者が搭乗せずに倒立型移動体１０３がその場で倒立している場合には、負荷角度θ１が０であることに基づいて導出した。
【００６１】
（状態３の判別条件）
【数１２】
0005488095.tif 000013
状態３の判別条件（数１２）は、搭乗者が飛び降りた場合には、負荷慣性モーメントが突然減少して、図２に例示した負荷体２０１を起き上がらせる方向に、負荷角度推定誤差θ１〜がオーバーシュートすることに基づいて導出した。
【００６２】
（状態４の判別条件）
【数１３】
0005488095.tif 000014
状態４の判別条件（数１３）は、負荷体２０１を外から手で支えている場合には、負荷角度θ１が一定値を取り、モータトルクＴｍが飽和して一定値を取ることに基づいて導出した。
【００６３】
（状態５の判別条件）
【数１４】
0005488095.tif 000015
状態５の判別条件（数１４）は、倒立型移動体１０３が一定速度で移動中に物体と衝突した場合には、衝突の直後の所定の短い時間の間、一定速度で移動し、モータトルクＴｍが飽和することに基づいて導出した。
【００６４】
（状態６の判別条件）
【数１５】
0005488095.tif 000016
状態６の判別条件（数１５）は、図２に例示した車輪２０２が少なくとも片方に動かなくなった場合には、車輪速度ｄθ２／ｄｔが０となり、モータトルクＴｍが飽和し、負荷体２０１が自由落下することに基づいて導出した。
【００６５】
（状態７の判別条件）
【数１６】
0005488095.tif 000017
状態７の判別条件（数１６）は、車輪２０２が空転する場合には、車輪速度ｄθ２／ｄｔが非零となり、負荷体２０１を起き上がらせるためにモータトルクＴｍが飽和し、路面からの反力が得られないために負荷体２０１が自由落下することに基づいて導出した。
【００６６】
（状態８の判別条件）
【数１７】
0005488095.tif 000018
状態８の判別条件（数１７）は、搭乗者が倒立型移動体１０３に片足を乗せており、且つ、倒立型移動体１０３が搭乗者側に傾いている状態では、路面に着いている足に搭乗者の体重がより多く掛かっており、搭乗者から遠い側に傾いている状態では、倒立型移動体１０３に載せている足に搭乗者の体重がより多く掛かっていることに基づいて導出した。
【００６７】
上述した判別条件により状態判別器１０８が状態の判別を行い、判別結果が制御切替器１０９に出力される。制御切替器１０９は、状態判別器１０８から入力された状態が状態１または状態２である場合には、制御器１０２が倒立制御を開始／継続／再開するように切り替える。制御切替器１０９は、状態判別器１０８から入力された状態が状態３から状態８のいずれかの状態である場合には、その状態に応じて、制御器１０２が退避走行または停止する制御を実施するように切り替える。
【００６８】
状態３〜状態８のいずれかの危険状態であると判別された場合の、制御器１０２による退避走行または停止の具体例、およびその効果を説明する。
【００６９】
（状態３の場合）
走行中に搭乗者が倒立型移動体１０３から飛び降りた後の状態では、所定のペースで徐々に減速して停止させる。これにより、飛び降りた搭乗者と倒立型移動体１０３とが接触する危険を低減することができる。
【００７０】
（状態４の場合）
搭乗前または搭乗後に、搭乗者が手で倒立型移動体１０３を支えている状態では、モータトルクＴｍを０にする。これにより、倒立型移動体１０３が暴走して周囲の物体と接触する危険性を低減することができる。
【００７１】
（状態５の場合）
走行中に倒立型移動体１０３が物体と衝突した瞬間から後の状態では、衝突時と反対方向に車輪２０２を所定の短い時間回転させ、その後、減速して停止させる。これにより、搭乗者及び衝突した物体への被害を低減することができる。
【００７２】
（状態６の場合）
倒立型移動体の車輪２０２が溝または段差に挟まれて、少なくとも１方向に回転できなくなった状態では、モータトルクＴｍを０にする。これにより、車輪２０２が溝などから突然外れた場合に、倒立型移動体１０３が急発進する危険性を低減することができる。
【００７３】
（状態７の場合）
路面との摩擦が小さく、車輪２０２が空転している状態では、検出される負荷角度θ１がπ／２[ｒａｄ]に近付くまでの間、比較的低いモータトルクＴｍで、倒立型移動体１０３の進行方向に車輪２０２を回転させ、そして、負荷角度θ１がπ／２[ｒａｄ]に近付いたら、モータトルクＴｍを連続的に０に変化させる。これにより、倒立型移動体１０３が転倒するような場合には、搭乗者への衝撃を低減できる可能性がある。
【００７４】
（状態８の場合）
搭乗者の搭乗時に、その片足が地面に残っている状態では、搭乗者の両脚が倒立型移動体１０３に乗るまでの間、制御ゲインを比較的低い値に設定する。例えば、制御帯域が１０[Ｈｚ]程度となるようにする。これにより、路面に残っている搭乗者の足が倒立型移動体１０３と接触する危険性を低減することができ、同時に、搭乗時に搭乗者はバランスをとりやすくなることから、安全に乗車できるようになるという効果がある。
【００７５】
図３を参照して、倒立型移動体の倒立制御と、退避走行または停止させる制御と、を切り替える処理を説明する。図３は倒立型移動体の制御方法のフローチャートである。
まず、搭乗者が、所望の負荷角度、移動速度などの指令を、指令入力装置１０１を用いて入力する（Ｓ３０１）。負荷角度検出器１０４は、一定周期で、負荷角度を検出する（Ｓ３０２）。
【００７６】
負荷角度推定誤差演算部１０５（推定器ゲイン演算器１０６及び負荷角度推定誤差演算器１０７）は、上述したようにして、負荷角度推定誤差θ１〜を算出する（Ｓ３０３）。状態判別器１０８は、負荷角度推定誤差θ１〜が発散しているか否かを判別し、また、負荷角度推定誤差θ１〜の波形形状に基づいて、上述の状態１から状態８のいずれであるかを判別する（Ｓ３０４）。
【００７７】
制御切替器１０９は、負荷角度推定誤差θ１〜が収束する場合（状態１または状態２）には、倒立制御を開始／継続／再開させるように、制御器１０２の制御を切り替える（Ｓ３０５）。一方で、制御切替器１０９は、負荷角度推定誤差θ１〜が発散する場合（状態３から状態８のいずれか）には、指令入力に応じた制御を中止させ、判別した状態に応じて、退避走行または停止させるように制御器１０２の制御を切り替える（Ｓ３０６）。指令入力に応じた制御を制御器１０２に中止させるためには、制御切替器１０９は、例えば、指令入力装置１０１からの入力指令に基づいて制御器１０２が制御指令を算出する際に用いるゲインについて、そのゲインの値を０に設定すればよい。以降、Ｓ３０１からＳ３０６の処理が再び繰り返される。
【００７８】
次に、図４を参照して、本発明の効果を説明する。ここでは、（数６）の推定器を用いて倒立型移動体１０３の安全または危険な状態を判定するシミュレーション行い、図４にその結果を示す。なお、シミュレーションに用いた数値は以下の通りである。
ｍ１＝７０[ｋｇ]
Ｊ１＝２５．２[ｋｇ・ｍ＾２]
ｍ２＝１５[ｋｇ]
Ｊ２＝０．０７５[ｋｇ・ｍ＾２]
ｌ＝０．９[ｍ]
ｒ＝０．１[ｍ]
ｇ＝９．８[ｍ／ｓ＾２]
Ｄ＝１×１０＾−６[Ｎ・ｓ／ｍ]（Ｄ：車輪と路面の間の粘性摩擦係数）
ｃ＝５００［ｒａｄ／ｓ］
δ＝０．０１
Ｋｐ＝５０[ｓ＾−１]（Ｋｐ：負荷角度比例制御ゲイン）
Ｋｖ＝５０（２π）[ｓ＾−１]（Ｋｖ：負荷速度比例制御ゲイン）
Ｔ＝１×１０＾−３[ｓ]（Ｔ：制御周期）
【００７９】
本シミュレーションでは、制御器１０２は、負荷角度θ１及び車輪速度θ２を、上記ゲイン（Ｋｐ、Ｋｖ）を用いてそれぞれ比例制御する。そして、車輪２０２が接触する路面が、滑らない状態（状態１）から滑る状態（状態７）へと変化する場合に、（数６）の推定器が算出する負荷角度推定誤差θ１〜に基づいて、倒立型移動体１０３の倒立型移動体１０３の状態を判別した。
【００８０】
図４（ａ）に示すように、時間２[ｓ]において、車輪２０２と路面とが滑らない状態（縦軸の値１で示す、stick）から滑る状態（０で示す、slip）へと路面状態が変化する。
図４（ｂ）では、与えられる負荷角度指令を破線で示し、検出される負荷角度θ１を実線で示している。このとき、図４（ａ）で示した状況下において、図４（ｂ）に示すような負荷角度指令を与えた場合には、検出される負荷角度θ１により示されように、滑っている間制御不能となり、負荷体２０１が発散していることが分かる。
【００８１】
図４（ｃ）では、負荷角度推定誤差演算器１０７が出力する負荷角度推定誤差θ１〜を実線で示している。図４（ａ）、（ｂ）に示した状況の下で、負荷角度推定誤差演算器１０７が出力する負荷角度推定誤差θ１〜は、図４（ｃ）に示すように変化する。すなわち、外力に起因して上述した運動方程式が成立しなくなることで、負荷角度推定誤差θ１〜が閾値を超えて変化する。
【００８２】
図４（ｃ）において、状態判別器１０８は、負荷角度推定誤差θ１〜が所定の範囲に収まっている時間区間のうち、負荷角度θ１＝０である区間（０[ｓ]から１[ｓ]）では、状態２と判別し、負荷角度θ１≠０である区間（１[ｓ]以降）では、状態１であると判別する。そして、状態判別器１０８は、負荷角度推定誤差θ１〜が破線の範囲を超えている時間区間において、負荷角度推定誤差θ１〜が２次曲線的に発散していること、及び、車輪角速度（車輪角度θ２の２階時間微分値）が非零であること（不図示）に基づいて、状態７であると判別する。なお、図４（ｃ）では、破線により所定の範囲を示す。また、所定の範囲は、上述したδに基づいて定められ、当該閾値δは、ユーザにより予め適切な値が設定される。
【００８３】
制御切替器１０９は、状態の判別結果に基づいて、状態２及び状態１である間は、上述した制御ゲインを用いた比例制御を制御器１０２に実施させることで、倒立型移動体１０３の倒立状態を維持させる。そして、状態７に変化した後は、負荷角度θ１がπ／２[ｒａｄ]に近付くまでの間、比較的低いモータトルクＴｍで倒立型移動体１０３の進行方向に車輪２０２を回転させ、負荷角度θ１がπ／２[ｒａｄ]に近付いた後は、モータトルクＴｍを連続的に０に変化させる。このようにモータトルクＴｍを変化させることにより、車輪２０２と路面との間の小さな摩擦（粘性摩擦係数Ｄ）によって、負荷体２０１を起き上がらせる方向に力が働くことになるため、倒立型移動体１０３が転倒した場合においても、搭乗者への衝撃を低減することができる。
【００８４】
以上説明したように、倒立型移動体１０３は、２つの非線形運動方程式（数３、数４）を用いて記述される。これら２つの運動方程式を変形することで、負荷角度のみを含む１つの非線形微分方程式（数５）を得る。この非線形微分方程式に基づいて、負荷角度を推定する非線形推定器（数６）を設計する。
そして、負荷角度と負荷角度推定値との差を負荷角度推定誤差として、負荷角度推定誤差の所望のダイナミクスを表す１階微分関数を中間変数として定義し、その中間変数の２次関数であるリアプノフ関数候補（数７）を導入する。
このリアプノフ関数候補は上記中間変数が非ゼロの場合に正となり、リアプノフ関数候補の１階時間微分（数８）が負となるように、上記非線形推定器の推定器ゲインを設定する（数９）。これにより、倒立型移動体１０３が、上記非線形運動方程式に含まれない大きな外力を受けていない場合には、負荷角度推定誤差は０に収束し、そのような外力を受けた場合には、負荷角度推定誤差は発散する。
【００８５】
負荷角度推定誤差が０に収束している間は、倒立型移動体１０３は安全な状態にあると判定することができるため、この間は倒立制御を継続する。一方で、負荷角度推定誤差が発散した場合には、倒立型移動体１０３は危険な状態にあると判定することができるため、退避走行または停止などの安全確保のための制御を行う。
さらに、負荷角度推定誤差が発散した場合には、その時の負荷角度推定誤差の波形の特徴に基づいて、複数の危険な状態を判別することができるため、それぞれの状態に応じた退避走行または停止させる制御を実施する。
【００８６】
従来の倒立型移動体では、危険状態であるか否かの自動判別は困難であった。
これに対して本発明では、検出される負荷角度のみを用いて非線形推定器の推定誤差の発散または収束を検出することで、危険状態であるか否かを判別可能とし、倒立型移動体１０３を安全に制御させることを可能とした。
さらに、負荷角度推定誤差の波形の特徴に基づいて、危険な状態を正確に判別可能とし、各危険状態に応じた安全な制御を実施可能とした。
従って、本発明によれば、危険な状態を判別して、安全となるように制御を行うことで、転倒または暴走を防止するができる。
【００８７】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述した８の状態は例示であり、搭乗者にとって安全な状態及び危険な状態として、他の状態を定めるものとしてもよい。危険な状態としては、倒立型移動体のモデル化の際に想定されていなかった外力に起因して、搭乗者にとって倒立型移動体の挙動が危険となる状態であればよい。
【００８８】
また、上述した実施の形態１では、２つの車輪２０２を備える倒立型移動体について例示したが、本発明はこれに限定されず、１以上の車輪２０２を駆動することで倒立制御を行う倒立型移動体であればよい。
【００８９】
また、制御システムの各要素は、各種演算器として動作する論理素子等のハードウェアで構成されたものに限らず、ＣＰＵ（中央処理装置）、メモリ（記憶装置）等を備えたコンピュータによって構成されていてもよい。そして、このコンピュータに所定のプログラムを組み込んで制御器１０２、推定器ゲイン演算器１０６、負荷角度推定誤差演算器１０７、状態判別器１０８、制御切替器１０９等の各機能を実現させるようにしてもよい。
【符号の説明】
【００９０】
１００：制御システム、
１０１：指令入力装置、
１０２：制御器、
１０３：倒立型移動体、
１０４：負荷角度検出器、
１０５：負荷角度推定誤差演算部、
１０６：推定器ゲイン演算器、
１０７：負荷角度推定誤差演算器、
１０８：状態判別器、
１０９：制御切替器、
２０１：負荷体、
２０２：車輪、
５０１：ホイール、
５０２：プラットホーム、
５０３：ハンドル、
５０４：グリップ、
５０５：ユーザ
【図１】
0005488095.tif 000019
【図２】
0005488095.tif 000020
【図３】
0005488095.tif 000021
【図４】
0005488095.tif 000022
【図５】
0005488095.tif 000023