01
硬件及软件配置
- 主站:S7-1200
- 软件:TIA V14
- CPU:1214C CM1241
- Firmware:>=4.0
- 从站:ATV340
- Modbus 地址:2
- 通讯速率:19200
- 通讯参数:8-E-1
博途软件中提供了两种Modbus 通讯库文件,早期版本的 Modbus RTU 指令(图中MODBUS V2.2)仅可通过 CM1241 通信模块或CB1241 通信板进行 Modbus RTU 通信新版本的Modbus RTU 指令(图中MODBUS (RTU) V3.0)扩展了Modbus RTU 的功能,该指令除了支持 CM1241 通信模块、CB1241 通信板,还支持 PROFINET 或 PROFIBUS 分布式 I/O 机架上的 PTP 通信模块实现Modbus RTU 通信
- 本例中采用早期版本的Modbus RTU 指令进行编程
02
ATV340 参数设置
完整设置-命令和参考值
- 控制模式:隔离模式
- 给定频率 1 配置:Modbus
- 命令通道 1 设置:Modbus
通信-通信参数-Modbus
- Modbus 地址:2
- 通讯速率:19200
- 通讯参数:8-E-1
配置完成后,ATV340 需完全断电后重启
03
S7-1200 PLC 配置
接线方式:
S7-1200 PLC 配置:
1、CM1241 通信模块的参数设置
2、调用Modbus 通信初始化指令块
1)、S7-1200 端需要调用 MB_COMM_LOAD 指令块,该指令块主要完成通信格式的设定等任务
2)、 为 使 端 口 一 启 动 就 被 设 置 Modbus RTU 通 信 模 式 , 可 在 程 序 中 调 用“MB_COMM_LOAD”指令。调用“MB_COMM_LOAD”指令时会自动弹出创建相应背景数据块,点击确定即可,创建背景数据块后,为各输入/输出引脚分配地址。尤其需注意MB_DB 输入引脚需指向“MB_MASTER” 指令的背景数据块
该指令块的各个管脚定义如下:
3、创建 DATA_PTR 数据发送、接收缓冲区
1)、通过“程序块”→ “添加新块”,选择“数据块(DB)”创建 DB 块,选择“标准与 S7- 300/400 兼容”,点击“确认”键。在 DB 中创建数据类型为 11 个字的数组
注意:DATA_PTR 数据发送、接收缓冲区使用的 DB 访问类型必须是标准与S7- 300/400 兼容
2)、修改 DB3 的属性,取消优化的块访问
MB_DATA_PTR 指定的数据缓冲区可以为 DB 块或 M 存储区地址中。DB 块可以为优化的数据块,也可以为标准的数据块结构。若为优化的数据块结构,编程时需要以符号寻址的方式填写该引脚;若为标准的数据块结构(可以右键单击 DB 块,“属性”中将“优化的块访问”前面的勾去掉),需要以绝对地址的方式填写该引脚。本例以标准的数据块(默认) 为例进行编程
3)、取消勾选优化的块访问时,寻址方式为 P#DB3.DBX0.0 WORD 2(起始位,数据类型, 数量)
4、调用MB_MASTER 指令块
调用该指令时会自动弹出创建相应背景数据块,注意当使用多个 MB_MASTER 指令块时, 其背景数据块都要使用同一个,且该背景数据块必须与MB_COMM_LOAD 的 MB_DB 管脚的背景数据块保持一致
该指令块的各个管脚定义如下:
关于MODE,DATA_ADDR,DATA_LEN 三个参数的定义如下:
5、程序编写
初始化 Modbus RTU 通信方式
读操作,本例中从 ATV340 读取 3201 与 3202 两个寄存器的值
写操作,本例中写入 ATV340 的 8501 与 8502 两个寄存器
程序下载至 PLC 后,需要将 PLC 与 ATV340 全部断电重启
6、ATV340 控制流程
ATV340 变频器采用 DriveCom 控制流程,通过 ETA 状态字(通信地址为 3201)读取ATV340 的状态,通过 RFR 输出频率字(通信地址为 3202)读取 ATV340 的输出频率;通过CMD 命令字(通信地址为 8501)控制 ATV340 的状态转换,通过 LFR 设定频率字(通信地址为 8502)写入 ATV340 的设定频率
控制流程图,如下:
CMD 命令字
ATV340 常用的命令字操作
- 正转:16#000F
- 反转:16#080F
- 停止:16#0007
- 快速停止:16#0002
- 故障复位:16#0080
ATV340 常用的状态字
- 故障:16#xxx8
- 准备好:16#xx33
- 运行中:16#xx37
- 快速停止中:16#xx17
7、Modbus RTU 通信管理与轮询程序,ATV340 流程控制程序
作 者 简 介
李 振
运动控制产品专家
施耐德电气(中国)有限公司
工业自动化业务部 OEM 技术中心
独立编写《施耐德电气 SoMachine 控制器应用技巧 120 例》
参与编写《施耐德 EcoStruxure Machine 控制器应用及编程进阶》