Why Is My PXI-6682 Timestamp Off When Using GPS Protocol?

Updated Jan 9, 2018

Reported In

Driver

  • NI-Sync

Issue Details

When I use the PXI-6682 module with a GPS (Global Positioning System) time reference the time is off by several seconds when compared to a secondary GPS device. Why is this occurring?

Solution

GPS Time is not corrected to match the rotation of the Earth and does not take into account leap seconds or other factors which are periodically added to Coordinated Universal Time (UTC). The atomic clocks on satellites are set to GPS time, which is where this offset can be seen. Some specifications of the two timescales are shown below. 

International Atomic Time (TAI) Scale:
  • Constant Timescale
  • Employed by network standards like IEEE 1588
Global Positioning System (GPS) Timescale:
  • Constant Timescale
  • The GPS epoch was set from UTC in 1980

When using a GPS time reference the NI-Sync driver returns the current time using the TAI timescale. This allows PXI-6682 to be used with IEEE 1588, IRIG-B, and GPS time protocols. Using the TAI timescale gives the PXI-6682 the ability to drive an IEEE-1588 network with GPS time and it will be the correct timescale. Because of the multipurpose nature of the PXI-6682 it will not automatically correct the PXI-6682 time reference to match the GPS time. 

If the TAI time scale does not work for your application the time source can be manually adjusted by using the NI-Sync property node and selecting Time Reference Correction. In previous versions of NI Sync this may be called Clock Adjustment Offset. Figure 1 below shows screenshots of each property.



Figure 1: Time Reference Correction and Clock Adjustment Offset
Selecting this property will allow you to offset the time source by a fixed amount from the time reference being used. This property is in nanoseconds and will allow you to offset the time by up to 2.3 seconds using NI-Sync 3.0. To use a larger offset, use LabVIEW to add or subtract the time manually as shown below in Figure 2.
 


Figure 2: Manually Setting a Larger Offset in LabVIEW
To adjust the TAI timescale to UTC time, you can get the current GPS to UTC offset using the UTC Offset Property Node shown below in Figure 3. The UTC Offset Valid bit is a Boolean value that shows whether the UTC offset given is valid. This will always be there for a GPS signal because GPS contains UTC offset information. If the timing source is set to GPS then UTC Offset Valid should be the same as Is Time Reference Present. However, if the timing source is set to 1588, the target will still have a UTC Offset Valid value if it is a slave to a master with a GPS signal.

Figure 3: UTC Offset and UTC Offset Valid

Additional Information

For more information about the differences between UTC, TAI, and GPS time scales, refer to the KnowledgeBase article 4C6CKR8P.

WAS THIS ARTICLE HELPFUL?

Not Helpful