薛正寬,吳 晗,時寬樂
(山東石油化工學院,山東 東營 257061)
中國是一個農業(yè)大國,農業(yè)經濟占有重要地位[1]。而中國人口多,耕地少,氣候和土壤條件差異較大,傳統(tǒng)生物培養(yǎng)實驗分散,周期長,成本高。利用生物培育箱來進行物種的培育實驗,不僅可以通過多個實驗箱建立多個實驗環(huán)境同時進行物種的培育實驗并進行新物種的橫向對比,以大幅度縮減實驗周期,而且可以通過實現(xiàn)實驗箱的智能化,減少實驗人員的精力消耗并提升實驗效率[2]。但市面上的生物培育箱智能程度低,可控因素少,而智能程度高的培育箱價格過于高昂。近年來,互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等技術飛速發(fā)展,并被運用到農業(yè)生產中,數(shù)字農業(yè)和智慧農業(yè)得以迅猛發(fā)展[3-4]。本文旨在將多傳感器、發(fā)生器、控制器嵌入生物培育箱內,通過Arduino及物聯(lián)網(wǎng)平臺設計一種能夠實現(xiàn)細致化、智能化管理的智能生物培養(yǎng)系統(tǒng)。在提高智能化的同時,造價低廉,適用范圍廣泛,從而使生物的培優(yōu)和育種實驗周期短、投入小、效率高,促進中國農業(yè)智能化生產的進程。
在農業(yè)生產中,影響農作物生長的環(huán)境因素主要有溫度、光照強度、氣體濃度、土壤濕度等等,想要通過人工培養(yǎng)的方式對上述條件進行精確控制是非常困難的。本文提出的基于Arduino的智能生物培養(yǎng)系統(tǒng)則具有以下功能:①箱體內溫度的監(jiān)測及調控;②箱體內CO2濃度的監(jiān)測及調控;③箱體內光照強度的檢測及調控;④箱體內土壤濕度的檢測及調控;⑤將收集的數(shù)據(jù)傳輸?shù)桨⒗镌破脚_顯示;⑥提供手機APP,用于監(jiān)視和調控環(huán)境數(shù)據(jù)。
Arduino是一款使用簡單,集硬件、軟件環(huán)境于一身的開源開發(fā)平臺,旨在為智能硬件愛好者、交互藝術設計師和電子軟件工程師提供簡單易用的開發(fā)體驗。Arduino采用知識共享(CC)許可證,任何人都可以制作電路板的副本,并且擁有完善的軟件開發(fā)資源。
本文設計的智能生物培養(yǎng)系統(tǒng)采用Arduino UNO開發(fā)板,采用atmega328p微處理器,工作電壓5 V,輸入電壓7~12 V,數(shù)字輸入/輸出引腳14個(PWM輸出6個),PWM數(shù)字I/O引腳6個,模擬輸入引腳6個,閃存32 KB。
1.3.1 BME280傳感器模塊
BME280是一種環(huán)境傳感器,可以感應環(huán)境溫度、濕度和大氣壓力。它支持I2C和SPI接口,兼容3.3 V/5 V電平,完美適配Arduino UNO開發(fā)板;尺寸小,功耗低、精度高且穩(wěn)定性好,在本系統(tǒng)中主要用于監(jiān)測箱體內的溫度和濕度。
1.3.2 CCS811傳感器模塊
CCS811是一種數(shù)字氣體傳感器,集成了CCS811傳感器和8位MCU,用來檢測CO2和各種揮發(fā)性有機化合物氣體。其尺寸小,功耗低,靈敏度高,采用智能算法計算TVOC/eCO2數(shù)值,輸出I2C信號,直接與主系統(tǒng)通信,適用于環(huán)境監(jiān)測、物聯(lián)網(wǎng)等應用場景。在本系統(tǒng)中主要用于監(jiān)測箱體內的CO2濃度。
1.3.3 土壤濕度傳感器模塊
土壤水分傳感器用于判斷土壤的含水量,從而確定土壤的含水量。當土壤濕度傳感器插入土壤時,由于土壤含水量不同,土壤的阻力值也不同。三極管的底座提供大小不同的傳導電流。三極管集電極到發(fā)射極的傳導電流由基極控制,并在發(fā)射極的下拉電阻后轉換為電壓。在本系統(tǒng)中主要用于監(jiān)測箱體內的土壤濕度。
1.3.4 光敏電阻模塊
光敏電阻器用于檢測光照強度。其工作原理是基于內部光電效應,光線越強,電阻值越低。隨著光強的增加,電阻值迅速減小,亮電阻值可小于1 kΩ。光刻膠對光非常敏感。當沒有光線時,它顯示高電阻狀態(tài),暗電阻通常高達1.5 MΩ。在本系統(tǒng)中主要用于監(jiān)測箱體內的光照強度。
1.3.5 繼電器模塊
本系統(tǒng)應用的執(zhí)行器主要由水泵、排氣風扇、加熱板組成。土壤濕度低時水泵將進行工作,CO2濃度高時排氣風扇將會進行工作;箱體內溫度較低時,加熱板將進行工作。
1.3.6 Wi-Fi模塊——EMW3080模塊
本系統(tǒng)采用EMW3080嵌入式Wi-Fi模塊,最高主頻133 MHz,內置256 KB SRAM,2MFL ASH,3.3 V單電源供電。箱體內的數(shù)據(jù)將通過Wi-Fi模塊把數(shù)據(jù)傳輸?shù)桨⒗镌莆锫?lián)網(wǎng)平臺,數(shù)據(jù)將顯示在Web制作的網(wǎng)頁當中。用戶也可使用Wi-Fi模塊連接手機APP,通過手機APP對箱體內的環(huán)境數(shù)據(jù)進行監(jiān)控。各模塊控制圖如圖1所示。
圖1 各模塊控制圖
生物培育箱系統(tǒng)可以實時監(jiān)控箱體內的環(huán)境因素,系統(tǒng)框架如圖2所示。本系統(tǒng)由感知層、網(wǎng)絡層、平臺層和應用層組成。感知層利用傳感器對箱內的各種環(huán)境因素進行識別和收集;網(wǎng)絡層利用Arduino UNO進行傳感器數(shù)據(jù)的采集、處理及動作邏輯的執(zhí)行,由Wi-Fi模塊通過AT指令將數(shù)據(jù)通過公網(wǎng)傳輸?shù)皆破脚_端;平臺層負責數(shù)據(jù)的鑒權、接入和轉發(fā),利用阿里云的物聯(lián)網(wǎng)平臺將數(shù)據(jù)可視化及實現(xiàn)各組件之間的聯(lián)動;應用層負責結合具體的應用需求,在云平臺上對數(shù)據(jù)進行計算、處理、挖掘,實現(xiàn)智能化。
圖2 系統(tǒng)框架圖
在本系統(tǒng)中,利用Arduino UNO作為感知節(jié)點的核心部分,確保數(shù)據(jù)的準確及可靠,通過Arduino采集不同接口形式的傳感數(shù)據(jù),收集培育箱中的影響生物培育的各環(huán)境因素,并將采集到的數(shù)據(jù)上傳到主控板上,由Arduino模塊進行采集。數(shù)據(jù)采集后,由Wi-Fi模塊通過APP進行傳輸?shù)?,通過公網(wǎng)傳送到云平臺端,實現(xiàn)數(shù)據(jù)的轉發(fā)、處理等。云端將控制信號發(fā)回給主控板,Arduino模塊根據(jù)控制信號對執(zhí)行器進行控制,以達到控制箱體內環(huán)境的目的。
該系統(tǒng)的編程是在Arduino IDE編程軟件上進行的。系統(tǒng)的編程分為4個部分:數(shù)據(jù)采集、邏輯控制、數(shù)據(jù)云和命令響應。數(shù)據(jù)采集部分要將各種傳感器給出的參數(shù)轉化為直接可用的數(shù)字量;邏輯控制部分根據(jù)采集到的數(shù)據(jù)得到執(zhí)行器的動作;數(shù)據(jù)云部分將傳感器的狀態(tài)及執(zhí)行器的狀態(tài)上傳到物聯(lián)網(wǎng)平臺,通過物聯(lián)網(wǎng)對數(shù)據(jù)進行分析,若采集到的環(huán)境數(shù)據(jù)未達到設定的閾值,則通過物聯(lián)網(wǎng)平臺向控制板下發(fā)控制指令,通過指令響應這部分代碼對控制指令進行解析并響應。總體上本系統(tǒng)的程序應具有以下功能:①土壤濕度及與水泵的聯(lián)動。本編程部分是測量培育箱內的土壤濕度,并根據(jù)濕度進行與水泵的聯(lián)動。②溫度傳感器與制冷器和加熱片的聯(lián)動。本編程部分是測量培育箱內的溫度,并根據(jù)溫度進行與制冷器和加熱片的聯(lián)動。③光照傳感器與LED燈的聯(lián)動。本編程部分是測量培育箱內的光照強度,并根據(jù)光照強度進行與LED燈的聯(lián)動。④二氧化碳濃度傳感器與風扇的聯(lián)動。本編程部分是測量培育箱內的CO2濃度,并根據(jù)CO2濃度進行與風扇的聯(lián)動。⑤數(shù)據(jù)的上傳。本編程部分是通過AT指令將實驗箱的數(shù)據(jù)上傳到阿里云物聯(lián)網(wǎng)平臺。⑥對控制信息的響應。本編程部分對阿里云物聯(lián)網(wǎng)平臺下發(fā)的控制信息進行分析與響應。⑦運行狀態(tài)響應。本編程部分通過蜂鳴器展現(xiàn)程序當前運行的狀態(tài),響1聲為連接電源,連續(xù)響2聲為連上Wi-Fi,連續(xù)響3聲為連接到阿里云物聯(lián)網(wǎng)平臺。
系統(tǒng)總體流程圖如圖3所示。
圖3 系統(tǒng)總體流程圖
在Arduino IDE編程軟件上編寫完成后,連接電源,根據(jù)蜂鳴器確定設備已經連接到阿里云物聯(lián)網(wǎng)平臺,打開物聯(lián)網(wǎng)平臺進行測試。
溫度模塊測試。BME280環(huán)境檢測傳感器接數(shù)字端口A0,當溫度高于35℃時,接口2的繼電器開啟,空調開始運行,來達到降低實驗箱溫度的目的;當溫度低于35℃時,接口2的繼電器關閉,空調停止運行;當溫度低于20℃時,接口10的繼電器開啟,加熱片開始運行,來達到提高溫度的目的。
濕度模塊測試。土壤濕度傳感器接數(shù)字端口A1,當濕度傳感器數(shù)值高于900時,接口4的繼電器開啟,水泵開始運行,來達到增加實驗箱土壤濕度的目的;當濕度傳感器數(shù)值低于400時,接口4的繼電器關閉,水泵停止運行。
光照模塊測試。光敏傳感器接數(shù)字端口A2,當光敏傳感器數(shù)值高于400時,接口7、8、9的繼電器開啟,LED燈開始運行,來達到提高實驗箱光照強度的目的;當光敏傳感器數(shù)值低于200時,接口4的繼電器關閉,LED燈停止運行。
二氧化碳模塊測試。CCS811二氧化碳傳感器接數(shù)字端口A0,當CO2濃度數(shù)值低于800時,接口11的繼電器開啟,換氣風扇開始運行,達到降低CO2濃度的目的;當CO2濃度數(shù)值高于900時,關閉風扇。
Web端及APP端對箱體內數(shù)據(jù)信息的顯示。使用打火機靠近BME280環(huán)境檢測傳感器,APP端溫度欄顯示的數(shù)值提示,向土壤濕度傳感器澆水,APP端濕度欄顯示的數(shù)值降低,向CCS811二氧化碳傳感器呼出一口氣,APP端CO2濃度欄顯示的數(shù)值降低,打開手電筒指向光敏傳感器,APP端光照強度欄顯示的數(shù)值降低。
本文研究基于Arduino的智能生物培育箱,測試過程中通過阿里云物聯(lián)網(wǎng)平臺對采集到的數(shù)據(jù)進行實時監(jiān)控。測試結果表明,此系統(tǒng)可以對培育箱的環(huán)境數(shù)據(jù)進行準確的接收、顯示及處理。Arduino主控板能夠正常接收并執(zhí)行云平臺下發(fā)的指令,通過設定數(shù)據(jù)采集頻率,云平臺也會接收到培育箱內最新的環(huán)境因素,用戶可以在Web及APP上隨時查看培育箱內最新的環(huán)境因素,并對環(huán)境進行控制。
本文通過Arduino及物聯(lián)網(wǎng)技術,設計了一種智能生物培育系統(tǒng),利用生物培育所需的環(huán)境模型,實現(xiàn)對箱內環(huán)境的實時采集、顯示和智能控制,從而保證生物培育實驗的高效進行,并確定生物最佳培育環(huán)境運用于實踐中,在提高培養(yǎng)效率的同時降低成本及工作強度。本系統(tǒng)具有數(shù)據(jù)穩(wěn)定性強、造價成本低、通訊距離遠等特點,提高生物培優(yōu)育種效率的同時降低成本及工作強度,對于智慧農業(yè)有一定的推動作用。