(57)【要約】【課題】  無用な送信の発生を低減できるゲートウェイ装置を提供する。【解決手段】  ゲートウェイ装置１１に、ＣＡＮバス１，６に接続されたノード２〜５，７〜１０からそれぞれ所定の周期で定期送信されるすべてのメッセージを個々に受信する受信バッファ１２，１３，１４，・・・，２１，２２，２３，・・・と、これらがメッセージを受信するごとに受信回数をカウントする受信カウンタ１２ａ，１３ａ，１４ａ，・・・，２１ａ，２２ａ，２３ａ，・・・とを設ける。ゲートウェイ装置１１は、メッセージを受信した受信回数とそのメッセージが固有の周期で送信されるべき回数である判定値とを比較することで、そのメッセージの正常な送信かどうかを判断し、そのメッセージを送信しているノード２〜５，７〜１０の状態を判断する。異常なノード２〜５，７〜１０にメッセージの送信を抑制させることで無用な送信の発生の低減を可能にする。【選択図】  図１
2006287739.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークのバス間に接続されて前記バスに送出されたメッセージの中継を行うゲートウェイ装置において、
定期的に送信されるメッセージを受信する受信バッファ手段と、
前記受信バッファ手段が前記メッセージを受信するごとに受信回数をカウントする受信カウンタ手段と、
前記受信カウンタ手段がカウントした受信回数を参照し、対応する前記受信バッファが受信すべきメッセージの受信回数である判定値と比較することにより前記メッセージが正常に送信されていることを確認する監視手段と、
を備えていることを特徴とするゲートウェイ装置。
【請求項２】
前記監視手段は、前記メッセージの正常送信の確認を、リセット周期ごとに繰り返し行い、前記リセット周期ごとにすべての前記受信カウンタの受信回数をクリアするようにしたことを特徴とする請求項１記載のゲートウェイ装置。
【請求項３】
前記判定値は、前記リセット周期内の受信回数計測時間を定期送信されるメッセージの周期で除算することによって算出することを特徴とする請求項２記載のゲートウェイ装置。
【請求項４】
前記監視手段は、前記受信カウンタ手段がカウントした受信回数と前記判定値との差があらかじめ定めた許容値より大きい場合、対応するメッセージが送信過剰、前記差が前記許容値より小さい場合に対応するメッセージが送信不可の状態にあると判定するような送信異常判定を行うことを特徴とする請求項１記載のゲートウェイ装置。
【請求項５】
前記許容値は、経験値から算出された適合値であることを特徴とする請求項４記載のゲートウェイ装置。
【請求項６】
バス間で移動するメッセージを中継するようにしたゲートウェイ装置によるノード監視方法において、
前記メッセージごとに前記ゲートウェイ装置に設定された受信バッファ手段にそれぞれ所定の周期で定期送信されるすべてのメッセージを受信させ、
受信カウンタ手段が前記受信バッファ手段に対応するメッセージを受信するごとに受信回数をカウントし、
監視手段が前記受信カウンタ手段によってカウントされた受信回数と前記受信バッファが受信すべきメッセージの受信回数である判定値との差を算出し、
前記差があらかじめ定めた許容値の範囲内にあるか範囲外にあるかを確認することにより前記メッセージが正常に送信されているかいないかを判定してメッセージを送信しているノードの状態を判断する、
ことからなるゲートウェイ装置によるノード監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はゲートウェイ装置に関し、特に車載ＬＡＮ(Local Area Network)のシステムを構成するよう異なるネットワークのバス間に接続されてメッセージの中継を行うゲートウェイ装置に関する。
【背景技術】
【０００２】
車載ＬＡＮには、エンジンやトランスミッションを制御するエンジン・パワートレイン系、ステアリングやブレーキなどを制御するシャシ系、エアコン、パワーウインドウなどを制御するボディ系、オーディオ、ビデオなどを制御する情報系など、複数のネットワークが存在している。これらの系では、それぞれの制御に要求される仕様に適した通信プロトコルが採用されているが、場合によっては、プロトコルの異なるネットワークをゲートウェイ装置が仲介して相互にデータを共有するようなことが行われている（たとえば、特許文献１参照。）。また、１つの系においても、最近は、バスに電子制御ユニット（ＥＣＵ：Electronic Control Unit）のようなノードが非常に多く接続されてネットワークの規模が大きくなってきており、このため、バスの負荷が増加し、通信速度を下げざるを得ないことが生じている。このことから、ネットワークを分割してゲートウェイ装置で中継するといった構成にし、これによってバス負荷を分散・軽減し、通信速度の低下を回避することも行われている。
【０００３】
このようなネットワークにおいては、あるノードからメッセージが送信されると、そのメッセージは、バスを介して流れていき、送信先のノードによって受信される。送信先のノードが別のネットワークにある場合には、メッセージは、ゲートウェイにより中継されて送られる。ここで、送信元のノードからメッセージが送信されたときに、そのメッセージが正常に送信先のノードによって受信されているかどうかは、以下の方法にて確認している。
【０００４】
図６は従来のメッセージの送受信時における動作を示す説明図であって、（ａ）はメッセージ正常受信時を示し、（ｂ）はメッセージ受信異常時を示している。
送信元ノード１０１からあるメッセージが送信され、そのメッセージが送信先ノード１０２にて正常に受信された場合には、図６の（ａ）に示したように、接続ノードが１対１であると、送信先ノード１０２は、メッセージを正常に受信したことに対する応答を送信元ノード１０１に返すようにしている。送信元ノード１０１は、その応答を受け取ることにより、メッセージの送受信が正常に終了したことを確認することができる。
【０００５】
一方、メッセージを受信すべき送信先ノード１０２に何らかの異常が発生していた場合には、図６の（ｂ）に示したように、送信先ノード１０２は、送信元ノード１０１から送信されたメッセージを受信することができず、したがって、応答を返すこともできない。このような場合、送信元ノード１０１は、応答が返ってこないので、送信したメッセージが正常受信されていないと判断し、同じメッセージを再送信することになる。この再送信は、送信先ノード１０２から応答が返ってくるまで繰り返し行われ、もしくは、再送信の回数が所定の回数に達するまで繰り返し行われる。
【０００６】
また、接続ノードが１対多（送信元ノードに複数のノードが繋がっている）の場合、どれか１つのノードでも受信すると応答が返り、送信元ノードは再送信を停止する。そのため、送信元ノードが何らかの異常で不要な送信をしていても、正常に受信されているものと判断し、特に異常判定は実施されない。
【特許文献１】特開２００２−３２５０８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このように、各ノードは、自ノードの送信メッセージが正常に受信されているかどうかを、送信先ノードからの応答によって判断しており、自ノードだけで送信メッセージが正常に受信されているかどうかを確認することはできない。したがって、送信先ノードが故障の場合、送信元ノードは、送信先ノードの故障を知らずに、送信先ノードから応答が返ってくるまで、または、再送信の回数が所定の回数に達するまで、メッセージを再送し続けることになる。この故障したと思われる送信先ノードに無用な送信を続けることは、バスの負荷が増える結果となり、他のノードの動作に影響を与えてしまうという問題点があった。
【０００８】
本発明はこのような点に鑑みてなされたものであり、無用な送信の発生を低減するよう一括してすべてのノードを監視できるようにしたゲートウェイ装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明では上記問題点を解決するために、ネットワークのバス間に接続されて前記バスに送出されたメッセージの中継を行うゲートウェイ装置において、定期的に送信されるメッセージを受信する受信バッファ手段と、前記受信バッファ手段が前記メッセージを受信するごとに受信回数をカウントする受信カウンタ手段と、前記受信カウンタ手段がカウントした受信回数を参照し、対応する前記受信バッファが受信すべきメッセージの受信回数である判定値と比較することにより前記メッセージが正常に送信されていることを確認する監視手段と、を備えていることを特徴とするゲートウェイ装置が提供される。
【００１０】
このようなゲートウェイ装置によれば、受信バッファ手段によるメッセージの受信回数を受信カウンタ手段が常にカウントしていて、監視手段がメッセージの受信回数と判定値とを比較し、両者がほぼ等しければメッセージの送信が正常であり、そうでなければ、メッセージの送信が正常でないと判断するようにした。これにより、ゲートウェイ装置は、メッセージの判定を通してそのメッセージを送信しているノードの送信状態を知ることができるので、送信異常となったノードに通知してメッセージ送信を中止または禁止させることで、無用な送信の発生を低減することができる。
【発明の効果】
【００１１】
本発明のゲートウェイ装置は、自身を介してバス間を移動するメッセージだけでなく、それ以外のすべてのメッセージについてもメッセージごとに送信の良否判定が可能になるので、メッセージをバスに送信するすべてのノードの状態を判断することができるようになるという利点がある。
【００１２】
また、ゲートウェイ装置が全ノードの送信をチェックしているため、実車時だけでなく、ネットワークシステムの事前の検査段階においても、ゲートウェイ装置を検査するだけで全ノードの動作チェックを行うことが可能になり、検査の手順を簡略化することができるという効果もある。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態を、車載ＬＡＮに適用した場合を例に図面を参照して詳細に説明する。
図１はゲートウェイ装置を用いた車載ＬＡＮの構成例を示す図である。
【００１４】
この車載ＬＡＮの構成例では、ＣＡＮ(Controller Area Network)通信プロトコルを採
用した２つのネットワークをゲートウェイ装置１１によって接続し、一方のネットワークのＣＡＮバス１には、たとえば、電子制御ユニット（ＥＣＵ）とする複数のノード２〜５が接続され、他方のネットワークのＣＡＮバス６には、たとえば、ＥＣＵとする複数のノード７〜１０が接続されている。
【００１５】
ゲートウェイ装置１１は、ＣＡＮバス１にそれぞれ所定の周期で定期送信されるすべてのメッセージを個々に受信する複数の受信バッファ１２，１３，１４，・・・が設けられ、これら受信バッファ１２，１３，１４，・・・には、それぞれがメッセージを受信するごとに受信回数をカウントする受信カウンタ１２ａ，１３ａ，１４ａ，・・・が設けられている。また、ゲートウェイ装置１１は、ＣＡＮバス１にそれぞれ所定の周期で定期送信されるすべてのメッセージを個々に受信する複数の受信バッファ２１，２２，２３，・・・が設けられ、これら受信バッファ２１，２２，２３，・・・には、それぞれがメッセージを受信するごとに受信回数をカウントする受信カウンタ２１ａ，２２ａ，２３ａ，・・・が設けられている。さらに、ゲートウェイ装置１１は、ＣＡＮバス１からＣＡＮバス６へ中継されるべきメッセージに対応して、たとえば送信バッファ３１，３２が設けられ、ＣＡＮバス６からＣＡＮバス１へ中継されるべきメッセージに対応して、たとえば送信バッファ３３が設けられている。
【００１６】
これにより、ノード２〜５から送信されたすべてのメッセージは、対応する受信バッファ１２，１３，１４，・・・に格納され、そのうち、ＣＡＮバス６へ中継されるべきメッセージについては、送信バッファ３１，３２を介してＣＡＮバス６へ送信される。このとき、受信バッファ１２，１３，１４，・・・に対応するメッセージが格納されるごとに、対応する受信カウンタ１２ａ，１３ａ，１４ａ，・・・が受信回数をカウントしている。同様に、ノード７〜１０から送信されたすべてのメッセージは、対応する受信バッファ２１，２２，２３，・・・に格納され、そのうち、ＣＡＮバス１へ中継されるべきメッセージについては、送信バッファ３３を介してＣＡＮバス１へ送信される。このとき、受信バッファ２１，２２，２３，・・・に対応するメッセージが格納されるごとに、対応する受信カウンタ２１ａ，２２ａ，２３ａ，・・・が受信回数をカウントしている。
【００１７】
これら受信カウンタ１２ａ，１３ａ，１４ａ，・・・，２１ａ，２２ａ，２３ａ，・・・は、受信バッファ１２，１３，１４，・・・，２１，２２，２３，・・・がメッセージを受信しているとき、それぞれのメッセージに設定された定期送信の周期でカウンタ値が１ずつインクリメントされている。また、各メッセージには、その送信周期があらかじめ設定されているので、ある決められた時間内に送信されるメッセージの数があらかじめ決められている。したがって、ゲートウェイ装置１１は、所定の時間内にカウントアップされるカウンタ値をその所定の時間内に送信されているはずのメッセージの数と比較することで、すべてのメッセージの送受信が正常に行われているかどうかを判断することができるのである。
【００１８】
図２はゲートウェイ装置のハードウェア構成例を示す図、図３はルーティングマップの例を示す図である。
ゲートウェイ装置１１は、全体を制御しているＣＰＵ(Central Processing Unit)４１と、ＲＡＭ(Random Access Memory)４２と、ＲＯＭ(Read Only Memory)４３とを備え、ＣＰＵ４１には、ＣＡＮバス１およびＣＡＮバス６の通信制御を行うコントローラ４４，４５を有していて、これらの機能はたとえば専用の１チップのマイクロプロセッサによって構成されている。ゲートウェイ装置１１は、また、ＣＡＮバス１およびＣＡＮバス６に対してメッセージの送受信を行うトランシーバ４６，４７を備えている。
【００１９】
ＲＯＭ４３には、ＣＰＵ４１に実行させる基本ソフトウェア、ゲートウェイ用のプログラム、ノード監視の機能を実現するプログラムなどが格納されている。また、このＲＯＭ
４３には、図３に示したルーティングマップ４８が格納されており、そのルーティングマップ４８には、中継対象のメッセージが設定されている。たとえば図示の例では、ＣＡＮバス１を「ＣＡＮ１」、ＣＡＮバス６を「ＣＡＮ２」とすると、ＣＡＮバス１からＣＡＮバス６へ中継するメッセージは、「ｍｅｓｓａｇｅＡ」、「ｍｅｓｓａｇｅＢ」であり、ＣＡＮバス６からＣＡＮバス１へ中継するメッセージは、「ｍｅｓｓａｇｅＣ」、「ｍｅｓｓａｇｅＤ」であることを設定している。
【００２０】
ＲＡＭ４２には、ＲＯＭ４３からロードした基本ソフトウェアおよびプログラムの少なくとも一部が一時的に格納され、ＣＰＵ４１による処理に係る各種データが一時的に格納される。また、ＲＡＭ４２には、メッセージを格納する受信バッファ１２，１３，１４，・・・，２１，２２，２３，・・・および送信バッファ３１，３２，３３としての領域が割り当てられる。
【００２１】
コントローラ４４，４５およびトランシーバ４６，４７は、ＣＡＮバス１，６を流れるメッセージを受信したり、中継すべきメッセージをＣＡＮバス１，６へ再送信したりする機能を有している。
【００２２】
以上のようなハードウェア構成によって、ゲートウェイ装置１１がノードを監視する処理機能を実現することができる。
図４はノード監視処理の流れを示すフローチャートである。
【００２３】
まず、システムが起動すると（ステップＳ１）、計測時間によるシステムの初期化が行われる（ステップＳ２）。この計測時間とは、ゲートウェイ装置１１がノード監視を繰り返し行うリセット周期の中で、全メッセージの受信回数を計測する単位時間であって、この計測時間は、あらかじめシステムに応じて適当に設定されている。ここでは、たとえば、計測時間として１００ミリ秒が設定されているとする。また、ここでの初期化には、少なくとも、計測時間用タイマの計時開始処理と、すべての受信カウンタ１２ａ，１３ａ，１４ａ，・・・，２１ａ，２２ａ，２３ａ，・・・のカウンタ値をクリアする処理と、全メッセージに割り当てられた番号ｉを０番目に設定する処理とを含んでいる。
【００２４】
次に、初期化した時点から計測時間だけ経過したかどうかが判断される（ステップＳ３）。初期化から計測時間の１００ミリ秒が経過したならば、ｉ番目のメッセージの判定値を求める（ステップＳ４）。この判定値は、定期送信されるメッセージｉが計測時間の１周期（１００ミリ秒）の間に送信されているはずのメッセージの数、すなわち、メッセージｉに対応する受信バッファが１００ミリ秒の間に受信されているはずのメッセージｉの受信回数を意味するもので、このメッセージｉの判定値は、次式によって求められる。
【００２５】
ｉの判定値＝（計測時間）／（ｉの周期）
したがって、メッセージｉの判定値は、メッセージｉの周期がたとえば１０ミリ秒であるとすると、計測時間が１００ミリ秒であるので、「１０」ということになる。また、実際には、ノードがメッセージを送信するタイミングと初期化のタイミングとは異なるので、メッセージごとにそれらの許容値が設定されている。たとえば、メッセージｉの許容値が「２」に設定されているとすると、メッセージｉの正常な送受信とみなされる範囲は「１０±１」ということになる。なお、この許容値は、数回の実験によって得られた経験値から算出された適合値である。
【００２６】
次に、メッセージｉを受信した受信バッファに対応する受信カウンタのカウンタ値とその判定値との差がメッセージｉの許容値以内であるかどうかが判定される（ステップＳ５）。ここで、メッセージｉのカウンタ値と判定値との差がその許容値である「２」以内なら、メッセージｉは正常に送受信されていると判断される。
【００２７】
もし、メッセージｉのカウンタ値と判定値との差がその許容値以内でなければ、メッセージｉのカウンタ値が判定値より大きいかどうかが判定される（ステップＳ６）。ここで、カウンタ値が判定値より大きければ、メッセージｉは過剰に送信されていることになるので、送信過剰のエラー処理が行われる（ステップＳ７）。逆に、カウンタ値が判定値より大きくなければ、メッセージｉは送信されていないことになるので、送信不能のエラー処理が行われる（ステップＳ８）。
【００２８】
なお、これらのエラー処理としては、たとえば、何らかの故障が発生したことを表示するようなランプを制御しているノードに、ランプを点灯させるメッセージを送信するとか、ゲートウェイ装置１１または他のノードに設けられた不揮発性メモリにエラーログを残すようにするなどの処理がある。
【００２９】
以上のようにして、メッセージｉの送信について正常か否かのチェックが行われた後は、全メッセージをチェックしたかどうかが判断される（ステップＳ９）。ここで、全メッセージのチェックがまだ終わっていない場合は、次のメッセージのチェックをするために、ステップＳ４に戻り、全メッセージのチェックが終わっている場合には、ステップＳ２に戻って、計測時間による初期化の処理に移る。
【００３０】
このように、ゲートウェイ装置１１は、計測時間と全メッセージのチェック処理時間とからなるリセット周期で、すべてのメッセージを常にチェックしていくことで、メッセージ送信過剰またはメッセージ送信不能のエラーの発生回数が多いノードを知ることができる。そのようなノードは、故障している確率が高いと判断することができるので、ゲートウェイ装置１１は、そのようなノードにエラーを通知し、バス上の通信への参加を見合わせるようにすることができるので、無駄なメッセージの送信が低減され、バス負荷の増加を抑制することができる。
【００３１】
図５は参照テーブルの一例を示す図である。
上記の実施の形態では、初期化から計測時間の経過後にメッセージの判定値を求めるようにしたが、計測時間および各メッセージが定期送信する周期があらかじめ決められているので、参照テーブル５０に判定値も設定しておくことができる。この参照テーブルによれば、それぞれのメッセージに対応して送信周期、判定値、許容値の値が設定されている。ゲートウェイ装置１１の他の処理機能において、メッセージの周期のデータが使われない場合には、送信周期のフィールドは省略することができる。
【００３２】
この参照テーブル５０を用いる場合、図４に示した判定値を求めるステップでは、判定値を参照テーブル５０からメッセージに対応する周期を読み込むという処理になる。
【産業上の利用可能性】
【００３３】
ゲートウェイ装置１１によるノード監視は、車載ＬＡＮを開発するときの検査用途にも適用できる。すなわち、検査の段階で、たとえば、各ノードに設定した各メッセージの周期が一致していなくてノード間で不整合が生じてしまったような場合にも、ゲートウェイ装置１１は、メッセージの送信過剰または送信不能を検出することができるので、事前の検査の段階でノードおよびゲートウェイ装置１１の設定ミスを容易に見つけることが可能になり、検査を簡略化することができる。
【図面の簡単な説明】
【００３４】
【図１】ゲートウェイ装置を用いた車載ＬＡＮの構成例を示す図である。
【図２】ゲートウェイ装置のハードウェア構成例を示す図である。
【図３】ルーティングマップの例を示す図である。
【図４】ノード監視処理の流れを示すフローチャートである。
【図５】参照テーブルの一例を示す図である。
【図６】従来のメッセージの送受信時における動作を示す説明図であって、（ａ）はメッセージ正常受信時を示し、（ｂ）はメッセージ受信異常時を示している。
【符号の説明】
【００３５】
１  ＣＡＮバス
２〜５  ノード
６  ＣＡＮバス
７〜１０  ノード
１１  ゲートウェイ装置
１２，１３，１４，・・・  受信バッファ
１２ａ，１３ａ，１４ａ，・・・  受信カウンタ
２１，２２，２３，・・・  受信バッファ
２１ａ，２２ａ，２３ａ，・・・  受信カウンタ
３１，３２，３３  送信バッファ
【図１】
2006287739.tif 000003
【図２】
2006287739.tif 000004
【図３】
2006287739.tif 000005
【図４】
2006287739.tif 000006
【図５】
2006287739.tif 000007
【図６】
2006287739.tif 000008