説明

移動体制御装置、その制御方法及びプログラム

【課題】倒立型移動体の安全性を向上させる。
【解決手段】移動体制御装置110は、倒立型移動体の状態量を検出する状態検出手段123と、検出した状態量と駆動車輪410に生じる外乱トルク推定値と搭乗者の走行操作に応じ駆動車輪まわりに生じる操作トルク推定値と駆動車輪の駆動トルクとに基づき倒立型移動体の状態量及び搭乗者の姿勢角度のうち少なくとも1つを算出する状態推定手段131と、算出した状態量及び搭乗者の姿勢角度のうち少なくとも1つと駆動車輪の駆動トルクとに基づき外乱トルク推定値を算出する外乱トルク推定手段132と、算出した状態量及び搭乗者の姿勢角度のうち少なくとも1つに基づき操作トルク推定値を算出する操作トルク推定手段133と、外乱トルク推定値と操作トルク推定値と駆動車輪の駆動トルクとに基づき駆動車輪の外乱トルク及び操作トルクの組合せが不安定状態であるか否かを判定する状態判定手段と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、搭乗者の走行操作に応じて倒立状態を維持しつつ所望の走行を行う倒立型移動体の走行を安定的に制御する移動体制御装置、その制御方法及びプログラムに関するものである。
【背景技術】
【0002】
倒立状態を維持しつつ、搭乗者が搭乗するプラットホームの傾斜に応じて、所望の走行を行う倒立型移動体が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−502002号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここで、倒立状態を維持して走行する倒立型移動体は、例えば、凹凸路面を走行する場合に、その凹凸により駆動車輪に外乱トルクが生じるため走行が不安定となる。また、搭乗者によるプラットホームの傾斜操作により、その傾斜操作に応じて駆動車輪には操作トルクが生じている。
【0005】
しかしながら、上記特許文献1に示す倒立型移動体においては、上記路面などからの外乱トルクと走行操作に応じた操作トルクとが組み合わさり不安定性が増す状態があり、そのような状態を、十分に考慮した安定的な制御を行っているとは言えず、安全性の面で問題が生じる虞がある。
【0006】
本発明は、このような問題点を解決するためになされたものであり、倒立型移動体の安全性を向上させることができる移動体制御装置、その制御方法及びプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するための本発明の一態様は、倒立状態を維持して所望の走行を行う倒立型移動体を制御する移動体制御装置であって、前記倒立型移動体の状態量を検出する状態検出手段と、前記状態検出手段により検出された状態量と、前記倒立型移動体の駆動車輪に生じる外乱によるトルクの推定値である外乱トルク推定値と、搭乗者の走行操作に応じて前記駆動車輪まわりに生じるトルクの推定値である操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つを算出する状態推定手段と、前記状態推定手段により算出された前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つと、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記外乱トルク推定値を算出する外乱トルク推定手段と、前記状態推定手段により算出された前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つに基づいて、前記操作トルク推定値を算出する操作トルク推定手段と、前記外乱トルク推定手段により算出された前記外乱トルク推定値と、前記操作トルク推定手段により算出された前記操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記駆動車輪の外乱トルク及び操作トルクの組合せが前記倒立型移動体を不安定にする不安定状態であるか否かを判定する状態判定手段と、を備えることを特徴とする移動体制御装置である。
この一態様において、前記状態判定手段による判定結果と、前記状態推定手段により算出された前記倒立型移動体の状態量と、前記外乱トルク推定手段により算出された外乱トルク推定値と、に基づいて前記駆動車輪の駆動トルクを算出し、該算出した駆動トルクに基づいて前記駆動車輪の駆動を制御する制御手段を更に備えていてもよい。
この一態様において、前記制御手段は、前記状態判定手段により前記不安定状態であると判定されたとき、前記駆動車輪の駆動トルクがモーダル座標変換された前記状態量に制御ゲインを乗算した値から前記外乱トルク推定値を減算した値となるように、前記制御を行ってもよい。
この一態様において、前記状態判定手段により前記不安定状態であると判定されたとき、その旨をユーザに対して通知する警告手段を更に備えていてもよい。
この一態様において、前記状態判定手段は、モーダル座標変換された前記状態量と、前記駆動車輪を駆動する駆動トルクと、前記外乱トルク推定手段により算出された外乱トルク推定値と、前記操作トルク推定手段により算出された操作トルク推定値と、に基づいた値が所定閾値よりも大きいとき、前記不安定状態であると判定してもよい。
この一態様において、前記状態検出手段は、前記駆動車輪の回転情報、及び搭乗者が搭乗するプラットホームの姿勢角度情報のうち少なくとも一方を検出してもよい。
この一態様において、前記状態推定手段は、前記駆動車輪の駆動トルクと、前記外乱トルク推定手段により算出された外乱トルク推定値と、前記操作トルク推定手段により算出された操作トルク推定値と、前記状態量から該状態量の推定値を減算しゲインを乗算した演算結果と、に基づいて、前記倒立型移動体及び搭乗者の状態量を算出してもよい。
この一態様において、前記状態推定手段は、前記駆動車輪の角度、搭乗者が搭乗するプラットホームの姿勢角度、及び搭乗者の姿勢角度のうち少なくとも1つを算出してもよい。
この一態様において、前記状態推定手段は、下記(12)式を用いて倒立型移動体及び搭乗者の状態量を推定してもよい。
この一態様において、前記外乱トルク推定手段は、下記(13)式を用いて前記外乱トルク推定値を算出してもよい。
この一態様において、前記操作トルク推定手段は、下記(14)式を用いて前記操作トルク推定値を算出してもよい。
この一態様において、前記状態判定手段は、下記(31)式、(32)式、(40)式及び(41)式のうちいずれか1つが成立したとき、前記不安定状態であると判定してもよい。
この一態様において、前記制御手段は、前記状態判定手段により倒立型移動体が前記不安定状態であると判定されたとき、前記駆動車輪の駆動トルクが下記(35)式で算出されるトルクTとなるように、前記制御を行ってもよい。
他方、上記目的を達成するための本発明の一態様は、倒立状態を維持して所望の走行を行う倒立型移動体を制御する移動体制御装置の制御方法であって、前記倒立型移動体の状態量を検出するステップと、前記検出された状態量と、前記倒立型移動体の駆動車輪に生じる外乱によるトルクの推定値である外乱トルク推定値と、搭乗者の走行操作に応じて前記駆動車輪まわりに生じるトルクの推定値である操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つを算出するステップと、前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つと、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記外乱トルク推定値を算出するステップと、前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つに基づいて、前記操作トルク推定値を算出するステップと、前記算出された外乱トルク推定値と、前記算出された操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記駆動車輪の外乱トルク及び操作トルクの組合せが前記倒立型移動体を不安定にする不安定状態であるか否かを判定するステップと、を含むことを特徴とする移動体制御装置の制御方法であってもよい。
この一態様において、前記判定結果と、前記検出された倒立型移動体の状態量と、前記算出された外乱トルク推定値と、に基づいて前記駆動車輪の駆動トルクを算出し、該算出した駆動トルクに基づいて前記駆動車輪の駆動を制御するステップを更に含んでいてもよい。
この一態様において、前記不安定状態であると判定されたとき、その旨をユーザに対して通知するステップを更に含んでいてもよい。
さらに、上記目的を達成するための本発明の一態様は、倒立状態を維持して所望の走行を行う倒立型移動体を制御する移動体制御装置のプログラムであって、検出された前記倒立型移動体の状態量と、前記倒立型移動体の駆動車輪に生じる外乱によるトルクの推定値である外乱トルク推定値と、搭乗者の走行操作に応じて前記駆動車輪まわりに生じるトルクの推定値である操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つを算出する処理と、前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つと、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記外乱トルク推定値を算出する処理と、前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つに基づいて、前記操作トルク推定値を算出する処理と、前記算出された外乱トルク推定値と、前記算出された操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記駆動車輪の外乱トルク及び操作トルクの組合せが前記倒立型移動体を不安定にする不安定状態であるか否かを判定する処理と、をコンピュータに実行させることを特徴とする移動体制御装置のプログラムであってもよい。
【発明の効果】
【0008】
本発明によれば、倒立型移動体の安全性を向上させることができる移動体制御装置、その制御方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0009】
【図1】本発明の一実施の形態に係る移動体制御装置の概略的なシステム構成を示すブロック図である。
【図2】本発明の一実施の形態に係る移動体制御装置による制御処理フローの一例を示すフローチャートである。
【図3】本発明の一実施の形態に係る移動体制御装置のシミュレーションにおける搭乗者の姿勢角度の時間変化の一例を示す図である。
【図4】本発明の一実施の形態に係る移動体制御装置のシミュレーションにおける外乱トルクの時間変化の一例を示す図である。
【図5】本発明の一実施の形態に係る倒立型移動体の概略的構成を示す斜視図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の実施の形態について説明する。本発明の一実施の形態に係る移動体制御装置100は、図5に示すような制御対象である倒立型移動体120の走行を安定的に制御する装置である。本実施の形態に係る倒立型移動体120は、搭乗者が搭乗するプラットホーム421と、プラットホーム421の両側に回転可能に設けられた左右一対の駆動車輪410と、一対の駆動車輪410を駆動する一対のモータ121(図1)と、プラットホーム421に揺動可能に設けられ搭乗者が把持し操作を行うハンドル422と、を備えている。
【0011】
倒立型移動体120は、搭乗者による走行操作(例えば、プラットホーム421やハンドル422の傾斜操作、指令入力器(不図示)への操作情報(移動速度、移動方向など)の入力)に応じて、倒立状態を維持しつつ、所望の走行を行うように構成されている。例えば、プラットホーム421を前方へ傾斜させると倒立型移動体120が前進し、プラットホーム421を後方へ傾斜させると倒立型移動体120が後進するように構成されている。なお、本実施の形態において、上記倒立型移動体120の構成は一例である。例えば、倒立型移動体120は一対の駆動車輪410を有する構成であるが、これに限らず、一輪、又は3輪以上有する構成であってもよく任意の構成が適用可能である。
【0012】
図1は、本実施の形態に係る移動体制御装置の概略的なシステム構成を示すブロック図である。本実施の形態に係る移動体制御装置110は、倒立型移動体120の状態量を検出する状態検出器123と、状態検出器123により検出された倒立型移動体120の状態量に基づいて、外乱トルク及び操作トルクの推定を行う推定装置130と、状態検出器123により検出された状態量と推定装置130により推定された外乱トルク推定値及び操作トルク推定値とに基づいて、各モータ121を制御する制御装置140と、を備えている。
【0013】
各モータ121は、各駆動車輪410の駆動軸に減速機構などを介して連結されており、制御装置140からの制御信号(モータ電流)に応じて、各駆動車輪410を独立して回転駆動する。これにより、倒立型移動体120は、搭乗者の走行操作に応じて、倒立状態を維持しつつ、前後進、左右旋回、加減速、停止などの所望の走行を行うことができる。
【0014】
状態検出器123は、状態検出手段の一具体例であり、各駆動車輪410の回転情報やプラットホーム421の姿勢角度情報など倒立型移動体120の状態量を検出する。状態検出器123は、例えば、各駆動車輪410に設けられた回転センサなどを用いて各駆動車輪410の回転角度、回転角速度、回転角加速度を検出し、プラットホーム421やハンドル422に設けられた角度センサなどを用いてプラットホーム421やハンドル422の姿勢角度を検出できる。
【0015】
状態検出器123には推定装置130及び制御装置140が接続されており、検出した状態量を状態検出値として推定装置130及び制御装置140に対して出力する。
【0016】
推定装置130は、状態検出器123からの倒立型移動体120の状態量と制御装置140からのモータトルク(駆動トルク)と、に基づいて、後述の外部環境によって各駆動車輪410に生じる外乱トルクや搭乗者の操作によって各駆動車輪410に生じる操作トルクを推定する。推定装置130は、状態推定器131と、外乱トルク推定器132と、操作トルク推定器133と、を有している。
【0017】
状態推定器131は、状態推定手段の一具体例であり、状態検出器123からの状態検出値と、外乱トルク推定器132からの外乱トルク推定値と、操作トルク推定器133からの操作トルク推定値と、安定制御器142からの各モータ121のモータトルクと、に基づいて、例えば、搭乗者の姿勢角度など、状態検出器123で検出できない倒立型移動体120及び搭乗者の状態量の推定値を算出する。
【0018】
状態推定器131には外乱トルク推定器132及び操作トルク推定器133が接続されており、算出した倒立型移動体120及び搭乗者の状態量の推定値を、状態推定値として外乱トルク推定器132及び操作トルク推定器133に対して出力する。
【0019】
なお、状態推定器131は、予め設定されたパラメータ(例えば、後述の如く、外乱トルク推定値及び操作トルク推定値を算出するのに必要なパラメータ)のうち状態検出器123からの入力されない(状態検出器123が検出できない)パラメータ(例えば、搭乗者の姿勢角度)を自動的に算出し、それ以外は状態検出器123からの状態量を、夫々、状態推定値として出力してもよい。
【0020】
外乱トルク推定器132は、外乱トルク推定手段の一具体例であり、状態推定器131からの状態推定値と、安定制御器142からの各モータ121のモータトルクと、に基づいて、倒立型移動体120の走行中に凹凸路面など外部環境からの入力により各駆動車輪410に生じる外乱トルクを算出する。外乱トルク推定器132には、制御装置140及び状態推定器131が接続されており、算出した外乱トルクを外乱トルク推定値として、制御装置140及び状態推定器131に対して出力する。
【0021】
操作トルク推定器133は、操作トルク推定手段の一具体例であり、状態推定器131からの状態推定値に基づいて、搭乗者による走行操作に応じて各駆動車輪410まわりに生じる操作トルクを算出する。操作トルク推定器133には制御装置140及び状態推定器131が接続されており、算出した操作トルクを操作トルク推定値として、制御装置140及び状態推定器131に対して出力する。
【0022】
制御装置140は、推定装置130からの倒立型移動体120の外乱トルク推定値及び操作トルク推定値と、状態推定器131からの状態推定値と、に基づいて、各モータ121を駆動制御する。制御装置140は、状態判定器141と、安定制御器142と、を有している。
【0023】
状態判定器141は、状態判定手段の一具体例であり、推定装置130の外乱トルク推定器132からの外乱トルク推定値と、操作トルク推定器133からの操作トルク推定値と、安定制御器142からの各モータ121のモータトルクと、に基づいて、その外乱トルクと操作トルクとの組合せが倒立型移動体120を不安定にする不安定状態になっているか否かを判定する。状態判定器141には安定制御器142が接続されており、その判定結果を状態判定結果として安定制御器142に対して出力する。
【0024】
なお、状態判定器141は不安定と判定したとき、例えば、警告装置(警告手段の一具体例)143などを用いて、ユーザに対して警告を行う。警告装置143としては、例えば、警告音を出力するスピーカ、警告灯を点灯/点滅させるライト、警告表示を行う表示装置、プラットホーム421やハンドル422などに警告振動を発生させる振動装置、第3者に無線など介して通知する通信装置、などが含まれる。
【0025】
安定制御器142は、制御手段の一具体例であり、状態推定器131からの状態推定値と、状態判定器141からの状態判定結果と、外乱トルク推定器132からの外乱トルク推定値と、に基づいて、外乱トルクと操作トルクとの組合せが不安定状態になっていると判断した場合に、倒立型移動体120が安定走行を継続できるような各モータ121のトルクを算出し、算出したモータ121のモータトルクを状態推定器131、外乱トルク推定器132、及び状態判定器141に対して出力し、算出したモータ121のトルクに対応するモータ電流を、駆動回路などを介して各モータ121に対して出力する。各モータ121は、安全制御器142からのモータ電流に応じて、各駆動車輪410を回転駆動する。これにより、倒立型移動体120は、外乱トルクと操作トルクとの組合せが不安定状態になっている場合でも、安定的な走行を継続できる。
【0026】
ここで、推定装置130および制御装置140は、例えば、ASIC(Application Specific Integrated Circuit)や、プログラマブル電子システムなどとして実現することができる。
【0027】
次に、本実施の形態に係る移動体制御装置110の動作原理を、一具体例を用いて詳細に説明する。
【0028】
搭乗者と倒立型移動体120を合わせた運動方程式は、下記(1)式乃至(3)式として表される。
【数1】

【数2】

【数3】

ただし、上記(1)式乃至(3)式における各記号の意味は以下の通りである。
:駆動車輪410の慣性モーメント[kg・m]、
:搭乗者の慣性モーメント[kg・m]、
θ:駆動車輪410の角度[rad]、
θ:プラットホーム421の姿勢角度[rad]、
θ:搭乗者の姿勢角度[rad]、
:駆動車輪410の質量[kg]、
:搭乗者の質量[kg]、
:駆動車輪410の半径[m]、
:搭乗者の重心距離(搭乗者の重心位置と駆動車輪410の回転軸(駆動軸)との間の距離)[m]、
:モータ121のモータトルク(モータ121に対するトルク指令)[N・m]、
:外乱トルク[N・m]、
in:操作トルク[N・m]
倒立型移動体120が通常走行中において、下記(4)式乃至(6)式が成立する。
【0029】
【数4】

【数5】

【数6】

上記(4)式乃至(6)式を用いて、上記(1)式乃至(3)式を線形化すると、下記(7)式乃至(9)式が得られる。
【0030】
【数7】

【数8】

【数9】

上記(7)式乃至(9)式を、状態空間で表現すると下記(10)式および(11)式が得られる。
【0031】
【数10】

【数11】

ただし、上記(10)式および(11)式における記号の意味は以下の通りである。
x:状態
A:システム行列、
b:モータ121のモータトルクの入力行列、
d:操作入力行列、
M:慣性行列、
K:剛性行列、
h:モータ121のモータトルクの入力ベクトル、
f:操作トルク入力ベクトル、
C:出力行列、
y:出力ベクトル
ここで、例えば、状態検出器123で検出できない搭乗者の姿勢角度θを推定するため、状態推定器131に下記(12)式を導入する。また、倒立型移動体120の外乱トルク推定値Tハットを推定するため、外乱トルク推定器132に下記(13)式を導入し、倒立型移動体120の操作トルク推定値Tinハットを推定するため、操作トルク推定器133に下記(14)式を導入する。
【0032】
【数12】

【数13】

【数14】

【0033】
【数15】

上記(12)式乃至(14)式の安定性を示すため、下記(16)式に示すリアプノフ関数候補を導入する。
【0034】
【数16】

ただし、上記(16)式において、各記号の意味は以下の通りである。
:外乱トルクTの重み、
in:操作トルクTinの重み
上記(16)式に対するリアプノフ方程式は、下記(17)式として表される。
【0035】
【数17】

ただし、上記(17)式において、Qは正定値行列である。
上記(16)式の1階時間微分は、下記(18)式として表される。
【0036】
【数18】

上記(18)式(Vの微分値)が全てのx~≠0に対して負となる十分条件は、下記(19)式および(20)式として導出できる。
【0037】
【数19】

【数20】

さらに、上記(8)式および(7)式を書き換えると、下記(21)式および(22)式が得られる。
【0038】
【数21】

【数22】

上記状態推定器131における(12)式の帯域を十分に広く設計することにより、トルク外乱推定誤差T~および操作トルク推定誤差Tin~よりも状態推定誤差x~の方が早く0に収束すると仮定できる。したがって、上記(13)式及び上記(21)式を用いて、上記(19)式が得られ、上記(14)式及び上記(22)式を用いて、上記(20)式が得られる。
【0039】
上記(12)式に基づいて状態推定値xハットは、状態検出値xに収束する。上記(13)式に基づいて外乱トルク推定値Tハットは、外乱トルクTに収束する。上記(14)式に基づいて操作トルク推定値Tinハットは、操作トルクTinに収束する。
【0040】
このように、状態推定器131は、状態xと、外乱トルク推定器132からの外乱トルク推定値Tハットと、操作トルク推定器133からの操作トルク推定値Tinハットと、安定制御器142からのモータトルクTと、に基づいて、上記(12)式を用いて状態推定値xハットを算出する。これにより、状態検出器123により検出できない任意の倒立型移動体120及び搭乗者の状態量を推定することができる。したがって、例えば、倒立型移動体120に設けるセンサーの数などを低減でき、その小型軽量化を効率的に図ることが可能となる。
【0041】
外乱トルク推定器132は、状態推定器131からの状態推定値θ、θ、θと、安定制御器142からのモータトルクTと、に基づいて、上記(13)式を用いて外乱トルク推定値Tハットを算出する。操作トルク推定器133は、状態推定器131からの状態推定値θ、θ、θに基づいて、上記(14)式を用いて操作トルク推定値Tinハットを算出する。
【0042】
次に、凹凸路面など外部環境により各駆動車輪410に生じる外乱トルクTと、搭乗者110による走行操作により各駆動車輪410まわりに生じる操作トルクTinと、の組合せにより、倒立型移動体120が不安定化した場合の移動体制御装置110の動作について詳細に説明する。
【0043】
まず、下記(23)式を用いて、状態検出値xのモーダル座標変換を行う。
【数23】

ただし、上記(23)式において、Σはモーダル行列(システム行列Aの固有ベクトルを並べた正方行列)である。
上記(23)式を上記(10)式へ代入すると、下記(24)式が得られる。
【0044】
【数24】

上記(24)式のシステム行列(ΣAΣ−1)は、対角行列とジョーダン正準系の対角ブロック行列となる。したがって、上記(24)式の対角行列に対応するサブシステムおよび、ジョーダン正準系に対応するサブシステムの最後の式は、下記(25)式として書き換えられ、ジョーダン正準系に対応するサブシステムの最後の式以外の式は、下記(26)式として書き換えられる。
【0045】
【数25】

【数26】

ただし、上記(25)式および(26)式における各記号の意味は以下の通りである。
λ:システム行列Aの第i番目の固有値[rad/s]、
β:Σbの第i要素、
δ:Σdの第i要素
上記(25)式および(26)式において、インデックスiは重複することはないものとする。また、上記(25)式および(26)式を合わせて、1から6の整数が全て割り当てられる。
上記(10)式が不安定と成るための十分条件は、下記(27)式又は(28)式として表される。
【0046】
【数27】

【数28】

ただし、上記(27)式および(28)式において、αを正の定数とする。
本実施の形態において、モータトルクが飽和しない範囲で制御可能な外乱トルクと操作トルクを対象としており、上記(27)式および(28)式は上記(10)式の不安定性が不安定極の存在に起因する場合を示している。したがって、外乱トルクや操作トルクが大きくモータトルクが飽和して不安定となる場合は、本実施の形態において対象外とする。
上記(27)式および(28)式に、sgn(z)を乗算し、|z|で除算すると下記(29)式および(30)式が得られる。
【0047】
【数29】

【数30】

状態判定器141は、下記(31)式及び(32)式を用いて、外乱トルクと操作トルクとの組合せが倒立型移動体120をより不安定にする不安定状態であるか否かを判定する。より具体的には、状態判定器141は、モーダル座標変換を行った状態検出値xと、外乱トルク推定器132からの外乱トルク推定値Tハットと、操作トルク推定器133からの操作トルク推定値Tinハットと、安定制御器142からのモータトルクTと、に基づいて、下記(31)式又は(32)式が成立したと判断したとき、外乱トルクと操作トルクとの組合せが倒立型移動体120をより不安定にする不安定状態であると判断する。
【0048】
ここで、状態判定器141は、下記(31)式又は(32)式の成立を判定することで、倒立型移動体120の複数のモード(モーダルフォームという座標上での表現に変換した場合の上記(25)式、(26)式などに対応するダイナミクス)のうち、少なくとも1つのモードに対する外乱トルク及び操作トルクの組合せが前記モードを不安定化するとき、上記不安定状態と判断する。なお、各ダイナミクスを表わす運動方程式の固有値の実部は負値であり、その負値の絶定値が大きいほど追従偏差が早く収束するため安定性が高くなるものとする。
【0049】
そして、状態判定器141は、不安定状態であると判断したとき、例えば、搭乗者に対してその旨を警告装置143を用いて通知する。これにより、搭乗者はその不安定状態に対して、減速操作、停止操作、降車操作などの予備操作を行うことができるため、その安全性が向上する。
【0050】
【数31】

【数32】

ただし、上記(31)式および(32)式において、所定閾値cは状態判定器141に予め設定された正の定数であり、ユーザが任意の値に設定変更できるように構成されている。
上記(31)式および(32)式において、外乱トルクT及び操作トルクTinは、状態検出器123などにより直接検出することが出来ないため、夫々、外乱トルク推定器132により算出した外乱トルク推定値Tハット及び操作トルク推定器133により算出した操作トルク推定値Tinハットに置き換えている。
さらに、安定制御器142は、外乱トルクT及び操作トルクTinにより安定性が減少した下記(33)式のモードの極を、ラプラス平面の左奥へ移動させるような安全制御を実施する。
【0051】
【数33】

アッカーマンの公式により制御ゲイン行列kは下記(34)式として導出できる。
【数34】

ただし、上記(34)式において、Cは上記(33)式の可制御性行列であり、α(・)は所望の極を持つ特性多項式である。
上記(34)式に示す制御ゲイン行列kを用いて、外乱トルクT及び操作トルクTinにより安定性が減少した上記(33)式に示すモードのダイナミクスを安定化するモータトルクTは、下記(35)式として導出できる。
【0052】
【数35】

上記(35)式を用いることで、外乱トルクTと操作トルクTinにより安定性が減少した上記(33)式に示すモードのダイナミクスが安定化される。
【0053】
安定制御器142は、状態判定器141から不安定であるという不安定状態判定結果が入力された場合、状態推定器131からの状態推定値zハットと、外乱トルク推定器132からの外乱トルク推定値Tハットと、に基づいて、上記(35)式を用いてモータトルクTを算出する。そして、安定制御器142は、各モータ121が算出したモータトルクTを出力するようなモータ電流を、各モータ121に対して出力する。
【0054】
以上のようにして、本実施の形態に係る移動体制御装置110において、状態判定器141によって、凹凸路面など外部環境からの入力により各駆動車輪410に生じる外乱トルクと、搭乗者による走行操作に応じて各駆動車輪410まわりに生じる操作トルクと、の組合せが倒立型移動体120をより不安定にする不安定状態を、高精度に判定し、例えば、その不安定状態である旨を警告装置143により搭乗者に通知することで、その安全性を向上させることができる。さらに、安定制御器142は、倒立型移動体120が安定走行を継続できるようなモータトルクTを算出し、算出したモータトルクTに基づいて各モータ121を制御することで、倒立型移動体120の走行を安定させることができる。
なお、特に、走行の安定化に影響する上記不安定状態(不安定モード)のみに対して、上述の如く、必要最小限の安定化を実施できるため、余分なモータ電流が発生せず、省電力を効率的に図ることができる。この場合、倒立型移動体120は、同一のバッテリ容量でより長距離走行が可能となる。また、モータトルクの飽和が起こり難いため、安定性が増しそれに起因した転倒等を抑制することができる。
【0055】
次に、上記実施の形態の変形例について説明する。上記実施の形態において、倒立型移動体120が例えば、複素数の固有値を持つ構成となっていてもよい。この場合、上記(24)に示す複素数の固有値を持つサブシステムの式は、下記(36)式および(37)式として表される。
【0056】
【数36】

【数37】

ただし、上記(36)式および(37)式において、ωは減衰固有周波数である。
上記(36)式および(37)式で表されるモードは、減衰固有周波数ωで振動しながら収束度λで収束する。
上記(36)式および(37)式のサブシステムが不安定となる十分条件は、上記(27)式および(28)式と同様に導出でき、下記(38)式又は(39)式として表される。
【0057】
【数38】

【数39】

上記(25)式、(26)式、(38)式、及び(39)式において、インデックスiは重複することはなく、上記(25)式、(26)式、(38)式、及び、(39)式を合わせて、1から6の整数が全て割り当てられる。
状態判定器141は、上記実施の形態と同様に、下記(40)式又は(41)式が成立したと判定したとき、搭乗者に対して不安全状態である旨を、警告装置143を介して通知する。
【0058】
【数40】

【数41】

【0059】
安定制御器142は、状態判定器141から不安全であるという不安定状態判定結果が入力された場合、上記実施の形態と同様に、安定運転を継続させるようなモータ電流を、各モータ121に対して出力する。
【0060】
このように、安定制御器142は、上記(31)式及び(32)式を、上記(40)式及び(41)式に置き換えて判定を行うことにより、外乱トルクと操作トルクが複素数の固有値を有する組合せの不安定状態となっている場合でも、その不安定状態の判定を適正に行うことができ、倒立型移動体120の安定的運転を継続させることができる。
【0061】
次に、本実施の形態に係る移動体制御装置による制御方法について詳細に説明する。図2は、本実施の形態に係る移動体制御装置による制御処理フローの一例を示すフローチャートである。
【0062】
倒立型移動体120の状態検出器123は、倒立型移動体120の状態量を検出し(ステップS101)、検出した状態量を状態検出値として推定装置130の状態推定器131に対して出力する。
【0063】
状態推定器131は、状態検出器123からの状態検出値と、外乱トルク推定器132からの外乱トルク推定値と、操作トルク推定器133からの操作トルク推定値と、安定制御器142からの各モータ121のモータトルクと、に基づいて、上記(12)式を用いて倒立型移動体120及び搭乗者の状態量の推定値を算出し(ステップS102)、算出した倒立型移動体120及び搭乗者の状態量の推定値を、状態推定値として外乱トルク推定器132、操作トルク推定器133、及び安定制御器142に対して出力する。
【0064】
外乱トルク推定器132は、状態推定器131からの状態推定値と、安定制御器142からの各モータ121のモータトルクと、に基づいて、上記(13)式を用いて外部環境からの入力により各駆動車輪410に生じる外乱トルクを算出し(ステップS103)、算出した外乱トルクを外乱トルク推定値として、状態判定器141、安定制御器142及び状態推定器131に対して出力する。
【0065】
操作トルク推定器133は、状態推定器131からの状態推定値に基づいて、上記(14)式を用いて、搭乗者による走行操作に応じて各駆動車輪410まわりに生じる操作トルクを算出し(ステップS104)、算出した操作トルクを操作トルク推定値として、状態判定器141及び状態推定器131に対して出力する。
【0066】
状態判定器141は、外乱トルク推定器132からの外乱トルク推定値と、操作トルク推定器133からの操作トルク推定値と、安定制御器142からの各モータ121のモータトルクと、に基づいて、上記(31)式、(32)式、(40)式及び(41)式のいずれか1式を満たした、その外乱トルクと操作トルクとの組合せが倒立型移動体120を不安定にする不安定状態になっているか否かを判定し(ステップS105)、その判定結果を状態判定結果として安定制御器142に対して出力する。
【0067】
状態判定器141により外乱トルクと操作トルクとの組合せが不安定状態になっていると判定されたとき(ステップS105のYES)、警告装置143は、ユーザに対して警告を行う(ステップS106)。また、安定制御器142は、状態推定器131からの状態推定値と、状態判定器141からの状態判定結果と、外乱トルク推定器132からの外乱トルク推定値と、に基づいて、上記(35)式を用いて、倒立型移動体120が安定走行を継続できるようなモータトルクを算出し(ステップS107)、算出したモータトルクを状態推定器131、外乱トルク推定器132、及び状態判定器141に対して出力し、算出したモータトルクに対応するモータ電流を各モータ121に対して駆動回路などを介して出力する。そして、各モータ121は、安全制御器142からのモータ電流に応じて、各駆動車輪410を回転駆動する。これにより、倒立型移動体120は、安定的な走行を継続できる。
【0068】
次に、本実施の形態に係る移動体制御装置によるシミュレーション結果について説明する。なお、本シミュレーションにおいて、各パラメータは、例えば、以下のように設定されている。
【0069】
=5[kg]、m=70[kg]、J=0.025[kg・m]、J=25.2[kg・m]、r=0.1[m]、l=0.8[m]、g=9.8[m/s]、q=1、qin=1、θ1ic(駆動車輪410の角度の初期値)=0[rad]、θ2ic(プラットホーム421の姿勢角度の初期値)=0.12[rad]、θ3ic(搭乗者の姿勢角度の初期値)=0.12[rad]、θ1icの微分値=22.2[rad/s]、θ2icの微分値=0[rad/s]、θ3icの微分値=0[rad/s]、T(制御周期)=1×10−3[s]
【0070】
なお、本シミュレーションに用いた上記数値は、倒立型移動体120の現実的な数値の一例である。また、本シミュレーションにおいて、例えば、路面の凹凸により周期0.5[s]、及び振幅0.15[N・m]となる、のこぎり波状の外乱トルクTを受け、1[s]において搭乗者が上記(27)式のαを0.5[rad/s]とするような操作トルクTinが搭乗者の走行操作により入力された場合を模擬している。さらに、本シミュレーションにおいて、重み行列Qを、例えば単位行列としている。
【0071】
図3は、本発明の実施の形態に係る移動体制御装置のシミュレーションにおける搭乗者の姿勢角度の時間変化の一例を示す図である。図3において、点線(a)は搭乗者が転倒した状態(搭乗者の姿勢角度がπ/4[rad]となった状態)を示し、破線(b)は従来の移動体制御装置(例えば、上記(10)式の外乱トルクの項及び操作トルクの項を除いた閉ループ系の極を−1[rad/s]に配置する状態フィードバック制御)による搭乗者の姿勢角度の時間変化を示し、実線(c)は、本実施の形態に係る移動体制御装置110による搭乗者の姿勢角度の時間変化を示している。
【0072】
図3において、搭乗者が経過時間略1[s]において、上記(10)式に示す状態空間を不安定とするような操作トルクが搭乗者の走行操作により入力された場合、従来の移動体制御装置による動作制御においては、搭乗者が倒立型移動体に搭乗し続けることができず、経過時間略5[s]において転倒していることが分かる。
【0073】
一方、上記(35)式において、上記(33)式の閉ループ系の極を−1[rad]に配置した本実施の形態に係る移動体制御装置110においては、搭乗者が経過時間略1[s]で、上記(10)式に示す状態空間を不安定とするような操作トルクが走行操作で入力された後、状態判定器141は、上記(31)式の条件が満足され不安定状態であると判定する。そして、安定制御器142が状態判定器141からのこの判定結果に基づいて、上記(35)式を用いてモータトルクを制御する。
【0074】
これにより、搭乗者の姿勢角度が0.1[rad]に維持され安定走行が継続されていることが分かる。このように、本実施の形態に係る移動体制御装置110は、従来に比して、倒立型移動体120を安定的に制御できることが分かる。さらに、状態判定器141は、上記(31)式の条件を満足したとの判定に基づいて、不安定状態である旨を搭乗者110に対して警告装置143を介して通知することもできる。これにより、倒立型移動体の安全性をより向上させることができる。
【0075】
図4は、本発明の実施の形態に係る移動体制御装置のシミュレーションにおける外乱トルクの時間変化を示す図である。図4において、破線(d)は外乱トルク推定値を示し、実線(e)は外乱トルクを示している。
【0076】
図4に示す如く、上記(13)式による外乱トルク推定値は外乱トルクに収束しているため、外乱トルク推定値の破線(d)と外乱トルクの実線(e)とは重なっている。この時、上記(14)式による操作トルク推定値(不図示)も操作トルクに収束している。したがって、本実施の形態に係る外乱トルク推定器132及び操作トルク推定器133は、夫々、高精度に外乱トルク及び操作トルクを推定できることが分かる。
【0077】
以上、本実施の形態に係る移動体制御装置110において、状態判定器141は、凹凸路面など外部環境からの入力により各駆動車輪410に生じる外乱トルクと、搭乗者による走行操作に応じて各駆動車輪410まわりに生じる操作トルクと、の組合せが倒立型移動体120をより不安定にする不安定状態を高精度に判定し、例えば、その不安定状態である旨を警告装置143により搭乗者に通知することで、その安全性を向上させることができる。さらに、安定制御器142は、倒立型移動体120が安定走行を継続できるようなモータトルクTを算出し、算出したモータトルクTに基づいて各モータ121を制御することで、倒立型移動体120の走行を安定させることができる。すなわち、倒立型移動体120の安全性を向上させることができる。
【0078】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
上記実施形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、例えば、推定装置130及び制御装置140が実行する処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
【0079】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【産業上の利用可能性】
【0080】
本発明は、例えば、自動車、電動車椅子、航空機、船舶、鉄道、重機などの分野において、倒立状態を維持しつつ人の操作に応じて移動する倒立型移動体および、配管検査ロボット、遠隔手術ロボット、遠隔介護ロボットなど人が遠隔操作するサービスロボット全般に広く適用できる。
【符号の説明】
【0081】
110 移動体制御装置
120 倒立型移動体
121 モータ
123 状態検出器
130 推定装置
131 状態推定器
132 外乱トルク推定器
133 操作トルク推定器
140 制御装置
141 状態判定器
142 安定制御器
410 駆動車輪
421 プラットホーム
422 ハンドル

【特許請求の範囲】
【請求項1】
倒立状態を維持して所望の走行を行う倒立型移動体を制御する移動体制御装置であって、
前記倒立型移動体の状態量を検出する状態検出手段と、
前記状態検出手段により検出された状態量と、前記倒立型移動体の駆動車輪に生じる外乱によるトルクの推定値である外乱トルク推定値と、搭乗者の走行操作に応じて前記駆動車輪まわりに生じるトルクの推定値である操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つを算出する状態推定手段と、
前記状態推定手段により算出された前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つと、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記外乱トルク推定値を算出する外乱トルク推定手段と、
前記状態推定手段により算出された前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つに基づいて、前記操作トルク推定値を算出する操作トルク推定手段と、
前記外乱トルク推定手段により算出された前記外乱トルク推定値と、前記操作トルク推定手段により算出された前記操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記駆動車輪の外乱トルク及び操作トルクの組合せが前記倒立型移動体を不安定にする不安定状態であるか否かを判定する状態判定手段と、
を備えることを特徴とする移動体制御装置。
【請求項2】
請求項1記載の移動体制御装置であって、
前記状態判定手段による判定結果と、前記状態推定手段により算出された前記倒立型移動体の状態量と、前記外乱トルク推定手段により算出された外乱トルク推定値と、に基づいて前記駆動車輪の駆動トルクを算出し、該算出した駆動トルクに基づいて前記駆動車輪の駆動を制御する制御手段を更に備える、ことを特徴とする移動体制御装置。
【請求項3】
請求項2記載の移動体制御装置であって、
前記制御手段は、前記状態判定手段により前記不安定状態であると判定されたとき、前記駆動車輪の駆動トルクがモーダル座標変換された前記状態量に制御ゲインを乗算した値から前記外乱トルク推定値を減算した値となるように、前記制御を行う、ことを特徴とする移動体制御装置。
【請求項4】
請求項1乃至3のうちいずれか1項記載の移動体制御装置であって、
前記状態判定手段により前記不安定状態であると判定されたとき、その旨をユーザに対して通知する警告手段を更に備える、ことを特徴とする移動体制御装置。
【請求項5】
請求項1乃至4のうちいずれか1項記載の移動体制御装置であって、
前記状態判定手段は、モーダル座標変換された前記状態量と、前記駆動車輪を駆動する駆動トルクと、前記外乱トルク推定手段により算出された外乱トルク推定値と、前記操作トルク推定手段により算出された操作トルク推定値と、に基づいた値が所定閾値よりも大きいとき、前記不安定状態であると判定する、ことを特徴とする移動体制御装置。
【請求項6】
請求項1乃至5のうちいずれか1項記載の移動体制御装置であって、
前記状態検出手段は、前記駆動車輪の回転情報、及び搭乗者が搭乗するプラットホームの姿勢角度情報のうち少なくとも一方を検出する、ことを特徴とする移動体制御装置。
【請求項7】
請求項1乃至6のうちいずれか1項記載の移動体制御装置であって、
前記状態推定手段は、前記駆動車輪の駆動トルクと、前記外乱トルク推定手段により算出された外乱トルク推定値と、前記操作トルク推定手段により算出された操作トルク推定値と、前記状態量から該状態量の推定値を減算しゲインを乗算した演算結果と、に基づいて、前記倒立型移動体及び搭乗者の状態量を算出する、ことを特徴とする移動体制御装置。
【請求項8】
請求項1乃至7のうちいずれか1項記載の移動体制御装置であって、
前記状態推定手段は、前記駆動車輪の角度、搭乗者が搭乗するプラットホームの姿勢角度、及び搭乗者の姿勢角度のうち少なくとも1つを算出する、ことを特徴とする移動体制御装置。
【請求項9】
請求項1乃至8のうちいずれか1項記載の移動体制御装置であって、
前記状態推定手段は、下記式を用いて倒立型移動体及び搭乗者の状態量を推定する、ことを特徴とする移動体制御装置。
【数1】

【請求項10】
請求項1乃至9のうちいずれか1項記載の移動体制御装置であって、
前記外乱トルク推定手段は、下記式を用いて前記外乱トルク推定値を算出する、ことを特徴とする移動体制御装置。
【数2】

【数3】

ただし、上記式において、Aは前記倒立型移動体の状態方程式のシステム行列、Lは前記状態推定手段のゲイン行列、Qは正定値行列とする。
【請求項11】
請求項1乃至10のうちいずれか1項記載の移動体制御装置であって、
前記操作トルク推定手段は、下記式を用いて前記操作トルク推定値を算出する、ことを特徴とする移動体制御装置。
【数4】

【請求項12】
請求項1乃至11のうちいずれか1項記載の移動体制御装置であって、
前記状態判定手段は、下記式のうちいずれか1つが成立したとき、前記不安定状態であると判定する、ことを特徴とする移動体制御装置。
【数5】

【請求項13】
請求項1乃至12のうちいずれか1項記載の移動体制御装置であって、
前記制御手段は、前記状態判定手段により倒立型移動体が前記不安定状態であると判定されたとき、前記駆動車輪の駆動トルクが下記式で算出されるトルクTとなるように、前記制御を行う、ことを特徴とする移動体制御装置。
【数6】

【請求項14】
倒立状態を維持して所望の走行を行う倒立型移動体を制御する移動体制御装置の制御方法であって、
前記倒立型移動体の状態量を検出するステップと、
前記検出された状態量と、前記倒立型移動体の駆動車輪に生じる外乱によるトルクの推定値である外乱トルク推定値と、搭乗者の走行操作に応じて前記駆動車輪まわりに生じるトルクの推定値である操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つを算出するステップと、
前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つと、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記外乱トルク推定値を算出するステップと、
前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つに基づいて、前記操作トルク推定値を算出するステップと、
前記算出された外乱トルク推定値と、前記算出された操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記駆動車輪の外乱トルク及び操作トルクの組合せが前記倒立型移動体を不安定にする不安定状態であるか否かを判定するステップと、
を含むことを特徴とする移動体制御装置の制御方法。
【請求項15】
請求項14記載の移動体制御装置の制御方法であって、
前記判定結果と、前記算出された倒立型移動体の状態量と、前記算出された外乱トルク推定値と、に基づいて前記駆動車輪の駆動トルクを算出し、該算出した駆動トルクに基づいて前記駆動車輪の駆動を制御するステップを更に含む、ことを特徴とする移動体制御装置の制御方法。
【請求項16】
請求項14又は15記載の移動体制御装置の制御方法であって、
前記不安定状態であると判定されたとき、その旨をユーザに対して通知するステップを更に含む、ことを特徴とする移動体制御装置の制御方法。
【請求項17】
倒立状態を維持して所望の走行を行う倒立型移動体を制御する移動体制御装置のプログラムであって、
検出された前記倒立型移動体の状態量と、前記倒立型移動体の駆動車輪に生じる外乱によるトルクの推定値である外乱トルク推定値と、搭乗者の走行操作に応じて前記駆動車輪まわりに生じるトルクの推定値である操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記倒立型移動体及び搭乗者の状態量のうち少なくとも1つを算出する処理と、
前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つと、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記外乱トルク推定値を算出する処理と、
前記算出された倒立型移動体及び搭乗者の状態量のうち少なくとも1つに基づいて、前記操作トルク推定値を算出する処理と、
前記算出された外乱トルク推定値と、前記算出された操作トルク推定値と、前記駆動車輪を駆動する駆動トルクと、に基づいて、前記駆動車輪の外乱トルク及び操作トルクの組合せが前記倒立型移動体を不安定にする不安定状態であるか否かを判定する処理と、
をコンピュータに実行させることを特徴とする移動体制御装置のプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2013−86557(P2013−86557A)
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願番号】特願2011−226152(P2011−226152)
【出願日】平成23年10月13日(2011.10.13)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【Fターム(参考)】