JP6729040B2 - 通信システム、ノード装置、およびプログラム - Google Patents

通信システム、ノード装置、およびプログラム Download PDF

Info

Publication number
JP6729040B2
JP6729040B2 JP2016120596A JP2016120596A JP6729040B2 JP 6729040 B2 JP6729040 B2 JP 6729040B2 JP 2016120596 A JP2016120596 A JP 2016120596A JP 2016120596 A JP2016120596 A JP 2016120596A JP 6729040 B2 JP6729040 B2 JP 6729040B2
Authority
JP
Japan
Prior art keywords
data transmission
transmission path
timer value
node
latch instruction
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.)
Active
Application number
JP2016120596A
Other languages
English (en)
Other versions
JP2017139723A (ja
Inventor
幸輝 湯尾
幸輝 湯尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Publication of JP2017139723A publication Critical patent/JP2017139723A/ja
Application granted granted Critical
Publication of JP6729040B2 publication Critical patent/JP6729040B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数のノード装置を含む通信システムにおける各ノード装置のタイマの時刻合わせを行うタイマ同期技術に関し、特にリング型の論理トポロジを有する通信システムにおけるタイマ同期技術に関する。
論理トポロジとは、通信システムにおけるデータ伝送経路の論理的な形態のことを言う。通信システムにおける論理トポロジは、通信システムにおける各ノード装置の物理的な接続形態である物理トポロジとは必ずしも一致しない。例えば、各ノード装置を一直線に接続するバス型の物理トポロジを有する通信システムであったとしても、両端のノード装置においてデータ伝送経路を折り返し、各ノード装置においてデータを往きと戻りの2回中継することで、リング型の論理トポロジを実現することができる。リング型の論理トポロジを有する通信システムの一例としては、工場やプラントなどの産業施設内に敷設され、当該施設における操業を支援するための制御システムが挙げられる。
制御システムには、産業施設内に設置されたセンサからの監視データの収集やその収集結果に応じて電動機等の駆動制御を行う制御装置や、センサ等と制御装置との間のデータ通信を中継する中継装置がノード装置として含まれている。制御システムでは、通信の不通に起因する操業停止を回避するために、リング型の物理トポロジが採用されることが多い。バス型の物理トポロジの場合、ノード装置間の通信線の1箇所に断線が発生すると、システム全体の機能が損なわれる一方、リング型の物理トポロジであれば、その物理トポロジにおいて断線箇所を挟んで並ぶ各ノード装置において折り返しを行うことにより、バス型として運用を継続することが可能だからである。以下では、リング型の物理トポロジを有するシステムを「リング型のシステム」と呼び、バス型の物理トポロジを有するシステムを「バス型のシステム」と呼ぶ。
制御システムにおいては複数のノード装置が連携して処理を実行するため、タイマ同期技術が極めて重要となる。例えば、印刷所において多色刷りの印刷機器等の制御を行う制御システムであれば、タイマ同期が実現されていないことに起因して色ずれ等が発生する虞がある。この種の制御システムは一般に大規模であるため、機械的な仕組みでタイマ同期を実現することは困難である。このため、制御システムにおけるタイマ同期は、通信ネットワーク経由で実現されることが多い。通信ネットワークにおける一般的なタイマ同期技術としては、Network Time Protocol (NTP)やIEEE1588などが広く知られている。また、制御システムにおけるタイマ同期に関する先行技術文献としては、特許文献1や特許文献2が挙げられる。特許文献1には、データ伝送方向が互いに逆向きの2つのリング型のデータ伝送経路が形成されるリング型の制御システムにおけるタイマ同期技術が開示されている。より詳細に説明すると、特許文献1に開示の技術では、2つのデータ伝送経路の各々に沿ってタイマ同期のマスタ局から同期対象のターゲット局宛てにメッセージを流し、ターゲット局までのメッセージ到達時間差を基にターゲット局のタイマ同期が行われる。特許文献2には、リング型の論理トポロジを1つだけ有するバス型の制御システムにおけるタイマ同期技術が開示されている。
特開平6−214060号公報 特開2011−9829号公報
リング型のシステムでは、通信線等の断線等に起因して論理トポロジを切り換えることで通信の信頼性を向上させることができるのであるが、このように論理トポロジが動的に切り換わるシステムにおけるノード装置間のタイマ同期を実現する技術は従来なかった。例えば特許文献1に開示の技術はデータ伝送方向が互いに逆向きの2つのリング型のデータ伝送経路を有することを前提とした技術であるため、物理トポロジがバス型に切り換わり、上記2つのデータ伝送経路が1つに接続された場合には対応できない。同様に、特許文献2に開示の技術は、リング型のデータ伝送経路を1つだけ有することを前提とした技術であり、リング型のデータ伝送経路が2つ形成されるリング型の物理トポロジには対応できない。
本発明は以上に説明した事情に鑑みて為されたものであり、論理トポロジが動的に変化する通信システムにおいて、ノード装置間のタイマ同期を実現する技術を提供することを目的とする。
上記課題を解決するために本発明は以下の通信システムを提供する。この通信システムは、リング型の物理トポロジに接続された複数のノード装置を含む。この通信システムでは、データフレームが各ノード装置を経由して周回する第1のデータ伝送経路と逆向きに周回する第2のデータ伝送経路とを形成する場合と、第1のデータ伝送経路に第2のデータ伝送経路を接続して1つのデータ伝送経路を形成する場合とが動的に切り換わる。この通信システムでは、複数のノード装置のうちの1つがマスタとなる一方、他のノード装置はマスタからの指示に応じた処理を実行するスレーブとなって各ノード装置が有するタイマを同期させる。マスタはデータ伝送経路の変化に応じてタイマ同期のための通信制御を切り換える。リング型の通信システムにおいてデータ伝送経路の変化が発生する要因の典型例としては、ノード装置間の通信線の断線やノード装置の故障等による脱落等に起因する物理トポロジの切断、すなわちリング型からバス型への物理トポロジの変化が挙げられるが、これに限られるものではない。例えば、ネットワーク管理者等が各ノード装置の設定等を変更することで、通信システムにおけるデータ伝送経路、すなわち通信システムにおける論理トポロジを強制的に変化させる場合も考えられる。
例えば、タイマ同期技術として特許文献1に開示の技術を利用する場合、第1および第2のデータ伝送経路が別個に存在している場合には、上記マスタおよびスレーブには特許文献1に開示の処理をそのまま実行させ、第1および第2のデータ伝送経路が接続されて一つのリング型のデータ伝送経路が形成された状況下では、上記マスタには第1のデータ伝送経路と第2のデータ伝送経路の何れか一方のみにタイマ同期用のメッセージを送出させるようにすれば良い。
また、タイマ同期技術として特許文献2に開示の技術を利用する場合には、マスタに、以下のラッチ指示手段、収集手段、算出手段および同期制御手段を設けるようにすれば良い。ラッチ指示手段は、タイマ値のラッチを各ノード装置に指示するラッチ指示メッセージを第1のデータ伝送経路に沿って送信し、当該ラッチ指示メッセージが第1のデータ伝送経路のみを経由して戻ってきた場合には当該ラッチ指示メッセージを第2のデータ伝送経路へ転送する。収集手段は、ラッチ指示メッセージを受信する毎にスレーブにおいてラッチされたタイマ値を、各スレーブから収集する。算出手段は、各スレーブについて、自装置(マスタ)との間の伝送遅延時間を、収集手段により当該スレーブから収集されたタイマ値から算出する。そして、同期制御手段は、各スレーブに対して、マスタにおける現在のタイマ値と算出手段により算出された当該スレーブについての伝送遅延時間とを通知してタイマ値の補正を指示する。
上記マスタから送信される「ラッチ指示メッセージ」は特許文献2におけるものと同様であり、収集手段によるタイマ値の収集方法、算出手段による伝送遅延時間の算出方法、同期制御手段によるタイマ値の補正指示に関しても特許文献2におけるものと同様である。つまり、本発明の通信システムでは、特許文献2に開示の技術を利用して各ノード装置間のタイマ同期が実現される。前述したように特許文献2に開示の技術は、バス型の物理トポロジを前提とした技術ではあるが、本発明では、ラッチ指示手段により送信したラッチ指示メッセージが第1のデータ伝送経路のみを経由して戻ってきた場合に第2のデータ伝送経路へ転送する処理をラッチ指示手段に行わせるため、特段の問題は生じない。理由は以下の通りである。
マスタから第1のデータ伝送経路へ送出したラッチ指示メッセージが当該第1のデータ伝送経路のみを経由してマスタに戻ってくるのは、第1および第2のデータ伝送経路が別個独立に存在している場合である。例えば、物理トポロジに切断が発生していない場合には、第1および第2のデータ伝送経路が形成される。この場合、特許文献2に開示の技術をそのまま用いると、第2のデータ伝送経路に沿ってラッチ指示メッセージが伝送されることはなく、伝送遅延時間を算出できなくなる。しかし、本発明では、リング型の物理トポロジに切断が発生していない場合のように第1および第2のデータ伝送経路が別個独立に存在している場合には、第1のデータ伝送経路経由で受信したラッチ指示メッセージを第2のデータ伝送経路へ転送する処理がラッチ指示手段によって実行されるため、特許文献2に開示の技術を利用して各スレーブの伝送遅延時間を問題なく算出することができる。
本発明によれば、論理トポロジが動的に切り換わるリング型の通信システムにおいて、ノード装置間のタイマ同期を実現できるようになる。
より好ましい態様においては、マスタは、データ伝送経路の変化を検知する検知手段を備え、データ伝送経路の変化を検知手段により検知したことを契機としてラッチ指示手段によるラッチ指示メッセージの送信を行うことを特徴とする。このような態様によれば、データ伝送経路に変化が発生した時点から遅滞なく各スレーブの伝送遅延時間を再計算し、新たに計算された伝送遅延時間に基づいてタイマ同期を行うことが可能になる。
上記収集手段により収集されたタイマ値または当該タイマ値より算出されるノード装置間遅延時間を記憶する記憶手段を上記通信システムに設け、上記マスタの算出手段には、各スレーブについての自装置との間の伝送遅延時間を記憶手段の記憶内容を用いて算出させても良い。さらに好ましい態様においては、上記検知手段をマスタに設け、マスタに以下の処理を実行させる態様が考えられる。すなわち、マスタは、データ伝送経路の変化を検知手段により検知した場合には、変化後のデータ伝送経路における各スレーブについての自装置との間の伝送遅延時間を記憶手段の記憶内容を用いて算出手段により算出し、同期制御手段により各スレーブへ通知する。このような態様によれば、データ伝送経路に変化が発生したことを契機とするタイマ同期の際には、タイマ値のラッチおよびタイマ値の収集を行うことなくタイマ同期を実現でき、データ伝送経路に変化が発生した時点からタイマ同期完了までの所要時間を短縮することが可能になる。
例えば、物理トポロジに切断が発生していない場合には、第1および第2のデータ伝送経路が形成される一方、物理トポロジに切断が発生した場合にはその切断箇所を挟む各ノード装置において第1のデータ伝送経路に第2のデータ伝送経路を接続する通信システムであれば、上記検知手段として物理トポロジの切断を検知する手段を用いるようにすれば良い。そして、さらに好ましい態様としては以下の態様が考えられる。検知手段は物理トポロジの回復を検知し、同期制御手段は、検知手段により物理トポロジの回復が検知された場合には、マスタにおける現在のタイマ値のみを各スレーブへ通知してタイマ値の補正を指示する。一方、各スレーブは、物理トポロジに切断が発生していない状況下でマスタから通知された伝送遅延時間を保持する保持手段を備え、マスタにおける現在のタイマ値のみを通知された場合には保持手段に保持されている伝送遅延時間と当該タイマ値とを用いて自装置のタイマのタイマ値を補正する。このような態様によれば、物理トポロジの切断が回復された際にラッチ指示メッセージの送信、タイマ値の収集および伝送遅延時間の算出を省略してタイマ同期を行うことが可能になる。物理トポロジに切断が発生する前の状態と、切断が回復された後の状態では、各スレーブについての伝送遅延時間に大差は無いと考えられるからである。
また、本発明の別の態様としては、上記タイマ同期技術におけるマスタとして機能するノード装置として、上記ラッチ指示手段、上記収集手段、上記算出手段および上記同期制御手段を有するノード装置を提供する態様が考えられる。特許文献2に開示の技術によりタイマ同期を行うバス型の通信システムの接続形態をリング型に変更し、さらに当該システムにおけるマスタを本発明のノード装置に置き換えるだけで、タイマ同期に支障を発生させることなく、上記通信システムの物理トポロジをリング型に変更して障害耐性を高めることが可能になる。また、本発明のさらに別の態様としては、CPU(Central Processing Unit)などの一般的なコンピュータを上記ラッチ指示手段、上記収集手段、上記算出手段および上記同期制御手段として機能させるプログラムを提供する態様が考えられる。一般的なノード装置のCPUを上記プログラムにしたがって作動させることで、当該ノード装置を本発明のノード装置として機能させることができる。なお、上記プログラムの具体的な提供態様としては、フラッシュROM(read Only Memory)などのコンピュータ読み取り可能な記録媒体に書き込んで配布する態様や、インターネットなどの電気通信回線経由のダウンロードにより配布する態様が考えられる。
また、本発明の別の態様としては、上記タイマ同期技術におけるスレーブとして機能するノード装置として、タイマと、以下の第1および第2のラッチ回路と、同期制御手段と、保持手段と、を備えるノード装置を提供する態様が考えられる。第1のラッチ回路は、ラッチ指示メッセージを第1のデータ伝送経路経由で受信する毎にタイマのタイマ値をラッチする。第2のラッチ回路は、ラッチ指示メッセージを第2のデータ伝送経路経由で受信する毎にタイマのタイマ値をラッチする。同期制御手段は、マスタからの収集要求に応じて第1および第2のラッチ回路にラッチされているタイマ値を返信する一方、マスタから通知されたタイマ値と伝送遅延時間とに応じてタイマのタイマ値を補正する。保持手段は、物理トポロジに切断が発生していない状況下でマスタから通知された伝送遅延時間を保持する。そして、同期制御手段は、マスタからタイマ値のみを通知された場合には、保持手段に保持されている伝送遅延時間と当該タイマ値とを用いてタイマのタイマ値を補正する。
本発明によれば、論理トポロジが動的に切り換わるリング型の通信システムにおいて、ノード装置間のタイマ同期を実現することが可能になる。
本発明の第1実施形態による通信システム1の構成例を示す図である。 同通信システム1に含まれるノード装置10の構成例を示すブロック図である。 同通信システム1における論理トポロジを説明するための図である。 マスタとして機能するノード装置10において実行されるタイマ同期処理の流れを示すフローチャートである。 同タイマ同期処理のステップSA010にて実行される遅延設定処理の流れ示すフローチャートである。 物理トポロジがリング型である場合のマスタの動作を説明するための図である。 物理トポロジがリング型である場合の通信シーケンスの一例を示す図である。 遅延設定処理のステップSA130において実行される遅延時間計算処理の流れを示すフローチャートである。 本発明の第3実施形態のノード装置10に記憶されるノード装置間遅延時間管理テーブルの一例を示す図である。
以下、図面を参照しつつ本発明の実施形態を説明する。
(A:第1実施形態)
図1は、本発明の第1実施形態による通信システム1の構成例を示す図である。通信システム1は、工場やプラントなどの産業施設内に敷設され、その産業施設における操業を制御する制御システムである。図1に示すように通信システム1は、ノード装置10A、10B、10C、10Dおよび10Eを含んでいる。ノード装置10A、10B、10C、10Dおよび10Eの各々は、図1に示すようにネットワーク接続部NW1とNW2の2つのネットワーク接続部を有しており、ネットワーク接続部NW1およびNW2の各々には通信線が接続される。図1に示すように、通信システム1に含まれる5台のノード装置は、リング型の物理トポロジに接続されている。通信システム1では、上記5台のノード装置のうち、ノード装置10Aがマスタとなり、他の4台は当該マスタからの指示に応じた処理を実行するスレーブとなってタイマ同期が行われる。以下では、上記5つのノード装置の各々を区別する必要がない場合には「ノード装置10」と表記する。
図2は、ノード装置10の構成例を示すブロック図である。
ノード装置10は、ネットワーク接続部NW1およびNW2の他に、タイマ32と、ラッチ回路(図2では、「ラッチ」と表記)33および34と、処理部35と、を有する。ネットワーク接続部NW1とネットワーク接続部NW2の各々は入力端子と出力端子を夫々1つずつ有する。図2に示すように、ネットワーク接続部NW1の入力端子NW1−inは、ラッチ回路33および処理部35を介してネットワーク接続部NW2の出力端子NW2−outに接続されている。ネットワーク接続部NW2の入力端子NW2−inは、ラッチ回路34を介してネットワーク接続部NW1の出力端子NW1−outに接続されている。
通信システム1では、物理トポロジに沿って互いに隣接する2つのノード装置10のうちの一方の出力端子NW2−outと他方の入力端子NW1−inとが接続されるとともに、上記一方の入力端子NW2−inと他方の出力端子NW1−outとが接続されるように、ノード装置10間の通信線が配線されている。例えば、ノード装置10Aの出力端子NW2−outはノード装置10Bの入力端子NW1−inに接続されており、ノード装置10Aの入力端子NW2−inはノード装置10Bの出力端子NW1−outに接続されている。ノード装置10Bの出力端子NW2−outはノード装置10Cの入力端子NW1−inに接続されており、ノード装置10Bの入力端子NW2−inはノード装置10Cの出力端子NW1−outに接続されている。ノード装置10Cとノード装置10D、ノード装置10Dとノード装置10E、ノード装置10Eとノード装置10Aについても同様である。
これにより、通信システム1では、図3にて実線で示す第1のデータ伝送経路D1と同点線で示す第2のデータ伝送経路D2が形成される。図3を参照すれば明らかように第1のデータ伝送経路D1および第2のデータ伝送経路D2の論理トポロジは何れもリング型である。第1のデータ伝送経路D1は、ノード装置10Aの出力端子NW2−out→ノード装置10Bの入力端子NW1−in→ノード装置10Bの出力端子NW2−out→ノード装置10Cの入力端子NW1−in→・・・ノード装置10Eの出力端子NW2−out→ノード装置10Aの入力端子NW1−inといったデータ伝送経路である。一方、第2のデータ伝送経路D2は、ノード装置10Aの出力端子NW1−out→ノード装置10Eの入力端子NW2−in→ノード装置10Eの出力端子NW1−out→ノード装置10Dの入力端子NW2−in→・・・ノード装置10Bの出力端子NW1−out→ノード装置10Aの入力端子NW2−inといったデータ伝送経路である。
第1のデータ伝送経路D1では、ノード装置10A→ノード装置10B→・・・ノード装置10E→ノード装置10Aといった順に各種通信メッセージ等のデータを内包したデータフレームの伝送が行われる。これに対して第2のデータ伝送経路D2では、第1のデータ伝送経路D1とは逆順にデータフレームの伝送が行われる。図3を参照すれば明らかなように第1のデータ伝送経路D1は、各ノード装置10の処理部35を経由するデータ伝送経路であり、この点が第2のデータ伝送経路D2と異なる。このため、本実施形態では、ノード装置10間のデータの送受信は、原則的に第1のデータ伝送経路D1に沿って行われる。
ラッチ回路33および34の各々は、その接続先の入力端子から特定の通信メッセージを受信したことを契機としてその受信時刻を示すタイマ値をタイマ32から取得してラッチする。本実施形態では、上記特定の通信メッセージのことを「ラッチ指示メッセージ」と呼ぶ。図2では詳細な図示を省略したが、ネットワーク接続部NW1およびNW2と、ラッチ回路33および34と、タイマ32は、処理部35とは別個の通信用LSI(Large-Scale
Integration)として実装される。ラッチ回路33および34は、受信メッセージを監視し、受信メッセージがラッチ指示メッセージであった場合にタイマ値を取得するだけの回路であり、通信メッセージの伝送制御には影響しない。ラッチ回路33および34は、処理部35の動作とは無関係にタイマ値のラッチのみを行うのでノード装置10全体の処理時間に対する影響も小さい。また、上記通信用LSIは、ネットワーク接続部NW1およびNW2の各々についてその接続先との通信の不通が検出された場合に、入力端子と出力端子とを短絡する処理、すなわち、第1のデータ伝送経路D1に第2のデータ伝送経路D2を接続して1つのリング型のデータ伝送経路にする処理も行う。
処理部35は、例えばCPUであり、図示せぬ記憶部に記憶されたファームウェア等のソフトウェアにしたがって各種処理を実行する。処理部35が実行する処理の具体例としては、ノード装置10の上位の処理系からの要求に応じて通信メッセージを生成する処理や、入力端子NW1−inから受信した通信メッセージが削除対象であるか否かを判定する処理、削除対象である場合に当該通信メッセージを削除する処理、削除対象ではないと判定した場合には上記受信メッセージを出力端子NW2−outへ転送する処理等が挙げられる。
上記ソフトウェアには、本発明の特徴を顕著に示すタイマ同期処理を処理部35に実行させるタイマ同期プログラムが含まれている。タイマ同期処理の処理内容は、マスタとスレーブとで異なり、スレーブにおいて実行されるタイマ同期処理は特許文献2に開示の技術におけるスレーブの処理と同一である。よって、以下では、マスタ、すなわちノード装置10Aにおいて実行されるタイマ同期処理を中心に説明する。
図4は、マスタにおいて実行されるタイマ同期処理の流れを示すフローチャートである。図4に示すように、マスタにおけるタイマ同期処理は、遅延設定処理(ステップSA010)とマスタタイマ配布処理(ステップSA020)とに大別される。なお、図4では、図面が煩雑になることを避けるために、前者は「遅延設定」と表記されており、後者は「マスタタイマ配布」と表記されている。遅延設定処理およびマスタタイマ配布処理の処理内容は以下の通りである。
遅延設定処理とは、マスタから各スレーブまでの伝送遅延時間をスレーブ毎に設定する処理である。マスタからスレーブまでの伝送遅延時間とは、マスタから送信された通信メッセージがスレーブに到達するまでに要した時間のことを言う。マスタからスレーブまでの伝送遅延時間は基本的には変化しないが、(A)ノード装置の脱落や通信線の断線などに起因する物理トポロジの切断、(B)温度等の周囲環境変化に起因する通信線やノード装置上の伝送時間の変化などにより変わる可能性がある。このため、本実施形態では、遅延設定処理SA010は、タイマ同期処理の開始後、予め設定された遅延再設定タイミング毎に周期的に、すなわち、ステップSA030の判定結果が“Yes”となる毎に実行される。
図5は、遅延設定処理の流れを示すフローチャートである。図5に示すように、遅延設定処理は、ラッチ指示処理(ステップSA110)、タイマ値収集処理(ステップSA120)、遅延時間計算処理(ステップSA130)、遅延時間設定処理(ステップSA140)に大別される。ラッチ指示処理とは、ラッチ指示メッセージを出力端子NW2−outからブロードキャストする処理、すなわち、第1のデータ伝送経路D1へラッチ指示メッセージを送出する処理である。上記の要領で第1のデータ伝送経路D1へ送出されたラッチ指示メッセージは入力端子NW1−inへと戻って来る。ラッチ指示処理では、処理部35は、入力端子NW1−inを介して受信したラッチ指示メッセージが第1のデータ伝送経路D1のみを経由して戻ってきたものであるか否かを判定する。そして、処理部35は、第1のデータ伝送経路D1のみを経由してきたものであると判定した場合には、入力端子NW1−inを介して受信したラッチ指示メッセージを入力端子NW1−outへ転送、すなわち、第2のデータ伝送経路D2へ転送する。これに対して、上記受信したラッチ指示メッセージが第1のデータ伝送経路D1および第2のデータ伝送経路D2を経由してきた場合には、処理部35は当該ラッチ指示メッセージを破棄する。
入力端子NW1−inを介して受信したラッチ指示メッセージが第1のデータ伝送経路D1のみを経由して戻ってきたものである場合に当該ラッチ指示メッセージを第2のデータ伝送経路D2へと転送する理由は以下の通りである。まず、入力端子NW1−inを介して受信したラッチ指示メッセージが第1のデータ伝送経路D1のみを経由して戻ってくるのは、通信システム1の物理トポロジがリング型であり、第1のデータ伝送経路D1および第2のデータ伝送経路D2が各々別個に存在している場合である。この場合、マスタから第1のデータ伝送経路D1へ送出されたラッチ指示メッセージは第2のデータ伝送経路D2を経由しておらず、各スレーブではラッチ回路33によるタイマ値のラッチは行われているものの、ラッチ回路34によるタイマ値のラッチは行われていない。
本実施形態では特許文献2に開示の技術を利用して各ノード装置10のタイマ同期が実現される。しかし、特許文献2に開示の技術では、ラッチ回路33とラッチ回路34の各々によってタイマ値のラッチが行われていることが前提となっており、このため、リング型の物理トポロジを有する通信システムにおけるタイマ同期に特許文献2に開示の技術をそのまま適用できなかった。本実施形態では、通信システム1の物理トポロジがリング型であるかバス型であるかを問わずに特許文献2に開示の技術を用いてタイマ同期を行えるようにするために、ラッチ指示メッセージが第1のデータ伝送経路のみを経由してマスタに戻ってきた場合には当該ラッチ指示メッセージを第2のデータ伝送経路D2へ転送するのである。これにより、図6に示すように、第1のデータ伝送経路D1と第2のデータ伝送経路D2はマスタ内において経路101により短絡され、図7に示すように、ノード装置10B〜10Eの各々においてラッチ回路33とラッチ回路34とでタイマ値のラッチが行われる。なお、図7において、符号Tx1(xはA〜Eの何れか)は、ノード装置10xのラッチ回路33によってラッチされたタイマ値を表し、符号Tx2は、ノード装置10xのラッチ回路34によってラッチされたタイマ値を表す。
入力端子NW1−inを介して受信したラッチ指示メッセージが第1のデータ伝送経路D1のみを経由して戻ってきたものであるか否かの具体的な判定方法としては種々の方法が考えられる。例えば、マスタにおいて、ラッチ指示メッセージの送信を契機として所定の初期値をラッチ回路33および34に設定させる。そして、入力端子NW1−inを介してラッチ指示メッセージを受信した時点においてラッチ回路34にラッチされているタイマ値が上記初期値である場合には、上記ラッチ指示メッセージは第1のデータ伝送経路D1のみを経由してきたと処理部35に判定させる態様が考えられる。
また、ラッチ指示メッセージに、ラッチ回路33および34の各々について、すなわち、データ伝送経路毎に、タイマ値のラッチを行ったか否かを示すタイマ値有効フラグをノード装置10毎に設けて置き、マスタの処理部35には上記タイマ値有効フラグを全てゼロクリアしたラッチ指示メッセージを送信させる一方、各ノード装置10のラッチ回路33或いはラッチ回路34にはタイマ値のラッチを行う毎に該当するタイマ値有効フラグを1に更新する処理を実行させる態様が考えられる。この態様の場合、マスタの処理部35には、入力端子NW1−inを介して受信したラッチ指示メッセージにおける全てのタイマ値有効フラグが1である場合には、当該メッセージは第1のデータ伝送経路D1および第2のデータ伝送経路D2を経由してきたと判定させ、その他の場合は第1のデータ伝送経路D1のみを経由してきたと判定させれば良い。
以上がラッチ指示処理の処理内容である。
タイマ値収集処理は、各スレーブ装置からラッチ回路33によりラッチされたタイマ値とラッチ回路34によりラッチされたタイマ値とを収集する処理である。このタイマ値収集処理は、タイマ値収集メッセージと呼ばれる特定の通信メッセージを第1の伝送経路D1へ送信することで実現される。タイマ値収集処理の処理内容およびタイマ値収集メッセージについては特許文献2におけるものと何ら変わるところはないため、詳細な説明を省略する。
次いで、遅延時間計算処理の処理内容を説明する。
図8は、遅延時間計算処理の流れを示すフローチャートである。図8に示すように、遅延時間計算処理では、処理部35は、まず、通信システム1の物理トポロジがリング型であるか否かを判定する(ステップSA1310)。ステップSA1310における判定については、前述したラッチ指示処理SA110における判定結果を記録しておき、その記録内容を利用する態様が考えられる。
図8に示すように、処理部35は、ステップSA1310の判定結果がYesである場合には、ノード間遅延計算処理(1)(ステップSA1320)およびノード間遅延計算処理(2)(ステップSA1330)を実行した後に各局遅延計算処理(ステップSA1350)を実行する。各局遅延計算処理とは、ノード間のデータ伝送に要する時間(以下、ノード装置間遅延時間)に基づいてマスタから各スレーブまでの伝送遅延時間をスレーブ毎に計算する処理である。逆に、ステップSA1310の判定結果がNoである場合には、処理部35はノード間遅延計算処理(3)(ステップSA1340)を実行した後に各局遅延計算処理(ステップSA1350)を実行する。つまり、本実施形態では、通信システム1の物理トポロジがリング型である場合とバス型である場合とで、ノード装置間遅延時間の計算が異なるのである。ノード間遅延計算処理(1)〜(3)のうちのノード間遅延計算処理(3)と各局遅延計算処理については、特許文献2に開示の技術における該当処理と変わるところはない。よって、以下では、ノード間遅延計算処理(1)とノード間遅延計算処理(2)を中心に説明する。
前述したように、通信システム1の物理トポロジがリング型である場合には、第1のデータ伝送経路D1および第2のデータ伝送経路D2を図6の経路101により短絡させて、疑似的にバス型として扱われる。ノード間遅延計算処理(1)は、第1のデータ伝送経路D1上で上記短絡箇所より手前(すなわち、マスタ側)に存在するノード装置10間の伝送時間差分を算出する処理である。ノード間遅延計算処理(1)の処理内容はノード間遅延計算処理(3)の処理内容と同一である。例えば、「ノード装置10Bが第1のデータ伝送経路D1の上流からメッセージを受け付けてからノード装置10Cに当該メッセージが到達するまでの時間」と「ノード装置10Cが下流からメッセージを受け付けてからノード装置10Bに到達するまでの時間」(換言すれば、ノード装置10Cが第2のデータ伝送経路の上流からメッセージを受け取ってからノード装置10Bに到達するまでの時間)の和DIFFBCは、以下の式(1)により表される。
DIFFBC = (TB2−TB1)−(TC2−TC1)・・・(1)
式(1)左辺のDIFFBCは、ノード装置10Bとノード装置10C間のノード装置間遅延時間(各ノード装置における中継処理時間を含む)LBCとノード装置10Bの処理部35でのメッセージ処理時間Eの組合せで表現できる。具体的には、式(1)の左辺DIFFBCは、以下の式(2)のように表される。なお、メッセージ処理時間Eについては予め計測しその計測値を上記記憶部に記憶させておけば良い。
DIFFBC = 2×LBC+E・・・(2)
式(1)および(2)から、ノード装置10Bとノード装置10Cの間のノード装置間遅延時間LBCは、以下の式(3)により表される。
BC = {(TB2−TB1)−(TC2−TC1)−E}/2 (3)
ノード間遅延計算処理(1)では、処理部35は、上記と同様の演算により、マスタ−ノード装置10B間のノード装置間遅延時間LAB、ノード装置10C−ノード装置10D間のノード装置間遅延時間LCD、ノード装置10D−ノード装置10E間のノード装置間遅延時間LDEを算出する。
次いで、ノード間遅延計算処理(2)について説明する。
ノード間遅延計算処理(2)は、前述した短絡箇所から先に存在するスレーブについてのノード装置間遅延時間を算出する処理であり、本実施形態では、ノード装置10Eとマスタとの間のノード装置間遅延時間LEAは当該ノード間遅延計算処理(2)により算出される。ノード間遅延計算処理(2)とノード間遅延計算処理(1)とを分けたのは、短絡経路101では、処理部35におけるメッセージ処理時間が通常のメッセージ処理時間Eとは異なる可能性があるからである。短絡経路101に関するメッセージ処理時間Fが通常のメッセージ処理時間Eとは異なる場合には、当該通過時間Fを別途計測しておき、式(3)におけるメッセージ処理時間Eに代えて当該メッセージ処理時間Fを用いてノード装置間遅延時間LEAを算出するようにすれば良い。なお、メッセージ処理時間Fがメッセージ処理時間Eと同じである場合には、ノード間遅延計算処理(2)を別途設ける必要はなく、全てのノード装置間遅延時間をノード間遅延計算処理(1)により算出すれば良い。また、メッセージが1周する時間を測定し、この時間から、マスタからノード装置10Eまでの伝送遅延時間(マスタから第1のデータ伝送経路D1に沿ってノード装置Eに至るまでの各ノード装置10間のノード装置間遅延時間の総和)を減算することでマスタ−ノード装置10E間のノード装置間遅延時間LEAを算出しても良い。
以上が遅延時間計算処理SA130の処理内容である。遅延時間計算処理SA130に後続して実行される遅延時間設定処理SA140では、各局遅延計算処理SA1350にてスレーブ毎に計算された伝送遅延時間を各スレーブの遅延として設定する。
前掲図4に戻って、遅延設定処理SA010に後続して実行されるマスタタイマ配布処理SA020とは、マスタノードのタイマ値(以下、マスタタイマ値)と伝送遅延時間とを各スレーブへ通知する処理である。各スレーブは、マスタタイマ値と伝送遅延時間とを用いて自身のタイマ32のタイマ値をマスタタイマ値に伝送遅延時間を加算した値に補正することで、各スレーブのタイマ32とマスタのタイマ32の同期が実現する。マスタおよび各スレーブのタイマ32は各々自装置に実装された水晶発振器等の発振器の発振に基づいてタイマ値のカウントを行っているのであるが、発振器の個体差や各ノード装置の置かれた温度などの周囲環境により発振誤差が発生し得る。本実施形態では、各スレーブのタイマ32とマスタのタイマ32とを正確に同期させるために、マスタタイマ配布処理SA020は遅延設定処理SA010よりも短い周期で定期的に実行される。図4におけるステップSA030の判定処理は、マスタタイマ配布処理SA020を遅延設定処理SA010よりも短い周期で定期的に実行する制御を実現するための処理である。
以上がノード装置10の構成である。
通信システム1の物理トポロジはノード装置10間の通信線の断線によってリング型からバス型に切り換わり、物理トポロジの切り換わりに追従して論理トポロジも切り換わるのであるが、ノード装置10を上記のような構成としたため、本実施形態によれば、通信システム1における物理トポロジがバス型あるいはリング型の何れであっても、各スレーブとマスタとの間の伝送遅延時間を特許文献2に開示の手法により測定することができ、各ノード装置10のタイマを同期することが可能となる。
このように、本実施形態によれば、通信システム1における論理トポロジが動的に切り換わる場合であっても、特許文献2に開示の手法を用いてノード装置間のタイマ同期を実現することが可能となる。なお、本実施形態では、リング型の通信システムにおける物理トポロジの切断を契機として論理トポロジが変化する場合について説明したが、ネットワーク管理者等が各ノード装置の設定等を変更することで、論理トポロジを強制的に変化させても良い。
(B:第2実施形態)
上記第1実施形態では、タイマ同期処理が周期的に実行された。しかし、このような態様では、タイマの同期タイミングの直後にデータ伝送経路の変化が発生した場合、次の同期タイミングまでの間、ノード装置10A〜10Eのタイマ同期が保証されない、といった問題が生じる。そこで、本実施形態では、論理トポロジ、すなわちデータ伝送経路の変化を検知する検知処理をノード装置10の処理部35に実行させ、マスタとして動作しているノード装置10には、データ伝送経路の変化を上記検知処理により検知したことを契機としてラッチ指示メッセージの送信を行わせる。このような態様によれば、データ伝送経路に変化が発生したことを契機として各スレーブについての伝送遅延時間を再計算し、新たに計算された伝送遅延時間に基づいてタイマ同期を行うことが可能になる。なお、第1実施形態のような周期的なタイマ同期と、データ伝送経路に変化が発生したことの検知を契機とするタイマ同期の両方を組み合わせてマスタに実行させても良い。
上記検知処理の具体的な処理内容は次の通りである。ネットワーク管理者等の操作によって強制的にデータ伝送経路を変化させる態様であれば、上記検知処理としては、各ノード装置の設定変更を検知する処理が考えられる。また、物理トポロジの切断に応じて論理トポロジが変化する通信システムであれば、上記検知処理としては、物理トポロジの切断を検知する処理が考えられる。具体的には、スレーブには、接続先との通信の不通を検知した場合にその旨をマスタへ通知する処理を実行させ、マスタには、当該メッセージを受信した場合にデータ伝送経路に変化が発生したと判定させるようにすれば良い。
上記検知処理として物理トポロジの切断を検知する処理を採用する態様においては、以下のようにするとさらに好ましい。すなわち、検知処理では物理トポロジの回復を検知し、マスタには、物理トポロジの回復が検知されたことを契機として当該マスタにおける現在のタイマ値のみを各スレーブへ通知してタイマ値の補正を指示する処理、を実行させる。一方、各スレーブには、物理トポロジに切断が発生していない状況下でマスタから通知された伝送遅延時間を保持する保持手段を設ける。例えば、メモリなど、ノード装置10における記憶部に上記保持手段の役割を担わせれば良い。そして、各スレーブには、マスタにおける現在のタイマ値のみを通知された場合には保持手段に保持されている伝送遅延時間と当該タイマ値とを用いて自装置のタイマのタイマ値を補正する処理、を実行させる。このような態様によれば、物理トポロジの切断が回復された際にラッチ指示メッセージの送信、タイマ値の収集および伝送遅延時間の算出を省略してタイマ同期を行うことが可能になる。物理トポロジに切断が発生する前の状態と切断が回復された後の状態とでは、各スレーブについての伝送遅延時間に大差は無く、特段の問題が生じることは無いと考えられるからである。
(C:第3実施形態)
上記第2実施形態では、データ伝送経路に変化が発生したことの検知を契機としてタイマ同期のための通信が行われる。このため、上記第2実施形態によれば、データ伝送経路の変化が発生した時点から、新たに計算された伝送遅延時間に基づくタイマ同期が完了するまでの遅延を第1実施形態よりも小さくすることができる。しかし、マスタのタイマ値とスレーブのタイマ値との誤差が極めて小さいこと(例えば、マイクロ秒単位であること)を要求されるような状況下では、第2実施形態でも不十分な場合がある。そこで、本実施形態におけるマスタ(ノード装置10A)は、ノード間遅延算出処理(1)および(2)によりノード装置間遅延時間を算出する毎に、図9(A)に示すノード装置間遅延時間管理テーブルに当該算出したノード装置間遅延時間を書き込む。そして、マスタは、データ伝送経路に変化が発生した場合には、各スレーブについての伝送遅延時間をノード装置間遅延時間管理テーブルの格納内容に基づいてスレーブ毎に再計算して各スレーブへ通知する。以降、マスタは、当該通知を行った時点を同期周期の起算点に再設定する。
ノード装置間遅延時間管理テーブルについては、マスタとして機能するノード装置10の記憶部(図示略)に記憶させておけば良い。図9(A)に示すノード装置間遅延時間管理テーブルにおける「局間」は、ノード装置間の伝送経路を意味する。例えば、図9(A)における局間「A:B」はノード装置10Aとノード装置10B間の伝送経路を意味する。また、図9(A)における局間「A:A」はノード装置10Aからノード装置10Aに至る伝送経路、すなわち1周分の伝送経路を意味する。図9(A)に示す格納内容はノード装置10Aからノード装置10Aに至る1周分のノード装置間遅延時間がLAAであることを意味する。以下、ノード装置10Dとノード装置10Eの間で断線が発生した場合を例にとってマスタが実行する処理を説明する。
図9(A)に示すノード装置間遅延時間管理テーブルに格納されているノード装置間遅延時間から各スレーブについての伝送遅延時間を算出する処理の内容は、データ伝送経路D1に沿ってマスタから断線の発生箇所に至るまでのスレーブと、断線の発生箇所以降のスレーブとで異なる。データ伝送経路D1に沿って当該マスタから断線の発生箇所に至るまでのスレーブについては、マスタの処理部35は、当該スレーブに至るまでの各ノード装置間遅延時間の総和に、マスタから当該スレーブまでのスレーブ数×メッセージ処理時間E、を加算して伝送遅延時間を算出する。ノード装置10Dとノード装置10Eとの間で断線が発生した場合には、マスタの処理部35は、ノード装置10B、10Cおよび10Dについては上記の要領で伝送遅延時間を算出する。例えば、ノード装置10Cについての伝送遅延時間TACは下記式(4)のように算出される。
AC=LAB+LBC+E×2 (4)
これに対して、データ伝送経路D1上で断線の発生箇所以降に存在するスレーブであるノード装置10Eについては、処理部35は、以下の式(5)により表される1周遅延時間TAAからデータ伝送経路D2に沿って当該スレーブに至るまでの各ノード装置間遅延時間の総和および当該スレーブに至るまでの各スレーブにおけるメッセージ処理時間Eの総和を減算して伝送遅延時間を算出する。ノード装置10Eについての遅延時間TACは下記式(6)のように算出される。
AA=2×LAA+5×E (5)
AE=TAA−(LEA+E) (6)
式(4)〜式(6)に示す演算処理は、何れもノード装置間遅延時間管理テーブルに格納されているデータおよび定数を用いた算術演算(加減算および乗算)であるから、これら演算処理の実行によってマスタの処理部35の処理負荷が過剰になることはない。つまり、本実施形態によれば、タイマラッチ指示メッセージおよびタイマ値収集メッセージの送受信およびノード装置間遅延時間の再計算を行わない分だけ、各ノード装置10の処理負荷を軽減し、データ伝送経路の変化が発生した時点から、新たに計算された伝送遅延時間に基づくタイマ同期を完了するまでの所要時間を上記第2実施形態よりも短縮することが可能になる。本実施形態では、データ伝送経路の変化が発生したことを契機とするタイマ同期においてのみ、ノード装置間遅延時間管理テーブルの格納内容を参照して各スレーブについての伝送遅延時間を算出したが、データ伝送経路の変化が発生した時点からM(Mは2以上の自然数)回目までのノード装置間遅延時間管理テーブルの格納内容を参照して各スレーブについての伝送遅延時間を算出しても良い。ただし、各スレーブにおけるタイマ値の誤差は、周囲の温度などの動作環境の相違や装置の個体差等によりスレーブ毎に異なり得るため、ノード装置間遅延時間管理テーブルの格納内容を更新せずに使い続けることは好ましくない。このため、上記Mの値については、各スレーブにおけるタイマ値の誤差の発生状況に応じて定めることが好ましい。
本実施形態では、図9(A)に示すように、ノード装置間の伝送経路の各々についてノード装置間遅延時間を1つだけ格納したが、図9(B)に示すように複数のノード装置間遅延時間(ノード装置間遅延時間(1)〜ノード装置間遅延時間(N):Nは2以上の自然数、図9(B)に示す例では、N=3)を格納しても良い。具体的には、マスタは、ノード間遅延算出処理(1)およびノード間遅延算出処理(2)を初めて実行する場合は、算出した各ノード間遅延時間をノード装置間遅延時間(1)列に書き込み、次にノード間遅延算出処理(1)およびノード間遅延算出処理(2)を実行する際には、算出した各ノード間遅延時間をノード装置間遅延時間(2)列に書き込む。そして、ノード装置間遅延時間(N)列に各ノード装置間遅延時間を書き込んだ後にノード間遅延算出処理(1)およびノード間遅延算出処理(2)を実行する際には、マスタは、ノード装置間遅延時間(1)列の格納内容を新たに算出したノード装置間遅延時間で上書きする。このように、ノード装置間遅延時間管理テーブルの各列を巡回的に使用すれば良い。
そして、データ伝送経路に変化が発生したことの検知を契機としてタイマ同期を行う際には、マスタは、伝送経路毎にノード装置間遅延時間(1)〜ノード間遅延時間(N)の平均値を算出し、その平均値を用いてスレーブ毎に伝送遅延時間を算出する。なお、上記平均値の算出方法は単純平均(すなわち、加算平均)であっても良く、直近のものほど重みを重くした重み付け平均であっても良い。直近のものほど重みを重くするのは、動作環境の相違や装置の個体差等に起因する誤差を考慮して遅延時間を算出するためである。加えて、このような態様によれば、ノード装置間遅延時間(1)〜ノード装置間遅延時間(N)を比較することで、上記誤差の発生傾向を分析することも可能になる。なお、図9(A)或いは図9(B)に示すように、ノード装置間遅延時間を記録するのではなく、図9(C)に示すように各ノード装置10にてラッチされた2種類のタイマ値をノード装置毎に記憶しておいても良い。図9(C)に示すように、各ノード装置にてラッチされた2種類のタイマ値を記憶しておけば、各ノード装置間遅延時間を算出することは可能だからである。
本実施形態では、マスタとして機能するノード装置10Aの記憶部にノード装置間遅延時間管理テーブルを記憶させたが、ノード装置10A〜10Eのうちマスタとして機能し得るノード装置10の全てにノード装置間遅延時間管理テーブルを記憶させておいても良い。図1に示すリング型のシステムの場合、ノード装置間遅延時間の値はノード装置10A〜10Eのうちの何れがマスタであるかとは無関係と考えられ、このような態様によれば、マスタの交代が発生した場合に新たなマスタと各スレーブとの間の伝送遅延時間を迅速に算出することができ、マスタの交代直後のタイマ同期を迅速に実現することができる。また、ノード装置10の記憶部にノード装置間遅延時間管理テーブルを記憶させるのではなく、ノード装置10A〜10Eの何れとも異なる記憶装置であって、ノード装置10A〜10Eの各々からアクセス可能な記憶装置にノード装置間遅延時間管理テーブルを記憶させておいても良い。このような記憶装置の具体例としてはネットワーク対応のハードディスク装置等が挙げられる。このような態様によっても、マスタの交代直後のタイマ同期を迅速に実現することが可能になる。
(D:変形)
以上本発明の第1、第2および第3実施形態について説明したが、これら実施形態に以下の変形を加えても良い。
(1)上記各実施形態では、制御システムへの本発明の適用例を説明したが、本発明の適用対象は制御システムに限定されるものではなく、事務処理用の通信システムであっても良い。要は、リング型の物理トポロジに接続された複数のノード装置を含み、データフレームが各ノード装置を経由して周回する第1のデータ伝送経路と逆向きに周回する第2のデータ伝送経路とを形成する場合と、第1のデータ伝送経路に第2のデータ伝送経路を接続して1つのデータ伝送経路を形成する場合とが動的に切り換わる通信システムであって、複数のノード装置のうちの1つがマスタとなる一方、他のノード装置はマスタからの指示に応じた処理を実行するスレーブとなって各ノード装置が有するタイマを同期させる通信システムであれば、本発明を適用可能である。具体的には、通信システムにおけるデータ伝送経路の変化に応じてタイマ同期のための通信制御をマスタに切り換えさせれば良い。また、上記実施形態では、通信システムに5台のノード装置が含まれる場合について説明したが、通信システムに含まれるノード装置の数は2〜4であっても良く、また、6以上であっても良い。
(2)上記第1実施形態では、本発明の特徴を顕著に示すラッチ指示処理、タイマ値収集処理、遅延時間計算処理およびマスタタイマ配布処理をソフトウェアにより実現したが、ラッチ指示処理を実行するラッチ指示手段、タイマ値収集処理を実行する収集手段、遅延時間計算処理を実行する算出手段、およびマスタタイマ配布処理を実行する同期制御手段の各手段をASICなどの電気回路により構成し、これら各手段を組み合わせてノード装置10を構成しても良い。第2実施形態或いは第3実施形態のノード装置10についても同様である。例えば、上記第2実施形態のノード装置10であれば、上記検知処理を実行する検知手段を電気回路等のハードウェアで構成し、当該検知手段を、ラッチ指示手段、収集手段、算出手段、および同期制御手段と組み合わせて当該ノード装置10を構成すれば良い。
(3)上記各実施形態では、本発明の一実施形態による通信システムについて説明したが、この通信システムに含まれるノード装置10を単体、すなわちマスタ或いはスレーブ単体で提供(製造・販売)しても良い。また、CPUなどの一般的なコンピュータを上記ノード装置10の処理部として機能させるプログラムを提供する態様であっても良い。
1…通信システム、10,10A,10B、10C,10D,10E…ノード装置、NW1,NW2…ネットワーク接続部、NW1−in,NW2−in…入力端子、NW1−out,NW2−out…出力端子、32…タイマ、33,34…ラッチ回路、35…処理部。

Claims (8)

  1. リング型の物理トポロジに接続された複数のノード装置を経由してデータフレームが周回する第1のデータ伝送経路と逆向きに周回する第2のデータ伝送経路とを形成する場合と、前記第1のデータ伝送経路に前記第2のデータ伝送経路を接続して1つのデータ伝送経路を形成する場合とを動的に切り換え、
    前記複数のノード装置のうちの1つがマスタとなる一方、他のノード装置は前記マスタからの指示に応じた処理を実行するスレーブとなって各ノード装置が有するタイマを同期させる際に、前記マスタはデータ伝送経路の変化に応じてタイマ同期のための通信制御を切り換え、
    前記マスタは、
    タイマ値のラッチを各ノード装置に指示するラッチ指示メッセージを前記第1のデータ伝送経路に沿って送信し、当該ラッチ指示メッセージが前記第1のデータ伝送経路のみを経由して戻ってきた場合には当該ラッチ指示メッセージを前記第2のデータ伝送経路へ転送するラッチ指示手段と、
    前記ラッチ指示メッセージを受信する毎にスレーブにおいてラッチされたタイマ値を各スレーブから収集する収集手段と、
    前記各スレーブについて、自装置との間の伝送遅延時間を前記収集手段により当該スレーブから収集されたタイマ値から算出する算出手段と、
    前記各スレーブに対して、マスタにおける現在のタイマ値と前記算出手段により算出された当該スレーブについての伝送遅延時間とを通知してタイマ値の補正を指示する同期制御手段と、
    を有し、
    前記ラッチ指示メッセージは、タイマ値のラッチが行われたか否かを示すタイマ値有効フラグをノード装置毎およびデータ伝送経路毎に有し、
    前記ラッチ指示手段は、前記第1のデータ伝送経路から戻ってきたラッチ指示メッセージにおいて、当該第1のデータ伝送経路に対応するタイマ値有効フラグのみがセットされていた場合に、当該ラッチ指示メッセージは前記第1のデータ伝送経路のみを経由したと判定する
    ことを特徴とする通信システム。
  2. 前記マスタは、
    データ伝送経路の変化を検知する検知手段を備え、
    データ伝送経路の変化を前記検知手段により検知したことを契機として前記ラッチ指示手段によるラッチ指示メッセージの送信を行う
    ことを特徴とする請求項1に記載の通信システム。
  3. 前記収集手段により収集されたタイマ値または当該タイマ値より算出されるノード装置間遅延時間を記憶する記憶手段を備え、
    前記算出手段は、
    前記各スレーブについての自装置との間の伝送遅延時間を、前記記憶手段の記憶内容を用いて算出する
    ことを特徴とする請求項1に記載の通信システム。
  4. 前記マスタは、
    データ伝送経路の変化を検知する検知手段を備え、
    データ伝送経路の変化を前記検知手段により検知した場合には、変化後のデータ伝送経路における各スレーブについての自装置との間の伝送遅延時間を、前記記憶手段の記憶内容を用いて前記算出手段により算出し、前記同期制御手段により通知する
    ことを特徴とする請求項3に記載の通信システム。
  5. 前記検知手段は前記物理トポロジの切断を検知する手段であり、
    前記物理トポロジに切断が発生していない場合には前記第1および前記第2のデータ伝送経路が形成され、前記物理トポロジに切断が発生した場合にはその切断箇所を挟む各ノード装置において前記第1のデータ伝送経路に前記第2のデータ伝送経路が接続される
    ことを特徴とする請求項2または請求項4に記載の通信システム。
  6. 前記検知手段は前記物理トポロジの回復を検知し、
    前記同期制御手段は、前記検知手段により前記物理トポロジの回復が検知された場合には、前記マスタにおける現在のタイマ値のみを前記各スレーブへ通知してタイマ値の補正を指示し、
    前記各スレーブは、
    前記物理トポロジに切断が発生していない状況下で前記マスタから通知された伝送遅延時間を保持する保持手段を備え、前記マスタにおける現在のタイマ値のみを通知された場合には前記保持手段に保持されている伝送遅延時間と当該タイマ値とを用いて自装置のタイマのタイマ値を補正する
    ことを特徴とする請求項5に記載の通信システム。
  7. データフレームが各ノード装置を経由して周回する第1のデータ伝送経路と逆向きに周回する第2のデータ伝送経路とを形成する場合と、前記第1のデータ伝送経路に前記第2のデータ伝送経路を接続して1つのデータ伝送経路を形成する場合と、を動的に切り換える通信システムを1または複数の他のノード装置とともに構成するノード装置であって、
    タイマ値のラッチを前記1または複数の他のノード装置の各々に指示するラッチ指示メッセージを前記第1のデータ伝送経路に沿って送信し、当該ラッチ指示メッセージが前記第1のデータ伝送経路のみを経由して戻ってきた場合には当該ラッチ指示メッセージを前記第2のデータ伝送経路へ転送するラッチ指示手段と、
    前記1または複数の他のノード装置の各々において前記ラッチ指示メッセージを受信する毎にラッチされたタイマ値を収集する収集手段と、
    前記1または複数の他のノード装置の各々について、自装置との間の伝送遅延時間を前記収集手段により当該他のノード装置から収集されたタイマ値から算出する算出手段と、
    前記1または複数の他のノード装置の各々について、自装置における現在のタイマ値と前記算出手段により算出された当該他のノード装置についての伝送遅延時間とを通知してタイマ値の補正を指示する同期制御手段と、
    を有し、
    前記ラッチ指示メッセージは、タイマ値のラッチが行われたか否かを示すタイマ値有効フラグをノード装置毎およびデータ伝送経路毎に有し、
    前記ラッチ指示手段は、前記第1のデータ伝送経路から戻ってきたラッチ指示メッセージにおいて、当該第1のデータ伝送経路に対応するタイマ値有効フラグのみがセットされていた場合に、当該ラッチ指示メッセージは前記第1のデータ伝送経路のみを経由したと判定する
    を有することを特徴とするノード装置。
  8. コンピュータを、
    データフレームが各ノード装置を経由して周回する第1のデータ伝送経路と逆向きに周回する第2のデータ伝送経路とを形成する場合と、前記第1のデータ伝送経路に前記第2のデータ伝送経路を接続して1つのデータ伝送経路を形成する場合と、を動的に切り換える通信システムを1または複数の他のノード装置とともに構成するノード装置として機能させるプログラムであって、
    前記コンピュータを、
    タイマ値のラッチを前記1または複数の他のノード装置の各々に指示するラッチ指示メッセージを前記第1のデータ伝送経路に沿って送信し、当該ラッチ指示メッセージが前記第1のデータ伝送経路のみを経由して戻ってきた場合には当該ラッチ指示メッセージを前記第2のデータ伝送経路へ転送するラッチ指示手段と、
    前記1または複数の他のノード装置の各々において前記ラッチ指示メッセージを受信する毎にラッチされたタイマ値を収集する収集手段と、
    前記1または複数の他のノード装置の各々について、自装置との間の伝送遅延時間を前記収集手段により当該他のノード装置から収集されたタイマ値から算出する算出手段と、
    前記1または複数の他のノード装置の各々について、自装置における現在のタイマ値と前記算出手段により算出された当該他のノード装置についての伝送遅延時間とを通知してタイマ値の補正を指示する同期制御手段と、して機能させ、
    前記ラッチ指示メッセージは、タイマ値のラッチが行われたか否かを示すタイマ値有効フラグをノード装置毎およびデータ伝送経路毎に有し、
    前記ラッチ指示手段は、前記第1のデータ伝送経路から戻ってきたラッチ指示メッセージにおいて、当該第1のデータ伝送経路に対応するタイマ値有効フラグのみがセットされていた場合に、当該ラッチ指示メッセージは前記第1のデータ伝送経路のみを経由したと判定する
    ことを特徴とするプログラム。
JP2016120596A 2016-02-02 2016-06-17 通信システム、ノード装置、およびプログラム Active JP6729040B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016018143 2016-02-02
JP2016018143 2016-02-02

Publications (2)

Publication Number Publication Date
JP2017139723A JP2017139723A (ja) 2017-08-10
JP6729040B2 true JP6729040B2 (ja) 2020-07-22

Family

ID=59566183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016120596A Active JP6729040B2 (ja) 2016-02-02 2016-06-17 通信システム、ノード装置、およびプログラム

Country Status (1)

Country Link
JP (1) JP6729040B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6992346B2 (ja) * 2017-09-14 2022-01-13 富士電機株式会社 ネットワークシステム
WO2021117149A1 (ja) * 2019-12-11 2021-06-17 学校法人 千葉工業大学 デジタル通信システムの設計装置、およびその設計方法
KR102571051B1 (ko) * 2020-11-05 2023-08-28 한국전자통신연구원 셀-탈피 무선 네트워크의 협력 전송을 위한 캘리브레이션 방법 및 이를 위한 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5377663B2 (ja) * 2009-11-11 2013-12-25 三菱電機株式会社 通信システム、通信装置および時刻同期方法
JP5527086B2 (ja) * 2010-07-29 2014-06-18 富士電機株式会社 ネットワークシステム
JP5891086B2 (ja) * 2012-03-28 2016-03-22 株式会社日立産機システム 通信制御システム、通信制御装置、および被制御装置

Also Published As

Publication number Publication date
JP2017139723A (ja) 2017-08-10

Similar Documents

Publication Publication Date Title
JP6125652B2 (ja) 時間同期方法及び装置
JP6147467B2 (ja) フレーム伝送装置及び同期方法
CN107204928B (zh) 更新时钟同步拓扑的方法、确定时钟同步路径的方法及设备
JP4682887B2 (ja) 故障復旧方法およびノードならびにネットワーク
JP2017098694A (ja) 通信装置,及びその時刻同期方法
WO2013010417A1 (zh) 一种时钟源的选择方法
JP2009065579A (ja) 時刻同期システム、時刻同期方法、ノード及びプログラム
JP6729040B2 (ja) 通信システム、ノード装置、およびプログラム
CN102833061A (zh) 基于无缝冗余环网的提高时钟精度的方法及节点
JP5450656B2 (ja) 通信装置及び時刻同期システム
JP6275323B2 (ja) 中継装置および通信システム
JP2009303092A (ja) ネットワーク装置および回線切替方法
US20120026891A1 (en) Communication network management system and method and management computer
US20160308753A1 (en) Packet network linear protection systems and methods in a dual home or multi-home configuration
JP5120097B2 (ja) 時間同期システムおよび時間同期装置
JP5527086B2 (ja) ネットワークシステム
JP5176623B2 (ja) イーサネットの伝送方法、伝送装置およびシステム
JP2016119616A (ja) リング型ネットワークシステム、そのマスタノード
US9565107B2 (en) Packet relay system, packet relay method, and packet relay device
JP5504706B2 (ja) ネットワークシステム及びネットワークシステムの同期方法
JP6992346B2 (ja) ネットワークシステム
JP5488246B2 (ja) ネットワークシステム及びネットワークシステムの同期方法
JP5482534B2 (ja) ネットワークシステム
US8750134B2 (en) Communication network management system and method and management computer
JP5506714B2 (ja) ネットワーク接続装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200417

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200602

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200615

R150 Certificate of patent or registration of utility model

Ref document number: 6729040

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250