樊星 馬國禎 邱雪瑩 毛辰



摘要:文章設計了一款多功能的花卉傳感器,實現了對花卉生長環境的檢測和狀態反饋。系統可利用按鍵對花卉類型進行選擇,通過多款傳感器對花卉生長過程中的土壤濕度信息、溫度信息和光照強度信息進行采集,并利用Beetle微型控制器進行數據處理,最后通過呼吸燈對狀態進行反饋。
關鍵詞:Beetle微型控制器;呼吸燈;晝夜平均;花卉傳感器;花卉生長 文獻標識碼:A
中圖分類號:TP212 文章編號:1009-2374(2016)18-0030-02 DOI:10.13535/j.cnki.11-4406/n.2016.18.016
伴隨著生活節奏的加快,以上班族為代表的都市快節奏人群沒有時間去學習如何照顧各種不同的植物,因此需要一種方便小巧的智能設備來幫助提醒或者替代人們去照顧植物。國內外目前同類型的相關研究較多,但多數集中在對土壤濕度的檢測而忽略了對光照和溫度信息的采集,采集信息單一。而且系統多以澆花裝置為核心,土壤濕度傳感器作為輔助模塊。對大多數長期在家的用戶而言,澆花裝置不是必選項,只需準確把握植物的澆水時機即可;其次這樣的系統存在體積較大的問題,使用過程中占用花卉的生長空間不利于花卉的生長。我們所設計的基于Beetle微型控制器的多功能花卉傳感器系統,是以土壤濕度檢測為主,光照、溫度檢測為輔的多功能傳感器。系統實現了對于花卉環境信息的采集和處理,并利用呼吸燈指示狀態。由于采用微型控制器和微型傳感器,系統體積小巧,使用過程中占用花卉生長空間小。同時,系統可單獨使用,也可多個系統搭配一個自動澆花裝置,實現對多盆花卉的管理。
1 總體設計
該系統以Beetle微型控制器為核心,采用紐扣電池供電。系統包含有土壤濕度、溫度、光照信息的數據采集模塊,三色呼吸燈的狀態指示模塊,按鍵的花卉類型選擇模塊和用于與澆花裝置連接的串口通信接口。系統開機后進行初始化,通過統計按鍵次數選擇不同花卉類型,修改三種信息的觸發閾值。初始化結束后定期采集花卉所處環境的三種狀態信息,通過單片機進行修正計算后和所選花卉的標準環境狀態對比。若發現其中一項或多項數據不滿足花卉的最低生存標準則對應顏色LED燈通過PWM波驅動按呼吸燈方式點亮,實際數據偏離標準越遠則PWM波周期越短,呼吸節奏越急促。在連接有澆花裝置的情況下,若土壤濕度信息低于閾值,在點亮對應顏色呼吸燈的同時通過串口通信模塊向澆花裝置傳遞缺水信號。
2 硬件設計
2.1 Beetle微型控制器
Beetle是Arduino Leonardo的極簡版本,具備和Leonardo類似的強大應用能力。該控制器體積小巧(20mm×20mm),常用于微小系統的構建。其擁有PWM接口、數字接口、模擬輸入接口、串口通信接口等多種接口,可搭載多種類型的外設。Beetle的端口功能見表1:
2.2 數據采集模塊
數據采集模塊主要由Moisture Sensor土壤濕度傳感器、LM35線性模擬溫度傳感器和LX1972模擬環境光線傳感器三款傳感器組成,分別負責采集植物的土壤濕度、溫度和光照強度信息。三款傳感器的結構和接口類似,包含有VCC、GND和OUT三個接口。其中三個傳感器的OUT分別與Beetle的A0、A1和A2相連。傳感器采集到的數據信息由OUT口以模擬量的形式輸出,Beetle的模擬端口通過10位ADC將模擬信息轉換為數字量進行計算。
以Moisture Sensor土壤濕度傳感器為例闡述其工作原理,土壤濕度傳感器是以判斷土壤中水分含量的多少來判定土壤的濕度大小。使用時將土壤濕度傳感器插入土壤中,兩探頭之間的土壤存在電阻值,電阻值大小和土壤濕度相關,土壤濕度越大則阻值越小。如圖3所示,當土壤濕度傳感器探頭懸空時,三極管基極處于開路狀態,三極管截止輸出為0;當插入土壤中時由于土壤中水分含量不同,土壤的電阻值就不同,三極管的基極就提供了大小變化的導通電流,三極管從電極到發射極的導通電流受到基極控制,經過發射極的下拉電阻后轉換成電壓由OUT輸出。Beetle控制器通過A0模擬輸入端口讀取電壓信息,通過10位ADC轉換后進行計算。
3 控制方式及優化
3.1 工作原理
系統開機以后,9、10和11口拉低熄滅LED燈。進行初始化需要對花卉的類型進行選擇,同時按下SW1和SW2按鈕則進入花卉類型選擇狀態,9、10和11口拉高點亮LED燈表示進入選擇狀態。SDA和SCL口統計下降沿的數量進行計數,連續5s內無下降沿信號則認為選擇結束,熄滅LED燈。通過計數判斷所選擇的花卉類型,不同類型花卉的生長需求已提前置入,系統在判斷出花卉類型后通過查表獲得數據,并修改相關的觸發閾值。初始化結束后,打開中斷進入循環掃描狀態。計時器每隔一定時間觸發一次中斷,中斷服務程序中讀取各個傳感器的數據并存入保存,采集到的數據每隔24h清空一次。
例如當檢測到的濕度信息不滿足花卉生長需求時,根據實際值和標準值差值,向A0口輸出不同周期,占空比循環增大和減小的PWM波。差值越大,PWM波的周期越短,呼吸節奏越急促。對應顏色LED燈按照一定節奏漸亮漸滅,向用戶指示狀態。
如果連接有自動澆花裝置,則在點亮LED燈的同時通過TX和RX與澆花裝置溝通,向澆花裝置傳遞澆水信號,澆花裝置在接收到缺水信號后,打開水泵對花卉進行一次少量的澆水隨即關閉水泵。澆水結束后與系統溝通,系統隨即再次檢測土壤濕度信息,若檢測到花卉依舊缺水則重復上述操作,若檢測到土壤濕度滿足花卉生長需求則不再向自動澆花裝置發出澆水請求。該控制方式可適應不同大小花盆,避免澆水過量導致水溢出和影響花卉生長。對于光照強度的檢測不同于土壤濕度和溫度的檢測方式。若光照強度不滿足條件則指示用戶,會造成夜晚的時候系統不斷地提示光照不足。采取的解決方案為,儲存系統一晝夜所采集的所有光照強度,每隔24小時對所采集的所有光照強度信息進行加權平均后判斷花卉所處環境是否光照充足。
3.2 提高檢測靈活性
如果傳感器按固定周期采集數據的方式過于單一,兩次采集之間存在明顯的空白期,會導致數據采集的靈活性不足。通過對數據的分析靈活的調節檢測的頻率可以很好地解決問題,下面以搭配澆花裝置時的土壤濕度檢測為例解釋工作原理。設置花卉生長的土壤濕度下限和預警線,預警線高于其濕度下限。土壤濕度伴隨時間增長不斷下降,高于的預警線時以較慢頻率進行檢測,達到預警線后提高檢測頻率,低于土壤濕度下限后繼續提高檢測頻率并報警指示。實際過程中存在有多條不同級別的預警線,實際土壤濕度越接近濕度下限則檢測頻率越高。
4 結語
本設計以Beetle微型處理器為核心構建了一套集數據采集、數據處理和狀態響應為一體的多功能花卉傳感器系統,實現了對花卉生長環境的感知和報警。系統本身可單獨工作用于提醒用戶及時呵護花卉,也可搭配自動澆花裝置實現對植物的無人看護。目前已經制作成實物,實物體積小巧,造型美觀,具有較大的市場潛力。目前存在的主要問題是:Moisture Sensor土壤濕度傳感器的探頭只能插在土壤表層,僅能獲得淺層土壤的濕度信息,該信息不能直觀反映整體的土壤含水水平。后續的主要工作將集中在通過達西定律建立合理的數學模型,找到表層土壤濕度信息和土壤整體含水水平的關系,進一步提高檢測精度。
參考文獻
[1] 趙麗,張春林.基于單片機的智能澆花系統設計與實現[J].長春大學學報,2012,22(3).
[2] 張兆朋.基于AT89S52的家庭智能澆花器的設計[J].電子設計工程,2011,19(5).
[3] 程捷,何晨.基于單片機的溫濕度檢測系統設計與實現[J].儀表技術,2011,(6).
[4] 王守中,聶元銘.51單片機開發入門與典型實例[M].北京:人民郵電出版社,2009.
[5] 程晨.Arduino開發實戰指南[M].北京:機械工業出版社,2012.
作者簡介:樊星(1995-),男,寧夏固原人,西北工業大學機電學院本科學生,研究方向:機械電子工程。
(責任編輯:黃銀芳)