Skip to main content

NetVarReceiver

Library: SafetyNetVar

Tip

The version of the function block as described here corresponds to the latest version of the function block in Version list of function blocks.

Using the FB instance (driver instance)

. The NetVarReceiver function block is used in the application to...
  • Change the default values

  • Acknowledge errors manually

  • Diagnose the connection to a NetVarSender function block

To do this, the corresponding instance of the NetVarReceiver function block must be made visible in a program in the declaration part by means of VAR_EXTERNAL <name of the safety network variable list (receiver)> : NetVarReceiver.

Residual error rate

The specification requires that communication errors reported by the driver instance do not occur more frequently than one time in five hours. In this way, the residual error rate per hour for safety-oriented signals remains below the SIL3 limit value of 10-9.

sil3_img_lib_NetVarReceiver.png
Table 123. Inputs (VAR_INPUT)

Name

Data Type

Initial Value

Description

S_ActivateIn

SAFEBOOL

TRUE

Input for controlling the input data

TRUE: The valid, current values of the network variables of the safety network variable list (sender) object are transmitted to the application and copied to the application image.

FALSE: For this cycle, substitute values for the input data are transmitted to the application.

StartReset

BOOL

TRUE

Input <auto-ack-startup-error> for automatic acknowledgement of errors at startup.

For a description of the input <auto-ack-startup-error> and safety notices that you must observe unconditionally, see the Fieldbuses – General Part chapter.

AutoReset

BOOL

FALSE

Input <auto-ack-interrupt> for the automatic acknowledgement after interruptions.

For a description of the input <auto-ack-interrupt> and safety notices that you must observe unconditionally, see the Fieldbuses – General Part chapter.

Reset

BOOL

FALSE

Input <ack-edge> for manual acknowledgement.

For a description of the input <-ack-edge> and safety notices that you must observe unconditionally, see the Fieldbuses – General Part chapter.



Table 124. Outputs (VAR_OUTPUT)

Name

Data Type

Initial Value

Description

S_InReady

SAFEBOOL

FALSE

Output that indicates whether valid input data exists or not.

TRUE: Valid network variable values were received by the safety network variable list (sender) and copied to the application image.

FALSE: The input data of the application was set to the substitute values.

Error

BOOL

FALSE

Error display

DiagCode

WORD

0

See Diagnostic code

OpAckReq

BOOL

FALSE

Output <ack-req> for prompting a manual acknowledgement.

For a description of the input <auto-ack-interrupt> and safety notices that you must observe unconditionally, see the Fieldbuses – General Part chapter.

tRespTimeMS

TIME

TIME#0ms

Actual response time of the safety network variable list (sender)

tMinRespTimeMS

TIME

TIME#0ms

Minimum response time of the safety network variable list (sender)

tMaxRespTimeMS

TIME

TIME#0ms

Maximum response time of the safety network variable list (sender)



Diagnostic code

The diagnostic code is divided into two categories:

  • 16#8XXX states of communication with transmission

  • 16#CXXX error states

States of communication with transmission

Figure 126. States and transitions of communication with transmission
States and transitions of communication with transmission


The diagnostic code can have the following values in the states of communication with transmission:

DiagCode = 0x80xx, contains the state of the NetVarReceiver

State

Values for XX

Description

Reset

0x64

The connection is reset (input data is in safe state).

Session

0x65

The session ID is transmitted (input data is in safe state).

Connection

0x66

The connection ID is transmitted (input data is in safe state).

Parameters

0x67

The parameters are transmitted (input data is in safe state).

Data

0x68

Data or substitute values are transmitted.

Error states

If there are two errors in the NetVarReceiver at the same time, then only the error with the highest priority is shown. The priorities of the errors are assigned according to the error category:

  • 1st error category: DiagCode = 16#C0xx, initialization error

  • 2nd error category: DiagCode = 16#C1xx, receiver error safety network variable list (receiver)

  • 3rd error category: DiagCode = 16#C2xx, errors reported from the safety network variable list (sender)

Diagcode = 16#C0xx, xx contains an additional error-specific error code

Values for XX

Description

16#01-16#04, 16#06-16#0A, 16#0C, 16#0D

Internal errors

16#05

Length of safe data is not supported

(max. 32 byte data is supported)

16#0B

Invalid watchdog time; value 0 is not permitted

Error detection of the NetVarReceiver

wDiagCode = 16#C1xx, xx contains an additional error-specific error code

Values for XX

Description

16#00

Local reset or acknowledgement of a reset command

16#01

Unexpected command in the received telegram

16#02

Unknown command in the received telegram

16#03

Invalid connection ID in the received telegram

16#04

CRC error for the received telegram

16#05

Watchdog error; no valid telegram received within the watchdog time

16#07

Invalid safety data in the received telegram

16#FE

Error Reset signal

16#FF

Prompt for acknowledging the restart

Error – Response of the safety network variable list (sender)

wDiagCode = 16#C2XX, XX contains an additional error-specific error code

Values for XX

Description

16#00

Local reset or acknowledgement of a reset command

16#01

Unexpected command in the received telegram

16#02

Unknown command in the received telegram

16#03

Invalid connection ID in the received telegram

16#04

CRC error for the received telegram

16#05

Watchdog error; no valid telegram received within the watchdog time

16#06

Invalid FSoE slave address

16#08

Invalid communication parameter length

16#09

Invalid communication parameter data

16#10

Invalid application parameter length

16#11

Invalid application parameter data

16#80

Definition of the network variable list on the side of the safety NVL (receiver) is differentiated from those on the side of the safety NVL (sender)

Time measurement

The NetVarReceiver function block provides three outputs for the monitoring of the telegram processing time. The outputs are used for diagnosing the sender–receiver communication connection.

The expired time of the IEC timer is used as the measured cycle time of a telegram. In order not to falsify the measurements, only valid responses are considered. The time is measured between two telegrams received by the safety NVL (sender). This means that at least one bit in the complete telegram indicates a change.

The function block yields the actual response time (tRespTimeMS), the minimum response time (tMinRespTimeMS), and the maximum response time (tMaxRespTimeMS) of the safety NVL(sender).