国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Android控制的智能澆花系統(tǒng)設(shè)計(jì)*

2020-08-26 05:14梁健權(quán)于鳳梅馮粵松
機(jī)電工程技術(shù) 2020年7期
關(guān)鍵詞:土壤濕度盆栽溫濕度

梁健權(quán),于鳳梅,馮粵松

(1.仲愷農(nóng)業(yè)工程學(xué)院自動化學(xué)院,廣州 510225;2.廣東廣信通信服務(wù)有限公司,廣州 510005)

0 引言

隨著科技的日益發(fā)展,人們的衣食住行愈加的智能化,智能家居這一概念意在提高人們的生活水平,自出現(xiàn)以來就廣受市場青睞,必定是未來人們居住環(huán)境的發(fā)展趨勢[1-3]?,F(xiàn)代人喜愛在家或者辦公室放置一些盆栽,以達(dá)到凈化空氣、美化環(huán)境的作用。但是隨著生活節(jié)奏的加快,人們無法有效地照料家里的盆栽。為解決這類問題,可以使用智能澆花系統(tǒng),傳統(tǒng)的基于單片機(jī)設(shè)計(jì)的自動澆花系統(tǒng)大多采用蜂鳴器報(bào)警,LCD顯示溫濕度等[4-6]??紤]用戶使用的靈活性和移動性,本文用應(yīng)用較為廣泛Android 移動終端代替?zhèn)鹘y(tǒng)的PC 終端,實(shí)現(xiàn)用戶使用Android移動終端對家居的盆栽實(shí)現(xiàn)環(huán)境監(jiān)測和澆花水泵控制。

本系統(tǒng)實(shí)現(xiàn)了用戶使用Android智能手機(jī)對盆栽實(shí)現(xiàn)監(jiān)測和完成自動澆水。由于不同的植物適合生長的溫濕度環(huán)境不一樣,用戶可以通過移動電話APP 設(shè)定盆栽的植物名稱和適合對應(yīng)植物生長的溫度和濕度上下限值。當(dāng)盆栽的土壤濕度低于它適合的濕度值時(shí),可以選擇自動或手動模式使水泵工作,增加土壤濕度;當(dāng)濕度達(dá)到該植物的濕度上限值時(shí),Android移動終端會收到預(yù)警提示,并控制水泵停止工作。

1 系統(tǒng)總體設(shè)計(jì)

該系統(tǒng)主要由澆花系統(tǒng)硬件設(shè)備端和移動控制端組成。系統(tǒng)架構(gòu)示意圖如圖1所示。澆花系統(tǒng)硬件設(shè)備端主要由電源電路、復(fù)位電路、單片機(jī)最小系統(tǒng)、土壤濕度電路、空氣溫濕度電路、WiFi 通信電路、繼電器驅(qū)動電路組成。移動控制端軟件為采用MVC 模式設(shè)計(jì)的Android移動APP。

圖1 系統(tǒng)總體架構(gòu)示意圖

2 硬件電路及程序設(shè)計(jì)

本設(shè)計(jì)使用的STC89C52RC 單片機(jī)具有40 個(gè)引腳,采用DIP40封裝。整個(gè)系統(tǒng)包括電源電路、復(fù)位電路組成的單片機(jī)最小系統(tǒng),然后進(jìn)行外圍電路的開發(fā)。土壤的濕度檢測利用YL69模塊得到濕度的模擬量,通過ADC0832模數(shù)轉(zhuǎn)換模塊將獲取的模擬量轉(zhuǎn)化成數(shù)字量傳入單片機(jī),構(gòu)成了一個(gè)土壤濕度電路;除了土壤的濕度監(jiān)測,本系統(tǒng)還增加了空氣的溫濕度檢測功能,采用DH-11 模塊;繼電器電路只要將對應(yīng)的正負(fù)極導(dǎo)通,控制線連接單片機(jī)的1 個(gè)I/O 口即可;1 個(gè)聯(lián)網(wǎng)的模塊,即WiFi模塊電路,只需要將對應(yīng)的正負(fù)極線和數(shù)據(jù)發(fā)送/接收線相接。圖2 所示為澆花系統(tǒng)的整體架構(gòu)示意圖,程序設(shè)計(jì)如圖3所示。

圖2 澆花系統(tǒng)整體架構(gòu)硬件設(shè)計(jì)示意圖

圖3 澆花系統(tǒng)整體架構(gòu)硬件程序設(shè)計(jì)圖

2.1 單片機(jī)最小系統(tǒng)

單片機(jī)作為一個(gè)電子器件系統(tǒng),這里采用USB 接口提供5 V 的電源,只需將電路圖中的VCC 接到正極,GND 接到負(fù)極即可。

如圖4 所示,導(dǎo)線連接在XTAL1、XTAL2 和GND 間所組成的電路為時(shí)鐘電路,XTAL就是外接晶振,時(shí)鐘電路由1個(gè)晶振和2 個(gè)30 pF 的電容器組成,晶振頻率采用最常見的11.059 2 MHz,以方便設(shè)置波特率。時(shí)鐘電路在單片機(jī)執(zhí)行指令時(shí)是至關(guān)重要的,它為單片機(jī)的各部分電路的正常工作提供驅(qū)動力。

圖4 單片機(jī)最小系統(tǒng)圖

與單片機(jī)RST 引腳連接的那部分電路就為復(fù)位電路,由于給單片機(jī)RST 引腳高電平持續(xù)2 μs 就可以實(shí)現(xiàn)復(fù)位。分析復(fù)位電路,單片機(jī)剛上電時(shí),電容充電,RST 處于高電平時(shí)間大于2 μs,單片機(jī)開始執(zhí)行程序,電容充電完畢,RST 引腳呈現(xiàn)低電平;當(dāng)按鍵彈起狀態(tài)時(shí),由于電容有隔直流作用,電路相當(dāng)于開路,RST 獲得低電平。按下按鍵,電路導(dǎo)通,RST變成高電平,單片機(jī)復(fù)位。

2.2 土壤濕度模塊電路

本設(shè)計(jì)使用YL-69 土壤濕度傳感器,該傳感器由敏感元器件與轉(zhuǎn)化電路構(gòu)成,當(dāng)外界的濕度出現(xiàn)變化時(shí),會改變傳感器內(nèi)部元器件的電阻值,電阻值的范圍一般為0~10 kΩ。當(dāng)電阻值變化,輸出電路的電壓也會跟隨變化。傳感器輸出端就是它的A0 管腳,但是輸出的是模擬量,單片機(jī)無法讀取,需要經(jīng)過A/D轉(zhuǎn)化模塊得到數(shù)字量供單片機(jī)讀取,圖5所示為該部分電路的接線。

圖5 土壤濕度模塊接線圖

2.3 空氣溫濕度模塊

空氣溫濕度電路使用DHT-11 溫濕度傳感器,DHT11 溫濕度傳感器與單片機(jī)的數(shù)據(jù)傳輸使用單總線協(xié)議,只需將2Pin 口與單片機(jī)的P3.7 口相接,并且通常需要外接一個(gè)上拉電阻。該模塊的使用電壓范圍在3.3~5 V 之間,電壓過高會導(dǎo)致傳感器燒壞,電壓過低導(dǎo)致數(shù)據(jù)傳輸丟失。該電路與單片機(jī)的接線方式如圖6所示。

圖6 空氣溫濕度模塊接線圖

圖7 WiFi模塊接線圖

2.4 WiFi模塊

考慮到本設(shè)計(jì)的可擴(kuò)展性,選擇采用WiFi模塊方便將系統(tǒng)升級為具有數(shù)據(jù)中轉(zhuǎn)服務(wù)端的遠(yuǎn)程監(jiān)控。在本設(shè)計(jì)中利用ESP8266 WiFi 模塊構(gòu)建無線AP 和Andriod 移動電話進(jìn)行雙向無線通信。如圖7 所示,把ESP8266 模塊的VCC、GND、CH_PD、TX、RX 分別接單片機(jī)的 VCC、GND、3.3 V 高電平、RXD、TXD 即可,通過單片機(jī)向ESP8266 發(fā)送一系列AT指令將ESP8266配置成AP模式,即以本模塊為熱點(diǎn),可實(shí)現(xiàn)移動電話連接后進(jìn)行局域網(wǎng)的無線控制。

3 Android程序設(shè)計(jì)

3.1 APP植物數(shù)據(jù)界面

智能澆花系統(tǒng)基于Android 系統(tǒng)開發(fā)建立智能澆花APP。作為設(shè)置植物數(shù)據(jù)界面程序的開發(fā),根據(jù)面向?qū)ο蟮木幊趟枷耄?],首先需要先自定義一個(gè)植物的類,通過實(shí)例劃分該類組織數(shù)據(jù)。界面空間方面,最外圍的布局采用LinearLayout 線性布局[8],在里面放置RecyclerView 控件和一個(gè)用于增加RecyclerView 中的Item 的按鈕控件,將Item 的數(shù)據(jù)正確地適配到RecyclerView 中,需要正確編寫對應(yīng)的適配器完成。數(shù)據(jù)界面如圖8所示。

3.2 硬件設(shè)備監(jiān)控界面

硬件設(shè)備監(jiān)控界面涉及到展示的UI控件設(shè)計(jì)和基于TCP/IP的Socket通信,在Android程序設(shè)計(jì)中關(guān)于界面的UI更新需要在主線程中完成,網(wǎng)絡(luò)連接等耗時(shí)的操作不允許在主線程中執(zhí)行。因此,需要新建線程接收下位機(jī)傳輸來的空氣溫濕度和土壤濕度的數(shù)據(jù),然后使用Handle 機(jī)制在線程之間傳輸數(shù)據(jù),將數(shù)據(jù)傳到主線程,最后實(shí)現(xiàn)UI 的更新。界面如圖9所示。

圖8 APP植物數(shù)據(jù)界面圖

圖9 APP植物監(jiān)控界面圖

3.3 數(shù)據(jù)增刪對話框

在 澆花APP 中加入植物數(shù)據(jù)增刪功能,可以對不同的植物設(shè)置不同的溫濕度上、下限值。設(shè)計(jì)自定義對話框,以相對布局作為最外層,里面添加對應(yīng)數(shù)值的存放編輯框,在最下方添加“取消”和“確定”的按鈕。自定義對話框如圖10所示。

3.4 Socket通信實(shí)現(xiàn)

本設(shè)計(jì)在Android客戶端中使用Socket套接字基于TCP/IP協(xié)議進(jìn)行開發(fā),即通信采用TCP方式,需要用到Streamsocket這個(gè)對象。客戶端代碼中首先給定IP 地址和端口2 個(gè)參數(shù),初始化1 個(gè)Socket 對象。獲取到Socket 對象實(shí)例后通過isConnected()方法查看是否成功連接到服務(wù)器。建立通信前需要先獲取Socket實(shí)例的流對象,然后通過I/O流操作把輸入流的數(shù)據(jù)讀取出來進(jìn)行相應(yīng)的處理,里面的數(shù)據(jù)就是服務(wù)器端傳過來的數(shù)據(jù)。如果是發(fā)數(shù)據(jù)給服務(wù)器則需創(chuàng)建輸出流對象,通過輸出流的write()方法發(fā)送數(shù)據(jù),之后記得使用flash()方法刷新數(shù)據(jù)。通信結(jié)束還需要關(guān)閉Socket實(shí)例和流對象。

由于Android系統(tǒng)中不允許將網(wǎng)絡(luò)請求等耗時(shí)的操作在主線程中執(zhí)行,當(dāng)想要連接服務(wù)器的時(shí)候就需要?jiǎng)?chuàng)建一個(gè)新的線程,在里面執(zhí)行網(wǎng)絡(luò)請求,然后通過線程間的通信將得到的數(shù)據(jù)返回到主線程。

圖10 APP數(shù)據(jù)增刪對話框圖

4 結(jié)束語

本智能澆花系統(tǒng)可以對盆栽植物的土壤的濕度及空氣溫濕度進(jìn)行實(shí)時(shí)監(jiān)測,用戶通過Android移動電話APP可以選擇自動或手動工作模式,控制水泵工作,按時(shí)按需完成澆水工作。在澆花APP 中用戶可以添加、刪除盆栽植物名稱,通過APP設(shè)定各個(gè)盆栽植物的溫濕度閾值。

本系統(tǒng)以單片機(jī)為下位機(jī)對硬件模塊進(jìn)行控制,以Android 智能手機(jī)作為上位機(jī)易于使用且方便。本設(shè)計(jì)成本低、實(shí)用性強(qiáng)、可拓展性高,本文的設(shè)計(jì)思想可應(yīng)用在水果等其他作物灌溉的自動化處理。

猜你喜歡
土壤濕度盆栽溫濕度
土壤濕度傳感器在園林綠化灌溉上的應(yīng)用初探
基于隨機(jī)權(quán)重粒子群優(yōu)化極限學(xué)習(xí)機(jī)的土壤濕度預(yù)測
基于AT89C51的數(shù)字型蠶用溫濕度計(jì)的設(shè)計(jì)
仙人掌盆栽
基于DSP的多路溫濕度監(jiān)測系統(tǒng)
基于51單片機(jī)控制花盆土壤濕度
盆栽
貴州喀斯特區(qū)域土壤濕度變化規(guī)律研究
基于溫濕度控制的天氣預(yù)測裝置
“丑八怪”的盆栽