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