(57)【特許請求の範囲】
【請求項１】
車軸上に配置された２以上の車輪を回転駆動する第１のアクチュエータを備える倒立振子型移動体であって、
前記倒立振子型移動体が障害物と接触した場合に、前記第１のアクチュエータを制御して当該倒立振子型移動体を旋回運動させる旋回運動制御部と、
前記倒立振子型移動体が障害物と接触した場合に、接触によって発生する前後揺動運動を当該倒立振子型移動体が旋回する方向についての相当する旋回運動として算出する旋回運動算出部と、を備え、
前記旋回運動制御部は、前記旋回運動を行うように前記第１のアクチュエータを駆動制御して前記倒立振子型移動体を旋回させる
ことを特徴とする倒立振子型移動体。
【請求項２】
前記旋回運動算出部は、前記車輪の車軸の位置と前記倒立振子型移動体の上体部の重心位置との進行方向における距離に応じて変化する変化量を測定するセンサの出力に基づいて旋回運動を算出する
ことを特徴とする請求項１記載の倒立振子型移動体。
【請求項３】
前記倒立振子型移動体の上体部を駆動して、前記車軸の位置に対する前記上体部の重心位置を変化させる第２のアクチュエータと、
前記第２のアクチュエータを制御して前記上体部を旋回中心側が前記車輪が接地する接地面に対して低くなるように傾斜させる姿勢制御部と、を更に備える
ことを特徴とする請求項１又は２記載の倒立振子型移動体。
【請求項４】
前記センサが、前記変化量として前記上体部の傾斜角速度を検出するジャイロセンサである
ことを特徴とする請求項１記載の倒立振子型移動体。
【請求項５】
さらに、前記倒立振子型移動体が障害物と接触したことを判定する接触判定部を備える
ことを特徴とする請求項１記載の倒立振子型移動体。
【請求項６】
前記接触判定部が、前記車輪の回転量に基づいて前記倒立振子型移動体の現在位置を測定するエンコーダの出力に基づいて接触を判定する
ことを特徴とする請求項５記載の倒立振子型移動体。
【請求項７】
車軸上に配置された２以上の車輪を回転駆動する倒立振子型移動体の制御方法であって、
前記倒立振子型移動体が障害物と接触した場合に、接触によって発生する前後揺動運動を当該倒立振子型移動体が旋回する方向についての相当する旋回運動として算出するステップと、
前記旋回運動を行うように前記倒立振子型移動体を旋回させるステップと、を備える
ことを特徴とする倒立振子型移動体の制御方法。
【請求項８】
前記車輪の車軸の位置と前記倒立振子型移動体の上体部の重心位置との進行方向における距離に応じて変化する変化量を測定するステップと、
前記測定された変化量の出力に基づいて旋回運動を算出するステップと、を備える
ことを特徴とする請求項７記載の倒立振子型移動体の制御方法。
【請求項９】
前記倒立振子型移動体の上体部を駆動して、前記車軸の位置に対する前記上体部の重心位置を変化させて当該上体部を旋回中心側が前記車輪が接地する接地面に対して低くなるように傾斜させるステップと、を更に備える
ことを特徴とする請求項７又は８記載の倒立振子型移動体の制御方法。
【請求項１０】
前記変化量として前記上体部の傾斜角速度が検出される
ことを特徴とする請求項７記載の倒立振子型移動体の制御方法。
【請求項１１】
さらに、前記倒立振子型移動体が障害物と接触したことを判定するステップを備える
ことを特徴とする請求項７記載の倒立振子型移動体の制御方法。
【請求項１２】
前記車輪の回転量に基づいて倒立振子型移動体の現在位置が測定されるステップと、
前記測定された現在位置に基づいて接触を判定するステップと、を備える
ことを特徴とする請求項１１記載の倒立振子型移動体の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は倒立振子型移動体、及びその制御方法に関する。
【背景技術】
【０００２】
倒立振子型移動体は、倒立状態を維持しつつ平面上を走行する。この際、倒立振子型移動体は、左右の駆動輪を駆動して、車体の重心位置が車軸の鉛直上方に位置するように重心位置を修正することにより倒立制御を行う。例えば、特許文献１には、倒立制御及び位置制御を融合した制御系を備え、予め設定された経路に沿って倒立２輪型台車ロボットを走行させる技術が開示されている。
【０００３】
倒立振子型移動体が走行中に障害物と衝突し、障害物を乗り越えることができない場合には、これ以上進行方向へ車輪を駆動させることができなくなる。このため、障害物と衝突した場合に、車輪には進行方向とは反対方向への力（衝突反力）が発生する。衝突反力により、車輪の回転が止められると、車輪を駆動する力が駆動反力として車体に加わり、駆動反力が、倒立振子型移動体の車体を後方へと大きく回転させてしまう。このとき、従来の倒立振子型移動体では、後方へと回転してしまう車体の重心位置が車軸の鉛直上方に位置するように、進行方向とは反対方向（即ち後方）へと車輪を駆動して倒立状態を維持しようとする。
【０００４】
しかし、倒立状態を維持しようとして後方へ車輪を駆動することで、今度は、車体に対して前方への回転力が生じてしまう。従って、倒立振子型移動体は更に、車体の前方への回転を打ち消すように車輪を前方へと駆動して倒立状態を維持しようとする。このように、倒立振子型移動体は、障害物との接触による外乱によって、前後方向に回転力を受け、このような外乱に対して、倒立状態を維持しようとして前後方向に大きく揺動する。このため、倒立振子型移動体の搭乗者も前後方向に大きく振られることになる。特に、搭乗者にとって後ろ方向は死角のため、後ろ方向への揺れは非常に大きな不安感を与える。また、衝撃の大きさによっては倒立状態を維持できないこともあり、後ろ方向への揺れは危険である。
【０００５】
一方、特許文献２には、制御アームを用いて倒立制御を行う倒立振子型移動体が開示されている。
【特許文献１】特開２００５−１４５２９３号公報
【特許文献２】特表２００３−５０８２８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献２記載の技術は、制御アームにより搭乗者を支持することで安定して倒立振子型移動体の制御を行うことができるものの、障害物と衝突した場合に安全に回避することが困難であるという問題点があった。
【０００７】
本発明は、かかる課題を解決するためになされたものであり、障害物と衝突した場合に安全に回避することができる倒立振子型移動体、及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明にかかる第１の倒立振子型移動体は、車軸上に配置された２以上の車輪を回転駆動する第１のアクチュエータを備える倒立振子型移動体であって、前記倒立振子型移動体が障害物と接触した場合に、前記第１のアクチュエータを制御して当該倒立振子型移動体を旋回運動させる旋回運動制御部を備えるものである。
【０００９】
これにより、障害物と衝突した場合であっても、移動体を障害物に対して概平行な位置・姿勢へと旋回させることにより、移動体の進行方向前方には障害物がなくなる。従って、障害物と衝突後に、移動体は地面に対して水平な軸回りである前後方向に倒立状態を維持するための制御をより容易に行うことができる。また、前方に障害物がないため、移動体が倒立状態となり安定した後には、速やかに移動を開始することができる。
【００１０】
さらに、前記倒立振子型移動体が障害物と接触した場合に、接触によって発生する前後揺動運動を当該倒立振子型移動体が旋回する方向についての相当する旋回運動として算出する旋回運動算出部を備え、前記旋回運動制御部は、前記旋回運動を行うように前記第１のアクチュエータを駆動制御して前記倒立振子型移動体を旋回させるようにしてもよい。
【００１１】
さらにまた、前記旋回運動算出部は、前記車輪の車軸の位置と前記倒立振子型移動体の上体部の重心位置との進行方向における距離に応じて変化する変化量を測定するセンサの出力に基づいて旋回運動を算出するようにしてもよい。これにより、旋回運動をより精度よく算出することができる。
【００１２】
また、前記倒立振子型移動体の上体部を駆動して、前記車軸の位置に対する当該上体部の重心位置を変化させる第２のアクチュエータと、前記第２のアクチュエータを制御して前記上体部を旋回中心側が前記車輪が接地する接地面に対して低くなるように傾斜させる姿勢制御部と、を更に備えるようにしてもよい。これにより、旋回により発生する遠心力を打ち消して、より安定して旋回することができる。さらに、旋回半径を小さくすることができ、より素早く旋回することができる。
【００２１】
また、前記センサが、前記変化量として前記上体部の傾斜角速度を検出するジャイロセンサであるようにしてもよい。これにより、倒立振子型移動体の傾斜角速度を応答性よく検出することができる。
【００２２】
さらに、前記倒立振子型移動体が障害物と接触したことを判定する接触判定部を備えるようにしてもよい。これにより、接触したタイミングを特定し、接触したタイミングに応じて回避制御することができるため、より安全に回避することができる。
【００２３】
また、前記接触判定部が、前記車輪の回転量に基づいて前記倒立振子型移動体の現在位置を測定するエンコーダの出力に基づいて接触を判定するようにしてもよい。これにより、倒立振子型移動体の現在位置に基づいて、より精度よく接触を判定することができる。
【００２４】
本発明にかかる第５の倒立振子型移動体の制御方法は、車軸上に配置された２以上の車輪を回転駆動する倒立振子型移動体の制御方法であって、前記倒立振子型移動体が障害物と接触した場合に、当該倒立振子型移動体を旋回させるステップを備えるものである。
【００２５】
これにより、障害物と衝突した場合であっても、移動体を障害物に対して概平行な位置・姿勢へと旋回させることにより、移動体の進行方向前方には障害物がなくなる。従って、障害物と衝突後に、移動体は地面に対して水平な軸回りである前後方向に倒立状態を維持するための制御をより容易に行うことができる。また、前方に障害物がないため、移動体が倒立状態となり安定した後には、速やかに移動を開始することができる。
【００２６】
さらに、前記倒立振子型移動体が障害物と接触した場合に、接触によって発生する前後揺動運動を当該倒立振子型移動体が旋回する方向についての相当する旋回運動として算出するステップと、前記旋回運動を行うように前記倒立振子型移動体を旋回させるステップと、を備えるようにしてもよい。
【００２７】
さらにまた、前記車輪の車軸の位置と前記倒立振子型移動体の上体部の重心位置との進行方向における距離に応じて変化する変化量を測定するステップと、前記測定された変化量の出力に基づいて旋回運動を算出するステップと、を備えるようにしてもよい。これにより、旋回運動をより精度よく算出することができる。
【００２８】
また、前記倒立振子型移動体の上体部を駆動して、前記車軸の位置に対する当該上体部の重心位置を変化させて前記上体部を旋回中心側が前記車輪が接地する接地面に対して低くなるように傾斜させるステップと、を更に備えるようにしてもよい。これにより、旋回による遠心力を打ち消してより安定して旋回することができる。さらに、旋回半径を小さくすることができ、より素早く旋回することができる。
【００３７】
また、前記変化量として前記上体部の傾斜角速度が検出されるようにしてもよい。これにより、倒立振子型移動体の傾斜角速度を応答性よく検出することができる。
【００３８】
さらに、前記倒立振子型移動体が障害物と接触したことを判定するステップを備えるようにしてもよい。これにより、接触したタイミングを特定し、接触したタイミングに応じて制御することができるため、より安全に回避することができる。
【００３９】
また、前記車輪の回転量に基づいて前記倒立振子型移動体の現在位置が測定されるステップと、前記測定された現在位置に基づいて接触を判定するステップと、を備えるようにしてもよい。これにより、倒立振子型移動体の現在位置に基づいてより精度よく接触を判定することができる。
【発明の効果】
【００４０】
本発明によれば、障害物と衝突した場合に安全に回避することができる倒立振子型移動体、及びその制御方法を提供することを目的とする。
【発明を実施するための最良の形態】
【００４１】
発明の実施の形態１．
本実施の形態１にかかる移動体は倒立振子型の移動体である。よって、移動体は、地面に接地した車輪を駆動することによって、所定の位置・姿勢まで移動する。さらに、車輪を駆動することによって、倒立状態を維持することができる。
【００４２】
図１及び図２を用いて、本発明にかかる移動体１００の構成について説明する。図１は移動体１００の構成を模式的に示す側面図であり、図２は移動体１００の構成を模式的に示す正面図である。図２に示されるように、移動体１００は、倒立車輪型の移動体（走行体）であり、右駆動輪１８と、左駆動輪２０と、右ロッド１４と、左ロッド１６と、車体１２とを備えている。車体１２は移動体１００の上体部である。
【００４３】
右ロッド１４の側面側には、右マウント２６を介して、地面と接地する右駆動輪１８が設けられている。左ロッド１６の側面側には、左マウント２８を介して、地面と接地する左駆動輪２０が設けられている。右駆動輪１８及び左駆動輪２０を回転することによって、移動体１００が移動する。
【００４４】
右駆動輪１８及び右ロッド１４の間には、右マウント２６が配置されている。右マウント２６は、右ロッド１４の側端に固定されている。右マウント２６は、車軸３０を介して右駆動輪１８を回転可能に支持する。右駆動輪１８は、車軸３０を介して右輪駆動モータ３４の回転軸Ｃ１に固定されている。右輪駆動モータ３４は、右マウント２６内に固定され、車輪用アクチュエータとして機能する。即ち、右輪駆動モータ３４が右駆動輪１８を回転駆動する。左駆動輪２０及び左ロッド１６の間には、左マウント２８が配置されている。左マウント２８は、左ロッド１６の側端に固定されている。左マウント２８は、車軸３２を介して左駆動輪２０を回転可能に支持する。
【００４５】
左駆動輪２０は、車軸３２を介して左輪駆動モータ３６の回転軸Ｃ２に固定されている。左輪駆動モータ３６は、左マウント２８内に固定され、車輪用アクチュエータとして機能する。即ち、左輪駆動モータ３６が左駆動輪２０を回転駆動する。第１のアクチュエータとしての右輪駆動モータ３４及び左輪駆動モータ３６は、例えば、サーボモータである。尚、車輪用アクチュエータは、電気的なモータに限らず、空圧、油圧を使用したアクチュエータでもよい。
【００４６】
また、右マウント２６は、右輪エンコーダ５２を備えている。右輪エンコーダ５２は、右駆動輪１８の回転量としての回転角を検出する。左マウント２８は、左輪エンコーダ５４を備えている。左輪エンコーダ５４は、左駆動輪２０の回転量としての回転角を検出する。
【００４７】
右ロッド１４は、右マウント２６を介して右駆動輪１８の側端に取り付けられている。右ロッド１４の長手方向は、回転軸Ｃ１に対して垂直である。右ロッド１４の上端には、右姿勢制御用アクチュエータ４０を介して車体１２が取り付けられている。即ち、右ロッド１４は、車体１２及び右駆動輪１８を連結するリンクである。よって、右ロッド１４の下端側が、右駆動輪１８の回転軸Ｃ１に接続され、上端側が車体１２の回転軸Ｃ３に接続される。この右ロッド１４を介して、車体１２が車軸Ｃ１に対して回転可能に支持される。左ロッド１６は、左マウント２８を介して左駆動輪２０の側端に取り付けられている。左ロッド１６の長手方向は、回転軸Ｃ２に対して垂直である。左ロッド１６の上端には、左姿勢制御用アクチュエータ４２を介して車体１２が取り付けられている。即ち、左ロッド１６は、車体１２及び左駆動輪２０を連結するリンクである。よって、左ロッド１６の下端側が、左駆動輪２０の回転軸Ｃ２に接続され、上端側が車体１２の回転軸Ｃ３に接続される。この左ロッド１６を介して、車体１２が車軸Ｃ２に対して回転可能に支持される。このように、右ロッド１４及び左ロッド１６が、車体１２を車軸Ｃ１及びＣ２に対して回動可能に支持する支持部材となる。そして、右ロッド１４及び左ロッド１６の上方には、移動体１００の上体部である車体１２が配置されている。
【００４８】
右ロッド１４及び左ロッド１６は、それぞれ右駆動輪１８及び左駆動輪２０の内側に設けられている。即ち、移動体１００は、左右の車輪に対応して設けられた２つの右ロッド１４及び左ロッド１６を有している。右ロッド１４及び左ロッド１６には、それぞれ右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２が取り付けられている。右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２は、車体１２に対する右ロッド１４及び左ロッド１６の角度を可変にする。第２のアクチュエータとしての姿勢制御用アクチュエータ４０、４２は、例えば、サーボモータであり、車体１２の姿勢角を制御する。尚、モータの動力をギアやベルトやプーリなどを介して伝達してもよい。
【００４９】
車体１２は、台座７０、支柱７２、ジャイロセンサ４８、及び搭乗席２２を有している。平板状の台座７０は、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を介して、それぞれ右ロッド１４及び左ロッド１６と取り付けられている。台座７０の対向する側面には、右ロッド１４及び左ロッド１６が設けられている。即ち、右ロッド１４及び左ロッド１６の間に、台座７０が配置される。
【００５０】
右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２が駆動すると、右ロッド１４及び左ロッド１６に対する台座７０の角度が変化する。これにより、回転軸Ｃ３を回転中心として、台座７０を地面に対して水平な軸回りに前後方向に回転することができる。回転軸Ｃ３は回転軸Ｃ１及びＣ２と平行であり、回転軸Ｃ１及びＣ２の上方に位置する。回転軸Ｃ３と回転軸Ｃ１との間に右ロッド１４が設けられている。回転軸Ｃ３と回転軸Ｃ２との間に左ロッド１６が設けられている。この回転軸Ｃ３には、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２が設けられている。即ち、右ロッド１４及び左ロッド１６が姿勢を制御するためのスイングアームとなる。
【００５１】
また、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２が駆動すると、台座７０に対する右ロッド１４及び左ロッド１６の角度が変化する。これにより、回転軸Ｃ３に垂直な軸に対して、台座７０を左右方向に傾斜することができる。即ち、移動体１００の車体１２をロール方向（前方移動方向に平行な移動体１００の前後軸周り）に自律的に揺動傾斜させることができる。より具体的には、例えば、右姿勢制御用アクチュエータ４０のみを駆動し、台座７０に対して右ロッド１４を前方へと回転させることで、台座７０は右駆動輪１８側が低くなるように傾斜する。
【００５２】
もちろん、右ロッド１４を後方へと回転させてもよいし、これに限定されない。即ち、台座７０の回転軸Ｃ３が傾斜するように、少なくとも一方のロッドを前後方向に駆動してもよいし、任意の方向にロッドを駆動してもよい。このように、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２が駆動すると、車体１２の姿勢が前後方向及び左右方向に変化する。
【００５３】
台座７０には、バッテリーモジュール４４と、障害物検知センサ５８が収納されている。障害物検知センサ５８は、光学式の障害物検知センサであり、移動体１００の前方に障害物を検知すると、検知信号を出力する。バッテリーモジュール４４は、右輪駆動モータ３４、左輪駆動モータ３６、右姿勢制御用アクチュエータ４０、左姿勢制御用アクチュエータ４２、制御部８０等に対して電力を供給する。
【００５４】
車体１２の台座７０上には、ジャイロセンサ４８が設けられている。ジャイロセンサ４８は、車体１２の傾斜角に対する角速度を検出する。ここで、車体１２の傾斜角は、移動体１００の重心位置が車軸３０，３２の鉛直上方に伸びる軸からの傾斜度合いであり、例えば移動体１００の進行方向前方に車体１２が傾斜している場合を「正」とし、移動体１００の進行方向後方に車体１２が傾斜している場合を「負」として表わす。
【００５５】
また、進行方向の前後方向に加えて、左右方向の傾斜角速度はロール、ピッチ、ヨーの３軸のジャイロセンサ４８を用いて測定する。このように、ジャイロセンサ４８は、台座７０の傾斜角の変化を、車体１２の傾斜角速度として測定する。もちろん、ジャイロセンサ４８は他の箇所に取り付けられていてもよい。ジャイロセンサ４８で測定された傾斜角速度は、移動体１００の姿勢の変化に応じて変化する。即ち、傾斜角速度は、車軸の位置に対する車体１２の重心位置のずれ量に応じて変化する変化量である。従って、外乱などによって、車体１２の傾斜角度が急激に変化すると、傾斜角速度の値が大きくなる。
【００５６】
台座７０の中央近傍には、支柱７２が設けられている。この支柱７２によって、搭乗席２２が支持されている。即ち、搭乗席２２は、支柱７２を介して台座７０に固定されている。搭乗席２２は、搭乗者が座ることができる椅子の形状を有する。搭乗席２２の側面には、操作モジュール４６が設けられている。操作モジュール４６には、操作レバー（図示せず）及びブレーキレバー（図示せず）が設けられている。操作レバーは、搭乗者が移動体１００の走行速度や走行方向を調整するための操作部材である、搭乗者は、操作レバーの操作量を調整することによって移動体１００の移動速度を調整することができる、また、搭乗者は、操作レバーの操作方向を調整することによって移動体１００の移動方向を調整することができる。移動体１００は、操作レバーに加えられた操作に応じて、前進、停止、後退、左折、右折、左旋回、右旋回することができる。搭乗者がブレーキレバーを倒すことによって、移動体１００を制動することができる。移動体１００の進行方向は、車軸３０、３２と垂直な方向になる。
【００５７】
さらに、搭乗席２２の背もたれ部分には、制御部８０が実装されている。制御部８０は、搭乗者が操作モジュール４６に対して行なった操作に追従して、右輪駆動モータ３４及び左輪駆動モータ３６を制御し、移動体１００の走行（移動）を制御する。搭乗席２２の座面は台座７０の上面と平行に配置されている。制御部８０は、操作モジュールでの操作に応じて、右輪駆動モータ３４及び左輪駆動モータ３６を制御する。これにより、操作モジュール４６での操作に応じたトルク指令値で右輪駆動モータ３４及び左輪駆動モータ３６が駆動する。
【００５８】
制御部８０は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、通信用のインターフェースなどを有し、移動体１００の各種動作を制御する。そして、この制御部８０は、例えばＲＯＭに格納された制御プログラムに従って各種の制御を実行する。制御部８０は、周知のフィードバック制御により、右輪駆動モータ３４及び左輪駆動モータ３６を相互に独立して所定の角度に制御する。
【００５９】
続いて以下では、制御部８０による制御について図３を用いて説明する。図３は、制御部８０の制御を説明するためのブロック図である。制御部８０は、走行制御モジュール８１と、旋回制御モジュール８２と、姿勢制御部としての姿勢制御モジュール８３と、接触判定部としての接触判定モジュール８４とを有している。制御部８０は、走行制御モジュール８１、旋回制御モジュール８２、姿勢制御モジュール８３、及び接触判定モジュール８４を統括的に制御する。
【００６０】
走行制御モジュール８１は、右輪駆動モータ３４及び左輪駆動モータ３６を制御するアンプを有している。走行制御モジュール８１は、右輪駆動モータ３４及び左輪駆動モータ３６に駆動信号を出力して、右駆動輪１８及び左駆動輪２０をフィードバック制御する。具体的には、右輪エンコーダ５２と、左輪エンコーダ５４により測定された測定値が走行制御モジュール８１に入力される。
【００６１】
また、走行制御モジュール８１には、倒立を安定させるため、ジャイロセンサ４８からの傾斜角速度が入力されている。さらに、走行制御モジュール８１には、操作モジュール４６による操作に応じた指令値が入力される。そして、走行制御モジュール８１は、測定値、傾斜角速度及び指令値に基づいて、右輪駆動モータ３４及び左輪駆動モータ３６を駆動する。このように、走行制御モジュール８１は、右駆動輪１８及び左駆動輪２０をフィードバック制御する。これにより、移動体１００は、操作モジュール４６での操作に応じて移動する。よって、倒立状態で安定して走行することができる。尚、ここでのフィードバック制御としては公知の制御方法を用いることができる。
【００６２】
旋回制御モジュール８２は、移動体１００が障害物と接触した後における、移動体１００の旋回運動を制御する旋回運動制御部（図示せず）を有している。即ち、旋回制御モジュール８２は、右輪駆動モータ３４及び左輪駆動モータ３６を制御するアンプを有しており、右輪駆動モータ３４及び左輪駆動モータ３６に駆動信号を出力して、右駆動輪１８及び左駆動輪２０をフィードバック制御する。具体的には、右輪エンコーダ５２及び左輪エンコーダ５４により測定された測定値が旋回制御モジュール８２に入力される。そして、旋回制御モジュール８２は、測定値に基づいて、右輪駆動モータ３４及び左輪駆動モータ３６を駆動して旋回運動させる。ここでは、旋回制御モジュール８２が、移動体１００が鉛直軸中心に旋回するように右輪駆動モータ３４及び左輪駆動モータ３６を駆動する。
【００６３】
これにより、障害物と衝突した場合であっても、移動体１００を障害物に対して概平行な位置・姿勢へと旋回させることにより、移動体１００の進行方向前方には障害物がなくなる。従って、障害物と衝突後に、移動体１００は地面に対して水平な軸回りである前後方向に倒立状態を維持するための制御をより容易に行うことができる。また、前方に障害物がないため、移動体１００が倒立状態となり安定した後には、速やかに移動を開始することができる。
【００６４】
また、旋回制御モジュール８２は、移動体１００が障害物と接触した場合に、接触によって発生する前後揺動運動を当該倒立振子型移動体が旋回する方向についての相当する旋回運動として算出する旋回運動算出部（図示せず）を有している。旋回制御モジュール８２は、接触により発生した前後揺動を打ち消す方向に右輪駆動モータ３４及び左輪駆動モータ３６を制御して移動体１００を鉛直軸中心に旋回運動させる。旋回制御モジュール８２は、旋回運動算出部により与えられた、例えば旋回速度や旋回半径などの指令値に基づいて移動体１００を旋回運動させる。
【００６５】
ここで、旋回運動算出部は、例えば、車軸３０、３２の位置と車体１２の重心位置との進行方向における距離に応じて変化する変化量を測定するセンサの出力に基づいて旋回運動を算出する。これにより、旋回運動をより精度よく算出することができる。センサは、変化量として車体１２の傾斜角速度を検出する。傾斜角速度を検出するセンサとして、例えばジャイロセンサ４８を採用することができる。傾斜角速度を検出するジャイロセンサ４８からの検出信号を用いることによって、応答性を向上することができる。尚、傾斜角速度は、ジャイロセンサ４８以外のセンサで測定してもよい。例えば、姿勢制御用アクチュエータ４０、４２に回転角を検出するエンコーダを設けてもよいし、車体１２に姿勢角を検出する姿勢角センサや、回転角を検出するエンコーダを設けて、検出された角度の時間微分によって傾斜角速度を求めてもよい。
【００６６】
また、車軸３０、３２の位置と車体１２の重心位置との進行方向における距離に応じて変化する変化量は傾斜角速度以外であってもよい。即ち、車軸３０、３２の位置と車体１２の重心位置との進行方向における距離に応じて変化する変化量は、車体１２の傾斜角速度に限定されない。例えば、変化量として右輪駆動モータ３４及び左輪駆動モータ３６の回転量や、加速度センサにより測定される車体の加速度に基づいて旋回運動を算出してもよい。具体的には、障害物との接触直前における移動体１００の速度、及び接触により車輪が停止するのに要した時間に基づいて旋回運動を算出することができる。
【００６７】
姿勢制御モジュール８３は、移動体１００の姿勢を制御する。即ち、姿勢制御モジュール８３は、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動するためのアンプを有している。姿勢制御モジュール８３は、制御信号を出力して、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動する。これにより、車体１２を前後方向に回転することができ、また、車体１２を左右方向に傾斜することもできる。即ち、移動体１００の姿勢を制御することができる。ここでは、姿勢制御モジュール８３が、車体１２を旋回中心側が車輪が接地する接地面に対して低くなるように、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動して傾斜させる。これにより、移動体１００が旋回する場合に発生する遠心力を打ち消して、より安定して旋回することができる。さらに、旋回半径を小さくすることができ、より素早く旋回することができる。
【００６８】
接触判定モジュール８４は、移動体１００が障害物と接触したか否かを判定する。例えば、車輪１８、２０の回転量から移動体１００の現在位置を測定するエンコーダの出力に基づいて、移動体１００が障害物と接触したか否かを判定することができる。具体的には、エンコーダは、車輪の回転量として車輪の回転数を計測することにより、移動体１００の現在位置を測定することができる。従って、エンコーダにより出力される移動体１００の現在位置及び目標位置の差が所定の閾値以上となる場合には、移動体１００が障害物と接触しているものと判定することができる。これにより、接触したタイミングを特定し、接触したタイミングに応じて回避制御することができるため、より安全に回避することができる。さらに、移動体１００の現在位置に基づいて、より精度よく接触を判定することができる。
【００６９】
さらに、上記のエンコーダの出力に基づいて判定する手段に加えて、例えば、判定の際に車輪の回転トルクを用いることで、より精確に接触を判定することができる。具体的には、移動体１００は、目標位置へと到達するのに必要な回転トルクを決定する。そして、移動の際に、例えば各軸に設けられた圧力センサにより、車輪の回転量として車輪の回転トルクの大きさを時系列的に検出することができる。従って、移動するために決定した車輪の目標回転トルク及び検出した実回転トルクの差が所定の閾値以上となる場合には、移動体１００が障害物と接触しているものと判定することができる。このように、回転トルクによる判定を組み合わせることで、より精度の高い接触判定を行うことができる。
【００７０】
さらにまた、障害物との接触判定手段は上記のエンコーダの出力に基づいて判定する手段や、車輪の回転トルクに基づいて判定する手段に限定されない。例えば、障害物検知センサ５８を用いて障害物との接触を判定させてもよい。さらには、操作モジュール４６に移動体１００の制御モードを切り替え可能なスイッチを備え、障害物との接触が予測される場合に、搭乗者自らがスイッチを押すことにより、障害物との接触後に旋回制御を行わせる制御モードへと切替えるようにしてもよい。
【００７１】
続いて以下では、図４乃至９を用いて、移動体１００が障害物と接触した後の、上記の旋回運動制御及び姿勢制御について説明する。図４は、上記の制御方法を示すフローチャートである。図４において破線により囲まれた部分は、左から順にそれぞれ接触判定モジュール８４、旋回制御モジュール８２、及び姿勢制御モジュール８３が実行する制御内容を示している。図５乃至９は、移動体１００が障害物と接触した後の回避行動の様子を説明するための模式図である。ここでは、移動体１００が走行中に障害物９０に接触した場合について説明する。尚、図５乃至９では、説明のため、図１及び図２で示された構成を適宜省略している。
【００７２】
図５では、左側から右側に移動体１００が移動している。さらに、時系列に従って、移動体１００の様子を、図５乃至７に渡って順に、移動体１００ａ、移動体１００ｂ、移動体１００ｃとして示している。移動体１００ａは、障害物９０と接触した後、次のタイミングで移動体１００ｂとなる。同様に、移動体１００ｂは、接触し旋回した後、次のタイミングで移動体１００ｃとなる。このように、移動体１００ａ、移動体１００ｂ、移動体１００ｃの順番で移動していく。尚、図８は、上記の図５乃至７に示した移動体１００の走行中の様子を上面から見た図である。図９は、上記の旋回制御を行なっている間に、姿勢制御によって車体１２が傾斜する様子を示す側面図である。即ち、障害物９０と接触した後に、移動体１００が旋回する際に行う姿勢制御の様子を示す側面図である。
【００７３】
走行制御モジュール８１は、通常の走行を行うように、２輪制御を行う（ステップＳ１０１）。ここでは、倒立状態で安定して走行できるように、右輪駆動モータ３４及び左輪駆動モータ３６を駆動する。
【００７４】
接触判定モジュール８４は、エンコーダの出力に基づいて、移動体１００の現在位置について判定を行う（ステップＳ２０１）。即ち、エンコーダにより出力される移動体１００の現在位置及び目標位置の差が所定の閾値以上となる場合には、移動体１００が障害物９０と接触している可能性があるものと判定する。障害物９０と接触していない通常の走行時には、現在位置及び目標位置の差は通常の走行時に予想される程度の範囲に収まる。即ち、通常の走行時に予想される範囲に基づいて設定される所定の閾値を超えない。
【００７５】
従って、移動体１００の現在位置及び目標位置の差が所定の閾値を超えない間は、走行制御モジュール８１は、倒立走行を維持する（ステップＳ１０２）。具体的には、走行制御モジュール８１は操作モジュール４６での操作に応じた指令値通り、右輪駆動モータ３４及び左輪駆動モータ３６を駆動する。また、ジャイロセンサ４８からの傾斜角速度に応じて、倒立するよう右輪駆動モータ３４及び左輪駆動モータ３６が制御される。これにより、右駆動輪１８、及び左駆動輪２０が所望の回転速度で回転する。障害物９０と接触しない間は、上記の処理を繰り返して、２輪倒立走行を継続する。
【００７６】
一方、通常の走行をしている場合に、移動体１００の車輪が障害物９０に接触する（図５に示す移動体１００ａ参照）。移動体１００が障害物９０に接触すると、車輪１８、２０が前方に進まず停止し、進行方向とは反対方向への反力（衝突反力）が発生する。衝突反力に基づく前後揺動により、目標位置に対して現在位置が大きく離れる。ここで、接触判定モジュール８４が、エンコーダの出力結果に基づいて、現在位置を判定する（ステップＳ２０１）と、現在位置と目標位置との差が所定の閾値を超える。さらに、接触判定モジュール８４は、車輪の実回転トルク及び目標回転トルクの差が所定の閾値を超えているか否かを判定する（ステップＳ２０２）。回転トルクの差が、所定の閾値を超えていないと判定された場合には、障害物９０と接触したのではなく、スリップなどの原因によってその車輪の回転により十分な移動量が得られなかったものと判断し、走行制御モジュール８１は、倒立走行を維持する（ステップＳ１０２）。
【００７７】
ステップＳ２０２において、回転トルクの差が所定の閾値を越えたと判定した場合には、旋回制御モジュール８２は、現在位置を目標位置に置き換え、走行制御モジュール８１に指令し、車輪駆動モータによる駆動力の付与を停止させる（ステップＳ３０１）。これにより、接触後に、位置指令に基づいて前方へ移動しようとする制御を速やかに解除することができる。従って、接触後に再び障害物と接触を繰り返さずに済む。このため、より安全に回避することができる。次いで、旋回制御モジュール８２は、障害物９０との接触によって発生した反力によって生ずる前後揺動を移動体１００が旋回する方向についての相当する旋回運動として算出する（ステップＳ３０２）。例えば、ジャイロセンサ４８を用いて、車体１２の傾斜角速度を測定し、センサの出力に基づいて旋回運動を算出する。
【００７８】
次いで、旋回制御モジュール８２は、接触により発生した前後揺動を打ち消す方向に、移動体１００を鉛直軸中心に旋回走行させる（ステップＳ３０３）。旋回制御モジュール８２は、旋回運動として、例えば旋回速度や旋回半径などの指令値を与えて、移動体１００を旋回走行させる（図６に示す移動体１００ｂ、及び図７に示す移動体１００ｃ参照）。ここでは、鉛直軸（ｚ軸）中心に、白抜矢印Ｄの方向に、移動体１００を旋回走行させる。このようにして、右輪駆動モータ３４及び左輪駆動モータ３６を駆動して旋回走行させることで、接触により発生した反力によって生ずる前後揺動を旋回運動によって避ける。
【００７９】
次いで、旋回制御モジュール８２は、移動体１００が旋回した旋回角度が目標値に到達しているか否かを判定する（ステップＳ３０４）。例えば、旋回軸中心に対して９０度を旋回角度の目標値とする。旋回軸を中心に９０度旋回させることにより、移動体１００を障害物９０に対して略平行となる位置・姿勢へと移動させることができる。旋回角度が目標値に到達していない場合には、現在位置を目標位置に置き換え、走行制御モジュール８１に指令し、車輪駆動モータによる駆動力の付与を停止させ（ステップＳ３０１）、算出される旋回運動に基づいて、引き続き、移動体１００を鉛直軸中心に旋回走行させる（ステップＳ３０３）。
【００８０】
一方、ステップＳ３０４において、旋回角度が目標値に到達していると判定された場合には、走行制御モジュール８１は、倒立走行を再び開始する（ステップＳ１０２）。搭乗者自身による操作を行う場合には、操作モジュール４６を操作しての倒立走行を行い、自律走行を行う場合には、現在位置から新たな行き先まで走行するのに必要な位置指令値を求め、走行制御モジュール８１に位置指令値を与えることで倒立走行を継続する。
【００８１】
姿勢制御ジュール８３は、ステップＳ３０３の旋回制御と同期して、姿勢制御を行なう。姿勢制御モジュール８３が、車体１２を旋回軸中心側が車輪が設置する接地面に対して低くなるように、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動して傾斜させる（ステップＳ４０１）。即ち、ステップＳ３０３の旋回走行時において、旋回軸中心側が低くなるように、車体１２を傾斜させながら旋回走行する。ここでは、障害物９０が存在する側を旋回軸中心側として、旋回軸中心側に車体１２の回転軸Ｃ３が低くなるように傾斜させる（図９参照）。尚、車体１２を傾斜させる傾斜角度は、例えば、旋回走行時の旋回速度及び旋回半径に基づいて算出してもよいし、ジャイロセンサ４８で測定された傾斜角速度に基づいて算出してもよい。この場合、旋回によって発生する遠心力が大きくなればなるほど、旋回走行時の傾斜角度が大きくなる。このように、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動して傾斜させることで、旋回時に発生する遠心力を低減させることができる。
【００８２】
次いで、姿勢制御モジュール８３は、Ｓ３０３の旋回制御における旋回速度の指令が与えられているか否かを判定する（ステップＳ４０２）。旋回速度の指令が与えられている場合には、引き続き、姿勢制御モジュール８３は車体１２を傾斜させる。一方、ステップＳ４０２において、旋回速度の指令が与えられていない場合には、車体１２を傾斜状態から元の水平状態へと戻す。そして、走行制御モジュール８１は、倒立走行を再び開始する（ステップＳ１０２）。
【００８３】
尚、上記の説明では右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２によって、車体１２に対して右ロッド１４及び左ロッド１６を回転させる構成としたが、これに限るものではない。例えば、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２に直動関節を備え、車体１２の右駆動輪１８側及び左駆動輪２０側のいずれか一方を上下方向にスライドさせるようにしてもよい。具体的には、例えば鉛直軸中心に旋回する場合に、左姿勢制御用アクチュエータ４２を駆動して車体１２の左駆動輪２０側を鉛直軸下方へとスライドさせると共に、右姿勢制御用アクチュエータ４０を駆動して車体１２の右駆動輪１８側を鉛直軸上方へとスライドさせる。即ち、鉛直軸方向において、車体１２の右駆動輪１８側から左駆動輪２０側へと車体１２が低くなるように傾斜させる。もちろん、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２によって、右ロッド１４及び左ロッド１６の両方を駆動する構成に限らず、右ロッド１４及び左ロッド１６の少なくとも一方のみを駆動するようにしてもよい。即ち、右ロッド１４及び左ロッド１６の少なくとも一方を独立に駆動することによって、姿勢を制御してもよい。
【００８４】
尚、上記のステップＳ２０２において、決定した車輪の目標回転トルクと、検出した実回転トルクとの差が所定の閾値を超えているか否かを判定する手法としては、例えば、時系列的に連続して取得した車輪の実回転トルクの値を連側して複数（例えば３つ）取得し、これらの値の平均値と、設定した目標回転トルクの値とを比較する。このようにすると、突発的に発生した大きな実回転トルクの値がならされるため、より精度よく障害物に起因する実回転トルクの増大を検出することが可能となる。
【００８５】
尚、このように障害物９０との接触を判定するための閾値としては、予め所定の実験を行い、妥当な判断を行うための適切な値を決定することが好ましい。この実験においては、様々なパラメータ、例えば移動体１００の速度や床面の材質を変化させて実験データを統計的に取得し、これらのデータから適切な値を決定する。
【００８６】
発明の実施の形態２．
次に本発明の実施の形態２にかかる倒立振子型移動体について、図１０に示すブロック図を用いて説明する。尚、この発明の実施の形態２にかかる倒立振子型移動体の構成は、図１及び図２に示す構成と同様であり、説明を省略する。尚、本実施形態においては、上記の実施形態において説明した移動体１００の各構成と同一又は同様の構成については、同一の符号を付してその説明を省略するものとする。
【００８７】
図１０は、制御部８０の制御を説明するためのブロック図である。制御部８０は、走行制御モジュール８１、回転制御モジュール８５、及び接触判定部としての接触判定モジュール８４とを有している。制御部８０は、走行制御モジュール８１、回転制御モジュール８５、及び接触判定モジュール８４を統括的に制御する。尚、走行制御モジュール８１及び接触判定モジュール８４については、実施の形態１と同様の構成であるため説明を省略するものとする。
【００８８】
回転制御モジュール８５は、車軸３０、３２と平行な軸周りに対する移動体１００の上体部の回転運動を制御する回転運動制御部（図示せず）を有している。即ち、回転制御モジュール８５は、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動するためのアンプを有している。回転制御モジュール８５は、制御信号を出力して、右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動する。これにより、車体１２の上体部を車軸３０、３２に対して平行な軸回りである前後方向に回転することができる。
【００８９】
これにより、接触により発生した前後揺動を打ち消す方向に移動体１００の上体部を回転運動させ、障害物と接触した場合に発生する不安定動作を低減させることができる。このため、障害物と衝突した場合であっても、搭乗者を大きく揺れ動かさずに安全に回避することができる。
【００９０】
また、回転制御モジュール８５は、移動体１００が障害物と接触した場合に、接触によって発生する移動体１００の前後揺動運動を移動体１００の車軸３０、３２と平行な軸周りの上体部の相当する回転運動として算出する回転運動算出部（図示せず）を有している。回転制御モジュール８５は、回転運動を行って前後揺動運動を打ち消すようにアクチュエータ４０、４２を制御して移動体１００の上体部を前後方向に回転運動させる。回転制御モジュール８５は、回転運動算出部により与えられた、例えば回転速度などの指令値に応じて移動体１００の上体部を回転運動させる。
【００９１】
ここで、回転運動算出部は、例えば、車軸３０、３２の位置と車体１２の重心位置との進行方向における距離に応じて変化する変化量を測定するセンサの出力に基づいて前後揺動回転角を算出する。これにより、回転運動をより精度よく算出することができる。センサは、例えば変化量として車体１２の傾斜角速度を検出するジャイロセンサ４８を採用することができる。ジャイロセンサ４８からの検出信号を用いることによって、応答性を向上することができる。尚、傾斜角速度は、ジャイロセンサ４８以外のセンサで測定してもよい。例えば、姿勢制御用アクチュエータ４０、４２に回転角を検出するエンコーダを設けてもよいし、車体１２に姿勢角を検出する姿勢角センサや、回転角を検出するエンコーダを設けて、検出された角度の時間微分によって傾斜角速度を求めてもよい。
【００９２】
また、車軸３０、３２の位置と車体１２の重心位置との進行方向における距離に応じて変化する変化量は傾斜角速度以外であってもよい。即ち、車軸３０、３２の位置と車体１２の重心位置との進行方向における距離に応じて変化する変化量は、車体１２の傾斜角速度に限定されない。例えば、変化量として右輪駆動モータ３４及び左輪駆動モータ３６の回転量や、加速度センサにより測定される車体の加速度に基づいて回転力を算出してもよい。具体的には、障害物との接触直前における移動体１００の速度、及び接触により車輪が停止するのに要した時間に基づいて回転揺動を検出することができる。
【００９３】
続いて、図１１及び図１２を用いて、移動体１００が障害物と接触した後の、上記の回転制御について説明する。図１１は、上記の制御を示すフローチャートである。図１２は、移動体１００が障害物と接触した後の回避行動の様子を説明するための模式図である。ここでは、移動体１００が走行中に、移動体１００の右駆動輪１８及び左駆動輪２０が障害物９０に接触した場合について説明する。尚、図１２では、説明のため、図１及び図２で示された構成を適宜省略している。
【００９４】
図１２（ａ）では、左側から右側に移動体１００ａが移動している。さらに、時系列に従って、移動体１００ａは、障害物９０と接触した後、次のタイミングで図１２（ｂ）に示す移動体１００ｂとなる。
【００９５】
移動体１００が通常の走行をしている場合に、移動体１００の車輪が障害物９０に接触する（図１２（ａ）に示す移動体１００ａ参照）。移動体１００が障害物９０に接触すると、車輪１８、２０が前方に進まず停止し、進行方向とは反対方向への反力（衝突反力）が発生する。衝突反力による前後揺動によって、目標位置に対して現在位置が大きく離れる。ここで、接触判定モジュール８４が、エンコーダの出力結果に基づいて、現在位置を判定する（ステップＳ２０１）と、現在位置と目標位置との差が所定の閾値を超える。さらに、接触判定モジュール８４は、車輪の実回転トルク及び目標回転トルクの差が所定の閾値を超えているか否かを判定する（ステップＳ２０２）。回転トルクの差が、所定の閾値を超えていないと判定された場合には、障害物９０と接触したのではなく、スリップなどの原因によってその車輪の回転により十分な移動量が得られなかったものと判断し、走行制御モジュール８１は、倒立走行を維持する（ステップＳ１０２）。
【００９６】
ステップＳ２０２において、回転トルクの差が所定の閾値を越えたと判定した場合には、回転制御モジュール８５は、現在位置を目標位置に置き換え、走行制御モジュール８１に指令し、車輪駆動モータによる駆動力の付与を停止させる（ステップＳ５０１）。これにより、接触後に、位置指令に基づいて前方へ移動しようとする制御を速やかに解除することができる。従って、接触後に再び障害物と接触を繰り返さずに済む。このため、より安全に回避することができる。次いで、回転制御モジュール８５は、障害物９０との接触によって発生する移動体１００の前後揺動運動を移動体１００の車軸と平行な軸周りの上体部の相当する回転運動として算出する（ステップＳ５０２）。例えば、ジャイロセンサ４８を用いて、車体１２の傾斜角速度を測定し、センサの出力に基づいて回転運動を算出する。
【００９７】
次いで、回転制御モジュール８５は、前後揺動運動を打ち消すように移動体１００の上体部を前後方向に回転させる（ステップＳ５０３）。回転制御モジュール８５は、例えば回転速度などの指令値を与えて、移動体１００の上体部を回転させる。即ち、障害物９０との接触による反力に基づいて発生する、移動体１００が前後方向に回転する方向についての前後揺動を打ち消すように、アクチュエータ４０、４２を駆動して回転する（図１２（ｂ）に示す移動体１００ｂ参照）。ここでは、矢印Ｅ１は、障害物９０に衝突する直前の車輪の駆動力の方向を示す。矢印Ｅ２は、衝突後、衝突反力により生じる車輪への駆動反力の方向を示す。矢印Ｅ３は、駆動反力を打ち消すように、移動体１００の上体部を回転運動する方向を示す。即ち、アクチュエータ４０、４２を駆動して回転させることで、接触により発生した前後揺動を低減させる。例えば、接触した場合にジャイロセンサ４８で測定された傾斜角速度（前後揺動）に応じて、前後揺動を低減させることができる。この場合、測定された傾斜角速度（前後揺動）が大きくなればなるほど、回転時の回転速度が大きくなる。
【００９８】
その他の実施の形態．
上記の実施の形態１においては、移動体１００が障害物９０と接触した後に旋回制御を行う場合を示した。そして、上記の実施の形態２においては、移動体１００が障害物９０と接触した後に回転制御を行う場合を示したが、本発明はこれらに限定されない。即ち、移動体１００が障害物９０と接触した場合に、接触による前後揺動を打ち消すように旋回運動及び回転運動を行うように構成しても良い。具体的には、旋回運動算出部により旋回運動を算出すると共に、回転運動算出部により回転運動を算出し、例えば、車体１２を回転させるよりも、移動体１００を旋回させることでより安全に回避することができるものと判断した場合には、旋回制御モジュール８２により旋回制御を行うように構成する。これにより、接触による前後揺動に基づいて制御を切替えることで、障害物９０との接触により発生した前後揺動をより効果的に低減させることができる。
【００９９】
尚、上記の説明では、移動体１００が障害物９０と接触した場合に、第２のアクチュエータとしての右姿勢制御用アクチュエータ４０及び左姿勢制御用アクチュエータ４２を駆動して、車体１２の上体部を車軸３０、３２に対して平行な軸回りである前後方向に回転することで前後方向の不安定動作を低減させるものとしたが本発明はこれに限定されない。即ち、第１のアクチュエータとしての車輪とは独立した自由度によって車体１２の上体部を駆動する手段は、回転運動に限定されず、前後揺動運動を移動体１００の車軸と直交する方向に上体部の相当する並進運動を行ってもよい。回転運動に加えて並進運動を行ってもよいし、両者を混合して行ってもよい。これにより、接触により発生する移動体１００の前後方向の不安定動作をより効果的に低減することができる。
【０１００】
尚、上記の説明では、２輪型の移動体１００について説明したが、車輪の数は、これに限られるものではない。１輪型の移動体でもよく、３以上の車輪を有する移動体であってもよい。さらに、上記の説明では、搭乗席２２を有する移動体１００について説明したが、物体運搬用の移動台車であってもよい。もちろん、移動ロボットなどのその他の移動体であってもよい。
【図面の簡単な説明】
【０１０１】
【図１】本発明の実施の形態にかかる移動体の構成を示す側面図である。
【図２】本発明の実施の形態にかかる移動体の構成を示す正面図である。
【図３】本発明の実施の形態１にかかる移動体の制御系の構成を示すブロック図である。
【図４】本発明の実施の形態１にかかる移動体の制御方法を示すフローチャートである。
【図５】本発明の実施の形態１にかかる移動体が障害物と接触した後の回避行動の様子を示す模式図である。
【図６】本発明の実施の形態１にかかる移動体が障害物と接触した後の回避行動の様子を示す模式図である。
【図７】本発明の実施の形態１にかかる移動体が障害物と接触した後の回避行動の様子を示す模式図である。
【図８】本発明の実施の形態１にかかる移動体が障害物と接触した後の回避行動の様子を上面から示す模式図である。
【図９】本発明の実施の形態１にかかる移動体が障害物と接触した後の回避行動の様子を示す模式図である。
【図１０】本発明の実施の形態２にかかる移動体の制御系の構成を示すブロック図である。
【図１１】本発明の実施の形態２にかかる移動体の制御方法を示すフローチャートである。
【図１２】本発明の実施の形態２にかかる移動体が障害物と接触した後の回避行動の様子を示す模式図である。
【符号の説明】
【０１０２】
１２  車体、１４  右ロッド、１６  左ロッド、１８  右駆動輪、２０  左駆動輪、
２２  搭乗席、２６  右マウント、２８  左マウント
３０  車軸、３２  車軸、３４  右輪駆動モータ、３６  左輪駆動モータ、
４０  右姿勢制御用アクチュエータ、４２  左姿勢制御用アクチュエータ、
４４  バッテリーモジュール、４６  操作モジュール、４８  ジャイロセンサ、
７０  台座、７２  支柱、
８０  制御部、８１  走行制御モジュール、８２  旋回制御モジュール、８３  姿勢制御モジュール、８４  接触判定モジュール、８５  回転制御モジュール、
９０  障害物、１００  移動体、１０１  搭乗者
【図１】
0004605204.tif 000002
【図２】
0004605204.tif 000003
【図３】
0004605204.tif 000004
【図４】
0004605204.tif 000005
【図５】
0004605204.tif 000006
【図６】
0004605204.tif 000007
【図７】
0004605204.tif 000008
【図８】
0004605204.tif 000009
【図９】
0004605204.tif 000010
【図１０】
0004605204.tif 000011
【図１１】
0004605204.tif 000012
【図１２】
0004605204.tif 000013