S7-1200与变频器G120之间的ModbusRTU通讯 点击:1019 | 回复:6



Smile-lyc

    
  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2020-03-17 10:35:30
楼主
目录

S7-1200与变频器的连接

变频器设置

PLC组态和编程

MODBUS通信控制变频器

(一)S7-1200与变频器的连接

1.1本例程的系统配置
本例程中用到的硬件: S7-1200(CPU 1214C)、G120 ( 控制单元CU240B-2 )、一台装有TIA Portal软件的PC机、CM1241模块、电源模块、标准RJ45网线。

1.2 硬件连接

1.2.1硬件连线
本例程中的硬件间的结构如下图所示:

图1-1

1.2.2 PLC与控制单元通信端口之间的连接
用电缆将CU240B-2 Modbus 通讯接口与PLC通信模块连接起来,如下图所示。

    
图1-2

(二)变频器的设置

2.1 地址设置
可以通过控制单元上的地址开关,也可以通过参数 P2021 或 STARTER 中“Control Unit / Communication / Field bus”页面来确定变频器的 Modbus-RTU 地址。
只有所有地址开关都设为“OFF”(0)时,P2021 或 STARTER 中的设置才有效。否则,Modbus-RTU 地址为地址开关所设置的地址。

2.2 参数设置
除了设置地址之外,还需要对其他一些变频器的通信参数进行设置,才可以进行MODBUS通信。具体需要设置的参数如表2-1所示:

表2-1


1分不嫌少!


楼主最近还看过



Smile-lyc

  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2020-03-17 10:36:32
1楼


(三)PLC组态和编程

3.1 创建项目
首先创建一个项目,点击创建新项目,输入名称,路径等信息。

图3-1

3.2 硬件组态
按照新手上路的提示首先选择设备和网络,进行硬件组态。


图3-2

点击添加新设备,添加相应型号的设备,修改设备名称,选择版本号,点击添加。

图3-3

在弹出的设备与网络的右侧硬件目录中,找到通信模块-点到点-CM1241(RS485),加入CM1241通信模块。

图3-4

双击设备视图中的RS485端口,设置端口组态,本例程配置如下图。

图3-5

在左侧的项目树-设备-在线访问-Broadcom NetXtreme...(本例程PC机所使用的网卡),双击更新可使用的设备,搜索到连接的设备。

图3-6

3.3 编程
在左边的设备中找到S7-1200/程序块,打开主程序OB1。在右边的指令栏里选择通信/通信处理器/MODBUS,添加MB_COMM_LOAD和MB_MASTER。


图3-7

在弹出的调用选项中,定义一个背景数据块。

图3-8

使用同样的方法,再加入一个MB_MASTER模块,同样定义背景数据块。


图3-9

分别按照图3-10、图3-11设置MB_COMM_LOAD和MB_MASTER模块。

图3-10

图3-11

其中,MB_COMM_LOAD与MB_MASTER指令的参数说明,请参考表3-1,表3-2。

表3-1 MB_COMM_LOAD指令的参数

表3-2 MB_MASTER指令的参数

3.4 下载
编译,确认无误后,点击下载。在弹出的“扩展的下载到设备”中,选择PG/PC接口类型,以及PG/PC接口。选择设备,并点击下载。

图3-12

在弹出的下载预览中,查看将要覆盖的内容,选择统一下载,并点击下载。


图3-13

3.5 监视
点击转到在线,并点击启动监视,此时即可通过PLC给变频器进行MODBUS通信。

图3-14


Smile-lyc

  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2020-03-17 10:36:48
2楼


(四)MODBUS通信控制变频器

4.1 使用MODBUS通信控制变频器启停
如下图所示,打开Tag_1,使能MB_MASTER。使能完成之后,关闭Tag_1。


图4-1

如图4-2,将MODE改为1(即写入数据),DATA_ADDR写入40101(主设定值寄存器号),DATA_PTR写入1000(给定值的写入值)。然后REQ使用一个脉冲沿来发送给定值。此时,变频器的给定值已经改为1000。

然后将DATA_ADDR写入40100(控制字寄存器号),DATA_PTR写入047E(停车),然后REQ使用一个脉冲沿来发送停车命令。再将DATA_ADDR写入40100(控制字寄存器号),DATA_PTR写入047F(启动),然后REQ使用一个脉冲沿来发送启动命令。


图4-2

注意:
MB_COMM_LOAD使能完成之后,一定要将Tag_1关闭,否则MB_MASTER模块将无法使用。

变频器启动位需要一个上升沿,所以先给其停车命令,然后发送启动命令,利用上升沿来启动变频器。

4.2 使用MODBUS通信修改和查看变频器参数
现在,以参数P1120加速时间为例,对参数的修改和查看进行讲解。
首先,进行读参数的演示。将MODE输入改为0(即读参数模式),将DATA_ADDR中写入40322(即加速时间的寄存器号),然后REQ使用脉冲沿来发送一个读请求。此时,可以接收到参数P1120中的数据位1000(即加速时间为10s)。

图4-3

然后进行写参数:将MODE输入改为1(即写参数模式),将DATA_ADDR中写入40322(即加速时间的寄存器号),在DATA_PTR中写入500,然后REQ使用脉冲沿来发送一个写请求。此时,已经将500写入了参数P1120之中,加速时间改为5s。

图4-4

控制单元中的 Modbus 寄存器和对应的参数如下表所示:

表4-1 Modbus 寄存器和对应的参数




幸福的小石头

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 430回
  • 年度积分:0
  • 历史总积分:2706
  • 注册:2015年5月27日
发表于:2020-03-17 13:44:19
3楼

难道就我一个人看不见图片吗?

过客一号

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 2417回
  • 年度积分:0
  • 历史总积分:496
  • 注册:2017年6月09日
发表于:2020-03-17 17:58:59
4楼

学习一下,感谢分享!

陈皓宇

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 9回
  • 年度积分:90
  • 历史总积分:233
  • 注册:2019年12月09日
发表于:2020-03-17 21:21:27
5楼

学习一下感谢分享但是图片怎么看不到呢

Smile-lyc

  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2020-03-18 08:56:22
6楼

什么鬼?昨天还可以看到图片,今天消失了?

浏览器问题,图片问题?求解!


热门招聘
相关主题

官方公众号

智造工程师