Como hacer un alimentador para mascotas con el Esp32 y servomotor | Proyecto IoT
ฝัง
- เผยแพร่เมื่อ 27 ก.ย. 2024
- En este vídeo veremos como hacer un Proyecto IoT para alimentar a nuestras mascotas con el celular a través de Telegram desde cualquier lugar, ya que usaremos el microcontrolador Nodemcu Esp32 que se conecta por WiFi y controla un servomotor.
Código, diagrama e info: github.com/ele...
Librería Arduino Telegram Bot: github.com/wit...
Como crear un Bot: blog.330ohms.c...
Suscribete 👉 / @electronicadeuna
Instagram: / electrodeuna
Suscribite a mi canal para ver mas proyectos 👉 th-cam.com/channels/sIcTN7hnZkIh9SQT_k15KA.html
Esta bueno ,hice algo igual con Arduino y la comida no bajaba la presión no dejaba bajar y la tapa no paraba la comida probaré con una botella similar
Hola amigo, espero que funcione bien!
Te funciono cambiando la botella?
Muchas gracias, si funciona
De nada Omar!
bro dos pregunta la primera como subo el programa a la placa y la segunda como hago para colocar dos chat id
Buenas lo hice tal cual pero la caja impresa en 3d tengo un inconveniente se ataszca las croketitas en el pico de la botella lo has podido solucionar? Alguns sugerencia?
@@ezepolpizza5609 hola, no tuve ese problema, quizás podrías probar con una botella con pico más ancho
Hola, que version de la libreria de servo utilizaste (a mi me sale error de la libreria Servo, ya que no es compatible con la placa)
COMO LO RESOLVISTE
??
amigo la placa no le queda a mi protoboard, no dan los pines para que sobre uno de cada lado, como puedo conectar la placa con la protoboard
Como lo conectas al celular?
Con Telegram, en la descripción está el link para crear un bot, saludos!
Excelente proyecto, ¿tienes las plantillas para construir la caja?
Hola, como estás? tengo la misma placa pero me sale un mensaje asi :Brownout detector was triggered, consultando un poco me dice por caida de voltaje, sabes si en esto influye el cable?
Hola, puede ser el cable, que no funcione bien o que sea muy largo, deberías probar con otro cable para ver si es eso.
como hiciste para que el esp32 se comunicara por medio de telegram?
Se crea un bot , puedes encontrar como hacerlo en TH-cam como " TelegramBot con esp32"
una duda ami me dice que el erro es Compilation error: expected initializer before 'bot' como podría solucionarlo
Incredible ingenioso
Gracias Guillermo!
Hola amigo, que cambios debería hacer para usarlo con MQTT?
Hola amigo no sabría decirte
Hola amigo, antes que nada, que gran proyecto hiciste, muy bueno!, tengo la duda de si me puedo conectar a otra red de wifi seguria funcionando?
Hola amigo, el esp32 siempre tiene que estar conectado a la misma red wifi que seteaste en el código.
una pregunta para controlar desde bluetooh necesita colocar algún código extra', cambiar los códigos o como lograría que funcione ?
Saludos!
Hola, necesitas código para controlar el bluetooth, este código no te sirve del todo, saludos!
@@ElectronicaDeUna
hola tengo este problema la verdad que no se como solucionarlo hay algo que me falte ?, estoy usando un espwroom32 segun lo que dice en la placa.
ATENCIÓN: la librería Servo pretende ejecutarse sobre arquitectura(s) avr, megaavr, sam, samd, nrf52, stm32f4, mbed, mbed_nano, mbed_portenta, mbed_rp2040 y puede ser incompatible con tu actual tarjeta la cual corre sobre arquitectura(s) esp32.
In file included from C:\Users\HP PAVILLION\OneDrive\Escritorio\sketch_nov18e\sketch_nov18e.ino:4:0:
C:\Users\HP PAVILLION\AppData\Local\Arduino15\libraries\Servo\src/Servo.h:77:2: error: #error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
#error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
^
Cuál es la carpeta de bibliotecas de instalación de Arduino? , es que no la encuentro
Hola, debería estar en Documentos>Arduino>libraries
Hey y esto debe estar conectado a luz todo el dia?
Hola, se puede agregar una bateria
todo está bien pero:
- al momento de pegar el código este manda a error
¿podrías ayudarme?
que error te tira?
A mí me sale un error que dice "wificlientsecure.h no such file or directory", ya agregué las bibliotecas que tú explicas pero aún así no me sale
Tengo el mismo error
@@danielafloresglez
se puede hacer igual con la freenoveesp32
??
Hola, yo creo que no habría problemas
tengo una consulta sobre el Esp32, funciona con wi fi, osea si me alejo del lugar de señal de wifi y no me puedo conectar desde mi celular, ya no podria ejecutar el dispensador por telegram??
Hola amigo, lo que necesita estar conectado al mismo wifi que seteas es el dispensador
@@ElectronicaDeUna osea si no me puedo conectar al wi fi desde mi celular porque estoy alejado de la zona de señal, el proyecto dejaría de funcionar?
@@anderson858 no, desde tu celular puedes conectarte a Internet de cualquier manera, lo único que tiene que estar conectado al wifi seteado en el código es el dispensador
@@ElectronicaDeUna osea al poner el código en la computadora, debo colocar mi red wi fi ahí, y ya luego al finalizar el proyecto, puedo viajar o cosas así y aún así controlarlo sin necesidad de conectarme a wi fi?
hola me sale este error CTBot.h: No such file or directory me podrias orientar
Hola, esa librería no se usa en el código, habrás copiado algo mal
Hola, buen video,
Estoy usando el código en el ESP32. en el ide 2.0.2 y aun teniendo el servo.h, este me da error, ya que no es valido para el esp32, que librería del servo usas? y la de wifi.h?
Un saludo
Hola amigo, fijate en el github que esta la librería de servo que deberías usar
EstÁ super este proyecto, ya lo estoy haciendo solo que el servomotor no ejecuta cuando indico en el telegram, ya comprobe si estaba bien el servo y si esta bueno, no se me ocurre que pueda ser, ayuda por favor, muchas gracias
Hola, que servo estas usando?
@@ElectronicaDeUna el servomotor es " SG90".
¿Sería posible que me dieras una asesoría? , por favor
@@jenifferforero2010lograste resolver el problema? A mi me sale lo mismo
Hola, alguien me puede decir porque no puedo compilar el programa en la tarjeta?
Hola, que error te tira?
Hola! me sale este error "WiFiClientSecure.h: No such file or directory
" ¿Cómo lo puedo solucionar? Gracias
Hola, agregaste la URL de Esp32 en las preferencias del Arduino IDE? En el GitHub esta detallado como agregarlo.
muchas gracias por su proyecto
Hola, estoy haciendo un dispensador de 4 tipos de comida, qué cambios se debe realizar en la programación?
Hola, podrias agregar el if de la linea 37 por cada tipo de comida:
if (text == "/comida") {
bot.sendMessage(chat_id, "Alimentando", "");
myservo.write(90);
delay(500);
myservo.write(0);
}
Definir la siguiente linea por cada servo:
static const int servoPin = 13;
Y en el setup() agregar la siguiente linea por servo:
myservo.attach(servoPin);
Espero que se entienda.
Hola, disculpa al incluir la librería de servo.h me dice el error aplique lo que dices en git pero no me funciona me aparece el mismo error. Que mas tengo que hacer?
Hola, puedes probar con otra librería para el servo como "ESP32Servo.h"
Disculpa quisiera saber si se pueden hacer 4 bots para un solo proyecto, es que necesito hacer un dispensador que dispense 4 productos, y lo haré con cereales
Hola, se puede pero seria mejor usar el mismo bot con 4 comandos distintos.
Que fuente utilizas?
Hola, lo uso conectado al usb pero puedes conectarlo a una fuente de 5v
No me funciona el comando al telegram sabes que pasa?
Buenas tardes muy buen proyecto lo voy hacer, si tengo alguna duda te puedo molestare jeje grande
Hola, no hay problema!
@@ElectronicaDeUna Holaaa commpañero no he logrado mover el motor y tengo el mismo código, mi motor es un GS-9025mg es diferente al tuyo pero seria la misma lógica
@@marlonandresvargasmendoza8017 hola, ese servo necesita mínimo 4.8v de alimentación, deberías conectarlo a una fuente externa
Gran video amigo, una pregunta ese código solo funciona si hay una sola ID de usuario de Telegram o tambien hay como añadir mas ID para que otras personas tambien puedan usar y accionar el comedero¿?
Hola, es solo para un ID
Tengo un problema con la biblioteca de servoesp32 alguien podría ayudarme?
Hola, que problema tenes?
@@ElectronicaDeUna en la biblioteca de servo, me aparece que no esta agregada en la carpeta e intente con la librería ESP32Servo y aparece el mismo problema
Se lo puede hacer con esp8226
Hola, no lo probé con el esp8266 pero calculo que se puede
Tienen el código
Hola, en la descripción del video
Hola es muy bueno tu proyecto quisiera saber como se conecta por telegram
Hola Felipe, en la descripción está el link para crear un bot en Telegram.
En el código donde dice “remplaza con tus credenciales de wifi” que pongo el nombre y código de mi red wifi?
Hola, nombre y contraseña de tu red wifi
Hola, me marca error en
Buenas me sale error de compilación a qué tarjeta tengo que mandar el código?
Hola, que error te tira? Tenés que seleccionar la tarjeta "DOIT ESP32 DEVKIT V1"
hola. segui todos los pasos, pero como conecto el bot de telegram al esp32 para que acepte los comandos??
En el código viene comentado donde ingresas tu bot token y tu chat id y en la descripción del video viene como hacer tu bot en telegram para obtener tu token y chat id
Hola Amigo, segui todos los pasos y corregi el error que documentaste en GIT, sin embargo no me compila con la nueva librería. Ver respuesta
In file included from C:\Users\pc explotando 3 2 1\Documents\Arduino\proyecto\proyecto.ino:3:
C:\Users\pc explotando 3 2 1\AppData\Local\Arduino15\libraries\ESP32_Arduino_Servo_Library\src/Servo.h:68:81: error: call to non-'constexpr' function 'const _Tp& std::min(const _Tp&, const _Tp&) [with _Tp = int]'
static const int TIMER_RESOLUTION = std::min(16, SOC_LEDC_TIMER_BIT_WIDE_NUM);
^
C:\Users\pc explotando 3 2 1\AppData\Local\Arduino15\libraries\ESP32_Arduino_Servo_Library\src/Servo.h: In member function 'T ServoTemplate::mapTemplate(T, T, T, T, T) const':
C:\Users\pc explotando 3 2 1\AppData\Local\Arduino15\libraries\ESP32_Arduino_Servo_Library\src/Servo.h:256:28: error: 'is_floating_point_v' is not a member of 'std'
if constexpr (std::is_floating_point_v) {
^~~~~~~~~~~~~~~~~~~
C:\Users\pc explotando 3 2 1\AppData\Local\Arduino15\libraries\ESP32_Arduino_Servo_Library\src/Servo.h:256:28: note: suggested alternative: 'is_floating_point'
if constexpr (std::is_floating_point_v) {
^~~~~~~~~~~~~~~~~~~
is_floating_point
C:\Users\pc explotando 3 2 1\AppData\Local\Arduino15\libraries\ESP32_Arduino_Servo_Library\src/Servo.h:256:49: error: expected primary-expression before '>' token
if constexpr (std::is_floating_point_v) {
^
C:\Users\pc explotando 3 2 1\AppData\Local\Arduino15\libraries\ESP32_Arduino_Servo_Library\src/Servo.h:256:50: error: expected primary-expression before ')' token
if constexpr (std::is_floating_point_v) {
^
exit status 1
Compilation error: exit status 1
Hola amigo, que error te tira?
@@ElectronicaDeUna Saludos, gracias por tu respuesta, arriba puse el error.
Busque otra librería del servo y me funcionó sin problemas, por si algo la librería que use fue la ESP32Servo en su versión 1.0.1 y el include fue el ESP32Servo.h
Hola amigo, me podrías decir dónde lo encontraste o solucionaste ya que me da el error del servo que está en la documentación de git pero no me funciona
Me encanta, podrías decirme donde encontrar el Esp32 o si se pueda encontrar en cualquier electronica?
Hola, en mercado libre o Amazon lo encontras
Hola, disculpa al incluir la librería de servo.h me dice el error aplique lo que dices en git pero no me funciona :(
tengo el mismo módulo esp32 y me aparece esto:
WARNING: library Servo claims to run on avr, megaavr, sam, samd, nrf52, stm32f4, mbed, mbed_nano, mbed_portenta, mbed_rp2040, renesas architecture(s) and may be incompatible with your current board which runs on esp32 architecture(s).
In file included from C:\Users\Chris\Downloads\Control_2Servos_IMU_Pitch_Roll\Control_2Servos_IMU_Pitch_Roll.ino:3:
C:\Users\Chris\AppData\Local\Arduino15\libraries\Servo\src/Servo.h:79:2: error: #error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
#error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
^~~~~
exit status 1
Compilation error: exit status 1
Hola, en la descripción está el link de GitHub dentro encontrarás la solución a ese error.
@@ElectronicaDeUna Gracias. Ahí pude solucionarlo. ¿Cómo puedo saber si el aparato está efectivamente conectado a mi red local?
@@maestrolopez8525 tenes que abrir el monitor serial en el arduino ide y conectar el esp32, te va a decir "WiFi conectado"
Se me queda dando vueltas el servomotor.
hola me sale esto cuando lo copilo intente ir a la placa pero esta puesta en ESP32 Dev Module me podrías decir si otra placa la que se usa
exit status 1
Error compilando para la tarjeta ESP32 Dev Module.
Hola, intenta con la placa DOIT ESP32 DEVKIT V1
Hola , necesito ayuda urgentemente, quién me haga el código perfecto para el mismo proyecto le daré 50 euros
Para versión 1.8.19 de arduino
Hola me parece un buen proyecto, sin embargo he seguido al pie de la letra los pasos y el bot no me responde a los comandos(el servomotor tampoco) tienes alguna solucion
Pd:ya cheque el link que pusiste en la descripción y tampoco pude resolverlo
Talvez sea una fallo en el hadware
Amigo pudiste solucionar el problema del bot y el servomotor?
pésimo, la conexión de cables cambia de color 2 veces, las instrucciones para usar la aplicación de arduino no son claras falta un montón de detalle para poder llevar a cabo las conexiones y configuraciones, las paginas adicionales para explicaciones no están ni de cerca preparadas para una persona que recién este comenzando, no hay explicaciones y las que hay son súper englobantes asumiendo que los pasos ya los conocen todos muy mal explicado
@@christianpascuali7135 Hola, disculpa que no te haya servido, lo tomo en cuenta para mejorar!
Hola buenas tardes, disculpa tengo una duda como te conectaste a telegram?
Hola, con la api de telegram, después tenes que crear un bot de telegram para comunicarte
@@ElectronicaDeUna Muchas gracias
Una pregunta, primero conectas el esp32s al servo, pero luego cuando lo conectas al usb al computador estan conectados de otra forma incluso de otros colores, que pasa ahí?
que deberia cambiar o agregar para que sean dos o mas alimentadores???
Usaste ESP32 DEV MODULE para subirlo y compilarlo?, es que lo utilizo y no funciona con esa
Hola, utilizé el DOIT ESP32 DEVKIT V1
DOIT ESP32 DEVKIT V1
Tengo una pregunta si necesito dos tipos de comida, que cambiaria en el proceso de programacion y de los servos?
Hola, tendrías que agregar otro servo y agregar el código para controlarlo
Loved this project.. hope this can be implemented now as well.. if so let me try.. I will be outstation and nobody to take care of my pet for 10 days.. if this works it will be really helpful for me... If I face any issues shall I comment over here??
Yes, any issue you can comment here
This doesn't require any power input???
Hola, no soy de mucho conocimiento en electrónica la microcontroladora Nodemcu Esp32 tiene alguna referencia específica?, veo varias iguales pero dicen Esp8266, o si dice Esp32 es suficiente?. Gracias
Hola, son dos microcontroladores parecidos pero busca el esp32 así no tienes problemas
Gracias
Cómo se le da corriente para el funcionamiento?, Estuve viendo el video pero no vi, hay que tenerlo conectado al computador?, Hay que comprar un módulo adicional para darle corriente a una toma?, O se le conecta directamente al módulo?
Hola, buen video,
Estoy usando el código en el ESP32 y aun teniendo el servo.h, este me da error, ya que no es valido para el esp32, que librería del servo usas? y la de wifi.h?
Hola, porque la libreria que tenes de servo.h seguramente es de Arduino, necesitas instalar la libreria servo del esp32
hola disculpa cuando intento cargar el verificar el programa me sale
exit status 1
Error compilando para la tarjeta ESP32 Dev Module. y ya puse eso en la placa o seria otra placa
Hola, tengo el mismo problema
Lograste solucionar?
Hola buenas tardes, disculpa que puedo hacer si a la hora de compilar me aparece este mensaje: (ATENCIÓN: la librería Servo pretende ejecutarse sobre arquitectura(s) avr, megaavr, sam, samd, nrf52, stm32f4, mbed, mbed_nano, mbed_portenta, mbed_rp2040, renesas, renesas_portenta, renesas_uno y puede ser incompatible con tu actual tarjeta la cual corre sobre arquitectura(s) esp32), y ya lo intente con los modelos de tarjeta: (ESP32 Dev Module, y con DOIT ESP32 DEVKIT V1)
Ya intente seguir los pasos aue estan en github para solucionar mi problema, pero me sigue apareciendo el mismo error 🥲
Hola, podrías probar borrando la librería Servo de Arduino y dejar la libreria del Esp32 que descargaste del github
@@ElectronicaDeUna buenas tardes, hice todos los pasos tal cual como indica. y me sigue apareciendo el mismo error. (incluso descargue la libreria de github y borre la de servo de arduino)
Hola 😁, disculpa de donde saco el código?
Hola, en la descripción está el link de GitHub, dentro esta el código y el diagrama.
Nunca logré que me compilara, con ninguna tarjeta, ya hasta me sé los pasos. Necesito ayudaaaa
Hola buenas tardes, alguien que me pueda ayudar, me aparecen los siguientes errores:
Arduino:1.8.19 (Windows 10), Tarjeta:"DOIT ESP32 DEVKIT V1, 80MHz, 115200, None"
ATENCIÓN: la librería Servo pretende ejecutarse sobre arquitectura(s) avr, megaavr, sam, samd, nrf52, stm32f4, mbed, mbed_nano, mbed_portenta, mbed_rp2040 y puede ser incompatible con tu actual tarjeta la cual corre sobre arquitectura(s) esp32.
In file included from D:\ESCRITORIO\sketch_may31b\sketch_may31b.ino:3:
C:\Program Files (x86)\Arduino\libraries\Servo\src/Servo.h:77:2: error: #error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
#error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
^~~~~
Se encontraron varias bibliotecas para "WiFi.h"
Usado: C:\Users\NICOR\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.3\libraries\WiFi
No usado: C:\Program Files (x86)\Arduino\libraries\WiFi
exit status 1
Error compilando para la tarjeta DOIT ESP32 DEVKIT V1.
Hola, actualicé el GitHub con la solución, espero te sirva, saludos!
oye en la parte de usuario como autorizo?
Hola, reemplazando el chatID por el tuyo ya está autorizado.
Hola. ¿Cuál es el CHAT_ID?
Hola, lo obtienes cuando creas el bot, en la descripción está el link para crearlo
Me puedes ayudar me aparecen errores en el Arduino ide
Hola, que error te aparece?
@@ElectronicaDeUna ATENCIÓN: la librería Servo pretende ejecutarse sobre arquitectura(s) avr, megaavr, sam, samd, nrf52, stm32f4, mbed, mbed_nano, mbed_portenta, mbed_rp2040 y puede ser incompatible con tu actual tarjeta la cual corre sobre arquitectura(s) esp32.
In file included from C:\Users\Pc1\AppData\Local\Temp\.arduinoIDE-unsaved2022521-3376-wb3pp2.at78\sketch_jun21a\sketch_jun21a.ino:3:0:
C:\Users\Pc1\Documents\Arduino\libraries\Servo\src/Servo.h:77:2: error: #error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
#error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
^
Compilation error: exit status 1
@@sergiosoria2200 en el github está la solución a ese error.
buenas, puede ser solo WiFi el microcontrolador?
Hola, a que te referís con que sea solo WiFi?
@@ElectronicaDeUna porque no encontramos el microcontrolador esp32 y el que si conseguimos es el esp8266, pero sin bluetooth solo tiene WiFi, se puede igual?
@@anianuu si, con ese también se puede
@@ElectronicaDeUna bueno, muchas graciaas
gracias por tu ayuda
de nada
Hola, una pregunta descargue la libreria pero no me permite usar la libreria #include me marca el error de salida 1 diciendo que no se encuentra en el directorio. como podria solucionar eso?
El error que estás experimentando indica que no se encuentra el archivo de encabezado (header file) "WiFi.h" en el entorno de Arduino. Esto se debe a que estás usando una placa ESP8266, y la librería para manejar el WiFi se llama "ESP8266WiFi.h" en lugar de "WiFi.h".
Para solucionar este error, debes cambiar la línea donde incluyes la librería "WiFi.h" por "ESP8266WiFi.h". Además, asegúrate de haber instalado correctamente la librería "ESP8266WiFi" en tu entorno de desarrollo de Arduino.
Aquí tienes el código corregido:
#include
#include
#include
#include
#include
Servo myservo; // crea el objeto servo
// GPIO de salida del servo
static const int servoPin = 13;
// Reemplazar con tus credenciales de Wifi
const char* ssid = "Tu nombre wifi";
const char* password = "Tu password";
// Inicializa Bot Telegram
#define BOTtoken "TU-TOKEN-BOT" // Tu Bot Token (Obtener de Botfather)
#define CHAT_ID "TU-CHAT-ID"
WiFiClientSecure client;
UniversalTelegramBot bot(BOTtoken, client);
void handleNewMessages(int numNewMessages) {
// Resto del código...
}
void setup() {
// Resto del código...
}
void loop() {
// Resto del código...
}
Oye bro podrías darme una asesoría con respecto a este proyecto, lo que pasa que me sale un error en la librería WiFiClientSecure.h
Que error te sale?
@@ElectronicaDeUna Este:
fatal error: WiFiClientSecure.h: No such file or directory
Te agradezco tu ayuda de ante mano.
Tengo el mismo error
@@alexisalejo3165 tienes que cambiar la placa para que soporte esp32, porque probablemente la tienes configurarada para Arduino
@@omarfrancisco5666 te puedo contactar por wpp para dudas?
este proyecto se puede realizar con el msp430g2553 ?
No, amigo
Hola me encanta tu proyecto, pero tengo algunas dudas, como podria contactarme contigo, te lo agraderia bastante.
Buen proyecto amigo, que cambios se deberían hacer para que funcione con esp8266?
Hola amigo, ningún cambio, así como esta funciona.
@@ElectronicaDeUna Gracias 👍
bien por el esp8266, pero es mucho mejor el esp32, mucho mas maquina y trae mas puertos ADC, pero en si la programacion es la misma
saludos
// Chat id of the requester
String chat_id = String(bot.messages[Wilson].chat_id);
if (chat_id != CHAT_ID)
Aqui en esta parte donde escribo mi chat_id?
Hola, no, el CHAT_ID iría en la línea 19 del código