¿Qué es el módulo sensor ultrasónico? y uso en TinkerCAD
En este artículo comprenderemos el funcionamiento del módulo ultrasónico HC-SR04 visualizando una simulación con TinkerCAD gracias a un programa (sketch) generado con Arduino.
Material Necesario:
¿Qué es TinkerCAD?
Definición de ultrasonido
Los ultrasonidos son una serie de ondas mecánicas, generalmente longitudinales, cuya frecuencia está por encima de la capacidad de audición del oído humano. El ultrasonido no tiene propiedades diferentes de las ondas audibles, excepto que los humanos no pueden oírlas.
Módulo ultrasónico HC-SR04,
El módulo sensor ultrasónico HC-SR04, como su nombre lo indica, mide la distancia mediante el uso de ondas ultrasónicas. El cabezal emite una onda ultrasónica y recibe la onda reflejada que retorna desde el objeto. Los sensores ultrasónicos miden la distancia al objeto contando el tiempo entre la emisión y la recepción.
En el módulo, el cabezal que manda el ultrasonido se le llama Trigger, y al que recibe el ultrasonido una vez que ha rebotado sobre una superficie, se le llama Echo.
De acuerdo a la definición de arriba, podemos aprovechar las propiedades del ultrasonido para calcular la distancia de acuerdo al tiempo en que tarda en regresar el sonido del emisor (trigger) al receptor (echo).
Para una temperatura ambiente de 20°C la velocidad del sonido es aproximadamente 340m/s
Partiendo de la fórmula Velocidad = distancia / tiempo obtenemos:
Donde Velocidad es la velocidad del sonido 340m/s, pero usaremos las unidades en cm/us pues trabajaremos en centímetros y microsegundos, tiempo es el tiempo que demora en llegar el ultrasonido al objeto y regresar al sensor, y la distancia recorrida es dos veces la distancia hacia el objeto (1 vez cuando se emite el sonido desde Trigger y 2 veces cuando rebota en la superficie y regresa al Echo), reemplazando en la formula tenemos:

Código
/* * www.ProveedoraCano.com * Tutorial para medir una distancia con * el módulo ultrasónico HC-SR04 * solo despliega resultados en cm */ const int Trigger = 9; //Pin digital para el Trigger del sensor const int Echo = 10; //Pin digital para el Echo del sensor void setup() { Serial.begin(9600);//inicializamos la comunicación pinMode(Trigger, OUTPUT); //se define pin como salida pinMode(Echo, INPUT); //se define pin como entrada digitalWrite(Trigger, LOW);//Inicializamos el pin con 0 } void loop() { long t; //timepo que demora en llegar el eco long d; //distancia en centimetros digitalWrite(Trigger, HIGH); delayMicroseconds(10); //Enviamos un pulso de 10us digitalWrite(Trigger, LOW); // se completa el pulso del ultrasonido t = pulseIn(Echo, HIGH); //obtenemos el ancho del pulso d = t/59; //escalamos el tiempo a una distancia en cm Serial.print("Distancia: "); Serial.print(d); //Imprimimos la distancia obtenida Serial.print("cm"); Serial.println(); delay(100); //Hacemos una pausa de 100ms }
Módulo Ultrasónico HC-SR04 con TinkerCAD
Antes de comenzar veremos las especificaciones del módulo y los pines.
ESPECIFICACIONES TÉCNICAS
Voltaje de Operación: 5V DC
Corriente de reposo: < 2mA
Corriente de trabajo: 15mA
Rango de medición: 2cm a 450cm
Precisión: +- 3mm
Ángulo de apertura: 15°
Frecuencia de ultrasonido: 40KHz
Duración mínima del pulso de disparo TRIG (nivel TTL): 10 μS
Duración del pulso ECO de salida (nivel TTL): 100-25000 μS
Dimensiones: 45mm x 20mm x 15mm
Tiempo mínimo de espera entre una medida y el inicio de otra 20ms (recomendable 50ms)
PINES DE CONEXIÓN

VCC (+5V DC)
TRIG (Disparo del ultrasonido)
ECHO (Recepción del ultrasonido)
GND (0V)
Diagrama de conexión

PIN Out
PIN 9 -> Trigger
PIN 10 -> Echo
TinkerCAD
Para poder encontrar el módulo HC-SR04 y el protoboard de 170 puntos tenemos que ir al menú que está en la parte derecha que dice “componentes”, seleccionamos todos.

La lista de componentes crecerá y buscaremos el módulo ultrasónico con 4 pines , la protoboard y el Arduino UNO.

Para hacer la conexiones con cables solo hay que posicionar el cursor sobre cualquier pin, este se ilumina y si damos click con el botón izquierdo se creará la conexión.
Para cargar el código en el simulador, en el menú de la parte superior de la aplicación TinkerCAD damos click en , CODIGO, vamos al menú desplegable y seleccionamos “Texto”.

Nos saldrá una ventana emergente que dice “¿Seguro que desea cerrar el editor de bloques? Se perderán todos los bloques que tenga en este momento. Se mantendrá el código del editor de texto y se podrá editar.”. Esto es que si habíamos creado un programa por bloques, se perderá dicho programa, pero como no hemos programado nada aún, no hay problema. Damos click en continuar y pegamos el código de arriba.
Para simular el programa en la parte superior del TinkerCAD damos click en el botón “Iniciar Simulación” y cambiará a color verde.

Si damos click en el módulo ultrasónico veremos el rango aproximado de medición en color verde y dentro de esta zona estará un circulo de un color verde mas intenso, el cual representa un objeto que podremos mover dentro de la zona verde dando click izquierdo sostenido. Veremos que en la parte superior del módulo nos dará la distancia que hay del objeto al módulo, expresado en pulgadas y en centímetros.

En caso de que movamos el objeto fuera del área verde, esta se pondrá de color rojo claro y los valores desaparecerán.

Proyecto final TinkerCad
Te dejamos el proyecto en Tinkercad para que lo puedas examinar, si quieres ejecutarlo, da click en “Iniciar simulación”, para ver el código da click en “Código”.