JP6010802B2 - 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム - Google Patents
時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム Download PDFInfo
- Publication number
- JP6010802B2 JP6010802B2 JP2013033193A JP2013033193A JP6010802B2 JP 6010802 B2 JP6010802 B2 JP 6010802B2 JP 2013033193 A JP2013033193 A JP 2013033193A JP 2013033193 A JP2013033193 A JP 2013033193A JP 6010802 B2 JP6010802 B2 JP 6010802B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- offset
- average delay
- unit
- slave node
- 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
Links
Images
Description
まず、図1を用いてIEEE1588の時刻同期アルゴリズムについて説明する。図1は、IEEE1588の時刻同期アルゴリズムによる通信シーケンスの動作を表すシーケンス図である。図1では、マスターノード10とスレーブノード20とが双方向通信を行っており、スレーブノード20が定期的にマスターノード10の時刻にスレーブノード20の時刻を同期させる。
スレーブノード20は、Sync送信時刻Tm(0)、Sync受信時刻Ts(0)に基づいて、以下の式1によってマスターノード10における時刻(以下、「マスター時刻」という。)とスレーブノード20における時刻(以下、「スレーブ時刻」という。)との差分MS_Diffを算出する。
マスターノード10は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、時刻同期用プログラムを実行する。時刻同期用プログラムの実行によって、マスターノード10は、マスタークロック生成部11、時計部12、パケット生成部13、通信部14を備える装置として機能する。なお、マスターノード10の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されても良い。また、時刻同期用プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。また、時刻同期用プログラムは、電気通信回線を介して送受信されても良い。
通信部14は、スレーブノード20との間で通信を行う。例えば、通信部14は、スレーブノード20からDelay_Requestメッセージを受信し、パケット生成部13に転送する。また、通信部14は、Syncメッセージ、Follow_upメッセージ、Delay_Responseメッセージをスレーブノード20に送信する。
スレーブノード20は、バスで接続されたCPUやメモリや補助記憶装置などを備え、時刻同期用プログラムを実行する。時刻同期用プログラムの実行によって、スレーブノード20は、スレーブクロック生成部21、時計部22、通信部23、制御部24、演算部25、時間情報記憶部26、判定部27、選択部28、時刻補正部29を備える装置として機能する。なお、スレーブノード20の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されても良い。また、時刻同期用プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。また、時刻同期用プログラムは、電気通信回線を介して送受信されても良い。
制御部24は、スレーブノード20の各機能部を制御する。また、制御部24は、Delay_Requestメッセージを生成し、通信部23を介してマスターノード10にDelay_Requestメッセージを送信する。この際、制御部24は、時計部22を参照してDelay送信時刻Ts(1)を記録する。Delay_Requestメッセージは、通信部23がマスターノード10から送信されるFollow_upメッセージを受信した後に、マスターノード10にDelay_Responseメッセージを要求するために送信されるメッセージである。
時刻補正部29は、選択部28から出力されたOffsetの値を用いて時計部22のスレーブ時刻を補正する。時刻補正部29のこの処理によって、スレーブノード20の時計部22のスレーブ時刻は、マスターノード10の時計部12のマスター時刻に同期する。
時間情報DBは、レコード30を複数有する。レコード30は、番号、平均遅延時間、Offsetの各値を有する。番号の値は、レコード30によって表される平均遅延時間およびOffsetの各値が格納された順番を表す。平均遅延時間の値は、演算部25によって算出された平均遅延時間の項目を表す。Offsetの値は、演算部25によって算出されたOffsetの項目を表す。
選択部28は、判定部27が所定の回数(例えば、N回)、平均遅延時間およびOffsetの各値が時間情報DBに格納されたと判定すると、以下の処理を行う。
選択部28は、時間情報DBに格納されている番号“1”から番号“N”までに対応する各レコード30の中から最小の平均遅延時間のレコード30を選択する。例えば、図3において、円40で示されている“t_dK”の値が時間情報DBに格納されている複数の平均遅延時間の中で最小の平均遅延時間である場合、選択部28は“t_dK”の値が格納されているレコード30を選択する。そして、選択部28は、選択したレコード30の平均遅延時間に対応付けて格納されているOffsetの値“t_oK”を取得する。その後、選択部28は、取得したOffsetの値“t_oK”を時刻補正部29に出力する。
以上で、選択部28の詳細な説明を終了する。
スレーブノード20の通信部23は、マスターノード10から送信されるSyncメッセージを受信する(ステップS201)。具体的には、通信部23は、マスターノード10からSyncメッセージを受信し、受信したSyncメッセージを制御部24に転送する。制御部24は、Syncメッセージが転送されると、時計部22を参照してSync受信時刻Ts(0)を記録する。
また、所定の回数、平均遅延時間およびOffsetの各値が時間情報DBに格納されていない場合(ステップS209−NO)、スレーブノード20はステップS201以降の処理を繰り返し実行する。
一台のマスターノード10に対してスレーブノード20が複数台で接続して構成されても良い。
また、本実施例では、マスターノード10とスレーブノード20との間で送受信されるメッセージとしてPTPメッセージを示したが、これに限定される必要はない。例えば、NTP(Network Time Protocol)メッセージやSNTP(Simple Network Time Protocol)メッセージなどのメッセージが用いられても良いし、その他のメッセージが用いられても良い。
Claims (4)
- 双方向通信を行うマスターノードとスレーブノードとを備え、前記スレーブノードにおける時刻を前記マスターノードにおける時刻に同期させる時刻同期システムであって、
前記マスターノードは、
前記スレーブノードと制御メッセージの送受信を行う通信部を備え、
前記スレーブノードは、
前記マスターノードと制御メッセージの送受信を行う通信部と、
前記通信部が前記制御メッセージを送受信した際に取得される時刻情報を用いて平均遅延時間およびオフセットを算出する演算部と、
前記演算部によって算出された前記平均遅延時間および前記オフセットを対応付けて複数記憶する記憶部と、
前記記憶部に平均遅延時間およびオフセットの各値が所定の回数記憶された後に前記記憶部に記憶されている複数の平均遅延時間の中から最小の平均遅延時間を選択し、選択した前記平均遅延時間に対応するオフセットを選択する選択部と、
前記選択部が選択した前記オフセットに基づいて自装置の時刻を補正する時刻補正部と、
を備える時刻同期システム。 - 双方向通信を行うマスターノードとスレーブノードとを備え、前記スレーブノードにおける時刻を前記マスターノードにおける時刻に同期させる時刻同期システムが行う時刻同期方法であって、
前記マスターノードが、
前記スレーブノードと制御メッセージの送受信を行う通信ステップと、
前記スレーブノードが、
前記マスターノードと制御メッセージの送受信を行う通信ステップと、
前記通信ステップによって前記制御メッセージを送受信した際に取得される時刻情報を用いて平均遅延時間およびオフセットを算出する演算ステップと、
前記演算ステップによって算出された前記平均遅延時間および前記オフセットを対応付けて記憶部に記憶する記録ステップと、
前記記憶部に平均遅延時間およびオフセットの各値が所定の回数記憶された後に前記記憶部に記憶されている複数の平均遅延時間の中から最小の平均遅延時間を選択し、選択した前記平均遅延時間に対応するオフセットを選択する選択ステップと、
前記選択ステップによって選択された前記オフセットに基づいて自装置の時刻を補正する時刻補正ステップと、
を有する時刻同期方法。 - マスターノードに対して時刻同期を行うスレーブノードであって、
前記マスターノードと制御メッセージの送受信を行う通信部と、
前記通信部が前記制御メッセージを送受信した際に取得される時刻情報を用いて平均遅延時間およびオフセットを算出する演算部と、
前記演算部によって算出された前記平均遅延時間および前記オフセットを対応付けて複数記憶する記憶部と、
前記記憶部に平均遅延時間およびオフセットの各値が所定の回数記憶された後に前記記憶部に記憶されている複数の平均遅延時間の中から最小の平均遅延時間を選択し、選択した前記平均遅延時間に対応するオフセットを選択する選択部と、
前記選択部が選択した前記オフセットに基づいて自装置の時刻を補正する時刻補正部と、
を備えるスレーブノード。 - 双方向通信を行うマスターノードとスレーブノードとを備え、前記スレーブノードにおける時刻を前記マスターノードにおける時刻に同期させる時刻同期システムとして、前記マスターノードに相当する第一のコンピュータ及び前記スレーブノードに相当する第二のコンピュータを動作させるためのコンピュータプログラムであって、
前記第一のコンピュータに対し、
前記スレーブノードと制御メッセージの送受信を行う通信ステップを実行させ、
前記第二のコンピュータに対し、
前記マスターノードと制御メッセージの送受信を行う通信ステップと、
前記通信ステップによって前記制御メッセージを送受信した際に取得される時刻情報を用いて平均遅延時間およびオフセットを算出する演算ステップと、
前記演算ステップによって算出された前記平均遅延時間および前記オフセットを対応付けて記憶部に記録する記録ステップと、
前記記憶部に平均遅延時間およびオフセットの各値が所定の回数記憶された後に前記記憶部に記憶されている複数の平均遅延時間の中から最小の平均遅延時間を選択し、選択した前記平均遅延時間に対応するオフセットを選択する選択ステップと、
前記選択ステップによって選択された前記オフセットに基づいて自装置の時刻を補正する時刻補正ステップと、
を実行させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013033193A JP6010802B2 (ja) | 2013-02-22 | 2013-02-22 | 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013033193A JP6010802B2 (ja) | 2013-02-22 | 2013-02-22 | 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014165582A JP2014165582A (ja) | 2014-09-08 |
JP6010802B2 true JP6010802B2 (ja) | 2016-10-19 |
Family
ID=51615850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013033193A Active JP6010802B2 (ja) | 2013-02-22 | 2013-02-22 | 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6010802B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114938705A (zh) * | 2020-01-14 | 2022-08-23 | 株式会社电装 | 通信装置、以及通信装置所使用的程序以及方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6208712B2 (ja) * | 2015-04-28 | 2017-10-04 | 日本電信電話株式会社 | 時刻同期方法および時刻同期装置 |
KR102431490B1 (ko) * | 2018-06-26 | 2022-08-10 | 현대자동차주식회사 | 차량 네트워크에서 다중 도메인을 활용한 통신 노드의 동기화 방법 및 장치 |
JP2021077974A (ja) * | 2019-11-07 | 2021-05-20 | 日本放送協会 | 無線伝送システム及び無線中継装置 |
CN113676280B (zh) * | 2021-08-29 | 2023-02-03 | 上海橘盒数字科技有限公司 | 一种基于Modbus协议的多设备时钟同步方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4542027B2 (ja) * | 2005-11-30 | 2010-09-08 | 日本電信電話株式会社 | 時刻同期方法、時刻クライアント、時刻サーバ、アプリケーション装置及び時刻同期システム |
EP1990938A1 (en) * | 2007-05-10 | 2008-11-12 | Deutsche Thomson OHG | Method for synchronizing a clock of a network component with a clock of a further network component and network component therefor |
US8473638B2 (en) * | 2008-05-02 | 2013-06-25 | James Aweya | Method and apparatus for time and frequency transfer in communication networks |
JP2010028684A (ja) * | 2008-07-24 | 2010-02-04 | Nippon Telegr & Teleph Corp <Ntt> | クライアント装置およびプログラム |
WO2011074529A1 (ja) * | 2009-12-18 | 2011-06-23 | 日本電気株式会社 | 時刻同期システム、スレーブノード、時刻同期方法及び時刻同期用プログラム |
-
2013
- 2013-02-22 JP JP2013033193A patent/JP6010802B2/ja active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114938705A (zh) * | 2020-01-14 | 2022-08-23 | 株式会社电装 | 通信装置、以及通信装置所使用的程序以及方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2014165582A (ja) | 2014-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5561426B2 (ja) | 同期システム、同期方法、第一の同期装置、第二の同期装置及びコンピュータプログラム | |
US9634782B2 (en) | Clock synchronization system, clock synchronization method, and storage medium whereupon clock synchronization program is stored | |
JP5792884B2 (ja) | 通信ネットワークにおける時間配信のための方法、装置およびシステム | |
JP6010802B2 (ja) | 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム | |
JP2013152095A (ja) | 時刻制御装置、時刻制御方法、およびプログラム | |
JP6192995B2 (ja) | 通信装置、通信システム、通信方法およびコンピュータプログラム | |
JP2004186877A (ja) | 無線アクセスネットワークシステム、無線通信方法、同期サーバ及びノード装置 | |
JP6170415B2 (ja) | 時刻同期システム、時刻同期方法及びコンピュータプログラム | |
JP2010527193A (ja) | ネットワークコンポーネントのクロックを別のネットワークコンポーネントのクロックに同期させる方法及びネットワークコンポーネント | |
JP2010062729A (ja) | 時刻同期方法および中継装置 | |
US9651984B2 (en) | Feed-forward time transfer mechanism for time synchronization | |
EP2749968A1 (en) | Time control device, time control method, and program | |
KR102103698B1 (ko) | 통신 시스템 및 슬레이브 장치 | |
WO2013051447A1 (ja) | 時刻制御装置、時刻制御方法、およびプログラム | |
WO2017054554A1 (zh) | 一种时钟同步方法、装置及通信设备 | |
JP2017069669A (ja) | 時刻同期装置、基地局装置、及び、時刻同期方法 | |
JP6254028B2 (ja) | スレーブノード及び時刻同期方法 | |
JP6170456B2 (ja) | スレーブノード、制御サーバ、時刻同期先決定方法及びコンピュータプログラム | |
JP6085864B2 (ja) | 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム | |
US20170117980A1 (en) | Time synchronization for network device | |
JP6216692B2 (ja) | 通信システム、通信方法、及び、通信プログラム | |
JP6198075B2 (ja) | 時刻同期装置、時刻同期方法及び時刻同期プログラム | |
JP6572136B2 (ja) | 通信システム、通信装置、第二装置、通信方法及びコンピュータプログラム | |
JPWO2020095413A1 (ja) | 通信システム、通信装置、及びプログラム | |
JP6010803B2 (ja) | 時刻同期システム、時刻同期方法、スレーブノード及びコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150723 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160516 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160531 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160801 |
|
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: 20160823 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160829 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6010802 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |