(57)【特許請求の範囲】
【請求項１】
所定のシステムにおける同一の制御量をシステムの状態に応じて演算するために、主演算系と副演算系とを併用し、これら主演算系の演算結果と副演算系の演算結果とを比較して、上記システムの異常を判定する異常判定手段を有する冗長系システム異常診断装置において、
上記システムの状態の変化に応じて上記制御量が所定の値へ変化する遷移中に、上記主演算系と副演算系のそれぞれにおいて、所定の変化割合で変化する内部パラメータを用いて、上記制御量を上記所定の値へ向けて徐々に変化させる徐変手段と、
上記遷移中に、上記主演算系と上記副演算系とで上記内部パラメータの値を同期させる同期手段と、
を有することを特徴とする冗長系システム異常診断装置。
【請求項２】
上記異常判定手段は、上記主演算系の演算結果と副演算系の演算結果との偏差が、所定時間、所定値以上である場合に、当該システムが異常であると判定することを特徴とする請求項１に記載の冗長系システム異常診断装置。
【請求項３】
上記内部パラメータは、上記遷移中に、上記所定のシステムと協調制御される他のシステムにおける制御量の演算にも用いられることを特徴とする請求項１又は２に記載の冗長系システム異常診断装置。
【請求項４】
上記所定のシステムが、電制スロットルを備えた内燃機関の電制スロットルシステムであり、
上記制御量が、上記電制スロットルの目標スロットル開度であることを特徴とする請求項１〜３のいずれかに記載の冗長系システム異常診断装置。
【請求項５】
上記目標スロットル開度は、目標空気量に基づいて求められ、
上記目標空気量は、アクセル開度とエンジン回転速度から求められる基本目標空気量と、燃焼効率補正値と、に基づいて求められ、
上記燃焼効率補正値は、エンジン回転速度とアクセル開度とに基づいて、燃焼モードに応じて個別に設定されたマップを参照することにより求められ、
上記徐変手段は、上記燃焼モードが切り換えられる上記遷移中に、上記内部パラメータを用いることによって、上記燃焼効率補正値を、上記燃焼モードの切換前の値から切換後の値へ向けて徐々に変化させる、
ことを特徴とする請求項４に記載の冗長系システム異常診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主演算系と副演算系とを併用する冗長系システムの異常診断装置に関する。
【背景技術】
【０００２】
内燃機関の電制スロットルシステムのように、失陥時に重大な不具合を生じるシステムでは、システムの安定性・安全性、フェールセーフ性を確保するために、コントローラ等の制御部に対しても冗長系の演算処理が組み込まれる（特許文献１参照）。この冗長系の演算処理では、所定の制御量を演算する主演算系に対する予備の演算系として、この主演算系と相似形の副演算系が併用される。そして、主演算系と副演算系の演算結果を比較し、例えば、その偏差が所定値以上の状態が所定時間継続した場合に、システムに何らかの不具合が発生しているとして異常判定を行い、例えば電制スロットルの通電カットなどの適宜なフェールセーフ処置が実施される。
【０００３】
また、バルブタイミングが大きく変化するとき、あるいはエンジン暖機中に点火時期を大幅に遅角するリタード燃焼に切り換えるときなど、スロットル開度などの制御量が大きく変化する遷移中に、その制御量を急激に変化させると、トルク段差を生じたり燃焼安定性を損ねるなどの不具合を生じるおそれがある。そこで、このような遷移中には、例えば、所定の内部パラメータを用いて制御量を徐々に変化させることが好ましい。この内部パラメータは、遷移中における制御量の変化割合に相当し、制御量の変化速度を規定するもので、例えば、上記遷移中の所定時間毎に所定量（１未満の値）が積算演算されることで、０から１へ向けて徐々に増加する値とされる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２２２０５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、冗長系の演算処理が適用されるシステムに対し、上述したように遷移中に内部パラメータを用いて制御量を徐々に変化させる場合、以下のような不具合を生じるおそれがある。すなわち、主演算系と副演算系とは、同じ制御量を求める類似形・相似形のものではあるものの、多数の開発者がかかわる場合や演算ロジックが複雑化した場合などでは、全く同一の構成とすることは難しい。このため、具体的な演算回路の組み方や値の丸め方などの相違に起因して、主演算系と副演算系との間で量子化誤差や中間演算値の丸め誤差、あるいは交互に演算処理される主演算系と副演算系との演算タイミングのずれにより生じる誤差などを生じることがある。但し、このような誤差は、一般的には一演算毎に単発的に生じるもので、その誤差が長く継続するものではないために、通常、このような誤差によってシステムが異常と誤判定されることはない。
【０００６】
但し、主演算系と副演算系との間で中間パラメータの値に誤差を生じると、この内部パラメータは遷移中には単純に積算演算されることから、例えば１ｂｉｔ程度の僅かな誤差であっても、その誤差が縮小することなく保持あるいは拡大され続ける。このために、システムが正常であるにもかかわらず異常であると誤判定され、不必要にフェールセーフ処置が実施され、例えば電制スロットルの通電カットなどの厳しい走行制限（フェールセーフモード）に移行するおそれがある。
【課題を解決するための手段】
【０００７】
本発明は、このような事情に鑑みてなされたものである。すなわち本発明に係るシステム異常診断装置は、所定のシステムにおける同一の制御量をシステムの状態に応じて演算するために、主演算系と副演算系とを併用し、これら主演算系の演算結果と副演算系の演算結果とを比較して、上記システムの異常を判定する異常判定手段を有している。また、上記システムの状態の変化に応じて上記制御量が所定の値へ変化する遷移中に、上記主演算系と副演算系のそれぞれにおいて、所定の変化割合で変化する内部パラメータを用いて、上記制御量を上記所定の値へ向けて徐々に変化させる徐変手段を有している。そして、上記遷移中に、上記主演算系と上記副演算系とで上記内部パラメータの値を同期させる同期手段を有するものである。
【発明の効果】
【０００８】
本発明によれば、主演算系と副演算系とを併用する冗長系システムにおいて、システム状態の変化に応じて制御量が大きく変化する遷移中に、内部パラメータを用いて制御量を徐々に変化させることで、制御量の急激な変化を抑制することができる。そして、この遷移中には、主演算系と副演算系とで内部パラメータの値を同期させているために、仮に主演算系と副演算系とで内部パラメータの値に誤差が生じた場合にも、この誤差が保持あるいは拡大され続けることがなく、このような内部パラメータの誤差の保持・拡大に起因する誤った異常判定が生じることを確実に回避して、診断精度を向上することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施例に係る冗長系システム異常診断装置を適用した電制スロットルシステムを備えた内燃機関のシステム構成図。
【図２】本実施例に係る電制スロットルシステムの演算処理を示す制御ブロック図。
【図３】図２の協調制御部の詳細を示す制御ブロック図。
【図４】図２の異常診断部の処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１０】
以下、この発明の一実施例を図面に基づいて詳細に説明する。図１は、この発明に係る冗長形システム異常診断装置を適用した内燃機関のシステム構成を示す構成説明図である。内燃機関１は、吸気弁３と排気弁４とを有し、かつ吸気弁３の動弁機構として、吸気弁３のリフト・作動角を連続的に拡大・縮小させることが可能な第１可変動弁機構（ＶＥＬ）５と、作動角の中心角を連続的に遅進させることが可能な位相可変機構すなわち第２可変動弁機構（ＶＴＣ）６と、を備えている。また、吸気通路７には、モータ等のアクチュエータにより開度が制御される電子制御式の電制スロットル２と、燃料噴射弁８と、が設けられている。後述するように、コントロールユニット１０は、これらスロットル２及び第１，第２可変動弁機構５，６を協調制御することにより、吸入空気量を運転状態に応じて調整する。
【００１１】
コントロールユニット１０には、運転者により操作されるアクセルペダルに設けられたアクセル開度センサ１１からのアクセル開度信号ＡＰＯ、エンジン回転速度センサ１２からのエンジン回転速度信号Ｎｅ、吸入空気量センサ１３からの吸入空気量信号、などが入力されており、コントロールユニット１０は、これらの信号に基づいて、燃料噴射量、点火時期、スロットル開度、作動角目標値、中心角目標値、等を演算し、燃料噴射弁８、点火プラグ９、スロットル２、第１，第２可変動弁機構５，６、等の動作を制御する。
【００１２】
なお、上記の可変動弁機構５，６等には、例えば特開２００９−１４４６８７号公報に記載のような公知のものを用いることができるため、ここでは詳細な説明を省略する。
【００１３】
図２は、冗長系の演算処理を組み込んだ電制スロットルシステムの演算処理を示すブロック図であり、これらの演算処理は、上記のコントロールユニット１０により記憶及び実行される。
【００１４】
図２に示すように、この電制スロットルシステムには、互いに相似形の主演算系２０Ｍと、予備の演算系である副演算系２０Ｓと、が組み込まれている。なお、主演算系２０Ｍと副演算系２０Ｓとは基本的に類似形・相似形の演算処理を行うものであるために、同一の構成要素には同じ参照符号を付して重複する説明を適宜省略し、両者を区別する場合には、必要に応じて、主演算系２０Ｍの構成要素には「Ｍ」、副演算系の構成要素には「Ｓ」を参照符号の後に付記している。
【００１５】
各演算系２０Ｍ，２０Ｓには、それぞれ目標スロットル開度演算部２１Ｍ，２１Ｓが設けられている。各目標スロットル開度演算部２１Ｍ，２１Ｓでは、アクセル開度等のドライバ要求と、エンジン回転速度などのエンジン運転状態と、などに基づいて、目標スロットル開度を演算する。より具体的には後述するように、アクセル開度やエンジン回転速度等に基づいて目標空気量を求め、この目標空気量から目標スロットル開度が求められる。
【００１６】
異常診断部２２（異常判定手段）では、冗長系システムである電制スロットルシステムの異常判定が行われる。
【００１７】
図４は、この異常判定処理の流れを示すフローチャートであり、ステップＳ１１では主目標スロットル開度演算部２１Ｍの演算結果である主目標スロットル開度ＴＶＯｍを読み込み、ステップＳ１２では副目標スロットル開度演算部２１Ｓの演算結果である副目標スロットル開度ＴＶＯｓを読み込み、ステップＳ１３では、両者の偏差（絶対値）である誤差ΔＴＶＯが所定値以上であるかを判定する。ステップＳ１４では、誤差ΔＴＶＯが所定値以上の状態が所定時間（２００ｍｓｅｃ程度）継続したかを判定する。誤差ΔＴＶＯが所定値以上の状態が所定時間経過すると、この電制スロットルシステムの異常であると判定して、ステップＳ１４からステップＳ１５へ進み、所定のフェールセーフ処置が実施される。このフェールセーフ処置では、運転者に当該異常を警告ランプや警報により報知するとともに、例えば電制スロットル２の通電カットといった走行制限を実施する。
【００１８】
なお、この実施例においては、主演算系２０Ｍで求められた主目標スロットル開度が、実際にスロットル２の駆動制御等に用いられ、副演算系２０Ｓで求められた副目標スロットル開度は、上記の異常診断部２２でのみ用いられている。但し、これに限らず、例えば主目標スロットル開度に代えて副目標スロットル開度の値、あるいは両者の平均値をスロットル２の駆動制御等に用いるようにしても良い。
【００１９】
そして、バルブタイミングが大きく変化するときや、エンジン暖機中に行う点火時期のリタード燃焼への切換時のように、燃焼状態が大きく変化し、制御量である目標スロットル開度が大きく変化する遷移中には、各目標スロットル開度演算部２１Ｍ，２１Ｓは、所定の内部パラメータである協調制御パラメータを用いて、目標スロットル開度を遷移前の値から遷移後の所定の値、つまりマップ切換前の目標値からマップ切換後の目標値へ向けて徐々に変化させる。これによって、スロットル開度の急激な増減を抑制し、トルク段差の発生や運転性の低下を防止・抑制することができる。
【００２０】
協調制御パラメータは、遷移中における制御量の変化割合に相当するものであり、後述するように、積算演算により遷移中に０から１へ向けて徐々に増加する値である。この協調制御パラメータは、電制スロットルシステムと協調制御される例えば点火時期制御システム２３（図２参照）にも出力され、上記遷移中には、点火時期も目標スロットル開度と同様に協調制御パラメータを用いて徐々に変化させている。
【００２１】
この理由について説明すると、燃費，排気性能向上の要求から、スロットル，バルブタイミング，点火時期などの制御量を協調して制御する場合、これらのスロットル，バルブタイミング，点火時期などは、それぞれ応答速度が異なるために、制御量が大きく変動する上記遷移中には、上記応答速度の相違に起因して過渡的に望ましくない運転状態となることがある。例えば、点火時期の変化に対してスロットルやバルブタイミングの変化による吸入空気量の変化が遅れると、ノッキングを生じたり、燃焼安定性を損ねるおそれがある。そこで本実施例では、上記遷移中には、同一の協調制御パラメータ（内部パラメータ）を用いて、複数の制御量（目標スロットル開度、点火時期など）を演算して、応答性の異なる複数の制御量の変化を揃えるようにしている。
【００２２】
図３は、図２の協調制御部２４の処理内容をより具体的に示す説明図であり、図２と同様、上段が主演算系２０Ｍ、下段が副演算系２０Ｓを示している。なお、上述したように各演算系における処理は基本的に同様のものであるために、重複する説明を適宜省略する。目標空気量基本値演算部３１（３１Ｍ，３１Ｓ）では、アクセル開度（要求トルク）とエンジン回転速度に基づいて、予め設定・適合された制御マップを参照して、目標空気量基本値が演算される。目標空気量演算部３２Ｍでは、目標空気量基本値と、燃焼効率補正値と、に基づいて、目標空気量が演算される。具体的には、下式（１）により目標空気量が求められる。
目標空気量＝目標空気量基本値×燃焼効率補正値  …（１）
上記の燃焼効率補正値は、「１」を基準とした値（補正係数）であり、アクセル開度とエンジン回転速度とに基づいて、燃焼モードに応じて予め設定・適合されるマップを参照することにより求められる。この燃焼効率補正値は、バルブタイミング，点火時期や機関水温などの機関運転状態に応じて予め設定される様々な燃焼モードでも、運転者のアクセル開度等から定まる目標空気量が適切な値となるように設定される。例えば、水温が変化したことなどによって、燃焼モードが切り換えられて、バルブタイミングが燃焼が良い側に移動するときには、燃焼効率が良くなるために、切換前の燃焼モードの目標空気量では、トルクが過度に増加することから、燃焼モードの切換に伴って、吸入空気量の変動を抑制するように、燃焼効率補正値が小さな値に変更されることとなる。従って、燃焼モードが一定の運転状態であれば、アクセル開度とエンジン回転速度に基づいて、その燃焼モードに応じたマップをルックアップすることで、燃焼効率補正値が設定される。
【００２３】
一方、水温の変化等によって燃焼モードが切換えられる過渡期、つまり制御量（目標スロットル開度）が大きく変動する上記の遷移中には、燃焼効率補正値は、制御量の変化を緩やかなものとするために、上記の協調制御パラメータ（中間パラメータ）を用いて、次のように設定される。
【００２４】
燃焼モードが切り換わると、この切換開始の時点において、現在のエンジン回転数とアクセル開度に基づいて、燃焼モードの切換前・遷移前の燃焼モードのマップを参照し、切換前の燃焼効率補正値Ａを求める。同様に、現在のエンジン回転数とアクセル開度に基づいて、燃焼モードの切換後・遷移後のマップ（つまり、現時点での目標値に対応したマップ）を参照して、切換後の燃焼効率補正値Ｂを求める。
【００２５】
そして、下式（２）のように、協調制御パラメータＮを用いて、最終的な燃焼効率補正値Ｃを求める。
【００２６】
燃焼効率補正値Ｃ＝Ａ×（１−Ｎ）＋Ｂ×Ｎ  …（２）
ここで、協調制御パラメータＮは、燃焼効率補正値Ｃの変化割合に相当し、つまり制御量の変化速度を規定するものであり、切換開始時には０とされ、これ以降の遷移中には、積算演算により所定期間（例えば、演算間隔である１０ｍｓ）毎に、１未満の所定の変化量が積算・加算されることで、遷移中には０から１へ向けて所定の変化速度で徐々に増加する。一方、切換前の燃焼効率補正値Ａと切換後の燃焼効率補正値Ｂとは上記の切換開始時点で求めた値に固定されることから、遷移中には、協調制御パラメータが０から１へ徐々に変化することに伴って、燃焼効率補正値Ｃの値が切換前の値Ａから切換後の値Ｂへと所定の変化速度で徐々に変化していくこととなる。そして協調制御パラメータＮの値が「１」に達すると、燃焼効率補正値Ｃが切換後の値Ｂとなって、協調制御パラメータＮを用いた遷移処理を終了する。以降の演算では、アクセル開度とエンジン回転速度に基づいて、現在（切換後）の燃焼モードに応じたマップをルックアップすることで、燃焼効率補正値が設定される。
【００２７】
このように、遷移中には、燃焼効率補正値Ｃが所定の変化速度で変化することで、この燃焼効率補正値Ｃを用いて求められる目標空気量、更にはこの目標空気量に応じて求められる目標スロットル開度の急激な変動が抑制される。
【００２８】
ここで、燃焼モード切換時のような遷移中に用いられる上記の協調制御パラメータＮの値やその変化量が、主演算系２０Ｍと副演算系２０Ｓとの間で誤差を生じると、遷移中には協調制御パラメータＮの値が所定の変化量ずつ単純に積算演算されることから、その誤差が縮まることなく保持あるいは積算演算により拡大していき、その結果、主演算系２０Ｍと副演算系２０Ｓとで最終的な目標スロットル開度の誤差が縮まることなく保持・拡大して、上記の異常診断部２２において、異常ではないにもかかわらず異常と誤判定されるおそれがある。
【００２９】
そこで本実施例においては、このように遷移中に積算される協調制御パラメータの誤差による異常判定の誤診断を確実に回避するために、上記の遷移中には、同期処理部３３において、主演算系２０Ｍと副演算系２０Ｓとで協調制御パラメータＮの値を同期し、つまり同一の値に揃える処理を行っている（同期手段）。これによって、マップ切換に伴う遷移中に協調制御パラメータＮの値が主演算系２０Ｍと副演算系２０Ｓとで誤差を生じても、これによる誤差の保持・拡大を防止して、これに起因する異常の誤判定を確実に防止することができる。また、このような同期を行うことの弊害として、主演算系２０Ｍと副演算系２０Ｓとによる演算の二重化・冗長化によるシステムの安全性・フェールセーフ性が低下するものの、本実施例においては、遷移中にのみ用いられる協調制御パラメータＮの値のみを同期させているために、同期に伴う安全性・フェールセーフ性の低下が最小限に抑制される。
【００３０】
この同期処理について具体的に説明すると、主演算系２０Ｍでは、先ず主同期処理部３３Ｍにおいて、副演算系２０Ｓで求められた前回（一演算前）の協調制御パラメータの値と、主演算系２０Ｍで求められた前回（二演算前）の協調制御パラメータのうち、大きい値の方を、今回の積算演算処理に用いる主協調制御パラメータＮｍ（積算演算前の値）として選択し、主協調制御パラメータ演算部３４Ｍへ出力する。主協調制御パラメータ演算部３４Ｍでは、選択された主協調制御パラメータＮｍに、所定の変化量ΔＮを積算（加算）して主協調制御パラメータＮｍを更新し（Ｎｍ←Ｎｍ＋ΔＮ）、主目標空気量演算部３２Ｍへ出力する。主目標空気量演算部３２Ｍでは、上述したように主協調制御パラメータＮｍを用いて燃焼効率補正値を求め、この燃焼効率補正値と主目標空気量基本値とに基づいて、主目標空気量を算出する。
【００３１】
副制御系２０Ｓでは、先ず副協調制御パラメータ演算部３４Ｓにおいて、前回（二演算前）の副協調制御パラメータＮｓに、所定の変化量ΔＮを積算して副協調制御パラメータＮｓを更新する（Ｎｓ←Ｎｓ＋ΔＮ）。そして、副同期処理部３３Ｓでは、この更新された副協調制御パラメータＮｓと、主演算系２０Ｍで求められた前回（一演算前）の協調制御パラメータＮｍのうち、大きい値の方を最終的な副協調制御パラメータＮｓとして選択し、副目標空気量演算部３２Ｍへ出力する。副目標空気量演算部３２Ｍでは、上述したように副協調制御パラメータを用いて燃焼効率補正値を求め、この燃焼効率補正値と副目標空気量基本値とに基づいて、副目標空気量を算出する。
【００３２】
このように、同期処理部３３Ｍ，３３Ｓにおいては、副演算系２０Ｓで求められた値と主演算系で求められた値のうち、大きい値の方を協調制御パラメータとして選択している。これは、協調制御パラメータの値として、大きい値（１に近い値）の方が、小さい値（０に近い値）に比して、制御量である目標スロットル開度が遷移後の値、つまり現在の燃焼モードでの目標値に近づくこととなり、安全側の値であるためである。本実施例とは逆に、仮に小さい値の方を選択した場合、制御量が切換後の目標値から離れる形となり、また、遷移期間が長引いて運転性の低下を招くおそれがある。
【００３３】
また、本実施例では、燃焼モードの切換開始時には先ず主演算系２０Ｍの演算処理が実行され、その後、主演算系２０Ｍと副演算系２０Ｓとが所定間隔毎（例えば、１０ｍｓｅｃ後）に交互に実行される。このように、両者の間に時間的にずれが生じており、かつ、演算順序の早い主演算系２０Ｍでは演算順序の遅い副演算系２０Ｓの積算後の演算結果を用いることができないことから、上記実施例においては、双方の同期処理を同一の形態として相互監視の形とすることができず、副演算系２０Ｓでは積算演算後に同期処理を行っているのに対し、主演算系２０Ｍでは積算演算前に同期化処理を行う構成としている。
【００３４】
以上のように本発明を具体的な実施例に基づいて説明してきたが、本発明は上記実施例に限定されるものではなく、その趣旨を逸脱しない範囲で、種々の変形・変更を含むものである。例えば、上記実施例では電制スロットルシステムに本発明を適用しているが、可変動弁システムや点火時期制御システムなど、冗長系システムを採用する様々なシステムに適用することができる。
【符号の説明】
【００３５】
２…電制スロットル
２０Ｍ…主演算系
２０Ｓ…副演算系
２２…異常診断部（異常判定手段）
【図１】
0005287905.tif 000002
【図２】
0005287905.tif 000003
【図３】
0005287905.tif 000004
【図４】
0005287905.tif 000005