徐義軍 王平
摘要:基于ZigBee的絞股藍養殖環境監測系統包括土壤濕度、空氣溫度、CO2濃度、土壤酸堿度、光照強度等傳感器獲取絞股藍生長環境的參數,終端節點通過CC2530單片機獲取各個傳感器的參數值,協調器創建ZigBee無線傳感網絡,終端節點通過ZigBee無線傳感網絡將數據匯總給協調器,協調器將傳感器的數據整理打包通過串口將數據發送給FPGA主控制器,FPGA通過CCD攝像頭獲取絞股藍的葉片信息以及ZigBee獲取的不同遠近的RSSI的值進行算法分析,得到不同位置的絞股藍葉片真實的大小 ,然后將所有數據整理通過網關發送給遠程的服務器存儲,用戶通過Web訪問服務器數據,進行監測與管理。
1、引言:
絞股藍的種植基地多在偏遠的山區,以散戶農民種植為主,對生長環境的數據的收集較為困難,種植的管理效率較低,種植人力成本較高。且農戶的種植管理技術不夠成熟,因此采用信息化手段監測農作的生長可提高農戶的收成和公司絞股藍產量,降低管理成本,提升管理的效率。無線傳感網絡(WSN)通過實時采集溫室內溫度、土壤溫度、CO2 濃度、濕度信號以及光照、葉面濕度、露點溫度等一系列環境參數,合理安排絞股藍的種植方式,提升作物的產量和質量。可以根據用戶的需求,隨時進行處理,為絞股藍綜合生態信息的自動監測、對環境進行自動控制和智能化的管理提供了科學依據。
2、系統方案
為了監測一片區域內的絞股藍的生長環境數據,以及數據的準確性和實時性,需要布置大量的傳感器實時監測,為了減少布線的不便以及大量數據管理上面的繁瑣,本發明通過建立ZigBee無線傳感網絡來對傳感器數據的發送和匯總,監測數據包括有土壤濕度、空氣溫度、CO2濃度、土壤酸堿度、光照強度等,每個終端節點通過CC2530單片機進行數據的采集,然后通過ZigBee發送給路由節點,路由節點轉發匯聚到協調器節點。由于節點數目較多,為了防止由于意外導致數據不能實時傳輸給協調器,系統采用的是一種網狀架構的組網方式,節點出現問題時,信息可以自動的沿著其他的路由路徑進行傳輸,提高了數據的傳輸效率和系統的穩定性能。協調器將所有傳感器的數據匯總,通過串口與FPGA主控制器交互。本發明采用的是DE1-SoC產品,充分利用FPGA的高速并行處理能力與ARM Linux靈活的運算和系統控制優勢,使用SoC器件上的FPGA資源,設計圖像采集和格式轉換邏輯,實現絞股藍葉片圖像數據的采集,并通過SoC器件獨有的FPGA2HPS高速橋,將圖像數據實時存入HPS側DDR3存儲器中。HPS端運行Linux操作系統,實時讀取圖像數據。 SDRAM控制器被配置為一個64MB的ip核,控制SDRAM數據的存儲和讀取。片上RAM的工作頻率為100MHz,通過鎖相環保證了SDRAM與FPGA時鐘的同步。Nios II項目在整個SDRAM中先調用Nios II系統功能,通過I2C協議確保所有的數據更快的傳輸。Qsys掛載PIO控制器以此來驅動GPIO的數碼管等外設;UART串口與協調器通信,獲取傳感器采集到的數據,同時得到每個節點的RSSI值;同時里面移植了一個HPS的ip核,保證了FPGA和ARM之間的通信。
系統中FPGA模塊主要完成圖像采集、圖像編碼、圖像緩存、圖像顯示、FPGA和HPS之間的圖像交互傳輸與控制信號交互、HPS側圖像分析、圖像編碼。整個圖像采集、顯示、寫入HPS側DDR3的數據流圖如圖1所示。系統使用了PAL制式輸出的CCD攝像頭采集圖像數據,由專用的PAL圖像編碼芯片ADV7180編碼得到ITUR656格式的圖像數據,然后在FPGA內部進行ITUR656圖像格式解碼得到YUV4:2:2格式圖像,然后將解碼得到的圖像數據送入SDRAM中進行緩存。另一方面,使用FPGA從SDRAM中取出緩存的圖像數據進行格式轉換,最終得到24bit的RGB圖像數據。根據絞股藍葉片顏色的灰度值范圍,濾除葉片以外的灰度值,統計葉片灰度值的點的個數,與原始圖片像素點的比值k,就可以得到該葉片在整個圖像中的大小。然后根據ZigBee傳輸的此葉片位置的RSSI的值,計算出此葉片的相對攝像頭的距離值,如公式(2)(3)所示。
結論:
本系統利用線性CCD攝像頭對絞股藍的葉片的圖像進行采集,移植FPGA2HPS高速橋,FPGA直接高速傳入數據到ARM的DDR3中,通過網絡將可執行文件傳送到 Linux,利用C語言算法的有效判別和分析,提取對應的RGB值提取對應的RGB值,通過中值濾波算法去除光照和陰影的影響,然后將RGB的值轉換為灰度值,提取出葉片顏色的范圍內的灰度值的像素點,求得葉片像素點與原始圖片像素點個數的比值。同時ZigBee通過傳輸的信號強度RSSI的值,通過算法計算得到每個節點到主控制器的距離值,就可以求得拍攝的每個葉片位置到攝像頭的距離,結合計算出的像素點比值與距離比值的函數,分析求得葉片的大小,為絞股藍生產狀態判定提供了基礎數據。