JP2008103922A - 通信システム及び通信装置 - Google Patents
通信システム及び通信装置 Download PDFInfo
- Publication number
- JP2008103922A JP2008103922A JP2006283927A JP2006283927A JP2008103922A JP 2008103922 A JP2008103922 A JP 2008103922A JP 2006283927 A JP2006283927 A JP 2006283927A JP 2006283927 A JP2006283927 A JP 2006283927A JP 2008103922 A JP2008103922 A JP 2008103922A
- Authority
- JP
- Japan
- Prior art keywords
- communication
- time
- node
- data
- data transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Time-Division Multiplex Systems (AREA)
Abstract
【課題】タイム・トリガ型の通信システムにおいて、ノード単体の故障が原因で、システム全体で、通信を行うことができなくなるのを防止する。
【解決手段】本発明が適用された通信システムには、コールドスタートノードとして機能し、他ノードに先駆け、自己で決定したタイミング及び周期でスタートアップフレームを送出して、通信サイクルを決定するECUと、非コールドスタートノードとして機能し、上記ECUが周期的に送出するフレームにて規定される通信サイクルに合わせて、自己の時間枠に対応する時間に、送信対象のフレームを送信するECUと、が設けられている。後者のECUは、前者のECUの故障等を原因として、前者のECUからスタートアップフレームを、起動後予め定められた時間内に、受信できなかった場合(S370でYes)、自装置をコールドスタートノードとして機能させ、正常動作しない前者のECUに代わって通信サイクルを決定する。
【選択図】図6
【解決手段】本発明が適用された通信システムには、コールドスタートノードとして機能し、他ノードに先駆け、自己で決定したタイミング及び周期でスタートアップフレームを送出して、通信サイクルを決定するECUと、非コールドスタートノードとして機能し、上記ECUが周期的に送出するフレームにて規定される通信サイクルに合わせて、自己の時間枠に対応する時間に、送信対象のフレームを送信するECUと、が設けられている。後者のECUは、前者のECUの故障等を原因として、前者のECUからスタートアップフレームを、起動後予め定められた時間内に、受信できなかった場合(S370でYes)、自装置をコールドスタートノードとして機能させ、正常動作しない前者のECUに代わって通信サイクルを決定する。
【選択図】図6
Description
本発明は、時分割多重通信方式の通信システムであって、各ノードが、個別の時間帯に、データ伝送路にデータを送出して、衝突を回避するタイム・トリガ型の通信システム、及び、この通信システムに用いられる通信装置に関する。
従来、時分割多重通信方式の通信システムとしては、イベント・トリガ型の通信システム、及び、タイム・トリガ型の通信システムが知られている。
イベント・トリガ型の通信システムは、各ノードが、事象の発生に同期して通信要求を発し、送信権を獲得することができた場合に限って、データ伝送路に、送信対象のデータを送出し、各ノード間でデータの送受を行うものである。
イベント・トリガ型の通信システムは、各ノードが、事象の発生に同期して通信要求を発し、送信権を獲得することができた場合に限って、データ伝送路に、送信対象のデータを送出し、各ノード間でデータの送受を行うものである。
一方、タイム・トリガ型の通信システムは、各ノードに対し時間枠を個別に設定して、各ノードが、他のノードとは重複しない個別の時間帯に、データ伝送路にデータを送出するようにしたシステムである。このタイム・トリガ型の通信システムでは、各ノードが、周期的に到来する自装置に割り当てられた時間枠に対応する時間に限って、データ伝送路に、送信対象のデータを送出する。尚、タイム・トリガ型の通信プロトコルとしては、FlexRay(登録商標)プロトコルが知られている(例えば、非特許文献1参照)。
"フレックスレイ通信システムプロトコル仕様書バージョン2.1改定版A(FlexRay communications System Protocol Specification Version 2.1 Revision A)"、[online]、フレックスレイコンソーシアム(FlexRay Consortium)、[平成18年9月29日検索]、インターネット<URL:http://www.flexray.com/specification#request#v21.php>
"フレックスレイ通信システムプロトコル仕様書バージョン2.1改定版A(FlexRay communications System Protocol Specification Version 2.1 Revision A)"、[online]、フレックスレイコンソーシアム(FlexRay Consortium)、[平成18年9月29日検索]、インターネット<URL:http://www.flexray.com/specification#request#v21.php>
ところで、タイム・トリガ型の通信システムでは、各ノードが、共通する時間軸で動作し、予め定められた通信サイクルに合わせて、自装置に割り当てられた時間枠に対応する時間に、データを送出する必要がある。このため、タイム・トリガ型の通信プロトコルには、これを実現するための手続きが定義されている。
例えば、FlexRay(登録商標)プロトコルにおいては、通信システムを構成するノードとして、コールドスタートノードと、非コールドスタートノードと、が定義されており、当該プロトコルにて実現される通信システムにおいては、コールドスタートノードが、通信サイクルの基点及び周期を定めて、通信サイクルを一意に決定する。
具体的に、コールドスタートノードは、任意の時点で、スタートアップフレームをデータ伝送路に送出すると共に、当該フレームを含めて複数のスタートアップフレームを、自装置のクロックに基づき、所定周期で、順にデータ伝送路に送出する。この動作により、コールドスタートノードは、自装置におけるデータ送出タイミング(上記時間枠)及び周期を、実時間軸上に定める。各ノードの時間枠は、他ノードの時間枠と一定の対応関係を有するため、このコールドスタートノードの動作により、通信サイクルは、一意に決定される。
尚、通信サイクルは、先にスタートアップフレームを送信したコールドスタートノード(以下、「リーディングコールドスタートノード」という。)に対して、他のコールドスタートノード(以下、「フォロイングコールドスタートノード」という。)が、応答フレームを送信することにより、最終的に決定される。
具体的に、フォロイングコールドスタートノードは、リーディングコールドスタートノードから送信されてきたスタートアップフレームの受信タイミング及び受信周期にて定まる通信サイクルに合わせて、自装置に割り当てられた時間枠に対応する時間に、応答フレームを送出する。即ち、フォロイングコールドスタートノードは、リーディングコールドスタートノードに同期して動作し、自装置に割り当てられた時間枠に対応する時間に、応答フレームを送出するのである。
これにより、コールドスタートノード間では、リーディングコールドスタートノードにて定められた通信サイクルに基づいて、通信が行われる。また、非コールドスタートノードは、上記手法にて決定された通信サイクルに合わせて、データ送出動作を行うことにより、先に通信を開始しているコールドスタートノードのネットワークに参加する。
尚、各コールドスタートノードは、自身からのスタートアップフレームの送出前に、スタートアップフレームを受信した場合、フォロイングコールドスタートノードとして機能し、それ以外の場合には、リーディングコールドスタートノードとして機能する。このため、通信システムにおいては、最低二つのコールドスタートノードを配置することで、上述したタイム・トリガ方式の通信を行うことができる。
但し、通信システムに、二つしかコールドスタートノードが配置されていない環境下では、コールドスタートノードが一つでも故障して正常に動作しなくなると、通信サイクルの決定手続きを正常に行えず、システム全体が正常に機能しなくなる。従って、通信システムには、三以上のコールドスタートノードを設けるのが好ましい。
しかしながら、コールドスタートノードを四以上設けると、リーディングコールドスタートノード及びフォロイングコールドスタートノードの組が、二組以上発生する可能性がある。この場合には、各組で個別にクロック同期が行われて、各組で異なる通信サイクルが決定され、システム全体が不安定になる。各組で異なる通信サイクルが決定される現象は、クリークと呼ばれ、このようなクリークが発生すると、システム内で複数のクラスタ(小ネットワーク)が生成されるため、クラスタ間ではクロック同期をとることができなくなり、全体として正常な通信を行うことができなくなるのである。
即ち、従来技術では、複数のコールドスタートノードが故障する可能性を考慮して、通信システム内に、多数のコールドスタートノードを配置することができないといった問題があった。
本発明は、こうした問題に鑑みなされたものであり、上述したタイム・トリガ型の通信システムにおいて、通信サイクルを決定する特定種のノードが正常動作しなくなった場合でも、他ノード間では正常に通信を行うことが可能な技術を提供することを目的とする。
かかる目的を達成するためになされた本発明は、複数のノードが共通するデータ伝送路に接続されてなる時分割多重通信方式の通信システム、及び、当該データ伝送路に接続される通信装置に関するものである。
具体的に、本発明(請求項1記載)の通信システムは、各ノードが、予め決定された通信サイクルに合わせて、自装置に対して予め割り当てられた時間枠に対応する時間に、送信対象のデータを、データ伝送路に送出し、データ伝送路に接続された他ノードに、データを送信する構成にされたものである。尚、各ノードに割り当てられる時間枠は、周期的に到来する通信可能期間における細分化された時間枠の一つであり、各ノードに対しては、異なる時間枠が割り当てられる。
この通信システムでは、複数のノードの内、特定種のノードが、基点及び周期を定めて、上記通信サイクルを決定する決定手段を有し、上記特定種のノードは、この決定手段にて決定された通信サイクルに合わせて、自装置に対して予め割り当てられた時間枠に対応する時間に、送信対象のデータをデータ伝送路に送出する。
一方、この通信システムでは、上記特定種のノード以外のノードの内、少なくとも一以上のノードが、必要に応じて、上記特定種のノードとしても機能する両性ノードとして構成されている。
具体的に、両性ノードは、他ノード(又は自装置)により通信サイクルが決定された場合、決定された通信サイクルに合わせて、予め割り当てられた時間枠に対応する時間に、送信対象のデータをデータ伝送路に送出して、データ伝送路に接続された他ノードにデータを送信する動作を、通信制御手段にて実現する。
また、両性ノードは、特定種のノードと同様に、基点及び周期を定めて通信サイクルを決定する決定手段を有し、自装置の起動後、所定時間内に、他ノードにより通信サイクルが決定されない場合には、自装置にて、決定手段を作動させ、通信サイクルを決定する。
尚、この両性ノードの特徴は、自装置の起動後、所定時間内については、決定手段を作動させない点にある。即ち、本発明の通信システムにおける両性ノードは、自装置の起動後、所定時間内は、決定手段の作動を禁止し、所定時間継続して、他ノードにより通信サイクルが決定されなかった場合には、決定手段を作動させる動作を、作動制御手段にて実現する。
具体的に、上記所定時間としては、特定種のノードが正常動作している際に通信サイクルが決定されるまでの最大所要時間よりも長い時間、を設定することができる。
このような構成の両性ノード(請求項5記載の通信装置)が備えられた通信システム(請求項1)によれば、特定種のノードが故障して、通信サイクルが決定されない場合、両性ノードが、特定種のノードとしての機能を果し、通信サイクルを決定する。
このような構成の両性ノード(請求項5記載の通信装置)が備えられた通信システム(請求項1)によれば、特定種のノードが故障して、通信サイクルが決定されない場合、両性ノードが、特定種のノードとしての機能を果し、通信サイクルを決定する。
従って、この通信システムによれば、上記特定種のノードが故障した場合であっても、両性ノードの機能により、通信システム内では、通信サイクルを決定して、通信を開始することができる。よって、この発明によれば、上述の時分割多重通信方式の通信システムにおいて、ノード単体の故障を原因として、システム全体の通信が不能になるのを抑制することができ、信頼性の高い通信システムを構築することができる。
尚、両性ノード及び特定種のノードが有する各決定手段は、作動すると、当該通信システムを構成する自装置以外の他ノードのデータ送信動作に先駆けて、所定データを、データ伝送路に送出すると共に、自装置のクロックに基づき、以後、周期的に送信対象のデータを、データ伝送路に送出することにより、当該伝送路上での通信サイクルを決定する構成にすることができる。この場合、他のノードは、上記決定手段により送出されたデータの受信タイミングを、当該データを送信したノードの時間枠の到来タイミングとして認識し、上記決定手段により送出されたデータの周期を、当該データを送信したノードの時間枠の到来周期であると認識することにより、上記両性ノード又は特定種のノードにより決定された通信サイクルを認識することができる。
また、決定手段は、FlexRay(登録商標)プロトコルに準じて、次のように構成されてもよい。即ち、決定手段は、通信サイクル決定用のデータを、データ伝送路に送出すると共に、当該動作も含めて複数回、周期的に上記通信サイクル決定用のデータをデータ伝送路に送出する送出手段と、データ伝送路を通じて他ノードから上記通信サイクル決定用のデータを受信すると、当該データの受信タイミング及び受信周期にて定まる通信サイクルに合わせて、自装置に予め割り当てられた時間枠に対応する時間に、通信サイクル決定用のデータに対する応答データを、データ伝送路に送出する応答手段と、を備え、通信サイクルが未決定の環境下において、自装置が通信サイクル決定用のデータを他ノードから受信していない場合、自装置の送出手段を作動させ、この動作を契機として、他のノードから送信されてくる応答データを受信した時点で、送出手段により送出された通信サイクル決定用のデータの送信タイミング及び送信周期で定まる通信サイクルを、以後の通信に用いる通信サイクルに決定する構成にされてもよい(請求項2)。
ところで、両性ノードが、データ伝送路に複数接続された通信システムにおいては、決定手段の作動を禁止する時間について、無条件に、これを定めると、各両性ノードの決定手段が多数同時動作する可能性がある。そして、各両性ノードの決定手段が、多数同時に動作すると、当該通信システムにおいては、多数の両性ノードが個別に通信サイクルを決定することになり、通信サイクルが多重に定められて、クラスタが複数発生し、通信システム全体が不安定になる可能性がある。
このため、両性ノードがデータ伝送路に複数接続される通信システムの場合には、各両性ノードの決定手段が、所定個数以上同時動作しないように、各両性ノードに対して、決定手段の作動を禁止する時間を、個別に設定するとよい(請求項3)。
このように各両性ノードに対し、決定手段の作動を禁止する時間を個別に定めると、両性ノードが所定個数以上同時に、通信サイクルの決定動作に移らないように、通信システムを構成することができる。従って、この発明(請求項3)によれば、通信サイクルが多重に定められて、通信システム全体が不安定になるのを防止することができる。
尚、FlexRay(登録商標)プロトコルの通信システムに、本発明を適用する場合には、各両性ノードの決定手段が、3個以上同時動作しないように、決定手段の作動を禁止する時間を設定すればよい。
また、決定手段の作動を禁止する時間については、予め実験により最適値を求めて、これを各ノードのROM等に記録し、各ノードに対して、設計段階で、上記決定手段の作動を禁止する時間を定めるようにすればよい。
但し、各ノードの起動時間が夫々異なる場合には、各ノードに対し同時に電源を投入しても、起動後の経過時間についての計測開始点を、複数のノード間で揃えることができない。即ち、各ノードに対し、設計段階で、上記決定手段の作動を禁止する時間を定める場合には、各ノードにおける起動時間も考慮して、上記決定手段の作動を禁止する時間を、ノード毎に定めなければならず、その作業が煩雑である。
従って、上記両性ノードは、次のように構成されるのが好ましい。即ち、各両性ノードは、自装置の起動後からの経過時間を計測する計測手段の計測結果に基づき、自装置の起動後、自装置が最初にデータ伝送路からデータを受信するまでの経過時間を、記録する時間記録手段を備える構成にされるのが好ましい。
そして、各両性ノードには、自装置の時間記録手段により記録された時間に、予め定められた固有値を加算して得られた時間を、自装置の決定手段の作動を禁止する時間として設定する設定手段を設け、各両性ノードは、自装置の前記計測手段が計測する経過時間に基づき、自装置の起動後、自装置の上記設定手段により設定された時間、自装置の上記決定手段の作動を禁止する構成にされるとよい。
そして、各両性ノードに対しては、同一の固有値を採る両性ノードが所定個数未満となるように、個別に固有値を設定されるとよい(請求項4)。尚、この固有値については、各ノードのROM等に記録することで、各両性ノードに設定することができる。
各両性ノードの起動が、システム内のノードのいずれかからデータ伝送路に最初にデータが送出されるまでの期間に完了するように、当該通信システムが構成されている場合には、各両性ノードにて、最初にデータ伝送路からデータを受信する時点は、実時間軸上で一致する。従って、各両性ノードの起動時間が、夫々異なり、計測手段による計測開始点が、実時間軸上で、ノード毎に異なっていても、各ノードでの起動後、各ノードの時間記録手段が記録した時間が経過する時点は、各ノードにおいて、同一時刻である。
従って、このような通信システムにおいて、同一の固有値を採る両性ノードが所定個数未満となるように、各両性ノードに対して、固有値を設定すれば、各両性ノードにおける起動時間の相違を考慮せずに、両性ノードが所定個数以上同時に、通信サイクルの決定動作に移らないように、通信システムを構成することができる。
よって、この発明によれば、両性ノードが所定個数以上同時に、通信サイクルの決定動作に移らないように、簡単に、決定手段の作動を禁止する時間を設定することができる。
以下、本発明の実施例について、図面と共に説明する。図1は、本発明が適用された通信システム1の構成を表すブロック図である。
図1に示すように、本実施例の通信システム1は、車両制御用の電子制御装置(以下、単に「ECU」という。)10が、共通するデータ伝送路LNに複数接続されてなる通信システムである。この通信システム1では、物理的にデータ伝送路LNが各ECU10間で共有されているため、時分割多重通信方式により、各ECU10間で通信を行う。具体的に、本実施例では、タイム・トリガ型の通信手順が規定された通信プロトコルが採用されており、当該通信システム1は、タイム・トリガ型の通信システムとして動作する。尚、上記通信プロトコルとしては、FlexRay(登録商標)プロトコルを挙げることができる。
図1に示すように、本実施例の通信システム1は、車両制御用の電子制御装置(以下、単に「ECU」という。)10が、共通するデータ伝送路LNに複数接続されてなる通信システムである。この通信システム1では、物理的にデータ伝送路LNが各ECU10間で共有されているため、時分割多重通信方式により、各ECU10間で通信を行う。具体的に、本実施例では、タイム・トリガ型の通信手順が規定された通信プロトコルが採用されており、当該通信システム1は、タイム・トリガ型の通信システムとして動作する。尚、上記通信プロトコルとしては、FlexRay(登録商標)プロトコルを挙げることができる。
詳述すると、本実施例の通信システム1は、マイクロコンピュータ11と、通信コントローラ13と、送受信回路15と、を備える。マイクロコンピュータ11は、ROM、RAM、EEPROM11a等を内蔵し、ROMに記録された各種プログラムを実行して、車両制御を行うと共に、車両制御の結果等、他ECUに送信すべきデータを、通信コントローラ13及び送受信回路15を通じて他ECU10に送信する。また、マイクロコンピュータ11は、他ECUから送信されてきたデータに基づいて、車両制御等の各種処理を実行する。
一方、通信コントローラ13は、上記通信プロトコルに従って、通信制御を行うものである。具体的に、この通信コントローラ13は、マイクロコンピュータ11から入力された送信対象のデータを、当該通信プロトコルに適合するフォーマットのフレームに変換し、このフレームを、予め定められた通信サイクルに合わせて、自装置に割り当てられた時間枠(スロット)に対応する時間に、データ伝送路LNに送出する。
尚、当該通信システム1においては、上述したように、タイム・トリガ方式が採用されており、所定周期の通信サイクルにおいて、その周期に相当する期間の全部及び一部が通信可能期間として設定され、この通信可能期間が、複数の時間枠に細分化されている。図2は、細分化された時間枠と、各ECU10との対応関係を表す図である。
本実施例の通信システム1においては、各ECU10に対し、システム設計段階で、重複しない個別のフレームIDを割り当てている。一方、本実施例において、上記の各時間枠は、フレームIDと、一対一で対応する。
即ち、本実施例では、各ECU10に対し、システム設計段階で、重複しない個別のフレームIDを割り当てることにより、各ECU10に対して、重複しないように、時間枠を割り当てている。尚、このフレームIDは、EEPROM11aに記録され、当該ECU10の起動時に、マイクロコンピュータ11の動作により、通信コントローラ13にセットされる。そして、通信コントローラ13は、このフレームIDに対応する時間枠に、マイクロコンピュータ11から入力された送信対象のデータを格納したフレームを、送受信回路15を介して、データ伝送路LNに送出する。
ところで、このような構成の通信システム1では、各ECU10が同期して動作する必要があるが、当該通信システム1では、各ECU10間での同期が取れておらず、データ伝送路LNを通じて通信が行われていない場合、一のECU10が、自装置の内部クロックに基づき、周期的に、スタートアップフレーム(詳細後述)を複数回送信し、通信サイクルを定める。
即ち、スタートアップフレームの受信側ECU10は、スタートアップフレームの受信周期を、自装置の内部クロックに基づいて計測して、この計測時間を、通信サイクルの周期であると取り扱い、スタートアップフレームの受信時刻を、スタートアップフレームを送信したECU10に割り当てられた時間枠(スロット)に対応する時間であると取り扱う。
スタートアップフレームを含む当該通信プロトコルにて送受信されるフレームには、スロット番号と一対一に対応する上記フレームIDが付されており、このフレームIDに基づいて、受信側ECU10では、スタートアップフレームの受信時点が、どの時間枠に対応するのかを解釈することができる。また、スロット番号とフレームIDとには一定の対応関係があるため、受信側ECU10では、スタートアップフレームの受信時点を基準にし、このスタートアップフレームのフレームIDと、自装置に割り当てられたフレームIDとを比較することで、自装置の時間枠が、スタートアップフレームの受信時点を基準にして、自己の時間軸上で、どの時点にあるのかを把握することができる。
本実施例では、このような原理で、スタートアップフレームの受信側ECU10において、スタートアップフレームの送信側ECU10で定められた通信サイクルを認識し、この通信サイクルに合わせて、自装置の時間枠に対応する時間に、送信対象のデータを格納したフレームを、データ伝送路LNに送出する。
尚、本実施例の通信システム1では、スタートアップフレームの送信権を有するECU10が、通信システム1を構成する複数のECU10の内、一部のECU10に限定されている。ここでは、スタートアップフレームの送信権を有するECU10を、特に、コールドスタートノードという。本実施例の通信システム1が、このように構成されているのは、コールドスタートノードが、多数同時に、システム内に存在すると、これらのコールドスタートノードにより、通信サイクルが多重に定められて、通信システム1内に、小ネットワーク(クラスタ)が多数形成されるためである。
具体的に、本実施例の通信システム1には、ECU10として、初期状態でコールドスタートノードとして機能するECU10aと、初期状態では、コールドスタートノードとして機能しないが、故障等でECU10aが機能しない場合に限って、コールドスタートノードに遷移するECU10bと、が設けられている。各ECU10bは、ECU10aが正常に機能しない場合、異なるタイミングにて、コールドスタートノードに遷移する。
この点について、詳述すると、各ECU10が備える通信コントローラ13は、通信モードとして、当該ECU10をコールドスタートノードとして機能させる通信モードAと、当該ECU10を非コールドスタートノードとして機能させる通信モードBと、を有し、起動時にマイクロコンピュータ11からのモード設定を受けて、通信モードA及び通信モードBのいずれか一方のモードで動作する。
本実施例の通信システム1において、デフォルトの通信モードとして、通信モードAが指定されているのは、複数のECU10の内、二つのECU10aに限られる。他のECU10bに対しては、デフォルトの通信モードとして通信モードBが指定されており、この通信モードの指定値は、予めシステム設計段階で、各ECU10のEEPROM11aに記録されている。
マイクロコンピュータ11は、内蔵のEEPROM11aに記録されたデフォルト通信モードの指定値に基づいて、当該指定値が、通信モードAを示す場合には、起動時に、通信コントローラ13を、通信モードAで作動させ、当該指定値が、通信モードBを示す場合には、通信コントローラ13を、通信モードBで作動させる。そして、通信コントローラ13を、通信モードBで作動させた場合には、必要に応じて、通信コントローラ13を、通信モードAで再始動させて、自装置を、コールドスタートノードに遷移させる。
通信コントローラ13は、通信モードAで作動すると、次の手順で通信を開始する。図3は、通信モードAで作動された通信コントローラ13が実行する処理を示したフローチャートである。
通信コントローラ13は、通信モードAで作動すると、まず、データ伝送路LNを流れるフレームの受信を試みて、データ伝送路LNにフレームが送出されているか否かを判断する(S110)。
そして、フレームが送出されていない場合には、スタートアップフレームを送信する処理を開始する(S120)。尚、スタートアップフレームは、フレーム内のヘッダに記述される所定のパラメータ(スタートアップインディケータ)が値「1」に設定されたものである。これに対し、非スタートアップフレームにおいては、当該パラメータが値「0」に設定される。
具体的に、S120に移行すると、当該通信コントローラ13は、スタートアップフレームの送信タイミング及び送信周期を決定し、その決定内容に従って、自装置の内部クロックに基づき、スタートアップフレームを、周期的に、繰返しデータ伝送路LNに送出する処理を開始する。この送信タイミングは、当該通信コントローラ13の作動時期によって変動する非固定のタイミングであり、任意のタイミングである。
このようにして、スタートアップフレームを複数回送信すると、正常に他のコールドスタートノードが動作している場合には、図4に示すように、5回目以降のスタートアップフレームに対して、このスタートアップフレームの送信タイミング及び送信周期で定まる通信サイクルに合わせ、他のコールドスタートアップノードから、応答フレームが送信されてくる。
従って、通信コントローラ13は、スタートアップフレームを周期的に送信しつつ、応答フレームの受信状況を把握し、このスタートアップフレームに対応する通信サイクルに合わせて、他のコールドスタートアップノードから、正常に、応答フレームが送信されてきたか否かを判断する(S130)。そして、正常に応答フレームが送信されてきたと判断すると(S130でYes)、自装置から送信した上記スタートアップフレームの送信タイミング及び送信周期で定められる通信サイクルを、以後、通信システム1での通信に用いる通信サイクルに決定して、S170に移行する。
そして、S170で実行する通常通信処理では、マイクロコンピュータ11から入力される送信対象のデータを受け付けて、これを当該システム1の規格に適合するフレームに変換し、上記決定した通信サイクルに合わせて、自装置に割り当てられた時間枠に対応する時間に、上記フレームを、データ伝送路LNに送出する動作を行うと共に、他ECU10から受信した自装置宛のフレームに格納されたデータを、マイクロコンピュータ11に入力する動作を行う。
但し、通信モードAで動作する通信コントローラ13は、この通常通信処理の際にも、送信フレームを、非スタートアップフレームではなく、スタートアップフレームとして継続的に送信する。このようにして通信コントローラ13から継続的に送信されるスタートアップフレームは、他のECU10が同期をとるための同期フレームとして用いられる。
この他、通信コントローラ13は、応答フレームを正常に受信することができなかった場合、S130において、応答フレームが正常に送信されてきていないと判断し(S130でNo)、スタートアップフレームの送信動作を停止して、S110に移行する。
また、通信コントローラ13は、自身がスタートアップフレームをデータ伝送路LNに送出する前に、他ECUからのフレームを受信すると、データ伝送路LNにフレームが送出されていると判断し(S110でYes)、S150に移行する。
そして、S150に移行すると、通信コントローラ13は、同期確立処理を行って、データ伝送路LNを流れる他のコールドスタートノード(即ち、リーディングコールドスタートノード)から発せられたスタートアップフレームの受信時刻及び受信周期に基づき、この受信時刻及び受信周期から導出される通信サイクルに適合するように、自己からのデータ送信タイミング及び送信周期を決定する。即ち、通信コントローラ13は、リーディングコールドスタートノードから発せられたスタートアップフレームに基づき、このコールドスタートノードと同期をとり、自装置の時間枠に対応する時間に、送信対象のデータを格納したフレームを、データ伝送路LNに送出できるようにする。
また、この処理を終えると、通信コントローラ13は、S160に移行し、上記リーディングコールドスタートノードから発せられたスタートアップフレームが示す通信サイクルに合わせて、自装置の時間枠に対応する時間に、このスタートアップフレームに対する応答フレームを、送受信回路15を介して、データ伝送路LNに送出し、上記スタートアップフレームを先に送信してきたリーディングコールドスタートノードに対して、応答フレームを送信する。尚、応答フレームは、スタートアップフレームとして、データ伝送路LNに送出される。
また、このようにして、S160での処理を終えると、通信コントローラ13は、S170に移行して、通常通信処理を開始する。尚、この通常通信処理では、マイクロコンピュータ11から入力される送信対象のデータを受け付けて、これを当該システム1の規格に適合するフレームに変換し、S150で同期をとったリーディングコールドスタートノードの通信サイクルに合わせて、自装置に割り当てられた時間枠に対応する時間に、上記フレームを、データ伝送路LNに送出する動作を行うと共に、他ECU10から受信した自装置宛のフレームに格納されたデータを、マイクロコンピュータ11に入力する動作を行う。そして、通信コントローラ13は、この通常通信処理(S170)を、電源がオフにされるまで、継続的に実行する。
一方、通信モードBで作動すると、通信コントローラ13は、内蔵する時間計測用のカウンタのカウント値CTRを、ゼロに初期化し(S210)、その後、カウンタを作動させて、時間計測を開始する(S220)。尚、図5は、通信モードBで作動された通信コントローラ13が実行する処理を示したフローチャートである。
S220での処理を終えると、通信コントローラ13は、データ伝送路LNを流れるフレームの受信を試みて、データ伝送路LNからフレームを受信するまで待機し(S230)、データ伝送路LNからフレームを受信すると(S230でYes)、S240に移行する。
S240に移行すると、通信コントローラ13は、データ伝送路LNから最初に受信したフレームの受信時点でのカウント値CTRを、フレーム受信時刻TRとして、レジスタに出力する。また、S250にて、同期確立処理を行い、データ伝送路LNを流れるコールドスタートノードから発せられたスタートアップフレームの受信時刻及び受信周期に基づき、この受信時刻及び受信周期から導出される通信サイクルに適合するように、自己からのデータ送信タイミング及び送信周期を決定する。
即ち、通信コントローラ13は、コールドスタートノードから発せられたスタートアップフレームに基づき、コールドスタートノードと同期をとり、自装置の時間枠に対応する時間に、送信対象のデータを格納したフレームを、データ伝送路LNに送出できるようにする。尚、この際には、二つのコールドスタートノードの夫々から発せられたスタートアップフレームに基づき、同期をとる。
また、この処理を終えると、通信コントローラ13は、S260に移行し、通常通信処理を開始する。即ち、S260では、マイクロコンピュータ11から入力される送信対象のデータを受け付けて、これを当該システム1の規格に適合するフレームに変換し、S250で同期をとったコールドスタートノードの通信サイクルに合わせて、自装置に割り当てられた時間枠に対応する時間に、上記フレームを、データ伝送路LNに送出する動作を行うと共に、他ECU10から受信した自装置宛のフレームに格納されたデータを、マイクロコンピュータ11に入力する動作を行う。
但し、通信モードBで作動した場合、通信コントローラ13は、自装置から送出するフレームの全てを、非スタートアップフレームとして送出する。そして、通信コントローラ13は、この通常通信処理(S260)を、電源がオフにされるまで、継続的に実行する。
続いて、通信コントローラ13を作動させると共に、通信コントローラ13の通信モードを切り替えるために、マイクロコンピュータ11が実行する作動制御処理について、図6を用いて、説明する。この作動制御処理は、電源投入時に、マイクロコンピュータ11により実行される。尚、図6は、マイクロコンピュータ11が、自装置の電源投入時に実行する作動制御処理を表すフローチャートである。
作動制御処理を開始すると、マイクロコンピュータ11は、まずS310にて、初期設定処理を実行する。この初期設定処理において、マイクロコンピュータ11は、通信コントローラ13を初期化し、動作パラメータ等を設定する。また、この処理を終えると、マイクロコンピュータ11は、S320に移行し、EEPROM11aに記録されたデフォルト通信モードの指定値を参照して、自装置に対し、デフォルトの通信モードとして、通信モードAが指定されているか否かを判断する。そして、デフォルトの通信モードとして、通信モードAが指定されていると判断すると(S320でYes)、S380に移行し、通信コントローラ13を、通信モードAで作動させ、通信コントローラ13に図3に示す処理を実行させる。その後、当該作動制御処理を終了する。
一方、S320において、自装置に対し、デフォルトの通信モードとして、通信モードBが指定されていると判断すると(S320でNo)、マイクロコンピュータ11は、S330に移行し、通信コントローラ13を、通信モードBで作動させ、通信コントローラ13に図5に示す処理を実行させる。
また、通信モードBを作動させた後には、EEPROM11aに記憶されたパラメータTR_PREの値、及び、パラメータRNDの値に基づいて、パラメータNを、次の値に設定する(S340)。
N=TR_PRE+RND
尚、ここで用いるパラメータTR_PREの値は、通信コントローラ13の前回作動時に、通信コントローラ13がフレーム受信時刻TRとして出力した値であり、前回の作動制御処理実行時のS360で、EEPROM11aに書き込まれるものである。但し、初回の作動制御処理実行時のために、EEPROM11aには、パラメータTR_PREのデフォルト値が、システム設計段階で定められ、記録されているものとする。
尚、ここで用いるパラメータTR_PREの値は、通信コントローラ13の前回作動時に、通信コントローラ13がフレーム受信時刻TRとして出力した値であり、前回の作動制御処理実行時のS360で、EEPROM11aに書き込まれるものである。但し、初回の作動制御処理実行時のために、EEPROM11aには、パラメータTR_PREのデフォルト値が、システム設計段階で定められ、記録されているものとする。
また、パラメータRNDの値は、システム設計段階で、予め、通信システム1を構成する各ECU10に割り当てられた値である。本実施例において各ECU10には、パラメータRNDの値として、夫々異なる値が設定されている。即ち、各ECU10に対しては、パラメータRNDの値として、他のECU10とは重複しない値が設定され、予め、各ECU10のEEPROM11aに記録されている。
S340において、上記のように、パラメータNの値を設定すると、マイクロコンピュータ11は、S350に移行し、二つのコールドスタートノード間でスタートアップフレームの交換が行われて、自装置(通信コントローラ13)が、通常通信処理の実行を開始している状態にあるか否かを判断する。そして、通常通信処理の実行を開始している状態にあると判断すると(S350でYes)、S360に移行する。これに対し、通常通信処理の実行を開始していないと判断すると(S350でNo)、S370に移行する。
S360に移行すると、マイクロコンピュータ11は、通信コントローラ13からフレーム受信時刻TRとして出力された値を、内蔵のEEPROM11aに、パラメータTR_PREの値として記録する。その後、当該作動制御処理を終了する。
一方、S370に移行すると、マイクロコンピュータは、通信コントローラ13のカウント値CTRを参照し、カウント値CTRが、S340で設定された値Nより大きいか否かを判断し、カウント値CTRが値N以下であると判断すると(S370でNo)、S350に移行し、カウント値CTRが値Nより大きいと判断すると(S370でYes)、S380に移行する。
そして、S370でYesと判断した後のS380では、通信コントローラ13を通信モードAで再度作動させて、通信コントローラ13の通信モードを、通信モードBから通信モードAに切り替える。このS380での処理により、通信コントローラ13では、図5に示す処理に代えて、図3に示す処理が、S110から実行される。即ち、S380での処理により、マイクロコンピュータ11は、自装置を、コールドスタートノードに遷移させる。その後、当該作動制御処理を終了する。
尚、本実施例において、通信コントローラ13が、通信モードBから通信モードAに切り替わるタイミングは、カウント値CTRが値Nを超えた時点であるが、本実施例では、以下の条件を満足するように通信システム1を構成することで、上記タイミングが、各ECU10b間でばらばらになるようにしている。
即ち、本実施例では、各ECU10に同時に電源が投入されるように、通信システム1を構成すると共に、スタートアップフレームの送信動作の実行時期を調整することにより、各ECU10bにて通信コントローラ13が通信モードBで作動される時点よりも、後に、ECU10aにてスタートアップフレームの送信動作が行われるように、通信システム1を構成している。
このように各ECU10が動作する通信システム1では、各ECU10bにおいて記録されるパラメータTR_PREの値が、各ECU10b間で同時に受信された、コールドスタートノードにより最初にデータ伝送路LNに送出されたスタートアップフレームの受信時刻に対応する値となる。
本実施例では、このスタートアップフレームの受信時刻を基点として、この受信時刻に対応するパラメータTR_PREの値にパラメータRNDの値を加算し、通信モードの切替タイミングを規定することで、各ECU10bにおいてカウンタの作動時期が異なっていても、各ECU10bが、重複せずに、確実に異なる時点で、通信モードAに切り替わるようにしている。
従って、本実施例によれば、なんらかの原因により、ECU10aが作動しなかった場合、順に、ECU10bを、コールドスタートノードとして機能させることができる。
以上、本実施例の通信システム1について説明したが、この通信システム1によれば、デフォルトで非コールドスタートノードに設定された各ECU10bが、予め定められたパラメータNの値に対応する時間内に、自装置の通信コントローラ13にて通常通信処理が開始されない場合、コールドスタートノードにより当該通信システム1での通信サイクルが決定されていないと判断し、自装置を、コールドスタートノードとして機能させる。従って、本実施例によれば、デフォルトでコールドスタートノードとして設定されたECU10aが、何らかの原因により正常に動作しないことにより、システム内で正常に通信が開始されなくなるのを防止することができる。
以上、本実施例の通信システム1について説明したが、この通信システム1によれば、デフォルトで非コールドスタートノードに設定された各ECU10bが、予め定められたパラメータNの値に対応する時間内に、自装置の通信コントローラ13にて通常通信処理が開始されない場合、コールドスタートノードにより当該通信システム1での通信サイクルが決定されていないと判断し、自装置を、コールドスタートノードとして機能させる。従って、本実施例によれば、デフォルトでコールドスタートノードとして設定されたECU10aが、何らかの原因により正常に動作しないことにより、システム内で正常に通信が開始されなくなるのを防止することができる。
即ち、本実施例によれば、ECU10aが故障しても、ECU10bが非コールドスタートノードからコールドスタートノードに遷移して、ECU10aに代わって、スタートアップフレームを送信し各ノード間での通信開始に必要な通信サイクルを決定するので、ECU10a単体の故障を原因として、システム全体の通信が不能になるのを防止することができ、信頼性の高い通信システム1を構築することができる。
特に、本実施例では、ECU10bが同時にコールドスタートノードに遷移することにより、通信サイクルが多重に定められて、クラスタが複数発生し、通信システム1全体が不安定になるのを防止するために、各ECU10bにて、個別に、パラメータNの値を設定し、ECU10bが複数個同時にコールドスタートノードに遷移しないようにした。従って、本実施例の通信システム1によれば、ECU10aが故障しても、非コールドスタートノードが多数同時にコールドスタートノードに遷移することにより、通信システム1全体が不安定になるのを防止することができる。
尚、本発明の特定種のノードは、本実施例において、ECU10aに相当し、両性ノードは、ECU10bに相当する。また、決定手段は、S110〜S160の処理にて実現され、通信制御手段は、S170,S260の処理にて実現されている。また、送出手段は、S120の処理にて実現され、応答手段は、S150〜S160の処理にて実現されている。また、作動制御手段は、S350,S370,S380の処理にて実現され、計測手段は、カウンタと、S210〜S220の処理とにより実現され、時間記録手段は、S240,S360の処理にて実現されている。その他、設定手段は、S340の処理にて実現されている。
また、本発明の通信システム及び通信装置は、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、上記実施例では、車内ネットワークに、本発明を適用した例を説明したが、本発明は、その他の種々のネットワークに対して適用することができる。
1…通信システム、10…ECU、11…マイクロコンピュータ、11a…EEPROM、13…通信コントローラ、15…送受信回路、LN…データ伝送路
Claims (5)
- 複数のノードが共通するデータ伝送路に接続されてなる時分割多重通信方式の通信システムであって、
前記各ノードは、予め決定された通信サイクルに合わせて、周期的に到来する通信可能期間における細分化された時間枠の一つであって、自装置に対して予め割り当てられた時間枠に対応する時間に、送信対象のデータを前記データ伝送路に送出し、前記データ伝送路に接続された他ノードにデータを送信する構成にされ、
前記複数のノードの内、特定種のノードは、基点及び周期を定めて前記通信サイクルを決定する決定手段を有し、前記決定手段により決定された通信サイクルに合わせて、自装置に対して予め割り当てられた時間枠に対応する時間に、送信対象のデータを前記データ伝送路に送出する構成にされ、
前記特定種のノード以外のノードの内、少なくとも一以上のノードは、
前記通信サイクルが決定された場合、前記決定された前記通信サイクルに合わせて、前記予め割り当てられた時間枠に対応する時間に、送信対象のデータを前記データ伝送路に送出し、前記データ伝送路に接続された他ノードにデータを送信する通信制御手段と、
基点及び周期を定めて前記通信サイクルを決定する決定手段と、
自装置の起動後、所定時間内は、自装置の前記決定手段の作動を禁止し、前記所定時間継続して、他ノードにより前記通信サイクルが決定されなかった場合には、自装置の前記決定手段を作動させる作動制御手段と、
を備える両性ノードとして構成されていること
を特徴とする通信システム。 - 前記両性ノード及び前記特定種のノードが有する各決定手段は、
通信サイクル決定用のデータを、前記データ伝送路に送出すると共に、当該動作も含めて複数回、周期的に前記通信サイクル決定用のデータを前記データ伝送路に送出する送出手段と、
前記データ伝送路を通じて他ノードから前記通信サイクル決定用のデータを受信すると、前記データの受信タイミング及び受信周期にて定まる通信サイクルに合わせて、自装置に予め割り当てられた時間枠に対応する時間に、前記通信サイクル決定用のデータに対する応答データを、前記データ伝送路に送出する応答手段と、
を備え、
前記通信サイクルが未決定の環境下において、自装置が前記通信サイクル決定用のデータを他ノードから受信していない場合、自装置の前記送出手段を作動させ、この動作を契機として、前記他のノードから送信されてくる応答データを受信した時点で、前記送出手段により送出された前記通信サイクル決定用のデータの送信タイミング及び送信周期で定まる通信サイクルを、以後の通信に用いる通信サイクルに決定する構成にされていること
を特徴とする請求項1記載の通信システム。 - 前記両性ノードは、前記データ伝送路に複数接続されており、
前記各両性ノードに対しては、前記決定手段の作動を禁止する時間としての前記所定時間が、前記各両性ノードの前記決定手段が所定個数以上同時動作しないように、個別に設定されていること
を特徴とする請求項1又は請求項2記載の通信システム。 - 前記各両性ノードは、
自装置の起動後からの経過時間を計測する計測手段と、
前記計測手段の計測結果に基づき、自装置の起動後、自装置が最初に前記データ伝送路からデータを受信するまでの時間を、記録する時間記録手段と、
前記時間記録手段により記録された時間に、予め定められた固有値を加算して得られた時間を、前記決定手段の作動を禁止する時間として設定する設定手段と、
を備え、
前記各両性ノードの作動制御手段は、自装置の前記計測手段が計測する経過時間に基づき、自装置の起動後、前記所定時間として、自装置の前記設定手段により設定された時間、自装置の前記決定手段の作動を禁止する構成にされ、
前記各両性ノードに対しては、同一の固有値を採る両性ノードが所定個数未満となるように、個別に前記固有値が設定されていること
を特徴とする請求項1又は請求項2記載の通信システム。 - 複数のノードが共通するデータ伝送路に接続されてなる時分割多重通信方式の通信システムであって、
前記各ノードは、予め決定された通信サイクルに合わせて、周期的に到来する通信可能期間における細分化された時間枠の一つであって、自装置に対して予め割り当てられた時間枠に対応する時間に、送信対象のデータを前記データ伝送路に送出して、前記データ伝送路に接続された他ノードにデータを送信し、
前記複数のノードの内、特定種のノードは、基点及び周期を定めて前記通信サイクルを決定する決定手段を有し、前記決定手段により決定された通信サイクルに合わせて、自装置に対して予め割り当てられた時間枠に対応する時間に、送信対象のデータを前記データ伝送路に送出する
通信システムの前記データ伝送路に接続される通信装置であって、
前記通信サイクルが決定された場合、前記決定された前記通信サイクルに合わせて、自装置に対して予め割り当てられた時間枠に対応する時間に、送信対象のデータを前記データ伝送路に送出し、前記データ伝送路に接続された他ノードにデータを送信する通信制御手段と、
基点及び周期を定めて前記通信サイクルを決定する決定手段と、
自装置の起動後、所定時間内は、自装置の前記決定手段の作動を禁止し、前記所定時間継続して、他ノードにより前記通信サイクルが決定されなかった場合には、自装置の前記決定手段を作動させ、自装置を、前記特定種のノードとして機能させる作動制御手段と、
を備えることを特徴とする通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006283927A JP2008103922A (ja) | 2006-10-18 | 2006-10-18 | 通信システム及び通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006283927A JP2008103922A (ja) | 2006-10-18 | 2006-10-18 | 通信システム及び通信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008103922A true JP2008103922A (ja) | 2008-05-01 |
Family
ID=39437923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006283927A Pending JP2008103922A (ja) | 2006-10-18 | 2006-10-18 | 通信システム及び通信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008103922A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011024100A (ja) * | 2009-07-17 | 2011-02-03 | Denso Corp | 通信システム |
JP2012011824A (ja) * | 2010-06-29 | 2012-01-19 | Hitachi Automotive Systems Ltd | 電気自動車、ハイブリッド自動車、自動車、自動車ブレーキネットワークシステム、車載ネットワークシステム、電子制御ネットワークシステム |
-
2006
- 2006-10-18 JP JP2006283927A patent/JP2008103922A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011024100A (ja) * | 2009-07-17 | 2011-02-03 | Denso Corp | 通信システム |
DE102010031296A1 (de) | 2009-07-17 | 2011-03-10 | DENSO CORPORATION, Kariya-shi | Kommunikationssystem |
JP2012011824A (ja) * | 2010-06-29 | 2012-01-19 | Hitachi Automotive Systems Ltd | 電気自動車、ハイブリッド自動車、自動車、自動車ブレーキネットワークシステム、車載ネットワークシステム、電子制御ネットワークシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9331838B2 (en) | Method for synchronizing clocks in nodes of a vehicle network and node designed to perform the method | |
JP5717240B2 (ja) | 通信システム及び通信装置 | |
KR20090067152A (ko) | 클러스터 커플러 유닛, 클러스터 동기화 방법 및 네트워크 | |
JP2008502182A (ja) | 時間制御される通信システム内にグローバルなタイムベースを確立する方法および通信システム | |
JP4594124B2 (ja) | 通信システム及び通信方法 | |
KR100726476B1 (ko) | 이기종 센서노드의 전력소모 최소화를 위한 시간동기화방법 및 이를 적용한 네트워크 | |
JP4673749B2 (ja) | 車両用通信制御ユニットおよび車両用通信制御システム | |
JP2005159754A (ja) | 送信タイミング決定方法、バス使用権の調停方法、ネットワークシステム、プログラム | |
JP2008103922A (ja) | 通信システム及び通信装置 | |
US20160301749A1 (en) | Method and device for transferring messages in a computer network | |
JP2013055534A (ja) | 通信方法 | |
US8918130B2 (en) | Method for transmitting a communication signal | |
US11616660B2 (en) | Serial time triggered data bus | |
JP4862521B2 (ja) | 通信ネットワークシステム及びそのスタートアップ方法 | |
JP2008131107A (ja) | 車載通信システム、車載装置及び車載通信方法 | |
JP2015053568A (ja) | 通信制御装置 | |
JPWO2009040993A1 (ja) | 電力線通信システム、及び電力線通信装置 | |
JP5853186B2 (ja) | 通信システムおよび重畳モジュール | |
JP2011182395A (ja) | 光ネットワークユニットの電力消費を低減するための方法、デバイス、及びシステム並びにコンピュータープログラム | |
JP2006319394A (ja) | ネットワーク診断装置、およびネットワーク診断方法 | |
KR101498561B1 (ko) | 글로벌 동기화를 위한 tdma 기반의 can 통신시스템 및 방법 | |
JP5488091B2 (ja) | 通信制御装置、通信システム及び通信制御方法 | |
JP5388914B2 (ja) | 通信装置、通信システム | |
JP2013219550A (ja) | 通信システム、加入者側装置、局側装置および省電力制御方法 | |
JP2006270376A (ja) | サイクリックデータ通信システム |