摘 要:隨著現(xiàn)代生活節(jié)奏的日益加快,人們往往難以抽出足夠的時(shí)間照顧盆栽和寵物魚(yú),導(dǎo)致許多魚(yú)植因缺乏照料而死亡,造成了損失。魚(yú)植的自動(dòng)化管理問(wèn)題至今尚未得到系統(tǒng)性的研究和有效解決。針對(duì)上述問(wèn)題,設(shè)計(jì)了一款基于STM32的智能魚(yú)植一體化系統(tǒng),可采集環(huán)境溫濕度、水體溫度、土壤濕度和水體pH值等影響?hù)~(yú)植生長(zhǎng)的關(guān)鍵參數(shù)。此外,系統(tǒng)還搭載了ESP8266模塊,使用戶(hù)可以通過(guò)微信小程序獲取單片機(jī)向阿里云平臺(tái)發(fā)送的數(shù)據(jù)并遠(yuǎn)程操控本系統(tǒng),實(shí)現(xiàn)一鍵換水、一鍵喂食等功能。用戶(hù)隨時(shí)隨地都能通過(guò)這套系統(tǒng)遠(yuǎn)程照料魚(yú)植,保證魚(yú)植生長(zhǎng)環(huán)境的各項(xiàng)指標(biāo)正常。
關(guān)鍵詞:STM32;物聯(lián)網(wǎng);云平臺(tái);嵌入式;智能魚(yú)植系統(tǒng);微信小程序
中圖分類(lèi)號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-1302(2025)07-00-03
0 引 言
在我國(guó),種花養(yǎng)魚(yú)歷來(lái)被視為一種陶冶情操的方式。近年來(lái),越來(lái)越多的人會(huì)在家中、宿舍或辦公室養(yǎng)魚(yú)養(yǎng)花,在修身養(yǎng)性的同時(shí)也為生態(tài)環(huán)境保護(hù)、經(jīng)濟(jì)發(fā)展出一份力。但隨著城市生活節(jié)奏的加速,現(xiàn)代人照料盆栽和寵物魚(yú)的時(shí)間日益減少。不少年輕人會(huì)因?yàn)槌霾?、假期等難以避免的原因而疏于照料魚(yú)植,不少魚(yú)植因此而死亡,造成了損失。而魚(yú)植的自動(dòng)化專(zhuān)用設(shè)備長(zhǎng)期以來(lái)也沒(méi)有得到系統(tǒng)性的研究和普遍使用。智慧種植技術(shù)僅在農(nóng)業(yè)領(lǐng)域應(yīng)用面廣,在家庭盆栽的自動(dòng)控制管理中的應(yīng)用很少。農(nóng)業(yè)領(lǐng)域也存在選用的技術(shù)單一、科研智慧水平偏低、信息技術(shù)的資源數(shù)據(jù)耦合度不高等問(wèn)題[1],大多應(yīng)用體現(xiàn)在通過(guò)土壤濕度檢測(cè)來(lái)實(shí)現(xiàn)土壤灌溉控制。目前,我國(guó)市場(chǎng)上的智慧水族箱造價(jià)高昂,且只能進(jìn)行比較簡(jiǎn)單的飼喂和維持水溫的工作,無(wú)法對(duì)其余的環(huán)境指標(biāo)進(jìn)行控制,未達(dá)到完全智能化控制水平,導(dǎo)致在使用的時(shí)候仍存在局限[2]。
總體看來(lái),我國(guó)在智慧魚(yú)植一體化領(lǐng)域的研究仍不夠深入,智能化技術(shù)在農(nóng)業(yè)和水產(chǎn)業(yè)中鮮有應(yīng)用。特別是在家庭、辦公室、宿舍等環(huán)境中,能夠完全實(shí)現(xiàn)盆栽和觀賞魚(yú)智能化管理的設(shè)備寥寥無(wú)幾[3],即魚(yú)植的生長(zhǎng)依賴(lài)于人,無(wú)法實(shí)現(xiàn)“脫離雙手地種花養(yǎng)魚(yú)”。當(dāng)人們出差、度假或疏于照顧魚(yú)植時(shí),魚(yú)植往往面臨死亡的風(fēng)險(xiǎn)。而智能魚(yú)植一體化系統(tǒng)致力于解決這一問(wèn)題。本設(shè)計(jì)是一款基于STM32的智能魚(yú)植一體化系統(tǒng),使用傳感器獲取魚(yú)缸和盆栽的關(guān)鍵數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行處理和上傳手機(jī)端,依靠智能化產(chǎn)品的強(qiáng)大功能及時(shí)跟蹤魚(yú)缸內(nèi)情況,便于用戶(hù)提前做出相應(yīng)的操作,完善用戶(hù)體驗(yàn),使養(yǎng)魚(yú)這一消遣活動(dòng)更加符合現(xiàn)代年輕人的日常生活方式。
1 系統(tǒng)總體設(shè)計(jì)
本系統(tǒng)采取STM32F103ZET6單片機(jī)作為主控芯片,通過(guò)各種傳感器檢測(cè)環(huán)境數(shù)據(jù),實(shí)現(xiàn)對(duì)空氣溫濕度、土壤濕度、魚(yú)缸溫度、水體pH值等環(huán)境因素的檢測(cè)及魚(yú)缸自動(dòng)換水、魚(yú)缸控溫、盆栽自動(dòng)灌溉等控制。通過(guò)ESP8266連接阿里云服務(wù)器并通過(guò)手機(jī)微信小程序顯示環(huán)境數(shù)據(jù)及控制魚(yú)植一體化系統(tǒng)。本裝置總體架構(gòu)設(shè)計(jì)如圖1所示,主體涵蓋數(shù)據(jù)采集裝置、控制執(zhí)行裝置和無(wú)線通信裝置。其中數(shù)據(jù)采集系統(tǒng)包括:盆栽土壤濕度檢測(cè)模塊、盆栽空氣溫濕度檢測(cè)模塊、魚(yú)缸水體濁度檢測(cè)模塊、魚(yú)缸水體pH值檢測(cè)模塊??刂茍?zhí)行系統(tǒng)包括:盆栽自動(dòng)灌溉模塊、魚(yú)缸水體恒溫模塊、魚(yú)缸自動(dòng)喂食模塊、魚(yú)缸自動(dòng)換水模塊等。無(wú)線通信系統(tǒng)通過(guò)WiFi將單片機(jī)數(shù)據(jù)上傳至阿里云物聯(lián)網(wǎng)平臺(tái),并且通過(guò)手機(jī)微信小程序接收、轉(zhuǎn)發(fā)數(shù)據(jù),實(shí)現(xiàn)云平臺(tái)、單片機(jī)、智能手機(jī)三者聯(lián)調(diào)。此外,本系統(tǒng)還搭載串口屏。串口屏通過(guò)串口協(xié)議與單片機(jī)進(jìn)行通信,獲取單片機(jī)采集到的相關(guān)參數(shù),并且通過(guò)觸摸屏幕上的按鈕實(shí)現(xiàn)對(duì)單片機(jī)的控制,使用戶(hù)更好地獲取實(shí)時(shí)數(shù)據(jù)并對(duì)系統(tǒng)進(jìn)行監(jiān)控,實(shí)現(xiàn)人機(jī)交互。
2 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件包括主控制器模塊、傳感器采集模塊、無(wú)線通信模塊、顯示模塊、盆栽灌溉和魚(yú)缸換水模塊、喂食模塊、恒溫模塊。通過(guò)對(duì)以上各模塊進(jìn)行設(shè)計(jì),實(shí)現(xiàn)數(shù)據(jù)采集、數(shù)據(jù)顯示、數(shù)據(jù)傳輸、遠(yuǎn)程移動(dòng)端訪問(wèn)、遠(yuǎn)程控制下位機(jī)的功能,達(dá)到智能魚(yú)植一體化系統(tǒng)自動(dòng)監(jiān)控的目的。在用戶(hù)的單片機(jī)通信系統(tǒng)中,WiFi模塊起到了至關(guān)重要的橋梁作用。
2.1 主控制器模塊設(shè)計(jì)
采用STM32F103ZET6單片機(jī)作為主控制器模塊,其具有高穩(wěn)定性、低功耗、高性能等優(yōu)點(diǎn),能滿(mǎn)足本系統(tǒng)及時(shí)響應(yīng)、高效處理信息的需求[4]。主控制器模塊如圖2所示。
2.2 無(wú)線通信模塊設(shè)計(jì)
在本系統(tǒng)中選用ESP8266 WiFi模塊作為通信模塊,其配置過(guò)程簡(jiǎn)單高效,僅需通過(guò)發(fā)送AT指令即可完成。這款模塊具備6個(gè)引腳,除了電源和接地引腳外,只需將其RXD和TXD引腳與單片機(jī)的TXD和RXD引腳進(jìn)行連接,隨后便能通過(guò)AT指令實(shí)現(xiàn)數(shù)據(jù)的流暢傳輸[5-6]。無(wú)線通信模塊如圖3所示。當(dāng)模塊被設(shè)定為透?jìng)髂J綍r(shí),它能與服務(wù)器進(jìn)行穩(wěn)定可靠的網(wǎng)絡(luò)通信,從而極大地拓寬了單片機(jī)在物聯(lián)網(wǎng)和遠(yuǎn)程通信領(lǐng)域的應(yīng)用范圍。
2.3 魚(yú)缸恒溫系統(tǒng)設(shè)計(jì)
由于溫度傳感器需要沒(méi)入水中對(duì)魚(yú)缸水溫進(jìn)行檢測(cè),因此本系統(tǒng)選用帶探頭的液體溫度傳感器DS18B20。其抗干擾性強(qiáng),測(cè)試溫度的誤差非常小。DS18B20的溫度測(cè)量范圍為-55~125 ℃,工作電壓為5 V。而魚(yú)的普遍適宜溫度范圍為20~33 ℃,因此本溫度傳感器能夠滿(mǎn)足系統(tǒng)要求。當(dāng)水體溫度低于閾值時(shí),單片機(jī)會(huì)驅(qū)動(dòng)升溫裝置為水體加熱;為避免持續(xù)加熱使水溫過(guò)高而導(dǎo)致魚(yú)缸中的生物死亡,當(dāng)溫度加熱到額定溫度時(shí)系統(tǒng)會(huì)關(guān)閉升溫裝置[7-10]。
2.4 魚(yú)缸換水系統(tǒng)設(shè)計(jì)
由于魚(yú)缸中水體會(huì)隨著時(shí)間的推移而受到污染,進(jìn)而影響pH值和水體含氮量。pH值和含氮量的大小是魚(yú)類(lèi)健康生長(zhǎng)的關(guān)鍵因素。本系統(tǒng)選用pH值傳感器、濁度傳感器對(duì)魚(yú)缸水體進(jìn)行檢測(cè)。當(dāng)pH值或含氮量達(dá)到一定閾值時(shí),智能魚(yú)缸會(huì)進(jìn)行換水操作。換水操作由2個(gè)水位傳感器(H、L)和2個(gè)水泵(水泵A、水泵B)共同完成。水位傳感器的主要作用是實(shí)時(shí)傳輸水位信息到單片機(jī)中,達(dá)到某些數(shù)據(jù)閾值或用戶(hù)通過(guò)串口屏、手機(jī)微信小程序操作時(shí),則進(jìn)行換水操作。本系統(tǒng)采用非接觸式電容型水位傳感器,靈敏度自主可調(diào),工作電壓為5 V,安全可靠。在自動(dòng)換水系統(tǒng)中,兩個(gè)水位傳感器分別設(shè)置在魚(yú)缸外壁的高和低位置,它們的任務(wù)是監(jiān)測(cè)水位變化并向控制單元發(fā)送信號(hào)。當(dāng)換水操作被觸發(fā)時(shí),水泵A啟動(dòng)并且抽取魚(yú)缸中的水。隨著水位降低,首先觸發(fā)的是高位水位傳感器H,然后是低位水位傳感器L。它們相繼向單片機(jī)發(fā)出信號(hào),指示當(dāng)前的水位狀態(tài)。當(dāng)水位達(dá)到預(yù)設(shè)的下限時(shí),水泵A停止工作,水泵B開(kāi)始啟動(dòng),從儲(chǔ)水桶中抽水并補(bǔ)充到魚(yú)缸中,直到水位上升達(dá)到上限,此時(shí)水泵B自動(dòng)停止。這個(gè)過(guò)程就完成了一次魚(yú)缸的換水循環(huán)。換水示意圖如圖4所示。
2.5 魚(yú)缸喂食系統(tǒng)設(shè)計(jì)
通過(guò)固定SG90型舵機(jī)的機(jī)械臂與魚(yú)缸上壁的一個(gè)帶可轉(zhuǎn)動(dòng)圓片的小孔來(lái)作為喂食裝置,并且將投食瓶倒扣在小孔上方,讓投食瓶瓶口固定于小孔周?chē)?,挖去投食瓶瓶底以便添加魚(yú)食。當(dāng)沒(méi)有觸發(fā)喂食操作時(shí),粘連舵機(jī)機(jī)械臂的圓片完全覆蓋小孔,沒(méi)有魚(yú)食落入魚(yú)缸中;當(dāng)觸發(fā)喂食操作時(shí),舵機(jī)機(jī)械臂帶動(dòng)圓片旋轉(zhuǎn)一定角度,魚(yú)食投入魚(yú)缸中。數(shù)秒后舵機(jī)恢復(fù)初始狀態(tài)。投食裝置有三種觸發(fā)方式:通過(guò)微信小程序遠(yuǎn)程操控投食、串口屏操控投食、單片機(jī)定時(shí)器定時(shí)投食。
2.6 盆栽自動(dòng)灌溉系統(tǒng)設(shè)計(jì)
以單片機(jī)為核心,通過(guò)搭載高精度的土壤濕度傳感器,實(shí)現(xiàn)對(duì)土壤濕度參數(shù)的實(shí)時(shí)獲取與監(jiān)控。土壤濕度傳感器將采集到的土壤濕度數(shù)據(jù)傳輸至單片機(jī)進(jìn)行處理。當(dāng)單片機(jī)分析得出當(dāng)前土壤濕度低于預(yù)設(shè)的閾值,會(huì)立即啟動(dòng)預(yù)設(shè)的灌溉程序。在這一程序中,單片機(jī)會(huì)操控灌溉水泵開(kāi)始工作,向盆栽中輸送適量的水分。為了確保灌溉的均勻與適量,單片機(jī)在啟動(dòng)水泵后會(huì)進(jìn)行精確的計(jì)時(shí)。當(dāng)達(dá)到預(yù)設(shè)的灌溉時(shí)間后,單片機(jī)便會(huì)再次發(fā)出指令,使灌溉水泵停止工作。
3 系統(tǒng)軟件設(shè)計(jì)
使用C語(yǔ)言作為編程語(yǔ)言,在Keil μVision5上編程,以STM32F103作為主控模塊。通過(guò)多種傳感器獲取必要參數(shù),將檢測(cè)到的參數(shù)通過(guò)GPIO接口傳送到核心控制模塊中,內(nèi)部核心模塊將根據(jù)傳入的信息進(jìn)行相應(yīng)的操作。系統(tǒng)軟件設(shè)計(jì)流程如圖5所示。
當(dāng)系統(tǒng)上電后,單片機(jī)通電,核心控制模塊隨之啟動(dòng)。在驅(qū)動(dòng)程序初始化后,系統(tǒng)會(huì)執(zhí)行一系列初始化操作,包括初始化GPIO引腳模式、設(shè)置時(shí)鐘使能狀態(tài)、確定串口波特率以及初始化定時(shí)器等。初始化后,系統(tǒng)將循環(huán)判斷是否聯(lián)網(wǎng),直到系統(tǒng)成功聯(lián)網(wǎng)為止。然后系統(tǒng)的main函數(shù)開(kāi)始調(diào)用各個(gè)模塊工作所需的子程序,如pH值檢測(cè)子程序、判定水溫過(guò)高或者過(guò)低的子程序等,對(duì)系統(tǒng)中所有的傳感器所檢測(cè)到的信息進(jìn)行相應(yīng)的程序判斷,并在判斷后返回相應(yīng)的值,系統(tǒng)根據(jù)判斷程序的返回值執(zhí)行相應(yīng)的操作。系統(tǒng)中所有傳感器采集到的數(shù)值都會(huì)通過(guò)單片機(jī)搭載的LCD顯示屏和串口屏顯示給用戶(hù)。此外,本系統(tǒng)共有三種控制模式:分別是按鍵模式、串口屏人機(jī)交互模式、遠(yuǎn)程模式。當(dāng)程序正常運(yùn)行成功后,用戶(hù)可以通過(guò)串口屏與單片機(jī)進(jìn)行通信,如魚(yú)缸一鍵換水、一鍵投喂,盆栽一鍵灌溉、一鍵遮光等操作;也可以通過(guò)4×4矩陣鍵盤(pán)進(jìn)行上述操作。當(dāng)用戶(hù)距離本系統(tǒng)較遠(yuǎn)時(shí),可以通過(guò)手機(jī)微信小程序與本系統(tǒng)進(jìn)行連接,進(jìn)而進(jìn)行遠(yuǎn)程控制。微信小程序界面如圖6所示。
4 結(jié) 語(yǔ)
本系統(tǒng)基于STM32F103ZET6單片機(jī)設(shè)計(jì)了一款智能魚(yú)植一體化系統(tǒng),實(shí)現(xiàn)了魚(yú)缸的自動(dòng)恒溫、自動(dòng)換水、自動(dòng)喂食以及盆栽的自動(dòng)灌溉等功能,同時(shí)也實(shí)現(xiàn)了用戶(hù)遠(yuǎn)程控制的功能。該系統(tǒng)搭載串口屏可以更好地進(jìn)行人機(jī)交互,使用戶(hù)不管是出差還是度假,都可以通過(guò)本系統(tǒng)完成智能化種花養(yǎng)魚(yú),具有較高的市場(chǎng)價(jià)值。
參考文獻(xiàn)
[1]劉玉華.我國(guó)智慧農(nóng)業(yè)研究的現(xiàn)狀、問(wèn)題與發(fā)展趨勢(shì)[J].農(nóng)業(yè)經(jīng)濟(jì),2021(7):247-248.
[2]康榮顯,王勛.基于物聯(lián)網(wǎng)的魚(yú)缸智能控制系統(tǒng)研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2022(12):100-102.
[3]徐棟梁.基于物聯(lián)網(wǎng)技術(shù)的智能花盆的設(shè)計(jì)與實(shí)現(xiàn)[J].科學(xué)咨詢(xún)(科技·管理),2021,20(8):83-84.
[4]朱向慶,何昌毅,朱萬(wàn)鴻,等.基于STM32單片機(jī)的通信技術(shù)實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)[J].實(shí)驗(yàn)技術(shù)與管理,2019,36(8):81-84.
[5]李金武,宋新愛(ài).智能魚(yú)缸自動(dòng)控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].智能計(jì)算機(jī)與應(yīng)用,2020,6(3):284-287.
[6]邱義.基于STM32的智能魚(yú)缸遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)[J].信息技術(shù)與信息化,2020,27(10):230-232.
[7]何穎,唐幸洪,張法強(qiáng),等.多功能智能魚(yú)缸控制系統(tǒng)的研究與設(shè)計(jì)[J].電子制作,2019,55(21):45-47.
[8]曹益豪.基于單片機(jī)的智能魚(yú)缸溫控系統(tǒng)設(shè)計(jì)[J].機(jī)電信息,2019,15(11):11-12.
[9]劉偉,林開(kāi)司,劉安勇.基于物聯(lián)網(wǎng)的魚(yú)缸智能控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].淮海工學(xué)院學(xué)報(bào)(自然科學(xué)版),2016,25(4):1-4.
[10]向鎳鋅,郭平,曹旬.基于STM32智能魚(yú)缸監(jiān)控系統(tǒng)的設(shè)計(jì)[J].科技視界,2020,45(31):97-99.
收稿日期:2024-04-24 修回日期:2024-05-28
基金項(xiàng)目:2023年江蘇省大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃(2023141600 43Y)