Welcome to Ars-Informatica
Recent projects and articles:
The event driven or change-of-state transmission method simply transmits a TPDO message if the process data in it changes.
What exactly is defined as an "event" is typically specified by the Device Profile.
It could be any change to the data as well as specific change to the data (like reaching a certain limit or reaching a minimum difference).
If a TPDO contains a set of digital inputs and the event is "any" change then the TPDO gets transmitted as soon as the data in it changes.
If there is no change in the data there will be no transmission until the data actually changes.
There is one worst-case scenario for event driven communication that needs to be handled properly:
if one of the inputs changes constantly the TPDO would be transmitted back-to-back (as soon as a TPDO is transmitted the data will have changed again).
Such a behavior would occupy 100% of the available bandwidth.
CANOPEN handles this worst-case scenario by introducing the "Inhibit Timer" (see TPDO communication parameters).
This is a configurable timeout in multiples of hundreds of microseconds. After starting the transmission of the TPDO the Inhibit Timer must expire before the TPDO may be
transmitted again. So the maximum frequency with which a TPDO could occur is directly specified by the Inhibit Time.
According to some
The Inhibit Timer always affects the entire TPDO and all process variables contained in it.
This design implies that different multiple process variables pertaining to different physical magnitudes may vary
at different speed making the event change detection a complex process. In such situations CANOPEN nodes
try to simplify by either not allowing such mixing or by only implementing simple event change detection (values changed)
without the extended detection mechanisms.
CANopen is a communication protocol and device profile specification for embedded systems used in automation.