周賀松
摘 要:隨著物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,越來越多的行業(yè)開始引入物聯(lián)網(wǎng)技術(shù),以提高行業(yè)的智能化、自動(dòng)化水平。按照物聯(lián)網(wǎng)典型的三層結(jié)構(gòu)(感知層、網(wǎng)絡(luò)層、應(yīng)用層)搭建一套完整的物聯(lián)網(wǎng)系統(tǒng)需耗費(fèi)較大的人力、物力成本。針對物聯(lián)網(wǎng)系統(tǒng)開發(fā)門檻高、研制周期長的現(xiàn)象,設(shè)計(jì)了一種包含采集終端、云服務(wù)器、Web應(yīng)用的多功能物聯(lián)網(wǎng)采集系統(tǒng)。該系統(tǒng)具備應(yīng)用范圍廣、開發(fā)周期短、占用人員少、便于移植等優(yōu)勢,目前已在智慧農(nóng)業(yè)、智能電力、新能源電池監(jiān)測等領(lǐng)域得到了一系列應(yīng)用,取得了較好的經(jīng)濟(jì)效益和示范效應(yīng)。
關(guān)鍵詞:物聯(lián)網(wǎng)技術(shù);采集系統(tǒng);采集終端;云服務(wù)器;Web應(yīng)用;智慧農(nóng)業(yè);智能電力;新能源電池監(jiān)測
中圖分類號(hào):TP39文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-1302(2020)05-00-03
0 引 言
多功能采集系統(tǒng)示意圖如圖1所示。采集終端通過
RS 485或者I/O接口收集到傳感器數(shù)據(jù)后,按照TCP協(xié)議把數(shù)據(jù)發(fā)送到云服務(wù)器;云服務(wù)器接收到數(shù)據(jù)后,按照特有的格式進(jìn)行數(shù)據(jù)存儲(chǔ);Web應(yīng)用響應(yīng)用戶操作,通過HTTP協(xié)議從云服務(wù)器獲取數(shù)據(jù)并在網(wǎng)頁或者微信公眾號(hào)顯示。
1 采集終端
采集終端可以選擇太陽能或220 V市電。太陽能供電方式適用于室外監(jiān)測場所,220 V供電方式適用于室內(nèi)有市電的場合。如圖2所示,按照電路功能可以把采集終端分為電源電路、數(shù)據(jù)采集電路、數(shù)據(jù)處理和存儲(chǔ)電路、數(shù)據(jù)傳輸電路[1-3]。
1.1 電源電路
圖3所示為電源輸入電路,該電源是整個(gè)采集終端的供電電源入口。若采用太陽能供電,J4處接太陽能板(輸出電壓為5 V、功率為3 W),J1處接3.7 V的18650鋰電池,鋰電池充電管理芯片采用TP4056;若采用220 V市電供電,則需要通過專用的AC/DC模塊把220 V市電轉(zhuǎn)為5 V后再接到J1處。
圖4所示為MCU供電電路,該電路用于把3.1~5 V的輸入電壓轉(zhuǎn)換成MCU所需的3 V電壓。此處采用低功耗、低噪聲、低壓降、小封裝的SGM2019-3.0YN5G/TR芯片。
圖5所示為傳感器供電電路,用于把輸入電壓升壓至傳感器所需的供電電壓,升壓芯片為XL6019。為降低功耗,XL6019由MCU開啟,在不需要給傳感器供電時(shí)關(guān)閉。該電路提供5 V,14 V兩種輸出模式,可以通過在R45,R46處焊接對應(yīng)的0 Ω電阻。
圖6所示為通信模組供電電路,用于提供無線通信模組所需的電源,穩(wěn)壓芯片為SPX29302,該電路可以根據(jù)不同的通信模組選擇不同的輸入電壓,同樣該芯片由MCU進(jìn)行控制以降低功耗[4-6]。
1.2 數(shù)據(jù)采集電路
本采集終端可以采集模擬量(電壓、電流)和數(shù)字量
(RS 485接口、TTL接口)。模擬量采集采用STM32F103C8T6內(nèi)部的12位A/D,可以選擇電壓或者電流兩種采集模式。數(shù)字量采集提供TTL串口和RS 485接口兩種方式,如圖7所示。
1.3 數(shù)據(jù)處理及存儲(chǔ)電路
如圖8所示,采集終端的核心處理器為STM32F103C8T6,提供了RTC精準(zhǔn)時(shí)鐘(可通過服務(wù)器遠(yuǎn)程校時(shí));數(shù)據(jù)存儲(chǔ)芯片為8 MB的W25Q64;RTC時(shí)鐘由紐扣電池和板載電源無縫隙切換供電,保證RTC時(shí)鐘的可靠性和長時(shí)間工作能力;存儲(chǔ)器的電源由MCU控制,在不需要數(shù)據(jù)存儲(chǔ)時(shí)可以關(guān)閉存儲(chǔ)單元的電源;為避免出現(xiàn)死機(jī)現(xiàn)象,啟用STM32的內(nèi)部看門狗,保證采集終端不死機(jī)。
按照工作模式,可以分為實(shí)時(shí)模式和定時(shí)模式。在實(shí)時(shí)模式下,可以每秒鐘采集1次數(shù)據(jù),在電腦端顯示。在定時(shí)模式下,可以設(shè)置2~720 min采集一次數(shù)據(jù),數(shù)據(jù)采集完畢后,把數(shù)據(jù)傳輸?shù)竭h(yuǎn)程服務(wù)器。
1.4 數(shù)據(jù)傳輸電路
采集終端可根據(jù)信號(hào)覆蓋情況,選擇GPRS,LTE,WiFi三種通信方式進(jìn)行數(shù)據(jù)遠(yuǎn)程傳輸。為便于升級(jí)和維護(hù),此處只為通信模塊提供電源和TTL通信接口。
WiFi轉(zhuǎn)接板型號(hào)為ATK-ESP8266,GPRS轉(zhuǎn)接板型號(hào)為SIM800L,LTE轉(zhuǎn)接板型號(hào)為SIM7600CE。單片機(jī)通過AT指令集和通信轉(zhuǎn)接板進(jìn)行通信。
2 云服務(wù)器
云服務(wù)器不僅需要處理來自Web端的HTTP請求,而且需要處理來自采集終端的TCP請求。本系統(tǒng)的云服務(wù)器部署在阿里云的ECS云服務(wù)器,以Spring MVC + Hibernate持久層+UI快速開發(fā)庫為基礎(chǔ)框架,采用面向聲明的開發(fā)模式,基于泛型方式編寫極少代碼即可實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)展示、數(shù)據(jù)編輯、表單處理等功能。如圖1所示,云服務(wù)器包含數(shù)據(jù)采集服務(wù)器、數(shù)據(jù)服務(wù)器、Web服務(wù)器。
2.1 數(shù)據(jù)采集服務(wù)器
數(shù)據(jù)采集服務(wù)器通過TCP協(xié)議從采集終端獲取數(shù)據(jù),通過系統(tǒng)內(nèi)部的加密處理算法,將物理數(shù)據(jù)解析成通用的普遍數(shù)據(jù),由數(shù)據(jù)服務(wù)器存儲(chǔ)。
數(shù)據(jù)解析架構(gòu)基于開源框架JEECG修改,能實(shí)現(xiàn)代碼自動(dòng)生成和手工合成半智能開發(fā)模式,可以提高開發(fā)效率。
2.2 數(shù)據(jù)服務(wù)器
數(shù)據(jù)服務(wù)器對來自采集服務(wù)器的數(shù)據(jù)進(jìn)行加工處理,并把處理后的數(shù)據(jù)保存到MySQL數(shù)據(jù)庫中。數(shù)據(jù)服務(wù)器主要完成數(shù)據(jù)預(yù)處理、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)查詢等功能。
(1)數(shù)據(jù)預(yù)處理:對接收的數(shù)據(jù)進(jìn)行格式化處理,使得數(shù)據(jù)能保存到數(shù)據(jù)庫中;
(2)數(shù)據(jù)存儲(chǔ):根據(jù)預(yù)處理后的數(shù)據(jù)屬性,把數(shù)據(jù)保存到不同的數(shù)據(jù)庫表中;
(3)數(shù)據(jù)查詢:進(jìn)行數(shù)據(jù)庫數(shù)據(jù)查詢,并把查詢結(jié)果返回給Web服務(wù)器。
2.3 Web服務(wù)器
Web服務(wù)器為終端用戶提供Web訪問服務(wù),搭建Web應(yīng)用與數(shù)據(jù)庫服務(wù)器和數(shù)據(jù)采集服務(wù)器的信息交換橋梁。主要實(shí)現(xiàn)數(shù)據(jù)查詢轉(zhuǎn)發(fā)和指令轉(zhuǎn)發(fā)等功能。
(1)數(shù)據(jù)查詢轉(zhuǎn)發(fā):響應(yīng)用戶在Web端的操作,對數(shù)據(jù)服務(wù)器進(jìn)行數(shù)據(jù)查詢;
(2)命令轉(zhuǎn)發(fā):響應(yīng)用戶在Web端的操作,通過數(shù)據(jù)采集服務(wù)器把相應(yīng)指令下發(fā)到采集終端。
3 Web應(yīng)用
Web應(yīng)用用于數(shù)據(jù)的顯示和報(bào)表繪制??紤]到平臺(tái)兼容性,本系統(tǒng)選用微信公眾號(hào)的方式。開發(fā)時(shí)選用響應(yīng)式框架,組件間的通信為異步通信,可有效保證用戶操作的流暢性;采用開源的流行工具,保證代碼的可控性和健壯性。按照功能可以細(xì)分為三個(gè)單元。
(1)通信單元:該單元的主要功能是與服務(wù)器進(jìn)行雙向通信,將本地請求上傳至云服務(wù)器,接收云服務(wù)器的回執(zhí)并將該回執(zhí)發(fā)送給數(shù)據(jù)處理單元;
(2)數(shù)據(jù)處理單元:將本地產(chǎn)生的數(shù)據(jù)或服務(wù)器產(chǎn)生的數(shù)據(jù)加工整理后,轉(zhuǎn)交給前端單元或通信單元;
(3)前端單元:處理用戶輸入,發(fā)送給數(shù)據(jù)處理單元,接收數(shù)據(jù)處理單元發(fā)回的數(shù)據(jù),更改展示狀態(tài)。
圖9~圖11分別為該系統(tǒng)在智慧農(nóng)業(yè)、智能電力、新能源等領(lǐng)域的應(yīng)用界面。
4 結(jié) 語
本文基于物聯(lián)網(wǎng)技術(shù)設(shè)計(jì)的多功能采集系統(tǒng),為農(nóng)業(yè)、電力等傳統(tǒng)行業(yè)插上了信息化和智能化的翅膀,為新能源等新興產(chǎn)業(yè)提供了一種遠(yuǎn)程監(jiān)控手段。
參考文獻(xiàn)
[1]董明明,孫萬蓉,陳梓馥,等.基于RTU油井遠(yuǎn)程測控系統(tǒng)的數(shù)據(jù)采集與傳輸層軟件設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2012,2(2):25-29.
[2]陳梓馥,孫萬蓉,董明明,等.基于ARM9的RTU設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2012,2(3):54-58.
[3]孟萌.基于Arduino的物聯(lián)網(wǎng)數(shù)據(jù)采集器設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京工業(yè)大學(xué),2016.
[4]楊永平.基于GPRS的嵌入式數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[D].大連:大連理工大學(xué),2007.
[5]曾偉淵.基于 Web Service 的物聯(lián)網(wǎng)數(shù)據(jù)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2015(20):193-194.
[6]許吉祥.基于物聯(lián)網(wǎng)的數(shù)據(jù)采集系統(tǒng)軟件設(shè)計(jì)[D].成都:電子科技大學(xué),2013.
[7]石躍祥,鐘喆,李錦泓.一種新型智能水表抄表系統(tǒng)[J].物聯(lián)網(wǎng)技術(shù),2014,4(6):16-18.
[8]黃穎,張偉.基于物聯(lián)網(wǎng)的智慧農(nóng)業(yè)監(jiān)控系統(tǒng)[J].物聯(lián)網(wǎng)技術(shù),2017,7(4):33-34.
[9]吳曉強(qiáng),張春友,侍紅巖.情景感知在農(nóng)業(yè)物聯(lián)網(wǎng)中的應(yīng)用研究
[J].物聯(lián)網(wǎng)技術(shù),2019,9(1):34-36.
[10]張玉杰,王軒.微服務(wù)架構(gòu)的城市照明控制系統(tǒng)服務(wù)平臺(tái)設(shè)計(jì)
[J].物聯(lián)網(wǎng)技術(shù),2019,9(1):48-51.