《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于Web服務(wù)的物聯(lián)接入系統(tǒng)設(shè)計(jì)
基于Web服務(wù)的物聯(lián)接入系統(tǒng)設(shè)計(jì)
2015年電子技術(shù)應(yīng)用第7期
于洪波1,2,3,劉鴻飛1,2,3,方麗英1,2,3,陳道新4,王 普1,2,3
1.北京工業(yè)大學(xué) 電子信息與控制工程學(xué)院,北京100124; 2.數(shù)字社區(qū)教育部工程研究中心,北京100124; 3.城市軌道交通北京實(shí)驗(yàn)室,北京100124; 4.首都信息發(fā)展股份有限公司,北京100029
摘要: 由于物聯(lián)網(wǎng)接入設(shè)備與應(yīng)用業(yè)務(wù)的多元性與復(fù)雜性的增加,實(shí)際物聯(lián)網(wǎng)業(yè)務(wù)開發(fā)中需要對(duì)業(yè)務(wù)與設(shè)備做協(xié)同處理。針對(duì)此類問(wèn)題,提出一種面向服務(wù)的模型架構(gòu),并據(jù)此以Web服務(wù)模式觸發(fā)各類物聯(lián)接入設(shè)備信息的消息管道流程,并在基礎(chǔ)性接入信息處理過(guò)程中解決不必要的異構(gòu)問(wèn)題。基于Intel復(fù)雜指令集的嵌入式開發(fā)環(huán)境,利用多種語(yǔ)言協(xié)作設(shè)計(jì)實(shí)現(xiàn)一個(gè)物聯(lián)接入系統(tǒng)。經(jīng)實(shí)測(cè)可順利完成應(yīng)用層直接操控感知層的業(yè)務(wù)功能。
中圖分類號(hào): TP311
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2015.07.009
中文引用格式: 于洪波,劉鴻飛,方麗英,等. 基于Web服務(wù)的物聯(lián)接入系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2015,41(7):33-36,43.
英文引用格式: Yu Hongbo,Liu Hongfei,F(xiàn)ang Liying,et al. Design of Internet of Things access system based on Web services[J].Application of Electronic Technique,2015,41(7):33-36,43.
Design of Internet of Things access system based on Web services
Yu Hongbo1,2,3,Liu Hongfei1,2,3,F(xiàn)ang Liying1,2,3,Chen Daoxin4,Wang Pu1,2,3
1.College of Electronic and Control Engineering,Beijing University of Technology,Beijing 100124,China; 2.Engineering Research Center of Digital Community,Ministry of Education,Beijing 100124,China; 3.Beijing Laboratory for Urban Mass Transit,Beijing 100124,China; 4.Capinfo Company Ltd,Beijing 100029,China
Abstract: Due to the increasing of access devices and application businesses of Internet of Things(IoT), IoT application development needs to coordinate between businesses and devices. Aiming to this problems, this paper proposes an architecture about Service-Oriented model, and through Web service model prompts the message pipeline processes of IoT access devices information operation. On this basis, the problems of heterogeneity can be solved via basis access information dealing process. Based on Intel CISC embedded development environment, an IoT access system is designed and implemented on multiple programming languages. Through the actual test, the system can accomplish the business function of the direct manage and control from application layer to sensing layer.
Key words : service-oriented;message pipeline;heterogeneous processing

    

0 引言

    多元感知設(shè)備隨傳感器技術(shù)的發(fā)展逐漸推動(dòng)物聯(lián)網(wǎng)(Internet of Things,IoT)產(chǎn)業(yè)的發(fā)展,并已正式被列為國(guó)家五大新興戰(zhàn)略產(chǎn)業(yè)之一。物聯(lián)網(wǎng)是嵌入式系統(tǒng)、網(wǎng)絡(luò)和控制系統(tǒng)的集成,由計(jì)算系統(tǒng)和執(zhí)行器的嵌入式系統(tǒng)等異構(gòu)系統(tǒng)組成。隨著非標(biāo)準(zhǔn)化感知設(shè)備在物聯(lián)網(wǎng)應(yīng)用中的大規(guī)模接入,多元通信協(xié)議、異構(gòu)設(shè)備信息、復(fù)雜節(jié)點(diǎn)管理等異構(gòu)問(wèn)題成為物聯(lián)網(wǎng)應(yīng)用中的挑戰(zhàn),應(yīng)用開發(fā)者不僅需要關(guān)注用戶的需求業(yè)務(wù),也需要以模型化方式處理底層的基礎(chǔ)化數(shù)據(jù)[1-2]。國(guó)內(nèi)外對(duì)這種碎片化異構(gòu)接入問(wèn)題的研究主要側(cè)重于針對(duì)具體的物聯(lián)網(wǎng)相關(guān)技術(shù)來(lái)進(jìn)行底層數(shù)據(jù)采集與融合,如采用中間件技術(shù)利用融合器消除針對(duì)ZigBee和RFID的異構(gòu)接入問(wèn)題[3]。但是目前針對(duì)平臺(tái)化業(yè)務(wù)擴(kuò)展以及融合互聯(lián)網(wǎng)業(yè)務(wù)的物聯(lián)接入系統(tǒng)的相關(guān)研究較少,也沒(méi)有統(tǒng)一的碎片化異構(gòu)處理模型。本文提出一種基于Web服務(wù)的物聯(lián)接入系統(tǒng)的設(shè)計(jì)模式,該系統(tǒng)在物聯(lián)網(wǎng)技術(shù)的客戶端服務(wù)器(Client/Server,C/S)架構(gòu)的基礎(chǔ)上,將單一化基礎(chǔ)操作業(yè)務(wù)進(jìn)行面向服務(wù)架構(gòu)(Service-Oriented Architecture,SOA)建模,再利用Web技術(shù)進(jìn)行模型化服務(wù)的實(shí)現(xiàn)。整個(gè)系統(tǒng)封裝整套感知設(shè)備物聯(lián)接入流程與基礎(chǔ)數(shù)據(jù)處理,實(shí)現(xiàn)應(yīng)用業(yè)務(wù)與感知設(shè)備之間的無(wú)縫交互。

1 物聯(lián)接入系統(tǒng)模型

    物聯(lián)網(wǎng)系統(tǒng)為三層架構(gòu),包括感知層、網(wǎng)絡(luò)層和應(yīng)用層[4],本文基于Intel ATOM處理器和Fedora操作系統(tǒng),以SOA模式,將程序運(yùn)行流程建模為若干接入服務(wù)模型。物聯(lián)接入系統(tǒng)將上下位機(jī)封裝在同一系統(tǒng)內(nèi)部,將三層架構(gòu)業(yè)務(wù)貫通,通過(guò)USB、RS485等硬件接口及其協(xié)議直接獲取感知層的物理實(shí)體數(shù)據(jù),通過(guò)核心處理模塊完成碎片化異構(gòu)數(shù)據(jù)的解析,通過(guò)Web應(yīng)用接口聯(lián)通具體信息化業(yè)務(wù)。

1.1 面向服務(wù)模型

    傳統(tǒng)物聯(lián)網(wǎng)的接入系統(tǒng)針對(duì)單一業(yè)務(wù)的一種或一類設(shè)備進(jìn)行針對(duì)性較強(qiáng)的閉環(huán)控制,底層控制業(yè)務(wù)細(xì)節(jié)描述較多,耦合度較高,不利于擴(kuò)展應(yīng)用。SOA架構(gòu)的引入可以將程序流程抽象為服務(wù)模型,并實(shí)現(xiàn)物聯(lián)網(wǎng)業(yè)務(wù)松耦合,將具體的閉環(huán)控制流程轉(zhuǎn)換為粗粒度服務(wù)邏輯,便于服務(wù)模型以組件形式進(jìn)行代碼實(shí)現(xiàn)與部署[5]。引入SOA的物聯(lián)接入系統(tǒng)模型如圖1所示,模型擴(kuò)寬單一業(yè)務(wù)的閉環(huán)控制系統(tǒng)為一種直接基于Web端服務(wù)配置的接入設(shè)備管控平臺(tái),在實(shí)際物聯(lián)接入系統(tǒng)中將通過(guò)HTTP協(xié)議請(qǐng)求的人機(jī)交互界面稱為上位機(jī),并作為服務(wù)提供者;將通過(guò)操控線程實(shí)際管理接入設(shè)備的接入控制器稱為下位機(jī),并作為服務(wù)消費(fèi)者。二者之間的交互業(yè)務(wù)為封裝在消息管道中的一系列服務(wù),該服務(wù)通過(guò)服務(wù)代理進(jìn)行規(guī)約,來(lái)面向不同的基礎(chǔ)操作。服務(wù)代理以文本和數(shù)據(jù)表的形式存儲(chǔ)在數(shù)據(jù)庫(kù)服務(wù)器中,通過(guò)此種文件類協(xié)議對(duì)服務(wù)進(jìn)行分發(fā)和約束。在服務(wù)提供者、服務(wù)消費(fèi)者和服務(wù)代理之間的SOA模型構(gòu)建完成后,上位機(jī)可直接通過(guò)訂閱發(fā)布模式,統(tǒng)一下發(fā)需求指令,消息管道中的各類服務(wù)在協(xié)同完成操控接入設(shè)備任務(wù)后,將所需返回的統(tǒng)一化數(shù)據(jù)進(jìn)行反饋,完成這個(gè)接入基礎(chǔ)化操作流程。接入設(shè)備的碎片化異構(gòu)問(wèn)題通過(guò)各類服務(wù)按照代理規(guī)約的處理協(xié)議進(jìn)行消除。

qrs6-t1.gif

1.2 硬件結(jié)構(gòu)模型

    物聯(lián)接入系統(tǒng)核心處理模塊采用Intel公司ATOM芯片作為核心處理器(CPU),1 GB同步隨機(jī)存儲(chǔ)器(DDR SDRAM),8 GB固態(tài)硬盤(SSD);外圍設(shè)備提供串行數(shù)據(jù)收發(fā)的USB接口,支持界面開發(fā)調(diào)試的VGA接口;網(wǎng)絡(luò)設(shè)備內(nèi)置網(wǎng)卡,并提供WLAN模塊和Ethernet以太網(wǎng)口。CPU采用雙發(fā)射復(fù)雜指令集(CISC),可處理規(guī)模較為龐大的工程。系統(tǒng)移植Fedora Linux操作系統(tǒng),該操作系統(tǒng)安全性能高,目錄結(jié)構(gòu)精簡(jiǎn),并且適合多平臺(tái)開發(fā)操作。系統(tǒng)硬件結(jié)構(gòu)模型如圖2所示。控制臺(tái)、中央處理單元以及RS485總線接口和USB接口均集成在以ATOM中央處理單元為核心的植入Fedora操作系統(tǒng)的嵌入式控制設(shè)備上。控制臺(tái)與中央處理單元雖然在同一硬件系統(tǒng)之中,但是中央處理單元偏重于描述嵌入式系統(tǒng)對(duì)基礎(chǔ)信號(hào)與數(shù)據(jù)的基于CISC的運(yùn)算處理,而控制臺(tái)側(cè)重于描述在可視化界面下通過(guò)瀏覽器的人機(jī)交互接口以及SOA模型關(guān)于服務(wù)在消息管道中的交互流程。由于Web服務(wù)可擴(kuò)展性良好,因此可以通過(guò)HTTP協(xié)議從遠(yuǎn)程PC端或其他嵌入式終端對(duì)本系統(tǒng)進(jìn)行訪問(wèn)。對(duì)于底層感知設(shè)備,支持RS485的總線型感知設(shè)備直接與RS485總線接口相連接,根據(jù)RS485通信幀格式進(jìn)行交互;支持ZigBee協(xié)議的感知設(shè)備可與ZigBee終端進(jìn)行綁定,若干ZigBee終端借由通過(guò)協(xié)議棧構(gòu)建的自組網(wǎng)絡(luò)將無(wú)線感知設(shè)備的數(shù)據(jù)統(tǒng)一匯總到ZigBee協(xié)調(diào)器,并通過(guò)協(xié)調(diào)器的USB接口傳輸?shù)奖鞠到y(tǒng)。

qrs6-t2.gif

2 物聯(lián)接入系統(tǒng)設(shè)計(jì)

    根據(jù)Web服務(wù)的物聯(lián)接入系統(tǒng)模型,分別設(shè)計(jì)SOA模型與系統(tǒng)上位機(jī)、下位機(jī)及其交互過(guò)程的結(jié)構(gòu)流程。設(shè)計(jì)基于RS485和ZigBee協(xié)議的接入流程,完成整體系統(tǒng)的軟硬件對(duì)接工作。

2.1 SOA模型的組件設(shè)計(jì)

    如圖3所示,Web服務(wù)根據(jù)具體應(yīng)用需求抽象為消息形式,通過(guò)統(tǒng)一化發(fā)布模式在SOA模型組件中下發(fā),持久化在數(shù)據(jù)庫(kù)內(nèi)的配置數(shù)據(jù)以交互協(xié)議的身份對(duì)下發(fā)的消息進(jìn)行規(guī)約,規(guī)約過(guò)程通過(guò)修改原始信息幀格式以及添加狀態(tài)碼等方式,將統(tǒng)一的消息分割為相互獨(dú)立的服務(wù),實(shí)現(xiàn)業(yè)務(wù)解耦過(guò)程。獨(dú)立服務(wù)中嵌入執(zhí)行器描述性指令,在下發(fā)指令時(shí)向線程池申請(qǐng)線程,并通過(guò)多線程并發(fā)方式將指令信息以各種執(zhí)行器的執(zhí)行模式下發(fā)到控制器。控制器直接與感知層物聯(lián)接口相連,可將各執(zhí)行過(guò)程中的數(shù)據(jù)以串行輸出的形式寫入到實(shí)際設(shè)備中,完成對(duì)應(yīng)用的實(shí)際設(shè)備的管理。設(shè)備的接入與數(shù)據(jù)回饋過(guò)程與之流程相反,因而通過(guò)SOA模型組件可以實(shí)現(xiàn)具體應(yīng)用于實(shí)際設(shè)備接入管理過(guò)程中的數(shù)據(jù)透?jìng)鳌?/p>

qrs6-t3.gif

2.2 系統(tǒng)軟件設(shè)計(jì)

    根據(jù)物聯(lián)接入系統(tǒng)模型的劃分,按照上位機(jī)、下位機(jī)和消息管道分別進(jìn)行軟件設(shè)計(jì)。

2.2.1 上位機(jī)軟件設(shè)計(jì)

    上位機(jī)采用Java語(yǔ)言進(jìn)行設(shè)計(jì),結(jié)合J2EE框架實(shí)現(xiàn)Web服務(wù)管理前后臺(tái),通過(guò)Tomcat輕量級(jí)服務(wù)器發(fā)布,可通過(guò)瀏覽器直接訪問(wèn)。上位機(jī)軟件流程如圖4所示,主要實(shí)現(xiàn)Web服務(wù)的動(dòng)態(tài)配置以及接入管理數(shù)據(jù)的消息流形式下發(fā),其間不僅要監(jiān)聽本地的配置響應(yīng),還偵聽遠(yuǎn)程訪問(wèn)中的基于HTTP協(xié)議的請(qǐng)求數(shù)據(jù)流。此外,上位機(jī)也實(shí)時(shí)接收下位機(jī)上傳的物聯(lián)接入數(shù)據(jù),實(shí)現(xiàn)更上層的具體應(yīng)用的業(yè)務(wù)邏輯支持及可視化數(shù)據(jù)展示等功能。

qrs6-t4.gif

2.2.2 下位機(jī)軟件設(shè)計(jì)

    下位機(jī)采用C++語(yǔ)言進(jìn)行設(shè)計(jì),通過(guò)Linux操作系統(tǒng)下的多線程庫(kù)pthread進(jìn)行類庫(kù)支持,通過(guò)GCC標(biāo)準(zhǔn)編譯器進(jìn)行源碼編譯,最后通過(guò)與附加文件的連接,直接在嵌入式系統(tǒng)中生成可執(zhí)行文件。下位機(jī)軟件流程如圖5所示,主要通過(guò)偵聽消息通道獲取上位機(jī)下發(fā)的操作流消息。如表1所示,根據(jù)配置數(shù)據(jù)庫(kù)約定的協(xié)議規(guī)則解析拆分消息為控制字?jǐn)?shù)據(jù),標(biāo)定服務(wù)類型的數(shù)據(jù)直接持久化在ROM中,并掃描存儲(chǔ)注冊(cè)設(shè)備的文件信息,如存在合法接入的設(shè)備,則將控制字中實(shí)際用于操作設(shè)備的字節(jié)進(jìn)行分發(fā)。

qrs6-t5.gif

qrs6-b1.gif

2.2.3 消息管道軟件設(shè)計(jì)

    消息管道遵循管道過(guò)濾器設(shè)計(jì)模式[6],以松耦合框架技術(shù),融合消息過(guò)濾機(jī)制實(shí)現(xiàn)。消息管道將數(shù)據(jù)以過(guò)濾器鏈形式上傳下發(fā)。消息管道如圖6所示,將程序初始化完畢即與上位機(jī)對(duì)接并輪詢掃描配置文件中的系統(tǒng)內(nèi)通信協(xié)議,并據(jù)此以規(guī)則分配服務(wù),該分配過(guò)程通過(guò)框架維護(hù)的獨(dú)立代碼類實(shí)現(xiàn)。服務(wù)過(guò)濾器以組件形式集成于框架之中,并與相關(guān)代碼類動(dòng)態(tài)組合,按不同服務(wù)封裝為不同執(zhí)行的描述信息。過(guò)濾器采用多層結(jié)構(gòu),分別負(fù)責(zé)數(shù)據(jù)編解碼、數(shù)據(jù)讀寫、數(shù)據(jù)安全認(rèn)證、數(shù)據(jù)套接字傳輸。通過(guò)過(guò)濾器鏈的服務(wù)各自排隊(duì)申請(qǐng)線程池中的資源,得到資源的服務(wù)即刻向下觸發(fā)服務(wù),該過(guò)程通過(guò)多線程調(diào)度,可并發(fā)執(zhí)行。

qrs6-t6.gif

2.3 系統(tǒng)實(shí)現(xiàn)

    根據(jù)基于Web服務(wù)的SOA模型以及物聯(lián)接入系統(tǒng)的設(shè)計(jì)流程,在嵌入式環(huán)境下的操作系統(tǒng)中,利用Java Web技術(shù)實(shí)現(xiàn)上位機(jī)與消息管道功能,利用C++與多線程技術(shù)實(shí)現(xiàn)下位機(jī)功能。系統(tǒng)對(duì)接完畢后,感知層實(shí)際設(shè)備接入部分,分別利用Z-Stack協(xié)議棧實(shí)現(xiàn)ZigBee星型自組網(wǎng),利用ModBus協(xié)議下的差分信號(hào)開關(guān)端子實(shí)現(xiàn)RS485接口。通過(guò)硬件接口利用無(wú)線和有線方式收集各類感知設(shè)備的接入信息。實(shí)測(cè)表明,本系統(tǒng)可正確實(shí)現(xiàn)從Web界面到感知設(shè)備之間所有管控操作流程,將感知層、網(wǎng)絡(luò)層、應(yīng)用層之間的基礎(chǔ)性操作以服務(wù)方式有效封裝。

3 結(jié)論

    本文提出了一種基于Web服務(wù)的SOA模型,并將該模型的建模思想利用嵌入式編程和Web編程技術(shù)通過(guò)松耦合類模式實(shí)現(xiàn),各服務(wù)間通過(guò)軟件接口進(jìn)行動(dòng)態(tài)對(duì)接。用戶可根據(jù)具體應(yīng)用需求在Web端進(jìn)行服務(wù)流程以及系統(tǒng)內(nèi)通信協(xié)議的配置,之后利用系統(tǒng)的處理流程直接按需操控感知層的接入設(shè)備并觸發(fā)具體的需求,對(duì)基礎(chǔ)接入流程中的各類碎片化信息異構(gòu)進(jìn)行了有效消除。本系統(tǒng)實(shí)現(xiàn)用戶-業(yè)務(wù)-實(shí)體之間的三元域交互,在物聯(lián)網(wǎng)應(yīng)用場(chǎng)景下有一定的通用性和擴(kuò)展性。

參考文獻(xiàn)

[1] Wen Yingyou,Li Zhi.A service-integrated sensor network middleware applied to industrial solutions of IoT related[J].Telecommunication Systems,2013,53(1):61-68.

[2] 沈蘇彬,范曲立,宗平,等.物聯(lián)網(wǎng)的體系結(jié)構(gòu)與相關(guān)技術(shù)研究[J].南京郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2009,29(6):1-11.

[3] 李杰.物聯(lián)網(wǎng)中無(wú)線傳感器節(jié)點(diǎn)和RFID數(shù)據(jù)融合的方法[J].電子設(shè)計(jì)工程,2011,19(7):103-106.

[4] Fan Chunxiao,Wen Zhigang,Wang Fan,et al.A middleware of Internet of Things(IoT) based on ZigBee and RFID[C].IET International Conference on Communication Technology and Application,ICCTA,2011:605-609.

[5] Li Peng,Dong Junping,Wen Junhao,et al.A SOA-based servcie discovery framework in Internet of Things[J].Journal of Convergence Information Technology,2011,6(9):310-315.

[6] 邵華鋼,程勁,王輝,等.面向物聯(lián)網(wǎng)的系統(tǒng)及其中間件設(shè)計(jì)[J].計(jì)算機(jī)工程,2010,36(17):84-86.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 一级黄色大片免费看 | 黄色不良视频 | 免费观看一级成人毛片 | 国产精品天天在线 | 国产精品视频一区二区三区经 | 日日射夜夜 | 久久久久免费精品国产 | 成人黄色免费 | 国产你懂的在线观看 | 污视频网址 | 亚洲三级免费 | 成年人网站在线免费观看 | 欧美黑人巨大硬xxx猛性 | 黄黄视频在线观看 | 怡红院免费全部视频在线 | 久久成人亚洲 | 精品一区二区三区中文字幕 | 超级色的网站观看在线 | 国产免费一区二区三区在线观看 | 看黄网站在线观看 | 精品国产乱码一区二区三区 | 最近最新免费中文字幕一 | 91四虎国自产在线播放线 | 中文字幕福利 | 国产综合成色在线视频 | 中文字幕丝袜诱惑 | 天天爱天天色天天干 | 高清不卡日本v在线二区 | 午夜剧场直接免费观看 | 噜噜噜噜精品视频在线观看 | 三级在线免费 | 欧美日韩91 | 120秒男女动态视频免费 | 免费在线观看成人 | 一级一级一片免费 | 97天天摸天天碰天天爽 | 韩国成人影院 | 久久国产高清波多野结衣 | 大杳蕉伊人狼人久久一本线 | 国产亚洲精品线观看77 | 亚洲第一在线播放 |