(57)【要約】【課題】回転数制御系を不安定化させることなく、機械式ガバナと同等のドループ制御特性をＰＩＤ制御により実現するエンジンの電子ガバナを提供する。【解決手段】ＰＩＤ動作のうちＰ動作を用いてエンジン回転数をドループ制御する電子ガバナにおいて、ドループ制御の際の回転数フィードバック制御部の出力信号Ｙ(ｔ)を下記の制御則に基づいて演算するようにした。【数１】2008231939.tif 000009  但し、αは０＜α＜１の範囲の定数、Ｋｐは回転数フィードバック制御部のＰ動作の比例ゲイン、ｅ(ｔ)はサンプリング時点第ｔ期のエンジン回転数偏差、ｋは正の整数。【選択図】図１
2008231939.tif 000002
【特許請求の範囲】
【請求項１】
エンジンの目標回転数と実回転数との偏差を許容範囲内に収めるようにエンジン回転数をＰＩＤ制御する回転数フィードバック制御部を備え、上記回転数フィードバック制御部におけるＰＩＤ動作のうちＰ動作を用いてエンジン回転数をドループ制御するエンジンの電子ガバナにおいて、
ドループ制御の際の回転数フィードバック制御部の出力信号Ｙ(ｔ)を下記の制御則に基づいて演算するようにした、ことを特徴とするエンジンの電子ガバナ。
【数１】
2008231939.tif 000008
但し、αは０＜α＜１の範囲の定数、Ｋｐは回転数フィードバック制御部のＰ動作の比例ゲイン、ｅ(ｔ)はサンプリング時点第ｔ期のエンジン回転数偏差、ｋは正の整数。
【請求項２】
請求項１に記載したエンジンの電子ガバナにおいて、
αを、０＜α＜１の範囲の定数とすることに代えて、α＝ｆ(｜ΔＮ(ｔ)/Δｔ｜)、かつ、０＜α＜１で与えられる変数とした、ことを特徴とするエンジンの電子ガバナ。
但し、ΔＮ(ｔ)/Δｔはサンプリング時点第ｔ期のエンジンの実回転数の時間変化率、｜・｜は絶対値、ｆ(・)は増加関数。
【請求項３】
請求項１に記載したエンジンの電子ガバナにおいて、
αを、０＜α＜１の範囲の定数とすることに代えて、α＝ｇ(｜ｅ(ｔ)｜)、かつ、０＜α＜１で与えられる変数とした、ことを特徴とするエンジンの電子ガバナ。
但し、ｅ(ｔ)はサンプリング時点第ｔ期のエンジン回転数偏差、｜・｜は絶対値、ｇ(・)は増加関数。
【請求項４】
請求項１〜３のいずれかに記載したエンジンの電子ガバナにおいて、
上記回転数フィードバック制御部の出力信号Ｙ(ｔ)を、エンジンへの燃料供給量を調節するアクチュエータへの指令電流値とするとともに、上記回転数フィードバック制御部の後段に、アクチュエータへの指令電流値を実電流値と比較して両者の偏差を許容範囲内に収めるように補正する電流フィードバック補正部を備えた、ことを特徴とするエンジンの電子ガバナ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジンの電子ガバナに関し、詳しくは、ＰＩＤ制御に基づいてエンジン回転数のドループ制御を行うエンジンの電子ガバナに関する。
【背景技術】
【０００２】
従来の電子ガバナとして、例えば特許文献１に記載されたものがある。この特許文献１に記載の電子ガバナ１０１は、図１２のブロック図に示すとおり、ＥＣＵ（電子制御ユニット）１０５内におけるソフトウェアによって所要の機能が実現されるようになっており、主として、前段の回転数フィードバック制御部１０６と、後段の電流フィードバック補正部１０７とを備えている。
【０００３】
回転数フィードバック制御部１０６は、調速レバーやアクセルレバー、アクセルベダル等の目標回転数設定手段１０３によって設定されたエンジンの目標回転数と、回転数センサ（実回転数検出手段）１０４によって検出されたエンジンの実回転数との偏差を許容範囲内に収めるように、ＰＩＤ制御に基づき出力信号を演算する。具体的には、回転数偏差に比例した出力信号を演算する比例演算部１２１と、回転数偏差の積分値を演算する積分演算部１２２と、回転数偏差の微分値を演算する微分演算部１２３とを備え、これらＰ動作、Ｉ動作及びＤ動作の総和を回転数フィードバック制御部１０６の出力信号として算出するようになっている。この電子ガバナ１０１では、回転数フィードバック制御部１０６の出力信号は、リニアソレノイド等の電磁アクチュエータ１０２への指令電流値（通電電流値ないし励磁電流値）として出力される。
【０００４】
この電磁アクチュエータ１０２への指令電流値は、後段の電流フィードバック補正部１０７において実電流値と比較され、両者の偏差を許容範囲内に収めるように補正される。具体的には、上記回転数フィードバック制御部１０６において算出された指令電流値と、電流検出部１０８により検出された電磁アクチュエータ１０２の実際の通電電流値（実電流値）との偏差を演算し、両者の偏差（電流値偏差）にＰＩＤ演算を施すことにより、電磁アクチュエータ１０２に対する最終的な操作信号（通電電流値）を出力するようになっている。電磁アクチュエータ１０２は、このようにして算出された操作信号に基づいて駆動され、例えばこのエンジンがディーゼルエンジンの場合であれば、電磁アクチュエータ１０２により燃料噴射ポンプのコントロールラックを駆動することにより燃料噴射量を調節して、エンジン回転数を所要の回転数に制御するようになっている。
【０００５】
ところで、このような従来の電子ガバナ１０１の制御方式（又はガバナ特性）には、アイソクロナス制御方式（又はアイソクロナス制御特性）とドループ制御方式（又はドループ制御特性）という２つの制御方式（又はガバナ特性）がある。アイソクロナス制御方式（又はアイソクロナス制御特性）とは、エンジンの負荷が変動してもエンジン回転数を常に一定に維持する制御方式（又はガバナ特性）をいい、ドループ制御方式（又はドループ制御特性）とは、エンジンの負荷の増加に伴いエンジン回転数を減少させる制御方式（又はガバナ特性）をいう。
【０００６】
アイソクロナス制御方式とドループ制御方式とは、その時々のエンジンへの要求に応じて適宜切り換えられるようになっている。このうち、ドループ制御方式は、機械式ガバナの制御特性を電子ガバナによって実現しようとするものであり、コンバイン等の農業作業車に用いられるエンジンや土木作業車用のエンジンにおいては、エンジン負荷の増加に伴ってエンジン回転数を減少させることにより、加減速操作の際のオペレータ（運転者）の違和感をなくし、オペレータ（運転者）の運転感覚に適合したエンジン運転性能を実現しようとするものである。
【０００７】
ＰＩＤ制御によりアイソクロナス制御を行う場合、上記回転数フィードバック制御部１０６におけるＰＩＤ動作のうち、Ｐ動作、Ｉ動作及びＤ動作をすべて実行する文字通りのＰＩＤ制御（３項動作ＰＩＤ制御）により、又は、Ｐ動作及びＩ動作のみを実行するＰＩ制御により、オフセット（定常偏差）をなくすようにエンジン回転数を制御する。これに対し、ＰＩＤ制御によりドループ制御を行う場合は、Ｉ動作及びＤ動作を無効にして（例えば積分ゲイン及び微分ゲインをゼロにして）、Ｐ動作のみに基づいてエンジン回転数を制御する。後者の場合、制御周期毎に算出される操作量である電磁アクチュエータ１０２への指令電流値Ｙ(ｔ)は次式に基づいて算出される。
Ｙ(ｔ)＝Ｋｐ・ｅ(ｔ)
ここで、Ｙ(ｔ)は今期（サンプリング時点第ｔ期）の指令電流値、Ｋｐは回転数フィードバック制御部１０６におけるＰ動作の比例ゲイン、ｅ(ｔ)は今期（ｔ期）のエンジン回転数偏差。
なお、電磁アクチュエータ１０２への指令電流値Ｙ(ｔ)は目標ラック位置の代用変数でもあり、一般に、無負荷ラック位置を基準点（ゼロ点）としてそこからの変動分を表している。
【０００８】
ドループ制御の特徴は、ドループ率（整定速度変動率ともいう）又はガバナ差によって表すことができるが、その特徴を視覚的に表す場合には、図１３に示された制御ラインの傾き具合として表すことができる。ここで、ドループ率は［（無負荷時エンジン回転数）−（全負荷時エンジン回転数）］／（全負荷時エンジン回転数）として定義され、ガバナ差は（無負荷時エンジン回転数）−（全負荷時エンジン回転数）として定義される。Ｐ動作によりドループ制御を行う場合、図１３の制御ラインの傾き（の大きさ）は、回転数フィードバック制御部におけるＰ動作の比例ゲインＫｐで与えられる。
【０００９】
従来の電子ガバナ１０１は、このようにして得られた操作量（電磁アクチュエータ１０２への指令電流値ないし目標ラック位置）に基づいて燃料供給量を調節して、機械式ガバナと同等のガバナ特性（ドループ制御特性）を電子制御により実現しようとしていた。
【００１０】
【特許文献１】特開２００４−２９３３６４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、従来の電子ガバナ１０１によるドループ制御には以下の問題点がある。
機械式ガバナでは、ガバナスプリングのばね力とフライウェイトに作用する遠心力との不釣合い力によりコントロールラックを調量移動させ燃料供給量を調節するが、電子ガバナ１０１で使用される電磁アクチュエータ１０２の駆動力や電磁アクチュエータ１０２内のリターンスプリングのばね力は、機械式ガバナにおけるガバナスプリングのばね力やフライウェイトの遠心力に比べると格段に弱いため、コントロールラックの追従性が悪く、制御精度にばらつきが生じていた。この結果、機械式ガバナ並のドループ率ないしガバナ差（機械式ガバナと同等のドループ制御特性）を実現しようとすると、エンジン回転数にハンチング（持続振動）が生じるという問題があった。
【００１２】
特に、特許文献１に記載の従来技術では、コントロールラックの位置を検出するラック位置センサが設けられていないため、コスト面では有利なものの、ラック位置情報を電磁アクチュエータ１０２の通電電流値で代用している結果、コントロールラックの制御精度の悪化ないしばらつきは直ちにラック位置情報の不正確さとして制御系に反映され、それを是正する手段を欠いているため、回転数制御系を徒に不安定化させる要因となる。
【００１３】
本発明は、上記課題を解決することを目的とし、コントロールラックの制御精度のばらつきに起因するエンジン回転数の不安定化を解消し、機械式ガバナと同等のドループ制御特性を実現する電子ガバナを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するために、請求項１に係る発明は以下のように構成したことを特徴とする。
すなわち、エンジンの目標回転数と実回転数との偏差を許容範囲内に収めるようにエンジン回転数をＰＩＤ制御する回転数フィードバック制御部を備え、上記回転数フィードバック制御部におけるＰＩＤ動作のうちＰ動作を用いてエンジン回転数をドループ制御するエンジンの電子ガバナにおいて、ドループ制御の際の回転数フィードバック制御部の出力信号Ｙ(ｔ)を下記の制御則に基づいて演算するようにした、ことを特徴とする。
【数１】
2008231939.tif 000003
但し、αは０＜α＜１の範囲の定数、Ｋｐは回転数フィードバック制御部のＰ動作の比例ゲイン、ｅ(ｔ)はサンプリング時点第ｔ期のエンジン回転数偏差、ｋは正の整数。
【００１５】
請求項２に係る発明は、請求項１に記載したエンジンの電子ガバナにおいて、αを、０＜α＜１の範囲の定数とすることに代えて、α＝ｆ(｜ΔＮ(ｔ)/Δｔ｜)、かつ、０＜α＜１で与えられる変数とした、ことを特徴とする。
但し、ΔＮ(ｔ)/Δｔはサンプリング時点第ｔ期のエンジンの実回転数の時間変化率、｜・｜は絶対値、ｆ(・)は増加関数。
【００１６】
請求項３に係る発明は、請求項１に記載したエンジンの電子ガバナにおいて、αを、０＜α＜１の範囲の定数とすることに代えて、α＝ｇ(｜ｅ(ｔ)｜)、かつ、０＜α＜１で与えられる変数とした、ことを特徴とする。
但し、ｅ(ｔ)はサンプリング時点第ｔ期のエンジン回転数偏差、｜・｜は絶対値、ｇ(・)は増加関数。
【００１７】
請求項４に係る発明は、請求項１〜３のいずれかに記載したエンジンの電子ガバナにおいて、上記回転数フィードバック制御部の出力信号Ｙ(ｔ)を、エンジンへの燃料供給量を調節するアクチュエータへの指令電流値とするとともに、上記回転数フィードバック制御部の後段に、アクチュエータへの指令電流値を実電流値と比較して両者の偏差を許容範囲内に収めるように補正する電流フィードバック補正部を備えた、ことを特徴とする。
【発明の効果】
【００１８】
（請求項１に係る発明）
請求項１に係る発明では、今期（ｔ期）の操作量である回転数フィードバック制御部の出力信号Ｙ(ｔ)のうち、今期（ｔ期）の回転数偏差ｅ(ｔ)に基づいて算出した操作量の割合をα（０＜α＜１）にとどめ、残りの割合（１−α）は過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値に基づいて算出したので、操作量のばらつきを抑え、平滑化することができる。これにより、コントロールラックの制御精度の悪化ないしばらつきに起因するエンジン回転数の不安定化を解消することができる一方、静的ないし定常状態においては、ｅ(ｔ)＝ｅ(ｔ−１)＝ｅ(ｔ−２)＝…＝ｅ(ｔ−ｋ)とすると、
Ｙ(ｔ)＝Ｋｐ・ｅ(ｔ)
となり、Ｐ動作のみに基づいてドループ制御した場合の操作量ないし出力信号と同一となるので、所期のドループ制御特性を達成することができる。
【００１９】
また次のようにもいうことができる。すなわち、動的ないし過渡状態においては、「数１」に示す演算式のうち、第１項が瞬時に反応するから、図２の破線に示すように、ドループ制御のゲインないし制御ラインの傾き（の大きさ）を小さくした（つまりα倍にした）のと同等の効果を得ることができ、ハンチングを防止することができる一方、静的ないし定常状態においては、図２の実線に示すとおり、ドループ制御のゲインないし制御ラインの傾きは、本来の制御ゲインＫｐと変わりがないため、所期のドループ制御特性を達成することができる。
【００２０】
（請求項２に係る発明）
請求項１に係る発明では、制御系の安定性を優先して、動的にはゲインを小さくしたのと同等の効果を持つため、瞬時応答性は若干低下することになる。これに対し、請求項２に係る発明では、αを、エンジンの実回転数の時間変化率の大きさに応じて０＜α＜１の範囲で値が変わる変数とし、エンジンの実回転数の時間変化率の大きさが大きいほど大きな値を取るようにしたので、負荷変動直後のようにエンジンの実回転数が大きく変動し実回転数の時間変化率（の大きさ）が大きい場合に、今期の回転数偏差に基づいて算出した操作量の割合を大きくして、応答性を向上させることができる。
【００２１】
（請求項３に係る発明）
請求項３に係る発明は、αを、エンジンの回転数偏差の大きさに応じて０＜α＜１の範囲で値が変わる変数とし、エンジンの回転数偏差の大きさが大きいほど大きな値を取るようにしたので、負荷変動直後のようにエンジンの実回転数が大きく変動し回転数偏差（の大きさ）が大きい場合に、今期の回転数偏差に基づいて算出した操作量の割合を大きくして、応答性を向上させることができる。
【００２２】
（請求項４に係る発明）
回転数フィードバック制御部の出力信号Ｙ(ｔ)を、エンジンへの燃料供給量を調節するアクチュエータへの指令電流値とするとともに、上記回転数フィードバック制御部の後段に、アクチュエータへの指令電流値を実電流値と比較して両者の偏差を許容範囲内に収めるように補正する電流フィードバック補正部を設けた場合、ラック位置情報を直接検出するラック位置センサを設ける必要がないため、コストを削減できるものの、ラック位置情報をアクチュエータの通電電流値で代用している結果、コントロールラックの制御精度の悪化ないしばらつきは直ちにラック位置情報の不正確さをもたらし、回転数制御系を徒に不安定化させる要因となる。しかし、本発明の場合、動的にはゲインを小さくしたのと同等の効果を奏するとともに、操作量のばらつきを移動平均処理によりなましているので、制御系を安定化させることができる。これにより、ラック位置センサの省略によるコスト削減及び構成の簡素化のみならず、ラック位置センサを備えていない制御系の信頼性を向上させることができる。
【発明を実施するための最良の形態】
【００２３】
（実施形態１）
以下、本発明の実施形態を図面に基づいて説明する。図１は、本発明の実施形態１に係るディーゼルエンジンの電子ガバナ（回転数制御システム）のブロック図である。
【００２４】
このディーゼルエンジンの電子ガバナ１は、ディーゼルエンジンの燃料噴射ポンプ（不図示）に設けられた燃料供給量調節手段であるコントロールラック（不図示）をリニアソレノイド２（アクチュエータ２）によって駆動して、エンジン回転数を目標回転数に一致させるもので、要求された目標回転数信号Ｎｒｅｆを出力する目標回転数設定手段３と、電磁ピックアップ等の回転数センサである実回転数検出手段４と、コントロールラックを駆動するリニアソレノイド２と、ＥＣＵ５とを備えている。目標回転数設定手段３の典型例としては、調速レバーやアクセルレバー、アクセルペダル等の位置に応じて電圧信号を出力するポテンショメータを挙げることができるが、ＥＣＵ５が他の制御ユニットとの間でＣＡＮ通信を行う場合には、他の制御ユニットからの通信信号が入力される入力装置であってもよい。
【００２５】
ＥＣＵ５は、回転数フィードバック制御部６と、電流フィードバック補正部７と、電流検出部８とを備える。本実施形態では、回転数フィードバックループをメジャーループないしマスターループとし、その内側に電流フィードバックループをマイナーループないしスレーブループとして備えたカスケード制御系を構成している。このうち、電流検出部８は、リニアソレノイド２の通電電流値（励磁電流値）を検出するもので、検出された実電流値を電流フィードバック補正部７へ出力する。
【００２６】
回転数フィードバック制御部６は、回転数偏差演算部１１と、ＰＩＤ演算部１２とを備える。回転数偏差演算部１１は、実回転数検出手段４によって検出されたエンジンの実回転数Ｎと、目標回転数設定手段３によって設定されたエンジンの目標回転数Ｎｒｅｆとに基づいて、両者の偏差ｅ＝Ｎｒｅｆ−Ｎを算出する。なお、以下では、特にサンプリング時点を明示する場合には、今期（ｔ期）の値をｅ（ｔ）のように表記する。
【００２７】
ＰＩＤ演算部１２は、この回転数偏差演算部１１が算出した回転数偏差を許容範囲内に収めるようにソレノイド２への指令電流値を出力するもので、ＰＩＤ動作に基づいて指令電流値を演算するようになっている。具体的には、Ｐ動作（比例動作）を行う比例演算部２１と、Ｉ動作（積分動作）を行う積分演算部２２と、Ｄ動作（微分動作）を行う微分演算部２３とを備える。なお、積分演算部２２の後段に積分値リミッタを設けても良く、また、算出された各信号の後に、位相の進みや遅れを補償する補償器や、一定の係数を乗算する係数乗算器を設けてもよい。さらに、本実施形態におけるＰＩＤ演算部１２は回転数偏差に対してＰＩＤ動作を行うように構成されているが、ＰＩＤ動作はこのような構成のみに限定されるものではなく、例えば、Ｄ動作を回転数偏差ではなく実回転数信号に対して行う微分先行型ＰＩＤ制御であってもよい。
【００２８】
ＰＩＤ演算部１２における比例演算部２１、積分演算部２２及び微分演算部２３のそれぞれには、比例ゲイン、積分ゲイン及び微分ゲインが与えられている。これらの各ゲインは、エンジンの運転状態に関係なく一定であってもよいが、エンジンの運転状態、例えばエンジン冷却水温度、潤滑油温度、吸気温度、吸気圧等に応じて値を変化させるようにしてもよい。本明細書では、回転数フィードバック制御部６におけるＰＩＤ演算部１２の比例ゲインをＫｐ，積分ゲインをＫｉ，微分ゲインをＫｄと表記する。ＰＩＤ演算部１２は、比例演算部２１、積分演算部２２及び微分演算部２３の各出力の総和を同演算部の出力信号として出力する。本実施形態では、ＰＩＤ演算部１２の出力信号はリニアソレノイド２への指令電流値を示す信号であり、この指令電流値は、図示しないコントロールラックの目標ラック位置の代用変数として使用される。
【００２９】
本実施形態では、アイソクロナス制御方式（アイソクロナス制御特性）とドループ制御方式（ドループ制御特性）という２つの制御方式（ガバナ特性）が切換可能に構成されている。両者の切り換えは、手動（たとえば切換スイッチのオンオフ）で切り換えられるようにしてもよいし、所定のエンジン運転状態を検出することにより自動的に切り換えられるようにしてもよい。アイソクロナス制御方式が選択された場合には、回転数フィードバック制御部６のＰＩＤ演算部１２では、Ｐ動作、Ｉ動作及びＤ動作がすべて実行されるようになっており、これによりオフセット（定常偏差）をなくして、エンジンの負荷の増減に関わらず常にエンジン回転数を一定に保つように燃料噴射量を調節する。他方、ドループ制御方式が選択された場合には、積分演算部２２における積分ゲインＫｉ及び微分演算部２３における微分ゲインＫｄはともにゼロにセットされるようになっている（つまりＫｉ＝０，Ｋｄ＝０）。これにより、比例演算部２１の出力Ｋｐ・ｅ(ｔ)がそのままＰＩＤ演算部１２の出力信号として出力される。
【００３０】
このような制御方式の切換は、ＥＣＵ５がガバナ特性切換信号を受信することにより行われる。図１では、ガバナ特性切換部３１がガバナ特性切換信号に基づいて第１の信号ルート３２と第２の信号ルート３３との間を切り換えるように表されている。すなわち、制御方式としてドループ制御方式が選択された場合には、ガバナ特性切換部３１は第１の信号ルート３２を選択し、アイソクロナス制御方式が選択された場合には、ガバナ特性切換部３１は第２の信号ルート３３を選択するようになっている。アイソクロナス制御方式が選択された場合、ＰＩＤ演算部１２の出力信号（この場合Ｐ動作、Ｉ動作及びＤ動作がすべて実行される３項動作の総和）は、回転数フィードバック制御部６の出力信号Ｙ(ｔ)（つまり操作量であるリニアソレノイド２への指令電流値ないしコントロールラックの目標ラック位置信号）として電流フィードバック補正部７へ出力される。
【００３１】
他方、ドループ制御方式が選択された場合、ＰＩＤ演算部１２の出力信号（この場合Ｐ動作の出力信号）は、第１の信号ルート３２上の各ブロックを通って電流フィードバック補正部７へ入力される。第１の信号ルート３２は、さらに係数乗算器４１を通るルートと係数乗算器５１を通るルートに分岐する。係数乗算器４１では信号に係数αが乗算され、係数乗算器５１では信号に係数１−αが乗算される。実施形態１ではα＝１−α＝1/2とされている。係数乗算器５１を通るルートでは、係数乗算器５１の前段に移動平均演算部５２が設けられており、過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値を算出する。ここで、ｋは正の整数であるが、一般に２以上の正の整数であることが好ましく、例えばｋ＝４０、つまり、過去４０回分の移動平均値を算出するようになっている。この場合、例えばサンプリング周期を５ｍｓｅｃとすると、２００ｍｓｅｃの期間の移動平均値が算出されることになる。以上のように、ドループ制御方式が選択された場合には、ＰＩＤ演算部１２の出力信号（Ｐ動作の出力信号）は、一方では、係数乗算器４１においてα＝1/2が乗算され、（1/2）Ｋｐ・ｅ(ｔ)が算出される。他方、移動平均演算部５２において過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値が算出され、この移動平均値に対して係数乗算器５１において１−α＝1/2が乗算される。このようにして、上記両方の算出値の総和Ｙ(ｔ)が回転数フィードバック制御部６の出力信号として、後段の電流フィードバック補正部７に入力される。この場合の回転数フィードバック制御部６の出力信号Ｙ(ｔ)もリニアソレノイド２への指令電流値を示し、この指令電流値は、図示しないコントロールラックの目標ラック位置の代用変数として使用される。
【００３２】
電流フィードバック補正部７は、回転数フィードバック制御部６の後段に直結され、回転数フィードバック制御部６により算出されたリニアソレノイド２への指令電流値Ｙ(ｔ)を実電流値に基づいて補正するものである。具体的には、上記指令電流値Ｙ(ｔ)と実電流値の偏差を演算し、この電流値偏差を許容範囲内に収めるようにＰＩＤ制御する。これにより、ラック位置センサを設けなくても精度の高いラック位置制御を行うことができるという利点がある。電流フィードバック補正部７は、上記のように補正された指令電流値信号（目標ラック位置信号）をＰＷＭ信号として出力し、図示しないドライバ回路を介してリニアソレノイド２をデューティ駆動する。なお、リニアソレノイド２のヒステリシスやコントロールラックの摺動部の摩擦抵抗を低減するために、上記補正後の操作量（指令電流値信号）に対しディザ信号を重畳させてもよい。
【００３３】
このように構成された実施形態１の動作について説明する。
キースイッチのオンによりエンジンをスタートさせた後、ＥＣＵ５は、アイソクロナス制御方式又はドループ制御方式のいずれの制御方式が選択されているかを読み込む。ここでは、ドループ制御方式が選択されているものと仮定して説明する。
【００３４】
図３は、実施形態１の電子ガバナによるドループ制御のフローチャートである。ＥＣＵ５は、ステップＳ１において、目標回転数設定手段３により設定された目標回転数Ｎｒｅｆを読み込み、ステップＳ２において、実回転数検出手段４により検出された実回転数Ｎを読み込み、ステップＳ３において、回転数偏差ｅ＝Ｎｒｅｆ−Ｎを演算する。ＥＣＵ５は、このようにして算出された今期の回転数偏差ｅ(ｔ)に基づいて操作量である指令電流値（目標ラック位置）Ｙ（ｔ）を演算する（ステップＳ４）。
【００３５】
このステップＳ４における指令電流値演算処理（目標ラック位置演算処理）は図４に示すフローチャートに従って実行される。すなわち、ステップＳ１１において、ＥＣＵ５は、今期（ｔ期）の回転数偏差ｅ(ｔ)に基づく操作量Ｋｐ・ｅ(ｔ)を演算する。また、ステップＳ１２において、過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値を演算する。前述のとおり、ｋの具体的な値としては、例えばｋ＝４０、つまり、過去４０回分の移動平均値を算出する。そして、ステップＳ１３において、下記の式に基づいて操作量である指令電流値Ｙ（ｔ）を算出する。
【００３６】
【数２】
2008231939.tif 000004
【００３７】
上記の式の技術的意義は次のとおりである。すなわち、今期の操作量Ｙ(ｔ)のうち、今期の回転数偏差ｅ(ｔ)に基づいて算出された操作量の割合を1/2にとどめ、残りの1/2は過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値に基づいて算出したものである。これにより、操作量のばらつきを抑え、平滑化することができるので、コントロールラックの制御精度の悪化ないしばらつきに起因するエンジン回転数の不安定化を解消することができる一方、静的ないし定常状態においては、ｅ(ｔ)＝ｅ(ｔ−１)＝ｅ(ｔ−２)＝…＝ｅ(ｔ−ｋ)とすると、
Ｙ(ｔ)＝Ｋｐ・ｅ(ｔ)
となり、Ｐ動作のみに基づいてドループ制御した場合の操作量ないし出力信号と同一となるので、所期のドループ制御特性を達成することができる。
【００３８】
また、次のようにもいうことができる。すなわち、本実施形態におけるドループ制御のガバナ特性は、動的ないし過渡状態では、図２の破線に示すように、ドループ制御のゲインないし制御ラインの傾き（の大きさ）が1/2になったのと同等の効果が得られる一方、静的ないし定常状態では、図２の実線に示すとおり、ドループ制御のゲインないし制御ラインの傾き（の大きさ）は、Ｐ動作本来の制御ゲインである比例ゲインＫｐと等しい値を維持するので、過渡状態においてはゲイン低下の効果により制御系を安定化させつつ、定常状態においては所期のドループ制御特性を達成することができる。
【００３９】
ステップＳ１４において、次回のサンプリング時点における移動平均演算に備えて、図示しないメモリ上に用意したバッファ（配列）に格納された前回分までの操作量データを順次シフトし、今期の操作量Ｋｐ・ｅ(ｔ)を格納しておく。
【００４０】
ステップＳ１３において算出されたＹ(ｔ)は、電流値フィードバック補正部７に入力される。ＥＣＵ５は、ステップＳ５（図３参照）において、電流検出部８により検出したリニアソレノイド２の実電流値を読み込み、ステップＳ６において、Ｙ(ｔ)と実電流値との偏差（電流値偏差）が算出され、ステップＳ７において、上記電流値偏差を許容範囲内に収めるように指令電流値Ｙ(ｔ)を補正する。かかる補正処理の詳細は前述したとおりである（電流フィードバック補正部７の説明参照）。このようにして補正された指令電流値に基づいてリニアソレノイド２を駆動して燃料噴射量を調節し、エンジン回転数を制御する（ステップＳ８）。
【００４１】
以上のとおり、本実施形態では、今期の操作量Ｙ(ｔ)のうち、今期の回転数偏差ｅ(ｔ)に基づいて算出された操作量の割合を1/2にとどめ、残りの1/2は過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値に基づいて算出したので、操作量のばらつきを抑え、平滑化することができる。これにより、コントロールラックの制御精度の悪化に起因するエンジン回転数の不安定化を解消することができる一方、静的ないし定常状態においては、Ｐ動作のみに基づいてドループ制御した場合の操作量ないし出力信号と同等になるので、所期のドループ制御特性を達成することができる。また、これをゲインに着目していうと、本実施形態では、動的ないし過渡状態では、図２の破線に示すように、ドループ制御のゲインないし制御ラインの傾き（の大きさないし絶対値）が1/2になったのと同等の効果を得ることができるので、このゲイン低下の効果によりハンチングを防止できる一方、静的ないし定常状態では、図２の実線に示すとおり、ドループ制御のゲインないし制御ラインの傾きは、Ｐ動作本来の制御ゲインである比例ゲインＫｐと変わりがないため、所期のドループ制御特性を得ることができる。
【００４２】
なお、上記実施形態では、今期の操作量Ｙ(ｔ)のうち、今期の回転数偏差ｅ(ｔ)に基づいて算出された操作量の割合と、過去ｋ回分の操作量の移動平均値に基づいて算出した割合をともに1/2ずつにして、この両者の重み付けに基づいて算出したが、両者の割合ないし重み付けは必ずしも1/2ずつである必要はなく、αを０＜α＜１の任意の定数として、α：（１−α）の割合に按分してもよい。この場合、今期の操作量Ｙ(ｔ)は以下のようになる。
【００４３】
【数３】
2008231939.tif 000005
【００４４】
ここで、αは、０＜α＜１の範囲にあれば任意の定数でよいが、０．５≦α＜１であることが好ましく、更に０．５≦α≦０．９であることが好ましい。
【００４５】
また、上記実施形態では、操作量Ｋｐ・ｅ(ｔ)の移動平均を算出するようにしたが、回転数偏差ｅ(ｔ)の移動平均を演算するようにしてもよい。この場合のブロック図を描くと、図５に示すとおりとなる。図５のようにブロック図を構成した場合、移動平均演算部５２では、過去ｋ回分の回転数偏差｛ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値が演算されることになるので、バッファに記憶されるデータも、操作量Ｋｐ・ｅ(ｔ)ではなく、回転数偏差ｅ(ｔ)となる。もちろん、指令電流値Ｙ(ｔ)を算出する演算式自体は図１のブロック図の場合と同様である。なお、以下の実施形態についても等価なブロック図は種々存在し得るが、それらはコンピュータ内の計算手順が相違するだけであり、演算結果ないし制御思想自体は上記数式で表すことができるので、説明の都合上それらへの言及は省略するものの、本発明の権利範囲に含まれるものである。
【００４６】
（実施形態２）
実施形態２は、実施形態１において定数としていたαを、エンジンの実回転数の時間変化率の大きさに応じて０＜α＜１の範囲で値が変わる変数とし、エンジンの実回転数の時間変化率の大きさが大きいほど大きな値を取るようにしたものである。
具体的には以下のとおりである。
α＝ｆ(｜ΔＮ(ｔ)/Δｔ｜)
但し、ΔＮ(ｔ)/Δｔはサンプリング時点第ｔ期のエンジンの実回転数の時間変化率、｜・｜は絶対値、ｆ(・)は増加関数である。α＝ｆ(｜ΔＮ(ｔ)/Δｔ｜)は、例えば、図７（Ａ）又は（Ｂ）に示すマップで与えられる。なお、図７（Ｂ）に示すように、ｆ(・)は不感帯を有していてもよく、単調増加関数に限らず、定義域の一部においてαが一定となる場合も含まれる。図７（Ａ）又は（Ｂ）では、エンジン実回転数の時間変化率の大きさ｜ΔＮ(ｔ)/Δｔ｜が所定値以上の場合、αの値が飽和するようになっている。また、図７（Ａ）又は（Ｂ）では、αの値域を０．５≦α≦０．９としているが、これに限らず、０＜α＜１の範囲の値を取るようにしてもよい。
【００４７】
実施形態２のブロック図は図６に示すとおりであり、実施形態１と同一の要素には同一の符号を付して、重複する説明は省略する。この実施形態２は、エンジンの実回転数の時間変化率ΔＮ(ｔ)/Δｔを演算する回転数変化率演算部６１を備え、この回転数変化率演算部６１で演算されたエンジンの実回転数の時間変化率ΔＮ(ｔ)/Δｔをα設定部６２に入力するようになっている。α設定部６２は、エンジンの実回転数の時間変化率の大きさ｜ΔＮ(ｔ)/Δｔ｜に基づいて、図７（Ａ）又は（Ｂ）のマップからαの値を決定し、係数乗算器４１及び５１にαの値を出力する。
【００４８】
実施形態２によるドループ制御のフローチャートは、「指令電流値演算処理」（図３のステップＳ４）のみが実施形態１と相違する。図８に、実施形態２の指令電流値演算処理を示す。まず、ステップＳ２１において、ＥＣＵ５は、今期の回転数偏差ｅ(ｔ)に基づく操作量Ｋｐ・ｅ(ｔ)を演算する。また、ステップＳ２２において、過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値を演算する。ステップＳ２３において、エンジンの実回転数の時間変化率の大きさ｜ΔＮ(ｔ)/Δｔ｜に基づいて、αの値を決定する。そして、ステップＳ２４において、下記の式に基づいて操作量である指令電流値Ｙ（ｔ）を算出する。
【００４９】
【数４】
2008231939.tif 000006
【００５０】
ステップＳ２５において、次回のサンプリング時点における移動平均演算に備えて、図示しないメモリ上に用意したバッファ（配列）に格納された前回分までの操作量データを順次シフトし、今期の操作量Ｋｐ・ｅ(ｔ)を格納しておく。この点は、実施形態１と同様である。
【００５１】
このように、実施形態２では、αを、０＜α＜１の範囲の定数とすることに代えて、エンジンの実回転数の時間変化率の大きさに応じて０＜α＜１の範囲の値を取る変数とし、かつ、エンジンの実回転数の時間変化率の大きさが大きいほど大きな値を取るようにしたので、負荷変動直後のようにエンジンの実回転数が大きく変動し実回転数の時間変化率（の大きさ）が大きい場合に、今期の回転数偏差に基づいて算出した操作量の割合を大きくして、応答性を向上させることができる。
【００５２】
図９に、上記実施形態２の変形例のブロック図を示す。この変形例では、上記実施形態２において、ＰＩＤ演算部１２とは別個に回転数変化率演算部６１を設けることに代えて、ＰＩＤ演算部１２を微分先行型ＰＩＤ制御方式とし、この微分先行型ＰＩＤ演算部１２の微分演算部２３を回転数変化率演算部６１と兼用したものである。微分先行型ＰＩＤ制御方式における微分演算部２３は、実回転数の微分値すなわち実回転数の時間変化率を演算するので、ここで演算された実回転数の時間変化率をα設定部６２に入力するように構成することにより、ＰＩＤ演算部１２とは別個に回転数変化率演算部６１を設ける必要がなく、構成を簡素化することができる。この変形例におけるドループ制御のフローチャート及び指令電流値演算処理のフローチャートは、前記実施形態２のものと同様である。また、図９において、実施形態１又は２と同一の要素には同一の符号が付してある。
【００５３】
（実施形態３）
実施形態３は、実施形態１において定数としていたαを、エンジンの回転数偏差の大きさに応じて０＜α＜１の範囲で値が変わる変数とし、エンジンの回転数偏差の大きさが大きいほど大きな値を取るようにしたものである。
具体的には以下のとおりである。
α＝ｇ(｜ｅ(ｔ)｜)
但し、｜・｜は絶対値、ｇ(・)は増加関数である。α＝ｇ(｜ｅ(ｔ)｜)は、例えば、図１１（Ａ）又は（Ｂ）に示すマップで与えられる。なお、図１１（Ｂ）に示すように、ｇ(・)は、不感帯を有していてもよく、単調増加関数に限らず、定義域の一部においてαが一定となる場合も含まれる。図１１（Ａ）又は（Ｂ）では、エンジンの回転数偏差の大きさ｜ｅ(ｔ)｜が所定値以上の場合、αの値が飽和するようになっている。また、図１１（Ａ）又は（Ｂ）では、αの値域を０．５≦α≦０．９としているが、これに限らず、０＜α＜１の範囲の値を取るようにしてもよい。
【００５４】
実施形態３のブロック図は、図１０に示すとおりである。実施形態１と同一の要素には同一の符号を付して、重複する説明は省略する。この実施形態３は、回転数偏差演算部１１において算出された回転数偏差ｅ(ｔ)がα設定部６２に入力されるようになっている。α設定部６２は、入力された回転数偏差ｅ(ｔ)の大きさ｜ｅ(ｔ)｜に基づいて、図１１（Ａ）又は（Ｂ）のマップからαの値を決定し、係数乗算器４１及び５１にαの値を出力する。
【００５５】
実施形態３によるドループ制御のフローチャートは、「指令電流値演算処理」（図３のステップＳ４）のみが実施形態１と相違し、実施形態２についての図８の処理と同様である。但し、実施形態３の場合は、ステップＳ２３におけるαの決定がα＝ｇ(｜ｅ(ｔ)｜)に基づいて決定される点で、実施形態２の場合と相違する。ステップＳ２１において今期の回転数偏差ｅ(ｔ)に基づく操作量Ｋｐ・ｅ(ｔ)を演算する点、及び、ステップＳ２２において過去ｋ回分の操作量｛Ｋｐ・ｅ(ｔ−ｎ)；ｎ＝１，２，・・・，ｋ｝の移動平均値を算出する点は実施形態２と同様である。実施形態３では、ステップＳ２４において、下記の式に基づいて操作量である指令電流値Ｙ（ｔ）を算出する。
【００５６】
【数５】
2008231939.tif 000007
【００５７】
ステップＳ２５において、次回のサンプリング時点における移動平均演算に備えて、図示しないメモリ上に用意したバッファ（配列）に格納された前回分までの操作量データを順次シフトし、今期（ｔ期）の操作量データＫｐ・ｅ(ｔ)を格納しておく点は実施形態１及び２と同様である。
【００５８】
このように、実施形態３では、αを、０＜α＜１の範囲の定数とすることに代えて、エンジンの回転数偏差の大きさに応じて０＜α＜１の範囲の値を取る変数とし、かつ、エンジンの回転数偏差の大きさが大きいほど大きな値を取るようにしたので、負荷変動直後のようにエンジンの実回転数が大きく変動し回転数偏差（の大きさ）が大きい場合には、今期の回転数偏差に基づいて算出した操作量の割合を大きくして、応答性を向上させることができる。
【００５９】
本発明の実施形態の説明は以上のとおりであるが、本発明は上記実施形態にのみ限定されるものではない。上記各実施形態では、ラック位置センサを設けずに、リニアソレノイドの通電電流値によりコントロールラックの位置情報を代用したが、ラック位置センサを設けて精度の高いラック位置情報を検出するようにしてもよい。また、本明細書における「ＰＩＤ制御」という用語には、Ｐ動作、Ｉ動作及びＤ動作のすべてを実行する３項動作ＰＩＤ制御のみならず、Ｐ動作及びＩ動作からなるＰＩ制御も含まれる。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施形態１に係る電子ガバナのブロック図である。
【図２】実施形態１におけるドループ制御のガバナ特性図である。
【図３】実施形態１におけるドループ制御のフローチャートである。
【図４】実施形態１における指令電流値演算処理のフローチャートである。
【図５】実施形態１のブロック図の別構成例である。
【図６】本発明の実施形態２に係る電子ガバナのブロック図である。
【図７】図７（Ａ）及び（Ｂ）とも、実施形態２におけるα＝ｆ(｜ΔＮ(ｔ)/Δｔ｜)の対応関係を表すマップの概念図である。
【図８】実施形態２における指令電流値演算処理のフローチャートである。
【図９】実施形態２の変形例に係る電子ガバナのブロック図である。
【図１０】本発明の実施形態３に係る電子ガバナのブロック図である。
【図１１】図１１（Ａ）及び（Ｂ）とも、実施形態３におけるα＝ｇ(｜ｅ(ｔ)｜)の対応関係を表すマップの概念図である。
【図１２】従来の電子ガバナのブロック図である。
【図１３】従来の電子ガバナにおけるドループ制御のガバナ特性図である。
【符号の説明】
【００６１】
１…電子ガバナ
２…リニアソレノイド（アクチュエータ）
３…ポテンショメータ（目標回転数設定手段）
４…回転数センサ（実回転数検出手段）
５…ＥＣＵ
６…回転数フィードバック制御部
７…電流フィードバック補正部
８…電流検出部
１１…回転数偏差演算部
１２…ＰＩＤ演算部
２１…比例演算部
２２…積分演算部
２３…微分演算部
３１…ガバナ特性切換部
３２…第１の信号ルート
３３…第２の信号ルート
４１…係数乗算器
５１…係数乗算器
５２…移動平均演算部
６１…回転数変化率演算部
６２…α設定部
【図１】
2008231939.tif 000010
【図２】
2008231939.tif 000011
【図３】
2008231939.tif 000012
【図４】
2008231939.tif 000013
【図５】
2008231939.tif 000014
【図６】
2008231939.tif 000015
【図７】
2008231939.tif 000016
【図８】
2008231939.tif 000017
【図９】
2008231939.tif 000018
【図１０】
2008231939.tif 000019
【図１１】
2008231939.tif 000020
【図１２】
2008231939.tif 000021
【図１３】
2008231939.tif 000022