以下、添付した図面を参照して、本発明を実施するための実施形態を説明する。
〔第1実施形態〕
図1は、車両制御装置が自動変速機を搭載した車両に適用された適用例を示す。車両1は、エンジン(内燃機関)2に加え、エンジン2の動力伝達系として、トルクコンバータ3、自動変速機4、プロペラシャフト5及びディファレンシャルギア6を備えている。エンジン2のクランク軸2aは、トルクコンバータ3を介して自動変速機4の入力軸4aに連結され、自動変速機4の出力軸4bは、プロペラシャフト5とディファレンシャルギア6を介して駆動輪である後輪7a,7bの車軸8a,8bに連結されている。また、図示省略するが、車両1のステアリングホイールは、ステアリングシャフト、ピニオンギア、ラックギア等を介して操向輪である前輪7c,7dに連結されている。
エンジン2のクランク軸2aの出力トルクは、トルクコンバータ3を介して自動変速機4の入力軸4aに伝達され、自動変速機4の複数のギアで変速された後、出力軸4bからプロペラシャフト5とディファレンシャルギア6を介して車軸8a,8bに伝達される。これにより後輪7a,7bから路面に駆動トルクが伝達されて車両1が駆動される。図示省略するが、自動変速機4は、運転者のシフトレバー操作によってシフトレンジが切り換えられる。
エンジン2は、限定するものではないが直列4気筒で示されており、吸入空気量を調整する電子制御スロットル9、各気筒の燃焼室の中に燃料を噴射する燃料噴射弁10、及び、火花放電によって各気筒の燃焼室内の混合気に着火する点火プラグ11を有している。電子制御スロットル9は、吸気管を開閉するスロットル弁9a及びスロットルモータ9bを有し、スロットルモータ9bから供給される開閉駆動力によりスロットル弁9aの開閉動作が制御される。スロットルモータ9bはモータドライバ12から出力される駆動信号により駆動制御される。また、燃料噴射弁10は噴射用ドライバ13から出力される駆動信号により噴射動作が制御され、点火プラグ11は点火用ドライバ14から出力される駆動信号により点火動作が制御される。そして、モータドライバ12、噴射用ドライバ13、及び、点火用ドライバ14は、車両制御装置としてのエンジンコントロールユニット(以下、「ECU」という)15により制御される。
ECU15は、CPU(Central Processing Unit)等のプロセッサ、RAM(Random Access Memory)等の揮発性メモリ、ROM(Read Only Memory)等の不揮発性メモリ及び入出力インタフェース等が内部バスで通信可能に接続されてなるマイクロコンピュータを内蔵している。
ECU15には、入力インタフェースを介して各種センサの出力信号が入力される。各種センサとしては、アクセル開度センサ16、クランク角センサ17、エアフローメータ18、水温センサ19、車輪速センサ20a,20b,20c,20d(以下、20a~20dとする)、及び、シフトレンジセンサ21がある。アクセル開度センサ16は、アクセル開度(アクセルの操作量)の検出信号ACCを出力するセンサである。クランク角センサ17は、エンジン2のクランク軸2aの回転速度(エンジン回転速度)の検出信号Neを出力するセンサである。エアフローメータ18は、電子制御スロットル9の上流側で吸入空気量の検出信号Qを出力するセンサである。水温センサ19は、エンジン冷却水の温度の検出信号Twを出力するセンサである。車輪速センサ20a~20dは、それぞれ車輪ごとに設けられ、対応する車輪の車輪速の検出信号Nwa,Nwb,Nwc,Nwd(以下、Nwa~Nwdとする)を出力するセンサである。シフトレンジセンサ21は、自動変速機4におけるシフトレンジの検出信号Srを出力するセンサである。
また、ECU15には、入力インタフェースを介して各種スイッチのオン/オフ状態を示す信号が入力される。このような信号には、フットブレーキスイッチ22のオン/オフ状態を示す信号Fs、サイドブレーキスイッチ23のオン/オフ状態を示す信号Ss、及び、アイドルスイッチ24のオン/オフ状態を示す信号Isがある。フットブレーキスイッチ22は、フットブレーキが作動操作された(ブレーキランプが点灯した)ときにオンとなるスイッチである。サイドブレーキスイッチ23は、サイドブレーキ(パーキングブレーキ)が作動操作されたときにオンとなるスイッチである。アイドルスイッチ24は、電子制御スロットル9のスロットル弁9aが全閉状態であるときにオンとなるスイッチである。
ECU15は、プロセッサが不揮発性メモリから所定のエンジン制御プログラムを揮発性メモリに読み出して実行することで、上記の各種センサの出力信号及び上記の各種スイッチのオン/オフ状態を示す信号に基づいて車両1の駆動制御を行う。
ECU15は、通常時の駆動制御として以下の制御を行う。すなわち、ECU15は、運転者が車両1を加速させるときのアクセルオン操作(加速操作)の操作量に応じた検出信号ACC等に基づいてエンジン2の目標トルクを設定し、目標トルクに応じて電子制御スロットル9のスロットル開度を設定する。ECU15は、設定したスロットル開度となるように、出力インタフェースを介してモータドライバ12へ制御信号を出力する。また、ECU15は、検出信号Ne、検出信号Q及び検出信号Tw等に基づいて燃料噴射弁10の燃料噴射量及び噴射タイミングを設定するとともに、目標トルクに応じて点火プラグ11による点火時期を設定する。そして、ECU15は、燃料噴射量、噴射タイミング及び点火時期の各設定値を反映した制御信号を、噴射用ドライバ13及び点火用ドライバ14へ出力する。これにより、ECU15は、アクセルオン操作の操作量に基づいて、後輪7a,7bから路面に伝達される駆動トルクを調整している。
また、ECU15は、発進時の駆動制御として以下の制御を行う。すなわち、ECU15は、車両1の停車状態で制動力が解除されてから運転者のアクセルオン操作があるまでのクリープ走行により発生する車両1の車速(クリープ車速)に基づいて、車両1が位置する路面の勾配を推定する。その後、ECU15は、アクセルオン操作による車両1の発進時に、上記の通常時の駆動制御に従って設定される目標トルクを、推定した路面の勾配に応じて補正する。ECU15は、車両1が位置する路面が前輪7c,7dの接地面高さより後輪7a,7bの接地面高さの方が高くなる勾配の降坂路であれば、目標トルクを減少補正する。一方、ECU15は、車両1が位置する路面が前輪7c,7dの接地面高さより後輪7a,7bの接地面高さの方が低くなる勾配の登坂路であれば、目標トルクを増大補正する。そして、ECU15は、補正した目標トルクに応じて、上記の通常時の駆動制御と同様に、モータドライバ12、噴射用ドライバ13及び点火用ドライバ14を制御する。これにより、ECU15は、アクセルオン操作の操作量に加えて車両1が位置する路面の勾配に応じて、後輪7a,7bから路面に伝達される駆動トルク(発進トルク)を調整している。
ここで、図2を参照して、車両1が位置する路面の勾配をクリープ車速に基づいて推定する方法について説明する。図2は、路面の勾配によるクリープ車速VCRPの時間変化の違いを模式的に示す。なお、車両1がクリープ走行を開始してからの経過時間をクリープ走行時間tとする。
車両1が、前輪7c,7dの接地面高さと後輪7a,7bの接地面高さとが同一の平坦路で停車した状態からクリープ走行を開始した場合には、クリープ車速VCRPはクリープトルクにより上昇する。このクリープトルクは、アクセル開度が零のときのアイドリング時におけるアイドル回転速度に応じて発生する。しかし、アイドル回転速度はエンジン温度等に応じて変化し、これにより発生するクリープトルクもばらつくため、クリープ車速VCRPは一様に上昇するとは限らない。ここで、平坦路を走行するときに各クリープ走行時間tで想定されるクリープ車速VCRPの上限値を最大クリープ車速V1とし、平坦路を走行するときに各クリープ走行時間tで想定されるクリープ車速VCRPの下限値を最小クリープ車速V2とする。すると、平坦路におけるクリープ車速VCRPは、クリープ走行時間tの経過に従って、最大クリープ車速V1と最小クリープ車速V2との間で上昇していく。
車両1が降坂路で停車した状態から一定の下り勾配でクリープ走行を開始した場合には、負の勾配抵抗により自重の分力が前進方向に働いて実質的にクリープトルクを増大させることになるので、クリープ車速VCRPは平坦路のときよりも速やかに上昇する。このため、降坂路におけるクリープ車速VCRPは、クリープ走行時間tの経過に従って、最大クリープ車速V1よりも高い領域で変化していくとみなすことができる。
車両1が登坂路で停車した状態から一定の上り勾配でクリープ走行を開始した場合には、正の勾配抵抗により自重の分力が後退方向に働いて実質的にクリープトルクを減少させることになるので、クリープ車速VCRPは平坦路のときよりも緩やかに上昇する。このため、登坂路におけるクリープ車速VCRPは、クリープ走行時間tの経過に従って、最小クリープ車速V2よりも低い領域で変化していくとみなすことができる。
ECU15は、クリープ走行を開始してから所定間隔Δtごとの最大クリープ車速V1及び最小クリープ車速V2の各値を不揮発性メモリに予め記憶している。最大クリープ車速V1及び最小クリープ車速V2の各値は実験やシミュレーション等により取得される。ECU15は、クリープ走行を開始してから所定間隔Δtごとにクリープ車速VCRPを算出して、その算出値とそのときの最大クリープ車速V1及び最小クリープ車速V2とを比較することで路面の勾配を推定する。ここで、クリープ車速VCRPの算出回数をn(1以上の整数)とし、クリープ走行を開始してから算出回数nのクリープ車速VCRPを算出するまでの時間である算出時間をT[n]とする。算出時間T[n]は、算出回数nに所定間隔Δtを乗算した時間である。ECU15は、算出時間T[n]と最大クリープ車速V1[n]及び最小クリープ車速V2[n]とを関連付けて予め不揮発性メモリに記憶している。
ECU15は、各算出時間T[n]において、クリープ車速VCRP[n]がV2[n]≦VCRP[n]≦V1[n]を満たすときには、車両1が位置する路面は平坦路であると推定する。また、ECU15は、各算出時間T[n]において、クリープ車速VCRP[n]がVCRP[n]>V1[n]を満たすときには、車両1が位置する路面は降坂路であると推定する。さらに、ECU15は、各算出時間T[n]において、クリープ車速VCRP[n]がVCRP[n]<V2[n]を満たすときには、車両1が位置する路面は登坂路であると推定する。
図3及び図4は、ECU15が、車両1のイグニッションスイッチのオン操作により動作電圧が供給されたことを契機として、繰り返し実行する車両1の駆動制御の一例を示す。なお、本駆動制御において発進時の駆動制御が行われる場合には、クリープ車速VCRP[n]を算出する前に過去のクリープ車速データは消去されるものとする。
ステップS1(図中では「S1」と略記する。以下、同様である。)では、ECU15は、車両1が停車中であるか否かを判定する。車両1が停車中であるか否かは、車輪速センサ20a~20dの検出信号Nwa~Nwdに基づいて判定可能である。なお、車両1が車輪速センサ20a~20dの他に車両1の速度を検出する車速センサを備えている場合には、車速センサの検出信号に基づいて車両1が停車中であるか否かを判定してもよい。
ステップS1において、ECU15は、車両1が停車中と判定した場合には(YES)、発進時の駆動制御を開始すべく、処理をステップS2へ進める。一方、ECU15は、車両1が停車していないと判定した場合には(NO)、発進時の駆動制御を省略して通常時の駆動制御を行うべく、処理をステップS23へ進める。
ステップS2では、ECU15は、揮発性メモリに格納されている、クリープ車速VCRPの算出回数nの値を1に設定する。
ステップS3では、ECU15は、車両1がクリープ走行を行っているクリープ走行状態であるか否かを判定する。具体的には、クリープ走行状態であるか否かは、自動変速機4において走行レンジ(Dレンジ等)が選択され、かつ、制動力が解除されているか否かによって判定できる。自動変速機4において走行レンジに選択されているか否かは、シフトレンジセンサ21から出力される検出信号Srに基づいて判定可能である。また、制動力が解除されているか否かは、フットブレーキスイッチ22のオン/オフ状態を示す信号Fs、及び、サイドブレーキスイッチ23のオン/オフ状態を示す信号Ssに基づいて判定可能である。
なお、ステップS3における走行レンジには、前進レンジ(Dレンジ、Lレンジ等)のみならず、後退レンジ(Rレンジ)を含めてもよい。ただし、走行レンジが後退レンジである場合には、本明細書の説明は、前輪7c,7dの接地面高さより後輪7a,7bの接地面高さの方が高くなる勾配の路面を「登坂路」とし、前輪7c,7dの接地面高さより後輪7a,7bの接地面高さの方が低くなる勾配の路面を「降坂路」として適用される。
ステップS3において、ECU15は、車両1がクリープ走行を行っていると判定した場合には(YES)、処理をステップS4へ進める。一方、ECU15は、車両1がクリープ走行を行っていないと判定した場合には(NO)、ステップS1へ戻る。
ステップS4では、ECU15は、クリープ車速VCRPの現在の算出回数nに応じた算出時間T[n]が経過したか否かを判定する。そして、ECU15は、算出時間T[n]が経過したと判定した場合には(YES)、処理をステップS5へ進める一方、算出時間T[n]が経過していないと判定した場合には(NO)、ステップS5,S6を省略して、処理をステップS7へ進める。
ステップS5では、ECU15は、車両1のクリープ車速VCRP[n]を算出し、クリープ車速データとして揮発性メモリに記憶する。具体的には、クリープ車速VCRP[n]は以下のようにして算出される。
例えば、ECU15は、車輪速センサ20a~20dの検出信号Nwa~Nwdが示す4つの車輪速のうち最も高い車輪速を選択し、選択した車輪速に基づいてクリープ車速VCRP[n]を算出できる。このように算出したクリープ車速VCRP[n]によれば、実際には登坂路であっても平坦路と推定される可能性が高くなり、実際には平坦路であっても降坂路と推定される可能性が高くなる。したがって、路面の勾配判定が登坂路と平坦路との間または平坦路と降坂路との間で微妙となる場合には、駆動トルクが減少する安全サイドに振った駆動制御が可能となる。
あるいは、ECU15は、車輪速センサ20a~20dの検出信号Nwa~Nwdが示す4つの車輪速を平均化した平均車輪速に基づいてクリープ車速VCRP[n]を算出できる。このように算出したクリープ車速VCRP[n]では、曲線路のクリープ走行における内輪と外輪との車輪速差等、最大値と最小値との乖離を緩和して実際の車速に近い値を得ることができる。
あるいは、ECU15は、車輪速センサ20a~20dの検出信号Nwa~Nwdが示す4つの車輪速のうち従動輪である前輪7c,7dの車輪速の少なくとも一方を選択し、選択した車輪速に基づいてクリープ車速VCRP[n]を算出できる。前輪7c,7dの車輪速のうち一方を選択する場合には、上記のように最も高い車輪速を選択してクリープ車速VCRP[n]を算出してもよい。また、前輪7c,7dの車輪速の両方を選択する場合には、上記のように、2つの車輪速を平均化した平均車輪速に基づいてクリープ車速VCRP[n]を算出してもよい。従動輪である前輪7c,7dでは駆動輪である後輪7a,7bと比較して空転する可能性が低いため、前輪7c,7dの車輪速によれば、クリープ車速VCRP[n]を比較的精度良く算出できる。
なお、車両1が車輪速センサ20a~20dの他に車両1の速度を検出する車速センサを備えている場合には、車速センサの検出信号に基づいてクリープ車速VCRP[n]を算出してもよい。
ステップS6では、ECU15は、次にステップS5で算出するクリープ車速VCRP[n]を算出するために、算出回数nの値を1つ増やす。
ステップS7では、ECU15は、アクセル開度センサ16から出力された検出信号ACCに基づいてアクセルオン操作がなされたか否かを判定する。そして、ECU15は、アクセルオン操作がなされたと判定した場合には(YES)、処理をステップS8へ進める。一方、ECU15は、アクセルオン操作が未だなされていないと判定した場合には(NO)、再びステップS5でクリープ車速VCRP[n]を算出すべく、クリープ走行をしているか否かを確認するステップS3へ戻る。
ステップS8において、ECU15は、クリープ車速データが記憶されていると判定した場合には(YES)、処理をステップS9へ進める。一方、ECU15は、クリープ車速データが記憶されていないと判定した場合には(NO)、発進時の駆動制御を中止して通常時の駆動制御を行うべく、処理をステップS23へ進める。
ステップS9では、ECU15は、算出回数nの値を1つ減らす。これは、ステップS6により増加した算出回数nの値ではクリープ車速データが記憶されていないためである。
ステップS10では、ECU15は、最後に記憶されたクリープ車速VCRP[n]がその算出回数nに対応する最大クリープ車速V1[n]よりも大きいか否かを判定する。そして、ECU15は、クリープ車速VCRP[n]が最大クリープ車速V1[n]よりも大きいと判定した場合には(YES)、処理をステップS11へ進めて、車両1が位置する路面が降坂路であると推定する。一方、ECU15は、クリープ車速VCRP[n]が最大クリープ車速V1[n]以下であると判定した場合には(NO)、処理をステップS12へ進める。
ステップS12では、ECU15は、最後に記憶されたクリープ車速VCRP[n]がその算出回数nに対応する最小クリープ車速V2[n]よりも小さいか否かを判定する。そして、ECU15は、クリープ車速VCRP[n]が最小クリープ車速V2[n]よりも小さいと判定した場合には(YES)、処理をステップS13へ進めて、車両1が位置する路面が登坂路であると推定する。一方、ECU15は、クリープ車速VCRP[n]が最小クリープ車速V2[n]以上であると判定した場合には(NO)、処理をステップS14へ進める。そして、ステップS14において、ECU15は、車両1が位置する路面が平坦路であると推定して発進時の駆動制御を中止し、通常時の駆動制御を行うべく、処理をステップS23へ進める。
ステップS15では、ECU15は、ステップS11で車両1が位置する路面が降坂路であると推定したことに基づき、通常時の駆動制御に従って算出した目標トルクの減少補正を行う。一方、ステップS19では、ECU15は、ステップS13で車両1が位置する路面が登坂路であると推定したことに基づき、通常時の駆動制御に従って算出した目標トルクの増大補正を行う。目標トルクの補正をエンジン2の出力トルクに反映させるために、ステップS16,S20でスロットル開度の補正が行われ、ステップS17,S21で点火時期の補正が行われる。
ステップS16,S20では、ECU15は、先ず通常時の駆動制御に従って、電子制御スロットル9のスロットル開度を算出する。そして、ステップS16では、ECU15は、算出したスロットル開度を減少補正する。一方、ステップS20では、ECU15は、算出したスロットル開度を増大補正する。スロットル開度補正量は、ECU15の不揮発性メモリに予め記憶された規定値ないし規定関係式に基づいて設定される。
ここで、図5を参照してスロットル開度補正量の設定例について説明する。図5は、クリープ車速VCRPとスロットル開度補正量との関係を示している。クリープ車速VCRPがV2≦VCRP≦V1を満たす平坦路では、スロットル開度補正量は零に予め設定されている。一方、クリープ車速VCRPがVCRP>V1を満たす降坂路では、スロットル開度補正量は負の値であり、クリープ車速VCRPが高くなるに従って小さくなるように予め設定されている。また、クリープ車速VCRPがVCRP<V2を満たす登坂路では、スロットル開度補正量は正の値であり、クリープ車速VCRPが低くなるに従って大きくなるように予め設定されている。このように、スロットル開度は、クリープ車速VCRPに応じて補正されてもよい。なお、最大クリープ車速V1及び最小クリープ車速V2は算出時間T[n]に応じて変化するので、スロットル開度補正量は算出時間T[n]ごとに予め設定されていてもよい。後述の点火時期補正量の設定例においても同様である。
ステップS16,S20において、ECU15は、スロットル開度を補正した後、補正されたスロットル開度に基づいてモータドライバ12へ制御信号を出力する。また、ECU15は、検出信号Ne、検出信号Q及び検出信号Tw等に基づいて燃料噴射弁10の燃料噴射量及び噴射タイミングを設定し、燃料噴射量及び噴射タイミングの各設定値を反映した制御信号を噴射用ドライバ13へ出力する。
ステップS17,S21では、先ず通常時の駆動制御に従って、点火プラグ11の点火時期を算出する。そして、ステップS17では、ECU15は、算出した点火時期の遅角補正を行う。また、ステップS21では、ECU15は、算出した点火時期の進角補正を行う。点火時期補正量は、ECU15の不揮発性メモリに予め記憶された規定値ないし規定関係式に基づいて設定される。
ここで、図6を参照して点火時期補正量の設定例について説明する。図6は、クリープ車速VCRPと点火時期補正量との関係を示している。クリープ車速VCRPがV2≦VCRP≦V1を満たす平坦路では、点火時期補正量は予め零に設定されている。一方、クリープ車速VCRPがVCRP>V1を満たす降坂路では、点火時期補正量は負の値であり、クリープ車速VCRPが高くなるに従って点火時期が遅角化するように予め設定されている。また、クリープ車速VCRPがVCRP<V2を満たす登坂路では、点火時期補正量は正の値であり、クリープ車速VCRPが低くなるに従って点火時期が進角化するように予め設定されている。このように、点火時期は、クリープ車速VCRPに応じて補正されてもよい。
ステップS17,S21において、ECU15は、点火時期を補正した後、補正された点火時期に基づいて点火用ドライバ14へ制御信号を出力する。
ステップS18,S22では、ECU15は、目標トルクの補正を終了する補正終了条件が成立したか否かを判定する。補正終了条件としては、アイドルスイッチ24のオン、アクセル開度の減少、車速の所定速度への到達、または、ブレーキスイッチのオン等があり、あるいは、これらの少なくとも1つの条件としてもよい。そして、ECU15は、補正終了条件が成立したと判定した場合には(YES)、目標トルクの補正(発進時の駆動制御)を終了して、処理をステップS23へ進めて、上記の通常時の駆動制御を行う。一方、ECU15は、補正終了条件が成立していないと判定した場合には(NO)、ステップS18,S22をそれぞれ再度実行する。
ここで図7を参照して、自動変速機4を搭載した車両1の発進時の駆動制御による効果の一例について説明する。図7は、車両1が位置する路面が停車時に平坦路であったものがクリープ走行中に登坂路へ変化する場合のクリープ車速VCRPの時間変化例を折れ線LFUにより模式的に示している。
車両1はクリープ走行開始当初に平坦路を走行するので、クリープ車速VCRPは最大クリープ車速V1と最小クリープ車速V2との間で上昇する。そして、算出時間T[1]のクリープ車速VCRP[1]がV2[1]≦VCRP[1]≦V1[1]を満たし、算出時間T[1]~T[2]でアクセルオン操作がなされれば、車両1が位置する路面はクリープ車速VCRP[1]に基づいて平坦路と推定される。仮に車両1が位置する路面がアクセルオン操作後も平坦路であれば、アクセルオン操作時に車両1が位置する路面の勾配に応じた駆動トルクで車両1を発進加速させることができる。なお、算出時間T[1]までにアクセルオン操作があれば、クリープ車速VCRP[1]を算出できないので、路面の勾配は推定されず、通常時の駆動制御が行われる。
算出時間T[2]までに車両1が位置する路面が平坦路から登坂路へ変化した場合には、クリープ車速VCRPは最小クリープ車速V2よりも小さい変化率で上昇する。そして、算出時間T[2]のクリープ車速VCRP[2]がVCRP[2]<V2[2]を満たし、算出時間T[2]~T[3]でアクセルオン操作がなされれば、車両1が位置する路面はクリープ車速VCRP[2]に基づいて登坂路と推定される。車両1が位置する路面が平坦路から登坂路へ変化した後にアクセルオン操作があり、路面が平坦路から登坂路へ変化したことを検出できれば、アクセルオン操作時に変化後の路面の勾配に応じた駆動トルクで車両1を発進加速させることができる。なお、算出時間T[2]の前にアクセルオン操作があれば、クリープ車速VCRP[2]を算出しないので、平坦路から登坂路への変化は検出されない。
次に図8を参照して、自動変速機4を搭載した車両1の発進時の駆動制御による効果の別例について説明する。図8は、車両1が位置する路面が停車時に平坦路であったものがクリープ走行中に降坂路へ変化する場合のクリープ車速VCRPの時間変化例を折れ線LFDにより模式的に示している。なお、車両1がクリープ走行開始当初に平坦路を走行するときのクリープ車速VCRPの時間変化については図7と同様であるので説明を省略する。
算出時間T[2]までに車両1が位置する路面が平坦路から降坂路へ変化する場合には、クリープ車速VCRPは最大クリープ車速V1よりも大きい変化率で上昇する。そして、算出時間T[2]のクリープ車速VCRP[2]がVCRP[2]>V1[2]を満たし、算出時間T[2]~T[3]でアクセルオン操作がなされれば、車両1が位置する路面はVCRP[2]に基づいて降坂路と推定される。車両1が位置する路面が平坦路から降坂路へ変化した後にアクセルオン操作があれば、アクセルオン操作時に降坂路に応じた駆動トルクで車両1を発進加速させることができる。なお、算出時間T[2]の前にアクセルオン操作があれば、クリープ車速VCRP[2]を算出しないので、平坦路から降坂路への変化は検出されない。
このように、ECU15では、アクセルオン操作の直前で算出及び記憶したクリープ車速VCRPに基づいて路面の勾配を推定している。このため、アクセルオン操作時に車両1が位置する路面の勾配がクリープ走行によって停車時の勾配から変化した場合でも、その変化を検出しやすくなり、アクセルオン操作時に車両1が位置する路面の勾配に適した駆動トルクで車両1を発進加速させることが可能となる。また、路面の勾配を計測するジャイロセンサ等の加速度センサを使用していないので、車両1の製造コストを抑制することが可能となる。したがって、自動変速機4を搭載した車両1の発進性能を簡易な構成で向上させることができる。
〔第2実施形態〕
図9は、車両制御装置が手動変速機を搭載した車両に適用された適用例を示す。なお、本実施形態は、基本的に第1実施形態と異なる部分について言及し、その他の部分については同様の構成に同一の符号を付すなどして、その説明を省略ないし簡略化する。
車両1Aは、自動変速機4及びトルクコンバータ3の代わりに、手動変速機25及びクラッチ26を備えている。エンジン2のクランク軸2aは、クラッチ26を介して手動変速機25の入力軸25aに連結され、手動変速機25の出力軸25bは、プロペラシャフト5とディファレンシャルギア6を介して駆動輪である後輪7a,7bの車軸8a,8bに連結されている。図示省略するが、手動変速機25は、運転者のシフトレバー操作によってシフトポジションが切り換えられ、クラッチ26は、運転者のクラッチペダルの操作によって締結及びその解除が操作される。
ECU15Aには、シフトレンジセンサ21に代えてシフトポジションセンサ27の出力信号が入力される。シフトポジションセンサ27は、手動変速機25におけるシフトポジションの検出信号Spを出力するセンサである。
ECU15Aには、入力インタフェースを介して、さらにクラッチスイッチ28のオン/オフ状態を示す信号Csが入力される。クラッチスイッチ28は、クラッチペダルが作動操作されてクラッチ26が解除されたときにオンとなるスイッチである。
ECU15Aは、上記の通常時の駆動制御に加えて、以下のような発進時の駆動制御を行う。すなわち、ECU15Aは、後輪7a,7bに対するエンジン出力トルクの伝達が遮断された車両1Aの停止状態で制動力が解除されてからエンジン出力トルクが再び後輪7a,7bに伝達されるまでに発生する車両1Aの車速に基づいて、車両1Aが位置する路面の勾配を推定する。なお、後輪7a,7bに対するエンジン出力トルクの伝達が遮断され、かつ、制動力が解除された状態では、車両1Aはこれが位置する路面の勾配と自重とに応じた車速で前進又は後退するので、このときの状態を自重移動状態というものとする。
ここで、図10を参照して、車両1Aが位置する路面の勾配を自重移動状態に置かれた車両1Aの車速(自重移動速度)VOWMに基づいて推定する方法について説明する。図10は、路面の勾配による自重移動速度VOWMの時間変化の違いを模式的に示す。なお、車両1Aが自重移動状態に置かれてからの経過時間を走行時間tとする。
自重移動状態であっても平坦路に停車中の車両1Aには前進方向及び後退方向に外力が働かず、車両1Aは移動しないため、自重移動速度VOWMは零のまま変化しない。しかし、一定の下り勾配の降坂路に停車中の車両1Aには前進方向に自重の分力が働いて車両1Aが前進するため、自重移動速度VOWMは正の値となって直線L1で示すように上昇する。一方、一定の上り勾配の登坂路に停車中の車両1Aには後退方向に自重の分力が働いて後退するため、自重移動速度VOWMは負の値となって直線L2で示すように下降する。したがって、自重移動速度VOWMが零である場合には、車両1Aが位置する路面は平坦路であると推定できる。また、自重移動速度VOWMが零よりも高い場合には、車両1Aが位置する路面は降坂路であると推定できる。さらに、自重移動速度VOWMが零よりも低い場合には、車両1Aが位置する路面は登坂路であると推定できる。
図11は、ECU15Aが、車両1Aのイグニッションスイッチのオン操作により動作電圧が供給されたことを契機として、繰り返し実行する車両1Aの駆動制御の一例を示す。なお、本駆動制御は、図3及び図4の駆動制御におけるステップS1~S23と基本的に共通であるが、処理内容が異なるステップについては、ステップ番号に「a」又は「b」を付している。
ステップ3aでは、ECU15Aは、車両1Aが自重移動状態に置かれているか否かを判定する。車両1Aが自重移動状態に置かれているか否かは、後輪7a,7bに対するエンジン出力トルクの伝達が遮断され、かつ、制動力が解除されているか否かによって判定できる。そして、後輪7a,7bに対するエンジン出力トルクの伝達が遮断されているか否かは、クラッチスイッチ28のオン/オフ状態を示す信号Cs、及び、シフトポジションセンサ27から出力される検出信号Spの少なくとも一方に基づいて判定可能である。例えば、クラッチ26の締結が解除されているか、あるいは、手動変速機25のシフトポジションがニュートラル(中立)位置にあれば、後輪7a,7bに対するエンジン出力トルクの伝達が遮断されていると判定できる。なお、制動力が解除されているか否かについては、上記のステップS3と同様に判定できるので、説明を省略する。
ステップ3aにおいて、ECU15Aは、車両1Aが自重移動状態に置かれていると判定した場合には(YES)、処理をステップS4へ進める。一方、ECU15Aは、車両1Aが自重移動状態に置かれていないと判定した場合には(NO)、自重移動速度VOWMを算出できないので、処理をステップS1へ戻す。
ECU15Aは、ステップS4において、算出時間T[n]が経過したと判定した場合には(YES)、処理をステップS5aへ進める一方、算出時間T[n]が経過していないと判定した場合には(NO)、処理をステップS7aへ進める。
ステップS5aでは、ECU15Aは、自重移動速度VOWM[n]を算出し、その算出値を自重移動速度データとして揮発性メモリに記憶する。自重移動速度VOWMの算出態様は上記のクリープ車速VCRP[n]の算出態様と同様であるので説明を省略する。
ステップS7aでは、ECU15Aは、車両1Aが動力接続状態であるか否か、すなわち、後輪7a,7bに対するエンジン出力トルクの伝達がなされているか否かを判定する。車両1Aが動力接続状態であるか否かは、クラッチスイッチ28のオン/オフ状態を示す信号Cs、及び、シフトポジションセンサ27から出力される検出信号Spに基づいて判定可能である。例えば、クラッチ26が締結され、かつ、手動変速機25のシフトポジションがニュートラル(中立)位置以外にあれば、車両1Aが動力接続状態にあると判定できる。
ステップS7aにおいて、ECU15Aは、車両1Aが動力接続状態であると判定した場合には(YES)、処理をステップS7bに進める。一方、ECU15Aは、車両1Aが動力接続状態でないと判定した場合には(NO)、制動力が発生しているか否かを確認するため、ステップS3aへ戻る。ECU15Aは、ステップS3aにおいて制動力が発生していると判定した場合には(NO)、もはや自重移動速度VOWMを算出できないため、さらにステップS1へ戻る。一方、ECU15Aが、ステップS3aにおいて制動力が発生していないと判定した場合には(YES)、自動移動速度VOWMを算出すべく、処理をステップS4へ進める。
ステップS7bでは、ECU15Aは、アクセル開度センサ16から出力された検出信号ACCに基づいて、車両1Aが動力接続状態となってから所定時間以内にアクセルオン操作がなされたか否かを判定する。所定時間以内にアクセルオン操作がなされたか否かを判定しているのは、自重移動速度VOWM[n]を算出したタイミングとこの自重移動速度VOWM[n]に基づいて路面の勾配を推定するタイミングとの時間的乖離を抑制して、路面の勾配の推定精度を低下させないためである。
ステップS7bにおいて、ECU15Aは、所定時間以内にアクセルオン操作がなされたと判定した場合には(YES)、処理をステップS8aに進める。一方、ECU15Aは、所定時間以内にアクセルオン操作がなされていないと判定した場合には(NO)、もはや車両1Aが位置する路面の勾配を精度良好に推定することが困難であるため、発進時の駆動制御を中止して通常時の駆動制御を行うべく、処理をステップS23へ進める。
ステップS8aでは、ECU15Aは、自重移動速度データが記憶されていると判定した場合には(YES)、処理をステップS9へ進める。一方、ECU15Aは、自重移動速度データが記憶されていないと判定した場合には(NO)、発進時の駆動制御を中止して通常時の駆動制御を行うべく、処理をステップS23へ進める。
ステップS10aでは、ECU15Aは、最新の自重移動速度VOWM[n]が零よりも大きいか否かを判定する。そして、ECU15Aは、最新の自重移動速度VOWM[n]が零よりも大きいと判定した場合には(YES)、処理をステップS11へ進めて、車両1Aが位置する路面が降坂路であると推定する。一方、ECU15Aは、最新の自重移動速度VOWM[n]が零以下であると判定した場合には(NO)、処理をステップS12aへ進める。
ステップS12aでは、ECU15Aは、最新の自重移動速度VOWM[n]が零よりも小さいか否かを判定する。そして、ECU15Aは、最新の自重移動速度VOWM[n]が零よりも小さいと判定した場合には(YES)、処理をステップS13へ進めて、車両1Aが位置する路面が登坂路であると推定する。一方、ECU15Aは、最新の自重移動速度VOWM[n]が零であると判定した場合には(NO)、処理をステップS14へ進める。そして、ステップS14において、ECU15Aは、車両1Aが位置する路面が平坦路であると推定して発進時の駆動制御を中止し、通常時の駆動制御を行うべく、処理をステップS23へ進める。
なお、自重移動速度VOWMの算出において車輪速センサ20a~20dの車輪速の検出精度等に起因した誤差が発生し得ることを考慮して、車両1Aが位置する路面が平坦路と推定される自重移動速度VOWMの範囲を、零を含む所定の誤差範囲(-α≦VOWM≦+α)にしてもよい。この場合、自重移動速度VOWMがVOWM>+αを満たすときに降坂路と推定され、自重移動速度VOWMがVOWM<-αを満たすときに登坂路と推定される。
ステップS15~S23は、図4と略同様であるが、ステップS16,S20におけるスロットル補正量及びステップS17,S21における点火時期補正量の設定例が異なるので、図12及び図13を参照して説明する。
図12は、自重移動速度VOWMとスロットル開度補正量との関係を示している。自重移動速度VOWMが零となる平坦路では、スロットル開度補正量は零に予め設定されている。自重移動速度VOWMがVOWM>0を満たす降坂路では、スロットル開度補正量は、自重移動速度VOWMが高くなるに従って小さくなるように予め負の値に設定されている。また、自重移動速度VOWMがVOWM<0を満たす登坂路では、スロットル開度補正量は、自重移動速度VOWMが低くなる(絶対値では大きくなる)に従って大きくなるように予め正の値に設定されている。このように、スロットル開度は、自重移動速度VOWMに応じて補正されてもよい。
図13は、自重移動速度VOWMと点火時期補正量との関係を示している。自重移動速度VOWMが零となる平坦路では、点火時期補正量は零に予め設定されている。自重移動速度VOWMがVOWM>0を満たす降坂路では、点火時期補正量は、自重移動速度VOWMが高くなるに従って点火時期が遅角化されるように予め負の値に設定されている。また、自重移動速度VOWMがVOWM<0を満たす登坂路では、スロットル開度補正量は、自重移動速度VOWMが低くなる(絶対値では大きくなる)に従って点火時期が進角化されるように予め正の値に設定されている。このように、スロットル開度は、自重移動速度VOWMに応じて補正されてもよい。
ここで図14を参照して、手動変速機25を搭載した車両1Aの発進時の駆動制御による効果の一例について説明する。図14は、車両1Aが位置する路面が停車時に降坂路であったものが自重移動中に登坂路へ変化する場合の自重移動速度VOWMの時間変化例を折れ線LDUにより模式的に示している。
車両1Aは、自重移動状態となった当初には降坂路を走行するので、自重移動速度VOWMは正の値となって上昇する。そして、算出時間T[1]の自重移動速度VOWM[1]がVOWM[1]>0を満たし、算出時間T[1]~T[2]でアクセルオン操作がなされれば、車両1Aが位置する路面は自重移動速度VOWM[1]に基づいて降坂路と推定される。仮に車両1Aが位置する路面がアクセルオン操作後も降坂路であれば、アクセルオン操作時に降坂路に応じた駆動トルクで車両1Aを発進加速させることができる。なお、算出時間T[1]の前にアクセルオン操作があれば、自重移動速度VOWM[1]を算出しないので、路面の勾配は推定されず、通常時の駆動制御が行われる。
算出時間T[2]までに車両1Aが位置する路面が降坂路から登坂路へ変化した場合には、自重移動速度VOWMは下降に転じる。そして、算出時間T[2]の自重移動速度VOWM[2]がVOWM[2]<0を満たし、算出時間T[2]~T[3]でアクセルオン操作がなされれば、車両1Aが位置する路面は自重移動速度VOWM[2]に基づいて登坂路と推定される。車両1Aが位置する路面が降坂路から登坂路へ変化した後にアクセルオン操作があり、路面が降坂路から登坂路に変化したことを検出できれば、アクセルオン操作時に変化後の路面の勾配に応じた駆動トルクで車両1Aを発進加速させることができる。なお、算出時間T[2]までにアクセルオン操作があれば、自重移動速度VOWM[2]を算出しないので、降坂路から登坂路への変化は検出されない。
このように、ECU15Aでは、アクセルオン操作の直前で算出及び記憶した自重移動速度VOWMに基づいて路面の勾配を推定している。このため、アクセルオン操作時に車両1Aが位置する路面の勾配が自重移動によって停車時の勾配から変化した場合でも、その変化を検出しやすくなり、アクセルオン操作時に車両1Aが位置する路面の勾配に適した駆動トルクで車両1Aを発進加速させることが可能となる。また、路面の勾配を計測するジャイロセンサ等の加速度センサを使用していないので、車両1Aの製造コストを抑制することが可能となる。したがって、手動変速機25を搭載した車両1Aの発進性能を簡易な構成で向上させることができる。
以上、本発明者にとってなされた発明を上記の実施形態等に基づき具体的に説明したが、本発明は上記の実施形態等に限定されるものではなく、その要旨を逸脱しない範囲で種々変更が可能であることはいうまでもない。また、上記の実施形態等において相互に独立して記載された技術的事項は、技術的に矛盾しない限り、適宜組み合せることも可能である。
例えば、車両1,1Aの動力源としてエンジン2を用いているが、これに代えて、電動モータあるいはこれとエンジンとを組み合わせた動力源としてもよい。また、車両1,1Aは、後輪駆動に限らず、前輪駆動や四輪駆動であってもよい。
車両1,1Aが車輪速センサ20a~20dを備えていない場合には、車両1,1Aが停車中であるか否かの判定やクリープ車速VCRP又は自重移動速度VOWMの算出には、車速センサで検出された車速を代用してもよい。