(57)【特許請求の範囲】
【請求項１】
表示部及び操作部を備え、検査対象の自動車用電子制御ユニットとの間で通信を行う診断ツールと、
前記診断ツールの操作部を操作する機械装置と、
前記操作部の基準操作内容及び前記表示部の基準表示内容を記憶する手段と、
前記基準操作内容に基づき前記機械装置を制御する手段と、
前記診断ツールの表示部及び操作部を撮影する撮影装置と、
前記基準表示内容と前記撮影装置が撮影した前記表示部の画像から求めた表示内容とを照合する手段と、
前記基準操作内容と前記撮影装置が撮影した前記操作部の画像から求めた操作内容とを照合する手段と、
を含む、自動車用電子制御ユニットの検査システム。
【請求項２】
表示部及び操作部を備え、検査対象の自動車用電子制御ユニットとの間で通信を行う診断ツールと、
前記診断ツールの操作部を操作する機械装置と、
前記操作部の基準操作内容及び前記表示部の基準表示内容を記憶する手段と、
前記基準操作内容に基づき前記機械装置を制御する手段と、
前記診断ツールの表示部を撮影する撮影装置と、
前記基準表示内容と前記撮影装置が撮影した前記表示部の画像から求めた表示内容とを照合する手段と、
前記診断ツールと前記自動車用電子制御ユニットとの間での基準通信情報を記憶する手段と、
前記診断ツールと前記自動車用電子制御ユニットとの間で通信ログを取得する手段と、
前記通信ログと前記基準通信情報とを照合する手段と、
を含む、自動車用電子制御ユニットの検査システム。
【請求項３】
前記撮影装置は、前記診断ツールの表示部及び操作部を撮影し、
前記基準操作内容と前記撮影装置が撮影した前記操作部の画像から求めた操作内容とを照合する手段を更に含む、請求項２記載の自動車用電子制御ユニットの検査システム。
【請求項４】
前記照合の結果を示すデータ及び前記撮影装置が撮影した画像を記憶する手段を更に含む、請求項１から請求項３のいずれか１つに記載の自動車用電子制御ユニットの検査システム。
【請求項５】
前記自動車用電子制御ユニットは、自動車に搭載されるエンジンを制御するエンジン制御ユニットであり、
エンジンモデルが実装されるＨＩＬＳシステムを含む、請求項１から請求項４のいずれか１つに記載の自動車用電子制御ユニットの検査システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、診断ツールを用いて自動車用電子制御ユニットの検査を行う検査システムに関する。
【背景技術】
【０００２】
特許文献１には、電子制御ユニットの本来の制御対象である実機が、規定の運転パターンに沿って動作する際に、アクチュエータ駆動信号を受けて生成するセンサ信号と同等の信号を、擬似センサ信号として生成するシミュレータと、電子制御ユニットに前記擬似センサ信号を供給し、また、電子制御ユニットから発せられるアクチュエータの駆動信号を受信するよう構成された、電子制御ユニットの検査装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２６１７９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ＧＳＴ（General Scan Tool）などの手動操作される汎用の診断ツール（携帯型診断装置）を電子制御ユニットに接続し、作業者が診断ツールを操作しつつ操作結果を診断ツールの画面で確認しながら電子制御ユニットの検査を行う場合、診断ツールの故障、診断ツールと電子制御ユニットとの間の通信不良、診断ツールの操作部の操作ミスなどの要因によって検査精度が低下する。
【０００５】
従って、診断ツールを手動操作する検査作業において高い検査精度を維持しようとすると、上記のような不具合要因の有無を検証しつつ検査処理を進める必要がある。このため、作業手順の複雑化や同じ操作の繰り返しが生じ、作業者の熟練が必要になったり、検査時間が長くなったりすることがあった。
【０００６】
そこで、本発明は、汎用の診断ツールを用いつつ自動車用電子制御ユニットの検査を高効率かつ高精度に行える、検査システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
そのため、本願発明に係る自動車用電子制御ユニットの検査システムは、その一態様として、表示部及び操作部を備え、検査対象の自動車用電子制御ユニットとの間で通信を行う診断ツールと、前記診断ツールの操作部を操作する機械装置と、前記操作部の基準操作内容及び前記表示部の基準表示内容を記憶する手段と、前記基準操作内容に基づき前記機械装置を制御する手段と、前記診断ツールの表示部及び操作部を撮影する撮影装置と、前記基準表示内容と前記撮影装置が撮影した前記表示部の画像から求めた表示内容とを照合する手段と、前記基準操作内容と前記撮影装置が撮影した前記操作部の画像から求めた操作内容とを照合する手段と、を含む。
また、本願発明に係る自動車用電子制御ユニットの検査システムは、その一態様として、表示部及び操作部を備え、検査対象の自動車用電子制御ユニットとの間で通信を行う診断ツールと、前記診断ツールの操作部を操作する機械装置と、前記操作部の基準操作内容及び前記表示部の基準表示内容を記憶する手段と、前記基準操作内容に基づき前記機械装置を制御する手段と、前記診断ツールの表示部を撮影する撮影装置と、前記基準表示内容と前記撮影装置が撮影した前記表示部の画像から求めた表示内容とを照合する手段と、前記診断ツールと前記自動車用電子制御ユニットとの間での基準通信情報を記憶する手段と、前記診断ツールと前記自動車用電子制御ユニットとの間で通信ログを取得する手段と、前記通信ログと前記基準通信情報とを照合する手段と、を含む。
【発明の効果】
【０００８】
上記発明によると、診断ツールの操作部の操作及び表示部の表示内容の整合性判断を自動化でき、汎用の診断ツールを用いつつ自動車用電子制御ユニットの検査を高効率かつ高精度に行えるようになる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係る検査システムの構成例を示すブロック図である。
【図２】本発明の一実施形態に係る診断ツールの外観を例示する図である。
【図３】本発明の一実施形態に係る検査システムにおける情報の流れを例示するブロック図である。
【図４】本発明の実施形態の検査システムの動作例（第１の動作例）を示すフローチャートである。
【図５】前記第１の動作例における照合処理を例示するフローチャートである。
【図６】前記第１の動作例における照合処理を例示するフローチャートである。
【図７】前記第１の動作例における照合処理を例示するフローチャートである。
【図８】前記第１の動作例における照合処理を例示するフローチャートである。
【図９】本発明の一実施形態に係る検査システムの動作例（第２の動作例）を示すフローチャートである。
【図１０】前記第２の動作例における照合処理を例示するフローチャートである。
【図１１】前記第２の動作例における照合処理を例示するフローチャートである。
【図１２】前記第２の動作例における照合処理を例示するフローチャートである。
【図１３】本発明の一実施形態に係る検査システムの動作例（第３の動作例）を示すフローチャートである。
【図１４】前記第３の動作例における照合処理を例示するフローチャートである。
【図１５】前記第３の動作例における照合処理を例示するフローチャートである。
【図１６】本発明の一実施形態に係る検査システムの動作例（第４の動作例）を示すフローチャートである。
【図１７】前記第４の動作例における照合処理を例示するフローチャートである。
【発明を実施するための形態】
【００１０】
以下に本発明の実施の形態を説明する。
図１は、本発明に係る検査システムの一例を示す構成ブロック図である。
図１の検査システム１は、自動車（車両）に搭載されるエンジン（内燃機関）を制御する電子制御ユニット（ＥＣＵ：Electronic Control Unit）２を単体で検査するためのシステムである。ＥＣＵ２は、マイクロコンピュータ、通信回路などを含み、車両に搭載される状態で、各種の入力信号に基づき、エンジンを運転するための各種のアクチュエータの駆動信号を演算して出力する装置である。
【００１１】
検査システム１は、ＨＩＬＳ（Hardware In the Loop Simulation）システム１０、汎用の診断ツール２０、診断ツール２０を撮影するためのカメラ（撮影装置）３０、診断ツール２０を自動操作するためのロボットアーム（機械装置）４０を含んで構成される。
診断ツール２０、カメラ３０及びロボットアーム４０は、図示省略したフレームに一体的に取り付けられる。
【００１２】
ＨＩＬＳシステム１０は、着脱可能なハーネス５１を介して診断対象のＥＣＵ２と接続され、ＥＣＵ２の制御対象であるエンジンと同様にＥＣＵ２との間で信号の授受を行ってシミュレーションを実施するシステムである。
ＨＩＬＳシステム１０は、ＨＩＬＳ用パーソナルコンピュータ（ＰＣ）１１を含んで構成される。
【００１３】
ＰＣ１１は、演算装置、制御装置、記憶装置、入出力装置、表示装置などを備える。ＰＣ１１には、ＨＩＬＳによるシミュレーションを実現するためのＨＩＬＳ用ソフトウェアや検査用ソフトウェアなどが実装され、更に、データベースＤＢが備えられている。
ＨＩＬＳ用ソフトウェアには、模擬する運転条件（モード走行）をＨＩＬＳシステム１０に指示するためのソフトウェアなどが含まれ、検査用ソフトウェアには、カメラ３０やロボットアーム４０の作動を制御するソフトウェアなどが含まれる。
また、ＨＩＬＳシステム１０には、モデルシミュレータ１２としてのドライバーモデル１２ａとエンジンモデル１２ｂとが実装されている。
【００１４】
ドライバーモデル１２ａは、自動車の運転手による運転操作を模擬するためのモデルであり、例えば、所定の運転パターンに適合するアクセル開度などの情報をエンジンモデル１２ｂに出力する。
エンジンモデル１２ｂは、エンジンの機能を模擬するためのモデルであり、ドライバーモデル１２ａから送信されるアクセル開度などの情報や、ＥＣＵ２から出力されるアクチュエータ駆動信号などに基づいて、実際のエンジンや各種アクチュエータの動きを模擬し、実際のエンジンで生成される各種のセンサ信号と同様の模擬センサ信号を生成する。
そして、エンジンモデル１２ｂが生成した模擬センサ信号は、ハーネス５１を介してＥＣＵ２に送信される。
【００１５】
ＥＣＵ２は、エンジンモデル１２ｂから送信された模擬センサ信号をエンジン制御用ソフトウェアに基づき演算処理してアクチュエータ制御信号を生成し、係るアクチュエータ駆動信号をエンジンモデル１２ｂに送信する。
模擬センサ信号は、例えば、吸入空気流量の測定信号や空燃比の測定信号などであり、ＥＣＵ２は、これらの模擬センサ信号に基づいて燃料噴射量（燃料噴射パルス幅）を演算し、燃料噴射量に応じた噴射パルス信号を燃料噴射弁（アクチュエータ）の駆動信号として出力する。
【００１６】
また、ＥＣＵ２には診断用ソフトウェアが実装され、センサやアクチュエータの故障診断、更に、エンジン制御機能の自己診断などを実施する。
なお、データベースＤＢを管理するサーバコンピュータを別途設け、係るサーバコンピュータとＰＣ１１とをネットワークで接続し、ＰＣ１１がネットワークを介してデータベースＤＢにアクセスする構成とすることができる。
【００１７】
診断ツール２０は、ＧＳＴ（General Scan Tool）などの手動操作される汎用の診断ツールであり、図２に例示したように、液晶などからなる表示部２０ａと、テンキー、方向キー、ファンクションキーなどの各種押しボタンを含む操作部２０ｂとを備えている。
なお、診断ツール２０は、表示部２０ａと操作部２０ｂとを兼ねるタッチパネルを備えた装置とすることができ、診断ツール２０の操作部２０ｂは押しボタンに限定されない。
【００１８】
ロボットアーム４０は、診断ツール２０の操作部２０ｂを構成する各種の押しボタンを、手動操作される場合と同様に押し下げ操作する機能を備えた機械装置であり、ＰＣ１１の操作指令に応じて所定の押しボタンを押し下げ操作する。
つまり、検査システム１では、作業者が診断ツール２０の操作部２０ｂを手動操作する代わりに、ＰＣ１１によって駆動制御されるロボットアーム４０が診断ツール２０の操作部２０ｂを自動的に操作し、診断ツール２０の操作（換言すれば、診断ツール２０を用いたＥＣＵ２の検査処理）が自動化されるよう構成されている。
【００１９】
診断ツール２０とＥＣＵ２とは、着脱可能なハーネス５２によって接続され、ハーネス５２の途中に設けたＨＩＬＳシステム１０の通信監視部１３は、診断ツール２０とＥＣＵ２との間で通信ログを取得する。そして、通信監視部１３は、取得した通信ログをＰＣ１１に送信する。
なお、診断ツール２０とＥＣＵ２との間では、例えばController Area Network（CAN）などのデータ転送規格に基づいて通信が行われる。
【００２０】
カメラ３０は、診断ツール２０の表示部２０ａ、及び、操作部２０ｂ（換言すれば、ロボットアーム４０の押下操作部）をＰＣ１１からの指令に応じて撮影し、撮影した画像の信号をＰＣ１１に送信する。
そして、ＰＣ１１は、カメラ３０が撮影した診断ツール２０の操作部２０ｂ（ロボットアーム４０）の画像を解析することにより、ロボットアーム４０による操作部２０ｂの操作が正常に（指令通りに）行われているか否かを検証する機能をソフトウェアとして備えている。
【００２１】
また、ＰＣ１１は、カメラ３０が撮影した診断ツール２０の表示部２０ａの画像を解析して、表示部２０ａの表示内容が正常であるか否かを検証する機能をソフトウェアとして備えている。
更に、ＰＣ１１は、通信監視部１３が取得した通信ログの情報が正常であるか否かを検証する機能をソフトウェアとして備えている。
【００２２】
診断ツール２０の基準操作内容（ボタンの操作手順）、表示部２０ａの基準表示内容（正常な表示内容）、更に、診断ツール２０とＥＣＵ２との間での基準通信情報（正常な通信情報）などは、予めデータベースＤＢに格納されている。
そして、ＰＣ１１は、データベースＤＢから読み出した情報に基づき、診断ツール２０の操作部２０ｂの自動操作制御や表示部２０ａの表示内容の照合処理などを含む検査処理を実施し、検査過程において得られた各種のデータ（画像情報や通信ログなど）をデータベースＤＢに格納する。
【００２３】
なお、診断ツール２０の表示部２０ａを撮影するカメラと、診断ツール２０の操作部２０ｂ（ロボットアーム４０の押し下げ操作部）を撮影するカメラとを個別に設けることができる。また、１つのカメラのアングルを変更して、表示部２０ａの撮影と操作部２０ｂの撮影とのいずれか一方を選択的に実施する構成とすることができる。
また、ロボットアーム４０は、例えば、診断ツール２０の操作部２０ｂを構成する複数の押しボタンそれぞれに押下操作機構を配した機械装置や、単数又は複数の押下操作機構を有すると共に押し下げ操作するボタンの位置にまで押下操作機構を移動させる機構を有した機械装置とすることができる。
【００２４】
図３は、検査システム１におけるデータの流れを概略的に示す図である。
ＰＣ１１（運転条件指示部）は、ＥＣＵ２の模擬動作におけるエンジンの運転条件（車両の走行モード）をドライバーモデル１２ａに指示する。
ドライバーモデル１２ａは、指示された運転条件に対応するアクセル開度の情報などをエンジンモデル１２ｂに出力する。
【００２５】
エンジンモデル１２ｂは、ドライバーモデル１２ａが出力するアクセル開度でエンジンが運転されるときに、エンジンの運転状態を検出する各種センサが出力する電気信号（模擬センサ信号）を演算し、係る電気信号をＥＣＵ２に出力する。
エンジンモデル１２ｂが出力する電気信号を入力するＥＣＵ２は、実際にセンサ出力を入力する場合と同様に、エンジンモデル１２ｂが出力する電気信号に基づいて、燃料噴射弁などのアクチュエータの駆動制御信号の演算や故障診断などを実施する。
【００２６】
一方、ＰＣ１１（ロボットアーム制御部）は、ハードディスクなどの記憶装置上のデータベースＤＢに記憶されている基準操作内容（診断ツール２０の操作手順）に従って、診断ツール（ＧＳＴ）２０の操作部２０ｂを自動操作するための操作指令（制御信号）をロボットアーム４０に順次出力する。
ロボットアーム４０は、診断ツール２０の操作部２０ｂを構成する複数の押しボタンのうち、ＰＣ１１から送られる操作指令（押し下げ指令）に対応する押しボタンを押し下げ操作する。
【００２７】
診断ツール２０は、ロボットアーム４０によって操作部２０ｂが操作されると、押し下げ操作されたボタンに応じた所定の動作、例えば、ＥＣＵ２へのコマンド送信や表示部２０ａの表示内容の切り替えなどを実施する。
ＥＣＵ２は、診断ツール２０から送られたコマンドに応じた応答情報（故障診断結果の信号やエンジン運転条件の信号など）を診断ツール２０に送信する。
診断ツール２０とＥＣＵ２との間での通信内容は、ＨＩＬＳシステム１０の通信監視部１３により記録され、係る通信ログ（通信内容、送受信データ、ＣＡＮデータ）はＰＣ１１に送られる。
【００２８】
また、ＰＣ１１（カメラ制御部）は、検査手順（診断ツール２０の操作手順）に基づき予め決められたタイミングで、撮影動作を指令する信号をカメラ３０に出力し、カメラ３０は、撮影指令に応じて診断ツール２０（及びロボットアーム４０）を撮影し、撮影した画像の信号をＰＣ１１に撮影情報として送信する。
ここで、カメラ３０からＰＣ１１に送られる撮影情報には、表示部２０ａの画像（表示内容を映した画像）及び操作部２０ｂの画像（ロボットアーム４０によるボタンの押し下げ動作を映した画像）が含まれる。
【００２９】
上記検査システム１は、ロボットアーム４０の動作状態、診断ツール２０の動作状態、更に、診断ツール２０とＥＣＵ２との間での通信状態などを自動検証しつつ、ＥＣＵ２の検査処理を行うよう構成される。
以下では、検査システム１における検証処理を詳細に説明する。
【００３０】
図４のフローチャートに示すルーチンは、検査システム１の動作状態及び通信状態の検証処理の一例を示す。
ステップＳ１１０で、ＰＣ１１（運転条件指示部）は、検査対象であるＥＣＵ２によるエンジンの制御動作を模擬的に実施させるときの運転条件（走行パターン、モード走行）をデータベースＤＢから読み出し、読み出した運転条件の信号をドライバーモデル１２ａに出力する。これにより、エンジンモデル１２ｂからＥＣＵ２に向けて電気信号（模擬センサ信号）が出力されるようになり、ＥＣＵ２での模擬制御動作が実行される。
【００３１】
次のステップＳ１２０で、ＰＣ１１（ロボットアーム制御部）は、予め決められている診断ツール２０の操作内容（押し下げ操作ボタン）の情報をデータベースＤＢから読み出し、読み出した情報に従ってロボットアーム４０を制御する。
ロボットアーム４０は、ステップＳ１３０にて、操作部２０ｂを構成するボタンのうちの押し下げ指令がなされたボタンを指令された順に従って押し下げ操作する。
【００３２】
診断ツール２０は、操作部２０ｂがロボットアーム４０によって自動操作されると、ステップＳ１４０にて、押し下げ操作されたボタンに応じて予め決められている所定のコマンドをＥＣＵ２に送信する。
ＨＩＬＳシステム１０の通信監視部１３は、診断ツール２０とＥＣＵ２との間での通信を監視していて、ステップＳ１５０にて、診断ツール２０からＥＣＵ２に送信されたコマンドを通信ログとして記録し、取得した通信ログをＰＣ１１に転送する。
【００３３】
次いで、ＰＣ１１（カメラ制御部）は、ステップＳ１６０にて、カメラ３０に撮影要求（撮影画像の送信指令）を出力する。
そして、ＰＣ１１（カメラ制御部）は、ステップＳ１７０にて、カメラ３０から送信された画像を取り込んで保存する。ＰＣ１１が保存する画像は、ロボットアーム４０が実際に押し下げ操作した診断ツール２０のボタンをＰＣ１１が判別することができる画像、及び、診断ツール２０の表示部２０ａの表示内容をＰＣ１１が判別できる画像である。
なお、ステップＳ１７０にてＰＣ１１が保存する画像は、操作部２０ｂのボタン操作状態と表示部２０ａの表示内容との双方が映された１つの画像データ、又は、操作部２０ｂのボタン操作状態を表す画像データと表示部２０ａの表示内容を表す画像データとの２つの画像データとすることができる。
【００３４】
ＰＣ１１は、ステップＳ１８０にて、カメラ３０で撮影された画像を解析してロボットアーム４０が実際に押し下げ操作したボタンを検出し、押し下げ操作を指示したボタン（目標ボタン操作、基準操作内容）と、実際にロボットアーム４０が押し下げ操作したボタン（実操作内容）とを照合する処理、つまり、指示に一致するボタン操作が実施されたか否かを検証する処理を実施する。
ここで、ステップＳ１８０の処理内容の一例を、図５のフローチャートに従って説明する。
【００３５】
ステップＳ１８１で、ＰＣ１１は、押し下げ操作を指示したボタンと、カメラ３０の撮影画像に基づき検出したロボットアーム４０が実際に押し下げ操作したボタンとを照合する。
そして、ＰＣ１１が押し下げ操作を指示したボタンと、ロボットアーム４０が実際に押し下げ操作したボタンとが一致する場合（指示したボタン操作の全てが指示通りに実施された場合）、ＰＣ１１はステップＳ１８２に進む。
【００３６】
ステップＳ１８２で、ＰＣ１１は、ロボットアーム４０の制御及びロボットアーム４０の動作（診断ツール２０の操作部２０ｂの自動操作）が正常に行われる状態であることを示すデータ（ボタン自動操作の正常判定信号）を記録する。
一方、ＰＣ１１が押し下げ操作を指示したボタンと、ロボットアーム４０が実際に押し下げ操作したボタンとが一致しない場合（指示したボタン操作のうち少なくとも一部が指示通りに実施されなかった場合）、ＰＣ１１は、ステップＳ１８３に進む。
ステップＳ１８３で、ＰＣ１１は、ロボットアーム４０の制御とロボットアーム４０の動作との少なくとも一方が異常で、診断ツール２０の操作部２０ｂの自動操作が正常に行われない状態であることを示すデータ（ボタン自動操作の異常判定信号）を記録する。
【００３７】
このように、診断ツール２０のボタンの自動操作が正常に行われる状態であるか否かを判定し、その判定結果を記録することで、指示とは異なるボタン操作が行われる検査システム１の異常状態でＥＣＵ２の異常の有無が特定されてしまうことを抑制でき、自動検査処理の信頼性を維持できると共に、ボタン操作の異常情報に基づき検査システム１のメンテナンス作業（ロボットアーム４０の調整作業など）を容易に行える。
なお、上記のステップＳ１８０での照合処理の結果及び後述する各種の照合処理の結果は、ＰＣ１１の表示装置などに表示され、作業者が検査システム１の異常の有無を確認できるように構成される。
【００３８】
ＰＣ１１は、次いでステップＳ１９０にて、実際にロボットアーム４０が押し下げ操作したボタンに対応する目標の通信ログ（基準コマンド、目標コマンド）と、通信監視部１３が実際に取得した通信ログ（実際に診断ツール２０からＥＣＵ２に送信されたコマンド）とを照合する処理、つまり、ボタン操作に見合うコマンドを診断ツール２０が出力したか否かを検証する処理を実施する。
診断ツール２０からＥＣＵ２に送信されるコマンドは、例えば、モデルシミュレータ１２からの電気信号（模擬センサ信号）に基づいてＥＣＵ２が演算したエンジンや車両の運転状態を示すデータ（エンジン回転速度、車速、エンジン冷却水温度など）の転送指示などである。
【００３９】
ここで、ステップＳ１９０の処理内容の一例を、図６のフローチャートに従って説明する。
ステップＳ１９１で、ＰＣ１１は、ロボットアーム４０が押し下げ操作したボタンに対応してデータベースＤＢに記録されている目標のコマンドと、通信監視部１３がモニタしたコマンドとを照合する。
そして、目標のコマンドと実際に送信されたコマンドとが一致する場合、ＰＣ１１は、ステップＳ１９２に進み、診断ツール２０がロボットアーム４０によるボタン操作に見合うコマンドを出力したことを示すデータ（診断ツール２０の正常判定信号）を記録する。
【００４０】
一方、目標のコマンドと実際に送信されたコマンドとが一致しない場合、ＰＣ１１は、ステップＳ１９３に進み、診断ツール２０がロボットアーム４０によるボタン操作に見合うコマンドを出力しない状態であることを示すデータ（診断ツール２０の異常判定信号）を記録する。
係るコマンド出力機能の診断処理により、診断ツール２０の異常状態でのＥＣＵ２の異常の有無が特定されてしまうことを抑制でき、また、診断ツール２０の異常情報に基づき診断ツール２０の交換などの検査システム１のメンテナンス作業を容易に行える。
【００４１】
以上のようにして、ＰＣ１１は、診断ツール２０の操作部２０ｂがロボットアーム４０によって正常に操作されるか否か、更に、診断ツール２０がロボットアーム４０による操作に見合ったコマンドを出力するか否かを診断し、その結果を記録する。
そして、診断ツール２０からのコマンド（転送指令）を受信したＥＣＵ２は、ステップＳ２００にてコマンドに対応する応答情報を演算し、演算した応答情報を診断ツール２０に向けて送信する。
なお、コマンドが、例えば、ＥＣＵ２が演算したエンジンや車両の運転状態を示すデータの転送指示であれば、ＥＣＵ２が送信する応答情報は、エンジンや車両の運転状態を示すデータとなる。
【００４２】
ＨＩＬＳシステム１０の通信監視部１３は、診断ツール２０とＥＣＵ２との間での通信を監視していて、ステップＳ２１０にて、ＥＣＵ２が診断ツール２０に送信した応答情報を通信ログとして記録し、取得した通信ログをＰＣ１１に転送する。
通信監視部１３から通信ログを受け取ったＰＣ１１は、ステップＳ２２０にて、ＥＣＵ２が診断ツール２０に実際に送信した応答情報（通信ログ）と、診断ツール２０がＥＣＵ２に送信したコマンド（通信ログ）及びそのときの模擬動作状態（エンジン運転条件）に対応して予めデータベースＤＢに記憶されている目標の応答情報（基準通信情報、基準応答情報）とを照合する処理、つまり、ＥＣＵ２がコマンドに見合う応答情報を生成して出力する正常状態であるか否かを検証する処理を実施する。
【００４３】
ここで、ステップＳ２２０の処理内容の一例を、図７のフローチャートに従って説明する。
ステップＳ２２１で、ＰＣ１１は、ＥＣＵ２が診断ツール２０に実際に送信した応答情報と、診断ツール２０がＥＣＵ２に送信したコマンドに見合う目標の応答情報とを照合する。
【００４４】
そして、ＥＣＵ２が診断ツール２０に実際に送信した応答情報と、診断ツール２０がＥＣＵ２に送信したコマンドに見合う目標の応答情報とが一致する場合、ＰＣ１１は、ステップＳ２２２に進み、ＥＣＵ２が正常に動作する状態であることを示すデータ、つまり、ＥＣＵ２がコマンドを正しく読み込みかつコマンドに見合う応答情報を正しく演算して出力する状態であることを示すデータ（ＥＣＵ２の正常判定信号）を記録する。
【００４５】
一方、ＥＣＵ２が診断ツール２０に実際に送信した応答情報と、診断ツール２０がＥＣＵ２に送信したコマンドに見合う目標の応答情報とが一致しない場合、ＰＣ１１は、ステップＳ２２３に進み、ＥＣＵ２の動作が異常であることを示すデータ、つまり、ＥＣＵ２が、コマンドを正しく読み込まない状態とコマンドに基づく応答情報の演算処理に異常が発生している状態との少なくとも一方に該当していることを示すデータ（ＥＣＵ２の異常判定信号）を記録する。
【００４６】
このように、診断ツール２０が出力するコマンドに対して期待される応答情報と、ＥＣＵ２が実際に出力した応答情報とを照合することで、ＥＣＵ２の動作の正常、異常を精度よく診断できる。
ＰＣ１１（カメラ制御部）は、ＥＣＵ２からの応答情報の通信ログが転送されたタイミングのステップＳ２３０にて、カメラ３０に撮影要求を出力する。
ＰＣ１１（カメラ制御部）は、次のステップＳ２４０にて、カメラ３０から送信された画像を取り込んでデータベースＤＢに保存する。ＰＣ１１が保存する画像は、診断ツール２０の表示部２０ａの表示内容をＰＣ１１が読み取ることができる画像である。
【００４７】
一方、ＥＣＵ２からの応答情報を受け取った診断ツール２０は、ステップＳ２５０にて、応答情報に基づき表示部２０ａの表示内容を更新する処理、つまり、ＥＣＵ２からの応答情報を表示する画面に切り替える処理を行う。
そして、ＰＣ１１（カメラ制御部）は、ステップＳ２６０にて、表示部２０ａの表示内容が切り替わると、カメラ３０が撮影した表示部２０ａの画像、つまり、ＥＣＵ２からの応答情報の表示画面を映した画像を取り込んで保存する。
なお、ステップＳ２４０及びステップＳ２６０にてＰＣ１１が保存する画像は、ボタン操作状態と表示部２０ａの表示内容との双方が映された１つの画像とすることができ、また、表示部２０ａのみを撮影した画像（トリミング画像を含む）とすることもできる。
【００４８】
次いで、ＰＣ１１は、ステップＳ２７０にて、診断ツール２０の表示部２０ａに実際に表示された内容と、ＥＣＵ２からの応答情報（通信ログ）に基づく目標の表示内容（基準表示内容）とを照合する処理を行う。つまり、ＰＣ１１は、ステップＳ２７０にて、診断ツール２０がＥＣＵ２からの応答情報を表示部２０ａに正しく表示するか否か、換言すれば、診断ツール２０の表示機能（動作）が正常であるか否かを検証する処理を実施する。
ここで、ステップＳ２７０の処理内容の一例を、図８のフローチャートに従って説明する。
【００４９】
ステップＳ２７１で、ＰＣ１１は、診断ツール２０の表示部２０ａに実際に表示された内容と、ＥＣＵ２からの応答情報（通信ログ）に基づく目標の表示内容とを照合する。
なお、ＰＣ１１は、例えば、カメラ３０が撮影した表示部２０ａの画像について文字認識処理を行って文字画像を文字コードに変換し、文字コードに基づきステップＳ２７１における表示内容の照合処理を実施することができる。
【００５０】
そして、診断ツール２０の表示部２０ａに表示された内容がＥＣＵ２からの応答情報に基づく目標の表示内容に一致する場合、ＰＣ１１は、ステップＳ２７２に進み、診断ツール２０の表示部２０ａにおける表示内容が正しいことを示すデータ、つまり、診断ツール２０の情報入力及び表示機能が正常であることを示すデータ（診断ツール２０の正常判定信号）を記録する。
【００５１】
一方、診断ツール２０の表示部２０ａに表示された内容がＥＣＵ２からの応答情報に基づく目標の表示内容に一致しない場合、ＰＣ１１は、ステップＳ２７３に進み、診断ツール２０の表示部２０ａにおける表示内容が間違っていることを示すデータ、つまり、診断ツール２０の情報入力及び／又は表示機能に異常が生じていることを示すデータ（診断ツール２０の異常判定信号）を記録する。
このように、診断ツール２０が、ＥＣＵ２から送信されている応答情報に見合う内容の表示を行わない異常を検出すれば、診断ツール２０の異常状態でのＥＣＵ２の異常の有無が特定されてしまうことを抑制でき、また、診断ツール２０の異常情報に基づき診断ツール２０の交換などの検査システム１のメンテナンス作業を容易に行える。
【００５２】
その後、ＰＣ１１は、ステップＳ１８０、ステップＳ１９０、ステップＳ２２０、ステップＳ２７０にて実施した照合処理の結果、つまり、ロボットアーム制御の正常／異常、診断ツール２０の正常／異常、ＥＣＵ２の正常／異常の判別結果を、ステップＳ２８０にてデータベースＤＢに保存する。
上記のようにして、ＰＣ１１は、ロボットアーム４０によって診断ツール２０の操作部２０ｂが正常に操作されるか否かを判定し、更に、診断ツール２０のコマンド出力機能、コマンドに対するＥＣＵ２の応答機能、診断ツール２０における画面表示機能を検証し、その結果をデータベースＤＢに保存する。
【００５３】
上記の検証処理によると、ロボットアーム４０による診断ツール２０の自動操作が正常に行われる状態であることを検証するので、診断ツール２０の操作ミスによって検査エラーが発生することを抑制でき、検査処理を効率良く進めることが可能となる。
また、診断ツール２０とＥＣＵ２との間での通信を監視し、診断ツール２０が操作部２０ｂの操作に見合ったコマンドを送信し、ＥＣＵ２がコマンドに見合った応答情報を返信するか否かを検証するので、診断ツール２０とＥＣＵ２との間での通信異常によって検査エラーが発生することを抑制できる。
【００５４】
更に、診断ツール２０とＥＣＵ２との間での通信を監視し、診断ツール２０の表示部２０ａの表示内容が、ＥＣＵ２からの応答情報に見合った内容であるか否かを検証することで、診断ツール２０の異常によって検査エラーが発生することを抑制できる。
これらの作用効果に伴い、上記の検査システム１では、汎用の診断ツール２０を用いつつＥＣＵ２の検査を高効率かつ高精度に行える。
更に、診断ツール２０及びロボットアーム４０について故障の有無を判定し、また、診断ツール２０とＥＣＵ２との間での通信異常の有無を判定することで、検査システム１における故障の発生個所を特定でき、適切なメンテナンス作業を容易に行える。
【００５５】
図９のフローチャートに示すルーチンは、診断ツール２０の誤表示の有無を検証する処理の一例を示す。
ステップＳ３１０で、ＰＣ１１は、ＥＣＵ２を模擬動作させるときのエンジン運転条件をデータベースＤＢから読み出してモデルシミュレータ１２に与え、ＥＣＭ２の模擬動作を開始させる。
【００５６】
次いで、ＰＣ１１は、ステップＳ３２０にて、モデルシミュレータ１２からＥＣＵ２に出力される電気信号（模擬センサ信号）を異常（故障）状態とするための情報を、データベースＤＢから読み込み、モデルシミュレータ１２にデータを設定する。これにより、ＥＣＵ２は、所定の異常パターンの模擬センサ信号を入力する異常モードで模擬動作することになる。
そして、ＥＣＵ２は、ステップＳ３３０で、モデルシミュレータ１２が出力する電気信号（模擬センサ信号）に基づいて所定の診断用パラメータを演算し、当該診断用パラメータに基づき各種デバイス（各種のセンサ、アクチュエータ）の異常の有無を診断する処理（故障診断処理）を実施し、異常モードで模擬動作が行われることで、模擬動作の設定に応じた所定の異常状態を検出するようになる。
【００５７】
ステップＳ３４０で、ＨＩＬＳシステム１０の通信監視部１３は、診断ツール２０とＥＣＵ２との間で通信ログの取得（送受信データの記録）を開始する。
ステップＳ３５０で、ＰＣ１１は、ＥＣＵ２が異常状態を診断した箇所（デバイス、センサ）の数（異常診断数）を、診断ツール２０の表示部２０ａに表示させるためのボタン操作の情報（基準操作内容）をデータベースＤＢから読み出し、読み出した操作情報に基づきロボットアーム４０を制御する。
【００５８】
ＰＣ１１によるロボットアーム４０の制御により、診断ツール２０の操作部２０ｂの所定ボタンが押し下げ操作され、診断ツール２０は、ボタン操作に応じてＥＣＵ２に異常診断数の通知を要求するコマンドを送信し、ＥＣＵ２は、故障診断処理で異常を検出したデバイスの数の情報を、コマンドに対する応答情報として診断ツール２０に送信する。そして、ＥＣＵ２から異常診断数の情報を受信した診断ツール２０は、表示部２０ａに異常診断数を表示する（表示部２０ａの表示を異常診断数の表示画面に切り替える）。
【００５９】
ＰＣ１１は、診断ツール２０の表示部２０ａの表示が異常診断数の表示画面に切り替わり、カメラ３０によって撮影された表示部２０ａの画像が切り替わると、カメラ３０が撮影した表示部２０ａの画像、つまり、異常診断数を表示する画面（第１診断結果画面）の画像を保存する。
次いで、ステップＳ３６０で、ＰＣ１１は、診断ツール２０の表示部２０ａにＥＣＵ２による診断結果の一覧（第２診断結果画面）を表示させるためのボタン操作（基準操作情報）をデータベースＤＢから読み出し、読み出した操作情報に基づきロボットアーム４０を制御する。つまり、ＰＣ１１は、表示部２０ａの表示を診断結果の一覧表示画面に切り替えるためのボタン操作を、ロボットアーム４０に実行させる。
【００６０】
かかるロボットアーム４０によるボタン操作により、診断ツール２０は、ＥＣＵ２に診断結果一覧の通知を要求するコマンドを送信し、ＥＣＵ２は、コマンドに対する応答情報として故障診断の対象とした各デバイスについての異常／正常の診断結果の情報を診断ツール２０に送信する。
ＥＣＵ２から診断結果一覧の情報を取得した診断ツール２０は、表示部２０ａの表示内容を、ＥＣＵ２での診断結果の一覧を示す表示に切り替える。
【００６１】
ＰＣ１１は、診断ツール２０の表示部２０ａの表示が診断結果一覧の表示画面に切り替わり、カメラ３０によって撮影された表示部２０ａの画像が切り替わると、カメラ３０が撮影した表示部２０ａの画像、つまり、診断結果の一覧を表示する画面（第２診断結果画面）の画像を保存する。
なお、診断ツール２０の表示部２０ａにおける診断結果一覧の表示画面は、例えば、ＥＣＵ２が診断処理の対象としたセンサやアクチュエータの名称と、当該デバイスについての診断で正常判定したか異常判定したかを示す表示（ＯＫ／ＮＧの区別）とを列記する画面である。
【００６２】
ステップＳ３７０で、ＰＣ１１は、診断ツール２０の表示部２０ａの表示内容をＥＣＵ２の診断処理における診断パラメータの表示（第３診断結果画面）に切り替えるためのボタン操作内容をデータベースＤＢから読み出し、読み出したボタン操作内容に従ってロボットアーム４０の制御を実行する。
ＰＣ１１によるロボットアーム４０の制御により、診断ツール２０の操作部２０ｂが表示部２０ａの表示内容を診断パラメータの表示に切り替えるように操作される。そして、診断ツール２０は、ボタン操作に応じて診断パラメータの通知を要求するコマンドを送信し、ＥＣＵ２からの応答情報としての診断パラメータを取得し、取得した情報に基づき表示部２０ａの表示内容を診断パラメータの表示に切り替える。
【００６３】
ＥＣＵ２は、診断処理において、センサ出力電圧値、センサ出力から求めた吸入空気量やエンジン回転速度などの状態量を監視し、これら状態量の最大値、最小値、異常発生時の値などを診断パラメータとして保存する機能を備えている。
そして、診断ツール２０から送信されたコマンドが診断パラメータの通知を要求するコマンドである場合、ＥＣＵ２は、保存してある診断パラメータの情報を応答情報として診断ツール２０に送信する。
【００６４】
ＰＣ１１は、診断ツール２０の表示部２０ａの表示内容が診断パラメータの表示に切り替わると、カメラ３０が撮影した表示部２０ａの画像、つまり、診断パラメータの表示画面（第３診断結果画面）の画像を保存する。
上記のように、診断ツール２０は、操作部２０ｂの操作に応じてＥＣＵ２に向けてコマンドを送信することで、ＥＣＵ２での診断処理結果に関わるデータをＥＣＵ２から読み込み、ＥＣＵ２での診断内容を概略から詳細まで段階的に切替えて表示する機能を有している。
【００６５】
そして、ＰＣ１１は、診断ツール２０の表示部２０ａにＥＣＵ２での診断内容（診断結果画面）を順次表示させるために、ロボットアーム４０を制御して診断ツール２０の操作部２０ｂを自動操作する。
一方、カメラ３０は、各診断結果画面が表示される表示部２０ａを撮影し、ＰＣ１１は、カメラ３０が撮影した表示部２０ａの表示内容、つまり、各診断結果画面の画像を記録する。
【００６６】
そして、ステップＳ３８０で、ＰＣ１１は、診断ツール２０の表示部２０ａを撮影した画像から解析される表示内容（各診断結果画面の表示内容）が正常であるか否かの判定を行う。
次のステップＳ３９０で、ＰＣ１１は、カメラ３０が撮影した画像（診断結果画面を撮影した画像）、通信ログ、ステップＳ３８０での判定結果などをデータベースＤＢに記録する。
【００６７】
図１０のフローチャートは、図９のフローチャートのステップＳ３８０における判定処理の一例を示す。
ステップＳ４１０で、ＰＣ１１は、ＥＣＵ２の模擬動作において異常状態に設定したセンサやアクチュエータの数（目標異常診断数、基準異常診断数、電気信号のＮＧ設定状態）と、診断ツール２０の表示部２０ａ（第１診断結果画面）に表示された異常診断数とを比較する。なお、ＰＣ１１は、診断ツール２０の表示部２０ａに表示された異常診断数を、第１診断結果画面を撮影した画像信号についての文字認識処理によって検出する。
【００６８】
そして、診断ツール２０の表示部２０ａに表示された異常診断数と、ＥＣＵ２の模擬動作において設定した異常診断数とが一致する場合、ＰＣ１１は、ステップＳ４２０にて、診断ツール２０の異常診断数の表示が正常であることを判定して記録する。
一方、診断ツール２０の表示部２０ａに表示された異常診断数と、ＥＣＵ２の模擬動作において設定した異常数とが一致しない場合、ＰＣ１１は、ステップＳ４３０にて、診断ツール２０の異常診断数の表示が異常であることを判定して記録する。
【００６９】
次いで、ＰＣ１１は、ステップＳ４４０にて、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定（電気信号のＯＫ／ＮＧ状態、基準の診断結果一覧）と、診断ツール２０の表示部２０ａに表示された診断結果の一覧とを比較する。なお、ＰＣ１１は、診断ツール２０の表示部２０ａに表示された診断結果の一覧を、第２診断結果画面を撮影した画像信号についての文字認識処理によって検出する。
そして、診断ツール２０の表示部２０ａに表示された診断結果の一覧と、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とが一致する場合、ＰＣ１１は、ステップＳ４５０にて、診断ツール２０の診断結果一覧の表示が正常であることを判定して記録する。
【００７０】
ここで、診断結果一覧が一致するか否かの判定は、例えば、水温センサや酸素センサなどのデバイス（センサ）毎に、表示部２０ａに表示された正常／異常と、ＥＣＵ２の模擬動作で設定した正常／異常とが一致するか否かを判定する処理である。例えば、ＥＣＵ２の模擬動作における設定が、水温センサ：異常、酸素センサ：正常であるときに、表示部２０ａの表示が、水温センサ：異常、酸素センサ：正常であれば、診断結果一覧は一致することになる。
一方、診断ツール２０の表示部２０ａに表示された診断結果の一覧と、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とが一致しない場合、ＰＣ１１は、ステップＳ４６０にて、診断ツール２０の診断結果一覧の表示が異常であることを判定して記録する。
【００７１】
次いで、ＰＣ１１は、ステップＳ４７０にて、ＥＣＵ２の模擬動作において設定した診断パラメータの情報（基準パラメータ情報）と、診断ツール２０の表示部２０ａに表示された診断パラメータの情報とを比較する。なお、ＰＣ１１は、診断ツール２０の表示部２０ａに表示された診断パラメータを、第３診断結果画面を撮影した画像信号についての文字認識処理によって検出する。
そして、診断ツール２０の表示部２０ａに表示された診断パラメータと、ＥＣＵ２の模擬動作において設定した診断パラメータとが一致する場合、ＰＣ１１は、ステップＳ４８０にて、診断ツール２０の診断パラメータの表示が正常であることを判定して記録する。
【００７２】
一方、診断ツール２０の表示部２０ａに表示された診断パラメータと、ＥＣＵ２の模擬動作において設定した診断パラメータとが一致しない場合、ＰＣ１１は、ステップＳ４９０にて、診断ツール２０の診断パラメータの表示が異常であることを判定して記録する。
このように、ＰＣ１１は、ＥＣＵ２における診断結果の項目毎に、正常な診断結果が診断ツール２０に表示されたか否かを検証し、係る判定結果を記録する。従って、例えば診断ツール２０の表示機能の異常によってＥＣＵ２での診断結果が誤って表示される場合に、ＰＣ１１は、これを異常状態として検出することができ、診断ツール２０の異常によって検査エラーが発生することを抑制できる。
【００７３】
ここで、診断ツール２０の表示部２０ａに表示されたＥＣＵ２の診断結果が、ＥＣＵ２の模擬動作の設定に対応しない状態は、診断ツール２０の異常によって発生する他、ＥＣＵ２からの診断結果の送信データが間違っている場合、つまり、ＥＣＵ２の異常によっても発生する。
そこで、図９のフローチャートのステップＳ３８０における判定処理の一例として、診断ツール２０の異常とＥＣＵ２の異常とを区別する処理の例を、図１１及び図１２のフローチャートに従って説明する。
【００７４】
ステップＳ５１０で、ＰＣ１１は、ＥＣＵ２の模擬動作において異常状態に設定したセンサやアクチュエータなどのデバイスの数（設定異常診断数、基準異常診断数）と、診断ツール２０の表示部２０ａに表示された異常診断数とを比較する。なお、ＰＣ１１は、診断ツール２０の表示部２０ａに表示された異常診断数を、第１診断結果画面を撮影した画像信号についての文字認識処理によって検出する。
【００７５】
そして、診断ツール２０の表示部２０ａに表示された異常診断数と、ＥＣＵ２の模擬動作において設定した異常診断数とが一致する場合、ＰＣ１１は、ステップＳ５２０にて、診断ツール２０の異常診断数の表示が正常であることを判定して記録する。
なお、診断ツール２０の異常診断数の表示が正常であることは、ＥＣＵ２における診断処理で各種デバイスの異常状態が正しく診断され、かつ、係るＥＣＵ２での診断結果を診断ツール２０が正しく表示している状態であることを示す。
【００７６】
一方、診断ツール２０の表示部２０ａに表示された異常診断数と、ＥＣＵ２の模擬動作において設定した異常診断数とが一致しない場合、ＰＣ１１は、ステップＳ５３０にて、ＥＣＵ２の模擬動作において設定した異常診断数と、ＥＣＵ２から診断ツール２０に送信された異常診断数のデータ（通信ログのデータ）とが一致しているか否かを判定する。ＰＣ１１は、ＥＣＵ２から診断ツール２０に送信された異常診断数のデータを、通信監視部１３が取得した通信ログに基づき検出する。
【００７７】
ここで、ＥＣＵ２の模擬動作において設定した異常診断数（異常状態に設定したデバイス数）と、ＥＣＵ２から診断ツール２０に送信された異常診断数のデータとが一致する場合、模擬動作において異常状態に設定されたデバイスの異常をＥＣＵ２は正しく診断し、その結果をそのまま診断ツール２０に送信していることになる。
そこで、ＥＣＵ２の模擬動作において設定した異常診断数と、ＥＣＵ２から診断ツール２０に送信された異常診断数のデータとが一致する場合、ＰＣ１１は、ステップＳ５４０にて、診断ツール２０の異常診断数の表示が異常であることを判定して記録する。
【００７８】
一方、ＥＣＵ２の模擬動作において設定した異常診断数と、ＥＣＵ２から診断ツール２０に送信された異常診断数のデータとが一致しない場合、ＥＣＵ２からの異常診断数の送信データが間違っているために、診断ツール２０の表示部２０ａに表示された異常診断数とＥＣＵ２の模擬動作において設定した異常診断数とが一致していないことになる。
そこで、ＰＣ１１は、ＥＣＵ２の模擬動作において設定した異常診断数と、ＥＣＵ２から診断ツール２０に送信された異常診断数のデータとが一致しない場合、ステップＳ５５０にて、ＥＣＵ２からの異常診断数の送信データの異常を判定して記録すると共に、ＥＣＵ２から診断ツール２０に送信された異常診断数のデータ、つまり、期待値とは異なる誤った異常診断数のデータを記録する。
【００７９】
次いで、ＰＣ１１は、ステップＳ５６０にて、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定（基準の診断結果一覧）と、診断ツール２０の表示部２０ａに表示された診断結果一覧とを比較する。なお、ＰＣ１１は、診断ツール２０の表示部２０ａに表示された診断結果の一覧を、第２診断結果画面を撮影した画像信号についての文字認識処理によって検出する。
そして、診断ツール２０の表示部２０ａに表示された診断結果の一覧と、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とが一致する場合、ＰＣ１１は、ステップＳ５７０にて、診断ツール２０の診断結果一覧の表示が正常であることを判定して記録する。
【００８０】
一方、診断ツール２０の表示部２０ａに表示された診断結果一覧と、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とが一致しない場合、ＰＣ１１は、ステップＳ５８０にて、診断ツール２０の診断結果一覧の表示が異常であることを判定して記録する。上記のステップＳ５６０−ステップＳ５８０での処理は、図１０のフローチャートのステップＳ４４０−ステップＳ４６０での処理と同様である。
【００８１】
なお、診断ツール２０の表示部２０ａに表示された診断結果一覧と、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とが一致しない場合、ＰＣ１１は、ＥＣＵ２から診断ツール２０に送信された診断結果一覧の情報を通信ログから取得し、通信ログにおける診断結果一覧の情報と、ＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とを比較させることができる。
そして、ＰＣ１１は、通信ログにおける診断結果一覧の情報とＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とが一致すれば診断ツール２０の異常を判定し、通信ログにおける診断結果一覧の情報とＥＣＵ２の模擬動作における各デバイスの正常／異常の設定とが一致しなければＥＣＵ２の異常を判定することができる。
【００８２】
次いで、ＰＣ１１は、ステップＳ５９０にて、ＥＣＵ２の模擬動作において設定した診断パラメータの情報（基準診断パラメータ、診断パラメータの種類）と、診断ツール２０の表示部２０ａに表示された診断パラメータとを比較する。
ステップＳ５９０における照合は、例えば、診断パラメータとしてエンジン回転速度の最大値を演算するようにＥＣＵ２の処理動作が設定されているときに、診断ツール２０の表示部２０ａに診断パラメータとして、エンジン回転速度の最大値の情報が表示されたか否かを判定するものである。
なお、ＰＣ１１は、診断ツール２０の表示部２０ａに表示された診断パラメータを、第３診断結果画面を撮影した画像信号についての文字認識処理によって検出する。
【００８３】
そして、診断ツール２０の表示部２０ａに表示された診断パラメータと、模擬動作において設定した診断パラメータの情報とが一致する場合、ＰＣ１１は、ステップＳ６００にて、診断ツール２０の表示部２０ａに表示された診断パラメータの値が、データベースＤＢから読み出した診断パラメータの期待値（目標値）に一致しているか否かを判定する。
例えば、診断パラメータとしてエンジン回転速度の最大値を演算する設定の場合、ＰＣ１１は、ステップＳ５９０にてエンジン回転速度の最大値が診断パラメータとして診断ツール２０の表示部２０ａに表示されたことを検出すると、ステップＳ６００では、診断ツール２０の表示部２０ａに表示されたエンジン回転速度の最大値が、ＥＣＵ２の模擬動作における設定値に一致しているか否かを判定する。
【００８４】
診断ツール２０の表示部２０ａに表示された診断パラメータの値が期待値に一致する場合、ＰＣ１１は、ステップＳ６１０にて、診断ツール２０の診断パラメータの表示が正常であって、かつ、ＥＣＵ２が演算した診断パラメータの値が正常であることを判定して記録する。
一方、診断ツール２０の表示部２０ａに表示された診断パラメータの値が期待値に一致しない場合、ＰＣ１１は、ステップＳ６２０にて、診断ツール２０の診断パラメータ表示が正常であること、及び、ＥＣＵ２における診断パラメータの演算結果が異常であることを記録し、更に、ＥＣＵ２で演算されデータベースＤＢから読み出した期待値（目標値）と一致しなかった診断パラメータの値を記録する。
【００８５】
また、診断ツール２０の表示部２０ａに表示された診断パラメータと、ＥＣＵ２の模擬動作において演算対象として設定した診断パラメータ（設定診断パラメータ）とが一致しない場合、ＰＣ１１は、ステップＳ６３０にて、ＥＣＵ２の模擬動作において設定した診断パラメータと、ＥＣＵ２から診断ツール２０に向けて送信された診断パラメータの情報（通信ログにおける診断パラメータの情報）とを比較する。
ここで、ＥＣＵ２の模擬動作において設定した診断パラメータと、通信ログにおける診断パラメータの情報とが一致する場合、ＥＣＵ２からは診断パラメータの情報が正しく出力されているものの、診断ツール２０の表示内容が誤っていることになる。
【００８６】
そこで、ＥＣＵ２の模擬動作において設定した診断パラメータと、通信ログにおける診断パラメータの情報とが一致する場合、ＰＣ１１は、ステップＳ６４０にて、ＥＣＵ２の診断パラメータの送信が正常であること、及び、診断ツール２０における診断パラメータの表示に異常があることを記録すると共に、診断ツール２０に誤って表示された診断パラメータの情報を記録する。
【００８７】
一方、ＥＣＵ２の模擬動作において設定した診断パラメータと、通信ログにおける診断パラメータの情報とが一致しない場合、ＰＣ１１は、ステップＳ６５０にて、ＥＣＵ２の診断パラメータの送信が異常であること、及び、診断ツール２０における診断パラメータの表示に異常があることを記録すると共に、診断ツール２０に誤って表示された診断パラメータの情報を記録する。
上記のようにして、異常診断数、診断結果一覧、及び診断パラメータの３項目について、診断ツール２０における表示内容やＥＣＵ２からの送信データの判定を行うと、ＰＣ１１は、ステップＳ６６０にて、異常診断数、診断結果の一覧、及び診断パラメータの全ての項目について正常状態を検出したか否かを判定する。
【００８８】
そして、異常診断数、診断結果一覧、及び診断パラメータの全て項目について正常状態を検出した場合、ＰＣ１１は、ステップＳ６７０にて、診断ツール２０の表示部２０ａに表示された診断結果の内容が全て模擬動作の設定に見合った内容で、模擬動作の設定に一致しない情報（表示内容、通信データ）が無かったことを記録する。
異常診断数、診断結果一覧、及び診断パラメータの全てについて正常状態を検出した場合、ＰＣ１１は、更にステップＳ６８０にて、診断ツール２０及びＥＣＵ２の正常動作状態を確定したこと（診断ツール２０及びＥＣＵ２の正常状態を検出したこと）を記録する。
【００８９】
一方、異常診断数、診断結果一覧、及び診断パラメータのうちの少なくとも１つで診断ツール２０の表示内容又はＥＣＵ２からの送信データの異常を検出した場合、ＰＣ１１は、ステップＳ６６０からステップＳ６９０に進み、模擬動作の設定とは異なった表示内容、通信データを記録する。
更に、ＰＣ１１は、ステップＳ７００にて、異常診断数、診断結果一覧、及び診断パラメータのうちの少なくとも１つについて診断ツール２０の表示内容の異常を検出する一方で、ＥＣＵ２からの送信データの異常を検出しなかった場合に該当するか否かを判定する。
そして、ＥＣＵ２からの診断結果の送信データに異常がなく、診断ツール２０の表示内容に異常があった場合、ＰＣ１１は、ステップＳ７１０にて、診断ツール２０の異常状態の確定（診断ツール２０の故障検出）を記録する。
【００９０】
一方、ＥＣＵ２からの診断結果の送信データに異常があった場合、ＰＣ１１は、ステップＳ７２０にて、診断ツール２０の表示内容に異常がなく、ＥＣＵ２からの診断結果の送信データに異常があった場合に該当するか否かを判定する。
そして、診断ツール２０の表示内容に異常がなく、ＥＣＵ２からの送信データに異常があった場合、ＰＣ１１は、ステップＳ７３０にて、ＥＣＵ２の異常状態の確定（ＥＣＵ２の故障検出）を記録する。
【００９１】
一方、ＥＣＵ２からの診断結果の送信データに異常があり、かつ、診断ツール２０の表示内容にも異常があった場合、ＰＣ１１は、ステップＳ７４０にて、診断ツール２０及びＥＣＵ２の異常状態の確定（ＥＣＵ２及び診断ツール２０の故障検出）を記録する。
図１１、図１２のフローチャートに示した処理によると、診断ツール２０の表示内容の異常を、診断ツール２０の異常に因るものとＥＣＵ２の異常に因るものとに区別でき、診断ツール２０の異常による表示内容の異常に基づき、ＥＣＵ２の異常が誤診断されることを抑制できる。
【００９２】
ところで、ＥＣＵ２は、運転条件によってＥＣＵ２が診断ツール２０からのコマンド送信に対し無応答になる場合があり、係るＥＣＵ２の動作不良を診断し得る処理の一例を、図１３のフローチャートに従って説明する。
ステップＳ８１０で、ＰＣ１１は、ＥＣＵ２を模擬動作させるときのエンジン運転条件（第１運転条件）をデータベースＤＢから読み出してモデルシミュレータ１２（１２ａ，１２ｂ）に与え、ＥＣＭ２の模擬動作（シミュレーション）を開始させる。
【００９３】
次いで、ＰＣ１１は、ステップＳ８２０にて、ＥＣＵ２における診断処理で正常状態が診断されることになる情報をデータベースＤＢから読み出してモデルシミュレータ１２に設定することで、ＨＩＬＳシステム１０がＥＣＵ２に出力する電気信号（模擬センサ信号）を、正常状態（第１の正常状態）を模擬するパターンに設定する。これにより、ＥＣＵ２は、第１の正常モードで模擬動作することになる。
そして、ＥＣＵ２は、ステップＳ８３０で、所定の診断用パラメータを演算し、当該診断用パラメータに基づき所定のデバイスについて異常の有無を診断する処理を実施する。
【００９４】
次いで、ステップＳ８４０で、ＰＣ１１は、診断ツール２０の表示部２０ａにＥＣＵ２による診断結果の一覧（第２診断結果画面）を表示させるための操作内容（基準操作情報）をデータベースＤＢから読み出し、読み出した操作情報に基づきロボットアーム４０を制御することで、診断結果の一覧を診断ツール２０の表示部２０ａに表示させるためのボタン操作をロボットアーム４０に実行させる。
そして、診断ツール２０は、ロボットアーム４０によるボタン操作に応じて診断結果一覧の情報の通知を要求するコマンドをＥＣＵ２に送信し、ＥＣＵ２からの応答情報としての診断結果一覧の情報を取得し、取得した情報に基づき表示部２０ａの表示内容を診断結果一覧の表示に切り替える。
【００９５】
ＰＣ１１は、診断ツール２０の表示部２０ａの表示内容が切り替わると、カメラ３０が撮影した表示部２０ａの画像、つまり、診断結果の一覧表示（第２診断結果画面）の画面を撮影した画像信号を保存する。
更に、ステップＳ８５０で、ＰＣ１１は、診断ツール２０の表示部２０ａの表示内容をＥＣＵ２の診断処理における診断パラメータの表示（第３診断結果画面）に切り替えるための操作内容をデータベースＤＢから読み出し、読み出した操作内容に従ってロボットアーム４０の制御を実行する。
【００９６】
そして、診断ツール２０は、ロボットアーム４０によるボタン操作に応じて診断パラメータの通知を要求するコマンドをＥＣＵ２に送信し、ＥＣＵ２からの応答情報としての診断パラメータの情報を取得し、取得した情報に基づき表示部２０ａの表示内容を診断パラメータの表示に切り替える。
ＰＣ１１は、診断ツール２０の表示部２０ａの表示内容が診断パラメータの表示に切り替わると、カメラ３０が撮影した表示部２０ａの画像、つまり、診断パラメータの表示画面（第３診断結果画面）を撮影した画像信号を保存する。
【００９７】
次に、ＰＣ１１は、ステップＳ８６０にて、ＥＣＵ２を模擬動作させるときのエンジン運転条件として、ステップＳ８１０で設定される運転条件（第１運転条件）とは異なる第２運転条件をデータベースＤＢから読み出し、更に、ＨＩＬＳシステム１０がＥＣＵ２に出力する電気信号（模擬センサ信号）を第２運転条件での正常パターン（第２の正常パターン）に設定する。
そして、ステップＳ８７０で、ＰＣ１１は、ステップＳ８４０と同様に、診断結果の一覧を診断ツール２０の表示部２０ａに表示させるための自動操作を行い、表示部２０ａに表示された診断結果一覧の画面を撮影した画像信号の記録を行う。
【００９８】
次いで、ステップＳ８８０で、ＰＣ１１は、ステップＳ８５０と同様に、診断パラメータを診断ツール２０の表示部２０ａに表示させるための自動操作を行い、表示部２０ａに表示された診断パラメータ情報の画面を撮影した画像信号の記録を行う。
そして、ＰＣ１１は、ステップＳ８９０にて診断ツール２０の表示内容の照合を行った後、ステップＳ９００にて照合結果をデータベースＤＢに格納する。
【００９９】
図１４及び図１５のフローチャートは、ステップＳ８９０における診断ツール２０の表示内容の照合処理の一例を示す。
ステップＳ１０１０にてＰＣ１１は、第１運転条件（第１回目）であるときに診断ツール２０の表示部２０ａに表示された診断結果の一覧が、第１運転条件でのＥＣＵ２の模擬動作において正常状態に設定したデバイスに一致するか否かを判定する。
【０１００】
そして、第１運転条件であるときに診断ツール２０の表示部２０ａに表示された診断結果の一覧が模擬動作の設定（基準表示内容）に一致する場合、ＰＣ１１はステップＳ１０２０にて、第１運転条件での診断ツール２０の診断結果一覧の表示が正常であったことを判定し、判定結果を記録する。
一方、第１運転条件であるときに診断ツール２０の表示部２０ａに表示された診断結果の一覧が模擬動作の設定に一致しない場合、ＰＣ１１はステップＳ１０３０にて、第１運転条件での診断ツール２０の診断結果一覧の表示が異常であったことを判定し、判定結果を記録する。
【０１０１】
また、ＰＣ１１は、ステップＳ１０４０にて、第１運転条件であるときに診断ツール２０の表示部２０ａに表示された診断パラメータの情報が、第１運転条件でのＥＣＵ２の模擬動作において設定した診断パラメータの情報に一致するか否かを判定する。
そして、第１運転条件であるときに診断ツール２０の表示部２０ａに表示された診断パラメータの情報が模擬動作の設定（基準表示内容）に一致する場合、ＰＣ１１はステップＳ１０５０にて、第１運転条件で診断ツール２０の診断パラメータの表示が正常であったことを判定して記録する。
【０１０２】
一方、第１運転条件であるときに診断ツール２０の表示部２０ａに表示された診断パラメータの情報が模擬動作の設定に一致しない場合、ＰＣ１１はステップＳ１０６０にて、第１運転条件で診断ツール２０の診断パラメータの表示が異常であったことを判定して記録する。
更に、ＰＣ１１は、ステップＳ１０７０にて、第１運転条件（第１回目）であるときに診断ツール２０の表示部２０ａに表示された診断結果一覧と、第２運転条件（第２回目）であるときに診断ツール２０の表示部２０ａに表示された診断結果一覧とを照合する。
【０１０３】
そして、第１運転条件であるときに診断ツール２０の表示部２０ａに表示された診断結果一覧と、第２運転条件であるときに診断ツール２０の表示部２０ａに表示された診断結果一覧とが一致する場合、ＰＣ１１はステップＳ１０８０にて、異なる２つの運転条件での診断結果一覧の表示が一致する正常状態を判定して記録する。
一方、第１運転条件であるときに診断ツール２０の表示部２０ａに表示された診断結果一覧と、第２運転条件であるときに診断ツール２０の表示部２０ａに表示された診断結果一覧とが一致しない場合、ＰＣ１１はステップＳ１０９０にて、異なる２つの運転条件での診断結果一覧の表示が一致しない異常状態を判定して記録する。
【０１０４】
また、ＰＣ１１は、ステップＳ１１００にて、第１運転条件（第１回目）での診断ツール２０における診断パラメータの表示と、第２運転条件（第２回目）での診断ツール２０における診断パラメータの表示とを照合する。
そして、第１運転条件での診断ツール２０における診断パラメータの表示と、第２運転条件での診断ツール２０における診断パラメータの表示とが一致する場合、ＰＣ１１はステップＳ１１１０にて、異なる２つの運転条件での診断パラメータの表示が一致する正常状態を判定して記録する。
【０１０５】
一方、第１運転条件での診断ツール２０における診断パラメータの表示と、第２運転条件での診断ツール２０における診断パラメータの表示とが一致しない場合、ＰＣ１１はステップＳ１１２０にて、異なる２つの運転条件での診断パラメータの表示が一致しない異常状態を判定して記録する。
また、ＰＣ１１は、ステップＳ１１３０にて、上記ステップＳ１０１０−ステップＳ１１２０における照合処理の全てで正常状態の判定がなされ、異常状態の判定が全項目でなされていないかを判別する。
【０１０６】
そして、上記ステップＳ１０１０−ステップＳ１１２０における照合処理の全てで正常状態の判定を行った場合、ＰＣ１１はステップＳ１１４０にて、照合処理の全てで正常判定したことを記録する。
一方、上記ステップＳ１０１０−ステップＳ１１２０における照合処理のうちの少なくとも１つで異常状態が判定された場合、ＰＣ１１はステップＳ１１５０にて、診断結果一覧及び診断パラメータの情報をＥＣＵ２から診断ツール２０に送信したときの通信ログの内容と、データベースＤＢから読み出した基準診断結果一覧、基準診断パラメータの情報とを照合する。
【０１０７】
そして、ＥＣＵ２から診断ツール２０に送信された診断結果一覧の情報（通信ログ）とデータベースＤＢから読み出した基準診断結果一覧の情報とが一致し、かつ、ＥＣＵ２から診断ツール２０に送信された診断パラメータの情報（通信ログ）とデータベースＤＢから読み出した基準診断パラメータの情報とが一致する場合、ＥＣＵ２は診断結果一覧及び診断パラメータについての正しい情報を診断ツール２０に送信しているが、診断ツール２０は、ＥＣＵ２が送信した正しい情報とは異なる誤った情報を表示していることになる。
【０１０８】
そこで、ＰＣ１１は、通信ログから取得した診断結果一覧の送信データが基準診断結果一覧と一致し、かつ、通信ログから取得した診断パラメータの送信データが基準診断パラメータと一致する場合、ステップＳ１１６０にて、診断ツール２０の異常を判定して記録する。
一方、通信ログから取得した診断結果一覧の送信データが基準診断結果一覧と一致しない場合、及び／又は、通信ログから取得した診断パラメータの送信データが基準診断パラメータと一致しない場合、つまり、ＥＣＵ２が、診断結果一覧の情報と診断パラメータの情報との少なくとも一方について誤った情報を診断ツール２０に送信する場合、ＰＣ１１はステップＳ１１７０にて、ＥＣＵ２の異常を判定して記録する。
【０１０９】
上記のように、異なる２つの運転条件を模擬するようにＥＣＵ２を動作させ、それぞれの運転条件での診断結果一覧及び診断パラメータが正しく診断ツール２０に表示されたか否かを判定することで、運転条件によってＥＣＵ２が無応答になる場合などに、係るＥＣＵ２の動作不良の発生を検出することが可能となる。
また、ＥＣＵ２の動作不良のパターンとしては、ＥＣＵ２が診断処理の結果と異なる情報を診断ツール２０に送信する場合があり、このようなＥＣＵ２の動作不良を診断し得る処理の一例を、図１６のフローチャートに従って説明する。
【０１１０】
ステップＳ１２１０で、ＰＣ１１は、ＥＣＵ２を模擬動作させるときのエンジン運転条件をデータベースＤＢから読み出してモデルシミュレータ１２（１２ａ，１２ｂ）に与え、ＥＣＭ２の模擬動作（シミュレーション）を開始させる。
次いで、ＰＣ１１は、ステップＳ１２２０にて、ＥＣＵ２における診断処理で正常状態が診断されることになる情報をデータベースＤＢから読み出してモデルシミュレータ１２に設定することで、ＨＩＬＳシステム１０がＥＣＵ２に出力する電気信号（模擬センサ信号）を、正常状態を模擬するパターンに設定する。これにより、ＥＣＵ２は、正常モードで模擬動作することになる。
【０１１１】
そして、ＥＣＵ２は、ステップＳ１２３０で、所定の診断用パラメータを演算し当該診断用パラメータに基づき異常の有無を診断する処理を実施し、正常モードで模擬動作が行われることで各種デバイスについて正常状態を検出するようになる。
ＰＣ１１は、ステップＳ１２４０にて、診断サポート情報の送信を要求するコマンドをＥＣＵ２に出力し、ＥＣＵ２から送信された診断サポート情報を表示部２０ａに表示させるための診断ツール２０の操作内容を、データベースＤＢから読み出し、係る操作内容に従ってロボットアーム４０を制御する。
【０１１２】
更に、ＰＣ１１は、ステップＳ１２４０にて、診断ツール２０の表示部２０ａに表示された診断サポート情報をカメラ３０で撮影させ、診断サポート情報の表示画面をカメラ３０が撮影した画像信号を記録する。
なお、診断サポート情報とは、ＥＣＵ２の制御対象であるエンジンにおける診断対象部品の有無の情報などであり、例えば、排気中の酸素濃度を検出する酸素センサ（空燃比センサ）の有無や、当該酸素センサにおけるヒータの有無などの情報である。
【０１１３】
また、ＰＣ１１は、ステップＳ１２５０にて、診断ツール２０の表示部２０ａにＥＣＵ２による診断結果の一覧を表示させるためのボタン操作をデータベースＤＢから読み出し、読み出した操作情報に基づきロボットアーム４０を制御することで、診断結果一覧を表示部２０ａに表示させるためのボタン操作をロボットアーム４０に実行させる。
そして、診断ツール２０は、ロボットアーム４０によるボタン操作に応じてＥＣＵ２に診断結果一覧の通知を要求するコマンドを送信し、ＥＣＵ２からの応答情報としての診断結果一覧の情報を取得し、取得した情報に基づき表示部２０ａの表示内容をＥＣＵ２の診断結果一覧の表示に切り替える。
【０１１４】
ここで、ＰＣ１１は、診断ツール２０の表示部２０ａにおける表示内容が、診断結果一覧に切り替わると、診断結果一覧の画面をカメラ３０に撮影させ、カメラ３０が撮影した画像信号を記録する。
そして、ＰＣ１１は、ステップＳ１２６０にて、診断ツール２０の表示部２０ａの表示内容の照合処理を実施し、次のステップＳ１２７０で照合結果を記録する。
【０１１５】
ステップＳ１２６０における照合処理の一例を、図１７のフローチャートに従って説明する。
ステップＳ１３１０で、ＰＣ１１は、表示部２０ａに表示された診断結果一覧の画面を撮影した画像信号を解析して診断サポート情報の表示内容を求め、係る表示内容と、ＥＣＵ２の模擬動作における電気信号の設定情報とを比較する。
【０１１６】
そして、診断ツール２０の表示部２０ａに表示された診断サポート情報が、ＥＣＵ２の模擬動作の設定に一致している場合、ＰＣ１１はステップＳ１３２０にて、診断ツール２０の表示部２０ａに診断サポート情報が正常に表示されたことを判定して記録する。
一方、診断ツール２０の表示部２０ａに表示された診断サポート情報が、ＥＣＵ２の模擬動作の設定に一致しない場合、ＰＣ１１はステップＳ１３３０にて、診断ツール２０の表示部２０ａにおける診断サポート情報の表示が異常であることを判定して記録する。
【０１１７】
例えば、ＥＣＵ２の模擬動作において正常状態が模擬される診断対象デバイス（模擬センサ信号のＥＣＵ２への出力が設定されるセンサ）が、診断ツール２０に表示された診断サポート情報においてエンジンに装備されていないことになっている場合、ＰＣ１１は、ステップＳ１３３０に進み、診断ツール２０における診断サポート情報の表示が異常であることを判定する。
【０１１８】
また、ＰＣ１１は、ステップＳ１３４０にて、ＥＣＵ２の模擬動作における電気信号の設定情報（異常／正常の設定情報）と、表示部２０ａを撮影した画像信号の解析によって求めた診断結果一覧の表示内容とを照合する。
そして、表示部２０ａを撮影した画像信号の解析によって求めた診断結果一覧の表示内容が、ＥＣＵ２の模擬動作における電気信号の設定状態に一致する場合、ＰＣ１１はステップＳ１３５０にて、診断ツール２０の表示部２０ａに診断結果一覧の情報が正常に表示されたことを判定して記録する。
【０１１９】
一方、表示部２０ａを撮影した画像信号の解析によって求めた診断結果一覧の表示内容が、ＥＣＵ２の模擬動作における電気信号の設定状態に一致しない場合、ＰＣ１１はステップＳ１３６０にて、診断ツール２０の表示部２０ａにおける診断結果一覧の情報が異常であることを判定して記録する。
例えば、ＥＣＵ２が模擬動作の設定に応じて正常判定したデバイスの情報を出力しない不良が生じると、ＰＣ１１は、ステップＳ１３６０にて、診断ツール２０の表示部２０ａにおける診断結果一覧の情報が異常であると判定することになる。
【０１２０】
上記のようにして、ＰＣ１１は、診断ツール２０の表示部２０ａにおける表示内容と、ＥＣＵ２の模擬動作の設定に応じた基準の表示内容とを照合することで、診断ツール２０及び／又はＥＣＵ２の異常状態を診断できる。
なお、ＰＣ１１は、故障コードの情報、診断ツール２０がサポートするプロセスの情報、車両の識別情報などを診断ツール２０の表示部２０ａに表示させるように、ロボットアーム４０を制御して診断ツール２０の操作部２０ｂを自動操作し、係る操作によって診断ツール２０の表示部２０ａに表示された内容をカメラ３０で撮影し、撮影した画像を解析して検出した表示内容と、ＥＣＵ２の模擬動作の設定に対応する基準の表示内容とを比較して、診断ツール２０、ＥＣＵ２の異常の有無を診断することができる。
【０１２１】
上記の検査システムによると、診断ツール２０の操作部２０ｂを既定の順で自動的に操作し、また、実際の操作部２０ｂの操作内容が目標の操作内容に一致しているか否かをカメラ３０による撮影結果に基づき検証するので、操作ミスによる検査手順の誤りを抑制できる。
また、診断ツール２０とＥＣＵ２との間での通信ログを取得し、診断ツール２０の表示部２０ａにおける表示内容と通信ログの内容とを照合し、また、操作部２０ｂの操作内容と通信ログの内容とを照合することで、診断ツール２０の異常の有無を検証するので、診断ツール２０の異常によりＥＣＵ２の検査精度が低下することを抑制できる。
【０１２２】
また、ＥＣＵ２の模擬動作の設定と診断ツール２０の表示内容とを比較し、また、ＥＣＵ２の模擬動作の設定と通信ログの内容とを照合することで、診断ツール２０の異常とＥＣＵ２の異常とを区別することができる。
また、ＥＣＵ２を模擬動作させる運転条件を複数種に切り替えることで、運転条件の違いによりＥＣＵ２の動作不良が発生するか否かを検証できる。
そして、上記の検査システムを用いてＥＣＵ２の検査を行えば、診断ツール２０を作業員が手動で操作する場合に比べて、検査ミスを減らし、また、安定して短い時間で検査を行える。
【０１２３】
以上、好ましい実施形態を参照して本発明の内容を具体的に説明したが、本発明の基本的技術思想及び教示に基づいて、当業者であれば種々の変形態様を採り得ることは自明である。
本願発明に係る検査システムが検査する自動車用電子制御ユニットは、エンジンを制御するＥＣＵ２に限定されず、例えば、自動車用の自動変速機を制御する電子制御ユニットや自動車用の空調装置を制御する電子制御ユニットなどの車載の各種電子制御ユニットに適用できる。
【０１２４】
また、車載状態においてＣＡＮを介して相互通信可能に構成される複数の電子制御ユニットの１つについて検査を行う場合、検査対象の電子制御ユニットに与える電気信号として、他の電子制御ユニットが出力する信号を含めることができる。
また、ＥＣＵ２及び／又は診断ツール２０の異常を検出したときに、ＰＣ１１の画面に警告表示を行ったり、作業者に異常検出を知らせるランプを点灯させたりする構成とすることができる。
【符号の説明】
【０１２５】
１…検査システム、２…電子制御ユニット（ＥＣＵ）、１０…ＨＩＬＳシステム、１１…ＨＩＬＳ用パーソナルコンピュータ（ＰＣ）、１３…通信監視部、２０…診断ツール、２０ａ…表示部、２０ｂ…操作部、３０…カメラ（撮影装置）、４０…ロボットアーム（機械装置）
【図１】
0006297937.tif 000002
【図２】
0006297937.tif 000003
【図３】
0006297937.tif 000004
【図４】
0006297937.tif 000005
【図５】
0006297937.tif 000006
【図６】
0006297937.tif 000007
【図７】
0006297937.tif 000008
【図８】
0006297937.tif 000009
【図９】
0006297937.tif 000010
【図１０】
0006297937.tif 000011
【図１１】
0006297937.tif 000012
【図１２】
0006297937.tif 000013
【図１３】
0006297937.tif 000014
【図１４】
0006297937.tif 000015
【図１５】
0006297937.tif 000016
【図１６】
0006297937.tif 000017
【図１７】
0006297937.tif 000018