歐 洋,馬春燕,郝彥釗
(太原理工大學電氣與動力工程學院,山西 太原 030024)
精準農業是以信息技術為支撐,根據空間變異,定位、定時、定量的實施一整套現代化農業操作管理系統,是信息技術和農業生產全面結合的一種新型農業[1],是近年來農業領域發展的新潮流。溫室作為精準農業實施的一項載體,通過控制室內溫濕度、光照、二氧化碳等植物生長所需的必要條件,可以為農作物提供良好的生長環境。目前,大型溫室中采用土壤栽培、水培的方式較多。而一種新型氣霧立體栽培優化了無土栽培模式,其生長周期短、品質高、病蟲害少、方便人員管理等優點讓無土栽培[2]得到快速發展。氣霧立體栽培采用霧化裝置,將植物生長所需的營養液霧化為小霧滴,直接作用在植物根部,為植物生長提供營養成分,是一種新型的無土栽培技術[3]。隨著科學技術的發展,傳感器技術、自動控制技術的不斷完善,通過無線傳感網絡技術實現對溫室環境的精準監測與控制,可以有效減少人員管理成本[4]。
目前,在大型溫室監控系統中,多采用Bluetooth、ZigBee、Wi-Fi、GPRS 無線通訊方案。Bluetooth 組網簡單,但通訊距離僅10 m 左右,只能應用于小型溫室。ZigBee 具有低功耗、低復雜度的特點,但信號衰減快,通訊距離為幾十米到二百米左右[5-6],受環境影響較大。Wi-Fi 傳輸速度快,通訊距離適中,但是功耗大,難以采用電池為其供電。GPRS 基于無線分組技術,實現廣域連接,但是按流量計費,成本高,存在偏遠地區信號無覆蓋等問題[7]。近年來,為了滿足更多物聯網設備的接入,出現了一種低功耗廣域物聯網技術(Long Range Radio,LoRa),該技術采用星型連接方式,具有通信功耗低、傳輸距離遠、運營成本低等特點[8]。LoRa技術通過擴頻調制和前向糾錯技術,在相同功耗的前提下,擴大了無線通訊的傳輸范圍和提高了鏈路的魯棒性。通過調整擴頻因子、調制帶寬和糾錯編碼率對LoRa 調制解調技術進行優化[9-10]。論文在溫室中構建LoRa 監測系統,對影響氣霧立體栽培裝置中植物生長的溫濕度、光照、二氧化碳濃度等關鍵因素進行監測,并進行網絡生存周期和溫室監測可靠性試驗,為氣霧立體栽培的推廣應用奠定了基礎。
溫室作為一個小氣候環境的載體,氣霧立體栽培裝置安裝在溫室內,是一個相對封閉的獨立生長系統,對植物生長過程中的溫度、濕度、光照強度、二氧化碳濃度、植物培養液pH 等因素都需要進行監測與控制[11]。溫室環境結構和部分傳感器設備布置如圖1 所示。

圖1 溫室環境結構圖
氣霧立體栽培裝置結構靈活,由各模塊拼裝而成,可自由拆卸、布放、移動等。布放在頂部的超聲波霧化器可以使營養液均勻分布在栽培塔中。氣霧立體栽培裝置結構參數見表1。

表1 氣霧栽培裝置結構參數
監測系統主要由數據采集終端、通訊網關、服務器、客戶端界面四部分組成。數據監測系統結構如圖2 所示。

圖2 數據監測系統結構
LoRa 數據采集終端(下文簡稱終端)與傳感器直接相連,通過單總線、I2C 通訊、串行通訊等方式采集傳感器數據,將采集數據通過SX1278 LoRa 模塊發送至通訊網關。終端和通訊網關采用星型連接網絡拓撲結構,終端數量可以自由增減。
通訊網關是整個監測系統的協調器。一方面,負責與終端建立LoRa 通訊網絡,可雙向傳輸數據。另一方面,又負責與服務器通訊,將終端采集的數據集中處理并按協議打包發送給服務器。
服務器將通訊網關上傳的數據按照時間標記存入數據庫,并通過互聯網發送至客戶端界面。
客戶端界面,可以便捷顯示栽培環境的各項數據,實現遠程的實時數據監測、歷史數據查詢、環境曲線繪制,方便用戶管理。
監測系統硬件包括數據采集終端和通訊網關。數據采集終端是整個監測系統的物理感知層,通過傳感器獲取溫室各項環境數據。通訊網關是數據采集終端與服務器的連接橋梁。設計低功耗的終端節點和可靠的通訊網關是監測系統性能穩定的重要保證。
數據采集終端選取STM32F103C8T6 作為微控制器,具有32 位CortexTM-M3 CPU,處理速度快,外設接口處于待機狀態只有7.4 μA 電流,為低功耗MCU[12]。終端通過單總線(1-Wire)、I2C、RS485 接口與傳感器相連,采集栽培溫室內的溫濕度、光照強度、二氧化碳濃度、營養液pH 等數據。傳感器參數見表2(1 ppm=10-6)。

表2 傳感器參數
終端將數據上傳至網關后,在采集間隔期,將進入休眠模式。假定采集間隔為10 min,終端工作電流實測50 mA,每次工作時長350 ms,采用3 600 mAh的鋰電池供電,由電能公式計算可得有效生存周期可達到兩年。終端布放位置不固定,因此盡量減小終端體積,終端結構示意圖如圖3 所示。

圖3 終端結構示意圖
通訊網關是數據監測系統中的核心部分,起到協調器的作用,網關下行與終端建立LoRa 網絡通訊,上行通過4G 模塊與服務器通訊,實現數據實時采集和數據本地存儲等功能。
網關控制器選擇STM32F103ZET6 芯片,主頻72 MHz,具有512 kbyte 的Flash 存儲空間[13]。網關連接SX1278LoRa 模塊與終端進行LoRa 通訊。4G模塊采用USR-G781 型號的DTU,網關通過RS232通訊方式與4G 模塊連接,上傳數據至服務器。同時,網關通過SDIO 協議將數據備份在本地。網關電路圖如圖4 所示。

圖4 網關電路圖
基于LoRa 長距離、低功耗、無線技術的氣霧立體栽培環境監測系統通訊方案,設計了基于時分多址復用技術(Time division multiple access,TDMA)的通訊網關和終端自組網通訊策略,使終端可以隨機訪問、競爭入網。溫室環境中,需要上傳周期性環境感知數據,同時當環境參數發生劇烈變化時或終端電池電壓低于預警值時,也需要進行預警并將數據緊急上傳至網關,采用TDMA 策略既可以減小終端數據上傳的碰撞概率,又可以在空閑時隙采用CAD信道檢測,將緊急數據上傳,進行預警。
時分多址復用技術是利用時間上離散的脈沖組成相互不重疊的多路信號,廣泛應用于數字通信,由于信道的位傳輸率超過每一路信號的數據傳輸率,因此可將信道按時間分成若干片段輪換地給多個信號使用[14]。每一時間片段由復用的一個信號單獨占用,在規定的時間內,多個數字信號都可按要求傳輸到達,從而也實現了一條物理信道上傳輸多個數字信號。
基于TDMA 的LoRa 自組網設計,可以實現多個終端競爭入網。假設有n個終端節點,加入網關,第一個節點申請加入網關,會占用信道發送入網請求,網關接收到請求后,記錄終端的地址信息,回復應答信號,包含上傳數據的時隙分配信息。當其他的終端申請入網沒有接收到應答信號,則進行CAD信道檢測,檢測到信道空閑時會發送請求,如果信道忙,則產生隨機延時后繼續發送入網請求。CAD 信道活動檢測旨在以盡可能高的功耗效率檢測無線信道上的前導碼,在CAD 模式下,檢測LoRa 數據包前導碼[15]。
當終端入網完成后,獲取上傳數據的時間片段信息,等到達時隙所規定的時間后,上傳數據。
因為TDMA 是將通信的時間分割成小的時隙供每個終端通信,因此需要計算LoRa 上傳數據包的最大所需空中傳輸時間,一個數據包包括前導碼和有效負載數據。由式(1)可得一個數據包的空中傳輸時間。

式中Tpreamble是前導碼傳輸時間,Tpayload是有效負載傳輸時間。
前導碼傳輸時間通過式(2)計算:

其中npreamble表示已經設定好的前導碼長度;Tsym表示符號速率。式(2)中:Tsym根據設定的擴頻因子(SF)和信號帶寬(BW)可以計算:

式中SF 為擴頻因子,BW 為信號帶寬。
有效負載數據傳輸時間由式(4)計算:

式中的payloadSymbNb 表示有效負載符號數。
有效負載符號數payloadSymbNb 為:

式中PL 表示有效負載的字節數;SF 表示擴頻因子;使用報頭時H=0,沒有報頭時H =1;當使用低速率優化時,DE =1,否則DE =0;CR 表示編碼率。
由以上公式可知,當SF 值設置越大,空中傳輸時間越長,獲取所需空中時間最大值,所以設置SF 最大為12,BW=500 kHz,CR =1,PL 為12 byte,前導碼為8 byte,由以上公式可計算出,前導碼傳輸時間為100.35 ms,有效負載數據的傳輸時間為147.46 ms,一個數據包空中傳輸總時間為247.81 ms。TDMA 通訊時,網關分配的每個時隙時間應大于上傳數據包的空中傳輸時間。相對于采集間隔期,網關信道有一多半的時間處于空閑狀態,在信道空閑時進行緊急數據上傳。
TDMA 能夠高效率地完成終端數據上傳,減小數據的碰撞概率,所依賴的是網關和終端高精度的時鐘同步。文中采用MCU 自帶的RTC 實時時鐘模塊,RTC 模塊是由一組可編程計數器組成,可產生1 s 的時間基準,同時通過預分頻余數寄存器可以獲得10 ms 的精準系統時間。網關通過間隔2 h 給所有終端下發同步時鐘,以保證與網關同步的精準時間。
LoRa 數據傳輸包括兩種數據類型,一種是周期性間隔的環境感知數據,另一種是電源電壓預警、環境驟變的緊急數據。
周期性環境數據因變化并不劇烈,采用等長的間隔定時上傳數據,例如3 min~5 min 等,文中采用3 min 間隔來上傳數據,當終端全部入網成功之后,根據網關返回的應答信息,解析得到所分配的TDMA 時隙,當3 min 時間到達時,按照時隙分配依次向網關上傳數據。
終端每隔30 s 會由鬧鐘進行喚醒,進行電壓檢測和環境數據采集,并由公式(6)進行判斷,是否達到環境驟變的條件,不符合,再次進入休眠狀態。當滿足條件時,終端進行CAD 信道檢測,信道空閑則將數據發送至網關,完成緊急數據上傳。

式中:i指的是傳感器節點向量,yi(ti,k)指的是節點i當前的數據采集量,yi(ti,k-1)指的是節點i前一時刻的數據采集量,α1可以是一個固定的值,也可是一個動態的值,當φ(ti,k)為1 時,表明環境發生驟變,上傳緊急數據,反之不上傳。
網關流程圖如圖5(a)所示,初始化之后等待空閑中斷,判定所接收的數據類型,進行相應的分配時隙、處理上傳數據、同步終端時鐘等任務。終端流程圖如圖5(b)所示,進行入網請求,上傳周期性數據、同步時鐘、上傳緊急數據等。

圖5 網關與終端流程圖
搭建了供環境監測系統測試的溫室,長3.1 m,寬1.8 m,頂高2.1 m,肩高1.9 m,設計有兩個頂部通風窗、兩個側面通風窗,具有保溫隔熱,透光性好等特點。在溫室內放置了兩個氣霧立體栽培裝置,并安裝了5 個溫濕度傳感器、3 個光照傳感器、1 個二氧化碳傳感器,1 個營養液pH 傳感器等十個傳感器終端設備,進行溫室環境數據監測試驗。
試驗采用芽苗菜作為試驗對象,每日保持芽苗菜種子濕潤,待發芽之后將其移植到氣霧栽培裝置中進行種植,栽培裝置每隔1 h,超聲霧化器啟動1 h,保持栽培塔內的環境濕潤,以保證芽苗菜具有足夠的水分生長。在夜晚光照不足時,啟動紅藍光補光燈,為其提供光照。監測系統采集了一輪芽苗菜10 天生長期的環境數據。芽苗菜生長圖如圖6 所示。

圖6 芽苗菜生長圖
監測系統使用PyQt5 制作了客戶端監測界面,采用TCP/IP 通訊協議與服務器通訊。界面包括實時數據顯示、網絡連接、曲線顯示、歷史數據等功能。
由于采集間隔短,數據量眾多,選擇在芽苗菜生長期中某一天12:00~15:00 的溫濕度節點、光照節點、二氧化碳節點等數據曲線顯示如圖7 所示。由圖可知,當溫度上升時,濕度在下降,溫濕度存在耦合關系。光照強度在該時間段逐步上升,由于光合作用,二氧化碳濃度逐步下降。

圖7 數據監測界面與監測數據曲線
監測系統采集一個完整的芽苗菜生長周期(10天),采用TDMA 通訊策略,每個終端節點上傳了4 800 包數據,以3 min 作為上傳間隔,丟包率為零,證明距離較短、間隔較長時,系統工作穩定。在校園露天環境下,由于學校高樓與樹木較多,測試系統長距離的穩定性與TDMA 策略的優劣性,分別在距離網關0~600 m 的半徑范圍內,采用1 s 的間隔周期進行數據快速上傳測試,數據長度為20 byte,數據量為1 000 幀,分別在擴頻因子為9、10、11、12 基礎上,采用數據透傳和TDMA 兩種通訊策略,對比快速上傳數據的投遞率性能示意圖如圖8 所示。
由圖8 可知,當擴頻因子相同時,隨著距離的增加,投遞成功率下降,相同條件下,TDMA 策略成功率較高,相比于透明傳輸成功率提高12%。SF =11時,由于布置的終端節點與網關之間存在高樓遮擋物,導致成功率下降,因此布置溫室環境時,需考慮終端遮擋問題。當SF 越大,傳遞的距離越遠,成功率越高。

圖8 投遞率性能示意圖
本文針對精準農業的發展需求,監測溫室生長環境,提出了基于LoRa 低功耗遠距離的無線監測傳感網絡。設計了LoRa 終端電路板,使LoRa 終端體積減小,布放方便,在此基礎上,研究了終端和網關通訊的TDMA 同步通訊策略。溫室試驗結果表明,監測系統性能良好,穩定可靠,在整個生長周期中,3 min 的上傳間隔,數據丟包率為0。為了滿足大型溫室的監測要求,系統覆蓋了半徑為600 m 的監測區域,終端數量可擴充至100 終端節點的網絡規模,提高投遞成功率,減少了信道碰撞概率,增加了穩定性。采用鋰電池供電,在溫室中根據實際情況可延長上傳周期,以此能獲得更長的生命周期。