(57)【特許請求の範囲】
【請求項１】
実機システムが備える複数の要素をモデル化した複数のユニットを有するシステムモデルと、
前記複数の要素のそれぞれに発生することが想定される故障をモデル化し、前記要素の故障の内容を表現する故障モードを可変に設定できる、複数の故障モデルと、
前記システムモデルの前記ユニットを前記故障モデルに置き換えるモデル置換手段と、
前記要素に発生することが想定される複数の異なる故障を表現するように用意された複数の故障モードを、前記複数の故障モデルに設定される故障モードの組み合わせを相違させるように、前記故障モデルそれぞれに対して設定可能な手段と、
前記故障モデルそれぞれに前記故障モードが設定されたときの前記システムモデルの出力と前記実機システムからの出力との比較に基づいて、当該比較のときに前記故障モデルに設定されている前記故障モードの組み合わせに従って前記実機システムにおける前記複数の要素が故障しているか否かを診断する故障診断手段と、
を備えたことを特徴とする故障診断装置。
【請求項２】
直列状に接続された複数の前記システムモデルを備え、
前記ユニットは、前記複数のシステムモデルのそれぞれの出力部に設けられ、前記実機システムが備える実センサーをモデル化したセンサーモデルを含み、
前記比較手段は、前記センサーモデルからの出力と、前記実センサーからの出力とを比較することを特徴とする請求項１記載の故障診断装置。
【請求項３】
前記モデル置換手段は、複数の前記システムモデルが有する複数の前記ユニットの一部又は全部を同時に前記故障モデルに置き換えることを特徴とする請求項２記載の故障診断装置。
【請求項４】
前記故障診断手段は、前記センサーモデルからの出力と、前記実センサーからの出力とが相違する場合は、当該実センサーよりも上流に位置する前記実機システムの要素が、対応する前記システムモデル内で置き換えられた前記故障モデルの故障モードで故障していると診断することを特徴とする請求項２又は３記載の故障診断装置。
【請求項５】
前記故障診断手段は、特定の前記センサーモデルからの出力と当該特定のセンサーモデルによってモデル化された前記実センサーからの出力とが一致する場合は、当該特定のセンサーモデルよりも下流に位置する前記システムモデルを用いて、対応する前記実機システムの故障診断を行うことを特徴とする請求項２〜４のいずれかに記載の故障診断装置。
【請求項６】
前記故障診断手段は、任意の第１の前記センサーモデルからの出力と当該第１のセンサーモデルによってモデル化された前記実センサーからの出力とが相違し、当該第１のセンサーモデルよりも下流に位置する第２の前記センサーモデルからの出力と当該第２のセンサーモデルによってモデル化された前記実センサーからの出力が一致する場合は、前記第１のセンサーモデルに対応する前記実センサーが故障していると診断することを特徴とする請求項２〜５のいずれかに記載の故障診断装置。
【請求項７】
前記システムモデルは前記実機システムとしての内燃機関をモデル化したものであり、前記センサーモデルは当該内燃機関が備える前記実センサーをモデル化したものであることを特徴とする請求項１〜６のいずれかに記載の故障診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、故障診断装置に関し、特に内燃機関の故障を診断する装置に適用して好適である。
【背景技術】
【０００２】
従来から、プラントなどのシステムにおいて、システムの異常を検知する方法が知られている。例えば、特開平８−６６３５号公報には、プラントの異常兆候が見られた箇所に対して故障モードを用いてモデル演算を行い、故障箇所を迅速に発見する手法が記載されている。
【０００３】
また、特開平６−１２３６４２号公報には、プラント系統に発生した故障現象の根本的原因を究明すべく、プラント系統を構成する構成機器の故障モデルを用いる方法が記載されている。
【０００４】
【特許文献１】特開平８−６６３５号公報
【特許文献２】特開平６−１２３６４２号公報
【特許文献３】特開２００４−５２６３３号公報
【特許文献４】特開平９−３３０１２０号公報
【特許文献５】特開２００５−１３３５７３号公報
【特許文献６】特開２００５−１５５３８４号公報
【特許文献７】特開２００５−２３８６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の技術によれば、想定された故障の検出、特定は可能であるが、想定されていない故障が生じた場合は故障箇所の特定が困難となる。特に、システム内の複数のユニットが複合的に同時故障している場合は、故障を検知することが困難である。
【０００６】
また、システムからの出力を検知するセンサー自体が故障している場合、システムの故障と区別することが困難になり、正確な故障診断ができなくなるという問題が生じる。
【０００７】
この発明は、上述のような問題を解決するためになされたものであり、システム内の複数のユニットが故障している場合であっても、故障の状態を確実に検知することを目的とする。
【課題を解決するための手段】
【０００８】
第１の発明は、上記の目的を達成するため、故障診断装置であって、
実機システムが備える複数の要素をモデル化した複数のユニットを有するシステムモデルと、
前記複数の要素のそれぞれに発生することが想定される故障をモデル化し、前記要素の故障の内容を表現する故障モードを可変に設定できる、複数の故障モデルと、
前記システムモデルの前記ユニットを前記故障モデルに置き換えるモデル置換手段と、
前記要素に発生することが想定される複数の異なる故障を表現するように用意された複数の故障モードを、前記複数の故障モデルに設定される故障モードの組み合わせを相違させるように、前記故障モデルそれぞれに対して設定可能な手段と、
前記故障モデルそれぞれに前記故障モードが設定されたときの前記システムモデルの出力と前記実機システムからの出力との比較に基づいて、当該比較のときに前記故障モデルに設定されている前記故障モードの組み合わせに従って前記実機システムにおける前記複数の要素が故障しているか否かを診断する故障診断手段と、
を備えたことを特徴とする。
【０００９】
第２の発明は、第１の発明において、直列状に接続された複数の前記システムモデルを備え、前記ユニットは、前記複数のシステムモデルのそれぞれの出力部に設けられ、前記実機システムが備える実センサーをモデル化したセンサーモデルを含み、前記比較手段は、前記センサーモデルからの出力と、当該センサーモデルによってモデル化された前記実センサーからの出力とを比較することを特徴とする。
【００１０】
第３の発明は、第２の発明において、前記モデル置換手段は、複数の前記システムモデルが有する複数の前記ユニットの一部又は全部を同時に前記故障モデルに置き換えることを特徴とする。
【００１１】
第４の発明は、第２又は第３の発明において、前記故障診断手段は、前記センサーモデルからの出力と、当該センサーモデルによってモデル化された前記実センサーからの出力とが一致する場合は、当該実センサーよりも上流に位置する前記実機システムの要素が、対応する前記システムモデル内で置き換えられた前記故障モデルの故障モードで故障していると診断することを特徴とする。
【００１２】
第５の発明は、第２〜第４の発明のいずれかにおいて、前記故障診断手段は、特定の前記センサーモデルからの出力と当該特定のセンサーモデルによってモデル化された前記実センサーからの出力とが一致する場合は、当該特定のセンサーモデルよりも下流に位置する前記システムモデルを用いて、対応する前記実機システムの故障診断を行うことを特徴とする。
【００１３】
第６の発明は、第２〜第５の発明のいずれかにおいて、前記故障診断手段は、任意の第１の前記センサーモデルからの出力と当該第１のセンサーモデルによってモデル化された前記実センサーからの出力とが相違し、当該第１のセンサーモデルよりも下流に位置する第２の前記センサーモデルからの出力と当該第２のセンサーモデルによってモデル化された前記実センサーからの出力が一致する場合は、前記第１のセンサーモデルに対応する前記実センサーが故障していると診断することを特徴とする。
【００１４】
第７の発明は、第１〜第６の発明のいずれかにおいて、前記システムモデルは前記実機システムとしての内燃機関をモデル化したものであり、前記センサーモデルは当該内燃機関が備える前記実センサーをモデル化したものであることを特徴とする。
【発明の効果】
【００１５】
第１の発明によれば、システムモデルの複数のユニットを故障モデルに置き換え、システムモデルの出力と実機システムからの出力を比較することで、実機システムの故障を診断することができる。従って、実機システムが有する複数の要素に複合的に故障が発生している場合であっても、的確に故障を診断することができ、故障箇所および故障モードを特定することが可能となる。
【００１６】
第２の発明によれば、複数のシステムモデルのそれぞれの出力部に実機システムが備える実センサーをモデル化したセンサーモデルを設けたため、センサーモデルの出力と実機システムの実センサーの出力とを比較することにより、システムモデルの故障を確実に診断することが可能となる。
【００１７】
第３の発明によれば、複数のシステムモデルが有する複数のユニットの一部又は全部を同時に故障モデルに置き換えるため、故障が複合的に発生している場合であっても、的確に故障を診断することができる。
【００１８】
第４の発明によれば、故障モデルの置き換えによって、センサーモデルからの出力とセンサーモデルによってモデル化された実センサーからの出力とが一致する場合は、実センサーよりも上流において、実システムの要素が置き換えられた故障モデルの故障モードで故障していると診断することができる。
【００１９】
第５の発明によれば、故障モデルの置き換えによって、特定のセンサーモデルからの出力とセンサーモデルによってモデル化された実センサーからの出力とが一致する場合は、更に下流のシステムの故障を診断することが可能となる。従って、システムモデルの上流側から故障モデルの置き換えを行うことで、全システムの故障診断を行うことが可能となる。
【００２０】
第６の発明によれば、任意の第１のセンサーモデルからの出力と第１のセンサーモデルによってモデル化された実センサーからの出力とが相違し、第１のセンサーモデルよりも下流に位置する第２のセンサーモデルからの出力と第２のセンサーモデルによってモデル化された実センサーからの出力が一致する場合は、上流の第１のセンサーモデルに対応する実センサーが故障していると診断することができる。
【００２１】
第７の発明によれば、実システムとしての内燃機関をモデル化してシステムモデルを構築し、内燃機関が備える実センサーをモデル化してセンサーモデルを構築することで、内燃機関の各システムの故障を的確に診断、特定することができるので、内燃機関の故障時におけるフェールセーフモードの選択肢を拡げることが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、図面に基づいてこの発明のいくつかの実施の形態について説明する。尚、各図において共通する要素には、同一の符号を付して重複する説明を省略する。なお、以下の実施の形態によりこの発明が限定されるものではない。
【００２３】
実施の形態１．
図１は、本発明の実施の形態１に係る故障診断装置のシステムモデルを示す模式図である。このシステムモデルは、実機のシステム（例えば内燃機関システム）をモデル化したものであって、システムモデル１とシステムモデル２を備えている。
【００２４】
システムモデル１は、ユニット１１、ユニット１２、ユニット１３を備えている。ユニット１１，１２，１３は、それぞれ関数Ｘ１１（ｔ），Ｘ１２（ｔ），Ｘ１３（ｔ）で表される。また、システムモデル２は、ユニット２１、ユニット２２、ユニット２３を備えている。ユニット２１，２２，２３は、それぞれ関数Ｘ２１（ｔ），Ｘ２２（ｔ），Ｘ２３（ｔ）で表される。
【００２５】
システムモデル１，２によって表されるシステムが内燃機関システムの場合、ユニット１１，１２，１３、ユニット２１，２２，２３に対応する実機の要素としては、例えば燃料噴射弁、スロットルバルブ、インテークマニホールド、点火プラグ、エキゾーストマニホールド、排気浄化触媒などが挙げられる。システムモデル１，２は、実機のシステムと同様の入力を受けて、実機のシステムに対応した出力を出力するものである。
【００２６】
図１に示すように、システムモデル１にはモデル入力１が入力される。モデル入力１はユニット１１へ入力され、ユニット１１からの出力は、ユニット１２、ユニット１３へ送られる。そして、システムモデル１からの出力はセンサーモデル１へ入力される。センサーモデル１は、システムモデル１からの入力を受けてモデル出力１を出力する。
【００２７】
システムモデル２にはシステムモデル１からの出力が入力される。システムモデル１からの出力は、ユニット２１へ入力される。また、システムモデル２のユニット２２には、モデル入力２が入力される。そして、ユニット２１、ユニット２２からの出力は、ユニット２３へ送られる。システムモデル２からの出力はセンサーモデル２へ入力され、センサーモデル２は、システムモデル２からの入力を受けてモデル出力２を出力する。
【００２８】
システムモデル１に対応する実機のシステム（実システム１）には、モデル入力１に対応した実入力１が入力される。実機のシステムは、センサーモデル１に対応する実センサー１を備えている。実センサー１は、実システム１からの出力を受けて、実出力１を出力する。実出力１はモデル出力１に対応する出力である。
【００２９】
また、システムモデル２に対応する実機のシステム（実システム２）には、実システム１からの出力が入力される。また、実システム２には、モデル入力２に対応する入力（実入力２）が入力される。実機のシステムは、センサーモデル２に対応する実センサー２を備えている。実センサー２は、実システム２からの出力を受けて、実出力２を出力する。実出力２はモデル出力２に対応する出力である。なお、システムモデル１，２が内燃機関システムをモデル化したものである場合、センサーモデル１，２に対応する実機のセンサーとしては、例えばＡ／Ｆセンサー、排気温度センサーなどが挙げられる。
【００３０】
システムモデル１，２は、実システム１，２と同様の動作を行うことができる。システムモデル１，２の各ユニット１１，１２，１３，２１，２２，２３が正常時のモデルに設定されている場合、システムモデル１，２からのモデル出力１，２は、実システム１，２が正常に動作している場合の実出力１，２に相当する。従って、モデル出力１，２と実機の実出力１，２を比較することで、実機のシステムが故障しているか否かを診断することができる。
【００３１】
以下、実機のシステムの故障診断を行う方法を詳細に説明する。故障診断は、システムモデル１とシステムモデル２のそれぞれにおいて行う。システムモデル１に対応する実システム１の故障診断を行う際には、センサーモデル１からのモデル出力１と、センサーモデル１に対応した実センサー１からの実出力１とが対比される。この際、運転条件を種々に変化させながら対比を行う。
【００３２】
各ユニット１１，１２，１３を正常時のモデルに設定した状態で、運転条件を種々に変化させ、モデル出力１と実出力１の値がほぼ一致する場合は、システムモデル１に対応する実システム１に故障が生じていないと判断できる。一方、モデル出力１と実出力１の値が相違する場合は、システムモデル１に対応する実システム１に故障が発生していると判断できる。
【００３３】
同様に、システムモデル２に対応する実システム２の故障診断を行う際には、センサーモデル２からのモデル出力２と、センサーモデル２に対応した実センサー２からの実出力２とが対比される。この際、運転条件を種々に変化させながら対比を行う。
【００３４】
各ユニット２１，２２，２３を正常時のモデルに設定した状態で、運転条件を種々に変化させ、センサーモデル２からのモデル出力２と実出力２の値がほぼ一致する場合は、システムモデル２に対応する実システム２に故障が生じていないと判断できる。一方、センサーモデル２からのモデル出力２と実出力２の値が相違する場合は、システムモデル２に対応する実システム２に故障が発生していると判断できる。
【００３５】
システムモデル１は、各ユニット１１，１２，１３の故障モデルを備えている。故障モデルは、各ユニット１１，１２，１３で発生することが想定される故障をモデル化したものであって、各ユニット１１，１２，１３のそれぞれに用意されている。各ユニット１１，１２，１３を故障モデルに置き換えると、置き換えられたユニットを故障モデルに対応した故障モードで動作させることができる。
【００３６】
同様に、システムモデル２も各ユニット２１，２２，２３の故障モデルを備えている。各ユニット２１，２２，２３を故障モデルに置き換えると、置き換えられたユニットを故障モデルに対応した故障モードで動作させることができる。
【００３７】
図２は、故障モデルを説明するための模式図である。ここで、図２（Ａ）は、システムモデル２が備えるユニット２１，２２，２３を故障モデルに置き換えている様子を示している。また、図２（Ｂ）は、ユニット２１，２２，２３の故障モデルを模式的に示している。
【００３８】
図２（Ａ）に示すように、故障診断の際には、ユニット２１が故障モデルＸ１（ｔ）に置き換えられる。同様に、ユニット２２は故障モデルＸ２（ｔ）に置き換えられ、ユニット２３は故障モデルＸ３（ｔ）に置き換えられる。
【００３９】
図２（Ｂ）に示すように、ユニット２１の故障モデルＸ１（ｔ）には３つの故障モード（モード１，２，３）が用意されている。このため、ユニット２１の故障モード数Ｎ１は３となる。
【００４０】
同様に、ユニット２２の故障モデルＸ２（ｔ）には２つの故障モード（モード１，２）が用意されており、ユニット２２の故障モード数Ｎ２は２である。また、ユニット２３の故障モデルＸ３（ｔ）には３つの故障モード（モード１，２，３）が用意されており、ユニット２３の故障モード数Ｎ３は３である。同様にして、ユニットＫの故障モデルＸＫ（ｔ）に４つの故障モード（モード１，２，３，４）が用意されている場合、ユニットＫの故障モード数ＮＫは４となる。なお、故障モデルはニューラルネット（ＮＮ）モデルにより構成しても良い。
【００４１】
例えば、ユニット２１が内燃機関のＡ／Ｆセンサーの場合、Ａ／Ｆセンサーの故障として、活性状態の劣化、センサーの割れ、異物の付着などを想定することができる。この場合において、ユニット２１の故障モデルＸ１（ｔ）は、Ａ／Ｆセンサーに故障が発生した場合に想定されるモードでＡ／Ｆセンサーを動作させるものである。そして、複数用意された故障モードにより、Ａ／Ｆセンサーで想定される複数の故障が表現される。例えば、活性状態の劣化はモード１による故障モデルＸ１（ｔ）で表現され、センサーの割れはモード２による故障モデルＸ１（ｔ）で表現され、異物の付着はモード３による故障モデルＸ１（ｔ）で表現される。
【００４２】
図２（Ａ）に示すように、各ユニット２１，２２，２３を故障モデルに置き換えると、各ユニット２１，２２，２３は置き換えられた故障モデルの故障モードに従って動作する。従って、システムモデル２からのモデル出力２は、置き換えられた故障モデルに対応した出力となる。
【００４３】
モデル出力１と実出力１とが相違し、システムモデル１に対応する実システム１に故障が生じていると判断された場合は、システムモデル１の各ユニット１１，１２，１３を順次に故障モデルに置き換えて、モデル出力１と実出力１とを対比するシミュレーションを行う。この際、故障の発生し易いと考えられるユニットから優先的に故障モデルへの置き換えが行われ、発生する可能性の高い故障モードから優先的にシミュレーションが行われる。対比の結果、モデル出力１と実出力１が一致した場合は、故障モデルに置き換えられたユニットにおいて、置き換えられた故障モデルによって表される故障モードで故障が発生していると判断できる。
【００４４】
また、システムモデル１の各ユニット１１，１２，１３を単独で故障モデルに置き換えてもモデル出力１と実出力１が一致しない場合は、センサーモデル１に対応する実センサー１が故障していることが考えられるため、センサーモデル１を故障モデルに置き換えて、モデル出力１と実出力１が一致するか否かを判定する。センサーモデル１についても複数の故障モードを有する故障モデルが用意されている。そして、センサーモデル１を故障モデルに置き換え、運転条件を可変しながらモデル出力１と実出力１を比較し、モデル出力１と実出力１が一致した場合は、置き換えられた故障モードでセンサーモデル１に対応した実機の実センサー１が故障していると判断する。
【００４５】
更に、システムモデル１の各ユニット１１，１２，１３、センサーモデル１を単独で故障モデルに置き換えてもモデル出力１と実出力１が一致しない場合は、ユニット１１，１２，１３、センサーモデル１が複合的に故障している可能性があるため、各ユニット１１，１２，１３、センサーモデル１を同時に故障モデルに置き換え、各故障モデルのモードを可変して、モデル出力１と実出力１を比較する。例えば、図２の例でシステムモデル２の各ユニット２１，２２，２３が複合的に故障していると考えられる場合、各ユニット２１，２２，２３の故障モードの組み合わせは、Ｎ１×Ｎ２×Ｎ３＝１８である。このように、故障モードの全ての組み合わせに対してシミュレーションを行い、モデル出力と実出力が一致するか否かを判定する。
【００４６】
一方、モデル出力１と実出力１が同一であり、システムモデル１に対応する実システム１に故障が発生していない場合は、モデル出力２と実出力２を比較し、システムモデル２に対応する実システム２に故障が生じているか否かを判定する。モデル出力２と実出力２が同一の場合は、システムモデル２に対応する実システム２に故障が生じていないため、システムモデル１、システムモデル２の双方に対応する実機のシステムに故障が生じておらず、実機の全システムが正常であると判断される。
【００４７】
一方、モデル出力１と実出力１は同一であるが、モデル出力２と実出力２が相違し、システムモデル２に故障が発生していると判断される場合は、システムモデル１の場合と同様に、システムモデル２の各ユニット２１，２２，２３、センサーモデル２を故障モデルに置き換えて、どのユニットがどの故障モードで故障しているか判定する。
【００４８】
また、モデル出力１と実出力１が相違し、モデル出力２と実出力２が一致する場合は、システムの最も下流に位置するセンサーモデル２からのモデル出力２と実出力２が一致しているため、本来、システムモデル１に対応する実機の実システム１にも故障が生じていないと考えられる。そして、この場合は、モデル出力１と実出力１の相違が、センサーモデル１に対応する実機の実センサー１の故障に起因すると考えることができる。従って、実センサー１が故障している旨の判定を行う。そして、実センサー１の故障原因を特定するため、センサーモデル１を故障モデルに置き換え、実センサー１の故障モードを判定する。
【００４９】
実センサー１に故障が発生している場合は、実センサー１の出力値を現実の制御に使うことができなくなるため、制御モードの切り換えを行う。例えば、センサーモデル１による実センサー１の故障シミュレーションで得られた故障モードの逆関数を実システム１の出力に掛け合わせ、実センサー１の故障による歪んでいる実出力１を本来の出力波形に矯正する。これにより、矯正した出力波形に基づいて制御を行うことが可能となる。また、実センサー２が正常である場合は、実センサー１の出力の代わりに実センサー２の出力を用いる制御に切り換える。更に、実センサー１の代わりにセンサーモデル１からの出力を用いて制御を行う等の方法により、制御モードの切り換えを行う。
【００５０】
以上のように、本実施形態の手法によれば、システムモデル１、システムモデル２に対応した実機のシステムの何処に故障が生じているか否かを判定することができ、故障しているユニット、および故障しているユニットの故障モードを特定することが可能となる。
【００５１】
次に、図３のフローチャートに基づいて、本実施形態による故障診断の処理について説明する。先ず、ステップＳ１では、システムモデル１からのモデル出力１と実出力１を比較し、また、システムモデル２からのモデル出力２と実出力２を比較する。次のステップＳ２では、ステップＳ１での比較の結果に基づいて、実システム１、実システム２のいずれか一方に故障が発生しているか否かを判定する。そして、実システム１，２のいずれか一方に故障が発生している場合はステップＳ３へ進み、実システム１，２の双方に故障が発生していない場合は処理を終了する(RETURN)。
【００５２】
ステップＳ３では、実システム１，２の双方に故障が発生しているか否かを判定し、実システム１，２の双方に故障が発生している場合は、ステップＳ４へ進む。そして、以降のステップで、実システム１、実システム２の故障ユニット、故障モードを特定する処理を行う。
【００５３】
ステップＳ４では、システムモデル１の各ユニット、センサーモデル１を故障モデルに置き換える。次のステップＳ５では、置き換えられたユニットを、故障モデルで設定された故障モードで動作させ、故障ユニットを特定するシミュレーションを開始する。より詳細には、ステップＳ４では、各ユニットを順次に故障モデルに入れ換えて、各故障モデルの故障モードを変化させながら故障ユニット、故障モードを特定するシミュレーションを行う。
【００５４】
次のステップＳ６では、ステップＳ５のシミュレーションにおいて、モデル出力１が実出力１と一致し、また、モデル出力２と実出力２が一致したか否かを判定する。ステップＳ６でモデル出力１，２と実出力１，２が一致しなかった場合は、ステップＳ７へ進む。この場合、システムモデル１の各ユニット、センサーモデル１を故障モデルに置き換えてもモデル出力１，２と実出力１，２が一致していないため、ステップＳ７では、システムモデル１に対応する実システム１、実センサー１のみの故障ではなく、実システム２のユニット、実センサー２を含む複数のユニットが複合的に故障していると判定する。
【００５５】
ステップＳ７の後はステップＳ８へ進み、実システム２、実センサー２の故障判定ロジックに移る。実システム２の故障判定は、システムモデル２内のユニット２１，２２，２３を故障モデルに置き換え、モデル出力２と実出力２が一致しているか否かを判定することによって行う。また、実センサー２の故障判定は、センサーモデル２を故障モデルに置き換え、モデル出力２と実出力２が一致するか否かを判定することによって行う。ステップＳ８では、システムモデル１のユニット１１，１２，１３、センサーモデル１、システムモデル２のユニット２１，２２，２３、センサーモデル２を故障モデルに置き換え、シミュレーションを行うことで、システムモデル１，２、センサーモデル１，２の故障を診断する。ステップＳ１１の後は処理を終了する(RETURN)。
【００５６】
一方、ステップＳ６において、モデル出力１と実出力１が一致し、モデル出力２と実出力２が一致した場合は、ステップＳ９へ進む。この場合、モデル出力２と実出力２が一致しているため、システムモデル２には故障が発生していないと判定できる。従って、システムモデル１単体が故障していると判断することができ、ステップＳ５のシミュレーションにおいて、モデル出力１，２と実出力１，２が一致した際に故障モデルに置き換えられているシステムモデル１内のユニットに対応する実システム１の要素が、置き換えられた故障モデルの故障モードにより故障していると判定できる。従って、ステップＳ９では、実システム１内で故障しているユニット、およびそのユニットの故障モードを特定する。次のステップＳ１０では、ステップＳ９で特定された故障ユニット、および故障モードを表示する。ステップＳ１０の後は処理を終了する(RETURN)。
【００５７】
ステップＳ３で実システム１、実システム２の双方に異常が発生していないと判定された場合は、ステップＳ１１へ進む。ステップＳ１１では、実システム２が正常であるか否かを判定し、実システム２が正常の場合はステップＳ１２へ進む。ステップＳ１２へ進んだ場合は、実システム１に故障が発生しており、実システム２には故障が発生していないため、センサーモデル１に対応する実センサー１が故障していると判定できる。従って、ステップＳ１２では、センサーモデル１を故障モデルに置き換える。
【００５８】
次のステップＳ１３では、センサーモデル１を故障モデルに置き換えた状態でシステムモデル１，２を動作させ、センサーモデル１の故障モードを特定するシミュレーションを開始する。より詳細には、ステップＳ１３では、センサーモデル１の故障モードを変化させながらセンサーモデル１の故障モードを特定するシミュレーションを行う。
【００５９】
次のステップＳ１４では、ステップＳ１３のシミュレーションにおいて、モデル出力１，２が実出力１，２と一致したか否かを判定する。ステップＳ１４でモデル出力１，２と実出力１，２が一致した場合は、ステップＳ１５へ進む。
【００６０】
ステップＳ１５へ進んだ場合は、モデル出力１，２と実出力１，２が一致した際にセンサーモデル１に設定されている故障モードで実センサー１が故障していると判定できる。従って、ステップＳ１５では、実センサー１の故障モードを特定する。
【００６１】
一方、ステップＳ１４でモデル出力１，２と実出力１，２が一致しない場合は、ステップＳ７へ進む。この場合は、システムモデル１，２のユニット、センサーモデル１，２が複合的に故障していると判定できる。従って、ステップＳ７からステップＳ８へ進み、システムモデル１のユニット１１，１２，１３、センサーモデル１、システムモデル２のユニット２１，２２，２３、センサーモデル２を故障モデルに置き換え、シミュレーションを行うことで、システムモデル１，２、センサーモデル１，２の故障を診断する。
【００６２】
ステップＳ１５の後はステップＳ１６へ進む。ステップＳ１６では、実センサー１の出力値を制御に使用しているか否かを判定し、実センサー１の出力値を制御に使用していない場合は、ステップＳ１８へ進む。ステップＳ１８では、ステップＳ１５で特定された実センサー１の故障モードを表示する。
【００６３】
一方、ステップＳ１６で実センサー１の出力値を制御に使用している場合は、ステップＳ１７へ進み、実センサー１の出力値が制御に使用されないように制御モードの切り換えを行う。ステップＳ１７の後はステップＳ１８へ進み、実センサー１の故障モードを表示する。ステップＳ１８の後は処理を終了する(RETURN)。
【００６４】
以上説明したように実施の形態１によれば、システムモデル１，２に対応する実機のシステムの故障を診断することができ、故障が発生している場合は、システムモデル１，２の各ユニットを故障モデルに置き換えることにより、各ユニットの故障モードを特定することが可能となる。また、センサーモデル１，２に対応する実機のセンサーが故障している場合は、センサーモデル１，２を故障モデルに置き換えることで、実機のセンサーの故障モードを判定することができる。
【００６５】
実施の形態２．
次に、本発明の実施の形態２について説明する。実施の形態２は、実施の形態１で説明した故障診断の手法を内燃機関システムに適用したものである。図４は、実施の形態２に係るシステムモデルを示す模式図である。このシステムモデルは、実機の内燃機関システムをモデル化したものであって、システムモデル１、システムモデル２、システムモデル３、システムモデル４を備えている。システムモデル１，２，３，４は、実機のシステムの実システム１，２，３，４にそれぞれ対応しており、実機のシステムと同様の入力を受けて、実機のシステムに対応した出力を出力するものである。
【００６６】
システムモデル１は、インジェクタ（ユニット１１）、スロットルバルブ（ユニット１２）、インテークマニホールド（ユニット１３）、吸気バルブ（ユニット１４）、シリンダ（ユニット１５）を備えている。システムモデル２は、排気バルブ（ユニット２１）、エキゾーストマニホールド（ユニット２２）を備えている。システムモデル３は、ＳＣ触媒（ユニット３１）を備えている。システムモデル４は、ＵＦ触媒（ユニット４１）を備えている。
【００６７】
システムモデル１の下流には、筒内圧センサーモデル１（ユニット１６）が設けられている。システムモデル２の下流には、Ａ／Ｆセンサーモデル２（ユニット２３）が設けられている。システムモデル３の下流には、Ｏ２センサーモデル３（ユニット３２）が設けられている。システムモデル４の下流には、Ｏ２センサーモデル４（ユニット４２）が設けられている。
【００６８】
システムモデル１には、燃料と空気が入力される。システムモデル１からの出力は筒内圧センサーモデル１に送られ、筒内圧センサーモデル１からはシステムモデル１のモデル出力として筒内圧モデル出力１が出力される。システムモデル１からの出力はシステムモデル２へ入力される。システムモデル２からの出力はＡ／Ｆセンサーモデル２に送られ、Ａ／Ｆセンサーモデル２からはシステムモデル２のモデル出力として空燃比（Ａ／Ｆ）モデル出力２が出力される。
【００６９】
また、システムモデル２からの出力はシステムモデル３へ入力される。システムモデル３からの出力はＯ２センサーモデル３に送られ、Ｏ２センサーモデル３からはシステムモデル３のモデル出力として酸素濃度モデル出力３が出力される。また、システムモデル３からの出力はシステムモデル４へ入力される。システムモデル４からの出力はＯ２センサーモデル４に送られ、Ｏ２センサーモデル４からはシステムモデル４のモデル出力として酸素濃度モデル出力４が出力される。
【００７０】
実施の形態２のシステムによる故障診断の手法は、基本的には実施の形態１と同様である。実施の形態２のシステムモデル数は実施の形態１よりも多いため、実施の形態２では、上流側のシステムモデルから順次に故障診断を実施する。
【００７１】
以下、実施の形態２における故障診断方法を説明する。先ず、筒内圧モデル出力１と実システム１から出力された筒内圧とを比較し、実システム１から出力された筒内圧の値が正常であるか否かを判定する。また、Ａ／Ｆモデル出力２と実システム２から出力されたＡ／Ｆ出力とを比較し、実システム２から出力されたＡ／Ｆ出力の値が正常であるか否かを判定する。
【００７２】
実システム１から出力された筒内圧の値が正常の場合は、システムモデル１に対応する実システム１が正常であると判定できる。また、実システム１から出力された筒内圧の値と、実システム２から出力されたＡ／Ｆ出力の値の双方が正常の場合は、システムモデル１に対応する実システム１とシステムモデル２に対応する実システム２の双方が正常であると判定できる。この場合は、酸素濃度モデル出力３と実システム３から出力された酸素濃度の値を比較し、下流に位置する実システム３の故障診断を行う。
【００７３】
一方、実システム１から出力された筒内圧の値が異常であり、且つ、実システム２から出力されたＡ／Ｆ出力の値が異常の場合は、実システム１、実システム２の双方が故障している可能性があるため、先ず、上流側のシステムモデル１に対応する実システム１の故障を診断する。
【００７４】
すなわち、システムモデル１内の各ユニット１１〜１５を故障モデルに置き換え、実システム１が故障しているか否かを判定する。この際、システムモデル１内の各ユニット１１，１２，１３，１４，１５を順次に故障モデルに置き換え、各故障モデルの故障モードで動作させた状態で、筒内圧モデル出力１と実システムからの出力が一致するか否かを判定する。また、各ユニット１１，１２，１３，１４，１５を単独で故障モデルに置き換えた場合に筒内圧モデル出力１と実システム１の出力が一致しない場合は、複数のユニットが複合的に故障していると考えられるため、複数のユニットを同時に故障モデルに置き換えて、筒内圧モデル出力１と実システム１の出力を比較する。更に、筒内圧センサーモデル１についても故障モデルに置き換え、実機システムの筒内圧センサーが故障しているか否かを判定する。
【００７５】
システムモデル１内のユニットを故障モデルに置き換えた後、筒内圧モデル出力１と実システム１からの筒内圧が一致した場合は、置き換えた故障モデルの故障モードで実システム１内の要素が故障していると判定する。そして、この状態で、Ａ／Ｆモデル出力２と実システム２からのＡ／Ｆ出力を比較し、実システム２が故障しているか否かを判定する。
【００７６】
実システム２からのＡ／Ｆ出力とＡ／Ｆモデル出力２とが一致する場合は、実システム２内の要素に故障は発生していないと考えられる。一方、実システム２からのＡ／Ｆ出力とＡ／Ｆモデル出力２が相違する場合は、システムモデル２内のユニット２１，２２が故障していると考えられる。従って、システムモデル２内のユニット２１，２２、Ａ／Ｆセンサーモデル２を故障モデルに置き換えて、各故障モデルの故障モードでシミュレーションを行い、Ａ／Ｆモデル出力２と実システム２からの出力が一致するか否かを判定する。Ａ／Ｆモデル出力２と実システム２からの出力が一致した場合は、置き換えた故障モデルの故障モードでシステムモデル２内のユニットが故障していると判定する。
【００７７】
このようにして、故障モデルへの置き換えにより、システムモデル１、システムモデル２のモデル出力と実システム１、実システム２の出力が一致した場合は、システムモデル１，２のユニットを故障モデルに置き換えた状態で、更に下流のシステムモデル３と実システムの出力を比較することで、実システム３の故障診断を行うことができる。従って、上流側のシステムから順に故障モデルへの置き換えを行い、モデル出力と実システムの出力を一致させていくことで、全てのシステムの故障を診断することが可能となる。
【００７８】
また、上流の実システム１の筒内圧の値が異常であり、且つ、実システムよりも下流に位置する実システム２のＡ／Ｆ出力の値が正常の場合は、筒内圧センサーモデル１に対応する実システム１の筒内圧センサーが故障していると判断する。この場合、筒内圧センサーモデル１を故障モデルに置き換え、筒内圧センサーモデル１の故障モードでシミュレーションを行い、実システム１のセンサーの故障モードを特定する。
【００７９】
同様にして、システムモデル１内のユニットを故障モデルに置き換え、筒内圧モデル出力１と実システム１からの筒内圧が一致した場合に、実システム２のＡ／Ｆ出力の値が異常であり、且つ、実システム３からの酸素濃度の値が正常の場合は、Ａ／Ｆセンサーモデル２に対応する実システムのＡ／Ｆセンサーが故障していると判断する。この場合、Ａ／Ｆセンサーモデル２を故障モデルに置き換え、Ａ／Ｆセンサーモデル２の故障モードでシミュレーションを行い、実システムのＡ／Ｆセンサーの故障モードを特定する。
【００８０】
実システム１の筒内圧センサーに故障が発生している場合は、筒内圧センサーの出力値を実際の内燃機関の制御に使うことができなくなるため、制御モードの切り換えを行う。例えば、筒内圧センサーモデル１についてのシミュレーションで得られた故障モードの逆関数を実システム１の出力に掛け合わせ、筒内圧センサーの故障による歪んでいる実システム１の筒内圧の出力を本来の出力波形に矯正する。そして、この修正信号を用いて制御を行うように制御モードを変更する。また、筒内圧センサーは異常であるが、Ａ／Ｆセンサーの出力が正常である場合、Ａ／Ｆセンサーの出力を用いた制御に切り換えるようにする。更に、筒内圧センサーの出力の代わりに筒内圧センサーモデル１からの出力を用いて制御を行う等の方法により、制御モードの切り換えを行う。同様にして、実システム２のＡ／Ｆセンサーが故障している場合、実システム３のＯ２センサーが故障している場合も、制御モードの変更で対処することができる。従って、故障時のフェールセーフモードの選択肢を大幅に拡げることが可能となる。
【００８１】
このように、システムモデル１，２，３，４の上流側のモデルから順次に故障診断を実施し、故障が発生している実機のシステムに対応するシステムモデル内のユニットを故障モデルに置き換えることで、置き換えられたシステムモデルに対応する実機のシステムに故障が生じているか否かを診断することが可能となる。また、システムモデル内のユニットを故障モデルに置き換えた後は、更に下流のシステムモデルと実システムの出力を比較することで、下流の実システムの故障診断を行うことが可能となる。従って、全てのシステムモデルについての故障診断を上流から順次に行い、故障が発生している場合は、故障ユニットを故障モデルに置き換えることで、各システムモデル１，２，３，・・・に対応した実機の全システムの故障を診断することができる。
【００８２】
以上説明したように実施の形態２によれば、実施の形態１の故障診断の手法を内燃機関システムに適用し、複数のシステムモデルを備えた構成において、上流側のシステムから順次に故障診断を実施することで、各システムモデル１，２，３・・・に対応した内燃機関システムの故障を診断することが可能となる。また、内燃機関システムが備える筒内圧センサー、Ａ／Ｆセンサー、Ｏ２センサーなどの各種センサーの故障を判定することが可能となる。
【図面の簡単な説明】
【００８３】
【図１】本発明の実施の形態１を説明するための模式図である。
【図２】故障モデルを説明するための模式図である。
【図３】実施の形態１に係る処理の手順を示すフローチャートである。
【図４】実施の形態２に係るシステムモデルを示す模式図である。
【符号の説明】
【００８４】
１１，１２，１３，１４，１５  システムモデル１内のユニット
２１，２２，２３  システムモデル２内のユニット
【図１】
0004674551.tif 000002
【図２】
0004674551.tif 000003
【図３】
0004674551.tif 000004
【図４】
0004674551.tif 000005