西门子CB1241信号板通讯模块RS485

品牌: 西门子
型号: 6ES72411CH301XB0
产的: 成都
单价: 178.00元/件
发货期限: 自买家付款之日起 天内发货
所在地: 广东 广州
有效期至: 长期有效
发布时间: 2023-12-19 07:01
最后更新: 2023-12-19 07:01
浏览次数: 93
发布企业资料
详细说明

西门子CB1241信号板通讯模块RS485,西门子CB1241,西门子信号板通讯模块RS485,西门子RS485CB1241,CB1241价格,CB1241参数


V1.0版本:GATHER_BLK指令是将Bool数组合并成位序列(Byte、Word、DWord)数组。LAD需要在下拉框选择输出数组OUT的类型(Byte、Word、DWord),COUNT_IN的类型(USInt、UInt、UDInt),SCL无需选择。IN是待合并的Bool数组起始元素,COUNT_IN是合并后的位序列数组元素个数,OUT是位序列数组起始元素。

V1.1版本:IN除Bool数组之外,可以是Struct、UDT类型的变量,变量内是连续的Bool变量,IN处填写Struct、UDT类型内的接收的Bool起始变量。

注意:

1. 当COUNT_IN超过了位序列数组元素个数,将不执行指令。如果激活指令的ENO功能,则ENO=False。

2. 当所需的Boo数量超过了已有的Bool数量,将不执行指令,如果激活指令的ENO功能,则ENO=False。

使用举例,如图14-15所示:

1. 将"DB69".Static_2,从第1个Bool元素开始合并成"DB69".Static_1,从第3个元素开始的2个Byte变量

2. 将"DB69".Static_4,从Struct第1个元素开始合并成"DB69".Static_3,从第1个元素开始的2个Byte变量


西门子CB1241信号板通讯模块RS485,西门子CB1241,西门子信号板通讯模块RS485,西门子RS485CB1241,CB1241价格,CB1241参数

①:初始POS=0,指针指向数组第0个元素

②:执行Deserialize,转化了12个字节,POS的输出=0+12=12,指针指向数组第12个元素

Serialize:POS的初始输入作为转化后的Byte数组的起始元素,指令结束后,POS的输出=初始输入+SRC_VARIABLE占据的字节数

也可以看做指针,初始指针指向Byte数组所在的POS位置,转化后,指针移动了SRC_VARIABLE占据的字节数。

注意:POS>=0,当POS=0时,为Byte数组的第一个元素,所以建议Byte数组使用Array[0..x] of Byte,这样Byte数组下标可以和POS对应上。

例子参考图5:

①:初始POS=0,指针指向数组第0个元素

②:执行Serialize,转化了12个字节,POS的输出=0+12=12,指针指向数组第12个元素

2. TIA 博途 V14开始,S7-1200 V4.2支持V2版本

功能与V1版本不同的是

(1)标准Byte数组可以是优化数据块的数组

(2)Deserialize的SRC_ARRAY支持Array[*] of Byte

使用举例:

编写FC,实现清零各种DB块的变量

思路:

1. 将需要清空的DB块内所有变量放入Struct/UDT,或者将需要清空的数据块建立成UDT类型生成的DB,然后使用Deserialize(反序列化)指令清空。

2. 用于清空的Byte数组可以使用M区。对于S7-1211C与S7-1212C有4kB的M区,对于S7-1214C、S7-1215C、S7-1217C有8kB的M区,通常不会用到很多,这样可以利用其中靠后不常用的区域,例如2kB来清空*多2kB的DB块。

3. 有多个不同的结构的DB,都可以先后清空。

编写的FC、DB及调用,如图6-8所示。



相关通讯模块产品
相关通讯模块产品
相关产品