(57)【要約】【課題】低コストで軽量の燃焼機関のための制御システムを提供する。【解決手段】所望の点火タイミングを決定するために、エンジンスピード入力信号と、独立した動作シーケンスとを利用する。それぞれ所定の条件下でエンジンを最適に制御するためのいくつかの独立した動作シーケンスを設ける。それら動作シーケンスには、起動シーケンス、ウォームアップシーケンス、ノーマルモードシーケンス、加速シーケンス、カムダウンシーケンス、リカバリーバンプシーケンス、パートスロットルシーケンスを含む。アイドリング状態において、ノーマルモードシーケンスは小さなアイドリングスピードレンジ内にエンジンスピードを維持するために、点火タイミングを迅速に変更する。これら動作シーケンスを利用することで、制御システムは低コストで軽量のエンジンの性能を種々の条件下で向上させる。【選択図】図１
2007056869.tif 000002
【特許請求の範囲】
【請求項１】
軽量で自動車以外の燃焼機関と共に用いる制御システムにおいて、
エンジンスピードを表す電子スピード信号を受け取るためのエンジンスピードセンサと結合した入力と、
エンジンの点火タイミングに影響する電子点火信号とともに点火装置を提供するための点火装置と結合した出力と、
前記スピード信号を受け取るための前記入力と結合し、前記点火信号を提供するための前記出力と結合した電子命令を実行するための電子処理装置とからなり、
前記制御システムが、前記スピード信号によってエンジンスピードを監視することが可能であり、前記点火信号によって前記点火タイミングを迅速に変更することが可能であり、エンジンがアイドリング状態の時に、前記エンジンスピードが全体的にアイドリングスピードの範囲に維持されることを特徴とする制御システム。
【請求項２】
前記点火タイミングにおける迅速な変化が、もしエンジンスピードが前記アイドリングエンジンスピード範囲以下に落ちた場合に迅速な進みタイミングを含み、もしエンジンスピードが前記アイドリングエンジンスピード範囲を超えた場合に迅速な遅れタイミングを含むことを特徴とする請求項１記載の制御システム。
【請求項３】
前記迅速な進みタイミングが点火タイミングを前記アイドリングスピードレンジの点火タイミングに対して少なくとも２０度進め、前記迅速な遅れタイミングが点火タイミングを前記アイドリングスピードレンジの点火タイミングに対して少なくとも１０度遅らせることを特徴とする請求項２記載の制御システム。
【請求項４】
前記アイドリングスピードレンジが１，０００回転／分以下であることを特徴とする請求項２記載の制御システム。
【請求項５】
前記制御システムが、前記スピード信号を利用することで選択された独立した動作シーケンスに従って前記点火信号を提供することもできることを特徴とする請求項１記載の制御システム。
【請求項６】
前記独立動作シーケンスが
前記スピード信号がエンジンスピードが所定のエンジンの回転数に対して所定のエンジンスピード範囲に留まっていることを示す時に開始されるパートスロットルシーケンスであることを特徴とする請求項５記載の制御システム。
【請求項７】
エンジンスピードが第二所定エンジンスピードレンジの範囲に留まる限りにおいて、前記パートスロットルシーケンスが、エンジンスピード対点火タイミングのルックアップテーブルを利用して前記点火信号を提供することを特徴とする請求項６記載の制御システム。
【請求項８】
前記スピードシグナルと、前記点火装置で使用する充電信号と、前記電子処理装置に電力を供給するための電力信号とが、それぞれエンジンのフライホイールの磁性部分と結合した巻線によって供給されることを特徴とする請求項１記載の制御システム。
【請求項９】
前記点火信号が、一次点火巻線への前記充電信号と関連した蓄えたエネルギーの容量性放電を引き起こすことを特徴とする請求項１記載の制御システム。
【請求項１０】
（ａ）エンジンスピードを表す電子スピード信号を受け取るステップと
（ｂ）エンジンの点火タイミングに影響する電子点火信号を提供するステップと
（ｃ）電子処理装置と共に電子命令を実行して、前記スピード信号がエンジンスピードがアイドリングエンジンスピードレンジの範囲外であることを示す時に、迅速に前記点火信号を変更して、エンジンが前記アイドリングエンジンスピードレンジに戻るようにするステップとからなる、
軽量で自動車以外の燃焼機関の点火タイミングを制御するための方法。
【請求項１１】
前記ステップ（ｃ）の点火信号の迅速な変更が、もしエンジンスピードが前記アイドリングスピードレンジ以下に落ちた場合、迅速な進みタイミングを含み、もしエンジンスピードが前記アイドリングスピードレンジを超えた場合、迅速な遅れタイミングを含むことを特徴とする請求項１０記載の方法。
【請求項１２】
前記進みタイミングが、前記アイドリングスピードレンジの点火タイミングに対して少なくとも２０度点火タイミングを進め、前記遅れタイミングが、前記アイドリングスピードレンジの点火タイミングに対して少なくとも１０度点火タイミングを遅らせることを特徴とする請求項１１記載の方法。
【請求項１３】
前記アイドリングスピードレンジが、１０００回転／分以下であることを特徴とする請求項１０記載の方法。
【請求項１４】
前記方法が、前記スピード信号を利用して選択された独立した動作シーケンスに従って前記点火信号を提供するステップをさらに備えることを特徴とする請求項１０記載の方法。
【請求項１５】
前記独立動作シーケンスが、前記スピード信号がエンジンスピードが所定のエンジン回転数に対して所定のエンジンスピード範囲に留まっていることを示す時に開始されるパートスロットルシーケンスであることを特徴とする請求項１４記載の方法。
【請求項１６】
前記点火信号が一次点火巻線への充電信号に関連する蓄えたエネルギーの容量性放電を引き起こすことを特徴とする請求項１０記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、全体的に軽量燃焼機関用制御方式に関し、より詳細には点火タイミング制御方式に関する。
【背景技術】
【０００２】
スパークタイミングとも言われる点火タイミングは、内燃機関の性能において重要である。概して、点火タイミングはシリンダ内のピストンの軸方向位置に関してスパークプラグの着火がどの程度早い又は遅いかに関する。
【０００３】
例えば、エンジンが高速で動作している時に、燃焼反応がその力をピストンに加えるに十分な時間を有する程度に燃焼プロセスが早期に開始されることが望ましい。従って、点火時期制御システムは、ピストンが上死点（ＴＤＣ）位置に達する前に火花を燃焼室に届ける。これは点火進角と一般に呼ばれるものである。逆に、もしエンジンが比較的遅い速度で動作している場合、制御システムはスパークプラグにＴＤＣに近い点で（僅かに前又は僅かに後で）発火するように制御する。スパークプラグがＴＤＣの僅かに後に発火した場合、タイミングの遅延が発生し、燃焼プロセスが発展するのにより少ない時間で済む。点火タイミングの操作は、最適な性能を得るのに有用である。
【０００４】
安価な軽量燃焼機関を使用するための点火時期制御システムの例は、特許文献１に開示されており、本願出願人によって出願されており、参考のために示す。その出願において、所望の点火タイミングと混合燃料の空気対燃料比とを決定するために、全体的にエンジンスピードの入力信号と、独立した操作シーケンスとが利用されている。それぞれがエンジンを特定の条件下で最適に制御するように設計された、幾つかの独立操作シーケンスが存在する。これら操作シーケンスとエンジンスピード入力信号とを利用することで、制御システムは多様な条件の中からエンジン性能と排気性能とを向上させることが可能である。
【特許文献１】米国特許出願第１０／１８６，５２２
【発明の開示】
【発明が解決しようとする課題】
【０００５】
解決しようとする問題点は、安価で軽量な燃焼機関用制御システムを提供することである。
【課題を解決するための手段】
【０００６】
本発明の実施例によれば、スピードの電気信号を受け取る入力手段と、点火の電気信号を供給するための出力手段と、電子工学機器による処理装置とを備えた軽量燃焼機関で用いられる制御システムを提供する。制御システムは、エンジンスピードを監視し、迅速に点火タイミングを切り替えることができ、エンジンのアイドリング時に、アイドリングエンジンスピードの範囲にエンジンスピードが全体的に維持される。
【０００７】
また、本発明によれば、軽量燃焼機関の点火タイミングを制御するための方法を提供する。前記方法は、（ａ）スピードの電気信号を受け取るステップと（ｂ）発火電気信号を供給するステップと、（ｃ）スピード信号がエンジンスピードがアイドルエンジンスピードの範囲内では無いと示し、エンジンがアイドルエンジンスピードの範囲内に戻ろうとするために、点火信号を迅速に切り替えるステップとからなる。
【０００８】
また、本発明によれば、軽量燃焼機関を用いた制御システムが提供される。前記制御システムは、スピードの電気信号を提供するために動作可能にエンジンと結合したスピードセンサと、容量性の放電点火システムと動作可能に結合し、点火信号を受け取る点火スイッチと、前記スピード電気信号を受け取り前記点火信号を提供するための電子工学機器による処理装置とを備える。前記制御システムは、ｉ）迅速に点火タイミングを点火信号と共に変化させることができ、エンジンがアイドル状態の時に、エンジンスピードが全体的にアイドリングエンジンスピードの範囲内に維持される  ii）前記スピード信号が所定のエンジン回転数によってエンジンスピードが所定のエンジンスピード範囲内に維持されていることを示している時に開始される、パートスロットルシーケンスに従って点火信号を提供することができる。
【発明の効果】
【０００９】
本発明の点火タイミング制御システムは、軽量燃料機関の操作性能と排気性能を向上させ、アイドリング時のエンジンの安定性を向上させ、パートスロットル状態でのエンジンの性能を向上させ、比較的簡単な設計で、経済的な生産と組立てによって、長い寿命を有する。
【発明を実施するための最良の形態】
【００１０】
図１を参照して、安価で軽量燃焼機関に用いられる、例えば芝生と庭の装備に用いられる信号生成システム１０の実施例を示す。軽量燃焼機関という用語は、ここでは自動車用以外の広くすべての燃焼機関を含み、手持ち式の電動工具や芝生と庭の装備や、芝刈り機や、雑草刈り込み機や、縁かがり機や、チェーンソーや噴射式除雪機や、個人用船舶や、ボートや、スノーモービルや単車やオールテラインビークルに用いられる２ストロークと４ストロークのエンジンを含む。
【００１１】
信号生成装置１０は、多数のデザインの一つに従って構成され、好ましくは制御システム１２と、点火リード１４と、ハウジング１６とを備える。信号生成装置１０は、重量のある円盤状の部材であって、クランクシャフト２０と結合し、エンジンの出力の下で軸２２回りに回転するフライホイール１８と情報をやりとりする。回転の慣性を用いることで、フライホイール１８はエンジンのスピードによって変動をやわらげ、よってより安定した均等な出力を提供する。さらに、フライホイール１８はマグネット又はマグネット部分２４をその外周近傍に備える。一度フライホイール１８が回転すれば、これらマグネット断面は回転し、電磁気的に制御システム１２の部材と相互作用をし、フライホイール１８の回転速度と従ってエンジンスピードを示す信号を誘導する。この信号は、エンジンの回転数をモニターすることに用いることができ、点火時期制御の動作において、以下に説明する役割を果たす。
【００１２】
制御システム１２は、全体的にエンジンの点火タイミングの管理責任を負い、ラムスタック３０、帯電巻線３２、一次点火巻線３４、二次点火巻線３６、制御回路３８とキルスイッチ４０（共に図２に示す）とからなる。マグネット部分２４が強磁性体の積層又は磁気浸透性のある積層板片であるラムサック３０を通り過ぎると、ラムサック３０に磁場が順次誘導されて、帯電巻線３２に電圧が発生する。好ましくは、帯電巻線３２は円周状にラムサック３０を囲み、ラムサック３０は全体的に帯電巻線３２の中心軸に沿って位置する。一次点火巻線３４も、ラムサック３０を円周状に取り囲み、二次点火巻線３６と誘導的に相互作用をする。容量性の放電点火システムで一般的に知られているように、放電はスパークプラグ４２により一次巻線３４の容量を放電することで生成され、二次巻線３６に高電圧パルスを誘導する。キルスイッチ４０は、迅速で使用容易なエンジン停止手段を提供し、好ましくは「積極的に停止／自動でオン」するタイプのスイッチである。制御システム１２のより詳細な説明は、図２を参考にして後述する。
【００１３】
点火リード１４は制御システム１２とスパークプラグ４２とを結合して制御システム１２が高電圧点火パルスをスパークプラグ４２に送れるようにしており、全体的に引き伸ばした銅線コネクタ５０とブート５２とを備える。コネクタ５０は、高電圧点火パルスを保護絶縁被膜に覆われた電気伝導体に沿って伝導する。ブート５２は、スパークプラグの端子端を受容するように設計され、二つの構成部品は共に互いに物理的に固定され、電気的に接続される。もちろん当業者には多数のタイプのブートが知られており、種々のスパークプラグの端子端部を収容するために用いることができる。
【００１４】
ハウジング１６は、制御システム１２の構成部品を過酷な動作環境から保護し、一般的に幾つかの取り付け機構５４を備える。金属やプラスチックその他の適当な材料から形成することが可能なハウジングは、ラムサック３０を取り囲み、小さな空隙５６がラムサック３０とフライホイール１８の外部周辺との間に存在することを許容する。空隙５６は、十分な電磁結合が程度に十分小さくなければならず、動作中に許容誤差の変動を占める程度に十分大きくなければならない。ここで示された取り付け機構５４は、対応するボルトを収容するために設計された孔であるが、しかし他の適切な取り付け機構を用いることもできる。
【００１５】
エンジン動作において、ピストンの動作はクランクシャフト２０を回し、それが順々にフライホイール１８を回転する。フライホイールの磁性断面２４がラムスタック３０のそばを過ぎて回転すると、隣接する帯電巻線３２に電圧を誘導する磁界が形成され、この誘導電圧は、幾つかの目的のために用いられる。第一に、電圧は電力を制御回路３８に供給し、動作可能とする。第二に、誘導電圧は放電が指示されるまでエネルギーを蓄える容量を充電し、放電時にはエネルギーは第一点火巻線３４を横断して放電する。最後に、帯電巻線３２に誘導された電圧は、制御回路３８の電子処理装置に供給されるエンジンスピード信号を生成する。このエンジンスピード信号は、点火タイミング制御に影響を及ぼし、以降で詳細に説明する。
【００１６】
（制御回路の詳細）
図２に戻って、制御システム１２は軽量燃焼機関の点火タイミングを管理する制御回路３８を備える。もちろん、ここでの制御回路の実施例は、制御システム１２に含まれる回路の一例に過ぎない。制御回路３８は、制御システム１２の他の構成部材と情報をやり取りし、一般的に電子処理装置６０と、点火放電容量６２と、点火スイッチ装置６４とを含む。
【００１７】
電子処理装置６０は、好ましくは８ピン、４ＭＨｚプロセッサの例えばマイクロチップ社製のモデル＃１２Ｃ５０９であり、ファームウエアを記憶するために１０２４Ｋｂのメモリを、他の変数のためのメモリと同様に利用する。「電子処理装置」という用語は、他の電子的に指示できる電子装置と同様に、広くすべてのマイクロコントローラ、マイクロプロセッサを含む。電子処理装置６０の１番ピンは、帯電巻線３２と抵抗やダイオードを通して結合しており、帯電巻線３２の誘導電圧は整流され、電子処理装置６０に電力を供給する。また、電圧が帯電巻線３２に誘導されたときに、既に述べたように、点火スイッチ装置６４が非伝導状態であると仮定して、ダイオード７０を通り電流が流れ、点火放電容量６２が充電される。点火放電容量６２は、電子処理装置６０が点火スイッチ装置６４の状態を変更するまではチャージを維持し、変更すると、容量に蓄えたエネルギーを放電する。電子処理装置６０の５番ピンも、帯電巻線３２と接続され、エンジンスピードを代表する電気信号を受け取る。エンジンスピード信号は、特定の動作シーケンスを選択するために使用することができ、その選択は所望のスパークタイミングに影響を与えるが、より詳細には後述する。６番ピンは、エンジンをシャットダウンするための手動切り離し装置としてのキルスイッチ４０と結合している。７番ピンは、点火スイッチ装置６４のゲートと抵抗７２を通して接続しており、点火スイッチ装置６４の状態を制御する点火信号を伝達する。７番ピンの点火信号がｌｏｗの時、点火スイッチ装置６４は非伝導状態で、容量６２は充電される。点火信号がｈｉｇｈの時、点火スイッチ装置６４は導通状態となり、キャパシタ６２は一次巻線３４を通して放電を許可され、従って二次巻線３６に点火パルスが誘導され、スパークプラグ４２に送られる。従って、電子処理装置６０が点火スイッチ装置６４の導電状態を制御することで点火放電容量６２の放電を管理する。最後に、８番ピンは電子処理装置６０の接地電位を提供する。
【００１８】
動作において、帯電巻線３２は点火放電容量６２を充電する誘電電圧を発生し、電子処理装置６０に電力とエンジンスピード信号を提供する。点火放電容量６２が充電されると、電子処理装置６０はもし、そしてどの程度スパークを進める又は遅らせることが必要かを決定するためにエンジンスピード信号を利用して一連の処理を実行する。計算された点火スイッチ装置６４をオンする点火タイミングに従って、次に電子処理装置６０は７番ピンに点火信号を出力する。一度オンすれば（即ち導通状態になれば）、点火スイッチ装置６４と一次巻線３４とを通過する電流経路が、点火放電容量６２に形成される。一次巻線を通過する電流は、二次巻線３６に高電圧点火パルスを誘導する。この高電圧パルスは、それからスパークプラグ４２に分配され、そこでスパークギャップ間でアーク放電をし、従って燃焼プロセスを開始する。いつであってもキルスイッチ４０が動作すると、電子処理装置６０は停止し、よって制御システムがスパークを燃焼室に送るのを防ぐ。
【００１９】
（ファームウエアの詳細）
制御システム１２、より詳細には電子処理装置６０はファームウエアとも呼ばれる一連の電気的命令を実行し、エンジンの点火タイミングを計算する。ファームウエアは、好ましくは幾つかの異なる動作シーケンスを備え、それらはサブルーチンと同様の命令グループであって、特定の操作条件下で最適の点火タイミング制御をするように設計されている。最終的にエンジンに点火時期を命令するOverall Timing値は、Advance値とBaseTime値との和である。Advance値は通常の点火タイミングを代表し、一般的に異なる動作シーケンス間で影響を受けない。一方BaseTime値は、実行される特定の動作シーケンスによって決定される。Overall Timing値は、TDC前(ATDC)４５度からTDC後(BTDC)１５度までの間で変化可能である。
【００２０】
図３を参照して、エンジンが初期開示する時から、操作者がキルスイッチを使ってエンジンをシャットアウトするまでの本発明の制御システムの包括操作１００を、を示す。動作シーケンスはサブルーチンと同様の命令のグループであって、現在の条件下で点火タイミングを最適に制御するように設計されており、全体的に起動シーケンス１０２と、ウォームアップシーケンス１０４と、ノーマルモードシーケンス１０６と、加速シーケンス１０８と、カムダウンシーケンス１１０と、リカバリーバンプシーケンス１１２と、パートスロットルシーケンス１１４とを含む。
【００２１】
初期的にオンした後、エンジン点火タイミングは起動シーケンス１０２で制御され、それはエンジンをスタートさせるように設計され、エンジン回転数が小さい場合の点火タイミングの制御にのみ用いられる。初期的にオンした後、エンジン点火タイミングは起動シーケンス１０２で制御され、それはエンジンをスタートさせるように設計され、エンジン回転数が小さい場合の点火タイミングの制御にのみ用いられる。小さな所定のエンジン回転数のための点火タイミングを制御する起動シーケンス１０２とは異なり、ウォームアップシーケンス１０４は所定の値を超えるまで又はBaseTime値がゼロに減じるまで点火タイミングを制御する。ひとたびエンジンが起動シーケンスとウォームアップシーケンスを通じて回転すると、ノーマルモードシーケンスが開始される。ノーマルモード又はアイドル持続性シーケンス１０６は、制御システムがユニークな環境に入らない場合の操作モードであって、例えば非通常に低いエンジンスピードの場合などには、制御システムは他の特定の操作シーケンスに入る。点火タイミングのために、ノーマルモードシーケンス１０６は単にエンジンスピード対タイミングのルックアップテーブルを用いてAdvance値を決定し、BaseTime値をゼロに設定する。もしノーマルモード１０６でエンジンスピードが所定の比率を超えた増加を検出した場合、加速シーケンス１０８が開始される。加速シーケンス１０８は点火タイミングを進めて、操作完了後、操作制御をノーマルモードに戻す。ノーマルモードから、スピードの減少の後にもし十分なエンジンスピードが検出された場合、カムダウンシーケンス１１０が呼び出される。カムダウンシーケンス１１０は、一時的に点火タイミングをエンジンの性能を上げる方へ動かし、迅速に高回転から低回転に転じさせる。カムダウンシーケンス１１０の完了後、ノーマルモードが制御するが、もしエンジンスピードが所定レベル以下に落ちている場合には、リカバリーバンプシーケンス１１２に制御を移す。リカバリーバンプシーケンス１１２は、エンジンの性能を向上させてエンストする怖れのある低い回転数の状態から回復させるために用いられ、その完了後、制御をノーマルモードに戻す。もしノーマルモードがエンジンスピードがパートスロットルレンジにあることを検出した場合、パートスロットルシーケンス１１４が開始される。
【００２２】
起動とウォームアップシーケンス１０２、１０４の完了後、ノーマルモード又はアイドル持続性シーケンス１０６が開始する。ステップ１２０はノーマルモードシーケンスの第一ステップであって、現在のエンジンスピードを抽出し保存し、各エンジン回転ごとに行う。エンジン回転数の計算は、エンジンスピード信号からも測定することができ、その逆も同様である。従って、エンジンスピード信号を抽出するか、又はエンジン回転数カウンタを抽出することによって、両方のパラメータを知ることができ、ステップ１２２はエンジンスピードと点火タイミングとの関係を示したルックアップテーブルを参照することで、読み出せるエンジンスピードを利用する。異なるエンジンと用途で異なるテーブルが必要になるが、全体的にエンジンスピードを非常に小さな回転数／分範囲に維持することがノーマルモード１０６の目的であって、以下ではアイドリングエンジンスピードレンジと称す。特定のエンジンスピードのためのタイミング値は、好ましくは前述のAdvance値である。ステップ１２２は、BaseTime値をゼロにセットし、Overall Timing値（Advance値 ＋ BaseTime値）をAdvance値と等しくする。以下のタイミングテーブルは、平均的な好ましいタイミングテーブルの例であって、変更することはもちろん構わない。
【００２３】
【表１】
2007056869.tif 000003
【００２４】
アイドリング状態の間、アイドリングエンジンスピードレンジの急峻な進みタイミング（３５度BTDC）と急峻な遅れタイミング（２０度ATDC）とを低い側と高い側でそれぞれ与えることによって、タイミングは小幅で相対的に均一な２度BTDCとなり、ノーマルモード１０６は、全体的にエンジンスピードをアイドリングエンジンスピードレンジ（本実施例において２、９００から３、１００回転／分の間）に維持する。アイドリング状態の間、アイドリングエンジンスピードレンジの急峻な進みタイミング（３５度BTDC）と急峻な遅れタイミング（２０度ATDC）とを低い側と高い側でそれぞれ与えることによって、タイミングは小幅で相対的に均一な２度BTDCとなり、ノーマルモード１０６は、全体的にエンジンスピードをアイドリングエンジンスピードレンジ（本実施例において２、９００から３、１００回転／分の間）に維持する。その意味では、所望の回転数レンジの両側の急峻なタイミングの変化又は傾斜は、アイドリングスピードコントローラーとしての機能を果たす。もし操作者がエンジンのスロットルを開けば、しかし、急速な回転数の増加が容易に点火タイミングのアイドリングエンジンスピードレンジから離脱し、所定のタイミングシーケンスの一つ、例えば加速シーケンス１０８、又はタイミングテーブルのより高い回転数のタイミング値が用いられて、点火タイミングを制御する。
【００２５】
好ましい実施例において、アイドリングエンジンスピードレンジは約２度BTDCの点火タイミングを有し、１、０００回転／分以下である（より詳細には、約２００回転／分である）。もしエンジンスピードがアイドリングエンジンスピードレンジ以下に落ちた場合、電子処理装置６０は迅速な進みタイミングを生じさせる点火信号を提供し、エンジンスピードはアイドリングエンジンスピードレンジ範囲内に留まる。好ましくは、迅速な進みタイミングはアイドリングエンジンスピードレンジの点火タイミングと比較して、点火タイミングを少なくとも２０度進め、より好ましくは迅速な進みタイミングは約３３度である（２度BTDCから３５度BTDC）。この種類の迅速な進みタイミングは、エンジンスピードが徐々にアイドリングエンジンスピードレンジ以下にはずれる場合、例えばエンジンが燃料のかたまりを取り込んだ場合などに有用である。しかし、もしエンジンが迅速かつ目立ったスピードの減少をした場合には、点火タイミングの制御は直ちに２、９００回転／分を通過し、タイミングテーブルの低い側の回転数の一つによって制御される。
【００２６】
逆に、もしエンジンスピードが徐々にアイドリングエンジンスピードレンジの上に増加した場合、点火タイミングは迅速な遅れタイミングを生じ、エンジンスピードはアイドリングエンジンスピードレンジ内に留まろうとする。迅速な遅れタイミングは、アイドリングエンジンスピードレンジの点火タイミングと比較して好ましくは少なくとも１０度点火タイミングを遅らせ、より好ましくは迅速な遅れタイミングは、約２２度（２度BTDCから２０度ATDC）である。このような迅速な遅れタイミングは、エンジンスピードが徐々にアイドリングエンジンスピードレンジの上にはずれる場合、例えばエンジンがキャブレターから空気バブルを取り込んだ場合などに有用である。他方で、例えば操作者がエンジンのスロットルを開いた時のように、迅速で明確なエンジンスピードの増加は、点火タイミングの制御を３，１００回転／分を過ぎるまで増加させ、点火タイミングはタイムテーブルのより高い回転数の中の一つから指示されるか、又は特定の操作シーケンスのうち一つ、例えば加速シーケンスによって指示される。従って、ノーマルモードシーケンス１０６はエンジンのスロットルを絞る操作者に対して働かない。
【００２７】
図３に戻って、判定ステップ１２４はシステムの操作が加速シーケンスに入るか否かを決定する。もし最後のエンジンスピード読取り値と、前回の読取り値又は幾つかの以前の読取り値の間の変化率が、所定量を超えていた場合、好適な実施例で１回転内で３００回転／分の場合、制御システムは加速シーケンス１０８に入り、以下さらに説明する。もしエンジンスピードの変化率がこの閾値を超えていない場合、操作は判定ステップ１２６へと進む。
【００２８】
ステップ１２４と同様に、ステップ１２６は非正常な操作条件をチェックする。ここで条件とは、制御システムにそれら非正常な環境に効果のあるように設計された特定のシーケンスに入ることを保証するものである。判定ステップ１２６は、もし所定の回転数例えば６、５００回転／分を超えた後で、エンジンスピードが落ちたかどうかを判定する。もしそうであれば、カムダウンシーケンス１１０が開始され、後述のように、エンジンのスピードは迅速に正常な動作レベルまで戻される。もしエンジンスピードがカムダウンシーケンス１１０を開始するのに必要な条件を満足していない場合、制御はノーマルモードシーケンス１０６に留まって、ステップ１２８へ進む。
【００２９】
ステップ１２８は、エンストの可能性を回避するためにリカバリーバンプシーケンス１１２が必要かどうかを決定する。もしエンジンが低回転である場合、リカバリーバンプシーケンス１１２がエンジンスピードを増加するために用いられ、もし違う場合には、ノーマルモード１０６はステップ１３０に進む。ステップ１３０はエンジンが特定の「パートスロットル」回転数の範囲に維持されているかを判定し、もしそうならパートスロットルシーケンス１１４を呼び出す。この詳細は、後述する。
【００３０】
ステップ１３２はステップ１２２でルックアップテーブルを用いて見出したAdvance値をBaseTime値に加えることでOverall Timing値を決定する。ステップ１２２でBaseTime値はゼロにセットされているので、他に変化が無い限り、この値はゼロのままである。ステップ１３４では、ステップ１３２で見出したOverall Timing値を点火信号を直接点火放電容量６２に送る。このトリガーに続いて、判定ステップ１３６は操作者がキルスイッチを操作していないかチェックする。もしキルスイッチが操作されれば、システムは直ちにエンジンを停止し、シーケンスから出る。もしキルスイッチが操作されない場合、制御はエンジンスピード測定ステップ１２０に進み、ノーマルモードシーケンス１０６が繰り返される。従って、起動シーケンス１０２とウォームアップシーケンス１０４は、エンジンのスタート時にのみ関り、その後本発明の制御システムは特定の環境が発生して操作を特定のシーケンスに移すまでノーマルモード１０６となる。
【００３１】
図４を参照して、エンジン開始直後に開始され、独立して仕立てられた開示イベントのための操作シーケンスを提供する起動シーケンス１０２を示す。この特に設計されたシーケンスを利用することで、通常のアイドリングに関る要請に制限されることなく、点火タイミングを最良の方法で制御できる。ステップ２００に見られるように、点火タイミング制御システムは好ましくは最初の２回転の間、火花を発生させない。この「火花なし」イベントは、放電容量により多くのエネルギーを蓄えさせ、より「熱い」火花を生成させるため、そして取り入れトラックの「濡れた」状態を許可するために実行される。これらの結果により、ひとたび燃焼プロセスが開始されると、燃焼性能が向上する。ステップ２０２は起動変数をゼロにリセットし、起動シーケンス操作の中で一度だけ行われる。ステップ２０４は、Advance時間変数を所定値、本実施例では１５度BTDCにセットし、BaseTime値を０度にする。ノーマルモードシーケンスのステップ１３０で用いたのと同様の方法で、ステップ２０６でAdvance値とBaseTime値の和をとってOverall Timing値を計算する。従って、起動シーケンス中の点火タイミングは、現在のエンジンスピードとは無関係な一定値である。ステップ２０８はOverall Timing値に従って点火シグナルを送り高電圧点火パルスをスパークギャップ間に発生させる。起動シーケンスが点火放電を指示した後に、起動変数がインクリメントされ、判定ステップ２１２でチェックされる。もし起動変数Cranking値が所定の回数例えば５に達していない場合は、このプロセスが繰り返される。もしCranking値が５であった場合、起動シーケンスを出てシステムの制御はウォームアップシーケンス１０４に向かう。
【００３２】
操作において、本実施例の起動シーケンス１０２はエンジンスタート後のたった7回のエンジン回転の間のみ制御システムを制御して、ウォームアップシーケンス１０４に向かう。最初の２回転は。「火花無し」回転であり、一方次の５回転はOverall Timing値を１５度BTDCにセットし、エンジン回転カウンタをインクリメントする。カウンタが５になると、起動シーケンス１０２を終えてウォームアップシーケンス１０４が始まる。
【００３３】
図５(ａ)、(ｂ)を参照して、本発明の制御システム１２は、起動シーケンス１０２に続くウォームアップシーケンス１０４に従う。点火タイミングを必要に応じて進めることで迅速にエンジンを通常の動作条件に持って行くようにこのシーケンスは設計されている。エンジンをより速いスピードで動作させることでエンストさせないための技術である。ウォームアップシーケンス１０４に入った後、ステップ３００で幾つかの変数を初期化し、内部タイマーをリセットする。変数Ignition RevCounterはエンジンの回転数をカウントし、またゼロにセットされ、RapidAdvanceフラグは１にセットされ、Slow Retardフラグはゼロにセットされ、TDC前のBaseTime値は０度にセットされる。ステップ３０２で現在のエンジンスピードを代表する値を検知し、保存し、判定ステップ３０４で所定値、例えば４、５００回転／分と比較して、ウォームアップシーケンスを続けることが必要であるか判断する。もし現在のスピードが４，５００回転／分を超えた場合、エンジンは既に十分なスピードを得ており、これ以上進めることは不必要である。従って、ステップ３０６（図５（ｂ））を処理してウォームアップシーケンス１０４から出る。ステップ３０６では、RapidAdvanceとSlowRetardフラグをゼロにし、BaseTime値を０度として、制御をノーマルモードに戻す。
【００３４】
ステップ３０４に話を戻して、現在のエンジンスピードが４,５００回転／分以下の場合、ウォームアップシーケンス１０４はステップ３１０に進み、そこでRapidAdvanceフラグの状態をチェックする。もしRapidAdvanceフラグがステップ３００での初期値である１の場合、ステップ３１２でBaseTime値が完全に進められたかどうかが判定される。好ましい実施例において、完全に進められたとは、Base Time値が３０度BTDCで、回転の全体的点火タイミングを決定するために加えられる。しかし、シーケンスの最初にBaseTime値は０度BTDCであり、従って完全に進んだ状態にはなっていない。従って、シーケンスはステップ３１４に進み、そこでBaseTime値をエンジン1回転あたり１／３度進める。従って、エンジンの９０回転で、合計３０度BaseTimeを進める。もしBaseTime値がすでに完全に進められていた場合、BaseTime値をそれ以上進めること無くシーケンスはステップ３１６に見られるように回転数をインクリメントする。このステップで変数Ignition  RevCounterをインクリメントし、ゼロにセットした時からのエンジン回転数のトータルを保ち、Ignition  RevCounterカウンタが１６に達したかどうかをステップ３２０でチェックする。この数値は、特に本実施例で採用されているが、異なる値であってもよい。もし例えばこのシーケンスの最初の場合のようにIgnition RevCounterが１６に達しない場合、ステップ３２２で、エンジン対点火タイミングのルックアップテーブルからAdvance値を見つけ、BaseTime値に加えてOverall Timing値を決定する。点火タイミング制御システムは、計算されたOverall Timing値に従って点火パルスを誘発する点火信号を送る。これを受けて、シーケンスの制御はステップ３０２に戻り、新しいエンジンスピード値を得る。現在のエンジンスピードが決して４，５００回転／分を超えないと仮定すると、この一連のステップはIgnition RevCounter値が１６になるまで続く。
【００３５】
Ignition RevCounterが１６になると、制御はステップ３２３（図５（ｂ））に進み、前１６回のエンジン回転における平均エンジンスピードを決定し、Ignition RevCounterをゼロにリセットする。判定ステップ３２４で、計算した平均スピードが３，５００回転／分を超えているか判断する。もし超えている場合、エンジンは十分に高速で運転されており、従ってステップ３２６でSlowRetardフラグを１にセットし、ウォームアップシーケンスはBaseTime値を減じることで徐々にOverall Timingを遅らせる。もし平均スピードが３，５００回転／分を超えない場合、判定ステップ３２８は付加的にタイマーが終了していないか問い合わせる。ウォームアップシーケンスはエンジンが温まるまでの点火タイミングの制御を目的としており、もしタイマーが終了しているが、エンジンの平均スピードが３，５００回転／分以下を維持しているとき、ウォームアップシーケンスはまたBaseTime値をゆっくり減じることで徐々にタイミングを遅らせる。判定ステップ３３０は、SlowRetardフラグがセットされているかどうかを判定する。もしフラグがセットされていない場合（SlowRetard＝０）、ステップ３２２は前述の方法に従ってOverallTimingを計算し、制御はステップ３０２に戻る。もしフラグがセットされている場合、ステップ３３２でBaseTimeを１／３度遅らせ、RapidAdvanceフラグをゼロにする。判定ステップ３３４は、BaseTime値が０に減じているかどうかを判定する。もし違う場合、シーケンスはステップ３２２に進み、点火タイミングが計算される。もしBaseTime値がゼロの場合、ステップ３０６でRapidAdvanceとSlowRetardフラグをゼロにし、ウォームアップシーケンス１０４を出る。
【００３６】
動作において、現在のエンジンスピードが所定量を超えるまで、又はBaseTime値がゼロに減じるまでウォームアップシーケンス１０４はBaseTime値を調整し、従ってOverall Timing値を調整し、その後このシーケンスを抜け出してノーマルモードシーケンスが始まる。すでに扱ったように、エンジンの現在のスピードはステップ３０２で抽出され、保存される。RapidAdvanceフラグに１がセットされ、BaseTime値が完全に進みきらない限り、BaseTimeはエンジンの１回転あたり１／３度増加される。もしBaseTime値が完全に進んで、RapidAdvanceフラグが１のままである場合、ウォームアップシーケンス１０４はIgnition RevCounterが１６になるまで、ステップ３０２、３０４、３１０、３１２、３２０と３２２の間を循環する。エンジンの１６回転毎に、平均スピードが計算され、平均スピードが所定値を超えるかタイマーが終了すると、ウォームアップシーケンス１０４は１６回転あたり１／３度BaseTime値を減じることで、徐々にタイミングを遅らせはじめる。この変化率は、BaseTime値を進める変化率より小さい。従って、点火タイミングは、遅れる率（SlowRetard）よりかなり速く進む（RapidAdvance）。BaseTime値が例えば０に減じるか、又は現在のエンジンスピードが所定値より大きくなれば、ウォームアップシーケンス１０４を抜け出る。ウォームアップシーケンス１０４を出るのを受けて、ノーマルモードシーケンス１０６が始まる。
【００３７】
図６を参照して、エンジンのスピードが所定の時間に対して所定の量増加する時に、加速シーケンス１０８は、絶えず点火タイミングを進める。このシーケンスを始めるのに必要な加速の正確な値は、特定のエンジンと関連する用途に依存して変化するが、本実施例においては、トリガーとなる加速は１回転内で１００回転／分の変化とする。現在のエンジンスピードが４，５００回転／分以上かを測定することで判定ステップ４００が始まる。もしそうであるなら、加速シーケンスを抜け出る。もし現在のエンジンスピードが４，５００回転／分を超えていないなら、判定ステップ４０４はBaseTime値が既に所定の最大値、本実施例の場合３０度BTDCを超えたかどうかを判定する。もし最大値に届いていない場合、ステップ４０６でBaseTime値を所定量、例えば１００、進ませてOverall Timing値を計算する。次に、ステップ４０８はOverall Timing値に基づいて点火信号を送ることで点火パルスを誘導する。このループはBaseTime値が最大値になるまで続き、そこでステップ４１０に移動する。ステップ４１０は変数Accelerationをゼロにセットし、点火は所定のエンジン回転数に対して最大のBaseTime値にしたがって誘発される。従って、ステップ４１２と４１４は、それぞれOverall Timing値を計算し、点火トリガー信号を送る。その後、ステップ４１６でAcceleration値をインクリメントし、その値は判定ステップ４１８でチェックされる。もしAccelerationカウンタが所定値、本実施例の場合２４に達していない場合、制御はステップ４１２に戻り、Overall Timing値が再度決定される。Accelerationカウンタが２４と等しくなると、ステップ４２０でBaseTimeが０にリセットされ、加速シーケンスを出る。
【００３８】
カムダウンシーケンス１１０を始めるために、図３の判定ステップ１２６で、高いレベルでエンジンスピードがあった後のエンジンスピードの大幅な低下が必要である。より詳細には、エンジン速度が６，５００回転／分を超えて、その後４，０００回転／分以下のスピードで１６回転すると、カムダウンシーケンスは呼び出される。図７（ａ）と（ｂ）に、カムダウンシーケンスがより詳細に示される。ステップ５００はComeDowmフラグを１にセットし、RevsRetardedand Revolutionカウンタをゼロにセットし、SlowAdvanceフラグをゼロにセットする。次に、判定ステップ５０２でRevolutionカウンタが１６に達したか否かを判断する。もし達していない場合、ステップ５０４でRevolutionをインクリメントし、制御はステップ５０６に移り、そこでAdvanceをBaseTimeに加えてOverall Timing値を決定することが図７（ｂ）に示されている。Advanceはステップ１２２で決定した値と等しく、BaseTimeは同じステップでゼロと等しいから、Overall Timing値はAdvance値と等しい。もしComeDownフラッグがステップ５００でセットされた１のままであれば、ステップ５０８で制御はステップ５０２に戻り、この循環はRevolutionカウンタが１６に増加するまで続く。
【００３９】
もしRevolutionカウンタが１６に達した場合、ステップ５１０はRevolution値をゼロにリセットし、ステップ５１２はSlowAdvanceフラグをチェックする。もしSlowAdvanceが初期にセットした０と等しければ、ステップ５１４がBaseTimeを１０度ATDC遅らせる。ステップ５１６はRevsRetardedカウンタをインクリメントし、それから判定ステップ５１８でカウンタが所定値、本実施例で６と等しいか判定する。もしステップ５１８の判定が不一致の場合、Overall Timingが計算され、点火パルスがステップ５０６に従って誘発される。もしステップ５１８がRevsRetardedが所定回数に達したと判定した場合、ステップ５２０でSlowAdvanceフラッグが１にセットされ、ステップ５２２でBaseTime値が１６回転あたり０．７度ずつ増加する。判定ステップ５２４はBaseTimeがまだ０より大きいか等しいかを判断する（カムダウンシーケンスにおいて、遅れのためBaseTimeはゼロ又は負の値であった）。もし異なる場合、制御はステップ５０６に移る。もしBaseTime値がすでにゼロにまで減じていた場合、ComeDownとSlowAdvanceフラグはステップ５２６でゼロにセットされる。これにより、ステップ５０８でComeDownフラッグはもはや１ではないため、システムをカムダウンシーケンスから出させる。
【００４０】
図８（ａ）（ｂ）に、ノーマルモード動作において現在のエンジンスピードが所定のレベル即ち２，４００回転／分以下に落ちた時に入るリカバリーバンプシーケンス１１２を示す。リカバリーバンプシーケンス１１２の全体的な目的は、一時的に点火タイミングをその正常な位置より進めてエンジンスピードを増加させることであり、それによってエンストする可能性を低減することである。リカバリーバンプシーケンス１１２は、先に述べたウォームアップシーケンス１０４と類似しており、ステップ６００でタイマーを初期化し、変数RevCounterをゼロにセットし、RapidAdvanceフラッグを１にセットし、BaseTime値を０度BTDCにすることから始まる。初期化ステップ６００に続くステップ６０２で、現在のエンジンスピードを抽出する。もし現在のエンジンスピードが、判定ステップ６０４で判定される４，０００回転／分を超えている場合、エンジンスピードはすでに十分高速であり、リカバリーバンプシーケンス１１２を実行する必要性は無い。従ってステップ６０６でRapidAdvanceとSlowRetardフラグとBaseTime値とをゼロにリセットする。このステップに続けて、点火タイミングの制御はリカバリーバンプシーケンス１１２を出る。
【００４１】
もし現在のエンジンスピードが４，０００回転／分を超えない場合、判定ステップ６１０でRapidAdvanceフラグをチェックする。もしこのフラグが初期にセットされている１の場合、ステップ６１２はBaseTime値が完全に進んでいるかチェックし、否の場合、ステップ６１４でBaseTimeを所定量進める。もしBaseTime値がすでに完全に進んでいる場合、それ以上進めることは望ましくない。これらのステップに続けて、ステップ６１６のインクリメントカウンタはRevCounterをインクリメントし、その値を１６又は他のエンジン回転数の所定値と比較する。もしステップ６１８がRevCounterが１６以下であると判定した場合、ステップ６３０はAdvance値を現在のBaseTime値に加えてOverall Timing値を計算し、点火信号を送る。もしRevCounterが１６と等しい場合、ステップ６２０でステップ６０２で抽出した各エンジンスピード値の平均をとることで、平均スピードが最後の１６回転に対して計算される。また、RevCounterが再びゼロにセットされる。もし判定ステップ６２２が、これら１６回転の平均スピードが３，０００回転を超えていると判定した場合、追加してタイミングを進めることは不要であると判断され、ステップ６２４でSlowRetardフラグを１にセットする。もし平均スピードが３，０００回転／分以下の場合、ステップ６００で開始されたタイマーをチェックする必要がある。もし判定ステップ６２６がタイマーがすでに終了していると判定した場合、SlowRetardフラグを再び１にセットするが、もしタイマが終了していない場合、SlowRetardフラグはゼロを維持する。このフラグの状態はステップ６２８でチェックされ、点火タイミングの制御はステップ６３０に送られてOverall Timing値を決定する。もしステップ６２８でSlowRetardフラグがセットされていると判断した場合、ステップ６３２はBaseTime値を遅らせ、RapidAdvanceにゼロをセットする。最後に、ステップ６３４はBaseTime値が完全にゼロにまで減じているかをチェックし、ステップ６０６を通りリカバリーバンプシーケンス１１２を出る。もしBaseTime値がゼロに減じていない場合、Overall Timing値はステップ６３０に従い決定され、制御はステップ６０２に戻る。
【００４２】
動作において、現在のエンジンスピードが所定の値を超えるまで、又はBaseTimeがゼロに減じるまで、リカバリーバンプシーケンス１１２はBaseTime値を調整して、全体的な点火タイミングを調整する。その後、このシーケンスを出てノーマルモードシーケンスが再開する。RapidAdvanceフラグが１にセットされBaseTime値が完全に進んでいない限り、BaseTimeはステップ６１４に見られるように、エンジン１回転当り１／３度進められる。もしBaseTime値が完全に進められ、RapidAdvanceフラグにまだ１がセットされている場合、リカバリーバンプシーケンス１１２はRevCounterが１６と等しくなるまでステップ６０２、６０４、６１０、６１２、６１６、６１８、６３０を循環する。エンジンの１６回転毎にステップ６２０で平均スピードが計算され、平均スピードが所定値を超えているか、タイマーが終了していれば、リカバリーバンプシーケンス１１２は、１６回転当り１／３度BaseTime値を減らすことで、徐々にタイミングを遅らせ始める。この遅れ率は１６回転当り１／３度であって、進み率は１回転当り１／３度である。従って、点火タイミングは遅れ（SlowRetard）よりかなり速い率で進む（RapidAdvance）。ひとたびリカバリーバンプシーケンス１１２を出れば、ノーマルモードシーケンスが再開する。
【００４３】
図９に、パートスロットルシーケンス１１４の実施例を示す。これは、ノーマルモード動作がエンジンスピードが所定のエンジン回転数に対して所定のパートスロットル範囲に入ったと判断した時に呼び出される。好ましい実施例において、ステップ１３０、はエンジン１０回転以上に対し３，５００から６，５００回転／分の動作範囲にエンジンが入った時に、パートスロットルシーケンス１１４を開始する。先ずステップ７００において、変数EnableRevCounterとCancelRevCounterがゼロにセットされる。するとステップ７０２でエンジンスピードを検知し、ステップ７０４はエンジンスピード対点火タイミングのルックアップテーブルに基づいてAdvance値を決定する。このテーブルは、既に述べたテーブルと同じものでも良いし、パートスロットルシーケンス１１４用に特別に作成したものでも良い。いずれの場合でも、BaseTimeにゼロをセットする。次に、判定ステップ７０６がエンジンが現在所定のエンジンスピード範囲（本実施例においては３，５００〜６，５００回転）で動作しているかを判定する。この所定のスピード範囲は、システムがパートスロットルシーケンス１１４を始めるかどうかを判定するのに用いたのと同じ範囲であっても良く、異なっていても良い。もしエンジンが所定の範囲内で無ければ、ステップ７０８でPartThrottleModeがセットされているかどうかを問い合わせる。パートスロットルシーケンス１１４への初期経路において、フラグはまだセットされていない。もしステップ７０８の答えが否の場合、ステップ７１０でPartThrottleModeフラグがリセットされ、BaseTimeがゼロにセットされ、このシーケンスを出る。
【００４４】
もしエンジンが所定の３，５００〜６，５００回転／分の範囲で動作中であるとき、ステップ７０６は制御をステップ７２０に送り、そこで変数CancelRevCounterをリセットし、変数EnableRevCounterをインクリメントする。ステップ７２２で変数EnableRevCounterが特定の値、本実施例において４０に達したか否かを判定する。もし否の場合、AdvanceとBaseTime値との合計としてOverall Timing値が計算され、制御はステップ７０２のエンジンスピード検知へと戻る。ひとたびEnableRevCounterが４０に達すれば、ステップ７３０でPartThrottteModeフラグに１がセットされ、ステップ７３２でBaseTime値に（３０度BTDC）−（現在のAdvance値）がセットされる。現在のAdvance値は、予めルックアップテーブルを通じて決定されている。BaseTimeは次にステップ７２４を通り、Overall Ignition Timing＝ Advance + (30度 BTDC - Advance)という式から、Overall Ignition Timing値は現在のAdvance値とは独立して３０度BTDCに固定される。３０度BTDCのタイミング値を適用することで、エンジンはスピードアップし、エンスト状態から引き上げられる。もしエンジンが３，５００から６，５００回転／分の範囲で４０回転以上費やす場合、エンジンがスタック又は停滞した状態であるとして、より高速で働かせることが望ましい。ステップ７０８に戻り、システムが現在パートスロットルモード(PartThrottleMode = 1)であれば、変数CancelRevCounterをインクリメントし、ステップ７４２で所定の回数に達したか判定する。もしCancelRevCounterが例えば１０といった所定の回数に達した場合、制御はステップ７１０に移動して、パートスロットルシーケンス１１４を出る前に変数とフラグをリセットする。もしCancelRevCounterが所定の回数に達していない場合、制御はステップ７３２に戻りBaseTime値が再び調整される。
【００４５】
動作において、パートスロットルシーケンス１１４はエンジンが所定の回転数に対してパートスロットルモードで動作した時に呼び出され、最適性能を出すために点火タイミングを操作する。最初のパートスロットルシーケンス１１４では、Advance値がエンジンスピード対点火タイミングのルックアップテーブルに基づいて設定され、BaseTime値はゼロにセットされる。エンジンスピードがパートスロットルレンジ（本実施例において３，５００〜６，５００回転／分）に留まり、所定のエンジン回転数（４０回転）に達しない限り、点火タイミングは単にルックアップテーブルにより決定される。ひとたびエンジンの所定回転数に達すれば（ステップ７２２）、PartThrottleModeフラグがセットされ、システムが持続したパートスロットルモードで動作することを明示する。この点において、ステップ７３２でBaseTime値を変更することで点火タイミングはさらに調整される（通常は進められる）。エンジンスピードが所定の範囲に留まる限りにおいて、ステップ７０２、７０４、７０６、７２０、７２２、７３０、７３２、７２４が循環する。もしエンジンが所定のエンジンスピード範囲内での動作を止め、PartThrottleModeフラグが１にセットされると、パートスロットルシーケンスから出る前に、システムは４０回転だけ動作を継続する。もし４０回転の間にエンジンスピードが所定の範囲に落ちた場合、ステップ７０６が再び点火タイミングを前述のステップに従い計算する。ひとたび４０回転が終わる又はPartThrottleModeフラグがセットされていない時にエンジンスピードが所定の範囲から出た場合に、このシーケンスを出る。
【００４６】
先に説明した制御システムは、実施例であり、当業者には自明なバリエーションを含むことを目的としている。例えば、システムのための制御フローを決定するために用いられるエンジンスピードの値は、単一に読み取る代わりに、エンジン回転数の所定数の平均であってよい。従って、ステップ１２４に達する前に、ノーマルモードシーケンスはと、例えばエンジンスピードが１６回抽出され平均化されるといった積算回転計やループを利用することができる。この所定値と比較する前にエンジンスピードの平均を取るという技術は、ステップ１２６の前にノーマルモードシーケンスにおいて実行することができるし、他の応用ステップも利用することができる。また、比較のための所定のエンジン回転数値は、種々のエンジン性能や環境や他の条件を考慮して変更することができる。
【００４７】
さらに、本発明の制御システムは、４ストロークエンジンの各フライホイールの回転ごとに、主キャパシタを放電して生じる無効な火花を除去することによって、スパークエネルギーを向上させることが想定される。どの動作でエンジンはONになるのか検知することによって、点火タイミング制御は、この無効なスパークを除去することができ、よって主放電キャパシタを二重に充電でき、より高エネルギーを放電のために供給することができる。これを達成するために、点火タイミング制御は、短時間の間に、できればウォームアップシーケンスに続くノーマルモードシーケンスの間に、他の回転時に放電を止める。もしエンジンスピードがこの瞬間的なスパーク停止の悪影響を受けないのであれば、点火制御は正しいエンジンストロークが選ばれたことを知ることができる。もしエンジンスピードが落ちれば、点火制御はスパークを止めたことが原因であると知ることができる。このスパークをパワーストロークの時のみに供給するという方法は、前述の各動作シーケンスにおいてそれぞれ実施可能である。
【００４８】
さらに、キルスイッチの起動をチェックするための判定ステップを、各動作シーケンスに加えることができる。ノーマルシーケンスのステップ１３４に進んで点火タイミングの制御を待つ代わりに、各動作シーケンスにキルスイッチをモニターする判定ステップを含めることができ、よってキルスイッチの起動の認識をするために必要な時間を短縮することができる。
【００４９】
また、燃焼プロセスを開始するスパークは容量性放電装置以外の方法で生成しても良い。例えばフライバックタイプの点火システムがトランスの一次巻線に十分な電流を供給し、急激に電流を停止して、周辺電磁界を崩壊することによって、二次巻線に高電圧点火パルスを生成する。
【００５０】
上述の制御システムと方法とは、点火タイミングと空気／燃料比との両方を制御するシステムにおいても使用することができ、例えば２００２年１月１日出願の米国出願番号１０／１８６，５２２（現在放棄）と、２００４年１月２７日出願の米国出願番号１０／７６５、４１５に記載されている。両出願は本出願の出願人が出願人であり、本願に引用して援用する。
【産業上の利用可能性】
【００５１】
本発明によれば、低コスト、軽量燃焼機関で利用できる点火タイミング制御システムを提供する。
【００５２】
なお、前述した実施例は本発明の代表的な形態を示したに過ぎず、本発明は、実施例に限定されるものではない。即ち、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。
【図面の簡単な説明】
【００５３】
【図１】コントロールシステムの切取内部図を含む信号生成システムの実施例の正面図である。
【図２】図１の制御システムの実施例の概略図である。
【図３】図１の制御システムと共に使用されるファームウエアの全体的な操作の実施例を示すフローチャートである。
【図４】図３の起動シーケンスの実施例を示すフローチャートである。
【図５】（ａ）と（ｂ）は、図３のウォームアップシーケンスの実施例を示すフローチャートである。
【図６】図３の加速シーケンスの実施例を示すフローチャートである。
【図７】（ａ）と（ｂ）は、図３のカムダウンシーケンスの実施例を示すフローチャートである。
【図８】（ａ）と（ｂ）は、図３のリカバリーバンプシーケンスの実施例を示すフローチャートである。
【図９】図３のパートスロットルシーケンスの実施例を示すフローチャートである。
【符号の説明】
【００５４】
１０    信号生成システム
１２    制御システム
１４    点火リード
１６    ハウジング
１８    フライホイール
２０    クランクシャフト
２２    軸
２４    マグネット部分
３０    ラムスタック
３２    帯電巻線
３４    一次点火巻線
３６    二次点火巻線
３８    制御回路
４０    キルスイッチ
４２    スパークプラグ
５０    銅線コネクタ
５２    ブート
５４    取り付け機構
５６    空隙
６０    電子処理装置
６２    点火放電容量
６４    点火スイッチ装置
７０    ダイオード
７２    抵抗
【図１】
2007056869.tif 000004
【図２】
2007056869.tif 000005
【図３】
2007056869.tif 000006
【図４】
2007056869.tif 000007
【図５】
2007056869.tif 000008
【図６】
2007056869.tif 000009
【図７】
2007056869.tif 000010
【図８】
2007056869.tif 000011
【図９】
2007056869.tif 000012