(57)【要約】【目的】点火時期を遅角させる場合でも内燃機関の出力が不要に低下して車両の操縦感覚を不要に損なわせることがないようにすると共に、ノッキングやケッチンを効果的に防止するようにした内燃機関の点火時期制御装置を提供する。【解決手段】少なくとも検出されたエンジン回転数ＮＥに基づいて内燃機関の点火時期を算出し、算出された点火時期で点火を実行する内燃機関の点火時期制御装置において、内燃機関の吸気行程における負荷（スロットル開度ＴＨ）を検出し、検出された負荷が所定値（第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１、第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２）以上であると判断されるとき、算出された点火時期よりも遅角された点火時期で点火を実行する（Ｓ１４からＳ２８、Ｓ４０からＳ４８）。【選択図】図４
2010190170.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の回転数を検出する回転数検出手段と、少なくとも前記検出された回転数に基づいて前記内燃機関の点火時期を算出する点火時期算出手段と、前記算出された点火時期で点火を実行する点火実行手段とを備える内燃機関の点火時期制御装置において、前記点火実行手段は、前記内燃機関の吸気行程における負荷を検出する負荷検出手段を備えると共に、前記検出された負荷が所定値以上であると判断されるとき、前記算出された点火時期よりも遅角された点火時期で点火を実行することを特徴とする内燃機関の点火時期制御装置。
【請求項２】
前記点火実行手段は、前記検出された回転数が所定回転数以下であって、前記検出された負荷が前記所定値以上であると判断されるとき、前記遅角された点火時期で点火を実行することを特徴とする請求項１記載の内燃機関の点火時期制御装置。
【請求項３】
前記点火実行手段は、前記検出された負荷が前記所定値よりも大きく設定された第２の所定値以上であると判断されるとき、前記遅角された点火時期よりもさらに遅角された点火時期で点火を実行することを特徴とする請求項１または２記載の内燃機関の点火時期制御装置。
【請求項４】
前記負荷検出手段は、前記内燃機関のスロットルバルブの開度を検出するスロットル開度検出手段からなることを特徴とする請求項１から３のいずれかに記載の内燃機関の点火時期制御装置。
【請求項５】
前記負荷検出手段は、前記内燃機関の吸気路内の圧力を検出する吸気路内圧力検出手段からなることを特徴とする請求項１から３のいずれかに記載の内燃機関の点火時期制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は内燃機関の点火時期制御装置に関し、より詳しくは内燃機関の点火時期を遅角制御することでノッキングやクランクシャフトが逆転する現象を防止する制御装置に関する。
【背景技術】
【０００２】
内燃機関がアイドル回転数などの低回転数域で運転されている場合、吸気通路のスロットルバルブが急開されると、ノッキングが発生したり、ピストンが圧縮上死点を超える前に混合気が燃焼する結果、クランクシャフトが逆転する現象（以下、「ケッチン」という）が発生することがある。従来、これらの発生を防止するために種々の技術が提案されている。
【０００３】
例えば、スロットル開度の変化量が所定値以上である場合、ピストンが圧縮上死点を超える前に混合気が燃焼するのを防止するため、点火時期を遅角させることが知られている（下記特許文献１や特許文献２）。また、点火直前の機関回転数を検出し、その機関回転数が低下している場合、ケッチンが発生するおそれがあると判断し、同様に点火時期を遅角させることが提案されている（下記特許文献３）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−６３９７１号公報
【特許文献２】特開平１−２３２１６９号公報
【特許文献３】特開２００６−２７４９９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１あるいは特許文献２記載の技術のように、スロットル開度の変化量が所定値以上であるときに点火時期を遅角させるものでは、吸気行程以外の行程でスロットル開度が急開された場合でも、即ち吸入空気量の増大がなくて圧縮行程において圧縮負荷が増大しない場合でも、点火時期を遅角させることとなり、内燃機関の出力が不要に低下し、内燃機関が搭載される車両の操縦感覚を不要に損なわせることがあった。
【０００６】
また、特許文献３記載の技術のように、点火直前の機関回転数に応じて点火時期を遅角させるものでは、点火時期が圧縮上死点から進角されるほど圧縮上死点の直前の回転速度の低下を精度良く検出することができなくなるため、ケッチンを効果的に防止することができなかった。
【０００７】
従って、この発明の目的は上記した課題を解決し、点火時期を遅角させる場合でも内燃機関の出力が不要に低下して車両の操縦感覚を不要に損なわせることがないようにすると共に、ノッキングやケッチンを効果的に防止するようにした内燃機関の点火時期制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、請求項１にあっては、内燃機関の回転数を検出する回転数検出手段と、少なくとも前記検出された回転数に基づいて前記内燃機関の点火時期を算出する点火時期算出手段と、前記算出された点火時期で点火を実行する点火実行手段とを備える内燃機関の点火時期制御装置において、前記点火実行手段は、前記内燃機関の吸気行程における負荷を検出する負荷検出手段を備えると共に、前記検出された負荷が所定値以上であると判断されるとき、前記算出された点火時期よりも遅角された点火時期で点火を実行する如く構成した。
【０００９】
請求項２に係る内燃機関の点火時期制御装置にあっては、前記点火実行手段は、前記検出された回転数が所定回転数以下であって、前記検出された負荷が前記所定値以上であると判断されるとき、前記遅角された点火時期で点火を実行する如く構成した。
【００１０】
請求項３に係る内燃機関の点火時期制御装置にあっては、前記点火実行手段は、前記検出された負荷が前記所定値よりも大きく設定された第２の所定値以上であると判断されるとき、前記遅角された点火時期よりもさらに遅角された点火時期で点火を実行する如く構成した。
【００１１】
請求項４に係る内燃機関の点火時期制御装置にあっては、前記負荷検出手段は、前記内燃機関のスロットルバルブの開度を検出するスロットル開度検出手段からなる如く構成した。
【００１２】
請求項５に係る内燃機関の点火時期制御装置にあっては、前記負荷検出手段は、前記内燃機関の吸気路内の圧力を検出する吸気路内圧力検出手段からなる如く構成した。
【発明の効果】
【００１３】
請求項１に係る内燃機関の点火時期制御装置にあっては、内燃機関の吸気行程における負荷が所定値以上であると判断されるとき、算出された点火時期よりも遅角された点火時期で点火を実行するように構成したので、点火時期を遅角させる場合でも内燃機関の出力が不要に低下することがなく、内燃機関が搭載される車両の操縦感覚を不要に損なわせることがないと共に、ノッキングやケッチンを効果的に防止することができる。即ち、内燃機関の吸気行程における負荷の増加を検出することで、その次の圧縮行程における吸入空気の圧縮負荷の増大を精度良く検出でき、よってそれが検出されたときに限って点火時期を遅角させるので、内燃機関の出力が不要に低下することがなく、内燃機関が搭載される車両の操縦感覚を不要に損なわせることがない。また、ノッキングやケッチンの発生原因である吸入空気の圧縮負荷の増大に応じて点火時期を遅角させるので、ノッキングやケッチンを効果的に防ぐことができる。
【００１４】
請求項２に係る内燃機関の点火時期制御装置にあっては、検出された回転数が所定回転数以下であって、内燃機関の吸気行程における負荷が所定値以上であると判断されるとき、遅角された点火時期で点火を実行するように構成したので、換言すれば、クランクシャフトの回転慣性エネルギが小さく、ノッキングやケッチンが発生し易いようなアイドル回転数などの低回転数域に限って点火時期を遅角させるように構成したので、内燃機関の出力が不要に低下することが一層なく、内燃機関が搭載される車両の操縦感覚を不要に損なわせることが一層ないと共に、ノッキングやケッチンを一層効果的に防止することができる。
【００１５】
請求項３に係る内燃機関の点火時期制御装置にあっては、内燃機関の吸気行程における負荷が前記所定値よりも大きく設定された第２の所定値以上であると判断されるとき、遅角された点火時期よりもさらに遅角された点火時期で点火を実行するように構成したので、換言すれば、吸入空気の圧縮負荷の一層の増大が検出されたとき、点火時期を一層遅角させるように構成したので、ノッキングやケッチンを一層効果的に防ぐことができる。
【００１６】
請求項４に係る内燃機関の点火時期制御装置にあっては、負荷検出手段は、内燃機関のスロットルバルブの開度を検出するスロットル開度検出手段からなるように構成したので、簡易な構成ながら、内燃機関の負荷を精度良く検出することができる。また、運転者が操作するアクセラレータ（スロットルグリップ）によって駆動され、運転者の操作に即応するスロットルバルブの開度を検出するスロットル開度検出手段を負荷検出手段として用いることで、ノッキングやケッチンをより一層効果的に防ぐことができる。
【００１７】
請求項５に係る内燃機関の点火時期制御装置にあっては、負荷検出手段は、内燃機関の吸気路内の圧力を検出する吸気路内圧力検出手段からなるように構成したので、簡易な構成ながら、内燃機関の負荷を精度良く検出することができる。また、低回転数域においては、吸気路内圧力の変動がより顕著に現れることから、アクセラレータの操作による負荷の変動をより精度良く検出することができる。
【図面の簡単な説明】
【００１８】
【図１】この発明の第１実施例に係る内燃機関の点火時期制御装置を全体的に示す概略図である。
【図２】図１に示すクランク角センサのクランク角度の検出について説明する説明図である。
【図３】図１に示す電子制御ユニット（ＥＣＵ）の構成を全体的に示すブロック図である。
【図４】図１に示す内燃機関の点火時期制御装置の動作を示すフロー・チャートである。
【図５】図４のフロー・チャートの処理を説明するタイム・チャートである。
【図６】同様に、図４のフロー・チャートの処理を説明するタイム・チャートである。
【図７】この発明の第２実施例に係る内燃機関の点火時期制御装置の動作を示す、図４と同様なフロー・チャートである。
【図８】図７の吸気圧ボトム検出処理のサブ・ルーチン・フロー・チャートである。
【図９】図７および図８のフロー・チャートの処理を説明するタイム・チャートである。
【図１０】同様に、図７および図８のフロー・チャートの処理を説明するタイム・チャートである。
【発明を実施するための形態】
【００１９】
以下、添付図面に即してこの発明に係る内燃機関の点火時期制御装置を実施するための形態について説明する。
【実施例１】
【００２０】
図１は、この発明の第１実施例に係る内燃機関の点火時期制御装置を全体的に示す概略図である。
【００２１】
図１において符号１０は、図示しない車両（例えば自動二輪車）に搭載された内燃機関（以下「エンジン」という）を示す。エンジン１０は４サイクル単気筒の水冷式で、排気量２５０ｃｃ程度のガソリン・エンジンからなる。尚、符号１０ａはエンジン１０のクランクケースを示す。
【００２２】
エンジン１０の吸気路１２にはスロットルバルブ１４が配置される。スロットルバルブ１４は、車両のハンドルバーに運転者の手動操作自在に設けられたアクセラレータ（スロットルグリップ）にスロットルワイヤ（共に図示せず）を介して機械的に接続され、アクセラレータの操作量に応じて開閉され、エアクリーナ１６から吸気路１２を通ってエンジン１０に吸入される空気の量を調整する。尚、スロットルバルブ１４は、アクセラレータが操作されないとき、アイドル開度（全閉付近）となるように設定される。
【００２３】
吸気路１２には、スロットルバルブ１４の上流側と下流側とを連通してスロットルバルブ１４をバイパスするバイパス路２０が接続される。バイパス路２０の途中にはバイパス路２０の空気量を調整してエンジン１０のアイドル回転数を調整するアイドル回転数制御バルブ（以下「ＩＳＣバルブ」という）２２が設けられる。ＩＳＣバルブ２２はステッピングモータ２４によって駆動される。
【００２４】
吸気路１２においてスロットルバルブ１４の下流側の吸気ポート付近にはインジェクタ２６が配置され、スロットルバルブ１４およびＩＳＣバルブ２２で調整された吸入空気にガソリン燃料を噴射する。噴射された燃料は吸入空気と混合して混合気を形成し、混合気は、吸気バルブ３０が開弁されるとき、燃焼室３２に流入する。
【００２５】
燃焼室３２に流入した混合気は、点火コイル３４から供給された高電圧で点火プラグ３６が火花放電されるときに点火されて燃焼し、ピストン４０を図１において下方に駆動してクランクシャフト４２を回転させる。燃焼によって生じた排ガスは、排気バルブ４４が開弁されるとき、排気管４６を流れる。排気管４６には触媒装置５０が配置され、排ガス中の有害成分を除去する。触媒装置５０で浄化された排ガスはさらに下流に流れ、エンジン１０の外部に排出される。
【００２６】
スロットルバルブ１４の付近にはポテンショメータからなるスロットル開度センサ５２が設けられ、スロットルバルブ１４の開度ＴＨを示す出力を生じる。吸気路１２のスロットルバルブ１４の上流側には吸気温センサ５４が設けられて吸入空気の温度ＴＡを示す出力を生じると共に、下流側には絶対圧センサ５６が設けられ、吸気路内絶対圧（吸気圧）ＰＭＢを示す出力を生じる。
【００２７】
エンジン１０のシリンダブロックの冷却水通路１０ｂには水温センサ６０が取り付けられ、エンジン１０の温度（エンジン冷却水温）ＴＷに応じた出力を生じる。エンジン１０のクランクシャフト４２の付近にはクランク角センサ６２が取り付けられ、クランク角度位置（ピストン位置）を示す出力を生じる。
【００２８】
図２は、クランク角センサのクランク角度の検出について説明する説明図である。
【００２９】
図２に示すように、クランク角センサ６２は、クランクシャフト４２に接続されてそれと連動して回転するタイミングロータ６４に対向して配置される。クランク角センサ６２は電磁ピックアップ式のセンサであると共に、クランクケース壁面に固定される。タイミングロータ６４の円周上には、磁性体からなる複数個（１８個）の突起が所定距離をおいて配置される。具体的には、１８個の突起は、タイミングロータ６４の回転方向において各突起の後端位置が等角度（２０°）の間隔となるように配置される。１８個の突起の内の１つは基準角度位置検出用の突起であり、前端位置から後端位置までの長さが他の突起に比べて長く形成されると共に、その後端位置は上死点前１０°（ＢＴＤＣ１０°）となるように設定される。クランク角センサ６２はタイミングロータ６４の回転に伴って発生する、１８個の突起に対応した信号を検出することで、クランク角度を検出する。
【００３０】
クランクシャフト１回転（３６０°ＣＡ）に対し、上死点後１０°（ＡＴＤＣ１０°）を０番として１７番までの１８個のクランク角度位置を示す番号（ＣＡＬＳＴＧ）が与えられる。
【００３１】
また、エンジン行程を判別した後においては、クランクシャフト２回転（７２０°ＣＡ）に対し、圧縮行程の下死点後１０°（ＡＢＤＣ１０°）を０番として３５番までの３６個のクランク角度位置を示す番号（ＳＴＡＧＥ）が与えられる。即ち、番号（ＳＴＡＧＥ）を参照することにより、吸気行程、圧縮行程、膨張行程および排気行程を特定することができる。具体的には、２６番から３５番までが吸気行程、０番から８番までが圧縮行程、９番から１７番までが膨張行程、１８番から２５番までが排気行程に対応する。
【００３２】
図１の説明に戻ると、上記したスロットル開度センサ５２などの各センサの出力は、電子制御ユニット（Electronic Control Unit。以下「ＥＣＵ」という）６６に入力される。
【００３３】
図３は、そのＥＣＵの構成を全体的に示すブロック図である。
【００３４】
ＥＣＵ６６はマイクロコンピュータからなり、図３に示すように、波形整形回路６６ａと、回転数カウンタ６６ｂと、Ａ／Ｄ変換回路６６ｃと、ＣＰＵ６６ｄと、点火回路６６ｅと、２個の駆動回路６６ｆ，６６ｇと、ＲＯＭ６６ｈと、ＲＡＭ６６ｉおよびタイマ６６ｊを備える。
【００３５】
波形整形回路６６ａは、クランク角センサ６２の出力（信号波形）をパルス信号に波形整形し、回転数カウンタ６６ｂに出力する。回転数カウンタ６６ｂは入力されたパルス信号をカウントしてクランク角度を示す前記した番号（ＣＡＬＳＴＧ，ＳＴＡＧＥ）をＣＰＵ６６ｄに出力する。Ａ／Ｄ変換回路６６ｃは、スロットル開度センサ５２などの各センサの出力が入力され、アナログ信号値をデジタル信号値に変換してＣＰＵ６６ｄに出力する。
【００３６】
ＣＰＵ６６ｄは、入力された各種信号に基づき、ＲＯＭ６６ｈに格納されているプログラムに従って演算を実行し、点火回路６６ｅに点火出力信号を送出することで、点火コイル３４の通電を制御し、点火プラグ３６を動作させ、エンジン１０の点火時期を制御する。また、同様にＣＰＵ６６ｄは、入力された各種信号に基づき、ＲＯＭ６６ｈに格納されているプログラムに従って演算を実行し、各駆動回路６６ｆ，６６ｇに制御信号を送出してインジェクタ２６やステッピングモータ２４の駆動を制御する。
【００３７】
ＲＡＭ６６ｉは、スロットル開度ＴＨやエンジン回転数ＮＥなどの各種パラメータのバッファリングなどに利用される。タイマ６６ｊは、プログラム中の時間計測処理に利用される。
【００３８】
図４は第１実施例に係る内燃機関の点火時期制御装置の動作を示すフロー・チャートである。このフロー・チャートのプログラムはＣＰＵによって実行されると共に、クランク信号（番号（ＣＡＬＳＴＧ，ＳＴＡＧＥ））が入力される毎に実行される。
【００３９】
以下説明すると、先ずＳ１０において、エンジン回転数ＮＥを算出する。具体的には、前回のクランク信号が入力されてから今回のクランク信号が入力されるまでの経過時間、即ちクランク角信号間時間に基づいてエンジン回転数ＮＥを算出する。
【００４０】
次いでＳ１２に進み、スロットル開度ＴＨを算出する。これは、前述したスロットル開度センサ５２から出力される信号から算出する。
【００４１】
次いでＳ１４に進み、点火出力実施フラグＦ＿ＩＧＥＮＤを参照し、点火出力が実施済みであるか否か判断する。点火出力実施フラグＦ＿ＩＧＥＮＤは、後述の如く、点火出力が実施されたとき、１にセットされる。最初のプログラムループでは否定されてＳ１６に進む。
【００４２】
Ｓ１６においては、今回のプログラムループが高負荷判定区間内にあるか否か判断する。具体的には、今回のクランク信号（番号（ＳＴＡＧＥ））を参照し、２６番から３５番に該当するか、即ち吸気行程に該当するか否か判断する。
【００４３】
Ｓ１６において肯定される場合、Ｓ１８に進んで第２の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ２を参照し、第２の高負荷判定が実施済みであるか否か判断する。第２の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ２は、次のステップにおいて高負荷であると判定されるとき、１にセットされる。第２の高負荷判定とは、後述する第１の高負荷判定よりもエンジン１０が高負荷であるか否かを判定するものである。最初のプログラムループにおいては、第２の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ２は０にリセットされているので、否定されてＳ２０に進む。
【００４４】
Ｓ２０においては、スロットル開度ＴＨが第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２以上であるか否か判断する。第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２は、後述する第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１よりも大きく設定されると共に、エンジン１０の負荷が極めて高いことを示すに足る値、例えば４０°に設定される。
【００４５】
Ｓ２０において肯定されるときはＳ２２に進み、第２の高負荷判定が実施済みであるとして第２の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ２を１にセットする。
【００４６】
一方、Ｓ２０において否定されるときはＳ２４に進み、第１の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ１を参照し、第１の高負荷判定が実施済みであるか否か判断する。第１の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ１は、次のステップにおいて高負荷であると判定されるとき、１にセットされる。最初のプログラムループにおいては、０にリセットされているので、否定されてＳ２６に進む。
【００４７】
Ｓ２６においては、スロットル開度ＴＨが第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１以上であるか否か判断する。第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１は、エンジンの負荷が高いことを示すに足る値、例えば２０°に設定される。
【００４８】
Ｓ２６において肯定されるときはＳ２８に進み、第１の高負荷判定が実施済みであるとして第１の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ１を１にセットする。
【００４９】
一方、Ｓ２６において否定されるときはＳ３０に進む。また、Ｓ１６において否定されるとき、Ｓ１８あるいはＳ２４において肯定されるときも、Ｓ３０に進む。
【００５０】
Ｓ３０においては、エンジン回転数ＮＥとスロットル開度ＴＨに応じて点火時期を算出する。具体的には、エンジン回転数ＮＥとスロットル開度ＴＨからＲＯＭ６６ｈに格納されたマップを参照し、点火時期として点火タイマのセットタイミングおよび点火タイマ値を求める。尚、ここで用いられるエンジン回転数ＮＥやスロットル開度ＴＨは、今回のプログラムループにおいて算出されたものであっても、プログラム所定周期分の平均値であっても良い。
【００５１】
次いでＳ３２に進み、エンジン回転数ＮＥがハード点火上限回転数ＮＥＨＡＲＤＩＧＨ以下であるか否か判断する。ハード点火上限回転数ＮＥＨＡＲＤＩＧＨは、エンジン回転数ＮＥがアイドル回転数などの低回転数であることを示すに足る値、例えば２０００ｒｐｍに設定される。ハード点火とは、所定のクランク角度（例えば、上死点前１０°（ＢＴＤＣ１０°））で点火出力を実施するものであり、点火タイマを用いて点火出力を実施する演算点火（ソフト点火）に対する点火出力方法である。
【００５２】
Ｓ３２において否定されるときにはＳ３４に進み、今回のプログラム実行がＳ３０において算出された点火タイマのセットタイミングであるか否か判断する。具体的には、今回の番号（ＳＴＡＧＥ）を参照し、点火タイマのセットタイミングに該当するか否か判断する。点火タイマセットタイミングでなければ、Ｓ３４において否定され、Ｓ３６に進む。Ｓ３６では点火出力実施済みか否か判断されるが、Ｓ３４で否定される場合はＳ３６でも否定されるため、プログラムは終了される。
【００５３】
一方、点火タイマセットタイミングであってＳ３４において肯定されるときにはＳ３８に進み、演算点火を実行させるためにＳ３０において算出された点火タイマ値を点火タイマにセットする。点火タイマはダウンカウンタであり、点火タイマ値が０になると、点火出力が実施される。演算点火による点火出力実施（点火時期）は、後述する場合を除き、ハード点火による点火出力実施よりも進角側に設定される。
【００５４】
次いでＳ３６に進み、点火出力実施済みか否か判断する。点火タイマ値が０になるまでは否定されてプログラムを終了するが、０になると肯定されてＳ４０に進み、点火出力実施フラグＦ＿ＩＧＥＮＤが１にセットされる。
【００５５】
一方、Ｓ３２において肯定されるときはＳ４２に進み、第２の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ２が１にセットされているか否か判断する。
【００５６】
Ｓ４２において否定されるときはＳ４４に進み、第１の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ１が１にセットされているか否か判断する。Ｓ４４において否定されるときにはＳ３４に進み、前記した演算点火を実行する。その後のＳ３６以降のステップは先と同様である。
【００５７】
一方、Ｓ４４において肯定されるときにはＳ４６に進み、今回のプログラム実行がハード点火タイミングであるか否か判断する。具体的には、今回の番号（ＳＴＡＧＥ）を参照し、所定のクランク角度（上死点前１０°（ＢＴＤＣ１０°））に該当するか否か判断する。ハード点火タイミングでなければ、Ｓ４６において否定され、Ｓ３６を経てプログラムを終了する。
【００５８】
一方、ハード点火タイミングであってＳ４６において肯定されるときにはＳ４８に進み、点火出力を実施する。即ち、ハード点火が実施される。次いでＳ３６、Ｓ４０と進み、先と同様に点火出力実施フラグＦ＿ＩＧＥＮＤを１にセットする。
【００５９】
一方、Ｓ４２において肯定されるときはＳ５０に進み、リタード（遅角）設定を行う。具体的には、ハード点火よりも遅角側で点火出力が実施されるように、点火タイマセットタイミングおよび点火タイマ値を設定する。例えば点火タイマセットタイミングを上死点前３０°（ＢＴＤＣ３０°）に設定すると共に、上死点前５°（ＢＴＤＣ５°）で点火出力が実施されるように点火タイマ値を設定する。
【００６０】
次いでＳ３４に進み、リタード設定された点火タイマセットタイミングおよび点火タイマ値に基づいて前記した演算点火を実行する。その後のＳ３６以降のステップは先と同様である。
【００６１】
尚、Ｓ１４において肯定されるときはＳ５２に進み、第１の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ１および第２の高負荷判定実施フラグＦ＿ＴＨＨＡＲＤＩＧ２を０にリセットする。次いでＳ５４に進み、点火出力実施フラグＦ＿ＩＧＥＮＤも０にリセットする。
【００６２】
図５および図６は、図４のフロー・チャートの処理を説明するタイム・チャートである。
【００６３】
図５に示すように、番号（ＳＴＡＧＥ）２６番から３５番までの吸気行程が高負荷判定区間であり、スロットル開度ＴＨに基づいて高負荷判定が実施される。時刻Ｔ１からＴ２までにおいては、スロットル開度ＴＨが第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１未満であって高負荷であると判断されないことから、時刻Ｔ３において演算点火による点火出力が実施される。演算点火による点火出力は、ハード点火クランク角度（上死点前１０°（ＢＴＤＣ））よりも進角側で実施される。
【００６４】
一方、時刻Ｔ４においては、高負荷判定区間でスロットル開度ＴＨが第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１以上となることから、ハード点火に切り換えられ、時刻Ｔ５においてハード点火による点火出力が実施される。尚、点火出力が実施された後、時刻Ｔ６において高負荷判定およびハード点火切り換えがリセットされる。
【００６５】
また、図６に示すように、時刻Ｔ７においては、高負荷判定区間でスロットル開度ＴＨが第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２以上となることから、時刻Ｔ８において点火タイマセットされると共に、時刻Ｔ９においてハード点火よりもリタードされたタイミングで点火出力が実施される。
【００６６】
このように、吸気行程において検出されたスロットル開度ＴＨが第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１以上であると判断されるとき、演算点火による点火時期よりも遅角されたハード点火による点火時期で点火を実行するようにした。即ち、吸気行程におけるスロットル開度ＴＨの増加が検出されるとき、その次の圧縮行程において吸入空気の圧縮負荷が増大し、ノッキングやケッチンが発生するおそれがあることから、点火時期を遅角させるようにした。逆に言えば、吸入行程以外の行程でスロットル開度の増加が検出されたとしても、吸入空気の圧縮負荷が増大することがなく、ノッキングやケッチンが発生するおそれがないことから、点火時期を遅角させないようにした。即ち、ノッキングやケッチンが発生するおそれがある場合に限って点火時期を遅角させるため、エンジン出力が不要に低下することがなく、このエンジンが搭載される車両の操縦感覚を不要に損なわせることがないと共に、ノッキングやケッチンを効果的に防ぐことができる。
【００６７】
また、吸気行程において検出されたスロットル開度ＴＨが第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２以上であると判断されるとき、ハード点火による点火時期よりもさらに遅角された点火時期で点火を実行するようにした。即ち、吸気行程におけるスロットル開度ＴＨが一層増加するとき、圧縮行程において吸入空気の圧縮負荷が一層増大し、ノッキングやケッチンが発生するおそれが一層増すことから、点火時期を一層遅角させるようにした。これにより、ノッキングやケッチンを一層効果的に防ぐことができる。
【００６８】
また、エンジン回転数ＮＥがハード点火上限回転数ＮＥＨＡＲＤＩＧＨ以下であって、吸気行程において検出されたスロットル開度ＴＨが第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１や第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２所定値以上であると判断されるとき、点火時期を遅角するようにした。換言すれば、クランクシャフト４２の回転慣性エネルギが小さく、ノッキングやケッチンが発生し易いようなアイドル回転数などの低回転数域に限って点火時期を遅角させるようにした。これにより、エンジン出力が不要に低下することが一層なく、このエンジン１０が搭載される車両の操縦感覚を不要に損なわせることが一層ないと共に、ノッキングやケッチンを一層効果的に防ぐことができる。
【実施例２】
【００６９】
次いで、この発明の第２実施例に係る内燃機関の点火時期制御装置について説明する。第２実施例に係る内燃機関の点火時期制御装置にあっては、スロットル開度ＴＨに代えて吸気圧ＰＭＢを用いて高負荷判定を行うようにした。
【００７０】
図７はこの発明の第２実施例に係る内燃機関の点火時期制御装置の動作を示す、図４と同様なフロー・チャートである。図４と同一のステップについての説明は省略する。また、図４と類似するステップにはステップ番号に「ａ」の添え字を付す。
【００７１】
Ｓ１２ａにおいては、吸気圧ＰＭＢも算出する。これは、前述した絶対圧センサ５６から出力される信号から算出する。
【００７２】
Ｓ１６において肯定されるときにはＳ５６に進み、吸気圧ボトム検出処理を実行する。
【００７３】
図８は、その処理を示すサブルーチン・フロー・チャートである。
【００７４】
以下説明すると、Ｓ１００において吸気圧ボトム検出実施フラグＦ＿ＰＭＢＴＭを参照し、吸気圧ボトム検出が実施済みであるか否か判断する。吸気圧ボトム検出実施フラグＦ＿ＰＭＢＴＭは、後述の如く、吸気圧ボトム値がセットされたとき、１にセットされる。最初のプログラムループにおいては否定されてＳ１０２に進む。
【００７５】
Ｓ１０２においては、吸気圧ボトム検出処理開始フラグＦ＿ＰＭＢＴＭＯＫを参照し、吸気圧ボトム検出処理が開始されているか否か判断する。最初のプログラムループにおいては否定されてＳ１０４に進む。
【００７６】
Ｓ１０４においては、３種類の吸気圧ボトム検出用パラメータＰＭＢ０，ＰＭＢ１，ＰＭＢ２に今回算出された吸気圧ＰＭＢをそれぞれ記憶させる。
【００７７】
次いでＳ１０６に進み、吸気圧ボトム検出処理開始フラグＦ＿ＰＭＢＴＭＯＫを１にセットする。これにより、次回以降のプログラムループでＳ１０２において肯定され、Ｓ１０８に進む。
【００７８】
Ｓ１０８においては、３種類の吸気圧ボトム検出用パラメータＰＭＢ０，ＰＭＢ１，ＰＭＢ２を更新する。具体的には、パラメータＰＭＢ０には今回算出された吸気圧ＰＭＢを記憶させ、パラメータＰＭＢ１にはパラメータＰＭＢ０の前回値を記憶させると共に、パラメータＰＭＢ２にはパラメータＰＭＢ１の前回値を記憶させる。以下、ＰＭＢ０を今回パラメータ、ＰＭＢ１を前回パラメータ、ＰＭＢ２を前々回パラメータと呼ぶ。
【００７９】
次いでＳ１１０に進み、前回検出された吸気圧ＰＭＢが減少したものであるか否か判断する。具体的には、前回パラメータＰＭＢ１が前々回パラメータＰＭＢ２以下であるか否か判断する。前回検出された吸気圧ＰＭＢが減少したものである場合にはＳ１１０で肯定されてＳ１１２に進む。
【００８０】
Ｓ１１２においては、今回検出された吸気圧ＰＭＢが増加したものであるか否か判断する。具体的には、今回パラメータＰＭＢ０が前回パラメータＰＭＢ１よりも大きいか否か判断する。今回検出された吸気圧ＰＭＢが増加したものである場合にはＳ１１２で肯定されてＳ１１４に進む。
【００８１】
Ｓ１１４においては、吸気圧ボトム値ＰＭＢＴＭとして前回パラメータＰＭＢ１をセットする。次いでＳ１１６に進み、吸気圧ボトム検出実施フラグＦ＿ＰＭＢＴＭを１にセットし、サブルーチン・フロー・チャートを終了する。また、Ｓ１００において肯定されるとき、Ｓ１１０あるいはＳ１１２において否定されるときも、それら以降のステップをスキップしてサブルーチン・フロー・チャートを終了する。
【００８２】
図７のフロー・チャートの説明に戻ると、次いでＳ５８に進み、吸気圧ボトム検出実施フラグＦ＿ＰＭＢＴＭを参照し、吸気圧ボトム検出が実施済みであるか否か判断する。Ｓ５８において肯定される場合、Ｓ１８ａに進んで第２の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ２を参照し、第２の高負荷判定が実施済みであるか否か判断する。第２の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ２は、次のステップにおいて高負荷であると判定されるとき、１にセットされる。最初のプログラムループにおいては、第２の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ２は０にリセットされているので、否定されてＳ２０ａに進む。
【００８３】
Ｓ２０ａにおいては、吸気圧ボトム値ＰＭＢＴＭが第２の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ２以上であるか否か判断する。第２の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ２は、後述する第１の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ１よりも大きく設定されると共に、エンジン１０の負荷が極めて高いことを示すに足る値、例えば７０ｋＰａに設定される。
【００８４】
Ｓ２０ａにおいて肯定されるとき、Ｓ２２ａに進み、第２の高負荷判定が実施済みであるとして第２の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ２を１にセットする。
【００８５】
一方、Ｓ２０ａにおいて否定されるときは、Ｓ２４ａに進み、第１の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ１を参照し、第１の高負荷判定が実施済みであるか否か判断する。第１の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ１は、次のステップにおいて高負荷であると判定されるとき、１にセットされる。最初のプログラムループにおいては０にリセットされているので、否定されてＳ２６ａに進む。
【００８６】
Ｓ２６ａにおいては、吸気圧ボトム値ＰＭＢＴＭが第１の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ１以上であるか否か判断する。第１の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ１は、エンジン１０の負荷が高いことを示すに足る値、例えば５０ｋＰａに設定される。
【００８７】
Ｓ２６ａにおいて肯定されるとき、Ｓ２８ａに進み、第１の高負荷判定が実施済みであるとして第１の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ１を１にセットする。
【００８８】
一方、Ｓ２６ａにおいて否定されるときはＳ３０に進む。また、Ｓ５８において否定されるとき、Ｓ１８ａあるいはＳ２４ａにおいて肯定されるときも、Ｓ３０に進む。Ｓ３０以降の処理は、図４と概ね同一であるため、説明を省略する。
【００８９】
尚、Ｓ１４において肯定されるときはＳ６０に進み、吸気圧ボトム検出処理開始フラグＦ＿ＰＭＢＴＭＯＫを０にリセットする。次いでＳ６２に進み、吸気圧ボトム検出実施フラグＦ＿ＰＭＢＴＭを０にリセットする。次いでＳ５２ａに進み、第１の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ１および第２の高負荷判定実施フラグＦ＿ＰＭＨＡＲＤＩＧ２を０にリセットする。
【００９０】
図９および図１０は、図７および図８のフロー・チャートの処理を説明するタイム・チャートである。
【００９１】
図９に示すように、番号（ＳＴＡＧＥ）２６番から３５番までの吸気行程が高負荷判定区間であり、吸気圧ボトム値ＰＭＢＴＭに基づいて高負荷判定が実施される。時刻Ｔ０１からＴ０２までにおいては、吸気圧ボトム値ＰＭＢＴＭは第１の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ１未満であって高負荷であると判断されないことから、時刻Ｔ０３において演算点火による点火出力が実施される。演算点火による点火出力は、ハード点火クランク角度（上死点前１０°（ＢＴＤＣ））よりも進角側で実施される。
【００９２】
一方、時刻Ｔ０４においては、高負荷判定区間で吸気圧ボトム値ＰＭＢＴＭが第１の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ１以上となることから、ハード点火に切り換えられ、時刻Ｔ０５においてハード点火による点火出力が実施される。尚、点火出力が実施された後、時刻Ｔ０６において高負荷判定およびハード点火切り換えがリセットされる。
【００９３】
また、図１０に示すように、時刻Ｔ０７においては、高負荷判定区間で吸気圧ボトム値ＰＭＢＴＭが第２の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ２以上となることから、時刻Ｔ０８において点火タイマセットされると共に、時刻Ｔ０９においてハード点火よりもリタードされたタイミングで点火出力が実施される。
【００９４】
このように、吸気行程において検出された吸気圧ボトム値ＰＭＢＴＭが第１の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ１以上であると判断されるとき、演算点火による点火時期よりも遅角されたハード点火による点火時期で点火を実行するようにした。
【００９５】
また、吸気行程において検出された吸気圧ボトム値ＰＭＢＴＭが第２の高負荷判定しきい値ＰＭＨＤＩＧＩＮＴ２以上であると判断されるとき、ハード点火による点火時期よりもさらに遅角された点火時期で点火を実行するようにした。
【００９６】
これにより、第１実施例で述べたのと同様な効果を得ることができる。
【００９７】
以上の如く、この発明の第１実施例および第２実施例にあっては、内燃機関（エンジン１０）の回転数（エンジン回転数ＮＥ）を検出する回転数検出手段（クランク角センサ６２、ＣＰＵ６６ｄ、Ｓ１０）と、少なくとも前記検出された回転数に基づいて前記内燃機関の点火時期を算出する点火時期算出手段（ＣＰＵ６６ｄ、Ｓ３０）と、前記算出された点火時期で点火を実行する点火実行手段（点火コイル３４、点火プラグ３６、点火回路６６ｅ、ＣＰＵ６６ｄ、Ｓ３４、Ｓ３８）とを備える内燃機関の点火時期制御装置において、前記点火実行手段は、前記内燃機関の吸気行程における負荷（スロットル開度ＴＨ、吸気圧ボトム値ＰＭＢＴＭ）を検出する負荷検出手段（ＣＰＵ６６ｄ、Ｓ１２、Ｓ１２ａ、Ｓ５６、Ｓ１００からＳ１１６）を備えると共に、前記検出された負荷が所定値（第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１，ＰＭＨＤＩＧＩＮＴ１、第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２，ＰＭＨＤＩＧＩＮＴ２）以上であると判断されるとき、前記算出された点火時期よりも遅角された点火時期で点火を実行する（ＣＰＵ６６ｄ、Ｓ１４からＳ２８、Ｓ３４からＳ５０、Ｓ１８ａからＳ２８ａ、Ｓ４２ａ、Ｓ４４ａ）如く構成した。
【００９８】
また、前記点火実行手段は、前記検出された回転数が所定回転（ハード点火上限回転数ＮＥＨＡＲＤＩＧＨ）数以下であって、前記検出された負荷が前記所定値以上であると判断されるとき、前記遅角された点火時期で点火を実行する（ＣＰＵ６６ｄ、Ｓ１４からＳ２８、Ｓ３２からＳ５０、Ｓ１８ａからＳ２８ａ、Ｓ４２ａ、Ｓ４４ａ）如く構成した。
【００９９】
また、前記点火実行手段は、前記検出された負荷が前記所定値（第１の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ１，ＰＭＨＤＩＧＩＮＴ１）よりも大きく設定された第２の所定値（第２の高負荷判定しきい値ＴＨＨＤＩＧＩＮＴ２，ＰＭＨＤＩＧＩＮＴ２）以上であると判断されるとき、前記遅角された点火時期よりもさらに遅角された点火時期で点火を実行する（ＣＰＵ６６ｄ、Ｓ１４からＳ２２、Ｓ３４からＳ４２、Ｓ５０、Ｓ１８ａからＳ２２ａ、Ｓ４２ａ）如く構成した。
【０１００】
また、前記負荷検出手段は、前記内燃機関のスロットルバルブの開度を検出するスロットル開度検出手段（スロットル開度センサ５２、ＣＰＵ６６ｄ、Ｓ１２）からなる如く構成した。
【０１０１】
また、前記負荷検出手段は、前記内燃機関の吸気路内の圧力を検出する吸気路内圧力検出手段（絶対圧センサ５６、ＣＰＵ６６ｄ、Ｓ１２ａ）からなる如く構成した。
【０１０２】
尚、上記において、車両の例として自動二輪車を挙げたが、それに限られるものではなく、四輪自動車であっても良い。
【符号の説明】
【０１０３】
１０：エンジン（内燃機関）、１２：吸気路、１４：スロットルバルブ、３４：点火コイル、３６：点火プラグ、４２：クランクシャフト、５２：スロットル開度センサ、５６：絶対圧センサ、６２：クランク角センサ、６６：ＥＣＵ、６６ｄ：ＣＰＵ、６６ｅ：点火回路
【図１】
2010190170.tif 000003
【図２】
2010190170.tif 000004
【図３】
2010190170.tif 000005
【図４】
2010190170.tif 000006
【図５】
2010190170.tif 000007
【図６】
2010190170.tif 000008
【図７】
2010190170.tif 000009
【図８】
2010190170.tif 000010
【図９】
2010190170.tif 000011
【図１０】
2010190170.tif 000012