Arduino UNO R4 - Sensor de evitación de obstáculos

En esta guía, aprenderemos a usar el Arduino UNO R4 y el sensor de evitación de obstáculos por infrarrojos para detectar obstáculos.

Sensor de evitación de obstáculos Arduino UNO R4

Acerca del sensor de evitación de obstáculos IR

El sensor de obstáculos infrarrojo (IR) puede detectar obstáculos frente a él utilizando una señal infrarroja. Puede detectar objetos a una distancia de 2 cm a 30 cm. Puedes cambiar la distancia de detección con una herramienta integrada llamada potenciómetro.

Distribución de pines

El sensor de evitación de obstáculos IR tiene tres pines:

  • Pin GND: Conecte este pin a GND (0V).
  • Pin VCC: Conecte este pin a VCC (5V o 3.3V).
  • Pin OUT: Este es un pin de salida. Está en bajo si hay un obstáculo y está en alto si no hay obstáculo. Conecte este pin al pin de entrada del Arduino UNO R4.
Diagrama de pines del sensor de evitación de obstáculos por infrarrojos.
image source: diyables.io

Cómo funciona

Un módulo de sensor de obstáculos por infrarrojos incluye un transmisor infrarrojo y un receptor infrarrojo. El transmisor infrarrojo emite una señal infrarroja, mientras que el receptor infrarrojo detecta esta señal cuando se refleja en un objeto para comprobar si hay un obstáculo. La detección de un obstáculo se indica mediante el pin OUT.

  • Cuando hay un obstáculo delante del sensor, el pin OUT del sensor está en LOW.
  • Cuando no hay obstáculo delante del sensor, el pin OUT del sensor está en HIGH.

※ Nota:

Durante el envío, el sensor podría doblarse o dañarse, lo que podría hacer que no funcione correctamente. Si el sensor no funciona correctamente, ajuste el transmisor infrarrojo y el receptor infrarrojo para que estén alineados de forma paralela entre sí.

Diagrama de Cableado

Diagrama de cableado del sensor de evitación de obstáculos IR para Arduino UNO R4.

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Uno R4 y otros componentes.

Cómo programar para el sensor de evitación de obstáculos por infrarrojos

  • Configura el pin del Arduino UNO R4 como entrada digital usando la función pinMode(). Por ejemplo, configura el pin 8.
pinMode(8, INPUT_PULLUP);
  • Lee el estado del pin del Arduino UNO R4 utilizando la función digitalRead().
int state = digitalRead(8);

Código Arduino UNO R4

Hay casos de uso para usar el sensor de obstáculos:

  • Haz algo o no hagas nada, dependiendo de si hay un obstáculo o no.
  • Haz algo o no hagas nada, cuando detectes un obstáculo o cuando ya no esté.

Código de Arduino UNO R4 para comprobar si hay un obstáculo

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-obstacle-avoidance-sensor */ #define SENSOR_PIN 8 // The Arduino UNO R4 pin connected to OUT pin of IR obstacle avoidance sensor void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // initialize the Arduino's pin as aninput pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: int state = digitalRead(SENSOR_PIN); if (state == LOW) Serial.println("The obstacle is present"); else Serial.println("The obstacle is NOT present"); delay(100); }

Pasos R\u00e1pidos

Siga estas instrucciones paso a paso:

  • Si es la primera vez que utiliza el Arduino Uno R4 WiFi/Minima, consulte el tutorial sobre configurar el entorno para Arduino Uno R4 WiFi/Minima en el IDE de Arduino.
  • Conecte el sensor de evitación de obstáculos al Arduino Uno R4 según el diagrama proporcionado.
  • Conecte la placa Arduino Uno R4 a su computadora utilizando un cable USB.
  • Inicie el IDE de Arduino en su computadora.
  • Seleccione la placa Arduino Uno R4 adecuada (p. ej., Arduino Uno R4 WiFi) y el puerto COM.
  • Copie el código y abra el código proporcionado con el IDE de Arduino.
  • Haga clic en el botón Subir en el IDE de Arduino para cargar el código en el Arduino UNO R4.
  • Coloque un obstáculo frente al sensor durante un tiempo, luego retírelo.
  • Verifique los resultados en el Monitor serie.
COM6
Send
The obstacle is NOT present The obstacle is NOT present The obstacle is NOT present The obstacle is NOT present The obstacle is NOT present The obstacle is present The obstacle is present The obstacle is present The obstacle is present The obstacle is NOT present The obstacle is NOT present
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Código de Arduino UNO R4 para detectar obstáculos

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-obstacle-avoidance-sensor */ #define SENSOR_PIN 8 // The Arduino UNO R4 pin connected to OUT pin of IR obstacle avoidance sensor int prev_obstacle_state = HIGH; // the previous state from the input pin int obstacle_state; // the current reading from the input pin void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // initialize the Arduino's pin as aninput pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: obstacle_state = digitalRead(SENSOR_PIN); if (prev_obstacle_state == HIGH && obstacle_state == LOW) Serial.println("The obstacle is detected"); else if (prev_obstacle_state == LOW && obstacle_state == HIGH) Serial.println("The obstacle is cleared"); delay(50); // save the the last state prev_obstacle_state = obstacle_state; }

Pasos R\u00e1pidos

  • Copia el código y ábrelo en el IDE de Arduino.
  • Haz clic en el botón Subir en el IDE de Arduino para subir el código al Arduino UNO R4.
  • Coloca un obstáculo frente al sensor por un momento, luego retíralo.
  • Verifica los resultados en el Monitor Serial.
COM6
Send
The obstacle is detected The obstacle is cleared
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

Referencias de funciones

Tutoriales Relacionados

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!