Sensor de obstáculos IR Arduino. Sencillo sensor de infrarrojos. Conexión a Arduino

En esta revisión, revisaremos y probaremos el módulo sensor de obstáculos infrarrojo designado MH-B. El módulo está construido sobre un comparador dual LM393.

El pedido se realizó en la tienda online china Aliexpress. El sensor cuesta ~20 rublos:

La mercancía fue entregada a Georgia de forma gratuita por la empresa "4PX Correo de Singapur OM Pro" en el paquete estándar:

La placa del módulo estaba sellada herméticamente en una bolsa antiestática y envuelta en polietileno con granos:

En un lado del tablero hay pines para suministrar energía y retirar señal, y en el lado opuesto se instalan paralelos entre sí un LED infrarrojo y un fotodiodo, los cuales deben dirigirse hacia el obstáculo para determinar su presencia:

Todos los contactos están firmados y será muy fácil conectarse al módulo:

  • VCC se alimenta con tensión de alimentación;
  • pin GND - común;
  • La señal se elimina del pin OUT.

En el otro lado del tablero pone +OUT, pero esto no es del todo cierto, y de esto hablaremos más adelante:

Además del microcircuito y un LED con fotodiodo fabricado a partir de radioelementos, el módulo tiene:

  • LED de indicación de energía;
  • LED de indicación de señal;
  • dos resistencias de extinción de 1 kOhm para LED;
  • Resistencia de extinción de LED infrarrojos de 100 ohmios
  • dos resistencias de polarización de 10 kOhm;
  • Resistencia de ajuste de 10 kOhm
  • dos condensadores de derivación de 0,1 µF;

Como ya se mencionó, el módulo se basa en un comparador dual LM393. Veamos brevemente la documentación de este chip:

La serie LM393 son comparadores de voltaje de precisión duales e independientes capaces de funcionar con suministro simple o dividido. Estos dispositivos están diseñados para proporcionar un funcionamiento común de uno a otro con un modo de energía. Las especificaciones de compensación de voltaje de entrada de hasta 2,0 mV hacen de este dispositivo una excelente opción para muchas aplicaciones de electrónica industrial, automotriz y de consumo. Características del comparador LM393:

  • Amplio rango de potencia corriente continua fuente única (2,0 V a 36 V);
  • Rango de alimentación bipolar de 1,0 V a 18 V CC;
  • Corriente de reposo muy baja, independiente de la tensión de alimentación (0,4 mA);
  • Corriente de polarización de entrada de modo común baja (25 nA);
  • Corriente de polarización de entrada diferencial baja (5 nA);
  • Voltaje de compensación de entrada bajo (5,0 mV máx.);
  • Tensión de entrada diferencial igual a la tensión de alimentación;
  • Voltaje de salida compatible con niveles lógicos DTL, ECL, TTL, MOS y CMOS;
  • Temperatura ambiente de 0°C a 70°C.

El microcircuito tiene ocho pines, dos de los cuales son común (4) y potencia positiva (8), otras dos salidas: 1 - salida del comparador A, 7 - salida del comparador B. Los pines 2 y 3, respectivamente, son el inverso y entrada directa del comparador A, y pines 5 y 6, respectivamente, entradas directa e inversa del comparador B. También les presento el circuito interno de uno de los comparadores:

Como puede verse en el diagrama, la salida del comparador es una cascada basada en un transistor de colector abierto.

Todo el módulo ensamblado no mide más que la longitud de una cerilla y cabe fácilmente en un espacio pequeño:

Pasemos a la comprobación y para ello necesitamos:

  1. conector para conectar a los pines del módulo;
  2. resistencia limitadora de corriente para LED con una resistencia de 220 ohmios;
  3. y por supuesto el módulo en sí

Lo comprobaremos más de una manera sencilla, sin ningún controlador, y todo ello lo conectaremos según el siguiente esquema:

La descripción del módulo dice que funcionará con un voltaje de 3 V a 5 V y lo probaremos con un voltaje de suministro de 5 V. Me gustaría señalar una característica: al principio dije que el pin de salida está etiquetado +OUT y que esto no es del todo cierto. Del circuito interno del comparador en el que está ensamblado el módulo, se desprende claramente que el colector del transistor de salida no está conectado en ninguna parte y no puede haber un "+" en él, aunque se instala una resistencia de polarización de 10 kOhm en el módulo. placa entre la salida y la fuente de alimentación positiva, pero en algunos casos esto puede ser insuficiente, y en este caso resulta que la salida funciona a la inversa: cuando se activa el sensor, la salida será “0” lógico. Esto hay que tenerlo en cuenta a la hora de diseñar algunas manualidades. Al principio, todavía creí en la inscripción en la placa y conecté el LED entre la salida y el cable común, pero el LED comenzó a brillar inmediatamente cuando se aplicó energía sin obstáculos frente al módulo, y durante la operación, cuando apareció un obstáculo. se acercó a 3 cm, salió por el contrario:

Tuve que conectar un LED entre la salida y el positivo de la fuente de alimentación. Recopilamos esquema correcto y aplicar la tensión de alimentación:

Vemos que sin obstáculo el LED no se enciende.

Medimos la corriente y vemos que sin obstáculo en modo reposo, el consumo de corriente es de 36 mA:

Después del disparo, el LED que indica la presencia de una señal se enciende y el consumo de corriente aumenta a 47 mA:

Al cambiar la resistencia de la resistencia de recorte, medí la distancia de respuesta mínima y máxima estable posible del sensor. Cuando el eje de la resistencia de recorte se gira en sentido antihorario, la distancia de respuesta disminuye y la distancia mínima posible fue de 1 cm:

Cuando el eje de la resistencia de recorte se gira en el sentido de las agujas del reloj, la distancia de respuesta del sensor aumenta y la distancia de respuesta máxima confiable del sensor fue de aproximadamente 12 cm.

Sensor de obstáculos por infrarrojos para coches robot YL-63 (FC-51)
Módulo de Sensor para evitar obstáculos de coche inteligente, módulo de tubo infrarrojo, Sensor fotoeléctrico reflectante

El sensor sin contacto YL-63 detecta objetos en un rango de distancias desde casi cero hasta un límite establecido sin entrar en contacto directo con ellos. Varios fabricantes asignar diferentes nombres al mismo dispositivo. Algunos llaman al sensor presentado el nombre YL-63, otros FC-51. El sensor está diseñado para usarse cuando no se requiere información sobre la distancia a un objeto, sino solo sobre su presencia o ausencia. La distancia máxima de detección depende de la configuración. El sensor YL-63 tiene una salida discreta. Este sensor óptico registrar un aumento en la intensidad de la radiación infrarroja (IR) reflejada en un espacio controlado. Los cambios en la radiación reflejada se producen debido a partes móviles de mecanismos o al movimiento de objetos circundantes. YL-63 se puede colocar sobre un objeto en movimiento para determinar su posición en el espacio circundante. Se utiliza para detectar obstáculos al mover vehículos automáticos con ruedas y orugas. El sensor puede convertirse en parte de una ayuda visual para estudiantes en el campo de los sistemas de control y automatización.
El dispositivo contiene una fuente de radiación IR y un fotodetector. La radiación se refleja en un obstáculo y es registrada por un fotodetector. Transmite una señal al comparador LM393, que está configurado para funcionar a un cierto nivel de iluminación del fotodetector. El comparador genera una señal en la salida del sensor YL-63 en un nivel lógico bajo o alto.

El sensor óptico YL-63 pertenece a la clase de difusión. El nombre del grupo de sensores surgió debido al funcionamiento subyacente del sensor para la reflexión de la radiación en muchas direcciones: la difusión de la radiación a través de una superficie reflectante.
El funcionamiento del dispositivo consiste en determinar la iluminación del fotodetector. Dado que el YL-63 detecta la radiación reflejada, existe un error en la medición de la distancia causado por la diferente reflectividad de las superficies de los objetos hechos de diversos materiales.

Coeficientes de distancia para la reflexión desde varios materiales.

papel blanco mate 1
Tejido de algodón 0,6
Cloruro de polivinilo gris 0,57
Árbol
débilmente coloreado 0,73
crudo 0,4
Plástico
blanco 0,7
negro 0.22
caucho negro 0,2-0,15
Aluminio cepillado 1,2
Acero inoxidable pulido 2,3

La diferente reflexión y absorción de radiación de diferentes materiales se utilizan para operar la unidad de detección del tacómetro. Supongamos que tenemos. Necesita saber el número de revoluciones por minuto del eje del motor. YL-63 nos ayudará. Basta con pegar un trozo de papel blanco al volante, dirigir el haz del sensor hacia el volante y obtendremos una unidad sensora del tacómetro.
Para reducir los efectos de diversas interferencias, el microcontrolador de procesamiento acumula los datos recibidos del sensor durante un corto período de tiempo y realiza un promedio. El sensor YL-63 puede funcionar en dispositivos que no cuentan con microcontrolador.

Opciones

Tensión de alimentación 3,3-5 V
Distancia de detección al plano blanco mate reflectante 0,02-0,3 m
Ángulo de detección 35°
Dimensiones 43x16x7mm

Contactos

El sensor de obstáculos YL-63, también conocido como FC-51, tiene un conector de tres pines:
VCC - fuente de alimentación,
GND - cable común,
FUERA - salida.

Indicadores

Hay dos indicadores en la placa del módulo. Un brillo verde indica que hay energía encendida. El LED rojo se enciende si hay un objeto en la zona de detección.

Configuración de la distancia de detección

La configuración del dispositivo se ve facilitada por el indicador de detección. Esto le permite configurar el YL-63, también conocido como FC-51, para que funcione en condiciones reales. La configuración de la sensibilidad del sensor se realiza mediante una resistencia variable instalada en la placa. El obstáculo se instala a la distancia requerida de los dispositivos fotográficos del sensor. Al girar el contacto móvil de la resistencia variable en la placa del módulo YL-63, establece la distancia de respuesta y enciende el LED rojo. Luego se verifica la distancia de detección moviendo un objeto reflectante. El ajuste se repite al menos tres veces.

Programa para procesamiento de señales Arduino.YL-63

La señal del sensor se suministra al pin 12 del Arduino.

Configuración nula() (
Serie.begin(9600);
pinMode(12,ENTRADA);
}
bucle vacío() (
Serial.print("Señal: ");
Serial.println(digitalRead(12));
retraso(500);
}

Descripción general del sensor de obstáculos YL-63

El sensor infrarrojo digital para evitar obstáculos YL-63 (o FC-51) (Fig. 1) se utiliza cuando es necesario determinar la presencia de un objeto, pero no es necesario saber la distancia exacta al objeto. El sensor consta de emisor de infrarrojos y un fotodetector. La fuente de infrarrojos emite ondas infrarrojas que se reflejan en un obstáculo y son registradas por un fotodetector. El sensor detecta obstáculos dentro de un rango de distancias desde cero hasta un límite establecido. Está construido sobre la base del comparador LM393, que genera voltaje según el principio: se detecta un obstáculo - nivel lógico ALTO, no detectado - nivel lógico BAJO, este estado también se indica mediante el LED rojo ubicado en el sensor. El valor umbral depende de la configuración del sensor y se ajusta mediante un potenciómetro instalado en el módulo. Un LED verde está instalado en el sensor para indicar energía. El sensor se utiliza en robótica para detectar obstáculos al mover robots con ruedas o con orugas.

Características técnicas del sensor de obstáculos YL-63.

  • Modelo: YL-63 (o FC-51)
  • tensión de alimentación: 3,3–5 V
  • tipo de sensor: difusión
  • Comparador: LM393
  • distancia de detección de obstáculos: 2 – 30 cm
  • ángulo efectivo de detección de obstáculos: 35°
  • potenciómetro para cambiar la sensibilidad
  • LED de encendido
  • LED de indicación de funcionamiento
  • dimensiones: 43 x 16 x 7 mm

Conexión de YL-63 a Arduino

El módulo tiene 3 salidas:
  • VCC - fuente de alimentación 3-5 V;
  • GND - tierra;
  • SALIDA - salida digital.
Conectemos el sensor a la placa Arduino (diagrama de conexión en la Fig. 1) y escribamos un boceto simple que señale la presencia de un obstáculo con una señal sonora. Carguemos el boceto del Listado 1 en la placa Arduino y veamos cómo reacciona el sensor ante los obstáculos (ver Fig. 2).

Figura 1. Diagrama de conexión para conectar el sensor YL-63 a la placa Arduino

Carguemos el boceto del Listado 1 en la placa Arduino y veamos cómo reacciona el sensor ante los obstáculos (ver Fig. 3). Listado 1 // Boceto para revisar el sensor de obstáculos YL-63 // http:// http://3d-diy.ru // contacto para conectar la salida del sensor #define PIN_YL63 5 // Datos del sensor Y63 #define barrera digitalRead(PIN_YL63) void setup() ( // inicializando el puerto serie Serial.begin(9600); // configurando el pin de conexión del sensor en INTPUT pinMode(PIN_YL63,INTPUT); ) void loop() ( if (barrera == 1) ( Serial.println ("BARRERA!!!"); // Zona de detección de obstáculos while (barrera == 1) // Esperando salida (;) ) else ( Serial.println("no barrera"); // Fuera de la zona de detección de obstáculos mientras (barrera == 1) // Esperando entrada (;) ) )

Figura 2. Salida del monitor del puerto serie

Usando un potenciómetro, experimentemos configurando el valor umbral.

Ejemplo de uso

Consideremos un ejemplo del uso del sensor YL-63 a bordo de una popular plataforma robótica autopropulsada: un robot móvil en basado en arduino(ver 3).

Figura 3. Plataforma robótica – robot móvil basado en Arduino

Creemos un boceto de un robot atravesando un laberinto. Si, al mover un robot en un laberinto, te quedas en un lado (izquierdo o derecho), definitivamente llegarás a la salida (Fig. 4).

Figura 4. Esquema del robot recorriendo el laberinto.

Instalemos tres sensores de obstáculos en el parachoques delantero del robot, dos miran hacia adelante y uno mira hacia la derecha (ver Fig. 5).

La presencia de dos sensores frontales mejora la calidad de la detección de obstáculos en el frente, ya que un sensor no cubre toda el área frontal.

Figura 5. Conexión de sensores de obstáculos a un robot móvil basado en Arduino.

En el boceto comprobamos el estado de los sensores y, en función de los datos recibidos, se toma una decisión sobre el movimiento. Los sensores están conectados a los pines 2, 12, 13 de Arduino. // Números de los puertos a los que están conectados los sensores de obstáculos. const int Frente1 = 2, Frente2 = 12, Derecha = 13; Creemos un nuevo boceto en el IDE de Arduino, agreguemos el código del Listado 2 y carguemos el boceto en la placa Arduino. Listado 2 // Declarar variables para almacenar el estado de los dos motores. int motor_L1, motor_L2, entrada_L; int motor_R1, motor_R2, entrada_R; // Las constantes de tiempo se utilizan para establecer con precisión el tiempo para girar, girar y avanzar // en milisegundos. constante int tiempo_90 = 390; // Número de puertos a los que están conectados los sensores de obstáculos. const int Frente1 = 2, Frente2 = 12, Derecha = 13; //================================================== ======= void setup() ( // Ingrese los números de pin de Arduino en las variables. // Para los motores izquierdo y derecho de la máquina. setup_motor_system(3, 4, 11, 7, 8, 10); // pinMode(Front1, INPUT); pinMode(Front2, INPUT); pinMode(Derecha, INPUT); // Los motores están funcionando. void loop() ( boolean d_Front1, d_Front2, d_Right; d_Front1 = digitalRead(Front1); d_Front2 = digitalRead(Front2); d_Right = digitalRead(Derecha); // Si no se activó ningún sensor. if (d_Front1 && d_Front2 && d_Right) ( //Disminuye la velocidad de las ruedas derechas setspeed(255, 15); forward(); //gira a la derecha. else ( //Si uno de los sensores delanteros se activa y el derecho no. if ((! d_Front1) || (!d_Front2) ) ( //Potencia máxima a todas las ruedas. setspeed(255, 255); // girar a la izquierda 90 grados. left(); delay(time_90 / 5); ) else ( // Si el se activa el sensor derecho. // Disminuye la velocidad de las ruedas izquierdas. setspeed(15, 255);//gira a la izquierda ) ) // Función para inicializar el control del motor. void setup_motor_system(int L1, int L2, int iL, int R1, int R2, int iR) ( // Ingrese los números de contactos (pines) de Arduino en las variables. motor_L1 = L1; motor_L2 = L2; input_L = iL; // Para los motores izquierdo y derecho de la máquina. motor_R1; motor_R2 = iR; // Transfiere los puertos especificados al estado de salida de datos. pinMode(motor_L2, OUTPUT); input_R, OUTPUT); // La función establece la velocidad del motor. void setspeed(int LeftSpeed, int RightSpeed) ( // Establece el ancho del flanco positivo de 0 a 255. analogWrite(input_L, LeftSpeed); analogWrite(input_R, RightSpeed); // Cuanto más grande, más intenso funciona el motor. ) // Gire a la izquierda con las ruedas izquierdas bloqueadas. void forward() ( // Las ruedas izquierdas giran hacia adelante. digitalWrite(motor_L1, HIGH); digitalWrite(motor_L2, LOW); // Las ruedas derechas giran hacia adelante. digitalWrite(motor_R1, HIGH); digitalWrite(motor_R2, LOW); ) // Gire a la izquierda. void left() ( // las ruedas izquierdas giran hacia atrás digitalWrite(motor_L1, LOW); digitalWrite(motor_L2, HIGH); // las ruedas derechas giran. digitalWrite(motor_R1, HIGH); digitalWrite(motor_R2, LOW); ) Inicie el robot en el laberinto y observa cómo se mueve en el laberinto.

Preguntas frecuentes Preguntas frecuentes

1. El LED verde no se enciende
  • Compruebe que el sensor esté conectado correctamente.
2. El sensor no detecta un obstáculo a cierta distancia.
  • Usando un potenciómetro, seleccione el umbral de respuesta del sensor.

Todo robot que pueda conducir, volar o nadar debe poder ver los obstáculos en su camino. Para que el robot pueda hacer esto, necesita sensores adecuados. EN literatura inglesa tales dispositivos se llaman sensor de proximidad, los llamaremos sensores de obstáculos. En esta lección veremos uno de los sensores de obstáculos más comunes, que funciona según el principio de reflexión. Está diseñado de forma muy sencilla. El sensor contiene una fuente de luz direccional y un detector de luz. La fuente suele ser un LED infrarrojo con una lente y el detector es un fotodiodo o fototransistor. El LED del sensor está constantemente encendido y emite un haz de luz estrecho hacia adelante. Si hay un obstáculo frente al sensor (Figura A), la luz reflejada de la fuente incide en el detector y aparece un pulso positivo en la salida del sensor. En caso contrario, si no hay ningún obstáculo, el sensor queda en silencio (Figura B). Hay una tercera opción, cuando hay un obstáculo, ¡pero la luz no se refleja en él! La figura B muestra precisamente uno de esos casos. Resulta que el robot no verá una superficie negra mate.

1. Conexión

Conectaremos el sensor más simple con una salida digital. Diagrama esquemático de conexión a los terminales. ArduinoUno:
Aspecto del diseño

2. Configuración de sensibilidad

Como sabes, a nuestro alrededor hay muchas fuentes de radiación infrarroja, incluidas las lámparas y el sol. El elemento fotosensible del sensor detecta esta radiación de fondo y puede dar una falsa alarma. En otras palabras, el sensor de obstáculos puede funcionar cuando no hay ningún obstáculo. Para resolver este problema, el sensor tiene la capacidad de ajustar la sensibilidad de modo que sólo se detecte luz con suficiente intensidad. Esto generalmente se hace usando un comparador, un dispositivo electrónico que permite comparar dos niveles de voltaje. Un voltaje se suministra al comparador desde un fotodiodo y el otro desde un divisor de voltaje basado en un potenciómetro. Llamaremos al segundo voltaje. límite. Ahora el sensor dará una señal positiva solo cuando el voltaje en el fotodiodo sea mayor que el que configuramos. Para establecer el voltaje umbral, necesitamos un destornillador plano (también conocido como destornillador de punta plana). También nos ayudará en este procedimiento el LED de estado verde, que se enciende cuando el sensor detecta un nivel suficiente de luz infrarroja. El algoritmo de configuración se reduce a tres pasos:
  • colocamos el sensor en las condiciones de iluminación en las que funcionará;
  • conecte el sensor a la fuente de alimentación y el LED rojo se iluminará;
  • Retire todos los obstáculos delante del sensor y gire el potenciómetro hasta que se apague el LED de estado verde.
Para comprobarlo acercamos la palma de la mano al sensor y a cierta distancia se encenderá el LED verde. Si retiramos la mano el LED se apagará. La distancia a la que el sensor detecta un obstáculo depende del nivel de iluminación ambiental, del ajuste de sensibilidad y de ubicación correcta fotodiodo y LED en el sensor. Deben ubicarse estrictamente paralelos entre sí. Ahora que el sensor está configurado correctamente, comencemos a crear el programa.

3. Programa

Por ejemplo, encenderemos y apagaremos el LED estándar No. 13 en ArduinoUno, dependiendo de las lecturas del sensor. Al utilizar un sensor digital, el programa será el mismo que en el caso de trabajar con botones. En cada iteración del ciclo bucle Leemos el valor en el pin #2 y luego comparamos este valor con el nivel. ALTO. Si el valor es ALTO, esto significa que el sensor ve un obstáculo y encendemos el LED en el pin No. 13. En caso contrario, apagamos el LED.

constante int prx_pin = 2; constante int led_pin = 13; byte v; configuración vacía() ( pinMode(prx_pin, ENTRADA); pinMode(led_pin, SALIDA); ) void loop() ( v = digitalRead(prx_pin); if(v == ALTO) digitalWrite(led_pin, ALTO); else digitalWrite(led_pin , BAJO);

4. Ejemplo de uso Intentemos ahora utilizar el sensor digital para el propósito previsto. Hagamos que el robot de dos ruedas responda a las lecturas de dos sensores ubicados a la izquierda y a la derecha. bucle.

Asegurémonos de que cuando se detecta un obstáculo, el robot se aleja de él en la dirección opuesta y luego continúa avanzando. Organicemos el programa en forma de diagrama de flujo del procedimiento.

Misiones
  1. Si todo salió bien, intenta completar algunas tareas más con el robot.
  2. Apunte los sensores de obstáculos hacia abajo para que el robot pueda detectar el borde de la mesa. Escribe un programa que evite que el robot se caiga de la mesa.
  3. Vuelva a apuntar los sensores hacia abajo, pero esta vez con un propósito diferente. Como descubrimos, el sensor puede distinguir una superficie negra de una blanca. Utilice esta propiedad para crear un rastreador robótico (también conocido como LineFollower).

Apunta los sensores hacia los lados y haz que el robot se mueva a lo largo de la pared.

Conclusión

El dispositivo es un sencillo sensor de obstáculos digital, guiado por radiación infrarroja reflejada. Este sensor fue comprado en Aliexpress. El principio de funcionamiento es similar al esquema que se consideró recientemente.


sensor de infrarrojos obstáculos comprados en Ali

Diseño y parámetros.

Estructuralmente, el sensor es placa de circuito impreso 31 x 14 mm, la placa tiene un orificio de montaje.


Sensor de obstáculos por infrarrojos - placa de circuito impreso

El peso del sensor es de 2,7 g Para el suministro de energía y la transmisión de información, el sensor tiene un conector de tres clavijas, cuyas clavijas están marcadas.


Conector de conexión de sensores de tres pines
  • El dispositivo funciona con un voltaje constante en el rango de 3,3 a 5 V, el consumo de corriente es de 25 mA con un voltaje de alimentación de 3,3 V y 40 mA con un voltaje de 5 V.

El sensor contiene un LED infrarrojo y un fotodetector. La presencia de un obstáculo está determinada por la intensidad de la radiación infrarroja reflejada. Usando una resistencia de recorte en la placa del sensor, puede configurar la sensibilidad requerida del dispositivo. Según el fabricante, el sensor reacciona a obstáculos en el rango de 2 a 30 cm y el ángulo de visión del sensor es de 35 grados. El autor pudo ajustar el sensor a obstáculos en el rango de 3 a 8 cm, aunque el problema puede ser que solo se probó un sensor y, además, el ángulo de visión del sensor es bastante amplio. Tampoco hay que olvidar que varias superficies reflejar radiación infrarroja De diferentes maneras, una superficie más "brillante" en este rango se detectará desde una distancia mayor que una oscura. En cualquier caso, este sensor es un "arma cuerpo a cuerpo".


Sensor de obstáculos por infrarrojos: tamaño de placa

Cuando aparece un obstáculo en el campo de visión del sensor, se establece una señal lógica cero en su salida de información. Si no hay ningún obstáculo en el campo de visión, entonces la señal de salida es lógica. Hay dos LED en el tablero del sensor, uno es un indicador de encendido y el otro es un indicador de respuesta del sensor, que se enciende cuando aparece un obstáculo en la zona de visibilidad.

Conexión a Arduino

Según el vendedor, el sensor está optimizado para Arduino, teniendo en cuenta la riqueza de dicho dispositivo sencillo, indicación y marcado, uno puede estar fácilmente de acuerdo con esto.


Sensor de obstáculos IR con Arduino

Para ver un ejemplo de cómo interactúa el sensor con la plataforma Arduino, puede tomar un programa que enciende un LED conectado al puerto digital 13 presionando un botón conectado al puerto digital 12 de la placa Arduino UNO. El programa fue tomado del sitio robocraft.ru.

/*
*LED con botón
*/

intledPin = 13; // CONDUJO
int btnPin = 12; // botón
valor int=0;

configuración nula()
{
pinMode(ledPin, SALIDA); // esta es la salida - LED
pinMode(btnPin, ENTRADA); // y este es el botón de entrada
Serie.begin(9600); // escribiremos en el puerto COM
}

bucle vacío()
{
val = digitalRead(btnPin); // descubre el estado del botón
if(val==ALTO) // botón presionado
{
escritura digital (ledPin, ALTA); // enciende el LED
Serial.println("H");
}
else // botón no presionado
{
escritura digital (ledPin, BAJO); //apaga el LED
Serial.println("L");
}
retraso(100);
}

En este caso, en lugar de un botón, se conecta un sensor. Después de cargar el programa en la memoria del microcontrolador, puede experimentar con diferentes modos de funcionamiento del sensor.

Conclusión sobre la compra.

En general, un buen sensor económico para sistemas de control táctil y orientación de robots. En este último caso, probablemente podría existir una alternativa o complemento a los finales de carrera que se activan cuando el robot entra en contacto con un obstáculo. Bien vale la pena el dinero. denev