PROYECTO Comedero Automático Casero Programado Con

Anuncio
PROYECTO
Comedero Automático
Casero Programado Con
Arduino
Realizado por:
Sergio González Lucas
2º SEL
INDICE

Explicación…………………………………………………….2

Objetivo…………………………………………………………2

Justificación…………………………………………………..2

Plan de trabajo……………………………………………...3

Materiales necesarios y presupuesto…………….4

Montaje………………………………………………………..5

Programa……………………………………………………..6

Fotos…………………………………………………………….10

Bibliografía…………………………………………………..11
1
Explicación:
Lo que he realizado ha sido un dispensador automático de comida que podríamos
ponérselo a cualquier animal, aunque depende de su tamaño y de la cantidad de
alimento que necesite se debería ajustar a él. Mi primera idea fue que el recipiente
donde caería la comida se rellenase cada vez que esta se terminase pero a eso le vi
algunos fallos, ya que lo quería hacer con un sensor de luz LDR, o sea que si era de
noche o daba la casualidad que obstaculizara el paso de la luz esto no funcionaria.
Viendo todos estos fallos pensé que lo mejor y más lógico era hacerlo con un
temporizador y que cada “x” tiempo dejara caer la cantidad de comida.
Por ultimo pensé que también estaría bien poder añadirle una pantalla LCD para saber
exactamente el tiempo que le queda para la próxima recarga de comida.
Objetivo:
El objetivo de todo esto es no tener que estar todos los días pendiente de echar de
comer a tus mascotas, ya que hay días que por algunos motivos no puedes disponer de
ese tiempo o el lugar de tus mascotas está alejado de tu lugar de residencia, lo cual
hace más difícil alimentarlas y con este simple objeto podrías echar muchos menos
viajes.
Justificación
Como ya he comentado antes este proyecto lo he pensado para personas que no
pueden acercarse diariamente hasta los lugares donde tienen sus animales para
alimentarlos. Con esto no habría que ir todos los días, seria ya según se ponga de
grande el deposito donde estará la comida.
2
Plan de trabajo:
1. Pensar la idea de lo que quieres que haga el montaje y su correspondiente
programa.
2. Buscar materiales para poder hacer el dicho montaje. Estos los buscaremos en
clase, tiendas de electrónica de Albacete y ya por ultimo si no los encontramos
los pediremos por internet.
3. En esta fase se hace todo el montaje del proyecto con los materiales que
anteriormente hemos conseguido.
4. Fijándonos en nuestro montaje se realiza el código con el programa de arduino,
que más tarde introduciremos en este para que haga lo que nosotros hemos
programado.
5. Por ultimo comprobamos que todo funciona exactamente como lo aviamos
planeado al principio. Si es así ya estará acabado nuestro proyecto.
3
Materiales necesarios y presupuesto:

Arduino Uno
Precio: 25€

Cables
Precio: 3€

Placa de conexión
Precio: 6€

Pantalla LCD
Precio: 14.59€
4

Servo

Otros elementos (bridas,mangera,cinta aislante,…)
Precio: 11.90€
Precio: 3€
Precio Final: 63.49€
(Precio final con IVA)
Montaje:
5
Programa:
#include <Servo.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
Servo myservo1;
int val;
int pos;
int LightPin = 3;
int segundos;
int minutos;
int horas;
int tiempo;
int resto;
int resto2;
int pepe;
void setup()
{
Serial.begin(9600);
6
myservo1.attach(9);
myservo2.attach(10);
Serial.begin(9600);
lcd.init();
lcd.backlight();
}
void loop()
{
val = analogRead(LightPin);
val = map(val, 0, 1023, 0, 179);
tiempo=(28800);
pepe=(60);
7
while (tiempo > 0)
{
horas= tiempo/3600;
resto= tiempo%3600;
minutos=resto/60;
segundos= pepe;
Serial.println(horas);
Serial.println(minutos);
Serial.println(segundos);
lcd.print("T.Restante: ");
lcd.setCursor(1,1);
lcd.print(horas);
lcd.setCursor(2,1);
lcd.print("Hr");
lcd.setCursor(5,1);
lcd.print(minutos);
lcd.setCursor(7,1);
lcd.print("Min");
lcd.setCursor(11,1);
lcd.print(segundos);
lcd.print("Seg");
delay (1000);
//Descontamos en periodos de 1 segundo
tiempo--;
pepe -- ;
if (pepe == 0){pepe=60;}
lcd.clear();
8
//if( segundos == )
if (tiempo == 0)
//Si finaliza el tiempo
{
for(pos = 0; pos < 90; pos += 1)
{
myservo1.write(pos);
delay(15);
}
for(pos = 90; pos>=1; pos-=1)
{
myservo1.write(pos);
delay(1);
}
}
}
}
9
Fotos:
10
Bibliografía:
http://www.arduino.cc/es/
(De esta página es donde he sacado toda la información para conectar el servo y la
pantalla LCD)
11
Descargar