[第1実施形態]
本発明の第1実施形態を以下に図1〜図19を参照して説明する。
図1を参照して、本実施形態の移動体1は、車体2と、車体2の前後方向に間隔を存して配置された各1輪の前輪3f及び後輪3rとを備える鞍乗り型の二輪車である。以降、移動体1を二輪車1という。
車体2には、運転者(乗員)の搭乗部4が備えられている。該搭乗部4は、本実施形態では、運転者(乗員)が跨るように着座するシートである。
車体2の前部には、前輪3fを軸支する前輪支持機構5が操舵機構6を介して組み付けられている。前輪3fは、その車軸中心線(前輪3fの回転軸線)の周りに回転し得るように、前輪支持機構5にベアリング等を介して軸支されている。
前輪支持機構5としては、例えば通常の自動二輪車の前輪支持機構と同様の構造のものを採用し得る。図示例の前輪支持機構5は、例えばダンパー(図示省略)を含むフロントフォーク22を有する。そして、このフロントフォーク22の下端部に前輪3fが軸支されている。
また、本実施形態では、前輪3fの車軸には、該前輪3fをその車軸中心線のまわりに回転駆動する前輪駆動用アクチュエータ7が装着されている。該前輪駆動用アクチュエータ7は、二輪車1の推進力を発生する原動機としての機能を有するものである。この前輪駆動用アクチュエータ7は、本実施形態では、例えば電動モータ(減速機付きの電動モータ)により構成される。
補足すると、前輪駆動用アクチュエータ7は、電動モータの代わりに、例えば油圧式のアクチュエータ、あるいは、内燃機関により構成されていてもよい。また、前輪駆動用アクチュエータ7を前輪3fの車軸から離れた位置で車体2に搭載し、前輪駆動用アクチュエータ7と前輪3fの車軸とを適宜の動力伝達装置で接続するようにしてもよい。
車体2の後部には、後輪3rを軸支する後輪支持機構8が組み付けられている。後輪3rは、その車軸中心線(後輪3rの回転軸線)の周りに回転し得るように、後輪支持機構8にベアリング等を介して軸支されている。
後輪支持機構8としては、例えば通常の自動二輪車の後輪支持機構と同様の構造のもの(例えばスイングアーム、コイルスプリング、ダンパー等を含むサスペンション機構)を採用し得る。なお、図1では、後輪支持機構8を簡略化して模式的に記載している。
補足すると、前輪支持機構5及び後輪支持機構8は、通常の自動二輪車のものに限られず、種々様々な構造のものを採用し得る。
車体2と前輪支持機構5との間に介在する前記操舵機構6は、二輪車1の操舵輪たる前輪3fの操舵用の機構である。なお、図1では、操舵機構6の要部構成のみを記載している。
この操舵機構6の具体的な構造の説明は後述するが、該操舵機構6は、本実施形態では、前輪3fの操舵軸線(前輪3fの操舵用の回転軸線)として、第1操舵軸線Cf1及び第2操舵軸線Cf2の2つの操舵軸線を有するように構成されている。そして、第1操舵軸線Cf1及び第2操舵軸線Cf2のそれぞれの軸線周りに、前輪支持機構5が前輪3fと共に回転可能となっている。この回転により前輪3fの操舵がなされる。
上記第1操舵軸線Cf1及び第2操舵軸線Cf2は、二輪車1の基準姿勢状態(図1に示す姿勢状態)において後傾し、且つ、第1操舵軸線Cf1に係るトレール長t1が、第2操舵軸線Cf2に係るトレール長t2よりも小さくなり、且つ、トレール長t1,t2のうちの少なくとも第1操舵軸線Cf1に係るトレール長t1が正の所定値以下となるように配置されている。
また、本実施形態では、二輪車1の基準姿勢状態での第1操舵軸線Cf1及び第2操舵軸線Cf2は、互いに平行である。従って、第1操舵軸線Cf1及び第2操舵軸線Cf2のそれぞれの鉛直方向に対する傾斜角度(鋭角側の傾斜角度)であるキャスタ角θcsは互いに同一の角度に設定されている。
二輪車1の上記基準姿勢状態は、図1に示すように、二輪車1が水平な接地面S上に直進姿勢(直進走行時の姿勢)で静止した状態である。該基準姿勢状態は、より詳しくは、前輪3f及び後輪3rが水平な接地面S上に直立姿勢で起立して静止しており、且つ、前輪3f及び後輪3rのそれぞれの車軸中心線が、車体2の前後方向と直交する水平方向に互いに平行に延在している状態である。
また、操舵軸線(第1操舵軸線Cf1又は第2操舵軸線Cf2)が後傾するというのは、該操舵軸線の上部側が下部側よりも後側に位置するように、該操舵軸線が鉛直方向及び水平方向に対して傾斜していることを意味する。なお、本実施形態の説明では、このように後傾した操舵軸線に係るキャスタ角を正の角度と定義する。従って、第1操舵軸線Cf1及び第2操舵軸線Cf2に係るキャスタ角θcsは正の角度である。
また、第1操舵軸線Cf1に係るトレール長t1は、基準姿勢状態の二輪車1の前輪3fの接地点P1(詳しくは、前輪3fの車軸中心点を通る鉛直線と接地面Sとの交点)から、第1操舵軸線Cf1と接地面Sとの交点P2までの距離、第2操舵軸線Cf2に係るトレール長t2は、前輪3fの上記接地点P1から、第2操舵軸線Cf2と接地面Sとの交点P3までの距離である。
この場合、本実施形態の説明では、各操舵軸線(第1操舵軸線Cf1又は第2操舵軸線Cf2)に係るトレール長(t1又はt2)の極性については、該操舵軸線と接地面Sとの交点(P2又はP3)が、前輪3fの接地点P1よりも前側に位置する場合のトレール長を正の値、該操舵軸線と接地面Sとの交点(P2又はP3)が、前輪3fの接地点P1よりも後側に位置する場合のトレール長を負の値と定義する。
そして、本実施形態では、例えば図1に示すように、第1操舵軸線Cf1に係るトレール長t1が負の値、第2操舵軸線Cf2に係るトレール長t2が正の値となるように(t1<0<t2となるように)は、第1操舵軸線Cf1及び第2操舵軸線Cf2が配置されている。
ここで、前輪3fの操舵によって、車体2のロール方向の姿勢(傾斜角)を目標とする姿勢に制御する場合、車体2のロール方向の姿勢の復元力(モーメント)を前輪3fの操舵に応じて効果的に発生させるためには、前輪3fの操舵軸線に係るトレール長が、ある正の所定値以下となっていることが好ましいことが本願発明者等の研究によって判明している。
そのため、本実施形態では、第1操舵軸線Cf1に係るトレール長t1を上記の如く負の値に設定している。
トレール長に関する上記正の所定値は、例えば、二輪車1の重心の高さ、二輪車1の質量、二輪車1の重心を通る前後方向の軸周りの慣性モーメント、重心から前輪3f及び後輪3rまでの水平距離、前輪3f及び後輪3rのそれぞれの横断面の曲率半径等に応じて規定される値である。該所定値についての詳細は、例えば特開2014−91386号公報、特開2014−91385号公報に説明されている。このため、該所定値についての、本明細書での詳細な説明は省略する。
なお、第1操舵軸線Cf1に係るトレール長t1は、上記所定値以下の正の値もしくはゼロに設定されていてもよい。
次に、操舵機構6の具体的な構成例を図2及び図3を参照して説明する。図2及び図3に示すように、操舵機構6は、車体2に対して第1操舵軸17を介して回転可能に軸支された操舵軸プレート13を有し、この操舵軸プレート13に対して第2操舵軸21を介して前輪支持機構5が回転可能に軸支されている。
第1操舵軸17は、車体2に固定された筐体16に回転自在に支持されている。具体的には、第1操舵軸17は、筐体16を、その内部空間を経て該筐体16の上側から下側へ貫通している。そして、第1操舵軸17は、該筐体16の上側及び下側の貫通部分において、ベアリング等を介して筐体16に回転自在に支持されている。この第1操舵軸の中心軸線(回転軸線)が、前記第1操舵軸線Cf1となっている。
操舵軸プレート13は、第1操舵軸17に対して垂直な方向に延在する上プレート18及び下プレート19と、上プレート18及び下プレート19を連結する連結プレート20とで構成される。上プレート18、下プレート19及び連結プレート20の板面は、車体2の左右方向と平行であり、該左右方向に垂直な断面は、図3で示されるようにH字状を呈する。
上プレート18及び下プレート19の後側の各端部に対し、筐体16の上側及び下側に延出した第1操舵軸17の各端部がそれぞれ固定されている。これにより、操舵軸プレート13は、車体2に対して、第1操舵軸17の中心軸線(第1操舵軸線Cf1)の周りに回転し得るように、筐体16及び第1操舵軸17を介して支持されている。
上プレート18及び下プレート19の前側の各端部に、第2操舵軸21が、ベアリング等を介して回転自在に支持されている。この第2操舵軸21は、上プレート18の上側から下プレート19の下側まで延在している。そして、第2操舵軸21の中心軸線(回転軸線)が、前記第2操舵軸線Cf2となっている。
前輪支持機構5のフロントフォーク22の上部には、トップブリッジ23及びボトムブリッジ24の前側部分が固定されている。第2操舵軸21は、上プレート18の上側及び下プレート19の下側に延出した両端部が、それぞれトップブリッジ23及びボトムブリッジ24の後側部分に固定されている。
これにより、前輪支持機構5及び前輪3fは、操舵軸プレート13に対して、第2操舵軸21の中心軸線(第2操舵軸線Cf2)の周りに回転し得るように、第2操舵軸21を介して支持されている。
また、前輪支持機構5及び前輪3fは、車体2に対する操舵軸プレート13の回転(第1操舵軸線Cf1周りの回転)によって、第1操舵軸線Cf1の周りに回転可能となっている。
操舵機構6はさらに、第1操舵軸線Cf1の周りに操舵軸プレート13を回転駆動する第1操舵用アクチュエータ15と、車体2に対して操舵軸プレート13が固定されるロック状態と該ロック状態が解除されるロック解除状態とに切替え動作可能な第1ロック機構27と、操舵軸プレート13の中立位置にて該操舵軸プレート13が車体2に対して固定されるロック状態と該ロック状態が解除されるロック解除状態とに切替え動作可能な第2ロック機構28とを筐体16内に備える。
なお、操舵軸プレート13の中立位置は、二輪車1の前記基準姿勢状態(あるいは前輪3fの非操舵状態)での操舵軸プレート13の回転位置である。
第1操舵用アクチュエータ15は、本実施形態では例えば電動モータにより構成される。この第1操舵用アクチュエータ15は、該第1操舵用アクチュエータ15の出力軸に固定された第1ピニオン25と、第1ピニオン25に噛合して第1操舵軸17に固定された第1ギア26とを介して第1操舵軸17に回転駆動力を伝達する。
なお、第1操舵用アクチュエータ15は、油圧式のアクチュエータにより構成されていてもよい。
第1ロック機構27は、第1操舵軸17に対して垂直に固定されたブレーキディスク29と、ブレーキディスク29に係合する係合位置と該係合が解除された係合解除位置との間で移動し得るように支持されたブレーキパッド30と、ブレーキパッド30を係合位置に向けて付勢するコイルばね31と、コイルばね31の付勢力に抗してブレーキパッド30を係合解除位置に移動させるための電磁石32とを備える。
この第1ロック機構27では、電磁石32に通電されていないとき、コイルばね31によりブレーキパッド30が係合位置に位置付けられる。このとき、ブレーキディスク29にブレーキパッド30が係合することで、第1ロック機構27がロック状態となる。
また、電磁石32に通電したとき、コイルばね31の付勢力に抗してブレーキパッド30が係合解除位置に移動する。このとき、ブレーキディスク29へのブレーキパッド30の係合が解除されることで、第1ロック機構27がロック解除状態となる。
ブレーキディスク29は、本実施形態では、カムとしての機能を併せ持つ。そして、第2ロック機構28は、カムとしてのブレーキディスク29と、ブレーキディスク29の外周部のカム面に沿って転動するローラ33と、ローラ33を回転自在に軸支し、第1操舵軸17と直交する方向に移動可能に案内された鉄心34と、ローラ33が該カム面を押圧する方向に鉄心34を付勢するコイルばね35と、コイルばね35による付勢力と反対方向に鉄心34を引き付けるための電磁石36とを備える。
かかる第2ロック機構28の動作を図4A及び図4Bを参照して説明する。図4Aでは、操舵軸プレート13が中立位置にあるときの上プレート18及び下プレート19が2点鎖線で示されている。図4Bでは、操舵軸プレート13が中立位置から回転されたときの上プレート18及び下プレート19が2点鎖線で示されている。
図4A及び図4Bに示すように、ブレーキディスク29は、ハート形の板カムを構成する。第2ロック機構28は、図4Aに示すように、操舵軸プレート13が中立位置にあるとき、ローラ33がブレーキディスク29のハート形のカム面の窪みに位置するように構成される。
電磁石36に通電されていないとき、コイルばね35の付勢力により、鉄心34先端のローラ33がブレーキディスク29のカム面に押圧される。これにより、操舵軸プレート13は、中立位置に向けて付勢され、該中立位置に維持される。この状態が、第2ロック機構28のロック状態である。
このロック状態から、操舵軸プレート13が図4Bのように回転されたとき、ブレーキディスク29のカム面により、ローラ33を介して、鉄心34が第1操舵軸17から離れる方向に移動される。ただし、このとき、この移動を許容するために、電磁石36に通電される。この通電により、鉄心34がコイルばね35の付勢力に抗して引き付けられる。これにより、操舵軸プレート13を中立位置に戻す付勢力が減少され又は解除される。この状態が、第2ロック機構28のロック解除状態である。
操舵軸プレート13を中立位置に復帰させる場合には、電磁石36への通電が停止される。これにより、コイルばね35の付勢力が、ブレーキディスク29のカム面に再び伝達されるようになる。これにより、操舵軸プレート13は、中立位置に向けて付勢され、該中立位置に固定される。
図2及び図3に戻り、操舵機構6はさらに、第2操舵軸線Cf2の周りに前輪支持機構5を回転駆動する第2操舵用アクチュエータ37と、第2操舵用アクチュエータ37の駆動力を第2操舵軸21に伝達する伝達状態と該伝達を解除する伝達解除状態とに切替え動作可能なクラッチ機構38とを備える。第2操舵用アクチュエータ37及びクラッチ機構38は、操舵軸プレート13の前側部分で上プレート18及び下プレート19の間に配置されている。
第2操舵用アクチュエータ37は、本実施形態では例えば電動モータにより構成される。この第2操舵用アクチュエータ37は、該第2操舵用アクチュエータ37の出力軸に固定されたピニオン39と、第2操舵軸21上に回転自在に支持されたギア40と、クラッチ機構38と順に経由して第2操舵軸21に回転駆動力を伝達する。
なお、第2操舵用アクチュエータ37は、油圧式のアクチュエータにより構成されていてもよい。
クラッチ機構38は、ギア40に固定されたクラッチ板41と、第2操舵軸21に固定されたクラッチ板42と、第2操舵軸21に沿って移動可能に該第2操舵軸21に外挿された円筒状の鉄心43と、クラッチ板42及びクラッチ板41を互いに引き離す方向(伝達解除方向)に鉄心43を付勢するコイルばね44と、クラッチ板42及びクラッチ板41を互いに圧接させるように鉄心43をコイルばね44の付勢力に抗して移動させる電磁石45とを備える。
このクラッチ機構38では、電磁石45に通電していない状態では、コイルばね44の付勢力によりクラッチ板42及びクラッチ板41が引き離された状態となる。この状態では、第2操舵用アクチュエータ37から第2操舵軸21に回転駆動力が伝達されない。この状態が、クラッチ機構38の伝達解除状態である。
また、電磁石45に通電した状態では、クラッチ板42及びクラッチ板41が、コイルばね44の付勢力に抗して互いに圧接された状態となる。この状態では、第2操舵用アクチュエータ37から第2操舵軸21にクラッチ板42及びクラッチ板41を介して回転駆動力が伝達される。この状態が、クラッチ機構38の伝達状態である。
操舵機構6はさらに、二輪車1の運転者が前輪3fの操舵を行うためのハンドル46と、該ハンドル46を前輪支持機構5に連結するハンドル用リンク機構47とを備える。
ハンドル46は、概ね、二輪車1の車幅方向に延在している。そして、ハンドル46の中央部が、操舵軸プレート13の上プレート18上に軸受け52を介して回転自在に軸支されたハンドル軸53に固定されている。ハンドル軸53は、本実施形態では、その中心軸線であるハンドル軸線が第1操舵軸線Cf1と同一の軸線となるように配置されている。
なお、詳細な図示は省略するが、このハンドル46には、通常の自動二輪車のハンドルと同様に、アクセルグリップ、ブレーキレバー、方向指示器スイッチ等が組み付けられている。
ハンドル用リンク機構47は、ハンドル軸線周りのハンドル46の回転操作に応じて、前輪支持機構5を第2操舵軸線Cf2の周りに回転させるように、該ハンドル46の回転操作を前輪支持機構5に伝達するように構成されている。
具体的には、ハンドル用リンク機構47は、ハンドル軸線の周りでハンドル46と一体に回転するようにハンドル軸53に連結された第1レバー48と、第2操舵軸線Cf2のマ周りでトップブリッジ23と一体に回転するようにトップブリッジ23に取り付けられた第2レバー49と、第1レバー48と第2レバー49とを連結するリンク50とを備える。
リンク50は、第2操舵軸線Cf2と直交する方向に延在している。そして、リンク50は、第1レバー48及び第2レバー49のそれぞれに対して、第1操舵軸線Cf1と平行な軸周りに揺動自在に軸支されている。また、リンク50と第1レバー48との連結部、及びリンク50と第2レバー49との連結部は、それぞれ、ハンドル軸線(第1操舵軸線Cf1)、第2操舵軸線Cf2と所定の間隔を有するように配置されている。
ハンドル用リンク機構47は、上記の如く構成されているので、ハンドル46をハンドル軸線の周りに回転操作したとき、ハンドル用リンク機構47を介して前輪支持機構5に第2操舵軸線Cf2の周りの回転力が付与されることとなる。これにより、ハンドル46の回転操作に応じて前輪3fの操舵を行うことが可能となっている。
以上のように構成された二輪車1では、前輪3fを第1操舵軸線Cf1又は第2操舵軸線Cf2の周りに操舵することで、車体2にロール方向のモーメントを作用させることができる。
本実施形態の二輪車1は、さらに、動作制御のための構成として図5に示す構成を備える。
すなわち、二輪車1は、図5に示すように、前記第1操舵用アクチュエータ15、第2操舵用アクチュエータ37、及び前輪駆動用アクチュエータ7の動作制御のための制御処理を実行する制御装置60を備えている。
さらに、二輪車1は、制御装置60の制御処理に必要な各種状態量を検出するためのセンサとして、車体2のロール方向の傾斜角を検出するための車体傾斜検出器61と、第1操舵軸線Cf1の周りでの前輪3fの操舵角(回転角)である第1操舵角を検出するための第1操舵角検出器62と、第2操舵軸線Cf2の周りでの前輪3fの操舵角(回転角)である第2操舵角を検出するための第2操舵角検出器63と、運転者によりハンドル46を介して付与される前輪3fの操舵力(第2操舵軸線Cf2の周りの回転駆動力)であるハンドルトルクを検出するためのハンドルトルク検出器64と、前輪3fの回転速度(角速度)を検出するための前輪回転速度検出器65と、ハンドル46のアクセルグリップの操作量(回転量)であるアクセル操作量を検出するためのアクセル操作検出器66とを備えている。なお、図1〜図4では、これらの検出器61〜66の図示を省略している。
制御装置60は、CPU、RAM、ROM、インターフェース回路等から構成される電子回路ユニットである。該制御装置60は、車体2の任意の適所に搭載される。そして、制御装置60には上記の各検出器61〜66の出力(検出信号)が入力される。
なお、制御装置60は、相互に通信可能な複数の電子回路ユニットにより構成されていてもよい。この場合、制御装置60を構成する複数の電子回路ユニットは、相互に離れた箇所に配置されていてもよい。
車体傾斜検出器61は、例えば加速度センサとジャイロセンサ(角速度センサ)とから構成される。該車体傾斜検出器61は、車体2の任意の適所に搭載される。この場合、制御装置60は、これらの加速度センサ及びジャイロセンサの出力に基づいて、ストラップダウン方式の演算処理等の所定の計測演算処理を実行することで、車体2のロール方向の傾斜角(より詳しくは、鉛直方向(重力方向)に対するロール方向の傾斜角)を計測する。
なお、本実施形態の説明では、二輪車1の基準姿勢状態における車体2のロール方向の傾斜角はゼロである。そして、該ロール方向の傾斜角の正方向は、二輪車1を背面側から見た場合に、車体2が右側に(時計周り方向に)傾く方向である。
第1操舵角検出器62及び第2操舵角検出器63のそれぞれは、例えば、ロータリエンコーダ又はポテンショメータ等により構成される。この場合、第1操舵角検出器62は、第1操舵軸17の回転に応じた信号を出力するように第1操舵軸17又は第1操舵用アクチュエータ15等に組付けられる。同様に、第2操舵角検出器63は、第2操舵軸21の回転に応じた信号を出力するように第2操舵軸21又は第2操舵用アクチュエータ37等に組付けられる。
なお、本実施形態での説明では、前輪3fの第1操舵角及び第2操舵角は、前輪3fが非操舵状態となる二輪車1の基準姿勢状態において、ゼロである。そして、第1操舵角の正方向は、二輪車1を上方から見た場合に、前輪3fが第1操舵軸線Cf1の周りで反時計周りに回転する方向、第2操舵角の正方向は、二輪車1を上方から見た場合に、前輪3fが第2操舵軸線Cf2の周りで反時計周りに回転する方向である。
ハンドルトルク検出器64は、例えば、ハンドル46側から第2操舵軸21に付与されるハンドルトルクに応じた信号を出力するように、該ハンドル46と第2操舵軸21との間の動力伝達系に介装される力センサ又はトルクセンサにより構成される。
なお、本実施形態の説明では、ハンドルトルクの正方向は、二輪車1を上方から見た場合に、前輪3fを第1操舵軸線Cf1の周りで反時計周りに回転させる方向である。
前輪回転速度検出器65は、例えば、前輪3fの回転速度に応じた信号を出力するように前輪3fの車軸に装着されるロータリエンコーダ等により構成される。
アクセル操作検出器66は、例えば、アクセルグリップの操作量(回転量)に応じた信号を出力するように、ハンドル46に内蔵されるロータリエンコーダあるいはポテンショメータ等により構成される。
上記制御装置60の機能についてさらに説明する。なお、以降の説明では、図1に示すXYZ座標系を使用する。このXYZ座標系は、二輪車1の基準姿勢状態において、鉛直方向(上下方向)をZ軸方向、車体2の前後方向をX軸方向、車体2の左右方向をY軸方向、二輪車1の全体重心Gの直下の接地面S上の点を原点として定義される座標系である。X軸、Y軸、Z軸の正方向は、それぞれ前向き、左向き、上向きである。
本実施形態では、二輪車1のロール方向の姿勢(傾斜角)を制御するために、二輪車1の動力学的な挙動(車体2のロール方向の傾斜に関する挙動)を2つの質点を用いて記述する2質点モデルを使用する。なお、この2質点モデルは、例えば特開2014−91386号公報、特開2014−91385号公報にて、本願出願人により詳細に説明されているものである。このため、本実施形態では、2質点モデルの説明は、簡略的な説明に留める。
上記2質点モデルは、図6に示すように、二輪車1が接地する接地面Sの上方で車体2のロール方向の傾斜角φbと前輪3fの操舵とに応じてY軸方向に水平に移動する質点71と、車体2のロール方向の傾斜角φbに依存せずに、前輪3fの操舵に応じて接地面S上をY軸方向に水平に移動する質点である接地面上質点72とから構成される。質点71は、倒立振子の質点と同様の挙動を呈する質点であり、以降、倒立振子質点71という。
この場合、倒立振子質点71の質量m1及び高さh’と、接地面上質点72の質量m2とは、次の式(1a)〜(1c)の関係を満たす(又は概ね満たす)ように設定される。なお、本実施形態の説明では、“*”は乗算を示す記号である。
m1+m2=m ……(1a)
m1*c=m2*h ……(1b)
m1*c*c+m2*h*h=I ……(1c)
ただし、c≡h’−h ……(1d)
ここで、mは、二輪車1の全体質量、hは、二輪車1の全体重心Gの高さ、Iは二輪車1のロール方向の慣性モーメントである。
なお、二輪車1の全体質量mは、より詳しくは、二輪車1の単体の質量と二輪車1に搭乗する運転者の質量との全体の質量である。また、二輪車1の全体重心Gは、二輪車1とこれに搭乗する運転者とを合わせたものの全体重心である。また、二輪車1のロール方向の慣性モーメントIは、二輪車1の全体重心Gを通る前後方向の軸(X軸に平行な軸)の周りにおける慣性モーメントである。
上記2質点モデルでは、二輪車1の基準姿勢状態では、倒立振子質点71及び接地面上質点72は、全体重心Gを通る鉛直線上(すなわちZ軸上)で、接地面Sからh’の高さの位置と、接地面S上の位置(接地面Sからの高さがゼロの位置)とにそれぞれ位置する。また、倒立振子質点71及び接地面上質点72は、車体2の対称面(車体2を左右対称とみなしたときの対称面)上に位置する。
そして、倒立振子質点71は、基準姿勢状態からの車体2のロール方向の傾斜角φbの変化と前輪3fの操舵(第1操舵角δf1又は第2操舵角δf2の変化)とに応じて、高さh’にて横方向(Y軸方向)に移動する。また、接地面上質点72は、基準姿勢状態からの前輪3fの操舵(第1操舵角δf1又は第2操舵角δf2の変化)に応じて、接地面S上を横方向(Y軸方向)に移動する。
なお、二輪車1の運転者の重心の位置が車体2の対称面上に維持される場合、倒立振子質点71及び接地面上質点72の位置は、車体2の対称面上に保たれる。この場合、倒立振子質点71と接地面上質点72とを結ぶ線分のロール方向の傾斜角は、車体2のロール方向の傾斜角φbに一致する。
また、2質点モデルにおける倒立振子質点71の動力学的な挙動は、倒立振子の質点と同様の挙動となる。具体的には、倒立振子質点71の運動方程式(動力学モデル)は、次式(2)により表現される。
m1*h’*Pb_diff_dot2_y=m1*g*Pb_diff_y−Mp−M2−Mi ……(2)
ここで、Pb_diff_yは、倒立振子質点71の、二輪車1の基準姿勢状態での位置からのY軸方向の移動量(以降、倒立振子質点横移動量という)、Pb_diff_dot2_yは、倒立振子質点横移動量Pb_diff_yの2階微分値(すなわち、倒立振子質点71のY軸方向の加速度)、gは重力加速度定数である。
また、Mpは、接地面Sから前輪3f及び後輪3rにそれぞれ作用する鉛直方向反力の合力の接地面S上の作用点としての接地圧中心点であるCOPに作用する当該合力(=m*g)に応じてXYZ座標系の原点周りでロール方向に発生するモーメント(以降、ロールモーメント床反力成分という)、M2は、接地面上質点72に作用する重力(=m2*g)に応じてXYZ座標系の原点周りでロール方向に発生するモーメント(以降、ロールモーメント接地面上質点成分という)、Miは、二輪車1の運動に伴う慣性力に応じてXYZ座標系の原点周りでロール方向に発生するモーメント(以降、ロールモーメント慣性力成分という)である。
なお、Mp、M2、Miの正方向は、本実施形態の説明では、二輪車1の背面側から見て(車体2の前方に向かって)、時計周り方向の向き(車体2を右側に傾ける方向)である。
ロールモーメント接地面上質点成分M2は、接地面上質点72の、二輪車1の基準姿勢状態での位置(XYZ座標系の原点位置)からのY軸方向の移動量をqと表記すると、次式(3)により算出される。
M2=−m2*g*q ……(3)
なお、接地面上質点72のY軸方向の移動量qは、第1操舵角δf1および第2操舵角δf2の大きさが比較的小さい場合(ゼロに近い場合)、例えば次式(4)により近似的に求めることができる。
q=(a1*sin(θcs)*(δf1)+a2*sin(θcs)*(δf1+δf2))*(Lr/L)
……(4)
ここで、a1は、基準姿勢状態の二輪車1の前輪3fの車軸中心点を通る鉛直線と第1操舵軸線Cf1との交点の高さ(接地面Sからの高さ)、a2は、基準姿勢状態の二輪車1の前輪3fの車軸中心点を通る鉛直線と第2操舵軸線Cf2との交点の高さ(接地面Sからの高さ)、Lrは基準姿勢状態の二輪車1の全体重心Gと後輪3rの接地点との間の前後方向(X軸方向)の距離、Lは基準姿勢状態の二輪車1の前輪3fの接地点と後輪3rの接地点との間の前後方向(X軸方向)の距離である。
また、ロールモーメント床反力成分Mpは、二輪車1の基準姿勢状態でのCOPの位置(XYZ座標系の原点位置)からのY軸方向の移動量をpと表記すると、次式(5)により算出される。
Mp=m*g*p ……(5)
なお、COPのY軸方向の移動量pは、第1操舵角δf1および第2操舵角δf2の大きさが比較的小さい場合(ゼロに近い場合)、例えば、上記式(4)により与えられるqを用いて、次式(6)により近似的に求めることができる。
p=(Lr/L)*(Rf*sin(θcs)*(δf1+δf2))−q*Rg/h’……(6)
ただし、
Rg≡(Lf/L)*Rr+(Lr/L)*Rf ……(7)
ここで、Rfは、基準姿勢状態の二輪車1の前輪3fの車軸中心線と接地点とを含む横断面(X軸方向に直交する横断面)で見た前輪3fの接地部分の横断面形状の曲率半径、Rrは、基準姿勢状態の二輪車1の後輪3rの車軸中心線と接地点とを含む横断面(X軸方向に直交する横断面)で見た後輪3rの接地部分の横断面形状の曲率半径である。
ロールモーメント慣性力成分Miは、前輪3fの操舵状態での二輪車1の走行時に発生する二輪車1の横方向(Y軸方向)の並進移動速度(横速度)の時間的変化率(並進加速度)に応じた慣性力成分と、二輪車1の旋回時の遠心力に応じた慣性力成分との総和のモーメントである。
従って、二輪車1の横方向(Y軸方向)の並進移動速度(詳しくは、前記XYZ座標系の原点位置での二輪車1のY軸方向の並進移動速度)である横速度をVoy、その時間的変化率(1階微分値)をVoy_dot、車体2の前後方向(X軸方向)の移動速度(すなわち、二輪車1の走行速度)をVox、車体2のヨー方向(Z軸周り方向)の角速度をωzと表記すると、2質点モデルでのロールモーメント慣性力成分Miは、例えば次式(8)により求めることができる。
Mi=Voy_dot*m1*h’+ωz*Vox*m1*h’
=(Voy_dot+ωz*Vox)*m1*h’ ……(8)
ここで、Voy_dot*m1*h’が、二輪車1の横速度Voyの時間的変化率Voy_dotに応じた慣性力成分、ωz*Vox*m1*h’が、遠心力に応じた慣性力成分である。また、ωz*Voxは、遠心加速度である。
本実施形態では、制御装置60は、上記2質点モデルに基づいて構築された制御処理を実行するように構成されている。この場合、制御装置60は、前輪3fの操舵によって倒立振子質点横移動量Pb_diff_yを制御することで、車体2のロール方向の姿勢(傾斜角)を制御する。
また、この制御においては、二輪車1の車体2の搭乗部4に着座した運転者が、二輪車1の旋回時等に車体2の左右方向に体重移動した場合に、運転者の重心が、車体2の対称面上から右側又は左側に横ずれする(ひいては、車体2の全体重心G及び倒立振子質点71が車体2の対称面上から右側又は左側に横ずれする)ことを考慮し、当該横ずれが発生した場合に、その横ずれを低減するように、車体2のロール方向の姿勢(傾斜角)が制御される。
ここで、図7Aは、運転者の重心Gdが、車体2の対称面上に位置する状態(重心Gdの横ずれが生じていない状態)での該運転者の重心Gdと、運転者を除いた二輪車1単体の重心Gbと、全体重心Gとの位置関係を表している。この状態は、所謂、リーンウィズの状態である。この状態では、重心Gd、Gbが対称面上にあるので、全体重心Gも対称面上に位置する。
また、図7Bは、運転者の重心Gdを、車体2の左右方向で、二輪車1の旋回方向(又は車体2の傾き方向)と同じ方向に車体2の対称面からずらした状態での上記重心Gd、Gb、Gの位置関係を表している。また、図7Cは、運転者の重心Gdを、車体2の左右方向で、二輪車1の旋回方向(又は車体2の傾き方向)と逆方向に車体2の対称面からずらした状態での上記重心Gd、Gb、Gの位置関係を表している。
図7Bの状態は、所謂、リーンインの状態、図7Cの状態は、所謂、リーンアウトの状態である。これらの状態では、運転者の重心Gdが対称面上から横ずれしているので、全体重心Gも対称面上から横ずれすることとなる。
従って、運転者の重心Gdの上記横ずれを低減するように、車体2のロール方向の姿勢(傾斜角)を制御するということは、換言すれば、リーンインの状態又はリーンアウトの状態からリーンウィズの状態に近づけるように(運転者の重心Gdに車体2の対称面を近づけるように)、車体2のロール方向の姿勢(傾斜角)を制御することを意味する。
このような制御処理を実行する制御装置60の機能を以下に具体的に説明する。なお、以降の説明では、前輪3fの操舵角等、任意の状態量の参照符号に付する添え字“_act”は、実際の値、又はその観測値(検出値もしくは推定値)を示す符号として使用する。また、目標値には、添え字“_cmd”を付する。
制御装置60は、実装されたプログラムをCPUが実行することにより実現される機能(ソフトウェアにより実現される機能)又はハードウェア構成により実現される機能として、図8のブロック図に示す機能を有する。
すなわち、制御装置60は、二輪車1の倒立振子質点71のY軸方向(車体2の左右方向)の移動量である倒立振子質点横移動量Pb_diff_yの実際の値Pb_diff_y_actの推定値(以降、倒立振子質点横移動量推定値Pb_diff_y_actという)を算出する倒立振子質点横移動量推定値算出部81と、倒立振子質点71のY軸方向の並進速度である倒立振子質点横速度Vbyの実際の値Vby_actの推定値(以降、倒立振子質点横速度推定値Vby_actという)を算出する倒立振子質点横速度推定値算出部82と、運転者の左右方向(Y軸方向)への体重移動に起因する該運転者の重心のずれ度合い(車体2の対称面からのY軸方向へのずれ度合)を表す指標値(以降、乗員重心横ずれ指標値という)を算出する乗員重心横ずれ指標値算出部83と、倒立振子質点横移動量Pb_diff_yの目標値Pb_diff_y_cmd(以降、目標倒立振子質点横移動量Pb_diff_y_cmdという)と倒立振子質点横速度Vbyの目標値Vby_cmd(以降、目標倒立振子質点横速度Vby_cmdという)を決定する目標姿勢状態決定部84とを備える。
ここで、本実施形態では、乗員重心横ずれ指標値算出部83は、運転者の重心が車体2の対称面から横ずれすることに応じて生じる倒立振子質点71の横ずれ量Pb_err(車体2の対象面からのY軸方向のずれ量)の推定値(以降、倒立振子質点横ずれ推定値Pb_errという)を乗員重心横ずれ指標値として算出する。
さらに、制御装置60は、前輪3fの第1操舵角δf1の目標値δf1_cmd(以降、目標第1操舵角δf1_cmdという)、第1操舵角δf1の時間的変化率である第1操舵角速度δf1_dotの目標値δf1_dot_cmd(以降、目標第1操舵角速度δf1_dot_cmdという)及び第1操舵角速度δf1_dotの時間的変化率である第1操舵角加速度δf1_dot2の目標値δf1_dot2_cmd(以降、目標第1操舵角加速度δf1_dot2_cmdという)を、車体2のロール方向の姿勢制御のための主たる制御入力(操作量)として決定する姿勢制御演算部85と、前輪3fの第2操舵角δf2の目標値δf2_cmd(以降、目標第2操舵角δf2_cmdという)、第2操舵角δf2の時間的変化率である第2操舵角速度δf2_dotの目標値δf2_dot_cmd(以降、目標第2操舵角速度δf2_dot_cmdという)及び第2操舵角速度δf2_dotの時間的変化率である第2操舵角加速度δf2_dot2の目標値δf2_dot2_cmd(以降、目標第2操舵角加速度δf2_dot2_cmdという)を決定する第2操舵角指令決定部86と、二輪車1の走行速度Voxの目標値Vox_cmd(以降、目標走行速度Vox_cmdという)を決定する目標走行速度決定部87とを備える。
制御装置60は、上記各機能部の処理を所定の制御処理周期で逐次実行する。そして、制御装置60は、姿勢制御演算部85により決定した目標第1操舵角δf1_cmd、目標第1操舵角速度δf1_dot_cmd及び目標第1操舵角加速度δf1_dot2_cmdに応じて第1操舵用アクチュエータ15を制御する。
また、制御装置60は、第2操舵角指令決定部86により決定した目標第2操舵角δf2_cmd、目標第2操舵角速度δf2_dot_cmd及び目標第2操舵角加速度δf2_dot2_cmdに応じて第2操舵用アクチュエータ37を制御する。
また、制御装置60は、目標走行速度決定部87により決定した目標走行速度Vox_cmdに応じて前輪駆動用アクチュエータ7を制御する。
以下に、制御装置60の制御処理の詳細を説明する。なお、制御装置60の制御処理に関して以下に説明する演算処理では、前記した2質点モデルに関するパラメータm,m1,m2,h’の値と、二輪車1の仕様に関するパラメータθcs,Lf,Lr,Rgの値とが使用される。これらのパラメータm,m1,m2,h’,θcs,Lf,Lr,Rgの値は、あらかじめ定められた設定値である。また、演算処理における“g”は、重力加速度定数である。
制御装置60は、各制御処理周期において、倒立振子質点横移動量推定値算出部81の処理を実行する。
倒立振子質点横移動量推定値算出部81には、図9に示すように、車体2のロール方向の傾斜角φb(以降、ロール角φbという)の検出値であるロール角検出値φb_actと、前輪3fの第1操舵角δf1の検出値である第1操舵角検出値δf1_act及び第2操舵角δf2の検出値である第2操舵角検出値δf2_actとが入力される。
上記ロール角検出値φb_actは、車体傾斜検出器61の出力により示される検出値(観測値)、第1操舵角検出値δf1_actは、第1操舵角検出器62の出力により示される検出値(観測値)、第2操舵角検出値δf2_actは、第2操舵角検出器63の出力により示される検出値(観測値)である。
そして、倒立振子質点横移動量推定値算出部81は、図9のブロック線図で示される演算処理により倒立振子質点横移動量推定値Pb_diff_y_actを算出する。すなわち、倒立振子質点横移動量推定値算出部81は、次式(10a)〜(10c)の演算処理により、Pb_diff_y_actを算出する。
Pb_diff_y_1=−h’*φb_act ……(10a)
Pb_diff_y_2=(Plf1y(δf1_act)+Plf2y(δf1_act+δf2_act))*(Lr/L)
……(10b)
Pb_diff_y_act=Pb_diff_y_1+Pb_diff_y_2 ……(10c)
図9では、処理部81−1、81−2、81−3が、それぞれ、式(10a)、(10b)、(10c)の演算処理を実行する処理部を示している。
ここで、処理部81−1において、式(10a)により算出されるPb_diff_y_1は、Pb_diff_y_actのうちの、ロール角検出値φb_actに応じて規定される成分である。なお、式(10a)の演算処理では、近似的に、sin(φb_act)≒φb_actとされている。
また、処理部81−2において、式(10b)により算出されるPb_diff_y_2は、Pb_diff_y_actのうちの、前輪3fの操舵角(第1操舵角検出値δf1_act及び第2操舵角検出値δf2_act)に応じて規定される成分である。このPb_diff_y_2は、前輪3fの操舵に応じた前記接地面上質点72のY軸方向の移動量qの推定値に相当するものである。
そして、式(10b)におけるPlf1y(δf1_act)は、図9の処理部81−2−1において、δf1_actの値から、あらかじめ設定された変換関数Plf1y(δf1)により決定される関数値である。この変換関数Plf1y(δf1)は、例えばマップもしくは演算式により構成される。該変換関数Plf1y(δf1)は、本実施形態では、処理部81−2−1の図で例示されるように、δf1の値の増加(負側の値から正側の値への増加)に伴い、Plf1yの値が正側の値から負側の値に減少していくように設定されている。
また、式(10b)におけるPlf2y(δf1_act+δf2_act)は、図9の処理部81−2−2において、δf1_act+δf2_actの値から、あらかじめ設定された変換関数Plf2y(δf1+δf2)により決定される関数値である。この変換関数Plf2y(δf1+δf2)は、例えばマップもしくは演算式により構成される。該変換関数Plf2y(δf1+δf2)は、本実施形態では、処理部81−2−2の図で例示されるように、δf1+δf2の値の増加(負側の値から正側の値への増加)に伴い、Plf2yの値が負側の値から正側の値に増加していくように設定されている。
そして、式(10a),(10b)によりそれぞれ算出されるPb_diff_y_1,Pb_diff_y_2から、処理部81−3の演算処理(式(10c))により、倒立振子質点横移動量推定値Pb_diff_y_actが算出される。
以上の如く、倒立振子質点横移動量推定値算出部81は、各制御処理周期において、上記の式(10a)〜(10c)の演算処理を実行することで、倒立振子質点横移動量推定値Pb_diff_y_actを算出する。
補足すると、処理部81−2−1において、Plf1y(δf1_act)*(Lr/L)の値を求めると共に、処理部81−2−2において、Plf2y(δf1_act+δf2_act)*(Lr/L)の値を求めるように、処理部81−2−1及び81−2−2の変換関数を設定しておくこともできる。
この場合には、処理部81−2−1及び81−2−2の出力値を加え合わせたものが、そのまま、Pb_diff_y_2として算出されることとなる。
また、Pb_diff_y_2を求める処理部81−2では、例えば、δf1_act,δf2_actの値の組から、二次元マップ等によりPb_diff_y_2を直接的に求めるようにしてもよい。
また、処理部81−2では、δf1_act,δf2_actのそれぞれの大きさ(絶対値)が十分に小さい場合には、前記式(4)の右辺の演算により、Pb_diff_y_2を求めるようにしてもよい。
制御装置60は、次に、倒立振子質点横速度推定値算出部82の処理を実行する。
倒立振子質点横速度推定値算出部82には、図10に示すように、倒立振子質点横移動量推定値算出部81で算出された倒立振子質点横移動量推定値Pb_diff_y_actと、前輪3fの第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actと、前輪3fの回転移動速度Vfの推定値(観測値)である前輪回転移動速度推定値Vf_actとが入力される。
上記前輪回転移動速度推定値Vf_actは、前記前輪回転速度検出器65の出力により示される前輪3fの回転角速度の検出値(観測値)に該前輪3fの既定の有効回転半径を乗じることで算出される速度である。
そして、倒立振子質点横速度推定値算出部82は、図10のブロック線図で示す演算処理により、倒立振子質点横速度推定値Vby_actを算出する。すなわち、倒立振子質点横速度推定値算出部82は、次式(11a)〜(11d)の演算処理により、倒立振子質点横速度推定値Vby_actを算出する。
Pb_diff_dot_y_act=Pb_diff_y_actの微分値(時間的変化率) ……(11a)
δf’_act=(δf1_act+δf2_act)*cos(θcs) ……(11b)
Voy_act=sin(δf’_act)*Vf_act*(Lr/L) ……(11c)
Vby_act=Pb_diff_dot_y_act+Voy_act ……(11d)
図10では、処理部82−1が式(11a)の演算処理(微分演算処理)を実行する処理部、処理部82−2が、式(11b)及び(11c)の演算処理を実行する処理部、処理部82−3が式(11d)の演算処理を実行する処理部を示している。
ここで、処理部82−1において、式(11a)により算出されるPb_diff_dot_y_actは、前記XYZ座標系で見た倒立振子質点71のY軸方向の移動速度(XYZ座標系の原点に対する相対速度)の推定値である。
また、処理部82−2において、式(11b)により算出されるδf’_actは、前輪3fの操舵によるヨー方向(Z軸周り方向)での前輪3fの回転角である前輪有効操舵角δ'fの推定値(以降、前輪有効操舵角推定値δf’_actという)である。
前輪有効操舵角δ'fは、より詳しくは、前輪3fの回転面(前輪3fの車軸中心点を通って該前輪3fの車軸中心線に直交する面)と接地面Sとの交線が、車体2の前後方向(X軸方向)に対してなす角度である。
そして、このδf’の推定値である前輪有効操舵角推定値δ'f_actは、車体2のロール角φbが比較的小さい場合に、近似的に、上記式(11b)により算出することができる。
なお、δ'f_actの精度をより高めるために、例えば、δf1_act+δf2_actから、又は、δf1_act,δf2_actから、あらかじめ設定したマップによりδ'f_actを求めるようにしてもよい。あるいは、δ'f_actの精度をより一層高めるために、例えば、δf1_act+δf2_act、又は、δf1_act,δf2_actと、車体2のロール角検出値φb_actとから、あらかじめ設定したマップによりδ'f_actを求めるようにしてもよい。
さらに、処理部82−2において、上記前輪有効操舵角推定値δ'f_actを用いて式(11c)により算出されるVoy_actは、前輪3fが操舵中である場合の二輪車1の走行時に生じる該二輪車1の横速度(詳しくは、二輪車1に対して設定した前記XYZ座標系の原点位置での該二輪車1のY軸方向の並進移動速度)の推定値に相当するものである。
そして、式(11a),(11c)によりそれぞれ算出されるPb_diff_dot_y_act,Voy_actから、処理部82−3の演算処理(式(11d))により、倒立振子質点横速度推定値Vby_actが算出される。
以上の如く、倒立振子質点横速度推定値算出部82は、各制御処理周期において、前記式(11a),(11b),(11c),(11d)の演算処理を実行することで、倒立振子質点横速度推定値Vby_actを算出する。
制御装置60は、さらに、乗員重心横ずれ指標値算出部83の処理を実行する。該乗員重心横ずれ指標値算出部83には、図11に示すように、倒立振子質点横移動量推定値算出部81で算出された倒立振子質点横移動量推定値Pb_diff_y_actと、前輪3fの第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actと、前記した前輪回転移動速度推定値Vf_actとが入力される。
そして、乗員重心横ずれ指標値算出部83は、図11のブロック線図で示す演算処理により、乗員重心横ずれ指標値としての倒立振子質点横ずれ推定値Pb_errを算出する。この場合、乗員重心横ずれ指標値算出部83は、オブザーバとして構成されている。
具体的には、乗員重心横ずれ指標値算出部83は、δf1_act、δf2_act及びVf_actの入力値を基に、前記ロールモーメント慣性力成分Miの推定値、前記ロールモーメント床反力成分Mpの推定値、及び前記ロールモーメント接地面上質点成分M2の推定値のそれぞれを、ロールモーメント慣性力成分算出部83−2、ロールモーメント床反力成分算出部83−3、及びロールモーメント接地面上質点成分算出部83−4により各々算出する。なお、上記各算出部83−2,83−3,83−4の具体的な処理は後述する。
そして、乗員重心横ずれ指標値算出部83は、Mi,Mp,M2のそれぞれの推定値と、Pb_diff_y_actの入力値と、前回の制御処理周期において既に算出した倒立振子質点横ずれ推定値Pb_errの値(前回値)Pb_err_pとを基に、運転者の重心の横ずれによる倒立振子質点71の横ずれを考慮した動力学モデルに基づく演算処理を処理部83−5で実行することで、倒立振子質点71のY軸方向の並進加速度Pb_diff_dot2_yの推定値を算出する。
なお、前回値Pb_err_pは、換言すれば、現在以前に既に算出した倒立振子質点横ずれ推定値Pb_errのうちの最新値に相当するものである。
ここで、運転者の重心の横ずれによる倒立振子質点71の横ずれを考慮した動力学モデル(倒立振子質点71の運動方程式)は、前記式(2)の右辺のPb_diff_yをPb_diff_y_act+Pb_errで置き換えた運動方程式により表現される。
従って、処理部83−5の演算処理は、次式(12a)により行われる。
Pb_diff_dot2_y
=(m1*g*(Pb_diff_y_act+Pb_err_p)−Mp−M2−Mi)/(m1*h’)
……(12a)
そして、乗員重心横ずれ指標値算出部83は、次式(12b)で示す如く、上記式(12a)により算出したPb_diff_dot2_yを処理部83−6で積分することにより、倒立振子質点71のY軸方向の移動速度(XYZ座標系で見た移動速度)の第1推定値である倒立振子質点横速度第1推定値Pb_diff_dot_y_1を算出する。
Pb_diff_dot_y_1=Pb_diff_dot2_yの積分値 ……(12b)
また、乗員重心横ずれ指標値算出部83は、次式(12c)で示す如く、Pb_diff_y_actの入力値に対して処理部83−1で微分演算を実行することにより、倒立振子質点71のY軸方向の移動速度(XYZ座標系で見た移動速度)の第2推定値である倒立振子質点横速度第2推定値Pb_diff_dot_y_2を算出する。
Pb_diff_dot_y_2=Pb_diff_y_actの微分値(時間的変化率) ……(12c)
なお、式(12c)により算出されるPb_diff_dot_y_2は、前記倒立振子質点横速度推定値算出部82が、前記式(11a)により算出するPb_diff_dot_y_actと同じである。従って、倒立振子質点横速度推定値算出部82で算出されたPb_diff_dot_y_actをそのまま、倒立振子質点横速度第2推定値Pb_diff_dot_y_2としてもよい。
ここで、前記倒立振子質点横移動量推定値Pb_diff_y_actは、運転者の重心の横ずれ(車体2の対称面上からの横ずれ)が発生していないものとみなして前記倒立振子質点横移動量推定値算出部81により算出されるものである。このため、式(12c)により算出される倒立振子質点横速度第2推定値Pb_diff_dot_y_2は、運転者の重心の横ずれが発生していないと仮定した場合の倒立振子質点71のY軸方向の移動速度の推定値に相当する。
従って、この倒立振子質点横速度第2推定値Pb_diff_dot_y_2と、前記式(12a),(12b)により動力学的に算出される倒立振子質点横速度第1推定値Pb_diff_dot_y_1との偏差が、運転者の重心の横ずれに起因する倒立振子質点横ずれ量Pb_errに応じたものとなる。
そこで、乗員重心横ずれ指標値算出部83は、処理部83−7において、次式(12d)の演算処理により、倒立振子質点横ずれ推定値Pb_errを算出する。
Pb_err
=(Pb_diff_dot_y_2−Pb_diff_dot_y_1)*Kestm*(m1*h’)/(m1*g)
=(Pb_diff_dot_y_2−Pb_diff_dot_y_1)*Kestm*h’/g
……(12d)
この式(12d)の演算処理に用いるKestmは、あらかじめ定められた所定値のゲインである。なお、この式(12d)により算出されるPb_errは、運転者の重心が車体2の対称面上からリーンイン側にずれている場合に、正の値となり、リーンオウト側にずれている場合に、負の値となる。
補足すると、式(12d)におけるKestm*h’/gを、1つのゲイン値としてあらかじめ設定しておいてもよい。
また、図11のブロック線図では、(Pb_diff_dot_y_2−Pb_diff_dot_y_1)*Kestm*(m1*h’)の前回値(=Pb_err_p*m1*g)を、処理部83−7から処理部83−5に入力している。ただし、例えば倒立振子質点横ずれ推定値Pb_errの前回値Pb_err_pを直接的に処理部83−5に入力するようにしてもよい。
以上の如く、乗員重心横ずれ指標値算出部83は、Mi,Mp,M2の推定値を算出すると共に、これらの推定値と、倒立振子質点横移動量Pb_diff_y_actとを用いて、式(12a)〜(12d)の演算処理を実行することで、倒立振子質点横ずれ推定値Pb_errを算出する。
この場合、Mi,Mp,M2の推定値は、それぞれ以下に説明する如く算出される。
まず、乗員重心横ずれ指標値算出部83のロールモーメント慣性力成分算出部83−2は、図12のブロック線図に示す演算処理により、ロールモーメント慣性力成分Miの推定値を算出する。すなわち、ロールモーメント慣性力成分算出部83−2は、次式(13a)〜(13f)の演算処理により、ロールモーメント慣性力成分Miの推定値を算出する。
δf’_act=(δf1_act+δf2_act)*cos(θcs) ……(13a)
Voy_act=sin(δf’_act)*Vf_act*(Lr/L) ……(13b)
Voy_dot_act=Voy_actの微分値(時間的変化率) ……(13c)
ωz_act=sin(δf’_act)*Vf_act*(1/L) ……(13d)
Vox_act=cos(δf’_act)*Vf_act ……(13e)
Mi=(Voy_dot_act+ωz_act*Vox_act)*m1*h’ ……(13f)
図12では、処理部83−2−1が、式(13a),(13b)の演算処理を実行する処理部、処理部83−2−2が、式(13c)の演算処理(微分演算処理)を実行する処理部、処理部83−2−3が、式(13a),(13d)の演算処理を実行する処理部、処理部83−2−4が、式(13a),(13e)の演算処理を実行する処理部、処理部83−2−5が、式(13f)の演算処理を実行する処理部を示している。
ここで、処理部83−2−1の演算処理(式(13a),(13b))は、前記倒立振子質点横速度推定値算出部82の処理部82−2の演算処理と同じである。従って、この演算処理により、前輪3fが操舵中である場合の二輪車1の走行時に生じる該二輪車1の横速度(詳しくは、二輪車1に対して設定した前記XYZ座標系の原点位置での該二輪車1のY軸方向の並進移動速度)の推定値Voy_actが算出される。
そして、この推定値Voy_actの微分値Voy_dot_act、すなわち、二輪車1の横速度(Y軸方向の並進移動速度)の推定値Voy_dot_actが処理部83−2−2の演算処理(式(13c))により算出される。
また、処理部83−2−3の演算処理(式(13a),(13d))により、二輪車1のヨー方向(Z軸周り方向)の角速度ωzの推定値ωz_act(以降、ヨーレート推定値ωz_actという)が算出される。
また、処理部83−2−4の演算処理(式(13a),(13e))により、二輪車1の車体2の前後方向(X軸方向)における移動速度(すなわち、二輪車1の走行速度Vox)の推定値Vox_act(以降、走行速度推定値Vox_actという)が算出される。
そして、処理部83−2−2,83−2−3,83−2−4でそれぞれ算出したVoy_dot_act,ωz_act,Vox_actを用いて、処理部83−2−5の演算処理(式(13f))が実行される。これにより、ロールモーメント慣性力成分Miの推定値が算出される。
なお、式(13f)は、前記式(8)のVoy_dot,ωz,Voxの値として、それぞれVoy_dot_act,ωz_act,Vox_actを使用してなる式である。
以上の如く、ロールモーメント慣性力成分算出部83−2は、前記式(13a)〜(13f)の演算処理を実行することで、ロールモーメント慣性力成分Miの推定値を算出する。
補足すると、式(13a)により算出される前輪有効舵角推定値δf’_actは、倒立振子質点横速度推定値算出部82で算出される値と同じである。従って、式(13b),(13c),(13d)の演算処理では、倒立振子質点横速度推定値算出部82で算出される前輪有効舵角推定値δf’_actをそのまま使用してもよい。この場合には、ロールモーメント慣性力成分算出部83−2の演算処理のうち、δf’_actを算出する演算処理(式(13a))は不要である。
さらに、処理部83−2−1を省略し、倒立振子質点横速度推定値算出部82で算出される二輪車1の横速度の推定値Voy_actをそのまま、処理部83−2−2の演算処理(式(13c))で使用してもよい。
また、例えば、二輪車1の車体2に、ヨー方向の角速度を検出する角速度センサが搭載されている場合には、その角速度センサの出力により示されるヨー方向の角速度の検出値を、式(13f)におけるωz_actの値として使用してもよい。この場合には、処理部83−2−3の演算処理(式(13d))は不要となる。
また、例えば、二輪車1の後輪3rの回転速度(角速度)を検出する後輪回転速度検出器が二輪車1に搭載されている場合には、該後輪回転速度検出器の出力により示される後輪3rの回転速度の検出値に、後輪3rの有効回転半径を乗じてなる後輪3rの並進移動速度の推定値を、式(13f)におけるVox_actの値として使用してもよい。この場合には、処理部83−2−4の演算処理(式(13e))は不要となる。
次に、乗員重心横ずれ指標値算出部83のロールモーメント床反力成分算出部83−3は、図13のブロック線図に示す演算処理により、ロールモーメント床反力成分Mpの推定値を算出する。すなわち、ロールモーメント床反力成分算出部83−3は、次式(14a)〜(14c)の演算処理により、ロールモーメント床反力成分Mpの推定値を算出する。
p1=Pfy(δf1_act+δf2_act)*(Lr/L) ……(14a)
p2=(Plf1y(δf1_act)+Plf2y(δf1_act+δf2_act))*(Lr/L)*(−Rg/h’)
……(14b)
Mp=(p1+p2)*m*g ……(14c)
図13では、処理部83−3−1が、式(14a)の演算処理を実行する処理部、処理部83−3−2が、式(14b)の演算処理を実行する処理部、処理部83−3−3が、式(14c)の演算処理を実行する処理部を示している。
ここで、処理部83−3−1の演算処理(式(14a))により算出されるp1は、XYZ座標系の原点位置からのCOPのY軸方向の移動量p(以降、横移動量pという)のうち、前輪3fの操舵時に該前輪3fが横方向(Y軸方向)に転がることによって、該前輪3fの接地点がY軸方向に移動することに応じて生じる移動量成分である。この移動量成分p1の値は、前記式(6)の右辺第1項の値に相当するものである。
そして、式(14a)におけるPfy(δf1_act+δf2_act)は、図13の処理部83−3−1のうちの処理部83−3−1−1において、δf1_act+δf2_actの値から、あらかじめ設定された変換関数Pfy(δf1+δf2)により決定される関数値である。この変換関数Pfy(δf1+δf2)は、例えばマップもしくは演算式により構成される。該変換関数Pfy(δf1+δf2)は、処理部83−3−1−1の図で例示されるように、δf1+δf2の値の増加(負側の値から正側の値への増加)に伴い、Pfyの値が負側の値から正側の値に単調増加していくように設定されている。
また、処理部83−3−2の演算処理(式(14b))により算出されるp2は、COPの横移動量pのうち、前輪3fの操舵時に該前輪3fが傾くことによって、該前輪3fの接地点がY軸方向に移動することに起因して生じる移動量成分である。この移動量成分p2は、前記式(6)の右辺第2項に値に相当するものである。
この場合、式(14b)の右辺の演算のうち、(−Rg/h’)の乗算を除いた演算処理、すなわち、処理部83−3−2のうちの処理部83−3−2−1の演算処理は、前記倒立振子質点横移動量推定値算出部81の演算処理のうちの処理部81−2の処理(Pb_diff_y_2を算出する処理)と同じである。
従って、式(14b)は、次式(14b’)と等価である。
p2=Pb_diff_y_2*(−Rg/h’) ……(14b’)
また、処理部83−3−3の演算処理(式(14c))は、前記式(5)におけるpの値として、p1+p2を使用した式によって、ロールモーメント床反力成分Mpを算出する演算処理である。
以上の如く、ロールモーメント床反力成分算出部83−3は、前記式(14a)〜(14c)の演算処理により、ロールモーメント床反力成分Mpの推定値を算出する。
補足すると、処理部83−3−1において、変換関数Pfy(δf1+δf2)の代わりに、(Pfy(δf1_act+δf2_act)*(Lr/L)の値(=p1)を関数値として求める変換関数を使用してもよい。この場合には該変換関数により、直接的にp1が求められる。
また、処理部83−3−2のうちの処理部83−3−2−1は、倒立振子質点横移動量推定値算出部81の処理部81−2に関して補足説明した変形態様を採用することもできる。
さらに、処理部83−3−2の演算処理では、変換関数Plf1y(δf1)の代わりに、(Plf1y(δf1_act)*(Lr/L)*(−Rg/h’)の値を関数値として求める変換関数を使用すると共に、変換関数Plf2y(δf1+δf2)の代わりに、(Plf2y(δf1_act+δf2_act)*(Lr/L)*(−Rg/h’)の値を関数値として求める変換関数を使用するようにしてもよい。この場合には、これらの変換関数の出力値を加え合わせたものが、p2として求められる。
また、p1、p2は、いずれも、δf1_act,δf2_actの組の関数値であるから、COPの横移動量pの推定値、あるいは、ロールモーメント床反力成分Mpを、δf1_act,δf2_actの組から、2次元マップ等により直接的に求めることも可能である。
また、δf1_act,δf2_actのそれぞれの大きさ(絶対値)が十分に小さい場合には、前記式(4)及び式(6)の演算処理により、COPの横移動量pを算出するようにしてもよい。
次に、乗員重心横ずれ指標値算出部83のロールモーメント接地面上質点成分算出部83−4は、図14のブロック線図に示す演算処理により、ロールモーメント接地面上質点成分M2の推定値を算出する。すなわち、ロールモーメント接地面上質点成分算出部83−4は、次式(15a),(15b)の演算処理により、ロールモーメント接地面上質点成分M2の推定値を算出する。
q=(Plf1y(δf1_act)+Plf2y(δf1_act+δf2_act))*(Lr/L) ……(15a)
M2=q*(−m2*g) ……(15b)
図14では、処理部83−4−1が、式(15a)の演算処理を実行する処理部、処理部83−4−2が、式(15b)の演算処理を実行する処理部を示している。
ここで、処理部83−4−1の演算処理(式(15a))により算出されるqは、XYZ座標系の原点位置からの接地面上質点72のY軸方向の移動量(以降、横移動量qという)である。
この場合、処理部83−4−1の演算処理は、前記倒立振子質点横移動量推定値算出部81の演算処理のうちの処理部81−2の演算処理(Pb_diff_y_2を算出する処理)と同じである。従って、処理部83−4−1の演算処理では、Pb_diff_y_2が接地面上質点72の横移動量qとして算出される。
また、処理部83−4−2の演算処理(式(15b))は、前記式(3)と同じ式によってロールモーメント接地面上質点成分M2を算出する演算処理である。
以上の如く、ロールモーメント接地面上質点成分算出部83−4は、前記式(15a),(15b)の演算処理により、ロールモーメント接地面上質点成分M2の推定値を算出する。
補足すると、処理部83−4−1は、倒立振子質点横移動量推定値算出部81の処理部81−2に関して補足説明した変形態様を採用することもできる。
さらに、変換関数Plf1y(δf1)の代わりに、(Plf1y(δf1_act)*(Lr/L)*(−m2*g))の値を関数値として求める変換関数を使用すると共に、変換関数Plf2y(δf2)の代わりに、(Plf2y(δf1_act+δf2_act)*(Lr/L)*(−m2*g)の値を関数値として求める変換関数を使用するようにしてもよい。この場合には、これらの変換関数の出力値を加え合わせたものが、そのままロールモーメント接地面上質点成分M2として求められる。
また、接地面上質点72の横移動量qの推定値、あるいは、ロールモーメント接地面上質点成分M2を、δf1_act,δf2_actの組から、2次元マップ等により直接的に求めることも可能である。
また、δf1_act,δf2_actのそれぞれの大きさ(絶対値)が十分に小さい場合には、前記式(4)の演算処理により、接地面上質点72の横移動量pを算出するようにしてもよい。
図8に戻って、制御装置60は、さらに、目標姿勢状態決定部84の処理を実行する。
本実施形態では、目標姿勢状態決定部84は、例えば、前記式(13d)の演算処理により算出される二輪車1のヨー方向(Z軸周り方向)の角速度ωzの推定値ωz_actと、式(13e)の演算処理により算出される二輪車1の走行速度Vox(車体2のX軸方向における移動速度)の推定値Vox_actとを用いて、次式(16a)、(16b)の演算処理により目標倒立振子質点横移動量Pb_diff_y_cmdを決定する。また、本実施形態では、目標姿勢状態決定部84は、目標倒立振子質点横速度Vby_cmdをゼロとする。
φb_lean=−Vox_act*ωz_act/m ……(16a)
Pd_diff_y_cmd=−φlean*h’ ……(16b)
ここで、式(16a)の演算処理により算出されるφb_leanは、二輪車1に作用する重力により発生するロール方向のモーメントと遠心力により発生するロール方向のモーメントとが釣り合うこととなる車体2のロール角である。
目標姿勢状態決定部84は、以上の如くPb_diff_y_cmd及びVby_cmdを決定する。補足すると、目標倒立振子質点横速度Vby_cmdは、例えば、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_act等に応じて可変的に決定するようにすることも可能である。
また、目標倒立振子質点横移動量Pb_diff_y_cmdを例えばゼロとしてもよい。あるいは、目標倒立振子質点横移動量Pb_diff_y_cmdを、例えば、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_act等に応じて可変的に決定するようにすることも可能である。
制御装置60は、次に、姿勢制御演算部85の処理を実行する。この姿勢制御演算部85には、図15に示すように、目標姿勢状態決定部84で決定された目標倒立振子質点横移動量Pb_diff_y_cmd及び目標倒立振子質点横速度Vby_cmdと、倒立振子質点横移動量推定値算出部81で算出された倒立振子質点横移動量推定値Pb_diff_y_actと、倒立振子質点横速度推定値算出部82で算出された倒立振子質点横速度推定値Vby_actと、乗員重心横ずれ指標値算出部83で算出された倒立振子質点横ずれ推定値Pb_errとが入力される。
そして、姿勢制御演算部85は、上記の入力値を用いて、図15のブロック線図で示される演算処理により、目標第1操舵角δf1_cmdと、目標第1操舵角速度δf1_dot_cmdと、目標第1操舵角加速度δf1_dot2_cmdとを決定する。
すなわち、姿勢制御演算部85は、次式(17a)の演算処理により、目標第1操舵角加速度δf1_dot2_cmdを算出する。さらに姿勢制御演算部85は、次式(17b)で示す如く、目標第1操舵角加速度δf1_dot2_cmdを積分することより、目標第1操舵角速度δf1_dot_cmdを算出する。さらに姿勢制御演算部85は、次式(17c)で示す如く、目標第1操舵角速度δf1_dot_cmdを積分することより、目標第1操舵角δf1_cmdを算出する。
δf1_dot2_cmd=−K1*((Pb_diff_y_cmd−Kdstb*Pb_err)−Pb_diff_y_act)
−K2*(Vby_cmd−Vby_act)
−K3*δf1_cmd_p−K4*δf1_dot_cmd_p ……(17a)
δf1_dot_cmd=δf1_dot2_cmdの積分値 ……(17b)
δf1_cmd=δf1_dot_cmdの積分値 ……(17c)
図15では、処理部85−1,85−2,85−3がそれぞれ、それぞれ、式(17a)、(17b)、(17c)の演算処理を実行する処理部を示している。
ここで、式(17a)におけるKdstb、K1、K2、K3、K4は、所定値のゲインである。これらのゲインKdstb、K1、K2、K3、K4の値は、例えば二輪車1の走行速度推定値Vox_act、あるいは、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actに応じて可変的に設定される。
この場合、本実施形態では、δf1_dot2_cmd、δf1_dot_cmd及びδf1_cmdに応じた前輪3fの操舵によって車体2に作用するロール方向のモーメントがさほど大きくならないように(運転者が自身の体重移動によって車体2をロール方向に比較的容易に傾け得るように)ゲインKdstb、K1、K2、K3、K4の値が設定される。
また、ゲインKdstb、K1、K2、K3、K4の大きさは、いずれも、二輪車1の走行速度推定値Vox_actが、高いほど、小さくなるように可変的に設定される。
また、δf1_cmd_pは前回の制御処理周期で姿勢制御演算部85が決定した目標第1操舵角δf1_cmdの値(前回値)、δf1_dot_cmd_pは前回の制御処理周期で姿勢制御演算部85が決定した目標第1操舵角速度δf1_dot_cmdの値(前回値)である。
そして、式(17a)におけるKdstb*Pb_errは、運転者(乗員)の重心の横ずれが発生している場合(Pb_err≠0である場合)、すなわち、リーンアウト又はリーンインの状態で、目標姿勢状態決定部84で決定された目標倒立振子質点横移動量Pb_diff_y_cmdを、Pb_errを低減する方向(リーンアウト又はリーンインからリーンウィズに近づける方向)に補正する補正量である。
また、式(17a)において、−K1*((Pb_diff_y_cmd−Kdstb*Pb_err)−Pb_diff_y_act)は、Pb_diff_y_cmdを補正してなる目標値(Pb_diff_y_cmd−Kdstb*Pb_err)と、倒立振子質点横移動量推定値Pb_diff_y_actとの偏差をゼロに近づける機能を有するフィードバック操作量成分、−K2*(Vby_cmd−Vby_act)は、偏差(Vby_cmd−Vby_act)をゼロに近づける機能を有するフィードバック操作量成分、−K3*δf1_cmd_pは、δf1_cmdをゼロに近づける機能を有するフィードバック操作量成分、−K4*δf1_dot_cmd_pは、δf1_dot_cmdをゼロに近づける機能を有するフィードバック操作量成分である。
以上の如く、姿勢制御演算部85は、各制御処理周期において、上記の式(17a)〜(17c)の演算処理を実行することで、δf1_cmd、δf1_dot_cmd、δf1_dot2_cmdを算出する。
補足すると、式(17a)の演算で用いるδf1_cmd_p、δf1_dot_cmd_pは、それぞれ、現在時刻での実際の第1操舵角、第1操舵角速度の擬似的な推定値(代用的な観測値)としての意味を持つものである。従って、δf1_cmd_pの代わりに、現在時刻での第1操舵角検出値δf1_actを使用してもよい。また、δf1_dot_cmd_pの代わりに、前記第1操舵角検出器62の出力に基づく第1操舵角速度検出値δ1f_dot_actを使用してもよい。
制御装置60は、次に、第2操舵角指令決定部86の処理を実行する。この第2操舵角指令決定部86には、図16に示すように、姿勢制御演算部85で決定された目標第1操舵角δf1_cmdと、前記ハンドルトルク検出器64の出力により示されるハンドルトルクThの検出値Th_act(以降、ハンドルトルク検出値Th_actという)とが入力される。
そして、第2操舵角指令決定部86は、上記の入力値を用いて、図16のブロック線図で示される演算処理により、目標第2操舵角δf2_cmdと、目標第2操舵角速度δf2_dot_cmdと、目標第2操舵角加速度δf2_dot2_cmdとを決定する。
すなわち、第2操舵角指令決定部86は、次式(18a)〜(18e)の演算処理により、目標第2操舵角δf2_cmdを算出する。さらに第2操舵角指令決定部86は、次式(18f)で示す如く、目標第2操舵角δf2_cmdを微分することより、目標第2操舵角速度δf2_dot_cmdを算出する。さらに第2操舵角指令決定部86は、次式(18g)で示す如く、目標第2操舵角速度δf2_dot_cmdを微分することより、目標第2操舵角加速度δf2_dot2_cmdを算出する。
δf2_dot2_1=Kh*Th_act−K5*δf2_dot_1_p−K6*δf2_1_p
……(18a)
δf2_dot_1=δf2_dot2_1の積分値 ……(18b)
δf2_1=δf2_dot_1の積分値 ……(18c)
δf2_2=Rt*δf1_cmd ……(18d)
δf2_cmd=δf2_1−δf2_2 ……(18e)
δf2_dot_cmd=δf2_cmdの微分値(時間的変化率) ……(18f)
δf2_dot2_cmd=δf2_dot_cmdの微分値(時間的変化率) ……(18g)
図16では、処理部86−1が式(18a),(18b),(18c)の演算処理を実行する処理部、処理部86−2,86−3,86−4,86−5がそれぞれ、式(18d),(18e),(18f),(18g)の演算処理を実行する処理部を示している。
ここで、式(18a)により算出されるδf2_dot2_1は、運転者によるハンドル46の操作によって第2操舵軸線Cf2の周りに付与されるハンドルトルクThに応じた操舵角加速度(第2操舵軸線Cf2の周りの前輪3fの操舵角加速度)の要求値である。
この場合、式(18a)の演算処理に用いるKh、K5、K6は所定値のゲインである。これらのゲインKh、K5、K6の値は、例えば、二輪車1の走行速度Vox_act、あるいは、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actに応じて可変的に設定される。
また、式(18a)におけるδf2_dot_1_pは、前回の制御処理周期において式(18b)により算出された操舵角速度δf2_dot_1の値(前回値)、δf2_1_pは、前回の制御処理周期において式(18c)により算出された操舵角δf2_1の値(前回値)である。
そして、式(18a)の右辺の第1項は、ハンドルトルク検出値Th_actに応じたフィードフォワード操作量、右辺の第2項は、操舵角速度δf2_dot_1をゼロに近づけるためのフィードバック操作量、右辺の第3項は、操舵角δf2_1をゼロに近づけるためのフィードバック操作量である。
かかる式(18a)により算出されるδf2_dot2_1を式(18b),(18c)により2回積分することで算出されるδf2_1が、目標第2操舵角δf2_cmdの基本値である。
また、式(18d)により算出されるδf2_2は、目標第1操舵角δf1_cmdに応じて上記基本値δf2_1を補正する操舵角補正量である。そして、式(18d)におけるRtは、目標第1操舵角δf1_cmdに対する操舵角補正量δf2_2の比率を規定する係数である。該係数Rtの値は、一定値に設定され、あるいは、二輪車1の走行速度Vox_actに応じて可変的に設定される。
かかる式(18d)により算出される操舵角補正量δf2_2を、目標第2操舵角δf2_cmdの基本値δf2_1から減算することで、該基本値δf2_1が補正される(式(18e))。これにより、目標第2操舵角δf2_cmdが決定されることとなる。さらに、この目標第2操舵角δf2_cmdから微分演算処理(式(18f)、(18g))により、目標第2操舵角速度δf2_dot_cmd、目標第2操舵角加速度δf2_dot2_cmdが決定されることとなる。
以上の如く、第2操舵角指令決定部86は、各制御処理周期において、上記の式(18a)〜(18g)の演算処理を実行することで、δf2_cmd、δf2_dot_cmd、δf2_dot2_cmdを算出する。
制御装置60は、さらに、目標走行速度決定部87の処理を実行する。目標走行速度決定部87には、図17に示すように、前記アクセル操作検出器66の出力により示されるアクセル操作量の実際の値の検出値が入力される。
そして、目標走行速度決定部87は、アクセル操作量の検出値からあらかじめ設定された変換関数により、目標走行速度Vox_cmdを決定する。
上記変換関数は、例えばマップもしくは演算式により構成される。この変換関数は、例えば、図17中のグラフで例示されるるように、アクセル操作量の増加に対してVox_cmdが単調増加していくように設定される。
なお、図17に示す例では、アクセル操作量の検出値が、A1以上では、Vox_cmdが最大値に保たれる。
補足すると、アクセル操作量の増加に対してVox_cmdの増加の形態は、図17に示すパターンと異なっていてもよい。
次に、前記第1操舵用アクチュエータ15、第2操舵用アクチュエータ37、及び前輪駆動用アクチュエータ7の制御について説明する。
制御装置60は、図8に示した機能の他の機能として、図18に示す第n操舵用アクチュエータ制御部91(n=1又は2)、及び図19に示す前輪駆動用アクチュエータ制御部92をさらに備えている。
なお、第1操舵用アクチュエータ15及び第2操舵用アクチュエータ37のそれぞれの制御処理は互いに同じである。このため、図18では、第1操舵用アクチュエータ15及び第2操舵用アクチュエータ37のそれぞれを制御する機能部を包括的に第n操舵用アクチュエータ制御部91と称している。この場合、第1操舵用アクチュエータ15の制御に関しては、n=1であり、第2操舵用アクチュエータ37の制御に関しては、n=2である。
第n操舵用アクチュエータ制御部91は、図18のブロック線図で示す制御処理によって、前輪3fの第n操舵角(第n操舵角検出値δfn_act)を目標第2操舵角δfn_cmdに追従させるように、第n操舵用アクチュエータ15又は37の駆動制御を行なう。
この例では、第n操舵用アクチュエータ制御部91には、姿勢制御演算部85又は第2操舵角指令決定部86で前記した如く決定された目標第n操舵角δfn_cmd、目標第n操舵角速度δfn_dot_cmd及び目標第n操舵角加速度δfn_dot2_cmdと、第n操舵角検出値δfn_actと、第n操舵角速度検出値δfn_dot_act(第n操舵軸線Cfnの周りの前輪3fの操舵角速度の検出値)とが入力される。
なお、第n操舵角速度検出値δfn_dot_actは、第n操舵角検出器62又は63の出力に基づき認識される操舵角速度の値、又は、第n操舵角検出値δfn_actの微分値(時間的変化率)として算出される値である。
第n操舵用アクチュエータ制御部91は、電流指令値決定部91−1の演算処理によって、上記の入力値から、第n操舵用アクチュエータ15又は37(電動モータ)の通電電流の目標値である電流指令値I_δfn_cmdを決定する。
この電流指令値決定部91−1は、次式(19)で示される如く、δfn_cmdとδfn_actとの偏差に所定値のゲインKδfn_pを乗じてなるフィードバック操作量成分と、δfn_dot_cmdとδfn_dot_actとの偏差に所定値のゲインKδfn_vを乗じてなるフィードバック操作量成分と、δfn_dot2_cmdに所定値のゲインKδfn_aを乗じてなるフィードフォワード操作量成分とを加え合わせることにより、電流指令値I_δf_cmdを決定する。
I_δfn_cmd=Kδfn_p*(δfn_cmd−δfn_act)
+Kδfn_v*(δfn_dot_cmd−δfn_dot_act)
+Kδfn_a*δfn_dot2_cmd ……(19)
そして、第n操舵用アクチュエータ制御部91は、モータドライバ等により構成される電流制御部91−2によって、第n操舵用アクチュエータ15又は37の実際の通電電流を、電流指令値I_δfn_cmdに一致させるように制御する。
これにより、第n操舵軸線Cfnの周りでの前輪3fの実際の操舵角が、目標第n操舵角δfn_cmdに追従するように制御される。
なお、第n操舵軸線Cfnの周りの前輪3fの実際の操舵角を目標第n操舵角δfn_cmdに追従させるように第n操舵用アクチュエータ15又は37を制御する手法は、上記の手法に限らず、他の手法を用いてよい。その手法としては、例えば、電動モータに関する公知の種々様々のサーボ制御手法(電動モータのロータの実際の回転角度を目標値に追従させるフィードバック制御手法)を採用できる。
次に、前輪駆動用アクチュエータ制御部92は、例えば図19のブロック線図で示す制御処理によって、前輪3fの実際の回転移動速度を目標走行速度Vox_cmdに追従させるように(又は、前輪3fの実際の回転角速度をVox_cmdに対応する目標回転角速度に追従させるように)、前輪駆動用アクチュエータ7の駆動制御を行なう。
この例では、前輪駆動用アクチュエータ制御部92には、目標走行速度決定部87で前記した如く決定された目標走行速度Vox_cmdと、前記式(13e)により算出される走行速度推定値Vox_actとが入力される。
前輪駆動用アクチュエータ制御部92は、電流指令値決定部92−1の処理によって、上記の入力値から、前輪駆動用アクチュエータ7(電動モータ)の通電電流の目標値である電流指令値I_Vf_cmdを決定する。
この電流指令値決定部92−1は、次式(20)で示される如く、Vox_cmdとVox_actとの偏差に所定値のゲインKVf_vを乗じてなるフィードバック操作量成分を電流指令値I_Vf_cmdとして決定する。
I_Vf_cmd=KVf_v*(Vox_cmd−Vox_act) ……(20)
なお、上記式(20)によりI_Vf_cmdを決定する代わりに、例えば、Vox_cmdをcos(δf’_act)で除算してなる値Vf_cmd(前輪3fの回転移動速度の目標値)と、前輪回転移動速度検出値Vf_actとの偏差に所定値のゲインを乗じることによって、I_Vf_cmdを決定するようにしてもよい。あるいは、Vf_cmdを前輪3fの有効回転半径で除算した値(すなわち、前輪3fの回転角速度の目標値)と、前輪回転速度検出器65の出力により示される前輪3fの実際の回転角速度の検出値との偏差に所定値のゲインを乗じることによって、I_Vf_cmdを決定するようにしてもよい。
そして、前輪駆動用アクチュエータ制御部92は、モータドライバ等により構成される電流制御部92−2によって、前輪駆動用アクチュエータ7の実際の通電電流を、電流指令値I_Vf_cmdに一致させるように制御する。
これにより、前輪3fの実際の回転移動速度が、Vf_cmdに追従するように(又は、実際の回転角速度が、Vf_cmdに対応する回転角速度の目標値に追従するように)、ひいては、実際の走行速度が目標走行速度Vox_cmdに追従するように制御される。
なお、二輪車1の走行速度又は前輪3fの回転移動速度を目標値に追従させるように前輪駆動用アクチュエータ7を制御する手法は、上記の手法に限らず、他の手法を用いてよい。その手法としては、例えば、電動モータに関する公知の種々様々の速度制御手法(電動モータのロータの実際の回転角速度を目標値に追従させるフィードバック制御手法)を採用できる。
以上が、本実施形態における制御装置60の制御処理の詳細である。
ここで、本実施形態と本発明との対応関係について補足しておく。
本実施形態においては、第1操舵用アクチュエータ15及び第2操舵アクチュエータ37が、本発明におけるアクチュエータに相当する。この場合、車体2に作用する重力によって該車体2にロール方向のモーメントが作用するように該車体2の重心を横方向(Y軸方向)に移動させるアクチュエータとしての機能を有するものである。
なお、この場合、第1操舵用アクチュエータ15は、前輪3f(操舵輪)の接地点を横方向(Y軸方向)に移動させずに、車体2の重心を横方向(Y軸方向)に移動させることが可能である。
また、第2操舵用アクチュエータ37は、主に、前輪3f(操舵輪)の接地点を横方向(Y軸方向)に移動させるように該前輪3fの操舵を行うアクチュエータとしての機能を有するものである。
なお、第2操舵アクチュエータ37により、前輪3fの第2操舵角δf2を一定に保持した状態では、第1操舵用アクチュエータ15は、前輪3f(操舵輪)の接地点を横方向に移動させるように該前輪3fの操舵を行うアクチュエータとしての機能を有するものとなる。
また、第1操舵アクチュエータ15は、車体2の重心を横方向(Y軸方向)に移動させるアクチュエータとしての機能も併せ持つ。
また、前記乗員重心横ずれ指標値算出部83が、本発明における重心ずれ度合指標値決定手段に相当する。この場合、乗員重心横ずれ指標値Pb_errが本発明における重心ずれ度合指標値に相当する。また、車体2の対称面上の位置が運転者の重心の位置に関する所定の基準位置に相当する。
また、前輪回転移動速度推定値Vf_act、第1操舵角推定値δf1_act、第2操舵角推定値δf2_act、及び倒立振子質点横移動量推定値Pb_diff_y_actの微分値である倒立振子質点横速度第2推定値Pb_diff_dot_y_2が、重心ずれ度合指標値決定手段(乗員重心横ずれ指標値算出部83)の処理で使用する移動体(二輪車1)の動作状態の観測値に相当する。この場合、Pb_diff_dot_y_2は、車体2の傾斜状態量の観測値に相当する。
また、前記式(12a),(12b)が本発明における動力学演算に相当する。そして、この式(12b)により算出される倒立振子質点横速度第1推定値Pb_diff_dot_y_1が、車体2の傾斜状態量の算出値に相当する。
また、姿勢制御演算部85が、本発明における制御入力決定手段に相当し、該姿勢制御演算部85が算出するδf1_dot2_cmdが、本発明における制御入力に相当する。そして、姿勢制御演算部85が実行する前記式(17a)におけるゲインKdstbが、重心ずれ度合指標値(乗員重心横ずれ指標値Pb_err)の変化に対する制御入力(δf1_dot2_cmd)の変化の感度に相当する。
以上説明した第1実施形態によれば、倒立振子質点横移動量推定値Pb_diff_y_actが、目標倒立振子質点横移動量Pb_diff_y_cmdから乖離してしまうことと、運転者の重心の位置が車体2の対称面上から横方向に乖離してしまうこととが抑制されるように、前輪3fが第1操舵用アクチュエータ15及び第2操舵用アクチュエータ37を介して操舵される。
このため、運転者の体重移動に対する車体2のロール角の追従性を高めることができる。
[第2実施形態]
次に、本発明の第2実施形態を図20〜図22を参照して以下に説明する。なお、本実施形態での移動体は、第1実施形態における移動体(二輪車1)と同じである。そして、本実施形態は、制御装置の一部の制御処理だけが第1実施形態と相違する。このため、本実施形態の説明は、第1実施形態と相違する事項を中心に行う。そして、第1実施形態と同一の事項については詳細な説明を省略する。
図20を参照して、本実施形態では、制御装置60は、第1実施形態における倒立振子質点横速度推定値算出部82の代わりに、倒立振子質点横移動量推定値Pb_diff_y_actの微分値(時間的変化率)Pb_diff_dot_y_actを倒立振子質点横速度推定値として算出する倒立振子質点横速度推定値算出部100を備える。
また、本実施形態では、制御装置60は、第1実施形態における目標姿勢状態決定部84の代わりに、目標倒立振子質点横移動量Pb_diff_y_cmdと、Pb_diff_dot_y_actに対する目標値としての目標倒立振子質点横速度Pb_diff_dot_y_cmdとを決定する目標姿勢状態決定部101を備える。
さらに、本実施形態では、制御装置60は、二輪車1の車体2のロール方向の姿勢(傾斜角)の制御用の操作量(制御入力)として、車体2に作用させるべきロール方向のモーメントの目標値である目標姿勢操作モーメントMsum_cmdを決定する姿勢制御演算部102と、該目標姿勢操作モーメントMsum_cmdから、目標第1操舵角加速度δf1_dot2_cmd、目標第1操舵角速度δf1_dot_cmd及び目標第1操舵角δf1_cmdを決定する第1操舵角指令決定部103とを、前記第1実施形態における姿勢制御演算部85の代わりに備える。
上記倒立振子質点横速度推定値算出部100、目標姿勢状態決定部101、姿勢制御演算部102及び第1操舵角指令決定部103以外の制御装置60の機能は、前記第1実施形態と同じである。
上記目標姿勢状態決定部101は、目標倒立振子質点横移動量Pb_diff_y_cmdを、第1実施形態と同様に決定する。また、目標姿勢状態決定部101は、目標倒立振子質点横速度Pb_diff_dot_y_cmdを例えばゼロとする。ただし、目標倒立振子質点横速度Pb_diff_dot_y_cmdを、例えば、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_act等に応じて可変的に決定するようにすることも可能である。
また、目標倒立振子質点横移動量Pb_diff_y_cmdを例えばゼロとしてもよい。あるいは、目標倒立振子質点横移動量Pb_diff_y_cmdを、例えば、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_act等に応じて可変的に決定するようにすることも可能である。
姿勢制御演算部102には、倒立振子質点横移動量推定値Pb_diff_y_act、その微分値たる倒立振子質点横速度推定値Pb_diff_dot_y_act、目標倒立振子質点横移動量Pb_diff_y_cmd、目標倒立振子質点横速度Pb_diff_dot_y_cmd、及び倒立振子質点横ずれ推定値Pb_errが入力される。
この場合、Pb_diff_y_act、Pb_diff_y_cmd、Pb_errは、前記第1実施形態で説明したものと同じである。一方、Pb_diff_dot_y_act、Pb_diff_dot_y_cmdは、それぞれ、本実施形態における倒立振子質点横速度推定値算出部100、目標姿勢状態決定部101で決定された値である。
そして、姿勢制御演算部102は、上記入力値を用いて、図21のブロック線図で示される演算処理により、目標姿勢操作モーメントMsum_cmdを決定する。
すなわち、姿勢制御演算部102は、次式(21)の演算処理により、目標姿勢操作モーメントMsum_cmdを算出する。
Msum_cmd=−K1*((Pb_diff_y_cmd−Kdstb*Pb_err)−Pb_diff_y_act)
−K2*(Pb_diff_dot_y_cmd−Pb_diff_dot_y_act) ……(21)
ここで、式(21)におけるKdstb、K1、K2は、所定値のゲインである。これらのゲインKdstb、K1、K2の値は、第1実施形態の場合と同様に、例えば二輪車1の走行速度推定値Vox_act、あるいは、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actに応じて可変的に設定される。
この場合、本実施形態では、δf1_dot2_cmd、δf1_dot_cmd及びδf1_cmdに応じた前輪3fの操舵によって車体2に作用するロール方向のモーメントがさほど大きくならないように(運転者が自身の体重移動によって車体2をロール方向に比較的容易に傾け得るように)ゲインKdstb、K1、K2の値が設定される。
また、ゲインKdstb、K1、K2の大きさは、いずれも、二輪車1の走行速度推定値Vox_actが、高いほど、小さくなるように可変的に設定される。
そして、式(21)において、−K1*((Pb_diff_y_cmd−Kdstb*Pb_err)−Pb_diff_y_act)は、Pb_diff_y_cmdをPb_errに応じて補正してなる目標値(Pb_diff_y_cmd−Kdstb*Pb_err)と、Pb_diff_y_actとの偏差をゼロに近づける機能を有するフィードバック操作量成分、−K2*(Pb_diff_dot_y_cmd−Pb_diff_dot_y_act)は、偏差(Pb_diff_dot_y_cmd−Pb_diff_dot_y_act)をゼロに近づける機能を有するフィードバック操作量成分である。
以上の如く、本実施形態では、姿勢制御演算部102は、各制御処理周期において、式(21)の演算処理を実行することで、目標姿勢操作モーメントMsum_cmdを算出する。
ここで、本実施形態における姿勢制御演算部102の演算処理において、Voy_cmd及びVoy_actの代わりに、Pb_dot_diff_y_cmd及びPb_dot_diff_y_actを用いる理由について補足しておく。
前記第1実施形態では、目標第1操舵角加速度δf1_dot2_cmdを車体2の姿勢の操作用(倒立振子質点横移動量Pb_diff_yの操作用)の基本的な制御入力としている。この場合、車体2の姿勢制御に関する状態方程式は、次式(22)により表現される。
なお、f(δf1, Vox)は、第1操舵角δf1及び二輪車1の走行速度Voxの関数を表している。
従って、制御対象の状態量が、Pb_diff_y、Vby、δf1、δf1_dotの4つのパラメータとなる。
一方、第2実施形態では、ロール方向のモーメントの目標値である目標姿勢操作モーメントMsum_cmdを車体2の姿勢の操作用(倒立振子質点横移動量Pb_diff_yの操作用)の基本的な制御入力としている。この場合、車体2の姿勢制御に関する状態方程式は、次式(23)により表現される。
従って、制御対象の状態量が、Pb_diff_y、Pb_diff_dot_yの2つのパラメータとなる。そこで、本実施形態では、姿勢制御演算部102の演算処理において、Vby_cmd及びVby_actの代わりに、Pb_diff_dot_y_cmd及びPb_diff_dot_y_actを用いている。
次に、前記第1操舵角指令決定部103には、姿勢制御演算部102で決定された目標姿勢操作モーメントMsum_cmdが入力される。そして、第1操舵角指令決定部103は、Msum_cmdの入力値を用いて、図22のブロック線図で示される演算処理により、目標第1操舵角δf1_cmd、目標第1操舵角速度δf1_dot_cmd及び目標第1操舵角加速度δf1_dot2_cmdを決定する。
すなわち、第1操舵角指令決定部103は、次式(24a),(24b),(24c)の演算処理により、δf1_cmd,δf1_dot_cmd,δf1_dot2_cmdを決定する。
δf1_cmd=f1(Msum_cmd) ……(24a)
δf1_dot_cmd=δf1_cmdの微分値(時間的変化率) ……(24b)
δf1_dot2_cmd=δf1_dot_cmdの微分値(時間的変化率) ……(24c)
図22では、処理部103−1,103−2,103−3がそれぞれ、それぞれ、式(24a)、(24b)、(24c)の演算処理を実行する処理部を示している。
ここで、式(24a)におけるf1(Msum_cmd)は、図22の処理部103−1において、Msum_cmdの値から、あらかじめ設定された変換関数f1(Msum)により決定される関数値である。従って、該変換関数f1(M_sum)により、Msum_cmdがこれの関数値としてのδf1_cmdに変換される。
上記変換関数f1(Msum)は、例えばマップもしくは演算式により構成される。該変換関数f1(Msum)は、本実施形態では、処理部103−1の図で例示されるように、Msumの値の増加(負側の値から正側の値への増加)に伴い、f1の値(=δf1_cmdの値)が負側の値から正側の値に単調に増加していくように設定されている。
以上の如く、第1操舵角指令決定部103は、各制御処理周期において、上記の式(24a)〜(24c)の演算処理を実行することで、δf1_cmd、δf1_dot_cmd、δf1_dot2_cmdを算出する。
本実施形態は、以上説明した事項以外は、前記第1実施形態と同じである。
ここで、本実施形態と本発明との対応関係について補足すると、姿勢制御演算部102が本発明における制御入力決定手段に相当し、該姿勢制御演算部102が算出するMsum_cmdが、本発明における制御入力に相当する。そして、姿勢制御演算部85が実行する前記式(21)におけるゲインKdstbが、重心ずれ度合指標値(乗員重心横ずれ指標値Pb_err)の変化に対する制御入力(Msum_cmd)の変化の感度に相当する。
これ以外は、本実施形態と本発明との対応関係は、前記第1実施形態と同じである。
以上説明した第2実施形態によれば、第1実施形態と同様の効果を奏することができる。
[第3実施形態]
次に、本発明の第3実施形態を図23〜図25を参照して説明する、なお、本実施形態での移動体は、第1実施形態における移動体(二輪車1)と同じである。そして、本実施形態は、制御装置の一部の制御処理だけが第1実施形態と相違する。このため、本実施形態の説明は、第1実施形態と相違する事項を中心に行う。そして、第1実施形態と同一の事項については詳細な説明を省略する。
前記第1実施形態では、2質点モデルにおける倒立振子質点71に関する倒立振子質点横移動量Pb_diff_yと、倒立振子質点横速度Vbyとを制御対象の状態量として使用した。
これに対して本実施形態では、車体2のロール角φbと、その時間的変化率であるロール角速度φb_dotとを制御対象の状態量として使用する。
以下、具体的に説明すると、本実施形態における制御装置60は、実装されたプログラムをCPUが実行することにより実現される機能(ソフトウェアにより実現される機能)又はハードウェア構成により実現される機能として、図23のブロック図に示す機能を有する。
すなわち、制御装置60は、車体2のロール角検出値φb_actの微分値(時間的変化率)を、ロール角速度φb_dotの検出値φb_dot_act(以降、ロール角速度検出値φb_dot_actという)を算出するロール角速度検出部110と、車体2の対称面上に運転者の重心が位置するようにする車体2をロール方向の傾けたときの該車体2のロール角φbの推定値と、実際のロール角φbの値としてのロール角検出値φb_actとの偏差の推定値φb_err(以降、車体傾斜角ずれ推定値φb_errという)を前記乗員重心横ずれ指標値として算出する乗員重心横ずれ指標値算出部111と、車体2のロール角φbの目標値φb_cmd(以降、目標ロール角φb_cmdという)とロール角速度φb_dotの目標値φb_dot_cmd(以降、目標ロール角速度φb_cmdという)を決定する目標姿勢状態決定部112とを備える。
さらに、制御装置60は、目標第1操舵角δf1_cmd、目標第1操舵角速度δf1_dot_cmd及び目標第1操舵角加速度δf1_dot2_cmdを、車体2のロール方向の姿勢制御のための主たる制御入力(操作量)として決定する姿勢制御演算部113と、目標第2操舵角δf2_cmd、目標第2操舵角速度δf2_dot_cmd及び目標第2操舵角加速度δf2_dot2_cmdを決定する第2操舵角指令決定部86と、目標走行速度Vox_cmdを決定する目標走行速度決定部87とを備える。第2操舵角指令決定部86及び目標走行速度決定部87は、第1実施形態のものと同じである。
そして、本実施形態では、乗員重心横ずれ指標値算出部111、目標姿勢状態決定部112、及び姿勢制御演算部113の処理は、各制御処理周期において、次のように実行される。
まず、目標姿勢状態決定部112は、例えば、前記第1実施形態で説明した前記式(16a)により算出されるロール角φb_leanを目標ロール角φb__cmdとして決定する。また、目標ロール角速度φb_dot_cmdを例えばゼロとする。なお、目標ロール角速度φb_dot_cmdは、例えば、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_act等に応じて可変的に決定するようにすることも可能である。
また、目標ロール角φb_cmdを例えばゼロとしてもよい。あるいは、目標ロール角φb_cmdを、例えば、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_act等に応じて可変的に決定するようにすることも可能である。
図24に示すように、乗員重心横ずれ指標値算出部111には、ロール角検出値φb_actと、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actと、前輪回転移動速度推定値Vf_actとが入力される。
そして、乗員重心横ずれ指標値算出部111は、図24のブロック線図で示す演算処理により、乗員重心横ずれ指標値としての車体傾斜角ずれ推定値φb_errを算出する。この場合、乗員重心横ずれ指標値算出部111は、第1実施形態と同様に、オブザーバとして構成されている。
具体的には、乗員重心横ずれ指標値算出部111は、δf1_act、δf2_act及びVf_actの入力値を基に、前記ロールモーメント慣性力成分Miの推定値及び前記ロールモーメント床反力成分Mpの推定値のそれぞれを、ロールモーメント慣性力成分算出部111−2及びロールモーメント床反力成分算出部111−3により各々算出する。
この場合、ロールモーメント慣性力成分算出部111−2は、第1実施形態と同様の演算処理により、ロールモーメント慣性力成分Miの推定値を算出する。より詳しくは、ロールモーメント慣性力成分算出部111−2は、前記式(13a)〜(13e)と、前記式(13f)の右辺のm1*h’を、m*hに置き換えてなる次式(13f’)との演算処理を実行することで、Miの推定値を算出する。
Mi=(Voy_dot_act+ωz_act*Vox_act)*m*h ……(13f’)
また、ロールモーメント床反力成分算出部111−3は、前記第1実施形態のロールモーメント床反力成分算出部83−3の演算処理における前記式(14a)と、式(14c)のp2をゼロとしてなる式とから得られる次式(14d)の演算処理を実行することで、ロールモーメント床反力成分Mpの推定値を算出する。
Mp=Pfy(δf1_act+δf2_act)*(Lr/L)*m*g ……(14d)
そして、乗員重心横ずれ指標値算出部111は、Mi,Mpのそれぞれの推定値と、φb_actの入力値と、前回の制御処理周期において既に算出した車体傾斜角ずれ推定値φb_errの値(前回値)φb_err_pとを基に、次式(25a)の動力学演算を処理部111−4で実行することで、車体2のロール角加速度φb_dot2の推定値を算出する。
なお、前回値φb_err_pは、換言すれば、現在以前に既に算出した車体傾斜角ずれ推定値φb_errのうちの最新値に相当するものである。
φb_dot2=(m*g*h*(φb_act+φb_err_p)+Mp+Mi)/J ……(25a)
なお、式(25a)におけるJは、前記XYZ座標系のX軸周りに関する二輪車1の全体(運転者を含む)のイナーシャのあらかじめ定められた設定値である。
そして、乗員重心横ずれ指標値算出部111は、次式(25b)で示す如く、上記式(25a)により算出したφb_dot2を処理部111−5で積分することにより、車体2のロール角速度φb_dotの第1推定値であるロール角速度第1推定値φb_dot_1を算出する。
φb_dot_1=φb_dot2の積分値 ……(25b)
また、乗員重心横ずれ指標値算出部111は、次式(25c)で示す如く、φb_actの入力値に対して処理部111−1で微分演算を実行することにより、車体2のロール角速度φb_dotの第2推定値であるロール角速度第2推定値φb_dot_2を算出する。
φb_dot_2=φb_actの微分値(時間的変化率) ……(25c)
なお、式(25c)により算出されるφb_dot_2は、前記ロール角速度検出部110で算出されるロール角速度検出値φb_dot_actと同じである。従って、ロール角速度検出値φb_dot_actをそのまま、ロール角速度第2推定値φb_dot_2としてもよい。
ここで、前記式(25b)により算出されるロール角速度第1推定値φb_dot_1は、二輪車1の全体重心Gが車体2の対称面上に位置するみなして算出される車体2のロール角の推定値に相当する。
従って、ロール角速度第2推定値φb_dot_2と、前記式(25a),(25b)により動力学的に算出されるロール角速度第1推定値φb_dot_1との偏差が、運転者の重心の横ずれに起因する車体傾斜角ずれ量に応じたものとなる。
そこで、乗員重心横ずれ指標値算出部111は、処理部111−6において、次式(25d)の演算処理により、車体傾斜角ずれ推定値φb_errを算出する。
φb_err
=(φb_dot_2−φb_dot_1)*Kestm*J/(m*g*h) ……(25d)
この式(25d)の演算処理に用いるKestmは、あらかじめ定められた所定値のゲインである。なお、この式(25d)により算出されるφb_errは、運転者の重心が車体2の対称面上からリーンイン側にずれている場合に、負の値となり、リーンオウト側にずれている場合に、正の値となる。
補足すると、式(25d)におけるKestm*J/(m*g*h)を、1つのゲイン値としてあらかじめ設定しておいてもよい。
また、図24のブロック線図では、(φb_dot_2−φb_dot_1)*Kestm*Jの前回値(=φb_err_p*m1*g*h)を、処理部111−6から処理部111−4に入力している。ただし、例えば車体傾斜角ずれ推定値φb_errの前回値φb_err_pを直接的に処理部111−4に入力するようにしてもよい。
以上の如く、本実施形態における乗員重心横ずれ指標値算出部111は、Mi,Mpの推定値を算出すると共に、これらの推定値と、車体ロール角検出値φb_actとを用いて、式(25a)〜(25d)の演算処理を実行することで、車体傾斜角ずれ推定値φb_errを算出する。
次に、図25に示すように、姿勢制御演算部113には、目標姿勢状態決定部112で決定された目標ロール角φb_cmd及び目標ロール角速度φb_dot_cmdと、ロール角検出値φb_act及びロール角速度検出値φb_dot_actと、乗員重心横ずれ指標値算出部111で算出された車体傾斜角ずれ推定値φb_errとが入力される。
そして、姿勢制御演算部113は、上記の入力値を用いて、図25のブロック線図で示される演算処理により、目標第1操舵角δf1_cmdと、目標第1操舵角速度δf1_dot_cmdと、目標第1操舵角加速度δf1_dot2_cmdとを決定する。
すなわち、姿勢制御演算部113は、第1実施形態における前記式(17a)と同様の形式の次式(26a)の演算処理により、目標第1操舵角加速度δf1_dot2_cmdを算出する。さらに姿勢制御演算部113は、次式(26b),(26c)で示す如く、δf1_dot2_cmdの積分演算によって、目標第1操舵角速度δf1_dot_cmd及び目標第1操舵角δf1_cmdを算出する。式(26b),(26c)は、それぞれ前記式(17b),(17c)と同じである。
δf1_dot2_cmd=−K1*((φb__cmd−Kdstb*φb_err)−φb_act)
−K2*(φb_dot_cmd−φb_dot_act)
−K3*δf1_cmd_p−K4*δf1_dot_cmd_p ……(26a)
δf1_dot_cmd=δf1_dot2_cmdの積分値 ……(26b)
δf1_cmd=δf1_dot_cmdの積分値 ……(26c)
図25では、処理部113−1,113−2,113−3がそれぞれ、それぞれ、式(26a)、(26b)、(26c)の演算処理を実行する処理部を示している。
ここで、式(26a)におけるKdstb、K1、K2、K3、K4は、所定値のゲインである。これらのゲインKdstb、K1、K2、K3、K4の値は、例えば二輪車1の走行速度推定値Vox_act、あるいは、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actに応じて可変的に設定される。
この場合、δf1_dot2_cmd、δf1_dot_cmd及びδf1_cmdに応じた前輪3fの操舵によって車体2に作用するロール方向のモーメントがさほど大きくならないように(運転者が自身の体重移動によって車体2をロール方向に比較的容易に傾け得るように)ゲインKdstb、K1、K2、K3、K4の値が設定される。
また、ゲインKdstb、K1、K2、K3、K4の大きさは、いずれも、二輪車1の走行速度推定値Vox_actが、高いほど、小さくなるように可変的に設定される。
なお、ゲインKdstb、K1、K2、K3、K4の値は、一般には、第1実施形態のものとは異なる。
そして、式(26a)におけるKdstb*φb_errは、運転者(乗員)の重心の横ずれが発生している場合(φb_err≠0である場合)、すなわち、リーンアウト又はリーンインの状態で、目標姿勢状態決定部112で決定された目標ロール角φb_cmdを、φb_errを低減する方向(リーンアウト又はリーンインからリーンウィズに近づける方向)に補正する補正量である。
また、式(26a)において、−K1*((φb_cmd−Kdstb*φb_err)−φb_act)は、φb_cmdを補正してなる目標値(φb_cmd−Kdstb*φb_err)と、ロール角検出値φb_actとの偏差をゼロに近づける機能を有するフィードバック操作量成分、−K2*(φb_dot_cmd−φb_dot_act)は、偏差(φb_dot_cmd−φb_dot_act)をゼロに近づける機能を有するフィードバック操作量成分、−K3*δf1_cmd_pは、δf1_cmdをゼロに近づける機能を有するフィードバック操作量成分、−K4*δf1_dot_cmd_pは、δf1_dot_cmdをゼロに近づける機能を有するフィードバック操作量成分である。
以上の如く、姿勢制御演算部113は、各制御処理周期において、上記の式(26a)〜(26c)の演算処理を実行することで、δf1_cmd、δf1_dot_cmd、δf1_dot2_cmdを算出する。
本実施形態は、以上説明した事項以外は、前記第1実施形態と同じである。
ここで、本実施形態と本発明との対応関係について補足しておく。
本実施形態においては、第1操舵用アクチュエータ15及び第2操舵用アクチュエータ37が、本発明におけるアクチュエータに相当する。この場合、車体2に作用する重力によって該車体2にロール方向のモーメントが作用するように該車体2の重心を横方向(Y軸方向)に移動させるアクチュエータとしての機能を有するものである。
なお、この場合、第1操舵用アクチュエータ15は、前輪3f(操舵輪)の接地点を横方向(Y軸方向)に移動させずに、車体2の重心を横方向(Y軸方向)に移動させることが可能である。
また、第2操舵用アクチュエータ37は、主に、前輪3f(操舵輪)の接地点を横方向(Y軸方向)に移動させるように該前輪3fの操舵を行うアクチュエータとしての機能を有するものである。
なお、第2操舵アクチュエータ37により、前輪3fの第2操舵角δf2を一定に保持した状態では、第1操舵用アクチュエータ15は、前輪3f(操舵輪)の接地点を横方向に移動させるように該前輪3fの操舵を行うアクチュエータとしての機能を有するものとなる。
また、第1操舵アクチュエータ15は、車体2の重心を横方向(Y軸方向)に移動させるアクチュエータとしての機能も併せ持つ。
また、前記乗員重心横ずれ指標値算出部111が、本発明における重心ずれ度合指標値決定手段に相当する。この場合、乗員重心横ずれ指標値φb_errが本発明における重心ずれ度合指標値に相当する。また、車体2の対称面上の位置が運転者の重心の位置に関する所定の基準位置に相当する。
また、前輪回転移動速度推定値Vf_act、第1操舵角推定値δf1_act、第2操舵角推定値δf2_act、及びロール角検出値φb_actの微分値であるロール角速度第2推定値φb_dot_2(=ロール角速度検出値φb_dot_act)が、重心ずれ度合指標値決定手段(乗員重心横ずれ指標値算出部111)の処理で使用する移動体(二輪車1)の動作状態の観測値に相当する。この場合、φb_dot_2は、車体2の傾斜状態量の観測値に相当する。
また、前記式(25a),(25b)が本発明における動力学演算に相当する。そして、この式(25b)により算出されるロール角速度第1推定値φb_dot_1が、車体2の傾斜状態量の算出値に相当する。
なお、この場合の動力学演算は、質量mの質点(全体重心の質点)と、イナーシャJとから構成される系の動力学モデルに基づく動力学演算となる。
また、姿勢制御演算部113が、本発明における制御入力決定手段に相当し、該姿勢制御演算部113が算出するδf1_dot2_cmdが、本発明における制御入力に相当する。そして、姿勢制御演算部113が実行する前記式(26a)におけるゲインKdstbが、重心ずれ度合指標値(乗員重心横ずれ指標値φb_err)の変化に対する制御入力(δf1_dot2_cmd)の変化の感度に相当する。
以上説明した第3実施形態によれば、第1実施形態と同様の効果を奏することができる。ただし、車体2の姿勢制御の信頼性を高める上では、第3実施形態よりも第1実施形態又は第2実施形態の方が有利である。
[第4実施形態]
次に、本発明の第4実施形態を図26及び図27を参照して以下に説明する。なお、本実施形態での移動体は、第3実施形態における移動体(二輪車1)と同じである。そして、本実施形態は、制御装置の一部の制御処理だけが第3実施形態と相違する。このため、本実施形態の説明は、第3実施形態と相違する事項を中心に行う。そして、第3実施形態と同一の事項については詳細な説明を省略する。
図26を参照して、本実施形態では、制御装置60は、二輪車1の車体2のロール方向の姿勢(傾斜角)の制御用の操作量(制御入力)として、車体2に作用させるべきロール方向のモーメントの目標値である目標姿勢操作モーメントMsum_cmdを決定する姿勢制御演算部120と、該目標姿勢操作モーメントMsum_cmdから、目標第1操舵角加速度δf1_dot2_cmd、目標第1操舵角速度δf1_dot_cmd及び目標第1操舵角δf1_cmdを決定する第1操舵角指令決定部103とを、前記第3実施形態における姿勢制御演算部113の代わりに備える。
これらの姿勢制御演算部120及び第1操舵角指令決定部103以外の制御装置60の機能は、前記第3実施形態と同じである。
上記姿勢制御演算部120には、車体2のロール角検出値φb_act及びロール角速度検出値φb_dot_actと、目標姿勢状態決定部112で決定された目標ロール角φb_cmd及び目標ロール角速度φb_dot_cmdが入力される。
そして、姿勢制御演算部120は、上記の入力値を用いて、図27のブロック線図で示される演算処理により、目標姿勢操作モーメントMsum_cmdを決定する。
すなわち、姿勢制御演算部120は、次式(27)の演算処理により、目標姿勢操作モーメントMsum_cmdを算出する。
Msum_cmd=−K1*((φb_cmd−Kdstb*φb_err)−φb_act)
−K2*(φb_dot_cmd−φb_dot_act) ……(27)
ここで、式(27)におけるKdstb、K1、K2は、所定値のゲインである。これらのゲインKdstb、K1、K2の値は、第3実施形態の場合と同様に、例えば二輪車1の走行速度推定値Vox_act、あるいは、第1操舵角検出値δf1_act及び第2操舵角検出値δf2_actに応じて可変的に設定される。
この場合、Msum_cmdに応じた前輪3fの操舵によって車体2に作用するロール方向のモーメントがさほど大きくならないように(運転者が自身の体重移動によって車体2をロール方向に比較的容易に傾け得るように)ゲインKdstb、K1、K2の値が設定される。
また、ゲインKdstb、K1、K2の大きさは、いずれも、二輪車1の走行速度推定値Vox_actが、高いほど、小さくなるように可変的に設定される。
そして、式(27)において、−K1*((φb_cmd−Kdstb*φb_err)−φb_act)は、φb_cmdをφb_errに応じて補正してなる目標値(φb_cmd−Kdstb*φb_err)と、φb_actとの偏差をゼロに近づける機能を有するフィードバック操作量成分、−K2*(φb_dot_cmd−φb_dot_act)は、偏差(φb_dot_cmd−φb_dot_act)をゼロに近づける機能を有するフィードバック操作量成分である。
以上の如く、本実施形態では、姿勢制御演算部120は、各制御処理周期において、式(27)の演算処理を実行することで、目標姿勢操作モーメントMsum_cmdを算出する。
次に、第1操舵角指令決定部103には、姿勢制御演算部120で算出された目標姿勢操作モーメントMsum_cmdが入力される。
本実施形態における第1操舵角指令決定部103は、前記第2実施形態のものと同じである。従って、第1操舵角指令決定部103は、図22に示したブロック線図に示す演算処理(前記式(24a)〜(24c)の演算処理)により、目標第1操舵角加速度δf1_dot2_cmd、目標第1操舵角速度δf1_dot_cmd及び目標第1操舵角δf1_cmdを決定する。
本実施形態は、以上説明した事項以外は、前記第3実施形態と同じである。
ここで、本実施形態と本発明との対応関係について補足すると、姿勢制御演算部120が本発明における制御入力決定手段に相当し、該姿勢制御演算部120が算出するMsum_cmdが、本発明における制御入力に相当する。そして、姿勢制御演算部120が実行する前記式(27)におけるゲインKdstbが、重心ずれ度合指標値(乗員重心横ずれ指標値φb_err)の変化に対する制御入力(Msum_cmd)の変化の感度に相当する。
これ以外は、本実施形態と本発明との対応関係は、前記第3実施形態と同じである。
以上説明した第4実施形態によれば、第3実施形態と同様の効果を奏することができる。
[第5実施形態]
次に、本発明の第5実施形態を説明する。図28A〜図28Cを参照して、本実施形態における移動体201は、車体202と、車体202の前後方向に間隔を存して配置された前輪203f,203f及び後輪203rを備える鞍乗り型の三輪車である。以降、移動体201を三輪車201という。
なお、図28A〜図28Cは、基準姿勢状態の三輪車201を示している。該三輪車201の基準姿勢状態は、該三輪車201の直進走行時の姿勢状態である。
三輪車201は、車体202の左右方向(車幅方向)に間隔を存して配置された2つの前輪203f,203fを有する。
以降の説明では、必要に応じて、車体202の右側(前方に向かって右側)の部材の参照符号に符号Rを付し、車体202の左側の部材の参照符号に符号Lを付する。例えば、右側の前輪203fを前輪203fR、左側の前輪203fを前輪203fLというように表記する。ただし、左右を区別する必要がない場合は、符号R又はLを省略する。
車体202には、運転者(乗員)の搭乗部204が備えられている。該搭乗部204は、本実施形態では、運転者(乗員)が跨るように着座するシートである。
車体202の前部の左側及び右側にそれぞれ前輪支持機構205L,205Rが配置されている。そして、各前輪支持機構205の下端部に、前輪203fが軸支されている。各前輪203fは、その車軸中心線の周りに回転し得るように、ベアリング等を介して該前輪203fと同じ側の前輪支持機構205に軸支されている。
前輪支持機構205L,205Rは、前輪203f,203f及び後輪203rが接地する接地面Sに対する車体202の傾動を可能とする機構を介して車体202に連結されている。
具体的には、前輪支持機構205L,205Rのそれぞれの上部にはパイプ206L,206Rが各々配置されている。そして、前輪支持機構205L,205Rのそれぞれは、パイプ206L,206Rのそれぞれの中心軸線たる操舵軸線CfL,CfRの周りに回転し得るようにパイプ206L,206Rのそれぞれに組み付けられている。なお、パイプ206L,206Rのそれぞれの操舵軸線CfL,CfRが互いに平行に後傾している。
左右のパイプ206L,206Rは、上下方向に間隔を存して左右方向に延在する上側リンク207u及び下側リンク207dにより構成される平行リンク207を介して連結されている。なお、平行リンク207は、パイプ206L,206Rの前側と後側とに配置されている。
平行リンク207の上側リンク207u及び下側リンク207dのそれぞれの中央部は、車体202の前端部に固定された支柱208に対して、前後方向の軸周りに揺動し得るように軸支されている。
支柱208の上端部には、平行リンク207を車体202に対して揺動させる回転駆動力を発生するアクチュエータ209が装着されている。該アクチュエータ209は例えば減速機付きの電動モータにより構成される。そして、アクチュエータ209の出力軸が、パイプ206L,206Rの平行リンク207の上側リンク207u及び下側リンク207dのうちの一方、例えば、上側リンク207uにリンク機構210を介して連結されている。
この場合、アクチュエータ209の回転駆動力が、リンク機構210を介して平行リンク207に伝達される。この動力伝達によって、図29Aに示す如く、平行リンク207を支柱208に対して(ひいては車体202に対して)前後方向の軸周り方向に揺動させることができるようになっている。そして、平行リンク207が車体202に対して揺動することで、前輪203fL,203fRに対して車体202がロール方向に回転駆動される。その結果、図29Aに示す如く、接地面Sに対して車体202が前輪203fL,203fRと共に傾動するようになっている。
なお、アクチュエータ209(以降、車体傾動用アクチュエータ209という)は、電動モータの代わりに、例えば油圧アクチュエータにより構成されていてもよい。
支柱208の上側にハンドル220が配置されている。該ハンドル220は、概ね車幅方向に延在する。また、詳細な図示は省略するが、ハンドル220には、アクセルグリップ、ブレーキレバー、方向指示器スイッチ等が組み付けられている。
このハンドル220が、操舵機構を介して前輪支持機構205L,205Rに連結されている。
さらに詳細には、支柱208には、上下方向の中心軸線(回転軸線)を有するハンドル軸221が回転自在に支承されている。該ハンドル軸221は、支柱208を上下方向に貫通している。そして、該ハンドル軸221の上端部にハンドル220が固定されている。なお、ハンドル軸線は、各前輪203fの操舵軸線Cfと平行である。
また、支柱208の下側に突出したハンドル軸221の下端部から前方に向かってステアリングアーム222が延設されている。そして、ステアリングアーム222の前端部から左右にタイロッド223L,223Rが延設されている。
左側のタイロッド223Lの両端部は、ステアリングアーム222と、左側の前輪支持機構205Lとにそれぞれ球面ジョイントを介して連結されている。右側のタイロッド223Rの両端部は、ステアリングアーム222と、右側の前輪支持機構205Rとにそれぞれ球面ジョイントを介して連結されている。
以上の如くハンドル軸221、ステアリングアーム222及びタイロッド223L,223Rを有する操舵機構を介してハンドル220が前輪支持機構205L,205Rに連結されている。
このため、ハンドル220をハンドル軸221の中心軸線の周りに回転させると、これに連動して、図29Bに示す如く、前輪203fR,203fLが操舵されることとなる。
車体202の後部には、後輪203rを軸支する後輪支持機構225が組み付けられている。後輪203rは、その車軸中心線の周りに回転し得るように、後輪支持機構225にベアリング等を介して軸支されている。
後輪支持機構225は、例えばスイングアーム、コイルスプリング、ダンパー等を含むサスペンション機構により構成される。
また、車体202には、三輪車201の走行用の原動機としての後輪駆動用アクチュエータ230が搭載されている。該後輪駆動用アクチュエータ230は、例えば電動モータにより構成される。そして、後輪駆動用アクチュエータ230は、図示を省略する動力伝達機構を介して後輪203rに回転駆動力を伝達する。該動力伝達機構としては、例えばチェーン等を含む機構を採用し得る。
なお、後輪駆動用アクチュエータ230は、電動モータの代わりに、例えば油圧式のアクチュエータ、あるいは、内燃機関により構成されていてもよい。
本実施形態の三輪車201は、さらに、動作制御のための構成として図30に示す構成を備える。
すなわち、三輪車201は、図30に示すように、前記車体傾動用アクチュエータ209及び後輪駆動用アクチュエータ230の動作制御のための制御処理を実行する制御装置260を備えている。
さらに、三輪車201は、制御装置260の制御処理に必要な各種状態量を検出するためのセンサとして、車体202のロール方向の傾斜角を検出するための車体傾斜検出器261と、前輪203fの操舵角を検出するための操舵角検出器262と、運転者によりハンドル220を介して付与される前輪203fの操舵力であるハンドルトルクを検出するためのハンドルトルク検出器264と、前輪203fの回転速度(角速度)を検出するための前輪回転速度検出器265と、ハンドル220のアクセルグリップの操作量(回転量)であるアクセル操作量を検出するためのアクセル操作検出器266とを備えている。なお、図28A〜図28C及び図29A,図29Bでは、これらの検出器261〜266の図示を省略している。
制御装置260は、CPU、RAM、ROM、インターフェース回路等から構成される電子回路ユニットである。該制御装置260は、車体202の任意の適所に搭載される。そして、制御装置260には上記の各検出器261〜266の出力(検出信号)が入力される。
なお、制御装置260は、相互に通信可能な複数の電子回路ユニットにより構成されていてもよい。この場合、制御装置260を構成する複数の電子回路ユニットは、相互に離れた箇所に配置されていてもよい。
車体傾斜検出器261は、例えば加速度センサとジャイロセンサ(角速度センサ)とから構成される。該車体傾斜検出器261は、車体202の任意の適所に搭載される。この場合、制御装置260は、これらの加速度センサ及びジャイロセンサの出力に基づいて、ストラップダウン方式の演算処理等の所定の計測演算処理を実行することで、車体2のロール方向の傾斜角(より詳しくは、鉛直方向(重力方向)に対するロール方向の傾斜角)を計測する。
なお、本実施形態の説明では、三輪車201の基準姿勢状態における車体202のロール方向の傾斜角はゼロである。そして、該ロール方向の傾斜角の正方向は、三輪車201を背面側から見た場合に、車体202が右側に(時計周り方向に)傾く方向である。
操舵角検出器262は、例えば、ロータリエンコーダ又はポテンショメータ等により構成される。この場合、操舵角検出器262は、前輪203fR,203fLのいずれか一方の操舵軸線CfR又はCfLの周りの回転に応じた信号を出力するように前記パイプ206R又は206L、あるいは、ハンドル軸221等に組付けられる。
なお、本実施形態での説明では、前輪203fの操舵角は、三輪車201の基準姿勢状態においてゼロである。そして、操舵角の正方向は、三輪車201を上方から見た場合に、各前輪203fが操舵軸線Cfの周りで反時計周りに回転する方向である。
ハンドルトルク検出器264は、例えば、ハンドル220側からハンドル軸221に付与されるハンドルトルクに応じた信号を出力するように、該ハンドル220とハンドル軸221との間の動力伝達系に介装される力センサ又はトルクセンサにより構成される。
なお、本実施形態の説明では、ハンドルトルクの正方向は、前輪203fを正方向に操舵する方向である。
前輪回転速度検出器265は、例えば、いずれか一方の前輪203fの回転速度に応じた信号を出力するように該前輪203fの車軸に装着されるロータリエンコーダ等により構成される。
アクセル操作検出器266は、例えば、アクセルグリップの操作量(回転量)に応じた信号を出力するように、ハンドル220に内蔵されるロータリエンコーダあるいはポテンショメータ等により構成される。
上記制御装置260の機能についてさらに説明する。なお、以降の説明では、図28A〜図28Cに示すXYZ座標系を使用する。このXYZ座標系は、三輪車201の基準姿勢状態において、鉛直方向(上下方向)をZ軸方向、車体202の前後方向をX軸方向、車体202の左右方向をY軸方向、三輪車201の全体重心Gの直下の接地面S上の点を原点として定義される座標系である。X軸、Y軸、Z軸の正方向は、それぞれ前向き、左向き、上向きである。
本実施形態では、三輪車201のロール方向の姿勢(傾斜角)を制御するために、前記第1実施形態又は第2実施形態と同様に、三輪車201の動力学的な挙動(車体202のロール方向の傾斜に関する挙動)を2つの質点を用いて記述する2質点モデルを使用する。
従って、本実施形態では、制御装置260は、前記した倒立振子質点71のY軸方向の移動量である倒立振子質点横移動量Pb_diff_yを制御対象の状態量として制御することで、車体202のロール方向の姿勢(傾斜角)を制御する。
ただし、本実施形態では、車体202のロール方向の姿勢(傾斜角)の制御は、車体202に対して平行リンク207を揺動させる前記車体傾動用アクチュエータ209により行われる。
また、この制御においては、第1実施形態又は第2実施形態と同様に、リーンイン又はリーンアウトの状態での運転者の重心の横ずれ(車体202の対称面上からの横ずれ)を低減するように、車体202のロール方向の姿勢(傾斜角)が制御される。
さらに、本実施形態では、車体202の傾斜角(ロール角)が、運転者による前輪203fの操舵力に応じた傾斜角に近づくように、車体202のロール方向の姿勢(傾斜角)が制御される。
このような制御処理を実行する制御装置260の機能を以下に具体的に説明する。なお、以降の説明における参照符号に付する添え字“_act”及び“_cmd”の意味は、前記第1〜第4実施形態と同じである。
制御装置260は、実装されたプログラムをCPUが実行することにより実現される機能(ソフトウェアにより実現される機能)又はハードウェア構成により実現される機能として、図31のブロック図に示す機能を有する。
すなわち、制御装置260は、倒立振子質点横移動量推定値Pb_diff_y_actを算出する倒立振子質点横移動量推定値算出部281と、倒立振子質点横速度推定値Pb_diff_dot_y_actとして算出する倒立振子質点横速度推定値算出部282と、乗員重心横ずれ指標値としての倒立振子質点横ずれ推定値Pb_err1を算出する乗員重心横ずれ指標値算出部283と、目標倒立振子質点横移動量Pb_diff_y_cmd及び目標倒立振子質点横速度Pb_diff_dot_y_cmdを決定する目標姿勢状態決定部284とを備える。
ここで、倒立振子質点横移動量推定値Pb_diff_y_act、倒立振子質点横速度推定値Pb_diff_dot_y_act、倒立振子質点横ずれ推定値Pb_err1、目標倒立振子質点横移動量Pb_diff_y_cmd及び目標倒立振子質点横速度Pb_diff_dot_y_cmdの技術的意味は、前記第1実施形態又は第2実施形態と同様である。
また、制御装置260は、車体202のロール角φbを、運転者がハンドル220を操作することによる前輪203fの操舵力に適した傾斜角に近づけるようにするための操作量である乗員操舵ロール操作量Pb_err2を算出する乗員操舵ロール操作量算出部288を備える。
乗員操舵ロール操作量は、本実施形態では、目標倒立振子質点横移動量Pb_diff_y_cmdを補正する補正量である。
また、制御装置260は、三輪車201の車体202のロール方向の姿勢(傾斜角)の制御用の操作量(制御入力)として、目標姿勢操作モーメントMsum_cmdを決定する姿勢制御演算部285と、三輪車201の目標走行速度Vox_cmdを決定する目標走行速度決定部287とを備える。
ここで、目標姿勢操作モーメントMsum_cmd及び目標走行速度Vox_cmdの技術的意味は、前記第1実施形態又は第2実施形態と同様である。
制御装置260は、上記各機能部の処理を所定の制御処理周期で逐次実行する。そして、制御装置260は、姿勢制御演算部285により決定した目標姿勢操作モーメントMsum_cmdに応じて車体傾動用アクチュエータ209を制御する。
また、制御装置260は、目標走行速度決定部287により決定した目標走行速度Vox_cmdに応じて後輪駆動用アクチュエータ230を制御する。
以下に、制御装置260の制御処理の詳細を説明する。なお、制御装置260の制御処理に関して以下に説明する演算処理では、前記した2質点モデルに関するパラメータm,m1,m2,h’の値と、三輪車201の仕様に関するパラメータθcs,Lf,Lr,Rgの値とが使用される。これらのパラメータm,m1,m2,h’,θcs,Lf,Lr,Rgの技術的意味は、前記第1実施形態と同様である。また、これらのパラメータm,m1,m2,h’,θcs,Lf,Lr,Rgの値は、あらかじめ定められた設定値である。また、演算処理における“g”は、重力加速度定数である。
制御装置260は、各制御処理周期において、倒立振子質点横移動量推定値算出部281の処理を実行する。
倒立振子質点横移動量推定値算出部281には、図32に示すように、車体202のロル方向の傾斜角(ロール角)の検出値であるロール角検出値φb_actと、前輪203fの操舵角δfの検出値である操舵角検出値δf_actとが入力される。
上記ロール角検出値φb_actは、車体傾斜検出器261の出力により示される検出値(観測値)、操舵角検出値δf_actは、操舵角検出器262の出力により示される検出値(観測値)である。
そして、倒立振子質点横移動量推定値算出部281は、図32のブロック線図で示される演算処理により倒立振子質点横移動量推定値Pb_diff_y_actを算出する。すなわち、倒立振子質点横移動量推定値算出部281は、次式(30a)〜(30c)の演算処理により、Pb_diff_y_actを算出する。
Pb_diff_y_1=−h’*φb_act ……(30a)
Pb_diff_y_2=Plfy(δf_act)*(Lr/L) ……(30b)
Pb_diff_y_act=Pb_diff_y_1+Pb_diff_y_2 ……(30c)
図32では、処理部281−1、281−2、281−3が、それぞれ、式(30a)、(30b)、(30c)の演算処理を実行する処理部を示している。
ここで、式(30b)におけるPlfy(δf_act)は、図32の処理部281−2−1において、δf_actの値から、あらかじめ設定された変換関数Plfy(δf)により決定される関数値である。この変換関数Plfy(δf)は、例えばマップもしくは演算式により構成される。該変換関数Plfy(δf)は、本実施形態では、処理部281−2−1の図で例示されるように、前輪203fの操舵角δfの値の増加(負側の値から正側の値への増加)に伴い、Plfyの値が負側の値から正側の値に増加していくように設定されている。
以上の如く、倒立振子質点横移動量推定値算出部281は、各制御処理周期において、上記の式(30a)〜(30c)の演算処理を実行することで、倒立振子質点横移動量推定値Pb_diff_y_actを算出する。
補足すると、処理部281−2−1において、Plfy(δf_act)*(Lr/L)の値を求めるように、処理部281−2−1の変換関数を設定しておくこともできる。この場合には、処理部281−2−1の出力が、そのまま、Pb_diff_y_2として算出されることとなる。
制御装置260は、次に、倒立振子質点横速度推定値算出部282の処理を実行する。
倒立振子質点横速度推定値算出部282は、次式(31)で示される如く、倒立振子質点横移動量推定値算出部81で算出された倒立振子質点横移動量推定値Pb_diff_y_actを微分する(時間的変化率を求める)ことにより、倒立振子質点横速度推定値Pb_diff_dot_actを算出する。
Pb_diff_dot_act=Pb_diff_y_actの微分値(時間的変化率) ……(31)
制御装置260は、さらに、乗員重心横ずれ指標値算出部283の処理を実行する。該乗員重心横ずれ指標値算出部283には、図33に示すように、倒立振子質点横移動量推定値算出部281で算出された倒立振子質点横移動量推定値Pb_diff_y_actと、前輪203fの操舵角検出値δf_actと、前輪回転移動速度推定値Vf_actと、姿勢制御演算部285が前回の制御処理周期において算出した目標姿勢操作モーメントMsum_cmdの値(前回値)Msum_cmd_pとが入力される。
なお、前輪回転移動速度推定値Vf_actは、前記前輪回転速度検出器265の出力により示される前輪203fの回転角速度の検出値(観測値)に該前輪203fの既定の有効回転半径を乗じることで算出される速度である。
また、Msum_cmd_pは、車体傾動用アクチュエータ209の駆動力により車体202の作用するロール方向のモーメント(姿勢操作モーメント)の擬似的な推定値(観測値)に相当するものである。
そして、乗員重心横ずれ指標値算出部283は、図33のブロック線図で示す演算処理により、乗員重心横ずれ指標値としての倒立振子質点横ずれ推定値Pb_err1を算出する。この場合、乗員重心横ずれ指標値算出部283は、オブザーバとして構成されている。
具体的には、乗員重心横ずれ指標値算出部283は、δf_act及びVf_actの入力値を基に、ロールモーメント慣性力成分Miの推定値、ロールモーメント床反力成分Mpの推定値、及びロールモーメント接地面上質点成分M2の推定値のそれぞれを、ロールモーメント慣性力成分算出部283−2、ロールモーメント床反力成分算出部283−3、及びロールモーメント接地面上質点成分算出部283−4により各々算出する。
ここで、ロールモーメント慣性力成分Mi、ロールモーメント床反力成分Mp、及びロールモーメント接地面上質点成分M2の技術的意味は、前記第1実施形態又は第2実施形態と同様である。
なお、上記各算出部283−2,283−3,283−4の具体的な処理は後述する。
そして、乗員重心横ずれ指標値算出部283は、Mi,Mp,M2のそれぞれの推定値と、Pb_diff_y_actの入力値と、Msum_cmdの前回値Msum_cmd_pと、前回の制御処理周期において既に算出した倒立振子質点横ずれ推定値Pb_err1の値(前回値)Pb_err1_pとを基に、運転者の重心の横ずれによる倒立振子質点71の横ずれを考慮した動力学モデルに基づく演算処理を処理部283−5で実行することで、倒立振子質点71のY軸方向の並進加速度Pb_diff_dot2_yの推定値を算出する。
なお、前回値Pb_err1_pは、換言すれば、現在以前に既に算出した倒立振子質点横ずれ推定値Pb_err1のうちの最新値に相当するものである。
ここで、本実施形態では、運転者の重心の横ずれによる倒立振子質点71の横ずれを考慮した動力学モデル(倒立振子質点71の運動方程式)は、前記式(2)の右辺のPb_diff_yをPb_diff_y_act+Pb_err1で置き換えると共に、−Mp−M2−Miを、−Mp−M2−Mi−Msum(Msum:車体傾動用アクチュエータ209による車体202の姿勢操作モーメント)で置き換えてなる運動方程式により表現される。
従って、処理部283−5の演算処理は、次式(32a)により行われる。
Pb_diff_dot2_y
=(m1*g*(Pb_diff_y_act+Pb_err1_p)
−Mp−M2−Mi−Msum_cmd_p)/(m1*h’) ……(32a)
そして、乗員重心横ずれ指標値算出部283は、次式(32b)で示す如く、上記式(32a)により算出したPb_diff_dot2_yを処理部283−6で積分することにより、倒立振子質点71のY軸方向の移動速度(XYZ座標系で見た移動速度)の第1推定値である倒立振子質点横速度第1推定値Pb_diff_dot_y_1を算出する。
Pb_diff_dot_y_1=Pb_diff_dot2_yの積分値 ……(32b)
また、乗員重心横ずれ指標値算出部283は、次式(32c)で示す如く、Pb_diff_y_actの入力値に対して処理部283−1で微分演算を実行することにより、倒立振子質点71のY軸方向の移動速度(XYZ座標系で見た移動速度)の第2推定値である倒立振子質点横速度第2推定値Pb_diff_dot_y_2を算出する。
Pb_diff_dot_y_2=Pb_diff_y_actの微分値(時間的変化率) ……(32c)
なお、式(32c)により算出されるPb_diff_dot_y_2は、前記倒立振子質点横速度推定値算出部282が、前記式(31)により算出するPb_diff_dot_y_actと同じである。従って、倒立振子質点横速度推定値算出部282で算出されたPb_diff_dot_y_actをそのまま、倒立振子質点横速度第2推定値Pb_diff_dot_y_2としてもよい。
ここで、式(32c)により算出される倒立振子質点横速度第2推定値Pb_diff_dot_y_2は、運転者の重心の横ずれが発生していないと仮定した場合の倒立振子質点71のY軸方向の移動速度の推定値に相当する。
従って、この倒立振子質点横速度第2推定値Pb_diff_dot_y_2と、前記式(32a),(32b)により動力学的に算出される倒立振子質点横速度第1推定値Pb_diff_dot_y_1との偏差が、運転者の重心の横ずれに起因する倒立振子質点横ずれ量Pb_err1に応じたものとなる。
そこで、乗員重心横ずれ指標値算出部283は、処理部283−7において、次式(32d)の演算処理により、倒立振子質点横ずれ推定値Pb_err1を算出する。
Pb_err1
=(Pb_diff_dot_y_2−Pb_diff_dot_y_1)*Kestm*(m1*h’)/(m1*g)
=(Pb_diff_dot_y_2−Pb_diff_dot_y_1)*Kestm*h’/g
……(32d)
この式(32d)の演算処理に用いるKestmは、あらかじめ定められた所定値のゲインである。なお、式(32d)におけるKestm*h’/gを、1つのゲイン値としてあらかじめ設定しておいてもよい。
補足すると、図33のブロック線図では、(Pb_diff_dot_y_2−Pb_diff_dot_y_1)*Kestm*(m1*h’)の前回値(=Pb_err1_p*m1*g)を、処理部283−7から処理部283−5に入力している。ただし、例えば倒立振子質点横ずれ推定値Pb_err1の前回値Pb_err1_pを直接的に処理部283−5に入力するようにしてもよい。
以上の如く、乗員重心横ずれ指標値算出部283は、Mi,Mp,M2の推定値を算出すると共に、これらの推定値と、倒立振子質点横移動量Pb_diff_y_actと、Msum_cmdの前回値Msum_cmd_pを用いて、式(32a)〜(32d)の演算処理を実行することで、倒立振子質点横ずれ推定値Pb_err1を算出する。
この場合、Mi,Mp,M2の推定値は、それぞれ以下に説明する如く算出される。
まず、乗員重心横ずれ指標値算出部283のロールモーメント慣性力成分算出部283−2は、図34のブロック線図に示す演算処理により、ロールモーメント慣性力成分Miの推定値を算出する。すなわち、ロールモーメント慣性力成分算出部283−2は、次式(33a)〜(33f)の演算処理により、ロールモーメント慣性力成分Miの推定値を算出する。
δf’_act=δf_act*cos(θcs) ……(33a)
Voy_act=sin(δf’_act)*Vf_act*(Lr/L) ……(33b)
Voy_dot_act=Voy_actの微分値(時間的変化率) ……(33c)
ωz_act=sin(δf’_act)*Vf_act*(1/L) ……(33d)
Vox_act=cos(δf’_act)*Vf_act ……(33e)
Mi=(Voy_dot_act+ωz_act*Vox_act)*m1*h’ ……(33f)
なお、上記式(33a)〜(33e)によりそれぞれ算出されるδf’_act、Vot_act、Voy_dot_act、ωz_act、Vox_actの技術的意味は、第1実施形態又は第2実施形態におけるロールモーメント慣性力成分算出部83−2の演算処理(式(13a)〜(13e))により算出されるものと同様である。
図34では、処理部283−2−1が、式(33a),(33b)の演算処理を実行する処理部、処理部283−2−2が、式(33c)の演算処理(微分演算処理)を実行する処理部、処理部283−2−3が、式(33a),(33d)の演算処理を実行する処理部、処理部383−2−4が、式(33a),(33e)の演算処理を実行する処理部、処理部383−2−5が、式(33f)の演算処理を実行する処理部を示している。
以上の如く、ロールモーメント慣性力成分算出部83−2は、前記式(33a)〜(33f)の演算処理を実行することで、ロールモーメント慣性力成分Miの推定値を算出する。
補足すると、例えば、三輪車201の車体202に、ヨー方向の角速度を検出する角速度センサが搭載されている場合には、その角速度センサの出力により示されるヨー方向の角速度の検出値を、式(33f)におけるωz_actの値として使用してもよい。この場合には、処理部283−2−3の演算処理(式(33d))は不要となる。
また、例えば、三輪車201の後輪203rの回転速度(角速度)を検出する後輪回転速度検出器が三輪車201に搭載されている場合には、該後輪回転速度検出器の出力により示される後輪203rの回転速度の検出値に、後輪203rの有効回転半径を乗じてなる後輪203rの並進移動速度の推定値を、式(33f)におけるVox_actの値として使用してもよい。この場合には、処理部283−2−4の演算処理(式(33e))は不要となる。
次に、乗員重心横ずれ指標値算出部283のロールモーメント床反力成分算出部283−3は、図35のブロック線図に示す演算処理により、ロールモーメント床反力成分Mpの推定値を算出する。すなわち、ロールモーメント床反力成分算出部283−3は、次式(34a)〜(34c)の演算処理により、ロールモーメント床反力成分Mpの推定値を算出する。
p1=Pfy(δf_act)*(Lr/L) ……(34a)
p2=(Plfy(δf_act)*(Lr/L)*(−Rg/h’) ……(34b)
Mp=(p1+p2)*m*g ……(34c)
なお、上記式(34a),(34b)によりそれぞれ算出されるp1,p2の技術的意味は、第1実施形態又は第2実施形態におけるロールモーメント床反力成分算出部83−3の演算処理(式(14a),(14b))により算出されるものと同様である。
図35では、処理部283−3−1が、式(34a)の演算処理を実行する処理部、処理部283−3−2が、式(34b)の演算処理を実行する処理部、処理部283−3−3が、式(34c)の演算処理を実行する処理部を示している。
ここで、式(34a)におけるPfy(δf_act)は、図35の処理部283−3−1のうちの処理部283−3−1−1において、δf_actの値から、あらかじめ設定された変換関数Pfy(δf)により決定される関数値である。この変換関数Pfy(δf)は、例えばマップもしくは演算式により構成される。該変換関数Pfy(δf)は、処理部283−3−1−1の図で例示されるように、δfの値の増加(負側の値から正側の値への増加)に伴い、Pfyの値が負側の値から正側の値に単調増加していくように設定されている。
また、式(34b)の右辺の演算のうち、(−Rg/h’)の乗算を除いた演算処理、すなわち、処理部283−3−2のうちの処理部283−3−2−1の演算処理は、前記倒立振子質点横移動量推定値算出部281の演算処理のうちの処理部281−2の処理(Pb_diff_y_2を算出する処理)と同じである。
従って、式(34b)は、次式(34b’)と等価である。
p2=Pb_diff_y_2*(−Rg/h’) ……(34b’)
以上の如く、ロールモーメント床反力成分算出部283−3は、前記式(34a)〜(34c)の演算処理により、ロールモーメント床反力成分Mpの推定値を算出する。
補足すると、処理部283−3−1において、変換関数Pfy(δf)の代わりに、(Pfy(δf_act)*(Lr/L)の値(=p1)を関数値として求める変換関数を使用してもよい。この場合には該変換関数により、直接的にp1が求められる。
また、処理部283−3−2のうちの処理部283−3−2−1は、倒立振子質点横移動量推定値算出部281の処理部281−2に関して補足説明した変形態様を採用することもできる。
さらに、処理部283−3−2の演算処理では、変換関数Plfy(δf)の代わりに、(Plfy(δf_act)*(Lr/L)*(−Rg/h’)の値を関数値として求める変換関数を使用するようにしてもよい。この場合には、該変換関数の出力値がそのままp2として求められる。
次に、乗員重心横ずれ指標値算出部283のロールモーメント接地面上質点成分算出部283−4は、図36のブロック線図に示す演算処理により、ロールモーメント接地面上質点成分M2の推定値を算出する。すなわち、ロールモーメント接地面上質点成分算出部283−4は、次式(35a),(35b)の演算処理により、ロールモーメント接地面上質点成分M2の推定値を算出する。
q=Plfy(δf_act)*(Lr/L) ……(35a)
M2=q*(−m2*g) ……(35b)
なお、上記式(35a)により算出されるqの技術的意味は、第1実施形態又は第2実施形態におけるロールモーメント接地面上質点成分算出部83−4の演算処理(式(15a))により算出されるものと同様である。
図36では、処理部283−4−1が、式(35a)の演算処理を実行する処理部、処理部283−4−2が、式(35b)の演算処理を実行する処理部を示している。
この場合、処理部283−4−1の演算処理は、前記倒立振子質点横移動量推定値算出部281の演算処理のうちの処理部281−2の演算処理(Pb_diff_y_2を算出する処理)と同じである。従って、処理部283−4−1の演算処理では、Pb_diff_y_2が接地面上質点72の横移動量qとして算出される。
以上の如く、ロールモーメント接地面上質点成分算出部283−4は、前記式(35a),(35b)の演算処理により、ロールモーメント接地面上質点成分M2の推定値を算出する。
補足すると、処理部283−4−1は、倒立振子質点横移動量推定値算出部281の処理部281−2に関して補足説明した変形態様を採用することもできる。
さらに、変換関数Plfy(δf)の代わりに、Plfy(δf_act)*(Lr/L)*(−m2*g)の値を関数値として求める変換関数を使用するようにしてもよい。この場合には、該変換関数の出力値が、そのままロールモーメント接地面上質点成分M2として求められる。
図31に戻って、制御装置260は、さらに、目標姿勢状態決定部284の処理を実行する。
本実施形態では、目標姿勢状態決定部284は、前記第1実施形態又は第2実施形態の目標姿勢状態決定部84と同様に、目標倒立振子質点横移動量Pb_diff_y_cmdを決定する。
すなわち、目標姿勢状態決定部284は、前記式(33d)の演算処理により算出されるωz_act(ヨー方向の角速度の推定値)と、式(33e)の演算処理により算出されるVox_act(走行速度の推定値)とを用いて、次式(36a)、(36b)の演算処理により目標倒立振子質点横移動量Pb_diff_y_cmdを決定する。また、本実施形態では、目標姿勢状態決定部284は、目標倒立振子質点横速度Pb_diff_dot_y_cmdをゼロとする。
φb_lean=−Vox_act*ωz_act/g ……(36a)
Pd_diff_y_cmd=−φlean*h’ ……(36b)
なお、目標倒立振子質点横速度Pb_diff_dot_y_cmdは、例えば、操舵角検出値δf_act等に応じて可変的に決定するようにすることも可能である。
また、目標倒立振子質点横移動量Pb_diff_y_cmdを例えばゼロとしてもよい。あるいは、目標倒立振子質点横移動量Pb_diff_y_cmdを、例えば、操舵角検出値δf_act等に応じて可変的に決定するようにすることも可能である。
制御装置260は、さらに、乗員操舵ロール操作量算出部288の処理を実行する。この乗員操舵ロール操作量算出部288には、図37に示すように、操舵角検出値δf_actと、ハンドルトルク検出値Th_actとが入力される。
上記ハンドルトルク検出値Th_actは、前記ハンドルトルク検出器264の出力により示される検出値である。
そして、乗員操舵ロール操作量算出部288は、図37のブロック線図に示す演算処理によって、目標倒立振子質点横移動量Pb_diff_y_cmdの補正量としての乗員操舵ロール操作量Pb_err2を算出する。
すなわち、乗員操舵ロール操作量算出部288は、次式(37a),(37b)の演算処理により乗員操舵ロール操作量Pb_err2を算出する。
Tstr=Kstr*Th_act−Mself(δf_act) ……(37a)
Pb_err2=Kcmv*Tstr*(1/(m1*g)) ……(37b)
ここで、式(37a)の右辺のKstr*Th_actは、ハンドルトルクTh_actに応じた前輪203fの操舵トルク(前輪203fR,203fLのそれぞれの操舵軸線CfR,CfLの周りのトルクの合力トルク)の推定値に相当する。この場合、Kstrは、所定値の係数である。なお、操舵トルクの正方向は、三輪車201を上方から見て、反時計周り方向である。
また、式(37a)の右辺のMself(δf_act)は、三輪車201におけるセルフステアという現象によって自然に(ハンドル220の操作によらずに)発生する前輪203fの操舵方向のモーメント(以降、スルフステアモーメントという)である。
このセルフステアモーメントMself(δf_act)は、図37の処理部288−1において、δf_actの値から、あらかじめ設定された変換関数Mself(δf)により決定される関数値である。この変換関数Mself(δf)は、例えばマップもしくは演算式により構成される。該変換関数Mself(δf)は、処理部288−1の図で例示されるように、δfの値の増加(負側の値から正側の値への増加)に伴い、Mselfの値が負側の値から正側の値に単調増加していくように設定されている。
従って、式(37a)により算出されるTstrは、ハンドルトルクTh_actに応じた前輪203fの操舵トルクのうち、セルフステアモーメントMself(δf_act)を除いた成分である。該成分は、運転者がハンドル220の操作を通じて意図した前輪203fの操舵トルク(操舵力)に相当する。
また、式(37b)の右辺のKcmv*Tstrは、式(37a)により算出された操舵トルクTstrを、車体202のロール方向のモーメントに変換するものである。この場合、Kcmvは、所定値の変換係数である。
そして、このモーメントKcmv*Tstrを、m1*gで除算することにより、乗員操舵ロール操作量Pb_err2が算出される。
これにより、運転者によるハンドル220の操作による前輪203fの操舵トルクTstrに応じて、車体202を傾動させるように目標倒立振子質点横移動量Pb_diff_y_cmdの補正するための乗員操舵ロール操作量Pb_err2が算出される。
この場合、操舵トルクの推定値Tstrが正方向のトルク(反時計周り方向のトルク)である場合に、乗員操舵ロール操作量Pb_err2は、車体202を左側に傾ける方向の操作量となるよう決定される。また、操舵トルクの推定値Tstrが負方向のトルク(時計周り方向のトルク)である場合に、乗員操舵ロール操作量Pb_err2は、車体202を右側に傾ける方向の操作量となるよう決定される。
以上の如く、乗員操舵ロール操作量算出部288は、式(37a),(37b)の演算処理により乗員操舵ロール操作量Pb_err2を算出する。
制御装置260は、次に、姿勢制御演算部285の処理を実行する。この姿勢制御演算部285には、図38に示すように、目標姿勢状態決定部284で決定された目標倒立振子質点横移動量Pb_diff_y_cmd及び目標倒立振子質点横速度Pb_diff_dot_y_cmdと、倒立振子質点横移動量推定値算出部281で算出された倒立振子質点横移動量推定値Pb_diff_y_actと、倒立振子質点横速度推定値算出部282で算出された倒立振子質点横速度推定値Pb_diff_dot_y_actと、乗員重心横ずれ指標値算出部283で算出された倒立振子質点横ずれ推定値Pb_err1と、乗員操舵ロール操作量算出部288で算出された乗員操舵ロール操作量Pb_err2とが入力される。
そして、姿勢制御演算部285は、上記の入力値を用いて、図38のブロック線図で示される演算処理により、目標姿勢操作モーメントMsum_cmdを決定する。
すなわち、姿勢制御演算部285は、次式(38)の演算処理により、目標姿勢操作モーメントMsum_cmdを算出する。
Msum_cmd=−K1*((Pb_diff_y_cmd
−Kdstb1*Pb_err1−Kdstb2*Pb_err2)−Pb_diff_y_act)
−K2*(Pb_diff_dot_y_cmd−Pb_diff_dot_y_act) ……(38)
ここで、式(38)におけるKdstb1、Kdstb2、K1、K2は、所定値のゲインである。これらのゲインKdstb1、Kdstb2、K1、K2の値は、例えば三輪車201の走行速度推定値Vox_act、あるいは、操舵角検出値δf_actに応じて可変的に設定される。
この場合、本実施形態では、Msum_cmdに車体傾動用アクチュエータ209の作動によって車体202に作用するロール方向のモーメントがさほど大きくならないように(運転者が自身の体重移動によって車体202をロール方向に比較的容易に傾け得るように)ゲインKdstb1、Kdstb2、K1、K2の値が設定される。
また、Kdstb1、Kdstb2、K1、K2の大きさは、いずれも、二輪車1の走行速度推定値Vox_actが、高いほど、小さくなるように可変的に設定される。
そして、式(38)におけるKdstb1*Pb_err1は、リーンアウト又はリーンインの状態で、目標姿勢状態決定部112で決定された目標倒立振子質点横移動量Pb_diff_y_cmdを、Pb_err1を低減する方向(リーンアウト又はリーンインからリーンウィズに近づける方向)に補正する補正量である。
また、式(38)におけるKstb2*Pb_err2は、運転者による前輪203fの操舵力に応じて車体202を傾動させるように目標倒立振子質点横移動量Pb_diff_y_cmdを補正する補正量である。
また、式(38)において、−K1*((Pb_diff_y_cmd−Kdstb1*Pb_err1−Kdstb2*Pb_err2)−Pb_diff_y_act)は、Pb_diff_y_cmdをPb_err1及びPb_err2に応じて補正してなる目標値(Pb_diff_y_cmd−Kdstb1*Pb_err1−Kdstb2*Pb_err2)と、Pb_diff_y_actとの偏差をゼロに近づける機能を有するフィードバック操作量成分、−K2*(Pb_diff_dot_y_cmd−Pb_diff_dot_y_act)は、偏差(Pb_diff_dot_y_cmd−Pb_diff_dot_y_act)をゼロに近づける機能を有するフィードバック操作量成分である。
以上の如く、本実施形態では、姿勢制御演算部285は、各制御処理周期において、式(38)の演算処理を実行することで、目標姿勢操作モーメントMsum_cmdを算出する。
制御装置260は、さらに、目標走行速度決定部287の処理を実行する。この目標走行速度決定部287の処理は、例えば、前記第1〜第4実施形態における目標走行速度決定部87の処理と同じである。従って、例えば図17のブロック線図で示した処理により、目標走行速度Vox_cmdが決定される。
次に、前記車体傾動用アクチュエータ209及び後輪駆動用アクチュエータ230の制御について説明する。
制御装置260は、姿勢制御演算部285で決定した目標姿勢操作モーメントMsum_cmdに応じて車体傾動用アクチュエータ209を制御する。この場合、制御装置260は、Msum_cmdをあらかじめ定められた所定の演算式又はマップにより、車体傾動用アクチュエータ209の目標出力トルクに変換する。そして、この目標出力トルクに応じて決定した電流指令値に従って、車体傾動用アクチュエータ209(電動モータ)の通電電流を制御する。
また、制御装置260は、目標走行速度決定部287で決定した目標走行速度Vox_cmdと、前記式(33e)により算出される走行速度推定値Vox_actとから、前記第1〜第4実施形態における前輪駆動用アクチュエータ制御部92と同様の処理(図19を参照)により、後輪駆動用アクチュエータ230(電動モータ)の電流指令値を決定し、この電流指令値に従って、後輪駆動用アクチュエータ230の通電電流を制御する。
以上が、本実施形態における制御装置260の制御処理の詳細である。
ここで、本実施形態と本発明との対応関係について説明しておく。
本実施形態においては、車体傾動用アクチュエータ209が、本発明におけるアクチュエータに相当する。この場合、車体傾動用アクチュエータ209は、主に、車体202を路面に対してロール方向に揺動させるアクチュエータとしての機能を持つものである。なお、車体傾動用アクチュエータ209は、車体202の重心を横方向(Y軸方向)に移動させるアクチュエータとしての機能も併せ持つ。
また、前記乗員重心横ずれ指標値算出部283が、本発明における重心ずれ度合指標値決定手段に相当する。この場合、乗員重心横ずれ指標値Pb_err1が本発明における重心ずれ度合指標値に相当する。また、車体2の対称面上の位置が運転者の重心の位置に関する所定の基準位置に相当する。
また、前輪回転移動速度推定値Vf_act、操舵角推定値δf_act、目標姿勢操作モーメントMsum_cmdの前回値Msum_cmd_p(これは、姿勢操作モーメントの擬似的な推定値に相当する)、及び倒立振子質点横移動量推定値Pb_diff_y_actの微分値である倒立振子質点横速度第2推定値Pb_diff_dot_y_2が、重心ずれ度合指標値決定手段(乗員重心横ずれ指標値算出部283)の処理で使用する移動体(三輪車201)の動作状態の観測値に相当する。この場合、Pb_diff_dot_y_2は、車体202の傾斜状態量の観測値に相当する。
また、前記式(32a),(32b)が本発明における動力学演算に相当する。そして、この式(32b)により算出される倒立振子質点横速度第1推定値Pb_diff_dot_y_1が、車体202の傾斜状態量の算出値に相当する。
また、乗員操舵ロール操作量算出部288は、本発明における操舵力推定手段としての機能を含む。具体的には、前記式(37a)の処理が、操舵力推定手段に相当する。
また、姿勢制御演算部285が、本発明における制御入力決定手段に相当し、該姿勢制御演算部285が算出するMsum_cmdが、本発明における制御入力に相当する。そして、姿勢制御演算部285が実行する前記式(38a)におけるゲインKdstb1が、重心ずれ度合指標値(乗員重心横ずれ指標値Pb_err1)の変化に対する制御入力(Msum__cmd)の変化の感度に相当する。
以上説明した第5実施形態によれば、倒立振子質点横移動量推定値Pb_diff_y_actが、目標倒立振子質点横移動量Pb_diff_y_cmdから乖離してしまうことと、運転者の重心の位置が車体2の対称面上から横方向に乖離してしまうこととが抑制される。
このため、運転者の体重移動に対する車体2のロール角の追従性を高めることができる。
加えて、運転者によるハンドル220の操作によって発生する前輪203fの操舵力に応じた傾斜角に車体202のロール角φb_actが近づくように、車体傾動用アクチュエータ209の回転駆動力が制御される。
このため、運転者による前輪203fの操舵に応じた三輪車201の旋回の要求に即して車体202を傾動させることができる。
[第6実施形態]
次に、本発明の第6実施形態を図39〜図42を参照して以下に説明する。なお、本実施形態での移動体は、第5実施形態における移動体(三輪車201)と同じである。そして、本実施形態は、制御装置の一部の制御処理だけが第5実施形態と相違する。このため、本実施形態の説明は、第5実施形態と相違する事項を中心に行う。そして、第5実施形態と同一の事項については詳細な説明を省略する。
前記第5実施形態では、2質点モデルにおける倒立振子質点71に関する倒立振子質点横移動量Pb_diff_yと、倒立振子質点横速度Pb_diff_dot_yとを制御対象の状態量として使用した。
これに対して本実施形態では、車体202のロール角φbと、その時間的変化率であるロール角速度φb_dotとを制御対象の状態量として使用する。
以下、具体的に説明すると、本実施形態における制御装置260は、実装されたプログラムをCPUが実行することにより実現される機能(ソフトウェアにより実現される機能)又はハードウェア構成により実現される機能として、図39のブロック図に示す機能を有する。
すなわち、制御装置260は、車体202のロール角検出値φb_actの微分値(時間的変化率)をロール角速度検出値φb_dot_actとして算出するロール角速度検出部300と、前記乗員重心横ずれ指標値としての車体傾斜角ずれ推定値φb_err1を乗員重心横ずれ指標値算出部301と、車体202の目標ロール角φb_cmd及び目標ロール角速度φb_dot_cmdを決定する目標姿勢状態決定部302とを備える。
ここで、車体傾斜角ずれ推定値φb_err1の技術的意味は、前記第3実施形態又は第4実施形態のものと同じである。
また、制御装置260は、車体202のロール角φbを、運転者がハンドル220を操作することによる前輪203fの操舵力に適した傾斜角に近づけるようにするための乗員操舵ロール操作量φb_err2を算出する乗員操舵ロール操作量算出部308を備える。
乗員操舵ロール操作量φb_err2は、本実施形態では、目標ロール角φb_cmdを補正する補正量である。
さらに、制御装置260は、車体2のロール方向の姿勢制御のための制御入力(操作量)としての目標姿勢操作モーメントMsum_cmdを決定する姿勢制御演算部303と、目標走行速度Vox_cmdを決定する目標走行速度決定部287とを備える。目標走行速度決定部287は、第5実施形態(又は第1実施形態)のものと同じである。
そして、本実施形態では、乗員重心横ずれ指標値算出部301、目標姿勢状態決定部302、乗員操舵ロール操作量算出部308、及び姿勢制御演算部303の処理は、各制御処理周期において、次のように実行される。
まず、目標姿勢状態決定部302は、例えば、前記第5実施形態で説明した前記式(36a)により算出されるロール角φb_leanを目標ロール角φb_cmdとして決定する。また、目標ロール角速度φb_dot_cmdを例えばゼロとする。なお、目標ロール角速度φb_dot_cmdは、例えば、操舵角検出値δf_act等に応じて可変的に決定するようにすることも可能である。
また、目標ロール角φb_cmdを例えばゼロとしてもよい。あるいは、目標ロール角φb_cmdを、例えば、操舵角検出値δf_act等に応じて可変的に決定するようにすることも可能である。
図40に示すように、乗員重心横ずれ指標値算出部301には、ロール角検出値φb_actと、操舵角検出値δf_actと、前輪回転移動速度推定値Vf_actと、目標姿勢操作モーメントMsum_cmdの前回値Msum_cmd_p(前回の制御処理周期で決定された値)とが入力される。なお、Msum_cmd_pは、車体傾動用アクチュエータ209の駆動力により車体202の作用するロール方向のモーメント(姿勢操作モーメント)の擬似的な推定値(観測値)に相当するものである。
そして、乗員重心横ずれ指標値算出部301は、図40のブロック線図で示す演算処理により、乗員重心横ずれ指標値としての車体傾斜角ずれ推定値φb_err1を算出する。この場合、乗員重心横ずれ指標値算出部301は、第5実施形態と同様に、オブザーバとして構成されている。
具体的には、乗員重心横ずれ指標値算出部301は、δf_act及びVf_actの入力値を基に、前記ロールモーメント慣性力成分Miの推定値及び前記ロールモーメント床反力成分Mpの推定値のそれぞれを、ロールモーメント慣性力成分算出部301−2及びロールモーメント床反力成分算出部301−3により各々算出する。
この場合、ロールモーメント慣性力成分算出部301−2は、第5実施形態と同様の演算処理により、ロールモーメント慣性力成分Miの推定値を算出する。より詳しくは、ロールモーメント慣性力成分算出部301−2は、前記式(33a)〜(33e)と、前記式(33f)の右辺のm1*h’を、m*hに置き換えてなる次式(33f’)との演算処理を実行することで、Miの推定値を算出する。
Mi=(Voy_dot_act+ωz_act*Vox_act)*m*h ……(33f’)
また、ロールモーメント床反力成分算出部301−3は、前記第5実施形態のロールモーメント床反力成分算出部283−3の演算処理における前記式(34a)と、式(34c)のp2をゼロとしてなる式とから得られる次式(34d)の演算処理を実行することで、ロールモーメント床反力成分Mpの推定値を算出する。
Mp=Pfy(δf_act)*(Lr/L)*m*g ……(34d)
そして、乗員重心横ずれ指標値算出部301は、Mi,Mpのそれぞれの推定値と、φb_actの入力値と、前回の制御処理周期において既に算出した車体傾斜角ずれ推定値φb_errの値(前回値)φb_err_pと、Msum_cmdの前回値Msum_cmd_pとを基に、次式(40a)の動力学演算を処理部301−4で実行することで、車体202の傾斜角加速度φb_dot2の推定値を算出する。
なお、前回値φb_err_pは、換言すれば、現在以前に既に算出した車体傾斜角ずれ推定値φb_errのうちの最新値に相当するものである。
φb_dot2=(m*g*h*(φb_act+φb_err_p)+Mp+Mi+Msum_cmd_p)/J
……(40a)
なお、式(40a)におけるJは、前記XYZ座標系のX軸周りに関する三輪車201の全体(運転者を含む)のイナーシャのあらかじめ定められた設定値である。
そして、乗員重心横ずれ指標値算出部301は、次式(40b)で示す如く、上記式(40a)により算出したφb_dot2を処理部301−5で積分することにより、車体202のロール角速度φb_dotの第1推定値であるロール角速度第1推定値φb_dot_1を算出する。
φb_dot_1=φb_dot2の積分値 ……(40b)
また、乗員重心横ずれ指標値算出部301は、次式(40c)で示す如く、φb_actの入力値に対して処理部301−1で微分演算を実行することにより、車体202のロール角速度φb_dotの第2推定値であるロール角速度第2推定値φb_dot_2を算出する。
φb_dot_2=φb_actの微分値(時間的変化率) ……(40c)
なお、式(40c)により算出されるφb_dot_2は、前記ロール角速度検出部300で算出されるロール角速度検出値φb_dot_actと同じである。従って、ロール角速度検出値φb_dot_actをそのまま、ロール角速度第2推定値φb_dot_2としてもよい。
ここで、前記式(40b)により算出されるロール角速度第1推定値φb_dot_1は、三輪車201の全体重心Gが車体202の対称面上に位置するみなして算出される車体202のロール角の推定値に相当する。
従って、ロール角速度第2推定値φb_dot_2と、前記式(40a),(40b)により動力学的に算出されるロール角速度第1推定値φb_dot_1との偏差が、運転者の重心の横ずれに起因する車体傾斜角ずれ量に応じたものとなる。
そこで、乗員重心横ずれ指標値算出部301は、処理部301−6において、次式(40d)の演算処理により、車体傾斜角ずれ推定値φb_err1算出する。
φb_err1
=(φb_dot_2−φb_dot_1)*Kestm*J/(m*g*h) ……(40d)
この式(40d)の演算処理に用いるKestmは、あらかじめ定められた所定値のゲインである。なお、式(40d)におけるKestm*J/(m*g*h)を、1つのゲイン値としてあらかじめ設定しておいてもよい。
補足すると、図40のブロック線図では、(φb_dot_2−φb_dot_1)*Kestm*Jの前回値(=φb_err1_p*m1*g*h)を、処理部301−6から処理部301−4に入力している。ただし、例えば車体傾斜角ずれ推定値φb_err1の前回値φb_err1_pを直接的に処理部301−4に入力するようにしてもよい。
以上の如く、本実施形態における乗員重心横ずれ指標値算出部301は、Mi,Mpの推定値を算出すると共に、これらの推定値と、車体ロール角検出値φb_actと、車体傾動用アクチュエータ209により車体202に作用する姿勢操作モーメントの擬似的な推定値してMsum_cmdの前回値Msum_cmd_pとを用いて、式(40a)〜(40d)の演算処理を実行することで、車体傾斜角ずれ推定値φb_err1を算出する。
次に、図41に示すように、乗員操舵ロール操作量算出部308には、操舵角検出値δf_actと、ハンドルトルク検出値Th_actとが入力される。
そして、乗員操舵ロール操作量算出部308は、図41のブロック線図に示す演算処理によって、目標ロール角φb_cmdの補正量としての乗員操舵ロール操作量φb_err2を算出する。
すなわち、乗員操舵ロール操作量算出部308は、前記第5実施形態における前記式(37a)と、式(37b)の右辺のm1*gをm*g*hに置き換えてなる次式(37b’)の演算処理により乗員操舵ロール操作量φb_err2を算出する。
φb_err2=Kcmv*Tstr*(1/(m*g*h)) ……(37b’)
これにより、運転者によるハンドル220の操作による前輪203fの操舵トルクTstrに応じて、車体202を傾動させるように目標ロール角φb_cmdを補正するための乗員操舵ロール操作量φb_err2が算出される。
以上の如く、乗員操舵ロール操作量算出部308は、式(37a),(37b’)の演算処理により乗員操舵ロール操作量φb_err2を算出する。
次に、図42に示すように、姿勢制御演算部303には、目標姿勢状態決定部302で決定された目標ロール角φb_cmd及び目標ロール角速度φb_dot_cmdと、ロール角検出値φb_act及びロール角速度検出値φb_dot_actと、乗員重心横ずれ指標値算出部301で算出された車体傾斜角ずれ推定値φb_err1と、乗員操舵ロール操作量算出部308で算出された乗員操舵ロール操作量φb_err2が入力される。
そして、姿勢制御演算部303は、上記の入力値を用いて、図42のブロック線図で示される演算処理により、目標姿勢操作モーメントMsum_cmdを決定する。
すなわち、姿勢制御演算部303は、次式(41)の演算処理により、目標姿勢操作モーメントMsum_cmdを算出する。
Msum_cmd=−K1*((φb_cmd
−Kdstb1*φb_err1−Kdstb2*φb_err2)−φb_act)
−K2*(φb_dot_cmd−φb_dot_act) ……(41)
ここで、式(41)におけるKdstb1、Kdstb2、K1、K2は、所定値のゲインである。これらのゲインKdstb1、Kdstb2、K1、K2の値は、例えば三輪車201の走行速度推定値Vox_act、あるいは、操舵角検出値δf_actに応じて可変的に設定される。
この場合、本実施形態では、Msum_cmdに車体傾動用アクチュエータ209の作動によって車体202に作用するロール方向のモーメントがさほど大きくならないように(運転者が自身の体重移動によって車体202をロール方向に比較的容易に傾け得るように)ゲインKdstb1、Kdstb2、K1、K2の値が設定される。
また、Kdstb1、Kdstb2、K1、K2の大きさは、いずれも、二輪車1の走行速度推定値Vox_actが、高いほど、小さくなるように可変的に設定される。
なお、ゲインKdstb1、Kdstb2、K1、K2の値は、一般には、第5実施形態のものとは異なる。
そして、式(41)におけるKdstb1*φb_err1は、リーンアウト又はリーンインの状態で、目標姿勢状態決定部302で決定された目標ロール角φb_cmdを、φb_err1を低減する方向(リーンアウト又はリーンインからリーンウィズに近づける方向)に補正する補正量である。
また、式(41)におけるKstb2*φb_err2は、運転者による前輪203fの操舵力に応じて車体202を傾動させるように目標ロール角φb_cmdを補正する補正量である。
また、式(41)において、−K1*((φb_cmd−−Kdstb1*φb_err1−Kdstb2*φb_err2)−φb_act)は、φb_cmdを補正してなる目標値(φb_cmd−Kdstb1*φb_err1−Kdstb2*φb_err2)と、ロール角検出値φb_actとの偏差をゼロに近づける機能を有するフィードバック操作量成分、−K2*(φb_dot_cmd−φb_dot_act)は、偏差(φb_dot_cmd−φb_dot_act)をゼロに近づける機能を有するフィードバック操作量成分である。
以上の如く、姿勢制御演算部303は、各制御処理周期において、上記の式(41)の演算処理を実行することで、目標姿勢操作モーメントMsum_cmdを算出する。
本実施形態は、以上説明した事項以外は、前記第5実施形態と同じである。
ここで、本実施形態と本発明との対応関係について補足しておく。
本実施形態においては、車体傾動用アクチュエータ209が、本発明におけるアクチュエータに相当する。この場合、車体傾動用アクチュエータ209は、主に、車体202を路面に対してロール方向に揺動させるアクチュエータとしての機能を持つものである。なお、車体傾動用アクチュエータ209は、車体202の重心を横方向(Y軸方向)に移動させるアクチュエータとしての機能も併せ持つ。
また、前記乗員重心横ずれ指標値算出部301が、本発明における重心ずれ度合指標値決定手段に相当する。この場合、乗員重心横ずれ指標値φb_err1が本発明における重心ずれ度合指標値に相当する。また、車体2の対称面上の位置が運転者の重心の位置に関する所定の基準位置に相当する。
また、前輪回転移動速度推定値Vf_act、操舵角推定値δf_act、目標姿勢操作モーメントMsum_cmdの前回値Msum_cmd_p(これは、姿勢操作モーメントの擬似的な推定値に相当する)、及びロール角検出値φb_actの微分値であるロール角速度第2推定値φb_dot_2(=ロール角速度検出値φb_dot_act)が、重心ずれ度合指標値決定手段(乗員重心横ずれ指標値算出部301)の処理で使用する移動体(三輪車201)の動作状態の観測値に相当する。この場合、φb_dot_2は、車体202の傾斜状態量の観測値に相当する。
また、前記式(40a),(40b)が本発明における動力学演算に相当する。そして、この式(40b)により算出されるロール角速度第1推定値φb_dot_1が、車体202の傾斜状態量の算出値に相当する。
なお、この場合の動力学演算は、質量mの質点(全体重心の質点)と、イナーシャJとから構成される系の動力学モデルに基づく動力学演算となる。
また、乗員操舵ロール操作量算出部308は、本発明における操舵力推定手段としての機能を含む。具体的には、前記式(37a)の処理が、操舵力推定手段に相当する。
また、姿勢制御演算部303が、本発明における制御入力決定手段に相当し、該姿勢制御演算部303が算出するMsum_cmdが、本発明における制御入力に相当する。そして、姿勢制御演算部303が実行する前記式(41)におけるゲインKdstb1が、重心ずれ度合指標値(乗員重心横ずれ指標値φb_err1)の変化に対する制御入力(Msum_cmd)の変化の感度に相当する。
以上説明した第6実施形態によれば、前記第5実施形態と同様の効果を奏することができる。ただし、車体202の姿勢制御の信頼性を高める上では、第6実施形態よりも第5実施形態の方が有利である。
[変形態様について]
次に、前記第1〜第6実施形態に関連する変形態様をいくつか説明する。
前記第1〜第4実施形態では、前輪3f(操舵輪)の操舵軸線として、第1操舵軸線Cf1及び第2操舵軸線Cf2の2つの操舵軸線を備えた。ただし、前輪3fの操舵軸線は、1つの操舵軸線(例えばCf1)だけであってもよい。
また、二輪車1の操舵機構6は、前記第1実施形態と異なる構成のものであってもよい。例えば、操舵機構6は、前記特開2014−184934号公報の図8あるいは図10に記載された構造のものであってもよい。
また、第1〜第4実施形態では、車体2のロール方向の姿勢の制御のために、前輪3fを第1操舵用アクチュエータ15及び第2操舵用アクチュエータ37により操舵するようにした。ただし、例えば後輪3rが操舵可能な操舵輪となっている場合には、車体2のロール方向の姿勢の制御のために、後輪3rをアクチュエータにより操舵するようにしてもよい。
また、前記第5及び第6実施形態では、2つの前輪203fR,203fLを備える三輪車201を例示したが、本発明の移動体は、例えば、2つの後輪を備える三輪車であってもよい。
さらには、本発明の移動体は、例えば図43A、図43B及び図43Cに例示する如く、2つの前輪403fR,403fLと2つの後輪403rR,403rLとを備える四輪車401であってもよい。
この四輪車401は、運転者の搭乗部404を有する車体402の前部側に、左右に並ぶ前輪403fR,403fLが配置され、後部側に左右に並ぶ後輪403rR,403rLが配置されている。
この四輪車401では、前輪支持機構等、車体402の前部側の構成は、前記図28A〜図28Cに示したものと同じである。従って、これらの構成の説明は省略する。
一方、車体402の後部の左側及び右側にそれぞれ配置された後輪支持機構405L,405Rのそれぞれに、後輪403rL,403rRが各々ベアリング等を介して回転自在に軸支されている。
左右の後輪支持機構405L,405Rは、上下方向に間隔を存して左右方向に延在する上側リンク407u及び下側リンク407dにより構成される平行リンク407を介して連結されている。なお、平行リンク407は、後輪支持機構405L,405Rの前側と後側とに配置されている。
そして、平行リンク407の上側リンク407u及び下側リンク407dのそれぞれの中央部は、車体402の後端部に対して、前後方向の軸周りに揺動し得るように軸支されている。
従って、車体402を傾動させると、車体402の前部側の平行リンクと同様に、後部側の平行リンク407が車体402に対して揺動するようになっている。この場合、前輪403fR,403fLと同様に(図29Aと同様の形態で)、後輪403rL,403rRも傾くこととなる。
かかる移動体401においては、前記第5実施形態又は第6実施形態と同様の制御処理により、車体402のロール方向の姿勢を制御することができる。
また、前記第5実施形態及び第6実施形態では、平行リンク207を利用した機構によって、車体202が路面に対して傾動(揺動)し得るようにした。ただし、車体を路面に対して揺動させる機構としては、例えば図44及び図45に例示する機構を採用することもできる。
図44に例示する移動体501は、運転者の搭乗部(シート)504を有する車体502と、車体502の前部側に配置された1つの前輪503f(操舵輪)と、車体502の後部側に左右方向(図44の紙面に垂直な方向)に並んで配置された2つの後輪503r,503rとを備える三輪車である。
この移動体501では、前輪503fは、ハンドル513の操作によって操舵し得るように、フロントフォーク等により構成される前輪支持機構505を介して車体502に支持されている。
また、この移動体501では、後輪503r,503rの間の箇所に、移動体501の動力源たる原動機ユニット521が配置されている。なお、図示例では、原動機ユニット521は、これに装着されたカバー部材522で覆われている。
該原動機ユニット521は、エンジンあるいは電動モータ等により構成される原動機から、後輪503r、503rに回転駆動力を伝達し得るように、該後輪503r,503rに接続されている。
そして、原動機ユニット521は、ロール駆動機構523を介して車体502に連結されている。該ロール駆動機構523は、これに備えるアクチュエータ533の駆動力によって、車体502を路面に対してロール方向に揺動(傾動)させ得るように原動機ユニット521を車体502に連結する。
このロール駆動機構523は、例えば、図45に示す如く構成されている。なお、図45における前後方向、左右方向は、それぞれ車体502の前後方向、左右方向(車幅方向)である。
図45を参照して、ロール駆動機構523は、原動機ユニット521に固定される後輪側固定ユニット531と、後輪側固定ユニット531に対してロール方向に回転可能に組付けられた回転ユニット532と、アクチュエータ533と、アクチュエータ533の駆動力(回転駆動力)を回転ユニット532に伝達する動力伝達機構534とを主要構成として備える。
後輪側固定ユニット531は、左右方向に間隔を存して原動機ユニット521にネジ等により固定される一対の板部材535,535の間に、軸心C1を前後方向に向けた状態で配置された軸部材536を備える。軸部材536は、その外周部が板部材535,535に固定されている。
そして、軸部材536の前端側に配置された回転ユニット532が、軸部材536の軸心C1周りに回転し得るように、ベアリング等を介して軸部材536に連結されている。
回転ユニット532は、軸部材536側から前方に向かって延在する。そして、該回転ユニット532には、車体502に対してピッチ方向(左右方向の軸周り方向)に揺動しる得るように、該回転ユニット532の前側端部の二股状の部分に形成された取付穴537,537を介して車体502に連結される。
これにより、車体502は、後輪503r,503rに対して(ひいては後輪503r,503rが接地する路面に対して)、前記軸部材536の軸心C1周りに(ロール方向に)揺動可能となると共に、前記取付穴537,537の軸心周りに(ピッチ方向に)揺動可能となる。
さらに、回転ユニット532の上面部は、該上面部の取付穴539に一端部が軸支されるダンパー538(図44に示す)を介して車体502に連結される。このダンパー538により回転ユニット532のピッチ方向の揺動が制動される。
アクチュエータ533は、車体502を路面に対してロール方向に揺動させるアクチュエータであり、例えば電動モータあるいは油圧モータ等により構成される。そして、該アクチュエータ533のハウジングは、該アクチュエータ533に装着された減速機541のハウジングを介して板部材535,535のうちの一方側(図では右側)の板部材535に固定されている。
動力伝達機構534は、減速機541にアクチュエータ533から入力される回転駆動力を、カップリング544、駆動側クランクアーム545、連結ロッド546、及び被動側クランクアーム547を介して回転ユニット532に伝達するように構成されている。
さらに詳細には、減速機541から前方側に突出された出力軸542の先端側の部分に、カップリング544の入力部となる環状プレート543が固定されている。さらに環状プレート543の後方側に、該環状プレート543と出力軸542の軸心方向に間隔を存して、カップリング544の出力部となる板状の駆動側クランクアーム545が配置されている。この駆動側クランクアーム545は、出力軸542に対して相対回転し得るように、ベアリング等を介して該出力軸542の外周に支承されている。
そして、環状プレート543と駆動側クランクアーム545との間にカップリング544が介装されている。このカップリング544は、駆動側クランクアーム545と環状プレート543とのそれぞれの対向面に形成した凹凸をゴム等の複数の弾性部材543aを介して噛み合わせた構造のものである。従って、カップリング544は、環状プレート543と駆動側クランクアーム545との間の回転駆動力の伝達を、弾性部材543aの弾性力を介して行うように構成されている。
被動側クランクアーム547は、駆動側クランクアーム545と左右方向に間隔を存して並ぶようにして回転ユニット532の上面部に突設されている。そして、被動側クランクアーム547は、連結ロッド546を介して駆動側クランクアーム545に連結されている。
動力伝達機構534は、以上の如く構成されているので、アクチュエータ533から減速機541を介して出力軸542に出力する回転駆動力を、環状プレート543、カップリング544、駆動側クランクアーム545、連結ロッド546、及び被動側クランクアーム547を介して回転ユニット532に伝達し、さらに該回転ユニット532を介して車体502に伝達するように構成されている。
このようにアクチュエータ533から車体502に回転駆動力が伝達されることによって、車体502にロール方向のモーメントが作用することとなる。ひいては、車体502をロール方向に揺動させることができることとなる。
補足すると、ロール駆動機構523のアクチュエータとして、回転型のアクチュエータ533の代わりに、電動式もしくは油圧式の直動型のアクチュエータを使用してもよい。
また、ロール駆動機構523の動力伝達機構534として、複数のギヤを備える機構、あるいは、回転伝達をベルトもしくはチェーンを介して行う機構等を採用してもよい。
以上説明した構造の移動体501においても、前記第5実施形態又は第6実施形態と同様の制御処理により、アクチュエータ533を制御することで、車体502のロール方向の姿勢を制御することができる。
なお、図44に示した移動体501は、1つの前輪503fと、2つの後輪503rとを有する三輪車である。ただし、上記の如きロール駆動機構523を有する移動体は、2つの前輪と1つの後輪とを有する移動体、あるいは、前輪及び後輪をそれぞれ2つ有する四輪車であってもよい。
また、前記第5実施形態又は第6実施形態の如く、運転者による操舵輪(前輪203f)の操舵力に応じて車体傾動用アクチュエータ209を制御するための制御入力(目標姿勢操作モーメントMsum_cmd)を調整する技術(乗員操舵ロール操作量算出部288又は308を備える技術)は、三輪車あるいは四輪車に限らず、例えば、二輪車についても適用できる。例えば、特開2006−182091号公報に見られように、前輪支持機構を車体及び後輪に対してロール方向に揺動させ得る二輪車に対しても当該技術を適用することができる。