JP4082096B2 - 内燃機関のトルク制御装置 - Google Patents
内燃機関のトルク制御装置 Download PDFInfo
- Publication number
- JP4082096B2 JP4082096B2 JP2002160626A JP2002160626A JP4082096B2 JP 4082096 B2 JP4082096 B2 JP 4082096B2 JP 2002160626 A JP2002160626 A JP 2002160626A JP 2002160626 A JP2002160626 A JP 2002160626A JP 4082096 B2 JP4082096 B2 JP 4082096B2
- Authority
- JP
- Japan
- Prior art keywords
- torque
- fuel injection
- cut
- sequential
- cylinder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/008—Controlling each cylinder individually
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D37/00—Non-electrical conjoint control of two or more functions of engines, not otherwise provided for
- F02D37/02—Non-electrical conjoint control of two or more functions of engines, not otherwise provided for one of the functions being ignition
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02P—IGNITION, OTHER THAN COMPRESSION IGNITION, FOR INTERNAL-COMBUSTION ENGINES; TESTING OF IGNITION TIMING IN COMPRESSION-IGNITION ENGINES
- F02P5/00—Advancing or retarding ignition; Control therefor
- F02P5/04—Advancing or retarding ignition; Control therefor automatically, as a function of the working conditions of the engine or vehicle or of the atmospheric conditions
- F02P5/145—Advancing or retarding ignition; Control therefor automatically, as a function of the working conditions of the engine or vehicle or of the atmospheric conditions using electrical means
- F02P5/15—Digital data processing
- F02P5/1502—Digital data processing using one central computing unit
- F02P5/1506—Digital data processing using one central computing unit with particular means during starting
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D2200/00—Input parameters for engine control
- F02D2200/02—Input parameters for engine control the parameters being related to the engine
- F02D2200/10—Parameters related to the engine output, e.g. engine torque or engine speed
- F02D2200/1002—Output torque
- F02D2200/1004—Estimation of the output torque
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D2250/00—Engine control related to specific problems or objectives
- F02D2250/12—Timing of calculation, i.e. specific timing aspects when calculation or updating of engine parameter is performed
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/009—Electrical control of supply of combustible mixture or its constituents using means for generating position or synchronisation signals
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/02—Circuit arrangements for generating control signals
- F02D41/04—Introducing corrections for particular operating conditions
- F02D41/12—Introducing corrections for particular operating conditions for deceleration
- F02D41/123—Introducing corrections for particular operating conditions for deceleration the fuel injection being cut-off
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Electrical Control Of Ignition Timing (AREA)
- Output Control And Ontrol Of Special Type Engine (AREA)
Description
【発明の属する技術分野】
本発明は、内燃機関の指示トルクに基づいて燃料噴射量(例えば燃料カットの有無)や点火時期を制御する内燃機関のトルク制御装置に関するものである。
【0002】
【従来の技術】
近年の自動車においては、例えば特許第3211512号公報に示すように、駆動輪の空転(スリップ)を防止するトラクション制御等を行う際に、エンジンの出力トルクが指示トルクになるように各気筒の燃料噴射量(例えば燃料カットの有無)や点火時期を制御する「トルク制御」を行うようにしたものがある。
【0003】
【発明が解決しようとする課題】
今日の最も一般的な内燃機関である吸気ポート噴射式のエンジンでは、燃料噴射弁から噴射した燃料を吸気行程終了までに筒内に吸入させるために、図3に示すように、遅くとも吸気行程前半までに燃料噴射を終了し(通常はバルブオーバーラップ期間での吹き抜けを防止するために排気行程以前に燃料噴射を終了し)、圧縮行程で点火プラグの通電を開始して圧縮上死点付近で点火することで混合気を燃焼(爆発)させるようにしている。このため、燃料噴射開始から点火プラグ通電開始までには、例えば360〜720°CA程度の遅れが生じる。
【0004】
従って、指示トルクの変化に対して応答性の良いトルク制御を行うためには、燃料噴射量算出タイミングと点火時期算出タイミングを、それぞれ燃料噴射開始時期と点火プラグ通電開始時期の直前に設定し、図4(a)に示すように、燃料噴射量算出タイミングで、その時点の最新の指示トルクに基づいて燃料噴射量を算出し、その後(例えば360〜720°CA経過後)の点火時期算出タイミングで、その時点の最新の指示トルクに基づいて点火時期を算出することが考えられる。
【0005】
しかし、このトルク制御方法では、図4(a)に示すように、指示トルクが変化していると、燃料噴射量算出に用いる指示トルク値と点火時期算出に用いる指示トルク値とが異なってくるため、その変化量が大きいと、以下に説明する例のように指示トルクに対する出力トルクの変動が大きくなって不安定なトルク制御になってしまうおそれがある。
【0006】
例えば、図4(a)に実線で示すように、ある気筒において燃料噴射量算出タイミングでの指示トルクでは燃料カットが不要であったが、その後の点火時期算出タイミングでは指示トルクが低下していて、点火遅角では実現できないほど低い指示トルクになっていると、この気筒の爆発行程で得られるトルクは点火時期算出タイミングにおける指示トルクより大きくなってしまう。また、図4(a)に二点鎖線で示すように、燃料カット中の気筒において燃料噴射量算出タイミングでの指示トルクでは燃料復帰(燃料噴射の再開)が不要であったが、その後の点火時期算出タイミングでは指示トルクが上昇していて、指示トルク実現のために燃料復帰が必要になっていても、既に手遅れとなって燃料復帰が行えず、この気筒の爆発行程で得られるトルクが点火時期算出タイミングにおける指示トルクより小さくなってしまう。
【0007】
また、内燃機関の燃料カットや燃料復帰(燃料噴射の再開)の際のトルクショックを低減するために、内燃機関の燃料カット気筒数を増加させる際に各気筒の通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で燃料噴射をカットしていくシーケンシャルカットや、内燃機関の燃料カット気筒数を減少させる際に各気筒の通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で燃料噴射を再開していくシーケンシャル復帰を行うようにしたものがある。
【0008】
従来、このようなシーケンシャルカット(又はシーケンシャル復帰)を行う場合に、初回の燃料カット気筒(又は燃料復帰気筒)に応じてマップ等により以降の燃料カット気筒(又は燃料復帰気筒)を設定したり、或は、クランク角を積算して次の燃料カット気筒(又は燃料復帰気筒)を判定したりするようにしたものがある。しかし、このような制御方法では、指示トルクに応じて燃料カット気筒(又は燃料復帰気筒)を制御しているわけではないため、指示トルクを精度良く反映したシーケンシャルカット(又はシーケンシャル復帰)を行うことができない。
【0009】
本発明はこれらの事情を考慮してなされたものであり、第1の目的は、燃料噴射量の算出から遅れたタイミングで点火時期を算出する場合でも、安定したトルク制御を行うことができるようにすることであり、また、第2の目的は、指示トルクを精度良く反映したシーケンシャルカット又はシーケンシャル復帰を行うことができるようにすることである。
【0010】
【課題を解決するための手段】
上記第1の目的を達成するために、本発明の請求項1の内燃機関のトルク制御装置は、所定の指示トルク算出タイミング毎に指示トルクを指示トルク算出手段で算出して、所定の燃料噴射量算出タイミング毎に指示トルクに基づいて燃料噴射量を燃料噴射量算出手段で算出し、その燃料噴射量算出タイミングよりも遅れた所定の点火時期算出タイミング毎に指示トルクに基づいて点火時期を点火時期算出手段で算出する。そして、トルク制御の安定性を優先するスタビリティモード運転中(具体的には内燃機関の燃料カット気筒数を増加させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射をカットしていくシーケンシャルカットの運転中、または、内燃機関の燃料カット気筒数を減少させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射を再開していくシーケンシャル復帰の運転中)に点火時期を算出する際には、その点火時期算出タイミングにおける指示トルクよりも前に算出された過去の指示トルクに基づいて点火時期を算出するようにしたものである。
【0011】
燃料噴射量算出タイミングよりも遅れた点火時期算出タイミングで点火時期を算出する際に、過去の指示トルクを用いれば、燃料噴射量算出に用いる指示トルクと点火時期算出に用いる指示トルクとの偏差を小さくすることができるため、指示トルクに対する出力トルクの変動を小さくすることができ、トルク制御の安定性を向上させることができる。従って、トルク制御の安定性を優先するスタビリティモード運転中に、過去の指示トルクに基づいて点火時期を算出するようにすれば、燃料噴射量算出タイミングよりも遅れた点火時期算出タイミングで点火時期を算出する場合でも、安定したトルク制御を実現することができる。
【0012】
この場合、請求項2のように、スタビリティモード運転中に点火時期を算出する際に、過去の指示トルクとして直前の燃料噴射量算出タイミングにおける指示トルクを用いるようにすると良い。このようにすれば、同じ指示トルク(燃料噴射量算出タイミングにおける指示トルク)に基づいて燃料噴射量と点火時期を算出することができるので、より安定したトルク制御を実現することができる。
【0013】
ところで、過去の指示トルクに基づいて点火時期を算出すると、トルク制御の応答性が低下するおそれがある。この対策として、スタビリティモード運転中に将来回転速度予測手段で予測した将来回転速度に基づいて指示トルクを算出するようにしても良い。このようにすれば、内燃機関の将来の回転速度の挙動を考慮に入れた指示トルクを算出することができるので、過去の指示トルクに基づいて点火時期を算出する場合でも、トルク制御の応答性を向上することができる。
【0014】
この場合、将来回転速度は、内燃機関の軸トルクを積分して求めることができるが、積分を用いると、制御装置の演算負荷が大きくなる。
【0015】
そこで、内燃機関の回転速度を回転速度検出手段で検出すると共に、内燃機関の吸入空気量に基づいて軸トルクを軸トルク算出手段で算出し、回転速度検出手段で検出した回転速度と、軸トルク算出手段で算出した軸トルクとに基づいて将来回転速度を算出するようにしても良い。軸トルクの挙動によって回転速度のその後の挙動が決まってくるため、回転速度検出手段で検出した回転速度と軸トルクとを用いれば、最新の回転速度を基にして将来回転速度を精度良く算出することができると共に、積分が不要になり、制御装置の演算負荷を小さくすることができる。
【0016】
また、請求項3のように、トルク制御の応答性を優先するレスポンスモード運転中(具体的には各気筒の通常の燃料噴射順序で燃料噴射をカットして全気筒の燃料噴射をカットする全気筒カットの運転中、または、各気筒の通常の燃料噴射順序で燃料噴射を再開して全気筒の燃料噴射を再開する全気筒復帰の運転中)に点火時期を算出する際には、その点火時期算出タイミングにおける指示トルクに基づいて点火時期を算出するようにすると良い。このようにすれば、トルク制御の応答性を優先するレスポンスモードでは、点火時期を算出する際に、最新の指示トルクに基づいて点火時期を算出することができ、応答性の良いトルク制御を行うことができる。
【0017】
ここで、レスポンスモードとスタビリティモードとを切り換える際に、それに伴って点火時期算出に用いる指示トルクを、最新の指示トルクと過去の指示トルクとの間で瞬時に切り換えると、その変化量が大きい場合には、点火時期算出に用いる指示トルクが急変するため、出力トルクが急変してドライバビリティに悪影響を及ぼす可能性がある。
【0018】
この対策として、請求項4のように、レスポンスモードとスタビリティモードとを切り換える際に、点火時期算出に用いる指示トルクを指示トルク徐変手段により徐々に変化させるようにしても良い。このようにすれば、レスポンスモードとスタビリティモードとを切り換える際に、点火時期算出に用いる指示トルクが急変することを防止することができ、出力トルクの急変を防止してドライバビリティの悪化を防止することができる。
【0019】
また、各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射をカット又は再開していくシーケンシャルカット又はシーケンシャル復帰を行う場合には、請求項5、6のように、シーケンシャル制御手段によって、全気筒で燃料噴射した場合の出力トルクに対する指示トルクの割合であるトルク発生率を所定周期で所定変化量ずつ変化させ、そのトルク発生率に応じて燃料カット気筒数を変化させることでシーケンシャルカット又はシーケンシャル復帰を実行するようにすると良い。
【0020】
トルク発生率は、直接、燃料カット気筒数と対応させることができる。例えば、全気筒数が5気筒の内燃機関では、トルク発生率が0.8(=4/5)の場合は1気筒だけ燃料カットすれば良い。この点に着目して、トルク発生率を所定周期で所定変化量ずつ減少(又は増加)させれば、シーケンシャルカット(又はシーケンシャル復帰)となるような割合でトルク発生率を減少(又は増加)させることができ、このように変化させたトルク発生率に応じて燃料カット気筒数を増加(又は減少)させれば、シーケンシャルカット(又はシーケンシャル復帰)を行うことができる。これにより、指示トルク(トルク発生率)を精度良く反映したシーケンシャルカットやシーケンシャル復帰を実現することができる。
【0021】
この場合、全気筒数がY気筒(但しYは3以上の整数)の内燃機関で各気筒の通常の燃料噴射順序に対してnサイクル(但しnは0以上の整数)おきにX気筒(但しXは1以上の整数)ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行する場合には、トルク発生率を変化させる際の所定周期を内燃機関の通常の点火間隔(=720℃A/Y)に設定し、所定変化量を(1/Y)/(X+1+n×Y)に設定すると良い。
【0022】
例えば、全気筒数が5気筒の内燃機関で各気筒の通常の燃料噴射順序に対して0サイクルおきに(1サイクル毎に)1気筒ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行する場合には、Y=5、n=0、X=1を(1/Y)/(X+1+n×Y)に代入して、所定変化量を1/5/(1+1+0×5)=0.1に設定する。この場合、1点火毎にトルク発生率を0.1ずつ減少又は増加させることができるので、2点火毎に(つまり、通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で)、トルク発生率を0.2(つまり、5気筒の内燃機関の1気筒分の燃料カット又は燃料復帰に相当するトルク発生率)ずつ減少又は増加させることができる。これにより、5気筒の内燃機関で各気筒の通常の燃料噴射順序に対して1気筒ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行することができる。
【0023】
ところで、シーケンシャルカット又はシーケンシャル復帰となるようにトルク発生率を定率で(所定周期で所定変化量づつ)変化させても、燃料噴射量算出タイミング(つまり、トルク発生率に応じて燃料カット又は燃料復帰を決定するタイミング)が変化すると、燃料噴射量算出タイミング毎に受信するトルク発生率の変化が定率でなくなる場合があるため、燃料カット順序や燃料復帰順序が乱れてしまうおそれがある。また、燃料噴射時期が固定されていないと、事前に燃料カット又は燃料復帰が間に合うか否かを判定するのが困難になり、次に燃料カット又は燃料復帰する気筒を特定しにくくなる。
【0024】
この対策として、請求項7のように、シーケンシャルカット及び/又はシーケンシャル復帰の実行中に燃料噴射量算出タイミングと燃料噴射時期を固定するようにしても良い。燃料噴射量算出タイミングを固定すれば、燃料噴射量算出タイミング毎に受信するトルク発生率の変化を定率にすることができるので、燃料カット順序や燃料復帰順序の乱れを防止することができ、所定通りの順序でシーケンシャルカットやシーケンシャル復帰を実行することができる。また、燃料噴射時期を固定すれば、事前に燃料カット又は燃料復帰が間に合う気筒を容易に判定することができ、次に燃料カット又は燃料復帰する気筒を容易に特定することができる。
【0025】
【発明の実施の形態】
以下、本発明の一実施形態を図面に基づいて説明する。まず、図1に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関である例えば5気筒のエンジン11は、第1気筒(#1)〜第5気筒(#5)の5つの気筒を有し、このエンジン11の吸気管12の最上流部には、エアクリーナ13が設けられ、このエアクリーナ13の下流側に、吸入空気量を検出するエアフローメータ14が設けられている。このエアフローメータ14の下流側には、スロットルバルブ15が設けられ、このスロットルバルブ15の開度(スロットル開度)がスロットル開度センサ16によって検出される。
【0026】
また、スロットルバルブ15の下流側には、サージタンク17が設けられ、このサージタンク17に、吸気管圧力を検出する吸気管圧力センサ18が設けられている。また、サージタンク17には、エンジン11の各気筒に空気を導入する吸気マニホールド19が設けられ、各気筒の吸気マニホールド19の吸気ポート近傍に、それぞれ燃料を噴射する燃料噴射弁20が取り付けられている。
【0027】
エンジン11のシリンダヘッドには、各気筒毎に点火プラグ21が取り付けられ、各点火プラグ21の火花放電によって筒内の混合気に着火される。更に、エンジン11のシリンダブロックには、冷却水温を検出する冷却水温センサ22や、エンジン回転速度を検出するクランク角センサ23(回転速度検出手段)が取り付けられている。
【0028】
一方、エンジン11の排気管24には、排出ガス中のCO,HC,NOx等を浄化する三元触媒等の触媒25が設けられ、この触媒25の上流側に、排出ガスの空燃比又はリーン/リッチ等を検出する排出ガスセンサ26(空燃比センサ、酸素センサ等)が設けられている。
【0029】
前述した各種センサの出力は、エンジン制御回路(以下「ECU」と表記する)27に入力される。このECU27は、マイクロコンピュータを主体として構成され、内蔵されたROM(記憶媒体)に記憶された各種のエンジン制御プログラムを実行することで、エンジン運転状態に応じて燃料噴射弁20の燃料噴射量や点火プラグ21の点火時期を制御する。
【0030】
また、ECU27は、駆動輪の空転(スリップ)を防止するトラクション制御や減速時燃料カット等を行う際に、後述する図12乃至図25のトルク制御用の各プログラムを実行することで、エンジン11の出力トルクが指示トルクになるように、各気筒の燃料カットや燃料復帰(燃料噴射の再開)を制御すると共に、各気筒の点火時期を制御する「トルク制御」を行う。
【0031】
以下、ECU27が実行するトルク制御の概要を説明する。
ECU27は、トルク制御を行う際には、運転条件に基づいてシーケンシャルカットモード、シーケンシャル復帰モード、全気筒カットモード、全気筒復帰モードの中から1つのモードを選択する。
【0032】
図2に示すように、シーケンシャルカットモードでは、エンジン11の燃料カット気筒数を増加させる際に各気筒の通常の燃料噴射順序(#1→#2→#4→#5→#3)に対して所定気筒数(例えば1気筒)ずつ飛ばした順序(図2では#3→#2→#5→#1→#4)で燃料噴射をカットしていくシーケンシャルカットを実行する。また、シーケンシャル復帰モードでは、エンジン11の燃料カット気筒数を減少させる際に各気筒の通常の燃料噴射順序に対して所定気筒数(例えば1気筒)ずつ飛ばした順序(図2では#5→#1→#4→#3→#2)で燃料噴射を再開していくシーケンシャル復帰を実行する。本実施形態では、このシーケンシャルカットモードとシーケンシャル復帰モードを、トルク制御の安定性を優先するスタビリティモードとする。
【0033】
一方、全気筒カットモードでは、各気筒の通常の燃料噴射順序で燃料噴射をカットして全気筒の燃料噴射をカットする全気筒カットを実行する。また、全気筒復帰モードでは、各気筒の通常の燃料噴射順序で燃料噴射を再開して全気筒の燃料噴射を再開する全気筒復帰を実行する。本実施形態では、この全気筒カットモードと全気筒復帰モードを、トルク制御の応答性を優先するレスポンスモードとする。
【0034】
図3に示すように、一般に、燃料噴射開始から点火プラグ通電開始までには、例えば360〜720°CAの遅れがある。従って、ECU27は、レスポンスモード(全気筒カットモードと全気筒復帰モード)運転中に、指示トルクの変化に対して応答性の良いトルク制御を行うために、燃料噴射量算出タイミングと点火時期算出タイミングを、それぞれ燃料噴射開始時期と点火プラグ通電開始時期の直前に設定し、図4(a)に示すように、燃料噴射量算出タイミングで、その時点の最新の指示トルクに基づいて燃料噴射量を算出し、その後の点火時期算出タイミングで、その時点の最新の指示トルクに基づいて点火時期を算出する。
【0035】
しかし、このレスポンスモード運転中のトルク制御方法では、図4(a)に示すように、指示トルクが変化していると、燃料噴射量算出に用いる指示トルク値と点火時期算出に用いる指示トルク値とが異なってくるため、その変化量が大きいと、指示トルクに対する出力トルクの変動が大きくなって不安定なトルク制御になるおそれがある。従って、スタビリティモード(シーケンシャルカットモードとシーケンシャル復帰モード)運転中に、レスポンスモードと同じように、燃料噴射量の算出時と点火時期の算出時に、それぞれ最新の指示トルクを用いるようにすると、トルク制御の安定性を優先するスタビリティモードであるにも拘らず、不安定なトルク制御になってしまうおそれがある。
【0036】
そこで、ECU27は、スタビリティモード運転中には、図4(b)に示すように、燃料噴射量算出タイミングで、その時点の最新の指示トルクに基づいて燃料噴射量を算出し、その後の点火時期算出タイミングでは、その点火時期算出タイミングにおける指示トルクよりも前に算出された過去の指示トルク(例えば、直前の燃料噴射量算出タイミングにおける指示トルク)に基づいて点火時期を算出する。これにより、燃料噴射量算出に用いる指示トルクと点火時期算出に用いる指示トルクとの偏差を小さく(又は0に)して、指示トルクに対する出力トルクの変動を小さくし、トルク制御の安定性を向上させる。
【0037】
ところで、上述したように、スタビリティモード運転中は、過去の指示トルクに基づいて点火時期を算出するため、トルク制御の応答性が低下するおそれがある。この対策として、ECU27は、スタビリティモード運転中に、エンジン11の将来の回転速度を予測し、その将来回転速度に基づいて指示トルクを算出することで、過去の指示トルクに基づいて点火時期を算出する場合でも、トルク制御の応答性を向上させる。
【0038】
将来回転速度は、次のようにして求める。図5に示すように、所定周期(例えば360℃A周期)でクランク角センサ23によりエンジン回転速度Neを検出すると共に、気筒別推定軸トルクTを算出する。この気筒別推定軸トルクTの算出方法は、エアフローメータ14で検出した実吸入空気量に基づいて推定軸トルクT0 を算出し、この推定軸トルクT0 に点火時期効率と燃料噴射の有無(1又は0)とを乗算して気筒別推定軸トルクTを求める。
T=T0 ×点火時期効率×燃料噴射の有無(1又は0)
【0039】
スタビリティモード(シーケンシャルカットモードとシーケンシャル復帰モード)は、エンジン11に連結されている駆動伝達系(ギアやクラッチ)の状態が安定しているとき(例えば減速時燃料カット運転)で選択されるため、気筒別推定軸トルクTの挙動によってその後の回転速度Neの挙動がほぼ決まってくる。このため、気筒別推定軸トルクTの変動量と回転速度Neの変動量との関係を次式のように表すことができる。
【0040】
ここで、Ne(i-1) は1回前(例えば360℃A前)の回転速度、Ne(i) は今回の回転速度、ENeは次回(例えば360℃A後)の将来回転速度であり、T(i-2) は2回前(例えば720℃A前)の気筒別推定軸トルク、T(i-1) は1回前(例えば360℃A前)の気筒別推定軸トルク、T(i) は今回の気筒別推定軸トルクである。
【0041】
上式を将来回転速度ENeについて解くことで、次の(1)式を得ることができる。
【0042】
ECU27は、上記(1)式によりエンジン回転速度Neと気筒別推定軸トルクTを用いて将来回転速度ENeを算出し、スタビリティモード運転中に、その将来回転速度ENeに基づいて指示トルクを算出する。
【0043】
また、上述したように、レスポンスモードでは、最新の指示トルクに基づいて点火時期を算出するが、スタビリティモードでは、過去の指示トルクに基づいて点火時期を算出する。このため、図6に示すように、レスポンスモードとスタビリティモードとを切り換える際に、それに伴って点火時期算出に用いる指示トルクを、最新の指示トルクと過去の指示トルク(例えば3点火前の指示トルク)との間で瞬時に切り換えると、その変化量が大きい場合には、点火時期算出に用いる指示トルクが急変するため、出力トルクが急変してドライバビリティに悪影響を及ぼす可能性がある。
【0044】
この対策として、ECU27は、図7に示すように、レスポンスモードとスタビリティモードとを切り換える際に、点火時期算出に用いる指示トルクを徐々に変化させるスムージング処理を実行することで、点火時期算出に用いる指示トルクの急変を防止して、出力トルクの急変を防止する。
【0045】
以下、レスポンスモードでは、最新の指示トルクRT(i) に基づいて点火時期を算出し、スタビリティモードでは、そのn点火前(例えば3点火前)の指示トルクRT(i-n) に基づいて点火時期を算出する場合について説明する。
【0046】
図7に示すように、レスポンスモードでは、スムージングカウンタのカウンタ値Sを最大値Smax (例えば4)に維持し、レスポンスモードからスタビリティモードに切り換える際には、通常の点火間隔毎にスムージングカウンタのカウンタ値Sを「1」ずつデクリメントして、最大値Smax から0まで減少させる。一方、スタビリティモードでは、スムージングカウンタのカウンタ値Sを0に維持し、スタビリティモードからレスポンスモードに切り換える際には、通常の点火間隔毎にスムージングカウンタのカウンタ値Sを「1」ずつインクリメントして、0から最大値Smax まで増加させる。
【0047】
そして、点火時期算出に用いる指示トルク rRTを次式により算出する。
rRT=RT(i-n) +{RT(i) −RT(i-n) }×S/Smax ……(2)
レスポンスモードでは、スムージングカウンタのカウンタ値Sを最大値Smax に維持するため、上記(2)式により、点火時期算出に用いる指示トルク rRTが最新の指示トルクRT(i) に維持される。
【0048】
また、レスポンスモードからスタビリティモードに切り換える際には、スムージングカウンタのカウンタ値Sを最大値Smax から0まで「1」ずつデクリメントするため、上記(2)式により、点火時期算出に用いる指示トルク rRTが、最新の指示トルクRT(i) からn点火前の指示トルクRT(i-n) まで徐々に変化する。
【0049】
一方、スタビリティモードでは、スムージングカウンタのカウンタ値Sを0に維持するため、上記(2)式により、点火時期算出に用いる指示トルク rRTがn点火前の指示トルクRT(i-n) に維持される。
【0050】
また、スタビリティモードからレスポンスモードに切り換える際には、スムージングカウンタのカウンタ値Sを0から最大値Smax まで「1」ずつインクリメントするため、上記(2)式により、点火時期算出に用いる指示トルク rRTがn点火前の指示トルクRT(i-n) から最新の指示トルクRT(i) まで徐々に変化する。
【0051】
尚、上記(2)式は必ずしも全モードで用いる必要はなく、レスポンスモードからスタビリティモードに切り換える際と、スタビリティモードからレスポンスモードに切り換える際のうちの少なくとも一方で用いるようにしても良い。
【0052】
次に、各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射をカット又は再開していくシーケンシャルカット又はシーケンシャル復帰について説明する。
【0053】
指示トルクそのものではなく、トルク発生率(全気筒で燃料噴射した場合の出力トルクに対する指示トルクの割合)であれば、直接、燃料カット気筒数と対応させることができる。例えば、全気筒数が5気筒のエンジン11では、トルク発生率が0.8(=4/5)の場合は1気筒だけ燃料カットすれば良い。
【0054】
そこで、ECU27は、トルク発生率を定率で(所定周期で所定変化量ずつ)減少又は増加させ、そのトルク発生率に応じて燃料カット気筒数を増加又は減少させることで、指示トルク(トルク発生率)を精度良く反映したシーケンシャルカット又はシーケンシャル復帰を実現する。
【0055】
トルク発生率を定率で変化させる際の所定周期と所定変化量(以下「トルク発生率変化量」という)は、次のようにして設定する。全気筒数がY気筒(但しYは3以上の整数)のエンジン11で各気筒の通常の燃料噴射順序に対してnサイクル(但しnは0以上の整数)おきにX気筒(但しXは1以上の整数)ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行する場合には、トルク発生率を変化させる際の所定周期を、エンジン11の通常の点火間隔(=720℃A/Y)に設定し、トルク発生率変化量ΔTCRを次の(3)式により設定する。
ΔTCR=(1/Y)/(X+1+n×Y)……(3)
【0056】
従って、シーケンシャルカットモードでは、通常の点火間隔毎にトルク発生率TCRate を次式によりトルク発生率変化量ΔTCR=(1/Y)/(X+1+n×Y)ずつ減少させる。
TCRate(i)=TCRate(i-1)−(1/Y)/(X+1+n×Y)
【0057】
一方、シーケンシャル復帰モードでは、通常の点火間隔毎にトルク発生率TCRate を次式によりトルク発生率変化量ΔTCR=(1/Y)/(X+1+n×Y)ずつ増加させる。
TCRate(i)=TCRate(i-1)+(1/Y)/(X+1+n×Y)
【0058】
以下、全気筒数が5気筒のエンジン11の場合について説明する。
5気筒のエンジン11では、燃料カット気筒数が1気筒だけ増加する毎に出力トルクが20%ずつ減少するので、図8(a)に示すように、シーケンシャルカットモードでは、トルク発生率TCRate の判定値が0.2間隔(例えば、0.8→0.6→0.4→0.2→0)で設定され、トルク発生率TCRate が0.2だけ減少する毎に燃料カット気筒数が1気筒ずつ増加するようにしている。
【0059】
また、5気筒のエンジン11では、燃料復帰気筒数(5−燃料カット気筒数)が1気筒だけ増加する毎に出力トルクが20%ずつ増加するので、図8(b)に示すように、シーケンシャル復帰モードでは、トルク発生率TCRate の判定値が0.2間隔(例えば、0→0.2→0.4→0.6→0.8)で設定され、トルク発生率TCRate が0.2だけ増加する毎に燃料復帰気筒数が1気筒ずつ増加するようにしている。
【0060】
尚、各モードのトルク発生率TCRate の判定値は適合要素であり、例えば、0<TCRate ≦0.2のときには、点火遅角でトルク調整する際に、その調整範囲を越えて失火してしまう場合や排気温度上昇の懸念があるので、シーケンシャルカットモードでは、TCRate ≦0.1の範囲で燃料カット気筒数を5とするようにしても良い。
【0061】
全気筒数が5気筒のエンジン11で各気筒の通常の燃料噴射順序に対して0サイクルおきに(つまり1サイクル毎に)、1気筒ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行する場合には、上記(3)式にY=5、n=0、X=1を代入して、トルク発生率変化量ΔTCRを求める。
ΔTCR=1/5/(1+1+0×5)=0.1
【0062】
このようにトルク発生率変化量ΔTCRを設定すれば、図9に示すように、1点火毎にトルク発生率TCRate を0.1ずつ減少又は増加させることができるので、2点火毎に(つまり、通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で)、トルク発生率を0.2(つまり、5気筒のエンジン11の1気筒分の燃料カット又は燃料復帰に相当するトルク発生率)ずつ減少又は増加させることができる。これにより、5気筒のエンジン11で各気筒の通常の燃料噴射順序に対して1気筒ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行することができる。
【0063】
ところで、トルク発生率変化量ΔTCRを上記(3)式により算出する場合には、全気筒数が3気筒や6気筒のときのように、トルク発生率変化量ΔTCRの算出結果が無限小数になることもある。例えば、全気筒数が6気筒のエンジン11で各気筒の通常の燃料噴射順序に対して0サイクルおきに(つまり、1サイクル毎に)1気筒ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行する場合には、上記(3)式にY=6、n=0、X=1を代入して、トルク発生率変化量ΔTCRを算出すると、トルク発生率変化量ΔTCRが次のように無限小数になる。
ΔTCR=1/6/(1+1+0×6)=0.08333・・・・
【0064】
そこで、図10(a)に示すように、まず、トルク発生率TCRate の判定値の小数点以下の桁数を制御上、問題のないように設定し、次に、トルク発生率変化量ΔTCRの小数点以下の桁数が判定値と同じになるように、切り捨て方式でトルク発生率変化量ΔTCRを例えば0.0833に設定する。しかし、切り捨て方式でトルク発生率変化量ΔTCRを設定すると、シーケンシャルカットを行うために、トルク発生率TCRate をトルク発生率変化量ΔTCR(例えば0.0833)ずつ減少させたときに、トルク発生率TCRate の減少量が不足して、燃料カット気筒数を増加させるタイミングがずれてしまう。
【0065】
そこで、図10(b)に示すように、トルク発生率変化量ΔTCRの小数点以下の桁数が判定値と同じになるように、切り上げ方式でトルク発生率変化量ΔTCRを例えば0.0834に設定することが必要になる。このように切り上げ方式でトルク発生率変化量ΔTCRを設定すると、シーケンシャルカットを行うために、トルク発生率TCRate をトルク発生率変化量ΔTCR(例えば0.0834)ずつ減少させたときに、トルク発生率TCRate の最小値がマイナス値になる。そこで、トルク発生率TCRate がマイナス値になるのを防止するために、トルク発生率TCRate の最小値を0でガード処理することが考えられる。
【0066】
しかし、トルク発生率TCRate の最小値を0でガード処理すると、その後、シーケンシャル復帰を行うために、そのガード処理された最小値(0)からトルク発生率TCRate をトルク発生率変化量ΔTCR(例えば0.0834)ずつ増加させたときに、燃料復帰気筒数を増加させるタイミングがずれてしまう可能性がある。また、このようにトルク発生率TCRate がガード処理された場合と、ガード処理されなかった場合(運転条件の変化等によりトルク発生率TCRate が最小値まで減少する前に、増加に移った場合)とで、トルク発生率が異なる値になってしまうという問題もある。
【0067】
この対策として、図10(c)に示すように、燃料カット気筒数や燃料復帰気筒数の判定に用いるトルク発生率TCRate は、ガード処理を行わず、マイナス値になってもそのまま使用し、トルク制御値に変換する段階で0として扱うようにすると良い。このようにすれば、燃料カット気筒数や燃料復帰気筒数を増加させるタイミングがずれることなく、シーケンシャルカットやシーケンシャル復帰を行うことができる。また、トルク発生率TCRate の判定値の桁数よりトルク発生率変化量ΔTCRの桁数を多くすることで積算時の精度悪化も防止することができる。
【0068】
ところで、シーケンシャルカット又はシーケンシャル復帰となるようにトルク発生率TCRate を定率で(所定周期で所定変化量づつ)変化させても、燃料噴射量算出タイミング(つまり、トルク発生率TCRate に応じて燃料カットや燃料復帰を決定するタイミング)が変化すると、燃料噴射量算出タイミング毎に受信するトルク発生率TCRate の変化が定率でなくなる場合があるため、燃料カット順序や燃料復帰順序が乱れてしまうおそれがある。また、燃料噴射時期が固定されていないと、事前に燃料カット又は燃料復帰が間に合うか否かを判定するのが困難になり、次に燃料カット又は燃料復帰する気筒を特定しにくくなる。
【0069】
この対策として、ECU27は、スタビリティモード(シーケンシャルカットモードとシーケンシャル復帰モード)では、燃料噴射量算出タイミングと燃料噴射時期を固定する。例えば、図11(a)に示すように、シーケンシャルカット時は、点火時期算出タイミングの2点火前に燃料噴射量算出タイミングを固定し、シーケンシャル復帰時は、点火時期算出タイミングの3点火前に燃料噴射量算出タイミングを固定する。燃料噴射時期は、それぞれの燃料噴射量算出タイミングの直後に固定される。
【0070】
この場合、エンジン回転速度やエンジン温度、負荷等のエンジン運転状態によって要求燃料噴射量が変わるので、燃料噴射量算出タイミングと燃料噴射時期は、ある程度余裕を持って噴射できるタイミングにするべきである。ポイントは、一旦、スタビリティモードに入ったら、そのスタビリティモード運転中に、燃料噴射量算出タイミングと燃料噴射時期を変えなくて済むように固定することであり、スタビリティモードに入った直後の最初の燃料噴射量算出タイミングと燃料噴射時期は、以後のエンジン運転状態変化を想定して設定するようにしても良い。以後のエンジン運転状態変化を想定してと言ってもスタビリティモードを継続すべき運転状態を考えれば良いので、アクセルを踏んだり、急激な回転速度降下がある場合は、スムージング処理もバイパスしてレスポンスモードに切り換えるべきなので、これらの場合は考えなくて良い。
【0071】
以上説明したECU27によるトルク制御は、図12乃至図25に示すトルク制御用のプログラムに従って実行される。以下、これら各プログラムの処理内容を説明する。
【0072】
[将来回転速度算出]
図12に示す将来回転速度算出プログラムは、所定周期(例えば360℃A周期)で実行される。本プログラムが起動されると、まず、ステップ101で、クランク角センサ23で検出したエンジン回転速度Neを読み込む。
【0073】
この後、ステップ102に進み、エアフローメータ14で検出した吸入空気量に基づいて推定軸トルクT0 を算出し、この推定軸トルクT0 に点火時期効率と燃料噴射の有無(1又は0)とを乗算して気筒別推定軸トルクTを求める。このステップ102の処理が特許請求の範囲でいう軸トルク算出手段としての役割を果たす。
【0074】
この後、ステップ103に進み、将来回転速度ENeを次式により算出する。
このステップ103の処理が特許請求の範囲でいう将来回転速度予測出手段としての役割を果たす。
【0075】
[トルク発生率算出]
図13に示すトルク発生率算出プログラムは、通常の点火間隔毎(例えば5気筒エンジンの場合は144℃A毎)に実行される。本プログラムが起動されると、まず、ステップ201で、トルクカットモードTCMode が「1」にセットされているか否かを判定する。
【0076】
このトルクカットモードTCMode は、トルクカットモード判定プログラム(図示せず)によって、「1」、「2」、「3」、「0」のうちのいずれかにセットされる。トルクカットモードTCMode =1はシーケンシャルカットモードを意味し、トルクカットモードTCMode =2は全気筒カットモードを意味する。また、トルクカットモードTCMode =3はシーケンシャル復帰モードを意味し、トルクカットモードTCMode =0は全気筒復帰モードを意味する。
【0077】
例えば、アイドリング状態であること、ギアがニュートラルでないこと、エンジン回転速度Neが所定回転速度よりも高いこと等の減速時燃料カット・復帰条件が全て成立したときには、トルク制御の安定性を優先すべき状態であると判断して、トルクカットモードTCMode =1にセットしてシーケンシャルカットモードを選択する。または、トルクカットモードTCMode =3にセットしてシーケンシャル復帰モードを選択する。
【0078】
一方、減速時燃料カット・復帰条件が不成立のときには、トルク制御の応答性を優先すべき状態であると判断して、トルクカットモードTCMode =2にセットして全気筒カットモードを選択する。または、トルクカットモードTCMode =0にセットして全気筒復帰モードを選択する。
【0079】
上記ステップ201で、トルクカットモードTCMode が「1」にセットされているか否かによって、シーケンシャルカットモードが選択されているか否かを判定し、シーケンシャルカットモードが選択されている(トルクカットモードTCMode =1)と判定されれば、ステップ202に進み、前回もシーケンシャルカットモードであったか否かを判定する。
【0080】
前回がシーケンシャルカットモードではないと判定された場合、つまり、シーケンシャルカットモードに切り換え後の最初の処理の場合には、ステップ202からステップ203に進み、トルク発生率TCRate を「1」に設定した後、ステップ204に進む。
【0081】
一方、上記ステップ202で前回もシーケンシャルカットモードであると判定された場合、つまり、シーケンシャルカットモードに切り換え後の2回目以降は、ステップ202からステップ204に進む。
【0082】
このステップ204では、次式によりトルク発生率TCRate をトルク発生率TCRate の変化量ΔTCRだけ減少させる。但し、トルク発生率TCRate の最小値は0とする。
TCRate =TCRate −ΔTCR
【0083】
ここで、全気筒数が5気筒のエンジン11で各気筒の通常の燃料噴射順序に対して0サイクルおきに(つまり、1サイクル毎に)、1気筒ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行する場合には、次式にY=5、n=0、X=1を代入して、トルク発生率変化量ΔTCRを設定する。
ΔTCR=(1/Y)/(X+1+n×Y)
=1/5/(1+1+0×5)=0.1
【0084】
これにより、シーケンシャルカットモードでは、1点火毎にトルク発生率TCRate を0.1ずつ減少させて、2点火毎に(つまり、通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で)トルク発生率TCRate を0.2(つまり、5気筒のエンジン11の1気筒分の燃料カットに相当するトルク発生率)ずつ減少させる。
【0085】
一方、上記ステップ201で、シーケンシャルカットモードが選択されていない(トルクカットモードTCMode ≠1)と判定された場合には、ステップ205に進み、トルクカットモードTCMode が「2」にセットされているか否かによって、全気筒カットモードが選択されているか否かを判定する。
【0086】
このステップ205で、全気筒カットモードが選択されている(トルクカットモードTCMode =2)と判定されれば、ステップ206に進み、トルク発生率TCRate を「0」に設定する。
TCRate =0
【0087】
また、上記ステップ205で、全気筒カットモードが選択されていない(トルクカットモードTCMode ≠2)と判定された場合には、ステップ207に進み、トルクカットモードTCMode が「3」にセットされているか否かによって、シーケンシャル復帰モードが選択されているか否かを判定する。
【0088】
このステップ207で、シーケンシャル復帰モードが選択されている(トルクカットモードTCMode =3)と判定されれば、ステップ208に進み、次式によりトルク発生率TCRate をトルク発生率変化量ΔTCRだけ増加させる。但し、トルク発生率TCRate の最大値は1とする。
TCRate =TCRate +ΔTCR
【0089】
これにより、シーケンシャル復帰モードでは、1点火毎にトルク発生率TCRate を0.1ずつ増加させて、2点火毎に(つまり、通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で)トルク発生率TCRate を0.2(つまり、5気筒のエンジン11の1気筒分の燃料復帰に相当するトルク発生率)ずつ増加させる。
【0090】
また、上記ステップ207で、シーケンシャル復帰モードが選択されていない(トルクカットモードTCMode ≠3)と判定された場合には、全気筒復帰モードが選択されている(トルクカットモードTCMode =0)と判断して、ステップ209に進み、トルク発生率TCRate を「1」に設定する。
TCRate =1
【0091】
[指示図示トルク算出]
図14に示す指示図示トルク算出プログラムは、通常の点火間隔毎に実行され、特許請求の範囲でいう指示トルク算出手段としての役割を果たす。本プログラムが起動されると、まず、ステップ301で、トルク発生率TCRate が「1」であるか否かを判定する。
【0092】
トルク発生率TCRate が「1」の場合、つまり、全気筒復帰モードの場合には、ステップ302に進み、ドライバ指示軸トルクにロストルク(外部補機類等の負荷に応じたトルク)を加算して指示図示トルクRITrqを求める。
RITrq=ドライバ指示軸トルク+ロストルク
【0093】
一方、トルク発生率TCRate が「1」でない場合、つまり、シーケンシャルカットモード、シーケンシャル復帰モード、全気筒カットモードの場合には、ステップ303に進み、将来回転速度ENeと吸入空気量とに基づいてマップ等により全気筒で燃料噴射した場合の推定図示トルクEITrqを算出した後、ステップ304に進み、推定図示トルクEITrqにトルク発生率TCRate を乗算して指示図示トルクRITrqを求める。
RITrq=EITrq×TCRate
【0094】
[燃料カット・復帰決定]
図15及び図16に示す燃料カット・復帰決定プログラムは、通常の点火間隔毎に実行され、特許請求の範囲でいう燃料噴射量算出手段としての役割を果たす。本プログラムが起動されると、まず、ステップ401で、推定図示トルクEITrq≠0であるか否かを判定し、もし、推定図示トルクEITrq=0と判定されれば、0割り防止のために、ステップ402に進み、トルク比 rTRate を「1」に設定する。
【0095】
一方、上記ステップ401で、推定図示トルクEITrq≠0であると判定されれば、ステップ403に進み、指示図示トルクRITrqを推定図示トルクEITrqで除算してトルク比 rTRate (=トルク発生率TCRate )を求める。
rTRate =RITrq/EITrq
【0096】
この後、ステップ404に進み、トルクカットモードTCMode =1(シーケンシャルカットモード)であるか否かを判定し、シーケンシャルカットモードであれば、ステップ405に進み、後述する図17に示す燃料カット気筒順序設定プログラムを実行する。
【0097】
この後、ステップ406に進み、トルクカットモードTCMode =3(シーケンシャル復帰モード)であるか否かを判定し、シーケンシャル復帰モードであれば、ステップ407に進み、後述する図18に示す燃料復帰気筒順序設定プログラムを実行する。
【0098】
この後、図16のステップ408に進み、全気筒数Y(例えば5)と現在の燃料カット気筒数FCLとを用いて噴射率 rIRate を次式により算出する。
rIRate =(5−FCL)/5
【0099】
そして、次のステップ409で、トルクカットモードTCMode =1(シーケンシャルカットモード)であるか否かを判定し、シーケンシャルカットモードであれば、ステップ410に進み、後述する図19に示すシーケンシャル燃料カット処理プログラムを実行して、各気筒の通常の燃料噴射順序に対して所定気筒数(例えば1気筒)ずつ飛ばした順序で燃料噴射をカットしていくシーケンシャルカットを行う。
【0100】
この後、ステップ411に進み、トルクカットモードTCMode =3(シーケンシャル復帰モード)であるか否かを判定し、シーケンシャル復帰モードであれば、ステップ412に進み、後述する図20に示すシーケンシャル燃料復帰処理プログラムを実行して、各気筒の通常の燃料噴射順序に対して所定気筒数(例えば1気筒)ずつ飛ばした順序で燃料噴射を再開していくシーケンシャル復帰を行う。
【0101】
そして、次のステップ413で、トルクカットモードTCMode =2(全気筒カットモード)であるか否かを判定し、全気筒カットモードであれば、ステップ414に進み、全気筒燃料カット処理を実行して、各気筒の通常の燃料噴射順序で燃料噴射をカットして全気筒の燃料噴射をカットする。
【0102】
この後、ステップ415に進み、トルクカットモードTCMode =0(全気筒復帰モード)であるか否かを判定し、全気筒復帰モードであれば、ステップ416に進み、全気筒燃料復帰処理を実行して、各気筒の通常の燃料噴射順序で燃料噴射を再開して全気筒の燃料噴射を再開する。
【0103】
そして、最後のステップ417で、現在の燃料カット気筒数FCLを算出した後、本プログラムを終了する。
【0104】
[燃料カット気筒順序設定]
図17に示す燃料カット気筒順序設定プログラム(図15のステップ405)が起動されると、まず、ステップ501で、クランクカウンタCCunt のカウント値(クランク回転位置)を読み込む。図11(b)に示すように、このクランクカウンタCCunt は、36℃A毎に「1」ずつインクリメントされるため、クランクカウンタCCunt の4カウントが通常の点火間隔(144℃A)に相当し、クランクカウンタCCunt の20カウントが1サイクル(720℃A)に相当する。尚、クランクカウンタCCunt は、「20」になった時点で「0」にリセットされる。
【0105】
また、クランクカウンタCCunt =0のクランク回転位置が、#5の点火時期算出タイミングに相当し、クランクカウンタCCunt =4、8、12、16のクランク回転位置が、それぞれ#3、#1、#2、#4の点火時期算出タイミングに相当するように設定されている。
【0106】
まず、ステップ501で、クランクカウンタCCunt のカウント値(クランク回転位置)を読み込んだ後、ステップ502で、クランクカウンタCCunt =0(#5の点火時期算出タイミング)であるか否かを判定する。その結果、クランクカウンタCCunt =0(#5の点火時期算出タイミング)であると判定されれば、ステップ503に進み、 rCylord(1)=3、 rCylord(2)=1、 rCylord(3)=2、 rCylord(4)=4、 rCylord(5)=5に設定することで、燃料カットする気筒の優先順位を#3、#1、#2、#4、#5の順に設定する。
【0107】
一方、上記ステップ502で、クランクカウンタCCunt =0(#5の点火時期算出タイミング)ではないと判定された場合には、ステップ504に進み、クランクカウンタCCunt =4(#3の点火時期算出タイミング)であるか否かを判定する。クランクカウンタCCunt =4(#3の点火時期算出タイミング)であると判定されれば、ステップ505に進み、 rCylord(1)=1、 rCylord(2)=2、 rCylord(3)=4、 rCylord(4)=5、 rCylord(5)=3に設定することで、燃料カットする気筒の優先順位を#1、#2、#4、#5、#3の順に設定する。
【0108】
また、上記ステップ504で、クランクカウンタCCunt =4(#3の点火時期算出タイミング)ではないと判定された場合には、ステップ506に進み、クランクカウンタCCunt =8(#1の点火時期算出タイミング)であるか否かを判定する。その結果、クランクカウンタCCunt =8(#1の点火時期算出タイミング)であると判定されれば、ステップ507に進み、 rCylord(1)=2、 rCylord(2)=4、 rCylord(3)=5、 rCylord(4)=3、 rCylord(5)=1に設定することで、燃料カットする気筒の優先順位を#2、#4、#5、#3、#1の順に設定する。
【0109】
また、上記ステップ506で、クランクカウンタCCunt =8(#1の点火時期算出タイミング)ではないと判定された場合には、ステップ508に進み、クランクカウンタCCunt =12(#2の点火時期算出タイミング)であるか否かを判定する。その結果、クランクカウンタCCunt =12(#2の点火時期算出タイミング)であると判定されれば、ステップ509に進み、 rCylord(1)=4、 rCylord(2)=5、 rCylord(3)=3、 rCylord(4)=1、 rCylord(5)=2に設定することで、燃料カットする気筒の優先順位を#4、#5、#3、#1、#2の順に設定する。
【0110】
また、上記ステップ508で、クランクカウンタCCunt =12(#2の点火時期算出タイミング)ではないと判定された場合には、クランクカウンタCCunt =16(#4の点火時期算出タイミング)と判断して、ステップ510に進み、 rCylord(1)=5、 rCylord(2)=3、 rCylord(3)=1、 rCylord(4)=2、 rCylord(5)=4に設定することで、燃料カットする気筒の優先順位を#5、#3、#1、#2、#4の順に設定する。
【0111】
[燃料復帰気筒順序設定]
図18に示す燃料復帰気筒順序設定プログラム(図15のステップ407)が起動されると、まず、ステップ601で、クランクカウンタCCunt のカウント値(クランク回転位置)を読み込んだ後、ステップ602に進み、クランクカウンタCCunt =8(#1の点火時期算出タイミング)であるか否かを判定する。その結果、クランクカウンタCCunt =8(#1の点火時期算出タイミング)であると判定されれば、ステップ603に進み、 rCylord(1)=4、 rCylord(2)=5、 rCylord(3)=3、 rCylord(4)=1、 rCylord(5)=2に設定することで、燃料復帰する気筒の優先順位を#4、#5、#3、#1、#2の順に設定する。
【0112】
一方、上記ステップ602で、クランクカウンタCCunt =8(#1の点火時期算出タイミング)ではないと判定された場合には、ステップ604に進み、クランクカウンタCCunt =12(#2の点火時期算出タイミング)であるか否かを判定する。その結果、クランクカウンタCCunt =12(#2の点火時期算出タイミング)であると判定されれば、ステップ605に進み、 rCylord(1)=5、 rCylord(2)=3、 rCylord(3)=1、 rCylord(4)=2、 rCylord(5)=4に設定することで、燃料復帰する気筒の優先順位を#5、#3、#1、#2、#4の順に設定する。
【0113】
また、上記ステップ604で、クランクカウンタCCunt =12(#2の点火時期算出タイミング)ではないと判定されれば、ステップ606に進み、クランクカウンタCCunt =16(#4の点火時期算出タイミング)であるか否かを判定する。その結果、クランクカウンタCCunt =16(#4の点火時期算出タイミング)であると判定された場合には、ステップ607に進み、 rCylord(1)=3、 rCylord(2)=1、 rCylord(3)=2、 rCylord(4)=4、 rCylord(5)=5に設定することで、燃料復帰する気筒の優先順位を#3、#1、#2、#4、#5の順に設定する。
【0114】
また、上記ステップ606で、クランクカウンタCCunt =16(#4の点火時期算出タイミング)ではないと判定されれば、ステップ608に進み、クランクカウンタCCunt =0(#5の点火時期算出タイミング)であるか否かを判定する。その結果、クランクカウンタCCunt =0(#5の点火時期算出タイミング)であると判定された場合には、ステップ609に進み、 rCylord(1)=1、 rCylord(2)=2、 rCylord(3)=4、 rCylord(4)=5、 rCylord(5)=3に設定することで、燃料復帰する気筒の優先順位を#1、#2、#4、#5、#3の順に設定する。
【0115】
また、上記ステップ608で、クランクカウンタCCunt =0(#5の点火時期算出タイミング)ではないと判定されれば、クランクカウンタCCunt =4(#3の点火時期算出タイミング)と判断して、ステップ610に進み、 rCylord(1)=2、 rCylord(2)=4、 rCylord(3)=5、 rCylord(4)=3、 rCylord(5)=1に設定することで、燃料復帰する気筒の優先順位を#2、#4、#5、#3、#1の順に設定する。
【0116】
[シーケンシャル燃料カット処理]
図19に示すシーケンシャル燃料カット処理プログラム(図16のステップ410)が起動されると、まず、ステップ701で、噴射率 rIRate から0.2だけ減算した値がトルク比 rTRate 以上( rIRate −0.2≧ rTRate )であるか否かを判定する。もし、 rIRate −0.2< rTRate と判定されれば、そのまま本プログラムを終了する。
【0117】
その後、 rIRate −0.2≧ rTRate であると判定されたときに、ステップ702に進み、気筒別燃料カット要求 rCCReq{rCylord(n)} が燃料復帰を意味する「0」にセットされ、且つ、気筒別吸入燃料量 rIFel{rCylord(n)} が0となっている rCylord(n)のうち優先順位の高いものを燃料カット気筒として選択する。これ以降のスタビリティモード(シーケンシャルカットモード)運転中は、燃料噴射量算出タイミングと燃料噴射時期を固定する。
【0118】
この後、ステップ703に進み、上記ステップ702で選択した rCylord(n)について、気筒別燃料カット要求 rCCReq{rCylord(n)} を燃料カットを意味する「1」にセットした後、ステップ704に進み、噴射率 rIRate を0.2だけ減少させる。
【0119】
シーケンシャルカットモードでは、1点火毎にトルク比 rTRate (=トルク発生率TCRate )を0.1ずつ減少させて、2点火毎にトルク比 rTRate を0.2ずつ減少させるので、以上の処理により2点火毎に(つまり、通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で)、燃料カット気筒を1つずつ増加していくシーケンシャルカットを実行することができる。
【0120】
[シーケンシャル燃料復帰処理]
図20に示すシーケンシャル燃料復帰処理プログラム(図16のステップ412)が起動されると、まず、ステップ801で、トルク比 rTRate が噴射率 rIRate 以上( rTRate ≧ rIRate )であるか否かを判定する。その結果、 rTRate < rIRate と判定されれば、そのまま本プログラムを終了する。
【0121】
その後、 rTRate ≧ rIRate であると判定されたときに、ステップ802に進み、気筒別燃料カット要求 rCCReq{rCylord(n)} が、燃料カットを意味する「1」にセットされている rCylord(n)のうち優先順位の高いものを燃料復帰気筒として選択する。これ以降のスタビリティモード(シーケンシャル復帰モード)運転中は、燃料噴射量算出タイミングと燃料噴射時期を固定する。
【0122】
この後、ステップ803に進み、上記ステップ802で選択した rCylord(n)について、気筒別燃料カット要求 rCCReq{rCylord(n)} を燃料復帰を意味する「0」にセットした後、ステップ804に進み、噴射率 rIRate を0.2だけ増加させる。
【0123】
シーケンシャル復帰モードでは、1点火毎にトルク比 rTRate (=トルク発生率TCRate )を0.1ずつ増加させて、2点火毎にトルク比 rTRate を0.2ずつ増加させるので、以上の処理により2点火毎に(つまり、通常の燃料噴射順序に対して1気筒ずつ飛ばした順序で)、燃料復帰気筒を1つずつ増加していくシーケンシャル復帰を実行することができる。
【0124】
図17に示す燃料カット気筒順序設定プログラムと、図18に示す燃料復帰気筒順序設定プログラムと、図19に示すシーケンシャル燃料カットプログラムと、図20に示すシーケンシャル燃料復帰プログラムが、特許請求の範囲でいうシーケンシャル制御手段としての役割を果たす。
【0125】
[点火時期遅角量算出]
図21に示す点火時期遅角量算出プログラムは、通常の点火間隔毎に実行され、特許請求の範囲でいう点火時期算出手段としての役割を果たす。本プログラムが起動されると、まず、ステップ901で、トルクカットモードTCMode =1(シーケンシャルカットモード)であるか否かを判定し、シーケンシャルカットモードであれば、ステップ902に進み、後述する図22に示すシーケンシャルカット処理プログラムを実行する。
【0126】
この後、ステップ903に進み、トルクカットモードTCMode =3(シーケンシャル復帰モード)であるか否かを判定し、シーケンシャル復帰モードであれば、ステップ904に進み、後述する図23に示すシーケンシャル復帰処理プログラムを実行する。
【0127】
そして、次のステップ905で、トルクカットモードTCMode =0又は2(全気筒復帰モード又は全気筒カットモード)であるか否かを判定し、全気筒復帰モード又は全気筒カットモードであれば、ステップ906に進み、後述する図24に示す全気筒復帰又は全気筒カット処理プログラムを実行する。
【0128】
この後、ステップ907に進み、 rTCMode(old)の値を現在のTCMode で更新した後、ステップ908に進み、後述する指示トルク rRTrqと推定トルク rETrqと燃料カット気筒数 rCLとを用いて、点火時期遅角量を算出するためのトルク比 rTRate を次式により算出する。
rTRate = rRTrq/{ rETrq×(5− rCL)/5}
【0129】
そして、次のステップ909で、図25に示す前回値更新処理プログラムを実行した後、ステップ910に進み、図26に示す点火時期遅角量TCRetrdのマップを検索して、トルク比 rTRate に応じた点火時期遅角量TCRetrdを求める。
【0130】
[シーケンシャルカット処理]
図22に示すシーケンシャルカット処理プログラム(図21のステップ902)が起動されると、まず、ステップ1001で、 rTCMode(Old)=0(前回が全気筒復帰モード)であるか否かを判定する。前回が全気筒復帰モードと判定された場合、つまり、シーケンシャルカットモードに切り換え後の初回の場合には、ステップ1002に進み、スムージングカウンタSCntのカウンタ値を最大値Smax (例えば3)にセットする。
【0131】
この後、ステップ1003に進み、3点火前の指示トルク rRTrq(old3)の初期値、2点火前の指示トルク rRTrq(old2)の初期値及び1点火前の指示トルク rRTrq(old) の初期値として、全て現在の指示図示トルクRITrqをセットする。これら rRTrq(old3)、 rRTrq(old2)及び rRTrq(old) の値は、後述する図25に示す前回値更新処理プログラムで更新される。
【0132】
この後、ステップ1004に進み、3点火前の推定トルク rETrq(old3)の初期値、2点火前の推定トルク rETrq(old2)の初期値及び1点火前の推定トルク rETrq(old) の初期値として、全て現在の推定図示トルクEITrqをセットする。これら rETrq(old3)、 rETrq(old2)及び rETrq(old) の値は、後述する図25に示す前回値更新処理プログラムで更新される。
【0133】
一方、上記ステップ1001で前回が全気筒復帰モードではないと判定された場合、つまり、シーケンシャルカットモードに切り換え後の2回目以降は、ステップ1005に進み、スムージングカウンタSCntのカウンタ値を「1」だけデクリメントする(但し、SCnt=0を最小値とする)。
【0134】
この後、ステップ1006に進み、例えばシーケンシャルカット時の燃料噴射量算出タイミングが点火時期算出タイミングの2点火前の場合は、点火時期遅角量の算出に用いる指示トルク rRTrqを次式により算出する。
rRTrq= rRTrq(old2)+{ rRITrq− rRTrq(old2)}×SCnt/3
【0135】
これにより、全気筒復帰モード(レスポンスモード)からシーケンシャルカットモード(スタビリティモード)に切り換わる際には、スムージングカウンタSCntのカウンタ値を最大値Smax (例えば3)から0まで「1」ずつデクリメントするため、上式により点火時期遅角量の算出に用いる指示トルク rRTrqが、最新の指示図示トルク rRITrqから2点火前の指示トルク rRTrq(old2)まで徐々に変化し、その後、スタビリティモード中は、スムージングカウンタSCntのカウンタ値を0に維持するため、上式により点火時期遅角量の算出に用いる指示トルク rRTrqが2点火前の指示トルク rRTrq(old2)、つまり、燃料噴射量算出に用いた指示トルクに維持される。このステップ1006の処理が特許請求の範囲でいう指示トルク徐変手段としての役割を果たす。
【0136】
この後、ステップ1007に進み、点火時期遅角量の算出に用いる推定トルク rETrqを2点火前の推定トルク rETrq(old2)にセットした後、ステップ1008に進み、点火時期遅角量の算出に用いる燃料カット気筒数 rCLを1点火前の燃料カット気筒数 rCL(old) にセットする。
【0137】
[シーケンシャル復帰処理]
図23に示すシーケンシャル復帰処理プログラム(図21のステップ904)が起動されると、ステップ1101で、例えばシーケンシャル復帰時の燃料噴射量算出タイミングが点火時期算出タイミングの3点火前の場合は、点火時期遅角量の算出に用いる指示トルク rRTrqを3点火前の指示トルク rRTrq(old3)、つまり燃料噴射量算出に用いた指示トルクにセットし、点火時期遅角量の算出に用いる推定トルク rETrqを3点火前の推定トルク rETrq(old3)にセットすると共に、点火時期遅角量の算出に用いる燃料カット気筒数 rCLを1点火前の燃料カット気筒数 rCL(old) にセットする。
【0138】
[全気筒復帰又は全気筒カット処理]
図24に示す全気筒復帰又は全気筒カット処理プログラム(図21のステップ906)が起動されると、ステップ1201で、点火時期遅角量の算出に用いる指示トルク rRTrqを現在の指示図示トルクRITrqにセットし、点火時期遅角量の算出に用いる推定トルク rETrqを現在の推定図示トルクEITrqにセットすると共に、点火時期遅角量の算出に用いる燃料カット気筒数 rCLを現在の燃料カット気筒数FCLにセットする。
【0139】
[前回値更新処理]
図25に示す前回値更新処理プログラム(図21のステップ909)が起動されると、まず、ステップ1301で、3点火前の指示トルク rRTrq(old3)を2点火前の指示トルク rRTrq(old2)で更新し、2点火前の指示トルク rRTrq(old2)を1点火前の指示トルク rRTrq(old) で更新すると共に、1点火前の指示トルク rRTrq(old) を現在の指示図示トルクRITrqで更新する。
【0140】
この後、ステップ1302に進み、3点火前の推定トルク rETrq(old3)を2点火前の推定トルク rETrq(old2)で更新し、2点火前の推定トルク rETrq(old2)を1点火前の推定トルク rETrq(old) で更新すると共に、1点火前の推定トルク rETrq(old1)を現在の推定図示トルクEITrqで更新する。
【0141】
この後、ステップ1303に進み、燃料カット気筒数 rCLを現在の燃料カット気筒数FCLで更新した後、本プログラムを終了する。
【0142】
以上説明した本実施形態によれば、トルク制御の応答性を優先するレスポンスモード(全気筒カットモードと全気筒復帰モード)では、燃料噴射量算出タイミングで、その時点の最新の指示トルクに基づいて燃料噴射量を算出し、その後の点火時期算出タイミングで、その時点の最新の指示トルクに基づいて点火時期を算出するようにしたので、指示トルクの変化に対して応答性の良いトルク制御を行うことができる。
【0143】
しかし、トルク制御の安定性を優先するスタビリティモード(シーケンシャルカットモードとシーケンシャル復帰モード)で、レスポンスモードと同じように、燃料噴射量の算出時と点火時期の算出時に、それぞれ最新の指示トルクを用いるようにすると、燃料噴射量算出に用いる指示トルク値と点火時期算出に用いる指示トルク値とが異なってくるため、図27のシミュレーション結果に示すように、指示トルクに対して気筒別総合推定トルク(出力トルク)がばらついて、不安定なトルク制御になってしまうおそれがある。
【0144】
そこで、本実施形態では、スタビリティモードでは、燃料噴射量算出タイミングで、その時点の最新の指示トルクに基づいて燃料噴射量を算出し、その後の点火時期算出タイミングでは、その点火時期算出タイミングにおける指示トルクよりも前に算出された過去の指示トルク(例えば、直前の燃料噴射量算出タイミングにおける指示トルク)に基づいて点火時期を算出するようにしたので、燃料噴射量算出に用いる指示トルクと点火時期算出に用いる指示トルクとの偏差を小さく(又は0に)することができ、図28のシミュレーション結果に示すように、指示トルクに対して気筒別総合推定トルク(出力トルク)のばらつきを小さくすることができ、安定したトルク制御を実現することができる。
【0145】
尚、点火時期の算出に用いる指示トルクは、燃料噴射量算出タイミングにおける指示トルクに限定されず、点火時期算出タイミングにおける指示トルクよりも前に算出された過去の指示トルクであれば、燃料噴射量算出タイミングにおける指示トルクの前後の指示トルクを用いるようにしても良い。
【0146】
スタビリティモードでは、過去の指示トルクに基づいて点火時期を算出するため、図28に示すように、指示トルクに対して気筒別総合推定トルク(出力トルク)の応答性が低下するおそれがあるが、本実施形態では、スタビリティモード運転中に、エンジン11の将来の回転速度を予測し、その将来回転速度に基づいて指示トルクを算出するようにしたので、エンジン11の将来の回転速度の挙動を考慮に入れた指示トルクを算出することができ、過去の指示トルクに基づいて点火時期を算出する場合でも、トルク制御の応答性を向上することができる。
【0147】
また、将来回転速度は、エンジン11の軸トルクを積分して求めることができるが、積分を用いると、ECU17の演算負荷が大きくなる。その点、本実施形態では、クランク角センサ23で検出した回転速度と、吸入空気量に基づいて算出した軸トルクとを用いて将来回転速度を算出するようにしたので、最新の回転速度を基に将来回転速度を精度良く算出することができると共に、積分が不要になり、ECU27の演算負荷を小さくすることができる。
【0148】
しかしながら、将来回転速度の算出方法は、適宜変更しても良く、エンジン11の軸トルクを積分して将来回転速度を求めるようにしても良い。
また、必ずしも将来回転速度に基づいて指示トルクを算出する必要はなく、現在の回転速度に基づいて指示トルクを算出しても良い等、指示トルクの算出方法を適宜変更しても良い。
【0149】
更に、本実施形態では、レスポンスモードとスタビリティモードとを切り換える際に、点火時期算出に用いる指示トルクを徐々に変化させるようにしたので、レスポンスモードとスタビリティモードとを切り換える際に、点火時期算出に用いる指示トルクが急変することを防止することができ、出力トルクの急変を防止してドライバビリティの悪化を防止することができる。
【0150】
また、本実施形態では、全気筒数がY気筒(但しYは3以上の整数)のエンジン11で各気筒の通常の燃料噴射順序に対してnサイクル(但しnは0以上の整数)おきにX気筒(但しXは1以上の整数)ずつ飛ばした順序でシーケンシャルカット又はシーケンシャル復帰を実行する場合に、トルク発生率を変化させる際の所定周期を通常の点火間隔(=720℃A/Y)に設定し、所定変化量を(1/Y)/(X+1+n×Y)に設定するようにしたので、所望のシーケンシャルカット(又はシーケンシャル復帰)となるような割合でトルク発生率を減少(又は増加)させることができ、このように変化させたトルク発生率に応じて燃料カット気筒数を増加(又は減少)させれることで、指示トルク(トルク発生率)を精度良く反映したシーケンシャルカットやシーケンシャル復帰を実現することができる。
【0151】
また、本実施形態では、シーケンシャルカットやシーケンシャル復帰の実行中に燃料噴射量算出タイミングと燃料噴射時期を固定するようにしたので、燃料カット順序や燃料復帰順序の乱れてを防止することができ、所定通りの順序でシーケンシャルカットやシーケンシャル復帰を確実に実行することができると共に、事前に燃料カット又は燃料復帰が間に合う気筒を容易に判定することができ、次に燃料カット又は燃料復帰する気筒を容易に特定することができる。
【0152】
尚、本発明の適用範囲は5気筒のエンジンに限定されず、4気筒以下又は6気筒以上の気筒数のエンジンに本発明を適用しても良い。
【図面の簡単な説明】
【図1】本発明の一実施形態におけるエンジン制御システム全体の概略構成図
【図2】シーケンシャルカット及びシーケンシャル復帰を説明するためのタイムチャート
【図3】燃料噴射時期と点火時期との関係を説明するためのタイムチャート
【図4】(a)はレスポンスモードにおいて燃料噴射量算出に用いる指示トルクと点火時期算出に用いる指示トルクとの関係を説明するためのタイムチャート、(b)はスタビリティモードにおいて燃料噴射量算出に用いる指示トルクと点火時期算出に用いる指示トルクとの関係を説明するためのタイムチャート
【図5】将来回転速度の算出方法を説明するためのタイムチャート
【図6】レスポンスモードとスタビリティモードとを切り換える際に、点火時期算出に用いる指示トルクを最新の指示トルクと過去の指示トルクとの間で瞬時に切り換える場合を示すタイムチャート
【図7】レスポンスモードとスタビリティモードとを切り換える際に、点火時期算出に用いる指示トルクを徐々に変化させる場合を示すタイムチャート
【図8】(a)はシーケンシャルカットモード時のトルク発生率と燃料カット気筒数との関係を示す図、(b)はシーケンシャル復帰モード時のトルク発生率と燃料復帰気筒数との関係を示す図
【図9】トルク発生率に応じたシーケンシャルカット及びシーケンシャル復帰を説明するためのタイムチャート
【図10】(a)〜(c)はトルク発生率変化量の算出結果が無限小数になる場合の対処方法を説明するための図
【図11】(a)は燃料噴射量算出タイミングと点火時期算出タイミングとの関係の一例を示す図、(b)はクランクカウンタのカウント値と各気筒の各行程との関係を示す図
【図12】将来回転速度算出プログラムの処理の流れを示すフローチャート
【図13】トルク発生率算出プログラムの処理の流れを示すフローチャート
【図14】指示図示トルク算出プログラムの処理の流れを示すフローチャート
【図15】燃料カット・復帰決定プログラムの処理の流れを示すフローチャート(その1)
【図16】燃料カット・復帰決定プログラムの処理の流れを示すフローチャート(その2)
【図17】燃料カット気筒順序設定プログラムの処理の流れを示すフローチャート
【図18】燃料復帰気筒順序設定プログラムの処理の流れを示すフローチャート
【図19】シーケンシャル燃料カット処理プログラムの処理の流れを示すフローチャート
【図20】シーケンシャル燃料復帰処理プログラムの処理の流れを示すフローチャート
【図21】点火時期遅角量算出プログラムの処理の流れを示すフローチャート
【図22】シーケンシャルカット処理プログラムの処理の流れを示すフローチャート
【図23】シーケンシャル復帰処理プログラムの処理の流れを示すフローチャート
【図24】全気筒復帰又は全気筒カット処理プログラムの処理の流れを示すフローチャート
【図25】前回値更新処理プログラムの処理の流れを示すフローチャート
【図26】点火時期遅角量のマップを概念的に示す図
【図27】最新の指示トルクに基づいて点火時期を算出した場合のシミュレーション結果を示すタイムチャート
【図28】過去の指示トルクに基づいて点火時期を算出した場合のシミュレーション結果を示すタイムチャート
【符号の説明】
11…エンジン(内燃機関)、12…吸気管、14…エアフローメータ、15…スロットルバルブ、20…燃料噴射弁、21…点火プラグ、23…クランク角センサ23(回転速度検出手段)、24…排気管、27…ECU(指示トルク算出手段,燃料噴射量算出手段,点火時期算出手段,将来回転速度予測手段,軸トルク算出手段,指示トルク徐変手段,シーケンシャル制御手段)。
Claims (7)
- 所定の指示トルク算出タイミング毎に指示トルクを算出する指示トルク算出手段と、
所定の燃料噴射量算出タイミング毎に前記指示トルクに基づいて燃料噴射量を算出する燃料噴射量算出手段と、
前記燃料噴射量算出タイミングよりも遅れた所定の点火時期算出タイミング毎に前記指示トルクに基づいて点火時期を算出する点火時期算出手段とを備え、
前記点火時期算出手段は、内燃機関の燃料カット気筒数を増加させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射をカットしていくシーケンシャルカットの運転中、または、内燃機関の燃料カット気筒数を減少させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射を再開していくシーケンシャル復帰の運転中(以下これらを「スタビリティモード運転中」と総称する)に点火時期を算出する際に、その点火時期算出タイミングにおける指示トルクよりも前に算出された過去の指示トルクに基づいて点火時期を算出することを特徴とする内燃機関のトルク制御装置。 - 前記点火時期算出手段は、前記スタビリティモード運転中に点火時期を算出する際に、前記過去の指示トルクとして直前の燃料噴射量算出タイミングにおける指示トルクを用いることを特徴とする請求項1に記載の内燃機関のトルク制御装置。
- 前記点火時期算出手段は、各気筒の通常の燃料噴射順序で燃料噴射をカットして全気筒の燃料噴射をカットする全気筒カットの運転中、または、各気筒の通常の燃料噴射順序で燃料噴射を再開して全気筒の燃料噴射を再開する全気筒復帰の運転中(以下これらを「レスポンスモード運転中」と総称する)に点火時期を算出する際に、その点火時期算出タイミングにおける指示トルクに基づいて点火時期を算出することを特徴とする請求項1又は2に記載の内燃機関のトルク制御装置。
- 前記レスポンスモード運転と前記スタビリティモード運転とを切り換える際に、前記点火時期算出手段が点火時期を算出する際に用いる指示トルクを徐々に変化させる指示トルク徐変手段を備えていることを特徴とする請求項3に記載の内燃機関のトルク制御装置。
- 内燃機関の燃料カット気筒数を増加させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射をカットしていくシーケンシャルカットと、内燃機関の燃料カット気筒数を減少させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射を再開していくシーケンシャル復帰とのうちの少なくとも一方を実行するシーケンシャル制御手段を備え、
前記シーケンシャル制御手段は、全気筒で燃料噴射した場合の出力トルクに対する指示トルクの割合であるトルク発生率を所定周期で所定変化量ずつ変化させ、そのトルク発生率に応じて燃料カット気筒数を変化させることで前記シーケンシャルカット又は前記シーケンシャル復帰を実行することを特徴とする請求項1乃至4のいずれかに記載の内燃機関のトルク制御装置。 - 内燃機関の燃料カット気筒数を増加させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射をカットしていくシーケンシャルカットと、内燃機関の燃料カット気筒数を減少させる際に各気筒の通常の燃料噴射順序に対して所定気筒数ずつ飛ばした順序で燃料噴射を再開していくシーケンシャル復帰とのうちの少なくとも一方を実行するシーケンシャル制御手段を備えた内燃機関のトルク制御装置において、
前記シーケンシャル制御手段は、全気筒で燃料噴射した場合の出力トルクに対する指示トルクの割合であるトルク発生率を所定周期で所定変化量ずつ変化させ、そのトルク発生率に応じて燃料カット気筒数を変化させることで前記シーケンシャルカット又は前記シーケンシャル復帰を実行することを特徴とする内燃機関のトルク制御装置。 - 前記シーケンシャルカット及び/又は前記シーケンシャル復帰の実行中に燃料噴射量算出タイミングと燃料噴射時期を固定することを特徴とする請求項5又は 6に記載の内燃機関のトルク制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002160626A JP4082096B2 (ja) | 2002-05-31 | 2002-05-31 | 内燃機関のトルク制御装置 |
DE2003124589 DE10324589A1 (de) | 2002-05-31 | 2003-05-30 | Momentensteuersystem für Brennkraftmaschinen |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002160626A JP4082096B2 (ja) | 2002-05-31 | 2002-05-31 | 内燃機関のトルク制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004003397A JP2004003397A (ja) | 2004-01-08 |
JP4082096B2 true JP4082096B2 (ja) | 2008-04-30 |
Family
ID=29720183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002160626A Expired - Fee Related JP4082096B2 (ja) | 2002-05-31 | 2002-05-31 | 内燃機関のトルク制御装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4082096B2 (ja) |
DE (1) | DE10324589A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006152857A (ja) * | 2004-11-26 | 2006-06-15 | Honda Motor Co Ltd | 内燃機関の点火時期制御装置 |
JP6060812B2 (ja) * | 2013-05-17 | 2017-01-18 | 株式会社デンソー | エンジン制御装置 |
US9797327B2 (en) * | 2013-12-18 | 2017-10-24 | Ford Global Technologies, Llc | Method and system for pre-ignition control |
-
2002
- 2002-05-31 JP JP2002160626A patent/JP4082096B2/ja not_active Expired - Fee Related
-
2003
- 2003-05-30 DE DE2003124589 patent/DE10324589A1/de not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
DE10324589A1 (de) | 2004-01-08 |
JP2004003397A (ja) | 2004-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5796635B2 (ja) | 内燃機関の燃料カット制御装置及び燃料カット制御方法 | |
JPH0942020A (ja) | 内燃機関の燃料供給制御装置 | |
JPH11173184A (ja) | 内燃機関の制御装置 | |
JP2005113877A (ja) | 内燃機関の制御装置 | |
JP6136947B2 (ja) | 内燃機関の制御装置 | |
EP1156195B1 (en) | Drive power control apparatus and method for vehicle | |
JPH1182090A (ja) | 内燃機関の制御装置 | |
JP3791032B2 (ja) | 内燃機関の燃料噴射制御装置 | |
JP4244824B2 (ja) | 内燃機関の燃料噴射制御装置 | |
JP4082096B2 (ja) | 内燃機関のトルク制御装置 | |
JP2000136750A (ja) | 車両の駆動制御方法及びそのシステム | |
JPH02298642A (ja) | 自動変速機付車両用エンジンの制御装置 | |
JP2696444B2 (ja) | 内燃機関の燃料供給制御装置 | |
JPH0680306B2 (ja) | 内燃機関の点火時期制御装置 | |
JP2008267253A (ja) | 内燃機関の制御装置 | |
JPH10196433A (ja) | エンジンの制御装置 | |
JP3967700B2 (ja) | 内燃機関の燃料カットを制御する装置 | |
JP2890651B2 (ja) | 内燃機関の燃料噴射量制御装置 | |
JP2000154748A (ja) | 内燃機関制御装置 | |
JP3865132B2 (ja) | 内燃機関の制御装置 | |
JP2004232477A (ja) | 内燃機関の制御装置 | |
JP2003214216A (ja) | エンジン制御装置及び方法 | |
JP3511670B2 (ja) | エンジンの制御装置 | |
JPH10184430A (ja) | エンジンの排気浄化装置 | |
JPH09280086A (ja) | エンジンの燃焼制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040628 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070406 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070522 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071004 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071116 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20071211 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080204 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110222 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |