(57)【特許請求の範囲】
【請求項１】
エンジンに供給する吸入空気量を電子スロットルを用いて制御することにより、ドループ制御方式またはアイソクロナス制御方式にて前記エンジンのエンジン回転数を制御するエンジン制御装置であって、
前記エンジン回転数を検出するエンジンパラメータ算出部と、
アクセル操作量を検出するアクセル操作量検出部と、
前記エンジンのエンジン冷却水温に対する前記エンジンの最低設定回転数であるＬＯＷ回転数および前記エンジンの最高設定回転数であるＨＩＧＨ回転数を求め、前記エンジン回転数および前記アクセル操作量に基づいて、前記エンジンの目標回転数として、前記ＬＯＷ回転数および前記ＨＩＧＨ回転数のいずれか一方を選択する目標回転数算出部と、
ドループ制御方式で前記電子スロットルを操作するための第１のスロットル操作量を、前記アクセル操作量に基づいて算出するドループ制御目標スロットル開度算出部と、
前記エンジン回転数と前記目標回転数との偏差を求め、アイソクロナス制御方式で前記電子スロットルを操作するための第２のスロットル操作量を、前記偏差に基づいて算出するアイソクロナス制御目標スロットル開度算出部と、
前記アクセル操作量と前記エンジン回転数とに基づいて、制御方式として、前記ドループ制御方式および前記アイソクロナス制御方式のいずれか一方を選択する制御方式判定部と、
前記アクセル操作量と前記制御方式とに基づいて、目標スロットル開度として、前記第１のスロットル操作量および第２のスロットル操作量のいずれか一方を選択する目標スロットル開度算出部と、
前記目標スロットル開度に基づいて、前記電子スロットルを制御する電子スロットル制御部と
を備え、
前記アクセル操作量が０の場合は、前記目標スロットル開度算出部によって前記第２のスロットル操作量が選択されて、前記電子スロットル制御部は、前記第２のスロットル操作量を用いて、前記アイソクロナス制御方式で前記電子スロットルの制御を行い、
前記アクセル操作量が０でない場合は、
前記エンジン回転数が前記ＬＯＷ回転数以下または前記ＨＩＧＨ回転数以上で、前記制御方式判定部が前記制御方式として前記アイソクロナス制御方式を選択している場合は、前記目標スロットル開度算出部によって、前記第１のスロットル操作量および前記第２のスロットル操作量のいずれか一方が選択され、前記電子スロットル制御部は、それに基づいて、前記アイソクロナス制御方式で前記電子スロットルの制御を行うとともに、それ以外の場合は、前記目標スロットル開度算出部によって前記第１のスロットル操作量が選択されて、前記電子スロットル制御部は、前記第１のスロットル操作量を用いて、前記ドループ制御方式で前記電子スロットルの制御を行い、
前記目標回転数算出部は、前記エンジン回転数に基づいてアクセル操作量閾値を求め、前記アクセル操作量が前記アクセル操作量閾値より大きい場合は、前記目標回転数に前記ＨＩＧＨ回転数を設定し、前記アクセル操作量が前記アクセル操作量閾値以下の場合は、前記目標回転数に前記ＬＯＷ回転数を設定し、
前記アイソクロナス制御方式は、前記目標回転数を前記ＬＯＷ回転数に設定した第１のアイソクロナス制御方式と、前記目標回転数を前記ＨＩＧＨ回転数に設定した第２のアイソクロナス制御方式とを含み、
前記アクセル操作量が０でない場合で、かつ、前記エンジン回転数が前記ＬＯＷ回転数以下の場合は、前記制御方式判定部は前記制御方式として前記第１のアイソクロナス制御方式を選択し、前記目標スロットル開度算出部は前記目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの大きい方を選択し、
前記アクセル操作量が０でない場合で、かつ、前記エンジン回転数が前記ＨＩＧＨ回転数以上の場合は、前記制御方式判定部は前記制御方式として前記第２のアイソクロナス制御方式を選択し、前記目標スロットル開度算出部は前記目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの小さい方を選択する
エンジン制御装置。
【請求項２】
前記アイソクロナス制御目標スロットル開度算出部は、
前記制御方式として前記アイソクロナス制御方式が選択されている場合には、前記目標回転数と前記エンジン回転数との偏差と前記エンジン回転数の変化量とを基にフィードバック制御にて前記第２のスロットル操作量を常時算出し、
前記制御方式として前記ドループ制御方式が選択されている場合には、前記フィードバック制御における積分制御値を前記第１のスロットル操作量に固定する
請求項１に記載のエンジン制御装置。
【請求項３】
エンジンに供給する吸入空気量を電子スロットルを用いて制御することにより、ドループ制御方式またはアイソクロナス制御方式にて前記エンジンのエンジン回転数を制御するエンジン制御方法であって、
前記エンジン回転数を検出するエンジンパラメータ算出ステップと、
アクセル操作量を検出するアクセル操作量検出ステップと、
前記エンジンのエンジン冷却水温に対する前記エンジンの最低設定回転数であるＬＯＷ回転数および前記エンジンの最高設定回転数であるＨＩＧＨ回転数を求め、前記エンジン回転数および前記アクセル操作量に基づいて、前記エンジンの目標回転数として、前記ＬＯＷ回転数および前記ＨＩＧＨ回転数のいずれか一方を選択する目標回転数算出ステップと、
ドループ制御方式で前記電子スロットルを操作するための第１のスロットル操作量を、前記アクセル操作量に基づいて算出するドループ制御目標スロットル開度算出ステップと、
前記エンジン回転数と前記目標回転数との偏差を求め、アイソクロナス制御方式で前記電子スロットルを操作するための第２のスロットル操作量を、前記偏差に基づいて算出するアイソクロナス制御目標スロットル開度算出ステップと、
前記アクセル操作量と前記エンジン回転数とに基づいて、制御方式として、前記ドループ制御方式および前記アイソクロナス制御方式のいずれか一方を選択する制御方式判定ステップと、
前記アクセル操作量と前記制御方式とに基づいて、目標スロットル開度として、前記第１のスロットル操作量および第２のスロットル操作量のいずれか一方を選択する目標スロットル開度算出ステップと、
前記目標スロットル開度に基づいて、前記電子スロットルを制御する電子スロットル制御ステップと
を備え、
前記アクセル操作量が０の場合は、前記目標スロットル開度算出ステップにおいて前記第２のスロットル操作量が選択されて、前記電子スロットル制御ステップは、前記第２のスロットル操作量を用いて、前記アイソクロナス制御方式で前記電子スロットルの制御を行い、
前記アクセル操作量が０でない場合は、
前記エンジン回転数が前記ＬＯＷ回転数以下または前記ＨＩＧＨ回転数以上で、前記制御方式判定ステップにおいて前記制御方式として前記アイソクロナス制御方式が選択された場合は、前記目標スロットル開度算出ステップにおいて、前記第１のスロットル操作量および前記第２のスロットル操作量のいずれか一方が選択され、前記電子スロットル制御ステップは、それに基づいて、前記アイソクロナス制御方式で前記電子スロットルの制御を行うとともに、それ以外の場合は、前記目標スロットル開度算出ステップにおいて前記第１のスロットル操作量が選択されて、前記電子スロットル制御ステップは、前記第１のスロットル操作量を用いて、前記ドループ制御方式で前記電子スロットルの制御を行い、
前記目標回転数算出ステップは、前記エンジン回転数に基づいてアクセル操作量閾値を求め、前記アクセル操作量が前記アクセル操作量閾値より大きい場合は、前記目標回転数に前記ＨＩＧＨ回転数を設定し、前記アクセル操作量が前記アクセル操作量閾値以下の場合は、前記目標回転数に前記ＬＯＷ回転数を設定し、
前記アイソクロナス制御方式は、前記目標回転数を前記ＬＯＷ回転数に設定した第１のアイソクロナス制御方式と、前記目標回転数を前記ＨＩＧＨ回転数に設定した第２のアイソクロナス制御方式とを含み、
前記アクセル操作量が０でない場合で、かつ、前記エンジン回転数が前記ＬＯＷ回転数以下の場合は、前記制御方式判定ステップは前記制御方式として前記第１のアイソクロナス制御方式を選択し、前記目標スロットル開度算出ステップは前記目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの大きい方を選択し、
前記アクセル操作量が０でない場合で、かつ、前記エンジン回転数が前記ＨＩＧＨ回転数以上の場合は、前記制御方式判定ステップは前記制御方式として前記第２のアイソクロナス制御方式を選択し、前記目標スロットル開度算出ステップは前記目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの小さい方を選択する
エンジン制御方法。
【請求項４】
前記アイソクロナス制御目標スロットル開度算出ステップは、
前記制御方式として前記アイソクロナス制御方式が選択されている場合には、前記目標回転数と前記エンジン回転数との偏差と前記エンジン回転数の変化量とを基にフィードバック制御にて前記第２のスロットル操作量を常時算出し、
前記制御方式として前記ドループ制御方式が選択されている場合には、前記フィードバック制御における積分制御値を前記第１のスロットル操作量に固定する
請求項３に記載のエンジン制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はエンジン制御装置およびエンジン制御方法に関し、特に、汎用エンジンのエンジン制御装置及びエンジン制御方法に関する。
【背景技術】
【０００２】
従来より、汎用エンジンの制御装置として電子ガバナ機構が知られている。例えば圧縮着火式エンジン（ディーゼルエンジン）の電子ガバナ機構は、エンジンの燃料噴射量を制御し、エンジン回転数を目標回転数に安定させる制御装置である。また、燃料噴射量の制御方式として、アイソクロナス制御とドループ制御がある。
【０００３】
アイソクロナス制御は、エンジンにかかる負荷が変動し、目標回転数と実回転数とに偏差が生じた場合にこの偏差を打ち消すように制御するものである。
【０００４】
圧縮着火式エンジンにおけるアイソクロナス制御においては、噴射量を補正することで回転数を制御し、目標の回転数を維持している。
【０００５】
また、火花式エンジンにおけるアイソクロナス制御においては、スロットルを開閉するアクチュエータを備え、スロットルを開閉することにより、エンジンに吸入される空気量を変化させ、エンジン回転数を目標回転数に一致するように制御している（例えば、特許文献１参照）。
【０００６】
一方、ドループ制御は、エンジンに負荷がかかると、その負荷の大きさに応じてエンジン回転数を減少させるものである。
【０００７】
圧縮着火式エンジンにおけるドループ制御では、目標回転数と実回転数の偏差に応じて所定量の燃料を増加させ、エンジンが発生するトルクより外部負荷が打ち勝った場合は、エンジン回転数が減少するように制御している（例えば、特許文献２参照）。
【０００８】
また、従来の制御方法として、アイソクロナス制御とドループ制御を組み合わせた仮想ドループ制御も提案されている（例えば、特許文献３参照）。
【０００９】
特許文献３に記載の仮想ドループ制御は、機械式ガバナの制御特性を電子ガバナで実現するものであり、船舶用エンジン、農作業車用エンジン、および、土木作業車用エンジンにおいては、エンジン負荷の増加に従いエンジン回転数を減少させることにより、負荷のかかり具合をエンジン回転数の低下より把握できるようにし、運転者の感覚に適合したエンジン運転性能を実現しようとするものである。また、アイソクロナス制御であれば、加減速時に急加速および急減速するため運転者に違和感を与えるが、ドループ制御であればそのような違和感を軽減することができる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平２−２３８１３６号公報
【特許文献２】特開２００８−２３１９３９号公報
【特許文献３】特開２０００−１１０６３５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
従来のアイソクロナス制御は、加減速時に急加速および急減速するため、運転者に違和感を与えてしまうという問題点があった。
【００１２】
また、従来のドループ制御は、そのような違和感を軽減することはできるが、加速および減速の応答性が悪く、運転者にストレスを感じさせてしまうという問題点があった。
【００１３】
そのため、従来の仮想ドループ制御では、アイソクロナス制御を用いてドループ制御を実現しており、負荷が増大すれば目標回転数を減少させ、その回転数に一致するようにフィードバック制御を実施する事で、ドループ制御を実現するものであった。しかしながら、この場合、全回転域においてアイソクロナス制御が実現できるようにフィードバック制御のゲイン適合が必要となり、適合工数が大きいという問題点があった。
【００１４】
一方、機械式ガバナを有したエンジンでは、エンジン負荷が増大した場合、エンジン回転数が低下していき、エンジンがストールする恐れがある。また、エンジンの最高設定回転数（ハイアイドル回転数）でエンジン動作中に負荷が抜けた場合は、エンジン回転数がさらに上昇するとエンジンの破損が起こるため、それを防止するために、燃料カットあるいは点火カットを行い、エンジンを保護する制御（いわゆるオーバーレボ制御）が通常動作される。オーバーレボ制御が動作した場合は、エンジン回転数が急変動し、使用者に不快感を与えることになる（図８の動作参照）。
【００１５】
また、汎用エンジンは、他の用途のエンジン（例えば、４輪車）と異なり、負荷が急激に変化することは通常の使用用途において起こりえることである。もし、負荷が急激に加わり、エンジンストールしたり、負荷が急激に抜けて回転数がオーバーレボ回転まで到達し回転変動したりすると、運転者に不快感を与えてしまう。
【００１６】
本発明は、かかる問題点を解決するためになされたものであり、エンジン負荷の変化に伴いドループ制御方式とアイソクロナス制御方式とを運転状態に応じて自動的に切り替えることにより、運転者に不快感を与えることを防止することが可能な、エンジン制御装置およびエンジン制御方法を得ることを目的とする。
【課題を解決するための手段】
【００１７】
この発明は、エンジンに供給する吸入空気量を電子スロットルを用いて制御することにより、ドループ制御方式またはアイソクロナス制御方式にて前記エンジンのエンジン回転数を制御するエンジン制御装置であって、前記エンジン回転数を検出するエンジンパラメータ算出部と、アクセル操作量を検出するアクセル操作量検出部と、前記エンジンのエンジン冷却水温に対する前記エンジンの最低設定回転数であるＬＯＷ回転数および前記エンジンの最高設定回転数であるＨＩＧＨ回転数を求め、前記エンジン回転数および前記アクセル操作量に基づいて、前記エンジンの目標回転数として、前記ＬＯＷ回転数および前記ＨＩＧＨ回転数のいずれか一方を選択する目標回転数算出部と、ドループ制御方式で前記電子スロットルを操作するための第１のスロットル操作量を、前記アクセル操作量に基づいて算出するドループ制御目標スロットル開度算出部と、前記エンジン回転数と前記目標回転数との偏差を求め、アイソクロナス制御方式で前記電子スロットルを操作するための第２のスロットル操作量を、前記偏差に基づいて算出するアイソクロナス制御目標スロットル開度算出部と、前記アクセル操作量と前記エンジン回転数とに基づいて、制御方式として、前記ドループ制御方式および前記アイソクロナス制御方式のいずれか一方を選択する制御方式判定部と、前記アクセル操作量と前記制御方式とに基づいて、目標スロットル開度として、前記第１のスロットル操作量および第２のスロットル操作量のいずれか一方を選択する目標スロットル開度算出部と、前記目標スロットル開度に基づいて、前記電子スロットルを制御する電子スロットル制御部とを備え、前記アクセル操作量が０の場合は、前記目標スロットル開度算出部によって前記第２のスロットル操作量が選択されて、前記電子スロットル制御部は、前記第２のスロットル操作量を用いて、前記アイソクロナス制御方式で前記電子スロットルの制御を行い、前記アクセル操作量が０でない場合は、前記エンジン回転数が前記ＬＯＷ回転数以下または前記ＨＩＧＨ回転数以上で、前記制御方式判定部が前記制御方式として前記アイソクロナス制御方式を選択している場合は、前記目標スロットル開度算出部によって、前記第１のスロットル操作量および前記第２のスロットル操作量のいずれか一方が選択され、前記電子スロットル制御部は、それに基づいて、前記アイソクロナス制御方式で前記電子スロットルの制御を行うとともに、それ以外の場合は、前記目標スロットル開度算出部によって前記第１のスロットル操作量が選択されて、前記電子スロットル制御部は、前記第１のスロットル操作量を用いて、前記ドループ制御方式で前記電子スロットルの制御を行い、前記目標回転数算出部は、前記エンジン回転数に基づいてアクセル操作量閾値を求め、前記アクセル操作量が前記アクセル操作量閾値より大きい場合は、前記目標回転数に前記ＨＩＧＨ回転数を設定し、前記アクセル操作量が前記アクセル操作量閾値以下の場合は、前記目標回転数に前記ＬＯＷ回転数を設定し、前記アイソクロナス制御方式は、前記目標回転数を前記ＬＯＷ回転数に設定した第１のアイソクロナス制御方式と、前記目標回転数を前記ＨＩＧＨ回転数に設定した第２のアイソクロナス制御方式とを含み、前記アクセル操作量が０でない場合で、かつ、前記エンジン回転数が前記ＬＯＷ回転数以下の場合は、前記制御方式判定部は前記制御方式として前記第１のアイソクロナス制御方式を選択し、前記目標スロットル開度算出部は前記目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの大きい方を選択し、前記アクセル操作量が０でない場合で、かつ、前記エンジン回転数が前記ＨＩＧＨ回転数以上の場合は、前記制御方式判定部は前記制御方式として前記第２のアイソクロナス制御方式を選択し、前記目標スロットル開度算出部は前記目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの小さい方を選択するエンジン制御装置である。
【発明の効果】
【００１８】
この発明は、アクセル操作量が０でない場合は、エンジン回転数がＬＯＷ回転数以下またはＨＩＧＨ回転数以上で、制御方式判定部が制御方式としてアイソクロナス制御方式を選択している場合は、目標スロットル開度算出部によって、前記第１のスロットル操作量および前記第２のスロットル操作量のいずれか一方が選択され、電子スロットル制御部は、それに基づいて、アイソクロナス制御方式で電子スロットルの制御を行うとともに、それ以外の場合は、目標スロットル開度算出部によって前記第１のスロットル操作量が選択されて、電子スロットル制御部は、前記第１のスロットル操作量を用いて、ドループ制御方式で電子スロットルの制御を行い、目標回転数算出部は、エンジン回転数に基づいてアクセル操作量閾値を求め、アクセル操作量がアクセル操作量閾値より大きい場合は、目標回転数にＨＩＧＨ回転数を設定し、アクセル操作量がアクセル操作量閾値以下の場合は、目標回転数にＬＯＷ回転数を設定し、アイソクロナス制御方式は、目標回転数をＬＯＷ回転数に設定した第１のアイソクロナス制御方式と、目標回転数をＨＩＧＨ回転数に設定した第２のアイソクロナス制御方式とを含み、アクセル操作量が０でない場合で、かつ、エンジン回転数がＬＯＷ回転数以下の場合は、制御方式判定部は制御方式として前記第１のアイソクロナス制御方式を選択し、目標スロットル開度算出部は目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの大きい方を選択し、アクセル操作量が０でない場合で、かつ、エンジン回転数がＨＩＧＨ回転数以上の場合は、制御方式判定部は制御方式として前記第２のアイソクロナス制御方式を選択し、目標スロットル開度算出部は目標スロットル開度として前記第１のスロットル操作量と前記第２のスロットル操作量のうちの小さい方を選択するエンジン制御装置であるので、エンジン負荷の変化に伴いドループ制御方式とアイソクロナス制御方式とを運転状態に応じて自動的に切り替えることにより、運転者に不快感を与えることを防止することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施の形態１に係るエンジン制御装置およびそれが設けられたシステム全体を示す構成図である。
【図２】本発明の実施の形態１に係るエンジン制御装置の構成を示すブロック図である。
【図３】本発明の実施の形態１に係るエンジン制御装置の動作を示すフローチャートである。
【図４】本発明の実施の形態１に係るエンジン制御装置の動作を示すフローチャートである。
【図５】本発明の実施の形態１に係るエンジン制御装置の動作を示すフローチャートである。
【図６】本発明の実施の形態１に係るエンジン制御装置の動作を示すフローチャートである。
【図７】本発明の実施の形態１に係るエンジン制御装置の動作を示すフローチャートである。
【図８】従来の機械式ガバナを用いた汎用エンジン挙動を示す図である。
【図９】本発明の実施の形態１に係るエンジン制御装置の制御によるエンジン挙動を示す図である。
【図１０】本発明の実施の形態１に係るエンジン制御装置の制御によるエンジン挙動を示す図である。
【発明を実施するための形態】
【００２０】
実施の形態１．
以下、図面を参照しながら、本発明の実施の形態１に係るエンジンの制御装置について詳細に説明する。なお、各図において、同一または相当する構成については同一符号を付している。
【００２１】
図１は、本発明の実施の形態１に係るエンジン制御装置およびそれが設けられたシステム全体を示す構成図であり、エンジンを構成する内燃機関とエンジン制御装置との関係を概略的に示している。本実施の形態１に係るエンジン制御装置は、エンジン負荷増加に伴いエンジン回転数を減少させるドループ制御方式と、実回転数を目標回転数に制御するアイソクロナス制御方式とを、運転状態に応じて自動的に切り換える。以下、本実施の形態１に係るエンジン制御装置について説明する。
【００２２】
図１に示すように、本実施の形態１に係るエンジン制御装置の制御対象である汎用エンジン１（以下、単に「エンジン１」と表記する）が車両に設けられている。本実施の形態１に係るエンジン制御装置は、図１に示すように、クランク角センサ２、カム角センサ３、水温センサ４、点火コイル５、点火プラグ６、スロットルバルブ７、スロットルアクチュエータ（電子スロットル）７ａ、スロットルセンサ８、吸気通路９、吸気圧センサ１０、吸気温センサ１１、インジェクタ１２、燃料タンク１３、燃料ポンプ１３ａ、排気通路１４、Ｏ２センサ１５、三元触媒１６、ＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ：電子制御ユニット）１７、バッテリ１８、故障表示機１９、ＥＧＲバルブ２０ａ、ＥＧＲ通路２０、アクセルペダル２１、およびアクセルポジションセンサ２１ａを備えている。
【００２３】
エンジン１には、点火コイル５、点火プラグ６およびインジェクタ１２が搭載されるとともに、吸気バルブおよび排気バルブを介して吸気通路９および排気通路１４が連通されている。ＥＣＵ１７は、エンジン１の負荷に応じて、目標の空燃比となるように、インジェクタ１２からエンジン１に供給される燃料量を算出する。また、ＥＣＵ１７は、エンジン回転数とエンジン負荷とに基づいて、点火プラグ６による最適な点火時期を算出する。また、ＥＣＵ１７は、エンジン１に供給する最適な空気量を算出し、スロットルアクチュエータ（電子スロットル）７ａにより空気量を調整する。
【００２４】
また、ＥＧＲ通路２０（バイパス通路）は、ＥＧＲバルブ２０ａを介して、排気通路１４と吸気通路９との間を連通している。
【００２５】
吸気通路９には、エンジン１への吸入空気量を調整するためのスロットルバルブ７と、スロットルバルブ７を開閉駆動するスロットルアクチュエータ７ａとが設けられている。
【００２６】
一方、排気通路１４内にはエンジン１から排出される排気ガスＥを浄化する三元触媒１６が設けられている。
【００２７】
インジェクタ１２は、燃料タンク１３に設けられた燃料ポンプ１３ａによって供給される燃料（ガソリン）をエンジン１の各気筒に対応した吸気通路９内に噴射する。点火コイル５は点火プラグ６に電力エネルギーを供給する。点火プラグ６は放電火花を用いて空気と燃料の混合気に着火する。
【００２８】
次に、エンジン１の運転状態および負荷状態を検出する各種アナログ出力センサについて説明する。クランク角センサ２はクランク角度θ１を検出する。カム角センサ３はカム角度θ２を検出する。水温センサ４はエンジン冷却水温Ｔｗを検出する。吸気温センサ１１は、吸入空気Ａの温度Ｔａを検出する。
【００２９】
スロットルセンサ８はスロットルバルブ７の角度θｔを検出する。吸気圧センサ１０はスロットルバルブ７の下流に配置されて吸気通路９内の圧力Ｐｂを検出する。また、Ｏ２センサ１５は三元触媒１６よりも上流側に配置されて、排気通路１４内の酸素温度（空燃比）に対応した検出値ＡＦを出力する。
【００３０】
アクセルポジションセンサ２１ａ（アクセル操作量検出部）はアクセルペダル２１に取り付けられている。アクセルポジションセンサ２１ａは、運転者の操作量であるアクセル操作量θａｐｓを検出する。図１では、アクセル操作量検出部として、アクセルポジションセンサ２１ａのようなアナログセンサを図示しているが、スイッチのようなデジタル情報やＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）のように他のユニットからの通信情報を用いるようにしてもよい。
【００３１】
なお、上記各種センサは一例として示したものであり、この発明の実施の形態１の構成要件としてすべてが含まれている必要は無い。従って、上記各種センサのうちの一部だけが設けられていても良く、あるいは、上記各種センサ以外の他のセンサがさらに設けられていてもよい。
【００３２】
これらの各種センサ２，３，４，８，１０，１１，１５，２１ａの検出情報は、ＥＣＵ１７に入力される。
【００３３】
ＥＣＵ１７は、クランク角センサ２からのクランク角度θ１、カム角センサ３からのカム角度θ２、および、他の各種センサからの入力情報に基づき、エンジン１を制御するための制御量の演算を行い、点火コイル５、スロットルアクチュエータ７ａ、およびインジェクタ１２などの各種アクチュエータの駆動制御を行う。
【００３４】
ＥＣＵ１７は、エンジン１の負荷に応じて、エンジン１に供給された空気量に基づき、理論空燃費（目標空燃費）になるように燃料噴射量を算出し、当該噴射量に基づいてインジェクタ１２からエンジン１へ燃料を供給し、また、エンジン１の回転数ＲＥと負荷とにより最適な点火時期を演算し、点火プラグ６にて点火を行う。また、ＥＣＵ１７は、エンジン１に供給する空気量を、スロットルアクチュエータ（電子スロットル）７ａにより制御する。
【００３５】
また、ＥＣＵ１７はアクセルポジションセンサ２１ａからのアクセル操作量θａｐｓに基づき、ドループ制御方式にて電子スロットルを操作するための第１のスロットル操作量θｔｐｓ１を演算、あるいは、アイソクロナス制御にて電子スロットルを操作するための第２のスロットル操作量θｔｐｓ２を演算して、スロットルアクチュエータ７ａ（電子スロットル）の駆動制御を行う。
【００３６】
また、バッテリ１８はＥＣＵ１７に接続されている。バッテリ１８は、エンジン始動や、ライトなどの各種電装品への電力供給を行う。
故障表示機１９は、いずれかの箇所で故障が発生したときに、ＥＣＵ１７からの信号を受けて、当該故障の発生について表示する。
【００３７】
図２は、ＥＣＵ１７の機能構成を示すブロック図であり、目標回転数の算出および目標スロットル開度の演算に関する機能を主に示している。
【００３８】
図２において、ＥＣＵ１７は、エンジンパラメータ算出部２２、目標回転数算出部２３、ドループ制御目標スロットル開度算出部２４、アイソクロナス制御目標スロットル開度算出部２５、制御方式判定部２６、目標スロットル開度算出部２７、電子スロットル制御部２８、および、図示していない各種のアクチュエータ制御部（燃料制御部、点火制御部など）を備えている。
【００３９】
エンジンパラメータ算出部２２は、クランク角センサ２からのクランク角度θ１に基づいて、エンジン回転数ＲＥ、および、エンジン回転数ＲＥの所定時間における変化量ΔＲＥを求める。
【００４０】
目標回転数算出部２３は、エンジンフリクションの差異や、オーバーヒートによるエンジン破損防止のため、水温センサ４からのエンジン冷却水温Ｔｗに基づいて、ＬＯＷ回転数とＨＩＧＨ回転数を決定する。このとき、他の各種センサからの入力情報や、その他制御情報を用いて、上記のＬＯＷ回転数とＨＩＧＨ回転数を求めてもよい。また、目標回転数算出部２３は、エンジンパラメータ算出部２２からのエンジン回転数ＲＥに基づいてアクセル操作量閾値を求め、当該アクセル操作量閾値とアクセルポジションセンサ２１ａからのアクセル操作量θａｐｓとを比較して、目標回転数Ｎｏを、ＬＯＷ回転数またはＨＩＧＨ回転数のいずれかに決定する。
【００４１】
ドループ制御目標スロットル開度算出部２４は、アクセルポジションセンサ２１ａからのアクセル操作量θａｐｓに基づいて第１のスロットル操作量θｔｐｓ１を算出する。
【００４２】
アイソクロナス制御目標スロットル開度算出部２５は、目標回転数算出部２３からの目標回転数Ｎｏとエンジンパラメータ算出部２２からのエンジン回転数ＲＥとの偏差Ｎｅｒｒを求め、フィードバック制御（ＰＩＤ制御）において偏差Ｎｅｒｒが０に近づくように制御するための第２のスロットル操作量θｔｐｓ２を算出する。
【００４３】
制御方式判定部２６は、アクセルポジションセンサ２１ａからのアクセル操作量θａｐｓとエンジンパラメータ算出部２２からのエンジン回転数ＲＥとに基づいて、ドループ制御方式によりスロットルアクチュエータ７ａを制御するか、アイソクロナス制御方式によりスロットルアクチュエータ７ａを制御するかを決定し、決定した制御方式を示す信号（以下、制御方式Ｍｄとする。）を出力する。
【００４４】
目標スロットル開度算出部２７は、アクセル操作量θａｐｓおよび制御方式Ｍｄに基づいて、第１のスロットル操作量θｔｐｓ１か第２のスロットル操作量θｔｐｓ２のいずれか一方を、目標スロットル開度θｏに設定する。
【００４５】
電子スロットル制御部２８は、目標スロットル開度θｏに基づいて、スロットルセンサ８からのスロットルバルブ７の角度θｔを目標スロットル開度θｏに近づけるようにスロットルアクチュエータ７ａを制御する。
【００４６】
以下、図１〜２とともに、図３〜図７のフローチャート、および、図８〜図１０の説明図を参照しながら、本発明の実施の形態１による動作について説明する。
【００４７】
図３は、本発明の実施の形態１の目標回転数算出部２３の目標回転数算出処理を示すフローチャートである。図４は、ドループ制御目標スロットル開度算出部２４のスロットル操作量θｔｐｓ１算出処理を示すフローチャートである。図５はアイソクロナス制御目標スロットル開度算出部２５のスロットル操作量θｔｐｓ２算出処理を示すフローチャートである。図６は制御方式判定部２６の制御方式Ｍｄの判定処理を示すフローチャートである。図７は目標スロットル開度算出部２７の目標スロットル開度θｏ算出処理を示すフローチャートである。
【００４８】
まず、図３を用いて、目標回転数算出部２３の目標回転数算出処理について説明する。図３において、目標回転数算出部２３は、まず、水温センサ４からのエンジン冷却水温Ｔｗに基づいて、ＬＯＷ回転数およびＨＩＧＨ回転数を算出する（ステップＳ１０１）。ＬＯＷ回転数およびＨＩＧＨ回転数の算出方法としては、例えば、エンジン冷却水温ＴｗごとにＬＯＷ回転数の値およびＨＩＧＨ回転数の値を記憶したマップＭＡＰ１、ＭＡＰ２を用意しておき、当該マップＭＡＰ１、ＭＡＰ２から、そのときのエンジン冷却水温Ｔｗに対するＬＯＷ回転数およびＨＩＧＨ回転数の値を読み出すようにすればよい（ＬＯＷ回転数＝ＭＡＰ１（Ｔｗ）、ＨＩＧＨ回転数＝ＭＡＰ２（Ｔｗ））。次に、エンジンパラメータ算出部２２からのエンジン回転数ＲＥに基づいてアクセル操作量閾値を算出し（ステップＳ１０２）、算出したアクセル操作量閾値をアクセルポジションセンサ２１ａからのアクセル操作量θａｐｓと比較する（ステップＳ１０３）。アクセル操作量閾値の算出方法としては、例えば、エンジン回転数ＲＥごとにアクセル操作量閾値を記憶したマップＭＡＰ３を用意しておき、当該マップＭＡＰ３から、そのときのエンジン回転数ＲＥに対するアクセル操作量閾値を読み出すようにすればよい（アクセル操作量閾値＝ＭＡＰ３（ＲＥ)）。ステップＳ１０３の比較の結果、アクセル操作量θａｐｓがアクセル操作量閾値より大きければ、目標回転数ＮｏをＨＩＧＨ回転数とする（ステップＳ１０４）。そうでなければ、目標回転数ＮｏをＬＯＷ回転数とする（ステップＳ１０５）。目標回転数算出部２３は、こうして求めた目標回転数Ｎｏを出力する。
【００４９】
次に、図４を用いて、ドループ制御目標スロットル開度算出部２４のスロットル操作量θｔｐｓ１算出処理について説明する。図４において、ドループ制御目標スロットル開度算出部２４は、アクセルポジションセンサ２１ａからのアクセル操作量θａｐｓを用いて、ドループ制御のための第１のスロットル操作量θｔｐｓ１を求める（ステップＳ２０１）。第１のスロットル操作量θｔｐｓ１の算出方法としては、例えば、第１のスロットル操作量θｔｐｓ１を求めるための演算式としてアクセル操作量θａｐｓの関数Ｆｕｎｃ１を用意しておき、それを用いて求めるようにすればよい（第１のスロットル操作量θｔｐｓ１＝Ｆｕｎｃ（θａｐｓ））。ドループ制御目標スロットル開度算出部２４は、こうして求めた第１のスロットル操作量θｔｐｓ１を出力する。
【００５０】
次に、図５を用いて、アイソクロナス制御目標スロットル開度算出部２５のスロットル操作量θｔｐｓ２算出処理について説明する。図５において、アイソクロナス制御目標スロットル開度算出部２５は、まず、目標回転数算出部２３から入力される目標回転数Ｎｏと、エンジンパラメータ算出部２２から入力されるエンジン回転数ＲＥとを用いて、目標回転数Ｎｏとエンジン回転数ＲＥとの偏差Ｎｅｒｒを求める（ステップＳ３０１）。次に、求めた偏差Ｎｅｒｒに基づき、スロットル操作量比例項θｔｐｓ２ｐを算出する（ステップＳ３０２）。スロットル操作量比例項θｔｐｓ２ｐの算出方法としては、例えば、スロットル操作量比例項θｔｐｓ２ｐを求めるための演算式として、偏差Ｎｅｒｒの関数Ｆｕｎｃ２を用意しておき、それを用いて求めるようにすればよい（スロットル操作量比例項θｔｐｓ２ｐ＝Ｆｕｎｃ２（Ｎｅｒｒ））。次に、エンジンパラメータ算出部２２から入力されるエンジン回転数変化量ΔＲＥよりスロットル操作量微分項θｔｐｓ２ｄを求める（ステップＳ３０３）。スロットル操作量微分項θｔｐｓ２ｄの算出方法としては、例えば、スロットル操作量微分項θｔｐｓ２ｄを求めるための演算式として、エンジン回転数変化量ΔＲＥの関数Ｆｕｎｃ３を用意しておき、それを用いて求めるようにすればよい（スロットル操作量微分項θｔｐｓ２ｄ＝Ｆｕｎｃ３（ΔＲＥ））。次に、制御方式判定部２６からの制御方式Ｍｄがドループ制御方式か否かを判定する（ステップＳ３０５ａ）。このとき、制御方式Ｍｄが、ドループ制御方式でなければ、スロットル操作量比例項θｔｐｓ２ｐとスロットル操作量微分項θｔｐｓ２ｄに基づいて、スロットル操作量積分項θｔｐｓ２ｉを算出する（ステップＳ３０４）。スロットル操作量積分項θｔｐｓ２ｉの算出方法としては、例えば、スロットル操作量積分項θｔｐｓ２ｉを求めるための演算式として、スロットル操作量比例項θｔｐｓ２ｐとスロットル操作量微分項θｔｐｓ２ｄの関数Ｆｕｎｃ４を用意しておき、それを用いて求めるようにすればよい（スロットル操作量積分項θｔｐｓ２ｉ＝Ｆｕｎｃ４（θｔｐｓ２ｐ，θｔｐｓ２ｄ））。一方、ステップＳ３０５ａの判定で、制御方式Ｍｄがドループ制御方式であれば、スロットル操作量積分項θｔｐｓ２ｉは、ドループ制御目標スロットル開度算出部２４で求めた第１のスロットル操作量θｔｐｓ１とする（ステップＳ３０５）。次に、スロットル操作量比例項θｔｐｓ２ｐとスロットル操作量微分項θｔｐｓ２ｄとスロットル操作量積分項θｔｐｓ２ｉとの和を求め、第２のスロットル操作量θｔｐｓ２とする（ステップＳ３０６）。アイソクロナス制御目標スロットル開度算出部２５は、このように、アイソクロナス制御方式で制御を行っている場合には、目標回転数Ｎｏとエンジン回転数ＲＥとの偏差Ｎｅｒｒとエンジン回転数の変化量ΔＲＥとを基にＰＩＤ制御にて第２のスロットル操作量θｔｐｓ２を常時算出し、ドループ制御方式で制御を行っている場合には、第１のスロットル操作量θｔｐｓ１を用いてＰＩＤ制御での積分制御値（スロットル操作量積分項）を初期値に固定する。アイソクロナス制御目標スロットル開度算出部２５は、以上のようにして求めた第２のスロットル操作量θｔｐｓ２を��力する。
【００５１】
次に、図６を用いて、制御方式判定部２６の制御方式Ｍｄの判定処理について説明する。図６において、制御方式判定部２６は、まず、アクセルポジションセンサ２１ａからのアクセル操作量θａｐｓが０か否かを判定する（ステップＳ４０１ａ）。判定の結果、アクセル操作量θａｐｓが０の場合は、制御方式Ｍｄをアイソクロナス制御方式（ＬＯＷ）とする（ステップＳ４０１）。なお、アイソクロナス制御方式（ＬＯＷ）とは、目標回転数Ｎｏを目標回転数算出部２３で求めたＬＯＷ回転数に設定した場合のアイソクロナス制御方式である。一方、アクセル操作量θａｐｓが０でない場合は、エンジンパラメータ算出部２２からのエンジン回転数ＲＥがＬＯＷ回転数以下か否かを判定する（ステップＳ４０２ａ）。エンジン回転数ＲＥがＬＯＷ回転数以下の場合には、制御方式Ｍｄをアイソクロナス制御方式（ＬＯＷ）とする（ステップＳ４０２）。一方、ステップＳ４０２ａの判定で、エンジン回転数ＲＥがＬＯＷ回転数より大きい場合には、エンジン回転数ＲＥが、目標回転数算出部２３で求めたＨＩＧＨ回転数以上か否かを判定する（ステップＳ４０３ａ）。エンジン回転数ＲＥがＨＩＧＨ回転数以上の場合には、制御方式Ｍｄをアイソクロナス制御方式（ＨＩＧＨ）とする（ステップＳ４０３）。なお、アイソクロナス制御方式（ＨＩＧＨ）とは、目標回転数Ｎｏを目標回転数算出部２３で求めたＨＩＧＨ回転数に設定した場合のアイソクロナス制御方式である。一方、ステップＳ４０３ａの判定で、エンジン回転数ＲＥがＨＩＧＨ回転数より小さい場合には、制御方式Ｍｄをドループ制御方式とする（ステップＳ４０４）。制御方式判定部２６は、こうして求めた制御方式Ｍｄを出力する。
【００５２】
次に、図７を用いて、目標スロットル開度算出部２７の目標スロットル開度θｏ算出処理について説明する。図７において、目標スロットル開度算出部２７は、まず、アクセルポジションセンサ２１ａからのアクセル操作量θａｐｓが０か否かを判定する（ステップＳ５０１ａ）。判定の結果、アクセル操作量θａｐｓが０の場合は、目標スロットル開度θｏを、アイソクロナス制御目標スロットル開度算出部２５で求めた第２のスロットル操作量θｔｐｓ２とする（ステップＳ５０１）。一方、ステップＳ５０１ａの判定で、アクセル操作量θａｐｓが０でない場合は、制御方式判定部２６で決定した制御方式Ｍｄがアイソクロナス制御方式（ＬＯＷ）であるか否かを判定する（ステップＳ５０２ａ）。制御方式Ｍｄがアイソクロナス制御方式（ＬＯＷ）であれば、目標スロットル開度θｏとして、ドループ制御目標スロットル開度算出部２４で求めた第１のスロットル操作量θｔｐｓ１か、あるいは、アイソクロナス制御目標スロットル開度算出部２５で求めた第２のスロットル操作量θｔｐｓ２の内の大きい方を選択する（ステップＳ５０２）。一方、ステップＳ５０２ａの判定で、制御方式Ｍｄがアイソクロナス制御方式（ＬＯＷ）でなければ、制御方式Ｍｄがアイソクロナス制御方式（ＨＩＧＨ）か否かを判定する（ステップＳ５０３ａ）。制御方式Ｍｄがアイソクロナス制御方式（ＨＩＧＨ）であれば、目標スロットル開度θｏとして、第１のスロットル操作量θｔｐｓ１か、あるいは、第２のスロットル操作量θｔｐｓ２の内の小さい方を選択する（ステップＳ５０３）。ステップＳ５０３ａの判定で、上記以外の場合は、目標スロットル開度θｏを第１のスロットル操作量θｔｐｓ１とする（ステップＳ５０４）。このように、目標スロットル開度算出部２７は、アクセル操作量が０の場合は、目標スロットル開度θｏとして、第２のスロットル操作量θｔｐｓ２を選択し、アクセル操作量が０でない場合で、かつ、目標回転数ＮｏがＬＯＷ回転数に設定されている場合は、目標スロットル開度θｏとして、第１のスロットル操作量θｔｐｓ１と第２のスロットル操作量θｔｐｓ２のうちの大きい方を選択し、アクセル操作量が０でない場合で、かつ、目標回転数ＮｏがＨＩＧＨ回転数に設定されている場合は、目標スロットル開度θｏとして、第１のスロットル操作量θｔｐｓ１と第２のスロットル操作量θｔｐｓ２のうちの小さい方を選択し、それ以外の場合は、目標スロットル開度θｏとして、第１のスロットル操作量θｔｐｓ１を選択する。
【００５３】
本発明の実施の形態１では、ここまで説明した通り、ドループ制御方式およびアイソクロナス制御方式を運転状態に応じて自動的に切り替えることで全回転域の回転数制御を実現している。目標スロットル開度が一意に決まるドループ制御方式に比べて、フィードバック制御で目標スロットル開度を決めるアイソクロナス制御方式は適合工数が大きい。従来の仮想ドループ制御では全回転域アイソクロナス制御方式で適合するために非常に適合工数が多くなったが、本発明の実施の形態１では、必要な回転域のみアイソクロナス制御方式で適合し、他の回転域ではドループ制御を適合するため適合工数の削減が図れる。
【００５４】
また、機械式ガバナを有したエンジンの場合、従来においては、図８に示すように、エンジンに負荷がかかっている状態かつエンジンのＨＩＧＨ回転数（最高設定回転数）で運転している場合に負荷が抜けると、エンジン回転数がＨＩＧＨ回転数（最高設定回転数）以上に上昇し、エンジン保護制御であるオーバーレボ制御が動作することで、エンジン回転の急変動が発生するが、本発明の実施の形態１は、その状態ではアイソクロナス制御方式でスロットルアクチュエータ（電子スロットル）７ａを制御しているため、オーバーレボ制御が動作するほどのエンジン回転の急変動が発生することなく制御できる。
【００５５】
図９と図１０は、それぞれ、本発明の実施の形態１に係るエンジン制御装置においてドループ制御中に急激にエンジン負荷が増加した場合と急激にエンジン負荷が減少した場合を示している。図９に示すように、目標回転数ＮｏがＬＯＷ回転数に設定されている場合に、急激にエンジン負荷が増加した場合には、エンジン回転数ＲＥが減少する。ドループ制御方式ではそのままＬＯＷ回転数を下回るため、最悪の場合、エンジンストールが起こるが、本発明の実施の形態１では、図９に示すように、エンジン回転数ＲＥがＬＯＷ回転数を下回った時点でアイソクロナス制御方式に移行してＬＯＷ回転数を保持するように制御を行うため、エンジンストールは発生しない。また、図１０に示すように、目標回転数ＮｏがＨＩＧＨ回転数に設定されている場合に、急激にエンジン負荷が減少した場合には、エンジン回転数ＲＥが増加する。ドループ制御方式ではそのままＨＩＧＨ回転数を上回るため、エンジン保護制御であるオーバーレボ制御が動作するが、本発明の実施の形態１では、エンジン回転数ＲＥがＨＩＧＨ回転数を上回った時点でアイソクロナス制御方式に移行してＨＩＧＨ回転数を保持するように制御を行うため、オーバーレボ制御は動作しない。
【００５６】
なお、図９と図１０において、エンジン回転数がＬＯＷ回転数／ＨＩＧＨ回転数を下回る又は上回る時点でドループ制御方式からアイソクロナス制御方式に切り替えた場合、急峻な回転変化により切替制御が間に合わない可能性がある。そのため、図３のステップＳ１０４、ステップＳ１０５で、エンジン回転数ＲＥとその変化量ΔＲＥより導かれる値でＬＯＷ回転数／ＨＩＧＨ回転数を補正して、アイソクロナス制御方式への切り替わりを早くした上で、制御切り替わり後はその補正量を漸減することで制御切り替わり時に違和感を無くすことを実現しても良い。
【００５７】
以上のように、本発明の実施の形態１に係るエンジン制御装置は、エンジン１に供給する吸入空気量をスロットルアクチュエータ７ａ（電子スロットル）を用いて制御することにより、ドループ制御方式またはアイソクロナス制御方式にてエンジン１のエンジン回転数ＲＥを制御するエンジン制御装置であって、エンジン回転数ＲＥを検出するエンジンパラメータ算出部２２と、アクセルペダル２１の運転者によるアクセル操作量θａｐｓを検出するアクセルポジションセンサ２１ａ（アクセル操作量検出部）と、エンジン１のエンジン冷却水温Ｔｗに対する最低設定回転数であるＬＯＷ回転数および最高設定回転数であるＨＩＧＨ回転数を求め、エンジン回転数ＲＥおよびアクセル操作量θａｐｓに基づいて、エンジン１の目標回転数Ｎｏとして、ＬＯＷ回転数およびＨＩＧＨ回転数のいずれか一方を選択する目標回転数算出部２３と、ドループ制御方式でスロットルアクチュエータ７ａを操作するための第１のスロットル操作量θｔｐｓ１を、アクセル操作量θａｐｓに基づいて算出するドループ制御目標スロットル開度算出部２４と、エンジン回転数ＲＥと目標回転数Ｎｏとの偏差Ｎｅｒｒを求め、アイソクロナス制御方式でスロットルアクチュエータ７ａを操作するための第２のスロットル操作量θｔｐｓ２を、偏差Ｎｅｒｒに基づいて算出するアイソクロナス制御目標スロットル開度算出部２５と、アクセル操作量θａｐｓとエンジン回転数ＲＥとに基づいて、制御方式Ｍｄとして、ドループ制御方式およびアイソクロナス制御方式のいずれか一方を選択する制御方式判定部２６と、アクセル操作量θａｐｓと制御方式Ｍｄとに基づいて、目標スロットル開度θｏとして、第１のスロットル操作量θｔｐｓ１および第２のスロットル操作量θｔｐｓ２のいずれか一方を選択する目標スロットル開度算出部２７と、目標スロットル開度θｏに基づいて、スロットルアクチュエータ７ａを制御する電子スロットル制御部２８とを備え、アクセル操作量θａｐｓが０の場合は、目標スロットル開度算出部２７によって第２のスロットル操作量θｔｐｓ２が選択されて、電子スロットル制御部２８は、第２のスロットル操作量θｔｐｓ２を用いて、アイソクロナス制御方式でスロットルアクチュエータ７ａの制御を行い、一方、アクセル操作量θａｐｓが０でない場合は、エンジン回転数ＲＥがＬＯＷ回転数以下またはＨＩＧＨ回転数以上で、制御方式判定部２６が制御方式Ｍｄとしてアイソクロナス制御方式を選択している場合は、目標スロットル開度算出部２７によって、第１のスロットル操作量θｔｐｓ１および第２のスロットル操作量θｔｐｓ２のいずれか一方が選択され、電子スロットル制御部２８は、それに基づいて、アイソクロナス制御方式でスロットルアクチュエータ７ａの制御を行うとともに、それ以外の場合は、目標スロットル開度算出部２７によって第１のスロットル操作量θｔｐｓ１が選択されて、電子スロットル制御部２８は、第１のスロットル操作量θｔｐｓ１を用いて、ドループ制御方式でスロットルアクチュエータ７ａの制御を行う構成を有している。当該構成により、エンジン回転数ＲＥがＬＯＷ回転数以下となった場合、図９に示すように、ドループ制御方式からアイソクロナス制御方式（ＬＯＷ）に切り���えてエンジン１がストールを防止することができる。また、エンジン回転数ＲＥがＨＩＧＨ回転数以上となった場合、図１０に示すように、ドループ制御方式からアイソクロナス制御方式（ＨＩＧＨ）に切り替えてエンジン１の回転上昇を抑えることができ、エンジン回転数ＲＥがＨＩＧＨ回転数を超えないように制御することができる。また、アイソクロナス制御方式のゲイン設定はＬＯＷ回転数およびＨＩＧＨ回転数のみで、エンジン動作範囲全域のゲイン設定が不要となり適合工数を削減することが可能となる。また、負荷が急変する場合においてドループ制御を実現する場合においても、少ない適合工数でドループ制御を実現でき、また、エンジンに急激な負荷が加わった場合のエンジンストール防止やエンジンの負荷が急激に減少した場合にオーバーレボ制御による回転変動を防止することができる。
【００５８】
また、本発明の実施の形態１においては、アイソクロナス制御目標スロットル開度算出部２５は、図５に示すように、制御方式Ｍｄとしてアイソクロナス制御方式が選択されている場合には、目標回転数Ｎｏとエンジン回転数ＲＥとの偏差Ｎｅｒｒとエンジン回転数の変化量ΔＲＥとを基にフィードバック制御（ＰＩＤ制御）にて第２のスロットル操作量θｔｐｓ２を常時算出し、一方、制御方式Ｍｄとしてドループ制御方式が選択されている場合には、フィードバック制御（ＰＩＤ制御）における積分制御値（スロットル操作量積分項）を第１のスロットル操作量θｔｐｓ１に固定するようにした。これにより、ドループ制御方式で動作している領域からアイソクロナス制御領域に切り替わった場合に、ＰＩＤ制御の応答性を高めることができ、エンジン回転数ＲＥをＬＯＷ回転数またはＨＩＧＨ回転数に速やかに収束することが可能となる。
【００５９】
また、本実施の形態１においては、目標回転数算出部２３は、図３に示すように、エンジン回転数ＲＥに基づいてアクセル操作量閾値を求め、アクセル操作量θａｐｓがアクセル操作量閾値より大きい場合は、目標回転数ＮｏにＨＩＧＨ回転数を設定し、一方、アクセル操作量θａｐｓがアクセル操作量閾値以下の場合は、目標回転数ＮｏにＬＯＷ回転数を設定するようにした。また、アイソクロナス制御方式は、目標回転数ＮｏをＬＯＷ回転数に設定したアイソクロナス制御方式（ＬＯＷ）（第１のアイソクロナス制御方式）を含み、制御方式判定部２６は、図６に示すように、アクセル操作量が０でない場合で、かつ、エンジン回転数ＲＥがＬＯＷ回転数以下の場合は、制御方式Ｍｄとしてアイソクロナス制御方式（ＬＯＷ）を選択し、目標スロットル開度算出部２７は目標スロットル開度θｏとして第１のスロットル操作量θｔｐｓ１と第２のスロットル操作量θｔｐｓ２のうちの大きい方を選択するようにした。これにより、アクセル操作量が０でアイソクロナス制御方式でＬＯＷ回転数になるように制御している状態から、アクセル操作量が０でない値となりドループ制御領域となった場合に、第１のスロットル操作量θｔｐｓ１と第２のスロットル操作量θｔｐｓ２のうち大きい方を選択することで、制御切り替わり時のハンチングや回転落ちを防止することが可能となる。
【００６０】
さらに、本実施の形態１においては、アイソクロナス制御方式は、目標回転数ＮｏをＨＩＧＨ回転数に設定したアイソクロナス制御方式（ＨＩＧＨ）（第２のアイソクロナス制御方式）を含み、アクセル操作量θａｐｓが０でない場合で、かつ、目標回転数ＮｏがＨＩＧＨ回転数以上の場合は、制御方式判定部２６は制御方式Ｍｄとしてアイソクロナス制御方式（ＨＩＧＨ）を選択し、目標スロットル開度算出部２７は目標スロットル開度θｏとして第１のスロットル操作量θｔｐｓ１と第２のスロットル操作量θｔｐｓ２のうちの小さい方を選択するようにした。これにより、アクセル操作量θａｐｓよりＨＩＧＨ回転数になるようにアイソクロナス制御している状態からドループ制御方式となった場合に、スロットル操作量θｔｐｓ１とθｔｐｓ２のうちの小さい方を選択することで制御切り替わり時にハンチングや回転吹き上がりを防止することが可能となる。
【００６１】
なお、上記の実施の形態１の説明においては、エンジン１として汎用エンジンを例に挙げて説明したが、その場合に限らず、本発明はエンジン全般に適用できることは言うまでもない。
【符号の説明】
【００６２】
１  エンジン、２  クランク角センサ、３  カム角センサ、４  水温センサ、５  点火コイル、６  点火プラグ、７  スロットルバルブ、７ａ  スロットルアクチュエータ、８  スロットルセンサ、９  吸気通路、１０  吸気圧センサ、１１  吸気温センサ、１２  インジェクタ、１３  燃料タンク、１３ａ  燃料ポンプ、１４  排気通路、１５  Ｏ２センサ、１６  三元触媒、１７  ＥＣＵ、１８  バッテリ、１９  故障表示機、２０  ＥＧＲ通路、２０ａ  ＥＧＲバルブ、２１  アクセルペダル、２１ａ  アクセルポジションセンサ、２２  エンジンパラメータ算出部、２３  目標回転数算出部、２４  ドループ制御目標スロットル算出部、２５  アイソクロナス制御目標スロットル算出部、２６  制御方式判定部、２７  目標スロットル開度算出部、２８  電子スロットル制御部、Ｍｄ  制御方式、Ｎｅｒｒ  偏差、Ｎｏ  目標回転数、ＲＥ  エンジン回転数、Ｔｗ  エンジン冷却水温、θ１  クランク角度、θ２  カム角度、θａｐｓ  アクセル操作量、θｏ  目標スロットル開度、θｔ  スロットル角度、θｔｐｓ１  第１のスロットル操作量、θｔｐｓ２  第２のスロットル操作量、ΔＲＥ  エンジン回転数の変化量。
【要約】
【課題】エンジン負荷の変化に伴いドループ制御方式とアイソクロナス制御方式とを運転状態に応じて自動的に切り替える。
【解決手段】アクセル操作量が０の場合はアイソクロナス制御用の第２のスロットル操作量θｔｐｓ２を用いてアイソクロナス制御にてスロットルアクチュエータの制御を行い、一方、アクセル操作量が０でない場合はドループ制御用の第１のスロットル操作量θｔｐｓ１を用いてドループ制御にてスロットルアクチュエータの制御を行うものとし、このときに、エンジン回転数がＬＯＷ回転数以下のときは第１または第２のスロットル操作量θｔｐｓ，θｔｐｓ２の大きい方を用い、エンジン回転数がＨＩＧＨ回転数以上のときは第１または第２のスロットル操作量θｔｐｓ，θｔｐｓ２の小さい方を用いて、アイソクロナス制御にてスロットルアクチュエータの制御を行う。
【選択図】図７【図１】
0005646020.tif 000002
【図２】
0005646020.tif 000003
【図３】
0005646020.tif 000004
【図４】
0005646020.tif 000005
【図５】
0005646020.tif 000006
【図６】
0005646020.tif 000007
【図７】
0005646020.tif 000008
【図８】
0005646020.tif 000009
【図９】
0005646020.tif 000010
【図１０】
0005646020.tif 000011