WO2021240783A1 - 時刻補正装置、時刻補正方法及び時刻補正プログラム - Google Patents
時刻補正装置、時刻補正方法及び時刻補正プログラム Download PDFInfo
- Publication number
- WO2021240783A1 WO2021240783A1 PCT/JP2020/021347 JP2020021347W WO2021240783A1 WO 2021240783 A1 WO2021240783 A1 WO 2021240783A1 JP 2020021347 W JP2020021347 W JP 2020021347W WO 2021240783 A1 WO2021240783 A1 WO 2021240783A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- time
- frequency deviation
- correction amount
- time correction
- synchronization
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
-
- G—PHYSICS
- G04—HOROLOGY
- G04G—ELECTRONIC TIME-PIECES
- G04G5/00—Setting, i.e. correcting or changing, the time-indication
Definitions
- Patent Document 1 discloses a technique for correcting a time lag due to a frequency deviation.
- One of the main purposes of this disclosure is to solve the above problems. More specifically, it is a main object of the present disclosure to enable time correction according to the fluctuating frequency deviation when the frequency deviation fluctuates.
- FIG. 3 shows the internal structure example of the learning part which realizes the time correction method (3-a) which concerns on Embodiment 3.
- FIG. 3 shows the internal structure example of the learning part which realizes the time correction method (3-b) which concerns on Embodiment 3.
- FIG. 3 shows the estimation of the time correction amount which concerns on Embodiment 3.
- the slave device transmits a Pdeli_Req frame to the grand master device.
- the ground master device sends a Pdeli_Resp frame to the slave device in response to the Pdeli_Req frame.
- the grand master apparatus acquires a time stamp (T3 free (0)) at the time of transmission of the Pdeli_Resp frame.
- the slave device receives the Pdeli_Resp frame. Further, the slave device acquires a time stamp (T4 free (0)) at the time of receiving the Pdelay_Resp frame.
- the grand master device stores the time stamp information of T3 free (0) in the PDlayResp_Follow_Up frame, and transmits the PdeliResp_Follow_Up frame to the slave device (in FIG. 28, the transmission of the PdeliResp_Follow_Up frame is omitted).
- the slave device From the time stamp (T3 free (N)) at the time of transmission of the frame of Pdeli_Resp after N cycles from the above (a) and the time stamp at the time of reception (T4 free (N)), the slave device has the following equation 1 (Strictly speaking, R is a frequency deviation ratio, and is defined as RateRatio in IEEE 802.1AS).
- the grand master apparatus acquires a time stamp (T3 free (N)) at the time of transmission of the Pdelay_Resp frame.
- the slave device receives the Pdelay_Resp frame and acquires the time stamp (T4 free (N)) at the time of receiving the Pdelay_Resp frame.
- the grand master device stores the time stamp information of T3 free (N) in the Pdeli_Resp_Follow_Up frame, and transmits the Pdelay_Resp_Follow_Up frame to the slave device (in FIG. 28, the transmission of the PdeliResp_Follow_Up frame is omitted).
- the slave device receives the Pdelay_Resp_Follow_Up frame and acquires the time stamp information of T3 free (N).
- the slave device calculates the propagation delay time D by the following equation 2.
- the grand master device transmits a Sync frame and acquires a time stamp (T5 time (N)) at the time of transmitting the Sync frame.
- the slave device receives the Sync frame and acquires the time stamp (T6 time (N)) at the time of receiving the Sync frame.
- the grand master device stores the time stamp information of T5 time (N) in the Follow_Up frame, and transmits the Follow_Up frame to the slave device (the illustration of the transmission of the Follow_Up frame is omitted in FIG. 28).
- the slave device receives the Follow_Up frame and acquires the time stamp information of the T5 time (N).
- the time lag between the grand master device and the slave device is mainly caused by "D + R ⁇ (T time, sync- T6 time (N)) of Equation 3. That is, the slave device is self-propelled. There will be a time lag while you are there.
- the frequency deviation is calculated using the time stamps of N cycles (integer of N ⁇ 1) acquired by Pdelay_Req frame and Pdelay_Resp. Therefore, in FIG. 28, the frequency deviation measurement cycle INT RR is an integral multiple of the Pdeli_Req transmission cycle INT PD.
- INT RR INT PD x N (integer of N ⁇ 1)
- the frequency deviation calculation cycle described later has the same length as the Pdelay_Req transmission cycle INT PD.
- the frequency deviation calculation cycle is not defined in the standard.
- the relationship between the frequency deviation measurement cycle and the frequency calculation cycle is shown in FIG.
- the time stamp used in the frequency deviation measurement is acquired for each Pdelay_Req transmission cycle, and the frequency deviation is calculated from the latest value and the time stamp N cycles before. Therefore, the frequency deviation itself is calculated every Pdelay_Req transmission cycle (frequency deviation calculation cycle).
- FIG. 1 shows an example of the time synchronization system 1000 according to the present embodiment.
- the time synchronization system 1000 is composed of a grand master device 100 and a slave device 200.
- the ground master device 100 serves as a reference for time synchronization.
- the grand master device 100 carries out time distribution.
- the ground master device 100 corresponds to a synchronization reference device.
- the slave device 200 synchronizes with the grand master device 100 in time.
- the slave device 200 corresponds to a time synchronization device.
- the grand master device 100 is a computer.
- the grand master device 100 may be a non-control use device such as a switch dedicated to time synchronization, a terminal dedicated to time synchronization, an IC (Integrated Circuit) chip dedicated to time synchronization, and a general-purpose PC (Personal Computer). ..
- the grand master device 100 may be a control device such as a PLC (Programmable Logic Controller) or a motion controller.
- the slave device 200 is also a computer.
- the slave device 200 may be a non-control use device such as a switch dedicated to time synchronization, a terminal dedicated to time synchronization, an IC chip dedicated to time synchronization, or a general-purpose PC.
- the slave device 200 may be a control device such as a PLC or a motion controller.
- FIG. 2 shows an example of the hardware configuration of the slave device 200.
- the slave device 200 includes a processor 901, a main storage device 902, an auxiliary storage device 903, and a communication device 904 as hardware. Further, the slave device 200 includes a communication unit 201, a control unit 202, a time management unit 203, a frequency deviation change rate calculation unit 204, a time correction amount calculation unit 205, and a time correction unit 206, which will be described later, as functional configurations.
- the auxiliary storage device 903 stores a program that realizes the functions of the communication unit 201, the control unit 202, the time management unit 203, the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, and the time correction unit 206. .. These programs are loaded from the auxiliary storage device 903 into the main storage device 902.
- the processor 901 executes these programs to operate the communication unit 201, the control unit 202, the time management unit 203, the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, and the time correction unit 206, which will be described later. ..
- the processor 901 executes a program that realizes the functions of the communication unit 201, the control unit 202, the time management unit 203, the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, and the time correction unit 206.
- the state is schematically represented.
- FIG. 3 shows an example of the functional configuration of the slave device 200 according to the present embodiment.
- the communication unit 201 uses the communication device 904 to transmit and receive the communication frame described with reference to FIG. 28, such as transmission of the Pdeli_Req frame and reception of the Pdeli_Resp frame.
- the communication frame used for time synchronization described with reference to FIG. 28 is referred to as a time synchronization frame.
- the control unit 202 controls the operation of the slave device 200. Specifically, the control unit 202 generates a time synchronization frame to be transmitted to the grand master device 100 such as a Pdeli_Req frame. Further, the control unit 202 processes the time synchronization frame received from the grand master device 100 such as the Pdeli_Resp frame. Further, the control unit 202 manages the time stamp.
- the time management unit 203 manages the free run counter 2031 and the time counter 2032.
- the free run counter 2031 and the time counter 2032 are the same as those described with reference to FIG. 28.
- the frequency deviation change rate calculation unit 204 calculates the frequency deviation and the frequency deviation change rate.
- the frequency deviation rate of change is the rate of change of the frequency deviation per unit time. This frequency deviation is the deviation between the clock frequency of the ground master device 100 and the clock frequency of the slave device 200.
- the process performed by the frequency deviation change rate calculation unit 204 corresponds to the frequency deviation change rate calculation process.
- the time correction amount calculation unit 205 calculates the time correction amount for correcting the time of the slave device 200 by time-integrating the frequency deviation. That is, the time correction amount calculation unit 205 calculates the time correction amount for correcting the value of the time counter 2032. The process performed by the time correction amount calculation unit 205 corresponds to the correction amount calculation process.
- the time correction unit 206 corrects the time of the slave device 200 by using the time correction amount calculated by the time correction amount calculation unit 205. More specifically, the time correction unit 206 corrects the time of the slave device 200 by subtracting the time correction amount from the counter value of the time counter 2032, which is the internal time of the slave device 200. The process performed by the time correction unit 206 corresponds to the time correction process.
- the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, and the time correction unit 206 constitute the time correction device 300.
- the operation procedure of the time correction device 300 corresponds to the time synchronization method.
- the program that realizes the operation of the time correction device 300 corresponds to the time synchronization program.
- the frequency deviation change rate calculation unit 204 periodically calculates the frequency deviation between the clock frequency of the ground master device 100 and the clock frequency of the slave device 200, and periodically calculates the frequency deviation change rate. calculate. Further, in the present embodiment, the time correction amount calculation unit 205 calculates the time correction amount for correcting the time deviation due to the frequency change as the time integral value of the frequency deviation change rate. Then, the time correction unit 206 performs time correction using the time correction amount.
- the frequency deviation change rate calculation unit 204 calculates the frequency deviation using the protocol of IEEE1588 or IEEE802.1AS, and uses the calculated frequency deviation value as the main storage device 902 or the auxiliary storage device 903. Store in. Further, the frequency deviation change rate calculation unit 204 calculates the frequency deviation change rate from the frequency deviation before the past N cycles.
- (B) Time correction The frequency deviation rate of change can be expressed in units of ppm / s. Assuming that the frequency deviation rate of change is P'(s) [ppm / s], the value of the time counter 2032 when the absolute time t seconds has elapsed is the time of p'(t) ⁇ t as shown in Equation 4 below. It can be expressed as an integral.
- the time correction amount calculation unit 205 uses the elapsed time T from the Sync reception time (or the average Sync reception time) in addition to the correction amount for correcting the time deviation due to the fixed deviation, and uses the following time correction amount T as follows. From Equation 5, the correction amount ⁇ C p' (t) corresponding to the time transition of the frequency deviation between the ground master device 100 and the slave device 200 is calculated. The correction amount ⁇ C p' (t) corresponds to the second correction amount.
- an example of calculating the second correction amount by the formula 5 is shown.
- the time correction amount calculation unit is shown in the formula 4.
- the correction amount ⁇ C p' (t) is calculated by performing the time integration of the frequency deviation change rate. Further, even if the frequency change can be regarded as a monotonous increase, in order to perform highly accurate time correction, the time correction amount calculation unit 205 performs time integration of the frequency deviation change rate as shown in Equation 4, and corrects the amount. ⁇ C p' (t) may be calculated.
- FIG. 4 shows an operation example of the slave device 200 according to the present embodiment.
- FIG. 5 shows a specific example of the time correction method according to the present embodiment.
- the frequency deviation change rate calculation unit 204 calculates the frequency deviation P (1) (step S401). More specifically, the frequency deviation change rate calculation unit 204 has a frequency deviation P of the clock frequency between the ground master device 100 and the slave device 200 in the section of the frequency deviation measurement cycle INT RR (1) shown in FIG. 1) is calculated according to Equation 6.
- the frequency deviation change rate calculation unit 204 calculates TRR, M (1) and TRR, S (1) in Equation 6 according to the same procedure as that described with reference to FIG. 28, for example.
- T RR and M (1) are the time for INT RR (1) measured by the master
- T RR and S (1) are the time for INT RR (1) measured by the slave.
- the ratio of time advance between master and slave is calculated by the following formula.
- the frequency deviation change rate calculation unit 204 calculates the frequency deviation P (2) (step S402). That is, the frequency deviation change rate calculation unit 204 formulates the frequency deviation P (2) of the clock frequency between the ground master device 100 and the slave device 200 in the section of the frequency deviation measurement cycle INT RR (2) shown in FIG. Calculate according to 7. As in the case of the equation 6, the frequency deviation rate of change calculation unit 204 may, for example, follow the same procedure as that described with reference to FIG. 28 for the TRR, M (2) and TRR, S (2) in the equation 6. ) Is calculated. T RR, M (2) is the time for INT RR (2) measured by the master, and T RR, S (2) is the time for INT RR (2) measured by the slave.
- the frequency deviation change rate calculation unit 204 formulates the frequency deviation change rate P'(t) using the frequency deviation P (1) calculated in step S401 and the frequency deviation P (2) calculated in step S402. Calculated in step 8 (step S403).
- the frequency deviation calculation cycle INT PD (*) also serves as the Pdeli_Req transmission cycle.
- INT Sync (*) is a Sync transmission cycle as shown in FIG. 28.
- the Sync transmission cycle corresponds to the time synchronization frame transmission cycle.
- the frequency deviation change rate calculation unit 204 calculates the Sync reception time Cs , rx (2) (step S404). Specifically, the communication unit 201 receives a Sync frame, which is a time distribution frame, from the grand master device 100. Then, the frequency deviation change rate calculation unit 204 calculates the Sync reception time Cs, rx (2) by the equation 9 based on the transmission time of the Sync frame in the grand master device 100 notified by the Sync frame. In Equation 9, D represents the propagation delay time, and C m and tx (2) are the transmission times of the Sync frames in the Grand Master device 100 notified by the Sync frames.
- the time correction amount calculation unit 205 calculates the time correction amount ⁇ C (t) (step S405). Specifically, the time correction amount calculation unit 205 calculates ⁇ C p (t) according to the equation 10. Further, the time correction amount calculation unit 205 calculates ⁇ C p' (t) according to the equation 5.
- ⁇ C p (t) is a correction amount corresponding to a time lag due to a fixed frequency deviation between the ground master device 100 and the slave device 200.
- ⁇ C p (t) corresponds to the first correction amount.
- ⁇ C p' (t) is a correction amount for correcting the time lag due to the frequency change, and corresponds to the second correction amount.
- ⁇ C p' (t) is obtained by Equation 5.
- the time correction amount calculation unit 205 adds ⁇ C p (t) and ⁇ C p' (t), and finally corrects the time counter 2032 by the time correction amount ⁇ C. (T) is calculated.
- the time correction amount ⁇ C (t) is a value for correcting the time deviation amount from the reception of the Sync frame to the time correction in step S406 described later.
- the frequency deviation change rate calculation unit 204 calculates the frequency deviation change rate according to the Sync transmission cycle, which is the time synchronization frame transmission cycle. Further, the time correction amount calculation unit 205 calculates ⁇ C p (t) and ⁇ C p' (t) according to the Sync transmission cycle.
- the time correction unit 206 corrects the time using the correction amount ⁇ C (t) (step S406). Specifically, the time correction unit 206 corrects the counter value of the time counter 2032 using the correction amount ⁇ C (t) as follows.
- Tm is a counter value of the free run counter of the grand master device 100, which corresponds to the time from the transmission of the Sync frame by the grand master device 100 to the time synchronization by the time correction unit 206.
- the time correction unit 206 subtracts the value of the time correction amount ⁇ C (t) from the time CS, before (2) in the time counter 2032 after T [s]. This makes it possible to synchronize the time counter 2032 with the time counter of the grand master device 100.
- CS after (2) is the counter value of the time counter 2032 at the time of time synchronization.
- Cm (2) is a counter value of the time counter of the grand master device 100 to be time-synchronized by the time correction unit 206.
- the time can be corrected according to the fluctuating frequency deviation. Therefore, according to the present embodiment, it is possible to reduce the influence of the frequency change even in an environment where the frequency change is drastic. Further, according to the present embodiment, it is possible to increase the number of times of averaging the jitter by reducing the influence of the frequency change. Therefore, the time lag due to jitter can be reduced. In a large-scale network in which a large number of slave devices are connected, it is conceivable that the time lag due to the influence of frequency changes and the time lag due to jitter will accumulate. According to this embodiment, even in such a large-scale network, highly accurate time synchronization can be realized by reducing the influence of frequency change.
- the time correction device 300 exists in the slave device 200
- the time correction device 300 exists in the grand master device 100.
- the node that operates as the grand master device 100 is determined by arbitration, so it is not determined which node operates as the grand master device 100 until the arbitration converges. Therefore, the time correction device 300 exists not only in the node operating as the slave device 200 but also in the node operating as the grand master device 100. Until the node operating as the ground master device 100 is designated as the ground master device 100, the time correction device 300 can correct the frequency deviation of the node.
- Embodiment 2 an example of machine learning the time transition of the frequency deviation change rate by utilizing AI (Artificial Intelligence) and performing time correction based on the machine learning result will be described.
- AI Artificial Intelligence
- the differences from the first embodiment will be mainly described. Further, the matters not described below are the same as those in the first embodiment.
- the configuration example of the time synchronization system 1000 is as shown in FIG.
- the frequency deviation can be predicted to change with time depending on the operating environment of the slave device 200. For example, when the slave device 200 operates in a normal temperature environment (when the control such that the slave device 200 generates heat is not performed), the temperature change is minute and the state of the slave device 200 is stable. On the other hand, when the slave device 200 is started up, the temperature of the crystal oscillator rises monotonically. In the former operating environment, sufficient time synchronization can be realized by the time synchronization protocol of IEEE 802.1AS or IEEE 1588. On the other hand, in the latter operating environment, it is difficult to perform sufficient time synchronization with the IEEE 802.1AS or IEEE 1588 time synchronization protocol.
- the frequency deviation also rises or falls sharply.
- the phenomenon that the temperature rises or falls sharply is considered to be caused by the control of equipment or equipment. If the cause of the sudden rise or fall in temperature is the control of equipment or equipment, it can be expected that the phenomenon of sudden rise or fall in temperature will occur periodically. Alternatively, it can be expected that a rapid rise or fall in temperature will occur starting from a certain control operation. Therefore, the slave device 200 according to the present embodiment learns the periodicity of the frequency deviation or the sign that the frequency suddenly fluctuates by using the neural network, and further learns the correction amount for the time correction.
- the slave device 200 uses "(2-a) a method of detecting the time periodicity of the frequency deviation and correcting the time” and "(2-b) the time transition of the frequency deviation” as the machine learning method. Perform one of the methods of detecting the feature amount and correcting the time.
- the “(2-a) method of detecting the time periodicity of the frequency deviation and correcting the time” is referred to as a time correction method (2-a).
- the “(2-b) method of detecting the feature amount of the time transition of the frequency deviation and correcting the time” is referred to as the time correction method (2-b).
- the time synchronization AI mounted on the slave device 200 learns the characteristics of the frequency deviation in the learning phase and calculates the time correction amount. .. Further, the slave device 200 performs time correction with the time correction amount obtained by learning the time synchronization AI in the utilization phase.
- FIG. 6 shows an example of a functional configuration of the slave device 200 according to the present embodiment.
- An example of the hardware configuration of the slave device 200 according to the present embodiment is as shown in FIG.
- the function of the learning unit 207 which will be described later, is also realized by the program, and the program that realizes the function of the learning unit 207 is also executed by the processor 901.
- the learning unit 207 is added.
- the other elements of FIG. 6 are the same as those shown in FIG.
- the time correction unit 206 and the learning unit 207 correspond to the time correction device 300.
- the learning unit 207 is a time synchronization AI.
- the learning unit 207 learns the time transition of the frequency deviation in the learning phase. That is, the learning unit 207 learns the time transition of the frequency deviation between the clock frequency of the grand master device 100 and the clock frequency of the slave device 200. Then, the learning unit 207 extracts the pattern of the time transition of the frequency deviation as the frequency deviation pattern, and calculates the frequency deviation change rate in the frequency deviation pattern. Further, the learning unit 207 time-integrates the product of the frequency deviation change rate and the time and the frequency deviation at the specified timing to calculate the time correction amount used for the time correction of the slave device 200. When the time correction method (2-a) is performed, the learning unit 207 learns the periodicity of the pattern of the time transition of the frequency deviation.
- the learning unit 207 estimates the start timing of the frequency deviation pattern as the specified timing. Then, the learning unit 207 calculates the time correction amount by time-integrating the product of the frequency deviation change rate and time and the frequency deviation at the start timing of the frequency deviation pattern. Further, when the time correction method (2-b) is performed, the learning unit 207 learns the relationship between the time transition pattern of the frequency deviation (frequency deviation pattern) and the control to the slave device 200, and the frequency deviation suddenly increases. Estimate the sign of change to. That is, the learning unit 207 extracts the pattern of the time transition in which the frequency deviation change rate changes abruptly as the frequency deviation pattern, and estimates the sign that occurs before the frequency deviation pattern occurs. Further, the learning unit 207 estimates the sign detection timing as the specified timing, and calculates the time correction amount by time-integrating the product of the frequency deviation change rate and the time and the frequency deviation at the sign detection timing.
- the time correction unit 206 corrects the time by using the correction amount generated by the learning unit 207 in the utilization phase.
- the time correction unit 206 corrects the time by using the time correction amount generated by the learning unit 207 when the start timing of the frequency deviation pattern arrives.
- the time correction unit 206 corrects the time by using the time correction amount generated by the learning unit 207 when a sign is detected.
- the time correction amount calculation unit 205 calculates the time correction amount as in the first embodiment. Similarly, when the time correction method (2-b) is performed and no sign is detected, the time correction amount calculation unit 205 calculates the time correction amount as in the first embodiment.
- FIG. 6 Since the other components of FIG. 6 are the same as those shown in FIG. 2, the description thereof will be omitted.
- FIG. 7 shows an example of the internal configuration of the learning unit 207 that realizes the time correction method (2-a).
- the learning unit 207 includes a deviation time characteristic estimation unit 2071 and a time correction amount estimation unit 2072.
- FIG. 8 shows an operation example of the deviation time characteristic estimation unit 2071 and the time correction amount estimation unit 2072.
- FIG. 9 shows a specific example of the time correction method (2-a).
- the deviation time characteristic estimation unit 2071 acquires the following inputs A1 to A3 (step S801).
- Input A1 Frequency deviation measured by IEEE 802.1AS or IEEE 1588
- Input A2 Time measured by frequency deviation of input A1
- Input A3 Crystal oscillator temperature (optional)
- the input A1 is a frequency deviation for each calculation cycle.
- the calculation cycle is a unit time for calculating the frequency deviation and the frequency deviation change rate.
- Input A3 may be omitted.
- the deviation time characteristic estimation unit 2071 calculates the frequency deviation change rate for each calculation cycle (step S802). More specifically, the deviation time characteristic estimation unit 2071 has a calculation cycle n, and the rate of change between the frequency deviation of the calculation cycle (n-2) and the frequency deviation of the calculation cycle (n-1) (frequency deviation change rate). Is calculated. The frequency deviation of the calculation cycle (n-2) and the frequency deviation of the calculation cycle (n-1) are obtained by the input A1.
- FIG. 9 shows an example of the frequency deviation characteristic period.
- the deviation time characteristic estimation unit 2071 calculates the frequency deviation number characteristic period from the temperature change of the crystal oscillator based on the input A3. (In this case, the method shown in the third embodiment is used).
- the time correction amount estimation unit 2072 calculates the time correction amount ( ⁇ C (t)) from the frequency deviation change rate calculated in step S803 based on the calculation result of step S804 according to the equation 15 (step). S806). That is, according to Equation 15, the time correction amount estimation unit 2072 has the product of the frequency deviation change rate and the time (P'(t) ⁇ t) and the frequency deviation at the start timing of the frequency deviation pattern (P (t 0 )). And are time-integrated to calculate the time correction amount ( ⁇ C (t)).
- the time correction amount estimation unit 2072 outputs outputs B1 to B3 (step S807). Specifically, the time correction amount estimation unit 2072 outputs the time correction amount ⁇ C (t) calculated in step S806 to the time correction unit 206 as the output B1. Further, the time correction amount estimation unit 2072 outputs the frequency deviation characteristic period (output A2) acquired from the deviation time characteristic estimation unit 2071 to the frequency deviation change rate calculation unit 204 as the output B2. Further, the time correction amount estimation unit 2072 outputs the start timing (output A3) of the frequency deviation characteristic cycle acquired from the deviation time characteristic estimation unit 2071 to the frequency deviation change rate calculation unit 204 as the output B3.
- the frequency deviation change rate calculation unit 204 calculates the frequency deviation change rate for each calculation cycle according to the protocol of IEEE 802.1AS or IEEE 1588. Then, the frequency deviation change rate calculation unit 204 is based on the calculated frequency deviation change rate, the frequency deviation characteristic cycle (output A2) acquired from the time correction amount estimation unit 2072, and the start timing (output A3) of the frequency deviation characteristic cycle. , Frequency deviation characteristic Detects the start timing of the cycle. Then, after detecting the start timing of the frequency deviation characteristic cycle, the frequency deviation change rate calculation unit 204 notifies the time correction unit 206 that the start timing has arrived. When notified that the start timing has arrived, the time correction unit 206 performs time synchronization using the time correction amount (output B1). If the start timing does not arrive, the time is corrected according to the method of the first embodiment.
- the frequency deviation change rate calculation unit 204 detects the start timing of the frequency deviation characteristic cycle. Then, the time correction unit 206 corrects the time using the time correction amount obtained by the learning unit 207.
- FIG. 10 shows an example of the internal configuration of the learning unit 207 that realizes the time correction method (2-b). Similar to the example of FIG. 7, the learning unit 207 includes a deviation time characteristic estimation unit 2071 and a time correction amount estimation unit 2072.
- FIG. 11 shows an operation example of the deviation time characteristic estimation unit 2071 and the time correction amount estimation unit 2072. Further, FIG. 12 shows a specific example of the time correction method (2-b).
- the deviation time characteristic estimation unit 2071 obtains a frequency deviation pattern (output A1) from frequency deviation (input A1), time information (input A2), crystal oscillator temperature (input A3) and control information (input A4).
- the frequency deviation characteristic cycle (output A2) and the sign detection timing (output A3) are learned.
- the time correction amount estimation unit 2072 learns the time correction amount (output B1) from the outputs A1, output A2, and output A3 from the deviation time characteristic estimation unit 2071.
- a neural network is used for learning.
- the deviation time characteristic estimation unit 2071 acquires the following inputs A1 to A3 (step S1101).
- Input A1 Frequency deviation measured by IEEE 802.1AS or IEEE 1588
- Input A2 Time measured by frequency deviation of input A1
- Input A3 Crystal oscillator temperature (optional)
- Input A4 Control information
- Input A1 is a frequency deviation for each calculation cycle. The calculation cycle is as described above. Input A3 may be omitted.
- Input 4 is a control command such as switching on / off.
- the deviation time characteristic estimation unit 2071 calculates the frequency deviation pattern for each calculation cycle (step S1102).
- the frequency deviation pattern is a frequency deviation corresponding to time, and is an equation expressing the frequency deviation as a function of time. The actual state of the frequency deviation pattern will be described later.
- the deviation time characteristic estimation unit 2071 learns the waveform pattern of the time transition in which the frequency deviation changes abruptly and the sign that the frequency deviation changes abruptly (step S1103).
- the deviation time characteristic estimation unit 2071 takes, for example, a time correlation between the frequency deviation and the control information of the input A4 as learning of the sign. Then, the deviation time characteristic estimation unit 2071 learns the pattern of the time transition of the frequency deviation when a specific event occurs (for example, when a specific command is input). Further, when the deviation time characteristic estimation unit 2071 has acquired the input A3 in step S1101, the deviation time characteristic estimation unit 2071 has a waveform pattern of a time transition in which the frequency deviation suddenly changes due to the temperature change of the crystal oscillator. And, you may learn the sign that the frequency deviation changes suddenly (in this case, the method shown in Embodiment 3 is used).
- the deviation time characteristic estimation unit 2071 detects a sign that the frequency deviation changes abruptly, and predicts a pattern of the time transition of the corresponding frequency deviation (step S1104). Further, when the deviation time characteristic estimation unit 2071 has acquired the input A3 in step S1101, the deviation time characteristic estimation unit 2071 detects a sign that the frequency deviation suddenly changes from the temperature change of the crystal oscillator, and responds.
- the pattern of the time transition of the frequency deviation to be performed may be predicted (in this case, the method shown in the third embodiment is used).
- the pattern of the time transition of the frequency deviation predicted by the deviation time characteristic estimation unit 2071 corresponds to the frequency deviation pattern.
- the deviation time characteristic estimation unit 2071 calculates the frequency deviation P (t) t seconds after the timing at which the sign is detected by the equation 16 (step S1105).
- P (t0) is a frequency deviation at the timing when a sign is detected.
- P (t) P'(t) ⁇ t + P (t 0 ) Equation 16
- the units of P (t 0 ) and P'(t) are ppm and ppm / s, respectively.
- the deviation time characteristic estimation unit 2071 outputs the outputs A1 to A3 to the time correction amount estimation unit 2072, and the time correction amount estimation unit 2072 acquires the outputs A1 to A3 (step S1106).
- the time correction amount estimation unit 2072 calculates the time correction amount ( ⁇ C (t)) from the frequency deviation calculated in step S1105 according to the equation 17 (step S1107). That is, the time correction amount estimation unit 2072 calculates the product (P'(t) ⁇ t) of the frequency deviation change rate and the time and the frequency deviation (P (t 0 )) at the detection timing of the sign according to the equation 17. Time integration is performed to calculate the time correction amount ( ⁇ C (t)).
- the time correction amount estimation unit 2072 outputs the output B1, the output B2, and the output B3 (step S1108). Specifically, the time correction amount estimation unit 2072 outputs the time correction amount ⁇ C (t) calculated in step S1107 to the time correction unit 206 as the output B1. Further, the time correction amount estimation unit 2072 outputs the sign detection timing (output A3) acquired from the deviation time characteristic estimation unit 2071 to the time correction unit 206 as the output B2.
- the deviation time characteristic estimation unit 2071 detects a sign of a sudden change in frequency deviation based on the sign detection timing (output A3). When the deviation time characteristic estimation unit 2071 detects a sign, the deviation time characteristic estimation unit 2071 notifies the time correction unit 206 that the sign has been detected via the time correction amount estimation unit 2072. When the time correction unit 206 is notified by the deviation time characteristic estimation unit 2071 that a sign has been detected, the time correction unit 206 performs time correction using the time correction amount (output B1) acquired from the time correction amount estimation unit 2072. If no sign is detected, the time is corrected according to the method of the first embodiment.
- FIG. 12 shows a specific example of the operation of the learning unit 207. Hereinafter, FIG. 12 will be described.
- the input A1, the input A2, and the input A4 are input to the deviation time characteristic estimation unit 2071 at time t1.
- time t1 it is assumed that the welding execution command is issued by the slave device 200 as the control information of the input A4.
- the deviation time characteristic estimation unit 2071 learns that the frequency deviation changes in the waveform pattern 1 due to the welding execution command.
- the time correction amount estimation unit 2072 calculates the time correction amount ⁇ C (t1) corresponding to the waveform pattern 1 by the following equation 18.
- the time correction amount estimation unit 2072 outputs the time correction amount ⁇ C (t1) as the output B1 to the time correction unit 206, and outputs the welding execution command to the control unit 202 and the time correction unit 206 as the output B2.
- the input A1, the input A2, and the input A4 are input to the deviation time characteristic estimation unit 2071 at the time t2.
- the cooling command is issued by the slave device 200 as the control information of the input A4.
- the deviation time characteristic estimation unit 2071 learns that the frequency deviation changes in the waveform pattern 2 due to the cooling command.
- the time correction amount estimation unit 2072 calculates the time correction amount corresponding to the waveform pattern 2 by the following equation 19.
- the time correction amount estimation unit 2072 outputs the time correction amount ⁇ C (t2) as the output B1 to the time correction unit 206, and outputs the cooling command to the control unit 202 and the time correction unit 206 as the output B2.
- the control unit 202 notifies the deviation time characteristic estimation unit 2071 of the issuance of the welding execution command and the time stamp (time) at that time at time t3.
- the deviation time characteristic estimation unit 2071 notifies the time correction unit 206 of the time when the welding execution command is issued via the time correction amount estimation unit 2072. Since the issuance of the welding execution command is a sign of the waveform pattern 1, the time correction unit 206 corrects the time using the time correction amount ⁇ C (t1) corresponding to the waveform pattern 1.
- a specific method for calculating the time correction amount will be described in the third embodiment. Further, a method of utilizing the frequency deviation characteristic cycle, the start timing, and the sign detection timing at the time of time correction will also be described in the third embodiment.
- Embodiment 3 Also in this embodiment, an example of learning the time transition of the frequency deviation change rate by utilizing AI and performing time correction based on the learning result will be described. In this embodiment, the differences between the first embodiment and the second embodiment will be mainly described. Moreover, the matters not described below are the same as those of the first embodiment and the second embodiment. Also in this embodiment, the configuration example of the time synchronization system 1000 is as shown in FIG. Further, also in the present embodiment, the hardware configuration example of the slave device 200 is as shown in FIG. Further, also in this embodiment, an example of the functional configuration of the slave device 200 is as shown in FIG.
- the method of calculating the frequency deviation is different in the third embodiment from the second embodiment.
- the frequency deviation measured by the time synchronization protocol is used as it is.
- AI estimates the correlation between the temperature of the crystal oscillator and the frequency deviation measured by the protocol.
- the AI obtains the frequency deviation temperature characteristic peculiar to the crystal oscillator.
- the AI calculates the frequency deviation with respect to the crystal oscillator temperature input to the AI from the obtained frequency deviation temperature characteristic, and performs time correction using this frequency deviation.
- the time correction amount closer to the frequency deviation of the actual crystal oscillator is calculated. Is possible.
- the frequency deviation of the crystal oscillator differs for each individual crystal oscillator, and the frequency deviation changes depending on the temperature of the crystal.
- AI learns the characteristics of frequency deviation that differ for each of the above individuals. Furthermore, AI estimates the time correction amount based on the learned frequency deviation characteristic information.
- the actual state of this AI is the learning unit 207.
- the inside of the learning unit 207 according to the third embodiment is composed of a deviation temperature characteristic estimation unit 2075, a deviation time characteristic estimation unit 2076, and a time correction amount estimation unit 2077. ..
- Deviation temperature characteristic estimation unit 2075 learns the frequency deviation temperature characteristic of the crystal oscillator of the slave device 200 and estimates the wave number deviation temperature characteristic.
- Deviation time characteristic estimation unit 2076 The deviation time characteristic estimation unit 2076 calculates the frequency deviation with respect to the temperature from the frequency deviation temperature characteristic estimated by the deviation temperature characteristic estimation unit 2075, and learns the time transition of the frequency deviation.
- the deviation time characteristic estimation unit 2076 calculates the frequency deviation change rate and the frequency deviation pattern (time transition of the frequency deviation having a specific regularity) from the time transition of the frequency deviation, and the time correction amount estimation unit 2077 described later calculates the frequency deviation. The rate of change and frequency deviation pattern are output.
- the deviation time characteristic estimation unit 2076 learns the frequency deviation characteristic cycle, the start timing of the frequency deviation pattern, the frequency deviation pattern, and the sign detection timing, as in the second embodiment.
- (3) Time correction amount estimation unit 2077 The time correction amount estimation unit 2077 learns the time correction amount of the slave device 200 based on the time transition of the frequency deviation learned by the deviation time characteristic estimation unit 2076, and estimates the time correction amount.
- FIG. 14 shows the relationship between the deviation temperature characteristic estimation unit 2075, the deviation time characteristic estimation unit 2076, and the time correction amount estimation unit 2077.
- the relationship between the frequency deviation and the temperature is converted into the relationship between the frequency deviation and the time by using the equation of the frequency deviation temperature characteristic and the frequency deviation pattern P (Q (t)), whereby the time correction amount is estimated. It represents what you can do.
- the deviation temperature characteristic estimation unit 2075 learns the frequency deviation temperature characteristic P (Q) according to (1) in FIG.
- the deviation time characteristic estimation unit 2076 uses the frequency deviation temperature characteristic P (Q) learned by the deviation temperature characteristic estimation unit 2075 and the input time information to obtain a frequency deviation pattern. Estimate P (Q (t)).
- the time correction amount estimation unit 2077 estimates the time correction amount ⁇ C direct corresponding to the frequency deviation pattern P (Q (t)). That is, time correction amount estimation section 2077 has a frequency deviation and frequency deviation change rate for each frequency deviation pattern P (Q (t)) was calculated to estimate the time correction amount [Delta] C correct these time integration.
- the time correction amount ⁇ C collect corresponds to the area of the shaded portion in FIG.
- FIG. 15 shows a functional block for estimating the time correction amount using the AI.
- the following operations are performed in the ( ⁇ ) learning phase and the ( ⁇ ) utilization phase, respectively.
- ( ⁇ ) Learning phase In the learning phase, supervised learning (neural network) is carried out.
- the temperature of the crystal oscillator and the frequency deviation are input to the deviation temperature characteristic estimation unit 2075, and the deviation temperature characteristic estimation unit 2075 creates a model of the frequency deviation temperature characteristic.
- the deviation temperature characteristic estimation unit 2075 acquires the frequency deviation measured by the input A1: time synchronization protocol and the input A3: the crystal oscillator temperature acquired from the sensor. Further, the deviation temperature characteristic estimation unit 2075 may acquire the frequency deviation temperature characteristic on the input A5: data sheet.
- the deviation temperature characteristic estimation unit 2075 approximates the characteristic of the frequency deviation with respect to the temperature as a cubic function based on the acquired crystal oscillator temperature and the frequency deviation, and is a value of a coefficient for expressing the frequency deviation temperature characteristic. ( ⁇ , ⁇ , ⁇ , ⁇ of equation 20) is learned. Then, the deviation temperature characteristic estimation unit 2075 outputs the frequency deviation temperature characteristic (output A2) including the learned coefficient values ( ⁇ , ⁇ , ⁇ , ⁇ ) to the deviation time characteristic estimation unit 2076.
- the frequency deviation temperature characteristic (output A2) is a function with the temperature as a variable and can be expressed by the following equation.
- P (Q) ⁇ Q 3 + ⁇ Q 2 + ⁇ Q + ⁇ [ppm] Equation 20
- Q Crystal oscillator temperature [° C] (input A2)
- the deviation temperature characteristic estimation unit 2075 When the frequency deviation temperature characteristic (input A5) of the data sheet is acquired, the deviation temperature characteristic estimation unit 2075 is the characteristic closest to the characteristic on the data sheet based on the acquired frequency deviation temperature characteristic and the frequency deviation. Learn the values of the coefficients ( ⁇ , ⁇ , ⁇ , ⁇ ) that indicate. Then, the deviation temperature characteristic estimation unit 2075 outputs the frequency deviation temperature characteristic (output A2) including the learned coefficient values ( ⁇ , ⁇ , ⁇ , ⁇ ) to the deviation time characteristic estimation unit 2076.
- the deviation temperature characteristic estimation unit 2075 uses the frequency deviation (input A1) measured by the protocol as P (Q) on the left side of Equation 20 when learning the coefficient values ( ⁇ , ⁇ , ⁇ , ⁇ ) of the frequency deviation temperature characteristic. Substituting into Q on the right side of Equation 20 the temperature of the crystal oscillator (input A3) when the frequency deviation is measured. By repeating the measurement according to the protocol, the deviation temperature characteristic estimation unit 2075 solves the quaternary simultaneous equations for the four coefficients of ⁇ , ⁇ , ⁇ , and ⁇ , and derives the values of the coefficients.
- the deviation time characteristic estimation unit 2076 acquires the frequency deviation temperature characteristic (output A2) and the crystal oscillator temperature (input A3) calculated in (2) above. Then, the deviation time characteristic estimation unit 2076 calculates the frequency deviation and the frequency change rate by using the frequency deviation temperature characteristic (output A2) and the crystal oscillator temperature (input A3). Further, the deviation time characteristic estimation unit 2076 acquires the time (input A2: time information) at which the crystal oscillator temperature is input. Further, the deviation time characteristic estimation unit 2076 measures the time transition of the frequency deviation, and outputs the time transition of the frequency deviation as the frequency deviation pattern (output B1) to the time correction amount estimation unit 2077.
- the deviation time characteristic estimation unit 2076 detects a time transition of a frequency deviation having a specific regularity as a frequency deviation pattern. Further, the deviation time characteristic estimation unit 2076 detects a sign that occurs before the frequency deviation pattern occurs, and stores the sign.
- the frequency deviation pattern and the sign are as shown in (3-a) or (3-b) below.
- the deviation time characteristic estimation unit 2076 detects that the frequency deviation pattern (waveform pattern) is repeated in the frequency deviation characteristic cycle, and detects the frequency deviation characteristic cycle and the frequency. Learn the start timing of the deviation characteristic cycle.
- the deviation time characteristic estimation unit 2076 outputs the frequency deviation characteristic cycle (output B3) and the cycle start timing (output B2) to the time correction amount estimation unit 2077.
- the cycle start timing (output B2) is the start timing of the frequency deviation characteristic cycle.
- the time correction amount estimation unit 2077 learns the time correction amount corresponding to the frequency deviation characteristic pattern as in (2-a) of the second embodiment.
- the concept of the calculation method of the time correction amount in (3-a) and (3-b) is the same as that in the second embodiment, but in the present embodiment, the frequency deviation is obtained from the crystal oscillator temperature information and the time information. The point of finding the time transition is different.
- the actual state of the frequency deviation pattern is an equation of the frequency deviation P (t) with the time t as a variable.
- the deviation time characteristic estimation unit 2076 provides a function format for representing P (t) and an identification number for identifying the format.
- the deviation time characteristic estimation unit 2076 outputs the coefficient value of the polynomial of P (t), the degree of t of each term, and the identification number in the form of the function to the time correction amount estimation unit 2077. In FIGS. 15 and 16, this information is referred to as output B1: frequency deviation pattern.
- the deviation time characteristic estimation unit 2076 indicates that the form of the function is a third-order polynomial.
- the identifier (identification number) to be represented, the respective values of the coefficients A, B, C and D, and the respective orders of the term t of the above equation are output to the time correction amount estimation unit 2077.
- the deviation time characteristic estimation unit 2076 is an identifier (identification) indicating that the form of the function is an exponential function.
- the number), the respective values of the coefficients A and B, and the value of the order of the term t in the above equation are output to the time correction amount estimation unit 2077. Since the specific function format and the method of assigning the identification number depend on the implementation method, the details are not defined in this specification.
- FIG. 17 shows the concept of calculating the time correction amount.
- the frequency deviation with respect to the crystal oscillator temperature Q (t) at time t can be expressed by the following equation.
- P (Q (t)) ⁇ ⁇ ⁇ Q (t) ⁇ 3 + ⁇ ⁇ ⁇ Q (t) ⁇ 2 + ⁇ ⁇ Q (t) + ⁇ Equation 21
- the deviation time characteristic estimation unit 2076 acquires the crystal oscillator temperature (input A3), time information (input A2), and control information (input A4). Further, the deviation time characteristic estimation unit 2076 detects the start timing of the frequency deviation characteristic cycle and the frequency deviation characteristic cycle learned in the learning phase (3-a), and the start timing of the frequency deviation characteristic cycle and the frequency deviation characteristic cycle. Is output to the time correction amount estimation unit 2077. The time correction amount estimation unit 2077 outputs the time correction amount corresponding to the frequency deviation characteristic cycle to the time correction unit 206. The time correction amount can be derived by time-integrating the frequency deviation pattern P (Q (t)) as shown in Equation 23. The time correction unit 206 performs time correction using the time correction amount.
- the deviation time characteristic estimation unit 2076 detects the sign detection timing and the frequency deviation pattern from the time transition of the frequency deviation with respect to the control information learned in the learning phase (3-b), and sets the sign detection timing and the frequency deviation pattern to the time. It is output to the correction amount estimation unit 2077.
- the time correction amount estimation unit 2077 outputs the time correction amount corresponding to the frequency deviation pattern to the time correction unit 206.
- the time correction unit 206 performs time correction using the time correction amount.
- the crystal oscillator temperature information is substituted into Equation 20 and the crystal oscillator temperature is converted into the frequency deviation value. I'm looking for it.
- the frequency deviation characteristic period or the like may be directly obtained from the time transition of the crystal oscillator temperature before conversion to the frequency deviation. This is because the crystal oscillator temperature and the corresponding time are obtained in the process of obtaining the time transition of the frequency deviation, so AI learns the regularity of the time transition of the temperature as in the frequency deviation pattern described above, and is a sign. This is because it can also be used as a detection pattern.
- Time correction The method of time correction will be described. Similarly, in the cases of (3-a) and (3-b), the time correction amount estimation unit 2077 calculates the time correction amount as shown in FIGS. 20 and 21. In FIG. 20, it is assumed that the deviation time characteristic estimation unit 2076 detects a sign at the absolute time t1 and the time correction unit 206 performs time correction at the absolute time t2. The time correction amount estimation unit 2077 estimates the time counter value at the absolute time t2 starting from the absolute time t1. The time counter value corresponding to the absolute time t1 corresponds to the start timing of the frequency deviation characteristic cycle of (3-a) or the sign detection timing of (3-b). Let C (t) be the time counter value at absolute time t1.
- Direct (t2) represents the time counter value of the slave device 200 after time correction at the absolute time t2.
- Direct (t1) represents the time counter value of the slave device 200 after time correction at the absolute time t1.
- T2-t1) is the elapsed time from t1 to t2 in absolute time.
- the time of the slave device 200 has an error corresponding to the frequency deviation from the absolute time due to the frequency deviation. This error corresponds to the shaded portion of the graph of FIG. Therefore, at the absolute time t2, the time correction amount ⁇ C correct estimated by the time correction amount estimation unit 2077 is subtracted from the time counter value C (t2) of the slave device 200 in which the error of the frequency deviation occurs.
- the corrected time of the absolute time t1 is referred to as Direct (t1). Further, even when the sign is detected first, the time is corrected by the conventional method until the sign is detected, so the corrected time of the absolute time t1 is referred to as Direct (t1).
- the time correction unit 206 does not collectively correct the time for the section (frequency deviation characteristic cycle) from the absolute time t1 to the absolute time t2 at the timing of the absolute time t2 as shown in FIG. 21, but for each minute section of ⁇ t.
- the time may be corrected.
- the time correction unit 206 performs time correction for each minute interval of ⁇ t according to the estimated frequency deviation characteristic cycle. For example, assuming that the time transition of the frequency deviation shown in FIG. 21 is repeated, the time correction unit 206 performs time correction in a minute interval ⁇ t from time t 0 to time t 1. After that, the time correction unit 206 performs time correction for each minute interval ⁇ t.
- the time correction unit 206 further performs the minute interval ⁇ t of the time t 0 to t 1 of the subsequent frequency deviation characteristic cycle. Perform time correction of the time correction amount. After that, the time correction unit 206 repeats this operation in each frequency deviation characteristic cycle.
- FIG. 22 shows an example of time correction when the time transition of the frequency deviation has periodicity as shown in (3-a).
- Direct (t2) represents the time counter value of the slave device 200 after time correction at the absolute time t2.
- Direct (t1) represents the time counter value of the slave device 200 after time correction at the absolute time t1.
- T2-t1) is the elapsed time from t1 to t2 in absolute time.
- an error corresponding to the frequency deviation from the absolute time occurs due to the frequency deviation. This error corresponds to the shaded portion of the graph of FIG.
- the time correction unit 206 is the time correction amount ⁇ C correct estimated by the time correction amount estimation unit 2077 from the time counter value C (t2) of the slave device 200 in which the frequency deviation error occurs at the absolute time t2. By subtracting, the time can be corrected to an accurate time. Further, since a same frequency deviation pattern frequency deviation characteristic period (the length of the period (t2-t1)), the time correction unit 206, also in the absolute time t3, time correction amount [Delta] C correct the time counter value C The time is corrected by subtracting it from (t3). As a result, the time counter value of the slave device 200 is corrected to Direct (t3).
- FIG. 23 shows an example of time correction when there is a correlation between the control command and the change in frequency deviation as shown in (3-b).
- Direct (t2) represents the time counter value of the slave device 200 after time correction at the absolute time t2.
- Direct (t1) represents the time counter value of the slave device 200 after time correction at the absolute time t1.
- T2-t1) is the elapsed time from t1 to t2 in absolute time.
- the time of the slave device 200 has an error corresponding to the frequency deviation from the absolute time due to the frequency deviation. This error corresponds to the shaded portion of the graph of FIG.
- the time correction unit 206 has a time correction amount ⁇ C correct estimated by the time correction amount estimation unit 2077 from the time counter value C (t2) of the slave device 200 in which the frequency deviation error occurs at the absolute time t2.
- the time correction amount ⁇ C collect, a represents the amount of time deviation due to the frequency deviation from the issuance of the welding execution command to the elapse of the time of the frequency deviation characteristic cycle. Therefore, the time correction unit 206 subtracts the value of the time correction amount ⁇ C collect, a from the time counter value of the slave device 200 at the time when the time of the frequency deviation characteristic cycle elapses from the time when the welding execution command is issued. The time can be corrected.
- the time correction amount ⁇ C collect, b represents the amount of time deviation due to the frequency deviation from the issuance of the cooling command to the elapse of the time of the frequency deviation characteristic cycle. Similar to the welding execution command, the time correction unit 206 sets the value of the time correction amount ⁇ C collect, b from the time counter value of the slave device 200 at the time when the time of the frequency deviation characteristic cycle elapses from the time when the cooling command is issued. By subtracting it, the time can be corrected.
- the deviation temperature characteristic estimation unit 2075 acquires the crystal oscillator temperature (input A3) from the sensor, and further acquires the frequency deviation (input A1) measured by the protocol.
- the deviation temperature characteristic estimation unit 2075 holds the time information when the crystal oscillator temperature (input A3) is acquired from the sensor.
- the time stamp of these time information is acquired by the time management unit 203.
- the frequency deviation pattern is the case (3-a) described later in which the same pattern is periodically observed, and the case (3-b) described later in which a specific frequency deviation pattern appears in response to a certain control command. There is.
- the learning unit 207 performs learning with the configuration of FIG. 15, and in the case of (3-b), the learning unit 207 performs learning with the configuration of FIG.
- the deviation characteristic estimation unit estimates the frequency deviation temperature characteristic of the crystal oscillator of the slave device 200 as shown in FIG. 14 (crystal oscillator 1) from the crystal oscillator temperature and frequency deviation information acquired in (1).
- the frequency temperature characteristic is an equation obtained by approximating the frequency deviation as a temperature variable with a cubic function.
- the deviation time characteristic estimation unit 2076 calculates the coefficient of each term of the cubic function, and inputs the value of this coefficient to the time correction amount estimation unit 2077.
- the estimation of frequency temperature characteristics is performed in the learning phase. For example, if the frequency deviation with respect to temperature is P (Q), the frequency deviation characteristic can be expressed by the following equation.
- P (Q) ⁇ Q 3 + ⁇ Q 2 + ⁇ Q + ⁇ [ppm] Equation 20
- the deviation time characteristic estimation unit 2076 acquires the frequency deviation and the crystal oscillator temperature at that time, substitutes the frequency deviation and the crystal oscillator temperature at that time into the above equation 20, and has a quaternary simultaneous equation with coefficients ⁇ , ⁇ , ⁇ , and ⁇ . To solve. At a minimum, information on the frequency deviations for four measurement points and the crystal oscillator temperature is required to obtain a solution. The more the number of measurement points, the more likely the coefficient is derived by the deviation time characteristic estimation unit 2076. For example, the deviation time characteristic estimation unit 2076 may output the average value for the number of measurements of each coefficient as the final coefficient. Alternatively, the deviation time characteristic estimation unit 2076 may derive a coefficient closest to the characteristics of the input data sheet from the measurement result in advance.
- an equation in the form of equation 20 is input to the deviation time characteristic estimation unit 2076.
- the deviation time characteristic estimation unit 2076 estimates the coefficient values of ⁇ , ⁇ , ⁇ and ⁇ in the above equation, and inputs the characteristics (calculation formula) to the time correction amount estimation unit 2077.
- the time correction amount estimation unit 2077 is based on the frequency deviation pattern input from the deviation time characteristic estimation unit 2076 and the time information corresponding to the time when the deviation is acquired (the time when the crystal oscillator temperature is acquired). Estimate the time correction amount corresponding to.
- the method of calculating the time correction amount is the same as that of the second embodiment. That is, the time correction amount estimation unit 2077 uses the time integration value of the product of the frequency deviation change rate and the time and the frequency deviation at the specified timing as the time correction amount.
- the temperature frequency deviation is expressed as P (Q (t)).
- Q (t) represents the temperature of the crystal oscillator at time t.
- P (Q (t)) is obtained by substituting the function Q (t) representing the temperature at time t into the temperature Q of the equation 20, and P (Q (t)) is expressed by the above equation 21.
- NS. P (Q (t)) ⁇ ⁇ ⁇ Q (t) ⁇ 3 + ⁇ ⁇ ⁇ Q (t) ⁇ 2 + ⁇ ⁇ Q (t) + ⁇ Equation 21
- the time correction amount estimation unit 2077 calculates the time correction amount and learns the pattern of the time frequency deviation characteristic P (C (t)) corresponding to the time correction amount, so that the time frequency deviation characteristic P (4)
- the pattern of C (t)) is used for predictive detection.
- the information used for predictive detection is the same as that described in (2-a) of the second embodiment.
- FIG. 18 shows the relationship between the time transition of the periodic crystal oscillator temperature and the time transition of the frequency deviation.
- the graph of FIG. 18A shows the time transition of the temperature of the crystal oscillator. Further, according to the equation (Equation 21) of P (Q (t)), the relationship between the temperature and time shown in FIG. 18 (a) is changed to the relationship between the frequency deviation and the time transition as shown in the graph of FIG. 18 (b). Can be converted.
- the time correction amount estimation unit 2077 learns the start timing of the frequency deviation characteristic cycle and the frequency deviation characteristic cycle as shown in FIG. 18, and uses the start timing of the frequency deviation characteristic cycle and the frequency deviation
- the time correction amount estimation unit 2077 learns the frequency deviation pattern and the sign detection timing as shown in FIG. 19, and uses the frequency deviation pattern and the sign detection timing as the sign detection.
- FIG. 19 shows the relationship between the time transition of the crystal oscillator temperature and the time transition of the frequency deviation when various commands are issued.
- the graph of FIG. 19A shows the time transition of the temperature of the crystal oscillator.
- the relationship between the temperature and time shown in FIG. 19 (a) is converted into the relationship between the frequency deviation and the time transition as shown in the graph of FIG. 19 (b) by the equation (Equation 21) of P (Q (t)).
- the sign detection timings are the time when the welding execution command is issued and the time when the cooling command is issued.
- the deviation time in the example of FIG. 19
- the characteristic estimation unit 2076 detects the time when the welding execution command is issued and the time when the cooling command is issued as the sign detection timing, and inputs the sign detection timing to the time correction amount estimation unit 2077.
- the temperature information converted into the deviation time characteristic is used for the sign detection, but the temperature information is not converted into the deviation time characteristic and the time transition of the crystal oscillator temperature is used for the sign detection. May be good.
- the deviation time characteristic estimation unit 2076 detects that the frequency deviation has the frequency deviation pattern shown in FIG. 18 from the input crystal oscillator temperature and the time information when the temperature is observed. Then, the deviation time characteristic estimation unit 2076 notifies the time correction amount estimation unit 2077 of the frequency deviation pattern, the frequency deviation characteristic cycle, and the cycle start timing. The time correction amount estimation unit 2077 notifies the time correction unit 206 of the time correction amount corresponding to the input frequency deviation pattern. The time correction unit 206 performs time correction with the notified time correction amount.
- the temperature information converted into the deviation time characteristic is used for the detection of the sign (deviation time characteristic), but the temperature information is not converted into the deviation time characteristic, and the time transition of the crystal oscillator temperature is detected as a sign. It may be used for.
- the temperature information converted into the deviation time characteristic is used for the detection of the sign (deviation time characteristic), but the temperature information is not converted into the deviation time characteristic, and the time transition of the crystal oscillator temperature is detected as a sign. It may be used for.
- the explanation was made on the assumption that the crystal oscillator is used in the slave device 200.
- an oscillator other than a crystal oscillator for example, a silicon oscillator or a MEMS (Micro Electro Mechanical Systems) oscillator
- the learning unit 207 learns the temperature characteristics of the corresponding oscillator.
- the time can be corrected according to the fluctuating frequency deviation. Further, in the present embodiment, since the time correction is performed using the time correction amount obtained by learning, it is not necessary to calculate the frequency deviation change rate and the time correction amount, and the calculation load can be reduced.
- FIG. 24 shows a functional configuration example of the slave device 200 according to the present embodiment.
- An example of the hardware configuration of the slave device 200 according to the present embodiment is as shown in FIG.
- the function of the selection unit 208, which will be described later, is also realized by the program, and the program that realizes the function of the selection unit 208 is also executed by the processor 901.
- the selection unit 208 monitors the frequency deviation change rate calculated by the frequency deviation change rate calculation unit 204 during the monitoring period in the method selection phase. Then, the selection unit 208 according to the frequency deviation change rate of the monitoring period, according to the time correction method described in the first embodiment, the time correction method (2-a) described in the second embodiment, and the second embodiment. Select either the time correction method (2-b) described or the time correction method described in the third embodiment.
- the time correction method described in the first embodiment is referred to as a time correction method (1).
- the time correction method described in the third embodiment is referred to as a time correction method (3).
- the selection unit 208 selects, for example, the time correction method (1).
- the selection unit 208 uses, for example, a time correction method (2-a) or a time correction method (2-b). select.
- the selection unit 208 selects, for example, the time correction method (3).
- the selection criteria of the time correction method of the selection unit 208 are not limited to the above. The selection unit 208 can select the time correction method based on any selection criterion other than the above.
- the selection unit 208 instructs the frequency deviation change rate calculation unit 204 to calculate the frequency deviation change rate, and the time correction amount calculation unit 205 calculates the time correction amount. Instruct.
- the selection unit 208 instructs the learning unit 207 to learn the time correction method (2-a) described in the second embodiment and calculate the time correction amount.
- the selection unit 208 instructs the learning unit 207 to learn the time correction method (2-b) described in the second embodiment and calculate the time correction amount.
- the selection unit 208 instructs the learning unit 207 to learn the time correction method (3) and calculate the time correction amount.
- time correction by IEEE 802.1AS or IEEE 1588 may be added.
- Embodiment 5 an example in which the time correction device 300 is separated into the slave device 200 and the server device 400 will be described. In this embodiment, the differences between the second embodiment and the third embodiment will be mainly described. Moreover, the matters not described below are the same as those of the second embodiment and the third embodiment.
- FIG. 26 shows an example of the functional configuration of the slave device 200 according to the present embodiment.
- the functional configuration example of FIG. 26 is the same as that shown in FIG. 3, but in the present embodiment, the frequency deviation change rate calculation unit 204 notifies the control unit 202 of the calculated frequency deviation change rate.
- the control unit 202 notifies the server device 400 of the frequency deviation change rate notified from the frequency deviation change rate calculation unit 204 via the communication unit 201.
- the communication unit 201 receives the time correction amount calculated by the server device 400 from the server device 400.
- the communication unit 201 notifies the control unit 202 of the received time correction amount.
- the control unit 202 notifies the time correction unit 206 of the notified time correction amount.
- the time correction unit 206 corrects the time using the time correction amount notified from the control unit 202.
- the time correction unit 206 and the learning unit 402 described later correspond to the time correction device 300.
- FIG. 27 shows an example of the functional configuration of the server device 400.
- the communication unit 401 communicates with the slave device 200. Specifically, the communication unit 401 receives the frequency deviation change rate from the slave device 200, and notifies the learning unit 402 of the received frequency deviation change rate. Further, the communication unit 401 transmits the time correction amount calculated by the learning unit 402 to the slave device 200.
- the learning unit 402 has the same functions as the learning unit 207 described in the second and third embodiments. That is, the learning unit 402 uses the frequency deviation change rate notified from the communication unit 401 in the learning phase of the time correction method (2-a) and the time correction method (2-b) described in the second embodiment. Perform the operation and calculate the time correction amount.
- the control unit 202 of the slave device 200 has an event that can be a precursor together with the frequency deviation change rate (welding execution command issuance and cooling command in FIG. 12). Issuance, etc.) is notified to the learning unit 402.
- the learning unit 402 performs the operation of the learning phase of the time correction method (3) described in the third embodiment using the frequency deviation change rate notified from the communication unit 401, and calculates the time correction amount.
- the control unit 202 of the slave device 200 notifies the learning unit 402 of the temperature characteristics of the crystal oscillator of the slave device 200 together with the frequency deviation change rate.
- the learning unit 402 transmits the calculated time correction amount to the slave device 200 via the communication unit 401.
- the learning unit 402 performs the operation of the learning phase of the time correction method (2-a)
- the start timing of the frequency deviation pattern is also transmitted to the slave device 200 via the communication unit 401.
- the sign detection timing is also transmitted to the slave device 200 via the communication unit 401.
- the time correction unit 206 and the learning unit 402 correspond to the time correction device 300.
- the time correction amount is learned by the server device as in the present embodiment, the time correction according to the fluctuating frequency deviation is possible.
- first to fifth embodiments have been described above, two or more of these embodiments may be combined and carried out. Alternatively, one of these embodiments may be partially implemented. Alternatively, two or more of these embodiments may be partially combined and carried out. In addition, the configurations and procedures described in these embodiments may be changed as necessary.
- the processor 901 shown in FIG. 2 is an IC (Integrated Circuit) that performs processing.
- the processor 901 is a CPU (Central Processing Unit), a DSP (Digital Signal Processor), or the like.
- the main storage device 902 shown in FIG. 2 is a RAM (Random Access Memory).
- the auxiliary storage device 903 shown in FIG. 2 is a ROM (Read Only Memory), a flash memory, an HDD (Hard Disk Drive), or the like.
- the communication device 904 shown in FIG. 2 is an electronic circuit that executes data communication processing.
- the communication device 904 is, for example, a communication chip or a NIC (Network Interface Card).
- the OS (Operating System) is also stored in the auxiliary storage device 903. Then, at least a part of the OS is executed by the processor 901. While executing at least a part of the OS, the processor 901 has a communication unit 201, a control unit 202, a time management unit 203, a frequency deviation change rate calculation unit 204, a time correction amount calculation unit 205, a time correction unit 206, a learning unit 207, and the like. Execute the program that realizes the function of the selection unit 208. When the processor 901 executes the OS, task management, memory management, file management, communication control, and the like are performed.
- Information indicating the processing results of the communication unit 201, the control unit 202, the time management unit 203, the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, the time correction amount 206, the learning unit 207, and the selection unit 208 At least one of the data, signal value and variable value is stored in at least one of the registers and cache memory in the main storage device 902, the auxiliary storage device 903, and the processor 901. Further, a program that realizes the functions of the communication unit 201, the control unit 202, the time management unit 203, the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, the time correction amount 206, the learning unit 207, and the selection unit 208 is provided.
- a portable recording medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, or a DVD. Then, a program that realizes the functions of the communication unit 201, the control unit 202, the time management unit 203, the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, the time correction amount 206, the learning unit 207, and the selection unit 208 is stored.
- the portable recording medium may be distributed.
- the "units" of the communication unit 201, the control unit 202, the time management unit 203, the frequency deviation change rate calculation unit 204, the time correction amount calculation unit 205, the time correction amount 206, the learning unit 207, and the selection unit 208 are referred to as “circuits”. Or “process” or “procedure” or “processing” may be read. Further, the slave device 200 may be realized by a processing circuit.
- the processing circuit is, for example, a logic IC (Integrated Circuit), a GA (Gate Array), an ASIC (Application Specific Integrated Circuit), or an FPGA (Field-Programmable Gate Array).
- the superordinate concept of the processor and the processing circuit is referred to as "processing circuit Lee". That is, the processor and the processing circuit are specific examples of the "processing circuit Lee", respectively.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Electric Clocks (AREA)
Abstract
周波数偏差変化率算出部(204)は、時刻同期の基準となる同期基準装置のクロック周波数と同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の単位時間あたりの変化率である周波数偏差変化率を算出する。時刻補正量算出部(205)は、同期基準装置のクロック周波数と時刻同期装置のクロック周波数との間の固定的な周波数偏差に対応する第1の補正量を算出し、周波数偏差変化率の時間積分を行って同期基準装置のクロック周波数と時刻同期装置のクロック周波数との間の周波数偏差の時間推移に対応する第2の補正量を算出し、第1の補正量と第2の補正量とを用いて、時刻同期装置の時刻を補正するための時刻補正量を算出する。時刻補正部(206)は、時刻補正量を用いて、時刻同期装置の時刻を補正する。
Description
本開示は、時刻同期に関する。
近年TSN(Time Sensitive Networking)のFA(Factory Automation)ネットワークへの適用が検討されている。TSNでは、IEEE802.1AS又はIEEE1588で規格化されている時刻同期プロトコル(以下、単にプロトコルともいう)を用いて時分割通信を実施する。FAネットワークのリアルタイム性を保証するためには同期精度を±1μsで実現する必要がある。同期精度を左右する要因として時刻配信を行うフレームの伝搬時間のジッタと各機器の水晶発振器の周波数偏差がある。水晶発振器の周波数偏差の要因として、水晶発信器固有の周波数の偏差と温度変化による周波数の変化が存在する。これらの要因により、十分な同期精度を保証できないケースが存在する。
また、時刻同期を実施する非常に多数の機器がネットワークに存在している場合に十分な同期精度を満たすためには、フレームの伝搬時間ジッタの影響、周波数変化による時刻ずれの両方の要因を軽減する必要がある。しかし、周波数変化が激しい環境(恒温槽試験など温度変化が激しい環境)においては、平均化回数を増やすと同期性能がかえって劣化する。十分な同期精度を得るためには、ジッタの影響を軽減するだけでなく、周波数偏差による時刻ずれも補正する必要がある。
特許文献1には、周波数偏差による時刻ずれを補正する技術が開示されている。
特許文献1では、周波数偏差が一定の場合に周波数偏差による時刻ずれを補正する技術が開示されるのみである。つまり、特許文献1の技術では、周波数偏差が変動する場合には、変動する周波数偏差に合わせて時刻補正することはできないという課題がある。
本開示は、上記のような課題を解決することを主な目的の一つとする。より具体的には、本開示は、周波数偏差が変動する場合に、変動する周波数偏差に合わせた時刻補正を可能にすることを主な目的とする。
本開示に係る時刻補正装置は、
時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の単位時間あたりの変化率である周波数偏差変化率を算出する周波数偏差変化率算出部と、
前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の固定的な周波数偏差に対応する第1の補正量を算出し、前記周波数偏差変化率の時間積分を行って前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の周波数偏差の時間推移に対応する第2の補正量を算出し、前記第1の補正量と前記第2の補正量とを用いて、前記時刻同期装置の時刻を補正するための時刻補正量を算出する時刻補正量算出部と、
前記時刻補正量を用いて、前記時刻同期装置の時刻を補正する時刻補正部とを有する。
時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の単位時間あたりの変化率である周波数偏差変化率を算出する周波数偏差変化率算出部と、
前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の固定的な周波数偏差に対応する第1の補正量を算出し、前記周波数偏差変化率の時間積分を行って前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の周波数偏差の時間推移に対応する第2の補正量を算出し、前記第1の補正量と前記第2の補正量とを用いて、前記時刻同期装置の時刻を補正するための時刻補正量を算出する時刻補正量算出部と、
前記時刻補正量を用いて、前記時刻同期装置の時刻を補正する時刻補正部とを有する。
本開示によれば、周波数偏差が変動する場合に、変動する周波数偏差に合わせた時刻補正が可能である。
以下、実施の形態を図を用いて説明する。以下の実施の形態の説明及び図面において、同一の符号を付したものは、同一の部分又は相当する部分を示す。
実施の形態1.
***IEEE802.1ASの時刻同期***
先ず、本実施の形態を説明する前に、本実施の形態の前提となるIEEE802.1ASの時刻同期の原理を説明する。
図28は、IEEE802.1ASの時刻同期における通信シーケンスを示す。
***IEEE802.1ASの時刻同期***
先ず、本実施の形態を説明する前に、本実施の形態の前提となるIEEE802.1ASの時刻同期の原理を説明する。
図28は、IEEE802.1ASの時刻同期における通信シーケンスを示す。
図28の例では、スレーブ装置がグランドマスタ装置の時刻に同期する例を説明する。
グランドマスタ装置及びスレーブ装置は、時刻カウンタとフリーランカウンタの2種類のカウンタを実装する。
時刻カウンタは、グランドマスタ装置の時刻に合わせてカウンタ値が補正される。
フリーランカウンタは、補正されることなく自走し続けるカウンタである。
スレーブ装置では、フリーランカウンタで時刻を刻む。そして、スレーブ装置は、フリーランカウンタの値に基づいて時刻カウンタのカウントを進める。スレーブ装置の時刻カウンタはグランドマスタの時刻(時刻カウンタの値)に定期的に補正される。
以下では、フリーランカウンタの値をT*freeと表現し、時刻カウンタの値をT*timeと表現する。
時刻同期では、以下の(1)、(2)及び(3)の処理が行われる。
グランドマスタ装置及びスレーブ装置は、時刻カウンタとフリーランカウンタの2種類のカウンタを実装する。
時刻カウンタは、グランドマスタ装置の時刻に合わせてカウンタ値が補正される。
フリーランカウンタは、補正されることなく自走し続けるカウンタである。
スレーブ装置では、フリーランカウンタで時刻を刻む。そして、スレーブ装置は、フリーランカウンタの値に基づいて時刻カウンタのカウントを進める。スレーブ装置の時刻カウンタはグランドマスタの時刻(時刻カウンタの値)に定期的に補正される。
以下では、フリーランカウンタの値をT*freeと表現し、時刻カウンタの値をT*timeと表現する。
時刻同期では、以下の(1)、(2)及び(3)の処理が行われる。
(1)周波数偏差の計算
(a)スレーブ装置がPdelay_Reqフレームをグランドマスタ装置に送信する。グランドマスタ装置がPdelay_Reqフレームへの応答としてPdelay_Respフレームをスレーブ装置に送信する。グランドマスタ装置は、Pdelay_Respフレームの送信時のタイムスタンプ(T3free(0))を取得する。
(b)スレーブ装置は、Pdelay_Respフレームを受信する。また、スレーブ装置は、Pdelay_Respフレームの受信時のタイムスタンプ(T4free(0))を取得する。
(c)次に、グランドマスタ装置は、T3free(0)のタイムスタンプ情報をPDelayResp_Follow_Upフレームに格納し、PdelayResp_Follow_Upフレームをスレーブ装置に送信する(図28ではPdelayResp_Follow_Upフレームの送信の図示を省略)。
(d)上記の(a)からN周期後のPdelay_Respのフレームの送信時のタイムスタンプ(T3free(N))と受信時のタイムスタンプ(T4free(N))からスレーブ装置は以下の式1により周波数偏差Rを計算する(厳密にはRは周波数偏差比であり、IEEE802.1ASでは、Rate Ratioとして定義される)。
(a)スレーブ装置がPdelay_Reqフレームをグランドマスタ装置に送信する。グランドマスタ装置がPdelay_Reqフレームへの応答としてPdelay_Respフレームをスレーブ装置に送信する。グランドマスタ装置は、Pdelay_Respフレームの送信時のタイムスタンプ(T3free(0))を取得する。
(b)スレーブ装置は、Pdelay_Respフレームを受信する。また、スレーブ装置は、Pdelay_Respフレームの受信時のタイムスタンプ(T4free(0))を取得する。
(c)次に、グランドマスタ装置は、T3free(0)のタイムスタンプ情報をPDelayResp_Follow_Upフレームに格納し、PdelayResp_Follow_Upフレームをスレーブ装置に送信する(図28ではPdelayResp_Follow_Upフレームの送信の図示を省略)。
(d)上記の(a)からN周期後のPdelay_Respのフレームの送信時のタイムスタンプ(T3free(N))と受信時のタイムスタンプ(T4free(N))からスレーブ装置は以下の式1により周波数偏差Rを計算する(厳密にはRは周波数偏差比であり、IEEE802.1ASでは、Rate Ratioとして定義される)。
(2)伝搬遅延時間の計算
(a)スレーブ装置がPdelay_Reqフレームを送信し、Pdelay_Reqフレームの送信時のタイムスタンプ(T1free(N))を取得する。
(b)グランドマスタ装置はPdelay_Reqフレームを受信し、Pdelay_Reqフレームの受信時のタイムスタンプ(T2free(N))を取得する。
(c)グランドマスタ装置はPdelay_Reqフレームの受信時のタイムスタンプ(T2free(N))をPdelay_Respフレームに格納し、Pdelay_Respフレームをスレーブ装置に送信する。このとき、グランドマスタ装置は、Pdelay_Respフレームの送信時のタイムスタンプ(T3free(N))を取得する。
(d)スレーブ装置は、Pdelay_Respフレームを受信し、Pdelay_Respフレームの受信時のタイムスタンプ(T4free(N))を取得する。
(e)グランドマスタ装置は、Pdelay_Resp_Follow_UpフレームにT3free(N)のタイムスタンプ情報を格納し、Pdelay_Resp_Follow_Upフレームをスレーブ装置に送信する(図28ではPdelayResp_Follow_Upフレームの送信の図示を省略)。
(f)スレーブ装置は、Pdelay_Resp_Follow_Upフレームを受信し、T3free(N)のタイムスタンプ情報を取得する。
(g)スレーブ装置は、以下の式2により伝搬遅延時間Dを計算する。
(a)スレーブ装置がPdelay_Reqフレームを送信し、Pdelay_Reqフレームの送信時のタイムスタンプ(T1free(N))を取得する。
(b)グランドマスタ装置はPdelay_Reqフレームを受信し、Pdelay_Reqフレームの受信時のタイムスタンプ(T2free(N))を取得する。
(c)グランドマスタ装置はPdelay_Reqフレームの受信時のタイムスタンプ(T2free(N))をPdelay_Respフレームに格納し、Pdelay_Respフレームをスレーブ装置に送信する。このとき、グランドマスタ装置は、Pdelay_Respフレームの送信時のタイムスタンプ(T3free(N))を取得する。
(d)スレーブ装置は、Pdelay_Respフレームを受信し、Pdelay_Respフレームの受信時のタイムスタンプ(T4free(N))を取得する。
(e)グランドマスタ装置は、Pdelay_Resp_Follow_UpフレームにT3free(N)のタイムスタンプ情報を格納し、Pdelay_Resp_Follow_Upフレームをスレーブ装置に送信する(図28ではPdelayResp_Follow_Upフレームの送信の図示を省略)。
(f)スレーブ装置は、Pdelay_Resp_Follow_Upフレームを受信し、T3free(N)のタイムスタンプ情報を取得する。
(g)スレーブ装置は、以下の式2により伝搬遅延時間Dを計算する。
(3)時刻補正
(a)グランドマスタ装置はSyncフレームを送信し、Syncフレームの送信時のタイムスタンプ(T5time(N))を取得する。
(b)スレーブ装置はSyncフレームを受信し、Syncフレームの受信時のタイムスタンプ(T6time(N))を取得する。
(c)グランドマスタ装置は、Follow_UpフレームにT5time(N)のタイムスタンプ情報を格納し、Follow_Upフレームをスレーブ装置に送信する(図28ではFollow_Upフレームの送信の図示を省略)。
(d)スレーブ装置は、Follow_Upフレームを受信し、T5time(N)のタイムスタンプ情報を取得する。
(e)スレーブ装置は、Syncフレームの受信後、時刻同期を実施する時刻Ttime,syncでのグランドマスタ装置での時刻Cs(T)を以下の式3により計算し、時刻Ttime,syncでCs(T)に時刻補正する。
(a)グランドマスタ装置はSyncフレームを送信し、Syncフレームの送信時のタイムスタンプ(T5time(N))を取得する。
(b)スレーブ装置はSyncフレームを受信し、Syncフレームの受信時のタイムスタンプ(T6time(N))を取得する。
(c)グランドマスタ装置は、Follow_UpフレームにT5time(N)のタイムスタンプ情報を格納し、Follow_Upフレームをスレーブ装置に送信する(図28ではFollow_Upフレームの送信の図示を省略)。
(d)スレーブ装置は、Follow_Upフレームを受信し、T5time(N)のタイムスタンプ情報を取得する。
(e)スレーブ装置は、Syncフレームの受信後、時刻同期を実施する時刻Ttime,syncでのグランドマスタ装置での時刻Cs(T)を以下の式3により計算し、時刻Ttime,syncでCs(T)に時刻補正する。
なお、グランドマスタ装置とスレーブ装置との間の時刻ずれは、主に、式3の「D+R×(Ttime,sync-T6time(N))により発生する。つまり、スレーブ装置が自走している間に時刻のずれが生じる。
周波数偏差はPdelay_Reqフレーム及びPdelay_Respで取得されるN周期分(N≧1の整数)のタイムスタンプを用いて計算される。よって、図28において、周波数偏差測定周期INTRRはPdelay_Req送信周期INTPDの整数倍となる。
INTRR = INTPD×N(N≧1の整数)
Pdelay_Req送信周期INTPDとSync送信周期INTsyncとの大小関係について規格上は特に規定はされていない。本実施の形態では、INTPD=INTsyncであることを前提とするが、INTPDとINTsyncの大小関係は問わない。
後述する周波数偏差計算周期はPdelay_Req送信周期INTPDと同等の長さとする。なお、周波数偏差計算周期は規格上定義されているものではない。
周波数偏差測定周期と周波数計算周期の関係は図5の通り。周波数偏差測定で使用するタイムスタンプはPdelay_Req送信周期毎に取得し、最新値とN周期前のタイムスタンプによって周波数偏差を計算する。よって、周波数偏差自体は、Pdelay_Req送信周期(周波数偏差計算周期)毎周期計算される。
INTRR = INTPD×N(N≧1の整数)
Pdelay_Req送信周期INTPDとSync送信周期INTsyncとの大小関係について規格上は特に規定はされていない。本実施の形態では、INTPD=INTsyncであることを前提とするが、INTPDとINTsyncの大小関係は問わない。
後述する周波数偏差計算周期はPdelay_Req送信周期INTPDと同等の長さとする。なお、周波数偏差計算周期は規格上定義されているものではない。
周波数偏差測定周期と周波数計算周期の関係は図5の通り。周波数偏差測定で使用するタイムスタンプはPdelay_Req送信周期毎に取得し、最新値とN周期前のタイムスタンプによって周波数偏差を計算する。よって、周波数偏差自体は、Pdelay_Req送信周期(周波数偏差計算周期)毎周期計算される。
***構成の説明***
図1は、本実施の形態に係る時刻同期システム1000の例を示す。
図1は、本実施の形態に係る時刻同期システム1000の例を示す。
本実施の形態に係る時刻同期システム1000は、グランドマスタ装置100とスレーブ装置200で構成される。
グランドマスタ装置100は、時刻同期の基準となる。グランドマスタ装置100は、時刻配信を実施する。グランドマスタ装置100は、同期基準装置に相当する。
スレーブ装置200は、グランドマスタ装置100と時刻同期する。スレーブ装置200は時刻同期装置に相当する。
グランドマスタ装置100は、時刻同期の基準となる。グランドマスタ装置100は、時刻配信を実施する。グランドマスタ装置100は、同期基準装置に相当する。
スレーブ装置200は、グランドマスタ装置100と時刻同期する。スレーブ装置200は時刻同期装置に相当する。
グランドマスタ装置100は、コンピュータである。具体的には、グランドマスタ装置100は、時刻同期専用のスイッチ、時刻同期専用のターミナル、時刻同期専用のIC(Integrated Circuit)チップ、汎用のPC(Personal Computer)のような非制御用途装置でもよい。また、グランドマスタ装置100は、PLC(Programmable Logic Controller)、モーションコントローラ等の制御装置でもよい。
スレーブ装置200も、コンピュータである。具体的には、スレーブ装置200は、時刻同期専用のスイッチ、時刻同期専用のターミナル、時刻同期専用のICチップ、汎用のPCのような非制御用途装置でもよい。また、スレーブ装置200は、PLC、モーションコントローラ等の制御装置でもよい。
図2は、スレーブ装置200のハードウェア構成例を示す。
スレーブ装置200は、ハードウェアとして、プロセッサ901、主記憶装置902、補助記憶装置903及び通信装置904を備える。
また、スレーブ装置200は、機能構成として、後述する通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206を備える。
補助記憶装置903には、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206の機能を実現するプログラムが記憶されている。
これらプログラムは、補助記憶装置903から主記憶装置902にロードされる。そして、プロセッサ901がこれらプログラムを実行して、後述する通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206の動作を行う。
図3では、プロセッサ901が通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206の機能を実現するプログラムを実行している状態を模式的に表している。
また、スレーブ装置200は、機能構成として、後述する通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206を備える。
補助記憶装置903には、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206の機能を実現するプログラムが記憶されている。
これらプログラムは、補助記憶装置903から主記憶装置902にロードされる。そして、プロセッサ901がこれらプログラムを実行して、後述する通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206の動作を行う。
図3では、プロセッサ901が通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206の機能を実現するプログラムを実行している状態を模式的に表している。
図3は、本実施の形態に係るスレーブ装置200の機能構成例を示す。
通信部201は、通信装置904を用いて、Pdelay_Reqフレームの送信、Pdelay_Respフレームの受信等の図28を用いて説明した通信フレームの送信及び受信を行う。なお、図28を用いて説明した、時刻同期に用いられる通信フレームを時刻同期フレームという。
制御部202は、スレーブ装置200の動作を制御する。具体的には、制御部202は、Pdelay_Reqフレーム等のグランドマスタ装置100に送信する時刻同期フレームを生成する。また、制御部202は、Pdelay_Respフレーム等のグランドマスタ装置100から受信した時刻同期フレームを処理する。更に、制御部202は、タイムスタンプの管理を行う。
時刻管理部203は、フリーランカウンタ2031と時刻カウンタ2032を管理する。
フリーランカウンタ2031と時刻カウンタ2032は、図28で説明したものと同様である。
フリーランカウンタ2031と時刻カウンタ2032は、図28で説明したものと同様である。
周波数偏差変化率算出部204は、周波数偏差および周波数偏差変化率を算出する。周波数偏差変化率は、周波数偏差の単位時間あたりの変化率である。この周波数偏差は、グランドマスタ装置100のクロック周波数とスレーブ装置200のクロック周波数との偏差である。
周波数偏差変化率算出部204により行われる処理は、周波数偏差変化率算出処理に相当する。
周波数偏差変化率算出部204により行われる処理は、周波数偏差変化率算出処理に相当する。
時刻補正量算出部205は、周波数偏差を時間積分して、スレーブ装置200の時刻を補正するための時刻補正量を算出する。つまり、時刻補正量算出部205は、時刻カウンタ2032の値を補正するための時刻補正量を算出する。
時刻補正量算出部205により行われる処理は、補正量算出処理に相当する。
時刻補正量算出部205により行われる処理は、補正量算出処理に相当する。
時刻補正部206は、時刻補正量算出部205により算出された時刻補正量を用いて、スレーブ装置200の時刻を補正する。より具体的には、時刻補正部206は、スレーブ装置200の内部時刻である時刻カウンタ2032のカウンタ値から時刻補正量を減算してスレーブ装置200の時刻を補正する。
時刻補正部206により行われる処理は、時刻補正処理に相当する。
時刻補正部206により行われる処理は、時刻補正処理に相当する。
周波数偏差変化率算出部204、時刻補正量算出部205及び時刻補正部206は時刻補正装置300を構成する。
時刻補正装置300の動作手順は、時刻同期方法に相当する。また、時刻補正装置300の動作を実現するプログラムは、時刻同期プログラムに相当する。
時刻補正装置300の動作手順は、時刻同期方法に相当する。また、時刻補正装置300の動作を実現するプログラムは、時刻同期プログラムに相当する。
***動作の説明***
本実施の形態では、周波数偏差変化率算出部204が、グランドマスタ装置100のクロック周波数とスレーブ装置200のクロック周波数との周波数偏差を定期的に算出し、また、周波数偏差変化率を定期的に算出する。また、本実施の形態では、時刻補正量算出部205が、周波数変化による時刻ずれを補正する時刻補正量を周波数偏差変化率の時間積分値として算出する。そして、時刻補正部206が、時刻補正量を用いて時刻補正を実施する。
本実施の形態では、周波数偏差変化率算出部204が、グランドマスタ装置100のクロック周波数とスレーブ装置200のクロック周波数との周波数偏差を定期的に算出し、また、周波数偏差変化率を定期的に算出する。また、本実施の形態では、時刻補正量算出部205が、周波数変化による時刻ずれを補正する時刻補正量を周波数偏差変化率の時間積分値として算出する。そして、時刻補正部206が、時刻補正量を用いて時刻補正を実施する。
(A)周波数偏差変化率の算出
周波数偏差変化率算出部204は、IEEE1588又はIEEE802.1ASのプロトコルを用いて周波数偏差を算出し、算出した周波数偏差の値を主記憶装置902又は補助記憶装置903に格納する。また、周波数偏差変化率算出部204は、過去N周期前の周波数偏差から周波数偏差変化率を算出する。
周波数偏差変化率算出部204は、IEEE1588又はIEEE802.1ASのプロトコルを用いて周波数偏差を算出し、算出した周波数偏差の値を主記憶装置902又は補助記憶装置903に格納する。また、周波数偏差変化率算出部204は、過去N周期前の周波数偏差から周波数偏差変化率を算出する。
(B)時刻の補正
周波数偏差変化率はppm/sの単位で表すことができる。周波数偏差変化率P’(s)[ppm/s]とすると、絶対時間t秒が経過したときの時刻カウンタ2032の値は、以下の式4のように、p’(t)×tの時間積分で表すことができる。
周波数偏差変化率はppm/sの単位で表すことができる。周波数偏差変化率P’(s)[ppm/s]とすると、絶対時間t秒が経過したときの時刻カウンタ2032の値は、以下の式4のように、p’(t)×tの時間積分で表すことができる。
なお、式4における近似式(1/2×P’(t)×t2)は、周波数変化が単調増加とみなせる区間での近似である。
本実施の形態では、周波数変化を単調増加とみなせる。このため、時刻補正量算出部205は、固定的な偏差による時刻ずれを補正するための補正量に加えて、Sync受信時刻(もしくは平均Sync受信時刻)からの経過時間Tを用いて、以下の式5より、グランドマスタ装置100とスレーブ装置200との間の周波数偏差の時間推移に対応する補正量ΔCp’(t)を算出する。補正量ΔCp’(t)は第2の補正量に相当する。ここでは、計算を単純にするために、式5により第2の補正量を算出する例を示すが、周波数変化が単調増加とみなせない場合は、式4に示すように、時刻補正量算出部205は周波数偏差変化率の時間積分を行って補正量ΔCp’(t)を算出する。また、周波数変化が単調増加とみなせる場合でも、高精度の時刻補正を実施するために、時刻補正量算出部205は、式4に示すように、周波数偏差変化率の時間積分を行って補正量ΔCp’(t)を算出してもよい。
次に、本実施の形態に係るスレーブ装置200の動作例をより詳細に説明する。
図4は、本実施の形態に係るスレーブ装置200の動作例を示す。また、図5は、本実施の形態に係る時刻補正方法の具体例を示す。
図4は、本実施の形態に係るスレーブ装置200の動作例を示す。また、図5は、本実施の形態に係る時刻補正方法の具体例を示す。
先ず、周波数偏差変化率算出部204が、周波数偏差P(1)を算出する(ステップS401)。
より具体的には、周波数偏差変化率算出部204は、図5に示す周波数偏差測定周期INTRR(1)の区間でグランドマスタ装置100とスレーブ装置200との間のクロック周波数の周波数偏差P(1)を式6に従って算出する。
なお、周波数偏差変化率算出部204は、例えば、図28を参照して説明した手順と同じ手順に従って式6内のTRR,M(1)及びTRR,S(1)を算出する。
TRR,M(1)はマスタが計測したINTRR(1)分の時間、TRR,S(1)はスレーブが計測したINTRR(1)分の時間である。下式でマスタとスレーブの時刻の進みの比率を求めている。
より具体的には、周波数偏差変化率算出部204は、図5に示す周波数偏差測定周期INTRR(1)の区間でグランドマスタ装置100とスレーブ装置200との間のクロック周波数の周波数偏差P(1)を式6に従って算出する。
なお、周波数偏差変化率算出部204は、例えば、図28を参照して説明した手順と同じ手順に従って式6内のTRR,M(1)及びTRR,S(1)を算出する。
TRR,M(1)はマスタが計測したINTRR(1)分の時間、TRR,S(1)はスレーブが計測したINTRR(1)分の時間である。下式でマスタとスレーブの時刻の進みの比率を求めている。
次に、周波数偏差変化率算出部204は、周波数偏差P(2)を算出する(ステップS402)。
つまり、周波数偏差変化率算出部204は、図5に示す周波数偏差測定周期INTRR(2)の区間でグランドマスタ装置100とスレーブ装置200との間のクロック周波数の周波数偏差P(2)を式7に従って算出する。
式6の場合と同様に、周波数偏差変化率算出部204は、例えば、図28を参照して説明した手順と同じ手順に従って式6内のTRR,M(2)及びTRR,S(2)を算出する。
TRR,M(2)はマスタが計測したINTRR(2)分の時間、TRR,S(2)はスレーブが計測したINTRR(2)分の時間である。
つまり、周波数偏差変化率算出部204は、図5に示す周波数偏差測定周期INTRR(2)の区間でグランドマスタ装置100とスレーブ装置200との間のクロック周波数の周波数偏差P(2)を式7に従って算出する。
式6の場合と同様に、周波数偏差変化率算出部204は、例えば、図28を参照して説明した手順と同じ手順に従って式6内のTRR,M(2)及びTRR,S(2)を算出する。
TRR,M(2)はマスタが計測したINTRR(2)分の時間、TRR,S(2)はスレーブが計測したINTRR(2)分の時間である。
次に、周波数偏差変化率算出部204は、ステップS401で算出した周波数偏差P(1)とステップS402で算出した周波数偏差P(2)とを用いて周波数偏差変化率P’(t)を式8により算出する(ステップS403)。
なお、図5に示すように、周波数偏差計算周期はINTPD(*)(=INTSync(*))である。周波数偏差計算周期INTPD(*)はPdelay_Req送信周期を兼ねる。INTSync(*)は、図28に示すように、Sync送信周期である。Sync送信周期は、時刻同期フレーム送信周期に相当する。
なお、図5に示すように、周波数偏差計算周期はINTPD(*)(=INTSync(*))である。周波数偏差計算周期INTPD(*)はPdelay_Req送信周期を兼ねる。INTSync(*)は、図28に示すように、Sync送信周期である。Sync送信周期は、時刻同期フレーム送信周期に相当する。
次に、周波数偏差変化率算出部204が、Sync受信時刻Cs,rx(2)を算出する(ステップS404)。
具体的には、通信部201がグランドマスタ装置100から時刻配信フレームであるSyncフレームを受信する。そして、周波数偏差変化率算出部204が、Syncフレームで通知されるグランドマスタ装置100でのSyncフレームの送信時刻に基づき、式9により、Sync受信時刻Cs,rx(2)を算出する。
なお、式9において、Dは伝搬遅延時間を表し、Cm,tx(2)は、Syncフレームで通知されるグランドマスタ装置100でのSyncフレームの送信時刻である。
具体的には、通信部201がグランドマスタ装置100から時刻配信フレームであるSyncフレームを受信する。そして、周波数偏差変化率算出部204が、Syncフレームで通知されるグランドマスタ装置100でのSyncフレームの送信時刻に基づき、式9により、Sync受信時刻Cs,rx(2)を算出する。
なお、式9において、Dは伝搬遅延時間を表し、Cm,tx(2)は、Syncフレームで通知されるグランドマスタ装置100でのSyncフレームの送信時刻である。
次に、時刻補正量算出部205が、時刻補正量ΔC(t)を算出する(ステップS405)。
具体的には、時刻補正量算出部205は、式10に従って、ΔCp(t)を算出する。また、時刻補正量算出部205は、式5に従って、ΔCp’(t)を算出する。ΔCp(t)は、グランドマスタ装置100とスレーブ装置200との間の固定的な周波数偏差による時刻ずれに対応する補正量である。ΔCp(t)は第1の補正量に相当する。前述したように、ΔCp’(t)は、周波数変化による時刻ずれを補正するための補正量であり、第2の補正量に相当する。ΔCp’(t)は式5により得られる。
そして、時刻補正量算出部205は、式11に示すように、ΔCp(t)とΔCp’(t)とを加算して、最終的に時刻カウンタ2032を補正するための時刻補正量ΔC(t)を算出する。時刻補正量ΔC(t)は、Syncフレームの受信から後述するステップS406での時刻補正までの時刻ずれ量を補正するための値である。
周波数偏差変化率算出部204は、時刻同期フレーム送信周期であるSync送信周期に合わせて周波数偏差変化率を算出する。また、時刻補正量算出部205は、Sync送信周期に合わせてΔCp(t)とΔCp’(t)を算出する。そして、時刻補正量算出部205は、現在のSync送信周期の1つ前のSync送信周期に算出されたΔCp(t)とΔCp’(t)とを用いて、現在のSync送信周期の時刻補正量ΔC(t)を算出する。
具体的には、時刻補正量算出部205は、式10に従って、ΔCp(t)を算出する。また、時刻補正量算出部205は、式5に従って、ΔCp’(t)を算出する。ΔCp(t)は、グランドマスタ装置100とスレーブ装置200との間の固定的な周波数偏差による時刻ずれに対応する補正量である。ΔCp(t)は第1の補正量に相当する。前述したように、ΔCp’(t)は、周波数変化による時刻ずれを補正するための補正量であり、第2の補正量に相当する。ΔCp’(t)は式5により得られる。
そして、時刻補正量算出部205は、式11に示すように、ΔCp(t)とΔCp’(t)とを加算して、最終的に時刻カウンタ2032を補正するための時刻補正量ΔC(t)を算出する。時刻補正量ΔC(t)は、Syncフレームの受信から後述するステップS406での時刻補正までの時刻ずれ量を補正するための値である。
周波数偏差変化率算出部204は、時刻同期フレーム送信周期であるSync送信周期に合わせて周波数偏差変化率を算出する。また、時刻補正量算出部205は、Sync送信周期に合わせてΔCp(t)とΔCp’(t)を算出する。そして、時刻補正量算出部205は、現在のSync送信周期の1つ前のSync送信周期に算出されたΔCp(t)とΔCp’(t)とを用いて、現在のSync送信周期の時刻補正量ΔC(t)を算出する。
最後に、時刻補正部206が補正量ΔC(t)を用いて時刻補正を行う(ステップS406)。
具体的には、時刻補正部206は、以下のように補正量ΔC(t)を用いて時刻カウンタ2032のカウンタ値を補正する。
具体的には、時刻補正部206は、以下のように補正量ΔC(t)を用いて時刻カウンタ2032のカウンタ値を補正する。
補正前のスレーブ装置200の時刻CS,before(2)は以下の式12で表すことができる。なお、Tmは、グランドマスタ装置100がSyncフレームを送信してから時刻補正部206が時刻同期を行うまでの時間に相当する、グランドマスタ装置100のフリーランカウンタのカウンタ値である。
式13において、CS,after(2)が時刻同期時の時刻カウンタ2032のカウンタ値である。また、式13において、Cm(2)は、時刻補正部206が時刻同期すべきグランドマスタ装置100の時刻カウンタのカウンタ値である。
***実施の形態の効果の説明***
本実施の形態によれば、周波数偏差が変動する場合に、変動する周波数偏差に合わせた時刻補正が可能である。このため、本実施の形態によれば、周波数変化が激しい環境においても周波数変化の影響を軽減することができる。更に、本実施の形態によれば、周波数変化の影響を軽減することで、ジッタの平均化回数を増やすことが可能となる。このため、ジッタによる時刻ずれも軽減することができる。
スレーブ装置を多数接続した大規模ネットワークでは、周波数変化の影響による時刻ずれ及びジッタによる時刻ずれが累積することが考えられる。本実施の形態よれば、このような大規模ネットワークであっても、周波数変化の影響を軽減することで、高精度な時刻同期を実現することができる。
本実施の形態によれば、周波数偏差が変動する場合に、変動する周波数偏差に合わせた時刻補正が可能である。このため、本実施の形態によれば、周波数変化が激しい環境においても周波数変化の影響を軽減することができる。更に、本実施の形態によれば、周波数変化の影響を軽減することで、ジッタの平均化回数を増やすことが可能となる。このため、ジッタによる時刻ずれも軽減することができる。
スレーブ装置を多数接続した大規模ネットワークでは、周波数変化の影響による時刻ずれ及びジッタによる時刻ずれが累積することが考えられる。本実施の形態よれば、このような大規模ネットワークであっても、周波数変化の影響を軽減することで、高精度な時刻同期を実現することができる。
なお、本実施の形態では、時刻補正装置300がスレーブ装置200に存在する例を説明したが、時刻補正装置300がグランドマスタ装置100に存在する。
時刻同期システム1000の立ち上げ時には、調停によりグランドマスタ装置100として動作するノードが決定されるため、調停が収束するまでどのノードがグランドマスタ装置100として動作するかが定まっていない。このため、スレーブ装置200として動作するノードだけでなく、グランドマスタ装置100として動作するノードにも時刻補正装置300が存在する。グランドマスタ装置100として動作するノードがグランドマスタ装置100に指定されるまでの間、時刻補正装置300により当該ノードの周波数偏差を補正することができる。
時刻同期システム1000の立ち上げ時には、調停によりグランドマスタ装置100として動作するノードが決定されるため、調停が収束するまでどのノードがグランドマスタ装置100として動作するかが定まっていない。このため、スレーブ装置200として動作するノードだけでなく、グランドマスタ装置100として動作するノードにも時刻補正装置300が存在する。グランドマスタ装置100として動作するノードがグランドマスタ装置100に指定されるまでの間、時刻補正装置300により当該ノードの周波数偏差を補正することができる。
実施の形態2.
本実施の形態では、AI(Artificial Intelligence)を活用して周波数偏差変化率の時間推移を機械学習し、機械学習結果に基づいて時刻補正を行う例を説明する。
なお、本実施の形態では、主に実施の形態1との差異を説明する。
また、以下で説明していない事項は、実施の形態1と同様である。例えば、本実施の形態においても、時刻同期システム1000の構成例は図1に示す通りである。
本実施の形態では、AI(Artificial Intelligence)を活用して周波数偏差変化率の時間推移を機械学習し、機械学習結果に基づいて時刻補正を行う例を説明する。
なお、本実施の形態では、主に実施の形態1との差異を説明する。
また、以下で説明していない事項は、実施の形態1と同様である。例えば、本実施の形態においても、時刻同期システム1000の構成例は図1に示す通りである。
周波数偏差はスレーブ装置200の動作環境によって時間変化を予測できる。例えば、常温環境でスレーブ装置200が動作する場合(スレーブ装置200が発熱するような制御も行われない場合)は、温度変化は微小であり、スレーブ装置200の状態は安定している。一方、スレーブ装置200の立ち上げ時は水晶発振器の温度が単調に上昇する。前者の動作環境では、IEEE802.1AS又はIEEE1588の時刻同期プロトコルで十分な時刻同期が実現できる。一方、後者の動作環境では、IEEE802.1AS又はIEEE1588の時刻同期プロトコルでは十分な時刻同期を実施することが難しい。
また、温度が急激に上昇又は降下するような動作環境では、周波数偏差も急激に上昇又は降下する。
温度が急激に上昇又は降下する現象は、設備又は機器の制御によって発生することが原因と考えられる。温度の急激な上昇又は降下の原因が設備又は機器の制御である場合は、温度が急激に上昇又は降下する現象は周期的に発生すると予想できる。もしくは、ある制御の動作を起点に温度の急激な上昇又は降下が発生すると予想できる。
そこで、本実施の形態に係るスレーブ装置200は、ニューラルネットワークを用いて、周波数偏差の周期性又は周波数が急激に変動する予兆を学習し、更に、時刻補正のための補正量を学習する。
本実施の形態では、スレーブ装置200は、機械学習方法として、「(2-a)周波数偏差の時間周期性を検出して時刻補正する方法」と「(2-b)周波数偏差の時間推移の特徴量を検出して時刻補正する方法」のいずれかを行う。以下では、「(2-a)周波数偏差の時間周期性を検出して時刻補正する方法」を時刻補正方法(2-a)という。また、「(2-b)周波数偏差の時間推移の特徴量を検出して時刻補正する方法」を時刻補正方法(2-b)という。
時刻補正方法(2-a)及び時刻補正方法(2-b)のいずれでも、スレーブ装置200に搭載された時刻同期AIが学習フェーズで、周波数偏差の特性を学習し、時刻補正量を算出する。また、スレーブ装置200は、活用フェーズで、時刻同期AIの学習により得られた時刻補正量で時刻補正を実施する。
温度が急激に上昇又は降下する現象は、設備又は機器の制御によって発生することが原因と考えられる。温度の急激な上昇又は降下の原因が設備又は機器の制御である場合は、温度が急激に上昇又は降下する現象は周期的に発生すると予想できる。もしくは、ある制御の動作を起点に温度の急激な上昇又は降下が発生すると予想できる。
そこで、本実施の形態に係るスレーブ装置200は、ニューラルネットワークを用いて、周波数偏差の周期性又は周波数が急激に変動する予兆を学習し、更に、時刻補正のための補正量を学習する。
本実施の形態では、スレーブ装置200は、機械学習方法として、「(2-a)周波数偏差の時間周期性を検出して時刻補正する方法」と「(2-b)周波数偏差の時間推移の特徴量を検出して時刻補正する方法」のいずれかを行う。以下では、「(2-a)周波数偏差の時間周期性を検出して時刻補正する方法」を時刻補正方法(2-a)という。また、「(2-b)周波数偏差の時間推移の特徴量を検出して時刻補正する方法」を時刻補正方法(2-b)という。
時刻補正方法(2-a)及び時刻補正方法(2-b)のいずれでも、スレーブ装置200に搭載された時刻同期AIが学習フェーズで、周波数偏差の特性を学習し、時刻補正量を算出する。また、スレーブ装置200は、活用フェーズで、時刻同期AIの学習により得られた時刻補正量で時刻補正を実施する。
図6は、本実施の形態に係るスレーブ装置200の機能構成例を示す。
なお、本実施の形態に係るスレーブ装置200のハードウェア構成例は図2に示す通りである。なお、後述する学習部207の機能もプログラムで実現され、学習部207の機能を実現するプログラムもプロセッサ901で実行される。
なお、本実施の形態に係るスレーブ装置200のハードウェア構成例は図2に示す通りである。なお、後述する学習部207の機能もプログラムで実現され、学習部207の機能を実現するプログラムもプロセッサ901で実行される。
図2と比較して、図6では、学習部207が追加されている。図6の他の要素は、図2に示すものと同じである。なお、本実施の形態では、時刻補正部206と学習部207が時刻補正装置300に相当する。
学習部207は、時刻同期AIである。
学習部207は、学習フェーズにて、周波数偏差の時間推移を学習する。つまり、学習部207は、グランドマスタ装置100のクロック周波数とスレーブ装置200のクロック周波数との周波数偏差の時間推移を学習する。そして、学習部207は、周波数偏差の時間推移のパターンを周波数偏差パターンとして抽出し、周波数偏差パターンにおける周波数偏差変化率を算出する。また、学習部207は、周波数偏差変化率と時間との積と規定タイミングでの周波数偏差とを時間積分して、スレーブ装置200の時刻補正に用いられる時刻補正量を算出する。
学習部207は、時刻補正方法(2-a)を行う場合は、周波数偏差の時間推移のパターンの周期性を学習する。前述のように、周波数偏差の時間推移のパターンを周波数偏差パターンという。また、学習部207は、規定タイミングとして、周波数偏差パターンの開始タイミングを推定する。そして、学習部207は、周波数偏差変化率と時間との積と周波数偏差パターンの開始タイミングでの周波数偏差とを時間積分して、時刻補正量を算出する。
また、学習部207は、時刻補正方法(2-b)を行う場合は、周波数偏差の時間推移のパターン(周波数偏差パターン)とスレーブ装置200への制御との関係を学習し、周波数偏差が急激に変化する予兆を推定する。つまり、学習部207は、周波数偏差変化率が急激に変化する時間推移のパターンを周波数偏差パターンとして抽出し、周波数偏差パターンが発生する前に発生する予兆を推定する。また、学習部207は、規定タイミングとして予兆の検知タイミングを推定し、周波数偏差変化率と時間との積と予兆の検知タイミングでの周波数偏差とを時間積分して、時刻補正量を算出する。
学習部207は、学習フェーズにて、周波数偏差の時間推移を学習する。つまり、学習部207は、グランドマスタ装置100のクロック周波数とスレーブ装置200のクロック周波数との周波数偏差の時間推移を学習する。そして、学習部207は、周波数偏差の時間推移のパターンを周波数偏差パターンとして抽出し、周波数偏差パターンにおける周波数偏差変化率を算出する。また、学習部207は、周波数偏差変化率と時間との積と規定タイミングでの周波数偏差とを時間積分して、スレーブ装置200の時刻補正に用いられる時刻補正量を算出する。
学習部207は、時刻補正方法(2-a)を行う場合は、周波数偏差の時間推移のパターンの周期性を学習する。前述のように、周波数偏差の時間推移のパターンを周波数偏差パターンという。また、学習部207は、規定タイミングとして、周波数偏差パターンの開始タイミングを推定する。そして、学習部207は、周波数偏差変化率と時間との積と周波数偏差パターンの開始タイミングでの周波数偏差とを時間積分して、時刻補正量を算出する。
また、学習部207は、時刻補正方法(2-b)を行う場合は、周波数偏差の時間推移のパターン(周波数偏差パターン)とスレーブ装置200への制御との関係を学習し、周波数偏差が急激に変化する予兆を推定する。つまり、学習部207は、周波数偏差変化率が急激に変化する時間推移のパターンを周波数偏差パターンとして抽出し、周波数偏差パターンが発生する前に発生する予兆を推定する。また、学習部207は、規定タイミングとして予兆の検知タイミングを推定し、周波数偏差変化率と時間との積と予兆の検知タイミングでの周波数偏差とを時間積分して、時刻補正量を算出する。
本実施の形態では、時刻補正部206は、活用フェーズにて、学習部207により生成された補正量を用いて、時刻補正を行う。
時刻補正方法(2-a)を行う場合は、時刻補正部206は、周波数偏差パターンの開始タイミングが到来した場合に、学習部207により生成された時刻補正量を用いて、時刻補正を行う。
一方、時刻補正方法(2-b)を行う場合は、時刻補正部206は、予兆が検出された場合に、学習部207により生成された時刻補正量を用いて、時刻補正を行う。
時刻補正方法(2-a)を行う場合は、時刻補正部206は、周波数偏差パターンの開始タイミングが到来した場合に、学習部207により生成された時刻補正量を用いて、時刻補正を行う。
一方、時刻補正方法(2-b)を行う場合は、時刻補正部206は、予兆が検出された場合に、学習部207により生成された時刻補正量を用いて、時刻補正を行う。
なお、時刻補正方法(2-a)を行う場合に、周波数偏差パターンの開始タイミングが到来しない場合は、実施の形態1と同様に、時刻補正量算出部205が時刻補正量を算出する。
同様に、時刻補正方法(2-b)を行う場合に、予兆が検出されない場合は、実施の形態1と同様に、時刻補正量算出部205が時刻補正量を算出する。
同様に、時刻補正方法(2-b)を行う場合に、予兆が検出されない場合は、実施の形態1と同様に、時刻補正量算出部205が時刻補正量を算出する。
図6の他の構成要素は、図2に示すものと同じであるため、説明を省略する。
先ず、時刻補正方法(2-a)の詳細を説明する。
**時刻補正方法(2-a)**
図7は、時刻補正方法(2-a)を実現する学習部207の内部構成例を示す。
学習部207は、偏差時間特性推定部2071及び時刻補正量推定部2072を含む。
図8は、偏差時間特性推定部2071及び時刻補正量推定部2072の動作例を示す。
また、図9は、時刻補正方法(2-a)の具体例を示す。
図7は、時刻補正方法(2-a)を実現する学習部207の内部構成例を示す。
学習部207は、偏差時間特性推定部2071及び時刻補正量推定部2072を含む。
図8は、偏差時間特性推定部2071及び時刻補正量推定部2072の動作例を示す。
また、図9は、時刻補正方法(2-a)の具体例を示す。
学習フェーズでは、偏差時間特性推定部2071が、周波数偏差(入力A1)、時刻情報(入力A2)及び水晶発振器温度(入力A3)から、周波数偏差の時間推移である周波数偏差パターン(出力A1)、周波数偏差特性周期(出力A2)及び周波数偏差特性周期の開始タイミング(出力A3)を学習する。
また、時刻補正量推定部2072は、偏差時間特性推定部2071からの出力A1、出力A2及び出力A3から、時刻補正量(出力B1)を学習する。学習にはニューラルネットワークが用いられる。周波数偏差パターン(出力A1)はP(t)で表される式であるが、周波数偏差パターン(出力A1)の入力方法の詳細は実施の形態3で説明する。
また、時刻補正量推定部2072は、偏差時間特性推定部2071からの出力A1、出力A2及び出力A3から、時刻補正量(出力B1)を学習する。学習にはニューラルネットワークが用いられる。周波数偏差パターン(出力A1)はP(t)で表される式であるが、周波数偏差パターン(出力A1)の入力方法の詳細は実施の形態3で説明する。
(α)学習フェーズ
以下、学習フェーズにおける偏差時間特性推定部2071及び時刻補正量推定部2072の動作を図8に従って説明する。
以下、学習フェーズにおける偏差時間特性推定部2071及び時刻補正量推定部2072の動作を図8に従って説明する。
先ず、偏差時間特性推定部2071が、以下の入力A1~入力A3を取得する(ステップS801)。
入力A1:IEEE802.1AS又はIEEE1588で計測された周波数偏差
入力A2:入力A1の周波数偏差を計測した時間
入力A3:水晶発振器の温度(任意)
入力A1は、計算周期ごとの周波数偏差である。計算周期は、周波数偏差及び周波数偏差変化率を算出するための単位時間である。
入力A3は、省略してもよい。
入力A1:IEEE802.1AS又はIEEE1588で計測された周波数偏差
入力A2:入力A1の周波数偏差を計測した時間
入力A3:水晶発振器の温度(任意)
入力A1は、計算周期ごとの周波数偏差である。計算周期は、周波数偏差及び周波数偏差変化率を算出するための単位時間である。
入力A3は、省略してもよい。
次に、偏差時間特性推定部2071が、計算周期ごとに、周波数偏差変化率を算出する(ステップS802)。
より具体的には、偏差時間特性推定部2071は、計算周期nで、計算周期(n-2)の周波数偏差と計算周期(n-1)の周波数偏差との変化率(周波数偏差変化率)を算出する。計算周期(n-2)の周波数偏差と計算周期(n-1)の周波数偏差は、入力A1で得られる。
より具体的には、偏差時間特性推定部2071は、計算周期nで、計算周期(n-2)の周波数偏差と計算周期(n-1)の周波数偏差との変化率(周波数偏差変化率)を算出する。計算周期(n-2)の周波数偏差と計算周期(n-1)の周波数偏差は、入力A1で得られる。
次に、偏差時間特性推定部2071が、周波数偏差特性周期を算出する(ステップS803)。
偏差時間特性推定部2071は、入力A1、入力A2及びステップS802で得られた計算周期ごとの周波数偏差変化率に基づき、周波数偏差の時間推移のパターン(図9の波形パターン)が周期的に繰り返されていることを検知する。偏差時間特性推定部2071は周波数偏差の時間推移について、特定の規則性を検出し、検出した特定の規則性を学習する。この特定の規則性のある周波数偏差の時間推移を周波数偏差パターンとする。また、偏差時間特性推定部2071は、周波数偏差パターンの周期を周波数偏差特性周期として抽出する。このとき、偏差時間特性推定部2071は、周波数偏差特性周期の開始タイミングも推定する。
図9に周波数偏差特性周期の例を示す。
また、偏差時間特性推定部2071がステップS801で入力A3を取得している場合は、偏差時間特性推定部2071は、入力A3に基づき、水晶発振器の温度変化から周波偏差数特性周期を算出してもよい(この場合は、実施の形態3に示す方法を用いる)。
偏差時間特性推定部2071は、入力A1、入力A2及びステップS802で得られた計算周期ごとの周波数偏差変化率に基づき、周波数偏差の時間推移のパターン(図9の波形パターン)が周期的に繰り返されていることを検知する。偏差時間特性推定部2071は周波数偏差の時間推移について、特定の規則性を検出し、検出した特定の規則性を学習する。この特定の規則性のある周波数偏差の時間推移を周波数偏差パターンとする。また、偏差時間特性推定部2071は、周波数偏差パターンの周期を周波数偏差特性周期として抽出する。このとき、偏差時間特性推定部2071は、周波数偏差特性周期の開始タイミングも推定する。
図9に周波数偏差特性周期の例を示す。
また、偏差時間特性推定部2071がステップS801で入力A3を取得している場合は、偏差時間特性推定部2071は、入力A3に基づき、水晶発振器の温度変化から周波偏差数特性周期を算出してもよい(この場合は、実施の形態3に示す方法を用いる)。
次に、偏差時間特性推定部2071は、周波数偏差特性周期の開始タイミングからt秒後の周波数偏差変化率P(t)を算出する(ステップS804)。
具体的には、偏差時間特性推定部2071は、以下の式14により周波数偏差P(t)を算出する。なお、P(t0)は、周波数偏差特性周期の開始タイミングでの周波数偏差である。P’(t)は時刻tにおける周波数偏差変化率である。
P(t)=P’(t)×t+P(t0) 式14
P(t0)、P’(t)の単位はそれぞれppm、ppm/sである。
具体的には、偏差時間特性推定部2071は、以下の式14により周波数偏差P(t)を算出する。なお、P(t0)は、周波数偏差特性周期の開始タイミングでの周波数偏差である。P’(t)は時刻tにおける周波数偏差変化率である。
P(t)=P’(t)×t+P(t0) 式14
P(t0)、P’(t)の単位はそれぞれppm、ppm/sである。
次に、偏差時間特性推定部2071は、出力A1~出力A3を時刻補正量推定部2072に出力し、時刻補正量推定部2072が出力A1~出力A3を取得する(ステップS805)。
次に、時刻補正量推定部2072が、ステップS804の算出結果をもとに、ステップS803で算出した周波数偏差変化率から、式15に従い、時刻補正量(ΔC(t))を算出する(ステップS806)。つまり、時刻補正量推定部2072は、式15に従い、周波数偏差変化率と時間との積(P’(t)×t)と周波数偏差パターンの開始タイミングでの周波数偏差(P(t0))とを時間積分して、時刻補正量(ΔC(t))を算出する。
最後に、時刻補正量推定部2072は、出力B1~出力B3を出力する(ステップS807)。
具体的には、時刻補正量推定部2072は、ステップS806で算出された時刻補正量ΔC(t)を出力B1として時刻補正部206に出力する。また、時刻補正量推定部2072は、偏差時間特性推定部2071から取得した周波数偏差特性周期(出力A2)を出力B2として周波数偏差変化率算出部204に出力する。また、時刻補正量推定部2072は、偏差時間特性推定部2071から取得した周波数偏差特性周期の開始タイミング(出力A3)を出力B3として周波数偏差変化率算出部204に出力する。
具体的には、時刻補正量推定部2072は、ステップS806で算出された時刻補正量ΔC(t)を出力B1として時刻補正部206に出力する。また、時刻補正量推定部2072は、偏差時間特性推定部2071から取得した周波数偏差特性周期(出力A2)を出力B2として周波数偏差変化率算出部204に出力する。また、時刻補正量推定部2072は、偏差時間特性推定部2071から取得した周波数偏差特性周期の開始タイミング(出力A3)を出力B3として周波数偏差変化率算出部204に出力する。
(β)活用フェーズ
周波数偏差変化率算出部204は、IEEE802.1AS又はIEEE1588のプロトコルに従い、計算周期ごとに、周波数偏差変化率を算出する。そして、周波数偏差変化率算出部204は、算出した周波数偏差変化率と時刻補正量推定部2072から取得した周波数偏差特性周期(出力A2)及び周波数偏差特性周期の開始タイミング(出力A3)とに基づき、周波数偏差特性周期の開始タイミングを検出する。
そして、周波数偏差変化率算出部204は、周波数偏差特性周期の開始タイミングを検出した後は、時刻補正部206に開始タイミングが到来したことを通知する。
時刻補正部206は、開始タイミングが到来したことを通知された場合に、時刻補正量(出力B1)を用いて時刻同期を行う。
なお、開始タイミングが到来しない場合は、実施の形態1の方法に従って時刻補正が行われる。
周波数偏差変化率算出部204は、IEEE802.1AS又はIEEE1588のプロトコルに従い、計算周期ごとに、周波数偏差変化率を算出する。そして、周波数偏差変化率算出部204は、算出した周波数偏差変化率と時刻補正量推定部2072から取得した周波数偏差特性周期(出力A2)及び周波数偏差特性周期の開始タイミング(出力A3)とに基づき、周波数偏差特性周期の開始タイミングを検出する。
そして、周波数偏差変化率算出部204は、周波数偏差特性周期の開始タイミングを検出した後は、時刻補正部206に開始タイミングが到来したことを通知する。
時刻補正部206は、開始タイミングが到来したことを通知された場合に、時刻補正量(出力B1)を用いて時刻同期を行う。
なお、開始タイミングが到来しない場合は、実施の形態1の方法に従って時刻補正が行われる。
図9は、学習部207の動作の具体例を示す。
以下、図9を説明する。
以下、図9を説明する。
学習フェーズにおいて、偏差時間特性推定部2071が、周波数偏差の時間推移のパターンの周期性を学習する。この結果、偏差時間特性推定部2071は、波形パターンが周波数偏差特性周期で繰り返されていることを検知する。そして、偏差時間特性推定部2071は、周波数偏差特性周期の長さと周波数偏差特性周期の開始タイミングを学習する。また、時刻補正量推定部2072が、時刻補正量を算出する。
活用フェーズにおいて、周波数偏差変化率算出部204が、周波数偏差特性周期の開始タイミングを検出する。そして、時刻補正部206が、学習部207により得られた時刻補正量を用いて時刻補正を行う。
次に、時刻補正方法(2-b)の詳細を説明する。
**時刻補正方法(2-b)**
図10は、時刻補正方法(2-b)を実現する学習部207の内部構成例を示す。
図7の例と同様に、学習部207は、偏差時間特性推定部2071及び時刻補正量推定部2072を含む。
図11は、偏差時間特性推定部2071及び時刻補正量推定部2072の動作例を示す。
また、図12は、時刻補正方法(2-b)の具体例を示す。
図10は、時刻補正方法(2-b)を実現する学習部207の内部構成例を示す。
図7の例と同様に、学習部207は、偏差時間特性推定部2071及び時刻補正量推定部2072を含む。
図11は、偏差時間特性推定部2071及び時刻補正量推定部2072の動作例を示す。
また、図12は、時刻補正方法(2-b)の具体例を示す。
学習フェーズでは、偏差時間特性推定部2071が、周波数偏差(入力A1)、時刻情報(入力A2)、水晶発振器温度(入力A3)及び制御情報(入力A4)から、周波数偏差パターン(出力A1)、周波数偏差特性周期(出力A2)及び予兆検知タイミング(出力A3)を学習する。
また、時刻補正量推定部2072は、偏差時間特性推定部2071からの出力A1、出力A2及び出力A3から、時刻補正量(出力B1)を学習する。学習にはニューラルネットワークが用いられる。
また、時刻補正量推定部2072は、偏差時間特性推定部2071からの出力A1、出力A2及び出力A3から、時刻補正量(出力B1)を学習する。学習にはニューラルネットワークが用いられる。
(α)学習フェーズ
以下、学習フェーズにおける偏差時間特性推定部2071及び時刻補正量推定部2072の動作を図11に従って説明する。
以下、学習フェーズにおける偏差時間特性推定部2071及び時刻補正量推定部2072の動作を図11に従って説明する。
先ず、偏差時間特性推定部2071が、以下の入力A1~入力A3を取得する(ステップS1101)。
入力A1:IEEE802.1AS又はIEEE1588で計測された周波数偏差
入力A2:入力A1の周波数偏差を計測した時間
入力A3:水晶発振器の温度(任意)
入力A4:制御情報
入力A1は、計算周期ごとの周波数偏差である。計算周期は、前述の通りである。
入力A3は、省略してもよい。
入力4は、スイッチのオンオフ等の制御コマンドである。入力A4として、例えば、溶接、放電処理、冷却等を実行するコマンドが入力される。スレーブ装置200で溶接、放電処理等が実行されると、スレーブ装置200の水晶発振器の温度が急激に上昇すると考えられる。一方、スレーブ装置200で冷却が実行されると、スレーブ装置200の水晶発振器の温度が急激に降下すると考えられる。
入力A1:IEEE802.1AS又はIEEE1588で計測された周波数偏差
入力A2:入力A1の周波数偏差を計測した時間
入力A3:水晶発振器の温度(任意)
入力A4:制御情報
入力A1は、計算周期ごとの周波数偏差である。計算周期は、前述の通りである。
入力A3は、省略してもよい。
入力4は、スイッチのオンオフ等の制御コマンドである。入力A4として、例えば、溶接、放電処理、冷却等を実行するコマンドが入力される。スレーブ装置200で溶接、放電処理等が実行されると、スレーブ装置200の水晶発振器の温度が急激に上昇すると考えられる。一方、スレーブ装置200で冷却が実行されると、スレーブ装置200の水晶発振器の温度が急激に降下すると考えられる。
次に、偏差時間特性推定部2071が、計算周期ごとに、周波数偏差パターンを算出する(ステップS1102)。周波数偏差パターンは時刻に対応する周波数偏差であり、周波数偏差を時間の関数で表した式である。周波数偏差パターンの実態については後述する。
次に、偏差時間特性推定部2071が、周波数偏差が急激に変化する時間推移の波形のパターンと、周波数偏差が急激に変化する予兆を学習する(ステップS1103)。
偏差時間特性推定部2071は、予兆の学習として、例えば、周波数偏差と入力A4の制御情報との時間相関をとる。そして、偏差時間特性推定部2071は、特定のイベントが発生したとき(例えば、特定のコマンドが入力されたとき)の周波数偏差の時間推移のパターンを学習する。
また、偏差時間特性推定部2071がステップS1101で入力A3を取得している場合は、偏差時間特性推定部2071は、水晶発振器の温度変化から、周波数偏差が急激に変化する時間推移の波形のパターンと、周波数偏差が急激に変化する予兆を学習してもよい(この場合は、実施の形態3に示す方法を用いる)。
偏差時間特性推定部2071は、予兆の学習として、例えば、周波数偏差と入力A4の制御情報との時間相関をとる。そして、偏差時間特性推定部2071は、特定のイベントが発生したとき(例えば、特定のコマンドが入力されたとき)の周波数偏差の時間推移のパターンを学習する。
また、偏差時間特性推定部2071がステップS1101で入力A3を取得している場合は、偏差時間特性推定部2071は、水晶発振器の温度変化から、周波数偏差が急激に変化する時間推移の波形のパターンと、周波数偏差が急激に変化する予兆を学習してもよい(この場合は、実施の形態3に示す方法を用いる)。
次に、偏差時間特性推定部2071は、周波数偏差が急激に変化する予兆を検知し、対応する周波数偏差の時間推移のパターンを予想する(ステップS1104)。
また、偏差時間特性推定部2071がステップS1101で入力A3を取得している場合は、偏差時間特性推定部2071は、水晶発振器の温度変化から、周波数偏差が急激に変化する予兆を検知し、対応する周波数偏差の時間推移のパターンを予想してもよい(この場合は、実施の形態3に示す方法を用いる)。
偏差時間特性推定部2071が予想する周波数偏差の時間推移のパターンは周波数偏差パターンに相当する。
また、偏差時間特性推定部2071がステップS1101で入力A3を取得している場合は、偏差時間特性推定部2071は、水晶発振器の温度変化から、周波数偏差が急激に変化する予兆を検知し、対応する周波数偏差の時間推移のパターンを予想してもよい(この場合は、実施の形態3に示す方法を用いる)。
偏差時間特性推定部2071が予想する周波数偏差の時間推移のパターンは周波数偏差パターンに相当する。
次に、偏差時間特性推定部2071が、予兆を検知したタイミングからt秒後の周波数偏差P(t)を式16により算出する(ステップS1105)。なお、P(t0)は、予兆を検知したタイミングでの周波数偏差である。
P(t)=P’(t)×t+P(t0) 式16
P(t0)、P’(t)の単位はそれぞれppm、ppm/sである。
P(t)=P’(t)×t+P(t0) 式16
P(t0)、P’(t)の単位はそれぞれppm、ppm/sである。
次に、偏差時間特性推定部2071は、出力A1~出力A3を時刻補正量推定部2072に出力し、時刻補正量推定部2072が出力A1~出力A3を取得する(ステップS1106)。
次に、時刻補正量推定部2072が、ステップS1105で算出された周波数偏差から、式17に従い、時刻補正量(ΔC(t))を算出する(ステップS1107)。つまり、時刻補正量推定部2072は、式17に従い、周波数偏差変化率と時間との積(P’(t)×t)と予兆の検知タイミングでの周波数偏差(P(t0))とを時間積分して、時刻補正量(ΔC(t))を算出する。
最後に、時刻補正量推定部2072は、出力B1、出力B2及び出力B3を出力する(ステップS1108)。
具体的には、時刻補正量推定部2072は、ステップS1107で算出された時刻補正量ΔC(t)を出力B1として時刻補正部206に出力する。また、時刻補正量推定部2072は、偏差時間特性推定部2071から取得した予兆検知タイミング(出力A3)を出力B2として時刻補正部206に出力する。
具体的には、時刻補正量推定部2072は、ステップS1107で算出された時刻補正量ΔC(t)を出力B1として時刻補正部206に出力する。また、時刻補正量推定部2072は、偏差時間特性推定部2071から取得した予兆検知タイミング(出力A3)を出力B2として時刻補正部206に出力する。
(β)活用フェーズ
偏差時間特性推定部2071は、予兆検知タイミング(出力A3)に基づき、周波数偏差の急激な変化の予兆を検知する。
偏差時間特性推定部2071は、予兆を検知した場合は、時刻補正量推定部2072経由で時刻補正部206に予兆を検知したことを通知する。
時刻補正部206は、偏差時間特性推定部2071から予兆を検知したことを通知された場合に、時刻補正量推定部2072から取得した時刻補正量(出力B1)を用いて時刻補正を行う。
なお、予兆が検出されない場合は、実施の形態1の方法に従って時刻補正が行われる。
偏差時間特性推定部2071は、予兆検知タイミング(出力A3)に基づき、周波数偏差の急激な変化の予兆を検知する。
偏差時間特性推定部2071は、予兆を検知した場合は、時刻補正量推定部2072経由で時刻補正部206に予兆を検知したことを通知する。
時刻補正部206は、偏差時間特性推定部2071から予兆を検知したことを通知された場合に、時刻補正量推定部2072から取得した時刻補正量(出力B1)を用いて時刻補正を行う。
なお、予兆が検出されない場合は、実施の形態1の方法に従って時刻補正が行われる。
図12は、学習部207の動作の具体例を示す。
以下、図12を説明する。
以下、図12を説明する。
学習フェーズにおいて、時刻t1で、偏差時間特性推定部2071に、入力A1、入力A2及び入力A4が入力される。
時刻t1では、入力A4の制御情報として溶接実行コマンドがスレーブ装置200で発行されたものとする。
偏差時間特性推定部2071は、溶接実行コマンドに起因して周波数偏差が波形パターン1で変化することを学習する。
また、時刻補正量推定部2072が、波形パターン1に対応する時刻補正量ΔC(t1)を以下の式18により計算する。
時刻補正量推定部2072は、出力B1として時刻補正量ΔC(t1)を時刻補正部206に出力し、出力B2として溶接実行コマンドを制御部202と時刻補正部206に出力する。
時刻t1では、入力A4の制御情報として溶接実行コマンドがスレーブ装置200で発行されたものとする。
偏差時間特性推定部2071は、溶接実行コマンドに起因して周波数偏差が波形パターン1で変化することを学習する。
また、時刻補正量推定部2072が、波形パターン1に対応する時刻補正量ΔC(t1)を以下の式18により計算する。
時刻補正量推定部2072は、出力B1として時刻補正量ΔC(t1)を時刻補正部206に出力し、出力B2として溶接実行コマンドを制御部202と時刻補正部206に出力する。
また、学習フェーズにおいて、時刻t2で、偏差時間特性推定部2071に、入力A1、入力A2及び入力A4が入力される。
時刻t2では、入力A4の制御情報として冷却コマンドがスレーブ装置200で発行されたものとする。
偏差時間特性推定部2071は、冷却コマンドに起因して周波数偏差が波形パターン2で変化することを学習する。
また、時刻補正量推定部2072が、波形パターン2に対応する時刻補正量を以下の式19により計算する。
時刻補正量推定部2072は、出力B1として時刻補正量ΔC(t2)を時刻補正部206に出力し、出力B2として冷却コマンドを制御部202と時刻補正部206に出力する。
時刻t2では、入力A4の制御情報として冷却コマンドがスレーブ装置200で発行されたものとする。
偏差時間特性推定部2071は、冷却コマンドに起因して周波数偏差が波形パターン2で変化することを学習する。
また、時刻補正量推定部2072が、波形パターン2に対応する時刻補正量を以下の式19により計算する。
時刻補正量推定部2072は、出力B1として時刻補正量ΔC(t2)を時刻補正部206に出力し、出力B2として冷却コマンドを制御部202と時刻補正部206に出力する。
活用フェーズでは、時刻t3で制御部202が溶接実行コマンドの発行とその時のタイムスタンプ(時刻)を偏差時間特性推定部2071に通知する。偏差時間特性推定部2071は時刻補正量推定部2072を経由して、溶接実行コマンドの発行の時刻を時刻補正部206に通知する。
溶接実行コマンドの発行は波形パターン1の予兆であるため、時刻補正部206は、波形パターン1に対応する時刻補正量ΔC(t1)を用いて時刻補正を行う。
具体的な時刻補正量の計算方法は実施の形態3で説明する。また、時刻補正時の、周波数偏差特性周期、開始タイミング、予兆検知タイミングの活用方法についても実施の形態3で説明する。
溶接実行コマンドの発行は波形パターン1の予兆であるため、時刻補正部206は、波形パターン1に対応する時刻補正量ΔC(t1)を用いて時刻補正を行う。
具体的な時刻補正量の計算方法は実施の形態3で説明する。また、時刻補正時の、周波数偏差特性周期、開始タイミング、予兆検知タイミングの活用方法についても実施の形態3で説明する。
周波数偏差が変動する場合に、本実施の形態によっても、変動する周波数偏差に合わせた時刻補正が可能である。また、本実施の形態では、学習により得られた時刻補正量を用いて時刻補正が行われるため、周波数偏差変化率及び時刻補正量の算出が不要であり、演算負荷を軽減することができる。
実施の形態3.
本実施の形態でも、AIを活用して周波数偏差変化率の時間推移を学習し、学習結果に基づいて時刻補正を行う例を説明する。
なお、本実施の形態では、主に実施の形態1及び実施の形態2との差異を説明する。
また、以下で説明していない事項は、実施の形態1及び実施の形態2と同様である。
本実施の形態においても、時刻同期システム1000の構成例は図1に示す通りである。
また、本実施の形態においてもスレーブ装置200のハードウェア構成例は図2に示す通りである。また、本実施の形態においてもスレーブ装置200の機能構成例は図6に示す通りである。
本実施の形態でも、AIを活用して周波数偏差変化率の時間推移を学習し、学習結果に基づいて時刻補正を行う例を説明する。
なお、本実施の形態では、主に実施の形態1及び実施の形態2との差異を説明する。
また、以下で説明していない事項は、実施の形態1及び実施の形態2と同様である。
本実施の形態においても、時刻同期システム1000の構成例は図1に示す通りである。
また、本実施の形態においてもスレーブ装置200のハードウェア構成例は図2に示す通りである。また、本実施の形態においてもスレーブ装置200の機能構成例は図6に示す通りである。
実施の形態3では、実施の形態2と周波数偏差の算出方法が異なる。実施の形態2では、時刻同期プロトコルで測定された周波数偏差がそのまま用いられる。実施の形態3では、水晶発振器の温度とプロトコルで測定された周波数偏差との相関関係をAIが推定する。また、実施の形態3では、AIが水晶発振器固有の周波数偏差温度特性を求める。また、実施の形態3では、AIが、求めた周波数偏差温度特性から、AIに入力された水晶発振器温度に対する周波数偏差を算出し、この周波数偏差を用いて時刻補正を行う。本実施の形態よって、プロトコルで測定された周波数偏差だけでなく、水晶発振器本来の周波数偏差の温度特性を分析することができるため、実際の水晶発振器の周波数偏差により近い時刻補正量を計算することが可能である。
水晶発振器の周波数偏差は図13のように水晶発信器の個体ごとに異なり、水晶の温度によって、周波数偏差が変化する。上記の個体ごとに異なる周波数偏差の特性をAIが学習する。さらに学習した周波数偏差特性の情報をもとにAIが時刻補正量を推定する。本AIの実態は学習部207である。実施の形態3に係る学習部207の内部は以下の(1)~(3)に示すように、偏差温度特性推定部2075、偏差時間特性推定部2076及び時刻補正量推定部2077で構成される。
(1)偏差温度特性推定部2075
偏差温度特性推定部2075は、スレーブ装置200の水晶発振器の周波数偏差温度特性を学習して、波数偏差温度特性を推定する。
(2)偏差時間特性推定部2076
偏差時間特性推定部2076は、偏差温度特性推定部2075により推定された周波数偏差温度特性から温度に対する周波数偏差を算出し、周波数偏差の時間推移を学習する。偏差時間特性推定部2076は、周波数偏差の時間推移から周波数偏差変化率と周波数偏差パターン(特定の規則性がある周波数偏差の時間推移)を算出し、後述の時刻補正量推定部2077に周波数偏差変化率及び周波数偏差パターンを出力する。偏差時間特性推定部2076は、実施の形態2と同様に、周波数偏差特性周期、周波数偏差パターンの開始タイミング、周波数偏差パターン、予兆検知タイミングを学習する。
(3)時刻補正量推定部2077
時刻補正量推定部2077は、偏差時間特性推定部2076が学習した周波数偏差の時間推移をもとに、スレーブ装置200の時刻補正量を学習して、時刻補正量を推定する。
偏差温度特性推定部2075は、スレーブ装置200の水晶発振器の周波数偏差温度特性を学習して、波数偏差温度特性を推定する。
(2)偏差時間特性推定部2076
偏差時間特性推定部2076は、偏差温度特性推定部2075により推定された周波数偏差温度特性から温度に対する周波数偏差を算出し、周波数偏差の時間推移を学習する。偏差時間特性推定部2076は、周波数偏差の時間推移から周波数偏差変化率と周波数偏差パターン(特定の規則性がある周波数偏差の時間推移)を算出し、後述の時刻補正量推定部2077に周波数偏差変化率及び周波数偏差パターンを出力する。偏差時間特性推定部2076は、実施の形態2と同様に、周波数偏差特性周期、周波数偏差パターンの開始タイミング、周波数偏差パターン、予兆検知タイミングを学習する。
(3)時刻補正量推定部2077
時刻補正量推定部2077は、偏差時間特性推定部2076が学習した周波数偏差の時間推移をもとに、スレーブ装置200の時刻補正量を学習して、時刻補正量を推定する。
偏差温度特性推定部2075、偏差時間特性推定部2076及び時刻補正量推定部2077の関係を図14に示す。
図14は、周波数偏差温度特性と周波数偏差パターンP(Q(t))の式を用いて、周波数偏差と温度の関係を、周波数偏差と時刻の関係に変換し、これによって時刻補正量が推定できることを表している。
学習部207では、図14の(1)に従って偏差温度特性推定部2075が周波数偏差温度特性P(Q)を学習する。そして、図14の(2)のように、偏差時間特性推定部2076が、偏差温度特性推定部2075によって学習された周波数偏差温度特性P(Q)と、入力された時刻情報から、周波数偏差パターンP(Q(t))を推定する。そして、図14の(3)に示すように、時刻補正量推定部2077が、周波数偏差パターンP(Q(t))に対応した時刻補正量ΔCcorrectを推定する。つまり、時刻補正量推定部2077が周波数偏差パターンP(Q(t))ごとの周波数偏差および周波数偏差変化率を計算し、これらの時間積分から時刻補正量ΔCcorrectを推定する。
時刻補正量ΔCcorrectは図14の網掛け部分の面積に対応する。
図14は、周波数偏差温度特性と周波数偏差パターンP(Q(t))の式を用いて、周波数偏差と温度の関係を、周波数偏差と時刻の関係に変換し、これによって時刻補正量が推定できることを表している。
学習部207では、図14の(1)に従って偏差温度特性推定部2075が周波数偏差温度特性P(Q)を学習する。そして、図14の(2)のように、偏差時間特性推定部2076が、偏差温度特性推定部2075によって学習された周波数偏差温度特性P(Q)と、入力された時刻情報から、周波数偏差パターンP(Q(t))を推定する。そして、図14の(3)に示すように、時刻補正量推定部2077が、周波数偏差パターンP(Q(t))に対応した時刻補正量ΔCcorrectを推定する。つまり、時刻補正量推定部2077が周波数偏差パターンP(Q(t))ごとの周波数偏差および周波数偏差変化率を計算し、これらの時間積分から時刻補正量ΔCcorrectを推定する。
時刻補正量ΔCcorrectは図14の網掛け部分の面積に対応する。
前記AIを活用した時刻補正量の推定を行うための機能ブロックを図15に示す。
本手段では、(α)学習フェーズ、(β)活用フェーズでそれぞれ以下の動作を実施する。
本手段では、(α)学習フェーズ、(β)活用フェーズでそれぞれ以下の動作を実施する。
(α)学習フェーズ
学習フェーズでは、教師有り学習(ニューラルネットワーク)を実施する。偏差温度特性推定部2075に水晶発振器の温度と、周波数偏差を入力し、偏差温度特性推定部2075が周波数偏差温度特性のモデルを作成する。
学習フェーズでは、教師有り学習(ニューラルネットワーク)を実施する。偏差温度特性推定部2075に水晶発振器の温度と、周波数偏差を入力し、偏差温度特性推定部2075が周波数偏差温度特性のモデルを作成する。
(1)偏差温度特性推定部2075が、入力A1:時刻同期プロトコルによって測定した周波数偏差と入力A3:センサから取得した水晶発振器温度を取得する。また、偏差温度特性推定部2075は、入力A5:データシート上の周波数偏差温度特性を取得してもよい。
(2)偏差温度特性推定部2075は、取得された水晶発振器温度と周波数偏差をもとに、温度に対する周波数偏差の特性を3次関数として近似して周波数偏差温度特性を表すための係数の値(式20のα、β、γ、δ)を学習する。そして、偏差温度特性推定部2075は、学習した係数の値(α、β、γ、δ)が含まれる周波数偏差温度特性(出力A2)を偏差時間特性推定部2076に出力する。周波数偏差温度特性(出力A2)は、温度を変数とする関数であり下式で表すことができる。
P(Q)=αQ3+βQ2+γQ+δ [ppm] 式20
P(Q):周波数偏差[ppm] (入力A1)
Q:水晶発振器の温度[℃] (入力A2)
P(Q)=αQ3+βQ2+γQ+δ [ppm] 式20
P(Q):周波数偏差[ppm] (入力A1)
Q:水晶発振器の温度[℃] (入力A2)
データシートの周波数偏差温度特性(入力A5)を取得している場合は、偏差温度特性推定部2075は、取得した周波数偏差温度特性と周波数偏差をもとに、データシート上の特性に最も近い特性を示す、係数の値(α、β、γ、δ)を学習する。そして、偏差温度特性推定部2075は、学習した係数の値(α、β、γ、δ)が含まれる周波数偏差温度特性(出力A2)を偏差時間特性推定部2076に出力する。
偏差温度特性推定部2075は、周波数偏差温度特性の係数値(α、β、γ、δ)を学習するにあたり、プロトコルで測定された周波数偏差(入力A1)を式20の左辺のP(Q)に代入し、周波数偏差を測定したときの水晶発振器の温度(入力A3)を式20の右辺のQに代入する。プロトコルにより繰り返し測定を行うことで、偏差温度特性推定部2075は、α、β、γ、δの4つ係数について、4元連立方程式を解き、係数の値を導出する。
(3)偏差時間特性推定部2076は、上記の(2)で算出された周波数偏差温度特性(出力A2)と水晶発振器温度(入力A3)を取得する。そして、偏差時間特性推定部2076は、周波数偏差温度特性(出力A2)と水晶発振器温度(入力A3)を用いて、周波数偏差及び周波数変化率を算出する。さらに、偏差時間特性推定部2076は、前記水晶発振器温度が入力された時刻(入力A2:時刻情報)を取得する。また、偏差時間特性推定部2076は、周波数偏差の時間推移を測定し、周波数偏差の時間推移を周波数偏差パターン(出力B1)として時刻補正量推定部2077に出力する。また、偏差時間特性推定部2076は、特定の規則性がある周波数偏差の時間推移を周波数偏差パターンとして検知する。さらに、偏差時間特性推定部2076は、周波数偏差パターンが発生する前に発生する予兆を検知し、予兆を記憶する。周波数偏差パターンと予兆は、以下の(3-a)もしくは(3-b)に示す通りである。
(3-a)(図15)
実施の形態2の(2-a)と同様に、偏差時間特性推定部2076は、周波数偏差パターン(波形パターン)が周波数偏差特性周期で繰り返されていることを検知し、周波数偏差特性周期と周波数偏差特性周期の開始タイミングを学習する。偏差時間特性推定部2076は、周波数偏差特性周期(出力B3)と周期開始タイミング(出力B2)を時刻補正量推定部2077に出力する。周期開始タイミング(出力B2)は、周波数偏差特性周期の開始タイミングである。
時刻補正量推定部2077は、実施の形態2の(2-a)と同様に、周波数偏差特性パターンに対応する時刻補正量を学習する。
実施の形態2の(2-a)と同様に、偏差時間特性推定部2076は、周波数偏差パターン(波形パターン)が周波数偏差特性周期で繰り返されていることを検知し、周波数偏差特性周期と周波数偏差特性周期の開始タイミングを学習する。偏差時間特性推定部2076は、周波数偏差特性周期(出力B3)と周期開始タイミング(出力B2)を時刻補正量推定部2077に出力する。周期開始タイミング(出力B2)は、周波数偏差特性周期の開始タイミングである。
時刻補正量推定部2077は、実施の形態2の(2-a)と同様に、周波数偏差特性パターンに対応する時刻補正量を学習する。
(3-b)(図16)
実施の形態2の(2-b)と同様に、偏差時間特性推定部2076は、制御情報(入力A4)を取得する。また、偏差時間特性推定部2076は、制御情報に対する周波数偏差の時間推移を周波数偏差パターンとして学習する。また、偏差時間特性推定部2076は、前記時間推移の波形の長さを周波数偏差特性周期として学習し、予兆検知タイミングを学習する。予兆検知タイミングは、周波数偏差パターンが発生する前に発生する予兆の発生タイミングである。偏差時間特性推定部2076は、予兆検知タイミング(出力B2)と周波数偏差特性周期(出力B3)を時刻補正量推定部2077に出力する。
実施の形態2の(2-b)と同様に、偏差時間特性推定部2076は、制御情報(入力A4)を取得する。また、偏差時間特性推定部2076は、制御情報に対する周波数偏差の時間推移を周波数偏差パターンとして学習する。また、偏差時間特性推定部2076は、前記時間推移の波形の長さを周波数偏差特性周期として学習し、予兆検知タイミングを学習する。予兆検知タイミングは、周波数偏差パターンが発生する前に発生する予兆の発生タイミングである。偏差時間特性推定部2076は、予兆検知タイミング(出力B2)と周波数偏差特性周期(出力B3)を時刻補正量推定部2077に出力する。
(3-a)、(3-b)の時刻補正量の計算方法の考え方は実施の形態2と同様であるが、本実施の形態では、水晶発振器温度の情報と時刻情報から、周波数偏差の時間推移を求める点が異なる。
次に、周波数偏差パターンの実態について説明する。周波数偏差パターンの実態は、時刻tを変数とする周波数偏差P(t)の式である。偏差時間特性推定部2076は、P(t)を表すための関数の形式とその形式を識別するための識別番号を設ける。
偏差時間特性推定部2076は、P(t)の多項式の係数値と各項のtの次数、関数の形式の識別番号を時刻補正量推定部2077に出力する。図15及び図16では、この情報を出力B1:周波数偏差パターンと表記している。
偏差時間特性推定部2076は、P(t)の多項式の係数値と各項のtの次数、関数の形式の識別番号を時刻補正量推定部2077に出力する。図15及び図16では、この情報を出力B1:周波数偏差パターンと表記している。
例えば、P(t)がP(t)=At3+Bt2+Ct+Dのように、3次の多項式で表せる場合は、偏差時間特性推定部2076は、関数の形式が3次の多項式であることを表す識別子(識別番号)と、係数A、B、C及びDのそれぞれの値と上記式のtの項のそれぞれの次数を、時刻補正量推定部2077に出力する。P(t)=A×exp(t)+Bのように、P(t)が指数関数で表せる場合は、偏差時間特性推定部2076は、関数の形式が指数関数であることを表す識別子(識別番号)と、係数A、Bのそれぞれの値と、上記式のtの項の次数の値を時刻補正量推定部2077に出力する。
なお、具体的な関数の形式と識別番号の割り当て方は実装方法に依存するため本明細書では、詳細は定義しない。
なお、具体的な関数の形式と識別番号の割り当て方は実装方法に依存するため本明細書では、詳細は定義しない。
時刻補正量の計算の考え方を図17に示す。
図17に記載の通り、式20より、時刻tの時の水晶発振器温度Q(t)に対する周波数偏差は下式で表せる。
P(Q(t))
=α×{Q(t)}3+β×{Q(t)}2+γ×Q(t)+δ
式21
t0=t1、tN-1=t2と置くと、時刻t1~t2における周波数偏差による時刻ずれは、区間t1からt2における周波数偏差P(Q(t))×微小時間Δtの和で表せる。すなわち前記時刻ずれを打ち消す時刻補正量は以下のように計算される。
図17に記載の通り、式20より、時刻tの時の水晶発振器温度Q(t)に対する周波数偏差は下式で表せる。
P(Q(t))
=α×{Q(t)}3+β×{Q(t)}2+γ×Q(t)+δ
式21
t0=t1、tN-1=t2と置くと、時刻t1~t2における周波数偏差による時刻ずれは、区間t1からt2における周波数偏差P(Q(t))×微小時間Δtの和で表せる。すなわち前記時刻ずれを打ち消す時刻補正量は以下のように計算される。
(β)活用フェーズ
偏差時間特性推定部2076は、水晶発振器温度(入力A3)、時刻情報(入力A2)及び制御情報(入力A4)を取得する。また、偏差時間特性推定部2076は、学習フェーズ(3-a)で学習された、周波数偏差特性周期と周波数偏差特性周期の開始タイミングを検知し、周波数偏差特性周期と周波数偏差特性周期の開始タイミングを時刻補正量推定部2077に出力する。時刻補正量推定部2077は、前記周波数偏差特性周期に対応する時刻補正量を時刻補正部206に出力する。
時刻補正量は式23の通り、周波数偏差パターンP(Q(t))を時間積分することで導出できる。
時刻補正部206は時刻補正量を用いて時刻補正を実施する。
偏差時間特性推定部2076は、水晶発振器温度(入力A3)、時刻情報(入力A2)及び制御情報(入力A4)を取得する。また、偏差時間特性推定部2076は、学習フェーズ(3-a)で学習された、周波数偏差特性周期と周波数偏差特性周期の開始タイミングを検知し、周波数偏差特性周期と周波数偏差特性周期の開始タイミングを時刻補正量推定部2077に出力する。時刻補正量推定部2077は、前記周波数偏差特性周期に対応する時刻補正量を時刻補正部206に出力する。
時刻補正量は式23の通り、周波数偏差パターンP(Q(t))を時間積分することで導出できる。
時刻補正部206は時刻補正量を用いて時刻補正を実施する。
もしくは、偏差時間特性推定部2076は、学習フェーズ(3-b)で学習された制御情報に対する周波数偏差の時間推移から予兆検知タイミングと周波数偏差パターンを検知し、予兆検知タイミングと周波数偏差パターンを時刻補正量推定部2077に出力する。時刻補正量推定部2077は周波数偏差パターンに対応する時刻補正量を、時刻補正部206に出力する。時刻補正部206は、時刻補正量を用いて時刻補正を実施する。
なお、前記の周波数偏差特性周期と周波数偏差特性周期の開始タイミング、予兆検知タイミングと周波数偏差パターンは、水晶発振器温度の情報を式20に代入し、水晶発振器温度を周波数偏差の値に変換して求めている。これに代えて、周波数偏差に変換する前の水晶発振器温度の時間推移から周波数偏差特性周期等を直接求めてもよい。これは、周波数偏差の時間推移を求める過程で、水晶発振器温度とそれに対応する時刻が求められているので、前記の周波数偏差パターンと同様に温度の時間推移の規則性をAIが学習し、予兆検出のパターンとして使用することもできるためである。
時刻補正
時刻補正の方法について説明する。
(3-a)と(3-b)のケースで同様に時刻補正量推定部2077が、図20、図21のように時刻補正量を計算する。
図20において、偏差時間特性推定部2076が絶対時刻t1で予兆を検知し、時刻補正部206が絶対時刻t2で時刻補正を実施する場合を想定する。時刻補正量推定部2077は、絶対時刻t1を起点として絶対時刻t2のときの時刻カウンタ値を推定する。絶対時刻t1に対応する時刻カウンタ値が(3-a)の周波数偏差特性周期の開始タイミング又は(3-b)の予兆検知タイミングに相当する。
絶対時刻t1における時刻カウンタ値をC(t)とする。また、絶対時刻t1における時刻カウンタ値(時刻補正済み)をCcorrect(t1)とする。また、絶対時刻t2における補正前の時刻カウンタ値をC(t2)とする。絶対時刻t2における補正後の時刻カウンタ値をCcorrect(t2)とする。この場合は、以下のように時刻カウンタが補正される。時刻補正量推定部2077から時刻補正量が時刻補正部206に入力され、時刻補正部206がスレーブ装置200の時刻補正を実施する。
絶対時刻t1から絶対時刻t2までの時刻ずれ量がC(t2)に反映されているので、式24に示すように、時刻補正部206は、時刻補正量ΔCcorrectを時刻カウンタ値C(t2)から差し引くことで時刻補正が可能である。
時刻補正の方法について説明する。
(3-a)と(3-b)のケースで同様に時刻補正量推定部2077が、図20、図21のように時刻補正量を計算する。
図20において、偏差時間特性推定部2076が絶対時刻t1で予兆を検知し、時刻補正部206が絶対時刻t2で時刻補正を実施する場合を想定する。時刻補正量推定部2077は、絶対時刻t1を起点として絶対時刻t2のときの時刻カウンタ値を推定する。絶対時刻t1に対応する時刻カウンタ値が(3-a)の周波数偏差特性周期の開始タイミング又は(3-b)の予兆検知タイミングに相当する。
絶対時刻t1における時刻カウンタ値をC(t)とする。また、絶対時刻t1における時刻カウンタ値(時刻補正済み)をCcorrect(t1)とする。また、絶対時刻t2における補正前の時刻カウンタ値をC(t2)とする。絶対時刻t2における補正後の時刻カウンタ値をCcorrect(t2)とする。この場合は、以下のように時刻カウンタが補正される。時刻補正量推定部2077から時刻補正量が時刻補正部206に入力され、時刻補正部206がスレーブ装置200の時刻補正を実施する。
絶対時刻t1から絶対時刻t2までの時刻ずれ量がC(t2)に反映されているので、式24に示すように、時刻補正部206は、時刻補正量ΔCcorrectを時刻カウンタ値C(t2)から差し引くことで時刻補正が可能である。
ここで、式24について説明する。
前述の通り、Ccorrect(t2)は、絶対時刻t2における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。Ccorrect(t1)は絶対時刻t1における時刻補正後のスレーブ装置200の時刻カウンタ値を表す。
(t2-t1)は絶対時刻におけるt1からt2の経過時間である。一方、スレーブ装置200の時刻は周波数偏差によって、絶対時刻から周波数偏差分の誤差が発生する。この誤差は、図20のグラフの網掛け部分に相当する。よって、絶対時刻t2において、周波数偏差の誤差が発生しているスレーブ装置200の時刻カウンタ値C(t2)から、時刻補正量推定部2077により推定された時刻補正量ΔCcorrectを差し引くことにより、正確な時刻に補正することができる。
なお、絶対時刻t1の時点では、前の周期で時刻補正済みであるため、絶対時刻t1の補正済みの時刻をCcorrect(t1)と表記している。また予兆を最初に検知した場合についても、予兆を検知するまで従来の方法で時刻補正済みのため、絶対時刻t1の補正済みの時刻をCcorrect(t1)と表記する。
前述の通り、Ccorrect(t2)は、絶対時刻t2における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。Ccorrect(t1)は絶対時刻t1における時刻補正後のスレーブ装置200の時刻カウンタ値を表す。
(t2-t1)は絶対時刻におけるt1からt2の経過時間である。一方、スレーブ装置200の時刻は周波数偏差によって、絶対時刻から周波数偏差分の誤差が発生する。この誤差は、図20のグラフの網掛け部分に相当する。よって、絶対時刻t2において、周波数偏差の誤差が発生しているスレーブ装置200の時刻カウンタ値C(t2)から、時刻補正量推定部2077により推定された時刻補正量ΔCcorrectを差し引くことにより、正確な時刻に補正することができる。
なお、絶対時刻t1の時点では、前の周期で時刻補正済みであるため、絶対時刻t1の補正済みの時刻をCcorrect(t1)と表記している。また予兆を最初に検知した場合についても、予兆を検知するまで従来の方法で時刻補正済みのため、絶対時刻t1の補正済みの時刻をCcorrect(t1)と表記する。
また、時刻補正部206は、図21のように絶対時刻t1から絶対時刻t2の区間(周波数偏差特性周期)について絶対時刻t2のタイミングでまとめて時刻補正するのではなく、Δtの微小な区間ごとに時刻補正を実施してもよい。
この場合も、偏差時間特性推定部2076が予兆を検知したあと、時刻補正部206が、推定された周波数偏差特性周期に従って、Δtの微小な区間ごとに時刻補正を実施する。例えば、図21に示す周波数偏差の時間推移が繰り返されているとすると、時刻補正部206は、時刻t0から時刻t1の微小区間Δtの時刻補正を実施する。以降、時刻補正部206は微小区間Δtごとに時刻補正を実施する。そして、時刻tN-2から時刻tN-1の微小区間Δtの時刻補正を実施すると、更に、時刻補正部206は、後続する周波数偏差特性周期の時刻t0~t1の微小区間Δtの時刻補正量の時刻補正を実施する。以降、時刻補正部206は、この動作を各周波数偏差特性周期で繰り返す。
この場合も、偏差時間特性推定部2076が予兆を検知したあと、時刻補正部206が、推定された周波数偏差特性周期に従って、Δtの微小な区間ごとに時刻補正を実施する。例えば、図21に示す周波数偏差の時間推移が繰り返されているとすると、時刻補正部206は、時刻t0から時刻t1の微小区間Δtの時刻補正を実施する。以降、時刻補正部206は微小区間Δtごとに時刻補正を実施する。そして、時刻tN-2から時刻tN-1の微小区間Δtの時刻補正を実施すると、更に、時刻補正部206は、後続する周波数偏差特性周期の時刻t0~t1の微小区間Δtの時刻補正量の時刻補正を実施する。以降、時刻補正部206は、この動作を各周波数偏差特性周期で繰り返す。
図22に、(3-a)のように周波数偏差の時間推移に周期性がある場合の時刻補正の例を示す。
図22においても、図20と同様に、Ccorrect(t2)は絶対時刻t2における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。Ccorrect(t1)は絶対時刻t1における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。(t2-t1)は絶対時刻におけるt1からt2の経過時間である。一方、スレーブ装置200の時刻には周波数偏差によって、絶対時刻から周波数偏差分の誤差が発生する。この誤差は、図22のグラフの網掛け部分に相当する。よって、時刻補正部206は、絶対時刻t2において、周波数偏差の誤差が発生しているスレーブ装置200の時刻カウンタ値C(t2)から、時刻補正量推定部2077により推定された時刻補正量ΔCcorrectを差し引くことにより、正確な時刻に補正することができる。また、周波数偏差特性周期(周期の長さ(t2-t1))で同じ周波数偏差パターンとなっているので、時刻補正部206は、絶対時刻t3においても、時刻補正量ΔCcorrectを時刻カウンタ値C(t3)から差し引くことで時刻補正を行う。この結果、スレーブ装置200の時刻カウンタ値はCcorrect(t3)に補正される。
図22においても、図20と同様に、Ccorrect(t2)は絶対時刻t2における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。Ccorrect(t1)は絶対時刻t1における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。(t2-t1)は絶対時刻におけるt1からt2の経過時間である。一方、スレーブ装置200の時刻には周波数偏差によって、絶対時刻から周波数偏差分の誤差が発生する。この誤差は、図22のグラフの網掛け部分に相当する。よって、時刻補正部206は、絶対時刻t2において、周波数偏差の誤差が発生しているスレーブ装置200の時刻カウンタ値C(t2)から、時刻補正量推定部2077により推定された時刻補正量ΔCcorrectを差し引くことにより、正確な時刻に補正することができる。また、周波数偏差特性周期(周期の長さ(t2-t1))で同じ周波数偏差パターンとなっているので、時刻補正部206は、絶対時刻t3においても、時刻補正量ΔCcorrectを時刻カウンタ値C(t3)から差し引くことで時刻補正を行う。この結果、スレーブ装置200の時刻カウンタ値はCcorrect(t3)に補正される。
図23に、(3-b)のように制御コマンドと周波数偏差の変化に相関関係がある場合の時刻補正例を示す。
図23においても、図20と同様に、Ccorrect(t2)は絶対時刻t2における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。Ccorrect(t1)は絶対時刻t1における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。(t2-t1)は絶対時刻におけるt1からt2の経過時間である。一方、スレーブ装置200の時刻は周波数偏差によって、絶対時刻から周波数偏差分の誤差が発生する。この誤差は、図23のグラフの網掛け部分に相当する。よって、時刻補正部206は、絶対時刻t2において、周波数偏差の誤差が発生しているスレーブ装置200の時刻カウンタ値C(t2)から、時刻補正量推定部2077により推定された時刻補正量ΔCcorrect,aを差し引くことにより、正確な時刻に補正できる。時刻補正量ΔCcorrect,aは溶接実行コマンドが発行されてから、周波数偏差特性周期の時間が経過するまでの周波数偏差による時刻ずれ量を表している。よって、時刻補正部206は、溶接実行コマンドが発行された時刻から周波数偏差特性周期の時間が経過した時刻に時刻補正量ΔCcorrect,aの値をスレーブ装置200の時刻カウンタ値から差し引くことで、時刻を補正することができる。同様に、時刻補正量ΔCcorrect,bは冷却コマンドが発行されてから周波数偏差特性周期の時間が経過するまでの周波数偏差による時刻ずれ量を表している。溶接実行コマンドと同様に、時刻補正部206は、冷却コマンドが発行された時刻から周波数偏差特性周期の時間が経過した時刻に時刻補正量ΔCcorrect,bの値をスレーブ装置200の時刻カウンタ値から差し引くことで、時刻を補正することができる。
図23においても、図20と同様に、Ccorrect(t2)は絶対時刻t2における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。Ccorrect(t1)は絶対時刻t1における、時刻補正後のスレーブ装置200の時刻カウンタ値を表す。(t2-t1)は絶対時刻におけるt1からt2の経過時間である。一方、スレーブ装置200の時刻は周波数偏差によって、絶対時刻から周波数偏差分の誤差が発生する。この誤差は、図23のグラフの網掛け部分に相当する。よって、時刻補正部206は、絶対時刻t2において、周波数偏差の誤差が発生しているスレーブ装置200の時刻カウンタ値C(t2)から、時刻補正量推定部2077により推定された時刻補正量ΔCcorrect,aを差し引くことにより、正確な時刻に補正できる。時刻補正量ΔCcorrect,aは溶接実行コマンドが発行されてから、周波数偏差特性周期の時間が経過するまでの周波数偏差による時刻ずれ量を表している。よって、時刻補正部206は、溶接実行コマンドが発行された時刻から周波数偏差特性周期の時間が経過した時刻に時刻補正量ΔCcorrect,aの値をスレーブ装置200の時刻カウンタ値から差し引くことで、時刻を補正することができる。同様に、時刻補正量ΔCcorrect,bは冷却コマンドが発行されてから周波数偏差特性周期の時間が経過するまでの周波数偏差による時刻ずれ量を表している。溶接実行コマンドと同様に、時刻補正部206は、冷却コマンドが発行された時刻から周波数偏差特性周期の時間が経過した時刻に時刻補正量ΔCcorrect,bの値をスレーブ装置200の時刻カウンタ値から差し引くことで、時刻を補正することができる。
<具体例>
具体例を以下に示す。
****学習フェーズ****
(1)偏差温度特性推定部2075がセンサから水晶発振器温度(入力A3)を取得し、更に、プロトコルによって測定された周波数偏差(入力A1)を取得する。なお、偏差温度特性推定部2075は、センサから水晶発振器温度(入力A3)を取得したときの時刻情報を保持しておく。これらの時刻情報のタイムスタンプは時刻管理部203で取得する。なお、周波数偏差パターンは、周期的に同じパターンが観測される後述の(3-a)のケースと、ある制御コマンドに対応して特定の周波数偏差パターンが現れる後述の(3-b)のケースがある。(3-a)のケースでは学習部207は図15の構成で学習を実施し、(3-b)のケースでは学習部207は図16の構成で学習を実施する。
具体例を以下に示す。
****学習フェーズ****
(1)偏差温度特性推定部2075がセンサから水晶発振器温度(入力A3)を取得し、更に、プロトコルによって測定された周波数偏差(入力A1)を取得する。なお、偏差温度特性推定部2075は、センサから水晶発振器温度(入力A3)を取得したときの時刻情報を保持しておく。これらの時刻情報のタイムスタンプは時刻管理部203で取得する。なお、周波数偏差パターンは、周期的に同じパターンが観測される後述の(3-a)のケースと、ある制御コマンドに対応して特定の周波数偏差パターンが現れる後述の(3-b)のケースがある。(3-a)のケースでは学習部207は図15の構成で学習を実施し、(3-b)のケースでは学習部207は図16の構成で学習を実施する。
(2)偏差特性推定部は、(1)で取得した水晶発振器温度と周波数偏差の情報から図14(水晶発振器1)のようなスレーブ装置200の水晶発振器の周波数偏差温度特性を推定する。
周波数温度特性は、温度変数として周波数偏差を3次関数で近似した式である。偏差時間特性推定部2076は、3次関数の各項の係数を算出し、この係数の値を時刻補正量推定部2077に入力する。周波数温度特性の推定は学習フェーズで実施される。例えば、温度に対する周波数偏差をP(Q)とすると周波数偏差特性は以下の式で表せる。
P(Q)=αQ3+βQ2+γQ+δ [ppm] 式20
周波数温度特性は、温度変数として周波数偏差を3次関数で近似した式である。偏差時間特性推定部2076は、3次関数の各項の係数を算出し、この係数の値を時刻補正量推定部2077に入力する。周波数温度特性の推定は学習フェーズで実施される。例えば、温度に対する周波数偏差をP(Q)とすると周波数偏差特性は以下の式で表せる。
P(Q)=αQ3+βQ2+γQ+δ [ppm] 式20
偏差時間特性推定部2076は、周波数偏差とその時の水晶発振器温度を取得し、周波数偏差とその時の水晶発振器温度を上記の式20に代入し、係数α、β、γ、δの4元連立方程式を解く。解を求めるには最低、測定4点分の周波数偏差と水晶発振器温度の情報が必要である。測定点数が多いほど尤もらしい係数が偏差時間特性推定部2076によって導出される。例えば、偏差時間特性推定部2076は、各係数の測定回数分の平均値を最終的な係数として出力してもよい。もしくは、偏差時間特性推定部2076は、あらかじめ、入力されたデータシートの特性に最も近い係数を測定結果から導出してもよい。データシートの特性を用いる場合は、式20の形式の式が偏差時間特性推定部2076に入力される。
上記の方法で、偏差時間特性推定部2076は上式のα、β、γ及びδの係数値を推定し、時刻補正量推定部2077に特性(計算式)を入力する。
上記の方法で、偏差時間特性推定部2076は上式のα、β、γ及びδの係数値を推定し、時刻補正量推定部2077に特性(計算式)を入力する。
(3)時刻補正量推定部2077は、偏差時間特性推定部2076から入力された周波数偏差パターンとその偏差を取得した時刻(水晶発振器温度を取得した時刻)に対応する時刻情報から、周波数偏差パターンに対応する時刻補正量を推定する。時刻補正量の計算方法は、実施の形態2と同様の考え方である。つまり、時刻補正量推定部2077は、周波数偏差変化率と時間との積と規定タイミングでの周波数偏差の時間積分値を時刻補正量とする。ただし、実施の形態3では、周波数偏差を温度と時間の関数で表現しているため、温度周波数偏差をP(Q(t))と表す。
Q(t)は時刻tにおける水晶発振器の温度を表す。時刻tでの温度周波数偏差が、P(Q(t))として表される。この時、時刻t1から時刻t2の区間における時刻補正量ΔC(t)は下式で表される。なお、下式を導出する過程は図17に記載の通りである。
Q(t)は時刻tにおける水晶発振器の温度を表す。時刻tでの温度周波数偏差が、P(Q(t))として表される。この時、時刻t1から時刻t2の区間における時刻補正量ΔC(t)は下式で表される。なお、下式を導出する過程は図17に記載の通りである。
またP(Q(t))は式20の温度Qに時刻tの時の温度を表す関数Q(t)を代入したものであり、P(Q(t))は前述の式21で表される。
P(Q(t))
=α×{Q(t)}3+β×{Q(t)}2+γ×Q(t)+δ
式21
P(Q(t))
=α×{Q(t)}3+β×{Q(t)}2+γ×Q(t)+δ
式21
(4)時刻補正量推定部2077は、前記時刻補正量を計算するとともに、前記時刻補正量に対応する時間周波数偏差特性P(C(t))のパターンを学習し、時間周波数偏差特性P(C(t))のパターンを予兆検知に用いる。予兆検知に用いる情報は、実施の形態2の(2-a)で記載したものと同様である。
図18は、周期性のある水晶発振器温度の時間推移と周波数偏差の時間推移の関係を表している。図18の(a)のグラフが水晶発振器の温度の時間推移を表す。また、P(Q(t))の式(式21)によって、図18の(a)に示す温度と時間の関係を図18の(b)のグラフのように周波数偏差と時間推移の関係に変換することができる。
そして、時刻補正量推定部2077は、図18のような周波数偏差特性周期、周波数偏差特性周期の開始タイミングを学習し、周波数偏差特性周期、周波数偏差特性周期の開始タイミングを予兆検知に用いる。
図18は、周期性のある水晶発振器温度の時間推移と周波数偏差の時間推移の関係を表している。図18の(a)のグラフが水晶発振器の温度の時間推移を表す。また、P(Q(t))の式(式21)によって、図18の(a)に示す温度と時間の関係を図18の(b)のグラフのように周波数偏差と時間推移の関係に変換することができる。
そして、時刻補正量推定部2077は、図18のような周波数偏差特性周期、周波数偏差特性周期の開始タイミングを学習し、周波数偏差特性周期、周波数偏差特性周期の開始タイミングを予兆検知に用いる。
もしくは実施の形態2の(2-b)と同様に、時刻補正量推定部2077は、図19のような周波数偏差パターン、予兆検知タイミングを学習し、周波数偏差パターン、予兆検知タイミングを予兆検知に用いる。
図19は、各種コマンドが発行されたときの水晶発振器温度の時間推移と周波数偏差の時間推移の関係を表している。図19(a)のグラフが水晶発振器の温度の時間推移を表す。また、P(Q(t)の式(式21)によって、図19の(a)に示す温度と時間の関係を図19の(b)のグラフのように周波数偏差と時間推移の関係に変換することができる。図19では周波数偏差パターンは2パターンあり、それぞれの予兆検知タイミングは、溶接実行コマンド発行の時刻、冷却コマンド発行の時刻である。活用フェーズでは、図19の例では、偏差時間特性推定部2076が、溶接実行コマンド発行の時刻及び冷却コマンド発行の時刻を予兆検知タイミングとして検知し、予兆検知タイミングを時刻補正量推定部2077に入力する。
図19に示す具体例では、温度情報を偏差時間特性に変換したものを予兆検知に用いているが、温度情報を偏差時間特性に変換せず、水晶発振器温度の時間推移を予兆検知に用いてもよい。
図19は、各種コマンドが発行されたときの水晶発振器温度の時間推移と周波数偏差の時間推移の関係を表している。図19(a)のグラフが水晶発振器の温度の時間推移を表す。また、P(Q(t)の式(式21)によって、図19の(a)に示す温度と時間の関係を図19の(b)のグラフのように周波数偏差と時間推移の関係に変換することができる。図19では周波数偏差パターンは2パターンあり、それぞれの予兆検知タイミングは、溶接実行コマンド発行の時刻、冷却コマンド発行の時刻である。活用フェーズでは、図19の例では、偏差時間特性推定部2076が、溶接実行コマンド発行の時刻及び冷却コマンド発行の時刻を予兆検知タイミングとして検知し、予兆検知タイミングを時刻補正量推定部2077に入力する。
図19に示す具体例では、温度情報を偏差時間特性に変換したものを予兆検知に用いているが、温度情報を偏差時間特性に変換せず、水晶発振器温度の時間推移を予兆検知に用いてもよい。
****活用フェーズ****
(3-a)
偏差時間特性推定部2076が、入力された水晶発振器温度と温度を観測したときの時刻情報から、周波数偏差が図18の周波数偏差パターンとなっていることを検知する。そして、偏差時間特性推定部2076は、周波数偏差パターンと周波数偏差特性周期と周期開始タイミングを時刻補正量推定部2077に通知する。
時刻補正量推定部2077は、入力された周波数偏差パターンに対応する時刻補正量を時刻補正部206に通知する。
時刻補正部206は、通知された時刻補正量で時刻補正を実施する。
本具体例では、温度情報を偏差時間特性に変換したものを予兆(偏差時間特性)の検知に用いているが、温度情報を偏差時間特性に変換せず、水晶発振器温度の時間推移を予兆検知に用いてもよい。
(3-a)
偏差時間特性推定部2076が、入力された水晶発振器温度と温度を観測したときの時刻情報から、周波数偏差が図18の周波数偏差パターンとなっていることを検知する。そして、偏差時間特性推定部2076は、周波数偏差パターンと周波数偏差特性周期と周期開始タイミングを時刻補正量推定部2077に通知する。
時刻補正量推定部2077は、入力された周波数偏差パターンに対応する時刻補正量を時刻補正部206に通知する。
時刻補正部206は、通知された時刻補正量で時刻補正を実施する。
本具体例では、温度情報を偏差時間特性に変換したものを予兆(偏差時間特性)の検知に用いているが、温度情報を偏差時間特性に変換せず、水晶発振器温度の時間推移を予兆検知に用いてもよい。
(3-b)
偏差時間特性推定部2076が、入力された水晶発振器温度と温度を観測したときの時刻情報及び制御情報から、周波数偏差が図19の周波数偏差パターンとなっていることを検知する。そして、偏差時間特性推定部2076は、周波数偏差パターンと周波数偏差特性周期と周期開始タイミングを時刻補正量推定部2077に通知する。
時刻補正量推定部2077は、入力された周波数偏差パターンに対応する時刻補正量を時刻補正部206に通知する。
時刻補正部206は、通知された時刻補正量で時刻補正を実施する。
本具体例では、温度情報を偏差時間特性に変換したものを予兆(偏差時間特性)の検知に用いているが、温度情報を偏差時間特性に変換せず、水晶発振器温度の時間推移を予兆検知に用いてもよい。
偏差時間特性推定部2076が、入力された水晶発振器温度と温度を観測したときの時刻情報及び制御情報から、周波数偏差が図19の周波数偏差パターンとなっていることを検知する。そして、偏差時間特性推定部2076は、周波数偏差パターンと周波数偏差特性周期と周期開始タイミングを時刻補正量推定部2077に通知する。
時刻補正量推定部2077は、入力された周波数偏差パターンに対応する時刻補正量を時刻補正部206に通知する。
時刻補正部206は、通知された時刻補正量で時刻補正を実施する。
本具体例では、温度情報を偏差時間特性に変換したものを予兆(偏差時間特性)の検知に用いているが、温度情報を偏差時間特性に変換せず、水晶発振器温度の時間推移を予兆検知に用いてもよい。
なお、以上では、スレーブ装置200で水晶発振器が用いられていることを前提にして説明を行った。スレーブ装置200に水晶発振器以外の発振器(例えば、シリコン発振器、MEMS(Micro Electro Mechanical Systems)発振器)が用いられる場合は、学習部207は、対応する発振器の温度特性を学習する。
以上、本実施の形態によっても、周波数偏差が変動する場合に、変動する周波数偏差に合わせた時刻補正が可能である。また、本実施の形態では、学習により得られた時刻補正量を用いて時刻補正が行われるため、周波数偏差変化率及び時刻補正量の算出が不要であり、演算負荷を軽減することができる。
実施の形態4.
本実施の形態では、実施の形態1~3に示した時刻同期の方法を選択し、選択した時刻同期の方法を実施する構成を説明する。
なお、本実施の形態では、主に実施の形態1~3との差異を説明する。
また、以下で説明していない事項は、実施の形態1~3と同様である。
本実施の形態においても、時刻同期システム1000の構成例は図1に示す通りである。
本実施の形態では、実施の形態1~3に示した時刻同期の方法を選択し、選択した時刻同期の方法を実施する構成を説明する。
なお、本実施の形態では、主に実施の形態1~3との差異を説明する。
また、以下で説明していない事項は、実施の形態1~3と同様である。
本実施の形態においても、時刻同期システム1000の構成例は図1に示す通りである。
図24は、本実施の形態に係るスレーブ装置200の機能構成例を示す。
なお、本実施の形態に係るスレーブ装置200のハードウェア構成例は図2に示す通りである。なお、後述する選択部208の機能もプログラムで実現され、選択部208の機能を実現するプログラムもプロセッサ901で実行される。
なお、本実施の形態に係るスレーブ装置200のハードウェア構成例は図2に示す通りである。なお、後述する選択部208の機能もプログラムで実現され、選択部208の機能を実現するプログラムもプロセッサ901で実行される。
図6と比較して、図24では、選択部208が追加されている。図24の他の要素は、図6の示すものと同じである。
本実施の形態では、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部、学習部207及び選択部208が時刻補正装置300に相当する。
本実施の形態では、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部、学習部207及び選択部208が時刻補正装置300に相当する。
選択部208は、方法選択フェーズで、周波数偏差変化率算出部204により算出された周波数偏差変化率を監視期間の間、監視する。そして、選択部208は、監視期間の周波数偏差変化率に応じて、実施の形態1で説明した時刻補正方法、実施の形態2で説明した時刻補正方法(2-a)、実施の形態2で説明した時刻補正方法(2-b)及び実施の形態3で説明した時刻補正方法のうちのいずれかを選択する。
以下では、実施の形態1で説明した時刻補正方法を時刻補正方法(1)という。また、実施の形態3で説明した時刻補正方法を時刻補正方法(3)という。
以下では、実施の形態1で説明した時刻補正方法を時刻補正方法(1)という。また、実施の形態3で説明した時刻補正方法を時刻補正方法(3)という。
周波数偏差変化率が、監視期間の間、閾値1未満で推移した場合は、選択部208は、例えば、時刻補正方法(1)を選択する。
また、周波数偏差変化率が、監視期間の間、閾値1以上閾値2未満で推移した場合は、選択部208は、例えば、時刻補正方法(2-a)又は時刻補正方法(2-b)を選択する。
また、周波数偏差変化率が、監視期間の間、閾値2を超えている場合は、選択部208は、例えば、時刻補正方法(3)を選択する。
選択部208の時刻補正方法の選択基準は上記に限らない。選択部208は、上記以外の任意の選択基準で時刻補正方法を選択することができる。
また、周波数偏差変化率が、監視期間の間、閾値1以上閾値2未満で推移した場合は、選択部208は、例えば、時刻補正方法(2-a)又は時刻補正方法(2-b)を選択する。
また、周波数偏差変化率が、監視期間の間、閾値2を超えている場合は、選択部208は、例えば、時刻補正方法(3)を選択する。
選択部208の時刻補正方法の選択基準は上記に限らない。選択部208は、上記以外の任意の選択基準で時刻補正方法を選択することができる。
選択部208は、時刻補正方法(1)を選択した場合は、周波数偏差変化率算出部204に周波数偏差変化率を算出するよう指示し、時刻補正量算出部205に時刻補正量を算出するよう指示する。
選択部208は、時刻補正方法(2-a)を選択した場合は、学習部207に実施の形態2で説明した時刻補正方法(2-a)の学習及び時刻補正量の算出を指示する。
選択部208は、時刻補正方法(2-b)を選択した場合は、学習部207に実施の形態2で説明した時刻補正方法(2-b)の学習及び時刻補正量の算出を指示する。
選択部208は、時刻補正方法(3)を選択した場合は、学習部207に時刻補正方法(3)の学習及び時刻補正量の算出を指示する。
選択部208は、時刻補正方法(2-a)を選択した場合は、学習部207に実施の形態2で説明した時刻補正方法(2-a)の学習及び時刻補正量の算出を指示する。
選択部208は、時刻補正方法(2-b)を選択した場合は、学習部207に実施の形態2で説明した時刻補正方法(2-b)の学習及び時刻補正量の算出を指示する。
選択部208は、時刻補正方法(3)を選択した場合は、学習部207に時刻補正方法(3)の学習及び時刻補正量の算出を指示する。
本実施の形態によれば、周波数偏差変化率のレベルにより適切な時刻補正方法を選択することができる。
なお、選択部208の時刻同期方法の選択肢として、IEEE802.1AS又はIEEE1588による時刻補正を加えてもよい。
実施の形態5.
本実施の形態では、時刻補正装置300がスレーブ装置200とサーバ装置400に分離している例を説明する。
なお、本実施の形態では、主に実施の形態2及び実施の形態3との差異を説明する。
また、以下で説明していない事項は、実施の形態2及び実施の形態3と同様である。
本実施の形態では、時刻補正装置300がスレーブ装置200とサーバ装置400に分離している例を説明する。
なお、本実施の形態では、主に実施の形態2及び実施の形態3との差異を説明する。
また、以下で説明していない事項は、実施の形態2及び実施の形態3と同様である。
図25は、本実施の形態に係る時刻同期システム1000の構成例を示す。
図25では、図1と比較して、サーバ装置400が追加されている。
なお、本実施の形態においても、グランドマスタ装置100は同期基準装置に相当し、スレーブ装置200は時刻同期装置に相当する。
図25では、図1と比較して、サーバ装置400が追加されている。
なお、本実施の形態においても、グランドマスタ装置100は同期基準装置に相当し、スレーブ装置200は時刻同期装置に相当する。
図26は、本実施の形態に係るスレーブ装置200の機能構成例を示す。
図26の機能構成例は図3に示すものと同じであるが、本実施の形態では、周波数偏差変化率算出部204は、算出した周波数偏差変化率を制御部202に通知する。制御部202は、周波数偏差変化率算出部204から通知された周波数偏差変化率を通信部201を介してサーバ装置400に通知する。また、通信部201は、サーバ装置400で算出された時刻補正量をサーバ装置400から受信する。通信部201は受信した時刻補正量を制御部202に通知する。制御部202は、通知された時刻補正量を時刻補正部206に通知する。時刻補正部206は、制御部202から通知された時刻補正量を用いて時刻補正を行う。
また、本実施の形態では、時刻補正部206と後述する学習部402が時刻補正装置300に相当する。
また、本実施の形態では、時刻補正部206と後述する学習部402が時刻補正装置300に相当する。
図27は、サーバ装置400の機能構成例を示す。
通信部401は、スレーブ装置200と通信を行う。
具体的には、通信部401は、スレーブ装置200から周波数偏差変化率を受信し、受信した周波数偏差変化率を学習部402に通知する。
また、通信部401は、学習部402により算出された時刻補正量をスレーブ装置200に送信する。
具体的には、通信部401は、スレーブ装置200から周波数偏差変化率を受信し、受信した周波数偏差変化率を学習部402に通知する。
また、通信部401は、学習部402により算出された時刻補正量をスレーブ装置200に送信する。
学習部402は、実施の形態2及び実施の形態3で説明した学習部207と同様の機能を有する。
つまり、学習部402は、通信部401から通知された周波数偏差変化率を用いて、実施の形態2で説明した時刻補正方法(2-a)及び時刻補正方法(2-b)の学習フェーズの動作を行い、時刻補正量を算出する。学習部402が時刻補正方法(2-b)の学習フェーズの動作を行う場合は、スレーブ装置200の制御部202は周波数偏差変化率とともに予兆となり得るイベント(図12の溶接実行コマンド発行、冷却コマンド発行等)を学習部402に通知する。
また、学習部402は、通信部401から通知された周波数偏差変化率を用いて、実施の形態3で説明した時刻補正方法(3)の学習フェーズの動作を行い、時刻補正量を算出する。学習部402が時刻補正方法(3)の学習フェーズの動作を行う場合は、スレーブ装置200の制御部202は周波数偏差変化率とともにスレーブ装置200の水晶発振器の温度特性を学習部402に通知する。
学習部402は、算出した時刻補正量を通信部401を介してスレーブ装置200に送信する。また、学習部402が時刻補正方法(2-a)の学習フェーズの動作を行った場合は、周波数偏差パターンの開始タイミングも通信部401を介してスレーブ装置200に送信する。また、学習部402が時刻補正方法(2-b)の学習フェーズの動作を行った場合は、予兆検知タイミングも通信部401を介してスレーブ装置200に送信する。
つまり、学習部402は、通信部401から通知された周波数偏差変化率を用いて、実施の形態2で説明した時刻補正方法(2-a)及び時刻補正方法(2-b)の学習フェーズの動作を行い、時刻補正量を算出する。学習部402が時刻補正方法(2-b)の学習フェーズの動作を行う場合は、スレーブ装置200の制御部202は周波数偏差変化率とともに予兆となり得るイベント(図12の溶接実行コマンド発行、冷却コマンド発行等)を学習部402に通知する。
また、学習部402は、通信部401から通知された周波数偏差変化率を用いて、実施の形態3で説明した時刻補正方法(3)の学習フェーズの動作を行い、時刻補正量を算出する。学習部402が時刻補正方法(3)の学習フェーズの動作を行う場合は、スレーブ装置200の制御部202は周波数偏差変化率とともにスレーブ装置200の水晶発振器の温度特性を学習部402に通知する。
学習部402は、算出した時刻補正量を通信部401を介してスレーブ装置200に送信する。また、学習部402が時刻補正方法(2-a)の学習フェーズの動作を行った場合は、周波数偏差パターンの開始タイミングも通信部401を介してスレーブ装置200に送信する。また、学習部402が時刻補正方法(2-b)の学習フェーズの動作を行った場合は、予兆検知タイミングも通信部401を介してスレーブ装置200に送信する。
上述したように、本実施の形態では、時刻補正部206と学習部402が時刻補正装置300に相当する。
以上、本実施の形態のようにサーバ装置で時刻補正量を学習させる場合でも、変動する周波数偏差に合わせた時刻補正が可能である。
以上、実施の形態1~5を説明したが、これらの実施の形態のうち、2つ以上を組み合わせて実施しても構わない。
あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
また、これらの実施の形態に記載された構成及び手順を必要に応じて変更してもよい。
あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
また、これらの実施の形態に記載された構成及び手順を必要に応じて変更してもよい。
***ハードウェア構成の補足説明***
最後に、スレーブ装置200のハードウェア構成の補足説明を行う。
図2に示すプロセッサ901は、プロセッシングを行うIC(Integrated Circuit)である。
プロセッサ901は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)等である。
図2に示す主記憶装置902は、RAM(Random Access Memory)である。
図2に示す補助記憶装置903は、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
図2に示す通信装置904は、データの通信処理を実行する電子回路である。
通信装置904は、例えば、通信チップ又はNIC(Network Interface Card)である。
最後に、スレーブ装置200のハードウェア構成の補足説明を行う。
図2に示すプロセッサ901は、プロセッシングを行うIC(Integrated Circuit)である。
プロセッサ901は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)等である。
図2に示す主記憶装置902は、RAM(Random Access Memory)である。
図2に示す補助記憶装置903は、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
図2に示す通信装置904は、データの通信処理を実行する電子回路である。
通信装置904は、例えば、通信チップ又はNIC(Network Interface Card)である。
また、補助記憶装置903には、OS(Operating System)も記憶されている。
そして、OSの少なくとも一部がプロセッサ901により実行される。
プロセッサ901はOSの少なくとも一部を実行しながら、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の機能を実現するプログラムを実行する。
プロセッサ901がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
また、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の処理の結果を示す情報、データ、信号値及び変数値の少なくともいずれかが、主記憶装置902、補助記憶装置903、プロセッサ901内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記録媒体に格納されていてもよい。そして、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の機能を実現するプログラムが格納された可搬記録媒体を流通させてもよい。
そして、OSの少なくとも一部がプロセッサ901により実行される。
プロセッサ901はOSの少なくとも一部を実行しながら、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の機能を実現するプログラムを実行する。
プロセッサ901がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
また、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の処理の結果を示す情報、データ、信号値及び変数値の少なくともいずれかが、主記憶装置902、補助記憶装置903、プロセッサ901内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記録媒体に格納されていてもよい。そして、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の機能を実現するプログラムが格納された可搬記録媒体を流通させてもよい。
また、通信部201、制御部202、時刻管理部203、周波数偏差変化率算出部204、時刻補正量算出部205、時刻補正部206、学習部207及び選択部208の「部」を、「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。
また、スレーブ装置200は、処理回路により実現されてもよい。処理回路は、例えば、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)である。
なお、本明細書では、プロセッサと処理回路との上位概念を、「プロセッシングサーキットリー」という。
つまり、プロセッサと処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
また、スレーブ装置200は、処理回路により実現されてもよい。処理回路は、例えば、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)である。
なお、本明細書では、プロセッサと処理回路との上位概念を、「プロセッシングサーキットリー」という。
つまり、プロセッサと処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
100 グランドマスタ装置、200 スレーブ装置、201 通信部、202 制御部、203 時刻管理部、2031 フリーランカウンタ、2032 時刻カウンタ、204 周波数偏差変化率算出部、205 時刻補正量算出部、206 時刻補正部、207 学習部、2071 偏差時間特性推定部、2072 時刻補正量推定部、2075 偏差温度特性推定部、2076 偏差時間特性推定部、2077 時刻補正量推定部、208 選択部、300 時刻補正装置、400 サーバ装置、401 通信部、402 学習部、901 プロセッサ、902 主記憶装置、903 補助記憶装置、904 通信装置、1000 時刻同期システム。
Claims (13)
- 時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の単位時間あたりの変化率である周波数偏差変化率を算出する周波数偏差変化率算出部と、
前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の固定的な周波数偏差に対応する第1の補正量を算出し、前記周波数偏差変化率の時間積分を行って前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の周波数偏差の時間推移に対応する第2の補正量を算出し、前記第1の補正量と前記第2の補正量とを用いて、前記時刻同期装置の時刻を補正するための時刻補正量を算出する時刻補正量算出部と、
前記時刻補正量を用いて、前記時刻同期装置の時刻を補正する時刻補正部とを有する時刻補正装置。 - 前記時刻補正部は、
前記時刻同期装置の時刻カウンタから前記時刻補正量を減算して前記時刻同期装置の時刻を補正する請求項1に記載の時刻補正装置。 - 前記周波数偏差変化率算出部は、
前記同期基準装置が前記時刻同期装置に時刻同期のための時刻同期フレームを送信する周期である時刻同期フレーム送信周期に合わせて前記周波数偏差変化率を算出し、
前記時刻補正量算出部は、
前記時刻同期フレーム送信周期に合わせて前記第1の補正量と前記第2の補正量を算出し、
現在の時刻同期フレーム送信周期の1つ前の時刻同期フレーム送信周期に算出された前記第1の補正量と前記第2の補正量とを用いて、現在の時刻同期フレーム送信周期の前記時刻補正量を算出する請求項1に記載の時刻補正装置。 - 前記時刻補正装置は、更に、
前記時刻補正部に機械学習により算出された時刻補正量と前記時刻補正量算出部により算出された時刻補正量のいずれを用いさせるかを選択する選択部を有する請求項1に記載の時刻補正装置。 - 前記選択部は、
前記時刻補正部に機械学習により算出された時刻補正量を用いさせる場合に、更に、複数の機械学習方法のうちのいずれの機械学習方法により算出された時刻補正量を前記時刻補正部に用いさせるかを選択する請求項4に記載の時刻補正装置。 - 学習フェーズにて、時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の時間推移を学習し、前記周波数偏差の時間推移のパターンを周波数偏差パターンとして抽出し、前記周波数偏差パターンにおける周波数偏差変化率を算出し、前記周波数偏差変化率と時間との積と規定タイミングでの周波数偏差とを時間積分して、前記時刻同期装置の時刻を補正するための時刻補正量を算出する学習部と、
活用フェーズにて、前記時刻補正量を用いて前記時刻同期装置の時刻を補正する時刻補正部とを有する時刻補正装置。 - 前記学習部は、
前記学習フェーズにて、前記規定タイミングとして前記周波数偏差パターンの開始タイミングを推定し、前記周波数偏差変化率と時間との積と前記周波数偏差パターンの開始タイミングでの周波数偏差とを時間積分して、前記時刻補正量を算出し、
前記時刻補正部は、
前記活用フェーズにて、前記周波数偏差パターンの開始タイミングが到来した場合に、前記時刻補正量を用いて前記時刻同期装置の時刻を補正する請求項6に記載の時刻補正装置。 - 前記学習部は、
前記学習フェーズにて、前記周波数偏差変化率が急激に変化する時間推移のパターンを前記周波数偏差パターンとして抽出し、前記周波数偏差パターンが発生する前に発生する予兆を推定し、前記規定タイミングとして前記予兆の検知タイミングを推定し、前記周波数偏差変化率と時間との積と前記予兆の検知タイミングでの周波数偏差とを時間積分して、前記時刻補正量を算出し、
前記時刻補正部は、
前記活用フェーズにて、前記予兆が検知された場合に、前記時刻補正量を用いて前記時刻同期装置の時刻を補正する請求項6に記載の時刻補正装置。 - 前記学習部は、
前記学習フェーズにて、前記同期基準装置のクロックの生成に用いられる発振器での温度特性を学習し、温度特性に対応させた前記時刻補正量を算出し、
前記時刻補正部は、
前記活用フェーズにて、温度特性に対応させた前記時刻補正量を用いて前記時刻同期装置の時刻を補正する請求項6に記載の時刻補正装置。 - コンピュータが、時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の単位時間あたりの変化率である周波数偏差変化率を算出し、
前記コンピュータが、前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の固定的な周波数偏差に対応する第1の補正量を算出し、前記周波数偏差変化率の時間積分を行って前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の周波数偏差の時間推移に対応する第2の補正量を算出し、前記第1の補正量と前記第2の補正量とを用いて、前記時刻同期装置の時刻を補正するための時刻補正量を算出し、
前記コンピュータが、前記時刻補正量を用いて、前記時刻同期装置の時刻を補正する時刻補正方法。 - コンピュータが、学習フェーズにて、時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の時間推移を学習し、前記周波数偏差の時間推移のパターンを周波数偏差パターンとして抽出し、前記周波数偏差パターンにおける周波数偏差変化率を算出し、前記周波数偏差変化率と時間との積と規定タイミングでの周波数偏差とを時間積分して、前記時刻同期装置の時刻を補正するための時刻補正量を算出し、
前記コンピュータが、活用フェーズにて、前記時刻補正量を用いて前記時刻同期装置の時刻を補正する時刻補正方法。 - 時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の単位時間あたりの変化率である周波数偏差変化率を算出する周波数偏差変化率算出処理と、
前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の固定的な周波数偏差に対応する第1の補正量を算出し、前記周波数偏差変化率の時間積分を行って前記同期基準装置のクロック周波数と前記時刻同期装置のクロック周波数との間の周波数偏差の時間推移に対応する第2の補正量を算出し、前記第1の補正量と前記第2の補正量とを用いて、前記時刻同期装置の時刻を補正するための時刻補正量を算出する時刻補正量算出処理と、
前記時刻補正量を用いて、前記時刻同期装置の時刻を補正する時刻補正処理とをコンピュータに実行させる時刻補正プログラム。 - 学習フェーズにて、時刻同期の基準となる同期基準装置のクロック周波数と前記同期基準装置と時刻同期する時刻同期装置のクロック周波数との周波数偏差の時間推移を学習し、前記周波数偏差の時間推移のパターンを周波数偏差パターンとして抽出し、前記周波数偏差パターンにおける周波数偏差変化率を算出し、前記周波数偏差変化率と時間との積と規定タイミングでの周波数偏差とを時間積分して、前記時刻同期装置の時刻を補正するための時刻補正量を算出する学習処理と、
活用フェーズにて、前記時刻補正量を用いて前記時刻同期装置の時刻を補正する時刻補正処理とをコンピュータに実行させる時刻補正プログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/021347 WO2021240783A1 (ja) | 2020-05-29 | 2020-05-29 | 時刻補正装置、時刻補正方法及び時刻補正プログラム |
DE112020006988.5T DE112020006988B4 (de) | 2020-05-29 | 2020-05-29 | Zeitkorrekturvorrichtung, zeitkorrekturverfahren, und zeitkorrekturprogramm |
JP2022527443A JP7122496B2 (ja) | 2020-05-29 | 2020-05-29 | 時刻補正装置、時刻補正方法及び時刻補正プログラム |
TW109135667A TW202144952A (zh) | 2020-05-29 | 2020-10-15 | 時間校正裝置、時間校正方法及時間校正程式產品 |
US17/952,585 US20230010155A1 (en) | 2020-05-29 | 2022-09-26 | Time correction apparatus, time correction method, and computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/021347 WO2021240783A1 (ja) | 2020-05-29 | 2020-05-29 | 時刻補正装置、時刻補正方法及び時刻補正プログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/952,585 Continuation US20230010155A1 (en) | 2020-05-29 | 2022-09-26 | Time correction apparatus, time correction method, and computer readable medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021240783A1 true WO2021240783A1 (ja) | 2021-12-02 |
Family
ID=78723283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/021347 WO2021240783A1 (ja) | 2020-05-29 | 2020-05-29 | 時刻補正装置、時刻補正方法及び時刻補正プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230010155A1 (ja) |
JP (1) | JP7122496B2 (ja) |
DE (1) | DE112020006988B4 (ja) |
TW (1) | TW202144952A (ja) |
WO (1) | WO2021240783A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102418059B1 (ko) * | 2020-12-08 | 2022-07-06 | 현대오토에버 주식회사 | 차량의 이종 제어기간 통신 응답시간 추정 장치 및 방법 |
TWI835438B (zh) * | 2022-11-29 | 2024-03-11 | 瑞昱半導體股份有限公司 | 媒體通訊系統及其具有訊號同步機制的媒體通訊裝置及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08240671A (ja) * | 1994-12-20 | 1996-09-17 | T Earl Poulson | 電子時計の正確度を保全し及び調節する方法及び装置 |
JP2015111059A (ja) * | 2013-12-06 | 2015-06-18 | ニチコン株式会社 | 電子時計 |
JP2017069669A (ja) * | 2015-09-29 | 2017-04-06 | 富士通株式会社 | 時刻同期装置、基地局装置、及び、時刻同期方法 |
JP6351889B1 (ja) * | 2017-06-27 | 2018-07-04 | 三菱電機株式会社 | 通信システム及びスレーブ装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6953735B2 (ja) | 2016-04-01 | 2021-10-27 | 富士通株式会社 | 情報処理装置、情報処理システム、情報処理方法及び情報処理プログラム |
-
2020
- 2020-05-29 JP JP2022527443A patent/JP7122496B2/ja active Active
- 2020-05-29 WO PCT/JP2020/021347 patent/WO2021240783A1/ja active Application Filing
- 2020-05-29 DE DE112020006988.5T patent/DE112020006988B4/de active Active
- 2020-10-15 TW TW109135667A patent/TW202144952A/zh unknown
-
2022
- 2022-09-26 US US17/952,585 patent/US20230010155A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08240671A (ja) * | 1994-12-20 | 1996-09-17 | T Earl Poulson | 電子時計の正確度を保全し及び調節する方法及び装置 |
JP2015111059A (ja) * | 2013-12-06 | 2015-06-18 | ニチコン株式会社 | 電子時計 |
JP2017069669A (ja) * | 2015-09-29 | 2017-04-06 | 富士通株式会社 | 時刻同期装置、基地局装置、及び、時刻同期方法 |
JP6351889B1 (ja) * | 2017-06-27 | 2018-07-04 | 三菱電機株式会社 | 通信システム及びスレーブ装置 |
Also Published As
Publication number | Publication date |
---|---|
TW202144952A (zh) | 2021-12-01 |
JP7122496B2 (ja) | 2022-08-19 |
DE112020006988T5 (de) | 2023-01-19 |
US20230010155A1 (en) | 2023-01-12 |
JPWO2021240783A1 (ja) | 2021-12-02 |
DE112020006988B4 (de) | 2024-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8959381B2 (en) | Method and system for clock offset and skew estimation | |
US20230010155A1 (en) | Time correction apparatus, time correction method, and computer readable medium | |
US11917567B2 (en) | Method and device for synchronizing data packets from embedded data sensors monitoring body motion of a patient | |
JP6192995B2 (ja) | 通信装置、通信システム、通信方法およびコンピュータプログラム | |
Harrison et al. | TICSync: Knowing when things happened | |
JP2007174676A (ja) | ネットワークの時間同期化における遅延変動の除去 | |
EP2893656B1 (en) | Method and system for clock offset and skew estimation | |
KR101636496B1 (ko) | 신호 동기 시스템, 노드 동기 시스템, 신호 동기 방법, 및 노드 동기 방법 | |
WO2013051446A1 (ja) | 時刻制御装置、時刻制御方法、およびプログラム | |
US10594424B2 (en) | Time synchronization slave apparatus capable of adjusting time synchronization period, and method of determining time synchronization period | |
JP2007134873A (ja) | 高精度時刻同期処理装置およびそのプログラム,ならびにネットワーク混雑度警告装置およびそのプログラム | |
KR20030084984A (ko) | 버스 시스템의 적어도 하나의 노드의 동기화를 위한 방법및 장치 및 이에 상응하는 버스 시스템 | |
US20140241479A1 (en) | Frequency difference detection device, frequency difference detection method, and program | |
CN115333660A (zh) | 精确时间戳校正 | |
JP2011023788A (ja) | ネットワーク同期方法と同期化回路 | |
KR100668998B1 (ko) | 실시간 신호를 발생시키기 위한 시스템과 방법 | |
JP5662119B2 (ja) | ノードシステムおよび監視ノード | |
CN110896339B (zh) | 一种基于局部加权最小二乘法的时钟同步补偿方法 | |
KR20140014918A (ko) | 이더넷 통신 시스템 및 시간 동기화 방법 | |
JP6845522B2 (ja) | 情報通信システム、情報通信装置 | |
KR20170058629A (ko) | 디바이스 간의 시각 동기 정밀도를 향상시키는 방법, 장치, 시스템 및 컴퓨터 프로그램 | |
CN115459897B (zh) | 电力实时仿真中的步长同步校准方法、装置及相关设备 | |
Luckinger et al. | AUTOSAR-compliant clock synchronization over CAN using software timestamping | |
CN114097010B (zh) | 信息处理装置、计算机能读取的记录介质和信息处理方法 | |
CN115442244B (zh) | 电力实时仿真中通信间隔的校准方法、装置及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20938404 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022527443 Country of ref document: JP Kind code of ref document: A |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20938404 Country of ref document: EP Kind code of ref document: A1 |