王棟,夏郅,金馬
(蘇州工業職業技術學院,江蘇蘇州,215104)
有研究表明對于一般適合家養的喜光花卉的生長不但需要特定的光譜,還要長時間的光照,而燈光所能給到的光譜有限,即使是全光譜的燈相比真實的光照還是有所差別,燈光的照射只起到一部分輔助作用。太陽光和燈光照射植物,都會對植物有利,但是效果是不同的。燈光養出來的植物過于脆弱而鮮嫩,類似于拔苗助長,過于嬌嫩。而太陽光照射的植物外表結實而且生命力頑強[1]。燈光溫度也遠遠低于太陽光照射的溫度,可被吸收的可見光較少。滿足不了植物的正常生長需要。植物需要光來進行光合作用,主要是將光中的能量轉換為生物能貯存起來[2]。長時間光照是有利于植物快速生長的。
本文是為了讓培育花卉更高效,更便捷,更環保讓主人更加省心的一款灌溉,溫控,防護,娛樂一體的智能綠植培育系統。
圖1 為系統的框圖設計。以STM32F103 作為主控芯片。追光系統會根據綠植周圍光照強度進行對比,再通過單片機控制電機模塊轉動,直到周圍光照強度相同且正對植物,隨著太陽光的落下,綠植跟隨轉動。單片機通過傳感器對周圍環境的溫度,濕度,土壤溫度,土壤濕度進行收集,然后進行相應閾值的動作,如土壤溫度超過植物適宜的溫度時水泵的啟動,空氣溫度過高,或空氣濕度過低時噴霧的開啟。

圖1 系統設計框圖
智能綠植培育系統是以STM32F103 為核心的控制器件,主要包括一鍵下載電路、預留串口下載、降壓電源電路、雙晶振電路、WiFi 電路、溫濕度模塊、土壤溫濕度模塊、ESPWiFi 模塊、追光電路、加濕霧化電路、繼電器電路、七針OLED 顯示屏等。如圖2 所示。

圖2 系統總硬件電路圖
晶振則為系統提供基本的時鐘信號。通常一個系統共用一個晶振,便于各部分保持同步。有些通信系統的基頻和射頻使用不同的晶振,而通過電子調整頻率的方法可以保持同步,見圖2 晶振電路。
HSI(內部振蕩電路)能夠在不需要任何外部器件的條件下提供系統時鐘。最高內部時鐘可達72MHz,它的啟動時間比HSE 晶體振蕩器短。然而,即使在校準之后它的時鐘頻率精度仍較差。
8MHz 晶振提供外部高速時鐘(HSE),用于提供更精確的系統時鐘。32.768kHz 晶振提供外部低速時鐘(LSE),為精確定時服務,可用于RTC 電路時鐘源,可為低功耗提供計時。
本文采用AMS1117-3.3 的三端穩壓器,見圖2 降壓電路。常用于提供3.3V 的穩定電壓。該穩壓器的最大輸出電流為1A,可以應用于各種電子設備中,如電源電路、充電器、調節器等。有三個引腳,其中輸入電壓為VIN,輸出電壓為VOUT,地為GND。在輸入電壓在6.5V~12V 范圍內,該器件能夠提供穩定的3.3V 輸出電壓。
ESP8266 在WiFi 模式時常用三種功能,STA 模式(需要外來WiFi 提供接入),AP 模式(釋放WiFi):ESP 模塊作為接入點讓其他設備連接WiFi 熱點,STA+AP(兩者兼顧),使用ESP 一般用到RX,TX 聯合串口助手查看是否連接成功,或用AT 指令判斷ESP 是否正常。本文采用STA 模式,讓ESP 模塊作為終端,使得在同一局域網內的設備可以上云,訪問服務器等。從而實現通訊。見圖2 中ESP8266 WiFi 電路,WiFi 電路接口對應PA2,PA3 引腳。
考慮到實際采集情況,需要采集外部數據,需要引出便采用排母代替,見圖2。采用模塊直插,只需保留所要使用的IO 口與模塊引腳一一對應即可。如DHT11 的DAT 腳接PB11,土壤溫濕度的AO 腳接PA4,繼電器電源接PB0。
霧化器原理類似超聲波震蕩打碎水滴通過霧化片形成霧氣,簡易的霧化器可由:電源,霧化片,電位器用于調節功率,振蕩電路由功率三極管和外圍電容電感組成三點式振蕩電路超聲波模塊等組成。超聲波模塊通過耦合電容加跨接在三極管基極和電源之間。振蕩電路激勵后產生振蕩,這個振蕩信號又通過耦合電容反饋到振蕩管基極,通過主控板控制發出的PWM 波使振蕩電路諧振在霧化片的固有頻率,電壓越高霧化量越大(在霧化片本身耐壓內)。通過調節電位器改變三極管基極電流(電壓)來改變霧化片兩端的電壓,從而改變功率及霧化量。
按照“電上花開”智能綠植培育系統的研究與設計的設計目標,要對系統軟件程序設計主要有以下幾點,分別為:STM32F103 主控板的初始化,WiFi 初始化OLED 顯示初始化,電機控制程序,空氣溫濕度初始化,土壤濕度初始化等。
在程序設計方面,需要讀取光傳感器的模擬信號,并進行模擬信號到數字信號的轉換,同時根據光強度的大小來計算控制電機轉動的值。如圖3 所示。電機的轉動可以使用IO 口控制實現。

圖3 追光程序設計圖
本文先對定時器,ADC 采集,IO 口初始化。再通過主控板對光照模塊進行光照采集(30 次左右)取其平均值,通過ADC 轉換采集電壓將光信號轉換為電信號,從而對比判斷光強度,通過定時器中斷決定高電平給電的時間,控制電機的正反轉以及停止。
超聲波震蕩是指利用超聲波的高頻聲波產生振蕩,超聲波是指頻率為20MHz~50MHz 左右的聲波,它是一種機械波,需要介質來進行傳播,加濕霧化器通過霧化片為載體形成霧化。一般霧化片在108kHz 的頻率進行震蕩即可。
通過DHT11 傳感器采集檢測空氣的溫濕度再與設定的閾值進行對比讀取濕度傳感器的數值,計算與目標濕度值之間的誤差。根據誤差值,控制加濕器的開關狀態,從水箱中送水到霧化器中。控制霧化器的開關狀態,將水霧化成細小顆粒的水汽。檢測加濕器工作時間是否超過設定時間,如果超過則自動關閉加濕器。如圖4 所示。循環執行以上步驟,保持空氣濕度在合適的范圍內。

圖4 加濕軟件程序設計流程圖
(1)創建設備:在ONENET 云平臺上創建一個設備,得到設備的設備ID 和設備APIKey。(2)下載SDK:從官方網站上下載適用于自己開發環境的EDP SDK,可供C、Java、Python 語言使用。(3)初始化SDK:按照SDK 提供的接口,初始化EDP SDK,并指定ONENET 云平臺的服務器地址和端口號。(4)建立連接:使用SDK 提供的API,傳入設備的設備ID 和設備APIKEY,建立設備與ONENET 云平臺的連接。(5)發送數據:使用SDK 提供的API,發送設備數據到ONENET 云平臺。(6)接收指令:使用SDK 提供的API,接收來自云平臺的指令,并進行相應的處理。總的來說,使用EDP 連接方式,需要開發人員在設備端配置相應的EDP SDK,并按照SDK 提供的接口,實現設備與平臺之間的雙向交互。如圖5 所示。
根據課題設計,可以實現綠植的密封性,追光轉動行程良好,可以按照溫度、濕度來嚴格控制給水主要用到的是土壤溫度、濕度傳感器,如果傳感器檢測溫度、濕度都達不到規定的要求,就開始澆花,達到了規定的溫度、濕度就停止澆花。該系統既能按時、按量地給花卉澆水,還可以為節約水資源,從而讓花卉更好的生長。
ESP8266 模塊和MCU 核心板連接方式是RX 對TX,TX 對RX,RST 接IO 口是低電平復位,并使用 AT 指令配置ESP 的WiFi 模塊的初始化。底層通過USART1 串口通信對ESP8266 發送控制命令數據,在通過USART2 接收數據來實現數據交互。ONENET 平臺與底層通信需要一致的設備ID 和秘鑰KEYID,APP 通過ESP8266 的WiFi 連接底層,已達到可以遠程控制外部電路裝置用于實現功能。
在底層中寫入串口數據輸出,通過com 串口助手觀察輸出數據是否正常如圖6 所示。通過觀察顯示(1)ONENET 初始化INIT 為設備ID,APIKEY,對應成功,連接完成;(2)ESP8266 初始化完成,AT+CIPMODE=0 關閉透傳;(3)通過局域網(外部熱點)顯示固定的WiFi名稱,密碼連接完成顯示固定地址;(4)再一次檢查WiFi和NET 連接完成顯示OK;(5)顯示外部采集數據(溫濕度,土壤溫濕度,光照值)。

圖6 WiFi 串口調試
通過示波器測量三極管的基級,設定占空比為0.15%,在觀看PWM 值,觀看到波形存在毛刺,應該是PWM 存在過沖現象,一般串合適阻值的電阻即可改善情況。如圖7 所示。

圖7 示波器測量圖
云平臺可以向設備下發相關指令,實現設備的控制和配置。指令下發前首先需要創建指令,指定指令名稱和格式等相關信息。設備連接上平臺后,可以通過API 獲取指令并進行處理。設備在接收到指令后,需要按照指定的格式解析指令內容并執行相應操作。如圖8 所示。

圖8 下發數據
智能綠色植物培育的出發是為了用戶長時間不在家或者沒有養殖這方面的知識,能夠放心地將植物留存在家和便捷地養殖植物,不至于使植物出現枯萎腐爛的現象。
此項目設計基于ONENET 云平臺APP。云平臺操作簡單,項目功能齊全,用戶只需要在安卓系統所在的手機、平板、PC 端訪問網址能夠控制觀察到植物培育系統的狀態。
此項目搭建了與云平臺的數據通信。使用云平臺的多協議接入,可以構造能夠自己生活的智慧機器。
此項目設計制作了STMF103MCU 主控板,引出所需要的IO 口,由于功能操作與實際,部分電路沒有進行集成,引進太陽能供電,實現節約供電,使電路能長時間工作。
本設計主要是對“電上花開”智能室內花盆培育系統的研究與設計。利用單片機控制整個系統智能化,且實現一定功能,使花盆可以形成自我養護,相對地減少養花小白的負擔,但養花還是需要人為的關懷和照料,不能完全相信電子產品的功能。可應用于家居,辦公室,學校、展廳等,來美化環境。本設計的功能目前存在追光的不穩定性,沒有遠程控制的功能,希望在往后的學習中可以有新的突破,完善好本設計以達更智能,更人性化。