“
2023年春節檔已經過去近半年
口碑票房雙豐收的《流浪地球2》
隨著進入各大視頻網站
又帶來了一波熱度
其以無敵之姿再次踹開了中國科幻的大門
”

隨小破球一起出圈的還有電影中的一句經典臺詞“我在,我一直都在!”與《流浪地球1》中那句“道路千萬條,安全第一條,行車不規范,親人兩行淚”的警醒不同這一句更多體現的是人與人之間的愛。
而“今天”要介紹的就是:_______
設備與設備之間的“愛”的應用:用物聯網設備通信中常被用到的技術EMQX實現的MQTT消息服務器,與大疆設備、Api等相結合的應用。
EMQX:作為全球最具擴展性的 MQTT 消息服務器,EMQX 提供了高效可靠海量物聯網設備連接,能夠高性能實時移動與處理消息和事件流數據,幫助您快速構建關鍵業務的物聯網平臺與應用(官網抄來的,文字又湊了一段?。?。

EMQX官方下載地址:https://www.emqx.io/zh/downloads?os=Windows,服務的搭建很簡單,官網說的很清楚了,不再多言。本地啟動EMQX服務之后,瀏覽器訪問服務器IP地址+端口18083,如果訪問成功代表服務搭建成功。如我本地Docker環境EMQX5的訪問地址:http://192.168.31.222:18083/,默認用戶名密碼admin/public,登錄后修改密碼進入系統頁面:

到此服務基本搭建完成,我們需要做的就是選擇是否讓客戶端匿名訪問:如果我們什么也不配置,代表客戶端不需要認證就能訪問,就像城門一樣,大家都能進,這就是匿名訪問;如果我們只想讓有票的客戶端進入,就需要配置認證方式。EMQX提供多種認證方式,我們使用操作最簡單的內置數據庫認證。配置好后客戶端就需要通過用戶名密碼的方式訪問了。
至此,那個“我一直都在”的服務搭建完成。
我們可以做一個簡單測試:EMQX所在局域網內的兩臺電腦分別安裝MQTT客戶端(本人使用的是MQTTX),配置好我們搭建的服務后,訂閱同一個主題(Topic)。一個客戶端給該主題發送JSON格式的消息體后,另一個客戶端可成功收到該消息。也就是說,這兩臺電腦實現了最簡單的消息通信。
機智的小伙伴想到啥沒有?聊天室有么有?想上班摸魚又不想用微信、QQ的,是不是又多了一個渠道?就算被老板發現也可以說是在做測試!

所以我們可以大致了解這個“博愛”的MQTT服務端的整個工作流程:客戶端發送消息問服務端:“你好,在嘛”,服務端收到后回復:“我在,我一直都在”,并將該消息返回給訂閱了同一Topic的其他客戶端,讓其他客戶端也知道了它一直都在。
我們只是簡單測試了消息的流轉,而真正的應用應該還包括數據的流轉,這也是物聯網的內核所在。而這就給大疆無人機飛行的數據在各設備之間的流轉提供了技術手段。
我們都知道,大疆無人機通過圖傳技術,將實時影像傳輸到Pilot2或者大疆機場等設備端,并進行存儲。在涉及無人機應用的行業內,為了更好的在各端之間查看無人機飛行數據,都會做第三方平臺的開發,再結合第三方平臺,開發安卓端、IOS端或者H5端,以便滿足各需求端的使用。
林業調查就是行業內常見的應用場景。根據大疆上云API將第三方云平臺搭建好,將Pilot2或大疆機場通過MQTT消息服務與云平臺建立通信,技術上叫做“上云”,成功上云后,就完成了各端的聯通。
之后,無人機戶外作業人員通過遙控器操作的無人機調查某地區物種多樣性,將拍攝到的影像通過Pilot2實時傳輸到云平臺中,云平臺調取物種識別接口完成對影像的物種識別。大疆機場更加智能,且不受人員、時間、天氣等影響。這樣,調查單位的人員坐在辦公室打開電腦,就可以完成本地區內的物種調查,并實時觀看無人機的飛行數據,協助無人機,同步對物種進行識別。
當然,還可以開發移動端等其他端的應用產品,以滿足需求側的差異。
這就是大疆無人機在林業行業內的簡單應用。而在這個案例中,MQTT消息服務起到了至關重要的作用。
上文說了,設備完成端到端之間的通信,才算成功“上云”。應用中的案例我們可以這么理解:第三方云平臺、Pilot2、大疆機場都屬于客戶端,MQTT依然是服務端,三個客戶端同時連接到MQTT服務,并訂閱相同的特定規則的Topic(很關鍵)。Pilot2和大疆機場發送Topic請求上線(Or上云)消息體,第三方云平臺通過MQTT服務回復該Topic消息體返回給Pilot2和大疆機場,各端成功建立通信,這樣就完成了“上云”。成功“上云”后,云平臺會一直收到來自各端的網絡連通“詢問”。

設備未“上云”

設備“上云”

云平臺后端收到的網絡“詢問”
我們可以聯想一下畫面:無人機將飛行數據傳輸到Pilot2或大疆機場后,Pilot2會或大疆機場會不停的問MQTT消息服務器:“你好,在嘛?”,MQTT消息服務器收到并回復:“我在”,與此同時,云平臺也同樣收到了來自客戶端以及服務端的消息,這樣各端之間就完成了通信。之后Pilot2或大疆機場才會將飛行數據上傳到云平臺,如果期間通信失敗,傳輸會中斷,再次通信后會繼續傳輸。

云平臺管理Pilot2上傳的航線

云平臺地圖標注

云平臺媒體管理
結合上面的應用案例,是不是就形成了基本的概念了。當然,數據的傳輸是依靠云存儲的使用,但也是建立在通信成功的基礎上。所以說,物聯網中設備與設備之間的通信是一切的基礎,通信都沒有實現,那即便一端獲取到再多的數據,也不知道要傳給誰。而實現通信就可能會用到MQTT消息服務器,而EMQX就是實現MQTT消息服務器的一種技術方式。
“我在,我一直都在!”。
電影中,韓朵朵的戀人之愛之于劉培強一直都在,張鵬的師徒之愛之于劉培強一直都在,圖恒宇的父女之愛之于圖丫丫一直都在。甚至于從某種意義上而言,人類帶著地球一起去流浪,對于人類而言只要地球一直在,無論我們到達什么樣的星系,那怕是有三顆太陽,只要地球一直在,那人類終有可以抬頭看見藍天,低頭聞到花香的一天。
技術之于人而言,無論那種技術實現的服務,這句話永遠都是真理。

對于廣大讀者而言,中科北緯專注技術創新驅動,引領地信產業革新,持續為行業用戶和合作伙伴賦能及服務,我想說:“我們在,我們也一直都在”。