摘要:為了更方便地照顧寵物,筆者設(shè)計(jì)一款基于STM32單片機(jī)的智能寵物屋。該智能寵物屋以STM32F103ZET6單片機(jī)控制器為核心,通過(guò)壓力傳感器、空氣質(zhì)量傳感器、紅外測(cè)溫傳感器、靠近傳感器、溫濕度傳感器和電機(jī)驅(qū)動(dòng)等模塊,實(shí)現(xiàn)了智能喂養(yǎng)、空氣凈化和寵物排泄物清理等功能。系統(tǒng)利用ESP-01SWiFi模塊接入機(jī)智云平臺(tái),將傳感器收集的信息實(shí)時(shí)傳輸?shù)?a href="http://www.1cnz.cn/v/tag/107/" target="_blank">手機(jī)App,實(shí)現(xiàn)對(duì)寵物的遠(yuǎn)程控制和管理。
引言
隨著我國(guó)經(jīng)濟(jì)的快速發(fā)展,人們的生活水平不斷提高,飼養(yǎng)寵物已經(jīng)成為一種潮流。目前,市場(chǎng)上出現(xiàn)了很多類(lèi)似智能寵物屋的產(chǎn)品,但大多數(shù)功能比較單一,不能很好地解決寵物喂食和居住環(huán)境等相關(guān)方面的問(wèn)題[1-3]。針對(duì)這些問(wèn)題,本文設(shè)計(jì)了基于STM32單片機(jī)的智能寵物屋。
1智能寵物屋的工作原理
智能寵物屋主要由STM32單片機(jī)、ShineBlink、傳感器模塊、繼電器模塊、舵機(jī)模塊、電機(jī)驅(qū)動(dòng)模塊及WiFi模塊等部分構(gòu)成。STM32單片機(jī)主要用于控制繼電器模塊、電機(jī)驅(qū)動(dòng)模塊、舵機(jī)模塊,ShineBlink、云平臺(tái)和手機(jī)App通過(guò)esp8266WiFi模塊進(jìn)行通信,用戶(hù)可通過(guò)手機(jī)App進(jìn)行遠(yuǎn)程操作。傳感器包括紅外測(cè)溫傳感器、溫濕度傳感器、壓力傳感器、空氣質(zhì)量傳感器以及靠近傳感器等。繼電器模塊用來(lái)控制電機(jī)以及噴霧器的工作狀態(tài),舵機(jī)模塊用來(lái)控制投放不同種類(lèi)的食物,電機(jī)用來(lái)控制糞便清理器,完成清理寵物排泄物的操作[4-6]。
2智能寵物屋功能設(shè)計(jì)
2.1智能喂食
用戶(hù)通過(guò)壓力傳感器實(shí)時(shí)檢測(cè)寵物糧盆的重量,并實(shí)時(shí)與系統(tǒng)設(shè)定值進(jìn)行比較,并且通過(guò)靠近傳感器檢測(cè)寵物是否停留在糧盆附近,如果寵物未停留在附近,那么投食器將會(huì)自動(dòng)投食。當(dāng)寵物停留在糧盆附近,為不驚嚇寵物,即使糧盆重量低于系統(tǒng)的設(shè)定值,也不會(huì)進(jìn)行投食,只有當(dāng)寵物離開(kāi)糧盆附近后,投食器才會(huì)自動(dòng)補(bǔ)充食物。
2.2空氣凈化與寵物排泄物清理
寵物屋內(nèi)放置有清理寵物排泄物功能的自制工具和空氣質(zhì)量傳感器,當(dāng)寵物排便后,若出現(xiàn)臭味或其他異味時(shí),空氣質(zhì)量傳感器會(huì)將數(shù)據(jù)傳輸給STM32單片機(jī),然后通過(guò)串口通信協(xié)議傳輸?shù)絊hineBlink,再傳輸?shù)皆破脚_(tái)將數(shù)據(jù)反饋給手機(jī)App,用戶(hù)便能通過(guò)手機(jī)啟動(dòng)空氣清新劑噴霧裝置,噴出對(duì)寵物無(wú)傷害的氣體來(lái)凈化空氣,確保寵物所在環(huán)境沒(méi)有異味,改善寵物的居住環(huán)境。同時(shí),用戶(hù)可以在手機(jī)App端隨時(shí)控制糞便清理器工作,實(shí)現(xiàn)清理寵物排泄物的功能[7-9]。
2.3環(huán)境溫濕度測(cè)控
用戶(hù)可以使用溫濕度傳感器實(shí)時(shí)監(jiān)測(cè)寵物屋內(nèi)的溫濕度,并將單片機(jī)采集的實(shí)時(shí)數(shù)據(jù)傳輸?shù)皆破脚_(tái),而后將數(shù)據(jù)反饋給手機(jī)App,用戶(hù)可遠(yuǎn)程實(shí)時(shí)查看寵物屋內(nèi)環(huán)境的溫濕度。
2.4紅外體溫檢測(cè)
系統(tǒng)通過(guò)紅外測(cè)溫傳感器檢測(cè)寵物的體溫。當(dāng)寵物想進(jìn)食或者進(jìn)入寵物屋內(nèi)休息時(shí),紅外傳感器將會(huì)實(shí)時(shí)地檢測(cè)寵物體溫,用戶(hù)通過(guò)手機(jī)App能實(shí)時(shí)觀察寵物當(dāng)前的體溫狀態(tài),并作出調(diào)整。
2.5遠(yuǎn)程操控和互動(dòng)
用戶(hù)可以通過(guò)手機(jī)App實(shí)時(shí)查看系統(tǒng)的檢測(cè)數(shù)據(jù),實(shí)時(shí)了解寵物當(dāng)前的情況,根據(jù)實(shí)際情況決定是否需要投食或者凈化空氣。同時(shí),用戶(hù)可以遠(yuǎn)程操作糞便清理器清理寵物排泄物,或者遠(yuǎn)程控制逗貓棒、激光筆之類(lèi)的玩具與寵物進(jìn)行互動(dòng),使寵物即使待在籠子里也不會(huì)孤獨(dú),既解決了寵物的生活問(wèn)題,又能夠適時(shí)調(diào)整寵物的精神狀態(tài),非常適用于家中寵物無(wú)人照顧的場(chǎng)景[10]。
3系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)框圖如圖1所示,由于本系統(tǒng)的功能模塊較多,功能模塊采用多種串口通信,為了滿(mǎn)足這些模塊的通信接口需求,采用SMT32F103ZET6開(kāi)發(fā)板和ShineBlink物聯(lián)網(wǎng)開(kāi)發(fā)板處理數(shù)據(jù)。ShineBlink與ESP8266WiFi模塊、云平臺(tái)相連,STM32F103ZET6與壓力傳感器模塊、溫濕度傳感器、電機(jī)驅(qū)動(dòng)等模塊相連。
STM32F103ZET6與ShineBlink物聯(lián)網(wǎng)開(kāi)發(fā)板之間通過(guò)串行外設(shè)接口(UniversalAsynchronousReceiverTransmitter,UART)通信。UART是一種串行異步收發(fā)協(xié)議,僅使用兩條數(shù)據(jù)線發(fā)送數(shù)據(jù),有助于正確地發(fā)送和接收數(shù)據(jù)。
3.1STM32F103ZET6最小系統(tǒng)設(shè)計(jì)
STM32F103ZET6是一種嵌入式-微控制器的集成電路,芯體尺寸是32位,主頻是72MHz,擁有豐富的通用I/O端口。該芯片采用ARMCortex-M3的處理器內(nèi)核,具有高性能、低成本、低功效的優(yōu)點(diǎn)。系統(tǒng)中的壓力傳感器、空氣質(zhì)量傳感器、紅外測(cè)溫傳感器、空氣質(zhì)量傳感器、靠近傳感器、溫濕度傳感器、電機(jī)驅(qū)動(dòng)模塊及舵機(jī)模塊都與該芯片相連。STM32F103ZET6芯片用于采集寵物的體溫、寵物是否停留在糧盆附近、寵物屋內(nèi)空氣質(zhì)量等數(shù)據(jù),并傳輸?shù)绞謾C(jī)App。
3.2 ShineBlink最小系統(tǒng)設(shè)計(jì)
ShineBlink最小系統(tǒng)選用ShineBlinkCore開(kāi)發(fā)板芯片作為控制核心。ShineBlink芯片內(nèi)置編譯器,無(wú)需安裝任何開(kāi)發(fā)環(huán)境,使用較少代碼即可實(shí)現(xiàn)WiFi組網(wǎng)通信,大大降低了與云平臺(tái)建立連接的難度。
4軟件系統(tǒng)設(shè)計(jì)
系統(tǒng)上電后首先初始化單片機(jī)設(shè)備,初始化完成后便進(jìn)入模式選擇,模式選擇分為自動(dòng)模式和手動(dòng)模式。自動(dòng)模式指各類(lèi)傳感器自動(dòng)進(jìn)入工作狀態(tài),若工作狀態(tài)異常,則會(huì)進(jìn)入持續(xù)識(shí)別工作模式,直到工作狀態(tài)正常,系統(tǒng)才會(huì)進(jìn)入工作狀態(tài)。手動(dòng)模式指用戶(hù)通過(guò)手機(jī)App向系統(tǒng)發(fā)送命令,然后觀測(cè)每個(gè)傳感器傳回的數(shù)據(jù),若數(shù)據(jù)傳輸發(fā)生異常會(huì)進(jìn)入持續(xù)傳輸數(shù)據(jù)模式,直到數(shù)據(jù)傳輸正常。
圖1系統(tǒng)框圖
4.1機(jī)智云Aiot開(kāi)發(fā)平臺(tái)聯(lián)網(wǎng)
機(jī)智云平臺(tái)是一站式智能硬件開(kāi)發(fā)與物聯(lián)網(wǎng)云服務(wù)平臺(tái),全品類(lèi)設(shè)備聯(lián)網(wǎng)支持,“軟件+硬件+數(shù)據(jù)+算法”一體化解決方案,全方位智能化服務(wù)體系。可以實(shí)現(xiàn)設(shè)備接入、遠(yuǎn)程控制、數(shù)據(jù)采集、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)分析、設(shè)備管理及用戶(hù)管理等功能。用戶(hù)利用手機(jī)App與喂養(yǎng)裝置和清理糞便裝置進(jìn)行通信,在手機(jī)App上可以隨時(shí)觀察寵物的活動(dòng)狀態(tài)。為了實(shí)時(shí)監(jiān)控寵物的狀態(tài),該系統(tǒng)采用WiFi無(wú)線通信方式,將硬件系統(tǒng)各層中的協(xié)議和接口相結(jié)合,形成物聯(lián)網(wǎng)網(wǎng)絡(luò)體系。
4.2機(jī)智云物聯(lián)網(wǎng)平臺(tái)開(kāi)發(fā)
根據(jù)需求定義數(shù)據(jù)點(diǎn),數(shù)據(jù)點(diǎn)是設(shè)備產(chǎn)品的功能抽象,用于描述產(chǎn)品功能及其參數(shù)。創(chuàng)建數(shù)據(jù)點(diǎn)后,便可確定設(shè)備與云端通信的數(shù)據(jù)格式,設(shè)備、機(jī)智云可以互相識(shí)別設(shè)備與機(jī)智云互聯(lián)互通的數(shù)據(jù)。
4.3嵌入式軟件開(kāi)發(fā)
圖2手機(jī)應(yīng)用端界面
本系統(tǒng)采用機(jī)智云平臺(tái)中的MCUSDK開(kāi)發(fā)嵌入式軟件。自動(dòng)生成的軟件開(kāi)發(fā)工具包(SoftwareDevelopmentKit,SDK)實(shí)現(xiàn)了機(jī)智云通信協(xié)議的解析與封包,并封裝成了簡(jiǎn)單的應(yīng)用程序接口(ApplicationProgrammingInterface,API)。當(dāng)設(shè)備收到云端或者App端的數(shù)據(jù)后,開(kāi)發(fā)者只需要在對(duì)應(yīng)的事件處理邏輯中添加傳感器的控制函數(shù),便可完成產(chǎn)品的開(kāi)發(fā)。
4.4手機(jī)App開(kāi)發(fā)
手機(jī)App在機(jī)智云官網(wǎng)提供的移動(dòng)應(yīng)用里進(jìn)行開(kāi)發(fā),可以設(shè)計(jì)App的頁(yè)面配置、圖標(biāo)、顏色以及關(guān)聯(lián)的產(chǎn)品。手機(jī)應(yīng)用端界面如圖2所示。硬件系統(tǒng)通過(guò)WiFi連接模式創(chuàng)建數(shù)據(jù)點(diǎn),通過(guò)App連接硬件,實(shí)現(xiàn)終端控制,能夠顯示寵物的狀態(tài)及寵物屋的相關(guān)數(shù)據(jù)信息。
5結(jié)語(yǔ)
基于STM32單片機(jī)的現(xiàn)代智能寵物屋,能夠自動(dòng)進(jìn)行數(shù)據(jù)采集、傳輸及處理,實(shí)現(xiàn)了智能喂食、遠(yuǎn)程清理寵物排泄物、檢測(cè)環(huán)境溫濕度、檢測(cè)寵物體溫、遠(yuǎn)程互動(dòng)和凈化空氣等功能。用戶(hù)通過(guò)手機(jī)App可選擇不同種類(lèi)的食物進(jìn)行投放,很好地解決了寵物無(wú)人照顧的問(wèn)題,該智能寵物屋擁有廣闊的發(fā)展前景。
-
STM32單片機(jī)
+關(guān)注
關(guān)注
59文章
549瀏覽量
58701
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論