Omet navegació

Ultrasò de 4 pins

HC-SR04

El sensor per mesurar distàncies que anem a provar ara es el emissor receptor de so de HC-SR04 que emet pols de 5 microsegons precedits d'un silenci de 2 microsegons, després rebota el só quan troba un obstacle i l'aparell escolta el so de retorn (eco) i compta el temps que tarda el so en anar i tornar.

Pols sonor ultrasons

Fes el muntatge següent.

 UltraSoLed Wemos

Cal tindre en compte que no pots mesurar distancies superiors a 4 metres ni inferiors a 3 cm o l'aparell donarà errors grans.

Copia el programa següent per provar-lo i modificar-lo:

int pinLed1 = 13;
#define echoPin 19 // Echo Pin
#define trigPin 18 // Trigger Pin
long duracio, distancia; // Duració usada per calcular la distancia

void setup() {
  pinMode(pinLed1, OUTPUT);
  Serial.begin(115200); //definisc el monitor serie
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
} // final setup

void loop() {
digitalWrite(pinLed1, LOW); // Parem el Led
/* El cicle trigPin/echoPin s'usa per determinar la distancia
del objecte més proper al sensor. */
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duracio = pulseIn(echoPin, HIGH);
//Calcula la distancia (en cm) basada en la veloctat del so.
distancia = duracio/58.2;
Serial.print("distancia = ");
Serial.println(distancia);
    Serial.print("\t");
    delay(100);
    if (distancia < 100 && distancia > 50) {
      digitalWrite(pinLed1, HIGH); // Engeguem el Led
      Serial.print("Led engegat");
      delay(2000);
      }// final if

}// final de void_loop

L'eixida del monitor sèrie és:
Serial Wemos UltraSoLed
El programa engega el Led durant 2 segons quan la distancia està entre 50 cm i 100cm, fora d'aquest rang el Led està apagat.

Creat amb eXeLearning (Finestra nova)