A.第1実施例:
A1.車両10の構成:
図1(A)-図1(C)、図2は、一実施例としての車両10を示す説明図である。図1(A)は、車両10の右側面図を示し、図1(B)は、車両10の上面図を示し、図1(C)は、車両10の下面図を示し、図2は、車両10の背面図を示している。図1(A)-図1(C)、図2には、水平な地面GL(図1(A))上に配置され、傾斜していない状態の車両10が、示されている。図1(A)-図1(C)、図2には、6つの方向DF、DB、DU、DD、DR、DLが示されている。前方向DFは、車両10の前方向(すなわち、前進方向)であり、後方向DBは、前方向DFの反対方向である。上方向DUは、鉛直上方向であり、下方向DDは、鉛直下方向(すなわち、上方向DUの反対方向)である。鉛直下方向は、重力の方向である。右方向DRは、前方向DFに走行する車両10から見た右方向であり、左方向DLは、右方向DRの反対方向である。方向DF、DB、DR、DLは、いずれも、水平な方向である。右と左の方向DR、DLは、前方向DFに垂直である。
本実施例では、車両10は、一人乗り用の小型車両である。車両10(図1(A)、図1(B))は、車体90と、前輪12Fと、左後輪12Lと、右後輪12Rと、を有する三輪車である。前輪12Fは、回動輪の例であり、車両10の幅方向の中心に配置されている。回動輪は、車両10の幅方向(すなわち、右方向と左方向)に回動可能な車輪である。回動輪の進行方向は、前方向DFから右と左とに回転可能である。本実施例では、前輪12Fは、回動可能であるように、車体90に支持されている。後輪12R、12Lは、駆動輪である。後輪12R、12Lは、車両10の幅方向の中心に対して対称に、互いに離れて配置されている。
車体90(図1(A))は、本体部20を有している。本体部20は、底部20bと、底部20bの前方向DF側に接続された前壁部20aと、底部20bの後方向DB側に接続された後壁部20cと、後壁部20cの上端から後方向DBに向かって延びる支持部20dと、を有している。本体部20は、例えば、金属製のフレームと、フレームに固定されたパネルと、を有している。
車体90は、さらに、底部20b上に固定された座席11と、座席11の前方向DF側に配置されたアクセルペダル45とブレーキペダル46と、底部20bに固定された制御装置100とバッテリ120と、前壁部20aの上方向DU側の端部に固定された前輪支持装置41と、前輪支持装置41に取り付けられたハンドル41aと、を有している。図示を省略するが、本体部20には、他の部材(例えば、屋根、前照灯など)が固定され得る。車体90は、本体部20に固定された部材を含んでいる。
前輪支持装置41(図1(A))は、回動軸Ax1を中心に回動可能に前輪12Fを支持する装置である。前輪支持装置41は、前フォーク17と、軸受68と、操舵モータ65と、を有している。前フォーク17は、前輪12Fを回転可能に支持しており、例えば、コイルスプリングとショックアブソーバとを有するテレスコピックタイプのフォークである。軸受68は、本体部20の前壁部20aと、前フォーク17と、を連結している。軸受68は、回動軸Ax1を中心に、前フォーク17(ひいては、前輪12F)を、車体90に対して左右に回転可能に支持している。前フォーク17の回転可能範囲は、予め決められた角度範囲(例えば、180度未満の範囲)であってよい。例えば、前フォーク17が車体90の他の部分に接触することによって、角度範囲が制限されてよい。操舵モータ65は、電気モータであり、本体部20の前壁部20aと前フォーク17とに接続されている。操舵モータ65は、前フォーク17(ひいては、前輪12F)を幅方向(すなわち、右方向と左方向)に回転させるトルクを生成する。このように、操舵モータ65は、前輪12Fの幅方向の回動を制御するトルクである回動トルクを前輪12Fに付与するように構成されている(以下、回動駆動装置65とも呼ぶ)。
ハンドル41aは、右方向と左方向とに回転可能な部材である。直進を示す所定の回転位置(直進回転位置と呼ぶ)に対するハンドル41aの回転角度(入力角とも呼ぶ)は、旋回方向と旋回の程度とを表す旋回入力情報の例である。本実施例では、「入力角=ゼロ」は、直進を示し、「入力角>ゼロ」は、右旋回を示し、「入力角<ゼロ」は、左旋回を示している。入力角の大きさ(すなわち、絶対値)は、旋回の程度を示している。運転者は、ハンドル41aを操作することによって、旋回入力情報を入力できる。
なお、本実施例では、ハンドル41aと前フォーク17とは、機械的には接続されていない。ただし、弾性体(例えば、コイルバネや板バネなどのバネ、ゴムやシリコンなどの樹脂)が、ハンドル41aと前フォーク17とを接続してもよい。
車輪角Aw(図1(B))は、車体90に対する前輪12Fの方向を示す角度である。本実施例では、車輪角Awは、前方向DFを基準とする、前輪12Fの進行方向D12の角度である。車輪角Awは、車体90の上方向(車体90が鉛直上方向DUに対して傾斜していない場合には、鉛直上方向DUと同じ)に平行な軸まわりの角度を示している。進行方向D12は、前輪12Fの回転軸Axw1に垂直な方向である。本実施例では、「Aw=ゼロ」は、「方向D12=前方向DF」を示している。「Aw>ゼロ」は、方向D12が右方向DR側を向いていることを示している(旋回方向=右方向DR)。「Aw<ゼロ」は、方向D12が左方向DL側を向いていることを示している(旋回方向=左方向DL)。車輪角Awは、前輪12Fの回動の角度を示している。前輪12Fが操舵される場合、車輪角Awは、いわゆる操舵角に対応する。
操舵モータ65は、制御装置100(図1(A))によって制御される。操舵モータ65によって生成される回動トルクが小さい場合、前輪12Fの方向D12が入力角とは独立に左または右に回動することが許容される。操舵モータ65の制御の詳細については、後述する。
図1(A)中の角度CAは、いわゆるキャスター角である。キャスター角CAは、車体90の上方向(車体90が鉛直上方向DUに対して傾斜していない場合には、鉛直上方向DUと同じ)と、回動軸Ax1に沿って鉛直上方向DU側へ向かう方向と、のなす角度である。本実施例では、キャスター角CAがゼロよりも大きい。従って、回動軸Ax1に沿って鉛直上方向DU側へ向かう方向は、斜め後ろに傾斜している。
図1(A)に示すように、本実施例では、前輪支持装置41の回動軸Ax1と地面GLとの交点P2は、前輪12Fの地面GLとの接触中心P1よりも、前方向DF側に位置している。これらの点P1、P2の間の後方向DBの距離Ltは、トレールと呼ばれる。正のトレールLtは、接触中心P1が交点P2よりも後方向DB側に位置していることを示している。なお、図1(A)、図1(C)に示すように、接触中心P1は、前輪12Fと地面GLとの接触領域Ca1の重心である。接触領域の重心は、接触領域内に質量が均等に分布していると仮定する場合の重心の位置である。右後輪12Rと地面GLとの接触領域CaRの接触中心PbRと、左後輪12Lと地面GLとの接触領域CaLの接触中心PbLとも、同様に特定される。
図2に示すように、2つの後輪12R、12Lは、後輪支持部80に回転可能に支持されている。後輪支持部80は、リンク機構30と、リンク機構30の上部に固定されたリーンモータ25と、リンク機構30の上部に固定された第1支持部82と、リンク機構30の前部に固定された第2支持部83(図1(A))と、を有している。説明のために、図1(A)では、後輪支持部80のうちの右後輪12Rに隠れている部分も実線で示されている。図1(B)では、本体部20に隠れている後輪支持部80と後輪12R、12Lと後述する連結棒75とが、実線で示されている。図1(A)~図1(C)では、リンク機構30が簡略化して示されている。
第1支持部82(図2)は、後輪12R、12Lの上方向DU側において、右方向DRに平行に延びる板状の部分を含んでいる。第2支持部83(図1(A)、図1(B))は、リンク機構30の前方向DF側の、左後輪12Lと右後輪12Rとの間に配置されている。
右後輪12R(図1(B)、図2)は、右駆動モータ51Rに接続されている。右駆動モータ51Rは、電気モータであり、後輪支持部80の右側の部分に固定されている。右駆動モータ51Rの回転軸Axw2(図2)は、右後輪12Rの回転軸と同じである。左後輪12Lと左駆動モータ51Lとの構成は、右後輪12Rと右駆動モータ51Rとの構成と、それぞれ同様である。これらの駆動モータ51L、51Rは、後輪12R、12Lを直接的に駆動するインホイールモータである。以下、左駆動モータ51Lと右駆動モータ51Rとの全体を、駆動システム51Sとも呼ぶ。
図1(A)-図1(C)、図2には、車体90が水平な地面GL上で傾斜せずに直立している状態(後述するロール角Arがゼロである状態)が、示されている。以下、この状態を、直立状態と呼ぶ。直立状態で、左後輪12Lの回転軸Axw3(図2)と右後輪12Rの回転軸Axw2とは、同じ直線上に位置しており、右方向DRに平行である。
リンク機構30(図2)は、いわゆる、平行リンクである。リンク機構30は、右方向DRに向かって順番に並ぶ3つの縦リンク部材33L、21、33Rと、下方向DDに向かって順番に並ぶ2つの横リンク部材31U、31Dと、を有している。水平な地面GL上で車体90が傾斜せずに直立している場合、縦リンク部材33L、21、33Rは、鉛直方向に平行であり、横リンク部材31U、31Dは、水平方向に平行である。2つの縦リンク部材33L、33Rと、2つの横リンク部材31U、31Dとは、平行四辺形リンク機構を形成している。中縦リンク部材21は、横リンク部材31U、31Dの中央部分を連結している。これらのリンク部材33L、33R、31U、31D、21は、互いに回転可能に連結されている。本実施例では、回転軸は、前方向DFに平行である。互いに連結されたリンク部材は、予め決められた角度範囲(例えば、180度未満の範囲)内で、回転軸を中心に相対的に回転可能であってよい。左縦リンク部材33Lには、左駆動モータ51Lが固定されている。右縦リンク部材33Rには、右駆動モータ51Rが固定されている。中縦リンク部材21の上部には、第1支持部82と第2支持部83(図1(A))とが、固定されている。リンク部材33L、21、33R、31U、31Dと、支持部82、83とは、例えば、金属で形成されている。
本実施例では、リンク機構30は、複数のリンク部材を回転可能に連結するための軸受けを有している。例えば、軸受38は、下横リンク部材31Dと中縦リンク部材21とを回転可能に連結し、軸受39は、上横リンク部材31Uと中縦リンク部材21とを回転可能に連結している。説明を省略するが、他の複数のリンク部材も、軸受けによって連結されている。
リーンモータ25は、リンク機構30を駆動するように構成されている傾斜駆動装置の例であり、本実施例では、電気モータである。リーンモータ25は、中縦リンク部材21と上横リンク部材31Uとに接続されている。リーンモータ25の回転軸は、軸受39の回転軸と同じであり、車両10の幅方向の中心に位置している。リーンモータ25は、上横リンク部材31Uを、中縦リンク部材21に対して、回転させる。これにより、車両10は、幅方向(すなわち、右方向、または、左方向)に向かって傾斜する。このように傾斜する運動は、ロール運動とも呼ばれる。
図3(A)、図3(B)は、水平な地面GL上の車両10の状態を示す概略図である。図中には、車両10の簡略化された背面図が示されている。図3(A)は、車両10が直立している状態を示し、図3(B)は、車両10が傾斜している状態を示している。図3(A)に示すように、上横リンク部材31Uが中縦リンク部材21に対して直交する場合、全ての車輪12F、12R、12Lが、水平な地面GLに対して直立する。そして、車体90を含む車両10の全体は、地面GLに対して、直立する。図中の車体上方向DVUは、車体90の上方向である。車両10が傾斜していない状態では、車体上方向DVUは、上方向DUと同じである。本実施例では、車体90に対して予め決められた上方向が、車体上方向DVUとして用いられる。
図3(B)に示すように、背面図上で、中縦リンク部材21が上横リンク部材31Uに対して時計回り方向に回転することによって、車体90に対して相対的に、右後輪12Rが車体上方向DVU側に移動し、左後輪12Lが反対側に移動する。この結果、全ての車輪12F、12R、12Lが地面GLに接触した状態で、これらの車輪12F、12R、12Lは、地面GLに対して右方向DR側に傾斜する。そして、車体90を含む車両10の全体は、地面GLに対して、右方向DR側に傾斜する。図示を省略するが、中縦リンク部材21が上横リンク部材31Uに対して反時計回り方向に回転することによって、車両10は、左方向DL側に傾斜する。
このように、上横リンク部材31Uが中縦リンク部材21に対して傾斜する場合、右後輪12Rと左後輪12Lとの一方が、車体90に対して相対的に、車体上方向DVU側に移動し、他方は、車体90に対して相対的に、車体上方向DVUとは反対方向側に移動する。リンク機構30は、左後輪12Lと右後輪12Rとの車体上方向DVUの相対位置を変化させることが可能である。この結果、車体90は、地面GLに対して傾斜する。
なお、本実施例では、横リンク部材31U、31Dは、車体90に回転可能に支持されている(中縦リンク部材21と第1支持部82と後述するサスペンションシステム70とを介して)。そして、後輪12R、12Lは、横リンク部材31U、31Dを含む複数の部材を介して、車体90に接続されている。従って、車体90に対して横リンク部材31U、31Dを回転させることによって、後輪12R、12Lと車体90との間の車体上方向DVUの距離は、変化する。横リンク部材31U、31Dの回転軸(軸受39、38)は、右後輪12Rと左後輪12Lとの間に配置されている。従って、横リンク部材31U、31Dが回転する場合、右後輪12Rの移動方向は、左後輪12Lの移動方向とは反対の方向である。
図3(B)では、車体上方向DVUは、上方向DUに対して、右方向DR側に傾斜している。以下、前方向DFを向いて車両10を見る場合の、上方向DUと車体上方向DVUとの間の角度を、ロール角Ar、または、傾斜角Arと呼ぶ。ここで、「Ar>ゼロ」は、右方向DR側への傾斜を示し、「Ar<ゼロ」は、左方向DL側への傾斜を示している。車両10が傾斜する場合、車体90を含む車両10の全体が、おおよそ、同じ方向に傾斜する。従って、車体90のロール角Arは、車両10のロール角Arであるということができる。
図3(B)には、リンク機構30の制御角Acが示されている。制御角Acは、上横リンク部材31Uの向きに対する中縦リンク部材21の向きの角度を示している。「Ac=ゼロ」は、上横リンク部材31Uに対して中縦リンク部材21が垂直であることを、示している。「Ac>ゼロ」は、図3(B)の背面図において、中縦リンク部材21が、上横リンク部材31Uに対して、時計回り方向に傾いていることを示している。図示を省略するが、「Ac<ゼロ」は、中縦リンク部材21が、上横リンク部材31Uに対して、反時計回り方向に傾いていることを示している。図示するように、車両10が、水平な地面GL(すなわち、鉛直上方向DUに垂直な地面GL)上に位置している場合、制御角Acは、ロール角Arと、おおよそ同じである。
図3(A)、図3(B)中の地面GL上の軸AxLは、傾斜軸AxLである。リンク機構30とリーンモータ25とは、車両10を、傾斜軸AxLを中心に、右と左とに傾斜させることができる。以下、傾斜軸AxLを、ロール軸とも呼ぶ。本実施例では、ロール軸AxLは、前輪12Fと地面GLとの接触中心P1を通り、前方向DFに平行な直線である。リンク機構30は、車体90を車両10の幅方向に傾斜させるように構成されている傾斜装置の例である(傾斜装置30とも呼ぶ)。
図3(C)、図3(D)は、図3(A)、図3(B)と同様に、車両10の簡略化された背面図を示している。図3(C)、図3(D)では、地面GLxは、鉛直上方向DUに対して斜めに傾斜している(右側が高く、左側が低い)。図3(C)は、制御角Acがゼロである状態を示している。この状態では、全ての車輪12F、12R、12Lが、地面GLxに対して直立する。そして、車体上方向DVUは、地面GLxに対して垂直であり、また、鉛直上方向DUに対して左方向DL側に傾斜している。
図3(D)は、ロール角Arがゼロである状態を示している。この状態では、上横リンク部材31Uは、地面GLxにおおよそ平行であり、中縦リンク部材21に対して反時計回りの方向に傾斜している。また、車輪12F、12R、12Lは、地面GLに対して傾斜している。
このように、地面GLxが傾斜している場合、車体90のロール角Arは、リンク機構30の制御角Acと、異なり得る。
なお、後輪支持部80は、リンク機構30の動きを止める図示しないロック機構を有している。ロック機構を作動させることによって、制御角Acが固定される。例えば、車両10の駐車時に、制御角Acはゼロに固定される。
図1(B)、図2に示すように、本実施例では、本体部20は、サスペンションシステム70と連結棒75とによって、後輪支持部80に連結されている。サスペンションシステム70は、左サスペンション70Lと右サスペンション70Rとを有している。サスペンション70L、70Rは、それぞれ、本体部20の支持部20dと後輪支持部80の第1支持部82とに接続されている。サスペンション70L、70Rは、コイルスプリング71L、71Rとショックアブソーバ72L、72Rとを有しており、伸縮可能である。サスペンションシステム70は、後輪支持部80と本体部20との間の相対的な動きを、許容する。
連結棒75は、図1(A)、図1(B)に示すように、前方向DFに延びる棒である。連結棒75は、車両10の幅方向の中心に配置されている。連結棒75の前方向DF側の端部は、本体部20の後壁部20cに、回転可能に連結されている(例えば、玉継ぎ手)。連結棒75の後方向DB側の端部は、後輪支持部80の第2支持部83に、回転可能に連結されている(例えば、玉継ぎ手)。
図4は、旋回時の力のバランスの説明図である。図中には、旋回方向が右方向である場合の後輪12R、12Lの背面図が示されている。後述するように、旋回方向が右方向である場合、制御装置100(図1(A))は、後輪12R、12L(ひいては、車体90)が地面GLに対して右方向DRに傾斜するように、操舵モータ65とリーンモータ25を制御する場合がある。
図4には、重心90cが示されている。重心90cは、車体90の重心である。車体90の重心90cは、車体90が乗員(可能なら荷物も)を積んだ状態での重心である。
図中の第1力F1は、車体90に作用する遠心力である。第2力F2は、車体90に作用する重力である。以下、車体90に作用する力は、車体90の重心90cに作用することとする。ここで、車体90の質量をM(kg)とし、重力加速度をg(おおよそ、9.8m/s2)とし、鉛直方向に対する車両10のロール角をAr(度)とし、旋回時の車両10の速度(すなわち、車速)をV(m/s)とし、旋回半径をR(m)とする。第1力F1と第2力F2とは、以下の式1、式2で表される。
(式1)F1=(M*V2)/R
(式2)F2=M*g
ここで、*は、乗算記号(以下、同じ)。
また、図中の力F1bは、第1力F1の、車体上方向DVUに垂直な方向の成分である。力F2bは、第2力F2の、車体上方向DVUに垂直な方向の成分である。力F1bと力F2bとは、以下の式3、式4で表される。
(式3)F1b=F1*cos(Ar)
(式4)F2b=F2*sin(Ar)
ここで、「cos()」は、余弦関数であり、「sin()」は、正弦関数である(以下、同じ)。
力F1bは、車体上方向DVUを左方向DL側に回転させる成分であり、力F2bは、車体上方向DVUを右方向DR側に回転させる成分である。車両10がロール角Ar(さらには、速度Vと旋回半径R)を保ちつつ旋回を続ける場合には、F1bとF2bとの関係は、以下の式5で表される
(式5)F1b=F2b
式5に上記の式1~式4を代入すると、旋回半径Rは、以下の式6で表される。
(式6)R=V2/(g*tan(Ar))
ここで、「tan()」は、正接関数である(以下、同じ)。
式6は、車体90の質量Mに依存せずに、成立する。ここで、式6の「Ar」を、左方向と右方向とを区別せずにロール角Arの大きさを表すパラメータAra(ここでは、ロール角Arの絶対値)に置換することによって得られる以下の式6aは、車体90の傾斜方向に拘わらずに、成立する。
(式6a)R=V2/(g*tan(Ara))
図5は、車輪角Awと旋回半径Rとの簡略化された関係を示す説明図である。図中には、下方向DDを向いて見た車輪12F、12R、12Lが示されている。ここで、説明を簡略化するために、ロール角Arがゼロであることとする(すなわち、車体上方向DVUは、下方向DDに平行)。図中では、前輪12Fの進行方向D12は、右方向DRに回動しており、車両10は、右方向DRに旋回する。図中の前中心Cfは、前輪12Fの接触中心P1(図1(C))である。下方向DDを向いて車両10を見る場合、前中心Cfは、前輪12Fの回転軸Axw1を含む直線上に位置している。後中心Cbは、2つの後輪12R、12Lの接触中心PbR、PbL(図1(C))の間の中心である。直立している車両10を下方向DDを向いて見る場合、後中心Cbは、後輪12R、12Lの回転軸Axw2、Axw3を含む直線上の、後輪12R、12Lの間の中央に位置している。車両10の右方向DR側に位置する中心Crは、旋回の中心である。車両10の旋回運動は、車両10の公転運動と、車両10の自転運動と、を含んでいる。中心Crは、公転運動の中心である(公転中心Crとも呼ぶ)。なお、本実施例では、後輪12R、12Lは回動輪ではなく、前輪12Fが回動輪である。従って、自転中心は、後中心Cbとおおよそ同じである。ホイールベースLhは、前中心Cfと後中心Cbとの間の前方向DFの距離である。図1(A)に示すように、ホイールベースLhは、前輪12Fの回転軸Axw1と、後輪12R、12Lの回転軸Axw2、Axw3との間の前方向DFの距離と同じである。
図5に示すように、前中心Cfと後中心Cbと公転中心Crとは、直角三角形を形成する。点Cbの内角は、90度である。点Crの内角は、車輪角Awと同じである。従って、車輪角Awと旋回半径Rとの関係は、以下の式7で表される。
Aw = arctan(Lh/R) (式7)
ここで「arctan()」は、正接関数の逆関数である(以下、同じ)。
上記の式6、式6a、式7は、車両10が、速度Vと旋回半径Rとが変化しない状態で、旋回している場合に成立する関係式である。具体的には、式6、式6a、式7は、遠心力に起因する力F1b(図4)と重力に起因する力F2bとが釣り合う静的な状態を示している。式7は、車輪角Awと旋回半径Rとの関係を示す良い近似式として、利用可能である。なお、現実の車両10の挙動と、図5の簡略化された挙動と、の間には、種々の差異が存在する。例えば、車両に作用する現実の力は、動的に変化する。力の動的な変化を考慮して車両10を制御することによって、車両10の制御による意図された動きと車両10の現実の動きとの間のずれを小さくできる。本実施例では、制御装置100は、車体90に作用する複数種類のロールトルクを考慮して、車両10を制御する。以下、複数種類のロールトルクについて、説明する。
図6(A)-図6(F)は、車体90に作用するロールトルクの説明図である。車体90には、種々の原因に起因して、種々のロールトルクが作用し得る。以下、4種類のロールトルク成分Tq1-Tq4について、説明する(以下、ロールトルク成分Tq1-Tq4を、単に、ロールトルクTq1-Tq4、または、トルクTq1-Tq4とも呼ぶ)。
図6(A)は、ロールトルクTqrの計算式を示している。本明細書では、変数の後ろに付された1個のクォーテーションマーク「’」は、時間に関する1階微分を示している。2個のクォーテーションマーク「’’」は、時間に関する2階微分を示している。例えば、Ar’’は、ロール角Arの時間に関する二階微分、すなわち、ロール角加速度を示している。
図6(B)、図6(C)、図6(D)、図6(F)は、前方向DFを向いて見た後輪12R、12Lと重心90cとの説明図である。ここで、車両10は、水平な地面GL上に位置している。図6(B)は、直立状態を示している(Ar=ゼロ)。図6(C)、図6(D)、図6(F)は、車体90が右方向DRへ傾斜した状態を示している(Ar>ゼロ)。図6(E)は、車体上方向DVUとは反対の方向を向いて見た車輪12F、12R、12Lと重心90cとの説明図である。図6(E)には、参考のために、右方向DRと左方向DLとが示されている。ロール角Arがゼロとは異なる場合、これらの方向DR、DLは、車体上方向DVUに垂直ではなく斜めである。
変数Z(図6(A)、図6(B))は、ロール軸AxLと車体90の重心90cとの間の距離である。本実施例では、ロール軸AxLが地面GL上に位置している。従って、距離Zは、直立状態(図6(B))での地面GLと重心90cとの間の鉛直上方向DUの距離と同じである。直立状態において、重心90cを鉛直下方向DDに向かって地面GL上に投影する場合の投影点PcLは、ロール軸AxL上に位置している。鉛直軸Uxは、投影点PcLを通り、鉛直上方向DUに平行な軸である。車両上軸VUxは、投影点PcLを通り、車体上方向DVUに平行な軸である。車両上軸VUxは、投影点PcLと重心90cとを通っている。図6(C)に示すように、車両上軸VUxと鉛直軸Uxとがなす角度は、ロール角Arである。
図6(A)に示すように、ロールトルクTqrは、「I*Ar’’」と「M*Z2*Ar’’」との2つの成分で近似される。変数Iは、回転軸が重心90cを通る場合の車体90の慣性モーメントである(ここで、回転軸は、ロール軸AxLに平行である)。「M*Z2」は、回転軸が重心90cから距離Zだけ離れている場合の追加の項である。係数「I+M*Z2」は、ロールトルクTqrとロール角加速度Ar’’との比率を実験で測定することによって、予め決定される。車体90のロール角加速度がAr’’である場合に車体90に作用するロールトルクTqrは、図6(A)の計算式「(I+M*Z2)*Ar’’」によって算出される。逆に、車体90にロールトルクTqrが作用する場合、ロール角加速度Ar’’は、「Tqr/(I+M*Z2)」によって、算出される。本実施例では、このようなロールトルクTqrが、4個の成分Tq1-Tq4に分解される。
第1ロールトルクTq1は、車体90に作用する重力に起因するロールトルクである。図6(C)は、第1ロールトルクTq1の説明図である。第1力F11は、車体90に作用する重力である(F11=M*g)。第2力F12は、第1力F11の、車体上方向DVUに垂直な成分である(F12=M*g*sin(Ar))。第2力F12は、車体90をロールさせる。第2力F12に起因するロールトルクが、第1ロールトルクTq1である。第1ロールトルクTq1の大きさは、ロール軸AxLと重心90cとの間の距離Zに、第2力F12を乗じることによって算出される(Tq1=Z*F12=M*g*Z*sin(Ar))。第1ロールトルクTq1の方向は、鉛直上方向DUから車体上方向DVUへ向かう方向、すなわち、ロール角Arの大きさを増大させる方向である。
第2ロールトルクTq2は、車両10のヨー角速度(より具体的には、遠心力)に起因するロールトルクである。図6(D)は、第2ロールトルクTq2の説明図である。図中の変数Ay’は、車両10のヨー角速度である(変数Ayは、ヨー角に相当する)。ヨー角速度Ay’は、ヨーレートとも呼ばれる。本実施例では、ヨー角速度Ay’は、車体上方向DVUに平行な軸まわりのヨー角速度を示している。このようなヨー角速度Ay’は、地面に垂直な軸(以下、地面垂直軸とも呼ぶ)まわりのヨー角速度(すなわち、車両10の旋回の角速度)のうちの車体上方向DVUに平行な軸まわりの成分を示している。地面垂直軸は、鉛直上方向DUに対して斜めであり得る。図中の力F22は、車体90に作用する遠心力の車体上方向DVUに垂直な成分である。この遠心力成分F22は、質量Mと速度Vとヨー角速度Ay’とを用いる計算式「F22=M*V*Ay’」によって、算出される。図6(D)では、ヨー角速度Ay’は、右旋回を示している。従って、遠心力成分F22は、左方向DL側を向いている。この遠心力成分F22は、車体90をロールさせる。遠心力成分F22に起因するロールトルクが、第2ロールトルクTq2である。第2ロールトルクTq2の大きさは、距離Zに、遠心力成分F22の大きさを乗じることによって算出される(Tq2=Z*F22=M*Z*V*Ay’)。第2ロールトルクTq2の方向(遠心力ロール方向と呼ぶ)は、右方向、または、左方向であり、ヨー角速度Ay’によって示される旋回方向とは反対の方向である。例えば、ヨー角速度Ay’が右旋回を示す場合、第2ロールトルクTq2の方向は、左方向である。
第3ロールトルクTq3は、車両10のヨー角加速度に起因するロールトルクである。図6(E)、図6(F)は、第3ロールトルクTq3の説明図である。図6(E)中には、自転中心Rcが示されている。本実施例では、後輪12R、12Lは回動輪ではなく、前輪12Fが回動輪である。走行する車両10の向き(例えば、前方向DF)は、後輪12R、12Lの近傍を中心に、右、または、左に、変化する。車輪12F、12R、12Lが地面に対して滑らない場合、自転中心Rcは、後輪12R、12Lの間の中心(具体的には、図5の後中心Cb)に位置し得る。車輪12F、12R、12Lが地面に対して滑る場合、自転中心Rcは、後中心Cbからずれ得る。いずれの場合も、自転中心Rcは、後輪12R、12Lの間の中心の近傍に位置する。通常は、図6(E)の上面図において、車体90の重心90cは、車体90の中央部分に近い。従って、車体90の重心90cは、自転中心Rcから前方向DF側に離れた位置に配置される。図中の距離Xは、重心90cと自転中心Rcとの間の前方向DFの位置の差(距離)である。
図中の変数Ay’’は、車両10のヨー角加速度である。ヨー角加速度Ay’’は、車体上方向DVUに平行な軸まわりのヨー角加速度である。ヨー角加速度Ay’’は、自転中心Rcを中心とする車両10の自転の角加速度を示している。このようなヨー角加速度Ay’’は、地面垂直軸まわりのヨー角加速度のうちの車体上方向DVUに平行な軸まわりの成分を示している。図6(E)の上面図上で、ヨー角加速度Ay’’の方向が時計回り方向である場合、右旋回の程度が大きくなるように、ヨー角速度Ay’は変化する。以下、上面図上で、ヨー角加速度Ay’’の方向が時計回り方向である場合、ヨー角加速度Ay’’の方向を、右方向と呼ぶ。上面図上で、ヨー角加速度Ay’’の方向が反時計回り方向である場合、ヨー角加速度Ay’’の方向は左方向である。
車体90の重心90cは、自転中心Rcから距離Xだけ前方向DF側に離れた位置に、配置されている。従って、車体90には、ヨー角加速度Ay’’の方向とは反対の方向の慣性の力の成分F32が、作用する(慣性力成分F32と呼ぶ)。この慣性力成分F32の方向は、車体上方向DVUに垂直である。また、本実施例では、図6(E)の上面図上で、自転中心Rcから重心90cに向かう方向は、前方向DFにおおよそ平行である。従って、慣性力成分F32の方向は、前方向DFにおおよそ垂直である。慣性力成分F32の大きさは、質量Mと、ヨー角加速度Ay’’に起因する重心90cの加速度A90と、の積で表される。加速度A90は、距離Xとヨー角加速度Ay’’との積で表される。従って、慣性力成分F32の大きさは、計算式「M*X*Ay’’」によって、算出される。図6(E)の上面図においては、ヨー角加速度Ay’’の方向、すなわち、ヨー角速度Ay’の変化方向は、時計回り方向である。この場合、慣性力成分F32の方向は、左方向DL側を向いている。
図6(F)には、慣性力成分F32が示されている。慣性力成分F32は、車体90をロールさせる。慣性力成分F32に起因するロールトルクが、第3ロールトルクTq3である。第3ロールトルクTq3の大きさは、距離Zに、慣性力成分F32の大きさを乗じることによって算出される(Tq3=Z*F32=M*X*Z*Ay’’)。第3ロールトルクTq3の方向(ヨー角加速度ロール方向と呼ぶ)は、右方向、または、左方向であり、ヨー角加速度Ay’’の方向とは反対の方向である。例えば、ヨー角加速度Ay’’の方向が右旋回の方向である場合、第3ロールトルクTq3の方向は、左方向である。
第4ロールトルクTq4は、車輪角Aw(図5)の角速度Aw’に起因するロールトルクである。まず、車輪角Awとヨー角加速度Ay’’との関係について、説明する。図5で説明したように、前中心Cfと後中心Cbと公転中心Crとは、直角三角形を形成する。ロール角Arがゼロである場合、車体上方向DVUは鉛直下方向DDと平行である。従って、図5に示す点Cf、Cb、Crの配置は、車体上方向DVUに平行な方向を向いて点Cf、Cb、Crを見る場合の配置と、同じである。ここで、前輪12Fの進行方向D12は、ロール角Arに拘わらず、車輪角Awに対応付けられていると推定される。従って、車体上方向DVUに平行な方向を向いて点Cf、Cb、Crを見る場合、ロール角Arに拘わらずに、前中心Cfと後中心Cbと公転中心Crとは、直角三角形を形成する。この直角三角形の3個の辺のうち公転中心Crと後中心Cbとを結ぶ辺の長さをRxとする。この場合、式A1が成立する。
(式A1)tan(Aw)=Lh/Rx
式A1は、式A2に変形される。
(式A2)1/Rx=tan(Aw)/Lh
車両10がヨー角速度Ay’で旋回している場合、式A3が成立する。
(式A3)V=Rx*Ay’
式A3は、式A4に変形される。
(式A4)Ay’=V/Rx
式A4に式A2を代入することによって、式A5が導かれる。
(式A5)Ay’=(V*tan(Aw))/Lh
式A5の両辺を時間で微分することによって、式A6が導かれる。
(式A6)Ay’’=(V/Lh)*(1/cos2(Aw))*Aw’
図6(E)、図6(F)で説明したように、ヨー角加速度Ay’’に起因して、ロールトルクが車体90に作用する。第4ロールトルクTq4は、式A6のヨー角加速度Ay’’に起因するロールトルクである。第4ロールトルクTq4の大きさは、図6(F)の第3ロールトルクTq3の大きさの計算式のヨー角加速度Ay’’に、式A6を代入することによって導かれ、式A7で表される。
(式A7)Tq4=M*X*Z*Ay’’
=(M*X*Z*V*Aw’)/(Lh*cos2(Aw))
以上のように、車輪角Awの角速度Aw’を用いて、車体90に第4ロールトルクTq4を付与することができる。第4ロールトルクTq4の方向(回動ロール方向とも呼ぶ)は、車輪角Awの角速度Aw’の方向とは反対の方向である。例えば、車輪角Awが右方向DRに回動する場合(Aw’>ゼロ)、第4ロールトルクTq4の方向は、左方向である。
なお、式A7から式A8が導かれる。
(式A8)Aw’=(Tq4*Lh*cos2(Aw))/(M*X*Z*V)
式A8は、第4ロールトルクTq4を生成するために必要な車輪角Awの角速度Aw’の大きさを示している。
図6(A)で説明したロールトルクTqrは、上述の4個のロールトルクTq1-Tq4の合成トルクTqxで近似可能である。合成トルクTqxは、ロールトルクTq1-Tq4を、それぞれの向きを考慮して合成することによって、算出される。なお、合成トルクTqxを用いる近似では、車体90の重心まわりの慣性テンソルの慣性乗積に起因する成分は、省略されている。車両10が、以下の構成を有する場合、上記の近似は、よい近似である。
(構成1)車両10の構成(例えば、質量分布)が、重心90cに対して、おおよそ左右対称である。
(構成2)車両10のピッチ運動(前後の回転運動)は、抑制されている。
通常は、車両は、上記の構成1、2を有している。従って、上述の近似は、種々の車両に適用可能である。
図7は、車両10の制御に関する構成を示すブロック図である。車両10は、車速センサ122と、入力角センサ123と、車輪角センサ124と、方向センサ126と、アクセルペダルセンサ145と、ブレーキペダルセンサ146と、制御装置100と、右駆動モータ51Rと、左駆動モータ51Lと、リーンモータ25と、操舵モータ65と、を有している。
車速センサ122は、車両10の車速を検出するセンサである。本実施例では、車速センサ122は、前フォーク17(図1(A))の下端に取り付けられており、前輪12Fの回転速度を検出する。回転速度は、車両10の速度(車速とも呼ぶ)と相関を有している。従って、回転速度を検出するセンサ122は、車速を検出しているということができる。
入力角センサ123は、ハンドル41aの向き(すなわち、入力角)を検出するセンサである。本実施例では、入力角センサ123は、ハンドル41a(図1(A))に取り付けられている。入力角センサ123は、入力角AI(旋回入力情報の例)を取得するように構成されている旋回入力情報取得装置の例である。
車輪角センサ124は、前輪12Fの車輪角を検出するセンサである。本実施例では、車輪角センサ124は、本体部20の前壁部20a(図1(A))に取り付けられている。車輪角センサ124は、回動軸Ax1まわりの車輪角を検出する(検出角Awxとも呼ぶ)。回動軸Ax1は、車体90とともに、ロールする。また、回動軸Ax1に平行な方向(回動軸Ax1の方向とも呼ぶ)は、車体上方向DVUとは異なり得る。この場合、車体上方向DVUに平行な軸まわりの車輪角Awは、回動軸Ax1の方向と車体上方向DVUとの間の差を用いて検出角Awxを補正することによって、算出される。例えば、車体上方向DVUに対するキャスター角CAがゼロではない場合、近似式「Aw=cos(CA)*Awx」に従って、車輪角Awが算出されてよい。車体上方向DVUに対するキャンバー角がゼロではない場合も、同様である。
方向センサ126は、ロール角Arとヨー角速度を特定するセンサである。本実施例では、方向センサ126は、車体90(図1(A))に固定されている(具体的には、後壁部20c)。また、本実施例では、方向センサ126は、加速度センサ126aと、ジャイロセンサ126gと、制御部126cと、を含んでいる。加速度センサは、任意の方向の加速度を検出するセンサであり、例えば、3軸の加速度センサである。以下、加速度センサ126aによって検出される加速度の方向を、検出方向と呼ぶ。車両10が停止している状態では、検出方向は、鉛直下方向DDと同じである。ジャイロセンサ126gは、任意の方向の回転軸を中心とする角速度を検出するセンサであり、例えば、3軸の角速度センサである。制御部126cは、加速度センサ126aからの信号とジャイロセンサ126gからの信号と車速センサ122からの信号とを用いて、ロール角Arとヨー角速度とを特定する。制御部126cは、例えば、コンピュータを含むデータ処理装置である。
制御部126cは、車速センサ122によって特定される速度Vを用いることによって、車両10の加速度を算出する。そして、制御部126cは、加速度を用いることによって、車両10の加速度に起因する現実の鉛直下方向DDに対する検出方向のずれを特定する(例えば、検出方向の前方向DFまたは後方向DBのずれが特定される)。また、制御部126cは、ジャイロセンサ126gによって特定される角速度を用いることによって、車両10の角速度に起因する現実の鉛直下方向DDに対する検出方向のずれを特定する(例えば、検出方向の右方向DRまたは左方向DLのずれが、特定される)。制御部126cは、特定されたずれを用いて検出方向を修正することによって、鉛直下方向DDを特定する。このように方向センサ126は、車両10の種々の走行状態において、適切な鉛直下方向DDを特定できる。そして、制御部126cは、鉛直下方向DDの反対の鉛直上方向DUを特定し、鉛直上方向DUと予め決められた車体上方向DVUとの間のロール角Arを算出する。また、制御部126cは、ジャイロセンサ126gによって特定される角速度から車体上方向DVUに平行な軸を中心とする角速度の成分を特定し、特定した角速度をヨー角速度として算出する。
アクセルペダルセンサ145は、アクセルペダル45(図1(A))に取り付けられており、アクセル操作量を検出する。ブレーキペダルセンサ146は、ブレーキペダル46(図1(A))に取り付けられており、ブレーキ操作量を検出する。
各センサ122、123、124、145、146は、例えば、レゾルバ、または、エンコーダを用いて構成されている。
制御装置100は、主制御部110と、駆動装置制御部300と、リーンモータ制御部400と、操舵モータ制御部500と、を有している。制御装置100は、バッテリ120(図1(A))からの電力を用いて動作する。本実施例では、制御部110、300、400、500は、それぞれ、コンピュータを有している。具体的には、制御部110、300、400、500は、プロセッサ110p、300p、400p、500p(例えば、CPU)と、揮発性記憶装置110v、300v、400v、500v(例えば、DRAM)と、不揮発性記憶装置110n、300n、400n、500n(例えば、フラッシュメモリ)と、を有している。不揮発性記憶装置110n、300n、400n、500nには、対応する制御部110、300、400、500の動作のためのプログラム110g、300g、400g、500gが、予め格納されている。また、主制御部110の不揮発性記憶装置110nには、マップデータMAr、MTq、MP1が、予め格納されている。プロセッサ110p、300p、400p、500pは、それぞれ、対応するプログラム110g、300g、400g、500gを実行することによって、種々の処理を実行する。
主制御部110のプロセッサ110pは、センサ122、123、124、126、145、146からの信号を受信する。そして、プロセッサ110pは、受信した信号を用いて、駆動装置制御部300とリーンモータ制御部400と操舵モータ制御部500とに指示を出力する。
駆動装置制御部300のプロセッサ300pは、主制御部110からの指示に従って、駆動モータ51L、51Rを制御する。リーンモータ制御部400のプロセッサ400pは、主制御部110からの指示に従って、リーンモータ25を制御する。操舵モータ制御部500のプロセッサ500pは、主制御部110からの指示に従って、操舵モータ65を制御する。これらの制御部300、400、500は、それぞれ、制御対象のモータ51L、51R、25、65にバッテリ120からの電力を供給する電力制御部300c、400c、500cを有している。電力制御部300c、400c、500cは、電気回路(例えば、インバータ回路)を用いて、構成されている。なお、主制御部110のうちの操舵モータ65を制御するための処理を実行する部分と、操舵モータ制御部500と、の全体は、回動駆動装置65を制御するように構成されている回動制御装置の例である(回動制御装置910とも呼ぶ)。
A2.操舵モータの制御:
図8は、操舵モータ65の制御処理の例を示すフローチャートである。本実施例では、ロール角Arを目標のロール角に近づけるロールトルクが車輪角Awの変化によって生成されるように、操舵モータ65が制御される。以下、フローチャートでは、各ステップに、文字「S」と、文字「S」に続く数字と、を組み合わせた符号が、付与される。図8は、車両10が前進している場合の処理を示している。後述するように、制御処理では、種々のパラメータが用いられる。本実施例では、車体90の質量Mと、重力加速度gと、距離Xと、距離Zと、ホイールベースLhと、のそれぞれとしては、予め決められた値が用いられる(基準値M、g、X、Z、Lhとも呼ぶ)。なお、車体90の質量Mは、いわゆるバネ上質量に相当する。
S210では、主制御部110(図7)のプロセッサ110pは、センサ122、123、124、126、145、146から、データを取得する。そして、プロセッサ110pは、現行の情報、具体的には、速度Vと、入力角AIと、車輪角Awと、ロール角Arと、ヨー角速度Ay’と、アクセル操作量Paと、ブレーキ操作量Pbとを、特定する。S220、S230、S240、S250では、プロセッサ110pは、制御値Cw1、Cw2、Cw3、Cw4を、それぞれ決定する。プロセッサ110pは、S220、S230、S240、S250を、並列に実行する。
各制御値Cw1、Cw2、Cw3、Cw4は、操舵モータ65によって出力される回動トルクを制御するための値である。各制御値Cw1、Cw2、Cw3、Cw4は、好ましい回動トルクに関する互いに異なる観点から、決定される(詳細は、後述)。本実施例では、各制御値Cw1、Cw2、Cw3、Cw4は、操舵モータ65に供給すべき電流の向きと大きさとを示している。制御値の絶対値は、電流の大きさ(すなわち、回動トルクの大きさ)を示している。制御値の正負の符号は、電流の向き(すなわち、回動トルクの方向)を示している(例えば、正は右回転を示し、負は左回転を示す)。
S260では、プロセッサ110pは、制御値Cw1、Cw2、Cw3、Cw4の合計値である駆動制御値Cwを算出する。S270では、プロセッサ110pは、駆動制御値Cwを示すデータを、操舵モータ制御部500に供給する。操舵モータ制御部500のプロセッサ500pは、駆動制御値Cwに従って、操舵モータ65に供給される電力を制御する。具体的には、プロセッサ500pは、駆動制御値Cwを示すデータを、電力制御部500cに供給する。電力制御部500cは、駆動制御値Cwに従って、操舵モータ65に供給される電力を制御する。操舵モータ65は、供給された電力に応じて、回動トルクを出力する。そして、図8の処理が終了する。制御装置100は、図8の処理を繰り返し実行する。これにより、制御装置100は、車両10の状態に適した回動トルクを出力するように、操舵モータ65を制御し続ける。
図9は、駆動制御値Cwと回動トルクTqwとの関係の例を示すグラフである。横軸は、駆動制御値Cwの絶対値を示し、縦軸は、回動トルクTqwの絶対値を示している。回動トルクTqwの絶対値は、駆動制御値Cwの絶対値が大きいほど、大きい。なお、本実施例では、プロセッサ110pは、図8のS260で、駆動制御値Cwの絶対値が予め決められた上限値CwM以上である場合には、駆動制御値Cwの絶対値を上限値CwMに修正する。従って、回動トルクTqwの絶対値の上限は、上限値CwMに対応付けられた上限値Lm3に制限される。この結果、車輪角Awの急な変化は、抑制される。
図10は、第1制御値Cw1の決定処理(図8:S220)の例を示すフローチャートである。第1制御値Cw1は、図6(A)で説明した複合トルクTqxが入力角AIに適したロールトルクに近づくように、操舵モータ65を制御するための制御値である。
S310では、プロセッサ110pは、入力角AIを用いて、目標ロール角Artを特定する。入力角AIと目標ロール角Artとの対応関係は、マップデータMAr(図7)によって、予め決められている。プロセッサ110pは、マップデータMArを参照して、目標ロール角Artを特定する。本実施例では、入力角AIの絶対値が大きいほど、目標ロール角Artの絶対値が大きい。また、目標ロール角Artの方向(右、または、左)は、入力角AIによって特定される旋回方向と同じである。
S315では、プロセッサ110pは、目標ロール角Artから現行のロール角Arを減算することによって、ロール角差dArを算出する。S320では、プロセッサ110pは、ロール角差dArを用いて、目標ロールトルクTqtを特定する。ロール角差dArと目標ロールトルクTqtとの対応関係は、マップデータMTq(図7)によって、予め決められている。プロセッサ110pは、マップデータMTqを参照して、目標ロールトルクTqtを特定する。本実施例では、Tqtの絶対値は、ロールトルクの大きさを示している。正のTqtは、右方向DRのロールトルクを示し、負のTqtは、左方向DLのロールトルクを示している。ロール角差dArの絶対値が大きいほど、目標ロールトルクTqtの絶対値が大きい。また、目標ロールトルクTqtの方向(右、または、左)は、現行のロール角Arから目標ロール角Artへ向かうロール方向(ロール角差dArの方向とも呼ぶ)と同じである。
S325では、プロセッサ110pは、第1ロールトルクTq1(図6(C))を算出する。プロセッサ110pは、基準値M、g、Zと、ロール角Arを用いて、第1ロールトルクTq1を算出する。
S330では、プロセッサ110pは、第2ロールトルクTq2(図6(D))を算出する。プロセッサ110pは、基準値M、Zと、速度Vとヨー角速度Ay’とを用いて、第2ロールトルクTq2を算出する。
S335では、プロセッサ110pは、第3ロールトルクTq3(図6(E)、図6(F))を算出する。まず、プロセッサ110pは、ヨー角速度Ay’を用いて、ヨー角加速度Ay’’を算出する。ヨー角加速度Ay’’の算出方法(より一般的には、パラメータの微分値の算出方法)は、種々の方法であってよい。本実施例では、プロセッサ110pは、現在から予め決められた時間差だけ過去の時点でのヨー角速度Ay’を現行のヨー角速度Ay’から減算して差分を算出する。そして、プロセッサ110pは、差分を時間差で除算することによって得られる値を、ヨー角加速度Ay’’として採用する。また、プロセッサ110pは、基準値M、X、Zと、ヨー角加速度Ay’’と、を用いて、第3ロールトルクTq3を算出する。
なお、プロセッサ110pは、S310-S320と、S325と、S330と、S335とを、並列に実行する。S340では、プロセッサ110pは、目標ロールトルクTqtを実現するための第4ロールトルクTq4を算出する。具体的には、プロセッサ110pは、3個のトルクTq1、Tq2、Tq3の合成トルクを算出する。プロセッサ110pは、目標ロールトルクTqtから合成トルクを減算することによって、第4ロールトルクTq4を算出する。合成トルクの算出は、各トルクTq1、Tq2、Tq3のそれぞれの方向を考慮して、行われる。例えば、右方向DRのロールトルクの大きさが、加算され、左方向DLのロールトルクの大きさが、減算されることとしてよい。
S345では、プロセッサ110pは、第4ロールトルクTq4を用いて、第4ロールトルクTq4を実現するための車輪角Awの角速度を特定する(追加角速度Awd’とも呼ぶ)。追加角速度Awd’は、車輪角Awの現行の角速度Aw’に追加角速度Awd’が追加されることによって第4ロールトルクTq4が生成されるような角速度を示している。このような追加角速度Awd’と第4ロールトルクTq4との関係は、上記の式A8によって表される(式A8の角速度Aw’が、追加角速度Awd’である)。プロセッサ110pは、基準値Lh、M、X、Zと、第4ロールトルクTq4と、車輪角Awと、速度Vと、を用いて、追加角速度Awd’を算出する。
図11(A)-図11(C)は、追加角速度Awd’の例を示すグラフである。図11(A)では、横軸は、第4ロールトルクTq4の絶対値を示し、縦軸は、追加角速度Awd’の絶対値を示している。図示するように、Tq4の絶対値が大きいほど、Awd’の絶対値は大きい。また、第4ロールトルクTq4が一定である場合、追加角速度Awd’は、速度Vと車輪角Awとに応じて変化し得る。なお、本実施例では、プロセッサ110pは、Awd’の絶対値の上限を、第1上限値Lm1に制限する。図11(B)では、横軸は、速度Vを示し、縦軸は、追加角速度Awd’の絶対値を示している。速度Vが大きいほど、Awd’の絶対値は小さい。上記の式A8にも示されるように、本実施例では、Awd’の絶対値は、Vに反比例する。Awd’が式A8に厳密に従う場合、速度Vがゼロに近づくと、Awd’の絶対値は、発散する。本実施例では、発散を防止するために、Awd’の絶対値の上限は、第1上限値Lm1に制限される。図11(C)では、横軸は、車輪角Awの絶対値を示し、縦軸は、追加角速度Awd’の絶対値を示している。車輪角Awの絶対値が大きいほど、Awd’の絶対値は小さい。上記の式A8にも示されるように、本実施例では、Awの絶対値が増大する場合、Awd’の絶対値は、cos2(Aw)に従って小さくなる。
S350(図10)では、プロセッサ110pは、制御パラメータを決定する。本実施例では、プロセッサ110pは、比例制御のためのPゲインGp1を、決定する(第1ゲインGp1とも呼ぶ)。なお、プロセッサ110pは、S310-S345と、S350とを、並列に実行する。そして、S355では、プロセッサ110pは、追加角速度Awd’と第1ゲインGp1とを用いる比例制御によって、第1制御値Cw1を決定する(例えば、Cw1=Awd’*Gp1)。そして、図10の処理(すなわち、図8のS220)は、終了する。
以上のように、第1制御値Cw1は、追加角速度Awd’を用いて特定される(S355)。追加角速度Awd’は、第4ロールトルクTq4を実現するための車輪角Awの角速度である(S345)。第4ロールトルクTq4は、目標ロールトルクTqtを実現するためのロールトルクである(S340)。目標ロールトルクTqtは、ロール角Arを目標ロール角Artに近づけるロールトルクである(S310-S320)。従って、第1制御値Cw1に従って操舵モータ65が制御される場合、車両10は、入力角AIに適したロール角Arで、走行できる。また、後述するように、前輪12Fは、ジャイロモーメントによって、車体90のロール方向に自然に回動し得る。従って、車両10は、入力角AIに適した旋回を行うことができる。例えば、車両10は、図4、図5に示す旋回を行うことができる。
図11(D)-図11(F)は第1ゲインGp1の例を示すグラフである。図11(D)では、横軸は、速度Vを示し、縦軸は、第1ゲインGp1を示している。速度Vがゼロ以上、第1閾値V1以下の第1範囲VR1内である場合、速度Vが小さいほど、第1ゲインGp1は小さい(第1閾値V1は、例えば、時速1km以上、時速5km以下の範囲の値)。そして、V=ゼロの場合、Gp1=ゼロである(すなわち、Cw1=ゼロ)。この理由は、速度Vが小さい場合に、大きい追加角速度Awd’に起因する第1制御値Cw1の過度の増大を抑制するためである。
速度Vが第2閾値V2以上である第2範囲VR2では、速度Vが大きいほど、第1ゲインGp1は小さい(第2閾値V2は、例えば、時速30km以上、時速40km以下の範囲内の値)。この理由は、以下の通りである。回転する物体に回転軸に垂直な軸を中心とする外部トルクが印加される場合、物体には、回転軸と外部トルクの軸とに垂直な軸を中心とするトルクが作用する(ジャイロモーメントとも呼ばれる)。そして、物体は、ジャイロモーメントによって、回転する。このような運動は、歳差運動とも呼ばれる。例えば、車両10(図1(A))が前進中に、車体90が右方向DRに傾斜する場合、回転軸Axw1を中心に回転する前輪12Fも、車体90とともに、右方向DRに傾斜する。このように、前輪12Fには、回転軸Axw1に垂直であって前方向DFに平行な軸を中心とするトルクが作用する。この場合、前輪12F(図1(B))には、回動軸Ax1を中心に進行方向D12を右方向DRへ回動させるトルクが作用する。そして、前輪12Fは、右方向DRへ回動する。前輪12Fを回動させるトルクは、前輪12Fの角運動量が大きいほど、すなわち、速度Vが大きいほど、強い。このように、速度Vが大きい場合には、車輪12Fは、車体90の傾斜方向に、自然に回動し得る。本実施例では、速度Vが大きい場合には、前輪12Fの自然な回動を許容するために、第1ゲインGp1は小さくなる。
なお、速度Vが一定である場合、第1ゲインGp1は、入力角AIの角速度AI’と角加速度AI’’とに応じて変化し得る。図11(E)は、速度Vが一定である場合のグラフであり、横軸は、入力角AIの角速度AI’の絶対値を示し、縦軸は、第1ゲインGp1を示している。図示するように、角速度AI’の絶対値が大きいほど、第1ゲインGp1は大きい。図11(F)は、速度Vが一定である場合のグラフであり、横軸は、入力角AIの角加速度AI’’の絶対値を示し、縦軸は、第1ゲインGp1を示している。図示するように、角加速度AI’’の絶対値が大きいほど、第1ゲインGp1は大きい。これらの理由は、以下の通りである。運転者は、車両10の進行方向を素早く変化させるために、ハンドル41aを素早く回転させる。従って、角速度AI’の絶対値が大きい場合と、角加速度AI’’の絶対値が大きい場合とには、ロール角Arの素早い変化が要求される。そこで、本実施例では、第1制御値Cw1の絶対値を大きくするために、角速度AI’の絶対値が大きいほど、第1ゲインGp1は大きく、角加速度AI’’の絶対値が大きいほど、第1ゲインGp1は大きい。なお、第1制御値Cw1の過度の増大を抑制するために、プロセッサ110pは、第1ゲインGp1の上限を、第2上限値Lm2に制限する。
なお、第1ゲインGp1と他のパラメータとの対応関係は、図11(D)-図11(F)に示す対応関係に代えて、他の種々の対応関係であってよい。例えば、第2範囲VR2(図11(D))において、速度Vが増大する場合に、第1ゲインGp1は、低減せずに維持されてよく、増大してもよい。また、第1閾値V1以上の速度Vの範囲は、低速範囲、中速範囲、高速範囲の3つの範囲に区分されてよい。そして、低速範囲の第1ゲインGp1と高速範囲の第1ゲインGp1とが、中速範囲の第1ゲインGp1と比べて、大きい値に設定されてよい。低速範囲の大きな第1ゲインGp1は、ジャイロモーメントが小さい場合に、前輪12Fの旋回方向への回動を補助できる。また、速度Vが大きい場合には、前輪12Fの回転速度が大きいので、前輪12Fの角運動量も大きい。この場合、前輪12Fを旋回方向へ回動させるために、大きいトルクが必要であり得る。高速範囲の大きな第1ゲインGp1は、前輪12Fの旋回方向への回動を補助できる。
図10のS350では、プロセッサ110pは、入力角AIを用いて角速度AI’を算出する。また、プロセッサ110pは、角速度AI’を用いて角加速度AI’’を算出する。上述したように、微分値は、所定の時間差における変化量を用いて、算出される。プロセッサ110pは、速度Vと角速度AI’と角加速度AI’’とを用いて、第1ゲインGp1を決定する。速度Vと角速度AI’と角加速度AI’’と第1ゲインGp1との対応関係は、マップデータMP1(図7)によって、予め決められている。プロセッサ110pは、マップデータMP1を参照して、第1ゲインGp1を特定する。
図12(A)は、第2制御値Cw2の決定処理(図8:S230)の例を示すフローチャートである。第2制御値Cw2は、車輪角Awが入力角AIに適した車輪角に近づくように、操舵モータ65を制御するための制御値である。
S410では、プロセッサ110pは、入力角AIと速度Vとを用いて、目標車輪角Awtを特定する。目標車輪角Awtは、目標ロール角Art(図10:S310)と速度Vとで車両10が安定して旋回する場合の車輪角Awである(図5)。プロセッサ110pは、このような目標車輪角Awtを、上記の式7に式6を代入して得られる計算式に従って、算出する。これに代えて、プロセッサ110pは、入力角AIと速度Vと目標車輪角Awtとを対応付けるマップを参照してもよい。
S415では、プロセッサ110pは、目標車輪角Awtから現行の車輪角Awを減算して車輪角差dAwを算出する。S420では、プロセッサ110pは、制御パラメータを決定する。本実施例では、プロセッサ110pは、比例制御のためのPゲインGp2を、決定する(第2ゲインGp2とも呼ぶ)。なお、プロセッサ110pは、S410-S415と、S420とを、並列に実行する。そして、S425では、プロセッサ110pは、車輪角差dAwと第2ゲインGp2とを用いる比例制御によって、第2制御値Cw2を決定する(例えば、Cw2=dAw*Gp2)。そして、図12(A)の処理(すなわち、図8のS230)は、終了する。
図12(B)は、第2ゲインGp2の例を示すグラフである。横軸は、速度Vを示し、縦軸は、第2ゲインGp2を示している。本実施例では、速度Vが大きいほど、第2ゲインGp2は小さい。具体的には、V=ゼロの場合、第2ゲインGp2は、ゼロより大きな最大値Gp21である。閾値Vt2(例えば、時速10km以上、時速20km以下の範囲内の値)以上の速度Vの範囲では、第2ゲインGp2は、ゼロである。速度Vがゼロから閾値Vt2へ増大する場合、第2ゲインGp2は、速度Vの変化に対して直線的に、最大値Gp21からゼロまで減少する。図12(A)のS420では、プロセッサ110pは、図12(B)のグラフを示す関数に従って、速度Vから第2ゲインGp2を特定する。
第2制御値Cw2は、車輪角Awを目標車輪角Awtに近づける回動トルクを示している。低速時には、大きな第2ゲインGp2、すなわち、大きな回動トルクによって、車輪角Awを目標車輪角Awtに近づけることができる。また、上述したように、速度Vが大きい場合には、車輪12Fは、ジャイロモーメントによって、車体90の傾斜方向に向かって、すなわち、目標車輪角Awtに向かって、自然に回動し得る。本実施例では、速度Vが大きい場合には、前輪12Fの自然な回動を許容するために、第2ゲインGp2は小さくなる。
図13(A)は、第3制御値Cw3の決定処理(図8:S240)の例を示すフローチャートである。第3制御値Cw3は、入力角AIの速い変化に応じて車輪角Awを速く回動させるための制御値である。
S440では、プロセッサ110pは、入力角AIの角速度AI’を算出する。算出方法は、図10のS350で説明した方法と同じである。S445では、プロセッサ110pは、制御パラメータを決定する。本実施例では、プロセッサ110pは、比例制御のためのPゲインGp3を決定する(第3ゲインGp3とも呼ぶ)。なお、プロセッサ110pは、S440とS445とを並列に実行する。そして、S450では、プロセッサ110pは、角速度AI’と第3ゲインGp3とを用いる比例制御によって、第3制御値Cw3を決定する(例えば、Cw3=AI’*Gp3)。そして、図13(A)の処理(すなわち、図8のS240)は、終了する。
図13(B)、図13(C)は、第3ゲインGp3の例を示すグラフである。図13(B)では、横軸は、速度Vを示し、縦軸は、第3ゲインGp3を示している。本実施例では、速度Vが大きいほど、第3ゲインGp3は小さい。具体的には、V=ゼロの場合、第3ゲインGp3は、ゼロより大きな最大値Gp32である。閾値Vt3(例えば、時速10km以上、時速20km以下の範囲内の値)以上の速度Vの範囲では、第3ゲインGp3は、ゼロより大きく最大値Gp32よりも小さい最小値Gp31である。速度Vがゼロから閾値Vt3へ増大する場合、第3ゲインGp3は、速度Vの変化に対して直線的に、最大値Gp32から最小値Gp31まで減少する。図13(A)のS445では、プロセッサ110pは、図13(B)のグラフを示す関数に従って、速度Vから第3ゲインGp3を特定する。
第3制御値Cw3は、車輪角Awを角速度AI’の方向に回動させる回動トルクを示している。このような回動トルクの方向は、車輪角Awを目標車輪角Awtに近づける方向である。図13(C)は、第3制御値Cw3の例を示すグラフである。横軸は、角速度AI’の絶対値を示し、縦軸は、第3制御値Cw3の絶対値を示している。
速度Vが小さい場合、第3ゲインGp3が大きいので、第3制御値Cw3の絶対値は大きくなる。従って、大きな回動トルクによって、車輪角Awは素早く変化できる。このように、ハンドル41aの操作に対する車輪角Awの応答速度を速くすることができる。また、速度Vが大きい場合、第3ゲインGp3が小さいので、第3制御値Cw3の絶対値は小さくなり、第3制御値Cw3によって示される回動トルクは小さくなる。従って、前輪12Fの急な回動が抑制される。ただし、第3ゲインGp3はゼロよりも大きいので、車輪角Awの応答速度の低下は、抑制される。
速度Vが一定である場合、角速度AI’の絶対値が大きいほど、第3制御値Cw3の絶対値は大きい。角速度AI’の絶対値が大きい場合には、大きい回動トルクによって、車輪角Awは素早く変化できる。このように、ハンドル41aの操作に対する車輪角Awの応答速度を速くすることができる。
図14(A)は、第4制御値Cw4の決定処理(図8:S250)の例を示すフローチャートである。第4制御値Cw4は、入力角AIの絶対値が大きい場合に、旋回半径Rの低減を促進するための制御値である。
S460では、プロセッサ110pは、入力角AIを用いて第4制御値Cw4を決定する。本実施例では、第4制御値Cw4は、入力角AIに、予め決められた係数Gp4を乗じて得られる値である。そして、図14(A)の処理は、終了する。
第4制御値Cw4は、車輪角Awを入力角AIの方向に回動させるトルクを示している。第4制御値Cw4は、車輪角Awの大きさを増大させる。図14(B)は、第4制御値Cw4の例を示すグラフである。横軸は、入力角AIの絶対値を示し、縦軸は、第4制御値Cw4の絶対値を示している。第4制御値Cw4の絶対値は、入力角AIの絶対値が大きいほど、大きい。この理由は、以下の通りである。入力角AIが大きくても、旋回半径Rが、図5で説明した目標の旋回半径Rよりも大きい値から、目標の旋回半径Rまで小さくならない場合がある。原因としては、いわゆるキャンバースラストや、地面GLに対する車輪12F、12R、12Lのスリップなどが、考えられる。第4制御値Cw4は、旋回時に旋回半径Rの低減を促進する。
以上のように、制御装置100は、図8の処理を実行することによって、ロール角Arが目標ロール角Artに近づくように、操舵モータ65を制御する。この結果、車両10は、入力角AIに適したロール角Arで、走行できる。例えば、ロール角差dArの大きさが大きく、現行のロール角Arから目標ロール角Artへ向かうロール方向が右である場合(すなわち、ロール角差dArの方向は右)、操舵モータ65は、第1制御値Cw1とおおよそ同じ駆動制御値Cwに従って、ロール角差dArの方向とは反対の左方向に、前輪12Fを回動させ得る。これにより、ロール角Arは、速やかに、目標ロール角Artに近づく。その後、操舵モータ65は、ロール角Arがロール角差dArに維持されるように、同様の制御によって回動トルクを出力する。これにより、車輪角Awは、ロール角Arに適した角度に、近づき得る(図4、図5)。ロール角差dArの大きさが小さい場合、回動トルクの大きさも小さくなる。上述したように、前輪12Fは、ジャイロモーメントによって、車体90のロール方向に自然に回動し得る。従って、車両10は、入力角AIに適した旋回を行うことができる。例えば、車両10は、図4、図5に示す旋回を行うことができる。
また、図6(E)、図6(F)で説明したように、車輪角Awの角速度Aw’を用いて得られる第4ロールトルクTq4は、ヨー角加速度Ay’’の方向とは反対の方向の慣性の力F32を利用して生成される。従って、リーンモータ25によって直接的に生成されるロールトルクによって車体90がロールする場合と比べて、第4ロールトルクTq4によって車体90がロールする場合には、運転者が感じる横加速度が抑制される。
図15(A)-図15(C)は、図8の処理で制御される回動トルクTqwの例を示すグラフである。図15(A)は、ヨー角速度Ay’と回動トルクTqwとの2個のグラフを示している。回動トルクTqwは、操舵モータ65に供給される電流を用いて、特定可能である。共通の横軸は、時間Tを示している。ここでは、速度V、入力角AI、車輪角Aw、ロール角Arのそれぞれが一定に維持されるという条件(第1条件と呼ぶ)の下で、ヨー角速度Ay’が、W0(=ゼロ)、W1、W2の順に階段状に増大している。ヨー角速度Ay’は、ゼロ以上であり、直進、または、右旋回を示している。第1条件下でのヨー角速度Ay’の変化は、車両10の走行中に車輪12F、12R、12Lが地面GLに対して滑る場合に、生じ得る。車両10の状態のこのような変化は、鉛直上方向DUに平行な軸を中心に車両10を回転させることが可能なターンテーブル上に車両10を載せることによって、再現可能である。ターンテーブルの回転の角速度は、鉛直上方向DUに平行な軸まわりのヨー角速度を示している。車体上方向DVUに平行な軸まわりのヨー角速度Ay’は、方向センサ126からのデータを用いて特定可能である。このヨー角速度Ay’の大きさは、ターンテーブルの回転の角速度が大きいほど、大きい。ターンテーブルは、速度Vに応じた回転速度で車輪12F、12R、12Lのそれぞれを回転させる複数のローラを有している。車輪角Awを一定に維持するために、前フォーク17は、車体90に固定される。
第1条件下では(すなわち、第1条件が満たされる場合)、制御値Cw2、Cw3、Cw4と、第1ロールトルクTq1(図6(C))と、目標ロールトルクTqt(図10:S320)とのそれぞれは、ヨー角速度Ay’に拘わらず、一定である。そして、ヨー角速度Ay’が一定に維持される場合、ヨー角加速度Ay’’がゼロであるので、第3ロールトルクTq3(図6(E)、図6(F))は、ゼロである。ここで、ヨー角速度Ay’が異なる2つの状態を比較する。2つの状態の間では、第2ロールトルクTq2(図6(D))が異なる。上述したように、目標ロールトルクTqtとロールトルクTq1、Tq3とは一定である。従って、第2ロールトルクTq2が異なる場合には、第2ロールトルクTq2を打ち消すために、第4ロールトルクTq4が異なる(図10:S340)。このように、第1条件下でヨー角速度Ay’が異なる場合は、第2ロールトルクTq2の差が、第4ロールトルクTq4の差、すなわち、回動トルクTqwの差を生み出す。
ヨー角速度Ay’が第ゼロ値W0(ここでは、ゼロ)に維持される第ゼロ期間T10では、回動トルクTqwは、第ゼロ値Q0である。第ゼロ値Q0は、ゼロ、正値(右方向)、負値(左方向)のいずれでもあり得る。
ヨー角速度Ay’が、第ゼロ値W0よりも大きい第1値W1に維持される第1期間T11では、回動トルクTqwは、第1値Q1である。ヨー角速度Ay’が右旋回を示すので、第2ロールトルクTq2(図6(D))の向き(すなわち、遠心力ロール方向)は、左方向DLである。左方向DLの第2ロールトルクTq2を打ち消すためには、車輪角Awの角速度Aw’が右方向DRの第4ロールトルクTq4を生成するように、制御値Cw1、ひいては、回動トルクTqwが変更される。図6(E)、図6(F)から理解できるように、前輪12Fの方向D12を右方向DRへ回動する場合、第4ロールトルクTq4の方向は左方向DLである。従って、右方向DRの第4ロールトルクTq4を生成するためには、前輪12Fの方向D12を左方向DLへ回動させる角速度Aw’が用いられる。すなわち、第1期間T11での回動トルクTqwの第1値Q1は、第0期間T10での回動トルクTqwの第ゼロ値Q0と比べて、左方向(すなわち、負の方向)にシフトしている。
ヨー角速度Ay’が、第1値W1よりも大きい第2値W2に維持される第2期間T12についても、第1期間T11と同様に、回動トルクTqwが変更される。第2期間T12での回動トルクTqwの第2値Q2は、第1期間T11での回動トルクTqwの第1値Q1と比べて、左方向(すなわち、負の方向)にシフトしている。
第2期間T12の第2値W2のヨー角速度Ay’の方向は、右方向である。従って、第2値W2のヨー角速度Ay’に対応する第2ロールトルクTq2の方向(すなわち、遠心力ロール方向)は、左方向である。第2期間T12の第2値W2に付された「L」の符号は、遠心力ロール方向が左方向であることを示している。また、第2期間T12の回動トルクTqwの近傍には、第1差分トルクdTqw1が示されている。第1差分トルクdTqw1は、第2期間T12での第2値Q2から第1期間T11での第1値Q1を減算して得られる回動トルクの差分である。第1差分トルクdTqw1の方向が左方向であるので、第1差分トルクdTqw1によって生成される第4ロールトルクTq4の方向(すなわち、回動ロール方向)は、右方向である。第1差分トルクdTqw1に付された「R」の符号は、回動ロール方向が右方向であることを示している。
第1差分トルクdTqw1の方向は、ヨー角速度Ay’の第2値W2に対応付けられた遠心力ロール方向(L)とは反対の回動ロール方向(R)に対応付けられた回動トルクの方向である。すなわち、第1差分トルクdTqw1の方向は、ヨー角速度Ay’の増大量に対応する第2ロールトルクTq2の増大量を打ち消す方向である。このように、ヨー角速度Ay’が大きい場合に、遠心力ロール方向(L)とは反対の回動ロール方向(R)に対応付けられた差分トルクが回動トルクに加算され得る。従って、ヨー角速度Ay’が大きい場合に、回動トルクを用いて、ロールトルクを目標ロールトルクTqtに近づけることができる。
図15(B)は、ヨー角速度Ay’とヨー角加速度Ay’’と回動トルクTqwとの3個のグラフを示している。共通の横軸は、時間Tを示している。ここでは、上述した第1条件の下で、ヨー角加速度Ay’’が、ゼロ、ゼロとは異なる第1値C1、第1値C1とは反対の方向の第2値C2、の順に変化している。図15(B)では、第1値C1は正値(右)であり、第2値C2は負値(左)である。ヨー角加速度Ay’’が第1値C1である第1期間T21では、ヨー角速度Ay’は、ゼロから第1値B1(正値)へ単調に増加する。ヨー角加速度Ay’’が第2値C2である第2期間T22では、ヨー角速度Ay’は、第1値B1から単調に減少する。このような変化は、車両10の走行中に車輪12F、12R、12Lが地面GLに対して滑る場合に、生じ得る。また、車両10の状態のこのような変化は、図15(A)の例と同様に、ターンテーブルを用いることによって、再現可能である。
図15(A)で説明したように、第1条件の下では、ヨー角速度Ay’に起因する第2ロールトルクTq2と、ヨー角加速度Ay’’に起因する第3ロールトルクTq3とが、変化し得る。ロールトルクの他の成分は、一定である。第4ロールトルクTq4(図10:S340)、ひいては、回動トルクTqwは、ロールトルクTq2、Tq3の変化を打ち消すように、変化する。
図6(D)に示すように、第2ロールトルクTq2の大きさは、ヨー角速度Ay’の大きさが大きいほど、大きい。図6(F)に示すように、第3ロールトルクTq3の大きさは、ヨー角加速度Ay’’が大きいほど、大きい。従って、ロールトルクTq2、Tq3の変化を打ち消す回動トルクTqwのグラフの形状は、ヨー角速度Ay’のグラフとヨー角加速度Ay’’のグラフとを足し合わせて得られるグラフの正負を反転させて得られるグラフの形状と、おおよそ同じである。
図15(B)の例では、第1期間T21の開始時に、回動トルクTqwは、ゼロから第1値E1(負値)に変化する。その後、回動トルクTqwは、左方向(負の方向)に単調に変化する(回動トルクTqwの大きさは、単調に増大する)。第1期間T21の最後には、回動トルクTqwは、第2値E2(負値)である。時間Tmは、第1期間T21から第2期間T22へ切り替わる時間である。この時間Tmで、回動トルクTqwは、第2値E2から、右方向(正の方向)にシフトして、第3値E3に変化する。第3値E3は、ゼロ、正値(右方向)、負値(左方向)のいずれでもあり得る。第2期間T22では、回動トルクTqwは、右方向(正の方向)に単調に変化する。
第2期間T22の第2値C2のヨー角加速度Ay’’の方向は、左方向である。従って、第2値C2のヨー角加速度Ay’’に対応する第3ロールトルクTq3の方向(すなわち、ヨー角加速度ロール方向)は、右方向である。第2期間T22の第2値C2に付された「R」の符号は、ヨー角加速度ロール方向が右方向であることを示している。また、回動トルクTqwのグラフの時間Tmの近傍には、第2差分トルクdTqw2が示されている。第2差分トルクdTqw2は、時間Tmにおける回動トルクTqwの変化後の第3値E3から変化前の第2値E2を減算して得られる回動トルクである。第2差分トルクdTqw2の方向が右方向であるので、第2差分トルクdTqw2によって生成される第4ロールトルクTq4の方向(すなわち、回動ロール方向)は、左方向である。第2差分トルクdTqw2に付された「L」の符号は、回動ロール方向が左方向であることを示している。
第2差分トルクdTqw2の方向は、ヨー角加速度Ay’’の第2値C2に対応付けられたヨー角加速度ロール方向(R)とは反対の回動ロール方向(L)に対応付けられた回動トルクの方向である。すなわち、第2差分トルクdTqw2の方向は、ヨー角加速度Ay’’に対応する第3ロールトルクTq3を打ち消す方向である。このように、ヨー角加速度Ay’’の方向が反対方向に変化する場合に、変化後のヨー角加速度に対応する第3ロールトルクTq3を打ち消す差分トルクが回動トルクに加算され得る。従って、ヨー角加速度Ay’’の方向が反対方向に変化する場合に、回動トルクを用いて、ロールトルクを目標ロールトルクTqtに近づけることができる。
図15(C)は、ロール角Arと回動トルクTqwとの2個のグラフを示している。共通の横軸は、時間Tである。ここでは、速度V、入力角AI(=ゼロ)、車輪角Aw、ヨー角速度Ay’のそれぞれが一定に維持されるという条件(第2条件とも呼ぶ)の下で、ロール角Arが、R0(=ゼロ)、R1、R2の順に階段状に増大している。ロール角Arは、ゼロ以上であり、直立、または、右方向DRへの傾斜を示している。第2条件下でのロール角Arの変化は、車両10の走行中に、横風などの外力が車体90に作用する場合に、生じ得る。車両10の状態のこのような変化は、図15(A)の例と同様に、ターンテーブルを用いることによって、再現可能である。
第2条件下では(すなわち、第2条件が満たされる場合)、制御値Cw2、Cw3、Cw4と、ロールトルクTq2、Tq3とのそれぞれは、ロール角Arに拘わらず、一定である。ここで、ロール角Arが異なる2つの状態を比較する。2つの状態の間では、第1ロールトルクTq1(図6(C))と目標ロールトルクTqtとが異なる。従って、第2条件下でロール角Arが異なる場合には、目標ロールトルクTqtの差と第1ロールトルクTq1の差とを加算して得られる差が、第4ロールトルクTq4の差、すなわち、回動トルクTqwの差を生み出す。
ロール角Arが第ゼロ値R0(ここでは、ゼロ)に維持される第ゼロ期間T30では、目標ロールトルクTqtがゼロであり、第1ロールトルクTq1がゼロであるので、回動トルクTqwは、第ゼロ値U0(ここでは、ゼロ)である。
ロール角Arが、第ゼロ値R0(=ゼロ)よりも大きい第1値R1に維持される第1期間T31では、車体90は、右方向DRへ傾いている。目標ロールトルクTqtの方向は、第1値R1からゼロに向かう左方向DLである。従って、車輪角Awの角速度Aw’が左方向DLの第4ロールトルクTq4を生成するように、制御値Cw1、ひいては、回動トルクTqwが制御される。このような回動トルクTqwの方向は、右方向DRである。また、図6(C)に示すように、第1ロールトルクTq1の方向は、右方向DRである。右方向DRの第1ロールトルクTq1を打ち消すためには、左方向DLの第4ロールトルクTq4を生成する成分が増大するように、制御値Cw1、ひいては、回動トルクTqwが制御される。左方向DLの第4ロールトルクTq4を生成する回動トルクTqwの方向は、右方向DRである。以上により、第1期間T31での回動トルクTqwの第1値U1は、第0期間T30での回動トルクTqwの第ゼロ値U0と比べて、右方向(すなわち、正の方向)にシフトしている。
ロール角Arが第1値R1よりも大きい第2値R2である第2期間T32についても、第1期間T31と同様に、回動トルクTqwが変更される。第2期間T32での回動トルクTqwの第2値U2は、第1期間T31での回動トルクTqwの第1値U1と比べて、右方向(すなわち、正の方向)にシフトしている。
ゼロのロール角Arから第2期間T32の第2値R2のロール角Arへ向かうロール方向は、右方向である。第2期間T32の第2値R2に付された「R」の符号は、このロール方向を示している。また、第2期間T32の回動トルクTqwの近傍には、第3差分トルクdTqw3が示されている。第3差分トルクdTqw3は、第2期間T32での第2値U2から第1期間T31での第1値U1を減算して得られる回動トルクの差分である。第3差分トルクdTqw3の方向が右方向であるので、第3差分トルクdTqw3によって生成される第4ロールトルクTq4の方向(すなわち、回動ロール方向)は、左方向である。第3差分トルクdTqw3に付された「L」の符号は、回動ロール方向が左方向であることを示している。
第3差分トルクdTqw3の方向は、ゼロから第2値R2に向かうロール方向(R)とは反対の回動ロール方向(L)に対応付けられた回動トルクの方向である。すなわち、第3差分トルクdTqw3の方向は、ロール角Arのゼロからのずれに対応する第1ロールトルクTq1を打ち消す方向である。このように、入力角AIがゼロであり、ロール角Arが大きい場合に、ゼロからロール角Arへ向かうロール方向(R)とは反対の回動ロール方向(L)に対応付けられた差分トルクが回動トルクに加算され得る。従って、ロール角Arが大きい場合に、回動トルクを用いて、ロールトルクを目標ロールトルクTqtに近づけることができる。
また、図15(C)では、ロール角Arに関して、第1値R1から第ゼロ値R0を減算して得られる差分の大きさdArは、第2値R2から第1値R1を減算して得られる差分の大きさdArと同じである。従って、ロール角Arが第1値R1から第2値R2に変化する場合の目標ロールトルクTqtの増大量は、ロール角Arが第ゼロ値R0から第1値R1に変化する場合の目標ロールトルクTqtの増大量と、おおよそ同じである。一方、図6(C)に示すように、ロール角Arの絶対値が増大する場合、第1ロールトルクTq1の絶対値は、sin(Ar)に従って増大する。ロール角Arの増大量が同じであっても、ロール角Arが大きい場合には、ロール角Arが小さい場合と比べて、第1ロールトルクTq1の増大量は、小さい。以上により、回動トルクTqwに関して、第2値U2から第1値U1を減算して得られる差分トルクの大きさdT2は、第1値U1から第ゼロ値U0を減算して得られる差分トルクの大きさdT1よりも、小さい。従って、図6(C)で説明した第1ロールトルクTq1を考慮して、ロールトルクを目標ロールトルクTqtに近づけることができる。
A3.リーンモータの制御:
図16は、リーンモータ25の制御処理の例を示すフローチャートである。本実施例では、ロール角Arを目標のロール角に近づけるロールトルクを生成するように、リーンモータ25が制御される。S510では、主制御部110(図7)のプロセッサ110pは、センサ123、126から、信号を取得する。そして、プロセッサ110pは、現行の情報、具体的には、入力角AIと、ロール角Arとを、特定する。
S520、S530は、図10のS310、S315と、それぞれ同じである。S540では、プロセッサ110pは、ロール角差dArを用いて制御値CwLを決定する。本実施例では、プロセッサ110pは、ロール角差dArを用いる比例制御によって、制御値CwLを決定する。S550では、プロセッサ110pは、制御値CwLを示すデータを、リーンモータ制御部400に供給する。リーンモータ制御部400のプロセッサ400pは、制御値CwLに従って、リーンモータ25に供給される電力を制御する。具体的には、プロセッサ400pは、制御値CwLを示すデータを、電力制御部400cに供給する。電力制御部400cは、制御値CwLに従って、リーンモータ25に供給される電力を制御する。リーンモータ25は、供給された電力に応じて、ロールトルクを出力する。そして、図16の処理が終了する。制御装置100は、図16の処理を繰り返し実行する。これにより、制御装置100は、車両10の状態に適したロールトルクを出力するように、リーンモータ25を制御し続ける。
以上のように、制御装置100は、リーンモータ25と操舵モータ65とのそれぞれを、ロール角Arを目標ロール角Artに近づけるロールトルクを生成するように制御する。この結果、車両10は、入力角AIに適したロール角Arで、走行できる。そして、車両10は、入力角AIに適した旋回を行うことができる。
なお、図示を省略するが、主制御部110(図7)と駆動装置制御部300とは、駆動モータ51R、51Lを制御する駆動制御装置900として機能する。駆動制御装置900は、アクセル操作量Paに適した加速と、ブレーキ操作量Pbに適した減速と、を行うように、駆動モータ51R、51Lを制御する。
B.第2実施例:
図17は、第2実施例の車両10aを示す説明図である。図1(A)の車両10からの主な差異は、2点ある。第1の差異は、車両10aは、1個の前輪12Fと1個の後輪12Bとを有する二輪車である点である。第2の差異は、ハンドル41baが、機械的に、前フォーク17に接続されている点である。図中では、車両10aの要素のうち車両10の要素と同じ要素には、同じ符号が付されている。以下、以下、車両10aのうち、車両10と異なる部分について説明し、車両10と共通の部分については、説明を省略する。
車両10aは、後輪支持部80(図1(A))に代えて、アーム680とサスペンション670とを有している。アーム680は、本体部20の後壁部20cに回転可能に連結されており、後壁部20cから後方向DBに向かって延びている。アーム680の後方向DBの端部は、後輪12Bを回転可能に支持している。また、アーム680の後方向DBの端部には、駆動モータ660が取り付けられている。駆動モータ660は、電気モータであり、後輪12Bを駆動する。サスペンション670は、本体部20の後壁部20cとアーム680とに連結されている。サスペンション670は、コイルスプリングとショックアブソーバとを有しており、伸縮可能である。
前輪支持装置41bの構成は、ハンドル41baが前フォーク17に固定されている点を除いて、前輪支持装置41(図1)の構成と同じである。車体90aは、図1の本体部20と同じ本体部20を有している。ただし、車体90aは、二輪車用に修正されてよい(例えば、幅は狭められてよい)。重心90acは、車体90aの重心である。後輪12Bの下部に示される点PbBは、後輪12Bと地面GLとの接触領域CaBの接触中心PbBである。ホイールベースLhは、前輪12Fの接触中心P1と後輪12Bの接触中心PbBとの間の前方向DFの距離である。制御装置100aの構成は、制御装置100(図7)に以下の変更を行って得られる。すなわち、リーンモータ制御部400とリーンモータ25とは省略される。また、駆動装置制御部300は、1個の駆動モータ660を制御する。
図18は、操舵モータ65の制御処理の例を示すフローチャートである。本実施例では、ハンドル41baは、前フォーク17に接続されている。運転者は、ハンドル41baを回転させることによって、直接的に、前輪12Fの方向を制御(すなわち、操舵)できる。操舵モータ65による回動トルクは、操舵を補助するために、利用される。回動トルクTqwは、運転者にハンドル41baを介して伝達される回動トルクTqwが、操舵の好ましい方向を示すように、制御される。回動トルクTqwの大きさは、ハンドル41baを持つ運転者の力に逆らって前輪12Fが大きく動くことがないように、小さい値に設定される。
車両10aは二輪車であるので、3以上の車輪を有する車両と比べて、車両10aは、倒れやすい。運転者は、車両10aが安定して走行するように(例えば、ロール角Arが安定するように)、車両10aの状態と所望の旋回方向とに応じて、ハンドル41baを頻繁に回転させる。従って、入力角AIを用いて目標ロール角Artと目標車輪角Awtを特定することは、容易ではない。そこで、本実施例では、制御装置100aは、目標ロール角Artと目標車輪角Awtを用いずに、操舵モータ65を制御する。具体的には、制御装置100aは、ロール角Arを安定させるように、操舵モータ65を制御する。図18の処理は、図8の処理に以下の変更を行って得られる。S220aは、目標ロール角Artを用いないようにS220(図8)を修正して得られる処理に変更される(後述)。目標車輪角Awtを用いるS230は、省略される。S260aでは、プロセッサ110pは、3個の制御値Cw1、Cw2、Cw4の合計値である駆動制御値Cwを算出する。S270aでは、制御装置100は、駆動制御値Cwに従って、操舵モータ65を制御する。ただし、駆動制御値Cwの大きさが同じ場合の回動トルクTqwの大きさは、第1実施例のものと比べて、小さい。
図19は、第1制御値Cw1の決定処理(図18:S220a)の例を示すフローチャートである。図10の処理からの差異は、2点ある。第1の差異は、S310-S320が省略されている点である。第2の差異は、S340に代えてS340aが実行される点である。S340aでは、プロセッサ110pは、3個のトルクTq1、Tq2、Tq3の合成トルクを打ち消すための第4ロールトルクTq4を算出する。第4ロールトルクTq4は、合成トルクの方向を反転させて得られる。図19のフローチャートの他の部分は、図10フローチャートの対応する部分と、同じである。パラメータM、g、X、Z、Lhの意味は、第1実施例の対応するパラメータの意味と、それぞれ同じである。パラメータM、g、X、Z、Lhのそれぞれとしては、予め決められた値が用いられる。以下、図19のステップのうち、図10のステップと同じステップには、同じ符号を付して、説明を省略する。
図6(A)-図6(F)で説明したように、車体90には、車両10の状態に応じてロールトルクTq1、Tq2、Tq3が作用し得る。第4ロールトルクTq4は、3個のトルクTq1、Tq2、Tq3の合成トルクを打ち消すトルクである。従って、操舵モータ65の制御(すなわち、車輪角Awの角速度Aw’の制御)によって第4ロールトルクTq4が生成される場合には、4個のTq1、Tq2、Tq3、Tq4の合成トルクがゼロになる。この結果、ロール角Arの変化が抑制され、ロール角Arは、安定する。このように、第1制御値Cw1は、ロール角Arを安定させることができる。本実施例では、制御装置100は、第1制御値Cw1を用いて操舵モータ65を制御する(図18)。従って、ロール角Arは、安定する。
なお、図19に示すように、本実施例においても、第1制御値Cw1は、3個のトルクTq1、Tq2、Tq3を用いて、決定される。従って、本実施例の回動トルクTqwも、図15(A)-図15(C)で説明した回動トルクTqwの特性を有すると推定される。なお、図15(C)のグラフでは、目標ロールトルクTqtの変化は省略される。回動トルクTqwの変化は、第1ロールトルクTq1の変化を示す。
C:第3実施例:
上記の実施例では、前輪12Fが回動輪である。これに代えて、後輪が回動輪であってよい。図20(A)、図20(B)は、後輪が回動輪である場合のロールトルクTq3、Tq4の説明図である。図20(A)、図20(B)は、図6(E)、図6(F)と同様の説明図である。本実施例の車両10bは、2個の前輪(右前輪FRと左前輪FL)と、1個の後輪RRと、を有している。車両10bが右方向DRに旋回する場合、後輪RRは、左方向DLに回動する。
図20(A)には、自転中心Rbcが示されている。本実施例では、前輪FR、FLは回動輪ではなく、後輪RRが回動輪である。従って、自転中心Rbcは、前輪FR、FLの間の中心の近傍に位置する。車体の重心90bcは、自転中心Rbcから後方向DB側に離れた位置に配置される。図中の距離Xは、重心90bcと自転中心Rbcとの間の前方向DFの距離である。
車体の重心90bcは、自転中心Rbcから距離Xだけ後方向DB側に離れた位置に、配置されている。従って、車体には、ヨー角加速度Ay’’の方向と同じ方向の慣性力成分F32が、作用する。慣性力成分F32の方向は車体上方向DVUに垂直である。また、本実施例では、図20(A)の上面図上で、自転中心Rbcから重心90bcへ向かう方向は、後方向DBにおおよそ平行である。従って、慣性力成分F32の方向は、後方向DBにおおよそ垂直である。図20(A)の上面図においては、ヨー角加速度Ay’’の方向、すなわち、ヨー角速度Ay’の変化方向は、時計回り方向である。この場合、慣性力成分F32の方向は、右方向DR側を向いている。慣性力成分F32の大きさの算出式は、図6(E)の算出式と同じである。
図20(B)には、慣性力成分F32が示されている。図6(E)、図6(F)との差異は、慣性力成分F32の方向(すなわち、第3ロールトルクTq3の方向)が、反対である点だけである。
このように、後輪RRが回動輪である場合、第3ロールトルクTq3の方向は、ヨー角加速度Ay’’の方向と同じである。また、図20(A)、図20(B)から理解できるように、後輪RRが左方向DLへ回動する場合、第4ロールトルクTq4の方向は右方向DRである。従って、右方向DRの第4ロールトルクTq4を生成するためには、後輪RRを左方向DLへ回動させる角速度Aw’が用いられる。本実施例においても、図8、または、図18の処理に従って、回動輪の回動トルクが制御されてよい。ここで、上述したロールトルクTq3、Tq4の方向が、考慮される。
D.変形例:
(1)回動駆動装置65の制御処理は、図8、図18の実施例の制御処理に代えて、他の種々の処理であってよい。例えば、上記実施例の制御処理は、比例制御によって入力パラメータから出力パラメータを決定する処理を含んでいる(例えば、S355(図10、図19)、S425(図12(A))、S450(図13(A))、S460(図14(A))など)。ここで、比例制御に代えて、他の種々の制御が、採用されてよい(例えば、PD(Proportional-Differential)制御、または、PID(Proportional-Integral-Differential)制御)。
第1ロールトルクTq1(図6(C))に対応する制御用のパラメータの大きさは、ロール角Arの大きさが大きいほど大きい種々の値であってよい。例えば、ロール角Arの大きさが増大する場合に、第1ロールトルクTq1に対応するパラメータの大きさは、ロール角Arの大きさに比例して増大してよい。
第2ロールトルクTq2(図6(D))に対応する制御用のパラメータの大きさは、車速が大きいほど大きく、ヨー角速度Ay’の大きさが大きいほど大きいような、種々の値であってよい。例えば、ヨー角速度Ay’の大きさが増大する場合に、ヨー角速度Ay’の増大量に対する第2ロールトルクTq2に対応するパラメータの大きさの増大量の割合は、一定値であってよく、ヨー角速度Ay’の大きさに応じて変化してよい。
第3ロールトルクTq3(図6(E)、図6(F))に対応する制御用のパラメータの大きさは、ヨー角加速度Ay’’の大きさが大きいほど大きい種々の値であってよい。例えば、ヨー角加速度Ay’’の大きさが増大する場合に、ヨー角加速度Ay’’の増大量に対する第3ロールトルクTq3に対応するパラメータの大きさの増大量の割合は、一定値であってよく、ヨー角加速度Ay’’に応じて変化してよい。
また、プロセッサ110pは、操舵モータ65を制御するために、第1ロールトルクTq1と第2ロールトルクTq2と第3ロールトルクTq3とから予め任意に選択された1以上のトルクにそれぞれ対応する1以上のパラメータを用いてよい。例えば、ロールトルクTq1-Tq3のうち1以上のトルクが省略されてよい。より一般的には、プロセッサ110pは、ヨー角速度とヨー角加速度とロール角とのうちの1以上のパラメータを含む1以上の制御パラメータを用いて回動駆動装置を制御してよい。例えば、ヨー角速度とヨー角加速度とロール角とのうちの1以上のパラメータが省略されてよい。ただし、より多くのパラメータ、すなわち、より多くの種類のロールトルクを用いて車両を制御することによって、車両の制御による意図された動きと車両の現実の動きとの間のずれを小さくできる。
(2)追加角速度Awd’から回動トルクを特定する方法は、図10のS355で説明した比例制御に代えて、他の種々の方法であってよい。例えば、プロセッサ110pは、追加角速度Awd’を積分することによって、目標車輪角を特定してよい。そして、プロセッサ110pは、現行の車輪角Awが目標車輪角に近づくように、操舵モータ65を制御してよい。
(3)プロセッサ110pは、駆動制御値Cwを決定するために、第1制御値Cw1を含む種々の制御値を用いてよい。例えば、制御値Cw2-Cw4から任意に選択された1以上の制御値は、省略されてよい。また、制御値Cw1-Cw4とは異なる他の制御値が用いられてもよい。
車両が直進運動から旋回運動へ素早く移行するためには、車体は、旋回方向に素早くロールする。ここで、車体の重心は急には移動できないので、車体の下側の部分は、旋回方向とは反対の方向に移動し得る。例えば、図1(A)の回動輪(ここでは、前輪12F)の回動軸Ax1と地面GLとの交点P2は、旋回方向とは反対の方向に移動し得る。この結果、車両が正のトレールLtを有する場合、回動輪は、旋回方向とは反対の方向に回動し得る。そこで、プロセッサ110pは、車体のロールが速い場合に、回動輪を旋回方向へ回動させる回動トルクの成分を示す制御値を用いて駆動制御値Cwを決定してよい。このような制御値は、例えば、以下のいずれかのパラメータにゲインを乗じて得られる値であってよい。
1)車輪角Awの角速度Aw’
2)リーンモータ25のトルク
3)ロール角Arの角速度Ar’
4)ロール角Arの角加速度Ar’’
5)入力角AIの角速度AI’
6)入力角AIの角加速度AI’’
これらのパラメータの大きさが大きい場合には、車体のロールが速いので、これらのパラメータは、制御値の決定に適している。なお、上述したように、速度Vが大きい場合には、回動輪は、ジャイロモーメントによって、ロール方向に回動可能である。従って、ゲインは、速度Vが小さい場合に大きいことが好ましい。例えば、図12(B)のゲインGp2、または、図13(B)のゲインGp3が、用いられてよい。
上述したように、回転する車輪には、ジャイロモーメントによって、回動トルクが作用する。プロセッサ110pは、この回動トルクを用いて、操舵モータ65の回動トルクTqwを補正してよい。ジャイロモーメントによる回動トルクは、例えば、速度Vとロール角Arとを用いて算出可能である。
また、車輪が右または左に傾いている場合、車輪にはいわゆるキャンバースラストが作用する。そして、車輪には、キャンバースラストによって、回動トルクが作用する。プロセッサ110pは、この回動トルクを用いて、操舵モータ65の回動トルクTqwを補正してよい。キャンバースラストによる回動トルクは、例えば、速度Vとロール角Arとを用いて算出可能である。
(4)回動トルクの上限を制限する方法は、種々の方法であってよい。例えば、図11(B)の例では、速度Vが閾値VL以下である場合に、追加角速度Awd’の絶対値が第1上限値Lm1に制限される。これに代えて、プロセッサ110pは、速度Vが閾値VL以下である場合には、速度Vが閾値VLであることとして、操舵モータ65を制御してよい。
(5)目標ロール角Art(図10:S310)は、入力角AIに加えて、他の情報(例えば、速度V)を用いて、特定されてよい。
(6)車体の質量Mとしては、予め決められた値に代えて、測定値が用いられてよい。車両10(図1(A))は、車体90の質量Mを測定するセンサを備えてよい。このようなセンサは、例えば、右サスペンション70R(図2)のストローク位置を検出するセンサであってよい。車体90の質量Mが大きいほど、右サスペンション70Rの全長は短くなる。従って、ストローク位置は、質量Mと相関を有するパラメータである。プロセッサ110pは、ストローク位置から全長を特定し、特定された全長から質量Mを推定してよい。
(7)車体の重心の位置としては、予め決められた位置に代えて、測定された位置が用いられてよい。例えば、車両10(図1(A))は、前フォーク17のストローク位置を測定する前センサと、右サスペンション70R(図2)のストローク位置を検出する後センサと、を備えてよい。重心が前方向DF側に位置する場合には、前フォーク17に大きな荷重が印加されるので、前フォーク17の全長が短くなる。重心が後方向DB側に位置する場合には、右サスペンション70Rに大きな荷重が印加されるので、右サスペンション70Rの全長が短くなる。プロセッサ110pは、前フォーク17の全長と右サスペンション70Rの全長とを用いることによって、重心の前方向DFの位置を推定できる。プロセッサ110pは、推定された重心の位置を用いて、自転中心と重心との距離X(図6(E))など)を算出できる。自転中心としては、予め決められた位置が用いられてよい。
また、プロセッサ110pは、車体を左右に振動させることによって、重心の距離Zを推定してよい。例えば、プロセッサ110pは、リーンモータ25に、車体をロールさせるトルクを出力させる。距離Zが短い場合、ロール角Arは、素早く変化する。距離Zが長い場合、ロール角Arは、ゆっくり変化する。このように、一定のトルクによって生じるロール角Arの角速度Ar’、または、角加速度Ar’’が大きいほど、距離Zが短いと推定できる。
(8)制御に用いられるパラメータ(例えば、速度Vなどの物理量)を示すデータは、パラメータと相関を有する種々のデータであってよい。例えば、車速センサ122は、前輪12Fの回転速度を示すデータを、速度Vを示すデータとして出力する。
(9)方向センサ126(図1(A))は、鉛直上方向DU(図6(D))に平行な軸を中心とするヨー角速度を示すデータを出力してよい。この場合、プロセッサ110pは、鉛直上方向DUを基準とするヨー角速度の大きさと、車体上方向DVUを基準とするヨー角速度Ay’の大きさと、の間のずれを、ロール角Arを用いて補正可能である。また、方向センサ126は、ヨー角速度に代えて、ヨー角加速度を示すデータを出力してよい。この場合、プロセッサ110pは、ヨー角加速度を積分することによって、ヨー角速度を特定してよい。
(10)ロール角Ar、ヨー角速度Ay’、ヨー角加速度Ay’’などの1以上の制御パラメータと、駆動制御値Cw(すなわち、回動駆動装置の回動トルク)と、の対応関係を規定する方法は、上述した演算を行う方法に代えて、他の任意の方法であってよい。例えば、1以上の制御パラメータと駆動制御値Cwとの対応関係を規定するマップデータが、予め準備されてよい。プロセッサ110pは、このマップデータを参照して、駆動制御値Cwを特定してよい。
(11)旋回入力情報取得装置は、入力角センサ123に代えて、旋回方向と旋回の程度とを表す旋回入力情報を取得するように構成されている種々の装置であってよい。例えば、旋回入力情報取得装置は、車両を自動運転する自動運転制御装置(例えば、コンピュータ)であってよい。自動運転制御装置は、予め決められた走行経路上の車両の現行の位置に従って、旋回方向と旋回の程度とを表す旋回入力情報を取得してよい。
(12)車体を車両の幅方向に傾斜させるように構成されている傾斜装置の構成は、リンク機構30(図2)の構成に代えて、他の種々の構成であってよい。例えば、リンク機構30が台に置換されてよい。台には、駆動モータ51L、51Rが固定される。そして、第1支持部82は、軸受によって、幅方向に回転可能に台に連結される。リーンモータ25は、台に対して、第1支持部82を、幅方向に回転させる。これにより、車体90は、右方向DR側と左方向DL側とのそれぞれに、傾斜できる。また、傾斜装置は、左スライド装置と右スライド装置を備えてよい(例えば、液圧シリンダ)。左スライド装置が、左後輪12Lと車体とを接続し、右スライド装置が、右後輪12Rと車体とを接続してもよい。各スライド装置は、車体に対する車輪の車体上方向DVUの相対位置を変化させることができる。
(13)複数の車輪の総数と配置としては、種々の構成を採用可能である。例えば、前輪の総数が2であり、後輪の総数が2であってもよい。複数の車輪は、車両の幅方向に互いに離れて配置された一対の車輪を含んでよい。前輪(例えば、図1(A)の前輪12F)が駆動輪であってよい。回動輪の総数は、1以上の任意の数であってよい。前輪と後輪との少なくとも一方が、回動輪を含んでよい。前輪と後輪の双方が、回動輪であってもよい。回動輪は、車両の幅方向に互いに離れて配置された一対の車輪を含んでよい。
(14)回動輪を支持する回動輪支持装置の構成は、図1(A)等で説明した前輪支持装置41の構成に代えて、他の種々の構成であってよい。例えば、回動輪を回転可能に支持する支持部材は、フォーク17に代えて、片持ちの部材であってよい。また、支持部材を車体に対して幅方向に回動可能に支持する回動装置は、軸受68に代えて、他の種々の装置であってよい。例えば、回動装置は、車体と支持部材とを連結するリンク機構であってよい。一般的には、回動輪支持装置は、回動輪の方向が車両の幅方向に回動可能であるように回動輪を支持する種々の装置であってよい。
ここで、回動輪支持装置は、K個(Kは1以上の整数)の支持部材を備えてよい。各支持部材は、1以上の回動輪を回転可能に支持してよい。そして、回動輪支持装置は、車体に固定されたK個の回動装置を備えてよい。K個の回動装置は、K個の支持部材を、それぞれ幅方向に回動可能に支持してよい。
(15)回動駆動装置の構成は、操舵モータ65(図1)の構成に代えて、回動輪の幅方向の回動を制御するトルクである回動トルクを回動輪に付与するように構成されている種々の構成であってよい。例えば、回動駆動装置は、ポンプを含み、ポンプからの液圧(例えば、油圧)を用いて回動トルクを生成してよい。いずれの場合も、回動駆動装置は、K個の支持部材のそれぞれに回動トルクを付与するように構成されてよい。例えば、回動駆動装置は、K個の支持部材のそれぞれに連結されてよい。
また、駆動システム51S(図2)、すなわち、駆動モータ51R、51Lは、右後輪12Rと左後輪12Lとの間のトルクの比率を制御することによって、回動トルクを回動輪に付与してよい。トルクの比率が1とは異なる場合、トルクの違いによって車両が旋回しようとするので、回動輪に回動トルクが作用する。また、車両10が、右後輪12R用のブレーキ装置と、左後輪12L用のブレーキ装置を備えてよい。これらのブレーキ装置は、右後輪12Rと左後輪12Lとの間のブレーキ力の比率を制御することによって、回動トルクを回動輪に付与してよい。また、車両は、車体に対して右または左へ流れる空気流を生成するファン装置を備えてよい。ガス流によって車両が旋回しようとするので、回動輪に回動トルクが作用する。車両は、1種類以上の回動駆動装置(操舵モータ65、駆動システム51S、ブレーキ装置、ファン装置など)を含んでよい。また、車両は、1種類以上の回動駆動装置をそれぞれ制御する1種類以上の回動制御装置を含んでよい。
(16)制御装置100の構成は、回動駆動装置(例えば、操舵モータ65)を制御するように構成された回動制御装置を含む種々の構成であってよい。例えば、制御装置100は、1つのコンピュータを用いて構成されてもよい。制御装置100の少なくとも一部は、ASIC(Application Specific Integrated Circuit)などの専用のハードウェアによって、構成されてよい。例えば、図7の操舵モータ制御部500は、ASICによって構成されてよい。また、制御装置100は、コンピュータを含む電気回路であってよく、これに代えて、コンピュータを含まない電気回路であってもよい。また、マップデータ(例えば、傾斜角マップデータMTなど)によって対応付けられる入力値と出力値とは、他の要素によって対応付けられてよい。例えば、数学的関数、アナログ電気回路などの要素が、入力値と出力値とを対応付けてよい。
(17)車両の構成は、実施例の構成に代えて、他の種々の構成であってよい。例えば、駆動輪を駆動する駆動装置は、電気モータと内燃機関の少なくとも1つを含んでよい。車両の最大定員数は、1人に代えて、2人以上であってよい。車両は、人と荷物との少なくとも一方を乗せずに移動する装置であってよい。車両は、遠隔操作によって移動する装置であってよい。車両の制御に用いられる対応関係(例えば、マップデータによって示される対応関係)は、車両が適切に走行できるように、実験的に決定されてよい。
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、図7の制御装置100の機能を、専用のハードウェア回路によって実現してもよい。
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体(例えば、一時的ではない記録媒体)に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体(コンピュータ読み取り可能な記録媒体)に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD-ROMのような携帯型の記録媒体に限らず、各種ROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。