Select Page

El JSN-SR04T es un sensor ultrasonico de distancia impermeable fácil de usar con un rango de 25 a 450 cm. Si planeas construir un sistema de medición de nivel de agua o si necesita tomar otras mediciones de distancia en el exterior, como distancia de estacionamiento, ¡este es el sensor que necesita!

En este artículo, he incluido un diagrama de cableado y códigos de ejemplo para que pueda comenzar a experimentar con su sensor. Después de cada ejemplo, desgloso y explico cómo funciona el código, por lo que no debería tener problemas para modificarlo según sus necesidades.

Primero veremos un ejemplo que no usa una biblioteca Arduino. A continuación, cubriré la biblioteca NewPing fácil de usar que tiene algunas características incorporadas, que a priori servirá para el sensor ultrasónico de distancia SR04.

Sobre el JSN SR04 T

El sensor viene con un cable de 2,5 m de largo (puede variar según el proveedor o fabricante chino de turno) que se conecta a una placa de conexión que controla el sensor y realiza todo el procesamiento de la señal. Tenga en cuenta que solo el sensor y el cable en sí son impermeables; si introduce agua en la placa de conexión, el sensor podría dejar de funcionar.

Un sensor ultrasónico de distancia funciona enviando ondas de ultrasonido. Estas ondas de ultrasonido son reflejadas por un objeto y el sensor ultrasónico las detecta. Al calcular cuánto tiempo pasó entre el envío y la recepción de las ondas de sonido, puede calcular la distancia entre el sensor y un objeto.

Distancia (cm) = Velocidad del sonido (cm/µs) × Tiempo (µs) / 2

Donde Tiempo es el tiempo de enviar y recibir las ondas de sonido en microsegundos.

Entonces, ¿cuáles son las diferencias entre este sensor JSN-SR04T y el HC-SR04? La principal diferencia, además de ser resistente al agua, es que este sensor usa solo un transductor ultrasónico. Este transductor sirve como transmisor y receptor de las ondas de ultrasonido.

Para obtener más información sobre cómo funcionan los sensores ultrasónicos, puede consultar mi artículo sobre el HC-SR04. En este artículo, los principios de funcionamiento de un sensor ultrasónico de distancia se explican con mucho mayor detalle.

Especificaciones del sensor ultrasónico de distancia JSN-SR04T

Operating voltage5 V
Operating current30 mA
Quiescent current5 mA
Frequency40 kHz
Measuring range25-450 cm
Resolution2 mm
Measuring angle45-75 degrees
Sensor dimensions23.5 x 20 mm, 2.5 m long cable
PCB dimensions41 x 28.5 mm
Mounting hole18 mm

Para mas informacion te dejo el datasheet del JSN-SR04T

Cableado: conexión de JSN-SR04T a Arduino UNO

El diagrama / esquema de cableado a continuación muestra cómo conectar el sensor JSN-SR04T al Arduino. La placa de conexión del JSN-SR04T tiene exactamente el mismo pinout que el HC-SR04, por lo que puede usarse como un reemplazo directo. El cable del sensor se puede enchufar en el conector en la parte posterior de la placa de conexiones.

SENSOR ULTRASONICO DE DISTANCIA JSN SR04 T 2
Diagrama / esquema de cableado para el sensor ultrasónico de distancia JSN-SR04T con Arduino.

Los ejemplos de código a continuación usan el pin digital 2 y 3 para el gatillo y el pin de eco, pero, por supuesto, puede cambiarlo a cualquier pin digital que desee.

JSN-SR04T PinOut

JSN-SR04TArduino
5 V5 V
TrigPin 2
EchoPin 3
GNDGND

SOFTWARE

Cuando compre el sensor, puede encontrar la versión actualizada, el JSN-SR04T-2.0. Esta versión más nueva funciona exactamente igual, pero algunos usuarios han encontrado problemas al usar los sensores a un voltaje más bajo. Esta versión más nueva está clasificada para 3–5 V.

El uso de un pulso de disparo más largo de al menos 20 µs en lugar de 10 µs parece ayudar si tenes lecturas defectuosas.

Código de ejemplo para el sensor JSN-SR04T con Arduino

Ahora que ha conectado el sensor, es hora de conectar el Arduino a la computadora y cargar un código. El sensor se puede usar sin una biblioteca Arduino. Más tarde, le mostraré un ejemplo con la biblioteca NewPing, que hace que el código sea mucho más corto.

Puede cargar el siguiente código de ejemplo en su Arduino utilizando el IDE de Arduino. A continuación, te explicaré cómo funciona el código. (Este código también funciona para el JSN-SR04T-2.0).

/* Arduino example sketch to control a JSN-SR04T ultrasonic distance sensor with Arduino. No library needed. */
// Define Trig and Echo pin:
#define trigPin 2
#define echoPin 3
// Define variables:
long duration;
int distance;
void setup() {
  // Define inputs and outputs
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  
  // Begin Serial communication at a baudrate of 9600:
  Serial.begin(9600);
}
void loop() {
  // Clear the trigPin by setting it LOW:
  digitalWrite(trigPin, LOW);
  
  delayMicroseconds(5);
 // Trigger the sensor by setting the trigPin high for 10 microseconds:
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  
  // Read the echoPin. pulseIn() returns the duration (length of the pulse) in microseconds:
  duration = pulseIn(echoPin, HIGH);
  
  // Calculate the distance:
  distance = duration*0.034/2;
  
  // Print the distance on the Serial Monitor (Ctrl+Shift+M):
  Serial.print("Distance = ");
  Serial.print(distance);
  Serial.println(" cm");
  
  delay(100);
}

Debería ver la siguiente salida en el monitor serie:

SENSOR ULTRASONICO DE DISTANCIA JSN SR04 T 3

Código de ejemplo JSN-SR04T con la biblioteca Arduino y NewPing

La biblioteca NewPing escrita por Tim Eckel se puede usar con muchos sensores de distancia ultrasónicos. La última versión de esta biblioteca se puede descargar aquí en bitbucket.org. Puede notar que el código a continuación, que usa la biblioteca NewPing, es mucho más corto que el código que usamos antes.

Podes instalar la librería yendo a Sketch > Include Library > Add .ZIP Library en el arduino IDE.

La biblioteca incluye algunos ejemplos que puede usar, pero tendrá que modificarlos para que coincidan con la configuración de su hardware. He incluido un código de ejemplo modificado a continuación que se puede usar con la misma configuración de cableado que antes.

/*Arduino example sketch to control a JSN-SR04T ultrasonic distance sensor with NewPing libary and Arduino. */
// Include the library:
#include <NewPing.h>
// Define Trig and Echo pin:
#define trigPin 2
#define echoPin 3
// Define maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500 cm:
#define MAX_DISTANCE 400
// NewPing setup of pins and maximum distance.
NewPing sonar = NewPing(trigPin, echoPin, MAX_DISTANCE);
void setup() {
  // Open the Serial Monitor at 9600 baudrate to see ping results:
  Serial.begin(9600);
}
void loop() {
  // Wait 50ms between pings (about 20 pings/sec). 29ms should be the shortest delay between pings:
  delay(50); 
  
  // Measure distance and print to the Serial Monitor:
  Serial.print("Distance = ");
  // Send ping, get distance in cm and print result (0 = outside set distance range):
  Serial.print(sonar.ping_cm()); 
  Serial.println(" cm");
}

En este artículo, te he mostrado cómo funciona el sensor de distancia ultrasónico JSN-SR04T y cómo puede usarlo con Arduino. Espero que lo hayas encontrado útil e informativo. Si lo hiciste, ¡compártelo con un amigo al que también le guste la electrónica!

A %d blogueros les gusta esto: