Tabla de contenido:
- Suministros
- Paso 1: ¿Cómo funciona?
- Paso 2: software
- Paso 3: diseño del circuito
- Paso 4: Artesanía
- Paso 5: Mosquitto
- Paso 6: IDE de Arduino
- Paso 7: Ngrok
- Paso 8: Node-RED
- Paso 9: Conclusión
Video: Alimentador inteligente para mascotas: 9 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:41
¿Tienes una mascota?
- No: ¡adopta uno! (y regrese a este instructivo).
- Sí: ¡buen trabajo!
¿No sería genial si pudieras alimentar y dar agua a tu ser querido sin cancelar planes para poder llegar a casa a tiempo? Decimos no te preocupes más.
En este proyecto hemos realizado un dispensador de agua y comida a control remoto (a través de la web).
A través del panel de control en línea, puede ver datos y controlar los dispensadores:
- Ver los niveles de agua y comida en los tanques.
- Vea los niveles de comida y agua en los tazones.
- ¿El animal come o bebe en este momento?
- Programe las alimentaciones (el dispositivo no dispensará comida si hay suficiente comida en el tazón).
- Dispensa agua automáticamente cuando el recipiente se vacía.
- Dispense alimentos / agua con solo presionar un botón.
- Reciba notificaciones automáticas en su teléfono (mediante la aplicación Telegram).
¿Quienes somos?
Creado por Tom Kaufman y Katya Fichman, estudiantes de Ciencias de la Computación en IDC Herzliya.
Este proyecto se realizó para un curso de IOT.
Suministros
Electrónica
- 2 X ESP8266 (Wemos d1 mini).
- Cables de puente.
- 2 X Protoboard.
- 4 X sensor ultrasónico.
- 2 X Celda de carga.
- 2 X Amplificador de celda de carga (HX711).
- Servo (180 °).
- Servo (rotación continua).
- Fuente de alimentación 2 X 6V.
Partes
- Dispensador de copos de maíz (enlace de Amazon).
- Embudo del dispensador de alimentos impreso en 3D (https://www.thingiverse.com/thing:3998805).
- Servo accesorio del dispensador de alimentos impreso en 3D (https://www.thingiverse.com/thing:3269637).
- Stand del dispensador de alimentos impreso en 3D (diseñado para este proyecto:
- Base y placa de celda de carga impresa en 3D (diseñada para este proyecto:
- Dispensador de agua (enlace de Amazon a algo similar).
- Cable (para conectar la perilla del dispensador de agua al servo).
- 3 X Soporte de sensor ultrasónico.
Paso 1: ¿Cómo funciona?
Las placas ESP8266 envían las lecturas de los sensores a Node-RED a través de Mosquitto (agente MQTT).
Node-RED procesa los datos, realiza las acciones correspondientes (también envía comandos de dispensación a los tableros ESP8266 a través de Mosquitto) y muestra información en el tablero.
Todos los cálculos se realizan en Node-RED, por lo que sería fácil replicar este proyecto y cambiar el procesamiento de los datos de acuerdo con sus configuraciones y preferencias sin ensuciarse las manos con la codificación.
Paso 2: software
IDE de Arduino
Descargue e instale (enlace:
Mosquitto
Descargue e instale (enlace:
Node.js
Descargue e instale (enlace:
Nodo-RED
Siga las instrucciones:
ngrok
Descarga:
Telegrama
Instale la aplicación en su teléfono inteligente.
Paso 3: diseño del circuito
* Ambos dispositivos tienen circuitos idénticos
Dispensador de agua
-
Sensor ultrasónico (para el tanque de agua)
- GND - G
- VCC - 5 V
- ECHO - D5
- GATILLO - D0
-
Sensor ultrasónico (para la distancia de la mascota al recipiente)
- GND - G
- VCC - 5 V
- ECO - D6
- GATILLO - D7
- Célula de carga
- VERDE - A + (HX711)
- BLANCO - A- (HX711)
- NEGRO - E- (HX711)
- ROJO - E + (HX711)
-
HX711 (amplificador de celda de carga)
- GND - G
- VCC - 5 V
- DT - D4
- SCK - D3
-
Servo (180 °)
- GND - G
- VCC - 5 V
Dispensador de alimentos
-
Sensor ultrasónico (para el tanque de alimentos)
- GND - G
- VCC - 5 V
- ECHO - D5
- GATILLO - D0
-
Sensor ultrasónico (para la distancia de la mascota al cuenco)
- GND - G
- VCC - 5 V
- ECO - D6
- GATILLO - D7
- Célula de carga
- VERDE - A + (HX711)
- BLANCO - A- (HX711)
- NEGRO - E- (HX711)
- ROJO - E + (HX711)
-
HX711 (amplificador de celda de carga)
- GND - G
- VCC - 5 V
- DT - D4
- SCK - D3
-
Servo (rotación continua)
- GND - G
- VCC - 5 V
- CONTROL - D8
Paso 4: Artesanía
Dispensador de agua
- Pegue el servo a la parte superior de la parte inferior del dispensador (como se muestra en la foto).
- Haz un pequeño agujero en la perilla del dispensador de agua.
- Conecte el cabezal del servo a la perilla con un cable (asegúrese de que el cabezal del servo esté en la posición 0 y asegúrese de que el cable esté apretado).
- Pegue un sensor ultrasónico al lado interior del tanque, cerca de su parte superior (sensor hacia abajo).
- Pegue un sensor ultrasónico debajo de la perilla de agua hacia el exterior (asegúrese de que esté lo suficientemente alto para que el recipiente de agua no afecte sus lecturas).
Dispensador de comida
- Atornille el servo a su soporte (pieza impresa en 3D).
- Pegue el embudo (parte impresa en 3D) al soporte del tanque (parte impresa en 3D).
- Conecte el soporte del tanque al soporte del dispensador (parte impresa en 3D) y coloque el tanque en su lugar.
- Inserte la parte giratoria (impresa en 3D) en su lugar y a través de la parte de goma giratoria del dispensador.
- Atornille la parte del soporte del servo al soporte del dispensador.
- Pegue un sensor ultrasónico al lado interior de la tapa del tanque (sensor hacia abajo).
- Pegue un sensor ultrasónico al lado del soporte del tanque que mira hacia el lugar donde comerá su mascota.
Células de carga
Pegue cada celda de carga a la base y placa impresas en 3D (la flecha de la celda de carga hacia abajo)
Paso 5: Mosquitto
Abra Mosquitto (usuarios de Windows: vaya a la carpeta Mosquitto, abra cmd e ingrese: "mosquitto -v").
* Para obtener la dirección IP interna de la computadora, ejecute cmd e ingrese "ipconfig".
Paso 6: IDE de Arduino
Abra el IDE de Arduino y siga la parte "Instalar el complemento ESP8266 en el IDE de Arduino" de esta guía:
Vaya a Herramientas-> Tablero y elija "LOLIN (WEMOS) D1 R2 & mini".
Vaya a Sketch-> Incluir biblioteca-> Agregar biblioteca. ZIP … y agregue las 3 bibliotecas en el archivo "Libraries.rar".
Abra el boceto "HX711Calibration", cárguelo en ambos ESP8266, ejecútelo y siga las instrucciones (al principio del código y en el monitor en serie) para calibrar las celdas de carga (asegúrese de que la velocidad en baudios del monitor en serie esté configurada en 115200 baudios).
* Anote el factor de calibración y la compensación cero (para uso posterior).
Abra los bocetos de "Dispensador de alimentos" y "Dispensador de agua" a través del IDE y cambie las siguientes variables con su configuración (en el archivo "Configuración.h"):
- WIFI_SSID
- CONTRASEÑA DE WIFI
- MQTT_SERVER
- LOAD_CELL_CALIBRATION_FACTOR
- LOAD_CELL_ZERO_OFFSET
* En MQTT_SERVER ingrese la dirección IP interna del paso "Mosquitto".
Sube los bocetos a tus dos ESP8266 (un código para cada placa).
* Tenga en cuenta que hemos utilizado la biblioteca "AsyncMqttClient" y no la biblioteca "pubsubclient" más común, ya que el esp8266 se bloquea cuando se combina con la biblioteca "HX711".
* Si opta por realizar cambios en el código, asegúrese de no utilizar las funciones de "retraso" y "rendimiento" dentro de las funciones de devolución de llamada, ya que provocaría bloqueos.
Paso 7: Ngrok
Descomprima el archivo descargado (desde el enlace en el paso "Software").
Abra "ngrok.exe" y ejecute el comando "ngrok http 1880".
* Puede seleccionar la región más cercana a usted (au, eu, ap, us, jp, in, sa). El predeterminado somos nosotros.
Por ejemplo, ejecutando el comando: "ngrok http --region = eu 1880" (establezca la región en Europa).
Ahora verá su dirección web para uso externo (nos referiremos a esta dirección como YOUR_NGROK_ADDRESS).
Paso 8: Node-RED
Abra Node-RED (usuarios de Windows: abra cmd e ingrese "node-red") y vaya a https:// localhost: 1880 (si no funciona, busque la dirección en la ventana de cmd donde está escrito "Servidor ahora corriendo en ").
Abra el menú (en la esquina superior derecha) y presione "Administrar paleta".
Vaya a la pestaña "Instalar", busque e instale estos módulos:
- node-red-contrib-persist.
- node-red-contrib-cron-plus.
- node-red-contrib-ui-led.
- node-red-dashboard.
- node-red-contrib-telegrambot.
Vaya al menú-> Importar y cargue el archivo de flujo (extraiga el archivo RAR adjunto y cargue el archivo json).
Consulte las imágenes adjuntas para obtener explicaciones sobre el flujo.
Deberá modificar estos nodos con su configuración:
- Actualiza el perfil del nodo "Remitente de Telegram" con el nombre de usuario y el token de tu bot (usa esta guía:
- En la parte inferior del flujo, cambie las cargas útiles de los nodos "Dirección de Ngrok" e "Id. De chat de Telegram" (obtenga su identificación de chat utilizando la guía de Telegram en el enlace de arriba).
-
En la parte inferior del flujo hay nodos de configuración; modifíquelos según sus necesidades:
- Activar las alertas de mascota está comiendo / bebiendo.
- Defina cuál es la distancia para activar la alerta de comer / beber.
- Definir el procesamiento de datos de tazones y tanques.
- Modifique los tiempos de dispensación (durante cuánto tiempo se dispensan: modo automático y pulsación de botón).
- Defina el porcentaje del umbral de desbordamiento del tazón de comida (cancele la dispensación automática de alimentos si hay suficiente comida en el tazón).
Implemente el flujo (en la parte superior derecha).
* Solo en la primera implementación, verá una advertencia en la ventana de depuración sobre la falta del archivo 'persistance.json'. No se preocupe, ya que en el momento en que establecerá los tiempos de alimentación o cambiará el interruptor automático de agua, inicializará este archivo y ya no tendrá esta advertencia.
Puede ver su panel en https:// NODE-RED_PC'S_INTERNAL_IP_ADDRESS: 1880 / ui (si está conectado a la misma LAN que el servidor) o YOUR_NGROK_ADDRESS / ui (desde cualquier lugar).
Paso 9: Conclusión
Esperamos que este tutorial sea informativo y fácil de leer, comprender e implementar.
Siéntete libre de preguntarnos lo que sea.
Recomendado:
Alimentador automático de mascotas con AtTiny85: 6 pasos
Alimentador automático de mascotas con AtTiny85: O trabalho Alimentador automático de mascotas con AtTiny85 de PET Engenharia de Computação está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional
SmartPET - Alimentador inteligente para mascotas: 7 pasos (con imágenes)
SmartPET - Alimentador inteligente para mascotas: ¡Oye! Soy Maxime Vermeeren, un estudiante de MCT (Multimedia y tecnología de la comunicación) de 18 años en Howest. Elegí crear un comedero inteligente para mascotas como mi proyecto. ¿Por qué hice esto? Mi gato tiene algunos problemas de peso, así que decidí hacer una máquina para
Alimentador inteligente para mascotas: 11 pasos
Alimentador inteligente para mascotas: Soy estudiante de Howest Kortrijk Academy en Bélgica. Hice un comedero especialmente para gatos y perros. Hice este proyecto para mi perro. Muchas veces no estoy en casa para alimentar a mi perro por la noche. Por eso mi perro tiene que esperar para conseguir su comida. Con th
Alimentador Automático Bluetooth Para Mascotas Con Arduino: 8 Pasos
Alimentador Automático Bluetooth Para Mascotas Con Arduino: Hola! Mi nombre es Tadeo del canal de Youtube El Taller De TD, en el tutorial de hoy aprenderás a construir un alimentador automático bluetooth para mascotas con Arduino, para que puedas darle un pequeño premio a tu mejor amigo cuando quieras y des
Alimentador de mascotas de Google Assistance: 3 pasos
Google Assistance Pet Fedder: Introducción: Bueno, resulta que soy demasiado vago e iniciar sesión en la consola en la nube de Bolt para alimentar a mi mascota fue demasiado, así que utilicé la nube de Bolt y el servicio de IFTTT para alimentar a mi mascota cada vez que le diga al Asistente de Google en mi teléfono que lo haga. TLD