物聯(lián)網(wǎng)通用應(yīng)用層架構(gòu)設(shè)計
掃描二維碼
隨時隨地手機看文章
引言
物聯(lián)網(wǎng)系統(tǒng)通常可由M2M應(yīng)用平臺、用戶側(cè)的匯聚網(wǎng)關(guān)和用戶側(cè)若干傳感器組成。由于物聯(lián)網(wǎng)設(shè)計的行業(yè)種類繁多,目前的應(yīng)用平臺和匯聚網(wǎng)關(guān)一般都由一個廠家提供,他們之間的通信協(xié)議也是私有的。而這又限制了應(yīng)用的迅速開發(fā)和升級開發(fā)。
為此,本文設(shè)計了一種在匯聚網(wǎng)關(guān)上的通用應(yīng)用層(CAL)架構(gòu)。通用應(yīng)用層(CAL)可對外提供統(tǒng)一的應(yīng)用編程接口(API),并可屏蔽傳感器通信差異的技術(shù)細(xì)節(jié)。文中詳細(xì)介紹了通用應(yīng)用層的分層架構(gòu)模型,并針對不同性質(zhì)的傳感器應(yīng)用設(shè)計了不同的API。采用該通用應(yīng)用層架構(gòu)的物聯(lián)網(wǎng)系統(tǒng)可以進(jìn)行匯聚網(wǎng)關(guān)和業(yè)務(wù)平臺的獨立開發(fā)和部署。
1 技術(shù)背景
物聯(lián)網(wǎng)(M2M)作為當(dāng)前迅猛發(fā)展的新技術(shù),已經(jīng)成為當(dāng)前的熱點話題。物聯(lián)網(wǎng)技術(shù)必將帶來一場深刻的科技變革,帶來人類科技文明的飛躍。物聯(lián)網(wǎng)的范圍非常廣,業(yè)內(nèi)預(yù)測:物聯(lián)網(wǎng)終端用戶將是手機等移動通信終端用戶數(shù)量的數(shù)十倍。物聯(lián)網(wǎng)的種類和跨行業(yè)十分廣泛,從家庭、企業(yè)、到各個行業(yè)。應(yīng)用范圍包括電力行業(yè)的遠(yuǎn)程抄表、配輸電設(shè)備監(jiān)控、重點污染源監(jiān)控、氣象檢測、車輛管理、水文檢測、物流運輸、移動POS等業(yè)務(wù),而且其它行業(yè)的物聯(lián)網(wǎng)應(yīng)用還有不少。物聯(lián)網(wǎng)的實質(zhì)是利用無線或有線通信技術(shù),通過互聯(lián)網(wǎng)實現(xiàn)各種物品的管理控制和信息共享。物聯(lián)網(wǎng)數(shù)量龐大、行業(yè)眾多,實現(xiàn)的技術(shù)多種多樣。物聯(lián)網(wǎng)設(shè)備接入網(wǎng)絡(luò)的通信協(xié)議一般有Zig-Bee、藍(lán)牙、Wi-Fi、Z-Wave等。
2 目前物聯(lián)網(wǎng)體系框架存在的弊端
物聯(lián)網(wǎng)(M2M)實現(xiàn)中,一般要在家庭或企業(yè)側(cè)部署一個M2M網(wǎng)關(guān),該網(wǎng)關(guān)可以是單獨設(shè)備,也可以和路由器、寬帶網(wǎng)關(guān)集成,主要負(fù)責(zé)傳感器和應(yīng)用平臺之間的通信,它一方面由M2M網(wǎng)關(guān)接收應(yīng)用平臺的管理或操作指令,另一方面,M2M網(wǎng)關(guān)還負(fù)責(zé)傳感器狀態(tài)的監(jiān)視和數(shù)據(jù)的采集。
物聯(lián)網(wǎng)在各個行業(yè)都有非常專業(yè)的需求,因而每個行業(yè),甚至每個部門都有自己的M2M應(yīng)用平臺。M2M網(wǎng)關(guān)給M2M應(yīng)用平臺提供的通信接口沒有統(tǒng)一的標(biāo)準(zhǔn),這樣,應(yīng)用平臺就必須對M2M網(wǎng)關(guān)作定制開發(fā)。在沒有統(tǒng)一接口標(biāo)準(zhǔn)的情況下,應(yīng)用平臺接口開發(fā)、調(diào)試工作量很大,另外,當(dāng)M2M更換設(shè)備時,平臺也要重新作適配開發(fā)。因此,物聯(lián)網(wǎng)的飛速發(fā)展迫切需要定義統(tǒng)一的接口標(biāo)準(zhǔn)和通用的M2M網(wǎng)關(guān)架構(gòu)。目前業(yè)界設(shè)計的平臺開發(fā)架構(gòu)多側(cè)重于物聯(lián)網(wǎng)運營支撐的平臺架構(gòu),其結(jié)構(gòu)如圖1所示。
3 通用應(yīng)用層的架構(gòu)和關(guān)鍵技術(shù)
3.1 通用應(yīng)用層架構(gòu)和系統(tǒng)接口
M2M網(wǎng)關(guān)引入通用應(yīng)用層(CAL)架構(gòu)有助于解決應(yīng)用平臺和網(wǎng)關(guān)之間的標(biāo)準(zhǔn)統(tǒng)一,也有助于M2M網(wǎng)關(guān)的標(biāo)準(zhǔn)化。通用應(yīng)用層可向M2M應(yīng)用平臺提供通用的應(yīng)用編程接口(API),以便應(yīng)用平臺不再關(guān)心M2M網(wǎng)關(guān)的差異。通用應(yīng)用層(CAL)的系統(tǒng)接口如圖2所示。
傳感器管理平臺也可使用通用應(yīng)用層提供的API,其中管理平臺可能是應(yīng)用平臺的一部分,也可能是獨立的平臺。不同行業(yè)甚至可以共享一個管理平臺,比如由電信運營商提供M2M網(wǎng)關(guān)的情形,設(shè)備的管理即由電信運營商管理,而業(yè)務(wù)采用各行業(yè)自建的平臺。
通用應(yīng)用層可提供不同形式的API:其一是對實時性要求較高的應(yīng)用,可采用基于TCP/UDP的私有協(xié)議;其二是對實時性要求較低的應(yīng)用,如管理、配置類通信請求,采用業(yè)界通用的WebService接口。
通用應(yīng)用層技術(shù)還可以提供應(yīng)用平臺SDK開發(fā)包,開發(fā)者無需關(guān)心通信的底層協(xié)議,從而可以讓開發(fā)者專注于M2M應(yīng)用開發(fā)。
3.2 通用應(yīng)用層的分層結(jié)構(gòu)
圖3所示是通用應(yīng)用層的分層邏輯架構(gòu)。由圖可見,該應(yīng)用層分為四層架構(gòu),現(xiàn)分別描述如下:
(1) 接口層
接口層主要是和各種傳感器的接口。該層能適配各種傳感器通信協(xié)議,如Zigbee、Z—Wave、UPnP、LON、DLNA等。
(2) 數(shù)據(jù)分析層
數(shù)據(jù)分析層主要是對主動采集的信息、設(shè)備上報的告警信息、事件信息等進(jìn)行統(tǒng)一過濾和分析,只有超過用戶設(shè)置的閾值才會向用戶發(fā)送告警信息;同時對釆集的數(shù)據(jù)進(jìn)行預(yù)處理,丟棄無用信息,并可轉(zhuǎn)換采集的數(shù)據(jù)格式;另外就是進(jìn)行簡單的統(tǒng)計分析,供應(yīng)用査詢;再就是提供數(shù)據(jù)的短時間的存儲。設(shè)計這一個策略層的目的就是減輕應(yīng)用邏輯層的數(shù)據(jù)過濾和處理的壓力,提高系統(tǒng)的整體性能。
(3) 應(yīng)用邏輯層
應(yīng)用邏輯層主要是對應(yīng)用的請求進(jìn)行處理。主要包含應(yīng)用認(rèn)證、傳感器監(jiān)控定制、傳感器狀態(tài)察看、傳感器遠(yuǎn)程控制、傳感器變化通知、傳感器管理、傳感器報警、傳感器配置等八大類業(yè)務(wù)邏輯處理模塊。應(yīng)用認(rèn)證模塊的目的是防止未經(jīng)授權(quán)的應(yīng)用來訪問傳感器;傳感器監(jiān)控定制模塊用于接收應(yīng)用的訂購監(jiān)控請求,并保存;傳感器狀態(tài)察看模塊接收應(yīng)用的傳感器狀態(tài)査詢請求,并從傳感器獲得相應(yīng)狀態(tài),然后返回給應(yīng)用;傳感器變化通知模塊根據(jù)傳感器監(jiān)控定制模塊存儲的定制請求,定期查詢傳感器狀態(tài),有符合應(yīng)用定制要求的,就主動通知應(yīng)用;傳感器管理主要關(guān)注傳感器工作狀態(tài)的管理,而不是對傳感器業(yè)務(wù)的管理;傳感器報警模塊接收數(shù)據(jù)分析層的告警信息,并發(fā)送到管理平臺;傳感器配置用于接收管理平臺的配置工單,并正確配置傳感器的參數(shù)。
(4) API層
API層可提供一系列的API,以供應(yīng)用平臺和管理平臺調(diào)用。API主要包括認(rèn)證API、訂購API、査詢API、控制API、通知API、告警API和配置API等。
3.3通用應(yīng)用層API
通用應(yīng)用層提供有一系列的APL可根據(jù)應(yīng)用的不同提供WebserviceAPI和實時響應(yīng)的自定義API。與管理相關(guān)的API對實時性要求不高,可以采用WebServiceAPI0而傳感器狀態(tài)監(jiān)控、控制命令下發(fā)則對實時性要求很高,故需要釆用實時性較強的通信技術(shù)。表1所列是通用應(yīng)用層編程接口(API)的主要分類。
4 輪渡和大橋交勇監(jiān)控中的通用應(yīng)用層應(yīng)用
大江、大河的輪渡和大橋的交通運輸一般都部署了各種傳感器,如車輛載重傳感器、擋竿傳感器、風(fēng)速傳感器、路燈傳感器等。因此,在大橋或輪渡監(jiān)控中心部署交通監(jiān)控應(yīng)用平臺,若沒有使用具有通用應(yīng)用層技術(shù)的采集網(wǎng)關(guān),應(yīng)用平臺就必須開發(fā)和釆集網(wǎng)關(guān)的私有接口,而且開發(fā)調(diào)試比較困難,另外,應(yīng)用平臺的通用性也將受到限制。使用具有通用應(yīng)用層技術(shù)的采集網(wǎng)關(guān)可簡化開發(fā)周期,應(yīng)用平臺直接集成有通用應(yīng)用層技術(shù)可提供的SDK。圖4所示是通用應(yīng)用層技術(shù)在輪渡大橋監(jiān)控系統(tǒng)中的應(yīng)用示例。
在圖4所示的示例中沒有部署單獨的管理平臺,其采用通用應(yīng)用層技術(shù)的輪渡和大橋交通監(jiān)控的應(yīng)用流程如下:
(1) 應(yīng)用平臺通過通用應(yīng)用層API接口配置傳感器參數(shù);
(2) 應(yīng)用平臺通過通用應(yīng)用層API接口訂購應(yīng)用平臺要監(jiān)測的傳感器及相關(guān)的狀態(tài);
(3) 通用應(yīng)用層監(jiān)測應(yīng)用平臺訂購的傳感器,并把符合應(yīng)用平臺監(jiān)測要求的狀態(tài)發(fā)送給應(yīng)用平臺;
(4) 應(yīng)用平臺通過通用應(yīng)用層API接口查詢傳感器的狀態(tài)(該步驟和2,3步無前后關(guān)系)。
5結(jié)語
通用應(yīng)用層的提出能促進(jìn)物聯(lián)網(wǎng)業(yè)務(wù)平臺的快速開發(fā)和部署,幫助物聯(lián)網(wǎng)應(yīng)用開發(fā)者屏蔽傳感器通信差異的技術(shù)細(xì)節(jié)。然而,為促進(jìn)物聯(lián)網(wǎng)網(wǎng)關(guān)的標(biāo)準(zhǔn)化,通用應(yīng)用層內(nèi)部的技術(shù)細(xì)節(jié)還有待進(jìn)一步研究。