樹莓派DIY智能無(wú)臭貓便盆,拉完粑粑自動(dòng)通風(fēng),成本不到400元
鏟屎官狂喜
蕭簫 編輯整理
量子位 報(bào)道 | 公眾號(hào) QbitAI
每個(gè)鏟屎官最痛苦的事情之一,莫過(guò)于處理貓咪的“生化武器”——貓屎。
只要貓拉了粑粑,氣味就會(huì)飄出來(lái),在鏟屎時(shí)還能聞到一股巨酸爽的味道。
好消息,來(lái)自硅谷的一個(gè)華人工程師,想出了一個(gè)絕妙的方法:給貓做個(gè)智能廁所!
結(jié)合小零件,一塊樹莓派就能將貓砂盆升級(jí)成自動(dòng)通風(fēng)貓廁,每當(dāng)貓咪“解決完生理問(wèn)題”,它就能自行啟動(dòng)風(fēng)扇,進(jìn)行散味。
簡(jiǎn)直是鏟屎官福音!來(lái)看看制作流程。
樹莓派控制,紅外自動(dòng)檢測(cè)
硬件上,完整的零件清單如下:
樹莓派Zero W、80mm×80mm的風(fēng)扇(CPU散熱器)、12V電源、1截空調(diào)通風(fēng)管、適量PIR運(yùn)動(dòng)傳感器、適量1kΩ電阻、三極管、1個(gè)降壓-升壓變換器
從亞馬遜官網(wǎng)給出的價(jià)格來(lái)看,這些硬件的總成本在400元左右。
其中,10美元的樹莓派Zero W是整個(gè)裝置的核心,用于控制電路什么時(shí)候運(yùn)行。
作者表示,樹莓派也可以用更便宜的Pico來(lái)代替(5美元),但他想了解自家貓咪的具體拉粑粑時(shí)間……因此選擇了貴一點(diǎn)的Zero W,可以遠(yuǎn)程登錄查看數(shù)據(jù)。
風(fēng)扇用于散味,空調(diào)通風(fēng)管則用于排氣。
至于PIR(紅外)運(yùn)動(dòng)傳感器,則用來(lái)檢測(cè)貓咪什么時(shí)候進(jìn)貓砂盆、什么時(shí)候出去,以決定風(fēng)扇通風(fēng)的時(shí)間。
此外,還需要一個(gè)降壓-升壓變換器(此處用了汽車USB充電器代替),因?yàn)轱L(fēng)扇的供電電壓需要達(dá)到12V,但樹莓派的額定運(yùn)行電壓卻在5V。
同時(shí),樹莓派的輸出電壓只有3.3V,因此在樹莓派輸出3.3V信號(hào)的時(shí)候,還需要一個(gè)三極管來(lái)控制12V電路的開啟和關(guān)閉。
整體搭建電路圖如下(其中333Ω的電阻,由3個(gè)1kΩ的電阻并聯(lián)獲得):
其中,PIR指運(yùn)動(dòng)傳感器,Pz指樹莓派(輸出通過(guò)333Ω電阻與三極管相連),fan指風(fēng)扇,而風(fēng)扇和樹莓派之間的就是三極管。
至于圖中的5V電壓,可以直接用降壓變換器,也可以對(duì)汽車USB充電器進(jìn)行一個(gè)改裝:先將它拆開,再把充電器的金屬尖端用電線焊接替代,最后連接到主電路中。
到這里,硬件部分的組裝就已經(jīng)完成,搭建到貓砂盆上方后,看起來(lái)是這個(gè)樣子的:
再用膠帶或者熱熔膠槍組裝起來(lái)就行。
當(dāng)然,這也只是完成硬件部分的制作,軟件上還需要對(duì)樹莓派進(jìn)行設(shè)置。
自動(dòng)通風(fēng),還能記錄“生理”時(shí)間
首先,需要設(shè)置樹莓派中存儲(chǔ)數(shù)據(jù)用的SD卡、連接和啟動(dòng)等。
然后,就可以開始往里面填程序了。
由于作者想要記錄貓咪的拉粑粑時(shí)間,因此還安裝了Python和數(shù)據(jù)庫(kù)MariaDB:
sudo apt install mariadb-server-10.0 python3-pip
pip3 install mariadb
除了數(shù)據(jù)庫(kù)以外,還需要一個(gè)可以控制樹莓派GPIO引腳的Python庫(kù)GPIO ZERO(GPIO引腳指圖中這部分):
sudo apt install python3-gpiozero
安裝后,就可以運(yùn)行主要的程序了(Python編寫),這部分的原理,是在傳感器觸發(fā)后,將風(fēng)扇啟動(dòng)10分鐘:
FAN_ON_DURATION = 10 * 60 # 10 min
outpin = LED(22)
pir = MotionSensor(27, sample_rate=1) # I used the GPIO pin 27
while True:
pir.wait_for_motion()
outpin.on()
time.sleep(FAN_ON_DURATION)
outpin.off()
同時(shí),作者還希望能在整個(gè)系統(tǒng)啟動(dòng)時(shí),自動(dòng)運(yùn)行程序,因此還寫了另一個(gè)文件,將它命名為<(你的)服務(wù)器名稱>.service,確保它在mysqld啟動(dòng)后就能運(yùn)行:
[Unit]
Description=Motion detection service for cat litter
After=mysqld.service
[Service]
ExecStart=/usr/bin/python3 -u motion_detection.py
WorkingDirectory=/home/pi/
StandardOutput=append:/home/pi/execution.log
StandardError=append:/home/pi/execution.log
Restart=alwaysUser=pi
[Install]
WantedBy=multi-user.target
放進(jìn)/etc/systemd/system文件夾,并允許跟隨系統(tǒng)啟動(dòng):
sudo systemctl enable <your_service>.service
Done!現(xiàn)在軟件部分也搞定了,可以愉快地給自家貓用上了,據(jù)作者表示,打開風(fēng)扇時(shí),即使站在旁邊,也基本聞不到味道。
祝:埋屎必中,便便順利~(手動(dòng)狗頭)
解決更多鏟屎官難題
這個(gè)智能“無(wú)臭”貓砂盆的作者,目前在硅谷工作,自我介紹是一名“攻城獅”。
事實(shí)上,作者自己家里就有貓,還是兩只:
除了這個(gè)貓砂盆,作者此前還自己做過(guò)家用版大數(shù)據(jù)處理平臺(tái)、以及樹莓派運(yùn)行的GPS跟蹤器。
作者表示,下一步計(jì)劃研發(fā)一個(gè)新的裝置,阻止貓咪到桌上和自己搶飯。
這年頭,當(dāng)個(gè)鏟屎官都得學(xué)點(diǎn)黑科技了。
GitHub地址:
https://github.com/xinixgit/rpi/tree/main/pi-cat-litter
參考鏈接:
https://xinxindai.medium.com/build-a-ventilated-cat-litter-box-with-pi-zero-ce943d55b446