Grandmaster device, node device, distributed time synchronization system, time synchronization method, and program

The grandmaster and node devices use IEEE 1588-2008/2019 protocols to measure and correct time differences, addressing oscillator aging issues and reducing power consumption in distributed synchronization systems.

WO2025225008A1PCT designated stage Publication Date: 2025-10-30NEC CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/016543
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-26
Publication Date
2025-10-30

AI Technical Summary

Technical Problem

Distributed time synchronization systems experience time desynchronization due to the aging of oscillators in node clocks, leading to inaccuracies and increased power consumption from additional processing loads.

Method used

A grandmaster device and node device implement a time synchronization method using IEEE 1588-2008 or IEEE 1588-2019 protocols to measure and correct time differences between nodes, consolidating time measurement and correction protocols to reduce system load and power consumption.

Benefits of technology

Maintains time synchronization accuracy on the order of picoseconds without deteriorating performance or increasing power consumption, allowing autonomous operation independent of climate and installation location.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024016543_30102025_PF_FP_ABST
    Figure JP2024016543_30102025_PF_FP_ABST
Patent Text Reader

Abstract

This grandmaster device is for a distributed time synchronization system, and comprises: an acquisition unit that acquires, from node devices in a distributed time synchronization system, identification information for a master node device of each node device and time difference information; a determination unit that determines a route from the grandmaster device to each node device on the basis of the acquired master node device identification information; a calculation unit that calculates a time correction value for each node device on the basis of the route determination result and the acquired time difference information; and a setting unit that sets the calculated time correction value to each node device.
Need to check novelty before this filing date? Find Prior Art

Description

Grandmaster device, node device, distributed time synchronization system, time synchronization method and program

[0001] The present disclosure relates to a grandmaster device, a node device, a distributed time synchronization system, a time synchronization method, and a program.

[0002] IEEE (Institute of Electrical and Electronics Engineers) 1588, which defines the Precision Time Protocol (PTP), is known as a protocol for time synchronization between devices. IEEE 1588 has standardized IEEE 1588-2008 and IEEE 1588-2019. For example, Patent Document 1 describes the use of PTP to synchronize time between control devices in a distributed control system.

[0003] Japanese Patent Application Laid-Open No. 2022-133624

[0004] Distributed time synchronization systems such as those disclosed in Patent Document 1 have a problem in that the time gradually becomes out of sync due to the influence of aging of the oscillator in the clock of each node.

[0005] In view of the above problems, one of the objects of the present disclosure is to provide a grandmaster device, a node device, a distributed time synchronization system, a time synchronization method, and a program that are capable of correcting the time discrepancy of each node.

[0006] A grandmaster device according to one aspect of the present disclosure is a grandmaster device in a distributed time synchronization system, and includes: an acquisition means for acquiring identification information and time difference information of a parent node device of each node device in the distributed time synchronization system; a determination means for determining a route from the grandmaster device to each node device based on the acquired identification information of the parent node device; a calculation means for calculating a time correction value for each node device based on the route determination result and the acquired time difference information; and a setting means for setting the calculated time correction value in each node device.

[0007] A node device according to one aspect of the present disclosure is a node device in a distributed time synchronization system, and includes: a transmitting means for transmitting identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system; and a correcting means for acquiring a time correction value of the node device from the grandmaster device and correcting the time using the acquired time correction value.

[0008] A distributed time synchronization system according to one aspect of the present disclosure is a distributed time synchronization system including a grandmaster device and a plurality of node devices, wherein the grandmaster device includes: acquisition means for acquiring, from each node device of the plurality of node devices, identification information and time difference information of a parent node device of the node device; determination means for determining a route from the grandmaster device to each node device based on the acquired identification information of the parent node device; calculation means for calculating a time correction value for each node device based on the route determination result and the acquired time difference information; and setting means for setting the calculated time correction value in each node device, and each node device includes: transmission means for transmitting the identification information of the parent node device and the time difference information to the grandmaster device; and correction means for acquiring the time correction value from the grandmaster device and correcting the time using the acquired time correction value.

[0009] A time synchronization method according to one aspect of the present disclosure is a time synchronization method in a distributed time synchronization system, which acquires identification information and time difference information of a parent node device of each node device in the distributed time synchronization system, determines a route from a grandmaster device to each node device based on the acquired identification information of the parent node device, calculates a time correction value for each node device based on the route determination result and the acquired time difference information, and sets the calculated time correction value to each node device.

[0010] A time synchronization method according to one aspect of the present disclosure is a time synchronization method in a node device of a distributed time synchronization system, which transmits identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system, acquires a time correction value for the node device from the grandmaster device, and corrects the time using the acquired time correction value.

[0011] A program according to one aspect of the present disclosure is a program for causing a computer to execute a time synchronization method in a distributed time synchronization system, the time synchronization method acquiring identification information and time difference information of a parent node device of each node device in the distributed time synchronization system from the respective node devices, determining a route from a grandmaster device to each of the node devices based on the acquired identification information of the parent node device, calculating a time correction value for each of the node devices based on the route determination result and the acquired time difference information, and setting the calculated time correction value for each of the node devices.

[0012] A program according to one aspect of the present disclosure is a program for causing a computer to execute a time synchronization method in a node device of a distributed time synchronization system, the time synchronization method transmitting identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system, obtaining a time correction value for the node device from the grandmaster device, and correcting the time using the obtained time correction value.

[0013] According to the present disclosure, it is possible to correct the time difference between the nodes.

[0014] FIG. 1 is a block diagram showing an example configuration of a grandmaster according to some embodiments. FIG. 2 is a block diagram showing an example configuration of a node according to some embodiments. FIG. 3 is a flowchart showing an example time synchronization method according to some embodiments. FIG. 4 is a flowchart showing an example time synchronization method according to some embodiments. FIG. 4 is a block diagram showing an example configuration of a distributed time synchronization system according to some embodiments. FIG. 5 is a diagram showing the time difference of each node in a distributed time synchronization system according to some embodiments. FIG. 6 is a block diagram showing an example configuration of each node in a distributed time synchronization system according to some embodiments. FIG. 7 is a diagram for explaining an example operation of a distributed time synchronization system according to some embodiments. FIG. 8 is a sequence diagram showing an example operation of a distributed time synchronization system according to some embodiments. FIG. 9 is a flowchart showing an example operation of a distributed time synchronization system according to some embodiments. FIG. 9 is a block diagram showing an example configuration of computer hardware according to some embodiments.

[0015] Hereinafter, embodiments will be described with reference to the drawings. In the drawings, the same elements are denoted by the same reference numerals, and redundant description will be omitted as necessary.

[0016] (Embodiment 1) First, embodiment 1 will be described. In this embodiment, an outline of several embodiments will be described.

[0017] FIG. 1 shows an example configuration of a grandmaster 10 according to some embodiments. FIG. 2 shows an example configuration of a node 20 according to some embodiments. The grandmaster 10 (sometimes referred to as a grandmaster device or grandmaster node) is a reference node having a reference clock in a distributed time synchronization system. The distributed time synchronization system includes the grandmaster 10 and multiple nodes 20 (sometimes referred to as node devices), and synchronizes the time of the reference clock in the grandmaster 10 with the time of the clocks in the multiple nodes 20. Here, the node 20 is a node other than the grandmaster 10 in the distributed time synchronization system. The node 20 may operate as both a slave and a current master, or as a slave only. Note that in a distributed time synchronization system, any node can serve as the grandmaster 10. The grandmaster 10 may be a wired node capable of wired communication, or a wireless node capable of wireless communication.

[0018] 1, the grandmaster 10 includes an acquisition unit 11, a determination unit 12, a calculation unit 13, and a setting unit 14. Each unit in the grandmaster 10 may be included in one device or multiple devices, or may be included in a system including one device or multiple devices. For example, each unit in the grandmaster 10 may be distributed across multiple devices.

[0019] The acquisition unit 11 acquires, from each node 20 in the distributed time synchronization system, identification information and time difference information of the parent node of each node 20. The time difference information indicates the time difference of the path between each node 20 and the parent node. For example, the parent node of the node 20 is the master node of the slave node in PTP. The time difference is measured between the node 20 and the parent node by PTP. The acquisition unit 11 may separately acquire the identification information of the parent node and the time difference information from each node 20. The acquisition unit 11 may also acquire the identification information of the grandmaster from each node 20.

[0020] For example, the acquisition unit 11 may use a predetermined time difference correction protocol to acquire the identification information and time difference information of the parent node from each node 20. In this case, the acquisition unit 11 may transmit a request to acquire the identification information and time difference information of the parent node to each node 20 by a management packet defined by the time difference correction protocol, and receive the identification information and time difference information of the parent node from each node 20 by the management packet.

[0021] The determination unit 12 determines the route from the grandmaster 10 to each node 20 based on the identification information of the parent node of each node 20 acquired by the acquisition unit 11. For example, the determination unit 12 may compare the identification information of the parent node of each node 20 with the identification information of the grandmaster 10 to determine the route of each node 20.

[0022] The calculation unit 13 calculates a time correction value for each node 20 based on the determination result of the route for each node 20 by the determination unit 12 and the time difference information for each node 20 acquired by the acquisition unit 11. For example, the calculation unit 13 may calculate a time correction value for a route selected based on a comparison result between the identification information of the parent node of the node 20 and the identification information of the grandmaster 10. In this case, the calculation unit 13 may accumulate the time differences of the paths in the selected route.

[0023] The setting unit 14 sets the time correction value calculated by the calculation unit 13 in each node 20. For example, the setting unit 14 may set the time correction value in each node 20 using the same time difference correction protocol as the acquisition unit 11. The setting unit 14 may transmit the time correction value to each node 20 using a management packet defined by the time difference correction protocol.

[0024] The nodes 20 constitute a distributed time synchronization system together with the grandmaster 10. The nodes 20 may be wired nodes capable of wired communication, or may be wireless nodes capable of wireless communication.

[0025] 2, the node 20 includes a transmitting unit 21 and a correcting unit 22. Each unit in the node 20 may be included in one device or multiple devices, or may be included in a system including one device or multiple devices. For example, each unit in the node 20 may be distributed across multiple devices.

[0026] The transmitter 21 transmits the identification information of the parent node of the node 20 and the time difference information to the grandmaster 10. The transmitter 21 may transmit the identification information of the parent node and the time difference information separately. The transmitter 21 may also transmit the identification information of the grandmaster.

[0027] For example, the transmitter 21 may use a predetermined time difference correction protocol to transmit the identification information of the parent node and the time difference information to the grandmaster 10, just like the grandmaster 10. In this case, the transmitter 21 may receive a request to acquire the identification information of the parent node and the time difference information from the grandmaster 10 by a management packet defined by the time difference correction protocol, and transmit the identification information of the parent node and the time difference information to the grandmaster 10 by the management packet.

[0028] The correction unit 22 acquires the time correction value of the node 20 from the grandmaster 10 and corrects the time of the node 20 using the acquired time correction value. For example, the correction unit 22 may acquire the time correction value from the grandmaster 10 using the same time difference correction protocol as the transmission unit 21. The correction unit 22 may receive the time correction value from the grandmaster 10 using a management packet defined by the time difference correction protocol.

[0029] For example, the time difference correction protocol in the grandmaster 10 and the nodes 20 may be the same protocol as the time measurement protocol that measures the time (time difference) at each node. In this case, the time difference correction protocol and the time measurement protocol may be, for example, either IEEE1588-2008 or IEEE1588-2019. The time difference correction protocol and the time measurement protocol may be implemented in the same processor.

[0030] 3 shows an example of a time synchronization method according to some embodiments, which may be performed by the grandmaster 10 of FIG.

[0031] 3, first, the acquiring unit 11 acquires, from each node 20 in the distributed time synchronization system, the identification information of the parent node of each node 20 (S11). For example, the acquiring unit 11 acquires the identification information of the parent node from each node 20 using a management packet of the time difference correction protocol.

[0032] Next, the acquisition unit 11 acquires, from each node 20, time difference information between each node 20 and its parent node (S12). For example, the acquisition unit 11 acquires the time difference information from each node 20 using a management packet of a time difference correction protocol.

[0033] Next, the determination unit 12 determines the route from the grandmaster 10 to each node 20 based on the acquired identification information of the parent node of each node 20 (S13). Next, the calculation unit 13 calculates the time correction value of each node 20 based on the route determination result of each node 20 and the acquired time difference information of each node 20 (S14).

[0034] Next, the setting unit 14 sets the calculated time correction value in each node 20 (S15). For example, the setting unit 14 sets the time correction value in each node 20 using a management packet of the time difference correction protocol.

[0035] 4 illustrates an example of a time synchronization method according to some embodiments, which may be performed by node 20 of FIG.

[0036] 4, first, the transmitter 21 transmits the identification information of the parent node of the node 20 to the grandmaster 10 (S21). For example, the transmitter 21 transmits the identification information of the parent node to the grandmaster 10 using a management packet of the time difference correction protocol.

[0037] Next, the transmitter 21 transmits the time difference information between the node 20 and the parent node to the grandmaster 10 (S22). For example, the transmitter 21 transmits the time difference information to the grandmaster 10 using a management packet of the time difference correction protocol.

[0038] Next, the correction unit 22 acquires the time correction value of the node 20 from the grandmaster 10 (S23). For example, the correction unit 22 receives the time correction value from the grandmaster 10 using a management packet of the time difference correction protocol. Next, the correction unit 22 corrects the time of the node 20 using the acquired time correction value (S24).

[0039] In related distributed time synchronization systems, there is a problem in that the clocks of each node gradually become out of sync due to the aging of the oscillator. In this embodiment, the grandmaster acquires the parent node's identification information and time difference information from each node, calculates the time correction value for each node based on the route and time difference information of each node determined from the parent node's identification information, and corrects the time of each node. This allows the time of each node to be appropriately corrected even if the time of each node deviates from the time of the grandmaster.

[0040] Furthermore, even if a third node other than the time synchronization node monitors the time in a related distributed time synchronization system, a time difference correction protocol separate from the time measurement protocol is required, which limits its use due to the deterioration of time accuracy and increased power consumption caused by the increased load on the distributed synchronization system. For this reason, in this embodiment, the same protocol, such as IEEE 1588-2008 or IEEE 1588-2019, may be used as the time measurement protocol and the time difference correction protocol. That is, by using IEEE 1588-2008 or IEEE 1588-2019 as the time measurement protocol to measure the time difference between each node, the difference correction between each node can be measured on the order of picoseconds. Furthermore, by using the management function, an optional function of IEEE 1588-2008 or IEEE 1588-2019 as the time difference correction protocol to correct the time difference, it is possible to reduce the deterioration of time accuracy due to the increased processing load on the entire distributed time synchronization system and reduce the power consumption of the entire system.

[0041] Second Embodiment Next, a second embodiment will be described. In this embodiment, a specific example of the first embodiment will be described.

[0042] 5 shows an example of the configuration of a distributed time synchronization system 1 according to some embodiments. The distributed time synchronization system 1 is a system that includes multiple nodes and can automatically correct the time generated by a small atomic oscillator in each node to the time of a reference node. Each node that performs time synchronization in the distributed time synchronization system 1 may be a wired time node capable of wired communication or a wireless time node capable of wireless communication.

[0043] 5, the distributed time synchronization system 1 includes nodes O1 to O4, W1 to W4, and W11 to W14. For example, nodes O1 to O4 are wired time nodes, and nodes W1 to W4 and W11 to W14 are wireless time nodes. Note that the number and connection relationships of the wired time nodes and wireless time nodes are merely examples and are not limited to this example.

[0044] Nodes O1 to O4, which are wired time nodes, are, for example, optical communication devices capable of optical communication. In the example of FIG. 5, nodes O1 to O4 form a ring network. That is, nodes O1 and O2, nodes O2 and O3, nodes O3 and O4, and nodes O4 and O1 are connected by wired transmission paths such as optical fibers. Synchronous Ethernet signals (SyncE) for frequency synchronization are transmitted over the wired transmission paths between the wired time nodes. Frequency synchronization using synchronous Ethernet signals is specified by PTP. Note that the connection between nodes O3 and O4 is configured to avoid timing loops.

[0045] The nodes O1 to O4 can communicate with each other via wired communication and can also communicate wirelessly with wireless time nodes. For example, the nodes O1 to O4 may be base stations for LTE (Long Term Evolution), 5G / local 5G, or the like, or may be access points for a wireless LAN.

[0046] Nodes W1 to W4 and W11 to W14, which are wireless time nodes, are wireless terminal devices that communicate wirelessly with other wireless time nodes and wired time nodes, including nodes O1 to O4. For example, wireless time nodes may be mobile terminals such as drones, automated guided vehicles (AGVs), and autonomous robots, or may be fixed-position terminals. Each node in the distributed time synchronization system 1 performs time synchronization using PTP and therefore plays a role defined by a hierarchical master-slave architecture. In this example, node O1 is part of an ordinary clock (OC) (OC Master) and operates as a grand master (GM) with a reference clock. Nodes O2 to O4 and nodes W1 to W4 are boundary clocks (BCs) and operate as slaves and current masters. Nodes W11 to W14 are part of an OC (OC Slave) and operate as slaves only.

[0047] Fig. 6 shows the time difference of each node in the configuration of the distributed time synchronization system 1 of Fig. 5. For example, for time synchronization, the distributed time synchronization system 1 configures a tree network with the node O1, which is the GM, as the root.

[0048] Wireless communication is performed between node O1 (GM) and node W1 (slave), and node O1 is the parent node of node W1. Wireless communication is performed between node W1 (current master) and node W11 (slave only), and node W1 is the parent node of node W11. Node O1 and node W11 can communicate via node W1. The route from node O1 to node W11 includes the node O1-W1 path and the node W1-W11 path. Therefore, the time difference between node O1 and node W11 is the product of the time difference between node O1-W1 and the time difference between node W1-W11, and this value can be used as the time correction value to correct the time of node W11 to the time of node O1 (GM).

[0049] Furthermore, wired communication is performed between node O1 (GM) and node O2 (slave), and node O1 is the parent node of node O2. Wireless communication is performed between node O2 (current master) and node W2 (slave), and node O2 is the parent node of node W2. Wireless communication is performed between node W2 (current master) and node W12 (slave only), and node W2 is the parent node of node W12. Node O1 and node W2 can communicate via node O2. Node O1 and node W12 can communicate via nodes O2 and W1. The route from node O1 to node W12 includes the path from node O1 to O2, the path from node O2 to W2, and the path from node W2 to W12. Therefore, the time difference between node O1 and node W12 is the sum of the time difference between node O1 and O2, the time difference between node O2 and W2, and the time difference between node W2 and W12, and this value can be used as the time correction value to correct the time of node W12 to the time of node O1 (GM).

[0050] Furthermore, wired communication is performed between node O2 (current master) and node O3 (slave), and node O2 is the parent node of node O3. Wireless communication is performed between node O3 (current master) and node W3 (slave), and node O3 is the parent node of node W3. Wireless communication is performed between node W3 (current master) and node W13 (slave only), and node W3 is the parent node of node W13. Node O1 and node W3 can communicate via nodes O2 and O3. Node O1 and node W13 can communicate via nodes O2, O3, and W3. The route from node O1 to node W13 includes the path from node O1 to O2, the path from node O2 to O3, the path from node O3 to W3, and the path from node W3 to W13. Therefore, the time difference between node O1 and node W13 is the sum of the time difference between node O1-O2, the time difference between node O2-O3, the time difference between node O3-W3, and the time difference between node W3-W13, and this value can be used as the time correction value to correct the time of node W13 to the time of node O1 (GM).

[0051] Furthermore, wired communication is performed between node O1 (GM) and node O4 (slave), and node O1 is the parent node of node O4. Wireless communication is performed between node O4 (current master) and node W4 (slave), and node O4 is the parent node of node W4. Wireless communication is performed between node W4 (current master) and node W14 (slave only), and node W4 is the parent node of node W14. Node O1 and node W4 can communicate via node O4. Node O1 and node W14 can communicate via nodes O4 and W4. The route from node O1 to node W14 includes the path from node O1 to O4, the path from node O4 to W4, and the path from node W4 to W14. Therefore, the time difference between node O1 and node W14 is the sum of the time difference between node O1-O4, the time difference between node O4-W4, and the time difference between node W4-W14, and this value can be used as the time correction value to correct the time of node W14 to the time of node O1 (GM).

[0052] In a distributed time synchronization system, the time at each node is self-synchronizing, so it must be constantly synchronized with the reference clock. In order to synchronize with the reference clock, it is sufficient to periodically measure the difference from the reference clock. However, when measuring and correcting time differences on the order of picoseconds, it is not enough to simply be able to compare the time with each node. To do this, a method is needed to measure the time accurately and a method to collect the measurement results without putting a load on the system.

[0053] In this embodiment, each node implements the functions described below to achieve a method for accurately measuring time. Furthermore, in this embodiment, to achieve a method for collecting measurement results without imposing a load on the system, the IEEE 1588-2008 or IEEE 1588-2019 standard and its optional management function are used as the time measurement and difference correction protocol. This allows autonomous time correction based on the relationship shown in Figure 6, and the measurement protocol and correction protocol for the time difference with each node can be the same, eliminating the load on the entire distributed time synchronization system. This means that the time accuracy does not deteriorate due to increased load, and the power consumption of the entire system can be reduced by approximately half. For example, assuming that one CPU (Central Processing Unit) is used for the measurement protocol and one CPU for the correction protocol, implementing these protocols with a single CPU would halve power consumption simply because peripherals are no longer required.

[0054] Fig. 7 shows an example configuration of each node in a distributed time synchronization system 1 according to some embodiments. Fig. 7 shows an example configuration of a GM node 100 and a node 200 in the distributed time synchronization system 1. The GM node 100 is a reference node (grand master) in the distributed time synchronization system 1, and is, for example, node O1 in Fig. 5. The node 200 is a subordinate node that synchronizes with the time of the GM node 100, and is, for example, a node other than node O1 in Fig. 5. That is, the node 200 may operate as both a slave and a current master, or as a slave only.

[0055] 7, the GM node 100 includes a time measurement unit 110 that measures time and a time difference correction unit 120 that corrects the time difference. The node 200 includes a time measurement unit 210 that measures time and a time difference correction unit 220 that corrects the time difference.

[0056] The time measurement unit 110 of the GM node 100 and the time measurement unit 210 of the node 200 measure the time (difference) in accordance with the provisions of IEEE1588-2008 or IEEE1588-2019. Specifically, the time is measured between the master and slave (between the parent node and the node) using the PTP defined by IEEE1588-2008 or IEEE1588-2019. For example, in PTP, a time packet T1 (Sync Message), a time packet T2 (Follow-up Message), a time packet T3 (Delay Request Message), and a time packet T4 (Delay Response Message) are transmitted and received between the master and the slave, and the time of these transmissions and receptions is used. The downstream transmission delay time is calculated from the difference between the time (t1) when the master transmits the time packet T1 and the time (t2) when the slave receives the time packet T1, and the upstream transmission delay time is calculated from the difference between the time (t3) when the slave transmits the time packet T3 and the time (t4) when the master receives the time packet T3, and the time (difference) is measured based on the respective transmission delay times. As described above, the time measurement unit 110 of the GM node 100 operates as a grandmaster. The time measurement unit 210 of the node 200 operates as a slave and a current master, or as a slave only.

[0057] As described above, in this embodiment, the GM node 100 and the node 200 measure time with high precision to enable time correction on the order of picoseconds. To achieve this, the time measurement units 110 and 210 implement functions proposed by the present inventor and described in Japanese Patent Nos. 6659057, 6198075, 7004392, and 4463153.

[0058] According to Japanese Patent No. 6659057, time information can be obtained with high precision by using a vernier scale, which is a time scale that is shorter than the period of the system clock, which is the main scale, at the node. For example, by applying this function to a wired time node, a vernier scale that matches the Ethernet clock of a synchronous Ethernet signal can be generated, allowing for accurate time measurement.

[0059] According to Japanese Patent No. 6198075, the slave synchronizes the local time frequency with the master time frequency using a frequency servo, and corrects the packet time from the time difference calculated using the local time using packet filtering, thereby achieving highly accurate time synchronization without using a synchronous Ethernet signal. For example, by applying this function to a wireless time node, it is possible to measure time accurately in a wireless time node that cannot use a synchronous Ethernet signal.

[0060] According to Japanese Patent No. 7004392, by configuring a high-pass filter in the slave using a frequency synchronization PLL (Phase Locked Loop) and a time synchronization PLL, the effects of ultra-low frequency wander superimposed on the synchronous Ethernet signal can be suppressed, enabling highly accurate time synchronization. For example, applying this function to a wired time node that uses a synchronous Ethernet signal allows for accurate time measurement.

[0061] According to Japanese Patent No. 4463153, a PLL that suppresses high-frequency jitter and a PLL that suppresses low-frequency wander can simultaneously suppress high-frequency jitter and low-frequency wander components of a clock. For example, by applying this function to wired time nodes and wireless time nodes, a highly accurate clock can be generated and time can be measured accurately.

[0062] In addition, the time difference correction unit 120 of the GM node 100 and the time difference correction unit 220 of the node 200 correct the time difference of each node using the management function of IEEE1588-2008 or IEEE1588-2019, which is the same protocol as the time measurement unit 110 and the time measurement unit 210. The time measurement unit 110 and the time difference correction unit 120 of the GM node 100 can be realized by a single CPU that implements IEEE1588-2008 or IEEE1588-2019. Similarly, the time measurement unit 210 and the time difference correction unit 220 of the node 200 can be realized by a single CPU that implements IEEE1588-2008 or IEEE1588-2019.

[0063] 7, the time difference correction unit 120 of the GM node 100 includes a parent node ID acquisition unit 121, a time difference information acquisition unit 122, a route determination unit 123, a correction value calculation unit 124, and a correction value setting unit 125. Note that the configuration is not limited to this as long as the operations described below are possible.

[0064] The parent node ID acquisition unit 121 acquires the parent node ID of each node from each node 200. The parent node ID acquisition unit 121 requests each node 200 to acquire a parent node ID and a GM node ID (GM ID) by a management packet defined by the management function of IEEE1588-2008 or IEEE1588-2019, and acquires the parent node ID and the GM node ID from each node 200 in response to that request.

[0065] The time difference information acquisition unit 122 acquires the time difference information of each node 200 from each node 200. The time difference information of each node 200 is the time difference of the path between each node 200 and its parent node. The time difference information acquisition unit 122 requests each node 200 to acquire time difference information by using a management packet defined by the management function of IEEE1588-2008 or IEEE1588-2019, and acquires the time difference information from each node 200 in response to that request.

[0066] The route determination unit 123 determines the route between each node 200 and the GM node 100. The route determination unit 123 determines the route from the target node 200 to the GM node 100 by selecting the next higher node 200 in order from the target node 200 if the parent node ID and the GM node ID of the selected node 200 are different, and repeating this process until the parent node ID and the GM node ID match.

[0067] The correction value calculation unit 124 calculates a time correction value for each node 200. The correction value calculation unit 124 calculates a time correction value for each node 200 based on the acquired time difference information for each node 200 and the determined route for each node 200. The correction value calculation unit 124 adds up the time difference information for each path on the route from the target node 200 to the GM node 100, and calculates the time correction value for the target node 200.

[0068] The correction value setting unit 125 sets the time correction value of each node 200 in each node 200. The correction value setting unit 125 transmits and sets the time correction value to each node 200 by using a management packet defined by the management function of IEEE1588-2008 or IEEE1588-2019.

[0069] 7, the time difference correction unit 220 of the node 200 includes a parent node ID transmission unit 221, a time difference information transmission unit 222, and a correction value acquisition unit 223. However, the configuration is not limited to this as long as the operations described below are possible.

[0070] The parent node ID transmission unit 221 transmits the parent node ID of its own node to the GM node 100. In response to a request from the GM node 100, the parent node ID transmission unit 221 transmits the parent node ID of its own node to the GM node 100 by a management packet defined by the management function of IEEE1588-2008 or IEEE1588-2019.

[0071] The time difference information transmission unit 222 transmits the time difference information of its own node to the GM node 100. The time difference information is the time difference of the path between its own node and the parent node, measured by the time measurement unit 210. In response to a request from the GM node 100, the time difference information transmission unit 222 transmits the time difference information of its own node to the GM node 100 by a management packet specified by the management function of IEEE1588-2008 or IEEE1588-2019.

[0072] The correction value acquisition unit 223 acquires a time correction value for the time of its own node from the GM node 100. The correction value acquisition unit 223 acquires the time correction value for its own node from the GM node 100 using a management packet defined by the management function of IEEE1588-2008 or IEEE1588-2019, and corrects the time on the clock of its own node using the time correction value.

[0073] By implementing the functions described in Japanese Patent Nos. 6659057, 6198075, 7004392, and 4463153 in each node as described above, it is possible to achieve time correction on the order of picoseconds as the time difference detection accuracy between each time node. In other words, the distributed time synchronization system according to this embodiment makes it possible to constantly maintain the time difference between each node with an accuracy on the order of picoseconds. In a distributed time synchronization system, if time synchronization is always maintained, the system can be kept synchronized on the order of picoseconds. However, in this case, it is necessary to constantly operate a time synchronization protocol or rely on synchronization from satellites such as the Global Navigation Satellite System (GNSS), which imposes constraints on the time synchronization system in terms of "operation" and "power consumption."

[0074] On the other hand, distributed time synchronization systems synchronize time only once upon power-up, and then operate using the time generated by each node's small atomic oscillator. This eliminates the need for operation and maintenance specific to time synchronization (no need for periodic time adjustments using maintenance resources). This has led to the recent rise in interest in this time synchronization method. However, distributed time synchronization systems also have a problem: the time accuracy deteriorates over time due to the aging of the small atomic oscillators. Related distributed time synchronization systems vary, but what they all have in common is that they somehow detect the time difference between the reference node and each node and then correct that difference for each node. Specifically, one method is to measure the time at each node using GNSS or other means, and then correct the difference from the reference time using a dedicated protocol.

[0075] In this embodiment, the time between each node is measured periodically using IEEE 1588-2008 or IEEE 1588-2019, which is independent of climate and installation location. The measurement results are then transmitted and corrected using a management function implemented in the IEEE 1588-2008 or IEEE 1588-2019 standard. This allows time synchronization, time measurement, transmission, and time correction to be consolidated into a single protocol, eliminating the need for GNSS correction. This allows the system to operate completely independent of climate and installation location. Furthermore, by unifying the protocol into a single protocol, this distributed time synchronization system does not result in a deterioration in time accuracy due to increased load on the entire system. Furthermore, by unifying the protocol processing CPU, low power consumption is expected. No power supply is required except for the small atomic oscillator, which requires a constant power supply. This allows the system to be operated on battery power or solar power for systems that require constant power, such as "natural disaster and structural monitoring," where constant power is difficult to obtain.

[0076] An example of the operation of the distributed time synchronization system 1 will be described using Figures 8 to 10. Figure 8 shows the configuration of the nodes that execute this example of operation. In this example, for simplicity of explanation, only nodes O1, O4, W4, and W14 are shown from the configuration of Figure 5. Node O1 is the grand master, nodes O4 and W4 are slaves and current masters, and node W14 is a slave-only example. Figure 9 shows an example of the operation of correcting the time of node W14 in the configuration of Figure 8. Figure 10 shows a specific example of S109 in Figure 9. Note that the time can be corrected in a similar manner for other nodes, not just node W14.

[0077] In order to correct the time of each node in a distributed time synchronization system, time difference information between each node is required. In order to calculate the time difference information, each node in the distributed time synchronization system must be periodically time-synchronized with a certain reference node. There are various time synchronization protocols, but in this embodiment, IEEE1588-2008 or IEEE1588-2019 is used as the time synchronization protocol.

[0078] Furthermore, in order to synchronize time with the reference node, each node must first find the GM, which is its parent node. In a distributed time synchronization system, a GM exists, but there is no other node that manages all nodes. If there is a node that manages all nodes, it becomes a centralized time synchronization system. From the above, it is first necessary to find the GM in some way. As described above, this embodiment uses a management function that can be optionally implemented in IEEE 1588-2008 or IEEE 1588-2019, so multiple protocols are not used. This eliminates the need for multiple CPUs and peripherals, and reduces the power consumption of the entire system by approximately half, as there is no need to use multiple CPUs or peripherals, and there is no need to use multiple CPUs or peripherals, and the power consumption of the entire system can be reduced by approximately half. This makes it possible to run the system on a battery, for example, eliminating the need for a continuous power supply.

[0079] For this reason, in this embodiment, the time synchronization protocol, time difference detection protocol, and time difference correction protocol are unified into IEEE1588-2008 or IEEE1588-2019. IEEE1588-2008 and IEEE1588-2019 only have an interface for management functions and do not define specific uses. Therefore, using them for time correction in a distributed time synchronization system is outside the scope of the standard, and using the management function for time correction is not specified either.

[0080] In the configuration of Fig. 8, parent node information is acquired, time difference information is acquired, time correction values ​​between nodes are calculated, and the time correction values ​​are set to the nodes according to the sequence of Fig. 9. As shown in Fig. 8, the parent node ID and GM ID are set in advance for each node, and the time difference has been measured by time measurement. Note that the value of the time difference information for each node is an example.

[0081] In the example of FIG. 9, first, node O1 (GM) acquires parent node information from each node (S101 to S104). Specifically, node O1 (e.g., parent node ID acquisition unit 121) sends a management packet (PARENT_DS(GET)) to each node (S101) and acquires the parent node ID of each node and the GM ID in response. PARENT_DS(GET) is a management packet specified as a packet requesting acquisition of parent node information. For example, when slave-only node W14 (e.g., parent node ID transmission unit 221) receives a management packet (PARENT_DS(GET)) from node O1, it transmits the parent node ID (W4 of the current master) and the GM ID (O1) to node O1 in response to the management packet (S102). When the slave node W4 receives the management packet (PARENT_DS(GET)) from the node O1, it transmits the parent node ID (O4 of the current master) and the GM ID (O1) to the node O1 as a response to the management packet (S103). When the slave node O4 receives the management packet (PARENT_DS(GET)) from the node O1, it transmits the parent node ID (O1 of the GM) and the GM ID (O1) to the node O1 as a response to the management packet (S104).

[0082] Next, node O1 (GM) acquires time difference information from each node (S105 to S108). Specifically, node O1 (for example, the time difference information acquisition unit 122) sends a management packet (USER_DESCRIPTION (GET)) to each node (S105), and acquires the time difference information of each node as a response. USER_DESCRIPTION (GET) is a management packet defined as a packet that can request the acquisition of any information specified by the user, and in this example, it specifies that time difference information is requested. Node O1 requests the acquisition of time difference information from the node whose GM ID is O1. For example, when slave-only node W14 (e.g., time difference information transmitter 222) receives a management packet (USER_DESCRIPTION (GET)) from node O1, it transmits the W14-W4 time difference information (+1 nsec), which is the time difference from the current master W4, to node O1 as a response to the management packet (S106). When slave node W4 receives a management packet (USER_DESCRIPTION (GET)) from node O1, it transmits the W4-O4 time difference information (-2 nsec), which is the time difference from the current master O4, to node O1 as a response to the management packet (S107). When the slave node O4 receives the management packet (USER_DESCRIPTION (GET)) from node O1, it transmits the time difference information (+3 nsec) of O4-O1, which is the time difference between GM and O1, to node O1 as a response to the management packet (S108).

[0083] Next, the node O1 (GM) calculates the time correction value of each node based on the information acquired from each node (S109). In this example, the node O1 (GM) calculates the time correction value of the node W14.

[0084] 10, in the time correction value calculation process (S109), node O1 first calculates the time correction values ​​for nodes W14 and W4 (S201-S202). Specifically, node O1 (e.g., the correction value calculation unit 124) determines the time correction value for nodes W14 and W4 (S201). For example, node O1 sets the W14-W4 time difference information (+1 nsec) received from node W14 as the time correction value for nodes W14 and W4.

[0085] Furthermore, node O1 (e.g., the route determination unit 123) compares the received parent node ID (W4) of node W14 with the GM ID (O1) (S202). In this example, because the parent node ID (W4) of node W14 and the GM ID (O1) are different, node O1 determines that correction is necessary using a route that includes a higher-level path, and moves the process to calculating the correction value for the next route (W14-O4). In this case, the next route is the route from node W14 to the parent node (O4) of node W4.

[0086] Next, node O1 calculates the time correction value for node W14-O4 (S203-S204). Specifically, node O1 (e.g., correction value calculation unit 124) determines the time correction value for node W14-O4 (S203). For example, node O1 determines the time correction value for node W14-O4 by adding the W4-O4 time difference information (-2 nsec) received from node W4 to the time correction value for node W14-W4 calculated above. That is, the time correction value is calculated using the following formula:

[0087] Time difference information of W4-O4 (-2 nsec) + time correction value of W14-W4 (+1 nsec) = time correction value of W14-O4 route (-1 nsec)

[0088] Furthermore, node O1 (e.g., the route determination unit 123) compares the received parent node ID (O4) of node W4 with the GM ID (O1) (S204). In this example, because the parent node ID (O4) of node W4 and the GM ID (O1) are different, node O1 determines that correction is necessary using a route that includes a higher-level path, and moves the process to calculating the correction value for the next route (W14-O1). In this case, the next route is the route from node W14 to the parent node (O1) of node O4.

[0089] Next, node O1 calculates the time correction value for node W14-O1 (S205-S206). Specifically, node O1 (e.g., correction value calculation unit 124) determines the time correction value for node W14-O1 (S205). For example, node O1 determines the time correction value for node W14-O1 by adding the O4-O1 time difference information (+3 nsec) received from node O4 to the time correction value for node W14-O4 calculated above. That is, the time correction value is calculated using the following formula:

[0090] Time difference information between O4 and O1 (+3 nsec) + correction value between W14 and O4 (-1 nsec) = time correction value for the W14-O1 route (+2 nsec)

[0091] Furthermore, node O1 (e.g., the route determination unit 123) compares the parent node ID (O1) of node O4 with the ID (O1) of the GM (S206). In this example, since the parent node ID (O1) of node O4 and the ID (O1) of the GM are equal, node O1 determines the time correction value for node W14-O1 to be +2 nsec. As a result, the time difference at node W14 shown in FIG. 6 is set as the time correction value. Note that in this example, the route is determined after the time correction value is calculated, but the time correction value may also be calculated after the route is determined.

[0092] As shown in FIG. 9 , following the calculation of the time correction value for each node (S109), node O1 (GM) transmits and sets the time correction value to each node (S110). In this example, the time of node W14 is corrected. For example, node O1 (e.g., the correction value setting unit 125) transmits a management packet (USER_DESCRIPTION(SET)) with a correction value of +2 nsec to node W14 (S110). USER_DESCRIPTION(SET) is a management packet defined as a packet that can request the setting of any information specified by the user, and in this example, it specifies that a time correction value be set. When node W14 (e.g., the correction value acquisition unit 223) receives the management packet (USER_DESCRIPTION(SET)) from node O1, it corrects the time of node W14 by +2 nsec. For other nodes other than node W14, the time difference of each node shown in FIG. 6 is calculated by the same operation, and the time correction value is used to correct the time of each node.

[0093] As described above, in this embodiment, the distributed time synchronization system measures the time difference between each node and corrects the time at each node based on the measured time difference, thereby enabling autonomous time correction. For example, the time at each node can be reliably corrected by acquiring parent node information, acquiring time difference information, calculating time correction values ​​between nodes, and setting the time correction values ​​at the nodes. Furthermore, by implementing the functions described in Japanese Patent Nos. 6659057, 6198075, 7004392, and 4463153 in each node in the distributed time synchronization system, time can be measured with high accuracy and time correction accuracy can be achieved on the order of picoseconds. Furthermore, by using the same protocol for the time measurement protocol and the time difference correction protocol in the distributed time synchronization system, power consumption can be reduced to approximately half or less of that of the related distributed time synchronization system. This allows for power supply using batteries or solar power, allowing nodes to be installed over a wide area.

[0094] The present disclosure is not limited to the above-described embodiment, and can be modified as appropriate within the scope of the present disclosure.

[0095] Each component in the above-described embodiment may be configured with hardware or software, or both, and may be configured with one piece of hardware or software, or may be configured with multiple pieces of hardware or software. Each device and each function (processing) such as a GM node or node may be realized by a computer 30 having a processor 31 such as a CPU and a memory 32 which is a storage device, as shown in FIG. 11. For example, a program for performing the method in the embodiment (time synchronization method) may be stored in the memory 32, and each function may be realized by executing the program stored in the memory 32 by the processor 31.

[0096] These programs include instructions (or software code) that, when loaded into a computer, cause the computer to perform one or more functions described in the embodiments. The programs may be stored on a non-transitory computer-readable medium or a tangible storage medium. By way of example and not limitation, computer-readable media or tangible storage media include random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD) or other memory technology, CD-ROM, digital versatile disc (DVD), Blu-ray disc or other optical disk storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device. The programs may also be transmitted on a transitory computer-readable medium or communication medium. By way of example and not limitation, transitory computer-readable media or communication media include electrical, optical, acoustic, or other forms of propagated signals.

[0097] Although the present disclosure has been described above with reference to the embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, each embodiment can be combined with other embodiments as appropriate.

[0098] Each drawing is merely an example for describing one or more embodiments. Each drawing may not relate to only one particular embodiment, but may also relate to one or more other embodiments. As will be understood by those skilled in the art, various features or steps described with reference to any one drawing can be combined with features or steps shown in one or more other drawings to create, for example, an embodiment not explicitly shown or described. Not all features or steps shown in any one drawing are necessary to describe an exemplary embodiment, and some features or steps may be omitted. The order of steps described in any drawing may be changed as appropriate.

[0099] Some or all of the above embodiments can be described as, but are not limited to, the following supplementary notes. (Supplementary Note 1) A grandmaster device in a distributed time synchronization system, comprising: acquisition means for acquiring identification information and time difference information of a parent node device of each node device from each node device in the distributed time synchronization system; determination means for determining a route from the grandmaster device to each node device based on the acquired identification information of the parent node device; calculation means for calculating a time correction value for each node device based on the route determination result and the acquired time difference information; and setting means for setting the calculated time correction value in each node device. (Supplementary Note 2) The grandmaster device according to Supplementary Note 1, wherein the acquisition means acquires the identification information of the parent node device and the time difference information from each node device using a predetermined time difference correction protocol, and the setting means sets the time correction value in each node device using the time difference correction protocol. (Supplementary Note 3) The grandmaster apparatus according to Supplementary Note 2, wherein the acquisition means transmits a request to each of the node devices to acquire the identification information of the parent node device and the time difference information by means of a management packet defined by the time difference correction protocol, and receives the identification information of the parent node device and the time difference information from each of the node devices by means of the management packet, and the setting means transmits the time correction value to each of the node devices by means of the management packet. (Supplementary Note 4) The grandmaster apparatus according to Supplementary Note 2 or 3, wherein the time difference correction protocol is the same protocol as a time measurement protocol that measures time in each of the node devices. (Supplementary Note 5) The grandmaster apparatus according to Supplementary Note 4, wherein the time difference correction protocol and the time measurement protocol are implemented in the same processor. (Supplementary Note 6) The grandmaster apparatus according to any one of Supplements 1 to 5, wherein the determination means compares the identification information of the parent node device with the identification information of the grandmaster apparatus, and the calculation means calculates a time correction value for a route selected based on a result of the comparison.(Supplementary Note 7) The grandmaster apparatus of Supplementary Note 6, wherein the time difference information of each node device indicates a time difference of a path between each node device and a parent node device, and the calculation means accumulates time differences of paths in the selected route. (Supplementary Note 8) The grandmaster apparatus of any one of Supplements 1 to 7, wherein wired or wireless communication is possible. (Supplementary Note 9) A node apparatus in a distributed time synchronization system, comprising: a transmission means that transmits identification information and time difference information of a parent node device of the node apparatus to a grandmaster apparatus in the distributed time synchronization system, and a correction means that acquires a time correction value of the node apparatus from the grandmaster apparatus and corrects the time using the acquired time correction value. (Supplementary Note 10) The node apparatus of Supplementary Note 9, wherein the transmission means transmits the identification information of the parent node device and the time difference information to the grandmaster apparatus using a predetermined time difference correction protocol, and the correction means acquires the time correction value from the grandmaster apparatus using the time difference correction protocol. (Supplementary Note 11) The node device according to Supplementary Note 10, wherein the transmitting means receives a request to acquire identification information of the parent node device and the time difference information from the grandmaster device by a management packet defined by the time difference correction protocol, and transmits the identification information of the parent node device and the time difference information to the grandmaster device by the management packet, and the correction means receives the time correction value from the grandmaster device by the management packet. (Supplementary Note 12) The node device according to Supplementary Note 10 or 11, wherein the time difference correction protocol is the same protocol as a time measurement protocol that measures time in the node device. (Supplementary Note 13) The node device according to Supplementary Note 12, wherein the time difference correction protocol and the time measurement protocol are implemented in the same processor. (Supplementary Note 14) The node device according to any one of Supplements 9 to 13, wherein wired or wireless communication is possible.(Supplementary Note 15) A distributed time synchronization system comprising a grandmaster device and a plurality of node devices, wherein the grandmaster device comprises: acquisition means for acquiring, from each node device of the plurality of node devices, identification information and time difference information of a parent node device of each of the node devices; determination means for determining a route from the grandmaster device to each of the node devices based on the acquired identification information of the parent node device; calculation means for calculating a time correction value for each of the node devices based on the route determination result and the acquired time difference information; and setting means for setting the calculated time correction value in each of the node devices, wherein each of the node devices comprises: transmission means for transmitting the identification information of the parent node device and the time difference information to the grandmaster device; and correction means for acquiring the time correction value from the grandmaster device and correcting the time using the acquired time correction value. (Supplementary Note 16) The distributed time synchronization system according to Supplementary Note 15, wherein the transmitting means transmits identification information of the parent node device and the time difference information to the grandmaster device using a predetermined time difference correction protocol, the acquiring means acquires the identification information of the parent node device and the time difference information from each of the node devices using the time difference correction protocol, the setting means transmits the time correction value to each of the node devices using the time difference correction protocol, and the correcting means acquires the time correction value from the grandmaster device using the time difference correction protocol. (Supplementary Note 17) A time synchronization method in a grandmaster device of a distributed time synchronization system, comprising: acquiring identification information and time difference information of a parent node device of each of the node devices from each of the node devices in the distributed time synchronization system, determining a route from the grandmaster device to each of the node devices based on the acquired identification information of the parent node device, calculating a time correction value for each of the node devices based on the route determination result and the acquired time difference information, and setting the calculated time correction value in each of the node devices.(Supplementary Note 18) A time synchronization method in a node device of a distributed time synchronization system, comprising: transmitting identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system, obtaining a time correction value for the node device from the grandmaster device, and correcting the time using the obtained time correction value. (Supplementary Note 19) A program for causing a computer to execute the time synchronization method in a grandmaster device of a distributed time synchronization system, the time synchronization method comprising: obtaining, from each node device in the distributed time synchronization system, identification information and time difference information of the parent node device of each node device, determining a route from the grandmaster device to each node device based on the obtained identification information of the parent node device, calculating a time correction value for each node device based on the route determination result and the obtained time difference information, and setting the calculated time correction value in each node device. (Supplementary Note 20) A program for causing a computer to execute a time synchronization method in a node device of a distributed time synchronization system, the time synchronization method comprising: transmitting identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system; acquiring a time correction value of the node device from the grandmaster device; and correcting the time using the acquired time correction value.

[0100] Some or all of the elements (e.g., configurations and functions) described in Supplementary Notes 2 to 8 that are subordinate to Supplementary Note 1 (grandmaster device) may also be subordinate to Supplementary Note 9 (node ​​device), Supplementary Note 15 (distributed time synchronization system), Supplements 17 and 18 (time synchronization method), and Supplements 19 and 20 (program) in the same subordinate relationship as Supplementary Notes 2 to 8. Some or all of the elements described in any Supplementary Note may be applied to various hardware, software, recording means for recording software, systems, and methods.

[0101] 1 Distributed time synchronization system 10 Grand master 11 Acquisition unit 12 Determination unit 13 Calculation unit 14 Setting unit 20 Node 21 Transmission unit 22 Correction unit 30 Computer 31 Processor 32 Memory 100 GM node 110 Time measurement unit 120 Time difference correction unit 121 Parent node ID acquisition unit 122 Time difference information acquisition unit 123 Path determination unit 124 Correction value calculation unit 125 Correction value setting unit 200 Node 210 Time measurement unit 220 Time difference correction unit 221 Parent node ID transmission unit 222 Time difference information transmission unit 223 Correction value acquisition unit O1 to O4, W1 to W4, W11 to W14 Nodes

Claims

1. A grandmaster device in a distributed time synchronization system, comprising: an acquisition means for acquiring identification information and time difference information of a parent node device of each node device in the distributed time synchronization system; a determination means for determining a route from the grandmaster device to each node device based on the acquired identification information of the parent node device; a calculation means for calculating a time correction value for each node device based on the route determination result and the acquired time difference information; and a setting means for setting the calculated time correction value in each node device.

2. The grandmaster device according to claim 1, wherein the acquisition means acquires the identification information of the parent node device and the time difference information from each of the node devices using a predetermined time difference correction protocol, and the setting means sets the time correction value in each of the node devices using the time difference correction protocol.

3. The grandmaster device according to claim 2, wherein the acquisition means transmits a request to each of the node devices to acquire the identification information of the parent node device and the time difference information by means of a management packet specified by the time difference correction protocol, and receives the identification information of the parent node device and the time difference information from each of the node devices by means of the management packet, and the setting means transmits the time correction value to each of the node devices by means of the management packet.

4. The grandmaster device according to claim 2 or 3, wherein the time difference correction protocol is the same as a time measurement protocol for measuring time in each of the node devices.

5. The grandmaster device according to claim 4, wherein the time difference correction protocol and the time measurement protocol are implemented in the same processor.

6. A grandmaster device according to any one of claims 1 to 5, wherein the determination means compares identification information of the parent node device with identification information of the grandmaster device, and the calculation means calculates a time correction value for a route selected based on the result of the comparison.

7. The grandmaster device according to claim 6, wherein the time difference information of each node device indicates a time difference of a path between each node device and a parent node device, and the calculation means accumulates the time differences of the paths in the selected route.

8. A grandmaster device according to any one of claims 1 to 7, capable of wired or wireless communication.

9. A node device in a distributed time synchronization system, comprising: a transmitting means for transmitting identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system; and a correcting means for acquiring a time correction value of the node device from the grandmaster device and correcting the time using the acquired time correction value.

10. The node device according to claim 9, wherein the transmitting means transmits identification information of the parent node device and the time difference information to the grandmaster device using a predetermined time difference correction protocol, and the correction means obtains the time correction value from the grandmaster device using the time difference correction protocol.

11. The node device according to claim 10, wherein the transmitting means receives a request to acquire the identification information of the parent node device and the time difference information from the grandmaster device by means of a management packet specified in the time difference correction protocol, and transmits the identification information of the parent node device and the time difference information to the grandmaster device by means of the management packet, and the correction means receives the time correction value from the grandmaster device by means of the management packet.

12. The node device according to claim 10 or 11, wherein the time difference correction protocol is the same as a time measurement protocol for measuring time in the node device.

13. The node device according to claim 12, wherein the time difference correction protocol and the time measurement protocol are implemented in the same processor.

14. A node device according to any one of claims 9 to 13, capable of wired or wireless communication.

15. A distributed time synchronization system comprising a grandmaster device and a plurality of node devices, wherein the grandmaster device comprises: acquisition means for acquiring, from each node device of the plurality of node devices, identification information and time difference information of a parent node device of each of the plurality of node devices; determination means for determining a route from the grandmaster device to each of the node devices based on the acquired identification information of the parent node device; calculation means for calculating a time correction value for each of the node devices based on the route determination result and the acquired time difference information; and setting means for setting the calculated time correction value in each of the node devices; and each of the node devices comprises: transmission means for transmitting the identification information of the parent node device and the time difference information to the grandmaster device; and correction means for acquiring the time correction value from the grandmaster device and correcting the time using the acquired time correction value.

16. The distributed time synchronization system described in claim 15, wherein the transmitting means transmits identification information of the parent node device and the time difference information to the grandmaster device using a predetermined time difference correction protocol; the acquiring means acquires identification information of the parent node device and the time difference information from each node device using the time difference correction protocol; the setting means transmits the time correction value to each node device using the time difference correction protocol; and the correction means acquires the time correction value from the grandmaster device using the time difference correction protocol.

17. A time synchronization method in a grandmaster device of a distributed time synchronization system, comprising the steps of: acquiring identification information and time difference information of a parent node device of each node device in the distributed time synchronization system; determining a route from the grandmaster device to each node device based on the acquired identification information of the parent node device; calculating a time correction value for each node device based on the route determination result and the acquired time difference information; and setting the calculated time correction value in each node device.

18. A time synchronization method for a node device in a distributed time synchronization system, comprising: transmitting identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system; obtaining a time correction value for the node device from the grandmaster device; and correcting the time using the obtained time correction value.

19. A program for causing a computer to execute a time synchronization method in a grandmaster device of a distributed time synchronization system, the time synchronization method comprising: acquiring identification information and time difference information of a parent node device of each node device in the distributed time synchronization system from the node device; determining a route from the grandmaster device to each node device based on the acquired identification information of the parent node device; calculating a time correction value for each node device based on the route determination result and the acquired time difference information; and setting the calculated time correction value in each node device.

20. A program for causing a computer to execute a time synchronization method in a node device of a distributed time synchronization system, the time synchronization method comprising: transmitting identification information and time difference information of a parent node device of the node device to a grandmaster device in the distributed time synchronization system; obtaining a time correction value for the node device from the grandmaster device; and correcting the time using the obtained time correction value.

Citation Information

Patent Citations

  • Time synchronization system, method of correcting delay time of transmission line, and time synchronization device

    JP2014106188A

  • Communication system, master device, slave device, and submaster device

    WO2020213190A1