La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sensores Ultrasonido. Son importantes en robótica, se usan para calcular distancias.

Presentaciones similares


Presentación del tema: "Sensores Ultrasonido. Son importantes en robótica, se usan para calcular distancias."— Transcripción de la presentación:

1 Sensores Ultrasonido

2 Son importantes en robótica, se usan para calcular distancias

3 ¿Cómo funcionan? Dos unidades piezoeléctricas El trasmisor emite frecuencias de sonido sobre 20KHz (audible) El receptor captura el rebote de las ondas ultra sonoras y entrega los datos obtenidos

4 Usos Aplicaciones industriales como medición de distancias o caracterización de materias internas

5 Robot Bat Bot. Navegación con ultrasonidos http://video.google.es/videoplay?docid=- 8818446984975466550&q=criadobot&total=22&start=0&num=30&so=0&type=sea rch&plindex=19#

6 ¿Cómo vamos a traducir dicho tiempo en distancia? Aprovechando que la velocidad de dicho ultrasonido en el aire es de valor 340 m/s, o 0,034 cm/microseg (ya que trabajaremos con centímetros y microsegundos). Para calcular la distancia, recordaremos que v=d/t (definición de velocidad: distancia recorrida en un determinado tiempo). De la fórmula anterior despejamos d, obteniendo d=v·t, siendo v la constante anteriormente citada y t el valor devuelto por el sensor a la placa Arduino. También habrá que dividir el resultado entre 2 dado que el tiempo recibido es el tiempo de ida y vuelta. Material Sensor ultrasonidos HC-SR04 de Electrohobby Placa Arduino UNO Cables Cable USB Protoboard

7

8 long distancia; int led1=11; int led2=12; long tiempo; void setup(){ Serial.begin(9600); pinMode(9, OUTPUT); /*activación del pin 9 como salida: para el pulso ultrasónico*/ pinMode(8, INPUT); /*activación del pin 8 como entrada: tiempo del rebote del ultrasonido*/ pinMode(11, OUTPUT); //declara el led corto pinMode(12, OUTPUT); //declara el led largo } CONFIGURACION

9 void loop(){ digitalWrite(9,LOW); /* Por cuestión de estabilización del sensor*/ delayMicroseconds(5); digitalWrite(9, HIGH); /* envío del pulso ultrasónico*/ delayMicroseconds(10); tiempo=pulseIn(8, 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*/ CUERPO DEL PROGRAMA TODAS LAS INSTRUCCIONES

10 if(distancia==50){ digitalWrite(led1,HIGH); //enciende led a 50 mts } else { digitalWrite(led1,LOW); // apagada el led } if(distancia==100){ digitalWrite(led2,HIGH); //enciende led a 1 mts } else {digitalWrite(led2,LOW); //apaga el led } /*Monitorización en centímetros por el monitor serial*/ Serial.println("Distancia "); Serial.println(distancia); Serial.println(" cm"); } SENTENCIAS DE CONDICION


Descargar ppt "Sensores Ultrasonido. Son importantes en robótica, se usan para calcular distancias."

Presentaciones similares


Anuncios Google