- {{item.name}}
S7-1200与G120 CU240X-2 DP的PROFIBUS通信 第3部分 非周期通信读写变频器参数
- 0
- 648
- 2759
1 G120 PROFIBUS通信功能概述
SINAMICS G120第二代控制单元CU240B-2 DP、CU240E-2 DP、CU240E-2 DP F支持基于PROFIBUS的周期过程数据交换和变频器参数访问。
> 周期过程数据交换--通过该通信PROFIBUS主站可将控制字和主设定值等过程数据周期性的发送至变频器,并从变频
器周期性的读取状态字和实际转速等过程数据。G120最多可以接收和发送8个过程数据。该通信使用周期性通信的
PZD通道(过程数据区),变频器不同的报文类型定义了不同数量的过程数据(PZD)。
> 变频器参数访问--提供PROFIBUS主站访问变频器参数的接口,有两种方式能够访问变频器参数:
- 周期性通信的PKW通道(参数数据区):通过PKW通道主站可以读写变频器参数,每次只能读或写一个参数,PKW通道的长度固定为4个字。
- 非周期性通信:主站采用PROFIBUS-DPV1通信访问变频器数据记录区,每次可以读或写多个参数。
本文通过示例介绍S7-1200与CU240E-2 DP F的PROFIBUS 非周期通信,介绍如何通过非周期通信读写多个变频器参数。
2 非周期通信
非周期通信工作模式:主站调用“WRREC” 指令将“参数请求”写入从站,从站内部处理后,主站调用“RDREC”指令读取包含“参数应答”数据记录。“参数请求”和“参数应答”的数据内容应遵照PROFIdrive参数通道(DPV1)数据集DS47(非周期参数通道结构)。“参数请求”包括读参数和写参数请求,其数据结构参考表2-1。参数请求结构字段的说明参考表2-2。“参数应答”包括读参数和写参数应答,其数据结构参考表2-3。参数应答结构字段说明参考表2-4。参数应答中的故障值说明1、参数应答中的故障值说明2参考表2-5和表2-6。使用非周期通信对读写参数数量没有限制,但每个读写任务最大为240个字节。
表2-1 参数请求数据结构
字节n | 字节n+1 | n值 | |
报文头 | 请求参考 | 请求ID | 0 |
驱动对象ID | 参数数量m | 2 | |
参数1 | 属性 | 索引的数量 | 4 |
参数号 | 6 | ||
第一个索引的编号 | 8 | ||
参数2 | … | … | |
… | … | … | |
参数m | … | … | |
参数1的值* (*只有写任务) | 数据格式 | 参数值数量 | |
参数值 | |||
… | |||
参数2的值* | … | ||
… | … | ||
参数m的值* | … |
表 2-2 参数请求结构字段说明
字段 | 数据类型 | 数值(十六进制) | 说明 |
请求参考 | 8位无符号数 | 01….FF | 用于区分对应的请求和应答。主站改变每个新的请求的索引号,从站在相应的应答中返回请求的索引号。 |
请求ID | 8位无符号数 | 01 02 | 区分请求的类型读任务写任务 |
驱动对象ID | 8位无符号数 | 01 | 用于区分驱动对象,固定为01hex |
参数数量m | 8位无符号数 | 01….27 | 访问的参数的个数 |
属性 | 8位无符号数 | 10 20 | 访问参数元素的类型数值描述(只有读任务) |
索引数量 | 8位无符号数 | 00….EA | 要访问的参数中多个索引的数量(参数无索引时00hex) |
参数号 | 16位无符号数 | 0001….FFFF | 访问的参数号 |
索引编号 | 16位无符号数 | 0000….FFFF | 要访问的参数中多个索引的第一个索引的下标(参数无索引时0000hex) |
数据格式 | 8位无符号数 | 02 03 04 05 06 07 08 10 13 41 42 43 | 通过数值判断参数值的数据类型8位整型16位整型32位整型8位无符号数16位无符号数32位无符号数浮点数8位数据串(Octet String)(长度16bit)时间差(Time Difference)(长度32bit)字节字双字 |
参数值数量 | 8位无符号数 | 00….EA | 说明随后的参数值的个数 |
参数值 | 16位无符号数 | 0000….FFFF | 参数值 |
表2-3参数应答数据结构
字节n | 字节n+1 | n值 | |
报文头 | 请求参考映射 | 应答ID | 0 |
驱动对象ID映射 | 参数数量m | 2 | |
参数1的值* (*只有读任务) | 数据格式 | 参数值数量 | 4 |
参数值或错误值 | 6 | ||
… | … | ||
参数2* | … | … | |
… | … | … | |
参数m* | … | … |
表 2-4 参数应答结构字段说明
字段 | 数据类型 | 数值(十六进制) | 说明 |
请求参考映射 | 8位无符号数 | 01….FF | 返回请求参考与请求相同 |
应答ID | 8位无符号数 | 01 81 02 82 | 读任务 读任务没有完整执行 写任务 写任务没有完整执行 |
驱动对象映射 | 8位无符号数 | 00….FF | 驱动对象号与请求相同 |
参数数量m | 8位无符号数 | 01….27 | 返回的参数的个数与请求相同 |
数据格式 | 8位无符号数 | 02 03 04 05 06 07 08 10 13 41 42 43 44 | 通过数值判断参数值的数据类型 8位整型 16位整型 32位整型 8位无符号数 16位无符号数 32位无符号数 浮点数 8位数据串(Octet String)(长度16bit) 时间差(Time Difference)(长度32bit) 字节 字 双字 错误 |
参数值数量 | 8位无符号数 | 00….EA | 说明随后的参数值的个数 |
参数值或错误值 | 16位无符号数 | 0000….00FF | 参数值或错误时的错误号 |
表 2-5 参数应答中的故障值说明1
表 2-6 参数应答中的故障值说明2
3 S7-1200与CU240X-2 DP的PROFIBUS 非周期通信实例
3.1 S7-1200组态
CU240E-2 DP F非周期通信与所选择的报文结构无关,选择任何一种报文格式都可以进行非周期通信,在使用系统功能“RDREC”和“WRREC”读写变频器数据记录时需要使用报文标识符。本示例以组态353报文为例。
S7-1200与CU240X-2 DP的PROFIBUS通信基本组态过程以及变频器通信参数设置请参考《S7-1200与G120 CU240X-2 DP的PROFIBUS PZD通信》文档,在此不做详细介绍。
• 组态与CU240E-2 DP F通信报文
1) 将硬件目录中“SIEMENS telegr 353, PKW+PZD-2/2”模块拖拽到“设备概览”视图的第1个插槽中,系统自动分配了输入输出地址。
2)为方便编程将插槽1的PKW区重命名为“PKW”(在调用系统功能“RDREC”和“WRREC”时将用到此名字),将插槽2的PZD区重命名为“PZD”。
图3-1组态与CU240E-2 DP F通信报文
• 编程:在S7-1200中调用扩展指令“RDREC”读取从站数据记录区,调用扩展指令“WRREC”写入从站数据记录区。
1) 双击项目树下的“Main(OB1)”打开OB1程序编辑窗口;
2) 扩展指令目录中“分布式I/O -> 其它 -> 驱动器 -> RDREC和WRREC”指令拖拽到程序编辑窗口中;
3) 分别指定“RDREC和WRREC”的背景数据块,使用系统自动分配即可,点击“确认”按钮。
图3-2 S7-1200编程
• 为系统功能“RDREC”和“WRREC”分配硬件标识:
1) 单击块参数“ID”;
2) 在下拉列表中选择“PKW[AI/AO]”。
图3-3分配硬件标识符
• 为系统功能“RDREC”和“WRREC”分配其它参数:
1) 块参数INDEX = 472) M10.0上升沿触发写任务,M20.0上升沿触发读任务。3) WRREC写入缓冲区从MB100开始的40个字节;4) RDREC读取缓冲区从MB200开始的40个字节;5) 其它参数分配请参考右图。
注意:也可以使用DB块作为缓冲区,创建DB时请将块访问模式定义为“标准-与S7-300/400兼容”模式。
图3-4分配其它参数
3.2示例1:读取P2900、P2902[2]~P2902[5]多个参数值
通过非周期通信读P2900、P2902[2]~P2902[5]参数值,变量表模拟程序参考图3-5。
- 按照读参数请求结构将数据写入“WRREC”数据缓冲区MB100~MB115的16个字节中,数据格式参考表3-1 ;
- 设置写数据记录长度16个字节,MW16 = 16;
- 设置M10.0 = 1,启动“WRREC”写从站数据记录任务;MD12指示“WRREC”指令执行状态,具体状态含义请参考TIA PORTAL在线帮助;
- 写数据记录完成后,设置M20.0 = 1,启动“RDREC”读从站数据记录任务;
- MW26中指示读取从站数据记录的长度28字节,MD22指示“RDREC”指令执行状态;
- 按照读参数应答结构分析MB200~MD227中28字节的数据,数据格式参考表3-2,读取到的P2900=33.0,P2902.2=10.0,P2902.3=20.0,P2902.4=50.0,P2902.5=100.0;
图3-5 S7-1200读取P2900、P2902[2]~P2902[5]多个参数值
表3-1 读参数 - 写数据记录请求
字节n | 字节n+1 | 地址 | |||
报文头 | 请求参考 | 01hex | 请求ID | 01 hex | MW100 |
驱动对象ID | 01 hex | 参数数量m | 02 hex | MW102 | |
参数1 | 属性 | 10 hex | 索引的数量 | 00 hex | MW104 |
参数号 = 0B54 hex | MW106 | ||||
第一个索引的编号 = 0000 hex | MW108 | ||||
参数2 | 属性 | 10 hex | 索引的数量 | 04 hex | MW110 |
参数号 = 0B56 hex | MW112 | ||||
第一个索引的编号 = 0002 hex | MW114 |
表3-2读参数 - 读数据记录应答
字节n | 字节n+1 | 地址 | |||
报文头 | 请求参考映射 | 01hex | 应答ID | 01 hex | MW200 |
驱动对象ID映射 | 01 hex | 参数数量m | 02 hex | MW202 | |
参数1的值 | 数据格式 | 08 hex | 参数值数量 | 01hex | MW204 |
参数值 = 33.0(浮点数) | MW206 | ||||
MW208 | |||||
参数2的值 | 数据格式 | 08 hex | 参数值数量 | 04hex | MW210 |
参数值 = 10.0(浮点数) | MW212 | ||||
MW214 | |||||
参数值 = 20.0(浮点数) | MW216 | ||||
MW217 | |||||
参数值 = 50.0(浮点数) | MW220 | ||||
MW222 | |||||
参数值 = 100.0(浮点数) | MW224 | ||||
MW226 |
3.3示例2:修改P2900、P2901参数值
通过非周期通信设置P2900=11.0、P2901=22.0,变量表模拟程序参考图3-6。
- 按照写参数请求结构将数据写入“WRREC”数据缓冲区MB100~MB127的28个字节中,数据格式参考表3-3;
- 设置写数据记录长度28个字节,MW16 = 28;
- 设置M10.0 = 1,启动“WRREC”写从站数据记录任务;MD12指示“WRREC”指令执行状态,具体状态含义请参考TIA PORTAL在线帮助;
- 写数据记录完成后,设置M20.0 = 1,启动“RDREC”读从站数据记录任务;
- MW26中指示读取从站数据记录的长度4字节,MD22指示“RDREC”指令执行状态;
- 按照写参数应答结构分析MB200~MD3中4字节的数据,数据格式参考表3-4,正确写入P2900=11.0、P2901=22.0。
图3-6 S7-1200写P2900、P2901参数值
表3-3 写参数 - 写数据记录请求
字节n | 字节n+1 | 地址 | |||
报文头 | 请求参考 | 01hex | 请求ID | 02 hex | MW100 |
驱动对象ID | 01 hex | 参数数量m | 02 hex | MW102 | |
参数1 | 属性 | 10 hex | 索引的数量 | 01 hex | MW104 |
参数号 = 0B54 hex | MW106 | ||||
第一个索引的编号 = 0000 hex | MW108 | ||||
参数2 | 属性 | 10 hex | 索引的数量 | 01 hex | MW110 |
参数号 = 0B55 hex | MW112 | ||||
第一个索引的编号 = 0000 hex | MW114 | ||||
参数1数值 | 数据格式 | 08hex | 参数值数量 | 01hex | MW116 |
参数值 = 11.0(浮点数) | MW118 | ||||
MW120 | |||||
参数2数值 | 数据格式 | 08hex | 参数值数量 | 01hex | MW122 |
参数值 = 22.0(浮点数) | MW124 | ||||
MW126 |
表3-3 写参数 – 读数据记录应答
字节n | 字节n+1 | 地址 | |||
报文头 | 请求参考映射 | 01hex | 应答ID | 01 hex | MW200 |
驱动对象ID映射 | 01 hex | 参数数量m | 02 hex | MW202 |
4 文档说明
S7-1200与G120 CU240X-2 DP之间的PROFIBUS通信入门指南包含3个部分:
> 《S7-1200与G120 CU240X-2 DP的PROFIBUS 通信 第1部分 控制变频器起停及调速》:介绍S7-1200通过周期性通信
PZD通道(过程数据区)控制和检测变频器状态。
> 《S7-1200与G120 CU240X-2 DP的PROFIBUS 通信 第2部分 周期通信读写变频器参数》:介绍S7-1200通过周期性通
信PKW通道(参数数据区)读写变频器参数。
> 《S7-1200与G120 CU240X-2 DP的PROFIBUS通信 第3部分 非周期通信读写变频器参数》:介绍S7-1200通过非周期
性通信读写变频器参数。
本文档为第3部分,另外2部分文档可在西门子下载中心搜索下载。
下载中心地址:73908838,73911891
注:有关PROFIBUS 通信内容更详细信息请参考《CU240E-2操作手册》
关键词
G120, CU240E-2 DP, CU240B-2 DP, S7-1200, PROFIBUS, 非周期通信
剩余80%未阅读,请登录后下载/查看文档
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错
- S7-1200与G120 CU240X-2 DP的PROFIBUS通信 第2部分 周期通信读写变频器参数
- S7-1200与G120 CU240X-2 DP的PROFIBUS通信 第1部分 控制变频器起停及调速
- 通过PROFIBUS DP实现S7-1200与SINAMICS DCM 非周期通讯
- G120 CU240X-2 通过格雷码二进制实现多段速
- G120 CU240X-2 在BOP-2面板手动模式下如何使用外部端子信号进行OFF2、OFF3停车
- G120 CU240X-2 通过格雷码二进制实现多段速
- 没有353、354标准报文的低版本CU240S DP/DP-F(≤V2.1)是否支持DS100非周期通讯
- SINAMICS DCM 与S7300 PROFINET 非周期通讯
- CBP2 V2.10为什么不支持DS47非周期通讯
- 通过TIA组态实现S7-300与SINAMICS DCM PROFIBUS周期通讯
{{item.nickName}}