(57)【要約】【課題】いずれか一つのモータがフェールした場合に走行性能や車両の挙動の安定性の低下を抑制できる駆動力制御装置を提供する。【解決手段】第１モータと第２モータとのいずれか一方のモータから意図したトルクを出力できないフェールが生じたことを判断し（ステップＳ２）、フェールが生じた場合に、第１モータと第２モータとの他方のモータからトルクを出力するとともに（ステップＳ１０ないしステップＳ１３）、他方のモータから出力されたトルクの少なくとも一部を、右側の駆動輪と左側の駆動輪とのうちの一方のモータが連結された第１駆動輪に伝達するように、クラッチの伝達トルク容量（ステップＳ７）を制御するように構成されている。【選択図】図３
2018196214.tif 000002
【特許請求の範囲】
【請求項１】
車両の右側の駆動輪に連結された第１モータと、前記車両の左側の駆動輪に連結された第２モータと、前記第１モータと前記第２モータとの間でトルクを伝達することができるとともに、伝達トルク容量を変更可能なクラッチとを有する駆動装置の駆動力制御装置において、
前記第１モータと前記第２モータとの出力トルクを制御するコントローラを備え、
前記コントローラは、
前記第１モータと前記第２モータとのいずれか一方のモータから意図したトルクを出力できないフェールが生じたことを判断し、
前記フェールが生じた場合に、前記第１モータと前記第２モータとの他方のモータからトルクを出力するとともに、前記他方のモータから出力されたトルクの少なくとも一部を、前記右側の駆動輪と前記左側の駆動輪とのうちの前記一方のモータが連結された第１駆動輪に伝達するように、前記クラッチの伝達トルク容量を制御するように構成されている
ことを特徴とする車両の駆動力制御装置。
【請求項２】
請求項１に記載の車両の駆動力制御装置において、
前記コントローラは、
前記右側の駆動輪と前記左側の駆動輪とに要求されるトルクの差が予め定められた所定値未満の場合は、前記右側の駆動輪に要求されるトルクと前記左側の駆動輪に要求されるトルクとの合計値に基づいて前記他方のモータから出力するトルクを求め、
前記他方のモータから出力されたトルクが、前記右側の駆動輪と前記左側の駆動輪とに均等に伝達されるように前記クラッチの伝達トルク容量を定めるように構成されている
ことを特徴とする車両の駆動力制御装置。
【請求項３】
請求項１に記載の車両の駆動力制御装置において、
前記コントローラは、
前記第１駆動輪に要求されるトルクが、前記右側の駆動輪と前記左側の駆動輪とのうちの前記他方のモータが連結された第２駆動輪に要求されるトルクよりも小さいか否かを判断し、
前記第１駆動輪に要求されるトルクが、前記第２駆動輪に要求されるトルクよりも小さい場合は、前記右側の駆動輪に要求されるトルクと前記左側の駆動輪に要求されるトルクとの合計値に基づいて前記他方のモータから出力するトルクを求め、
前記第１駆動輪に要求されるトルクに基づいて前記クラッチの伝達トルク容量を定めるように構成されている
ことを特徴とする車両の駆動力制御装置。
【請求項４】
請求項１に記載の車両の駆動力制御装置において、
前記コントローラは、
前記第１駆動輪に要求されるトルクが、前記右側の駆動輪と前記左側の駆動輪とのうちの前記他方のモータが連結された第２駆動輪に要求されるトルクよりも大きいか否かを判断し、
前記第１駆動輪に要求されるトルクが、前記第２駆動輪に要求されるトルクよりも大きい場合は、前記他方のモータから高トルクと低トルクとを交互に出力するパルス制御を実行し、かつ前記他方のモータが高トルクを出力している間、前記クラッチの前記伝達トルク容量を大きくするとともに、前記他方のモータが低トルクを出力している間、前記クラッチの前記伝達トルク容量を小さくするように構成されている
ことを特徴とする車両の駆動力制御装置。
【請求項５】
請求項４に記載の車両の駆動力制御装置において、
前記パルス制御における前記高トルクは、前記第２駆動輪に要求されるトルクの１よりも大きい所定倍のトルクを含むことを特徴とする車両の駆動力制御装置。
【請求項６】
請求項４または５に記載の車両の駆動力制御装置において、
前記パルス制御における前記低トルクは、前記第１駆動輪に要求されるトルク以下のトルクを含むことを特徴とする車両の駆動力制御装置。
【請求項７】
請求項６に記載の車両の駆動力制御装置において、
前記パルス制御における前記低トルクは、前記第１駆動輪の回転数を低下させるように作用する負トルクを含むことを特徴とする車両の駆動力制御装置。
【請求項８】
請求項６または７に記載の車両の駆動力制御装置において、
前記コントローラは、前記パルス制御における前記低トルクを、前記第１駆動輪に要求されるトルクと前記第１駆動輪の慣性トルクとに基づいて求めるように構成されていることを特徴とする車両の駆動力制御装置。
【請求項９】
請求項４ないし８のいずれか一項に記載の車両の駆動力制御装置において、
前記パルス制御は、前記他方のモータから前記高トルクを出力した後に、前記低トルクを出力し、その後に、前記第１駆動輪に要求されるトルクを出力するルーチンを繰り返し実行する制御を含むことを特徴とする車両の駆動力制御装置。
【請求項１０】
請求項４ないし９のいずれか一項に記載の車両の駆動力制御装置において、
前記右側の駆動輪は、前記車両の右後輪を含み、
前記左側の駆動輪は、前記車両の左後輪を含む
ことを特徴とする車両の駆動力制御装置。
【請求項１１】
請求項１ないし１０のいずれか一項に記載の車両の駆動力制御装置において、
前記コントローラは、前記他方のモータから出力するトルクの上限値および下限値を定めるように構成されていることを特徴とする車両の駆動力制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の駆動輪のそれぞれにモータが連結された車両の駆動力を制御する装置に関するものである。
【背景技術】
【０００２】
特許文献１には、左側の駆動輪と右側の駆動輪とのそれぞれにモータが連結されており、それらモータ同士のトルクの伝達を可能にする摩擦クラッチを備えた車両の駆動力制御装置が記載されている。その駆動力制御装置は、道路状況に応じて摩擦クラッチのトルクの伝達トルク容量を制御している。また、道路状況および車速に応じて、一つのモータのみから動力を出力して走行するか、二つのモータから動力を出力して走行するかを定めるとともに、それぞれのモータを力行制御するか回生制御するかを定めている。具体的には、郊外道路状況でかつ低車速時には、一つのモータのみから動力を出力して走行し、郊外道路状況でかつ中高車速時には、二つのモータから動力を出力して走行するように構成されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−５９２６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載された駆動力制御装置は、中高車速で走行するときには、二つのモータから動力を出力して走行するように構成されているため、中高車速時に一方のモータがフェールした場合、フェールしたモータに接続されている車輪の駆動トルクに過不足が生じるために、要求駆動力を出力することができなくなる可能性がある。つまり、いずれか一方のモータがフェールした場合に、通常時と同様に各モータを制御すると、車輪ごとの駆動トルクにアンバランスが生じて、走行性能や走行安定性が低下する可能性がある。
【０００５】
この発明は上記のような技術的課題に着目して考え出されたものであり、いずれか一つのモータがフェールした場合に走行性能や走行安定性の低下を抑制できる駆動力制御装置を提供することを目的とするものである。
【課題を解決するための手段】
【０００６】
上記の目的を達成するために、この発明は、車両の右側の駆動輪に連結された第１モータと、前記車両の左側の駆動輪に連結された第２モータと、前記第１モータと前記第２モータとの間でトルクを伝達することができるとともに、伝達トルク容量を変更可能なクラッチとを有する駆動装置の駆動力制御装置において、前記第１モータと前記第２モータとの出力トルクを制御するコントローラを備え、前記コントローラは、前記第１モータと前記第２モータとのいずれか一方のモータから意図したトルクを出力できないフェールが生じたことを判断し、前記フェールが生じた場合に、前記第１モータと前記第２モータとの他方のモータからトルクを出力するとともに、前記他方のモータから出力されたトルクの少なくとも一部を、前記右側の駆動輪と前記左側の駆動輪とのうちの前記一方のモータが連結された第１駆動輪に伝達するように、前記クラッチの伝達トルク容量を制御するように構成されていることを特徴とするものである。
【０００７】
この発明は、前記コントローラは、前記右側の駆動輪と前記左側の駆動輪とに要求されるトルクの差が予め定められた所定値未満の場合は、前記右側の駆動輪に要求されるトルクと前記左側の駆動輪に要求されるトルクとの合計値に基づいて前記他方のモータから出力するトルクを求め、前記他方のモータから出力されたトルクが、前記右側の駆動輪と前記左側の駆動輪とに均等に伝達されるように前記クラッチの伝達トルク容量を定めるように構成されていてよい。
【０００８】
この発明は、前記コントローラは、前記第１駆動輪に要求されるトルクが、前記右側の駆動輪と前記左側の駆動輪とのうちの前記他方のモータが連結された第２駆動輪に要求されるトルクよりも小さいか否かを判断し、前記第１駆動輪に要求されるトルクが、前記第２駆動輪に要求されるトルクよりも小さい場合は、前記右側の駆動輪に要求されるトルクと前記左側の駆動輪に要求されるトルクとの合計値に基づいて前記他方のモータから出力するトルクを求め、前記第１駆動輪に要求されるトルクに基づいて前記クラッチの伝達トルク容量を定めるように構成されていてよい。
【０００９】
この発明は、前記コントローラは、前記第１駆動輪に要求されるトルクが、前記右側の駆動輪と前記左側の駆動輪とのうちの前記他方のモータが連結された第２駆動輪に要求されるトルクよりも大きいか否かを判断し、前記第１駆動輪に要求されるトルクが、前記第２駆動輪に要求されるトルクよりも大きい場合は、前記他方のモータから高トルクと低トルクとを交互に出力するパルス制御を実行し、かつ前記他方のモータが高トルクを出力している間、前記クラッチの前記伝達トルク容量を大きくするとともに、前記他方のモータが低トルクを出力している間、前記クラッチの前記伝達トルク容量を小さくするように構成されていてよい。
【００１０】
この発明は、前記パルス制御における前記高トルクは、前記第２駆動輪に要求されるトルクの１よりも大きい所定倍のトルクを含んでいてよい。
【００１１】
この発明は、前記パルス制御における前記低トルクは、前記第１駆動輪に要求されるトルク以下のトルクを含んでいてよい。
【００１２】
この発明は、前記パルス制御における前記低トルクは、前記第１駆動輪の回転数を低下させるように作用する負トルクを含んでいてよい。
【００１３】
この発明は、前記コントローラは、前記パルス制御における前記低トルクを、前記第１駆動輪に要求されるトルクと前記第１駆動輪の慣性トルクとに基づいて求めるように構成されていてよい。
【００１４】
この発明は、前記パルス制御は、前記他方のモータから前記高トルクを出力した後に、前記低トルクを出力し、その後に、前記第１駆動輪に要求されるトルクを出力するルーチンを繰り返し実行する制御を含んでいてよい。
【００１５】
この発明は、前記右側の駆動輪は、前記車両の右後輪を含み、前記左側の駆動輪は、前記車両の左後輪を含んでいてよい。
【００１６】
この発明は、前記コントローラは、前記他方のモータから出力するトルクの上限値および下限値を定めるように構成されていてよい。
【発明の効果】
【００１７】
この発明によれば、右側の駆動輪に連結された第１モータと、左側の駆動輪に連結された第２モータとのいずれか一方のモータから意図したトルクを出力できないフェールが生じたことを判断し、そのフェールが生じた場合に、第１モータと第２モータとの他方のモータからトルクを出力するとともに、他方のモータから出力されたトルクの少なくとも一部を、右側の駆動輪と左側の駆動輪とのうちのフェールしたモータが連結された駆動輪に伝達するように、クラッチの伝達トルク容量を制御するように構成されている。したがって、一方のモータがフェールしたとしても、各駆動輪に要求されるトルクと実際に伝達されるトルクとの乖離を抑制することができるため、車両の走行性能や走行安定性が低下することを抑制することができる。
【図面の簡単な説明】
【００１８】
【図１】この発明で対象とすることができる車両の一例を説明するための模式図である。
【図２】この発明の実施形態における駆動装置の一例を説明するための断面図である。
【図３】この発明の実施形態における駆動力制御装置の制御例を説明するための、ステップＳ１ないしステップＳ１９を示すフローチャートである。
【図４】この発明の実施形態における駆動力制御装置の制御例を説明するための、ステップＳ２０ないしステップＳ４３を示すフローチャートである。
【図５】この発明の実施形態における駆動力制御装置の制御例を説明するための、ステップＳ４４ないしステップＳ５７（ステップＳ５７’）を示すフローチャートである。
【図６】この発明の実施形態における駆動力制御装置の制御例を説明するための、ステップＳ５８ないしステップＳ７１を示すフローチャートである。
【図７】この発明の実施形態における駆動力制御装置の制御例を説明するための、ステップＳ５８’ないしステップＳ７１’を示すフローチャートである。
【図８】右後モータがフェールしている場合に、左旋回し、その後に直進走行した場合の右後モータおよび左後モータへの指示信号と、リヤクラッチへの指示信号と、一対の後輪の実際のトルクとの変化を説明するためのタイムチャートである。
【発明を実施するための形態】
【００１９】
この発明で対象とすることができる車両の一例を図１に示している。図１に示す車両Ｖｅは、一対の前輪１Ｆｒ，１Ｆｌにトルクを伝達するフロント駆動装置２Ｆと、一対の後輪３Ｒｒ，Ｒｌにトルクを伝達するリヤ駆動装置２Ｒとを備えている。すなわち、図１に示す車両Ｖｅは、四輪（全輪）駆動車である。これらの駆動装置２Ｆ，２Ｒは、車両Ｖｅの前後方向における中央部を挟んで同様に形成されている。したがって、以下の説明では、フロント駆動装置２Ｆの構成について説明し、リヤ駆動装置２Ｒの構成の説明は省略する。
【００２０】
図２には、フロント駆動装置２Ｆの一例を説明するための断面図を示しており、このフロント駆動装置２Ｆは、右前輪１Ｆｒに連結された右前モータ４Ｆｒと、左前輪１Ｆｌに連結された左前モータ４Ｆｌとの二つのモータを駆動力源として備えている。これらのモータ４Ｆｒ，４Ｆｌは、従来知られているハイブリッド車両や電気自動車の駆動力源として設けられたモータと同様に、発電機能のあるモータであって、その一例として永久磁石形の同期モータで構成されている。
【００２１】
各モータ４Ｆｒ，４Ｆｌの出力軸５Ｆｒ，５Ｆｌは、車幅方向に沿って配置されており、各出力軸５Ｆｒ，５Ｆｌにおけるフロント駆動装置２Ｆの中央側に配置された部分に出力ギヤ６Ｆｒ，６Ｆｌがそれぞれ設けられている。各出力軸５Ｆｒ，５Ｆｌと平行にカウンタシャフト７Ｆｒ，７Ｆｌが設けられており、カウンタシャフト７Ｆｒ，７Ｆｌの一方の端部に、出力ギヤ６Ｆｒ，６Ｆｌよりも大径のカウンタドリブンギヤ８Ｆｒ，８Ｆｌが連結されている。カウンタシャフト７Ｆｒ，７Ｆｌの他方の端部にカウンタドリブンギヤ８Ｆｒ，８Ｆｌよりも小径のドライブギヤ９Ｆｒ，９Ｆｌが連結されている。各ドライブギヤ９Ｆｒ，９Ｆｌには、それらドライブギヤ９Ｆｒ，９Ｆｌよりも大径のドリブンギヤ１０Ｆｒ，１０Ｆｌが噛み合っている。
【００２２】
ドリブンギヤ１０Ｆｒ，１０Ｆｌと一体のギヤシャフト１１Ｆｒ，１１Ｆｌは車幅方向と平行に配置されており、そのギヤシャフト１１Ｆｒ，１１Ｆｌにおける車幅方向での側面側の端部に円筒部１２Ｆｒ，１２Ｆｌが形成されている。そして、円筒部１２Ｆｒ，１２Ｆｌにドライブシャフト１３Ｆｒ，１３Ｆｌの一方の端部がスプライン嵌合され、ドライブシャフト１３Ｆｒ，１３Ｆｌの他方の端部に駆動輪（右前輪１Ｆｒと左前輪１Ｆｌと）が連結されている。
【００２３】
また、出力軸５Ｆｒ，５Ｆｌにおける車幅方向での側面側に配置された部分に円盤状のブレーキロータ１４Ｆｒ，１４Ｆｌがそれぞれ連結されている。ブレーキロータ１４Ｆｒ，１４Ｆｌは磁性材料によって構成されている。ブレーキロータ１４Ｆｒ，１４Ｆｌと対向して環状のブレーキステータ１５Ｆｒ，１５Ｆｌが設けられている。ブレーキステータ１５Ｆｒ，１５Ｆｌはブレーキロータ１４Ｆｒ，１４Ｆｌに向けて接近するとともに、回転しないようにケースＣにスプライン嵌合されている。またブレーキステータ１５Ｆｒ，１５Ｆｌにはブレーキコイル１６Ｆｒ，１６Ｆｌが設けられており、ブレーキコイル１６Ｆｒ，１６Ｆｌに通電することにより生じる電磁力によってブレーキステータ１５Ｆｒ，１５Ｆｌとブレーキロータ１４Ｆｒ，１４Ｆｌとが接触するように構成されている。このようにブレーキステータ１５Ｆｒ，１５Ｆｌとブレーキロータ１４Ｆｒ，１４Ｆｌとが接触することにより、その摩擦力に応じて制動トルクがブレーキロータ１４Ｆｒ，１４Ｆｌに作用する。すなわち、ブレーキステータ１５Ｆｒ，１５Ｆｌとブレーキロータ１４Ｆｒ，１４Ｆｌとブレーキコイル１６Ｆｒ，１６Ｆｌとにより摩擦ブレーキ１７Ｆｒ，１７Ｆｌが構成されている。
【００２４】
さらに、出力軸５Ｆｒにおける出力ギヤ６Ｆｒが連結されている箇所よりも車幅方向における中央側の先端にはＴ型断面の延長軸１８Ｆが連結され、延長軸１８Ｆに環状のクラッチディスク１９Ｆが一体回転するようにスプライン嵌合されている。
【００２５】
また、出力軸５Ｆｌにおける出力ギヤ６Ｆｌが連結されている箇所よりも車幅方向における中央側の先端には有底円筒状であって、中空部にクラッチディスク１９Ｆを収容するクラッチドラム２０Ｆが連結されている。
【００２６】
クラッチドラム２０Ｆの底面（図２における左側面）とクラッチディスク１９Ｆとの間には環状のプレッシャープレート２１Ｆが設けられている。プレッシャープレート２１Ｆは磁性材料により構成されており、クラッチドラム２０Ｆと一体に回転するようにスプライン嵌合している。
【００２７】
さらに、クラッチドラム２０Ｆの底面とプレッシャープレート２１Ｆとの間には、プレッシャープレート２１Ｆをクラッチディスク１９Ｆに向けて押圧するスプリング２２Ｆが設けられている。
【００２８】
上記のクラッチドラム２０Ｆの外側には、クラッチコイル２３Ｆが設けられており、そのクラッチコイル２３Ｆとスプリング２２Ｆとの間にヨーク２４Ｆが設けられている。そのため、クラッチコイル２３Ｆに通電すると、プレッシャープレート２１Ｆをクラッチディスク１９Ｆから離隔させる方向、すなわちスプリング２２Ｆのバネ力に抗する方向に吸引力（電磁力）が発生する。
【００２９】
上記のクラッチディスク１９Ｆとプレッシャープレート２１Ｆとスプリング２２Ｆとクラッチコイル２３Ｆとヨーク２４Ｆとによって電磁クラッチ（以下、単にクラッチと記す）２５Ｆが構成されている。クラッチコイル２３Ｆに通電していない場合には、スプリング２２Ｆのバネ力によりクラッチディスク１９Ｆとプレッシャープレート２１Ｆとが接触して一体回転し、クラッチコイル２３Ｆに通電した場合には、その電流に応じてクラッチディスク１９Ｆとプレッシャープレート２１Ｆとの伝達トルク容量が設定される。
【００３０】
したがって、クラッチコイル２３Ｆに通電せずに、プレッシャープレート２１Ｆとクラッチディスク１９Ｆとを摩擦係合させることにより、右前モータ４Ｆｒと左前モータ４Ｆｌとを一体に回転させることや、右前モータ４Ｆｒと左前モータ４Ｆｌとの間でトルクを伝達することができる。また、クラッチコイル２３Ｆに通電することにより、プレッシャープレート２１Ｆとクラッチディスク１９Ｆとの間の伝達トルク容量を低下させることができ、右前モータ４Ｆｒと左前モータ４Ｆｌとを相対回転させることができる。
【００３１】
図２に示すフロント駆動装置２Ｆは、更に、車両Ｖｅの電源がオフされている場合に右前輪１Ｆｒと左前輪１Ｆｌとに制動トルクを作用させることができるパーキングロック機構２６Ｆを備えている。このパーキングロック機構２６Ｆは、車両Ｖｅの電源がオフされた状態であってもブレーキロータ１４Ｆｒとブレーキステータ１５Ｆｒとの接触圧を維持できるように構成されている。具体的には、パーキングロック機構２６Ｆは、ブレーキステータ１５Ｆｒを挟んでブレーキロータ１４Ｆｒとは反対側に設けられた環状の可動プレート２７Ｆと、送りねじ機構２８Ｆと、送りねじ機構２８Ｆを作動させる制動用モータ２９Ｆとを備えている。
【００３２】
送りねじ機構２８Ｆは、制動用モータ２９Ｆが出力するトルクによる回転運動を直線運動に変換し、可動プレート２７Ｆをブレーキステータ１５Ｆｒ側へ押圧する作動装置である。パーキングロック機構２６Ｆは、制動用モータ２９Ｆによって送りねじ機構２８Ｆに所定の回転方向（正転方向とする）のトルクを付与することにより、可動プレート２７Ｆおよびブレーキステータ１５Ｆｒをブレーキロータ１４Ｆｒ側に押圧して、ブレーキロータ１４Ｆｒとブレーキステータ１５Ｆｒとを摩擦係合させて右前モータ４Ｆｒの出力軸５Ｆｒを制動する。なお、制動用モータ２９Ｆによって送りねじ機構２８Ｆに逆転方向のトルクを付与することにより、パーキングロック機構２６Ｆによる出力軸５Ｆｒの制動を解除することができる。
【００３３】
また、パーキングロック機構２６Ｆにおける送りねじ機構２８Ｆは、直線運動を回転運動に変換する場合の送りねじの逆効率が、回転運動を直線運動に変換する場合の送りねじの正効率よりも低い。したがって、送りねじ機構２８Ｆで可動プレート２７Ｆおよびブレーキステータ１５Ｆｒを、ブレーキロータ１４Ｆｒ側に押圧して出力軸５Ｆｒを制動した状態を維持することができる。そのため、制動用モータ２９Ｆによって送りねじ機構２８Ｆを作動させ、出力軸５Ｆｒを制動した状態で、ブレーキコイル１６Ｆｒや制動用モータ２９Ｆに対する通電が止められた場合であっても、パーキングロック機構２６Ｆによる出力軸５Ｆｒの制動状態を維持することができる。したがって、この送りねじ機構２６Ｆは、回転運動を直線運動に変換して出力軸５Ｆｒを制動するための推力を発生するとともに、推力を発生して出力軸５Ｆｒを制動した状態を保持することが可能な推力発生機構である。
【００３４】
上述したフロント駆動装置２Ｆは、電源がオフされている場合には、クラッチコイル２３Ｆへの電流の供給が停止されるので、クラッチ２５Ｆは係合した状態となる。そのため、パーキングロック機構２６Ｆで右前モータ４Ｆｒの出力軸５Ｆｒの回転を停止させることにより、左前モータ４Ｆｌの出力軸５Ｆｌの回転も停止される。つまり、右前輪１Ｆｒと左前輪１Ｆｌとに制動トルクを作用させた状態を維持することができる。なお、パーキングロック機構２９Ｆは、右前モータ４Ｆｒの出力軸５Ｆｒに限らず、例えば、左前モータ４Ｆｌの出力軸５Ｆｌの回転を阻止するように構成されていてもよく、また、カウンタシャフト７Ｆｒの回転を阻止するように構成されていてもよい。
【００３５】
図１に示す車両Ｖｅは、上記したようにフロント駆動装置２Ｆと、そのフロント駆動装置２Ｆと同様に構成されたリヤ駆動装置２Ｒとが設けられている。以下の説明では、図２と同一の構成であって、車両Ｖｅの前後方向で前方に配置されている部材の参照符号に「Ｆ」を付し、後方に配置されている部材の参照符号に「Ｒ」を付す。また、前方に配置されている部材と、後方に配置されている部材とを区別するために、前方に配置されている部材の名称には、「フロント」を付し、後方に配置されている部材の名称には、「リヤ」を付す。
【００３６】
上記の車両Ｖｅには、バッテリーやキャパシタなどにより構成された高電圧の蓄電装置３０が設けられている。蓄電装置３０からフロント駆動装置２Ｆの各モータ４Ｆｒ，４Ｆｌやクラッチコイル２３Ｆ、各ブレーキコイル１６Ｆｒ，１６Ｆｌなどに電流が供給されるように構成されている。また、蓄電装置３０からリヤ駆動装置２Ｒの各モータ４Ｒｒ，４Ｒｌやクラッチコイル２３Ｒ、各ブレーキコイル１６Ｒｒ，１６Ｒｌなどに電流が供給されるように構成されている。さらに蓄電装置３０には、各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌによって発電された電力が供給されるように構成されている。
【００３７】
蓄電装置３０と各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌとの間には、直流電流を交流電流に変換するとともに、各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌに供給する電流値やその周波数を制御することができるインバータ３１Ｆｒ，３１Ｆｌ，３１Ｒｒ，３１Ｒｌがそれぞれ設けられている。そのため、各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌをそれぞれ独立して制御することができるように構成されている。
【００３８】
上述した各インバータ３１Ｆｒ，３１Ｆｌ，３１Ｒｒ，３１Ｒｌ、および各クラッチ２５Ｆ，２５Ｒ、ならびに各摩擦ブレーキ１７Ｆｒ，１７Ｆｌ，１７Ｒｒ，１７Ｒｌなどを、一括して制御するための電子制御装置（以下、ＥＣＵと記す）３２が設けられている。このＥＣＵ３２は、この発明の実施形態における「コントローラ」に相当するものであり、従来知られている車両に搭載された電子制御装置と同様に、マイクロコンピュータを主体にして構成され、入力されるデータや予め記憶されているデータなどに基づいて演算を行い、その演算結果を制御指令信号として上述した各インバータ３１Ｆｒ，３１Ｆｌ，３１Ｒｒ，３１Ｒｌ、および各クラッチ２５Ｆ，２５Ｒ、ならびに各摩擦ブレーキ１７Ｆｒ，１７Ｆｌ，１７Ｒｒ，１７Ｒｌなどに出力するように構成されている。
【００３９】
ＥＣＵ３２に入力されるデータは各種のセンサによって得られたデータであって、そのセンサの例を挙げると、アクセルペダルの踏み込み量を検出するアクセルペダルセンサ３３、ブレーキペダルの踏み込み力や踏み込み量を検出するブレーキペダルセンサ３４、ステアリングの操舵角を検出する操舵角センサ３５、車両Ｖｅの前後加速度や横加速度を検出する加速度センサ３６、車両Ｖｅのヨーレートを検出するヨーレートセンサ３７、各車輪１Ｆｒ，１Ｆｌ，３Ｒｒ，３Ｒｌの回転数を検出する車輪速センサ３８などがその例である。なお、ＥＣＵ３２から各インバータ３１Ｆｒ，３１Ｆｌ，３１Ｒｒ，３１Ｒｌに出力する制御信号を求める際には、従来知られたアンチロックブレーキシステム（ＡＢＳ）、トラクションコントロール（ＴＲＣ）、エレクトロニックスタビリティコントロール（ＥＳＣ）、ダイナミックヨーレートコントロール（ＤＹＣ）などを考慮して求めている。
【００４０】
上述した車両Ｖｅは、いずれか一つのモータ、またはいずれか一つのインバータがフェールするなどした場合には、そのフェールしたモータから、あるいはフェールしたインバータを介して電流が供給されるモータから、意図したトルクを出力できない可能性がある。つまり、所定の電流を電源から出力したとしても、その電流に対応したトルクをモータから出力することができない可能性がある。そのような場合には、左右輪のトルクに差が生じるなどの車両Ｖｅの走行安定性の低下や、車両Ｖｅに要求されるトルクを出力することができないなどの車両Ｖｅの走行性能の低下が生じる可能性がある。なお、以下の説明では、インバータがフェールしたことにより意図したトルクをモータから出力できないフェールを含んで、便宜上、モータのフェールと記す。
【００４１】
そのため、この発明の実施形態における駆動力制御装置は、いずれかのモータがフェールした場合に、他のモータの出力トルクやクラッチの伝達トルク容量を制御することにより、車両Ｖｅの走行安定性が低下することや、車両Ｖｅの走行性能が低下することを抑制するように構成されている。
【００４２】
その制御の一例を図３ないし図７に示している。この図３ないし図７に示すフローチャートは、ＥＣＵ３２で実行される。なお、図３ないし図７に示すフローチャートは、一連のフローチャートで実行することができるものの、便宜上、図３ないし図７に分けて示してある。以下の説明では、駆動輪とモータとの間のギヤ比を「１」として記載している。
【００４３】
ここに示す制御例では、まず、それぞれの駆動輪１Ｆｒ，１Ｆｌ，３Ｒｒ，３Ｒｌの要求トルクＴir（ＴFrr，ＴFlr，ＴRrr，ＴRlr）を求める（ステップＳ１）。このステップＳ１は、例えば、特願２０１５−２５３２５４号に記載されているように、アクセルペダルの操作量（アクセル開度）、ブレーキペダルの操作量（ブレーキペダルの踏み込み量やその踏力）、操舵角、各車輪速、前後加速度などに基づいて求めることができる。したがって、ここでは、各要求トルクＴirを求める詳細な制御内容の説明は、省略する。なお、上記の各要求トルクＴirは、前進走行時における駆動トルクが「正」の値として算出され、制動トルクが「負」の値として算出される。
【００４４】
ついで、モータのフェールを判定するフラグＤallmtがオフになっているか否かを判断する（ステップＳ２）。つまり、全てのモータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌが正常であるか否かを判断する。このモータのフェールは、例えば、ＥＣＵ３２からのトルクの指示信号と、モータから出力されるトルクとの差が、予め定められた所定値以上であるか否かに基づいて判断することができ、上記のフラグＤallmtは、いずれか一つのモータがフェールした場合にオンに切り替えられる。なお、上記のフラグＤallmtと併せて、それぞれのモータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌのフェールを判定するためのフラグFlg_DFr，Flg_DFl，Flg_DRr,Flg_DRlも切り替えられる。
【００４５】
フラグＤallmtがオフであってステップＳ２で肯定的に判断された場合には、ステップＳ１で求められた各要求トルクＴirに基づいたトルクの指示信号を各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌに出力して（ステップＳ３）、このルーチンを一旦終了する。なお、フロントクラッチ２５Ｆおよびリヤクラッチ２５Ｒには、上記各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌのトルクに応じて係合させ、または解放させる。
【００４６】
それとは反対にフラグＤallmtがオンであってステップＳ２で否定的に判断された場合は、ステップＳ１で求められた各要求トルクＴirを、各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌのトルクを定めるための演算子Ｔiw（ＴFrw，ＴFlw，ＴRrw，ＴRlw）に代入する（ステップＳ４）。具体的には、右前輪１Ｆｒの要求トルクＴFrrをＦｒ演算子ＴFrwに代入し、左前輪１Ｆｌの要求トルクＴFlrをＦｌ演算子ＴFlwに代入し、右後輪３Ｒｒの要求トルクＴRrrをＲｒ演算子ＴRrwに代入し、左後輪３Ｒｌの要求トルクＴRlrをＲｌ演算子ＴRlwに代入する。これは、各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌのトルクを定めるために各要求トルクＴirを変更することがあるためである。したがって、ステップＳ４で代入される各演算子ＴFrw，ＴFlw，ＴRrw，ＴRlwも各車輪１Ｆｒ，１Ｆｌ，３Ｒｒ，３Ｒｌの要求トルクと言い得るため、以下の説明では、各演算子ＴFrw，ＴFlw，ＴRrw，ＴRlwを、各車輪１Ｆｒ，１Ｆｌ，３Ｒｒ，３Ｒｌの要求トルクと記す場合がある。
【００４７】
ついで、左右輪の要求トルクの差が第１所定値Ｋstg未満か否かを判断する（ステップＳ５）。具体的には、右前輪１Ｆｒと左前輪１Ｆｌとの要求トルクの差（ＴFrw−ＴFlw）の絶対値が第１所定値Ｋstg未満で、かつ右後輪３Ｒｒと左後輪３Ｒｌとの要求トルクの差（ＴRrw−ＴRlw）の絶対値が第１所定値Ｋstg未満であるか否かを判断する。上記の第１所定値Ｋstgは、左右輪の要求トルクが同等と判断し得る程度の値であって、ＥＣＵ３２に予め記憶されている。
【００４８】
左右輪の要求トルクの差が第１所定値Ｋstg未満でありステップＳ５で肯定的に判断された場合（以下、便宜上、直進走行と記す）には、直進判定フラグＦstgをオンにするとともに、後述する内輪制御を実行するフラグＦR*inをオフにし（ステップＳ６）、各クラッチ２５Ｆ，２５Ｒに要求される伝達トルク容量Ｃ*en（ＣFen，ＣRen）を、最大伝達トルク容量に、すなわち各クラッチ２５Ｆ，２５Ｒを完全係合させることができるトルク容量に設定する（ステップＳ７）。つまり、左右輪に均等にトルクが伝達されるように各クラッチ２５Ｆ，２５Ｒを係合する。
【００４９】
それとは反対に、左右輪の要求トルクの差が第１所定値Ｋstg以上でありステップＳ５で否定的に判断された場合には、現在の直進判定フラグＦstgがオンであり、かつ右前輪１Ｆｒと左前輪１Ｆｌとの要求トルクの差（ＴFrw−ＴFlw）の絶対値が第２所定値Ｋcrn未満で、かつ右後輪３Ｒｒと左後輪３Ｒｌとの要求トルクの差（ＴRrw−ＴRlw）の絶対値が第２所定値Ｋcrn未満であるか否かを判断する（ステップＳ８）。このステップＳ８は、例えば、運転者が直進走行を意図している際に、わずかにステアリングホイールを操作したことなどを要因として左右輪の要求トルクに差が生じたとしても、そのトルクの差が直進走行と判断し得る程度のものであるか否かを判断するためのものである。言い換えると、直進判定フラグＦstgを継続してオンにするべきか否かを判断するためのものである。したがって、上記の第２所定値Ｋcrnは、第１所定値Ｋstgよりも大きな値に定められている。つまり、直進判定と、後述する旋回判定とを行う閾値にはヒステリスがある。なお、上記の第１所定値Ｋstgや第２所定値Ｋcrnが、この発明の実施形態における「所定値」に相当する。
【００５０】
現在の直進判定フラグＫstgがオンであり、かつ右前輪１Ｆｒと左前輪１Ｆｌとの要求トルクの差（ＴFrw−ＴFlw）の絶対値が第２所定値Ｋcrn未満で、かつ右後輪３Ｒｒと左後輪３Ｒｌとの要求トルクの差（ＴRrw−ＴRlw）の絶対値が第２所定値Ｋcrn未満であることによりステップＳ８で肯定的に判断された場合には、上記ステップＳ７に移行する。すなわち、各クラッチ２５Ｆ，２５Ｒを完全係合させる。
【００５１】
ステップＳ７についで、フェールしたモータ、より具体的には、意図したトルクを出力することができないモータを特定する（ステップＳ９）。このステップＳ９は、上記の各フラグFlg_DFr，Flg_DFl，Flg_DRr,Flg_DRlに基づいて判断することができる。なお、ここでは、便宜上、一つのステップでフェールしたモータを特定するように記載しているが、複数のステップを介してフェールしたモータを特定するように構成してもよい。
【００５２】
ステップＳ９で特定されたモータが右前モータ４Ｆｒの場合には、Ｆｌ演算子ＴFlwを、ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとを加算（合計）したトルクに書き換える（ステップＳ１０）。
【００５３】
ステップＳ９で特定されたモータが左前モータ４Ｆｌの場合には、ステップＳ１０と同様に、Ｆｒ演算子ＴFrwを、ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとを加算したトルクに書き換える（ステップＳ１１）。
【００５４】
ステップＳ９で特定されたモータが右後モータ４Ｒｒの場合には、ステップＳ１０と同様に、Ｒｌ演算子ＴRlwを、ステップＳ４で代入されたＲｒ演算子ＴRrwとＲｌ演算子ＴRlwとを加算したトルクに書き換える（ステップＳ１２）。
【００５５】
ステップＳ９で特定されたモータが左後モータ４Ｒｌの場合には、ステップＳ１０と同様に、Ｒｒ演算子ＴRrwを、Ｒｒ演算子ＴRrwとＲｌ演算子ＴRlwとを加算したトルクに書き換える（ステップＳ１３）。
【００５６】
すなわち、ステップＳ１０ないしステップＳ１３では、フェールが生じたモータと対になる他方のモータに連結された駆動輪の要求トルクを、フェールが生じたモータに連結された駆動輪の要求トルク分、増大させている。
【００５７】
ステップＳ１０ないしステップＳ１３についで、各演算子Ｔiwの値（トルク）が、上限トルクＴiuplim以上であるか否かを判断する（ステップＳ１４）。この上限トルクＴiuplimは、モータの駆動トルクの最大値に基づいて定められている。すなわち、ステップＳ１０ないしステップＳ１３で書き換えられた各演算子Ｔiwの値を、モータが出力することができるか否かを判断する。なお、モータから出力可能な駆動トルクは、モータの回転数に応じて変化するため、ステップＳ１４における上限トルクＴiuplimは、車速などに応じて変化してもよい。また、各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌが、異なる特性の場合には、上限トルクＴiuplimは、それぞれのモータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌの特性に応じて定めていてもよい。例を挙げて具体的に説明すると、右前モータ４Ｆｒの駆動トルクの最大値が１００Nmであり、左前モータ４Ｆｌの駆動トルクの最大値が１５０Nmの場合には、右前輪１Ｆｒの上限トルクＴFruplimを１００Nmとし、左前輪１Ｆｌの上限トルクＴFluplimを１５０Nmに定めてもよい。
【００５８】
各演算子Ｔiwの値が上限トルクＴiuplim以上でありステップＳ１４で肯定的に判断された場合には、各演算子Ｔiwの上限ガードをする（ステップＳ１５）。すなわち、上限トルクＴiuplimを超えた演算子を、上限トルクに書き換える。例を挙げて具体的に説明すると、右前輪１Ｆｒの上限トルクＴFruplimが１００Nmであり、Ｆｒ演算子ＴFrw の値が１１０Nmの場合には、Ｆｒ演算子ＴFrw を１００Nmに書き換える。
【００５９】
それとは反対に、各演算子Ｔiwの値が上限トルクＴiuplim未満でありステップＳ１４で否定的に判断された場合には、各演算子Ｔiwの値が下限トルクＴidwlim以下であるか否かを判断する（ステップＳ１６）。この下限トルクＴidwlimは、モータの制動トルクの最大値に基づいて定められている。なお、モータから出力可能な制動トルクも、上記駆動トルクと同様に、モータの回転数に応じて変化するため、ステップＳ１６における下限トルクＴidwlimは、車速などに応じて変化させてよい。また、各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌの特性が異なる場合には、上述した上限トルクＴiuplimと同様に、それぞれのモータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌの特性に応じて定めていてもよい。
【００６０】
各演算子Ｔiwの値が下限トルクＴidwlim以下でありステップＳ１６で肯定的に判断された場合には、各演算子Ｔiwの下限ガードをする（ステップＳ１７）。すなわち、下限トルクＴidwlimを超えた演算子を、下限トルクに書き換える。すなわち、ステップＳ１４ないしステップＳ１７により各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌから出力するトルクの上限値および下限値を定める。
【００６１】
そして、上記ステップＳ１５およびステップＳ１７についで、もしくは各演算子Ｔiwの値が下限トルクＴidwlimよりも大きくステップＳ１６で否定的に判断された場合には、各アクチュエータにトルクの指示信号を出力する（ステップＳ１８）。具体的には、その時点で設定されている各演算子Ｔiwに基づいたトルクの指示信号を各モータ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌに出力するとともに、ステップＳ７で設定された各クラッチ２５Ｆ，２５Ｒに要求される伝達トルク容量に基づいた指示信号を、各クラッチ２５Ｆ，２５Ｒに出力する。すなわち、フェールしたモータと対になるモータから、フェールしたモータに要求されるトルク分を、更に出力し、その出力トルクを、クラッチを介してフェールしたモータが連結されている駆動輪に伝達する。
【００６２】
例を挙げて具体的に説明すると、右前モータ４Ｆｒがフェールした場合には、左前モータ４Ｆｌから、右前輪１Ｆｒに要求されるトルク分を、更に出力し、その出力トルクの一部（増加させた分のトルク）を、フロントクラッチ２５Ｆを介して右前輪１Ｆｒに伝達する。その場合における右前モータ４Ｆｒが、この発明の実施形態における「一方のモータ」に相当し、左前モータ４Ｆｌが、この発明の実施形態における「他方のモータ」に相当し、右前輪１Ｆｒが、この発明の実施形態における「第１駆動輪」に相当する。その後、このルーチンを一旦終了する。なお、各クラッチ２５Ｆ，２５Ｒは、各クラッチコイル２３Ｆ，２３Ｒに通電しないことにより、完全係合するように構成されているため、ここに示す例では、ステップＳ１８で、クラッチコイル２３Ｆ，２３Ｒに通電しない。
【００６３】
一方、直進判定フラグＫstgがオフであり、または右前輪１Ｆｒと左前輪１Ｆｌとに要求されるトルク差（ＴFrw−ＴFlw）の絶対値が第２所定値Ｋcrn以上であり、あるいは右後輪３Ｒｒと左後輪３Ｒｌとに要求されるトルク差（ＴRrw−ＴRlw）の絶対値が第２所定値Ｋcrn以上であることにより、ステップＳ８で否定的に判断された場合には、直進判定フラグＦstgをオフに切り替える（ステップＳ１９）。すなわち、旋回判定をする。なお、この場合における旋回判定は、左右輪に要求されるトルクの差が比較的大きいことを意味している。すなわち、直進走行時であったとしても、一方の車輪のスリップ率が大きいなどにより直進走行するために左右輪に要求するトルクが異なる場合などを含む。
【００６４】
ステップＳ１９についで、フェールしたモータに連結されている駆動輪の要求トルクが、駆動トルクか否かを判断する（ステップＳ２０）。具体的には、フェールしたモータに連結されている駆動輪の要求トルク（ステップＳ４で代入された値）が、正の値か否かを判断する。上述したように各駆動装置２Ｆ，２Ｒは、摩擦ブレーキ１７Ｆｒ，１７Ｆｌ，１７Ｒｒ，１７Ｒｌを備えているため、モータによる制動トルクを出力することができないとしても、摩擦ブレーキ１７Ｆｒ，１７Ｆｌ，１７Ｒｒ，１７Ｒｌによって制動トルクを出力することができる。そのため、旋回走行時に、フェールしたモータに連結されている駆動輪の要求トルクが制動トルクの場合には、その駆動輪にトルク伝達可能に設けられた摩擦ブレーキで、その制動トルクを発生させるようにするために、その要求トルクが駆動トルクか否かをステップＳ２０で判断している。
【００６５】
したがって、フェールしたモータに連結されている駆動輪の要求トルクが制動トルクであってステップＳ２０で否定的に判断された場合には、内輪制御を実行するフラグＦR*inをオフにし（ステップＳ２１）、フェールしたモータに連結されている駆動輪の要求トルクを、その駆動輪に連結された摩擦ブレーキの要求トルクに代入する（ステップＳ２２）。例を挙げて具体的に説明すると、右前モータ４Ｆｒがフェールしているとした場合には、Ｆｒ演算子ＴFrwの値を、摩擦ブレーキ１７Ｆｒの要求トルクＢFrに代入する。
【００６６】
ついで、各アクチュエータにトルクの指示信号を出力して（ステップＳ２３）、このルーチンを一旦終了する。具体的には、フェールが生じていないモータには、ステップＳ４で代入された演算子に基づいたトルクの指示信号を出力し、フェールが生じたモータに連結された摩擦ブレーキには、ステップＳ２２で代入された要求トルクに基づいたトルクの指示信号を出力する。さらに、各クラッチ２５Ｆ，２５Ｒは、左右輪のトルクの差に応じて、係合または解放させる。
【００６７】
例を挙げて具体的に説明すると、右前モータ４Ｆｒがフェールしている場合には、左前モータ４Ｆｌには、Ｆｌ演算子Flwに基づいたトルクの指示信号を出力し、右後モータ４Ｒｒには、Ｒｒ演算子ＴRrwに基づいたトルクの指示信号を出力し、左後モータ４Ｒｌには、Ｒｌ演算子ＴRlwに基づいたトルクの指示信号を出力する。また、摩擦ブレーキ１７Ｒｒ、より具体的には、ブレーキコイル１６Ｒｒには、ステップＳ２２で代入された要求トルクに基づいたトルクの指示信号を出力する。
【００６８】
それとは反対にフェールしたモータに連結されている駆動輪の要求トルクが駆動トルクであって、ステップＳ２０で肯定的に判断された場合は、フェールしたモータが内輪側か否かを判断する（ステップＳ２４）。具体的には、フェールしたモータに連結された駆動輪の要求トルクが、その駆動輪と対の他方の駆動輪の要求トルクよりも小さいか否かを判断する。上記のフェールしたモータに連結された駆動輪が、この発明の実施形態における「第２駆動輪」に相当する。
【００６９】
フェールしたモータが内輪側であってステップＳ２４で肯定的に判断された場合には、フェールしたモータを特定する（ステップＳ２５）。このステップＳ２５は、上記ステップＳ９と同様である。
【００７０】
ステップＳ２５で特定されたモータが右前モータ４Ｆｒの場合には、ステップＳ１０と同様に、Ｆｌ演算子ＴFlwを、ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとを加算（合計）したトルクに書き換える（ステップＳ２６）。つまり、フェールしたモータに連結された駆動輪と対になる他方の駆動輪に要求トルクを、フェールしたモータに連結された駆動輪の要求トルク分、増大させる。
【００７１】
ついで、ステップＳ２６で書き換えられた要求トルク（Ｆｌ演算子ＴFlw）を、Ｔtmpとして一時保存し（ステップＳ２７）、その保存されたトルクＴtmpの上限ガードおよび下限ガードをする（ステップＳ２８）。このステップＳ２８は、上記ステップＳ１４ないしステップＳ１７と同様のステップを実行すればよく、したがって、ここでは、詳細な説明を省略する。
【００７２】
ついで、フロントクラッチ２５Ｆの伝達トルク容量ＣFenを算出する（ステップＳ２９）。具体的には、Ｆｒ演算子ＴFrwを、ステップＳ２７で保存されたトルクＴtmp、あるいはステップＳ２８で上下限ガードされたトルクＴtmpで除算し、その除算された値にＦｌ演算子ＴFlwを積算して、フロントクラッチ２５Ｆの伝達トルク容量ＣFenを算出する。すなわち、現時点で設定されている左右輪のトルクの比と、フェールしたモータに連結された駆動輪と対になる駆動輪の要求トルク（演算子）とを積算して求める。これは、右前モータ４Ｆｒからトルクを出力せずに、左前モータ４Ｆｌのみからトルクを出力した場合に、左前モータ４Ｆｌの出力トルクのうちの右前輪１Ｆｒに要求されるトルク分を、フロントクラッチ２５Ｆを介して右前輪１Ｆｒに伝達するとともに、左前輪１Ｆｌに過剰にトルクが伝達されることを抑制するためである。
【００７３】
また、ステップＳ２５で特定されたモータが、左前モータ４Ｆｌの場合、右後モータ４Ｒｒの場合、左後モータ４Ｒｌの場合も上記ステップＳ２６ないしステップＳ２９と同様に、フェールしたモータに連結された駆動輪と対になる他方の駆動輪の要求トルクを求めるとともに、フロントクラッチ２５Ｆやリヤクラッチ２５Ｒの伝達トルク容量ＣFen，ＣRenを算出する（ステップＳ３０ないしステップＳ４１）。したがって、ステップＳ３０ないしステップＳ４１の詳細な説明は、省略する。
【００７４】
上記ステップＳ２９、ステップＳ３３、ステップＳ３７、ステップＳ４１についで、内輪制御を実行するフラグＦR*inをオフにし（ステップＳ４２）、各アクチュエータにトルクの指示信号を出力して（ステップＳ４３）、このルーチンを一旦終了する。具体的には、ステップＳ２６、ステップＳ３０、ステップＳ３４、ステップＳ３８で設定された、フェールしたモータに連結された駆動輪と対になる他方の駆動輪の要求トルクに基づいて、その他方の駆動輪に連結されたモータにトルクの指示信号を出力し、他のモータ（フェールが生じたモータを除く）には、ステップＳ４で代入された演算子に基づいたトルクの指示信号を出力する。さらに、フェールしたモータとともに駆動装置に搭載されたクラッチには、ステップＳ２９、ステップＳ３３、ステップＳ３７、ステップＳ４１のいずれかのステップで算出された伝達トルク容量に基づいた指示信号を出力する。なお、他方の駆動装置に搭載されたクラッチは、その駆動装置に設けられた二つのモータのトルクの差に基づいて係合または解放させる。
【００７５】
一方、フェールしたモータが外輪側であってステップＳ２４で否定的に判断された場合には、フェールしたモータを特定する（ステップＳ４４）。このステップＳ４４は、上記ステップＳ９やステップＳ２５と同様である。
【００７６】
ステップＳ４４で特定されたモータが右前モータ４Ｆｒの場合には、上記ステップＳ２６と同様のステップを実行して、Ｆｌ演算子ＴFlwをステップＳ２６と同様に書き換え（ステップＳ４５）、さらに、ステップＳ２７と同様にそのＦｌ演算子ＴFlwをＴtmpとして一時保存し（ステップＳ４６）、ステップＳ２８と同様に、その保存されたトルクＴtmpの上限ガードおよび下限ガードをする（ステップＳ４７）。
【００７７】
また、ステップＳ４５で特定されたモータが左前モータ４Ｆｌの場合も、上記ステップＳ３０ないしステップＳ３２と同様の処理を行う（ステップＳ４８ないしステップＳ５０）。
【００７８】
そして、上記のようにいずれか一方の前輪に連結されたモータがフェールした場合には、フロントクラッチ２５Ｆの伝達トルク容量を、最大伝達トルク容量に設定する（ステップＳ５１）。このステップＳ５１は、ステップＳ７と同様である。また、前輪に連結されたモータがフェールした場合に、フロントクラッチ２５Ｆを完全係合させる理由は、左右輪にトルク差を付けることにより旋回性能を向上させる効果よりも、ステアリング量（駆動輪の転舵角度）により旋回性能を向上させる効果の方が大きいため、上記のようにモータがフェールした場合には、ステアリング操作により旋回性能が低下することを抑制することとして、左右輪にトルク差を付ける制御を実行しないこととしたためである。
【００７９】
ステップＳ５１についで、内輪制御を実行するフラグＦR*inをオフにし（ステップＳ５２）、各アクチュエータにトルクの指示信号を出力して（ステップＳ５３）、このルーチンを一旦終了する。具体的には、ステップＳ４７、ステップＳ５０で設定されたフェールしたモータと対になるモータには、そのモータのトルクを演算するための演算子に基づいたトルクの指示信号を出力し、他のモータ（フェールが生じたモータを除く）には、ステップＳ４で代入された演算子に基づいたトルクの指示信号を出力する。さらに、フロントクラッチ２５Ｆには、ステップＳ５１で設定された伝達トルク容量に基づいた指示信号を出力し、リヤクラッチ２５Ｒには、伝達トルク容量を「０」にするための指示信号を出力する。なお、Ｒｒ演算子ＴRrwとＲｌ演算子ＴRlwとの値が同一の場合には、リヤクラッチ２５Ｒを係合してもよい。
【００８０】
一方、ステップＳ４４で特定されたモータが右後モータ４Ｒｒの場合、および左後モータ４Ｒｌの場合、つまり、一対の後輪のいずれか一方に連結されたモータがフェールした場合には、他方のモータから高トルクと低トルクとを交互に出力するパルス制御を実行するとともに、他方のモータが高トルクを出力している間、リヤクラッチ２５Ｒを係合させて（伝達トルク容量を大きくする）、フェールしたモータが連結された駆動輪にトルクを伝達するとともに、上記他方のモータが低トルクを出力している間、リヤクラッチ２５Ｆを解放させる（伝達トルク容量を小さくする）間欠制御を実行するように構成されている。上記のようなパルス制御と、間欠制御とを協調して実行する制御を、以下の説明では内輪制御と記す。
【００８１】
したがって、ステップＳ４４で特定されたモータが右後モータ４Ｒｒの場合、および左後モータ４Ｒｌの場合は、対象となる演算子が異なるものの、同様の制御を実行する。そのため、以下の説明では、ステップＳ４４で特定されたモータが右後モータ４Ｒｒの場合についてのみ説明する。また、図中においては、ステップＳ４４で特定されたモータが左後モータ４Ｒｌの場合における各ステップには、ステップＳ４４で特定されたモータが右後モータ４Ｒｒの場合におけるステップ番号と同一の番号を付すとともに、そのステップ番号に「’」を付す。なお、左後モータ４Ｒｌがフェールしている場合における制御は、ステップＳ５４からステップＳ７１における「左」を『右』に読み替え、「右」を『左』に読み替えればよい。
【００８２】
ステップＳ４４で特定されたモータが右後モータ４Ｒｒの場合には、まず、Ｒｌ演算子ＴRlwをＴRltmpとして、一時保存し（ステップＳ５４）、ついで、Ｒｌ演算子ＴRlwを、Ｒｒ演算子ＴRrwの所定倍（二倍）の値に書き換える（ステップＳ５５）。このステップＳ５５におけるＲｌ演算子ＴRlwを、Ｒｒ演算子ＴRrwの二倍の値に書き換える理由は、後述する内輪制御では、リヤクラッチ２５Ｒを一時的に係合して、フェールしたモータが連結されている駆動輪に、その駆動輪から出力するべきトルクを他方のモータから一時的に伝達するように構成されているため、正常なモータから出力されたトルクが左右輪３Ｒｒ，３Ｒｌに均等に分配されたときに、出力するべきトルクが大きい外輪側に、その出力するべきトルクと同一のトルクが伝達されるようにするためである。なお、ステップＳ５５では、左後輪３Ｒｌに要求するトルクを充足するために、Ｒｌ演算子ＴRlwを、Ｒｒ演算子ＴRrwの所定倍（二倍）の値に書き換えているが、フェール時における走行安定性を低下させるためには、Ｒｌ演算子ＴRlwの値をＲｒ演算子ＴRrwよりも大きくすればよく、二倍に限らない。つまり、左後輪３Ｒｌに要求されるトルクの１よりも大きい所定倍のトルクに定めてもよい。
【００８３】
ついで、ステップＳ５５で書き換えられたＲｌ演算子ＴRlwの値を、最大出力トルクＴtmpとして、一時的に保存し（ステップＳ５６）、その後に、その最大出力トルクＴtmpの上下限ガードをする（ステップＳ５７）。このステップＳ５７は、上記ステップＳ２８と同様に行うことができるため、ここでは、詳細な説明を省略する。
【００８４】
ステップＳ５７についで、左内輪制御を実行するフラグＦRlinがオフであるか否かを判断する（ステップＳ５８）。このフラグＦRlinは、後述するステップＳ５９を実行することによりオンに切り替えられ、上述したステップＳ６、ステップＳ２１、ステップＳ４２、ステップＳ５２を実行することによりオフに切り替えられる。したがって、前回以前のルーチンでステップＳ５９が実行されるとともに、その後に、ステップＳ６、ステップＳ２１、ステップＳ４２、ステップＳ５２が実行されていない場合には、左内輪制御を実行するフラグＦRlinがオンになっている。また、上記のステップＳ６、ステップＳ２１、ステップＳ４２、ステップＳ５２が実行された後である場合や、モータがフェールした直後には、左内輪制御を実行するフラグＦRlinがオフである。
【００８５】
左内輪制御を実行するフラグＦRlinがオフであってステップＳ５８で肯定的に判断された場合には、左内輪制御を開始する（ステップＳ５９）。具体的には、左内輪制御を実行するフラグＦRlinをオンに切り替えるとともに、リヤクラッチ２５Ｒを解放させる指示の経過時間をカウントする解放用タイマーｔdis、左後モータ４Ｒｌのトルクを低下させている経過時間をカウントするトルクダウン用タイマーtfst、リヤクラッチ２５Ｒを係合させる指示の経過時間をカウントする係合用タイマーｔconをそれぞれリセット（「０」）する。それとは反対に、左内輪制御を実行するフラグＦRlinがオンであってステップＳ５８で否定的に判断された場合は、ステップＳ５９をスキップする。
【００８６】
ついで、リヤクラッチ２５Ｒを係合させる指示を出力しているか否かを判断し（ステップＳ６０）、その指示を出力していることによりステップＳ６０で肯定的に判断された場合は、係合用タイマーｔconのカウント値が、予め定められた第１所定時間ＥRlcon以上であるか否かを判断する（ステップＳ６１）。この第１所定時間ＥRlconは、リヤクラッチ２５Ｒを介して左後モータ４Ｒｌから右後輪３Ｒｒに十分にトルクを伝達し得る時間であって、予め実験などにより定められている。なお、その第１所定時間ＥRlconは、左後モータ４Ｒｌの出力トルクの大きさや、外気温などの周辺環境などに応じて変更させてもよい。
【００８７】
係合用タイマーｔconのカウント値が、第１所定時間ＥRlcon以上であってステップＳ６１で肯定的に判断された場合は、リヤクラッチ２５Ｒの伝達トルク容量を「０」に設定し（ステップＳ６２）、ついで、解放用タイマーｔdisおよびトルクダウン用タイマーtfstを起動する（ステップＳ６３）。そして、各アクチュエータにトルクの指示信号を出力して（ステップＳ６４）、このルーチンを一旦終了する。具体的には、右前モータ４Ｆｒおよび左前モータ４Ｆｌには、上記ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとに基づいたトルクの指示信号を出力し、左後モータ４Ｒｌには、その時点で出力されているトルクと同一のトルクを出力するように指示信号を出力し、リヤクラッチ２５Ｒには、伝達トルク容量が「０」となる指示信号を出力する。なお、フロントクラッチ２５Ｆには、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が同一の場合には、フロントクラッチ２５Ｆを完全係合させる指示信号を出力し、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が異なる場合には、フロントクラッチ２５Ｆを完全解放（伝達トルク容量が「０」）させる指示信号を出力する。
【００８８】
一方、係合用タイマーｔconのカウント値が第１所定時間ＥRlcon未満であってステップＳ６１で否定的に判断された場合は、左後輪３Ｒｌのトルクを増大させる（ステップＳ６５）。すなわち、Ｒｌ演算子ＴRlwの値を、最大出力トルクＴtmpに設定する。
【００８９】
そして、各アクチュエータにトルクの指示信号を出力して（ステップＳ６４）、このルーチンを一旦終了する。この場合には、右前モータ４Ｆｒおよび左前モータ４Ｆｌには、上記ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとに基づいたトルクの指示信号を出力し、左後モータ４Ｒｌには、ステップＳ６５で設定されたトルクの指示信号を出力し、リヤクラッチ２５Ｒには、完全係合するための指示信号を出力する。なお、フロントクラッチ２５Ｆには、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が同一の場合には、フロントクラッチ２５Ｆを完全係合させる指示信号を出力し、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が異なる場合には、フロントクラッチ２５Ｆを完全解放（伝達トルク容量が「０」）させる指示信号を出力する。
【００９０】
さらに、リヤクラッチ２５Ｒを係合させる指示を出力していないことによりステップＳ６０で否定的に判断された場合には、トルクダウン用タイマーtfstのカウント値が、予め定められた第２所定時間ＥRlfst以下か否かを判断する（ステップＳ６６）。この第２所定時間ＥRlfstは、左後輪３Ｒｌの慣性トルクと左後モータ４Ｒｌから伝達されるトルクとの和が、左後輪３Ｒｌの実際の要求トルク（ステップＳ１で算出されるトルク）程度となるまでの経過時間であって、予め実験などにより定められている。なお、その第２所定時間ＥRlfstは、ステップＳ５５で書き換えられたＲｌ演算子ＴRlwの大きさなどに応じて変更してもよい。
【００９１】
リヤクラッチ２５Ｒが解放された直後などであってトルクダウン用タイマーtfstのカウント値が第２所定時間ＥRlfst以下の場合、すなわちステップＳ６６で肯定的に判断された場合には、Ｒｌ演算子ＴRlwの値を低トルクに定める（ステップＳ６７）。具体的には、ステップＳ５４で一時保存されたＴRltmpよりも小さい値に設定する。つまり、左後輪３Ｒｌの要求トルクよりも小さい値に設定する。これは、上記のように左後輪３Ｒｌの慣性トルクと左後モータ４Ｒｌから伝達されるトルクとの和が、左後輪３Ｒｌの実際の要求トルクとなるようにするためである。なお、そのトルクの低下量は、実験などにより予め定めてもよく、また左後輪３Ｒｌの慣性トルクの大きさなどに応じて変更してもよく、更に、低トルクは、左後輪３Ｒｌに制動トルクとして作用する負トルクであってもよい。なおまた、この発明の実施形態におけるトルクの大きさは、対象となる車輪の回転数を増大させるように作用するトルクの大きさを基準としている。つまり、駆動トルクと制動トルクとを比較した場合において、駆動トルクの絶対値が制動トルクの絶対値よりも小さいとしたとしても、駆動トルクの方が高トルクとなる。
【００９２】
そして、各アクチュエータにトルクの指示信号を出力して（ステップＳ６４）、このルーチンを一旦終了する。この場合には、右前モータ４Ｆｒおよび左前モータ４Ｆｌには、上記ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとに基づいたトルクの指示信号を出力し、左後モータ４Ｒｌには、ステップＳ６７で設定されたトルクの指示信号を出力し、リヤクラッチ２５Ｒには、完全解放するための指示信号を出力する。なお、フロントクラッチ２５Ｆには、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が同一の場合には、フロントクラッチ２５Ｆを完全係合させる指示信号を出力し、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が異なる場合には、フロントクラッチ２５Ｆを完全解放（伝達トルク容量が「０」）させる指示信号を出力する。
【００９３】
トルクダウン用タイマーtfstのカウント値が第２所定時間ＥRlfst以下の場合、すなわちステップＳ６６で肯定的に判断された場合には、解放用タイマーｔdisのカウント値が第３所定時間ＥRldis以上か否かを判断する（ステップＳ６８）。この第３所定時間ＥRldisは、右後輪３Ｒｒのトルクが、右後輪３Ｒｒと路面との摩擦などによるロードロード（走行抵抗）などにより過度に低下しない程度の時間であって、予め実験などにより定められており、上記第２所定時間ＥRlfstよりも長い時間に定められている。なお、その第３所定時間ＥRldisは、車速などに応じて変更してもよい。
【００９４】
解放用タイマーｔdisのカウント値が第３所定時間ＥRldis以上であってステップＳ６８で肯定的に判断された場合には、リヤクラッチ２５Ｒの伝達トルク容量ＣRenを、リヤクラッチ２５Ｒが完全係合できる値に設定し（ステップＳ６９）、ついで、係合用タイマーｔconを起動する（ステップＳ７０）。
【００９５】
そして、各アクチュエータにトルクの指示信号を出力して（ステップＳ６４）、このルーチンを一旦終了する。この場合には、右前モータ４Ｆｒおよび左前モータ４Ｆｌには、上記ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとに基づいたトルクの指示信号を出力し、左後モータ４Ｒｌには、ステップＳ５５で書き換えられたＲｌ演算子ＴRlwに基づいたトルクの指示信号を出力し、リヤクラッチ２５Ｒには、ステップＳ６９で設定された伝達トルク容量ＣRenの指示信号を出力する。なお、フロントクラッチ２５Ｆには、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が同一の場合には、フロントクラッチ２５Ｆを完全係合させる指示信号を出力し、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が異なる場合には、フロントクラッチ２５Ｆを完全解放（伝達トルク容量が「０」）させる指示信号を出力する。
【００９６】
一方、解放用タイマーｔdisのカウント値が第３所定時間ＥRldis未満であってステップＳ６８で否定的に判断された場合は、Ｒｌ演算子ＴRlwを左後輪３Ｒｌの要求トルクに設定する（ステップＳ７１）。すなわち、Ｒｌ演算子ＴRlwにステップＳ５４で保存されたＴRltmpを代入する。
【００９７】
そして、各アクチュエータにトルクの指示信号を出力して（ステップＳ６４）、このルーチンを一旦終了する。この場合には、右前モータ４Ｆｒおよび左前モータ４Ｆｌには、上記ステップＳ４で代入されたＦｒ演算子ＴFrwとＦｌ演算子ＴFlwとに基づいたトルクの指示信号を出力し、左後モータ４Ｒｌには、ステップＳ５４で保存されたＴRltmpに基づいたトルクの指示信号を出力し、リヤクラッチ２５Ｒには、解放するための指示信号を出力する。なお、フロントクラッチ２５Ｆには、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が同一の場合には、フロントクラッチ２５Ｆを完全係合させる指示信号を出力し、Ｆｒ演算子ＴFrwとＦｌ演算子ＴFlwとの値が異なる場合には、フロントクラッチ２５Ｆを完全解放（伝達トルク容量が「０」）させる指示信号を出力する。
【００９８】
図８には、右後モータ４Ｒｒがフェールしている場合に、左旋回し、その後に直進走行した場合の右後モータ４Ｒｒおよび左後モータ４Ｒｌへの指示信号（トルク）と、リヤクラッチ２５Ｒのへの指示信号（伝達トルク容量）と、一対の後輪３Ｒｒ，３Ｒｌの実際のトルクとの変化を説明するためのタイムチャートを示している。なお、図８には、一対の後輪３Ｒｒ，３Ｒｌの要求トルクの変化を併せて示している。
【００９９】
図８に示すように左旋回している間は、右後輪３Ｒｒが外輪となるため右後輪３Ｒｒの要求トルクが次第に増大し、その後に直進走行に向けて右後輪３Ｒｒの要求トルクが次第に低下する。同様に、左旋回している間は、左後輪３Ｒｌが内輪となるため左後輪３Ｒｌの要求トルクが次第に低下し、その後に直進走行に向けて左後輪３Ｒｌの要求トルクが次第に増大する。
【０１００】
右後モータ４Ｒｒがフェールしているため、右後モータ４Ｒｒへの指示トルクは常時「０」になっている。一方、左後モータ４Ｒｌは、図６に示すフローチャートに基づいて出力トルクが定められる。したがって、左後モータ４Ｒｌへの指令トルクは、高トルク、左後輪３Ｒｌに要求されるトルク以下の低トルク、左後輪３Ｒｌに要求されるトルクの順を一周期として繰り返し設定される。すなわち、左後モータ４Ｒｌへの指令トルクは、パルス状になるように設定される。
【０１０１】
また、リヤクラッチ２５Ｒの伝達トルク容量は、左後モータ４Ｒｌへの指示トルクが、高トルクの間は、最大値に定められ、左後モータ４Ｒｌへの指示トルクが、低トルクおよび左後輪３Ｒｌに要求されるトルクの間は、０Nmに定められる。すなわち、リヤクラッチ２５Ｒの伝達トルク容量は、間欠的に設定される。
【０１０２】
上記のように左後モータ４Ｒｌおよびリヤクラッチ２５Ｒを制御することにより、右後輪３Ｒｒの実際のトルクは、波状に変化するものの、その近似線が右後輪３Ｒｒに要求されるトルクに沿ったものとなる。また、上記の左後輪３Ｒｌの実際のトルクも波状に変化するものの、その近似線が左後輪３Ｒｌに要求されるトルクに沿ったものとなる。なお、図８には、上記各近似線を破線で示している。
【０１０３】
上述した制御例では、一対のモータのうちの一方のモータがフェールした場合に、他方のモータの出力トルクを増大させ、フェールしたモータに連結されている駆動輪に要求されるトルクに応じて、クラッチの伝達トルク容量を設定するように構成されている。したがって、一方のモータがフェールしたとしても、各駆動輪に要求されるトルクと実際に伝達されるトルクとの乖離を抑制することができるため、車両の走行性能や車両の走行安定性が低下することを抑制することができる。
【０１０４】
また、フェールしたモータが連結された一方の駆動輪の要求トルクが、その駆動輪と対になる他方の駆動輪の要求トルクよりも大きい場合に、他方の駆動輪に連結されたモータから高トルクと低トルクとをパルス状に出力し、またそのモータが高トルクを出力している間に、クラッチを係合させ、低トルクを出力している間にクラッチを解放させることにより、一方の駆動輪に要求されるトルクと一方の駆動輪から出力される実際のトルクの近似線とが乖離することを抑制することができるとともに、他方の駆動輪も同様に要求されるトルクと実際のトルクの近似線とが乖離することを抑制することができる。したがって、高トルクが要求されるモータがフェールした場合であっても、車両の走行性能や車両の走行安定性が低下することを抑制することができる。
【０１０５】
なお、この発明の実施形態における車両は、四輪駆動車に限らず、一対の前輪と一対の後輪とのいずれか一方が駆動輪として機能する車両であってもよい。また、各モータは、同一の特性のモータであってもよく、それぞれ異なる特性のモータであってもよい。
【符号の説明】
【０１０６】
１Ｆｒ…右前輪、  １Ｆｌ…左前輪、  ２Ｆ…フロント駆動装置、  ２Ｒ…リヤ駆動装置、  ３Ｒｒ…右後輪、  ３Ｒｌ…左後輪、  ４Ｆｒ，４Ｆｌ，４Ｒｒ，４Ｒｌ…モータ、  ２５Ｆ，２５Ｒ…クラッチ、  ３２…電子制御装置（ＥＣＵ）、  Ｖｅ…車両。
【図１】
2018196214.tif 000003
【図２】
2018196214.tif 000004
【図３】
2018196214.tif 000005
【図４】
2018196214.tif 000006
【図５】
2018196214.tif 000007
【図６】
2018196214.tif 000008
【図７】
2018196214.tif 000009
【図８】
2018196214.tif 000010