1FL6024-2AF21-1MB1现货西门子代理
1FL6024-2AF21-1MB1现货西门子代理
1FL6024-2AF21-1MB1现货西门子代理
西门子S7-1200PLC Modbus通信控制变频器西门子S7-1200PLC Modbus通信控制变频器
通信协议是设备与设备之间进行数据交换的一种机器格式语言,参考:
《PLC通信基础知识》。
Modbus通信协议是Modicon公司(现被施耐德电气公司收购)提出的一种报文(通信)传输协议,由于它的开放性且无版权要求(免费使用),发展迅速,已经成为一种通用的工业标准,现在较多的工控产品支持它。
▼ 通信协议格式
期待更多的设备使用中国的EPA实时以太网通信。
由于大多数Modbus设备通信通过串口RS-485物理层进行,即Modbus RTU(紧凑)和Modbus ASCII(冗长),这两种通信不是实时通信,通信数据存在时间的快速响应问题,不适合要求快速响应的场合,如伺服电机的jingque控制。但是,它应用在变频器的控制场合、模拟量的控制场合,还是比较经济的。
要控制变频器的运行,变频器的说明书少不了,不同的变频器通信协议的参数地址表示方法不一样。如台达变频器VFD-M的MODBUS通信协议参数地址定义:
▼ 通信协议参数地址定义
因一个4位的16进制数,可以表示16个bit位,每4个位组成一位16进制数。
上图可以看出,所有命令只用到了16进制数的低8位,其余高位用0补齐。
则,0012H表示正转启动;0022H表示反转启动;0001H表示停机等。
变频器与PLC地址对应表
参数地址#16 | MODBUS地址#10 +40001 | |
运行命令 | 2000H | 48193 |
频率命令 | 2001H | 48194 |
变频器状态 | 2100H | 48449 |
输出频率 | 2103H | 48452 |
输出电流 | 2104H | 48453 |
输出电压 | 2105H | 48455 |
变频器参数设置
参数码 | 参数功能 | 设定值 |
P00 | 主频率输入来源 | 03:RS485 |
P01 | 运转信号来源 | 03或04 |
P88 | RS485通讯地址 | 01~254 |
P89 | 数据传输速度 | 00/01/02/03 |
P92 | 通讯数据格式 | 与PLC一致 |
P157 | 通信模式选择 | 01:Modbus |
除了以上通信参数,变频器还应设定基本的加减速度参数等。
编写程序:
1、新建一个项目,组态好设备,建立一个PLC数据类型(UDT),来表示变频器的各个变量,如下图:
▼ 自定义变量
2、建立数据存储数据块(DB),注意要取消“优化的块访问”,才能看到偏移量数据。
▼ 数据存储数据块
3、新建程序块,选择FB,建立块参数:
4、编写FB1块程序:
▼ 块程序1
▼ 块程序2
▼ 块程序3
▼ 块程序4
▼块程序5
5、建立多台变频器的变量数据块。
▼ 变频器变量数据块
6、主程序调用FB块,FB块调用变频器变量。
▼ 主程序OB1