JPH10122109A - 内燃機関の点火時期制御装置 - Google Patents

内燃機関の点火時期制御装置

Info

Publication number
JPH10122109A
JPH10122109A JP8274765A JP27476596A JPH10122109A JP H10122109 A JPH10122109 A JP H10122109A JP 8274765 A JP8274765 A JP 8274765A JP 27476596 A JP27476596 A JP 27476596A JP H10122109 A JPH10122109 A JP H10122109A
Authority
JP
Japan
Prior art keywords
ignition
cylinder
time
routine
energization
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.)
Pending
Application number
JP8274765A
Other languages
English (en)
Inventor
Mitsuhiro Nada
光博 灘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP8274765A priority Critical patent/JPH10122109A/ja
Priority to US08/950,475 priority patent/US5871002A/en
Publication of JPH10122109A publication Critical patent/JPH10122109A/ja
Pending legal-status Critical Current

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02PIGNITION, OTHER THAN COMPRESSION IGNITION, FOR INTERNAL-COMBUSTION ENGINES; TESTING OF IGNITION TIMING IN COMPRESSION-IGNITION ENGINES
    • F02P11/00Safety means for electric spark ignition, not otherwise provided for
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02PIGNITION, OTHER THAN COMPRESSION IGNITION, FOR INTERNAL-COMBUSTION ENGINES; TESTING OF IGNITION TIMING IN COMPRESSION-IGNITION ENGINES
    • F02P5/00Advancing or retarding ignition; Control therefor
    • F02P5/04Advancing or retarding ignition; Control therefor automatically, as a function of the working conditions of the engine or vehicle or of the atmospheric conditions
    • F02P5/145Advancing 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/15Digital data processing
    • F02P5/1502Digital data processing using one central computing unit
    • F02P5/1506Digital data processing using one central computing unit with particular means during starting
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine 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)
  • Ignition Installations For Internal Combustion Engines (AREA)
  • Electrical Control Of Ignition Timing (AREA)

Abstract

(57)【要約】 【課題】エンジン始動時において、極低温時等で始動性
が悪化して回転上昇が遅れた場合においても、始動性が
低下することがない内燃機関の点火時期制御装置を提供
する。 【解決手段】点火時期制御装置は、内燃機関の回転を検
出し、所定回転角位置にてクランク角信号neを出力す
るクランクポジションセンサ20と、クランク角信号n
e及びエンジンの運転状態に応じて点火コイル28の通
電時間及び点火時期を算出して信号を出力するECU
(電子制御ユニット)40と、前記ECU40からの出
力信号に基づいて点火コイル28の一次電流を制御する
イグナイタ27Aとを備えている。ECU40は、始動
時においては、非始動時の運転状態のときよりも大きい
ロック防止点火時間に基づいて、点火コイル28への一
次電流を遮断する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、自動車等に搭載さ
れる内燃機関において、空気及び燃料よりなる混合気に
点火する時期を制御するための点火時期制御装置に関す
るものである。
【0002】
【従来の技術】従来から、内燃機関に設けられた電子進
角式点火装置として、特開昭64−77753号公報に
開示されたものが知られている。この種のものでは、内
燃機関の運転状態に応じて最適な通電時間、及び点火時
期を制御回路にて設定し、制御回路からの出力信号によ
り点火コイルの一次電流を制御するものである。
【0003】そして、エンジンの始動時や、エンジンス
トール直前の極低回転時には点火コイルの一次電流の通
電を所定時間時間(ロック防止点火時間)だけ許可す
る、通電阻止手段を設けて、イグナイタを構成するパワ
ートランジスターや、点火コイルの発熱を防止するよう
にしている。
【0004】
【発明が解決しようとする課題】ところが、従来は始動
時、非始動時にかかわらず、ロック防止点火時間が固定
値で一定であるため、エンジン始動時において、極低温
時等で始動性が悪化して回転上昇が遅れた場合、上記固
定値であると意図しない点火時期にて点火され、始動性
が低下する問題があった。
【0005】本発明は上記問題点を解決するためになさ
れたものであって、エンジン始動時において、極低温時
等で始動性が悪化して回転上昇が遅れた場合において
も、始動性が低下することがない内燃機関の点火時期制
御装置を提供することにある。
【0006】
【課題を解決するための手段】上記問題点を解決するた
め、請求項1記載の発明は、内燃機関の回転を検出し、
所定回転角位置にて回転角信号を出力する回転角センサ
と、上記回転角信号及び内燃機関の運転状態に応じて点
火コイルの通電時間及び点火時期を算出して信号を出力
する演算手段と、前記演算手段からの出力信号に基づい
て点火コイルの一次電流を制御するイグナイタと、前記
点火コイルへの電流供給時間が所定値に達したとき、点
火コイルへの一次電流を遮断する通電阻止手段とを備え
た内燃機関の点火装置において、通電阻止手段は、始動
時においては、非始動時の運転状態のときよりも大きい
所定値に基づいて、点火コイルへの一次電流を遮断する
ことを特徴とする内燃機関の点火時期制御装置をその要
旨としている。
【0007】(作用)請求項1の発明によれば、回転角
センサは、内燃機関の回転を検出し、所定回転角位置に
て回転角信号を出力する。演算手段は、上記回転角信号
及び内燃機関の運転状態に応じて点火コイルの通電時間
及び点火時期を算出して信号を出力する。イグナイタ
は、前記演算手段からの出力信号に基づいて点火コイル
の一次電流を制御する。そして、通電阻止手段は、前記
点火コイルへの電流供給時間が所定値に達したとき、点
火コイルへの一次電流を遮断する。
【0008】又、始動時においては、通電阻止手段は非
始動時の運転状態のときよりも大きい所定値に基づい
て、点火コイルへの一次電流を遮断する。請求項2の発
明によれば、設定変更手段は、始動時においては、所定
値を非始動時の所定値よりも大なる所定値とする。
【0009】
【発明の実施の形態】
(第1の実施の形態)以下、本発明を具体化した一実施
の形態を図1〜図25を参照して説明する。
【0010】図1は本実施の形態が適用される直列4気
筒ガソリンエンジンシステムにおいて、1気筒分を示す
概略構成図である。内燃機関としてのエンジン10は、
シリンダブロック11内に形成された4つのシリンダ1
2と、各シリンダ12内を上下方向に往復移動するピス
トン14と、シリンダ12、シリンダヘッド13及びピ
ストン14上面によって区画形成される燃焼室15と、
ピストン14の往復運動を回転運動に変換するクランク
シャフト16とを備えている。また、シリンダヘッド1
3の上方には、タイミングベルト(図示しない)を介し
てクランクシャフト16と連結されているカムシャフト
19が配設されている。
【0011】クランクシャフト16は、クランクアーム
16a、クランクピン16bによって回転軸から偏心し
た位置に形成されているクランク17を有しており、こ
のクランク17の形成位置は、グループ化された各シリ
ンダ12毎に異なっている。そして、各シリンダ12に
おいてクランク17がどの位置にあるか(ピストン14
が各シリンダ12のどの位置にあるか)を示す指標とし
てクランク角が用いられている。
【0012】また、ピストン14とクランクシャフト1
6とは、ピストン14の下端部とクランクシャフト16
のクランクピン16bとが、それぞれコネクティングロ
ッド18を介して接続されることによって連結されてい
る。そして、各ピストン14が上下方向に往復移動し、
クランク17(クランクピン16b)が回転軸心の周り
を回転することによって、クランクシャフト16が回転
させられる。なお、エンジン10は、その組付に際して
第1気筒#1のピストン14が圧縮上死点となるように
組み付けられている。
【0013】なお、エンジン10における4つの気筒
を、その配列順に第1気筒#1、第2気筒#2、第3気
筒#3及び第4気筒#4とすると、その配列順とは異な
る順序、ここでは第1気筒#1、第3気筒#3、第4気
筒#4及び第2気筒#2の順で、180°CAずつ位相
をずらして各気筒#1〜#4のピストン14が往復動す
る。
【0014】さらに、クランクシャフト16には、回転
角センサとしてのクランクポジションセンサ20を構成
する磁性体クランクロータ21が固定されており、ま
た、クランクシャフト16近傍のシリンダブロック11
には、クランクポジションセンサ20を構成する半導体
磁気センサ25がクランクロータ21に対向するように
配置されている。なお、半導体磁気センサ25は、ホー
ル素子、磁気抵抗素子等の半導体素子等から構成され
る。前記クランクロータには、30°CA毎に被検出歯
が形成されているとともに、1の被検出歯が欠落された
欠落部(不等間隔部)が形成されている。
【0015】シリンダヘッド13には、気筒判別検出手
段としての電磁ピックアップからなるカムポジションセ
ンサ30が配設されている。カムシャフト19には、磁
性体カムロータ31が固定されている。カムロータ31
には、1の被検出歯が形成されており、カムロータ31
が360°(720°CA)回転する毎にカムポジショ
ンセンサ30は被検出歯を検出し、気筒判別信号Gを出
力する。
【0016】上記のクランクポジションセンサ20は、
欠落部が半導体磁気センサ25を通過する際に、クラン
クポジションセンサ20から出力されるクランク角信号
neを基準位置信号とし、その基準位置信号出力後に、
半導体磁気センサ25から出力されるクランク角信号n
eの信号数をカウントする。そして、そのカウンタ値が
所定値に到達した時(すなわち、基準位置信号の出力近
傍時期に該当)に、気筒判別信号Gがカムポジションセ
ンサから出力されているか否かによって、気筒判別並び
に判別がなされた特定のシリンダにおけるクランク角を
検出する。前記クランク角信号は回転角信号に相当す
る。
【0017】従って、2つのセンサ(クランクポジショ
ンセンサ20、カムポジションセンサ30)を備えるだ
けで、マルチシリンダエンジンにおいても特定のシリン
ダにおけるクランク角を検出することが可能となり、点
火すべきシリンダの特定、燃料噴射すべきシリンダの特
定を行うことができる。また、気筒判別信号Gが基準位
置信号の出力時期近傍で出力されるので、基準位置まで
のクランキングで必ず気筒判別を行うことができる。
【0018】そこで、エンジン10の行程に関係する点
火時期制御、燃料噴射時期制御といった各種タイミング
制御は、上記の2つのセンサによって検出されたクラン
ク角(°CA)に基づいて実行されている。
【0019】このほか、シリンダヘッド13には、図1
に示すように各シリンダ12毎にインジェクタ50が配
設されている。各インジェクタ50は所定のクランク角
において燃焼室15内に燃料を供給する。
【0020】エンジン10には、混合気に着火するため
の半導体点火方式の点火装置26が設けられている。こ
の点火装置26は一対のイグナイタ27A,27B、点
火コイルとして各気筒毎に設けられたイグニションコイ
ル28、及び気筒毎の点火プラグ51を備え、これらに
より点火手段を構成している。
【0021】複数の気筒(気筒番号を#1,#2,#
3,#4とする)は、#1と#4の気筒グループと、#
2と#3の気筒グループとの2グループとされ、イグナ
イタ27A,27Bはこれらのグループにそれぞれ対応
して点火駆動する。すなわち、イグナイタ27A,27
Bは外部(後記する電子制御装置)からの点火信号及び
気筒選択信号に基づき、接続されたいずれか一方のイグ
ニションコイル28における一次側コイルへの一次電流
の通電を許容あるいは遮断する。一次側コイルへの通電
が遮断されると、イグニションコイル28の二次側コイ
ルに高圧の二次電圧が発生する。
【0022】この二次電圧は、点火プラグ24の電極間
に電流が流れ(放電が起こり)、火花が発生(点火)す
る。水温センサ23はエンジン10の冷却水の温度(冷
却水温THW)を検出するためのセンサであり、ウォー
タアウトレット等の冷却水の通路部分に取り付けられて
いる。水温センサ23は温度によって抵抗値が大きく変
化するサーミスタを内蔵している。水温センサ23はサ
ーミスタの抵抗値の変化によって冷却水温の変化を検出
する。
【0023】エンジン10の吸気通路には吸入空気量を
検出するためのエアフローメータ24が設けられてい
る。又、この実施の形態においてエンジン10にはその
始動時にクランキングによって回転力を付与するための
図示しないスタータが設けられている。又、このスター
タには、そのオン・オフ動作を検知するスタータスイッ
チ34が設けられている。周知のようにスタータは、図
示しないイグニッションスイッチの操作によりオン・オ
フ動作されるものであり、イグニッションスイッチが操
作されている間はスタータがオン動作されて、スタータ
スイッチ34からスタータ信号gwstaが出力される
ようになっている。
【0024】続いて、本実施の形態に係る内燃機関の点
火時期制御装置の制御系について図2に示す制御ブロッ
ク図を参照して説明する。内燃機関の点火時期制御装置
の制御系は、電子制御ユニット40(以下「ECU」と
いう。)を核として構成されており、ECU40にはエ
ンジン10停止後も所定時間、通電されるものとする。
そして、ECU40によって演算手段、設定変更手段、
第1の算出手段、第2の算出手段、予約手段、点火気筒
選択手段、第1の出力手段、第2の出力手段等が実現さ
れる。
【0025】ECU40は、各種制御プログラムを格納
したROM41を有している。さらに、ECU40は、
ROM41に格納された各種プログラムに基づいて演算
処理を実行するCPU42、CPU42での演算結果、
及び各センサから入力されたデータ等を一時的に記憶す
るRAM43、エンジン10停止時等の電源供給停止時
にRAM43に格納された各種データを保持するための
バックアップRAM44を有している。
【0026】そして、CPU42、ROM41、RAM
43及びバックアップRAM44は、双方向バス45を
介して互いに接続されるとともに、入力インターフェー
ス46及び出力インターフェース47と接続されてい
る。
【0027】入力インターフェース46には、クランク
ポジションセンサ20、水温センサ23、エアーフロー
メータ24、カムポジションセンサ30及びスタータス
イッチ34等が接続されている。そして、各センサから
出力された信号がアナログ信号である場合には、図示し
ないA/Dコンバータによってディジタル信号に変換さ
れた後、双方向バス45に出力される。又、CPU42
には入力インターフェース46を介して図示しないバッ
テリ電圧センサが接続されており、車載バッテリ電圧B
が入力される。そして、CPU42はクランク角信号n
eに基づいてエンジン回転数eneを算出する。
【0028】また、出力インターフェース47には、イ
ンジェクタ50、点火プラグ51等の外部回路が接続さ
れており、これら外部回路は、CPU42において実行
された制御プログラムの演算結果に基づいて作動制御さ
れる。
【0029】さて、上記のように構成された内燃機関の
点火時期制御装置の作用を図3〜図25を参照して説明
する。この実施の形態では、点火気筒と、次の点火気筒
とに対してオーバラップ通電を行うことを可能とした内
燃機関の点火時制御装置としている。
【0030】なお、以下に説明する制御フローチャート
において、下記の1)〜5)に示す各種のフラグが使用
される。これらのフラグは、必要なステップ、或いは、
他の制御時においてセット(オン)、或いはリセット
(オフ)される。又、2)〜5)の各フラグは、点火気
筒及び次点火気筒(この実施形態では、一対の点火気筒
を1つのイグナイタで通電遮断を行うため、正確にはイ
グナイタ)に対応してそれぞれ設けられたフラグであ
る。
【0031】1)xspkast:始動後点火実行判定
フラグ 2)xespkigt:ne割り込み点火残務処理依頼
フラグ 3)xigtm:IGT(イグナイタ、以下同じ) O
Nモニタフラグ 4)xihigton:始動後IGT ON 再予約禁
止フラグ 5)xihigtof:始動後IGT OFF再予約禁
止フラグ [1.メインルーチン]まず、メインルーチンを説明す
る。図20はメインルーチンを示し、所定時間毎に実項
される。
【0032】このルーチンに入ると、ステップ1におい
て、車載バッテリ電圧Bとクランク角信号neとを読み
込み、両者による2次元マップに基づいて要求通電時間
etigtonを算出し、この算出した値を所定のレジ
スタに格納し、このメインルーチンを一旦終了する。
尚、上記二次元マップは、予め実験値により求められて
おり、RAM43に格納されている。
【0033】[2.1.点火時期制御ルーチン]図3は
この点火時期制御装置における点火時期制御ルーチンを
示し、この点火時期制御ルーチンは、イグナイタ27
A,27Bへの通電開始と、通電遮断制御を行うための
ものであり、 詳しくは、 始動時と始動後の通電処理タイ
ミング制御を行うためのものである。 このルーチンはク
ランクシャフト16が30゜CA(CAはcrank angle
の略称である)回転する毎、すなわち、neが入力され
る毎に割り込み処理される。
【0034】この処理ルーチンに入ると、ステップ10
においては、現在のne割り込み時におけるクランクカ
ウンタeccrnkのラッチデータeccrnklが0
以上か否かを判定する。なお、クランクカウンタecc
rnkは、クランキングが行われる前の初期値としては
マイナスの数値がセットされている。
【0035】又、クランクカウンタeccrnkは、図
22の実線(なお、説明の便宜上、実線で表示している
が、実際は0,1,2,3のように整数であるため、階
段状となる。)で示すようにクランクポジションセンサ
20から入力されてきたパルス波であるクランク角信号
neを順次カウントし、「0」〜「23」の値を順にラ
ッチデータeccrnklとしてRAM43に格納す
る。又、このクランクカウンタeccrnkは360°
CAのタイミングのときに、クランクカウンタeccr
nkの値が「12」を超えているときは、0にリセット
(初期化)されるとともに、「12」以下のときは「1
2」に修正される。
【0036】このように各気筒のTDC(上死点)タイ
ミングのときにクランクカウンタeccrnkの修正を
行う。又、気筒判別信号Gが入力されたときは、クラン
クカウンタeccrnkのカウント値を「0」にリセッ
トする。
【0037】クランクカウンタeccrnkが0未満の
場合、すなわち、クランク角信号ne不確定時には、こ
の判定を「NO」として一旦この点火時期制御ルーチン
を終了する。
【0038】ステップ10において、クランクカウンタ
のラッチデータeccrnklが0以上の場合には、ス
テップ20に移行する。ステップ20においては、クラ
ンクカウンタeccrnk破壊時の処理を行う。この
「クランクカウンタeccrnk破壊時の処理」につい
ては、後述する。
【0039】前記ステップ20のクランクカウンタec
crnk破壊時の処理を終了すると、ステップ30に移
行する。このステップ30では点火気筒espki及び
出力点火次気筒espkinxtの決定を行う。この
「点火気筒決定の処理ルーチン」については、後述す
る。
【0040】前記ステップ30の点火気筒決定を行った
後、ステップ40に移行する。ステップ40において
は、点火気筒のTDCからの偏差角度ecatdcがB
TDC(上死点前)90°CAのタイミング値、すなわ
ちBTDC90°CAに対応するカウント値(この実施
の形態では、4気筒であるため3カウントである。な
お、気筒数が6気筒の場合は、1カウントとなる。)に
達していた場合、IGTオフ時刻の予約の予約処理開始
許可を行う。すなわち、ステップ30で得られた該当す
る点火気筒espkiに関する始動後IGT OFF再
予約禁止フラグxihigtofを「オフ」にリセット
する。
【0041】なお、点火気筒のTDCからの偏差角度e
catdcは前記ステップ30の「点火気筒決定」の処
理の際に、算出されるが、詳細は後述する。次のステッ
プ50においては、始動時点火モードか否かを判定す
る。すなわち、このステップでは、始動後点火実行判定
フラグxspkastが「オフ」にリセットされている
場合は、始動時点火モードであるとして「YES」と判
定し、そうでない場合、すなわち、「オン」にセットさ
れている場合には始動時点火モードではないとして「N
O」と判定する。なお、この始動後点火実行判定フラグ
xspkastは、後述するIGT OFF割り込み時
(この割り込みの説明が必要)、エンジンストール時、
又は始動後通電開始予約時においてエンジン回転数が急
低下で始動モードに入った時に、変更され、モード変化
する。
【0042】始動時点火モードである場合には、ステッ
プ60に移行して、ステップ30において決定された点
火気筒espkiに対し始動後点火未実施であるか、否
かを判定する。この判定は、始動後IGT OFF再予
約禁止フラグxihigtofが「オフ」にリセットさ
れていた場合には、始動後点火未実施であるとして「Y
ES」と判定し、そうでない場合には始動後点火未実施
ではないとして「NO」と判定する。
【0043】始動後点火未実施ではないとして判定され
た場合には、この点火時期制御ルーチンを抜け出して、
この後の処理を一旦終了する。始動後点火未実施である
場合には、ステップ70に移行する。ステップ70にお
いては、始動時の固定点火処理を行う。この始動時の固
定点火処理の詳細については、後述する。
【0044】この始動時の固定点火処理を行った後、ス
テップ90において、出力点火次気筒espkinxt
の始動後通電開始予約を許可する。すなわち、出力点火
次気筒espkinxtの始動後IGT ON 再予約
禁止フラグxihigtonを「オフ」にリセットす
る。
【0045】このステップ90の処理を終了すると、こ
の点火時期制御ルーチンを抜け出して、この後の処理を
一旦終了する。前記ステップ50において、始動時点火
モードでないと判定した場合には、ステップ100に移
行する。
【0046】同ステップ100においては、30°CA
の所要時間をラッチする。このラッチデータet3xon
は、後述する「通電開始時刻予約」と、「通電遮断時刻
予約」においては、同じ30°CAの時間を使用するた
めに共通の時間とするのである。なお、30°CAの所
要時間は、後記ステップ30の「点火気筒決定」におい
て説明される各気筒TDCからの偏差角度ecatdc
に基づいて算出される。従って、この30°CAの所要
時間は各気筒TDCの直前の30°CAの所要時間とな
る。
【0047】ステップ110においては、通電開始時刻
予約許可がなされているか否かを判定する。この判定
は、点火気筒espkiの始動後IGT ON 再予約
禁止フラグxihigtonが「オフ」にリセットされ
ているか否かにより行う。「オフ」にリセットされてい
ない場合には、この判定を「NO」としてステップ13
0にジャンプする。又、「オフ」にリセットされている
場合には、この判定を「YES」とし、ステップ120
に移行する。
【0048】ステップ120においては、点火気筒es
pkiの「通電開始時刻予約」を行う。この処理の詳細
については後述する。ステップ120の処理を終了する
と、ステップ130に移行し、上記の開始時刻予約時に
おいて点火モードに変化なしか否かを判定する。この判
定は、始動後点火実行判定フラグxspkastが「オ
ン」にセットされているか、否かに基づいて行う。点火
モードに変化がある場合、すなわち、点火実行判定フラ
グxspkastが「オフ」にリセットされている場合
は、「NO」と判定し、この処理ルーチンを抜け出し、
その後の処理を一旦終了する。
【0049】反対に、点火実行判定フラグxspkas
tが「オン」にセットされている場合は、「YES」と
判定し、ステップ140に移行する。ステップ140に
おいては、通電遮断時刻予約許可がなされているか、否
かを判定する。この判定は、点火気筒espkiの始動
後IGT OFF再予約禁止フラグxihigtofを
「オフ」にリセットされているか否かにより行う。始動
後IGT OFF再予約禁止フラグxihigtofを
「オン」にセットされている場合には、このステップの
判定を「NO」とし、ステップ160にジャンプする。
始動後IGT OFF再予約禁止フラグxihigto
fが「オフ」にリセットされている場合には、このステ
ップの判定を「YES」とし、ステップ150に移行す
る。
【0050】ステップ150においては、「通電遮断時
刻予約」を行う。なお、この「通電遮断予約」処理の詳
細については後述する。前記ステップ150の処理が終
了後、ステップ160に移行し、「次気筒espkin
xtのIGT ON処理開始タイミング操作」を行う。
【0051】すなわち、点火気筒TDCからの偏差角度
ecatdcが次気筒予約タイミング値(この実施の形
態では、4気筒であるため、BTDC240°CAとさ
れている。なお、6気筒の場合にはBTDC180°C
Aとされている。)に対応するカウント値に達していた
場合、IGT オン時刻の予約処理開始許可を行う。す
なわち、前記カウント値におけるタイミングにて次気筒
の通電開始予約処理を行うため、ステップ30で得られ
た該当する点火気筒espkiに関する始動後IGT
ON 再予約禁止フラグxihigtonを「オフ」に
リセットする。
【0052】なお、点火気筒TDCからの偏差角度ec
atdcは前記ステップ30の「点火気筒決定」の処理
の際に、算出されるが、詳細は後述する次にステップ1
70において、次気筒の通電開始時刻予約許可の条件が
共に成立しているか否かを判定する。
【0053】この判定条件は下記の通りである。 1)次気筒の始動後IGT ON 再予約禁止フラグx
ihigtonが「オフ」にリセットされていること。
【0054】2)点火気筒espkiのTDCから現在
位置までの角度(カウント値)が2以下(60°CA以
下)であること。上記2条件は、始動直後にBTDC2
40°CAから、出力点火次気筒espkinxtの通
電開始時刻予約を許可するための条件である。
【0055】上記1)及び2)の条件が共に成立してい
る場合には、このステップの判定を「YES」とし、そ
うでない場合には「NO」と判定する。前記ステップ1
70において、「NO」と判定した場合には、この点火
時期制御ルーチンを抜け出して、この後の処理を一旦終
了する。
【0056】前記ステップ170において、「YES」
と判定した場合には、ステップ180に移行する。ステ
ップ180においては、「通電開始時刻予約」処理を行
う。なお、この「通電開始時刻予約」処理は、後で詳述
する。
【0057】前記ステップ180の「通電開始時刻予
約」処理を終了すると、この点火時期制御ルーチンを抜
け出して、この後の処理を一旦終了する。この処理によ
り、点火気筒espkiと出力点火次気筒espkin
xtとのオーバラップ通電が可能となる。 [2.2.クランクカウンタeccrnk破壊時の処理
ルーチン]次に前記点火時期制御ルーチンにおける図3
のステップ20の「クランクカウンタeccrnk破壊
時の処理ルーチン」を図11〜図13を参照して説明す
る。
【0058】図11は「クランクカウンタeccrnk
破壊時の制御ルーチン」を示し、前記ステップ20に移
行したときに、割り込み処理される割り込みルーチンと
されている。この処理ルーチンに移行すると、ステップ
210において、クランクカウンタeccrnkが破壊
されているか否か、すなわち、下記の1)或いは2)の
条件が成立しているか否かを判定する。クランクカウン
タeccrnkが破壊されていない場合には、ステップ
260にジャンプする。
【0059】この条件はクランクカウンタeccrnk
が破壊されている時の条件である。 1)今回のne割り込みでのクランクカウンタeccr
nkのラッチデータがeccrnkl=12でかつ、前
回のne割り込みでのクランクカウンタのラッチデータ
eccrnklOがeccrnklO≠11 2)今回のne割り込みでのクランクカウンタeccr
nkのラッチデータがeccrnkl=0でかつ、前回
のne割り込みでのクランクカウンタeccrnkのラ
ッチデータeccrnklOがeccrnklO≠23 以下に、クランクカウンタeccrnkが破壊されてい
ない場合と、破壊されていると判定される場合の例を説
明する。
【0060】図22で説明したようにこのクランクカウ
ンタeccrnkは360°CA、又は気筒判別信号G
がECU40に入力されるごとに修正或いはリセット
(初期化)修正する。
【0061】図22の(a)の場合は、ノイズ等の何ら
かの原因により、クランク角信号neが多発し、或い
は、G信号にノイズが発生した場合を示している。この
場合には、クランクカウンタeccrnkの値は正常の
場合よりも大きくなり、360°CAの時点(図22の
A)でクランクカウンタeccrnkの値は、前回のn
e割り込みでの値が「23」となり、今回のne割り込
みではクランクカウンタeccrnkを0にリセットす
る。従って、この場合には、クランクカウンタeccr
nk破壊は検知はされない。しかし、この場合には、次
のBの時(720°CA)に気筒判別信号Gを入力され
ると、クランクカウンタeccrnkは「0」となって
初期化されるため、問題はない。
【0062】又、図22の(b)の場合は、クランク角
信号neが抜けてしまった場合を示している。この場合
には、クランクカウンタeccrnkの値は正常の場合
よりも小さくなり、360°CAの時点(図22のA)
でクランクカウンタeccrnkの値は、前回のne割
り込みでの値が「12」以下となり、今回のne割り込
みではクランクカウンタeccrnkを「12」に修正
する。従って、この場合には、クランクカウンタecc
rnk破壊を検知する。すなわち、条件1)を満足する
ため、このステップ210の判定を「YES」とする。
【0063】前記ステップ210において、クランクカ
ウンタeccrnkが破壊していると判定した場合に
は、ステップ220に移行する。ステップ220におい
ては、IGT ONモニタフラグの初期化と、即時点火
処理を行う。このステップ220の詳細を図12に示
す。
【0064】図12において、ステップ221では、割
り込み禁止処理を行う。次にステップ222において
は、各イグナイタ27A,27B毎に下記の処理を行
う。 1) IGT ONモニタフラグxigtmの初期化 2) ne割り込み点火残務処理依頼フラグxspig
tの初期化 3) 気筒毎のI/O関数の選択 4) 即時点火 なお、IGT ONモニタフラグxigtm及びne割
り込み点火残務処理依頼フラグxspigtは、この実
施の形態ではイグナイタ27A,27Bと対応するよう
にして設けられている。
【0065】又、前記気筒毎のI/O関数の選択とは、
次の4)の即時点火を行うべくI/O出力ポートのアド
レスをタイムド出力用I/O関数アドレステーブルに基
づいて選択するのである。そして、4)の即時点火と
は、3)において選択されたアドレスに対応したイグナ
イタに対して、通電をオフ状態にすべく、予約をオフに
するのである。
【0066】このステップ222は、イグニッション
オン中、又はオン予約後に、クランクカウンタeccr
nk修正となった時、TDCタイミングで即時点火を行
い、次気筒はIGT オンから始められるようになる。
【0067】このステップ222の処理が終了すると、
ステップ223において割り込み許可をし、この処理ル
ーチンを抜け出る。すなわち、図11に示すステップ2
30に移行する。
【0068】ステップ230では、次気筒点火に備え、
始動後IGT ON/OFF再予約禁止フラグの初期化
を行う。図13は、このステップ230の詳細を示すフ
ローチャートである。
【0069】図13において、ステップ231では、各
イグナイタ27A,27B毎に下記の処理を行う。1つ
のイグナイタに対応する、始動後IGT ON再予約禁
止フラグxihightonを「オフ」にセットし、他
の1つのイグナイタに対応する始動後IGT ON再予
約禁止フラグxihightonを「オン」にセットす
る。
【0070】又、1つのイグナイタに対応する、始動後
IGT OFF再予約禁止フラグxihightoff
を「オン」にセットし、他の1つのイグナイタに対応す
る始動後IGT OFF再予約禁止フラグxihigh
toffを「オン」にセットする。
【0071】なお、6気筒であって、イグナイタが一対
の気筒の点火分を駆動する場合には、3つのイグナイタ
が必要となるため、この場合には、1つのイグナイタに
対応する、始動後IGT ON再予約禁止フラグxih
ightonを「オフ」にセットし、他の2つのイグナ
イタに対応する始動後IGT ON再予約禁止フラグx
ihightonを「オン」にセットする。
【0072】又、1つのイグナイタに対応する、始動後
IGT OFF再予約禁止フラグxihightoff
を「オン」にセットし、他の2つのイグナイタに対応す
る始動後IGT OFF再予約禁止フラグxihigh
toffを「オン」にセットする。
【0073】この処理ルーチンを終了した後、図11の
ステップ260に移行する。前記ステップ210、又は
ステップ230からステップ260に移行すると、ステ
ップ260ではクランクカウンタのラッチデータecc
rnklを前回のラッチデータeccrnklOとして
格納(更新)し、このeccrnk破壊時の制御ルーチ
ンを抜け出る。 [2.3.点火気筒の決定]次に図3の前記「点火時期
制御ルーチン」のステップ30の「点火気筒決定」を説
明する。
【0074】前記ステップ30の「点火気筒決定」は図
19のフローチャートで示される割り込みルーチンで実
行する。さて、図19のステップ301に移行すると、
earcyl算出気筒判別識別子eccylをクランク
カウンタから算出する。この算出は、下記の式によって
行う。
【0075】 eccyl =((eccrnkl +ENEIRP−1) /ENEIRP) %ENCYL なお、上記式中、ENEIRPは各気筒TDC間のne
割り込み回数であり、この実施の形態では、4気筒であ
るため、180/30( 回) =6(回)となる。なお、
6気筒の場合には、120/30( 回) =4(回)とな
る。又、ENCYLは気筒数を表す。この実施の形態で
は、4気筒であるため、ENCYLは4となる。又、%
は剰余算出演算子を表し、整数( 0を含む) の剰余値を
算出するためのものである。従って、この式では、ec
cylは整数( 0を含む) として得られる。例えば、4
気筒の場合おいて、eccrnklが13の場合には、
eccylは3となる。
【0076】次に、ステップ302において、使用する
イグナイタの判別インデックスespkiと、次の気筒
のespkiであるespkinxtとを次式にて算出
する。
【0077】1) espki=eccyl%ENIGT 2) espkinxt=(espki+1)%ENIG
T なお、ENIGTはIGTの出力本数であり、この実施
の形態では4気筒であるため「2」とされている。
【0078】この結果、このステップ302において
は、図25に示すように前点火気筒ATDC30°CA
〜点火気筒TDCを同一espki値となるようにし、
この間における使用するイグナイタの制御が可能とされ
ている。
【0079】上記1)式により、直列4気筒の場合に、
点火気筒列に対するespkiの割付は表1に示す通り
となる。
【0080】
【表1】 なお、表1中、L4は直列4気筒、L6は直列6気筒、
V6はV型6気筒を表している。
【0081】上記ステップ302の処理を行った後、ス
テップ303においては、各気筒TDCからの偏差角度
ecatdcをその時のne割り込みにおけるクランク
カウンタ( ラッチデータ) eccrnklと、各気筒T
DC間のne割り込み回数ENEIRPから算出する。
すなわち、下式にて算出する。
【0082】 ecatdc=eccrnkl%ENEIRP なお、ecatdcは各気筒TDCからの偏差角度を表
すが、カウント値として得られる。この場合、1カウン
トは30°CAに相当する。
【0083】上記のように算出された例を図25に示
す。上記ステップ303の処理が終了すると、この処理
ルーチンを抜け出る。なお、このステップ30の「点火
気筒決定ルーチン」は点火気筒選択手段を構成する。 [2.4.始動時の固定点火処理ルーチン]次に前記点
火時期制御ルーチンにおける図3のステップ70の「始
動時の固定点火処理ルーチン」を図14を参照して説明
する。
【0084】図14の「始動時の固定点火処理ルーチ
ン」は、前記ステップ70に移行したとき、割り込み処
理する割り込みルーチンとされている。この処理ルーチ
ンに移行すると、ステップ701において、割込み禁止
処理を行い、ステップ702に移行する。ステップ70
2においては、下記の処理を行う。
【0085】1)気筒毎のI/O関数の選択 2)BTDC30°CAタイミング? 3)即時通電開始 上記1)の気筒毎のI/O関数の選択とは、ステップ3
0にて決定された点火気筒espkiに基づきタイムド
出力用I/O関数アドレステーブルを用いて気筒毎のI
/O関数を割り出す。このタイムド出力用I/O関数ア
ドレステーブルは予めROM41に格納されている。
【0086】2),3)では、点火気筒のTDCからの
偏差角度ecatdcがBTDC30°CAのタイミン
グ値、すなわち、BTDC30°CAに対応するカウン
ト値(この実施の形態では、4気筒であるため、5カウ
ントである。なお、気筒数が6気筒の場合には3カウン
トである。)であった場合に即時通電開始を行う。
【0087】ステップ703においては、以下の条件が
成立しているか否かを判定する。 1)TDCタイミング 2)eccrnk確定時のne割り込みではない 上記1)は点火気筒のTDCからの偏差角度ecatd
cがTDCのタイミング値、すなわち、TDCに対応す
るカウント値が0であるか否かの条件である。
【0088】上記2)は、IGT ONモニタフラグx
igtmが「オン」となっているか否かである。クラン
クカウンタeccrnkの確定は、TDCで行われるた
め、仮にこの条件がない場合には、いきなり点火から開
始されてしまうため、この条件が必要なのである。
【0089】上記1)及び2)の条件が共に成立した場
合、すなわち、TDCタイミングであり、かつIGT
ONモニタフラグxigtmが「オン」となっている場
合には、このステップの判定を「YES」とし、ステッ
プ706に移行する。
【0090】上記1)及び2)の条件が共に成立しない
場合には、ステップ704に移行する。ステップ704
においては、水温THWが所定温度A(この実施の形態
では、95℃)以下の場合には、即時点火を行うべく、
点火気筒に係るイグナイタの通電を遮断する。この通電
により即時点火が行われる。この結果、前記ステップ7
02においてBTDC30°CAのときに通電が行わ
れ、ステップ704においてTDCのときに通電遮断が
行われるのである。
【0091】又、ステップ704において、水温が所定
温度A(この実施の形態では95℃)以上の場合には、
シリンダ12が暖まっていて、シリンダ12内の火炎が
伝播しすぎ、ノック発生の虞があるため、点火遅角を行
う。この遅角量の演算は下式にて行う。
【0092】 点火遅角量=ezne30l+EARTD*et3x なお、ezne30lは、30°CA割り込み発生時刻
のラッチデータ、et3xは、30°CAの所要時間、
EARTDは定数である。
【0093】ステップ704の処理を終了すると、ステ
ップ706に移行して、割り込み許可処理を行い、この
「始動時の固定点火処理ルーチン」を抜け出る。 [2.5.通電開始時刻予約処理ルーチン]次に、前記
点火時期制御ルーチンにおける図3のステップ120及
びステップ180の「通電開始時刻予約処理ルーチン」
を図15を参照して説明する。
【0094】図15の「通電開始時刻予約処理ルーチ
ン」は、前記ステップ120又はステップ180に移行
したとき、コールされるサブルーチンとされている。こ
の処理ルーチンに移行すると、まずステップ1210に
おいて、出力点火角度t_aopの算出を行う。この算
出は、図17に示す「点火角度算出ルーチン」をコール
し、このルーチンを処理することにより行う。この「点
火角度算出ルーチン」については、後述する。
【0095】次のステップ1230においては、ステッ
プ1210にて得られた出力点火角度t_aopをラッ
チする。これは通電遮断時刻予約時の進角ガードのため
に、ラッチしておくのである。次のステップ1240で
は、ドエル角(通電継続時間の角度換算値)の反映を行
う。すなわち、下記の式にてドエル角の演算を行う。
【0096】t _aop (ドエル角)=t _aop +etigto
n *EA30IGT/et3xon 上記式中、etigton は必要通電時間(図20で示すメイ
ンルーチンで得られる)、EA30IGTは時間を角度
へ変換するときの定数、et3xon は30°CA所用時間
のラッチデータである。上記式により、通電継続時間が
最も現在時刻に近い30°CA所用時間にて算出するこ
とになる。
【0097】次のステップ1250においては、通電開
始のタイミングの算出を行う。このステップ1250
は、第1の算出手段及び第2の算出手段を構成してい
る。この算出は、図18に示す「eacntcr(通電
開始タイミング又は通電遮断タイミング)とearst
ca(直近のne割り込みからTDCまでの残余角度)
の算出ルーチン」をコールし、このルーチンを処理する
ことにより行う。この「eacntcrとearstc
aの算出」サブルーチンについては、後述する。
【0098】次のステップ1260においては、通電開
始予約のne割り込みタイミングか否かを判定する。す
なわち、ステップ1250で得た通電開始タイミング
(前記ステップ1250では通電開始算出であるため)
eacntcrが30°CA未満であるか否かを判定す
る。この判定は、直近のne割り込みで通電予約処理す
るための処理である。
【0099】前記ステップ1260において、通電開始
タイミングeacntcrが30°CA未満である場合
には、「YES」と判定し、ステップ1270に移行す
る。ステップ1260で、通電開始タイミングeacn
tcrが30°CA以上である場合には、「NO」と判
定し、この処理ルーチンを抜け出る。
【0100】ステップ1270においては、次サイクル
まで通電開始時刻予約の禁止処理を行う。この処理は、
同一気筒(この実施形態では、同一イグナイタ)に連続
して通電することを禁止するために行うのである。この
ステップでは、図9の「xihigtonの操作ルーチ
ン」をコールして、実行処理する。
【0101】この図9のルーチンにおいて、ステップ1
271では下記の処理を実行する。 exspk[i].xihigton←t_phase 上記において、iは使用するイグナイタの割付番号であ
り、t_phaseはフラグ書き込み用のON/OFF
データである。
【0102】前記ステップ1270でコールした場合に
は、iは出力イグナイタ該当番号であり、t_phas
eは「オン」となる。すなわち、使用するイグナイタに
係る始動後IGT ON 再予約禁止フラグxihig
tonを「オン」にセットする。
【0103】次のステップ1280においては、下式に
より通電開始時刻t_zcprigtの算出を行う。 t _zcprigt =ezne30l+earstca*et3xon/EA30TOT −
EESPKLAG 上記式において、ezne30lは30°CAタイミン
グの時刻ラッチデータ、earsctaは直近のne割
り込みからTDCまでの残余角度、EA30TOTはe
t3xonを用い角度を時間へ変換する時の定数、et
3xonは30°CA所用時間のラッチデータである。
又、EESPKLAGはハード系の点火遅れ時間に係る
定数である。
【0104】ステップ1280の後、ステップ1300
においては、下記の1),2)の条件が共に成立してい
るか否かの判定を行う。 1)始動時点火モードへ移行可能(BTDC30°CA
以前) 2)回転急低下発生 上記1)における始動時点火モードへ移行可能とは、出
力するイグナイタに関して、現在位置から点火気筒のT
DCまでの角度eccrnka(なお、説明の便宜上、
これをカウンタということがある。)が1カウントを超
えている場合をいう。この1カウントとは、この実施形
態では、30°CAに相当する。
【0105】又、2)の回転急低下発生とは、エンジン
回転数が急低下した場合をいう。この両条件が共に成立
している場合には、このステップの判定を「YES」と
し、ステップ1400に移行する。又、この両条件の少
なくとも1つが成立していない場合には、このステップ
の判定を[NO」とし、ステップ1500に移行する。
【0106】ステップ1400においては、ステップ1
300において「YES」と判定しているため、通電開
始予約時、回転急低下で始動後から始動時に変化してい
る場合であるとして、図8の「始動時点火モードへ移行
ルーチン」をコールして、実行処理する。ステップ14
00は予約手段を構成している。
【0107】この図8のルーチンにおいて、ステップ1
410では、始動後点火実行判定フラグexspkas
tを「オフ」にリセットする。この図8のルーチンを処
理すると、すなわち、図15のステップ1400の処理
が終了すると、この「通電開始時刻予約処理ルーチン」
を抜け出る。
【0108】又、前記ステップ1300において、条件
が成立せず「NO」と判定した場合、ステップ1500
においては、通電開始時刻のセットを行う。すなわち、
このステップ1500に移行すると、図5の「通電時刻
のセットルーチン」をコールして、実行処理する。 [2.5.1.通電時刻のセットルーチン]図5の「通
電時刻のセットルーチン」について説明する。
【0109】このルーチンは、前記ステップ1500等
に移行したとき、コールされるサブルーチンとされてい
る。このルーチンにおいて、ステップ1510では割り
込み禁止処理を行い、ステップ1520に移行する。ス
テップ1520においては、使用するイグナイタの割付
番号に対応したタイムド出力用I/O関数のアドレスを
セットする。次のステップ1530においては、予約時
刻t_timと、イグナイタポートへの出力予約位相t
_phaseを対応するタイマのレジスタに格納する。
【0110】すなわち、このルーチンでは、該当する気
筒のタイムド出力用I/O関数に係るタイマ計時用のレ
ジスタを選択し、その選択したレジスタに対して予約時
刻t_timと、選択した位相t_phase(通電で
あれば「オン」、遮断であれば「オフ」)が格納される
のである。
【0111】ここでは図15のステップ1500におい
てコールし、通電開始時刻の予約であるため、前記予約
時刻t_timは、通電開始時刻t_zcprigtで
あり、出力予約位相t_phaseは「オン」である。
そして、これらの値を対応するタイマのレジスタに格納
する。
【0112】なお、タイマはそのレジスタに格納された
予約時刻t_timに基いて計時し、タイムアップする
と、選択した位相t_phase(通電であれば「オ
ン」、遮断であれば「オフ」)に従ってイグナイタポー
トへ信号を出力する。
【0113】次のステップ1540においては、割り込
み許可処理を行い、この「通電時刻セット処理ルーチ
ン」が終了し、図15の「通電開始時刻予約処理ルーチ
ン」を抜け出る。 [2.5.2.点火角度算出ルーチン]次に、前記図1
5のステップ1210等において、コールして実行処理
する「点火角度算出ルーチン」を図17を参照して説明
する。
【0114】このルーチンにおいて、ステップ1211
においては、点火実行気筒TDCを基準としたカウンタ
t_ccrnkaの作成の処理を行う。すなわち、下記
1)〜4)の処理を行う。
【0115】1)カウンタ作成 2)オーバラップタイミングの時、オーバラップ分修正 3)TDCタイミングの時、点火TDC値に変換 4)データ更新上記1)のカウンタt_ccrnkaの
作成は、下式から算出する。
【0116】 t_ccrnka=ENEIRP−ecatdc 上記式により現在位置からTDCまでの角度が得られ
る。なお、ENEIRPは各気筒TDC間のne割り込
み回数である。4気筒では、各気筒TDC間は180°
CAであり、ne割り込みは30°CAであるため、各
気筒TDC間のENEIRPは180/30の計算によ
り、6回となる。
【0117】又、6気筒では、各気筒TDC間は120
°CAであり、ne割り込みは30°CAであるため、
各気筒TDC間のENEIRPは120/30の計算に
より、4回である。ecatdcは点火TDCからの偏
差角度である。
【0118】次に、上記2)の、オーバラップタイミン
グの時とは、通電する気筒判定の識別子t_idxが点
火気筒espkiでなく(t_idx≠espki)、
かつ点火TDCからの偏差角度ecatdcが0でない
場合(ecatdc≠0)である。
【0119】上記の条件を満たしているとき、オーバラ
ップタイミングの時であるとして、t_ccrnka+
ENEIRPを算出して、この値を新たなt_ccrn
kaとする。
【0120】又、3)のTDCタイミングの時とは、通
電する気筒判定の識別子t_idxが点火気筒espk
iであって(t_idx=espki)、かつ、点火T
DCからの偏差角度ecatdcがecatdc=0の
場合である。
【0121】上記1)、2)、3)により、カウンタt
_ccrnkaを算出すると、4)のデータ更新を行
う。すなわち、通電する気筒判定の識別子t_idxに
対応する、「現在のne割り込みから点火までの角度e
ccrnka」のレジスタに対し上記のように得られた
t_ccrnkaの値を入れる。
【0122】図23において、上記eccrnkaにお
けるTDCとBTDCとの関係が図示されている。この
図に示すように4気筒の場合にはeccrnkaはTD
CからBTDC240°CAの間では0から8までの値
をとり、6気筒の場合には、TDCからBTDC180
°CAの間において0から6の値をとるのである。
【0123】次にステップ1212に移行し、要求点火
角度の算出を行う。ここでは、下記の1)〜3)の算出
を行う。 1) 遅角補正量の算出 ここでは、気筒別遅角補正量の算出を行うのである。こ
れは気筒毎に点火時期にノックが発生したり、ノックが
発生しやすい気筒がある場合は予めマップ化されてお
り、該当気筒がノックの発生しやすい気筒の場合には、
その気筒を選択して図示しないマップを参照して遅角補
正量を算出するのである。
【0124】2) アイドル時の点火時期の算出 3) 最終点火時期eaopの算出 次にステップ1213において、出力用に補正した点火
角度の算出を行う。これはハードでは、点火遅れが存在
するため、ハードの点火時期よりもソフト上で早出しを
行うための処理である。具体的には下式にて算出する。
【0125】(eaop−EAHRD)*EAOP なお、上記式中EAHRDは、クランクカウンタecc
rnkと実機のオフセット角、EAOPは換算係数であ
る。
【0126】上記のステップを終了すると、「点火角度
算出ルーチン」を終了する。 [2.5.3.通電開始等のタイミングの算出]次に前
記図15のステップ1250等において、コールする
「eacntcr(通電開始タイミング又は通電遮断タ
イミング)とearstca(直近のne割り込みから
TDCまでの残余角度)の算出ルーチン」を図18を参
照して説明する。
【0127】このルーチンに移行すると、ステップ12
51においては、現在のne割り込みから通電開始(又
は通電遮断)までの角度t_actosの算出を下式に
基づいて行う。
【0128】 t _actos=eccrnka[t _idx ]−(t_aop −EMPUADV ) 上記式中、eccrnka[ t_idx] は通電する気
筒判定の識別子t_idxに係る現在位置からTDCま
での角度(カウント値)である。t_aopは出力点火
角度、EMPUADVは定数である。
【0129】上記算出の後、ステップ1252において
は、通電開始(又は通電遮断)直近のne割り込みから
通電開始(又は通電遮断)までの偏差角度t_arst
caの算出を行う。すなわち、上記ステップ1251で
得られた角度t_actosの下位バイトを角度t_a
rstcaとするのである。
【0130】次にステップ1253において、ne割り
込みから通電開始(又は通電遮断)までの角度t_ar
stcaの下限ガード処理、すなわち以下の1)及び
2)の処理を行う。
【0131】1)下限ガード値t_esagd算出 下限ガード値t_esagd算出は、下式にて算出す
る。 t _esagd =ene *EKESAGD なお、EKESAGDは下限ガード値を求めるため、余
裕時間を角度に変換するための定数であり、eneはエ
ンジン回転数である。
【0132】2)30°CA前出し処理 前出し処理とは、通電(又は遮断)直近ne割り込みか
ら通電(又は遮断)実行時刻までに余裕が無いとき、以
下の処理を行うことである。
【0133】(a) 通電(又は遮断)実行までに30
°CA以上の余裕があるとき、すなわち、ステップ12
51で求めたt_actosが、t_actos≧30
°CAのとき、t_actos及びt_arstcaを
次のようにさらに算出する。
【0134】 t_actos=t_actos−30(°CA) t_arstca=t_arstca+30(°CA) (b)30°CA以上の余裕がないとき(即、予約)、
すなわち、t_actos<30°CAのとき、t_a
ctos及びt_arstcaを次のように置き換え
る。
【0135】t_actos=0(°CA) t_arstca=t_esagd(下限ガード値) この処理は、回転変動により、前回のne割り込みで算
出した下限ガード値t_esagdが、今回のne割り
込みで算出した下限ガード値t_esagdよりも小さ
くなり、余裕無しとなった場合に行うのである。
【0136】上記ステップ1253の処理の終了後、ス
テップ1254において、算出したt_actosを通
電開始(又は通電遮断)タイミングeacntcrのレ
ジスタに格納するとともに、t_arstcaをear
stcaを直近のne割り込みからの残余角度east
caのレジスタに格納する。
【0137】上記ステップ1254の処理の終了後、
「通電開始のタイミングの算出ルーチン」を終了する。
上記のeacntcrとearstcaとの関係は図2
4に示されている。なお、図24では、通電遮断の場合
の例を示している。
【0138】この例では、BTDC90°CAのne割
込み時において、eacntcrとearstcaとが
算出される例である。 [2.6.通電遮断時刻予約処理]次に、前記図3に示
す点火時期制御ルーチンのステップ150における「通
電遮断時刻予約処理ルーチン」を図16を参照して説明
する。
【0139】図16は「通電遮断予約時刻予約処理ルー
チン」を示している。このルーチンに移行すると、ステ
ップ1610においては、点火気筒の格納を行う。具体
的には、点火気筒espkiの識別子を出力IGT該当
番号のレジスタに格納する。次のステップ1620にお
いては、出力点火角度t_aopの算出を行う。この算
出は、[2.5.2]の項で前述した図17に示す「点
火角度算出ルーチン」をコールし、このルーチンを処理
することにより行う。
【0140】続いてステップ1630において、進角ガ
ード処理を行う。すなわち、下記の1)〜2)の処理を
行う。 1)ガード値の格納 ここでは、予め設定されたガード値eoponをROM
41から読み出し、RAM43のレジスタt_aopo
nに格納するのである。
【0141】2)通電開始予約時の点火角度t_aop
より進角側の時(t_aop>t_aopon)、上記
レジスタt_aoponの値を上限ガードとし、この値
を出力点火角度t_aopのレジスタに格納する。
【0142】次のステップ1640においては、通電遮
断のタイミングの算出を行う。このステップ1640
は、第1の算出手段及び第2の算出手段を構成してい
る。この算出は、[2.5.3.]の欄で前述した図1
8に示す「eacntcr(通電開始タイミング又は通
電遮断タイミング)とearstca(直近のne割り
込みからTDCまでの残余角度)の算出ルーチン」をコ
ールし、このルーチンを処理することにより行う。
【0143】続く、ステップ1650において、点火予
約のne割り込みタイミングか否かを判定する。すなわ
ち、前記ステップ1640において算出した通電手段タ
イミングeacntcrが30°CA未満か否かを判定
することにより行う。eacntcr≧30°CAの場
合には、現在が点火予約のタイミングでないとして、こ
のステップの判定を「NO」とし、この「通電遮断時刻
予約ルーチン」の処理を抜け出す。
【0144】eacntcr<30°CAの場合には現
在が点火予約のタイミングであるとして、このステップ
の判定を「YES」とし、次のステップ1660に移行
する。これは、直近のne割り込みで通電遮断を予約す
るための処理である。
【0145】次にステップ1660において、次サイク
ルまでの予約禁止処理を行う。すなわち、図10に示す
「exspk[ ].xihigtofフラグの操作ル
ーチン」をコールし、実行する。
【0146】図10のルーチンにおいて、ステップ16
61において、exspk[i].xihigtofフ
ラグをオンにセットし、この処理ルーチンを抜け出る。
なお、[ ]内のiは使用するイグナイタの番号であ
り、従って、 この使用するイグナイタにおけるxihi
gtofフラグを「オン」にセットするのである。
【0147】この処理は通電遮断時刻予約後において、
次サイクルまで通電遮断時刻予約を禁止するのである。
すなわち、同一気筒に対して連続して点火することを禁
止しているのである。
【0148】次に、ステップ1670において、点火実
行時刻ezcprigt算出を行う。この点火実行時刻
の算出は下記の式によって行う。 ezcprigt=ezne30l + earstca * et3xon/EA30TO
T - EESKLAG なお、上記式において、ezne30lは30°CAタ
イミングの時刻ラッチデータ、earstaは直近のn
e割り込みからTDCまでの残余角度、EA30TOT
はet3xonを用い角度を時間へ変換する時の定数、
et3xonは30°CA所用時間のラッチデータであ
る。又、EESPKLAGはハード系の点火遅れ時間に
係る定数である。
【0149】この算出の後、ステップ1680におい
て、割込禁止処理し、 次のステップ1690に移行す
る。ステップ1690においては、IGT ONモニタ
フラグexspk[t_idx].xigtmがオンか
否かを判定する。このステップでは、IGT ONモニ
タフラグがオンであれば、前回がIGT ON割込みが
あったことになり、そのため、オンとされていることか
ら、次のステップ1700において点火時刻の予約を行
うのである。又、IGT ONモニタフラグがオフであ
れば、ステップ1730に移行する。
【0150】ステップ1700に移行した場合には、通
電中であるとして通電遮断の予約、すなわち点火時刻の
予約を行うべく、[2.5.1.]の項で前述した図5
の「通電時刻のセットルーチン」をコールして、実行処
理する。この処理が終了後、ステップ1710に移行す
る。ステップ1700は予約手段を構成している。
【0151】又、前記ステップ1690からステップ1
730に移行した場合には、同ステップ1730におい
て、igt ON割込みへ残務移管の処理を行う。すな
わち、ステップ1690の判定では、「NO」と判定し
ているため、未だ通電中でないとして、IGT ON割
込で通電遮断予約を行うのである。具体的には、ステッ
プ1730においては、図6に示す「点火残務処理依頼
ルーチン」をコールする。このルーチンに移行すると、
ステップ1731においてne割り込み点火残務処理依
頼フラグxspkigtを「オン」にセットし、この処
理ルーチンを抜け出る。
【0152】上記のステップ1730の処理が終了する
と、ステップ1710に移行する。ステップ1710に
おいては、割込み許可処理を行い、この「通電遮断時刻
予約ルーチン」を抜け出る。
【0153】以上のようにして、図3に示す「点火時期
制御ルーチン」に関する各処理ルーチンを実行処理す
る。 [3.通電遮断の処理抜け防止処理ルーチン]次に、
「通電遮断の処理抜け防止処理ルーチン」について説明
する。
【0154】図4は、「通電遮断の処理抜け防止処理ル
ーチン」を示すフローチャートを示している。このルー
チンは、IGT(イグナイタ)の作動時、すなわち、I
GTがオン作動時にはIGT ON割込みとし、IGT
オフ作動時には、IGTOFF割込みとして処理す
る。このIGT ON割込み及びIGT OFF割込み
は,ne割込みよりも優先して実行する。
【0155】なお、イグナイタ27A,27Bがオン作
動時とは、イグナイタ27A,27Bがオン作動するこ
とにより、通電が開始されることであり、イグナイタ2
7A,27Bがオフ作動時とは、通電が遮断されること
である。そして、この通電が遮断されることにより、イ
グニッションコイル28の一次側への通電が遮断され、
イグニションコイル28の二次側コイルに高圧の二次電
圧が発生し、接続された点火プラグ24が点火する。
【0156】この処理ルーチンに移行すると、ステップ
310においては、各気筒のフラグが入っているRAM
43の所定記憶領域を読み出し、ステップ320におい
てIGT ON割込みか否かを、読込みしたIGT O
Nモニタフラグxigtmに基づいて判定する。IGT
ONモニタフラグxigtmが「オフ」にリセットさ
れている場合には、このステップの判定を「YES」と
し、ステップ330に移行し、IGT ONモニタフラ
グxigtmが「オン」にセットされている場合には、
このステップの判定を「NO」とし、ステップ390に
移行する。
【0157】ステップ330に移行した場合には、同ス
テップ330において、通電開始を記憶する。すなわ
ち、該当するイグナイタのIGT ONモニタフラグx
igtmを「オン」にセットする。次にステップ340
において、ne割込みからの残務処理無しか否かを、該
当するイグナイタに係る点火残務処理依頼フラグxsp
kigtが「オフ」にリセットされているか、否かに基
づいて判定する。点火残務処理依頼フラグxspkig
tが「オフ」にリセットされている場合には、このステ
ップ340の判定を「YES」と判定し、ステップ35
0に移行し、点火残務処理依頼フラグxspkigtが
「オン」にセットされている場合には、このステップ3
40の判定を「NO」と判定し、ステップ370に移行
する。
【0158】ステップ350に移行した場合、非始動時
(始動時以外)の所定値としてのロック防止点火時間t
_tclockをセットする。この実施の形態では、6
5.5msとされている。なお、スタータスッチ34から
スタート信号gwstaが入力された場合には、始動時
(スタータ オン時)のロック防止点火時間t_tcl
ockを延ばすため、131msとされている。ステップ
350は設定変更手段を構成している。
【0159】次にステップ360において、ロック防止
点火処理を行う。このロック防止点火処理を説明する。
このステップ360に移行すると、前述した図5の
[2.5.1.通電時刻のセットルーチン」をコールし
て、実行することにより、ロック防止点火処理を行う。
【0160】図5の「通電時刻のセットルーチン」にお
いて、前述したようにステップ1510で割り込み禁止
処理を行い、ステップ1520で使用するイグナイタの
割付番号に対応したタイムド出力用I/O関数のアドレ
スのセットを行う。次のステップ1530においては、
予約時刻t_timと、イグナイタポートへの出力予約
位相t_phaseとを対応するタイマのレジスタに格
納する。
【0161】ここでは図4のステップ360においてコ
ールし、ロック防止点火処理における通電遮断時刻の予
約であるため、前記予約時刻t_timは、IGT O
N割り込みの時刻に対して前記所定のロック防止点火時
間t_tclockを加算したものであり、出力予約位
相t_phaseは「オフ」である。そして、これらの
値を対応するタイマのレジスタに格納する。
【0162】次のステップ1540においては、割り込
み許可処理を行い、この「通電時刻セット処理ルーチ
ン」が終了し、図15の「通電開始時刻予約処理ルーチ
ン」を抜け出る。
【0163】上記のように図4のステップ360におい
て、ロック防止点火処理を行った後、「通電遮断の処理
抜け防止処理ルーチン」を抜け出て、この後の処理を一
旦終了する。前記ステップ350及びステップ360に
て通電阻止手段を構成している。
【0164】又、前記ステップ340からステップ37
0に移行した場合、ステップ380においては、「ne
割込み算出時刻で通電遮断の予約」処理を行う。具体的
には、前記図5に示す「通電時刻のセットルーチン」を
コールして実行することにより、ne割込み算出時刻で
通電遮断を予約する。
【0165】図5の「通電時刻のセットルーチン」にお
いて、ステップ1510,1520と進み、ステップ1
530においては、予約時刻t_timと、イグナイタ
ポートへの出力予約位相t_phaseを対応するタイ
マのレジスタに格納する。ここでは図4のステップ37
0においてコールし、「ne割込み算出時刻で通電遮断
の予約」であるため、予約時刻t_timは、図16の
「通電遮断時刻予約ルーチン」のステップ1670にお
いて得られた点火実行時刻ezcprigtであり、出
力予約位相t_phaseは「オフ」である。そして、
これらの値を対応するタイマのレジスタに格納する。
【0166】この後ステップ1540の割り込み許可処
理を行って、この「通電時刻セット処理ルーチン」を終
了し、ステップ380に移行する。ステップ380にお
いては、残務処理終了を行う。すなわち、点火残務処理
依頼フラグxspkigtを「オフ」にリセットし、
「通電遮断の処理抜け防止処理ルーチン」を抜け出て、
この後の処理を一旦終了する。
【0167】又、前記ステップ320からステップ39
0に移行した場合、ステップ390においては、下記
1)及び2)の処理、すなわち、IGT OFFの割込
みでのフラグ処理を行う。
【0168】1)通電遮断を記憶 ここでは、IGT ONモニタフラグxigtmを「オ
フ」にリセットする。 2)点火モードの切り換え (a)始動後判定フラグexastesaが「オン」の
とき、始動後点火実行フラグexspkastを「オ
ン」にセットする。
【0169】(b)始動後判定フラグexastesa
が「オフ」のとき、始動後点火実行フラグexspka
stを「オフ」にセットする。なお、前記始動後判定フ
ラグexastesaは、この実施形態では、エンジン
回転数eneが500rpmとを超えたときに「オン」
にセットされ、エンジン回転数eneが400rpmを
下回ったとき、「オフ」にリセットされるフラグであ
り、CPU42が別のルーチンでエンジン回転数ene
に応じて処理する。
【0170】上記のようにこの通電遮断の処理抜け防止
処理ルーチンは、IGT ON割込みの場合には、ステ
ップ320では、まだIGT ONモニタフラグxig
tmは「オフ」にリセットされているため、このステッ
プ320で「YES」と判定して、ステップ330にお
いて、該当するイグナイタのIGT ONモニタフラグ
xigtmを「オン」にセットして、通電開始を記憶す
るのである。
【0171】又、IGT OFF割り込みの場合には、
ステップ320では、まだIGTONモニタフラグxi
gtmは「オン」にセットされているため、このステッ
プ320で「NO」と判定して、ステップ390におい
て、IGT ONモニタフラグxigtmを「オフ」に
リセットして、通電遮断を記憶するようにしている。こ
のため、必ず、IGTのON/OFFにより、ステップ
320〜330に移行する場合と、ステップ320〜ス
テップ330に移行する場合とが交互に実行されること
になる。
【0172】上記の「通電遮断の処理抜け防止処理ルー
チン」を行う理由は、下記の通りである。IGT ON
割込みでは点火抜け防止のOFF予約処理を行うが、n
e割り込みで算出した予約時間(角度からの換算値)に
は、エンジン回転の急低下や、急上昇によって大きな誤
差が発生する。通電開始後の回転急低下は、OFF実行
予約角度の到達遅れで過通電となり、場合によってはエ
ンジンストールが発生する虞がある。
【0173】又、通電開始前の回転急上昇は、ON予約
の時刻到達がOFF予約の角度到達に対し遅れるため、
OFF予約未実施では、点火抜けとなる。そのため、I
GTON割込み時にOFF予約角度到達前であれば、過
通電対策のロック防止点火時間で仮のOFF予約を行
い、到達後であれば、ne割込みで予約できなかったO
FF予約時刻を無修正でセットするのである。
【0174】[4.エンジンストール時の処理ルーチ
ン]次にエンジンストール時の処理を図7を参照して説
明する。図7はCPU42がエンジン回転数eneが0
となったとき、すなわち、エンジンストールが発生した
時に実行する「エンジンスートル時の処理制御ルーチ
ン」を示している。これは、エンジンストールが発生す
ると、ne割込みが実行されないため、各気筒に関する
フラグを制御するためのものである。
【0175】この制御ルーチンに移行すると、ステップ
1800においては、各気筒(この実施の形態では、各
イグナイタ)に関するIGT ON 再予約禁止フラグ
xiligtonを初期化(「オフ」にリセット)する
とともに、IGT OFF再予約フラグxiligto
fを初期化(「オフ」にリセット)する。続く、ステッ
プ1810においては、始動後点火実行判定フラグex
pkastを「オフ」にリセットし、この制御ルーチン
を終了する。
【0176】(A) さて、この実施の形態では、始動
後点火モードのときにおいて、ne割込みで図3に示す
[2.1.点火時期制御ルーチン]が実行されると、ス
テップ10〜ステップ50からステップ100に移行す
る。そして、ステップ110において、今実行している
点火時期制御ルーチンが該当点火気筒のTDCの直近の
ne割込みルーチン以外の場合には、「YES」と判定
され、ステップ120に移行する。このステップ120
では、図15の「通電開始時刻予約処理ルーチン」が実
行される。このルーチンの処理時において、ステップ1
210〜1260が処理されるため、通電開始のタイミ
ング(ステップ1250)が算出されることになる。そ
して、ステップ1260では、該当点火気筒のTDCの
直近のne割込みではないため、「NO」と判定され、
この「通電開始時刻予約処理ルーチン」を終了する。
【0177】このため、この実施の形態では、ne割込
み(この実施の形態では30°CA°)毎に通電開始の
タイミングが算出されることになる。そして、図21に
示すように、例えば第1気筒#1が該当点火気筒の場合
においては、○印で示すようにBTDC240°CAか
ら30°CA毎に前記通電開始のタイミングが算出され
ることになる。なお、BTDC240°CAから算出さ
れるのは、第1気筒#1が該当次点火気筒となっている
場合、ステップ160において、BTDC240°CA
の次気筒予約タイミング値に達したとき、次気筒のIG
T ON予約処理開始タイミング操作が行われるためで
ある。
【0178】このように、この第1の実施の形態では、
該当点火気筒TDCの直近ne割込みで行われる点火時
期制御ルーチンまでは、その都度通電開始のタイミング
が修正算出され、直近ne割込みで行われる点火時期制
御ルーチンにおいて、最終的に通電開始タイミングが算
出されることになる。
【0179】この結果、通電開始タイミングの誤差を最
小限にすることができる。さらに、該当点火気筒のTD
Cの直近のne割込みとなった場合には、前記ステップ
1260において、「YES」と判定され、ステップ1
270において、通電開始時刻予約の禁止がなされる。
そして、ステップ1280において、通電開始時刻算出
が行われ、ステップ1300の条件が成立している場合
には、ステップ1500で通電開始時刻のセットが行わ
れる。
【0180】この結果、前記ステップ1270におい
て、通電開始時刻の次サイクルまで通電開始時刻予約の
禁止処理が行われているため、同一気筒(この実施形態
では、同一イグナイタ)に連続して通電することを禁止
できる。
【0181】(B) 又、この実施の形態では、ステッ
プ100においては、各気筒TDCの直前の30°CA
の所要時間にてラッチし、この値を図15の「通電開始
時刻予約処理ルーチン」におけるステップ1230にお
けるドエル角(通電継続時間の角度換算値)の算出に使
用した。この結果、通電継続時間の精度を向上すること
ができる。
【0182】(C) 又、同様に始動後点火モードのと
きにおいて、[2.1.点火時期制御ルーチン]が実行
されると、ステップ40においては、BTDC90°C
Aのとき、xihigtofフラグが「オフ」にリセッ
トされる。このため、ne割込みがBTDC90°CA
以降の場合には、ステップ120〜ステップ140に移
行したとき、ステップ140では、「YES」と判定さ
れて、ステップ150において、「通電遮断時刻予約処
理」が実行される。そして、ステップ150において、
図16の「通電遮断時刻予約処理ルーチン」が実行さ
れ、ステップ1610〜1640において、eacnt
cr(通電遮断タイミング)とearstca(直近の
ne割り込みからTDCまでの残余角度)の算出がなさ
れる。
【0183】そして、ステップ1650では、該当点火
気筒のTDCの直近のne割込みではない場合、「N
O」と判定され、この「通電遮断時刻予約処理ルーチ
ン」を終了する。
【0184】このため、この実施の形態では、BTDC
90°CA以降からのne割込み(この実施の形態では
30°CA°)毎に通電遮断のタイミングが算出される
ことになる。そして、図21に示すように、例えば第1
気筒#1が該当点火気筒の場合においては、△印で示す
ようにBTDC90°CAから30°CA毎に前記通電
遮断のタイミングが算出されることになる。
【0185】このように、この第1の実施の形態では、
該当点火気筒TDCの直近ne割込みで行われる点火時
期制御ルーチンまでは、その都度通電遮断のタイミング
が修正算出され、直近ne割込みで行われる点火時期制
御ルーチンにおいて、最終的に通電遮断タイミングが算
出されることになる。
【0186】この結果、通電遮断タイミングの誤差を最
小限にすることができる。さらに、該当点火気筒のTD
Cの直近のne割込みとなった場合には、前記ステップ
1650において、「YES」と判定され、ステップ1
660において、次サイクルまで点火時刻予約の禁止が
なされる。そして、ステップ1670において、点火時
刻算出が行われ、ステップ1690において、IGT
ONモニタフラグが「オン」とされていれば、前回、I
GT ON割込みがあったことになるため、ステップ1
700において、点火時刻の予約が行われる。
【0187】この結果、前記ステップ1660におい
て、次サイクルまで点火時刻予約の禁止処理が行われて
いるため、同一気筒(この実施形態では、同一イグナイ
タ)に対して連続した点火時刻予約を禁止できる。
【0188】(D) 又、第1の実施の形態において
は、[2.1.点火時期制御ルーチン]において、ステ
ップ120においては、該当点火気筒の通電開始時刻予
約がなされ、ステップ170の条件を満足したときに
は、ステップ180において、該当次点火気筒に係る通
電開始時刻予約処理を行った。このため、図21に示す
ように、気筒間において、オーバラップ通電を可能とす
ることができる。この結果、次点火気筒における通電時
間を長くすることができる。すなわち、オーバラップ通
電をしない場合には、点火気筒の通電が終了した後、制
限された短い通電時間で次点火気筒に通電する必要があ
り、そのために短時間のうちに大量の電気エネルギーを
供給することとなる。この結果、発熱が大きくなるた
め、回路に耐熱対策を行うために、配線を太くしたり、
十分な放熱構造にしたりする等の耐熱対策が必要とな
り、回路自体が大きくなる問題がある。この実施の形態
では、上述のような熱対策は必要でなくなり、回路構成
も簡単な構成で良くなり、コストを低下することができ
る。
【0189】(E) 又、この実施の形態では、[2.
1.点火時期制御ルーチン]において、通電開始時刻の
予約と通電遮断時刻の予約とは、それぞれ独立して行っ
ているため、通電開始を行った後においても、通電終了
(点火)を変更することができる。
【0190】(F) 又、この実施の形態では、図4に
示す、「通電遮断の処理抜け防止処理ルーチン」におい
て、IGT ON割込み時にOFF予約角度到達前であ
れば、ステップ340〜ステップ360に移行して過通
電対策のロック防止点火時間で仮のOFF予約を行い、
ロック防止点火処理を行った。この結果、通電開始後の
回転急低下があった場合においても、OFF実行予約角
度の到達遅れで過通電となることはなく、エンジンスト
ールが発生する虞はない。
【0191】(G) さらに、「通電遮断の処理抜け防
止処理ルーチン」において、IGTON割込み時にOF
F予約角度到達後であればステップ340〜ステップ3
80に移行し、ne割込みで予約できなかったOFF予
約時刻(通電遮断時刻)を無修正でセットする残務処理
を行った。この結果、通電開始前の回転急上昇があった
場合、ON予約の時刻到達がOFF予約の角度到達に対
し遅れても、点火抜けとなることはない。
【0192】(H) 又、この実施の形態では、図4の
「通電遮断の処理抜け防止処理ルーチン」において、ス
テップ350では、始動時にスタート信号gwstaが
入力されたときには、ロック防止点火時間t_tclo
ckを、非始動時におけるロック防止点火時間t_tc
lockよりも長くした。この結果、始動時(スタータ
オン時)で回転上昇が遅れた場合に、始動時後におけ
る非始動時のロック防止点火時間よりもロック防止点火
時間t_tclockが長いため、通電遮断が早く行わ
れることがない。このため、エンジン10の始動性の低
下を防止できる効果がある。なお、始動時間(スタータ
オン時間)は短いため、過通電よる電気回路の熱的な
悪影響はない。
【0193】(第2の実施の形態)次に第2の実施の形
態を実施の形態を図26〜図28を参照して説明する。
なお、第2の実施の形態のハード構成は、第1の実施の
形態と同様に構成されており、ソフト構成が異なってい
る。そして、第2の実施の形態はオーバラップ通電を行
わない場合の実施の形態であり、多くのルーチンは第1
の実施の形態と共通するため、第1の実施の形態と異な
るところを説明する。
【0194】図26は、第2の実施の形態において、C
PU42が実行する「点火時期制御ルーチン」であり、
前記第1の実施の形態における[2.1.点火時期制御
ルーチン]において、ステップ160が省略され、ステ
ップ170の代わりにステップ170Aを実行処理する
ところが異なる。
【0195】すなわち、同じne割込みのときに、次の
ステップ180(開始時刻の予約処理)を行うために、
ステップ170Aでは、次気筒の通電開始時刻予約許可
の条件が共に成立しているか否かを判定する。
【0196】この判定条件は下記の通りである。 1)次気筒の始動後IGT ON 再予約禁止フラグx
ihigtonが「オフ」にリセットされていること。
【0197】2)点火気筒espkiの始動後IGT
OFF再予約禁止フラグxihigtofが「オン」に
セットされていること。 上記2条件は、始動直後に該当点火気筒の通電遮断予約
後まで次気筒の通電開始時刻予約を禁止するための条件
である。
【0198】上記1)及び2)の条件が共に成立してい
る場合には、このステップの判定を「YES」とし、そ
うでない場合には「NO」と判定する。従って、このス
テップ170Aにおいて、「YES」と判定された場合
にのみ次のステップ180における次気筒の開始時刻予
約を行うことができる。
【0199】又、図27は、第2の実施の形態におい
て、CPU42が実行する「通電開始時刻予約処理ルー
チン」であり、第1の実施の形態の「2.5.通電開始
時刻予約処理」とは、ステップ1280とステップ13
00との間にステップ1290の処理が追加されている
ところが異なっている。
【0200】すなわち、ステップ1290では、次気筒
の通電開始時刻算出時には、下限ガードを実行する。こ
の下限ガードの実行は、次気筒の通電開始時刻t_zc
prigtを、点火気筒の点火実行時刻ezcprig
tに余裕時間(定数)EIGTOFを加算した値以上と
することにより行われる。
【0201】このステップ1290の処理は、次気筒の
通電開始時刻が該当点火気筒の通電遮断時刻より前にな
ることを防止するために、余裕をもたせて通電時刻のガ
ードを行うのである。
【0202】又、図28は、第2の実施の形態におい
て、CPU42が実行する「通電遮断時刻予約処理ルー
チン」であり、第1の実施の形態の「2.6.通電開始
時刻予約処理」とは、ステップ1710の次にステップ
1720の処理が追加されているところが異なってい
る。
【0203】すなわち、このステップ1720では、出
力点火次気筒espkinxtの始動後通電開始予約を
許可する。すなわち、出力点火次気筒espkinxt
の始動後IGT ON 再予約禁止フラグxihigt
onを「オフ」にリセットする。この処理の後、通電遮
断時刻予約処理ルーチンを終了する。
【0204】従って、この後に図3のルーチンに戻った
とき、次のステップ170Aにおいて、次気筒の通電開
始予約の許可されているか否かの判定条件の1つはクリ
ヤされることになる。
【0205】この結果、前記図27に示す「通電開始時
刻予約処理ルーチン」のステップ1290において、下
限ガード処理を行いオーバーラップ通電は行われないた
め、該当点火気筒の通電遮断予約後、同じne割込みで
実行される「点火時期制御ルーチン」において次気筒の
通電開始予約を許可するのである。
【0206】(I) 従って、上記第2の実施の形態で
は、上記第1の実施の形態の(B)、(E)、(F)、
及び(G)の効果を奏することができる。 (J) 又、第2の実施の形態では、ステップ170A
において、始動直後に該当点火気筒の通電遮断予約後ま
で次気筒の通電開始時刻予約を禁止されるため始動直後
では、該当点火気筒の通電遮断予約後において、次気筒
の通電開始時刻予約を行うことができる。
【0207】(K) 又、ステップ1290を処理する
ことにより、次気筒の通電開始時刻が該当点火気筒の通
電遮断時刻より前になることを防止することができる。 (第3の実施の形態)次に第3の実施の形態を図29〜
図40を参照して説明する。
【0208】まず、第1の実施の形態とのハード構成の
相違について説明する。なお、前記第1の実施の形態と
同一構成又は相当する構成については同一符号を付し、
その説明を省略する。
【0209】この実施の形態では、ディストリビュータ
32を備えており、ディストリビュータ32はクランク
シャフト16が2回転する間に1回転するロータを内蔵
している。この第3の実施の形態のイグナイタ33はE
CU40からの制御信号に基づいて高電圧を発生するイ
グニッションコイルを備えている。そして、前記ディス
トリビュータ32はロータの回転に基づき、イグナイタ
33から出力される高電圧を、クランクシャフト16の
回転角、すなわちクランク角(°CA)に同期して、各
気筒(この実施の形態では4気筒における各気筒)の点
火プラグ51に分配して印加する。燃焼室15内へ導入
された混合気は点火プラグ51の点火によって爆発・燃
焼される。
【0210】回転角センサとしての回転速度センサ35
はディストリビュータ32内に配設されており、クラン
クシャフト16が所定角度(例えば30°CA)回転す
る毎にクランク角信号neを出力する。気筒判別センサ
36もディストリビュータ32内に配設されており、ク
ランクシャフト16が360°CA回転する毎に気筒判
別信号Gを出力する。
【0211】又、この第3の実施の形態の電気的構成
は、図30に示すように、入力インターフェース46に
は、前述した回転速度センサ35及び気筒判別センサ3
6等がそれぞれ接続されている。一方、外部インターフ
ェース47には、イグナイタ33等がそれぞれ接続され
ている。
【0212】そして、各センサ23,23,35.36
等の検出信号が入力インターフェース46を介してCP
U42に入力される。CPU42はそれらの入力に基づ
き各種演算を行い、インジェクタ50及びイグナイタ3
3を作動させ、燃料噴射制御及び点火時期制御を実行す
る。
【0213】さて、上記のように構成された第3の実施
の形態の作用においては、第1の実施の形態における多
くのルーチンと共通するため、第1の実施の形態と異な
るところを中心に説明する。
【0214】[点火時期制御ルーチン]図31は、第3
の実施の形態において、CPU42が実行する「点火時
期制御ルーチン」であり、前記第1の実施の形態におけ
る[2.1.点火時期制御ルーチン]において、ステッ
プ160を省略し、ステップ170の代わりにステップ
170Bを実行処理し、さらに、ステップ70の次にス
テップ80を追加しているところが異なる。
【0215】すなわち、ステップ170Bにおいて、次
気筒の通電開始時刻予約許可の条件が共に成立している
か否かを判定する。この判定条件は下記の通りである。
【0216】1)次気筒の始動後IGT ON 再予約
禁止フラグxihigtonが「オフ」にリセットされ
ていること。 2)点火気筒espkiのIGT ONモニタフラグx
igtmが「オフ」にリセットされていること。
【0217】3)点火気筒espkiのne割込み点火
残務処理依頼フラグxspkigtが「オフ」にリセッ
トされていること。 4)点火気筒espkiの始動後IGT OFF再予約
禁止フラグxihigtofが「オン」にセットされて
いること。
【0218】上記4条件は、始動直後に該当点火気筒の
通電遮断予約後まで次気筒の通電開始時刻予約を禁止す
るための条件である。上記1)乃至4)の条件が共に成
立している場合には、このステップの判定を「YES」
とし、そうでない場合には「NO」と判定する。
【0219】従って、このステップ170Bにおいて、
「YES」と判定された場合にのみ次のステップ180
における次気筒の開始時刻予約を行うことができる。
又、「点火時期制御ルーチン」において、ステップ70
からステップ80に移行した場合、ステップ80におい
ては、図38に示す「eccrnkaの初期化ルーチ
ン」をコールする。このルーチンに移行すると、ステッ
プ81において、現在位置から点火気筒のTDCまでの
角度eccrnka[0]を「−1」に初期化し、この
割込みルーチンを抜け出る。又、ステップ80において
は、気筒別の遅角補正量の算出に使用される気筒判別識
別子ecylidxを初期化する。尚、気筒別の遅角補
正量の算出はこの発明の要旨ではないため、説明は省略
する。すなわち、ステップ80の処理は、ステップ60
において、始動後点火未実施と判定されているため、現
在位置から点火気筒のTDCまでの角度eccrnka
[0]等を初期化するのである。
【0220】このステップ80の処理が終わると、点火
時期制御ルーチンの処理を一旦終了する。 [クランクカウンタeccrnk破壊時の制御ルーチ
ン]図32は、第3の実施の形態において、CPU42
が実行する「クランクカウンタeccrnk破壊時の制
御ルーチン」を示している。この実施の形態では、第1
の実施の形態の「クランクカウンタeccrnk破壊時
の制御ルーチン」に対して、次気筒点火に備え、ステッ
プ230の代わりにステップ230Aの処理が行われ、
さらにステップ230Aとステップ260との間にステ
ップ240とステップ250とが追加されている。
【0221】図33は、前記ステップ230Aの詳細を
示すフローチャートである。同図において、ステップ2
31Aでは、該当点火気筒のための始動後IGT ON
再予約禁止フラグxihightonを「オフ」にセッ
トし、次気筒に対応する始動後IGT ON再予約禁止
フラグxihightonを「オン」にセットする。
【0222】又、次気筒に係る始動後IGT OFF再
予約禁止フラグxihightoffを「オン」にセッ
トする。次のステップ240においては、図37に示す
「eccrnkaの初期化ルーチン」が割込み処理され
る。このルーチンにおいては、現在位置から点火気筒の
TDCまでの角度eccrnka[0]を「0」に初期
化し、この割込みルーチンを抜け出る。
【0223】次のステップ250に移行すると、前記ス
テップ80において同様に行われる気筒別の遅角補正量
の算出に使用される気筒判別識別子ecylidxを初
期化する。このステップ250の処理が終了すると、ス
テップ260に移行し、この処理を終えると、「クラン
クカウンタeccrnk破壊時の制御ルーチン」を抜け
出る。
【0224】このようにクランクカウンタeccrnk
が破壊されているため、ディストリビュータ32を備え
ている場合には、ステップ240、ステップ250にお
いて、現在位置から点火気筒のTDCまでの角度ecc
rnka[0]等を初期化するのである。
【0225】[始動時の固定点火処理ルーチン]次に、
「始動時の固定点火処理ルーチン」について説明する。
図34は「始動時の固定点火処理ルーチン」のフローチ
ャートを示している。このルーチンは、前記第1の実施
の形態における[2.4.始動時の固定点火処理ルーチ
ン](図14参照)のステップ704とステップ706
の間にステップ705が挿入されたところが異なってい
る。
【0226】すなわち、ステップ705においては、下
記の3つの処理を行う。 1)点火気筒に関するフラグ処理 前記図9の「xihigtonの操作ルーチン」をコー
ルし、まず下記の処理を実行する。
【0227】 exspk[i].xihigton←t_phase 上記において、iは点火気筒espkiであり、t_p
haseは「オン」となる。
【0228】すなわち、出力点火気筒に係る始動後IG
T ON 再予約禁止フラグxihigtonを「オ
ン」にセットする。この処理により、始動時点火予約後
に、次回のne割込みで「点火時期制御ルーチン」が実
行されたとき、ステップ110では、「NO」と判定さ
れ、ステップ130にジャンプしてステップ120の通
電開始時刻予約処理を禁止するのである。
【0229】2)次点火気筒に関するフラグ処理 同じく前記図9の「xihigtonの操作ルーチン」
をコールして、下記の処理を実行する。
【0230】 exspk[i].xihigton←t_phase 上記においてiは出力点火次気筒espkinxtであ
り、t_phaseは「オフ」となる。すなわち、出力
点火次気筒に係る始動後IGT ON 再予約禁止フラ
グxihigtonを「オフ」にセットする。
【0231】この処理により、始動時点火予約後に、次
回のne割込みで「点火時期制御ルーチン」が実行され
たとき、ステップ170が判定が「YES」とされ、ス
テップ180の通電開始時刻予約処理を許可するのであ
る。
【0232】3)点火気筒に関するフラグ処理 図10に示す「exspk[ ].xihigtofフ
ラグの操作ルーチン」をコールして実行する。
【0233】すなわち、ステップ1661において、e
xspk[i].xihigtofフラグを「オン」に
セットし、この処理ルーチンを抜け出る。なお、[ ]
内のiは使用する点火気筒の番号であり、この使用する
イグナイタにおけるxihigtofフラグを「オン」
にセットするのである。
【0234】この処理は始動時点火予約後に、次回のn
e割込みで「点火時期制御ルーチン」が実行されたと
き、ステップ140が判定が「NO」とされ、ステップ
160にジャンプすることにより、ステップ180の
「通電遮断時刻予約処理」を禁止するのである。
【0235】上記の1)、2)、3)のフラグ処理の結
果、ディストリビュータ32を備えた第3の実施の形態
では、始動時〜始動後に変化したとき、クランクカウン
タeccrnkが破壊されたとき、及び該当点火気筒の
点火終了後は、ne割込みで「点火時期制御ルーチン」
が実行されたとき、ステップ120、ステップ150の
処理は行わず、1回だけ、ステップ180の「通電開始
時刻予約処理」を行うのである。
【0236】[通電開始時刻予約制御ルーチン]次に、
図31の点火時期制御ルーチンにおいてステップ120
及びステップ180にてコールされる「通電開始時刻予
約処理ルーチン」を説明する。
【0237】図35は、第3の実施の形態における「通
電開始時刻予約処理ルーチン」を示している。この制御
ルーチンでは、ステップ1210とステップ1230と
の間にステップ1220が追加されるとともにステップ
1280とステップ1300との間にステップ1290
Aが追加されている。
【0238】ステップ1220においては、出力の一本
化、及び通電開始予約処理タイミングの変更を行うため
に、下記の1)、2)、3)の処理を行う。 1)配列の固定 ここでは、出力該当番号t_idxを0とする。すなわ
ち、ディストリビュータ32にて各気筒の点火プラグ5
1にイグナイタ33から出力される高電圧を分配するた
め、出力は1個となり、出力該当番号を1本化するので
ある。
【0239】2)今回のne割込みでの次気筒の通電開
始時刻予約の禁止 前記図9の「xihigtonの操作ルーチン」をコー
ルし、まず下記の処理を実行する。
【0240】exspk[i].xihigton←t
_phase上記において、iは出力点火次気筒esp
kinxtであり、t_phaseは「オン」となる。
【0241】すなわち、出力点火気筒に係る始動後IG
T ON 再予約禁止フラグxihigtonを「オ
ン」にセットする。この処理により、今回のne割込み
で「点火時期制御ルーチン」が実行されたとき、ステッ
プ170Bでは、「NO」と判定し、ステップ180の
次気筒に関する通電開始時刻予約を禁止するのである。
【0242】3)次回のne割込みでの点火気筒の通電
開始時刻予約の許可 又、同じく前記図9の「xihigtonの操作ルーチ
ン」をコールして、下記の処理を実行する。
【0243】exspk[i].xihigton←t
_phase上記においてiは点火気筒espkiであ
り、t_phaseは「オフ」となる。すなわち、出力
点火気筒に係る始動後IGT ON 再予約禁止フラグ
xihigtonを「オフ」にセットする。
【0244】この処理により、次回のne割込みで「点
火時期制御ルーチン」が実行されたとき、ステップ11
0が判定が「YES」とされ、ステップ120の通電開
始時刻予約処理を許可するのである。
【0245】次に、ステップ1290Aについて説明す
る。ステップ1290Aでは、次気筒の通電開始時刻の
ガード処理を行う。すなわち、ステップ1290では、
次気筒の通電開始時刻算出時には、下限ガードを実行す
る。
【0246】この下限ガードの実行は、次気筒の通電開
始時刻t_zcprigtを、点火気筒の点火実行時刻
ezcprigtに余裕時間(定数:一次元マップ補間
値)を加算した値以上とすることにより行われる。な
お、前記一次元マップ補間値は、その時のエンジン回転
数eneに基づいて予めROM41に格納された一次元
マップから求められる。
【0247】このステップ1290Aの処理は、次気筒
の通電開始時刻が該当点火気筒の通電遮断時刻より前に
なることを防止するために、余裕をもたせて通電時刻の
ガードを行うのである。
【0248】[点火角度算出ルーチン]次に、前記図3
5のステップ1210等において、コールして実行処理
する「点火角度算出ルーチン」を図36を参照して説明
する。
【0249】このルーチンにおいて、ステップ1211
Aにおいては、点火実行気筒TDCを基準としたカウン
タeccrnka[0]の作成の処理を行う。すなわ
ち、下記の処理を行う。
【0250】1)カウンタ作成 オーバラップタイミングの時、オーバラップ分修正す
る。オーバラップタイミングの時とは、通電する気筒判
定の識別子t_idxが点火気筒espkiの識別子で
ない場合(t_idx≠espki)である。上記の条
件を満たしているとき、オーバラップタイミングの時で
あるとして、eccrnka[0]+ENEIRPを算
出して、この値を新たなeccrnka[0]とする。
ENEIRPは各気筒TDC間のne割り込み回数であ
り、4気筒では6回であり、6気筒では4回である。
【0251】又、通電する気筒判定の識別子t_idx
が点火気筒espkiの識別子である場合(t_idx
=espki)、以下の処理を行う。 eccrnka[0]=eccrnka[0]−1(≧
0) 上記のステップにより、ディストリビュータ32を備え
た場合の、カウンタ(現在位置から点火気筒のTDCま
での角度)の作成が行われる。
【0252】[点火気筒の決定]次に図31に示す点火
時期制御ルーチンにおいて、ステップ30の「点火気筒
決定」にてコールされる「点火気筒決定ルーチン」を図
39を参照して説明する。図39の「点火気筒決定ルー
チン」のフローチャートは、第1の実施の形態とはステ
ップ302の代わりにステップ302Aが実行処理され
るところが異なっている。
【0253】ステップ302Aにおいては、イグナイタ
が1本のため、点火気筒espkiの識別子、出力点火
次気筒espkinxtの識別子を固定する。具体的に
は、 1) espki=0 2) espkinxt=1 とする。
【0254】従って、このステップの処理により、点火
気筒espki、出力点火次気筒espkinxtの識
別子を固定するため、他の処理ルーチンにおいても、こ
の固定された識別子に基づいて処理することになる。
【0255】[メインルーチン]この第3の実施の形態
では、メインルーチンは図40のフローチャートに従っ
て実行処理する。
【0256】このルーチンに入ると、ステップ2におい
て、車載バッテリ電圧Bに基づいて予めROM41に格
納された一次元マップを参照して、補間値を算出するこ
とにより基本通電時間を求める。又、クランク角信号n
eに基づいて予めROM41に格納された一次元マップ
を参照して、回転補正係数を求める。そして、ステップ
3において、前記基本通電時間と回転補正係数を乗算
し、要求通電時間etigtonを算出し、この算出し
た値を所定のレジスタに格納し、このメインルーチンを
一旦終了する。
【0257】(L) 従って、上記第3の実施の形態で
は、上記第1の実施の形態の(B)、(E)、(F)、
及び(G)の効果を奏することができる。 (M) 又、この実施の形態では、図35の「通電開始
時刻予約処理ルーチン」においてステップ1290Aの
次気筒の通電開始時刻のガード処理を行った。このた
め、次気筒の通電開始時刻が該当点火気筒の通電遮断時
刻より前になることを防止することができる。
【0258】尚、本発明は上記実施の形態に限定される
ものではなく、発明の趣旨を逸脱しない範囲で、適宜に
変更して次のように実施することもできる。 (a)上記実施の形態では、各実施の形態では、クラン
ク角度30°CAのne割込みにて「点火時期制御ルー
チン」の処理を行ったが、30°CA以外の角度にて行
っても良い。
【0259】(b)上記各実施の形態では、4気筒又は
6気筒について説明したが、他の複数気筒を備えた内燃
機関に具体化してもよい。上記実施の形態から把握され
る技術思想の内、請求項以外の技術思想を以下に効果と
ともに記載する。
【0260】(1) 内燃機関の回転を検出し、所定回
転角位置にて回転角信号を出力する回転角センサと、回
転角信号に基づいて点火気筒の選択を行う点火気筒選択
手段と、上記回転角信号及び内燃機関の運転状態に応じ
て、点火コイルの通電時間及び点火時期を算出する第1
の算出手段と、前記点火気筒選択手段が選択した点火気
筒に対し、前記第1の算出手段が算出した通電時間及び
点火時期に基づいて、信号を出力する第1の出力手段
と、前記第1の出力手段からの出力信号に基づいて点火
コイルの一次電流を制御するイグナイタと、を備えた内
燃機関の点火時期制御装置。
【0261】上記点火時期制御装置によれば、点火気筒
は回転角信号に基づいて選択が行われる。この結果、従
来行われていたイグナイタの点火信号に基づいて点火気
筒の選択を行う必要がなくなる。
【0262】又、回転角信号に基づいて、点火気筒選択
手段は、点火気筒を選択することができるため、点火気
筒及び次点火気筒の選択も可能となり、この結果、点火
気筒と次点火気筒のオーバラップ通電のための通電開始
の算出も容易にすることができる。又、点火信号に基づ
いて点火気筒を選択する場合は時間管理となり、機関の
回転が急変した場合に対応できるように処理は複雑とな
るが、この回転角に基づいて点火気筒の管理を行う場合
には、その必要はなくなるため、従来と比較して、その
ための構成を簡略化することができる。
【0263】(2)内燃機関の回転を検出し、所定回転
角位置にて回転角信号を出力する回転角センサと、回転
角信号に基づいて点火気筒の選択を行う点火気筒選択手
段と、上記回転角信号及び内燃機関の運転状態に応じ
て、上記回転角信号の入力毎に点火コイルの通電開始時
刻及び点火時刻を算出する第2の算出手段と、前記点火
気筒選択手段が選択した点火気筒に対し、前記第2の算
出手段が算出した通電開始時刻及び点火時刻のうち、点
火気筒TDCに直近した回転角信号に応じて最新の通電
開始時刻又は点火時刻を予約する予約手段と、前記予約
手段が予約した通電開始時刻及び点火時刻にて出力信号
を出力する第2の出力手段と、前記第2の出力手段から
の出力信号に基づいて点火コイルの一次電流を制御する
イグナイタと、を備えた内燃機関の点火時期制御装置。
【0264】上記の構成により、第2の算出手段は、回
転角信号の入力毎に点火コイルの通電開始時刻及び点火
時刻を算出する。予約手段は、点火気筒選択手段が選択
した点火気筒に対し、前記第2の算出手段が算出した通
電開始時刻及び点火時刻のうち、点火気筒TDCに直近
した回転角信号に応じて最新の通電開始時刻又は点火時
刻を予約する。すなわち、点火気筒TDCに直近した回
転角信号が入力されるまで通電開始時刻、点火時刻は修
正され、予約手段は、前記第2の算出手段が算出した通
電開始時刻及び点火時刻のうち、点火気筒TDCに直近
した回転角信号に応じた最新の通電開始時刻又は点火時
刻を予約する。そして、第2の出力手段は、前記予約手
段が予約した通電開始時刻及び点火時刻にて出力信号を
出力する。イグナイタは前記第2の出力手段からの出力
信号に基づいて点火コイルの一次電流を制御する。この
ように、点火気筒TDCに直近した回転角信号に応じた
最新の通電開始時刻又は点火時刻を予約できるため、内
燃機関の回転数の急上昇、急降下の回転急変時の回転角
と時間との関係に大きな誤差が生ずるのを防止すること
ができ、精度よく通電、遮断を行うことができる。
【0265】(3) 前記(2)において、第2の算出
手段及び予約手段は、通電時刻、点火時刻の算出、予約
を独立して行うこと特徴とする内燃機関の点火時期制御
装置。
【0266】上記の構成により、通電時刻、点火時刻の
予約を独立して行うことができることから、通電を行っ
た後においても、通電遮断時刻(点火時刻)の変更を行
うことができる。
【0267】
【発明の効果】以上詳述したように請求項1及び請求項
2の発明によれば、エンジン始動時において、極低温時
等で始動性が悪化して回転上昇が遅れた場合において
も、始動性が低下することがない優れた効果を奏する。
【図面の簡単な説明】
【図1】第1の実施の形態の点火時期制御装置の概略構
成図。
【図2】同じくECUの電気的構成を示す電気ブロック
図。
【図3】「点火時期制御ルーチン」のフローチャート。
【図4】「通電遮断の処理抜け防止処理ルーチン」のフ
ローチャート。
【図5】「通電時刻のセットルーチン」のフローチャー
ト。
【図6】「点火残務処理依頼ルーチン」のフローチャー
ト。
【図7】「エンジンスートル時の処理制御ルーチン」の
フローチャート。
【図8】「始動時点火モードへ移行ルーチン」のフロー
チャート。
【図9】「xihigtonの操作ルーチン」のフロー
チャート。
【図10】「exspk[ ].xihigtofフラ
グの操作ルーチン」のフローチャート。
【図11】「クランクカウンタeccrnk破壊時の制
御ルーチン」のフローチャート。
【図12】図11の要部であるステップのフローチャー
ト。
【図13】同じく図11の要部であステップのフローチ
ャート。
【図14】「始動時の固定点火処理ルーチン」のフロー
チャート。
【図15】「通電開始時刻予約処理ルーチン」のフロー
チャート。
【図16】「通電遮断時刻予約処理ルーチン」のフロー
チャート。
【図17】「点火角度算出サブルーチン」のフローチャ
ート。
【図18】「eacntcr(通電開始タイミング又は
通電遮断タイミング)とearstca(直近のne割
り込みからTDCまでの残余角度)の算出ルーチン」の
フローチャート。
【図19】「点火気筒決定ルーチン」のフローチャー
ト。
【図20】第1の実施の形態における「メインルーチ
ン」のフローチャート。
【図21】点火気筒と次点火気筒のIGT ON予約許
可、IGT OFF予約許可の関係を示す説明図。
【図22】eccrnk破壊時の修正を説明する説明
図。
【図23】eccrnkaにおけるTDCとBTDCと
の関係を示す説明図。
【図24】eacntcrとearstcaとの関係を
示す説明図。
【図25】espki、ecatdc、eccylとの
関係を説明図。
【図26】第2の実施の形態における「点火時期制御ル
ーチン」のフローチャート。
【図27】同じく「通電開始時刻予約処理ルーチン」の
フローチャート。
【図28】同じく「始動時の固定点火処理ルーチン」の
フローチャート。
【図29】第3の実施の形態の点火時期制御装置の概略
構成図。
【図30】同じくECUの電気的構成を示す電気ブロッ
ク図。
【図31】第3の実施の形態における「点火時期制御ル
ーチン」のフローチャート。
【図32】同じく「クランクカウンタeccrnk破壊
時の制御ルーチン」のフローチャート。
【図33】同じく図32の要部であステップのフローチ
ャート。
【図34】「始動時の固定点火処理ルーチン」のフロー
チャート。
【図35】「通電開始時刻予約処理ルーチン」のフロー
チャート。
【図36】「点火角度算出サブルーチン」のフローチャ
ート。
【図37】「eccrnkaの初期化ルーチン」のフロ
ーチャート。
【図38】「eccrnkaの初期化ルーチン」のフロ
ーチャート。
【図39】「点火気筒決定ルーチン」のフローチャー
ト。
【図40】第3の実施の形態における「メインルーチ
ン」のフローチャート。
【符号の説明】
10…エンジン、16…クランクシャフト、17…ラン
ク、19…カムシャフト、20…回転角センサとしての
クランクポジションセンサ、21…クランクロータ、2
4…水温センサ、26…点火装置、27…イグナイタ、
28…点火コイルとしてのイグニッションコイル、30
…カムポジションセンサ、31…カムロータ、32…デ
ィストリビュータ、33…イグナイタ、35…回転角セ
ンサとしての回転速度センサ、36…気筒判別センサ、
40…演算手段、設定変更手段、第1の算出手段、第2
の算出手段、予約手段、点火気筒選択手段、第1の出力
手段、第2の出力手段としての電子制御ユニット(EC
U)、41…ROM、42…CPU、51…点火プラ
グ。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 内燃機関の回転を検出し、所定回転角位
    置にて回転角信号を出力する回転角センサと、 上記回転角信号及び内燃機関の運転状態に応じて点火コ
    イルの通電時間及び点火時期を算出して信号を出力する
    演算手段と、 前記演算手段からの出力信号に基づいて点火コイルの一
    次電流を制御するイグナイタと、 前記点火コイルへの電流供給時間が所定値に達したと
    き、点火コイルへの一次電流を遮断する通電阻止手段と
    を備えた内燃機関の点火時期制御装置において、 通電阻止手段は、始動時においては、非始動時の運転状
    態のときよりも大きい所定値に基づいて、点火コイルへ
    の一次電流を遮断することを特徴とする内燃機関の点火
    時期制御装置。
  2. 【請求項2】 始動時には非始動時の運転状態に比し、
    上記所定値を大とする設定変更手段を有することを特徴
    とする請求項1に記載の内燃機関の点火時期制御装置。
JP8274765A 1996-10-17 1996-10-17 内燃機関の点火時期制御装置 Pending JPH10122109A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP8274765A JPH10122109A (ja) 1996-10-17 1996-10-17 内燃機関の点火時期制御装置
US08/950,475 US5871002A (en) 1996-10-17 1997-10-15 Apparatus for controlling ignition timing in engines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8274765A JPH10122109A (ja) 1996-10-17 1996-10-17 内燃機関の点火時期制御装置

Publications (1)

Publication Number Publication Date
JPH10122109A true JPH10122109A (ja) 1998-05-12

Family

ID=17546271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8274765A Pending JPH10122109A (ja) 1996-10-17 1996-10-17 内燃機関の点火時期制御装置

Country Status (2)

Country Link
US (1) US5871002A (ja)
JP (1) JPH10122109A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002540343A (ja) * 1999-03-22 2002-11-26 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング 点火制御装置および点火制御方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6357427B1 (en) * 1999-03-15 2002-03-19 Aerosance, Inc. System and method for ignition spark energy optimization
DE10043756C2 (de) * 2000-09-05 2002-11-28 Siemens Ag Verfahren zur Festlegung des Einspritzzeitpunkts bei einer Einspritzanlage für eine Brennkraftmaschine
DE10127363C1 (de) * 2001-06-06 2002-10-10 Siemens Ag Zündvorrichtung, Steuergerät und Zündanlage für eine Brennkraftmaschine
JP3997943B2 (ja) * 2003-04-21 2007-10-24 三菱電機株式会社 内燃機関の点火制御装置
FR2876738B1 (fr) * 2004-10-20 2009-09-25 Siemens Vdo Automotive Sas Procede pour determiner le phasage d'un moteur a combustion interne
JP4489674B2 (ja) * 2005-09-26 2010-06-23 川崎重工業株式会社 エンジンの燃焼制御装置および自動二輪車

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5820391B2 (ja) * 1979-09-27 1983-04-22 株式会社デンソー 内燃機関用無接点点火装置
DE3215728A1 (de) * 1982-04-28 1983-11-03 Robert Bosch Gmbh, 7000 Stuttgart Zuendanlage fuer eine brennkraftmaschine
JPS61279772A (ja) * 1985-06-04 1986-12-10 Nippon Denso Co Ltd 内燃機関の点火制御装置
JPS62174566A (ja) * 1986-01-28 1987-07-31 Mitsubishi Electric Corp 内燃機関の点火制御装置
JPS63239367A (ja) * 1987-03-27 1988-10-05 Hitachi Ltd 内燃機関用点火装置
EP0547260B1 (de) * 1991-12-17 1996-03-27 Siemens Aktiengesellschaft Schliessdauer-Überwachung einer Zündungsendstufe an einer Brennkraftmaschine

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002540343A (ja) * 1999-03-22 2002-11-26 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング 点火制御装置および点火制御方法

Also Published As

Publication number Publication date
US5871002A (en) 1999-02-16

Similar Documents

Publication Publication Date Title
JP3045921B2 (ja) 内燃エンジンの燃料噴射制御装置
WO2008065511A2 (en) Ignition control system for internal combustion engines
JPH10122109A (ja) 内燃機関の点火時期制御装置
JP3508720B2 (ja) エンジン制御装置
JP2841921B2 (ja) 内燃機関の電子制御燃料噴射装置
JPH0237171A (ja) エンジンの点火時期制御装置
JP4120520B2 (ja) 内燃機関の制御装置
JP4085901B2 (ja) 筒内噴射式内燃機関の始動制御装置
JP2004308545A (ja) 内燃機関の始動制御装置
JP6167637B2 (ja) 内燃機関の制御装置
JP3979161B2 (ja) エンジン制御装置
JP4269424B2 (ja) 筒内噴射式内燃機関の燃料噴射制御装置
JP6024603B2 (ja) 内燃機関の制御装置
JP6221837B2 (ja) 内燃機関の制御装置
JP6579852B2 (ja) 内燃機関の始動制御装置及び始動制御方法
JP2682651B2 (ja) エンジンの点火時期制御装置
JP2004239180A (ja) 内燃機関の始動制御装置
JP2536297B2 (ja) 内燃機関の始動時燃料制御方法
JP4147932B2 (ja) エンジンの点火時期制御装置
JPH0128308Y2 (ja)
JP3384498B2 (ja) エンジンの点火制御における処理遅れ解消方法
JP2000248980A (ja) エンジン始動制御装置
JP4254163B2 (ja) 内燃機関の燃料噴射制御装置
JP2011163206A (ja) 内燃機関の制御装置
JP6213740B2 (ja) エンジンの始動制御装置