工业物联网云端协议以MQTT为主(SSL/TLS+JSON)

工业物联网云端协议以MQTT为主(SSL/TLS+JSON)

工业物联网是什么?

简单来说,就是物联网在工业控制上的具体应用。

SSL/TLS是什么?

SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。大部分互联网登录都是用的SSL/TLS,可以去网易邮箱http://WWW.126.COM看下,右下角上面“正使用SSL登录”的标识。

MQTT是什么?

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台。MQTT协议与传统工业通信协议相比有两个特色:使用发布/订阅消息模式,提供一对多的消息发布;可以与SSL/TLS加密融合一起,保证报文传输的安全。



JSON是什么?

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,中文名字JavaScript 对象标记语言,简称JSON。JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。下面是百度天工的一个格式。

{
"requestId":"{requestId}",
"method":"put",
"path":"/v1/mydevice/metadata",
"body":{
"metadata":{
"memoryFree":"32MB",
"light":"green"
},
"profileVersion":5
}
}

上面的格式是百度天工的,百度天工是什么,官方介绍:天工是基于百度云构建的、融合百度大数据和人工智能技术的“一站式、全托管”智能物联网平台,提供物接入、物解析、物管理、规则引擎、时序数据库、机器学习、MapReduce等一系列物联网核心产品和服务,帮助开发者快速实现从设备端到服务端的无缝连接,高效构建各种物联网应用(如数据采集、设备监控、预测性维保等)。


网关是什么?

网关一般情况下是嵌入式软硬件,具有以太网、RS485、GPRS、3G、4G等通信接口,实现协议转换功能,将PLC协议转换为MQTT协议,从而实现设备数据到云平台的传递。借用一句广告词,“网关不生产数据,只是数据的搬运工”。

目前迈思德网关已经通过MQTT接入(ZKYC、NJCR、SHRJ、BJHT、BJPO、HXWL、华为MES、SHZY)八种平台,预计到2017年底将接入超过15家以上的云平台软件,并在本年度内完成与ThingWorx的通信接入(后记,2017年6月底已经完成与ThingWorx的通信接入,非MQTT格式)。华为MES采用MQTT协议,实现了数据的采集与控制,这点值得做MES的借鉴。

2017年度已经进入第二个季度,与2016年度有所不同的是,今年国有企业咨询设备通过网关进行远程数据采集与控制的比例比去年高,而且对物联网通讯协议MQTT都有所了解,不像去年,来咨询的基本都不清楚MQTT这种通讯协议。国有企业规模大,示范效应高,先从试点开始,后面逐步推广。

今年大部分来咨询的技术人员都知道百度天工,虽然还不清楚百度天工的具体作用,但是都知道百度有个物联网平台。

MQTT将成为国内工业物联网的首选云通信协议,尤其在大规模设备厂家远程运维系统中采用MQTT+SSL/TLS会成为标配。在MQTT协议之上,JSON格式更会成为必选,由于云平台软件大部分采用JAVA开发,JSON格式的的MQTT协议会更受到云平台开发人员的喜爱。但是对于传统工业自动化人员,MQTT协议还是很难接触到的,一般对Modbus、OPC接触得多。

后记:

文章写于2017年4月18日,今天已经是2018年7月中旬,世界杯决赛日,根据迈思德网关接入的近百家平台分析,MQTT成为主流,没有其他。

本文仅在迈思德官网、本人知乎和CSDN(一个工控老人的角落 - CSDN博客)发布。

编辑于 2018-07-15 16:52