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