//************PRÁCTICA 11***************
//Sensor ultrasónico HC-SR04 y monitor serial. Medir distancias
//dentro de un rango
//Frecuencia 40 Khz
//Rango 2 a 400 cms
int TRIG = 10; //pin lee el pulso para empezar la medición
int ECO = 9;
int LED = 3;
int DURACION;
int DISTANCIA;
void setup() {
pinMode(TRIG, OUTPUT);
pinMode(ECO, INPUT);
pinMode(LED, OUTPUT);
//activar la comunicación serial
Serial.begin(9600); //9600 es la tasa de velocidad de comunicación,
//cantida de bits por segundo que se recibe
}
void loop() {
digitalWrite(TRIG, HIGH);
delay(1);
digitalWrite(TRIG, LOW);
DURACION = pulseIn(ECO, HIGH); //devuelve un valor de triempo en microsegundo
//convertir el tiempo de rebote en distancia
DISTANCIA = DURACION / 58.2; //58.2 es una constante especificada por el fabricante del sensor
//monitor serial/serie para visualizar la distancia registrada
//enviar el valor de la distancia
Serial.println(DISTANCIA); //imprime en pantalla
delay(200); //200 milisegundo
//Encendido del led al detectar el obstáculo
if(DISTANCIA <= 20 && DISTANCIA >= 0)
{ //Evaluar la distancia. Valor negativo si está fuera de rango
digitalWrite(LED,HIGH);
delay(DISTANCIA * 10);
digitalWrite(LED,LOW);
}//IF
}//loop