我跑过十多家离散制造车间的联网改造,见过太多死在通讯层的项目。很多老板上来就要数字化,就要大数据分析,结果第一步设备数据采不上、传不稳,直接卡死。
原来工业现场用的通讯协议,要么太老封闭,要么太笨重占资源,烂网环境下根本扛不住。直到这两年MQTT火起来,才解决了大部分中小工厂的痛点。
说穿了就是适配。工业现场的痛点是什么?设备多、资源少、网络烂、还要跨网传数据到云端。
MQTT天生就是为低带宽、不稳定网络设计的。基于发布订阅的架构,几十上百台设备连同一个服务端,也不会把服务器压垮。不像HTTP,每个设备要单独建请求,一来一回占好多资源,稍微设备多一点就卡。
断网重连自动续传这个特性,太对工业现场的胃口了。车间角落信号差,打雷断个网,太常见了。换别的协议,断网期间的数据直接没了,MQTT只要本地留缓存,网一好自动把攒的数据发上去,一点不丢。
问:MQTT不是几十年前就出来了吗?为啥最近才在工业火起来?
答:还真不是新技术。MQTT1999年就为石油管道遥检测控设计了,最早互联网物联网用的多,工业圈之前不敢用。核心两个原因,一是早年安全标准跟不上,默认没加密,工业控制系统怕被攻击;二是早年工业设备的计算资源太差,跑不动TCP协议栈。
现在不一样了。几块钱的物联网模组都能稳定跑MQTT,TLS加密、双向身份认证这些安全特性早就成熟了,加上各大公有云原生就支持MQTT接入,不用工厂自己搭服务,成本一下就下来了,落地的人自然就多了。
给没有联网能力的老机床、老注塑机加个几十块的边缘采集网关,网关把主轴转速、型腔温度、加工工时这些数据打包,通过MQTT发到厂区服务器或者公有云,改造成本不到换设备的十分之一,就能拿到完整的设备OEE数据。
✅
卖工业设备的厂商现在最喜欢这套。设备卖到全国各地,出厂就带MQTT联网模块,运行数据实时传到厂商后台,出了故障不用等客户打电话,后台先看到异常,要么远程改参数修好,要么工程师带着配件直接上门,差旅费能省一半还多。
✅
SCADA要拿PLC数据,WMS要拿AGV位置数据,MES要拿设备加工数据,原来每个系统都要单独对接一遍设备,麻烦死。现在所有设备把数据发到MQTT broker,各个系统自己订阅需要的主题就行,不用重复对接,省好多开发量。
问:工业用MQTT,和普通智能家居、物流IoT用的MQTT有区别吗?
答:差得远了。普通智能家居丢几个包,灯晚亮半秒,没人在意。工业现场不一样,急停信号丢了,那就是安全事故。所以工业MQTT要注意几个点:
第一QoS等级不能乱选,普通采集数据用QoS1,保证至少发到一次,关键控制指令必须用QoS2,保证不丢不重复。第二必须做断网本地缓存,不能断网就丢数据。第三安全要求高很多,一般都要设备证书双向认证,不能随便一个设备就能连进工厂内网。
很多新手图便宜,随便搭个开源mosquitto就上线,小项目几十台设备没问题,上了一百台以上并发直接卡崩。我之前在江苏一个汽配厂见过,一百八十台设备用mosquitto,天天断连重启,半个月就被逼着换了EMQX集群。不是说mosquitto不好,小项目够用,大项目一定要选支持集群扩展、工业级稳定的服务。
❗
很多人上来就乱起主题名,/dev1/temp,/sns/123,过了半年加新设备,自己都不知道这个主题是哪个车间哪个设备的,改都没法改。正确的做法是按层级设计,比如`/工厂编号/车间编号/设备类型/设备ID/数据类型`,一目了然,加新设备直接套格式就行。
❗
说实话,很多工厂的传感器一秒采好几次数据,大部分都是重复没用的,全部通过MQTT发上去,带宽费、云存储费蹭蹭涨。我见过一个项目,刚上线一个月,存储成本超了预算三倍,老板差点把项目砍了。正确的做法是边缘侧先做过滤,正常数据按分钟发均值,只有异常数据才实时上报,能省百分之八十的成本。
其实也不用吹什么黑科技,MQTT就是个解决实际问题的工具,现在工业数字化的需求摆在这,只要避开这些坑,MQTT协议应用能给中小工厂省老多钱,比折腾那些花里胡哨的概念实在多了。
免责声明:文章内容来自互联网,本站仅作为分享,不对其真实性负责,如有侵权等情况,请与本站联系删除。
转载请注明出处:工业场景下MQTT协议应用:车间联网落地的一线踩坑笔记 https://www.dachanpin.com/a/tg/69073.html