IR

¿Qué son los sensores infrarrojos?

sensorinfrarrojo

El sensor infrarrojo, también conocido como sensor IR, es un dispositivo que detecta la luz reflejada y, por tanto, es capaz de diferenciar entre blanco y negro o claro y oscuro.

Se trata de un componente digital, ya que únicamente devuelve dos valores (0 y 1). Cuando detecta negro devuelve 0 (el negro absorbe la luz, por tanto la luz reflejada, que es lo que mide el sensor, es cero) y cuando detecta blanco, 1. Los sensores IR están presentes en objetos cotidianos como:

  • Hornos microondas.
  • Puertas de garaje.
  • Alarmas antirrobo.
  • Farolas (se encienden al oscurecer y se apagan cuando se hace de día).
  • Automóviles (detectan cuándo es de noche o si hay niebla para que se encienden los faros).
Manos a la obra. Vamos a realizar dos ejemplos que usan el sensor infrarrojo para hacer sonar un zumbador y para encender un LED.
Vas a necesitar:

  1. 2 x ZumBloq Infrarrojo
  2. 1 x ZumBloq Led
  3. 1 x ZumBloq Zumbador
  4. Una placa controladora ZUM BT 328 o compatible con Arduino UNO
  5. Un cable USB
G003520

Antes de empezar necesitarás ver el vídeo de cómo calibrar los sensores infrarrojos.

¿Ya lo tienes? Vamos.

Ejemplo 1

Hacer sonar el zumbador cuando el sensor IR detecte negro

Como ya hemos visto, el sensor IR es capaz de diferenciar entre blanco y negro. Antes de comenzar con el programa, conectamos los componentes a la placa controladora como en el siguiente esquema. IR al pin digital 3 y zumbador al pin digital 5.

ZUM-3-5

Una vez conectados el zumbador y el sensor IR a la placa, hacemos el programa. Utilizaremos el socorrido bloque Si… ejecutar.

Sejemploinfrarojozumbador

En este ejemplo hemos declarado una variable llamada color_detectado que representa al sensor infrarrojo. Hemos añadido una condición (que el color detectado sea negro) para que el zumbador suene. Para probar que funciona podemos colocar el sensor IR a unos 3 centímetros de una superficie blanca y colocar la mano entre el sensor y dicha superficie. ¿Qué ocurre? ¿Suena el zumbador?

Ejemplo 2

Hacer que se encienda un LED cuando los dos sensores IR detecten negro

Ahora vamos a hacer que se encienda un LED únicamente cuando los dos IR detecten el color negro. Para ello seguimos el procedimiento de siempre. Conectamos los sensores IR en los pines digitales 2 y 3 y el LED en el PIN 7 como en el esquema:

ZUM-3-2-7

Programamos la placa controladora para que el LED se encienda cuando ambos sensores detecten el color negro. En esta ocasión deben cumplirse dos condiciones para que se ejecuten las instrucciones que queremos (en este caso, que se encienda el LED). Utilizando el bloque “y” del apartado “Lógica” podemos añadir las dos condiciones al programa.

bitbloq_led_ir

Bien, ya sabes programar utilizando los sensores infrarrojos, ahora, hacer un siguelíneas te resultará facilísimo.

11 comentarios

  1. Hola Alberto,

    Tengo un sensor infrarrojo doble y no sé cómo funciona.
    ¿Cómo hago para leer los valores que retorna en sensor de la derecha y el de la izquierda?

    Y otra pregunta. ¿Qué se considera derecho e izquierdo?

    Gracias

    1. Alberto Valero

      Hola Sandra,

      Perdona el retraso, llevo unos días sin conexión a internet, pero ya estamos de vuelta. El sensor IR doble debe tener dos cables (con tres cables cada uno). Cada cable funciona de manera independiente y es como si tuvieras dos sensores IR. Puedes programarla cada uno por separado, igual que si tuvieras dos sensores IR.

      Respecto a qué es izquierda y qué es derecha, en el fondo es como tú quieras llamarlos. La convención que nosotros usamos es mirando el robot en el sentido de avance (cuando se trata de un robot)

      Espero haberte ayudado

      1. Hola!

        El ZUMbloq Infrarrojo doble, también tiene 2 leds (1 y 2), pero como conecto los infrarrojos y los leds en bitbloq (hardware), no se pueden usar ambas cosas en el mismo proyecto?

        1. Enrique Heredia

          Hola Sara,
          El ZUMbloq del infrarrojo doble está pensado para usarlo con el robot evolution, que trae un componente formado por dos sensores IR. Las dos patillas de ese bloque se corresponden cada una con uno de los sensores mencionados. ¿Te refieres a eso?
          Un saludo

  2. hay un sensor que por mucho que le dé vueltas con el destornillador no consigo calibrarlo

  3. Hola Alberto,

    a mi me dice que si no declaro la variable sensor1 o sensor2 no puedo pone el bloque variable sensor1 o 2

    Gracias

  4. Hola… qué tal….en el ejemplo 2 por qué no funciona poniendo sensor 1 “y” senso 2 todo ello “=” 0 ….debería ser lo mismo o no? …
    gracias

  5. Yo tengo el mismo problema. No sé que hay que poner en los espacios del sensor IR doble que ponen izquierda y derecha. ¿Alguién podría darme una solución? Porque he intentado programarlo con dos sensores IR individuales pero no me va. Un saludo

    1. sgruben

      Hola Alfonso,

      Puedes usar los sensores IR individuales también. Declara una variable, y en loop pon que esa variable coja el valor del sensor. Así te dará un valor 1 o un valor 0 según el estado en el que esté el sensor.

      Saludos,

Los comentarios están cerrados.