SIEMENS PLC程序解读 -Serialize(序列化)SCATTER_BLK(数据分散)
1、程序数据 第12个字节 PI

2、程序数据 第16个字节 PI

3、程序数据 第76个字节 PO

4、程序代码

2、程序解读
图中代码为 PLC 梯形图,主要包含以下指令及功能:
-
Serialize(序列化):
- 将
SRC_VARIABLE(Rpt_Data_Local)从#Pos[0]位置开始序列化,结果存入DEST_ARRAY #Ret_Val,用于将数据转换为连续字节流以便传输或存储。
- 将
-
SCATTER_BLK(数据分散):
- 第一个
SCATTER_BLK:EN使能,BYTE count_uint定义处理单元,IN为Data_Local[76],OUT为#Zone1_Interf[1],COUNT_IN = 4,表示将Data_Local[76]起始的 4 个数据分散存储到Zone1_Interf[1]起始位置。 - 第二个
SCATTER_BLK:IN为Data_Local[61],OUT为#Zone1_Out[1],COUNT_IN = 4,将Data_Local[61]起始的 4 个数据分散到Zone1_Out[1]。 - 第三个
SCATTER_BLK:IN为Data_Local[12],OUT为#Zone1_Rest,COUNT_IN = 4,将Data_Local[12]起始的 4 个数据分散到Zone1_Rest。
- 第一个
整体逻辑为:先通过 Serialize 打包数据,再利用 SCATTER_BLK 将特定本地数据(Data_Local)分散到不同目标区域(Zone1_Interf、Zone1_Out、Zone1_Rest),实现数据的组织与分配。
