[西门子] 西门子S7-1200PLC Modbus通信控制变频器

[复制链接]
查看156 | 回复0 | 2024-5-24 19:40:45 | 显示全部楼层 |阅读模式

西门子S7-1200PLC Modbus通信控制变频器


通信协议是设备与设备之间进行数据交换的一种机器格式语言,参考:
《PLC通信基础知识》。


Modbus通信协议是Modicon公司(现被施耐德电气公司收购)提出的一种报文(通信)传输协议,由于它的开放性且无版权要求(免费使用),发展迅速,已经成为一种通用的工业标准,现在较多的工控产品支持它。



▼ 通信协议格式



期待更多的设备使用中国的EPA实时以太网通信。



由于大多数Modbus设备通信通过串口RS-485物理层进行,即Modbus RTU(紧凑)和Modbus ASCII(冗长),这两种通信不是实时通信,通信数据存在时间的快速响应问题,不适合要求快速响应的场合,如伺服电机的精确控制。但是,它应用在变频器的控制场合、模拟量的控制场合,还是比较经济的。


要控制变频器的运行,变频器的说明书少不了,不同的变频器通信协议的参数地址表示方法不一样。如台达变频器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



终于完稿,唉,太耗时间了,细节不到之处,见谅!


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则