(57)【特許請求の範囲】
【請求項１】
状態が変化する監視対象である車両機器の第１状態を検出して情報処理した検出情報を出力する監視部と、
前記検出情報を受信して情報処理した処理情報に基づいて前記車両機器とは異なる別の車両機器である制御対象を制御する制御部と、
前記制御部の情報処理の異常を判定する判定部と、
を備え、
前記判定部は、前記第１状態を前記監視部が正常に検出及び情報処理した場合の正常検出情報と、前記制御部が前記検出情報を正常に情報処理した場合の正常処理情報とを有し、
前記判定部は、
前記正常検出情報と前記監視部から読み出した前記検出情報に基づいて前記監視部の情報処理の異常を判定する第１判定部と、
前記第１判定部が前記監視部の情報処理の異常を判定した場合に前記正常検出情報を前記制御部に出力する出力部と、
前記正常処理情報と前記制御部から読み出した前記処理情報に基づいて前記制御部の情報処理の異常を判定する第２判定部とを有し、
前記第２判定部は、前記第１判定部の判定後に前記制御部の情報処理の異常を判定し、且つ、前記出力部が前記正常検出情報を出力した場合には、その正常検出情報を前記制御部が受信して情報処理した前記処理情報に基づいて前記制御部の情報処理の異常を判定することを特徴とする異常診断システム。
【請求項２】
前記処理情報は、前記第１状態を判定した判定情報を有し、
前記正常処理情報は、前記第１状態を判定した正常判定情報を有し、
前記第２判定部は、前記正常判定情報と前記制御部から読み出した前記判定情報に基づいて前記第１状態を判定した前記制御部の情報処理の異常を判定する請求項１に記載の異常診断システム。
【請求項３】
前記処理情報は、前記制御対象を制御する制御情報を有し、
前記正常処理情報は、前記制御対象を制御する正常制御情報を有し、
前記第２判定部は、前記正常制御情報と前記制御部から読み出した前記制御情報に基づいて前記制御対象を制御する前記制御部の情報処理の異常を判定する請求項１又は２に記載の異常診断システム。
【請求項４】
前記監視部は、複数の前記監視対象の状態を検出して、検出した各状態を情報処理した前記検出情報を出力し、
前記制御部は、前記監視部が出力した複数の前記検出情報で示される複数の前記監視対象の状態の組み合わせを判定する第１情報処理と、前記第１情報処理による前記組み合わせの判定結果を示した情報に基づいて前記制御対象を制御する制御情報を取得する第２情報処理とを実行し、
前記第２判定部は、前記第１情報処理の異常と、前記第２情報処理の異常とを個別に判定する請求項１ないし３のいずれか１項に記載の異常診断システム。
【請求項５】
状態が変化する監視対象である車両機器の第１状態を検出して情報処理した検出情報を出力する監視部と、
前記検出情報を受信して情報処理した処理情報に基づいて前記車両機器とは異なる別の車両機器である制御対象を制御する制御部と、
を備える車両における機器の異常を診断する異常診断装置であって、
前記制御部の情報処理の異常を判定する判定部を備え、
前記判定部は、前記第１状態を前記監視部が正常に検出及び情報処理した場合の正常検出情報と、前記制御部が前記検出情報を正常に情報処理した場合の正常処理情報とを有し、
前記判定部は、
前記正常検出情報と前記監視部から読み出した前記検出情報に基づいて前記監視部の情報処理の異常を判定する第１判定部と、
前記第１判定部が前記監視部の情報処理の異常を判定した場合に前記正常検出情報を前記制御部に出力する出力部と、
前記正常処理情報と前記制御部から読み出した前記処理情報に基づいて前記制御部の情報処理の異常を判定する第２判定部とを有し、
前記第２判定部は、前記第１判定部の判定後に前記制御部の情報処理の異常を判定し、且つ、前記出力部が前記正常検出情報を出力した場合には、その正常検出情報を前記制御部が受信して情報処理した前記処理情報に基づいて前記制御部の情報処理の異常を判定することを特徴とする異常診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異常診断システム及び異常診断装置に関する。
【背景技術】
【０００２】
例えば、特許文献１には、ダイアグテスターを用いて車両の故障を診断する技術が開示される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４８１２３９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１では、ワイヤーハーネスの断線等の物理的な故障を診断し、車両機器を制御するプログラムの異常を診断することができない。
【０００５】
本発明の課題は、車両機器を制御する制御部における情報処理の異常を診断できる異常診断システム及び異常診断装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の異常診断システムは、
状態が変化する監視対象である車両機器の第１状態を検出して情報処理した検出情報を出力する監視部と、
検出情報を受信して情報処理した処理情報に基づいて車両機器とは異なる別の車両機器である制御対象を制御する制御部と、
制御部の情報処理の異常を判定する判定部と、
を備えることを特徴とする。
【０００７】
本発明の異常診断システムでは、判定部が制御部での情報処理の異常を判定するため、車両機器を制御する制御部における情報処理の異常を診断できる。
【０００８】
本発明の実施態様では、
判定部は、制御部が検出情報を正常に情報処理した場合の正常処理情報を有し、
判定部は、正常処理情報と制御部から読み出した処理情報に基づいて制御部の情報処理の異常を判定する。
【０００９】
これによれば、制御部が正常に情報処理した場合の正常処理情報を判定部が有する。この正常処理情報と制御部が実際に情報処理をした処理情報から制御部が実際にした情報処理に異常があるかを判定部は判定できる。
【００１０】
本発明の実施態様では、
処理情報は、第１状態を判定した判定情報を有し、
正常処理情報は、第１状態を判定した正常判定情報を有し、
判定部は、正常判定情報と制御部から読み出した判定情報に基づいて第１状態を判定した制御部の情報処理の異常を判定する。
【００１１】
これによれば、制御部が監視対象の第１状態を正常に判定した場合の情報処理の結果である正常判定情報を判定部が有する。この正常判定情報と制御部が監視対象の第１状態を実際に判定した結果である判定情報から制御部が実際にした情報処理に異常があるかを判定部は判定できる。
【００１２】
本発明の実施態様では、
処理情報は、制御対象を制御する制御情報を有し、
正常処理情報は、制御対象を制御する正常制御情報を有し、
判定部は、正常制御情報と制御部から読み出した制御情報に基づいて制御対象を制御する制御部の情報処理の異常を判定する。
【００１３】
これによれば、制御部が制御対象を正常に制御する場合の情報処理の結果である正常制御情報を判定部が有する。この正常制御情報と制御部が制御対象を実際に制御する制御情報から制御部が監視対象を実際に制御する情報処理に異常があるかを判定部は判定できる。
【００１４】
本発明の実施態様では、
判定部は、第１状態を監視部が正常に検出及び情報処理した場合の正常検出情報を有し、
判定部は、正常検出情報と監視部から読み出した検出情報に基づいて監視部の情報処理の異常を判定する。
【００１５】
これによれば、監視部が第１状態の監視対象を正常に検出及び情報処理した場合の結果である正常検出情報を判定部が有する。この正常検出情報と監視部が第１状態の監視対象を実際に制御した結果である検出情報から監視部が実際にした情報処理に異常があるかを判定部は判定できる。
【００１６】
本発明の実施態様では、
判定部は、正常検出情報を検出情報として制御部に出力する出力部を有する。
【００１７】
これによれば、監視部が監視対象の状態を正常に検出できない場合に、監視対象の第１状態を正常に検出した正常検出情報を判定部から制御部に出力することで、制御部に正常検出情報を情報処理させることができる。判定部は、その正常検出情報を受信した制御部の情報処理に異常があるかを判定でき、監視部に故障がある場合でも、判定部は制御部の情報処理の異常を診断できる。
【００１８】
また、本発明の異常診断装置は、
状態が変化する監視対象である車両機器の第１状態を検出して情報処理した検出情報を出力する監視部と、
検出情報を受信して情報処理した処理情報に基づいて車両機器とは異なる別の車両機器である制御対象を制御する制御部と、
を備える車両における機器の異常を診断する異常診断装置であって、
制御部の情報処理の異常を判定する判定部を備えることを特徴とする。
【００１９】
本発明は、車両における機器の異常を診断する異常診断装置として構成したものである（前述の発明は異常診断システムとして構成したものである）。前述の発明と同様に車両機器を制御する制御部における情報処理の異常を診断できる。
【００２０】
本発明の実施態様では、
判定部は、制御部が検出情報を正常に情報処理した場合の正常処理情報を有し、
判定部は、正常処理情報と制御部から読み出した処理情報に基づいて制御部の情報処理の異常を判定する。
【００２１】
これによれば、上述の異常診断システムと同様に制御部が実際にした情報処理に異常があるかを判定部が判定できる。
【図面の簡単な説明】
【００２２】
【図１】本発明の一例である異常診断システムの概略を示すブロック図。
【図２】スイッチの状態を検出する図１のＥＣＵの詳細を示すブロック図。
【図３】スイッチの状態を検出する図２とは異なるＥＣＵの詳細を示すブロック図。
【図４】モーターを制御する図１のＥＣＵの詳細を示すブロック図。
【図５】図１のテスターの詳細を示すブロック図。
【図６】図１のテスターのフラッシュＲＯＭに格納されたプログラムの処理の一例を示すフローチャート。
【図７】本発明の一例である異常診断システムの概略を示す図１とは異なるブロック図。
【図８】異常診断を行う図７のＥＣＵの詳細を示すブロック図。
【発明を実施するための形態】
【００２３】
図１に示すように本発明の一例の異常診断システム１は、車両２と、車両２に接続され、車両２機器の故障を診断するダイアグテスター（以下、「テスター３」とする。）を備える。
【００２４】
車両２には、スイッチ４、５、モーター６、及び各種電子制御ユニット（ＥＣＵ：Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）７、８、９が備わる。スイッチ４、５及びモーター６は、１つの信号のみを送信する導電ケーブルＣにより一端がＥＣＵ７、８、９に接続されるとともに、他端がアースＥに接続される。一方、ＥＣＵ７、８、９は、各ＥＣＵ７、８、９に備わる図示しない通信回路を通じて、例えば、ＣＡＮ等の車内通信線である多重通信バス１０に接続され、ＥＣＵ７、８、９の相互間でデータの送受信が可能となる。
【００２５】
スイッチ４、５は、導電ケーブルＣの電路を開閉する車両２機器であり、人によりＯＮとＯＦＦが操作される操作スイッチである。
【００２６】
モーター６は、スイッチ４、５のＯＮとＯＦＦに応じて駆動・停止する車両２機器である。後述するようにモーター６は、スイッチ４、５の両者がともにＯＮの状態である第１状態の場合に駆動し、それ以外の場合には駆動しない。
【００２７】
図２〜図４に示すようにＥＣＵ７、８、９は、それぞれ共通してＣＰＵ７ａ、８ａ、９ａ、ＲＯＭ７ｂ、８ｂ、９ｂ、ＲＡＭ７ｃ、８ｃ、９ｃ及びフラッシュＲＯＭ７ｄ、８ｄ、９ｄを備え、それらがバス７ｅ、８ｅ、９ｅで接続される。
【００２８】
ＣＰＵ７ａ、８ａ、９ａは、ＲＯＭ７ｂ、８ｂ、９ｂ、フラッシュＲＯＭ７ｄ、８ｄ、９ｄに記録したプログラムを実行して各種の情報処理の制御をする。例えば、ＣＰＵ７ａ、８ａ、９ａは、ＥＣＵ７、８、９相互間のデータ通信、各ＥＣＵ７、８、９とテスター３との間のデータ通信を実行する。
【００２９】
ＲＯＭ７ｂ、８ｂ、９ｂは、読み取り専用のメモリである。ＲＯＭ７ｂ、８ｂ、９ｂには、対応するＥＣＵ７、８、９が動作するための基本的なプログラム、パラメータ、データ等が記録されている。
【００３０】
ＲＡＭ７ｃ、８ｃ、９ｃは、読み書きが可能なメモリであり、ＲＡＭ７ｃ、８ｃ、９ｃは、ＣＰＵ７ａ、８ａ、９ａが情報処理を行う際の作業領域として機能する揮発性の記憶部である。
【００３１】
フラッシュＲＯＭ７ｄ、８ｄ、９ｄは、記憶内容を書き換え可能な不揮発性のメモリである。各フラッシュＲＯＭ７ｄ、８ｄ、９ｄには、各種のアプリケーションプログラム（以下、「アプリ」とする。）及びアプリの内容を書き換えるためのファームウェア等が格納される。次に各ＥＣＵ７、８、９について具体的に説明する。
【００３２】
図１に示すＥＣＵ７は、スイッチ４の状態（ＯＮ又はＯＦＦ）を検出してスイッチ４の状態を示す情報をＥＣＵ９に出力する主体である。図２に示すＥＣＵ７のフラッシュＲＯＭ７ｄには、主に次の３つのプログラムＰ１、Ｐ２、Ｐ３が格納される。プログラムＰ１は、スイッチ４の状態を検出して情報処理したデータＤ１（スイッチ４の状態がＯＮかＯＦＦかを示す情報）を取得してフラッシュＲＯＭ７ｄに書き込む。プログラムＰ２は、フラッシュＲＯＭ７ｄからデータＤ１を読み出してＥＣＵ９に送信する。プログラムＰ３は、例えば、ＥＣＵ７がＥＣＵ９に送信した直近のデータＤ１をテスター３からの要求に応じてテスター３に送信する。ＥＣＵ７は、スイッチ４の状態を定期的に検出して情報処理したデータＤ１を自身のフラッシュＲＯＭ７ｄに書き込み、書き込んだデータＤ１をＥＣＵ９に送信する。また、ＥＣＵ７は、テスター３からの要求に応じてＥＣＵ９に送信したデータＤ１をテスター３に送信する。
【００３３】
図３に示すＥＣＵ８は、スイッチ５の状態（ＯＮ又はＯＦＦ）を検出してスイッチ５の状態を示す情報をＥＣＵ９に出力する主体である。ＥＣＵ８のフラッシュＲＯＭ８ｄには、主に次の３つのプログラムＰ４、Ｐ５、Ｐ６が格納される。プログラムＰ４は、スイッチ５の状態を検出して情報処理したデータＤ２（スイッチ５の状態がＯＮかＯＦＦかを示す情報）を取得してフラッシュＲＯＭ８ｄに書き込む。プログラムＰ５は、フラッシュＲＯＭ８ｄからデータＤ２を読み出してＥＣＵ９に送信する。プログラムＰ６は、例えば、ＥＣＵ９に送信した直近のデータＤ２をテスター３からの要求に応じてテスター３に送信する。ＥＣＵ８は、スイッチ５の状態を定期的に検出して情報処理したデータＤ２をフラッシュＲＯＭ８ｄに書き込み、書き込んだデータＤ２をＥＣＵ９に送信する。また、ＥＣＵ８は、テスター３からの要求に応じてＥＣＵ９に送信したデータＤ２をテスター３に送信する。
【００３４】
図４に示すＥＣＵ９は、ＥＣＵ７、８から出力されるデータＤ１、Ｄ２を受信して情報処理してモーター６を制御する主体である。ＥＣＵ９のフラッシュＲＯＭ９ｄには、主に次の３つのプログラムＰ７、Ｐ８、Ｐ９が格納される。プログラムＰ７は、ＥＣＵ７からのデータＤ１及びＥＣＵ８からのデータＤ２を情報処理してスイッチ４、５の状態を判定したデータＤ３を取得し、データＤ３をフラッシュＲＯＭ９ｄに書き込む。ＥＣＵ７、８からＥＣＵ９に送信されるデータＤ１、Ｄ２の組み合わせは、次の４つのパターンとなる。パターン１が、スイッチ４、５の両方がＯＮの状態を示すデータの組み合わせである。パターン２が、スイッチ４、５の両方がＯＦＦの状態を示すデータの組み合わせである。パターン３が、スイッチ４がＯＮの状態かつスイッチ５がＯＦＦの状態を示すデータの組み合わせである。パターン４が、スイッチ４がＯＦＦの状態かつスイッチ５がＯＮの状態を示すデータの組み合わせである。プログラムＰ７では、ＥＣＵ７、８から送信されるデータＤ１、Ｄ２が、上記のパターン１〜４のいずれに該当するかを判定して判定結果をデータＤ３としてフラッシュＲＯＭ９ｄに格納する。プログラムＰ８は、データＤ３を情報処理してモーター６を制御するデータＤ４を取得し、データＤ４をフラッシュＲＯＭ９ｄに書き込む。データＤ３が上記のパターン１（スイッチ４、５の両方がＯＮの状態を示すデータの組み合わせ）ならば、モーター６を駆動させる制御情報をデータＤ４としてフラッシュＲＯＭ９ｄに格納する。一方、データＤ３が上記のパターン２〜４ならば、モーター６を駆動させない制御情報をデータＤ４としてフラッシュＲＯＭ９ｄに格納する。プログラムＰ９は、テスター３からの要求に応じてＥＣＵ９が直近に取得したデータＤ３、Ｄ４をテスター３に送信する。ＥＣＵ９は、ＥＣＵ７、８から送信されるデータＤ１、Ｄ２を受信して情報処理したデータＤ３、Ｄ４をフラッシュＲＯＭ９ｄに書き込み、データＤ４に基づいてモーター６を制御する。また、ＥＣＵ９は、テスター３からの要求に応じてデータＤ３、Ｄ４をテスター３に送信する。
【００３５】
次に、図５に示すＥＣＵ７、８、９からデータＤ１〜Ｄ４が送信されるテスター３の詳細を説明する。テスター３は、ＥＣＵ７、８、９に繋がるワイヤーハーネスの断線、ＥＣＵ７、８、９内の回路故障などの物理的な故障及びＥＣＵ７、８、９のプログラムの異常などのソフト的な故障を診断する。テスター３は、各種の故障を診断する判定部として、ＣＰＵ３ａ、ＲＯＭ３ｂ、ＲＡＭ３ｃ及びフラッシュＲＯＭ３ｄを備え、それらがバス３ｅでＩ／Ｏポート１１に接続される。Ｉ／Ｏポート１１には、テスター３を多重通信バス１０に接続して各ＥＣＵ７、８、９とテスター３との間でデータの送受信を可能にするコネクタ１２と、テスター３を操作する操作部１３が接続される。
【００３６】
ＣＰＵ３ａは、ＲＯＭ３ｂ、フラッシュＲＯＭ３ｄに記録したプログラムを実行して各種の情報処理の制御をする。例えば、ＣＰＵ３ａは、各ＥＣＵ７、８、９とのデータ通信及びデータ通信から得られたデータＤ１〜Ｄ４に基づいて各ＥＣＵ７、８、９におけるプログラムの故障等の診断を実行する。
【００３７】
ＲＯＭ３ｂは、読み取り専用のメモリであり、テスター３が動作するための基本的なプログラム、パラメータ、データ等が記録されている。
【００３８】
ＲＡＭ３ｃは、読み書きが可能なメモリであり、ＣＰＵ３ａが情報処理を行う際の作業領域として機能する揮発性の記憶部である。
【００３９】
フラッシュＲＯＭ３ｄは、記憶内容を書き換え可能な不揮発性のメモリである。フラッシュＲＯＭ３ｄには、後述する３つのプログラムＰ１０、Ｐ１１、Ｐ１２及び各種データが主に格納される。各種データは、例えば、各ＥＣＵ７、８、９のプログラムの故障を診断するために用いるデータｄ１〜ｄ４である。データｄ１は、ＥＣＵ７がＯＮ状態のスイッチ４を正常に検出及び情報処理した場合に取得するデータＤ１に対応する。データｄ２は、ＥＣＵ８がＯＮ状態のスイッチ５を正常に検出及び情報処理した場合に取得するデータＤ２に対応する。データｄ３は、ＥＣＵ９が、スイッチ４、５いずれもＯＮ状態を示すデータＤ１、Ｄ２を正常に受信及び情報処理した場合に取得するデータＤ３に対応する。データｄ４は、ＥＣＵ９が、スイッチ４、５いずれもＯＮ状態と判定したデータＤ３を正常に情報処理した場合に取得するデータＤ４に対応する。
【００４０】
テスター３のフラッシュＲＯＭ３ｄに格納されるプログラムＰ１０は、ＥＣＵ７、８、９に繋がるワイヤーハーネスの断線、ＥＣＵ７、８、９内の回路故障等の物理的な故障を診断する周知のプログラムである。プログラムＰ１１は、各ＥＣＵ７、８、９におけるソフト的な故障を診断する。プログラムＰ１２は、プログラムＰ１１でＥＣＵ７に異常を検出した場合にフラッシュＲＯＭ３ｄからデータｄ１を読み出してＥＣＵ９に送信する。また、プログラムＰ１２は、プログラムＰ１１でＥＣＵ８に異常を検出した場合にフラッシュＲＯＭ３ｄからデータｄ２を読み出してＥＣＵ９に送信する。
【００４１】
次にテスター３のプログラムＰ１１を実行して各ＥＣＵ７、８、９におけるソフト的な故障を診断する方法を説明する。プログラムＰ１１を実行するに際しては、図５に示すようにスイッチ４、５をともにＯＮの状態にしておく。
【００４２】
例えば、ＥＣＵ７におけるプログラムＰ１（スイッチ４を検出及び情報処理するプログラム）の異常を診断する場合を説明する。テスター３は、ＯＮ状態のスイッチ４をＥＣＵ７が検出及び情報処理したデータＤ１をテスター３に送信するようにＥＣＵ７に要求してＥＣＵ７からデータＤ１を読み出す。そして、テスター３は、フラッシュＲＯＭ３ｄからデータｄ１（ＯＮ状態のスイッチ４をＥＣＵ７が正常に検出及び情報処理したデータ）を読み出し、両データＤ１、ｄ１を比較してＥＣＵ７の情報処理が異常かを判定する。
【００４３】
同様に、ＥＣＵ８のプログラムＰ４（スイッチ５を検出及び情報処理するプログラム）の異常を診断する場合を説明する。テスター３は、ＯＮ状態のスイッチ５をＥＣＵ８が検出及び情報処理したデータＤ２をテスター３に送信するようにＥＣＵ８に要求してＥＣＵ８からデータＤ２を読み出す。そして、テスター３は、フラッシュＲＯＭ３ｄからデータｄ２（ＯＮ状態のスイッチ５をＥＣＵ８が正常に検出及び情報処理したデータ）を読み出し、両データＤ２、ｄ２を比較してＥＣＵ８の情報処理が異常か判定する。
【００４４】
次に、ＥＣＵ９のプログラムＰ７、Ｐ８（データＤ１、Ｄ２に基づきスイッチ４、５の状態を判定及びその判定結果からモーター６を制御するプログラム）の異常を診断する場合を説明する。テスター３は、両スイッチ４、５がＯＮ状態を示すデータＤ１、Ｄ２を受信して情報処理したデータＤ３、Ｄ４をテスター３に送信するようＥＣＵ９に要求してＥＣＵ９からデータＤ３、Ｄ４を読み出す。そして、テスター３は、フラッシュＲＯＭ３ｄからデータｄ３（両スイッチ４、５がＯＮ状態を示すデータＤ１、Ｄ２をＥＣＵ９が正常に受信及び情報処理したデータ）を読み出し、両データＤ３、ｄ３を比較してＥＣＵ９の情報処理が異常かを判定する。データＤ４、ｄ４についても同様に比較してＥＣＵ９の情報処理が異常か否かを判定する。
【００４５】
以上、異常診断システム１の主要な各部について説明した。各ＥＣＵ７、８、９のフラッシュＲＯＭ７ｄ、８ｄ、９ｄに格納されるアプリは、適宜、アップデート又はバージョンアップがされる。この際、フラッシュＲＯＭ７ｄ、８ｄ、９ｄのファームウェアがアプリを書き換え、書き換えられたアプリにバグが発生する場合がある。例えば、ＥＣＵ９のプログラムＰ７、Ｐ８にバグが発生し、ＥＣＵ７、８から送信されるデータＤ１、Ｄ２をＥＣＵ９で正常に情報処理できない場合がある。同様に、ＥＣＵ７のプログラムＰ１にバグが発生してＥＣＵ７がスイッチ４の状態を正常に検出できない場合がある。また、ＥＣＵ８のプログラムＰ４にバグが発生してＥＣＵ８がスイッチ５の状態を正常に検出できない場合がある。このような場合、車両２に異常を感じたユーザーが車両２をディーラーに持参し、ディーラー側でテスター３を使用してＥＣＵ７、８、９のプログラムＰ１、Ｐ４、Ｐ７、Ｐ８（以下、「各種プログラム」とする。）の異常を診断する。
【００４６】
ユーザーが車両２の異常を訴えた時点では、異常の原因が物理的な故障なのか、ＥＣＵ７、８、９の各種プログラムの故障なのかが不明であり、ディーラー側では車両２の異常の原因を切り分ける必要がある。そこで、例えば、ディーラー側で最初に物理的な故障について診断をし、物理的な故障がない場合にＥＣＵ７、８、９の各種プログラムの異常を診断する。物理的な故障を診断する場合は、テスター３で周知のプログラムＰ１０を実行することで車両２の物理的な故障の診断をする。この物理的な診断で、故障が検出されない場合に、ＥＣＵ７、８、９の各種プログラムの故障の診断をする。以下、図６のフローチャートを参照してテスター３におけるプログラムＰ１１、Ｐ１２の処理を説明する。
【００４７】
ＥＣＵ７、８、９の各種プログラムの異常を診断する際は、図５に示すように両スイッチ４、５を予めＯＮの状態にする。スイッチ４がＯＮ状態になると、ＥＣＵ７は、スイッチ４のＯＮ状態を検出して情報処理したデータＤ１をＥＣＵ９に送信する。同様に、スイッチ５がＯＮ状態になると、ＥＣＵ８は、スイッチ５のＯＮ状態を検出して情報処理したデータＤ２をＥＣＵ９に送信する。データＤ１、Ｄ２を受信するＥＣＵ９は、例えば、プログラムＰ７にバグが生じると、受信したデータＤ１、Ｄ２を正常に情報処理できない。この場合、ＥＣＵ９は、受信したデータＤ１、Ｄ２を、例えば、スイッチ４、５が両方ともＯＦＦ状態であると判定したデータＤ３を取得する。ＥＣＵ９は、正常なプログラムＰ８によりデータＤ３を正常に情報処理して取得したデータＤ４に基づきモーター６を制御する。すると、スイッチ４、５がいずれもＯＮ状態である第１状態であるにも関わらず、モーター６が駆動しない。
【００４８】
このような場合、例えば、ディーラー側でテスター３の操作部１３を操作し、ＥＣＵ７、８、９の各種プログラムの異常の診断を実行すると、テスター３は、図６に示すＳ１〜Ｓ１０の処理を実行する。Ｓ１においてテスター３は、図５に示すＥＣＵ７からデータＤ１を読み出し、テスター３のフラッシュＲＯＭ３ｄに格納されるデータｄ１と比較し、ＥＣＵ７の情報処理が正常かを判定する。データＤ１、ｄ１が不一致の場合には（図６のＳ１：Ｎｏ）、ＥＣＵ７のプログラムＰ１（スイッチ４の状態を検出する処理）に異常があるとし（Ｓ２）、テスター３からデータｄ１をＥＣＵ９に送信し（Ｓ３）、Ｓ４に進む。Ｓ１でデータＤ１、ｄ１が一致する場合には（Ｓ１：Ｙｅｓ）、Ｓ４に進む。
【００４９】
Ｓ４においてテスター３は、図５に示すＥＣＵ８からデータＤ２を読み出し、フラッシュＲＯＭ３ｄに格納されるデータｄ２と比較し、ＥＣＵ８の情報処理が正常かを判定する。データＤ２、ｄ２が不一致の場合には（図６のＳ４：Ｎｏ）、ＥＣＵ８のプログラムＰ４（スイッチ５の状態を検出する処理）に異常があるとし（Ｓ５）、テスター３からデータｄ２をＥＣＵ９に送信し（Ｓ６）、Ｓ７に進む。Ｓ４でデータＤ２、ｄ２が一致する場合には（Ｓ４：Ｙｅｓ）、Ｓ７に進む。
【００５０】
Ｓ７においてテスター３は、図５に示すＥＣＵ９からデータＤ３を読み出し、フラッシュＲＯＭ３ｄに格納されるデータｄ３と比較し、ＥＣＵ９の情報処理（スイッチ４、５の状態を判定する処理）が正常かを判定する。データＤ３、ｄ３が不一致の場合には（図６のＳ７：Ｎｏ）、ＥＣＵ９のプログラムＰ７（スイッチ４、５の状態を判定する処理）に異常があるとし（Ｓ８）、Ｓ９に進む。Ｓ７でデータＤ３、ｄ３が一致する場合には（Ｓ７：Ｙｅｓ）、Ｓ９に進む。
【００５１】
Ｓ９においてテスター３は、図５に示すＥＣＵ９からデータＤ４を読み出し、フラッシュＲＯＭ３ｄに格納されるデータｄ４と比較し、ＥＣＵ９の情報処理（モーター６を制御する処理）が正常かを判定する。データＤ４、ｄ４が不一致の場合には（図６のＳ９：Ｎｏ）、ＥＣＵ９のプログラムＰ８（モーター６を制御する処理）に異常があるとし（Ｓ１０）、処理を終える。Ｓ９でデータＤ４、ｄ４が一致する場合には（Ｓ９：Ｙｅｓ）、処理を終える。
【００５２】
図６の一連の処理が終了すると、例えば、テスター３の図示しない表示部に各種プログラムについての診断結果が出力され、診断が終了する。上記の場合では、図５に示すＥＣＵ７、８からのデータＤ１、Ｄ２を受信して情報処理するＥＣＵ９のプログラムＰ７にバグがあり、図６のＳ７でデータＤ３、ｄ３が不一致となり、Ｓ８でプログラムＰ７に異常があると診断される。同様に図５に示すＥＣＵ７のプログラムＰ１に異常がある場合には図６のＳ２で、図５に示すＥＣＵ８のプログラムＰ４の異常がある場合には図６のＳ５で、図５に示すＥＣＵ９のプログラムＰ８に異常がある場合には図６のＳ１０で異常が検出される。
【００５３】
以上のように図５に示す異常診断システム１では、テスター３で各ＥＣＵ７、８、９の情報処理の異常を診断できる。テスター３は、各ＥＣＵ７、８、９の情報処理を正常にした場合のデータｄ１〜ｄ４を有する。よって、テスター３は、各ＥＣＵ７、８、９が情報処理したデータＤ１〜Ｄ４を読み出し、データｄ１〜ｄ４と比較することで、各ＥＣＵ７、８、９の情報処理の異常を判定できる。
【００５４】
図６のＳ２に示すようにＥＣＵ７の情報処理に異常を検出すると、図５に示すテスター３は、スイッチ４がＯＮの状態を示すデータｄ１をＥＣＵ９に送信する（図６のＳ３）。また、図６のＳ５に示すようにＥＣＵ８の情報処理に異常を検出すると、図５に示すテスター３は、スイッチ５がＯＮの状態を示すデータｄ１をＥＣＵ９に送信する（図６のＳ６）。よって、図５に示すＥＣＵ９は、スイッチ４、５がＯＮの状態を示すデータｄ１、ｄ２を受信して情報処理するため、テスター３は、図６のＳ７、Ｓ９の処理でＥＣＵ９の情報処理が異常かを診断できる。
【００５５】
上記の説明では、異常診断システム１として、テスター３とＥＣＵ７、８、９を備える例を説明した。図７に示すように異常診断システム１０１として、テスター３に代えてテスター３と同様の機能を果たすＥＣＵ１０２を追加してもよい。以下の説明においては、上記と同じ構成は同じ符号を付して説明を省略し、特有の構成について説明する。
【００５６】
車両２に備わるＥＣＵ１０２は、多重通信バス１０に接続され、各ＥＣＵ７、８、９との間でデータの送受信が可能となる。ＥＣＵ１０２は、各ＥＣＵ７、８、９内の回路故障などの物理的な故障及び各ＥＣＵ７、８、９のプログラムの異常などのソフト的な故障を診断する。ＥＣＵ１０２は、図８に示すようにＣＰＵ３ａ、ＲＯＭ３ｂ、ＲＡＭ３ｃ及びフラッシュＲＯＭ３ｄを備える。ＣＰＵ３ａは、フラッシュＲＯＭ３ｄに記録したプログラムＰ１１、Ｐ１２を実行して図６に示す処理により、ＥＣＵ７、８、９の各種プログラムの故障の診断をする。各種プログラムの異常を検出した場合は、例えば、図示しない車両２内のディスプレイに診断結果を表示する。これにより、テスター３を使用せずに各ＥＣＵ７、８、９の各種プログラムの異常を診断できる。
【００５７】
以上、本発明の実施の態様を説明したが、本発明はその具体的な記載に限定されることなく、例示した構成、処理等を技術的に矛盾のない範囲で適宜組み合わせて実施することも可能であるし、またある要素、処理を周知の形態に置き換えて実施することもできる。
【００５８】
上記の説明では、図５に示すようにスイッチ４、５の状態を検出するＥＣＵ７、８及びスイッチ４、５の状態に応じてモーター６を制御するＥＣＵ９を例示した。ＥＣＵ７、８は、スイッチ４、５のようにＯＮとＯＦＦの２つの状態を検出する車両機器以外にも所定の物理量を検出する車両機器を監視対象としてもよい。ＥＣＵ９は、モーター６を制御するものに限らず、ＥＣＵ７、８での検出結果に応じて制御する車両２機器であればよい。ＥＣＵ７、８が状態を監視する監視対象として２つのスイッチ４、５を例示したが、ＥＣＵ７が２つのスイッチ４、５を監視してもよい。また、スイッチの数を３つ以上又は１つにしてもよい。この場合、スイッチの数に対応させてスイッチを監視するＥＣＵを追加してもよい。
【００５９】
上記の説明では、テスター３又は図８に示すＥＣＵ１０２のフラッシュＲＯＭ３ｄに各ＥＣＵ７、８が正常に情報処理したデータｄ１〜ｄ４を格納する例を例示した。データｄ１、ｄ２としては、各ＥＣＵ７、８に格納されたデータＤ１、Ｄ２をテスター３又はＥＣＵ１０２が読み出してデータｄ１、ｄ２としてもよい。この場合、ＥＣＵ７、８におけるプログラムＰ１、Ｐ４の異常は診断できない。また、データＤ１〜Ｄ４をフラッシュＲＯＭ７ｄ、８ｄ、９ｄに書き込む例を説明したが、ＲＡＭ７ｃ、８ｃ、９ｄに書き込んでもよい。
【符号の説明】
【００６０】
１  異常診断システム              ２    車両
３  テスター（異常診断装置）      ４    スイッチ（監視対象）
５  スイッチ（監視対象）          ６    モーター（制御対象）
７  ＥＣＵ（監視部）              ８    ＥＣＵ（監視部）
９  ＥＣＵ（制御部）
【図１】
0006489316.tif 000002
【図２】
0006489316.tif 000003
【図３】
0006489316.tif 000004
【図４】
0006489316.tif 000005
【図５】
0006489316.tif 000006
【図６】
0006489316.tif 000007
【図７】
0006489316.tif 000008
【図８】
0006489316.tif 000009