鋇錸技術(shù)趣解系列第三集:趣解MQTT協(xié)議
說(shuō)起通信協(xié)議,大多數(shù)人第一反應(yīng):“聽(tīng)起來(lái)就很復(fù)雜,我先裝死”
但MQTT不一樣,它不僅不復(fù)雜,甚至有點(diǎn)……人畜無(wú)害,佛系得很。
它像什么?像一個(gè)不吵不鬧、只發(fā)你愛(ài)看的內(nèi)容的“設(shè)備朋友圈”。不像TCP那種直男,也不像HTTP那種話癆——它像極了外賣(mài)小哥:“您訂的溫度、濕度、電流、開(kāi)關(guān)狀態(tài)已送達(dá),請(qǐng)查收!”
一句話概括MQTT:
“設(shè)備界的美團(tuán)外賣(mài) + 抖音關(guān)注 + 朋友圈爆料”
MQTT有多簡(jiǎn)單?
你看哈,它整個(gè)只做三件事:
誰(shuí)想發(fā)消息 → 發(fā)布(Publish)
誰(shuí)想看消息 → 訂閱(Subscribe)
一個(gè)服務(wù)端 → 專門(mén)轉(zhuǎn)發(fā)(Broker)
就這三個(gè)人物,就能把一個(gè)工廠的八卦聊得天花亂墜。
舉個(gè)例子,來(lái)碗麻辣燙:
只要你訂了個(gè)“麻辣燙出鍋通知”頻道,它一熟,就自動(dòng)發(fā)你手機(jī)上,不用你天天問(wèn)“熟了沒(méi)熟了沒(méi)”。
這就是 MQTT 的精髓:主動(dòng)推送,不打擾但永遠(yuǎn)在線。
MQTT有多佛系?
它報(bào)文小得可憐(最小2字節(jié))——比你中午吃的米飯還省。
網(wǎng)絡(luò)差?照樣飛!GPRS、2G都能跑,邊境哨所都能用。
它支持QoS,還能保證重要消息送到——就像順豐保價(jià)快遞,一路護(hù)送。
別看它看起來(lái)“佛系”,其實(shí)它也偷偷內(nèi)卷,出了好幾個(gè)版本:
MQTT v3.1
版本介紹:這是“開(kāi)山祖師爺”,2003年面世,那會(huì)兒大家還在用諾基亞。
特點(diǎn):
小巧簡(jiǎn)單,適合嵌入式、物聯(lián)網(wǎng)設(shè)備。
但不太講究“說(shuō)話方式”,只要能發(fā)能收就好。
你可以理解為:“咱能說(shuō)話就行,語(yǔ)法啥的別管了。”
MQTT v3.1.1(2014年)
版本介紹:這個(gè)是目前工業(yè)界最常用的版本。由 OASIS 組織標(biāo)準(zhǔn)化——算是“官方認(rèn)證了的朋友圈協(xié)議”。
特點(diǎn):
增強(qiáng)兼容性,語(yǔ)言更規(guī)范。
成為各大云平臺(tái)的默認(rèn)選擇。
比喻一下:
“麻辣燙商家不僅做飯快,還學(xué)會(huì)禮貌說(shuō)話了:您好,菜已出鍋!”
MQTT v5.0(2019年)
版本介紹:這是MQTT穿上西裝、考上研究生以后的版本,功能豐富到令人發(fā)指!
新增了啥?
屬性機(jī)制:發(fā)消息能加標(biāo)簽加備注了。
理由碼 Reason Code:告訴你為啥失敗,不再沉默是金。
訂閱過(guò)濾器:更精細(xì)地訂閱內(nèi)容(比如只看“報(bào)警類(lèi)”消息)。
你可以理解為:
“不但出鍋通知你,還告訴你香菜是另加的,辣椒是三顆,鍋底是菌湯?!?/span>
為啥各大云平臺(tái)都愛(ài)MQTT?
阿里云、華為云、騰訊云、百度云、AWS、Azure……全都給MQTT留了VIP通道!
為什么?很簡(jiǎn)單
1. 輕!真的太輕了!
云平臺(tái)每天要處理成千上萬(wàn)的設(shè)備,MQTT只用幾個(gè)字節(jié)就能搞定一次通信,
跟 HTTP 那種“長(zhǎng)篇小說(shuō)式”報(bào)文比,MQTT是“微型短視頻”選手!
2. 快!實(shí)時(shí)性強(qiáng)!
一發(fā)布,立刻推送到訂閱者。
不像HTTP那種得“你問(wèn)我答”,MQTT是“我想你,你就來(lái)”。
3. 智能!支持QoS & 保留消息
有點(diǎn)像微信“已讀未回”機(jī)制,有等級(jí)保證能收到。
你下線也能等你回來(lái)再補(bǔ)發(fā),永不漏消息。
4. 廣泛兼容
不挑設(shè)備,不挑系統(tǒng),不挑芯片,連樹(shù)莓派都能帶它飛。
ARM 控制器、小型RTU、工業(yè)網(wǎng)關(guān),統(tǒng)統(tǒng)能跑。
5. 設(shè)備端好做,服務(wù)器端也輕松
開(kāi)源生態(tài)多(比如 EMQ、Mosquitto、HiveMQ)
云平臺(tái)不用花太多錢(qián)擴(kuò)容,老板也喜歡!
鋇錸 MQTT 家族,四大高手,各有絕技!
【BL110 MQTT網(wǎng)關(guān)】
推薦原因:(入門(mén)首選·輕量全能)別看小,能耐大,是物聯(lián)網(wǎng)通信界的“萬(wàn)能小鋼炮”。
支持 MQTT 協(xié)議,輕松接入阿里云、華為云、亞馬遜、ThingsBoard、Ignition SCADA、ZABBIX 等主流平臺(tái)
兼容 Modbus RTU/TCP + 主流 PLC 協(xié)議
支持遠(yuǎn)程管理,調(diào)試運(yùn)維都不求人
一句話總結(jié):
“你發(fā)指令,我?guī)湍愕浆F(xiàn)場(chǎng)執(zhí)行!”
【BL116 高性能工業(yè)網(wǎng)關(guān)】
推薦原因:(工業(yè)重載·數(shù)據(jù)采集王者)雙核 Cortex-A7,輕松處理上萬(wàn)數(shù)據(jù)點(diǎn),硬核應(yīng)對(duì)復(fù)雜現(xiàn)場(chǎng)。
MQTT+TLS+多主題訂閱
Modbus、IEC104、OPC UA、BACnet、PLC 全協(xié)議支持
遠(yuǎn)程管理支持 OTA、遠(yuǎn)程PLC程序下載、日志查看
一句話總結(jié):
“不止數(shù)據(jù)上傳,更是你遠(yuǎn)程運(yùn)維的左膀右臂?!?/span>
【BL118 Node-RED邊緣計(jì)算網(wǎng)關(guān)】
推薦原因:(拖拽即邏輯·可視化神器)Node-RED + Ubuntu + Docker 三件套,工業(yè)現(xiàn)場(chǎng)的“魔法盒子”。
拖拽式可視化編程,0代碼也能玩轉(zhuǎn)自動(dòng)化邏輯
MQTT/HTTP/WebSocket/OPC UA 全支持
支持 遠(yuǎn)程管理,上線調(diào)試不發(fā)愁
一句話總結(jié):
“你要邏輯,我給你平臺(tái);你要自由,我給你Node-RED?!?/span>
【BL192 MQTT組合式 IO模塊】
推薦指數(shù):(采集+控制+聯(lián)動(dòng)三合一)遠(yuǎn)程IO模塊也能玩邏輯聯(lián)動(dòng),是工業(yè)現(xiàn)場(chǎng)的“通訊+控制”雙料選手!
支持 MQTT 協(xié)議,上云穩(wěn)如老狗
DI/DO/AI/AO 自由組合,按需定制
支持 遠(yuǎn)程管理,在線配置&固件升級(jí)
支持 本地邏輯聯(lián)動(dòng),無(wú)主機(jī)也能自動(dòng)執(zhí)行動(dòng)作
一句話總結(jié):
“不僅能上傳數(shù)據(jù),還能自己‘動(dòng)手做決定’!”
立式IO產(chǎn)品 3IO板版本 (2).jpg)
