国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于LoRaWAN技術(shù)和ThingsBoard平臺(tái)的智能溫室大棚環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

2022-10-24 09:54:16吳小峰王艷紅李慧勇
關(guān)鍵詞:開源網(wǎng)關(guān)大棚

吳小峰,王艷紅,李慧勇

(江蘇航運(yùn)職業(yè)技術(shù)學(xué)院,江蘇 南通 226010)

近年來,基于物聯(lián)網(wǎng)技術(shù)的智能溫室大棚方興未艾,在實(shí)際建設(shè)和應(yīng)用過程中,各地智能溫室大棚如雨后春筍,但技術(shù)選型和建設(shè)方案略顯落后。[1~3]一方面,目前,大部分的智能溫室大棚系統(tǒng)采用ZigBee無線通信技術(shù)進(jìn)行數(shù)據(jù)傳輸,雖然ZigBee技術(shù)滿足智能溫室大棚對(duì)于低功耗、低成本的需求,但其無法滿足遠(yuǎn)距離傳輸?shù)男枨?,這在無形之中增加了中繼節(jié)點(diǎn)的開銷。[4]另一方面,各個(gè)智能溫室大棚的建設(shè)往往各自為戰(zhàn),信息孤立,單一服務(wù)器難以支撐智能溫室海量數(shù)據(jù)存儲(chǔ)、處理、挖掘的需要。隨著IoT平臺(tái)技術(shù)的落地生根、觸手可及,智能溫室大棚正朝著前端溫室大棚差異化建設(shè)、后端IoT平臺(tái)統(tǒng)一管理的方向發(fā)展。

LoRa(LongRangeRadio,遠(yuǎn)距離無線電)是一種基于擴(kuò)頻技術(shù)的遠(yuǎn)距離無線傳輸技術(shù)。LoRaWAN是SEMTECH公司為LoRa通信定義的一種技術(shù)協(xié)議棧,它最大的特點(diǎn)就是在同樣的功耗條件下比其他無線方式傳播的距離更遠(yuǎn),實(shí)現(xiàn)了低功耗和遠(yuǎn)距離的統(tǒng)一。[5]得益于LoRaWAN的開放生態(tài),不管是終端還是網(wǎng)關(guān),SEMTECH公司都提供了開源實(shí)現(xiàn)方案供參考。

ChirpStack作為一個(gè)開源的LoRaWAN Server服務(wù)器端項(xiàng)目,包含了Gateway Bridge、Network Server、Application Server和Geolocation Server,并且集成了許多接口供第三方應(yīng)用,是目前LoRaWAN服務(wù)端一個(gè)很好的可行的解決方案。[6]

當(dāng)代的物聯(lián)網(wǎng)技術(shù),已經(jīng)從M2M(機(jī)器到機(jī)器間通信)進(jìn)入到以IoT平臺(tái)為核心的時(shí)代。Things-Board是一個(gè)基于Java的開源的IoT平臺(tái),用于數(shù)據(jù)收集、處理、可視化和設(shè)備管理。它使用物聯(lián)網(wǎng)行業(yè)的標(biāo)準(zhǔn)協(xié)議(MQTT、CoAP和HTTP)實(shí)現(xiàn)設(shè)備連接,并支持云和本地部署。ThingsBoard具有可擴(kuò)展性、容錯(cuò)性和高性能,因此永遠(yuǎn)不會(huì)丟失數(shù)據(jù)。Thingsboard分為專業(yè)版和社區(qū)版,社區(qū)版是開源的,專業(yè)版是收費(fèi)的。

本文所設(shè)計(jì)的智能溫室大棚環(huán)境監(jiān)測(cè)系統(tǒng),在實(shí)現(xiàn)LoRaWAN終端與LoRaWAN網(wǎng)關(guān)軟硬件功能的基礎(chǔ)上,采用ChirpStack這一個(gè)開源網(wǎng)絡(luò)服務(wù)項(xiàng)目,通過MQTT的方式將監(jiān)測(cè)數(shù)據(jù)上傳給Thingsboard平臺(tái)。

一、系統(tǒng)框架

智能溫室大棚環(huán)境監(jiān)測(cè)系統(tǒng)框架如圖1所示,由終端節(jié)點(diǎn)、網(wǎng)關(guān)、服務(wù)器以及IoT平臺(tái)構(gòu)成。

圖1 智能溫室大棚環(huán)境監(jiān)測(cè)系統(tǒng)框架圖

終端節(jié)點(diǎn):作為感知層,配合傳感器,實(shí)現(xiàn)溫室大棚內(nèi)溫度、濕度、CO2、光照數(shù)據(jù)的采集。

網(wǎng)關(guān):作為終端節(jié)點(diǎn)和網(wǎng)絡(luò)服務(wù)器之間的橋梁,實(shí)現(xiàn)傳感數(shù)據(jù)的匯聚與轉(zhuǎn)發(fā),運(yùn)行LoRaWAN和TCP/IP兩套協(xié)議。

服務(wù)器:分為網(wǎng)絡(luò)服務(wù)器和應(yīng)用服務(wù)器。網(wǎng)絡(luò)服務(wù)器負(fù)責(zé)管理網(wǎng)絡(luò)的狀態(tài),它具有網(wǎng)絡(luò)上設(shè)備激活的功能,并且能夠在設(shè)備要加入網(wǎng)絡(luò)時(shí)處理加入請(qǐng)求。當(dāng)多個(gè)網(wǎng)關(guān)接收到數(shù)據(jù)時(shí),網(wǎng)絡(luò)服務(wù)器將對(duì)這些數(shù)據(jù)進(jìn)行重復(fù)數(shù)據(jù)刪除,并將其作為一個(gè)有效負(fù)載轉(zhuǎn)發(fā)給應(yīng)用服務(wù)器。當(dāng)應(yīng)用服務(wù)器需要將數(shù)據(jù)發(fā)送回設(shè)備時(shí),網(wǎng)絡(luò)服務(wù)器會(huì)將這些項(xiàng)目保留在隊(duì)列中,直到能夠發(fā)送到其中一個(gè)網(wǎng)關(guān)為止。應(yīng)用服務(wù)器提供了用于管理網(wǎng)關(guān)和設(shè)備的界面與API,收到的上行鏈路數(shù)據(jù)將轉(zhuǎn)發(fā)到一個(gè)或多個(gè)已配置好的第三方平臺(tái)(如,Thingsboard)。

IoT平臺(tái):用于收集和可視化物聯(lián)網(wǎng)設(shè)備的數(shù)據(jù)??梢詫碜匀我鈹?shù)量設(shè)備的數(shù)據(jù)發(fā)送到IoT平臺(tái),在IoT平臺(tái)中可以通過自定義的儀表板查看或共享。

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

(一)終端節(jié)點(diǎn)設(shè)計(jì)

終端節(jié)點(diǎn)采用STM32L151C8T6D+LSD4RF-2F717N30的組合形式。[7]STM32L151C8T6D是一款基于ARM Cortex-M內(nèi)核的STM32系列的32位微控制器,定位是低功耗領(lǐng)域,程序存儲(chǔ)器容量是64KB,需要電壓2 V~3.6 V,工作溫度-40℃~85℃。借助于MCU豐富的拓展能力,溫濕度傳感器SHT31通過IIC(Inter-Integrated Circuit,集成電路總線)與MCU相連。光照度傳感器LXD_G85_A1E和CO2傳感器均通過ADC0與MCU相連。LSD4RF-2F717N30是基于Semtech射頻集成芯片SX1278的射頻模塊,主要采用LoRa遠(yuǎn)程調(diào)制解調(diào)器,用于超長距離擴(kuò)頻通信,抗干擾強(qiáng),能夠最大限度地降低能耗,相對(duì)于傳統(tǒng)調(diào)制技術(shù)有明顯優(yōu)勢(shì)。LoRa芯片與MCU通過SPI(Serial Peripheral Interface,串行外設(shè)接口)進(jìn)行通信。LoRa芯片與MCU連接原理如圖2所示。

圖2 LoRa芯片與MCU連接原理圖

(二)網(wǎng)關(guān)設(shè)計(jì)

網(wǎng)關(guān)是終端節(jié)點(diǎn)和網(wǎng)絡(luò)服務(wù)器之間的橋梁,實(shí)現(xiàn)終端節(jié)點(diǎn)上傳數(shù)據(jù)IP化并轉(zhuǎn)發(fā)給網(wǎng)絡(luò)服務(wù)器,同時(shí)負(fù)責(zé)將網(wǎng)絡(luò)服務(wù)器下發(fā)指令轉(zhuǎn)發(fā)給終端節(jié)點(diǎn)。借助于網(wǎng)關(guān)標(biāo)準(zhǔn)和網(wǎng)絡(luò)服務(wù)器標(biāo)準(zhǔn),目前,市面上不同廠家的網(wǎng)關(guān)能順利和不同廠家的網(wǎng)絡(luò)服務(wù)器通信。目前,主流網(wǎng)關(guān)有兩種實(shí)現(xiàn)方案:一種是直接選用市面上的成品網(wǎng)關(guān),另一種是自己動(dòng)手搭建??紤]到節(jié)約成本,本文采用樹莓派+MGW1302S模塊自行搭建網(wǎng)關(guān)。[8]樹莓派是一款基于ARM的微型電腦主板,以SD/MicroSD卡為內(nèi)存硬盤,支持Linux操作系統(tǒng)。M-GW1302S是新一代多通道LoRa網(wǎng)關(guān)射頻模組,內(nèi)置SEMTECH公司SX1302芯片,可以同時(shí)解調(diào)8個(gè)信道的數(shù)據(jù),數(shù)據(jù)傳輸大幅提高,功耗卻更低。M-GW1302S通過轉(zhuǎn)接板與樹莓派連接,實(shí)物如圖3所示,兩者之間通信協(xié)議是SPI。

圖3 M-GW1302S通過轉(zhuǎn)接板與樹莓派連接圖

(三)服務(wù)器選型

ChipStack是目前使用最廣泛的一個(gè)開源的LoRaWAN服務(wù)器。[9]它提供非常簡(jiǎn)潔、友好的Web界面,方便用戶對(duì)設(shè)備進(jìn)行管理,主要提供以下組件。

1.ChirpStack網(wǎng)關(guān)網(wǎng)橋。位于數(shù)據(jù)包轉(zhuǎn)發(fā)和MQTT代理之間,它將數(shù)據(jù)包轉(zhuǎn)發(fā)器格式(例如Semtech UDP數(shù)據(jù)包轉(zhuǎn)發(fā)器協(xié)議)轉(zhuǎn)換為ChirpStack組件使用的數(shù)據(jù)格式。它還提供與各種云平臺(tái)的集成,例如,GCP Cloud IoT Core和Azure IoT Hub等。

2.ChirpStack網(wǎng)絡(luò)服務(wù)器。負(fù)責(zé)管理網(wǎng)絡(luò)的狀態(tài)。它具有網(wǎng)絡(luò)上設(shè)備激活的功能,并且能夠在設(shè)備要加入網(wǎng)絡(luò)時(shí)處理加入請(qǐng)求。

當(dāng)多個(gè)網(wǎng)關(guān)接收到數(shù)據(jù)時(shí),ChirpStack網(wǎng)絡(luò)服務(wù)器將對(duì)這些數(shù)據(jù)進(jìn)行重復(fù)數(shù)據(jù)刪除,并將其作為一個(gè)有效負(fù)載轉(zhuǎn)發(fā)給ChirpStack應(yīng)用服務(wù)器。當(dāng)應(yīng)用服務(wù)器需要將數(shù)據(jù)發(fā)送回設(shè)備時(shí),ChirpStack網(wǎng)絡(luò)服務(wù)器會(huì)將這些項(xiàng)目保留在隊(duì)列中,直到能夠發(fā)送到其中一個(gè)網(wǎng)關(guān)為止。

3.ChirpStack應(yīng)用服務(wù)器。與ChirpStack網(wǎng)絡(luò)服務(wù)器兼容。它提供了用于管理用戶、組織、應(yīng)用程序、網(wǎng)關(guān)和設(shè)備的Web界面和API,收到的上行鏈路數(shù)據(jù)將轉(zhuǎn)發(fā)到一個(gè)或多個(gè)已配置好的IOT平臺(tái)。ChirpStack應(yīng)用服務(wù)器利用MQTT來發(fā)布和接收應(yīng)用程序有效負(fù)載。

(四)IoT平臺(tái)選型

在以IoT平臺(tái)為基礎(chǔ)的IoT時(shí)代,一個(gè)IoT項(xiàng)目的實(shí)施,首先是根據(jù)項(xiàng)目的需求選擇一個(gè)IoT平臺(tái),然后,以這個(gè)IoT平臺(tái)為基礎(chǔ),選擇相應(yīng)的IoT設(shè)備及其接入方式以及IoT應(yīng)用開發(fā)。IoT平臺(tái)的選擇有很多,如微軟的Azure IoT平臺(tái)、AWS IoT平臺(tái)、阿里巴巴IoT平臺(tái)、華為IoT、騰訊IoT平臺(tái)、新大陸的IoT云平臺(tái)等等。本文選擇了近年來一直很活躍的開源IoT平臺(tái)ThingsBoard,它有社區(qū)版和專業(yè)版兩種許可,專業(yè)版是收費(fèi)的、社區(qū)版是免費(fèi)的。雖然社區(qū)版的ThingsBoard功能比專業(yè)版少,但是,可以滿足基本的IoT項(xiàng)目的需求。

Thingsboard支持設(shè)備連接的標(biāo)準(zhǔn)協(xié)議MQTT、CoAP和HTTP,并支持云和本地部署。它提供了30多個(gè)可自定義的小部件,允許為大多數(shù)物聯(lián)網(wǎng)應(yīng)用構(gòu)建用戶自定義儀表板。thingsboard開源的物聯(lián)網(wǎng)平臺(tái)主要特點(diǎn):實(shí)時(shí)數(shù)據(jù)可視化和遠(yuǎn)程設(shè)備控制自定義儀表板的30個(gè)可定制小部件、可定制的規(guī)則。允許監(jiān)視客戶端和提供服務(wù)器端設(shè)備屬性,支持多租戶安裝即裝即用,支持MQTT和HTTP協(xié)議的傳輸加密。失敗的節(jié)點(diǎn)可以在沒有停機(jī)的情況下進(jìn)行更換。

Thingsboard的核心包括:IoT設(shè)備管理、IoT數(shù)據(jù)存儲(chǔ)、消息總線、規(guī)則引擎等。它一方面為設(shè)備提供多種安全的接入方式,如HTTP、MQTT、CoAP等接入方式;另一方面為IoT應(yīng)用提供API接口。Thingsboard組成框圖見圖4。

圖4 Thingsboard組成框圖

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

(一)終端節(jié)點(diǎn)軟件設(shè)計(jì)

LoRaMac-node是Semtech公司推出的開源Lo-RaWAN終端節(jié)點(diǎn)協(xié)議棧和參考例程,包含Class A、Class B、Class C終端節(jié)點(diǎn)代碼??紤]終端節(jié)點(diǎn)硬件架構(gòu)不同和低功耗需求,我們選擇Class A代碼進(jìn)行移植,主要修改內(nèi)容為應(yīng)用層數(shù)據(jù)采集代碼、驅(qū)動(dòng)代碼和HAL庫。無線通信中同一頻道有多個(gè)不同網(wǎng)絡(luò),可以采用網(wǎng)絡(luò)ID來區(qū)分;同一網(wǎng)絡(luò)中的不同設(shè)備可以用設(shè)備地址來區(qū)別,再加上頭部、命令字段、數(shù)據(jù)長度、數(shù)據(jù)域、校驗(yàn)字段,設(shè)計(jì)出上傳傳感器數(shù)據(jù)格式,如表1所示。

表1 上傳傳感器數(shù)據(jù)格式

終端節(jié)點(diǎn)上電后初始化各個(gè)硬件模塊,初始化MAC層和設(shè)備類型,申請(qǐng)入網(wǎng)并獲取設(shè)備地址、網(wǎng)絡(luò)會(huì)話秘鑰、應(yīng)用會(huì)話秘鑰,如果有數(shù)據(jù)發(fā)送則進(jìn)入發(fā)送狀態(tài),并設(shè)置系統(tǒng)狀態(tài)為循環(huán),直到收到下發(fā)數(shù)據(jù)被喚醒或者被定時(shí)器喚醒。整個(gè)流程如圖5所示。

圖5 終端節(jié)點(diǎn)上電流程

(二)網(wǎng)關(guān)軟件設(shè)計(jì)

SX1302_hal是Semtech公司推出的開源網(wǎng)關(guān)例程,核心是packet_forwarder(包轉(zhuǎn)發(fā)器)功能,實(shí)現(xiàn)了終端節(jié)點(diǎn)和網(wǎng)絡(luò)服務(wù)器之間的數(shù)據(jù)通信。因?yàn)楣俜嚼讨惺褂昧艘粋€(gè)溫度傳感器,而在MGW1302S中,并沒有此傳感器,所以需要將部分代碼注釋掉才能運(yùn)行。M-GW1302S廠家提供了修改后的適配代碼。樹莓派安裝Linux系統(tǒng),接好網(wǎng)線,配置好上網(wǎng)功能和SPI功能,下載M-GW1302S廠家提供的適配代碼,經(jīng)過編譯生成可執(zhí)行文件lora_pkt_fwd。在global_conf.json文件里依次配置網(wǎng)關(guān)接收頻點(diǎn)、網(wǎng)關(guān)發(fā)射功率、網(wǎng)關(guān)ID、網(wǎng)關(guān)的服務(wù)器IP,最后運(yùn)行l(wèi)ora_pkt_fwd,程序就會(huì)讀取global_conf.json文件,啟動(dòng)起來了。

(三)服務(wù)器軟件部署

開源服務(wù)器ChirpStack的安裝使用dockercompose方式比較方便。安裝ChirpStack所需要的容器在一個(gè)docker-compose文件中描述。安裝ChirpStack的過程,是下載它的docker-compose壓縮文件,解壓縮,修改docker-compose的參數(shù),最后使用docker-compose up-d命令安裝。LoRa在國內(nèi)的頻段是CN470,所以在docker-compose中要修改過來。ChirpStack安裝完成后,需要通過ChirpStack的管理界面對(duì)其進(jìn)行適當(dāng)?shù)呐渲茫拍苁褂?。依次配置網(wǎng)絡(luò)服務(wù)、網(wǎng)關(guān)配置文件、服務(wù)配置文件、設(shè)備配置文件、添加網(wǎng)關(guān)、添加設(shè)備等。另外,本文所有的傳感層設(shè)備最終需要通過ChirpStack接入ThingsBoard平臺(tái)。接入第三方平臺(tái)的功能是由ChirpStack應(yīng)用中的“三方平臺(tái)接入”模塊完成的。這個(gè)第三方接入模塊是作為網(wǎng)關(guān)設(shè)備接入Things-Board,所以還需要配置ThingsBoard集成接入?yún)?shù)。正確配置后,終端節(jié)點(diǎn)通過網(wǎng)關(guān)自動(dòng)和ChirpStack協(xié)商入網(wǎng)流程,并周期性上報(bào)采集的傳感器數(shù)據(jù)到ChirpStack,最終送到ThingsBoard,并在儀表板顯示。

(四)IoT平臺(tái)部署

參考ThingsBoard在ubuntu系統(tǒng)下的官方安裝教程,完成的主要步驟包括:安裝JAVA運(yùn)行環(huán)境、下載ThingsBoard安裝包并安裝、安裝配置Things-Board數(shù)據(jù)庫、安裝服務(wù)、啟動(dòng)服務(wù)。至此,通過瀏覽器可以打開ThingsBoard首頁,使用默認(rèn)租戶管理員帳戶tenant@thingsboard.org密碼tenant便可以登錄進(jìn)入ThingsBoard。為了在ThingsBoard平臺(tái)儀表盤實(shí)時(shí)顯示溫度、濕度、CO2、光照度值,需要添加相應(yīng)的資產(chǎn)、設(shè)備配置類型、設(shè)備、儀表盤,最終儀表盤顯示效果如圖6所示。

圖6 ThingsBoard儀表盤效果

四、結(jié)束語

本文從智能溫室大棚環(huán)境監(jiān)測(cè)的實(shí)際需求出發(fā),采用生態(tài)豐富、技術(shù)成熟的LoRaWAN技術(shù),結(jié)合廣泛認(rèn)可的ThingsBoard IoT平臺(tái),給出了詳細(xì)的軟硬件設(shè)計(jì)方案,實(shí)現(xiàn)了溫度、濕度、CO2、光照度值的實(shí)時(shí)采集監(jiān)測(cè)。相對(duì)于常見的傳統(tǒng)的ZigBee技術(shù)方案,具有低功耗、遠(yuǎn)距離、大容量、部署規(guī)模和需求功能易于拓展的優(yōu)點(diǎn)。同時(shí)本文提出的Lo-RaWAN+ThingsBoard組合方案可以移植到其它智能數(shù)據(jù)監(jiān)測(cè)和控制的物聯(lián)網(wǎng)應(yīng)用場(chǎng)合,為這些應(yīng)用提供借鑒和參考,有一定的理論和實(shí)踐價(jià)值。

猜你喜歡
開源網(wǎng)關(guān)大棚
大棚妹子
大棚換茬季 肥料怎么選
謹(jǐn)防大棚房死灰復(fù)燃
原地翻建大棚 注意啥
基于改進(jìn)RPS技術(shù)的IPSEC VPN網(wǎng)關(guān)設(shè)計(jì)
五毛錢能買多少頭牛
大家說:開源、人工智能及創(chuàng)新
開源中國開源世界高峰論壇圓桌會(huì)議縱論開源與互聯(lián)網(wǎng)+創(chuàng)新2.0
開源計(jì)算機(jī)輔助翻譯工具研究
開源計(jì)算機(jī)輔助翻譯工具研究
浏阳市| 泊头市| 太湖县| 霍林郭勒市| 大宁县| 古丈县| 科技| 吉安县| 武宣县| 昌江| 通河县| 南阳市| 天峨县| 兴宁市| 夏邑县| 文成县| 葫芦岛市| 霍山县| 手游| 桑日县| 灌阳县| 富锦市| 宁城县| 成都市| 金湖县| 图木舒克市| 温泉县| 讷河市| 淳化县| 秭归县| 抚宁县| 广东省| 西充县| 保定市| 吉水县| 堆龙德庆县| 舟山市| 富阳市| 专栏| 陇南市| 安西县|