[第1実施形態]
本発明の第1実施形態を図1〜図10を参照して説明する。図1及び図2に示すように本実施形態の倒立振子型車両1(以降、単に車両1ということがある)は、基体2と、床面上を移動可能な第1の移動動作部3及び第2の移動動作部4と、乗員が搭乗する乗員搭乗部5とを備える。
第1の移動動作部3は、図2に示す円環状の芯体6(以下、環状芯体6という)と、この環状芯体6の円周方向(軸心周り方向)に等角度間隔で並ぶようにして該環状芯体6に装着された複数の円環状のローラ7とを備える。各ローラ7は、その回転軸心を環状芯体6の円周方向に向けて環状芯体6に外挿されている。そして、各ローラ7は、環状芯体6の軸心周りに該環状芯体6と一体に回転可能とされていると共に、該環状芯体6の横断面の中心軸(環状芯体6の軸心を中心とする円周軸)周りに回転可能とされている。
これらの環状芯体6及び複数のローラ7を有する第1の移動動作部3は、環状芯体6の軸心を床面と平行に向けた状態で、ローラ7(環状芯体6の下部に位置するローラ7)を介して床面上に接地される。この接地状態で、環状芯体6をその軸心周りに回転駆動することで、環状芯体6及び各ローラ7の全体が輪転し、それにより第1の移動動作部3が環状芯体6の軸心と直交する方向に床面上を移動するようになっている。また、上記接地状態で、各ローラ7をその回転軸心周りに回転駆動することで、第1の移動動作部3が、環状芯体6の軸心方向に移動するようになっている。
さらに、環状芯体6の回転駆動と各ローラ7の回転駆動とを行なうことで、環状芯体6の軸心と直交する方向と、環状芯体6の軸心方向とに対して傾斜した方向に第1の移動動作部3が移動するようになっている。
これにより、第1の移動動作部3は、床面上を全方向に移動することが可能となっている。以降の説明では、図1及び図2に示す如く、第1の移動動作部3の移動方向のうち、環状芯体6の軸心と直交する方向をX軸方向、該環状芯体6の軸心方向をY軸方向とし、鉛直方向をZ軸方向とする。なお、前方向をX軸の正方向、左方向をY軸の正方向、上方向をZ軸の正方向とする。
基体2には、上記第1の移動動作部3が組み付けられている。より詳しくは、基体2は、床面に接地させた第1の移動動作部3の下部を除く部分の周囲を覆うように設けられている。そして、この基体2に第1の移動動作部3の環状芯体6が、その軸心周りに回転自在に支持されている。
この場合、基体2は、第1の移動動作部3の環状芯体6の軸心を支点として、その軸心周りに(Y軸周りに)傾動自在とされていると共に、第1の移動動作部3と共に床面に対して傾くことで、第1の移動動作部3の接地部を支点として、環状芯体6の軸心と直交するX軸周りに傾動自在とされている。従って、基体2は、鉛直方向に対して2軸周りに傾動自在とされている。
また、基体2の内部には、図2に示す如く、第1の移動動作部3を移動させる駆動力を発生するアクチュエータ装置8が搭載されている。このアクチュエータ装置8は、環状芯体6を回転駆動するアクチュエータとしての電動モータ8aと、各ローラ7を回転駆動するアクチュエータとしての電動モータ8bとから構成される。そして、電動モータ8a,8bは、それぞれ図示を省略する動力伝達機構を介して環状芯体6、各ローラ7に回転駆動力を付与するようにしている。なお、該動力伝達機構は公知の構造のものでよい。
なお、第1の移動動作部3は、上記の構造と異なる構造のものであってもよい。例えば、第1の移動動作部3及びその駆動系の構造として、PCT国際公開公報WO/2008/132778、あるいは、PCT国際公開公報WO/2008/132779にて本願出願人が提案した構造のものを採用してもよい。
また、基体2には、乗員搭乗部5が組み付けられている。この乗員搭乗部5は、乗員が着座するシートにより構成されており、その基体2の上端部に固定されている。そして、乗員は、その前後方向をX軸方向、左右方向をY軸方向に向けて、乗員搭乗部5に着座することが可能となっている。また、乗員搭乗部5(シート)は、基体2に固定されているので、該基体2と一体に鉛直方向に対して傾動自在とされている。
補足すると、第1の移動動作部3及び基体2は傾動しない(ピッチ方向及びロール方向の姿勢がほぼ一定に保たれる)ように構成されていてもよい。この場合、乗員搭乗部5が基体2にボールジョイント等を介して傾動自在に支持されるように構成されていてもよい。
基体2には、さらに乗員搭乗部5に着座した乗員がその足を載せる一対の足載せ部9,9と、該乗員が把持する一対の把持部10,10とが組み付けられている。
足載せ部9,9は、基体2の両側部の下部に突設されている。なお、図1及び図2では、一方側(右側)の足載せ部9の図示は省略されている。
また、把持部10,10は、乗員搭乗部5の両側にX軸方向(前後方向)に延在して配置されたバー状のものであり、それぞれ、基体2から延設されたロッド11を介して基体2に固定されている。そして、把持部10,10のうちの一方の把持部10(図では右側の把持部10)には、操作器としてのジョイスティック12が取り付けられている。
このジョイスティック12は、前後方向(X軸方向)及び左右方向(Y軸方向)に揺動操作可能とされている。そして、該ジョイスティック12は、その前後方向(X軸方向)の揺動量及びその揺動の向き(前向き又は後向き)を示す操作信号を、車両1を前方又は後方に移動させる前進・後進指令として出力し、左右方向(Y軸方向)の揺動量及びその揺動の向き(右向き又は左向き)を示す操作信号を、車両1を左右方向に移動させる横移動指令として出力する。
第2の移動動作部4は、第1の移動動作部3とX軸方向(前後方向)に間隔を存して該第1の移動動作部3の後方に配置されている。
この第2の移動動作部4は、本実施形態では、第1の移動動作部3と同様の構造を有するものである。すなわち、第2の移動動作部4は、図3(a),(b)に示すように、円環状の芯体13(以下、環状芯体13という)と、この環状芯体13の円周方向(軸心周り方向)に等角度間隔で並ぶようにして該環状芯体13に装着された複数のローラ14とを備える。
各ローラ14は、その回転軸心を環状芯体13の円周方向に向けて環状芯体13に外挿されている。そして、各ローラ14は、環状芯体13の軸心周りに該環状芯体13と一体に回転可能とされていると共に、該環状芯体13の横断面の中心軸(環状芯体13の軸心を中心とする円周軸)周りに回転可能とされている。
これらの環状芯体13及びローラ14の全体(アッセンブリ)は、第1の移動動作部3の後方で、環状芯体13の軸心をX軸方向(前後方向)に向けた状態で、下部のローラ14を介して床面に接地される。
また、第2の移動動作部4は、環状芯体13及びローラ14の全体の上部を覆う筐体15を備えている。この筐体15に、環状芯体13が、その軸心まわりに回転し得るように支持されている。
さらに、筐体15から基体2側に延設されたアーム16が、前記第1の移動動作部3の環状芯体6の軸心周りに揺動し得るように基体2に軸支されている。これにより、第2の移動動作部4が、アーム16を介して基体2に連結されている。
そして、第2の移動動作部4は、アーム16の揺動によって前記第1の移動動作部3の環状芯体6の軸心周りに基体2に対して揺動自在とされ、これにより、第1の移動動作部3と第2の移動動作部4との両方を接地させたまま、乗員搭乗部5を基体2と共にY軸周りに傾動させることが可能となっている。
なお、アーム16を第1の移動動作部3の環状芯体6の軸心部に軸支して、第1の移動動作部3に第2の移動動作部4をアーム16を介して連結するようにしてもよい。
また、基体2には、アーム16の揺動範囲を制限する一対のストッパ17,17が設けられており、該アーム16は、ストッパ17,17の間の範囲内で揺動することが可能となっている。これにより、第1の移動動作部3の環状芯体6の軸心周りでの第2の移動動作部4の揺動範囲、ひいては、基体2及び乗員搭乗部5のX軸周りの傾動範囲が制限され、該基体2及び乗員搭乗部5が乗員の後ろ側に過大に傾くのが防止されるようになっている。
なお、第2の移動動作部4は、床面に押し付けられるようにバネにより付勢されていてもよい。
上記の如く構成された第2の移動動作部4は、第1の移動動作部3の移動に伴い、環状芯体13の回転と、ローラ14の回転とのうちの一方又は両方を従動的に行なうことで、第1の移動動作部3の移動に追従するようにして、床面上をX軸方向及びY軸方向を含む全方位に移動することが可能となっている。この場合、環状芯体13の回転によって、第2の移動動作部4がY軸方向(左右方向)に移動可能とされ、ローラ14の回転によって、X軸方向(前後方向)に移動可能とされている。
また、第2の移動動作部4の筐体15には、第2の移動動作部4のY軸方向(左右方向)の移動を制動する制動力を発生可能な制動装置18が搭載されている。この制動装置18は、図3(b)に示すように、環状芯体13と一体に回転するように該環状芯体13に連結されたブレーキディスク81と、このブレーキディスク81の周縁部を挟み込むキャリパー82とを備える。
キャリパー82には、電動モータ又は電磁ソレノイド等により構成された制動用アクチュエータ83が内蔵されており、この制動用アクチュエータ83の駆動力によりキャリパー82が駆動される(キャリパー82によるブレーキディスク81の挟み込み動作が行われる)ようになっている。
そして、制動装置18は、ブレーキディスク81の周縁部をキャリパー82により挟み込むことで、ブレーキディスク81及び環状芯体13の回転を摩擦力により制動する。これにより、制動装置18は、第2の移動動作部4のY軸方向の移動を制動する制動力を発生し得るように構成されている。
ここで、制動装置18が上記の如く発生する制動力は、環状芯体13の回転を制動するものである。そして、制動装置18が制動力を発生している状態であるか否かによらずに、各ローラ14は、それぞれの軸心周りに回転自在である。
従って、本実施形態では、第2の移動動作部4は、制動装置18が制動力を発生していない状態では、環状芯体13及びローラ14の両方または一方の回転によって、X軸方向(前後方向)及びY軸方向(左右方向)を含む全方位に、第1の移動動作部3に追従して(第1の移動動作部3とほぼ同じ移動速度で)、従動的に移動自在である。
一方、制動装置18による制動力を発生した状態では、第2の移動動作部4は、その接地部のローラ14の回転によって、X軸方向(前後方向)へは、第1の移動動作部3に追従して従動的に移動自在であるが、Y軸方向(左右方向)への移動が制動されて、第1の移動動作部3よりもY軸方向の移動速度が遅いもの(Y軸方向の移動速度がゼロとなる場合を含む)ものとなる。
補足すると、第2の移動動作部4は、第1の移動動作部3と異なる構造のもの(例えばオムニホイール)であってもよい。また、制動装置18は、上記と異なる構造のものを採用してもよい。
以上が本実施形態における車両1の機構的な構成である。
図1及び図2での図示は省略したが、本実施形態の車両1の基体2には、該車両1の動作制御(第1の移動動作部3及び第2の移動動作部4の動作制御)のための構成として、図4に示す如く、CPU、RAM、ROM等を含む電子回路ユニットにより構成された制御装置21と、鉛直方向に対する乗員搭乗部5の傾斜角度(基体2の傾斜角度)を計測するための傾斜センサ22と、車両1のヨー軸周りの角速度を計測するためのヨーレートセンサ23とが搭載されている。
制御装置21には、前記ジョイスティック12の出力と、傾斜センサ22及びヨーレートセンサ23の検出信号とが入力されるようになっている。
なお、制御装置21は、相互に通信可能な複数の電子回路ユニットにより構成されていてもよい。
上記傾斜センサ22は、本発明における傾動状態検知部に相当するものであり、加速度センサとジャイロセンサ等の角速度センサとにより構成される。そして、制御装置21は、これらの加速度センサ及び角速度センサの検出信号から、乗員搭乗部5の傾斜角度(換言すれば基体2の傾斜角度)の計測値を公知の手法を用いて取得する。その手法としては、例えば特許4181113号にて本願出願人が提案した手法を採用することができる。
なお、本実施形態における乗員搭乗部5の傾斜角度(又は基体2の傾斜角度)というのは、より詳しくは、車両1と、その乗員搭乗部5に既定の姿勢(標準姿勢)で搭乗した乗員とを併せた全体の重心が、第1の移動動作部3の接地部の直上(鉛直方向上方)に位置する状態での乗員搭乗部5(又は基体2)の姿勢を基準(ゼロ)とする傾斜角度(X軸周り方向の傾斜角度とY軸周り方向の傾斜角度との組)である。
また、ヨーレートセンサ23は、ジャイロセンサ等の角速度センサにより構成される。そして、制御装置21は、その検出信号に基づいて、車両1のヨー軸周りの角速度の計測値を取得する。
また、制御装置21は、実装されるプログラム等により実現される機能(ソフトウェアにより実現される機能)又はハードウェアにより構成される機能として、上記の如く計測値を取得する機能の他、アクチュエータ装置8を構成する電動モータ8a,8bを制御することで第1の移動動作部3の移動動作を制御する第1制御処理部24と、制動装置18の制動用アクチュエータ83を制御することで第2の移動動作部4の移動動作を制御する第2制御処理部25と備える。第1制御処理部24、第2制御処理部25は、それぞれ、本発明における第1の制御部、第2の制御部に相当するものである。
第1制御処理部24は、後述する演算処理を実行することで、第1の移動動作部3の移動速度(詳しくは、X軸方向の並進速度とY軸方向の並進速度との組)の目標値である第1目標速度を逐次算出し、第1の移動動作部3の実際の移動速度を、第1目標速度に一致させるように電動モータ8a,8bの回転速度を制御する。
この場合、電動モータ8a,8bのそれぞれの回転速度と、第1の移動動作部3の実際の移動速度との間の関係はあらかじめ定められており、第1の移動動作部3の第1目標速度に応じて、各電動モータ8a,8bの回転速度の目標値が規定されるようになっている。そして、電動モータ8a,8bの回転速度を第1目標速度に応じて規定される目標値にフィードバック制御することで、第1の移動動作部3の実際の移動速度が、第1目標速度に制御される。
また、第2制御処理部25は、後述する演算処理を実行することで、制動装置18の動作を制御するための操作量(制御入力)を逐次決定し、その操作量に応じて、制動装置18の制動力を制御する。
次に、上記第1制御処理部24及び第2制御処理部25の処理をさらに詳細に説明する。まず、図5〜図8を参照して第1制御処理部24の処理を説明する。
第1制御処理部24は、図5に示すように、その主要な機能部として、ジョイスティック12から入力される指令(旋回指令及び前進・後進指令)を車両1のX軸方向(前後方向)及びY軸方向(左右方向)の速度指令に変換する操作指令変換部31と、車両1とその乗員搭乗部5に搭乗した乗員とを併せた全体の重心(以降、車両系全体重心という)の目標速度を決定する重心目標速度決定部32と、車両系全体重心の速度を推定する重心速度推定部33と、推定した車両系全体重心の速度を目標速度に追従させつつ、乗員搭乗部5の姿勢(基体2の姿勢)を制御するように第1の移動動作部3の移動速度の目標値を決定する姿勢制御演算部34とを備える。そして、第1制御処理部24は、これらの各機能部の処理を、制御装置21の所定の演算処理周期で実行する。
なお、本実施形態では、車両系全体重心というのは、車両1の代表点の一例としての意味を持つものである。従って、車両系全体重心の速度というのは、車両1の代表点の移動速度を意味するものである。
ここで、第1制御処理部24の各機能部の処理を具体的に説明する前に、その処理の基礎となる事項を説明しておく。車両系全体重心の動力学的な挙動(詳しくは、Y軸方向から見た挙動と、X軸方向から見た挙動)は、近似的に、図6に示すような倒立振子モデルの挙動により表現される。第1制御処理部24の処理のアルゴリズムは、この挙動を基礎として構築されている。
なお、図6の参照符号を含めて、以降の説明では、添え字“_x”はY軸方向から見た場合の変数等の参照符号を意味し、添え字“_y”はX軸方向から見た場合の変数等の参照符号を意味する。また、図6では、Y軸方向から見た場合の倒立振子モデルと、X軸方向から見た場合の倒立振子モデルとを併せて図示するために、Y軸方向から見た場合の変数の参照符号に括弧を付さないものとし、X軸方向から見た場合の変数の参照符号に括弧を付している。
Y軸方向から見た車両系全体重心の挙動を表す倒立振子モデルは、Y軸方向と平行な回転軸心を有して床面上を輪転自在な仮想的な車輪61_x(以降、仮想車輪61_xという)と、該仮想車輪61_xの回転中心から延設されて、該仮想車輪61_xの回転軸周りに(Y軸周り方向に)揺動自在なロッド62_xと、このロッド62_xの先端部(上端部)である基準部Ps_xに連結された質点Ga_xとを備える。
この倒立振子モデルでは、質点Ga_xの運動が、Y軸方向から見た車両系全体重心の運動に相当し、鉛直方向に対するロッド62_xの傾斜角度θb_x(Y軸周り方向の傾斜角度)が、乗員搭乗部5(又は基体2)のY軸周り方向の傾斜角度に一致するものとされる。また、第1の移動動作部3のX軸方向の並進運動が、仮想車輪61_xの輪転によるX軸方向の並進運動に相当するものとされる。
そして、仮想車輪61_xの半径r_xと、基準部Ps_x及び質点Ga_xの床面からの高さh_xとは、あらかじめ設定された既定値(一定値)とされる。なおr_xは、換言すれば、乗員搭乗部5(又は基体2)のY軸周り方向の傾動中心の床面からの高さに相当する。このr_xは、本実施形態では、第1の移動動作部3の環状芯体6の中心軸と接地面との距離に相当する。
同様に、X軸方向から見た車両系全体重心の挙動を表す倒立振子モデルは、X軸方向と平行な回転軸心を有して床面上を輪転自在な仮想的な車輪61_y(以降、仮想車輪61_yという)と、該仮想車輪61_yの回転中心から延設されて、該仮想車輪61_yの回転軸周りに(X軸周り方向に)揺動自在なロッド62_yと、このロッド62_yの先端部(上端部)である基準部Ps_yに連結された質点Ga_yとを備える。
この倒立振子モデルでは、質点Ga_yの運動が、X軸方向から見た車両系全体重心の運動に相当し、鉛直方向に対するロッド62_yの傾斜角度θb_y(X軸周り方向の傾斜角度)が、乗員搭乗部5(又は基体2)のX軸周り方向の傾斜角度に一致するものとされる。また、第1の移動動作部3のY軸方向の並進運動が、仮想車輪61_yの輪転によるY軸方向の並進運動に相当するものとされる。
そして、仮想車輪61_yの半径r_yと、基準部Ps_y及び質点Ga_yの床面からの高さh_yとは、あらかじめ設定された既定値(一定値)とされる。なおr_yは、換言すれば、乗員搭乗部5(又は基体2)のX軸周り方向の傾動中心の床面からの高さに相当する。このr_yは、本実施形態では、第1の移動動作部3のローラ7の半径に相当する。また、X軸方向で見た基準部Ps_y及び質点Ga_yの床面からの高さh_yは、Y軸方向で見た基準部Ps_x及び質点Ga_xの床面からの高さh_xと同じである。そこで、以降、h_x=h_y=hとおく。
ここで、Y軸方向から見た場合の上記基準部Ps_xと質点Ga_xとの位置関係ついて補足すると、基準部Ps_xの位置は、乗員搭乗部5に搭乗(着座)した乗員が、該乗員搭乗部5に対して不動であると仮定した場合における車両系全体重心の位置に相当している。従って、この場合には、質点Ga_xの位置は、基準部Ps_xの位置に一致する。このことは、X軸方向から見た場合の上記基準部Ps_yと質点Ga_yとの位置関係ついても同様である。
ただし、実際には、乗員搭乗部5に搭乗した乗員が、その上体等を乗員搭乗部5(又は基体2)に対して動かすことで、実際の車両系全体重心のX軸方向の位置及びY軸方向の位置は、一般には、それぞれ基準部Ps_x,Ps_yの位置から横方向にずれることとなる。このため、図6では、質点Ga_x,Ga_yの位置をそれぞれ、基準部Ps_x,Ps_yの位置からずらした状態で図示している。
上記のような倒立振子モデルで表現される車両系全体重心の挙動は、次式(1a)、(1b)、(2a)、(2b)により表現される。この場合、式(1a),(1b)は、Y軸方向で見た挙動、式(2a),(2b)は、X軸方向で見た挙動を表している。
Vb_x=Vw1_x+h・ωb_x ……(1a)
dVb_x/dt=(g/h)・(θb_x・(h−r_x)+Ofst_x)+ωz・Vb_y ……(1b)
Vb_y=Vw1_y+h_y・ωb_y ……(2a)
dVb_y/dt=(g/h)・(θb_y・(h−r_y)+Ofst_y)−ωz・Vb_x ……(2b)
ここで、Vb_xは、車両系全体重心のX軸方向の速度(並進速度)、Vw1_xは、仮想車輪61_xのX軸方向の移動速度(並進速度)、θb_xは乗員搭乗部5(又は基体2)のY軸周り方向の傾斜角度、ωb_xはθb_xの時間的変化率(=dθb_x/dt)、Ofst_xは車両系全体重心のX軸方向の位置(質点Ga_xのX軸方向の位置)の、前記基準部Ps_xの位置からのX軸方向のずれ量、Vb_yは、車両系全体重心のY軸方向の速度(並進速度)、Vw1_yは、仮想車輪61_yのY軸方向の移動速度(並進速度)θb_yは乗員搭乗部5(又は基体2)のX軸周り方向の傾斜角度、ωb_yはθb_yの時間的変化率(=dθb_y/dt)、Ofst_yは車両系全体重心のY軸方向の位置(質点Ga_yのY軸方向の位置)の、前記基準部Ps_yの位置からのY軸方向のずれ量である。また、ωzは車両1の旋回時のヨーレート(ヨー軸周り方向の角速度)、gは重力加速度定数である。なお、θb_x、ωb_xの正方向は、車両系全体重心がX軸の正方向(前向き)に傾く方向、θb_y、ωb_yの正方向は、車両系全体重心がY軸の正方向(左向き)に傾く方向である。また、ωzの正方向は、車両1を上方から見た場合に、反時計周り方向である。
なお、Vb_x、Vb_yはそれぞれ、前記基準部Ps_xのX軸方向の移動速度、前記基準部Ps_yのY軸方向の移動速度に一致する。
式(1a)の右辺第2項(=h・ωb_x)は、乗員搭乗部5のY軸周り方向の傾動によって生じる基準部Ps_xのX軸方向の並進速度成分、式(2a)右辺第2項(=h・ωb_y)は、乗員搭乗部5のX軸周り方向の傾動によって生じる基準部Ps_yのY軸方向の並進速度成分である。
補足すると、式(1a)におけるVw1_xは、詳しくは、ロッド62_xに対する(換言すれば乗員搭乗部5又は基体2に対する)相対的な仮想車輪61_xの周速度である。このため、Vw1_xには、床面に対する仮想車輪61_xの接地点のX軸方向の移動速度(床面に対する第1の移動動作部3の接地点のX軸方向の移動速度)の加えて、ロッド62_xの傾動に伴う速度成分(=r_x・ωb_x)が含まれている。このことは、式(2a)におけるVw1_yについても同様である。
また、式(1b)の右辺の第1項は、車両系全体重心のX軸方向の位置(質点Ga_xのX軸方向の位置)の、仮想車輪61_xの接地部(Y軸方向から見た第1の移動動作部3の接地部)の鉛直上方位置からのずれ量(=θb_x・(h−r_x)+Ofst_x)に応じて仮想車輪61_xの接地部に作用する床反力(図6のF)のX軸方向成分(図6のF_x)によって車両系全体重心に発生するX軸方向の加速度成分、式(1b)の右辺の第2項は、ωzのヨーレートでの旋回時に車両1に作用する遠心力によって発生するX軸方向の加速度成分である。
同様に、式(2b)の右辺の第1項は、車両系全体重心のY軸方向の位置(質点Ga_yのY軸方向の位置)の、仮想車輪61_yの接地部(X軸方向から見た第1の移動動作部3の接地部)の鉛直上方位置からのずれ量(=θb_y・(h−r_y)+Ofst_y)に応じて仮想車輪61_yの接地部に作用する床反力(図6のF)のY軸方向成分(図6のF_y)によって車両系全体重心に発生するY軸方向の加速度成分、式(2b)の右辺の第2項は、ωzのヨーレートでの旋回時に車両1に作用する遠心力によって発生するY軸方向の加速度成分である。
上記の如く、式(1a)、(1b)により表現される挙動(X軸方向で見た挙動)は、ブロック線図で表現すると、図7に示すように表される。図中の1/sは積分演算を表している。
そして、図7における参照符号Aを付した演算部の処理が、式(1a)の関係式に該当しており、参照符号Bを付した演算部の処理が、式(1b)の関係式に該当している。
なお、図7中のh・θb_xは、近似的には、図6に示したDiff_xに一致する。
一方、式(2a)、(2b)により表現される挙動(Y軸方向で見た挙動)を表現するブロック線図は、図7中の添え字“_x”を“_y”に置き換え、参照符号Cを付した加算器への入力の一つである図中下側の加速度成分(遠心力によって発生する加速度成分)の符号“+”を“−”に置き換えることによって得られる。
本実施形態では、第1制御処理部24の処理のアルゴリズムは、上記の如く車両系全体重心の基準部Ps_x,Ps_yからのずれ量と、遠心力とを考慮した車両系全体重心の挙動モデル(倒立振子モデル)に基づいて構築されている。
以上を前提として、第1制御処理部24の処理をより具体的に説明する。なお、以降の説明では、Y軸方向から見た挙動に関する変数の値と、X軸方向から見た挙動に関する変数の値との組を添え字“_xy”を付加して表記する場合がある。
図5を参照して、第1制御処理部24は、制御装置21の各演算処理周期において、まず、操作指令変換部31の処理と、前記重心速度推定部33の処理とを実行する。
操作指令変換部31は、ジョイスティック12から与えられる前進・後進指令(ジョイスティック12のX軸方向での揺動量とその揺動の向きを示す操作信号)又は横移動指令(ジョイスティック12のY軸方向での揺動量とその揺動の向きを示す操作信号)に応じて第1の移動動作部3の移動速度(並進速度)の基本指令値である基本速度指令Vjs_xyを決定する。
この場合、基本速度指令Vjs_xyのうち、X軸方向の基本速度指令Vjs_xは、前進・後
進指令に応じて決定される。具体的には、前進・後進指令により示されるジョイスティック12の揺動量が、前方側への揺動量である場合には、X軸方向の基本速度指令Vjs_xを車両1の前進方向への速度指令とし、ジョイスティック12の揺動量が、後方側への揺動量である場合には、X軸方向の基本速度指令Vjs_xを車両1の後進方向への速度指令とする。また、この場合、X軸方向の基本速度指令Vjs_xの大きさは、ジョイスティック12の前方側又は後方側への揺動量が大きいほど、既定の上限値以下で、大きくなるように決定される。
なお、ジョイスティック12の前方側又は後方側への揺動量が十分に微小なものとなる所定の範囲を不感帯域として、その不感帯域内の揺動量では、X軸方向の基本速度指令Vjs_xをゼロに設定するようにしてもよい。
また、基本速度指令Vjs_xyのうち、Y軸方向の基本速度指令Vjs_yは、横移動指令に応じて決定される。具体的には、横移動指令により示されるジョイスティック12の揺動量が、右向きへの揺動量である場合には、Y軸方向の基本速度指令Vjs_yを車両1の右向きへの速度指令とし、ジョイスティック12の揺動量が、左向きへの揺動量である場合には、Y軸方向の基本速度指令Vjs_yを車両1の左向きへの速度指令とする。この場合、Y軸方向の基本速度指令Vjs_yの大きさは、ジョイスティック12の右向き又は左向きへの揺動量が大きいほど、既定の上限値以下で、大きくなるように決定される。
なお、基本速度指令Vjs_yの大きさは、ジョイスティック12の右向き又は左向きへの揺動量が十分に微小なものとなる所定の範囲を不感帯域として、その不感帯域内の揺動量では、Y軸方向の基本速度指令Vjs_yをゼロに設定するようにしてもよい。
また、ジョイスティック12が前後方向(X軸方向)及びY軸方向(左右方向)の両方に操作されている場合には、Y軸方向の基本速度指令Vjs_yの大きさを、ジョイスティック12の前後方向の揺動量又はX軸方向の基本速度指令Vjs_xに応じて変化させるようにしてもよい。
前記重心速度推定部33は、前記倒立振子モデルにおける前記式(1a),(2a)に表される幾何学的な(運動学的な)関係式に基づいて、車両系全体重心の速度の推定値Vb_estm1_xyを算出する。
具体的には、図5のブロック図で示す如く、第1の移動動作部3の実際の並進速度Vw1_act_xyの値と、乗員搭乗部5の傾斜角度θb_xyの実際の時間的変化率(傾斜角速度)ωb_act_xyに、車両系全体重心の高さhを乗じてなる値とを加え合せることにより、車両系全体重心の速度の推定値Vb_estm1_xyを算出する。
すなわち、車両系全体重心のX軸方向の速度の推定値Vb_estm1_xとY軸方向の速度の推定値Vb_estm1_yとがそれぞれ、次式(3a),(3b)により算出される。
Vb_estm1_x=Vw1_act_x+h・ωb_act_x ……(3a)
Vb_estm1_y=Vw1_act_y+h・ωb_act_y ……(3b)
ただし、車両系全体重心の位置の基準部Ps_xyの位置からの前記ずれ量Ofst_xy(以降、重心ずれ量Ofst_xyという)の時間的変化率は、Vb_estm1_xyに比べ十分に小さく無視できるものとした。
この場合、上記演算におけるVw1_act_x,Vw1_act_yの値としては、本実施形態では、前回の演算処理周期で姿勢制御演算部34により決定された第1の移動動作部3の移動速度の目標値Vw1_cmd_x,Vw1_cmd_y(前回値)が用いられる。
ただし、例えば、電動モータ8a,8bのそれぞれの回転速度をロータリエンコーダ等の回転速度センサにより検出し、それらの検出値から推定したVw1_act_x,Vw1_act_yの最新値(換言すれば、Vw1_act_x,Vw1_act_yの計測値の最新値)を式(3a),(3b)の演算に用いるようにしてもよい。
また、ωb_act_x,ωb_act_yの値としては、本実施形態では、前記傾斜センサ22の検出信号に基づく乗員搭乗部5の傾斜角度θbの計測値の時間的変化率の最新値(換言すれば、ωb_act_x,ωb_act_yの計測値の最新値)が用いられる。
第1制御処理部24は上記の如く操作指令変換部31及び重心速度推定部33の処理を実行した後、次に、図5に示す重心ずれ推定部35aの処理を実行することで、前記重心ずれ量Ofst_xyの推定値である重心ずれ量推定値Ofst_estm_xyを決定する。
この重心ずれ推定部35aの処理は、図8のブロック線図により示される処理である。なお、図8は、重心ずれ量推定値Ofst_estm_xyのうちのX軸方向の重心ずれ量推定値Ofst_estm_xの決定処理を代表的に表している。また、以降の説明では、重心速度推定部33により算出された車両系全体重心の速度の推定値Vb_estm1_x,Vb_estm1_yをそれぞれ第1推定値Vb_estm1_x,Vb_estm1_yということがある。
図8の処理を具体的に説明すると、重心ずれ推定部35aは、傾斜センサ22の検出信号から得られた乗員搭乗部5のY軸周り方向の実際の傾斜角度θb_act_xの計測値(最新値)と、ヨーレートセンサ23の検出信号から得られた車両1の実際のヨーレートωz_actの計測値(最新値)と、重心速度推定部33により算出された車両系全体重心のY軸方向の速度の第1推定値Vb_estm1_y(最新値)と、前回の演算処理周期で決定したX軸方向の重心ずれ量推定値Ofst_estm_x(前回値)とを用いて、前記式(1b)の右辺の演算処理を演算部35a1で実行することにより、車両系全体重心のX軸方向の並進加速度の推定値DVb_estm_xを算出する。
さらに重心ずれ推定部35aは、車両系全体重心のX軸方向の並進加速度の推定値DVb_estm_xを積分する処理を演算部35a2で実行することにより、車両系全体重心のX軸方向の速度の第2推定値Vb_estm2_xを算出する。
次いで、重心ずれ推定部35aは、車両系全体重心のX軸方向の速度の第2推定値Vb_estm2_x(最新値)と、第1推定値Vb_estm1_x(最新値)との偏差を算出する処理を演算部35a3で実行する。
さらに、重心ずれ推定部35aは、この偏差に所定値のゲイン(−Kp)を乗じる処理を演算部35a4で実行することにより、X軸方向の重心ずれ量推定値Ofst_estm_xの最新値を決定する。
Y軸方向の重心ずれ量推定値Ofst_estm_yの決定処理も上記と同様に実行される。具体的には、この決定処理を示すブロック線図は、図8中の添え字“_x”と“_y”とを入れ替え、加算器35a5への入力の一つである図中右側の加速度成分(遠心力によって発生する加速度成分)の符号“+”を“−”に置き換えることによって得られる。
このような重心ずれ推定部35aの処理によって、重心ずれ量推定値Ofst_estm_xyを逐次更新しつつ決定することによって、Ofst_estm_xyを実際の値に収束させるように決定することができる。
第1制御処理部24は、次に、図5に示す重心ずれ影響量算出部35bの処理を実行することによって、重心ずれ影響量Vofs_xyを算出する。
重心ずれ影響量Vofs_xyは、後述する姿勢制御演算部34において、車両系全体重心の位置が倒立振子モデルにおける前記基準部Ps_xyの位置からずれることを考慮せずにフィードバック制御を行った場合の車両系全体重心の目標速度に対する実際の重心速度のずれを表す。
具体的には、この重心ずれ影響量算出部35bは、新たに決定された重心ずれ量推定値Ofst_estm_xyの各成分に、(Kth_xy/(h-r_xy))/Kvb_xyという値を乗じることにより、前記重心ずれ影響量Vofs_xyを算出する。
なお、Kth_xyは、後述する姿勢制御演算部34の処理において、乗員搭乗部5の傾斜角度をゼロ(目標傾斜角度)に近づけるように機能する操作量成分を決定するためのゲイン値である。また、Kvb_xyは、後述する姿勢制御演算部34の処理において、車両系全体重心の目標速度Vb_cmd_xyと該車両系全体重心の速度の第1推定値Vb_estm1_xyとの偏差をゼロに近づけるように機能する操作量成分を決定するためのゲイン値である。
第1制御処理部24は、次に、図5に示す重心目標速度決定部32の処理を実行することによって、前記操作指令変換部31により決定された基本速度指令Vjs_xyと、前記重心ずれ影響量算出部35bにより決定された重心ずれ影響量Vofs_xyとに基づいて、制限後重心目標速度Vb_cmd_xyを算出する。
重心目標速度決定部32は、まず、図5に示す処理部32cの処理を実行する。この処理部32cは、重心ずれ影響量Vofs_xyの値に関する不感帯処理とリミット処理とを実行することで、車両系全体重心の速度の目標値のうちの重心ずれに応じた成分としての目標重心速度加算量Vb_cmd_by_ofs_xyを決定する。
具体的には、本実施形態では、重心目標速度決定部32は、X軸方向の重心ずれ影響量Vofs_xの大きさがゼロ近辺の所定の範囲である不感帯域内の値(比較的ゼロに近い値)である場合には、X軸方向の目標重心速度加算量Vb_cmd_by_ofs_xをゼロにする。
また、重心目標速度決定部32は、X軸方向の重心ずれ影響量Vofs_xの大きさが不感帯域内から逸脱した値である場合には、X軸方向の目標重心速度加算量Vb_cmd_by_ofs_xを、Vofs_xと同極性で、その大きさが、Vofs_xの大きさの増加に伴い大きくなるように決定する。ただし、目標重心速度加算量Vb_cmd_by_ofs_xの値は、所定の上限値(>0)と下限値(≦0)との間の範囲内に制限される。
Y軸方向の目標重心速度加算量Vb_cmd_by_ofs_yの決定処理も上記と同様である。
次いで、重心目標速度決定部32は、前記操作指令変換部31により決定された基本速度指令Vjs_xyの各成分に目標重心速度加算量Vb_cmd_by_ofs_xyの各成分を加え合わせてなる目標速度V1_xyを決定する処理を図5に示す処理部32dで実行する。すなわち、V1_x=Vjs_x+Vb_cmd_by_ofs_x、V1_y=Vjs_y+Vb_cmd_by_ofs_yという処理によって、V1_xy(V1_xとV1_yとの組)を決定する。
さらに、重心目標速度決定部32は、処理部32eの処理を実行する。この処理部32eでは、第1の移動動作部3のアクチュエータ装置8としての電動モータ8a,8bのそれぞれの回転速度を、所定の許容範囲から逸脱させることのないようにするために、目標速度V1_xとV1_yとの組み合わせを制限してなる車両系全体重心の目標速度としての制限後重心目標速度Vb_cmd_xy(Vb_cmd_x,Vb_cmd_yの組)を決定するリミット処理が実行される。
この場合、処理部32dで求められた目標速度V1_x,V1_yの組が、目標速度V1_xの値を縦軸、目標速度V1_yの値を横軸とする座標系上で所定の領域(例えば8角形状の領域)内に在る場合には、その目標速度V1_xyがそのまま制限後重心目標速度Vb_cmd_xyとして決定される。
また、処理部32dで求められた目標速度V1_x,V1_yの組が、上記座標系上の所定の領域から逸脱している場合には、該所定の領域の境界上の組に制限したものが、制限後重心目標速度Vb_cmd_xyとして決定される。
以上のごとく、前記基本速度指令Vjs_xyと、前記重心ずれ影響量Vofs_xy(または、重心ずれ量)とに基づいて、重心目標速度Vb_cmd_xyが決定されるので、乗員は、操作器の操作(ジョイスティック12の操作)と、乗員の身体の姿勢の変化(体重移動)によって、車両1を操縦することができる。
以上の如く重心目標速度決定部32の処理を実行した後、第1制御処理部24は、次に、姿勢制御演算部34の処理を実行する。この姿勢制御演算部34は、図5のブロック線図で示す処理によって、第1の移動動作部3の移動速度(並進速度)の目標値である第1目標速度Vw1_cmd_xyを決定する。
より詳しくは、姿勢制御演算部34は、まず、前記制限後重心目標速度Vb_cmd_xyの各成分から、重心ずれ影響量Vofs_xyの各成分を減じる処理を演算部34bで実行することにより重心ずれ補償後目標速度Vb_cmpn_cmd_xy(最新値)を決定する。
次いで、姿勢制御演算部34は、上記演算部34bと、積分演算を行う積分演算部34aとを除く演算部の処理によって、第1の移動動作部3の接地点の並進加速度の目標値である目標並進加速度DVw1_cmd_xyのうちのX軸方向の目標並進加速度DVw1_cmd_xと、Y軸方向の目標並進加速度DVw1_cmd_yとをそれぞれ次式(4a),(4b)の演算により算出する。
DVw1_cmd_x=Kvb_x・(Vb_cmpn_cmd_x−Vb_estm1_x)
−Kth_x・θb_act_x−Kw_x・ωb_act_x ……(4a)
DVw1_cmd_y=Kvb_y・(Vb_cmpn_cmd_y−Vb_estm1_y)
−Kth_y・θb_act_y−Kw_y・ωb_act_y ……(4b)
式(4a),(4b)におけるKvb_xy、Kth_xy、Kw_xyはあらかじめ設定された所定のゲイン値である。
また、式(4a)の右辺の第1項は、車両系全体重心のX軸方向の重心ずれ補償後目標速度Vb_cmpn_cmd_x(最新値)と第1推定値Vb_estm1_x(最新値)との偏差に応じたフィードバック操作量成分、第2項は、乗員搭乗部5のY軸周り方向の実際の傾斜角度θb_act_xの計測値(最新値)に応じたフィードバック操作量成分、第3項は、乗員搭乗部5のY軸周り方向の実際の傾斜角速度ωb_act_xの計測値(最新値)応じたフィードバック操作量成分である。そして、X軸方向の目標並進加速度DVw1_cmd_xは、これらのフィードバック操作量成分の合成操作量として算出される。
同様に、式(4b)の右辺の第1項は、車両系全体重心のY軸方向の重心ずれ補償後目標速度Vb_cmpn_cmd_y(最新値)と第1推定値Vb_estm1_y(最新値)との偏差に応じたフィードバック操作量成分、第2項は、乗員搭乗部5のX軸周り方向の実際の傾斜角度θb_act_yの計測値(最新値)に応じたフィードバック操作量成分、第3項は、乗員搭乗部5のX軸周り方向の実際の傾斜角速度ωb_act_yの計測値(最新値)に応じたフィードバック操作量成分である。そして、Y軸方向の目標並進加速度DVw1_cmd_yは、これらのフィードバック操作量成分の合成操作量として算出される。
次いで、姿勢制御演算部34は、積分演算部34aによって、目標並進加速度DVw1_cmd_xyの各成分を積分することによって、第1の移動動作部3の第1目標速度Vw1_cmd_xy(最新値)を決定する。
そして、第1制御処理部24は、上記の如く決定した第1目標速度Vw1_cmd_xyにしたがって第1の移動動作部3のアクチュエータ装置8としての電動モータ8a,8bを制御する。より詳しくは、第1制御処理部24は、第1目標速度Vw1_cmd_xyにより規定される各電動モータ8a,8bの回転速度の目標値に、実際の回転速度(計測値)を追従させるように、フィードバック制御処理により各電動モータ8a,8bの電流指令値を決定し、この電流指令値に従って、各電動モータ8a,8bの通電を行なう。
以上の処理により、前記制限後重心目標速度Vb_cmd_xyが一定値であって、車両1の運動が整定し、車両1が一定速度で直進している状態においては、車両系全体重心は、第1の移動動作部3の接地点の真上に存在する。この状態では、乗員搭乗部5の実際の傾斜角度θb_act_xyは、式(1b)、(2b)に基づいて、−Ofst_xy/(h−r_xy)となる。また、乗員搭乗部5の実際の傾斜角速度ωb_act_xyはゼロ、目標並進加速度DVw1_cmd_xyはゼロとなる。このことと、図5のブロック線図から、Vb_estm1_xyとVb_cmd_xyとが一致することが導き出される。
すなわち、第1の移動動作部3の第1目標速度Vw1_cmd_xyは、基本的には、車両系全体重心の制限後重心目標速度Vb_cmd_xyと第1推定値Vb_estm1_xyとの偏差をゼロに収束させるように決定される。
また、車両系全体重心の位置が、倒立振子モデルにおける前記基準部Ps_xyの位置からずれることの影響を補償しつつ、前記処理部32eの処理によって、第1の移動動作部3のアクチュエータ装置8としての電動モータ8a,8bのそれぞれの回転速度が、所定の許容範囲から逸脱することのないように制御される。
補足すると、前記式(4a),(4b)において、Vb_cmpn_cmd_x=Vb_cmd_x−Vofs_x=Vb_cmd_x−(Kth_x/h−r_x)・(1/Kvb_x)・Ofst_estm_x、及び、Vb_cmpn_cmd_y=Vb_cmd_y−Vofs_y=Vb_cmd_y−(Kth_y/h−r_y)・(1/Kvb_y)・Ofst_estm_yであるから、式(4a),(4b)はそれぞれ、次式(4a)’、(4b)’に書き換えることができる。
DVw1_cmd_x=Kvb_x・(Vb_cmd_x−Vb_estm1_x)
−Kth_x・(Ofst_estm_x/(h−r_x)+θb_act_x)
−Kw_x・ωb_act_x ……(4a)’
DVw1_cmd_y=Kvb_y・(Vb_cmd_y−Vb_estm1_y)
−Kth_y・(Ofst_estm_y/(h−r_y)+θb_act_y)
−Kw_y・ωb_act_y ……(4b)’
この場合、式(4a)’、(4b)’の右辺第2項は、X軸方向及びY軸方向における実際の車両系全体重心の位置が、第1の移動動作部3の接地部の直上の位置になるようにするためのフィードバック操作量成分としての意味を持つ。
以上が、本実施形態における第1制御処理部24の処理の詳細である。
次に、前記第2制御処理部25の処理を図9を参照して説明する。第2制御処理部25は、その処理を概略的に言えば、車両系全体重心等の車両1の代表点もしくは第1の移動動作部3のY軸方向(乗員の左右方向)における実際の運動状態もしくは目標の運動状態、又は該運動状態に関する乗員の動作状態に基づいて、車両1を旋回させることの要求(以降、旋回要求という)の有無、あるいは該旋回要求の度合いを判断する。
本実施形態では、旋回要求の有無、あるいは該旋回要求の度合いを判断する指標として、前記重心速度推定部33で算出される車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yが用いられる。なお、Vb_estm1_yは、前記基準部Ps_yのY軸方向の移動速度に一致するので、乗員搭乗部5(又は基体2)に対して固定された代表点のY軸方向の移動速度の観測値としての意味を持つものである。
そして、第2制御処理部25は、旋回要求が有ると判断される場合には、車両1の旋回を行なわせるために、制動装置18の制動力を制御するための操作量(制御入力)を決定する。本実施形態では、その操作量として、第1の移動動作部3に対する第2の移動動作部4のY軸方向の相対移動速度の目標値ΔVw2_cmd_yが決定される。
このような第2制御処理部25の処理は、具体的には次のように行なわれる。すなわち、図9を参照して、第2制御処理部25は、まず、処理部41の処理を実行する。処理部41には、重心速度推定部33で算出される車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_y(最新値)が入力される。そして、処理部41は、Vb_estm1_yに応じて、不感帯処理後速度Vw1a_yを決定する。
ここで、車両1の乗員が、車両1を右側又は左側に旋回させようとする場合には、通常、乗員は、乗員は自身の上体を、右側又は左側に傾けることで、自身の重心を車両1の右側又は左側にずらすようにする。このとき、前記第1制御処理部24の制御処理によって決定される第1の移動動作部3の左右方向の第1目標速度Vw1_cmd_yは、基本的には、右向き又は左向きの移動速度となる。
ただし、乗員が車両1を旋回させることを意図していない場合であっても、乗員の上体のふらつきによって、乗員自身の重心が右側又は左側に多少ずれる場合もある。
そこで、処理部41は、図9中に示すグラフの特性で、不感帯処理後速度Vw1a_yをVb_estm1_yに応じて決定する。具体的には、Vb_estm1_yの絶対値が比較的小さく、Vb_estm1_yが、ゼロを中心とする所定範囲Δa内の値である場合(Vb_estm1_yの絶対値があらかじめ定めた所定値以下である場合)には、処理部41は、旋回要求が無いものとみなして、Vw1a_yをゼロとする。
また、Vb_estm1_yの絶対値が比較的大きいものとなっており、Vb_estm1_yが、所定範囲Δa外の値である場合(Vb_estm1_yの絶対値があらかじめ定めた所定値よりも大きい場合)には、処理部41は、旋回要求が有るものとみなして、Vw1a_yをゼロでない値に設定する。
具体的には、処理部41は、Vw1a_yの絶対値が、既定の上限値以下で、Vb_estm1_yの絶対値の増加に伴い増加していくように、Vw1a_yをVb_estm1_yに応じて決定する。この場合、Vw1a_yの極性(向き)は、Vb_estm1_yと同じとされる。後述するように、旋回中心を望ましい位置に設定するためには、Vb_estm1_yの絶対値の増加に対するVw1a_yの絶対値の増加率は1が好ましい。すなわち、図9のグラフにおける不感帯と飽和領域とを除く領域では傾きは1が好ましい。
なお、図9において、処理部41の入力側の括弧付きの参照符号は、後述の変形態様に関するものである。
次いで、第2制御処理部25は、処理部42の処理を実行する。この処理部42は、Vw1a_yを、第1の移動動作部3の接地部と旋回中心とのX軸方向の距離L3で除算することによって、車両1の旋回角速度(ヨー軸周り方向の角速度)の目標値である目標旋回角速度ωz_cmd_gcを決定する。この場合、処理部42は、上記距離L3を、車両1の代表点としての車両系全体重心のX軸方向の実際の移動速度の推定値Vb_estm1_x(最新値)に応じて設定する。
なお、上記旋回中心は、より詳しくは、第1の移動動作部3と一体に床面上を並進移動する座標系で見た車両1の全体のヨー軸周り方向の回転中心を意味する。
本実施形態では、車両1の旋回は、第1の移動動作部3の接地部の後方側(ひいては、乗員搭乗部5に搭乗した乗員の後方側)の床面上の点を旋回中心として、車両1がヨー軸まわり方向に旋回するように行なわれる。そして、その旋回中心と第1の移動動作部3の接地部との間のX軸方向の距離L3は、Vb_estm1_xがゼロである場合には、旋回中心が第2の移動動作部4の接地部近辺の位置になるように設定される。例えば、L3は、第1の移動動作部3の接地部と第2の移動動作部4の接地部との間の距離に一致もしくはほぼ一致するように設定される。
また、Vb_estm1_xが正の場合、すなわち前への移動である場合、Vb_estm1_xの大きさ(絶対値)が大きくなるに伴い、旋回中心が第2の移動動作部4の接地部側から、第1の移動動作部3の接地部側に近づいてくるように(ひいては、旋回中心のX軸方向の位置が、乗員搭乗部5に搭乗した乗員の直下の位置(乗員を床面に投影した位置)に近づいてくるように)L3が設定される。すなわち、Vb_estm1_xの大きさ(絶対値)が大きくなるに伴い、L3が小さくなっていくように設定される。ただし、L3は、既定の下限値(>0)以上の距離に制限される。
なお、Vb_estm1_xが負の場合、すなわち後ろへの移動である場合には、L3はVb_estm1_xがゼロの場合の値と同一にするか、Vb_estm1_xの大きさ(絶対値)が大きくなるに伴い、L3が大きくなるように設定されることが好ましい。
処理部42は、このようにVb_estm1_xに応じて決定した距離L3によって、Vw1a_yを除算することにより、目標旋回角速度ωz_cmd_gcを決定する。なお、ωz_cmd_gcは、Vw1a_yが左向きの速度である場合には、左周り(反時計周り)の角速度であり、Vw1a_yが右向きの速度である場合には、右周り(時計周り)の角速度である。
次いで、第2制御処理部25は、処理部43の処理を実行する。処理部43は、処理部42で決定された目標旋回角速度ωz_cmd_gcに、第1の移動動作部3の接地部と第2の移動動作部4の接地部との間の既定の距離の(−1)倍の値(=−L)を乗じることによって、目標旋回角速度ωz_cmd_gcで車両1の旋回行なった場合における第2の移動動作部4の、第1の移動動作部3に対するY軸方向の相対移動速度の目標値ΔVw2_cmd_y(以降、目標相対移動速度ΔVw2_cmd_yという)を算出する。
このように決定される第2の移動動作部4のY軸方向の目標相対移動速度ΔVw2_cmd_yは、ωz_cmd_gc=0である場合(旋回要求が無い場合)にはゼロとなる。また、ΔVw2_cmd_yは、ωz_cmd_gcが左周りの旋回角速度である場合には、右向きの速度、ωz_cmd_gcが右周りの旋回角速度である場合には、左向きの速度である。従って、旋回要求がある場合のΔVw2_cmd_yは、Vw1a_y又はVb_estm1_yと逆向きの速度である。
以上のようにして、第2制御処理部25は、制動装置18の操作量としての第2の移動動作部4のY軸方向の目標相対移動速度ΔVw2_cmd_yを決定する。そして、第2制御処理部25は、この目標相対移動速度ΔVw2_cmd_yに応じて制動装置18を制御する。
具体的には、第2制御処理部25は、ΔVw2_cmd_yがゼロである場合(旋回要求が無い場合)には、前記制動用アクチュエータ83によるキャリパー82の駆動を行わず、制動装置18が制動力を発生しない状態に保持する。
また、第2制御処理部25は、ΔVw2_cmd_yがゼロで無い場合(旋回要求が有る場合)には、制動装置18の制動用アクチュエータ83によりキャリパー82を駆動することで、ブレーキディスク81をキャリパー82により挟み込む。それにより、ブレーキディスク81及び第2の移動動作部4の環状芯体13の回転が摩擦力により制動されて、第2の移動動作部4のY軸方向の移動を制動する制動力が発生する。
この場合、第2制御処理部25は、ΔVw2_cmd_yの絶対値が大きいほど、キャリパー82によるブレーキディスク81の挟み込み力、ひいては、第2の移動動作部4のY軸方向の移動の制動力を大きくするように、制動用アクチュエータ83によるキャリパー82の駆動力を制御する。
第2制御処理部25の制御処理は、以上の如く実行される。この場合、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yの絶対値が十分に小さく、旋回要求が無いと判断される状況では、制動装置18は、制動力を発生しない状態とされる。
また、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yの絶対値が比較的大きく、旋回要求が有ると判断される状況では、制動装置18は、第2の移動動作部4のY軸方向(左右方向)の移動を制動する制動力を発生するように制御される。また、その制動力は、車両1の旋回のための第2の移動動作部4のY軸方向の目標相対移動速度ΔVw1_cmd_yの絶対値が大きいほど(換言すれば、目標旋回角速度ωz_cmd_gcの絶対値が大きいほど)大きくなるように制御される。
以上説明した本実施形態の車両1では、乗員搭乗部5に搭乗した乗員の身体の動きに伴う該乗員搭乗部5(又は基体2)の前後方向(X軸方向)の傾動に応じて、あるいは、ジョイスティック12の前後方向の揺動操作に応じて出力される前進・後進指令に応じてX軸方向での車両1の並進移動を行なうことができる。
また、乗員搭乗部5に搭乗した乗員自身の重心の左右方向の移動(乗員搭乗部5に対する相対的な移動)が比較的小さく、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_xが、ゼロ近辺の所定範囲Δa内に収まるような状況では、該乗員搭乗部5(又は基体2)の左右方向(Y軸方向)の微小な傾動に応じて、あるいは、ジョイスティック12の左右方向の揺動操作に応じて出力される横移動指令に応じてY軸方向での車両1の並進移動を行なうことができる。
また、これらの並進移動を複合して、X軸方向及びY軸方向に対して傾斜した任意の方向にも車両1の並進移動を行なうこともできる。
このような車両1の並進移動時には、制動装置18は制動力を発生しないので、第2の移動動作部4は、X軸方向及びY軸方向に自在に移動し得る状態となっている。このため、第2の移動動作部4は、図10(a)に模式的に示す如く、第1の移動動作部3の並進移動に追従して、該第1の移動動作部3と同一もしくはほぼ同一の移動速度で移動することとなる。
また、乗員搭乗部5に搭乗した乗員が、自身の重心を左右方向に比較的大きく移動させることによって、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_xが、ゼロ近辺の所定範囲Δaから逸脱した場合(すなわち、旋回要求が有ると判断される場合)には、制動装置18の制動用アクチュエータ83が、キャリパー82による制動力を発生するように第2制御処理部25により制御される。また、このとき、制動装置18の制動力は、第2の移動動作部4のY軸方向の目標相対移動速度ΔVw2_cmd_yの絶対値が大きいほど(換言すれば、目標旋回角速度ωz_cmd_gcの絶対値が大きいほど)、大きくなるように制動用アクチュエータ83が制御される。
このため、第2の移動動作部4のY軸方向の移動速度が、第1の移動動作部3のY軸方向の移動速度よりも遅い速度(ゼロを含む)となるように制御されることとなる。その結果、図10(b)に模式的に示す如く、第1の移動動作部3及び第2の移動動作部4のそれぞれのY軸方向の移動速度が異なるものとなって、第1の移動動作部3のY軸方向の移動速度の向きと同じ側(右側又は左側。図10(b)では右側)への車両1の旋回が行われることとなる。
このため、乗員は、自身の重心を左右方向に動かすように上体を動かすだけで、車両1を旋回させることができる。また、この場合、乗員が自身の重心を左側に動かせば、左周りに車両1が旋回するようになり、また、乗員が自身の重心を右側に動かせば、右周りに車両1が旋回するようになる。従って、左右方向での乗員の重心の動きと、車両1の旋回方向とが整合する。
このため、乗員は、自身の上体の左右方向の動きによって車両1を容易に旋回させることできると共に、その旋回のための操縦操作を容易に習得することができる。
また、例えば車両1の停車状態(第1の移動動作部3及び第2の移動動作部4の移動がほぼ停止した状態)で車両1の旋回(方向転換)を行なおうとした場合には、乗員の重量と、車両1の大部分の重量とを支える第1の移動動作部3が左右方向(Y軸方向)に動くこととなるので、第1の移動動作部3に大きな摩擦力が作用するのを防止できる。そのため、車両1の旋回(方向転換)を円滑に行うことができる。
また、車両1を前方向(X軸の正の方向)に移動させながら、車両1の旋回を行なおうとした場合には、車両1の代表点としての車両系全体重心のX軸方向の移動速度の推定値Vb_estm1_xの大きさ(絶対値)が大きいほど、第1の移動動作部3の接地部と旋回中心との間の距離L3が小さくなるので、乗員は、車両1の旋回時の移動軌道を所望の軌道に沿わせることを容易に行なうことができる。
さらに、車両1の旋回は、制動装置18に、第2の移動動作部4のY軸方向の移動を制動する制動力を発生させることで行われるので、第2の移動動作部4の速度制御(実際の移動速度を目標値にフィードバック制御する速度制御)を必要としない。そして、上記制動力の大きさを調整することで、車両1の旋回角速度、ひいては、旋回半径を制御できる。
このため、制動装置18を安価に構成できると共に、簡易な制御によって、車両1の旋回を適切に行うことができる。
また、本実施形態では、第1制御処理部24の重心ずれ推定部35aは、図8に示した処理によって、車両系全体重心の前記重心ずれ量Ofst_xyを推定する。そのため、該重心ずれ量を精度よく推定することができる。そして、この重心ずれ量Ofst_xyの推定値Ofst_estm_xyに応じて、前記した如く車両系全体重心の目標速度(制限後重心目標速度)Vb_cmd_xyが決定される。このため、前記重心ずれ量Ofst_xyが車両1の挙動に及ぼす影響を適切に補償することができる。
また、本実施形態の車両1では、基体2に対する第2の移動動作部4の揺動量(Y軸周り方向の揺動量)が、前記ストッパ17,17により規定される所定の範囲内に機構的に制限されるので、特に、乗員搭乗部5が、後方側に過剰に傾くのを防止することができる。
[第2実施形態]
次に、本発明の第2実施形態及び第3実施形態をそれぞれ図11(a)、図11(b)を参照して説明する。なお、第2実施形態及び第3実施形態は、前記第1実施形態と第2制御処理部25の一部の処理のみが相違するものである。従って、第2実施形態及び第3実施形態の説明では、第1実施形態と同一の事項の説明を省略する。
また、図11(a),(b)において、括弧付きの参照符号は、後述の変形態様に関するものである。
図11(a)は、第2実施形態において、第2制御処理部25が車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yに応じてVw1a_y(不感帯処理後速度の目標値)を決定する処理を示している。
この第2実施形態では、第2制御処理部25は、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yを入力するローカットフィルタ(擬似微分フィルタ)51を備えている。第2制御処理部25は、このローカットフィルタ51の出力(Vb_estm1_yにローカット特性のフィルタリング処理を施した値)に処理部52にて所定値のゲインKdを乗じた値を、演算部53にてVb_estm1_yに加算する。
そして、第2制御処理部25は、Vb_estm1_yの代わりに、演算部53の出力を、第1実施形態と同じ処理部41に入力して、該処理部41の処理を第1実施形態と同様に行なうことで、Vw1a_yを決定する。すなわち、Vw1a_yはVb_estm1_yを位相補償回路(フィルタ)に通したものに相当する。
第2実施形態は、以上説明した以外の事項は第1実施形態と同じである。
かかる第2実施形態では、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yの位相補償値(演算部53の出力)と、その時間的変化率に応じたものとなるローカットフィルタ51の出力とに応じてVw1a_y、ひいては、目標旋回角速度ωz_cmd_gcが決定される。
このため、乗員の上体の動きに伴う車両系全体重心のY軸方向の移動に対して、車両1の旋回挙動の応答性を高めることができる。
次に、図11(b)は、第3実施形態において、第2制御処理部25が車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yに応じてVw1a_y(不感帯処理後速度の目標値)を決定する処理を示している。
この第3実施形態では、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yが第1実施形態と同様に、処理部41に入力されるようになっている。
また、第3実施形態では、第2制御処理部25は、第2実施形態と同じローカットフィルタ51及び処理部52を備えることに加えて、さらに、処理部52の出力を入力する処理部54を備える。この処理部54は、処理部41と同様の処理を行うものである。
具体的には、処理部54の入力値の絶対値が比較的小さく、該入力値が、ゼロを中心とする所定範囲Δb内の値である場合(該入力値の絶対値があらかじめ定めた所定値以下である場合)には、処理部54は、出力値をゼロとする。
また、処理部54の入力値の絶対値が比較的大きいものとなっており、該入力値が、所定範囲b外の値である場合(該入力値の絶対値があらかじめ定めた所定値よりも大きい場合)には、処理部54は、出力値をゼロでない値に設定する。
具体的には、処理部54は、その出力値の絶対値が、既定の上限値以下で、処理部54の入力値の絶対値の増加に伴い増加していくように、処理部54の入力値に応じて出力値を決定する。この場合、処理部54の出力値の極性(向き)は、入力値と同じとされる。
そして、第3実施形態における第2制御処理部25は、処理部41の出力値と、処理部54の出力値とを演算部55で加え合わせることにより、Vw1a_yを決定する。
第3実施形態は、以上説明した以外の事項は第1実施形態と同じである。
かかる第3実施形態では、Vw1a_yは、車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yに応じて処理部41により決定された成分と、Vb_estm1_yの時間的変化率に応じたものとなるローカットフィルタ51の出力に応じて処理部54により決定した成分とを加え合わせることによって決定される。
このため、第2実施形態と同様に、乗員の上体の動きに伴う車両系全体重心のY軸方向の移動に対して、車両1の旋回挙動の応答性を高めることができる。
[変形態様について]
次に、以上説明した各実施形態の変形態様をいくつか説明する。
前記各実施形態では、第2の移動動作部4のY軸方向の目標相対移動速度ΔVw2_cmd_yを制動装置18の制御用の操作量として用いて、該ΔVw2_cmd_yに応じて制動装置18に発生させる制動力を変化させるようにした。ただし、該制動力の大きさを既定の一定値にするようにしてもよい。
また、第2の移動動作部4のY軸方向の目標相対移動速度ΔVw2_cmd_yの代わりに、目標旋回角速度ωz_cmd_gcを制動装置18の制御用の操作量として用いて、該ωz_cmd_gcに応じて、制動装置18に発生させる制動力を変化させるようにしてもよい。
また、車両1の前進時の旋回動作における適切な旋回半径、あるいは、旋回角速度は、概ね第1の移動動作部3のX軸方向の前進速度、又は車両系全体重心のX軸方向の前進速度に応じて定まるので、車両1の旋回要求が有る場合に、第1の移動動作部3又は車両系全体重心のX軸方向の前進速度に応じて、車両1の目標旋回角速度ωgc_cmd_gc(又は第2の移動動作部4のY軸方向の目標相対移動速度ΔVw2_cmd_y)を決定してもよい。あるいは、第1の移動動作部3又は車両系全体重心のX軸方向の前進速度に応じて、制動装置18の制動力の大きさを制御するようにしてもよい。
また、第2の移動動作部4の接地荷重を変更し得るように構成しておき(例えば、第2の移動動作部4を床面に押し付ける付勢力を発生するバネの圧縮量をアクチュエータにより変化させる機構を備える)、車両1の旋回動作のために、制動装置18に制動力を発生させる場合に、第2の移動動作部4の接地荷重を、制動装置18に制動力を発生させない場合よりも、大きくするようにしてもよい。さらには、制動装置18に発生させる制動力が大きいほど、第2の移動動作部4の接地荷重を大きくするようにしてもよい。
また、前記各実施形態では、第2制御処理部25の処理において、旋回要求の有無、あるいは、旋回要求の度合いを判断する指標として、前記重心速度推定部33で算出される車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yを用いるようにした。ただし、旋回要求の有無、あるいは、旋回要求の度合いを判断する指標として、Vb_estm1_y以外のパラメータを用いるようにしてもよい。
例えば、図9、あるいは、図11(a),(b)の括弧付きの参照符号で示すように、Vb_estm1_yの代わりに、前記第1制御処理部24の重心ずれ影響量算出部35bで算出されるY軸方向の重心ずれ影響量Vofs_y(もしくは重心ずれ量推定値Ofst_estm_y)、あるいは、処理部32eで決定されるY軸方向の制限後重心目標速度Vb_cmd_y、あるいは、姿勢制御演算部34で決定される第1の移動動作部3のY軸方向の第1目標速度Vw1_cmd_y、あるいは、第1の移動動作部3のY軸方向の実際の移動速度Vw1_act_yの観測値(例えば電動モータ8bの回転速度の検出値から推定されるVw1_act_yの値)を用いて、前記実施形態と同様に、処理部41,42の処理を実行することで、車両1の目標旋回角速度ωz_cmd_gcを決定するようにしてもよい。
なお、この場合、処理部41において、その出力値をゼロとする入力パメータの値の範囲Δa(該範囲Δaの上限値及び下限値の大きさ)と、範囲Δa外での該入力パラメータの値に変化に対する出力値の変化率とは、一般的には、各種類の入力パラメータ毎に設定される。このことは、図11(b)に示す処理部54においても同様である。
Vb_estm1_yの代わりの上記の如きパラメータを用いた場合であっても、前記実施形態と同様に、乗員の上体の左右方向の動きに応じて、車両1の旋回を行なわせることができる。
ここで、Vb_estm1_yの代わりに、前記第1制御処理部24の重心ずれ影響量算出部35bで算出されるY軸方向の重心ずれ影響量Vofs_yを用いた場合には、該Vofs_yは、Y軸方向の重心ずれ量推定値Ofst_estm_yに比例するので、Vofs_yの応じて車両1の目標旋回角速度ωz_cmd_gcを設定するということは、Y軸方向の重心ずれ量推定値Ofst_estm_yに応じて車両1の目標旋回角速度ωz_cmd_gcを設定することと同等である。
この場合、ジョイスティック12で横移動指令が出力されても、これに応じた旋回は生じないようにできる。
また、前記各実施形態では、車両1の旋回時における旋回中心と第1の移動動作部3の接地部との間の距離L3を、車両系全体重心の前後方向の移動速度の推定値(観測値)Vb_estm_xに応じて変化させるようにしたが、L3をあらかじめ定めた一定値にするようにしてもよい。
また、前記第1実施形態では、処理部41の入力パラメータとしての車両系全体重心のY軸方向の移動速度の推定値Vb_estm1_yがゼロ近辺の所定範囲Δa内の値である場合に、目標旋回角速度ωz_cmd_gcをゼロに設定するようにしたが、該入力パラメータが、所定範囲Δa内の値である場合にも、車両1を旋回させるように目標旋回角速度ωz_cmd_gcを設定するようにしてもよい。すなわち、Δaをゼロにしてもよい。
また、前記各実施形態では、第2の移動動作部4を第1の移動動作部3の後方側に配置したものを示したが、第2の移動動作部4を例えば、第1の移動動作部3の前方側に配置するようにしてもよい。
また、前記各実施形態では、車両1の起動時から一定時間が経過するまでの暖機運転期間に、その後の定常運転期間と比較して車両1の操縦感度を低下させるように制御装置21が構成されていてもよい。車両1の操縦感度低下のため、たとえば、第1制御処理部24を構成する重心目標速度決定部32の処理部32c(図5参照)の不感帯が、暖機運転期間において一時的に広げられる。これにより、暖機運転期間に車両1が動き出す事態が回避されうる。
車両1に異常が検知された場合、車両1の操縦感度を断続的または連続的に低下させるように制御装置21が構成されていてもよい。これにより、車両1に異常が発生したにもかかわらず、車両1がなおも継続して使用されたためにダメージが大きくなる事態が回避される。異常検知の有無または異常の種類をインジケータに表示させるまたはスピーカから音声出力させるように制御装置21が構成されていてもよい。
異常としては、制御装置21のノイズ由来の通信異常などのシステムエラー、車載バッテリの蓄電量の顕著な低下、車両1の構成部品の過熱、および、車両1の構成部品である電気機器への供給電流過多などがあげられる。車両1の操縦感度低下のため、たとえば、第1制御処理部24を構成する重心目標速度決定部32の処理部32eのX方向およびY方向のリミット値(図5参照)、ならびに、第2制御処理部25を構成する処理部41のY方向のリミット値(図9参照)のうち少なくとも1つが、異常検知後に徐々に0に近づくように調節される。
車両1の異常検知後の状態変化に応じて、車両1の操縦感度を元の操縦感度に近づけるように上昇させるように制御装置21が構成されていてもよい。これにより、異常発生後の車両1のメンテナンス場所などへの移動が可能または容易になる。
たとえば、バッテリの蓄電量低下が検知された後、使用者が乗員搭乗部5から降りたことが検知された場合、車両1の操縦感度が上昇されてもよい。車両1の構成部品の過熱が検知された後、当該構成部品の温度が正常温度に低下したことが確認された場合、車両1の操縦感度が上昇されてもよい。車両1の構成部品への供給電流過多が検知された後、当該電流が正常値に復帰したことが確認された場合、車両1の操縦感度が上昇されてもよい。
前記各実施形態では前進・後進指令と横移動指令とを出力するための操作器として、ジョイスティック12を用いたが、ジョイスティックの代わりに、トラックボールや、タッチパッドを使用してもよく、あるいは、乗員による接触箇所を検知する荷重センサや、乗員が把持する姿勢センサ等を使用してもよい。あるいは、例えばスマートフォン等の携帯型端末機を操作器として使用するようにすることもできる。
また、ジョイスティック12等の操作器を省略したり、あるいは、前進・後進指令だけを出力する操作器を備えるようにしてもよい。
また、第2の移動動作部4は、オムニホイール以外の構造、例えば、第1の移動動作部3と同様の構造のものであってもよい。
また、乗員による選択スイッチ等の操作によって、乗員が自身の身体を左右方向に動かすことで車両1の旋回を行なうようにすることと、乗員がジョイスティック等の操作器を操作することで車両1の旋回を行なうようにすることとを選択的に行なうようにすることができるようにしてもよい。
そして、ジョイスティック等の操作器の操作に応じて車両1の旋回を行う場合、車両1の旋回動作時の目標旋回角速度もしくは第1の移動動作部3のY軸方向の移動速度もしくは旋回半径等を、操作器の操作によって、制御装置21に指定し得るようにしてもよい。
また、前記実施形態では、ブレーキディスク81を有する制動装置18を例示した。ただし、制動装置18は、第2の移動動作部4の制動を行い得るものであれば、他の構成のものでもよい。例えば、制動装置18は、ドラムブレーキ、あるいは、自転車等に使用されているようなブレーキで構成されてもよい。