S7-200Smart通过Modbus RTU通信实现V90内部位置控制的MDI功能
SINAMICS V90固件版本1.05以上开始,伺服驱动器提供了Modbus RTU 通信功能。PLC可以通过 Modbus的FC3及FC6功能代码读取或写入伺服驱动的寄存器,S7-200Smart可通过标准的Modbus功能块完成发送伺服驱动器的控制指令及读写驱动的参数。本文详细描述了S-200 SMART PLC通过Modbus RTU 通信连接SINAMICS V90实现内部位置的MDI功能。
目录
1 概述
2 必备条件
2.1 使用的硬件
2.2 使用的软件
2.3 通信连接
3 通过Modbus通信实现V90内部位置控制的MDI功能
3.1 V90 Modbus 寄存器说明
3.2 V90参数设置
3.3 PLC的编程
1 概述
SINAMICS V90固件版本1.05以上开始,伺服驱动器提供了ModbusRTU 通信功能。PLC可以通过 Modbus 的FC3及FC6功能代码读取或写入伺服驱动的寄存器,S7-200Smart可通过标准的Modbus功能块完成发送伺服驱动器的控制指令及读写驱动的参数。本文详细描述了S-200 SMARTPLC 通过Modbus RTU 通信连接SINAMICS V90实现内部位置的MDI功能。
2 必备条件2.1 使用的硬件
使用的硬件如表2-1所示。
序号
设备名称
订货号
1
SIMATIC S7-200 SMART CPU ST60
6ES7288-1ST60-0AA0
2
V90驱动器
6SL3210-5FE10-4UA0(V1.05版本以上)
3
伺服电机
1FL6042-1AF61-0LG1
4
电机及编码器配套电缆
表2-1使用的硬件
2.2 使用的软件
使用的软件如表2-2所示。
序号
描 述
1
Window 7 旗舰版 32位或64位
2
STEP 7-Micro/WIN SMART 编程软件
3
SINAMICS V-ASSISTANT V1.02
表2-2使用的软件
2.3 通信连接
SINAMICSV90 伺服驱动通过 RS485 电缆与 PLC 连接,使用标准 Modbus 通信协议进行通讯。通过ModbusPLC给V90发送伺服使能和停止命令并且可以读取伺服驱动器的状态及故障代码。
SINAMICSV90 伺服驱动通过 RS485 接口(X12)使用 MODBUS 协议与 PLCRS485(端口 0) 进行通讯,接线如图2-1所示。
图2-1 S7-200 SMART CPU 与V90通讯线连接
3 通过Modbus通信实现V90内部位置控制的MDI功能3.1 V90Modbus 寄存器说明
V90内部控制的控制数据寄存器如表3-1所示。
寄存器编号
描述
单位
定标系数
范围
40100
IPOS控制模式控制字
40932/40933
MDI 速度设定值
1000LU/min
1
1至2147482647
40934
MDI 加速度倍率
%
100
0.1 至100
40935
MDI 减速度倍率
%
100
0.1 至100
40102
位置设定值高字
LU
1
-2147482648至
2147482647
40103
位置设定值低字
表3-1 V90的内部位置控制数据寄存器
IPOS控制模式寄存器 40100控制字的定义如表3-2所示。
位
信号
描 述
0
SON_OFF1
通过上升沿使能伺服,=0时驱动通过斜坡函数发生器停车,脉冲被取消
1
OFF2
1:OFF2=1,允许使能
0:OFF2=0,立即取消脉冲
2
OFF3
1:OFF3=1,允许使能
0:OFF3=0,快速停车,脉冲被消除
3
OPER
1:允许运行(脉冲可以被使能)
0:禁止运行(取消脉冲)
4
SETP_ACC
触发上升沿来接收MDI 设定值
5
TRANS_TYPE SE
1:立即接收新的设定值
0:通过触发上升沿来接收新的设定值
6
POS_TYP
1:定位
0:相对定位
7
RESET
复位故障
8
预留
9
预留
10
PLC
使能 PLC 的控制权
11
预留
12
预留
13
SREF
启动回参考点(对于p29240=0,通过REF 信号回参考点)
14
预留
15
预留
表3-2 寄存器 40100控制字的定义
3.2 V90参数设置
按照表3-3设置伺服驱动器的相关参数
参数设置
说明
P29003=1
P29003为内部控制模式
P29303[0]=3
设置DI3为CWL,正限位,连接限位开关为高电平
P29304[0]=4
设置DI4为CCWL,负限位,连接限位开关为高电平
P29004=1
设置SINAMICS V90 的MODBUS站地址为1
P29007=2
设置通信协议为Modbus 协议
P29008=1
选择 Modbus 控制源,设定值和控制字来自于 Modbus PZD
P29009=8
设置传输波特率为38400 波特
表3-3伺服驱动器的相关参数
3.3 PLC的编程
PLC的编程如表3-4所示。
序号
1
初始化Modbus通信接口,需确保 PLC 的波特率与驱动设置一致,设置 PLC 校验方式为偶校验(parity= 2)。
2
通过寄存器 40100 写入需要的控制字。必须设置寄存器 40100 的位 10 为 1 以允许 PLC 控制驱动。使能驱动器,先将16进制数 40E 写入寄存器 40100 中,然后再写入 40F)。
3
如果需要对带增量编码器驱动执行回参考点操作,保持驱动为伺服使能状态,可通过写控制字 40100 第13位,执行回参考点操作。
4
通过MBUS_MSG功能块,将位置设定值和速度设定值写入寄存器 40932、40933、40934、40935、40102 和40103 中。
5
MDI相对定位的40100控制寄存器操作:
(1) 在IPos 控制模式中,控制字的位6=0选择相对定位模式(40F)
(2) 控制字的位5=0,设置使用上升沿来接收MDI 设定值(40F)
(3) 将表3-1中的寄存器,写入需要的值 (如40934及40935写入十六进制的4000, 40932/40933写入MDI速度值,40102/40103写入MDI的位置值) 后,通过PLC发送控制字的位4上升沿来接收设定值,驱动进行MDI运行(41F)
MDI定位的40100控制寄存器操作:
(1) 在IPos 控制模式中,控制字的位6=1来选择定位模式(44F)
(2) MDI设定值的生效有两种:
MDI设定值立即生效:控制字的位5=1,设置接收的MDI设定值立即生效(46F);
上升沿来接收MDI 设定值:控制字的位5=0,设置使用上升沿来接收MDI 设定值(44F)
(3) 将表3-1中的寄存器写入需要的值 (如40934及40935写入十六进制的4000, 40932/40933写入MDI速度值,40102/40103写入MDI的位置值)后,如果是MDI设定值立即生效,则驱动进行MDI运行。如果是通过上升沿接收MDI设定值,则通过PLC发送控制字的位4的上升沿来接收设定值(45F),驱动进行MDI运行