Tabla de contenido:

Dispensador automático para perros: 10 pasos
Dispensador automático para perros: 10 pasos

Video: Dispensador automático para perros: 10 pasos

Video: Dispensador automático para perros: 10 pasos
Video: Comedero dispensador AUTOMÁTICO para perros 🐕 MANUALIDADES para tu MASCOTA 2024, Mes de julio
Anonim
Dispensador automático para perros
Dispensador automático para perros
Dispensador automático para perros
Dispensador automático para perros
Dispensador automático para perros
Dispensador automático para perros

Con mi proyecto me aseguro de que cuando dejes a tu perro solo en casa, nunca se quede sin comida.

El alimentador automático será "pirateado" de un dispensador de copos de maíz. El dispensador es el depósito de comida para perros, la rueda en la parte inferior estará conectada a un servomotor que automáticamente deja caer la comida cuando la cuna está casi vacía y cuando el perro está lo suficientemente cerca. En la parte inferior del dispensador habrá un tubo de PVC adjunto que dejará caer la comida para perros en la cuna. Por lo tanto, este proyecto tendrá 3 sensores, 2 de los cuales no están cubiertos en la clase y 1 de los cuales es un actuador.

El primer sensor es el lector RFID. Este sensor comprueba cuando el perro se acerca a la cuna. La RFID se incorporará en el collar del perro. Si este sensor nota que el perro está lo suficientemente cerca, transmitirá una señal al segundo sensor. El segundo sensor es el sensor de peso (no cubierto en clase) que mide la comida en la cuna, si este sensor detecta que el peso es demasiado bajo, enviará una señal al servomotor que dejará caer la comida en la cuna (con confirmación de la RFID y el sensor de peso). En resumen, el perro solo obtiene comida extra cuando está lo suficientemente cerca de la cuna y cuando la cuna está casi vacía. Por supuesto, también hay un límite establecido que puede establecer usted mismo a través del servidor web; para que el perro no ingiera demasiada comida al día. El tercer sensor es un sensor de luz que ilumina un reflector LED cuando está demasiado oscuro alrededor de la cuna. Por tanto, el actuador será un servomotor conectado a la rueda del dispensador.

Este proyecto está destinado a perros, también puedes usarlo para otras mascotas pequeñas.

Suministros

Frambuesa pi 3

Celda de carga (1KG)

Amplificador de celda de carga HX711

Tazón de comida

Dispensador de cereales

Madera (+ tornillos y destornillador)

Sensor de luz

Dirigió

Lector RFID rc522

Cables de puente

16 * 2 LCD (pantalla)

Servo motor

Adaptador de corriente de 5V

Resistencia 470 ohmios

Tubo de PVC

Breadbord

Potenciómetro

Vio

Papel de lija

Pistola de silicona

Paso 1: Configuración de Pi

Configuración de Pi
Configuración de Pi

Configuración

Para comenzar, primero necesitaremos configurar su Pi.

Necesitarás dos cosas:

- Generador de imágenes de disco Win32 de

- Imagen del sistema operativo Raspbian de

Descarga el archivo ZIP y extráelo donde quieras.

La instalación

1. Seleccione su imagen a través del icono de carpeta

2. Seleccione su tarjeta SD a través del menú desplegable

3. Haga clic en escribir

Ahora tendremos que hacer algunos ajustes adicionales con algunas configuraciones para poder acceder a la Pi.

1. Vaya al directorio de inicio de la tarjeta SD.

2. Abra el archivo "cmdline.txt"

3. Agregue ip = 169.254.10.1 al final de la línea larga de texto separada por un espacio (en la misma línea).

4. Guarde el archivo.

5. Cree un archivo llamado ssh sin extensión en el mismo directorio

Ahora puedes expulsar la tarjeta SD y ponerla en tu Pi.

Conectando

Ahora necesitaremos configurar el software.

Primero conecte un cable LAN, un extremo en su computadora de escritorio / computadora portátil y el otro en su Pi.

Ahora arranca la Raspberry Pi.

1. Instale Putty desde

2. Ingrese 169.254.10.1 en el cuadro IP.

3. Asegúrese de que esté seleccionado SSH y de que se complete el puerto 22.

4. Haga clic en abrir

5. Complete el nombre de usuario: pi

6. Ingrese la contraseña: frambuesa

Raspi-config

Abra la utilidad Raspi-config usando:

sudo raspi-config

Habilite las siguientes opciones en la categoría de interfaces

- 1 hilo

- SPI

Deshabilite las siguientes opciones en la categoría de opciones de arranque

- Pantalla de bienvenida

Por último, establezca la configuración de Escritorio / CLI en la categoría de opciones de arranque en Inicio de sesión automático de escritorio.

Wifi

Para el comedero para perros, necesitamos tener una conexión wifi, así que asegúrese de tener sus credenciales wifi cerca.

1. Entra en modo root

sudo -i

2. Pegue esta línea, pero asegúrese de que el SSID y la contraseña estén completos

wpa_passphrase "SSID" "CONTRASEÑA" >> /etc/wpa_supplicant/wpa_supplicant.conf

3. Ingrese al cliente WPA.

Wpa_cli

4. Seleccione la interfaz

Interfaz wlan0

5. Vuelva a cargar la configuración

Reconfigurar

Asegúrese de estar conectado correctamente escribiendo ip a y viendo si tiene una IP en las interfaces WLAN0.

Paquetes

Ahora que estamos conectados a Internet, tendremos que instalar algunos paquetes.

Primero, necesitaremos actualizar las listas de paquetes para obtener el último.

actualización de sudo apt

Pitón

Forzaremos a Raspbian a usar Python 3

alternativas de actualización --install / usr / bin / python python /usr/bin/python2.7 1

actualizar-alternativas --install / usr / bin / python python / usr / bin / python3 2

MariaDB

Pegue la siguiente línea para instalar la base de datos.

sudo apt install mariadb-server

Entonces necesitaremos asegurar nuestra instalación.

mysql_secure_installation

Nos pedirá la contraseña de root actual, ya que no tenemos una, solo presione enter.

A continuación, se pregunta si queremos una contraseña de root en y, ya que queremos una.

Para las siguientes preguntas, ingrese Y.

A continuación, crearemos un usuario que podremos usar para el espejo.

Ingrese al shell mysql haciendo:

- Elevarnos a la raíz

Sudo -i

- Ingrese al shell mysql

Mysql

- Reemplazar con su propio nombre de usuario y lo mismo con

conceda todos los privilegios en *. * a '' @ '%' identificado por '';

- otorgar todos los privilegios en *. * a '' @ '%' identificado por '';

A continuación, agregaremos nuestra base de datos.

Servidor web Apache

Para instalar el servidor web, ejecute la línea siguiente.

sudo apt install apache2 -y

Paquetes de Python

Vamos a instalar estos paquetes.

- Matraz

- Matraz-Cors

- Frasco-MySQL

- Matraz-SocketIO

- PyMySQL

- Gevent

- Gevent-websocket

-

- Python-socketio

- Peticiones

- Wsaccel

- Ujson

Haciendo

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

Paso 2: LED y sensor de luz

Sensor de luz y led
Sensor de luz y led
Sensor de luz y led
Sensor de luz y led

Conectando el led

  1. S -> GPIO15 (rxd0)
  2. + -> 5V
  3. G -> Resistencia 470 ohmios y GND

Conectando el sensor de luz

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

Ahora podemos probar si nuestro sensor de luz y led funciona con este pequeño script

importar RPi. GPIO como GPIO GPIO.setmode (GPIO. BCM)

Configuración de GPIO (15, GPIO. OUT)

Configuración de GPIO (17, GPIO. IN)

intente: while True:

si GPIO.input (17) == 0:

Salida GPIO (15, GPIO. ALTA)

si GPIO.input (17) == 1:

Salida GPIO (15, GPIO. LOW)

excepto KeyboardInterrupt: GPIO.cleanup ()

Paso 3: servomotor

Servo motor
Servo motor

Conexión del servomotor

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

Ahora podemos probar si nuestro sensor de luz y led funciona con este pequeño script

importar RPi. GPIO como GPIOimport time

GPIO.setmode (GPIO. BCM)

Configuración de GPIO (18, GPIO. OUT)

p = GPIO. PWM (18, 50)

p. inicio (12,5)

tratar:

mientras que es cierto:

p. ChangeDutyCycle (12.5)

hora de dormir (1)

p. ChangeDutyCycle (2.5)

hora de dormir (1)

excepto KeyboardInterrupt:

p.stop ()

GPIO.cleanup ()

Paso 4: Lector RFID RC522

Lector RFID RC522
Lector RFID RC522

Conectando la RFID

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

Ahora podemos probar si nuestro lector RFID funciona con este pequeño script

importar RPi. GPIO como GPIO

de mfrc522 importar SimpleMFRC522

lector = SimpleMFRC522 ()

text = input ('Nuevos datos:')

print ("Ahora coloca tu etiqueta para escribir")

reader.write (texto)

print ("Escrito")

Paso 5: celda de carga HX711

Célula de carga HX711
Célula de carga HX711

Conexión de la celda de carga a la placa del controlador HX711

  1. Rojo -> E +
  2. Negro -> E-
  3. Verde -> A +
  4. Blanco -> A-

Conexión de la celda de carga

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

Ahora podemos probar si nuestra celda de carga funciona con este pequeño script

importar RPi. GPIO como GPIOimportar tiempo importar sys desde klasses. HX711 importar HX711

def cleanAndSalir (): print ("Limpieza…") GPIO.cleanup () print ("¡Adiós!") sys.exit ()

altura = HX711 (22, 27)

hx.set_reading_format ("LSB", "MSB")

hx.set_reference_unit (2167)

hx.reset ()

hx.tare ()

mientras que es cierto:

tratar:

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

imprimir (val)

hx.power_down ()

hx.power_up ()

tiempo. de sueño (0.5)

excepto (KeyboardInterrupt, SystemSalir): cleanAndSalir ()

Paso 6: LCD (16 * 2)

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

Conexión de 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 -> 5 V
  14. A -> 5 V
  15. K -> GND
  16. V0 -> pin de potencia media

Ahora podemos probar si nuestra pantalla LCD funciona con este pequeño script.

importar Adafruit_CharLCD como 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')

Paso 7: circuito completo

Circuito completo
Circuito completo

aquí puedes comprobar de nuevo si todo el circuito es correcto

Paso 8: inicio del caso

Inicio del caso
Inicio del caso
Inicio del caso
Inicio del caso
Inicio del caso
Inicio del caso
Inicio del caso
Inicio del caso

Usé un dispensador de copos de maíz como depósito para la comida para perros.

Conecté la rueda del dispensador a mi servomotor

Ahora puedo controlar la rueda con mi servomotor y dejar caer la comida del depósito

Al final del depósito hay un tubo de PVC conectado que deja caer la comida en la cuna.

Uso madera como carcasa

Paso 9: Armado

Poniendo todo junto
Poniendo todo junto
Poniendo todo junto
Poniendo todo junto
Poniendo todo junto
Poniendo todo junto

Paso 10: el sitio web

El sitio web
El sitio web
El sitio web
El sitio web
El sitio web
El sitio web
El sitio web
El sitio web

Ahora que nuestra máquina funciona, necesitamos poner el sitio web en pi. Ahora todo está en funcionamiento, algunas instrucciones sobre cómo funciona el sitio.

Puede conectar su pi al wifi enchufando un cable hdmi y activarlo de esta manera

La primera página es la página de inicio, aquí puede ver:

  • Información en tiempo real sobre la luz
  • Información en tiempo real sobre la comida que queda en el tazón.
  • Puedes soltar comida
  • Información sobre el perro

La segunda página es la página de edición, aquí puede editar:

  • el nombre de tu mascota
  • la edad de tu mascota
  • el peso de tu mascota
  • la foto de tu mascota

La tercera página es la página del historial, aquí puedes ver:

  • cuando la luz se encendió
  • cuando el perro ha comido
  • cuando la comida ha caído

La cuarta página es la página de configuración, aquí puede editar:

  • cuando la comida necesita caer
  • la cantidad de comida que se va a dejar
  • comida máxima / día
  • la luz

Recomendado: