打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
西门子博途的MODBUS RTU通讯实例

一、写在前面

    MODBUS  RTU目前在水处理自动化领域主要用于仪表的数据采集及MODBUS RTU扩展IO模块的通讯。前者的仪表采集传统的方式是采用仪表自带的4-20mA接口通过屏蔽线传输到PLC的模拟量输入模块(AI),然后程序通过数据转换得到实际的工程值,但是因为干扰或者模拟量模块及仪表输出误差造成得到的仪表数据波动或者不准确,故而采用通讯方式得到比较与仪表一样的数据。  在水处理领域尤其是流量计,一般要求采集累计流量,累计流量可以通过脉冲方式累加获得,但是也存在误差,采用通讯方式可以将瞬时流量和累计流量一起采集。

二、案例实现

项目背景:本项目采用的S7-1200的扩展modbus卡,作为MODBUS RTU的接口,采集电磁流量计的瞬时流量和累计流量。

2.1 硬件接线

2.2 博途组态

设置MODBUS 协议的参数

2.3 通讯程序设计

(1)SB模块Modbus主站初始化

在指令--通信,调用

端口(PORT)在组态中是273,波特率为9600,响应时间设置为1000ms。

MB_DB参数:

(2)通信流程控制初始化(设计一个上电脉冲信号)

(3)读瞬时流量

该流量计设置modbus 地址为004,瞬时流量寄存器地址为4113,长度为2个字,瞬时流量存储值为DB57.DBD0。

(4)轮询触发程序,通讯完成下一步

(5)读累计流量

(6)整个系统的通讯轮询完成后返回到第一步

(7)实际结果

三、结论

    在进行modbus rtu通讯时,我们需要做以下步骤:

(1)硬件接线,采用屏蔽电缆或者RS485专用电缆,接线时主要模块端的接线要求及仪表端的接线端口,一般来说A+对于仪表的A,B-对于仪表的B,但是在很多时候,需要交换,这需要根据现场的情况而定。

(2)设置仪表的MODBUS RTU通讯参数,波特率、ID、校验位等。

(3)程序设计,主要包含通讯控制程序、消息程序。

(4)程序设计时,一定要对应所采集数据的modbus寄存器的地址,以及数据格式,有时候需要将高低字(字节)做交换。

(5)做程序前,可以用串口调试助手先进行数据采集,检查线路和仪表的通讯是否正常。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
传感器如何与PLC进行连接?
西门子200SMART通讯Modbus RTU与各种牌子仪表通讯方法讲解
【自动保存】AWT100无线通信终端2020-04-...
原创分享 | S7-1200通过串口服务器读取MODBUS RTU设备
组态软件与串口服务器的配置
三台S7-200 SMART 之间的MODBUS-RTU 通讯程序实例
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服