Ultrasonico HC-SR04 con Arduino y LabVIEW

Introducción

En primer lugar, hablemos del objetivo de este tutorial del sensor ultrasonico HC-SR04. El cual es, implementar una comunicación entre LabVIEV y Arduino conectado con un sensor de distancia por ultrasonido.

ultrasonico HC-SR04

El sensor de distancia ultrasonico HC-SR04, es un dispositivo que mediante ondas ultrasonicas puede determinar la distancia. Esto lo hace, calculando el tiempo en el que dichas ondas tardan en rebotar. Por lo tanto ,A mayor tiempo, mayor distancia.

Primeramente, para conectar el sensor ultrasonico HC-SR04 tenemos que conocer los pines o terminales de conexión. Básicamente, este sensor, tiene solo dos terminales. El de Echo y el de Trigger, que hacen referencia a un eco y a un disparo, por la traducción en ingles. En primer lugar, la terminal de disparo o trigger, es la encargada de mandar la señal ultrasonica. Posteriormente, la terminal eco es la que espera la recepción de dicha señal.

PD: Para este tutorial, te recomiendo revisar el tutorial de comunicación serial de Arduino con LabVIEW: https://hetpro-store.com/TUTORIALES/arduino-labview-comunicacion-serial/

Materiales

Diagrama de conexión de ultrasónico HC-SR04

ultrasonico HC-SR04

Especificaciones ultrasonico HC-SR04

  • Voltaje de operación: 5V
  • Corriente de operación: 15mA
  • Frecuencia de trabajo: 40 Hz
  • Rango de distancia máximo: 4m
  • Rango de distancia mínimo: 2 cm
  • Angulo de medición: 15°
  • Señal de disparo o Trigger: 10 uS

Código de Arduino ultrasonico HC-SR04

A continuación, se puede observar el código de Arduino.

Descripción de código

En primer lugar, comenzamos con la definición de las terminales para los pines de disparo o trigger y de eco o echo. En este caso, 12 y 13 respectivamente. Posteriormente en el setup, configuramos dichos pines como salida.

En la función loop o principal, se inicializa las variables de tipo entero duration y distance. A continuación, mandamos un pulso en el pin trigger con una duración de 1000 uS (mas de lo que se pide como mínimo, que son 10, solo para asegurar).

La función, pulseln, espera a que el pin echo cambie de estado, en este caso como el segundo parametro es HIGH, espera a que pase de un estado bajo a uno alto. La respuesta o retorno de esta función es un valor entero que, de acuerdo al fabricante, tenemos que dividir entre 58 para determinar la distancia en centimetros.

Condicionamos a que si la distancia es menor a nuestro valor máximo deseado y mayor a 0, escribimos en el serial la distancia.

Finalmente, el código se cicla en esta etapa, podemos validarlo simple y sencillamente con la terminal serial, pero como estamos mandando datos con la función write del objeto serial, no se aprecian de manera numerica. Recordemos que los datos a imprimir en este caso serian los proporcionales a la codificación ASCII.

Código de LabVIEW ultrasonico HC-SR04

Puedes descargar el archvio .vi en este enlace: https://www.dropbox.com/sh/d8r36yxwdi0g6tc/AAC8OkAljFmj9QzULVRL_pARa?dl=0

ultrasonico HC-SR04

Primeramente, el código de LabVIEW ultrasonico HC-SR04 solo toma los datos y los grafica. Ya desde el Arduino está condicionado, que no mande distancias mayores a 255 para evitarnos usar 2 bytes. Por último, la etapa del histograma y diff solo son para demostrar algunas de las ventajas de LabVIEW respecto a su facilidad de uso.

Video de uso ultrasonico HC-SR04

Finalmente, podemos observar como es que el sistema en conjunto trabaja. Tanto el Arduino con el sensor ultrasonico HC-SR04 y LabVIEW. A continuación, por ejemplo, vemos como responde a el movimiento de una superficie plana sobre el sensor.

Escríbenos tus dudas o comentarios

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Usamos Cookies en nuestro sitio WEB

Por favor confirma, si aceptas nuestras cookies de rastreo. También puedes negar el uso de cookies de rastreo y seguir navegando sin que ninguna información sea enviada a servicios de terceros.