(57)【要約】【課題】クランク軸に数行程周期の振動が生じた場合でも、簡素な演算で精度良く失火検出できる内燃機関の制御装置及び制御方法を提供する。【解決手段】特定クランク角センサ６の出力信号に基づいて、クランク角度θｄを検出すると共に、クランク角速度ωｄ、クランク角加速度αｄ、及びクランク角加速度αｄの時間変化率であるクランク角躍度δｄを算出し、クランク角躍度δｄに基づいて、１回の燃焼行程に対応して設定した判定期間におけるクランク角躍度の変動量Δδｄを算出し、クランク角躍度の変動量にΔδｄ基づいて、１回の燃焼行程の間における失火の有無を判定する内燃機関の制御装置５０及び制御方法。【選択図】図３
2019100300.tif 000002
【特許請求の範囲】
【請求項１】
クランク軸と一体回転する回転部材に、予め定められた複数のクランク角度に設けられた複数の被検出部と、非回転部材に固定され、前記被検出部を検出する特定クランク角センサと、を備えた内燃機関の制御装置であって、
前記特定クランク角センサの出力信号に基づいて、クランク角度を検出すると共に、前記クランク角度の時間変化率であるクランク角速度、前記クランク角速度の時間変化率であるクランク角加速度、及び前記クランク角加速度の時間変化率であるクランク角躍度を算出する角度情報算出部と、
前記クランク角躍度に基づいて、前記内燃機関の１回の燃焼行程に対応して設定した判定期間における前記クランク角躍度の変動量を算出し、前記クランク角躍度の変動量に基づいて、前記１回の燃焼行程の間における失火の有無を判定する失火判定部と、
を備える内燃機関の制御装置。
【請求項２】
前記失火判定部は、前記クランク角躍度に基づいて、前記１回の燃焼行程に対応した前記判定期間における前記クランク角躍度の最大値と前記クランク角躍度の最小値を算出し、前記クランク角躍度の最大値と前記クランク角躍度の最小値の差を前記クランク角躍度の変動量として算出する請求項１に記載の内燃機関の制御装置。
【請求項３】
前記失火判定部は、
前記１回の燃焼行程の前側に設定された前期間における前記クランク角躍度の中の最大値を、前記クランク角躍度の最大値として算出し、
前記前期間の直前に設定された直前期間、及び前記前期間の直後に設定された後期間の一方又は双方における前記クランク角躍度の中の最小値を、前記クランク角躍度の最小値として算出する請求項２に記載の内燃機関の制御装置。
【請求項４】
前記失火判定部による失火の判定結果を、報知装置を介してユーザに報知する失火報知部を更に備えた請求項１から３のいずれか一項に記載の内燃機関の制御装置。
【請求項５】
クランク軸と一体回転する回転部材に、予め定められた複数のクランク角度に設けられた複数の被検出部と、非回転部材に固定され、前記被検出部を検出する特定クランク角センサと、を備えた内燃機関の制御方法であって、
前記特定クランク角センサの出力信号に基づいて、クランク角度を検出すると共に、前記クランク角度の時間変化率であるクランク角速度、前記クランク角速度の時間変化率であるクランク角加速度、及び前記クランク角加速度の時間変化率であるクランク角躍度を算出する角度情報算出ステップと、
前記クランク角躍度に基づいて、前記内燃機関の１回の燃焼行程に対応して設定した判定期間における前記クランク角躍度の変動量を算出し、前記クランク角躍度の変動量に基づいて、前記１回の燃焼行程の間における失火の有無を判定する失火判定ステップと、
を実行する内燃機関の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クランク軸と一体回転する回転部材に、予め定められた複数のクランク角度に設けられた複数の被検出部と、非回転部材に固定され、前記被検出部を検出する特定クランク角センサと、を備えた内燃機関の制御装置及び制御方法に関するものである。
【背景技術】
【０００２】
上記のような制御装置に関して、例えば下記の特許文献１に記載された技術が既に知られている。特許文献１の技術では、クランク角センサの出力信号に基づいて、クランク角速度及びクランク角加速度及びクランク角躍度を算出し、クランク角躍度に基づいてクランク角度間隔の誤差を補正し、補正後のクランク角速度、クランク角加速度に基づいて筒内圧力を推定するように構成されている。また、同文献の〔０１１９〕には、本技術を用いて失火検出等を行うように構成されても良いことが記載されているが、具体的にどのような方法で失火検出を行うかについては記載されていない。
【０００３】
失火検出に関しては、例えば下記の特許文献２に記載された技術が既に知られている。特許文献２の技術では、ＢＴＤＣ７６ｄｅｇＣＡ信号（以下、Ｂ７６）およびＢＴＤＣ６ｄｅｇＣＡ信号（以下、Ｂ０６）に基づいて、Ｂ７６−Ｂ０６間を示すＴＬ（ｉ）とＢ０６−Ｂ７６間を示すＴＵ（ｉ）とＢ７６−Ｂ７６間を示すＴＡ（ｉ）とＢ０６−Ｂ０６間を示すＴＳ（ｉ）を算出し、これらに基づいて角加速度αや周期比Ｓを更に算出して失火検出を行う方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第６０１２８９２号公報
【特許文献２】特許第３４９５４６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
そこで、本願の発明者は、これらの技術を組み合せて失火検出を行うことを検討した。例えば、特許文献１の技術によりクランク角度間隔の誤差を補正した補正後のクランク角度間隔に基づいて、特許文献２の技術であるＢ７６とＢ０６（又はその近傍のエッジ）に関わる上述の各周期（ＴＬ，ＴＵ，ＴＡ，ＴＳ）や角加速度α等を算出し、それに基づいて失火検出を行うことを検討した。しかしながら、本方法では、ハイブリッド車のようなモータージェネレータと内燃機関が接続されている場合に、特定の内燃機関の回転速度において共振が発生して内燃機関の回転速度に周期変動が重畳することがあり、失火検出の精度が悪化する場合があるという課題があった。
【０００６】
この原因は、以下のように考えられる。まず、ＴＡ（ｉ）等に基づいて算出される角加速度αは、一行程前の燃焼時と現在の行程の燃焼時の内燃機関の回転速度を比べた際に、ほぼ同じ内燃機関の回転速度であればα≒０、加速している場合はα＞０、減速している場合はα＜０となる。失火なし燃焼行程→失火あり燃焼行程の場合はα＜０に、失火あり燃焼行程→失火なし燃焼行程の場合はα＞０となることから、ある範囲以上の角加速度変化があった場合に失火と判定される。また、連続失火や間欠失火といったような失火のパターンによっては、より複雑な判定パターンや閾値を用意しておき、それに当てはまる場合にも失火と判定される。ここで、モータージェネレータと内燃機関の共振が、内燃機関の数行程程度の周期で、失火した際の内燃機関の回転速度の低下より大きな振幅にて生じると、失火による角加速度αがモータージェネレータと内燃機関の共振に埋もれてしまい、その結果、失火検出の精度が悪化する。なお、このような場合でも、更に複雑な判定パターンや閾値を用意しておけば失火検出できる可能性もあるが、このような複雑な判定パターンを用いると、適合工数の増大や失火誤検出のおそれが生じるため、簡素な演算で精度良く失火検出できる方法が求められる。
【０００７】
また、特許文献１に開示されている技術では筒内圧力を推定することができ、これに基づいて失火検出を行うこともできるが、例えば、同技術を失火検出のみに用いるような場合には演算量が多くなるという課題がある。
【０００８】
そこで、クランク軸に数行程周期の振動が生じた場合でも、簡素な演算で精度良く失火検出できる内燃機関の制御装置及び制御方法が求められる。
【課題を解決するための手段】
【０００９】
本発明に係る内燃機関の制御装置は、クランク軸と一体回転する回転部材に、予め定められた複数のクランク角度に設けられた複数の被検出部と、非回転部材に固定され、前記被検出部を検出する特定クランク角センサと、を備えた内燃機関の制御装置であって、
前記特定クランク角センサの出力信号に基づいて、クランク角度を検出すると共に、前記クランク角度の時間変化率であるクランク角速度、前記クランク角速度の時間変化率であるクランク角加速度、及び前記クランク角加速度の時間変化率であるクランク角躍度を算出する角度情報算出部と、
前記クランク角躍度に基づいて、前記内燃機関の１回の燃焼行程に対応して設定した判定期間における前記クランク角躍度の変動量を算出し、前記クランク角躍度の変動量に基づいて、前記１回の燃焼行程の間における失火の有無を判定する失火判定部と、
を備えるものである。
【００１０】
また、本発明に係る内燃機関の制御方法は、クランク軸と一体回転する回転部材に、予め定められた複数のクランク角度に設けられた複数の被検出部と、非回転部材に固定され、前記被検出部を検出する特定クランク角センサと、を備えた内燃機関の制御方法であって、
前記特定クランク角センサの出力信号に基づいて、クランク角度を検出すると共に、前記クランク角度の時間変化率であるクランク角速度、前記クランク角速度の時間変化率であるクランク角加速度、及び前記クランク角加速度の時間変化率であるクランク角躍度を算出する角度情報算出ステップと、
前記クランク角躍度に基づいて、前記内燃機関の１回の燃焼行程に対応して設定した判定期間における前記クランク角躍度の変動量を算出し、前記クランク角躍度の変動量に基づいて、前記１回の燃焼行程の間における失火の有無を判定する失火判定ステップと、
を実行するものである。
【発明の効果】
【００１１】
本発明に係る内燃機関の制御装置及びその制御方法によれば、１回の燃焼行程に対応して設定した判定期間のクランク角躍度の変動量に基づいて、失火の有無を判定するので、数行程周期の振動の影響を受け難く、簡素な演算で精度良く失火検出することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態１に係る内燃機関及び制御装置の概略構成図である。
【図２】本発明の実施の形態１に係る内燃機関及び制御装置の概略構成図である。
【図３】本発明の実施の形態１に係る制御装置のブロック図である。
【図４】本発明の実施の形態１に係る制御装置のハードウェア構成図である。
【図５】本発明の実施の形態１に係る角度情報検出処理を説明するためのタイムチャートである。
【図６】本発明の実施の形態１に係る、記憶装置に記憶される補正値を説明するための図である。
【図７】本発明の実施の形態１に係る角度情報算出処理を説明するためのタイムチャートである。
【図８】本発明の実施の形態１に係る失火検出を説明するための図である。
【図９】本発明の実施の形態１に係る概略的な処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
１．実施の形態１
実施の形態１に係る内燃機関の制御装置５０（以下、単に制御装置５０と称す）について図面を参照して説明する。図１及び図２は、本実施の形態に係る内燃機関１及び制御装置５０の概略構成図であり、図３は、本実施の形態に係る制御装置５０のブロック図である。内燃機関１及び制御装置５０は、車両に搭載され、内燃機関１は、車両（車輪）の駆動力源となる。
【００１４】
１−１．内燃機関１の構成
まず、内燃機関１の構成について説明する。図１に示すように、内燃機関１は、空気と燃料の混合気を燃焼する気筒７を備えている。内燃機関１は、気筒７に空気を供給する吸気路２３と、気筒７で燃焼した排気ガスを排出する排気路１７とを備えている。内燃機関１は、ガソリンエンジンとされている。内燃機関１は、吸気路２３を開閉するスロットルバルブ４を備えている。スロットルバルブ４は、制御装置５０により制御される電気モータにより開閉駆動される電子制御式スロットルバルブとされている。スロットルバルブ４には、スロットルバルブ４の開度に応じた電気信号を出力するスロットル開度センサ１９が設けられている。
【００１５】
スロットルバルブ４の上流側の吸気路２３には、吸気路２３に吸入される吸入空気量に応じた電気信号を出力するエアフローセンサ３が設けられている。内燃機関１は、排気ガス還流装置２０を備えている。排気ガス還流装置２０は、排気路１７から吸気マニホールド１２に排気ガスを還流するＥＧＲ流路２１と、ＥＧＲ流路２１を開閉するＥＧＲバルブ２２と、を有している。吸気マニホールド１２は、スロットルバルブ４の下流側の吸気路２３の部分である。ＥＧＲバルブ２２は、制御装置５０により制御される電気モータにより開閉駆動される電子制御式ＥＧＲバルブとされている。排気路１７には、排気路１７内の排気ガスの空燃比に応じた電気信号を出力する空燃比センサ１８を備えている。
【００１６】
吸気マニホールド１２には、吸気マニホールド１２内の圧力に応じた電気信号を出力するマニホールド圧センサ８が設けられている。吸気マニホールド１２の下流側の部分には、燃料を噴射するインジェクタ１３が設けられている。なお、インジェクタ１３は、気筒７内に直接燃料を噴射するように設けられてもよい。内燃機関１には、大気圧に応じた電気信号を出力する大気圧センサ３３が設けられている。
【００１７】
気筒７の頂部には、空気と燃料の混合気に点火する点火プラグと、点火プラグに点火エネルギーを供給する点火コイル１６と、が設けられている。また、気筒７の頂部には、吸気路２３から気筒７内に吸入される吸入空気量を調節する吸気バルブ１４と、シリンダ内から排気路１７に排出される排気ガス量を調節する排気バルブ１５と、が設けられている。
【００１８】
図２に示すように、内燃機関１は、複数の気筒７（本例では３つ）を備えている。各気筒７内には、ピストン５が備えられている。各気筒７のピストン５は、コンロッド９及びクランク３２を介してクランク軸２に接続されている。クランク軸２は、ピストン５の往復運動によって回転駆動される。各気筒７で発生した燃焼ガス圧は、ピストン５の頂面を押圧し、コンロッド９及びクランク３２を介してクランク軸２を回転駆動する。クランク軸２は、車輪に駆動力を伝達する動力伝達機構に連結されている。動力伝達機構は、変速装置、ディファレンシャルギヤ等から構成される。なお、内燃機関１を備えた車両は、動力伝達機構内にモータージェネレータを備えたハイブリッド車であってもよい。
【００１９】
内燃機関１は、クランク軸２と一体回転する信号板１０を備えている。信号板１０は、予め定められた複数のクランク角度に複数の歯を設けている。本実施の形態では、信号板１０は、１０ｄｅｇ間隔で歯が並べられている。信号板１０の歯には、一部の歯が欠けた欠け歯部分が設けられている。内燃機関１は、エンジンブロック２４に固定され、信号板１０の歯を検出する第１クランク角センサ１１を備えている。
【００２０】
内燃機関１は、クランク軸２とチェーン２８で連結されたカム軸２９を備えている。カム軸２９は、吸気バルブ１４及び排気バルブ１５を開閉駆動する。クランク軸２が２回転する間に、カム軸２９は１回転する。内燃機関１は、カム軸２９と一体回転するカム用の信号板３１を備えている。カム用の信号板３１は、予め定められた複数のカム軸角度に複数の歯を設けている。内燃機関１は、エンジンブロック２４に固定され、カム用の信号板３１の歯を検出するカム角センサ３０を備えている。
【００２１】
制御装置５０は、第１クランク角センサ１１及びカム角センサ３０の２種類の出力信号に基づいて、各ピストン５の上死点を基準としたクランク角度を検出すると共に、各気筒７の行程を判別する。なお、内燃機関１は、吸入行程、圧縮行程、燃焼行程、及び排気行程の４行程機関とされている。
【００２２】
内燃機関１は、クランク軸２と一体回転するフライホイール２７を備えている。フライホイール２７の外周部は、リングギア２５とされており、リングギア２５は、予め定められた複数のクランク角度に複数の歯を設けている。リングギア２５の歯は、周方向に等角度間隔で設けられている。本例では４ｄｅｇ間隔で、９０個の歯が設けられている。リングギア２５の歯には欠け歯部分は設けられていない。内燃機関１は、エンジンブロック２４に固定され、リングギア２５の歯を検出する第２クランク角センサ６を備えている。第２クランク角センサ６は、リングギア２５の径方向外側に、リングギア２５と間隔を空けて対向配置されている。フライホイール２７のクランク軸２とは反対側は、動力伝達機構に連結されている。よって、内燃機関１の出力トルクは、フライホイール２７の部分を通って、車輪側に伝達される。
【００２３】
第１クランク角センサ１１、カム角センサ３０、及び第２クランク角センサ６は、クランク軸２の回転による、各センサと歯の距離の変化に応じた電気信号を出力する。各角センサ１１、３０、６の出力信号は、センサと歯の距離が近い場合と、遠い場合とで信号がオンオフする矩形波となる。各角センサ１１、３０、６には、例えば、電磁ピックアップ式のセンサが用いられる。
【００２４】
フライホイール２７（リングギア２５）は、信号板１０の歯数よりも多い歯数を有しており、また、欠け歯部分もないため、高分解能の角度検出を期待できる。また、フライホイール２７は、信号板１０の質量よりも大きい質量を有しており、高周波振動が抑制されるため、高精度の角度検出を期待できる。
【００２５】
本実施の形態では、第２クランク角センサ６が、本発明における「特定クランク角センサ」に相当し、フライホイール２７が、本発明における「回転部材」に相当し、フライホイール２７に設けられたリングギア２５の歯が、本発明における「被検出部」に相当し、エンジンブロック２４が、本発明における「非回転部材」に相当する。
【００２６】
１−２．制御装置５０の構成
次に、制御装置５０について説明する。
制御装置５０は、内燃機関１を制御対象とする制御装置である。図３に示すように、制御装置５０は、角度情報算出部５１、失火判定部５２、及び失火報知部５３等の制御部を備えている。制御装置５０の各制御部５１、５２、５３等は、制御装置５０が備えた処理回路により実現される。具体的には、制御装置５０は、図４に示すように、処理回路として、ＣＰＵ（Central Processing Unit）等の演算処理装置９０（コンピュータ）、演算処理装置９０とデータのやり取りする記憶装置９１、演算処理装置９０に外部の信号を入力する入力回路９２、及び演算処理装置９０から外部に信号を出力する出力回路９３等を備えている。
【００２７】
演算処理装置９０として、ＡＳＩＣ（Application Specific Integrated Circuit）、ＩＣ（Integrated Circuit）、ＤＳＰ（Digital Signal Processor）、ＦＰＧＡ（Field Programmable Gate Array）、各種の論理回路、及び各種の信号処理回路等が備えられてもよい。また、演算処理装置９０として、同じ種類のもの又は異なる種類のものが複数備えられ、各処理が分担して実行されてもよい。
【００２８】
記憶装置９１として、演算処理装置９０からデータを読み出し及び書き込みが可能に構成されたＲＡＭ（Random Access Memory）や、演算処理装置９０からデータを読み出し可能に構成されたＲＯＭ（Read Only Memory）等が備えられている。入力回路９２は、各種のセンサやスイッチが接続され、これらセンサやスイッチの出力信号を演算処理装置９０に入力するＡ／Ｄ変換器等を備えている。出力回路９３は、電気負荷が接続され、これら電気負荷に演算処理装置９０から制御信号を出力する駆動回路等を備えている。
【００２９】
そして、制御装置５０が備える各制御部５１、５２、５３等の各機能は、演算処理装置９０が、ＲＯＭ等の記憶装置９１に記憶されたソフトウェア（プログラム）を実行し、記憶装置９１、入力回路９２、及び出力回路９３等の制御装置５０の他のハードウェアと協働することにより実現される。なお、各制御部５１、５２、５３等が用いる定数値、テーブル、判定値等の設定データは、ソフトウェア（プログラム）の一部として、ＲＯＭ等の記憶装置９１に記憶されている。また、各制御部５１、５２、５３等が算出したクランク角度θｄ、クランク角速度ωｄ、クランク角加速度αｄ、クランク角躍度δｄ等の各算出値及び各検出値のデータは、ＲＡＭ等の書き換え可能な記憶装置９１に記憶される。
【００３０】
本実施の形態では、入力回路９２には、第１クランク角センサ１１、カム角センサ３０、第２クランク角センサ６、エアフローセンサ３、スロットル開度センサ１９、マニホールド圧センサ８、大気圧センサ３３、空燃比センサ１８、及びアクセルポジションセンサ２６等が接続されている。出力回路９３には、スロットルバルブ４（電気モータ）、ＥＧＲバルブ２２（電気モータ）、インジェクタ１３、点火コイル１６、及び報知装置３４等が接続されている。なお、制御装置５０には、図示していない各種のセンサ、スイッチ、及びアクチュエータ等が接続されている。制御装置５０は、各種センサの出力信号に基づいて、吸入空気量、吸気マニホールド１２内の圧力、大気圧、空燃比、及びアクセル開度等の内燃機関１の運転状態を検出する。
【００３１】
制御装置５０は、基本的な制御として、入力された各種センサの出力信号等に基づいて、燃料噴射量、点火時期等を算出し、インジェクタ１３及び点火コイル１６等を駆動制御する。制御装置５０は、アクセルポジションセンサ２６の出力信号等に基づいて、運転者が要求している内燃機関１の出力トルクを算出し、当該要求出力トルクを実現する吸入空気量となるように、スロットルバルブ４等を制御する。具体的には、制御装置５０は、目標スロットル開度を算出し、スロットル開度センサ１９の出力信号に基づき検出したスロットル開度が、目標スロットル開度に近づくように、スロットルバルブ４の電気モータを駆動制御する。また、制御装置５０は、入力された各種センサの出力信号等に基づいて、ＥＧＲバルブ２２の目標開度を算出し、ＥＧＲバルブ２２の電気モータを駆動制御する。
【００３２】
１−２−１．角度情報算出部５１
角度情報算出部５１は、特定クランク角センサとされた第２クランク角センサ６の出力信号に基づいて、クランク角度θｄを検出すると共に、クランク角度θｄの時間変化率であるクランク角速度ωｄ、及びクランク角速度ωｄの時間変化率であるクランク角加速度αｄ、及びクランク角加速度αｄの時間変化率であるクランク角躍度δｄを算出する。本実施の形態では、角度情報算出部５１は、角度情報検出部６０、角度情報補正部６１、及び補正後角度情報算出部６２を備えており、リングギア２５の歯の製造ばらつき等による角度情報の誤差を補正するように構成されている。
【００３３】
＜角度情報検出部６０＞
角度情報検出部６０は、図５に示すように、第２クランク角センサ６の出力信号に基づいてクランク角度θｄを検出すると共にクランク角度θｄを検出した検出時刻Ｔｄを検出する。そして、角度情報検出部６０は、検出したクランク角度θｄである検出角度θｄ及び検出時刻Ｔｄに基づいて、検出角度θｄの間の角度区間Ｓｄに対応する角度間隔Δθｄ及び時間間隔ΔＴｄを算出する。
【００３４】
本実施の形態では、角度情報検出部６０は、第２クランク角センサ６の出力信号（矩形波）の立下りエッジ（又は立上りエッジ）を検出した時のクランク角度θｄを判定するように構成されている。角度情報検出部６０は、基点角度（例えば、第１気筒♯１のピストン５の上死点である０ｄｅｇ）に対応する立下りエッジである基点立下りエッジを判定し、基点立下りエッジを基点にカウントアップした立下りエッジの番号ｎ（以下、角度識別番号ｎと称す）に対応するクランク角度θｄを判定する。例えば、角度情報検出部６０は、基点立下りエッジを検出した時に、クランク角度θｄを基点角度（例えば、０ｄｅｇ）に設定すると共に角度識別番号ｎを０に設定する。そして、角度情報検出部６０は、立下りエッジを検出する毎に、クランク角度θｄを、予め設定された角度間隔Δθｄ（本例では４ｄｅｇ）ずつ増加させると共に角度識別番号ｎを１つずつ増加させる。或いは、角度情報検出部６０は、角度識別番号ｎとクランク角度θｄとの関係が予め設定された角度テーブルを用い、今回の角度識別番号ｎに対応するクランク角度θｄを読み出すように構成されてもよい。角度情報検出部６０は、クランク角度θｄ（検出角度θｄ）を角度識別番号ｎに対応付ける。角度識別番号ｎは、最大番号（本例では９０）の後、１に戻る。角度識別番号ｎ＝１の前回の角度識別番号ｎは９０になり、角度識別番号ｎ＝９０の次回の角度識別番号ｎは１になる。
【００３５】
本実施の形態では、角度情報検出部６０は、後述する、第１クランク角センサ１１及びカム角センサ３０に基づいて検出した参照クランク角度を参照して、第２クランク角センサ６の基点立下りエッジを判定する。例えば、角度情報検出部６０は、第２クランク角センサ６の立下りエッジを検出した時の参照クランク角度が、基点角度に最も近い立下りエッジを、基点立下りエッジと判定する。
【００３６】
また、角度情報検出部６０は、第１クランク角センサ１１及びカム角センサ３０に基づいて判別した各気筒７の行程を参照して、クランク角度θｄに対応する各気筒７の行程を判定する。
【００３７】
角度情報検出部６０は、第２クランク角センサ６の出力信号（矩形波）の立下りエッジを検出した時の検出時刻Ｔｄを検出し、検出時刻Ｔｄを角度識別番号ｎに対応付ける。具体的には、角度情報検出部６０は、演算処理装置９０が備えたタイマー機能を用いて、検出時刻Ｔｄを検出する。
【００３８】
角度情報検出部６０は、図５に示すように、立下りエッジを検出した時に、今回の角度識別番号（ｎ）に対応する検出角度θｄ（ｎ）と、前回の角度識別番号（ｎ−１）に対応する検出角度θｄ（ｎ−１）との間の角度区間を、今回の角度識別番号（ｎ）に対応する角度区間Ｓｄ（ｎ）に設定する。
【００３９】
また、角度情報検出部６０は、式（１）に示すように、立下りエッジを検出した時に、今回の角度識別番号（ｎ）に対応する検出角度θｄ（ｎ）と、前回の角度識別番号（ｎ−１）に対応する検出角度θｄ（ｎ−１）との偏差を算出して、今回の角度識別番号（ｎ）（今回の角度区間Ｓｄ（ｎ））に対応する角度間隔Δθｄ（ｎ）に設定する。
Δθｄ（ｎ）＝θｄ（ｎ）−θｄ（ｎ−１）        ・・・（１）
本実施の形態では、リングギア２５の歯の角度間隔は、全て等しくされているので、角度情報検出部６０は、全ての角度識別番号ｎの角度間隔Δθｄを、予め設定された角度（本例では４ｄｅｇ）に設定する。
【００４０】
また、角度情報検出部６０は、式（２）に示すように、立下りエッジを検出した時に、今回の角度識別番号（ｎ）に対応する検出時刻Ｔｄ（ｎ）と、前回の角度識別番号（ｎ−１）に対応する検出時刻Ｔｄ（ｎ−１）との偏差を算出して、今回の角度識別番号（ｎ）（今回の角度区間Ｓｄ（ｎ））に対応する時間間隔ΔＴｄ（ｎ）に設定する。
ΔＴｄ（ｎ）＝Ｔｄ（ｎ）−Ｔｄ（ｎ−１）        ・・・（２）
【００４１】
角度情報検出部６０は、第１クランク角センサ１１及びカム角センサ３０の２種類の出力信号に基づいて、第１気筒♯１のピストン５の上死点を基準とした参照クランク角度を検出すると共に、各気筒７の行程を判別する。例えば、角度情報検出部６０は、第１クランク角センサ１１の出力信号（矩形波）の立下りエッジの時間間隔から、信号板１０の欠け歯部分の直後の立下りエッジを判定する。そして、角度情報検出部６０は、欠け歯部分の直後の立下りエッジを基準にした各立下りエッジと、上死点を基準にした参照クランク角度と対応関係を判定し、各立下りエッジを検出した時の、上死点を基準とした参照クランク角度を算出する。また、角度情報検出部６０は、第１クランク角センサ１１の出力信号（矩形波）における欠け歯部分の位置と、カム角センサ３０の出力信号（矩形波）との関係から、各気筒７の行程を判別する。
【００４２】
＜角度情報補正部６１＞
角度情報補正部６１は、角度区間Ｓｄのそれぞれの角度間隔Δθｄ又は時間間隔ΔＴｄを、角度区間Ｓｄのそれぞれに対応して１つずつ設けた補正値Ｋｃにより補正する。この補正値Ｋｃは、リングギア２５の歯の角度間隔の微小なばらつきを補正するためのものであり、リングギア２５を内燃機関１に組み付ける前であれば、例えば、リングギア２５を単体で一定速度にて回転させた時の、平均時間間隔と角度区間Ｓｄの時間間隔ΔＴｄの比を用いて、角度区間Ｓｄのそれぞれの補正値Ｋｃを予め算出しておき、それを記憶しておいて用いることができる。また、リングギア２５を内燃機関１に組み付けた後であれば、例えば、特許第６０１２８９２号公報に開示されている技術と同様に、内燃機関１が燃料カット中などの一定速度で回転している条件下において、角度区間Ｓｄのそれぞれのクランク角躍度δｄがゼロに近づくように、角度区間Ｓｄのそれぞれの補正値Ｋｃを変化させてもよい。より簡単には、補正値Ｋｃで補正する代わりに、角度区間Ｓｄの前後にわたる時間間隔ΔＴｄの移動平均値又は重み付平均値を、角度区間Ｓｄのそれぞれの補正後の時間間隔ΔＴｄｃとして算出するようにしてもよい。
【００４３】
本実施の形態では、角度情報補正部６１は、各角度識別番号ｎの角度区間Ｓｄ（ｎ）に１つずつ補正値Ｋｃ（ｎ）を設けている。本例では、角度識別番号ｎ及び角度区間Ｓｄは９０設けられているので、補正値Ｋｃも９０設けられている。各補正値Ｋｃは、図６に示すように、各角度識別番号ｎに対応付けられて、制御装置５０のＲＡＭ等の書き換え可能な記憶装置９１に記憶される。
【００４４】
角度情報補正部６１は、式（３）に示すように、今回の角度識別番号（ｎ）に対応する角度間隔Δθｄ（ｎ）又は時間間隔ΔＴｄ（ｎ）に、今回の角度識別番号（ｎ）に対応する補正値Ｋｃ（ｎ）を乗算して、今回の角度識別番号（ｎ）に対応する補正後の角度間隔Δθｄｃ（ｎ）又は時間間隔ΔＴｄｃ（ｎ）を算出するように構成されている。
Δθｄｃ（ｎ）＝Ｋｃ（ｎ）×Δθｄ（ｎ）
又は                                        ・・・（３）
ΔＴｄｃ（ｎ）＝Ｋｃ（ｎ）×ΔＴｄ（ｎ）
【００４５】
本実施の形態では、補正値Ｋｃにより時間間隔ΔＴｄが補正される場合について説明する。なお、補正値Ｋｃにより補正されていない角度間隔Δθｄも、説明の便宜上、補正後の角度間隔Δθｄｃと称す。
【００４６】
＜補正後角度情報算出部６２＞
補正後角度情報算出部６２は、角度区間Ｓｄのそれぞれの補正値Ｋｃによる補正後の角度間隔Δθｄｃ及び時間間隔ΔＴｄｃに基づいて、検出角度θｄ又は角度区間Ｓｄのそれぞれに対応する、クランク角度θｄの時間変化率であるクランク角速度ωｄ、及びクランク角速度ωｄの時間変化率であるクランク角加速度αｄ、及びクランク角加速度αｄの時間変化率であるクランク角躍度δｄを算出する。
【００４７】
本実施の形態では、図７に示すように、補正後角度情報算出部６２は、処理対象とする角度区間Ｓｄ（ｎ）に対応する補正後の角度間隔Δθｄｃ（ｎ）及び時間間隔ΔＴｄｃ（ｎ）に基づいて、処理対象の角度区間Ｓｄ（ｎ）に対応するクランク角速度ωｄ（ｎ）を算出する。具体的には、補正後角度情報算出部６２は、式（４）に示すように、処理対象の角度区間Ｓｄ（ｎ）に対応する補正後の角度間隔Δθｄｃ（ｎ）を補正後の時間間隔ΔＴｄｃ（ｎ）で除算して、クランク角速度ωｄ（ｎ）を算出する。
ωｄ（ｎ）＝Δθｄｃ（ｎ）／ΔＴｄｃ（ｎ）          ・・・（４）
【００４８】
補正後角度情報算出部６２は、処理対象とする検出角度θｄ（ｎ）の直前１つの角度区間Ｓｄ（ｎ）に対応するクランク角速度ωｄ（ｎ）及び補正後の時間間隔ΔＴｄｃ（ｎ）、並びに処理対象の検出角度θｄ（ｎ）の直後１つの角度区間Ｓｄ（ｎ＋１）に対応するクランク角速度ωｄ（ｎ＋１）及び補正後の時間間隔ΔＴｄｃ（ｎ＋１）に基づいて、処理対象の検出角度θｄ（ｎ）に対応するクランク角加速度αｄ（ｎ）を算出する。具体的には、補正後角度情報算出部６２は、式（５）に示すように、直後のクランク角速度ωｄ（ｎ＋１）から直前のクランク角速度ωｄ（ｎ）を減算した減算値を、直後の補正後の時間間隔ΔＴｄｃ（ｎ＋１）と直前の補正後の時間間隔ΔＴｄｃ（ｎ）の平均値で除算して、クランク角加速度αｄ（ｎ）を算出する。
αｄ（ｎ）＝｛ωｄ（ｎ＋１）−ωｄ（ｎ）｝
／｛ΔＴｄｃ（ｎ＋１）＋ΔＴｄｃ（ｎ）｝×２      ・・・（５）
【００４９】
補正後角度情報算出部６２は、式（６）に示すように、対象検出角度θｄ（ｎ）の直後のクランク角加速度αｄ（ｎ＋１）から直前のクランク角加速度αｄ（ｎ−１）を減算した減算値を、対象検出角度θｄ（ｎ）の直後の補正後の時間間隔ΔＴｄｃ（ｎ＋１）と直前の補正後の時間間隔ΔＴｄｃ（ｎ）の合計値で除算して、対象検出角度θｄ（ｎ）のクランク角躍度δｄ（ｎ）を算出する。
δｄ（ｎ）＝｛αｄ（ｎ＋１）−αｄ（ｎ−１）｝
／｛ΔＴｄｃ（ｎ＋１）＋ΔＴｄｃ（ｎ）｝      ・・・（６）
【００５０】
角度情報補正部６１及び補正後角度情報算出部６２は、リアルタイムに算出された角度間隔Δθｄ又は時間間隔ΔＴｄに対して、リアルタイムに補正値Ｋｃにより補正を行い、リアルタイムにクランク角速度ωｄ、クランク角加速度αｄ、クランク角躍度δｄを算出する。角度情報算出部５１の各部は、算出した各角度情報を記憶装置９１に記憶する。
【００５１】
１−２−２．失火判定部５２
１−２−２−１．失火判定の原理
クランク角躍度δｄにより、失火の有無を判定できる原理について説明する。一般に、回転軸周りの運動方程式は式（７）のように書くことができる。
Ｉ×ｄω／ｄｔ＝Ｉ×α＝Ｔ                                  ・・・（７）
ここで、Ｉはイナーシャであり、ωは角速度であり、αは角加速度であり、Ｔはトルクである。この式は、回転軸周りにトルクがかかると、イナーシャの大きさに反比例した角加速度で回転し、トルクがかからない場合は、一定の角速度で回転すると解釈できる。
【００５２】
この式を内燃機関のクランク軸周りに適用すると式（８）のように書くことができる。
Ｉｅｎｇ×ｄωｄ／ｄｔ＝Ｉｅｎｇ×αｄ＝Ｔｇ−Ｔｌｏａｄ      ・・・（８）
ここで、Ｉｅｎｇは内燃機関のイナーシャであり、ωｄはクランク角速度であり、αｄはクランク角加速度であり、Ｔｇは燃焼により発生するトルクであり、Ｔｌｏａｄは負荷トルクであり、内燃機関や動力伝達機構の摩擦抵抗や車両の走行抵抗などの全ての負荷の合計である。
【００５３】
この式を、式（７）同様に解釈する際に、以下のように、クランク角加速度や発生・負荷トルクを１回の燃焼行程間の平均値で考えた場合と、クランク角度間隔（本例では４ｄｅｇ）の平均値で考えた場合で若干異なる結果となる。
【００５４】
＜１回の燃焼行程間の平均値で考えた場合＞
１回の燃焼行程間の発生トルクの平均値と負荷トルクの平均値が一致している場合、式（８）の右辺はゼロになるので、内燃機関は一定速度で回転していることを示す。これは、例えば内燃機関の回転速度が一定である定常運転状態を示している。また、Ｔｇ−Ｔｌｏａｄ＞０の場合は、内燃機関は加速している状態であり、Ｔｇ−Ｔｌｏａｄ＜０の場合は減速している状態である。失火時はＴｇ＝０となるので、減速状態となる。このような複数の燃焼行程の間での加速・減速・定常の変化に基づいて失火検出を行う例が、上述の特許文献２に示されるような方法であると言える。しかしながら、内燃機関は間欠的にトルクを発生させる機関であるので、１回の燃焼行程間でのトルクの変化を詳細に見ると、少し様子は変わってくる。
【００５５】
＜クランク角度間隔間の平均値で考えた場合＞
上述のように内燃機関は間欠的にトルクを発生させる機関であるので、１回の燃焼行程間でも、混合気が急速に燃焼している急速燃焼期間と、混合気が急速に燃焼していない非急速燃焼期間が存在している。また、燃焼期間は通常４０〜６０ｄｅｇ程度の期間であるので、１回の燃焼行程間（３気筒エンジンなら２４０ｄｅｇ、４気筒エンジンなら１８０ｄｅｇ）では燃焼していない非燃焼期間の方が一般に長くなる。
【００５６】
ここで、内燃機関が定常運転している場合を考えると、１回の燃焼行程間の発生トルクの平均値と負荷トルクの平均値は同じであるが、負荷トルクは常にかかっているのに対し、燃焼による発生トルクは短期間しか発生しない。つまり、燃焼による発生トルクは、瞬間的に大きくなると言える。このように考えると、内燃機関の回転速度が一定の場合でも、クランク角度間隔間の平均値としての発生トルクは、１回の燃焼行程間に大きな変動が重畳することがわかる。また、失火時には発生トルクはゼロとなるので、負荷トルクのみがかかることになる。このように、１回の燃焼行程間のトルク変動を捉えることができれば、従来技術のような複数の燃焼行程の間の加減速変化を見るまでもなく、容易に失火検出を行うことができることがわかる。
【００５７】
＜トルク変動の算出式＞
１回の燃焼行程間のトルク変動を検出する方法について説明する。ここで改めて式（７）にて、イナーシャを一定と考えると、トルクと角加速度は比例の関係にあることがわかる。今はトルクの変化が知りたいので、式（７）を更に微分した式（９）を考える。
Ｉ×ｄα／ｄｔ＝Ｉ×δ＝ｄＴ／ｄｔ                ・・・（９）
ここでδは角躍度である。式（９）は、トルクの微分値、つまり、トルクの時間変化率と角躍度は比例関係にあることを示しているので、これを内燃機関のクランク軸周りで考えると、トルク変動がクランク角躍度に比例する関係にあると言える。つまり、１回の燃焼行程間のクランク角躍度の変動を捉えることができれば、１回の燃焼行程間のトルク変動を捉えたことになり、前述の通り、容易に失火検出を行うことができるようになる。
【００５８】
クランク角躍度の変化の例を図８に示す。失火時のクランク角躍度は基本的に大きな変動はなく、急速燃焼期間（例えば、Ｂ０５ｄｅｇからＡ５５ｄｅｇ）と、燃焼直前期間（例えば、上死点前であるＢ６５ｄｅｇからＢ０５ｄｅｇ）及び非急速燃焼期間（例えば、燃焼後であるＡ５５ｄｅｇからＡ１１５ｄｅｇ等）とのクランク角躍度の変動は小さい。ここで、Ｂは、ＢＴＤＣ（Before Top Dead Center、上死点前）を表し、Ａは、ＡＴＤＣ（After Top Dead Center、上死点後）を表す。これに対し、失火がない場合は、急速燃焼期間のクランク角躍度は正方向に大きく変化するため、クランク角躍度の変動は大きくなる。１回の燃焼行程間のクランク角躍度の変動量を検出するには、例えば、急速燃焼期間のクランク角躍度の最大値δｄｍａｘと、燃焼直前期間又は非急速燃焼期間のクランク角躍度の最小値δｄｍｉｎとの差Δδｄを算出すればよい。このクランク角躍度差Δδｄが、１回の燃焼行程間のトルク変動に比例していると言えることから、クランク角躍度差Δδｄに基づいて、失火の有無の判定を行うことができる。更に、本方法では従来の方法の課題であったモータージェネレータと内燃機関の共振によると考えられる失火誤検出は発生しにくい。この共振は、数行程周期の振動であるので、クランク角度間隔間で算出したクランク角躍度の変動としては表れないためである。
【００５９】
１−２−２−２．失火判定部５２の構成
そこで、以上で説明した失火判定の原理に基づいて、失火判定部５２は、クランク角躍度δｄに基づいて、１回の燃焼行程に対応して設定した判定期間におけるクランク角躍度の変動量を算出し、クランク角躍度の変動量に基づいて、１回の燃焼行程の間における失火の有無を判定するように構成されている。本実施の形態では、失火判定部５２は、角躍度最大値算出部７０、角躍度最小値算出部７１、及び変動量失火判定部７２を備えている。
【００６０】
＜角躍度最大値算出部７０＞
角躍度最大値算出部７０は、補正後角度情報算出部６２により算出されたクランク角躍度δｄに基づいて、１回の燃焼行程に対応して設定した判定期間におけるクランク角躍度の最大値δｄｍａｘを算出する。本実施の形態では、角躍度最大値算出部７０は、１回の燃焼行程の前側に設定された前期間におけるクランク角躍度δｄの中の最大値を、クランク角躍度の最大値δｄｍａｘとして算出する。前期間は、混合気が急速に燃焼している急速燃焼期間に対応して予め設定され、例えば、Ｂ０５ｄｅｇからＡ５５ｄｅｇの期間に予め設定される。角躍度最大値算出部７０は、点火時期等の運転条件に応じて、前期間を変化させてもよい。
【００６１】
＜角躍度最小値算出部７１＞
角躍度最小値算出部７１は、補正後角度情報算出部６２により算出されたクランク角躍度δｄに基づいて、１回の燃焼行程に対応して設定した判定期間におけるクランク角躍度の最小値δｄｍｉｎを算出する。本実施の形態では、角躍度最小値算出部７１は、前期間の直前に設定された直前期間、及び前期間の直後に設定された後期間の一方又は双方（本例では、後期間のみ）におけるクランク角躍度δｄの中の最小値を、クランク角躍度の最小値δｄｍｉｎとして算出するように構成されている。直前期間は、急速燃焼期間の直前の期間に対応して予め設定され、例えば、Ｂ６５ｄｅｇからＢ０５ｄｅｇの期間に予め設定される。後期間は、混合気が急速に燃焼していない非急速燃焼期間に対応して予め設定され、例えば、Ａ５５ｄｅｇからＡ１１５ｄｅｇの期間に予め設定される。角躍度最小値算出部７１は、点火時期等の運転条件に応じて、直前期間、後期間を変化させてもよい。
【００６２】
本実施の形態では、前期間で最大値の算出処理を行い、直前期間及び後期間の一方又は双方で最小値の算出処理を行うように構成されているので、１回の燃焼行程に対応した判定期間の全体（直前期間＋前期間＋後期間）に亘って最大値の算出処理及び最小値の算出処理の双方を行う必要がなく、処理を半分にすることができる。
【００６３】
＜変動量失火判定部７２＞
変動量失火判定部７２は、クランク角躍度の最大値δｄｍａｘとクランク角躍度の最小値δｄｍｉｎの差Δδｄ（＝δｄｍａｘ−δｄｍｉｎ）をクランク角躍度の変動量Δδｄとして算出する。そして、変動量失火判定部７２は、クランク角躍度の変動量Δδｄが、予め設定した失火判定値より大きい場合は、対応する１回の燃焼行程では、失火しておらず燃焼したと判定し、クランク角躍度の変動量Δδｄが失火判定値以下の場合は、対応する１回の燃焼行程では、失火しており、燃焼していないと判定する。変動量失火判定部７２は、失火の判定結果を記憶装置９１に記憶する。例えば、変動量失火判定部７２は、失火したと判定した場合に、失火したと判定した結果を、失火したと判定した１回の燃焼行程に対応する気筒番号に関連付けて、記憶装置９１に記憶する。
【００６４】
１−２−３．失火報知部５３
失火報知部５３は、失火判定部５２による失火の判定結果を、報知装置３４を介してユーザに報知する。例えば、失火報知部５３は、失火の発生頻度が、予め設定された頻度判定値よりも高い場合は、報知装置３４としての故障警告灯を点灯させる。また、失火報知部５３は、運転席のメーターパネルに設けられた、報知装置３４としての表示画面に、失火の判定結果の情報を表示させる。失火報知部５３は、失火の判定結果を、ＯＢＤ（On Board Diagnostic）の故障情報の１つとして、車両に接続された報知装置３４としての車両診断装置に伝達する。
【００６５】
１−２−４．フローチャート
本実施の形態に係る制御装置５０の概略的な処理の手順（内燃機関１の制御方法）について、図９に示すフローチャートに基づいて説明する。図９のフローチャートの処理は、演算処理装置９０が記憶装置９１に記憶されたソフトウェア（プログラム）を実行することにより、例えば所定の演算周期毎に繰り返し実行される。
【００６６】
ステップＳ９１で、角度情報算出部５１は、上記のように、特定クランク角センサ６の出力信号に基づいてクランク角度θｄを検出すると共に、クランク角度θｄの時間変化率であるクランク角速度ωｄ、クランク角速度ωｄの時間変化率であるクランク角加速度αｄ、及びクランク角加速度αｄの時間変化率であるクランク角躍度δｄを算出する角度情報検出処理（角度情報検出ステップ）を実行する。
【００６７】
本実施の形態では、角度情報算出部５１は、角度情報検出部６０、角度情報補正部６１、及び補正後角度情報算出部６２を備えており、上記のように、角度情報の誤差を補正する誤差補正処理を行うように構成されている。
【００６８】
ステップＳ９２で、失火判定部５２は、上記のように、クランク角躍度δｄに基づいて、１回の燃焼行程に対応して設定した判定期間におけるクランク角躍度の変動量を算出し、クランク角躍度の変動量に基づいて、１回の燃焼行程の間における失火の有無を判定する失火判定処理（失火判定ステップ）を実行する。
【００６９】
本実施の形態では、角躍度最大値算出部７０は、クランク角躍度δｄに基づいて、１回の燃焼行程に対応した判定期間におけるクランク角躍度の最大値δｄｍａｘを算出する角躍度最大値算出処理（角躍度最大値算出ステップ）を実行する。
【００７０】
また、角躍度最小値算出部７１は、クランク角躍度δｄに基づいて、１回の燃焼行程に対応した判定期間におけるクランク角躍度の最小値δｄｍｉｎを算出する角躍度最小値算出処理（角躍度最小値算出ステップ）を実行する。
【００７１】
そして、変動量失火判定部７２は、クランク角躍度の最大値δｄｍａｘとクランク角躍度の最小値δｄｍｉｎの差Δδｄをクランク角躍度の変動量Δδｄとして算出し、クランク角躍度の変動量Δδｄが、失火判定値より大きい場合は、失火しておらず燃焼したと判定し、クランク角躍度の変動量Δδｄが失火判定値以下の場合は、失火しており、燃焼していないと判定する。
【００７２】
ステップＳ９３で、失火報知部５３は、上記のように、失火の判定結果を、報知装置３４を介してユーザに報知する失火報知処理（失火報知ステップ）を実行する。
【００７３】
〔その他の実施の形態〕
最後に、本発明のその他の実施の形態について説明する。なお、以下に説明する各実施の形態の構成は、それぞれ単独で適用されるものに限られず、矛盾が生じない限り、他の実施の形態の構成と組み合わせて適用することも可能である。
【００７４】
（１）上記の実施の形態１においては、第２クランク角センサ６が、本発明における「特定クランク角センサ」に相当し、フライホイール２７が、本発明における「回転部材」に相当し、フライホイール２７に設けられたリングギア２５の歯が、本発明における「被検出部」に相当する場合を例に説明した。しかし、本発明の実施の形態はこれに限定されない。すなわち、第１クランク角センサ１１が、本発明における「特定クランク角センサ」に相当し、信号板１０が、本発明における「回転部材」に相当し、信号板１０に設けられた複数の歯が、本発明における「被検出部」に相当してもよい。
【００７５】
（２）上記の実施の形態１においては、内燃機関１は、ガソリンエンジンとされている場合を例として説明した。しかし、本発明の実施の形態はこれに限定されない。すなわち、内燃機関１は、ディーゼルエンジン、ＨＣＣＩ燃焼（Homogeneous-Charge Compression Ignition Combustion）を行うエンジン等の各種の内燃機関とされてもよい。
【００７６】
（３）上記の実施の形態１においては、角躍度最大値算出部７０は、前期間におけるクランク角躍度δｄの中の最大値を、クランク角躍度の最大値δｄｍａｘとして算出し、角躍度最小値算出部７１は、直前期間及び後期間の一方又は双方におけるクランク角躍度δｄの中の最小値を、クランク角躍度の最小大値δｄｍｉｎとして算出するように構成されている場合を例として説明した。しかし、本発明の実施の形態はこれに限定されない。すなわち、角躍度最大値算出部７０は、１回の燃焼行程に対応した判定期間の全体（例えば、前期間＋後期間、又は直前期間＋前期間＋後期間）におけるクランク角躍度δｄの中の最大値を、クランク角躍度の最大値δｄｍａｘとして算出してもよく、角躍度最小値算出部７１は、１回の燃焼行程に対応した判定期間の全体（例えば、前期間＋後期間、又は直前期間＋前期間＋後期間）におけるクランク角躍度δｄの中の最小値を、クランク角躍度の最小値δｄｍｉｎとして算出してもよい。
【００７７】
なお、本発明は、その発明の範囲内において、実施の形態を適宜、変形、省略したりすることが可能である。
【符号の説明】
【００７８】
１  内燃機関、２  クランク軸、６  第２クランク角センサ（特定クランク角センサ）、７  気筒、２４  エンジンブロック（非回転部材）、２５  リングギア（被検出部）、２７  フライホイール（回転部材）、３４  報知装置、５０  内燃機関の制御装置、５１  角度情報算出部、５２  失火判定部、５３  失火報知部、θｄ  クランク角度、ωｄ  クランク角速度、αｄ  クランク角加速度、δｄ  クランク角躍度、δｄｍａｘ  クランク角躍度の最大値、δｄｍｉｎ  クランク角躍度の最小値、Δδｄ  クランク角躍度の変動量
【図１】
2019100300.tif 000003
【図２】
2019100300.tif 000004
【図３】
2019100300.tif 000005
【図４】
2019100300.tif 000006
【図５】
2019100300.tif 000007
【図６】
2019100300.tif 000008
【図７】
2019100300.tif 000009
【図８】
2019100300.tif 000010
【図９】
2019100300.tif 000011