(57)【要約】【課題】車体の倒立状態を維持したまま、より高い段差を乗り越えることができる倒立移動装置を提供する。【解決手段】倒立移動装置１０は、路面の段差を検出する路面センサ２９と、車体２０の傾斜角速度θ’を検出するジャイロセンサ２８と、車輪１２、１４の回転角速度を検出するエンコーダ２２ａ、２４ａと、各センサにより検出された検出値に応じて、コントローラ７０がモータ２２、２４に制御指令値を出力することにより、車体２０を倒立状態に維持しながら路面上を走行する。コントローラ７０は、路面センサ２９により進行方向に段差が検出された場合は、段差を乗り越えるときに車体２０を進行方向に対して後ろ側に傾斜させる。【選択図】図１２
2007219986.tif 000002
【特許請求の範囲】
【請求項１】
１または複数の回転体と、回転体によって支持される車体と、回転体を回転させる駆動装置とを備え、駆動装置によって回転体を駆動することで車体を倒立状態に維持しながら路面上を走行する倒立移動装置であって、
車体の進行方向の路面の段差を検出する路面センサと、
車体の傾斜角及び傾斜角速度の少なくとも１つを検出する傾斜角センサと、
車体の走行速度を特定可能な物理量を検出する速度センサと、
路面センサにより検出された路面の段差の有無と、傾斜角センサにより検出された検出値と、速度センサにより検出された検出値に応じて、駆動装置に制御指令値を出力するコントローラと、を備えており、
コントローラは、路面センサにより進行方向に段差が検出された場合は、段差を乗り越えるときに車体を進行方向に対して後ろ側に傾斜させることを特徴とする倒立移動装置。
【請求項２】
コントローラは、
路面センサで検出された段差の高さから段差乗り越え時の車体の目標走行速度と目標傾斜角を決定する目標値決定部と、
決定された目標走行速度及び目標傾斜角並びに速度センサで検出された車体の速度に応じて車体の目標速度パターンを決定する目標速度パターン決定部と、
傾斜角センサで検出された傾斜角に応じて車体の倒立状態を維持し、かつ、車体の速度が決定された目標速度パターンとなるように制御指令値を算出する制御指令値算出部と、
を有していることを特徴とする請求項１に記載の倒立移動装置。
【請求項３】
目標速度パターン決定部は、目標値決定部で決定された目標傾斜角から段差乗り越え時の目標減速度を決定し、その目標減速度と速度センサで検出された車体の速度と目標値決定部で決定された目標走行速度から目標速度パターンを決定することを特徴とする請求項２に記載の倒立移動装置。
【請求項４】
コントローラは、路面センサによって検出された段差が所定の高さよりも低い場合にのみ、倒立移動装置に段差を乗り越えさせることを特徴とする請求項１〜３のいずれかに記載の倒立移動装置。
【請求項５】
１または複数の回転体と、回転体によって支持される車体と、回転体を回転させる駆動装置と、倒立移動装置の進行方向の路面の段差を検出する路面センサと、車体の傾斜角及び傾斜角速度の少なくとも１つを検出する傾斜角センサと、倒立移動装置の走行速度を特定可能な物理量を検出する速度センサと、路面センサと傾斜角センサと速度センサの検出結果に応じて制御指令値を駆動装置に出力するコントローラとを備え、駆動装置が制御指令値に基づいて回転体を駆動することで車体を倒立状態に維持しながら路面上を走行する倒立移動装置の制御方法であり、
路面センサにより倒立移動装置の進行方向の段差が検出された場合に、検出された段差の高さから、段差乗り越え時の車体の目標走行速度と目標傾斜角を決定する第１ステップと、
第１ステップで算出された車体の目標走行速度及び目標傾斜角並びに速度センサで検出された検出値に応じて目標速度パターンを決定する第２ステップと、
傾斜角センサで検出された傾斜角に応じて車体の倒立状態を維持し、かつ、車体の速度が決定された速度パターンとなるように制御指令値を算出する第３ステップと、を有し、
上記各工程をコントローラで実行することで倒立移動装置に段差を乗り越えさせることを特徴とする倒立移動装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１または複数の回転体と、その回転体に支持された車体と、を備え、車体を倒立状態に維持しながら路面上を走行する倒立移動装置に関する。本明細書中、「倒立移動装置」とは、車体の重心が回転体の回転中心よりも上方に位置し、回転体を駆動しないと車体が倒立状態を維持できない移動装置をいう。「倒立状態」とは、車体の重心と回転体の回転中心とを結んだ直線が、鉛直方向から所定角度以上傾いていない状態をいう。「車体の傾斜角」とは、車体の重心と回転体の回転中心とを結んだ直線と、鉛直方向とが成す角度をいう。
【背景技術】
【０００２】
車体を倒立状態に維持しながら路面上を走行する倒立移動装置として、例えば、特許文献１の倒立移動装置が知られている。この倒立移動装置は、同一回転軸上に配置された２つの車輪と、車輪によって支持される車体と、車輪を駆動させる駆動装置と、車体の傾斜角を検出する傾斜角センサと、傾斜角センサで検出された傾斜角に応じて駆動装置に制御指令値を出力するコントローラとを備えている。
この倒立移動装置では、傾斜角センサが車体の傾斜角を検出する。コントローラは、検出した車体の傾斜角に基づいて車体の倒立状態を維持し、かつ、車体が目標速度で走行するように駆動装置に制御指令値を出力する。駆動装置は、コントローラから出力された制御指令値に基づいて車輪を駆動する。これによって、倒立移動装置は、車体を倒立状態に維持しながら、路面上を目標の速度で走行することができる。
【０００３】
【特許文献１】特開２００４−２９５４３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この種の倒立移動装置では、倒立移動装置が路面上の段差を乗り越える際に、車体の倒立状態を乱す外乱力が倒立移動装置に作用する。すなわち、図１４に示すように、倒立移動装置６０が路面１０４上の段差１０２を乗り越えようとすると、まず、倒立移動装置６０の車輪が路面上の段差１０２に接触する。このため、倒立移動装置６０の車輪には、段差から進行方向に対して後ろ側に外乱力Ｆが作用する。車輪に外乱力Ｆが作用すると、その外乱力Ｆによって車輪と段差との接触点Ｐの周りに慣性モーメントＭが発生する。慣性モーメントＭが発生すると、その慣性モーメントＭによって車体が前側に傾斜する（図において反時計回りに回転しようとする。）。車体に作用する慣性モーメントＭが小さい場合は、コントローラによって慣性モーメントＭを打ち消すように駆動輪が駆動されるので、車体は倒立状態を維持したまま段差を乗り越えることができる。
しかしながら、車体に作用する慣性モーメントＭが大きくなると、コントローラによって駆動輪が駆動されても、慣性モーメントＭを打ち消すことができず、車体が前側に大きく傾斜する。車体が大きく傾斜し過ぎると倒立状態を維持することができなくなる。例えば、路面上の段差が高くなると、倒立移動装置の段差乗り越え時の走行速度をある程度大きくしなければ、段差を乗り越えることができない。段差乗り越え時の走行速度が大きくなると、慣性モーメントＭが大きくなり、車体は倒立状態を維持することができない。このため、従来の倒立移動装置では、乗り越えることができる段差の高さに制限があり、充分な高さの段差を乗り越えることができないという問題があった。
【０００５】
本発明は、上記した実情に鑑みてなされたものであり、車体の倒立状態を維持したまま、より高い段差を乗り越えることができる倒立移動装置を提供する。
【課題を解決するための手段】
【０００６】
本発明の倒立移動装置は、１または複数の回転体と、回転体によって支持される車体と、回転体を回転させる駆動装置と、車体の進行方向の路面の段差を検出する路面センサと、車体の傾斜角及び傾斜角速度の少なくとも１つを検出する傾斜角センサと、車体の走行速度を特定可能な物理量を検出する速度センサと、コントローラを備えている。コントローラは、路面センサにより検出された路面の段差の有無と、傾斜角センサにより検出された検出値と、速度センサにより検出された検出値に応じて、駆動装置に制御指令値を出力する。また、コントローラは、路面センサにより進行方向に段差が検出された場合は、段差を乗り越えるときに車体を進行方向に対して後ろ側に傾斜させることを特徴とする。
この倒立移動装置では、路面センサにより進行方向に段差が検出された場合は、コントローラが車体を進行方向に対して後ろ側に傾斜させた状態として段差に進入する。このため、回転体が段差に接触することによって回転体と段差との接触点周りに車体を前側に傾斜させようとする慣性モーメントが発生しても、車体は後ろ側に傾斜しているので、車体が前側に大きく傾斜されることが抑制される。したがって、車体が前側に大きく傾斜することが抑えられるので、車体は倒立状態を維持したまま、より高い段差を乗り越えることができる。
ここで、「車体を進行方向に対して後ろ側に傾斜させる」とは、車輪に対して車体の重心を後ろ側に移動させることをいう。したがって、車体を本体と該本体に載置された慣性体によって構成し、その慣性体を車体の後ろ側に移動させることで車体の重心を後ろ側に移動させることも、「車体を進行方向に対して後ろ側に傾斜させる」ことに相当する。
【０００７】
上述の倒立移動装置は、コントローラが、路面センサで検出された段差の高さから段差乗り越え時の車体の目標走行速度と目標傾斜角を決定する目標値決定部と、決定された目標走行速度及び目標傾斜角並びに速度センサで検出された車体の速度に応じて車体の目標速度パターンを決定する目標速度パターン決定部と、傾斜角センサで検出された傾斜角に応じて車体の倒立状態を維持し、かつ、車体の速度が決定された目標速度パターンとなるように制御指令値を算出する制御指令値算出部とを有している方が好ましい。
このような構成によると、路面センサにより進行方向に段差が検出された場合に、目標値決定部が、路面センサで検出された段差の高さから、段差乗り越え時の車体の目標走行速度と目標傾斜角を決定する。
具体的には、目標値決定部は、検出された段差を乗り越えるのに十分な目標走行速度を決定する。すなわち、段差乗り越え時の目標走行速度は、段差の高さに応じて決定される。また、段差乗り越え時に発生する慣性モーメントは、段差の高さと、段差乗り越え時の走行速度によって決まる。従って、目標決定部が、段差の高さに応じて、目標傾斜角を決定することで、段差乗り越え時に発生する慣性モーメントに応じた目標傾斜角が決定される。
目標値決定部が目標走行速度と目標傾斜角を決定すると、目標速度パターン決定部が決定された目標走行速度及び目標傾斜角並びに速度センサで検出された車体の速度に応じて車体の目標速度パターンを決定する。制御指令値算出部は、傾斜角センサで検出された傾斜角に応じて車体の倒立状態を維持し、かつ、車体の速度が決定された目標速度パターンとなるように制御指令値を算出する。算出された制御指令値はコントローラから駆動装置に出力され、倒立移動装置は倒立状態を維持しながら決定された速度パターンで走行する。これによって、倒立移動装置は、段差の高さに応じた走行速度及び傾斜角で段差に進入する。
倒立移動装置が段差に進入すると、回転体と段差との接触点周りに慣性モーメントが発生する。このとき、車体は、段差の高さに応じて（すなわち、発生した慣性モーメントに応じて）後ろ側に傾斜している。従って、発生した慣性モーメントによって車体が起こされて、車体が好適な傾斜角となる。また、段差進入時の倒立移動装置の走行速度は、段差を乗り越えるのに十分な走行速度とされているので、倒立移動装置は段差を乗り越えることができる。従って、倒立移動装置は、倒立状態を維持したまま段差を好適に乗り越えることができる。
【０００８】
上述の倒立移動装置は、目標速度パターン決定部が、目標値決定部で決定された目標傾斜角から段差乗り越え時の目標減速度を決定し、その目標減速度と速度センサで検出された車体の速度と目標値決定部で決定された目標走行速度から目標速度パターンを決定する方が好ましい。
このような構成によれば、倒立移動装置が段差進入時に目標減速度で減速している状態となり、これによって、車体を目標傾斜角に傾斜させることができる。
【０００９】
上述の倒立移動装置は、コントローラが、路面センサによって検出された段差が所定の高さよりも低い場合にのみ、倒立移動装置に段差を乗り越えさせる方が好ましい。
このような構成によれば、路面センサによって検出された段差が所定の高さよりも高い場合には、倒立移動装置は段差に進入しないので、車体の倒立状態が維持できなくなることが防止される。
【００１０】
また、本発明は、好適に段差を乗り越えることができる倒立移動装置の制御方法も提供する。この制御方法は、１または複数の回転体と、回転体によって支持される車体と、回転体を回転させる駆動装置と、倒立移動装置の進行方向の路面の段差を検出する路面センサと、車体の傾斜角及び傾斜角速度の少なくとも１つを検出する傾斜角センサと、倒立移動装置の走行速度を特定可能な物理量を検出する速度センサと、路面センサと傾斜角センサと速度センサの検出結果に応じて制御指令値を駆動装置に出力するコントローラとを備え、駆動装置が制御指令値に基づいて回転体を駆動することで車体を倒立状態に維持しながら路面上を走行する倒立移動装置の制御方法である。
この制御方法では、路面センサにより倒立移動装置の進行方向の段差が検出された場合に、検出された段差の高さから、段差乗り越え時の車体の目標走行速度と目標傾斜角を決定する第１ステップと、第１ステップで算出された車体の目標走行速度及び目標傾斜角並びに速度センサで検出された検出値に応じて目標速度パターンを決定する第２ステップと、傾斜角センサで検出された傾斜角に応じて車体の倒立状態を維持し、かつ、車体の速度が決定された速度パターンとなるように制御指令値を算出する第３ステップと、を有し、上記各工程をコントローラで実行することで倒立移動装置に段差を乗り越えさせる。
この制御方法では、車体の目標走行速度及び目標傾斜角並びに速度センサで検出された検出値に応じて決定された目標速度パターンに従って倒立移動装置が走行する。これによって、倒立移動装置は目標走行速度及び目標傾斜角（後ろ側に傾斜した状態）で段差に進入するので、段差を好適に乗り越えることができる。
【発明を実施するための最良の形態】
【００１１】
下記に詳細に説明する実施例の主要な特徴を最初に列記する。
（形態１）倒立移動装置は、同一の車軸上に配された２つの車輪と、車輪によって支持される車体とによって構成される。
（形態２）車体は、各車輪を駆動するモータと、倒立移動装置の進行方向の路面の段差を検出する路面センサと、車体の傾斜角速度を検出するジャイロセンサと、各モータの回転角速度を検出するエンコーダと、これらのセンサの検出結果に応じてモータを駆動するコントローラを備えている。
（形態３）コントローラは、路面センサにより検出された路面の段差の有無と、ジャイロセンサにより検出された車体の傾斜角速度と、エンコーダにより検出されたモータの回転角速度に応じてモータに制御指令値を出力する。
（形態４）コントローラは、路面センサにより進行方向に段差が検出された場合には、段差を乗り越えるときに車体を進行方向に対して後ろ側に傾斜させる。
（形態５）コントローラは、目標値決定部と、目標速度パターン決定部と、制御指令値算出部を有している。
（形態６）目標値決定部は、路面センサで検出された段差の高さから段差乗り越え時の車体の目標走行速度と目標傾斜角を決定する。
（形態７）目標速度パターン決定部は、目標傾斜角から段差乗り越え時の目標減速度を決定し、その目標減速度と、目標走行速度と、速度センサで検出された車体の速度から目標速度パターンを決定する
（形態８）制御指令値算出部は、傾斜角センサで検出された傾斜角に応じて車体の倒立状態を維持し、かつ、車体の速度が決定された目標速度パターンとなるように制御指令値を算出する。
（形態９）コントローラは、路面センサによって検出された段差が所定の高さよりも低い場合にのみ、倒立移動装置に段差を乗り越えさせる。
（形態１０）車体には、１つまたは複数の可動部と、その可動部を駆動するアクチュエータが取付けられている。コントローラは、車輪を駆動するモータに制御指令値を出力すると共にアクチュエータに制御指令値を出力することで、車体姿勢を制御する。
【実施例】
【００１２】
本発明の一実施例に係る倒立移動装置について、図面を参照しながら説明する。図１に示すように、倒立移動装置１０は、車軸１６上に配された２つの車輪１２、１４と、車輪１２、１４によって車軸１６周りに傾動可能に支持された車体２０とによって構成される。車体２０の重心３０（図９参照）は、車軸１６よりも上方に位置している。倒立移動装置１０は、車輪１２、１４を駆動することによって車体２０の倒立状態を維持し、かつ、車輪１２、１４を駆動することによって床面を走行する。
【００１３】
車輪１２は、後述するモータ２２と接続されており、モータ２２によって駆動される。また、車輪１４は、後述するモータ２４と接続されており、モータ２４によって駆動される。すなわち、車輪１２、１４はそれぞれ独立して駆動される。車輪１２、１４を駆動することによって、倒立移動装置１０は床面を走行する。また、車輪１２、１４のそれぞれの回転角速度を制御することによって、倒立移動装置１０の進行方向（進行方向角度φ）を変更することができる。また、車体２０の傾斜角θ（図８（ｂ）参照）に応じて車輪１２、１４を駆動することによって、車体２０の倒立状態が維持される。
【００１４】
車体２０は、車輪１２、１４を駆動するモータ２２、２４と、車体２０の傾斜角速度θ’を検出するジャイロセンサ２８と、走行する路面の段差を検出する路面センサ２９と、モータ２２、２４に制御指令値を出力するコントローラ７０を備えている。
【００１５】
車体２０内に配されたモータ２２、２４は、車輪１２、１４に連結されている。また、モータ２２、２４はコントローラ７０と電気的に接続されている。モータ２２、２４は、コントローラ７０から入力される制御指令値にしたがって、車輪１２、１４を駆動する。
モータ２２には、モータの回転角速度ｉを検出するエンコーダ２２ａが設けられている。エンコーダ２２ａは、コントローラ７０と電気的に接続されている。エンコーダ２２ａは、モータ２２の回転角速度ｉ（すなわち、車輪１２の回転角速度ｉ）を検出する。エンコーダ２２ａが検出した車輪１２の回転角速度ｉは、コントローラ７０に入力される。また、モータ２４にもエンコーダ２４ａが設けられており、エンコーダ２４ａは車輪１４の回転角速度ｊを検出する。エンコーダ２４ａが検出した車輪１４の回転角速度ｊも、コントローラ７０に入力される。
【００１６】
ジャイロセンサ２８は、車体２０の内部に配されている。ジャイロセンサ２８はコントローラ７０と電気的に接続されている。ジャイロセンサ２８は、車体２０の傾斜角速度θ’を検出する。ジャイロセンサ２８が検出した傾斜角速度θ’は、コントローラ７０に出力される。
【００１７】
路面センサ２９は、車体２０の前面下方に配されている。路面センサ２９は、コントローラ７０と電気的に接続されている。路面センサ２９は、レーザレンジセンサと、演算装置によって構成される。
レーザレンジセンサは、レーザを照射することによって、レーザが照射された物体までの距離を検出する。このレーザレンジセンサは、測定角度範囲内でレーザの照射角度を変化させながらレーザを照射すると共に、レーザを照射した時の照射角度を検出する。すなわち、レーザレンジセンサは、測定角度範囲内で、レーザ照射角度を変化させながらレーザを断続的に照射し、レーザが照射された角度とレーザが照射された物体までの距離を検出する。レーザレンジセンサで検出されたレーザ照射角度及びレーザが照射された物体までの距離は、演算装置によって演算され、測定角度範囲内の物体（障害物）の形状が特定される。従って、路面センサ２９によって、測定角度範囲内の物体の形状が検出される。
路面センサ２９は、車体２０の前面下方に、レーザの照射角度が鉛直方向に変化するように取り付けられている。また、路面センサ２９は、レーザの照射方向が車体前方の路面となるように、車体２０に取り付けられている。従って、路面センサ２９によって車体前方の路面形状を検出することができる。路面センサ２９が検出した路面形状のデータは、コントローラ７０に入力される。
【００１８】
コントローラ７０は、ＣＰＵ，ＲＯＭ，ＲＡＭを備えたマイクロプロセッサ等によって構成されている。コントローラ７０は、車体２０内に配されている。コントローラ７０は、モータ２２、２４と、エンコーダ２２ａ、２４ａと、ジャイロセンサ２８と、路面センサ２９に電気的に接続されている。
図２はコントローラ７０の機能を示すブロック図である。図２に示すように、コントローラ７０は、制御指令部７２と、目標値出力部７４と、車体の現在速度ベクトルＶを算出する現在速度算出部９０と、車体の現在位置（ｘ，ｙ，φ）を算出する現在位置算出部９２によって構成される。なお、図２においては、図の見易さを考慮してモータ及びエンコーダを１つだけ図示した。実際には２つのモータ２２、２４に制御指令値がそれぞれ独立して出力される。
【００１９】
現在速度算出部９０には、エンコーダ２２ａ及び２４ａが検出した車輪１２、１４の回転角速度ｉ、ｊが入力される。現在速度算出部９０は各車輪１２、１４の回転角速度ｉ、ｊから、倒立移動装置１０の現在速度ベクトルＶを算出する。現在速度ベクトルＶは、倒立移動装置１０が走行する平面上の２次元座標によって表される。すなわち、現在速度ベクトルＶは、倒立移動装置１０のｘ方向の速度、ｙ方向の速度及び回転速度によって表わされる。算出された現在速度ベクトルＶは、現在位置算出部９２及び目標値出力部７４に入力される。また、算出された現在速度ベクトルＶと目標値出力部７４から出力される目標速度ベクトルＶｍとの偏差が制御指令部７２に入力される。
【００２０】
現在位置算出部９２には、現在速度ベクトルＶが入力される。現在位置算出部９２は、入力された現在速度ベクトルＶを積分して、倒立移動装置１０の現在位置（ｘ，ｙ，φ）を算出する。算出された現在位置（ｘ，ｙ，φ）は目標値出力部７４に入力される。また、現在位置算出部９２で算出された現在位置（ｘ，ｙ，φ）と目標値出力部７４から出力される目標位置（ｘｍ，ｙｍ，φｍ）との偏差が制御指令部７２に入力される。
【００２１】
目標値出力部７４には、路面センサ２９が検出した車体２０前方の路面形状データと、現在速度算出部９０が算出した現在速度ベクトルＶが入力される。また、目標値出力部７４には、最終目標位置入力部７６（例えば、倒立移動装置１０を制御する遠隔制御装置）から最終目標位置（ｘ１，ｙ１，φ１）が入力される。目標値出力部７４は、入力される各データに基づいて、目標位置（ｘｍ，ｙｍ，φｍ）と、目標速度ベクトルＶｍを算出する。
【００２２】
図３は目標値出力部７４の機能を示すブロック図である。図３に示すように、目標値出力部７４は、段差検出部７５と、目標速度パターン算出部７９と、目標位置出力部８０と、目標速度出力部８１によって構成される。
段差検出部７５には、路面センサ２９が検出した路面形状データが入力される。段差検出部７５は、入力された路面形状データに基づいて、倒立移動装置１０の前方に段差があるか否かの判定を行う。段差がある場合には段差の高さｈと倒立移動装置１０から段差までの距離ｌを算出する。
【００２３】
目標速度パターン算出部７９は、最終目標位置入力部７６から入力された最終目標位置（ｘ１，ｙ１，φ１）と、段差検出部７５から入力される段差高さｈと段差までの距離ｌと、現在速度算出部９０から入力される現在速度ベクトルＶと、現在位置算出部９２から入力される現在位置（ｘ，ｙ，φ）に基づいて、倒立移動装置１０の目標速度パターンを算出する。すなわち、目標速度パターン算出部７９は、最終目標位置入力部７６から最終目標位置（ｘ１，ｙ１，φ１）が入力されると、まず、倒立移動装置１０の現在の速度Ｖと現在の位置（ｘ，ｙ，φ）と入力された最終目標位置（ｘ１，ｙ１，φ１）とに基づいて、現在の位置（ｘ，ｙ，φ）から最終目標位置（ｘ１，ｙ１，φ１）に移動するまでの間の目標速度パターンを算出する。目標速度パターンが算出されると、その算出された目標速度パターンに基づいてモータ２２，２４は駆動される。倒立移動装置１０が最終目標位置（ｘ１，ｙ１，φ１）に移動するまでの間に段差検出部７５によって段差が検出されないと、算出された目標速度パターンは修正されることはない。一方、倒立移動装置１０が最終目標位置（ｘ１，ｙ１，φ１）に移動するまでの間に段差検出部７５によって段差が検出されると、目標速度パターン算出部７９は最終目標位置入力時に算出された目標速度パターンを修正する。以下、最終目標位置（ｘ１，ｙ１，φ１）の入力時における目標速度パターンを算出する手順と、段差検出部７５で段差が検出されたときの目標速度パターンを修正する手順について説明する。
【００２４】
（１）最終目標位置の入力時等における目標速度パターンの算出手順
目標速度パターン算出部７９は、まず、倒立移動装置１０の現在の速度Ｖと現在の位置（ｘ，ｙ，φ）と最終目標位置（ｘ１，ｙ１，φ１）に基づいて、倒立移動装置１０の移動軌跡を決定する。例えば、現在位置（ｘ，ｙ，φ）から最終目標位置（ｘ１，ｙ１，φ１）まで直線的に移動できる場合は、現在位置（ｘ，ｙ，φ）と最終目標位置（ｘ１，ｙ１，φ１）を直線的に接続した経路を移動軌跡として決定する。あるいは、倒立移動装置１０が設置された空間のマップ（いわゆる、道路マップ）が設定されている場合は、そのマップの中から倒立移動装置１０が走行する経路（道）を選択する。倒立移動装置１０の移動軌跡が決定されると、決定された移動軌跡上を倒立移動装置１０が走行するように、倒立移動装置１０の目標速度パターンを算出する。
決定された移動軌跡から目標速度パターンを算出する手順を、図４を用いて具体的に説明する。図４（ａ）に示す例では、倒立移動装置１０は現在位置Ａにおいて停止しており、倒立移動装置１０は現在位置Ａ（出発点）（ｘＡ，ｙＡ，φＡ）から最終目標位置Ｂ（ｘ１，ｙ１，φ１）まで直線的に移動する。本実施例では、倒立移動装置１０の倒立状態を安定して維持するために、倒立移動装置１０の最高加速度ａｍａｘと最高減速度−ａｍａｘの絶対値は予め一定の値に設定されており、また、その最高速度ｖｍａｘも制限されている。このため、倒立移動装置１０は、現在位置Ａ（ｘＡ，ｙＡ，φＡ）から等加速度運動（加速度ａｍａｘ）により最高速度ｖｍａｘまで加速し、最高速度ｖｍａｘに到達した後は等速度運動（ｖｍａｘ）で走行し、その後、等減速度運動（加速度−ａｍａｘ）で減速して最終目標位置Ｂ（ｘ１，ｙ１，φ１）に停止することとなる。したがって、目標速度パターン算出部７９は、まず、現在位置（ｘＡ，ｙＡ，φＡ）から最終目標位置（ｘ１，ｙ１，φ１）までの距離を算出し、その算出された距離から等加速度で運動する時間と、等速度で運動する時間と、等減速度で運動する時間を決定する。
図５（ａ），（ｂ）は、図４（ａ）に示す移動軌跡が決定された場合の目標速度パターンと、目標位置パターンを示している。図５（ａ）に示すように、倒立移動装置１０は時間０〜ｔ１では等加速度ａｍａｘで運動し、時間ｔ１〜ｔ２では等速度ｖｍａｘで運動し、時間ｔ２〜ｔ３では等減速度−ａｍａｘで運動する。この速度パターンに基づいてモータ２２，２４が制御されることで、倒立移動装置１０は図５（ｂ）に示すように移動し、最終目標位置Ｂ（ｘ１，ｙ１，φ１）に到達する。
【００２５】
（２）段差検出時における目標速度パターンの修正手順
目標速度パターン算出部７９は、まず、検出された段差が乗り越え可能か否かを判断する。具体的には、段差検出部７５で検出された段差の高さｈが予め設定された設定値ｈｍａｘより高いか否かを判断する。段差の高さｈが設定値ｈｍａｘより高い場合は、倒立移動装置１０は段差を乗り越え不可能と判断する。段差の高さｈが設定値ｈｍａｘより低い場合は、倒立移動装置１０は段差を乗り越え可能と判断する。
段差を乗り越え可能と判断すると、次に、段差高さｈから段差乗り越え時の倒立移動装置１０の目標速度Ｖ０と目標傾斜角θ０を決定する。段差高さｈに応じて段差乗り越え時の目標速度Ｖ０を決定するのは、倒立移動装置１０に段差を確実に乗り越えさせるためである。また、段差高さｈに応じて段差乗り越え時の車体２０の目標傾斜角θ０を決定するのは、倒立移動装置１０が目標速度Ｖ０で段差を乗り越える時に発生する車体２０を前方に回転させようとするモーメントＭを打ち消すためである。目標速度Ｖ０と目標傾斜角θ０は、例えば、図６，７に示すマップに基づいて決定することができる。図６は段差高さｈと目標速度Ｖ０の関係を示すマップであり、図７は段差高さｈと目標傾斜角θ０の関係を示すマップである。図６と入力された段差高さｈから目標速度Ｖ０を決定することができ、図７と入力された段差高さｈから目標傾斜角θ０を決定することができる。
段差乗り越え時の目標傾斜角θ０を決定すると、その決定された目標傾斜角θ０から段差乗り越え時の倒立移動装置１０の目標減速度−ａ０を決定する。倒立移動装置１０は、後で詳述するように、加速中は車体２０が前方に傾斜し、減速中は車体２０が後ろ側に傾斜する。このため、目標傾斜角θ０に応じた目標減速度−ａ０に倒立移動装置１０を制御することで、車体２０の傾斜角を目標傾斜角θ０とすることができる。
目標速度Ｖ０と目標減速度−ａ０を決定すると、現在の倒立移動装置１０の速度Ｖと倒立移動装置１０から段差までの距離ｌに基づいて、倒立移動装置１０を目標速度Ｖ０及び目標減速度−ａ０に制御可能か否かを判断する。倒立移動装置１０を目標速度Ｖ０及び目標減速度−ａ０に制御できる場合は、倒立移動装置１０が段差を乗り越え可能と判断する。一方、倒立移動装置１０を目標速度Ｖ０及び目標減速度−ａ０に制御できない場合（例えば、倒立移動装置１０の現在速度が速く、かつ、段差までの距離が短い場合であり、段差までに目標速度Ｖ０とすることができないとき等）、倒立移動装置１０は段差を乗り越え不可能と判断する。
段差を乗り越え可能と判断した場合は、目標速度パターン算出部７９は、段差乗り越え用の目標速度パターンに修正する。段差を乗り越え不可能と判断した場合は、目標速度パターン算出部７９は、段差乗り越え不能用の目標速度パターンに修正する。
【００２６】
（ｉ）段差乗り越える場合の目標速度パターンの算出
段差を乗り越える場合は、目標速度パターン算出部７９は、まず、現在速度算出部９０から入力される現在速度Ｖから目標減速度−ａ０で減速して目標速度Ｖ０となるために要する時間を算出する。例えば、現在速度が２ｍ／ｓ、目標減速度が−１ｍ／ｓ２、目標速度１ｍ／ｓの場合、減速時間は１秒と算出される。
減速時間が決定されると、その減速時間中に倒立移動装置１０が移動する距離を算出する。上述した例の場合、現在速度が２ｍ／ｓで目標減速度が−１ｍ／ｓ２で１秒間減速するため、その間に倒立移動装置１０が移動する距離は２×１−（１／２）×１×１２＝１．５ｍとなる。
減速時間中に移動する距離が算出されると、その算出された距離と段差までの距離ｌとから現在の速度で等速運動する時間を決定する。例えば、上述した例において段差までの距離が５ｍの場合、減速時間に倒立移動装置１０が移動する距離は１．５ｍであるので、等速度で運動する距離は３．５ｍとなる。倒立移動装置１０の現在の速度は２ｍ／ｓであるので、現在の速度で等速運動する時間は１．７５秒と算出される。これによって、倒立移動装置１０が段差を乗り越える直前までの目標速度パターンを算出することができる。
次に、倒立移動装置１０が段差を乗り越える直前から最終目標位置に到達するまでの目標速度パターンを算出する。本実施例では、倒立移動装置１０が段差を乗り越える直前まで減速した後、倒立移動装置１０が加速度ａｍａｘで加速しながら段差を乗り越える。段差を乗り越えた後は、最高速度ｖｍａｘまで加速して等速度運動に移行し、次いで、等減速度運動（加速度−ａｍａｘ）で減速して最終目標位置Ｂ（ｘ１，ｙ１，φ１）に停止する。ここで、段差乗り越え時（詳細には、段差を乗り越える直前）の目標速度Ｖ０は決定されている。また、段差から最終目標位置Ｂ（ｘ１，ｙ１，φ１）までの距離は、段差乗り越え時の倒立移動装置１０の位置（ｘ，ｙ，φ）と最終目標位置Ｂ（ｘ１，ｙ１，φ１）の座標から算出することができる。このため、加速度ａｍａｘで加速する時間と、等速度で移動する時間と、減速度−ａｍａｘで減速する時間を決定することができる。これによって、段差を乗り越えた後の目標速度パターンを決定することができる。
【００２７】
目標速度パターンを修正して段差を乗り越える具体例を図４（ｂ）及び図８を参照して説明する。図４（ｂ）に示すように、倒立移動装置１０は現在位置Ａ（ｘＡ，ｙＡ，φＡ）から最終目標位置Ｂ（ｘ１，ｙ１，φ１）まで直線的に移動する。現在位置Ａ（ｘＡ，ｙＡ，φＡ）から最終目標位置Ｂ（ｘ１，ｙ１，φ１）まで移動する途中には段差１００が存在する。なお、倒立移動装置１０は現在位置Ａにおいて停止しているものとする。
図８に示すように、倒立移動装置１０は、時刻ｔ０〜ｔ１までの期間は加速度ａｍａｘで加速し、時刻ｔ１からは等速度運動を行う。倒立移動装置１０は、等速度で運動している際に段差１００を検出すると（例えば、図４（ｂ）の点Ｃで段差１００を検出すると）、段差検出部７５は倒立移動装置１０から段差１００までの距離ＣＥと段差１００の高さｈを算出する。そして、上述した手順で目標速度パターンを修正する。すなわち、図８に示すように、時刻ｔ２となるまで（図４（ｂ）の点Ｄまで）は等速度で移動し、時刻ｔ２〜ｔ３の間（図４（ｂ）の点Ｅまで）は目標減速度−ａ０で減速する。これによって、倒立移動装置１０は段差１００に目標速度Ｖ０と目標傾斜角θ０で進入する。
次に、倒立移動装置１０は、時刻ｔ３〜ｔ４の間は加速度ａｍａｘで加速し、時刻ｔ４では速度ｖｍａｘに到達する。したがって、倒立移動装置１０は、段差１００を乗り越えるタイミング（乗り越える直前）で加速され、車輪１２，１４に充分なトルクが与えられる。これによって、倒立移動装置１０は段差１００を確実に乗り越えることができる。時刻ｔ４〜ｔ５は速度ｖｍａｘで等速運動し、時刻ｔ５〜ｔ６は減速度−ａｍａｘで減速する。これによって、倒立移動装置１０は最終目標位置Ｂ（ｘ１，ｙ１，φ１）に到達することとなる。
なお、現在位置Ａ（ｘＡ，ｙＡ，φＡ）から最終目標位置Ｂ（ｘ１，ｙ１，φ１）までに複数の段差がある場合は、段差を検出する毎に目標速度パターンの修正が行われる。
【００２８】
（ｉｉ）段差乗り越えられないと判断した場合の目標速度パターンの算出
段差を乗り越えられないと判断した場合は、目標速度パターン算出部７９は、倒立移動装置１０が停止するように、目標速度パターンを修正する。すなわち、目標速度パターン算出部７９は、倒立移動装置１０を加速度−ａｍａｘで減速運動させ、倒立移動装置１０の速度が０となるように、目標速度パターンを修正する。
段差を乗り越えない場合の具体的を図４（ｃ）及び図９を参照して説明する。図４（ｃ）に示す例でも、図４（ｂ）と同様に、倒立移動装置１０が現在位置Ａ（ｘＡ，ｙＡ，φＡ）から最終目標位置Ｂ（ｘ１，ｙ１，φ１）まで移動する間に段差１００が存在する。なお、倒立移動装置１０は現在位置Ａにおいて停止しているものとする。
図９に示すように、倒立移動装置１０は、時刻ｔ０〜ｔ１までの期間は加速度ａｍａｘで加速し、時刻ｔ１からは等速度運動を行う。倒立移動装置１０は、等速度で運動している際に段差１００を検出し（例えば、図４（ｃ）の点Ｃで段差１００を検出し）、倒立移動装置１０が段差１００を乗り越えられないと判断する。このため、目標速度パターン算出部７９は、倒立移動装置１０を停止させるべく目標速度パターンを修正する。これによって、図９に示すように、倒立移動装置１０は、時刻ｔ２’〜ｔ３’のあいだ等加速度−ａｍａｘで減速する。これによって、倒立移動装置１０は、段差１００を乗り越えることなく、段差１００の手前で停止する。
なお、倒立移動装置１０が停止すると、目標速度パターン算出部７９は、倒立移動装置１０の現在位置と最終目標位置Ｂ（ｘ１，ｙ１，φ１）から倒立移動装置１０の移動軌跡を再決定し、この際決定された移動軌跡に基づいて目標速度パターンを再び算出することとなる。なお、再決定された移動軌跡は、段差１００を回避して最終目標位置Ｂ（ｘ１，ｙ１，φ１）に到達するようになっている。
【００２９】
なお、上述した説明から明らかなように、目標速度パターン算出部７９が目標速度Ｖ０、目標傾斜角θ０を算出し、その算出した目標速度Ｖ０、目標傾斜角θ０に基づいて目標速度パターンを算出している。したがって、目標速度パターン算出部７９が請求項２でいう目標値決定部と目標速度パターン決定部の機能を備えている。
【００３０】
目標位置出力部８０は、コントローラ７０の処理周期（モータ２２，２４への制御指令値の出力周期）毎に、目標速度パターン算出部７９から入力される目標速度パターンに基づいて倒立移動装置１０の目標位置（ｘｍ，ｙｍ，φｍ）を出力する。すなわち、目標速度パターン算出部７９から入力される目標速度パターンは時刻ｔの関数となっている。したがって、入力された目標速度パターンを積分して、目標位置パターン（時刻ｔの関数）を算出する。そして、算出された目標位置パターンから時刻ｔに応じた目標位置（ｘｍ，ｙｍ，φｍ）を算出し、その算出した目標位置（ｘｍ，ｙｍ，φｍ）を制御指令部７２に出力する。
なお、いったん目標速度パターンが入力されると、修正された目標速度パターンが再入力されるまでは、最初に入力された目標速度パターンに基づいて目標位置（ｘｍ，ｙｍ，φｍ）が算出される。
【００３１】
目標速度出力部８１は、コントローラ７０の処理周期（モータ２２，２４へのトルク指令値の出力周期）毎に、目標速度パターン算出部７９から入力される目標速度パターンに基づいて倒立移動装置１０の目標速度Ｖｍベクトルを出力する。すなわち、目標速度パターン算出部７９から入力される目標速度パターンは時刻ｔの関数となっている。したがって、入力された目標速度パターンから時刻ｔに応じた目標速度ベクトルＶｍを算出し、その算出した目標速度ベクトルＶｍを制御指令部７２に出力する。
なお、目標位置出力部８０と同様に、目標速度出力部８１にいったん目標速度パターンが入力されると、修正された目標速度パターンが再入力されるまでは、最初に入力された目標速度パターンに基づいて目標速度ベクトルＶｍが算出される。
【００３２】
制御指令部７２には、目標値出力部７４から出力される目標位置（ｘｍ，ｙｍ，φｍ）と現在位置算出部９２で算出される現在位置（ｘ，ｙ，φ）の偏差が入力され、目標値出力部から出力される目標速度ベクトルＶｍと現在速度算出部９０で算出される現在速度ベクトルＶの偏差が入力される。また、制御指令部７２には、ジャイロセンサ２８が検出する車体の傾斜角速度θ’が入力される。制御指令部７２は、入力された位置偏差、速度偏差及び傾斜角速度θ’に応じて制御指令値を算出し、算出した制御指令値をモータ２２、２４に出力する。詳しくは、制御指令部７２は、走行制御指令値算出部７２ａと倒立制御指令値算出部７２ｂを備え、走行制御指令値算出部７２ａで算出された制御指令値と、倒立制御指令値算出部７２ｂで算出された制御指令値との和をモータ２２，２４に出力する。
【００３３】
走行制御指令値算出部７２ａには位置偏差及び速度偏差が入力される。走行制御指令値算出部７２ａは、入力された位置偏差及び速度偏差が小さくなるように制御指令値を算出する。このため、走行制御指令値算出部７２ａで算出された制御指令値に基づいてモータ２２，２４が駆動されると、位置偏差及び速度偏差が小さくなり、倒立移動装置１０が目標値出力部７４から出力される目標位置（ｘｍ，ｙｍ，φｍ）に移動し、かつ、倒立移動装置１０の速度ベクトルＶが目標速度ベクトルＶｍとなる。
【００３４】
倒立制御指令値算出部７２ｂには、位置偏差、速度偏差及び傾斜角速度θ’が入力される。倒立制御指令値算出部７２ｂは、位置偏差、速度偏差及ぶ傾斜角速度θ’が小さくなるように制御指令値を算出する。ここで、傾斜角速度θ’が小さくなると、傾斜角速度θ’が「０」となる。したがって、本実施例では目標傾斜角速度θ’ｍが「０」に設定されていることとなる。このため、倒立制御指令値算出部７２ｂで算出された制御指令値でモータ２２，２４が駆動されることで、傾斜角速度θ’が「０」となるように制御され、倒立移動装置１０の車体２０は倒立状態を維持することとなる。
【００３５】
なお、上述した制御指令部７２の具体的な構成については、特許文献１に開示された構成を採ることができる。
【００３６】
上述したように、本実施例では、位置偏差及び速度偏差を０とし、かつ、傾斜角速度θ’を０とするように倒立移動装置１０を制御するため、車体２０の重心に加わる外力（図１２における重力Ｇと慣性力Ａの和）の方向は車輪１２，１４の車軸１６の方向を向くこととなる。従って、図１１（ｂ）または図１２に示すように慣性力Ａが前方向に作用する場合（すなわち倒立移動装置１０が減速する場合）には、車体２０が後ろ側に傾斜する。逆に慣性力Ａが後ろ方向に作用する場合（すなわち倒立移動装置１０が加速する場合）は、車体２０が前側に傾斜する。このように、本実施例では、倒立移動装置１０の減速度ａ（又は加速度ａ）を制御することによって、車体２０の傾斜角θを制御することができる。傾斜角θは、θ＝ａｒｃｔａｎ（ａ／ｇ）の計算式によって求めることができる。
【００３７】
次に、倒立移動装置１０が段差を乗り越える際のコントローラ７０の動作について、図１０を参照して説明する。図１０は、倒立移動装置１０が初期位置（ｘＡ，ｙＡ，φＡ）において停止した状態で最終目標位置入力部７６より最終目標位置（ｘ１，ｙ１，φ１）が入力され、初期位置（ｘＡ，ｙＡ，φＡ）から最終目標位置（ｘ１，ｙ１，φ１）に移動する際のコントローラ７０の動作を示している。
【００３８】
最終目標位置入力部７６より最終目標位置（ｘ１，ｙ１，φ１）が入力されると、コントローラ７０は、倒立移動装置１０の各部を起動して、倒立移動装置１０の移動制御を開始する（ステップＳ２）。移動制御を開始すると、コントローラ７０は、まず、入力された最終目標位置（ｘ１，ｙ１，φ１）と倒立移動装置１０の現在位置（ｘＡ，ｙＡ，φＡ）から移動軌跡を決定し、その決定した移動軌跡に基づいて目標速度パターンを算出する（ステップＳ４）。そして、算出された目標速度パターンに基づいてコントローラ７０からモータ２２，２４への制御指令値の出力が開始され、その制御指令値に基づいてモータ２２，２４が駆動される（ステップＳ６）。これによって、倒立移動装置１０は、倒立状態を維持した状態で、最終目標位置（ｘ１，ｙ１，φ１）に向かって移動を開始する。
【００３９】
倒立移動装置１０が走行を開始すると、路面センサ２９によって路面形状データの計測が行われる。路面センサ２９によって計測された路面形状は、所定の周期毎にコントローラ７０に入力される。コントローラ７０は、入力される路面形状データから路面に段差があるか否かを判定する（ステップＳ８）。
路面に段差がないと判断した場合（ステップＳ８でＮＯ）は、ステップＳ２４に進んで、倒立移動装置１０が最終目標位置（ｘ１，ｙ１，φ１）に到達したか否かを判定する。最終目標位置（ｘ１，ｙ１，φ１）に到達した場合（ステップＳ２４でＹＥＳ）は、コントローラ７０による移動制御を終了する。最終目標位置（ｘ１，ｙ１，φ１）に到達していない場合（ステップＳ２０でＮＯ）は、ステップＳ６に戻ってステップＳ６からの処理が繰返される。このため、モータ２２，２４の駆動が継続され、倒立移動装置１０は最終目標位置（ｘ１，ｙ１，φ１）に向かって移動を継続する。
【００４０】
一方、路面に段差があると判断した場合（ステップＳ８でＹＥＳ）は、コントローラ７０は、検出された段差の高さｈが予め設定された段差高さｈｍａｘを超えるか否かを判定する（ステップＳ１０）。
検出された段差高さｈが設定された段差高さｈｍａｘを超える場合（ステップＳ１０でＹＥＳ）は、コントローラ７０は倒立移動装置１０を停止させるための目標速度パターンに修正する（ステップＳ１８）。次いで、コントローラ７０は、ステップＳ１８で修正された目標速度パターンに基づいてモータ２２を駆動し（ステップＳ２０）、倒立移動装置１０の速度が０となったか否かを判断する（ステップＳ２２）。倒立移動装置１０の速度が０となっていないと（ステップＳ２２でＮＯ）は、ステップＳ２０に戻って、ステップＳ２０からの処理が繰返される。これによって、倒立移動装置１０が停止するまでモータ２２，２４の駆動が継続される。倒立移動装置１０の速度が０となっている場合（ステップＳ２２でＹＥＳ）は、コントローラ７０は倒立移動装置１０の移動制御を終了する。
【００４１】
検出された段差高さｈが設定された段差高さｈｍａｘを超えない場合（ステップＳ１０でＮＯ）は、コントローラ７０は段差乗り越え時の目標速度Ｖ０を算出し、その目標速度Ｖ０から目標傾斜角度θ０を算出する（ステップＳ１２）。次いで、コントローラ７０は、目標傾斜角度θ０から目標減速度−ａ０を算出する。
目標速度Ｖ０と目標減速度−ａ０が算出されると、段差までの距離ｌと倒立移動装置１０の現在速度Ｖから倒立移動装置１０が段差を乗り越え可能か否かを判定する（ステップＳ１４）。倒立移動装置１０が段差を乗り越えることができない場合（ステップＳ１４でＮＯ）は、ステップＳ１８に進む。これによって、倒立移動装置１０は、段差を乗り越えることなく、その移動を停止する。
【００４２】
一方、倒立移動装置１０が段差を乗り越え可能である場合（ステップＳ１４でＹＥＳ）は、ステップＳ１２で算出された目標速度Ｖ０と目標傾斜角θ０（すなわち、目標減速度−ａ０）と段差までの距離ｌと倒立移動装置１０の現在速度Ｖから目標速度パターンを修正する（ステップＳ１６）。目標速度パターンを修正すると、ステップＳ２４に進む。これによって、修正された目標速度パターンで倒立移動装置１０が駆動され、倒立移動装置１０は最終目標位置（ｘ１，ｙ１，φ１）まで移動することとなる。
【００４３】
ここで、倒立移動装置１０が段差を乗り越えるときの車体の姿勢について、図４の例に基づいて説明する。
倒立移動装置１０は、位置Ｃにおいて段差１００を検出すると、図８に示すような目標速度パターンに従って走行する。すなわち、段差１００を検出した後、点Ｄに到達するまでは、一定速度Ｖｍａｘで走行する（図１１（ａ）参照）。倒立移動装置１０は、点Ｄに到達すると、一定減速度−ａ０で減速しながら走行する。すると、倒立移動装置１０は、傾斜角速度θ’＝０となるように走行するので、車体２０の傾斜角度θは、減速度−ａ０に応じた傾斜角度θ０となる。倒立移動装置１０は、一定減速度−ａ０、傾斜角度θ０で点Ｄから段差１００まで走行する（図１１（ｂ）参照）。倒立移動装置１０が点Ｄから段差まで走行する間に倒立移動装置１０の速度が減速され、倒立移動装置１０の速度は速度Ｖ０（目標走行速度Ｖ０）となる。すなわち、倒立移動装置１０は、速度Ｖ０、傾斜角度θ０で段差１００に進入する（図１１（ｃ）参照）。
倒立移動装置１０が段差１００に進入すると、車輪１２、１４が段差１００に接触する。車輪１２、１４が段差１００に接触すると、段差１００から車輪１２、１４に、進行方向に対して後ろ側に外乱力Ｆが作用する（図１２参照）。外乱力Ｆが作用すると、車輪１２、１４と段差との接触点Ｐの周りに慣性モーメントＭが発生する。発生した慣性モーメントＭが車体２０に作用すると、後ろ側に傾斜していた車体２０が起こされて、略垂直（すなわちθ＝０）に倒立する。
また、倒立移動装置１０が段差１００に進入する速度Ｖ０は、段差１００を乗り越えるのに十分な速度に決定されている。また、倒立移動装置１０は、段差１００に進入する直前のタイミングで、加速度ａｍａｘで加速するので、車輪１２、１４にトルクが加わっている。従って、倒立移動装置１０は好適に段差１００を乗り越える（図１１（ｄ）参照）。
【００４４】
上述した説明から明らかなように、倒立移動装置１０は、段差を乗り越える際に、車体２０を進行方向に対して後ろ側に傾斜させる。従って、倒立移動装置１０が段差を乗り越える際に車体２０が前側に大きく傾斜されることが抑制され、倒立状態を維持したまま、より高い段差を乗り越えることができる。
また、上述の倒立移動装置１０は、目標速度パターン算出部７９が、段差の高さｈに応じて目標走行速度Ｖ０と目標傾斜角θ０を決定し、次いで、目標傾斜角θ０に応じたら目標減速度ａ０を決定し、最後に、決定した目標減速度ａ０及び目標走行速度Ｖ０並びに速度センサで検出された車体２０の速度Ｖに応じて車体２０の目標速度パターンを決定する。倒立移動装置１０は、段差の高さｈに応じて決定された目標速度パターンに従って走行するので、段差を好適に乗り越えることができる。
また、上述の倒立移動装置１０は、コントローラ７０が、路面センサ２９によって検出された段差が所定の高さｈｍａｘよりも低い場合にのみ、倒立移動装置１０に段差を乗り越えさせる。従って、段差が所定の高さｈｍａｘよりも高い場合には、倒立移動装置１０は段差に進入しないので、倒立移動装置１０が転倒して故障することが防止される。
【００４５】
なお、上述した実施例では、倒立移動装置１０が駆動する回転体として、二つの車輪１２，１４が用いられていたが、本発明はこのような実施形態に限られず、一輪や１球など、様々な回転体を任意に選択することができる。
また、上述の実施例では、路面センサとしてレーザレンジセンサを使用したが、超音波センサや、カメラ等によって撮影された画像を処理することで段差を検出しても良い。
【００４６】
なお、上述の倒立移動装置１０では、倒立移動装置１０を減速することで、段差に進入する際に車体２０を後ろ側へ傾斜させている。車体２０が後ろ側へ傾斜すると、路面センサ２９の測定角度範囲が上方を向き、路面形状を測定する範囲が変わってしまう。従って、倒立移動装置は、図１３に示す構成とすることができる。
図１３の倒立移動装置４０は、車体５０が、上車体６２と下車体６４とによって構成されている。上車体６２と下車体６４は、アクチュエータ６６によって接続されている。そして、アクチュエータ６６を駆動することによって、上車体６２を下車体６４に対して前後にスライドさせることができる。また、路面センサ２９は下車体６４の前方下部に取り付けられており、その測定角度範囲が路面方向に向けられている。
このような構成によれば、車体５０を傾斜させる際に、コントローラからアクチュエータ６６に制御指令値を出力して、上車体６２を後ろ側にスライドさせることができる。すると、車体（すなわち車体の重心）を後ろ側に傾斜させても、上車体６２及び下車体６４を垂直に維持することができる。従って、路面センサ２９の測定角度範囲が上方を向くことなく、測定角度範囲が変わらないため、路面形状を好適に測定することができる。
また、倒立移動装置１０が加速する際は、下車体６４に対して上車体６２をスライドさせないと、車体５０は前方に傾斜することとなる。車体５０が前方に傾斜しても、路面センサ２９による測定角度範囲が変更になってしまう。そこで、倒立移動装置１０が加速する際は、下車体６４に対して上車体６２を前方に移動させて、車体５０の傾きを抑制することができる。これによって、路面センサ２９の測定角度範囲の変化が抑制され、倒立移動装置１０の加速中も路面形状を好適に測定することができる。
【００４７】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例をさまざまに変形、変更したものが含まれる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【図面の簡単な説明】
【００４８】
【図１】倒立移動装置１０の斜視図。
【図２】コントローラ７０の機能ブロック図。
【図３】目標値出力部７４の機能ブロック図。
【図４】段差を乗り越える動作の説明図。
【図５】通常時の目標速度パターン及び目標位置パターン。
【図６】Ｖ０算出時のＶ０−ｈ相関マップ。
【図７】θ０算出時のθ０−ｈ相関マップ。
【図８】段差乗り越え時の目標速度パターン及び目標位置パターン。
【図９】段差回避時の目標速度パターン及び目標位置パターン。
【図１０】コントローラ７０の処理を示すフローチャート。
【図１１】倒立移動装置１０の段差進入時の説明図。
【図１２】倒立移動装置１０の段差進入時の説明図。
【図１３】倒立移動装置４０の段差進入時の説明図。
【図１４】倒立移動装置６０の段差進入時の説明図。
【符号の説明】
【００４９】
１０：倒立移動装置
１２、１４：車輪
１６：車軸
２０：車体
２２、２４：モータ
２２ａ、２４ａ：エンコーダ
２８：ジャイロセンサ
２９：路面センサ
３０：重心
４０：倒立移動装置
５０：車体
６０：倒立移動装置
６２：上車体
６４：下車体
６６：アクチュエータ
７０：コントローラ
７２：制御指令部
７２ａ：走行制御指令値算出部
７２ｂ：倒立制御指令値算出部
７４：目標値出力部
７５：段差検出部
７９：目標速度パターン算出部
８０：目標位置出力部
８１：目標速度出力部
９０：現在速度算出部
９２：現在位置算出部
【図１】
2007219986.tif 000003
【図２】
2007219986.tif 000004
【図３】
2007219986.tif 000005
【図４】
2007219986.tif 000006
【図５】
2007219986.tif 000007
【図６】
2007219986.tif 000008
【図７】
2007219986.tif 000009
【図８】
2007219986.tif 000010
【図９】
2007219986.tif 000011
【図１０】
2007219986.tif 000012
【図１１】
2007219986.tif 000013
【図１２】
2007219986.tif 000014
【図１３】
2007219986.tif 000015
【図１４】
2007219986.tif 000016