Innholdsfortegnelse:

Automatisk hundedispenser: 10 trinn
Automatisk hundedispenser: 10 trinn

Video: Automatisk hundedispenser: 10 trinn

Video: Automatisk hundedispenser: 10 trinn
Video: Molo - Automatisk (Lyrics) 2024, Juli
Anonim
Automatisk hundedispenser
Automatisk hundedispenser
Automatisk hundedispenser
Automatisk hundedispenser
Automatisk hundedispenser
Automatisk hundedispenser

Med mitt prosjekt sørger jeg for at når du lar hunden være alene hjemme, er han / hun aldri uten mat.

Den automatiske materen blir "hacket" fra en cornflakes -dispenser. Dispenseren er reservoaret for hundefôr, hjulet i bunnen vil bli koblet til en servomotor som automatisk slipper mat når krybben er nesten tom og når hunden er nær nok. På bunnen av dispenseren vil det være festet et PVC -rør som slipper hundemat godt ned i barnesengen. Dette prosjektet vil derfor ha 3 sensorer, hvorav 2 ikke dekkes i klassen og 1 som er en aktuator.

Den første sensoren er RFID -leseren. Denne sensoren sjekker når hunden kommer i nærheten av barnesengen. RFID vil bli inkorporert i hundens halsbånd. Hvis denne sensoren merker at hunden er nær nok, vil den sende et signal til den andre sensoren. Den andre sensoren er vektføleren (ikke dekket i klassen) som måler maten i barnesengen. Hvis denne sensoren oppdager at vekten er for lav, sender den et signal til servomotoren som vil slippe maten ned i krybben (med bekreftelse på RFID og vektføleren). Kort sagt, hunden får bare ekstra mat når han / hun er nær nok til barnesengen og når krybben er nesten tom. Selvfølgelig er det også et grensesett som du kan sette selv via webserveren; slik at hunden ikke får for mye mat per dag. Den tredje sensoren er en lyssensor som lyser opp en LED -flomlys når det er for mørkt rundt barnesengen. Aktuatoren vil derfor være en servomotor koblet til hjulet i dispenseren.

Dette prosjektet er ment for hunder, du kan også bruke det til andre små kjæledyr.

Rekvisita

Raspberry Pi 3

Lastcelle (1KG)

HX711 lastcelleforsterker

Matskål

Kornblanding

Tre (+ skruer og skrutrekker)

Lyssensor

Led

RFID -leser rc522

Jumper ledninger

16*2 LCD (display)

Servo motor

5V strømadapter

Motstand 470 Ohm

PVC -rør

Brødbord

Potensiometer

Sag

Slipepapir

Silisiumpistol

Trinn 1: Pi -oppsett

Pi -oppsett
Pi -oppsett

Oppsett

For å komme i gang må vi først sette opp din Pi.

Du trenger to ting:

- Win32 Disk Imager fra

- Raspbian OS -bilde fra

Last ned ZIP -filen og pakk den ut hvor du vil.

Installasjonen

1. Velg bildet ditt via mappeikonet

2. Velg SD -kortet ditt via rullegardinmenyen

3. Klikk på skrive

Nå må vi gjøre litt ekstra ting med noen innstillinger, slik at vi får tilgang til Pi.

1. Gå til oppstartskatalogen for SD -kortet

2. Åpne filen "cmdline.txt"

3. Legg til ip = 169.254.10.1 På slutten av den lange tekstlinjen atskilt med et mellomrom (på samme linje).

4. Lagre filen.

5. Lag en fil som heter ssh uten utvidelse i den samme katalogen

Nå kan du kaste ut SD -kortet og sette det i Pi.

Kobler til

Nå må vi konfigurere programvaren.

Koble først til en LAN -kabel, den ene enden på skrivebordet/den bærbare datamaskinen og den andre i din Pi.

Start nå Raspberry Pi.

1. Installer Putty fra

2. Skriv inn 169.254.10.1 i IP -boksen.

3. Kontroller at SSH er valgt og at port 22 er fylt ut.

4. Klikk på åpne

5. Fyll ut brukernavnet: pi

6. Fyll ut passordet: bringebær

Raspi-konfigurasjon

Åpne Raspi-config-verktøyet ved å bruke:

sudo raspi-config

Aktiver følgende alternativer i kategorien grensesnitt

- 1-ledning

- SPI

Deaktiver følgende alternativer i kategorien oppstartsalternativer

- Sprutskjerm

Angi til slutt Desktop/CLI -innstillingen i kategorien oppstartsalternativer til Desktop Autologin.

WiFi

For hundemateren må vi ha en wifi -tilkobling, så sørg for at du har wifi -legitimasjonen din nær.

1. Gå inn i rotmodus

sudo -i

2. Lim inn denne linjen, men sørg for at SSID og passord begge er fylt ut

wpa_passphrase "SSID" "PASSWORD" >> /etc/wpa_supplicant/wpa_supplicant.conf

3. Skriv inn WPA -klienten.

Wpa_cli

4. Velg grensesnittet

Grensesnitt wlan0

5. Last inn konfigurasjonen på nytt

Konfigurer på nytt

Sørg for at du er tilkoblet riktig ved å skrive ip a og se om du har en IP på WLAN0 -grensesnittene.

Pakker

Nå som vi er koblet til internett, må vi installere noen pakker.

Først må vi oppdatere pakkelistene for den siste.

sudo apt oppdatering

Python

Vi tvinger Raspbian til å bruke Python 3

oppdateringsalternativer-install/usr/bin/python python /usr/bin/python2.7 1

oppdateringsalternativer-install/usr/bin/python python/usr/bin/python3 2

MariaDB

Lim inn følgende linje for å installere databasen.

sudo apt installer mariadb-server

Da må vi sikre installasjonen vår.

mysql_secure_installation

Det vil be oss om gjeldende rotpassord siden vi ikke har et, bare trykk enter.

Deretter spør det om vi vil ha en root -passordtype i y siden vi vil ha en.

For de neste spørsmålene, bare skriv Y.

Deretter skal vi opprette en bruker som vi kan bruke til speilet.

Skriv inn mysql -skallet ved å gjøre:

- Løft oss til rot

Sudo -i

- Skriv inn mysql -skallet

Mysql

- Erstatt med ditt eget brukernavn og det samme med

gi alle privilegier på *. * til ''@'%' identifisert av '';

- gi alle rettigheter på *. * til ''@'%' identifisert av '';

Deretter legger vi til databasen vår.

Apache webserver

Kjør linjen nedenfor for å installere webserveren.

sudo apt installere apache2 -y

Python -pakker

Vi skal installere disse pakkene

- Kolbe

- Flask-Cors

- Kolbe-MySQL

- Flask-SocketIO

- PyMySQL

- Gevent

- Gevent-websocket

-

- Python-socketio

- Forespørsler

- Wsaccel

- Ujson

Ved å gjøre

pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket httplib2 python-socketio request wsaccel ujson mfrc522 hx711 Adafruit-CharLCD

Trinn 2: LED og lyssensor

LED og lyssensor
LED og lyssensor
LED og lyssensor
LED og lyssensor

Koble til LED -en

  1. S -> GPIO15 (rxd0)
  2. + -> 5V
  3. G -> Motstand 470 ohm og GND

Koble til lyssensoren

  1. UT -> GPIO17
  2. VCC -> 3,3V
  3. GND -> GND

Nå kan vi teste om vår LED- og lyssensor fungerer med dette lille skriptet

importer RPi. GPIO som GPIO GPIO.setmode (GPIO. BCM)

GPIO.setup (15, GPIO. OUT)

GPIO.setup (17, GPIO. IN)

prøv: mens sant:

hvis GPIO.input (17) == 0:

GPIO.output (15, GPIO. HIGH)

hvis GPIO.input (17) == 1:

GPIO.output (15, GPIO. LOW)

unntatt KeyboardInterrupt: GPIO.cleanup ()

Trinn 3: Servomotor

Servo motor
Servo motor

Koble til servomotoren

  1. UT -> GPIO18
  2. VCC -> 5V
  3. GND -> GND

Nå kan vi teste om vår LED- og lyssensor fungerer med dette lille skriptet

importer RPi. GPIO som GPIOimporttid

GPIO.setmode (GPIO. BCM)

GPIO.setup (18, GPIO. OUT)

p = GPIO. PWM (18, 50)

s. start (12,5)

prøve:

mens det er sant:

p. ChangeDutyCycle (12.5)

time.sleep (1)

p. ChangeDutyCycle (2.5)

time.sleep (1)

unntatt KeyboardInterrupt:

p.stop ()

GPIO.cleanup ()

Trinn 4: RFID -leser RC522

RFID -leser RC522
RFID -leser RC522

Koble til RFID

  1. RST -> GPIO6
  2. MISO -> GPIO9 (MISO)
  3. MOSI -> GPIO10 (MOSI)
  4. SCK -> GPIO11 (SPISCLK)
  5. SDA -> GPIO8 (SPICS0)
  6. 3,3V -> 3,3V
  7. GND -> GND

Nå kan vi teste om RFID -leseren vår jobber med dette lille skriptet

importer RPi. GPIO som GPIO

fra mfrc522 import SimpleMFRC522

leser = SimpleMFRC522 ()

tekst = input ('Nye data:')

print ("Plasser nå taggen din for å skrive")

reader.write (tekst)

print ("Skrevet")

Trinn 5: Last inn celle HX711

Lastcelle HX711
Lastcelle HX711

Koble til lastcellen til HX711 -driverkortet

  1. Rød -> E+
  2. Svart -> E-
  3. Grønn -> A+
  4. Hvit -> A-

Koble til lastecellen

  1. DT-> GPIO27
  2. SCK -> GPIO22
  3. RØD -> 3,3V
  4. GND -> GND

Nå kan vi teste om lastcellen vår fungerer med dette lille skriptet

importer RPi. GPIO som GPIOimport tid import sys fra klasses. HX711 import HX711

def cleanAndExit (): print ("Rengjøring …") 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 ()

mens det er sant:

prøve:

val = maks (0, int (hx.get_weight (5)))

print (val)

hx.power_down ()

hx.power_up ()

time.sleep (0,5)

unntatt (KeyboardInterrupt, SystemExit): cleanAndExit ()

Trinn 6: LCD (16*2)

LCD (16*2)
LCD (16*2)

Koble til LCD -skjermen

  1. RS -> GPIO21
  2. RW -> GND
  3. E-> GPIO20
  4. D0 -> GPIO16
  5. D1 -> GPIO12
  6. D2 -> GPIO6
  7. D3 -> GPIO24
  8. D4 -> GPIO23
  9. D5 -> GPIO26
  10. D6 -> GPIO19
  11. D7 -> GPIO13
  12. VSS -> GND
  13. VDD -> 5V
  14. A -> 5V
  15. K -> GND
  16. V0 -> midtre potensialnål

Nå kan vi teste om LCD -skjermen vår fungerer med dette lille skriptet

importer Adafruit_CharLCD som 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')

Trinn 7: Full krets

Full krets
Full krets

her kan du sjekke om hele kretsen er korrekt

Trinn 8: Start av saken

Start på saken
Start på saken
Start på saken
Start på saken
Start på saken
Start på saken
Start på saken
Start på saken

Jeg brukte en cornflake dispenser som et reservoar for hundemat

Jeg koblet hjulet i dispenseren til servomotoren min

Nå kan jeg styre hjulet med servomotoren min og slippe mat ut av reservoaret

I enden av reservoaret er det et PVC -rør tilkoblet som faller maten pent ned i barnesengen

Jeg bruker tre som foringsrør

Trinn 9: Sette det sammen

Sette det sammen
Sette det sammen
Sette det sammen
Sette det sammen
Sette det sammen
Sette det sammen

Trinn 10: Nettstedet

Nettsiden
Nettsiden
Nettsiden
Nettsiden
Nettsiden
Nettsiden
Nettsiden
Nettsiden

Nå som maskinen vår fungerer må vi få nettstedet til pi. Nå er alt i gang og noen få instruksjoner om hvordan nettstedet fungerer.

Du kan koble Pi til Wi -Fi ved å koble til en hdmi -kabel og aktivere denne måten

Den første siden er hjemmesiden, her kan du se:

  • Sanntidsinformasjon om lyset
  • Sanntidsinformasjon om maten som er igjen i bollen
  • Du kan slippe mat
  • Info om hunden

Den andre siden er redigeringssiden, her kan du redigere:

  • navnet på kjæledyret ditt
  • alderen på kjæledyret ditt
  • vekten til kjæledyret ditt
  • bildet av kjæledyret ditt

Den tredje siden er historikksiden, her kan du se:

  • da lyset tente
  • når hunden har spist
  • når maten har falt

Den fjerde siden er innstillingssiden, her kan du redigere:

  • når maten trenger å falle
  • mengden mat som skal slippes
  • maks mat/dag
  • lyset

Anbefalt: