以下、本発明の実施の形態を説明する。
図1は、本実施形態の四輪独立駆動車の概略構成図である。
バッテリ9からは、インバータ31〜34を介してモータ11〜14に電力が供給され、このバッテリ9より供給される電力によりモータ11が左前輪1を、モータ12が右前輪2を、モータ13が左後輪3を、モータ14が右後輪4を独立に駆動しあるいは独立に制動する。電力を供給するバッテリ9としてはニッケル水素電池あるいはリチウムイオン電池が望ましい。
上記各モータ11〜14(各輪1〜4を駆動または制動するアクチュエータ)は三相同期電動機や三相誘導電動機等の力行運転及び回生運転ができる交流機である。
上記インバータ31〜34はモータ1〜4で発電された交流電流を直流電流に変換しバッテリ9に充電する、あるいはバッテリ9が放電した直流電流を交流電流に変換しモータ1〜4に供給する。
各輪1〜4の回転半径は所定値Rで全て等しく、各モータ11〜14と各車輪1〜4間は減速比1つまり直接連結されている。またさらに、各輪1〜4の輪荷重と横滑り角と路面摩擦係数が四輪で等しい場合には、制駆動力とタイヤ横力との関係は四輪で同一となる。つまり、四輪とも同じタイヤ特性を有する。
前輪1,2は、ステアリングギヤ15を介してステアリング5の操舵により転舵可能であり、その舵角は運転者によるステアリング5の操舵によりステアリングギヤ15を介して機械的に調整される。ここで、前輪1,2の舵角変化量はステアリング5の操舵角変化量に対して1/16になるように設定されている。一方、後輪3,4の舵角は、コントローラ8から送信された指令値に追従するようステアリングアクチュエータ16によって調整される。
CPU、ROM、RAM、インターフェース回路及びインバータ回路等からなるコントローラ8には、車輪速センサ21〜24によって検出される各輪1〜4の速度、ステアリング角センサ25によって検出される運転者によるステアリング5の回転角、アクセルストロークセンサ26によって検出されるアクセルペダル6の踏込量、ブレーキストロークセンサ27によって検出されるブレーキペダル7の踏込量、舵角センサ41〜44(舵角検出手段)によって検出される各輪1〜4の舵角、車両重心位置に取り付けられた加速度センサ100によって検出される車両の横方向加速度、ヨーレートセンサ101によって検出される車両のヨーレート等の信号が入力され、これらの信号に基づいて各モータ11〜14にトルク配分を行う等の制御を行う。
さて、従来技術として、左右輪を独立に駆動(あるいは制動)可能な車両において、ヨーレートや車両横方向加速度を所望の応答とする左右輪の駆動力差をフィードフォワードで求めるモデルフォロイング制御が知られている(金井喜美雄,越智徳昌,川邊武俊著,「ビークル制御」,槇書店,2004年1月20日,第3章3.2節)。
このモデルフォロイング制御では、各輪の舵角,駆動力,横すべり角等が十分小さいという仮定のもとで車両を線形化(線形二輪モデル)し、この線形化した車両モデルの逆モデルを用いてヨーレートや車両横方向加速度を所望の応答となる左右輪の駆動力差を求めている。この従来技術では、線形近似された車両モデルに対し、所望のヨーレートや車両横方向加速度を得ることができる。
しかしながら、ヨーレートや横方向加速度等を主として生じさせる各輪のタイヤ横力について考えると、駆動力変化に対するこのタイヤ横力の変化は、横すべり角や輪荷重等によって非線形に変化することが知られている。特に各輪の舵角や各輪の横すべり角が大きくなる急旋回時には、各輪の舵角や各輪の横すべり角を線形近似したことによるモデル誤差が大きくなる。
従って、このようにタイヤの非線形性が強くなりモデル誤差が大きくなるような場合には、従来技術で求めた左右輪駆動力差ではヨーレートや車両横方向加速度を所望の応答とすることができず、目標値に対してオーバーシュートや収束の遅れが発生し、ドライバーの操縦性を損ねる恐れがある。
そこで本発明は、各輪についての駆動力とタイヤ横力との非線形な関係を考慮しながら、車両前後方向加速度、車両横方向加速度、ヨー角加速度の各目標値を実現する各輪の駆動力配分をフィードフォワードで求める手法を提案するものである。
以下、本出願人が提案する手法の理論的背景と、この理論を用いて車両前後方向加速度、車両横方向加速度、ヨー角加速度の各目標値を実現する各輪の駆動力目標値が演算できることを示す。
まず最初に本手法の理論的背景について図2を用いて説明する。
図2は図1に示した四輪独立駆動車をモデル化したものである。すなわち、左前輪1、右前輪2、左後輪3、右後輪4をそれぞれ独立に駆動できる車両において、各輪1〜4の駆動力、各輪1〜4のタイヤ横力、各輪1〜4の舵角に加えて、車両に働く前後方向力、車両に働く横方向力、重心周りのヨーモーメントを表した図である。
図2において、δ1,δ2,δ3,δ4は各輪1〜4それぞれの舵角[rad]、Fx1,Fx2,Fx3,Fx4は各輪1〜4の駆動力[N]、Fy1,Fy2,Fy3,Fy4は各輪1〜4のタイヤ横力[N]である。また、Fxはタイヤ力の総和の車両前後方向力[N]、Fyはタイヤ力の総和の車両横方向力[N]、Mは各輪1〜4のタイヤ力によって発生する車両重心周りのヨーモーメントの総和[Nm]である。
ここで、各輪1〜4それぞれの舵角δ1,δ2,δ3,δ4およびMは車両を鉛直上方から見た場合に時計回りを正とし、各舵角δ1,δ2,δ3,δ4は各輪1〜4の回転方向が車両前後方向と一致している状態をゼロとする。また、各輪1〜4の駆動力Fx1,Fx2,Fx3,Fx4は各舵角δ1,δ2,δ3,δ4が全てゼロのときに車両を前方に加速させる方向を正とし、各輪1〜4のタイヤ横力Fy1,Fy2,Fy3,Fy4は各舵角δ1,δ2,δ3,δ4が全てゼロのときに車両を左方向に加速させる方向を正とする。例えば、Fx1,Fx2,Fx3,Fx4の値が負であれば車両を減速させることになるので、このときの駆動力は制動力である。従って、駆動力は制動力を含んだ概念として使用している。
なお、各輪1〜4の舵角をδi(i=1〜4)、各輪1〜4の駆動力をFxi(i=1〜4)、各輪1〜4のタイヤ横力をFyi(i=1〜4)と表すことがあり、記号δ,Fx,Fyに添える整数iについては左前輪を1で、右前輪2で、左後輪を3で、右後輪を4で表すものとする。記号に付す整数iは他の記号についても同じ意味で使用する。
また、図2において、Lfは車両重心軸から前輪車軸までの距離[m]、Lrは車両重心軸から後輪車軸までの距離[m]、Ltは前後輪のトレッド長さ[m]である。従って、車両のホイールベースの長さLl[m]はLl=Lf+Lrである。
ここで、まず各輪1〜4で発生する駆動力とタイヤ横力の合力(つまりタイヤ力)の車両前後方向力Fx’i(i=1〜4)及び車両横方向力Fy’i(i=1〜4)を考える。すると図3のように各輪1〜4の舵角をδi(i=1〜4)だけ切った場合におけるタイヤ力の車両前後方向力Fx’iとタイヤ力の車両横方向力Fy’iは次の式(1)及び式(2)で表される。ただし、タイヤ力の車両前後方向力Fx’iは車両を前方に加速する方向を、タイヤ力の車両横方向力Fy’iは車両を左方向に加速させる方向をそれぞれ正とする。
Fx’i=Fxicosδi−Fyisinδi …(1)
Fy’i=Fxisinδi+Fyicosδi …(2)
従って、各車輪1〜4の駆動力が微小な量であるΔFxi(i=1〜4)だけ変化したときのタイヤ横力変化量をΔFyi(i=1〜4)とすると、各車輪1〜4の駆動力が微小量ΔFxiだけ変化したときのタイヤ力の車両前後方向力Fx’i,各車輪1〜4の駆動力が微小量ΔFxiだけ変化したときのタイヤ力の車両横方向力Fy’iの変化量ΔFy’iは次の式(3)及び式(4)で表される。
ΔFx’i=ΔFxicosδi−ΔFyisinδi …(3)
ΔFy’i=ΔFxisinδi+ΔFyicosδi …(4)
ここでさらに、各輪1〜4について駆動力とタイヤ横力の関係は図4に示す関係にある。図4は輪荷重と路面摩擦係数に変化が無いとしたときの駆動力とタイヤ横力の関係を表した図で、駆動力を横軸に、タイヤ横力を縦軸に採っている。この図4の関係を利用して、各輪1〜4の現在の駆動力Fxi(i=1〜4)とタイヤ横力Fyi(i=1〜4)における、駆動力変化ΔFxiに対するタイヤ横力の感度をki(i=1〜4)とおく。つまり、各輪1〜4の駆動力変化に対するタイヤ横力の感度kiは、図4に示すように車両前後方向力の変化量ΔFxi及び車体横方向力の変化量ΔFyiが微小のときの次の式(5)により定義される値である。
ki=ΔFyi/ΔFxi …(5)
すると、車両前後方向力の変化量ΔFxi及び車両横方向力の変化量ΔFyiが微小で、この式(5)の近似が十分成り立つとすると、ΔFyi=kiΔFxiとおけるので、各輪1〜4の駆動力Fxiが十分微小なΔFxiだけ変化したときのタイヤ力の車両前後方向力Fx’iの変化量ΔFx’iと、タイヤ力の車両横方向力Fy’iの変化量ΔFy’iとは次の式(6)及び式(7)へと変形される。
ΔFx’i=(cosδi−kisinδi)ΔFxi=piΔFxi …(6)
ΔFy’i=(sinδi+kicosδi)ΔFxi=qiΔFxi …(7)
式(6)、式(7)の係数pi,qi(i=1〜4)は、各輪1〜4の舵角δiと、各輪1〜4についての駆動力変化に対するタイヤ横力の感度kiにより表される次の値である。
pi=cosδi−kisinδi …(補1)
qi=sinδi+kicosδi …(補2)
ここで、図2の状態において、タイヤ力の総和の車両前後方向力Fxと、タイヤ力の総和の車両横方向力Fyと、各輪1〜4のタイヤ力によって発生する車両重心周りのヨーモーメントの総和Mとは、次の式(8)〜式(10)により表すことができる。ただし、各輪1〜4のタイヤ力によって発生する車両重心周りのヨーモーメントの総和Mは、図2の通り車両を鉛直上方からみたときに反時計回りを正とする。
Fx=Fx’1+Fx’2+Fx’3+Fx’4 …(8)
Fy=Fy’1+Fy’2+Fy’3+Fy’4 …(9)
M={(Fx’2+Fx’4)−(Fx’1+Fx’3)}×Lt/2
+{(Fy’1+Fy’2)×Lf−(Fy’3+Fy’4)×Lr}
…(10)
従って、各輪1〜4の駆動力Fx1,Fx2,Fx3,Fx4がそれぞれ微小な量であるΔFx1,ΔFx2,ΔFx3,ΔFx4だけ変化したときのタイヤ力の総和の車両前後方向力Fx,タイヤ力の総和の車両横方向力Fy,各輪のタイヤ力によって発生する車両重心周りのヨーモーメントの総和Mの各変化量ΔFx,ΔFy,ΔMは、上記の式(補1)及び式(補2)の係数pi,qiを用いて、次の式(11)〜(13)により表される。
ΔFx=ΔFx’1+ΔFx’2+ΔFx’3+ΔFx’4 …(11)
ΔFy=ΔFy’1+ΔFy’2+ΔFy’3+ΔFy’4 …(12)
ΔM={(ΔFx’2+ΔFx’4)−(ΔFx’1+ΔFx’3)}×Lt/2
+{(ΔFy’1+ΔFy’2)×Lf−(ΔFy’3+ΔFy’4)×Lr}
=(−p1Lt/2+q1Lf)ΔFx1
+(p2Lt/2+q2Lf)ΔFx2
+(−p3Lt/2−q3Lr)ΔFx3
+(p4Lt/2−q4Lr)ΔFx4
…(13)
これら3つの式(11)〜(13)をまとめると次の行列式(14)により表すことができる。
いま、左前輪1の駆動力補正量ΔFx1を既知と仮定して残り三輪2〜4の駆動力補正量ΔFx2,ΔFx3,ΔFx4について解くと、残り三輪2〜4の駆動力補正量ΔFx2,ΔFx3,ΔFx4は次の式(15)により表される。
式(15)の係数D1,D2,D3,D4は、上記の係数pi,qiと、ホイールベース長さLlにより表される次の値である。
D1=q2(p3q4−p4q3)Ll+p3(p2q4−p4q2)Lt …(16)
D2=q1(p4q3−p3q4)Ll+p4(p3q1−p1q3)Lt …(17)
D3=q4(p2q1−p1q2)Ll+p1(p4q2−p2q4)Lt …(18)
D4=q3(p1q2−p2q1)Ll+p2(p1q3−p3q1)Lt …(19)
従って、上記の式(15)より、係数D1≠0の場合には、現在の動作点周りでタイヤ力の総和の車両前後方向力Fx,タイヤ力の総和の車両横方向力Fy,各輪1〜4のタイヤ力によって発生する車両重心周りのヨーモーメントの総和Mをそれぞれ微小な量であるΔFx,ΔFy,ΔMだけ変化させる各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4は、χを任意定数として次の式(20)により求めることができる。
同様にして、残り三輪2〜4の駆動力補正量ΔFx2,ΔFx3,ΔFx4のいずれか一つを既知と仮定して上記の式(14)を解くと、係数D2≠0,係数D3≠0,係数D4≠0それぞれの場合に現在の動作点周りでタイヤ力の総和の車両前後方向力Fx,タイヤ力の総和の車両横方向力Fy,各輪1〜4のタイヤ力によって発生する車両重心周りのヨーモーメントの総和Mをそれぞれ微小な量であるΔFx,ΔFy,ΔMだけ変化させる各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求める式が得られる。例として、右後輪4の駆動力補正量ΔFx4を既知として上記の式(14)を解くと、次の式(21)のようになる。
次に、これらの式(20)や式(21)を用い、各輪1〜4について駆動力Fx1,Fx2,Fx3,Fx4とタイヤ横力Fy1,Fy2,Fy3,Fy4との非線形な関係を考慮しながら、車両前後方向力の目標値Fx**,車両横方向力の目標値Fy**,ヨーモーメントの目標値M**を実現する各輪の駆動力目標値をフィードフォワードで求める手法について、図5を参照して説明する。
車両挙動は、タイヤ力の総和の車両前後方向力Fx、タイヤ力の総和の車両横方向力Fy及び各輪1〜4のタイヤ力によって発生する車両重心周りのヨーモーメントの総和Mの3つによって一義的に決まるので、これらFx、Fy及びMの3つを、以下「車両挙動」で総称する。
まず、ドライバーのアクセルやハンドル等の操作から、車両前後方向力の目標値Fx**,車両横方向力の目標値Fy**,ヨーモーメントの目標値M**、つまり車両挙動の目標値を生成する。この車両挙動の目標値が、例えば図5において上から第3段目までに破線で示したよう変化したとする。すなわち、図5において上から第3段目までに、t1のタイミングより、車両前後方向力の目標値Fx**が一定量小さくなる側へ、車両横方向力の目標値Fy**が一定量大きくなる側へ、ヨーモーメントの目標値M**が一定量大きくなる側へそれぞれ変化する場合を示す。
ここで、車両前後方向力の目標値Fx**,車両横方向力の目標値Fy**,ヨーモーメントの目標値M**としては、例えば車両を線形近似したモデルに対しモデルフォロイング制御(金井喜美雄,越智徳昌,川邊武俊,「ビークル制御」,槇書店,2004年1月20日,第3章3.2節)等を適用して設定する。
次に、この車両挙動の目標値(車両前後方向力の目標値Fx**,車両横方向力の目標値Fy**,ヨーモーメントの目標値M**)を概ね実現する各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を演算する。図5上三段に破線で示したように車両挙動の目標値が変化したとき、これら各駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##の動きを示したのが、図5において下四段の破線である。すなわち、図5において下四段に示したように、t1のタイミングより、左前輪1の駆動力基本値Fx1##は小さくなる側へ、右前輪2の駆動力基本値Fx2##は大きくなる側へ、左後輪3の駆動力基本値Fx3##は小さくなる側へ、右後輪4の駆動力基本値Fx4##は大きくなる側へそれぞれ一定量だけ変化している。
そして、これら各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##で実現される車両挙動の基本値(車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##,ヨーモーメントの基本値M##)を、各輪1〜4の駆動力とタイヤ横力との非線形な関係を考慮した車両モデルを用いて求める。
これら各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##で実現される車両挙動の基本値(車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##,ヨーモーメントの基本値M##)を、図5において上から第3段目までに実線で重ねて示すと、図示のように、車両前後方向力の基本値Fx##の応答は車両前後方向力目標値Fx**より、車両横方向力の基本値Fy##の応答は車両横方向力目標値Fy**より、ヨーモーメントの基本値M##の応答はヨーモーメント目標値M**よりそれぞれ遅れることになる。
そこで、車両挙動の目標値(車両前後方向力の目標値Fx**,車両横方向力の目標値Fy**,ヨーモーメントの目標値M**)と、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##で実現される車両挙動の基本値(車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##,ヨーモーメントの基本値M##)との誤差(ΔFx,ΔFy,ΔM)を算出し、この車両挙動の誤差(ΔFx,ΔFy,ΔM)を補償する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を上記の式(20)や式(21)を用いて求める。
最後に、これら各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##に加算することにより、つまり次式により車両挙動の目標値(車両前後方向力の目標値Fx**,車両横方向力の目標値Fy**,ヨーモーメントの目標値M**)を実現する各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を求めることができる。
Fx1**=Fx1##+ΔFx1 …(補3a)
Fx2**=Fx2##+ΔFx2 …(補3b)
Fx3**=Fx3##+ΔFx3 …(補3c)
Fx4**=Fx4##+ΔFx4 …(補3d)
これら各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を、図5において下四段に実線で重ねて示すと、図示のように、左前輪1の駆動力目標値Fx1**は左前輪1の駆動力基本値Fx1##より、右前輪2の駆動力目標値Fx2**は右前輪2の駆動力基本値Fx2##より、左後輪3の駆動力目標値Fx3**は左後輪3の駆動力基本値Fx3##より、右前輪4の駆動力目標値Fx4**は右後輪4の駆動力基本値Fx4##より、それぞれ進んでおり、フィードフォワード制御が可能となっていることがわかる。
これが本発明の骨子であり、以上の理論的背景を踏まえて実施形態の詳細を説明する。
コントローラ8で実行されるこの制御を以下のフローチャートを参照して詳述する。
図6、図7はモータ1〜4へのトルク配分制御を実行するためのもので、操作の手順を記載している。一定時間毎に実行するものではない。
ステップ10では、車輪速センサ21〜24で各輪1〜4の回転速度ω1,ω2,ω3,ω4[rad/s]をそれぞれ検出し、各輪1〜4の半径Rを乗じて各車輪速度V1,V2,V3,V4[m/s]を求めると共に、車両速度V[m/s]を次の式(22)により算出する。
V=(V1+V2+V3+V4)÷4 …(22)
また、アクセルストロークセンサ26によってアクセルペダル6の踏込量AP[%]を、ブレーキストロークセンサ27によってブレーキペダル7の踏込量BP[%]を、ステアリング角センサ25によってステアリング5の回転角θ[rad]を、加速度センサ100によって車両の前後方向加速度αx[m/s2]と横方向加速度αy[m/s2]を、ヨーレートセンサ101によってヨーレートγ[rad/s]を、舵角センサ41〜44によって各車輪1〜4の舵角δ1,δ2,δ3,δ4をそれぞれ検出する。
ここで、車両速度V及び各輪速度V1〜V4は車両前進方向を正とし、ステアリングの回転θは反時計回りを正とし、αxは車両が前方に加速する方向を正とし、αyは車両が左旋回時に車両重心位置から旋回中心に向かう方向を正とし、γは車両を鉛直上方からみたときに反時計回りを正とする。各輪1〜4の舵角δ1,δ2,δ3,δ4は、前述したように各輪1〜4の向きが車体前後方向と一致している状態をゼロとし、車両を鉛直上方からみたときに反時計回りを正とする。
本実施形態では、前輪1,2の舵角δ1,δ2をδ1=δ2=θ/16とし、後輪3,4の舵角δ3,δ4をδ3=δ4=0とする。このような場合には、コンプライアンスステアやロールステア等、サスペンションの影響を考慮して各輪1〜4の舵角を補正できるようにするとなお良い。なお、舵角センサを持たない車両ではステアリング5の回転角θから各輪1〜4の舵角を求めるようにすればよい。
ステップ20では、各輪1〜4の横すべり角β1,β2,β3,β4[rad]を推定する。各輪1〜4の横滑り角(スリップ角ともいう)とは、車両の進行方向とタイヤの前後方向のなす現時点における車輪のスリップ角(現状スリップ角)のことである。推定方法については種々あるが、ここでは一例として次の方法を用いる(特開平10-329689号公報参照)。
即ち、ステップ10で読み込んだ横方向加速度αy、ヨーレートγ及び車両速度Vから車体横滑り角βをまず推定する。その上で、この車体横滑り角β,ヨーレートγ,車両速度V,操舵角θから各輪1〜4の横滑り角β1,β2,β3,β4を推定する。具体的には先ず、車体横滑り角β[rad]を次の式(補4)により算出する。
β=∫(Yg/V−γ)dt …(補4)
なお、(補4)式の求心加速度Ygとして横方向加速度αyを入れている。
次いで、前輪1,2の横滑り角β1,β2を次の式(補5)により及び後輪3,4の横滑り角β3,β4を次の式(補6)によりそれぞれ算出する。
β1=β2=β+θ/Gs−γ×Lf/V …(補5)
β3=β4=β+γ×Lr/V …(補6)
式(補5)のGsはステアリングギヤ15のギヤ比である。
各輪1〜4の横滑り角β1,β2,β3,β4の符号は、各輪1〜4の前後方向から車輪速度の方向までの角度が鉛直上方から見て反時計回りになっている場合を正とする。車体横滑り角βの符号も、各輪1〜4の横滑り角β1,β2,β3,β4の符号と同様である。
また、ステップ20においては各輪1〜4の輪荷重W1,W2,W3,W4[N]を次の式(23)〜式(26)により算出する。
W1=mgLr/2Ll−mhαx/2Ll−mhαy/2Lt …(23)
W2=mgLr/2Ll−mhαx/2Ll+mhαy/2Lt …(24)
W3=mgLf/2Ll+mhαx/2Ll−mhαy/2Lt …(25)
W4=mgLf/2Ll+mhαx/2Ll+mhαy/2Lt …(26)
式(23)〜式(26)においてmは車両の質量[kg]、hは車両の重心高さ[m]、gは重力加速度[m/s2]である。前述のように、Lrはヨー回転方向の車両重心位置から後輪車軸までの距離[m]、Ltは前後輪のトレッド長さ[m]、Llはホイールベース長さ[m]である。各輪1〜4の輪荷重W1,W2,W3,W4の算出方法(推定方法)は特開2002−211378公報に記載されており、ここでは当該公報に従って求めている。なお、荷重センサを配して各輪1〜4の輪荷重W1,W2,W3,W4を検出するようにしてもかまわない。
さらにステップ20においては各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4[無名数]を推定する。推定方法については種々あるが、ここでは一例として次の方法(特開平6−98418号公報参照)を用いる。この方法は、各車輪1〜4が路面から受ける路面反力F1,F2,F3,F4を推定し、この路面反力F1,F2,F3,F4とステップ20で求めた輪荷重W1,W2,W3,W4とから各車輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4を推定するものである。
簡単に概説すると、一輪についてモータに電磁トルクTmが加えられ、車輪には路面反力Fに車輪半径Rを乗じた路面反力トルクF×Rがモータによるトルクと逆方向に加えられているとする。そして、モータと車輪とは直結状態であり、車軸のねじり剛性κが十分に大きいと仮定でき(車軸のねじり変形を無視する)、モータの回転速度と車輪の回転速度とは同一の回転速度ω[rad/s]であるとの関係が成り立つとすると、モータと車輪との回転系の運動方程式は次の式(補7)にまとめることができる。
(Jm+Jw)dω/dt=Tm−Cmw・ω−Rmw・ω−F・R …(補7)
式(補7)のJmはモータの慣性モーメント、Jwは車輪の慣性モーメント、Cmwは車輪の回転系の粘性減衰定数、Rmwは車輪の回転系の個体摩擦である。
その結果、路面反力Fを、上記の式(補7)を変形した次の式(補8)より算出することができる。
F={Tm−(Jm+Jw)dω/dt−Cmw・ω−Rmw・ω}/R
…(補8)
従って、この式(補8)を用いて、各輪1〜4についての路面反力F1,F2,F3,F4を次の式(補9a)〜式(補9d)により算出する。
F1={Tm−(Jm+Jw)dω1/dt−Cmw・ω1−Rmw・ω1}/R
…(補9a)
F2={Tm−(Jm+Jw)dω2/dt−Cmw・ω2−Rmw・ω2}/R
…(補9b)
F3={Tm−(Jm+Jw)dω3/dt−Cmw・ω3−Rmw・ω3}/R
…(補9c)
F4={Tm−(Jm+Jw)dω4/dt−Cmw・ω4−Rmw・ω4}/R
…(補9d)
このようにして算出した各輪1〜4の路面反力F1,F2,F3,F4と、各輪1〜4の輪荷重W1,W2,W3,W4とにより、次の式(補10a)〜式(補10d)を用いて路面摩擦係数μ1、μ2、μ3、μ4を算出する。
μ1=F1/W1 …(補10a)
μ2=F2/W2 …(補10b)
μ3=F3/W3 …(補10c)
μ4=F4/W4 …(補10d)
ステップ30では、車両前後方向力の静的目標値Fx*を次の式(23)により求める。
Fx*=Fax*+Fbx* …(23)
式(23)右辺第1項のFax*[N]はアクセルペダル6の踏込量AP及び車両速度Vに対応した目標駆動力を目標駆動力マップに基づいて、また右辺第2項のFbx*[N]はブレーキペダル7の踏込量BPに対応した目標制動力を目標制動力マップに基づいてそれぞれ算出したものである。ここで、目標駆動力マップはアクセルペダル6の踏込量AP及び車両速度Vに対応する目標駆動力を、目標制動力マップはブレーキペダルの踏込量BPに対応する目標制動力をそれぞれコントローラ8のROMに予め記憶させておいたものであり、目標駆動力Fa*、目標制動力Fb*はそれぞれ例えば図8及び図9のように設定している。
車両前後方向力の静的目標値Fx*,目標駆動力Fax*,目標制動力Fbx*はいずれも車両を前方に加速させる向きを正とする。従って、目標制動力Fbx*はゼロまたは負の値となっている。
ステップ40では、車両横方向力の静的目標値Fy*を、目標駆動力と目標制動力の和である車両前後方向力の静的目標値Fx*と、ステアリング5の回転角θと、車両速度Vとから、車両横方力静的目標値マップに基づいて設定する。同じく、ヨーレートの静的目標値γ*を、車両前後方向力の静的目標値Fx*とステアリング5の回転角θと車両速度Vとから、ヨーレート静的目標値マップに基づいて設定する。
ここで、車両横方力静的目標値マップは、車両前後方向力の静的目標値Fx*と、ステアリング5の回転角θと、車両速度Vとに対応する車両横方向力の静的目標値Fy*をコントローラ8のROMに予め記憶させておいたものであり、車両横方向力の静的目標値Fy*は例えば図10のように設定している。同様にして、ヨーレート静的目標値マップは、車両前後方向力の静的目標値Fx*と、ステアリング5の回転角θと、車両速度Vとに対応するヨーレートの静的目標値γ*をコントローラ8のROMに予め記憶させておいたものであり、ヨーレートの静的目標値γ*は例えば図11のように設定している。
図10及び図11には、車両前後方向力の静的目標値Fx*が小さい場合を左側に、車両前後方向力の静的目標値Fx*が大きい場合を右側に示している。
図10、図11の各左側に示したように、ステアリングの回転角θが正の値で同じであれば、車両速度Vが大きくなるほど車両横方向力の静的目標値Fy*、ヨーレートの静的目標値γ*が正の値で大きくなり、これに対してステアリングの回転角θが負の値で同じであれば、車両速度Vが大きくなるほど車両横方向力の静的目標値Fy*、ヨーレートの静的目標値γ*が負の値で大きくなっている。また、車両速度Vが同じであれば、ステアリングの回転角θが正の値で大きくなるほど車両横方向力の静的目標値Fy*、ヨーレートの静的目標値γ*が正の値で大きくなり、これに対してステアリングの回転角θが負の値で大きくなるほど車両横方向力の静的目標値Fy*、ヨーレートの静的目標値γ*が負の値で大きくなっている。
さらに、車両速度V及びステアリングの回転角θが同じでも、その回転角θが正の条件では、図10、図11の各右側に示す車両前後方向力の静的目標値Fx*が大きい場合のほうが、図10、図11の各左側に示す車両前後方向力の静的目標値Fx*が小さい場合より車両横方向力の静的目標値Fy*、ヨーレートの静的目標値γ*が共に正の値で小さくなり、これに対して、回転角θが負の条件では、図10、図11の各右側に示す車両前後方向力の静的目標値Fx*が大きい場合のほうが、図10、図11の各左側に示す車両前後方向力の静的目標値Fx*が小さい場合より車両横方向力の静的目標値Fy*、ヨーレートの静的目標値γ*が共に負の値で小さくなっている。
なお、図10及び図11では、車両前後方向力の静的目標値Fx*が小さい場合と、車両前後方向力の静的目標値Fx*が大きい場合の2つの場合で代表させているが、実際には車両前後方向力の静的目標値Fx*のパラメータの数だけの車両横方向力静的目標値マップ及びヨーレート静的目標値マップが用意されている。例えば、車両前後方向力の静的目標値Fx*のパラメータが最小値から最大値まで合計50個あるとすれば、各マップとも50個あるということである。
上記2つのマップ(車両横方力静的目標値マップ及びヨーレート静的目標値マップ)の設定方法は後述するステップ50のところでまとめて説明する。
ステップ50では、各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*を、ステアリングの回転角θ,車両速度V,車両前後方向力の静的目標値Fx*から、駆動力静的目標値マップに基づいて設定する。
ここで、駆動力静的目標値マップは、車両前後方向力の静的目標値Fx*と、ステアリング5の回転角θと、車両速度Vとに対応する各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*をコントローラ8のROMに予め記憶させておいたものであり、各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*は例えば図12のように設定している。
図12において、車両前後方向力の静的目標値Fx*が小さい場合(緩加速時)を中央の列に、車両前後方向力の静的目標値Fx*が大きい場合(急加速時)を右側の列に示しており、車両速度V及びステアリングの回転角θが同じでも、図12右側の列に示す車両前後方向力の静的目標値Fx*が大きい場合のほうが、図12中央の列に示す車両前後方向力の静的目標値Fx*が小さい場合より各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*の各値が正の値で大きくなっている。
また、車両前後方向力の静的目標値Fx*が負の場合(つまり制動時)を図12の左側の列に示しており、図12左側の列に示す車両前後方向力の静的目標値Fx*が負の場合になると、各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*も負の値になっている。
なお、図12では、車両前後方向力の静的目標値Fx*が負の場合と、車両前後方向力の静的目標値Fx*が小さい場合と、車両前後方向力の静的目標値Fx*が大きい場合の3つの場合で代表させているが、実際には車両前後方向力の静的目標値Fx*のパラメータの数だけの駆動力静的目標値マップが用意されている。例えば、車両前後方向力の静的目標値Fx*のパラメータが最小値から最大値まで合計50個あるとすれば、駆動力静的目標値マップも50×4個あるということである。
ここで、この駆動力配分静的目標値マップと、ステップ40で用いた車両横方力静的目標値マップ及びヨーレート静的目標値マップの求め方について、まとめて述べることとする。
四輪1〜4の駆動力和Fxall[N],左右輪の駆動力差ΔFxall[N],前輪駆動力配分η[無名数],左右輪駆動力差の前輪配分Δη[無名数]を次の式(24)〜式(27)により定義する。
Fxall=Fx1+Fx2+Fx3+Fx4 …(24)
ΔFxall=(Fx2+Fx4)−(Fx1+Fx3) …(25)
η=(Fx1+Fx2)/Fxall …(26)
Δη=(Fx2−Fx1)/Fxall …(27)
ただし、本実施形態では、式(26)、式(27)の前輪駆動力配分η及び左右輪駆動力差の前輪配分Δηは常に0.6(前輪1,2への配分を6割)とする。
そして、本車両が採り得る四輪1〜4の駆動力和Fxall,左右輪の駆動力差ΔFxall,ステアリング5の角度θ,車両前後方向力の静的目標値Fx*の4つのパラメータの組合せ全てに対して、次のようなシミュレーションあるいは実験を行い、駆動力静的目標値マップ,車両横方力静的目標値マップ,ヨーレート静的目標値マップを全て作成する。
まず最初に、四輪の駆動力和Fxall,左右輪の駆動力差ΔFxall,ステアリング角度θ,車両前後方向力の静的目標値Fx*の組み合わせの中から任意に一つを選択する。この選択した4つの各値を他と区別するため4つの各値Fxall,ΔFxall,θ,Fx*に「’」を添えると、選択された値はそれぞれ「Fxall’」,「ΔFxall’」,「θ’」,「Fx*’」となる。
こうして選択された4つの値のうちの2つの値(駆動力和Fxall’と左右輪の駆動力差ΔFxall’)から、各輪1〜4の駆動力値Fx1,Fx2,Fx3,Fx4(これらにも「’」を添えて「Fx1’」,「Fx2’」,「Fx3’」,「Fx4’」とする)を次の式(28)〜式(31)により設定する。
Fx1’=Fxall’×η/2−ΔFxall’×Δη/2 …(28)
Fx2’=Fxall’×η/2+ΔFxall’×Δη/2 …(29)
Fx3’=Fxall’×(1−η)/2−ΔFxall’×(1−Δη)/2
…(30)
Fx4’=Fxall’×(1−η)/2+ΔFxall’×(1−Δη)/2
…(31)
また、選択された値であるθ'から前輪1,2の舵角をδ1’=δ2’=θ’/16(ステアリングギア比は1/16)とする。
こうして設定された駆動力値Fx1’,Fx2’,Fx3’,Fx4’と、選択された前輪舵角δ1’,δ2’(後輪3,4の舵角δ3,δ4はゼロ)とで図1の車両を走行させ、かつ−Fx*’を車両重心位置において車両前後方向に加える実験やシミュレーションを実行する。そして、十分時間が経過し車両速度が一定(定常状態)になったときの車両速度V,車両横方向力Fy,ヨーレートγを求める。こうして求めたV,Fy,γにも「’」を添えて、「V’」,「Fy’」,「γ’」とする。
この1回の実験やシミュレーションによって、1つの状態を表すθ’,V’,Fy’,γ’,Fx1’,Fx2’,Fx3’,Fx4’の組み合わせが得られる。
このようにして、1回目に実験やシミュレーションを行って得た車両速度V’,ステアリングの回転角θ’,車両前後方向力Fx’,車両横方向力Fy’,ヨーレートγ’,各輪1〜4の駆動力値Fx1’,Fx2’,Fx3’,Fx4’を、駆動力静的目標値マップ,車両横方力静的目標値マップ,ヨーレート静的目標値マップの車両速度V,ステアリングの回転角θ,車両前後方向力の静的目標値Fx*,車両横方向力の静的目標値Fy*,ヨーレートの静的目標値γ*,各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*として設定する。
次に、四輪の駆動力和Fxall,左右輪の駆動力差ΔFxall,ステアリング角度θ,車両前後方向力の静的目標値Fx*の組み合わせの中から任意に、前記選択した組合せとは異なる他の一つを選択し、上記と同様の2回目の操作を行うことによって、他の1つの状態を表すθ’,V’,Fy’,γ’,Fx1’,Fx2’,Fx3’,Fx4’の組み合わせが得られる。このようにして、2回目の実験やシミュレーションを行って得た車両速度V’,ステアリングの回転角θ’,車両前後方向力Fx’,車両横方向力Fy’,ヨーレートγ’,各輪1〜4の駆動力値Fx1’,Fx2’,Fx3’,Fx4’を、駆動力静的目標値マップ,車両横方力静的目標値マップ,ヨーレート静的目標値マップの車両速度V,ステアリングの回転角θ,車両前後方向力の静的目標値Fx*,車両横方向力の静的目標値Fy*,ヨーレートの静的目標値γ*,各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*として設定する。
同様にして、実験やシミュレーションを任意の残りの組合せに対して次々と行って、他の1つの状態を表すθ’,V’,Fy’,γ’,Fx1’,Fx2’,Fx3’,Fx4’の組み合わせを得ていくと共に、このようにして得た車両速度V’,ステアリングの回転角θ’,車両前後方向力Fx’,車両横方向力Fy’,ヨーレートγ’,各輪1〜4の駆動力値Fx1’,Fx2’,Fx3’,Fx4’を、駆動力静的目標値マップ,車両横方力静的目標値マップ,ヨーレート静的目標値マップの車両速度V,ステアリングの回転角θ,車両前後方向力の静的目標値Fx*,車両横方向力の静的目標値Fy*,ヨーレートの静的目標値γ*,各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*として設定してゆく。
こうして、本車両が採り得る四輪1〜4の駆動力和Fxall,左右輪の駆動力差ΔFxall,ステアリング5の角度θ,車両前後方向力の静的目標値Fx*の4つのパラメータの組合せの全てに対してシミュレーションあるいは実験を行うことで、駆動力静的目標値マップ,車両横方力静的目標値マップ,ヨーレート静的目標値マップの設定が全て完了する。
なお、実験あるいはシミュレーションを行う場合には、空気抵抗や転がり抵抗等の走行抵抗要素を除外するようにして行うと共に、シミュレーション上で実行する場合には各輪1〜4について駆動力とタイヤ横力等の非線形性を十分考慮した車両モデルを用いて行う。
ステップ60では、車両前後方向力の動的目標値Fx**,車両横方向力の動的目標値Fy**,ヨーレートの動的目標値γ**を、各輪1〜4の駆動力配分で実現可能な範囲でドライバーの操縦性が好適となるように各静的目標値Fx*,Fy*,γ*に対してなまし処理を行うことによって求める。本実施形態では車両前後方向力の静的目標値Fx*については2次遅れの伝達関数を用いて、また車両横方向力の静的目標値Fy*及びヨーレートの静的目標値γ*については1次遅れの伝達関数を用いてそれぞれなまし処理を行うことによって、車両前後方向力の動的目標値Fx**,車両横方向力の動的目標値Fy**,ヨーレートの動的目標値γ**を得る。なお、特に車両横方向力の動的目標値Fy**及びヨーレートの動的目標値γ**の応答は、各輪1〜4のタイヤ力によって実現可能なものになるようになまし処理を行う。
さらにステップ60においては、求めたヨーレートの動的目標値γ**を微分し、車両のヨー慣性モーメントI[kg・m2]を乗じることによって、ヨーモーメントの動的目標値M**を求める。
ステップ70では、ステップ50で設定している各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*に基づいて、ステップで60で求めている車両挙動の動的目標値(Fx**,Fy**,γ**)を概ね実現する各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を、次の式(32)〜式(35)により求める。
Fx1##=Fxall##×η/2−ΔFxall##×Δη/2 …(32)
Fx2##=Fxall##×η/2+ΔFxall##×Δη/2 …(33)
Fx3##=Fxall##×(1−η)/2−ΔFxall##×(1−Δη)/2
…(34)
Fx4##=Fxall##×(1−η)/2+ΔFxall##×(1−Δη)/2
…(35)
式(32)〜式(35)の前輪駆動力配分η、左右輪駆動力差の前輪配分Δηは、ステップ50で説明したようにη=Δη=0.6である。
また、式(32)〜式(35)のFxall##は、ステップ60で車両前後方向力の静的目標値Fx*に対してなまし処理を行った値を車両前後方向力の動的目標値Fx**としたときと同じなまし処理を、各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*の和であるFx1*+Fx2*+Fx3*+Fx4*に対して実行した値である。
また、式(32)〜式(35)のΔFxall##は、車両を線形近似した線形2輪モデル(安部正人著,第2版,「自動車の運動と制御」,株式会社山海堂,平成15年4月10日,第3章3.2.1節)に左右輪駆動力差ΔFxall##が加わった場合を考え、この線形2輪モデルのヨーレートの応答がヨーレートの動的目標値γ**となるように設計したモデルフォロイング制御系(金井喜美雄,越智徳昌,川邊武俊著,「ビークル制御」,槇書店,2004年1月20日,第3章3.2節)を用い、かつ定常状態で各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*との間で偏差を生じないように補正した次の式(36)から求めている。
ΔFxall##={s2+(−a11−a22)s+(a11a22−A12a21)}
/{b22・s+(a21b11−a11b21)}×fr(s)
×{(a21b11−a11b21)θ/16+(−a11b22)ΔFxall#}
/{a11b22−a12a21}
−〔{b21・s+(a21b11−a11b21)}
/{b22・s+(−a11b22)}〕×θ/16
…(36)
式(36)のfr(s)は、ステップ60でヨーレートの静的目標値γ*に対してなまし処理を行ってヨーレートの動的目標値γ**を求めたときのなまし処理における伝達関数、Kf,Krは前輪及び後輪の横滑り角が十分小さいときの単位横滑り角あたりのコーナーリングフォース[N/rad]である。
また、式(36)の係数a11,a12,a21,a22,b11,b21,b22,ΔFxall#はそれぞれ次の値である。
a11=−(2/mV)(Kf+Kr) …(補4)
a12=−(2/mV2)(KfLf−KrLr)−1 …(補5)
a21=−(2/I)(KfLf−KrLr) …(補6)
a22=−(2/IV)(KfLf 2+KrLr 2) …(補7)
b11=2Kf/mV …(補8)
b21=2KfLf/I …(補9)
b22=Lt/2I …(補10)
ΔFxall#=(Fx2*+Fx4*)−(Fx1*+Fx3*) …(補11)
ステップ80では、ステップ70で得ている各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両挙動の基本値、つまり車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##,ヨーモーメントの基本値M##を次の式(37)〜式(39)によりそれぞれ求める。
Fx##=Fx1##+Fx2##+Fx3##+Fx4## …(37)
Fy##=Fy1##+Fy2##+Fy3##+Fy4## …(38)
M##={(Fx2##+Fx4##)−(Fx1##+Fx3##)}×Lt/2
+{(Fy1##+Fy2##)×Lf−(Fy3##+Fy4##)×Lr}
…(39)
式(38)のFy1##,Fy2##,Fy3##,Fy4##は、現在の車両状態で、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##が各輪1〜4に加わったときに発生するタイヤ横力である。
上記各輪1〜4のタイヤ横力Fy1##,Fy2##,Fy3##,Fy4##の設定方法として次に3つの方法を示す。
<1>各輪のタイヤ横力の設定方法1
これは、各輪の輪荷重や路面摩擦係数の違いを考慮しない場合の簡易な設定方法で、各輪1〜4の現在の横すべり角β1,β2,β3,β4に基づいて駆動力とタイヤ横力との関係を表すタイヤ特性マップから設定する。
例えば、左前輪1の場合を例にとって説明すると、左前輪1のタイヤ特性マップでは、図13のように左前輪1のタイヤ特性を設定している。すなわち、図13には、左前輪1の代表的な6つの横滑り角α1,α2,α3,α4,α5,α6(|α1|<|α2|<|α3|<|α4|<|α5|<|α6|)のときのタイヤ特性を重ねて示しており、横滑り角の絶対値が|α1|より|α4|へと大きくなるほど上方への膨らみが増した後に、|α5|、|α6|となれば今度は全体的に縮んでいる。従って、今かりに、左前輪1の横滑り角β1がα2であったとすれば、図13に示すタイヤ特性のうち上段のα2のタイヤ特性を選択し、その選択したタイヤ特性から左前輪1の駆動力基本値Fx1##に対応するタイヤ横力Fy1##を設定することができる。
残りの三輪2〜4についても同様に、各輪2〜4の横滑り角β2,β3,β4に対応したタイヤ特性を図13と同様に用意しておき、各輪2〜4の駆動力基本値Fx2##,Fx3##,Fx4##に対応するタイヤ横力Fy2##,Fy3##,Fy4##を、各輪2〜4毎のタイヤ特性のうち横滑り角β2,β3,β4のときのタイヤ特性を選択して設定する。
<2>各輪のタイヤ横力の設定方法2
これは、各輪の輪荷重または路面摩擦係数の違いを考慮する場合の設定方法(請求項6または7に記載の発明)で、各輪1〜4の現在の横すべり角β1,β2,β3,β4に基づくほか、ステップ20で求めている各輪1〜4の輪荷重W1,W2,W3,W4または各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4に基づいて、各輪1〜4についての駆動力とタイヤ横力との関係を表すタイヤ特性マップから設定する。
この場合のタイヤ特性マップでは、各輪1〜4毎に図14のようにタイヤ特性を設定している。ここでも、左前輪1の場合を例にとって説明すると、図14には左前輪1の路面摩擦係数μ1または輪荷重W1が小さい場合のタイヤ特性マップの内容を左側に、これに対して左前輪1の路面摩擦係数μ1または輪荷重W1が大きい場合のタイヤ特性マップの内容を右側に示しており、そのときの左前輪1の路面摩擦係数μ1または輪荷重W1に応じたいずれかのタイヤ特性マップを選択し、その選択した側のタイヤ特性マップから、左前輪1の横滑り角β1と、左前輪1の駆動力基本値Fx1##とに応じた左前輪1のタイヤ横力Fy1##を設定する。
残りの三輪2〜4についても同様である。すなわち、残り三輪2〜4の路面摩擦係数μ2,μ3,μ4または輪荷重W2,W3,W4が小さい場合のタイヤ特性マップの内容は図14左側と同様の特性となり、これに対して残り三輪2〜4の路面摩擦係数μ2,μ3,μ4または輪荷重W2,W3,W4が大きい場合のタイヤ特性マップの内容は図14右側と同様の特性となるので、そのときの路面摩擦係数μ2,μ3,μ4または輪荷重W2,W3,W4に応じたタイヤ特性マップを選択し、その選択した側のタイヤ特性マップから、横滑り角β2,β3,β4と、駆動力基本値Fx2##,Fx3##,Fx4##とに応じたタイヤ横力Fy2##,Fy3##,Fy4##をそれぞれ設定する。
<3>各輪のタイヤ横力の設定方法3
これは、各輪の舵角の違いを考慮する場合の設定方法(請求項5に記載の発明)で、上記の式(37)〜式(39)において、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##,この駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##が各輪1〜4に加わったときに発生するタイヤ横力Fy1##,Fy2##,Fy3##,Fy4##を用いて、つまり次の式(40a)〜式(40d),式(41a)〜式(40d)により各輪1〜4の舵角分だけ回転変換した値を用いて、車両前後方向力Fx##,車両横方向力Fy##,ヨーモーメントM##を推定する。
Fx1##←Fx1##cosδ1−Fy1##sinδ1 …(40a)
Fx2##←Fx2##cosδ2−Fy2##sinδ2 …(40b)
Fx3##←Fx3##cosδ3−Fy3##sinδ3 …(40c)
Fx4##←Fx4##cosδ4−Fy4##sinδ4 …(40d)
Fy1##←Fx1##sinδ1+Fy1##cosδ1 …(41a)
Fy2##←Fx2##sinδ2+Fy2##cosδ2 …(41b)
Fy3##←Fx3##sinδ3+Fy3##cosδ3 …(41c)
Fy4##←Fx4##sinδ4+Fy4##cosδ4 …(41d)
ステップ90では、ステップ60で設定されている車両挙動の目標値と、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##で実現される車両挙動の基本値との誤差、つまり車両前後方向力の動的目標値Fx**と車両前後方向力の基本値Fx##との誤差ΔFx,車両横方向力の動的目標値Fy**と車両横方向力の基本値Fy##との誤差ΔFy,ヨーモーメントの動的目標値M**とヨーモーメントの基本値M##との誤差ΔMを次の式(42)〜式(44)によりそれぞれ求める。
ΔFx=Fx**−Fx## …(42)
ΔFy=Fy**−Fy## …(43)
ΔM=M**−M## …(44)
図7のステップ100では、この車両前後方向力の誤差ΔFx,車両横方向力の誤差ΔFy及びヨーモーメントの誤差ΔM、つまり車両挙動の誤差を補正する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を、車両前後方向力の誤差ΔFx,車両横方向力の誤差ΔFy,ヨーモーメントの誤差ΔMと、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##と、各輪1〜4の現在の横すべり角β1,β2,β3,β4とから、駆動力補正量マップを参照して求める。
ここで、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算する方法として次に6つの方法を示す。
<4>各輪の駆動力補正量の演算方法1
これは、各輪の舵角、輪荷重、路面摩擦係数の違いを全て考慮しない場合の簡易な演算方法で、上記の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を例えば図15のように設定しておく。
ここで、図15は駆動力補正量マップの内容を表すもので、駆動力補正量マップは、本車両が採り得る各輪1〜4の駆動力と横すべり角全ての組合せを抽出し、それぞれの組合せにおいて車両挙動の誤差ΔFx,ΔFy,ΔMと各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4との関係を予め実験あるいはシミュレーションで求めておいたものである。なお、シミュレーション上で求める場合には、設定された各輪1〜4の駆動力と横すべり角に基づいてステップ80で用いたタイヤ特性マップ(つまり図13のようなタイヤ特性のマップ)を参照して各輪1〜4のタイヤ横力を求め、上記の式(37)〜式(39)を用いて各輪1〜4の駆動力が変化する前後の車両挙動(車両前後方向力Fx##,車両横方向力Fy##,ヨーモーメントM##)の変化を求める。
従って、図15のようなマップの形で持たせる場合には、図15のようなマップを本車両が採り得る各輪1〜4の駆動力と横すべり角全ての組合せに対して持たせておく。
図15において、車両前後方向力の誤差ΔFxが小さい場合を左側の列に、これに対して車両前後方向力の誤差ΔFxが大きい場合を右側の列に示しており、図15左側の列に示す車両前後方向力の誤差ΔFxが小さい場合において車両横方向力の誤差ΔFyが同じであれば、ヨーモーメントの誤差ΔMが大きくなるほど前輪1,2の駆動力補正量ΔFx1及びΔFx2が大きくなり、かつ後輪3,4の駆動力補正量ΔFx3,ΔFx4が小さくなっている。また、図15左側の列に示す車両前後方向力の誤差ΔFxが小さい場合においてヨーモーメントの誤差ΔMが同じであれば、車両横方向力の誤差ΔFyが負の値で大きくなるほど、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4が大きくなり、これに対して車両横方向力の誤差ΔFyが正の値で大きくなるほど、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4が小さくなっている。さらに、図15右側の列に示す車両前後方向力の誤差ΔFxが大きい場合になると、図15左側の列に示す車両前後方向力の誤差ΔFxが小さい場合よりも各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の採り得る幅が広がっている。
なお、図15では、車両前後方向力の誤差ΔFxが小さい場合と、車両前後方向力の誤差ΔFxが大きい場合の2つの場合で代表させているが、実際には車両前後方向力の誤差ΔFxの数だけの駆動力補正量マップが用意されている。
<5>各輪の駆動力補正量の演算方法2
これは、各輪の舵角の違いを考慮する場合の演算方法(請求項5に記載の発明)で、各輪1〜4の舵角δ1,δ2,δ3,δ4の採り得る組合せ全てに対しても、それぞれ車両挙動の誤差ΔFx,ΔFy,ΔMと各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4との関係を予め実験あるいはシミュレーションで求めておくと共にマップ化して持たせておく。
<6>各輪の駆動力補正量の演算方法3
これは、各輪の輪荷重の違いを考慮する場合の演算方法(請求項6に記載の発明)で、各輪1〜4の輪荷重W1,W2,W3,W4の採り得る組合せ全てに対しても、それぞれ車両挙動の誤差ΔFx,ΔFy,ΔMと各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4との関係を予め実験あるいはシミュレーションで求めておくと共にマップ化して持たせておく。
<7>各輪の駆動力補正量の演算方法4
これは、各輪の路面摩擦係数の違いを考慮する場合の演算方法(請求項7に記載の発明)で、各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4の採り得る組合せ全てに対しても、それぞれ車両挙動の誤差ΔFx,ΔFy,ΔMと各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4との関係を予め実験あるいはシミュレーションで求めておくと共にマップ化して持たせておく。
<8>各輪の駆動力補正量の演算方法5
図17に示すフローチャートに従って各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4をそれぞれ求める(請求項3に記載の発明)。図17に示すフローによる各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の求め方については後述する。
<9>各輪の駆動力補正量の演算方法6
図18に示すフローチャートに従って各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4をそれぞれ求める(請求項4に記載の発明)。図18に示すフローによる各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の求め方については後述する。
図7のステップ110では、ステップ100で求めている各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4と、図6のステップ70で推定している各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##との和を各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**として、つまり次の式(補12a)〜式(補12d)により、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を算出する。
Fx1**=Fx1##+ΔFx1 …(補12a)
Fx2**=Fx2##+ΔFx2 …(補12b)
Fx3**=Fx3##+ΔFx3 …(補12c)
Fx4**=Fx4##+ΔFx4 …(補12d)
図7のステップ120では、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を各輪1〜4の半径Rで除した値を、各輪1〜4のモータ11〜14が出力するように制御を行う。
ここで、本実施形態(第1実施形態)の作用効果を説明する。
本実施形態(請求項1に記載の発明)では、車両の車両前後方向力Fxの目標値Fx**,車両横方向力Fyの目標値Fy**,ヨーモーメントMの目標値M**を車両挙動目標値として決定し(図6のステップ50参照)、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を設定し(図6のステップ70参照)、この設定された各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##,ヨーモーメントの基本値M##を車両挙動の基本値として演算し(図6のステップ80参照)、前記車両挙動の目標値Fx**,Fy**,M**とこの演算された車両挙動の基本値Fx##,Fy##,M##との誤差ΔFx,ΔFy,ΔMを車両挙動の誤差として演算し(図6のステップ90参照)、この演算された車両挙動の誤差ΔFx,ΔFy,ΔMを小さくする各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算し(図7のステップ100参照)、前記駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##とこの演算された各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4との和で各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を決定し(図7のステップ110参照)、この決定された各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**が得られるように各輪1〜4の駆動力を制御する(図7のステップ120参照)ように構成している。
このように、本実施形態(請求項1に記載の発明)によれば、各輪についての駆動力とタイヤ横力との非線形な関係を考慮しながら、車両前後方向加速度、車両横方向加速度、ヨー角加速度の目標値を実現する各輪の駆動力目標値をフィードフォワードで求めているので、各輪についての駆動力変化に対するタイヤ横力の変化が、各輪の横すべり角や各輪の輪荷重等によって非線形な変化となることがあっても、ヨーレートや車両横方向加速度を所望の応答とすることが可能であり、これにより、ドライバーの操縦性が向上するとともに、所望のヨーレートや車両横方向加速度を得ることができないという不快感を低減できる。
各輪1〜4の駆動力変化に対する車両前後方向力の感度Kix,各輪1〜4の駆動力の変化に対する車両横方向力の感度Kiy,各輪1〜4の駆動力の変化に対するヨーモーメントの感度KiM及びタイヤ力の車両横方向力は各輪1〜4の舵角δ1,δ2,δ3,δ4によって変化するため、各輪1〜4の舵角δ1,δ2,δ3,δ4が一定であるとして各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算したのでは、当該駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4に誤差が生じるのであるが、本実施形態(請求項5に記載の発明)によれば、各輪1〜4の舵角δ1,δ2,δ3,δ4を検出する舵角センサ41〜44(舵角検出手段)を備え、車両挙動基本値演算手段が、この検出された各輪の舵角δ1,δ2,δ3,δ4に基づいて車両挙動の基本値Fx##,Fy##,M##を演算し、また駆動力補正量演算手段が、この検出された各輪1〜4の舵角δ1,δ2,δ3,δ4に基づいて前記駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算するので、各輪1〜4の舵角δ1,δ2,δ3,δ4が相違しても各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を正確に求めることができる。
各輪1〜4の駆動力変化に対する車両前後方向力の感度Kix,各輪1〜4の駆動力の変化に対する車両横方向力の感度Kiy,各輪1〜4の駆動力の変化に対するヨーモーメントの感度KiM及び車両横方向の運動に主たる影響を及ぼすタイヤ力の車両横方向力は各輪1〜4の輪荷重W1,W2,W3,W4によって変化するため、各輪1〜4の輪荷重W1,W2,W3,W4が一定であるとして各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算したのでは、当該駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4に誤差が生じるのであるが、本実施形態(請求項6に記載の発明)によれば、各輪1〜4の輪荷重W1,W2,W3,W4を推定または検出する輪荷重推定・検出手段を備え、車両挙動基本値演算手段が、この推定または検出された各輪1〜4の輪荷重W1,W2,W3,W4に基づいて前記車両挙動の基本値Fx##,Fy##,M##を演算し、また駆動力補正量演算手段が、この推定または検出された各輪1〜4の輪荷重W1,W2,W3,W4に基づいて各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算するので、各輪1〜4の輪荷重W1,W2,W3,W4が相違しても各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を正確に求めることができる。
各輪1〜4の駆動力変化に対する車両前後方向力の感度Kix,各輪1〜4の駆動力の変化に対する車両横方向力の感度Kiy,各輪1〜4の駆動力の変化に対するヨーモーメントの感度KiM及び車両横方向の運動に主たる影響を及ぼすタイヤ力の車両横方向力は各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4によって変化するため、各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4が一定であるとして各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算したのでは、当該駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4に誤差が生じるのであるが、本実施形態(請求項7に記載の発明)によれば、各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4を推定する路面摩擦係数推定手段を備え、車両挙動基本値演算手段が、この推定された各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4に基づいて車両挙動の基本値Fx##,Fy##,M##を演算し、また駆動力補正量演算手段が、この推定された各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4に基づいて各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算するので、各輪1〜4の路面摩擦係数μ1,μ2,μ3,μ4が相違しても各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を正確に求めることができる。
図16は第2実施形態のフローチャートで、第1実施形態の図6、図7においてステップ80からステップ110までに置き換わるものである。
図16においてステップ200、210の操作は図6のステップ80、90と同じである。すなわち、ステップ200で各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両挙動の基本値(車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##,ヨーモーメントの基本値M##)を推定し、ステップ210では車両挙動の目標値(車両前後方向力の動的目標値Fx**,車両横方向力の動的目標値Fy**,ヨーモーメントの動的目標値M**)と、ステップ200で求めている車両挙動の基本値(車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##,ヨーモーメントの基本値M##)との誤差ΔFx,ΔFy,ΔMを求める。
ステップ220では、車両前後方向力の誤差ΔFxの絶対値|ΔFx|,車両横方向力の誤差ΔFyの絶対値|ΔFy|が共に所定値(例えば10[N])以下でありかつヨーモーメントの誤差ΔMの絶対値|ΔM|が所定値(例えば10[Nm])以下であるか否かをみる。車両前後方向力の誤差ΔFxの絶対値|ΔFx|,車両横方向力の誤差ΔFyの絶対値|ΔFy|が共に10[N]以下でありかつヨーモーメントの誤差ΔMの絶対値|ΔM|が10[Nm]以下であるときには車両挙動の誤差は無視できると判断しステップ250に進み、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**に入れる。つまり、Fx1**=Fx1##、Fx2**=Fx2##、Fx3**=Fx3##、Fx4**=Fx4##として図16のフローチャートを終了し、図7のステップ120に進む。
一方、そうでなければステップ220よりステップ230に進み、車両挙動の誤差ΔFx,ΔFy,ΔMを補正する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求める。
ここで、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算する方法として次に6つの方法を示す。ステップ230での操作は図7のステップ100と同じであり、従って求め方には次のように<10>〜<15>の6つの方法がある。
<10>各輪の駆動力補正量の演算方法1
これは、各輪の舵角、輪荷重、路面摩擦係数の違いを全て考慮しない場合の演算方法で、 上記<4>の方法と同じである。
<11>各輪の駆動力補正量の演算方法2
これは、各輪の舵角の違いを考慮する場合の演算方法で、上記<5>の方法と同じである(請求項5に記載の発明)。
<12>各輪の駆動力補正量の演算方法3
これは各輪の輪荷重の違いを考慮する場合の演算方法で、上記<6>の方法と同じである(請求項6に記載の発明)。
<13>各輪の駆動力補正量の演算方法4
これは、各輪の路面摩擦係数の違いを考慮する場合の演算方法で、上記<7>の方法と同じである(請求項7に記載の発明)。
<14>各輪の駆動力補正量の演算方法5
図17に示すフローチャートに従って各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4をそれぞれ求める(請求項3に記載の発明)。
<15>各輪の駆動力補正量の演算方法6
図18に示すフローチャートに従って各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4をそれぞれ求める(請求項4に記載の発明)。
ただし、上記<15>の方法の場合、つまり後述する図18に示すフローに従って各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求める場合、図18のステップ710において求めた係数D1,D2,D3,D4が全てゼロとなりステップ800において各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4がΔFx1=ΔFx2=ΔFx3=ΔFx4=0となったときには直ちに図16のフローを抜けて図7のステップ120に進む。
なお、ステップ230においては、車両挙動の誤差ΔFx,ΔFy,ΔMに対して、1より小さい係数ν(0<ν<1)を乗じた値νΔFx,νΔFy,νΔMをゼロとするような各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めるようにしても良い。
ステップ240では、ステップ230で求めている各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4と、図6のステップ70で求めている各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##とを加算して各輪1〜4の駆動力仮値Fx1###,Fx2###,Fx3###,Fx4###を、つまり次の式(補13a)〜式(補13d)により各輪1〜4の駆動力仮値Fx1###,Fx2###,Fx3###,Fx4###を求め、ステップ250でこの駆動力仮値Fx1###,Fx2###,Fx3###,Fx4###を再び各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##に置き直す。
Fx1###←Fx1##+ΔFx1、 …(補13a)
Fx2###←Fx2##+ΔFx2、 …(補13b)
Fx3###←Fx3##+ΔFx3、 …(補13c)
Fx4###←Fx4##+ΔFx4、 …(補13d)
つまり、各駆動力補正量だけ大きくした仮値を改めて各輪1〜4の駆動力基本値に置き直し、ステップ200に戻ってステップ200、210、220の操作を実行する。ステップ220で|ΔFx|≦10,|ΔFy|≦10かつ|ΔM|≦10が成立しない場合には、ステップ230、240、250の操作を行って各駆動力補正量だけ大きくした仮値を改めて各輪1〜4の駆動力基本値に置き直し、ステップ200に戻ってステップ200、210、220の操作を実行する。このようにして、各駆動力補正量ずつ各輪1〜4の駆動力基本値を大きくしてゆけばやがて、ステップ220で|ΔFx|≦10,|ΔFy|≦10かつ|ΔM|≦10が成立するので、ステップ260に進んで各輪1〜4の駆動力基本値を各輪1〜4の駆動力目標値として設定する。なお、ステップ220よりステップ230〜250へと進んだ後にステップ200〜220の操作を行い、最終的にステップ260へと抜ける操作は一瞬にして行われる。
このように、第2実施形態(請求項2に記載の発明)によれば、駆動力目標値決定手段が、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4と、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##との和を各輪1〜4の駆動力仮値Fx1###,Fx2###,Fx3###,Fx4###として演算し(図16のステップ240)、この演算された各輪1〜4の駆動力仮値Fx1###,Fx2###,Fx3###,Fx4###によって実現する車両前後方向力の基本値Fx###,車両横方向力の基本値Fy###,ヨーモーメントの基本値M###を車両挙動の基本値として再び演算し(図16のステップ250、200)、車両挙動の目標値Fx**,Fy**,M**とこの再び演算された車両挙動の基本値Fx###,Fy###,M###との誤差ΔFx#,ΔFy#,ΔM#を車両挙動の誤差として再び演算し(図16のステップ210)、この再び演算された車両挙動の誤差ΔFx#,ΔFy#,ΔM#を小さくする各輪1〜4の駆動力補正量ΔFx1#,ΔFx2#,ΔFx3#,ΔFx4#を再び演算し(図16のステップ230)、前記駆動力仮値Fx1###,Fx2###,Fx3###,Fx4###とこの再び演算された各輪1〜4の駆動力補正量ΔFx1#,ΔFx2#,ΔFx3#,ΔFx4#との和を各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**として置き換えることにより車両挙動の誤差を補償する処理を行う(図16のステップ220、260)ので、より精度良く車両挙動の目標値Fx**,Fy**,M**を実現する各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を得ることができ、ドライバーの操縦性が向上するとともに、所望のヨーレートや車両横方向加速度を得ることができないという不快感を低減できる。
次に、図17のフローチャートを説明する。
これは、上記<8>と<14>の方法より、車両挙動の誤差ΔFx,ΔFy,ΔMを補正する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めるものである。
図17においてステップ500では、各輪1〜4についての駆動力変化に対する車両前後方向力の感度K1x,K2x,K3x,K4x[無名数],車両横方向力の感度K1y,K2y,K3y,K4y[無名数],ヨーモーメントの感度K1M,K2M,K3M,K4M[rad・m]を、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##と、各輪1〜4の現在の横すべり角β1,β2,β3,β4とから車両挙動感度マップを参照して求める。
ここで、車両挙動感度マップとは、車両前後方向力感度マップ、車両横方向力感度マップ、ヨーモーメント感度マップの3つのマップの総称であり、各輪1〜4毎にこれら3つのマップを有している。
この車両挙動感度マップは、本車両が採り得る各輪1〜4の駆動力と横すべり角βi全ての組み合せを抽出し、それぞれの組み合せにおいて、いずれか1輪の駆動力を微小量(例えば1[N])変化させたときの車両前後方向力の変化量,車両横方向力の変化量,ヨーモーメントの変化量を求め、それら各変化量に基づいてマップ化したものである。
ここで、左前輪1について具体的に上記3つのマップの各内容を図19に示すと、図19上段は各輪1〜4についての駆動力変化に対する車両前後方向力の感度K1x、図19中段は車両横方向力の感度K1y、図19下段はヨーモーメントの感度K1Mの各特性である。
図19上段に示したように、左前輪1の横滑り角β1の絶対値|β1|が一定であれば、左前輪1の駆動力基本値Fx1##が正の値で大きくなるほど車両前後方向力の感度K1xが正の値で大きくなり、これに対して左前輪1の駆動力基本値Fx1##が負の値で大きくなるほど車両前後方向力の感度K1xが負の値で大きくなっている。また、左前輪1の駆動力基本値Fx1##が一定の条件では、左前輪1の駆動力基本値Fx1##が正の領域で左前輪1の横滑り角β1の絶対値|β1|が大きくなるほど車両前後方向力の感度K1xが正の値で小さくなり、これに対して左前輪1の駆動力基本値Fx1##が負の領域で左前輪1の横滑り角β1の絶対値|β1|が大きくなるほど車両前後方向力の感度K1xが負の値で小さくなっている。
図19中段に示したように、車両横方向力の感度K1yの特性は左右対称であるので、左前輪1の駆動力基本値Fx1##が正の領域についてだけのべると、左前輪1の横滑り角β1が負の値で一定であれば、左前輪1の駆動力基本値Fx1##が大きくなるほど車両横方向力の感度K1yが正の値で小さくなり、これに対して左前輪1の横滑り角β1が正の値で一定であれば、左前輪1の駆動力基本値Fx1##が大きくなるほど車両横方向力の感度K1yが負の値で小さくなっている。さらに、左前輪1の駆動力基本値Fx1##が一定の条件では、左前輪1の横滑り角β1が負の値で大きくなるほど車両横方向力の感度K1yが正の値で大きくなり、これに対して左前輪1の横滑り角β1が正の値で大きくなるほど車両横方向力の感度K1yが負の値で大きくなっている。
図19下段に示したように、左前輪1の横滑り角β1の絶対値|β1|が一定であれば、左前輪1の駆動力基本値Fx1##が正の値で大きくなるほどヨーモーメント感度K1Mが負の値で大きくなり、これに対して左前輪1の駆動力基本値Fx1##が負の値で大きくなるほどヨーモーメントの感度K1Mが正の値で大きくなっている。また、左前輪1の駆動力基本値Fx1##が一定の条件では、左前輪1の駆動力基本値Fx1##が正の領域において左前輪1の横滑り角β1が正の値で大きくなるほどヨーモーメントの感度K1Mが負の値で小さくなり、これに対して左前輪1の駆動力基本値Fx1##が負の領域において左前輪1の横滑り角β1が正の値で大きくなるほどヨーモーメントの感度K1Mが正の値で小さくなっている。さらに、左前輪1の駆動力基本値Fx1##が一定の条件では、左前輪1の駆動力基本値Fx1##が正の領域において左前輪1の横滑り角β1が負の値で大きくなるほどヨーモーメントの感度K1Mが負の値で大きくなり、これに対して左前輪1の駆動力基本値Fx1##が負の領域において左前輪1の横滑り角β1が負の値で大きくなるほどヨーモーメントの感度K1Mが正の値で大きくなっている。
ステップ510では、各輪1〜4についての駆動力変化に対する車両前後方向力の感度Kix,車両横方向力の感度Kiy,ヨーモーメント感度KiMをベクトルで表した[Kix Kiy KiM]が互いに1次独立である3つの車輪の組み合わせを選ぶ。選び方は次のようにして行う。
まず、最初に左前輪1以外の残り三輪2〜4のベクトルを縦に並べた次の式(61)の行列K1を考え、この行列K1の行列式det|K1|がゼロでないならば、車輪の組み合わせを左前輪1以外の残り三輪2,3,4とし、フラグflgに1を設定する。
もしも、行列K1の行列式det|K1|がゼロならば、今度は右前輪2以外の残り三輪1,3,4のベクトルを縦に並べた行列K2を上記の式(61)と同様に考え、行列式det|K2|がゼロでないならば、車輪の組み合わせを右前輪2以外の残り三輪1,3,4とし、フラグflgに2を設定する。
そして、行列K2の行列式det|K2|がゼロならば、今度は左後輪3以外の残り三輪1,2,4のベクトルを縦に並べた行列K3を上記の式(61)と同様に考え、行列式det|K3|がゼロでないならば、左後輪3以外の残り三輪1,2,4とし、フラグflgに3を設定する。
ここで、さらに行列K3の行列式det|K3|がゼロならば、今度は右後輪4以外の残り三輪1,2,3のベクトルを縦に並べた行列K4を上記の式(61)と同様に考え、行列式det|K4|がゼロでないならば、右後輪4以外の残り三輪1,2,3とし、フラグflgに4を設定する。
4つの行列式det|K1|、det|K2|、det|K3|、det|K4|が全てゼロの場合には組み合わせ無しとしてフラグflgにゼロを設定する。
ステップ520では、ステップ510で設定しているフラグflgの値をみる。フラグflg=0である場合にはステップ540に進み、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を、ΔFx1=ΔFx2=ΔFx3=ΔFx4=0とする。
一方、フラグflg≠0である場合には、ステップ520よりステップ530に進み、ステップ510で設定しているフラグflgの値に基づいて、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めて、図17のフローを終了する。
ここで、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の求め方であるが、例えばフラグflg=1である場合には次の式(62)のように、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求める。
すなわち、式(62)のように、ステップ510で選択された行列K1が互いに1次独立である3つの車輪2,3,4の駆動力補正量ΔFx2,ΔFx3,ΔFx4を、車両挙動の誤差ΔFx,ΔFy,ΔMに行列K1の逆行列を乗じることで求め、選択されなかった左前輪1の駆動力補正量ΔFx1をゼロとする。
各輪1〜4の駆動力補正量は各輪1〜4についての駆動力変化に対する車両前後方向力の感度Kix,車両横方向力の感度Kiy,ヨーモーメントの感度KiMによって変化するため、これら各輪1〜4についての駆動力変化に対する車両前後方向力の感度Kix,車両横方向力の感度Kiy,ヨーモーメントの感度KiMが一定であるとして各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算したのでは、当該駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4に誤差が生じるのであるが、本実施形態(請求項3に記載の発明)によれば、各輪1〜4についての駆動力変化に対する車両前後方向力の感度Kix,車両横方向力の感度Kiy,ヨーモーメントの感度KiMを車両挙動変化の感度として演算する車両挙動変化感度演算手段を備え、駆動力補正量演算手段が、この演算された車両挙動変化の感度(Kix,Kiy,KiM)に基づいて、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算するので、各輪1〜4についての駆動力変化に対する車両前後方向力の感度Kix,車両横方向力の感度Kiy,ヨーモーメントの感度KiMが相違しても、現在の動作点周りにおいてより正確に各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めることができる。
次に、図18のフローチャートを説明する。
これは、上記<9>と<15>の方法により、車両挙動の誤差ΔFx,ΔFy,ΔMを補正する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めるものである。
図18においてステップ700では、各輪1〜4についての駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4を求める。
ここで、各輪についての駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4を推定する方法として次に3つの方法を示す。
<15>タイヤ横力の感度の推定方法1
これは、各輪の輪荷重、路面摩擦係数の違いを考慮しない場合の簡易な推定方法である。左前輪1の場合を例にとって説明すると、左前輪1の駆動力Fx1##+dFx1に対応するタイヤ横力Fy1##+dFy1を、ステップ80で用いた各輪1〜4の現在の横すべり角β1,β2,β3,β4のうち、左前輪1の横すべり角β1に基づいて、図4に示す駆動力とタイヤ横力との関係を表すタイヤ特性マップを参照して求め、次の式(71)に従って左前輪1のタイヤ横力の感度k1を求める。
k1=dFy1/dFx1 …(71)
左前輪1の駆動力補正量dFx1[N](dFx1>0)は、本車両の左前輪1が採り得る輪荷重と比較して十分微小な値とし、本実施形態では10[N]とする(残り三輪2〜4の駆動力補正量dFx2,dFx3,dFx4も同じ10[N]とする)。すなわち、左前輪1の駆動力基本値Fx1##が微小な駆動力補正量dFx1だけ変化したときの左前輪1のタイヤ横力基本値Fy1##の変化量dFy1を求めることによって、左前輪1の駆動力を基本値Fx1##としたときの駆動力変化に対するタイヤ横力の感度k1が上記の式(71)によって求まる。
残り三輪2〜4についても同様にして各輪2〜4についてのタイヤ横力の感度k2,k3,k4を求める。
<16>タイヤ横力の感度の推定方法2
これは、各輪の輪荷重の違いを考慮する場合の推定方である(請求項6に記載の発明)。
ただし、上記<15>の方法とは、用いるタイヤ特性マップが相違するだけである。つまり、一つの車輪について各輪荷重毎に、駆動力とタイヤ横力との関係を表すタイヤ特性マップを備えさせ(例えば図14のように輪荷重の相違で2つのタイヤ特性マップを備えさせる)、そのときの輪荷重に応じたタイヤ特性マップを選択し、その選択したタイヤ特性マップを用いてタイヤ横力の感度を推定する。
ここでも左前輪1の場合を例にとって説明すると、前記選択したタイヤ特性マップを用いて、左前輪1の駆動力基本値Fx1##が微小な駆動力補正量dFx1だけ変化したときの左前輪1のタイヤ横力基本値Fy1##の変化量dFy1を求めることによって、左前輪1の駆動力を基本値Fx1##としたときの駆動力変化に対するタイヤ横力の感度k1を求める。
<17>タイヤ横力の感度の推定方法3
これは、各輪の路面摩擦係数の違いを考慮する場合の推定方である(請求項7に記載の発明)。
ただし、上記<15>の方法とは、用いるタイヤ特性マップが相違するだけである。つまり、一つの車輪について各路面摩擦係数毎に、駆動力とタイヤ横力との関係を表すタイヤ特性マップを備えさせ(例えば図14のように路面摩擦係数の相違で2つのタイヤ特性マップを備えさせる)、そのときの路面摩擦係数に応じたタイヤ特性マップを選択し、その選択したタイヤ特性マップを用いてタイヤ横力の感度を推定する。
ここでも左前輪1の場合を例にとって説明すると、前記選択したタイヤ特性マップを用いて、左前輪1の駆動力基本値Fx1##が微小な駆動力補正量dFx1だけ変化したときの左前輪1のタイヤ横力基本値Fy1##の変化量dFy1を求めることによって、左前輪1の駆動力を基本値Fx1##としたときの駆動力変化に対するタイヤ横力の感度k1を求める。
ステップ710では、ステップ700で得ている各輪1〜4についてのタイヤ横力の感度k1,k2,k3,k4から各輪1〜4の舵角δ1,δ2,δ3,δ4をゼロとして、次の式(16a)〜式(19a)で表される係数D1,D2,D3,D4を求める。
D1=q2(p3q4−p4q3)Ll+p3(p2q4−p4q2)Lt …(16a)
D2=q1(p4q3−p3q4)Ll+p4(p3q1−p1q3)Lt …(17a)
D3=q4(p2q1−p1q2)Ll+p1(p4q2−p2q4)Lt …(18a)
D4=q3(p1q2−p2q1)Ll+p2(p1q3−p3q1)Lt …(19a)
式(16a)〜式(19a)の係数p1,p2,p3,p4,q1,q2,q3,q4は、次の値である。
p1=cosδ1−k1sinδ1 …(補14a)
p2=cosδ2−k2sinδ2 …(補14b)
p3=cosδ3−k3sinδ3 …(補14c)
p4=cosδ4−k4sinδ4 …(補14d)
q1=sinδ1+k1cosδ1 …(補15a)
q2=sinδ2+k2cosδ2 …(補15b)
q3=sinδ3+k3cosδ3 …(補15c)
q4=sinδ4+k4cosδ4 …(補15d)
ここで、式(16a)〜式(19a)は上記の式(16)〜式(19)と同じ式、また式(14a)〜式(15d)は、上記の式(補1)、式(補2)と同じ式である。
ステップ720では、ステップ710で求めている4つの係数D1,D2,D3,D4のうちから係数D1をみる。係数D1≠0であればステップ730に進み、各輪1〜4の舵角δ1,δ2,δ3,δ4をゼロとした次の式(20a)を用いて車両挙動の誤差ΔFx,ΔFy,ΔMを補償する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めて図18のフローを終了する。
式(20a)は、上記の式(14)を左前輪2の駆動力補正量ΔFx1を既知として解いた式、つまり上記の式(20)と同じものである。
ここで、式(20a)の任意定数χは、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の2乗和が最小となるように、次の式(72)により設定される値である。
χ=(D1E1+D2E2+D3E3+D4E4)
/(D1 2+D2 2+D3 2+D4 2)
…(72)
ステップ720で係数D1=0である場合にはステップ740に進み上記4つの係数の内から別の係数D4をみる。この別の係数D4≠0であればステップ750に進み、各輪1〜4の舵角δ1,δ2,δ3,δ4をゼロとした次の式(21a)を用いて車両挙動の誤差ΔFx,ΔFy,ΔMを補償する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めて図18のフローを終了する。
式(21a)は、上記の式(14)を右後輪4の駆動力補正量ΔFx4を既知として解いた式、つまり上記の式(21)と同じものである。
ここで、式(21a)中の任意定数χは、ステップ730と同様に各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の2乗和が最小となるように、次の式(73)により設定される値である。
χ=(D1G1+D2G2+D3G3+D4G4)
/(D1 2+D2 2+D3 2+D4 2)
…(73)
ステップ740で係数D4=0である場合にはステップ760に進み別の係数D2をみる。この別の係数D2≠0であればステップ770に進み、上記の式(14)を、右前輪2の駆動力補正量ΔFx2を既知として解いた式から、車両挙動の誤差ΔFx,ΔFy,ΔMを補償する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めて図18のフローを終了する。ただし、舵角δ1,δ2,δ3,δ4はゼロとする。
なお、上記右前輪2の駆動力補正量ΔFx2を既知として解いた式には上記の式(20a)及び式(21a)中の任意定数χに対応する値が出現するが、上記の式(20a)及び式(21a)中の任意定数χに対応する値はステップ730,750と同様に各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の2乗和が最小となるように設定する。
ステップ760で係数D2=0である場合にはステップ780に進み別の係数D3をみる。この別の係数D3≠0であればステップ790に進み、上記の式(14)を、左後輪3の駆動力補正量ΔFx3を既知として解いた式から、車両挙動の誤差ΔFx,ΔFy,ΔMを補償する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めて図18のフローを終了する。ただし、舵角δ1,δ2,δ3,δ4はゼロとする。
なお、上記左後輪3の駆動力補正量ΔFx3を既知として解いた式には上記の式(20a)及び式(21a)中の任意定数χに対応する値が出現するが、上記の式(20a)及び式(21a)中の任意定数χに対応する値はステップ730,750と同様に各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4の2乗和が最小となるように設定する。
ステップ780で係数D3=0、つまり4つ係数D1,D2,D3,D4が全てゼロである場合にはステップ800に進み、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4をΔFx1=ΔFx2=ΔFx3=ΔFx4=0として図18のフローを終了する。
ステップ710において、各輪1〜4の舵角δ1,δ2,δ3,δ4をゼロとして4つの係数D1,D2,D3,D4を求め、また、ステップ730、750、770、790で各輪1〜4の舵角δ1,δ2,δ3,δ4をゼロとして、車両挙動の誤差ΔFx,ΔFy,ΔMを補償する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めているが、ステップ710において各輪1〜4の舵角δ1,δ2,δ3,δ4をゼロとすることなくそのまま用いて係数D1,D2,D3,D4を求め、また、ステップ730、750、770、790で各輪1〜4の舵角δ1,δ2,δ3,δ4をゼロとすることなくそのまま用いて、車両挙動の誤差ΔFx,ΔFy,ΔMを補償する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めるようにしてもかまわない(請求項5に記載の発明)。
各輪1〜4の駆動力補正量は各輪1〜4についての駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4によって変化するため、当該感度k1,k2,k3,k4が一定であるとして各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算したのでは、当該駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4に誤差が生じるのであるが、本実施形態(請求項4に記載の発明)によれば、各輪1〜4についての駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4を推定するタイヤ横力感度推定手段を備え、駆動力補正量演算手段が、この推定されたタイヤ横力の感度k1,k2,k3,k4に基づいて、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算するので、各輪1〜4についての駆動力変化に対するタイヤ横力の感度が相違しても、現在の動作点周りにおいてより正確かつ簡便に各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を求めることができる。
次に、図20、図21のフローチャートは第3実施形態、図24、図25のフローチャートは第4実施形態で、それぞれ第1実施形態の図6、図7と置き換わるものである。図20、図21及び図24、図25もモータ1〜4へのトルク配分制御を実行するためのもので、操作の手順を記載している。一定時間毎に実行するものではない。図6、図7と同一の部分には同一のステップ番号を付けている。
さて、第1、第2の実施形態では、車両前後方向力Fx,車両横方向力Fy,ヨーモーメントMの全てに対してそれぞれ独立に各目標値Fx**,Fy**,M**を設定しているが、さらに考えてみると、車両横方向力FyとヨーモーメントMには強い従属関係があり、いずれか一方の応答が定まればもう一方の応答もほぼ定まってしまう。
この車両横方向力FyとヨーモーメントMとの従属関係についてさらに説明すると、車両のヨーレートγと、求心加速度Ygとの間には次の式(81)の関係がある。
Yg=V×(γ+dβ/dt) …(81)
式(81)は、上記の式(補4)と基本的に同じ式で、上記の式(補4)を時間で微分し、求心加速度Ygについて整理したものである。従って、(81)式右辺のVは車両速度、dβ/dtは車体横すべり角βの時間微分値である。
式(81)から、ヨーレートγと求心加速度Ygとの間の自由度はこの車体横滑り角時間微分値dβ/dtのみであり、ヨーレートγと求心加速度Ygは互いに強い従属関係にあることが分かる。
そして、ヨーレートγはヨーモーメントMを時間積分した値を車両のヨー慣性モーメントで除した値であり、求心加速度Ygは車体横すべり角βが充分小さいときには車両横方向加速度とほぼ等しいことから、上記の式(補4)の求心加速度Ygとして車両横方向加速度αyを入れていたわけである。これより、車両横方向力FyとヨーモーメントMには強い従属関係があることが分かる。
そこで第3、第4の実施形態では、この車両横方向力FyとヨーモーメントMの間の強い従属関係、つまり車両横方向力FyとヨーモーメントMのいずれか一方の車両挙動の応答が定まれば、もう一方の応答がほぼ定まってしまうことを利用し、車両横方向力FyとヨーモーメントMのうちいずれか一方の車両挙動についてのみ目標値を設定する。この結果、第3、第4の実施形態によれば、車両横方向力FyとヨーモーメントMのいずれか一方の車両挙動についてのみ目標値を設定すればよいので、第1、第2の実施形態に比べてコントローラ8の一部を構成している車載コンピューターのメモリ消費量を引き下げ、車両価格が低減することが期待できる。また、車両横方向力FyとヨーモーメントMのいずれか一方の目標値のみ設計すれば良くなるので、設計工数の低減も併せて期待できる。
以下フローチャートに基づいて第3、第4の実施形態を詳述する。
図20、図21に示す第3実施形態(請求項1の技術のみを適用する場合)から先に、第1実施形態と相違する部分を主に説明すると、図20のステップ41で、ヨーレートの静的目標値γ*を、車両前後方向力の静的目標値Fx*とステアリング5の回転角θと車両速度Vとから、図11に示すヨーレート静的目標値マップに基づいて設定する。ここで、車両横方向力静的目標値マップはコントローラ8に備えておらず、図20のステップ41では車両横方向力の静的目標値Fy*を設定しない。車両横方向力静的目標値マップを設定しないのは、コントローラ8のメモリ使用量及び演算負荷の低減を目的とするものである。
図20のステップ61では、車両前後方向力の動的目標値Fx**,ヨーレートの動的目標値γ**を、各輪1〜4の駆動力配分で実現可能な範囲でドライバーの操縦性が好適となるように各静的目標値Fx*,γ*に対して時間的な遅れ要素を入れて求める。車両前後方向力の静的目標値Fx*については2次遅れの伝達関数を用いて、ヨーレートの静的目標値γ*については相応の伝達関数を用いてなまし処理を行うことによって、車両前後方向力の動的目標値Fx**,ヨーレートの動的目標値γ**を得る。なお、特にヨーレートの動的目標値γ**の応答は走行条件毎に実現可能な時間的遅れ要素を入れる。
また、図20のステップ61では、ヨーレートの動的目標値γ**を求めるときに用いた時間的な遅れ要素の伝達関数に微分要素を乗じた伝達関数を用いてヨーモーメントの動的目標値M**を求める。
図20のステップ71では、ステップ50で設定している各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*に基づいて、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を、第1実施形態と同じに次の式(32)〜式(35)により求める。
Fx1##=Fxall##×(η/2)−ΔFxall##×Δη/2 …(32)
Fx2##=Fxall##×(η/2)−ΔFxall##×Δη/2 …(33)
Fx3##=Fxall##×(1−η)/2−ΔFxall##×(1−Δη)/2
…(34)
Fx4##=Fxall##×(1−η)/2−ΔFxall##×(1−Δη)/2
…(35)
式(32)〜式(35)の前輪駆動力配分η、左右輪駆動力差の前輪配分Δηは、η=Δη=0.6である。また、式(32)〜式(35)のΔFxall##はステップ61で車両前後方向力の動的目標値Fx**を求めるときに車両前後方向力の静的目標値Fx*に入れた時間的な遅れ要素を、各輪1〜4の駆動力の静的目標値Fx1**,Fx2**,Fx3**,Fx4**の和であるFx1**+Fx2**+Fx3**+Fx4**に入れて求めた値である。
ここで、式(32)〜式(35)のΔFxall##を次のようにして求める。すなわち、車両を線形近似した線形2輪モデル(安部正人著,第2版,「自動車の運動と制御」,株式会社山海堂,平成15年4月10日,第3章3.2.1節)に左右輪駆動力差ΔFxall##が加わった場合を考え、この線形2輪モデルのヨーレートの応答がヨーレートの動的目標値γ**となるように設計したモデルフォロイング制御系(金井喜美雄,越智徳昌,川邊武俊著,「ビークル制御」,槇書店,2004年1月20日,第3章3.2節)を用い、かつ定常状態で各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*との間で偏差を生じないように補正した次の式(36)から求める。
ΔFxall##={s2+(−a11−a22)s+(a11a22−A12a21)}
/{b22・s+(a21b11−a11b21)}×fr(s)
×{(a21b11−a11b21)θ/16+(−a11b22)ΔFxall#}
/{a11b22−a12a21}
−〔{b21・s+(a21b11−a11b21)}
/{b22・s+(−a11b22)}〕×θ/16
…(36)
式(36)のfr(s)は、ステップ61でヨーレートの動的目標値γ**を求めるときにヨーレートの静的目標値γ*に入れた時間的な遅れ要素の伝達関数、Kf,Kr[N/rad]は前輪び後輪の横滑り角が十分小さいときの単位横滑り角あたりのコーナーリングフォースである。
また、式(36)の係数a11,a12,a21,a22,b11,b21,b22,ΔFxall#はそれぞれ次の値である。
a11=−(2/mV)(Kf+Kr) …(補4)
a12=−(2/mV2)(KfLf−KrLr)−1 …(補5)
a21=−(2/I)(KfLf−KrLr) …(補6)
a22=−(2/IV)(KfLf 2+KrLr 2) …(補7)
b11=2Kf/mV …(補8)
b21=2KfLf/I …(補9)
b22=Lt/2I …(補10)
ΔFxall#=(Fx2*+Fx4*)−(Fx1*+Fx3*) …(補11)
式(補4)〜式(補11)のmは車両の質量[kg]、Vは車両速度[m/s]、Iは車両のヨー慣性モーメント[kg・m2]である。
このように第3実施形態におけるΔFxall##の求め方は、第1実施形態と同様である。
図20のステップ81では、ステップ71で得ている各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両挙動の基本値、つまり車両前後方向力の基本値Fx##,ヨーモーメントの基本値M##を次の式(37)、式(39)によりそれぞれ求める。
Fx##=Fx1##+Fx2##+Fx3##+Fx4## …(37)
M##={(Fx2##+Fx4##)−(Fx1##+Fx3##)}×Lt/2
+{(Fy1##+Fy2##)×Lf−(Fy3##+Fy4##)×Lr}
…(39)
第1実施形態と相違して、第3実施形態では車両横方向力の基本値Fy##を演算していない。これによって、コントローラ8の演算負荷を低減できる。
図20のステップ91では、ステップ61で設定されている車両挙動の目標値と、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##で実現される車両挙動の基本値との誤差、つまり車両前後方向力の動的目標値Fx**と車両前後方向力の基本値Fx##との誤差ΔFx,ヨーモーメントの動的目標値M**とヨーモーメントの基本値M##との誤差ΔMを次の式(42)、式(44)によりそれぞれ求める。
ΔFx=Fx**−Fx## …(42)
ΔM=M**−M## …(44)
第3実施形態では車両横方向力の動的目標値Fy**、車両横方向力の基本値Fy##はいずれも求めていないので、第1実施形態と相違して、車両横方向力の動的目標値Fy**と車両横方向力の基本値Fy##との誤差ΔFyとしては、次の式(82)のようにゼロを設定する。
ΔFy=0 …(82)
図21のステップ111では、各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4を求め、ステップ112でこの各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4をステップ110で求めている各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**に加算した値を改めて各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**として、つまり次の式(83a)〜式(83d)により各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を再設定する。
Fx1**←Fx1**+∂Fx1 …(83a)
Fx2**←Fx2**+∂Fx2 …(83b)
Fx3**←Fx3**+∂Fx3 …(83c)
Fx4**←Fx4**+∂Fx4 …(83d)
ここで、各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4の求め方については図22のフロー(図21のステップ111のサブルーチン)により説明する。
図22においてステップ3010では、車両前後方向力の動的目標値Fx**と車両前後方向力の基本値Fx##との誤差ΔFxをゼロ、車両横方向力についての誤差ΔFyを所定量∂Fy、ヨーモーメントの動的目標値M**とヨーモーメントの基本値M##との誤差ΔMをゼロとし、これらΔFx=0,ΔFy=∂Fy,ΔM=0を実現する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図21のステップ100と同様の処理を用いて求め、求めた各輪1〜4の駆動力補正値ΔFx1,ΔFx2,ΔFx3,ΔFx4を次の式(84a)〜(84d)のように各輪1〜4の駆動力再補正量∂∂Fx1,∂∂Fx2,∂∂Fx3,∂∂Fx4として設定する。
∂∂Fx1=ΔFx1 …(84a)
∂∂Fx2=ΔFx2 …(84b)
∂∂Fx3=ΔFx3 …(84c)
∂∂Fx4=ΔFx4 …(84d)
ただし、このとき、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4は各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から各駆動力補正量マップを参照して求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図17のフローチャートに基づいて求める場合には、ステップ500において、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から車両挙動感度マップを参照して各輪1〜4の駆動力変化に対する車両前後方向力,車両横方向力,ヨーモーメントそれぞれの感度Kix,Kiy,KiMを求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図18のフローチャートに基づいて求める場合には、ステップ700で、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**における各輪1〜4の駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4を求めるようにする。
ステップ3020では各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4[N]及び各輪1〜4の駆動力最小値[N]を設定する。この各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4及び各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4の設定方法として次に3つの方法を示す。
<18>各輪の駆動力最大値・最小値の設定方法1
各モータ11〜14が過熱し破損しないようにする各輪1〜4の駆動力上限Fdmax1,Fdmax2,Fdmax3,Fdmax4[N]及び同じく各モータ11〜14が過熱し破損しないようにする各輪1〜4の駆動力下限Fdmin1,Fdmim2,Fdmim3,Fdmin4[N]を求め、このうちの各輪1〜4の駆動力上限Fdmax1,Fdmax2,Fdmax3,Fdmax4を各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4として、またもう一つの各輪1〜4の駆動力下限Fdmin1,Fdmim2,Fdmim3,Fdmin4を各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4として設定する。
上記の駆動力上限Fdmax1,Fdmax2,Fdmax3,Fdmax4及び駆動力下限Fdmin1,Fdmim2,Fdmim3,Fdmin4は、各モータ11〜14の現在の温度T1,T2,T3,T4から、モータ温度とモータ過熱を抑えることができる最大出力Ptmax[W]との関係を求めたマップを参照して各モータ11〜14の最大出力Ptmax1,Ptmax2,Ptmax3,Ptmax4[W]を求め、この最大出力Ptmaxとステップ10で検出している各輪1〜4の回転速度ω1,ω2,ω3,ω4とを用いて、次の式(85a)〜式(85d)及び式(86a)〜式(86d)に従って求める。
Fdmax1=Ptmax1÷ω1 …(85a)
Fdmax2=Ptmax2÷ω2 …(85b)
Fdmax3=Ptmax3÷ω3 …(85c)
Fdmax4=Ptmax4÷ω4 …(85d)
Fdmin1=−Ptmax1÷ω1 …(86a)
Fdmin2=−Ptmax2÷ω2 …(86b)
Fdmin3=−Ptmax3÷ω3 …(86c)
Fdmin4=−Ptmax4÷ω4 …(86d)
モータ温度とモータ過熱を抑えることができる最大出力Ptmaxとの関係を求めたマップとしては例えば図23のように設定しておく。各モータ11〜14にはそれぞれ温度を検出するセンサ(図示しない)を内蔵しておき、各センサにより検出される各モータ温度T1,T2,T3,T4をコントローラ8に入力させるようにする。
ここで、各輪1〜4のメカブレーキによる制動力と各モータ11〜14の駆動力とを協調制御できる車両であれば、各輪1〜4の駆動力下限Fdmin1,Fdmim2,Fdmim3,Fdmin4に、各輪1〜4のメカブレーキの最大制動力を加算する。
<19>各輪の駆動力最大値・最小値の設定方法2
スリップあるいは車輪ロックを起こさない各輪1〜4の駆動力上限Fsmax1,Fsmax2,Fsmax3,Fsmax4[N]及び同じくスリップあるいは車輪ロックを起こさない各輪1〜4の駆動力下限Fsmin1,Fsmin2,Fsmin3,Fsmin4[N]を求め、このうちの各輪1〜4の駆動力上限Fsmax1,Fsmax2,Fsmax3,Fsmax4を各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4として、またもう一つの各輪1〜4の駆動力下限Fsmin1,Fsmin2,Fsmin3,Fsmin4を各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4として設定する。
上記の駆動力上限Fsmax1,Fsmax2,Fsmax3,Fsmax4及び駆動力下限Fsmin1,Fsmin2,Fsmin3,Fsmin4の求め方としては例えば次のようにする。特開平6−98418号公報に記載された方法を用い、各輪1〜4が路面から受ける反力F1,F2,F3,F4を推定し、この推定した反力F1,F2,F3,F4を用いて次の式(87a)〜式(87d)及び式(88a)〜式(88d)により求める。
Fsmax1=F1 …(87a)
Fsmax2=F2 …(87b)
Fsmax3=F3 …(87c)
Fsmax4=F4 …(87d)
Fsmin1=−F1 …(88a)
Fsmin2=−F2 …(88b)
Fsmin3=−F3 …(88c)
Fsmin4=−F4 …(88d)
<20>各輪の駆動力最大値・最小値の設定方法3
上記の<19>で求まる各輪1〜4の駆動力上限Fsmax1,Fsmax2,Fsmax3,Fsmax4と、上記の<18>で求まる各輪1〜4の駆動力上限Fdmax1,Fdmax2,Fdmax3,Fdmax4とを比較して小さい方の値を各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4として、また、上記の<19>で求まる各輪1〜4の駆動力下限Fsmin1,Fsmin2,Fsmin3,Fsmin4と、上記の<18>で求まる各輪1〜4の駆動力下限Fdmin1,Fdmim2,Fdmim3,Fdmin4とを比較して大きい方の値を各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4として設定する。
これで、各輪1〜4の駆動力最大値・最小値を設定する3つの方法の説明を終える。
ステップ3030では、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を出力した場合における、各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を設定する。各輪1〜4の駆動力余裕代を設定する方法として次に2つの方法を示す。
<21>各輪の駆動力余裕代の設定方法1
各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4として、各輪1〜4が出力可能な最大駆動力と比較して充分小さな値を設定する。この十分小さな値として、例えば200[N]とする。
<22>各輪の駆動力余裕代の設定方法2
これは、各輪1〜4について駆動力余裕代を駆動力最大値や駆動力最小値に応じた可変値で設定する場合の設定方法(請求項11に記載の発明)で、ステップ3020において設定している各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4及び各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4と、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**とから、各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を次の式(89a)〜式(89d)及び式(90a)〜式(90d)に従って求める。
〔1〕∂∂Fx1≧0,∂∂Fx2≧0,∂∂Fx3≧0,∂∂Fx4≧0の場合
Fmx1=Fmax1−Fx1** …(89a)
Fmx2=Fmax2−Fx2** …(89b)
Fmx3=Fmax3−Fx3** …(89c)
Fmx4=Fmax4−Fx4** …(89d)
〔2〕∂∂Fx1<0,∂∂Fx2<0,∂∂Fx3<0,∂∂Fx4<0場合
Fmx1=Fx1**−Fmin1 …(90a)
Fmx2=Fx2**−Fmin2 …(90b)
Fmx3=Fx3**−Fmin3 …(90c)
Fmx4=Fx4**−Fmin4 …(90d)
これで、各輪1〜4の駆動力余裕代を設定する2つの方法の説明を終える。
ステップ3040では、このようにして設定している各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を使うことによって、車両横方向力についての所定量∂Fyの誤差ΔFyをどれだけ補正できるか、その割合Ψ[無名数]を次の式(91)に従って求める。
Ψ=min(Fmx1/∂∂Fx1,Fmx2/∂∂Fx2,Fmx3/∂∂Fx3,
Fmx4/∂∂Fx4)
…(91)
式(91)は各輪1〜4について駆動力余裕代を駆動力再補正量で割った値(つまりFmx1/∂∂Fx1,Fmx2/∂∂Fx2,Fmx3/∂∂Fx3,Fmx4/∂∂Fx4の4つの値)のうちの最小値を採用するものである。
ステップ3050では、所定量∂Fyにこの割合Ψを乗算した値を車両横方向力についての誤差ΔFyとして置き直し、再びΔFx=0,ΔFy=Ψ×∂Fy,ΔM=0を実現する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図21のステップ100と同様の処理を用いて求め、求めた各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を次の式(92a)〜式(92d)のように各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4として設定する。
∂Fx1=ΔFx1 …(92a)
∂Fx2=ΔFx2 …(92b)
∂Fx3=ΔFx3 …(92c)
∂Fx4=ΔFx4 …(92d)
ただし、このとき、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4は各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から駆動力補正量マップを参照して求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図17のフローチャートに基づいて求める場合には、ステップ500において、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から車両挙動感度マップを参照して各輪1〜4の駆動力変化に対する車両前後方向力,車両横方向力,ヨーモーメントそれぞれの感度Kix,Kiy,KiMを求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図18のフローチャートに基づいて求める場合には、ステップ700で、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**における各輪の駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4を求めるようにする。
このように、第3実施形態(請求項8に記載の発明)では、四輪を独立に駆動可能な車両において、車両の車両前後方向力の目標値Fx**、ヨーモーメントの目標値M**を車両挙動の目標値として決定し(図20のステップ61参照)、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を設定し(図20のステップ71参照)、この設定された各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両前後方向力の基本値Fx##,ヨーモーメントの基本値M##を車両挙動の基本値として演算し(図20のステップ81参照)、前記車両挙動の目標値Fx**、M**とこの演算された車両挙動の基本値Fx##,M##との誤差ΔFx,ΔMを車両挙動の誤差として演算し(図20のステップ91参照)、この演算された車両挙動の誤差ΔFx,ΔMを小さくする各輪の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算し(図21のステップ100参照)、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##とこの演算された駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4との和で各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を決定し(図21のステップ110参照)、この決定された各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**が得られるように各輪1〜4の駆動力を制御している(図21のステップ120参照)。すなわち、第3実施形態(請求項8に記載の発明)によれば、車両横方向力Fyについて目標値Fy**を設定せず、車両前後方向力FxとヨーモーメントMについてのみ目標値Fx**,M**を決定し、この2つの目標値Fx**,M**を実現する各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を求める構成としたので、車両横方向力Fyの目標値を設計すること及び車両横方向力Fyの目標値をコントローラ8に保持することが必要でなくなり、この設計工数の低減と車載コンピューターのメモリ消費量の引き下げによって車両価格を低減することできる。
前述した式(81)においてヨーレートγと求心加速度Ygは完全な従属関係ではなくdβ/dtの自由度があることから、車両横方向力FyとヨーモーメントMとの間にも同様に自由度がある。従って、第3実施形態(請求項10に記載の発明)によれば、車両横方向力Fyについてもその目標値Fy**に近づける各輪1〜4の駆動力再補正量、つまり車両横方向力Fyをゼロから所定量∂Fyの誤差の範囲内で変化させる各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4を演算し(図21のステップ111参照)、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**にこの演算された駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4を加算した値を改めて各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**として再設定する(図21のステップ112参照)ので、車両横方向力Fyをこの自由度の範囲でドライバーにとって好適となる車両横方向力の目標値Fy**に近づけることが可能となり、運転性の向上が期待できる。
第3実施形態(請求項11に記載の発明)では、各輪1〜4の駆動力最大値Fxmax1,Fxmax2,Fxmax3,Fxmax4を設定し(図22のステップ3020参照)、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**とこの設定された駆動力最大値Fxmax1,Fxmax2,Fxmax3,Fxmax4とに基づいて、ゼロから所定量∂Fyの誤差の範囲内で車両横方向力Fyを変化させることが可能な量∂Fyreal(=Ψ×∂Fy)を演算し(図22のステップ3030〜3050参照)、車両横方向力Fyをこの量∂Fyreal変化させる各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4として設定している(図21のステップ112参照)。すなわち、第3実施形態(請求項11に記載の発明)によれば、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**が各輪1〜4の駆動力最大値Fxmax1,Fxmax2,Fxmax3,Fxmax4に対してあとどれだけ駆動力を変化させられるのかその駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を求め、この駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を用いることによって車両横方向力Fyをどれだけ目標値Fy**に漸近させられるのかを求める構成としたので、各輪1〜4の駆動力の制限を越えることなく車両横方向力Fyをドライバーにとって好適となる目標値Fy**に近づけることが可能となり、運転性の向上が期待できる。
次に、図24、図25に示す第4実施形態の説明に移る。ここでも、第1実施形態と相違する部分を主に説明すると、図24のステップ42で、車両横方向力の静的目標値Fy*を、目標駆動力と目標制動力の和である車両前後方向力の静的目標値Fx*と、ステアリング5の回転角θと、車両速度Vとから、図10に示す車両横方向力静的目標値マップに基づいて設定する。ここで、ヨーレート静的目標値マップはコントローラ8に備えておらず、図24のステップ42ではヨーレートの静的目標値*を設定しない。ヨーレート静的目標値マップを設定しないのは、コントローラ8のメモリ使用量及び演算負荷の低減を目的とするものである。
図24のステップ62では、車両前後方向力の動的目標値Fx**,車両横方向力の動的目標値Fy**を、各輪1〜4の駆動力配分で実現可能な範囲でドライバーの操縦性が好適となるように各静的目標値Fx*,Fy*に対して時間的な遅れ要素を入れて求める。車両前後方向力の静的目標値Fx*については2次遅れの伝達関数を用いて、車両横方向力の静的目標値Fy*については相応の伝達関数を用いてそれぞれなまし処理を行うことによって、車両前後方向力の動的目標値Fx**,車両横方向力の動的目標値Fy**を得る。なお、特に車両横方向力の動的目標値Fy**の応答は走行条件毎に実現可能な時間的遅れ要素を入れる。なお、第3実施形態では、ヨーレートの動的目標値γ**を求めるときに用いた時間的な遅れ要素の伝達関数に微分要素を乗じた伝達関数を用いてヨーモーメントの動的目標値M**を求めているが、第4実施形態では求めていない。
図24のステップ72では、ステップ50で設定している各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*に基づいて、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を、第1実施形態と同じに次の式(32)〜式(35)により求める。
Fx1##=Fxall##×(η/2)−ΔFxall##×Δη/2 …(32)
Fx2##=Fxall##×(η/2)−ΔFxall##×Δη/2 …(33)
Fx3##=Fxall##×(1−η)/2−ΔFxall##×(1−Δη)/2
…(34)
Fx4##=Fxall##×(1−η)/2−ΔFxall##×(1−Δη)/2
…(35)
式(32)〜式(35)の前輪駆動力配分η、左右輪駆動力差の前輪配分Δηは、η=Δη=0.6である。また、式(32)〜式(35)のΔFxall##はステップ60で車両前後方向力の動的目標値Fx**を求めるときに車両前後方向力の静的目標値Fx*に入れた時間的な遅れ要素を、各輪1〜4の駆動力の静的目標値Fx1**,Fx2**,Fx3**,Fx4**の和であるFx1**+Fx2**+Fx3**+Fx4**に入れて求めた値である。
ここで、式(32)〜式(35)のΔFxall##を次のようにして求める。すなわち、車両を線形近似した線形2輪モデル(安部正人著,第2版,「自動車の運動と制御」,株式会社山海堂,平成15年4月10日,第3章3.2.1節)に左右輪駆動力差ΔFxall##が加わった場合を考え、この線形2輪モデルのヨーレートの応答がヨーレートの動的目標値γ**となるように設計したモデルフォロイング制御系(金井喜美雄,越智徳昌,川邊武俊著,「ビークル制御」,槇書店,2004年1月20日,第3章3.2節)を用い、かつ定常状態で各輪1〜4の駆動力の静的目標値Fx1*,Fx2*,Fx3*,Fx4*との間で偏差を生じないように補正した次の式(36)から求める。
ΔFxall##={s2+(−a11−a22)s+(a11a22−A12a21)}
/{b22・s+(a21b11−a11b21)}×fr(s)
×{(a21b11−a11b21)θ/16+(−a11b22)ΔFxall#}
/{a11b22−a12a21}
−〔{b21・s+(a21b11−a11b21)}
/{b22・s+(−a11b22)}〕×θ/16
…(36)
第3実施形態では、式(36)のfr(s)は、ステップ61でヨーレートの動的目標値γ**を求めるときにヨーレートの静的目標値γ*に入れた時間的な遅れ要素の伝達関数であったが、第4実施形態では、ヨーレートの動的目標値γ**を求めていないので、車両横方向力の動的目標値Fy**を車両質量mと車量速度Vとで除した値である次の式(93)によりヨーレートの動的目標値γ**を求め、このヨーレートの動的目標値γ**に基づいてΔFxall##を求める。
γ**=Fy**/mV …(93)
式(36)のKf,Kr[N/rad]は前輪及び後輪の横滑り角が十分小さいときの単位横滑り角あたりのコーナーリングフォースである。
また、式(36)の係数a11,a12,a21,a22,b11,b21,b22,ΔFxall#はそれぞれ次の値である。
a11=−(2/mV)(Kf+Kr) …(補4)
a12=−(2/mV2)(KfLf−KrLr)−1 …(補5)
a21=−(2/I)(KfLf−KrLr) …(補6)
a22=−(2/IV)(KfLf 2+KrLr 2) …(補7)
b11=2Kf/mV …(補8)
b21=2KfLf/I …(補9)
b22=Lt/2I …(補10)
ΔFxall#=(Fx2*+Fx4*)−(Fx1*+Fx3*) …(補11)
式(補4)〜式(補11)のmは車両の質量[kg]、Vは車両速度[m/s]、Iは車両のヨー慣性モーメント[kg・m2]である。
このように第4実施形態におけるΔFxall##の求め方は、第3実施形態と若干異なっている。
図24のステップ82では、ステップ72で得ている各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両挙動の基本値、つまり車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##を次の式(37)、式(38)によりそれぞれ求める。
Fx##=Fx1##+Fx2##+Fx3##+Fx4## …(37)
Fy##=Fy1##+Fy2##+Fy3##+Fy4## …(38)
第1実施形態と相違して、第4実施形態ではヨーモーメントの基本値M##を演算していない。これによって、コントローラ8の演算負荷を低減できる。
図24のステップ92では、ステップ62で設定されている車両挙動の目標値と、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##で実現される車両挙動の基本値との誤差、つまり車両前後方向力の動的目標値Fx**と車両前後方向力の基本値Fx##との誤差ΔFx,車両横方向力の動的目標値Fy**と車両横方向力の基本値Fy##との誤差ΔFyを次の式(42)、式(43)によりそれぞれ求める。
ΔFx=Fx**−Fx## …(42)
ΔFy=Fy**−Fy## …(43)
第4実施形態ではヨーモーメントの動的目標値M**、ヨーモーメントの基本値Fy##は求めていないので、第1実施形態と相違して、ヨーモーメントの動的目標値M**とヨーモーメントの基本値M##との誤差ΔMとしては、次の式(94)のようにゼロを設定する。
ΔM=0 …(94)
図25のステップ113では、各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’を求め、ステップ114でこの各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’を各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**に加算した値を改めて各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**として、つまり次の式(95a)〜式(95d)により各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を再設定する。
Fx1**←Fx1**+∂Fx1’ …(95a)
Fx2**←Fx2**+∂Fx2’ …(95b)
Fx3**←Fx3**+∂Fx3’ …(95c)
Fx4**←Fx4**+∂Fx4’ …(95d)
ここで、各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’の求め方については図26のフロー(図25のステップ113のサブルーチン)により説明する。
図26においてステップ4010では、車両前後方向力の動的目標値Fx**と車両前後方向力の基本値Fx##との誤差ΔFxをゼロ、車両横方向力の動的目標値Fy**と車両横方向力の基本値Fy##との誤差ΔFyをゼロ、ヨーモーメントについての誤差ΔMを所定量∂Mとし、これらΔFx=0,ΔFy=0,ΔM=∂Mを実現する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図25のステップ100と同様の処理を用いて求め、求めた各輪1〜4の駆動力補正値ΔFx1,ΔFx2,ΔFx3,ΔFx4を次の式(96a)〜(96d)のように各輪1〜4の駆動力再補正量∂∂Fx1’,∂∂Fx2’,∂∂Fx3’,∂∂Fx4’として設定する。
∂∂Fx1’=ΔFx1 …(96a)
∂∂Fx2’=ΔFx2 …(96b)
∂∂Fx3’=ΔFx3 …(96c)
∂∂Fx4’=ΔFx4 …(96d)
ただし、このとき、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4は各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から駆動力補正量マップを参照して求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図17のフローチャートに基づいて求める場合には、ステップ500において、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から車両挙動感度マップを参照して各輪1〜4の駆動力変化に対する車両前後方向力,車両横方向力,ヨーモーメントそれぞれの感度Kix,Kiy,KiMを求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図18のフローチャートに基づいて求める場合には、ステップ700で、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**における各輪の駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4を求めるようにする。
ステップ4020では、各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4[N]及び各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4[N]を設定する。各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4及び各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4の設定方法としては、第3実施形態についての上記<18>〜<20>で示した3つの方法のいずれかの方法を用いる。
ステップ4030では、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を出力した場合における、各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を設定する。各輪1〜4の駆動力余裕代を設定する方法として次に2つの方法を示す。
<23>各輪の駆動力余裕代の設定方法1
各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4として、各輪1〜4が出力可能な最大駆動力と比較して充分小さな値を設定する。この十分小さな値として、例えば200[N]とする。
<24>各輪の駆動力余裕代の設定方法2
これは、各輪1〜4について駆動力余裕代を駆動力最大値や駆動力最小値に応じた可変値で設定する場合の設定方法(請求項13に記載の発明)で、ステップ4020において設定している各輪1〜4の駆動力最大値Fmax1,Fmax2,Fmax3,Fmax4及び各輪1〜4の駆動力最小値Fmin1,Fmin2,Fmin3,Fmin4と、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**とから、各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を次の式(97a)〜式(97d)及び式(98a)〜式(98d)に従って求める。
〔1〕∂∂Fx1’≧0,∂∂Fx2’≧0,∂∂Fx3’≧0,∂∂Fx4’≧0の場合
Fmx1=Fmax1−Fx1** …(97a)
Fmx2=Fmax2−Fx2** …(97b)
Fmx3=Fmax3−Fx3** …(97c)
Fmx4=Fmax4−Fx4** …(97d)
〔2〕∂∂Fx1’<0,∂∂Fx2’<0,∂∂Fx3’<0,∂∂Fx4’<0場合
Fmx1=Fx1**−Fmin1 …(98a)
Fmx2=Fx2**−Fmin2 …(98b)
Fmx3=Fx3**−Fmin3 …(98c)
Fmx4=Fx4**−Fmin4 …(98d)
ステップ4040では、このようにして設定している各輪1〜4の駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を使うことによって、ヨーモーメントについての所定量∂Mの誤差ΔMをどれだけ補正できるか、その割合Ψ’[無名数]を次の式(99)に従って求める。
Ψ’=min(Fmx1/∂∂Fx1’,Fmx2/∂∂Fx2’,Fmx3/∂∂Fx3’, Fmx4/∂∂Fx4’)
…(99)
式(99)は各輪1〜4について駆動力余裕代を駆動力再補正量で割った値(つまりFmx1/∂∂Fx1’,Fmx2/∂∂Fx2’,Fmx3/∂∂Fx3’,Fmx4/∂∂Fx4’の4つの値)のうちの最小値を採用するものである。
ステップ4050では、所定量∂Mにこの割合Ψ’を乗算した値をヨーモーメントについての誤差ΔMとして置き直し、再びΔFx=0,ΔFy=0,ΔM=Ψ’×∂Mを実現する各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図25のステップ100と同様の処理を用いて求め、求めた各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を次の式(100a)〜式(100d)のように各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’として設定する。
∂Fx1’=ΔFx1 …(100a)
∂Fx2’=ΔFx2 …(100b)
∂Fx3’=ΔFx3 …(100c)
∂Fx4’=ΔFx4 …(100d)
ただしこのとき、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4は各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から駆動力補正量マップを参照して求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図17のフローチャートに基づいて求める場合には、ステップ500において、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**から車両挙動感度マップを参照して各輪の駆動力変化に対する車両前後方向力,車両横方向力,ヨーモーメントそれぞれの感度Kix,Kiy,KiMを求める。また、各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を図18のフローチャートに基づいて求める場合には、ステップ700で、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**における各輪の駆動力変化に対するタイヤ横力の感度k1,k2,k3,k4を求めるようにする。
このように、第4実施形態(請求項9に記載の発明)では、四輪を独立に駆動可能な車両において、車両の車両前後方向力の目標値Fx**、車両横方向力の目標値Fy**を車両挙動の目標値として決定し(図24のステップ62参照)、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を設定し(図24のステップ72参照)、この設定された各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##を車両挙動の基本値として演算し(図24のステップ82参照)、前記車両挙動の目標値Fx**,Fy**とこの演算された車両挙動の基本値Fx##,Fy##との誤差ΔFx,ΔFyを車両挙動の誤差として演算し(図24のステップ92参照)、この演算された車両挙動の誤差ΔFx,ΔMを小さくする各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を演算し(図25のステップ100参照)、各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##とこの演算された駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4との和で各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を決定し(図25のステップ110参照)、この決定された各輪1〜4の駆動力目標値が得られるように各輪1〜4の駆動力を制御している(図24のステップ61参照)。すなわち、第4実施形態(請求項9に記載の発明)によれば、ヨーモーメントMについて目標値M**を設定せず、車両前後方向力Fxと車両横方向力Fyについてのみ目標値Fx**,Fy**を決定し、この2つの目標値Fx**,Fy**を実現する各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**を求める構成としたので、ヨーモーメントMの目標値を設計すること及びヨーモーメントMの目標値をコントローラ8に保持することが必要でなくなり、この設計工数の低減と車載コンピューターのメモリ消費量を引き下げによって車両価格を低減することできる。
第3実施形態の効果で述べた通り、車両横方向力FyとヨーモーメントMとの間に自由度があることから、第4実施形態(請求項12に記載の発明)によれば、ヨーモーメントMについてもその目標値M**に近づける各輪1〜4の駆動力再補正量、つまりヨーモーメントMをゼロから所定量∂Mの誤差の範囲内で変化させる各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’を演算し(図25のステップ113参照)、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**にこの演算された駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’を加算した値を改めて各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**として再設定する(図25のステップ114参照)ので、ヨーモーメントMをこの自由度の範囲でドライバーにとって好適となるヨーモーメントの目標値M**に近づけることが可能となり、運転性の向上が期待できる。
第4実施形態(請求項13に記載の発明)では、各輪1〜4の駆動力最大値Fxmax1,Fxmax2,Fxmax3,Fxmax4を設定し(図26のステップ4020参照)、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**とこの設定された駆動力最大値Fxmax1,Fxmax2,Fxmax3,Fxmax4とに基づいて、ゼロから所定量∂Mの誤差の範囲内でヨーモーメントMを変化させることが可能な量∂Mreal(=Ψ’×∂M)を演算し(図26のステップ4030〜4050参照)、ヨーモーメントMをこの量∂Mreal変化させる各輪1〜4の駆動力補正量ΔFx1,ΔFx2,ΔFx3,ΔFx4を各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’として設定している(図25のステップ114参照)。すなわち、第4実施形態(請求項13に記載の発明)によれば、各輪1〜4の駆動力目標値Fx1**,Fx2**,Fx3**,Fx4**が各輪1〜4の駆動力最大値Fxmax1,Fxmax2,Fxmax3,Fxmax4に対してあとどれだけ駆動力を変化させられるのかその駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を求め、この駆動力余裕代Fmx1,Fmx2,Fmx3,Fmx4を用いることによってヨーモーメントMをどれだけ目標値M**に漸近させられるのかを求める構成としたので、各輪1〜4の駆動力の制限を越えることなくヨーモーメントMをドライバーにとって好適となる目標値M**に近づけることが可能となり、運転性の向上が期待できる。
図27は第5実施形態のフローチャートで、第3実施形態の図20、図21においてステップ81からステップ110までに置き換わるものである。第2実施形態の図16と同一部分には同一のステップ番号を付している。
図27においてステップ201、211の操作は図20のステップ81、91と同じである。すなわち、ステップ201で各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両挙動の基本値(車両前後方向力の基本値Fx##,ヨーモーメントの基本値M##)を推定し、ステップ211では車両挙動の目標値(車両前後方向力の動的目標値Fx**,ヨーレートの動的目標値γ**)と、ステップ201で求めている車両挙動の基本値(車両前後方向力の基本値Fx##,ヨーモーメントの基本値M##)との誤差ΔFx,ΔMを次の式(101)、式(102)によりそれぞれ求める。
ΔFx=Fx**−Fx## …(101)
ΔM=M**−M## …(102)
車両横方向力の動的目標値Fy**、車両横方向力の基本値Fy##は求めていないので、車両横方向力の動的目標値Fy**と車両横方向力の基本値Fy##との誤差ΔFyとして次の式(103)のようにゼロを設定する。
ΔFy=0 …(103)
ステップ251では、図22のフローチャートに従って各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4を求め、ステップ252でこの各輪1〜4の駆動力再補正量∂Fx1,∂Fx2,∂Fx3,∂Fx4を各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##に加算した値を、改めて各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##として、つまり次の式(104a)〜式(104d)により各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を再設定する。
Fx1##←Fx1##+∂Fx1 …(104a)
Fx2##←Fx2##+∂Fx2 …(104b)
Fx3##←Fx3##+∂Fx3 …(104c)
Fx4##←Fx4##+∂Fx4 …(104d)
図28は第6実施形態のフローチャートで、第4実施形態の図24、図25においてステップ82からステップ110までに置き換わるものである。第2実施形態の図16と同一部分には同一のステップ番号を付している。
図28においてステップ202、212の操作は図24のステップ82、92と同じである。すなわち、ステップ202で各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##によって実現する車両挙動の基本値(車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##)を推定し、ステップ212では車両挙動の目標値(車両前後方向力の動的目標値Fx**,車両横方向力の動的目標値Fy**)と、ステップ202で求めている車両挙動の基本値(車両前後方向力の基本値Fx##,車両横方向力の基本値Fy##)との誤差ΔFx,ΔFyを次の式(105)、式(106)により求める。ヨーモーメントの誤差ΔMについては次の式(83)のようにゼロを設定する。
ΔFx=Fx**−Fx## …(105)
ΔFy=Fy**−Fy## …(106)
ヨーモーメントの動的目標値M**、ヨーモーメントの基本値Fy##は求めていないので、ヨーモーメントの動的目標値M**とヨーモーメントの基本値M##との誤差ΔMとして次の式(107)のようにゼロを設定する。
ΔM=0 …(107)
ステップ253において図26のフローチャートに従って各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’を求め、ステップ254でこの各輪1〜4の駆動力再補正量∂Fx1’,∂Fx2’,∂Fx3’,∂Fx4’を各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##に加算した値を、改めて各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##として、つまり次の式(108a)〜式(108d)により各輪1〜4の駆動力基本値Fx1##,Fx2##,Fx3##,Fx4##を再設定する。
Fx1##←Fx1##+∂Fx1’ …(108a)
Fx2##←Fx2##+∂Fx2’ …(108b)
Fx3##←Fx3##+∂Fx3’ …(108c)
Fx4##←Fx4##+∂Fx4’ …(108d)
本発明は、図1に示す車両だけでなく、後輪を前輪とは違う角度で転舵できる車両や、ステアリング5の操舵量θと独立して各輪1〜4の舵角δ1,δ2,δ3,δ4を制御できる車両等、ステアバイワイヤを装備した車両にも適用可能である。
請求項1に記載の車両挙動目標値決定手段の機能は図6のステップ60により、駆動力基本値設定手段の機能は図6のステップ70により、車両挙動基本値演算手段の機能は図6のステップ80により、車両挙動誤差演算手段の機能は図6のステップ90により、駆動力補正量演算手段の機能は図7のステップ100により、駆動力目標値決定手段の機能は図7のステップ110により、各輪駆動力制御手段の機能は図6のステップ120によりそれぞれ果たされている。
請求項8に記載の車両挙動目標値決定手段の機能は図20のステップ61により、駆動力基本値設定手段の機能は図20のステップ71により、車両挙動基本値演算手段の機能は図20のステップ81により、車両挙動誤差演算手段の機能は図20のステップ91により、駆動力補正量演算手段の機能は図21のステップ100により、駆動力目標値決定手段の機能は図21のステップ110により、各駆動力制御手段の機能は図21のステップ120によりそれぞれ果たされている。
請求項9に記載の車両挙動目標値決定手段の機能は図24のステップ62により、駆動力基本値設定手段の機能は図24のステップ72により、車両挙動基本値演算手段の機能は図24のステップ82により、車両挙動誤差演算手段の機能は図24のステップ92により、駆動力補正量演算手段の機能は図25のステップ100により、駆動力目標値決定手段の機能は図25のステップ110により、各駆動力制御手段の機能は図25のステップ120によりそれぞれ果たされている。