标准应用程序 (Logic/Motion Controller) 和安全相关 SLC 应用程序能够直接交换数据。
在将 SLC 插入 EcoStruxure Machine Expert 的 Logic/Motion Controller 项目中时,会为交换数据保留专门的内存区域。在此区域中,有交换信号可用。必须在 SLC 的 I/O 配置中配置要在项目中使用的交换数据。
注意: 标准应用程序与安全相关应用程序之间的数据交换始终被定义为非安全相关。
在配置数据交换时,数据量是有限的。如果配置时超过这些限制,那么在编译时,便会报告检测到的任何错误。
o8 Bool = 1 点
o1 INT = 1 点
o1 UINT = 1 点
o1 UDINT = 1 点
SLC 至 Logic/Motion Controller 或者 Logic/Motion Controller 至 SLC 方向上的最大字节数不得超过 128 字节,其中
o8 Bool = 1 字节
o1 INT = 2 字节
o1 UINT = 2 字节
o1 UDINT = 4 字节
此外,每种数据类型的量是有限的(根据 Schneider Electric Sercos III Parameters 编辑器类型列中的定义)。这些限制在配置过程中由 Logic Builder 验证。
o每个传输方向上的最大数据宽度为 128 直接。
oBOOLGroup 的值 1 保留一个包含 8 位的组,即 8 个布尔交换变量。这同样相应地适用于 BOOLGroupExt。
o对于 Logic Builder 中已配置的交换数据,在安全相关应用程序中必须至少声明相应的全局变量。如果是保留的 BOOLGroup 或 BOOLGroupExt,则必须在安全相关应用程序中为组中的至少一个布尔信号声明布尔全局变量。否则,便会在 Machine Expert - Safety 中生成编译器错误。
o您可以在 Schneider Electric Sercos III I/O Mapping 编辑器中将交换信号映射到 Logic/Motion Controller 应用程序中。
应用程序示例:安全相关应用程序中使用的安全相关 SF_EmergencyStop 功能块输出布尔错误标志。如要在标准应用程序中读取这个值并且启用 Logic/Motion Controller 以对功能块错误做出响应,请按照章节在 Logic/Motion Controller 与 SLC 之间交换数据所述那样操作。
注意: 除 SLC 的交换信号之外,安全相关 TM5 I/O 模块也提供交换信号。如要将这些信号映射到 EcoStruxure Machine Expert Logic Builder 中,请双击 Devices tree 中的相应 TM5 模块,然后打开 TM5 Module I/O Mapping 编辑器。相应示例见章节通过标准应用程序启用安全相关输出。
在下面的示例中,将一个 BOOLGroup 和两个整数保留作为交换变量,两者的传输方向均为 SLC 至 Logic/Motion Controller。因此,在安全相关应用程序中有它们可用,并且它们应当用在代码中,或者必须为它们至少声明全局变量。在标准应用程序中,仅允许读取这些变量。