以下、本発明の実施形態について図に基づいて説明する。なお、以下の各実施形態相互において、互いに同一もしくは均等である部分には、同一符号を付して説明を行う。
(第1実施形態)
図1は、本発明の第1実施形態にかかる車両制御装置が適用される車両の制駆動系のシステム構成を示した図である。ここでは、前輪側を主駆動輪、後輪側を従駆動輪とする駆動形態のフロント駆動ベースの4輪駆動車に対して本発明の一実施形態となる車両姿勢制御装置を適用した場合について説明するが、後輪側を主駆動輪、前輪側を従駆動輪とする駆動形態のリア駆動ベースの4輪駆動車に対しても適用可能である。
図1に示されるように、4輪駆動車の駆動系は、エンジン1、トランスミッション2、駆動力配分制御アクチュエータ3、フロントプロペラシャフト4、リアプロペラシャフト5、フロントデファレンシャル6、フロントドライブシャフト7、リアデファレンシャル8およびリアドライブシャフト9を有した構成とされ、エンジン制御手段となるエンジンECU10などによって制御されている。
具体的には、アクセルペダル11の操作量がエンジンECU10に入力されると、エンジンECU10によってエンジン制御が行われ、そのアクセル操作量に応じた駆動力を発生させるのに必要なエンジン出力(エンジントルク)が発生させられる。そして、このエンジン出力がトランスミッション2に伝えられ、トランスミッション2で設定されたギア位置に応じたギア比で変換されたのち、駆動力配分制御手段となる駆動力配分制御アクチュエータ3に伝えられる。トランスミッション2には、変速機2aと副変速機2bが備えられており、通常走行時には変速機2aで設定されたギア位置に応じた出力が駆動力配分制御アクチュエータ3に伝えられ、オフロード走行時や坂路走行時などにおいて副変速機2bが作動させられたときには副変速機2bで設定されたギア位置に応じた出力が駆動力配分制御アクチュエータ3に伝えられる。そして、駆動力配分制御アクチュエータ3によって決められた駆動力配分にしたがって、フロントプロペラシャフト4とリアプロペラシャフト5に駆動力が伝達されるようになっている。
そして、フロントプロペラシャフト4にフロントデファレンシャル6を介して接続されたフロントドライブシャフト7を通じて前輪FR、FLに前輪側の駆動力配分に応じた駆動力が付与される。また、リアプロペラシャフト5にリアデファレンシャル8を介して接続されたリアドライブシャフト9を通じて後輪RR、RLに後輪側の駆動力配分に応じた駆動力が付与される。
エンジンECU10は、CPU、ROM、RAM、I/Oなどを備えた周知のマイクロコンピュータによって構成され、ROMなどに記憶されたプログラムに従った各種演算や処理を実行することでエンジン出力(エンジントルク)を制御し、各輪FL〜RRに発生させられる駆動力を制御する。例えば、エンジンECU10は、周知の手法によりアクセル開度を入力し、アクセル開度や各種エンジン制御に基づいてエンジン出力を演算する。そして、このエンジンECU10からエンジン1に対して制御信号を出力することにより、燃料噴射量の調整などを行い、エンジン出力を制御する。エンジンECU10では、アクセル開度がアクセルオン閾値を超えている場合にアクセルペダル11がオンしていると判定できるが、本実施形態では、アクセルペダル11の操作が行われているか否かを示すアクセルスイッチ11aを備えており、このアクセルスイッチ11aの検知信号を入力することによってアクセルペダル11がオンしていることを検知している。また、エンジンECU10では、TRCも実行している。例えば、エンジンECU10は、後述するブレーキECU19から車輪速度や車体速度(推定車体速度)に関する情報を取得し、これらの偏差で表される加速スリップが抑制されるように、ブレーキECU19に制御信号を出力することで制御対象輪に制動力を加えることで駆動力を低下させる。これにより、加速スリップが抑制されて、効率良く車両を加速させられるようにしている。
なお、ここでは図示していないが、トランスミッション2の制御はトランスミッションECUで行われ、駆動力配分制御については駆動力配分ECUなどで行われている。これら各ECUとエンジンECU10とは車載LAN12を通じて互いに情報交換を行っている。図1では、トランスミッション2の情報が直接エンジンECU10に入力されるようになっているが、例えばトランスミッションECUから出力されたトランスミッション2のギア位置情報が車載LAN12を通じてエンジンECU10に入力されるようになっていても良い。
一方、制動系を構成するサービスブレーキは、ブレーキペダル13、マスタシリンダ(以下、M/Cという)14、ブレーキアクチュエータ15、ホイールシリンダ(以下、W/Cという)16FL〜16RR、キャリパ17FL〜17RR、ディスクロータ18FL〜18RRなどを有した構成とされ、ブレーキ制御手段となるブレーキECU19によって制御されている。
具体的には、ブレーキペダル13が踏み込まれて操作されると、そのブレーキ操作量に応じてM/C14内にブレーキ液圧が発生させられ、それがブレーキアクチュエータ15を介してW/C16FL〜16RRに伝えられる。これにより、キャリパ17FL〜17RRによってディスクロータ18FL〜18RRが挟み込まれることで、制動力が発生させられるようになっている。このような構成のサービスブレーキは、W/C16FL〜16RRを自動加圧できる構成であればどのようなものであっても良く、ここでは油圧によりW/C圧を発生させられる油圧サービスブレーキを例に挙げているが、電気的にW/C圧を発生させるブレーキバイワイヤなどの電動サービスブレーキであっても良い。
ブレーキECU19は、CPU、ROM、RAM、I/Oなどを備えた周知のマイクロコンピュータによって構成され、ROMなどに記憶されたプログラムに従った各種演算や処理を実行することで制動力(ブレーキトルク)を制御し、各輪FL〜RRに発生させられる制動力を制御する。具体的には、ブレーキECU19は、各車輪FL〜RRに備えられた車輪速度センサ20FL〜20RRからの検出信号を受け取って、車輪速度や車体速度などの各種物理量を演算したり、ブレーキスイッチ21の検出信号を入力し、物理量の演算結果およびブレーキ操作状態に基づいてブレーキ制御を行う。また、ブレーキECU19は、M/C圧センサ22の検出信号を受け取ってM/C圧を検出している。
また、ブレーキECU19は、制動力の制御に基づいて、オフロードにおける車両制御であるオフロードサポートコントロール(以下、OSCという)も実行している。具体的には、ブレーキECU19は、ドライバがOSCを要求する際に操作するOSCスイッチ23の検出信号や、車両の荷重の変化を示すサスストロークを検出するサスストロークセンサ24FL〜24RRおよび前後加速度を検出する加速度センサ25の検出信号を入力し、これらの検出信号に基づいてOSCを実行している。OSCスイッチ23は、基本的にはオフロード走行を行う場合に押下されると考えられるが、急坂路などにおいて押下されても同様の制御が行われる。なお、図1ではM/C圧センサ22と加速度センサ25の検出信号はブレーキアクチュエータ15を介して、ブレーキECU19へ入力されるようになっているが、各センサから直接ブレーキECU19へ入力される構成であっても良い。
以上のようにして、本実施形態にかかる車両制御装置が適用される車両の制駆動系のシステムが構成されている。続いて、上記のように構成された車両制御装置の作動について説明する。なお、本実施形態にかかる車両制御装置では、車両制御として通常のエンジン制御やブレーキ制御も行っているが、これらについては従来と同様であるため、ここでは本発明の特徴に関わるOSCについて、OSCと協調して行われるTRCと共に説明する。
OSCは、ドライバがOSCスイッチ23を押下して、OSCの実行要求があったときに実行される。本実施形態に掛かる車両制御装置では、OSCとして、(1)ドライバがアクセルペダル11を踏み込んで車両を進行させたいときには発進・加速させられるようにすること、(2)1つのペダル操作によって車両制御が行われるようにすることで操作性を容易化すること、(3)車両の走行状態に合ったTRCを行うようにして、走破性を向上させること、などを満たす制御を実行している。
(1)の制御については、ドライバの意図に沿って車両を発進・加速させられるようにすることで、オフロード走行などが不慣れなドライバ等においても、ドライバの意図する走行が行えるようにするために行う。例えば、路面抵抗に応じて駆動力増加を行ったり、ドライバによるアクセルペダル11の操作量の増加に応じた駆動力増加を行っている。
まず、路面抵抗に応じた駆動力増加については、例えば、以下の状況などにおいて実施している。
例えば、急勾配の路面を登るときなどには、車両の進行が妨げられることから、路面勾配に応じた駆動力増加を行うようにする。このように、路面勾配に応じた駆動力増加を行うことで、急勾配の路面を登るときなどでも、その路面勾配分の駆動力が増加されているため、ドライバのアクセル操作によって駆動力を増加させたときに円滑に坂路を登ることが可能となる。路面勾配については、加速度センサ25の検出信号に含まれる重力加速度成分に基づいて、周知の手法によって演算することができる。なお、この路面勾配に応じた駆動力増加分を以下の説明では坂路勾配駆動力SLOPEという。
また、TRCによって、加速スリップが発生した車輪に対して、加速スリップを抑制するように制御対象輪に制動力を加えるようにしているが、その制動力分の駆動力を他の車輪に加算することで、駆動力増加を行うようにする。これにより、加速スリップ抑制による駆動力の低下分を他の車輪の駆動力に加算でき、トータルの駆動力低下を抑制することが可能となる。なお、このTRCによる制御対象輪の駆動力の減少分に対応して他の車輪に加える駆動力増加分を以下の説明ではスリップ相当駆動力VWSLIPという。
この場合、スリップにより低下した路面摩擦力(以下、路面μという)分として駆動力増加を行うようにしても良い。例えば、加速スリップが発生した場合に、TRCによって抑制制御対象輪に制動力を発生させることで加速スリップが抑制されるが、加速スリップが無くなるのではなく、ある程度は発生した状態になる。このため、そのスリップにより低下した路面μ分の駆動力増加を行うようにする。これにより、スリップにより低下した路面μ分の駆動力を他の車輪の駆動力に加算でき、トータルの駆動力低下を抑制することが可能となる。
同様に、車輪間での車両の荷重移動によって路面接地荷重が低下した車輪がある場合に、その路面接地荷重の低下に基づく駆動力低下分、他の車輪の駆動力増加を行うようにしても良い。これにより、路面接地荷重の低下により低下した駆動力を他の車輪の駆動力に加算でき、トータルの駆動力低下を抑制することが可能となる。車輪間での荷重移動に基づく接地荷重の変化については、サスストロークセンサ24FL〜24RRの検出信号に基づいて検出することができる。これら、加速スリップに基づく制動力の減少分に対応する駆動力増加、スリップにより低下した路面μ分の駆動力増加、接地荷重の変化に対応する駆動力増加については、いずれか1つを選択して行っても良いし、複数の組み合わせて同時に行っても良い。
さらに、車体速度のフィードバックに基づく駆動力増加を行うようにすることもできる。すなわち、アクセルペダル11の操作量に応じたエンジン出力に対応する目標速度をエンジン目標閾値速度として、このエンジン目標閾値速度を演算し、実際の車体速度との偏差に基づき、車体速度が目標速度に近づくようにフィードバック制御を行う。フィードバック制御の形態については、従来からある一般的なものであれば良く、例えばPID制御等を行うことができる。なお、この車体速度のフィードバックに基づく駆動力増加分を以下の説明ではフィードバック駆動力V0FBという。
一方、ドライバによるアクセルペダル11の操作量の増加に応じた駆動力増加については、以下の状況などにおいて実施している。
まず、アクセルペダル11の操作量に応じたエンジン目標閾値速度の設定を行う。アクセルペダル11の操作量が大きいほど、よりエンジン目標閾値速度を大きくする。ただし、OSCが実行されるようなオフロード走行中には、必要以上に目標速度を大きくするのは好ましくないため、所定速度(例えば6km/h)以下の範囲内において、アクセルペダル11の操作量に応じたエンジン目標閾値速度を設定するのが好ましい。
また、アクセル開度に応じた駆動力増加を行う。すなわち、アクセル開度が大きいほど、ドライバによる加速要求の度合が高いと考えられるため、アクセル開度が大きいほど駆動力増加分を大きくするというフィードフォワード制御を行う。これにより、よりドライバの加速要求に対応した駆動力を発生させることが可能となる。このアクセル開度に応じた駆動力増加を以下の説明ではアクセル相当駆動力ACC_FORCEという。
ただし、アクセル開度が大きくても、車体速度がエンジン目標閾値速度に近づいてきたような場合には、所望の速度が出ている状態であって、駆動力増加が必要なくなると考えられるため、車体速度の増加に伴って、ACC_FORCEを小さくしていくのが好ましい。
また、ブレーキペダル13の操作に基づいて車両を停止させた時にもOSCを継続するが、その場合には、ブレーキペダル13の操作量に応じた制動力分、駆動力を減算する。すなわち、車両停止場所が坂路である場合には、坂路勾配駆動力SLOPEが発生させられることになるが、ブレーキペダル13が踏み込まれて制動力が発生させられていれば、その分、駆動力を低下させても車両は下方にずり下がらない。このため、車両停止時にブレーキペダル13の操作に基づく制動力が発生させられている場合には、その分、駆動力を低下させることで、燃費向上を図ることができる。なお、このブレーキペダル13の操作に基づく駆動力低下分を以下の説明ではブレーキ相当駆動力FOOTBRAKEという。
(2)の制御については、障害物を乗り越えた後に車両が飛び出したり、急な降坂路で車両が加速するなど、ドライバの意図と車両の加減速にずれが生じることを防ぐために行う。つまり、オフロード走行などにおいては、車両の走行状態が刻々と変化するため、ドライバがアクセル操作やブレーキ操作を適切に行い難く、ドライバが車両を平坦路のように運転したのではドライバの意図通りに車両が動作してくれない。このため、(2)の制御を実行することで、より簡単な操作によって、車両をドライバの意図に沿った速度に制御できるようにする。例えば、アクセル操作を緩めれば車両が減速するようにし、ブレーキ操作が少しでもあれば車両を減速させるようにする。
まず、アクセル操作が変化していないのに急に車両が加速する場合やアクセル操作が緩められたときに車両を減速することで、アクセルペダル11からブレーキペダル13への踏み替えを行わなくても素早く減速できるようにする。
例えば、障害物を乗り越えた後や急勾配の降坂路に変化した場合など、アクセル操作が変化していないのに急に車両が加速する場合がある。このような場合に対応して、アクセル開度に応じたエンジン目標閾値速度を演算しつつ、急に車両が加速した時にブレーキ制御を介入させるようにし、急な加速を抑制して徐々に速度が上がるようにする。つまり、車両の目標速度に上限値ガードを設けて、ドライバの意図に反して車両が急に加速してしまわないようにする。このような上限値ガードを行う車両の目標速度をOSCブレーキ目標閾値速度としてエンジン目標閾値速度とは別に設定し、車体速度がOSCブレーキ目標閾値速度に達すると、ブレーキ制御によって制動力を発生させるようにする。
また、アクセル操作が緩められた場合には、ドライバが車両を減速させたい状況であると考えられるため、アクセル戻し量に応じて目標減速度を設定し、この目標減速度を加味してOSCブレーキ目標閾値速度を設定する。そして、アクセルペダル11が急に戻されるようなアクセル戻し操作が行われた場合には、目標減速度を大きな値に設定し、所定の時間Tの間、目標減速度を大きくする期間(以下、この期間を減速度大期間Tという)とする。この減速度大期間Tについては一定時間に固定することもできるが、例えばアクセル戻し操作の速度に応じて減速度大期間Tが長くなるようにしても良い。これにより、アクセル戻し操作に対応した大きな減速度を得ることができる。なお、本実施形態では、アクセル操作がオフされて戻し操作が行われたときに、減速度大期間Tを設けるようにしているが、アクセル戻し操作が急な場合、例えば単位時間当たりのアクセル戻し量が閾値よりも大きいときに、小さい場合と比較して減速度が大きくなるように、減速度大期間Tが設定されるようにしても良い。
また、アクセル操作が止められてアクセルオフとなり、エンジン出力がアイドル状態になったとき(以下、IDLEオンという)の時間であるIDLEオン時間に応じて目標減速度を設定し、この目標減速度を加味してOSCブレーキ目標閾値速度を設定する。例えば、急なアクセル戻し操作によってIDLEオンになったら、減速度大期間Tが設けられるが、IDLEオン時間が減速度大期間Tに達したら、その後は、急なアクセル戻し操作の際に設定される目標減速度よりも小さな通常時の目標減速度を設定し、これに基づいてOSCブレーキ目標閾値速度を設定する。
一方、ブレーキ操作が少しでもあった場合、ドライバがブレーキペダル13を少しでも踏み込んだ場合にも、車両を減速させるようにする。つまり、アクセル操作やブレーキ操作が何も行われていないときには、車体速度が緩やかに減速させられることになるが、ブレーキ操作が少しでもあった場合、ドライバが減速度不足を感じていると考えられる。このため、ブレーキ操作が少しでもあった場合には、それに対応してIDLEオンのときよりも大きな目標減速度を設定し、この目標減速度を加味してOSCブレーキ目標閾値速度を設定する。
また、ドライバによるブレーキ操作に応じて、目標減速度を大きくする。例えば、ドライバによるブレーキペダル13の踏み込みが強いときや降坂路の路面勾配が急に緩やかになり、車両の減速度が目標減速度より下回ったときには、車体速度に追従させるように目標減速度を設定して、OSCブレーキ目標閾値速度を車体速度まで低下させる。このようにすることで、車両の減速度が目標減速度よりも下回ったときに、車体速度とOSCブレーキ目標閾値速度とが乖離してしまうことを防止できる。
(3)の制御については、オフロード走行などにおいて、車両の走行状態に応じたブレーキ制御量に補正するために行われ、車体速度と監視時間に基づいて、ブレーキ制御量およびTRCの制御閾値となる目標速度の切り替えを行う。TRCの目標速度は、加速スリップを抑制するための制動力付与の実行を判定する閾値であり、車体速度にスリップ速度を加算した値として設定され、駆動輪の車輪速度がこの目標速度を超えると、その駆動輪に制動力を付与することで加速スリップが抑制される。以下、このTRCにおける目標速度をTRCブレーキ目標閾値速度という。
例えば、オフロード走行などではドライバがアクセルを過剰に踏み込み易く、車輪にスリップが発生してTRCが実行されることがある。その場合に、駆動力をスリップ車輪から他の車輪へ伝達する方が走破性があがる走行状態と、スリップが収まって、付加した制動力が過剰となり、車体速度V0が低下して走破性が低下する走行状態がある。前者は、失速回避要求の度合いが低い走行状態であり、後者は失速回避要求の度合いが高い走行状態であると考えられる。このため、失速回避要求の度合いに合わせてブレーキ制御量を補正し、走行状態にあったブレーキ制御量となるようにする。
具体的には、車体速度が低い場合は、走行困難な路面を走行している場合が多く、失速回避要求の度合いが小さい。このため、この場合には、より強力にブレーキ制御に基づく車輪スリップ抑制を行うことで、LSD(Limited-Slip Defferential(差動歯車装置))効果を発揮させて走破性を高めるようにし、かつ、より減速度を発生させられるようにすることで安全性を高めるようにする。すなわち、車体速度に応じてTRCブレーキ目標閾値速度が切り換わるようにしている。そして、車体速度が速くなれば、走行困難な場所を脱出できており、失速回避要求の度合いが高いと考えられるため、ブレーキ制御量が低くなるように切り替えを行い、ドライバがより速く走行したいような状況において、大きな制動力を発生させてしまうことでドライバの要求する速度が得られなくなることを防止する。このような車体速度に応じた制御は、後述するように、TRCにおけるブレーキ制御量に対して掛け合わされる補正係数であるTRCbrake補正係数TBの設定に用いている第1ブレーキ係数TB1やスリップ速度TVの設定に用いている第1閾値TV1を車体速度に応じて設定することにより実現している。
さらに、このようなブレーキ制御量やTRCブレーキ目標閾値速度の切り替えが頻繁に行われると、切り替えによるブレーキ制御量の変動などが大きくなるため、それを低減させるために、所定の監視時間を設定している。そして、監視時間の期間中、切り替え条件を満たしている場合に、ブレーキ制御量やTRCブレーキ目標閾値速度の切替えを行うようにしている。例えば、1秒間を所定の監視時間として、その時間、切り替え条件を満たした場合に上記切替えを行っている。
また、アクセル開度により、ブレーキ制御量およびTRCブレーキ目標閾値速度を切り替えるようにする。具体的には、アクセルペダル11の踏み込み初期には駆動力が大きくなるので、ブレーキ制御量を増加させる。そして、さらにアクセルペダル11の踏み込みが続けば、加速によるスリップ量が大きくなり、制動力が大きくなり過ぎるので、踏み込み初期よりもブレーキ制御量を低下させる。このようなアクセル開度に応じた制御は、TRCbrake補正係数TBの設定に用いるTRCブレーキ係数補正値TBKやスリップ速度TVの設定に用いるTRC閾値補正値TVKをアクセル開度率に応じて設定することにより実現している。
また、路面抵抗によって、ブレーキ制御量およびTRCブレーキ目標閾値速度を切り替えるようにする。路面抵抗が大きいときには、ブレーキ制御によって制動力が発生させられたときに車両が失速し易くなるので、路面抵抗が小さい路面よりもブレーキ制御量を小さくする。例えば、砂漠路や泥濘路などを走行しているときには、路面抵抗が大きいため、制動力を発生させると車両が失速し易い。このような路面抵抗に応じた制御は、TRCbrake補正係数TBの設定に用いる第2ブレーキ係数TB2やスリップ速度TVの設定に用いるTRC閾値TV2を路面抵抗に応じて設定することにより実現している。
以上のように、OSCを実行する際には、(1)〜(3)の制御を実行するようにしている。また、OSCを実行しない場合であっても、TRCなどについて通常通り行っており、OSCを実行するか否かに応じて、TRCにおける各値が設定されるようにしている。このようにして、OSCやTRCを実行する。
続いて、このようにして実行されるOSCの詳細について説明する。図2は、TRCを含めたOSCの全体を示したフローチャートである。この図に示すフローチャートは、ブレーキECU19にて所定の制御周期毎に実行される。以下、この図を参照して、OSCの詳細を説明する。
まず、ステップ100では、各種入力処理を行う。具体的には、各車輪速度センサ20FL〜20RRの検出信号、加速度センサ25の検出信号を入力することで、各車輪FL〜RRの車輪速度VW**を演算すると共に車両の前後加速度Gxを演算する。なお、車輪速度VW**に付した添え字の**は、FL〜RRのいずれかを示しており、VW**は対応する各車輪FL〜RRの車輪速度を統括的に表記したものである。以下の説明においても、添え字の**はFL〜RRのいずれかを示しているものとする。
また、M/C圧センサ22の検出信号を入力してM/C圧を検出したり、サスストロークセンサ24FL〜24RRの検出信号を入力してサスペンションのストロークを検出することで車両の荷重の変化を検出する。また、エンジン開度、駆動力、副変速機2bのギヤ位置、すなわちH4とL4のいずれに位置しているかをエンジンECU10などから車載LAN12を通じて入力する。さらに、OSCスイッチ23の検出信号を入力し、ドライバがOSCを要求している状態であるか否かを検出する。
次に、ステップ105に進み、OSCの実行条件を満たしているか否か、具体的には、副変速機2bのギア位置がL4、つまりオフロードなどで用いられる低速ギアのギア比が設定されており、かつ、OSCスイッチ23がオンされているか否かを判定する。ここで、肯定判定されればOSCの実行条件を満たしているためステップ110に進んでOSC制御許可を示すフラグをセットし、否定判定されればOSCの実行条件を満たしていないためステップ115に進んでOSC制御禁止を示すフラグをセットする。
続いて、ステップ120に進み、各車輪速度VW**に基づいて車体速度V0を演算すると共に、各車輪速度VW**と車体速度V0の偏差(=(VW**−V0)/V0)として表されるスリップ率Sratio**を演算する。さらに、ステップ125に進み、車体速度V0を時間微分することで車体加速度V0'を演算する。そして、ステップ130に進み、坂路勾配駆動力SLOPEを演算する。まず、車体加速度V0'とステップ100で加速度センサ25の検出信号に基づいて演算した車両の前後加速度Gxとの差が重力加速度成分に相当することから、路面勾配θ=sin-1{(Gx−V0')/9.8}の演算式を用いて、路面勾配θを演算する。そして、その演算結果に基づいて、その路面勾配θにおいて車両が下方にずり下がらないようにするために必要な坂路勾配駆動力SLOPEを演算する。
その後、ステップ135に進み、ブレーキ相当駆動力FOOTBRAKEを演算する。ここでは、ステップ100でM/C圧センサ22に基づいて演算したM/C圧がブレーキペダル13の操作量に対応していることから、このM/C圧に基づいてブレーキペダル13の操作に基づく制動力を演算し、これをブレーキ相当駆動力FOOTBRAKEとする。
そして、ステップ140に進み、OSC制御禁止が設定されているか否かを判定する。ここで否定判定された場合には、ステップ145に進んで、OSC時のアクセル操作量に応じたエンジン出力に対応するエンジン目標閾値速度を演算する。上記したように、エンジン目標閾値速度は、フィードバック制御を実行する際の目標速度となる値である。エンジン目標閾値速度は、アクセル開度の割合であるアクセル開度率(%)に基づいて演算される。
図3は、エンジン目標閾値速度の設定方法を記載した図表である。ここでは、仮のエンジン目標閾値速度をTVEtmp1と表記し、実際に設定されるエンジン目標閾値速度をTVEと表記してある。また、図4は、アクセル開度率と仮のエンジン目標閾値速度TVEtmp1との関係を示したマップである。
図4に示すように、アクセル開度率と対応したエンジン目標閾値速度TVEtmp1を求める。ここでは、エンジン目標閾値速度TVEtmp1は、アクセル開度率に比例してアクセル開度率が大きくなるほど大きな値として求められる。ただし、OSCが実行されるようなオフロード等においては、アクセルペダル11の操作量が大きくても、その操作量通りに駆動力を発生させると凸路を乗り越えたときに車両が飛び出す可能性があるため、仮のエンジン目標閾値速度TVEtmp1をある程度の値に抑える方が好ましい。このため、本実施形態では、仮のエンジン目標閾値速度TVEtmp1に上限値を設けて、アクセル開度率が所定の閾値(図4では40%)を超えると、仮のエンジン目標閾値速度TVEtmp1を上限値に制限するようにしている。
そして、図3に示すように、エンジン目標閾値速度を、制動状態であれば0km/hに設定する。また、前回の制御周期の際に設定されたエンジン目標閾値速度TVEと比較して仮のエンジン目標閾値速度TVEtmp1の方が大きければ、今回の制御周期におけるエンジン目標閾値速度TVEを前回の制御周期において設定されたエンジン目標閾値速度TVEに対して一定の加速度(図3では0.03G)を足した値に設定する。さらに、制動状態もしくは前回の制御周期の際に設定されたエンジン目標閾値速度TVEよりも仮のエンジン目標閾値速度TVEtmp1の方が大きくなければ、仮のエンジン目標閾値速度TVEtmp1を今回の制御周期のエンジン目標閾値速度TVEとして設定する。そして、1〜3の順番で優先順位を付け、条件が重なった場合には、優先順位の順番で、今回の制御周期のエンジン目標閾値速度TVEを設定する。このようにして、今回の制御周期のエンジン目標閾値速度TVEが設定される。
この後、ステップ150に進み、アクセル操作量要求駆動力を演算する。アクセル操作量要求駆動力とは、上記した(1)の制御を行うために必要な駆動力であり、坂路勾配駆動力SLOPE、スリップ相当駆動力VWSLIP、フィードバック駆動力V0FB、アクセル相当駆動力ACC_FORCE、およびブレーキ相当駆動力FOOTBRAKEから求められる値である。ここでは、アクセル操作量要求駆動力をエンジン要求値として演算している。
図5は、このアクセル操作量要求駆動力の演算処理の詳細を示したフローチャートである。
まず、ステップ200では、アクセル開度の割合であるアクセル開度率(%)に基づいて、仮の要求駆動力ACC_REQを求める。仮の要求駆動力ACC_REQは、アクセル操作量に対応した駆動力であるが、上記した路面勾配やスリップなどによる駆動力増加などを加味していない値である。アクセル開度率と仮の要求駆動力ACC_REQとの関係については、予めシミュレーションなどによって求めてあり、例えばアクセル開度率が大きくなるほど仮の要求駆動力ACC_REQが大きくなるようにしてある。ただし、OSCが実行されるようなオフロード等においては、アクセルペダル11の操作量が大きくても、その操作量通りに駆動力を発生させると凸路を乗り越えたときに車両が飛び出す可能性があるため、仮の要求駆動力ACC_REQをある程度の値に抑える方が好ましい。このため、本実施形態では、仮の要求駆動力ACC_REQに上限値を設けて、アクセル開度率が所定の閾値(図5では40%)を超えると、仮の要求駆動力ACC_REQを上限値に制限するようにしている。
続いて、ステップ205に進み、要求駆動補正係数ACC_RATIOを求める。要求駆動補正係数ACC_RATIOは、車体速度V0に応じてアクセル相当駆動力ACC_FORCEを補正するための係数である。すなわち、アクセルペダル11の操作量が大きいほど、より要求駆動力を大きくすることになるが、OSCが実行されるようなオフロード走行中には、必要以上に要求駆動力を大きくするのは好ましくない。このため、車両停止時(車体速度V0=0km/h)のときの要求駆動補正係数ACC_RATIOを1として、車体速度V0が所定速度(例えば6km/h)に至るまでに線形的に要求駆動補正係数ACC_RATIOを低下させる。つまり、走行し始めたら、例えば走行の妨げになっている障害物を乗り越えたと判断し、要求駆動補正係数ACC_RATIOを低下させてアクセル相当駆動力ACC_FORCEを低下させられるようにする。そして、車体速度V0が所定速度を超えると要求駆動補正係数ACC_RATIOを0として、車体速度V0が所定速度を超えることを抑制する。
この後、ステップ210に進み、ステップ200で演算した仮の要求駆動力ACC_REQに対して、要求駆動補正係数ACC_RATIOを掛け合わせることにより、アクセル相当駆動力ACC_FORCEを演算する。
そして、ステップ215に進み、アクセル操作量要求駆動力に相当するエンジン要求値ENG_REQを演算する。具体的には、坂路勾配駆動力SLOPE、スリップ相当駆動力VWSLIP、フィードバック駆動力V0FB、アクセル相当駆動力ACC_FORCEを足し合わせると共に、そこからブレーキ相当駆動力FOOTBRAKEを差し引くことで、エンジン要求値ENG_REQを演算する。
例えば、坂路勾配駆動力SLOPEについては、図2のステップ130で求めた値を用いている。
スリップ相当駆動力VWSLIPについては、図2のステップ120で演算したスリップ率Sratio**に基づいてTRCが行われるため、TRCにおいて演算している加速スリップを抑制するための制動力を入力し、それを制御対象輪の駆動力の減少分として用いている。なお、TRCを行っていない車両の場合には、単にスリップ率からスリップにより低下した路面μ分に対応する駆動力を求め、それをスリップ相当駆動力VWSLIPとして用いても良い。また、図2のステップ100で入力したサスストロークセンサ24FL〜24RRの検出信号に基づいて各車輪の荷重を求め、車輪間での荷重移動に基づく接地荷重の低下に対応する駆動力低下分を演算し、これをスリップ相当駆動力VWSLIPとして用いても良い。具体的には、例えば、各車輪の接地荷重に基づいて各車輪が路面に伝達可能な駆動力を演算し、各車輪に付与される駆動力が伝達可能な駆動力を上回った車輪があるとき、上回った駆動力分を加算することでスリップ相当駆動力VWSLIPを求めることができる。
また、フィードバック駆動力V0FBについては、図2のステップ120、145で演算した車体速度V0がエンジン目標閾値速度に近づくようにフィードバック制御によって演算される駆動力増加分を用いている。アクセル相当駆動力ACC_FORCEについては、ステップ210で求めた値を用いている。そして、ブレーキ相当駆動力FOOTBRAKEについては、図2のステップ135で演算した値を用いている。このようにして、アクセル操作量要求駆動力に相当するエンジン要求値ENG_REQが演算される。
このエンジン要求値ENG_REQは、エンジンECU10に伝えられ、エンジン制御において設定される駆動力よりもエンジン要求値ENG_REQが上回ったときにのみ、それが反映され、エンジン要求値ENG_REQに対応する駆動力が発生させられるようにエンジン出力が制御される。これにより、(1)の制御を行うために必要な駆動力を発生させることができる。
この後、ステップ155に進み、OSCブレーキ目標閾値速度の演算処理を行う。OSCブレーキ目標閾値速度は、上記した(2)の制御において説明したように、車体速度が大きくなったときにブレーキ制御によって制動力を発生させるようにする閾値である。図6に、OSCブレーキ目標閾値速度の演算処理のフローチャートを示し、この図を参照してOSCブレーキ目標閾値速度の演算処理の詳細について説明する。
まず、ステップ300において、仮に設定される第1ブレーキ目標閾値速度TVBtmp1を演算する。ここでは、前回の制御周期のときに設定されたOSCブレーキ目標閾値速度TVBと今回の制御周期のときの車体速度V0のいずれか小さい方を第1ブレーキ目標閾値速度TVBtmp1に設定している。このとき、前回の制御周期のときに設定されたOSCブレーキ目標閾値速度TVBのみではなく車体速度V0も加味している。このため、後述するように、ブレーキ操作によって車体速度V0が急に低下してブレーキ目標閾値速度TVBよりも下回ったときに、ブレーキ目標閾値速度TVBが車体速度V0に追従して低下するようにできる。
次にステップ305に進み、仮に設定される第2ブレーキ目標閾値速度TVBtmp2を設定する。図7は、第2ブレーキ目標閾値速度TVBtmp2の設定方法を記載した図表である。
図7に示すように各種条件を設定してあり、各種条件に応じて第2ブレーキ目標閾値速度TVBtmp2を設定している。そして、エンジン目標閾値速度TVEと同様に、1〜6の順番で優先順位を付け、条件が重なった場合には、優先順位の順番で、今回の制御周期の第2ブレーキ目標閾値速度TVBtmp2を設定する。
まず、バックアップ制御が行われており、かつ、車体速度が10km/h未満の状態においては、第2ブレーキ目標閾値速度TVBtmp2を前回の制御周期のときのブレーキ目標閾値速度TVBに対して第1加速度(ここでは0.025G)で加速させた値としている。バックアップ制御とは、何らかの異常が発生してOSCの実行をフェールセーフの観点から解除した場合、もしくはOSCスイッチ23がオフされたときを示している。この場合には、車体速度V0に応じて第2ブレーキ目標閾値速度TVBtmp2を設定している。また、車体速度V0が10km/h以上の状態においては、第2ブレーキ目標閾値速度TVBtmp2を前回の制御周期のときのブレーキ目標閾値速度TVBに対して第1加速度よりも大きな第2加速度(ここでは0.05G)で加速させた値としている。
また、アクセル操作がある場合、アクセル開度率に応じたアクセル加速度ACCEL_Gを演算し、これを前回のブレーキ目標閾値速度TVBに足し合わせることで(TVB+ACCEL_G)、ブレーキ目標閾値速度TVBを演算する。アクセル加速度ACCEL_Gについては、図8に示すアクセル開度率(%)とアクセル加速度ACCEL_Gとの関係を用いて演算している。
すなわち、アクセル開度率が大きいほどアクセル加速度ACCEL_Gが大きくなるようなマップを予めシミュレーションなどによって求めておき、そのマップを用いてアクセル開度率に対応するアクセル加速度ACCEL_Gを演算する。ただし、OSCが実行されるようなオフロード等においては、アクセルペダル11の操作量が大きくても、その操作量通りに駆動力を発生させると凸路を乗り越えたときに車両が飛び出す可能性があるため、アクセル加速度ACCEL_Gをある程度の値に抑える方が好ましい。このため、本実施形態では、アクセル加速度ACCEL_Gに上限値を設けて、アクセル開度率が所定の閾値(図8では45%)を超えると、アクセル加速度ACCEL_Gを上限値に制限するようにしている。
なお、これらの条件において第2ブレーキ目標閾値速度TVBtmp2を設定する場合、基準として前回の制御周期のブレーキ目標閾値速度TVBを用いており、第1ブレーキ目標閾値速度TVBtmp1 を基準として用いていない。これは、今回の制御周期の車体速度V0が低いと、この車体速度V0が第1ブレーキ目標閾値速度TVBtmp1に設定され、その車体速度V0を基準として第2ブレーキ目標閾値速度TVBtmp2を設定することになって、フィードバック量が少なくなり過ぎて、素早くブレーキ目標閾値速度TVBを変化させることができなくなるためである。
また、アクセル操作がオフされることで制動中とされたときには、車両を比較的大きな目標減速度(例えば0.1G)で減速させるようにする。つまり、ブレーキ操作が行われたときには、ブレーキ操作に合わせて、車両を所定減速度で減速させるように第2ブレーキ目標閾値速度TVBtmp2を設定する。
また、IDLEオン時間が減速度大期間T未満のときにも、車両を比較的大きな目標減速度(例えば0.1G)で減速させるようにする。つまり、急にアクセル戻し操作が行われたときには、目標減速度を大きな値に設定し、減速度大期間Tが経過するまでその目標減速度が設定されるようにし、その目標減速度に基づいて第2ブレーキ目標閾値速度TVBtmp2を設定する。
そして、上記した条件のいずれにも該当しない場合には、車両を比較的小さな目標減速度(例えば0.025G)で減速させるように第2ブレーキ目標閾値速度TVBtmp2を設定する。例えばIDLEオンかつブレーキ操作が行われていない状態であって、減速度大期間Tを経過した後の状態などが該当する。なお、減速度大期間Tについては、単位時間当たりのアクセル戻し量に相当するアクセル閉じ勾配速度に応じて可変にでき、例えば図9に示すアクセル閉じ勾配速度と減速度大期間Tとの関係に基づいて、アクセル閉じ勾配速度が大きくなるほど減速度大期間Tが大きくなるようにすると好ましい。これにより、アクセル戻し量が大きいときに、より減速度大期間Tを長く設定することが可能となる。
このようにして、第2ブレーキ目標閾値速度TVBtmp2が設定される。その後、ステップ310に進み、仮に設定される第3ブレーキ目標閾値速度TVBtmp3を設定する。第3ブレーキ目標閾値速度TVBtmp3については、ステップ305で設定された第2ブレーキ目標閾値速度TVBtmp2と今回の制御周期の車体速度V0に対してアクセル操作量に基づいて演算される速度上限値ACCEL_UPを加算した値のいずれか小さい方を選択することにより設定している。上記したように、第2ブレーキ目標閾値速度TVBtmp2については、第1ブレーキ目標閾値速度TVBtmp1もしくは前回の制御周期のブレーキ目標閾値速度TVBを基準として設定しており、車体速度V0とアクセル操作量とを考慮して想定される値から乖離した値に設定されることがある。このため、車体速度V0に速度上限値ACCEL_UPを加算した値を上限値に設定して上限ガードを掛けて、第3ブレーキ目標閾値速度TVBtmp3を設定するようにしている。速度上限値ACCEL_UPについては、図10に示すアクセル開度率(%)と速度上限値ACCEL_UPとの関係を用いて演算している。
すなわち、アクセル開度率が大きいほど速度上限値ACCEL_UPが大きくなるようなマップを予めシミュレーションなどによって求めておき、そのマップを用いてアクセル開度率に対応する速度上限値ACCEL_UPを演算する。なお、この場合にも、速度上限値ACCEL_UPに上限値を設けてあり、アクセル開度率が所定の閾値(図10では60%)を超えると、速度上限値ACCEL_UPを上限値に制限するようにしている。このため、アクセル操作に対応して車体速度V0が増加しているときには、速度上限値ACCEL_UPを上限ガードとして、その増加勾配を超えないようにして車体速度V0が増加させられるようになる。
この後、ステップ315に進み、第3ブレーキ目標閾値速度TVBtmp3と所定の下限速度(図6では0.8km/h)のいずれか大きい方を最終的なブレーキ目標閾値速度TVBに設定する。つまり、上記した様々な条件に基づいて第3ブレーキ目標閾値速度TVBtmp3を演算しているが、仮に第3ブレーキ目標閾値速度TVBtmp3が所定の下限速度未満であったとしても、少なくとも下限速度で車両を走行させられるように、ブレーキ目標閾値速度TVBに下限値ガードを掛けている。以上のようにして、ブレーキ目標閾値速度TVBが設定される。
続いて、ステップ160に進み、TRCブレーキ目標閾値速度およびTRCにおけるブレーキ制御量に対して掛け合わされる補正係数であるTRCbrake補正係数TBなど各種値を演算する。なお、TRCブレーキ目標閾値速度は、車体速度V0に対してスリップ速度TVを加算した値であり、車体速度V0は可変な値であるため、ここではスリップ速度TVを設定することによってTRCブレーキ目標閾値速度を演算したこととしている。
図11〜図13を参照して、TRCブレーキ目標閾値速度およびTRCbrake補正係数TBの演算方法について説明する。
まず、図11に基づいて、第1ブレーキ係数TB1や第1閾値TV1等を設定している。図11は、車体速度V0および各種条件と第1ブレーキ係数TB1や第1閾値TV1との関係を示した図表である。なお、TRCに伴ってOSCにおけるブレーキ制御量についても車体速度V0に伴って補正しており、図11中に、このOSCにおけるブレーキ制御量の補正係数であるOSCbrake補正係数CBについても記載してある。
この図に示すように、基本的には、車体速度V0に応じて、第1ブレーキ係数TB1や第1閾値TV1およびOSCにおけるブレーキ制御量の補正係数であるOSCbrake補正係数CBを設定している。すなわち、車体速度V0が大きくなるほど第1ブレーキ係数TB1やOSCbrake補正係数CBについては小さくし、第1閾値TV1については大きくする。
そして、車体速度V0が0km/hのときに、さらに制動状態でない状況、つまりドライバが車両を走行させたい意思があるのにもかかわらず車両が停止してしまっているような状況においては、走行困難な路面を走行している場合が多い。このため、より強力にブレーキ制御に基づく車輪スリップ抑制が行えるように、第1ブレーキ係数TB1を大きな値に設定すると共に、第1閾値TV1を小さな値とする。第1ブレーキ係数TB1を大きな値に設定することでTRCによるブレーキ制御量を大きくすることができ、第1閾値TV1を小さな値とすることでTRCブレーキ目標閾値速度を決めるスリップ速度TVを低くしてよりTRCが実行され易くなるようにできる。また、OSCにおけるブレーキ制御量についても、車体速度V0が0km/hのときには大きな値とすることで、より強力にブレーキ制御に基づく車輪スリップ抑制が行えるようにする。
ただし、ブレーキ制御量やTRCブレーキ目標閾値速度の切り替えが頻繁に行われると、切り替えによるブレーキ制御量の変動などが大きくなる。このため、それを低減させるために、所定の監視時間(ここでは1秒間)、上記条件が継続したときに、第1ブレーキ係数TB1や第1閾値TV1およびOSCbrake補正係数CBを切替えている。
そして、車体速度V0が大きくなるにしたがって、第1ブレーキ係数TB1やOSCbrake補正係数CBについては小さくし、第1閾値TV1については大きくしていく。このとき、条件ごとに1〜5の順番で優先順位を付け、図11中に示した条件が重なった場合には、優先順位の順番で第1ブレーキ係数TB1や第1閾値TV1およびOSCbrake補正係数CBを設定するようにしている。
また、図12に基づいて、TRCブレーキ係数補正値TBKやTRC閾値補正値TVKを設定している。図12は、アクセル開度率(%)に対するTRCブレーキ係数補正値TBKやTRC閾値補正値TVKの関係を示したマップである。
この図に示すように、アクセルペダル11の踏み込み初期のようにアクセル開度率が小さいときにおいては、駆動力が大きくなるのでブレーキ制御量を大きくすべく、TRCブレーキ係数補正値TBKを大きくする。そして、アクセルペダル11の踏み込みが続いてアクセル開度率が大きくなっていくと、加速によるスリップ量が大きくなり、制動力が大きくなり過ぎるため、踏み込み初期よりもブレーキ制御量を低下させるべく、TRCブレーキ係数補正値TBKを小さくする。TRC閾値補正値TVKについては、アクセル開度率が大きくなるほど加速スリップの許容量を大きくすることで、TRCによる制動力が発生させられ難くなるようにし、ブレーキ制御量が低下するようにする。
また、図13に基づいて、第2ブレーキ係数TB2やTRC閾値TV2を設定している。図13は、路面抵抗に対する第2ブレーキ係数TB2やTRC閾値TV2の関係を示したマップである。
この図に示すように、路面抵抗に応じて第2ブレーキ係数TB2やTRC閾値TV2を可変にしている。具体的には、第2ブレーキ係数TB2については、路面抵抗が小さいときには大きな値とし、路面抵抗が大きくなるほど小さな値となるようにしている。第2ブレーキ係数TB2は、TRCのブレーキ制御量の補正係数となるTRCbrake補正係数TBの設定する際に、その上限値を設定するために用いられる。路面抵抗が大きい路面では制動力を発生させると車両が失速し易くなるため、第2ブレーキ係数TB2によって路面抵抗に応じた上限値を設定しておき、TRCbrake補正係数TBに上限値ガードを設けて、失速しそうな路面状態なのにもかかわらずTRCによるブレーキ制御量が大きくなってしまうことを抑制する。
一方、TRC閾値TV2については、路面抵抗が小さいときに小さな値とし、路面抵抗が大きくなるほど大きな値となるようにしている。TRC閾値TV2は、TRCにおけるスリップ速度TVを設定する際に、その下限値を設定するために用いられる。路面抵抗が大きい路面では制動力を発生させると車両が失速し易くなるため、TRC閾値TV2によって路面抵抗に応じた下限値を設定しておき、スリップ速度TVに下限値ガードを設けて、失速しそうな路面状態なのにもかかわらずTRCによる制動力が発生させられてしまうことを抑制する。
このようにして、図11〜図13に基づいて、第1ブレーキ係数TB1、第1閾値TV1、OSCbrake補正係数CB、TRCブレーキ係数補正値TBK、TRC閾値補正値TVK、第2ブレーキ係数TB2およびTRC閾値TV2が設定されると、これらに基づいて、TRCブレーキ目標閾値速度およびTRCbrake補正係数TBを演算する。
TRCブレーキ目標閾値速度については、今回の制御周期での車体速度V0に対して、スリップ速度TVを加算することによって演算している。スリップ速度TVについては、MAX(TV1+TVK,TV2)、つまり第1閾値TV1に対してTRC閾値補正値TVKを足した値とTRC閾値TV2とのいずれか大きい方を選択することで設定している。このため、車体速度V0に対してMAX(TV1+TVK,TV2)で設定されるスリップ速度TVを加算することで、TRCブレーキ目標閾値速度を設定する。一方、TRCbrake補正係数TBについては、MIN(TB1×TBK,TB2)、つまり第1ブレーキ係数TB1に対してTRCブレーキ係数補正値TBKを掛けた値と第2ブレーキ係数TB2とのいずれか小さい方を選択することで設定している。
このとき、基本的には、スリップ速度TVは、車体速度V0に基づいて設定される第1閾値TV1に対してアクセル開度率に基づいて設定されるTRC閾値補正値TVKを足した値として設定される。また、TRCbrake補正係数TBも、基本的には、車体速度V0に基づいて設定される第1ブレーキ係数TB1に対してアクセル開度率に基づいて設定されるTRCブレーキ係数補正値TBKを掛けた値として設定される。
したがって、車体速度V0が低い場合のように、走行困難な路面を走行しているような場合には、より強力にブレーキ制御に基づく車輪スリップ抑制を行うことで、LSD効果を発揮させて走破性を高めつつ、より減速度を発生させて安全性を高めることが可能となる。そして、車体速度V0が高くなって走行困難な場所を脱出できていれば、ブレーキ制御量が低くなるように切り替えられ、ドライバがより速く走行したいような状況において、大きな制動力を発生させてしまうことを防止でき、ドライバの要求する速度が得られるようにできる。
また、アクセルペダル11の踏み込み初期のようにアクセル開度率が大きくて駆動力が大きくなるときにはブレーキ制御量が増加させられ、さらにアクセルペダル11の踏み込みが続いて加速によるスリップ量が大きくなると、踏み込み初期よりもブレーキ制御量を低下させるようにできる。
ただし、路面抵抗が大きいと車両が失速し易くなるため、路面抵抗の大きさに応じて設定されるTRC閾値TV2によってスリップ速度TVに下限値ガードが掛けられる。これにより、路面抵抗が大きいような場合にはTRCによる制動力が発生させられ難くなる。同様に、路面抵抗の大きさに応じて設定される第2ブレーキ係数TB2によってTRCbrake補正係数TBに上限値ガードが掛けられる。これにより、路面抵抗が大きいような場合にはTRCによるブレーキ制御量が大きくならないようにできる。
このようにしてTRCブレーキ目標閾値速度およびTRCbrake補正係数TBが演算されると、ステップ165に進み、TRCブレーキ制御量を演算する。TRCブレーキ制御量とは、TRCによって発生させるブレーキ制御量であり、制御対象となる加速スリップ発生車輪に対して発生させる制動力に対応した値である。ここでは、TRCブレーキ制御量として、制御対象輪のW/C16FL〜16RRのW/C圧の液圧換算値とした**輪TRC目標液圧TTP1**を求めている。
具体的には、**輪TRC目標液圧TTP1**を、車輪速度VW**とTRCブレーキ目標閾値速度(=車体速度V0+スリップ速度TV)との偏差に対してフィードバック制御で設定される所定のゲインを掛けることにより演算している。これにより、上記した(3)の制御、つまり車体速度V0やアクセル開度率および路面抵抗を加味して設定されたスリップ速度TVに基づいて、TRCにおける仮のブレーキ制御量が演算される。
そして、ステップ170に進み、ステップ165で演算した**輪TRC目標液圧TTP1**に対してTRCbrake補正係数TBを掛ける。これにより、さらに上記した(3)の制御、つまり車体速度V0やアクセル開度率および路面抵抗を加味して設定されたTRCbrake補正係数TBに基づいて**輪TRC目標液圧TTP1**が補正され、TRCに基づく最終的なブレーキ制御量である**輪TRC最終目標液圧TTP2**が演算される。
この後、ステップ175に進み、再び、ステップ140と同様にOSC制御禁止が設定されているか否かを判定する。ここで否定判定された場合にはステップ180に進み、OSCブレーキ制御量を演算する。OSCブレーキ制御量とは、OSCによって発生させるブレーキ制御量であり、制御対象となる車輪に対して発生させる制動力と対応した値である。ここでは、OSCブレーキ制御量の目標値であるOSC目標制御量TOBを求めたのち、それを制御対象輪のW/C16FL〜16RRのW/C圧の液圧換算値とした**輪OSC目標液圧TOP1**を求めている。
具体的には、OSC目標制御量TOBを、車体速度V0とステップ155で求めたOSCブレーキ目標閾値速度TVBとの偏差に対してフィードバック制御で設定される所定のゲインを掛けることにより演算している。そして、このOSC目標制御量TOBに対して、ブレーキ液圧換算係数を掛けることで、**輪OSC目標液圧TOP1**を演算する。これにより、上記した(2)の制御、つまりアクセル操作やブレーキ操作を加味して設定されたOSCブレーキ目標閾値速度TVBに基づいてOSC目標制御量TOBが演算され、それを液圧換算した**輪OSC目標液圧TOP1**が演算される。このとき、**輪OSC目標液圧TOP1**をOSCブレーキ制御量の目標値と対応する最終的な値として設定しても良いが、**輪OSC目標液圧TOP1**をOSCにおける仮のブレーキ制御量とし、これをさらに車体速度V0に伴って補正する。
すなわち、ステップ185に進み、ステップ160において設定したOSCbrake補正係数CBを**輪OSC目標液圧TOP1**に掛けることにより、**輪OSC目標液圧TOP1**を補正して**輪OSC最終目標液圧TOP2**を演算する。このようにして、OSCにおける最終的なブレーキ制御量として、車体速度V0に応じて設定されるOSCbrake補正係数CBを加味した値が演算される。
この後、ステップ190に進み、OSCとTRCに基づく最終的なブレーキ制御量を演算する。具体的には、TRCに基づく最終的なブレーキ制御量である**輪TRC最終目標液圧TTP2**とOSCにおける最終的なブレーキ制御量である**輪OSC最終目標液圧TOP2**とを加算することで、制御対象輪の最終的なブレーキ制御量となる**輪目標液圧TP**(=TTP2**+TOP2**)を演算する。そして、このようにして、制御対象輪の最終的なブレーキ制御量が演算されたら、サービスブレーキにおける自動加圧機能に基づいて制御対象輪と対応するW/C16FL〜16RRのブレーキ液圧が**輪目標液圧TP**となるようにする。これにより、上記した(2)、(3)の制御を行うために必要な制動力を発生させることができる。
なお、OSC制御禁止が設定されていてステップ140で肯定判定された場合には、ステップ195に進み、OSCを伴わない通常のTRCが実行される。この場合、通常のTRCとして、TRCブレーキ目標閾値速度が演算されることになる。そして、OSCが制御禁止となっていることから、TRCbrake補正係数TBについては1.0に設定されることで実質的に補正が行われない状態とされ、スリップ速度TVについては通常のTRCとしてTRCブレーキ目標閾値速度が演算される。また、**輪OSC最終目標液圧TOP2**については0[MPa]とされ、エンジン要求値ENG_REQについては反映されない値、例えば−10000[N]とされる。また、ステップ175でも否定判定され、ステップ190において、OSCとTRCに基づく最終的なブレーキ制御量となる**輪目標液圧TP**がTRCのみが加味された**輪TRC最終目標液圧TTP2**とされる。
以上のようにして、(1)の制御を行うために必要な駆動力が発生されると共に、(2)、(3)の制御を行うために必要な制動力が発生させられる。図14および図15は、図2(a)、(b)のフローチャートに基づく各種処理を実行したときのタイムチャートである。
図14は、走行路面がモーグル路(路面に起伏がある凹凸路面)である場合のタイムチャートである。ここでは一例として、登りのモーグル路の後、平坦路になり、その後、降りの路面になった場合の様子を示してある。
まず、時点T0においてアクセルペダル11が踏み込まれておらずブレーキペダル13が踏み込まれている状態においては、図11の優先2が選択された状態となっている。このため、これに基づいてスリップ速度TVが設定され、車体速度V0(=0)に対してスリップ速度TVを足した値がTRCブレーキ目標閾値速度として設定される。また、図7の優先4が選択された状態となっているが、下限値ガードが掛かって、その下限値ガード(例えば、図6のステップ315で示した0.8km/h)にOSCブレーキ目標閾値速度が設定される。そして、時点T1においてブレーキ操作が解除されて、この状態が所定時間(例えば1秒間)続くと、時点T2において図11の優先1が選択され、それに伴って第1閾値TV1が低下するためスリップ速度TVが低下する。
その後、時点T3においてアクセル操作が為されると、それに対応した駆動力が発生させられ、車体速度V0が上昇していくと、それに伴ってエンジン目標閾値速度が所定速度(例えば2km/h)で設定される。また、車体速度V0の上昇に伴って、TRCブレーキ目標閾値速度およびOSCブレーキ目標閾値速度も上昇していく。OSCブレーキ目標閾値速度については、図7の優先3が選択され、アクセル開度率に応じたアクセル加速度ACCEL_Gが加算されるが、車体速度V0に速度上限値ACCEL_UPを加算した値が上限値とされるため、アクセル加速度ACCEL_Gが大きい場合には、その上限値が設定されることになる。
そして、車体速度V0が図11の優先2に示す速度範囲になっている状態が所定時間(例えば1秒間)続くと、時点T4において図11の優先2が選択され、TRCブレーキ目標閾値速度が補正されて大きな値になる。
続いて、時点T4の直後に車輪FL〜RRのうちの1輪に加速スリップが発生し、車輪速度VW**がTRCブレーキ目標閾値速度やOSCブレーキ目標閾値速度を超えると、加速スリップが発生した車輪について、加速スリップを抑制したり、ドライバの意図に反して車両が急に加速しないようにするために必要となる要求制動力が設定される。これに対応してブレーキ制御量が設定されることになる。そして、車体速度V0がTRCブレーキ目標閾値速度やOSCブレーキ目標閾値速度を下回るまで、この状態が続く。このような動作は、加速スリップが発生して、車輪速度VW**がTRCブレーキ目標閾値速度やOSCブレーキ目標閾値速度を超える毎に繰り返される。
そして、時点T5において、アクセルペダル11が踏み増しされると、それに対応してエンジン目標閾値速度が増加させられる。また、このアクセル操作に伴って、それに対応した駆動力が発生させられ、さらに車体速度V0が上昇していき、それに伴ってTRCブレーキ目標閾値速度およびOSCブレーキ目標閾値速度も上昇していく。ここで、車体速度V0が図11の優先3に示す速度範囲になっている状態が所定時間(例えば1秒間)続くと、時点T6において図11の優先3が選択され、TRCブレーキ目標閾値速度が補正されて大きな値になる。そして、さらに車体速度V0が上昇し、図11の優先4に示す速度範囲になっている状態が所定時間(例えば1秒間)続くと、時点T7において図11の優先4が選択される。
ただし、時点T6〜T7の間において、車体速度V0が急に上昇することになったとしても、OSCブレーキ目標閾値速度の上昇について、図7の優先3が選択され、車体速度V0は緩やかに上昇していく。これにより、車両の飛び出しが抑制される。
この後、時点T8において、急なアクセル戻し操作によりアクセル操作がオフされたときには、図7の優先5が選択されてOSCブレーキ目標閾値速度が比較的大きな減速度(例えば0.1G)の得られる値に設定される。これにより、車体速度V0が比較的大きな減速度で低下させられる。そして、時点T9において減速度大期間Tが経過すると、図7の優先6が選択されて、減速度大期間T中よりも小さな減速度となるようにOSCブレーキ目標閾値速度が設定される。これにより、車体速度V0が比較的小さな減速度で低下させられる。
また、この状態において、時点T10のタイミングでドライバがブレーキ操作を行って車体速度V0が比較的大きな減速度で低下させられた場合、再び図7の優先4が選択されてOSCブレーキ目標閾値速度が比較的大きな減速度(例えば0.1G)の得られる値に設定される。図7の優先4において、第1ブレーキ目標閾値速度TVBtmp1に対して所定の減速度の得られる値が選択されるが、第1ブレーキ目標閾値速度TVBtmp1については前回の制御周期のブレーキ目標閾値速度TVBと車体速度V0のいずれか小さい方に設定されている。このため、車体速度V0が急に低下したときにも、それに追従して第1ブレーキ目標閾値速度TVBtmp1が小さい値となり、ブレーキ目標閾値速度TVBが小さな値に設定されるようになる。したがって、車体速度V0が急に低下してブレーキ目標閾値速度TVBよりも下回ったときに、ブレーキ目標閾値速度TVBが車体速度V0に追従して低下するようにできる。これにより、ブレーキ目標閾値速度TVBが車体速度V0よりも低い値に設定されることで、ブレーキ操作中にもかかわらず車体速度V0がブレーキ目標閾値速度TVBに向かって上昇するように車両を加速させてしまうことを防止できる。したがって、より簡単な操作によって車体速度V0を減速させつつ、ドライバの意図に反して車両が加速してしまうことなどを防ぐことができ、ドライバの意図に沿って車両の速度を制御できる。
そして、時点T7〜T11までの期間中のように、車体速度V0が図11の優先4が選択され続けている場合には、スリップ速度TVに変化がないため、TRCブレーキ目標閾値速度が車体速度V0に対して一定のスリップ速度TVを加算した値に設定される。その後、車体速度V0がその所定速度以下になり、それが所定時間(例えば1秒間)続くと、時点T12において図11の優先3が選択され、さらに車体速度V0の低下に伴って、時点T13において図11の優先2が選択されることで、TRCブレーキ目標閾値速度が補正されて徐々に小さな値になる。
また、この後の時点T14において、緩やかなアクセル操作が行われた後、緩やかにアクセル戻し操作が行われた場合には、図7の優先5が選択され、OSCブレーキ目標閾値速度が比較的大きな減速度(例えば0.1G)の得られる値に設定される。これにより、車体速度V0が比較的大きな減速度で低下させられる。
図15は、走行路面が砂漠路である場合のタイムチャートである。このような路面では、路面抵抗が大きいため、ブレーキ制御によって制動力が発生させられたときに車両が失速し易くなる。
まず、時点T0〜T3については図14と同様の動作が行われる。また、時点T4〜T6においても、基本的には図14と同様の動作が行われる。そして、時点T4〜T6の間および時点T6の後に示した時点Ta、Tb、Tcにおいて、車輪FL〜RRのうちの1輪に加速スリップが発生した場合、この加速スリップを抑制するようにブレーキ制御量が設定されることになる。すなわち、車輪速度VW**がTRCブレーキ目標閾値速度やOSCブレーキ目標閾値速度を超えると、加速スリップが発生した車輪について、加速スリップを抑制したり、ドライバの意図に反して車両が急に加速しないようにするために必要となる要求制動力が設定される。これに対応してブレーキ制御量が設定されることになる。
このとき、本例のように車体速度V0が徐々に上昇していくような状況においては、車体速度V0に応じて図11の優先1〜5に順に移行して第1閾値TV1が徐々に大きくなって、それに伴ってスリップ速度TVが大きくなる。このため、車体速度V0に対してスリップ速度TVを足した値にて設定されるTRCブレーキ目標閾値速度と車輪速度V0との乖離が大きくなる。したがって、車体速度V0の上昇に伴って、加速スリップが発生したときのブレーキ制御量となる**輪TRC目標液圧TTP1**(図2のステップ165参照)が徐々に小さくなり、要求制動力が小さくなっていく。
さらに、図11の優先1〜5に順に移行するに伴って、第1ブレーキ係数TB1も徐々に小さくなる。このため、TRCbrake補正係数TBも車体速度V0の上昇に伴って徐々に小さくなっていき、**輪TRC最終目標液圧TTP2**がさらに小さな値となる。
なお、路面抵抗が大きい場合には、第2ブレーキ係数TB2が小さな値となることでTRCbrake補正係数TBが小さな値で上限値ガードが掛けられ、**輪TRC最終目標液圧TTP2**がさらに小さな値となるようにできる。また、TRC閾値TV2についても、走行抵抗が大きい場合には大きな値となる。このため、スリップ速度TVの下限値ガードがより大きな値で掛かることになり、加速スリップが発生したときのブレーキ制御量となる**輪TRC目標液圧TTP1**が小さな値となるようにできる。
以上説明したように、本実施形態の車両制御装置によれば、上記した(1)〜(3)の制御が実行され、(1)の制御を行うために必要な駆動力が発生されると共に、(2)、(3)の制御を行うために必要な制動力が発生させられる。そして、(3)の制御が実行されることで、車両の走行状態に合ったTRCを行うようにして、走破性を向上させることが可能となる。
(他の実施形態)
本発明は上記した実施形態に限定されるものではなく、特許請求の範囲に記載した範囲内において適宜変更が可能である。
例えば、上記実施形態では、(1)〜(3)の制御をすべて実行する形態としたが、(3)の制御のみを単独で行ったり、(1)、(2)の制御のいずれか一方のみと共に行うような車両制御装置としても良い。また、上記実施形態で説明したエンジン目標閾値速度、OSCブレーキ目標閾値速度、および、TRCブレーキ目標閾値速度の設定手法は一例である。例えば、これらの設定に用いている各種パラメータやマップを適宜変更しても良いし、各パラメータや各マップすべてを適用せずに、その一部のみを適用する形態としても良い。
また、上記実施形態では、エンジンが備えられた車両を例に挙げたため、アクセル操作に応じた駆動力としてエンジン出力を挙げ、このエンジン出力に対応する目標速度としてエンジン目標閾値速度を挙げた。しかしながら、これはアクセル操作に応じた駆動力の出力形態の一例をあげたものであり、他の形態であっても良い。例えば電気自動車においてはアクセル操作に応じた電気出力、ハイブリッド車両においてはアクセル操作に応じた電気出力とエンジン出力の和がアクセル操作に応じた駆動力となる。したがって、アクセル操作に応じた駆動力に対応する目標速度としてエンジン目標閾値速度を例に挙げているが、アクセル操作に応じた駆動力に対応する目標速度として駆動力目標閾値速度を設定し、この駆動力目標閾値速度を車体速度V0の比較対象とすれば良い。
また、上記実施形態では、OSCスイッチ23の状態と副変速機2bのギア位置に応じてOSCを実行すべき状況であるか否かを判定しているが、路面状態を検出し、その路面状態の検出結果に基づいてOSCを実行すべき状態であるか否かを判定しても良い。例えば、凹凸が大きかったり、路面抵抗が大きいような路面状態、もしくは、急坂路のような路面勾配の大きな路面状態の場合にオフロード等であると判定し、OSCを実行すべき路面状態であるとして、OSCが自動的に実行されるようにしても良い。
なお、上記実施形態で説明した各種処理を実行する部分、例えば各図中に示した各ステップ等が本発明の各種手段に対応するものである。例えば、ステップ160の処理を実行する部分が目標速度設定手段、ブレーキ制御量補正手段に相当する。