Estacionamiento Inteligente 1
Estacionamiento Inteligente 1
Estacionamiento Inteligente 1
GALLO
ESCUELA PROFESIONAL DE
INGENIERA ELECTRNICA
ESTACIONAMIENTO INTELIGENTE
CON ARDUINO
PRESENTADO POR:
FORMULACION
OBJETIVOS
OBJETIVOS GENERALES
OBJETIVOS ESPECIFICOS
JUSTIFICACIONES
LIMITACIONES
DRIVER L293D
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.
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.
A
R
D
U
I
N
O
CON HCSR04
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
#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;
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(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);
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
CONCLUSIONES
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