This is the web edition of the original ⮫ AC500-S safety user manual, version 1.3.2. This web edition is provided for quick reference only. The original safety user manual must be used to meet functional safety application requirements. |




DANGER

If cyclic non-safe data exchange is used to receive or send safety data from or to safety CPU, then SIL 3 (IEC 61508 and IEC 62061) and PL e (ISO 13849-1) functional safety requirements will not be fulfilled for received and sent data (independently on application safety communication profile used), because only one microprocessor (no 1oo2 safety architecture in the background) on safety CPU handles the sending and receiving direction.
Contact ABB technical support on how to reach SIL 3 and PL e.




DANGER

It must be guaranteed by proper Automation Builder user management configuration that only users of the safety group are allowed to implement cyclic non-safe data exchange.
How to use cyclic non-safe data exchange
-
Right-click on the safety CPU node and select “Add object”.
-
Select “Cyclic non-safe data exchange”.
Cyclic non-safe data exchange instance is added to the safety CPU node.
-
Double-click on the “Cyclic non-safe data exchange” instance.
A warning is displayed that safety requirements are not fulfilled when using the cyclic non-safe data exchange.
-
Carefully read the warning and confirm it.
Without confirming, you are not able to define variables and therefore not able to use the data exchange.
-
For details on checkbox “Prevent automatic modification of safety application” refer to ⮫ “Migration from AC500 V2 to AC500 V3 (compatibility mode)”.
-
Define variables in the tables. Refer to the detailed description for defining variables. ⮫ “Define variables”
Table “From safety CPU”: Variables which shall be written by the safety CPU and read by the non-safety CPU.
Table “To safety CPU”: Variables which shall be written by the non-safety CPU and read by the safety CPU.
-
Build or rebuild the non-safety application in Automation Builder. Do this after each modification for cyclic non-safe data exchange, e.g., new variables added or existing variables updated.
The variables are created and can be used in non-safety application.
-
Right-click on the safety application node (“AC500_S”) and select “Create Safety Configuration Data”. Do this after each modification for cyclic non-safe data exchange, e.g., new variables added or existing variables updated.
The variables are created and can be used in AC500-S Programming Tool.
Define variables

- Variable (CPU)
-
Variable name for non-safety application
- Type
-
Variable type both for non-safety and safety application
- Description (CPU)
-
Variable description for non-safety application
- Variable (safety CPU)
-
Variable name for safety application
- Description (safety CPU)
-
Variable description for safety application
-
Add a variable for non-safety application in the last empty row.
The corresponding variable name and description for safety CPU will be added automatically. If required, you can adapt them independently from the non-safety variable name and description.
To synchronize them again, manually change those entries which shall be the same so that variable names are written in the same way. The automatic synchronization is active again.
Supported data types:
-
Standard data types like BYTE, WORD, INT
-
Array data types
-
Data unit types (DUTs)
DUT objects are automatically created in AC500-S Programming Tool during “Create Safety Configuration Data”.
-
A mixture of the above
Supported features for adding variables:
-
Cut, copy, paste, delete and insert of variables via context menu and standard windows shortcuts.
-
Bulk data modification, e.g., copy and paste variables from and to .csv file.
-
Filters for each column.
-
Undo and redo of changes.
-
“Input Assistant” for variable name and type.





NOTICE

Since the variable names are generated for both safety and non-safety application, it is recommended to use variable names that clearly describe the transmission direction, e.g., "PMtoSM" and "SMtoPM" or "toSM" and "fromSM".




DANGER

To satisfy the safety programming guidelines ⮫ “Safety programming guidelines”, you must follow these rules:
-
Use the prefixes "I_" (non-safety inputs for the safety CPU) and "O_" (non-safety outputs from the safety CPU) for the variable names of the safety CPU. The cyclic non-safe data exchange is non-safe. Therefore, do not use any safety prefixes. ⮫ “Safety code analysis tool”
-
Add a description for each variable with at least 10 characters.




NOTICE

If you use cyclic non-safe data exchange, changes in non-safety programming environment could lead to new boot project CRC.




NOTICE

Cyclic non-safe data exchange shares the memory with the PROFIsafe process data (e.g., safety inputs and outputs) of the configured safety I/O devices, and is limited to 2048 bytes for each direction.
Automation Builder does not check the size when defining the variables, but during “Create Safety Configuration Data”.




NOTICE

Using cyclic non-safe data exchange influences the cycle time of non-safety CPU. E.g., data exchange with granular variables can generate a significant load on non-safety CPU.
-
Migration from AC500 V2 to AC500 V3 (compatibility mode)
-
Troubleshooting