0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

S7-1500通过片断访问对变量区域进行寻址

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2022-12-12 10:36 次阅读

对于S7-1500/1200 PLC,可以选择包含所声明变量的特定地址区域,访问宽为 1 位、8 位、16 位或 32 位的区域。将存储器区域(如,BYTE 或 WORD)拆分为一个较小的存储器区域(如 BOOL),又称"片段访问"(Slice access)。

注意:无法使用片段访问对覆盖 AT 的结构、常量和变量进行寻址。

以下内容使用TIA V17 Pro软件测试。

1. 使用语法

下列语法用于寻址:

1. .X

2. .B

3. .W

4. .D

该语法包含以下部分:

部分 说明
访问的变量
X
B
W
D
访问宽度为"位(1 位)"
访问宽度为"字节(8 位)"
访问宽度为"字(16 位)"
访问宽度为"双字(32 位)"
访问 内的位号。编号 0 表示访问最低有效位
访问 内的字节号。编号 0 表示访问最低有效字节
访问的 内的字号。编号 0 表示访问最低有效字
访问的 内的双字号。编号 0 表示访问最低有效双字

通常针对Byte、Word等数据类型的变量进行片段访问,如图1所示。也可对 INT、DINT 等整数数据类型的变量进行片段访问。

c7d5bd56-7805-11ed-8abf-dac502259ad0.jpg

图1. 片段访问结构

注意:当使用SCL编程对INT、DINT 等整数数据类型的变量进行片段访问时,不能启用SCL程序块的IEC检查,否则提示语法错误,如图2所示。

c7e9bfae-7805-11ed-8abf-dac502259ad0.jpg

图2. 对整数变量片段访问的特殊情况

2. 片段访问使用示例

1. 对 DB 块变量进行 Slice 访问(优化或非优化DB均可)

创建一个 S7-1500 的项目,在程序块中新建优化DB “数据块_1”和非优化DB “数据块_2”,并新建DWORD和WORD数据类型的变量,如图 3 所示。

c7fc5380-7805-11ed-8abf-dac502259ad0.jpg

图3. 创建 DB 块变量

在程序段 1 简单编程(程序无实际意义仅为应用示例),变量输入方法:拖拽变量,然后在变量后面输入“.X0"或".B0",如图 4 所示。

c827d58c-7805-11ed-8abf-dac502259ad0.jpg

图4. 对 DB 块变量的进行 Slice 访问

2. FB、FC 块接口变量的 Slice 访问

以FB为例,在 Input 和 Output 分别创建变量"Input_1"和"Output_1",数据类型为WORD。编程使用方法和DB变量的片段访问一样,先拖拽变量然后再输入“.X0"或".B0",如图 5 所示。

c84f52b0-7805-11ed-8abf-dac502259ad0.jpg

图5. 对FB接口变量进行 Slice 访问

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    4904

    文章

    10971

    浏览量

    450748
  • 存储器
    +关注

    关注

    37

    文章

    6536

    浏览量

    160684
  • S7-1500
    +关注

    关注

    3

    文章

    245

    浏览量

    5538
收藏 人收藏

    评论

    相关推荐

    S7-1500系统架构及特点

    S7-1500 的数据管理系统中,提供两种不同的块访问机制: 优化访问、 非优化访问(兼容 S7-300/400),S7-1500 FW V1 及以上版本中,支持自动初始化功能。S7-1200 FW
    发表于 10-10 11:40 29次下载
    <b>S7-1500</b>系统架构及特点

    西门子S7-1200和S7-1500编程风格指南

    S7-1200和S7-1500编程风格指南分享
    发表于 08-17 17:30 16次下载

    S7-1500与G120变频器通过标准报文1进行Profinet通信步骤

    S7-1500与G120变频器通过标准报文1进行Profinet通信的具体步骤 具体步骤可参考如下 :以S7-1500作为Profinet的控制器,以G120变频器作为Profinet驱动单元,进行测试。实际测试实物如下图所示, 硬件明细 :
    发表于 04-10 09:35 0次下载
    <b>S7-1500</b>与G120变频器<b>通过</b>标准报文1<b>进行</b>Profinet通信步骤

    S7-1200使用AT覆盖变量

    S7-1200 要访问声明变量内的数据区域,可以通过附加声明来覆盖所声明的变量。这样可以选择对不同数据类型的已声明变量进行寻址,例如,可以使用 BOOL 的 ARRAY 对 WORD 数据类型变量的各个位
    的头像 发表于 03-11 11:10 2577次阅读

    关于S7-1500访问声明变量内的数据区域

    S7-1500访问声明变量内的数据区域,可以通过附加声明来覆盖所声明的变量。其优势在于无需指令即可根据需要实现变量的拆分,拆分后的变量可在程序中直接使用。例如,可以通过 Array of Bool 寻址数据类型为 B
    的头像 发表于 10-08 11:26 1024次阅读

    关于S7-1200或S7-1500 PLC的通信

    S7-1200 或 S7-1500通信,可以创建状态变量和控制变量,用来显示和控制S7-1200 或 S7-1500 PLC的通信。
    发表于 10-09 10:05 1366次阅读

    基于S7-1500 CPU集成PN口的Modbus TCP通信快速入门

    S7-1500 PLC需要通过TIA Portal博途软件进行组态配置,从TIA Portal V12SP1开始软件中增加了S7-1500的Modbus TCP块库,用于S7-1500与支持Modbus TCP的通信伙伴进行通信,如下图2-1所示。
    发表于 11-21 17:05 1813次阅读

    S7-1500S7-1500之间S7通信

    7 V14 在同一个项目中,新建两个S7-1500站点,然后做 S7 通讯。
    的头像 发表于 11-23 09:53 1361次阅读

    S7-1500 CPU支持与其它S7-1500 CPU进行直接数据交换

    S7-1500 CPU 支持与其它 S7-1500 CPU 进行直接数据交换。在直接数据交换的情况下,S7-1500 CPU 将 I/O 区域中的循环用户数据提供给一个或
    的头像 发表于 11-29 09:53 1722次阅读

    S7-1500通过PROFINET与RFID通信

    S71500-RF180C”,双击“添加新设备”在项目中添加控制器S7-1500 PLC,选择CPU1515-2PN ,如图2-1。
    的头像 发表于 12-28 09:15 1444次阅读

    S7-1500S7-1200存储区域保持性设置

    S7-300/400一样,S7-1500S7-1200都有存储区M区,另外S-1500还有存储区(定时器、计数器),这些区域都可以设置保持性。下面详细介绍如何设置这些区域的保持性。
    的头像 发表于 04-21 09:49 3498次阅读

    SIMATIC S7-1500的Profibus DP通讯

    S7-1500的Profibus DP通讯
    的头像 发表于 05-04 15:20 524次阅读
    SIMATIC <b>S7-1500</b>的Profibus DP通讯

    西门子S7-1500 之间 S7 通信

    S7-1500S7-1500 之间 S7 通信 S7-1500 的 PROFINET 通信口可以做 S7 通信的服务器端或客户端。S7-1500 支持 S7单边通信,仅需在客户端单边组态连接
    的头像 发表于 05-29 14:04 2488次阅读
    西门子<b>S7-1500</b> 之间 <b>S7</b> 通信

    S7-1500中各种语言结构的移植

    S7-1500 中,统一了所有编程语言的间接寻址选项,因此在移植过程中将部分转换 S7-300/400 中支持的间接寻址
    的头像 发表于 06-25 15:36 252次阅读

    DCM与S7-1500 PN是如何进行通讯的?

    S7-1500与SINAMICS DCM之间通过 PROFINET IO可进行周期性通讯,通过TIA组态,该通讯可通过调用功能块“DPWR_DAT/DPRD_DAT”实现S7-1500对 SINAMICS DCM数据的周期性写入和读取。
    发表于 07-11 14:15 329次阅读
    DCM与<b>S7-1500</b> PN是如何<b>进行</b>通讯的?