Vous êtes sur la page 1sur 15

UNIVERSIDAD NACIONAL PERO RUIZ GALLO

FACULTAD DE CIENCIAS FSICAS Y MATEMTICAS


ESCUELA PROFESIONAL DE INGENIERA
ELECTRNICA





ESTACIONAMIENTO INTELIGENTE CON
ARDUINO

PRESENTADO POR:
- ALTAMIRANO MEGO MIGUEL NGEL.
- CASTILLO ELERA CRISTIAN.
- QUIROZ CAMPOVERDE JORGE ANIBAL.
- REVILLA PREZ ELIO FRANCISCO.





ESTACIONAMIENTO INTELIGENTE

FORMULACION
El proyecto consiste en un sistema inteligente que controla el flujo de los carros en
un estacionamiento, visualizando en una pantalla LCD la cantidad de lugares
disponibles que existen en el estacionamiento
.
OBJETIVOS
OBJETIVOS GENERALES

Desarrollar la tecnologa en todos los estacionamientos u otros servicios
pblicos

OBJETIVOS ESPECIFICOS

Disminuir gastos en el personal de servicio
Estimular la tecnologa en nuestro pas
Dando un mejor orden en dicha ciudad

JUSTIFICACIONES

Este proyecto lo realizamos con la finalidad de facilitar el orden , la economa, el
tiempo tanto del ofertante como el demandante , manteniendo la mejor tecnologa.

LIMITACIONES

La tecnologa utilizada es bsica pero muy buena , utilizando un ARDUINO
MEGA u otros componentes electrnicos

Este proyecto se utilizara en estacionamientos en el centro o fuera de la
ciudad

Tiempo de duracin del proyecto es de larga vida, si los componentes se
caducan se pueden cambiar y asi continuar con el servicio

Actualmente no se cuanto de dinero ser disponible para finaciarlo he
instalarlo, x ahora ser un estudio de factibilidad
FUNDAMENTOS TEORICOS
Veremos la investigacin de los componentes utilizados con dicho circuito utilizado

DRIVER L293D
L293D es un controlador de motor tpico o Motor Driver IC que permite motor de
corriente continua para conducir en cualquier direccin. L293D es un 16-pin IC que
puede controlar un conjunto de dos motores de corriente continua a la vez en
cualquier direccin.
Se basa en el concepto de puente H. H-puente es un circuito que permite que el
voltaje que se recorra en cualquier direccin. Como usted sabe necesidad de
tensin para cambiar su direccin para poder hacer girar el motor en sentido
horario o anti horario, ah puente H IC son ideales para la conduccin de un motor
de corriente continua.













ARDUINO CON LCD
El LCD tiene un interfaz paralelo, significando esto que el micro controlador tiene
que manipular varios pines del interfaz a la vez para controlarlo. El interfaz consta
de los siguientes pines:
Un pin de seleccin de registro (RS) que controla en qu parte de la memoria del
LCD ests escribiendo datos. Puedes seleccionar bien el registro de datos, que
mantiene lo que sale en la pantalla, o un registro de instruccin, que es donde el
controlador del LCD busca las instrucciones para saber cual es lo siguiente que
hay que hacer.
El pin de lectura/escritura (R/W)que selecciona el modo de lectura o el de
escritura.
Un pin para habilitar (enable) que habilita los registros.
8 pines de datos (D00-D07). Los estados de estos pines (nivel alto o bajo) son los
bits que ests escribiendo a un registro cuando escribes, o los valores de lectura
cuando ests leyendo.
Hay tambin un pin de contraste del display (Vo), pines de alimentacin (+5V y
GND) y pines de retro-iluminacin (Bklt+ y Bklt-), que te permiten alimentar el LCD,
controlar el contraste del display, o encender y apagar la retro-iluminacin,
respectivamente.
El proceso de controlar el display involucra la colocacin de los datos que
componen la imagen de lo que quieres mostrar, en los registros de datos, y luego,
colocar las instrucciones, en el registro de instrucciones. La librera LiquidCrystal
te simplifica todo este proceso de forma que no necesitas saber las instrucciones
de bajo nivel.
Los LCD-s compatibles con Hitachi pueden ser controlados de dos modos: 4 bits u
8 bits. El modo de 4 bits requiere siete pines de E/S de Arduino, mientras el modo
de 8 bits requiere 11 pines. Para mostrar texto en la pantalla, puedes hacer la
mayora de las cosas en modo 4 bits, por lo que el ejemplo muestra como
controlar un LCD de 2x16 en modo de 4 bits.





ARDUINO CON HCSR04
Si est en fuente de un mdulo que van por ultrasonidos, el HC-SR04 es una
buena elegir. Su rendimiento estable y de alta precisin que van lo convierten en
un mdulo muy popular en el mercado electrnico.

Especificaciones :

fuente de alimentacin: 5V DC
corriente de reposo: <= 2 mA
ngulo eficaz: <= 15
distancia que vara: 3 cm - 400 cm
Resolucin: 0,3 cm
Existen 4 patillas de mdulo: VCC, trig, Echo, GND. As que es una interfaz muy
fcil para el regulador de usarlo alcance.













ARDUINO CON LDR
las fotoclulas son sensores que le permiten detectar la luz. Son pequeas, de
bajo costo, bajo consumo de energa, fcil de usar y no se desgastan. Por esa
razn, a menudo aparecen en los juguetes, los aparatos y electrodomsticos.
Theys estn a menudo se conocen como clulas de CdS (se hacen de cadmio-
sulfuro de), resistencias dependientes de la luz (LDR) y fotorresistores.

Las fotoclulas son bsicamente un resistor que cambia su valor resistivo (en
ohmios ) en funcin de la cantidad de luz que brilla sobre la cara ondulada. Son
de muy bajo costo, fcil de conseguir en muchos tamaos y especificaciones, pero
son muy Incorrecto. Cada sensor fotoclula actuar de manera diferente que el
otro, aunque sean del mismo lote. Las variaciones pueden ser muy grandes, el
50% o ms! Por esta razn, no deberan ser utilizadas para tratar de determinar
los niveles de luz precisas en lux o Intensidad lumnica. En su lugar, usted puede
esperar que slo es capaz de determinar los cambios de luz bsicos
Para la mayora de las aplicaciones de la luz-sentsitive como "es claro u oscuro
out", "hay algo en frente del sensor (que sera bloquear la luz)", "hay algo
interrumpe un haz de lser" (sensores de rotura de vigas), o "cul de mltiples
sensores tiene la mayora de la luz golpeando", fotoclulas pueden ser una buena
opcin!
















MOTOR BIPOLAR
Los denominados motores paso a paso (PaP), son
un caso bastante particular dentro de los motores
en general. La seal elctrica de alimentacin no es
ni c.c. ni c.a. como en otros casos, sino un tren de
pulsos
que se suceden con una secuencia, previamente
definida, a cada una de las bobinas que componen
el estator. Cada vez que a alguna de estas bobinas
se les aplica un pulso, el motor se desplaza un paso,
y queda fijo en esa posicin. Dependiendo de las
caractersticas constructivas del motor este
paso puede ser desde 90 hasta incluso 0,9. Por lo tanto, si somos capaces de
mover el motor en pequeos pasos, esto nos va a permitir controlar su posicin,
con mayor o menor precisin
dependiendo del avance de cada paso.
Adems, variando la frecuencia con la que se aplican los pulsos, tambin
estaremos variando la velocidad con que se mueve el motor, lo que nos permite
realizar un control de velocidad. Por ltimo si invertimos la secuencia de los
pulsos de alimentacin aplicados a las bobinas, estaremos realizando una
inversin en el sentido de giro del motor.
SECUENCIA DE UN MOTOR PAP BIPOLAR

















PROGRAMACION
#include<LiquidCrystal.h>
constint fotores01=0;
constint LED=22;
int foto01=0;
constint TRIG = 11;
constint ECHO =10;
constint TRIG1 = 9;
constint ECHO1 =7;
int x=4;
intvacio=4;

int motorPin1 = 26; // Pines del Motor
int motorPin2 = 28;
int motorPin3 = 30;
int motorPin4 = 32;
intdelayTime = 2000; // DelayTime determina la espera entre uno
y otro paso
int delayTime1 = 35; // DelayTime1 determina la velocidad de
giro entre uno y otro paso
int enable1=30;

int motorPinS1 = 36; // Pines del Motor
int motorPinS2 = 40;
int motorPinS3 = 44;
int motorPinS4 = 48;
intdelayTimeS = 2000; // DelayTime determina la espera entre
uno y otro paso
int delayTimeS1 = 35; // DelayTime1 determina la velocidad de
giro entre uno y otro paso
int enableS1=30;

LiquidCrystallcd(13, 12, 5, 4, 3, 2); //define pines del LCD

voidsetup() {
Serial.begin(9600);
pinMode(motorPin1, OUTPUT); // Configuracin de los Pines como
salida digital
pinMode(motorPin2, OUTPUT);
pinMode(motorPin3, OUTPUT);
pinMode(motorPin4, OUTPUT);
pinMode(enable1,OUTPUT);

pinMode(motorPinS1, OUTPUT); // Configuracin de los Pines como
salida digital
pinMode(motorPinS2, OUTPUT);
pinMode(motorPinS3, OUTPUT);
pinMode(motorPinS4, OUTPUT);
pinMode(enableS1,OUTPUT);

pinMode(LED,OUTPUT);
pinMode(TRIG,OUTPUT);
pinMode(ECHO,INPUT);
pinMode(TRIG1,OUTPUT);
pinMode(ECHO1,INPUT);
lcd.begin(16, 2); // define el lcd de cuantos es
lcd.print("ESTACIONAMIENTO"); // mensaje en el lcd
}

voidloop() {
lcd.setCursor(2, 1);
lcd.print("ESPAC VACIO");
lcd.setCursor(0, 1);
lcd.print(vacio);

foto01= analogRead(fotores01)/4;
if(foto01<248)
{
digitalWrite(LED,LOW);
}
if(foto01>250)
{
digitalWrite(LED,HIGH);
}

longduracion,distancia;
digitalWrite(TRIG,LOW);
delayMicroseconds(2);
digitalWrite(TRIG,HIGH);
delayMicroseconds(10);
digitalWrite(TRIG,LOW);
duracion=pulseIn(ECHO,HIGH);
distancia=(duracion/2)/29;

long duracion1,distancia1;
digitalWrite(TRIG1,LOW);
delayMicroseconds(2);
digitalWrite(TRIG1,HIGH);
delayMicroseconds(10);
digitalWrite(TRIG1,LOW);
duracion1=pulseIn(ECHO1,HIGH);
distancia1=(duracion1/2)/29;

if(distancia<=6)
{
x=x-1;
vacio=x;
delay(500);
digitalWrite(enable1, HIGH);
for(int i=0;i<6;i++)
{
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, HIGH);
digitalWrite(motorPin4, LOW);
delay(delayTime1);

digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, HIGH);
delay(delayTime1);

digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, HIGH);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, HIGH);
delay(delayTime1);

digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, HIGH);
digitalWrite(motorPin3, HIGH);
digitalWrite(motorPin4, LOW);
delay(delayTime1);

}
delay(delayTime);


for(int i=0;i<6;i++)
{
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, HIGH);
digitalWrite(motorPin3, HIGH);
digitalWrite(motorPin4, LOW);
delay(delayTime1);

digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, HIGH);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, HIGH);
delay(delayTime1);

digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, HIGH);
delay(delayTime1);

digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, HIGH);
digitalWrite(motorPin4, LOW);
delay(delayTime1);

}
delay(3000);

}

if(distancia1<=4)
{
x=x+1;
vacio=x;
delay(500);

digitalWrite(enableS1, HIGH);

for(int i=0;i<3;i++)
{
digitalWrite(motorPinS1, HIGH);
digitalWrite(motorPinS2, LOW);
digitalWrite(motorPinS3, HIGH);
digitalWrite(motorPinS4, LOW);
delay(delayTimeS1);

digitalWrite(motorPinS1, HIGH);
digitalWrite(motorPinS2, LOW);
digitalWrite(motorPinS3, LOW);
digitalWrite(motorPinS4, HIGH);
delay(delayTimeS1);

digitalWrite(motorPinS1, LOW);
digitalWrite(motorPinS2, HIGH);
digitalWrite(motorPinS3, LOW);
digitalWrite(motorPinS4, HIGH);
delay(delayTimeS1);

digitalWrite(motorPinS1, LOW);
digitalWrite(motorPinS2, HIGH);
digitalWrite(motorPinS3, HIGH);
digitalWrite(motorPinS4, LOW);
delay(delayTimeS1);
}
delay(3000);

for(int i=0;i<3;i++)
{
digitalWrite(motorPinS1, LOW);
digitalWrite(motorPinS2, HIGH);
digitalWrite(motorPinS3, HIGH);
digitalWrite(motorPinS4, LOW);
delay(delayTimeS1);

digitalWrite(motorPinS1, LOW);
digitalWrite(motorPinS2, HIGH);
digitalWrite(motorPinS3, LOW);
digitalWrite(motorPinS4, HIGH);
delay(delayTimeS1);

digitalWrite(motorPinS1, HIGH);
digitalWrite(motorPinS2, LOW);
digitalWrite(motorPinS3, LOW);
digitalWrite(motorPinS4, HIGH);
delay(delayTimeS1);

digitalWrite(motorPinS1, HIGH);
digitalWrite(motorPinS2, LOW);
digitalWrite(motorPinS3, HIGH);
digitalWrite(motorPinS4, LOW);
delay(delayTimeS1);

}
delay(delayTimeS);

}



if(distancia>=500 || distancia <=0)
{
Serial.println("FUERA DE ALCANCE");
}
else
{
Serial.print(distancia);
Serial.println("cm-ENTRADA");
}
delay(1000);

if(distancia1>=500 || distancia1 <=0)
{
Serial.println("FUERA DE ALCANCE");
}
else
{
Serial.print(distancia1);
Serial.println("cm-SALIDA");
}
delay(1000);

}





ANTECEDENTES

Este proyecto ya asido planteado por otros, haban utilizado como sensores solo
foto celdas, nosotros teniendo un perspectiva ms eficaz y no haya ningn
problema hemos trabajado con sensores HCSR04.

PRESUPUESTO

El estacionamiento es muy inteligente y tambin econmico, el costo ha sido sin
considerar el arduino mega

(2) Motor paso a paso bipolares. -----------------------------6.00
(1) Pantalla LCD.---------------------------------------------------14.00
(2) Sensores ultrasnicos HCSR04.---------------------------20.00
(1) LDR.--------------------------------------------------------------- 0.5
(10) Resistencias de 330 .------------------------------------- 1.00
(6) Diodos led.------------------------------------------------------1.00
(1) regulador 7805------------------------------------------------0.5
(2) L293b------------------------------------------------------------8.00
cables para protoboard------------------------------------------1.00
Pintura negra.------------------------------------------------------2.00
Una base de cartn prensado.---------------------------------2.00
Aproximadamente es costo es un total de 56 soles

CONCLUSIONES

Para perfeccionar este proyecto, necesitara tener 2 ms sensores ya si
ubicarlos respectivamente con su programacin

Ha sido un arduo trabajo, nosotros como estudiantes nos sentimos muy
emocionados en realizar este proyecto, trabajamos una semana
aproximadamente 5 horas diarias, pero vali la pena.

Una opcin de mejorar y perfeccionarlo este proyecto es conectarlo a un
GPS, por medio de internet , para as facilitar a los clientes el servicio
brindado

BIBLIOGRAFIA

http://mirrors.arcadecontrols.com/ladyyada.net/learn/sensors/cds.html
http://arduino.cc/es/Tutorial/LiquidCrystal
http://www.youtube.com/watch?v=DkzMpiDymRc
http://dfists.ua.es/~jpomares/arduino/page_01.htm

Vous aimerez peut-être aussi