3km無線模塊WiFi遠距離控制智能澆花系統設計
發布日期:2021-12-13
瀏覽次數:2844
3km無線模塊WiFi遠距離控制智能澆花系統設計,伴隨著科學技術的不斷發展,人們的衣食住行也越來越智能化,智能家居這個理念意在提高人們的生活水平,自出現以來,便受到市場的青睞,必然是未來人們居住環境的趨勢。現代人們喜歡在家里或辦公室擺放一些盆栽,起到凈化空氣、美化環境的作用。但隨著生活節奏的加快,人們不能有效地照顧家中的盆栽。針對這種情況,可采用智能澆花機,傳統的基于單片機設計的自動澆花系統多采用蜂鳴器報警,液晶顯示器顯示溫濕度等。鑒于用戶使用的靈活性和移動性,本文以較廣泛的Android移動終端取代了傳統的PC終端,實現了利用Android移動終端在家庭中進行環境監控和噴水控制。實現了用戶使用Android智能手機對盆栽進行監控并完成自動澆水。因為不同植物適合生長的溫、濕度環境不同,使用者可通過手機APP設定盆栽植物名稱及適宜植物生長的溫濕下限。在盆栽土壤濕度低于其適宜的濕度值時,可選用自動或手動方式,使泵運轉,提高土壤濕度;當濕度達到高濕度時,An-droid移動終端接收到報警提示,控制水泵停止工作。
由硬件設備端和移動控制端兩個部分組成。澆花機硬件設備端主要包括電源電路、復位電路、單片機小系統、土壤濕度電路、空氣溫度和濕度電路、3km無線模塊WiFi遠距離WiFi通訊電路、繼電器驅動電路。手機控制端軟件是基于MVC模式的Android手機APP。
用S單片機40針,用DIP40封裝。該系統由電源電路、復位電路組成的單片機小系統組成,然后進行外圍電路的開發。用Y模塊對土壤濕度進行模擬量測定,利用A模塊將所采集的模擬量轉換為數字量輸入單片機,組成土壤濕度電路,除監測土壤濕度外,還增加了空氣溫度和濕度檢測功能,使用D模組,繼電器電路只要有相應的正、負極導通,控制線路連接單片機1個I/O口,1個聯網模塊,WiFi模塊電路,僅需將相應的正、負極與數據發送/接收線相結合。
土壤濕度模塊電路本設計采用Y土壤濕度傳感器,該傳感器由敏感元件和轉換電路組成,當外部環境濕度發生變化時,將改變其內部元件的電阻值,其范圍通常是0~10kΩ。電阻值改變時,輸出電路的電壓也隨之改變。感應器的輸出端為A0管腳,但輸出的是模擬量,單片機讀不出來,需要通過A/D轉換模塊得到數字量給單片機讀出。
空氣溫濕度模塊空溫度濕度電路采用D溫濕度傳感器,D溫濕度傳感器與單片機之間采用單總線協議進行數據傳輸,只需在2Pin口與單片機的P3.7口接合,而且通常需要外部的上拉電阻。使用電壓范圍為3.3~5V,電壓過高會造成傳感器燒壞,電壓過低造成數據傳輸損失。
WiFi模塊考慮到本設計的擴展性,選擇采用
WiFi模塊,便于系統升級為帶有數據中轉服務端的遠程監控。通過3km無線模塊WiFi遠距離CV5200WiFi模塊,實現了無線AP與安卓手機的雙向無線通訊。將CV5200模塊的VCC.GND.CH_PD.TX.RX的VCC.GND.3.3V高水平.RXD.TXD.TXD.TX.RXD,3km無線模塊WiFi遠距離CV5200通過單片機發送一系列AT指令到CV5200,使CV5200成為AP模式,即該模塊作為熱點,手機連接之后可以實現對局域網的無線控制。
植物數據接口智能澆花系統基于Android系統的開發構建了一個智能澆花APP。在開發一個植物數據接口程序時,基于面向對象的編程思想,首先需要對一個植物類進行定制,并通過實例對組織數據進行劃分。接口空間方面,外圍布局采用LinearLayout線性布局,RecyclerView控件和一個用來增加Re在cyclerView中的Item按鈕控件,它可以將Item的數據適當地適配為RecyclerView,這要求相應的適配器完成編寫。
硬件設備監控接口硬件設備監控接口涉及到UI控件的設計以及基于TCP/IP的Socket通信的設計,Android程序設計中的接口UI更新需要在主線程中完成,在主線程中不允許執行網絡連接等耗時的操作。所以,新線程需要接收下位機傳送的空溫濕度和土壤濕度數據,然后用Handle機制在線程間傳送數據,把數據傳送給主線程,終實現UI的更新。
Data-Discovery對話方塊在澆花型APP中添加植物數據增刪功能,可對不同植物設定不同的溫濕度上限。將對話框設計成一個自定義對話框,其中包含相應數值的存儲編輯框,Cancel和OK按鈕位于底部。
Socket通信實現本設計利用TCP/IP協議在Android客戶端使用Socket套接字進行開發,也就是通信采用TCP方式,需要一個Streamsocket對象。在客戶機代碼中,首先給定IP地址和端口兩個參數,初始化一個Socket對象。在獲得Socket對象實例之后,通過isConnected()方法檢查服務器是否成功連接。在通訊之前,需要先獲得Socket實例的流對象,然后通過I/O流操作讀取輸入流的數據,并對其進行相應的處理,其中的數據是由服務器端傳遞的數據。對于服務器來說,您需要創建一個輸出流對象,該對象通過輸出流的write()方法發送數據,然后記得用flash()方法刷新數據。通訊也要求關閉Socket實例和流對象。因為在Android系統中不允許在主線程中執行網絡請求等費時的操作,當想要連接服務器時,需要創建一個新線程,在內部執行網絡請求,然后通過線程之間的通信將獲得的數據返回給主線程。
3km無線模塊WiFi遠距離智能澆花系統可實時監控盆栽植物土壤濕度和空氣溫濕度,用戶可通過安卓手機APP選擇自動或手動工作方式,控制泵工作,按時按要求完成澆水工作。用戶可通過APP在澆花APP中添加、刪除盆栽名稱,通過APP設置每個盆栽植物的溫濕閾值。Android智能手機是一種簡單易用的智能手機,采用單片機作為下位機來控制硬件模塊。該設計成本低,實用性強,擴展性好,可以應用于水果等其它農作物灌溉的自動化處理。