CAPÍTULO 6.
SENSOR DE ULTRASONIDOS HC-SR04
6. Sensor de Ultrasonidos HC-SR04
El sensor de Ultrasonidos HC-SR04 se utiliza para medir distancias mediante
la emisión y recepción de una onda de ultrasonidos. Según el fabricante el ángulo
de trabajo efectivo, donde se dan los resultados más precisos, es aproximadamente
de ±15º. El rango de distancias medibles es de 4cm a 400cm, con una resolución
de 0.3cm. Para más información (anexo C.3 y tabla 6.2).
(a) Cara frontal (b) Cara posterior
Figura 6.1: Sensor de Ultrasonidos HC-SR04
Tabla 6.1: Patillaje del Sensor de Ultrasonidos HC-SR04
NÚMERO DE
DESCRIPCIÓN DEL ELEMENTO
IDENTIFICACIÓN
1 Patilla VCC de Alimentación
2 Patilla Trigger
3 Patilla Echo
4 Patilla GND/Tierra
Esquema eléctrico del sensor realizado mediante la herramienta de diseño de
circuitos en lı́nea EasyEda [6] y usando de modelo el esquema eléctrico presente
en el estudio del sensor HC-SR04 realizado por Ajoy Raman [24].
43
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
10k R13
+5V
+5V
R14 120k Comparador
C6 Filtro Amp
R15
+5V
10k
C5
Pasabanda
10n
R4
1k
Amp U2C
U2B
U2A
1u
GND
5 LM324
10n
4
R8
C4
RX U2D 10 LM324 R6 7 3 LM324 GND
C3
1n
US1 12 LM324 8 6 1
10n
R3 4k7
C1
R1 14 9 7k5 2
+ 13 6k2
11
R10
10k
10k R5 R7
120k
-
R9
C2
1n
R2 75k 75k GND
GND 56k
C8
3M3
R16
R11
3k9
10k
10n
+5V
R17
+5V
27MHz +5V
+5V GND
C7
R12
1u
75k
Q1
5
4
GND
VCC
3 SLICE
P65/OSC1
P64/OSC0
VCC
P62/TCC 8
+5V
P61 9 THRESHOLD 4 SIGIN
J1 7 U3
P63/RST
4 P60/INT 10 SIGNAL 6 SIGIN2
3 TRIG 1 P50 U1 US-Drive TX
2 ECHO 2 P67 EM78P153S P53 12 US2
1 3 P66
P52 13 TX2 10 IN2 OUT2 7 +
4 pin
TX1
GND
GND
GND P51 14 11 IN1 OUT1 14 -
11
15
GND GND
Figura 6.2: Esquema eléctrico de la PCB del Sensor de Ultrasonidos HC-SR04
6.1. Principio de funcionamiento
A grandes rasgos, podemos simplificar el funcionamiento del Sensor de Ultra-
sonidos HC-SR04 en los siguientes dos pasos:
En primer lugar, el sensor genera un ultrasonido de 40KHz que viaja a través
del aire, con el objetivo de rebotar sobre una superficie que se encuentre
frente a él y luego volver al sensor.
El segundo paso consiste en transformar el tiempo empleado por el ultra-
sonido para ir y volver (tras rebotar en el objeto) en una magnitud de
distancia.
44
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
Figura 6.3: Principio de funcionamiento del Sensor de Ultrasonidos HC-SR04
Para realizar el proceso descrito anteriormente, debemos tener en cuenta los
siguientes elementos:
Trigger Pin: Se trata de entrada digital del sensor, la cual debemos mantener
activa (HIGH) durante 10µs para que se genere el ultrasonido de 40000Hz.
Echo Pin: Es una salida digital del sensor. Su función consiste en esperar a
que el ultrasonido generado vuelva al dispositivo tras rebotar en un objeto
y luego, mantenerse activo (HIGH) el tiempo que tardó dicho ultrasonido
en realizar el recorrido de ida y vuelta.
Para transformar el tiempo que devuelve el Echo Pin a una unidad de distan-
cia, simplemente se debe conocer la velocidad de una onda en el aire:
DISTANCIA = VELOCIDAD · TIEMPO (6.1)
En la práctica, debemos dividir el resultado de la ecuación anterior entre 2,
ya que el tiempo utilizado en la fórmula es un recorrido de ida y vuelta. También
debemos tener en cuenta que la velocidad del sonido depende de la temperatura
ambiente.
45
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
6.2. Resumen de las principales caracterı́sticas
Tabla 6.2: Principales caracterı́sticas del Sensor de Ultrasonidos HC-SR04
SALIDA DIGITAL
PRINCIPIO DE FUNCIONAMIENTO EMISIÓN Y RECEPCIÓN DE ONDA DE ULTRASONIDOS
FRECUENCIA ULTRASONIDO 40KHz
ALIMENTACIÓN 5V
ÁNGULO DE TRABAJO EFECTIVO 15º
RANGO DE DISTANCIAS MEDIBLE 4-400CM
RESOLUCIÓN 0.3CM
6.3. Método de calibración del Sensor de Ultra-
sonidos HC-SR04
Para poder determinar la exactitud y precisión del Sensor de Ultrasonidos
HC-SR04 se ha realizado el siguiente ensayo:
Se han dispuesto unas tablas de madera sobre una superficie plana (suelo)
a modo de plataforma, y se han fijado unas cintas métricas a su superficie
como medida correspondiente de un patrón de referencia. Dichas cintas
suman una distancia total de 400cm y tienen una resolución mı́nima de
1mm.
Se ha centrado y fijado el Sensor de Ultrasonidos en un extremo de la
plataforma mediante pegamento y cinta adhesiva.
Se ha colocado una tabla de madera negra delante del sensor como elemento
sobre el que debe rebotar la onda emitida por el mismo. Esta tabla ha de
estar paralela al sensor.
Empezando por 4cm (fondo de escala inferior del sensor), se ha ido moviendo
la tabla negra a razón de un centı́metro por medición. Por lo tanto se han
realizado 397 mediciones espaciadas entre sı́ 1cm. En cada punto a medir
se toman 50 muestras, estableciendo como medida representativa la media
estadı́stica de las mismas.
46
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
Las condiciones del ensayo han sido las siguientes:
Temperatura ambiente: 26.8ºC (+/- 0.5ºC)
Humedad Relativa: 60 %
Altitud: 29m
Resolución: 1cm
Tiempo de muestreo: muestras recogidas cada 100 milisegundos (50 mues-
tras para cada medición)
Rango de calibración: 4cm a 400cm
Tras obtener todos los datos, se han procesado en el software MATLAB para
poder generar diferentes gráficas y ecuaciones que describan el comportamiento
del sensor.
(a) Sensor de Ultrasonidos HC- (b) Sensor de Ultrasonidos HC-
SR04 en la plataforma SR04 en la plataforma desde otro
ángulo
(c) Plataforma con cintas métricas y tabla utilizada como objeto
contra el que rebotar
Figura 6.4: Entorno de calibración del Sensor de Ultrasonidos HC-SR04
47
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
6.4. Resultados
Tras haber realizado las mediciones correspondientes con el Sensor de Ultra-
sonidos HC-SR04, se han recogido todos los datos en una tabla (anexo A.1). De
dicha tabla podemos obtener las siguientes gráficas que caracterizan el compor-
tamiento del sensor:
6.4.1. Recta de Calibración
Despejamos de la ecuación 6.2 la t, siendo esta el tiempo que tarda la onda
de ultrasonidos en ir hasta el objeto, rebotar y volver al sensor:
Distancia · 20000
t= (6.2)
υ
donde: υ(m/s) = 331,3 + (0,606 · TAIRE )
Como podemos ver, la velocidad del sonido es dependiente de la temperatura
del aire (ambiente), por lo que siempre se ha de ajustar este parámetro antes de
realizar cualquier medición.
Figura 6.5: Recta de calibración para el Sensor de Ultrasonidos HC-SR04
6.4.2. Desviación Tı́pica
A continuación se muestra las gráfica de la Desviación Tı́pica presente para
cada grupo de 50 muestras (tomadas cada centı́metro en un rango de 4cm a 4m):
48
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
Figura 6.6: Desviación Tı́pica para el conjunto de muestras tomadas con el Sensor
de Ultrasonidos HC-SR04
De la gráfica anterior podemos deducir lo siguiente:
Precisión mı́nima para distancias 6 100cm ⇒ Media de la medida ±0.23cm
(buena precisión)
Precisión mı́nima para distancias de 100 a 300cm ⇒ Media de la medida
±0.7cm (precisión media).
Precisión mı́nima para distancias > a 300cm ⇒ Media de la medida ±1.2cm
(mala precisión)
6.4.3. Ajuste de la recta de calibración
Se ha propuesto como medida de ajuste en mediciones con una resolución de
1cm, un factor de corrección obtenido mediante la técnica de regresión lineal.
Para ello, debemos encontrar la ecuación caracterı́stica que relaciona la distancia
real con la medida por el Sensor de Ultrasonidos HC-SR04 (ver figura 6.7 y 6.8).
49
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
Figura 6.7: Recta que relaciona la Medida Real (cm) con la obtenida por el sensor
de Ultrasonidos HC-SR04
Mediante la herramienta de ajuste de curvas (Curve Fitting Tool) se encuentra
una expresión polinómica de grado 1 que satisface la recta anterior:
Figura 6.8: Recta que relaciona la Medida Real (cm) con la obtenida por el sensor
de Ultrasonidos HC-SR04
Por lo tanto, la nueva expresión para la distancia resultante que debemos
utilizar en el código es:
Distancia Corregida = (Distancia Medida · 0,9998) + 1,073 (6.3)
50
CAPÍTULO 6. SENSOR DE ULTRASONIDOS HC-SR04
6.4.4. Discusión de los resultados
En el apartado de resultados de la calibración del Sensor de Ultrasonidos HC-
SR04 se ha obtenido una ecuación para redefinir el resultado de la distancia que
nos devuelve el dicho sensor (Ver ecuación 6.3). Dependiendo del uso (rango de
distancias a medir) que se le quiera dar al sensor, se recomienda o no utilizar este
ajuste:
Si el objeto que queremos medir se encuentra en un rango de entre 4cm y
≈ 25cm, se recomienda no utilizar el ajuste, pues los datos que devuelve el
sensor en este rango tienen una precisión suficiente, y el uso de la ecuación
6.3 solo empeorarı́a el dicha precisión.
Si el objeto a medir está situado en un rango de entre 25cm y 400cm, se
recomienda utilizar la ecuación 6.3 como factor de ajuste para mejorar la
precisión.
51