(57)【要約】【課題】インバランス異常とトルク変動との双方に適切に対処できるようにした内燃機関の制御装置を提供する。【解決手段】ＣＰＵ３２は、回転速度ＮＥおよび負荷率に基づきベース点火時期ＳＡｂａｓｅを算出するとともに、回転速度ＮＥおよび負荷率ＫＬに基づき要求遅角量ΔＳＡを算出する。ＣＰＵ３２は、インバランス学習値に基づき第１補正係数を算出し、クランク軸の回転変動量に基づき第２補正係数を算出し、それらのうちの小さい方を遅角制限係数Ｋｓとする。ＣＰＵ３２は、ベース点火時期ＳＡｂａｓｅを、「Ｋｓ・ΔＳＡ」に基づき遅角補正したものを点火時期とし、点火装置２０を操作する。【選択図】図１
2019100295.tif 000002
【特許請求の範囲】
【請求項１】
点火装置、燃料噴射弁、および複数の気筒から排出される排気を浄化する排気浄化装置を備える内燃機関を制御対象とし、
前記複数の気筒のそれぞれにおける空燃比を互いに等しく制御するために前記燃料噴射弁を操作する場合の前記複数の気筒のそれぞれの前記燃料噴射弁の噴射量のばらつき度合いを学習するインバランス学習処理と、
前記ばらつき度合いが大きい場合に小さい場合よりも点火時期に対する要求をより進角側とする第１進角要求処理と、
前記内燃機関のトルク変動量が大きい場合に小さい場合よりも前記点火時期に対する要求をより進角側とする第２進角要求処理と、
前記第１進角要求処理と前記第２進角要求処理とのうちのより進角側の要求に応じて点火時期を操作する点火操作処理と、を実行する内燃機関の制御装置。
【請求項２】
前記内燃機関のクランク軸の回転速度および負荷に応じて前記点火時期の要求遅角量を設定する要求遅角量設定処理を実行し、
前記第１進角要求処理は、前記要求遅角量を減少補正するために前記要求遅角量に乗算する補正係数である第１補正係数を算出する処理であり、
前記第２進角要求処理は、前記要求遅角量を減少補正するために前記要求遅角量に乗算する補正係数である第２補正係数を算出する処理であり、
前記点火操作処理は、前記第１補正係数と前記第２補正係数とのうちの小さい方を前記要求遅角量に乗算した値に応じて前記点火時期を操作する処理である請求項１記載の内燃機関の制御装置。
【請求項３】
前記第１進角要求処理は、前記内燃機関の冷却水の温度、前記内燃機関のクランク軸の回転速度、および前記内燃機関の負荷のうちの少なくとも１つに応じて当該第１進角要求処理による前記進角側の要求の上限値である第１ガード値を可変設定し、当該第１進角要求処理による前記進角側の要求を前記第１ガード値以下とする第１ガード処理を含む請求項１または２記載の内燃機関の制御装置。
【請求項４】
前記第２進角要求処理は、前記内燃機関の冷却水の温度、前記内燃機関のクランク軸の回転速度、および前記内燃機関の負荷のうちの少なくとも１つに応じて当該第２進角要求処理による進角側の要求の上限値である第２ガード値を可変設定し、当該第２進角要求処理による前記進角側の要求を前記第２ガード値以下とする第２ガード処理を含む請求項１〜３のいずれか１項に記載の内燃機関の制御装置。
【請求項５】
前記第２進角要求処理は、前記トルク変動量が小さい状態から大きい状態に変化することに応じた前記点火時期に対する要求の変化速度に対して、前記トルク変動量が大きい状態から小さい状態に変化することに応じた前記点火時期に対する要求の変化速度を小さくする処理を含む請求項２記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、点火装置、燃料噴射弁、および複数の気筒から排出される排気を浄化する排気浄化装置を備える内燃機関を制御対象とする内燃機関の制御装置に関する。
【背景技術】
【０００２】
たとえば下記特許文献１には、内燃機関の排気通路に設けられた触媒（排気浄化装置）を暖機するために点火時期を遅角する制御装置が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１５／１２２００３号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、たとえば内燃機関の制御の異常として、複数の気筒のそれぞれにおける空燃比を互いに等しく制御するために燃料噴射弁を操作した際の複数の気筒のそれぞれの燃料噴射弁の噴射量のばらつき（インバランス）が生じる異常（インバランス異常）がある。インバランス異常が生じる場合、排気浄化装置に酸素と未燃燃料とが流入し排気浄化装置において未燃燃料が燃焼することにより、排気浄化装置の温度が上昇する。また、内燃機関の制御の異常として、失火が生じる場合にも、排気浄化装置に酸素と未燃燃料とが流入し排気浄化装置において未燃燃料が燃焼することにより、排気浄化装置の温度が上昇する。このようなインバランス異常や失火時において、点火時期が過度に遅角されている場合、排気浄化装置の温度が過度に上昇し、排気浄化装置の劣化を招くおそれがある。
【課題を解決するための手段】
【０００５】
以下、上記課題を解決するための手段およびその作用効果について記載する。
１．内燃機関の制御装置は、点火装置、燃料噴射弁、および複数の気筒から排出される排気を浄化する排気浄化装置を備える内燃機関を制御対象とし、前記複数の気筒のそれぞれにおける空燃比を互いに等しく制御するために前記燃料噴射弁を操作する場合の前記複数の気筒のそれぞれの前記燃料噴射弁の噴射量のばらつき度合いを学習するインバランス学習処理と、前記ばらつき度合いが大きい場合に小さい場合よりも点火時期に対する要求をより進角側とする第１進角要求処理と、前記内燃機関のトルク変動量が大きい場合に小さい場合よりも前記点火時期に対する要求をより進角側とする第２進角要求処理と、前記第１進角要求処理と前記第２進角要求処理とのうちのより進角側の要求に応じて点火時期を操作する点火操作処理と、を実行する。
【０００６】
上記ばらつき度合いが大きい場合には小さい場合よりも、排気浄化装置に酸素と未燃燃料とが流入し排気浄化装置において未燃燃料が燃焼することにより、排気浄化装置の温度が上昇しやすい。そこで、第１進角要求処理によってばらつき度合いが大きい場合に小さい場合よりも点火時期に対する要求をより進角側とする。これにより、ばらつきに起因して排気浄化装置の温度が上昇しやすい傾向と点火時期の遅角によって排気温度が高くなることとによって排気浄化装置の温度が過度に高くなることを抑制できる。また、トルク変動量が大きい場合には小さい場合よりも排気中の未燃燃料量と酸素量とが多くなる傾向があることから、排気浄化装置に酸素と未燃燃料とが流入し排気浄化装置において未燃燃料が燃焼することにより、排気浄化装置の温度が上昇しやすい。そこで、第２進角要求処理によってトルク変動量が大きい場合に小さい場合よりも点火時期に対する要求をより進角側とする。これにより、トルク変動量が大きくなる燃焼状態に起因して排気浄化装置の温度が上昇しやすい傾向と点火時期の遅角によって排気温度が高くなることとによって、排気浄化装置の温度が過度に高くなることを抑制できる。
【０００７】
特に上記構成では、第１進角要求処理と第２進角要求処理とのうちのより進角側の要求に応じて点火時期を操作することにより、インバランス異常とトルク変動との双方に適切に対処することができる。
【０００８】
２．上記１記載の内燃機関の制御装置において、前記内燃機関のクランク軸の回転速度および負荷に応じて前記点火時期の要求遅角量を設定する要求遅角量設定処理を実行し、前記第１進角要求処理は、前記要求遅角量を減少補正するために前記要求遅角量に乗算する補正係数である第１補正係数を算出する処理であり、前記第２進角要求処理は、前記要求遅角量を減少補正するために前記要求遅角量に乗算する補正係数である第２補正係数を算出する処理であり、前記点火操作処理は、前記第１補正係数と前記第２補正係数とのうちの小さい方を前記要求遅角量に乗算した値に応じて前記点火時期を操作する処理である。
【０００９】
上記構成では、要求遅角量に対する補正係数によって進角側の要求を定量化することにより、たとえば進角補正量自体を算出する場合と比較すると、回転速度や負荷を参照することなく要求を適切に定量化しやすい。
【００１０】
３．上記１または２記載の内燃機関の制御装置において、前記第１進角要求処理は、前記内燃機関の冷却水の温度、前記内燃機関のクランク軸の回転速度、および前記内燃機関の負荷のうちの少なくとも１つに応じて当該第１進角要求処理による前記進角側の要求の上限値である第１ガード値を可変設定し、当該第１進角要求処理による前記進角側の要求を前記第１ガード値以下とする第１ガード処理を含む。
【００１１】
たとえば、内燃機関の低温始動時等には、インバランス異常に起因した排気浄化装置の温度上昇に、点火時期を遅角側とすることに起因して排気温度が高くなることによる排気浄化装置の温度上昇が重なったとしても、それによって排気浄化装置の温度が過度に高くなるとは限らない。またたとえば、インバランス異常が生じていない場合の排気温度が低い動作点においても、インバランス異常に起因した排気浄化装置の温度上昇に、点火時期を遅角側とすることに起因して排気温度が高くなることによる排気浄化装置の温度上昇が重なったとしても、それによって排気浄化装置の温度が過度に高くなるとは限らない。こうした理由から、上記構成では、冷却水の温度や回転速度、負荷に応じて第１ガード値を設定し、進角側の要求を第１ガード値以下とする。これにより、不必要に点火時期が進角されることを抑制できる。
【００１２】
４．上記１〜３のいずれか１つに記載の内燃機関の制御装置において、前記第２進角要求処理は、前記内燃機関の冷却水の温度、前記内燃機関のクランク軸の回転速度、および前記内燃機関の負荷のうちの少なくとも１つに応じて当該第２進角要求処理による進角側の要求の上限値である第２ガード値を可変設定し、当該第２進角要求処理による前記進角側の要求を前記第２ガード値以下とする第２ガード処理を含む。
【００１３】
たとえば内燃機関の低温始動時等には、トルク変動が大きくなることに起因した排気浄化装置の温度上昇に、点火時期を遅角側とすることに起因して排気温度が高くなることによる排気浄化装置の温度上昇が重なったとしても、それによって排気浄化装置の温度が過度に高くなるとは限らない。またたとえば、排気温度が低い動作点においても、トルク変動が大きくなることに起因した排気浄化装置の温度上昇に、点火時期を遅角側とすることに起因して排気温度が高くなることによる排気浄化装置の温度上昇が重なったとしても、それによって排気浄化装置の温度が過度に高くなるとは限らない。こうした理由から、上記構成では、冷却水の温度や回転速度、負荷に応じて第２ガード値を設定し、進角側の要求を第２ガード値以下とする。これにより、不必要に点火時期が進角されることを抑制できる。
【００１４】
５．上記２記載の内燃機関の制御装置において、前記第２進角要求処理は、前記トルク変動量が小さい状態から大きい状態に変化することに応じた前記点火時期に対する要求の変化速度に対して、前記トルク変動量が大きい状態から小さい状態に変化することに応じた前記点火時期に対する要求の変化速度を小さくする処理を含む。
【００１５】
トルク変動が大きくなる場合、排気浄化装置に未燃燃料と酸素が流入して排気浄化装置の温度が上昇するおそれがあるため、点火時期の遅角量を迅速に低減して排気温度を低下させることが望まれる。一方、トルク変動が大きい状態から小さい状態に変化したときに、仮に点火時期を急激に遅角させると、燃焼状態が急変するおそれがある。そのため、トルク変動量が大きくなった際に排気浄化装置の温度上昇を迅速に抑制することと、トルク変動量が小さくなったときに燃焼状態の急変を抑制しつつ本来の点火時期に戻すこととを狙って、上記速度の設定をした。
【図面の簡単な説明】
【００１６】
【図１】内燃機関の制御装置にかかる一実施形態および内燃機関を示す図。
【図２】同実施形態にかかる制御装置が実行する処理の一部を示すブロック図。
【図３】同実施形態にかかる点火時期の設定処理を例示する図。
【図４】同実施形態にかかる回転変動量の算出処理を示す図。
【図５】同実施形態にかかる遅角制限係数算出処理の手順を示す流れ図。
【図６】同実施形態にかかる第２補正係数の徐変処理の手順を示す流れ図。
【発明を実施するための形態】
【００１７】
以下、内燃機関の制御装置にかかる一実施形態について図面を参照しつつ説明する。
図１に示す内燃機関１０は、車両に搭載される。内燃機関１０において、吸気通路１２から吸入された空気は、過給機１４を介して気筒＃１〜＃４のそれぞれの燃焼室１６に流入する。気筒＃１〜＃４のそれぞれには、燃料を噴射する燃料噴射弁１８と、火花放電を生じさせる点火装置２０とが設けられている。燃焼室１６において、空気と燃料との混合気は、燃焼に供され、燃焼に供された混合気は、排気として、排気通路２２に排出される。排気通路２２のうちの過給機１４の下流には、酸素吸蔵能力を有した三元触媒２４が設けられている。
【００１８】
制御装置３０は、内燃機関１０を制御対象とし、その制御量（トルク、排気成分等）を制御するために、燃料噴射弁１８や点火装置２０等の内燃機関１０の操作部を操作する。この際、制御装置３０は、三元触媒２４の上流側に設けられた空燃比センサ４０によって検出される上流側空燃比Ａｆｕや、三元触媒２４の下流側に設けられた空燃比センサ４２によって検出される下流側空燃比Ａｆｄを参照する。また制御装置３０は、クランク角センサ４４の出力信号Ｓｃｒや、エアフローメータ４６によって検出される吸入空気量Ｇａ、水温センサ４８によって検出される内燃機関１０の冷却水の温度（水温ＴＨＷ）を参照する。制御装置３０は、ＣＰＵ３２、ＲＯＭ３４、および電気的に書き換え可能な不揮発性メモリ３６を備えており、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２が実行することにより上記制御量の制御を実行する。
【００１９】
図２に、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２が実行することにより実現される処理の一部を示す。
ベース噴射量算出処理Ｍ１０は、クランク角センサ４４の出力信号Ｓｃｒに基づき算出された回転速度ＮＥと吸入空気量Ｇａとに基づき、燃焼室１６における混合気の空燃比を目標空燃比に開ループ制御するための操作量である開ループ操作量として、ベース噴射量Ｑｂを算出する処理である。
【００２０】
目標値設定処理Ｍ１２は、燃焼室１６における混合気の空燃比を上記目標空燃比に制御するためのフィードバック制御量の目標値Ａｆ＊を設定する処理である。詳しくは、本実施形態では、目標値設定処理Ｍ１２は、下流側空燃比Ａｆｄを目標値にフィードバック制御するための操作量によって、目標値Ａｆ＊を補正する処理を含む。
【００２１】
ローパスフィルタ処理Ｍ１３は、上流側空燃比Ａｆｕをローパスフィルタ処理することによって空燃比Ａｆを算出する処理である。
フィードバック処理Ｍ１４は、フィードバック制御量である空燃比Ａｆを目標値Ａｆ＊にフィードバック制御するための操作量であるフィードバック操作量ＫＡＦを算出する。本実施形態では、目標値Ａｆ＊と空燃比Ａｆとの差を入力とする比例要素、積分要素、および微分要素の各出力値の和を、ベース噴射量Ｑｂの補正比率δとし、フィードバック操作量ＫＡＦを、「１＋δ」とする。
【００２２】
要求噴射量算出処理Ｍ１６は、ベース噴射量Ｑｂにフィードバック操作量ＫＡＦを乗算することによってベース噴射量Ｑｂを補正し、要求噴射量Ｑｄを算出する処理である。
噴射量操作処理Ｍ１８は、燃料噴射弁１８の操作信号ＭＳ１を生成して同燃料噴射弁１８に出力し、同燃料噴射弁１８から噴射される燃料量が要求噴射量算出処理Ｍ１６が出力する要求噴射量Ｑｄに応じた量となるように燃料噴射弁１８を操作する。
【００２３】
ベース点火時期設定処理Ｍ２０は、回転速度ＮＥ、負荷率ＫＬおよび目標値Ａｆ＊に基づき、ベース点火時期ＳＡｂａｓｅを設定する処理である。図３に実線にて示すように、ベース点火時期ＳＡｂａｓｅは、エンジントルクの発生効率が最大となる点火時期であるＭＢＴ（Minimum advance for Best Torque）点火時期と、ノッキングの発生を回避可能な点火時期の進角限界であるノック要求点火時期との２つの点火時期のうち、いずれか遅角側の時期である。これは、回転速度ＮＥ、負荷率ＫＬおよび目標値Ａｆ＊を入力変数とし、ベース点火時期ＳＡｂａｓｅを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２によりベース点火時期ＳＡｂａｓｅをマップ演算することにより実現できる。なお、マップデータとは、入力変数の離散的な値と、入力変数の値のそれぞれに対応する出力変数の値と、の組データである。またマップ演算は、たとえば、入力変数の値がマップデータの入力変数の値のいずれかに一致する場合、対応するマップデータの出力変数の値を演算結果とし、一致しない場合、マップデータに含まれる複数の出力変数の値の補間によって得られる値を演算結果とする処理とすればよい。ちなみに、負荷率ＫＬは、基準流入空気量に対する、１気筒の１燃焼サイクル当たりの流入空気量の比であり、筒内充填空気量を定量化したものである。なお、基準流入空気量は、回転速度ＮＥに応じて可変設定してもよい。
【００２４】
図２に戻り、要求遅角量設定処理Ｍ２２は、燃焼圧が急速に上昇することに起因した車両の振動や騒音を抑制するための遅角量である要求遅角量ΔＳＡを算出する処理である。これは、本実施形態の内燃機関１０が高圧縮比化されたものであることに起因して燃焼室１６内における混合気の燃焼が高速となることを背景としている。詳しくは、要求遅角量設定処理Ｍ２２は、回転速度ＮＥ、負荷率ＫＬおよび目標値Ａｆ＊に基づき、要求遅角量ΔＳＡを可変設定する処理である。これは、回転速度ＮＥ、負荷率ＫＬおよび目標値Ａｆ＊を入力変数とし、要求遅角量ΔＳＡを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により要求遅角量ΔＳＡをマップ演算することにより実現できる。
【００２５】
遅角制限処理Ｍ２４は、要求遅角量ΔＳＡに後述する遅角制限係数Ｋｓを乗算する処理であり、遅角補正処理Ｍ２６は、ベース点火時期ＳＡｂａｓｅから「Ｋｓ・ΔＳＡ」を減算して点火時期ＳＡを算出する処理である。なお、点火時期ＳＡは、進角側であるほど大きい値とされる量とする。
【００２６】
操作信号出力処理Ｍ２８は、点火時期ＳＡに応じて点火装置２０を操作すべく操作信号ＭＳ２を点火装置２０に出力する。
リッチインバランス学習処理Ｍ３０は、リッチインバランスの学習値（リッチ学習値Ｌｒ）を算出し、リッチ学習値Ｌｒを不揮発性メモリ３６に記憶する処理である。ここで、リッチインバランスとは、全ての気筒＃１〜＃４における混合気の空燃比を同一の値に制御するように各気筒＃１〜＃４の燃料噴射弁１８を操作する場合に、特定の気筒の空燃比が上記同一の値に対してリッチ側にずれることである。詳しくは、リッチインバランス学習処理Ｍ３０は、上流側空燃比Ａｆｕの時系列データから上流側空燃比Ａｆｕの所定時間当たりの変化量である時間変化ΔＡｆを算出し、これに基づき、リッチ学習値Ｌｒを算出する処理を含む。ここでは、時間変化ΔＡｆが大きい場合に小さい場合よりもリッチインバランスが大きいとして、リッチ学習値Ｌｒが大きい値に算出される。ただし、時間変化ΔＡｆは、リッチインバランスのみならず、回転速度ＮＥや負荷率ＫＬによっても変化するため、回転速度ＮＥおよび負荷率ＫＬから規格化係数が定められ、時間変化ΔＡｆが規格化係数で除算されて規格化される。これは、回転速度ＮＥおよび負荷率ＫＬを入力変数とし、規格化係数を出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により規格化係数をマップ演算することにより実現される。
【００２７】
またリッチインバランス学習処理Ｍ３０は、不揮発性メモリ３６に記憶されているリッチ学習値Ｌｒを、新たに規格化された値に基づき更新する処理を含む。ここでは、不揮発性メモリ３６に記憶される値を、それまで不揮発性メモリ３６に記憶されていた値と、今回新たに規格化された値との指数移動平均処理値に更新すればよい。さらに、リッチインバランス学習処理Ｍ３０は、リッチ学習値Ｌｒが所定値以上となる場合、図１に示した警告灯５０を操作して異常がある旨を車両のユーザに通知する処理を含む。
【００２８】
リーンインバランス学習処理Ｍ３２は、リーンインバランスの学習値（リーン学習値Ｌｌ）を算出し、不揮発性メモリ３６に記憶する処理である。ここで、リーンインバランスとは、全ての気筒＃１〜＃４における混合気の空燃比を同一の値に制御するように各気筒＃１〜＃４の燃料噴射弁１８を操作する場合に、特定の気筒の空燃比が上記同一の値に対してリーン側にずれることである。詳しくは、リーンインバランス学習処理Ｍ３２は、クランク角センサ４４の出力信号Ｓｃｒから算出される各気筒＃１〜＃４のＴＤＣを含む３０°の回転角度領域における回転速度である瞬時速度ωｌの時系列データを取得し、一対の気筒の瞬時速度ωｌ同士の差Δωｌの大きさに基づきリーン学習値Ｌｌを算出する処理を含む。ここで、一対の気筒は、たとえば圧縮上死点が出現する順序が互いに隣り合う一対の気筒とすればよい。また、差Δωｌが大きい場合に小さい場合よりもリーンインバランスの度合いが大きいとして、リーン学習値Ｌｌが大きい値とされる。ただし、差Δωｌは、リーンインバランスのみならず、回転速度ＮＥや負荷率ＫＬによっても変化するため、回転速度ＮＥおよび負荷率ＫＬから規格化係数が定められ、差Δωｌが規格化係数で除算されて規格化される。これは、回転速度ＮＥおよび負荷率ＫＬを入力変数とし、規格化係数を出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により規格化係数をマップ演算することにより実現される。
【００２９】
また、リーンインバランス学習処理Ｍ３２は、不揮発性メモリ３６に記憶されているリーン学習値Ｌｌを新たに規格化した値に基づき更新する処理を含む。ここでは、不揮発性メモリ３６に記憶される値が、不揮発性メモリ３６に記憶されていた値と、新たに規格化した値との指数移動平均処理値に更新される。さらに、リーンインバランス学習処理Ｍ３２は、リーン学習値Ｌｌが所定値以上となる場合、図１に示した警告灯５０を操作して異常がある旨を車両のユーザに通知する処理を含む。
【００３０】
回転変動量算出処理Ｍ３４は、出力信号Ｓｃｒに基づき、回転変動量Δωが規格化された値（回転変動量Δωｎ）を算出する処理である。ここで、回転変動量Δωは、圧縮上死点を１回のみ含む所定角度間隔の回転速度（瞬時回転速度ω）を、圧縮上死点の出現タイミングが時系列的に隣り合う一対の気筒のうちの先に圧縮上死点が出現する気筒における値から後に圧縮上死点が出現する気筒における値を減算した値の絶対値である。
【００３１】
図４に、回転変動量算出処理Ｍ３４の詳細を示す。図４には、正常の場合の回転変動量Δωの頻度分布Ｎ１と、失火時の回転変動量Δωの頻度分布Ｎ２とを示している。正常側閾値Δｔｈｎは、頻度分布Ｎ１の平均よりも回転変動量Δωが大きい値となっており、異常側閾値Δｔｈｗは、頻度分布Ｎ２の平均よりも回転変動量Δωが小さい値となっており、正常側閾値Δｔｈｎよりも異常側閾値Δｔｈｗの方が大きい値となっている。回転変動量算出処理Ｍ３４は、頻度分布Ｎ１，Ｎ２が回転速度ＮＥおよび負荷率ＫＬに応じて変化することに鑑み、正常側閾値Δｔｈｎおよび異常側閾値Δｔｈｗを、回転速度ＮＥおよび負荷率ＫＬに応じて可変設定する処理を含む。詳しくは、回転速度ＮＥおよび負荷率ＫＬを入力変数とし正常側閾値Δｔｈｎを出力変数とするマップデータと、回転速度ＮＥおよび負荷率ＫＬを入力変数とし異常側閾値Δｔｈｗを出力変数とするマップデータとをＲＯＭ３４に記憶しておき、正常時閾値Δｔｈｎおよび異常時閾値ΔｔｈｗをＣＰＵ３２によりマップ演算すればよい。また、回転変動量算出処理Ｍ３４は、回転変動量Δωが正常側閾値Δｔｈｎ以下の場合、回転変動量Δωｎを「０」とし、異常側閾値Δｔｈｗ以上の場合、回転変動量Δωｎを「１」とし、正常側閾値Δｔｈｎよりも大きく異常側閾値Δｔｈｗよりも小さい場合、回転変動量Δωが大きいほど回転変動量Δωｎを大きい値とする。これにより、規格化された回転変動量Δωｎは、「０」以上「１」以下の値となる。
【００３２】
図２に戻り、遅角制限係数算出処理Ｍ３６は、リッチ学習値Ｌｒ、リーン学習値Ｌｌおよび回転変動量Δωｎに基づき、遅角制限係数Ｋｓを算出する処理である。
図５に、遅角制限係数算出処理Ｍ３６の手順を示す。図５に示す処理は、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２がたとえば所定周期で繰り返し実行することにより実現される。なお、以下では、先頭に「Ｓ」が付与された数字によってステップ番号を表現する。
【００３３】
図５に示す一連の処理において、ＣＰＵ３２は、不揮発性メモリ３６からリッチ学習値Ｌｒおよびリーン学習値Ｌｌを読み出すことによってリッチ学習値Ｌｒおよびリーン学習値Ｌｌを取得する（Ｓ１０）。次にＣＰＵ３２は、リッチ学習値Ｌｒおよびリーン学習値Ｌｌに基づき、第１補正係数Ｋｓｉを算出する（Ｓ１２）。第１補正係数Ｋｓｉは、遅角制限係数Ｋｓの元となる係数である。詳しくはＣＰＵ３２は、リッチ学習値Ｌｒが所定値以上であることとリーン学習値Ｌｌが所定値以上であることとの論理和が真である場合、第１補正係数Ｋｓｉを「０」とし、論理和が偽である場合、第１補正係数Ｋｓｉを「１」とする。これは、リッチインバランスの度合いやリーンインバランスの度合いが大きい場合には、インバランスに起因して三元触媒２４の温度が高くなるため、要求遅角量ΔＳＡに応じて点火時期ＳＡを遅角させたのでは、三元触媒２４の温度が過度に高くなるおそれがあることに鑑みてなされるものである。すなわち、インバランス度合いが大きい場合、第１補正係数Ｋｓｉを「０」とすることにより、後述する処理によって遅角制限係数Ｋｓが「０」とされ、要求遅角量ΔＳＡによる点火時期の遅角が無効となる。
【００３４】
次にＣＰＵ３２は、第１補正係数Ｋｓｉが第１ガード値Ｋｓｉｔｈよりも小さいか否かを判定する（Ｓ１４）。ここで、ＣＰＵ３２は、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷに応じて第１ガード値Ｋｓｉｔｈを「０」から「１」の範囲で可変設定する。詳しくは、ＣＰＵ３２は、回転速度ＮＥおよび負荷率ＫＬによって規定される内燃機関１０の動作点から排気温度を把握し、動作点から把握される排気温度が低い場合に高い場合よりも第１ガード値Ｋｓｉｔｈを大きい値に設定する。これは、もともとの排気温度が低い場合には、インバランスに起因して三元触媒２４の温度が上昇しやすい状態であるとしても、三元触媒２４の温度が過度に上昇することはないとの考えに基づくものである。また、ＣＰＵ３２は、水温ＴＨＷが低い場合に高い場合よりも第１ガード値Ｋｓｉｔｈを大きい値に設定する。これは、水温ＴＨＷが低い場合には高い場合よりも三元触媒２４の温度が低い傾向があり、インバランスに起因して三元触媒２４の温度が上昇しやすい状態であるとしても、三元触媒２４の温度が過度に上昇することはないとの考えに基づくものである。具体的には、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷを入力変数とし第１ガード値Ｋｓｉｔｈを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により第１ガード値Ｋｓｉｔｈをマップ演算すればよい。
【００３５】
ＣＰＵ３２は、第１ガード値Ｋｓｉｔｈよりも小さいと判定する場合（Ｓ１４：ＹＥＳ）、第１補正係数Ｋｓｉに第１ガード値Ｋｓｉｔｈを代入する（Ｓ１６）。ＣＰＵ３２は、Ｓ１６の処理が完了する場合や、Ｓ１４の処理において否定判定する場合には、規格化された回転変動量Δωｎを取得する（Ｓ１８）。そしてＣＰＵ３２は、回転変動量Δωｎに基づき、第２補正係数Ｋｓｍを算出する（Ｓ２０）。第２補正係数Ｋｓｍは、遅角制限係数Ｋｓの元となる係数である。ＣＰＵ３２は、第２補正係数Ｋｓｍを、回転変動量Δωｎが所定値以下の場合「１」とし、所定値よりも大きい規定値以上の場合に「０」とし、所定値よりも大きく規定値未満の場合、回転変動量Δωｎが大きい場合に小さい場合よりも第２補正係数Ｋｓｍを小さい値とする。これは、失火やそれに準じた燃焼状態となる場合、未燃燃料および酸素が三元触媒２４に流入し三元触媒２４において燃焼することにより三元触媒２４の温度が上昇するため、要求遅角量ΔＳＡに応じて点火時期を遅角させる場合には、三元触媒２４の温度が過度に上昇するおそれがあることに鑑みた設定である。すなわち、回転変動量Δωｎが大きい場合、第２補正係数Ｋｓｍを「０」に近づけることにより、後述する処理によって遅角制限係数Ｋｓが「０」に近づけられ、要求遅角量ΔＳＡによる点火時期の遅角が制限される。
【００３６】
次にＣＰＵ３２は、第２補正係数Ｋｓｍの徐変処理を実行する（Ｓ２２）。
図６に、徐変処理の手順を示す。図６に示す処理は、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２がたとえば所定周期で繰り返し実行することにより実現される。
【００３７】
図６に示す一連の処理において、ＣＰＵ３２は、まず、上述のＳ２０の処理によって今回算出された第２補正係数Ｋｓｍ（ｎ）が前回算出された第２補正係数Ｋｓｍ（ｎ−１）よりも小さいか否かを判定する（Ｓ３０）。ＣＰＵ３２は、今回算出された第２補正係数Ｋｓｍ（ｎ）が前回算出された第２補正係数Ｋｓｍ（ｎ−１）以上であると判定する場合（Ｓ３０：ＮＯ）、今回算出された第２補正係数Ｋｓｍ（ｎ）から前回算出された第２補正係数Ｋｓｍ（ｎ−１）を減算した値が徐変値ΔＫよりも大きいか否かを判定する（Ｓ３２）。ＣＰＵ３２は、徐変値ΔＫよりも大きいと判定する場合（Ｓ３２：ＹＥＳ）、前回算出された第２補正係数Ｋｓｍ（ｎ−１）に徐変値ΔＫを加算した値を今回算出された第２補正係数Ｋｓｍ（ｎ）に代入する（Ｓ３４）。この処理は、第２補正係数Ｋｓｍの増加速度を徐変値ΔＫによって制限する処理である。この処理は、点火時期を遅角側に変化させる速度を制限するための処理である。なお、ＣＰＵ３２は、Ｓ３４の処理が完了する場合やＳ３０の処理において肯定判定する場合、Ｓ３２の処理において否定判定する場合には、図６に示す処理を一旦終了する。
【００３８】
図５に戻り、ＣＰＵ３２は、第２補正係数Ｋｓｍが第２ガード値Ｋｓｍｔｈよりも小さいか否かを判定する（Ｓ２４）。ここで、ＣＰＵ３２は、第２ガード値Ｋｓｍｔｈを、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷに応じて「０」から「１」の範囲で可変設定する。詳しくは、ＣＰＵ３２は、回転速度ＮＥおよび負荷率ＫＬによって規定される内燃機関１０の動作点から排気温度を把握し、動作点から把握された排気温度が低い場合に高い場合よりも第２ガード値Ｋｓｍｔｈを大きい値に設定する。これは、もともとの排気温度が低い場合には、失火等に起因して三元触媒２４の温度が上昇しやすい状態であるとしても、三元触媒２４の温度が過度に上昇することはないとの考えに基づくものである。また、ＣＰＵ３２は、水温ＴＨＷが低い場合に高い場合よりも第２ガード値Ｋｓｍｔｈを大きい値に設定する。これは、水温ＴＨＷが低い場合には高い場合よりも三元触媒２４の温度が低い傾向があり、失火等に起因して三元触媒２４の温度が上昇しやすい状態であるとしても、三元触媒２４の温度が過度に上昇することはないとの考えに基づくものである。具体的には、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷを入力変数とし第２ガード値Ｋｓｍｔｈを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により第２ガード値Ｋｓｍｔｈをマップ演算すればよい。
【００３９】
ＣＰＵ３２は、第２ガード値Ｋｓｍｔｈよりも小さいと判定する場合（Ｓ２４：ＹＥＳ）、第２補正係数Ｋｓｍに第２ガード値Ｋｓｍｔｈを代入する（Ｓ２６）。ＣＰＵ３２は、Ｓ２６の処理が完了する場合やＳ２４の処理において否定判定する場合には、遅角制限係数Ｋｓに、第１補正係数Ｋｓｉと第２補正係数Ｋｓｍとのうちの小さい方を代入する（Ｓ２８）。なお、ＣＰＵ３２は、Ｓ２８の処理が完了する場合、図５に示す一連の処理を一旦終了する。
【００４０】
ここで、本実施形態の作用および効果について説明する。
ＣＰＵ３２は、リッチ学習値Ｌｒやリーン学習値Ｌｌが所定値以上である場合、遅角制限係数Ｋｓを「０」とし、ベース点火時期ＳＡｂａｓｅを、要求遅角量ΔＳＡによって補正することなく、点火時期ＳＡとする。これにより、インバランス異常に起因して三元触媒２４の温度が上昇しやすい傾向と点火時期の遅角によって排気温度が高くなることとによって三元触媒２４の温度が過度に高くなることを抑制できる。
【００４１】
また、ＣＰＵ３２は、回転変動量Δωｎが大きい場合には小さい場合よりもベース点火時期ＳＡｂａｓｅの遅角量を小さくする。これにより、回転変動量Δωｎが大きくなる燃焼状態に起因して三元触媒２４の温度が上昇しやすい傾向と点火時期の遅角によって排気温度が高くなることとによって三元触媒２４の温度が過度に高くなることを抑制できる。
【００４２】
特に本実施形態では、第１補正係数Ｋｓｉと第２補正係数Ｋｓｍとのうちのより小さい方を遅角制限係数Ｋｓとすることにより、インバランス異常と失火等の燃焼状態の悪化との双方に適切に対処することができる。
【００４３】
以上説明した本実施形態によれば、さらに以下に記載する効果が得られる。
（１）第１補正係数Ｋｓｉの大きさを第１ガード値Ｋｓｉｔｈ以上に制限した。これにより、不必要に点火時期が進角されることを抑制できる。
【００４４】
（２）第２補正係数Ｋｓｍの大きさを第２ガード値Ｋｓｍｔｈ以上に制限した。これにより、不必要に点火時期が進角されることを抑制できる。
（３）第２補正係数Ｋｓｍを小さい値に変更する場合よりも第２補正係数Ｋｓｍを大きい値に変更する場合に、その変化速度を小さくした。これにより、失火等が生じた場合には、点火時期の遅角量を迅速に低減して排気温度を低下させることができるとともに、失火等から回復するときには、点火時期を急激に遅角させることに起因した燃焼状態の急変を抑制できる。
【００４５】
＜対応関係＞
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。［１］第１進角要求処理は、Ｓ１０〜Ｓ１６の処理に対応し、第２進角要求処理は、Ｓ１８〜Ｓ２６の処理に対応し、点火操作処理は、Ｓ２８の処理、遅角制限処理Ｍ２４、遅角補正処理Ｍ２６および操作信号出力処理Ｍ２８の処理に対応する。［３］第１ガード処理は、Ｓ１４，Ｓ１６の処理に対応する。［４］第２ガード処理は、Ｓ２４，Ｓ２６の処理に対応する。［５］図６の処理に対応する。
【００４６】
＜その他の実施形態＞
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【００４７】
・「インバランス学習処理について」
リッチ学習値Ｌｒを学習する学習処理としては、上記実施形態において例示したものに限らない。たとえば、上流側空燃比Ａｆｕの極大値と極小値との差に基づき、同差が大きい場合に小さい場合よりもリッチインバランスの度合いが大きいとしてリッチ学習値Ｌｒを算出してもよい。リッチ学習値Ｌｒを学習する学習処理としては、上流側空燃比Ａｆｕを用いるものにも限らない。たとえば、下流側空燃比Ａｆｄが目標空燃比に対してリーン側にずれる量が大きい場合に小さい場合よりもリッチインバランスの度合いが大きいとしてリッチ学習値Ｌｒを算出してもよい。
【００４８】
リーン学習値Ｌｌを学習する学習処理としては、上記実施形態において例示したものに限らない。たとえば、瞬時速度ωｌの算出に用いられる回転角度領域がＴＤＣを含まなくてもよく、またたとえば３０°ＣＡの回転角度領域の速度に限らず、たとえば６０°ＣＡの回転角度領域の速度等であってもよい。ただし、各気筒の燃焼行程に起因してクランク軸の回転速度が極大となる期間を含むことが望ましい。またたとえば、下流側空燃比Ａｆｄが目標空燃比に対してリーン側にずれる量が大きい場合に小さい場合よりもリーンインバランスの度合いが大きいとしてリーン学習値Ｌｌを算出してもよい。
【００４９】
リッチ学習値Ｌｒとリーン学習値Ｌｌとを各別に学習することは必須ではない。たとえば、下流側空燃比Ａｆｄが目標空燃比に対してリーン側にずれる量が大きい場合に小さい場合よりもリーンまたはリッチのインバランスの度合いが大きいとしてインバランスの度合いを学習してもよい。
【００５０】
インバランスの学習処理としては、空燃比センサの値や瞬時速度ωｌを用いるものに限らない。たとえば気筒＃１〜＃４のそれぞれに筒内圧センサを備えることとし、その検出値に基づき熱発生率を算出し、熱発生率に基づき噴射量を推定し、推定された噴射量のばらつきの度合いを定量化する処理であってもよい。
【００５１】
・「第１ガード処理について」
上記実施形態では、第１ガード値Ｋｓｉｔｈを、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷに基づき可変設定したがこれに限らない。たとえば、水温ＴＨＷのみに基づき第１ガード値Ｋｓｉｔｈを可変設定するなど、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷに関しては、そのうちの１つまたは２つのみのパラメータに基づき可変設定してもよい。
【００５２】
なお、下記「第１進角要求処理について」の欄に記載したように、第１補正係数Ｋｓｉに代えて、点火時期ＳＡを進角側に補正する補正量が算出される場合、第１ガード値Ｋｓｉｔｈに代えて、進角側の補正量の上限値を算出する処理とすればよい。この場合、上限値の算出に、リッチ学習値Ｌｒやリーン学習値Ｌｌ等の学習値に加えて、回転速度ＮＥおよび負荷率ＫＬを用いることが望ましい。
【００５３】
・「第１進角要求処理について」
上記実施形態では、リッチ学習値Ｌｒおよびリーン学習値Ｌｌに基づき第１補正係数Ｋｓｉを設定したがこれに限らない。たとえば、「インバランス学習処理について」の欄に記載したように、リッチインバランスとリーンインバランスとを同一の学習値にて定量化する場合には、その単一の学習値に基づき第１補正係数Ｋｓｉを算出すればよい。
【００５４】
上記実施形態では、第１補正係数Ｋｓｉの取りうる値を、「１」または「０」としたが、これに限らない。たとえば「０」以上「１」以下で任意の値をとりうるとし、インバランス度合いが大きい場合に小さい場合よりも小さい値となるようにしてもよい。
【００５５】
なお、下記「点火時期の設定について」の欄に記載したように、ベース点火時期ＳＡｂａｓｅが要求遅角量ΔＳＡで補正された上記点火時期ＳＡ相当の量が内燃機関１０の動作点に基づき直接算出される場合、第１補正係数Ｋｓｉに代えて、点火時期ＳＡを進角側に補正する補正量を算出すればよい。この場合、補正量の算出に、リッチ学習値Ｌｒやリーン学習値Ｌｌ等の学習値に加えて、回転速度ＮＥおよび負荷率ＫＬを用いることが望ましい。
【００５６】
・「第２ガード処理について」
上記実施形態では、第２ガード値Ｋｓｍｔｈを、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷに基づき可変設定したがこれに限らない。たとえば、水温ＴＨＷのみに基づき第２ガード値Ｋｓｍｔｈを可変設定するなど、回転速度ＮＥ、負荷率ＫＬおよび水温ＴＨＷに関しては、そのうちの１つまたは２つのみのパラメータに基づき可変設定してもよい。
【００５７】
なお、下記「第２進角要求処理について」の欄に記載したように、第２補正係数Ｋｓｍに代えて、点火時期ＳＡを進角側に補正する補正量が算出される場合、第２ガード値Ｋｓｍｔｈに代えて、点火時期ＳＡを進角側に補正する補正量の上限値を算出すればよい。この場合、上限値の算出に、回転変動量Δωｎに加えて、回転速度ＮＥおよび負荷率ＫＬを用いることが望ましい。
【００５８】
・「第２進角要求処理について」
上記実施形態では、第２補正係数Ｋｓｍを、「０」以上「１」以下で任意の値をとりうるとしたが、これに限らない。たとえば、Ｓ２０の処理によって算出される第２補正係数Ｋｓｍを、「０」と「１」とのいずれかとしてもよい。
【００５９】
なお、下記「点火時期の設定について」の欄に記載したように、ベース点火時期ＳＡｂａｓｅが要求遅角量ΔＳＡで補正された上記点火時期ＳＡ相当の量が内燃機関１０の動作点に基づき直接算出される場合、第２補正係数Ｋｓｍに代えて、点火時期ＳＡを進角側に補正する補正量を算出すればよい。この場合、補正量の算出に、回転変動量Δωに加えて、回転速度ＮＥおよび負荷率ＫＬを用いることが望ましい。
【００６０】
なお、徐変処理を含むことは必須ではない。
・「制限処理について」
上記「第１進角要求処理について」および「第２進角要求処理について」の欄に記載したように、第１補正係数Ｋｓｉや第２補正係数Ｋｓｍに代えて、点火時期ＳＡを進角側に補正する補正量を算出する場合、インバランス学習値に基づく補正量と回転変動量Δωｎに基づく補正量とのうちの大きい方を採用すればよい。
【００６１】
・「トルク変動量について」
上記実施形態では、トルク変動量を、回転変動量Δωｎによって定量化したがこれに限らない。たとえば、気筒＃１〜＃４のそれぞれに燃焼室１６内の圧力を検出する筒内圧センサを備え、筒内圧センサの検出値の時系列データに基づき、各気筒の熱発生率を算出し、これに基づきトルクを算出することによって、気筒＃１〜＃４のトルクの相違を定量化したトルク変動量を算出してもよい。
【００６２】
・「要求遅角量設定処理について」
上記実施形態では、目標値Ａｆ＊、回転速度ＮＥおよび負荷率ＫＬに基づき要求遅角量ΔＳＡを設定したが、これに限らない。たとえば、目標値Ａｆ＊に代えて、空燃比Ａｆを用いてもよい。またたとえば、負荷を、燃焼室１６内に充填される空気量自体としてもよい、またたとえば、負荷としての負荷率ＫＬに代えて、空燃比を目標空燃比に制御するための操作量としての燃料噴射弁１８の噴射量としてもよい。またたとえば、空燃比によらず、回転速度ＮＥおよび負荷に基づき要求遅角量ΔＳＡを設定してもよい。
【００６３】
上記実施形態では、要求遅角量ΔＳＡを、車両の振動や騒音を抑制するための要求遅角量としたが、これに限らない。たとえば、三元触媒２４の暖機処理のための遅角要求量であってもよい。
【００６４】
・「点火時期の設定について」
上記実施形態では、目標値Ａｆ＊、回転速度ＮＥおよび負荷率ＫＬに基づきベース点火時期ＳＡｂａｓｅを設定したが、これに限らない。たとえば、目標値Ａｆ＊に代えて、空燃比Ａｆを用いてもよい。またたとえば、負荷を、燃焼室１６内に充填される空気量自体としてもよい、またたとえば、負荷としての負荷率ＫＬに代えて、空燃比を目標空燃比に制御するための操作量としての燃料噴射弁１８の噴射量としてもよい。またたとえば、空燃比によらず、回転速度ＮＥおよび負荷に基づきベース点火時期ＳＡｂａｓｅを設定してもよい。
【００６５】
上記実施形態では、ベース点火時期ＳＡｂａｓｅを要求遅角量ΔＳＡによって補正することにより点火時期ＳＡを定めたがこれに限らない。たとえば、負荷率ＫＬ等の負荷および回転速度ＮＥによって規定される動作点に基づき、上記ベース点火時期ＳＡｂａｓｅが要求遅角量ΔＳＡで補正された点火時期ＳＡを直接算出してもよい。これは、たとえば回転速度ＮＥおよび負荷を入力変数とし点火時期ＳＡを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により点火時期ＳＡをマップ演算することにより実現できる。なお、動作点に基づき点火時期ＳＡを直接算出する処理としては、動作点のみから算出する処理に限らず、たとえば、動作点および水温ＴＨＷに基づき算出する処理であってもよい。
【００６６】
・「制御装置について」
制御装置としては、ＣＰＵ３２とＲＯＭ３４とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理する専用のハードウェア回路（たとえばＡＳＩＣ等）を備えてもよい。すなわち、制御装置は、以下の（ａ）〜（ｃ）のいずれかの構成であればよい。（ａ）上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するＲＯＭ等のプログラム格納装置とを備える。（ｂ）上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。（ｃ）上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア処理回路や、専用のハードウェア回路は複数であってもよい。すなわち、上記処理は、１または複数のソフトウェア処理回路および１または複数の専用のハードウェア回路の少なくとも一方を備えた処理回路によって実行されればよい。
【００６７】
・「内燃機関について」
内燃機関としては、４気筒の内燃機関に限らない。たとえば直列６気筒の内燃機関であってもよい。燃料噴射弁としては、燃焼室１６に燃料を噴射するものに限らず、たとえば吸気通路１２に燃料を噴射するものであってもよい。
【符号の説明】
【００６８】
１０…内燃機関、１２…吸気通路、１４…過給機、１６…燃焼室、１８…燃料噴射弁、２０…点火装置、２２…排気通路、２４…三元触媒、３０…制御装置、３２…ＣＰＵ、３４…ＲＯＭ、３６…不揮発性メモリ、４０，４２…空燃比センサ、４４…クランク角センサ、４６…エアフローメータ、４８…水温センサ、５０…警告灯。
【図１】
2019100295.tif 000003
【図２】
2019100295.tif 000004
【図３】
2019100295.tif 000005
【図４】
2019100295.tif 000006
【図５】
2019100295.tif 000007
【図６】
2019100295.tif 000008