賴瑞鏹



摘 要:為了提高養魚的成活率及便捷性,設計一種應用物聯網的智能生態水族箱。該智能生態水族箱以Arduino UNO R3為主控板,利用溫度、光照、水位等傳感器檢測水族箱狀態,使用ESP-8285 WiFi模塊傳輸數據,實現PC端、手機端遠程監控。下位機各傳感器檢測水族箱情況,通過ESP-8285 WiFi模塊將數據實時傳輸到貝殼網平臺。用戶可登陸PC端、手機端查看數據。當檢測的數據超過或者低于預設值,下位機發送報警信號,系統終端接收到信號,用戶可對水族箱進行干預。
關鍵詞:物聯網;Arduino;水族箱;遠程監控;成活率;WiFi
0 引 言
水族箱和觀賞魚越來越被人們喜歡,也逐漸成為現代家庭的一種時尚、一種新寵。但在養魚時會經常出現換水不及時、水溫過高等情況導致觀賞魚的成活率減低。同時隨著智能技術不斷在智能家居中應用,水族箱的智能化得到不斷提高。但是現在市場上已有的水族箱功能都較簡單,例如定時喂食功能;而且很多功能都是非常分散的,需要用戶自行組裝[1]。根據這些情況設計了一種應用物聯網的智能生態水族箱。通過ESP-8285 WiFi模塊傳輸下位機檢測到的環境溫度、水溫、光照度等參數,并將參數實時上傳到貝殼網平臺,用戶可登錄PC端、手機端、微信小程序查看實時和歷史數據;下位機顯示屏顯示時間和數據。系統接入天貓精靈可通過語音控制系統的水循環來增加水溶氧量。
1 系統總體設計
智能生態水族箱下位機以Arduino UNO R3為主控板,包含:水循環控制模塊、水位、水溫、環境溫度、大氣壓強檢測模塊、光照度檢測模塊、顯示模塊。系統總體設計框圖如圖1所示。
2 硬件設計
2.1 水溫檢測模塊
大多數的熱帶觀賞魚適合的溫度最好控制在22~28 ℃,水溫的驟變會導致魚患感冒,因此實時監測水族箱水的溫度是很重要的。本系統檢測水族箱溫度采用的是DS18B20數字化溫度傳感器;該傳感器的探頭采用導熱性高的密封膠灌封,保證了溫度傳感器的高靈敏性[2]。探頭采用優質不銹鋼管封裝具有防水、防潮、防生銹等特點。該傳感器在-10~85 ℃范圍內精度為±5 ℃,適用于觀賞魚生存溫度的檢測。DS18B20以單總線協議工作,傳感器工作原理如下:單片機發送復位脈沖信號,DS18B20芯片復位,接著發送ROM命令,DS18B20進入內存訪問命令狀態,啟動溫度轉換,溫度轉換完成后;發送RAM命令讀取溫度,單片機讀取到RAM中0,1字節完成溫度檢測。傳感器采用獨特的接口方式—單線,即DS18B20傳感器與單片機進行通信時只要一條數據線即可。因此傳感器與單片機之間的連接只需一條數據線再加上VCC和GND即可。傳感器單線通信不僅提高了系統的抗干擾性也減少了I/O口的占用。
2.2 水位檢測模塊
保證水族箱里的水位是智能水族箱重要檢測指標之一,有足夠的水才能保證魚有足夠的活動空間。水位檢測采用的是HC-SR04超聲波測距傳感器。HC-SR04 超聲波測距模塊是一款非接觸式的測距傳感器,可測量范圍為2~400 cm,測量范圍可通過模塊上的電阻進行調節。模塊中電阻越大測量距離越遠,探測角度也越大,最大探測距離為7 m。為了保證探測距離的精度,一般電阻調節范圍為20~75 kΩ,其測距精度可高達3 mm。模塊具有工作電壓寬、頻率高、波長短、方向性好等特點。整個模塊包括超聲波發射端、接收端和控制電路3個部分[3]。單片機輸出一個10 μs以上的脈沖觸發信號(TTL電平),模塊中的發射端連續發出8個40 kHz周期的脈沖信號。當脈沖信號到達水面時信號返回,接收端檢測到回波信號輸出回響信號;接收到的回響信號的脈沖寬度與測量的水位(距離)成正比。因此通過檢測發出脈沖信號到檢測到回響信號的時間間隔t,即可通過公式計算得到水位[4]。超聲波的測量水位計算公式如下:
由式(1)可計算得到水位的高度。當水位低于設定值時下位機發送報警信號,同時報警信號通過貝殼網平臺發送到設備端提醒用戶及時添加水,保證有足夠的水位。
2.3 光照度檢測模塊
萬物生長靠太陽的說法,對于觀賞魚也是一樣;足夠的光照不僅能促進魚的新陳代謝,還有利于自來水中氯氣的揮發,也能殺死水中的有害菌。光照度檢測模塊能夠實時檢測水族箱所處環境光照強度;當光照強度低于水族箱所需時下位機開啟光源,提供足夠的光照促進魚和水草的生長。本設計檢測光照度傳感器采用的是BH1750傳感器,它是一種通用的光照度檢測模塊,內置16位模/數轉換電路[5];可直接數字輸出,減少不必要的計算,接近于視覺靈敏度的分光特性;能夠測量較大范圍的光強度變化,測量光照度范圍為1~65 535 Lux,測量精度[6]可達1 Lux。通過降低功率功能,實現低電流化,傳感器模塊不易受到紅外線的影響。
2.4 水循環控制模塊
氧氣是魚在水中生存的重要一個元素,充足的氧氣能提高觀賞魚的成活率。在不借助外部條件的情況下換水和水面與空氣的接觸以及水族箱中水草生物是氧氣的主要來源,但這些提供的氧氣并不多,因此為了增加水的溶氧量在水族箱的內部安裝一個氣泵;該氣泵能將水抽送到水面上方再流進水族箱,水在流動過程中增加與空氣接觸增加了氧氣。本系統氣泵采用的立式迷你直流電機;直流電機的供電電壓為4.5 V。水循環的控制由單片機執行,由于單片機輸出口的電流較小無法直接驅動直流電流,因此在電機與單片機之間添加驅動電路。
當下位機接收到打開水循環開關的信號時,下位機輸出口輸出高電平,NPN型三極管處于導通狀態,水泵中的直流電機轉動;當接收到關閉的信號時,輸出口輸出低電平,三極管截止,直流電機停止轉動。驅動電路中二極管為續流二極管,當三極管輸入的電壓變為0時,三極管突然由飽和狀態變為截止,直流電機兩端會產生較大的反向電動勢,其電壓可達一百多伏,此電壓作用在三極管上會損壞三極管,因此續流二極管起到保護三極管的作用[7]。
2.5 物聯網模塊
將下位機檢測到的數據通過物聯網模塊實時上傳到貝殼網是本系統的一個重要設計,數據上傳到貝殼網用戶可隨時查詢數據不受時間、地點、設備限制。本系統物聯網模塊采用的是ESP-8285 WiFi模塊。ESP-8285是一款WiFi控制芯片,集成了射頻、無線開關、功率放大器、低噪聲接收放大器、濾波器和電源管理模塊[8];模塊內置Tensilica L106超低功耗32位微處理器,內部有1路10位精度的數/模轉換器(ADC)。物聯網模塊要接入貝殼網要將ESP-8285模塊配置為透傳模式,本系統使用AT指令進行配置。物聯網模塊接入天貓精靈,當物聯網模塊和天貓精靈同處于同一個網絡,水循環的開關通過天貓精靈控制,同時也可以通過PC端、微信小程序、手機APP輸入相應指令控制開斷。當檢測到的數據值高于或者低于設定值時,貝殼網發送報警信號,手機端、微信小程序查看報警信號人工進行現場干預[9]。系統檢測的數據可實時查看實現數據可視化同時也提高觀賞魚的成活率。
3 實物制作
本系統利用仿真軟件進行仿真,測試無誤之后制作出實物,系統實物如圖2所示。
為了準確檢測水位將整個下位機系統置于水族箱側上方。系統開始工作,各個傳感器進入檢測狀態,DS18B20檢測水溫、超聲波傳感器檢測水位、BH1750傳感器檢測光照度、BMP280檢測環境溫度這些數據通過ESP-8285 物聯網傳送到貝殼網,同時數據信息顯示在OLED屏幕上。
本系統的測試設備主要包括智能手機、電腦等設備[10]。檢測到的數據實時傳輸到貝殼網,用戶可登錄PC端、微信小程序、手機APP查看實時數據和歷史數據實現水族箱狀態的數據可視化,下位機每5 s傳送1次數據。微信小程序、PC端的界面數據如圖3和圖4所示。
4 結 語
本文的智能生態水族箱應用物聯網ESP-8285 WiFi模塊,通過實物測試系統實現了實時監測水族箱溫度、實時監測水族箱環境的光照強度、實時監測水族箱水位、實時監測水族箱環境溫度,利用物聯網實現了水族箱狀態的數據可視化、控制智能化、遠程監控管理。該系統設計占用空間小,操作簡單,系統穩定,成本較低,水循環可通過天貓精靈進行控制智能化程度較高。本設計中單片機所占用的I/O口并不多,在設計過程中預留了接口可進一步添加功能。
參考文獻
[1]楊冬英.基于單片機的智能魚缸設計[J].山西電子技術,2017(6):34-37.
[2]榮華良,劉煜輝.基于單片機簡易水情檢測裝置研究[J].現代工業經濟和信息化,2017,7(20):25-26.
[3]陳蔚.超聲波測距儀的設計和實現[J].數字技術與應用,2018,36(5):182-183.
[4]張桂紅.簡易水情檢測系統設計[J].信息與電腦(理論版),2017(19):131-133.
[5]楊世權,張謙述,周聰.多路BH1750光強檢測系統的設計[J].太原學院學報(自然科學版),2018,36(4):59-63.
[6]云中華,白天蕊.基于BH1750FVI的室內光照強度測量儀[J].單片機與嵌入式系統應用,2012,12(6):27-29.
[7]張進山.NPN型硅三極管應用電路設計[J].電子制作,2017(11):5-8.
[8]王羽徵,劉丹,于秋玉,等.基于ESP8285的溫室環境監測系統設計[J].信息技術與網絡安全,2019,38(12):5-9.
[9]張楓沛,肖世德,陶濤,等.基于Android和云平臺技術的水族箱遠程監控系統設計[J].自動化儀表,2018,39(3):35-38.
[10]劉偉,林開司,劉安勇.基于物聯網的魚缸智能控制系統設計與實現.淮海工學院學報(自然科學版),2016,25(4):1-4.