(57)【要約】【課題】トルク抜けタイミングとモータからキャンセルトルクが出力されるタイミングとの同期精度を向上させることができる動力制御システムを提供すること。【解決手段】動力制御システム１００は、ＨＶ−ＥＣＵ１０、ＥＦＩ−ＥＣＵ２０、ＭＧ−ＥＣＵ３０を備えている。ＥＦＩ−ＥＣＵ２０は、初爆が発生する初爆タイミングを、同期用信号の有効エッジを基準とした補正タイミングｔ１として算出し、補正タイミングｔ１をＨＶ−ＥＣＵ１０に送信する。ＨＶ−ＥＣＵ１０は、受信した補正タイミングをＭＧ−ＥＣＵ３０に送信する。ＭＧ−ＥＣＵ３０は、補正タイミングｔ１を受信すると、同期用信号の有効エッジを基準として補正タイミングｔ１になったと確認し、補正タイミングｔ１でトルク抜けを打ち消すためのキャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御する。【選択図】図２
2015143054.tif 000002
【特許請求の範囲】
【請求項１】
駆動源として内燃機関と電動機とを備えたハイブリッド自動車に搭載され、前記ハイブリッド自動車の駆動軸に出力する動力を制御する動力制御システムであって、
少なくとも前記内燃機関の制御を行う第１制御部（１０，２０）と、
前記電動機の制御を行う第２制御部（３０）と、を含み、
前記第１制御部は、
自身と前記第２制御部との同期を取るためのパルス信号である同期用信号が入力されるものであって、
前記内燃機関における燃料カットに伴って発生するトルク抜けのタイミングを、前記同期用信号を基準とした補正タイミングとして算出する算出手段（Ｓ２３）と、
前記補正タイミングを前記第２制御部に対して送信する第１送信手段（Ｓ１３）と、を備え、
前記第２制御部は、
前記同期用信号が入力されるものであって、
前記補正タイミングを受信すると、前記電動機に指令する出力トルクとして、前記トルク抜けを打ち消すためのキャンセルトルクを設定する設定手段（Ｓ５２）と、
前記同期用信号を基準として前記補正タイミングになったことを確認し、前記補正タイミングで前記キャンセルトルクが発生されるように前記電動機を駆動制御する駆動手段（Ｓ５３，Ｓ５７）と、を備えていることを特徴とする動力制御システム。
【請求項２】
前記第１制御部は、
前記内燃機関の制御を行う内燃機関制御装置（２０）と、
前記内燃機関制御装置及び前記第２制御部と通信可能に構成されたハイブリッド制御装置（１０）と、を含み、
前記内燃機関制御装置は、
前記算出手段と、前記算出手段にて算出された前記補正タイミングを前記ハイブリッド制御装置に対して送信する内燃機関送信手段（Ｓ３１）と、を備え、
前記ハイブリッド制御装置は、
前記第１送信手段を備えると共に、前記同期用信号が入力されるものであって、
前記第１送信手段は、前記内燃機関送信手段から送信された前記補正タイミングを前記第２制御部に対して送信することを特徴とする請求項１に記載の動力制御システム。
【請求項３】
前記同期用信号は、前記内燃機関の制御に用いられ、前記内燃機関のサイクルにおける工程に同期して基準エッジが発生する信号であることを特徴とする請求項２に記載の動力制御システム。
【請求項４】
前記算出手段は、前記補正タイミングとして、前記同期用信号における前記基準エッジからの経過時間を算出し、
前記駆動手段は、前記同期用信号における前記基準エッジを基準として時間計測を行ない、前記経過時間と前記時間計測の結果とに基づいて、前記補正タイミングになったことを確認することを特徴とする請求項３に記載の動力制御システム。
【請求項５】
前記算出手段は、前記内燃機関の回転数の低下に応じて、前記補正タイミングを算出することを特徴とする請求項２乃至４のいずれか一項に記載の動力制御システム。
【請求項６】
前記内燃機関制御装置と前記第２制御部の夫々は、前記内燃機関の停止時からの前記基準エッジの入力回数をカウントするカウント手段を備え、
前記内燃機関送信手段は、前記補正タイミングに加えて、前記内燃機関制御装置における前記カウント手段でカウントした前記入力回数を前記ハイブリッド制御装置に送信し、
前記第１送信手段は、前記補正タイミングに加えて、前記内燃機関送信手段から送信された前記入力回数を前記第２制御部に送信し、
前記第２制御部は、
自身における前記カウント手段でカウントした前記入力回数が前記第１送信手段から送信された前記入力回数と一致するか否かを判定する判定手段（Ｓ５６）を備え、
前記駆動手段は、前記判定手段にて一致すると判定された場合に、前記同期用信号を基準として前記補正タイミングになったことを確認し、前記補正タイミングで前記キャンセルトルクが発生されるように前記電動機を駆動制御することを特徴とする請求項３乃至５のいずれか一項に記載の動力制御システム。
【請求項７】
前記内燃機関制御装置は、
前記内燃機関に対する燃料噴射の停止条件が成立した場合、前記内燃機関における複数の気筒のうち、前記停止条件の成立時に排気工程である気筒を前記燃料カットの開始気筒に設定する気筒設定手段（Ｓ２２）と、
自身と前記第２制御部との通信遅延時間が前記内燃機関における吸入工程から膨張工程までの時間よりも長い場合、前記開始気筒で前記燃料カットが開始されるタイミングよりも遅くなるように前記燃料カットのタイミングを調整するタイミング調整手段（Ｓ２６）と、を備えることを特徴とする請求項２乃至６のいずれか一項に記載の動力制御システム。
【請求項８】
前記駆動手段は、前記キャンセルトルクが発生されるように前記電動機を駆動制御する際に、前記燃料カットによるトルクの形状に応じて、なまし処理又はレート処理を行い、前記キャンセルトルクに対して前記なまし処理又は前記レート処理が反映された微調整トルクが発生されるように前記電動機を駆動制御することを特徴とする請求項１乃至７のいずれか一項に記載の動力制御システム。
【請求項９】
前記算出手段は、前記補正タイミングとして、前記同期用信号における前記基準エッジからのクランク角を算出し、
前記駆動手段は、前記同期用信号における前記基準エッジを基準としてクランク角の検出を行ない、前記算出手段で算出された前記クランク角と前記クランク角の検出結果とに基づいて、前記補正タイミングになったことを確認することを特徴とする請求項３に記載の動力制御システム。
【請求項１０】
前記算出手段は、前記補正タイミングとして、前記内燃機関における複数の気筒のうち、前記燃料カットを開始する気筒を算出し、
前記駆動手段は、前記同期用信号における前記基準エッジを基準として、前記算出手段で算出された前記気筒における吸入工程の後に最初に実行される膨張工程を確認することで、前記補正タイミングになったことを確認することを特徴とする請求項３に記載の動力制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の駆動軸に動力を出力する動力制御システムに関する。
【背景技術】
【０００２】
従来、動力制御システムの一例として、特許文献１に開示された制御方法がある。この制御方法は、ハイブリッド自動車の制御に関するものであり、燃料カットによるトルク抜けで生じるトルクショックを適切に抑制することを目的としている。ハイブリッド自動車は、内燃機関、電動機、ハイブリッドＥＣＵ、モータＥＣＵ、とエンジンＥＣＵを備えている。なお、以下においては、内燃機関をエンジン、電動機をモータ、ハイブリッドＥＣＵをＨＶ−ＥＣＵ、エンジンＥＣＵをＥＦＩ−ＥＣＵ、モータＥＣＵをＭＧ−ＥＣＵと称する。
【０００３】
ＨＶ−ＥＣＵは、ＭＧ−ＥＣＵ及びとＥＦＩ−ＥＣＵと通信ポートを介して接続されており、各種制御信号やデータのやりとりを行なっている。このＨＶ−ＥＣＵは、燃料カット開始時期から燃料カットに起因するトルクショックが発生し始めるまでの最短時間、及び燃料カット開始時期から燃料カットに起因するトルクショックが発生し始めるまでの最長時間を予測する。また、ＨＶ−ＥＣＵは、この最短時間と最長時間との間で補正開始時間を設定する。
【０００４】
そして、ＨＶ−ＥＣＵは、ＥＦＩ−ＥＣＵと通信を行い、燃料カット条件が成立したとき、エンジンの各気筒への燃料をカットするようエンジンを制御する。また、ＨＶ−ＥＣＵは、ＭＧ−ＥＣＵと通信を行い、燃料カット開始時期から補正開始時間が経過したとき、モータがキャンセルトルクと要求トルクとに基づくトルクを出力するようモータを制御する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５０６０３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の制御方法では、最短時間と最長時間との間で補正開始時間を設定しているため、実際のトルクショックが発生するタイミングと、トルク補正を実施するタイミングとがずれる可能性がある。
【０００７】
本発明は、上記問題点に鑑みなされたものであり、トルク抜けタイミングとモータからキャンセルトルクが出力されるタイミングとの同期精度を向上させることができる動力制御システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明は、
駆動源として内燃機関と電動機とを備えたハイブリッド自動車に搭載され、ハイブリッド自動車の駆動軸に出力する動力を制御する動力制御システムであって、
少なくとも内燃機関の制御を行う第１制御部（１０，２０）と、
電動機の制御を行う第２制御部（３０）と、を含み、
第１制御部は、
自身と第２制御部との同期を取るためのパルス信号である同期用信号が入力されるものであって、
内燃機関における燃料カットに伴って発生するトルク抜けのタイミングを、同期用信号を基準とした補正タイミングとして算出する算出手段（Ｓ２３）と、
補正タイミングを第２制御部に対して送信する第１送信手段（Ｓ１３）と、を備え、
第２制御部は、
同期用信号が入力されるものであって、
補正タイミングを受信すると、電動機に指令する出力トルクとして、トルク抜けを打ち消すためのキャンセルトルクを設定する設定手段（Ｓ５２）と、
同期用信号を基準として補正タイミングになったことを確認し、補正タイミングでキャンセルトルクが発生されるように電動機を駆動制御する駆動手段（Ｓ５３，Ｓ５７）と、を備えていることを特徴とする。
【０００９】
このように、動力制御システムは、第１制御部と第２制御とを備えている。第１制御部は、燃料カットに伴って発生するトルク抜けタイミングを、同期用信号を基準とした補正タイミングとして算出する。また、第１制御部は、第２制御部に対して、算出した補正タイミングを送信する。
【００１０】
そして、第２制御部は、補正タイミングを受信すると、電動機に指令する出力トルクとして、燃料カットによるトルク抜けを打ち消すためのキャンセルトルクを設定する。更に、第２制御部は、同期用信号を基準として補正タイミングになったことを確認したら、キャンセルトルクが発生されるように電動機を駆動制御する。
【００１１】
このように、第２制御部は、同期用信号を基準として算出された補正タイミングを取得すると共に、自身に入力されている同期用信号を基準として補正タイミングになったことを確認する。よって、第２制御部は、トルク抜けのタイミングに合わせて、キャンセルトルクを発生させやすくなる。
【００１２】
従って、動力制御システムは、トルク抜けタイミングとモータからキャンセルトルクが出力されるタイミングとの同期精度を向上させることができる動力制御システムを提供することができる。これによって、動力制御システムは、トルク抜けによるショックを防ぐことができる。
【００１３】
なお、特許請求の範囲、及びこの項に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１４】
【図１】実施形態における動力制御システムの概略構成を示すブロック図である。
【図２】実施形態における各ＥＣＵの概略構成を示すブロック図である。
【図３】実施形態におけるＨＶ−ＥＣＵの処理動作を示すフローチャートである。
【図４】実施形態におけるＥＦＩ−ＥＣＵの処理動作を示すフローチャートである。
【図５】実施形態におけるＭＧ−ＥＣＵの処理動作を示すフローチャートである。
【図６】実施形態における各気筒の工程と、同期用信号及び各トルクとの関係を示すタイムチャートである。
【図７】実施形態における各気筒の工程と、同期用信号、各トルク、及び各フラグとの関係を示すタイムチャートである。
【発明を実施するための形態】
【００１５】
以下において、図面を参照しながら、発明を実施するための形態を説明する。まず、図１及び図２を用いつつ、動力制御システム１００の構成に関して説明する。動力制御システム１００は、走行用の駆動源としてエンジン（図示省略）と第１モータジェネレータ７１と第２モータジェネレータ７２とが設けられた周知のハイブリッド自動車に搭載されるものである。動力制御システムは、ハイブリッド自動車の駆動軸に出力する動力を制御するものである。なお、以下においては、第１モータジェネレータ７１を第１モータ７１、第２モータジェネレータ７２を第２モータ７２と簡略化して記載することもある。
【００１６】
このハイブリッド自動車は、周知技術であるため詳しい説明を省略するが、エンジン、第１モータ７１、第２モータ７２などの駆動源に加えて、プラネタリギヤなどを備えて構成されている。本実施形態では、一例として、第１気筒、第２気筒、第３気筒、第４気筒を備えた４気筒型のエンジンを採用して説明する。また、本実施形態では、第１モータ７１と第２モータ７２の二つのモータを備えた構成を採用している。しかしながら、本発明はこれに限定されない。つまり、本発明は、走行用の駆動源としてエンジンと一つのモータとを備えたハイブリッド自動車であれば適用することができる。
【００１７】
プラネタリギヤは、エンジンの出力軸としてのクランクシャフトにダンパを介してピニオンギヤを回転させるキャリアが接続されている。また、第１モータ７１は、プラネタリギヤのサンギヤに接続されている。また、第２モータ７２は、プラネタリギヤのリングギヤに接続された駆動軸としてのリングギヤ軸に減速ギヤを介して接続されている。なお、駆動軸としてのリングギヤ軸は、ギヤ機構とデファレンシャルギヤとを介して駆動輪が取り付けられた車軸に接続されている。このリングギヤ軸に出力された動力は、走行用の動力として用いられる。このプラネタリギヤは、周知技術であるためこれ以上の詳しい説明は省略する。なお、ハイブリッド自動車は、走行用の駆動源としてエンジンと一つのモータとを備えている場合、プラネタリギヤを備えていなくてもよい。
【００１８】
動力制御システム１００は、図１に示すように、ＨＶ−ＥＣＵ１０、ＥＦＩ−ＥＣＵ２０、ＭＧ−ＥＣＵ３０、信号線４０、通信線５０などを備えて構成されている。なお、ＥＣＵは、Electronic Control Unitの略称である。また、ＨＶ−ＥＣＵ１０、ＥＦＩ−ＥＣＵ２０、ＭＧ−ＥＣＵ３０を特に区別しない場合は、これらを簡略化して各ＥＣＵと称することもある。また、信号線４０は、じか線と言い換えることもできる。
【００１９】
ＨＶ−ＥＣＵ１０、ＥＦＩ−ＥＣＵ２０、ＭＧ−ＥＣＵ３０の夫々は、信号線４０を介して接続されている。また、ＨＶ−ＥＣＵ１０とＥＦＩ−ＥＣＵ２０、及びＨＶ−ＥＣＵ１０とＭＧ−ＥＣＵ３０は、通信線５０を介して接続されている。よって、ＨＶ−ＥＣＵ１０は、ＥＦＩ−ＥＣＵ２０やＭＧ−ＥＣＵ３０と通信可能に構成されている。
【００２０】
この通信線５０を介して行なわれる通信は、例えば、車載機器にも利用可能なネットワークの規格に準拠して行なわれる。この場合、各ＥＣＵに設けられた通信部１５，２５，３５は、このネットワークの規格に準拠した通信機器である。なお、通信線５０としては、例えばＣＡＮバスを採用することができる。ＣＡＮは、Controller Area Networkの略称である。ＣＡＮは登録商標である。
【００２１】
なお、ＨＶ−ＥＣＵ１０は、ＥＦＩ−ＥＣＵ２０やＭＧ−ＥＣＵ３０との間で、制御の指令など様々な信号をやり取りすることになる。よって、通信線５０には、その様々な信号が流れることになる。これに対して、信号線４０は、後ほど説明する同期用信号のみが流れるようにできる。つまり、信号線４０は、ＥＦＩ−ＥＣＵ２０からＨＶ−ＥＣＵ１０やＭＧ−ＥＣＵ３０に同期用信号を伝達するための専用線とすることができる。言い換えると、各ＥＣＵは、通信線５０とは異なる信号線４０によって接続されている。よって、ＨＶ−ＥＣＵ１０及びＭＧ−ＥＣＵ３０は、通信線５０における遅延などによる影響を受けることなく、ＥＦＩ−ＥＣＵ２０から同期用信号を取得することができる。
【００２２】
ＨＶ−ＥＣＵ１０は、特許請求の範囲における第１制御部、ハイブリッド制御装置に相当する。このＨＶ−ＥＣＵ１０は、後ほど説明するＥＦＩ−ＥＣＵ２０やＭＧ−ＥＣＵ３０における制御の指令を行うものであり、図２に示すように、処理部１１、記憶部１２、タイマ１３、入出力部１４、通信部１５などを備えて構成されている。つまり、ＨＶ−ＥＣＵ１０は、ハイブリッド自動車の走行制御を統括して行う制御装置と言う事ができる。また、ＨＶ−ＥＣＵ１０は、ＥＦＩ−ＥＣＵ２０及びＭＧ−ＥＣＵ３０を制御する装置である。なお、制御の指令は、制御信号と言い換えることもできる。
【００２３】
処理部１１は、記憶部１２に記憶されたプログラム、入出力部１４や通信部１５を介して取得した信号に基づいて演算処理を実行する。また、処理部１１は、その演算結果を入出力部１４や通信部１５を介して出力する。また、処理部１１は、タイマ１３を用いて、同期用信号の有効エッジを基準として経過時間を判定する。更に、ＨＶ−ＥＣＵ１０は、エンジンの停止時からの基準エッジの入力回数をカウントするカウンタ（カウント手段）を備えていてもよい。なお、エンジンの停止時からの有効エッジの入力回数は、エンジン回転回数、と言い換えることもできる。カウンタは、基準エッジが入力される毎にカウントアップし、同期用信号が一定期間入力されなかったときはカウント値をリセットする。例えば、図６の例では、ＨＶ−ＥＣＵ１０は、タイミングｔ１０，ｔ１５でカウントアップする。また、図７の例では、ＨＶ−ＥＣＵ１０は、タイミングｔ２０，ｔ２３，ｔ２８，ｔ２９でカウントアップする。
【００２４】
同期用信号は、ＨＶ−ＥＣＵ１０とＥＦＩ−ＥＣＵ２０とＭＧ−ＥＣＵ３０との間で同期を取るための信号であり、後ほど説明する。また、有効エッジは、特許請求の範囲における基準エッジに相当する。
【００２５】
また、入出力部１４や通信部１５を介して取得する信号は、例えば、アクセル開度Ａｃｃ、車速Ｖ、エンジン回転数Ｎｅ、第１モータ７１のモータ回転数Ｎｍ１、第２モータ７２のモータ回転数Ｎｍ２、バッテリの入出力制限Ｗｉｎ、Ｗｏｕｔなどである。つまり、ＨＶ−ＥＣＵ１０は、これらの信号が入力されるように構成されている。更に、ＨＶ−ＥＣＵ１０は、後ほど説明するＥＦＩ−ＥＣＵ２０から信号線４０を介して送信された、同期を取るための基準となる同期用信号が入力される。なお、ＨＶ−ＥＣＵ１０は、これらの信号の他にも、イグニッションスイッチからのイグニッション信号、シフトポジションセンサからのシフトポジション信号、ブレーキペダルポジションセンサからのブレーキペダルポジション信号などが入力されてもよい。
【００２６】
また、ＨＶ−ＥＣＵ１０は、ＥＦＩ−ＥＣＵ２０及びＭＧ−ＥＣＵ３０と、通信線５０を介して各種信号のやりとりを行なっている。つまり、ＨＶ−ＥＣＵ１０は、処理部１１の演算結果などの各種信号をＥＦＩ−ＥＣＵ２０及びＭＧ−ＥＣＵ３０に送信する。例えば、ＨＶ−ＥＣＵ１０は、燃料噴射制御を示す指令、点火制御開始を示す指令などをＥＦＩ−ＥＣＵ２０に送信する。また、ＨＶ−ＥＣＵ１０は、第１モータ７１のトルク指令Ｔｍ１、第２モータ７２のトルク指令Ｔｍ２、第１モータ７１のキャンセルトルクＴｆｃ、キャンセルトルクＴｆｃを発生させるタイミングである補正タイミングｔ１などをＭＧ−ＥＣＵ３０に送信する。
【００２７】
キャンセルトルクＴｆｃは、エンジンの燃料カットに伴って発生するトルク抜けを打ち消すために、第１モータ７１のトルクを補正する値である。言い換えると、キャンセルトルクＴｆｃは、図６，７に示すように、トルク抜け時に駆動軸としてのリングギヤ軸に作用するトルクを打ち消す方向にトルクが作用するようにするための補正値である。詳述すると、トルク抜けに伴うトルクショックを軽減する必要がある場合、ＨＶ−ＥＣＵ１０は、補正トルクＴαとしてキャンセルトルクＴｆｃを設定する。一方、トルク抜けに伴うトルクショックを軽減する必要がない場合、ＨＶ−ＥＣＵ１０は、補正トルクＴαとして０を設定する。よって、ＨＶ−ＥＣＵ１０は、第１モータ７１の補正トルクＴαとして、キャンセルトルクＴｆｃや０をＭＧ−ＥＣＵ３０に送信する。
【００２８】
また、ＨＶ−ＥＣＵ１０は、ＥＦＩ−ＥＣＵ２０から通信線５０を介して送信された補正タイミングｔ１を受信する。通信線５０を介して送受信される信号は、データと称することもできる。なお、補正タイミングｔ１は、トルク抜けが発生するタイミングを示すものである。このため、補正タイミングｔ１は、トルク抜けに伴うトルクショックを軽減するためのキャンセルトルクＴｆｃを第１モータ７１に出力させるタイミング、と言う事もできる。また、補正タイミングは、トルク抜け発生時間やトルク抜け開始時間と称することもできる。
【００２９】
ＥＦＩ−ＥＣＵ２０は、特許請求の範囲における第１制御部、内燃機関制御装置に相当する。このＥＦＩ−ＥＣＵ２０は、エンジン制御を行うものであり、図２に示すように、処理部２１、記憶部２２、タイマ２３、入出力部２４、通信部２５などを備えて構成されている。処理部２１は、記憶部２２に記憶されたプログラム、入出力部２４や通信部２５を介して取得した信号に基づいて演算処理を実行する。また、処理部２１は、その演算結果を入出力部２４や通信部２５を介して出力する。また、処理部２１は、タイマ２３を用いて、同期用信号の有効エッジを基準として経過時間を判定する。なお、ＥＦＩ−ＥＣＵ２０は、エンジンの停止時からの有効エッジの入力回数をカウントするカウンタ（カウント手段）を備えていてもよい。つまり、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０と同様に、有効エッジをカウントする。
【００３０】
また、ＥＦＩ−ＥＣＵ２０は、クランク角センサ６１、カム角センサ６２などが接続されている。クランク角センサ６１は、クランクシャフトの回転位置を検出するものであり、クランク角に応じたクランク角信号を出力する。カム角センサ６２は、燃焼室へ吸排気を行なう吸気バルブや排気バルブを開閉するカムシャフトの回転位置を検出するものであり、カムシャフトの回転位置に応じて、カムポジション信号を出力する。
【００３１】
処理部２１は、入出力部２４を介して、クランク角信号、カムポジション信号を取得する。つまり、ＥＦＩ−ＥＣＵ２０は、これらの信号が入力されるように構成されている。処理部２１は、取得したクランク角信号に基づいてエンジン回転数Ｎｅを算出したり、カムポジション信号などから気筒が上死点に達したことを表すＴＤＣ信号や３６０°ＣＡ毎に出力が反転するＧ２信号などを生成したりする。そして、処理部２１は、エンジン制御を行う際には、このクランク角信号、ＴＤＣ信号、Ｇ２信号などを用いる。なお、ＣＡは、crank angleの略称である。また、ＴＤＣは、Top Dead Centerの略称である。
【００３２】
ところで、クランク角信号、ＴＤＣ信号、Ｇ２信号の夫々は、エンジンの回転に伴って発生し、エンジンの制御に用いられるパルス信号である。よって、本実施形態では、クランク角信号、ＴＤＣ信号、Ｇ２信号のいずれかを同期用信号として採用する。このように、エンジンの制御に用いられるパルス信号を同期用信号として採用することで、エンジンの動作に対応してキャンセルトルクを発生させることができるので好ましい。しかしながら、同期用信号としては、これに限定されない。また、本実施形態で採用する同期用信号は、エンジンの制御に用いられ、エンジンのサイクルにおける工程に同期して基準エッジが発生する信号、と言い換えることができる。なお、１サイクルは、図６，７に示すように、吸入工程、圧縮工程、膨張工程、排気工程からなる。よって、１サイクルにおける工程は、これらの工程である。
【００３３】
一例として、図６，７に、同期用信号としてのＧ２信号の波形を示している。図６，７に示すように、Ｇ２信号は、クランク角１回転、つまり、７２０°ＣＡ毎にエッジが発生する。この７２０°ＣＡ毎にエッジは、下矢印で示したダウンエッジである。また、このＧ２信号は、図６，７に示すように、エンジンが第１モータ７１によって始動されて回転することに伴って発生するパルス信号である。なお、図６，７においては、Ｇ２信号を同期用信号と記載している。
【００３４】
ＥＦＩ−ＥＣＵ２０は、この同期用信号を、信号線４０を介して、ＨＶ−ＥＣＵ１０及びＭＧ−ＥＣＵ３０に送信する。つまり、ＥＦＩ−ＥＣＵ２０は、通信線５０ではなく、信号線４０を介してＨＶ−ＥＣＵ１０及びＭＧ−ＥＣＵ３０に同期用信号を送信する。従って、各ＥＣＵは、同期用信号が入力されることになる。言い換えると、各ＥＣＵは、同期用信号として、同じパルス信号が取得可能に構成されている。動力制御システム１００は、この同期用信号を用いて、各ＥＣＵで同期を取るものである。言い換えると、動力制御システム１００は、この同期用信号を用いて、同期補正を行うものである。
【００３５】
なお、ＥＦＩ−ＥＣＵ２０は、クランク角信号やカムポジション信号の他にも、エンジンの状態を検出する種々のセンサからの信号が入力されてもよい。この信号は、例えば、水温センサからの冷却水温信号、スロットルバルブポジションセンサからのスロットルポジション信号、エアフローメータからのエアフローメータ信号、吸気温センサからの吸気温信号などがあげられる。
【００３６】
上述のように、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０と、通信線５０を介して各種信号のやりとりを行なっている。これによって、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０から送信された燃料噴射制御を示す指令、点火制御開始を示す指令などを受信する。また、ＥＦＩ−ＥＣＵ２０は、処理部２１の演算結果として、補正タイミングｔ１などの信号をＨＶ−ＥＣＵ１０に送信する。
【００３７】
ＭＧ−ＥＣＵ３０は、特許請求の範囲における第２制御部に相当する。このＭＧ−ＥＣＵ３０は、第１モータ７１及び第２モータ７２の駆動制御を行うものであり、図２に示すように、処理部３１、記憶部３２、タイマ３３、入出力部３４、通信部３５などを備えて構成されている。また、ＭＧ−ＥＣＵ３０は、第１モータ７１、第２モータ７２などが接続されている。
【００３８】
第１モータ７１及び第２モータ７２は、いずれも発電機として駆動することができると共に電動機として駆動できる周知の同期発電電動機として構成されており、図示を省略するインバータを介してバッテリと電力のやりとりを行なう。なお、エンジンを始動させる際には、第１モータ７１が用いられる。
【００３９】
処理部３１は、記憶部３２に記憶されたプログラム、入出力部３４や通信部３５を介して取得した信号に基づいて演算処理を実行する。また、処理部３１は、その演算結果を入出力部３４や通信部３５を介して出力する。また、処理部３１は、タイマ３３を用いて、同期用信号の有効エッジを基準として経過時間を判定する。なお、ＭＧ−ＥＣＵ３０は、エンジンの停止時からの基準エッジの入力回数をカウントするカウンタ（カウント手段）を備えていてもよい。つまり、ＭＧ−ＥＣＵ３０は、ＨＶ−ＥＣＵ１０やＥＦＩ−ＥＣＵ２０と同様に、有効エッジをカウントする。
【００４０】
処理部３１は、入出力部３４や通信部３５を介して、第１モータ７１及び第２モータ７２を駆動制御するために必要な信号が入力される。この信号は、例えば、第１モータ７１及び第２モータ７２の回転子の回転位置を検出する回転位置検出センサからの信号、電流センサにより検出される第１モータ７１及び第２モータ７２に印加される相電流などがあげられる。また、処理部３１は、インバータへのスイッチング制御信号を出力する。
【００４１】
上述のように、ＭＧ−ＥＣＵ３０は、ＨＶ−ＥＣＵ１０と、通信線５０を介して各種信号のやりとりを行なっている。これによって、ＭＧ−ＥＣＵ３０は、ＨＶ−ＥＣＵ１０から送信されたトルク指令Ｔｍ１、トルク指令Ｔｍ２、補正トルクＴα、補正タイミングｔ１などを受信する。また、ＨＶ−ＥＣＵ１０は、ＥＦＩ−ＥＣＵ２０から信号線４０を介して送信された同期用信号が入力される。
【００４２】
このような動力制御システム１００は、例えば、アクセル開度Ａｃｃと車速Ｖとに基づき駆動軸に出力すべき要求トルクを計算し、この要求トルクに対応する要求動力がリングギヤ軸に出力されるように、エンジンと第１モータ７１と第２モータ７２を制御する。
【００４３】
また、動力制御システム１００は、ＨＶ−ＥＣＵ１０，ＥＦＩ−ＥＣＵ２０，ＭＧ−ＥＣＵ３０の全てに同期用信号が入力される。よって、ＨＶ−ＥＣＵ１０，ＥＦＩ−ＥＣＵ２０，ＭＧ−ＥＣＵ３０の夫々は、同期用信号を用いて同期を取ることが可能となる。
【００４４】
ここで、図３〜図７を用いつつ、動力制御システム１００の処理動作に関して説明する。なお、図６において、第１気筒のタイミングｔ１５以降、第３気筒のタイミングｔ１２以降、第４気筒のタイミングｔ１３以降、第２気筒のタイミングｔ１４以降は、実施されない。一方、図７においては、通常、第１気筒のタイミングｔ２８以降、第３気筒のタイミングｔ２４以降、第４気筒のタイミングｔ２５以降、第２気筒のｔ２６以降は、実施されない。
【００４５】
まず、ＨＶ−ＥＣＵ１０の処理動作に関して説明する。図３に示すフローチャートは、エンジンの燃料カットが行なわれる際のＨＶ−ＥＣＵ１０の処理動作である。ＨＶ−ＥＣＵ１０は、図３に示すフローチャートの処理を所定時間毎に実行する。ＨＶ−ＥＣＵ１０は、このフローチャートで、燃料カット時におけるＭＧ−ＥＣＵ３０へのトルク指令などを行う。よって、このフローチャートは、補正トルク算出ルーチンと言う事もできる。
【００４６】
なお、ＨＶ−ＥＣＵ１０は、通信部１５を介して、ＥＦＩ−ＥＣＵ２０から出力された補正タイミングｔ１、トルク抜け開始回転回数Ｎｅｎｕｍを、所定時間毎に取得するように構成されている。このトルク抜け開始回転回数Ｎｅｎｕｍとは、トルク抜けが開始されるエンジン回転回数である。以下においては、トルク抜け開始回転回数を開始エッジ数と省略して記載することもある。
【００４７】
ステップＳ１０では、燃料カット実施フラグＦｅ＝１であるか否かを判定する。このフラグＦｅは、ＥＦＩ−ＥＣＵ２０によってセットされるフラグである。処理部１１は、Ｆｅ＝１でない場合は補正トルクＴαとしてキャンセルトルクＴｆｃを設定する必要がないとみなしてステップＳ１４へ進む。また、処理部１１は、Ｆｅ＝１である場合は補正トルクＴαとしてキャンセルトルクＴｆｃを設定する必要があるとみなしてステップＳ１１へ進む。
【００４８】
ステップＳ１１では、補正タイミングｔ１がリセット値であるか否かを判定する。この補正タイミングｔ１は、ＥＦＩ−ＥＣＵ２０によって設定される値である。後ほど説明するが、ＥＦＩ−ＥＣＵ２０は、エンジン停止条件が成立しない場合は補正タイミングｔ１をリセットし、エンジン停止条件が成立して燃料カットを実施する場合に補正タイミングｔ１を算出する。なお、本実施形態では、リセット値として最大値を採用する。よって、処理部１１は、補正タイミングｔ１がリセット値でないと判定した場合、補正トルクＴαとしてキャンセルトルクＴｆｃを設定する必要があるとみなしてステップＳ１２へ進む。また、処理部１１は、補正タイミングｔ１がリセット値であると判定した場合、補正トルクＴαとしてキャンセルトルクＴｆｃを設定する必要がないとみなしてしてステップＳ１４へ進む。
【００４９】
ステップＳ１２では、補正トルクＴαの設定を行う。このとき、エンジン停止条件が成立しており、エンジンの燃料カットに伴ってトルク抜けが生じるとみなせる。よって、処理部１１は、トルク抜けに伴うトルクショックを軽減するために補正トルクＴα＝キャンセルトルクＴｆｃとする（第１設定手段）。つまり、処理部１１は、燃料カットによるトルクを打ち消すためのキャンセルトルクＴｆｃを設定する。なお、ここでのキャンセルトルクＴｆｃは、例えば、適合によって決まる値、すなわち定数である。
【００５０】
一方、ステップＳ１４では、補正トルクＴαの設定を行う。このとき、エンジン停止条件が成立しない場合であり、エンジンの燃料カットに伴って発生するトルク抜けも生じないとみなせる。よって、処理部１１は、トルク抜けに伴うトルクショックを軽減する必要がないため、補正トルクＴα＝０とする。
【００５１】
ステップＳ１３では、ステップＳ１２又はＳ１４で設定した補正トルクＴαと、ＥＦＩ−ＥＣＵ２０から取得した補正タイミングｔ１及び開始エッジ数Ｎｅｎｕｍを送信する（第１送信手段）。このとき、処理部１１は、通信部１５及び通信線５０を介して、ＭＧ−ＥＣＵ３０へ送信する。しかしながら、本発明は、これに限定されない。ＭＧ−ＥＣＵ３０で開始エッジ数Ｎｅｎｕｍを用いない場合、ＨＶ−ＥＣＵ１０は、開始エッジ数Ｎｅｎｕｍを送信する必要がない。この場合、ＨＶ−ＥＣＵ１０は、補正トルクＴαと補正タイミングｔ１とをＭＧ−ＥＣＵ３０へ送信することになる。
【００５２】
なお、本実施形態は、ＨＶ−ＥＣＵ１０がＥＦＩ−ＥＣＵ２０及びＭＧ−ＥＣＵ３０を制御することでトルクの分配などを行う例を採用しており、ＨＶ−ＥＣＵ１０がキャンセルトルクＴｆｃを設定するか否かを把握する必要があるため、上述のような処理を行う。しかしながら、本発明はこれに限定されない。本発明は、ＨＶ−ＥＣＵ１０がステップＳ１０を行なわなくても目的は達成できる。後ほど説明するが、ＥＦＩ−ＥＣＵ２０は、エンジン停止条件が成立しない場合は補正タイミングｔ１をリセットし、エンジン停止条件が成立して燃料カットを実施する場合に補正タイミングｔ１を算出する。そして、ＥＦＩ−ＥＣＵ２０は、補正タイミングｔ１をＨＶ−ＥＣＵ１０に送信する。よって、ＨＶ−ＥＣＵ１０は、この補正タイミングｔ１を確認することで、キャンセルトルクＴｆｃを設定する必要があるか否かを判定することができる。そこで、ＨＶ−ＥＣＵ１０は、リセット値でない補正タイミングｔ１を取得した場合、補正トルクＴαとしてキャンセルトルクＴｆｃを設定し、取得した補正タイミングｔ１と設定した補正トルクＴαをＭＧ−ＥＣＵ３０に送信するものであればよい。なお、この場合、ＨＶ−ＥＣＵ１０は、リセット値である補正タイミングｔ１を取得すると、補正トルクＴαとして０を設定し、取得した補正タイミングｔ１と設定した補正トルクＴαをＭＧ−ＥＣＵ３０に送信する。
【００５３】
次に、ＥＦＩ−ＥＣＵ２０の処理動作に関して説明する。ＥＦＩ−ＥＣＵ２０は、燃料カットを実施してエンジンを停止するために、所定時間毎に、図４に示すフローチャートの処理を実行する。よって、このフローチャートは、エンジン停止制御ルーチンと称することもできる。
【００５４】
ステップＳ２０では、エンジン停止条件が成立したか否かを判定する。エンジン停止条件とは、エンジンに対する燃料噴射の停止条件である。処理部２１は、エンジン停止条件が成立したと判定した場合はステップＳ２１へ進み、エンジン停止条件が成立していないと判定した場合はステップＳ３２へ進む。処理部２１は、例えば、ＨＶ−ＥＣＵ１０から燃料カット指令があった場合や、自身で燃料カットを実施すると判断した場合に、エンジン停止条件が成立したと判定する。また、処理部２１は、ＨＶ−ＥＣＵ１０からのパワー指令値より多くのパワーが出ている場合などに、自身で燃料カットを実施すると判断する。このため、エンジン停止条件は、燃料カット条件、と言い換えることもできる。なお、エンジン停止条件は、これらに限定されるものではない。
【００５５】
ステップＳ３２では、処理部２１は、燃料カット実施フラグＦｅ及び補正タイミングｔ１をリセットする。つまり、処理部２１は、フラグＦｅ＝０、補正タイミングｔ１＝最大値とする。
【００５６】
ステップＳ３１では、ＭＧ−ＥＣＵ３０に対して、燃料カット実施フラグＦｅ、補正タイミングｔ１、及び開始エッジ数Ｎｅｎｕｍを送信する。このとき、処理部２１は、通信部２５及び通信線５０を介して、ＨＶ−ＥＣＵ１０へ送信する（第１送信手段）。処理部２１は、ステップＳ３２を経てステップＳ３１を実行する場合、フラグＦｅ＝０、補正タイミングｔ１＝最大値をＨＶ−ＥＣＵ１０へ送信することになる。なお、この場合、処理部２１は、開始エッジ数Ｎｅｎｕｍとして、例えば成り行き値を送信する。
【００５７】
上述のように、ＨＶ−ＥＣＵ１０は、ＭＧ−ＥＣＵ３０に対して、ＥＦＩ−ＥＣＵ２０から取得した補正タイミングｔ１，開始エッジ数Ｎｅｎｕｍを送信する。よって、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０を介して、補正タイミングｔ１，開始エッジ数ＮｅｎｕｍをＭＧ−ＥＣＵ３０に送信する、と言い換えることができる。つまり、ＥＦＩ−ＥＣＵ２０は、例えばタイミングｔ１１やｔ２１で、キャンセルトルクを発生させるタイミングをＭＧ−ＥＣＵ３０に通知する。なお、本実施形態におけるキャンセルトルクを発生させるタイミングは、補正タイミングｔ１と、開始エッジ数ｎ又はｎ＋１とである。
【００５８】
ステップＳ２１では、燃料カット実施フラグＦｅ＝０であるか否かを判定する。このフラグＦｅは、燃料カットを実施中であるか否かを示すフラグであり、燃料カットを実施中の場合は１がセットされ、燃料カットを実施中でない場合は０がセットされる。処理部２１は、フラグＦｅ＝０と判定した場合はステップＳ２２へ進み、フラグＦｅ＝１と判定した場合はステップＳ３３へ進む。なお、処理部２１は、後ほど説明するステップＳ３０でフラグＦｅに１をセットする。
【００５９】
ステップＳ２２では、現在、排気工程である気筒の番号を、エンジン停止開始気筒番号Ｃｙｌｆｃに設定する（気筒設定手段）。つまり、処理部２１は、エンジン停止条件が成立した場合、エンジンにおける複数の気筒のうち、燃料カット条件の成立時に排気工程である気筒を燃料カットの開始気筒に設定する。例えば、図６の例において、タイミングｔ１１で燃料カット条件が成立した場合、処理部２１は、Ｃｙｌｆｃとして第３気筒を設定することになる。
【００６０】
ステップＳ２３では、補正タイミングｔ１を算出する（算出手段）。このとき、処理部２１は、燃料カットに伴って発生するトルク抜けのタイミングを、同期用信号を基準とした補正タイミングｔ１として算出する。詳述すると、処理部２１は、補正タイミングｔ１として、同期用信号における基準エッジからの経過時間を算出する。よって、補正タイミングｔ１は、ＥＦＩ−ＥＣＵ２０によって算出された、同期用信号における有効エッジからの経過時間、といえる。
【００６１】
通常、エンジンは、燃料カット条件が成立した場合、即噴射が停止され、次の膨張工程からトルク抜けが発生することになる。例えば、図６の例において、タイミングｔ１１で燃料カット条件が成立した場合、エンジンは、タイミングｔ１２の吸入工程で燃料の噴射が停止され、タイミングｔ１４の膨張工程からトルク抜けが発生することになる。よって、この場合、処理部２１は、同期用信号における基準エッジが入力されたタイミングｔ１０から、トルク抜けが発生するタイミングｔ１４までの経過時間を補正タイミングｔ１として算出する。しかしながら、補正タイミングｔ１の算出方法は、これに限定されない。
【００６２】
なお、処理部２１は、エンジンの回転数の低下に応じて、補正タイミングｔ１を算出してもよい（算出手段）。つまり、処理部２１は、補正タイミングｔ１として、同期用信号における基準エッジからの経過時間を算出する際に、エンジンの回転数の低下を考慮してもよい。このようにすることで、処理部２１は、現在のエンジンの回転数に適したトルク抜けタイミング、すなわち補正タイミングｔ１を算出することができる。従って、ＭＧ−ＥＣＵ３０は、現在のエンジンの回転数に適したトルク抜けタイミングで、キャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御することができる。なお、このＭＧ−ＥＣＵ３０による駆動制御に関しては、後ほど説明する。
【００６３】
ステップＳ２４では、燃料カット実施回転回数Ｎｅｎｕｍｆｃにエンジン回転回数を設定する。この燃料カット実施回転回数Ｎｅｎｕｍｆｃとは、燃料カットが実施されるエンジン回転回数である。以下においては、燃料カット実施回転回数を、実施エッジ数と省略して記載することもある。処理部２１は、ステップＳ２４では、実施エッジ数Ｎｅｎｕｍｆｃとして、現在のエンジン回転回数を設定する。例えば、図６においては、実施エッジ数Ｎｅｎｕｍｆｃとしてエンジン回転回数ｎが設定される。
【００６４】
ステップＳ２５では、３６０°ＣＡ時間＜通信ディレイ時間であるか否かを判定する。なお、この通信ディレイ時間は、通信線５０を介して、ＥＦＩ−ＥＣＵ２０からＭＧ−ＥＣＵ３０に対して信号を送信する際の遅延時間である。言い換えると、通信ディレイ時間は、ＥＦＩ−ＥＣＵ２０が通信線５０を介して送信した信号を、ＭＧ−ＥＣＵ３０が受信するのに要する時間である。また、通信ディレイ時間は、通信線５０や各通信部１５，２５，３５などの異常によって生じる遅延時間とは異なり、正常に通信を行なっている際に生じる遅延時間である。よって、処理部２１は、例えば、通信線５０における現在の通信量などによって、通信ディレイ時間を把握することができる。また、通信ディレイ時間は、処理遅れ時間の最悪値であっても採用することができる。
【００６５】
また、図６の例において、タイミングｔ１１で燃料カット条件が成立した場合、エンジンは、タイミングｔ１２の吸入工程で噴射が停止され、タイミングｔ１４の膨張工程からトルク抜けが発生することになる。この吸入工程から膨張工程までは３６０°ＣＡである。更に、後ほど説明するが、ＥＦＩ−ＥＣＵ２０は、トルク抜けが発生するタイミングでキャンセルトルクＴｆｃを発生させるために、通信線５０を介して補正タイミングｔ１などをＭＧ−ＥＣＵ３０に送信する。なお、吸入工程における燃料噴射の停止から膨張工程における点火停止までは、つまり、図６のタイミングｔ１２からｔ１４の時間や図７のタイミングｔ２４からｔ２６の時間は、エンジン回転数Ｎｅが２０００ｒｐｍ程度で、時間は３０ｍｓ程度である。
【００６６】
よって、処理部２１は、３６０°ＣＡ時間＜通信ディレイ時間でないと判定した場合、燃料カットの開始気筒におけるエンジン停止条件が成立した直後の膨張工程までに、補正タイミングｔ１などをＭＧ−ＥＣＵ３０が受信できるとみなしてステップＳ３８へ進む。一方、処理部２１は、３６０°ＣＡ時間＜通信ディレイ時間であると判定した場合、燃料カットの開始気筒におけるエンジン停止条件が成立した直後の膨張工程までに、補正タイミングｔ１などをＭＧ−ＥＣＵ３０が受信できないとみなしてステップＳ２６へ進む。
【００６７】
ステップＳ３８では、燃料カットを実施する。ステップＳ３９では、フラグＦｄｅｌａｙをリセットする（言い換えるとオフする）。フラグＦｄｅｌａｙ＝１は、燃料カットの実施が許可状態を示すものである。一方、フラグＦｄｅｌａｙ＝０は、燃料カットの実施が禁止状態を示すものである。よって、ＥＦＩ−ＥＣＵ２０は、フラグＦｄｅｌａｙとして１がセットされている場合は燃料カットを実施することができ、フラグＦｄｅｌａｙとして０がセットされている場合は燃料カットを実施することができない。つまり、フラグＦｄｅｌａｙは、燃料カットの実施タイミングを調整するために設けられている。言い換えると、フラグＦｄｅｌａｙは、燃料カットの実施タイミングを遅らせるか否かを調整するために設けられている。ステップＳ３９では、処理部２１は、３６０°ＣＡ時間＜通信ディレイ時間でないと判定しているため、燃料カットの実施タイミングを遅らせる必要がないとみなして、フラグＦｄｅｌａｙとして０をセットする。
【００６８】
一方、ステップＳ２６では、実施エッジ数Ｎｅｎｕｍｆｃを繰り上げる。処理部２１は、３６０°ＣＡ時間＜通信ディレイ時間であるため、燃料カットを実施するタイミングを遅らせるべく、実施エッジ数Ｎｅｎｕｍｆｃを繰り上げる（タイミング調整手段）。つまり、ＥＦＩ−ＥＣＵ２０は、自身とＭＧ−ＥＣＵ３０との通信遅延時間がエンジンにおける吸入工程から膨張工程までの時間よりも長い場合、燃料カットが開始されるタイミングを通常よりも遅くなるように燃料カットのタイミングを調整する。例えば、エンジンが高回転の場合、動力制御システム１００は、補正タイミングｔ１を十分に確保できないこともありうる。しかしながら、動力制御システム１００は、ＥＦＩ−ＥＣＵ２０がステップＳ２６を実施することで、補正タイミングｔ１を確保しやすくなる。
【００６９】
ここでは、一例として、実施エッジ数Ｎｅｎｕｍｆｃ＝実施エッジ数Ｎｅｎｕｍｆｃ＋１とする。つまり、ステップＳ２４で設定した実施エッジ数Ｎｅｎｕｍｆｃに１を加算することで、実施エッジ数Ｎｅｎｕｍｆｃを再設定する。このように１を加算することで、燃料カットの実施を１周期遅らせる。なお、ここでの１周期は、７２０°ＣＡに相当する。ただし、本発明は、１周期に限定されるものではない。本発明は、２周期以上であっても燃料カットの実施を遅らせることができる。
【００７０】
例えば、図７の例において、タイミングｔ２１で燃料カット条件が成立した場合、処理部２１は、燃料カットを開始する気筒として、第３気筒を設定することになる。そして、処理部２１は、ステップＳ２５において３６０°ＣＡ時間＜通信ディレイ時間でないと判定した場合、タイミングｔ２１の直後の吸入工程で噴射が停止され、タイミングｔ２２の膨張工程からトルク抜けが発生することになる。この場合のエンジントルクの状態は、図７の破線で示している。
【００７１】
しかしながら、処理部２１は、ステップＳ２５において３６０°ＣＡ時間＜通信ディレイ時間であると判定した場合、燃料カットの実施を遅らせるために実施エッジ数Ｎｅｎｕｍｆｃを繰り上げる。つまり、処理部２１は、タイミングｔ２４の吸入工程で噴射が停止され、タイミングｔ２６の膨張工程からトルク抜けが発生するようにするために、ステップＳ２４で設定した実施エッジ数Ｎｅｎｕｍｆｃに１を加算する。エンジン回転数が高く、燃料噴射の停止までの時間に余裕がない場合は、例えば１周期後の同じ気筒から噴射を停止することで、ＭＧ−ＥＣＵ３０に対する補正タイミングｔ１と補正トルクＴαの通知までの時間を確保することができる。この場合のエンジントルクの状態は、図７の実線で示しており、タイミングｔ２６からｔ２７でトルク抜けが発生する。
【００７２】
なお、処理部２１は、ステップＳ２５において３６０°ＣＡ時間＜通信ディレイ時間であると判定した場合、ステップＳ２２で設定した開始気筒を別の気筒に変更してもよい。これによっても、ＥＦＩ−ＥＣＵ２０は、ＭＧ−ＥＣＵ３０に対する補正タイミングｔ１と補正トルクＴαの通知までの時間を確保することができる。
【００７３】
ステップＳ２７では、フラグＦｄｅｌａｙを設定する。処理部２１は、ステップＳ２６を実施しているため、燃料カットの実施タイミングを遅らせる必要があるとみなして、フラグＦｄｅｌａｙとして１をセットする。図７の例では、処理部２１は、タイミングｔ２１でＦｄｅｌａｙとして１をセットする（言い換えるとオンする）。
【００７４】
ステップＳ２８では、有効エッジからの経過時間≧補正タイミングｔ１であるか否かを判定する。このとき、処理部２１は、タイマ２３を用いて、同期用信号の有効エッジを基準として計測した経過時間に基づいて、経過時間≧補正タイミングｔ１であるか否かを判定する。そして、処理部２１は、経過時間≧補正タイミングｔ１でないと判定した場合は、吸入工程から直後の膨張工程までの間に、エンジン回転回数が更新されない、すなわち、有効エッジが入力されないとみなしてステップＳ４０へ進む。一方、処理部２１は、経過時間≧補正タイミングｔ１であると判定した場合は、吸入工程から直後の膨張工程までの間に、エンジン回転回数が更新される、すなわち、有効エッジが入力されるとみなしてステップＳ２９へ進む。
【００７５】
例えば、タイミングｔ２１で燃料カット条件が成立した場合、処理部２１は、第３気筒を開始気筒として設定することになる。この場合、エンジンは、タイミングｔ２１直後の吸入工程で噴射が停止され、タイミングｔ２２の膨張工程からトルク抜けが発生することになる。このとき、ＥＦＩ−ＥＣＵ２０は、タイミングｔ２１からｔ２２までの間に、有効エッジが入力されないため、エンジン回転数をｎから更新しない。よって、燃料カットを実施するタイミングのエンジン回転回数ｎとトルク抜けが発生するタイミングのエンジン回転回数ｎとが同じになる。従って、処理部２１は、吸入工程から直後の膨張工程までの間に、エンジン回転回数が更新されないとみなしてステップＳ４０へ進む。
【００７６】
これに対して、タイミングｔ２２の直前で燃料カット条件が成立した場合、処理部２１は、第２気筒を開始気筒として設定することになる。この場合、エンジンは、タイミングｔ２２の吸入工程で噴射が停止され、タイミングｔ２４の膨張工程からトルク抜けが発生することになる。このとき、ＥＦＩ−ＥＣＵ２０は、タイミングｔ２２からｔ２４までの間に、有効エッジが入力されるため、エンジン回転数をｎからｎ＋１に更新することになる。よって、燃料カットを実施するタイミングのエンジン回転回数ｎとトルク抜けが発生するタイミングのエンジン回転回数ｎ＋１とが異なる。従って、処理部２１は、吸入工程から直後の膨張工程までの間に、エンジン回転回数が更新されるとみなしてステップＳ２９へ進む。
【００７７】
ステップＳ４０では、開始エッジ数Ｎｅｎｕｍ＝実施エッジ数Ｎｅｎｕｍｆｃとする。このとき、処理部２１は、開始エッジ数Ｎｅｎｕｍとして、現在設定されている実施エッジ数Ｎｅｎｕｍｆｃを設定する。一方、ステップＳ２９では、開始エッジ数Ｎｅｎｕｍ＝実施エッジ数Ｎｅｎｕｍｆｃ＋１とする。このとき、処理部２１は、開始エッジ数Ｎｅｎｕｍとして、現在設定されている実施エッジ数Ｎｅｎｕｍｆｃに１を加算して設定する。そして、ステップＳ３０では、処理部２１は、フラグＦｅとして１をセットする（言い換えるとオンする）。なお、処理部２１は、タイミングｔ２１〜ｔ２７に示すように、トルク補正が完了すると、フラグＦｅとして０をセットする（言い換えるとオフする）。
【００７８】
処理部２１は、ステップＳ４０，Ｓ３０を経てステップＳ３１を実行する場合、フラグＦｅ＝１、ステップＳ２３で算出した補正タイミングｔ１、ステップＳ４０で設定した開始エッジ数ＮｅｎｕｍをＨＶ−ＥＣＵ１０に送信する（内燃機関送信手段）。つまり、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０に対して、エンジン回転回数ｎ＋補正タイミングｔ１でトルク抜けが発生することを知らせる。この知らせを受けたＨＶ−ＥＣＵ１０は、ＭＧ−ＥＣＵ３０に対して、エンジン回転回数ｎ＋補正タイミングｔ１でキャンセルトルクＴｆｃを発生させるように指令する。言い換えると、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０を介して間接的に、ＭＧ−ＥＣＵ３０に対して、エンジン回転回数ｎ＋補正タイミングｔ１でキャンセルトルクＴｆｃを発生させるように指令する。
【００７９】
また、処理部２１は、ステップＳ２９，Ｓ３０を経てステップＳ３１を実行する場合、フラグＦｅ＝１、ステップＳ２３で算出した補正タイミングｔ１、ステップＳ２９で設定した開始エッジ数ＮｅｎｕｍをＨＶ−ＥＣＵ１０に送信する（内燃機関送信手段）。つまり、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０に対して、エンジン回転回数（ｎ＋１）＋補正タイミングｔ１でトルク抜けが発生することを知らせる。この知らせを受けたＨＶ−ＥＣＵ１０は、ＭＧ−ＥＣＵ３０に対して、エンジン回転回数（ｎ＋１）＋補正タイミングｔ１でキャンセルトルクＴｆｃを発生させるように指令する。言い換えると、ＥＦＩ−ＥＣＵ２０は、ＨＶ−ＥＣＵ１０を介して間接的に、ＭＧ−ＥＣＵ３０に対して、エンジン回転回数（ｎ＋１）＋補正タイミングｔ１でキャンセルトルクＴｆｃを発生させるように指令する。
【００８０】
このように、ＥＦＩ−ＥＣＵ２０は、ステップＳ２３で算出した補正タイミングｔ１に加えて、自身でカウントした有効エッジの入力回数である開始エッジ数ＮｅｎｕｍをＨＶ−ＥＣＵ１０に送信してもよい。動力制御システム１００は、補正タイミングｔ１と共に、開始エッジ数Ｎｅｎｕｍを送信するので、燃料カットの実施タイミングを遅らせた場合であっても、トルク抜けが発生するタイミングをＭＧ−ＥＣＵ３０に知らせることができる。なお、本発明は、これに限定されない。ＥＦＩ−ＥＣＵ２０は、少なくともステップＳ２３で算出した補正タイミングｔ１をＨＶ−ＥＣＵ１０に対して送信するものであれば、目的を達成することができる。
【００８１】
また、ステップＳ３３では、Ｆｄｅｌａｙ＝０であるか否かを判定する。処理部２１は、Ｆｄｅｌａｙ＝０であると判定した場合はステップＳ３１へ進み、Ｆｄｅｌａｙ＝０でないと判定した場合はステップＳ３４へ進む。つまり、処理部２１は、フラグＦｅに１がセットされており、且つ、Ｆｄｅｌａｙに０がセットされている場合は、ＨＶ−ＥＣＵ１０に対する送信処理を実行するためにステップＳ３１へ進む。
【００８２】
一方、Ｆｄｅｌａｙに１がセットされている場合、燃料カットの実施が禁止状態である。上述のように、処理部２１は、燃料カットの実施を遅らせるために、Ｆｄｅｌａｙとして１をセットする。よって、処理部２１は、フラグＦｅに１がセットされており、且つ、Ｆｄｅｌａｙに０がセットされている場合は、遅らせた燃料カットの実施タイミングになったか否かを判定するためにステップＳ３４へ進む。
【００８３】
ステップＳ３４では、エンジン回転回数＝実施エッジ数Ｎｅｎｕｍｆｃであるか否かを判定する。このとき、処理部２１は、現在のエンジン回転回数と、ステップＳ２６で設定した実施エッジ数Ｎｅｎｕｍｆｃとを比較する。そして、処理部２１は、エンジン回転回数＝実施エッジ数Ｎｅｎｕｍｆｃであると判定した場合はステップＳ３５へ進み、エンジン回転回数＝実施エッジ数Ｎｅｎｕｍｆｃでないと判定した場合はステップＳ３１へ進む。
【００８４】
ステップＳ３５では、排気工程の気筒番号＝Ｃｙｌｆｃであるか否かを判定する。このとき、処理部２１は、現在の排気工程である気筒の気筒番号と、ステップＳ２２で設定したＣｙｌｆｃとを比較する。そして、処理部２１は、排気工程の気筒番号がＣｙｌｆｃであると判定した場合はステップＳ３６へ進み、排気工程の気筒番号がＣｙｌｆｃでないと判定した場合はステップＳ３１へ進む。なお、ステップＳ３６，Ｓ３７は、ステップＳ３８，Ｓ３９と同様であるため省略を説明する。
【００８５】
なお、本発明は、ＥＦＩ−ＥＣＵ２０がステップＳ２１，Ｓ２４〜Ｓ３０，Ｓ３３〜Ｓ４０を行なわなくても目的は達成できる。つまり、ＥＦＩ−ＥＣＵ２０は、ステップＳ２０でＮＯ判定の場合に、ステップＳ３２，Ｓ３１の処理を実行する。また、ＥＦＩ−ＥＣＵ２０は、ステップＳ２０でＹＥＳ判定の場合、ステップＳ２１での判定を行なうことなくステップＳ２２，Ｓ２３の処理を実行し、その後、Ｓ３１の処理を実行する。
【００８６】
次に、ＭＧ−ＥＣＵ３０の処理動作に関して説明する。図５に示すフローチャートは、ＭＧ−ＥＣＵ３０による補正トルクＴαの実行処理を示している。ＭＧ−ＥＣＵ３０は、所定時間毎に、図５に示すフローチャートの処理を実行する。ＭＧ−ＥＣＵ３０は、このフローチャートにおいて、補正トルクＴαとしてキャンセルトルクＴｆｃを発生させるなどの処理を実行する。よって、このフローチャートは、モータトルク補正ルーチンと称することでもできる。なお、ＭＧ−ＥＣＵ３０は、ＨＶ−ＥＣＵ１０がステップＳ１３にて送信した信号を受信するものである。
【００８７】
ステップＳ５０では、補正トルクＴα≠０であるか否かを判定する。処理部３１は、ＨＶ−ＥＣＵ１０から送信された補正トルクＴαが０であるかキャンセルトルクＴｆｃであるかを判定する。言い換えると、処理部３１は、ＨＶ−ＥＣＵ１０によって、補正トルクＴαとして０が設定されたか、キャンセルトルクＴｆｃが設定されたかを判定する。そして、処理部３１は、補正トルクＴαが０であると判定した場合は、トルク抜けに伴って発生するトルクをキャンセルするためのトルク補正を実行する必要がないとみなしてステップＳ５４へ進む。また、処理部３１は、補正トルクＴαがキャンセルトルクＴｆｃであると判定した場合は、トルク抜けに伴って発生するトルクをキャンセルするためのトルク補正を実行する必要があるとみなしてステップＳ５１へ進む。
【００８８】
ステップＳ５４では、モータトルク補正実行フラグＦ１をリセットする。つまり、処理部３１は、トルク補正を実行する必要がないので、フラグＦ１として０をセットする。このフラグＦ１は、トルク抜けに伴って発生するトルクの形状に合わせてキャンセルトルクＴｆｃをかけるために一定時間実行できるようするためのフラグである。
【００８９】
ステップＳ５５では、モータ出力トルクの設定を行う。処理部３１は、トルク指令Ｔｍ１を、第１モータ７１に対するモータ出力トルクとして設定する。このとき補正トルクＴαは０が設定されているため、処理部３１は、第１モータ７１に対するモータ出力トルクとして、トルク指令Ｔｍ１を設定することになる。
【００９０】
一方、ステップＳ５１では、フラグＦ１≠０であるか否かを判定する。処理部３１は、フラグＦ１＝０であると判定した場合はステップＳ５２へ進み、フラグＦ１≠０でないと判定した場合はステップＳ５６へ進む。
【００９１】
ステップＳ５２では、モータ出力トルクの設定を行う。このステップＳ５２は、特許請求の範囲における設定手段に相当する。処理部３１は、トルク指令Ｔｍ１−補正トルクＴαを、第１モータ７１に対するモータ出力トルクとして設定する。このとき、補正トルクＴαは、キャンセルトルクＴｆｃが設定されている。よって、処理部３１は、第１モータ７１に対するモータ出力トルクとして、トルク指令Ｔｍ１−キャンセルトルクＴｆｃを設定することになる。言い換えると、ＭＧ−ＥＣＵ３０は、補正タイミングｔ１を受信すると、第１モータ７１に指令する出力トルクとして、トルク抜けを打ち消すためのキャンセルトルクＴｆｃを設定する。なお、トルク指令Ｔｍ１及び補正トルクＴαは、共にＨＶ−ＥＣＵ１０から送信された信号である。
【００９２】
ステップＳ５６では、エンジン回転回数＝開始エッジ数Ｎｅｎｕｍであるか否かを判定する（判定手段）。処理部３１は、ＭＧ−ＥＣＵ３０でカウントしたエンジン回転回数と、ＨＶ−ＥＣＵ１０から送信された開始エッジ数Ｎｅｎｕｍとを比較する。上述のように、ＨＶ−ＥＣＵ１０は、ＥＦＩ−ＥＣＵ２０から送信された開始エッジ数Ｎｅｎｕｍを、ＭＧ−ＥＣＵ３０に送信する。よって、処理部３１は、ＭＧ−ＥＣＵ３０でカウントしたエンジン回転回数と、ＥＦＩ−ＥＣＵ２０が設定した開始エッジ数Ｎｅｎｕｍとを比較することになる。言い換えると、ＭＧ−ＥＣＵ３０は、自身でカウントした有効エッジの入力回数が、ＥＦＩ−ＥＣＵ２０から送信された有効エッジの入力回数と一致するか否かを判定する。そして、処理部３１は、エンジン回転回数＝開始エッジ数Ｎｅｎｕｍと判定した場合は、ステップＳ５７へ進み、エンジン回転回数＝開始エッジ数Ｎｅｎｕｍでないと判定した場合は、ステップＳ５５へ進む。
【００９３】
ステップＳ５７では、有効エッジからの経過時間≧補正タイミングｔ１であるか否かを判定する。このとき、処理部３１は、タイマ３３を用いて、同期用信号の有効エッジを基準として計測した経過時間に基づいて、経過時間≧補正タイミングｔ１であるか否かを判定する。
【００９４】
そして、処理部３１は、経過時間＝補正タイミングｔ１でないと判定した場合はステップＳ５５へ進む。つまり、処理部３１は、経過時間＝補正タイミングｔ１の場合、トルク抜けに伴うトルクを打ち消すために、第１モータ７１からキャンセルトルクＴｆｃを出力させるタイミングでないとみなして、ステップＳ５５へ進む。一方、処理部３１は、経過時間≧補正タイミングｔ１であると判定した場合はステップＳ５８へ進む。つまり、処理部３１は、経過時間＝補正タイミングｔ１の場合、トルク抜けに伴うトルクを打ち消すために、第１モータ７１からキャンセルトルクＴｆｃを出力させるタイミングであるとみなして、ステップＳ５８へ進む。このように、処理部３１は、同期用信号における有効エッジを基準として時間計測を行ない、補正タイミングｔ１と時間計測の結果とに基づいて、補正タイミングｔ１になったことを確認する（駆動手段）。なお、処理部３１は、経過時間≧補正タイミングｔ１でないと判定した場合はステップＳ５５へ進み、経過時間≧補正タイミングｔ１であると判定した場合はステップＳ５８へ進むようにしてもよい。
【００９５】
ステップＳ５８では、フラグＦ１をセットする。つまり、処理部３１は、トルク補正を実行する必要があるので、フラグＦ１として１をセットする。このように、フラグＦ１は、同期用信号の有効エッジからの経過時間が補正タイミングｔ１以上になると１がセットされる。また、処理部３１は、ステップＳ５８でフラグＦ１として１をセットするとステップＳ５２へ進む。
【００９６】
ステップＳ５３では、モータ制御を実行する（駆動手段）。処理部３１は、ステップＳ５２を経てステップＳ５３を実行する場合と、ステップＳ５５を経てステップＳ５３を実行する場合とで、第１モータ７１に出力させるトルクが異なる。まず、ステップＳ５５を経てモータ制御を行う場合、処理部３１は、トルク指令Ｔｍ１に応じたトルクが出力されるように、第１モータ７１を駆動制御することになる。
【００９７】
次に、ステップＳ５２を経てモータ制御を行う場合に関して説明する。この場合、処理部３１は、ＨＶ−ＥＣＵ１０から送信されたトルク指令Ｔｍ１、キャンセルトルクＴｆｃなどの信号を用いて第１モータ７１を駆動制御する。詳述すると、処理部３１は、ステップＳ５２を経てモータ制御を行う場合、ステップＳ５７でＹＥＳ判定をしていることになる。このため、処理部３１は、補正タイミングｔ１で、トルク指令Ｔｍ１−キャンセルトルクＴｆｃに応じたトルクが出力されるように、第１モータ７１を駆動制御することになる。つまり、処理部３１は、同期用信号を基準として補正タイミングｔ１になったことを確認し、タイミングｔ１４に示すように、補正タイミングｔ１でキャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御する。詳述すると、処理部３１は、例えばエンジン回転回数ｎ＋補正タイミングｔ１や、エンジン回転回数（ｎ＋１）＋補正タイミングｔ１で、キャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御する。
【００９８】
更に、この場合、処理部３１は、ステップＳ５６でＹＥＳ判定をしていることになる。このため、処理部３１は、ＥＦＩ−ＥＣＵ２０が設定したエンジン回転回数で、且つ補正タイミングｔ１で、トルク指令Ｔｍ１−キャンセルトルクＴｆｃに応じたトルクが出力されるように、第１モータ７１を駆動制御することになる。ＭＧ−ＥＣＵ３０は、例えば、燃料カットの開始時におけるエンジン回転回数が高い場合、各ＥＣＵ間の通信周期が遅い場合、或いは、各ＥＣＵの処理周期が遅い場合など、３６０°ＣＡ内に補正タイミングｔ１を受け取れないこともありうる。つまり、ＭＧ−ＥＣＵ３０は、補正タイミングｔ１を受け取ったとしても、トルク抜けが発生するタイミングで、キャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御することができない可能性がある。しかしながら、ＭＧ−ＥＣＵ３０は、ステップＳ５６でＹＥＳ判定後にＳ５７へ進むことで、上記のような場合であっても、ｔ２６に示すように、補正タイミングｔ１でキャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御することができる。
【００９９】
なお、処理部３１は、ステップＳＳ５３において、燃料カットによるトルクの形状に応じて、なまし処理又はレート処理を行って、第１モータ７１を駆動制御してもよい。つまり、処理部３１は、燃料カットによるトルクの形状に応じて、なまし処理又はレート処理を行い、キャンセルトルクＴｆｃに対してなまし処理又はレート処理が反映された微調整トルクが発生されるように第１モータ７１を駆動制御する。この場合、ＨＶ−ＥＣＵ１０は、ＭＧ−ＥＣＵ３０に対して、大まかなトルク指令Ｔｍ１及びキャンセルトルクＴｆｃを送信する。そして、処理部３１は、燃料カットによるトルクの大きさに応じて、なまし処理又はレート処理によってキャンセルトルクＴｆｃを微調整して、その微調整した微調整トルクを第１モータ７１に出力させる。
【０１００】
これによって、動力制御システム１００は、燃料カットによるトルクの形状に合った補正トルクを発生させることが可能となる。また、動力制御システム１００は、キャンセルトルクＴｆｃの大きさを、燃料カットによるトルクの大きさの反対方向の大きさに一致若しくは近づけることができる、と言い換えることができる。なお、燃料カットによるトルクの形状とは、図６，７に示すように、燃料カットによるトルクをタイムチャートにした場合の形状である。つまり、燃料カットによるトルクの形状は、燃料カットによるトルクの大きさの時間的な変化、と言い換えることができる。よって、動力制御システム１００は、なまし処理やレート処理を行なうことで、燃料カットによるトルクの大きさの時間的な変化と、キャンセルトルクＴｆｃの大きさの時間的な変化とを一致若しくは近づけることができる、と言い換えることができる。
【０１０１】
なお、本発明は、ＭＧ−ＥＣＵ３０がステップＳ５１，Ｓ５４、Ｓ５６，Ｓ５８を行なわなくても目的は達成できる。つまり、ＭＧ−ＥＣＵ３０は、ステップＳ５０でＮＯ判定の場合に、ステップＳ５４の処理を実施することなく、ステップＳ５５，Ｓ５３の処理を実行する。また、ＭＧ−ＥＣＵ３０は、ステップＳ５０でＹＥＳ判定の場合、ステップＳ５１，Ｓ５６の処理を実施することなく、ステップＳ５７での判定を実行する。そして、ＭＧ−ＥＣＵ３０は、ステップＳ５７でＹＥＳ判定の場合に、ステップＳ５８の処理を実施することなく、ステップＳ５２，Ｓ５３の処理を実行し、ステップＳ５７でＮＯの判定の場合にステップＳ５５，Ｓ５３の処理を実行する。
【０１０２】
ここまで説明したように、動力制御システム１００は、ＨＶ−ＥＣＵ１０、ＥＦＩ−ＥＣＵ２０、ＭＧ−ＥＣＵ３０を備えている。ＥＦＩ−ＥＣＵ２０は、燃料カットに伴って発生するトルク抜けタイミングを、同期用信号を基準とした補正タイミングｔ１として算出する。また、ＨＶ−ＥＣＵ２０は、ＭＧ−ＥＣＵ３０に対して、算出した補正タイミングｔ１を送信する。
【０１０３】
そして、ＭＧ−ＥＣＵ３０は、補正タイミングｔ１を受信すると、第１モータ７１に指令する出力トルクとして、燃料カットによるトルクを打ち消すためのキャンセルトルクＴｆｃを設定する。更に、ＭＧ−ＥＣＵ３０は、同期用信号を基準として補正タイミングｔ１になったことを確認したら、キャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御する。
【０１０４】
このように、ＭＧ−ＥＣＵ３０は、同期用信号を基準として算出された補正タイミングｔ１を取得すると共に、自身に入力されている同期用信号を基準として補正タイミングｔ１になったことを確認する。つまり、ＭＧ−ＥＣＵ３０が補正タイミングｔ１になったか否かを判定する基準点は、ＥＦＩ−ＥＣＵ２０が補正タイミングｔ１を算出するための基準点と同じである。よって、ＭＧ−ＥＣＵ３０は、トルク抜けのタイミングに合わせて、キャンセルトルクＴｆｃを発生させやすくなる。
【０１０５】
従って、動力制御システム１００は、トルク抜けタイミングと第１モータ７１からキャンセルトルクＴｆｃが出力されるタイミングとの同期精度を向上させることができる。これによって、動力制御システム１００は、トルク抜けによるショックを防ぐことができる。
【０１０６】
また、ＥＦＩ−ＥＣＵ２０は、通信ディレイ時間が３６０°ＣＡを超える場合、燃料カットの実施タイミングを遅らせる。この場合であっても、ＭＧ−ＥＣＵ３０は、有効エッジからの経過時間≧補正タイミングｔ１となったことで、キャンセルトルクＴｆｃが発生されるように第１モータ７１を駆動制御する。よって、動力制御システム１００は、通信ディレイ時間が３６０°ＣＡを超える場合であっても、トルク抜けタイミングと第１モータ７１からキャンセルトルクＴｆｃが出力されるタイミングとの同期精度を向上させることができる。
【０１０７】
更に、本実施形態では、各ＥＣＵの夫々が同期用信号を取得可能に構成されている。よって、各ＥＣＵは、同期用信号の基準エッジからの経過時間をカウントすることで互いに同期を取ることができる。つまり、動力制御システム１００は、ＨＶ−ＥＣＵ１０、ＥＦＩ−ＥＣＵ２０、ＭＧ−ＥＣＵ３０の全てのＥＣＵで同期を取ることができる。
【０１０８】
なお、本実施形態においては、一例として、ＨＶ−ＥＣＵ１０、ＥＦＩ−ＥＣＵ２０、ＭＧ−ＥＣＵ３０を備えた動力制御システム１００を採用した。つまり、本実施形態では、特許請求の範囲における第１制御部としてＨＶ−ＥＣＵ１０とＥＦＩ−ＥＣＵ２０を採用し、第２制御部としてＭＧ−ＥＣＵ３０を採用した。しかしながら、本発明はこれに限定されない。本発明は、ＨＶ−ＥＣＵ１０が含まれず、ＥＦＩ−ＥＣＵ２０とＭＧ−ＥＣＵ３０とが設けられていてもよい。つまり、本発明は、特許請求の範囲における第１制御部としてＥＦＩ−ＥＣＵ２０を採用し、第２制御部としてＭＧ−ＥＣＵ３０を採用し、且つ第１制御部としてＨＶ−ＥＣＵ１０を採用しなくてもよい。この場合、ＥＦＩ−ＥＣＵ２０は、補正トルクＴαの設定、ＭＧ−ＥＣＵ３０への補正タイミングｔ１及び補正トルクＴαの送信などを行なうことになる。つまり、この場合、ＥＦＩ−ＥＣＵ２０は、直接、ＭＧ−ＥＣＵに補正タイミングｔ１などを送信する。
【０１０９】
また、キャンセルトルクＴｆｃは、ＥＦＩ−ＥＣＵ２０又はＭＧ−ＥＣＵ３０のどちらかが算出してもよい。
【０１１０】
以上、本発明の好ましい実施形態について説明した。しかしながら、本発明は、上述した実施形態に何ら制限されることはなく、本発明の趣旨を逸脱しない範囲において、種々の変形が可能である。
【０１１１】
（変形例１）
ここで、変形例１の動力制御システム１００に関して説明する。なお、変形例１の動力制御システム１００は、上述の実施形態の動力制御システム１００と同じ構成を有しているため、便宜上各構成要素に対して同じ符号を用いる。
【０１１２】
ＥＦＩ−ＥＣＵ２０は、補正タイミングとして、同期用信号における基準エッジからのクランク角を算出する（算出手段）。そして、ＥＦＩ−ＥＣＵ２０は、補正タイミングとして、このクランク角を送信する。
【０１１３】
一方、ＭＧ−ＥＣＵ３０は、同期用信号における基準エッジを基準としてクランク角の検出を行う（駆動手段）。また、ＭＧ−ＥＣＵ３０は、自身で検出したクランク角の検出結果と、ＥＦＩ−ＥＣＵ２０で算出されたクランク角とを比較する。そして、ＭＧ−ＥＣＵ３０は、自身で検出したクランク角と、ＥＦＩ−ＥＣＵ２０で算出されたクランク角とに基づいて、補正タイミングになったことを確認する（駆動手段）。詳述すると、ＭＧ−ＥＣＵ３０は、ＥＦＩ−ＥＣＵ２０で算出されたクランク角≧自身で検出したクランク角になると、補正タイミングになったと判断する（駆動手段）。
【０１１４】
このように、ＥＦＩ−ＥＣＵ２０とＭＧ−ＥＣＵ３０は、共に有効エッジを基準としてクランク角を検出している。つまり、ＥＦＩ−ＥＣＵ２０とＭＧ−ＥＣＵ３０は、同じ基準点を用いてクランク角を検出している。そして、ＭＧ−ＥＣＵ３０は、このクランク角に基づいて、補正タイミングになったか否かを確認している。従って、変形例１の動力制御システム１００であっても、上述の実施形態と同様の効果を奏することができる。
【０１１５】
（変形例２）
ここで、変形例２の動力制御システム１００に関して説明する。なお、変形例２の動力制御システム１００は、上述の実施形態の動力制御システム１００と同じ構成を有しているため、便宜上各構成要素に対して同じ符号を用いる。
【０１１６】
ＥＦＩ−ＥＣＵ２０は、補正タイミングとして、エンジンにおける複数の気筒のうち、燃料カットを開始する開始気筒を算出する（算出手段）。なお、ＥＦＩ−ＥＣＵ２０は、エンジンにおける複数の気筒のうち、燃料カットを開始する気筒を設定する、と言い換えることもできる。そして、ＥＦＩ−ＥＣＵ２０は、補正タイミングとして、開始気筒の気筒番号を送信する。
【０１１７】
一方、ＭＧ−ＥＣＵ３０は、同期用信号における有効エッジを基準として、ＥＦＩ−ＥＣＵ２０で算出された開始気筒における吸入工程の後に最初に実行される膨張工程を確認する（駆動手段）。そして、ＭＧ−ＥＣＵ３０は、開始気筒が吸入工程の後に最初に実行される膨張工程になった場合、補正タイミングになったと判断する（駆動手段）。
【０１１８】
上述のように、トルク抜けは、燃料カットした吸入工程の次に膨張工程で発生する。また、ＭＧ−ＥＣＵ３０は、エンジンの回転に伴って発生する同期用信号を取得している。よって、ＭＧ−ＥＣＵ３０は、補正タイミングとして、開始気筒を知ることで、トルク抜けが発生するタイミング、つまり、キャンセルトルクＴｆｃを出力するタイミングを把握することができる。従って、変形例２の動力制御システム１００であっても、上述の実施形態と同様の効果を奏することができる。
【符号の説明】
【０１１９】
１０  ＨＶ−ＥＣＵ、１１  処理部、１２  記憶部、１３  タイマ、１４  入出力部、１５  通信部、２０  ＥＦＩ−ＥＣＵ、２１  処理部、２２  記憶部、２３  タイマ、２４  入出力部、２５  通信部、３０  ＭＧ−ＥＣＵ、３１  処理部、３２  記憶部、３３  タイマ、３４  入出力部、３５  通信部、４０  信号線、５０  通信線、６１  クランク角センサ、６２  カム角センサ、７１  第１モータジェネレータ、７２  第２モータジェネレータ、１００  動力制御システム
【図１】
2015143054.tif 000003
【図２】
2015143054.tif 000004
【図３】
2015143054.tif 000005
【図４】
2015143054.tif 000006
【図５】
2015143054.tif 000007
【図６】
2015143054.tif 000008
【図７】
2015143054.tif 000009