Kazalo:
- Zaloge
- Korak: Nastavitev Pi
- 2. korak: Led in svetlobni senzor
- 3. korak: Servo motor
- 4. korak: Bralnik RFID RC522
- 5. korak: Naložite celico HX711
- 6. korak: LCD (16*2)
- 7. korak: polno vezje
- 8. korak: Začetek primera
- 9. korak: Sestavite skupaj
- 10. korak: Spletno mesto
Video: Samodejni razpršilnik psov: 10 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
S svojim projektom poskrbim, da psa, ko ga pustite samega doma, nikoli ne ostane brez hrane.
Samodejni podajalnik bo "kramp" iz razpršilnika za koruzne kosmiče. Dozator je rezervoar za hrano za pse, kolo na dnu bo povezano s servo motorjem, ki samodejno spusti hrano, ko so jaslice skoraj prazne in ko je pes dovolj blizu. Na dnu razpršilnika bo pritrjena PVC cev, ki bo pasjo hrano lepo spustila v posteljico. Ta projekt bo torej imel 3 senzorje, od katerih 2 nista zajeti v razredu in 1 je aktuator.
Prvi senzor je čitalnik RFID. Ta senzor preveri, kdaj se pes približa otroški posteljici. RFID bo vgrajen v ovratnico psa. Če ta senzor opazi, da je pes dovolj blizu, bo preusmeril signal na drugi senzor. Drugi senzor je senzor teže (ki ni zajet v razredu), ki meri hrano v posteljici. Če ta zazna, da je teža prenizka, bo poslal signal servo motorju, ki bo hrano spustil v posteljico (s potrditvijo RFID in senzorja teže). Skratka, pes dobi dodatno hrano le, ko je dovolj blizu jaslice in ko so jaslice skoraj prazne. Seveda obstaja tudi omejitev, ki jo lahko nastavite sami prek spletnega strežnika; tako da pes ne dobi preveč hrane na dan. Tretji senzor je svetlobni senzor, ki osvetljuje LED reflektor, ko je okoli jaslice pretemno. Pogon bo torej servo motor, povezan s kolesom v razdelilniku.
Ta projekt je namenjen psom, lahko ga uporabite tudi za druge majhne hišne ljubljenčke.
Zaloge
Malina Pi 3
Merilna celica (1 kg)
Ojačevalnik merilnih celic HX711
Posoda za hrano
Dozator za žita
Les (+ vijaki in izvijač)
Senzor svetlobe
LED
Bralnik RFID rc522
Mostične žice
16*2 LCD (zaslon)
Servo motor
5V napajalnik
Upor 470 Ohm
PVC cev
Breadbord
Potenciometer
Videl
Brusni papir
Silikonska pištola
Korak: Nastavitev Pi
Nastaviti
Za začetek moramo najprej nastaviti vaš Pi.
Potrebovali boste dve stvari:
- Win32 Disk Imager iz
- slika OS Raspbian s
Prenesite datoteko ZIP in jo izvlecite, kamor koli želite.
Namestitev
1. Izberite svojo sliko prek ikone mape
2. V spustnem meniju izberite kartico SD
3. Kliknite na piši
Zdaj bomo morali narediti nekaj dodatnega popravljanja z nekaterimi nastavitvami, da bomo lahko dostopali do Pi.
1. Pojdite v zagonski imenik kartice SD
2. Odprite datoteko "cmdline.txt"
3. Dodajte ip = 169.254.10.1 Na koncu dolge vrstice besedila, ločenega s presledkom (v isti vrstici).
4. Shranite datoteko.
5. Ustvarite datoteko ssh brez razširitve v istem imeniku
Zdaj lahko odstranite kartico SD in jo vstavite v svoj Pi.
Povezovanje
Zdaj bomo morali nastaviti programsko opremo.
Najprej priključite kabel LAN, en konec na namizju/prenosnem računalniku, drugi pa na Pi.
Zdaj zaženite Raspberry Pi.
1. Namestite Putty s spletnega mesta
2. V polje IP vnesite 169.254.10.1.
3. Prepričajte se, da je izbran SSH in da so vrata 22 izpolnjena.
4. Kliknite odprto
5. Izpolnite uporabniško ime: pi
6. Izpolnite geslo: malina
Raspi-config
Odprite pripomoček Raspi-config z:
sudo raspi-config
V kategoriji vmesnikov omogočite naslednje možnosti
- 1-žica
- SPI
Onemogočite naslednje možnosti v kategoriji možnosti zagona
- Začetni zaslon
Nazadnje nastavitev Namizje/CLI v kategoriji možnosti zagona nastavite na Samodejna prijava na namizje.
Wifi
Za napajalnik psov moramo imeti povezavo Wi -Fi, zato se prepričajte, da imate blizu poverilnic za wifi.
1. Pojdite v korenski način
sudo -i
2. Prilepite to vrstico, vendar se prepričajte, da sta SSID in Geslo izpolnjena
wpa_passphrase "SSID" "PASSWORD" >> /etc/wpa_supplicant/wpa_supplicant.conf
3. Vnesite odjemalca WPA.
Wpa_cli
4. Izberite vmesnik
Vmesnik wlan0
5. Znova naložite konfiguracijo
Ponovno konfigurirajte
Prepričajte se, da ste pravilno povezani, tako da vnesete ip a in preverite, ali imate IP na vmesnikih WLAN0.
Paketi
Zdaj, ko smo povezani z internetom, bomo morali namestiti nekaj paketov.
Najprej bomo morali osvežiti sezname paketov za najnovejšega.
sudo apt posodobitev
Python
Raspbian bomo prisilili v uporabo Pythona 3
posodobitvene alternative --install/usr/bin/python python /usr/bin/python2.7 1
posodobitvene alternative --install/usr/bin/python python/usr/bin/python3 2
MariaDB
Za namestitev baze podatkov prilepite naslednjo vrstico.
sudo apt namestite strežnik mariadb
Nato moramo zagotoviti namestitev.
mysql_secure_installation
Vprašal nas bo za trenutno korensko geslo, saj ga nimamo, samo pritisnite enter.
Nato se sprašuje, ali želimo root geslo v y, saj ga želimo.
Za naslednja vprašanja vnesite Y.
Nato bomo ustvarili uporabnika, ki ga bomo lahko uporabili za ogledalo.
Vnesite lupino mysql tako:
- povzdignemo se v koren
Sudo -i
- Vnesite lupino mysql
Mysql
- Zamenjajte z lastnim uporabniškim imenom in enako z
podeli vse privilegije za *. * ''@'%', ki jih označi '';
- podeli vse privilegije za *. * ''@'%', ki jih označi '';
Nato bomo dodali svojo bazo podatkov.
Spletni strežnik Apache
Če želite namestiti spletni strežnik, zaženite spodnjo vrstico.
sudo apt namestite apache2 -y
Paketi Python
Namestili bomo te pakete
- Bučka
- bučke
- Flask-MySQL
- Vtičnica za bučkoIO
- PyMySQL
- Gevent
- Gevent-spletna vtičnica
-
- Python-socketio
- Zahteve
- Wsaccel
- Ujson
Z početjem
pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket httplib2 python-socketio zahteva wsaccel ujson mfrc522 hx711 Adafruit-CharLCD
2. korak: Led in svetlobni senzor
Priključitev led
- S -> GPIO15 (rxd0)
- + -> 5V
- G -> Upor 470 ohmov in GND
Priključitev svetlobnega senzorja
- OUT -> GPIO17
- VCC -> 3.3V
- GND -> GND
Zdaj lahko preizkusimo, ali naš LED in svetlobni senzor deluje s tem malim skriptom
uvozite RPi. GPIO kot način GPIO GPIO.set (GPIO. BCM)
GPIO.setup (15, GPIO. OUT)
GPIO.setup (17, GPIO. IN)
poskusi: while True:
če je GPIO.input (17) == 0:
GPIO.izhod (15, GPIO. HIGH)
če je GPIO.input (17) == 1:
GPIO.izhod (15, GPIO. LOW)
razen KeyboardInterrupt: GPIO.cleanup ()
3. korak: Servo motor
Priključitev servo motorja
- OUT -> GPIO18
- VCC -> 5V
- GND -> GND
Zdaj lahko preizkusimo, ali naš LED in svetlobni senzor deluje s tem malim skriptom
uvozite RPi. GPIO kot GPIOimportni čas
Način GPIO.set (GPIO. BCM)
GPIO.setup (18, GPIO. OUT)
p = GPIO. PWM (18, 50)
p.start (12.5)
poskusi:
medtem ko je res:
p. ChangeDutyCycle (12.5)
time.sleep (1)
p. ChangeDutyCycle (2.5)
time.sleep (1)
razen KeyboardInterrupt:
p.stop ()
GPIO.cleanup ()
4. korak: Bralnik RFID RC522
Priključitev RFID
- RST -> GPIO6
- MISO -> GPIO9 (MISO)
- MOSI -> GPIO10 (MOSI)
- SCK -> GPIO11 (SPISCLK)
- SDA -> GPIO8 (SPICS0)
- 3.3V -> 3.3V
- GND -> GND
Zdaj lahko preizkusimo, ali naš bralnik RFID deluje s tem malim skriptom
uvozite RPi. GPIO kot GPIO
iz mfrc522 uvoz SimpleMFRC522
bralec = SimpleMFRC522 ()
text = input ('Novi podatki:')
print ("Zdaj vnesite oznako za pisanje")
reader.write (besedilo)
print ("Pisno")
5. korak: Naložite celico HX711
Priključitev merilne celice na gonilniško ploščo HX711
- Rdeča -> E+
- Črna -> E-
- Zelena -> A+
- Bela -> A-
Priključitev celice za nalaganje
- DT-> GPIO27
- SCK -> GPIO22
- RDEČA -> 3,3 V
- GND -> GND
Zdaj lahko preizkusimo, ali naša merilna celica deluje s tem malim skriptom
uvoz RPi. GPIO kot GPIO uvoz časa uvoza sys iz klasses. HX711 uvoz HX711
def cleanAndExit (): print ("Čiščenje …") GPIO.cleanup () print ("Adijo!") sys.exit ()
hx = HX711 (22, 27)
hx.set_reading_format ("LSB", "MSB")
hx.set_reference_unit (2167)
hx.reset ()
hx.tare ()
medtem ko je res:
poskusi:
val = max (0, int (hx.get_weight (5))))
tisk (val)
hx.power_down ()
hx.power_up ()
time.sleep (0,5)
razen (KeyboardInterrupt, SystemExit): cleanAndExit ()
6. korak: LCD (16*2)
Priključitev LCD -ja
- 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 -> srednji potencio pin
Zdaj lahko preizkusimo, ali naš LCD zaslon deluje s tem malim skriptom
uvozite Adafruit_CharLCD kot 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')
7. korak: polno vezje
tukaj lahko znova preverite, ali je celotno vezje pravilno
8. korak: Začetek primera
Razpršilnik koruznih kosmičev sem uporabil kot rezervoar za hrano za pse
Kolo v razdelilniku sem priključil na servo motor
Zdaj lahko s servo motorjem upravljam kolo in izpustim hrano iz rezervoarja
Na koncu rezervoarja je priključena PVC cev, ki hrano lepo spusti v posteljico
Les uporabljam kot ohišje
9. korak: Sestavite skupaj
10. korak: Spletno mesto
Zdaj naš stroj deluje, zato moramo spletno mesto postaviti na pi. Zdaj je vse pripravljeno in izvaja nekaj navodil o tem, kako spletno mesto deluje.
Pi lahko povežete z wifi, tako da priključite kabel hdmi in ga aktivirate na ta način
Prva stran je domača stran, tukaj si lahko ogledate:
- Informacije o svetlobi v realnem času
- Informacije v realnem času o hrani, ki ostane v skledi
- Hrano lahko spustite
- Podatki o psu
Druga stran je stran za urejanje, tukaj lahko uredite:
- ime vašega ljubljenčka
- starost vašega ljubljenčka
- teža vašega ljubljenčka
- fotografijo vašega ljubljenčka
Tretja stran je stran zgodovine, tukaj si lahko ogledate:
- ko se je lučka prižgala
- ko je pes pojedel
- ko je hrana padla
Četrta stran je stran z nastavitvami, tukaj lahko uredite:
- ko mora hrana pasti
- zmanjšati količino hrane
- največ hrane na dan
- svetloba
Priporočena:
Samodejni razpršilnik za razkuževanje rok: 6 korakov
Samodejni razpršilnik za razkuževanje rok: V tem projektu bomo izdelali razpršilnik za samodejno razkuževanje rok. Ta projekt bo uporabljal Arduino, ultrazvočni senzor, vodno črpalko in razkužilo za roke. Ultrazvočni senzor se uporablja za preverjanje prisotnosti rok pod izhodom razkužilnega sredstva.
Samodejni podajalnik psov: 6 korakov
Samodejni podajalnik psov: To je moj projekt avtomatskega podajalnika psov. Moje ime je Parker, jaz sem v razredu 11 in ta projekt sem izvedel 11. novembra 2020 kot CCA (tečaj, ki zaključuje dejavnost) v tem projektu. Pokazal vam bom, kako narediti avtomatski napajalnik za hišne ljubljenčke z Arduino UNO.
Samodejni razpršilnik mila z uporabo Arduina: 8 korakov
Samodejni razpršilnik mila z uporabo Arduina: Samodejni razpršilnik mila z uporabo arduina: Pozdravljeni, dobrodošli nazaj v nov članek v tem članku bomo izdelali avtomatski razpršilnik mila z uporabo arduina, ta avtomat za milo je zelo enostaven za izdelavo
Samodejni razpršilnik alkohola z Arduinom: 6 korakov
Samodejni razpršilnik alkohola z Arduinom: Ta projekt arduino vas bo vodil, kako narediti avtomatski razpršilnik alkohola. Uporabniku se ni treba nič dotikati, da bi dobil alkohol, samo približajte se ultrazvočnemu senzorju, alkohol bo iztisnjen, nato pa se predvaja zvočna datoteka, ki uporabniku sporoči, naj obdrži
Samodejni podajalnik psov: 5 korakov
Samodejni podajalnik psov: To je korak za korakom vadnica o tem, kako z Arduinom narediti avtomatski napajalnik psov. To je kot nalašč, če večino dneva niste doma. Namesto, da bi moral vaš pes ves dan čakati na hrano ali pa, da se raca odnesete domov hranit, ta naprava