(57)【要約】【課題】クランク軸が逆転したときに点火を禁止すると共に、点火禁止の解除を適切なタイミングで実行して再始動性を向上させるようにした内燃機関の制御装置を提供する。【解決手段】内燃機関（エンジン）のクランク角センサからクランク角度信号が出力されるとき、クランク軸の回転で駆動される交流発電機の交流電圧の極性を判定し（Ｓ１０２）、前記判定された極性の周期とクランク軸が正転方向に回転させられるときに交流発電機から出力されるべき正転時極性周期とが一致するときにクランク軸は正転と判定する一方、一致しないときに逆転と判定し（Ｓ１１０〜Ｓ１１４）、クランク軸が逆転と判定されるとき、内燃機関の点火を禁止すると共に（Ｓ１１６）、クランク軸が逆転と判定された後、前記判定された極性の周期が正転時極性周期に一致した場合、内燃機関の点火の禁止を解除する（Ｓ１０６，Ｓ１２０〜Ｓ１３４）。【選択図】図５
2010209759.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関のクランク軸の所定クランク角度ごとにクランク角度信号を出力するクランク角度信号出力手段と、前記クランク軸の回転で駆動されて交流電圧を出力する交流発電機と、前記クランク角度信号が出力されるとき、前記交流発電機から出力される交流電圧の極性を判定する極性判定手段と、前記判定された極性の周期を前記クランク軸が正転方向に回転させられるときに前記交流発電機から出力されるべき正転時極性周期と比較し、前記判定された極性の周期が前記正転時極性周期に一致するときに前記クランク軸は正転と判定する一方、一致しないときに前記クランク軸は逆転と判定するクランク軸回転方向判定手段と、前記クランク軸が逆転と判定されるとき、前記内燃機関の点火を禁止する点火禁止手段とを備えると共に、前記点火禁止手段は、前記クランク軸が逆転と判定された後、前記判定された極性の周期が前記正転時極性周期に一致した場合、前記内燃機関の点火の禁止を解除することを特徴とする内燃機関の制御装置。
【請求項２】
前記クランク軸回転方向判定手段は、前記クランク角度信号が出力される度に前記判定された極性の周期が前記正転時極性周期に一致するか否か判定すると共に、前記クランク軸が逆転と判定された後、前記一致と判定される回数が所定回数に到達したとき、前記クランク軸が逆転から正転に復帰したと判定することを特徴とする請求項１記載の内燃機関の制御装置。
【請求項３】
前記クランク軸が逆転と判定されるとき、前記内燃機関の燃料噴射を禁止する燃料噴射禁止手段を備えると共に、前記燃料噴射禁止手段は、前記クランク軸が逆転と判定された後、前記判定された極性の周期が前記正転時極性周期に一致した場合、前記内燃機関の燃料噴射の禁止を解除することを特徴とする請求項１または２記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は内燃機関の制御装置に関し、より詳しくはクランク軸が逆転したときに点火を禁止するようにした内燃機関の制御装置に関する。
【背景技術】
【０００２】
内燃機関のクランキング時などにおいてクランク軸の回転速度が不足すると、クランク軸が正転方向の回転から逆転方向の回転に反転することがある。そのような状態のときに点火が行われると、クランク軸などに逆転負荷が作用して機関本体の損傷などを引き起こす恐れがある。そこで、従来より、クランク軸の逆転が検知されるとき、内燃機関の点火を禁止するようにした技術が提案されている（例えば特許文献１参照）。
【０００３】
ところで、上記した点火の禁止を行った後に内燃機関を再始動させるためには、点火禁止を解除する必要があり、内燃機関が停止（正確には、クランク軸の回転が停止）したときに解除するのが一般的である。また、下記の特許文献２記載の技術にあっては、点火を禁止してから所定時間が経過したとき、点火禁止の解除を行うように構成している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第２７８０２５７号公報
【特許文献２】特開２００５−２２０８６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、内燃機関が停止したときに点火禁止を解除するように構成すると、例えば内燃機関が停止する前（クランク軸の回転が完全に停止する前）に運転者によって再始動操作（具体的には、スタータモータや自動二輪車の場合は始動用レバー（キックスタータペダル）の連続操作）が行われた場合、点火禁止は解除されていないため、始動不能に陥るという不具合が生じていた。
【０００６】
また、特許文献２記載の技術のように所定時間経過後に点火禁止を解除するように構成すると、所定時間が経過した時点でクランク軸がまだ逆転していることも考えられ、そのようなときに点火禁止が解除されて点火が行われると、前述した如く機関本体の損傷などを招く恐れがあった。
【０００７】
従って、この発明の目的は上記した課題を解決し、クランク軸が逆転したときに点火を禁止すると共に、点火禁止の解除を適切なタイミングで実行して再始動性を向上させるようにした内燃機関の制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、請求項１にあっては、内燃機関のクランク軸の所定クランク角度ごとにクランク角度信号を出力するクランク角度信号出力手段と、前記クランク軸の回転で駆動されて交流電圧を出力する交流発電機と、前記クランク角度信号が出力されるとき、前記交流発電機から出力される交流電圧の極性を判定する極性判定手段と、前記判定された極性の周期を前記クランク軸が正転方向に回転させられるときに前記交流発電機から出力されるべき正転時極性周期と比較し、前記判定された極性の周期が前記正転時極性周期に一致するときに前記クランク軸は正転と判定する一方、一致しないときに前記クランク軸は逆転と判定するクランク軸回転方向判定手段と、前記クランク軸が逆転と判定されるとき、前記内燃機関の点火を禁止する点火禁止手段とを備えると共に、前記点火禁止手段は、前記クランク軸が逆転と判定された後、前記判定された極性の周期が前記正転時極性周期に一致した場合、前記内燃機関の点火の禁止を解除するように構成した。
【０００９】
請求項２に係る内燃機関の制御装置にあっては、前記クランク軸回転方向判定手段は、前記クランク角度信号が出力される度に前記判定された極性の周期が前記正転時極性周期に一致するか否か判定すると共に、前記クランク軸が逆転と判定された後、前記一致と判定される回数が所定回数に到達したとき、前記クランク軸が逆転から正転に復帰したと判定するように構成した。
【００１０】
請求項３に係る内燃機関の制御装置にあっては、前記クランク軸が逆転と判定されるとき、前記内燃機関の燃料噴射を禁止する燃料噴射禁止手段を備えると共に、前記燃料噴射禁止手段は、前記クランク軸が逆転と判定された後、前記判定された極性の周期が前記正転時極性周期に一致した場合、前記内燃機関の燃料噴射の禁止を解除するように構成した。
【発明の効果】
【００１１】
請求項１に係る内燃機関の制御装置にあっては、クランク角度信号が出力されるとき、交流発電機から出力される交流電圧の極性を判定し、判定された極性の周期が正転時極性周期に一致するときにクランク軸は正転と判定する一方、一致しないときにクランク軸は逆転と判定すると共に、クランク軸が逆転と判定されるとき、内燃機関の点火を禁止するように構成したので、クランク軸の逆転を正確に検知して点火を禁止することができ、よってクランク軸などに逆転負荷が作用することがなく、内燃機関本体の損傷などを防止することができる。
【００１２】
また、クランク軸が逆転と判定された後、判定された極性の周期が正転時極性周期に一致した場合、内燃機関の点火の禁止を解除するように構成、換言すれば、クランク軸が逆転から正転に復帰したことが検知されるときに点火禁止を解除するように構成したので、クランク軸が逆転しているときに点火禁止を解除することがない、即ち、点火禁止の解除を適切なタイミングで実行できると共に、例えば内燃機関が停止する前に運転者によって再始動操作が行われた場合であっても、クランク軸が正転であれば点火禁止は解除されるため、始動不能に陥ることはなく、再始動性を向上させることができる。
【００１３】
請求項２に係る内燃機関の制御装置にあっては、クランク角度信号が出力される度に判定された極性の周期が正転時極性周期に一致するか否か判定すると共に、クランク軸が逆転と判定された後、前記一致と判定される回数が所定回数に到達したとき、クランク軸が逆転から正転に復帰したと判定するように構成したので、上記した効果に加え、クランク軸が逆転から正転に復帰したことを正確に検知でき、点火禁止の解除をより一層適切なタイミングで実行することができる。
【００１４】
請求項３に係る内燃機関の制御装置にあっては、クランク軸が逆転と判定されるとき、内燃機関の燃料噴射を禁止するように構成したので、上記した効果に加え、逆転による負荷がクランク軸などに作用することはなく、内燃機関本体の損傷などをより確実に防止することができる。
【００１５】
また、クランク軸が逆転と判定された後、判定された極性の周期が正転時極性周期に一致した場合、内燃機関の燃料噴射の禁止を解除するように構成、換言すれば、クランク軸が逆転から正転に復帰したことが検知されるときに燃料噴射の禁止を解除するように構成したので、クランク軸が逆転しているときに燃料噴射禁止を解除することがない、即ち、燃料噴射禁止の解除を適切なタイミングで実行できると共に、例えば内燃機関が停止する前に運転者によって再始動操作が行われた場合であっても、クランク軸が正転であれば燃料噴射禁止は解除されるため、燃料を噴射することが可能となり、再始動性をより一層向上させることができる。
【図面の簡単な説明】
【００１６】
【図１】この発明の実施例に係る内燃機関の制御装置を全体的に示す概略図である。
【図２】図１に示す発電機を構成するロータなどの説明図である。
【図３】図１に示すＥＣＵの構成を全体的に示すブロック図である。
【図４】図１に示す内燃機関の制御装置の動作を示すフロー・チャートである。
【図５】図４の逆転検出処理のサブ・ルーチン・フロー・チャートである。
【図６】図１に示す内燃機関の制御装置の動作を示すタイム・チャートである。
【図７】図４の点火出力処理のサブ・ルーチン・フロー・チャートである。
【図８】図４の燃料噴射処理のサブ・ルーチン・フロー・チャートである。
【図９】図４フロー・チャートと平行して実行される内燃機関の制御装置の動作を示すフロー・チャートである。
【発明を実施するための形態】
【００１７】
以下、添付図面に即してこの発明に係る内燃機関の制御装置を実施するための形態について説明する。
【実施例】
【００１８】
図１はこの発明の実施例に係る内燃機関の制御装置を全体的に示す概略図である。
【００１９】
図１において符号１０は、図示しない車両（例えば自動二輪車）に搭載された内燃機関（以下「エンジン」という）を示す。エンジン１０は４サイクル単気筒の水冷式で、排気量２５０ｃｃ程度のガソリン・エンジンからなる。尚、符号１０ａはエンジン１０のクランクケースを示す。
【００２０】
エンジン１０の吸気管１２にはスロットルバルブ１４が配置される。スロットルバルブ１４は、車両のハンドルバーに運転者の手動操作自在に設けられたアクセラレータ（スロットルグリップ）にスロットルワイヤ（共に図示せず）を介して機械的に接続され、アクセラレータの操作量に応じて開閉され、エアクリーナ１６から吸気管１２を通ってエンジン１０に吸入される空気の量を調整する。
【００２１】
吸気管１２においてスロットルバルブ１４の下流側の吸気ポート付近にはインジェクタ２０が配置され、スロットルバルブ１４で調整された吸入空気にガソリン燃料を噴射する。噴射された燃料は吸入空気と混合して混合気を形成し、混合気は、吸気バルブ２２が開弁されるとき、燃焼室２４に流入する。
【００２２】
燃焼室２４に流入した混合気は、点火コイル２６から供給された高電圧で点火プラグ３０が火花放電されるときに点火されて燃焼し、ピストン３２を図１において下方に駆動してクランク軸３４を回転させる。燃焼によって生じた排ガスは、排気バルブ３６が開弁されるとき、排気管４０を流れる。排気管４０には触媒装置４２が配置され、排ガス中の有害成分を除去する。触媒装置４２で浄化された排ガスはさらに下流に流れ、エンジン１０の外部に排出される。
【００２３】
スロットルバルブ１４の付近にはポテンショメータからなるスロットル開度センサ４４が設けられ、スロットルバルブ１４の開度θＴＨを示す出力を生じる。吸気管１２のスロットルバルブ１４の上流側には吸気温センサ４６が設けられて吸入空気の温度ＴＡを示す出力を生じると共に、下流側には絶対圧センサ５０が設けられ、吸気管内絶対圧（エンジン負荷）ＰＢＡを示す出力を生じる。
【００２４】
エンジン１０のシリンダブロックの冷却水通路１０ｂには水温センサ５２が取り付けられ、エンジン１０の温度（エンジン冷却水温）ＴＷに応じた出力を生じる。エンジン１０のクランク軸３４の付近であってクランクケース１０ａの壁面（静止位置）には、電磁ピックアップからなるクランク角センサ（クランク角度信号出力手段）５４が配置される。尚、クランク角センサ５４については、後に詳説する。
【００２５】
エンジン１０のクランク軸３４には、交流発電機（以下、単に「発電機」という）６０が接続される。発電機６０は、クランク軸３４に接続されるロータ（タイミングロータ）６０ａと、ロータ６０ａに取り付けられる永久磁石６０ｂと、永久磁石６０ｂと対向する位置に配置される３相のステータコイル６０ｃ，６０ｄ，６０ｅおよび逆転検出用コイル６０ｆなどからなる。
【００２６】
図２は図１に示す発電機６０を構成するロータ６０ａなどの説明図である。
【００２７】
図２に示す如く、ロータ６０ａは円筒状を呈すると共に、クランク軸３４に連動（同期）して回転する。尚、ロータ６０ａはエンジン１０のフライホイールを兼用する。ロータ６０ａの外周側には、磁性体からなる複数個（１８個）の突起６０ｇが所定距離をおいて等角度間隔に配置される。具体的には、１８個の突起６０ｇは、ロータ６０ａの回転方向において各突起６０ｇの後端位置が、クランク軸３４の所定クランク角度（より具体的には２０°）ごとの等間隔となるように配置される。
【００２８】
複数個の突起６０ｇの内の１つはクランク角基準位置を検出するための突起（図２において符号６０ｇ１で示す）であり、前端位置から後端位置までの長さが他の突起６０ｇ２に比べて長く形成されると共に、その後端位置は上死点前１０°（ＢＴＤＣ１０°（クランク角基準位置））となるように設定される。尚、以下において、突起６０ｇ１を「基準突起６０ｇ１」という。
【００２９】
ロータ６０ａの突起６０ｇと対向する静止位置には、前記したクランク角センサ５４が配置される。従って、クランク角センサ５４は、ロータ６０ａの回転に伴って突起６０ｇが近傍を通過するごとにパルス信号を出力する。詳しくは、クランク角センサ５４は、回転方向に対して各突起６０ｇの前端位置が通過したときに負極性の振幅を有するパルス信号を出力すると共に、後端位置が通過したときに正極性の振幅を有するパルス信号を出力する。即ち、クランク角センサ５４は、クランク軸３４の所定クランク角度（２０°）ごとに負極性あるいは正極性の振幅を有するパルス信号（クランク角度信号）を出力する。
【００３０】
永久磁石６０ｂは、ロータ６０ａの内周側に取着されると共に、Ｓ極とＮ極が等角度（具体的には３０°ごと）に交互に配置、別言すれば、Ｓ極とＮ極を１組（１対）として６０°ごとに配置される。また、逆転検出用コイル６０ｆは、クランク角基準位置（ＢＴＤＣ１０°）となるように配置される。
【００３１】
これにより、発電機６０は、クランク軸３４の回転に伴ってロータ６０ａ（詳しくはロータ６０ａに取着された永久磁石６０ｂ）が回転させられると、電磁誘導によってステータコイル６０ｃ，６０ｄ，６０ｅおよび逆転検出用コイル６０ｆから交流電圧を出力する。具体的には、ステータコイル６０ｃ，６０ｄ，６０ｅはＵ，Ｖ，Ｗ相からなる３相の交流電圧を出力すると共に、逆転検出用コイル６０ｆは１相の交流電圧を出力する。
【００３２】
このように、発電機６０は永久磁石式の交流発電機からなり、クランク軸３４の回転で駆動されて交流電圧を出力する。尚、上記した逆転検出用コイル６０ｆから出力される交流電圧は、ロータ６０ａ（クランク軸３４）が６０°回転するのに要する時間を１周期とする交流電圧となる。
【００３３】
図１の説明に戻ると、発電機６０のステータコイル６０ｃ，６０ｄ，６０ｅから出力される３相の交流電圧は、レギュレートレクチファイヤ６２を介してバッテリ６４に入力される。
【００３４】
レギュレートレクチファイヤ６２は、整流回路６２ａと出力電圧調整回路６２ｂを備える。整流回路６２ａは、ステータコイル６０ｃ，６０ｄ，６０ｅから入力される３相の交流電圧を、図示しないブリッジ回路で直流電圧に整流して出力電圧調整回路６２ｂに出力する。出力電圧調整回路６２ｂは、入力された直流電圧を調整して電源電圧を生成し、電源電圧をバッテリ６４に供給して充電すると共に、後述する電子制御ユニット（Electronic Control Unit。以下「ＥＣＵ」という）７０にも動作電源として供給する。バッテリ６４は、例えばエンジン始動時など発電機６０から交流電圧が出力されないとき、ＥＣＵ７０に動作電源を供給する。
【００３５】
上記したクランク角センサ５４などの各センサの出力および発電機６０の逆転検出用コイル６０ｆから出力される交流電圧はＥＣＵ７０に入力される。
【００３６】
図３はＥＣＵ７０の構成を全体的に示すブロック図である。
【００３７】
ＥＣＵ７０はマイクロコンピュータからなり、図３に示すように、波形整形回路７０ａと、回転数カウンタ７０ｂと、基準電圧源７０ｃと、コンパレータ回路７０ｄと、Ａ／Ｄ変換回路７０ｅと、ＣＰＵ７０ｆと、点火回路７０ｇと、駆動回路７０ｈと、ＲＯＭ７０ｉと、ＲＡＭ７０ｊおよびタイマ７０ｋを備える。
【００３８】
波形整形回路７０ａは、クランク角センサ５４の出力（パルス信号。信号波形）を矩形状のパルス信号に波形整形し（具体的には、負極性のパルス信号をハイレベルとする一方、正極性のパルス信号をローレベルとなるように波形整形し）、回転数カウンタ７０ｂに出力する。回転数カウンタ７０ｂは入力されたパルス信号をカウントしてエンジン回転数ＮＥを検出（算出）し、エンジン回転数ＮＥを示す信号をＣＰＵ７０ｆへ出力する。基準電圧源７０ｃは、負極の直流電圧を基準電圧としてコンパレータ回路７０ｄの非反転入力端子に出力する。
【００３９】
コンパレータ回路７０ｄはオペアンプからなると共に、逆転検出用コイル６０ｆの交流電圧が反転入力端子に入力される。コンパレータ回路７０ｄは、交流電圧と基準電圧を比較し、交流電圧が基準電圧より大きいとき（換言すれば、交流電圧の極性が正極のとき）にハイレベルの比較結果信号を、交流電圧が基準電圧より小さいとき（交流電圧の極性が負極のとき）にローレベルの比較結果信号をＣＰＵ７０ｆに出力する。Ａ／Ｄ変換回路７０ｅは、スロットル開度センサ４４や吸気温センサ４６などの各センサの出力が入力され、アナログ信号値をデジタル信号値に変換してＣＰＵ７０ｆに出力する。
【００４０】
ＣＰＵ７０ｆは、変換されたデジタル信号やコンパレータ回路７０ｄからの比較結果信号などに基づき、ＲＯＭ７０ｉに格納されているプログラムに従って演算を実行し、クランク角度が点火出力タイミングのときに点火コイル２６の点火制御信号を点火回路７０ｇに出力する（即ち、点火時期制御を行う）。また、ＣＰＵ７０ｆは、各信号などに基づき、同様にＲＯＭ７０ｉに格納されているプログラムに従って演算を実行し、燃料噴射タイミングのときに燃料噴射制御信号を駆動回路７０ｈに送る（燃料噴射制御を行う）。
【００４１】
点火回路７０ｇは、ＣＰＵ７０ｆからの点火制御信号に応じ、点火コイル２６を通電して点火を行う。駆動回路７０ｈは、ＣＰＵ７０ｆからの燃料噴射制御信号に応じ、インジェクタ２０を駆動して燃料を噴射させる。ＲＡＭ７０ｊは、例えば点火時期制御および燃料噴射制御において算出された点火時期や燃料噴射量などのデータが書き込まれる。また、タイマ７０ｋは、後述するプログラムにおいて行われる時間計測の処理に利用される。
【００４２】
図４はこの実施例に係る内燃機関の制御装置の動作を示すフロー・チャートである。図示のプログラムは、ＥＣＵ７０においてクランク角度信号が入力されるごとに実行（ループ）される。
【００４３】
先ずＳ１０においてクランク軸３４の逆転を検出（検知）する処理を行う。図５は図４のＳ１０の逆転検出処理のサブ・ルーチン・フロー・チャートである。
【００４４】
同図の説明に入る前に、図６タイム・チャートを参照してクランク軸３４の逆転検出について説明する。
【００４５】
図６においては、上から順にクランク軸３４の実際の回転方向、波形整形回路７０ａとクランク角センサ５４の出力信号、発電機６０の逆転検出用コイル６０ｆから出力される交流電圧、その交流電圧の極性の検出状態、後述する正転周期計数カウンタＣＴＦＯＲＷＡＲＤおよび逆転検出フラグＦ_ＲＥＶＥＲＳＥを示す。
【００４６】
クランク軸３４が正転方向に回転している時点ｔ１からｔ６までを例にとって説明すると、クランク角センサ５４は、前述した如く、クランク軸３４の回転に伴ってロータ６０ａが回転すると、回転方向に対して各突起６０ｇの前端位置が通過したときに負極性のパルス信号を、後端位置が通過したときに正極性のパルス信号を出力する。
【００４７】
波形整形回路７０ａは、クランク角センサ５４の負極性のパルス信号をハイレベルとし、正極性のパルス信号をローレベルとなるように波形整形して出力する。従って、波形整形回路７０ａから出力された各パルス信号の立ち下がりエッジの間隔は、図示の如く、クランク軸３４が２０°（２０ＣＡ）回転するのに要した時間に相当する。
【００４８】
また、発電機６０の逆転検出用コイル６０ｆは、ロータ６０ａ（クランク軸３４）が６０°回転するのに要する時間を１周期とする交流電圧を出力する。この交流電圧の極性を、クランク角センサ５４からクランク角度信号が出力されるとき、正確には波形整形回路７０ａの各パルス信号が立ち下がる（立ち下がりエッジとなる）ときにコンパレータ回路７０ｄの比較結果信号に基づいて検出（判定）すると、図示のように、時点ｔ１で正極、時点ｔ２で正極、時点ｔ３で負極となることが分かる。
【００４９】
図６において、時点ｔ６でクランク軸３４が逆転しているが、時点ｔ６で逆転しない場合（正転方向の回転を継続する場合）の発電機６０の交流電圧を想像線で示すと、その極性は、続く時点ｔ４からｔ６においても同様に、時点ｔ４で正極、時点ｔ５で正極、時点ｔ６（具体的には、点火出力タイミング）で負極となることが分かる。
【００５０】
即ち、クランク角度信号が出力される時点において、クランク軸３４が正転方向に回転させられるときに交流発電機６０から出力されるべき交流電圧の極性の周期は「正極」「正極」「負極」の順となる。以下において、この周期を「正転時極性周期」ともいう。
【００５１】
従って、この実施例に係る内燃機関の制御装置にあっては、クランク角度信号が出力されるとき、発電機６０から出力される交流電圧の極性を判定すると共に、判定された極性の周期を正転時極性周期と比較し、判定された極性の周期が正転時極性周期に一致するときにクランク軸３４は正転であると判定する（クランク軸３４の正転を検出する）一方、一致しないときにクランク軸３４は逆転であると判定する（クランク軸３４の逆転を検出する）ようにした。
【００５２】
以上を前提とし、図６を参照しつつ図５の説明に入ると、先ずＳ１００において、前回のプログラム実行時に設定された今回電圧極性ＲＥＶＡＣＧ０（後述）を前回電圧極性ＲＥＶＡＣＧ１にセットすると共に、前回のプログラム実行時に設定された前回電圧極性ＲＥＶＡＣＧ１を前々回電圧極性ＲＥＶＡＣＧ２にセットし、前回電圧極性ＲＥＶＡＣＧ１と前々回電圧極性ＲＥＶＡＣＧ２を更新する。
【００５３】
次いでＳ１０２に進み、現在の（正確にはクランク角度信号が出力されるときに）発電機６０から出力される交流電圧の極性を判定（検出）する。具体的には、コンパレータ回路７０ｄの比較結果信号に基づいて極性を判定、より具体的には、図６に示す如く、発電機６０の交流電圧が基準電圧より大きいときは正極、小さいときは負極と判定する。
【００５４】
次いでＳ１０４に進み、判定された交流電圧の極性を今回電圧極性ＲＥＶＡＣＧ０にセット（更新）する。即ち、今回電圧極性ＲＥＶＡＣＧ０は、現在の交流電圧の極性を意味すると共に、前回電圧極性ＲＥＶＡＣＧ１は前回のクランク角度信号が出力されたとき（例えば現在を図６の時点ｔ３としたときの時点ｔ２）の交流電圧の極性を、前々回電圧極性ＲＥＶＡＣＧ２は前々回のクランク角度信号が出力されたとき（例えば現在を時点ｔ３としたときの時点ｔ１）の交流電圧の極性を意味する。
【００５５】
次いでＳ１０６に進み、逆転検出フラグＦ_ＲＥＶＥＲＳＥ（後述）のビットが１か否か判断する。フラグＦ_ＲＥＶＥＲＳＥは初期値が０とされるため、Ｓ１０６の処理を最初に実行するときは否定されてＳ１０８に進み、クランク角度が点火制御信号を出力すべき点火出力タイミング（例えばＢＴＤＣ１０°（クランク角基準位置））か否か判断する。
【００５６】
Ｓ１０８の判断は、波形整形回路７０ａの出力に基づいて行われる。具体的には、点火出力タイミングであるクランク角基準位置には、前述したように基準突起６０ｇ１が配置されるため、その基準突起６０ｇ１がクランク角センサ５４の近傍を通過すると、図６に示すように、ハイレベル期間の長いパルス信号が波形整形回路７０ａから出力される。従って、このような長いパルス信号の立ち下がりエッジが検出されるとき、クランク角度が点火出力タイミングであると判断することができる。
【００５７】
Ｓ１０８で否定されるときは以降の処理をスキップする一方、肯定されるときはＳ１１０に進み、前々回電圧極性ＲＥＶＡＣＧ２が正極か否か判断する。Ｓ１１０で肯定されるときはＳ１１２に進み、前回電圧極性ＲＥＶＡＣＧ１が正極か否か判断し、肯定されるときはＳ１１４に進んで今回電圧極性ＲＥＶＡＣＧ０が負極か否か判断する。
【００５８】
即ち、Ｓ１１０からＳ１１４は、Ｓ１００からＳ１０４の処理で得られた交流電圧の極性の周期を正転時極性周期（具体的には、正極・正極・負極からなる極性周期）と比較し、交流電圧の極性の周期が正転時極性周期に一致するか否か判定する処理である。
【００５９】
Ｓ１１４で肯定、換言すれば、交流電圧の極性の周期が正転時極性周期に一致しているときはクランク軸３４が正転と判定し、以降の処理をスキップする。一方、Ｓ１１０からＳ１１４の処理の内のいずれかにおいて否定、即ち、例えば図６の時点ｔ６に示すように、交流電圧の極性の周期が正転時極性周期に一致しない（不一致の）ときはクランク軸３４が逆転と判定し、Ｓ１１６に進んで逆転検出フラグＦ_ＲＥＶＥＲＳＥのビットを１にセットする。従って、このフラグＦ_ＲＥＶＥＲＳＥが１にセットされることは、クランク軸３４が逆転と判定されたことを、０にセットされることはクランク軸３４が正転と判定されたことを意味する。
【００６０】
次いでＳ１１８に進み、後述する処理で利用される正電圧計数カウンタＣＴＡＣＧＰと正転周期計数カウンタＣＴＦＯＲＷＡＲＤの値を０にリセットする。尚、図５におけるその他の処理については後に説明する。
【００６１】
図４の説明に戻ると、次いでＳ１２に進んで点火出力処理を行う。
【００６２】
図７はその点火出力処理を示すサブ・ルーチン・フロー・チャートである。
【００６３】
図７に示す如く、Ｓ２００においてクランク角センサ５４の出力に基づいてエンジン回転ＮＥを算出（検出）し、Ｓ２０２に進んでスロットル開度センサ４４の出力に基づいてスロットルバルブ１４の開度θＴＨを算出（検出）する。次いでＳ２０４に進み、算出されたエンジン回転数ＮＥとスロットル開度θＴＨに基づき、予め設定されたマップ値を検索して点火時期を算出する。
【００６４】
次いでＳ２０６に進んでクランク角度が点火出力タイミングか否か判断し、否定されるときは以降の処理をスキップする一方、肯定されるときはＳ２０８に進み、逆転検出フラグＦ_ＲＥＶＥＲＳＥのビットが１か否か判断する。
【００６５】
Ｓ２０８で否定、即ち、クランク軸３４が正転と判定されるときはＳ２１０に進み、算出された点火時期で点火が行われるように点火制御信号を出力する。他方、Ｓ２０８で肯定、即ち、クランク軸３４が逆転と判定されるときはＳ２１２に進み、点火制御信号の出力を禁止、換言すれば、エンジン１０の点火を禁止する。
【００６６】
図４の説明に戻ると、次いでＳ１４に進み、燃料噴射処理を行う。
【００６７】
図８はその燃料噴射処理を示すサブ・ルーチン・フロー・チャートである。
【００６８】
図８に示すように、Ｓ３００においてエンジン回転数ＮＥとスロットル開度θＴＨなどから予め設定されたマップ値を検索して燃料噴射量と燃料噴射タイミングを算出する。次いでＳ３０２に進み、クランク角度が算出された燃料噴射タイミングか否か判断する。Ｓ３０２で否定されるときは以降の処理をスキップする一方、肯定されるときはＳ３０４に進み、逆転検出フラグＦ_ＲＥＶＥＲＳＥのビットが１か否か判断する。
【００６９】
Ｓ３０４で否定されるときはＳ３０６に進み、インジェクタ２０から燃料を噴射させる燃料噴射制御信号を出力する。他方、Ｓ３０４で肯定、即ち、クランク軸３４が逆転と判定されるときはＳ３０６に進み、燃料噴射制御信号の出力を禁止、換言すれば、エンジン１０の燃料噴射を禁止する。
【００７０】
上記したようにクランク軸３４が逆転と判定されて逆転検出フラグＦ_ＲＥＶＥＲＳＥのビットが１にセットされると、エンジン１０の点火および燃料噴射が禁止されると共に、次回以降のプログラムループでは図５フロー・チャートのＳ１０６において肯定されてＳ１２０に進む。このＳ１２０以降は、前記した点火および燃料噴射の禁止を解除するタイミングを決定する処理である。
【００７１】
以下説明すると、Ｓ１２０において今回電圧極性ＲＥＶＡＣＧ０が負極か否か判断する。Ｓ１２０で否定されるときはＳ１２２に進み、正電圧計数カウンタＣＴＡＣＧＰの値を１つインクリメントする。Ｓ１２２の処理はＳ１２０で肯定されるまで繰り返し実行されるため、カウンタＣＴＡＣＧＰの値は、Ｓ１２０で現在の交流電圧の極性が負極と判定される以前のプログラムループにおいて正極と判定された（具体的にはＳ１２０で否定された）回数を意味する。
【００７２】
Ｓ１２０で肯定されるときはＳ１２４に進み、正電圧計数カウンタＣＴＡＣＧＰの値が２か否か判断する。即ち、Ｓ１２０，Ｓ１２４は、交流電圧の極性が現在は負極と判定され、それ以前の２回のプログラムループにおいて正極と判定されているか否か、別言すれば、交流電圧の極性の周期が正転時極性周期（具体的には、正極・正極・負極からなる極性周期）に一致するか否か判定する処理である。
【００７３】
Ｓ１２４で否定、即ち、一致しないとき（例えば図６における時点ｔ７やｔ８のとき）はＳ１２６に進み、正転周期計数カウンタＣＴＦＯＲＷＡＲＤの値を０にリセットする一方、肯定されるとき（一致するとき。図６にあっては、実際のクランク軸３４が時点ｔ９で正転に復帰したとすると、時点ｔ１０のとき）はＳ１２８に進み、カウンタＣＴＦＯＲＷＡＲＤの値を１つインクリメントする。従って、このカウンタＣＴＦＯＲＷＡＲＤは、クランク軸３４が逆転と判定された後、前記一致と判定される回数を示す。
【００７４】
次いでＳ１３０に進み、正電圧計数カウンタＣＴＡＣＧＰの値を０にリセットし、Ｓ１３２に進んで正転周期計数カウンタＣＴＦＯＲＷＡＲＤの値が所定回数（具体的には２回）以上か否か判断、別言すれば、前記一致と判定される回数が所定回数に到達した否か判断する。Ｓ１３２で否定されるときは以降の処理をスキップする一方、肯定されるとき（図６の時点ｔ１１のとき）はクランク軸３４が逆転から正転に確実に復帰したと判定してＳ１３４に進み、逆転検出フラグＦ_ＲＥＶＥＲＳＥのビットを０にセットする。
【００７５】
このフラグＦ_ＲＥＶＥＲＳＥのビットが０にセットされると、前述したように、後に実行されるＳ２０８で否定されてＳ２１０に進むこととなり、よって点火制御信号が出力されて点火が再開される、換言すれば、エンジン１０の点火の禁止が解除される。同様に、Ｓ３０４では否定されてＳ３０６に進むこととなり、よって燃料噴射制御信号が出力されて燃料噴射が再開される、即ち、エンジン１０の燃料噴射の禁止が解除される。
【００７６】
図９は、図４フロー・チャートと平行してＥＣＵ７０によって所定時間、例えば５ｍｓｅｃごとに実行される内燃機関の制御装置の動作を示すフロー・チャートである。
【００７７】
以下説明すると、Ｓ４００において、前回のプログラム実行時から今回のプログラム実行までにクランク角センサ５４からクランク角度信号の入力があったか否か判断する。Ｓ４００で肯定されるときは以降の処理をスキップする一方、否定されるときはＳ４０２に進んでエンジン１０が停止しているか否か判断、正確にはクランク軸３４が完全に停止しているか否か判断する。Ｓ４０２にあっては、クランク角度信号がクランク角センサ５４から所定時間（例えば２００ｍｓｅｃ）入力されないとき、エンジン１０は停止していると判断する。
【００７８】
Ｓ４０２で否定されるときはそのままプログラムを終了する一方、肯定されるときはＳ４０４に進み、逆転検出フラグＦ_ＲＥＶＥＲＳＥのビットを０にセットする。このように、エンジン１０が停止するときはフラグＦ_ＲＥＶＥＲＳＥのビットを０にセットして点火禁止・燃料噴射禁止を解除し、次回のプログラム実行に備える。
【００７９】
以上の如く、この発明の実施例にあっては、内燃機関（エンジン）１０のクランク軸３４の所定クランク角度ごとにクランク角度信号を出力するクランク角度信号出力手段と（クランク角センサ５４）、前記クランク軸３４の回転で駆動されて交流電圧を出力する交流発電機６０と、前記クランク角度信号が出力されるとき、前記交流発電機６０から出力される交流電圧の極性を判定する極性判定手段と（ＥＣＵ７０。Ｓ１０，Ｓ１０２）、前記判定された極性の周期を前記クランク軸３４が正転方向に回転させられるときに前記交流発電機６０から出力されるべき正転時極性周期と比較し、前記判定された極性の周期が前記正転時極性周期に一致するときに前記クランク軸３４は正転と判定する一方、一致しないときに前記クランク軸３４は逆転と判定するクランク軸回転方向判定手段と（ＥＣＵ７０。Ｓ１０，Ｓ１１０〜Ｓ１１６）、前記クランク軸３４が逆転と判定されるとき、前記内燃機関の点火を禁止する点火禁止手段と（ＥＣＵ７０。Ｓ１０，Ｓ１２，Ｓ１１６，Ｓ２０８，Ｓ２１２）を備えると共に、前記点火禁止手段は、前記クランク軸３４が逆転と判定された後、前記判定された極性の周期が前記正転時極性周期に一致した場合、前記内燃機関１０の点火の禁止を解除するように構成した（Ｓ１０，Ｓ１２，Ｓ１０６，Ｓ１２０〜Ｓ１３４，Ｓ２０８，Ｓ２１０）。
【００８０】
このように、クランク角度信号が出力されるとき、交流発電機６０から出力される交流電圧の極性を判定し、判定された極性の周期が正転時極性周期に一致するときにクランク軸３４は正転と判定する一方、一致しないときにクランク軸３４は逆転と判定すると共に、クランク軸３４が逆転と判定されるとき、エンジン１０の点火を禁止するように構成したので、クランク軸３４の逆転を正確に検知して点火を禁止することができ、よってクランク軸３４などに逆転負荷が作用することがなく、エンジン本体の損傷などを防止することができる。
【００８１】
また、クランク軸３４が逆転と判定された後、判定された極性の周期が正転時極性周期に一致した場合、エンジン１０の点火の禁止を解除するように構成、換言すれば、クランク軸３４が逆転から正転に復帰したことが検知されるときに点火禁止を解除するように構成したので、クランク軸３４が逆転しているときに点火禁止を解除することがない、即ち、点火禁止の解除を適切なタイミングで実行できると共に、例えばエンジン１０が停止する前に運転者によって再始動操作が行われた場合であっても、クランク軸３４が正転であれば点火禁止は解除されるため、始動不能に陥ることはなく、再始動性を向上させることができる。
【００８２】
また、前記クランク軸回転方向判定手段は、前記クランク角度信号が出力される度に前記判定された極性の周期が前記正転時極性周期に一致するか否か判定すると共に、前記クランク軸３４が逆転と判定された後、前記一致と判定される回数が所定回数（２回）に到達したとき、前記クランク軸３４が逆転から正転に復帰したと判定する（Ｓ１０，Ｓ１２０〜Ｓ１３４）ように構成したので、クランク軸３４が逆転から正転に復帰したことを正確に検知でき、点火禁止の解除をより一層適切なタイミングで実行することができる。
【００８３】
また、前記クランク軸３４が逆転と判定されるとき、前記内燃機関（エンジン）１０の燃料噴射を禁止する燃料噴射禁止手段を備えると共に（ＥＣＵ７０。Ｓ１０，Ｓ１４，Ｓ１１６，Ｓ３０４，Ｓ３０８）、前記燃料噴射禁止手段は、前記クランク軸３４が逆転と判定された後、前記判定された極性の周期が前記正転時極性周期に一致した場合、前記内燃機関１０の燃料噴射の禁止を解除するように構成した（Ｓ１０，Ｓ１４，Ｓ１０６，Ｓ１２０〜Ｓ１３４，Ｓ３０４，Ｓ３０６）。
【００８４】
このように、クランク軸３４が逆転と判定されるとき、エンジン１０の燃料噴射を禁止するように構成したので、逆転による負荷がクランク軸３４などに作用することはなく、エンジン本体の損傷などをより確実に防止することができる。
【００８５】
また、クランク軸３４が逆転と判定された後、判定された極性の周期が正転時極性周期に一致した場合、エンジン１０の燃料噴射の禁止を解除するように構成、換言すれば、クランク軸３４が逆転から正転に復帰したことが検知されるときに燃料噴射の禁止を解除するように構成したので、クランク軸３４が逆転しているときに燃料噴射禁止を解除することがない、即ち、燃料噴射禁止の解除を適切なタイミングで実行できると共に、例えばエンジン１０が停止する前に運転者によって再始動操作が行われた場合であっても、クランク軸３４が正転であれば燃料噴射禁止は解除されるため、燃料を噴射することが可能となり、再始動性をより一層向上させることができる。
【００８６】
尚、上記において、正転時極性周期を正極・正極・負極からなる極性周期としたが、それらは例示であって、発電機６０の仕様に応じて適宜変更されることはいうまでもない。
【００８７】
また、正転周期計数カウンタＣＴＦＯＲＷＡＲＤと比較する所定回数やエンジン１０の排気量などを具体的な数値で示したが、それらは例示であって限定されるものではない。
【００８８】
また、車両の例として自動二輪車を挙げたが、それに限られるものではなく、例えばスクータやＡＴＶ（All Terrain Vehicle）など、運転者がシート（サドル）に跨って乗る型の、いわゆる鞍乗り型車両であれば良く、さらには他の車両（例えば四輪自動車）であっても良い。
【符号の説明】
【００８９】
１０  エンジン（内燃機関）、３４  クランク軸、５４  クランク角センサ、６０  交流発電機、７０  ＥＣＵ（電子制御ユニット）
【図１】
2010209759.tif 000003
【図２】
2010209759.tif 000004
【図３】
2010209759.tif 000005
【図４】
2010209759.tif 000006
【図５】
2010209759.tif 000007
【図６】
2010209759.tif 000008
【図７】
2010209759.tif 000009
【図８】
2010209759.tif 000010
【図９】
2010209759.tif 000011