1.什么是MQTT、Modbus协议?
MQTT协议(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。 它工作在TCP/IP协议上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件。 MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。
Modbus则是一种串行通信协议,是Mod icon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议事实上的业界标准,并且现在是工业电子设备之间常用的连接方式。然而改进后的Modbus加了TCP协议栈,可以与云平台进行通信。(金鸽物联网云平台支持Modbus协议)
二、MQTT与Modbus协议间的区别
1.不同的应用场景:
Modbus是一种工业标准,尤其对实时性要求较高的工业中,采用本地通信,保证设备间的有序调度。可通过RS232、RS485、工业以太网进行Modbus传输,它提供了一种简单的机制来支持和使用,Modbus协议由地址码/标识码、功能码、寄存器地址、数据消息等组成。通过Modbus协议的设备(例如PLC或RTU等)进行通信,然后将这些数据提供给需要这些数据的应用程序中。
MQTT协议则主要用于分布式的云系统,多Modbus和MQTT应用于同一系统中,传输距离远于工业现场。
2.模式不同:
“模块总线协议”是请求/应答通信协议,mqtt是“订阅发布协议”请求/应答协议是发送一帧请求命令以等待接收方回复,根据回复判断请求命令是否成功送达,请求和应答均在一个连接中完成。Publish-Subscription模式中,发送方不直接向订阅方发送消息,它们之间存在一个独立组件,即消息代理(Broker),它保持发布方和订阅方之间的联系,过滤发布方传入的消息并分发给订阅方。
3.不同的安全级别:
最小化了MQTT协议的帐号验证、权限认证、tls加密传输。
三、同时具备Modbus与MQTT协议的工业物联网关
金鸽S475/S475E系列支持多种通信方式,包括短信、RS485、语音拨号、GPRS/3G/4G 无线数据网络四种告警方式,同时支持实时的金鸽IoT RTU 通信协议、Modbus RTU over TCP 协议、Modbus TCP 协议、MQTT协议以及透明传输功能,方便用户快速接入第三方服务器或云平台或SCADA。