西门子LOGO 6ED1055-1MM00-0BA2 扩展模块

供应商
上海工智达电气技术有限公司
认证
报价
550.00元每台
西门子
LOGO扩展模块
LOGO
6ED1055-1MM00-0BA2
中国
净重0.132KG
手机号
15221760199
联系人
田子龙
所在地
上海市松江区科技园区平原街880弄65号201
更新时间
2024-10-19 07:05

详细介绍

位序列的组合与分解

位序列的组合与分解(lad和scl)包括如图1所示4个指令:

图1 指令位置

其中scatter(_blk)是将位序列(数组)分解成若干bool变量,gather(_blk)是将若干bool变量组合成位序列(数组)。

版本:

1. tia 博途 v14sp1开始,s7-1200 v4.2支持v1.0版本

2. tia 博途 v15开始,s7-1200 v4.2支持v1.1版本

scatter

图2 scatter指令详情

v1.0版本:scatter指令是将位序列(byte、word、dword)分解成bool数组,其中byte分解成8bool元素的数组,word分解成16bool元素的数组,dword分解成32bool元素的数组。lad需要在下拉框“???”选择输入类型(byte、word、dword),scl无需选择。in是待分解的位序列变量,out是bool数组名,元素数量必须正好符合要求。

v1.1版本:out除bool数组之外,可以是struct、udt类型的变量,变量内是连续的8bool、16bool、32bool,out处填写struct、udt类型的变量名。

注:lad版本的scatter,如果调用该块的ob\fb\fc如果没有激活iec检查,in变量支持整数、字符、time、date、tod类型。

使用举例,如图3-5所示:

1. 将word变量"db66".static_1分解成array[0..15] ofbool变量"db66".static_2,将byte变量"db66".static_3分解成udt中的连续8个bool变量tag_3

图3 db66的定义

图4 q点在plc变量表的定义

图5 程序详情

scatter_blk

图6 scatter_blk指令详情

v1.0版本:scatter_blk指令是将位序列(byte、word、dword)数组分解成bool数组。lad需要在下拉框选择输入数组in的类型(byte、word、dword),count_in的类型(usint、uint、udint),scl无需选择。in是待分解的位序列数组起始元素,count_in是待分解的位序列数组元素个数,out是接收的bool数组起始元素。

v1.1版本:out除bool数组之外,可以是struct、udt类型的变量,变量内是连续的bool变量,out处填写struct、udt类型内的接收的bool起始变量。

注意:

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

2. 当所需的boo数量超过了已有的bool数量,指令正常执行,多余部分被舍弃。

3. 当bool数组起始

使用举例,如图7-8所示:

1.将"db67".static_1,从第3个元素开始的2个byte变量分解成"db67".static_2,从第1个元素开始

2.将"db67".static_3,从第1个元素开始的2个byte变量变量分解成"db67".static_4,从这个struct个变量开始

图7 db67中的定义

图8 程序详情

gather

图9 gather指令详情

v1.0版本:gather指令是将bool数组合并成位序列(byte、word、dword),其中8bool元素的数组合并成byte,16bool元素的数组合并成word,32bool元素的数组合并成dword。lad需要在下拉框选择输出类型(byte、word、dword),scl无需选择。in是bool数组名,元素数量必须正好符合要求,out是合并后的位序列变量。

v1.1版本:in除bool数组之外,可以是struct、udt类型的变量,变量内是连续的8bool、16bool、32bool,out处填写struct、udt类型的变量名。

使用举例,如图10-12所示:

1. 将array[0..15] ofbool变量"db68".static_1合并成word变量"db68".static_2,将udt中的连续8个bool变量tag_4合并成byte变量"db68".static_3

图10 db68中的定义

图11 i点在plc变量表的定义

图12 程序详情

gather_blk

图13 gather_blk指令详情

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起始变量。

注意:

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变量

图14 db69中的定义


西门子,LOGO,扩展模块

展开全文

我们其他产品
我们的新闻
微信咨询 在线询价 拨打电话