(57)【要約】  【課題】  異常検出対象となる新たな電子部品が増加した場合であっても、対応する新たな異常検出アルゴリズムを開発する手間を大幅に軽減させるとともに、情報の一元管理により信頼性の確保のための工数をも軽減させ、システムの変更に柔軟に対応できる異常検出装置を提供する。  【解決手段】  複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置であって、前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に固有の異常検出アルゴリズムを実行して異常検出する異常検出手段を備える。【選択図】  図５
2006190058.tif 000002
【特許請求の範囲】
【請求項１】
複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置であって、
前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に固有の異常検出アルゴリズムを実行して異常検出する異常検出手段を備えてなる異常検出装置。
【請求項２】
複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置であって、
前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルと、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する異常検出手段を備えてなる異常検出装置。
【請求項３】
複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置であって、
前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルと、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する異常検出手段を備えてなる異常検出装置。
【請求項４】
前記データテーブルは異常検出対象となる電子部品毎に固有の判定条件データが設定され、前記判定条件データは少なくとも前記電子部品のアドレス情報を含み、前記異常検出アルゴリズムは前記アドレス情報に基づいて前記電子部品の状態データを入力する請求項２または３記載の異常検出装置。
【請求項５】
前記データテーブルは異常検出対象となる電子部品毎に固有の判定条件データが設定され、前記判定条件データは少なくとも判定タイミングを規定する判定タイミングデータ、判定基準値を規定する判定閾値データを含む請求項２から４の何れかに記載の異常検出装置。
【請求項６】
前記判定条件データはさらに異常判定回数を計数する異常計数カウンタ、前記異常計数カウンタの閾値を規定する異常計数閾値カウンタを含む請求項５記載の異常検出装置。
【請求項７】
前記グループが、前記演算処理装置に対してアナログ信号を出力する電子部品、前記演算処理装置に対してデジタル信号を出力する電子部品、前記演算処理装置との間でデータ通信を行なう電子部品、前記演算処理装置に対して異常状態信号を出力する電子部品の何れかのグループを含む請求項１または３記載の異常検出装置。
【請求項８】
複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出方法であって、
前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に固有の異常検出アルゴリズムを実行して異常検出する異常検出方法。
【請求項９】
複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出方法であって、
前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルを生成し、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する異常検出方法。
【請求項１０】
複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出方法であって、
前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルを生成し、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する異常検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置及び方法に関する。
【背景技術】
【０００２】
一般に、制御システムにはＣＰＵ等を備えた演算処理装置が設けられ、予め設定された周期で繰り返し実行される制御プログラムに基づいて所定の機能が実現されるように構成されている。例えば、システムの状態を監視する各種のセンサから入力される信号や関連する他の演算処理装置からの通信データに基づいて、所定の機能を実現するように複数のアクチュエータ等を駆動制御する場合には、センサからの入力処理、他の演算処理装置との通信処理、演算処理、アクチュエータへの出力処理といった各種の処理が所定の周期で繰り返されるものであるが、このような制御システムには、センサ、他の演算処理装置、または、アクチュエータ等でなる各種の電子部品の作動状態が正常であるのか異常であるのかを検出して、重大な事故等を未然に防止する異常検出処理を実行する異常検出装置が設けられている。
【０００３】
従来、この種の異常検出装置は、当該演算処理装置に接続された電子部品毎に個別に準備された異常検出アルゴリズムを夫々実行するように構成されていた。そのため、検出対象となる電子部品の数が増えるとそれだけ異常検出処理のための個別のプログラムを追加開発する必要があるばかりか、処理が増えてＣＰＵの負荷が増大するために、本来のシステム制御に支障を来たす虞があることから、複数の電子部品の異常検出処理を分割して異なる演算周期で行うことにより、１周期で実行される異常検出用の処理時間を短縮し、信頼性を向上させる技術が提案されている。
【特許文献１】特開２００２−２５９１５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上述した従来の異常検出処理によれば、異常検出対象となる電子部品が増えるにつれてそれだけ多くの異常検出アルゴリズム、つまり異常検出プログラムを構築しなければならず、プログラム容量の増大を招き、ＲＯＭ等の部品コストが上昇するばかりか、そのような個別の異常検出アルゴリズムによる場合には情報の一元管理ができていないために、プログラムの開発工数、信頼性確保のためのデバッグ工数等、生産コストが上昇するという重大な問題があった。
【０００５】
本発明は、上述の従来欠点に鑑み、異常検出対象となる新たな電子部品が増加した場合であっても、対応する新たな異常検出アルゴリズムを開発する手間を大幅に軽減させるとともに、情報の一元管理により信頼性の確保のための工数をも軽減させ、システムの変更に柔軟に対応できる異常検出装置及び方法を提供する点にある。
【課題を解決するための手段】
【０００６】
上述の目的を達成するため、本発明による異常検出装置の第一の特徴構成は、複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置であって、前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に固有の異常検出アルゴリズムを実行して異常検出する異常検出手段を備えてなる点にある。
【０００７】
上述の構成によれば、異常検出パターンに基づいて分割されたグループ毎に固有の異常検出アルゴリズムを実行するため、異常検出アルゴリズムを最小限度且つ最適に構成でき、また、新たに電子部品が増加した場合であっても、それに対応可能な既存の検出アルゴリズムを用いることにより、新たな異常検出アルゴリズムを開発する手間を大幅に軽減することができるのである。また、夫々のグループ単位で情報の一元管理を行なうことができ、システムの変更に柔軟に対応が可能となるのである。
【０００８】
同第二の特徴構成は、複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置であって、前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルと、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する異常検出手段を備えてなる点にある。
【０００９】
上述の構成によれば、データテーブルを参照しながら同一の異常検出アルゴリズムで各電子部品の異常を検出できるようになり、異常検出対象として新たな電子部品が追加されたときであっても、当該電子部品に対するデータテーブルを追加するのみで対応でき、新たな異常検出アルゴリズムを開発する手間を大幅に軽減することができるのであり、そのような情報テーブルを参照することにより各電子部品情報の一元管理を容易行なうことができるようになるのである。
【００１０】
同第三の特徴構成は、複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出装置であって、前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルと、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する異常検出手段を備えてなる点にある。
【００１１】
上述の構成によれば、異常検出パターンに基づいて分割されたグループ毎に固有の異常検出アルゴリズムを実行するため、異常検出アルゴリズムを最小限度且つ最適に構築でき、また、各電子部品は同一構成のデータテーブルを参照して実行されるため、各電子部品情報の一元管理を容易行なうことができるのである。また、新たに異常検出対象となる電子部品が増加した場合であっても、データテーブル内に当該電子部品に対応した新たなデータ領域を形成するのみで、当該データテーブルに対応する既存の検出アルゴリズムを用いることにより異常検出が可能となるので、新たな異常検出アルゴリズムを開発する手間を大幅に軽減できるとともに、システム変更に柔軟に対応することが可能となるのである。
【００１２】
同第四の特徴構成は、上述の第二または第三特徴構成に加えて、前記データテーブルは異常検出対象となる電子部品毎に固有の判定条件データが設定され、前記判定条件データは少なくとも前記電子部品のアドレス情報を含み、前記異常検出アルゴリズムは前記アドレス情報に基づいて前記電子部品の状態データを入力する点にある。
【００１３】
上述の構成によれば、データテーブルに設定された各電子部品に対する異常判断のための判定条件データを参照することにより、同一の異常検出アルゴリズムを使用して異常判断することができるようになるのであり、さらにデータテーブルに設定された各電子部品のアドレス情報を基にして、同一の状態データ入力アルゴリズムにより各電子部品の状態データを入力できるようになるのである。
【００１４】
同第五の特徴構成は、上述の第二から第四の何れかの特徴構成に加えて、前記データテーブルは異常検出対象となる電子部品毎に固有の判定条件データが設定され、前記判定条件データは少なくとも判定タイミングを規定する判定タイミングデータ、判定基準値を規定する判定閾値データを含む点にある。
【００１５】
上述の構成によれば、各電子部品に対応した最適な判定タイミング及び判定基準値に基づいて、確実に異常検出を行なうことができるようになるのである。
【００１６】
同第六の特徴構成は、上述の第五特徴構成に加えて、前記判定条件データはさらに異常判定回数を計数する異常計数カウンタ、前記異常計数カウンタの閾値を規定する異常計数閾値カウンタを含む点にある。
【００１７】
上述の構成によれば、本来の異常とは異なるノイズ等といった偶発的に発生する異常判定を回避して、より信頼性の高い異常検出を行なうことが可能となるのである。
【００１８】
同第七の特徴構成は、上述の第一または第三特徴構成に加えて、前記グループが、前記演算処理装置に対してアナログ信号を出力する電子部品、前記演算処理装置に対してデジタル信号を出力する電子部品、前記演算処理装置との間でデータ通信を行なう電子部品、前記演算処理装置に対して異常状態信号を出力する電子部品の何れかのグループを含む点にある。
【００１９】
上述の構成とすることにより、最小単位の異常検出アルゴリズムで効率及び効果の高い異常検出アルゴリズムを構成することができるようになるのである。
【００２０】
本発明による異常検出方法の第一の特徴構成は、複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出方法であって、前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に固有の異常検出アルゴリズムを実行して異常検出する点にある。
【００２１】
同第二の特徴構成は、複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出方法であって、前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルを生成し、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する点にある。
【００２２】
同第三の特徴構成は、複数の電子部品との間で信号を入力または出力するための演算処理を実行するとともに、前記電子部品に対する異常の有無を判断する異常検出処理を実行する異常検出方法であって、前記電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルを生成し、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する点にある。
【発明の効果】
【００２３】
以上説明した通り、本発明によれば、異常検出対象となる新たな電子部品が増加した場合であっても、対応する新たな異常検出アルゴリズムを開発する手間を大幅に軽減させるとともに、情報の一元管理により信頼性の確保のための工数をも軽減させ、システムの変
更に柔軟に対応できる異常検出装置及び方法を提供することができるようになった。
【発明を実施するための最良の形態】
【００２４】
以下に本発明による異常検出装置を車両の走行制御システムに適用した場合を説明する。図１に示すように、車両の走行制御システムは複数のＥＣＵ（電子制御ユニット）がＣＡＮ（コントローラエリアネットワーク）バス１０によりネットワーク接続されることにより構成されている。各ＥＣＵは、例えば、エンジン制御用ＥＣＵ−Ａ、自動変速機（ＡＴ）制御用ＥＣＵ−Ｂ、ＡＢＳ制御用ＥＣＵ−Ｃ、ＴＲＣ（トラクションコントロール）制御用ＥＣＵ−Ｄ等で構成される。
【００２５】
前記複数のＥＣＵは夫々にＣＰＵ等を備えた演算処理装置が設けられ、予め設定された周期で繰り返し実行される制御プログラムに基づいて所定の機能が実現されるように構成されている。例えば、エンジン制御用ＥＣＵであれば、吸気圧センサやＡ／Ｆセンサ等の各センサからの入力信号や関連する他のＥＣＵ（例えば自動変速機制御用ＥＣＵ等）からの通信データに基づいて、所定のエンジン機能を実現するように、燃料噴射弁等のアクチュエータを駆動制御する。
【００２６】
前記ＣＡＮバス１０はＳＡＥ Ｊ１９３９で規定され、通信データは、図２に示すよう
な通信フレーム（データフレーム）によって送受信されるもので、データフレームは、調停フィールド、制御フィールド、及びデータフィールド等を備えており、以下に詳述する。
【００２７】
１．データフレームの各構成要素の説明：(1) ＳＯＦ（Start Of Frame）は、フレームの開始示す識別子であり、常に“０”である。(2) ｉｄｅｎｔｉｆｅｒは、標準フォーマットのＩＤであり、詳細については、後述する「２．１．調停フィールド」の項で説明する。(3) ＳＲＲ（Substitute Remote Request）は、後述する (4)のＩＤＥと組み合わせ
て標準フレームフォーマット又は拡張フレームフォーマットのいずれか一方を選択するためのビットである。(4) ＩＤＥ（Identifier Extension bit）は、拡張フレームフォーマットを使用することを示すビットであり、ＳＲＲビットが“１”で、ＩＤＥビットが“１”のときには拡張フレームフォーマットが、ＳＲＲビットがなしで、ＩＤＥビットが“０”のときには標準フレームフォーマットが選択されていること示す。(5) ｉｄｅｎｔｉｆｅｒ ｅｘｔ．は、標準フレームフォーマットに対して拡張していることを示すＩＤであ
る。詳細については、後述する「２．１．調停フィールド」の項で説明する。(6) ＲＴＲ（Remote Transmission Request）は、リモート送信の要求を示すビットである。なお、
リモート送信とは、あるシステムへデータ送信を要求することをいい、このＲＴＲビットが“０”のときは通常送信（データフレーム送信時）、“１”のときはリモート送信（リモートフレーム送信時）であることを示す。(7) Ｒ１，Ｒ０は、将来のデータ長拡張のために予約されているビット（予約ビット）であり、現在はすべて“０”である。後述の(8)ＤＬＣビットと組み合わせてデータ長が拡張される予定になっている。(8) ＤＬＣ（Data Length Code）は、データフィールドのデータであり、バイト長を設定するためのビッ
トである。(9) Ｄａｔａ Ｆｉｅｌｄは、送信データを格納するためのデータフィールド
である。ＳＡＥ Ｊ１９３９では、８バイトデータを推奨している。(10)ＣＲＣ（Cyclic Redundancy Check）は、送信データの誤りのチェックコード格納用フィールドである。(11)ＣＲＣ ｄｅｌｉｍｉｔｅｒは、ＣＲＣ区切り記号であり、常に“１”となっている。(12)ＡＣＫ（Acknowledgement）は、正常受信確認のためのフィールドであり、送信側は“１１”を格納する。受信側はＣＲＣフィールドでデータチェックした結果が正常であれば“０１”、異常がある場合には“１１”を格納する。(13)ＥＯＦ（End Of Frame）は、送信終了を示すフィールド（７ビット）であり、常に“１１１１１１１”となっている。
【００２８】
２．ＰＤＵ（プロトコルデータユニット）についての説明：次に、図２中のＰＤＵにつ
いて説明すると、ＰＤＵはデータフレーム内の主要な情報であり、図２に示すような調停フィールドの (2)ｉｄｅｎｔｉｆｅｒ， (5)ｉｄｅｎｔｉｆｅｒ ｅｘｔ．及び (9)Ｄａ
ｔａ Ｆｉｅｌｄにより構成されている。また、このデータからＰＧＮ（Parameter Group
Number）が決定される。ここでＰＧＮはデータを識別するための番号であり、調停フィ
ールド（詳細は下記の２．１．調停フィールドの説明を参照）のＲ（予備）、ＤＰ（データページ）及びＰＦ（ＰＤＵフォーマット）等から構成されている（データ長３バイト）。
【００２９】
２．１．調停フィールド調停フィールドは、２９ｂｉｔのＩＤと３ｂｉｔのコントロールビットとから構成される。図３に調停フィールドの概略を示す。以下、調停フィールドの各部について説明する。(1) 優先度は、メッセージの優先順位を決めるために用いられ、“０００”が最も優先順位が高く、“１１１”が最も優先順位が低い。(2) 予備は、ＳＡＥが将来の機能拡張用として予約しているビット。現在は未使用のため“０”とする。(3) データページは、２つあるＰＤＵのページのセレクタとして使用する。ページ０から使用する。(4) ＰＤＵフォーマット（ＰＦ）は、ＰＤＵ Ｓｐｅｃｉｆｉｃ〔(7)参照〕の内容を決めるパラメータであり、ＰＧＮを構成する１つのフィールドである。(5) ＳＲＲは、「１．データフレームの各構成要素の説明」の項目(3) 参照。(6) ＩＤＥは、「１．データフレームの各構成要素の説明」の項目(4) 参照。(7) ＰＤＵ Ｓｐｅｃｉｆｉｃ（
ＰＳ）は、ＰＦの値により、送信先アドレス（ＤＡ）かグループ拡張（ＧＥ）のどちらか一方となる。(8) ソースアドレスは、メッセージの送信元アドレスが記述される。各システムのアドレスはＳＡＥＪ１９３９で規定されている。
【００３０】
２．２．制御フィールド：制御フィールドは、図４に示すように、予約ビット（２ｂｉｔ）とＤＬＣ（４ｂｉｔ）とから構成される。
【００３１】
２．３．データフィールド：送信データを格納するためのフィールドであり、ＳＡＥ 
Ｊ１９３９ではデータ長８バイト固定を推奨している。
【００３２】
上述のＣＡＮバスで接続された複数のＥＣＵからなる車両の走行制御システムにおける異常検出装置のブロック構成を図５に示す。前記異常検出装置は、前記複数のＥＣＵに接続されている各センサからのアナログ入力に対して、ＡＤコンバータ１５を介してＡＤ値（電圧値）の取得処理を行ない、その電圧値によって前記各センサからの入力異常検出を共通に行なうセンサ入力異常検出部２０と、前記複数のＥＣＵに接続されている各アクチュエータへの出力値とそのモニタ値（デジタル入出力）とを取得処理し、その電圧値によって前記各アクチュエータへの出力異常検出を共通に行なうアクチュエータ出力異常検出部３０と、ＥＣＵ間での通信状態の異常検出を共通に行なう通信異常検出部４０と、他のＥＣＵ（或いはシステム）での異常検出結果に基づいて異常検出を共通に行なうＥＣＵ異常検出部５０と、異常検出に必要な判定値やカウンタ値等からなる情報テーブル０１を格納するテーブルメモリ６０とを備えて構成される。
【００３３】
前記センサ入力異常検出部２０は、図６に示すように、状態データとしての前記各センサからのＡＤ値を取得し、前記テーブルメモリ６０に格納するＡＤ値取得処理部２１と、前記テーブルメモリ６０に格納した各センサのＡＤ値と予め前記テーブルメモリ６０に格納されている異常判定閾値（上下限）とを比較して前記各ＡＤ値がその閾値を超えていないか判定し、閾値を超えたと判定された場合に前記テーブルメモリ６０内に区画された各センサに対応した異常検出カウンタをカウントアップして異常検出時間を計時する閾値判定処理部２２と、各センサに対応する前記異常検出カウンタによるカウント値が前記テーブルメモリ６０に予め格納されている異常検出時間閾値である異常検出カウント閾値を超えたときに異常であると判定する異常判定処理部２３と、前記異常判定処理部２３により異常と判定された場合に判定結果データとしての異常フラグを出力する異常確定処理部２
４とを備えて構成される。
【００３４】
前記センサ入力異常検出部２０は、予め前記テーブルメモリ６０に格納されている各センサに対応する異常判定閾値（上下限）と、同じく異常検出カウント閾値と、その都度前記テーブルメモリ６０に格納される各種センサに対応するＡＤ値と、同じく異常検出カウンタとからなる判定条件データが、夫々１つの前記情報テーブル０１に纏められることにより、情報の一元管理や、複数の異常判定条件等を順次前記テーブルメモリ６０から取り出して処理を行なうことが可能となっている。
【００３５】
同様に、前記アクチュエータ出力異常検出部３０は、図７に示すように、デジタル出力処理部３１から出力された前記各アクチュエータへのデジタル出力値（指令値）に対して状態データとしてのそのアクチュエータ側から帰還されるモニタ値を入力処理して前記テーブルメモリ６０に格納するデジタル出力値（指令値）／入力値（モニタ値）処理部３２と、前記テーブルメモリ６０に格納された各アクチェータに対応する前記指令値と前記モニタ値とを比較演算し予め前記テーブルメモリ６０に格納されている各アクチェータに対応する異常判定閾値とを比較することにより前記指令値と前記モニタ値が異なると確認された場合に前記テーブルメモリ６０内に形成する前記各アクチュエータに対応したカウンタ（異常検出カウンタ）をカウントアップする指令値／モニタ値確認部３２と、各種アクチュエータに対応する前記異常検出カウン他の値が前記テーブルメモリ６０に予め格納されている異常検出カウント閾値を超えたときに異常であると判定する異常判定処理部３３と、前記異常判定処理部３３により異常と判定された場合に判定結果データとしての異常フラグを出力する異常確定処理部３４とを備えて構成される。
【００３６】
前記アクチュエータ出力異常検出部３０は、予め前記テーブルメモリ６０に格納されている各アクチュエータに対応する異常判定閾値と、同じく異常検出カウント閾値と、その都度前記テーブルメモリ６０に格納される各アクチュエータに対応する指令値及びモニタ値と、同じく異常検出カウンタとからなる判定条件データが、夫々１つの情報テーブル０１に纏められることにより、情報の一元管理や、複数の異常判定条件等を前記テーブルメモリ６０から順次取り出して処理を行なうことが可能となっている。
【００３７】
前記通信異常検出部４０は、図８に示すように、後述の通信割込み処理で実行される前記ＥＣＵ間での通信状態に対して、サムエラー、ＯＲＦＥエラー（オーバーランエラー／フレーミングエラー）、受信なしエラー、識別子エラー等の判定を行ない前記テーブルメモリ６０内に区画される各エラーに対応してカウント値を順次カウントアップする通信エラー検出部４４と、前記カウント値が前記テーブルメモリ６０に予め格納されている通信エラーカウント閾値を超え真のエラーとして判断された場合に前記テーブルメモリ６０内に区画される各ＥＣＵ間での通信状態に対応したカウンタ（異常検出カウンタ）を順次更新するカウンタチェック部４１と、前記各種ＥＣＵの通信データに対応する前記異常検出カウンタの値が前記テーブルメモリ６０に予め格納されている異常検出カウント閾値を超えたときに異常であると判定する異常判定処理部４２と、前記判定処理部４２により異常と判定された場合に異常フラグを出力する異常確定処理部４３とを備えて構成される。
【００３８】
前記通信異常検出部４０は、予め前記テーブルメモリ６０に格納されている各ＥＣＵ間の通信状態に対応する前記サムエラー、前記ＯＲＦＥエラー、前記受信なしエラー、前記識別子エラーに対する通信エラーカウント閾値と、同じく異常検出カウント閾値と、その都度前記テーブルメモリ６０に格納される各ＥＣＵ間の通信状態に対応する前記サムエラー、前記ＯＲＦＥエラー、前記受信なしエラー、前記識別子エラーの通信エラーカウンタと、同じく異常検出カウンタとが、前記判定条件データとして夫々１つの前記情報テーブル０１に纏められることにより、情報の一元管理や、複数の異常判定条件等を前記テーブルメモリ６０から順次取り出して処理を行なうことが可能となっている。
【００３９】
前記ＥＣＵ異常検出部５０は、図９に示すように、ＣＡＮバスを介して入力され他のＥＣＵによって検出された異常情報や、ローカル通信部を介して入力され内部のスレーブＣＰＵによって検出された異常情報があった場合に前記テーブルメモリ６０内に当該異常情報を格納する異常情報取り込み部５１と、前記異常情報があった場合に前記テーブルメモリ６０に区画される前記各ＥＣＵに対応するカウンタ（異常検出カウンタ）をカウントアップし前記テーブルメモリ６０に予め格納されている異常検出カウント閾値を超えたときに異常であると判定する異常参照部５２と、前記異常参照部５２により異常と判定された場合に判定結果データとしての異常フラグを出力する異常確定処理部５３とを備えて構成される。
【００４０】
前記ＥＣＵ異常検出部５０は、予め前記テーブルメモリ６０に格納されている各ＥＣＵに対応する異常検出カウント閾値と、その都度前記テーブルメモリ６０に格納される前記各ＥＣＵに対応する異常情報と、同じく異常検出カウンタとが、夫々１つの前記情報テーブル０１に纏められることにより、情報の一元管理や、複数の異常判定条件等を前記テーブルメモリ６０から順次取り出して処理を行なうことが可能となっている。
【００４１】
前記センサ入力異常検出部２０、前記アクチュエータ出力異常検出部３０、前記通信異常検出部４０、前記ＥＣＵ異常検出部５０において、何れかの異常フラグが出力されると所定の表示部に、異常情報に基づいた警告表示が表示されるように構成されている。
【００４２】
上述した異常検出装置が構成される制御システムに、新たに電子部品が接続され、或いは概接続の電子部分に対して新たに異常検出する必要が生じた場合には、当該電子部品が、例えばセンサであれば、前記センサ入力異常検出部２０に対応する前記情報テーブル０１に、前述した前記センサに関する各種情報、つまり、当該電子部分に対する異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データを格納する領域を追加設定するのみで新たな異常検出システムを構築することが可能となっている。また、アクチュエータであれば、前記アクチェータ出力異常検出部３０に対応する前記情報テーブル０１に、同様に前記アクチュエータに関する各種情報を格納する領域を構成するのみで新たなシステムを構築することが可能となっている。
【００４３】
各ＥＣＵのメインルーチンは、例えば図１５のフローチャートに示すように、電源の立ち上り後の初期化処理（図示せず）の後に、前記各センサ等に対する信号の入力処理と（ＳＡ１）、前記入力信号に基づいて対象電子部品を制御するための演算処理と（ＳＡ２）、前記演算結果に基づいてアクチュエータ等へ所定の制御信号処理と（ＳＡ３）、その後各電子部品に対する異常の有無の検出処理（ＳＡ４）を所定の内部タイマー割り込みがかかる度に繰り返すように構成されるとともに、通信割り込み処理において他のＥＣＵからの通信処理が実行される。
【００４４】
以下、前記複数のＥＣＵからなる制御システムの異常検出処理（ＳＡ４）について、図１０〜図１４に示すフローチャートに基づいて詳述する。
【００４５】
ステップＳＡ４における異常検出アルゴリズムは、異常検出パターンに基づいて分割された複数のグループ毎に同一の異常検出アルゴリズムが繰り返し実行されるように構成され、各異常検出アルゴリズムは上述のテーブルメモリ６０を参照することによって処理が進められる。先ず、上述したテーブルメモリ６０の説明では触れていないが、前記データテーブル６０に設定された異常検出対象となる電子部品毎に設定された異常検出タイミングデータに基づいて、異常検出処理タイミングであると判断されたときに（Ｓ１）、前記ＡＤ値取得処理部２１により、前記各センサのＡＤ値が検出され、前記ＡＤ値が前記テー
ブルメモリ６０に格納される（Ｓ２）。
【００４６】
前記格納されたＡＤ値は、前記閾値判定処理部２２により、前記テーブルメモリ６０に予め格納されている異常判定閾値である上限値及び下限値と比較され（Ｓ３、Ｓ４）、上限値或いは下限値を超えた場合には前記テーブルメモリの異常検出カウンタ（異常検出時間）をカウントアップする（Ｓ５）。また、上限値及び下限値の範囲以内であれば、前記異常検出カウンタをクリアする（Ｓ６）。
【００４７】
前記異常検出カウンタの値は、前記異常判定処理部２３により前記テーブルメモリ６０に予め格納されている異常検出カウント閾値（判定時間）と比較され（Ｓ７）、前記異常検出カウント閾値を超えた場合に異常判定し、異常確定処理部２４により異常フラグが出力される（Ｓ８）。また、他のセンサ入力があれば前記ステップＳ２に戻る（Ｓ９）。
【００４８】
尚、ステップＳ２〜Ｓ８について、センサ毎にステップＳ２〜Ｓ８を行う構成としてもよいし、または、各センサについて順次各ステップを行なう構成としてもよい。
【００４９】
予め設定された異常検出処理タイミングが、各アクチェータへの出力信号についての異常検出処理タイミングになったとき（Ｓ１）、前記デジタル出力値（指令値）／入力値（モニタ値）処理部３２により、前記各センサのデジタル出力値（指令値）とそのモニタ値が検出され、前記指令値と前記モニタ値とを前記テーブルメモリ６０に格納する（Ｓ１０）。
【００５０】
前記格納された指令値とモニタ値は、指令値／モニタ値確認部３３により、前記テーブルメモリ６０に予め格納されている異常判定閾値と比較されることにより、指令値とモニタ値が等しいか否かの確認を行い（Ｓ１１）、異なると確認された場合には前記テーブルメモリの異常検出カウンタ（異常検出時間）をカウントアップする（Ｓ１２）。また、等しいと確認された場合には前記異常検出カウンタをクリアする（Ｓ１３）。
【００５１】
前記異常検出カウンタは、前記異常判定処理部３４により前記テーブルメモリ６０に予め格納されている異常検出カウント閾値（判定時間）と比較され（Ｓ１４）、前記異常検出カウント閾値を超えた場合に異常判定し、異常確定処理部３５により異常フラグが出力される（Ｓ１５）。また、他のアクチェータへの出力があれば前記ステップＳ１０に戻る（Ｓ１６）。
【００５２】
尚、ステップＳ１０〜Ｓ１５について、アクチェエータ毎にステップＳ１０〜Ｓ１５を行う構成としてもよいし、または、各アクチュエータについて順次各ステップを行なう構成としてもよい。
【００５３】
予め設定された異常検出処理タイミングが、各ＥＣＵ間の通信状態についての異常検出処理タイミングになったとき（Ｓ１）、通信タイミング時に前記通信エラー検出部４４により、サムエラー、ＯＲＦＥエラー（オーバーランエラー／フレーミングエラー）、受信なしエラー、識別子エラー等の判定が行われ前記テーブルメモリ６０内に形成された前記各種エラーに対応して順次カウントアップされた通信エラーカウンタに対して、夫々に対応する通信エラーカウント閾値との比較が行なわれる（Ｓ１７、Ｓ１８、Ｓ１９、Ｓ２０）。何れかのエラーが通信エラーカウント閾値を超えた場合には、前記テーブルメモリ６０の異常検出カウンタ（異常検出時間）をカウントアップする（Ｓ２１）。また、いずれの通信エラーカウンタの値に対しても通信エラーカウント閾値以内であれば、前記異常検出カウンタはクリアする（Ｓ２２）。
【００５４】
前記異常検出カウント値は、前記異常判定処理部４２により前記テーブルメモリ６０に
予め格納されている異常検出カウント閾値（判定時間）と比較され（Ｓ２３）、前記異常検出カウント閾値を超えた場合に異常判定し、異常確定処理部４３により異常フラグが出力される（Ｓ２４）。また、他のＥＣＵからの通信データがあれば前記ステップＳ１７に戻る（Ｓ２５）。
【００５５】
尚、ステップＳ１７〜Ｓ２４について、ＥＣＵ間の通信状態毎にステップＳ１７〜Ｓ２４を行う構成としてもよいし、または、各ＥＣＵ間通信状態について順次各ステップを行なう構成としてもよい。
【００５６】
予め設定された異常検出処理タイミングが、各ＥＣＵの異常情報についての異常検出処理タイミングになったとき（Ｓ１）、前記異常参照部５２は、前記異常情報取り込み部５１によって他のＥＣＵからの異常情報が格納された前記テーブルメモリ６０から、前記異常情報の有無を検出し（Ｓ２６）、異常情報があれば前記テーブルメモリ６０の異常検出カウント値（異常検出時間）をカウントアップする（Ｓ２７）。また、前記異常情報がなければ、前記異常検出カウント値はクリアする（Ｓ２８）。
【００５７】
また、前記異常参照部５２は、前記異常検出カウント値と前記テーブルメモリ６０に予め格納されている異常検出カウント閾値（判定時間）とを比較し（Ｓ２９）、前記異常検出カウント閾値を超えた場合に異常判定し、異常確定処理部５３により異常フラグが出力される（Ｓ３０）。また、他のＥＣＵの異常情報があれば前記ステップＳ２６に戻る（Ｓ３１）。
【００５８】
尚、ステップＳ２６〜Ｓ３０について、ＥＣＵの異常情報毎にステップＳ１７〜Ｓ２４を行う構成としてもよいし、または、各ＥＣＵの異常情報について順次各ステップを行なう構成としてもよい。
【００５９】
このように、電子部分を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルを生成し、前記データテーブルを参照して各電子部分に同一の異常検出アルゴリズムを実行して異常検出することによって、新たな異常検出対象が増加したときであっても、異常検出のためのプログラムを新たに生成する開発負荷が軽減されるようになる。
【００６０】
以下、別実施形態について説明する。上述した実施形態では、異常検出するためのアルゴリズムをアナログ信号を出力するセンサ系電子部品、アクチュエータに対するモニタ信号を検出するアクチュエータ系電子部品、ＥＣＵに対する通信異常を検出する通信系電子部品等にグループ分割した例を示したが、分割基準はこれに制限されるものではなく、異常検出パターンに基づいて分割するものであれば、これ以外のグループに分割するものであってもよい。
【００６１】
上述した実施形態では、通信異常データを除いて各グループに対する異常検出処理において夫々の電子部品からの信号を入力するものを説明したが、図１５におけるステップＳＡ１の処理において信号を入力してその値をデータテーブルに格納するように構成するものであってもよい。また、各種の異常検出カウンタのカウントアップ処理を各ルーチンで実行するものを説明したが、所定時間のタイマー割り込み処理でカウントアップし、メインルーチンでは異常カウンタの値と異常カウント閾値とを比較して異常フラグを設定する判断のみ行うようにしてもよい。
【００６２】
また、各電子部品に対するハードウェア構成で割り付けられた入力ポートアドレス等のアドレス情報を前記データテーブルの電子部品毎に設定可能に構成し、新たな異常検出対
象が増加したときに、当該対象部品に対するアドレス情報を追加するように構成すれば、入力処理ルーチン（ステップＳＡ１）でデータテーブルに記憶されたアドレス情報を参照しながら入力処理を行なうことで信号の入力処理ルーチンも共用でき、新たな入力処理アルゴリズムを開発する必要も無くなるようになる。
【００６３】
上述のデータテーブルは不揮発性のＲＡＭ上に構築することが可能であるが、ＲＡＭ上に区画するデータテーブルを定義する初期化プログラムを生成しておけば、通常の揮発性ＲＡＭであっても使用可能である。
【００６４】
上述した実施形態では、電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に前記電子部品の異常の有無を判定するための状態データと、異常の有無を判定する判定条件データと、判定結果を示す判定結果データが格納されるデータテーブルを生成し、前記データテーブルを参照して各電子部品に同一の異常検出アルゴリズムを実行して異常検出する異常検出方法について説明したが、複数のグループに分割するものでなくともよい。また、電子部品を異常検出パターンに基づいて複数のグループに分割し、分割されたグループ毎に固有の異常検出アルゴリズムを実行して異常検出するものであれば、上述のデータテーブルを構築したくとも、グループ毎に同一のプログラムが使用できる点において、異常検出アルゴリズムの新たな構築のための開発負荷を軽減できるという一定の効果は得られる。
【図面の簡単な説明】
【００６５】
【図１】車両走行制御システムのネットワーク構成の説明図
【図２】ネットワーク構成のデータ形式の説明図
【図３】ネットワーク構成のデータ形式の説明図
【図４】ネットワーク構成のデータ形式の説明図
【図５】異常検出装置のブロック構成図
【図６】センサ異常検出部のブロック構成図
【図７】アクチュエータ異常検出部のブロック構成図
【図８】通信異常検出部のブロック構成図
【図９】ＥＣＵ異常検出部のブロック構成図
【図１０】制御システムの異常検出におけるフローチャート
【図１１】センサ異常検出におけるフローチャート
【図１２】アクチュエータ異常検出におけるフローチャート
【図１３】通信異常検出におけるフローチャート
【図１４】ＥＣＵ異常検出におけるフローチャート
【図１５】異常検出装置を構成する制御システムにおけるフローチャート
【符号の説明】
【００６６】
０１：情報テーブル
１５：ＡＤコンバータ
２０：センサ異常検出部
３０：アクチュエータ異常検出部
４０：通信異常検出部
５０：ＥＣＵ異常検出部
６０：テーブルメモリ
【図１】
2006190058.tif 000003
【図２】
2006190058.tif 000004
【図３】
2006190058.tif 000005
【図４】
2006190058.tif 000006
【図５】
2006190058.tif 000007
【図６】
2006190058.tif 000008
【図７】
2006190058.tif 000009
【図８】
2006190058.tif 000010
【図９】
2006190058.tif 000011
【図１０】
2006190058.tif 000012
【図１１】
2006190058.tif 000013
【図１２】
2006190058.tif 000014
【図１３】
2006190058.tif 000015
【図１４】
2006190058.tif 000016
【図１５】
2006190058.tif 000017