(57)【特許請求の範囲】
【請求項１】
一定時間毎に運転状態パラメータの変化速度を算出する運転状態パラメータ変化速度算出手段と、
現在の運転状態パラメータ変化速度と前回算出した運転状態パラメータ変化速度とが共に加速状態にあるか否かを判断する判定手段と、
定常運転時における運転状態パラメータ変化速度の分布率の近似データを上下反転して得たメンバーシップ関数を記憶する記憶手段と、
加速状態と判断されるとき、上記各運転状態パラメータ変化速度に対するメンバーシップ関数値を上記メンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、
両メンバーシップ関数値の大小関係を比較する比較手段と、
小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する運転状態パラメータ変化速度とに基づいて補正運転状態パラメータ変化速度を算出する補正運転状態パラメータ変化速度算出手段と、
上記補正運転状態パラメータ変化速度に基づいて制御対象に対する制御量を設定する制御量設定手段とを備えたことを特徴とする制御装置。
【請求項２】
一定時間毎にエンジン回転数の変化速度を算出するエンジン回転数変化速度算出手段と、
現在のエンジン回転数変化速度と前回算出したエンジン回転数変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断する判定手段と、
定常アイドル運転時におけるエンジン回転数変化速度の分布率の近似データを上下反転して得たメンバーシップ関数をそれぞれ加速側と減速側とに対応して記憶した記憶手段と、
加速状態と判断されるとき、上記両エンジン回転数変化速度に対するメンバーシップ関数値を上記加速側のメンバーシップ関数によりそれぞれ算出し、減速状態と判断されるときには、両エンジン回転数変化速度に対するメンバーシップ関数値を上記減速側のメンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、
算出した両メンバーシップ関数値の大小関係を比較する比較手段と、
小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応するエンジン回転数変化速度とに基づいて補正エンジン回転数変化速度を算出する補正エンジン回転数変化速度算出手段と、
アイドル時に、上記補正エンジン回転数変化速度に基づいてアイドル回転数制御弁に対する開度変化速度を制御するアイドル回転数制御弁制御手段とを備えたことを特徴とする車両用エンジンの制御装置。
【請求項３】
一定時間毎にスロットル弁下流の吸気管圧力の変化速度を算出する吸気管圧力変化速度算出手段と、
現在の吸気管圧力変化速度と前回算出した吸気管圧力変化速度とが共にプラス値の加速状態にあるか否かを判断する判定手段と、
定常運転時における吸気管圧力変化速度の分布率の近似データを上下反転して得たメンバーシップ関数を記憶した記憶手段と、
加速状態と判断されるとき、上記両吸気管圧力変化速度に対するメンバーシップ関数値を上記メンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、
算出した両メンバーシップ関数値の大小関係を比較する比較手段と、
小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する吸気管圧力変化速度とに基づいて補正吸気管圧力変化速度を算出する補正吸気管圧力変化速度算出手段と、
上記補正吸気管圧力変化速度とスロットル弁の開弁に伴う吸気管圧力変動を判定するための判定値とを比較し、補正吸気管圧力変化速度が判定値以上のとき、非同期燃料噴射を実行させる非同期噴射制御手段とを備えたことを特徴とする車両用エンジンの制御装置。
【請求項４】
一定時間毎に車速の変化速度を算出する車速変化速度算出手段と、
現在の車速変化速度と前回算出した車速変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断する判定手段と、
定常運転時における車速変化速度の分布率の近似データを上下反転して得たメンバーシップ関数をそれぞれ加速側と減速側とに対応して記憶した記憶手段と、
加速状態と判断されるとき、上記両車速変化速度に対するメンバーシップ関数値を上記加速側のメンバーシップ関数によりそれぞれ算出し、減速状態と判断されるときには、両車速変化速度に対するメンバーシップ関数値を上記減速側のメンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、
算出した両メンバーシップ関数値の大小関係を比較する比較手段と、
小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する車速変化速度とに基づいて車速変化量を算出する車速変化量算出手段と、
前回算出した補正車速に上記車速変化量を加算して現在の補正車速を算出する補正車速算出手段と、
現在の上記補正車速と最高車速に対応する燃料カット車速判定値とを比較し補正車速が燃料カット車速判定値以上のとき燃料カットを実行し、燃料カット中のときには、現在の補正車速と車速低下により燃料リカバを行うかを判断するための燃料リカバ車速判定値とを比較し補正車速が燃料リカバ車速判定値以下のとき燃料リカバする燃料カット制御手段とを備えたことを特徴とする車両用エンジンの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ファジー推論により定常的な変化を含んだデータから定常的な変化分を取り除き、この定常的な変化分を取り除いたデータにより制御対象を制御し、制御性を向上する制御装置及び車両用エンジンの制御装置に関する。
【０００２】
【従来の技術】
一般に、自動車等の車両用エンジンにおいては、アイドル回転数を制御するために、吸気管のスロットル弁の上流と下流とをバイパスするバイパス通路にアイドル回転数制御弁（ＩＳＣバルブ）を設け、アイドル時にエンジン回転数と目標アイドル回転数との比較結果に応じてＩＳＣバルブの開度を制御し、バイパス通路を流れるバイパス空気量を調整することで、エンジン回転数を目標アイドル回転数に収束させるようにしており、また、ラジエータファン、ヘッドランプ、リヤデフォッガ等の電気負荷の変化による発電機（オルタネータ）に対するエンジンの駆動負荷の変化、エアコン作動開始時或いは解除時のエアコンコンプレッサに対するエンジンの駆動負荷、パワーステアリング転舵時のパワーステアリングポンプに対するエンジンの駆動負荷の変化によりエンジン回転数が変動するのを防止するため、ＩＳＣバルブの開度を変化させる速度をエンジン回転数の変化速度に応じて制御している。
【０００３】
また、車両用エンジンにおいては、スロットル弁を急開した直後の空燃比のリーン化を防止するため、スロットル弁下流の吸気管圧力の変化速度が予め設定された判定値以上のとき、割り込みによる燃料噴射（非同期噴射）を行うようにしている。
【０００４】
さらに、最高車速を制限するため、車速が設定値以上の時は、燃料噴射を禁止する燃料カット制御も行われている。
【０００５】
【発明が解決しようとする課題】
しかしながら、ＩＳＣバルブによるアイドル回転数制御において、エンジン回転数の変化速度に応じてＩＳＣバルブの開度変化速度を制御すると、エンジンでは燃焼変動や気筒間の発生トルクのばらつき等により定常的に周期的な回転変化が発生しており、エンジンに対する駆動負荷の変化によるエンジン回転数変動のみならず、この回転変化によってもＩＳＣバルブの開度変化速度が変わってしまい、制御性が悪化しアイドル回転数の不安定を生じる。
【０００６】
これに対処するため、回転数変化速度データに対して加重平均等のフィルタ処理を施すと、フィルタ処理の応答遅れにより、上記電気負荷投入によるオルタネータ駆動負荷増大、或いはエアコン作動開始時のエアコンコンプレッサの駆動負荷増大、ステアリング転舵時のパワーステアリングポンプの駆動負荷増大等によるエンジン回転数変化に応じて直ちにＩＳＣバルブの開度変化速度を対応させることができず、エンジン回転数の低下を招き、また、電気負荷解除時のオルタネータ駆動負荷減少、或いはエアコン解除時のエアコンコンプレッサ駆動負荷の急減、ステアリングを戻した際のパワーステアリングポンプ駆動負荷の急減等によるエンジン負荷変動に伴うエンジン回転数変化に応じてＩＳＣバルブの開度変化速度を対応できず、エンジン回転数の吹き上がりを生じる不都合がある。
【０００７】
また、スロットル弁下流の吸気管圧力は吸気脈動により常に変化しており、スロットル弁急開直後の空燃比のリーン防止を図るため、スロットル弁下流の吸気管圧力の変化速度が予め設定された判定値以上のときスロットル弁の急開と判断して割り込み噴射（非同期噴射）を行う場合は、吸気脈動による吸気管圧力の変化速度の影響を排除するため上記判定値を比較的大きい値に設定する必要がある。従って、スロットル弁が比較的緩やかに開かれる緩加速時にはこれを検出できず、空燃比のリーン化を生じこれに起因して息付きを生じる等の不都合がある。
【０００８】
また、上述の最高車速を制限する燃料カット制御においては、車速センサを構成するリードスイッチのケーブルの捩じれにより車速検出にばらつきが生じるため、燃料カットを開始する燃料カット車速判定値と該燃料カット車速判定値より低い値で燃料リカバを開始する燃料リカバ車速判定値とにヒステリシスを十分に取る必要がある。このため、燃料カットと燃料リカバ時の車速変化幅が大きくなり、走行フィーリングを損なうばかりでなく、燃料リカバ時のトルク変化が大きくなり、ドライバビリティの悪化を招く不都合がある。
【０００９】
尚、特開昭６３−２０５５４号公報には、目標アイドル回転数に対するエンジン回転数の偏差及び変化速度を考慮したファジー推論によってＩＳＣバルブ開度のフィードバック補正値を設定することで、応答性を確保し目標アイドル回転数への収束性を向上する技術が開示されている。ここで、上記先行例においては、目標アイドル回転数に対するエンジ回転数の回転数偏差をパラメータとしたファジー量と、エンジン回転数変化速度をパラメータとしたファジー量とを求め、各ファジー量に基づいて最終的なファジー量を決定し、この最終的なファジー量に基づいて上記フィードバック補正量を設定しており、燃焼変動や気筒間の発生トルクのばらつき等により定常的に発生する周期的な回転変化を十分に除くことができず、十分な制御性の向上を望むことができない。また、上述の燃料カット制御やスロットル弁急開時の空燃比リーン化防止については何等考慮されていない。
【００１０】
従って、定常的なエンジン回転数変化、吸気管圧力変化、或いは車速変化の影響を排除したデータに基づいて制御量を設定してエンジン制御を行うことが望まれる。
【００１１】
本発明は上記事情に鑑み、ファジー推論により定常的な変化を含んだデータから定常的な変化分を取り除き、この定常的な変化分を取り除いたデータにより制御対象を制御し、制御性の向上を図ることが可能な制御装置及び車両用エンジンの制御装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、請求項１記載の制御装置は、図１（ａ）の基本構成図に示すように、一定時間毎に運転状態パラメータの変化速度を算出する運転状態パラメータ変化速度算出手段と、現在の運転状態パラメータ変化速度と前回算出した運転状態パラメータ変化速度とが共に加速状態にあるか否かを判断する判定手段と、定常運転時における運転状態パラメータ変化速度の分布率の近似データを上下反転して得たメンバーシップ関数を記憶する記憶手段と、加速状態と判断されるとき、上記各運転状態パラメータ変化速度に対するメンバーシップ関数値を上記メンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、両メンバーシップ関数値の大小関係を比較する比較手段と、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する運転状態パラメータ変化速度とに基づいて補正運転状態パラメータ変化速度を算出する補正運転状態パラメータ変化速度算出手段と、上記補正運転状態パラメータ変化速度に基づいて制御対象に対する制御量を設定する制御量設定手段とを備えたことを特徴とする。
【００１３】
請求項２記載の車両用エンジンの制御装置は、図１（ｂ）の基本構成図に示すように、一定時間毎にエンジン回転数の変化速度を算出するエンジン回転数変化速度算出手段と、現在のエンジン回転数変化速度と前回算出したエンジン回転数変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断する判定手段と、定常アイドル運転時におけるエンジン回転数変化速度の分布率の近似データを上下反転して得たメンバーシップ関数をそれぞれ加速側と減速側とに対応して記憶した記憶手段と、加速状態と判断されるとき、上記両エンジン回転数変化速度に対するメンバーシップ関数値を上記加速側のメンバーシップ関数によりそれぞれ算出し、減速状態と判断されるときには、両エンジン回転数変化速度に対するメンバーシップ関数値を上記減速側のメンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、算出した両メンバーシップ関数値の大小関係を比較する比較手段と、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応するエンジン回転数変化速度とに基づいて補正エンジン回転数変化速度を算出する補正エンジン回転数変化速度算出手段と、アイドル時に、上記補正エンジン回転数変化速度に基づいてアイドル回転数制御弁に対する開度変化速度を制御するアイドル回転数制御弁制御手段とを備えたことを特徴とする。
【００１４】
請求項３記載の車両用エンジンの制御装置は、図１（ｃ）の基本構成図に示すように、一定時間毎にスロットル弁下流の吸気管圧力の変化速度を算出する吸気管圧力変化速度算出手段と、現在の吸気管圧力変化速度と前回算出した吸気管圧力変化速度とが共にプラス値の加速状態にあるか否かを判断する判定手段と、定常運転時における吸気管圧力変化速度の分布率の近似データを上下反転して得たメンバーシップ関数を記憶した記憶手段と、加速状態と判断されるとき、上記両吸気管圧力変化速度に対するメンバーシップ関数値を上記メンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、算出した両メンバーシップ関数値の大小関係を比較する比較手段と、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する吸気管圧力変化速度とに基づいて補正吸気管圧力変化速度を算出する補正吸気管圧力変化速度算出手段と、上記補正吸気管圧力変化速度とスロットル弁の開弁に伴う吸気管圧力変動を判定するための判定値とを比較し、補正吸気管圧力変化速度が判定値以上のとき、非同期燃料噴射を実行させる非同期噴射制御手段とを備えたことを特徴とする。
【００１５】
請求項４記載の車両用エンジンの制御装置は、図１（ｄ）の基本構成図に示すように、一定時間毎に車速の変化速度を算出する車速変化速度算出手段と、現在の車速変化速度と前回算出した車速変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断する判定手段と、定常運転時における車速変化速度の分布率の近似データを上下反転して得たメンバーシップ関数をそれぞれ加速側と減速側とに対応して記憶した記憶手段と、加速状態と判断されるとき、上記両車速変化速度に対するメンバーシップ関数値を上記加速側のメンバーシップ関数によりそれぞれ算出し、減速状態と判断されるときには、両車速変化速度に対するメンバーシップ関数値を上記減速側のメンバーシップ関数によりそれぞれ算出するメンバーシップ関数値算出手段と、算出した両メンバーシップ関数値の大小関係を比較する比較手段と、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する車速変化速度とに基づいて車速変化量を算出する車速変化量算出手段と、前回算出した補正車速に上記車速変化量を加算して現在の補正車速を算出する補正車速算出手段と、現在の上記補正車速と最高車速に対応する燃料カット車速判定値とを比較し補正車速が燃料カット車速判定値以上のとき燃料カットを実行し、燃料カット中のときには、現在の補正車速と車速低下により燃料リカバを行うかを判断するための燃料リカバ車速判定値とを比較し補正車速が燃料リカバ車速判定値以下のとき燃料リカバする燃料カット制御手段とを備えたことを特徴とする。
【００１６】
すなわち、請求項１記載の制御装置は、一定時間毎に運転状態パラメータの変化速度を算出し、現在の運転状態パラメータ変化速度と前回算出した運転状態パラメータ変化速度とが共に運転状態パラメータ値が上昇することを示す加速状態にあるかを判断し、加速状態と判断されるとき、上記各運転状態パラメータ変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常運転時における運転状態パラメータ変化速度の分布率の近似データを上下反転して得たメンバーシップ関数によりそれぞれ算出して両メンバーシップ関数値の大小関係を比較する。そして、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する運転状態パラメータ変化速度とに基づいて補正運転状態パラメータ変化速度を算出し、この補正運転状態パラメータ変化速度に基づいて制御対象に対する制御量を設定する。
【００１７】
請求項２記載の車両用エンジンの制御装置は、一定時間毎にエンジン回転数の変化速度を算出し、現在のエンジン回転数変化速度と前回算出したエンジン回転数変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断し、加速状態と判断されるときには、両エンジン回転数変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常アイドル運転時におけるエンジン回転数変化速度の分布率の近似データを上下反転して得た加速側のメンバーシップ関数によりそれぞれ算出し、また、減速状態と判断されるときには、両エンジン回転数変化速度に対するメンバーシップ関数値を記憶手段に記憶されている減速側のメンバーシップ関数によりそれぞれ算出して、両メンバーシップ関数値の大小関係を比較する。そして、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応するエンジン回転数変化速度とに基づいて補正エンジン回転数変化速度を算出し、アイドル時に、該補正エンジン回転数変化速度に基づいてアイドル回転数制御弁に対する開度変化速度を制御する。
【００１８】
請求項３記載の車両用エンジンの制御装置は、一定時間毎にスロットル弁下流の吸気管圧力の変化速度を算出し、現在の吸気管圧力変化速度と前回算出した吸気管圧力変化速度とが共にプラス値の加速状態にあるかを判断し、加速状態と判断されるとき、両吸気管圧力変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常運転時における吸気管圧力変化速度の分布率の近似データを上下反転して得たメンバーシップ関数によりそれぞれ算出して、両メンバーシップ関数値の大小関係を比較する。そして、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する吸気管圧力変化速度とに基づいて補正吸気管圧力変化速度を算出して、該補正吸気管圧力変化速度とスロットル弁の開弁に伴う吸気管圧力変動を判定するための判定値とを比較し、補正吸気管圧力変化速度が判定値以上のとき、非同期燃料噴射を実行させる。
【００１９】
請求項４記載の車両用エンジンの制御装置は、一定時間毎に車速の変化速度を算出し、現在の車速変化速度と前回算出した車速変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断し、加速状態と判断されるときには、両車速変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常運転時における車速変化速度の分布率の近似データを上下反転して得た加速側のメンバーシップ関数によりそれぞれ算出し、また、減速状態と判断されるときには、両車速変化速度に対するメンバーシップ関数値を記憶手段に記憶されている減速側のメンバーシップ関数によりそれぞれ算出して、両メンバーシップ関数値の大小関係を比較する。そして、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する車速変化速度とに基づいて車速変化量を算出し、この車速変化量を前回算出した補正車速に加算して現在の補正車速を算出し、現在の補正車速と最高車速に対応する燃料カット車速判定値とを比較し補正車速が燃料カット車速判定値以上のとき燃料カットを実行し、燃料カット中のときには、現在の補正車速と車速低下により燃料リカバを行うかを判断するための燃料リカバ車速判定値とを比較し補正車速が燃料リカバ車速判定値以下のとき燃料リカバさせる。
【００２０】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。図２〜図９は本発明の実施の第１形態に係わり、図２はエンジン回転数算出ルーチンのフローチャート、図３はＩＳＣバルブ制御ルーチンのフローチャート、図４はファジー推論サブルーチンのフローチャート、図５は回転数変化速度の分布、メンバーシップ関数、及びファジー推論の説明図、図６はエンジン制御系の概略構成図、図７はクランク角センサとシグナルロータの正面図、図８は電子制御系の回路構成図、図９はクランク角センサからの出力パルスのタイミングチャートである。
【００２１】
図６において、符号１はエンジン（図においては、直列４気筒エンジン）であり、このエンジン１にシリンダヘッド２に形成された各吸気ポート２ａにインテークマニホルド３が連通され、このインテークマニホルド３に各気筒の吸気通路が集合するエアチャンバ４を介して吸気管５が連通されている。
【００２２】
上記吸気管５の吸入空気取り入れ口側には、エアクリーナ６が取付けられており、上記吸気管６の中途に、スロットル弁７が設けられ、このスロットル弁７に、スロットル開度を検出するスロットル開度センサ８ａとスロットル弁全閉でＯＮするアイドルスイッチ８ｂとを内蔵したスロットルセンサ８が連設されている。
【００２３】
また、吸気管５のスロットル弁７の上流と下流とを連通するバイパス通路９に、バイパス空気量によりアイドル回転数を制御するためのアイドル回転数制御弁（ＩＳＣバルブ）１０が介装され、さらに、上記エアチャンバ４に吸気温センサ１１が臨まされると共に、スロットル弁７下流の吸気管圧力を絶対圧で検出する吸気管圧力センサ（絶対圧センサ）１２が取付けられている。
【００２４】
また、上記インテークマニホルド３の各気筒の各吸気ポート２ａ直上流側にインジェクタ１３が臨まされ、上記シリンダヘッド２には、先端を燃焼室に露呈する点火プラグ１４が各気筒毎に取付けられている。さらに、上記エンジン１のシリンダブロック１ａにノックセンサ１５が取付けられ、上記シリンダヘッド２に設けられた冷却水通路１６に冷却水温センサ１７が臨まされている。
【００２５】
エンジン１の排気系については、上記シリンダヘッド２の各排気ポート２ｂに連通するエグゾーストマニホルド１８には、各気筒からの排気が合流して排気通路を構成する排気管１９が連通されている。この排気管１９には、中途に触媒コンバータ２０が介装され、この触媒コンバータ２０の上流側にＯ2 センサ２１が臨まされ、さらに、終端側にマフラ２２が配設されている。
【００２６】
また、エンジン１のカムシャフトにディストリビュータ２３が連設され、このディストリビュータ２３内に、上記カムシャフトに連設するシグナルロータ２４と、このシグナルロータ２４に対設されるクランク角検出及び気筒判別用のクランク角センサ２５とが内蔵されている。
【００２７】
上記シグナルロータ２４は、図７に示すように、その外周にクランク角度を判別するための角度判別用突起２４ａが、＃１，＃３，＃４，＃２気筒の圧縮上死点前（ＢＴＤＣ）θ１の位置に９０度間隔で形成されており、さらに、燃料噴射対象気筒を判別するための気筒判別用突起２４ｂが、＃１気筒の圧縮上死点後（ＡＴＤＣ）θ２の位置に形成されている。本形態では、θ１＝ＢＴＤＣ１０°ＣＡであり、θ２＝ＡＴＤＣ２０°ＣＡである。
【００２８】
そして、図９のタイミングチャートに示すように、上記シグナルロータ２４の各突起が磁気センサ（電磁ピックアップ等）からなる上記クランク角センサ２５によって検出されると、上記クランク角センサ２５から、角度判別用突起２４ａによるθ１パルスがエンジン１／２回転毎（１８０°ＣＡ毎）に出力され、＃１気筒のθ１パルスと＃３気筒のθ１パルスとの間で気筒判別用突起２４ｂによるθ２パルスが出力される。
【００２９】
後述する電子制御装置（ＥＣＵ；図８参照）４０では、上記クランク角センサ２５から出力されるθ１パルスの入力間隔時間に基づいてエンジン回転数ＮE を算出し、また、θ２パルスの入力によって次に圧縮上死点を迎える＃３気筒を判別し、各気筒の燃焼行程順（＃１気筒→＃３気筒→＃４気筒→＃２気筒）に基づいて燃料噴射対象気筒を判別する。
【００３０】
一方、上記ディストリビュータ２３には、各気筒の点火プラグ１４が接続されており、イグニッションスイッチ（図６においてはＩＧで示す）のＯＮによって電源リレー２６がＯＮすることにより上記電子制御装置４０が起動し、点火時期が演算されて対応する点火信号が上記電子制御装置４０からイグナイタ２７に出力されると、イグナイタ２７によって点火コイル２８の一次側がＯＮ，ＯＦＦされ、二次側に誘起された高電圧が上記ディストリビュータ２３を介し点火対象気筒の点火プラグ１４に配電され、該当気筒の点火プラグ１４が点火される。
【００３１】
次に上記エンジン１の電子制御を行う電子制御装置（ＥＣＵ）４０について説明する。上記ＥＣＵ４０は、図８に示すように、ＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、バックアップＲＡＭ４４、カウンタ・タイマ群４５、及びＩ／Ｏインターフェイス４６がバスライン４７を介して互いに接続されたマイクロコンピュータを中心として構成され、各部に安定化電圧を供給する定電圧回路４８、上記Ｉ／Ｏインターフェイス４６の出力ポートからの信号によりアクチュエータ類を駆動する駆動回路４９、及びセンサ類からのアナログ信号をデジタル変換するＡ／Ｄ変換器５０等の周辺回路が内蔵されている。
【００３２】
尚、上記カウンタ・タイマ群４５は、フリーランカウンタ、各種カウンタ、燃料噴射用タイマ、点火用タイマ、定期割込みを発生させるための定期割込み用タイマ、クランク角センサ信号の入力間隔計時用タイマ、及び、システム異常監視用のウオッチドッグタイマ等の各種タイマを便宜上総称するものであり、その他、各種のソフトウエアカウンタ・タイマが用いられる。
【００３３】
上記定電圧回路４８は、２回路のリレー接点を有する上記電源リレー２６の第１のリレー接点を介してバッテリ５１に接続され、このバッテリ５１に、イグニッションスイッチ５２を介して上記電源リレー２６のリレーコイルの一端が接続され、このリレーコイルの他端が上記Ｉ／Ｏインターフェイス４６に接続されている。
【００３４】
また、上記定電圧回路４８は、上記電源リレー２６の第１リレー接点を介して上記バッテリ５１に接続されるのみでなく、直接、上記バッテリ５１に接続されており、上記イグニッションスイッチ５２がＯＮされて上記電源リレー２６のリレー接点が閉となったとき、上記定電圧回路４８から各部へ制御電源を供給する一方、上記イグニッションスイッチ５２のＯＮ，ＯＦＦに拘らず、常時、上記バックアップＲＡＭ４４にバックアップ用の電源を供給する。
【００３５】
尚、上記電源リレー２６の第２のリレー接点からは、各アクチュエータへの電源線が延出されている。
【００３６】
上記ＥＣＵ４０では、Ｉ／Ｏインターフェイス４６の入力ポートに、アイドルスイッチ８ｂ、ノックセンサ１５、クランク角センサ２５、車速センサ３０等が接続されており、さらに、Ａ／Ｄ変換器５０を介して、スロットル開度センサ８ａ、吸気温センサ１１、吸気管圧力センサ１２、冷却水温センサ１７、Ｏ2 センサ２１等が接続されると共に、バッテリ電圧ＶB が入力されてモニタされる。また、上記Ｉ／Ｏインターフェイス４６の出力ポートには、イグナイタ２７が接続されると共に、ＩＳＣバルブ１０及びインジェクタ１３が上記駆動回路４９を介して接続されている。
【００３７】
そして、上記ＣＰＵ４１で上記ＲＯＭ４２に記憶されている制御プログラムに従って、Ｉ／Ｏインターフェイス４６を介して入力されるセンサ・スイッチ類からの検出信号、及びバッテリ電圧等を処理し、ＲＡＭ４３及びバックアップＲＡＭ４４に格納される各種データ、及びＲＯＭ４２に記憶されている固定データ等に基づき、燃料噴射量を定める燃料噴射パルス幅、点火時期、ＩＳＣバルブ１０に対する駆動信号のデュ−ティ比等の各種制御量を演算し、各種アクチュエータ類を駆動して燃料噴射制御、点火時期制御、アイドル回転数制御等の各種制御を行う。
【００３８】
この場合、アイドル回転数制御においては、運転状態パラメータとしてエンジン回転数を用い、ラジエータファン，ヘッドランプ，リヤデフォッガ等の電気負荷投入、解除による発電機（オルタネータ）駆動負荷急変、エアコン作動開始時、解除時のエアコンコンプレッサ駆動負荷急変、ステアリング転舵時、ステアリングを戻した際のパワーステアリングポンプ駆動負荷急変等、補機駆動によるエンジン負荷変動に伴うエンジン回転数変化に応じて直ちにＩＳＣバルブ１０の開度変化速度を対応させて、アイドル回転数の低下、或いは上昇を防止しアイドル回転数の収束性及び安定化を図るため、エンジン回転数変化速度に応じてＩＳＣバルブ１０に対する駆動信号のデュ−ティ比を補正し、ＩＳＣバルブ１０の開度変化速度を制御している。ここで、エンジン回転数の変化速度にはエンジン１の燃焼変動や気筒間の発生トルクのばらつき等に起因する定常的な回転変化分を含んでいるため、この定常的な回転変化分を取り除く必要があり、上記ＥＣＵ４０によって実現される本発明に係わるエンジン回転数変化速度算出手段、判定手段、記憶手段、メンバーシップ関数値算出手段、比較手段、補正エンジン回転数変化速度算出手段、アイドル回転数制御弁制御手段の機能により、アイドル回転数制御の制御性を向上するようにしている。以下、ＥＣＵ４０おいて実行されるその処理について、図２〜図４に示すフローチャートに従って説明する。
【００３９】
イグニッションスイッチ５２がＯＮされてＥＣＵ４０に電源が投入されると、システムイニシャライズにより各フラグ、各カウンタ類等がイニシャライズされ（但し、バックアップＲＡＭ４４にストアされているデータは除く）、その後、各ルーチンが所定周期毎に実行される。
【００４０】
図２は、エンジン１の運転に伴いカムシャフトに連設するシグナルロータ２４が回転することで、シグナルロータ２４の各突起２４ａ，２４ｂが上記クランク角センサ２５により検出されクランク角センサ２５から出力されるクランクパルス（θ１パルス，θ２パルス）入力毎に実行されるエンジン回転数算出ルーチンであり、先ず、ステップＳ１で、今回入力されたクランクパルスがクランク角検出のためのθ１パルスか気筒判別のためのθ２パルスかを識別する。すなわち、気筒判別用の突起２４ｂによるθ２パルス入力時には、図９のタイミングチャートに示すように前回クランクパルス（θ１パルス）入力からの時間、すなわちクランクパルス入力間隔時間がθ１パルス同士の入力間隔時間よりも極端に短くなる。従って、クランクパルス入力毎に実行される本ルーチンの実行周期をタイマによって計時し、前回と今回のルーチン実行周期とを比較することで、θ１パルス入力かθ２パルス入力かを識別するのである。そして、θ２パルスと識別したときには、これから圧縮上死点を迎える気筒は＃３気筒と判別することができ、燃焼行程順により次の気筒以降も判別することができる。
【００４１】
続くステップＳ２では、上記タイマによって計時された本ルーチンの実行周期、すなわち、前回のクランクパルス入力から今回のクランクパルス入力までの時間を読み出し、パルス入力間隔時間Ｔθ１を検出する。
【００４２】
次いで、ステップＳ３へ進み、今回識別したクランクパルスに対応するクランクパルス間角度を読み出し、このクランクパルス間角度と上記パルス入力間隔時間Ｔθ１とに基づき現在のエンジン回転数ＮEnを算出しＲＡＭ４３の所定アドレスにストアして、ルーチンを抜ける。尚、上記クランクパルス間角度は既知であり予めＲＯＭ４２に固定データとして記憶されているものであり、本実施の形態においてはθ１パルス間の角度は１８０°ＣＡであり、θ１パルスからθ２パルス間の角度は３０°ＣＡ、θ２パルスからθ１パルス間の角度は１５０°ＣＡである。
【００４３】
そして、このエンジン回転数算出ルーチンによって算出されたエンジン回転数ＮEnが、図３に示すＩＳＣバルブ制御ルーチンにおいて読み出され、アイドル回転数制御に用いられる。
【００４４】
図３に示すＩＳＣバルブ制御ルーチンは、一定時間（本形態では、１００ｍｓｅｃ）毎に実行され、先ず、ステップＳ１１で、冷却水温センサ１７による冷却水温Ｔｗに基づきテーブル参照により目標アイドル回転数ＮSET を設定する。
【００４５】
上記目標アイドル回転数ＮSET は、アイドル時のエンジン回転数の目標値であり、エンジン暖機状態に応じて設定され、ステップＳ１１中に示すように、冷却水温Ｔｗが低くエンジン冷態時には燃焼性が悪くアイドル回転数の安定化及び暖機促進を図るため、エンジン暖機完了時よりも高く設定されており、冷却水温Ｔｗの上昇、すなわち、エンジン温度の上昇に伴い低下される。
【００４６】
次いで、ステップＳ１２へ進み、ＲＡＭ４３から現在のエンジン回転数ＮEnを読み出し、上記目標アイドル回転数ＮSET からエンジン回転数ＮEnを減算して目標アイドル回転数ＮSET に対する現在のエンジン回転数ＮEnの偏差Ｉを算出する。
【００４７】
続くステップＳ１３では、前回のルーチン実行時（１００ｍｓｅｃ前）におけるエンジン回転数ＮEn-1を読み出し、上記現在のエンジン回転数ＮEnから減算してエンジン回転数変化速度ｄＮEn（単位；rpm/100 msec ）を算出し、ステップＳ１４で、図４に示すファジー推論サブルーチンを実行して、ファジー推論により上述の定常的な回転変動分を取り除いた補正エンジン回転数変化速度ＤＮを得る。
【００４８】
このファジー推論サブルーチンでは、ステップＳ３１で、前回ルーチン実行時（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1を読み出し、今回算出したエンジン回転数変化速度ｄＮEnと前回のエンジン回転数変化速度ｄＮEn-1とが共に０よりも大きく、エンジン回転数変化速度の変化が加速状態に有るか否かを判断する。
【００４９】
そして、ｄＮEn＞０且つｄＮEn-1＞０の時は、加速状態と判断してステップＳ３２へ進む。
【００５０】
オルタネータ，エアコンコンプレッサ，パワーステアリングポンプ等の補機駆動に伴うエンジン負荷が減少すれば、これに伴いエンジン回転数が上昇し、エンジン回転数変化速度はプラス値を取る。上記ステップＳ３１における判断は、エンジン回転数の変化速度からラジエータファン，ヘッドランプ，リヤデフォッガ等の電気負荷の解除によるエンジン１のオルタネータ駆動負荷急減、或いはエアコン解除時のエアコンコンプレッサ駆動負荷急減、ステアリングを戻した際のパワーステアリングポンプ駆動負荷急減等によるエンジン負荷変動に伴う回転数変化を抽出するためのものである。すなわち、本ルーチンの実行周期により定まる一定時間前（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1が加速（ｄＮEn-1＞０）、且つ現在のエンジン回転数変化速度ｄＮEnが加速（ｄＮEn＞０）の時は、エンジン回転数の変化が加速状態と推論するものであり、言い換えれば２回続けて加速なら加速状態と推論するルールであり、電気負荷の解除によるオルタネータ駆動負荷急減、或いはエアコン解除時のエアコンコンプレッサ駆動負荷急減、ステアリングを戻した際のパワーステアリングポンプ駆動負荷急減等、エンジン１の補機駆動負荷の減少に伴うエンジン回転数の変化（エンジン回転数上昇の加速状態）と判断する。
【００５１】
そして、ステップＳ３２では、上記ルールの適合具合、すなわちエンジン負荷変動によるエンジン回転数変化の度合いをメンバーシップ関数によって表現する。
【００５２】
このメンバーシップ関数は、予め実験等により図５（ａ）に示すように定常アイドル運転時におけるエンジン回転数変化速度の分布（発生率）を求め、図５（ｂ）に示すように、この近似データを上下反転して定常である度合いから回転変動である度合いに変換したものである。すなわち、図５（ａ）に示す定常アイドル運転時におけるエンジン回転数変化速度の分布は、エンジン１の燃焼変動や気筒間の発生トルクのばらつき等に起因する定常的な回転変化によるものであり、発生率（％）が高いほど、燃焼変動や気筒間の発生トルクのばらつき等に起因する定常的な回転変化である確率が高い。従って、この近似データを反転することにより得たメンバーシップ関数Ｆ（図５（ｂ））は、値が大きくＦ＝１に近いほどラジエータファン，ヘッドランプ，リヤデフォッガ等の電気負荷投入，解除によるオルタネータ駆動負荷急変、或いはエアコン作動開始時，解除時のエアコンコンプレッサ駆動負荷急変、ステアリング転舵時，ステアリングを戻した際のパワーステアリングポンプ駆動負荷急変等によるエンジン負荷変動に伴う回転数変化である度合いが高いことを表すことになる。
【００５３】
また、エンジン回転数の変化には、エンジン回転数の上昇による加速側とエンジン回転数の低下による減速側とがあるため、上記メンバーシップ関数も加速側と減速側とにそれぞれ分けて設定する必要がある。図５（ｂ）においては、実線が加速側のメンバーシップ関数であり、破線が減速側のメンバーシップ関数である。さらに、エンジン回転数の上昇する加速側においては、エンジン回転数変化速度がマイナス値を取ることは有り得ないので、このときはメンバーシップ関数ＦをＦ＝０とする。また、減速側については、エンジン回転数変化速度がプラス値を取りことは有り得ないので、このときはメンバーシップ関数Ｆを、Ｆ＝０とする。
【００５４】
そして、これら加速側及び減速側のメンバーシップ関数を、関数式による固定データ、或いはエンジン回転数変化速度をパラメータとするテーブルデータとして予めＲＯＭ４２に格納しておく。
【００５５】
上記ステップ３２では、上記関数式或いはテーブル参照による加速側のメンバーシップ関数により、前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1に対するファジー量Ｆ（ｄＮEn-1）、及び現在のエンジン回転数変化速度ｄＮEnに対するファジー量Ｆ（ｄＮEn）を算出する。
【００５６】
そして、ステップＳ３３へ進み、両ファジー量Ｆ（ｄＮEn-1），Ｆ（ｄＮEn）の大小関係を比較し、小さい方の値をファジー推論の結果として採用する。
【００５７】
すなわち、Ｆ（ｄＮEn）≦Ｆ（ｄＮEn-1）のときには、ステップＳ３４へ進み、現在のエンジン回転数変化速度ｄＮEn及び現在のエンジン回転数変化速度ｄＮEnに対する加速側のメンバーシップ関数値であるファジー量Ｆ（ｄＮEn）により補正エンジン回転数変化速度ＤＮを算出し（ＤＮ←ｄＮEn×Ｆ（ｄＮEn））、ＩＳＶバルブ制御ルーチンのステップＳ１５へ戻り、また、Ｆ（ｄＮEn）＞Ｆ（ｄＮEn-1）のときには、ステップＳ３５へ進み、前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1及び前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1に対する加速側のメンバーシップ関数値であるファジー量Ｆ（ｄＮEn-1）により補正エンジン回転数変化速度ＤＮを算出し（ＤＮ←ｄＮEn-1×Ｆ（ｄＮEn-1））、ＩＳＶバルブ制御ルーチンのステップＳ１５へ戻る。
【００５８】
一方、上記ステップＳ３１で、現在のエンジン回転数変化速度ｄＮEnと前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1との少なくとも一方が０以下のときにはステップＳ３６へ進み、現在のエンジン回転数変化速度ｄＮEnと前回のエンジン回転数変化速度ｄＮEn-1とが共に０よりも小さいマイナス値であり、エンジン回転数変化がエンジン回転数低下の減速状態に有るか否かを判断する。
【００５９】
そして、ｄＮEn＜０且つｄＮEn-1＜０の時は、減速状態と判断してステップＳ３７へ進む。
【００６０】
電気負荷投入によるオルタネータ駆動負荷、或いはエアコンコンプレッサ作動開始、ステアリング転舵によるパワーステアリングポンプ駆動負荷増大等、エンジン１の補機駆動負荷が増加すれば、これに対応してエンジン回転数が低下し、エンジン回転数変化速度はマイナス値となる。上記ステップＳ３６における判断は、エンジン回転数の変化速度からラジエータファン，ヘッドランプ，リヤデフォッガ等の電気負荷投入によるエンジン１のオルタネータ駆動負荷増大、或いはエアコン作動開始時のエアコンコンプレッサ駆動負荷増加、ステアリング転舵時のパワーステアリングポンプ駆動負荷増大等によるエンジン負荷変動に伴う回転数変化を抽出するためのものである。すなわち、前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1が減速（ｄＮEn-1＜０）、且つ現在のエンジン回転数変化速度ｄＮEnが減速（ｄＮEn＜０）の時は、エンジン回転数の変化が減速状態と推論するものであり、言い換えれば２回続けて減速なら減速状態と推論するルールであり、電気負荷の投入によるエンジン１のオルタネータ駆動負荷増大、或いはエアコン作動開始時のエアコンコンプレッサ駆動負荷増加、ステアリング転舵時のパワーステアリングポンプ駆動負荷増大等によるエンジン負荷変動に伴うエンジン回転数の変化と判断する。
【００６１】
そして、ステップＳ３７では、上記ルールの適合具合、すなわちエンジン負荷変動によるエンジン回転数変化の度合いを上述の減速側のメンバーシップ関数（図５（ｂ）に破線で示す）によって表現する。すなわち、上述のように、定常アイドル運転時におけるエンジン回転数変化速度の分布（図５（ａ））は、エンジン１の燃焼変動や気筒間の発生トルクのばらつき等に起因する定常的な回転変化によるものであり、発生率（％）が高いほど、燃焼変動や気筒間の発生トルクのばらつき等に起因する定常的な回転変化である確立が高い。従って、この近似データを反転することにより得た図５（ｂ）に破線で示す減速側のメンバーシップ関数Ｆは、値が大きくＦ＝１に近いほどラジエータファン，ヘッドランプ，リヤデフォッガ等の電気負荷投入によるエンジン１のオルタネータ駆動負荷増大、或いはエアコン作動開始時のエアコンコンプレッサ駆動負荷増大、ステアリング転舵時のパワーステアリングポンプ駆動負荷増大等によるエンジン負荷変動に伴う回転数変化である度合いが高いことを表す。
【００６２】
そして、前記関数式或いはテーブル参照による減速側のメンバーシップ関数により、前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1に対するファジー量Ｆ（ｄＮEn-1）、及び現在のエンジン回転数変化速度ｄＮEnに対するファジー量Ｆ（ｄＮEn）を算出し、前記ステップＳ３３へ進み、両ファジー量Ｆ（ｄＮEn-1），Ｆ（ｄＮEn）の大小関係を比較し、加速状態時と同様に、小さい方の値をファジー推論の結果として採用する。
【００６３】
ここで、本形態における推論ルールは、エンジン回転数変化速度の中からエンジン負荷変動を抽出するものであり、２つのルール、すなわち、エンジン回転数の変化が２回続けて加速であれば加速状態、エンジン回転数の変化が２回続けて減速であれば減速状態と推論する。そして、各ルールにおいて前回と今回のエンジン回転数変化速度をメンバーシップ関数値に置換してメンバーシップ関数値により大小関係を比較し、小さい方の値を各ルールの適合結果とし、２つのルールの適合結果のうち大きい値を採用することを基本とする。上記推論ルールとメンバーシップ関数の適用例として、前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1が６rpm/100 msec 、現在のエンジン回転数変化速度ｄＮEnが１３rpm/100 msec の時について、図５（ｂ），（ｃ）に基づいて説明する。
【００６４】
両エンジン回転数変化速度ｄＮEn-1，ｄＮEnは共にプラス値のため加速状態と推論され、加速側のメンバーシップ関数により前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1に対するメンバーシップ関数値としてのファジー量Ｆ（ｄＮEn-1）は０．３、現在のエンジン回転数変化速度ｄＮEnに対するファジー量Ｆ（ｄＮEn）は０．８３となる。そして、これらファジー量のうち小さい方の値、すなわち前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1に対するファジー量Ｆ（ｄＮEn-1）＝０．３を適合結果とする。さらに、減速側については共に０であり適合結果は０である。
【００６５】
そして、減速側と加速側との値のうち大きい方の値、すなわち、加速側の前回（１００ｍｓｅｃ前）のエンジン回転数変化速度ｄＮEn-1に対するファジー量Ｆ（ｄＮEn-1）＝０．３を採用し、これに対応する前回のエンジン回転数変化速度ｄＮEn-1＝６rpm/100 msec にファジー量を乗算して補正エンジン回転数変化速度ＤＮを算出する。
【００６６】
ＤＮ＝６[rpm/100 msec] ×０．３＝１．８[rpm/100 msec]
そして、この補正エンジン回転数変化速度ＤＮ＝１．８[rpm/100 msec] がエンジン負荷変動による回転数変化による値として採用される。
【００６７】
尚、本形態におけるファジー推論サブルーチンにおいては、加速状態と判断されたときには、当然、減速側の適合結果は０であるため、減速側については判断せず、また、減速状態のときには、同様に加速側については判断せず、必要最低限の判断を行うようにしている。
【００６８】
従って、以上の推論ルール及びメンバーシップ関数とを用いたファジー推論により求めたファジー量によりエンジン回転数変化速度を補正した補正エンジン回転数変化速度ＤＮは、定常的な回転変化を取り除いたエンジン負荷変動による回転変化のみによるものとなり、この補正エンジン回転数変化速度ＤＮに基づいてＩＳＣバルブ１０の開度変化速度を補正することで、定常的な回転数変化を取り除いたエンジン負荷変動に伴う回転変化のみに対応してＩＳＣバルブ１０を制御することが可能となり、燃焼変動や気筒間の発生トルクのばらつき等による定常的な回転変化によりＩＳＣバルブ１０の開度変化速度が変わることが抑制されてアイドル回転数の安定化が図れ、且つ、電気負荷投入によるオルタネータ駆動負荷増大、或いはエアコン作動開始時のエアコンコンプレッサの駆動負荷増大、ステアリング転舵時のパワーステアリングポンプ駆動負荷増大等によるエンジン負荷変動に伴うエンジン回転数変化に応じて直ちにＩＳＣバルブの開度変化速度を対応させることが可能となって、エンジン負荷増大直後のエンジン回転数の低下が防止され、また、電気負荷解除時のオルタネータ駆動負荷減少、或いはエアコン解除時のエアコンコンプレッサ駆動負荷の急減、ステアリングを戻した際のパワーステアリングポンプ駆動負荷の減少等によるエンジン負荷変動に伴うエンジン回転数変化に応じてＩＳＣバルブの変化速度を対応させることが可能となり、エンジン負荷急減直後のエンジン回転数の吹き上がりを防止することができ、アイドル回転数制御における制御性を著しく向上することが可能となる。
【００６９】
一方、前記ステップＳ３６の条件非成立時には、推論ルールが適合しないため、ステップＳ３８へ進み、補正エンジン回転数変化速度ＤＮをクリアし（ＤＮ←０）、ＩＳＶバルブ制御ルーチンのステップＳ１５へ戻る。このときには、ＤＮ＝０のため、ＩＳＣバルブ１０の開度変化速度補正は行われないことになる。
【００７０】
そして、ＩＳＣバルブ制御ルーチンのステップＳ１５では、アイドルスイッチ８ｂがＯＮのスロットル弁７が全閉のアイドル時か否かを判断し、アイドルスイッチＯＮのアイドル時には、ステップＳ１６へ進み、前記ステップＳ１２で算出した目標アイドル回転数ＮSET に対する現在のエンジン回転数ＮEnの偏差Ｉに定数Ｋ１を乗算して算出したフードバック補正値から、ファジー推論サブルーチンにおいて算出した上記補正エンジン回転数変化速度ＤＮに定数Ｋ２を乗算して算出した開度変化速度補正値を減算し、この値を、前回ルーチン実行時において算出したＩＳＣバルブ１０に対する制御量としてのデュ−ティ比ＤＩＳＣn-1 に加算して今回のデュ−ティ比ＤＩＳＣn を算出する（ＤＩＳＣn ←Ｋ１×Ｉ−Ｋ２×ＤＮ＋ＤＩＳＣn-1 ）。
【００７１】
次いで、ステップＳ１７で、今回のデュ−ティ比ＤＩＳＣn を上限値ＭＡＸと比較し、ＤＩＳＣn ≦ＭＡＸのときには、そのままステップＳ１９へ進み、ＤＩＳＣn ＞ＭＡＸのときには、ステップＳ１８で、今回のデュ−ティ比ＤＩＳＣn を上限値ＭＡＸにより制限して（ＤＩＳＣn ←ＭＡＸ）、ステップＳ１９へ進む。
【００７２】
ステップＳ１９では、今回のデュ−ティ比ＤＩＳＣn を、ＩＳＣバルブ１０の弁開度を制御する制御信号のデュ−ティ比ＤＩＳＣとし、ステップＳ２０で、制御信号のデュ−ティ比ＤＩＳＣをセットする。その結果、ＥＣＵ４０のＩ／Ｏインターフェイス４６の所定出力ポートから駆動回路４９を介してＩＳＣバルブ１０へ上記デュ−ティ比ＤＩＳＣの駆動信号が出力されて、ＩＳＣバルブ１０の弁開度が上記デュ−ティ比ＤＩＳＣに対応して制御される。
【００７３】
ここで、本実施の形態においては、上記デュ−ティ比ＤＩＳＣの値が大きいほど、ＩＳＣバルブ１０の弁開度が増大され、バイパス空気量の増大によりエンジン回転数が上昇される。上記補正エンジン回転数変化速度ＤＮに定数Ｋ２を乗算して算出した開度変化速度補正値は、エンジン回転数の変化が減速状態のときマイナス値を示し、エンジン回転数の変化速度がマイナス側に大きいほどよりマイナス方向に大きい値となる。また、上記開度変化速度補正値（Ｋ２×ＤＮ）はマイナス項であるため、エンジン回転数の変化が減速状態のときにはプラス値となり、また、エンジン回転数の低下度合いが大きいほどより大きい値となり、前回ルーチン実行時（１００ｍｓｅｃ前）におけるデュ−ティ比ＤＩＳＣn-1 と今回のデュ−ティ比ＤＩＳＣn との差、すなわちデュ−ティ比の変化速度が増大され、これに伴いＩＳＣバルブ１０の開弁方向への開度変化速度が増大され、これによって、エンジン回転数の低下が防止され、目標アイドル回転数への収束性の向上が図られる。
【００７４】
また、逆に、エンジン回転数の変化が加速状態（エンジン回転数が上昇）のときには、上記開度変化速度補正値（Ｋ２×ＤＮ）はマイナス項であるため、マイナス値となり、エンジン回転数の上昇度合いが大きいほどよりマイナス側の値となり、前回ルーチン実行時（１００ｍｓｅｃ前）におけるデュ−ティ比ＤＩＳＣn-1 と今回のデュ−ティ比ＤＩＳＣn との差、すなわちデュ−ティ比の変化速度がマイナス側に増大され、これに伴いＩＳＣバルブ１０の閉弁方向への開度変化速度が増大され、これによって、エンジン回転数の上昇が防止され、これによっても目標アイドル回転数への収束性の向上が図られる。
【００７５】
そして、ステップＳ２１で、今回のデュ−ティ比ＤＩＳＣn により前回のデュ−ティ比ＤＩＳＣn-1 を更新し、現在のエンジン回転数変化速度ｄＮEnにより前回のエンジン回転数変化速度ｄＮEn-1を更新し、更に、現在のエンジン回転数ＮEnにより前回のエンジン回転数ＮEn-1を更新して次回に備え、ルーチンを抜ける。
【００７６】
また、前記ステップＳ１５で、アイドルスイッチＯＦＦによる非アイドル時には、ステップＳ２２へ進み、前回ルーチン実行時において算出したＩＳＣバルブ１０に対する制御量としてのデュ−ティ比ＤＩＳＣn-1 に定数Ｋ３を加算して今回のデュ−ティ比ＤＩＳＣn を算出し（ＤＩＳＣn ←ＤＩＳＣn-1 ＋Ｋ３）、前記ステップＳ１７へ進む。従って、非アイドル時には、オープンループ制御となり、デュ−ティ比ＤＩＳＣが定数Ｋ３づつルーチン実行毎（１００ｍｓｅｃ毎）に大きくなり、やがて上限値ＭＡＸに達すると、デュ−ティ比は上限値ＭＡＸに保持される。
【００７７】
次に、図１０〜図１４に基づき本発明の実施の第２形態を説明する。図１０は吸気管圧力算出ルーチンのフローチャート、図１１は非同期燃料噴射量設定ルーチンのフローチャート、図１２はファジー推論サブルーチンのフローチャート、図１３はスロットル開度変化と吸気管圧力変化との関係を示す説明図、図１４はメンバーシップ関数の説明図である。
【００７８】
尚、エンジンの構成、及び電子制御系の回路構成は上記実施の第１形態と同様であり、説明を省略する。
【００７９】
本形態では、運転状態パラメータとして吸気管圧力を用い、スロットル弁７を急開した直後の空燃比のリーン化を防止するため、スロットル弁７下流の吸気管圧力の変化速度が予め設定された判定値以上のとき、割り込みによる燃料噴射（非同期噴射）を行うものにおいて、上記吸気管圧力変化速度をファジー推論により補正し、定常的な吸気脈動による吸気管圧力の変化の影響を上記吸気管圧力変化速度から排除し、加速時における非同期噴射を確実に行い、スロットル弁が比較的緩やかに開かれる緩加速時においても、空燃比のリーン化、及びこれに伴う息付きを防止することを可能とする。
【００８０】
すなわち、前記ＥＣＵ４０によって実現される本発明に係わる吸気管圧力変化速度算出手段、判定手段、記憶手段、メンバーシップ関数値算出手段、比較手段、補正吸気管圧力変化速度算出手段、非同期噴射制御手段の機能によりスロットル開弁による加速時の非同期噴射を確実に行う。
【００８１】
以下、ＥＣＵ４０おいて実行されるその処理について図１０〜図１２のフローチャートに基づき説明する。
【００８２】
図１０に示す吸気管圧力算出ルーチンは、θ１パルス入力毎に実行され、ステップＳ４１で吸気管圧力センサ１２からの出力信号に基づき吸気管圧力Ｐn を算出しＲＡＭ４３の所定アドレスにストアして、ルーチンを抜ける。
【００８３】
そして、この吸気管圧力算出ルーチンによって算出された吸気管圧力Ｐn が、図１１に示す非同期燃料噴射量設定ルーチンにおいて読み出され、非同期燃料噴射の必要性の有無が判断される。
【００８４】
図１１に示す非同期燃料噴射量設定ルーチンは、一定時間（本形態では、５ｍｓｅｃ）毎に実行され、先ず、ステップＳ５１で、ＲＡＭ４３から現在の吸気管圧力Ｐn 及び前回のルーチン実行時（５ｍｓｅｃ前）における吸気管圧力Ｐn-1 を読み出し、現在の吸気管圧力Ｐn から前回ルーチン実行時の吸気管圧力Ｐn-1 を減算して吸気管圧力変化速度ｄＰn （単位；KPa/5 msec ）を算出し、ステップＳ５２で、図１２に示すファジー推論サブルーチンを実行して、ファジー推論により上述の定常的な吸気脈動による吸気管圧力変化分を取り除いた補正吸気管圧力変化速度ＤＰを得る。
【００８５】
このファジー推論サブルーチンでは、ステップＳ６１で、前回ルーチン実行時（５ｍｓｅｃ前）の吸気管圧力変化速度ｄＰn-1 を読み出し、今回算出した吸気管圧力変化速度ｄＰn と前回の吸気管圧力変化速度ｄＰn-1 とが共に０よりも大きく、吸気管圧力変化速度の変化が加速状態、すなわち、吸気管圧力の変化がスロットル弁７の開弁による上昇状態に有るか否かを判断する。
【００８６】
そして、ｄＰn ＞０且つｄＰn-1 ＞０の時は、吸気管圧力の変化がスロットル弁７の開弁による上昇状態と判断してステップＳ６２へ進む。
【００８７】
図１３に示すように、加速時や車両発進時等、アクセルペダルの踏み込みによりスロットル弁７が開弁すると、スロットル開度ＴＨＶの増大に伴い吸気管圧力Ｐも上昇し、その吸気管圧力Ｐの上昇速度は、スロットル弁の開弁速度が早いほど、すなわちスロットル弁７が急速に開かれるほど大きくなる。上記ステップＳ６１における判断は、吸気管圧力の変化速度からスロットル開弁に伴う吸気管圧力変化を抽出するためのものである。すなわち、本ルーチンの実行周期により定まる一定時間前（５ｍｓｅｃ前）の吸気管圧力変化速度ｄＰn-1 が加速（ｄＰn-1 ＞０）、且つ現在の吸気管圧力変化速度ｄＰn が加速（ｄＰn ＞０）の時は、スロットル弁７の開弁による吸気管圧力の上昇と推論するものであり、言い換えれば２回続けて吸気管圧力の変化が加速ならスロットル弁７の開弁に伴う吸気管圧力の上昇と推論するルールである。
【００８８】
そして、ステップＳ６２では、上記ルールの適合具合、すなわちスロットル弁７の開弁に伴う吸気管圧力変化の度合いをメンバーシップ関数によって表現する。
【００８９】
このメンバーシップ関数は、前記第１形態と同様に、予め実験等により定常運転時における吸気管圧力変化速度の分布（発生率）を求め、図１４に示すように、この近似データを上下反転して得たものである。
【００９０】
すなわち、定常運転時における吸気管圧力の変化速度の分布は、エンジン１の吸気脈動等に起因する定常的な吸気管圧力変化によるものであり、発生率（％）が高いほど、吸気脈動等に起因する定常的な吸気管圧力変化である確率が高い。従って、この近似データを反転することにより得たメンバーシップ関数Ｆ（図１４）は、値が大きくＦ＝１に近いほどスロットル弁７の開弁に伴う吸気管圧力変化である度合いが高いことを表すことになる。
【００９１】
尚、本形態においてはスロットル弁７の開弁に伴う吸気管圧力の上昇のみ判断すれば良いので、吸気管圧力の低下による吸気管圧力変化速度の減速側については必要としない。また、吸気管圧力の上昇時には、吸気管圧力変化速度がマイナス値を取ることは有り得ないので、このときはメンバーシップ関数ＦをＦ＝０とする。
【００９２】
そして、このメンバーシップ関数を、関数式による固定データ、或いは吸気管圧力変化速度をパラメータとするテーブルデータとして予めＲＯＭ４２に格納しておく。
【００９３】
上記ステップＳ６２では、上記関数式或いはテーブル参照による加速側のメンバーシップ関数により、前回（５ｍｓｅｃ前）の吸気管圧力変化速度ｄＰn-1 に対するファジー量Ｆ（ｄＰn-1 ）、及び現在の吸気管圧力変化速度ｄＰn に対するファジー量Ｆ（ｄＰn ）を算出する。
【００９４】
そして、ステップＳ６３へ進み、両ファジー量Ｆ（ｄＰn-1 ），Ｆ（ｄＰn ）の大小関係を比較し、小さい方の値をファジー推論の結果として採用する。
【００９５】
Ｆ（ｄＰn ）≦Ｆ（ｄＰn-1 ）のときには、ステップＳ６４へ進み、現在の吸気管圧力変化速度ｄＰn 及び現在の吸気管圧力変化速度ｄＰn に対するメンバーシップ関数値であるファジー量Ｆ（ｄＰn ）により補正吸気管圧力変化速度ＤＰを算出し（ＤＰ←ｄＰn ×Ｆ（ｄＰn ））、非同期燃料噴射量設定ルーチンのＳ５３へ戻り、また、Ｆ（ｄＰn ）＞Ｆ（ｄＰn-1 ）のときには、ステップＳ６５へ進み、前回（５ｍｓｅｃ前）の吸気管圧力変化速度ｄＰn-1 及び前回（５ｍｓｅｃ前）の吸気管圧力変化速度ｄＰn-1 に対するメンバーシップ関数値であるファジー量Ｆ（ｄＰn-1 ）により補正吸気管圧力変化速度ＤＰを算出し（ＤＰ←ｄＰn-1 ×Ｆ（ｄＰn-1 ））、非同期燃料噴射量設定ルーチンのステップＳ５３へ戻る。
【００９６】
一方、前記ステップＳ６１の条件非成立時には、推論ルールが適合しないため、ステップＳ６６へ進み、補正吸気管圧力変化速度ＤＰをクリアし（ＤＰ←０）、非同期燃料噴射量設定ルーチンのステップＳ５３へ戻る。このときには、ＤＰ＝０のため、非同期噴射は行われないことになる。
【００９７】
そして、非同期燃料噴射量設定ルーチンのステップＳ５３では、補正吸気管圧力変化速度ＤＰと、スロットル弁７の開弁（スロットル弁の急開）に伴う吸気管圧力変動を判定するための予め設定された判定値ｄＰS とを比較し、ＤＰ≧ｄＰS で非同期噴射の必要があると判断されるときは、ステップＳ５４へ進み、現在のエンジン回転数ＮE 及び冷却水温Ｔｗに基づいて必要とする非同期燃料噴射量を定める非同期噴射パルス幅ＴｉN を設定し、ステップＳ５５で、上記非同期噴射パルス幅ＴｉN をセットして、ステップＳ５７へ進む。
【００９８】
その結果、ＥＣＵ４０のＩ／Ｏインターフェイス４６の所定出力ポートから駆動回路４９を介してインジェクタ１３へ上記非同期噴射パルス幅ＴｉN の駆動信号が出力され、インジェクタ１３から非同期噴射パルス幅ＴｉN に相応する量の燃料が噴射されて非同期噴射が行われる。
【００９９】
一方、上記ステップＳ５３においてＤＰ＜ｄＰS のときには非同期噴射の必要がなく、ステップＳ５６で、非同期噴射パルス幅ＴｉN をクリアし（ＴｉN ←０）、ステップＳ５７へ進む。
【０１００】
そして、ステップＳ５７で、現在の吸気管圧力変化速度ｄＰn により前回の吸気管圧力変化速度ｄＰn-1 を更新すると共に、現在の吸気管圧力Ｐn により前回の吸気管圧力Ｐn-1 を更新して次回に備え、ルーチンを抜ける。
【０１０１】
従って、本形態においては、スロットル弁７の開弁（スロットル弁急開）を、吸気管圧力変化速度により判断して割り込みによる燃料噴射、すなわち非同期噴射を行うに際し、上記吸気管圧力変化速度をファジー推論により補正し、定常的な吸気脈動による吸気管圧力の変化の影響を上記吸気管圧力変化速度から排除した補正吸気管圧力変化速度ＤＰを得、この補正吸気管圧力変化速度ＤＰと判定値ｄＰS とを比較して非同期噴射の必要性を判断するので、上記判定値ｄＰS は吸気脈動を考慮することなく、その分小さい値に設定することができ、これによりスロットル弁が比較的緩やかに開かれる緩加速時においてもこれを検出することが可能となり、空燃比のリーン化、及びこれに伴う息付きを防止することが可能となる。
【０１０２】
次に、図１５〜図１８に基づき本発明の実施の第３形態を説明する。図１５は燃料カット制御ルーチンのフローチャート、図１６はファジー推論サブルーチンのフローチャート、図１７は燃料噴射量設定ルーチンのフローチャート、図１８は燃料カット車速判定値と燃料リカバ車速判定値とのヒステリシスを示す説明図である。
【０１０３】
尚、エンジンの構成、及び電子制御系の回路構成は前記実施の第１形態と同様であり、説明を省略する。
【０１０４】
本形態では、運転状態パラメータとして車速を用い、最高車速制限のため、車速が燃料カットを開始する燃料カット車速判定値以上のとき燃料カットを行い、車速が上記燃料カット車速判定値よりも低い燃料リカバ車速判定値以下に低下したとき燃料リカバを行うものにおいて、車速変化速度をファジー推論により補正し、この補正後の車速変化速度に基づいて車速を求めることで、車速センサを構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきを排除し、燃料カットを開始する燃料カット車速判定値と該燃料カット車速判定値より低い値で燃料リカバを開始する燃料リカバ車速判定値とのヒステリシスを狭めることを可能とし、高車速による燃料カット時の車速変化幅が大きくなることによる走行フィーリングの悪化を防ぎ、燃料リカバ時のトルク変化を縮小することを可能としてドライバビリティの悪化を防止する。
【０１０５】
すなわち、前記ＥＣＵ４０によって実現される本発明に係わる車速変化速度算出手段、判定手段、記憶手段、メンバーシップ関数値算出手段、比較手段、車速変化量算出手段、補正車速算出手段、燃料カット制御手段の機能により車速センサを構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきを排除し、燃料カット車速判定値と燃料リカバ車速判定値とのヒステリシスを狭めることを可能とし、走行フィーリングの悪化を防ぎ、燃料リカバ時のトルク変化を縮小することを可能としてドライバビリティの悪化を防止する。
【０１０６】
以下、ＥＣＵ４０おいて実行されるその処理について図１５〜図１７のフローチャートに基づき説明する。
【０１０７】
図１５に示す燃料カット制御ルーチンは、一定時間（本形態では、３２０ｍｓｅｃ）毎に実行され、先ず、ステップＳ７１で、車速センサ３０による現在の車速Ｖn 及びＲＡＭ４３から前回のルーチン実行時（３２０ｍｓｅｃ前）における車速Ｖn-1 を読み出し、現在の車速Ｐn から前回ルーチン実行時の車速Ｖn-1 を減算して車速変化速度ｄＶn （単位；Km/h/320 msec）を算出し、ステップＳ７２で、図１６に示すファジー推論サブルーチンを実行して、ファジー推論により上述の定常的に生じる車速センサ３０を構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきを排除した補正車速変化速度ＤＶを得る。
【０１０８】
このファジー推論サブルーチンでは、ステップＳ８１で、前回ルーチン実行時（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 を読み出し、今回算出した車速変化速度ｄＶn と前回の車速変化速度ｄＶn-1 とが共に０よりも大きく、車速の変化が加速状態、すなわち、車速の変化が上昇状態に有るか否かを判断する。
【０１０９】
そして、ｄＶn ＞０且つｄＶn-1 ＞０の時は、車速の変化が上昇状態、すなわち加速状態と判断してステップＳ８２へ進む。
【０１１０】
上記ステップＳ８１における判断は、真の車速の変化を抽出するためのものである。すなわち、本ルーチンの実行周期により定まる一定時間前（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 が加速（ｄＶn-1 ＞０）、且つ現在の車速変化速度ｄＶn が加速（ｄＶn ＞０）の時は、真の車速の上昇と推論するものであり、言い換えれば２回続けて車速変化速度が０よりも大きく加速なら車速の上昇と推論するルールである。
【０１１１】
そして、ステップＳ８２では、上記ルールの適合具合、すなわち真の車速変化の度合いをメンバーシップ関数によって表現する。
【０１１２】
このメンバーシップ関数は、前記第１形態と同様に、予め実験等により定常運転時における車速変化速度の分布（発生率）を求め、この近似データを上下反転して得たものである。
【０１１３】
すなわち、定常運転時における車速の変化速度の分布は、車速センサ３０を構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきによるものであり、発生率（％）が高いほど、その確率が高い。従って、この近似データを反転することにより得たメンバーシップ関数Ｆ（前記実施の第１形態における図５（ｂ）とほぼ同様の傾向となる）は、値が大きくＦ＝１に近いほど真の車速変化である度合いが高いことを表す。
【０１１４】
また、車速の変化には、車速の上昇による加速側と車速の低下による減速側とがあるため、上記メンバーシップ関数も加速側と減速側とにそれぞれ分けて設定する必要がある。さらに、車速の上昇する加速側においては、車速変化速度がマイナス値を取ることは有り得ないので、このときはメンバーシップ関数ＦをＦ＝０とする。また、減速側については、車速変化速度がプラス値を取りことは有り得ないので、このときはメンバーシップ関数Ｆを、Ｆ＝０とする。
【０１１５】
そして、これら加速側及び減速側のメンバーシップ関数を、関数式による固定データ、或いは車速変化速度をパラメータとするテーブルデータとして予めＲＯＭ４２に格納しておく。
【０１１６】
上記ステップ８２では、上記関数式或いはテーブル参照による加速側のメンバーシップ関数により、前回（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 に対するファジー量Ｆ（ｄＶn-1 ）、及び現在の車速変化速度ｄＶn に対するファジー量Ｆ（ｄＶn ）を算出する。
【０１１７】
そして、ステップＳ８３へ進み、両ファジー量Ｆ（ｄＶn-1 ），Ｆ（ｄＶn ）の大小関係を比較し、小さい方の値をファジー推論の結果として採用する。
【０１１８】
Ｆ（ｄＶn ）≦Ｆ（ｄＶn-1 ）のときには、ステップＳ８４へ進み、現在の車速変化速度ｄＶn 及び現在の車速変化速度ｄＶn に対するメンバーシップ関数値であるファジー量Ｆ（ｄＶn ）により補正車速変化速度ＤＶを算出し（ＤＶ←ｄＶn ×Ｆ（ｄＶn ））、また、Ｆ（ｄＶn ）＞Ｆ（ｄＶn-1 ）のときには、ステップＳ８５へ進み、前回（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 及び前回（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 に対するメンバーシップ関数値であるファジー量Ｆ（ｄＶn-1 ）により補正車速変化速度ＤＶを算出し（ＤＶ←ｄＶn-1 ×Ｆ（ｄＶn-1 ））、ステップＳ８６へ進む。
【０１１９】
ここで、上記補正車速変化速度ＤＶは、車速変化量を表していることになり、ステップＳ８６で、上記補正車速変化速度ＤＶ（車速変化量）を前回ルーチン実行時に算出した補正車速ＶCORn-1に加算して、補正車速ＶCOR を算出し、燃料カット制御ルーチンのステップＳ７３へ戻る。すなわち、この補正車速ＶCOR は、上述のファジー推論による補正車速変化速度（車速変化量）に基づいて算出され、車速センサ３０を構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきを取り除いた現在の真の車速を表すことになる。
【０１２０】
一方、上記ステップＳ８１で、現在の車速変化速度ｄＶn と前回（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 との少なくとも一方が０以下のときにはステップＳ８７へ進み、現在の車速変化速度ｄＶn と前回の車速変化速度ｄＶn-1 とが共に０よりも小さいマイナス値であり、車速の変化が減速状態、すなわち、車速の変化が低下状態に有るか否かを判断する。
【０１２１】
そして、ｄＶn ＜０且つｄＶn-1 ＜０の時は、車速の変化が低下状態、すなわち減速状状態と判断してステップＳ８８へ進む。
【０１２２】
上記ステップＳ８７における判断は、真の車速の低下を抽出するためのものである。すなわち、前回（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 と今回の車速変化速度ｄＶn との２回続けて車速変化速度が０よりも小さく減速なら車速の低下と推論するルールである。
【０１２３】
そして、ステップＳ８８で、上記ルールの適合具合、すなわち真の車速変化の度合いを上述の減速側のメンバーシップ関数によって表現する。ステップＳ８８では、前記関数式或いはテーブル参照による減速側のメンバーシップ関数により、前回（３２０ｍｓｅｃ前）の車速変化速度ｄＶn-1 に対するファジー量状ｄＶn-1 ）、及び現在の車速変化速度ｄＶn に対するファジー量Ｆ（ｄＶn ）を算出する。
【０１２４】
そして、前記ステップＳ８３へ進み、両ファジー量Ｆ（ｄＶn-1 ），Ｆ（ｄＶn ）の大小関係を比較し、小さい方の値をファジー推論の結果として採用し、前記ステップＳ８４或いはステップＳ８５を介してステップＳ８６へ進み、補正車速変化速度ＤＶ（車速変化量）を前回ルーチン実行時に算出した補正車速ＶCORn-1に加算して、補正車速ＶCOR を算出し、燃料カット制御ルーチンのステップＳ７３へ戻る。
【０１２５】
一方、前記ステップＳ８７の条件非成立時には、推論ルールが適合しないため、ステップＳ８９へ進み、前回のルーチン実行時における補正車速ＶCORn-1を、現在の補正車速ＶCORnとして採用し（ＶCORn←ＶCORn-1）、燃料カット制御ルーチンのステップＳ７３へ戻る。すなわち、上述の推論ルールが適合しないときには、車速の変化がないものとする。
【０１２６】
そして、燃料カット制御ルーチンのステップＳ７３では、燃料カットを指示する燃料カットフラグＦCUT の値を参照し、ＦCUT ＝０で燃料カットが指示されておらず、燃料噴射が行われているときには、ステップＳ７４へ進み、上記補正車速ＶCORnと最高車速に対応する燃料カット車速判定値ＶS1とを比較し、ＶCORn＜ＶS1のときには、補正車速ＶCORn、すなわち現在の真の車速が最高制限車速に達していないと判断し、ステップＳ７５で、燃料カットフラグＦCUT をクリアして（ＦCUT ←０）、ステップＳ７８へ進む。
【０１２７】
また、上記ステップＳ７４で、補正車速ＶCORn、すなわち現在の真の車速が燃料カットを開始する燃料カット車速判定値ＶS1以上で最高車速制限のために燃料カットを行うときには、ステップＳ７７へ進み、燃料カットフラグＦCUT をセットして（ＦCUT ←１）燃料カットを指示し、ステップＳ７８へ進む。
【０１２８】
一方、上記ステップＳ７３においてＦCUT ＝１で最高車速制限のために燃料カット中のときには、ステップＳ７６へ進み、現在の補正車速ＶCORnと車速低下により燃料リカバを行うかを判断するための燃料リカバ車速判定値ＶS2とを比較する。この燃料リカバ車速判定値ＶS2は、最高車速制限時の燃料カットと燃料リカバとのハンチングを防ぐため、図１８に示すように、上記燃料カット車速判定値ＶS1よりも小さい値に設定されている。
【０１２９】
そして、ＶCORn＞ＶS2で車速が燃料リカバ車速判定値ＶS2に未だ低下していないときには、ステップＳ７７へ進み、燃料カットフラグＦCUT をセット状態のままとし、ＶCORn≦ＶS2で、補正車速ＶCORn、すなわち現在の真の車速が燃料カットにより低下し、燃料リカバする燃料リカバ車速判定値ＶS2以下となったときは、前記ステップＳ７５へ進み、燃料カットフラグＦCUT をクリアして、燃料噴射を再開させる。
【０１３０】
そして、ステップＳ７８で、前回の補正車速ＶCORn-1を今回の補正車速ＶCORnにより更新し、前回の車速変化速度ｄＶn-1 を今回の車速変化速度ｄＶn により更新すると共に、前回の車速Ｖn-1 を今回の車速Ｖn により更新して次回に備え、ルーチンを抜ける。
【０１３１】
この燃料カット制御ルーチンによって設定された燃料カットフラグＦCUT が、図１７に示す燃料噴射量設定ルーチンにおいて読み出され、最高車速制限のための燃料カットの必要性の有無が判断される。
【０１３２】
図１７に示す燃料噴射量設定ルーチンは、一定周期（本形態では、θ１パルスによる１８０°ＣＡ）毎に実行され、ステップＳ９１で、燃料カットフラグＦCUT を参照し、最高車速制限のために燃料カットが指示されているか否かを判断する。
【０１３３】
そして、ＦCUT ＝０で燃料カットが指示されていないときには、ステップＳ９２へ進み、現在のエンジン回転数ＮEnと吸入空気量に係わるパラメータとしての現在の吸気管圧力Ｐn とに基づき、マップを参照して基本燃料噴射量を定める基本燃料噴射パルス幅Ｔｐを設定し、続くステップＳ９３で、吸気温センサ１１による吸気温度に基づく吸気温補正係数、冷却水温センサ１７による水温Ｔｗに基づく水温増量係数、スロットル開度センサ８ａの出力値に基づく加減速補正係数、及びＯ2 センサ２１の出力電圧に基づき空燃比を目標空燃比に近付けるための空燃比フィードバック補正係数等の各種増量係数Ｋを設定し、ステップＳ９４で、バッテリ電圧ＶB に基づきインジェクタ１３の無効噴射時間を補償する無効噴射パルス幅ＴＶを設定し、ステップＳ９５へ進む。
【０１３４】
ステップＳ９５では、上記ステップＳ９２で設定した基本燃料噴射パルス幅Ｔｐに、上記各種増量係数Ｋを乗算して空燃比補正を行うと共に、上記ステップＳ９４で設定した無効噴射パルス幅ＴＶを加算して、最終的な燃料噴射量を定める燃料噴射パルス幅ＴＡＵを算出し（ＴＡＵ←Ｔｐ×Ｋ＋ＴＶ）、ステップＳ９６で、上記燃料噴射パルス幅ＴＡＵをセットしてルーチンを抜ける。
【０１３５】
従って、ＦCUT ＝０の最高車速制限による燃料カットが指示されていないときには、通常通り燃料噴射パルス幅ＴＡＵが算出され、この燃料噴射パルス幅ＴＡＵによる駆動信号が、ＥＣＵ４０のＩ／Ｏインターフェイス４６の所定出力ポートから駆動回路４９を介してインジェクタ１３へ出力され、インジェクタ１３から上記燃料噴射パルス幅ＴＡＵに相応する量の燃料が噴射され、通常通り燃料噴射が行われる。
【０１３６】
一方、上記ステップＳ９１においてＦCUT ＝１で最高車速制限のために燃料カットが指示されているときには、ステップＳ９７へ進み、燃料噴射パルス幅ＴＡＵをゼロに設定して、ステップＳ９６で、この燃料噴射パルス幅ＴＡＵ（＝０）をセットしてルーチンを抜ける。
【０１３７】
従って、ＦCUT ＝１の最高車速制限時には、ＴＡＵ＝０により燃料噴射が行われず、燃料カットによって最高車速が制限される。
【０１３８】
ここで、上述のように、最高車速制限を行うか否かを判断する基となる車速として、上記推論ルール及びメンバーシップ関数によるファジー推論によって求め、車速センサ３０を構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきを取り除いた補正車速変化速度ＤＶ、すなわち真の車速変化量を、前回ルーチン実行時に算出した補正車速ＶCORn-1に加算して算出した補正車速ＶCORnが用いられる。この補正車速ＶCORnは、上述のファジー推論による補正車速変化速度（車速変化量）に基づいて算出され、車速センサ３０を構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきを取り除いた現在の真の車速を表すことになる。従って、車速センサを構成するリードスイッチのケーブルの捩じれにより生じる車速検出のばらつきを補償するために最高車速制限により燃料カットを開始する燃料カット車速判定値と該燃料カット車速判定値より低い値で燃料リカバを開始する燃料リカバ車速判定値とにヒステリシスを十分に取る必要がなく、これら燃料カット車速判定値と燃料リカバ車速判定値とのヒステリシスを狭めることが可能となり、高車速による燃料カット時の車速変化幅が大きくなることによる走行フィーリングの悪化が防止され、また、燃料リカバ時のトルク変化が縮小し、ドライバビリティの悪化が防止される。
【０１３９】
尚、本実施の形態においては、燃料噴射制御方式としてＤジェトロニック方式を用いた例につき説明したが、Ｌジェトロニック方式にも適用できることは勿論である。
【０１４０】
また、本発明は、運転状態パラメータの変化速度を用いて制御量を設定するものであれば良く、上記各実施の形態に限定されない。さらに、エンジンのみならず、例えば自動変速機制御において油圧の変化速度に応じて油圧回路におけるバルブの制御量を定めるものにおいても適用可能である。
【０１４１】
【発明の効果】
請求項１記載の発明によれば、一定時間毎に運転状態パラメータの変化速度を算出し、現在の運転状態パラメータ変化速度と前回算出した運転状態パラメータ変化速度とが共に運転状態パラメータ値が上昇することを示す加速状態にあるかを判断し、加速状態と判断されるとき、上記各運転状態パラメータ変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常運転時における運転状態パラメータ変化速度の分布率の近似データを上下反転して得たメンバーシップ関数によりそれぞれ算出して両メンバーシップ関数値の大小関係を比較し、そして、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する運転状態パラメータ変化速度とに基づいて補正運転状態パラメータ変化速度を算出し、この補正運転状態パラメータ変化速度に基づいて制御対象に対する制御量を設定するので、定常運転時における運転状態パラメータ変化速度の分布率が高いほど定常的な変化によるものであり、この運転状態パラメータ変化速度の分布率の近似データを上下反転して得たメンバーシップ関数は、逆に値が大きいほど定常的な変化を含まないことになり、現在の運転状態パラメータ変化速度と前回の運転状態パラメータ変化速度とにより２回連続して加速のとき加速状態と推論し、この運転状態パラメータ変化速度は定常的な運転状態パラメータの変化によるものではないとして、このルールの適合具合を上記メンバーシップ関数によって検証し、現在と前回との各運転状態量変化速度に対するメンバーシップ関数値によるファジー量のうち、小さい方をルールの適合結果として採用するため、上記補正運転状態パラメータ変化速度は定常的な変化分を取り除いたデータとなり、ファジー推論により定常的な変化を含んだデータから定常的な変化分を取り除き、この定常的な変化分を取り除いたデータにより制御対象を制御することが可能となり、制御性を著しく向上することができる。
【０１４２】
請求項２記載の発明では、一定時間毎にエンジン回転数の変化速度を算出し、現在のエンジン回転数変化速度と前回算出したエンジン回転数変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断し、加速状態と判断されるときには、両エンジン回転数変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常アイドル運転時におけるエンジン回転数変化速度の分布率の近似データを上下反転して得た加速側のメンバーシップ関数によりそれぞれ算出し、また、減速状態と判断されるときには、両エンジン回転数変化速度に対するメンバーシップ関数値を記憶手段に記憶されている減速側のメンバーシップ関数によりそれぞれ算出して、両メンバーシップ関数値の大小関係を比較し、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応するエンジン回転数変化速度とに基づいて補正エンジン回転数変化速度を算出し、アイドル時に、該補正エンジン回転数変化速度に基づいてアイドル回転数制御弁に対する開度変化速度を制御するので、定常アイドル運転時におけるエンジン回転数変化速度の分布率が高いほど燃焼変動や気筒間の発生トルクのばらつき等による定常的な回転変化によるものであり、定常アイドル運転時のエンジン回転数変化速度の分布率の近似データを上下反転して得たメンバーシップ関数は、逆に値が大きいほど定常的な回転変化を含まないエンジン負荷変動によるエンジン回転数変化の確率が高いことを表すことになり、現在のエンジン回転数変化速度と前回のエンジン回転数変化速度とが２回連続してプラス値のとき加速状態と推論し、このエンジン回転数変化速度は定常的な回転変化によるものではなく補機駆動に対するエンジン負荷急減によるものとして、このルールの適合具合を上記加速側のメンバーシップ関数によって検証し、現在と前回との各エンジン回転数変化速度に対するメンバーシップ関数値によるファジー量のうち、小さい方をルールの適合結果として採用するため、上記補正エンジン回転数変化速度は定常的な燃焼変動や気筒間の発生トルクのばらつき等の変化分を取り除いたデータとなり、ファジー推論により定常的な変化を含んだデータから定常的な変化分を取り除き、この定常的な変化分を取り除いたデータによりアイドル時におけるアイドル回転数制御弁に対する開度変化速度を制御することが可能となり、エンジン負荷の急減に対応して応答遅れを生じることなくアイドル回転数制御弁に対する開度変化速度を補正することが可能となり、エンジン回転数の吹き上がりを防止することができる。
【０１４３】
また、現在のエンジン回転数変化速度と前回のエンジン回転数変化速度とが２回連続してマイナス値のとき減速状態と推論し、このエンジン回転数変化速度は定常的な回転変化によるものではなく補機駆動負荷増大に伴うエンジン負荷急増によるものとして、このルールの適合具合を上記減速側のメンバーシップ関数によって検証し、同様に、現在と前回との各エンジン回転数変化速度に対するメンバーシップ関数値によるファジー量のうち、小さい方をルールの適合結果として採用するため、上記補正エンジン回転数変化速度は定常的な燃焼変動や気筒間の発生トルクのばらつき等の変化分を取り除いたデータとなり、ファジー推論により定常的な変化を含んだデータから定常的な変化分を取り除き、この定常的な変化分を取り除いたデータによりアイドル時におけるアイドル回転数制御弁に対する開度変化速度を制御することが可能となり、エンジン負荷の急増に対応して応答遅れを生じることなくアイドル回転数制御弁に対する開度変化速度を補正することが可能となり、アイドル時における補機駆動によるエンジン負荷の急増直後のエンジン回転数の低下を防止することができ、これらによりアイドル回転数制御性を著しく向上することができる。
【０１４４】
請求項３記載の発明では、一定時間毎にスロットル弁下流の吸気管圧力の変化速度を算出し、現在の吸気管圧力変化速度と前回算出した吸気管圧力変化速度とが共にプラス値の加速状態にあるかを判断し、加速状態と判断されるとき、両吸気管圧力変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常運転時における吸気管圧力変化速度の分布率の近似データを上下反転して得たメンバーシップ関数によりそれぞれ算出して、両メンバーシップ関数値の大小関係を比較し、そして、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する吸気管圧力変化速度とに基づいて補正吸気管圧力変化速度を算出して、該補正吸気管圧力変化速度とスロットル弁の開弁に伴う吸気管圧力変動を判定するための判定値とを比較し、補正吸気管圧力変化速度が判定値以上のとき、非同期燃料噴射を実行させるので、定常運転時における吸気管圧力変化速度の分布率が高いほど吸気脈動による定常的な吸気管圧力変化によるものであり、定常運転時の吸気管圧力の分布率の近似データを上下反転して得たメンバーシップ関数は、逆に値が大きいほど定常的な吸気管圧力変化を含まないスロットル弁の開度増加による吸気管圧力変化の確率が高いことを表すことになり、現在の吸気管圧力変化速度と前回の吸気管圧力変化速度とが２回連続してプラス値のとき加速状態と推論し、この吸気管圧力変化速度は定常的な吸気脈動によるものではなくスロットル弁の開度増加によるものとして、このルールの適合具合を上記メンバーシップ関数によって検証し、現在と前回との各吸気管圧力変化速度に対するメンバーシップ関数値によるファジー量のうち、小さい方をルールの適合結果として採用するため、上記補正吸気管圧力変化速度は定常的な吸気脈動による変化分を取り除いたデータとなり、この定常的な吸気脈動による変化分を取り除いた補正吸気管圧力変化速度と判定値とを比較して非同期噴射の必要性を判断するため、上記判定値は吸気脈動を考慮することなく、その分小さい値に設定することができ、これによりスロットル弁が比較的緩やかに開かれる緩加速時においてもこれを検出することが可能となり、空燃比のリーン化、及びこれに伴う息付きを防止することができる。
【０１４５】
請求項４記載の発明では、一定時間毎に車速の変化速度を算出し、現在の車速変化速度と前回算出した車速変化速度とが共にプラス値の加速状態にあるか共にマイナス値の減速状態にあるかを判断し、加速状態と判断されるときには、両車速変化速度に対するメンバーシップ関数値を、記憶手段に記憶されている定常運転時における車速変化速度の分布率の近似データを上下反転して得た加速側のメンバーシップ関数によりそれぞれ算出し、また、減速状態と判断されるときには、両車速変化速度に対するメンバーシップ関数値を記憶手段に記憶されている減速側のメンバーシップ関数によりそれぞれ算出して、両メンバーシップ関数値の大小関係を比較し、そして、小さい方のメンバーシップ関数値と該メンバーシップ関数値に対応する車速変化速度とに基づいて車速変化量を算出し、この車速変化量を前回算出した補正車速に加算して現在の補正車速を算出し、現在の補正車速と最高車速に対応する燃料カット車速判定値とを比較し補正車速が燃料カット車速判定値以上のとき燃料カットを実行し、燃料カット中のときには、現在の補正車速と車速低下により燃料リカバを行うかを判断するための燃料リカバ車速判定値とを比較し補正車速が燃料リカバ車速判定値以下のとき燃料リカバさせるので、定常運転時における車速変化速度の分布率が高いほど車速センサを構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきであり、定常運転時の車速変化速度の分布率の近似データを上下反転して得たメンバーシップ関数は、逆に値が大きいほど真の車速変化である度合いが高いことを表すことになり、現在の車速変化速度と前回の車速変化速度とが２回連続してプラス値のとき加速状態と推論し、この車速変化は真の車速上昇によるものとして、このルールの適合具合を上記加速側のメンバーシップ関数によって検証し、現在と前回との各車速変化速度に対するメンバーシップ関数値によるファジー量のうち、小さい方をルールの適合結果として採用し、また、現在の車速変化速度と前回の車速変化速度とが２回連続してマイナス値のとき減速状態と推論し、この車速変化は真の車速低下によるものとし、このルールの適合具合を減速側のメンバーシップ関数によって検証し、同様に、現在と前回との各車速変化速度に対するメンバーシップ関数値によるファジー量のうち、小さい方をルールの適合結果として採用し、この適合結果に基づいて算出された車速変化量により算出され、且つ最高車速制限を行うか否かを判断する基となる上記補正車速は、車速センサを構成するリードスイッチのケーブルの捩じれ等に起因する車速検出のばらつきを取り除いた現在の真の車速を表すことになる。従って、車速センサを構成するリードスイッチのケーブルの捩じれにより生じる車速検出のばらつきを補償するために最高車速制限により燃料カットを開始する燃料カット車速判定値と該燃料カット車速判定値より低い値で燃料リカバを開始する燃料リカバ車速判定値とにヒステリシスを十分に取る必要がなく、これら燃料カット車速判定値と燃料リカバ車速判定値とのヒステリシスを狭めることが可能となり、高車速による燃料カット時の車速変化幅が大きくなることによる走行フィーリングの悪化を防止することができ、また、燃料リカバ時のトルク変化を縮小することが可能となって、ドライバビリティの悪化を防止することができる。
【図面の簡単な説明】
【図１】本発明の基本構成図
【図２】発明の実施の第１形態に係わり、エンジン回転数算出ルーチンのフローチャート
【図３】同上、ＩＳＣバルブ制御ルーチンのフローチャート
【図４】同上、ファジー推論サブルーチンのフローチャート
【図５】同上、回転数変化速度の分布、メンバーシップ関数、及びファジー推論の説明図
【図６】同上、エンジン制御系の概略構成図
【図７】同上、クランク角センサとシグナルロータの正面図
【図８】同上、電子制御系の回路構成図
【図９】同上、クランク角センサからの出力パルスのタイミングチャート
【図１０】本発明の実施の第２形態に係わり、吸気管圧力算出ルーチンのフローチャート
【図１１】同上、非同期燃料噴射量設定ルーチンのフローチャート
【図１２】同上、ファジー推論サブルーチンのフローチャート
【図１３】同上、スロットル開度変化と吸気管圧力変化との関係を示す説明図
【図１４】同上、メンバーシップ関数の説明図
【図１５】本発明の実施の第３形態に係わり、燃料カット制御ルーチンのフローチャート
【図１６】同上、ファジー推論サブルーチンのフローチャート
【図１７】同上、燃料噴射量設定ルーチンのフローチャート
【図１８】同上、燃料カット車速判定値と燃料リカバ車速判定値とのヒステリシスを示す説明図
【符号の説明】
１  エンジン
１０  アイドル回転数制御弁（ＩＳＣバルブ）
１２  吸気管圧力センサ
１３  インジェクタ
２５  クランク角センサ
３０  車速センサ
４０  電子制御装置
ＮEn，ＮEn-1  エンジン回転数（運転状態パラメータ）
ｄＮEn，ｄＮEn-1  エンジン回転数変化速度（運転状態パラメータ変化速度）
Ｆ（ｄＮEn），Ｆ（ｄＮEn-1）  エンジン回転数変化速度に対するメンバーシップ関数値
ＤＮ  補正エンジン回転数変化速度（補正運転状態パラメータ変化速度）
Ｋ２×ＤＮ  開度変化速度補正値
ＤＩＳＣn   デュ−ティ比（アイドル回転数制御弁に対する制御量）
Ｐn ，Ｐn-1   吸気管圧力（運転状態パラメータ）
ｄＰn ，ｄＰn-1   吸気管圧力変化速度（運転状態パラメータ変化速度）
Ｆ（ｄＰn ），Ｆ（ｄＰn-1 ）  吸気管圧力変化速度に対するメンバーシップ関数値
ＤＰ  補正吸気管圧力変化速度（補正運転状態パラメータ変化速度）
ｄＰS   判定値
ＴｉN   非同期噴射パルス幅（非同期燃料噴射量）
Ｖn ，Ｖn-1   車速（運転状態パラメータ）
ｄＶn ，ｄＶn-1   車速変化速度（運転状態パラメータ変化速度）
Ｆ（ｄＶn ），Ｆ（ｄＶn-1 ）  車速変化速度に対するメンバーシップ関数値
ＤＶ  補正車速変化速度（車速変化量）
ＶCORn，ＶCORn-1  補正車速
ＶS1  燃料カット車速判定値
ＶS2  燃料リカバ車速判定値
ＴＡＵ  燃料噴射パルス幅（燃料噴射量）
【図１】
0003756570.tif 000002
【図２】
0003756570.tif 000003
【図３】
0003756570.tif 000004
【図４】
0003756570.tif 000005
【図５】
0003756570.tif 000006
【図６】
0003756570.tif 000007
【図７】
0003756570.tif 000008
【図８】
0003756570.tif 000009
【図９】
0003756570.tif 000010
【図１０】
0003756570.tif 000011
【図１１】
0003756570.tif 000012
【図１２】
0003756570.tif 000013
【図１３】
0003756570.tif 000014
【図１４】
0003756570.tif 000015
【図１５】
0003756570.tif 000016
【図１６】
0003756570.tif 000017
【図１７】
0003756570.tif 000018
【図１８】
0003756570.tif 000019