張世清,鐘 麟,王許鵬
(西京學(xué)院 理學(xué)院,陜西 西安 710123)
針對家中有寵物的家庭設(shè)計出一款智能助手,可以通過物聯(lián)網(wǎng)接收遠(yuǎn)程端發(fā)送來的喂食信息,從而驅(qū)動電機(jī)進(jìn)行喂食動作。該智能助手可以通過控制電機(jī)動作時間控制喂食量來控制寵物的進(jìn)食量[1~2]。系統(tǒng)由紅外感應(yīng)系統(tǒng)檢測出寵物是否處于進(jìn)食狀態(tài),還能通過錄音播放來呼喚寵物前來進(jìn)食。本系統(tǒng)可以通過溫濕度傳感器實時監(jiān)控房間的溫度和濕度,并通過云系統(tǒng)將數(shù)據(jù)傳送給手機(jī)端。可以設(shè)置一定的閾值,當(dāng)溫濕度超過設(shè)定的值會開啟通風(fēng)系統(tǒng)進(jìn)行通風(fēng)降溫,用戶可以通過登錄OneNET物聯(lián)網(wǎng)隨時查看剩余的食物重量,以免寵物因食物不足挨餓。本系統(tǒng)引入了當(dāng)前熱門的物聯(lián)網(wǎng),并迎合了家居智能化的發(fā)展,為人們解決了麻煩。本系統(tǒng)還具有安全、實用、便宜特點。
本喂食系統(tǒng)主要包括單片機(jī)控制模塊、無線通信模塊、OLED顯示模塊、電機(jī)驅(qū)動模塊、錄音播放模塊、紅外檢測模塊和壓力傳感器模塊,以及基于OneNET平臺編寫的上位機(jī)操作頁面。系統(tǒng)可以將房間中的溫濕度和時間實時顯示到OLED顯示屏上;可以將房間溫濕度、喂食盤中食物的重量和寵物是否處于吃食狀態(tài)通過物聯(lián)網(wǎng)顯示到OneNET平臺的上位機(jī)頁面中;可以通過OneNET平臺下發(fā)喂食命令和錄音播放命令;驅(qū)動電機(jī)運(yùn)轉(zhuǎn)進(jìn)行喂食動作和播放提前錄制好的聲音呼喚寵物前來進(jìn)食。
本系統(tǒng)的硬件設(shè)計包括STM32核心控制器核心電路、AM2302數(shù)字溫濕度傳感器、DS1302時鐘芯片、esp8266無線模塊、iSD1820錄音模塊、OLED顯示模塊、ULN2003電機(jī)驅(qū)動模塊、紅外傳感器模塊和HX711壓力傳感器模塊等模塊的設(shè)計。
圖1 系統(tǒng)整體設(shè)計
主控模塊為STM32F103C8T6最小系統(tǒng),在整個系統(tǒng)中負(fù)責(zé)連接并控制其他模塊,包括:無線通信模塊、OLED顯示模塊、電機(jī)驅(qū)動模塊、錄音播放模塊、紅外檢測模塊和壓力傳感器模塊。
STM32F103C8T6最小系統(tǒng)包括電源電路分為供電電路和降壓電路、晶振電路、復(fù)位電路、去耦電容、調(diào)試下載電路以及其他外圍電路。
本次設(shè)計采用AM2302溫濕度傳感器采集房間的溫濕度,將其顯示到OLED屏幕中,同時通過esp8266無線傳輸模塊將采集到的數(shù)據(jù)傳送到OneNET物聯(lián)網(wǎng)中,可以通過電腦或者手機(jī)查看。
本次設(shè)計的顯示電路采用小OLED顯示屏模塊。通過接線與單片機(jī)最小系統(tǒng)電路的引腳連接,本系統(tǒng)使用OLED顯示屏用來顯示W(wǎng)IFI的連接狀態(tài)信息、當(dāng)前時間以及采集到的周圍環(huán)境的溫濕度信息。
本次設(shè)計中采用ESP8266無線通信模塊,聯(lián)網(wǎng)將溫濕度、食物重量、錄音播放、電機(jī)控制等信息傳輸?shù)轿锫?lián)網(wǎng)上或者從物聯(lián)網(wǎng)接收信息。
采用ISD1820錄音模塊,寵物主人可以將自己的聲音提前錄制進(jìn)去,并通過OneNET遠(yuǎn)程端控制播放,可以在喂食操作中對寵物進(jìn)行呼喚,使寵物前來進(jìn)食,還可以幫助寵物養(yǎng)成及時進(jìn)食的條件反射。
ULN2003 是高壓大電流達(dá)林頓晶體管陣列系列產(chǎn)品,具有電流增益高、工作電壓高、溫度范圍寬、帶負(fù)載能力強(qiáng)等特點,適應(yīng)于各類要求高速大功率驅(qū)動的系統(tǒng)。在本次設(shè)計中使用ULN2003模塊來驅(qū)動步進(jìn)電機(jī),通過主控芯片向驅(qū)動模塊發(fā)送高低電平從而控制電機(jī)的旋轉(zhuǎn)速度以及旋轉(zhuǎn)方向。
圖2 驅(qū)動電路硬件接線
從上圖可以看出,ULN2003驅(qū)動芯片的1,2,3,4引腳分別與單片機(jī)的A15,A14,A13,A12引腳相連。當(dāng)一個引腳輸出高電平時,其他3個引腳都輸出低電平,以此不斷循環(huán),來達(dá)到驅(qū)動電機(jī)正轉(zhuǎn)或者反轉(zhuǎn)的目的。
該紅外傳感器模塊對環(huán)境光線適應(yīng)能力強(qiáng),其具有一對紅外線發(fā)射與接收管,發(fā)射管發(fā)射出一定頻率的紅外線,當(dāng)檢測方向遇到障礙物(反射面)時,綠色指示燈會亮起,同時輸出低電平信號,當(dāng)沒有障礙物時指示燈熄滅輸出高電平信號,可通過電位器旋鈕調(diào)節(jié)檢測距離,有效距離范圍為2~30 cm,工作電壓為3.3~5 V。
本次設(shè)計中使用此模塊去判斷寵物是否處于正在吃食的狀態(tài),當(dāng)寵物處于正在吃食狀態(tài)時,紅外傳感器會感受到前方有障礙物,向控制模塊發(fā)送低電平信號。當(dāng)沒有檢測到前方有障礙物,也就是寵物不在吃食狀態(tài)時,會向控制模塊持續(xù)發(fā)送高電平??刂颇K通過不斷檢測高低電平來判斷寵物目前的狀態(tài)。
本次設(shè)計中使用HX711壓力傳感器模塊,用來測量喂食盤中剩余食物的重量,并將采集到的數(shù)據(jù)通過無線傳輸模塊上傳到物聯(lián)網(wǎng)中,以便于遠(yuǎn)程端查看。
HX711是一款專為高精度電子秤而設(shè)計的24位A/D轉(zhuǎn)換器芯片。該芯片具有集成度高、響應(yīng)速度快、抗干擾性強(qiáng)等優(yōu)點。這降低了電子秤的整機(jī)成本,提高了整機(jī)的性能和可靠性。
軟件部分根據(jù)系統(tǒng)功能進(jìn)行模塊化編程。主程序和中斷服務(wù)程序兩個不同的程序部分組成了系統(tǒng)軟件。中斷服務(wù)程序主要是對傳感器進(jìn)行數(shù)據(jù)采集。主程序是將中斷服務(wù)程序采集到的數(shù)據(jù)進(jìn)行打包發(fā)送以及數(shù)據(jù)的接收,并驅(qū)動對應(yīng)模塊進(jìn)行相應(yīng)的動作。
圖3 5軟件設(shè)計
智能寵物喂食系統(tǒng)是一種物聯(lián)網(wǎng)的智能家居系統(tǒng),能夠通過OneNET云平臺實時監(jiān)控寵物處于的環(huán)境的溫濕度[3],還可以根據(jù)喂食盤中食物的重量來判斷是否進(jìn)行喂食操作。通過紅外傳感器來判斷寵物有沒有前來進(jìn)食,從而確定是否播放錄制好的聲音呼喚寵物。本系統(tǒng)還有幾個有待優(yōu)化和提高的地方,比如可以增加一個攝像頭,可以實時地觀察寵物當(dāng)前狀態(tài),也可以給喂食系統(tǒng)增加移動以及糞便清潔等功能。