加入收藏 在线留言 联系我们
关注微信
手机扫一扫 立刻联系商家
全国服务热线15915421161
公司新闻
西门子S7-1200 modbus rtu通讯使用介绍
发布时间: 2024-03-16 11:10 更新时间: 2024-11-26 07:00

Modbus RTU 介绍

1.Modbus是用在工控领域中的一种标准通信协议,该协议位于OSI的第7层(应用层),它定义了消息封装模式、沟通方法、沟通顺序。

Modbus的优势 :

1)Modbus协议是开放的

2)Modbus在多种物理接口(RS232, RS485, TCP/IP)均适用

3)Modbus格式简单易于开发

2.Modbus RTU 是运行在物理串口(RS232,RS485)上的一种Modbus协议。

Modbus RTU特点:

1)线路上只能有一个主站,可以有多个从站

2)从站的编号为1-247

3)从站只能和主站进行通讯,从站与从站之间无法通讯

4)主站可以对从站进行广播,但是从站不会产生应答


  S7-1200支持的

Modbus RTU模块

图片

注意:

1. 使用通信模块CM 1241 RS232作为Modbus RTU主站时,只能与一个从站通讯。

2. 使用通信模块CM 1241 RS485作为Modbus RTU主站时,则允许建立Zui多与 32 个从站的通讯。

3. 使用通信板CB 1241 RS485时,CPU 固件必须为 V2.0 或更高版本,且使用软件必须为STEP 7 Basic V11 或STEP 7 Professional V11 以上更高版本


S7-1200作为

     的程序编写

用到的软硬件介绍:

硬件:CM1241 RS422/485作为Modbus RTU主站

软件:TIA Portal v16

1.硬件组态:

修改模块属性

图片


记住模块硬件标识符(端口号):

图片


2.程序编写

注意:

早期版本的Modbus RTU指令(不带“(RTU)”字样)仅可通过CM1241通信模块或CB1241通信板进行Modbus RTU通信。

新版本的 Modbus RTU指令(带“(RTU)”字样)扩展了Modbus RTU的功能,该指令除了支持CM1241通信模块、CB1241通信板,还支持 PROFINET 或 PROFIBUS 分布式 I/O 机架上的PTP通信模块实现Modbus RTU通信

图片


在这里,我们用新版本的指令。

1)首先进行初始化

图片

在此处▲

1中填入端口号,波特率,奇偶校验

2中填写Modbus_Master指令背景数据块中的数据区

另外:需要修改背景数据块中的Mode,填入4

图片


2)使用读写指令

图片

在此处:

REQ:上升沿有效

MB_ADDR:要读写的从站站地址

MODE:读写模式(0读1写)

DATA_ADDR:读写从站的存储区地址(例如40001)

DATA_LEN:读写的数据(字的个数,而不是字节、双字,即使是读的双字,也要折算为字来计算长度)

DATA_PTR:主站的存储区(读存放的位置/写发送的位置)

3)建议:

因为无法同时执行多个Modbus_Master指令,因此建议

a.使用done或者error反馈来进行多个Modbus_Master的轮询操作。

b.使用计数器进行定时轮询操作



总结

1.使用主站模式时,对于一个通讯模块而言,需要一个初始化指令、一个或者多个读写指令,读写指令要使用同一个背景DB块。

2.主站模式下对从站的多个读写指令需要使用轮询操作。

3.需要修改初始化背景数据块中的Mode,填入4。


联系方式

  • 电  话:15903418770
  • 联系人:张经理
  • 手  机:15915421161
  • 微  信:15915421161