Sensor ultrasónico Arduino: como medir distancias
Con Arduino, puede medir fácilmente distancias utilizando un sensor ultrasónico. En este consejo práctico, le mostraremos cómo.
Sensor ultrasónico Arduino: como medir distancias
Para medir distancias, necesita una placa de pruebas con algunos cables de puente, así como un módulo de medición ultrasónica HC-SR04 además del Arduino.
- Conecte el pin "Trigger" del módulo al Pin 13 y el pin "Echo" al Pin 12 del Arduino. Conecte también el módulo de medición ultrasónica HC-SR04 a 5V y tierra.
- Defina "disparador" como salida y "eco" como entrada. También necesita las variables largas "duración" y "distancia".
- Primero apague el gatillo (»digitalWrite (trigger, LOW);«) y espere 2 microsegundos (»delayMicroseconds (2);«). Luego active el activador (»digitalWrite (activador, ALTO);«), espere 10 microsegundos (»delayMicroseconds (10);«) y apáguelo nuevamente (»digitalWrite (activador, BAJO);«). Use esto para calcular la duración (»duración = pulseIn (echo, HIGH);«) y finalmente la distancia real (»distancia = (duración / 2) / 29.1;«).
- Con esta variable puede continuar calculando como desee.
Arduino: código de muestra para el sensor ultrasónico
En la imagen, verá el código que puede usar si desea usar el HC-SR04 profesionalmente. También puede copiar el código aquí:
- #include #define trigger 13 #define echo 12 #define led_1 11 #define led_2 10 int value_tone; larga duración, distancia; LiquidCrystal lcd (7, 6, 5, 4, 3, 2); configuración nula () {Serial.begin (9600); pinMode (disparador, SALIDA); // Pin de HC-SR04 pinMode (echo, INPUT); // Pin de HC-SR04 pinMode (led_1, OUTPUT); // LED pinMode (led_2, SALIDA); // LED pinMode (9, SALIDA); // zumbador lcd.begin (16, 2); } void loop () {digitalWrite (disparador, BAJO); delayMicroseconds (2); digitalWrite (disparador, ALTO); delayMicroseconds (10); digitalWrite (disparador, BAJO); duración = pulseIn (eco, ALTO); distancia = (duración / 2) / 29.1; if (distancia = 200 || distancia <= 0) {Serial.println ("Fuera de rango"); } else {Serial.print (distancia); Serial.println ("cm"); } lcd.clear (); lcd.setCursor (1, 0); lcd.print ("Distancia:"); lcd.print (distancia); lcd.print ("cm"); if (distancia 0) {value_tone = map (distancia, 0, 200, 0, 5000); tone (9, value_tone); } más {} retraso (500); }
En el siguiente consejo práctico, le mostraremos cómo configurar un módulo GSM en el Arduino.