亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于NB-IoT的水土保持監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

        2022-03-30 14:02:46羅義凱胡延蘇閆茂德楊盼盼
        關(guān)鍵詞:溫濕度串口水土保持

        羅義凱,胡延蘇,閆茂德,楊盼盼

        (長(zhǎng)安大學(xué) 電子與控制工程學(xué)院,西安 710064)

        0 引言

        近年來(lái),我國(guó)水土流失問(wèn)題非常嚴(yán)重,我國(guó)的國(guó)土面積占據(jù)世界土地總面積的6.8%,但是我國(guó)的水土流失面積卻占了世界的14.2%[1]。我國(guó)的水土流失狀況表現(xiàn)為3個(gè)特點(diǎn):面積大,范圍廣、強(qiáng)度大,侵蝕重、成因復(fù)雜,區(qū)域差異明顯[2]。水土流失的危害大的來(lái)說(shuō)主要有以下兩個(gè)方面:一方面表現(xiàn)在耕地面積被毀壞,水土流失會(huì)導(dǎo)致江河水經(jīng)常干涸,而其旁邊的耕地更是難以載種植物,進(jìn)而喪失農(nóng)業(yè)生產(chǎn)能力,若按照現(xiàn)在的水土流失速度推算,再過(guò)50年中國(guó)將會(huì)有很多河流及耕地喪失殆盡,這不僅會(huì)讓人們失去賴以生存的基礎(chǔ),而且會(huì)威脅國(guó)家糧食安全;另一方面表現(xiàn)在削弱生態(tài)系統(tǒng)功能,因?yàn)樗亮魇Ш蜕鷳B(tài)惡化互為因果,水土流失不僅會(huì)加劇水源污染,還會(huì)導(dǎo)致防風(fēng)固沙能力減弱,加劇沙塵暴等等[3]。

        NB-IoT窄帶物聯(lián)網(wǎng)是萬(wàn)物互聯(lián)網(wǎng)絡(luò)的一個(gè)重要分支[4]。它算是近年來(lái)IoT領(lǐng)域的一個(gè)新興技術(shù),它產(chǎn)生的主要原因在于為了解決傳統(tǒng)的2G/3G/4G(GPRS)網(wǎng)絡(luò)不能滿足物聯(lián)網(wǎng)終端設(shè)備低功耗、低成本的問(wèn)題[5]。它構(gòu)建于蜂窩網(wǎng)絡(luò)、只消耗大約180KHz的帶寬,在使用NB-IoT時(shí),它還有一個(gè)非常方便的功能,它可以將數(shù)據(jù)直接上傳到云端。而且它可以直接部署于GSM網(wǎng)絡(luò)、UMTS網(wǎng)絡(luò)或LTE網(wǎng)絡(luò),可以降低部署成本、實(shí)現(xiàn)平滑升級(jí)[6]。

        方天縱等利用3S技術(shù),以天津市薊縣水土流失監(jiān)測(cè)實(shí)踐為例調(diào)用小流域數(shù)據(jù)進(jìn)行項(xiàng)目規(guī)劃和初步設(shè)計(jì)等,并根據(jù)初設(shè),運(yùn)用計(jì)算機(jī)輔助項(xiàng)目監(jiān)測(cè)和管理[7];文斌等研究了基于組件式GIS的小流域水土保持信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),并且討論了GIS在水土保持中的應(yīng)用、系統(tǒng)功能設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)以及小流域水土保持信息系統(tǒng)的系統(tǒng)架構(gòu)設(shè)計(jì)等[8];以上的研究成果對(duì)提升我國(guó)的水土保持監(jiān)測(cè)信息化水平有著積極的作用,但在實(shí)際應(yīng)用中還存在著諸多問(wèn)題;一方面是有關(guān)數(shù)據(jù)傳輸?shù)膯?wèn)題,傳感器設(shè)備在向后端傳輸?shù)臄?shù)據(jù)多雜冗余,而且經(jīng)常發(fā)生數(shù)據(jù)缺失現(xiàn)象,并未對(duì)數(shù)據(jù)進(jìn)行有效的處理;另一方面產(chǎn)品多集中于物聯(lián)網(wǎng)的物理層與網(wǎng)絡(luò)層層面,對(duì)上端業(yè)務(wù)層的支持不夠,未能與云服務(wù)技術(shù)結(jié)合,數(shù)據(jù)分析計(jì)算能力相對(duì)薄弱,導(dǎo)致產(chǎn)品的市場(chǎng)競(jìng)爭(zhēng)力下降,大大限制了市場(chǎng)拓展空間[9]。蜂窩窄帶物聯(lián)網(wǎng)(NB-IoT,narrow band internet of things)的出現(xiàn),為水土保持智能傳感終端的低功耗、高可靠以及低成本部署提供了有效的解決途徑。鑒于此,本文以水土保持綜合管理系統(tǒng)的智能化、管理可視化為應(yīng)用背景,探索通用NB-IoT終端設(shè)計(jì)和應(yīng)用方法,具體研究?jī)?nèi)容包括:

        1)完成基于NB-IoT的水土保持終端設(shè)計(jì)和應(yīng)用層協(xié)議,實(shí)現(xiàn)不同類型產(chǎn)品的可靠數(shù)據(jù)傳輸和互聯(lián)互通操作;

        2)采用華為云平臺(tái),設(shè)計(jì)水土保持綜合管理系統(tǒng),采用建筑模型(BIM)和地理信息(GIS)相結(jié)合的可視化手段,對(duì)水土保持終端的各項(xiàng)運(yùn)行參數(shù)進(jìn)行實(shí)時(shí)監(jiān)控和多維度顯示[10]。

        1 系統(tǒng)結(jié)構(gòu)及原理

        圖1為基于NB-IoT的水土保持監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)框圖。如圖所示,該監(jiān)測(cè)系統(tǒng)由傳感器節(jié)點(diǎn)、數(shù)據(jù)采集節(jié)點(diǎn)和應(yīng)用服務(wù)器構(gòu)成。

        圖1 系統(tǒng)結(jié)構(gòu)框圖

        1)傳感器節(jié)點(diǎn):傳感器節(jié)點(diǎn)通過(guò)RS485取電,并將數(shù)據(jù)通過(guò)RS485總線,采用SDI-12協(xié)議傳送至數(shù)據(jù)采集節(jié)點(diǎn)[11]。傳感器節(jié)點(diǎn)間彼此獨(dú)立。

        傳感器節(jié)點(diǎn)包含環(huán)境傳感器和GPS傳感器,環(huán)境傳感器根據(jù)需求采集或定期采集環(huán)境參數(shù)(如大氣溫度、大氣濕度、光照量、風(fēng)力、風(fēng)向等)和土體參數(shù)(如土體質(zhì)量、土體滲漏量、土體溫度、水份、電導(dǎo)、水勢(shì)等);GPS傳感器提供每個(gè)傳感器節(jié)點(diǎn)的位置信息,便于后期的產(chǎn)品監(jiān)測(cè)和故障維護(hù)。模塊采用被廣泛使用的標(biāo)準(zhǔn)的NMEA-0183協(xié)議格式,通過(guò)串口與主控模塊進(jìn)行數(shù)據(jù)交換[12]。

        2)數(shù)據(jù)采集節(jié)點(diǎn):如圖2所示,數(shù)據(jù)采集節(jié)點(diǎn)集成有以太網(wǎng)通信模塊,NB-IoT通信模塊和數(shù)據(jù)存儲(chǔ)模塊。同時(shí)它還連接有太陽(yáng)能電池板和充電電池組或與市電直接連接,可以為其它模塊供電。

        圖2 數(shù)據(jù)采集節(jié)點(diǎn)結(jié)構(gòu)框圖

        數(shù)據(jù)采集節(jié)點(diǎn)收集到所有傳感器信息后,添加該監(jiān)測(cè)點(diǎn)的設(shè)備信息,繼而將數(shù)據(jù)二次打包,進(jìn)行傳輸。

        3)應(yīng)用服務(wù)器:數(shù)據(jù)采集節(jié)點(diǎn)采用冗余方法進(jìn)行傳輸:一方面,為保證數(shù)據(jù)的安全性,通過(guò)TCP/IP協(xié)議發(fā)送至本地服務(wù)器[13];同時(shí),通過(guò)NB-IoT模塊發(fā)送至云端服務(wù)器。這樣便可以通過(guò)華為云端物聯(lián)網(wǎng)平臺(tái)時(shí)刻監(jiān)測(cè)到水土的具體信息。同時(shí),華為云端操作界面可以設(shè)置很多的功能,能夠生成數(shù)據(jù)曲線,并且可以生成許多對(duì)比表格,當(dāng)監(jiān)測(cè)的數(shù)據(jù)出現(xiàn)明顯問(wèn)題時(shí),能夠及時(shí)進(jìn)行危險(xiǎn)報(bào)警,同時(shí)它還可以保存歷史數(shù)據(jù),以便以后的分析應(yīng)用。

        2 系統(tǒng)硬件設(shè)計(jì)

        2.1 主控模塊

        主控制器作為系統(tǒng)運(yùn)行的大腦,選型尤其重要。根據(jù)水土保持監(jiān)測(cè)系統(tǒng)的實(shí)際需求以及對(duì)低功耗的要求,在本設(shè)計(jì)中選擇了STM32L431RCT6作為主控制器芯片。

        STM32L4系列屬于超低功耗MCU,它還具有專有的超低漏電流技術(shù)和優(yōu)化設(shè)計(jì),在20~125 ℃內(nèi)具有業(yè)內(nèi)最低的電流波動(dòng),可以保證高溫下極低的功耗,在最底功耗模式并且維持SRAM數(shù)據(jù)的情況下,它實(shí)現(xiàn)了業(yè)內(nèi)最低的170 nA的電流消耗。而且從低功耗模式的喚醒動(dòng)作非??欤词故峭V鼓J较?,喚醒時(shí)間也是低至3.5 s[14]。在確定了主控器的MCU型號(hào)之后,相應(yīng)的開發(fā)平臺(tái)也就確定下來(lái)了,在本設(shè)計(jì)中還是采用了熟悉的Keil MDK-Arm μ Vision5,并使用ST-link對(duì)MCU進(jìn)行燒錄。

        2.2 環(huán)境傳感器模塊

        環(huán)境傳感器測(cè)量一個(gè)區(qū)域范圍內(nèi)的環(huán)境參數(shù)和土體參數(shù),涉及到的傳感器類型和數(shù)量眾多。為方便起見(jiàn),本文僅以最常見(jiàn)的溫濕度傳感器為例說(shuō)明。

        本設(shè)計(jì)選用的是DHT11溫濕度傳感器,它可以對(duì)溫度、濕度信息進(jìn)行復(fù)合檢測(cè)并統(tǒng)一輸出校準(zhǔn)后的數(shù)字信號(hào)。在能耗方面,當(dāng)溫度25 ℃,供電為5 V時(shí),測(cè)量電流在0.5~2.5 mA范圍內(nèi),待機(jī)電流在100~150 μA范圍內(nèi),符合系統(tǒng)低功耗的性能取向,同時(shí)此模塊還具有高可靠性和長(zhǎng)期穩(wěn)定性等優(yōu)勢(shì)。

        除了供電與接地引腳外,DHT11溫濕度傳感器只用一根DATA引腳即可與MCU傳遞數(shù)據(jù),因此只需要對(duì)這一I/O接口進(jìn)行設(shè)置即可實(shí)現(xiàn)對(duì)傳感器的初始化操作。

        圖3 DHT11初始化流程圖

        要實(shí)現(xiàn)對(duì)溫濕度數(shù)據(jù)的讀取,首先應(yīng)該了解DHT-11傳感器模組自帶的8位單片機(jī)所出輸出的數(shù)字信號(hào)的結(jié)構(gòu)。傳感器模組一次完整的數(shù)據(jù)傳輸包含 40 位字,高位先被傳出,其中濕度高8位表示整數(shù),低8位表示濕度小數(shù);溫度也是一樣的表示方法,共16位;最后8位為校驗(yàn)和。為了便于程序讀取與存儲(chǔ)數(shù)據(jù),創(chuàng)建了如下所示的結(jié)構(gòu)體:

        typedef struct

        {

        uint8_t humi_high8bit; //原始數(shù)據(jù):濕度高8位

        uint8_t humi_low8bit; //原始數(shù)據(jù):濕度低8位

        uint8_t temp_high8bit; //原始數(shù)據(jù):溫度高8位

        uint8_t temp_low8bit; //原始數(shù)據(jù):溫度低8位

        uint8_t check_sum; //校驗(yàn)和

        float humidity; //實(shí)際濕度

        float temperature; //實(shí)際溫度

        }DHT11_Data_TypeDef;

        2.3 地理信息采集模塊

        本設(shè)計(jì)中選用了NE0-7N GPS模塊來(lái)實(shí)現(xiàn)地理信息的采取。此模塊采用被廣泛使用的標(biāo)準(zhǔn)的NMEA-0183協(xié)議格式,通過(guò)串口與主控模塊進(jìn)行數(shù)據(jù)交換。

        GPS模塊的主要任務(wù)為對(duì)GPS模組所傳回的標(biāo)準(zhǔn)定位信息數(shù)據(jù)幀進(jìn)行解析。在模塊冷啟動(dòng)完成穩(wěn)定工作后,定位模塊會(huì)通過(guò)串口,采用 ASCII 碼向 MCU 傳輸如下幾種幀信息:

        表1 定位信息數(shù)據(jù)幀

        其中,GPRMC為推薦定位信息(recommended minimum specific GPS/transit data)因此本設(shè)計(jì)中通過(guò)讀取GPRMC的幀信息來(lái)獲得位置數(shù)據(jù)。

        2.4 NB-IoT窄帶物聯(lián)網(wǎng)通信模塊

        NB非常利于遠(yuǎn)距離、低頻率傳輸,而且傳輸過(guò)程中丟包率非常低,因此非常適用于水土保持監(jiān)控系統(tǒng)中的遠(yuǎn)程數(shù)據(jù)傳輸[15]。

        本設(shè)計(jì)中選用了移遠(yuǎn)通信生產(chǎn)的LTE BC35-G NB-IoT模組,此模組通過(guò)串口與主控模塊相連。這款無(wú)線通信模塊具有高性能、低功耗、多頻段等技術(shù)優(yōu)勢(shì),支持B1、B3、B8、B5、B20、B28 多個(gè)頻段。且此模塊在設(shè)計(jì)上兼容移遠(yuǎn)通信 GSM/GPRS系列的M35 模塊和LPWA系列的BC95模塊,可以方便客戶快速、靈活地進(jìn)行產(chǎn)品設(shè)計(jì)和升級(jí)。此外,模塊采用了省電技術(shù),耗流在省電模式(PSM)下低至3 μA,符合系統(tǒng)對(duì)低功耗的需求。

        ** 函數(shù)名稱 :NB_SendMsgToServer

        ** 說(shuō)明 :NB發(fā)送消息到服務(wù)器

        ** 參數(shù) :*msg,要發(fā)送的數(shù)據(jù)(String形式)

        ** 返回值:無(wú)

        ************************************************

        void NB_SendMsgToServer(unit8_t *msg)

        {

        memset(cmdSend,0,sizeof(cmdsend));

        uint8_t len = 0;

        char msgLen[4] = {0};

        len = strlen((const char*)msg)/2;

        DecToString(len, msglen);

        strcat(cmdSend. "AT+NMGS=");

        stract(cmdSend. ",");

        stract(cmdSend, (const char *)msg);

        stract(cmdSend, " ");

        NB_SendCmd((unit8_t*)cmdSend,(unit8_t *)"OK"

        DefaultTimeout,1);

        }

        AT命令是控制通訊模塊執(zhí)行動(dòng)作的代碼,所有通信相關(guān)的功能函數(shù)都以此為基礎(chǔ),結(jié)構(gòu)上包含前綴AT,后面跟隨不同的控制語(yǔ)句。通過(guò)串口向終端設(shè)備發(fā)送指令即可控制模塊執(zhí)行相應(yīng)功能,在此基礎(chǔ)上,對(duì)AT指令進(jìn)行封裝,形成有具體功能的函數(shù):例如初始化入網(wǎng)、發(fā)送指令、設(shè)置服務(wù)器、接收數(shù)據(jù)、發(fā)送數(shù)據(jù)等。

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

        軟件設(shè)計(jì)可以大體分為本地終端的MDK工程和云平臺(tái)配置兩部分內(nèi)容。本地終端的MDK工程,主要作用是通過(guò)單片機(jī)控制終端整體,執(zhí)行設(shè)定好的數(shù)據(jù)采集與數(shù)據(jù)上報(bào)功能;通過(guò)正確配置云平臺(tái),開發(fā)相對(duì)應(yīng)的編解碼插件,部署前端用戶界面等工作,可以將終端上報(bào)的數(shù)據(jù)直觀的展現(xiàn)給用戶, 形成水土保持監(jiān)測(cè)的數(shù)據(jù)服務(wù)中心,為用戶提供實(shí)時(shí)的準(zhǔn)確數(shù)據(jù)信息。因此,只有同時(shí)做好硬件端和云端的軟件設(shè)計(jì)與對(duì)接,才能實(shí)現(xiàn)本系統(tǒng)的功能。

        3.1 通訊及通訊協(xié)議

        前文已經(jīng)介紹了數(shù)據(jù)在系統(tǒng)內(nèi)部的傳輸,那么這些數(shù)據(jù)在傳輸過(guò)程中遵循著一些傳輸協(xié)議。其中主要有SDI-12協(xié)議、SPI協(xié)議以及NMEA-0813協(xié)議等。下圖為數(shù)據(jù)傳輸圖:

        SDI-12通訊協(xié)議即串行數(shù)字接口,是一種基于微處理器的智能化傳感器系統(tǒng)[16]。SDI-12接口總線使用三芯電纜:一根為串行數(shù)據(jù)線,雙向半雙工通信;一根為12V供電線,向傳感器供電;一根為地線,即作為電源的回路又作為數(shù)據(jù)信號(hào)線的回路。SDI-12串行數(shù)據(jù)二進(jìn)制值為1,對(duì)應(yīng)電壓范圍為-0.5~1.10 V;串行數(shù)據(jù)二進(jìn)制值為0,對(duì)應(yīng)電壓范圍為3.5~5.5 V;規(guī)定通訊波特率為1 200 bps;

        SPI協(xié)議是一個(gè)同步的數(shù)據(jù)總線。SPI總線包括4條邏輯線,如下:MISO:主機(jī)輸入,從機(jī)輸出(數(shù)據(jù)來(lái)自從機(jī));MOSI:主機(jī)輸出,從機(jī)輸入(數(shù)據(jù)來(lái)自主機(jī));SCLK:串行時(shí)鐘信號(hào),由主機(jī)產(chǎn)生發(fā)送給從機(jī);SS:片選信號(hào),由主機(jī)發(fā)送,以控制與哪個(gè)從機(jī)通信,通常是低電平有效信號(hào)[17]。

        NMEA-0813協(xié)議采用ASCLL碼來(lái)傳遞GPS定位信息,我們稱之為幀,幀格式如下:aacc,ddd,ddd,…,ddd*hh[18];

        圖4 數(shù)據(jù)傳輸圖

        3.2 主程序流程設(shè)計(jì)-本地終端MDK工程

        主程序部分是整個(gè)終端軟件部分的核心,統(tǒng)一協(xié)調(diào)調(diào)動(dòng)其他具體功能函數(shù),執(zhí)行硬件端的自動(dòng)采集、上報(bào)任務(wù)。下面按照程序?qū)嶋H執(zhí)行的順序介紹這一部分的軟件設(shè)計(jì)。

        1)初始化:主要包括對(duì)閃存、緩存、時(shí)鐘源、NVIC和底層硬件的初始化設(shè)置、系統(tǒng)時(shí)鐘配置、GPIO接口設(shè)置、3個(gè)串口的初始化、通信模塊初始化、傳感器初始化,最后,設(shè)置遠(yuǎn)程CDP服務(wù)器的接收IP與端口。

        2)采集溫濕度數(shù)據(jù):初始化結(jié)束后便進(jìn)入了程序的主循環(huán)過(guò)程。首先是調(diào)用溫濕度傳感器數(shù)據(jù)讀取函數(shù),通過(guò)串口向上位機(jī)回報(bào)數(shù)據(jù);其次,清理數(shù)據(jù)存放接口處的內(nèi)存,防止對(duì)接下來(lái)的數(shù)據(jù)記錄造成干擾,將讀取到的數(shù)據(jù)統(tǒng)一小數(shù)位數(shù),存放到待發(fā)送結(jié)構(gòu)體中;最后,調(diào)用一次字符串轉(zhuǎn)換函數(shù),將待發(fā)送結(jié)構(gòu)體內(nèi)的數(shù)據(jù)轉(zhuǎn)換為字符串,等待通訊模塊發(fā)送。

        3)采集定位信息:采集完溫濕度數(shù)據(jù)之后開始采集位置信息。首先,由GPS模組通過(guò)串口向緩存寫入數(shù)據(jù),MCU主動(dòng)讀取緩存;隨后,調(diào)用解析GPRMC信息的函數(shù),對(duì)讀取到的數(shù)據(jù)進(jìn)行解析,得到經(jīng)度、緯度數(shù)據(jù),同時(shí)向上位機(jī)回報(bào)此數(shù)據(jù),以方便調(diào)試;最后,由于定位模搜索衛(wèi)星組需要一定的時(shí)間,在這之后才可以得到位置信息,因此需要進(jìn)行一個(gè)判斷,當(dāng)?shù)玫降慕?jīng)緯度信息不為“0”時(shí),將信息從待發(fā)送結(jié)構(gòu)體轉(zhuǎn)換為字符串,等待發(fā)送。

        4)向云端發(fā)送數(shù)據(jù):讀取完兩部分?jǐn)?shù)據(jù)后,先要使用字符串拼接函數(shù),將兩個(gè)待發(fā)送的字符串拼接成一個(gè)完整的報(bào)文,隨后調(diào)用通信模塊的數(shù)據(jù)發(fā)送函數(shù),將此報(bào)文傳遞給云平臺(tái)。

        至此,本地終端一次完整的數(shù)據(jù)采集、發(fā)送過(guò)程便結(jié)束了,隨后程序進(jìn)入延時(shí)過(guò)程。在經(jīng)過(guò)一個(gè)設(shè)置好的時(shí)間后,重復(fù)執(zhí)行上述過(guò)程,完成預(yù)期的自動(dòng)控制程序。

        圖5 主程序流程圖

        3.3 華為云平臺(tái)配置

        本設(shè)計(jì)中的云平臺(tái)選擇了由華為提供的OceanConnect物聯(lián)網(wǎng)開發(fā)平臺(tái),在此平臺(tái)上進(jìn)行項(xiàng)目開發(fā)的入門門檻較低,僅需注冊(cè)一個(gè)開發(fā)者賬號(hào)即可開始,華為官方也提供了非常詳盡的開發(fā)指導(dǎo)與教程[19]。

        一個(gè)產(chǎn)品在與物聯(lián)網(wǎng)平臺(tái)的集成對(duì)接中所需要做的第一步工作就是創(chuàng)建Profile,因?yàn)槊枋鑫募x了設(shè)備上報(bào)的數(shù)據(jù)和應(yīng)用服務(wù)器下發(fā)的命令包含了哪些字段[20]。換而言之,定義Profile的過(guò)程就是在物聯(lián)網(wǎng)平臺(tái)構(gòu)建一款設(shè)備的抽象模型,使平臺(tái)理解該款設(shè)備支持哪些服務(wù),具有哪些屬性,可以下發(fā)哪些命令、設(shè)備的升級(jí)能力等信息[21]。

        對(duì)于本產(chǎn)品而言,設(shè)備上報(bào)的數(shù)據(jù)主要有以下4段:溫度、濕度、維度、經(jīng)度。

        表2 產(chǎn)品Profile配置

        本設(shè)計(jì)中終端設(shè)備和云平臺(tái)之間采用CoAP協(xié)議通訊,CoAP消息的payload為應(yīng)用層數(shù)據(jù),此數(shù)據(jù)的格式由物聯(lián)網(wǎng)設(shè)備自行定義,故需要向云平臺(tái)“翻譯”所上傳的報(bào)文。由于窄帶物聯(lián)網(wǎng)設(shè)備對(duì)能耗要求較高,所以應(yīng)用層數(shù)據(jù)一般不采用流行的JSON格式,而是采用二進(jìn)制格式。但是,物聯(lián)網(wǎng)平臺(tái)與應(yīng)用側(cè)之間需要使用JSON格式進(jìn)行通信。因此,需要開發(fā)編碼插件以供物聯(lián)網(wǎng)平臺(tái)調(diào)用,用來(lái)完成二進(jìn)制格式和JSON格式的轉(zhuǎn)換。

        圖6 編解碼插件配置

        在完成以上兩個(gè)配置后,只需最后完成獲取對(duì)接信息即可。

        4 實(shí)驗(yàn)結(jié)果與分析

        在本地終端的MDK工程和云平臺(tái)都配置完成后,同時(shí)做好硬件端和云端的軟件設(shè)計(jì)與對(duì)接,才能實(shí)現(xiàn)本系統(tǒng)的功能。

        1)硬件測(cè)試,由于所選用的DHT-11溫濕度模塊沒(méi)有內(nèi)置獨(dú)立的USB串口,故通過(guò)與之連接的MCU進(jìn)行串口通信,檢測(cè)其是否工作正常,以能否得到準(zhǔn)確的溫濕度數(shù)據(jù)為評(píng)價(jià)標(biāo)準(zhǔn)。首先對(duì)系統(tǒng)上電,執(zhí)行初始化工作,接下來(lái)按下按鍵2,執(zhí)行對(duì)溫濕度數(shù)據(jù)的讀取、轉(zhuǎn)碼操作。通過(guò)串口回傳的數(shù)據(jù),判斷程序是否正常執(zhí)行。串口回傳數(shù)據(jù)如下:

        [2020-05-24_18:15:47:723]humidity:46.0%RH.temperature:24.0℃

        [2020-05-24_18:15:47:763]msgSend_1:32342E3034362E30

        [2020-05-24_18:15:47:787]H&T_BTS_SUCCESSED

        第一行為溫濕度讀取成功后所輸出的溫濕度數(shù)據(jù),表示數(shù)據(jù)讀取函數(shù)成功運(yùn)行,若返回值為“error”則說(shuō)明讀取失敗。第二行表示經(jīng)過(guò)轉(zhuǎn)碼后的溫濕度數(shù)據(jù),為ASCII碼其中前兩位“32”表示數(shù)字“2”,“34”表示數(shù)字“4”,“2E”表示符號(hào)“.”,“30”表示數(shù)字“0”,連在一起即為溫度數(shù)據(jù)“24.0”,后面的八位為相應(yīng)的濕度數(shù)據(jù),不再贅述。最后一行表示字符串轉(zhuǎn)碼成功,可以交由通信模塊上傳到云平臺(tái)。

        至此,通過(guò)串口信息,我們可以認(rèn)定溫濕度模塊工作正常,能夠完成采集、傳輸工作。

        由于所選用的NEO-7N定位模塊內(nèi)置了獨(dú)立的USB串口,可以直接連接上位機(jī)進(jìn)行調(diào)試,在硬件上只需對(duì)GPS模塊通電,無(wú)需連接用于數(shù)據(jù)收發(fā)的“RXD”與“TXD”引腳。再將模塊通過(guò)數(shù)據(jù)線直接與上位機(jī)USB接口相連,即可查看串口數(shù)據(jù)。結(jié)果如下:

        ** NEO-7N定位模塊串口數(shù)據(jù)

        ************************************/

        [2020-05-27_09:57:02:757]

        GPGGA,015702.00,3422.22424,N,10853.34294,

        E,1,06,1.27,426.6,M,-27.9,M,,*7A

        [2020-05-27_09:57:02:757]

        GPGSA,A,3,01,27,04,11,16,07,,,,,,,2.77,1.27,2.46*04

        [2020-05-27_09:57:02:757]

        GPGSV,2,1,08,01,09,171,33,04,32,204,25,

        07,41,316,29,11,44,168,27*7E

        [2020-05-27_09:57:02:796]

        GPGSV,2,2,08,16,31,061,25,21,02,034,23,

        39,266,41,27,53,044,17*78

        [2020-05-27_09:57:02:796]

        GPGLL,3422.22424,N,10853.34294,E,015702.00,A,A*6A

        [2020-05-27_09:57:03:754]

        GPRMC,015703.00,A,3422.22421,N,10853.34313,

        [2020-05-27_09:57:03:754]GPVTC,,T,,M,0.110,N,0.204,K,A*25

        從串口回報(bào)的信息可看出,在經(jīng)過(guò)了一段時(shí)間之后,便可穩(wěn)定傳輸符合NMEA-0183標(biāo)準(zhǔn)的幀數(shù)據(jù)。手動(dòng)讀取經(jīng)緯度信息為:北緯34°22’,東經(jīng)108°53’分,可以判定定位模塊工作正常。

        2)軟件測(cè)試,在本設(shè)計(jì)中,開發(fā)了“諦聽”應(yīng)用用作前端平臺(tái),直接面對(duì)用戶,提供數(shù)據(jù)可視化支持和遠(yuǎn)程設(shè)備管理功能。通過(guò)對(duì)應(yīng)用添加相應(yīng)的API組件,即可實(shí)現(xiàn)相關(guān)功能。共設(shè)計(jì)了設(shè)備注冊(cè)、設(shè)備列表、數(shù)據(jù)監(jiān)控及終端歷史路徑這4大應(yīng)用界面,完成了應(yīng)用端的配置過(guò)程,實(shí)現(xiàn)了應(yīng)用的設(shè)計(jì)。

        圖7 應(yīng)用功能分頁(yè)

        組件面板如圖8所示。

        圖8 組件面板圖

        在華為云端有最近數(shù)據(jù)上報(bào)功能和歷史數(shù)據(jù)查詢功能,可以非常清晰地看見(jiàn)上傳的數(shù)據(jù),并且可以對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。最后對(duì)應(yīng)用側(cè)數(shù)據(jù)監(jiān)控頁(yè)面進(jìn)行了測(cè)試,可以清晰顯示。至此,應(yīng)用端的測(cè)試過(guò)程全部完成,此應(yīng)用可以完成設(shè)計(jì)之初的功能,實(shí)現(xiàn)了期望的目標(biāo)。

        5 結(jié)束語(yǔ)

        本設(shè)計(jì)根據(jù)用戶需求,從實(shí)際應(yīng)用上的需求和技術(shù)上的需求兩個(gè)方面進(jìn)行了詳細(xì)的需求分析。完成了系統(tǒng)的總體框架設(shè)計(jì),其中主要包括數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)發(fā)送、云端接收、前端應(yīng)用等,并對(duì)系統(tǒng)所用到的相關(guān)技術(shù)進(jìn)行了介紹說(shuō)明;然后從實(shí)際需求出發(fā),以低功耗為目標(biāo)選擇元件與硬件模組,完成了本地硬件終端的搭建。最后開發(fā)終端工程固件,并對(duì)其進(jìn)行調(diào)試;對(duì)比選擇云端物聯(lián)網(wǎng)平臺(tái)與前端應(yīng)用平臺(tái),將云端與本地端相聯(lián)結(jié),完成整個(gè)系統(tǒng)的互聯(lián)互通,實(shí)現(xiàn)設(shè)計(jì)功能。

        猜你喜歡
        溫濕度串口水土保持
        水土保持探新路 三十九年寫春秋
        溫濕度控制器在回收砂冷卻系統(tǒng)中的應(yīng)用
        《水土保持通報(bào)》征稿簡(jiǎn)則
        淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
        水土保持
        基于DSP的多路溫濕度監(jiān)測(cè)系統(tǒng)
        基于溫濕度控制的天氣預(yù)測(cè)裝置
        電子制作(2018年11期)2018-08-04 03:26:02
        水土保持
        蒸發(fā)冷卻溫濕度獨(dú)立控制空調(diào)系統(tǒng)的應(yīng)用
        USB接口的多串口數(shù)據(jù)并行接收方法探索
        亚洲国产成人久久精品不卡 | 精品乱码久久久久久中文字幕| 五月综合激情婷婷六月| 日本高清一区二区在线播放| 999精品免费视频观看| 毛片24种姿势无遮无拦| 一边摸一边抽搐一进一出口述| 女同另类专区精品女同| 国产亚洲美女精品久久| 色婷婷综合中文久久一本 | 色吧综合网| 天码人妻一区二区三区| 妺妺窝人体色www在线| 隔壁的日本人妻bd高清中字| 久久久精品中文无码字幕| 热の国产AV| 97在线观看| 精品久久久久久久久午夜福利| 青青草视频在线观看网| 国产精品久久婷婷六月| 99精品国产闺蜜国产在线闺蜜| 久久夜色撩人精品国产小说| 又色又爽又黄还免费毛片96下载| 丰满人妻一区二区三区蜜桃| 色婷婷亚洲精品综合影院| 国语自产偷拍精品视频偷| 亚洲综合网中文字幕在线| 免费一级a毛片在线播出| 99热精品国产三级在线观看| 麻豆精品久久久久久久99蜜桃| 国产精品麻豆成人av电影艾秋| 欧美性巨大╳╳╳╳╳高跟鞋| 亚州性无码不卡免费视频| 青青青草国产熟女大香蕉| 被三个男人绑着躁我好爽视频| 久久精品国产成人午夜福利| av中国av一区二区三区av| 日日麻批免费高清视频| 婷婷久久亚洲中文字幕| 日韩精品免费观看在线| 中文字幕亚洲精品高清|