JP6499018B2 - 通信装置、通信システム、推定方法及びプログラム - Google Patents

通信装置、通信システム、推定方法及びプログラム Download PDF

Info

Publication number
JP6499018B2
JP6499018B2 JP2015115090A JP2015115090A JP6499018B2 JP 6499018 B2 JP6499018 B2 JP 6499018B2 JP 2015115090 A JP2015115090 A JP 2015115090A JP 2015115090 A JP2015115090 A JP 2015115090A JP 6499018 B2 JP6499018 B2 JP 6499018B2
Authority
JP
Japan
Prior art keywords
communication
time
unit
period
communication device
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
JP2015115090A
Other languages
English (en)
Other versions
JP2017005382A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2015115090A priority Critical patent/JP6499018B2/ja
Priority to US14/959,513 priority patent/US20160359609A1/en
Publication of JP2017005382A publication Critical patent/JP2017005382A/ja
Application granted granted Critical
Publication of JP6499018B2 publication Critical patent/JP6499018B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0647Synchronisation among TDM nodes
    • H04J3/065Synchronisation among TDM nodes using timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Electric Clocks (AREA)

Description

本発明の実施形態は、通信装置、通信システム、推定方法及びプログラムに関する。
従来から、ネットワーク内で第1種類のデータの通信と当該第1種類以外のデータの通信とが競合してしまうことを回避するため、当該第1種類のデータの通信に先立ち当該第1種類以外のデータの通信を禁止させる技術が知られている。
特開平09−93275号公報
しかしながら、上述したような従来技術では、第1種類以外のデータの通信が禁止されるため、通信が禁止されるデータが周期的な通信が必要となるデータである場合、周期的な通信が保障されなくなってしまう。
本発明が解決しようとする課題は、ネットワーク内での通信の競合を回避しつつ、データの周期的な通信を保障することができる通信装置、通信システム、推定方法及びプログラムを提供することである。
実施形態の通信装置は、通信部と、推定部と、判定部と、アプリ部と、送信部と、を備える。通信部は、第1周期毎にネットワークを介して他の通信装置と通信する。推定部は、前記第1周期毎に、前記通信装置及び前記他の通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記通信装置及び前記他の通信装置間の通信遅延時間を推定する。判定部は、前記通信遅延時間が所定精度を満たすか否かを判定する。アプリ部は、第2周期毎にアプリケーションデータを生成する。送信部は、前記第2周期毎に当該第2周期内の前記判定部の判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する。
第1実施形態の通信システムの構成例を示す図。 第1実施形態のスレーブ装置の構成例を示す図。 第1実施形態のマスター装置の構成例を示す図。 第1実施形態のアプリデータ生成処理例を示すフローチャート。 第1実施形態のアプリデータ送信処理例を示すフローチャート。 第1実施形態の同期処理例を示すシーケンス図。 第1実施形態の再設定処理例を示すフローチャート。 第2実施形態の通信システムの構成例を示す図。 第2実施形態のスレーブ装置の構成例を示す図。 第2実施形態のマスター装置の構成例を示す図。 第2実施形態の通信装置の構成例を示す図。 第2実施形態の管理装置の構成例を示す図。 第2実施形態の管理装置の処理例を示すフローチャート。 第2実施形態の再設定処理例を示すフローチャート。 第3実施形態の通信システムの構成例を示す図。 第3実施形態の通信装置の構成例を示す図。 第3実施形態の転送装置の構成例を示す図。 第3実施形態の通信装置の処理例を示すフローチャート。 第3実施形態の転送装置の処理例を示すフローチャート。 各実施形態の各装置のハードウェア構成例を示す図。
以下、添付図面を参照しながら、実施形態を詳細に説明する。
(第1実施形態)
図1は、第1実施形態の通信システム101の構成の一例を示す図である。図1に示すように、通信システム101は、スレーブ装置110(通信装置及び第1通信装置の一例)と、マスター装置120(他の通信装置及び第2通信装置の一例)と、を備える。
スレーブ装置110とマスター装置120とは、ネットワーク102を介して接続されている。ネットワーク102は、例えば、スイッチ装置などの通信を中継する1以上のネットワーク装置により実現できる。
マスター装置120は、時刻同期用の基準時刻を計時するものであり、時刻同期元となるサーバ装置などのコンピュータである。スレーブ装置110は、ネットワーク102を介してマスター装置120との間で時刻同期用の同期データを通信(送受信)することで、マスター装置120により計時された基準時刻を取得し、取得した基準時刻を用いて、自身のローカル時刻を同期する。スレーブ装置110は、例えば、産業用機器などが挙げられるが、これに限定されるものではない。
なお、通信システム101は、スレーブ装置110及びマスター装置120以外のネットワーク102に接続される通信装置を含んでいてもよい。
図2は、第1実施形態のスレーブ装置110の構成の一例を示す図である。図2に示すように、スレーブ装置110は、クロック部111と、アプリ部112と、送信部113と、通信部114(第1通信部の一例)と、推定部115と、判定部116と、記憶部117と、同期部118と、を備える。
クロック部111、アプリ部112、送信部113、通信部114、推定部115、判定部116、及び同期部118は、例えば、CPU(Central Processing Unit)などの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。記憶部117は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、メモリカード、光ディスク、RAM(Random Access Memory)、及びROM(Read Only Memory)などの磁気的、光学的、又は電気的に記憶可能な記憶装置により実現できる。
クロック部111は、スレーブ装置110内の時刻であるローカル時刻を計時する。ここで、クロック部111は、自身が計時するローカル時刻を用いて、第1周期を計時する第1周期タイマー、第2周期を計時する第2周期タイマー、及び第2周期内で設定時間を計時する設定時間タイマー、としても機能する。
第1周期は、スレーブ装置110がマスター装置120との間で行う時刻同期の同期周期であり、第2周期は、アプリ部112が生成するアプリケーションデータ(以下、「アプリデータ」と称する)の送信周期であり、第1周期と第2周期とは、異なる周期であっても同一周期であってもよい。設定時間については後述する。
通信部114は、第1周期タイマーにより第1周期が計時される毎に、ネットワーク102を介してマスター装置120と通信する。具体的には、通信部114は、第1周期毎に、ネットワーク102を介してマスター装置120との間で時刻同期用の同期データの同期フレームを通信する。
例えば、通信部114は、第1周期毎に、クロック部111により計時されたローカル時刻(第1周期が計時された時点でのローカル時刻)を示すタイムスタンプt1を含む第1同期フレームを、ネットワーク102を介してマスター装置120に送信する。
その後、通信部114は、ネットワーク102を介してマスター装置120から第2同期フレームを受信し、第2同期フレームを受信した際にクロック部111により計時されたローカル時刻を示すタイムスタンプをタイムスタンプt4とする。
第2同期フレームは、マスター装置120により第1同期フレームが受信された基準時刻を示すタイムスタンプt2及びマスター装置120が第2同期フレームを送信した基準時刻を示すタイムスタンプt3(第1タイムスタンプの一例)を含む。なお、基準時刻は、マスター装置120により計時される時刻である。
推定部115は、第1周期毎に、スレーブ装置110及びマスター装置120間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、スレーブ装置110及びマスター装置120間の通信遅延時間を推定する。
ここで、通信遅延時間とは、スレーブ装置110がマスター装置120により計時された基準時刻で自身のローカル時刻を同期する際に、マスター装置120がスレーブ装置110へ基準時刻を送信することに伴い、基準時刻が遅延する分の時間である。通信遅延時間は、例えば、マスター装置120が第2同期フレームを送信してからスレーブ装置110が受信するまでの復路通信時間が該当する。
但し、マスター装置120が第2同期フレームを送信する時刻は、マスター装置120の基準時刻で計時され、スレーブ装置110が第2同期フレームを受信する時刻は、スレーブ装置110のローカル時刻で計時され、この時点では、基準時刻とローカル時刻との誤差が分からないため、通信遅延時間を直接計測することはできない。
このため第1実施形態では、スレーブ装置110が第1同期フレームを送信してからマスター装置120が受信するまでの往路通信時間、及びマスター装置120が第2同期フレームを送信してからスレーブ装置110が受信するまでの復路通信時間の合計である往復通信時間の1/2を通信遅延時間に推定する推定手法を採用する。
このように、往路通信時間と復路通信時間とを合算すれば、基準時刻とローカル時刻との誤差が相殺されるため、基準時刻とローカル時刻との誤差の影響を受けずに通信遅延時間を推定できる。
つまり第1実施形態では、推定部115は、算出した往路通信時間及び復路通信時間の合計である往復通信時間の1/2を通信遅延時間に推定する。例えば、推定部115は、数式(1)を用いて、通信遅延時間を推定する。
通信遅延時間={(t4‐t3)+(t2‐t1)}/2 …(1)
但し、通信遅延時間を上述したように推定する場合、往路通信時間と復路通信時間とが一致しなければ、通信遅延時間を正しく推定することができない。
しかしながら、同期フレームを中継するネットワーク102(詳細には、1以上のネットワーク装置)では、同期フレームがアプリフレームなどの同期フレーム以外の通信フレームと競合すると、同期フレームをキューイングする時間に揺らぎが生じるため、同期フレームの往路通信時間と復路通信時間とが一致しない事態が生じ得る。
つまり、往路通信時間及び復路通信時間とも時間が短いほどキューイング時間に揺らぎが生じていないことになり、往路通信時間と復路通信時間との差も小さくなるため、通信遅延時間を正しく推定するためには、いずれも時間が短い往路通信時間及び復路通信時間を用いることが好ましい。
このため、推定部115は、複数の往路通信時間及び複数の復路通信時間から最小の往路通信時間及び最小の復路通信時間を抽出し、抽出した最小の往路通信時間及び最小の復路通信時間の合計である往復通信時間の1/2を通信遅延時間に推定するようにしてもよい。
この場合、推定部115は、通信部114からタイムスタンプt1〜タイムスタンプt4の組を取得する。また、推定部115が過去に通信部114から取得した複数のタイムスタンプt1〜タイムスタンプt4の組を取得する。過去に通信部114から取得した複数のタイムスタンプt1〜タイムスタンプt4の組は、例えば、記憶部117に記憶しておけばよい。
そして、取得されたタイムスタンプt1〜タイムスタンプt4の組の数をN(Nは2以上の整数)とすると、推定部115は、数式(2)を用いて、通信遅延時間を推定する。
通信遅延時間={min(t4‐t3)+min(t2‐t1)}/2 …(2)
i及びjは、変数であり、1〜Nの間の自然数を取り得る。min(t4‐t3)は、最小の復路通信時間を返す関数であり、min(t2‐t1)は、最小の往路通信時間を返す関数である。
同期部118は、推定部115により推定された通信遅延時間とタイムスタンプt3とに基づいて、時刻同期を行う。
具体的には、同期部118は、推定部115により推定された通信遅延時間、タイムスタンプt3、及びタイムスタンプt4を用いて、マスター装置120により計時される基準時刻とクロック部111により計時されるローカル時刻とのオフセット(時刻差)を算出し、算出したオフセットを用いて、クロック部111に、計時するローカル時刻を補正させる。
例えば、同期部118は、数式(3)を用いて、オフセットを算出し、算出したオフセットをクロック部111に設定させることで、計時するローカル時刻を補正させる。これにより、クロック部111が計時するローカル時刻がオフセット分ずれ、マスター装置120により計時される基準時刻と同期される。
オフセット=t4−{t3+通信遅延時間} …(3)
なお、推定部115が数式(2)を用いて通信遅延時間を推定した場合、同期部118は、数式(4)を用いて、オフセットを算出し、算出したオフセットをクロック部111に設定させることで、計時するローカル時刻を補正させる。
オフセット=t4argmin(t4i‐t3i)−{t3argmin(t4i‐t3i)+通信遅延時間} …(4)
argmin(t4‐t3)は、t4‐t3が最小となる場合の変数iを返す関数である。つまり、数式(4)では、推定部115により推定された通信遅延時間、並びに最小の復路通信時間となる場合のタイムスタンプt3及びタイムスタンプt4を用いて、マスター装置120により計時される基準時刻とクロック部111により計時されるローカル時刻とのオフセットを算出する。
判定部116は、推定部115により推定された通信遅延時間が所定精度を満たすか否かを判定する。
例えば、判定部116は、推定部115から通信遅延時間を取得する。また、記憶部117には、判定部116が過去に推定部115から取得した通信遅延時間が複数記憶されており、判定部116は、記憶部117から最小の通信遅延時間を取得する。
そして判定部116は、記憶部117から取得した最小の通信遅延時間に予め定められた時間を加算し、推定部115から取得した通信遅延時間が、最小の通信遅延時間に予め定められた時間を加算した時間よりも短いか否かを判定する。ここで、最小の通信遅延時間に予め定められた時間を加算するのは、判定にある程度の幅を持たせるためである。
判定の結果、判定部116は、推定部115から取得した通信遅延時間の方が短ければ、所定精度を満たすと判定し、推定部115から取得した通信遅延時間の方が短くなければ、所定精度を満たさないと判定する。
なお、判定部116は、通信遅延時間を判定すると、推定部115から取得した通信遅延時間を記憶部117に記憶する。
ここで、クロック部111の設定時間について説明する。クロック部111は、判定部116により通信遅延時間が所定精度を満たさないと判定された場合、設定時間を再設定する。設定時間は、第2周期未満の時間であり、例えば、クロック部111が、乱数値などで決定してもよいし、第2周期内で所定分の位相をずらすことで決定してもよい。なお、クロック部111は、判定部116により通信遅延時間が所定精度を満たすと判定された場合、設定時間を再設定せず、前回の設定時間をそのまま使用する。
このため、設定時間は、判定部116により通信遅延時間が所定精度を満たすと判定されている間は変化せず、判定部116により通信遅延時間が所定精度を満たさないと判定されると変化する。
設定時間タイマーは、このようにして設定される設定時間を計時する。具体的には、設定時間タイマーは、第2周期タイマーにより第2周期が計時されると、設定時間の計時を開始し、第2周期内で設定時間を計時する。
アプリ部112は、第2周期タイマーにより第2周期が計時される毎に、アプリデータを生成する。
第1実施形態では、アプリ部112が電気量を計測するアプリケーションである場合を例に取り説明するが、これに限定されるものではない。この場合、アプリ部112は、第2周期毎に、電気量を計測し、計測した電気量に、クロック部111により計時されたローカル時刻(第2周期が計時された時点でのローカル時刻であり、アプリデータ生成時のローカル時刻)を示すタイムスタンプtα(第2タイムスタンプの一例)を付加(打刻)し、アプリデータとする。
送信部113は、第2周期毎に当該第2周期内の判定部116の判定結果に応じたタイミングで、アプリ部112により生成されたアプリデータをネットワーク102に送信する。具体的には、送信部113は、設定時間タイマーにより設定時間が計時されると、アプリ部112により生成されたアプリデータのアプリフレームをネットワーク102に送信する。
なお、判定部116により通信遅延時間が所定精度を満たさないと判定された場合、設定時間は再設定されているため、送信部113は、第2周期内の前回とは異なるタイミングでアプリフレームをネットワーク102に送信する。一方、判定部116により通信遅延時間が所定精度を満たすと判定された場合、設定時間は再設定されていないため、送信部113は、第2周期内の前回と同一のタイミングでアプリフレームをネットワーク102に送信する。
図3は、第1実施形態のマスター装置120の構成の一例を示す図である。図3に示すように、マスター装置120は、クロック部121と、アプリ部122と、送信部123と、通信部124(第2通信部の一例)と、を備える。
クロック部121、アプリ部122、送信部123、及び通信部124は、例えば、CPUなどの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ICなどのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。
クロック部121は、マスター装置120内の時刻である基準時刻を計時する。ここで、クロック部121は、自身が計時する基準時刻を用いて、第3周期を計時する第3周期タイマーとしても機能する。
第3周期は、アプリ部122が生成するアプリデータの送信周期である。第1実施形態では、第3周期は、第2周期と同一周期であるものとするが、異なる周期であってもよい。
アプリ部122は、第3周期タイマーにより第3周期が計時される毎に、アプリデータを生成する。
第1実施形態では、アプリ部122が電気量を計測するアプリケーションである場合を例に取り説明するが、これに限定されるものではない。この場合、アプリ部122は、第3周期毎に、電気量を計測し、計測した電気量に、クロック部121により計時された基準時刻(第3周期が計時された時点での基準時刻であり、アプリデータ生成時の基準時刻)を示すタイムスタンプtβを付加(打刻)し、アプリデータとする。
送信部123は、アプリ部122により生成されたアプリデータをネットワーク102に送信する。
通信部124は、第1周期毎に、ネットワーク102を介してスレーブ装置110と通信する。具体的には、通信部124は、第1周期毎に、ネットワーク102を介してスレーブ装置110との間で時刻同期用の同期データの同期フレームを通信する。
例えば、通信部124は、第1周期毎に、スレーブ装置110から、ネットワーク102を介して、タイムスタンプt1を含む第1同期フレームを受信し、第1同期フレームを受信した際にクロック部121により計時された基準時刻を示すタイムスタンプをタイムスタンプt2とする。
そして通信部124は、第2同期フレームを送信する際にクロック部121により計時された基準時刻を示すタイムスタンプをタイムスタンプt3とし、タイムスタンプt2及びタイムスタンプt3を含む第2同期フレームを、ネットワーク102を介してスレーブ装置110に送信する。
図4は、第1実施形態のスレーブ装置110で行われるアプリデータ生成処理の手順の流れの一例を示すフローチャートである。
アプリ部112は、第2周期タイマーにより第2周期が計時(計測)されるまで待機する(ステップS101でNo)。
そしてアプリ部112は、第2周期タイマーにより第2周期が計時されると(ステップS101でYes)、電気量を計測し、計測した電気量に、クロック部111により計時されたローカル時刻を示すタイムスタンプtαを付加(打刻)し、アプリデータを生成する(ステップS103)。そして、ステップS101へ戻る。
図5は、第1実施形態のスレーブ装置110で行われるアプリデータ送信処理の手順の流れの一例を示すフローチャートである。
設定時間タイマーは、第2周期タイマーにより第2周期が計時(計測)されるまで待機し(ステップS201でNo)、第2周期タイマーにより第2周期が計時されると(ステップS201でYes)、設定時間の計時を開始する(ステップS203)。
そして送信部113は、設定時間タイマーにより設定時間が計時されるまで待機し(ステップS205でNo)、設定時間タイマーにより設定時間が計時されると(ステップS205でYes)、アプリ部112により生成されたアプリデータのアプリフレームをネットワーク102に送信する(ステップS207)。そして、ステップS201へ戻る。
図6は、第1実施形態の通信システム101で行われる同期処理の手順の流れの一例を示すシーケンス図である。
まず、スレーブ装置110の通信部114は、第1周期タイマーにより第1周期が計時されると、クロック部111により計時されたローカル時刻を示すタイムスタンプt1を含む第1同期フレームを、ネットワーク102を介してマスター装置120に送信する(ステップS301)。
続いて、マスター装置120の通信部124は、スレーブ装置110からネットワーク102を介して第1同期フレームを受信し、第1同期フレームを受信した際にクロック部121により計時された基準時刻を示すタイムスタンプt2を第2同期フレームに打刻する(ステップS303)。
続いて、通信部124は、第2同期フレームを送信する際にクロック部121により計時された基準時刻を示すタイムスタンプt3を第2同期フレームに打刻し(ステップS305)、タイムスタンプt2及びタイムスタンプt3を含む第2同期フレームを、ネットワーク102を介してスレーブ装置110に送信する(ステップS307)。
続いて、通信部114は、マスター装置120からネットワーク102を介して第2同期フレームを受信し、スレーブ装置110の推定部115は、通信部114から、最新の往復通信時間として、最新のタイムスタンプt1〜タイムスタンプt4の組を取得する(ステップS309)。
続いて、推定部115は、数式(1)を用いて、通信遅延時間を算出(推定)する(ステップS311)。
続いて、判定部116及びクロック部111は、設定時間の再設定処理を行う(ステップS313)。再設定処理の詳細については、後述する。
続いて、同期部118は、数式(3)を用いて、マスター装置120により計時される基準時刻とクロック部111により計時されるローカル時刻とのオフセットを算出し(ステップS315)、算出したオフセットを用いて、クロック部111に、計時するローカル時刻を補正させる(ステップS317)。
図7は、第1実施形態のスレーブ装置110で行われる再設定処理の手順の流れの一例を示すフローチャートである。
まず、判定部116は、推定部115から通信遅延時間を取得するとともに、記憶部117から最小の通信遅延時間を取得し、最小の通信遅延時間に予め定められた時間Xを加算し、推定部115から取得した通信遅延時間が、最小の通信遅延時間に予め定められた時間Xを加算した時間よりも短いか否かを判定する(ステップS401)。
判定の結果、判定部116は、推定部115から取得した通信遅延時間の方が短ければ(ステップS401でNo)、所定精度を満たすと判定し、クロック部111は、設定時間を再設定しない。
一方、判定の結果、判定部116は、推定部115から取得した通信遅延時間の方が短くなければ(ステップS401でYes)、所定精度を満たさないと判定し、設定時間を再設定する(ステップS403)。
以上のように第1実施形態によれば、通信遅延時間が所定の精度を満たさなければ、アプリフレームの送信タイミングが第2周期内で変更され、通信遅延時間が所定の精度を満たせば、アプリフレームの送信タイミングが第2周期内で変更されない。
つまり、第1実施形態によれば、通信遅延時間が所定の精度を満たさず、ネットワーク102上でアプリフレームと同期フレームとの競合が発生し易く、同期フレームのキューイング時間に揺らぎが生じ易い場合には、アプリフレームの送信タイミングが変更され、通信遅延時間が所定の精度を満たし、ネットワーク102上でアプリフレームと同期フレームとの競合が発生しにくく、同期フレームのキューイング時間に揺らぎが生じにくい場合には、アプリフレームの送信タイミングが固定される。
従って第1実施形態によれば、時間が経過するほど通信遅延時間が所定の精度を満たすことが期待でき、このような推定精度の高い通信遅延時間を用いて時刻同期を行うため、時刻同期精度の向上も期待できる。
つまり、第1実施形態によれば、ネットワーク102内での通信の競合を回避して時刻同期を行うことが期待できるため、時刻同期精度の向上が期待できるとともに、アプリデータの周期的な通信も保障することができる。
(第2実施形態)
第2実施形態では、管理装置が集約して通信遅延時間が所定の精度を満たすか否かを判定する例について説明する。以下では、第1実施形態との相違点の説明を主に行い、第1実施形態と同様の機能を有する構成要素については、第1実施形態と同様の名称・符号を付し、その説明を省略する。
図8は、第2実施形態の通信システム201の構成の一例を示す図であり、スレーブ装置210−1、210−2、マスター装置220、通信装置230、及び管理装置250が第1実施形態と相違する。
以下の説明では、スレーブ装置210−1、210−2を各々区別する必要がない場合は、単にスレーブ装置210と称する場合がある。また、図8に示す例では、スレーブ装置210の台数が2台、通信装置230の台数が1台である場合を例示しているが、各装置の台数はこれに限定されるものではない。
図9は、第2実施形態のスレーブ装置210の構成の一例を示す図である。図9に示すように、スレーブ装置210は、通信部214及び推定部215が第1実施形態と相違する。なお第2実施形態では、通信部214が第1通信部及び第2通信部の一例となり、アプリ部112が第1アプリ部の一例となり、アプリ部112が生成するアプリデータが第1アプリケーションデータの一例となり、送信部113が第1送信部の一例となる。
通信部214は、推定部215により通信遅延時間が推定されると、推定部215から当該通信遅延時間を取得し、管理装置250へ送信する。また通信部214は、管理装置250から再設定命令を受信する。
クロック部111は、通信部214により再設定命令が受信されると、設定時間を再設定し、通信部214により再設定命令が受信されなければ、設定時間を再設定せず、前回の設定時間をそのまま使用する。
なお、通信部214により再設定命令が受信された場合、設定時間は再設定されているため、送信部113は、第2周期内の前回とは異なるタイミングでアプリフレームをネットワーク102に送信する。一方、通信部214により再設定命令が受信されなかった場合、設定時間は再設定されていないため、送信部113は、第2周期内の前回と同一のタイミングでアプリフレームをネットワーク102に送信する。
図10は、第2実施形態のマスター装置220の構成の一例を示す図である。図10に示すように、マスター装置220は、クロック部221、送信部223、及び受信部225が第1実施形態と相違する。なお第2実施形態では、アプリ部122が第2アプリ部の一例となり、アプリ部122が生成するアプリデータが第2アプリケーションデータの一例となり、送信部223が第3送信部の一例となり、通信部124が第3通信部の一例となり、受信部225が第2受信部の一例となる。
受信部225は、管理装置250から再設定命令を受信する。
クロック部221は、自身が計時する基準時刻を用いて、第3周期内で設定時間を計時する設定時間タイマーとしても機能する。クロック部221は、受信部225により再設定命令が受信されると、設定時間を再設定し、受信部225により再設定命令が受信されなければ、設定時間を再設定せず、前回の設定時間をそのまま使用する。設定時間は、第3周期未満の時間であり、例えば、クロック部221が、乱数値などで決定してもよいし、第3周期内で所定分の位相をずらすことで決定してもよい。
設定時間タイマーは、このようにして設定される設定時間を計時する。具体的には、設定時間タイマーは、第3周期タイマーにより第3周期が計時されると、設定時間の計時を開始し、第3周期内で設定時間を計時する。
送信部223は、第3周期毎に当該第3周期内の再設定命令の受信の有無に応じたタイミングで、アプリ部122により生成されたアプリデータをネットワーク102に送信する。具体的には、送信部223は、設定時間タイマーにより設定時間が計時されると、アプリ部122により生成されたアプリデータのアプリフレームをネットワーク102に送信する。
なお、受信部225により再設定命令が受信された場合、設定時間は再設定されているため、送信部223は、第3周期内の前回とは異なるタイミングでアプリフレームをネットワーク102に送信する。一方、受信部225により再設定命令が受信されなかった場合、設定時間は再設定されていないため、送信部223は、第3周期内の前回と同一のタイミングでアプリフレームをネットワーク102に送信する。
図11は、第2実施形態の通信装置230の構成の一例を示す図である。図11に示すように、通信装置230は、クロック部231と、アプリ部232(第3アプリ部の一例)と、送信部233(第4送信部の一例)と、受信部234(第3受信部の一例)と、を備える。
クロック部231、アプリ部232、送信部233、及び受信部234は、例えば、CPUなどの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ICなどのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。
受信部234は、管理装置250から再設定命令を受信する。
クロック部231は、通信装置230内の時刻であるローカル時刻を計時する。ここで、クロック部231は、自身が計時するローカル時刻を用いて、第4周期を計時する第4周期タイマー、及び第4周期内で設定時間を計時する設定時間タイマーとしても機能する。
第4周期は、アプリ部232が生成するアプリデータ(第3アプリケーションデータの一例)の送信周期である。第2実施形態では、第4周期は、第2周期及び第3周期と同一周期であるものとするが、異なる周期であってもよい。
クロック部231は、受信部234により再設定命令が受信されると、設定時間を再設定し、受信部234により再設定命令が受信されなければ、設定時間を再設定せず、前回の設定時間をそのまま使用する。設定時間は、第4周期未満の時間であり、例えば、クロック部231が、乱数値などで決定してもよいし、第4周期内で所定分の位相をずらすことで決定してもよい。
設定時間タイマーは、このようにして設定される設定時間を計時する。具体的には、設定時間タイマーは、第4周期タイマーにより第4周期が計時されると、設定時間の計時を開始し、第4周期内で設定時間を計時する。
アプリ部232は、第4周期タイマーにより第4周期が計時される毎に、アプリデータを生成する。第2実施形態では、アプリ部232が電気量を計測するアプリケーションである場合を例に取り説明するが、これに限定されるものではない。この場合、アプリ部232は、第4周期毎に、電気量を計測し、計測した電気量に、クロック部231により計時されたローカル時刻(第4周期が計時された時点での基準時刻であり、アプリデータ生成時の基準時刻)を示すタイムスタンプtγを付加(打刻)し、アプリデータとする。
送信部233は、第4周期毎に当該第4周期内の再設定命令の受信の有無に応じたタイミングで、アプリ部232により生成されたアプリデータをネットワーク102に送信する。具体的には、送信部233は、設定時間タイマーにより設定時間が計時されると、アプリ部232により生成されたアプリデータのアプリフレームをネットワーク102に送信する。
なお、受信部234により再設定命令が受信された場合、設定時間は再設定されているため、送信部233は、第4周期内の前回とは異なるタイミングでアプリフレームをネットワーク102に送信する。一方、受信部234により再設定命令が受信されなかった場合、設定時間は再設定されていないため、送信部233は、第4周期内の前回と同一のタイミングでアプリフレームをネットワーク102に送信する。
図12は、第2実施形態の管理装置250の構成の一例を示す図である。図12に示すように、管理装置250は、受信部251(第1受信部の一例)と、記憶部252と、判定部253と、決定部254と、送信部255(第2送信部の一例)と、を備える。
受信部251、判定部253、決定部254、及び送信部255は、例えば、CPUなどの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ICなどのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。記憶部252は、例えば、HDD、SSD、メモリカード、光ディスク、RAM、及びROMなどの磁気的、光学的、又は電気的に記憶可能な記憶装置により実現できる。
受信部251は、スレーブ装置210それぞれから、通信遅延時間を受信する。
判定部253は、受信部251により受信された複数の通信遅延時間が所定精度を満たすか否かを判定する。ここで、記憶部252には、判定部253が過去に受信部251から取得したスレーブ装置210毎の通信遅延時間が記憶されている。
このため判定部253は、第1実施形態のスレーブ装置110の判定部116と同様の手法で、受信部251により受信された通信遅延時間毎に、所定精度を満たすか否かを判定してもよいし、第1実施形態のスレーブ装置110の判定部116と同様の手法で、通信遅延時間の合計時間同士を比較して、所定精度を満たすか否かを判定してもよい。前者の場合、判定部253は、全ての通信遅延時間で所定精度を満たせば、所定精度を満たすと判定する。
なお、判定部253は、通信遅延時間を判定すると、受信部251から取得した通信遅延時間を記憶部252に記憶する。
決定部254は、複数の通信遅延時間が所定精度を満たさない場合、複数のスレーブ装置210の中から再設定命令送信対象の1以上の装置を決定する。例えば、決定部254は、通信遅延時間が所定精度を満たさなかったスレーブ装置210を再設定命令送信対象に決定する。
なお決定部254は、複数のスレーブ装置210、マスター装置220、及び通信装置230の中から再設定命令送信対象の1以上の装置を決定してもよい。この場合、決定部254は、複数のスレーブ装置210、マスター装置220、及び通信装置230の中から、ランダムに再設定命令送信対象の1以上の装置を決定してもよいし、予め定められた順番で再設定命令送信対象の1以上の装置を決定してもよい。
送信部255は、決定部254により決定された1以上の装置に再設定命令を送信する。
図13は、第2実施形態の管理装置250で行われる処理の手順の流れの一例を示すフローチャートである。
まず、受信部251は、スレーブ装置210それぞれから、通信遅延時間を収集(受信)する(ステップS501)。
続いて、判定部253は、受信部251により受信された複数の通信遅延時間が所定精度を満たすか否かより、設定時間の再設定が必要か否かを判定する(ステップS503)。
複数の通信遅延時間が所定精度を満たさず、設定時間の再設定が必要な場合(ステップS503でYes)、決定部254は、複数のスレーブ装置210、マスター装置220、及び通信装置230の中から再設定命令送信対象の1以上の装置を決定する(ステップS505)。
続いて、送信部255は、決定部254により決定された対象の1以上の装置に再設定命令を送信する(ステップS507)。
なお、設定時間の再設定が不要な場合(ステップS503でNo)、処理は終了となる。
図14は、第2実施形態のスレーブ装置210で行われる再設定処理の手順の流れの一例を示すフローチャートである。
通信部214は、管理装置250から再設定命令を受信すると(ステップS601)、
クロック部111は、設定時間を再設定する(ステップS603)。
なお、マスター装置220の場合、受信部225は、管理装置250から再設定命令を受信すると、クロック部221は、設定時間を再設定する。また、通信装置230の場合、受信部234は、管理装置250から再設定命令を受信すると、クロック部231は、設定時間を再設定する。
以上のように第2実施形態によれば、通信遅延時間が所定の精度を満たさなければ、マスター装置や通信装置もアプリフレームの送信タイミングが周期内で変更されるため、通信遅延時間が所定の精度を満たすまでの時間が短縮されることが期待できる。
(第3実施形態)
第3実施形態では、通信装置が転送装置を利用してアプリデータを周期内でランダムなタイミングで送信する例について説明する。以下では、第2実施形態との相違点の説明を主に行い、第2実施形態と同様の機能を有する構成要素については、第1実施形態と同様の名称・符号を付し、その説明を省略する。
図15は、第3実施形態の通信システム301の構成の一例を示す図であり、転送装置340がネットワーク102に接続され、通信装置330が転送装置340に接続されている点で第2実施形態と相違する。転送装置340としては、例えば、通信装置330のネットワークカードやUSB(Universal Serial Bus)型のコンバータなど通信装置330に直接接続される装置が挙げられるが、これに限定されず、ネットワーク102を介して通信装置330に接続されるものであってもよい。
図16は、第3実施形態の通信装置330の構成の一例を示す図である。図16に示すように、通信装置330は、クロック部331及び送信部333が第2実施形態と相違する。
第3実施形態では、クロック部331は、設定時間タイマーとしては機能しない。
送信部333は、アプリ部232によりアプリデータが生成されると、当該アプリデータを転送装置340に送信する。
図17は、第3実施形態の転送装置340の構成の一例を示す図である。図17に示すように、転送装置340は、受信部341(第4受信部の一例)と、クロック部342と、送信部343(第5送信部の一例)と、を備える。
受信部341、クロック部342、及び送信部343は、例えば、CPUなどの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ICなどのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。
受信部341は、通信装置330からアプリデータを受信する。また受信部341は、管理装置250から再設定命令を受信する。
クロック部342は、転送装置340内の時刻であるローカル時刻を計時する。ここで、クロック部342は、自身が計時するローカル時刻を用いて、第4周期を計時する第4周期タイマー、及び第4周期内で設定時間を計時する設定時間タイマーとしても機能する。
なお、第4周期タイマーは、通信装置330のクロック部331の第4周期タイマーと同期しているものとする。つまり、クロック部331の第4周期タイマーとクロック部342の第4周期タイマーとは、同一のタイミングで第4周期を計時する。
クロック部342は、受信部341により再設定命令が受信されると、設定時間を再設定し、受信部341により再設定命令が受信されなければ、設定時間を再設定せず、前回の設定時間をそのまま使用する。設定時間は、第4周期未満の時間であり、詳細には、受信部341によりアプリデータが受信されてから第4周期となるまでよりも短い時間であり、例えば、クロック部342が、乱数値などで決定してもよいし、第4周期内で所定分の位相をずらすことで決定してもよい。
設定時間タイマーは、このようにして設定される設定時間を計時する。具体的には、設定時間タイマーは、受信部341によりアプリデータが受信されると、設定時間の計時を開始し、第4周期内で設定時間を計時する。
送信部343は、第4周期毎に当該第4周期内かつ受信部341によるアプリデータ受信後の再設定命令の受信の有無に応じたタイミングで、受信部341により受信されたアプリデータをネットワーク102に送信する。具体的には、送信部343は、設定時間タイマーにより設定時間が計時されると、受信部341により受信されたアプリデータのアプリフレームをネットワーク102に送信する。
なお、受信部341により再設定命令が受信された場合、設定時間は再設定されているため、送信部343は、第4周期内の前回とは異なるタイミングでアプリフレームをネットワーク102に送信する。一方、受信部341により再設定命令が受信されなかった場合、設定時間は再設定されていないため、送信部343は、第4周期内の前回と同一のタイミングでアプリフレームをネットワーク102に送信する。
第3実施形態では、決定部254は、複数のスレーブ装置210、マスター装置220、及び転送装置340の中から再設定命令送信対象の1以上の装置を決定してもよい。
図18は、第3実施形態の通信装置330で行われる処理の手順の流れの一例を示すフローチャートである。
アプリ部232は、第4周期タイマーにより第4周期が計時(計測)されるまで待機する(ステップS701でNo)。
そしてアプリ部232は、第4周期タイマーにより第4周期が計時されると(ステップS701でYes)、電気量を計測し、計測した電気量に、クロック部331により計時されたローカル時刻を示すタイムスタンプtγを付加(打刻)し、アプリデータを生成する(ステップS703)。
続いて、送信部333は、アプリ部232により生成されたアプリデータのアプリフレームを転送装置340に送信する(ステップS705)。そして、ステップS701へ戻る。
図19は、第3実施形態の転送装置340で行われる処理の手順の流れの一例を示すフローチャートである。
受信部341は、通信装置330からアプリフレームを受信するまで待機し(ステップS801でNo)、アプリフレームを受信すると(ステップS801でYes)、設定時間タイマーが設定時間の計時を開始する(ステップS803)。
そして送信部343は、設定時間タイマーにより設定時間が計時されるまで待機し(ステップS805でNo)、設定時間タイマーにより設定時間が計時されると(ステップS805でYes)、受信部341により受信されたアプリフレームをネットワーク102に送信する(ステップS807)。そして、ステップS801へ戻る。
なお、転送装置340で行われる再設定処理の手順の流れは、図14を参照すると、受信部341は、管理装置250から再設定命令を受信し、クロック部342は、設定時間を再設定する。
以上のように第3実施形態によれば、アプリフレームの送信タイミングを変更できない通信装置であっても、転送装置によりアプリフレームの送信タイミングを変更できるため、通信遅延時間が所定の精度を満たすまでの時間が短縮されることが期待できる。
(ハードウェア構成)
図20は、各実施形態のスレーブ装置、マスター装置、管理装置、通信装置、及び転送装置(以下、各実施形態の各装置と称する)のハードウェア構成の一例を示す図である。図20に示すように、各実施形態の各装置は、CPUなどの制御装置901と、ROMやRAMなどの主記憶装置902と、HDDやSSDなどの補助記憶装置903と、ディスプレイなどの表示装置904と、キーボードやマウスなどの入力装置905と、通信インタフェースなどの通信装置906と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
各実施形態の各装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、CD−R、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
また、各実施形態の各装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、各実施形態の各装置で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、各実施形態の各装置で実行されるプログラムを、ROM等に予め組み込んで提供するようにしてもよい。
各実施形態の各装置で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、CPUがROMやHDDなどからプログラムをRAM上に読み出して実行することにより、上記各部がコンピュータ上で実現されるようになっている。なお、上記各部の少なくとも一部をICなどのハードウェアで実現する場合、各実施形態の各装置は、当該ICなどを更に備えればよい。
本発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。
例えば、各実施形態のフローチャートにおける各ステップを、その性質に反しない限り、実行順序を変更し、複数同時に実施し、あるいは実施毎に異なった順序で実施してもよい。
以上のように、各実施形態によれば、ネットワーク内での通信の競合を回避しつつ、データの周期的な通信を保障することができる。
101、201、301 通信システム
102 ネットワーク
110、210−1、210−2(210) スレーブ装置
111 クロック部
112 アプリ部
113 送信部
114、214 通信部
115、215 推定部
116 判定部
117 記憶部
118 同期部
120、220 マスター装置
121、221 クロック部
122 アプリ部
123、223 送信部
124 通信部
225 受信部
230、330 通信装置
231、331 クロック部
232 アプリ部
233、333 送信部
234 受信部
250 管理装置
251 受信部
252 記憶部
253 判定部
254 決定部
255 送信部
340 転送装置
341 受信部
342 クロック部
343 送信部

Claims (16)

  1. 通信装置であって、
    第1周期毎にネットワークを介して他の通信装置と通信する通信部と、
    前記第1周期毎に、前記通信装置及び前記他の通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記通信装置及び前記他の通信装置間の通信遅延時間を推定する推定部と、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定部と、
    第2周期毎にアプリケーションデータを生成するアプリ部と、
    前記第2周期毎に当該第2周期内の前記判定部の判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信部と、を備え、
    前記送信部は、前記通信遅延時間が前記所定精度を満たさない場合、前記第2周期内の前回とは異なるタイミングで前記アプリケーションデータを前記ネットワークに送信する、
    信装置。
  2. 通信装置であって、
    第1周期毎にネットワークを介して他の通信装置と通信する通信部と、
    前記第1周期毎に、前記通信装置及び前記他の通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記通信装置及び前記他の通信装置間の通信遅延時間を推定する推定部と、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定部と、
    第2周期毎にアプリケーションデータを生成するアプリ部と、
    前記第2周期毎に当該第2周期内の前記判定部の判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信部と、を備え、
    前記送信部は、前記通信遅延時間が前記所定精度を満たす場合、前記第2周期内の前回と同一のタイミングで前記アプリケーションデータを前記ネットワークに送信する
    信装置。
  3. 前記推定部は、前記往路通信時間及び前記復路通信時間の合計である往復通信時間の1/2を前記通信遅延時間に推定する請求項1または2に記載の通信装置。
  4. 前記他の通信装置は、時刻の同期元となるマスター装置であり、
    前記通信部は、前記他の通信装置と時刻同期用の同期データを通信し、
    前記他の通信装置から送信される前記同期データは、前記他の通信装置により計時された基準時刻を示す第1タイムスタンプを含み、
    前記通信遅延時間と前記第1タイムスタンプとに基づいて、時刻同期を行う同期部を更に備える請求項1または2に記載の通信装置。
  5. ローカル時刻を計時するクロック部を更に備え、
    前記同期部は、前記通信遅延時間、前記第1タイムスタンプ、及び前記同期データ受信時のローカル時刻を用いて、前記基準時刻と前記ローカル時刻とのオフセットを算出し、算出した前記オフセットを用いて、前記クロック部に、計時するローカル時刻を補正させる請求項4に記載の通信装置。
  6. 前記アプリ部は、電気量を計測し、
    前記アプリケーションデータは、前記アプリケーションデータ生成時のローカル時刻を示す第2タイムスタンプ及び計測された前記電気量を含む請求項1または2に記載の通信装置。
  7. 第1通信装置と第2通信装置とを備える通信システムであって、
    前記第1通信装置は、
    第1周期毎にネットワークを介して前記第2通信装置と通信する第1通信部と、
    前記第1周期毎に、前記第1通信装置及び前記第2通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記第1通信装置及び前記第2通信装置間の通信遅延時間を推定する推定部と、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定部と、
    第2周期毎にアプリケーションデータを生成するアプリ部と、
    前記第2周期毎に当該第2周期内の前記判定部の判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信部と、
    を備え、
    前記第2通信装置は、
    前記第1周期毎に前記ネットワークを介して前記第1通信装置と通信する第2通信部
    を備え
    前記送信部は、前記通信遅延時間が前記所定精度を満たさない場合、前記第2周期内の前回とは異なるタイミングで前記アプリケーションデータを前記ネットワークに送信する、
    信システム。
  8. 第1通信装置と第2通信装置とを備える通信システムであって、
    前記第1通信装置は、
    第1周期毎にネットワークを介して前記第2通信装置と通信する第1通信部と、
    前記第1周期毎に、前記第1通信装置及び前記第2通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記第1通信装置及び前記第2通信装置間の通信遅延時間を推定する推定部と、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定部と、
    第2周期毎にアプリケーションデータを生成するアプリ部と、
    前記第2周期毎に当該第2周期内の前記判定部の判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信部と、
    を備え、
    前記第2通信装置は、
    前記第1周期毎に前記ネットワークを介して前記第1通信装置と通信する第2通信部
    を備え、
    前記送信部は、前記通信遅延時間が前記所定精度を満たす場合、前記第2周期内の前回と同一のタイミングで前記アプリケーションデータを前記ネットワークに送信する、
    通信システム。
  9. 複数の第1通信装置と第2通信装置と管理装置とを備える通信システムであって、
    前記複数の第1通信装置それぞれは、
    第1周期毎にネットワークを介して前記第2通信装置と通信する第1通信部と、
    前記第1周期毎に、前記第1通信装置及び前記第2通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記第1通信装置及び前記第2通信装置間の通信遅延時間を推定する推定部と、
    前記通信遅延時間を前記管理装置に送信し、前記管理装置から再設定命令を受信する第2通信部と、
    第2周期毎に第1アプリケーションデータを生成する第1アプリ部と、
    前記第2周期毎に当該第2周期内の前記再設定命令の受信の有無に応じたタイミングで前記第1アプリケーションデータを前記ネットワークに送信する第1送信部と、
    を備え、
    前記第2通信装置は、
    前記第1周期毎に前記ネットワークを介して前記第1通信装置と通信する第3通信部
    を備え、
    前記管理装置は、
    前記複数の第1通信装置から前記通信遅延時間を受信する第1受信部と、
    前記複数の通信遅延時間が所定精度を満たすか否かを判定する判定部と、
    前記複数の通信遅延時間が前記所定精度を満たさない場合、前記複数の第1通信装置の中から前記再設定命令送信対象の1以上の装置を決定する決定部と、
    前記1以上の第1通信装置に前記再設定命令を送信する第2送信部と、
    を備える通信システム。
  10. 前記第2通信装置は、
    前記管理装置から前記再設定命令を受信する第2受信部と、
    第3周期毎に第2アプリケーションデータを生成する第2アプリ部と、
    前記第3周期毎に当該第3周期内の前記再設定命令の受信の有無に応じたタイミングで前記第2アプリケーションデータを前記ネットワークに送信する第3送信部と、
    を更に備え、
    前記決定部は、前記複数の第1通信装置及び前記第2通信装置の中から前記1以上の装置を決定する請求項9に記載の通信システム。
  11. 第3通信装置を更に備え、
    前記第3通信装置は、
    前記管理装置から前記再設定命令を受信する第3受信部と、
    第4周期毎に第3アプリケーションデータを生成する第3アプリ部と、
    前記第4周期毎に当該第4周期内の前記再設定命令の受信の有無に応じたタイミングで前記第3アプリケーションデータを前記ネットワークに送信する第4送信部と、
    を備え、
    前記決定部は、前記複数の第1通信装置、前記第2通信装置、及び前記第3通信装置の中から前記1以上の装置を決定する請求項9に記載の通信システム。
  12. 第3通信装置と転送装置とを更に備え、
    前記第3通信装置は、
    第4周期毎に第3アプリケーションデータを生成する第3アプリ部と、
    前記第3アプリケーションデータを前記転送装置に送信する第4送信部と、
    を備え、
    前記転送装置は、
    前記第3通信装置から前記第3アプリケーションデータを受信するとともに、前記管理装置から前記再設定命令を受信する第4受信部と、
    前記第4周期毎に当該第4周期内かつ前記第3アプリケーションデータ受信後の前記再設定命令の受信の有無に応じたタイミングで前記第3アプリケーションデータを前記ネットワークに送信する第5送信部と、
    を備え、
    前記決定部は、前記複数の第1通信装置、前記第2通信装置、及び前記転送装置の中から前記1以上の装置を決定する請求項9に記載の通信システム。
  13. 通信装置で実行される推定方法であって、
    第1周期毎にネットワークを介して他の通信装置と通信する通信ステップと、
    前記第1周期毎に、前記通信装置及び前記他の通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記通信装置及び前記他の通信装置間の通信遅延時間を推定する推定ステップと、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定ステップと、
    第2周期毎にアプリケーションデータを生成する生成ステップと、
    前記第2周期毎に当該第2周期内の前記判定ステップの判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信ステップと、を含み、
    前記送信ステップは、前記通信遅延時間が前記所定精度を満たさない場合、前記第2周期内の前回とは異なるタイミングで前記アプリケーションデータを前記ネットワークに送信する、
    定方法。
  14. 通信装置で実行される推定方法であって、
    第1周期毎にネットワークを介して他の通信装置と通信する通信ステップと、
    前記第1周期毎に、前記通信装置及び前記他の通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記通信装置及び前記他の通信装置間の通信遅延時間を推定する推定ステップと、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定ステップと、
    第2周期毎にアプリケーションデータを生成する生成ステップと、
    前記第2周期毎に当該第2周期内の前記判定ステップの判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信ステップと、を含み、
    前記送信ステップは、前記通信遅延時間が前記所定精度を満たす場合、前記第2周期内の前回と同一のタイミングで前記アプリケーションデータを前記ネットワークに送信する、
    推定方法。
  15. 通信装置のコンピュータに、
    第1周期毎にネットワークを介して他の通信装置と通信する通信ステップと、
    前記第1周期毎に、前記通信装置及び前記他の通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記通信装置及び前記他の通信装置間の通信遅延時間を推定する推定ステップと、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定ステップと、
    第2周期毎にアプリケーションデータを生成する生成ステップと、
    前記第2周期毎に当該第2周期内の前記判定ステップの判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信ステップと、を実行させ、
    前記送信ステップは、前記通信遅延時間が前記所定精度を満たさない場合、前記第2周期内の前回とは異なるタイミングで前記アプリケーションデータを前記ネットワークに送信する、
    ログラム。
  16. 通信装置のコンピュータに、
    第1周期毎にネットワークを介して他の通信装置と通信する通信ステップと、
    前記第1周期毎に、前記通信装置及び前記他の通信装置間の通信の往路通信時間及び復路通信時間を算出し、当該往路通信時間及び当該復路通信時間に基づいて、前記通信装置及び前記他の通信装置間の通信遅延時間を推定する推定ステップと、
    前記通信遅延時間が所定精度を満たすか否かを判定する判定ステップと、
    第2周期毎にアプリケーションデータを生成する生成ステップと、
    前記第2周期毎に当該第2周期内の前記判定ステップの判定結果に応じたタイミングで前記アプリケーションデータを前記ネットワークに送信する送信ステップと、を実行させ、
    前記送信ステップは、前記通信遅延時間が前記所定精度を満たす場合、前記第2周期内の前回と同一のタイミングで前記アプリケーションデータを前記ネットワークに送信する、
    プログラム。
JP2015115090A 2015-06-05 2015-06-05 通信装置、通信システム、推定方法及びプログラム Active JP6499018B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015115090A JP6499018B2 (ja) 2015-06-05 2015-06-05 通信装置、通信システム、推定方法及びプログラム
US14/959,513 US20160359609A1 (en) 2015-06-05 2015-12-04 Communication device, communication system, estimation method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015115090A JP6499018B2 (ja) 2015-06-05 2015-06-05 通信装置、通信システム、推定方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2017005382A JP2017005382A (ja) 2017-01-05
JP6499018B2 true JP6499018B2 (ja) 2019-04-10

Family

ID=57452474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015115090A Active JP6499018B2 (ja) 2015-06-05 2015-06-05 通信装置、通信システム、推定方法及びプログラム

Country Status (2)

Country Link
US (1) US20160359609A1 (ja)
JP (1) JP6499018B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017108571B4 (de) * 2017-04-21 2019-06-27 Beckhoff Automation Gmbh Konzept zum übermitteln von zeitsynchronisierten daten von einer eine lokale zeit aufweisenden steuerung eines automatisierungssystems an zumindest einen teilnehmer des automatisierungssystems
US10877919B2 (en) * 2017-07-21 2020-12-29 Integrated Device Technology, Inc. Method to synchronize integrated circuits fulfilling functional safety requirements
WO2020095413A1 (ja) * 2018-11-08 2020-05-14 三菱電機株式会社 通信システム、通信装置、方法、及びプログラム

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5859612A (en) * 1996-06-06 1999-01-12 Qualcomm Incorporated Method for using an antenna with a rotating beam for determining the position of a mobile subscriber in a CDMA cellular telephone system
US7088677B1 (en) * 2002-03-01 2006-08-08 Bellsouth Intellectual Property Corporation System and method for delay-based congestion detection and connection admission control
JP3769752B2 (ja) * 2002-12-24 2006-04-26 ソニー株式会社 情報処理装置および情報処理方法、データ通信システム、並びに、プログラム
JP4542027B2 (ja) * 2005-11-30 2010-09-08 日本電信電話株式会社 時刻同期方法、時刻クライアント、時刻サーバ、アプリケーション装置及び時刻同期システム
TWI320999B (en) * 2006-08-18 2010-02-21 Via Tech Inc Frequency adjusting method of cdr circuit and device therefor
WO2008023085A1 (en) * 2006-08-24 2008-02-28 Nokia Corporation Coding a signal
JP5041815B2 (ja) * 2007-01-12 2012-10-03 株式会社日立製作所 通信装置および基地局システム
JP4810520B2 (ja) * 2007-09-21 2011-11-09 日本電信電話株式会社 クライアント装置および同期システム
US20090213777A1 (en) * 2008-02-27 2009-08-27 Sanyo Electric Co., Ltd. Distribution apparatus and receiving apparatus for reproducing predetermined contents
GB2466208B (en) * 2008-12-11 2013-09-11 Skype Controlling packet transmission
ES2361893B1 (es) * 2009-08-07 2012-05-04 Vodafone España, S.A.U. Método y sistema para seleccionar din�?micamente el alcance de celda de una estación base.
JP5658524B2 (ja) * 2010-10-07 2015-01-28 株式会社東芝 遮断器位相制御開閉システム
US8379643B2 (en) * 2010-12-09 2013-02-19 Inventec Corporation Method for controlling transmission speed of multi-cast packets
US8547870B2 (en) * 2011-06-07 2013-10-01 Qualcomm Incorporated Hybrid positioning mechanism for wireless communication devices
JP5768624B2 (ja) * 2011-09-26 2015-08-26 富士通株式会社 中継装置及び中継方法
CN103931249B (zh) * 2011-11-08 2019-01-01 英特尔公司 确定无线通信信号的到达时间的方法、设备和***
JP5849786B2 (ja) * 2012-03-08 2016-02-03 富士通株式会社 データブロック出力装置、通信システム、データブロック出力方法、及び通信方法
US8743727B2 (en) * 2012-05-17 2014-06-03 Qualcomm Incorporated Driving hybrid location services from WLAN stations using access points
US8848565B2 (en) * 2012-07-12 2014-09-30 Qualcomm Incorporated Method for performing measurements and positioning in a network based WLAN positioning system
JP6220129B2 (ja) * 2013-01-15 2017-10-25 株式会社東芝 保護継電システムおよび保護継電装置
US9191908B2 (en) * 2013-03-05 2015-11-17 Qualcomm Incorporated Reducing impact of clock drift in wireless devices
WO2015024599A1 (en) * 2013-08-22 2015-02-26 Telefonaktiebolaget L M Ericsson (Publ) A method for detecting timing references affected by a change in path delay asymmetry between nodes in a communications network
US20160014711A1 (en) * 2014-07-14 2016-01-14 Qualcomm Incorporated Round trip time (rtt) determination
JP6467034B2 (ja) * 2014-07-18 2019-02-06 インターデイジタル パテント ホールディングス インコーポレイテッド 無線ローカルエリアネットワーク(wlan)アップリンクトランシーバシステムおよび方法
US9160519B1 (en) * 2014-08-25 2015-10-13 Nxp B.V. Communications with synchronization
KR101675734B1 (ko) * 2015-02-04 2016-11-14 전자부품연구원 무선 네트워크 시스템에서의 링크 품질 판단 방법
JP6461718B2 (ja) * 2015-06-05 2019-01-30 株式会社東芝 管理装置、システム及び方法
JP6523058B2 (ja) * 2015-06-05 2019-05-29 株式会社東芝 通信システムおよび推定方法

Also Published As

Publication number Publication date
US20160359609A1 (en) 2016-12-08
JP2017005382A (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
US9634782B2 (en) Clock synchronization system, clock synchronization method, and storage medium whereupon clock synchronization program is stored
JP6192995B2 (ja) 通信装置、通信システム、通信方法およびコンピュータプログラム
JP6457340B2 (ja) 推定装置、システム、方法及びプログラム
JP6499018B2 (ja) 通信装置、通信システム、推定方法及びプログラム
KR20100127790A (ko) 비동기 분산 시스템에서의 클록의 동기화
KR102103698B1 (ko) 통신 시스템 및 슬레이브 장치
JPWO2014041592A1 (ja) 補正パラメータ算出装置及びシステム及び補正パラメータ算出方法及びコンピュータプログラム
JP2013083451A (ja) 時刻制御装置、時刻制御方法、およびプログラム
JP6523058B2 (ja) 通信システムおよび推定方法
JP6501138B2 (ja) 遅延測定方法、遅延測定装置、及びプログラム
US20200382233A1 (en) Information processing apparatus and time synchronization method
JP6605863B2 (ja) 電子装置、方法、プログラム、及び保護システム
JP6010802B2 (ja) 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム
US20190215231A1 (en) Log information generation apparatus, information processing system, log information generation method, and non-transitory recording medium storing a log information generation program
JP6461718B2 (ja) 管理装置、システム及び方法
JP2013251878A (ja) 通信装置、制御装置及びプログラム
KR101716630B1 (ko) 통신 장치 및 통신 방법 및 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
US11263112B2 (en) Method and apparatus for evaluating quality of software running environment of device
JP2012175567A (ja) 同期システムおよび同期システムの同期方法
JP6615470B2 (ja) 同期制御装置、同期システム及び同期制御方法
JP6310758B2 (ja) 時刻同期装置および方法
KR102064575B1 (ko) 디바이스 간의 시각 동기 정밀도를 향상시키는 방법, 장치, 시스템 및 컴퓨터 프로그램
JP6085864B2 (ja) 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム
JP2005071280A (ja) 並列計算機、マスタノード及びそのプログラム、スレーブノード及びそのプログラム
JP2013168884A (ja) 時刻同期システム、時刻送信装置、時刻受信装置、時刻同期方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180131

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190128

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: 20190212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190314

R151 Written notification of patent or utility model registration

Ref document number: 6499018

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151