王曉玲,樊文超
(滄州師范學(xué)院計(jì)算機(jī)科學(xué)與工程學(xué)院,河北滄州061001)
基于物聯(lián)網(wǎng)設(shè)計(jì)的地?zé)峋O(jiān)測(cè)系統(tǒng)
王曉玲,樊文超
(滄州師范學(xué)院計(jì)算機(jī)科學(xué)與工程學(xué)院,河北滄州061001)
基于物聯(lián)網(wǎng)設(shè)計(jì)的地?zé)峋O(jiān)測(cè)系統(tǒng),選擇物聯(lián)網(wǎng)傳感器對(duì)地?zé)峋?、流量等?shù)據(jù)進(jìn)行監(jiān)測(cè),通過(guò)GPRS技術(shù)基于透明傳輸把采集數(shù)據(jù)傳輸?shù)竭h(yuǎn)程服務(wù)器;服務(wù)器采用Socket技術(shù)異步通信方式進(jìn)行數(shù)據(jù)接收,實(shí)現(xiàn)對(duì)地?zé)峋膶?shí)時(shí)監(jiān)測(cè).該系統(tǒng)具有較好的實(shí)時(shí)監(jiān)測(cè)能力,對(duì)地?zé)峋畔⒌膫鬏敽妥R(shí)別性能較好,具有較高的應(yīng)用性,實(shí)現(xiàn)了對(duì)地?zé)峋\(yùn)行的實(shí)時(shí)遠(yuǎn)程監(jiān)測(cè),提高了地?zé)豳Y源的利用率,保證了地?zé)峋\(yùn)行的穩(wěn)定性、可靠性.
物聯(lián)網(wǎng);GPRS;Socket;透明傳輸
地?zé)崾且环N清潔能源,在當(dāng)前能源緊張、環(huán)境問(wèn)題日益受到重視的情況下,加強(qiáng)地?zé)豳Y源的利用具有極其重要的意義.滄州市擁有豐富的中低溫地?zé)豳Y源,開(kāi)采地?zé)峋?38眼,其中開(kāi)采利用的地?zé)峋?99眼,主要用于供暖、洗浴、種植、養(yǎng)殖,已經(jīng)取得了良好的經(jīng)濟(jì)、社會(huì)和環(huán)境效益.但長(zhǎng)期以來(lái)地?zé)峋杉責(zé)豳Y源上自成體系、獨(dú)立運(yùn)行,形成了一座座信息孤島.由于完全依賴人工、信息傳遞不及時(shí),經(jīng)常造成各種運(yùn)行和維護(hù)方面的故障.地?zé)峋h(yuǎn)程監(jiān)測(cè)無(wú)疑是解決地?zé)豳Y源高效、安全使用的重要基礎(chǔ)手段.目前地?zé)峋O(jiān)測(cè)技術(shù)正朝著智能化和網(wǎng)絡(luò)化的方向發(fā)展.物聯(lián)網(wǎng)技術(shù)的興起與應(yīng)用,能夠提高地?zé)峋O(jiān)測(cè)的技術(shù)和質(zhì)量.物聯(lián)網(wǎng)既能融入到不同的應(yīng)用實(shí)例中,也能夠針對(duì)某一領(lǐng)域構(gòu)建統(tǒng)一平臺(tái),為不同的應(yīng)用提供接口服務(wù),實(shí)現(xiàn)資源共享.
物聯(lián)網(wǎng)(The Internet of Things,IoT)即“物物相連的互聯(lián)網(wǎng)”[1],隨著它的興起,物聯(lián)網(wǎng)技術(shù)被應(yīng)用在交通、物流、農(nóng)業(yè)等不同領(lǐng)域,但在地?zé)峋O(jiān)測(cè)中的應(yīng)用才剛剛起步.在地?zé)峋O(jiān)測(cè)系統(tǒng)中,用物聯(lián)網(wǎng)中的水溫傳感器、壓力傳感器、水位傳感器等感知節(jié)點(diǎn)采集地?zé)峋疁囟取⑺畨汉退坏葦?shù)據(jù),然后通過(guò)ZigBee傳輸協(xié)議把采集的數(shù)據(jù)傳送到物聯(lián)網(wǎng)網(wǎng)關(guān).物聯(lián)網(wǎng)網(wǎng)關(guān)匯聚采集的數(shù)據(jù),最后通過(guò)使用GPRS網(wǎng)絡(luò)或4G網(wǎng)絡(luò)把數(shù)據(jù)傳送到上位機(jī),進(jìn)而進(jìn)行數(shù)據(jù)統(tǒng)計(jì)與分析.物聯(lián)網(wǎng)地?zé)峋O(jiān)測(cè)系統(tǒng)拓樸圖如圖1所示.
圖1 基于物聯(lián)網(wǎng)的地?zé)峋O(jiān)測(cè)系統(tǒng)拓樸圖
基于物聯(lián)網(wǎng)的地?zé)峋O(jiān)測(cè)系統(tǒng)由于采用ZigBee技術(shù)部署網(wǎng)絡(luò)結(jié)構(gòu),不僅具有DTU遠(yuǎn)程監(jiān)測(cè)方式的優(yōu)點(diǎn),而且將地?zé)峋當(dāng)?shù)據(jù)采集設(shè)備和傳輸設(shè)備合成單個(gè)感知節(jié)點(diǎn),采用無(wú)線通信技術(shù),方便部署和維護(hù),降低了通信成本,但由于物聯(lián)網(wǎng)技術(shù)正處在發(fā)展階段,需要軟件系統(tǒng)的支持,相對(duì)DTU遠(yuǎn)程監(jiān)測(cè)方式整體造價(jià)高[2].
2.1 擴(kuò)展的三層架構(gòu)工廠模型
三層架構(gòu)是一種流行的軟件設(shè)計(jì)架構(gòu),具有高內(nèi)聚、低偶合的優(yōu)點(diǎn),但DAL層具有局限性,靈活度不高,而基于三層架構(gòu)的工廠模型,主要在DAL層增加Ifactory接口,DAL層通過(guò)調(diào)用Ifactory接口來(lái)訪問(wèn)數(shù)據(jù)庫(kù),Ifactory接口如同一個(gè)開(kāi)關(guān),可根據(jù)軟件的配置訪問(wèn)不同數(shù)據(jù)庫(kù),提高了軟件的重用性.
在地?zé)峋O(jiān)測(cè)系統(tǒng)中,除了需要考慮軟件的重用性外,由于現(xiàn)在我國(guó)物聯(lián)網(wǎng)技術(shù)正處在發(fā)展階段,在物聯(lián)網(wǎng)傳輸協(xié)議上還未有統(tǒng)一標(biāo)準(zhǔn),各廠家提供的傳輸協(xié)議和硬件驅(qū)動(dòng)還是各自為戰(zhàn).為此,對(duì)三層架構(gòu)工廠模型進(jìn)行擴(kuò)展,Ifactory層不僅負(fù)責(zé)數(shù)據(jù)庫(kù)的選擇,同時(shí)增加設(shè)備與傳輸協(xié)議的選擇,為不同的設(shè)備和傳輸協(xié)議提供統(tǒng)一接口,在Ifactory內(nèi)部根據(jù)不同品牌、不同型號(hào)的設(shè)備進(jìn)行驅(qū)動(dòng)和協(xié)議選擇,提高軟件的兼容性.擴(kuò)展的三層架構(gòu)工廠模型如圖2所示.
圖2 擴(kuò)展的三層架構(gòu)工廠模型
2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)設(shè)計(jì)是軟件設(shè)計(jì)中的關(guān)鍵部分,屬于底層設(shè)計(jì),其設(shè)計(jì)的好壞將影響到軟件質(zhì)量的優(yōu)劣,同時(shí)對(duì)數(shù)據(jù)庫(kù)的修改將引起整個(gè)軟件從底層到上層每個(gè)層的調(diào)整,修改工作量大,資金浪費(fèi)高.所以數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞是評(píng)價(jià)一個(gè)軟件系統(tǒng)優(yōu)劣的關(guān)鍵指標(biāo).
圖3 部門(mén)ER圖設(shè)計(jì)
基于物聯(lián)網(wǎng)的地?zé)峋O(jiān)測(cè)系統(tǒng)的主要信息有設(shè)備信息、傳輸數(shù)據(jù)信息、部門(mén)信息、用戶角色和用戶權(quán)限,其中部門(mén)信息分國(guó)家、省、市及縣,對(duì)于不同的使用者提出的前期需求存在不一致性,如果是市級(jí),其包括市和縣兩個(gè)級(jí)別,按傳統(tǒng)的設(shè)計(jì)方法可得出市級(jí)和縣級(jí)2個(gè)實(shí)體,如果是國(guó)家級(jí),那么需要設(shè)計(jì)出4個(gè)級(jí)別的實(shí)體.如果按最大需求設(shè)計(jì)實(shí)體數(shù)量,勢(shì)必造成實(shí)體和空間的浪費(fèi).本系統(tǒng)中數(shù)據(jù)設(shè)計(jì)打破傳統(tǒng)ER設(shè)計(jì)方法,采用反范式設(shè)計(jì),對(duì)部門(mén)實(shí)體采用自身連接,增加ParentID屬性,用于指向其父節(jié)點(diǎn),即上級(jí)部門(mén),這樣設(shè)計(jì)的優(yōu)點(diǎn)是可使部門(mén)級(jí)別達(dá)到無(wú)限級(jí),解決實(shí)體個(gè)數(shù)的限制.如圖3所示.
3.1 Socket工作原理
使用GPRS網(wǎng)絡(luò)或4G網(wǎng)絡(luò)與服務(wù)器通信,主要采用Socket套接字方式,基于TCP建立IP地址和端口進(jìn)行會(huì)話,一旦終端與服務(wù)器建立了Socket連接,就可以進(jìn)行可靠的會(huì)話.基于Socket工作原理步聚如下:
(1)服務(wù)器創(chuàng)建Socket,綁定套接字,即IP地址和端口,進(jìn)入偵聽(tīng)(Listen)狀態(tài).
(2)終端創(chuàng)建Socket,并指定服務(wù)器端的IP地址和端口,向服務(wù)器端發(fā)送連接請(qǐng)求(Connect).
圖4 Socket工作原理
(3)服務(wù)器接收請(qǐng)求(Accept),并建立與終端的會(huì)話.
(4)服務(wù)器與終端之間進(jìn)行數(shù)據(jù)傳輸(Receive和Send).
(5)關(guān)閉連接,中斷會(huì)話.
Socket工作原理圖如圖4所示.在Socket通信中分同步通信和異步通信,同步通信是指在操作沒(méi)有完成之前一直處于阻塞狀態(tài),同步通信適用于會(huì)話線程較少的情況,但會(huì)話較多時(shí),整個(gè)系統(tǒng)的性能就會(huì)受到影響;異步通信能在工作尚未完成的時(shí)候繼續(xù)處理其他的工作,創(chuàng)建單獨(dú)的會(huì)話,在單獨(dú)的線程中執(zhí)行,可同時(shí)執(zhí)行多個(gè)會(huì)話.基于物聯(lián)網(wǎng)的地?zé)峋O(jiān)測(cè)系統(tǒng)為提高系統(tǒng)性能,減少數(shù)據(jù)丟包率,采用異步通信方式.
3.2 GRPS透明傳輸數(shù)據(jù)接收算法
GPRS是通用分組無(wú)線業(yè)務(wù)(General Packet Radio Service)的簡(jiǎn)稱,它使得用戶能夠在端到端分組傳送模式下發(fā)送和接收數(shù)據(jù)[3],是遠(yuǎn)程監(jiān)測(cè)系統(tǒng)常用的通信方式,這種方式速度快、靈活性高、費(fèi)用低.
透明傳輸是指用戶不受協(xié)議中任何限制,可隨機(jī)地傳輸任意比特編碼的信息,用戶可以完全不必知道協(xié)議中所規(guī)定的結(jié)束段的比特編碼或者其他的控制字符[4].在GPRS透明通訊指令格式中除去11位手機(jī)號(hào)為ASCII碼,其余所有數(shù)據(jù)為16進(jìn)制,其發(fā)送數(shù)據(jù)步驟如下:
(1)通過(guò)設(shè)備設(shè)置的服務(wù)器IP地址和端口號(hào),建立與遠(yuǎn)程服務(wù)器的連接,進(jìn)行會(huì)話.
(2)發(fā)送帶指令格式的數(shù)據(jù)包,如圖5所示,第1個(gè)字節(jié)為報(bào)頭35,第2個(gè)字節(jié)為控制位,第3-8個(gè)字節(jié)為IMEI,即11位手機(jī)號(hào),然后是數(shù)據(jù)內(nèi)容.
字節(jié) 0 1 2…7 8……
35控制位IMEIData35
圖5 第一次指令格式
(3)如果(2)中一次把所有數(shù)據(jù)發(fā)送完成,結(jié)束本次會(huì)話;否則進(jìn)行第二次不帶指令格式的發(fā)送,本次發(fā)送內(nèi)容全部為數(shù)據(jù),不包含指令、IMEI等信息.
在服務(wù)器端異步接收數(shù)據(jù)步驟如下:
(1)判斷接收數(shù)據(jù)的長(zhǎng)度,大于8個(gè)字節(jié)為有效傳輸,否則為無(wú)效傳輸,忽略本次會(huì)話.
(2)判斷第1、2個(gè)字節(jié)如果為35,則為帶指令格式的數(shù)據(jù)傳輸,如圖6,否則為不帶指令格式的傳輸,轉(zhuǎn)到步驟(5).
圖6 帶指令格式的數(shù)據(jù)
(3)讀取3-8字節(jié)IMEI數(shù)據(jù),未經(jīng)過(guò)處理的數(shù)據(jù)如圖7,轉(zhuǎn)換為ASCII碼,處理后的數(shù)據(jù)如圖8.
圖7 未經(jīng)處理的數(shù)據(jù)
圖8 轉(zhuǎn)換后的數(shù)據(jù)
(4)讀取第9字節(jié)以后的數(shù)據(jù),此為傳輸?shù)臄?shù)據(jù)內(nèi)容,如圖9,然后轉(zhuǎn)到(6).
圖9 不帶指令格式的數(shù)據(jù)
(5)讀取所有字節(jié)內(nèi)容.
(6)結(jié)束本次通信.
本文針對(duì)河北省地礦局第四水文工程地質(zhì)大隊(duì)提出一種基于物聯(lián)網(wǎng)的地?zé)峋O(jiān)測(cè)系統(tǒng)的設(shè)計(jì)方法,改變傳統(tǒng)的人工監(jiān)測(cè)方法,利用物聯(lián)網(wǎng)技術(shù)實(shí)現(xiàn)遠(yuǎn)程監(jiān)測(cè).終端監(jiān)測(cè)采用物聯(lián)網(wǎng)傳感器,通過(guò)Zigbee通信傳輸采集數(shù)據(jù)信息,然后利用GPRS技術(shù)遠(yuǎn)程傳輸?shù)椒?wù)器,在服務(wù)器端基于Socket異步通信和透明傳輸接收數(shù)據(jù),實(shí)現(xiàn)了對(duì)地?zé)峋膶?shí)時(shí)監(jiān)測(cè).采用本文設(shè)計(jì)的系統(tǒng)進(jìn)行地?zé)峋O(jiān)測(cè),具有較好的實(shí)時(shí)監(jiān)測(cè)能力,對(duì)地?zé)峋畔⒌膫鬏敽妥R(shí)別性能較好,具有較高的應(yīng)用性.
[1] Mankar J,Darode C,Trivedi K,etal.REVIEW OF I2C PROTOCOL[J].International Journal,2014,2(1):110-114.
[2] 馬俊.C#網(wǎng)絡(luò)應(yīng)用編程(第2版)[M].北京:人民郵電出版社,2010.
[3] 張洋洋,趙建平,徐娟娟.基于物聯(lián)網(wǎng)技術(shù)的水文監(jiān)測(cè)系統(tǒng)研究[J].通信技術(shù),2012,45(4):108-111.
[4] 謝啟順.水資源監(jiān)測(cè)物聯(lián)網(wǎng)平臺(tái)的設(shè)計(jì)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2014.
[責(zé)任編輯:尤書(shū)才]
Geothermal Well Monitoring System Based on the Design of Internet of Things
WANG Xiao-ling, FAN Wen-chao
(College of Computer Science and Engineering,Cangzhou Normal University, Cangzhou, Hebei 061001, China)
Geothermal well monitoring system based on the design of internet of thingschooses internet sensor to monitor such data as water level and flow rate of geothermal well. With GPRS technology, it transforms data to remote server on the basis of transparent transmission.Server adopts Socket technology Asynchronous Communication Method to
ata, to achieve real-time monitoring of geothermal Wells. This system proves efficient in real-time remote monitoring, owing to itsgood performance in geothermal well information transmission and recognition. With its high applicability, this monitoring system can ensure real-time monitoring, improve the utilization of geothermal resources, and guarantee the stability and reliability of geothermal well running.
Internet of Things; GPRS;Socket;transparent transmission
2017-04-14
王曉玲(1976-),女,河北滄州人,滄州師范學(xué)院計(jì)算機(jī)科學(xué)與工程學(xué)院講師.
TP391.4
A
2095-2910(2017)02-0062-04