説明

倒立車輪式移動ロボットとその制御方法

【課題】重心位置や路面傾斜角が変動した場合であっても目標とする倒立走行を行うことが可能な倒立車輪式移動ロボットとその制御方法を提供すること。
【解決手段】本発明にかかる倒立車輪式移動ロボットで10は、駆動輪2を駆動する駆動部12と、倒立車輪式移動ロボット10の実状態を検出する検出部14と、検出部14によって検出した実状態と目的状態の偏差に応じて制御量を生成し、駆動部12に対して出力することにより、倒立走行を制御する倒立走行コントローラ11と、検出部14によって検出された車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に応じた車体傾斜角補正量を、目標状態に含まれる目標車体傾斜角に反映させる車体傾斜角補正量算出部19とを備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、倒立車輪式移動ロボットとその制御方法に関し、特に倒立走行の制御技術に関する。
【背景技術】
【0002】
倒立車輪式移動ロボットの開発が進んでいる。ここで、当該倒立車輪式移動ロボットの2次元モデルを図1に示す。図1に示す2次元モデルにおいて、倒立車輪式移動ロボット10では、車体1にサスペンション軸3を介して同一車軸上に配置された2つ以上の駆動輪2が設けられている。さらに駆動輪2の前後方向には補助輪4が設けられている。図1(a)は、倒立走行制御が行われていない状態であり、この状態では、駆動輪2に加えて補助輪4が接地しており、安定な状態が実現される。
【0003】
安定化制御コントローラ、すなわち倒立走行コントローラが動作することにより、図1(b)に示されるように、補助輪4は接地せずに駆動輪4のみで倒立した状態を維持することができる。このような状態で、走行指令値が与えられると、倒立安定状態を維持したまま、走行指令値に応じて走行する。走行が終了すると所定タイミングにおいて図1(a)で示される安定状態に戻り、倒立走行コントローラを停止させる。このような構成を有する移動ロボットや移動体の走行制御について様々な技術が提案されている(例えば、特許文献1〜5)。
【0004】
続いて、図1に示されるような2次元モデルの倒立車輪式移動ロボットにおける一般的な制御系について、図2を用いて説明する。図2において、目標状態及び実状態は、例えば、車体傾斜角度、傾斜角速度、車輪回転角度、車輪回転角速度に関する状態である。図に示されるように、倒立走行コントローラ11は、目標状態として倒立姿勢や走行パターンが与えられると、かかる目的状態と、ジャイロやエンコーダ等の検出部14によって計測した実状態との偏差に基づいて、車輪駆動トルクや回転速度などの適切な制御量を算出する。
【0005】
駆動部12は、倒立走行コントローラ11から入力した制御量に応じてモータを駆動しロボットを動作させ、倒立状態を維持した状態で走行を行う。このとき、倒立走行コントローラ11は、制御理論に基づいて設計されることもあるが、PID制御等の制御系で構成される場合もある。
【0006】
ここで、図3は、従来の問題点について説明するための説明図であり、図3(a)は重心位置が既知の場合、同図(b)は重心位置が未知の場合(例えば、重心位置が変化した場合)をそれぞれ示す。また、図において、Gは重力加速度、Mは車体1の重心、ηは検出した車体傾斜角度、ηは実際の車体傾斜角度、θは車輪回転角をそれぞれ示す。
【0007】
このとき、図2の制御系では、検出部14によって検出された車体傾斜角度が、図3(a)に示す重力加速度Gの方向に対する車体傾斜角度が正確に検出できることを前提としている。しかしながら、図3(b)に示す場合のように、車体の質量が増減する等して重心位置が変動すると、検出した車体傾斜角度と、実際の車体傾斜角度との間に偏差が発生する。これに伴い、倒立走行コントローラ11によって算出した制御量は適切な値ではなくなってしまう。
【0008】
ここで、図4は、重心位置が変動して矛盾した状態を目標とした場合について説明するための図であり、図4(a)は物理的に矛盾した目標状態、同図(b)は制御結果をそれぞれ示す。図4(a)では、検出部14によって検出された車体傾斜角度ηは0、実際の車体傾斜角度ηは0でない値、車輪回転角速度dθ/dtは0をとる。
【0009】
重心位置が変動して矛盾した状態においては、図4に示されるように、倒立車輪式移動ロボットは物理的に実現不可能な矛盾した状態を目標としてしまうため、狙った制御性能を実現できなくなる。例えば、図4(a)に示す状態でその場で停止しようとしても、重心Mが車軸の真上に位置せず、倒立走行コントローラ11が重心Mを図上の右側にずれたところに位置させるため、結果として、倒立車輪式移動ロボットは、図4(b)の白抜き矢印に示されるように紙面右方向に移動を続けてしまい、車輪回転角速度dθ/dtは0ではない値をとる。
【0010】
また、矛盾した目標状態は、倒立車輪式移動ロボットの重心位置が変化しなくても、路面形状が変化することによっても生じる。図5は路面形状が変化することによって矛盾した目標状態が発生した場合を説明するための説明図である。
【0011】
図5(a)は倒立車輪式移動ロボットが平地で停止した状態を示す。この場合には、車輪回転角速度dθ/dtは0であり、また、検出された車体傾斜角度ηと実際の車体傾斜角度ηは、いずれも0であり等しく、矛盾した目標状態は発生していない。
【0012】
他方、図5(b)は倒立車輪式移動ロボットが傾斜を有する坂、即ち斜面上にある場合を示す。この場合には、検出された車体傾斜角度ηと実際の車体傾斜角度ηは、いずれも0であり等しいが、車輪回転角速度dθ/dtは0でない。このため、目標状態に矛盾が発生することとになり、結果として、倒立車輪式移動ロボットは、斜面を下り続けてしまう。
【0013】
このような課題を解決するための技術が提案されている(例えば、特許文献6)。特許文献6に開示された制御系を図6に示す。この従来技術では、重心位置が変動することによって発生する矛盾を、外力オブザーバ15による推定値や停止指令中のみ車輪角速度の絶対値により目標車体傾斜角度の補正量を、目標車体傾斜角補正量算出部16によって算出している。
【0014】
【特許文献1】特開昭63−305082号公報
【特許文献2】特開平05−245780号公報
【特許文献3】特開2004−295430号公報
【特許文献4】特開2007−69688号公報
【特許文献5】特開2007−76413号公報
【特許文献6】特開2007−11634号公報
【発明の開示】
【発明が解決しようとする課題】
【0015】
しかしながら、特許文献6に開示された制御技術では、次のような問題が生じる。即ち、外乱オブザーバによる推定値を用いて目標車体傾斜角度を補正すると、図5のように斜面で停止しようとした際に補正量が斜面を加速して下る方向に算出されてしまう。これは、車軸より上側(車体側)から加わった外乱と、車軸より下側(路面側)から加わった外乱を分離できない上に、補正すべき方向が逆であることに起因して生じる問題である。即ち、図7に示されるように、正の駆動トルクτを加えたとき、車輪の回転方向Rwが正、車体の回転方向Rbが負となる。図8で示されるように、図面上の右から左への外力を受けた場合を考えると、外力により車体は負の方向に回転する(Rb<0)ため、図7に示される関係から外力オブザーバの推定値は正となる。このとき、車体傾斜角は正の方向に補正されるように設定する。
【0016】
また、停止指令中のみ車輪角速度の絶対値を用いて目標車体傾斜角度を補正すると、「平地走行→斜面走行→減速→停止」する場合には、斜面で停止した直後に路面形状が、走行開始前の平地から斜面に変化したことによる影響で、停止した後に坂を下り始めてしまう。ある程度坂を下ったところで、車輪角速度の絶対値により目標車体傾斜角度の補正が効き始めて停止する。この点に関して、図9で示されるように、重力加速度の影響(外乱)により車輪は正方向に回転する。このとき図7に示す関係から、外力オブザーバの推定値Pは、正となる。従って、車体傾斜角の補正ηも同様に正となるが、この補正方向は斜面を下るように加速する方向に重心を移動させることを意味しており、斜面上で停止することはできない。このとき、斜面で停止することができるようにロジックを変更することも可能だが、そうすると、外力を受けた場合に正常に補正できない。
【0017】
本発明は、かかる課題を解決するためになされたものであり、重心位置や路面傾斜角が変動した場合であっても目標とする倒立走行を行うことが可能な倒立車輪式移動ロボットとその制御方法を提供することを目的とする。
【課題を解決するための手段】
【0018】
本発明にかかる倒立車輪式移動ロボットは、倒立状態で駆動輪の回転により走行する倒立車輪式移動ロボットであって、前記駆動輪を駆動する駆動部と、前記倒立車輪式移動ロボットの実状態を検出する検出部と、前記検出部によって検出した実状態と目的状態の偏差に応じて制御量を生成し、前記駆動部に対して出力することにより、倒立走行を制御する倒立走行コントローラと、前記検出部によって検出された車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に応じた車体傾斜角補正量を、前記目標状態に含まれる目標車体傾斜角に反映させる補正手段とを備えたものである。
【0019】
ここで、前記補正手段は、実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対して係数を乗算する係数処理部を備えていることが望ましい。
【0020】
また、前記係数処理部は、車輪回転角速度又は車体の移動速度に応じて当該係数を決定することが望ましい。特に、前記係数処理部は、車輪回転角速度又は車体の移動速度が増加するに従って当該係数を小さくすることが望ましい。
【0021】
また、前記補正手段は、実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対してフィルタリング処理を行い、前記係数処理部に出力するフィルタ処理部を備えていることが望ましい。
【0022】
本発明にかかる倒立車輪式移動ロボットの制御方法は、倒立状態で駆動輪の回転により走行する倒立車輪式移動ロボットの制御方法であって、前記倒立車輪式移動ロボットの実状態を検出するステップと、検出した実状態と目的状態の偏差に応じて制御量を生成し、倒立走行を制御するステップと、実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に応じた車体傾斜角補正量を、前記目標状態に含まれる目標車体傾斜角に反映させるステップを備えたものである。
【0023】
ここで、実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対して係数を乗算するステップをさらに有することが望ましい。
【0024】
また、車輪回転角速度又は車体の移動速度に応じて当該係数を決定することが望ましい。特に、車輪回転角速度又は車体の移動速度が増加するに従って当該係数を小さくすることが望ましい。
【0025】
さらに、実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対してフィルタリング処理を行うステップを備えていることが望ましい。
【発明の効果】
【0026】
本発明によれば、重心位置や路面傾斜角が変動した場合であっても目標とする倒立走行を行うことが可能な倒立車輪式移動ロボットとその制御方法を提供することを提供することができる。
【発明を実施するための最良の形態】
【0027】
本発明の実施の形態にかかる倒立車輪式移動ロボットの2次元モデルは、従来の技術として説明した図1と同じである。即ち、倒立車輪式移動ロボット10では、車体1にサスペンション軸3を介して同一車軸上に配置された2つ以上の駆動輪2が設けられている。さらに駆動輪2の前後方向には補助輪4が設けられている。
【0028】
続いて、本実施の形態にかかる制御系について、図10に示すブロック図を用いて説明する。図10において、目標状態及び実状態は、例えば、車体傾斜角度、傾斜角速度、車輪回転角度、車輪回転角速度に関する状態である。
【0029】
倒立走行コントローラ11は、CPU、ROM、RAM等によって構成されている。本例における倒立走行コントローラ11は、倒立車輪式移動ロボットを制御を行うコントローラのうち、倒立走行機能のみについて抽出した機能ブロックである。倒立走行コントローラ11は、制御理論に基づいて設計されることもあるが、PID制御等の制御系で構成される場合もある。
【0030】
駆動部12は、倒立走行コントローラ11から入力した制御量に応じてモータを駆動し倒立車輪式移動ロボット13に対してトルクを与えて動作させ、倒立状態を維持した状態で走行を行う。
【0031】
検出部14は、実際の車体傾斜角度、傾斜角速度、車輪回転角度、車輪回転角速度を検出し、それらの情報を出力する。また、検出部14は、例えば、車体1の傾斜角速度を検出するジャイロ、駆動輪2の回転角を検出するエンコーダ等により構成される。なお、車体の傾斜角度は、ジャイロによって検出された傾斜角速度を積分処理することにより得ることができる。また、駆動輪2の回転角速度は、エンコーダによって検出された回転角を微分処理することにより得ることができる。
【0032】
本実施の形態にかかる倒立車輪式移動ロボットは、上述した各構成に加えて、さらにバッテリー、操作モジュール等の公知の構成を備えている。
【0033】
本実施の形態においては、さらに目標車体傾斜角補正量算出部19を備え、かかる目標車体傾斜角補正量算出部19はフィルタ処理部17、係数処理部18を有する。
【0034】
目標車体傾斜角補正量算出部19は、検出部14によって検出された車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差を算出し、この偏差に応じた車体傾斜角補正量を、目標状態に含まれる目標車体傾斜角に反映させる処理を実行する。
【0035】
フィルタ処理部17には、検出部14において検出された実際の車輪回転角速度と、目標状態として入力された目標の車輪回転角速度の偏差が算出され、入力される。フィルタ処理部17は、入力された偏差量に対して、高い周波数成分を除去するローパスフィルタリング処理を行う。なお、本実施の形態にかかる制御系においてフィルタ処理部17は必須ではなく、実際の車輪回転角速度と目標の車輪回転角速度の偏差を直接、係数処理部18に入力するようにしてもよい。
【0036】
係数処理部18は、実際の車輪回転角速度と目標の車輪回転角速度の偏差若しくはそれに対してフィルタリング処理された値に対して、所定の係数を乗算し、車体傾斜角補正量を出力する。係数は、予め決定した一定値でもよく、状況に応じて変更してもよい。
【0037】
係数を一定値とすると、車輪回転角速度の偏差が大きいほど車体傾斜角度の補正量も大きくなるが、車輪回転角速度の偏差は、停止中より走行中に大きくなりやすいため、走行中も常に車体傾斜角度を補正し続けると、停止目標位置よりも進みすぎてしまう(即ち、オーバーシュートしてしまう)、或いは走行中に不安定になって転倒してしまうという問題が発生する可能性がある。
【0038】
そこで、係数を車輪回転角速度に応じて増減させるようにするとよい。例えば、図11に示されるように、目標の車輪回転角速度が増加するに従って、係数を滑らかに小さくさせる。このように制御することにより、停止中は大きな補正を行って狙った位置にとどまることができ、走行中はあまり大きな補正は行わず、オーバーシュートを防止することが可能となる。
【0039】
このとき、特許文献6に記載されている手法のように、走行中に全く補正を行わないようにすると、斜面を走行していても補正が実施されず、斜面で停止した直後に斜面を下ってしまうという問題が生じる。従って、ある程度低速での移動中も目標車体傾斜角は補正することが望ましい。
【0040】
係数処理部18から出力された車体傾斜角補正量は、目標車体傾斜角に加えられる。これにより、実際の車輪回転角速度と目標の車輪回転角速度の偏差が小さくなるように、目標の車体傾斜角が補正される。
【0041】
以上説明したように、本実施の形態にかかる倒立車輪式移動ロボットでは、移動させる指令を発している、発していないに関わらず、実際の車輪回転角速度と目標の車輪回転角速度との偏差の大小に基づいて目標傾斜角を増減させている。このような制御を実行することにより、路面傾斜の有無に関わらず、目標の車体姿勢と目標移動速度の矛盾を自動的に解消することができる。これにより、重心位置や路面傾斜角が変動した場合でも倒立車輪式移動ロボットは、目標とする倒立走行(その場での停止を含む)を発揮できる。また、走行中も目標の車体傾斜角を補正することにより、斜面走行中に停止指令を受けた際に、減速状態から停止状態に迅速に移行することができる。
【0042】
さらに、目標車体傾斜角を増減させる際に使用する係数を目標の車輪角速度(即ち目標の移動速度)に応じて増減するとよい。このような制御を実行することにより、オーバーシュートやアンダーシュート(即ち移動距離の過不足)を防止できる。
【0043】
なお、上述の例では、実際の車輪回転角速度と目標の車輪回転角速度の偏差に基づいて、車体傾斜角補正量を決定するようにしたが、これに限らず、実際の車体速度と目標の車体速度の偏差に基づいて車体傾斜角補正量を決定するようにしてもよい。また、上述の目標の車輪回転角速度に基づいて係数を決定するようにしたが、これに限らず、実際の車輪回転角速度であってもよく、さらには、車体の速度であってもよい。
【図面の簡単な説明】
【0044】
【図1】本発明及び従来技術にかかる倒立車輪式移動ロボットの2次元モデルを示す図である。
【図2】従来の一般的な制御系を示すブロック図である。
【図3】従来の制御手法における問題点を説明するための図である。
【図4】従来の制御手法における問題点を説明するための図である。
【図5】従来の制御手法における問題点を説明するための図である。
【図6】従来技術にかかる制御系を示すブロック図である。
【図7】従来の制御手法における問題点を説明するための図である。
【図8】従来の制御手法における問題点を説明するための図である。
【図9】従来の制御手法における問題点を説明するための図である。
【図10】本発明にかかる倒立車輪式移動ロボットの制御系を示すブロック図である。
【図11】本発明にかかる倒立車輪式移動ロボットの制御において用いられる係数と目標車輪回転角速度の関係を示すグラフである。
【符号の説明】
【0045】
1 車体
2 駆動輪
3 サスペンション軸
4 補助輪
10,13 倒立車輪式移動ロボット
11 倒立走行コントローラ
12 駆動部
14 検出部
15 外力オブザーバ
16 目標車体傾斜角補正量算出部
17 フィルタ処理部
18 係数処理部
19 目標車体傾斜角補正量算出部

【特許請求の範囲】
【請求項1】
倒立状態で駆動輪の回転により走行する倒立車輪式移動ロボットであって、
前記駆動輪を駆動する駆動部と、
前記倒立車輪式移動ロボットの実状態を検出する検出部と、
前記検出部によって検出した実状態と目的状態の偏差に応じて制御量を生成し、前記駆動部に対して出力することにより、倒立走行を制御する倒立走行コントローラと、
前記検出部によって検出された車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に応じた車体傾斜角補正量を、前記目標状態に含まれる目標車体傾斜角に反映させる補正手段とを備えた倒立車輪式移動ロボット。
【請求項2】
前記補正手段は、実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対して係数を乗算する係数処理部を備えていることを特徴とする請求項1記載の倒立車輪式移動ロボット。
【請求項3】
前記係数処理部は、車輪回転角速度又は車体の移動速度に応じて当該係数を決定することを特徴とする請求項2記載の倒立車輪式移動ロボット。
【請求項4】
前記係数処理部は、車輪回転角速度又は車体の移動速度が増加するに従って当該係数を小さくすることを特徴とする請求項3記載の倒立車輪式移動ロボット。
【請求項5】
前記補正手段は、実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対してフィルタリング処理を行い、前記係数処理部に出力するフィルタ処理部を備えていることを特徴とする請求項2〜4いずれかに記載の倒立車輪式移動ロボット。
【請求項6】
倒立状態で駆動輪の回転により走行する倒立車輪式移動ロボットの制御方法であって、
前記倒立車輪式移動ロボットの実状態を検出するステップと、
検出した実状態と目的状態の偏差に応じて制御量を生成し、倒立走行を制御するステップと、
実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に応じた車体傾斜角補正量を、前記目標状態に含まれる目標車体傾斜角に反映させるステップを備えた倒立車輪式移動ロボットの制御方法。
【請求項7】
実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対して係数を乗算するステップをさらに有することを特徴とする請求項6記載の倒立車輪式移動ロボットの制御方法。
【請求項8】
車輪回転角速度又は車体の移動速度に応じて当該係数を決定することを特徴とする請求項7記載の倒立車輪式移動ロボットの制御方法。
【請求項9】
車輪回転角速度又は車体の移動速度が増加するに従って当該係数を小さくすることを特徴とする請求項8記載の倒立車輪式移動ロボットの制御方法。
【請求項10】
実状態の車輪回転角速度又は車体の移動速度と、目標状態の車輪回転角速度又は車体の移動速度の偏差に対してフィルタリング処理を行うステップをさらに備えていることを特徴とする請求項6〜9いずれかに記載の倒立車輪式移動ロボットの制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2009−201321(P2009−201321A)
【公開日】平成21年9月3日(2009.9.3)
【国際特許分類】
【出願番号】特願2008−42986(P2008−42986)
【出願日】平成20年2月25日(2008.2.25)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【Fターム(参考)】