Cuprins:
- Provizii
- Pasul 1: Configurare Pi
- Pasul 2: Led și senzor de lumină
- Pasul 3: Servomotor
- Pasul 4: RFID Reader RC522
- Pasul 5: Încărcați celula HX711
- Pasul 6: LCD (16 * 2)
- Pasul 7: Circuit complet
- Pasul 8: Începerea cazului
- Pasul 9: Pune-l împreună
- Pasul 10: site-ul web
Video: Dispenser automat pentru câini: 10 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Prin proiectul meu mă asigur că atunci când îți lași câinele singur acasă, el / ea nu va fi niciodată fără mâncare.
Alimentatorul automat va fi „spart” de la un distribuitor de fulgi de porumb. Distribuitorul este rezervorul pentru hrana câinilor, roata din partea de jos va fi conectată la un servomotor care scade automat hrana atunci când pătuțul este aproape gol și când câinele este suficient de aproape. În partea de jos a dozatorului va fi atașat un tub din PVC care va lăsa mâncarea câinelui frumos în pătuț. Prin urmare, acest proiect va avea 3 senzori, dintre care 2 nu sunt incluși în clasă și 1 dintre care este un actuator.
Primul senzor este cititorul RFID. Acest senzor verifică când câinele se apropie de pătuț. RFID va fi încorporat în gulerul câinelui. Dacă acest senzor observă că câinele este suficient de aproape, va transmite un semnal celui de-al doilea senzor. Al doilea senzor este senzorul de greutate (care nu este inclus în clasă) care măsoară alimentele din pătuț, dacă acest senzor detectează că greutatea este prea mică, va trimite un semnal către servomotor care va arunca alimentele în pătuț (cu confirmarea RFID și a senzorului de greutate). Pe scurt, câinele primește hrană suplimentară doar atunci când este suficient de aproape de pătuț și când pătuțul este aproape gol. Desigur, există și o limită setată pe care o puteți seta dvs. prin intermediul serverului web; astfel încât câinele să nu primească prea multă mâncare pe zi. Al treilea senzor este un senzor de lumină care luminează un reflector LED atunci când este prea întuneric în jurul pătuțului. Prin urmare, actuatorul va fi un servomotor conectat la roata din distribuitor.
Acest proiect este destinat câinilor, îl puteți folosi și pentru alte animale de companie mici.
Provizii
Raspberry Pi 3
Celula de încărcare (1 kg)
Amplificator cu celule de încărcare HX711
Bol pentru alimente
Distribuitor de cereale
Lemn (+ șuruburi și șurubelniță)
Senzor de lumina
LED
Cititor RFID rc522
Sârme de jumper
16 * 2 LCD (afișaj)
Servo motor
Adaptor de alimentare 5V
Rezistor 470 Ohm
Tub din PVC
Breadbord
Potențiometru
A văzut
Hârtie de șlefuit
Pistol de siliciu
Pasul 1: Configurare Pi
Înființat
Pentru a începe, va trebui mai întâi să vă configurați Pi.
Veți avea nevoie de două lucruri:
- Win32 Disk Imager de la
- Imagine Raspbian OS de la
Descărcați fișierul ZIP și extrageți-l oriunde doriți.
Instalatia
1. Selectați imaginea dvs. prin pictograma dosar
2. Selectați cardul SD prin meniul derulant
3. Faceți clic pe scrie
Acum va trebui să facem câteva modificări suplimentare cu unele setări, astfel încât să putem accesa Pi.
1. Accesați directorul de pornire al cardului SD
2. Deschideți fișierul „cmdline.txt”
3. Adăugați ip = 169.254.10.1 La sfârșitul liniei lungi de text separate cu un spațiu (pe aceeași linie).
4. Salvați fișierul.
5. Creați un fișier numit ssh fără extensie în același director
Acum puteți scoate cardul SD și îl puteți pune în Pi.
Conectarea
Acum va trebui să configurăm software-ul.
Conectați mai întâi un cablu LAN, un capăt în desktop / laptop și celălalt în Pi.
Acum porniți Raspberry Pi.
1. Instalați Putty de pe
2. Introduceți 169.254.10.1 în caseta IP.
3. Asigurați-vă că este selectat SSH și că portul 22 este completat.
4. Faceți clic pe Deschidere
5. Completați numele de utilizator: pi
6. Completați parola: zmeură
Raspi-config
Deschideți utilitarul Raspi-config utilizând:
sudo raspi-config
Activați următoarele opțiuni în categoria interfețe
- 1 fir
- SPI
Dezactivați următoarele opțiuni din categoria opțiuni de încărcare
- Ecran splash
În cele din urmă, setați setarea Desktop / CLI din categoria de opțiuni de încărcare la Desktop Autologin.
Wifi
Pentru alimentatorul de câini trebuie să avem o conexiune wifi, deci asigurați-vă că aveți acreditările dvs. wifi aproape.
1. Accesați modul root
sudo -i
2. Lipiți această linie, dar asigurați-vă că SSID și parola sunt completate ambele
wpa_passphrase "SSID" "PASSWORD" >> /etc/wpa_supplicant/wpa_supplicant.conf
3. Introduceți clientul WPA.
Wpa_cli
4. Selectați interfața
Interfață wlan0
5. Reîncărcați config
Reconfigurați
Asigurați-vă că sunteți conectat corect tastând ip a și verificând dacă aveți un IP pe interfețele WLAN0.
Pachete
Acum că suntem conectați la internet va trebui să instalăm câteva pachete.
Mai întâi va trebui să reîmprospătăm listele de pachete pentru cea mai recentă.
actualizare sudo apt
Piton
Vom forța Raspbian să folosească 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
Lipiți următoarea linie pentru a instala baza de date.
sudo apt instalați mariadb-server
Apoi va trebui să ne asigurăm instalarea.
mysql_secure_installation
Ne va cere parola curentă de root, deoarece nu avem una, doar apăsați Enter.
Apoi se întreabă dacă vrem o parolă de tip root în y, deoarece vrem una.
Pentru următoarele întrebări, introduceți doar Y.
Apoi vom crea un utilizator pe care îl vom putea folosi pentru oglindă.
Introduceți shell-ul mysql făcând:
- Ridică-ne la rădăcină
Sudo -i
- Introduceți shell-ul mysql
Mysql
- Înlocuiți cu propriul dvs. nume de utilizator și la fel cu
acordă toate privilegiile pe *. * către '' @ '%' identificat prin '';
- acordați toate privilegiile pe *. * către '' @ '%' identificat prin '';
În continuare vom adăuga baza noastră de date.
Apache Webserver
Pentru a instala Webserver rulați linia de mai jos.
sudo apt instalează apache2 -y
Pachete Python
Vom instala aceste pachete
- Balon
- Flask-Cors
- Flask-MySQL
- Flask-SocketIO
- PyMySQL
- Gevent
- Gevent-websocket
-
- Python-socketio
- Cereri
- Wsaccel
- Ujson
Facand
pip instalare Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket httplib2 python-socketio requests wsaccel ujson mfrc522 hx711 Adafruit-CharLCD
Pasul 2: Led și senzor de lumină
Cuplând ledul
- S -> GPIO15 (rxd0)
- + -> 5V
- G -> Rezistor 470 ohm și GND
Conectarea senzorului de lumină
- OUT -> GPIO17
- VCC -> 3,3V
- GND -> GND
Acum putem testa dacă senzorul nostru de lumină și led funcționează cu acest mic script
import RPi. GPIO ca GPIO GPIO.setmode (GPIO. BCM)
GPIO.setup (15, GPIO. OUT)
GPIO.setup (17, GPIO. IN)
încercați: în timp ce este adevărat:
dacă GPIO.input (17) == 0:
GPIO.output (15, GPIO. HIGH)
dacă GPIO.input (17) == 1:
GPIO.output (15, GPIO. LOW)
cu excepția KeyboardInterrupt: GPIO.cleanup ()
Pasul 3: Servomotor
Conectarea servomotorului
- OUT -> GPIO18
- VCC -> 5V
- GND -> GND
Acum putem testa dacă senzorul nostru de lumină și led funcționează cu acest mic script
import RPi. GPIO ca GPIOimport timp
GPIO.setmode (GPIO. BCM)
GPIO.setup (18, GPIO. OUT)
p = GPIO. PWM (18, 50)
p.start (12.5)
încerca:
în timp ce este adevărat:
p. ChangeDutyCycle (12.5)
time.sleep (1)
p. ChangeDutyCycle (2.5)
time.sleep (1)
cu excepția KeyboardInterrupt:
p.stop ()
GPIO.cleanup ()
Pasul 4: RFID Reader RC522
Conectarea RFID
- RST -> GPIO6
- MISO -> GPIO9 (MISO)
- MOSI -> GPIO10 (MOSI)
- SCK -> GPIO11 (SPISCLK)
- SDA -> GPIO8 (SPICS0)
- 3,3V -> 3,3V
- GND -> GND
Acum putem testa dacă cititorul nostru RFID funcționează cu acest mic script
importați RPi. GPIO ca GPIO
din mfrc522 import SimpleMFRC522
cititor = SimpleMFRC522 ()
text = input („Date noi:”)
print („Plasați acum eticheta pentru a scrie”)
reader.write (text)
print („Scris”)
Pasul 5: Încărcați celula HX711
Conectarea celulei de încărcare la placa driverului HX711
- Roșu -> E +
- Negru -> E-
- Verde -> A +
- Alb -> A-
Conectarea celulei de încărcare
- DT-> GPIO27
- SCK -> GPIO22
- ROȘU -> 3.3V
- GND -> GND
Acum putem testa dacă celula noastră de încărcare funcționează cu acest mic script
import RPi. GPIO ca GPIOimport timp import sisteme din klasses. HX711 import HX711
def cleanAndExit (): print ("Curățare …") 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 ()
în timp ce este adevărat:
încerca:
val = max (0, int (hx.get_weight (5)))
print (val)
hx.power_down ()
hx.power_up ()
time.sleep (0,5)
cu excepția (KeyboardInterrupt, SystemExit): cleanAndExit ()
Pasul 6: LCD (16 * 2)
Conectarea ecranului 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 -> pin potentio mijloc
Acum putem testa dacă ecranul nostru LCD funcționează cu acest mic script
importați Adafruit_CharLCD ca 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”)
Pasul 7: Circuit complet
aici puteți verifica din nou dacă întregul circuit este corect
Pasul 8: Începerea cazului
Am folosit un distribuitor de fulgi de porumb ca rezervor pentru hrana pentru câini
Am conectat roata din dozator la servomotorul meu
Acum pot controla roata cu servomotorul meu și pot arunca alimente din rezervor
La capătul rezervorului este conectat un tub din PVC care aruncă mâncarea frumos în pătuț
Folosesc lemnul ca înveliș
Pasul 9: Pune-l împreună
Pasul 10: site-ul web
Acum mașina noastră funcționează, trebuie să punem site-ul web pe pi. Acum totul funcționează și rulează câteva instrucțiuni despre modul în care funcționează site-ul.
Puteți conecta sunteți pi la wifi conectând un cablu HDMI și activați acest mod
Prima pagină este pagina principală, aici puteți vedea:
- Informații în timp real despre lumină
- Informații în timp real despre mâncarea rămasă în castron
- Puteți scăpa de mâncare
- Informații despre câine
A doua pagină este pagina de editare, aici puteți edita:
- numele animalului tău de companie
- vârsta animalului tău de companie
- greutatea animalului tău de companie
- fotografia animalului tău de companie
A treia pagină este pagina istoriei, aici puteți vedea:
- când lumina s-a aprins
- când câinele a mâncat
- când mâncarea a scăzut
A patra pagină este pagina de setări, aici puteți edita:
- când mâncarea trebuie să scadă
- cantitatea de alimente care trebuie scăzută
- hrana maxima / zi
- lumina
Recomandat:
Feederrr automat pentru câini !!: 4 pași
Feederrr automat pentru câini !!: Ușor, util și sănătos
Alimentator automat pentru câini: 6 pași
Alimentator automat pentru câini: Acesta este proiectul meu de Alimentator automat pentru animale de companie. Numele meu este Parker, sunt în clasa a 11-a și am realizat acest proiect pe 11 noiembrie 2020 ca CCA (Curs Culminating Activity) în acest proiect. Vă voi arăta cum să creați un alimentator automat pentru animale de companie cu Arduino UNO
Aruncător automat de bile pentru câini: 6 pași
Aruncator automat de mingi pentru câini: Amândoi avem câini și, după cum știe toată lumea, câinii ar putea petrece toată ziua jucând mingea. De aceea, ne-am gândit la o modalitate de a construi un aruncător automat de mingi
Alimentator automat pentru câini: 5 pași
Alimentator automat pentru câini: Acesta este un tutorial pas cu pas despre cum să creați un alimentator automat pentru câini folosind Arduino. Acest lucru este perfect dacă sunteți în afara casei pentru o mare parte a zilei. Mai degrabă decât câinele tău să aștepte toată ziua după mâncare sau să te ducă acasă să o hrănești, acest dispozitiv
Alimentator automat pentru câini Raspberry Pi și Streamer video live: 3 pași
Raspberry Pi Automatic Dog Feeder & Live Video Streamer: Acesta este alimentatorul meu automat pentru câini Raspberry PI. Obișnuiam să lucrez de dimineața 11:00 până la 21:00. Câinele meu o ia razna dacă nu-l hrănesc la timp. Am navigat pe google pentru a cumpăra hrănitoare automate pentru alimente, nu sunt disponibile în India și sunt importate cost