Está en la página 1de 3

INSTITUTO SUPERIOR TECNOLOGICO SALESIANO CURSO DE ROBOTICA Profesor: Ing.

Jaime Rupay Cruces

MEDICION DE DISTANCIA USANDO EL SENSOR HC-SR04

El HC-SR04 es un sensor ultrasnico de bajo costo que no slo puede detectar si un objeto se presenta, como un sensor PIR (Passive Infrared Sensor), sino que tambin puede sentir y transmitir la distancia al objeto.

Tienen dos transductores, bsicamente, un altavoz y un micrfono. Ofrece una excelente deteccin sin contacto (remoto) con elevada precisin y lecturas estables en un formato fcil de usar. El funcionamiento no se ve afectado por la luz solar o el material negro como telmetros pticos (aunque acsticamente materiales suaves como telas pueden ser difciles de detectar).

La velocidad del sonido en el aire (a una temperatura de 20 C) es de 343 m/s. (por cada grado centgrado que sube la temperatura, la velocidad del sonido aumenta en 0,6 m/s)

Caractersticas tcnicas:

Los mdulos incluyen transmisores ultrasnicos, el receptor y el circuito de control. Nmero de pines:

o VCC: Alimentacin +5V (4.5V min 5.5V max) o TRIG: Trigger entrada (input) del sensor (TTL) o ECHO: Echo salida (output) del Sensor (TTL) o GND

Corriente de reposo: < 2mA Corriente de trabajo: 15mA ngulo de medicin: 30

ngulo de medicin efectivo: < 15 Deteccin de 2cm a 400cm o 1" a 13 pies (Sirve a ms de 4m, pero el fabricante no garantiza una buena medicin). Resolucin La precisin puede variar entre los 3mm o 0.3cm. Dimensiones: 45mm x 20mm x 15mm Frecuencia de trabajo: 40KHz

Funcionamiento:
1. 2.

Enviar un Pulso "1" de al menos de 10uS por el Pin Trigger (Disparador). El sensor enviar 8 Pulsos de 40KHz (Ultrasonido) y coloca su salida Echo a alto (seteo), se debe detectar este evento e iniciar un conteo de tiempo. La salida Echo se mantendr en alto hasta recibir el eco reflejado por el obstculo a lo cual el sensor pondr su pin Echo a bajo, es decir, terminar de contar el tiempo. Se recomienda dar un tiempo de aproximadamente 50ms de espera despus de terminar la cuenta. La distancia es proporcional a la duracin del pulso y puedes calcularla con las siguiente formula (Utilizando la velocidad del sonido = 340m/s):

3.

4.

5.

Distancia en cm (centmetros) = Tiempo medido en us x 0.017 Nota:

Tener en cuenta, que la distancia que recorre la onda es dos veces (x2) la distancia del objeto, al usar: distancia recorrida = velocidad x tiempo transcurrido Conecte el pin GND primero antes de suministrar alimentacin a VCC. Por favor, asegrese de que la superficie del objeto a detectar debe tener al menos 0,5m para un mejor rendimiento.

HERE IS CODE FOR PIC C COMPILER: //////////ccs pic c compiler v4.128 #include <16F877a.h> #FUSES NOWDT, HS #use delay(clock=20000000) #define LCD_RS_PIN PIN_d0 #define LCD_RW_PIN PIN_d1 #define LCD_ENABLE_PIN PIN_d2 #define LCD_DATA4 PIN_D4 #define LCD_DATA5 PIN_D5 #define LCD_DATA6 PIN_D6 #define LCD_DATA7 PIN_D7 #include "lcd.c" int16 distance, time; // Defining variables #define trig pin_b6 // Change as you wish, can use any pin in the MCU #define echo pin_b7 // Change as you wish, can use any pin in the MCU ///////////////////////////////////////////////////////////////////////////////// void main() { lcd_init(); delay_ms(1000); // power on delay setup_timer_1(T1_INTERNAL|T1_DIV_BY_8); // initiating timer while(true) { output_high(trig); delay_us(20); output_low(trig); while(!input(ECHO)) {}

// start the pulse // sending 20us pulse // wait for high state of echo pin and do nothing

set_timer1(0); // setting timer zero while(input(ECHO)) {;} // Wait for high state of echo pin and do nothing time=get_timer1(); // Getting the time distance=time*0.028 + 1.093 ; // Calculating the distance printf(LCD_PUTC, "\f Distance = %Lu cm"distance); // print distance on lcd delay_ms(500); // distance for next round }}