立立电气

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 8130|回复: 0

西门子S7-1200/1500PLC的AT覆盖变量是什么意思​?如何建立覆...

[复制链接]

68

主题

68

帖子

290

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
290
发表于 2022-4-21 22:43:52 | 显示全部楼层 |阅读模式
西门子S7-1200/1500PLC的AT覆盖变量是什么意思?如何建立覆盖变量?

西门子S7-1200/1500PLC的AT覆盖变量是什么意思?
如何建立覆盖变量?
AT是博途软件中使用的一个关键字,代表覆盖变量的声明。
要访问声明变量内的数据区域,可以通过附加声明来覆盖所声明的变量,这样可以选择对不同数据类型的已声明变量进行寻址。最常用的就是使用 BOOL (位)的 ARRAY(数组) 对 WORD(字) 数据类型变量的各个位寻址。
博途软件中对“覆盖变量”的操作步骤作如下描述:
▼ 覆盖变量操作步骤
实际操作中,第一步,应该注意块的状态为标准访问代码块,即把“优化的块访问”前面的绿色“√”去掉。如不去掉这个,应具有保留设置“在IDB中设置”的变量代码块中。
▼ 覆盖变量的适应条件之一
第二步,在需要覆盖的变量紧接着下面增加一行。
▼ 在被覆盖变量下添加变量行
第三步,在“名称”栏输入名称,在“数据类型”栏,输入“AT”,回车,系统自动完成“AT”处理。
▼变量的AT处理
第四步,为新变量选择数据类型,此数据类型的宽度不能大于被覆盖变量的宽度。
▼ AT变量长度不能大于被AT变量长度
覆盖变量说白了,这个“盖子”只能刚好盖住,或盖一部分。覆盖变量是被覆盖变量的子集。
使用AT还就注意:
不可以覆盖VARIANT和INSTANCE数据类型的变量。
无法覆盖库中声明为接口中参数的块。
无法覆盖接口中声明为参数的结构化PLC变量。
无法通过片段访问对覆盖变量寻址。
在FC中使用AT,覆盖变量和被覆盖变量的数据长度必须相同。
如果被覆盖变量的数据类型为字符串、字节数组、字符数组等,那么其长度应与偶数个字节数对应。
感谢阅读指正,关注了解更多!
免责声明
本文来自腾讯新闻客户端创作者,不代表腾讯新闻的观点和立场。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|立立电气

GMT+8, 2024-12-3 04:41 , Processed in 0.069333 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表