Detecta objetos sin tocarlos con un sensor de luz infrarroja
¿Quieres que tu proyecto sepa cuándo algo pasa frente a él sin usar un botón ni un contacto físico? Esa es justo la magia de un sensor fotoeléctrico. Es uno de los módulos más baratos y entretenidos para empezar con Arduino, y en pocos minutos tienes un detector de presencia funcionando.
En esta guía vas a aprender qué es un sensor fotoeléctrico, cómo emite y recibe luz infrarroja para detectar un obstáculo, cómo conectarlo a tu Arduino con tres cables, y cómo leer su salida desde el monitor serial. Al terminar vas a entender por qué este principio es la base de los autos seguidores de línea, los sistemas de conteo de piezas y muchas barreras de seguridad.
Qué es un sensor fotoeléctrico
Un sensor fotoeléctrico, también llamado fotocélula, es un dispositivo que reacciona ante los cambios en la intensidad de la luz. Internamente trabaja con dos piezas que se complementan: un emisor que genera luz y un receptor que la percibe. Todos los modos de detección de este tipo de sensores se construyen sobre esa misma idea.
El módulo que usamos acá es del tipo reflectivo. El emisor es un LED infrarrojo (el diodo transparente) que dispara un haz invisible para el ojo humano. El receptor es un fototransistor (el componente de carcasa oscura) que mide cuánta de esa luz vuelve rebotada. Cuando no hay nada al frente, casi nada regresa. Cuando aparece un objeto, este refleja el infrarrojo de vuelta y el receptor lo detecta. Por eso son ideales para detectar, clasificar y posicionar objetos en una línea de trabajo.

Sobre la placa hay un potenciómetro pequeño (el cuadrado azul) que regula la sensibilidad: girándolo cambias la distancia a la que el sensor considera que hay un objeto. También vas a ver dos LED indicadores: uno verde que se enciende apenas el sensor recibe alimentación, y uno rojo que se prende cada vez que detecta algo al frente. Eso te deja depurar a simple vista, incluso antes de conectar el Arduino.
Materiales que vas a necesitar
- Un módulo sensor fotoeléctrico infrarrojo (tipo reflectivo, con salida digital OUT)
- Una placa Arduino Uno (o compatible)
- 3 cables jumper macho hembra para unir el módulo con la placa
- Un cable USB para programar el Arduino y abrir el monitor serial
Con eso basta. No hace falta protoboard ni resistencias externas, porque el módulo ya trae su electrónica de acondicionamiento (un comparador integrado) lista para entregar una señal digital limpia.
Cómo conectar el sensor al Arduino
El módulo expone tres pines rotulados en la propia placa: VCC, GND y OUT. La conexión es directa y solo lleva tres cables:
- VCC va al pin de 5V del Arduino. El módulo tolera entre 3.3V y 5V, así que también funciona alimentado a 3.3V si tu proyecto lo requiere.
- GND va a cualquier pin GND del Arduino.
- OUT va al pin digital 8 del Arduino. Por ahí viaja la señal de detección.

Un consejo práctico: conecta primero la alimentación (VCC y GND) y deja el cable de datos para el final. Así evitas dejar el pin OUT energizado mientras el módulo todavía no tiene tierra de referencia, que es una buena costumbre al cablear cualquier sensor.

El código para Arduino
La lógica es simple: el Arduino lee el pin 8 todo el tiempo y prende un LED en el pin 13 según lo que detecte. Carga este código tal cual en tu placa desde el IDE de Arduino.
/*ElectroCrea.com
Sensor Fotoelectrico Arduino
----------------------------
VCC 3.3V
GND GND
OUT
*/
int sensorfotoelectrico = 8;
int led = 13;
int val ;
//////////////////////////////////////////////////////////////////////////////////////VOID SETUP
void setup ()
{
pinMode (sensorfotoelectrico, INPUT) ;
pinMode (led, OUTPUT) ;
Serial.begin (9600);
}
//////////////////////////////////////////////////////////////////////////////////////VOID LOOP
void loop ()
{
val = digitalRead (sensorfotoelectrico) ;
if (val == HIGH)
{
Serial.println ("-");
digitalWrite (led,LOW);
}
else
{
Serial.println ("Objeto detectado");
digitalWrite (led,HIGH);
}
}
//Mas información en ElectroCrea.com
Hay un detalle que conviene entender bien, porque a muchos los confunde la primera vez. La salida de este módulo es activa en bajo: cuando NO hay objeto, el pin OUT queda en estado HIGH; cuando SÍ aparece un objeto al frente, OUT cae a LOW. Por eso el código enciende el LED y escribe la frase justo en el caso else, es decir cuando la lectura deja de ser HIGH.
Una vez cargado, abre el monitor serial a 9600 baudios. Vas a ver que se imprime la frase Objeto detectado cada vez que algo cruza el área de detección, y un guion bajo cuando el campo está despejado. Si la detección se dispara demasiado lejos o demasiado cerca, gira el potenciómetro del módulo hasta dejarla en el punto que necesitas.
Variantes y mejoras
Cuando ya lo tengas andando, puedes llevar el proyecto más lejos con estas ideas:
- Cuenta piezas automáticamente. En lugar de solo imprimir un texto, suma uno a una variable contador cada vez que OUT pasa de HIGH a LOW. Con eso transformas el sensor en un contador de objetos para una cinta o una caja.
- Agrega una alarma sonora. Conecta un zumbador a otro pin digital y hazlo sonar mientras haya un objeto detectado. Sirve como barrera de seguridad casera o aviso de paso.
- Construye un robot que evade obstáculos. Montando dos de estos sensores al frente de un robot con ruedas puedes hacer que gire cuando detecta una pared. Es el mismo principio que usan los autos seguidores de línea y los robots que esquivan muros.
- Filtra rebotes por software. Si el ambiente tiene mucha luz infrarroja (sol directo, ampolletas halógenas), agrega un pequeño retardo o una confirmación de varias lecturas seguidas antes de dar por válida la detección. Así evitas falsos positivos.
Personalización para Chile
En Chile puedes conseguir las piezas centrales de este proyecto en MechatronicStore:
- Arduino Uno R3 compatible (SKU N-301): CLP $7.890. Es el cerebro del proyecto. La versión compatible cumple exactamente la misma función que el original para este tutorial y deja más presupuesto para el resto.
- Cables macho hembra 30cm (SKU C-418): CLP $1.990. Son los jumper ideales para unir los pines macho del módulo con los pines hembra del Arduino.
El módulo sensor fotoeléctrico infrarrojo del tipo reflectivo que se usa acá no siempre está en stock con esa forma exacta de placa azul. Si no lo encuentras, revisa la categoría de sensores infrarrojos y de proximidad de la tienda: hay alternativas que detectan objetos con el mismo principio de luz infrarroja, aunque el cableado y el rango cambien según el modelo.
Recursos
- Tutorial original: Sensor Fotoeléctrico, por Alberto Cárdenas en ElectroCrea
- Código completo (.ino): Sensor_Fotoelectrico.ino
Guía en español de Chile inspirada en el tutorial de ElectroCrea, con componentes en stock local en MechatronicStore.




