The Precision Time Protocol (PTP) IEEE 1588 enables the exact cycle synchronisation of several devices in an Ethernet system.
When the clocks of the devices such as cameras, PCs and sensors, are synchronised, future software image triggers can be synchronised within 2 μs.
The GigE Vision 2.0 standard has incorporated PTP IEEE 1588 and warrants maximum compatibility between machine vision hardware and software suppliers in future.
Synchronisation of several cameras cameras supporting PTP are put in a special PTP mode which manages and defines the synchronisation of the camera clocks.
The device clock of the master is output with the timestamp of the camera and synchronises several cameras.
When the PTP mode is set to 'master', 'slave' or 'auto', the camera synchronisation starts in the network, provided one device is configured as master.
The process starts with the "master" camera which sends a "sync" message via multicast messaging.
The "slave" camera calculates the time difference between its internal cycle and that of the master camera.
In addition, Delay Request Message (by the slave) and Delay Response Message (by the master) are sent to synchronise the slave clock with the master cycle.
When the time difference of the clock is ≤2 μs, the cameras are in synchronous mode.
In addition to the exchange of synchronisation messages, the clocks are constantly readjusted by filters and statistical methods in order to eliminate deviations due to the physical layers, the network, repeater or switch.
Configure Cameras supporting PTP
Settings in Property Grid (consider camera specific parameter name variance) :
Acquisition -> Trigger ->
TriggerSelector = FrameStart
TriggerMode = On
TriggerSource = FixedRate
Acquisition -> AcquisitionFrameRateAbs = 1 for testing with 1 fps
Acquisition -> AcquisitionMode = Continuous
EventSelector = PtpSyncLocked
EventNotification = On
GigE -> PTP -> GevPtpMode = Master
GigE -> PTP -> GevPtpMode = Slave
Wait until GigE -> PTP -> PtpStatus has changed from Syncing to Slave.
Start acquisition on both cameras.
Set on both cameras the GigE -> PTP -> PtpAcquisitionGateTime to a higher value than GigE -> Timestamp -> GevTimestampValue (get the current GevTimestampValue with GigE -> Timestamp -> GevTimestampControlLatch).
Ensure, that PtpAcquisitionGateTime is still in future after setting on both cameras.
Acquisition stops on both cameras, when PtpAcquisitionGateTime is reached, the cameras run synchronous.
Example : PTP parameter in Nodemap of Dalsa camera
Example : PTP parameter in Nodemap of AV camera