Patrocinadores

miércoles, 13 de marzo de 2024

Módulo HC-SR04 (ultrasónico)

Le HC-SR04 est un capteur à ultrasons très populaire utilisé pour mesurer les distances.

Le HC-SR04 émet des signaux ultrasoniques, mesure le temps de vol de ces signaux réfléchis par les objets, calcule la distance en fonction de ce temps de vol, et fournit ces informations sous forme de signal électrique pour être utilisé dans diverses applications de détection de distance.




Connection:


Description :

  1. VCC : Cette broche est connectée à l'alimentation électrique positive (+) du circuit. Elle est généralement alimentée en 5 volts.


  2. Trig (Trigger) : C'est la broche de déclenchement. En envoyant un signal à cette broche, vous déclenchez l'émission d'une onde ultrasonique.


  3. Echo : C'est la broche de réception. Elle reçoit les signaux ultrasoniques réfléchis par les objets et est utilisée pour mesurer le temps de vol de ces signaux.


  4. GND : Cette broche est connectée à la terre (masse) du circuit, c'est-à-dire à l'alimentation électrique négative (-).


Code opérationnel:

#define echoPin 2 // Pin echo del HC-SR04 conectado a digital pin 2 de Arduino
#define trigPin 3 // Pin trig del HC-SR04 conectado a digital pin 3 de Arduino

void setup() {
  Serial.begin (9600); // Iniciar comunicación serial a 9600 bps
  pinMode(trigPin, OUTPUT); // Establecer pin trig como salida
  pinMode(echoPin, INPUT); // Establecer pin echo como entrada
}

void loop() {
  long duration, distance; // Variables para almacenar la duración y distancia

  // Generar un pulso de 10 microsegundos en el pin trig
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Medir la duración del pulso recibido en el pin echo
  duration = pulseIn(echoPin, HIGH);

  // Calcular la distancia en centímetros (velocidad del sonido en el aire = 343 m/s)
  distance = duration * 0.034 / 2;

  // Mostrar la distancia en el monitor serial
  Serial.print("Distance: ");
  Serial.println(distance);
 
  delay(1000); // Esperar un segundo antes de realizar la siguiente medición
}

No hay comentarios:

Publicar un comentario