(57)【特許請求の範囲】
【請求項１】
前後の車輪のいずれか一方を主駆動輪とし、他方を副駆動輪とする四輪駆動車両において、クラッチの締結力を変化させることによって前記主駆動輪の駆動力の前記副駆動輪への配分を制御する四輪駆動車両の駆動力制御装置であって、
前記四輪駆動車両の運転状態に応じ、前記クラッチの自動モード用締結力を算出する自動モード用締結力算出手段と、
運転者により操作される入力手段と、
当該入力手段が操作されたことを含むロックモード実行条件が成立しているときに、前記クラッチの締結力を、前記主駆動輪と前記副駆動輪との間をロック可能なロックモード用締結力に設定したロックモードを実行するロックモード実行手段と、
前記四輪駆動車両の走行状態に応じ、前記ロックモード用締結力を前記ロック可能な締結力より小さく制限するロックモード締結力制限手段と、
前記ロックモード中において、前記算出された自動モード用締結力が前記制限されたロックモード用締結力よりも大きいときに、前記自動モード用締結力を前記クラッチの締結力として決定するクラッチ締結力決定手段と、
を備えることを特徴とする四輪駆動車両の駆動力制御装置。
【請求項２】
前記ロックモード締結力制限手段は、前記ロックモード用締結力を前記四輪駆動車両の車両速度が高いほど、小さくなるように制限することを特徴とする請求項１に記載の四輪駆動車両の駆動力制御装置。
【請求項３】
前記主駆動輪の駆動力を算出する駆動力算出手段をさらに備え、
前記ロックモード締結力制限手段は、前記ロックモード用締結力を、前記算出された前記主駆動輪の駆動力が小さいほど、小さくなるように制限することを特徴とする請求項１または２に記載の四輪駆動車両の駆動力制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、前後の車輪のいずれか一方を主駆動輪とし、他方を副駆動輪とする四輪駆動車両において、クラッチの締結力を制御することにより、副駆動輪に対して配分する駆動力を制御する四輪駆動車両の駆動力制御装置に関する。
【０００２】
【従来の技術】
従来、この種の駆動力制御装置として、出願人は例えば特開平１０−１９４００５号公報に記載されたものを提案している。この四輪駆動車両（以下「車両」という）は、左右の後輪とプロペラシャフトとの間を断続させる左右の電磁クラッチを備えており、前輪を主駆動輪とし、後輪を副駆動輪とするものである。また、この車両には、ロックスイッチが設けられている。この駆動力制御装置は、左右の電磁クラッチの締結力を制御することによって、後輪すなわち副駆動輪に配分するトルクを制御する。具体的には、左右の電磁クラッチの締結力を、各種のセンサの検出信号に応じて制御する自動モードと、前後の車輪間をロック可能な最大締結力に制御するロックモードとが実行される。このロックモードは、例えば雪道でスタック状態になっている場合に、運転者がスタック状態からの脱出を意図してロックスイッチを操作したときに実行される。このロックモードでは、左右の電磁クラッチの締結力を最大締結力に制御するために、最大値の制御電流が両電磁クラッチに供給される。
【０００３】
【発明が解決しようとする課題】
しかし、上記従来の駆動力制御装置によれば、スタック状態からの脱出した後も、ロックスイッチがＯＦＦされないままに、車両がエンジンブレーキやフットブレーキによる制動状態や、アクセルをほとんど踏まない渋滞走行状態に至る場合がある。このような場合、ロックモードが継続して実行されるため、後輪側に配分する必要性が低いにもかかわらず、最大値の制御電流が両電磁クラッチに継続して供給されることにより、消費電力の浪費を招くとともに、電磁クラッチを最大締結力に制御することにより、燃費の悪化を招く。
【０００４】
本発明は、上記課題を解決するためになされたもので、ロックモード中において、運転者の意図に可能な限り沿いながら、クラッチの締結力を運転状態に応じて過不足なく適切に制御することができ、それにより、クラッチや駆動系の小型化を図ることができるとともに、燃費を向上させることができる四輪駆動車両の駆動力制御装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
この目的を達成するために、請求項１に係る発明は、前後の車輪Ｗ１〜Ｗ４のいずれか一方（例えば実施形態における（以下、この項において同じ）前輪Ｗ１，Ｗ２）を主駆動輪とし、他方（後輪Ｗ３，Ｗ４）を副駆動輪とする四輪駆動車両２において、クラッチ（電磁クラッチ１０，１０）の締結力を変化させることによって主駆動輪の駆動力（駆動トルクＴＤ）の副駆動輪（後輪Ｗ３，Ｗ４）への配分を制御する四輪駆動車両２の駆動力制御装置１であって、四輪駆動車両２の運転状態（吸気管内絶対圧ＰＢＡ、エンジン回転数ＮＥ）に応じ、クラッチの自動モード用締結力（自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］）を算出する自動モード用締結力算出手段（２／４ＷＤ・ＥＣＵ１１、ステップ１，２）と、運転者により操作される入力手段（ロックスイッチ２６）と、入力手段（ロックスイッチ２６）が操作されたことを含むロックモード実行条件が成立しているときに、クラッチの締結力を主駆動輪（前輪Ｗ１，Ｗ２）と副駆動輪（後輪Ｗ３，Ｗ４）との間をロック可能なロックモード用締結力（ロックモード用伝達トルクＬＯＣＫＤ）に設定したロックモードを実行するロックモード実行手段（２／４ＷＤ・ＥＣＵ１１、ステップ３）と、四輪駆動車両２の走行状態（車両速度ＶＣＡＲ、駆動トルクＴＤ）に応じ、ロックモード用締結力（ロックモード用伝達トルクＬＯＣＫＤ）をロック可能な締結力より小さく制限するロックモード締結力制限手段（２／４ＷＤ・ＥＣＵ１１、ステップ３８１，３８３，３８５）と、ロックモード中において、算出された自動モード用締結力（自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］）が制限されたロックモード用締結力（ロックモード用伝達トルクＬＯＣＫＤ）よりも大きいとき（ステップ４０４，４０７の判別結果がＹＥＳのとき）に、自動モード用締結力（自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］）をクラッチの締結力として決定するクラッチ締結力決定手段（２／４ＷＤ・ＥＣＵ１１、ステップ４０３，４０６）と、を備えることを特徴とする。
【０００６】
この四輪駆動車両の駆動力制御装置によれば、四輪駆動車両の運転状態に応じて、自動モード用の締結力が算出される。さらに、入力手段が操作されたことを含むロックモード実行条件が成立しているときに、クラッチの締結力を、主駆動輪と副駆動輪との間をロック可能なロックモード用締結力に設定したロックモードが実行される。これにより、ロックモード中に、運転者の意図に沿って、主駆動輪と副駆動輪との間をロックすることができる。また、四輪駆動車両の走行状態に応じ、ロックモード用締結力がロック可能な締結力より小さく制限される。これにより、例えば制動時やアクセルをほとんど踏まない渋滞走行時のように、駆動力を副駆動輪に配分する必要が低い場合には、それに応じてロックモード中のクラッチの締結力を最大締結力より小さく制限することができ、クラッチの締結力を最大締結力に制御する時間を最小限にすることができる。その結果、クラッチを駆動するための動力の省力化を達成でき、クラッチや駆動系を小型化することができるとともに、燃費を向上させることができる。さらに、算出された自動モード用の締結力が制限されたロックモード用締結力よりも大きいときには、自動モード用締結力がロックモード中のクラッチの締結力として決定される。これにより、運転者の意図に可能な限り沿うとともに、四輪駆動車両が実際に必要としている駆動力を、副駆動輪に配分することができ、ロックモード時に、クラッチの締結力を運転状態に応じて過不足なく適切に制御することができる。
【０００７】
請求項２に係る発明は、請求項１に記載の四輪駆動車両２の駆動力制御装置１において、ロックモード締結力制限手段（２／４ＷＤ・ＥＣＵ１１、ステップ３８１，３８５）は、ロックモード用締結力（ロックモード用伝達トルクＬＯＣＫＤ）を四輪駆動車両２の車両速度ＶＣＡＲが高いほど、小さくなるように制限することを特徴とする。
【０００８】
この四輪駆動車両の駆動力制御装置によれば、車両速度が高いほど、すなわち主駆動輪がスリップしにくくなるほど、ロックモード用締結力が小さくなるように制限される。すなわち主駆動輪がスリップしにくくなることで、副駆動輪に配分する駆動力の必要性が小さくなるほど、クラッチの締結力が小さくなるように制限される。このように、ロックモード時に副駆動輪に要求される駆動力に応じて、クラッチを効率よく作動させることができる。
【０００９】
請求項３に係る発明は、請求項１または２に記載の四輪駆動車両の駆動力制御装置において、主駆動輪（前輪Ｗ１，Ｗ２）の駆動力（駆動トルクＴＤ）を算出する駆動力算出手段（２／４ＷＤ・ＥＣＵ１１、ステップ１５，１６）をさらに備え、ロックモード締結力制限手段（２／４ＷＤ・ＥＣＵ１１、ステップ３８３，３８５）は、ロックモード用締結力（ロックモード用伝達トルクＬＯＣＫＤ）を、算出された主駆動輪の駆動力（駆動トルクＴＤ）が小さいほど、小さくなるように制限することを特徴とする。
【００１０】
この四輪駆動車両の駆動力制御装置によれば、主駆動輪の駆動力が小さいほど、すなわち副駆動輪に要求される駆動力が小さいほど、ロックモード用締結力が小さくなるように制限される。このように、ロックモード時に副駆動輪に要求される駆動力に応じて、クラッチを効率よく作動させることができる。
【００１１】
【発明の実施の形態】
以下、図面を参照しながら、本発明の一実施形態に係る四輪駆動車両の駆動力制御装置について説明する。図１は、本実施形態の駆動力制御装置１およびこれを適用した四輪駆動車両２の概略構成を示している。同図に示すように、四輪駆動車両２（以下「車両２」という）は、その前部に横置きに搭載したエンジン３と、エンジン３と一体に設けられた自動変速機４とを備えている。
【００１２】
この自動変速機４は、エンジン３の出力軸３ａに連結されたトルクコンバータ４ａと、「１，２，３，Ｄ４，Ｄ５，Ｎ，Ｒ，Ｐ」からなる８つのシフト位置を選択可能なシフトレバー（図示せず）と、１〜５速ギヤ位置およびリバースギヤ位置からなる６種類の変速比のギヤ位置に切換可能なギヤ機構４ｂ（一部のみ図示）と、を備えている。この自動変速機４では、シフト位置が「１」〜「Ｄ５」および「Ｒ」にあるときに、ギヤ位置が１速ギヤ位置、１〜２速ギヤ位置、１〜３速ギヤ位置、１〜４速ギヤ位置、１〜５速ギヤ位置およびリバースギヤ位置にそれぞれ切り換えられる。
【００１３】
また、自動変速機４には、ギヤ位置センサ２０およびシフト位置センサ２１が取り付けられている。このギヤ位置センサ２０は、ギヤ位置を検出して、その検出信号であるギヤ位置信号ＳＦＴを後述するＦＩ／ＡＴ・ＥＣＵ１２に送る。具体的には、ギヤ位置信号ＳＦＴの値（以下「ＳＦＴ値」という）は、ギヤ位置が１〜５速ギヤ位置であるときに値１〜５であり、リバースギヤ位置であるときに値６である。
【００１４】
一方、シフト位置センサ２１は、選択されているシフト位置を検出して、その検出信号であるシフト位置信号ＰＯＳＩをＦＩ／ＡＴ・ＥＣＵ１２に送る。具体的には、シフト位置信号ＰＯＳＩの値（以下「ＰＯＳＩ値」という）は、シフト位置が「Ｎ」または「Ｐ」、「Ｒ」および「１」〜「Ｄ５」であるときにそれぞれ、値１、値２および値３〜７であるとともに、ノーポジション状態（シフトレバーがいずれか２つのシフト位置の間にあってシフト位置を特定できない状態）であるときには値０である。
【００１５】
また、上記ＦＩ／ＡＴ・ＥＣＵ１２は、エンジン３の運転や自動変速機４の動作を制御するものであり、ＲＡＭ、ＲＯＭ、ＣＰＵおよびＩ／Ｏインターフェースなどからなるマイクロコンピュータ（いずれも図示せず）で構成されている。このＦＩ／ＡＴ・ＥＣＵ１２には、エンジン回転数センサ２２および吸気管内絶対圧センサ２３などが接続されており、これらのセンサ２２、２３から、エンジン回転数ＮＥ（車両の運転状態を表すパラメータ）および吸気管内絶対圧ＰＢＡ（車両の運転状態を表すパラメータ）を表す検出信号がそれぞれ送られる。
【００１６】
さらに、ＦＩ／ＡＴ・ＥＣＵ１２には、自動変速機４のメインシャフト４ｃの回転数ＮＭを検出するメインシャフト回転数センサ２８が接続されている。ＦＩ／ＡＴ・ＥＣＵ１２は、エンジン回転数ＮＥおよびメインシャフト回転数ＮＭをそれぞれトルクコンバータ４ａの入出力回転数として用い、トルクコンバータ４ａの入出力回転比ＥＴＲを算出する（ＥＴＲ＝ＮＭ／ＮＥ）。
【００１７】
一方、エンジン３は、その出力軸３ａが、自動変速機４、フロントディファレンシャル５（以下「フロントデフ５」という）およびフロントドライブシャフト６，６を介して、主駆動輪としての左右の前輪Ｗ１，Ｗ２に連結されている。さらに、出力軸３ａは、自動変速機４、フロントデフ５、トランスファ７ａ、プロペラシャフト７ｂ、リヤディファレンシャル８（以下「リヤデフ８」という）および左右のリヤドライブシャフト９，９を介して、副駆動輪としての左右の後輪Ｗ３，Ｗ４に連結されている。
【００１８】
このリヤデフ８は、左右の電磁クラッチ１０，１０（クラッチ）を備えている。各電磁クラッチ１０は、プロペラシャフト７ａとリヤドライブシャフト９の間を接続・遮断するものであり、遮断状態にあるときには、エンジン３の駆動トルクが前輪Ｗ１，Ｗ２にすべて伝達されることで、前輪駆動状態になる。一方、電磁クラッチ１０が接続状態にあるときには、エンジン３の駆動力が後輪Ｗ３，Ｗ４に配分されることで、四輪駆動状態になる。さらに、電磁クラッチ１０の接続時の締結力は、後述する２／４ＷＤ・ＥＣＵ１１からの駆動信号に従って連続的に変化するように構成されており、これにより、左右の後輪Ｗ３，Ｗ４に配分する駆動トルクが互いに独立して制御される。
【００１９】
また、リヤデフ８には、油温センサ２４が取り付けられている。この油温センサ２４は、電磁クラッチ１０，１０の潤滑油の温度（油温）ＴＯＩＬを検出して、その検出信号を２／４ＷＤ・ＥＣＵ１１に送る。
【００２０】
さらに、前後の車輪Ｗ１〜Ｗ４には、車輪速度センサ２５が取り付けられている。これら４つの車輪速度センサ２５は、前後の車輪Ｗ１〜Ｗ４の車輪速度ＶＷ１〜ＶＷ４をそれぞれ検出して、それらの検出信号をＡＢＳ・ＥＣＵ１３に送る。このＡＢＳ・ＥＣＵ１３は、前後の車輪Ｗ１〜Ｗ４のアンチロック制御を行うものであり、前述したＦＩ／ＡＴ・ＥＣＵ１２と同様にマイクロコンピュータで構成されている。
【００２１】
また、図示しないダッシュボードには、入力手段としてのロックスイッチ２６が設けられている。このロックスイッチ２６は、雪道などでのスタック脱出時などに、リヤデフ８をロックして後輪Ｗ３、Ｗ４へ大きな駆動力を伝達したいときに、運転者により操作されるものである。ロックスイッチ２６は、モーメンタリースイッチで構成されており、それが押されている間、ロックスイッチ信号ＬＯＣＫＳＷを２／４ＷＤ・ＥＣＵ１１に送る。また、ロックモード中は、ダッシュボードに設けられたロックランプ（図示せず）が点灯される。
【００２２】
一方、駆動力制御装置１は、前述した２／４ＷＤ・ＥＣＵ１１（自動モード用締結力算出手段、ロックモード実行手段、ロックモード締結力制限手段、クラッチ締結力決定手段、駆動力算出手段）を備えている。この２／４ＷＤ・ＥＣＵ１１は、ＦＩ／ＡＴ・ＥＣＵ１２およびＡＢＳ・ＥＣＵ１３と同様に、マイクロコンピュータで構成され、これらのＥＣＵ１２，１３に接続され、これらとのシリアル通信により、上記センサ２０〜２５の検出信号およびロックスイッチ信号ＬＯＣＫＳＷが、２／４ＷＤ・ＥＣＵ１１に入力される。２／４ＷＤ・ＥＣＵ１１は、これらの入力信号に応じ、ＲＯＭに記憶された制御プログラムおよびＲＡＭに記憶された後述する各フラグ値および演算値などに基づいて、以下のように、後輪Ｗ３，Ｗ４に配分する駆動力（トルク）を制御する駆動力制御処理を実行する。
【００２３】
以下、２／４ＷＤ・ＥＣＵ１１が実行する駆動力制御処理について説明する。図２は、駆動力制御処理のメインルーチンを示している。同図に示すように、本処理では、以下に述べるように、ＶＡＴＣ制御処理およびＬＳＤ制御処理からなる自動モード制御処理が実行されるとともに、ロックモードの実行条件が成立しているときにロックモード制御処理が実行される。
【００２４】
まず、ステップ１（図ではＳ１と略す。以下同様）において、自動モード制御処理のうちのＶＡＴＣ制御処理を実行する。この処理では、後述するように、駆動トルク算出処理、前後トルク配分制御処理および制御量制限処理を実行することにより、車両２の加速状態などに基づき、左右の後輪Ｗ３，Ｗ４に配分するＶＡＴＣトルク最終目標値ＴＯＢＪＭを算出する。
【００２５】
次のステップ２では、後述するように、自動モード制御処理のうちのＬＳＤ制御処理を実行することにより、ＬＳＤトルクＴＬＳＤを算出する。
【００２６】
次のステップ３では、後述するように、前記ロックスイッチ２６が押されたことを含むロックモードの実行条件が成立しているときに、ロックモード制御処理を実行することにより、ロックモード用伝達トルクＬＯＣＫＤ（ロックモード用締結力）を算出する。
【００２７】
次のステップ４では、後述する総目標トルク算出処理を実行して、本処理を終了する。この処理では、自動モードで算出したＶＡＴＣトルク最終目標値ＴＯＢＪＭおよびＬＳＤトルクＴＬＳＤと、ロックモードで算出したロックモード用伝達トルクＬＯＣＫＤとに基づき、左右の後輪Ｗ３，Ｗ４にそれぞれ伝達する最終的な左右の目標伝達トルクＭＤＴＬ，ＭＤＴＲを算出する。そして、これらの左右の目標伝達トルクＭＤＴＬ，ＭＤＴＲに応じた駆動電流が左右の電磁クラッチ１０，１０に供給され、これらの締結力が制御されることで、後輪Ｗ３，Ｗ４に配分するトルクが制御される。
【００２８】
以下、前述したステップ１のＶＡＴＣ制御処理について説明する。なお、以下の説明では、ＲＯＭに個々のデータやテーブル値などとしてあらかじめ記憶されている固定値については、その先頭に「＃」を付し、ＲＡＭに記憶され、更新される変数値と区別して表すものとする。
【００２９】
まず、ＶＡＴＣ制御処理のうちの駆動トルク算出処理について説明する。本処理は、エンジン３から出力されるエンジントルクＴＥＣに基づき、自動変速機４の出力軸側に出力されている駆動トルクＴＤ（主駆動輪の駆動力、車両の走行状態を表すパラメータ）を算出するものであり、図３は、そのメインルーチンを示している。本処理は、プログラムタイマ設定により、所定時間ごとに割り込み実行される。
【００３０】
同図に示すように、本処理では、まず、ステップ１０のギヤレシオ算出処理により、ギヤレシオＮＩを算出する。この処理の内容については、後述する。
【００３１】
次に、ステップ１１に進み、慣性補正トルク算出処理により、慣性補正トルクＴＭを算出する。この処理の内容についても、後述する。この慣性補正トルクＴＭは、加速の際に車輪Ｗ１〜Ｗ４を回転させるためのトルクがギヤ位置ごとに異なるので、これを駆動トルクＴＤの算出に反映させるための補正量である。
【００３２】
次いで、ステップ１２に進み、トルクコンバータ４ａの入出力回転比ＥＴＲに応じ、図４に一例を示すＥＴＲ−ＫＥＴＲテーブルを検索することにより、テーブル値＃ＴＢＬ＿ＫＥＴＲを求め、トルコン増幅率ＫＥＴＲとして設定する。
【００３３】
同図に示すように、入出力回転比ＥＴＲとテーブル値＃ＴＢＬ＿ＫＥＴＲはリニアな関係にあり、テーブル値＃ＴＢＬ＿ＫＥＴＲは、入出力回転比ＥＴＲが大きいほど、大きく設定されている。なお、同図において、図中の直線がテーブル値＃ＴＢＬ＿ＫＥＴＲを示しており、図３のステップ１２の＃ＴＢＬ＿ＫＥＴＲ（ＥＴＲ）の表記は、テーブル値＃ＴＢＬ＿ＫＥＴＲを、入出力回転比ＥＴＲに応じて求めることを示している。このようなフローチャート中の表記は、以下の各フローチャートにおいても同様である。
【００３４】
次に、ステップ１３に進み、ＰＯＳＩ値が値２以上であるか否かを判別する。この判別結果がＹＥＳのとき、すなわちシフト位置が「１」〜「Ｄ５」，「Ｒ」のいずれかにあるときには、ステップ１４に進み、フェイルセーフフラグＦ＿ＦＩＦＳＤが「１」であるか否かを判別する。このフェイルセーフフラグＦ＿ＦＩＦＳＤは、ＦＩ／ＡＴ・ＥＣＵ１２においてエンジン３の故障が検出されているときに「１」に、そうでないときに「０」にそれぞれセットされるものである。
【００３５】
この判別結果がＮＯのとき、すなわちエンジン３が正常であるときには、スップ１５に進み、前記ステップ１０〜１２で求めたギヤレシオＮＩ、慣性補正トルクＴＭおよびトルコン増幅率ＫＥＴＲを用い、下式（１）により駆動トルクＴＤを算出して、本処理を終了する。
【００３６】
ＴＤ＝ＴＥＣ×ＫＥＴＲ×ＮＩ−ＴＭ          ……  （１）
ここで、ＴＥＣは、ＦＩ／ＡＴ・ＥＣＵ１２で算出されるエンジントルクであり、エンジン回転数ＮＥおよび吸気管内絶対圧ＰＢＡに基づいて求めた基本エンジントルクＴＥを、各種のパラメータ（エンジン水温や吸気温など）に基づいて補正したものである。
【００３７】
一方、ステップ１４の判別結果がＹＥＳのとき、すなわちエンジン３の故障が検出されているときには、ステップ１６に進み、下式（２）により駆動トルクＴＤを算出して、本処理を終了する。
【００３８】
ＴＤ＝ＴＥ×ＫＥＴＲ×ＮＩ−ＴＭ            ……  （２）
【００３９】
一方、ステップ１３の判別結果がＮＯのとき、すなわちシフト位置が「Ｎ」または「Ｐ」にあるとき、またはノーポジション状態にあるときには、ステップ１７に進み、駆動トルクＴＤを値０に設定し、さらにステップ１８で、駆動トルクフラグＦ＿ＴＤを「１」にセットして、本処理を終了する。なお、この駆動トルクフラグＦ＿ＴＤは、駆動トルクＴＤが値０以下であるとき、すなわち停車中または減速中であるときに「１」に、駆動トルクＴＤが値０よりも大きいとき、すなわち加速中であるときに「０」にそれぞれセットされるものである。
【００４０】
次に、図５を参照しながら、前述したステップ１０のギヤレシオ算出処理について説明する。この処理は、ＰＯＳＩ値およびＳＦＴ値に基づき、ギヤレシオＮＩを算出するものである。
【００４１】
本処理では、まず、ステップ２０で、ＰＯＳＩ値が値２以上であるか否かを判別する。この判別結果がＮＯのとき、すなわち、ＰＯＳＩ＝１または０であって、シフト位置が「Ｎ」または「Ｐ」にあるとき、またはノーポジション状態にあるときには、ギヤレシオＮＩを値０にセットして（ステップ２２）、本処理を終了する。
【００４２】
一方、ステップ２０の判別結果がＹＥＳのときは、ステップ２１に進み、ＰＯＳＩ＝２であるか否かを判別する。この判別結果がＹＥＳのとき、すなわちシフト位置が「Ｒ」にあるときは、ギヤレシオＮＩを後進用の所定値＃ＮＩ６にセットして（ステップ２３）、本処理を終了する。
【００４３】
一方、ステップ２１の判別結果がＮＯのとき、すなわちＰＯＳＩ≧３のときには、ステップ２４に進み、ギヤレシオＮＩを、ＳＦＴ値に応じて選択した前進用の所定値＃ＮＩｎ（ｎ＝１〜５）のうちの１つに設定して、本処理を終了する。この場合、前進用の所定値＃ＮＩ１〜５は、ＳＦＴ値の値１〜５にそれぞれ対応して設定されているとともに、低速ギヤ位置のものほど、大きな値に設定されている。
【００４４】
次に、図６を参照しながら、前述したステップ１１の慣性補正トルク算出処理について説明する。この処理は、ＰＯＳＩ値、ＳＦＴ値および平均前輪加速度Ｇ０２に基づき、慣性補正トルクＴＭを算出するものである。
【００４５】
同図に示すように、本処理では、まず、ステップ３０〜３４において、ＰＯＳＩ値およびＳＦＴ値に基づき、前述したギヤレシオＮＩの算出の場合と同様に、慣性補正トルクＴＭを算出する。
【００４６】
すなわち、ステップ３０で、ＰＯＳＩ＝１または０と判別されたときには、慣性補正トルクＴＭを値０に設定する（ステップ３２）。
【００４７】
また、ステップ３０，３１で、ＰＯＳＩ＝２と判別されたときには、慣性補正トルクＴＭを後進用の所定値＃ＴＭ６に設定する（ステップ３３）。
【００４８】
一方、ステップ３０，３１で、ＰＯＳＩ≧３と判別されたときには、慣性補正トルクＴＭを、ＳＦＴ値に応じて選択した前進用の所定値＃ＴＭｎ（ｎ＝１〜５）のうちの１つに設定する（ステップ３４）。この場合、前進用の所定値＃ＴＭ１〜５は、前記所定値＃ＮＩ１〜５と同様に、ＳＦＴ値の値１〜５にそれぞれ対応して設定されているとともに、低速ギヤ位置のものほど、大きな値に設定されている。
【００４９】
以上のステップ３２〜３４に続き、ステップ３５では、フラグＦ＿ＴＭ＝１であるか否かを判別する。このフラグＦ＿ＴＭは、平均前輪加速度Ｇ０２が値０以下であるときに「１」に、値「０」よりも大きいときに「０」にそれぞれセットされるものである。なお、平均前輪加速度Ｇ０２は、左前輪速度ＶＷ１の今回値ＶＷ１ｎと前回値ＶＷ１ｎ−１との差分から左前輪加速度Ｇ０Ｌを求め、これと同様に右前輪加速度Ｇ０Ｒを求めるとともに、これらの左前輪加速度Ｇ０Ｌおよび右前輪加速度Ｇ０Ｒを加算平均することで、算出される。また、これと同様に、平均後輪加速度Ｇ０３も算出される。
【００５０】
ステップ３５の判別結果がＹＥＳのとき、すなわち減速中または停車中であるときには、慣性補正トルクＴＭを値０に設定して（ステップ３６）、本処理を終了する。
【００５１】
一方、ステップ３５の判別結果がＮＯのとき、すなわち加速中であるときには、慣性補正トルクＴＭを、ステップ３２〜３４で求めた慣性補正トルクＴＭに上記平均前輪加速度Ｇ０２を乗算した値に設定する（ステップ３７）。
【００５２】
次に、ステップ３８に進み、ステップ３７で求めた慣性補正トルクＴＭを、ローパスフィルタ処理することにより、フィルタ処理値ＡＸを求める。次いで、ステップ３９に進み、慣性補正トルクＴＭをステップ３８で求めたフィルタ処理値ＡＸに設定して、本処理を終了する。
【００５３】
次に、ＶＡＴＣ制御処理のうちの前後配分トルク制御処理について説明する。本処理は、ＶＡＴＣトルクＴ０を算出するものであり、図７は、本処理のメインルーチンを示している。本処理は、プログラムタイマ設定により、所定時間ごとに割り込み実行される。
【００５４】
本処理では、同図に示すように、まず、ステップ４０で、加速時の前後配分処理を実行する。この処理では、後述するように、ＶＡＴＣトルク中間値Ｔ１が算出される。
【００５５】
次のステップ４１では、タイトターンブレーキ防止制御処理を実行する。この処理では、後述するように、タイトターンブレーキ防止係数Ｔ４が算出される。
【００５６】
最終のステップ４２では、Ｔ０算出処理を実行する。この処理では、図８に示すように、ステップ４３で、ステップ４０で求めたＶＡＴＣトルク中間値Ｔ１にステップ４１で求めたタイトターンブレーキ防止係数Ｔ４を乗算した値Ｔ１×Ｔ４を求め、ＶＡＴＣトルクＴ０を、下限リミットチェックした値Ｔ１×Ｔ４に設定する。
【００５７】
以下、上記ステップ４０の加速時の前後配分処理について説明する。図９は、本処理のメインルーチンを示している。この処理では、まず、ステップ５０で、駆動力による加速度算出処理を実行し、前述した駆動トルクＴＤに基づき、車両加速度ＸＧＦを算出する。
【００５８】
次に、ステップ５１に進み、加速度フィルタ処理を実行し、車両加速度ＸＧＦのフィルタ処理値ＸＧＦ１Ｆを算出する。次いで、ステップ５２に進み、加速時の前後配分トルク算出処理により、前述したＶＡＴＣトルク中間値Ｔ１を算出して、本処理を終了する。
【００５９】
以下、図１０を参照しながら、上記ステップ５０の駆動力による加速度算出処理について、説明する。本処理では、まず、ステップ６０で、駆動トルクフラグＦ＿ＴＤが「０」であるか否かを判別する。
【００６０】
この判別結果がＮＯのとき、すなわち前述したように減速中または停車中であって、駆動トルクＴＤ≦０であるときには、ステップ６１に進み、車両加速度ＸＧＦを値０に設定して、本処理を終了する。
【００６１】
一方、この判別結果がＮＯのとき、すなわち前述したように加速中であって、駆動トルクＴＤ＞０であるときには、ステップ６２に進み、下式（３）により車両加速度ＸＧＦを算出して、本処理を終了する。
【００６２】
ＸＧＦ＝ＴＤ×＃ＫＸＧ／＃Ｒ−＃ＴＢＬ＿ＦＲＣ    …… （３）
ここで、＃ＫＸＧは車両２の重量の逆数を、＃Ｒは車両２の車輪径を、＃ＴＢＬ＿ＦＲＣは車両２の走行抵抗ＦＲＣのテーブル値をそれぞれ示している。
【００６３】
この走行抵抗ＦＲＣのテーブル値＃ＴＢＬ＿ＦＲＣは、車両速度ＶＣＡＲに応じて、図１１に一例を示すようなテーブルを検索することにより、求められる。同図に示すように、テーブル値＃ＴＢＬ＿ＦＲＣは、車輪速度ＶＣＡＲが大きいほど、大きく設定されている。なお、この車両速度ＶＣＡＲは、左右の後輪速度ＶＷ３，ＶＷ４のうちの小さい方を加速状態または減速状態に応じて補正することにより、求められる。
【００６４】
以上のように車両加速度ＸＧＦは、駆動トルクＴＤに基づく算出車両加速度から車両２の走行抵抗ＦＲＣを減算した値として、算出される。すなわち、車両加速度ＸＧＦは、車両２を実際に加速させるためにのみ用いられる余剰車両加速度として、算出されるので、車両２の実際の加速状態を良好に反映する。
【００６５】
以下、図１２を参照しながら、前記ステップ５１の加速度フィルタ処理について、説明する。同図に示すように、本処理では、ステップ７０において、駆動トルクフラグＦ＿ＴＤが「１」であるとき、すなわち減速中または停車中であって、駆動トルクＴＤ≦０であるときには、中間値ＸＧＦ１を値０に設定する（ステップ７１）。
【００６６】
一方、ステップ７０で、駆動トルクフラグＦ＿ＴＤが「０」であるとき、すなわち加速中であって、駆動トルクＴＤ＞０であるときには、中間値ＸＧＦ１を車両加速度ＸＧＦに設定する（ステップ７２）。
【００６７】
以上のステップ７１，７２に続き、ステップ７３で、フィルタ後車両加速度ＸＧＦ１Ｆを中間値ＸＧＦ１に設定して、本処理を終了する。以上のように、フィルタ後車両加速度ＸＧＦ１Ｆは、加速中のときには前述した車両加速度ＸＧＦに設定され、減速中または停車中のときには値０に設定される。
【００６８】
以下、図１３〜図２１を参照しながら、前記ステップ５２の加速時の前後配分トルク算出処理について、説明する。ここでは、停車中の車両２が発進する場合を例にとり、発進時の流れに沿って説明する。図１３に示すように、本処理では、まず、ステップ８０で、車両速度ＶＣＡＲが所定速度＃ＶＡＴＣＮＶよりも大きいか否かを判別する。
【００６９】
停車中は、ＶＣＡＲ＝０であるので、この判別結果がＮＯとなり、ステップ８１に進み、ＰＯＳＩ値が値１以下であるか否かを判別する。「１〜Ｄ５，Ｒ」のうちのいずれかのシフト位置がまだ選択されていないときには、この判別結果がＹＥＳとなり、ＶＡＴＣ調整係数ＫＶを値１に、ＶＡＴＣトルク基本値ＶＡＴＣ（駆動力）を値０にそれぞれ設定する（ステップ９６，９７）。
【００７０】
次いで、図１４のステップ９８〜１００で、ＶＡＴＣトルク中間値Ｔ１、ＶＡＴＣトルク目標値Ｔ１ＭおよびＶＡＴＣトルク補正値Ｔ１ＭＭを値０に設定する。次に、ＨＯＰ補正係数ＭＴＨＯＰおよびＳＴＥＰ補正係数ＭＴＳＴＥＰを値１に設定し（ステップ１０１，１０２）、ＨＯＰタイマ値ＴＭＨＯＰおよびＳＴＥＰタイマ値ＴＭＳＴＥＰを値０に設定する（ステップ１０３，１０４）。
【００７１】
次いで、ステップ１０５に進み、ＶＡＴＣトルク中間値Ｔ１の前回値Ｔ１Ｏをステップ９９で求めたＶＡＴＣトルク中間値Ｔ１（＝０）に更新して、本処理を終了する。
【００７２】
一方、停車中に「１」〜「Ｄ５」，「Ｒ」のうちのいずれかのシフト位置が選択されたときには、ステップ８１の判別結果がＮＯとなり、ステップ８２に進み、ＰＯＳＩ値が値２であるか否かを判別する。
【００７３】
この判別結果がＮＯのとき、すなわち前進用のシフト位置（「１」〜「Ｄ５」のいずれか）が選択されたときには、ステップ８３に進み、車両速度ＶＣＡＲおよびＳＦＴ値に応じ、図１５に一例を示すＶＣＡＲ−ＫＶテーブルを検索することにより、ＶＡＴＣ調整係数ＫＶのテーブル値＃ＴＢＬ＿ＫＶｎ（ただしｎ＝１〜５）を求め、ＶＡＴＣ調整係数ＫＶとして設定する。
【００７４】
このＶＣＡＲ−ＫＶテーブルとしては、ＳＦＴ値の値１〜５に対応して、１〜５速ギヤ位置用の５種類のものがそれぞれ容易されている。図１５は、１速ギヤ位置用のＶＣＡＲ−ＫＶテーブルを示している。同図に示すように、テーブル値＃ＴＢＬ＿ＫＶ１は、車両速度ＶＣＡＲが所定速度Ｘ０以下であるときに所定値Ｙ０に、所定速度Ｘ４以上であるときに所定速度Ｘ０よりも小さな所定値Ｙ４にそれぞれ設定され、車両速度ＶＣＡＲが所定速度Ｘ０と所定速度Ｘ４の間では、車両速度ＶＣＡＲが大きいほど、小さい値にそれぞれ設定されている。これは、車両速度ＶＣＡＲが大きいほど、車両２の運動エネルギが大きい状態にあることにより、前輪Ｗ１，Ｗ２がスリップしにくくなることで、後輪Ｗ３，Ｗ４を駆動するために要求されるトルクが小さくなることによる。
【００７５】
また、これらのＶＣＡＲ−ＫＶテーブルにおいては、テーブル値＃ＴＢＬ＿Ｋは、車両速度ＶＣＡＲに対して同様の傾向を示すとともに、高速ギヤ位置用のものほど、同じ車両速度ＶＣＡＲに対してより小さくなるよう、互いに異なる値に設定されている（図中に点線で示す他のテーブル曲線参照）。すなわち、１速ギヤ位置用のテーブル値＃ＴＢＬ＿ＫＶが最も大きく設定されている。これは、ギヤレシオが大きいほど、出力側ギヤの慣性質量が大きくなることで、後輪Ｗ３，Ｗ４を駆動するために大きなトルクが必要になることによる。
【００７６】
次に、ステップ８４に進み、フィルタ後車両加速度ＸＧＦ１ＦおよびＳＦＴ値に応じて、図１６に一例を示すＸＧＦ１Ｆ−ＶＡＴＣテーブルを検索することにより、ＶＡＴＣトルク基本値ＶＡＴＣのテーブル値＃ＴＢＬ＿ＶＡＴＣｎ（ただしｎ＝１〜５）を求め、ＶＡＴＣトルク基本値ＶＡＴＣとして設定する。
【００７７】
このＸＧＦ１Ｆ−ＶＡＴＣテーブルもまた、上記ＶＣＡＲ−ＫＶテーブルと同様に、ＳＦＴ値の値１〜５に対応して、１〜５速ギヤ位置用の５種類のものがそれぞれ用意されている。図１６は、１速ギヤ位置用のＶＣＡＲ−ＫＶテーブルを示している。同図に示すように、テーブル値＃ＴＢＬ＿ＶＡＴＣは、フィルタ後車両加速度ＸＧＦ１Ｆが大きいほど、大きい値に設定されている。これは、フィルタ後車両加速度ＸＧＦ１Ｆが大きいほど、車両２の運動エネルギが大きい状態にあることにより、前輪Ｗ１，Ｗ２がスリップしにくくなることで、後輪Ｗ３，Ｗ４を駆動するために要求されるトルクが大きくなることによる。
【００７８】
また、これらのＸＧＦ１Ｆ−ＶＡＴＣテーブルにおいては、テーブル値＃ＴＢＬ＿ＶＡＴＣは、フィルタ後車両加速度ＸＧＦ１Ｆに対して同様の傾向を示すとともに、高速ギヤ位置用のものほど、同じフィルタ後車両加速度ＸＧＦ１Ｆに対してテーブル値＃ＴＢＬ＿ＶＡＴＣが小さくなるよう、互いに異なる値に設定されている（図中に点線で示す他のテーブル曲線参照）。すなわち、１速ギヤ位置用のテーブル値＃ＴＢＬ＿ＶＡＴＣが最も大きく設定されている。これは、前述したように、ギヤレシオが大きいほど、出力側ギヤの慣性質量が大きくなることで、後輪Ｗ３，Ｗ４を駆動するために大きなトルクが必要になることによる。
【００７９】
一方、停車中にシフト位置「Ｒ」が選択されたときには、ステップ８２の判別結果がＹＥＳとなり、ステップ８５に進み、前記ステップ８３と同様に、車両速度ＶＣＡＲに応じ、リバースギヤ位置用のＶＣＡＲ−ＫＶテーブルを検索することにより、テーブル値＃ＴＢＬ＿ＫＶＲを求め、ＶＡＴＣ調整係数ＫＶとして設定する。このリバースギヤ位置用のＶＣＡＲ−ＫＶテーブルにおいても、テーブル値＃ＴＢＬ＿ＫＶＲは、前述した１〜５速ギヤ位置用のものと互いに異なる値でかつ、車両速度ＶＣＡＲに対して同様の傾向を示すように、設定されている。
【００８０】
次に、ステップ８６に進み、フィルタ後車両加速度ＸＧＦ１Ｆに応じ、リバースギヤ位置用のＸＧＦ１Ｆ−ＶＡＴＣテーブルを検索することにより、テーブル値＃ＴＢＬ＿ＶＡＴＣＲを求め、ＶＡＴＣトルク基本値ＶＡＴＣとして設定する。このリバースギヤ位置用のＸＧＦ１Ｆ−ＶＡＴＣテーブルにおいても、テーブル値＃ＶＡＴＣＲは、前述した１〜５速ギヤ位置用のものと互いに異なる値で、かつフィルタ後車両加速度ＸＧＦ１Ｆに対して同様の傾向を示すように、設定されている。
【００８１】
以上のステップ８４，８６に続き、図１４のステップ８７に進み、ＭＴ・ＪＯＢ処理を実行する。このＭＴ・ＪＯＢ処理では、後述するように、ＨＯＰ補正係数ＭＴＨＯＰおよびＳＴＥＰ補正係数ＭＴＳＴＥＰが算出される。
【００８２】
次に、ステップ８８に進み、車両速度ＶＣＡＲに応じ、図１７に一例を示すＶＣＡＲ−Ｔ１ＭＡＸテーブルを検索することにより、ＶＡＴＣトルクリミット値Ｔ１ＭＡＸのテーブル値＃ＴＢＬ＿ＶＡＴＣＭＡＸを求め、ＶＡＴＣトルクリミット値Ｔ１ＭＡＸとして設定する。
【００８３】
同図に示すように、このＶＣＡＲ−Ｔ１ＭＡＸテーブルでは、テーブル値＃ＴＢＬ＿ＶＡＴＣＭＡＸは、車両速度ＶＣＡＲが所定速度Ｘ０以下のときに所定値Ｙ０に、所定速度Ｘ９以上のときに所定値Ｙ０より小さな所定値Ｙ９にそれぞれ設定され、所定速度Ｘ０と所定速度Ｘ９の間では、車両速度ＶＣＡＲが大きいほど、小さい値に設定されている。これは、前述したように、車両速度ＶＣＡＲが大きいほど、前輪Ｗ１，Ｗ２がスリップしにくくなることで、後輪Ｗ３，Ｗ４を駆動するために要求されるトルクが小さくなることによる。
【００８４】
次に、ステップ８９に進み、下式（４）によりＶＡＴＣトルク補正値Ｔ１ＭＭを算出する。
【００８５】
Ｔ１ＭＭ＝ＶＡＴＣ×ＫＶ×ＭＴＨＯＰ×ＭＴＳＴＥＰ    ……    （４）
【００８６】
次に、ステップ９０で、このＶＡＴＣトルク補正値Ｔ１ＭＭが、ステップ８８で求めたＶＡＴＣトルクリミット値Ｔ１ＭＡＸよりも大きいか否かを判別する。この判別結果がＮＯのときには、ＶＡＴＣトルク目標値Ｔ１ＭをＶＡＴＣトルク補正値Ｔ１ＭＭに設定し（ステップ９１）、判別結果がＹＥＳのときには、ＶＡＴＣトルク目標値Ｔ１ＭをＶＡＴＣトルクリミット値Ｔ１ＭＡＸに設定する（ステップ９２）。
【００８７】
ステップ９１，９２に続き、ステップ９３に進み、ＶＡＴＣ・ＤＥＬＡＹ処理を実行する。このＶＡＴＣ・ＤＥＬＡＹ処理では、ＶＡＴＣトルク目標値Ｔ１Ｍの今回値と前回値との差が大きくならないように（すなわちトルク段差が小さくなるように）、前記ＶＡＴＣトルク中間値Ｔ１が、ＶＡＴＣトルク目標値Ｔ１Ｍの今回値を補正した値として、算出される。
【００８８】
次に、前記ステップ１０５に進み、ＶＡＴＣトルク中間値Ｔ１の前回値Ｔ１Ｏを、ステップ９３で算出したＶＡＴＣトルク中間値Ｔ１に設定して、本処理を終了する。
【００８９】
以上のように、停車中の車両２が発進してからステップ８０の判別結果がＹＥＳになるまで、すなわち車両速度ＶＣＡＲが所定速度＃ＶＡＴＣＮＶより大きくなるまでは、ＶＡＴＣトルク中間値Ｔ１が算出される。
【００９０】
次に、車両２が発進してから車両速度ＶＣＡＲが上昇し、所定速度＃ＶＡＴＣＮＶより大きくなったとき、すなわち前述したステップ８０の判別結果がＹＥＳになったときには、ステップ９４に進み、駆動トルクフラグＦ＿ＴＤが「１」であるか否かを判別する。
【００９１】
この判別結果がＮＯのとき、すなわち加速中であるときには、ステップ９５に進み、駆動トルクＴＤが所定値＃ＶＡＴＣＣＮＴＤよりも大きいか否かを判別する。この判別結果がＹＥＳのとき、すなわち加速中で、車両速度ＶＣＡＲおよび駆動トルクＴＤが大きいときには、前記ステップ８１以降に進み、前述したようにＶＡＴＣトルク中間値Ｔ１を算出する。
【００９２】
一方、ステップ９５の判別結果がＮＯのとき、すなわち加速中であっても、駆動トルクＴＤが所定値＃ＶＡＴＣＣＮＴＤ以下であるときには、前記ステップ９６以降に進み、前述したようにＶＡＴＣトルク中間値Ｔ１を値０に設定する。
【００９３】
一方、加速状態が終了し、減速状態になったとき、すなわちステップ９４の判別結果がＹＥＳになったときには、前記ステップ９５をスキップして、前記ステップ９６以降に進み、前述したようにＶＡＴＣトルク中間値Ｔ１を値０に設定する。
【００９４】
以上のように、ＶＡＴＣトルク中間値Ｔ１は、加速時の前後配分トルク算出処理において、前述したステップ５１で求めたフィルタ後車両加速度ＸＧＦ１Ｆに基づき、算出されるので、車両２の実際の加速状態を良好に反映するものとなる。
【００９５】
以下、図１８および図１９を参照しながら、前述したステップ８７のＭＴ・ＪＯＢ処理について説明する。ここでは、停車中の車両２が凍結路面から発進する場合を例にとり、発進時からの流れに沿って説明する。本処理では、まず、ステップ１１０において、平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３未満であるか否かを判別する。
【００９６】
この平均後輪速度ＶＲＲは、検出された左右の後輪速度ＶＷ３，ＶＷ４に所定のフィルタ処理を加えた値である左右のフィルタ後後輪速度ＦＶＷ３，ＦＶＷ４を加算平均することにより、求められる。また、第３所定速度＃ＶＲＥＦ３は、両後輪Ｗ３，Ｗ４が確実に回転状態になったと想定される値に設定される。
【００９７】
停車中は、ステップ１１０の判別結果がＹＥＳとなるので、ステップ１１１に進み、平均前輪速度ＶＦＲが上記第２所定速度＃ＶＲＥＦ２未満であるか否かを判別する。この平均前輪速度ＶＦＲも、上記平均後輪速度ＶＲＲと同様に、左右の前輪速度ＶＷ１，ＶＷ２に所定のフィルタ処理を加えた値である左右のフィルタ後前輪速度ＦＶＷ１，ＦＶＷ２を加算平均することにより、求められる。
【００９８】
また、第２所定速度＃ＶＲＥＦ２は、両前輪Ｗ１，Ｗ２が確実に回転状態になったと想定される値に設定されるとともに、本実施形態では、上記第３所定速度＃ＶＲＥＦ３と同じ値（例えば５ｋｍ／ｈ）に設定される。これは、上記後輪Ｗ３，Ｗ４が確実に回転したと推定されるまで、両後輪Ｗ３，Ｗ４にトルクを配分するためである。なお、第３所定速度＃ＶＲＥＦ３は、第２所定速度＃ＶＲＥＦ２よりもある程度大きな値に設定してもよい。
【００９９】
停車中は、このステップ１１１の判別結果がＹＥＳとなるので、ステップ１１２に進み、左フィルタ後前輪速度ＦＶＷ１が第１所定速度＃ＶＲＥＦ１以上であるか否かを判別する。この第１所定速度＃ＶＲＥＦ１もまた、左前輪Ｗ１または右前輪Ｗ２が確実に回転していると想定される値に設定されるとともに、本実施形態では、上記第３所定速度＃ＶＲＥＦ３および第２所定速度＃ＶＲＥＦ２と同じ値（例えば５ｋｍ／ｈ）に設定される。
【０１００】
停車中は、このステップ１１２の判別結果がＮＯとなるので、ステップ１１３に進み、右フィルタ後前輪速度ＦＶＷ２が第１所定速度＃ＶＲＥＦ１以上であるか否かを判別する。停車中は、このステップ１１３の判別結果がＮＯとなるので、図１９のステップ１１４に進み、前記ＨＯＰタイマ値ＴＭＨＯＰを値０にセットし、ステップ１１５で、前記ＳＴＥＰタイマ値ＴＭＳＴＥＰを値０にセットする。
【０１０１】
次に、ステップ１２６に進み、ＨＯＰタイマ値ＴＭＨＯＰに応じ、図２０に一例を示すＴＭＨＯＰ−ＭＴＨＯＰテーブルを検索することにより、テーブル値＃ＴＢＬ＿ＭＴＨＯＰ（ＴＭＨＯＰ）を求め、ＨＯＰ補正係数ＭＴＨＯＰとして設定する。
【０１０２】
同図に示すように、このＴＭＨＯＰ−ＭＴＨＯＰテーブルでは、テーブル値＃ＴＢＬ＿ＭＴＨＯＰ（ＴＭＨＯＰ）は、ＨＯＰタイマ値ＴＭＨＯＰが所定値Ｘ０（＞０）以下のときに所定値Ｙ０（値１．０）に、所定値Ｘ３以上のときに所定値Ｙ０よりも大きな所定値Ｙ３にそれぞれ設定され、所定値Ｘ０と所定値Ｘ３の間では、ＨＯＰタイマ値ＴＭＨＯＰが大きいほど、大きい値に設定されている。これは、後輪Ｗ３，Ｗ４側に配分するトルクを、時間の経過に伴って漸増させることで、凍結路面などの低μ路面上での発進性を向上させるためである。今回のループでは、ステップ１１４でＴＭＨＯＰ＝０になるので、ＨＯＰ補正係数ＭＴＨＯＰ＝１．０となる。
【０１０３】
次に、ステップ１２７に進み、ＳＴＥＰタイマ値ＴＭＳＴＥＰに応じ、図２１に一例を示すＴＭＳＴＥＰ−ＭＴＳＴＥＰテーブルを検索することにより、テーブル値＃ＴＢＬ＿ＭＴＳＴＥＰ（ＴＭＳＴＥＰ）を求め、ＳＴＥＰ補正係数ＭＴＳＴＥＰとして設定して、本処理を終了する。
【０１０４】
同図に示すように、このＴＭＳＴＥＰ−ＭＴＳＴＥＰテーブルは、上記ＴＭＨＯＰ−ＭＴＨＯＰテーブルと同様の傾向を示すように設定されている。すなわち、テーブル値＃ＴＢＬ＿ＭＴＳＴＥＰ（ＴＭＳＴＥＰ）は、ＳＴＥＰタイマ値ＴＭＳＴＥＰが所定値Ｘ０（＞０）以下のときに所定値Ｙ０（値１．０）に、所定値Ｘ３（後述する所定値＃ＴＭＳ１）以上のときに所定値Ｙ０よりも大きな所定値Ｙ３にそれぞれ設定され、所定値Ｘ０と所定値Ｘ３の間では、ＳＴＥＰタイマ値ＴＭＳＴＥＰが大きいほど、大きい値に設定されている。これは、上記と同様に、後輪Ｗ３，Ｗ４側に配分するトルクを、時間の経過に伴って漸増させることで、凍結路面などの低μ路面上での発進性を向上させるためである。今回のループでは、ステップ１１５でＴＭＳＴＥＰ＝０になるので、ＳＴＥＰ補正係数ＭＴＳＴＥＰ＝１．０となる。
【０１０５】
一方、車両２が凍結路面から発進した後に、ステップ１１２，１１３の一方の判別結果がＹＥＳになったとき、すなわち平均前輪速度ＶＦＲが第２所定速度＃ＶＲＥＦ２未満であるにもかかわらず、左右のフィルタ後前輪速度ＦＶＷ１，ＦＷ２の一方が第１所定速度＃ＶＲＥＦ１以上で、かつ他方が第１所定速度＃ＶＲＥＦ１未満であるとき、言い換えれば前輪Ｗ１，Ｗ２間で速度差が生じている状態（例えばスリップ状態）であるときには、図１９のステップ１１６に進み、ＨＯＰタイマ値ＴＭＨＯＰがその上限値＃ＴＭＨ１であるか否かを判別する。この上限値＃ＴＭＨ１は、前記ＨＯＰタイマ値ＴＭＨＯＰの前記所定値Ｘ３に設定される。
【０１０６】
今回がこのループの第１回目であるときには、この判別結果がＮＯとなるので、ステップ１１７に進み、ＨＯＰタイマ値ＴＭＨＯＰをインクリメントした後、前記ステップ１２６，１２７を実行し、ＨＯＰ補正係数ＭＴＨＯＰおよびＳＴＥＰ補正係数ＭＴＳＴＥＰを前述したように求めて、本処理を終了する。一方、ステップ１１６の判別結果がＹＥＳのとき、すなわちＨＯＰタイマ値ＴＭＨＯＰが上限値＃ＴＭＨ１に達したときには、ステップ１１７をスキップし、前記ステップ１２６，１２７を実行して、本処理を終了する。
【０１０７】
一方、ステップ１１１の判別結果がＮＯとなったとき、すなわち平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３未満で、かつ前輪平均速度ＶＦＲが第２所定速度＃ＶＲＥＦ２（＝第３所定速度＃ＶＲＥＦ３）以上になっていて、前輪平均速度ＶＦＲが平均後輪速度ＶＲＲよりも大きくなったときには、前後輪間でスリップが生じているとして、図１９のステップ１１８に進み、ＳＴＥＰタイマ値ＴＭＳＴＥＰが上限値＃ＴＭＳ１であるか否かを判別する。この上限値＃ＴＭＳ１は、前記ＳＴＥＰタイマ値ＴＭＳＴＥＰの前記所定値Ｘ３に設定される。
【０１０８】
今回がこのループの第１回目であるときには、この判別結果がＮＯとなるので、ステップ１１９に進み、ＳＴＥＰタイマ値ＴＭＳＴＥＰをインクリメントした後、ステップ１２６以降に進む。一方、ステップ１１８の判別結果がＹＥＳのとき、すなわちＳＴＥＰタイマ値ＴＭＳＴＥＰが上限値＃ＴＭＳ１に達したときには、ステップ１１９をスキップし、前記ステップ１２６，１２７を実行して、本処理を終了する。
【０１０９】
一方、ステップ１１０の判別結果がＮＯのとき、すなわち時間の経過に伴い、左右のフィルタ後後輪速度ＦＶＷ３，ＦＶＷ４が上昇して、平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３以上になったときには、図１９のステップ１２０に進み、ＨＯＰタイマ値ＴＭＨＯＰがその所定しきい値＃ＴＭＨＯＰ以下であるか否かを判別する。
【０１１０】
この判別結果がＮＯのときには、ステップ１２１に進み、ＨＯＰタイマ値ＴＭＨＯＰから所定しきい値＃ＴＭＨＯＰを減算する。
【０１１１】
次に、ステップ１２２に進み、ＳＴＥＰタイマ値ＴＭＳＴＥＰがその所定しきい値＃ＴＭＳＴＥＰ以下であるか否かを判別する。
【０１１２】
この判別結果がＮＯのときには、ステップ１２１に進み、ＳＴＥＰタイマ値ＴＭＳＴＥＰから所定しきい値＃ＴＭＳＴＥＰを減算した後、前述したステップ１２６以降に進む。
【０１１３】
一方、ステップ１２０の判別結果がＹＥＳになったときには、ステップ１２４に進み、ＨＯＰタイマ値ＴＭＨＯＰを値０に設定して、ステップ１２２に進む。
【０１１４】
一方、時間の経過に伴い、ステップ１２２の判別結果がＹＥＳになったときには、ステップ１２５に進み、ＳＴＥＰタイマ値ＴＭＳＴＥＰを値０に設定して、ステップ１２６に進む。
【０１１５】
以上のＭＴ・ＪＯＢ処理により、左右のフィルタ後前輪速度ＦＶＷ１，ＦＶＷ２の一方が第１所定速度＃ＶＲＥＦ１以上で、他方が第１所定速度＃ＶＲＥＦ１未満のときには、平均前輪速度ＶＦＲが第２所定速度＃ＶＲＥＦ２以上になるまで、ＨＯＰ補正係数ＭＴＨＯＰが値１．０よりも大きな値に設定されることにより、図１４のステップ９３で算出されるＶＡＴＣトルク中間値Ｔ１が増大補正されるとともに、ＨＯＰ補正係数ＭＴＨＯＰが時間の経過に伴って漸増されることにより、ＶＡＴＣトルク中間値Ｔ１も漸増される。
【０１１６】
また、平均前輪速度ＶＦＲが第２所定速度＃ＶＲＥＦ２以上であるときには、平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３以上になるまで、ＳＴＥＰ補正係数ＭＴＳＴＥＰが値１．０よりも大きな値に設定されることにより、ＶＡＴＣトルク中間値Ｔ１が増大補正されるとともに、ＳＴＥＰ補正係数ＭＴＳＴＥＰが時間の経過に伴って漸増されることにより、ＶＡＴＣトルク中間値Ｔ１も漸増される。すなわち、左右の前輪Ｗ１，Ｗ２の一方がスリップしているとき、または両方がスリップしているときには、平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３以上になるまで、ＶＡＴＣトルク中間値Ｔ１が漸増される。
【０１１７】
さらに、平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３以上になったときには、それ以降のＨＯＰ補正係数ＭＴＨＯＰおよびＳＴＥＰ補正係数ＭＴＳＴＥＰが漸減されることにより、ＶＡＴＣトルク中間値Ｔ１も漸減されるので、トルク段差は生じない。
【０１１８】
以下、図２２を参照しながら、前述した前後配分トルク処理のステップ４１のタイトターンブレーキ防止制御処理について、説明する。本処理では、以下に述べるように、車両速度ＶＣＡＲおよび駆動トルクＴＤに基づき、前述したタイトターンブレーキ防止係数Ｔ４が算出される。すなわち、まず、ステップ１２０において、駆動トルクフラグＦ＿ＴＤが「１」であるか否かを判別する。
【０１１９】
この判別結果がＮＯのとき、すなわち加速中であるときには、ステップ１３１に進み、車両速度ＶＣＡＲに応じ、図２３に一例を示すＶＣＡＲ−ＫＷ５テーブルを検索することにより、テーブル値＃ＴＢＬ＿ＫＷ５を求め、車速補正係数ＫＷ５として設定する。
【０１２０】
同図に示すように、このＶＣＡＲ−ＫＷ５テーブルでは、テーブル値＃ＴＢＬ＿ＫＷ５は、車両速度ＶＣＡＲが所定値Ｘ０以下のときに所定値Ｙ０に、所定値Ｘ１以上のときに所定値Ｙ０より小さな所定値Ｙ１にそれぞれ設定され、所定値Ｘ０と所定値Ｘ１の間では、車両速度ＶＣＡＲが大きいほど、リニアに減少するように設定されている。これは、車両速度ＶＣＡＲが大きいほど、タイトターンブレーキ力が大きくなるので、タイトターンブレーキ防止係数Ｔ４の値を小さくするためである。
【０１２１】
次に、ステップ１３２に進み、駆動トルクＴＤに応じ、図２４に一例を示すＴＤ−Ｔ４ＴＤＫテーブルを検索することにより、駆動トルク補正係数Ｔ４ＴＤＫのテーブル値＃ＴＢＬ＿Ｔ４ＴＤＫを求め、駆動トルク補正係数Ｔ４ＴＤＫとして設定する。
【０１２２】
同図に示すように、このＴＤ−Ｔ４ＴＤＫテーブルテーブルでは、テーブル値＃ＴＢＬ＿Ｔ４ＴＤＫは、駆動トルクＴＤが所定値Ｘ０以下のときに所定値Ｙ０に、所定値Ｘ６以上のときに所定値Ｘ０より大きな所定値Ｙ６にそれぞれ設定され、所定値Ｘ０と所定値Ｘ６の間では、駆動トルクＴＤが大きいほど、大きく設定されている。これは、駆動トルクＴＤが大きいほど、車両２の前進力がタイトターンブレーキ力に勝る度合が大きくなることにより、タイトターンブレーキ現象が発生しにくくくなるので、タイトターンブレーキ防止係数Ｔ４の値を大きくするためである。
【０１２３】
次に、ステップ１３３に進み、タイトターンブレーキ防止係数Ｔ４を、前記ステップ１３１で求めた車速補正係数ＫＷ５とステップ１３２で求めた駆動トルク補正係数Ｔ４ＴＤＫとの積に設定して、本処理を終了する。
【０１２４】
一方、ステップ１３０の判別結果がＹＥＳのとき、すなわち、停車中または減速中であるときには、ステップ１３４に進み、駆動トルク補正係数Ｔ４ＴＤＫを値０に設定して、ステップ１３３に進む。これにより、停車中または減速中であるときには、タイトターンブレーキ防止係数Ｔ４は値０に設定される。
【０１２５】
前後配分トルク制御処理のステップ４２のＴ０算出処理で述べたように、ＶＡＴＣトルクＴ０が、以上のように求めたタイトターンブレーキ防止係数Ｔ４を前記ＶＡＴＣトルク中間値Ｔ１に乗算した値に設定されることにより、このＶＡＴＣトルクＴ０によって、タイトターンブレーキ現象を確実に防止できる。
【０１２６】
以下、図２５を参照しながら、前述したステップ１のＶＡＴＣ制御処理のうちの制御量制限処理について、説明する。この処理では、以下に述べるように、ＰＯＳＩ値およびイニシャルフラグＦ＿ＩＧＤＬＹ２に基づき、ＶＡＴＣトルク最終目標値ＴＯＢＪＭが算出される。
【０１２７】
すなわち、まず、ステップ１４０で、シフト位置＆イニシャル処理を実行することにより、ＶＡＴＣトルク最終前目標値ＴＯＢＪを求める。以下、図２６を参照しながら、このシフト位置＆イニシャル処理について説明する。
【０１２８】
この処理では、まず、ステップ１５０で、イニシャルフラグＦ＿ＩＧＤＬＹ２が「１」であるか否かを判別する。イニシャルフラグＦ＿ＩＧＤＬＹ２は、エンジン３が始動してから所定時間（例えば１ｓｅｃ）が経過するまで「０」に、所定時間経過後は「１」に設定されるものである。
【０１２９】
ステップ１５０の判別結果がＮＯのとき、すなわちエンジン３の始動直後であるときには、ステップ１５１に進み、ＶＡＴＣトルク最終前目標値ＴＯＢＪを値０に設定して、本処理を終了する。これは、エンジン３の始動直後はその運転状態が不安定であるので、ＶＡＴＣトルク最終前目標値ＴＯＢＪの算出を行わないようにするためである。
【０１３０】
一方、ステップ１５０の判別結果がＹＥＳのとき、すなわちエンジン３が始動してから所定時間が経過しているときには、ステップ１５２に進み、ＰＯＳＩ値が値２以上であるか否かを判別する。
【０１３１】
この判別結果がＮＯのとき、すなわちシフト位置が「Ｎ」または「Ｐ」であるとき、またはノーポジション状態のときにも、前記ステップ１５１に進み、ＶＡＴＣトルク最終前目標値ＴＯＢＪを値０に設定して、本処理を終了する。これは、シフト位置が「Ｎ」または「Ｐ」であるとき、またはノーポジション状態のときには、後輪Ｗ３，Ｗ４にトルクを配分する必要がないことによる。
【０１３２】
一方、ステップ１５２の判別結果がＹＥＳのとき、すなわちＰＯＳＩ≧２であって、前進用または後進用のシフト位置が選択されているときには、ステップ１５３に進み、ＶＡＴＣトルク最終前目標値ＴＯＢＪを、前記ステップ４２のＴ０算出処理で算出したＶＡＴＣトルクＴ０に設定して、本処理を終了する。前述したように、このＶＡＴＣトルクＴ０は、前記ＶＡＴＣトルク中間値Ｔ１に前記タイトターンブレーキ防止係数Ｔ４を乗算したものであるので、車両２の実際の加速状態を良好に反映する。
【０１３３】
以上のようにステップ１４０でシフト位置＆イニシャル処理を実行した後、図２５に戻り、ステップ１４１に進み、ＶＡＴＣトルク最終目標値ＴＯＢＪＭを、ステップ１４０で求めたＶＡＴＣトルク最終前目標値ＴＯＢＪに設定して、本処理を終了する。
【０１３４】
以上のように、ＶＡＴＣ制御処理では、エンジン３の始動後でその運転状態が安定しているとき、または前進用または後進用のシフト位置が選択されていて、トルクを後輪Ｗ３，Ｗ４に配分する必要があるときにのみ、ＶＡＴＣトルク最終目標値ＴＯＢＪＭが算出される。また、ＶＡＴＣトルク最終目標値ＴＯＢＪＭは、前述した車両２の実際の加速状態を良好に反映するＶＡＴＣトルクＴ０に設定されるので、従来のスロットル開度から算出する場合と異なり、ＶＡＴＣトルク最終目標値ＴＯＢＪＭを、車両２の実際の加速状態を反映させながら過不足なく、後輪Ｗ３，Ｗ４に配分することができる。その結果、車両２の応答性および燃費を向上させることができる。
【０１３５】
さらに、前述したように、このＶＡＴＣトルクＴ０は、ＶＡＴＣトルク中間値Ｔ１に基づき算出される。このＶＡＴＣトルク中間値Ｔ１は、前述したＭＴ・ＪＯＢ処理により、左右のフィルタ後前輪速度ＦＶＷ１，ＦＶＷ２の一方が第１所定速度＃ＶＲＥＦ１以下で、他方が第１所定速度＃ＶＲＥＦ１未満であるとき、または、平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３未満で、平均前輪速度ＶＦＲが第２所定速度＃ＶＲＥＦ２（＝第３所定速度＃ＶＲＥＦ３）以上であるとき、すなわち左右の前輪Ｗ１，Ｗ２の一方がスリップしているときや前後輪間で速度差があるときには、平均後輪速度ＶＲＲが第３所定速度＃ＶＲＥＦ３以上になるまで、時間の経過に伴って、漸増される。
【０１３６】
以上により、後輪Ｗ３，Ｗ４に配分するＶＡＴＣトルク最終目標値ＴＯＢＪＭを、前輪Ｗ１，Ｗ２のスリップ状態に応じて、適切に求めることができる。特に、例えば凍結路面での発進時において、アクセルがゆっくりと踏まれることで車両２のフィルタ後車両加速度ＸＧＦ１Ｆが小さくなりがちである本実施形態のような場合、前輪Ｗ１，Ｗ２の一方または両方がスリップしているときには、後輪Ｗ３，Ｗ４に配分されるＶＡＴＣトルク最終目標値ＴＯＢＪＭが以上のように増大されるので、スムーズに発進することができる。
【０１３７】
以下、図２７および図２８を参照しながら、前述したステップ２のＬＳＤ制御処理について説明する。本処理は、前後の車輪速度ＶＷ１〜ＶＷ４や駆動トルクＴＤなどに基づき、ＬＳＤトルクＴＬＳＤを算出するものである。両図に示すように、本処理では、まず、ステップ２０１において、前回の処理で算出したＬＳＤトルクＴＬＳＤを、その前回値ＴＬＳＤＯとして更新する。
【０１３８】
次に、ステップ２０２に進み、車両速度ＶＣＡＲに応じ、図２９に一例を示すＶＣＡＲ−ＫＶＬＳＤ１テーブルを検索することにより、テーブル値＃ＴＢＬ＿ＫＶＬＳＤ１を求め、ＴＬＳＤ１補正係数ＫＶＬＳＤ１として設定する。この車両速度ＶＣＡＲは、左右の後輪速度ＶＷ３，ＶＷ４のうちの小さい方を加速状態または減速状態に応じて補正することにより、求められる。
【０１３９】
同図に示すように、このＶＣＡＲ−ＫＶＬＳＤ１テーブルでは、テーブル値＃ＴＢＬ＿ＫＶＬＳＤ１は、車両速度ＶＣＡＲが所定値Ｘ０以下のときに所定値Ｙ０（値１．０）に、所定値Ｘ１以上のときに所定値Ｙ０より小さな所定値Ｙ１にそれぞれ設定され、所定値Ｘ０と所定値Ｘ１の間では、車両速度ＶＣＡＲが大きいほど、リニアに小さい値になるように設定されている。これは、車両速度ＶＣＡＲが大きいほど、主駆動輪である前輪Ｗ１，Ｗ２がスリップしにくくなることにより、後輪Ｗ３，Ｗ４を駆動するために要求されるトルクが小さくなることによる。
【０１４０】
次に、ステップ２０３に進み、車両速度ＶＣＡＲに応じ、上記図２９のＶＣＡＲ−ＫＶＬＳＤ１テーブルと同様のＶＣＡＲ−ＫＶＬＳＤ２テーブルを検索することにより、テーブル値＃ＴＢＬ＿ＫＶＬＳＤ２を求め、ＴＬＳＤ２補正係数ＫＶＬＳＤ２として設定する。
【０１４１】
このＶＣＡＲ−ＫＶＬＳＤ２テーブルでは、テーブル値＃ＴＢＬ＿ＫＶＬＳＤ２は、車両速度ＶＣＡＲに対して、図２９のテーブル値＃ＴＢＬ＿ＫＶＬＳＤ１と同様の傾向で、かつ異なる値に設定されている。これは、前述したように、車両速度ＶＣＡＲが大きいほど、主駆動輪である前輪Ｗ１，Ｗ２がスリップしにくくなることにより、後輪Ｗ３，Ｗ４を駆動するために要求されるトルクが小さくなることによる。
【０１４２】
次に、ステップ２０４に進み、後述するＫＸＧＦＬＳＤ算出処理を実行し、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤを算出する。
【０１４３】
次いで、ステップ２０５に進み、ＰＯＳＩ値が値２以上であるか否かを判別する。この判別結果がＹＥＳのとき、すなわちシフト位置が「１」〜「Ｄ５」，「Ｒ」のいずれかにあるときには、ステップ２０６に進み、駆動トルクフラグＦ＿ＴＤが「１」であるか否かを判別する。
【０１４４】
ステップ２０６の判別結果がＮＯのとき、すなわち加速中であるときには、ステップ２０７に進み、駆動トルクＴＤが所定値＃ＮＯＬＳＤＴＤ未満であるか否かを判別する。
【０１４５】
ステップ２０７の判別結果がＮＯのとき、すなわちＴＤ≧＃ＮＯＬＳＤＴＤのときには、図２８のステップ２０８に進み、後述するＴＬＳＤ１，ＴＬＳＤ２検索処理により、第１および第２ＬＳＤトルクＴＬＳＤ１，ＴＬＳＤ２を求める。
【０１４６】
次いで、ステップ２０９でに進み、下式（５）により、ＬＳＤトルク目標値ＴＬＳＤＭを算出する。
【０１４７】
0003699324.tif 000002
【０１４８】
次に、ステップ２１０，２１１において、上記のように求めたＬＳＤトルク目標値ＴＬＳＤＭのリミットチェック処理を行う。すなわち、ステップ２１０で、ＬＳＤトルク目標値ＴＬＳＤＭが上限値＃ＬＭＴＬＳＤよりも大きいか否かを判別し、ＴＬＳＤＭ＞＃ＬＭＴＬＳＤのときには、ステップ２１１に進み、ＬＳＤトルク目標値ＴＬＳＤＭを上限値＃ＬＭＴＬＳＤに設定する。
【０１４９】
一方、ステップ２１０で、ＴＬＳＤＭ≦＃ＬＭＴＬＳＤのときには、ステップ２１１をスキップする。
【０１５０】
以上のステップ２１０，２１１のリミットチェック処理に続き、ステップ２１２に進み、後述するＴＬＳＤ加減算処理により、ＬＳＤトルクＴＬＳＤを算出して、本処理を終了する。
【０１５１】
一方、前述したステップ２０５の判別結果がＮＯのとき、すなわち、ＰＯＳＩ＝１または０であって、シフト位置が「Ｎ」または「Ｐ」にあるとき、またはノーポジション状態にあるときには、ステップ２１３〜２１５において、前述した第１ＬＳＤトルクＴＬＳＤ１、第２ＬＳＤトルクＴＬＳＤ２およびＬＳＤトルク目標値ＴＬＳＤＭをそれぞれ値０に設定する。
【０１５２】
次いで、ステップ２１６〜２２０において、後述する偏差ＤＴＬＳＤ、第１加減算調整係数ＫＤＴＬＳＤ、第２加減算調整係数ＫＤＶＬＳＤ、ＬＳＤトルクＴＬＳＤおよび前後輪滑り比しきい値ＪＧＬＳＤをそれぞれ値０に設定して、本処理を終了する。これらの偏差、係数およびしきい値については、後述する。
【０１５３】
以下、図３０を参照しながら、前述したステップ２０４のＫＸＧＦＬＳＤ算出処理について説明する。本処理は、以下に述べるように、ＰＯＳＩ値、ＳＦＴ値およびフィルタ後車両加速度ＸＧＦ１Ｆに基づき、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤを算出するものである。すなわち、まず、ステップ２３０で、ＰＯＳＩ値が値２以上であるか否かを判別する。
【０１５４】
この判別結果がＹＥＳのとき、すなわちシフト位置が「１」〜「Ｄ５」，「Ｒ」のいずれかにあるときには、ステップ２３１に進み、ＳＦＴ値に応じ、図３１に一例を示すＸＧＦ１Ｆ−ＫＸＧＦＬＳＤｎ（ｎ＝１〜６）テーブルから１つのテーブルを選択し、ステップ２３２に進み、フィルタ後車両加速度ＸＧＦ１Ｆに応じ、選択したＸＧＦ１Ｆ−ＫＸＧＦＬＳＤｎテーブルを検索することにより、テーブル値ＫＸＧＦＬＳＤｎを求め、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤとして設定して、本処理を終了する。
【０１５５】
また、上記ステップ２３１で選択されるＸＧＦ１Ｆ−ＫＸＧＦＬＳＤｎテーブルとしては、ＳＦＴ値の値１〜６に対応して、１〜５速，Ｒギヤ位置用のものがそれぞれ用意されており、図３１は、１速ギヤ位置用のＸＧＦ１Ｆ−ＫＸＧＦＬＳＤ１テーブルを示している。同図に示すように、テーブル値＃ＴＢＬ＿ＫＸＧＦＬＳＤ１は、フィルタ後車両加速度ＸＧＦ１Ｆが所定値Ｘ０以下であるときに所定値Ｙ０に、所定値Ｘ２以上であるときに所定値Ｙ０よりも大きな所定値Ｙ２（値１．０）にそれぞれ設定され、所定値Ｘ０と所定値Ｘ２の間では、フィルタ後車両加速度ＸＧＦ１Ｆが小さいほど、小さい値に設定されている。
【０１５６】
これは、アクセル解放時などの加速が要求されていないときには、それに応じてＬＳＤトルクＴＬＳＤを小さく補正するためである。また、後述するように、ＬＳＤトルクＴＬＳＤは、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤを除けば、車輪Ｗ１〜Ｗ４の速度状態や加速度状態を表すパラメータに基づき、算出されるものであるので、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤを用いることなく、ＬＳＤトルクＴＬＳＤを算出すると、エンジン３の出力トルク、すなわち車輪Ｗ１〜Ｗ４を駆動するための前記駆動トルクＴＤのパラメータが加味されないため、車両２の加速状態から要求されるトルクに合致しなくなることがある。したがって、車両２の加速状態から要求されるトルクに合致したＬＳＤトルクＴＬＳＤを後輪Ｗ３，Ｗ４に適切に配分するため、テーブル値＃ＴＢＬ＿ＫＸＧＦＬＳＤ１は、上記のように設定されている。これにより、例えば、路面抵抗μが小さく、アクセルが踏まれていないことで、フィルタ後車両加速度ＸＧＦ１Ｆが小さくなっているときに、前後輪間の速度差により前輪Ｗ１，Ｗ２がスリップしていると判断され、車両２の加速状態から要求されるトルクよりも大きな値のＬＳＤトルクＴＬＳＤが後輪Ｗ３，Ｗ４に配分されることを防止でき、その結果、このような大きなトルクによる後輪Ｗ３，Ｗ４のスリップを防止できる。すなわち、ＬＳＤトルクＴＬＳＤを、路面抵抗μに応じてバランスよく適切に補正することができる。
【０１５７】
さらに、これらのＸＧＦ１Ｆ−ＫＸＧＦＬＳＤｎテーブルにおいては、テーブル値＃ＴＢＬ＿ＫＸＧＦＬＳＤｎは、フィルタ後車両加速度ＸＧＦ１Ｆに対して同様の傾向を示すとともに、高速ギヤ位置用のものほど、同じフィルタ後車両加速度ＸＧＦ１Ｆに対してより小さくなるよう、互いに異なる値に設定されている。すなわち、１速ギヤ位置用のテーブル値＃ＴＢＬ＿ＫＸＧＦＬＳＤ１が最も大きく設定されている。これは、ギヤ位置が低速側であるほど、出力側ギヤの慣性質量および運転者の加速要求がいずれも大きくなることで、後輪Ｗ３，Ｗ４を駆動するために大きなトルクが必要になることによる。
【０１５８】
一方、ステップ２３３の判別結果がＮＯのとき、すなわちシフト位置が「Ｎ」または「Ｐ」にあるとき、またはノーポジション状態にあるときには、ステップ２３３に進み、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤを値１に設定して、本処理を終了する。
【０１５９】
次に、図３２を参照しながら、前述したステップ２０８のＴＬＳＤ１，ＴＬＳＤ２検索処理について説明する。同図に示すように、本処理では、まず、ステップ２４０で、走行中フラグＦ＿ＶＷＳＴが「１」であるか否かを判別する。この走行中フラグＦ＿ＶＷＳＴは、前後の車輪速度ＶＷ１〜ＶＷ４がいずれも所定速度（例えば５ｋｍ／ｈ）以上であって、走行中であるときに「１」に、そうでないときに「０」にそれぞれ設定されるものである。
【０１６０】
この判別結果がＹＥＳのとき、すなわち走行中であるときには、ステップ２４１に進み、後輪左右速度比ＲＶＷ＿Ｒに応じて、図３３に一例を示すＲＶＷ＿Ｒ−ＪＧＬＳＤテーブルを検索することにより、テーブル値＃ＴＢＬ＿ＪＧＬＳＤを求め、前後輪滑り比しきい値ＪＧＬＳＤとして設定する。この後輪左右速度比ＲＶＷ＿Ｒは、左後輪速度ＶＷ３および右後輪速度ＶＷ４のうちの値の小さい方を大きい方で除算した値をパーセント換算することにより、求められる。すなわち、ＶＷ３＜ＶＷ４のときに、ＲＶＷ＿Ｒ＝（ＶＷ３／ＶＷ４）×１００（％）であり、ＶＷ３＞ＶＷ４のときに、ＲＶＷ＿Ｒ＝（ＶＷ４／ＶＷ３）×１００（％）であり、ＶＷ３＝ＶＷ４のときには、ＲＶＷ＿Ｒ＝１００（％）である。
【０１６１】
同図に示すように、ＲＶＷ＿Ｒ−ＪＧＬＳＤテーブルでは、テーブル値＃ＴＢＬ＿ＪＧＬＳＤは、後輪左右速度比ＲＶＷ＿Ｒが所定値Ｘ０以下であるときに所定値Ｙ０に、所定値Ｘ１以上であるときに所定値Ｙ０よりも大きな所定値Ｙ１にそれぞれ設定され、所定値Ｘ０と所定値Ｘ１の間では、後輪左右速度比ＲＶＷ＿Ｒが大きいほど、リニアに大きい値になるように設定されている。これは、後輪左右速度比ＲＶＷ＿Ｒが大きいほど、すなわち左右の後輪Ｗ３，Ｗ４間の速度差が大きいほど、後述するステップ２４３において求められる、後輪Ｗ３，Ｗ４に配分する第１ＬＳＤトルクの値を小さくするためである。
【０１６２】
次に、ステップ２４２に進み、上記ステップ２４１で求めた前後輪滑り比しきい値ＪＧＬＳＤが前後輪滑り比ＲＶＷ＿ＲＦよりも大きいか否かを判別する。この前後輪滑り比ＲＶＷ＿ＲＦは、平均後輪速度ＶＲＲを平均前輪速度ＶＦＲで除算した値をパーセント換算することにより、求められる（ＲＶＷ＿ＲＦ＝（ＶＲＲ／ＶＦＲ）×１００（％））。
【０１６３】
なお、本実施形態では、ステップ２４２で、後輪左右速度比ＲＶＷ＿Ｒに応じ、前後輪滑り比しきい値ＪＧＬＳＤを求めたが、これに代えて、左後輪速度ＶＷ３と右後輪速度ＶＷ４との偏差に応じ、前後輪滑り比しきい値ＪＧＬＳＤを求めるようにしてもよい。
【０１６４】
ステップ２４２の判別結果がＮＯのとき、すなわちＲＶＷ＿ＲＦ≧ＪＧＬＳＤのときには、ステップ２４３に進み、前後輪滑り比ＲＶＷ＿ＲＦと前後輪滑り比しきい値ＪＧＬＳＤとの偏差［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］に応じて、図３４に一例を示す［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］−ＴＬＳＤ１テーブルを検索することにより、テーブル値＃ＴＢＬ＿ＴＬＳＤ１を求め、第１ＬＳＤトルクＴＬＳＤ１として設定する。
【０１６５】
同図に示すように、［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］−ＴＬＳＤ１テーブルでは、テーブル値＃ＴＢＬ＿ＴＬＳＤ１は、偏差［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］が所定値Ｘ３以上であるときに所定値Ｙ３に設定され、所定値Ｘ０と所定値Ｘ３の間では、偏差［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］が小さいほど、小さい値に設定されている。これは、偏差［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］が小さいほど、すなわち左右の後輪Ｗ３，Ｗ４間の速度差が大きいほど、後輪Ｗ３，Ｗ４に配分する第１ＬＳＤトルクＴＬＳＤ１の値を小さくすることによって、タイトターンブレーキ現象を防止するためである。
【０１６６】
なお、本実施形態では、ステップ２４３で、偏差［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］に応じ、第１ＬＳＤトルクＴＬＳＤ１を求めたが、これに代えて、前後輪滑り比ＲＶＷ＿ＲＦと前後輪滑り比しきい値ＪＧＬＳＤの比（ＲＶＷ＿ＲＦ／ＪＧＬＳＤ）に応じ、第１ＬＳＤトルクＴＬＳＤ１を求めるようにしてもよい。
【０１６７】
次に、ステップ２４４に進み、平均前輪速度ＶＦＲが平均後輪速度ＶＲＲ未満であるか否かを判別する。この判別結果がＮＯのとき、すなわちＶＦＲ≧ＶＲＲのときには、ステップ２４５に進み、平均前輪加速度Ｇ０２と平均後輪加速度Ｇ０３との偏差ＤＧ０２３（＝Ｇ０２−Ｇ０３）と、この偏差ＤＧ０２３の前回値との絶対偏差｜ＤＧ０２３−ＤＧ０２３Ｏ｜が、所定しきい値＃ＤＧＴＬＳＤ２よりも大きいか否かを判別する。
【０１６８】
ステップ２４５の判別結果がＮＯのとき、すなわち｜ＤＧ０２３−ＤＧ０２３Ｏ｜≦＃ＤＧＴＬＳＤ２のときには、ステップ２４６に進み、偏差ＤＧ０２３に応じて、図３５に一例を示すＤＧ０２３−ＴＬＳＤ２テーブルを検索することにより、テーブル値＃ＴＢＬ＿ＴＬＳＤ２を求め、第２ＬＳＤトルクＴＬＳＤ２として設定して、本処理を終了する。
【０１６９】
同図に示すように、ＤＧ０２３−ＴＬＳＤ２テーブルでは、テーブル値＃ＴＢＬ＿ＴＬＳＤ２は、偏差ＤＧ０２３が所定値Ｘ３以上であるときに所定値Ｙ３に設定され、所定値Ｘ０と所定値Ｘ３の間では、偏差ＤＧ０２３が大きいほど、大きい値に設定されている。これは、偏差ＤＧ０２３が大きいほど、すなわち平均前輪加速度Ｇ０２が平均後輪加速度Ｇ０３を上回っている度合が大きいほど、後輪Ｗ３，Ｗ４に配分する第２ＬＳＤトルクＴＬＳＤ２の値を大きくすることで、前輪Ｗ１，Ｗ２のスリップ解消制御の応答性を向上させるためである。
【０１７０】
なお、本実施形態では、ステップ２４６で、偏差ＤＧ０２３に応じ、第２ＬＳＤトルクＴＬＳＤ２を求めたが、これに代えて、平均前輪加速度Ｇ０２と後輪平均速度Ｇ０３の比（Ｇ０２／Ｇ０３）に応じ、第２ＬＳＤトルクＴＬＳＤ２を求めるようにしてもよい。
【０１７１】
一方、ステップ２４０の判別結果がＮＯのとき、またはステップ２４２の判別結果がＹＥＳのときには、ステップ２４７で、第１ＬＳＤトルクＴＬＳＤ１を値０に設定して、前記ステップ２４４以降に進む。すなわち、停車中または直進中などには、第１ＬＳＤトルクＴＬＳＤ１は後輪Ｗ３，Ｗ４に配分されない。
【０１７２】
一方、ステップ２４４またはステップ２４５の判別結果がＹＥＳのときには、ステップ２４８に進み、第２ＬＳＤトルクＴＬＳＤ２を値０に設定して、本処理を終了する。すなわちＶＦＲ≧ＶＲＲであって、前輪Ｗ１，Ｗ２がスリップ状態のとき、または絶対偏差｜ＤＧ０２３−ＤＧ０２３Ｏ｜≧＃ＤＧＴＬＳＤ２であって、絶対偏差｜ＤＧ０２３−ＤＧ０２３Ｏ｜がかなり大きく、トルク段差を生じる状態のときには、第２ＬＳＤトルクＴＬＳＤ２は後輪Ｗ３，Ｗ４に配分されない。
【０１７３】
次に、前述したステップ２１２のＴＬＳＤ加減算処理について説明する。この処理では、前述したステップ２１１で求めたＬＳＤトルク目標値ＴＬＳＤＭに基づき、下式（６）により、ＬＳＤトルクＴＬＳＤが算出される。
【０１７４】
ＴＬＳＤ＝ＴＬＳＤＯ＋ＫＤＴＬＳＤ×ＫＶＴＬＳＤ×ＤＴＬＳＤ……（６）
【０１７５】
ここで、ＤＴＬＳＤは、ＬＳＤトルク目標値ＴＬＳＤＭと、ＬＳＤトルクＴＬＳＤの前回値ＴＬＳＤＯとの偏差（＝ＴＬＳＤＭ−ＴＬＳＤＯ）を示しており、ＴＬＳＤＭ＞ＴＬＳＤＯのときに正値に、ＴＬＳＤＭ＜ＴＬＳＤＯのときに負値に、ＴＬＳＤＭ＝ＴＬＳＤＯのときに値０になる。これにより、上記式（６）では、ＴＬＳＤＭ≠ＴＬＳＤＯのときに、偏差ＤＴＬＳＤに応じて、前回値ＴＬＳＤＯに対して右辺の第２項ＫＤＴＬＳＤ×ＫＶＴＬＳＤ×ＤＴＬＳＤが加算または減算される。
【０１７６】
さらに、上記式（６）の前記第１加減算調整係数ＫＤＴＬＳＤは、偏差ＤＴＬＳＤに応じ、図３６に一例を示すＤＴＬＳＤ−ＫＤＴＬＳＤテーブルを検索して求めたテーブル値＃ＴＢＬ＿ＫＤＬＳＤに設定される。同図に示すように、テーブル値＃ＴＢＬ＿ＫＤＴＬＳＤは、偏差ＤＴＬＳＤが所定値Ｘ０以下であるときに所定値Ｙ０（値１．０）に、所定値Ｘ１以上であるときに所定値Ｘ０よりも小さな所定値Ｙ１にそれぞれ設定され、所定値Ｘ０と所定値Ｘ１の間では、偏差ＤＴＬＳＤが大きいほど、リニアに小さい値になるように設定されている。これは、偏差ＤＴＬＳＤが大きいほど、トルク段差が大きくなるので、それを防止するためである。
【０１７７】
また、ＤＴＬＳＤ−ＫＤＴＬＳＤテーブルは、偏差ＤＴＬＳＤの正負に応じて、２種類のものが用意されており、これらのＤＴＬＳＤ−ＫＤＴＬＳＤテーブルテーブルでは、テーブル値＃ＴＢＬ＿ＫＤＬＳＤは、同様の傾向で、かつ異なる値に設定されている。
【０１７８】
さらに、上記式（６）の前記第２加減算調整係数ＫＶＴＬＳＤは、車両速度ＶＣＡＲに応じ、図３７に一例を示すＶＣＡＲ−ＫＶＴＬＳＤテーブルを検索して求めたテーブル値＃ＴＢＬ＿ＫＶＬＳＤに設定される。同図に示すように、テーブル値＃ＴＢＬ＿ＫＤＴＬＳＤは、車両速度ＶＣＡＲが所定値Ｘ０以下であるときに所定値Ｙ０（値１．０）に、所定値Ｘ１以上であるときに所定値Ｘ０よりも小さな所定値Ｙ１にそれぞれ設定され、所定値Ｘ０と所定値Ｘ１の間では、車両速度ＶＣＡＲが大きいほど、リニアに小さい値になるように設定されている。これは、車両速度ＶＣＡＲが大きいほど、トルク段差が大きくなるので、それを防止するためである。
【０１７９】
以上のような本実施形態の駆動力制御装置によれば、ＬＳＤトルクＴＬＳＤは、第１ＬＳＤトルクＴＬＳＤ１、第２ＬＳＤトルクＴＬＳＤ２および加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤに基づき、算出される。これらのうちの第１ＬＳＤトルクＴＬＳＤ１の算出では、車輪速度センサ２５が検出した車輪速度ＶＷ１〜ＶＷ４に基づき、偏差［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］が求められるとともに、偏差［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］が小さいほど、すなわち左右の後輪Ｗ３，Ｗ４間の速度差が大きいほど、第１ＬＳＤトルクがより小さい値として算出される。これにより、車両２が舗装路面などの摩擦抵抗の高い路面上を比較的、低速で旋回している際に、タイトターンブレーキ力が車両２に作用したときでも、後輪Ｗ３，Ｗ４の一方がブレーキ力により回転せず、かつ他方が電磁クラッチを滑らせながら回転するように、左右の電磁クラッチ１０，１０の締結力を設定することができ、それにより、タイトターンブレーキ現象を防止することができる。その結果、従来のような操舵角センサ、ヨーレートセンサおよび横加速度センサなどのセンサを省略し、車輪速度センサ２５だけを用いて、上記のような効果を達成することができ、それにより、コストを削減することができる。
【０１８０】
また、第２ＬＳＤトルクＴＬＳＤ２の算出では、偏差ＤＧ０２３が大きいほど、すなわち平均前輪加速度Ｇ０２が平均後輪加速度Ｇ０３を上回っている度合が大きくなって、前輪Ｗ１，Ｗ２のスリップ量が大きくなるほど、後輪Ｗ３，Ｗ４に配分する第２ＬＳＤトルクＴＬＳＤ２の値が大きく設定される。すなわち、前輪Ｗ１，Ｗ２のスリップ解消制御を、そのスリップ状態をよりリアルタイムに表す平均前輪加速度Ｇ０２と平均後輪加速度Ｇ０３の偏差ＤＧ０２３に応じて実行することができるので、主駆動輪と副駆動輪間の速度差が発生した後にスリップ解消制御を開始する従来の場合よりも、スリップ解消制御の応答性を向上させることができる。
【０１８１】
さらに、第１および第２ＬＳＤトルクＴＬＳＤ１，ＴＬＳＤ２にそれぞれ乗算されるＴＬＳＤ１補正係数ＫＶＬＳＤ１およびＴＬＳＤ２補正係数ＫＶＬＳＤ２は、所定値Ｘ０と所定値Ｘ１の間では、車両速度ＶＣＡＲが大きいほど、リニアに小さい値になるように設定されているので、車両速度ＶＣＡＲが大きいほど、後輪Ｗ３，Ｗ４に配分されるトルクが小さくなるように制御される。一般的に、四輪駆動車両２では、車両速度ＶＣＡＲが大きくなるほど、前輪Ｗ１，Ｗ２がスリップしにくくなるので、後輪Ｗ３，Ｗ４を駆動するために要求されるトルクが小さくなる。したがって、上記のように制御することにより、後輪Ｗ３，Ｗ４を駆動するために要求されるトルクが小さくなるのに応じて、前輪駆動状態に近づけることができる。その結果、電磁クラッチ１０，１０を含めた駆動系を小型化できるとともに、車両速度ＶＣＡＲが大きいほど、２輪駆動状態に近づくことで、その分、駆動系の回転抵抗を小さくすることができ、それにより、燃費を向上させることができる。
【０１８２】
また、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤは、フィルタ後車両加速度ＸＧＦ１Ｆが所定値Ｘ０と所定値Ｘ２の間にあるときには、フィルタ後車両加速度ＸＧＦ１Ｆが小さいほど、小さい値に設定されるとともに、低速ギヤ位置用のものほど、同じフィルタ後車両加速度ＸＧＦ１Ｆに対してより大きくなるように設定される。これにより、アクセル解放時などの加速が要求されていないときには、それに応じてＬＳＤトルクＴＬＳＤを小さく補正することができるとともに、ギヤ位置が低速側であるほど、すなわち出力側ギヤの慣性質量および運転者の加速要求がいずれも大きくなることで、後輪Ｗ３，Ｗ４を駆動するために大きなトルクが必要になるほど、それに応じてＬＳＤトルクＴＬＳＤを大きく補正することができる。また、駆動トルクＴＤから求められるフィルタ後車両加速度ＸＧＦ１Ｆに応じて、加速度ＬＳＤ補正係数ＫＸＧＦＬＳＤが求められるので、ＬＳＤトルクＴＬＳＤを、車両２の加速状態から要求されるトルクに合致した適切な値として得ることができる。これにより、例えば前後輪間の速度差により求める場合と異なり、車両２の加速状態から要求されるトルクよりも大きな値になるのを防止でき、その結果、前述したような路面抵抗μが小さいときの後輪Ｗ３，Ｗ４のスリップを防止できる。
【０１８３】
以下、図３８および図３９を参照しながら、前述したステップ３のロックモード制御処理について、説明する。両図は、このロックモード制御処理のメインルーチンを示すフローチャートである。本処理は、所定時間ごとに実行される。
【０１８４】
このロックモード制御処理では、まず、フェイル確定フラグＦ＿ＥＲＲ１が「１」であるか否かを判別する（ステップ３２１）。この判別結果がＹＥＳ、すなわち制御系のフェイルがすでに確定しているときには、ロックモードは実行せず、ステップ３２２〜３２９に進み、後述するロックモード解除タイマＴＭＬＯＣＫ、ロックカウンタＣＮＴ＿ＬＯＣＫ、ロックモード実行スイッチ条件成立フラグＦ＿ＬＯＣＫＭ１、ロックモード解除スイッチ条件成立フラグＦ＿ＬＯＣＫＭ２、ロックモードフラグＦ＿ＬＯＣＫＴ、ロックモード用伝達トルクの基本値ＬＯＣＫＴ、節電係数ＫＬＯＣＫ、およびロックモード用伝達トルクＬＯＣＫＤを、それぞれ「０」にセットし、本処理を終了する。
【０１８５】
前記ステップ３２１の判別結果がＮＯのときには、シフト位置センサ２１で検出されたＰＯＳＩ値の値が０であるか否かを判別し（ステップ３３０）、この判別結果がＹＥＳ、すなわちシフト位置がノーポシション状態であるときには、前記ステップ３２２以降に進む。ステップ３３０の判別結果がＮＯのときには、ＰＯＳＩ値の値が２、３または４、すなわちシフト位置が「Ｒ」「１」または「２」であるか否かを判別する（ステップ３３１）。
【０１８６】
このステップ３３１の判別結果がＹＥＳ、すなわちシフト位置が「Ｒ」「１」または「２」のいずれかであるときには、ロックモード解除タイマＴＭＬＯＣＫを「０」にリセットする（ステップ３３２）。次いで、エンジン回転数ＮＥがヒステリシス付きの所定回転数＃ＬＯＣＫＮＥＬ／Ｈ（例えば３００，５００ｒｐｍ）よりも大きいか否かを判別する（ステップ３３３）。この判別結果がＮＯ、すなわちＮＥ≦＃ＬＯＣＫＮＥＬ／Ｈのときには、エンジン３が実質、停止状態にあるとして、ロックモードは実行せず、前記ステップ３２３以降を実行し、本処理を終了する。
【０１８７】
前記ステップ３３３の判別結果がＹＥＳ、すなわちＮＥ＞＃ＬＯＣＫＮＥＬ／Ｈのときには、ロックモードフラグＦ＿ＬＯＣＫＴが「１」であるか否かを判別する（ステップ３３４）。今回のループがロックモードの実行条件外からのループである場合には、Ｆ＿ＬＯＣＫＴ値が前記ステップ３２６で「０」にセットされていることで、ステップ３３４の判別結果がＮＯになるので、次にステップ３３５に進み、４つのフィルタ後車輪速度ＦＶＷ１〜ＦＶＷ４がすべて、車両２の所定の低車速状態を表す所定速度＃ＦＶＷＲＥＦ（例えば５ｋｍ／ｈ）以下であるか否かを判別する。これらのフィルタ後車輪速度ＦＶＷ１〜ＦＶＷ４は、車輪速度センサ２５で検出された車輪速度ＶＷ１〜ＶＷ４に所定のフィルタ処理を加えたものである。このステップ３３５の判別結果がＮＯ、すなわちＦＶＷ１〜ＦＶＷ４の少なくとも１つが所定速度＃ＦＶＷＲＥＦを超えているときには、車両２が走行中であるため、ロックモードは不要であるとして、これを実行せず、前記ステップ３２３以降を実行し、本処理を終了する。
【０１８８】
前記ステップ３３５の判別結果がＹＥＳ、すなわちＦＶＷ１〜ＦＶＷ４≦＃ＦＶＷＲＥＦのときには、ロックモード実行のための車両２側の条件が成立したとして、図３９のステップ３３６以降において、ロックスイッチ２６側の条件を判定する。これは、前述したように、ロックスイッチ２６がモーメンタリースイッチで構成されていることから、入力されたロックスイッチ信号ＬＯＣＫＳＷがロックモードの実行または解除のいずれのために操作されたものであるかを識別する必要があるとともに、スイッチ操作によるロックモード制御のチャタリングが生じないようにするためである。
【０１８９】
まずステップ３３６では、ロックモード実行スイッチ条件成立フラグＦ＿ＬＯＣＫＭ１が「１」であるか否かを判別する。今回のループがロックモードの実行条件外からのループである場合には、Ｆ＿ＬＯＣＫＭ１値が前記ステップ３２４で「０」にセットされていることで、ステップ３３６の判別結果がＮＯになるので、次にステップ３３７に進み、ロックスイッチフラグＦ＿ＬＯＣＫＳＷが「１」であるか否かを判別する。この判別結果がＮＯ、すなわちロックスイッチ２６が押されていないときには、チャタリング防止用のロックカウンタＣＮＴ＿ＬＯＣＫの値が４以上であるか否かを判別する（ステップ３３８）。この判別結果がＮＯのときには、ロックカウンタＣＮＴ＿ＬＯＣＫの値をインクリメントする（ステップ３３９）。
【０１９０】
一方、ステップ３３８の判別結果がＹＥＳ、すなわちＣＮＴ＿ＬＯＣＫ≧４になり、ロックモード実行のための車両２側の条件成立状態が、４回以上連続して確認されたときには、ロックモード実行のためのロックスイッチ信号ＬＯＣＫＳＷの受付条件が成立したとして、ロックカウンタＣＮＴ＿ＬＯＣＫを「０」にリセットする（ステップ３４０）とともに、そのことを表すためにロックモード実行スイッチ条件成立フラグＦ＿ＬＯＣＫＭ１を「１」にセットする（ステップ３４１）。
【０１９１】
一方、前記ステップ３３７の判別結果がＹＥＳ、すなわちロックスイッチ信号ＬＯＣＫＳＷの受付条件が成立しないうちにロックスイッチ２６が押されたときには、このロックスイッチ信号ＬＯＣＫＳＷを無視し、ロックカウンタＣＮＴ＿ＬＯＣＫを「０」にリセットする（ステップ３４２）。このステップ３４２、前記ステップ３３９またはステップ３４１の実行後は、前記ステップ３２５以降に進み、本処理を終了する。
【０１９２】
前記ステップ３４１を実行した後、すなわちロックモード実行のためのロックスイッチ信号ＬＯＣＫＳＷの受付条件が成立した後には、前記ステップ３３６の判別結果がＹＥＳとなるので、次にステップ３４３に進み、ロックスイッチフラグＦ＿ＬＯＣＫＳＷが「１」であるか否かを再び判別する。この判別結果がＮＯ、すなわちロックスイッチ２６が押されていないときには、前記ステップ３２５以降に進む。一方、このステップ３４３の判別結果がＹＥＳ、すなわちロックスイッチ２６が押されたときには、ロックカウンタＣＮＴ＿ＬＯＣＫの値が４以上であるか否かを再び判別し（ステップ３４４）、この判別結果がＮＯのときには、ロックカウンタＣＮＴ＿ＬＯＣＫの値をインクリメントした（ステップ３４５）後、前記ステップ３２５以降に進む。
【０１９３】
一方、前記ステップ３４４の判別結果がＹＥＳ、すなわちＣＮＴ＿ＬＯＣＫ≧４になり、ロックスイッチ信号ＬＯＣＫＳＷの入力状態が、４回以上連続して確認されたときには、ロックモードの実行条件が最終的に成立したとして、ロックカウンタＣＮＴ＿ＬＯＣＫを「０」にリセットし（ステップ３４６）、ロックモード実行スイッチ条件成立フラグＦ＿ＬＯＣＫＭ１を「０」にセットする（ステップ３４７）とともに、ロックモード解除スイッチ条件成立フラグＦ＿ＬＯＣＫＭ２およびロックモードフラグＦ＿ＬＯＣＫＴを、それぞれ「１」にセットする（ステップ３４８，３４９）。次いで、ロックモード用伝達トルクＬＯＣＫＤを算出し（ステップ３５０）、ロックモードを実行する。これについては後述する。また、ロックモードの実行に伴い、ロックスイッチが点灯し、ロックモード中であることが運転者に知らされる。
【０１９４】
上記のようにロックモードに移行した後は、ＰＯＳＩ値やエンジン回転数ＮＥなどの前述した条件が維持されている限り、前記ステップ３３４を通るとともに、その判別結果がＹＥＳになるので、次にステップ３５１に進み、ロックモード中のロックスイッチ操作処理を実行する。図４０は、そのサブルーチンを示している。この処理ではまず、ロックモード解除スイッチ条件成立フラグＦ＿ＬＯＣＫＭ２が「１」であるか否かを判別する（ステップ３６１）。ロックモードへの移行直後は、この判別結果がＹＥＳになるので、次にステップ３６２に進み、ロックスイッチフラグＦ＿ＬＯＣＫＳＷが「１」であるか否かを判別する。この判別結果がＹＥＳのときには、ロックモードへの移行後にロックスイッチ２６が引き続き押されている状態であるとして、ロックカウンタＣＮＴ＿ＬＯＣＫを「０」にリセットし（ステップ３６３）、本処理を終了する。
【０１９５】
前記ステップ３６２の判別結果がＮＯ、すなわちロックモードへの移行後、ロックスイッチ２６の操作が終了したときには、前記ステップ３３８、３３９と同様、ロックカウンタＣＮＴ＿ＬＯＣＫの値が４以上であるか否かを判別し（ステップ３６４）、この判別結果がＮＯのときには、ロックカウンタＣＮＴ＿ＬＯＣＫの値をインクリメントし（ステップ３６５）、本処理を終了する。一方、ステップ３６４の判別結果がＹＥＳ、すなわちロックスイッチ２６の操作終了状態が、４回以上連続して確認されたときには、ロックモード解除のためのロックスイッチ信号ＬＯＣＫＳＷの受付条件が成立したとして、ロックカウンタＣＮＴ＿ＬＯＣＫを「０」にリセットする（ステップ３６６）とともに、そのことを表すためにロックモード解除スイッチ条件成立フラグＦ＿ＬＯＣＫＭ２を「０」にセットし（ステップ３６７）、本処理を終了する。
【０１９６】
このステップ３６７の実行後は、前記ステップ３６１の判別結果がＮＯとなるので、次にステップ３６８に進み、ロックスイッチフラグＦ＿ＬＯＣＫＳＷが「１」であるか否かを再び判別する。この判別結果がＮＯ、すなわちロックモード中にロックスイッチ２６の操作がないときには、そのまま本処理を終了する。一方、前記ステップ３６８の判別結果がＹＥＳ、すなわちロックモード中にロックスイッチ２６が押されたときには、ロックカウンタＣＮＴ＿ＬＯＣＫの値が４以上であるか否かを再び判別する（ステップ３６９）。この判別結果がＮＯのときには、ロックカウンタＣＮＴ＿ＬＯＣＫの値をインクリメントする（ステップ３７０）。一方、ステップ３６９の判別結果がＹＥＳ、すなわちロックスイッチ信号ＬＯＣＫＳＷの入力状態が、４回以上連続して確認されたときには、ロックモードを解除すべきとして、ロックカウンタＣＮＴ＿ＬＯＣＫを「０」にリセットする（ステップ３７１）とともに、ロックモードフラグＦ＿ＬＯＣＫＴを「０」にセットし（ステップ３７２）、本処理を終了する。これにより、ロックモードが解除される。
【０１９７】
図４１は、これまでに述べたロックスイッチ２６の操作状況とロックモードの実行・解除との関係の一例を示すタイムチャートである。シフト位置が時刻ｔ０で「Ｄ５」から「Ｒ」に切り換えられ、その後はロックモード実行のための車両２側の条件が継続して満たされているとすると、まず、図３９のステップ３４１の実行により、ロックモード実行スイッチ条件成立フラグＦ＿ＬＯＣＫＭ１が「１」になり（時刻ｔ１）、ロックモード実行の受付状態になる。この状態でロックスイッチ２６が押されると（時刻ｔ２）、ステップ３４３がＹＥＳとなり、ロックカウンタＣＮＴ＿ＬＯＣＫのカウント時間の経過後（時刻ｔ３）、ステップ３４７〜３４９の実行により、Ｆ＿ＬＯＣＫＭ１値が「０」になるとともに、ロックモード解除スイッチ条件成立フラグＦ＿ＬＯＣＫＭ２およびロックモードフラグＦ＿ＬＯＣＫＴがそれぞれ「１」になり、ロックモードに移行する。
【０１９８】
その後、ロックスイッチ２６の操作が終了すると（時刻ｔ４）、ロックカウンタＣＮＴ＿ＬＯＣＫのカウント時間の経過後（時刻ｔ５）、図４０のステップ３６７の実行により、Ｆ＿ＬＯＣＫＭ２値が再び「０」になり、ロックモード解除の受付状態になる。この状態でロックスイッチ２６が再び押されると（時刻ｔ６）、ステップ３６８がＹＥＳとなり、ロックカウンタＣＮＴ＿ＬＯＣＫのカウント時間の経過後（時刻ｔ７）、ステップ３７２の実行により、ロックモードフラグＦ＿ＬＯＣＫＴが「０」になり、ロックモードが解除される。以上のような制御により、モーメンタリースイッチで構成したロックスイッチ２６からのロックスイッチ信号ＬＯＣＫＳＷに応じて、ロックモードの実行または解除を適切に行えるとともに、ロックカウンタＣＮＴ＿ＬＯＣＫによって、ロックモード制御のチャタリングを回避することができる。
【０１９９】
図３８に戻り、前記ステップ３３１の判別結果がＮＯ、すなわちシフト位置が「Ｄ５」「Ｄ４」「３」「Ｎ」または「Ｐ」のいずれかであるときには、ロックモードフラグＦ＿ＬＯＣＫＴが「１」であるか否かを判別する（ステップ３５２）。この判別結果がＮＯ、すなわちロックモード中でないときには、前記ステップ３２２以降に進み、本処理を終了する。このように、シフト位置が「Ｒ」「１」および「２」以外であるときには、ロックスイッチ２６の操作状況にかかわらず、ロックモードは原則として実行されない。これは、ロックモードによる大きな後輪駆動力を必要とするスタック脱出時などには、運転者はシフトレバーを「Ｒ」「１」または「２」に操作するのが通常だからである。したがって、このような制御により、不要なロックモードの実行を回避することができる。
【０２００】
一方、前記ステップ３５２の判別結果がＹＥＳ、すなわちロックモード中にシフトレバーが「Ｒ」「１」および「２」以外のシフト位置に切り換えられたときには、ロックモード解除タイマＴＭＬＯＣＫの値がその所定値＃ＴＭＬＯＣＫＡＴ（例えば３秒相当）以上であるか否かを判別する（ステップ３５３）。この判別結果がＮＯ、すなわちＴＭＬＯＣＫ＜＃ＴＭＬＯＣＫＡＴのときには、ロックモード解除タイマＴＭＬＯＣＫの値をインクリメントした（ステップ３５４）後、前記ステップ３３３に進む。一方、前記ステップ３５３の判別結果がＹＥＳ、すなわちＴＭＬＯＣＫ≧＃ＴＭＬＯＣＫＡＴのときには、前記ステップ３２２以降に進み、ロックモードを解除する。
【０２０１】
以上のように、ロックモード中にシフトレバーが「Ｒ」「１」および「２」以外のシフト位置にシフトされたときには、ロックスイッチ２６の操作状況にかかわらず、ロックモードが自動的に解除される。これにより、ロックモードを早期に解除でき、その実行期間を短縮することができる。また、このロックモードの解除を、ロックモード解除タイマＴＭＬＯＣＫによる計時時間の経過後に行うので、スタック脱出用のシフトレバーのクイック操作が行われた場合に、その途中でシフトレバーが「Ｒ」「１」および「２」以外のシフト位置を通っても、ロックモードは解除されず、それによる大きな後輪駆動力を維持できることで、クイック操作によるスタック脱出を支障なく行うことができる。
【０２０２】
図４２は、これまでに述べた車両２の運転状態およびロックスイッチ２６の操作状況とロックモードの実行・解除との関係の一例を示すタイムチャートである。まず、シフト位置が「Ｄ５」の状態で車両２が減速されているとすると、この状態では、たとえロックスイッチ２６が押されたとしても（時刻ｔ１０）、図３８のステップ３３１およびステップ３５２がＮＯとなることで、ロックモードは実行されない。その後、車両２が停止し、シフト位置を「Ｒ」にした（時刻ｔ１１）後に、ロックスイッチ２６が押されると（時刻ｔ１２）、前述した条件の下、図３９のステップ３４３がＹＥＳとなることで、ロックモードが実行される。
【０２０３】
その後、発進および再停止した後の発進時に、車両２がスタックし、ロックモード状態でシフトレバーのクイック操作が行われた場合には（ｔ１３〜ｔ１４の期間）、この期間中、ロックモード解除タイマＴＭＬＯＣＫの値が所定値＃ＴＭＬＯＣＫＡＴに達しない（図３８のステップ３５３：ＮＯ）ことで、ロックモードが維持され、スタック脱出を確実に行うことができる。また、クイック操作が終了した（ｔ１５）後は、タイマＴＭＬＯＣＫの値が所定値＃ＴＭＬＯＣＫＡＴに達した時点（時刻ｔ１６）で、ステップ３５３の判別結果がＹＥＳになることで、ロックモードが自動的に解除される。
【０２０４】
次に、図４３を参照しながら、図３９のステップ３５０で実行されるロックモード用伝達トルクＬＯＣＫＤの算出処理について説明する。まず、ステップ３８１において、車両速度ＶＣＡＲに応じ、図４４に一例を示すＶＣＡＲ−ＬＯＣＫＴテーブルを検索することによって、テーブル値＃ＴＢＬ＿ＬＯＣＫを求め、ロックモード用伝達トルクの基本値ＬＯＣＫＴとして設定する。なお、この車両速度ＶＣＡＲは、リヤ側の左右のフィルタ後車輪速度ＦＶＷ３、ＦＶＷ４のうちの小さい方の値として求められる。
【０２０５】
このテーブルでは、テーブル値＃ＴＢＬ＿ＬＯＣＫは、車両速度ＶＣＡＲが所定速度Ｘ０（例えば１０ｋｍ／ｈ）以下のときに最大の所定値Ｙ０（最大伝達トルク）に、所定速度Ｘ１（例えば３０ｋｍ／ｈ）以上のときに最小の所定値Ｙ１（例えば値０）にそれぞれ設定され、所定速度Ｘ０，Ｘ１の間では、車両速度ＶＣＡＲが大きいほど、小さな値になるようにリニアに設定されている。このような基本値ＬＯＣＫＴの設定により、車両速度ＶＣＡＲが小さいときに最大のロックモード用伝達トルクＬＯＣＫＤを確保できるとともに、車両速度ＶＣＡＲが増大するのに伴い、ロックモード用伝達トルクＬＯＣＫＤが漸減し、最終的に値０になるので、後輪Ｗ３，Ｗ４へ駆動力を伝達する必要の度合に応じて、電磁クラッチ１０を効率良く作動させることができる。
【０２０６】
次に、駆動トルクフラグＦ＿ＴＤが「１」であるか否かを判別する（ステップ３８２）。この判別結果がＮＯ、すなわちＦ＿ＴＤ＝０であって、加速中のときには、駆動トルクＴＤに応じ、図４５に一例を示すＴＤ−ＫＬＯＣＫテーブルを検索することによって、テーブル値＃ＴＢＬ＿ＫＬＯＣＫを求め、節電係数ＫＬＯＣＫとして設定する。このテーブルでは、テーブル値＃ＴＢＬ＿ＫＬＯＣＫは、駆動トルクＴＤが所定トルクＸ０（例えば０）以下のときに値１．０未満の所定値Ｙ０に、所定トルクＸ１以上のときに所定値Ｙ１（例えば＝１．０）にそれぞれ設定され、所定トルクＸ０，Ｘ１の間では、駆動トルクＴＤが大きいほど、大きな値になるようにリニアに設定されている。
【０２０７】
一方、前記ステップ３８２の判別結果がＹＥＳ、すなわちＦ＿ＴＤ＝１であって、減速中または停車中のときには、上記所定トルクＸ０に対応するテーブル値＃ＴＢＬ＿ＫＬＯＣＫを求め、節電係数ＫＬＯＣＫとして設定する。すなわち、減速中または停車中のときは、節電係数ＫＬＯＣＫは、最小の所定値Ｙ０に設定される。
【０２０８】
次いで、前記ステップ３８３または３８４で設定した節電係数ＫＬＯＣＫを、前記ステップ３８１で求めた基本値ＬＯＣＫＴに乗算することによって、ロックモード用伝達トルクＬＯＣＫＤを算出し（ステップ３８５）、本処理を終了する。
【０２０９】
以上のようなロックモード制御処理によれば、加速中で、駆動トルクＴＤが所定トルクＸ１以上のときには、ロックモード用伝達トルクＬＯＣＫＤは、節電係数ＫＬＯＣＫが値１．０に設定されることによって、ロックモード中の最大伝達トルク（＝ＬＯＣＫＴ×ＫＬＯＣＫ＝ＬＯＣＫＴ）に設定される。このとき、電磁クラッチ１０の締結力が、この最大伝達トルクに対応する所定の最大締結力に制御される。また、加速中であって、駆動トルクＴＤが所定トルクＸ１未満のときには、節電係数ＫＬＯＣＫが上述のように設定されることで、ロックモード用伝達トルクＬＯＣＫＤは、最大伝達トルクよりも小さく制限され、駆動トルクＴＤが小さいほど、より小さな値に設定される。例えば、渋滞走行時などにアクセルをほとんど踏まない状態では、加速度が小さく、駆動トルクＴＤが非常に小さいことで、ロックモード用伝達トルクＬＯＣＫＤは大きく低減される。また、減速中には、節電係数ＫＬＯＣＫが最小値Ｙ０に設定されることによって、ロックモード用伝達トルクＬＯＣＫＤもまた、最小値に設定される。
【０２１０】
ロックモード用伝達トルクＬＯＣＫＤが以上のように設定される結果、それに基づいて制御される電磁クラッチ１０の締結力を、エンジン３から主駆動輪Ｗ１、Ｗ２に出力されている実際の駆動トルクＴＤに応じて、それが小さいほど、より小さな締結力になるように適切に制限できる。これにより、電磁クラッチ１０をロックモードにおいて無駄なく効率的に作動させることができ、電磁クラッチの締結力を一定の最大値にしてロックモードを行っていた従来と比較して、消費電力を大幅に削減でき、節電を図ることができる。
【０２１１】
以下、図４６を参照しながら、前述した図２のステップ４の総目標トルク算出処理について、説明する。本処理では、まず、ステップ４００〜４０２で、制御系にフェイルが発生しているか否かを判別する。
【０２１２】
具体的には、前記フェイル確定フラグＦ＿ＥＲＲ１、前記イニシャルフラグＦ＿ＩＧＤＬＹ２およびフェイルセーフ電源リレーフラグＦ＿ＦＳＲ１ＳＴがそれぞれ「１」であるか否かを判別する。このフェイルセーフ電源リレーフラグＦ＿ＦＳＲ１ＳＴは、イグニッションがＯＮされた以降の所定時点で電源リレーがＯＮ状態であるときに「１」に、ＯＦＦ状態であるときに「０」にそれぞれセットされるものである。
【０２１３】
上記ステップ４００の判別結果がＹＥＳ、ステップ４０１，４０２の判別結果がＮＯのいずれかであるときには、制御系にフェイルが発生しており、本処理の実行条件が成立していないとして、ステップ４０９，４１０に進み、左右の目標伝達トルクＭＤＴＬ，ＭＤＴＲを値０に設定して、本処理を終了する。
【０２１４】
一方、ステップ４００〜４０２で、制御系にフェイルが発生していないと判別されたときには、本処理の実行条件が成立しているとして、ステップ４０３に進み、前記ＶＡＴＣトルク最終前目標値ＴＯＢＪと、前記ＬＳＤトルクＴＬＳＤとの和［ＴＯＢＪ＋ＴＬＳＤ］を、右目標伝達トルクＭＤＴＲとして設定する。この和［ＴＯＢＪ＋ＴＬＳＤ］は、前述した自動モードのＶＡＴＣ制御処理およびＬＳＤ制御処理でそれぞれ算出したＶＡＴＣトルク最終前目標値ＴＯＢＪおよびＬＳＤトルクＴＬＳＤの和であるので、以下、自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］（自動モード用締結力）という。
【０２１５】
次に、ステップ４０４に進み、右目標伝達トルクＭＤＴＲが、前述したロックモード制御処理で算出したロックモード用伝達トルクＬＯＣＫＤよりも大きいか否かを判別する。ロックモード中でないときには、ＬＯＣＫＤ＝０であるので、この判別結果がＹＥＳとなり、ステップ４０５をスキップして、ステップ４０６以降に進む。
【０２１６】
一方、ロックモード中において、算出されたロックモード用伝達トルクＬＯＣＫＤが右目標伝達トルクＭＤＴＲ以上であるとき、すなわちステップ４０４の判別結果がＮＯであるときには、右目標伝達トルクＭＤＴＲがロックモード用伝達トルクＬＯＣＫＤに設定される（ステップ４０５）。
【０２１７】
一方、ロックモード中でも、ロックモード用伝達トルクＬＯＣＫＤが右目標伝達トルクＭＤＴＲより小さいときには、このステップ４０４の判別結果がＹＥＳになることで、右目標伝達トルクＭＤＴＲが自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］に設定される。ロックモードは、スタック時などの最大伝達トルクが必要とされるときに通常、実行されるので、ステップ４０４の判別結果は通常、ＮＯになるけれども、前述したように、ロックモード中でも、車両速度ＶＣＡＲが大きくなるのに伴って、または駆動トルクＴＤが小さくなるのに伴って、ロックモード用伝達トルクＬＯＣＫＤが最大伝達トルクよりも小さく制限されることがあり、そのときには、ステップ４０４の判別結果がＹＥＳとなる。
【０２１８】
次に、ステップ４０６〜４０８で、上記と同様に、左目標伝達トルクＭＤＴＬを決定して、本処理を終了する。以上のように、この総目標トルク算出処理では、ロックモード時には、左右の目標伝達トルクＭＤＴＬ，ＭＤＴＲは、ロックモード用伝達トルクＬＯＣＫＤが自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］以上であるときに、ロックモード用伝達トルクＬＯＣＫＤに設定され、小さいときには、自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］に設定される。また、左右の目標伝達トルクＭＤＴＬ，ＭＤＴＲは互いに同じ値に設定されるとともに、これらの左右の目標伝達トルクＭＤＴＬ，ＭＤＴＲに応じた駆動電流が左右の電磁クラッチ１０，１０に供給される。
【０２１９】
以上のように、本実施形態の駆動力制御装置１によれば、エンジン３の吸気管内絶対圧ＰＢＡおよびエンジン回転数ＮＥなどに応じて算出した駆動トルクＴＤに基づき、自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］が算出される。さらに、ロックモード実行条件が成立しているときに、ロックモード用伝達トルクＬＯＣＫＤは最大伝達トルクに設定され、これに応じて、電磁クラッチ１０が前輪Ｗ１，Ｗ２と後輪Ｗ３，Ｗ４との間をロック可能な所定の最大締結力で制御される。これにより、ロックモード中に、運転者の意図に沿って前輪Ｗ１，Ｗ２と後輪Ｗ３，Ｗ４との間をロックすることができる。
【０２２０】
また、ロックモード用伝達トルクＬＯＣＫＤは、所定速度Ｘ０，Ｘ１の間では、車両速度ＶＣＡＲが高いほど、すなわち前輪Ｗ１，Ｗ２がスリップしにくくなるほど、最大伝達トルクより小さくなるように制限される。また、所定トルクＸ０，Ｘ１の間では、駆動トルクＴＤが小さいほど、すなわち制動時やアクセルをほとんど踏まない渋滞走行時のように、トルクを後輪Ｗ３，Ｗ４に伝達する必要が低いほど、最大伝達トルクより小さくなるように制限される。これにより、電磁クラッチ１０の締結力を最大締結力に制御する時間を最小限にすることができ、電磁クラッチ１０を駆動するための消費電力を削減でき、電磁クラッチ１０を効率よく作動させることができる。その結果、電磁クラッチ１０や駆動系を小型化することができるとともに、燃費を向上させることができる。
【０２２１】
さらに、自動モード用伝達トルク［ＴＯＢＪ＋ＴＬＳＤ］は、これがロックモード用伝達トルクＬＯＣＫＤ以上であるときに、左右の目標伝達トルクＭＤＴＬ，ＭＤＴＲ、すなわち電磁クラッチ１０，１０の締結力として設定される。これにより、運転者の意図に可能な限り沿うとともに、車両２が実際に必要としているトルクを、後輪Ｗ３，Ｗ４に伝達（配分）することができ、ロックモード中に、電磁クラッチ１０の締結力を運転状態に応じて過不足なく適切に制御することができる。
【０２２２】
なお、本発明は、説明した実施形態に限定されることなく、種々の態様で実施することができる。例えば、実施形態は、前輪駆動を基本とするパートタイム四輪駆動車両の駆動力制御装置に本発明を適用した例であるが、本発明は、これに限らず、後輪駆動を基本とするパートタイム四輪駆動車両の駆動力制御装置にも、同様に適用することが可能である。また、後輪Ｗ３，Ｗ４へのトルクの伝達を制御するクラッチは、電磁クラッチ１０に限らず、油圧式クラッチなど、クラッチ機能を備えるものであればよい。
【０２２３】
【発明の効果】
以上のように、本発明の四輪駆動車両の駆動力制御装置によれば、ロックモード中において、運転者の意図に可能な限り沿いながら、クラッチの締結力を運転状態に応じて過不足なく適切に制御することができ、それにより、クラッチや駆動系の小型化を図ることができるとともに、燃費を向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る駆動力制御装置およびこれを適用した四輪駆動車両の概略構成を示す図である。
【図２】駆動力制御処理のメインルーチンを示すフローチャートである。
【図３】ＶＡＴＣ制御処理のうちの駆動トルク算出処理のメインルーチンを示すフローチャートである。
【図４】ＥＴＲ−ＫＥＴＲテーブルの一例を示す図である。
【図５】図３のステップ１０のギヤレシオ算出処理を示すフローチャートである。
【図６】図３のステップ１１の慣性補正トルク算出処理を示すフローチャートである。
【図７】ＶＡＴＣ制御処理のうちの前後配分トルク制御処理のメインルーチンを示すフローチャートである。
【図８】図７のステップ４２のＴ０算出処理を示すフローチャートである。
【図９】図７のステップ４０の加速時の前後配分制御処理のメインルーチンを示すフローチャートである。
【図１０】図９のステップ５０の駆動力による加速度算出処理を示すフローチャートである。
【図１１】ＶＣＡＲ−ＦＲＣテーブルの一例を示す図である。
【図１２】図９のステップ５１の加速度フィルタ処理を示すフローチャートである。
【図１３】図９のステップ５２の加速時の前後配分トルク算出処理の一部を示すフローチャートである。
【図１４】図１３の続きを示すフローチャートである。
【図１５】ＶＣＡＲ−ＫＶテーブルの一例を示す図である。
【図１６】ＸＧＦ１Ｆ−ＶＡＴＣテーブルの一例を示す図である。
【図１７】ＶＣＡＲ−Ｔ１ＭＡＸテーブルの一例を示す図である。
【図１８】図１４のステップ８７のＭＴ・ＪＯＢ処理を示すフローチャートの一部である。
【図１９】図１８の続きを示すフローチャートである。
【図２０】ＴＭＨＯＰ−ＭＴＨＯＰテーブルの一例を示す図である。
【図２１】ＴＭＳＴＥＰ−ＭＴＳＴＥＰテーブルの一例を示す図である。
【図２２】図７のステップ４１のタイトターンブレーキ防止制御処理を示すフローチャートである。
【図２３】ＶＣＡＲ−ＫＷ５テーブルの一例を示す図である。
【図２４】ＴＤ−Ｔ４ＴＤＫテーブルの一例を示す図である。
【図２５】制御量制限処理のメインルーチンを示すフローチャートである。
【図２６】図２５のステップ１４０のシフト位置＆イニシャル処理を示すフローチャートである。
【図２７】図２のステップ２のＬＳＤ制御処理のメインルーチンの一部を示すフローチャートである。
【図２８】図２７の続きを示すフローチャートである。
【図２９】ＶＣＡＲ−ＫＶＬＳＤ１テーブルの一例を示す図である。
【図３０】ＫＸＧＦＬＳＤ算出処理を示すフローチャートである。
【図３１】ＸＧＦ１Ｆ−ＫＸＧＦＬＳＤ１テーブルの一例を示す図である。
【図３２】ＴＬＳＤ１，ＴＬＳＤ２検索処理を示すフローチャートである。
【図３３】ＲＶＷ＿Ｒ−ＪＧＬＳＤテーブルの一例を示す図である。
【図３４】［ＲＶＷ＿ＲＦ−ＪＧＬＳＤ］−ＴＬＳＤ１テーブルの一例を示す図である。
【図３５】ＤＧ０２３−ＴＬＳＤ２テーブルの一例を示す図である。
【図３６】ＤＴＬＳＤ−ＫＤＴＬＳＤテーブルの一例を示す図である。
【図３７】ＶＣＡＲ−ＫＶＴＬＳＤテーブルの一例を示す図である。
【図３８】図２のステップ３のロックモード制御処理のメインルーチンの一部を示すフローチャートである。
【図３９】図３８の続きを示すフローチャートである。
【図４０】ロックモード中のロックスイッチ操作処理のサブルーチンのフローチャートである。
【図４１】ロックスイッチの操作状況とロックモードの実行・解除との関係の一例を示すタイムチャートである。
【図４２】車両の運転状態およびロックスイッチの操作状況とロックモードの実行・解除との関係の一例を示すタイムチャートである。
【図４３】図３９のステップ３５０のロックモード用伝達トルクの算出サブルーチンのフローチャートである。
【図４４】ＶＣＡＲ−ＬＯＣＫＴテーブルの一例を示す図である。
【図４５】ＴＤ−ＫＬＯＣＫテーブルの一例を示す図である。
【図４６】図２のステップ４の総目標トルク算出処理のメインルーチンの一部を示すフローチャートである。
【符号の説明】
１    駆動力制御装置
２    四輪駆動車両
１０    電磁クラッチ（クラッチ）
１１    ２／４ＷＤ・ＥＣＵ（自動モード用締結力算出手段、ロックモード実行手段、ロックモード締結力制限手段、クラッチ締結力決定手段、駆動力算出手段）
２６    ロックスイッチ（入力手段）
Ｗ１，Ｗ２    左右の前輪（主駆動輪）
Ｗ３，Ｗ４    左右の後輪 （副駆動輪）
ＶＣＡＲ    車両速度
ＰＢＡ    吸気管内絶対圧（車両の運転状態を表すパラメータ）
ＮＥ    エンジン回転数（車両の運転状態を表すパラメータ）
ＴＯＢＪ＋ＴＬＳＤ  自動モード用伝達トルク（自動モード用締結力）
ＬＯＣＫＤ    ロックモード用伝達トルク（ロックモード用締結力）
ＭＤＴＬ    左目標伝達トルク（駆動力）
ＭＤＴＲ    右目標伝達トルク（駆動力）
ＴＤ    駆動トルク（主駆動輪の駆動力、車両の走行状態を表すパラメータ）
【図１】
0003699324.tif 000003
【図２】
0003699324.tif 000004
【図３】
0003699324.tif 000005
【図４】
0003699324.tif 000006
【図５】
0003699324.tif 000007
【図６】
0003699324.tif 000008
【図７】
0003699324.tif 000009
【図８】
0003699324.tif 000010
【図９】
0003699324.tif 000011
【図１０】
0003699324.tif 000012
【図１１】
0003699324.tif 000013
【図１２】
0003699324.tif 000014
【図１３】
0003699324.tif 000015
【図１４】
0003699324.tif 000016
【図１５】
0003699324.tif 000017
【図１６】
0003699324.tif 000018
【図１７】
0003699324.tif 000019
【図１８】
0003699324.tif 000020
【図１９】
0003699324.tif 000021
【図２０】
0003699324.tif 000022
【図２１】
0003699324.tif 000023
【図２２】
0003699324.tif 000024
【図２３】
0003699324.tif 000025
【図２４】
0003699324.tif 000026
【図２５】
0003699324.tif 000027
【図２６】
0003699324.tif 000028
【図２７】
0003699324.tif 000029
【図２８】
0003699324.tif 000030
【図２９】
0003699324.tif 000031
【図３０】
0003699324.tif 000032
【図３１】
0003699324.tif 000033
【図３２】
0003699324.tif 000034
【図３３】
0003699324.tif 000035
【図３４】
0003699324.tif 000036
【図３５】
0003699324.tif 000037
【図３６】
0003699324.tif 000038
【図３７】
0003699324.tif 000039
【図３８】
0003699324.tif 000040
【図３９】
0003699324.tif 000041
【図４０】
0003699324.tif 000042
【図４１】
0003699324.tif 000043
【図４２】
0003699324.tif 000044
【図４３】
0003699324.tif 000045
【図４４】
0003699324.tif 000046
【図４５】
0003699324.tif 000047
【図４６】
0003699324.tif 000048