ARDUINO®
Proyecto de
Aplicación
Nombre del Proyecto: SENSOR DE APARCAMIENTO CON ARDUINO®
1)
Descripción del proyecto:
PROYECTO SENSOR DE APARCAMIENTO
Página 1
EL PROYECTO PERMITIRÁ SENSAR LA APROXIMIDAD DE CUALQUIER OBJETO, EN CUANTO SE ACERQUE AL SENSOR ESTE ACCIONARA EL SONIDO. LA FRECUENCIA DE LA SEÑAL ACÚSTICA IRÁ EN
AUMENTO A MEDIDA QUE SE REDUCE LA DISTANCIA CON EL OBJETO Y A UNA MÍNIMA DISTANCIA, LA SEÑAL ACÚSTICA ES CONTINUA. SI LA DISTANCIA AUMENTA, LA FRECUENCIA DE LA SEÑAL ACÚSTICA AUMENTARÁ HASTA UNA DISTANCIA MÁXIMA. 2) MATERIALES EMPLEADOS:
ITEM
DESCRIPCIÓN
CANTIDAD
1
Resistencias 10 kOhms
3
2
Cables macho-macho de distintos colores
10
3
Buser
1
4
Sensor HC-SR04
1
5
Placa ARDUINO UNO
1
3) MONTAJE Y CONECIONES DE ENTRADAS Y SALIDAS USEN (FRITZING) Y (PROTEUS)
Página 2
MATERIALES: 1-Placa Arduino
2- Sensor ultrasónico HC-SR04
Página 3
3- Buzzer
4-Protoboard
5- Jumpers (cables para las conexiones)
Página 4
La idea de un sensor de proximidad es que detecte a cierta distancia un objeto para tomar una decisión en consecuencia.
El sensor ultrasónico HC-SR04 funciona más o menos así:
Emite un pulso o ráfaga de ultrasonido y recibe el eco de esta ráfaga cuando rebota contra un objeto, y mediante un cálculo podemos saber a qué distancia está el objeto.
Diagrama de conexión:
4) Código: Página 5
/* Programa que simula el funcionamiento de un sensor de aparcamiento, pitando con una frecuencia mayor conforme nos aproximamos al objeto */
int speakerPin = 8; long distancia; long tiempo; int j; void setup(){ Serial.begin(9600); pinMode(6, OUTPUT); /*activación del pin 9 como salida: para el pulso ultrasónico*/ pinMode(7, INPUT); /*activación del pin 8 como entrada: tiempo del rebote del ultrasonido*/ }
void loop(){ digitalWrite(6,LOW); /* Por cuestión de estabilización del sensor*/ delayMicroseconds(5); digitalWrite(6, HIGH); /* envío del pulso ultrasónico*/ delayMicroseconds(10); tiempo=pulseIn(7, HIGH); /* Función para medir la longitud del pulso entrante. Mide el tiempo que transcurrido entre el envío del pulso ultrasónico y cuando el sensor recibe el rebote, es decir: desde que el pin 12 empieza a recibir el rebote, HIGH, hasta que deja de hacerlo, LOW, la longitud del pulso entrante*/ distancia= int(0.017*tiempo); /*fórmula para calcular la distancia obteniendo un valor entero*/ /*Monitorización en centímetros por el monitor serial*/ Serial.println("Distancia "); Serial.println(distancia); Serial.println(" cm"); //delay(1000); if(distancia<=40) { if(distancia >=0 && distancia<=3) j = 1; Página 6
if(distancia >3 && distancia<=8) j = 50; if(distancia >8 && distancia<=20) j = 300; if(distancia >20 && distancia<=30) j = 600; if(distancia >30 && distancia<=40) j = 900; if(distancia >40) j = 1200; tone(speakerPin,349); delay(j); noTone(speakerPin); delay(100); } else { noTone(speakerPin); }
}
Página 7
Jóvenes, este material ha sido elaborado con mucho gusto. Si te es útil Regálame un Like, comenta y suscríbete :) (っ◕‿◕) Te invito al CANAL DE YOUTUBE MEKATRONICA
http://www.youtube.com/c/JovannyDuque?su b_confirmation=1_ Amigos/as en el BLOGG MEKATRONICA J DUKE podrás encontrar cantidad de recursos sobre SOLIDWORKS, HIDRÁULICA ELECTROHIDRÁULICA , NEUMÁTICA, ELECTRONEUMÁTICA, CONTROL, PLC M221, PLC SIEMEMS S7 1200, PLC SIEMENS S7 300 , FLUID SIM FACTORY IO, entre otros
https://mecatronica-itsa.blogspot.com/
Página 8