01什么是Modbus
Modbus,顾名思义,是一种串行通信协议,通常用于工业上。它是由Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表,后来广泛应用在工业控制器、HMI和传感器上,逐渐被其他厂商所接受,成为了一种主流的通讯协议,用于和外围设备进行通讯。
基于Modbus完全免费、帧格式简单紧凑易部署和维护、修改移动本地的比特或字节限制少的特性,所以Modbus应用范围非常广泛。
02Modbus通讯过程
Modbus是主从方式通信。换言之,不能同步进行通信。总线上每次只有一个数据进行传输,即主机发送,从机应答,主机不发送,总线上就没有数据通信。
事实上,Modbus网络上只有一个主机,可支持多达247各远程从属控制器,但是实际所支持的从机数要由所用通信设备决定。采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。
举例1: 一个总线上有一个主机,多个从机,主机查询其中一个从机。
首先你必须得这些从机分配地址(这样才能知道哪个从机,而且每个地址必须唯一),分配好地址后,主机要查询,然后数据下发(数据内容下面会介绍),从机得到主机发送的数据,然后对应地址的从机回复,主机得到从机数据,这样就是一个主机到从机的通信过程,是不是很简单呢?
举例2: 就像打电话,你得知道对方的电话(这就是唯一地址),然后你打电话过去,相当于主机查找从机,然后对方接通电话,给你回复(返回数据),正常是这样的。
如果这时候,对方正在打电话,你应该听到的是"sorry,you…"这一串英文,说明对方忙,但是Modbus总线不能判断对方是否忙,也没有对应的仲裁机制,好了你又知道了一个缺点了!但是,你可以用软件的办法进行适当的处理数据!
03Modbus的模式
在谈及Modbus的模式之前,先了解:Modbus在7层OSI参考模型中属于第七层应用层,数据链路层有两种:基于标准串口协议和TCP协议,物理层可使用3线232、2线485、4线422,或光纤、网线、无线等多种传输介质。
许多工业设备,包括PLC、DCS、智能仪表、变频器等都在使用Modbus协议作为他们之间的通讯标准。有了Modbus,不同厂商生产的控制设备可以连成工业网络,进行集中监控。
从图上可以看出,Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。该协议定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。
基于此,一般可以将Modbus的传输模式分成三种:
► Modbus-RTU
数据按照标准串口协议进行编码,是使用最广泛的一种Modbus协议,采用CRC-16_Modbus校验算法。
Modbus RTU 协议是一种开放的串行协议,广泛应用于当今的工业监控设备中。该协议使用 RS-232 或 RS-485 串行接口进行通信,并得到市场上几乎所有商业 SCADA、HMI、OPC 服务器和数据采集软件程序的支持。
► Modbus-ASCII
所有数据都是ASCII格式,一个字节的原始数据需要两个字符来表示,效率低,采用LRC校验算法。仅支持透明传输。
在ASCII模式,报文用特殊的字符区分帧起始和帧结束。一个报文必须以一个‘冒号’(:)(ASCII十六进制3A)起始,以‘回车-换行’(CRLF)对(ASCII十六进制0D和0A)结束。设备连续的监视总线上的‘冒号’字符。当收到这个字符后,每个设备解码后续的字符一直到帧结束。报文中字符间的时间间隔可以达一秒。如果有更大的间隔,则接受设备认为发生了错误。
► Modbus-TCP
基于TCP/IP协议,占用502端口,数据帧主要包括两部分:MBAP(报文头)+PDU(帧结构),数据块与串行链路是一致的。
以上三种协议,一个设备通常只会有一种协议。实际使用要根据设备使用手册来选择采用哪种模式。在有些场合也会看到设备能支持多种Modbus模式,这是因为对于所有的这三种通信协议在数据模型和功能调用上都是相同的,只有封装方式是不同的,所以集成到一起了。
而对于Modbus的ASCII、RTU和TCP协议来说,其中TCP和RTU协议非常类似,只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上5个0和一个6并通过TCP/IP网络协议发送出去即可。
04Modbus 场景应用
目前,市场上针对Modbus协议的产品五花八门,其中最常见、最普遍的是进行协议转换的是DTU,DTU 不仅可以进行串口设备与网络间数据双向传输免去布线烦恼,有的还能适配到云服务平台,满足企业智能化运维。
GC511 是工业DTU 的典型代表,高性能、低功耗、即插即用实现设备数据采集和管理,兼容RS485通信方式,可对接主流工业协议和业务系统,支持边缘计算、AI算法,开放API,覆盖工业物联网多个行业多种应用需求。
GC511 DTU是如何实现了串口设备与网络间数据双向传输的呢?得益于Modbus协议可以实现一主多从(主机通过轮询的形式与多个从机进行通讯)的特性,GC511 DTU 下接传感器、仪表等数据设备,将下位机设备的数据采集到 DTU 上,DTU通过4G Cat.1网络将数据传输到云平台,以此实现设备数据远程采集、全天候监测,方便企业相关人员能在可视化管理后台掌握设备运行状态。
Modbus DTU GC511 特点如下:
1、安装便捷,即插即用
设备具有数据采集、有线/4G数据传输设备监控功能,可匹配所有支持标准Modbus协议的设备,无需布线,安装便捷,即插即用。
2、远程运维,提高效率
可以支持多个串口设备并转发到远程网络,快速接入机智云物联网平台,实现设备数据采集、全天候监测,企业工作人员在线即可实现设备远程管理、远程调试等,提升产品线运维效率,提升产品效能。
3、质量可靠,应用广
工业级设计标准,集成了STM32 MCU,具备12-24V宽压电源、插拔SIM、485串口、硬件看门狗等必要功能,适用于环境监控系统、工厂机器设备、生产线运行状态监控系统、生产信息采集系统等无线监测与预警。
Modbus DTU GC511 在纺织工业联网的应用案例
通过GC511 DTU实时采集织机设备数据并上传云端,实现7*24小时远程监控、产量统计、故障告警预知等,智能排产调控区域订单,实现高质产品、高效管理、快速反应的柔性生产链。
基于多年的软硬件经验,机智云开发者中心上新了适配“Modbus协议”的功能服务,满足广大开发者、厂商的个性化、定制化开发需求。
全部0条评论
快来发表一下你的评论吧 !