The standard application (Logic/Motion Controller) and the safety-related application can directly exchange data.
When inserting an Safety Logic Controller into the Logic/Motion Controller project in EcoStruxure Machine Expert Logic Builder, a special memory area for exchange data is reserved. In this area, exchange signals are available. Which exchange data are to be used in your project must be configured in the I/O configuration of the Safety Logic Controller. Refer to the chapter Exchange Data Configuration for the SLC for details, limitations, and a step-by-step procedure.
WARNING | |
---|---|
This chapter describes the possible use of an exchange variable with the data direction Safety Logic Controller to Logic/Motion Controller based on the following example:
A safety-related SF_EmergencyStop function block used in the safety-related application outputs a Boolean error flag.
The following procedures describe how to set up and configure the data exchange and read this value in the standard application thus enabling the Logic/Motion Controller to react on a function block error.
Procedure in EcoStruxure Machine Expert Logic Builder:
Step |
Action |
---|---|
1 |
In the parameter group SlcIoConfiguration of the ( ), reserve one Boolean variable group SLC2LMC_NumberOfBoolGroups as described in section Configuring the Data Exchange. Result: Eight Boolean exchange variables are available in the safety-related application. |
2 |
Open the editor of the and map a variable to the exchange flag.You have two possibilities:
|
3 |
Program a read access to the mapped variable in your application code (flag evaluation). Evaluate the variable in a way that the standard application reacts on a function block error, that is, if the variable is TRUE. |
Procedure in Machine Expert - Safety:
Step |
Action |
---|---|
1 |
Open the code worksheet where you want to insert and write the exchange signal. In the example, this is the code where the SF_EmergencyStop function block is used. |
2 |
In the SLC ( ) tree node. window, open the devices tree on the left and expand the |
3 |
Drag the Boolxxx exchange variable into the code worksheet. Result: When releasing the mouse button, the dialog appears. |
4 |
In the dialog, accept the proposed name, select an existing global variable, or declare a new global variable. |
5 |
Confirm the dialog by clicking and drop the variable at the desired position with a left click.Result: The variable is inserted into the code and its variable declaration is automatically inserted into the global variable worksheet. You can directly connect the variable to another object (for example, a formal parameter) or drop it unconnected at any free position. |