図1は、本発明の実施例の内燃機関の失火判定装置を搭載したハイブリッド自動車20の構成の概略を示す構成図である。実施例のハイブリッド自動車20は、図示するように、エンジン22と、エンジン22の出力軸としてのクランクシャフト26にねじれ要素としてのダンパ28を介して接続された遊星歯車機構30と、遊星歯車機構30に接続された発電可能なモータMG1と、遊星歯車機構30に接続されたリングギヤ軸32aに取り付けられた減速ギヤ35と、この減速ギヤ35に接続されたモータMG2と、車両全体をコントロールするハイブリッド用電子制御ユニット70とを備える。ここで、実施例の内燃機関の失火判定装置としては、主として後述のエンジン用電子制御ユニット24とクランクポジションセンサ140とモータ用電子制御ユニット40と回転位置検出センサ43,44となどが該当する。
エンジン22は、例えばガソリンまたは軽油などの炭化水素系の燃料により動力を出力可能な複数気筒(例えば6気筒や8気筒)の内燃機関として構成されており、図2に示すように、エアクリーナ122により清浄された空気をスロットルバルブ124を介して吸入すると共に気筒毎に設けられた燃料噴射弁126からガソリンを噴射して吸入された空気とガソリンとを混合し、この混合気を吸気バルブ128を介して燃料室に吸入し、点火プラグ130による電気火花によって爆発燃焼させて、そのエネルギにより押し下げられるピストン132の往復運動をクランクシャフト26の回転運動に変換する。エンジン22からの排気は、一酸化炭素(CO)や炭化水素(HC),窒素酸化物(NOx)の有害成分を浄化する浄化装置(三元触媒)134を介して外気へ排出される。
エンジン22は、エンジン用電子制御ユニット(以下、エンジンECUという)24により制御されている。エンジンECU24は、CPU24aを中心とするマイクロプロセッサとして構成されており、CPU24aの他に処理プログラムを記憶するROM24bと、データを一時的に記憶するRAM24cと、図示しない入出力ポートおよび通信ポートとを備える。エンジンECU24には、エンジン22の状態を検出する種々のセンサからの信号、クランクシャフト26の回転位置(クランク角CA)を検出するクランクポジションセンサ140からのクランクポジション(クランク角CA)やエンジン22の冷却水の温度を検出する水温センサ142からの冷却水温,燃焼室へ吸排気を行なう吸気バルブ128や排気バルブを開閉するカムシャフトの回転位置を検出するカムポジションセンサ144からのカムポジション,スロットルバルブ124のポジションを検出するスロットルバルブポジションセンサ146からのスロットルポジション,吸気管に取り付けられたエアフローメータ148からのエアフローメータ信号AF,同じく吸気管に取り付けられた温度センサ149からの吸気温,空燃比センサ135aからの空燃比AF,酸素センサ135bからの酸素信号などが入力ポートを介して入力されている。また、エンジンECU24からは、エンジン22を駆動するための種々の制御信号、例えば、燃料噴射弁126への駆動信号や、スロットルバルブ124のポジションを調節するスロットルモータ136への駆動信号、イグナイタと一体化されたイグニッションコイル138への制御信号、吸気バルブ128の開閉タイミングの変更可能な可変バルブタイミング機構150への制御信号などが出力ポートを介して出力されている。さらに、エンジンECU24は、ハイブリッド用電子制御ユニット70と通信しており、ハイブリッド用電子制御ユニット70からの制御信号によりエンジン22を運転制御すると共に必要に応じてエンジン22の運転状態に関するデータを出力する。なお、上述したクランクポジションセンサ140は、クランクシャフト26と回転同期して回転するように取り付けられて10度毎に歯が形成されると共に基準位置検出用に2つ分の欠歯を形成したタイミングローターを有する電磁ピックアップセンサとして構成されており、クランクシャフト26が10度回転する毎に整形波を生じさせる。エンジンECU24では、このクランクポジションセンサ140からの整形波に基づいてクランクシャフト26が30度回転する毎の回転数をエンジン22の回転数Neとして計算している。
遊星歯車機構30は、外歯歯車のサンギヤ31と、このサンギヤ31と同心円上に配置された内歯歯車のリングギヤ32と、サンギヤ31に噛合すると共にリングギヤ32に噛合する複数のピニオンギヤ33と、複数のピニオンギヤ33を自転かつ公転自在に保持するキャリア34とを備え、サンギヤ31とリングギヤ32とキャリア34とを回転要素として差動作用を行なうものとして構成されている。遊星歯車機構30は、キャリア34に接続されたキャリア軸34aにはダンパ28を介してエンジン22のクランクシャフト26が、サンギヤ31にはモータMG1が、リングギヤ32にはリングギヤ軸32aを介して減速ギヤ35がそれぞれ連結されており、モータMG1が発電機として機能するときにはキャリア34から入力されるエンジン22からの動力をサンギヤ31側とリングギヤ32側にそのギヤ比に応じて分配し、モータMG1が電動機として機能するときにはキャリア34から入力されるエンジン22からの動力とサンギヤ31から入力されるモータMG1からの動力を統合してリングギヤ32側に出力する。リングギヤ32に出力された動力は、リングギヤ軸32aからギヤ機構60およびデファレンシャルギヤ62を介して、最終的には車両の駆動輪63a,63bに出力される。
モータMG1およびモータMG2は、いずれも発電機として駆動することができると共に電動機として駆動できる周知の同期発電電動機として構成されており、インバータ41,42を介してバッテリ50と電力のやりとりを行なう。インバータ41,42とバッテリ50とを接続する電力ライン54は、各インバータ41,42が共用する正極母線および負極母線として構成されており、モータMG1,MG2のいずれかで発電される電力を他のモータで消費することができるようになっている。したがって、バッテリ50は、モータMG1,MG2のいずれかから生じた電力や不足する電力により充放電されることになる。なお、モータMG1,MG2により電力収支のバランスをとるものとすれば、バッテリ50は充放電されない。モータMG1,MG2は、いずれもモータ用電子制御ユニット(以下、モータECUという)40により駆動制御されている。モータECU40には、モータMG1,MG2を駆動制御するために必要な信号、例えばモータMG1,MG2の回転子の回転位置を検出する回転位置検出センサ43,44からの信号や図示しない電流センサにより検出されるモータMG1,MG2に印加される相電流などが入力されており、モータECU40からは、インバータ41,42へのスイッチング制御信号が出力されている。モータECU40は、ハイブリッド用電子制御ユニット70と通信しており、ハイブリッド用電子制御ユニット70からの制御信号によってモータMG1,MG2を駆動制御すると共に必要に応じてモータMG1,MG2の運転状態に関するデータをハイブリッド用電子制御ユニット70に出力する。回転位置検出センサ43,44は、レゾルバにより構成されており、モータECU40は、回転位置検出センサ43,44からの信号に基づいて所定時間毎(例えば50μsec毎や100μsec毎など)にモータMG1,MG2の回転数Nm1,Nm2を計算している。
バッテリ50は、バッテリ用電子制御ユニット(以下、バッテリECUという)52によって管理されている。バッテリECU52には、バッテリ50を管理するのに必要な信号、例えば、バッテリ50の端子間に設置された図示しない電圧センサからの端子間電圧,バッテリ50の出力端子に接続された電力ライン54に取り付けられた図示しない電流センサからの充放電電流,バッテリ50に取り付けられた温度センサ51からの電池温度Tbなどが入力されており、必要に応じてバッテリ50の状態に関するデータを通信によりハイブリッド用電子制御ユニット70に出力する。なお、バッテリECU52では、バッテリ50を管理するために電流センサにより検出された充放電電流の積算値に基づいて残容量(SOC)も演算している。
ハイブリッド用電子制御ユニット70は、CPU72を中心とするマイクロプロセッサとして構成されており、CPU72の他に処理プログラムを記憶するROM74と、データを一時的に記憶するRAM76と、図示しない入出力ポートおよび通信ポートとを備える。ハイブリッド用電子制御ユニット70には、イグニッションスイッチ80からのイグニッション信号,シフトレバー81の操作位置を検出するシフトポジションセンサ82からのシフトポジションSP,アクセルペダル83の踏み込み量を検出するアクセルペダルポジションセンサ84からのアクセル開度Acc,ブレーキペダル85の踏み込み量を検出するブレーキペダルポジションセンサ86からのブレーキペダルポジションBP,車速センサ88からの車速Vなどが入力ポートを介して入力されている。ハイブリッド用電子制御ユニット70は、前述したように、エンジンECU24やモータECU40,バッテリECU52と通信ポートを介して接続されており、エンジンECU24やモータECU40,バッテリECU52と各種制御信号やデータのやりとりを行なっている。
こうして構成された実施例のハイブリッド自動車20は、運転者によるアクセルペダル83の踏み込み量に対応するアクセル開度Accと車速Vとに基づいてリングギヤ軸32aに出力すべき要求トルクTr*を計算し、この要求トルクTr*に対応する要求動力がリングギヤ軸32aに出力されるように、エンジン22とモータMG1とモータMG2とが運転制御される。エンジン22とモータMG1とモータMG2の運転制御としては、要求動力に見合う動力がエンジン22から出力されるようにエンジン22を運転制御すると共にエンジン22から出力される動力のすべてが遊星歯車機構30とモータMG1とモータMG2とによってトルク変換されてリングギヤ軸32aに出力されるようモータMG1およびモータMG2を駆動制御するトルク変換運転モードや要求動力とバッテリ50の充放電に必要な電力との和に見合う動力がエンジン22から出力されるようにエンジン22を運転制御すると共にバッテリ50の充放電を伴ってエンジン22から出力される動力の全部またはその一部が遊星歯車機構30とモータMG1とモータMG2とによるトルク変換を伴って要求動力がリングギヤ軸32aに出力されるようモータMG1およびモータMG2を駆動制御する充放電運転モード、エンジン22の運転を停止してモータMG2からの要求動力に見合う動力をリングギヤ軸32aに出力するよう運転制御するモータ運転モードなどがある。基本的には、リングギヤ軸32aに要求トルクTr*を出力するのに必要なパワーとバッテリ50を充放電する電力に必要なパワーと損失としてのパワーとの和のパワーをエンジン22から出力すべき目標パワーとして設定し、エンジン22の回転数とトルクとの関係としてエンジン22を効率よく運転することができる関係を連続したラインにより表わした動作ライン上で設定した目標パワーを出力する運転ポイントとしての回転数とトルクとを目標回転数Ne*,目標トルクTe*として設定し、エンジン22の回転数Neが目標回転数Ne*となるようモータMG1のトルク指令Tm1*を設定すると共にモータMG1をトルク指令Tm1*で駆動したときにリングギヤ軸32aに要求トルクTr*が出力されるようモータMG2のトルク指令Tm2*を設定し、エンジン22が目標回転数Ne*,目標トルクTe*で運転されるようエンジンECU24によりエンジン22を制御すると共にモータMG1,MG2がトルク指令Tm1*,Tm2*で駆動するようモータECU40によりインバータ41,42のスイッチング素子をスイッチング制御することにより、運転者のアクセルペダル83の操作に応じて走行する。
次に、こうして構成された実施例の内燃機関の失火判定装置の動作について説明する。図3は、実施例のエンジンECU24により実行される失火判定処理の一例を示すフローチャートである。このルーチンは、所定時間毎に繰り返し実行される。
失火判定処理が実行されると、エンジンECU24のCPU24aは、まず、エンジン22に対して設定された目標運転ポイントとしての目標回転数Ne*やエンジン22の回転数(以下、「エンジン回転数」という。)Ne,遊星歯車機構30のキャリア34の回転数(以下、「キャリア回転数」という。)Ncなどの失火を判定するために必要なデータを入力する処理を実行する(ステップS100)。ここで、エンジン22の目標回転数Ne*は、例えば、図示しない駆動制御ルーチンによりアクセル開度Accと車速Vとにより設定される要求トルクTr*とエンジン22を効率よく運転することができる動作ラインとに基づいて設定されてハイブリッド用電子制御ユニット70からエンジンECU24に送信されたものを入力するものとすることができる。また、エンジン回転数Neはクランクポジションセンサ140からの整形波に基づいて計算してRAM24cに記憶したものを読み込むことにより入力するものとすることができる。さらに、キャリア回転数Ncは、例えば、モータECU40によりモータMG1,MG2の回転数Nm1,Nm2に基づいて次式(1)を用いて演算したものをモータECU40から通信により入力するものとすることができる。なお、式(1)中の「ρ」は遊星歯車機構30のギヤ比ρ(サンギヤの歯数/リングギヤの歯数)であり、「Gr」は減速機35のギヤ比Grである。
Nc=(Nm2・Gr+ρ・Nm1)/(1+ρ) (1)
こうしてデータを入力すると、入力したエンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上であるか否かを判定する(ステップS110)。ここで、閾値Nrefは、良好な路面を走行しているときにエンジン22のいずれかの気筒の失火により生じる目標回転数Ne*とエンジン回転数Neとの差より若干小さな値として設定されるものであり、実験などにより定めることができる。エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref未満であるときにはエンジン22のいずれかの気筒に失火は生じていないと判断し、本ルーチンを終了する。
目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときには、単位時間当たりのエンジン回転数Neの変化としての回転変動ΔNeを演算し(ステップS120)、エンジン回転数Neからキャリア回転数Ncを減じたものに2πを乗じ、これを積分してダンパ28のねじれ角θを演算すると共に(ステップS130)、ねじれ角θの単位時間当たりの変化としてのねじれ角変動Δθを演算し(ステップS140)、演算した回転変動ΔNeとねじれ角変動Δθとが同調しているか否かを判定する(ステップS150,S160)。ここで、回転変動ΔNeとねじれ角変動Δθとの同調の判定は、例えば、回転変動ΔNeに対して若干の位相差をもってねじれ角変動Δθが生じているか否かを解析的に判定するものとしたり、回転変動ΔNeとねじれ角変動Δθとの積が正の値である時間と負の値である時間とを演算し、正の値である時間と負である時間との差が閾値以上であるときに同調していると判定するものとしたり、などにより行なうことができる。
こうして回転変動ΔNeとねじれ角変動Δθとが同調しているか否かを判定し、回転変動ΔNeとねじれ角変動Δθとが同調していると判定したときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定して本ルーチンを終了し(ステップS170)、回転変動ΔNeとねじれ角変動Δθとが同調していないと判定したときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定して本ルーチンを終了する(ステップS180)。ここで、回転変動ΔNeとねじれ角変動Δθとが同調しているときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定し、回転変動ΔNeとねじれ角変動Δθとが同調していないときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定することができるのは、これは、図4に示すように、エンジン22のいずれかの気筒の失火がダンパ28のねじれ角θの変動の要因となっているときには、エンジン回転数Neの変動に対して若干の遅れを伴うもののねじれ角θの変動が同調して生じ、その後にキャリア回転数Ncの変動として現われ、図5に示すように、路面からの外乱がダンパ28のねじれ角θの変動の要因となっているときにはキャリア回転数Ncの変動に対してねじれ角θの変動が同調して生じ、その後にエンジン回転数Neの変動として現われることに基づく。図4,5中の矢印は変動伝達の方向を示す。
以上説明した実施例の内燃機関の失火判定装置によれば、エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときに、エンジン回転数Neの回転変動ΔNeとダンパ28のねじれ角θの変動Δθとが同調しているか否かを判定し、回転変動ΔNeとねじれ角変動Δθとが同調しているときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定し、回転変動ΔNeとねじれ角変動Δθとが同調していないときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定することにより、路面状態に応じてエンジン22のいずれかの気筒が失火しているのを精度良く判定することができる。
ここで、実施例の内燃機関の失火判定装置の主要な要素と課題を解決するための手段の欄に記載した本発明の内燃機関の失火判定装置の主要な要素との対応関係について説明する。実施例では、複数気筒のエンジン22が「複数気筒の内燃機関」に相当し、ダンパ28が「ねじれ要素」に相当し、遊星歯車機構30が「遊星歯車機構」に相当し、モータMG1が「発電機」に相当し、モータMG2が「電動機」に相当し、バッテリ50が「蓄電手段」に相当し、リングギヤ軸32aに要求トルクTr*を出力するのに必要なパワーとバッテリ50を充放電する電力に必要なパワーと損失としてのパワーとの和のパワーをエンジン22から出力すべき目標パワーとして設定し、エンジン22の回転数とトルクとの関係としてエンジン22を効率よく運転することができる関係を連続したラインにより表わした動作ライン上で設定した目標パワーを出力する運転ポイントとしての回転数とトルクとを目標回転数Ne*,目標トルクTe*として設定し、エンジン22の回転数Neが目標回転数Ne*となるようモータMG1のトルク指令Tm1*を設定すると共にモータMG1をトルク指令Tm1*で駆動したときにリングギヤ軸32aに要求トルクTr*が出力されるようモータMG2のトルク指令Tm2*を設定し、エンジン22が目標回転数Ne*,目標トルクTe*で運転されるようエンジンECU24によりエンジン22を制御すると共にモータMG1,MG2がトルク指令Tm1*,Tm2*で駆動するようモータECU40によりインバータ41,42のスイッチング素子をスイッチング制御するハイブリッド用電子制御ユニット70とエンジンECU24とモータECU40とが「制御手段」に相当する。そして、クランクポジションセンサ140からの整形波に基づいてクランクシャフト26が30度回転する毎の回転数をエンジン22の回転数Neとして計算するエンジンECU24が「出力軸回転数検出手段」に相当し、回転位置検出センサ44からの信号に基づいてモータMG2の回転数Nm2(リングギヤ軸32aの回転数)を計算するモータECU40が「駆動軸回転数検出手段」に相当し、モータMG1,MG2の回転数Nm1,Nm2に基づいてリングギヤ軸32aの回転数Ncを演算するモータECU40が「連結軸回転数演算手段」に相当し、エンジン回転数Neからキャリア回転数Ncを減じたものに2πを乗じ、これを積分してダンパ28のねじれ角θを演算する図3の失火判定処理のステップS130の処理を実行するエンジンECU24が「ねじれ角演算手段」に相当し、エンジン回転数Neの変動ΔNeとねじれ角θの変動Δθとが同調しているか否かを判定する図3の失火判定処理のステップS150,S160を実行するエンジンECU24が「同調判定手段」に相当し、エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときに、回転変動ΔNeとねじれ角変動Δθとが同調しているときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定し、回転変動ΔNeとねじれ角変動Δθとが同調していないときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定する図3の失火判定処理のステップS150〜180の処理を実行するエンジンECU24が「失火判定手段」に相当する。
なお、実施例の内燃機関の失火判定装置の主要な要素と課題を解決するための手段の欄に記載した本発明の内燃機関の失火判定装置の主要な要素との対応関係は、実施例の内燃機関の失火判定装置が課題を解決するための手段の欄に記載した本発明の内燃機関の失火判定装置を実施するための最良の形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した本発明の内燃機関の失火判定装置の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した本発明の内燃機関の失火判定装置についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例の内燃機関の失火判定装置は課題を解決するための手段の欄に記載した本発明の内燃機関の失火判定装置の具体的な一例に過ぎないものである。
第1参考例の内燃機関の失火判定装置は、図1,2を用いて説明した実施例の内燃機関の失火判定装置を搭載するハイブリッド自動車20と同一の構成をしている。重複した記載を回避するため、実施例の内燃機関の失火判定装置を搭載するハイブリッド自動車20をそのまま第1参考例の内燃機関の失火判定装置を搭載するハイブリッド自動車20として用いる。また、第1参考例の内燃機関を搭載するハイブリッド自動車20も、基本的には、リングギヤ軸32aに要求トルクTr*を出力するのに必要なパワーとバッテリ50を充放電する電力に必要なパワーと損失としてのパワーとの和のパワーをエンジン22から出力すべき目標パワーとして設定し、エンジン22の回転数とトルクとの関係としてエンジン22を効率よく運転することができる関係を連続したラインにより表わした動作ライン上で設定した目標パワーを出力する運転ポイントとしての回転数とトルクとを目標回転数Ne*,目標トルクTe*として設定し、エンジン22の回転数Neが目標回転数Ne*となるようモータMG1のトルク指令Tm1*を設定すると共にモータMG1をトルク指令Tm1*で駆動したときにリングギヤ軸32aに要求トルクTr*が出力されるようモータMG2のトルク指令Tm2*を設定し、エンジン22が目標回転数Ne*,目標トルクTe*で運転されるようエンジンECU24によりエンジン22を制御すると共にモータMG1,MG2がトルク指令Tm1*,Tm2*で駆動するようモータECU40によりインバータ41,42のスイッチング素子をスイッチング制御することにより、運転者のアクセルペダル83の操作に応じて走行する。
次に、こうして構成された第1参考例の内燃機関の失火判定装置の動作について説明する。図6は、第1参考例のエンジンECU24により実行される失火判定処理の一例を示すフローチャートである。このルーチンは、所定時間毎に繰り返し実行される。
失火判定処理が実行されると、エンジンECU24のCPU24aは、まず、エンジン22に対して設定された目標運転ポイントとしての目標回転数Ne*やエンジン22の回転数(以下、「エンジン回転数」という。)Ne,モータMG1の回転数Nm2などの失火を判定するために必要なデータを入力する処理を実行する(ステップS200)。ここで、エンジン22の目標回転数Ne*は、例えば、図示しない駆動制御ルーチンによりアクセル開度Accと車速Vとにより設定される要求トルクTr*とエンジン22を効率よく運転することができる動作ラインとに基づいて設定されてハイブリッド用電子制御ユニット70からエンジンECU24に送信されたものを入力するものとすることができる。また、エンジン回転数Neはクランクポジションセンサ140からの整形波に基づいて計算してRAM24cに記憶したものを読み込むことにより入力するものとすることができる。さらに、モータMG2の回転数Nm2は、回転位置検出センサ44からの信号に基づいてモータMG2の回転数Nm2を計算するモータECU40から通信により入力することができる。なお、モータMG2の回転数Nm2は、減速ギヤ35のギヤ比Grを乗じることにより駆動軸としてのリングギヤ軸32aの回転数Nrとなる。
こうしてデータを入力すると、入力したエンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上であるか否かを判定する(ステップS210)。ここで、閾値Nrefは、良好な路面を走行しているときにエンジン22のいずれかの気筒の失火により生じる目標回転数Ne*とエンジン回転数Neとの差より若干小さな値として設定されるものであり、実験などにより定めることができる。エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref未満であるときにはエンジン22のいずれかの気筒に失火は生じていないと判断し、本ルーチンを終了する。
目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときには、エンジン回転数Neが変動を開始したタイミングとしてのエンジン回転数変動開始時刻TNeとモータMG2の回転数Nm2が変動を開始したタイミングとしてのモータ回転数変動開始時刻TNmとを求め(ステップS220)、求めたエンジン回転数変動開始時刻TNeとモータ回転数変動開始時刻TNmとのうちいずれが先であるか否かを判定し(ステップS230)、エンジン回転数変動開始時刻TNeの方がモータ回転数変動開始時刻TNmより先のときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定して本ルーチンを終了し(ステップS240)、エンジン回転数変動開始時刻TNeの方がモータ回転数変動開始時刻TNmより後のときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定して本ルーチンを終了する(ステップS250)。エンジン回転数変動開始時刻TNeとモータ回転数変動開始時刻TNm(駆動軸としてのリングギヤ軸32aの回転数Nrの変動開始時刻)との先後関係により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になった要因をエンジン22のいずれかの気筒の失火によるものか路面からの外乱によるものかを判定することができるのは、図7に示すように、エンジン22のいずれかの気筒の失火が目標回転数Ne*とエンジン回転数Neとの回転数差が閾値Nref以上となる要因のときにはエンジン回転数Neの変動のタイミングがモータ回転数Nm2の変動(リングギヤ軸32aの回転数の変動)のタイミングより早くなり、図8に示すように路面からの外乱が目標回転数Ne*とエンジン回転数Neとの回転数差が閾値Nref以上となる要因のときにはエンジン回転数Neの変動のタイミングがモータ回転数Nm2の変動(リングギヤ軸32aの回転数の変動)のタイミングより遅くなること、即ち、要因側が先に変動することに基づく。
以上説明した第1参考例の内燃機関の失火判定装置によれば、エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときに、エンジン回転数Neが変動を開始したエンジン回転数変動開始時刻TNeとモータMG2の回転数Nm2(駆動軸としてのリングギヤ軸32aの回転数Nc)が変動を開始したタイミングとしてのモータ回転数変動開始時刻TNmとのうちいずれが早いかを判定し、エンジン回転数変動開始時刻TNeの方がモータ回転数変動開始時刻TNmより先のときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定し、エンジン回転数変動開始時刻TNeの方がモータ回転数変動開始時刻TNmより後のときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定することにより、路面状態に応じてエンジン22のいずれかの気筒が失火しているのを精度良く判定することができる。
ここで、第1参考例の内燃機関の失火判定装置の主要な要素と課題を解決するための手段の欄に記載した第1の参考例としての内燃機関の失火判定装置の主要な要素との対応関係について説明する。第1参考例では、複数気筒のエンジン22が「複数気筒の内燃機関」に相当し、ダンパ28が「ねじれ要素」に相当し、遊星歯車機構30が「遊星歯車機構」に相当し、モータMG1が「発電機」に相当し、モータMG2が「電動機」に相当し、バッテリ50が「蓄電手段」に相当し、リングギヤ軸32aに要求トルクTr*を出力するのに必要なパワーとバッテリ50を充放電する電力に必要なパワーと損失としてのパワーとの和のパワーをエンジン22から出力すべき目標パワーとして設定し、エンジン22の回転数とトルクとの関係としてエンジン22を効率よく運転することができる関係を連続したラインにより表わした動作ライン上で設定した目標パワーを出力する運転ポイントとしての回転数とトルクとを目標回転数Ne*,目標トルクTe*として設定し、エンジン22の回転数Neが目標回転数Ne*となるようモータMG1のトルク指令Tm1*を設定すると共にモータMG1をトルク指令Tm1*で駆動したときにリングギヤ軸32aに要求トルクTr*が出力されるようモータMG2のトルク指令Tm2*を設定し、エンジン22が目標回転数Ne*,目標トルクTe*で運転されるようエンジンECU24によりエンジン22を制御すると共にモータMG1,MG2がトルク指令Tm1*,Tm2*で駆動するようモータECU40によりインバータ41,42のスイッチング素子をスイッチング制御するハイブリッド用電子制御ユニット70とエンジンECU24とモータECU40とが「制御手段」に相当する。そして、クランクポジションセンサ140からの整形波に基づいてクランクシャフト26が30度回転する毎の回転数をエンジン22の回転数Neとして計算するエンジンECU24が「出力軸回転数検出手段」に相当し、回転位置検出センサ44からの信号に基づいてモータMG2の回転数Nm2(リングギヤ軸32aの回転数)を計算するモータECU40が「駆動軸回転数検出手段」に相当し、エンジン回転数Neが変動を開始したタイミングとしてのエンジン回転数変動開始時刻TNeとモータMG2の回転数Nm2が変動を開始したタイミングとしてのモータ回転数変動開始時刻TNmとのうちいずれが先であるか否かを判定する図6の失火判定処理のステップS220,S230の処理を実行するしエンジンECU24が「タイミング判定手段」に相当し、エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときに、エンジン回転数変動開始時刻TNeの方がモータ回転数変動開始時刻TNmより先のときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定し、エンジン回転数変動開始時刻TNeの方がモータ回転数変動開始時刻TNmより後のときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定する図6の失火判定処理のステップS230〜S250の処理を実行するエンジンECU24が「失火判定手段」に相当する。
なお、第1参考例の内燃機関の失火判定装置の主要な要素と課題を解決するための手段の欄に記載した第1の参考例としての内燃機関の失火判定装置の主要な要素との対応関係は、第1参考例の内燃機関の失火判定装置が課題を解決するための手段の欄に記載した第1の参考例としての内燃機関の失火判定装置を実施するための最良の形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した第1の参考例としての内燃機関の失火判定装置の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した第1の参考例としての内燃機関の失火判定装置についての解釈はその欄の記載に基づいて行なわれるべきものであり、第1参考例の内燃機関の失火判定装置は課題を解決するための手段の欄に記載した第1の参考例としての内燃機関の失火判定装置の具体的な一例に過ぎないものである。
第2参考例の内燃機関の失火判定装置は、図1,2を用いて説明した実施例の内燃機関の失火判定装置を搭載するハイブリッド自動車20と同一の構成をしている。重複した記載を回避するため、実施例の内燃機関の失火判定装置を搭載するハイブリッド自動車20をそのまま第2参考例の内燃機関の失火判定装置を搭載するハイブリッド自動車20として用いる。また、第2参考例の内燃機関を搭載するハイブリッド自動車20も、基本的には、リングギヤ軸32aに要求トルクTr*を出力するのに必要なパワーとバッテリ50を充放電する電力に必要なパワーと損失としてのパワーとの和のパワーをエンジン22から出力すべき目標パワーとして設定し、エンジン22の回転数とトルクとの関係としてエンジン22を効率よく運転することができる関係を連続したラインにより表わした動作ライン上で設定した目標パワーを出力する運転ポイントとしての回転数とトルクとを目標回転数Ne*,目標トルクTe*として設定し、エンジン22の回転数Neが目標回転数Ne*となるようモータMG1のトルク指令Tm1*を設定すると共にモータMG1をトルク指令Tm1*で駆動したときにリングギヤ軸32aに要求トルクTr*が出力されるようモータMG2のトルク指令Tm2*を設定し、エンジン22が目標回転数Ne*,目標トルクTe*で運転されるようエンジンECU24によりエンジン22を制御すると共にモータMG1,MG2がトルク指令Tm1*,Tm2*で駆動するようモータECU40によりインバータ41,42のスイッチング素子をスイッチング制御することにより、運転者のアクセルペダル83の操作に応じて走行する。
次に、こうして構成された第2参考例の内燃機関の失火判定装置の動作について説明する。図9は、第2参考例のエンジンECU24により実行される失火判定処理の一例を示すフローチャートである。このルーチンは、所定時間毎に繰り返し実行される。
失火判定処理が実行されると、エンジンECU24のCPU24aは、まず、エンジン22に対して設定された目標運転ポイントとしての目標回転数Ne*やエンジン22の回転数(以下、「エンジン回転数」という。)Ne,遊星歯車機構30のキャリア34の回転数(以下、「キャリア回転数」という。)Ncなどの失火を判定するために必要なデータを入力する処理を実行する(ステップS300)。ここで、エンジン22の目標回転数Ne*は、例えば、図示しない駆動制御ルーチンによりアクセル開度Accと車速Vとにより設定される要求トルクTr*とエンジン22を効率よく運転することができる動作ラインとに基づいて設定されてハイブリッド用電子制御ユニット70からエンジンECU24に送信されたものを入力するものとすることができる。また、エンジン回転数Neはクランクポジションセンサ140からの整形波に基づいて計算してRAM24cに記憶したものを読み込むことにより入力するものとすることができる。さらに、キャリア回転数Ncは、例えば、モータECU40によりモータMG1,MG2の回転数Nm1,Nm2に基づいて上述の式(1)を用いて演算したものをモータECU40から通信により入力するものとすることができる。
こうしてデータを入力すると、入力したエンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上であるか否かを判定する(ステップS310)。ここで、閾値Nrefは、良好な路面を走行しているときにエンジン22のいずれかの気筒の失火により生じる目標回転数Ne*とエンジン回転数Neとの差より若干小さな値として設定されるものであり、実験などにより定めることができる。エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref未満であるときにはエンジン22のいずれかの気筒に失火は生じていないと判断し、本ルーチンを終了する。
目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときには、エンジン回転数Neの変動幅である振幅PNeとキャリア回転数Ncの変動幅である振幅PNcとを求め(ステップS320)、求めたエンジン回転数Neの振幅PNeとキャリア回転数Ncの振幅PNcとの大きさを比較し(ステップS330)、エンジン回転数Neの振幅PNeの方がキャリア回転数Ncの振幅PNcより大きいときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定して本ルーチンを終了し(ステップS340)、エンジン回転数Neの振幅PNeの方がキャリア回転数Ncの振幅PNcより小さいときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定して本ルーチンを終了する(ステップS350)。エンジン回転数Neの振幅PNeとキャリア回転数Ncの振幅PNcとの大小関係により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になった要因をエンジン22のいずれかの気筒の失火によるものか路面からの外乱によるものかを判定することができるのは、図10に示すように、エンジン22のいずれかの気筒の失火が目標回転数Ne*とエンジン回転数Neとの回転数差が閾値Nref以上となる要因のときにはエンジン回転数Neの振幅の方がキャリア回転数Ncの振幅PNcより大きくなり、図11に示すように路面からの外乱が目標回転数Ne*とエンジン回転数Neとの回転数差が閾値Nref以上となる要因のときにはエンジン回転数Neの振幅PNeの方がキャリア回転数Ncの振幅PNcより小さくなること、即ち、要因側が振幅の方が大きいことに基づく。
以上説明した第2参考例の内燃機関の失火判定装置によれば、エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときに、エンジン回転数Neの変動幅である振幅PNeの方がキャリア回転数Ncの変動幅である振幅PNcより大きいときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定し、エンジン回転数Neの振幅PNeの方がキャリア回転数Ncの振幅PNcより小さいときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定することにより、路面状態に応じてエンジン22のいずれかの気筒が失火しているのを精度良く判定することができる。
ここで、第2参考例の内燃機関の失火判定装置の主要な要素と課題を解決するための手段の欄に記載した第2の参考例としての内燃機関の失火判定装置の主要な要素との対応関係について説明する。第2参考例では、複数気筒のエンジン22が「複数気筒の内燃機関」に相当し、ダンパ28が「ねじれ要素」に相当し、遊星歯車機構30が「遊星歯車機構」に相当し、モータMG1が「発電機」に相当し、モータMG2が「電動機」に相当し、バッテリ50が「蓄電手段」に相当し、リングギヤ軸32aに要求トルクTr*を出力するのに必要なパワーとバッテリ50を充放電する電力に必要なパワーと損失としてのパワーとの和のパワーをエンジン22から出力すべき目標パワーとして設定し、エンジン22の回転数とトルクとの関係としてエンジン22を効率よく運転することができる関係を連続したラインにより表わした動作ライン上で設定した目標パワーを出力する運転ポイントとしての回転数とトルクとを目標回転数Ne*,目標トルクTe*として設定し、エンジン22の回転数Neが目標回転数Ne*となるようモータMG1のトルク指令Tm1*を設定すると共にモータMG1をトルク指令Tm1*で駆動したときにリングギヤ軸32aに要求トルクTr*が出力されるようモータMG2のトルク指令Tm2*を設定し、エンジン22が目標回転数Ne*,目標トルクTe*で運転されるようエンジンECU24によりエンジン22を制御すると共にモータMG1,MG2がトルク指令Tm1*,Tm2*で駆動するようモータECU40によりインバータ41,42のスイッチング素子をスイッチング制御するハイブリッド用電子制御ユニット70とエンジンECU24とモータECU40とが「制御手段」に相当する。そして、クランクポジションセンサ140からの整形波に基づいてクランクシャフト26が30度回転する毎の回転数をエンジン22の回転数Neとして計算するエンジンECU24が「出力軸回転数検出手段」に相当し、回転位置検出センサ44からの信号に基づいてモータMG2の回転数Nm2(リングギヤ軸32aの回転数)を計算するモータECU40が「駆動軸回転数検出手段」に相当し、モータMG1,MG2の回転数Nm1,Nm2に基づいてリングギヤ軸32aの回転数Ncを演算するモータECU40が「連結軸回転数演算手段」に相当し、エンジン回転数Neの変動幅である振幅PNeとキャリア回転数Ncの変動幅である振幅PNcとのうちいずれが大きいかを判定する図9の失火判定処理のステップS320,S330の処理を実行するしエンジンECU24が「振幅大小判定手段」に相当し、エンジン22の目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上のときに、エンジン回転数Neの振幅PNeの方がキャリア回転数Ncの振幅PNcより大きいときにはエンジン22のいずれかの気筒の失火により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定し、エンジン回転数Neの振幅PNeの方がキャリア回転数Ncの振幅PNcより小さいときには路面からの外乱により目標回転数Ne*とエンジン回転数Neとの差が閾値Nref以上になったと判定する図9の失火判定処理のステップS330〜S350の処理を実行するエンジンECU24が「失火判定手段」に相当する。
なお、第2参考例の内燃機関の失火判定装置の主要な要素と課題を解決するための手段の欄に記載した第2の参考例としての内燃機関の失火判定装置の主要な要素との対応関係は、第2参考例の内燃機関の失火判定装置が課題を解決するための手段の欄に記載した第2の参考例としての内燃機関の失火判定装置を実施するための最良の形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した第2の参考例としての内燃機関の失火判定装置の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した第2の参考例としての内燃機関の失火判定装置についての解釈はその欄の記載に基づいて行なわれるべきものであり、第2参考例の内燃機関の失火判定装置は課題を解決するための手段の欄に記載した第2の参考例としての内燃機関の失火判定装置の具体的な一例に過ぎないものである。
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。