Obsah:
- Zásoby
- Krok 1: Nastavení Pi
- Krok 2: LED a světelný senzor
- Krok 3: Servomotor
- Krok 4: Čtečka RFID RC522
- Krok 5: Načtěte buňku HX711
- Krok 6: LCD (16*2)
- Krok 7: Plný obvod
- Krok 8: Začátek případu
- Krok 9: Dát to dohromady
- Krok 10: Web
Video: Automatický dávkovač pro psy: 10 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
Svým projektem zajišťuji, že když necháte svého psa samotného doma, nikdy nebude bez jídla.
Automatický podavač bude „hacknut“z dávkovače kukuřičných vloček. Dávkovač je zásobník na krmivo pro psy, kolečko ve spodní části bude připojeno k servomotoru, který automaticky vypouští jídlo, když je pelíšek téměř prázdný a když je pes dostatečně blízko. Ve spodní části výdejního stojanu bude připevněna PVC trubička, která krmivo pro psy vhodí pěkně do postýlky. Tento projekt bude mít tedy 3 senzory, z nichž 2 nejsou zahrnuty ve třídě a 1 je aktuátor.
Prvním senzorem je čtečka RFID. Tento senzor kontroluje, když se pes přiblíží k pelíšku. RFID bude začleněn do psího obojku. Pokud si tento senzor všimne, že je pes dostatečně blízko, vyšle signál do druhého senzoru. Druhým senzorem je snímač hmotnosti (není zahrnut ve třídě), který měří jídlo v postýlce, pokud tento senzor zjistí, že je hmotnost příliš nízká, vyšle signál do servomotoru, který nakopne jídlo do postýlky (s potvrzením RFID a snímače hmotnosti). Zkrátka pes dostane jídlo navíc jen tehdy, když je dostatečně blízko pelíšku a když je pelíšek téměř prázdný. Samozřejmě existuje také limit, který si můžete sami nastavit prostřednictvím webového serveru; aby pes nedostal za den příliš mnoho jídla. Třetí senzor je světelný senzor, který osvětluje LED světlomet, když je kolem postýlky příliš tma. Pohonem tedy bude servomotor spojený s kolem v dávkovači.
Tento projekt je určen pro psy, můžete jej použít i pro jiná malá domácí zvířata.
Zásoby
Raspberry Pi 3
Siloměr (1KG)
Zesilovač siloměrů HX711
Mísa na jídlo
Dávkovač obilovin
Dřevo (+ šrouby a šroubovák)
Světelný senzor
Vedený
Čtečka RFID rc522
Propojovací vodiče
16*2 LCD (displej)
Servomotor
5V napájecí adaptér
Odpor 470 ohmů
PVC trubka
Breadbord
Potenciometr
Viděl
Brusný papír
Silikonová pistole
Krok 1: Nastavení Pi
Založit
Abychom mohli začít, musíme nejprve nastavit váš Pi.
Budete potřebovat dvě věci:
- Win32 Disk Imager z
- Obrázek operačního systému Raspbian z
Stáhněte si soubor ZIP a rozbalte jej, kamkoli budete chtít.
Instalace
1. Vyberte svůj obrázek pomocí ikony složky
2. V rozevíracím seznamu vyberte kartu SD
3. Klikněte na zápis
Nyní budeme muset provést nějaké drobné úpravy s některými nastaveními, abychom měli přístup k Pi.
1. Přejděte do spouštěcího adresáře karty SD
2. Otevřete soubor „cmdline.txt“
3. Přidejte ip = 169.254.10.1 Na konec dlouhého řádku textu odděleného mezerou (na stejném řádku).
4. Uložte soubor.
5. Vytvořte soubor s názvem ssh bez přípony ve stejném adresáři
Nyní můžete kartu SD vysunout a vložit do Pi.
Spojovací
Nyní budeme muset nastavit software.
Nejprve zapojte kabel LAN, jeden konec do stolního počítače/notebooku a druhý do počítače Pi.
Nyní spusťte Raspberry Pi.
1. Nainstalujte tmel z
2. Do pole IP zadejte 169.254.10.1.
3. Zkontrolujte, zda je vybrána možnost SSH a zda je vyplněn port 22.
4. Klikněte na otevřít
5. Vyplňte uživatelské jméno: pí
6. Vyplňte heslo: malina
Raspi-config
Spusťte nástroj Raspi-config pomocí:
sudo raspi-config
V kategorii rozhraní povolte následující možnosti
- 1-Wire
- SPI
V kategorii možností spouštění deaktivujte následující možnosti
- Úvodní obrazovka
Nakonec nastavte Desktop/CLI v kategorii možností spuštění na Desktop Autologin.
WiFi
Pro krmítko pro psy potřebujeme mít připojení k wifi, takže se ujistěte, že máte své wifi pověření zavřené.
1. Přejděte do kořenového režimu
sudo -i
2. Vložte tento řádek, ale ujistěte se, že jsou vyplněny SSID a heslo
wpa_passphrase "SSID" "HESLO" >> /etc/wpa_supplicant/wpa_supplicant.conf
3. Zadejte klienta WPA.
Wpa_cli
4. Vyberte rozhraní
Rozhraní wlan0
5. Znovu načtěte konfiguraci
Přenastavit
Ujistěte se, že jste připojeni správně, zadáním IP a zkontrolujte, zda máte IP na rozhraní WLAN0.
Balíčky
Nyní, když jsme připojeni k internetu, budeme muset nainstalovat nějaké balíčky.
Nejprve budeme muset aktualizovat seznamy balíčků pro ten nejnovější.
sudo apt aktualizace
Krajta
Donutíme Raspbian používat Python 3
update-alternatives --install/usr/bin/python python /usr/bin/python2.7 1
update-alternatives --install/usr/bin/python python/usr/bin/python3 2
MariaDB
Vložením následujícího řádku nainstalujete databázi.
sudo apt nainstalovat mariadb-server
Poté budeme muset zajistit naši instalaci.
mysql_secure_installation
Požádá nás o aktuální heslo uživatele root, protože ho nemáme, stačí stisknout Enter.
Dále se ptá, zda chceme heslo typu root v y, protože ho chceme.
Pro další otázky stačí zadat Y.
Dále vytvoříme uživatele, kterého budeme moci pro zrcadlo použít.
Zadejte shell mysql takto:
- Povýšme se na root
Sudo -i
- Zadejte shell mysql
MySQL
- Nahraďte svým vlastním uživatelským jménem a totéž pomocí
udělit všechna oprávnění *. * ''@'%' označené '';
- udělit všechna oprávnění *. * pro ''@'%' označené '';
Dále přidáme naši databázi.
Webový server Apache
Chcete -li nainstalovat webový server, spusťte následující řádek.
sudo apt install apache2 -y
Balíčky Pythonu
Tyto balíčky nainstalujeme
- Baňka
- Baňky-Cors
- Flask-MySQL
- Flask-SocketIO
- PyMySQL
- Gevent
- Gevent-websocket
-
- Python-socketio
- Žádosti
- Wsaccel
- Ujsone
Tím, že dělá
pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket httplib2 python-socketio requests wsaccel ujson mfrc522 hx711 Adafruit-CharLCD
Krok 2: LED a světelný senzor
Zapojení LED
- S -> GPIO15 (rxd0)
- + -> 5V
- G -> Rezistor 470 ohmů a GND
Zapojení světelného senzoru
- OUT -> GPIO17
- VCC -> 3,3 V.
- GND -> GND
Nyní můžeme vyzkoušet, zda náš LED a světelný senzor funguje s tímto malým skriptem
importovat RPi. GPIO jako GPIO GPIO.setmode (GPIO. BCM)
GPIO.setup (15, GPIO. OUT)
GPIO.setup (17, GPIO. IN)
zkuste: while True:
pokud GPIO.input (17) == 0:
GPIO.output (15, GPIO. HIGH)
pokud GPIO.input (17) == 1:
GPIO.output (15, GPIO. LOW)
kromě KeyboardInterrupt: GPIO.cleanup ()
Krok 3: Servomotor
Zapojení servomotoru
- OUT -> GPIO18
- VCC -> 5V
- GND -> GND
Nyní můžeme vyzkoušet, zda náš LED a světelný senzor funguje s tímto malým skriptem
importovat RPi. GPIO jako čas GPIOimportu
GPIO.setmode (GPIO. BCM)
GPIO.setup (18, GPIO. OUT)
p = GPIO. PWM (18, 50)
p.start (12.5)
Snaž se:
zatímco pravda:
p. ChangeDutyCycle (12.5)
time.sleep (1)
p. ChangeDutyCycle (2.5)
time.sleep (1)
kromě KeyboardInterrupt:
p.stop ()
GPIO.cleanup ()
Krok 4: Čtečka RFID RC522
Zapojení RFID
- RST -> GPIO6
- MISO -> GPIO9 (MISO)
- MOSI -> GPIO10 (MOSI)
- SCK -> GPIO11 (SPISCLK)
- SDA -> GPIO8 (SPICS0)
- 3,3 V -> 3,3 V.
- GND -> GND
Nyní můžeme vyzkoušet, zda naše čtečka RFID pracuje s tímto malým skriptem
importujte RPi. GPIO jako GPIO
z mfrc522 importovat SimpleMFRC522
čtečka = SimpleMFRC522 ()
text = vstup ('Nová data:')
tisk („Nyní umístěte značku k zápisu“)
reader.write (text)
tisk („písemný“)
Krok 5: Načtěte buňku HX711
Připojení buňky zatížení k desce ovladače HX711
- Červená -> E+
- Černá -> E-
- Zelená -> A+
- Bílá -> A-
Zapojení zatěžovací buňky
- DT-> GPIO27
- SCK -> GPIO22
- ČERVENÁ -> 3,3V
- GND -> GND
Nyní můžeme vyzkoušet, zda naše zatěžovací buňka funguje s tímto malým skriptem
import RPi. GPIO jako GPIOimport čas importu sys z klasses. HX711 import HX711
def cleanAndExit (): print ("Cleaning…") GPIO.cleanup () print ("Bye!") sys.exit ()
hx = HX711 (22, 27)
hx.set_reading_format ("LSB", "MSB")
hx.set_reference_unit (2167)
hx.reset ()
hx.tare ()
zatímco pravda:
Snaž se:
val = max (0, int (hx.get_weight (5)))
tisk (val)
hx.power_down ()
hx.power_up ()
time.sleep (0,5)
kromě (KeyboardInterrupt, SystemExit): cleanAndExit ()
Krok 6: LCD (16*2)
Zapojení LCD
- RS -> GPIO21
- RW -> GND
- E-> GPIO20
- D0 -> GPIO16
- D1 -> GPIO12
- D2 -> GPIO6
- D3 -> GPIO24
- D4 -> GPIO23
- D5 -> GPIO26
- D6 -> GPIO19
- D7 -> GPIO13
- VSS -> GND
- VDD -> 5V
- A -> 5V
- K -> GND
- V0 -> střední potenciometr
Nyní můžeme vyzkoušet, zda naše LCD obrazovka funguje s tímto malým skriptem
importujte Adafruit_CharLCD jako LCDlcd_rs = 21
lcd_en = 20
lcd_d4 = 23
lcd_d5 = 26
lcd_d6 = 19
lcd_d7 = 13
lcd_columns = 16
lcd_rows = 2
lcd = LCD. Adafruit_CharLCD (lcd_rs, lcd_en, lcd_d4, lcd_d5, lcd_d6, lcd_d7, lcd_columns, lcd_rows)
lcd.message ('169.254.10.1')
Krok 7: Plný obvod
zde můžete znovu zkontrolovat, zda je celý obvod správný
Krok 8: Začátek případu
Jako zásobník na krmivo pro psy jsem použil dávkovač kukuřičných vloček
Připojil jsem kolo v dávkovači k mému servomotoru
Nyní mohu ovládat kolo pomocí svého servomotoru a vypouštět jídlo z nádrže
Na konci nádrže je připojena PVC trubka, která jídlo vhodí do postýlky
Jako opláštění používám dřevo
Krok 9: Dát to dohromady
Krok 10: Web
Nyní náš stroj funguje, potřebujeme dostat webové stránky na pi. Nyní je vše v provozu a běží několik instrukcí, jak web funguje.
Pí můžete připojit k wifi připojením kabelu HDMI a aktivovat tímto způsobem
První stránka je domovská stránka, zde můžete vidět:
- Informace o světle v reálném čase
- Informace v reálném čase o jídle, které zbylo v misce
- Můžeš upustit jídlo
- Informace o psu
Druhá stránka je stránka pro úpravy, zde můžete upravovat:
- jméno vašeho mazlíčka
- věk vašeho mazlíčka
- váha vašeho mazlíčka
- fotka vašeho mazlíčka
Třetí stránka je stránka historie, zde můžete vidět:
- když se rozsvítilo světlo
- když pes jedl
- když jídlo kleslo
Čtvrtá stránka je stránka nastavení, zde můžete upravovat:
- když jídlo musí klesnout
- množství jídla, které má klesnout
- max. jídlo/den
- světlo
Doporučuje:
NeckLight: PCB náhrdelník pro lidi a psy: 8 kroků (s obrázky)
NeckLight: náhrdelník PCB pro lidi a psy: Ahoj všichni, tento projekt je můj první Instructables, takže se pokusím udělat maximum. V tomto projektu vám vysvětlím, jak se mi podařilo vytvořit tento náhrdelník PCB, který svítí ve tmě! Abych byl upřímný, je to perfektní projekt, pokud se chcete naučit
Automatický dávkovač krmiva pro kočky: 7 kroků (s obrázky)
Automatický dávkovač krmiva pro kočky: Pokud neovládáte množství krmiva, které vaše kočka jí, může to vést k problémům s přejídáním a nadváhou. To platí zejména v případě, že jste mimo domov a necháte kočce další jídlo, které by konzumovalo podle vlastního plánu. Jindy můžete
Automatický vrhač míčků pro psy: 6 kroků
Automatický vrhač míčů pro psy: Oba máme psy a jak každý ví, psi by mohli strávit celý den hraním míče. Proto jsme vymysleli způsob, jak postavit automatický vrhač míčů
Dávkovač krmiva pro psy poháněný Arduinem: 10 kroků (s obrázky)
Arduino Powered Dog Food Dispenser: Pokud je váš dům něco jako můj, některé úkoly mohou být ve spěchu zapomenuty. Nenechte to být váš mazlíček, na kterého se zapomíná! Tento automatický dávkovač krmiva pro psy používá Arduino k dodávání správného množství granulí ve správný čas. Všechny pa
Popruh na stativ pro vodítko pro psy: 3 kroky
Popruh na stativ na vodítku: Snažil jsem se najít nebo vyrobit popruh pro svůj stativ, aby bylo snadné jej přenášet bez tašky nebo držení v ruce. Hledal jsem ve skříni nějaké lano, ale našel jsem vodítko pro psy, které jsme už nepoužívali. Toto vodítko pro psy má asi 5 stop