Taula de continguts:

Dispensador automàtic de gossos: 10 passos
Dispensador automàtic de gossos: 10 passos

Vídeo: Dispensador automàtic de gossos: 10 passos

Vídeo: Dispensador automàtic de gossos: 10 passos
Vídeo: Máquina dispensadora de gel 2024, Juliol
Anonim
Dispensador automàtic de gossos
Dispensador automàtic de gossos
Dispensador automàtic de gossos
Dispensador automàtic de gossos
Dispensador automàtic de gossos
Dispensador automàtic de gossos

Amb el meu projecte m'asseguro que quan deixeu el vostre gos sol a casa, mai no estigui sense menjar.

L'alimentador automàtic serà "tallat" des d'un dispensador de flocs de blat de moro. El dispensador és el dipòsit per a menjar per a gossos, la roda de la part inferior estarà connectada a un servomotor que deixa caure automàticament els aliments quan el bressol està gairebé buit i quan el gos està prou a prop. A la part inferior del dispensador hi haurà un tub de PVC connectat que deixarà anar bé el menjar per al gos al bressol. Per tant, aquest projecte tindrà 3 sensors, 2 dels quals no estan inclosos a la classe i 1 dels quals és un actuador.

El primer sensor és el lector RFID. Aquest sensor comprova quan el gos s’acosta al bressol. La RFID s’incorporarà al coll del gos. Si aquest sensor nota que el gos està prou a prop, transmetrà un senyal al segon sensor. El segon sensor és el sensor de pes (no inclòs a la classe) que mesura el menjar del bressol, si aquest sensor detecta que el pes és massa baix, enviarà un senyal al servomotor que deixarà anar el menjar al bressol (amb confirmació del RFID i del sensor de pes). En resum, el gos només obté menjar addicional quan està prou a prop del bressol i quan el bressol està gairebé buit. Per descomptat, també hi ha un conjunt de límits que podeu configurar mitjançant el servidor web; perquè el gos no rebi massa menjar al dia. El tercer sensor és un sensor de llum que il·lumina un projector LED quan està massa fosc al voltant del bressol. Per tant, l’actuador serà un servomotor connectat a la roda del dispensador.

Aquest projecte està pensat per a gossos, també el podeu utilitzar per a altres mascotes petites.

Subministraments

Raspberry Pi 3

Cel·la de càrrega (1 KG)

Amplificador de cèl·lules de càrrega HX711

Bol de menjar

Dispensador de cereals

Fusta (+ cargols i tornavís)

Sensor de llum

Led

Lector RFID rc522

Filferros de pont

16 * 2 LCD (pantalla)

Servomotor

Adaptador de corrent de 5V

Resistència 470 Ohm

Tub de PVC

Breadbord

Potenciòmetre

va veure

Paper de polir

Pistola de silici

Pas 1: Configuració del Pi

Configuració del Pi
Configuració del Pi

Configuració

Per començar, primer haurem de configurar el vostre Pi.

Necessitareu dues coses:

- Imatge de disc Win32 de

- Imatge del sistema operatiu Raspbian de

Baixeu-vos el fitxer ZIP i extraieu-lo on vulgueu.

La instal·lació

1. Seleccioneu la vostra imatge mitjançant la icona de la carpeta

2. Seleccioneu la targeta SD mitjançant el menú desplegable

3. Feu clic a escriu

Ara haurem de fer algunes modificacions addicionals amb algunes opcions per poder accedir al Pi.

1. Aneu al directori d’arrencada de la targeta SD

2. Obriu el fitxer "cmdline.txt"

3. Afegiu ip = 169.254.10.1 Al final de la llarga línia de text separada amb un espai (a la mateixa línia).

4. Deseu el fitxer.

5. Creeu un fitxer anomenat ssh sense cap extensió al mateix directori

Ara podeu expulsar la targeta SD i posar-la al Pi.

Connectant

Ara haurem de configurar el programari.

Connecteu primer un cable LAN, un extrem a l’escriptori / portàtil i l’altre al Pi.

Ara arrenceu el Raspberry Pi.

1. Instal·leu Putty des de

2. Introduïu 169.254.10.1 al quadre IP.

3. Assegureu-vos que SSH està seleccionat i que s’omple el port 22.

4. Feu clic a obre

5. Empleneu el nom d'usuari: pi

6. Empleneu la contrasenya: gerd

Raspi-config

Obriu la utilitat Raspi-config mitjançant:

sudo raspi-config

Activeu les opcions següents a la categoria d'interfícies

- 1 cable

- SPI

Desactiveu les opcions següents a la categoria d'opcions d'arrencada

- Pantalla de benvinguda

Per últim, configureu el paràmetre Escriptori / CLI a la categoria d’opcions d’arrencada a Autologin de l’escriptori.

WiFi

Per a l'alimentador de gossos, hem de tenir una connexió wifi, així que assegureu-vos que teniu les vostres credencials wifi.

1. Aneu al mode arrel

sudo -i

2. Enganxeu aquesta línia, però assegureu-vos que el SSID i la contrasenya estiguin emplenats

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

3. Introduïu el client WPA.

Wpa_cli

4. Seleccioneu la interfície

Interfície wlan0

5. Torneu a carregar la configuració

Torneu a configurar

Assegureu-vos que esteu connectat correctament escrivint ip a i comprovant si teniu una IP a les interfícies WLAN0.

Paquets

Ara que estem connectats a Internet haurem d’instal·lar alguns paquets.

Primer haurem d’actualitzar les llistes de paquets de la darrera.

actualització sudo apt

Python

Obligarem Raspbian a utilitzar Python 3

update-alternatives --install / usr / bin / python python /usr/bin/python2.7 1

actualització-alternatives --install / usr / bin / python python / usr / bin / python3 2

MariaDB

Enganxeu la línia següent per instal·lar la base de dades.

sudo apt install mariadb-server

Després haurem de protegir la nostra instal·lació.

mysql_secure_installation

Ens demanarà la contrasenya d’arrel actual, ja que no en tenim cap, només cal prémer Retorn.

A continuació, es pregunta si volem escriure una contrasenya root en y, ja que en volem una.

Per a les properes preguntes, introduïu Y.

A continuació, crearem un usuari que podrem utilitzar per al mirall.

Introduïu l'intèrpret d'ordres mysql fent:

- Elevar-nos a l’arrel

Sudo -i

- Introduïu l'intèrpret d'ordres mysql

MySQL

- Substituïu-lo pel vostre propi nom d'usuari i el mateix amb

concedeix tots els privilegis a *. * a '' @ '%' identificat per '';

- concediu tots els privilegis a *. * a '' @ '%' identificat per '';

A continuació afegirem la nostra base de dades.

Servidor web Apache

Per instal·lar el servidor web, executeu la línia següent.

sudo apt install apache2 -y

Paquets Python

Instal·larem aquests paquets

- Matràs

- Flask-Cors

- Flask-MySQL

- Flask-SocketIO

- PyMySQL

- Gevent

- Gevent-websocket

-

- Python-socketio

- Sol·licituds

- Wsaccel

- Ujson

Fent-ho

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

Pas 2: Led i sensor de llum

Sensor de llum i led
Sensor de llum i led
Sensor de llum i led
Sensor de llum i led

Enganxant el led

  1. S -> GPIO15 (rxd0)
  2. + -> 5V
  3. G -> Resistència 470 ohm i GND

Connectant el sensor de llum

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

Ara podem comprovar si el nostre sensor de llum i led funciona amb aquest petit script

importar RPi. GPIO com a GPIO GPIO.setmode (GPIO. BCM)

GPIO.setup (15, GPIO. OUT)

GPIO.setup (17, GPIO. IN)

prova: mentre és cert:

si GPIO.input (17) == 0:

Sortida GPIO (15, GPIO. HIGH)

si GPIO.input (17) == 1:

GPIO.output (15, GPIO. LOW)

excepte KeyboardInterrupt: GPIO.cleanup ()

Pas 3: Servomotor

Servomotor
Servomotor

Connexió del servomotor

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

Ara podem comprovar si el nostre sensor de llum i led funciona amb aquest petit script

importar RPi. GPIO com a GPIOimport time

GPIO.setmode (GPIO. BCM)

GPIO.setup (18, GPIO. OUT)

p = GPIO. PWM (18, 50)

p.start (12.5)

provar:

mentre que és cert:

p. ChangeDutyCycle (12.5)

time.sleep (1)

p. ChangeDutyCycle (2.5)

time.sleep (1)

excepte KeyboardInterrupt:

p.stop ()

GPIO.cleanup ()

Pas 4: Lector RFID RC522

Lector RFID RC522
Lector RFID RC522

Connectant l’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

Ara podem comprovar si el nostre lector RFID funciona amb aquest petit script

importar RPi. GPIO com a GPIO

des de mfrc522 importeu SimpleMFRC522

lector = SimpleMFRC522 ()

text = input ('Dades noves:')

print ("Ara col·loqueu l'etiqueta per escriure")

reader.write (text)

imprimir ("escrit")

Pas 5: carregueu la cel·la HX711

Carrega la cel·la HX711
Carrega la cel·la HX711

Connectar la cel·la de càrrega a la placa de controladors HX711

  1. Vermell -> E +
  2. Negre -> E-
  3. Verd -> A +
  4. Blanc -> A-

Connectant la cel·la de càrrega

  1. DT-> GPIO27
  2. SCK -> GPIO22
  3. VERMELL -> 3,3V
  4. GND -> GND

Ara podem comprovar si la nostra cel·la de càrrega funciona amb aquest petit script

importar RPi. GPIO com a GPIOimportar sistemes d'importació de temps des de klasses. HX711 importar HX711

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

mentre que és cert:

provar:

val = màx (0, int (hx.get_weight (5))))

imprimir (val)

hx.power_down ()

hx.power_up ()

time.sleep (0,5)

except (KeyboardInterrupt, SystemExit): cleanAndExit ()

Pas 6: LCD (16 * 2)

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

Connectant la pantalla LCD

  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 -> pin potentio mitjà

Ara podem comprovar si la nostra pantalla LCD funciona amb aquest petit script

importeu Adafruit_CharLCD com a LCDlcd_rs = 21

lcd_ca = 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')

Pas 7: Circuit complet

Circuit complet
Circuit complet

aquí podeu comprovar de nou si tot el circuit és correcte

Pas 8: Inici del cas

Inici del cas
Inici del cas
Inici del cas
Inici del cas
Inici del cas
Inici del cas
Inici del cas
Inici del cas

Vaig utilitzar un dispensador de floc de blat de moro com a dipòsit per al menjar per a gossos

Vaig connectar la roda del dispensador al meu servomotor

Ara puc controlar la roda amb el meu servomotor i deixar anar menjar del dipòsit

Al final del dipòsit hi ha un tub de PVC connectat que deixa caure els aliments molt bé al bressol

Faig servir la fusta com a carcassa

Pas 9: unir-lo

Posant-ho en comú
Posant-ho en comú
Posant-ho en comú
Posant-ho en comú
Posant-ho en comú
Posant-ho en comú

Pas 10: el lloc web

La pàgina web
La pàgina web
La pàgina web
La pàgina web
La pàgina web
La pàgina web
La pàgina web
La pàgina web

Ara la nostra màquina funciona, necessitem posar el lloc web al pi. Ara tot està en marxa i s’executa algunes instruccions sobre com funciona el lloc.

Podeu connectar el vostre pi al wifi connectant un cable HDMI i activar-lo d’aquesta manera

La primera pàgina és la pàgina inicial, aquí podeu veure:

  • Informació en temps real sobre la llum
  • Informació en temps real sobre el menjar que queda al bol
  • Podeu deixar menjar
  • Informació sobre el gos

La segona pàgina és la pàgina d'edició, aquí podeu editar:

  • el nom de la teva mascota
  • l'edat de la teva mascota
  • el pes de la vostra mascota
  • la foto de la teva mascota

La tercera pàgina és la pàgina d’història, aquí podeu veure:

  • quan es va encendre la llum
  • quan el gos ha menjat
  • quan el menjar ha caigut

La quarta pàgina és la pàgina de configuració, aquí podeu editar:

  • quan cal menjar els aliments
  • la quantitat de menjar que ha de caure
  • menjar màxim / dia
  • la llum

Recomanat: