1 DP 总线通讯功能简述
S7-300 与 SINAMICS S120 之间的 DP 通讯是借助于系统功能块 S FC14/S FC15 和 S FC58 / S FC59 进行 周期性及非周期性数据通讯。
周期性数据交换:即数据的实时交换,如:控制字和设定值;状态字和实际值。
非周期性数据交换:即读写参数。通常是在需要改变参数值时,才进行读写操作。
2 DP 通讯步骤
4.2.1 DP 地址设定
1). S120 的 DP 地址设定参见本章第 二节 “S120 与 TP170” 中所述
2). S7-300 硬件组态中各驱动器的 DP 地址设定
硬件组态中设定的地址必 须和 S120 的 DP 地址保持一致。
4.2.2 DP 报文设置
此处的报文是指通讯过程中,S7-300 与 SINAMICS S120 交换的数据字的数量及各字的含义。根据不同 的应用来选择相应的报文,下列的描述可用
来作为参考,详细描述请参考 SINAMICS S120 相关手册。
1). 电源模块:
通常选 370 或 999
2). 电机轴:
在伺服控制模式下,借助于上位机实现位置控制,常用 102 和 105。如需要 DSC,则选 105。
在伺服/矢量控制模式下,通过集成的定位功能块实现单轴的定位,常用 999 或 110。
在伺服/矢量控制模式下,实现速度控制,常用 1、2 或 999
注意:a). 999 为用户自 由定义格式,通讯字的数量及各字的含义由用户自己来定义。 b). 发送数据的第 一个字,应为控制字且第 10 位必 须为”1”。
1.如果驱动装置用做伺服位置控制,报文结构只能选择:SIEMENS Tlegra m 105 PZD10/10,或 SIEMENS Tlegra m 106 PZD10/10。
2.如果驱动装置用做速度控制,报文结构有多种选择,可选择用户自定义格式:999,将电机的起、停控 制位自己做关联。注意:必 须将 PLC 控制
请求置 1(P850=1)。
注意:用户可在 S7-300 硬件配置时根据需要配置报文结构,配置结束后进行编译 保存;之后打开 Starter,
核对报文结构是否一致,若不一致需在 Starter 侧做调整后点击“Transfer to HW config”按钮。
AC/AC 驱动装置侧报文设定
DC/AC 驱动装置侧报文设定
五、用 DP 总线对电机起、停及速度控制
S7-300PLC 通过 PROFIBUS 周期性通讯方式将控制字 1(CTW1)和主设定值(NSETP_B)发送至驱动器。
(1)控制字中 Bit0 做电机的起、停控制。
(2)主设定值为速度设定值,频率设定值和实际值要经过标准化,使得 4000(十六进制)对应于 50Hz,发送 的zui高频率(zui大值)为 7FFF。可以在
P2000 中修改标准化频率,即参考频率(缺省值为 50Hz)。
(3)当组态的报文结构 PZD=2 或自 由报文 999 时,频率设定值为一个字,在 S7-300 中可用“MOVE” 指 令进行数据传送;当组态的报文结构 PZD〉2,
频率设定值为两个字时, 在 S7-300 中对 PZD (过程数 据)读写参数时需调用 S FC14 和 S FC15 系统功能块。
•S FC14(“DPRD_DAT”)用于读 Profibus 从站的数据
•S FC15(“DPWR_DAT”)用于将数据写入 Profibus 从站
例子:SERVO_02 ”控制字、主设定值的发送及状态字、实际频率的读取程序
(1) 控制驱动器运行:
通过先发送典型控制字 047E 然后发送 047F(Bit 0 的信号边沿:ON)来启动驱动器,该数据控制字在 DB10.DBW8(见图 2)中指 定,主设定值在
DB10.DBD10 中设定,运行信号为 M1.0。这些值均通过变量表 VAT_2 设定及监控。控制程序见图 1。
(2)停止驱动器:
应发送典型控制字 047E 至驱动器(Bit 0 的信号边沿:OFF)。 (3)读取驱动器状态字及频率实际值:
PLC 接收状态字 1(STW1),存放在 DB10.DBW0 中;接收驱动器传来的频率实际值(NACT_B),存放在 DB10.DBD2 中。
图 1. 控制程序
图 2. DB10 控制字及状态字 DB10
六、驱动器参数的读取及写入
1.扩展 PROFIBUS DP 功能(DPV1)
非周期性数据传送模式允许:
•交换大量的用户数据(zui多 240 bytes)
•用 DPV1 的功能 READ 和 WRITE 可以实现非周期性数据交换。传输数据块的内容应遵照 PROFIdrive
Profile, version 4.0() (with data block 47 (DS47))非周期参数通道结构。
参数请求包括三部分:请求标题、参数地址及参数值。
参数请求格式
参数应答格式
参数请求及应答描述
3. S7-300PLC 通过 PROFIBUS 非周期性通讯方式读取驱动器参数。
请注意:PLC 读取驱动器参数时必 须使用两个功能块 S FC58 / S FC59 (程序参见图 3) 举例如下:
(1) 使用标志位 M10.0 及功能 S FC58 块将写请求(数据集 RECORD DB1) (图 4)发送
将 M10.0 设定为数值 1 启动写请求,当写请求完成后必 须将该请求置 0,结束该请求。MW108 (RET_VAL) 显示错误代码,用于表示功能处理时
发生的错误。有关所有错误的描述,请参见“系统功能/功能块帮助”。
(2) 之后,使用标志位 M10.1 及功能 S FC59 块将读请求发送至驱动器,驱动器返回参数值响应(响应块 DB2)
(参见图 5) 。
将 M10.1 设定为数值 1 启动读请求,当读请求完成后必 须将该请求置 0,结束该请求。MW110 (RET_VAL) 显示包括错误代码。
用于表示功能处理时发生的错误。有关所有错误的描述,请参见“系统功能/功能块帮助”。
图 3. 读取驱动器参数程序
图 4. 写请求数据集 DB1
图 5. 驱动器返回参数值响应块 DB2
4.S7-300PLC 通过 PROFIBUS 非周期性通讯方式写入驱动器参数 P1217。
举例如下:
PLC 写参数时只需使用 S FC58,在本项目的 Network 3 中发送写请求 DB1 (参见图 7) 到驱动器; PLC 读
“写参数”响应时需使用 S FC59,在本项目中读取驱动器返回的参数值响应块为 DB2 (参见图 8) 。程序参见图6。
(1) 将 M10.0 设定为数值 1 启动写请求,当写请求完成后必 须将该请求置 0,结束该请求。MW108 (RET_VAL)
显示错误代码,用于表示功能处理时发生的错误。有关所有错误的描述,请参见“系统功能/功能块帮助”
(2)将 M10.1 设定为数值 1 启动读请求,当读请求完成后必 须将该请求置 0,结束该请求。MW110 (RET_VAL)
显示包括错误代码。
用于表示功能处理时发生的错误。有关所有错误的描述,请参见“系统功能/功能块帮助”。
图 6. 写入驱动器参数程序
图 7. 写请求 DB1
图 8. 驱动器返回的响应块 DB2
五、通过 Slave to Slave 方式实现各从站之间通讯
通常我们所用的 Profibus DP 方式,主站(m aster)发送数据给所有从站(slave)并接收从站的应答数 据。而通过 Slave to Slave 方式我们可以建
立从站间的数据传输而不必经过主站。这样的通讯方式要求从站中
至少要有一个站做发送器(Publisher)其余站做接 收 器(Subscriber),发送与接收之间通过广播方式进
行 。发送器在发送数据给主站的同时以广播的方式发送给所有的接 收 器。接 收 器即可接收从主站发来的数据 也可接收从发送器发来的数据,通过
内部互联到需要的位置去。示例如下:
使用 Slave to Slave 功能前提条件: 要有 SIMATIC S7 做主站
Drive ES Basic V5.3.3 或更高
SINAMICS S120 版本 V2.4 或更高 现举例介绍如何使用
该功能。本例中使用设备如下: 笔记本:包含 CP5512 2# 站:CPU 314C-2DP 3# 站: SINAMICS S120 AC/AC 装置,包含 CU 310 DP、PM340 、1FK7 电机 7# 站:SINAMICS S120 DC/AC 装置,包含 CU 320、SLM、Double Motor Module, 2 个 1FK7 电机 其中:7# 站为 Publisher、 3# 站为 Subscriber Slave-to-slave 功能配置: 5.1 在 Step 7 中项目组态
2 从站参数配置
使用 Slave-to-slave 功能的接收器必须要在硬件组态中激活该功能。而发送器是由系统自动激活 本例中设 7# 站作为发送器,3# 站做接收器。
因而只需在 3# 站激活 Slave to Slave。步骤如下: 1:Step 7 硬件配置中双击 3# 站
2:在弹出的对话框中选择 “Configuration”
3:打开它的 “Detail”
4:点击 “Activate” 配置参数
在 Step 7 中 DP 从站的配置与在 Starter 中 DP 从站的配置区别如下:
上图中:
“Slot” 代表各装置在 Step 7 项目中的位置。本例中 Slot4+5 对应装置 在从站中 Object 1 Servo_02,
Slot 4 的数据类型为 “Actual value” 代表 Servo 02 轴的数据输出域
Slot 5 的数据类型为 “Setpoint ” 代表 Servo 02 轴的数据输入域,其余各装置依次类推。
Slot7+8 对应装置 在从站中 Object 2 “Servo_03
Slot10+11 对应装置 在从站中 Object 3 “CU_S_003
接 收 器的 Slave to Slave 功能仅 限于对其数据输入域的参数配置(即只能对 Slot5、Slot8、Slot11 做 Slave 配置)
3 激 活 Slave to Slave 功能
在 Profibus Partner 中选择 Type 类型。Output 表示该值来自于 PLC, Peer-to-peer traffic 表示 来源于 Slave to slave 的 Publisher
选择数据源站号”DP address”、本例中可供选择的 peer to peer 对象只有 3# 或 7 # 站。
选择数据源的地址及数据长度
4 在 Step 7 中使用 S FC14,15 读写 7# 站数据
(参见本章第四节“通过 DP 总线实现 S7-300 与 SINAMICS S120 通讯”)
微信扫一扫
关注公众号
18150066586 3004636837@qq.com 0591-87578810
15306977124 3004993430@qq.com 0591-83851589
15306977204 2851617306@qq.com 0591-88075780
15306977014 2851617301@qq.com 0591-87580173
18005007289 2851617310@qq.com 0591-87722515
15306977484 2851617304@qq.com 0591-83855060
18065057209 2881507050@qq.com 0591-22875422
15306977024 2851617309@qq.com 0591-83532940
15306977134 2851617313@qq.com 0591-83841178
15306977494 2851617303@qq.com 0591-83855720