張波 楊國華
[摘 要]邊緣計算節(jié)點連接現(xiàn)場設(shè)備網(wǎng)絡(luò),起到數(shù)據(jù)采集、通信聯(lián)網(wǎng)、安全過濾和運行管理的作用,進(jìn)而將現(xiàn)場設(shè)備域與云端應(yīng)用域的連接。
[關(guān)鍵詞]邊緣計算、通信協(xié)議、Python語言、傳感、通信、控制
中圖分類號:S596 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-914X(2018)10-0075-02
1 工業(yè)物聯(lián)網(wǎng)組成與邊緣計算節(jié)點
中國制造2025政策加快工業(yè)化與信息化的兩化融合步伐,工業(yè)物聯(lián)網(wǎng)及所用數(shù)據(jù)存儲和計算處理等智能設(shè)備安裝量大幅增加,以滿足工業(yè)智能化和數(shù)字化的需求。從工業(yè)物聯(lián)網(wǎng)的設(shè)備域、網(wǎng)關(guān)域、應(yīng)用域功能來看(圖1),工業(yè)物聯(lián)網(wǎng)有不同于一般物聯(lián)網(wǎng)系統(tǒng)的特性和要求。由于工業(yè)物聯(lián)網(wǎng)有嚴(yán)格的連接性、實時性和安全性要求,這些數(shù)據(jù)如果不經(jīng)過分析、處理、過濾就直接送到云端,不僅網(wǎng)絡(luò)帶寬無法負(fù)荷,云端的服務(wù)器也會耗費大量的資源來應(yīng)對無效或無用的信息從而導(dǎo)致崩潰,而且在一些關(guān)鍵的場合,數(shù)據(jù)需要被立即處理并作出實時的反饋,如果通過云端再反饋回來,相關(guān)的數(shù)據(jù)已經(jīng)失去時效性,因此,將關(guān)鍵業(yè)務(wù)部署于云計算平臺將帶來通信延時、業(yè)務(wù)中斷和數(shù)據(jù)安全的風(fēng)險。
(1)設(shè)備域是指構(gòu)成生產(chǎn)需要的各種現(xiàn)場設(shè)備,主要包括智能傳感器及儀表、智能制造設(shè)備、人機(jī)界面、可編程控制器、工業(yè)計算機(jī)等,通過工業(yè)總線組成現(xiàn)場網(wǎng)絡(luò)。
(2)網(wǎng)關(guān)域是連接現(xiàn)場設(shè)備域與云端應(yīng)用域的邊緣計算節(jié)點設(shè)備及軟件,起到數(shù)據(jù)采集、通信聯(lián)網(wǎng)、安全過濾和運行管理的作用。通過開發(fā)部署相應(yīng)的應(yīng)用軟件,實現(xiàn)數(shù)據(jù)采集、計算存儲和智能處理,獲取和集成企業(yè)MES及ERP業(yè)務(wù)數(shù)據(jù),進(jìn)而連接云端應(yīng)用域?qū)崿F(xiàn)企業(yè)業(yè)務(wù)上云。
(3)應(yīng)用域是基于公有云計算平臺構(gòu)建的融合大數(shù)據(jù)和人工智能的智能物聯(lián)網(wǎng)平臺,具有設(shè)備接入、設(shè)備解析、設(shè)備管理、規(guī)則引擎、時序數(shù)據(jù)庫、機(jī)器學(xué)習(xí)等一系列物聯(lián)網(wǎng)核心產(chǎn)品和服務(wù),幫助開發(fā)者快速實現(xiàn)從設(shè)備域到應(yīng)用服務(wù)域的無縫連接,高效構(gòu)建數(shù)據(jù)分析呈現(xiàn)、遠(yuǎn)程設(shè)備監(jiān)管、預(yù)測性維保等各種物聯(lián)網(wǎng)應(yīng)用,幫助工業(yè)制造用戶快速實現(xiàn)萬物互聯(lián)的商業(yè)價值。
3 工業(yè)物聯(lián)網(wǎng)邊緣計算設(shè)備軟件體系與協(xié)議
3.1 軟件體系
工業(yè)物聯(lián)網(wǎng)邊緣計算節(jié)點安裝Linux、windows操作系統(tǒng),內(nèi)置編程語言運行環(huán)境、運行腳本語言解釋器,常用開發(fā)語言有C、C++、Java、Python、Javascript等;集成網(wǎng)絡(luò)通信協(xié)議及安全中間件、集成API和配置界面。
3.2 通信協(xié)議比較:HTTP與MQTT
工業(yè)物聯(lián)網(wǎng)邊緣計算軟件與協(xié)議密切相關(guān),HTTP和MQTT是最常用的工業(yè)物聯(lián)網(wǎng)開放互聯(lián)協(xié)議,二者都是建立于TCP之上協(xié)議。使用安全套接字層(SSL)可以實現(xiàn)安全的傳輸加密。HTTP是以文檔為中心的。MQTT是以數(shù)據(jù)為中心的,它以字節(jié)數(shù)組的形式傳輸數(shù)據(jù)內(nèi)容,并不關(guān)心內(nèi)容。
4 基于Python語言開發(fā)工業(yè)物聯(lián)網(wǎng)邊緣計算軟件
下面以DIGI公司Connect Port X4為例介紹邊緣計算節(jié)點的軟件開發(fā)(圖2)。一端通過Xbee連接無線傳感網(wǎng)絡(luò)——Xbee Sensor傳感器模塊、SP智能插座、XBee底板,另一端通過以太網(wǎng)連接樂聯(lián)網(wǎng)物聯(lián)網(wǎng)云計算平臺(www.lewei50.com)。
4.1 Python編程連接現(xiàn)場設(shè)備
用import導(dǎo)入XBee傳感和驅(qū)動設(shè)備驅(qū)動模塊,編寫Python代碼連接、采集通過Zigbee無線通信連接的XBee設(shè)備,包括Xbee Sensor光照/溫度傳感器、Smart Plug智能插座(內(nèi)置溫度傳感器、電流傳感器)、Xbee擴(kuò)展底板等三個設(shè)備,通過命令行輸出結(jié)果,根據(jù)現(xiàn)場控制要求,可以編寫復(fù)雜的控制程序。
4.2 Python編程連接樂聯(lián)網(wǎng)
將4.1獲得的數(shù)據(jù)傳送至樂聯(lián)網(wǎng)物聯(lián)網(wǎng)數(shù)據(jù)平臺,并通過平臺功能將數(shù)據(jù)可視化,需要按照樂聯(lián)網(wǎng)的格式要求編寫從X4設(shè)備發(fā)送程序。
(2)將實時數(shù)據(jù)發(fā)送至樂聯(lián)網(wǎng)
使用HTTP發(fā)送,需要用import socket導(dǎo)入套接字,這樣可以用TCP連接樂聯(lián)網(wǎng),IP地址是HOST = "101.37.32.173",端口號PORT = 9960。
import socket
HOST = "101.37.32.173"
PORT = 9960
用SOCKET建立連接對象:
zhang=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
zhang.connect((HOST, PORT))
組裝發(fā)送數(shù)據(jù)包:
tx_data='{"method":"update","gatewayNo":"01","userkey":"fe34895698764685928b2ea423d6a356"}&^!'+'{"method":"upload","data":[{"Name":"t5","Value":"%s"},'%20+'{"Name":"L001","Value":"%s"},'%(sample['light'])+'{"Name":"A001","Value":"%s"},'%(sample1['current'])+'{"Name":"T002","Value":"%s"},'%(sample1['temperature'])+'{"Name":"OUTLET","Value":"%s"},'%(str(j))+'{"Name":"T001","Value":"%s"}]}&^!"'%(sample['temperature'])
發(fā)送數(shù)據(jù)命令:
zhang.send(tx_data)
(3)運行結(jié)果
通過樂聯(lián)網(wǎng)工業(yè)物 聯(lián)網(wǎng)數(shù)據(jù)平臺,可以看到連接設(shè)備狀態(tài)及數(shù)據(jù)刷新情況。樂聯(lián)網(wǎng)支持強(qiáng)大的數(shù)據(jù)圖形化功能,點擊其中光照傳感器變量可以打開并查看“數(shù)據(jù)-時間”曲線(圖3),在設(shè)置策略、規(guī)則和域值后,可以通過郵箱、短信、微信等方式接收報警信息。
5 結(jié)語
邊緣計算設(shè)備不僅具備通信網(wǎng)關(guān)功能,融合計算、通信、控制實現(xiàn)復(fù)雜的功能。本文通過Python語言的邊緣計算應(yīng)用軟件開發(fā)將現(xiàn)場傳感節(jié)點網(wǎng)絡(luò)與云端服務(wù)集成,實現(xiàn)現(xiàn)場XBee無線傳感器網(wǎng)絡(luò)通過邊緣計算節(jié)點與云端服務(wù)的快速集成,使設(shè)備管理、數(shù)據(jù)處理和業(yè)務(wù)邏輯核心功能向應(yīng)用層集聚,為工業(yè)物聯(lián)網(wǎng)的快速部署和敏捷開發(fā)給出了重要的范例。
參考文獻(xiàn)
[1] Chun Bin Tang,探索 IBM Bluemix 上的 MQTT 和物聯(lián)網(wǎng)服務(wù),http://www.ibm.com/developerworks/cn/cloud/library/cl-mqtt-bluemix-iot-node-red-app/index.html
[2] 陳旖,張美平,許力,WSN應(yīng)用層協(xié)議MQTT-SN與CoAP的剖析與改進(jìn),計算機(jī)系統(tǒng)應(yīng)用,Computer Systems & Applications, 2015年02期
作者簡介
張波(1968-6),女,江蘇無錫人,漢,無錫機(jī)電高等職業(yè)技術(shù)學(xué)校副教授,主要從事電子信息研究教學(xué)。