8 Safety communication layer management

8.1 General

This chapter gives details about the management of the safety communication layer.

8.2 Safety function response time part of communication

For cyclic communication, the part of the safety function response time attributable to a safety communication according to this document (SFRTOPCSafety) is specified in Formula (1).

Calculation of safety function response time part of OPC UA safety

SFRTOPCSafety <= 2 × SafetyConsumerTimeout
+ ConsumerCycleTime
(1)

If multiple safety connections according to this document are used within a safety function in series, their respective attributions to the SFRT shall be summed up.

Figure 25 – Overview of delay times and watchdogs

Formula (1) is justified by Figure 25 and the following explanation:

  1. The SafetyConsumer sends a RequestSPDU. At about the same time, a dangerous event occurs at the SafetyProvider, demanding the safety function to trigger.

  2. However, in the worst case, the RequestSPDU is processed at the SafetyProvider just before the dangerous event becomes known.

  3. Hence, the ResponseSPDU does not yet contain any information about the dangerous event.

  4. In the worst case, the ResponseSPDU is processed in the SafetyConsumer just before the SafetyConsumerTimeout expires.

  5. An error leads to a loss or unacceptable delay of either the RequestSPDU or the ResponseSPDU.

  6. Hence, the SafetyConsumerTimeout expires.

  7. In the worst case, the timer expires immediately after it was checked. Hence, it takes another cycle of the SafetyConsumer to detect the error.

SafetyConsumerTimeout is a parameter of the SafetyConsumer. ConsumerCycleTime depends on the maximum sample time of the SafetyConsumer application. At commissioning, the integrator should be advised to design it shorter than a quarter of the target SFRTOPCSafety. If the watchdog time SafetyConsumerTimeout is too small, spurious trips can occur. To avoid this, SafetyConsumerTimeout should be chosen as shown in Formula (2).

Selection of the watchdog parameter SafetyConsumerTimeout

SafetyConsumerTimeout >= T_CD_RequestSPDU +
SafetyProviderDelay +
T_CD_ResponseSPDU +
SafetyConsumerDelay
(2)

[RQ8.1] To support the calculation of SafetyConsumerTimeout the SafetyProvider shall provide the SafetyProviderDelay as a Variable in the OPC UA Information Model, see Table 12.

Vendors may provide their individual adapted calculation method if necessary.