(57)【要約】【課題】本発明の課題は、短絡状態が断続的に発生するモードの通信線の短絡異常を検出することである。【解決手段】本発明は、対の通信線の電位差に基づいて通信を行う通信システムにおける通信異常検出装置（１０）に関する。本発明による通信異常検出装置は、対の通信線の短絡状態の有無を所定周期ごとに判定する判定部（１１０）と、所定周期ごとに、判定部により短絡状態があると判定された場合に、第１カウンタ値を第１所定値だけインクリメントし、判定部により短絡状態がないと判定された場合に、第２カウンタ値を第２所定値だけインクリメントするカウンタ更新部（１１２）と、第１カウンタ値が、第１所定値以上の第１閾値を超えた場合に、対の通信線の短絡異常を検出する短絡異常検出部（１１６）と、第２カウンタ値が、第２所定値以上の第２閾値を超えた場合に、第１カウンタ値をリセットするリセット部（１１４）と、を備える。【選択図】図４
2020195060.tif 000002
【特許請求の範囲】
【請求項１】
対の通信線の電位差に基づいて通信を行う通信システムにおける通信異常検出装置であって、
前記対の通信線の短絡状態の有無を所定周期ごとに判定する判定部と、
前記所定周期ごとに、前記判定部により前記短絡状態があると判定された場合に、第１カウンタ値を第１所定値だけ、増加方向又は減少方向のいずれかである第１方向に変化させ、前記判定部により前記短絡状態がないと判定された場合に、第２カウンタ値を第２所定値だけ、増加方向又は減少方向のいずれかである第２方向に変化させるカウンタ更新部と、
前記第１カウンタ値が、前記第１所定値に対して前記第１方向側にある第１閾値を前記第１方向に超えた場合に、前記対の通信線の短絡異常を検出する短絡異常検出部と、
前記第２カウンタ値が、前記第２所定値に対して前記第２方向側にある第２閾値を前記第２方向に超えた場合に、前記第１カウンタ値をリセットするリセット部と、を備える通信異常検出装置。
【請求項２】
前記リセット部は、更に、前記判定部により前記短絡状態があると判定された場合に、前記第２カウンタ値をリセットする請求項１に記載の通信異常検出装置。
【請求項３】
前記対の通信線がＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に基づくバスを形成する請求項１又は２に記載の通信異常検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、通信異常検出装置に関する。
【背景技術】
【０００２】
車載ネットワークの代表的なものとしてＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に基づくバスが知られている。ＣＡＮに基づくバスにおいて発生しうる異常形態の１つとして、対の通信線が短絡している状態（以下、「通信線の短絡異常」という）が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−２０１８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、通信線の短絡異常のモードとして、短絡状態が連続的に発生するモードに加えて、短絡状態が断続的に発生するモードがある。このような、短絡状態が断続的に発生するモードであっても、通信線の短絡異常として検出されることが有用な場合がある。従来技術では、このような短絡状態が断続的に発生するモードの通信線の短絡異常を検出することが難しい。
【０００５】
本発明は、短絡状態が断続的に発生するモードの通信線の短絡異常を検出することを目的とする。
【課題を解決するための手段】
【０００６】
本発明によれば、対の通信線の電位差に基づいて通信を行う通信システムにおける通信異常検出装置であって、
前記対の通信線の短絡状態の有無を所定周期ごとに判定する判定部と、
前記所定周期ごとに、前記判定部により前記短絡状態があると判定された場合に、第１カウンタ値を第１所定値だけ、増加方向又は減少方向のいずれかである第１方向に変化させ、前記判定部により前記短絡状態がないと判定された場合に、第２カウンタ値を第２所定値だけ、増加方向又は減少方向のいずれかである第２方向に変化させるカウンタ更新部と、
前記第１カウンタ値が、前記第１所定値に対して前記第１方向側にある第１閾値を前記第１方向に超えた場合に、前記対の通信線の短絡異常を検出する短絡異常検出部と、
前記第２カウンタ値が、前記第２所定値に対して前記第２方向側にある第２閾値を前記第２方向に超えた場合に、前記第１カウンタ値をリセットするリセット部と、を備える通信異常検出装置が提供される。
【発明の効果】
【０００７】
本発明によれば、短絡状態が断続的に発生するモードの通信線の短絡異常を検出することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】ＣＡＮに基づくバス２を用いた通信システム１の全体構成例を示す概略図である。
【図２】ノードＮｄ１のハードウェア構成例を示す概略図である。
【図３】ノードＮｄ１のマイコン１０の機能構成例を示す概略図である。
【図４】マイコン１０により実行される短絡異常検出処理例を示す概略フローチャートである。
【図５】比較例による短絡異常検出処理例を示す概略フローチャートである。
【図６Ａ】短絡状態が連続的に発生する場合における判定部１１０の判定結果の履歴例を示す図である。
【図６Ｂ】短絡状態が断続的に発生する場合の判定部１１０の判定結果の履歴例を示す図である。
【図７Ａ】短絡異常として検出されることが好ましい短絡状態の検出履歴例を示す図である。
【図７Ｂ】短絡異常として検出されないことが好ましい短絡状態の検出履歴例を示す。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら各実施例について詳細に説明する。
【００１０】
図１は、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に基づくバス２を用いた通信システム１の全体構成例を示す概略図である。
【００１１】
通信システム１は、ＣＡＮに基づくバス２と、複数のノードＮｄ（ノードＮｄ１〜Ｎｄ２のみ図示）とを含む。
【００１２】
バス２は、対の通信線（図１等では、「ＣＡＮ−Ｈ」及び「ＣＡＮ−Ｌ」と表記）により構成される。通信システム１は、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの電位差に基づいて通信を行う通信システムの一例である。
【００１３】
複数のノードＮｄは、バス２に接続される。なお、ノード数は任意である。複数のノードＮｄは、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの電位差に基づいて互いに通信可能である。すなわち、複数のノードＮｄは、２線式差動電圧方式で通信可能である。具体的には、複数のノードＮｄのうちの、任意の１つは、バス２にメッセージを送信可能であり、他のノードは、当該メッセージをバス２から受信可能である。メッセージは、ＣＡＮに準拠し、メッセージのＣＡＮ＿ＩＤ（ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）が優先度を示す。メッセージのデータフィールドには、各種車両情報や制御情報等が含められる。
【００１４】
次に、複数のノードＮｄのうちのノードＮｄ１を代表して、ノードＮｄ１内の構成について説明する。
【００１５】
図２は、ノードＮｄ１のハードウェア構成例を示す概略図である。
【００１６】
ノードＮｄ１は、図２に示すように、マイクロコンピュータ１０（以下、「マイコン１０」という）と、ＣＡＮトランシーバ２０と、終端回路２１とを含む。
【００１７】
マイコン１０は、例えばＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）を形成してもよい。この場合、ＥＣＵは、電動パワーステアリング装置を制御するＥＣＵであってもよい。マイコン１０は、ＣＰＵ１１、ＲＯＭ１２、及びＲＡＭ１３等を含むとともに、ＣＡＮコントローラ１４を内蔵している。なお、ＣＡＮコントローラ１４は、ＣＡＮトランシーバ２０によりバス２を介した各種の通信処理等を行う。
【００１８】
ＣＡＮトランシーバ２０は、ＣＡＮで規定された電気信号（メッセージ）を送受信する。この電気信号では、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの電位差が閾値以下である場合がレセッシブであり、閾値より大きい場合がドミナントである。
【００１９】
なお、バス２では、ドミナント（“０”）とレセッシブ（“１”）が同時に送信された場合は、ドミナントが優先される。これにより、優先度の高いメッセージが優先度の低いメッセージよりも優先されることになる。具体的には、ＣＡＮ＿ＩＤの数字は２進表記で上位から順にバス２に送信される。複数のメッセージ間では、上位から順に先に“０”を持つメッセージが、同順に“１”を持つメッセージよりも優先されることになる。ここで、ＣＡＮ＿ＩＤの数字が小さいほど、２進表記の“０”の位置が上位側になる。例えば、ＣＡＮ＿ＩＤの数字が“９”の場合は、２進表記で“１００１”となり、ＣＡＮ＿ＩＤの数字が“１０”の場合は、２進表記で“１０１０”となり、上位から３番目の値が“０”となるＣＡＮ＿ＩＤ“９”が、上位から３番目の値が“１”となるＣＡＮ＿ＩＤ“１０”よりも優先される。
【００２０】
各メッセージに付与される優先度は、車両システムの必要な健全性が保たれるように車両システムの設計者により決定される。一般的に、車両走行制御（走る、止まる、曲がる）に関連するメッセージには、相対的に高い優先度が与えられる。車両走行制御に関連するメッセージには、例えば制動力制御や、駆動力制御、操舵制御に関わるメッセージである。他方、利便性や快適性を高める制御（例えば空調制御）に関連するメッセージには、相対的に低い優先度が与えられる。
【００２１】
終端回路２１は、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌ間に接続され、バス２を所定の抵抗値で終端する。
【００２２】
図３は、ノードＮｄ１のマイコン１０の機能構成例を示す概略図である。
【００２３】
マイコン１０は、図３に示すように、判定部１１０と、カウンタ更新部１１２と、リセット部１１４と、短絡異常検出部１１６とを含む。判定部１１０、カウンタ更新部１１２、リセット部１１４、及び短絡異常検出部１１６は、ＣＡＮコントローラ１４又はＣＰＵ１１がＲＯＭ１２内のプログラムを実行することで実現できる。
【００２４】
判定部１１０は、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡状態の有無を所定周期ΔＴ１ごとに判定する。例えば、判定部１１０は、自ノードがドミナントを送信してもレセッシブを受信した場合に短絡状態であると判定し、自ノードがドミナントを送信してドミナントを受信した場合に短絡状態でないと判定する。所定周期ΔＴ１は、一定周期であってもよいし、一定でない周期（例えば自ノードがドミナントを送信するごとの周期）であってもよい。
【００２５】
以下では、説明の都合上、判定部１１０は、所定周期ΔＴ１ごとに判定結果を２値で出力し、２値の一方は、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡状態があると判定された判定結果を表し、「Ｈ：異常」とも表記する。また、２値の他方は、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡状態がないと判定された判定結果を表し、「Ｌ：正常」とも表記する。
【００２６】
カウンタ更新部１１２は、判定部１１０の判定周期と同じ所定周期ΔＴ１ごとに、判定部１１０の判定結果が「Ｈ：異常」である場合に、異常カウンタＣ１の値（第１カウンタ値の例）を第１所定値（本例では“１”）だけインクリメントし、判定部１１０の判定結果が「Ｌ：正常」である場合に、正常カウンタＣ２の値（第２カウンタ値の例）を第２所定値（本例では“１”）だけインクリメントする。
【００２７】
リセット部１１４は、正常カウンタＣ２の値が所定閾値Ｔｈ２（第２閾値の例）を超えた場合に、異常カウンタＣ１の値を初期値（例えば０）にリセットする。所定閾値Ｔｈ２は、第２所定値以上の任意の値であり、適合値である。
【００２８】
また、リセット部１１４は、正常カウンタＣ２の値が所定閾値Ｔｈ２を超えた場合に、正常カウンタＣ２の値を初期値（例えば０）にリセットする。
【００２９】
また、リセット部１１４は、判定部１１０の判定結果が「Ｈ：異常」である場合に、正常カウンタＣ２の値を初期値（例えば０）にリセットする。なお、変形例では、リセット部１１４は、判定部１１０の判定結果が「Ｈ：異常」である状態が連続した場合に、正常カウンタＣ２の値を初期値（例えば０）にリセットしてもよい。
【００３０】
短絡異常検出部１１６は、異常カウンタＣ１の値が所定閾値Ｔｈ１（第１閾値の例）を超えた場合に、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡異常を検出する。所定閾値Ｔｈ１は、第１所定値以上の任意の値であり、適合値である。
【００３１】
なお、複数のノードＮｄのうちの、ノードＮｄ１以外の他のすべて又は一部は、ノードＮｄ１と同様の各部１１０から１１６を有してもよいし、あるいは、ノードＮｄ１以外の他のすべては、各部１１０から１１６を有さなくてもよい。
【００３２】
図４は、マイコン１０により実行される短絡異常検出処理例を示す概略フローチャートである。図４の短絡異常検出処理は、所定周期ΔＴ１ごとに繰り返し実行される。
【００３３】
まず、ステップＳ４００では、マイコン１０は、確定状態が“正常”であるか否かを判定する。確定状態は、“正常”又は“異常”の２値であり、短絡異常検出部１１６により短絡異常が検出された状態が、確定状態＝“異常”に対応する。確定状態の初期値は“正常”である。確定状態が“正常”である場合は、ステップＳ４０２に進み、そうでない場合は、今回周期の処理を終了する。
【００３４】
ステップＳ４０２では、マイコン１０は、今回周期の判定部１１０の判定結果が「Ｌ：正常」か否かを判定する。今回周期の判定部１１０の判定結果が「Ｌ：正常」である場合は、ステップＳ４０４に進み、そうでない場合は、ステップＳ４１０に進む。
【００３５】
ステップＳ４０４では、マイコン１０は、正常カウンタＣ２の値を“１”だけインクリメントする。
【００３６】
ステップＳ４０６では、マイコン１０は、正常カウンタＣ２の値が所定閾値Ｔｈ２を超えたか否かを判定する。正常カウンタＣ２の値が所定閾値Ｔｈ２（例えば“９”）を超えた場合は、ステップＳ４０８に進み、そうでない場合は、今回周期の処理を終了する。
【００３７】
ステップＳ４０８では、マイコン１０は、正常カウンタＣ２の値を“０”にリセットするとともに、異常カウンタＣ１の値を“０”にリセットする。
【００３８】
ステップＳ４１０では、マイコン１０は、異常カウンタＣ１の値を“１”だけインクリメントするとともに、正常カウンタＣ２の値を“０”にリセットする。
【００３９】
ステップＳ４１２では、マイコン１０は、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えたか否かを判定する。異常カウンタＣ１の値が所定閾値Ｔｈ１（例えば“９”）を超えた場合は、ステップＳ４１４に進み、そうでない場合は、今回周期の処理を終了する。
【００４０】
ステップＳ４１４では、マイコン１０は、確定状態を“異常”にセットする。確定状態が“異常”にセットされると、短絡異常が報知される。例えば、その旨が外部に出力されてもよいし、あるいは、短絡異常を表すダイアグ情報が発生されてもよい。
【００４１】
ここで、図５以降を参照して、比較例と対比しつつ本実施例の効果を説明する。
【００４２】
図５は、比較例による短絡異常検出処理例を示す概略フローチャートである。図５に示す比較例による短絡異常検出処理は、図４に示した本実施例による短絡異常検出処理に対して、ステップＳ４０４からステップＳ４０８に代えて、ステップＳ５００が実行される点が異なる。ステップＳ５００では、異常カウンタＣ１の値が“０”にリセットされる。
【００４３】
ところで、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡状態は、連続的に発生せずに、断続的に発生する場合がある。
【００４４】
図６Ａは、短絡状態が連続的に発生する場合における判定部１１０の判定結果の履歴例を示す図であり、図６Ｂは、短絡状態が断続的に発生する場合の判定部１１０の判定結果の履歴例を示す図である。図６Ａ及び図６Ｂでは、それぞれ、上側から、判定部１１０の判定結果の履歴（時系列）が示される。
【００４５】
図６Ａに示す例では、時点ｔ１から判定部１１０の判定結果が「Ｌ：正常」から「Ｈ：異常」に遷移し、その後も、判定部１１０の判定結果が「Ｈ：異常」で連続している。他方、図６Ｂに示す例では、時点ｔ２から判定部１１０の判定結果が「Ｌ：正常」から「Ｈ：異常」に遷移するものの、その後、すぐに時点ｔ３で判定部１１０の判定結果が「Ｌ：正常」となる。そして、その後、判定部１１０の判定結果が再び時点ｔ４「Ｌ：正常」から「Ｈ：異常」に遷移する。この場合も、その後すぐに時点ｔ５で判定部１１０の判定結果が「Ｌ：正常」となる。
【００４６】
比較例では、図６Ａに示すような、短絡状態が連続的に発生する場合においては、短絡異常を検出できる。具体的には、短絡状態が連続的に発生する場合は、ステップＳ４０２での判定結果が、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えるまで連続して“ＮＯ”となるので、ステップＳ５００が機能せずに、確定状態が”異常“にセットされる。
【００４７】
他方、比較例では、図６Ｂに示すような、短絡状態が断続的に発生する場合においては、短絡異常を検出できない場合が比較的多くなる。具体的には、短絡状態が断続的に発生する場合は、一連の短絡状態の継続時間と所定閾値Ｔｈ１との関係に依存するが、ステップＳ４０２での判定結果が、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えるまで連続して“ＮＯ”とならない場合が多い。ステップＳ４０２での判定結果が、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えるまで連続して“ＮＯ”とならない場合、ステップＳ５００が機能して異常カウンタＣ１の値がリセットされてしまう。この場合、次の短絡状態（例えば、図６Ｂの時点ｔ４「Ｌ：正常」から「Ｈ：異常」に遷移させる短絡状態）が発生しても、当該短絡状態の継続時間と所定閾値Ｔｈ１との関係によっては、再び、異常カウンタＣ１の値がリセットされてしまう。
【００４８】
このようにして、比較例では、短絡状態が断続的に発生する場合においては、毎回の短絡状態の終了時に、異常カウンタＣ１の値がリセットされることで、比較的長い時間にわたって短絡異常を検出できない状態が継続しやすい傾向がある。
【００４９】
これに対して、本実施例によれば、短絡状態が連続的に発生する場合のみならず、短絡状態が断続的に発生する場合においても、短絡異常を検出できる可能性が高い。
【００５０】
すなわち、本実施例では、比較例の場合と同様、図６Ａに示すような、短絡状態が連続的に発生する場合においては、短絡異常を検出できる。具体的には、短絡状態が連続的に発生する場合は、ステップＳ４０２での判定結果が、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えるまで連続して“ＮＯ”となるので、ステップＳ５００が機能せずに、確定状態が”異常“にセットされる。
【００５１】
他方、本実施例では、図６Ｂに示すような、短絡状態が断続的に発生する場合においては、短絡異常を検出できない可能性を適切に低減できる。具体的には、短絡状態が断続的に発生する場合は、一連の短絡状態の継続時間と所定閾値Ｔｈ１との関係に依存するが、ステップＳ４０２での判定結果が、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えるまで連続して“ＮＯ”とならない場合が多い。ステップＳ４０２での判定結果が、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えるまで連続して“ＮＯ”とならない場合、ステップＳ５００に代えて、まずステップＳ４０４で正常カウンタＣ２の値がインクリメントされ、次にステップＳ４０６で正常カウンタＣ２の値が所定閾値Ｔｈ２を超えた場合だけ、ステップＳ４０８が機能して異常カウンタＣ１の値がリセットされる。このようにして、本実施例では、一時的に短絡状態が検出されない期間があった場合でも、正常カウンタＣ２の値が所定閾値Ｔｈ２を超えない限り、異常カウンタＣ１の値がリセットされることはない。このため、次の短絡状態（例えば、図６Ｂの時点ｔ４「Ｌ：正常」から「Ｈ：異常」に遷移させる短絡状態）が発生すると、当該短絡状態の継続時間と所定閾値Ｔｈ１との関係によっては、異常カウンタＣ１の値が所定閾値Ｔｈ１を超えることで、短絡異常を検出できる。
【００５２】
ここで、更に図７Ａ及び図７Ｂを参照して、本実施例の場合の動作例を説明する。
【００５３】
図７Ａ及び図７Ｂは、図４の短絡異常検出処理の説明図であり、図７Ａは、短絡異常として検出されることが好ましい短絡状態の検出履歴例を示し、図７Ｂは、短絡異常として検出されないことが好ましい短絡状態の検出履歴例を示す。図７Ａ及び図７Ｂでは、上側から、判定部１１０の判定結果の履歴（時系列）、異常カウンタＣ１の値の時系列、正常カウンタＣ２の値の時系列、及び確定状態の時系列が示される。
【００５４】
図７Ａでは、比較的短い間隔ΔＴ５をおいて断続的に短絡状態が検出される。このように、短絡状態が比較的短い間隔ΔＴ５をおいて断続的に発生する場合、報知対象の短絡異常の可能性が高く、それゆえに、短絡異常として検出されることが好ましい。
【００５５】
他方、図７Ｂでは、比較的長い間隔ΔＴ５をおいて短絡状態が検出される。このように、短絡状態が比較的長い間隔ΔＴ５をおいて複数回発生する場合、ノイズ等の他の要因である可能性が高いと考えられ、報知対象の短絡異常の可能性が比較的低く、それゆえに、短絡異常として検出されないことが好ましい。
【００５６】
この点、本実施例によれば、所定閾値Ｔｈ１及び所定閾値Ｔｈ２を適切に設定することで、図７Ａに示すように短絡状態が比較的短い間隔ΔＴ５をおいて断続的に発生する場合には、短絡異常を検出する一方で、図７Ｂに示すように短絡状態が比較的長い間隔ΔＴ５をおいて発生する場合には、短絡異常を検出しないようにすることができる。
【００５７】
具体的には、図７Ａ及び図７Ｂに示す例では、所定閾値Ｔｈ１及び所定閾値Ｔｈ２は、ともに“９”である。
【００５８】
図７Ａでは、間隔ΔＴ５に対応する期間、正常カウンタＣ２の値が増加していくが、間隔ΔＴ５が比較的短いため、正常カウンタＣ２の値は、“２”又は“３”まで増加するにとどまり、所定閾値Ｔｈ２＝“９”を超えることがない。従って、正常カウンタＣ２の値は、間隔ΔＴ５の終了時に（すなわち短絡状態が再び検出されるときに）“０”にリセットされている。この結果、比較的短い間隔ΔＴ５に起因して異常カウンタＣ１の値がリセットされることはなく、図７Ａでは、４つ目の短絡状態が検出される際（図７Ａの時点ｔ９参照）に異常カウンタＣ１の値が所定閾値Ｔｈ１を超えることで、短絡異常が検出される（すなわち確定状態が“異常”となる）。
【００５９】
これに対して、図７Ｂでは、間隔ΔＴ５に対応する期間、正常カウンタＣ２の値が増加していくが、間隔ΔＴ５が比較的長いため、正常カウンタＣ２の値は、“１０”に達する（すなわち所定閾値Ｔｈ２＝“９”を超える）。従って、異常カウンタＣ１の値（及び正常カウンタＣ２の値）は、間隔ΔＴ５の途中（図７Ｂの時点ｔ１０参照）で“０”にリセットされている。この結果、比較的長い間隔ΔＴ５に起因して異常カウンタＣ１の値がリセットされ、図７Ａでは、２つ目の短絡状態が検出されても（図７Ｂの時点ｔ１１参照）異常カウンタＣ１の値が“０”からインクリメントされる。従って、１つ目の短絡状態の検出は実質的にマスクされ、２つ目の短絡状態に基づく短絡異常の判定に影響しない。
【００６０】
このようにして、本実施例によれば、報知対象の短絡異常の可能性が高い場合の比較的短い間隔ΔＴ５と、報知対象の短絡異常の可能性が低い場合の比較的長い間隔ΔＴ５との差を利用して、これらを切り分けることができる適切な所定閾値Ｔｈ２を設定することで、短絡異常の検出精度（報知対象の短絡異常のみが短絡異常として検出される可能性）を高めることができる。
【００６１】
ところで、図７Ｂの１つ目の短絡状態の検出は、ノイズ等のような、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡とは無関係な要因で生じる場合がある。このような場合、短絡状態の検出の持続時間ΔＴ６は、比較的短い。他方、図７Ａの場合でも、短絡状態の検出の持続時間ΔＴ６は、同様に比較的短い。
【００６２】
従って、所定閾値Ｔｈ１を、かかる比較的短い持続時間ΔＴ６に対して過小に設定してしまうと、ノイズ等のような、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡とは無関係な要因で生じる短絡状態の検出に起因して、短絡異常が検出されてしまう可能性が高くなる。
【００６３】
この点、図７Ａ及び図７Ｂでは、所定閾値Ｔｈ１は、かかる比較的短い持続時間ΔＴ６に対して有意に長い持続時間に対してのみ機能するように設定されるので、ノイズ等のような、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡とは無関係な要因に起因して、短絡異常が検出されてしまう可能性を低減できる。
【００６４】
このように、所定閾値Ｔｈ２は、短絡状態が断続的に発生するモードの短絡異常時において生じる比較的短い間隔ΔＴ５に適合するように適切に設定され、かつ、所定閾値Ｔｈ１は、ノイズ等のような、対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌの短絡とは無関係な要因に起因して生じる比較的短い持続時間ΔＴ６に反応しないように適切に設定されてよい。
【００６５】
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
【００６６】
例えば、上述した実施例では、異常カウンタＣ１の値は、判定部１１０の判定結果が「Ｈ：異常」であるごとに、増加方向（第１方向の例）に変化されるが、これに限られない。すなわち、異常カウンタＣ１の値は、判定部１１０の判定結果が「Ｈ：異常」であるごとに、減少方向（第１方向の例）に変化されてもよい。この場合、異常カウンタＣ１の初期値は、例えば「所定閾値Ｔｈ１＋１」とされ、異常カウンタＣ１の値が１よりも小さくなった場合に、短絡異常が検出されてよい。
【００６７】
同様に、上述した実施例では、正常カウンタＣ２の値は、判定部１１０の判定結果が「Ｌ：正常」であるごとに、増加方向（第２方向の例）に変化されるが、これに限られない。すなわち、正常カウンタＣ２の値は、判定部１１０の判定結果が「Ｌ：正常」であるごとに、減少方向（第２方向の例）に変化されてもよい。この場合、正常カウンタＣ２の初期値は、例えば「所定閾値Ｔｈ２＋１」とされ、正常カウンタＣ２の値が１よりも小さくなった場合に、異常カウンタＣ１の値及び正常カウンタＣ２の値がリセットされてよい。
【００６８】
＜付記＞
なお、以上の実施例に関し、さらに以下の付記を開示する。
【００６９】
［付記１］
対の通信線（例えば対の通信線ＣＡＮ−Ｈ、ＣＡＮ−Ｌ）の電位差に基づいて通信を行う通信システムにおける通信異常検出装置（例えばマイコン１０）であって、
前記対の通信線の短絡状態の有無を所定周期ごとに判定する判定部（例えば判定部１１０）と、
前記所定周期ごとに、前記判定部により前記短絡状態があると判定された場合に、第１カウンタ値（例えば異常カウンタＣ１の値）を第１所定値（例えば“１”）だけ、増加方向又は減少方向のいずれかである第１方向に変化させ（例えばインクリメントし）、前記判定部により前記短絡状態がないと判定された場合に、第２カウンタ値（例えば正常カウンタＣ２の値）を第２所定値（例えば“１”）だけ、増加方向又は減少方向のいずれかである第２方向に変化させる（例えばインクリメントする）カウンタ更新部（例えばカウンタ更新部１１２）と、
前記第１カウンタ値が、前記第１所定値に対して前記第１方向側にある第１閾値（例えば所定閾値Ｔｈ１）を前記第１方向に超えた場合に、前記対の通信線の短絡異常を検出する短絡異常検出部（例えば短絡異常検出部１１６）と、
前記第２カウンタ値が、前記第２所定値に対して前記第２方向側にある第２閾値（例えば所定閾値Ｔｈ２）を前記第２方向に超えた場合に、前記第１カウンタ値をリセットするリセット部（例えばリセット部１１４）と、を備える通信異常検出装置。
【００７０】
付記１によれば、例えば第１方向及び第２方向がともに増加方向である場合、第１カウンタ値が、第１所定値より大きくなっても、第１閾値（例えば所定閾値Ｔｈ１）を超えない場合は、対の通信線の短絡異常が検出されることはない。従って、ノイズ等に起因して対の通信線の短絡異常が検出される可能性を低減できる。他方、第１閾値を比較的大きくすると、ノイズに対するロバスト性を高めることができる反面、短絡状態が断続的に発生するモードで生じる短絡状態に基づいて、短絡異常を検出し難くなる。これは、短絡状態が断続的に発生するモードでは、判定部により短絡状態があると判定される期間が、ノイズ等に起因して、判定部により短絡状態があると判定される期間と同様に比較的短い傾向があるためである。
【００７１】
この点、付記１によれば、第２カウンタ値が、第２所定値より大きくなっても、第２閾値（例えば所定閾値Ｔｈ２）を超えない場合は、第１カウンタ値がリセットされることはない。これにより、短絡状態が断続的に発生するモードに起因して、一時的に判定部により短絡状態がないと判定された場合であっても、第１カウンタ値をリセットされ難くすることができる。この結果、短絡状態が断続的に発生するモードの通信線の短絡異常を検出することが可能となる。
【００７２】
このようにして、付記１によれば、ノイズに対するロバスト性を確保しつつ、短絡状態が断続的に発生するモードの通信線の短絡異常を検出することが可能となる。
【００７３】
［付記２］
前記リセット部は、更に、前記判定部により前記短絡状態があると判定された場合に、前記第２カウンタ値をリセットする付記１に記載の通信異常検出装置。
【００７４】
付記２によれば、短絡状態があると判定された場合に、第２カウンタ値がリセットされるので、短絡状態が断続的に発生するモードで第２カウンタ値がリセットされずに増加してしまうことに起因した不都合（すなわち、第２カウンタ値が第２閾値を超えて第１カウンタ値がリセットされてしまうという不都合）を低減できる。
【００７５】
［付記３］
前記対の通信線がＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に基づくバス（例えばバス２）を形成する付記１又は２に記載の通信異常検出装置。
【００７６】
付記３によれば、ＣＡＮに基づくバスを利用する通信システムにおいて、短絡状態が断続的に発生するモードの通信線の短絡異常を検出することが可能となる。
【符号の説明】
【００７７】
１  通信システム
２  バス
１０  マイコン
１４  ＣＡＮコントローラ
２０  ＣＡＮトランシーバ
２１  終端回路
１１０  判定部
１１２  カウンタ更新部
１１４  リセット部
１１６  短絡異常検出部
Ｃ１  異常カウンタ
Ｃ２  正常カウンタ
ＣＡＮ−Ｈ  通信線
ＣＡＮ−Ｌ  通信線
Ｎｄ  ノード
Ｎｄ１  ノード
Ｎｄ２  ノード
【図１】
2020195060.tif 000003
【図２】
2020195060.tif 000004
【図３】
2020195060.tif 000005
【図４】
2020195060.tif 000006
【図５】
2020195060.tif 000007
【図６Ａ】
2020195060.tif 000008
【図６Ｂ】
2020195060.tif 000009
【図７Ａ】
2020195060.tif 000010
【図７Ｂ】
2020195060.tif 000011