説明

通信システム、通信装置

【課題】ノードによりネットワークを介して取得されたデータを用いて行われる処理の実行タイミングの変動を防ぐことにより、ネットワークに接続されているノードにより実現される機能の精度の低下を防ぐことができる通信システムを提供する。
【解決手段】受信ノードは、送信ノードからネットワークを介して公開時刻付フレームを受信すると(S510:Yes)、該フレームに含まれている公開時刻データが示す公開時刻に発生する割込み処理を設定する(S520,S525)。そして、公開時刻の到来により割込み処理がコールされると、公開時刻付フレームに含まれている公開データを用いて処理を行う(S615)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のノードを有する通信システム等に関する。
【背景技術】
【0002】
車内ネットワークを介してECUから各種情報を収集して登録する車載データベースが知られている。このような車載データベースでは、車内ネットワークの通信負荷や、ECU或いは当該車載データベースに生じている処理負荷により、ECUから収集された各種情報を登録するタイミングが変動してしまい、車載データベースに登録されている情報を用いて実現される機能の精度が低下してしまうおそれがあった。
【0003】
ここで、特許文献1には、このような問題を解決することができる車載データベースシステムが記載されている。すなわち、車両に搭載される複数のECUを複数の群に分け、各群に属するECUを独立した伝送路に接続すると共に、該伝送路に、各群に個別に設けられたデータベース分配ノードを接続する。さらに、各群に設けられたデータベース分配ノードを専用の伝送路により接続すると共に、該伝送路に統合データベースを接続し、統合データベースに記憶されている情報を各データベース分配ノードで共有する。また、ECUは、自身が属する群に設けられたデータベース分配ノードにアクセスして該ノードのデータベースを更新すると共に、該データベース分配ノードは更新されたデータを統合データベースに登録する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−336179号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
このような車載データベースシステムによれば、複数のECUとデータベースとを単一の伝送路に接続し、これらのECUにてこのデータベースに記憶されている情報を共有する場合に比べ、一つの伝送路に接続されるECUの数を低減させることができるため、伝送路に生じる通信負荷を低減させることができる。このため、通信負荷の増加により、各ECUによるデータベース分配ノードのデータベースの更新タイミングや、データベース分配ノードによる統合データベースの更新タイミングが遅延してしまうことを防ぐことができる。したがって、特許文献1に記載の発明によれば、伝送路の通信負荷の増加によるデータベースの更新タイミングの変動を防ぐことができる。しかしながら、各ECUやデータベース分配ノード等における処理負荷の変動によるデータベースの更新タイミングの変動を防ぐことはできない。
【0006】
本願発明は上記課題に鑑みてなされたものであり、あるノードによりネットワークを介して取得されたデータを用いて行われる処理の実行タイミングの変動を防ぐことにより、該ネットワークに接続されるノードにより実現される機能の精度が低下してしまうことを未然に防ぐことができる通信システムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題に鑑みてなされた請求項1に記載の発明では、通信システムは、ネットワークを介してデータを送信する送信ノードと、ネットワークを介して送信ノードからデータを受信し、該データに基づき予め定められた処理を実行する受信ノードとを有し、送信ノードと受信ノードとは、これらのノード間で同期している時刻を計測する同期時刻計測機能を備えている。また、受信ノードでの処理に用いられるデータを実行データとする。そして、送信ノードは、同期時刻計測機能により計測された時刻に基づき受信ノードが処理を実行すべき時期である実行時期を示す実行時期データを生成し、実行データを実行時期データと共にネットワークを介して受信ノードに送信し、受信ノードは、実行データと実行時期データとを受信すると、該実行時期データが示す実行時期を特定し、同期時刻計測機能により計測される時刻に基づき実行時期の到来を検知すると、実行データに基づき前記処理を実行する。
【0008】
こうすることにより、受信ノードにて実行データに基づく処理が実行される時期が変動してしまうことを防ぐことができる。このため、実行データの生成時や実行データの送信時等を基準とした受信ノードによる上記処理の実行タイミングの変動を防ぐことができ、通信システムにより実現される機能の精度が低下してしまうことを未然に防ぐことができる。
【0009】
また、送信ノードや受信ノードが備える時刻同期機能は、次のようにして実現されても良い。
すなわち、請求項2に記載されているように、送信ノードと受信ノードとは、ネットワークを介してタイムトリガ方式の通信を行い、同期時刻計測機能は、送信ノードと受信ノードとがタイムトリガ方式の通信を行う際に用いられる、これらのノード間で共通に認識される時刻であるグローバルタイムに基づき、同期している時刻を計測する機能であっても良い。
【0010】
こうすることにより、送信ノードと受信ノードとの間で、精度良く時刻の同期を取ることができる。
また、次のような通信装置を単体で市場に流通させても良い。
【0011】
すなわち、請求項3に記載されているように、この通信装置は、他の装置での予め定められた処理に用いられる実行データを、ネットワークを介して他の装置に送信すると共に、他の装置との間で同期している時刻を計測する同期時刻計測機能を備えていても良い。また、この通信装置は、ネットワークを介して他の装置との通信を行う通信手段と、他の装置にて処理を実行すべき時期である実行時期を示す実行時期データを生成する生成手段と、他の装置に対し、通信手段を介して、実行データと共に実行時期データを送信する送信手段とを備えていても良い。
【0012】
このように構成された通信装置であれば、上述した送信ノードと同様の機能を発揮することができ、ネットワークを介して受信ノードに接続することにより、上述した効果と同様の効果を得ることができる。
【0013】
また、次のような通信装置を単体で市場に流通させても良い。
すなわち、請求項4に記載されているように、この通信装置は、ネットワークを介して他の装置から受信した実行データを用いて処理を行うと共に、他の装置との間で同期している時刻を計測する同期時刻計測機能を備えていても良い。また、この通信装置は、ネットワークを介して他の装置との通信を行う通信手段と、通信手段を介して他の装置から、実行データと、処理を行うべき時期を示す実行時期データとを受信する受信手段と、受信手段が実行データと実行時期データとを受信すると、実行時期データが示す実行時期を特定し、同期時刻計測機能により計測される時刻に基づき実行時期の到来を検知すると、実行データに基づき処理を実行する処理実行手段とを備えていても良い。
【0014】
このように構成された通信装置であれば、上述した受信ノードと同様の機能を発揮することができ、ネットワークを介して送信ノードに接続することにより、上述した効果と同様の効果を得ることができる。
【図面の簡単な説明】
【0015】
【図1】通信システムの構成を示すブロック図等である。
【図2】公開データ送信処理のフローチャートである。
【図3】第一の定期通信処理のフローチャートである。
【図4】第二の定期通信処理のフローチャートである。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について図面を用いて説明する。尚、本発明の実施の形態は、下記の実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態を採りうる。
【0017】
[構成の説明]
図1(a)は、本実施形態の車載システム10の構成を示すブロック図である。この車載システム10は、FlexRayに準拠したバス型のネットワークである車内ネットワーク200に接続されている複数のノード100a〜100d等から構成される。
【0018】
次に、車載システム10を構成するノード100について説明する。ノード100は、図1(b)に記載されている周知のMCU(Micro Control Unit)110を備える。このMCU110は、各種情報を記憶するROM115やRAM116と、ROM115に記憶されているプログラムにより各種処理を実行し、ノード100を統括制御する周知のCPU111と、CPU111に対しタイマ割込み等の各種割込み要求を行う割り込みコントローラであるINTC112と、FlexRayのプロトコルに準拠した通信を行う通信コントローラであり、該通信を行うため、他のノード100との間で共通に認識される時刻であるグローバルタイムを計測するFlexRayコントローラ113と、各種IOポートであるPORT114等から構成されている。
【0019】
ここで、FlexRayコントローラ113は、図示しないローカルタイマを備えており、このローカルタイマにより計測される時刻に対しFlexRayのプロトコルにより提供される周知のオフセット補正やレート補正を行うことにより、該ローカルタイマによるグローバルタイムの計測を可能とする。尚、オフセット補正とは、ローカルタイマにより計測される他のノード100からのデータ受信時刻と該データの受信予定時刻との差分に基づき、ローカルタイマの時刻を進める或いは遅らせる補正である。また、レート補正とは、複数回にわたって上記差分を算出し、この差分の変動に基づきローカルタイマのクロックを調整する補正である。
【0020】
[動作の説明]
本実施形態の車載システム10を構成するノード100は、車内ネットワーク200を介して所定の他のノード100に特定のデータを送信する際、該データに基づく処理を実行するグローバルタイムである公開時刻を設定し、この特定のデータを、公開時刻を示す公開時刻データが付された公開時刻付フレームとして送信する。図1(c)には、公開時刻付フレームの構成を示す説明図が記載されている。この公開時刻付フレーム300は、当該フレームのフレームID等を示すヘッダ310と、送信するデータの本体であるペイロード320と、エラー検出のための情報を示すトレイラ330とから構成されている。そして、ペイロード320は、上述した特定のデータである公開データ321と、該公開データ321に付された公開時刻データ322とから構成されている。
【0021】
尚、以後、公開時刻付フレームを送信するノード100を送信ノード100、公開時刻付フレームの送信先のノード100を受信ノード100とも記載する。
[第一実施形態]
次に、第一実施形態において、車載システム10を構成するノード100が、公開時刻付フレームを送信或いは受信する処理について説明する。
(1)公開データ送信処理について
まず、送信ノード100が、受信ノード100に対し上述した公開時刻付フレームを送信する処理について、図2のフローチャートを用いて説明する。本処理は、上述した特定のデータ(公開データ)を生成する条件が成立した際に実行される処理である。
【0022】
S405では、送信ノード100のMCU110を構成するCPU111は、上述した公開データを生成し、S410に処理を移行する。
S410では、CPU111は、受信ノード100が公開データに基づく処理を実行するグローバルタイムである公開時刻を特定し、該公開時刻を示す公開時刻データを生成する。そして、S415に処理を移行する。
【0023】
S415では、CPU111は、公開データと公開時刻データとに基づき公開時刻付フレームを生成し、FlexRayコントローラ113により、受信ノード100に送信する。そして、本処理を終了する。
(2)第一の定期受信処理について
次に、公開時刻付フレームを受信する受信ノード100が、車内ネットワーク200を介してフレームを受信する処理である第一の定期受信処理について、図3(a)に記載のフローチャートを用いて説明する。尚、本処理は、周期的にコールされる処理である。
【0024】
S505は、受信ノード100のMCU110を構成するCPU111は、FlexRayコントローラ113にて新たなフレームが受信されたか否かを判定する。そして、肯定判定が得られた場合には(S505:Yes)、S510に処理を移行し、否定判定が得られた場合には(S505:No)、本処理を終了する。
【0025】
S510では、CPU111は、受信したフレームが公開時刻付フレームか否かを判定する。そして、肯定判定が得られた場合には(S510:Yes)、S515に処理を移行し、否定判定が得られた場合には(S510:No)、S530に処理を移行する。
【0026】
S515では、CPU111は、FlexRayコントローラ113のローカルタイマにより計測される現在のグローバルタイムと、受信した公開時刻付フレームに含まれている公開時刻データが示す公開時刻とがこれ以上近くなるタイミングがこの後に到来するか否かを判定する。具体的には、現在のグローバルタイムが公開時刻を越えている場合や、現在のグローバルタイムと公開時刻との差分が所定の値以下である場合には、上記タイミングがこの後の到来しないものと判定し、これ以外の場合は、上記タイミングがこの後に到来するものと判定する。そして、肯定判定が得られた場合には(S515:Yes)、S520に処理を移行する。また、否定判定が得られた場合には(S515:No)、S530に処理を移行する。
【0027】
S520では、CPU111は、グローバルタイムと公開時刻との差分となる時間を算出し、該時間が経過した際に発生するタイマ割り込みを設定する。そして、S525に処理を移行する。
【0028】
S525では、CPU111は、S520にて設定したタイマ割り込みにてコールされるタイマ割り込み処理の実行を許可すると共に、受信した公開時刻付フレームに含まれている公開データを一時的に保存し、本処理を終了する。
【0029】
受信したフレームが公開時刻付フレームでない場合や、S515にて否定判定がなされた場合(現在のグローバルタイムと公開時刻とがこれ以上近くなるタイミングがこの後に到来しないと判定された場合)に移行するS530では、CPU111は、受信したフレームに含まれているデータ(受信したフレームが公開時刻付フレームの場合は公開データ)を用いて各種処理を実行する。そして、本処理を終了する。
(3)タイマ割り込み処理について
次に、第一の定期通信処理にて設定されたタイマ割り込みによりコールされるタイマ割込み処理について、図3(b)のフローチャートを用いて説明する。
【0030】
S605では、CPU111は、当該タイマ割り込み処理に対応する割り込みフラグをクリアし、S610に処理を移行する。
S610では、CPU111は、当該タイマ割り込み処理の実行を禁止し、S615に処理を移行する。
【0031】
S615では、CPU111は、当該タイマ割り込み処理が設定された際に一時的に保存された公開データを用いて処理を実行し、本処理を終了する。尚、公開データを用いて実行される処理とは、例えば、受信ノード100が備えるデータベースを公開データにより更新する処理であっても良いし、図示しない報知部により、ユーザに対し公開データに基づく情報を報知する等といった処理であっても良い。
[第二実施形態]
次に、第二実施形態において、車載システム10を構成するノード100が、公開時刻付フレームを送信或いは受信する処理について説明する。尚、第二実施形態においても、送信ノード100は、先に説明した公開データ送信処理と同様の処理により公開時刻付フレームを送信するため、説明を省略する。
(1)第二の定期受信処理について
公開時刻付フレームを受信する受信ノード100が、車内ネットワーク200を介してフレームを受信する処理である第一の定期受信処理について、図4に記載のフローチャートを用いて説明する。尚、本処理は、周期的にコールされる処理である。
【0032】
S705は、受信ノード100のMCU110を構成するCPU111は、FlexRayコントローラ113にて新たなフレームが受信されたか否かを判定する。そして、肯定判定が得られた場合には(S705:Yes)、S710に処理を移行し、否定判定が得られた場合には(S705:No)、S725に処理を移行する。
【0033】
S710では、CPU111は、受信したフレームが公開時刻付フレームか否かを判定する。そして、肯定判定が得られた場合には(S710:Yes)、S720に処理を移行し、否定判定が得られた場合には(S710:No)、S715に処理を移行する。
【0034】
S715では、CPU111は、受信したフレームに含まれているデータを用いて各種処理を実行し、S725に処理を移行する。
S720では、CPU111は、受信した公開時刻付フレームに含まれている公開データと公開時刻データとを共に一時保存用バッファに記憶し、S725に処理を移行する。
【0035】
S725では、CPU111は、一時保存用バッファに記憶されている公開データの有無を判定する。そして、一時保存用バッファに公開データが記憶されている場合には(S725:Yes)、該バッファの先頭に記憶されている公開データを選択してS730に処理を移行する。また、一時保存用バッファに公開データが記憶されていない場合には(S725:No)、本処理を終了する。
【0036】
S730では、CPU111は、FlexRayコントローラ113のローカルタイマにより計測される現在のグローバルタイムと、選択された公開データと共に一時保存用バッファに記憶されている公開時刻データが示す公開時刻とが、これ以上近くなるタイミングがこの後に到来するか否かを判定する。具体的には、現在のグローバルタイムが上記公開時刻を越えている場合や、現在のグローバルタイムと上記公開時刻との差分が、上記公開時刻と、グローバルタイムに基づき特定される当該第二の定期受信処理の次回の実行時刻との差分以下である場合には、上記タイミングがこの後の到来しないものと判定する。また、これ以外の場合は、上記タイミングがこの後に到来するものと判定する。そして、肯定判定が得られた場合には(S730:Yes)、S745に処理を移行し、否定判定が得られた場合には(S730:No)、S735に処理を移行する。
【0037】
S735では、CPU111は、選択された公開データを用いて各種処理を実行し、S740に処理を移行する。
S740では、CPU111は、選択された公開データと、該データと共に記憶されている公開時刻データとを一時保存用バッファから削除し、S745に処理を移行する。
【0038】
S745では、CPU111は、一時保存用バッファに、公開時刻についての判定が行われていない公開データが他にも記憶されているかどうか判定する。そして、肯定判定の場合には(S745:Yes)、一時保存用バッファの先頭に記憶されている公開データを選択してS730に処理を移行する。また、否定判定の場合には(S745:No)、本処理を終了する。
【0039】
[効果]
本実施形態の車載システム10によれば、受信ノード100にて公開データに基づく処理が行われる時刻の変動を防ぐことができる。このため、公開データの生成時や公開データの送信時等を基準とした受信ノード100による上記処理の実行タイミングの変動を防ぐことができ、車載システム10により実現される機能の精度が低下してしまうことを未然に防ぐことができる。
【0040】
[他の実施形態]
(1)本実施形態では、送信ノード100は一つの受信ノード100に対して公開時刻付フレームを送信しているが、複数の受信ノード100に対して公開時刻付フレームを送信しても良い。こうすることにより、複数の受信ノード100は、同一の公開データに基づく処理を同期したタイミングで実行することができる。
(2)また、本実施形態における車載システム10の構成を、車両の制御を目的としない他のシステムに適用しても良い。このような場合であっても、同様の効果を得ることができる。
(3)また、本実施形態では、公開データに基づく処理の実行時期が時刻として指定されるが、該処理の実行時期のずれがある程度許容される場合であれば、該処理の実行時期を、グローバルタイムに基づき特定される一定の期間として指定されても良い。このような場合であっても、同様の効果を得ることができる。
(4)また、本実施形態では、送信ノード100と受信ノード100は、FlexRayにおけるグローバルタイムにより計測される時刻をこれらのノード100間で同期している時刻として用いているが、これ以外の方法により時刻の同期をとっても良い。具体的には、例えば、車載システム10を構成するいずれかのノード100をマスタとし、マスタが備えるローカルタイマにより計測される時刻を基準時刻としても良い。そして、マスタが他のノード100に対し定期的に基準時刻を送信する共に、他のノード100では、自身が備えるローカルタイマの時刻を基準時刻に合わせるといった方法により、時刻の同期を取っても良い。このような方法により時刻の同期が取られる場合であっても、同様の効果を得ることができる。
(5)また、本実施形態では、送信ノード100は、公開データを生成して公開時刻データと共に受信ノード100に送信している。しかしながら、公開データは、例えば、外部から取得したデータであっても良いし、予めROM115やRAM116に記憶されていたデータであっても良い。このような場合であっても、同様の効果を得ることができる。
【0041】
[特許請求の範囲との対応]
上記実施形態の説明で用いた用語と、特許請求の範囲の記載に用いた用語との対応を示す。
【0042】
車載システム10が通信システムに、車内ネットワーク200がネットワークに、公開時刻が実行時期に、公開データが実行データにそれぞれ相当する。また、FlexRayコントローラ113が備えるローカルタイマによるグローバルタイムの計測が、同期時刻計測機能に相当する。
【0043】
また、FlexRayコントローラ113が通信手段に、CPU111が生成手段,送信手段,受信手段,処理実行手段に相当する。
【符号の説明】
【0044】
10…車載システム、100…ノード、110…MCU、111…CPU、112…INTC、113…FlexRayコントローラ、114…PORT、115…ROM、116…RAM、200…車内ネットワーク、300…公開時刻付フレーム、310…ヘッダ、320…ペイロード、321…公開データ、322…公開時刻データ、330…トレイラ。

【特許請求の範囲】
【請求項1】
ネットワークを介してデータを送信する送信ノードと、前記ネットワークを介して前記送信ノードからデータを受信し、該データに基づき予め定められた処理を実行する受信ノードとを有する通信システムであって、
前記送信ノードと前記受信ノードとは、これらのノード間で同期している時刻を計測する同期時刻計測機能を備えており、
前記受信ノードでの前記処理に用いられるデータを実行データとし、
前記送信ノードは、前記同期時刻計測機能により計測された時刻に基づき前記受信ノードが前記処理を実行すべき時期である実行時期を示す実行時期データを生成し、前記実行データを前記実行時期データと共に前記ネットワークを介して前記受信ノードに送信し、
前記受信ノードは、前記実行データと前記実行時期データとを受信すると、該実行時期データが示す前記実行時期を特定し、前記同期時刻計測機能により計測される時刻に基づき前記実行時期の到来を検知すると、前記実行データに基づき前記処理を実行すること、
を特徴とする通信システム。
【請求項2】
請求項1に記載の通信システムにおいて、
前記送信ノードと前記受信ノードとは、前記ネットワークを介してタイムトリガ方式の通信を行い、
前記同期時刻計測機能は、前記送信ノードと前記受信ノードとがタイムトリガ方式の通信を行う際に用いられる、これらのノード間で共通に認識される時刻であるグローバルタイムに基づき、前記同期している時刻を計測する機能であること、
を特徴とする通信システム。
【請求項3】
他の装置での予め定められた処理に用いられる実行データを、ネットワークを介して前記他の装置に送信すると共に、前記他の装置との間で同期している時刻を計測する同期時刻計測機能を備える通信装置であって、
前記ネットワークを介して前記他の装置との通信を行う通信手段と、
前記他の装置にて前記処理を実行すべき時期である実行時期を示す実行時期データを生成する生成手段と、
前記他の装置に対し、前記通信手段を介して、前記実行データと共に前記実行時期データを送信する送信手段と、
を備えることを特徴とする通信装置。
【請求項4】
ネットワークを介して他の装置から受信した実行データを用いて処理を行うと共に、前記他の装置との間で同期している時刻を計測する同期時刻計測機能を備える通信装置であって、
前記ネットワークを介して前記他の装置との通信を行う通信手段と、
前記通信手段を介して前記他の装置から、前記実行データと、前記処理を行うべき時期を示す実行時期データとを受信する受信手段と、
前記受信手段が前記実行データと前記実行時期データとを受信すると、前記実行時期データが示す前記実行時期を特定し、前記同期時刻計測機能により計測される時刻に基づき前記実行時期の到来を検知すると、前記実行データに基づき前記処理を実行する処理実行手段と、
を備えることを特徴とする通信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate