CIP Sync Time

I/O modules use CIP Sync for timestamps. CIP Sync is a CIP implementation of the IEEE 1588 PTP (Precision Time Protocol). CIP Sync provides accurate real-time (Real-World Time) or Universal Coordinated Time (UTC) synchronization of controllers and devices that are connected over CIP networks. This technology supports highly distributed applications that require timestamping, sequence of events recording, distributed motion control, and increased control coordination.
These modules are CIP Sync slave-only devices. There must be another module on the network that functions as a master clock.
You can use I/O modules to capture timestamps. The advantage is that CIP Sync is system-wide, so timestamp values are consistent across all modules in the system.
IMPORTANT:
I.CIPSyncValid
= 1 is not sufficient for an application to confirm that the module is ready for application requiring a system time synchronization to start operation. See Grandmaster Clock Verification for extra verification needed.

Grandmaster Clock Verification

The application must verify that the module is synchronized with the same Grandmaster Clock as the owner-controller.
  • If Status connection is selected in the PointMax EtherNet/IP adapter Device Definition, verify that all of the following are true:
    • I/O module's
      I.CipSyncValid
      is 1
    • Adapter's
      S.CipSyncValid
      is 1
    • Adapter's
      S.GrandmasterClockID
      is the same as the controller's
      GrandMasterClockID
  • If Status connection is not selected in the PointMax EtherNet/IP adapter Device Definition, verify that all of the followings are true:
    • I/O module's
      I.CipSyncValid
      is 1
    • I/O module's
      GrandmasterClockID
      in GrandMasterClockInfo attribute of TimeSync object is the same as the controller’s
      GrandmasterClockID
  • Class: 0x43
  • Instance: 0x01
  • Attribute: 0x08
  • Response: GrandMasterClockInfo (see structure below)
    GrandMasterClockInfo
    STRUCT of
    ClockIdentity
    USINT[8]
    ClockClass
    UINT
    TimeAccuracy
    UINT
    OffsetScaledLogVariance
    UINT
    CurrentUtcOffset
    UINT
    TimePropertyFlags
    WORD
    TimeSource
    UINT
    Priority1
    UINT
    Priority2
    UINT
To get controller's GrandMasterClockID, access the TIMESYNCHRONE object through the GSV instruction. See Access the TimeSynchronize object.
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.
Normal