(57)【要約】【課題】ドライバーの運転性とスリップ制御性能を向上させるハイブリッド車両の駆動トルク制御装置を提供することを目的とする。【解決手段】車両の走行条件に基づいて算出される第１目標駆動トルクＴａと、スリップ量に基づいて算出される第２目標駆動トルクＴｓとを演算し、駆動輪のスリップ量に応じて第１または第２目標駆動トルクのどちらかに基づいて目標電動機トルクＴｍを算出し、第１目標駆動トルクの変化に対する目標電動機トルクの応答速度を第２目標駆動トルクに対する目標電動機トルクの応答速度より遅くする。【選択図】　　図１
2004096969.tif 000002
【特許請求の範囲】
【請求項１】
駆動輪に駆動トルクを伝達可能な電動機を備えたハイブリッド車両の駆動トルク制御装置において、
車両の走行条件を検出する走行条件検出手段と、
前記走行条件に基づいて第１目標駆動トルクを算出する第１目標駆動トルク算出手段と、
駆動輪のスリップ量を検出する手段と、
前記スリップ量に基づいて第２目標駆動トルクを算出する第２目標駆動トルク算出手段と、
駆動輪のスリップ量が所定量以下のときに前記第１目標駆動トルクに基づいて目標電動機トルクを算出する一方、駆動輪のスリップ量が所定量より大きいときに前記第２目標駆動トルクに基づいて目標電動機トルクを算出する目標電動機トルク算出手段と、
を備え、
前記目標電動機トルク算出手段は、前記第１目標駆動トルクの変化に対する前記目標電動機トルクの応答速度に対し、前記第２目標駆動トルクの変化に対する前記目標電動機トルクの応答速度を大きくすることを特徴とするハイブリッド車両の駆動トルク制御装置。
【請求項２】
前記目標電動機トルク算出手段は、駆動輪のスリップ量が所定量以下のときに前記目標電動機トルクに所定のなまし処理を施して前記目標電動機トルクを算出する一方、駆動輪のスリップ量が所定量より大きいときに前記目標電動機トルクなまし処理をせずに前記目標電動機トルクとすることを特徴とする請求項１に記載のハイブリッド車両の駆動トルク制御装置。
【請求項３】
エンジンの目標トルクを算出する目標エンジントルク算出手段と、
エンジンの実トルクを検出する実エンジントルク検出手段と、
を備え、
前記目標電動機トルク算出手段は、駆動輪のスリップ量が所定量以下のときに前記第１目標駆動トルクと前記目標エンジントルクとに基づいて前記目標電動機トルクを算出する一方、駆動輪のスリップ量が所定量より大きいときに前記第２目標駆動トルクと前記実エンジントルクとに基づいて前記目標電動機トルクを算出することを特徴とする請求項２に記載のハイブリッド車両の駆動トルク制御装置。
【請求項４】
前記スリップ制御時に前記モータを発電させて前記電動機と前記エンジンのトルクの合計を減少させる手段と、前記スリップ制御時に前記モータを発電させるためのバッテリ蓄電量に対する余裕分を確保する手段と、前記スリップ制御時に前記バッテリ蓄電量に対する余裕分を使用する手段を有することを特徴とする請求項１から４のいずれか一つに記載のハイブリッド車両の駆動トルク制御装置。
【請求項５】
前記スリップ制御時に前記バッテリの蓄電量が多い場合には前記モータが駆動状態となるように前記エンジンの目標トルクを設定する手段と、前記スリップ制御時に前記バッテリの蓄電量が少ない場合に前記モータが発電状態となるように前記エンジンの目標トルクを設定する手段を有することを特徴とする請求項１から４のいずれか一つに記載のハイブリッド車両の駆動トルク制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、車両、特にモータとエンジンとを駆動源として備えたハイブリッド車両の駆動トルク制御装置に関するものである。
【０００２】
【従来の技術】
従来のハイブリッド車両の駆動力制御に関する技術として、例えば特開平９−６５５０４号公報に記載されるものがある。この技術は、エンジンと電動機とを連結し、例えばハイブリッド車両の後輪をエンジン又は電動機、或いはその双方で駆動するようにし、合わせて蓄電装置としてキャパシタを用いたハイブリッド車両のもので、前記電動機を所謂回生作動させることにより発電機としても用い、車両減速時には路面反力トルクで電動機を回生作動させて発電して蓄電装置に蓄積し、車両発進加速時には、電動機で車輪を駆動して燃費の向上を図ることができる。
【０００３】
【発明が解決しようとする課題】
しかしながら、モータの制御応答速度はエンジンに比べて速いため、駆動トルクの急激な変動によるドライバーの不快感を防ぐ必要がある。このために従来の技術では、全運転状態においてモータの制御応答速度も遅らせている。従って速やかな制御応答速度を要求される車輪のスリップ制御中においても、モータの制御応答速度を遅らせているため、スリップ制御性能が悪化するという問題がある。
【０００４】
本発明はこのような問題点を鑑みてなされたもので、スリップ制御をしていない場合にはモータ及びエンジンの制御応答速度を遅らせることによって駆動トルクの急激な変動によるドライバーの不快感を防ぎ、また車輪のスリップ制御をしている場合にはモータ及びエンジンの制御応答速度をスリップ制御を行わない場合に比べて速める或いは遅らせないようにしてスリップ抑制制御トルクに対するモータ及びエンジンの応答性を向上させ、ドライバーの運転性とスリップ制御性能を向上させる車両の駆動トルク制御装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
本発明は、駆動輪に駆動トルクを伝達可能な電動機を備えたハイブリッド車両の駆動トルク制御装置において、車両の走行条件を検出する走行条件検出手段と、前記走行条件に基づいて第１目標駆動トルクを算出する第１目標駆動トルク算出手段と、駆動輪のスリップ量を検出する手段と、前記スリップ量に基づいて第２目標駆動トルクを算出する第２目標駆動トルク算出手段と、駆動輪のスリップ量が所定量以下のときに前記第１目標駆動トルクに基づいて目標電動機トルクを算出する一方、駆動輪のスリップ量が所定量より大きいときに前記第２目標駆動トルクに基づいて目標電動機トルクを算出する目標電動機トルク算出手段とを備え、前記目標電動機トルク算出手段は、前記第１目標駆動トルクの変化に対する前記目標電動機トルクの応答速度に対し、前記第２目標駆動トルクの変化に対する前記目標電動機トルクの応答速度を大きくする。
【０００６】
【発明の効果】
本発明によれば、スリップ制御実施の有無によりモータ及びエンジンの目標トルクに対する制御応答速度を変化させることができ、ドライバーの運転性とスリップ制御性能を向上させることができる。
【０００７】
【発明の実施の形態】
以下に、本発明の実施の形態について添付図面を参照して詳細に説明する。
【０００８】
図１は、本実施形態のハイブリッド車両の機械的構成を示すブロック図の一例である。図１に示すように、駆動力源として、バッテリ７から供給される電力により駆動されるモータ２とガソリン等の液体燃料の爆発力により駆動されるエンジン１とを併用し、後述する車両の走行状態に応じて、モータ２のみによる走行、エンジン１のみによる走行、或いはモータ２とエンジン１の双方による走行とが実現される。
【０００９】
エンジン１及びモータ２はトルクコンバータ３を介して自動変速機４に駆動力を伝達する。自動変速機４は、エンジン１及びモータ２から入力された駆動力を走行状態に応じて（或いは運転者の操作により）所定のトルク及び回転数に変換して、デファレンシャルギア５を介して駆動輪９、１０に伝達する。また、モータ２は、エンジン１によって駆動される発電機としての機能を有し、バッテリ７の充電状態に応じて発電し、バッテリの充電状態を適当に維持する。
【００１０】
エンジン１は、例えば直噴型ガソリンエンジン或いは吸気バルブの閉弁タイミングを遅延させる高燃費タイプのものが搭載され、モータ２は、例えば三相同期電動機や三相誘導電動機等の力行運転及び回生運転ができる交流機が搭載され、バッテリ７はニッケル水素電池或いはリチウムイオン電池等が搭載される。
【００１１】
インバータ６はモータ２で発電された交流電流を直流電流に変換し、バッテリ７に充電する。或いはバッテリ７が放電した直流電流を交流電流に変換し、モータ２に供給することができる半導体デバイスが搭載される。
【００１２】
コントローラ８は、ＣＰＵ、ＲＯＭ、ＲＡＭ、インターフェース回路及びインバータ回路等からなり、エンジン１の点火時期や燃料噴射量等をコントロールすると共に、モータ２の出力トルクや回転数等をエンジン１のトルク変動や自動変速機７の変速ショックを吸収するように制御する。また、コントローラ８はエンジン１の作動時にモータ２にて発電された電力をバッテリ７に充電させるように制御する。
【００１３】
次に、図１を参照して本実施形態のハイブリッド自動車の電気的構成について説明する。
【００１４】
コントローラ８には、エンジントルクを検出するエンジントルクセンサ１０１からの信号、バッテリ７の蓄電残量を検出するバッテリ蓄電量センサ１０７からの信号、車輪９〜１２の回転速度を検出する車輪速センサ１０９〜１１２からの信号、運転者によるアクセルペダル１３或いはブレーキペダル１４の踏込量を検出するための走行条件検出手段としてのアクセルストロークセンサ１１３及びブレーキストロークセンサ１１４からの信号、自動変速機４の作動油温度を検出する図示しない油温センサからの信号等を入力してエンジン１に対して点火時期や燃料噴射量及び吸入空気量の制御等を行うと共に、モータ２への電力供給量の制御等を行う。
【００１５】
また、コントローラ８は、車輪速センサ１０９〜１１２からの信号を入力して、各車輪速から推定演算される車体速と現在の車輪速から各車輪のスリップ量（率）を演算し、駆動輪９、１０と従動輪１１、１２の車輪速変化量（率）から駆動輪にスリップが発生する状態か否かを判定し、この状態を判定するとエンジン１及びモータ２の出力トルクを低下させ、スリップを回避して車両を安定化させる。
【００１６】
次に、図１及び図２を参照してコントローラ８による主要な運転状態下におけるエンジン１、モータ２及びバッテリ７の制御内容について説明する。
［停車時］
車両停止時にはエンジン１、モータ２は停止される。但し、エンジンはエンジン冷間時とバッテリ蓄電量が所定値以下の時に運転され、モータ２はエンジン運転中には発電のために駆動されてバッテリ７の蓄電量を回復する。
［緩発進時］
モータ２が駆動トルクを出力し、モータ２により車両が駆動される。
［急発進時］
モータ２が駆動トルクを出力し、またエンジン１が始動後高出力で運転される。よって、エンジン始動後は、エンジン１とモータ２双方により車両は駆動される。なお、バッテリ７はモータ２に給電する。
［エンジン始動時］
モータ２がエンジン１をクランキングするための駆動トルクを出力してエンジン１が起動される。このときバッテリ７はモータ２に給電する。
［定常低負荷走行時］
エンジン１は停止され、モータ２のみが駆動トルクを出力する。バッテリ７はモータ２に給電する。但し、エンジン１はエンジン冷間時とバッテリ蓄電量が所定値以下の時には運転され、モータ２はエンジン運転中は発電するために駆動されてバッテリ７を充電する。
［定常中負荷走行時］
エンジン１は高効率領域で運転され、エンジンの駆動力のみで車両は駆動する。モータ２はバッテリ７を充電する。
［定常高負荷走行時］
エンジン１は高出力運転され、モータ２が駆動トルクを出力する。よって車両はエンジン１とモータ２の双方により駆動される。バッテリ７はモータ２に放電する。但し、モータ２はバッテリ蓄電量が所定値以下の時はバッテリ７を充電する。
［急加速時］
エンジン１は高出力運転され、モータ２が走行のために駆動トルクを出力する。バッテリ７はモータ２に放電する。
［減速時（回生制動時）］
エンジン１は停止され、モータ２は電力を回生してバッテリ７を充電する。
【００１７】
次に、図３に示すフローチャートは、コントローラ８によるトラクション制御の内容を示すものである。
【００１８】
ステップＳ１０では、各車輪速から推定演算される車体速Ｖｓｐと、駆動輪の現在の車輪速の平均Ｖｄから各駆動輪のスリップ量Ｓｒ（＝Ｖｄ−Ｖｓｐ）を演算する。
【００１９】
ステップＳ２０では、スリップ量Ｓｒがスリップ開始判断閾値Ｓｍａｘ以上ならば、ステップＳ３０に進みフラグＦｓを１にセットする。フラグＦｓはトラクション制御中のときに１がセットされる。即ち、Ｆｓがセット中ならば駆動輪のスリップ制御中であることを表している。一方、ステップＳ２０でスリップ量Ｓｒがスリップ開始判断閾値Ｓｍａｘより小さければ、ステップＳ４０に進む。
【００２０】
ステップＳ４０では、スリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎ以下ならば、ステップＳ５０に進みフラグＦｓを０にセットする。即ちスリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎより小さければスリップ制御が終了したことを表している。一方、ステップＳ４０でスリップ率スリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎより大きければ、ステップＳ６０に進む。
【００２１】
ステップＳ６０では、フラグＦｓが０ならば、ステップＳ７０に進む。一方ステップＳ６０でフラグＦｓが１ならば、後述するステップＳ９０に進む。
【００２２】
ステップＳ７０では、アクセルペダル１３が踏み込まれている場合には図４に示すマップから目標駆動トルクＴａを設定し、またブレーキペダル１４が踏み込まれている場合には図５に示すマップから目標駆動トルクＴａを設定する。即ち、アクセルペダル１３が踏まれている場合にはアクセルペダルの踏み込み量Ａｐと車体速Ｖｓｐからドライバーの要求する目標駆動トルクＴａを設定し、ブレーキペダル１４が踏まれている場合にはドライバーの要求する目標駆動トルクＴａをブレーキペダルの踏み込み量Ｂｐに比例するように設定する。
【００２３】
ステップＳ８０では、エンジン１とモータ２の目標駆動トルクの合計Ｔを、ドライバーの要求する目標駆動トルクＴａに設定し、後述するステップＳ１３０に進む。
【００２４】
ステップＳ９０では、スリップ量Ｓｒを収束させるための目標スリップ量Ｓｔを設定する。目標スリップ量Ｓｔはスリップ開始判断閾値Ｓｍａｘより小さくスリップ終了判断閾値Ｓｍｉｎより大きい値であり、アクセルペダル１３が解放されドライバーからの加速要求がなくなると速やかにスリップ量Ｓｒが十分小さい値まで収束するように設定する。
【００２５】
ステップＳ１００では、スリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄを演算する。
【００２６】
ステップＳ１１０では、スリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄに応じてスリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのＰＩＤフィードバック制御に用いるフィードバック制御値（トルク）Ｔｓを演算する。このフィードバック制御値Ｔｓは、比例ゲインＰｅ、積分ゲインＩｅ、微分ゲインＤｅを設定して下記式（１）により演算される。
【００２７】
【数１】
2004096969.tif 000003
【００２８】
なお、ステップＳ１１０ではスリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄに応じてスリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのフィードバック制御値（トルク）Ｔｓの演算に最適制御、スライディングモード制御等の制御方法を用いて演算しても良い。
【００２９】
ステップＳ１２０では、エンジン１とモータ２に配分するトルクＴを、スリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのＰＩＤフィードバック制御に用いるフィードバック制御値（トルク）Ｔｓに設定し、ステップＳ１３０に進む。
【００３０】
ステップＳ１３０では、エンジン１とモータ２の目標トルクの合計Ｔを実現することを前提に、バッテリ７の蓄電量及びエンジン１の運転点が最良燃費線上にあるようにエンジン１の目標トルクＴｅを設定する。
【００３１】
ステップＳ１４０では、エンジン１とモータ２の目標トルクの合計トルクＴとエンジン１の目標トルクＴｅとの差をモータ２の目標トルクＴｍ（＝Ｔ−Ｔｅ）に設定する。なお、このときスリップ制御時の駆動トルクＴｓの基づく合計トルクＴの場合にはエンジンの実トルクを差し引いてモータ２の目標トルクＴｍとして、精度向上を図ってもよい。
【００３２】
ステップＳ１５０では、フラグＦｓが０ならば、ステップＳ１６０に進む。一方ステップＳ１５０でフラグＦｓが１ならば、後述するステップＳ１７０に進む。
【００３３】
ステップＳ１６０では、モータ２の目標トルクＴｍのなまし処理を行う。モータ２の目標トルクＴｍのなまし処理は、下記式（２）に示すようになまし処理の係数Ｎｓ（但し、０＜Ｎｓ＜１）を用いてモータ２の目標トルクＴｍの現在値Ｔｍ（ｎ）と前回値Ｔｍ（ｎ−１）の平均値を演算する。なまし処理の係数Ｎｓはトルク変動による加減速がドライバーの不快感を招かないように設定し、後述するステップＳ１７０に進む。
【００３４】
【数２】
2004096969.tif 000004
【００３５】
（但し、０＜Ｎｓ＜１）
また、ステップＳ１６０ではモータ２の目標トルクＴｍの現在値Ｔｍ（ｎ）と前回値Ｔｍ（ｎ−１）との差ΔＴｍ（ｎ）による加減速が、ドライバーの不快感が起こらないようにモータ２の目標トルクＴｍを設定できる制御方法があれば代用しても良い。
【００３６】
ステップＳ１７０では、エンジン１の目標トルクＴｅに応じてエンジン１を制御し、モータ２の目標トルクＴｍに応じてモータ２を制御する。
【００３７】
このように、駆動輪のスリップ制御を行う必要がないときには、モータの目標駆動トルクＴｍをＴａ−Ｔｅに基づき設定し、駆動輪のスリップ制御を行うときにはモータの目標駆動トルクＴｍをＴｓ−Ｔｅに基づき設定する。このとき、目標駆動トルクＴｓは、駆動輪のスリップを速やかに収束させるようにＰＩＤフィードバック制御により演算された値となる。したがって、スリップ非制御時の車両トータルの目標駆動トルク変化に対するモータの目標駆動トルクの応答速度に対して、スリップ制御時の車両トータルの目標駆動トルク変化に対するモータの目標駆動トルクの応答速度を速くし、スリップ制御実施の有無によりモータ及びエンジンの目標トルクに対する制御応答速度を変化させることによって、ドライバーの運転性とスリップ制御性能を向上させることができる。
【００３８】
また、駆動輪のスリップ非制御時にのみモータの目標駆動トルクに対してなまし処理を施すことで駆動トルク変動を抑制し、運転性を向上できる。
【００３９】
図６のフローチャートは、コントローラ８による別のトラクション制御を示すものである。
【００４０】
ステップＳ１０では、各車輪速から推定演算される車体速Ｖｓｐと、駆動輪の現在の車輪速の平均Ｖｄから各駆動輪のスリップ量Ｓｒ（＝Ｖｄ−Ｖｓｐ）を演算する。
【００４１】
ステップＳ２０では、スリップ量Ｓｒがスリップ開始判断閾値Ｓｍａｘ以上ならば、ステップＳ３０に進みフラグＦｓを１にセットする。フラグＦｓはトラクションコントロールシステムが作動中のときに１がセットされる。即ち、Ｆｓが１にセット中ならば駆動輪のスリップ制御中であることを表している。一方、ステップＳ２０でスリップ量Ｓｒがスリップ開始判断閾値Ｓｍａｘより小さければ、ステップＳ４０に進む。
【００４２】
ステップＳ４０では、スリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎ以下ならば、ステップＳ５０に進みフラグＦｓを０にセットする。即ちスリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎより小さければスリップ制御が終了したことを表している。一方、ステップＳ４０でスリップ率スリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎより大きければ、ステップＳ６０に進む。以上、ここまでの制御は図３に示した制御内容と同一である。
【００４３】
ステップＳ６０では、フラグＦｓが０ならば、ステップＳ２１０に進む。一方ステップＳ６０でフラグＦｓが１ならば、後述するステップＳ２２０に進む。
【００４４】
ステップＳ２１０では、スリップ継続時間ｔｃに０を設定する。スリップ制御継続時間ｔｃには車輪のスリップ制御が開始された時からスリップ制御が継続して行われた時間が設定される。
【００４５】
続くステップＳ７０では、アクセルペダル１３が踏まれている場合には図４に示すマップから目標駆動トルクＴａを設定し、またブレーキペダル１４が踏まれている場合には図５に示すマップから目標駆動トルクＴａを設定する。即ち、アクセルペダル１３が踏まれている場合にはアクセルペダルの踏み込み量Ａｐと車体速Ｖｓｐからドライバーの目標駆動トルクＴａを設定し、ブレーキペダル１４が踏まれている場合にはドライバーの目標駆動トルクＴａをブレーキペダルの踏み込み量Ｂｐに比例するように設定する。
【００４６】
ステップＳ８０では、エンジン１とモータ２の目標トルクの合計Ｔを、ドライバーの目標駆動トルクＴａに設定し、後述するステップＳ２５０に進む。
【００４７】
ステップＳ２２０では、スリップ制御が開始された時からスリップ制御が継続して行われた時間をスリップ制御継続時間ｔｃに設定し、ステップＳ９０に進む。
【００４８】
ステップＳ９０では、スリップ量Ｓｒを収束させるための目標スリップ量Ｓｔを設定する。目標スリップ量Ｓｔはスリップ開始判断閾値Ｓｍａｘより小さくスリップ終了判断閾値Ｓｍｉｎより大きい値であり、アクセルペダル１３が解放されドライバーからの加速要求がなくなると速やかにスリップ量Ｓｄが十分小さい値まで収束するように設定する。
【００４９】
ステップＳ１００では、スリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄを演算する。
【００５０】
ステップＳ１１０では、スリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄに応じてスリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのＰＩＤフィードバック制御に用いるフィードバック制御値（トルク）Ｔｓを演算する。このフィードバック制御値Ｔｓは、比例ゲインＰｅ、積分ゲインＩｅ、微分ゲインＤｅを設定して下記式（１）により演算される。
【００５１】
【数１】
2004096969.tif 000005
【００５２】
なお、ステップＳ１１０ではスリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄに応じてスリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのフィードバック制御値（トルク）Ｔｓの演算に最適制御、スライディングモード制御等の制御方法を用いて演算しても良い。
【００５３】
ステップＳ１２０では、エンジン１とモータ２に配分するトルクＴを、スリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのＰＩＤフィードバック制御に用いるフィードバック制御値（トルク）Ｔｓに設定し、ステップＳ２３０に進む。
【００５４】
ステップＳ２３０では、スリップ制御継続時間ｔｃが、エンジン１のトルクダウン時間ｔｘより大きいならば、後述するステップＳ２５０に進む。一方、ステップＳ２３０でスリップ制御が継続して行われた経過時間ｔｃがトルクダウン時間ｔｘ以下ならば、ステップＳ２４０に進む。ここでトルクダウン時間ｔｘは、エンジン１が最大駆動トルクＴｅｍａｘを出力している状態で燃料噴射停止とスロットル全閉を同時に行った時からエンジン１の駆動トルクが十分小さい値Ｔｅｍｉｎになるまでの時間を実験或いはシミュレーションで求めた値である。
【００５５】
ステップＳ２４０では、エンジン１の現在の出力トルクＴｒｅがエンジン１とモータ２の目標トルクの合計Ｔより小さいならば、ステップＳ２５０に進む。一方、エンジン１の現在の出力トルクＴｒｅがエンジン１とモータ２の目標トルクの合計Ｔ以上ならば、後述するステップＳ２６０に進む。
【００５６】
ステップＳ２５０では、バッテリ７の最大蓄電量Ｂｍｘとバッテリ７の蓄電余裕Ｂｍｇとの差をコントローラ８が許可するバッテリ７の蓄電量上限値Ｂｔｍｘ（＝Ｂｍｘ−Ｂｍｇ）に設定する。なお、バッテリ７の蓄電余裕Ｂｍｇは、モータ２の最大回生電力Ｗとエンジン１のトルクダウン時間ｔｘとの積である。また、コントローラ８を製造する段階でバッテリ７の蓄電余裕Ｂｍｇ及びエンジン１のトルクダウン時間ｔｘはコントローラ８のＲＯＭに記憶させておく。
【００５７】
ステップＳ１３０では、エンジン１とモータ２の目標トルクの合計Ｔを実現することおよびバッテリの蓄電量が蓄電量上限値Ｂｔｍｘを超えないことを前提に、エンジン１の運転点が最良燃費線上にあるようにエンジン１の目標トルクＴｅを設定する。
【００５８】
ステップＳ１４０では、エンジン１とモータ２の目標トルクの合計Ｔとエンジン１の目標トルクＴｅとの差をモータ２の目標トルクＴｍ（＝Ｔ−Ｔｅ）に設定する。
【００５９】
ステップＳ２６０では、バッテリ７の最大蓄電量Ｂｍｘをコントローラ８が許可するバッテリ７の蓄電量上限値Ｂｔｍｘ（Ｂｔｍｘ＝Ｂｍｘ）に設定する。通常はバッテリに蓄電余裕Ｂｍｇが残るような制御を行う（Ｓ２５０、Ｓ１３０）が、スリップ制御の初期は、最大蓄電量Ｂｍｘまで蓄電することを許可し、モータ回生によるスリップ制御を十分に行えるようにする。
【００６０】
ステップＳ２７０では、エンジン１の目標トルクＴｅを十分小さい値Ｔｅｍｎに設定し、ステップＳ２８０に進む。
【００６１】
ステップＳ２８０では、エンジン１の現在の出力トルクＴｒｅとモータ２の目標トルクＴｍとの和を、エンジン１とモータ２の目標トルクの合計Ｔに速やかに近付けるようにモータ２の目標トルクＴｍを設定する。基本的にはＴｍ＝Ｔ−Ｔｒｅとする。Ｔｅを十分小さい値Ｔｅｍｎに設定しても、Ｔｒｅは直ぐには小さくならないので、スリップ制御初期のＴｍは負の値（回生トルク）になる。モータ回生状態が続くとバッテリの蓄電量が増加し、蓄電量が蓄電量上限値Ｂｔｍｘに達するとそれ以上のモータ回生を行うことができなくなるが、スリップ制御初期は、蓄電量上限値Ｂｔｍｘが最大蓄電量Ｂｍｘまで高められている（ステップＳ２６０）ので、蓄電量が蓄電量上限値Ｂｔｍｘに達するような状況はあまり発生しない。
【００６２】
ステップＳ１５０では、フラグＦｓが０ならば、ステップＳ１６０に進む。一方ステップＳ１５０でフラグＦｓが１ならば、後述するステップＳ１７０に進む。
【００６３】
ステップＳ１６０では、モータ２の目標トルクＴｍのなまし処理を行う。モータ２の目標トルクＴｍのなまし処理は、下記式（２）に示すようになまし処理の係数Ｎｓ（但し、０＜Ｎｓ＜１）を用いてモータ２の目標トルクＴｍの現在値Ｔｍ（ｎ）と前回値Ｔｍ（ｎ−１）の平均値を演算する。なまし処理の係数Ｎｓはトルク変動による加減速がドライバーの不快感を招かないように設定し、後述するステップＳ１７０に進む。
【００６４】
【数２】
2004096969.tif 000006
【００６５】
（但し、０＜Ｎｓ＜１）
また、ステップＳ１６０ではモータ２の目標トルクＴｍの現在値Ｔｍ（ｎ）と前回値Ｔｍ（ｎ−１）との差ΔＴｍ（ｎ）による加減速が、ドライバーの不快感或いは動力伝達系の破損等が起こらないようにモータ２の目標トルクＴｍを設定できる制御方法があれば代用しても良い。
【００６６】
ステップＳ１７０では、エンジン１の目標トルクＴｅに応じてエンジン１を制御し、モータ２の目標トルクＴｍに応じてモータ２を制御する。
【００６７】
したがって、スリップ制御経過時間ｔｃが、トルクダウン時間ｔｘ以下のスリップ制御の初期の場合に、蓄電量上限値Ｂｔｍｘを最大蓄電量Ｂｍｘまで高めてモータ２を発電させ、エンジン１とモータ２の駆動トルクの和を減少し、駆動輪のスリップ制御性能を向上できる。
【００６８】
図７のフローチャートは、コントローラ８による第３のトラクション制御を示すものである。
【００６９】
ステップＳ１０では、各車輪速から推定演算される車体速Ｖｓｐと、駆動輪の現在の車輪速の平均Ｖｄから各駆動輪のスリップ量Ｓｒ（Ｓｒ＝Ｖｄ−Ｖｓｐ）を演算する。
【００７０】
ステップＳ２０では、スリップ量Ｓｒがスリップ開始判断閾値Ｓｍａｘ以上ならば、ステップＳ３０に進みフラグＦｓを１にセットする。フラグＦｓはトラクションコントロールシステムが作動中のときに１がセットされる。即ち、Ｆｓが１にセット中ならば駆動輪のスリップ制御中であることを表している。一方、ステップＳ２０でスリップ量Ｓｒがスリップ開始判断閾値Ｓｍａｘより小さければ、ステップＳ４０に進む。
【００７１】
ステップＳ４０では、スリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎ以下ならば、ステップＳ５０に進みフラグＦｓを０にセットする。即ちスリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎより小さければスリップ制御が終了したことを表している。一方、ステップＳ４０でスリップ率スリップ量Ｓｒがスリップ終了閾値Ｓｍｉｎより大きければ、ステップＳ６０に進む。
【００７２】
ステップＳ６０では、フラグＦｓが０ならば、ステップＳ２１０に進む。一方ステップＳ６０でフラグＦｓが１ならば、後述するステップＳ２２０に進む。
【００７３】
ステップＳ２１０では、スリップ継続時間ｔｃに０を設定する。スリップ制御継続時間ｔｃには車輪のスリップ制御が開始された瞬間からスリップ制御が継続して行われた時間が設定される。
【００７４】
ステップＳ７０では、アクセルペダル１３が踏み込まれている場合には図４に示すマップから目標駆動トルクＴａを設定し、またブレーキペダル１４が踏み込まれている場合には図５に示すマップから目標駆動トルクＴａを設定する。即ち、アクセルペダル１３が踏まれている場合にはアクセルペダルの踏み込み量Ａｐと車体速Ｖｓｐからドライバーの目標駆動トルクＴａを設定し、ブレーキペダル１４が踏まれている場合にはドライバーの目標駆動トルクＴａをブレーキペダルの踏み込み量Ｂｐに比例するように設定する。
【００７５】
ステップＳ８０では、エンジン１とモータ２の目標トルクの合計Ｔを、ドライバーの目標駆動トルクＴａに設定し、後述するステップＳ２５０に進む。
【００７６】
ステップＳ２２０では、スリップ制御が開始された瞬間からスリップ制御が継続して行われた時間をスリップ制御継続時間ｔｃに設定し、ステップＳ９０に進む。
【００７７】
ステップＳ９０では、スリップ量Ｓｒを収束させるための目標スリップ量Ｓｔを設定する。目標スリップ量Ｓｔはスリップ開始判断閾値Ｓｍａｘより小さくスリップ終了判断閾値Ｓｍｉｎより大きい値であり、アクセルペダル１３が解放されドライバーからの加速要求がなくなると速やかにスリップ量Ｓｄが十分小さい値まで収束するように設定する。
【００７８】
ステップＳ１００では、スリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄを演算する（Ｓｄ＝Ｓｒ−Ｓｔ）。
【００７９】
ステップＳ１１０では、スリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄに応じてスリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのＰＩＤフィードバック制御に用いるフィードバック制御値（トルク）Ｔｓを演算する。このフィードバック制御値Ｔｓは、比例ゲインＰｅ、積分ゲインＩｅ、微分ゲインＤｅを設定して下記式（１）により演算される。
【００８０】
【数１】
2004096969.tif 000007
【００８１】
また、ステップＳ１１０ではスリップ量Ｓｒと目標スリップ量Ｓｔとの差Ｓｄに応じてスリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのフィードバック制御値（トルク）Ｔｓの演算に最適制御、スライディングモード制御等の制御方法を用いて演算しても良い。
【００８２】
ステップＳ１２０では、エンジン１とモータ２に配分するトルクＴを、スリップ量Ｓｒを目標スリップ量Ｓｔに収束させるためのＰＩＤフィードバック制御に用いるフィードバック制御値（トルク）Ｔｓに設定し、ステップＳ２３０に進む。
【００８３】
ステップＳ２３０では、スリップ制御継続時間ｔｃが、エンジン１のトルクダウン時間ｔｘより大きいならば、後述するステップＳ２９０に進む。一方、ステップＳ２３０でスリップ制御が継続して行われた経過時間ｔｃがトルクダウン時間ｔｘ以下ならば、ステップＳ２４０に進む。
【００８４】
ステップＳ２４０では、エンジン１の現在の出力トルクＴｒｅがエンジン１とモータ２の目標トルクの合計Ｔより小さいならば、後述するステップＳ２９０に進む。一方、エンジン１の現在の出力トルクＴｒｅがエンジン１とモータ２の目標トルクの合計Ｔ以上ならば、後述するステップＳ２６０に進む。
【００８５】
ステップＳ２５０では、バッテリ７の最大蓄電量Ｂｍｘとバッテリ７の蓄電余裕Ｂｍｇとの差をコントローラ８が許可するバッテリ７の蓄電量上限値Ｂｔｍｘ（＝Ｂｍｘ−Ｂｍｇ）に設定する。なお、バッテリ７の蓄電余裕Ｂｍｇはモータ２の最大回生電力Ｗとエンジン１のトルクダウン時間ｔｘ（エンジン１が最大駆動トルクＴｅｍａｘを出力している状態で燃料噴射停止とスロットル全閉を同時に行った瞬間からエンジン１の駆動トルクが十分小さい値Ｔｅｍｉｎになるまでの時間を実験或いはシミュレーションで求めた値）との積である。また、コントローラ８を製造する段階でバッテリ７の蓄電余裕Ｂｍｇ及びエンジン１のトルクダウン時間ｔｘはコントローラ８のＲＯＭに記憶させておく。
【００８６】
ステップＳ１３０では、エンジン１とモータ２の目標トルクの合計Ｔを実現することを前提に、バッテリ７の蓄電量及びエンジン１の運転点が最良燃費線上にあるようにエンジン１の目標トルクＴｅを設定する。
【００８７】
ステップＳ１４０では、エンジン１とモータ２の目標トルクの合計Ｔとエンジン１の目標トルクＴｅとの差をモータ２の目標トルクＴｍ（＝Ｔ−Ｔｅ）に設定し、後述するステップＳ１５０に進む。
【００８８】
ステップＳ２９０では、バッテリ７の最大蓄電量Ｂｍｘとバッテリ７の蓄電余裕Ｂｍｇとの差をコントローラ８が許可するバッテリ７の蓄電量上限値Ｂｔｍｘ（＝Ｂｍｘ−Ｂｍｇ）に設定する。
【００８９】
ステップＳ３００では、図８に示すマップからバッテリ蓄電量Ｂｓｏｃに応じたエンジン１の目標トルクオフセット量Ｔｏｆｆを決定し、ステップＳ３１０に進む。
【００９０】
図８に示すマップは、モータ２の最大力行可能トルクＴｍｘとエンジン１のトルク応答遅れ見込量Ｔｄｌｃとの差を最大目標トルクオフセット量Ｔｏｆｆｍｘに設定し、モータ２の最大回生可能トルクＴｍｎとエンジン１のトルク応答遅れ見込量Ｔｄｌｃとの和を最小目標トルクオフセット量Ｔｏｆｆｍｎに設定し、（Ｂｓｏｃ、Ｔｏｆｆ）＝（Ｂｔｍｘ、Ｔｏｆｆｍｘ）と（Ｂｓｏｃ、Ｔｏｆｆ）＝（Ｂｔｍｎ、Ｔｏｆｆｍｎ）の２点を直線或いはエンジン１、モータ２等の特性を考慮した曲線で補間して作成する。ただしＢｔｍｎはバッテリ７が過放電の状態にならないようにコントローラ８が許可するバッテリ７の蓄電量下限値である。このマップによれば、バッテリ蓄電量Ｂｓｏｃに応じてモータ２の運転状態が力行と回生とを切り換えられる。
【００９１】
なお、図８のマップ及びバッテリ７の蓄電量下限値Ｂｔｍｎはコントローラ８を製造する段階でコントローラ８のＲＯＭに記憶させておく。
【００９２】
ステップＳ３１０では、エンジン１とモータ２の目標トルクの合計Ｔと目標トルクオフセット量Ｔｏｆｆとの差をエンジン１の目標トルクＴｅ（＝Ｔ−Ｔｏｆｆ）に設定する。
【００９３】
ステップＳ３２０では、エンジン１の目標トルクの前回値Ｔｅ（ｎ−１）とエンジン１の現在の駆動トルクＴｒｅ（ｎ）との差をエンジン１のトルク応答遅れＴｄｌ（＝Ｔｅ（ｎ−１）−Ｔｒｅ（ｎ））に設定する。
【００９４】
ステップＳ３３０では、目標トルクオフセット量Ｔｏｆｆとエンジン１のトルク応答遅れＴｄｌとの和をモータ２の目標トルクＴｍ（＝Ｔｏｆｆ＋Ｔｄｌ）に設定し、後述するステップＳ１５０に進む。
【００９５】
ステップＳ２６０では、バッテリ７の最大蓄電量Ｂｍｘをコントローラ８が許可するバッテリ７の蓄電量上限値Ｂｔｍｘ（Ｂｔｍｘ＝Ｂｍｘ）に設定する。
【００９６】
ステップＳ２７０では、エンジン１の目標トルクＴｅを十分小さい値Ｔｅｍｎに設定し、ステップＳ２８０に進む。
【００９７】
ステップＳ２８０では、エンジン１の現在の出力トルクＴｒｅとモータ２の目標トルクＴｍとの和を、エンジン１とモータ２の目標トルクの合計Ｔに速やかに近付けるようにモータ２の目標トルクＴｍを設定する。
【００９８】
ステップＳ１５０では、フラグＦｓが０ならば、ステップＳ１６０に進む。一方ステップＳ１５０でフラグＦｓが１ならば、後述するステップＳ１７０に進む。
【００９９】
ステップＳ１６０では、モータ２の目標トルクＴｍのなまし処理を行う。モータ２の目標トルクＴｍのなまし処理は、下記式（２）に示すようになまし処理の係数Ｎｓ（但し、０＜Ｎｓ＜１）を用いてモータ２の目標トルクＴｍの現在値Ｔｍ（ｎ）と前回値Ｔｍ（ｎ−１）の平均値を演算する。なまし処理の係数Ｎｓはトルク変動による加減速がドライバーの不快感を招かないように設定し、後述するステップＳ１７０に進む。
【０１００】
【数２】
2004096969.tif 000008
【０１０１】
（但し、０＜Ｎｓ＜１）
また、ステップＳ１６０ではモータ２の目標トルクＴｍの現在値Ｔｍ（ｎ）と前回値Ｔｍ（ｎ−１）との差ΔＴｍ（ｎ）による加減速が、ドライバーの不快感或いは動力伝達系の破損等が起こらないようにモータ２の目標トルクＴｍを設定できる制御方法があれば代用しても良い。
【０１０２】
ステップＳ１７０では、エンジン１の目標トルクＴｅに応じてエンジン１を制御し、モータ２の目標トルクＴｍに応じてモータ２を制御する。
【０１０３】
図９及び図１０は第３の制御内容を詳細に説明するためのタイムチャートである。図９はスリップ制御中においてバッテリ７の蓄電量Ｂｓｏｃがバッテリ７の蓄電量上限値Ｂｔｍｘに近い状態におけるトルク配分制御のタイムチャートを、図１０はスリップ制御中においてバッテリ７の蓄電量Ｂｓｏｃがバッテリ７の蓄電量下限値Ｂｔｍｎに近い状態におけるトルク配分制御のタイムチャートをそれぞれ示しており、バッテリ７の蓄電量に応じてモータ２の力行及び回生が制御されていることがわかる。
【０１０４】
したがって、バッテリ４の蓄電状態に応じ、スリップ制御時の駆動トルクの供給をエンジン１とモータ４と間で適当に切り換えることができ、エネルギ効率を低下させることなく、スリップ制御を実現することができる。
【０１０５】
本発明は、上記した実施形態に限定されるものではなく、本発明の技術的思想の範囲内でさまざまな変更がなしうることは明白である。
【図面の簡単な説明】
【図１】一実施の形態の構成を示す図である。
【図２】一実施の形態の主要な状態下におけるエンジン、モータ及びバッテリの制御を示す図である。
【図３】一実施の形態におけるトラクション制御のフローチャートを示す図である。
【図４】アクセルペダルの踏み込み量と車体速に応じたドライバーの要求する目標駆動トルクを表すマップである。
【図５】ブレーキペダルの踏み込み量に応じたドライバーの要求する目標駆動トルクを表すマップである。
【図６】一実施の形態におけるバッテリに蓄電余裕を持たせた場合のトラクション制御のフローチャートを示す図である。
【図７】一実施の形態におけるエンジン及びモータのトルク配分制御のフローチャートを示す図である。
【図８】一実施の形態におけるバッテリの蓄電量に応じたモータへのトルク配分量を表すマップである。
【図９】バッテリの蓄電量が蓄電上限値に近い状態におけるエンジン及びモータのトルク配分制御のタイムチャートを示す図である。
【図１０】バッテリの蓄電量が蓄電下限値に近い状態におけるエンジン及びモータのトルク配分制御のタイムチャートを示す図である。
【符号の説明】
１　エンジン
２　モータ／発電機
３　トルクコンバータ
４　自動変速機
５　デファレンシャルギア
６　インバータ
７　バッテリ
８　コントローラ
９　車輪（駆動輪）
１０　車輪（駆動輪）
１１　車輪（従動輪）
１２　車輪（従動輪）
１３　アクセルペダル
１４　ブレーキペダル
１０１　エンジントルクセンサ
１０７　バッテリ蓄電量センサ
１０９　車輪速センサ（駆動輪）
１１０　車輪速センサ（駆動輪）
１１１　車輪速センサ（従動輪）
１１２　車輪速センサ（従動輪）
１１３　アクセルストロークセンサ
１１４　ブレーキストロークセンサ
【図１】
2004096969.tif 000009
【図２】
2004096969.tif 000010
【図３】
2004096969.tif 000011
【図４】
2004096969.tif 000012
【図５】
2004096969.tif 000013
【図６】
2004096969.tif 000014
【図７】
2004096969.tif 000015
【図８】
2004096969.tif 000016
【図９】
2004096969.tif 000017
【図１０】
2004096969.tif 000018