(57)【要約】【課題】送受信が禁止されるエラーステータスに遷移したときに正常状態への復帰を試みるリカバリー機能に影響されることなく、継続する異常を適正に判定して確実に故障を検知し、診断の信頼性を向上する。【解決手段】ＣＡＮ通信バスの状態を監視し、エラーワーニング、エラーパッシブ、バスオフの何れかの異常状態を検出したか否かを調べ（Ｓ２）、異常状態を検出したとき、仮故障判定フラグをセットし、継続故障判定タイマを作動させる（Ｓ３）。そして、エラーアクティブ状態を連続して２回検出することなく故障判定時間が経過したとき、故障確定を示す故障確定フラグをセットし（Ｓ４〜Ｓ７）、リンプホーム機能に入る。これにより、ＣＡＮのリカバリー機能による影響を回避すると共に、外乱等による短時間の通信エラーによる誤診断を防止し、診断の信頼性を向上することができる。【選択図】    図３
2004348274.tif 000002
【特許請求の範囲】
【請求項１】
通信バスを介した送受信時のエラー発生状況に応じてエラーステータスが遷移し、送受信が禁止されるエラーステータスに遷移したとき、正常状態への復帰を試みるリカバリー機能を有する通信装置の故障診断を行う通信故障の診断装置であって、
上記エラーステータスが正常状態から異常状態に遷移したとき、仮故障と判定すると共に、この仮故障の継続時間を計時する手段と、
上記仮故障の継続時間が設定時間に達する前に、上記エラーステータスが正常状態へ遷移したことを連続して設定回数検出できないとき、通信故障と確定する手段とを備えたことを特徴とする通信故障の診断装置。
【請求項２】
ＣＡＮ通信バスを介した送受信時のエラー発生状況に応じてエラーステータスが遷移し、送受信が禁止されるバスオフ状態に上記エラーステータスが遷移したとき、エラーアクティブ状態への復帰を試みるリカバリー機能を有するＣＡＮ通信装置の故障診断を行う通信故障の診断装置であって、
上記エラーステータスがエラーアクティブ状態以外に遷移したとき、仮故障と判定すると共に、この仮故障の継続時間を計時する手段と、
上記仮故障の継続時間が設定時間に達する前に、上記エラーステータスがエラーアクティブ状態へ遷移したことを連続して設定回数検出できないとき、通信故障と確定する手段とを備えたことを特徴とする通信故障の診断装置。
【請求項３】
複数の上記ＣＡＮ通信装置を上記ＣＡＮ通信バスを介して接続した車両内のネットワークに対し、
上記ネットワーク上の何れかのノードで通信故障発生と確定したとき、リンプホーム制御の実行を指示する手段を備えたことを特徴とする請求項２記載の通信故障の診断装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、送受信が禁止されるエラーステータスに遷移したときに正常状態への復帰を試みるリカバリー機能を有する通信装置における通信故障の診断装置に関する。
【０００２】
【従来の技術】
近年、自動車等の車両においては、複数の電子制御ユニットを搭載してエンジン、トランスミッション、サスペンション、エアコン等の様々な制御を各ユニットで分担するようになり、これら複数のユニットを多重通信バスで接続して車内ネットワークを構成し、制御データや制御指令等のやり取りを行なうことでトータルな制御性の向上を図るようにしている。
【０００３】
このような車内ネットワークは、一般に、エラーマネージメント機能に優れたＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ；コントローラ・エリア・ネットワーク）を用いて構成する場合が多く、このＣＡＮのプロトコルでは、送受信時のエラーをカウントするエラーカウンタの値により、基本的に、通信が正常である状態（エラーアクティブ状態）、通信が困難な状態（エラーパッシブ状態）、通信が不能の状態（バスオフ状態）の３つのエラーステータス（エラー状態）が規定されており、エラーカウンタ値の増減に応じてエラーアクティブ状態とエラーパッシブ状態とが可逆的に遷移し、バスオフ状態に遷移した場合には、通信バス上の送受信が禁止される。
【０００４】
従って、バスオフ状態を監視することで、通信系システムの故障を判断することができるが、通信線の断線等の故障では、エラーカウンタ値が増加せずにエラーパッシブ状態が維持されるため、バスオフ状態のみの監視では故障検知が不十分となる。このため、特開２００１−７８５３５号公報には、農作業機に搭載した複数のＣＡＮコントローラ間で相互に制御データを転送する際、エラーパッシブ状態も故障と判断してＣＡＮ通信データを用いた関連制御を停止させ、エラーアクティブ状態に復帰した際には、停止させた関連制御を再開する技術が開示されている。
【０００５】
【特許文献１】
特開２００１−７８５３５号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、診断の信頼性を高めるためには、外乱等による短時間の通信エラーを車両の故障と判定しないよう、通信異常が継続する時間を判定する必要があり、特許文献１に記載の技術のように、エラーアクティブ状態に復帰した時点で「通信異常無し」と判断して制御を再開してしまうと、継続して異常が発生している場合に、対処することができない。
【０００７】
更に、ＣＡＮ通信のプロトコルでは、バスオフ状態になった後、連続する規定のビットを設定回数カウントしたとき、エラーカウンタ値を一度“０”にクリアしてエラーアクティブ状態に復帰するリカバリー機能が備えられており、一度バスオフ状態になっても、短い周期でリカバリー機能が訪れ、再度通信を試みるようになっている。
【０００８】
このため、図５のタイムチャートに示すように、異常が継続する時間を判定するための時間（故障判定時間）を設定し、ＣＡＮ通信バスのバスオフ状態を検知したとき、異常継続時間を計時して故障を判定するためのタイマ（継続故障判定タイマ）のカウントをスタートさせても、リカバリー機能により、設定した故障判定時間よりも短い周期でエラーアクティブ状態に復帰してしまい、このリカバリー機能によるエラーアクティブ状態を検知すると、継続故障判定タイマがクリアされてしまう。従って、実際に異常が継続して発生しており、設定した故障判定時間を過ぎても、故障確定を示すフラグ（故障確定フラグ）等をセットすることができない。すなわち、異常発生のタイミングによっては、実際に故障と確定するまでの時間がばらつき、診断の信頼性が低下する。
【０００９】
本発明は上記事情に鑑みてなされたもので、送受信が禁止されるエラーステータスに遷移したときに正常状態への復帰を試みるリカバリー機能に影響されることなく、継続する異常を適正に判定して確実に故障を検知し、診断の信頼性を向上することのできる通信故障の診断装置を提供することを目的としている。
【００１０】
【課題を解決するための手段】
上記目的を達成するため、本発明による第１の通信故障の診断装置は、通信バスを介した送受信時のエラー発生状況に応じてエラーステータスが遷移し、送受信が禁止されるエラーステータスに遷移したとき、正常状態への復帰を試みるリカバリー機能を有する通信装置の故障診断を行う通信故障の診断装置であって、上記エラーステータスが正常状態から異常状態に遷移したとき、仮故障と判定すると共に、この仮故障の継続時間を計時する手段と、上記仮故障の継続時間が設定時間に達する前に、上記エラーステータスが正常状態へ遷移したことを連続して設定回数検出できないとき、通信故障と確定する手段とを備えたことを特徴とする。
【００１１】
本発明による第２の通信故障の診断装置は、ＣＡＮ通信バスを介した送受信時のエラー発生状況に応じてエラーステータスが遷移し、送受信が禁止されるバスオフ状態に上記エラーステータスが遷移したとき、エラーアクティブ状態への復帰を試みるリカバリー機能を有するＣＡＮ通信装置の故障診断を行う通信故障の診断装置であって、上記エラーステータスがエラーアクティブ状態以外に遷移したとき、仮故障と判定すると共に、この仮故障の継続時間を計時する手段と、上記仮故障の継続時間が設定時間に達する前に、上記エラーステータスがエラーアクティブ状態へ遷移したことを連続して設定回数検出できないとき、通信故障と確定する手段とを備えたことを特徴とする。
【００１２】
第２の通信故障の診断装置を、複数のＣＡＮ通信装置をＣＡＮ通信バスを介して接続した車両内のネットワークに適用する場合には、ネットワーク上の何れかのノードで通信故障発生と確定したとき、リンプホーム制御の実行を指示することが望ましい。
【００１３】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。図１〜図４は本発明の実施の一形態に係わり、図１は車内ＬＡＮの構成例を示す説明図、図２は車内ＬＡＮに接続される各ユニット内の要部構成を示すブロック図、図３はＣＡＮ通信診断処理のフローチャート、図４はＣＡＮ通信診断のタイムチャートである。
【００１４】
図１は、自動車等の車両において、車両に搭載される複数の電子制御ユニットやインテリジェント型のセンサ・アクチュエータ類等の各ノードを多重通信バスを介して互いに接続した車内ＬＡＮの構成例を示す。この車内ＬＡＮは、多重通信バスとして２線式のシリアル通信バスであるＣＡＮ通信バスを採用しており、高速の走行系通信網ＮＨと低速のボディ系通信網ＮＬとがボディ統合ユニットＣ１を介して接続されている。
【００１５】
走行系通信網ＮＨは、エンジン、トランスミッション、ブレーキ、サスペンション等に対する制御機能や走行状態のセンシング機能を分担する複数のユニット、すなわち、エンジンユニットＣ２、ＡＴユニットＣ３、走行系ユニットＣ４，Ｃ６、走行系センサユニットＣ５等がＣＡＮ通信バス１Ｈを介して接続されて構成される。また、ボディ系通信網ＮＬは、エアコン、パワーウィンドウ、パワーステアリング、各種メータ類やダッシュボード、キーレスエントリ等のボディ装備機器に対する制御機能を分担する車体ユニットＣ７〜Ｃ１１がＣＡＮ通信バス１Ｌを介して接続されて構成されている。
【００１６】
そして、通信速度の異なる走行系通信網ＮＨとボディ系通信網ＮＬとがゲートウェイをなすボディ統合ユニットＣ１を介して相互接続され、全てのノード間でのデータの送受信が可能となっている。尚、図１においては、車体ユニットＣ７及び車体ユニットＣ９には、それぞれ、専用通信バス２，３を介して車体ユニットＣ１２，Ｃ１３が接続されている。
【００１７】
以上の車内ＬＡＮに接続される各ユニットＣｎ（ｎ＝１，２，…）は、マイクロコンピュータを用いて構成され、それぞれが、制御対象に対するコントローラとしての機能を有すると共にＣＡＮ通信に対するコントローラとしての機能を有している。図２に示すように、各ユニットは、各種演算処理や制御を実行するＣＰＵ１００に対し、ＲＯＭ１０１、ＲＡＭ１０２、クロック発生器１０３、タイマ１０４、Ａ／Ｄ変換器１０５、Ｄ／Ａ変換器１０６等を有する一般的なマイクロコンピュータの構成に加え、ＣＡＮコントローラ部１０７、ＣＡＮドライバ１０８を備えている。
【００１８】
ＲＯＭ１０１には、制御プログラムや故障診断プログラム、制御用定数やマップ等の固定データが記憶されており、ＲＡＭ１０２には、各種入力データやワークデータ等のデータが一時的に記憶される、更に、ＲＡＭ１０２には、通常の処理領域に加え、ＣＡＮ通信のための複数の受信スロット１０２ａ及び送信スロット１０２ｂを備えている。送信スロット１０２ｂは、自己のユニットからのメッセージを所定のタイミングで送信するとき、予めこれを書き込んで格納しておき、他方、受信スロット１０２ａには、他のユニットから返送されたメッセージを格納する。
【００１９】
ＣＡＮコントローラ部１０７は、ＣＡＮ通信プロトコルによる通信制御を司る部分であり、割込マスクや送受信設定のためのコントロールレジスタ、各種エラー条件やシステム状態を表すステータスレジスタ、エラー状態を管理するためのエラーカウンタ（送信エラーカウンタＴＥＣ及び受信エラーカウンタＲＥＣ）等を有している。また、ＣＡＮドライバ１０８は、ＣＡＮ＿ＨｉｇｈとＣＡＮ＿Ｌｏｗとの２つの系統の回線からなるＣＡＮ通信バス１Ｈ（１Ｌ）を介してメッセージを送受信するためのものである。
【００２０】
周知のように、ＣＡＮ通信のメッセージは、メッセージの優先順位を決定すると共にメッセージの宛先・内容を識別するためのアイデンティファイアを含むデータ送信用のデータフレーム、送信要求のリモートフレーム、通信エラー検出時のエラーフレーム、受信側が受信準備未了時に出力するオーバーロードフレームの４種類であり、各フレーム毎にエラーがチェックされる。
【００２１】
このエラーチェックは、送信時と受信時とで独立して実行され、エラーの検出毎に、エラーカウンタ（送信エラーカウンタＴＥＣ、受信エラーカウンタＲＥＣ）のカウンタ値がインクリメントされ、正常に送受信したときには、カウンタ値がデクリメントされる。エラーカウンタの値は、ステータスレジスタに反映され、以下に示すように、ＣＡＮ通信のエラーステータスが変化する。
【００２２】
（１）エラーアクティブ状態
送信エラーカウンタＴＥＣ及び受信エラーカウンタの値が共に０〜１２７であり、正常に通信を行える状態である。
【００２３】
（２）エラーパッシブ状態（エラーワーニング状態）
送信エラーカウンタＴＥＣ或いは受信エラーカウンタＲＥＣの値が１２８〜２５５であり、エラー頻度の高い状態である。尚、ＣＡＮプロトコルによっては、エラーパッシブ状態に代えて、送信エラーカウンタＴＥＣ或いは受信エラーカウンタＲＥＣの値が９６〜２５５の状態をエラーワーニング状態として採用する場合もある。
【００２４】
（３）バスオフ状態
送信エラーカウンタＴＥＣの値が２５６〜となった状態であり、バス上の送受信が禁止される。
【００２５】
この場合、エラーアクティブ状態とエラーパッシブ状態とは、エラーカウンタ値の上下変動に応じて相互に遷移することができるが、ＣＡＮ＿ＨｉｇｈとＣＡＮ＿Ｌｏｗとの短絡等のように、バスオフ状態に至るような故障の場合には、通信不能となる。しかしながら、ＣＡＮプロトコルでは、ＣＡＮ通信バス上に連続した規定のビットを設定回数（例えば、１１ビットのレセッシブビットを１２８回）検出すると、エラーカウンタを一度“０”にクリアし、エラーアクティブ状態に復帰するリカバリー機能を有している。
【００２６】
このため、各ユニットのＣＰＵ１００では、ＣＡＮ通信のエラーステータスの遷移を監視し、正常状態（エラーアクティブ）から異常状態（エラーワーニング、エラーパッシブ、バスオフ）に遷移したときには、仮故障と判定してフラグをセットし、この仮故障のフラグがセットされている継続時間を計時する。そして、仮故障の継続時間が設定した故障判定時間に達する前に、エラーアクティブ状態に遷移したことを連続して設定回数検出できないときに、通信故障と確定することで、誤診断を回避して確実に故障を検知し、診断の信頼性を向上する。
【００２７】
以下、各ユニットのＣＰＵ１００によって実行されるＣＡＮ通信診断処理について、図３に示すフローチャートを用いて説明する。
【００２８】
このＣＡＮ通信診断処理では、ＣＡＮコントローラ部１０７がＣＡＮ通信を開始すると、先ず、ステップＳ１で、車両の状態に応じた診断実行条件が成立するか否かを調べ、診断実行条件成立後にＣＡＮ通信の診断を開始する。診断実行条件としては、例えば、システムの初期化が完了して起動状態にあり、各機器の電源電圧が動作保証電圧範囲内にある条件等である。
【００２９】
次に、ステップＳ２へ進み、ＣＡＮコントローラ部１０７のステータスレジスタ（或いはエラーカウンタ）を参照してＣＡＮ通信バスの状態を監視し、その監視結果、エラーワーニング、エラーパッシブ、バスオフの何れかの異常状態を検出したか否かを調べる。そして、バス状態の監視結果、エラーワーニング状態、エラーパッシブ状態、バスオフ状態の何れも検出せず、通信が正常に行われている状態（エラーアクティブ状態）であるときには、ステップＳ２でのバス状態の監視ループを、設定サンプリング時間毎に繰返す。このサンプリング時間は、ＣＡＮのリカバリー機能によるバスオフ状態からエラーアクティブ状態への復帰時間に対して十分短い時間に設定され、例えば、リカバリー機能によるエラーアクティブ状態への復帰時間を４ｍｓとすると、サンプリング時間は１ｍｓに設定される。
【００３０】
また、ステップＳ２でのバス状態の監視結果、エラーワーニング状態、エラーパッシブ状態、バスオフ状態の何れかを検出したときには、ステップＳ２からステップＳ３へ進んで、仮故障判定フラグＦＬＧＲをセットし（ＦＬＧＲ←１）、継続故障判定タイマＴＭによる計時をスタートする。仮故障判定フラグＦＬＧＲは、ＣＡＮコントローラ部１０７が検出したエラーを受けてセットされるものであり、エラーが一時的なものではなく継続し、車両として必要な措置を講じなければならない故障と確定する前の仮判定状態を示す。そして、この仮故障判定フラグＦＬＧＲがセットされた状態の継続時間を、継続故障判定タイマＴＭで計時する。
【００３１】
次いで、ステップＳ４へ進み、バス状態の監視結果、設定回数連続してエラーアクティブ状態を検出したか否かを調べる。この設定回数は、ＣＡＮのリカバリー機能によるバスオフ状態からエラーアクティブ状態への復帰時間と、バス状態の監視周期のサンプリング時間との関係に基づいて設定され、異常が継続していないと判断することのできる回数、例えば、リカバリー機能によるエラーアクティブ状態への復帰時間を４ｍｓ、サンプリング時間を１ｍｓとした場合、２回に設定される。
【００３２】
そして、エラーアクティブ状態を２回連続して検出したときには、バス状態がＣＡＮのリカバリー機能による一時的な正常状態への復帰ではなく完全に正常状態に復帰したものと判断し、ステップＳ４からステップＳ５へ進んで仮故障判定フラグＦＬＧＲ及び継続故障判定タイマＴＭを共にクリア（ＦＬＧＲ←０、ＴＭ←０）した後、ステップＳ２へ戻ってバス状態の監視を続ける。
【００３３】
また、ステップＳ４において、エラーアクティブ状態を２回連続して検出していないときには、ステップＳ４からステップＳ６へ進み、継続故障判定タイマＴＭの値が予め設定した故障判定時間を経過したか否かを調べる。そして、故障判定時間が経過していないときには、ステップＳ６からステップＳ４へ戻り、再度、バス状態の監視結果がエラーアクティブ状態を連続して２回検出したか否かを調べる。そして、ステップＳ４でエラーアクティブ状態を連続して２回検出することなく。ステップＳ６で故障判定時間が経過したときには、一時的な異常ではなく異常が継続している故障状態と判定してステップＳ６からステップＳ７へ進む。
【００３４】
ステップＳ７では、故障確定を示す故障確定フラグＦＬＧＥをセットし（ＦＬＧＥ←１）、リンプホーム機能に入る。このリンプホーム機能では、例えば、燃料噴射量及び点火時期を所定のフェイルセーフ値に設定する等して必要最低限の走行性能を確保する。
【００３５】
すなわち、図４のタイムチャートに示すように、ＣＡＮのリカバリー機能を考慮してバス状態の監視周期を短くし、バスオフ状態に至るような異常を検知したとき、仮故障判定フラグＦＬＧＲをセットして継続時間を計時する。仮故障判定フラグＦＬＧＲがセットされた後は、設定回数連続して正常判定（エラーアクティブ検出）がなされない限りクリアされず（システムリセット時を除く）、仮故障判定フラグＦＬＧＲがセットされた状態で設定した故障判定時間が経過したとき、故障と確定して故障確定フラグＦＬＧＥをセットし、この故障確定フラグＦＬＧＥのセットにより、リンプホーム制御の実行を指示する。
【００３６】
これにより、設定した故障判定時間で確実に故障を検知することができ、ＣＡＮのリカバリー機能による影響を回避すると共に、外乱等による短時間の通信エラーによる誤診断を防止し、診断の信頼性を向上することができる。
【００３７】
【発明の効果】
以上説明したように本発明によれば、送受信が禁止されるエラーステータスに遷移したときに正常状態への復帰を試みるリカバリー機能に影響されることなく、継続する異常を適正に判定して確実に故障を検知し、診断の信頼性を向上することができる。
【図面の簡単な説明】
【図１】車内ＬＡＮの構成例を示す説明図
【図２】車内ＬＡＮに接続される各ユニット内の要部構成を示すブロック図
【図３】ＣＡＮ通信診断処理のフローチャート
【図４】ＣＡＮ通信診断のタイムチャート
【図５】従来のＣＡＮ通信診断のタイムチャート
【符号の説明】
１Ｈ，１Ｌ  ＣＡＮ通信バス
１０７      ＣＡＮコントローラ部
ＦＬＧＥ    故障確定フラグ
ＦＬＧＲ    仮故障判定フラグ
ＲＥＣ      受信エラーカウンタ
ＴＥＣ      送信エラーカウンタ
ＴＭ        継続故障判定タイマ
【図１】
2004348274.tif 000003
【図２】
2004348274.tif 000004
【図３】
2004348274.tif 000005
【図４】
2004348274.tif 000006
【図５】
2004348274.tif 000007