JPWO2011036694A1 - 倒立振子型車両の制御装置 - Google Patents

倒立振子型車両の制御装置 Download PDF

Info

Publication number
JPWO2011036694A1
JPWO2011036694A1 JP2011532779A JP2011532779A JPWO2011036694A1 JP WO2011036694 A1 JPWO2011036694 A1 JP WO2011036694A1 JP 2011532779 A JP2011532779 A JP 2011532779A JP 2011532779 A JP2011532779 A JP 2011532779A JP WO2011036694 A1 JPWO2011036694 A1 JP WO2011036694A1
Authority
JP
Japan
Prior art keywords
value
speed
control
offset
deviation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011532779A
Other languages
English (en)
Other versions
JP5414804B2 (ja
Inventor
竹中 透
透 竹中
一志 秋元
一志 秋元
慎一郎 小橋
慎一郎 小橋
秀雄 村上
秀雄 村上
勇一 上林
勇一 上林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Publication of JPWO2011036694A1 publication Critical patent/JPWO2011036694A1/ja
Application granted granted Critical
Publication of JP5414804B2 publication Critical patent/JP5414804B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62KCYCLES; CYCLE FRAMES; CYCLE STEERING DEVICES; RIDER-OPERATED TERMINAL CONTROLS SPECIALLY ADAPTED FOR CYCLES; CYCLE AXLE SUSPENSIONS; CYCLE SIDE-CARS, FORECARS, OR THE LIKE
    • B62K1/00Unicycles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J1/00Saddles or other seats for cycles; Arrangement thereof; Component parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62KCYCLES; CYCLE FRAMES; CYCLE STEERING DEVICES; RIDER-OPERATED TERMINAL CONTROLS SPECIALLY ADAPTED FOR CYCLES; CYCLE AXLE SUSPENSIONS; CYCLE SIDE-CARS, FORECARS, OR THE LIKE
    • B62K11/00Motorcycles, engine-assisted cycles or motor scooters with one or two wheels
    • B62K11/007Automatic balancing machines with single main ground engaging wheel or coaxial wheels supporting a rider

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Motorcycle And Bicycle Frame (AREA)

Abstract

基体の傾斜角度が基準となる目標傾斜角度と一致して車両が停止すべき基準状態における傾斜角度と目標傾斜角度とのずれを調整することができる倒立振子型車両の制御装置を提供する。姿勢制御演算部80は、傾斜オフセット調整量θb_xy_offsetを更新条件が成立する場合に(STEP21)、第1モードの演算処理(STEP22)を実行して、傾斜オフセット調整量θb_xy_offsetを更新すると共に、第2モードの演算処理(STEP23)を実行して、第1モードで更新された傾斜オフセット調整量θb_xy_offsetを用いて、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する。

Description

本発明は、床面上を移動可能な倒立振子型車両の制御装置に関する。
倒立振子型車両は、床面上を移動する移動動作部と、この移動動作部を駆動するアクチュエータ装置とが組み付けられた基体に、鉛直方向に対して傾動自在な運搬対象物体の搭載部が組み付けられた車両であり、搭載部の傾斜角度をある目標傾斜角度に保つために(搭乗部が傾倒しないようにするために)、倒立振子の支点を動かすような形態で、移動動作部を移動させる必要がある車両である。
この種の倒立振子型車両の制御技術としては、例えば、特許文献1に見られるものが本願出願人により提案されている。
この特許文献1には、運搬対象物体の搭載部としての乗員の搭乗部が組み付けられた車両の基体が球体状の移動動作部に対して前後方向の軸周りと左右方向の軸周りとの2軸周りに傾動自在に設けられた倒立振子型車両の制御技術が記載されている。この技術では、基体の傾斜角度(=搭乗部の傾斜角度)の計測値と目標傾斜角度との偏差を“0”に近づけると共に、アクチュエータ装置としてのモータの速度(ひいては移動動作部の移動速度)の計測値と目標速度との偏差を“0”に近づけるようにモータの駆動トルクが逐次決定される。そして、その決定した駆動トルクに応じて、移動動作部の移動動作がモータを介して制御される。
なお、倒立振子型車両として機能し得る車両としては、例えば、特許文献2、3に見られるものも本願出願人により提案されている。
特許第3070015号 PCT国際公開公報WO/2008/132778 PCT国際公開公報WO/2008/132779
ところで、特許文献1に見られるように、乗員が搭乗部を傾動させることで移動させるようにした倒立振子型車両では、搭乗部へ乗員が搭乗した際に、搭乗位置や搭乗姿勢が乗員により異なることがある。この場合、乗員が搭乗部へ搭乗した状態において、基体の傾斜角度が搭乗時に基準となる目標傾斜角度(例えば、乗員及び当該車両の全体の重心点が床面との接地点のほぼ真上に位置する基体の傾斜角度)から変化し、傾斜角度と目標傾斜角度との偏差を解消するように車両が移動してしまうという不都合がある。
かかる不都合を解消するために、乗員が(車両が移動しないように)搭乗位置や姿勢を変えることや、基体にバランサを設けて基体の傾斜角度を物理的に調整することも考えられるが、いずれも基体の傾斜角度を目標傾斜角度に一致させることは困難である。さらに、乗員の搭乗部における搭乗位置や搭乗姿勢は、当該乗員の乗り易い位置や姿勢である場合があり、かかる状態を許容し得ることが望ましい。
本発明は、かかる背景に鑑みてなされたものであり、基体の傾斜角度が基準となる目標傾斜角度と一致して車両が停止すべき基準状態における傾斜角度と目標傾斜角度とのずれを調整することができる倒立振子型車両の制御装置を提供することを目的とする。
かかる目的を達成するために、第1発明の倒立振子型車両の制御装置は、
床面上を移動可能な移動動作部と、該移動動作部を駆動するアクチュエータ装置と、該移動動作部およびアクチュエータ装置が組み付けられた基体と、鉛直方向に対して傾動自在に前記基体に組み付けられた乗員の搭乗部とを備えた倒立振子型車両の制御装置であって、
前記搭乗部の実際の傾斜角度に応じた出力を生成する傾斜角度計測手段と、
前記車両の所定の代表点の移動速度に応じた出力を生成する代表点速度計測手段と、
少なくとも、前記傾斜角度計測手段の出力が示す前記搭乗部の傾斜角度の計測値と、所定値の目標傾斜角度と、前記代表点速度計測手段の出力が示す代表点速度の計測値と、所定値の目標移動速度と、可変的に設定可能な操作調整量とを用いて、前記移動動作部に付与する駆動力を規定する制御用操作量を決定し、その決定した制御用操作量に応じて前記移動動作部の移動動作を前記アクチュエータ装置を介して制御する移動動作部制御手段とを備え、
前記移動動作部制御手段は、
前記操作調整量を更新するための第1モードと、該第1モードで更新された該操作調整量を用いて、前記制御用操作量を決定する第2モードとを有すると共に、
前記第1モードでは、前記目標移動速度を“0”に保持した状態で、少なくとも前記搭乗部の傾斜角度の計測値と前記目標傾斜角度との偏差である傾斜偏差と、前記代表点速度の計測値と前記目標移動速度との偏差である速度偏差とを“0”に近づけるための要求操作量に前記操作調整量の現在値に応じた補正を施してなる操作量を前記制御用操作量として決定する制御処理を実行し、その制御処理の実行状態での前記代表点速度の計測値に基づいて、該代表点速度をさらに“0”に近づけ得る値に前記操作調整量を更新し、
前記第2モードでは、少なくとも前記傾斜偏差と速度偏差とを“0”に近づけるための要求操作量に前記第1モードで更新された操作調整量に応じた補正を施してなる操作量を前記制御用操作量として決定することを特徴とする(第1発明)。
なお、本発明において、「床」は、通常的な意味での床(屋内の床など)だけを意味するものではなく、屋外の地面もしくは路面をも含むものとして使用する。
上記第1発明によれば、前記移動動作部制御手段は、少なくとも、前記傾斜偏差と速度偏差とを“0”に近づけるように前記要求操作量を決定する。ここで、第1モードでは、前記目標移動速度を“0”に保持することで、代表点速度計測手段の出力が示す代表点速度の計測値が“0”に収束するように前記要求操作量が決定される。そして、この要求操作量に前記操作調整量の現在値に基づく補正を施してなる値を前記制御用操作量とする制御処理を実行しつつ、前記代表点速度計測手段の出力が示す代表点速度の計測値に基づいて、該代表点速度をより“0”に近づけ得る値に操作調整量が更新される。
そのため、例えば、乗員が搭乗部へ搭乗した際に、基体の傾斜角度が基準となる目標傾斜角度と一致して車両が停止すべき基準状態において傾斜角度と目標傾斜角度との間にずれが生じ、かかるずれに起因する傾斜偏差および速度偏差による要求操作量により車両が移動し得る場合に、制御操作量として代表点速度が“0”となるように要求操作量を補正する操作調整量が更新される。これにより、代表点速度を“0”に収束させて、車両の移動を抑制して停止させることができると共に、車両が停止した状態で乗員がその重心を乗員及び当該車両の全体の重心点を床面との接地点のほぼ真上に位置させることで、車両を停止状態で安定化させることができる。
そして、第2モードでは、前記第1モードで更新された操作調整量が要求操作量を補正するための調整量として用いられる。すなわち、第2モードで用いられる操作調整量は、基体の傾斜角度が基準となる目標傾斜角度と一致して車両が停止すべき基準状態において、傾斜角度と目標傾斜角度との間にずれが生じていても、代表点速度が“0”に収束するような一定の値となっているため、基準状態において車両を停止させることができる。これにより、乗員が乗り易いと感じる搭乗部への位置や姿勢を許容しつつ、前記制御用操作量を決定して前記移動動作部の移動動作を制御することができる。
このように、本発明によれば、基体の傾斜角度が基準となる目標傾斜角度と一致して車両が停止すべき基準状態における傾斜角度と目標傾斜角度とのずれを調整することができる。
かかる第1発明における倒立振子型車両では、前記移動動作部が、床面上を所定の1方向に移動可能に構成され、前記搭乗部が、当該所定の1方向と直交する方向の1軸周りに傾動自在に前記基体に組付けられていてもよい。
あるいは、前記移動動作部は、床面上を互いに直交する第1の方向及び第2の方向を含む全方向に移動可能に構成されていると共に、前記搭乗部は、前記第1の方向の軸周りと第2の方向の軸周りとの2軸周りに傾動自在に前記基体に組付けられていてもよい。
この場合、前記移動動作部が、「第1の方向及び第2の方向を含む全方向に移動可能」ということは、該第1の方向及び第2の方向に直交する軸方向で見た場合における各瞬間での該移動動作部の速度ベクトルの向きが、前記アクチュエータ装置による移動動作部の駆動によって、上記軸方向の周りの任意の角度方向の向きを採り得るということを意味する。この場合、上記軸方向は、概ね、上下方向又は床面に垂直な方向である。また、「直交」は厳密な意味での直交であることは必須ではなく、厳密な意味での直交から若干のずれがあってもよい。
第1発明において、
前記操作調整量は、前記傾斜偏差を調整する調整量であって、
前記移動動作部制御手段は、前記傾斜偏差を“0”に近づけるための要求操作量に前記操作調整量を加算する補正を施してなる操作量を前記制御用操作量として決定することが好ましい(第2発明)。
この第2発明によれば、例えば、乗員が搭乗部へ搭乗した状態において、基体の傾斜角度が搭乗時に基準となる目標傾斜角度(乗員及び当該車両の全体の重心点が床面との接地点のほぼ真上に位置する基体の傾斜角度)からのずれが生じている場合に、かかる目標傾斜角度と基体の傾斜角度とのずれを解消するように、前記傾斜偏差に加算される操作調整量が調整される。すなわち、目標傾斜角度からのずれを解消するように、傾斜偏差に加算される傾斜角度のオフセット量が調整されるため、基体の傾斜角度が目標傾斜角度と一致して車両が停止すべき基準状態における傾斜角度と目標傾斜角度とのずれを直接的に調整することができる。
また、第1発明において、前記操作調整量は、前記速度偏差を調整する調整量であって、
前記移動動作部制御手段は、前記速度偏差を“0”に近づけるための要求操作量に前記操作調整量を加算する補正を施してなる操作量を前記制御用操作量として決定してもよい(第3発明)。
この第3発明によれば、例えば、乗員が搭乗部へ搭乗した状態において、基体の傾斜角度が搭乗時に基準となる目標傾斜角度からのずれ、前記目標速度から前記代表点速度の計測値がずれている場合に、かかる目標速度と代表点速度の計測値とのずれを解消するように、前記速度偏差に加算される操作調整量が調整される。すなわち、目標速度からのずれを解消するように、速度偏差に加算される代表点速度のオフセット量が調整されるため、当該車両が移動してしまうことを抑制することができ、基体の傾斜角度が目標傾斜角度と一致して車両が停止すべき基準状態における傾斜角度と目標傾斜角度とのずれを間接的に調整することができる。
さらに、第1発明において、前記移動動作部制御手段は、前記第1モードにおいて、前記代表点速度の計測値を積分してなる値を、該代表点速度をさらに“0”に近づけ得る値とすることにより、前記操作調整量を更新することが好ましい。
この第3発明によれば、第1モードでは、前記操作調整量が、前記代表点速度計測手段の出力が示す代表点速度の計測値を積分した値として決定される。そのため、第1モードでは、目標移動速度を“0”に保持した状態で、前記傾斜偏差と前記速度偏差とを“0”に近づけるように制御用操作量を決定するため、代表点速度の計測値を積分した値がフィードバックされる制御系となり、代表点速度の計測値を定常偏差を抑制しつつ“0”に収束させることができる。これにより、基体の傾斜角度が基準となる目標傾斜角度と一致して車両が停止すべき基準状態における傾斜角度と目標傾斜角度とのずれを調整することができる。
実施形態の倒立振子型車両の正面図。 実施形態の倒立振子型車両の側面図。 実施形態の倒立振子型車両の下部を拡大して示す図。 実施形態の倒立振子型車両の下部の斜視図。 実施形態の倒立振子型車両の移動動作部(車輪体)の斜視図。 実施形態の倒立振子型車両の移動動作部(車輪体)とフリーローラとの配置関係を示す図。 実施形態の倒立振子型車両の制御ユニットの処理を示すフローチャート。 実施形態の倒立振子型車両の動力学的挙動を表現する倒立振子モデルを示す図。 図7のSTEP9の処理に係わる処理機能を示すブロック図。 図9に示すゲイン調整部の処理機能を示すブロック図。 図10に示すリミット処理部(又は図12に示すリミット処理部)の処理機能を示すブロック図。 図9に示す重心速度制限部76の処理機能を示すブロック図。 図9に示す姿勢制御演算部80の処理機能を示すブロック図。 図9に示す姿勢制御演算部80における第1および第2モードの演算処理を示すフローチャート。
[第1実施形態]
本発明の第1実施形態を以下に説明する。まず、図1〜図6を参照して、本実施形態における倒立振子型車両の構造を説明する。
図1及び図2に示すように、本実施形態における倒立振子型車両1は、乗員(運転者)の搭乗部3と、床面に接地しながら該床面上を全方向(前後方向及び左右方向を含む2次元的な全方向)に移動可能な移動動作部5と、この移動動作部5を駆動する動力を該移動動作部5に付与するアクチュエータ装置7と、これらの搭乗部3、移動動作部5及びアクチュエータ装置7が組付けられた基体9とを備える。
ここで、本実施形態の説明では、「前後方向」、「左右方向」は、それぞれ、搭乗部3に標準的な姿勢で搭乗した乗員の上体の前後方向、左右方向に一致もしくはほぼ一致する方向を意味する。なお、「標準的な姿勢」は、搭乗部3に関して設計的に想定されている姿勢であり、乗員の上体の体幹軸を概ね上下方向に向け、且つ、上体を捻ったりしていない姿勢である。
この場合、図1においては、「前後方向」、「左右方向」はそれぞれ、紙面に垂直な方向、紙面の左右方向であり、図2においては、「前後方向」、「左右方向」はそれぞれ、紙面の左右方向、紙面に垂直な方向である。また、本実施形態の説明では、参照符号に付する添え字「R」,「L」は、それぞれ車両1の右側、左側に対応するものという意味で使用する。
基体9は、移動動作部5及びアクチュエータ装置7とが組付けられた下部フレーム11と、この下部フレーム11の上端から上方に延設された支柱フレーム13とを備える。
支柱フレーム13の上部には、該支柱フレーム13から前方側に張り出したシートフレーム15が固定されている。そして、このシートフレーム15上に、乗員が着座するシート3が装着されている。本実施形態では、このシート3が乗員の搭乗部となっている。従って、本実施形態における倒立振子型車両1(以降、単に車両1という)は、乗員がシート3に着座した状態で、床面上を移動するものである。
また、シート3の左右には、シート3に着座した乗員が必要に応じて把持するためのグリップ17R,17Lが配置され、これらのグリップ17R,17Lがそれぞれ、支柱フレーム13(又はシートフレーム15)から延設されたブラケット19R,19Lの先端部に固定されている。
下部フレーム11は、左右方向に間隔を存して二股状に対向するように配置された一対のカバー部材21R,21Lを備える。これらのカバー部材21R,21Lの上端部(二股の分岐部分)は、前後方向の軸心を有するヒンジ軸23を介して連結され、カバー部材21R,21Lの一方が他方に対して相対的にヒンジ軸23の周りに揺動可能となっている。この場合、カバー部材21R,21Lは、図示を省略するバネによって、カバー部材21R,21Lの下端部側(二股の先端側)が狭まる方向に付勢されている。
また、カバー部材21R,21Lのそれぞれの外面部には、前記シート3に着座した乗員の右足を載せるステップ25Rと左足を載せるステップ25Lとが各々、右向き、左向きに張り出すように突設されている。
移動動作部5及びアクチュエータ装置7は、下部フレーム11のカバー部材21R,21Lの間に配置されている。これらの移動動作部5及びアクチュエータ装置7の構造を図3〜図6を参照して説明する。
なお、本実施形態で例示する移動動作部5及びアクチュエータ装置7は、例えば前記特許文献2の図1に開示されているものと同じ構造のものである。従って、本実施形態の説明においては、移動動作部5及びアクチュエータ装置7の構成に関して、前記特許文献2に記載された事項については、簡略的な説明に留める。
本実施形態では、移動動作部5は、ゴム状弾性材により円環状に形成された車輪体であり、ほぼ円形の横断面形状を有する。この移動動作部5(以降、車輪体5という)は、その弾性変形によって、図5及び図6の矢印Y1で示す如く、円形の横断面の中心C1(より詳しくは、円形の横断面中心C1を通って、車輪体5の軸心と同心となる円周線)の周りに回転可能となっている。
この車輪体5は、その軸心C2(車輪体5全体の直径方向に直交する軸心C2)を左右方向に向けた状態で、カバー部材21R,21Lの間に配置され、該車輪体5の外周面の下端部にて床面に接地する。
そして、車輪体5は、アクチュエータ装置7による駆動(詳細は後述する)によって、図5の矢印Y2で示す如く車輪体5の軸心C2の周りに回転する動作(床面上を輪転する動作)と、車輪体5の横断面中心C1の周りに回転する動作とを行なうことが可能である。その結果、車輪体5は、それらの回転動作の複合動作によって、床面上を全方向に移動することが可能となっている。
アクチュエータ装置7は、車輪体5と右側のカバー部材21Rとの間に介装される回転部材27R及びフリーローラ29Rと、車輪体5と左側のカバー部材17Lとの間に介装される回転部材27L及びフリーローラ29Lと、回転部材27R及びフリーローラ29Rの上方に配置されたアクチュエータとしての電動モータ31Rと、回転部材27L及びフリーローラ29Lの上方に配置されたアクチュエータとしての電動モータ31Lとを備える。
電動モータ31R,31Lは、それぞれのハウジングがカバー部材21R,21Lに各々取付けられている。なお、図示は省略するが、電動モータ31R,31Lの電源(蓄電器)は、支柱フレーム13等、基体9の適所に搭載されている。
回転部材27Rは、左右方向の軸心を有する支軸33Rを介してカバー部材21Rに回転可能に支持されている。同様に、回転部材27Lは、左右方向の軸心を有する支軸33Lを介してカバー部材21Lに回転可能に支持されている。この場合、回転部材27Rの回転軸心(支軸33Rの軸心)と、回転部材27Lの回転軸心(支軸33Lの軸心)とは同軸心である。
回転部材27R,27Lは、それぞれ電動モータ31R,31Lの出力軸に、減速機としての機能を含む動力伝達機構を介して接続されており、電動モータ31R,31Lからそれぞれ伝達される動力(トルク)によって回転駆動される。各動力伝達機構は、例えばプーリ・ベルト式のものである。すなわち、図3に示す如く、回転部材27Rは、プーリ35Rとベルト37Rとを介して電動モータ31Rの出力軸に接続されている。同様に、回転部材27Lは、プーリ35Lとベルト37Lとを介して電動モータ31Lの出力軸に接続されている。
なお、上記動力伝達機構は、例えば、スプロケットとリンクチェーンとにより構成されるもの、あるいは、複数のギヤにより構成されるものであってもよい。また、例えば、電動モータ31R,31Lを、それぞれの出力軸が各回転部材27R,27Lと同軸心になるように各回転部材27R,27Lに対向させて配置し、電動モータ31R,31Lのそれぞれの出力軸を回転部材27R,27Lに各々、減速機(遊星歯車装置等)を介して連結するようにしてもよい。
各回転部材27R,27Lは、車輪体5側に向かって縮径する円錐台と同様の形状に形成されており、その外周面がテーパ外周面39R,39Lとなっている。
回転部材27Rのテーパ外周面39Rの周囲には、回転部材27Rと同心の円周上に等間隔で並ぶようにして、複数のフリーローラ29Rが配列されている。そして、これらのフリーローラ29Rは、それぞれ、ブラケット41Rを介してにテーパ外周面39Rに取付けられ、該ブラケット41Rに回転自在に支承されている。
同様に、回転部材27Lのテーパ外周面39Lの周囲には、回転部材27Lと同心の円周上に等間隔で並ぶようにして、複数(フリーローラ29Rと同数)のフリーローラ29Lが配列されている。そして、これらのフリーローラ29Lは、それぞれ、ブラケット41Lを介してにテーパ外周面39Lに取付けられ、該ブラケット41Lに回転自在に支承されている。
前記車輪体5は、回転部材27R側のフリーローラ29Rと、回転部材27L側のフリーローラ29Lとの間に挟まれるようにして、回転部材27R,27Lと同軸心に配置されている。
この場合、図1及び図6に示すように、各フリーローラ29R,29Lは、その軸心C3が車輪体5の軸心C2に対して傾斜すると共に、車輪体5の直径方向(車輪体5をその軸心C2の方向で見たときに、該軸心C2と各フリーローラ29R,29Lとを結ぶ径方向)に対して傾斜する姿勢で配置されている。そして、このような姿勢で、各フリーローラ29R,29Lのそれぞれの外周面が車輪体5の内周面に斜め方向に圧接されている。
より一般的に言えば、右側のフリーローラ29Rは、回転部材27Rが軸心C2の周りに回転駆動されたときに、車輪体5との接触面で、軸心C2周りの方向の摩擦力成分(車輪体5の内周の接線方向の摩擦力成分)と、車輪体5の前記横断面中心C1の周り方向の摩擦力成分(円形の横断面の接線方向の摩擦力成分)とを車輪体5に作用させ得るような姿勢で、車輪体5の内周面に圧接されている。左側のフリーローラ29Lについても同様である。
この場合、前記したように、カバー部材21R,21Lは、図示しないバネによって、カバー部材21R,21Lの下端部側(二股の先端側)が狭まる方向に付勢されている。このため、この付勢力によって、右側のフリーローラ29Rと左側のフリーローラ29Lとの間に車輪体5が挟持されると共に、車輪体5に対する各フリーローラ29R,29Lの圧接状態(より詳しくはフリーローラ29R,29Lと車輪体5との間で摩擦力が作用し得る圧接状態)が維持される。
以上説明した構造を有する車両1においては、電動モータ31R,31Lによりそれぞれ、回転部材27R,27Lを同方向に等速度で回転駆動した場合には、車輪体5が回転部材27R,27Lと同方向に軸心C2の周りに回転することとなる。これにより、車輪体5が床面上を前後方向に輪転して、車両1の全体が前後方向に移動することとなる。なお、この場合は、車輪体5は、その横断面中心C1の周りには回転しない。
また、例えば、回転部材27R,27Lを互いに逆方向に同じ大きさの速度で回転駆動した場合には、車輪体5は、その横断面中心C1の周りに回転することとなる。これにより、車輪体4がその軸心C2の方向(すなわち左右方向)に移動し、ひいては、車両1の全体が左右方向に移動することとなる。なお、この場合は、車輪体5は、その軸心C2の周りには回転しない。
さらに、回転部材27R,27Lを、互いに異なる速度(方向を含めた速度)で、同方向又は逆方向に回転駆動した場合には、車輪体5は、その軸心C2の周りに回転すると同時に、その横断面中心C1の周りに回転することとなる。
この時、これらの回転動作の複合動作(合成動作)によって、前後方向及び左右方向に対して傾斜した方向に車輪体5が移動し、ひいては、車両1の全体が車輪体5と同方向に移動することとなる。この場合の車輪体5の移動方向は、回転部材27R,27Lの回転方向を含めた回転速度(回転方向に応じて極性が定義された回転速度ベクトル)の差に依存して変化するものとなる。
以上のように車輪体5の移動動作が行なわれるので、電動モータ31R,31Lのそれぞれの回転速度(回転方向を含む)を制御し、ひいては回転部材27R,27Lの回転速度を制御することによって、車両1の移動速度及び移動方向を制御できることとなる。
なお、シート3及び基体9は、車輪体5の軸心C2を支点として、左右方向の軸心C2周りに傾動自在となっていると共に、車輪体5の接地面(下端面)を支点として、前後方向の軸周りに該車輪体5と共に傾動自在となっている。
次に、本実施形態の車両1の動作制御のための構成を説明する。なお、以降の説明では、図1及び図2に示すように、前後方向の水平軸をX軸、左右方向の水平軸をY軸、鉛直方向をZ軸とするXYZ座標系を想定し、前後方向、左右方向をそれぞれX軸方向、Y軸方向と言うことがある。
まず、車両1の概略的な動作制御を説明すると、本実施形態では、基本的には、シート3に着座した乗員がその上体を傾けた場合(詳しくは、乗員と車両1とを合わせた全体の重心点の位置(水平面に投影した位置)を動かすように上体を傾けた場合)に、該上体を傾けた側に基体9がシート3と共に傾動する。そして、この時、基体9が傾いた側に車両1が移動するように、車輪体5の移動動作が制御される。例えば、乗員が上体を前傾させ、ひいては、基体9をシート3と共に前傾させると、車両1が前方に移動するように、車輪体5の移動動作が制御される。
すなわち、本実施形態では、乗員が上体を動かし、ひいては、シート3と共に基体9を傾動させるという動作が、車両1に対する1つの基本的な操縦操作(車両1の動作要求)とされ、その操縦操作に応じて車輪体5の移動動作がアクチュエータ装置7を介して制御される。
ここで、本実施形態の車両1は、その全体の接地面としての車輪体5の接地面が、車両1とこれに搭乗する乗員との全体を床面に投影した領域に比して面積が小さい単一の局所領域となり、その単一の局所領域だけに床反力が作用する。このため、基体9が傾倒しないようにするためには、乗員及び車両1の全体の重心点が車輪体5の接地面のほぼ真上に位置するように、車輪体5を動かす必要がある。
そこで、本実施形態では、乗員及び車両1の全体の重心点(より詳しくは、乗員および車両1の全体のうち、乗員およびシード3と一体的に傾動可能な系の全体の重心点)が、車輪体5の中心点(軸心C2上の中心点)のほぼ真上に位置する状態(より正確には当該重心点が車輪体5の接地面のほぼ真上に位置する状態)での基体9の姿勢を目標姿勢とし、基本的には、基体9の実際の姿勢を目標姿勢に収束させるように、車輪体5の移動動作が制御される。
さらに、車両1に乗員が搭乗していない状態では、車両1の単体の重心点が、車輪体5の中心点(軸心C2上の中心点)のほぼ真上に位置する状態(当該重心点が車輪体5の接地面のほぼ真上に位置する状態)での基体9の姿勢を目標姿勢とし、該基体9の実際の姿勢を目標姿勢に収束させ、ひいては、基体9が傾倒することなく車両1が自立するように、車輪体5の移動動作が制御される。
また、車両1に乗員が搭乗している状態と搭乗していない状態とのいずれの状態においても、基体9の実際の姿勢の目標姿勢からずれが大きいほど、車両1の移動速度が速くなると共に、基体9の実際の姿勢の目標姿勢に一致する状態では、車両1の移動が停止するように車輪体5の移動動作が制御される。
補足すると、「姿勢」は空間的な向きを意味する。本実施形態では、基体9がシート3と共に傾動することで、基体9やシート3の姿勢が変化する。また、本実施形態では、基体9とシート3とは一体的に傾動するので、基体9の姿勢をその目標姿勢に収束させるということは、シート3の姿勢を該シート3に対応する目標姿勢(基体9の姿勢が基体9の目標姿勢に一致する状態でのシート3の姿勢)に収束させるということと等価である。
本実施形態では、以上の如き車両1の動作制御を行なうために、図1及び図2に示すように、マイクロコンピュータや電動モータ31R,31Lのドライブ回路ユニットなどを含む電子回路ユニットにより構成された制御ユニット50と、基体9の所定の部位の鉛直方向(重力方向)に対する傾斜角θb及びその変化速度(=dθb/dt)を計測するための傾斜センサ52と、車両1に乗員が搭乗しているか否かを検知するための荷重センサ54と、電動モータ31R,31Lのそれぞれの出力軸の回転角度及び回転角速度を検出するための角度センサとしてのロータリエンコーダ56R,56Lがそれぞれ、車両1の適所に搭載されている。
この場合、制御ユニット50及び傾斜センサ52は、例えば、基体9の支柱フレーム13の内部に収容された状態で該支柱フレーム13に取付けられている。また、荷重センサ54は、シート3に内蔵されている。また、ロータリエンコーダ56R,56Lは、それぞれ、電動モータ31R,31Lと一体に設けられている。なお、ロータリエンコーダ56R,56Lは、それぞれ、回転部材27R,27Lに装着してもよい。
上記傾斜センサ52は、より詳しくは、加速度センサとジャイロセンサ等のレートセンサ(角速度センサ)とから構成され、これらのセンサの検出信号を制御ユニット50に出力する。そして、制御ユニット50が、傾斜センサ52の加速度センサ及びレートセンサの出力を基に、所定の計測演算処理(これは公知の演算処理でよい)を実行することによって、傾斜センサ52を搭載した部位(本実施形態では支柱フレーム13)の、鉛直方向に対する傾斜角度θbの計測値とその変化速度(微分値)である傾斜角速度θbdotの計測値とを算出する。
この場合、計測する傾斜角度θb(以降、基体傾斜角度θbということがある)は、より詳しくは、それぞれ、Y軸周り方向(ピッチ方向)の成分θb_xと、X軸周り方向(ロール方向)の成分θb_yとから成る。同様に、計測する傾斜角速度θbdot(以降、基体傾斜角速度θbdotということがある)も、Y軸周り方向(ピッチ方向)の成分θbdot_x(=dθb_x/dt)と、X軸周り方向(ロール方向)の成分θbdot_y(=dθb_y/dt)とから成る。
補足すると、本実施形態では、基体9の支柱フレーム13と一体にシート3が傾動するので、基体傾斜角度θbは、搭乗部3の傾斜角度としての意味も持つ。
なお、本実施形態の説明では、上記基体傾斜角度θbなど、X軸及びY軸の各方向(又は各軸周り方向)の成分を有する運動状態量等の変数、あるいは、該運動状態量に関連する係数等の変数に関しては、その各成分を区別して表記する場合に、該変数の参照符号に、添え字“_x”又は“_y”を付加する。
この場合において、並進速度等の並進運動に係わる変数については、そのX軸方向の成分に添え字“_x”を付加し、Y軸方向の成分に添え字“_y”を付加する。
一方、角度、回転速度(角速度)、角加速度など、回転運動に係わる変数については、並進運動に係わる変数と添え字を揃えるために、便宜上、Y軸周り方向の成分に添え字“_x”を付加し、X軸周り方向の成分に添え字“_y”を付加する。
さらに、X軸方向の成分(又はY軸周り方向の成分)と、Y軸方向の成分(又はX軸周り方向の成分)との組として変数を表記する場合には、該変数の参照符号に添え字“_xy”を付加する。例えば、上記基体傾斜角度θbを、Y軸周り方向の成分θb_xとX軸周り方向の成分θb_yの組として表現する場合には、「基体傾斜角度θb_xy」というように表記する。
前記荷重センサ54は、乗員がシート3に着座した場合に該乗員の重量による荷重を受けるようにシート3に内蔵され、その荷重に応じた検出信号を制御ユニット50に出力する。そして、制御ユニット50が、この荷重センサ54の出力により示される荷重の計測値に基づいて、車両1に乗員が搭乗しているか否かを判断する。
なお、荷重センサ54の代わりに、例えば、乗員がシート3に着座したときにONとなるようなスイッチ式のセンサを用いてもよい。
ロータリエンコーダ56Rは、電動モータ31Rの出力軸が所定角度回転する毎にパルス信号を発生し、このパルス信号を制御ユニット50に出力する。そして、制御ユニット50が、そのパルス信号を基に、電動モータ53Rの出力軸の回転角度を計測し、さらにその回転角度の計測値の時間的変化率(微分値)を電動モータ53Rの回転角速度として計測する。電動モータ31L側のロータリエンコーダ56Lについても同様である。
制御ユニット50は、上記の各計測値を用いて所定の演算処理を実行することによって、電動モータ31R,31Lのそれぞれの回転角速度の目標値である速度指令を決定し、その速度指令に従って、電動モータ31R,31Lのそれぞれの回転角速度をフィードバック制御する。
なお、電動モータ31Rの出力軸の回転角速度と、回転部材27Rの回転角速度との間の関係は、該出力軸と回転部材27Rとの間の一定値の減速比に応じた比例関係になるので、本実施形態の説明では、便宜上、電動モータ31Rの回転角速度は、回転部材27Rの回転角速度を意味するものとする。同様に、電動モータ31Lの回転角速度は、回転部材27Lの回転角速度を意味するものとする。
以下に、制御ユニット50の制御処理をさらに詳細に説明する。
制御ユニット50は、所定の制御処理周期で図7のフローチャートに示す処理(メインルーチン処理)を実行する。
まず、STEP1において、制御ユニット50は、傾斜センサ52の出力を取得する。
次いで、STEP2に進んで、制御ユニット50は、取得した傾斜センサ52の出力を基に、基体傾斜角度θbの計測値θb_xy_sと、基体傾斜角速度θbdotの計測値θbdot_xy_sとを算出する。
なお、以降の説明では、上記計測値θb_xy_sなど、変数(状態量)の実際の値の観測値(計測値又は推定値)を参照符号により表記する場合に、該変数の参照符号に、添え字“_s”を付加する。
次いで、制御ユニット50は、STEP3において、荷重センサ54の出力を取得した後、STEP4の判断処理を実行する。この判断処理においては、制御ユニット50は、取得した荷重センサ54の出力が示す荷重計測値があらかじめ設定された所定値よりも大きいか否かによって、車両1に乗員が搭乗しているか否か(シート3に乗員が着座しているか否か)を判断する。
そして、制御ユニット50は、STEP4の判断結果が肯定的である場合には、基体傾斜角度θbの標準目標値θb_xy_objを設定する処理と、車両1の動作制御用の定数パラメータ(各種ゲインの基本値など)の値を設定する処理とを、それぞれSTEP5、6で実行する。
STEP5においては、制御ユニット50は、基体傾斜角度θbの標準目標値θb_xy_objとして、あらかじめ定められた搭乗モード用の目標値を設定する。
ここで、「搭乗モード」は、車両1に乗員が搭乗している場合での車両1の動作モードを意味する。この搭乗モード用の標準目標値θb_xy_objは、車両1とシート3に着座した乗員との全体の重心点(以降、車両・乗員全体重心点という)が車輪体5の接地面のほぼ真上に位置する状態となる基体9の姿勢において、傾斜センサ52の出力に基づき計測される基体傾斜角度θbの計測値θb_xy_sに一致又はほぼ一致するようにあらかじめ設定されている。
また、STEP6においては、制御ユニット50は、車両1の動作制御用の定数パラメータの値として、あらかじめ定められた搭乗モード用の値を設定する。なお、定数パラメータは、後述するhx,hy,Ki_a_x,Ki_b_x,Ki_a_y,Ki_b_y(i=1,2,3)等である。
一方、STEP4の判断結果が否定的である場合には、制御ユニット50は、基体傾斜角度θb_xyの標準目標値θb_xy_objを設定する処理と、車両1の動作制御用の定数パラメータの値を設定する処理とを、STEP7、8で実行する。
STEP7においては、制御ユニット50は、傾斜角度θbの標準目標値θb_xy_objとして、あらかじめ定められた自立モード用の標準目標値を設定する。
ここで、「自立モード」は、車両1に乗員が搭乗していない場合での車両1の動作モードを意味する。この自立モード用の標準目標値θb_xy_objは、車両1単体の重心点(以降、車両単体重心点という)が車輪体5の接地面のほぼ真上に位置する状態となる基体9の姿勢において、傾斜センサ52の出力に基づき計測される基体傾斜角度θbの計測値θb_xy_sに一致又はほぼ一致するようにあらかじめ設定されている。この自立モード用の標準目標値θb_xy_objは、搭乗モード用の標準目標値θb_xy_objと一般的には異なる。
また、STEP8においては、制御ユニット50は、車両1の動作制御用の定数パラメータの値として、あらかじめ定められた自立モード用の値を設定する。この自立モード用の定数パラメータの値は、搭乗モード用の定数パラメータの値と異なる。
搭乗モードと自立モードとで、上記定数パラメータの値を異ならせるのは、それぞれのモードで上記重心点の高さや、全体質量等が異なることに起因して、制御入力に対する車両1の動作の応答特性が互いに異なるからである。
以上のSTEP4〜8の処理によって、搭乗モード及び自立モードの各動作モード毎に各別に、基体傾斜角度θb_xyの標準目標値θb_xy_objと定数パラメータの値とが設定される。
なお、STEP5,6の処理、又はSTEP7,8の処理は、制御処理周期毎に実行することは必須ではなく、STEP4の判断結果が変化した場合にだけ実行するようにしてもよい。
補足すると、搭乗モード及び自立モードのいずれにおいても、基体傾斜角速度θbdotのY軸周り方向の成分θbdot_xの目標値とX軸周り方向の成分θbdot_yの目標値とは、いずれも“0”である。このため、基体傾斜角速度θbdot_xyの目標値を設定する処理は不要である。
以上の如くSTEP5,6の処理、又はSTEP7,8の処理を実行した後、制御ユニット50は、次にSTEP9において、車両制御演算処理を実行することによって、電動モータ31R,31Lのそれぞれの速度指令を決定する。この車両制御演算処理の詳細は後述する。
次いで、STEP10に進んで、制御ユニット50は、STEP9で決定した速度指令に応じて電動モータ31R,31Lの動作制御処理を実行する。この動作制御処理では、制御ユニット50は、STEP9で決定した電動モータ31Rの速度指令と、ロータリエンコーダ56Rの出力に基づき計測した電動モータ31Rの回転速度の計測値との偏差に応じて、該偏差を“0”に収束させるように電動モータ31Rの出力トルクの目標値(目標トルク)を決定する。そして、制御ユニット50は、その目標トルクの出力トルクを電動モータ31Rに出力させるように該電動モータ31Rの通電電流を制御する。左側の電動モータ31Lの動作制御についても同様である。
以上が、制御ユニット50が実行する全体的な制御処理である。
次に、上記STEP9の車両制御演算処理の詳細を説明する。
なお、以降の説明においては、前記搭乗モードにおける車両・乗員全体重心点と、前記自立モードにおける車両単体重心点とを総称的に、車両系重心点という。該車両系重心点は、車両1の動作モードが搭乗モードである場合には、車両・乗員全体重心点を意味し、自立モードである場合には、車両単体重心点を意味する。
また、以降の説明では、制御ユニット50が各制御処理周期で決定する値(更新する値)に関し、現在の(最新の)制御処理周期で決定する値を今回値、その1つ前の制御処理周期で決定した値を前回値ということがある。そして、今回値、前回値を特にことわらない値は、今回値を意味する。
また、X軸方向の速度及び加速度に関しては、前方向きを正の向きとし、Y軸方向の速度及び加速度に関しては、左向きを正の向きとする。
本実施形態では、前記車両系重心点の動力学的な挙動(詳しくは、Y軸方向からこれに直交する面(XZ平面)に投影して見た挙動と、X軸方向からこれに直交する面(YZ平面)に投影して見た挙動)が、近似的に、図8に示すような、倒立振子モデルの挙動(倒立振子の動力学的挙動)によって表現されるものとして、STEP9の車両制御演算処理が行なわれる。
なお、図8において、括弧を付していない参照符号は、Y軸方向から見た倒立振子モデルに対応する参照符号であり、括弧付きの参照符号は、X軸方向から見た倒立振子モデルに対応する参照符号である。
この場合、Y軸方向から見た挙動を表現する倒立振子モデルは、車両系重心点に位置する質点60_xと、Y軸方向に平行な回転軸62a_xを有して床面上を輪転自在な仮想的な車輪62_x(以降、仮想車輪62_xという)とを備える。そして、質点60_xが、仮想車輪62_xの回転軸62a_xに直線状のロッド64_xを介して支持され、該回転軸62a_xを支点として該回転軸62a_xの周りに揺動自在とされている。
この倒立振子モデルでは、質点60_xの運動が、Y軸方向から見た車両系重心点の運動に相当する。また、鉛直方向に対するロッド64_xの傾斜角度θbe_xがY軸周り方向での基体傾斜角度計測値θb_x_sと基体傾斜角度θb_xの標準目標値θb_x_objとの偏差θbe_x_s(=θb_x_s−θb_x_obj)に一致するものとされる。また、ロッド64_xの傾斜角度θbe_xの変化速度(=dθbe_x/dt)がY軸周り方向の基体傾斜角速度計測値θbdot_x_sに一致するものとされる。また、仮想車輪62_xの移動速度Vw_x(X軸方向の並進移動速度)は、車両1の車輪体5のX軸方向の移動速度に一致するものとされる。
同様に、X軸方向から見た挙動を表現する倒立振子モデル(図8の括弧付きの符号を参照)は、車両系重心点に位置する質点60_yと、X軸方向に平行な回転軸62a_yを有して床面上を輪転自在な仮想的な車輪62_y(以降、仮想車輪62_yという)とを備える。そして、質点60_yが、仮想車輪62_yの回転軸62a_yに直線状のロッド64_yを介して支持され、該回転軸62a_yを支点として該回転軸62a_yの周りに揺動自在とされている。
この倒立振子モデルでは、質点60_yの運動が、X軸方向から見た車両系重心点の運動に相当する。また、鉛直方向に対するロッド64_yの傾斜角度θbe_yがX軸周り方向での基体傾斜角度計測値θb_y_sと基体傾斜角度θb_yの標準目標値θb_y_objとの偏差θbe_y_s(=θb_y_s−θb_y_obj)に一致するものとされる。また、ロッド64_yの傾斜角度θbe_yの変化速度(=dθbe_y/dt)がX軸周り方向の基体傾斜角速度計測値θbdot_y_sに一致するものとされる。また、仮想車輪62_yの移動速度Vw_y(Y軸方向の並進移動速度)は、車両1の車輪体5のY軸方向の移動速度に一致するものとされる。
なお、仮想車輪62_x,62_yは、それぞれ、あらかじめ定められた所定値Rw_x,Rw_yの半径を有するものとされる。
また、仮想車輪62_x,62_yのそれぞれの回転角速度ωw_x,ωw_yと、電動モータ31R,31Lのそれぞれの回転角速度ω_R,ω_L(より正確には、回転部材27R,27Lのそれぞれの回転角速度ω_R,ω_L)との間には、次式01a,01bの関係が成立するものとされる。

ωw_x=(ω_R+ω_L)/2 ……式01a
ωw_y=C・(ω_R−ω_L)/2 ……式01b

なお、式01bにおける“C”は、前記フリーローラ29R,29Lと車輪体5との間の機構的な関係や滑りに依存する所定値の係数である。また、ωw_x,ω_R,ω_Lの正の向きは、仮想車輪62_xが前方に向かって輪転する場合の該仮想車輪62_xの回転方向、ωw_yの正の向きは、仮想車輪62_yが左向きに輪転する場合の該仮想車輪62_yの回転方向である。
ここで、図8に示す倒立振子モデルの動力学は、次式03x,03yにより表現される。なお、式03xは、Y軸方向から見た倒立振子モデルの動力学を表現する式、式03yは、X軸方向から見た倒立振子モデルの動力学を表現する式である。

2θbe_x/dt2=α_x・θbe_x+β_x・ωwdot_x ……式03x
2θbe_y/dt2=α_y・θbe_y+β_y・ωwdot_y ……式03y

式03xにおけるωwdot_xは仮想車輪62_xの回転角加速度(回転角速度ωw_xの1階微分値)、α_xは、質点60_xの質量や高さh_xに依存する係数、β_xは、仮想車輪62_xのイナーシャ(慣性モーメント)や半径Rw_xに依存する係数である。式03yにおけるωwdot_y、α_y、β_yについても上記と同様である。
これらの式03x,03yから判るように、倒立振子の質点60_x,60_yの運動(ひいては車両系重心点の運動)は、それぞれ、仮想車輪62_xの回転角加速度ωwdot_x、仮想車輪62_yの回転角加速度ωwdot_yに依存して規定される。
そこで、本実施形態では、Y軸方向から見た車両系重心点の運動を制御するための操作量(制御入力)として、仮想車輪62_xの回転角加速度ωwdot_xを用いると共に、X軸方向から見た車両系重心点の運動を制御するための操作量(制御入力)として、仮想車輪62_yの回転角加速度ωwdot_yを用いる。
そして、STEP9の車両制御演算処理を概略的に説明すると、制御ユニット50は、X軸方向で見た質点60_xの運動と、Y軸方向で見た質点60_yの運動とが、車両系重心点の所望の運動に対応する運動となるように、操作量としての上記回転角加速度ωwdot_x,ωwdot_yの指令値(目標値)である仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する。さらに、制御ユニット50は、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdをそれぞれ積分してなる値を、仮想車輪62_x,62_yのそれぞれの回転角速度ωw_x,ωw_yの指令値(目標値)である仮想車輪回転角速度指令ωw_x_cmd,ωw_y_cmdとして決定する。
そして、制御ユニット50は、仮想車輪回転角速度指令ωw_x_cmdに対応する仮想車輪62_xの移動速度(=Rw_x・ωw_x_cmd)と、仮想車輪回転角速度指令ωw_y_cmdに対応する仮想車輪62_yの移動速度(=Rw_y・ωw_y_cmd)とを、それぞれ、車両1の車輪体5のX軸方向の目標移動速度、Y軸方向の目標移動速度とし、それらの目標移動速度を実現するように、電動モータ31R,31Lのそれぞれの速度指令ω_R_cmd,ωL_cmdを決定する。
なお、本実施形態では、操作量(制御入力)としての上記仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdは、それぞれ、後述する式07x,07yに示す如く、3個の操作量成分を加え合わせることによって決定される。
補足すると、本実施形態における操作量(制御入力)としての上記仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdのうち、ωwdot_x_cmdは、X軸方向に移動する仮想車輪62_xの回転角加速度であるから、車輪体5をX軸方向に移動させるために該車輪体5に付与すべき駆動力を規定する操作量として機能するものとなる。また、ωwdot_y_cmdは、Y軸方向に移動する仮想車輪62_yの回転角加速度であるから、車輪体5をY軸方向に移動させるために該車輪体5に付与すべき駆動力を規定する操作量として機能するものとなる。
制御ユニット50は、上記の如き、STEP9の車両制御演算処理を実行するための機能として、図9のブロック図で示す機能を備えている。
すなわち、制御ユニット50は、前記車両系重心点の移動速度である重心速度Vb_xyの観測値としての重心速度推定値Vb_xy_sを算出する重心速度算出部72と、電動モータ31R,31Lの回転角速度の許容範囲に応じた制限を加味して、重心速度Vb_xyの目標値としての制御用目標重心速度Vb_xy_mdfdを決定する重心速度制限部76と、後述する式07x,07yのゲイン係数の値を調整するためのゲイン調整パラメータKr_xyを決定するゲイン調整部78とを備える。
制御ユニット50は、さらに、前記仮想車輪回転角速度指令ωw_xy_cmdを算出する姿勢制御演算部80と、この仮想車輪回転角速度指令ωw_xy_cmdを、右側の電動モータ31Rの速度指令ω_R_cmd(回転角速度の指令値)と左側の電動モータ31Lの速度指令ω_L_cmd(回転角速度の指令値)との組に変換するモータ指令演算部82とを備える。
なお、図9中の参照符号84を付したものは、姿勢制御演算部70が制御処理周期毎に算出する仮想車輪回転角速度指令ωw_xy_cmdを入力する遅延要素を示している。該遅延要素84は、各制御処理周期において、仮想車輪回転角速度指令ωw_xy_cmdの前回値ωw_xy_cmd_pを出力する。
前記STEP9の車両制御演算処理では、これらの上記の各処理部の処理が以下に説明するように実行される。
すなわち、制御ユニット50は、まず、重心速度算出部72の処理を実行する。
前記重心速度算出部72には、前記STEP2で算出された基体傾斜角速度計測値θbdot_xy_s(θbdot_x_s及びθbdot_y_s)の今回値が入力されると共に、仮想車輪速度指令ωw_xy_cmdの前回値ωw_xy_cmd_p(ωw_x_cmd_p及びωw_y_cmd_p)が遅延要素84から入力される。そして、重心速度算出部72は、これらの入力値から、前記倒立振子モデルに基づく所定の演算式によって、重心速度推定値Vb_xy_s(Vb_x_s及びVb_y_s)を算出する。
具体的には、重心速度算出部72は、次式05x,05yにより、Vb_x_s及びVb_y_sをそれぞれ算出する。

Vb_x_s=Rw_x・ωw_x_cmd_p+h_x・θbdot_x_s ……05x
Vb_y_s=Rw_y・ωw_y_cmd_p+h_y・θbdot_y_s ……05y

これらの式05x,05yにおいて、Rw_x,Rw_yは、前記したように、仮想車輪62_x,62_yのそれぞれの半径であり、これらの値は、あらかじめ設定された所定値である。また、h_x,h_yは、それぞれ倒立振子モデルの質点60_x,60_yの高さである。この場合、本実施形態では、車両系重心点の高さは、ほぼ一定に維持されるものとされる。そこで、h_x,h_yの値としては、それぞれ、あらかじめ設定された所定値が用いられる。補足すると、高さh_x,h_yは、前記STEP6又は8において値を設定する定数パラメータに含まれるものである。
上記式05xの右辺の第1項は、仮想車輪62_xの速度指令の前回値ωw_x_cmd_pに対応する該仮想車輪62_xのX軸方向の移動速度であり、この移動速度は、車輪体5のX軸方向の実際の移動速度の現在値に相当するものである。また、式05xの右辺の第2項は、基体9がY軸周り方向にθbdot_x_sの傾斜角速度で傾動することに起因して生じる車両系重心点のX軸方向の移動速度(車輪体5に対する相対的な移動速度)の現在値に相当するものである。これらのことは、式05yについても同様である。
なお、前記ロータリエンコーダ56R,56Lの出力を基に計測される電動モータ31R,31Lのそれぞれの回転角速度の計測値(今回値)の組を、仮想車輪62_x,62_yのそれぞれの回転角速度の組に変換し、それらの回転角速度を、式05x、05yのωw_x_cmd_p、ωw_y_cmd_pの代わりに用いてもよい。ただし、回転角速度の計測値に含まれるノイズの影響を排除する上では、目標値であるωw_x_cmd_p、ωw_y_cmd_pを使用することが有利である。
次に、制御ユニット50は、重心速度制限部76の処理とゲイン調整部78の処理とを実行する。この場合、重心速度制限部76及びゲイン調整部78には、それぞれ、重心速度算出部72で上記の如く算出された重心速度推定値Vb_xy_s(Vb_x_s及びVb_y_s)が入力される。
そして、ゲイン調整部78は、入力された重心速度推定値Vb_xy_s(Vb_x_s及びVb_y_s)を基に、前記ゲイン調整パラメータKr_xy(Kr_x及びKr_y)を決定する。
このゲイン調整部78の処理を図10及び図11を参照して以下に説明する。
図10に示すように、ゲイン調整部78は、入力された重心速度推定値Vb_x_s,Vb_y_sをリミット処理部86に入力する。このリミット処理部86では、重心速度推定値Vb_x_s,Vb_y_sに、電動モータ31R,31Lのそれぞれの回転角速度の許容範囲に応じた制限を適宜、加えることによって、出力値Vw_x_lim1,Vw_y_lim1を生成する。出力値Vw_x_lim1は、前記仮想車輪62_xのX軸方向の移動速度Vw_xの制限後の値、出力値Vw_y_lim1は、前記仮想車輪62_yのY軸方向の移動速度Vw_yの制限後の値としての意味を持つ。
このリミット処理部86の処理を、図11を参照してさらに詳細に説明する。なお、図11中の括弧付きの参照符号は、後述する重心速度制限部76のリミット処理部104の処理を示すものであり、リミット処理部86の処理に関する説明では無視してよい。
リミット処理部86は、まず、重心速度推定値Vb_x_s,Vb_y_sをそれぞれ処理部86a_x,86a_yに入力する。処理部86a_xは、Vb_x_sを仮想車輪62_xの半径Rw_xで除算することによって、仮想車輪62_xのX軸方向の移動速度をVb_x_sに一致させたと仮定した場合の該仮想車輪62_xの回転角速度ωw_x_sを算出する。同様に、処理部86a_yは、仮想車輪62_yのY軸方向の移動速度をVb_y_sに一致させたと仮定した場合の該仮想車輪62_yの回転角速度ωw_y_s(=Vb_y_s/Rw_y)を算出する。
次いで、リミット処理部86は、ωw_x_s,ωw_y_sの組を、XY−RL変換部86bにより、電動モータ31Rの回転角速度ω_R_sと電動モータ31Lの回転角速度ω_L_sとの組に変換する。
この変換は、本実施形態では、前記式01a,01bのωw_x,ωw_y,ω_R,ω_Lをそれぞれ、ωw_x_s,ωw_y_s,ω_R_s,ω_L_sに置き換えて得られる連立方程式を、ω_R_s,ω_L_sを未知数として解くことにより行なわれる。
次いで、リミット処理部86は、XY−RL変換部86bの出力値ω_R_s,ω_L_sをそれぞれ、リミッタ86c_R,86c_Lに入力する。このとき、リミッタ86c_Rは、ω_R_sが、あらかじめ設定された所定値の上限値(>0)と下限値(<0)とを有する右モータ用許容範囲内に収まっている場合には、ω_R_sをそのまま出力値ω_R_lim1として出力する。また、リミッタ86c_Rは、ω_R_sが、右モータ用許容範囲から逸脱している場合には、該右モータ用許容範囲の上限値と下限値とのうちのω_R_sに近い方の境界値を出力値ω_R_lim1として出力する。これにより、リミッタ86c_Rの出力値ω_R_lim1は、右モータ用許容範囲内の値に制限される。
同様に、リミッタ86c_Lは、ω_L_sが、あらかじめ設定された所定値の上限値(>0)と下限値(<0)とを有する左モータ用許容範囲内に収まっている場合には、ω_L_sをそのまま出力値ω_L_lim1として出力する。また、リミッタ86c_Lは、ω_L_sが、左モータ用許容範囲から逸脱している場合には、該左モータ用許容範囲の上限値と下限値とのうちのω_L_sに近い方の境界値を出力値ω_L_lim1として出力する。これにより、リミッタ86c_Lの出力値ω_L_lim1は、左モータ用許容範囲内の値に制限される。
上記右モータ用許容範囲は右側の電動モータ31Rの回転角速度(絶対値)が高くなり過ぎないようにし、ひいては、電動モータ31Rが出力可能なトルクの最大値が低下するのを防止するために設定された許容範囲である。このことは、左モータ用許容範囲についても同様である。
次いで、リミット処理部86は、リミッタ86c_R,86c_Lのそれぞれの出力値ω_R_lim1,ω_L_lim1の組を、RL−XY変換部86dにより、仮想車輪62_x,62_yのそれぞれの回転角速度ωw_x_lim1,ωw_y_lim1の組に変換する。
この変換は、前記XY−RL変換部86bの変換処理の逆変換の処理である。この処理は、前記式01a,01bのωw_x,ωw_y,ω_R,ω_Lをそれぞれ、ωw_x_lim1,ωw_y_lim1,ω_R_lim1,ω_L_lim1に置き換えて得られる連立方程式を、ωw_x_lim1,ωw_y_lim1を未知数として解くことにより行なわれる。
次いで、リミット処理部86は、RL−XY変換部86dの出力値ωw_x_lim1,ωw_y_lim1をそれぞれ処理部86e_x,86e_yに入力する。処理部86e_xは、ωw_x_lim1に仮想車輪62_xの半径Rw_xを乗じることによって、ωw_x_lim1を仮想車輪62_xの移動速度Vw_x_lim1に変換する。同様に、処理部86e_yは、ωw_y_lim1を仮想車輪62_yの移動速度Vw_y_lim1(=ωw_y_lim1・Rw_y)に変換する。
以上のリミット処理部86の処理によって、仮想車輪62_xのX軸方向の移動速度Vw_xと、仮想車輪62_yのY軸方向の移動速度Vw_yとをそれぞれ重心速度推定値Vb_x_s,Vb_y_sに一致させたと仮定した場合(換言すれば、車輪体5のX軸方向の移動速度とY軸方向の移動速度とをそれぞれ、Vb_x_s,Vb_y_sに一致させたと仮定した場合)に、それらの移動速度を実現するために必要な電動モータ31R,31Lのそれぞれの回転角速度ω_R_s,ω_L_sが、両方とも、許容範囲内に収まっている場合には、Vb_x_s,Vb_y_sにそれぞれ一致する出力値Vw_x_lim1,Vw_y_lim1の組がリミット処理部86から出力される。
一方、電動モータ31R,31Lのそれぞれの回転角速度ω_R_s,ω_L_sの両方又は一方が許容範囲から逸脱している場合には、その両方又は一方の回転角速度が強制的に許容範囲内に制限された上で、その制限後の電動モータ31R,31Lのそれぞれの回転角速度ω_R_lim1,ω_L_lim1の組に対応する、X軸方向及びY軸方向の移動速度Vw_x_lim1,Vw_y_lim1の組がリミット処理部86から出力される。
従って、リミット処理部86は、その出力値Vw_x_lim1,Vw_y_lim1の組に対応する電動モータ31R,31Lのそれぞれの回転角速度が許容範囲を逸脱しないことを必須の必要条件として、その必要条件下で可能な限り、出力値Vw_x_lim1,Vw_y_lim1をそれぞれVb_x_s,Vb_y_sに一致させるように、出力値Vw_x_lim1,Vw_y_lim1の組を生成する。
図10の説明に戻って、ゲイン調整部78は、次に、演算部88_x,88_yの処理を実行する。演算部88_xには、X軸方向の重心速度推定値Vb_x_sと、リミット処理部86の出力値Vw_x_lim1とが入力される。そして、演算部88_xは、Vw_x_lim1からVb_x_sを減算してなる値Vover_xを算出して出力する。また、演算部88_yには、Y軸方向の重心速度推定値Vb_y_sと、リミット処理部86の出力値Vw_y_lim1とが入力される。そして、演算部88_yは、Vw_y_lim1からVb_y_sを減算してなる値Vover_yを算出して出力する。
この場合、リミット処理部86での出力値Vw_x_lim1,Vw_y_lim1の強制的な制限が行なわれなかった場合には、Vw_x_lim1=Vb_x_s、Vw_y_lim1=Vb_y_sとなるので、演算部88_x,88_yのそれぞれの出力値Vover_x,Vover_yはいずれも“0”となる。
一方、リミット処理部86の出力値Vw_x_lim1,Vw_y_lim1が、入力値Vb_x_s,Vb_y_sに対して強制的な制限を施して生成された場合には、Vw_x_lim1のVb_x_sからの修正量(=Vw_x_lim1−Vb_x_s)と、Vw_y_lim1のVb_y_sからの修正量(=Vw_y_lim1−Vb_y_s)とがそれぞれ、演算部88_x,88_yから出力される。
次いで、ゲイン調整部78は、演算部88_xの出力値Vover_xを処理部90_x,92_xに順番に通すことによって、ゲイン調整パラメータKr_xを決定する。また、ゲイン調整部78は、演算部88_yの出力値Vover_yを処理部90_y,92_yに順番に通すことによって、ゲイン調整パラメータKr_yを決定する。なお、ゲイン調整パラメータKr_x,Kr_yは、いずれも“0”から“1”までの範囲内の値である。
上記処理部90_xは、入力されるVover_xの絶対値を算出して出力する。また、処理部92_xは、その出力値Kr_xが入力値|Vover_x|に対して単調に増加し、且つ、飽和特性を有するようにKr_xを生成する。該飽和特性は、入力値がある程度大きくなると、入力値の増加に対する出力値の変化量が“0”になるか、もしくは、“0”に近づく特性である。
この場合、本実施形態では、処理部92_xは、入力値|Vover_x|があらかじめ設定された所定値以下である場合には、該入力値|Vover_x|に所定値の比例係数を乗じてなる値をKr_xとして出力する。また、処理部92_xは、入力値|Vover_x|が所定値よりも大きい場合には、“1”をKr_xとして出力する。なお、上記比例係数は、|Vover_x|が所定値に一致するときに、|Vover_x|と比例係数との積が“1”になるように設定されている。
また、処理部90_y,92_yの処理は、それぞれ上記した処理部90_x,92_xの処理と同様である。
以上説明したゲイン調整部78の処理によって、リミット処理部86での出力値Vw_x_lim1,Vw_y_lim1の強制的な制限が行なわれなかった場合、すなわち、車輪体5のX軸方向及びY軸方向のそれぞれの移動速度Vw_x,Vw_yを、それぞれ、重心速度推定値Vb_x_s,Vb_y_sに一致させるように電動モータ31R,31Lを動作させても、電動モータ31R,31Lのそれぞれの回転角速度が許容範囲内に収まるような場合には、ゲイン調整パラメータKr_x,Kr_yはいずれも“0”に決定される。従って、通常は、Kr_x=Kr_y=0である。
一方、リミット処理部86の出力値Vw_x_lim1,Vw_y_lim1が、入力値Vb_x_s,Vb_y_sに対して強制的な制限を施して生成された場合、すなわち、車輪体5のX軸方向及びY軸方向のそれぞれの移動速度Vw_x,Vw_yを、それぞれ、重心速度推定値Vb_x_s,Vb_y_sに一致させるように電動モータ31R,31Lを動作させると、電動モータ31R,31Lのいずれかの回転角速度が許容範囲を逸脱してしまう場合(いずれかの回転角速度の絶対値が高くなり過ぎる場合)には、前記修正量Vover_x,Vover_yのそれぞれの絶対値に応じて、ゲイン調整パラメータKr_x,Kr_yの値がそれぞれ決定される。この場合、Kr_xは、“1”を上限値して、修正量Vx_overの絶対値が大きいほど、大きな値になるように決定される。このことは、Kr_yについても同様である。
また、前記重心速度制限部76は、入力された重心速度推定値Vb_xy_s(Vb_x_s及びVb_y_s)を使用して、図12のブロック図で示す処理を実行することによって、制御用目標重心速度Vb_xy_mdfd(Vb_x_mdfd及びVb_y_mdfd)を決定する。
具体的には、重心速度制限部76は、まず、定常偏差算出部94_x,94_yの処理を実行する。
この場合、定常偏差算出部94_xには、X軸方向の重心速度推定値Vb_x_sが入力されると共に、X軸方向の制御用目標重心速度Vb_x_mdfdの前回値Vb_x_mdfd_pが遅延要素96_xを介して入力される。そして、定常偏差算出部94_xは、まず、入力されるVb_x_sが比例・微分補償要素(PD補償要素)94a_xに入力する。この比例・微分補償要素94_xは、その伝達関数が1+Kd・Sにより表される補償要素であり、入力されるVb_x_sと、その微分値(時間的変化率)に所定値の係数Kdを乗じてなる値とを加算し、その加算結果の値を出力する。
次いで、定常偏差算出部94_xは、入力されるVb_x_mdfd_pを、比例・微分補償要素94_xの出力値から減算してなる値を演算部94b_xにより算出した後、この演算部94b_xの出力値を、位相補償機能を有するローパスフィルタ94c_xに入力する。このローパスフィルタ94c_xは、伝達関数が(1+T2・S)/(1+T1・S)により表されるフィルタである。そして、定常偏差算出部94_xは、このローパスフィルタ94c_xの出力値Vb_x_prdを出力する。
また、定常偏差算出部94_yには、Y軸方向の重心速度推定値Vb_y_sが入力されると共に、Y軸方向の制御用目標重心速度Vb_y_mdfdの前回値Vb_y_mdfd_pが遅延要素96_yを介して入力される。
そして、定常偏差算出部94_yは、上記した定常偏差算出部94_xと同様に、比例・微分補償要素94a_y、演算部94b_y及びローパスフィルタ94c_yの処理を順次実行し、ローパスフィルタ94c_yの出力値Vb_y_prdを出力する。
ここで、定常偏差算出部94_xの出力値Vb_x_prdは、Y軸方向から見た車両系重心点の現在の運動状態(換言すればY軸方向から見た倒立振子モデルの質点60_xの運動状態)から推測される、将来のX軸方向の重心速度推定値の収束予測値の制御用目標重心速度Vb_x_mdfdに対する定常偏差としての意味を持つものである。同様に、定常偏差算出部94_y出力値Vb_y_prdは、X軸方向から見た車両系重心点の現在の運動状態(換言すればX軸方向から見た倒立振子モデルの質点60_yの運動状態)から推測される、将来のY軸方向の重心速度推定値の収束予測値の制御用目標重心速度Vb_y_mdfdに対する定常偏差としての意味を持つものである。以降、定常偏差算出部94_x,94_yのそれぞれの出力値Vb_x_prd,Vb_y_prdを重心速度定常偏差予測値という。
重心速度制限部76は、上記の如く定常偏差算出部94_x,94_yの処理を実行した後、上記重心速度定常偏差予測値Vb_x_prd,Vb_y_prdをリミット処理部100に入力する。このリミット処理部100の処理は、前記したゲイン調整部78のリミット処理部86の処理と同じである。この場合、図11に括弧付きに参照符号で示す如く、リミット処理部100の各処理部の入力値及び出力値だけがリミット処理部86と相違する。
具体的には、リミット処理部100では、前記仮想車輪62_x,62_yのそれぞれの移動速度Vw_x,Vw_yを、Vb_x_prd,Vb_y_prdにそれぞれ一致させたと仮定した場合の各仮想車輪62_x,62_yの回転角速度ωw_x_t,ωw_y_tがそれぞれ処理部86a_x,86a_yにより算出される。そして、この回転角速度ωw_x_t,ωw_y_tの組が、XY−RL変換部86bにより、電動モータ31R,31Lの回転角速度ω_R_t,ω_L_tの組に変換される。
さらに、これらの回転角速度ω_R_t,ω_L_tが、リミッタ86c_R,86c_Lによって、それぞれ、右モータ用許容範囲内の値と左モータ用許容範囲内の値とに制限される。そして、この制限処理後の値ω_R_lim2,ω_L_lim2が、RL−XY変換部86dによって、仮想車輪62_x,62_yの回転角速度ωw_x_lim2,ωw_y_lim2に変換される。
次いで、この各回転角速度ωw_x_lim2,ωw_y_lim2に対応する各仮想車輪62_x,62_yの移動速度Vw_x_lim2,Vw_y_lim2がそれぞれ処理部86e_x,86e_yによって算出され、これらの移動速度Vw_x_lim2,Vw_y_lim2がリミット処理部100から出力される。
以上のリミット処理部100の処理によって、リミット処理部100は、リミット処理部86と同様に、その出力値Vw_x_lim2,Vw_y_lim2の組に対応する電動モータ31R,31Lのそれぞれの回転角速度が許容範囲を逸脱しないことを必須の必要条件として、その必要条件下で可能な限り、出力値Vw_x_lim2,Vw_y_lim2をそれぞれVb_x_t,Vb_y_tに一致させるように、出力値Vw_x_lim2,Vw_y_lim2の組を生成する。
なお、リミット処理部100における右モータ用及び左モータ用の各許容範囲は、リミット処理部86における各許容範囲と同一である必要はなく、互いに異なる許容範囲に設定されていてもよい。
図12の説明に戻って、重心速度制限部76は、次に、演算部102_x,102_yの処理を実行することによって、それぞれ制御用目標重心速度Vb_x_mdfd,Vb_y_mdfdを算出する。この場合、演算部102_xは、リミット処理部100の出力値Vw_x_lim2から、X軸方向の重心速度定常偏差予測値Vb_x_prdを減算してなる値をX軸方向の制御用目標重心速度Vb_x_mdfdとして算出する。同様に、演算部102_yは、リミット処理部100の出力値Vw_y_lim2から、Y軸方向の重心速度定常偏差予測値Vb_y_prdを減算してなる値をY軸方向の制御用目標重心速度Vb_y_mdfdとして算出する。
以上のようにして決定される制御用目標重心速度Vb_x_mdfd,Vb_y_mdfdは、リミット処理部100での出力値V_x_lim2,V_y_lim2の強制的な制限が行なわれなかった場合、すなわち、車輪体5のX軸方向及びY軸方向のそれぞれの移動速度を、それぞれ、重心速度定常偏差予測値Vb_x_prd,Vb_y_prdに一致させるように電動モータ31R,31Lを動作させても、電動モータ31R,31Lのそれぞれの回転角速度が許容範囲内に収まるような場合には、制御用目標重心速度Vb_x_mdfd,Vb_y_mdfdはいずれも“0”に決定される。従って、通常は、Vb_x_mdfd=Vb_y_mdfd=0である。
一方、リミット処理部100の出力値Vw_x_lim2,Vw_y_lim2が、入力値Vb_x_t,Vb_y_tに対して強制的な制限を施して生成された場合、すなわち、車輪体5のX軸方向及びY軸方向のそれぞれの移動速度を、それぞれ、重心速度定常偏差予測値Vb_x_prd,Vb_y_prdに一致させるように電動モータ31R,31Lを動作させると、電動モータ31R,31Lのいずれかの回転角速度が許容範囲を逸脱してしまう場合(いずれかの回転角速度の絶対値が高くなり過ぎる場合)には、X軸方向については、リミット処理部100の出力値Vw_x_lim2の入力値Vb_x_prdからの修正量(=Vw_x_lim2−Vb_x_prd)が、X軸方向の制御用目標重心速度Vb_x_mdfdとして決定される。
また、Y軸方向については、リミット処理部100の出力値Vw_y_lim2の入力値Vb_y_prdからの修正量(=Vw_y_lim2−Vb_y_prd)が、Y軸方向の制御用目標重心速度Vb_y_mdfdとして決定される。
この場合において、例えばX軸方向の速度に関し、制御用目標重心速度Vb_x_mdfdは、定常偏差算出部94_xが出力するX軸方向の重心速度定常偏差予測値Vb_x_prdと逆向きの速度となる。このことは、Y軸方向の速度に関しても同様である。
以上が、重心速度制限部76の処理である。
図9の説明に戻って、制御ユニット50は、以上の如く重心速度制限部76、およびゲイン調整部78の処理を実行した後、次に、姿勢制御演算部80の処理を実行する。
この姿勢制御演算部80の処理を、以下に図13を参照して説明する。なお、図13において、括弧を付していない参照符号は、X軸方向に輪転する仮想車輪62_xの回転角速度の目標値である前記仮想車輪回転角速度指令ωw_x_cmdを決定する処理に係わる参照符号であり、括弧付きの参照符合は、Y軸方向に輪転する仮想車輪62_yの回転角速度の目標値である前記仮想車輪回転角速度指令ωw_y_cmdを決定する処理に係わる参照符号である。
姿勢制御演算部80には、基体傾斜角度計測値θb_xy_sと、基体傾斜角度θb_xyの標準目標値θb_xy_objと、前記STEP2で算出された基体傾斜角速度計測値θbdot_xy_sと、重心速度算出部72で算出された重心速度推定値Vb_xy_sと、重心速度制限部76で算出された目標重心速度Vb_xy_mdfdと、ゲイン調整部78で算出されたゲイン調整パラメータKr_xyとが入力される。
そして、姿勢制御演算部80は、まず、これらの入力値と、後述するが如く適宜更新される傾斜オフセット調整量θb_xy_offsetとを用いて、次式07x,07yにより、仮想車輪回転角加速度指令ωdotw_xy_cmdを算出する。なお、詳細は後述するが、次式07x,07yにおいて、基体傾斜角度偏差計測値θbe_x_sは、基体傾斜角度計測値θb_x_sと標準目標値θb_x_objとの偏差(θb_x_s−θb_x_obj)であり、基体傾斜角度計測値θb_y_sと標準目標値θb_y_objとの偏差(θb_y_s−θb_y_obj)である。

ωwdot_x_cmd=K1_x・(θbe_x_s−θb_x_offset)+K2_x・θbdot_x_s
+K3_x・(Vb_x_s−Vb_x_mdfd) ……式07x
ωwdot_y_cmd=K1_y・(θbe_y_s−θb_y_offset)+K2_y・θbdot_y_s
+K3_y・(Vb_y_s−Vb_y_mdfd) ……式07y

従って、本実施形態では、Y軸方向から見た倒立振子モデルの質点60_xの運動(ひいては、Y軸方向から見た車両系重心点の運動)を制御するための操作量(制御入力)としての仮想車輪回転角加速度指令ωdotw_x_cmdと、X軸方向から見た倒立振子モデルの質点60_yの運動(ひいては、X軸方向から見た車両系重心点の運動)を制御するための操作量(制御入力)としての仮想車輪回転角加速度指令ωdotw_y_cmdとは、それぞれ、3つの操作量成分(式07x,07yの右辺の3つの項)を加え合わせることによって決定される。
この場合、姿勢制御演算部80は、その演算処理モードとして、第1モードと第2モードとを有する。
第1モードでは、基体傾斜角度偏差推定値計測値θbe_xy_sを調整する傾斜オフセット調整量θb_xy_offsetが逐次更新される演算処理が実行される。このとき、式07x,07yにおける傾斜オフセット調整量θb_xy_offsetは、その前回値の値が入力される。また、第1モードによる傾斜オフセット調整量θb_xy_offsetの更新は、前記搭乗モードと自立モードとの各動作モードで別々に行われる。
第2モードでは、傾斜オフセット調整量θb_xy_offsetの更新は行われず、一定の値に保たれる。すなわち、第2モードでは、傾斜オフセット調整量θb_xy_offsetとして、各動作モード毎の第1モードで最終的に更新された値を用いて、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdが決定される。
なお、式07x,07yにおいて、基体傾斜角度計測値θb_xy_sが基準となる基体傾斜角度θb_xyの標準目標値θb_xy_objと一致するべき前記基準状態において基体傾斜角度計測値θb_xy_sと標準目標値θb_xy_objとの間にずれが生じていない場合には、傾斜オフセット調整量θb_xy_offsetが0となる。
これらの式07x,07yにおけるゲイン係数K1_x,K1_yは、基体9(又はシート3)の傾斜角度に関するフィードバックゲイン、ゲイン係数K2_x,K2_yは、基体9(又はシート3)の傾斜角速度(傾斜角度の時間的変化率)に関するフィードバックゲイン、ゲイン係数K3_x,K3_yは、車両系重心点(車両1の所定の代表点)の移動速度に関するフィードバックゲインとしての意味を持つものである。
また、式07xにおける各操作量成分に係わるゲイン係数K1_x,K2_x,K3_xは、ゲイン調整パラメータKr_xに応じて可変的に設定され、式07yにおける各操作量成分に係わるゲイン係数K1_y,K2_y,K3_yは、ゲイン調整パラメータKr_yに応じて可変的に設定される。以降、式07xにおけるゲイン係数K1_x,K2_x,K3_xのそれぞれを第1ゲイン係数K1_x、第2ゲイン係数K2_x、第3ゲイン係数K3_xということがある。このことは、式07yにおけるゲイン係数K1_y,K2_y,K3_yについても同様とする。
式07xにおける第iゲイン係数Ki_x(i=1,2,3)と、式07yにおける第iゲイン係数Ki_y(i=1,2,3)とは、図13中にただし書きで示した如く、次式09x、09yにより、ゲイン調整パラメータKr_x,Kr_yに応じて決定される。

Ki_x=(1−Kr_x)・Ki_a_x+Kr_x・Ki_b_x ……式09x
Ki_y=(1−Kr_y)・Ki_a_y+Kr_y・Ki_b_y ……式09y
(i=1,2,3)

ここで、式09xにおけるKi_a_x、Ki_b_xは、それぞれ、第iゲイン係数Ki_xの最小側(“0”に近い側)のゲイン係数値、最大側(“0”から離れる側)のゲイン係数値としてあらかじめ設定された定数値である。このことは、式09yにおけるKi_a_y、Ki_b_yについても同様である。
従って、式07xの演算に用いる各第iゲイン係数Ki_x(i=1,2,3)は、それぞれに対応する定数値Ki_a_x、Ki_b_xの重み付き平均値として決定される。そして、この場合、Ki_a_x、Ki_b_xにそれぞれ掛かる重みが、ゲイン調整パラメータKr_xに応じて変化させられる。このため、Kr_x=0である場合には、Ki_x=Ki_a_xとなり、Kr_x=1である場合には、Ki_x=Ki_b_xとなる。そして、Kr_xが“0”から“1”に近づくに伴い、第iゲイン係数Ki_xはKi_a_xからKi_b_x近づいていく。
同様に、式07yの演算に用いる各第iゲイン係数Ki_y(i=1,2,3)は、それぞれに対応する定数値Ki_a_y、Ki_b_yの重み付き平均値として決定される。そして、この場合、Ki_a_y、Ki_b_yにそれぞれ掛かる重みが、ゲイン調整パラメータKr_yに応じて変化させられる。このため、Ki_xの場合と同様に、Kr_yの値が“0”から“1”の間で変化するに伴い、第iゲイン係数Ki_yの値が、Ki_a_yとKi_b_yとの間で変化する。
補足すると、上記定数値Ki_a_x、Ki_b_x及びKi_a_y,Ki_b_y(i=1,2,3)は、前記STEP6又は8において値が設定される定数パラメータに含まれるものである。
姿勢制御演算部80は、上記の如く決定した第1〜第3ゲイン係数K1_x,K2_x,K3_xを用いて前記式07xの演算を行なうことで、X軸方向に輪転する仮想車輪62_xに係わる仮想車輪回転角加速度指令ωwdot_x_cmdを算出する。
さらに詳細には、図13を参照して、姿勢制御演算部80は、基体傾斜角度計測値θb_x_sと標準目標値θb_x_objとの偏差である基体傾斜角度偏差計測値θbe_x_sから更に傾斜オフセット調整量θb_x_offsetを減算した値を演算部80αで算出し、かかる値に第1ゲイン係数K1_xを乗じてなる操作量成分u1_xを処理部80aで算出する。また、姿勢制御演算部80は、基体傾斜角速度計測値θbdot_x_sに第2ゲイン係数K2_xを乗じてなる操作量成分u2_xを80bで算出する。さらに、姿勢制御演算部80は、重心速度推定値Vb_x_sと制御用目標重心速度Vb_x_mdfdとの偏差(=Vb_x_s−Vb_x_mdfd)を演算部80βで算出し、この偏差に第3ゲイン係数K3_xを乗じてなる操作量成分u3_xを処理部80cで算出する。そして、姿勢制御演算部80は、これらの操作量成分u1_x,u2_x,u3_xを演算部80eにて加え合わせることにより、仮想車輪回転角加速度指令ωwdot_x_cmdを算出する。
同様に、姿勢制御演算部80は、上記の如く決定した第1〜第3ゲイン係数K1_y,K2_y,K3_yを用いて前記式07yの演算を行なうことで、Y軸方向に輪転する仮想車輪62_yに係わる仮想車輪回転角加速度指令ωwdot_y_cmdを算出する。
この場合には、姿勢制御演算部80は、基体傾斜角度計測値θb_y_sと標準目標値θb_y_objとの偏差である基体傾斜角度偏差計測値θbe_y_sから更に傾斜オフセット調整量θb_y_offsetを減算した値を演算部80αで算出し、かかる値に第1ゲイン係数K1_yを乗じてなる操作量成分u1_yを処理部80aで算出する。また、姿勢制御演算部80は、基体傾斜角速度計測値θbdot_y_sに第2ゲイン係数K2_yを乗じてなる操作量成分u2_yを80bで算出する。さらに、姿勢制御演算部80は、重心速度推定値Vb_y_sと制御用目標重心速度Vb_y_mdfdとの偏差(=Vb_y_s−Vb_y_mdfd)を演算部80βで算出し、この偏差に第3ゲイン係数K3_yを乗じてなる操作量成分u3_yを処理部80cで算出する。そして、姿勢制御演算部80は、これらの操作量成分u1_y,u2_y,u3_yを演算部80eにて加え合わせることにより、仮想車輪回転角加速度指令ωwdot_x_cmdを算出する。
ここで、式07xの右辺の第1項(=第1操作量成分u1_x)は、X軸周り方向での基体傾斜角度偏差計測値θbe_x_sを傾斜オフセット調整量θb_x_offsetにより調整した値をフィードバック制御則としてのP則(比例則)により“0”に収束させるためのフィードバック操作量成分としての意味を持つ。
補足すると、傾斜オフセット調整量θb_x_offsetは、基体傾斜角度θbの目標値θb_x_objを傾斜オフセット調整量θb_x_offsetだけ傾斜方向に変位させたことと同値である。すなわち、基体傾斜角度θbの目標値θb_x_objを傾斜オフセット調整量θb_x_offsetだけ傾斜方向に変位させることで、基体傾斜角度計測値θb_x_sを傾斜オフセット調整量θb_x_offsetにより調整された目標値θb_x_objに収束させるものである(見かけ上、基体傾斜角度計測値θb_x_sと傾斜オフセット調整量θb_x_offsetにより調整された標準基体傾斜角度目標値θb_x_objとの偏差θbe_x_sを“0”とみなすものである。)
次に、式07xの右辺の第2項(=第2操作量成分u2_x)は、X軸周り方向での基体傾斜角度偏差計測値θbe_x_sを、フィードバック制御則としてのD則(微分則)により“0”に収束させる(基体傾斜角度計測値θb_x_sを目標値θb_x_objに収束させる)ためのフィードバック操作量成分としての意味を持つ。
また、式07xの右辺の第3項(=第3操作量成分u3_x)は、重心速度推定値Vb_x_sと制御用目標重心速度Vb_x_mdfdとの偏差をフィードバック制御則としての比例則により“0”に収束させる(Vb_x_sをVb_x_mdfdに収束させる)ためのフィードバック操作量成分としての意味を持つ。
これらのことは、式07yの右辺の第1〜第3項(第1〜第3操作量成分u1_y,u2_y,u3_y)についても同様である。
なお、前記したように通常は(より詳しくは、前記重心速度制限部76のリミット処理部100での出力値V_x_lim2,V_y_lim2の強制的な制限が行なわれなかった場合)、制御用目標重心速度Vb_x_mdfd,Vb_y_mdfdは“0”である。そして、Vb_x_mdfd=Vb_y_mdfd=0となる場合は、第3操作量成分u3_x,u3_yは、それぞれ、重心速度推定値Vb_x_s,Vb_y_sに第3ゲイン係数K3_x,K3_yを乗じた値に一致する。
また、式07x,07yにおいて、傾斜オフセット調整量θb_xy_offsetを除いた成分について補足すると、傾斜オフセット調整量θb_xy_offsetを除いた成分により決定される仮想車輪回転角加速度指令ωwdot_xy_cmdが本発明の操作調整量に相当する。すなわち、基体傾斜角度偏差計測値θbe_xy_s(=θb_xy_s−θb_xy_obj)に第1ゲイン係数K1_xyを乗じてなる操作量成分u1_xyと、基体傾斜角速度計測値θbdot_xy_sに第2ゲイン係数K2_xyを乗じてなる操作量成分u2_xyと、重心速度推定値Vb_xy_sと制御用目標重心速度Vb_xy_mdfdとの偏差(=Vb_xy_s−Vb_xy_mdfd)に第3ゲイン係数K3_xyを乗じてなる操作量成分u3_xyと加え合わせた値が操作調整量であり、傾斜オフセット調整量θb_xy_offsetがない場合(θb_xy_offset=0の場合)には、かかる操作調整量が仮想車輪回転角加速度指令ωwdot_xy_cmdとなる。
姿勢制御演算部80は、上記の如く、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを算出した後、次に、これらのωwdot_x_cmd,ωwdot_y_cmdをそれぞれ積分器80fにより積分することによって、前記仮想車輪回転速度指令ωw_x_cmd,ωw_y_cmdを決定する。
以上が姿勢制御演算部80の処理の詳細である。
補足すると、式07xの右辺の第3項を、Vb_x_sに応じた操作量成分(=K3_x・Vb_x_s)と、Vb_x_mdfdに応じた操作量成分(=−K3_x・Vb_x_mdfd)とに分離した式によって、仮想車輪回転角加速度指令ωdotw_x_cmdを算出するようにしてよい。同様に、式07yの右辺の第3項を、Vb_y_sに応じた操作量成分(=K3_y・Vb_y_s)と、Vb_y_mdfdに応じた操作量成分(=−K3_y・Vb_y_mdfd)とに分離した式によって、仮想車輪回転角加速度指令ωdotw_y_cmdを算出するようにしてよい。
また、本実施形態では、車両系重心点の挙動を制御するための操作量(制御入力)として、仮想車輪62_x,62_yの回転角加速度指令ωdotw_x_cmd,ωdotw_y_cmdを用いるようにしたが、例えば、仮想車輪62_x,62_yの駆動トルク、あるいは、この駆動トルクを各仮想車輪62_x,62_yの半径Rw_x,Rw_yで除算してなる並進力(すなわち仮想車輪62_x,62_yと床面との間の摩擦力)を操作量として用いるようにしてもよい。
図9の説明に戻って、制御ユニット50は、次に、姿勢制御演算部80で上記の如く決定した仮想車輪回転速度指令ωw_x_cmd,ωw_y_cmdをモータ指令演算部82に入力し、該モータ指令演算部82の処理を実行することによって、電動モータ31Rの速度指令ω_R_cmdと電動モータ31Lの速度指令ω_L_cmdとを決定する。このモータ指令演算部82の処理は、前記リミット処理部86(図11参照)のXY−RL変換部86bの処理と同じである。
具体的には、モータ指令演算部82は、前記式01a,01bのωw_x,ωw_y,ω_R,ω_Lをそれぞれ、ωw_x_cmd,ωw_y_cmd,ω_R_cmd,ω_L_cmdに置き換えて得られる連立方程式を、ω_R_cmd,ω_L_cmdを未知数として解くことによって、電動モータ31R,31Lのそれぞれの速度指令ω_R_cmd,ω_L_cmdを決定する。
以上により前記STEP9の車両制御演算処理が完了する。
次に、以上説明した制御ユニット50の制御演算処理を実行することにより実現される具体的な処理内容について説明する。
まず、傾斜オフセット調整量θb_xy_offsetがない場合(θb_xy_offset=0の場合)には、前記搭乗モード及び自立モードのいずれの動作モードにおいても、基本的には、シート3及び基体9の姿勢が、前記基体傾斜角度偏差計測値θbe_x_s,θbe_y_sの両方が“0”となる姿勢(以下、この姿勢を基本姿勢という)に保たれている状態では、車両系重心点が静止するように操作量(制御入力)としての仮想車輪回転角加速度指令ωdotw_xy_cmdが決定される。そして、シート3及び基体9の姿勢を前記基本姿勢に対して傾けると、換言すれば、車両系重心点(車両・乗員全体重心点又は車両単体重心点)の水平方向位置を、車輪体5の接地面のほぼ真上に位置する状態から変位させると、シート3及び基体9の姿勢を基本姿勢に復元させるように(θbe_x_s,θbe_y_sを“0”に近づけるか、もしくは“0”に保持するように)、仮想車輪回転角加速度指令ωdotw_xy_cmdが決定される。
そして、ωdotw_xy_cmdの各成分を積分してなる仮想車輪回転角速度指令ωw_xy_cmdを変換してなる電動モータ31R,31Lのそれぞれの回転角速度が、電動モータ31R,31Lの速度指令ω_R_cmd,ω_L_cmdとして決定される。さらに、その速度指令ω_R_cmd,ω_L_cmdに従って、各電動モータ31R,31Lの回転速度が制御される。ひいては車輪体5のX軸方向及びY軸方向のそれぞれの移動速度が、ωw_x_cmdに対応する仮想車輪62_xの移動速度と、ωw_y_cmdに対応する仮想車輪62_yの移動速度とに各々一致するように制御される。
このため、例えば、Y軸周り方向で、実際の基体傾斜角度θb_xが目標値θb_x_objから前傾側にずれると、そのずれを解消すべく(θbe_x_sを“0”に収束させるべく)、車輪体5が前方に向かって移動する。同様に、実際のθb_xが目標値θb_x_objから後傾側にずれると、そのずれを解消すべく(θbe_x_sを“0”に収束させるべく)、車輪体5が後方に向かって移動する。
また、例えば、X軸周り方向で、実際の基体傾斜角度θb_yが目標値θb_y_objから右傾側にずれると、そのずれを解消すべく(θbe_y_sを“0”に収束させるべく)、車輪体5が右向きに移動する。同様に、実際のθb_yが目標値θb_y_objから左傾側にずれると、そのずれを解消すべく(θbe_y_sを“0”に収束させるべく)、車輪体5が左向きに移動する。
さらに、実際の基体傾斜角度θb_x,θb_yの両方が、それぞれ目標値θb_x_obj,θb_y_objからずれると、θb_xのずれを解消するための車輪体5の前後方向の移動動作と、θb_yのずれを解消するための車輪体5の左右方向の移動動作とが合成され、車輪体5がX軸方向及びY軸方向の合成方向(X軸方向及びY軸方向の両方向に対して傾斜した方向)に移動することとなる。
このようにして、シート3及び基体9の姿勢が前記基本姿勢から傾くと、その傾いた側に向かって、車輪体5が移動することとなる。従って、例えば前記搭乗モードにおいて、乗員が意図的にその上体をシート3及び基体9と共に傾けると、その傾けた側に、車輪体5が移動することになる。
ところで、前記車両系重心点が接地点の直上(鉛直方向上方)に位置する状態(基準状態)では、車輪体5を移動させずとも、基体9が傾倒しない状態であるから、該基準状態では、車輪体5が停止することが望ましい。そして、基体傾斜角度θb_xyの目標値θb_xy_objは、基本的に基準状態での基体傾斜角度θbと一致するように設定されている。
しかしながら、実際の基体傾斜角度θb_xy_sは、乗員の体型や、シート3に対する搭乗位置等に起因して、基体傾斜角度θb_xyが目標値θb_xy_objに対してずれを生じる場合が多々ある。
このような場合には、基体傾斜角度θb_xy_sと基体傾斜角度θb_xyの目標値θb_xy_objとのずれにより(乗員が無意識にその上体をシート3及び基体9と共に傾けた状態となっており)、車輪体5が移動することになる。
そこで、本実施形態では、車輪体5が移動しないように、仮想車輪回転角加速度指令ωdotw_x_cmdを決定するために、傾斜オフセット調整量θb_xy_offsetを導入して、基準状態における基体傾斜角度θb_xyの目標値θb_xy_objに対するずれを調整している。
すなわち、姿勢制御演算部80は、基体傾斜角度偏差推定値計測値θbe_xy_sを調整する傾斜オフセット調整量θb_xy_offsetを導入し、仮想車輪回転角速度指令ωw_xy_cmdを算出する際に、傾斜オフセット調整量θb_xy_offsetを更新する。そして、姿勢制御演算部80は、更新した傾斜オフセット調整量θb_xy_offsetを用いて、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する。
具体的には、姿勢制御演算部80は、図14のフローチャートに示す処理を所定の制御処理周期で逐次実行することによって、傾斜オフセット調整量θb_xy_offsetを更新すると共に、更新した傾斜オフセット調整量θb_xy_offsetを用いて、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する。
以下説明すると、姿勢制御演算部80は、まず、STEP21で、傾斜オフセット調整量θb_xy_offsetを更新する更新条件が成立するか否かをを判断する。
具体的に更新条件としては、種々のものが考えられるが、例えば、車両1に乗員が搭乗している状態において操作を許容するように基体9またはシート3の所定位置に設けられたボタン型のスイッチの出力がON状態となっている場合や、荷重センサ54の出力により示される荷重の計測値が乗員の搭乗を示した時から一定時間内(搭乗時からタイマがタイムアップするまでの所定時間内)であること等である。
そして、姿勢制御演算部80は、更新条件が成立する場合には、STEP22の第1モードの演算処理を姿勢制御演算部80に実行させ、傾斜オフセット調整量θb_xy_offsetを更新するトリガ入力が無い場合には、STEP23の第2モードの演算処理を姿勢制御演算部80に実行させる。
ここで、本実施形態における第1モードは、傾斜オフセット調整量θb_xy_offsetを更新しつつ、仮想車輪回転角加速度指令ωwdot_xy_cmdを決定する演算処理であり、第2モードは、第1モードで最終的に更新された傾斜オフセット調整量θb_xy_offsetを用いて(傾斜オフセット調整量θb_xy_offsetを更新後の値に保持して)、仮想車輪回転角加速度指令ωwdot_xy_cmdを決定する演算処理である。
なお、第1モードおよび第2モードのいずれの演算処理においても、姿勢制御演算部80が前述の如く仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定し、これから仮想車輪回転速度指令ωw_x_cmd,ωw_y_cmdを決定し、決定した仮想車輪回転速度指令ωw_x_cmd,ωw_y_cmdをモータ指令演算部82に入力し、該モータ指令演算部82の処理を実行する一連の処理を継続している。
まず、STEP22の第1モードの演算処理について説明する。
第1モードの演算処理おいて、姿勢制御演算部80は、前式07x,07yにより仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する処理において、傾斜オフセット調整量θb_x_offset,θb_y_offsetを更新する。ここで、前式07x,07yにおける傾斜オフセット調整量θb_x_offset,θb_y_offsetは、傾斜オフセット調整量θb_x_offset,θb_y_offsetの前回値(前回の制御処理周期における積分値)であり、これを次に示す演算処理により更新する。なお、傾斜オフセット調整量θb_x_offset,θb_y_offsetの初期値は、それぞれ0に設定されている。
姿勢制御演算部80は、式07xにおいて、制御用目標重心速度Vb_x_mdfdを“0”に保持した状態で、重心速度推定値Vb_x_sをより“0”に近づけように、傾斜オフセット調整量θb_x_offsetの前回値に、重心速度推定値Vb_x_sに所定のゲインを乗じた値を加算する。そして、かかる今回の積分値を次回の制御処理周期での傾斜オフセット調整量θb_x_offsetとして決定する。これにより、傾斜オフセット調整量θb_x_offsetを更新する。
同様に、姿勢制御演算部80は、式07yにおいて、制御用目標重心速度Vb_y_mdfdを“0”に保持した状態で、重心速度推定値Vb_y_sをより“0”に近づけように、傾斜オフセット調整量θb_y_offsetの前回値に、重心速度推定値Vb_y_sに所定のゲインを乗じた値を加算する。そして、かかる今回の積分値を次回の制御処理周期での傾斜オフセット調整量θb_y_offsetとして決定する。これにより、傾斜オフセット調整量θb_y_offsetを更新する。
このように、傾斜オフセット調整量θb_xy_offset(θb_x_offsetおよびθb_y_offset)を、重心速度推定値Vb_xy_s(Vb_x_s,Vb_y_s)の積分値をフィードバックする制御系において決定することで、定常偏差を抑制することができ、重心速度推定値Vb_xy_s(Vb_x_s,Vb_y_s)を0に収束させることができる。これにより、車両1の移動を抑制して停止させることができると共に、車両が停止した状態で乗員が車両系重心点を床面との接地点のほぼ真上に位置させることで、車両を停止状態で安定化させることができる。
なお、第1モードの演算処理は、STEP21の判断が“YES”である限り、継続して実行される。すなわち、傾斜オフセット調整量θb_xy_offsetを更新する更新条件が成立する限り継続して実行され、更新条件が成立しなくなった時点で第1モードの演算処理が終了される。そのため、基体9またはシート3の所定位置に設けられたボタン型のスイッチの出力が更新条件となる場合には、車両1に搭乗した乗員がスイッチを押し続ける限り、第1モードの演算処理が実行され、(重心速度推定値Vb_xy_sが0に収束して車両1が停止して)乗員がスイッチから手を離したタイミングで、第1モードの演算処理が終了される。
また、荷重センサ54の出力により示される荷重の計測値がが乗員の搭乗を示した時から一定時間内であることが更新条件の場合には、搭乗時からタイマがタイムアップするまでの所定時間内は、第1モードの演算処理が実行され、タイマがタイムアップしたタイミングで、第1モードの演算処理が終了される。
なお、第1モードの演算処理の終了条件を更新条件の成立とは別に設定するようにしてもよい。例えば、第1モードの演算処理の結果、車両1の重心速度推定値Vb_xy_sが“0”またはほぼ“0”に等しい状態であることを第1モードの演算処理の終了条件としてもよい。
次に、STEP23の第2モードの演算処理において、姿勢制御演算部80は、STEP22で更新された傾斜オフセット調整量θb_x_offset,θb_y_offsetを用いて、前式07x,07yにより仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する。
このとき、前式07x,07yにおける傾斜オフセット調整量θb_x_offset,θb_y_offsetは、基体傾斜角度θbの目標値θb_x_obj,θb_y_objを傾斜オフセット調整量θb_x_offset,θb_y_offsetだけ傾斜方向に変位させたことと同値である。すなわち、基体傾斜角度θbの目標値θb_x_obj,θb_y_objを傾斜オフセット調整量θb_x_offset,θb_y_offsetだけ傾斜方向に変位させることで、基体傾斜角度計測値θb_x_s,θb_y_sと基体傾斜角度θb_x,θb_yの標準基体傾斜角度目標値θb_x_obj,θb_y_objとの偏差θbe_x_s,θbe_y_sを“0”とみなすものである。
そのため、基準状態においては、基体傾斜角度計測値θb_xy_sと目標傾斜角度目標値θb_xy_objとの間にずれが生じていても、傾斜オフセット調整量θb_xy_offsetは代表点速度が“0”に収束するような一定の値となっているため、基準状態において車両を停止させることができる。これにより、乗員が乗り易いと感じる搭乗部への位置や姿勢を許容しつつ、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定して車両1の移動動作を制御することができる。
以上が、第1実施形態におけるSTEP22の第1モードおよびSTEP23の第2モードの演算処理の詳細である。
なお、本実施形態のSTEP23の第2処理モードでは、前式07x´,07y´にSTEP22の第1モードの演算処理で更新した傾斜オフセット調整量θb_x_offset,θb_y_offsetを用いて、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定したが、その代わりに、前式07x,07yにより、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定するようにしてもよい。この場合、基体傾斜角度θbの目標値θb_x_obj,θb_y_objに、STEP22の第1モードの演算処理で更新した傾斜オフセット調整量θb_x_offset,θb_y_offsetを加算することにより、前式07x´,07y´を用いて仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定することと同値となる。

[第2実施形態]
次に、本発明の第2実施形態について説明する。なお、本実施形態は、姿勢制御演算部80の処理のみが第1実施形態と相違するものである。従って、本実施形態の説明では、第1実施形態と同一の構成部分又は同一の機能部分については、第1実施形態と同一の参照符号を用い、詳細な説明を省略する。
本実施形態では、姿勢制御演算部80は、前記した図14のSTEP22の第1モードの演算処理およびSTEP23の第2モードの演算処理の一部が相違している。
まず、STEP22の第1モードの演算処理について説明する。
第1モードの演算処理おいて、姿勢制御演算部80は、前式07x,07yの一部を変更した次式07x´,07y´により仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する処理において、速度オフセット調整量Vb_x_offset,Vb_y_offsetを更新する。ここで、前式07x´,07y´における速度オフセット調整量Vb_x_offset,Vb_y_offsetは、速度オフセット調整量Vb_x_offset,Vb_y_offsetの前回値(前回の制御処理周期における積分値)であり、これを次に示す演算処理により更新する。なお、速度オフセット調整量Vb_x_offset,Vb_y_offsetの初期値は、それぞれ0に設定されている。

ωwdot_x_cmd=K1_x・θbe_x_s+K2_x・θbdot_x_s
+K3_x・(Vb_x_s−Vb_x_mdfd−Vb_x_offset) ……式07x´
ωwdot_y_cmd=K1_y・θbe_y_s+K2_y・θbdot_y_s
+K3_y・(Vb_y_s−Vb_y_mdfd−Vb_y_offset) ……式07y´

姿勢制御演算部80は、式07x´において、制御用目標重心速度Vb_x_mdfdを“0”に保持した状態で、重心速度推定値Vb_x_sを“0”に近づけ得る値に速度オフセット調整量Vb_x_offsetを更新する処理を実行する。具体的には、速度オフセット調整量Vb_x_offsetの前回値に、重心速度推定値Vb_x_sに所定のゲインを乗じた値を加算する。そして、かかる今回の積分値を次回の制御処理周期での速度オフセット調整量Vb_x_offsetとして決定する。これにより、速度オフセット調整量Vb_x_offsetを更新する。
同様に、姿勢制御演算部80は、式07y´において、制御用目標重心速度Vb_y_mdfdを“0”に保持した状態で、重心速度推定値Vb_y_sを“0”に近づけ得る値に速度オフセット調整量Vb_y_offsetを更新する処理を実行する。具体的には、速度オフセット調整量Vb_y_offsetの前回値に、重心速度推定値Vb_y_sに所定のゲインを乗じた値を加算する。そして、かかる今回の積分値を次回の制御処理周期での速度オフセット調整量Vb_y_offsetとして決定する。これにより、速度オフセット調整量Vb_y_offsetを更新する。
このようにして更新された速度オフセット調整量Vb_xy_offsetは、重心速度成分Vb_x_s−Vb_x_mdfdおよびVb_y_s−Vb_y_mdfd(特に、重心速度推定値Vb_x_s,Vb_y_s)にバイアスを掛けて、重心速度推定値Vb_x_s,Vb_y_sを“0”に近づけるものである。
そのため、基準状態において基体傾斜角度計測値θb_xy_sと目標傾斜角度目標値θb_xy_objとの間にずれが生じて車両が移動し得る場合に、重心速度推定値Vb_x_s,Vb_y_sを“0”に近づけるように速度オフセット調整量Vb_x_offset,Vb_y_offsetが作用し、車両1の移動を抑制して停止させることができる。そして、車両1が停止した状態で乗員が車両系重心点を床面との接地点のほぼ真上に位置させることで、車両1を停止状態で安定化させることができる。
次に、STEP23の第2モードの演算処理において、姿勢制御演算部80は、STEP22で更新された速度オフセット調整量Vb_x_offsetおよびVb_y_offsetを用いた前式07x´,07y´により、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する。
そのため、基準状態においては、基体傾斜角度計測値θb_xy_sと目標傾斜角度目標値θb_xy_objとの間にずれが生じていても、速度オフセット調整量Vb_xy_offsetは、代表点速度が“0”に収束するような一定の値となっているため、基準状態において車両を停止させることができる。これにより、乗員が乗り易いと感じる搭乗部への位置や姿勢を許容しつつ、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定して車両1の移動動作を制御することができる。
以上が、第2実施形態におけるSTEP22の第1モードおよびSTEP23の第2モードの演算処理の詳細である。
ここで、前記第1および第2実施形態の車両1と本発明との対応関係を補足しておく。
まず、制御ユニット50が実行する図7のSTEP9,10の処理および、姿勢制御演算部80が実行する図14のSTEP22,23の処理によって、本発明における移動動作部制御手段が実現される。また、傾斜センサ52と、図7のSTEP2の処理とによって、本発明における傾斜角度計測手段が実現され、前記重心速度算出部72によって、本発明における代表点速度計測手段が実現される。さらに、前記車両系重心点が、本発明における車両の所定の代表点に相当し、前記基体傾斜角度偏差推定値計測値θbe_xy_sが本発明における傾斜偏差に相当する。
次に、以上説明した実施形態に係わる変形態様に関していくつか説明しておく。
前記各実施形態では、車両系重心点(詳しくは車両・乗員全体重心点)を車両1の所定の代表点としたが、該代表点を例えば、車輪体5の中心点や、基体9の所定の部位(例えば支持フレーム13)の点等に設定してもよい。
また、前記各実施形態では、X軸方向とY軸方向のいずれも傾斜オフセット調整量θb_xy_offsetまたは速度オフセット調整量Vb_xy_offsetを更新し、更新したこれらのオフセット調整量を用いて、仮想車輪回転角加速度指令ωwdot_xy_cmdを決定したが、X軸方向とY軸方向のいずれか一方(例えば、X軸方向)についてのみ、前記第1モードおよび第2モードの演算処理を実行するように構成してもよい。この場合、乗員のシート3への搭乗姿勢が、前傾姿勢となりがちであったり、仰け反った姿勢となったりする場合があることに鑑みて、X軸方向のみついて前記第1モードおよび第2モードの演算処理を実行するように構成することが望ましい。
また、前記各実施形態では、第1モードの開始時の傾斜オフセット調整量θb_xy_offsetまたは速度オフセット調整量Vb_xy_offsetは(積分値の初期値は)、“0”に初期化されるが、搭乗モードと自立モードとの各動作モード毎に、2回目以降の第1モードの開始時の傾斜オフセット調整量θb_xy_offsetまたは速度オフセット調整量Vb_xy_offsetとして、前回の第1モードで最終的に決定された値を用いてもよい。この場合、制御ユニット50の電源OFF状態で、搭乗モードと自立モードとの各動作モード毎の更新後の傾斜オフセット調整量θb_xy_offsetまたは速度オフセット調整量Vb_xy_offsetを不揮発性メモリで記憶保持してもよい。
さらに、前記各実施形態では、乗員のシート3への搭乗時を想定して説明したが、これに限定されるものではなく、乗員がシート3へ搭乗しない自立モードにおいても前記第1および第2モードの演算処理を実行してもよい。すなわち、前記第1モードおよび第2モードの演算処理は、図7のSTEP5,6で搭乗モード用の目標値およびパラメータが設定される場合であってもよく、STEP7,8で自立モード用の目標値およびパラメータが設定される場合のいずれでもよい。
この場合、第1モードは、自立モードから搭乗モードへの変更直後の所定時間の期間、或いは、搭乗モードから自立モードへの変更直後の所定時間の期間で行うようにしてもよい。
また、前記各実施形態において、傾斜オフセット調整量θb_xy_offsetまたは速度オフセット調整量Vb_xy_offsetを更新する際に、重心速度推定値Vb_xy_sを積分してなる値をこれらの調整量として決定したが、これに代えて、重心速度推定値Vb_xy_sを“0”に近づけるように、予め設定された一定値を加算または減算して、これらの調整量を決定してもよい。なお、この場合、一定値を加算または減算するか否かは、重心速度推定値Vb_xy_sを打ち消すように(重心速度推定値Vb_xy_sの極性と異なる極性の値が加算されるように)決定される。
さらに、本各実施形態は、乗員等による車両1の操縦操作(車両1に推進力を付加する操作)によって要求されていると推定される上記重心速度Vb_xyの要求値としての要求重心速度V_xy_aimがない場合、すなわち要求重心速度V_xy_aimが“0”の場合について説明したが、要求重心速度V_xy_aimが存在し得る場合には、図14のSTEP21の判定処理の前に、要求重心速度V_xy_aimの有無を判断する判断ブロックを設けて、要求重心速度V_xy_aimがない場合(要求重心速度V_xy_aimが“0”の場合)にのみ、前記第1モードおよび第2モードの処理を行うように構成してもよい。
この場合において、既に第1モードの処理が実行されている状態で、要求重心速度V_xy_aimが出現した場合には、該第1モードの演算処理を終了し、該第1モードで更新された傾斜オフセット調整量θb_xy_offsetまたは速度オフセット調整量Vb_xy_offsetにより第2モードの演算処理を実行するように構成してもよい。
また、前記各実施形態では、図1及び図2に示した構造の車両1を例示したが、本発明における倒立振子型車両1は、本実施形態で例示した車両に限られるものではない。
具体的には、本実施形態の車両1の移動動作部としての車輪体5は一体構造のものであるが、例えば、前記特許文献3の図10に記載されているような構造のものであってもよい。すなわち、剛性を有する円環状の軸体に、複数のローラをその軸心が該軸体の接線方向に向くようにして回転自在に外挿し、これらの複数のローラを軸体に沿って円周方向に配列させることによって、車輪体を構成してもよい。
さらに移動動作部は、例えば、特許文献2の図3に記載されているようなクローラ状の構造のものであってもよい。
あるいは、例えば、前記特許文献2の図5、特許文献3の図7、もしくは特許文献1の図1に記載されているように、移動動作部を球体により構成し、この球体を、アクチュエータ装置(例えば前記車輪体5を有するアクチュエータ装置)によりX軸周り方向及びY軸周り方向に回転駆動するように車両を構成してもよい。
また、本実施形態では、乗員の搭乗部としてシート3を備えた車両1を例示したが、本発明における倒立振子型車両は、例えば特許文献3の図8に見られるように、乗員が両足を載せるステップと、そのステップ上で起立した乗員が把持する部分とを基体に組付けた構造の車両であってもよい。
このように本発明は、前記特許文献1〜3等に見られる如き、各種の構造の倒立振子型車両に適用することが可能である。
さらには、本発明における倒立振子型車両は、床面上を全方向に移動可能な移動動作部を複数(例えば、左右方向に2つ、あるいは、前後方向に2つ、あるいは、3つ以上)備えていてもよい。
また、本発明における倒立振子型車両は、基体が乗員の搭乗部と共に傾動することは必須ではない。例えば、複数の移動動作部を有する場合に、これらの移動動作部を組付ける基体が床面に対して傾動しないようにすると共に、この基体に対して搭乗部を傾動自在に組付けるようにしてもよい。
1…倒立振子型全方向移動車両、3…シート(搭乗部)、5…車輪体(移動動作部)、7…アクチュエータ装置、9…基体、52…傾斜センサ(傾斜角度計測手段)、72…重心速度算出部(代表点速度計測手段)、80…姿勢制御演算部(移動動作部制御手段)、STEP2…傾斜角度計測手段、STEP9,10,22,23…移動動作部制御手段。
この第発明によれば、第1モードでは、前記操作調整量が、前記代表点速度計測手段の出力が示す代表点速度の計測値を積分した値として決定される。そのため、第1モードでは、目標移動速度を“0”に保持した状態で、前記傾斜偏差と前記速度偏差とを“0”に近づけるように制御用操作量を決定するため、代表点速度の計測値を積分した値がフィードバックされる制御系となり、代表点速度の計測値を定常偏差を抑制しつつ“0”に収束させることができる。これにより、基体の傾斜角度が基準となる目標傾斜角度と一致して車両が停止すべき基準状態における傾斜角度と目標傾斜角度とのずれを調整することができる。
アクチュエータ装置7は、車輪体5と右側のカバー部材21Rとの間に介装される回転部材27Rおよびフリーローラ29Rと、車輪体5と左側のカバー部材21Lとの間に介装される回転部材27Lおよびフリーローラ29Lと、回転部材27Rおよびフリーローラ29Rの上方に配置されたアクチュエータとしての電動モータ31Rと、回転部材27Lおよびフリーローラ29Lの上方に配置されたアクチュエータとしての電動モータ31Lとを備える。
また、例えば、回転部材27R,27Lを互いに逆方向に同じ大きさの速度で回転駆動した場合には、車輪体5は、その横断面中心C1のまわりに回転することとなる。これにより、車輪体がその軸心C2の方向(すなわち左右方向)に移動し、ひいては、車両1の全体が左右方向に移動することとなる。なお、この場合は、車輪体5は、その軸心C2のまわりには回転しない。
ロータリエンコーダ56Rは、電動モータ31Rの出力軸が所定角度回転する毎にパルス信号を発生し、このパルス信号を制御ユニット50に出力する。そして、制御ユニット50が、そのパルス信号を基に、電動モータ31Rの出力軸の回転角度を計測し、さらにその回転角度の計測値の時間的変化率(微分値)を電動モータ31Rの回転角速度として計測する。電動モータ31L側のロータリエンコーダ56Lについても同様である。
そして、制御ユニット50は、仮想車輪回転角速度指令ωw_x_cmdに対応する仮想車輪62_xの移動速度(=Rw_x・ωw_x_cmd)と、仮想車輪回転角速度指令ωw_y_cmdに対応する仮想車輪62_yの移動速度(=Rw_y・ωw_y_cmd)とを、それぞれ、車両1の車輪体5のX軸方向の目標移動速度、Y軸方向の目標移動速度とし、それらの目標移動速度を実現するように、電動モータ31R,31Lのそれぞれの速度指令ω_R_cmd,ω_L_cmdを決定する。
なお、図9中の参照符号84を付したものは、姿勢制御演算部80が制御処理周期毎に算出する仮想車輪回転角速度指令ωw_xy_cmdを入力する遅延要素を示している。該遅延要素84は、各制御処理周期において、仮想車輪回転角速度指令ωw_xy_cmdの前回値ωw_xy_cmd_pを出力する。
そして、姿勢制御演算部80は、まず、これらの入力値と、後述するが如く適宜更新される傾斜オフセット調整量θb_xy_offsetとを用いて、次式07x,07yにより、仮想車輪回転角加速度指令ωwdot_xy_comを算出する。なお、詳細は後述するが、次式07x,07yにおいて、基体傾斜角度偏差計測値θbe_x_sは、基体傾斜角度計測値θb_x_sと標準目標値θb_x_objとの偏差(θb_x_s−θb_x_obj)であり、基体傾斜角度計測値θb_y_sと標準目標値θb_y_objとの偏差(θb_y_s−θb_y_obj)である。
ωwdot_x_cmd=K1_x・θbe_x_s+K2_x・θbdot_x_s
+K3_x・(Vb_x_s−Vb_x_mdfd) ……式07x
ωwdot_y_cmd=K1_y・θbe_y_s+K2_y・θbdot_y_s
+K3_y・(Vb_y_s−Vb_y_mdfd) ……式07y
従って、本実施形態では、Y軸方向から見た倒立振子モデルの質点60_xの運動(ひいては、Y軸方向から見た車両系重心点の運動)を制御するための操作量(制御入力)としての仮想車輪回転角加速度指令ωwdot_x_cmdと、X軸方向から見た倒立振子モデルの質点60_yの運動(ひいては、X軸方向から見た車両系重心点の運動)を制御するための操作量(制御入力)としての仮想車輪回転角加速度指令ωwdot_y_cmdとは、それぞれ、3つの操作量成分(式07x,07yの右辺の3つの項)を加え合わせることによって決定される。
第1モードでは、基体傾斜角度偏差計測値θbe_xy_sを調整する傾斜オフセット調整量θb_xy_offsetが逐次更新される演算処理が実行される。このとき、式07x,07yにおける傾斜オフセット調整量θb_xy_offsetは、その前回値の値が入力される。また、第1モードによる傾斜オフセット調整量θb_xy_offsetの更新は、前記搭乗モードと自立モードとの各動作モードで別々に行われる。
さらに詳細には、図13を参照して、姿勢制御演算部80は、基体傾斜角度計測値θb_x_sと標準目標値θb_x_objとの偏差である基体傾斜角度偏差計測値θbe_x_sから更に傾斜オフセット調整量θb_x_offsetを減算した値を演算部80で算出し、かかる値に第1ゲイン係数K1_xを乗じてなる操作量成分u1_xを処理部80aで算出する。また、姿勢制御演算部80は、基体傾斜角速度計測値θbdot_x_sに第2ゲイン係数K2_xを乗じてなる操作量成分u2_xを80bで算出する。さらに、姿勢制御演算部80は、重心速度推定値Vb_x_sと制御用目標重心速度Vb_x_mdfdとの偏差(=Vb_x_s−Vb_x_mdfd)を演算部80で算出し、この偏差に第3ゲイン係数K3_xを乗じてなる操作量成分u3_xを処理部80cで算出する。そして、姿勢制御演算部80は、これらの操作量成分u1_x,u2_x,u3_xを演算部80eにて加え合わせることにより、仮想車輪回転角加速度指令ωwdot_x_comを算出する。
この場合には、姿勢制御演算部80は、基体傾斜角度計測値θb_y_sと標準目標値θb_y_objとの偏差である基体傾斜角度偏差計測値θbe_y_sから更に傾斜オフセット調整量θb_y_offsetを減算した値を演算部80で算出し、かかる値に第1ゲイン係数K1_yを乗じてなる操作量成分u1_yを処理部80aで算出する。また、姿勢制御演算部80は、基体傾斜角速度計測値θbdot_y_sに第2ゲイン係数K2_yを乗じてなる操作量成分u2_yを80bで算出する。さらに、姿勢制御演算部80は、重心速度推定値Vb_y_sと制御用目標重心速度Vb_y_mdfdとの偏差(=Vb_y_s−Vb_y_mdfd)を演算部80で算出し、この偏差に第3ゲイン係数K3_yを乗じてなる操作量成分u3_yを処理部80cで算出する。そして、姿勢制御演算部80は、これらの操作量成分u1_y,u2_y,u3_yを演算部80eにて加え合わせることにより、仮想車輪回転角加速度指令ωwdot_y_comを算出する。
補足すると、式07xの右辺の第3項を、Vb_x_sに応じた操作量成分(=K3_x・Vb_x_s)と、Vb_x_mdfdに応じた操作量成分(=−K3_x・Vb_x_mdfd)とに分離した式によって、仮想車輪回転角加速度指令ωwdot_x_cmdを算出するようにしてよい。同様に、式07yの右辺の第3項を、Vb_y_sに応じた操作量成分(=K3_y・Vb_y_s)と、Vb_y_mdfdに応じた操作量成分(=−K3_y・Vb_y_mdfd)とに分離した式によって、仮想車輪回転角加速度指令ωwdot_y_cmdを算出するようにしてよい。
まず、傾斜オフセット調整量θb_xy_offsetがない場合(θb_xy_offset=0の場合)には、前記搭乗モード及び自立モードのいずれの動作モードにおいても、基本的には、シート3及び基体9の姿勢が、前記基体傾斜角度偏差計測値θbe_x_s,θbe_y_sの両方が“0”となる姿勢(以下、この姿勢を基本姿勢という)に保たれている状態では、車両系重心点が静止するように操作量(制御入力)としての仮想車輪回転角加速度指令ωwdot_xy_comが決定される。そして、シート3及び基体9の姿勢を前記基本姿勢に対して傾けると、換言すれば、車両系重心点(車両・乗員全体重心点又は車両単体重心点)の水平方向位置を、車輪体5の接地面のほぼ真上に位置する状態から変位させると、シート3及び基体9の姿勢を基本姿勢に復元させるように(θbe_x_s,θbe_y_sを“0”に近づけるか、もしくは“0”に保持するように)、仮想車輪回転角加速度指令ωwdot_xy_comが決定される。
そして、ωwdot_xy_comの各成分を積分してなる仮想車輪回転角速度指令ωw_xy_comを変換してなる電動モータ31R,31Lのそれぞれの回転角速度が、電動モータ31R,31Lの速度指令ω_R_cmd,ω_L_cmdとして決定される。さらに、その速度指令ω_R_cmd,ω_L_cmdに従って、各電動モータ31R,31Lの回転速度が制御される。ひいては車輪体5のX軸方向及びY軸方向のそれぞれの移動速度が、ωw_x_comに対応する仮想車輪62_xの移動速度と、ωw_y_comに対応する仮想車輪62_yの移動速度とに各々一致するように制御される。
そこで、本実施形態では、車輪体5が移動しないように、仮想車輪回転角加速度指令ωwdot_x_comを決定するために、傾斜オフセット調整量θb_xy_offsetを導入して、基準状態における基体傾斜角度θb_xyの目標値θb_xy_objに対するずれを調整している。
すなわち、姿勢制御演算部80は、基体傾斜角度偏差計測値θbe_xy_sを調整する傾斜オフセット調整量θb_xy_offsetを導入し、仮想車輪回転角速度指令ωw_xy_cmdを算出する際に、傾斜オフセット調整量θb_xy_offsetを更新する。そして、姿勢制御演算部80は、更新した傾斜オフセット調整量θb_xy_offsetを用いて、仮想車輪回転角加速度指令ωwdot_x_cmd,ωwdot_y_cmdを決定する。

Claims (4)

  1. 床面上を移動可能な移動動作部と、該移動動作部を駆動するアクチュエータ装置と、該移動動作部およびアクチュエータ装置が組み付けられた基体と、鉛直方向に対して傾動自在に前記基体に組み付けられた乗員の搭乗部とを備えた倒立振子型車両の制御装置であって、
    前記搭乗部の実際の傾斜角度に応じた出力を生成する傾斜角度計測手段と、
    前記車両の所定の代表点の移動速度に応じた出力を生成する代表点速度計測手段と、
    少なくとも、前記傾斜角度計測手段の出力が示す前記搭乗部の傾斜角度の計測値と、所定値の目標傾斜角度と、前記代表点速度計測手段の出力が示す代表点速度の計測値と、所定値の目標移動速度と、可変的に設定可能な操作調整量とを用いて、前記移動動作部に付与する駆動力を規定する制御用操作量を決定し、その決定した制御用操作量に応じて前記移動動作部の移動動作を前記アクチュエータ装置を介して制御する移動動作部制御手段とを備え、
    前記移動動作部制御手段は、
    前記操作調整量を更新するための第1モードと、該第1モードで更新された該操作調整量を用いて、前記制御用操作量を決定する第2モードとを有すると共に、
    前記第1モードでは、前記目標移動速度を“0”に保持した状態で、少なくとも前記搭乗部の傾斜角度の計測値と前記目標傾斜角度との偏差である傾斜偏差と、前記代表点速度の計測値と前記目標移動速度との偏差である速度偏差とを“0”に近づけるための要求操作量に前記操作調整量の現在値に応じた補正を施してなる操作量を前記制御用操作量として決定する制御処理を実行し、その制御処理の実行状態での前記代表点速度の計測値に基づいて、該代表点速度をさらに“0”に近づけ得る値に前記操作調整量を更新し、
    前記第2モードでは、少なくとも前記傾斜偏差と速度偏差とを“0”に近づけるための要求操作量に前記第1モードで更新された操作調整量に応じた補正を施してなる操作量を前記制御用操作量として決定することを特徴とする倒立振子型車両の制御装置。
  2. 請求項1記載の倒立振子型車両の制御装置において、
    前記操作調整量は、前記傾斜偏差を調整する調整量であって、
    前記移動動作部制御手段は、前記傾斜偏差を“0”に近づけるための要求操作量に前記操作調整量を加算する補正を施してなる操作量を前記制御用操作量として決定することを特徴とする倒立振子型車両の制御装置。
  3. 請求項1記載の倒立振子型車両の制御装置において、
    前記操作調整量は、前記速度偏差を調整する調整量であって、
    前記移動動作部制御手段は、前記速度偏差を“0”に近づけるための要求操作量に前記操作調整量を加算する補正を施してなる操作量を前記制御用操作量として決定することを特徴とする倒立振子型車両の制御装置。
  4. 請求項1記載の倒立振子型車両の制御装置において、
    前記移動動作部制御手段は、前記第1モードにおいて、前記代表点速度の計測値を積分してなる値を、該代表点速度をさらに“0”に近づけ得る値とすることにより、前記操作調整量を更新することを特徴とする倒立振子型車両の制御装置。
JP2011532779A 2009-09-23 2009-09-23 倒立振子型車両の制御装置 Active JP5414804B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2009/004785 WO2011036694A1 (ja) 2009-09-23 2009-09-23 倒立振子型車両の制御装置

Publications (2)

Publication Number Publication Date
JPWO2011036694A1 true JPWO2011036694A1 (ja) 2013-02-14
JP5414804B2 JP5414804B2 (ja) 2014-02-12

Family

ID=43795469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011532779A Active JP5414804B2 (ja) 2009-09-23 2009-09-23 倒立振子型車両の制御装置

Country Status (4)

Country Link
US (1) US8548711B2 (ja)
JP (1) JP5414804B2 (ja)
DE (1) DE112009005274B4 (ja)
WO (1) WO2011036694A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8522902B2 (en) * 2009-09-18 2013-09-03 Honda Motor Co., Ltd. Inverted pendulum type vehicle
JP5921950B2 (ja) * 2012-05-14 2016-05-24 本田技研工業株式会社 倒立振子型車両
GB2515794B (en) * 2013-07-04 2015-06-10 Velofeet Ltd Improvements Relating to Vehicles
KR101532487B1 (ko) * 2013-10-28 2015-06-29 가천대학교 산학협력단 센서 융합을 이용한 자세 안정화 전동 외발 스쿠터
KR101779962B1 (ko) * 2013-10-31 2017-09-20 한국전자통신연구원 운전자의 의지 판단을 포함하는 조향 제어 장치 및 이의 작동 방법
JP6184348B2 (ja) * 2014-03-07 2017-08-23 本田技研工業株式会社 倒立振子型車両
CN108648596A (zh) * 2018-05-03 2018-10-12 中国计量大学 一种利用单片机和网络3d技术的半虚拟倒立摆系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0370015A (ja) 1989-08-09 1991-03-26 Fujitsu Ltd パワーオンリセット回路
JP3070015B2 (ja) 1990-11-30 2000-07-24 本田技研工業株式会社 不安定車両の走行制御装置
EP1632428A4 (en) 2003-06-12 2010-08-25 Toyota Motor Co Ltd COAXIAL MOTORCYCLE
JP4296853B2 (ja) * 2003-06-12 2009-07-15 トヨタ自動車株式会社 同軸二輪車
JP4760162B2 (ja) 2005-06-29 2011-08-31 トヨタ自動車株式会社 移動台車の制御方法及び移動台車
CA2659308C (en) * 2006-08-11 2013-10-01 Segway Inc. Speed limiting in electric vehicles
JP4947415B2 (ja) 2007-03-27 2012-06-06 株式会社エクォス・リサーチ 車両
JP4506776B2 (ja) * 2007-04-05 2010-07-21 トヨタ自動車株式会社 走行装置
KR101113927B1 (ko) 2007-04-20 2012-02-29 혼다 기켄 고교 가부시키가이샤 전방향 구동 장치 및 그것을 이용한 전방향 이동차
WO2008132778A1 (ja) 2007-04-20 2008-11-06 Honda Motor Co., Ltd. 全方向駆動装置及びそれを用いた全方向移動車
JP4867823B2 (ja) * 2007-07-09 2012-02-01 トヨタ自動車株式会社 倒立車輪型移動体、及びその制御方法
JP4862801B2 (ja) * 2007-10-22 2012-01-25 トヨタ自動車株式会社 同軸二輪車及びその制御方法
JP4605204B2 (ja) * 2007-10-24 2011-01-05 トヨタ自動車株式会社 倒立振子型移動体、及びその制御方法

Also Published As

Publication number Publication date
DE112009005274B4 (de) 2015-09-24
DE112009005274T5 (de) 2013-01-24
WO2011036694A1 (ja) 2011-03-31
JP5414804B2 (ja) 2014-02-12
US20120179352A1 (en) 2012-07-12
US8548711B2 (en) 2013-10-01

Similar Documents

Publication Publication Date Title
JP5208906B2 (ja) 倒立振子型車両
JP5504272B2 (ja) 倒立振子型車両の制御装置
JP5306474B2 (ja) 倒立振子型車両の制御装置
JP5436564B2 (ja) 倒立振子型車両の制御装置
JP5355701B2 (ja) 倒立振子型車両の制御装置
JP5318216B2 (ja) 倒立振子型車両
JP5414804B2 (ja) 倒立振子型車両の制御装置
JP5306472B2 (ja) 倒立振子型車両の制御装置
JP5404800B2 (ja) 倒立振子型車両
JP5355700B2 (ja) 倒立振子型移動体の制御装置
JP5414801B2 (ja) 倒立振子型車両の制御装置
JP5414800B2 (ja) 倒立振子型車両の制御装置
JP5379235B2 (ja) 倒立振子型車両の制御装置
JP5430317B2 (ja) 倒立振子型車両の制御装置
JP5355348B2 (ja) 全方向移動車両の制御装置
WO2011033577A1 (ja) 倒立振子型車両の制御装置
JP2011068224A (ja) 倒立振子型移動体
JP5386283B2 (ja) 倒立振子型移動体、制御装置、および、制御方法
JP5330199B2 (ja) 倒立振子型車両の制御装置
JP2011073628A (ja) 倒立振子型移動体の制御装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131022

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131112

R150 Certificate of patent or registration of utility model

Ref document number: 5414804

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250