(57)【要約】【課題】データを一方の通信バスから他方の通信バスへ適切なタイミングで中継可能なゲートウェイ装置を提供する。【解決手段】少なくとも２つ以上の通信バスに接続され、当該通信バスの何れかから受信した受信データを他の通信バスへ中継するゲートウェイ装置であって、受信データを受信する毎に、当該受信データと、前回受信した受信データとが一致しているか否かを判定するデータ比較判定手段と、（ａ）受信データと前回受信した受信データとが一致しないと判定された場合、当該受信データを他の通信バスへ中継し、（ｂ）受信データと前回受信した受信データとが一致し、且つ予め定められた条件が満たされた場合、当該受信データを他の通信バスへ中継し、（ｃ）受信データと前回受信した受信データとが一致し、且つ条件が満たされていない場合、当該受信データを中継しない、中継手段を備える、ゲートウェイ装置である。【選択図】図３
2010136208.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つ以上の通信バスに接続され、当該通信バスの何れかから受信した受信データを他の通信バスへ中継するゲートウェイ装置であって、
前記受信データを受信する毎に、当該受信データと、前回受信した受信データとが一致しているか否かを判定するデータ比較判定手段と、
（ａ）前記受信データと前回受信した受信データとが一致しないと判定された場合、当該受信データを前記他の通信バスへ中継し、（ｂ）前記受信データと前回受信した受信データとが一致し、且つ予め定められた条件が満たされた場合、当該受信データを前記他の通信バスへ中継し、（ｃ）前記受信データと前回受信した受信データとが一致し、且つ前記条件が満たされていない場合、当該受信データを中継しない、中継手段とを備える、ゲートウェイ装置。
【請求項２】
前記受信データと前回受信した前記受信データとが一致していると連続して判定された判定回数をカウントする判定回数カウント手段をさらに備え、
前記中継手段は、（ａ）前記受信データと前回受信した受信データとが一致しないと判定された場合、当該受信データを前記他の通信バスへ中継し、（ｄ）前記受信データと前回受信した受信データとが一致し、且つ前記判定回数が予め定められた閾値より大きい場合、当該受信データを前記他の通信バスへ中継し、（ｅ）前記受信データと前回受信した受信データとが一致し、且つ前記判定回数が前記閾値以下である場合、当該受信データを中継しないことを特徴とする、請求項１に記載のゲートウェイ装置。
【請求項３】
前記中継手段が中継を行った時点からの経過時間を測定するタイマー手段をさらに備え、
前記中継手段は、（ａ）前記受信データと前回受信した受信データとが一致しないと判定された場合、当該受信データを前記他の通信バスへ中継し、（ｆ）前記受信データと前回受信した受信データとが一致し、且つ前記経過時間が定められた閾値より大きい場合、当該受信データを前記他の通信バスへ中継し、（ｇ）前記受信データと前回受信した受信データとが一致し、且つ前記経過時間が前記閾値以下である場合、当該受信データを中継しないことを特徴とする、請求項１に記載のゲートウェイ装置。
【請求項４】
前記データ比較判定手段は、
前記受信データを記憶データとして記憶する記憶手段と、
前記受信データと前記記憶データとが一致しない場合に、前記記憶データを当該受信データで上書き更新する記憶データ更新手段と、
前記受信データと前記記憶データとを比較して、前記受信データと前記記憶データとが一致する場合に、当該受信データが前回受信した受信データとが一致していると判定し、前記受信データと前記記憶データとが一致しない場合に、当該受信データが前回受信した受信データとが一致していないと判定する、記憶データ比較手段とを含むことを特徴とする、請求項１に記載のゲートウェイ装置。
【請求項５】
前記受信データが前記他の通信バスへ中継する必要があるデータであるか否かを判別する、データ判別手段をさらに備え、
前記データ比較判定手段は、前記受信データが前記他の通信バスへ中継する必要があるデータである場合にのみ、当該受信データと、前回受信した受信データとが一致しているか否かを判定し、
前記中継手段は、前記受信データが前記他の通信バスへ中継する必要があるデータである場合にのみ、当該受信データを中継する、請求項１に記載のゲートウェイ装置。
【請求項６】
前記通信バスは、車両に搭載される車載機器を相互接続するネットワーク回線であり、
前記ゲートウェイ装置は、前記車両に搭載されることを特徴とする、請求項１に記載のゲートウェイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
ゲートウェイ装置に関し、より特定的には、車載ネットワークに用いられるゲートウェイ装置に関する。
【背景技術】
【０００２】
従来、車両において、当該車両に搭載された車載装置を制御するため、当該車載装置を相互接続する車載ネットワークが構築されている。一般的に、上記車載ネットワークは、上記車載装置と接続されて所定のデータを取り扱う通信バスを複数備える。そして、各通信バス間のデータの送受信が必要となる場合、当該各通信バスの間に備えられたゲートウェイ装置により、当該データを一方の通信バスから他方の通信バスへ中継する処理が行われる。
【０００３】
上記のような中継処理を行うゲートウェイ装置の一例が、特許文献１に開示されている。特許文献１に開示される通信ゲートウェイ装置は、予め記憶した記憶情報と、受信したデータとを比較する。そして、上記通信ゲートウェイ装置は、上記比較の結果、記憶情報と当該データとが異なった場合にのみ、記憶情報を受信したデータで更新するとともに、当該データを中継する処理を行う。言い換えれば、上記通信ゲートウェイ装置は、同じデータが連続して受信している間は、当該データ中継を停止する処理を行う。
【特許文献１】国際公開第９９／２２４９４号パンフレット
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、車両に搭載され、且つ上記のような通信バスに接続される車載装置には、所定の時間だけデータの受信が途絶した場合、上述の車載ネットワークにおいて何らかの異常が発生していると判断して、当該異常に対応した動作を実行するべく、動作のモードを変更するものがある。例えば、室内灯は、エンジンが点火していることを示すデータの受信が所定時間途絶した場合、バッテリーの電力消費を抑えるべくスリープモードに移行する。具体的には、上記スリープモードで動作する室内灯は、上記エンジンの点火を示すデータを受信するまで点灯しなくなる。
【０００５】
上記特許文献１に開示される通信ゲートウェイ装置と、上記モード変更機能を有する車載装置とを併用した場合、当該車載装置の制御に用いられるデータが、上記通信ゲートウェイ装置の中継の停止処理によって、一定の時間、当該車載装置に中継されなくなる場合がある。このような場合、当該車載装置は、実際には車載ネットワークが正常に動作しているにも拘わらず、車載ネットワークに異常が発生したと誤って判定し、動作のモードを不適切に変更してしまう場合がある。
【０００６】
例えば、上記通信ゲートウェイ装置と、上記室内灯とを併用した場合、車載ネットワークに異常が発生していないにも拘わらず、当該室内灯がスリープモードに移行し、点灯しなくなる場合がある。このように上記室内灯等の車載装置と、上記通信ゲートウェイ装置とを併用すると、当該車載装置がユーザー所望の動作を実行しなくなり、ユーザーが不便に感じる場合がある。
【０００７】
本発明は上記の課題を鑑みて成されたものであり、データを一方の通信バスから他方の通信バスへ適切なタイミングで中継可能なゲートウェイ装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため、本願は以下の構成を採用した。すなわち、第１の発明は、少なくとも２つ以上の通信バスに接続され、当該通信バスの何れかから受信した受信データを他の通信バスへ中継するゲートウェイ装置であって、受信データを受信する毎に、当該受信データと、前回受信した受信データとが一致しているか否かを判定するデータ比較判定手段（１１、１２、Ｓ１２）と、（ａ）受信データと前回受信した受信データとが一致しないと判定された場合、当該受信データを他の通信バスへ中継し、（ｂ）受信データと前回受信した受信データとが一致し、且つ予め定められた条件が満たされた場合、当該受信データを他の通信バスへ中継し、（ｃ）受信データと前回受信した受信データとが一致し、且つ条件が満たされていない場合、当該受信データを中継しない、中継手段（１１、１２、Ｓ１３〜Ｓ１７）とを備える、ゲートウェイ装置である。
【０００９】
第２の発明は、第１の発明において、受信データと前回受信した受信データとが一致していると連続して判定された判定回数をカウントする判定回数カウント手段をさらに備え、中継手段は、（ａ）受信データと前回受信した受信データとが一致しないと判定された場合、当該受信データを他の通信バスへ中継し、（ｄ）受信データと前回受信した受信データとが一致し、且つ判定回数が予め定められた閾値より大きい場合、当該受信データを他の通信バスへ中継し、（ｅ）受信データと前回受信した受信データとが一致し、且つ判定回数が閾値以下である場合、当該受信データを中継しないことを特徴とする。
【００１０】
第３の発明は、第１の発明において、中継手段が中継を行った時点からの経過時間を測定するタイマー手段をさらに備え、中継手段は、（ａ）受信データと前回受信した受信データとが一致しないと判定された場合、当該受信データを他の通信バスへ中継し、（ｆ）受信データと前回受信した受信データとが一致し、且つ経過時間が定められた閾値より大きい場合、当該受信データを他の通信バスへ中継し、（ｇ）受信データと前回受信した受信データとが一致し、且つ経過時間が閾値以下である場合、当該受信データを中継しないことを特徴とする。
【００１１】
第４の発明は、第１の発明において、データ比較判定手段は、受信データを記憶データとして記憶する記憶手段と、受信データと記憶データとが一致しない場合に、記憶データを当該受信データで上書き更新する記憶データ更新手段と、受信データと記憶データとを比較して、受信データと記憶データとが一致する場合に、当該受信データが前回受信した受信データとが一致していると判定し、受信データと記憶データとが一致しない場合に、当該受信データが前回受信した受信データとが一致していないと判定する、記憶データ比較手段とを含むことを特徴とする。
【００１２】
第５の発明は、第１の発明において、受信データが他の通信バスへ中継する必要があるデータであるか否かを判別する、データ判別手段をさらに備え、データ比較判定手段は、受信データが他の通信バスへ中継する必要があるデータである場合にのみ、当該受信データと、前回受信した受信データとが一致しているか否かを判定し、中継手段は、受信データが他の通信バスへ中継する必要があるデータである場合にのみ、当該受信データを中継する。
【００１３】
第６の発明は、第１の発明において、通信バスは、車両に搭載される車載機器を相互接続するネットワーク回線であり、ゲートウェイ装置は、車両に搭載されることを特徴とする。
【発明の効果】
【００１４】
第１の発明によれば、同一のデータを連続して受信した場合、定められた条件が満たされるまで当該データの中継を停止することができる。つまり、転送先の通信バスのデータトラフィック量を低減しつつ、上記条件が満たされるタイミングにおいて、データの中継を適宜行うことができる。したがって、例えば、データを所定時間受信していない場合に動作のモードを非常時用のモードに自動的に切り替える車載装置がデータ転送先の通信バスに接続されていても、当該車載装置は、上記所定時間が経過する以前のタイミングで中継されたデータを受信することができる。すなわち、上記車載装置が誤ってモードを切り替えてしまうことを防ぐことができる。
【００１５】
第２の発明によれば、転送先の通信バスのデータトラフィック量を低減しつつ、同じデータが定められた回数受信されたタイミングで、データの中継を適宜行うことができる。したがって、簡単な処理で、処理量の低減、および上記車載装置の誤ったモードの切り替えを防ぐことができる。
【００１６】
第３の発明によれば、転送先の通信バスのデータトラフィック量を低減しつつ、データを中継してから所定時間経過したタイミングで、データの中継を適宜行うことができる。すなわち、簡単な処理で、処理量の低減、および上記車載装置の誤ったモードの切り替えを防ぐことができる。
【００１７】
第４の発明によれば、新たに受信した受信データと、予め記憶した記憶データとが一致しない場合にのみ、前記記憶データを当該受信データで上書き更新するため、新たにデータを受信する度に記憶データを更新しなくても、新たに受信した受信データと、前回受信した受信データとが一致するか否かを判定することができる。したがって、上記のような記憶データを更新する処理を減らし、処理量を低減することができる。
【００１８】
第５の発明によれば、他の通信バスへの中継が必要なデータについてのみ、前回受信したデータと一致しているか否かを判定する処理を行うことができる。そのため、中継の必要の無いデータについては当該判定処理をしなくて済む。したがって、処理量を低減することができる。
【００１９】
第６の発明によれば、車両のネットワーク回線のデータトラフィック量を低減しつつ、上記車載装置の誤ったモードの切り替えを防ぐことができる。
【発明を実施するための最良の形態】
【００２０】
（第１の実施形態）
以下、図１および図２を参照して、本発明の第１の実施形態に係るゲートウェイ装置１について説明する。
【００２１】
先ず、図１を参照して、第１の実施形態に係るゲートウェイ装置１の構成について説明する。図１は、第１の実施形態に係るゲートウェイ装置１を含む車載ネットワークの構成を示すブロック図である。
【００２２】
図１に示すように、通信バス２および通信バス３は、各々ゲートウェイ装置１を介して互いに接続する。通信バス２および通信バス３には、各々、複数の車載制御装置が接続される。図１では、一例として、通信バス２に車載制御装置２１、車載制御装置２２、および車載制御装置２３が接続される。また、通信バス３に車載制御装置３１、車載制御装置３２、および車載制御装置３３が接続される。なお、第１の実施形態では、ゲートウェイ装置１、各通信バス、および各車載制御装置が、何れも車両に搭載され、車載ネットワークを構築している例について説明する。
【００２３】
ゲートウェイ装置１は、通信バス２または通信バス３に接続された車載制御装置から、一方の通信バスを経由して受信したデータを、他方の通信バスへ中継する中継装置である。ゲートウェイ装置１は、演算部１１、記憶部１２、およびインターフェース回路（図示せず）などを備える。演算部１１は、典型的にはＣＰＵ（Central  Processing  Unit）などの情報処理装置である。記憶部１２は、典型的にはメモリなどの記憶装置である。
【００２４】
通信バス２および通信バス３は、車両に搭載される通信線である。通信バス２および通信バス３上には、上記各車載制御装置から出力されるデータが流れる。
【００２５】
図２は、第１の実施形態に係る車載制御装置が送受信するデータの形式の一例を示す図である。図２に示す通り、車載制御装置が送受信するデータは所定のビット長で表されるデジタルデータである。そして、上記データのビット領域は、ヘッダ領域４１、コマンド領域４２、およびパラメータ領域４３から成る。ヘッダ領域４１は、当該データの開始を示すビット領域である。コマンド領域４２は、当該データの種別を示すコマンドコードを表すビット領域である。例えば、上記データがエンジンの回転数を示す場合、コマンド領域４２にエンジンの回転数を示すコマンドコードが格納される。パラメータ領域４３は、当該データのパラメータを示すビット領域である。例えば、上記データがエンジンの回転数を示すデータである場合、５０００ｒｐｍなどの回転数の数値情報がパラメータ領域４３に格納される。
【００２６】
車載制御装置２１、車載制御装置２２、車載制御装置２３、車載制御装置３１、車載制御装置３２、および車載制御装置３３は、典型的にはＥＣＵ（Electronic Control Unit）などの電子制御装置である。各車載制御装置は、各々、車両に搭載されるエンジンやメーター装置等の車載装置を制御する。各車載制御装置は、他の車載制御装置の制御処理において用いられるデータを、自身が接続されている通信バスへ出力する。また、各車載制御装置は、他の車載制御装置から出力されたデータを、自身が接続されている通信バスから受信して、当該データに応じた制御処理を行う。
【００２７】
例えば、車載制御装置２１は、車両に搭載されたエンジンを制御する制御装置である。また、車載制御装置３１は、メーター装置を制御する制御装置である。なお、メーター装置は、車両情報を運転者に表示する装置である。車載制御装置２１は、エンジンの回転数を示すデータを通信バス２へ出力する。ゲートウェイ装置１は、エンジンの回転数を示すデータを通信バス２から受信し、後述の処理に基づいて、通信バス３へ中継する。そして、メーター装置を制御する車載制御装置３１は、エンジンの回転数を示すデータを通信バス３から受信し、当該データに応じて運転者に対して表示するエンジンの回転数の数値を変更する。
【００２８】
次いで、演算部１１が実行する処理について図３を参照して説明する。図３は、演算部１１が実行する処理を示すフローチャートの一例である。演算部１１は、例えば、車両のＩＧ電源がオンにされるなどして、ゲートウェイ装置１に電源が供給された場合に、図３に示すフローチャートの処理を開始する。演算部１１は、図３に示すフローチャートの処理を開始すると、先ず、ステップＳ１１の処理を実行する。
【００２９】
ステップＳ１１において、演算部１１は、データを受信したか否かを判定する。具体的には、演算部１１は、接続されている通信バス２または通信バス３の何れかからデータを受信したか否かを判定する。演算部１１は、データを受信したと判定した場合、処理をステップＳ１２へ進める。一方、演算部１１は、データを受信していないと判定した場合、処理をステップＳ１８へ進める。なお、以下ではゲートウェイ装置１が受信したデータを受信データと呼称する。
【００３０】
ステップＳ１２において、演算部１１は、受信データが記憶データと同じか否かを判定する。記憶データとは、後述ステップＳ１５の処理に基づいて、記憶部１２に記憶された受信データである。演算部１１は、記憶部１２に記憶された記憶データを読み出し、記憶データと受信データとが同じか否かを判定する。より具体的には、受信データのコマンド領域４２の内容、および受信データのパラメータ領域４３の内容が、記憶データのそれらと各々一致するか否かを判定する。演算部１１は、受信データのコマンド領域４２の内容、および受信データのパラメータ領域４３の内容が、記憶データのそれらと各々一致する場合、受信データが記憶データと同じであると判定して、処理をステップＳ１３へ進める。一方、演算部１１は、受信データのコマンド領域４２の内容、および受信データのパラメータ領域４３の内容、の少なくとも何れか一方が、記憶データのそれと一致しない場合、受信データが記憶データと異なると判定して、処理をステップＳ１５へ進める。
【００３１】
ステップＳ１３において、演算部１１は、回数カウンタ値Ｎをカウントアップする。回数カウンタ値Ｎとは、記憶データと同じ受信データを連続して受信している回数を示す値である。回数カウンタ値Ｎは、記憶部１２に記憶される。回数カウンタ値Ｎの初期値は例えば１に予め設定される。演算部１１は、本ステップＳ１３において、回数カウンタ値Ｎの値を予め定められた値だけ増加させる。例えば、演算部１１は、回数カウンタ値Ｎの値を１だけ増加させる。ステップＳ１３の処理を完了すると、処理をステップＳ１４へ進める。
【００３２】
ステップＳ１４において、演算部１１は、回数カウンタ値Ｎが閾値Ｎｔｈより大きいか否かを判定する。閾値Ｎｔｈは、記憶部１２に予め記憶された任意の定数である。閾値Ｎｔｈの値は、例えば、予め３に設定される。演算部１１は、回数カウンタ値Ｎおよび閾値Ｎｔｈの値を記憶部１２から読み出して、回数カウンタ値Ｎおよび閾値Ｎｔｈの大きさを比較する。演算部１１は、回数カウンタ値Ｎが閾値Ｎｔｈより大きいと判定した場合、処理をステップＳ１６へ進める。一方、演算部１１は、回数カウンタ値Ｎが閾値Ｎｔｈ以下であると判定した場合、処理をステップＳ１１へ戻す。
【００３３】
ステップＳ１５において、演算部１１は、記憶データを更新する。具体的には、演算部１１は、記憶部１２に記憶した記憶データを、受信データで上書きして記憶する。なお、演算部１１は、受信データの全ての部分を記憶データとして記憶しても構わないし、上記ステップＳ１２において受信データと比較する部分のみを記憶データとして記憶しても構わない。例えば、演算部１１は、ヘッダ領域４１を含む受信データの全ての部分を記憶しても構わないし、コマンド領域４２およびパラメータ領域４３のみを記憶しても構わない。ステップＳ１５の処理を完了すると、演算部１１は処理をステップＳ１６へ進める。
【００３４】
上記ステップＳ１１からステップＳ１５の処理によれば、演算部１１は、受信データの内容に変化があった場合にのみ記憶データを更新する。すなわち、記憶データは、前回受信した受信データの内容を示す。したがって、上記ステップＳ１１からステップＳ１５の処理によれば、演算部１１は、データを受信する毎に当該受信データが前回受信した受信データと同じ内容であるか否かを判定することができる。そして、演算部１１は受信データが前回受信した受信データと同じ内容である場合、当該内容の受信データを何回連続して受信しているかカウントする。
【００３５】
ステップＳ１６において、演算部１１は、回数カウンタ値Ｎをリセットする。具体的には、演算部１１は、回数カウンタ値Ｎを初期値に戻して記憶部１２に記憶する。ステップＳ１６の処理を完了すると、演算部１１は処理をステップＳ１７へ進める。
【００３６】
ステップＳ１７において、演算部１１は、記憶データを他方のバスに中継する。具体的には、演算部１１は、受信データを通信バス２から受信した場合、当該受信データを通信バス３へ転送する。一方、演算部１１は、受信データを通信バス３から受信した場合、当該受信データを通信バス２へ転送する。また、通信バス２において流れるデータのプロトコルと、通信バス３において流れるデータのプロトコルとが異なる場合、演算部１１は、受信データを、送信先の通信バスのプロトコルに変換して転送する。ステップＳ１７の処理を完了すると、演算部１１は処理をステップＳ１８へ進める。
【００３７】
ステップＳ１８において、演算部１１は、終了処理が実行されたか否かを判定する。具体的には、演算部１１は、車両のＩＧ電源がオン以外の状態にされるなどの、ゲートウェイ装置１の動作を停止する処理が実行されたか否かを判定する。演算部１１は、終了処理が実行されていないと判定した場合、処理をステップＳ１１へ戻す。一方、演算部１１は、終了処理が実行された判定した場合、図３のフローチャートの処理を終了する。
【００３８】
上記ステップＳ１２からステップＳ１５の処理によれば、演算部１１は、受信データが前回受信したデータと同じである場合、または連続して同じ受信データを一定回数受信した場合に、当該受信データを中継する。言い換えれば、演算部１１は、連続して同じ受信データを一定回数受信されるまでは、当該受信データの中継を行わない。
【００３９】
次いで、図４および図５を参照して、ゲートウェイ装置１が受信データを中継する様子について説明する。図４は、演算部１１が受信した受信データを時系列に示した図である。図５は、ゲートウェイ装置１が、図４に示すデータを受信した場合に中継したデータを時系列順に示した図である。
【００４０】
例えば、図４に示すように、演算部１１は、受信データＶ、受信データＷ、受信データＸ、および受信データＹを通信バス２から受信する。受信データＶ、受信データＷ、受信データＸ、および受信データＹは、何れもコマンド領域４２の内容が同一で、且つパラメータ領域４３の内容が異なる受信データである。演算部１１は、受信データＶを１回、受信データＷを４回、受信データＸを２回、受信データＹを１回、順に各々連続して受信する。なお、図４に示すように演算部１１は、時刻ｔ１の時点において受信データＶを、時刻ｔ２、時刻ｔ３、時刻ｔ４、および時刻ｔ５の各時点において受信データＷを、時刻ｔ６および時刻ｔ７の各時点において受信データＸを、時刻ｔ８の時点において受信データＹを各々受信する。
【００４１】
例えば、時刻ｔ２の時点で、演算部１１が受信データＷを受信した際には、記憶データの内容は前回受信データＶと同一に予め設定されている。つまり、記憶データの内容と受信データＷの内容が一致していないため、演算部１１は、上述ステップＳ１２からステップＳ１５の処理に基づいて、記憶データの内容を受信データＷで上書き更新する。その後、図５に示すように、演算部１１は、上述ステップＳ１７の処理に基づいて、受信データＷを通信バス３へ中継する。
【００４２】
時刻ｔ３の時点において、演算部１１は、当該時点で受信した受信データＷの内容が記憶データと一致するため、上述ステップＳ１２からステップＳ１５の処理に基づいて、回数カウンタ値Ｎの値を増加させる。ここで、回数カウンタ値Ｎは２となるが、閾値Ｎｔｈの値３を超えないため、演算部１１は、当該受信データＷを中継しない。
【００４３】
また、時刻ｔ４の時点においても時刻ｔ３における処理と同様にして、演算部１１は、回数カウンタ値Ｎの値を増加させる。ここで、回数カウンタ値Ｎは３となるが、閾値Ｎｔｈを超えないため、演算部１１は、当該時点において受信した受信データＷを中継しない。
【００４４】
一方で、時刻ｔ５の時点において、演算部１１は、回数カウンタ値Ｎの値を増加させると回数カウンタＮの値が４となる。すなわち、回数カウンタ値Ｎが閾値Ｎｔｈを超えるため、演算部１１は、ステップＳ１４からステップＳ１７の処理に基づいて、時刻ｔ５の時点に受信した受信データＷを通信バス３へ中継する。
【００４５】
上記と同様の処理により、時刻ｔ６の時点においては、演算部１１は、前回の受信データと内容が変化しているため、当該時点に受信した受信データＸを中継する。また、時刻ｔ７の時点においては前回の受信データと同じ内容の受信データＸを受信しており、且つ、回数カウント値Ｎが閾値Ｎｔｈを超えていないため、当該受信データＸを中継しない。また、時刻ｔ８の時点においては、演算部１１は、前回の受信データと内容が変化しているため、当該時点に受信した受信データＹを中継する。
【００４６】
以上より、図５に示すように、演算部１１は、前回と同じ受信データを受信した時刻ｔ３、時刻ｔ４、および時刻ｔ７の時点においては受信データを中継しない。故に、上記ゲートウェイ装置１によれば、通信バス３のデータトラフィック量を低減することができる。
【００４７】
一方で、演算部１１は、前回と同じ受信データを受信した場合であっても、受信回数が閾値Ｎｔｈより大きくなる時刻ｔ５の時点においては受信データを中継する（図５参照）。つまり、上記ゲートウェイ装置１は、同じ内容の受信データを長時間にわたり連続して受信した場合には、当該受信データを定期的に中継することができる。故に、例えば、通信バス３に接続された車載制御装置３１が、所定の時間だけデータの受信が途絶した場合に異常時用のモードに動作のモードを変更する制御装置であったとしても、定期的に受信データを中継することにより通信の途絶を防止し、不要なモードの切り替えを防止することができる。
【００４８】
なお、演算部１１は、受信データのコマンド領域４２の内容を判別し、コマンド領域４２の内容が同一のデータ毎に、すなわち同じ種別のデータ毎に上記図３の処理を実行しても構わない。演算部１１は、エンジンの回転数を示すデータや、車室内の温度を示すデータなど、種々のデータを、混在した状態で受信する場合がある。このような場合、特定の種別のデータについて同一のデータを連続して受信していても、他の種別のデータを合間に受信すると、当該特定の種別のデータについて中継を停止する処理は実行されない場合がある。そこで、演算部１１は、受信データのコマンド領域４２の内容を判別し、各データの種別毎に図３の処理を実行することにより、データの中継量をより適切に減らすことができる。
【００４９】
具体的には、演算部１１は、エンジンの回転数を示すデータや、車室内の温度を示すデータなど、コマンド領域４２に示される受信データの種別毎に、個別に記憶データを更新する。そして、演算部１１は、各受信データを、コマンド領域４２の内容が一致する記憶データと比較する。ここで、演算部１１は、受信データのパラメータ領域４３の内容が、記憶データのそれと一致しない場合、受信回数が閾値Ｎｔｈに達するまで当該種別のデータについてのみ中継を停止する。
【００５０】
（第２の実施形態）
上記第１の実施形態では、演算部１１が、同じ内容の受信データを所定回数連続して受信した場合、当該受信データを中継する処理を行う例について示したが、演算部１１は、中継処理を実行した後、所定時間の間、中継を実施していない場合に、受信データを中継しても構わない。
【００５１】
以下、第２の実施形態に係るゲートウェイ装置について説明する。第２の実施形態に係るゲートウェイ装置は、演算部１１の処理が上述第１の実施形態と異なる。第２の実施形態に係る演算部１１の処理について図６を参照して説明する。図６は第２の実施形態に係る演算部１１が実行する処理を示すフローチャートの一例である。なお、第２の実施形態に係るゲートウェイ装置の構成は、上述第１の実施形態に係るゲートウェイ装置１と同様であるので説明を省略する。
【００５２】
第２の実施形態に係る演算部１１は、第１の実施形態に係る演算部１１と同様に、例えば、車両のＩＧ電源がオンにされるなどして、ゲートウェイ装置１に電源が供給された場合に、図６に示すフローチャートの処理を開始する。演算部１１は、図６に示すフローチャートの処理を開始すると、先ず、ステップＳ２０の処理を実行する。
【００５３】
ステップＳ２０において、演算部１１は、タイマー値Ｔを初期化する。タイマー値Ｔとは、演算部１１が受信データを中継してからの経過時間を示す値である。本ステップＳ２０において演算部１１は、タイマー値Ｔの値を初期値に設定する。タイマー値Ｔの初期値は、例えば０に予め設定される。なお、タイマー値Ｔは、記憶部１２に記憶され、後述ステップＳ２６およびステップＳ２９の処理において、増減される。ステップＳ２０の処理を完了すると、演算部１１は処理をステップＳ２１へ進める。
【００５４】
ステップＳ２１において、演算部１１は、データを受信したか否かを判定する。本ステップＳ２１の処理は上述ステップＳ１１の処理と同様であるため、詳細な説明を省略する。演算部１１は、データを受信したと判定した場合、処理をステップＳ２２へ進める。一方、演算部１１は、データを受信していないと判定した場合、処理をステップＳ２８へ進める。
【００５５】
ステップＳ２２において、演算部１１は、受信データが記憶データと同じか否かを判定する。本ステップＳ２２の処理は上述ステップＳ１２の処理と同様であるため、詳細な説明を省略する。演算部１１は、受信したデータが記憶データと同じであると判定すると、処理をステップＳ２４へ進める。一方、演算部１１は、受信したデータが記憶データと異なると判定すると、処理をステップＳ２５へ進める。
【００５６】
ステップＳ２４において、演算部１１は、タイマー値Ｔが閾値Ｔｔｈより大きいか否かを判定する。閾値Ｔｔｈは、記憶部１２に予め記憶された任意の定数である。演算部１１は、タイマー値Ｔが閾値Ｔｔｈの値を記憶部１２から読み出して、タイマー値Ｔおよび閾値Ｔｔｈの値の大きさ比較する。演算部１１は、タイマー値Ｔが閾値Ｔｔｈより大きいと判定した場合、処理をステップＳ２６へ進める。一方、演算部１１は、タイマー値Ｔが閾値Ｔｔｈ以下であると判定した場合、処理をステップＳ２９へ進める。
【００５７】
ステップＳ２５において、演算部１１は、記憶データを更新する。本ステップＳ２５の処理は上述ステップＳ１５の処理と同様であるため、詳細な説明を省略する。ステップＳ２５の処理を完了すると、演算部１１は、処理をステップＳ２６へ進める。
【００５８】
ステップＳ２６において、演算部１１は、タイマー値Ｔをリセットする。具体的には、演算部１１は、タイマー値Ｔを初期値に戻して記憶部１２に記憶する。ステップＳ２６の処理を完了すると、演算部１１は処理をステップＳ２７へ進める。
【００５９】
ステップＳ２７において、演算部１１は、記憶データを他方のバスに中継する。本ステップＳ２７の処理は上述ステップＳ１７の処理と同様であるため、詳細な説明を省略する。ステップＳ２７の処理を完了すると、演算部１１は処理をステップＳ２８へ進める。
【００６０】
ステップＳ２８において、演算部１１は、終了処理が実行されたか否かを判定する。本ステップＳ２８の処理は上述ステップＳ１８の処理と同様であるため、詳細な説明を省略する。演算部１１は、終了処理が実行されていないと判定した場合、処理をステップＳ２９へ進める。一方、演算部１１は、終了処理が実行された判定した場合、図３のフローチャートの処理を終了する。
【００６１】
ステップＳ２９において、演算部１１は、タイマー値Ｔをカウントアップする。具体的には、演算部１１は、タイマー値Ｔを予め定められた任意の値だけ増加させる。ステップＳ２９の処理を完了すると、処理をステップＳ２１へ戻す。
【００６２】
上記ステップＳ２１からステップＳ２９の処理により、タイマー値Ｔは、受信データが中継されるタイミングでリセットされ、当該タイミングまでは継続的に増加する。
【００６３】
上記ステップＳ２１からステップＳ２９の処理によれば、演算部１１は、受信データに変化があった場合、および、前回受信したデータと同じデータを受信した際にタイマー値Ｔが閾値Ｔｔｈより大きい場合、受信データを中継する。すなわち、演算部１１は、同じ内容の受信データを連続して受信している場合、一定時間が経過するまでは当該受信データの中継を停止する。故に、上記第２の実施形態に係るゲートウェイ装置は、中継先の通信バスのデータトラフィック量を低減することができる。
【００６４】
また、演算部１１は、同じ内容の受信データを連続して受信していても、一定時間が経過すると当該受信データが中継することができる。したがって、例えば、中継先の通信バスに接続された車両制御装置が、所定の時間だけデータの受信が途絶した場合に異常時用のモードに動作のモードを変更する制御装置であったとしても、定期的に受信データを中継することにより通信の途絶を防止し、不要なモードの切り替えを防止することができる。
【００６５】
次いで、図４および図７を参照して、第２の実施形態に係るゲートウェイ装置が受信データを中継する様子について説明する。図７は、図４に示すデータを受信した第２の実施形態に係るゲートウェイ装置が中継するデータを示す図である。以下、第２の実施形態に係るゲートウェイ装置が図４に示す受信データを受信し、各受信データを中継する様子について説明する。なお、図４において、演算部１１は、時刻ｔ１から時刻ｔ８まで、各受信データを一定の時間間隔ｄで受信する。また、演算部１１は、上述ステップＳ２９において、タイマー値Ｔにｄを加算する処理を行う。また、閾値Ｔｔｈは、２ｄより長く、且つ３ｄより短い時間に予め設定される。
【００６６】
時刻ｔ２の時点において、演算部１１は、上述ステップＳ２１からステップＳ２５の処理に基づいて記憶データを受信データＷで更新する。そして、演算部１１は、上述ステップＳ２７の処理に基づいて受信データＷを通信バス３へ中継する。ここで、演算部１１は、ステップＳ２９の処理に基づいてタイマー値Ｔにｄを加算して、タイマー値Ｔの値をｄとする。
【００６７】
時刻ｔ３の時点において、演算部１１は、当該時点で受信した受信データＷの内容が記憶データと一致するため、上述ステップＳ２１からステップＳ２４の処理に基づいて、タイマー値Ｔが閾値Ｔｔｈより大きいか否か判定する。上述の通り、タイマー値Ｔの値はｄであり、閾値Ｔｔｈ以下であるため、演算部１１は、当該時点においては、受信データＷを中継しない。そして、演算部１１は、ステップＳ２９の処理に基づいてタイマー値Ｔにｄを加算して、タイマー値Ｔの値を２ｄとする。
【００６８】
時刻ｔ４の時点においても、演算部１１は、時刻ｔ３における処理と同様にして、当該時点において受信した受信データＷを中継しない。また、演算部１１は、タイマー値Ｔにさらにｄを加算して、タイマー値Ｔの値を３ｄとする。
【００６９】
時刻ｔ５の時点において、タイマー値Ｔの値が閾値Ｔｔｈより大きな値となっているため、演算部１１は、上述ステップＳ２４の処理からステップＳ２６へ処理を進めて、受信データＷを通信バス３へ中継する。
【００７０】
上記と同様の処理により、時刻ｔ６の時点においては、演算部１１は、前回の受信データと内容が変化しているため、当該時点に受信した受信データＸを中継する。また、時刻ｔ７においては前回の受信データと同じ内容の受信データＸを受信しており、且つ、タイマー値Ｔが閾値Ｔｔｈを超えていないため、当該受信データＸを中継しない。また、時刻ｔ８においては、演算部１１は、前回の受信データと内容が変化しているため、当該時点に受信した受信データＹを中継する。
【００７１】
以上より、図７に示すように、演算部１１は、前回と同じ受信データを受信した時刻ｔ３、時刻ｔ４、および時刻ｔ７の時点においては受信データを中継しない。故に、第２のゲートウェイ装置によれば、通信バス３のデータトラフィック量を低減することができる。
【００７２】
一方で、演算部１１は、前回と同じ受信データを受信した場合であっても、タイマー値Ｔが閾値Ｔｔｈより大きくなる時刻ｔ５の時点においては受信データを中継する（図５参照）。つまり、上記ゲートウェイ装置１は、同じ内容の受信データを長時間にわたり連続して受信した場合には、当該受信データを定期的に中継することができる。故に、例えば、通信バス３に接続された車載制御装置３１が、所定の時間だけデータの受信が途絶した場合に異常時用のモードに動作のモードを変更する制御装置であったとしても、定期的に受信データを中継することにより通信の途絶を防止し、不要なモードの切り替えを防止することができる。
【００７３】
なお、上記図４および図７の説明において、演算部１１が各受信データを一定の時間間隔ｄで受信する場合を例として説明したが、各受信データを受信する時間間隔が一定でなくても上記の図６の処理は適用可能であることは言うまでもない。
【００７４】
また、上記では、演算部１１自らがタイマー値Ｔ、すなわち、受信データを中継してからの経過時間をカウントする例を示したが、時間を測定可能なプログラムや装置などのタイマーカウント手段を別途用意されている場合、演算部１１は、当該タイマーカウント手段の測定値を参照して受信データを中継してからの経過時間を測定しても構わない。
【００７５】
（第３の実施形態）
演算部１１は、受信データが中継すべきデータであるか否かを判定し、受信データが中継すべきデータである場合にのみ上記図３の処理を実行しても構わない。以下、第３の実施形態に係るゲートウェイ装置について説明する。なお、第３の実施形態に係るゲートウェイ装置の構成は、上述第１の実施形態に係るゲートウェイ装置１と同様であるので、当該構成については説明を省略する。
【００７６】
以下、第３の実施形態に係る演算部１１の処理について、図８を参照して説明する。図８は、第３の実施形態に係る演算部１１が実行する処理を示すフローチャートの一例である。図８のフローチャートにおいて、上述図３のフローチャートと同様の処理を行うステップについては同じ符号を付し、詳細な説明を省略する。
【００７７】
第３の実施形態に係る演算部１１は、ステップＳ１１の処理において、データを受信したと判定した場合、処理をステップＳ３１へ進める。
【００７８】
ステップＳ３１において、演算部１１は、受信データが中継すべきデータであるか否かを判定する。具体的には、演算部１１は、受信データが中継すべきデータであるか否かを、当該受信データのコマンド領域４２の内容に基づいて判定する。記憶部１２は、通信バス２から通信バス３へ中継すべきデータのコマンドコードの一覧を示すテーブルデータを予め記憶する。そして、演算部１１は、受信データのコマンド領域４２の内容が上記予め記憶部１２に記憶されたテーブルデータに示されるコマンドコードの何れかと一致するか否かを判定する。演算部１１は、受信データのコマンド領域４２の内容が上記予め記憶部１２に記憶されたテーブルデータに示されるコマンドコードの何れかと一致する場合、受信データが中継すべきデータであると判定し、処理をステップＳ１２へ進める。一方、受信データのコマンド領域４２の内容が上記予め記憶部１２に記憶されたテーブルデータに示されるコマンドコードの何れとも一致しない場合、受信データが中継すべきデータでないと判定し、処理をステップＳ１８へ進める。
【００７９】
上記の処理によれば、受信データが中継すべきでないデータである場合には、上述ステップＳ１２からステップＳ１７の処理を実行しなくて済む。したがって、第３の実施形態に係るゲートウェイ装置によれば、演算部１１の処理量を低減することができる。
【００８０】
なお、上記第２の実施形態および第３の実施形態においても、演算部１１は、受信データのコマンド領域４２の内容を判別し、コマンド領域４２の内容が同一のデータ毎に、すなわち同じ種別のデータ毎に、上記図６および図８の処理を実行して構わない。
【００８１】
また、上記各実施形態では、ゲートウェイ装置１が車両に搭載され、車載ネットワークを構築する例について説明したが、ゲートウェイ装置１は複数の通信線間でデータを中継するネットワークであれば車載ネットワーク以外の任意の通信ネットワークに適用可能である。
【００８２】
また、上記各実施形態では、ゲートウェイ装置１が２つの通信バスに接続される例について説明したが、ゲートウェイ装置１は、２つ以上の複数の通信バスに接続されて上記の処理を実行しても構わない。
【００８３】
また、上記各実施形態では、ゲートウェイ装置１が図２に示す形式のデータを中継処理する例について説明したが、ゲートウェイ装置１が中継するデータの形式は上記に限らない。例えば、演算部１１は、パラメータ領域４３を有しない形式のデータを受信し、コマンド領域４２のみが記憶部１２に記憶データのデータ部と一致するか否かに応じて、当該データを中継するか否かを判定しても構わない。また、演算部１１は、受信したデータの全ての部分が、記憶部１２に記憶データの全ての部分と一致するか否かに応じて、当該データを中継するか否かを判定しても構わない。
【産業上の利用可能性】
【００８４】
本発明に係るゲートウェイ装置は、データを一方の通信バスから他方の通信バスへ適切なタイミングで中継可能なゲートウェイ装置などとして有用である。
【図面の簡単な説明】
【００８５】
【図１】第１の実施形態に係るゲートウェイ装置１を含む車載ネットワークの構成を示すブロック図
【図２】第１の実施形態に係る車載制御装置から出力されるデータの形式の一例を示す図
【図３】第１の実施形態に係る演算部１１が実行する処理を示すフローチャートの一例
【図４】第１の実施形態に係るゲートウェイ装置１が受信した受信データを時系列順に示した図
【図５】第１の実施形態に係るゲートウェイ装置１が、図４に示すデータを受信した場合に中継したデータを時系列順に示した図
【図６】第２の実施形態に係る演算部１１が実行する処理を示すフローチャートの一例
【図７】第２の実施形態に係るゲートウェイ装置が、図４に示すデータを受信した場合に中継したデータを時系列順に示した図
【図８】第３の実施形態に係る演算部１１が実行する処理を示すフローチャートの一例
【符号の説明】
【００８６】
１                                    ゲートウェイ装置
２、３                                通信バス
１１                                  演算部
１２                                  記憶部
２１、２２、２３、３１、３２、３３    車載制御装置
４１                                  ヘッダ領域
４２                                  コマンド領域
４３                                  パラメータ領域
【図１】
2010136208.tif 000003
【図２】
2010136208.tif 000004
【図３】
2010136208.tif 000005
【図４】
2010136208.tif 000006
【図５】
2010136208.tif 000007
【図６】
2010136208.tif 000008
【図７】
2010136208.tif 000009
【図８】
2010136208.tif 000010