MQTT(消息队列遥测传输)作为一种标准的信息传输机制,正在帮助加快工业物联网(IIoT)软件的部署。Cirrus Link Solutions的董事长及首席技术官Nipper在去年展示了仅仅依赖一个移动手机热点,使用MQTT连接300个PLC的案例。MQTT被集成到Inductive Automation 公司的Ignition 7.9中,让连接到网络边缘以及MQTT本地设备变得容易。
MQTT是基于 TCP/IP 协议栈而构建的,由 IBM 于上世纪 90 年代开发。它最初的用途是将石油管道上的传感器与卫星相链接。它是一种支持在各方之间异步通信的消息协议。异步消息协议在空间和时间上将消息发送者与接收者分离,因此可以在不可靠的网络环境中进行扩展。在 2014 年末,它正式成为了一种 OASIS 开放标准,而且在一些流行的编程语言中受到支持(通过使用多种开源实现)。
即使IIoT应用尚未到达互联网层级,使用MQTT也是明智的事情。Nipper认为MQTT通过两个步骤促进IIoT的实现。
1.分离:MQTT可以让设备根据需要量接到基础设施上,而不是连接到特定的应用中。
2.卓越的运营技术(OT):MQTT允许IIoT软件的支持者进行升级,展示一个OT解决方案优于传统方式的地方。
Nipper说过复杂性阻碍创新性;如果协议不能改变或扩展,那就是不好用的。开发工具和除错工具是昂贵的,而且选择也受限制。现有的技术往往容易形成信息孤岛CONTROL ENGINEERING China版权所有,而且访问权限仅仅对少数人开放。
倡导MQTT的说明书定义了如何在一个关键任务、实时环境下使用MQTT,在具备高可用性、冗余、以及可扩展性的情况下,定义了主题命名空间、有效负荷定义和状态管理。可参考的实例可以通过C、Java、JavaScript、Python以及Node Red展示。Nipper说到,虽然HTTP是更广泛使用的信息传送方式,但是由于HTTP没有状态,所以不能用来作为控制诸如阀门之类。
在目前使用的信息标准当中,根据Eclipse基金会IoT开发人员的调查www.cechina.cn,就像Nipper引述的那样,MQTT接近顶部控制工程网版权所有,61%的被调查者使用HTTP,52%使用MQTT,其他选项包括21%的CoAP和19%的HTTP/2等。Nipper说到,因为采用了架构工作的方式,几乎没有人担心任何升级,因为没有切换恐惧,其工作能力已经得以展示。
MQTT的应用场合包括泄漏检测、测量、资产管理、历史数据库、制造执行系统(MES)、企业资源计划(ERP)软件、产品生命周期管理(PLM)软件,以及大数据分析所用的分析软件引擎,包括Storm、Spark、Hadoop以及IBM的Watson IoT。Ignition不是唯一的数据消费者,他提到。在一个阶段演示中,Nipper展示了一台HART设备如何使用MQTT自动生成标签。Sparkplug规范的RevB版本是为数据传输协议(DTP)的智能边缘设备而准备的。
MQTT发布与订阅
Ignition 7.9软件使用MQTT,所以用户可以将应用与设备及ERP、分析功能、大数据和SCADA相分离www.cechina.cn,而且MES软件在功能上可以与PLC以及其他智能设备进行连接。
Inductive Automation 公司的创始人兼CEO Steve Hechtman认为,MQTT是Ignition软件内部一个使能科技;MQTT Broker可以让应用和设备根据需要通过云进行发布和订阅。MQTT的功能性是让Ignition领先其他自动化软件平台十年的科技之一。“我们不关心IIoT的大肆宣传www.cechina.cn,我们就想完成我们的事。”Hechtman补充道。
对于石油石化行业的用户来说,这意味着在数字化油田应用中的响应时间更快。在加拿大有一条长8000公里的管线正在使用MQTT执行Ignition项目。在过去,如果一个阀门打开了,15分钟以后管线操作员才会发现它被打开了,现在他们在15秒之内就会发现。(作者:Mark T. Hoske)