Servicio al cliente
Contacto:
Lunes-Viernes: 8:00 am - 5:00 pm
Sabado: 8:00 am - 12:00 pm
3118679028
ventas@vistronica.comAv Americas 73-61 Bogota, Cundinamarca
Envios:
Ordenes que se confirme pago antes de las 2 PM de Lunes a Viernes, se envia el mismo dia
Pagos:
Tarjeta de Credio, PSE, Bancolombia, Nequi...
Garantia:
Garantia por 3 meses por defectos de fábrica
Dispensador de Comida para mascotas con Arduino
¿Estarás fuera de tu casa por largas horas o no tienes con quien dejar a tu mascota? Con este tutorial aprenderás como hacer un dispensador de comida automático para tu mascota. No importa si estás en la oficina o simplemente ocupado en el trabajo de la casa, el poder para alimentar a su mascota está en la palma de su mano.
Materiales y partes
| x1 | Arduino Uno | ![]() |
| x1 | Sensor infrarrojo evasor de obstáculos o Sensor de Ultrasonido HC-SR04 | ![]() |
| x1 | Micro Servomotor MG90S | ![]() |
| x6 | Cables hembra macho | ![]() |
| x6 | Cables macho macho | ![]() |
|
Madera o cartón
|
![]() |
|
| Silicona | ||
| Concentrado | ![]() |
|
| |
Tu Mascota | ![]() |
Con este tutorial aprenderás dos formas fáciles de programar dos sensores diferentes para la misma aplicación, primero miraremos a fondo como trabaja es el sensor evasor de obstáculos de sutagao. Luego miraremos el sensor de ultrasonido HC- SR04.
⇒ Voltajes de entrada 3.3v o 5v
⇒ Salida análoga de 0v a 2.6v, para una entrada de 5v
⇒ Salida análoga de 0v a 1.4v, para una entrada de 3.3v
⇒ Salida digital, por interrupción de luz (con ajuste de umbral por medio de un potenciómetro)
Por otro, lado el sensor de Ultrasonido HC-SR04 son capaces de medir la distancia a la que están respecto a un objeto por medio de un sistema de medición de ecos. El sensor se alimenta a 5V, por lo que se puede alimentar directamente desde Arduino, y puede llegar a detectar objetos hasta 5 metros con una resolución de 1cm.
Las características del sensor
⇒ Voltaje de entrada de 5v
⇒ Distancia de detección 2cm - 450cm
⇒ Presisión 0.3 cm
Recuerda que puedes utilizar cualquier tipo de sensor de distancia
Pasos y Diseño
Diseño mecánico
Luego de tener todas las partes cortadas del dispensador, comenzamos a construir parte por parte, teniendo en cuenta en donde va ir el sensor, el servo motor, y el arduino.
Para empezar, construimos la tolva, doblando el cartón en las partes punteadas y unimos con silicona en la pestaña.

Debemos construir las paredes del dispensador, tomamos la pieza más grande del diseño y cortamos el agujero por donde va a salir el concentrado, doblamos por las partes punteadas, y unimos la pestaña con silicona, dejando la pestaña de la base de la caja sin unir. De esta forma:

A la misma altura de los agujeros de la tolva, hacemos dos agujeros en la caja del dispensador, uno en cada paredes laterales. Estos cuatro agujeros deben coincidir para que el eje de la tapa del dispensador pueda abrir y cerrar para que salga el concentrado.

.jpeg)

Ahora hacemos un agujero para el sensor, justamente arriba de donde sale el concentrado. El tamaño del agujero depende del sensor que vayas a utilizar, ya sea el de sensor de Sutagao o cualquier otro.

Y lo ajustamos con Silicona

Hacemos una base para ajustar el servo motor con varios cuadritos de cartón y pegamos con silicona. Ajustamos el motor a esta base. Luego medimos la distancia que debe tener el eje rotatorio (palito de balso), mas o menos 15,5cm y lo cortamos

Procedemos a ajustar el servo motor al eje rotatorio del dispensador, para esto, hacemos una "T" con el eje rotatorio. El tamaño de la "T" depende del brazo del servo motor.
_1.jpeg)
Con un bisturí hacemos un corte en cada parte de la "T" y pegamos con mucha silicona.
Ya teniendo la estructura del eje giratorio, pasamos el eje por los agujeros de la caja y ajustamos la base del motor con mucha silicona a la pared del dispensador

Cortamos por el medio el cuadro de cartón para hacer las aletas que sostendran la comida y las pegamos con silicona en el eje.

Ya tienes la parte mecánica. Ahora, aprenderás a conectar los elementos electrónicos y programar los sensores en el ARDUINO
Diseño Electrónico
Para el sensor infrarrojo evasor de obstáculos primero conectamos
⇒ Conectar A0 del sensor con A1 de arduino
⇒ Conectar GND con GND
En el caso del servo conectamos
⇒ Conectar cable rojo con 5V
⇒ Conectar cable naranja a PIN 9
⇒ Conectar cable café con GND
- Ensamble electrónico

⇒ Conectar +5V del sensor al pin 5V de arduino
⇒ Conectar pin Echo del sensor con pin 8 de arduino
⇒ Conectar pin Trigger del sensor con pin 9 de arduino
⇒ Conectar GND con GND
⇒ Conectar cable naranja a PIN 9
⇒ Conectar cable café con GND
- Ensamble electrónico

Software
| Código para sensor evasor de obstáculos |
#include <Servo.h> // Incluímos la librería para poder controlar el servoServo servoMotor; // Declaramos la variable para controlar el servoint pinReceptor = A1; //Establecemos el pin a leerint sensorVal; //Declaramos una variable para almacenar el valor de la lecturaboolean leerSensor = true;void setup(){Serial.begin(9600); // Abrimos comunicación SerialservoMotor.attach(9);servoMotor.write(150); }void loop(){servoMotor.attach(9);sensorVal = analogRead(pinReceptor); //Guardamos la lectura del pin AnalógicoSerial.println("Analoga:");Serial.println(sensorVal); //Sacamos la lectura por serialdelay(500); //Pequeña pausa de medio segundoif (sensorVal <= 45 && leerSensor) { if(leerSensor){ leerSensor = false; } servoMotor.write(20); // Desplazamos a la posición 0º delay(2000); servoMotor.write(155); // Desplazamos a la posición 170º delay(2000); servoMotor.write(20); // Desplazamos a la posición 0º delay(2000); servoMotor.write(150); // Desplazamos a la posición 170º delay(2000); } } |
| Código para sensor de Ultrasonido HC-SR04 |
// Incluímos la librería para poder controlar el servo#include <Servo.h>// DECLARACION DE VARIABLES PARA PINESconst int pinecho = 8;const int pintrigger = 9;const int pinled = 13;// Declaramos la variable para controlar el servoServo servoMotor; // VARIABLES PARA CALCULOSunsigned int tiempo, distancia;boolean leerSensor = true;void setup() { // PREPARAR LA COMUNICACION SERIAL Serial.begin(9600); // CONFIGURAR PINES DE ENTRADA Y SALIDA pinMode(pinecho, INPUT); pinMode(pintrigger, OUTPUT); servoMotor.write(0);}void loop() { servoMotor.attach(11); // ENVIAR PULSO DE DISPARO EN EL PIN "TRIGGER" digitalWrite(pintrigger, LOW); delayMicroseconds(2); digitalWrite(pintrigger, HIGH); // EL PULSO DURA AL MENOS 10 uS EN ESTADO ALTO delayMicroseconds(10); digitalWrite(pintrigger, LOW); // MEDIR EL TIEMPO EN ESTADO ALTO DEL PIN "ECHO" EL PULSO ES PROPORCIONAL A LA DISTANCIA MEDIDA tiempo = pulseIn(pinecho, HIGH); // LA VELOCIDAD DEL SONIDO ES DE 340 M/S O 29 MICROSEGUNDOS POR CENTIMETRO // DIVIDIMOS EL TIEMPO DEL PULSO ENTRE 58, TIEMPO QUE TARDA RECORRER IDA Y VUELTA UN cENTIMETRO LA ONDA SONORA distancia = tiempo / 58; // ENVIAR EL RESULTADO AL MONITOR SERIAL Serial.print(distancia); Serial.println(" cm"); delay(200); // ENCENDER SERVO CUANDO SE CUMPLA CON CIERTA DISTANCIA if (distancia <=16 && distancia >= 8 && leerSensor) { if(leerSensor){ leerSensor = false; } // Desplazamos a la posición 0º servoMotor.write(180); delay(2000); // Desplazamos a la posición 160º servoMotor.write(0); // Esperamos 3 segundo delay(2000); // Desplazamos a la posición 0º servoMotor.write(180); delay(2000); // Desplazamos a la posición 160º servoMotor.write(0); // Esperamos 3 segundo delay(2000); }} |
Calibración
Para la calibración abrimos el Monitor serial de Arduino, y vemos los valores que está leyendo el sensor; caracterizas el sensor, mirando los valores al acercar un objeto, y así sabes cuales valores son los necesarios para que abra la tapa del dispensador con el servo motor, al acercarse tu mascota.
Ensamble Final
Para finalizar ajustamos con tornillos el arduino a la base del dispensador 
Conectamos el sensor, ya sea el Ultrasonido o el infrarrojo, pasando los cables hacia la base de la caja por el lado de la rampa del dispensador. Ten en cuenta los cables y contecta al arduino como explicamos anteriormente..jpeg)

Haz el mismo procedimiento con los cables del motor, ten en cuenta que no se enreden con la T del eje rotatorio

Hazle formas divertidas a la caja y decora como quieras
Hagamos de Colombia un país más innovador








Deja un comentario