Caso práctico: Contador de objetos en cinta transportadora

Prototipo de Contador de objetos en cinta transportadora (Maker Style)

Nivel: Básico – Construye un sistema sensor de interrupción de luz para detectar objetos en movimiento en una línea.

Objetivo y caso de uso

En este caso práctico, construirás una barrera óptica utilizando una fotorresistencia (LDR) y un amplificador operacional configurado como comparador de voltaje. El circuito detecta cuando un objeto opaco interrumpe un haz de luz continuo, activando una señal que puede ser contada o procesada.

Por qué es útil:
* Automatización industrial: Se utiliza para contar productos que se mueven en una cinta transportadora.
* Barreras de seguridad: Detecta si una persona u objeto cruza un límite peligroso.
* Alarmas de intrusión: Activa una advertencia cuando se rompe un haz de luz invisible o visible.
* Sistemas de estacionamiento: Detecta la presencia de un vehículo en un lugar específico.

Resultado esperado:
* Estado A (Trayectoria de luz despejada): El sensor recibe luz y el indicador de salida (LED rojo) permanece APAGADO (Lógica Baja).
* Estado B (Objeto detectado): El objeto bloquea la luz, aumentando la resistencia del LDR. El indicador de salida se ENCIENDE (Lógica Alta).
* Umbral de señal: El comparador cambia de estado cuando el voltaje del sensor cruza el voltaje de referencia ajustable (aprox. 2.5 V).

Público objetivo: Nivel Básico

Materiales

  • V1: Fuente de alimentación de 5 V DC, función: alimentación principal del circuito.
  • R1: Resistencia de 10 kΩ, función: parte superior del divisor de voltaje para referencia.
  • R2: Resistencia de 10 kΩ, función: parte inferior del divisor de voltaje para referencia.
  • R3: Resistencia de 10 kΩ, función: resistencia pull-up para el nodo del sensor.
  • R4: Fotorresistencia (LDR), función: sensor de detección de luz.
  • R5: Resistencia de 330 Ω, función: limitación de corriente para el LED indicador de salida.
  • R6: Resistencia de 330 Ω, función: limitación de corriente para el LED emisor.
  • D1: LED blanco, función: emisor de luz (simula la fuente del haz).
  • D2: LED rojo, función: indicador de salida (objeto detectado).
  • U1: LM358 o OpAmp similar, función: comparador de voltaje.

Guía de conexionado

Este circuito se basa en comparar dos voltajes: una referencia fija (V_REF) y un voltaje de sensor variable (V_SENSE).

Conexiones de alimentación
* V1 (+) se conecta al nodo VCC.
* V1 (-) se conecta al nodo 0 (GND).
* U1 (Pin 8 / VCC) se conecta a VCC.
* U1 (Pin 4 / GND) se conecta a 0.

Voltaje de referencia (V_REF)
* R1 se conecta entre VCC y V_REF.
* R2 se conecta entre V_REF y 0.
* U1 (Pin 2 / Entrada Inversora) se conecta a V_REF.
* Nota: Esto establece un umbral fijo de 2.5 V.

Voltaje del sensor (V_SENSE)
* R3 se conecta entre VCC y V_SENSE.
* R4 (LDR) se conecta entre V_SENSE y 0.
* U1 (Pin 3 / Entrada No Inversora) se conecta a V_SENSE.
* Lógica: Cuando se bloquea la luz, la resistencia de R4 aumenta, V_SENSE sube. Si V_SENSE > V_REF, la Salida pasa a Alto.

Emisor de luz (Fuente)
* R6 se conecta entre VCC y NODE_EMIT.
* D1 (Ánodo) se conecta a NODE_EMIT.
* D1 (Cátodo) se conecta a 0.
* Coloca D1 físicamente frente a R4 (LDR).

Etapa de salida
* U1 (Pin 1 / Salida) se conecta a V_OUT.
* R5 se conecta entre V_OUT y NODE_LED.
* D2 (Ánodo) se conecta a NODE_LED.
* D2 (Cátodo) se conecta a 0.

Diagrama de bloques conceptual

Conceptual block diagram — LM358 Light Beam Interruption Logic
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

Esquemático

[ INPUTS / SENSORS ]                     [ LOGIC / PROCESSING ]             [ OUTPUTS ]

    [ LIGHT SOURCE ]
    [ VCC -> R6 -> D1 (White) ]
             |
      (Light Beam Path)
             |
             V
    [ SENSOR DIVIDER ]
    [ VCC -> R3 -> Node -> R4 ] --(V_SENSE)-->+----------------+
    [ (R4=LDR, varies w/ light)]              |   Pin 3 (+)    |
                                              |                |
                                              |    U1 LM358    |
                                              |   (Comparator) | --(Pin 1)--> [ R5 (330) ] --> [ D2 (Red LED) ] --> GND
                                              |                |
    [ REFERENCE DIVIDER ]                     |                |
    [ VCC -> R1 -> Node -> R2 ] --(V_REF)---->|   Pin 2 (-)    |
    [ (Fixed 2.5 V Threshold)  ]               +----------------+
Esquema Eléctrico

Mediciones y pruebas

  1. Verificación de referencia: Usa un multímetro para medir el voltaje entre V_REF y 0. Debería ser aproximadamente 2.5 V (la mitad de VCC).
  2. Condición de luz (Trayectoria despejada): Asegúrate de que el LED emisor (D1) ilumine el LDR (R4). Mide V_SENSE. Debería ser menor que V_REF (ej. < 2.0 V). El LED de salida (D2) debería estar APAGADO.
  3. Condición de oscuridad (Objeto detectado): Coloca un objeto (cartón o dedo) entre D1 y R4. Mide V_SENSE. Debería subir más alto que V_REF (ej. > 3.0 V). El LED de salida (D2) debería ENCENDERSE.
  4. Salida del comparador: Mide V_OUT relativo a 0. En el estado «Oscuro», debería estar cerca de 3.5 V – 4 V (Alto). En el estado «Luz», debería estar cerca de 0 V (Bajo).

Netlist SPICE y simulación

Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)

* Practical case: Object counter on conveyor belt

* -----------------------------------------------------------------------------
* Power Supply
* Wiring: V1 (+) to VCC, V1 (-) to 0 (GND)
* -----------------------------------------------------------------------------
V1 VCC 0 DC 5

* -----------------------------------------------------------------------------
* Reference Voltage Divider
* Wiring: R1 between VCC and V_REF, R2 between V_REF and 0
* Function: Sets threshold voltage (approx 2.5V)
* -----------------------------------------------------------------------------
R1 VCC V_REF 10k
R2 V_REF 0 10k

* -----------------------------------------------------------------------------
* Sensor Network
* Wiring: R3 between VCC and V_SENSE, R4 (LDR) between V_SENSE and 0
* Simulation Note: R4 is modeled as a behavioral resistor to simulate the
* ... (truncated in public view) ...

Copia este contenido en un archivo .cir y ejecútalo con ngspice.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* Practical case: Object counter on conveyor belt

* -----------------------------------------------------------------------------
* Power Supply
* Wiring: V1 (+) to VCC, V1 (-) to 0 (GND)
* -----------------------------------------------------------------------------
V1 VCC 0 DC 5

* -----------------------------------------------------------------------------
* Reference Voltage Divider
* Wiring: R1 between VCC and V_REF, R2 between V_REF and 0
* Function: Sets threshold voltage (approx 2.5V)
* -----------------------------------------------------------------------------
R1 VCC V_REF 10k
R2 V_REF 0 10k

* -----------------------------------------------------------------------------
* Sensor Network
* Wiring: R3 between VCC and V_SENSE, R4 (LDR) between V_SENSE and 0
* Simulation Note: R4 is modeled as a behavioral resistor to simulate the
* changing resistance of an LDR when an object blocks the light.
* -----------------------------------------------------------------------------
R3 VCC V_SENSE 10k

* R4 (LDR) Implementation:
* Resistance = 1k (Light/No Object) to 100k (Dark/Object Detected)
* Controlled by dummy voltage source V_OBJ_CTRL
R4 V_SENSE 0 R='1k + 99k / (1 + exp(-50 * (V(V_OBJ_CTRL) - 2.5)))'

* -----------------------------------------------------------------------------
* Light Emitter (Source)
* Wiring: R6 between VCC and NODE_EMIT, D1 Anode to NODE_EMIT, Cathode to 0
* -----------------------------------------------------------------------------
R6 VCC NODE_EMIT 330
D1 NODE_EMIT 0 D_WHITE

* -----------------------------------------------------------------------------
* Comparator (U1: LM358)
* Wiring: Pin 8=VCC, Pin 4=0, Pin 3=V_SENSE (+), Pin 2=V_REF (-), Pin 1=V_OUT
* -----------------------------------------------------------------------------
XU1 V_SENSE V_REF VCC 0 V_OUT LM358_COMP

* -----------------------------------------------------------------------------
* Output Stage
* Wiring: R5 between V_OUT and NODE_LED, D2 Anode to NODE_LED, Cathode to 0
* -----------------------------------------------------------------------------
R5 V_OUT NODE_LED 330
D2 NODE_LED 0 D_RED

* -----------------------------------------------------------------------------
* Dynamic Stimuli (Object Simulation)
* This source drives the behavioral LDR (R4).
* Logic: 0V = Clear (Light), 5V = Object (Dark)
* Timing: Wait 50us, Pulse High for 100us, Repeat every 300us
* -----------------------------------------------------------------------------
V_OBJ V_OBJ_CTRL 0 PULSE(0 5 50u 10u 10u 100u 300u)

* -----------------------------------------------------------------------------
* Models and Subcircuits
* -----------------------------------------------------------------------------
.model D_WHITE D(IS=1e-14 N=4 RS=10) ; High Vf simulation for White LED
.model D_RED D(IS=1e-12 N=2 RS=5)    ; Standard Red LED

* Behavioral OpAmp Subcircuit (Comparator)
* Pinout Order: Non-Inv(+), Inv(-), VCC, GND, Output
.subckt LM358_COMP P M V_POS V_NEG OUT
  * Sigmoid function for robust switching behavior (Rail-to-Rail logic approx)
  * V(OUT) approaches V_POS when P > M, V_NEG when P < M
  B1 OUT 0 V = V(V_POS) * (1 / (1 + exp(-100 * (V(P) - V(M)))))
.ends

* -----------------------------------------------------------------------------
* Analysis Directives
* -----------------------------------------------------------------------------
.op
.tran 1u 500u

* Print required signals for batch processing
.print tran V(V_SENSE) V(V_REF) V(V_OUT) V(V_OBJ_CTRL)

Resultados de Simulación (Transitorio)

Resultados de Simulación (Transitorio)
Show raw data table (1064 rows)
Index   time            v(v_sense)      v(v_ref)        v(v_out)
0	0.000000e+00	4.545455e-01	2.500000e+00	7.345271e-89
1	1.000000e-08	4.545455e-01	2.500000e+00	7.345271e-89
2	2.000000e-08	4.545455e-01	2.500000e+00	7.345271e-89
3	4.000000e-08	4.545455e-01	2.500000e+00	7.345271e-89
4	8.000000e-08	4.545455e-01	2.500000e+00	7.345271e-89
5	1.600000e-07	4.545455e-01	2.500000e+00	7.345271e-89
6	3.200000e-07	4.545455e-01	2.500000e+00	7.345271e-89
7	6.400000e-07	4.545455e-01	2.500000e+00	7.345271e-89
8	1.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
9	2.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
10	3.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
11	4.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
12	5.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
13	6.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
14	7.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
15	8.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
16	9.280000e-06	4.545455e-01	2.500000e+00	7.345271e-89
17	1.028000e-05	4.545455e-01	2.500000e+00	7.345271e-89
18	1.128000e-05	4.545455e-01	2.500000e+00	7.345271e-89
19	1.228000e-05	4.545455e-01	2.500000e+00	7.345271e-89
20	1.328000e-05	4.545455e-01	2.500000e+00	7.345271e-89
21	1.428000e-05	4.545455e-01	2.500000e+00	7.345271e-89
22	1.528000e-05	4.545455e-01	2.500000e+00	7.345271e-89
23	1.628000e-05	4.545455e-01	2.500000e+00	7.345271e-89
... (1040 more rows) ...

Errores comunes y cómo evitarlos

  • Intercambiar entradas del OpAmp: Conectar la Referencia a la entrada No Inversora (+) en lugar de la Inversora (-) invertirá la lógica (el LED se APAGA cuando se detecta el objeto). Asegúrate de que V_SENSE vaya al pin No Inversor (+) para la «Detección de Oscuridad».
  • Interferencia de luz ambiental: El LDR es muy sensible. Si la habitación es brillante, el estado «Oscuro» podría no ser lo suficientemente oscuro para activar el umbral. Usa un pequeño tubo o cinta para proteger el LDR.
  • Colocación incorrecta del LDR: Si el LDR (R4) se coloca en la rama superior del divisor de voltaje (intercambiado con R3), la lógica se invierte. Asegúrate de que R4 se conecte a Tierra (0).

Solución de problemas

  • El LED de salida nunca se ENCIENDE:
    • Verifica si el objeto realmente bloquea la luz completamente.
    • Mide V_SENSE. Si nunca supera los 2.5 V, aumenta el valor de R3 (ej. a 22 kΩ) para aumentar la sensibilidad del voltaje.
  • El LED de salida nunca se APAGA:
    • El LDR podría estar recibiendo luz insuficiente del Emisor.
    • Verifica la alineación de D1 y R4.
    • Mide V_REF. Si R1 está desconectada, V_REF podría ser 0 V, causando que la salida permanezca en Alto.
  • La salida parpadea:
    • La fuente de luz podría ser inestable, o el voltaje está oscilando exactamente en el umbral. Añade un condensador de desacoplo (ej. 100 nF) a través de los rieles de alimentación cerca del OpAmp.

Posibles mejoras y extensiones

  1. Sensibilidad ajustable: Reemplaza R1 o R2 con un potenciómetro de 10 kΩ. Esto te permite ajustar finamente el umbral V_REF para trabajar en diferentes condiciones de luz ambiental.
  2. Histéresis (Trigger de Schmitt): Añade una resistencia de retroalimentación de alto valor (ej. 1 MΩ) entre la Salida (V_OUT) y la entrada No Inversora (V_SENSE). Esto evita que el LED parpadee si el objeto se mueve lentamente a través del haz.

Más Casos Prácticos en Prometeo.blog

Encuentra este producto y/o libros sobre este tema en Amazon

Ir a Amazon

Como afiliado de Amazon, gano con las compras que cumplan los requisitos. Si compras a través de este enlace, ayudas a mantener este proyecto.

Quiz rápido

Pregunta 1: ¿Cuál es el componente principal utilizado para detectar la luz en este circuito?




Pregunta 2: ¿Qué función cumple el amplificador operacional en este diseño?




Pregunta 3: ¿Qué sucede en el 'Estado B' cuando un objeto bloquea la luz?




Pregunta 4: ¿Cuál es una aplicación práctica mencionada para este sistema?




Pregunta 5: ¿Cómo se comporta el LED indicador cuando la trayectoria de luz está despejada (Estado A)?




Pregunta 6: ¿Qué ocurre con la resistencia del LDR cuando un objeto bloquea la luz?




Pregunta 7: ¿Cuál es el propósito principal de este circuito según el contexto?




Pregunta 8: ¿Qué tipo de lógica de salida se genera cuando se detecta un objeto?




Pregunta 9: ¿Qué componente actúa como indicador visual de la salida?




Pregunta 10: ¿En qué tipo de sistema de seguridad podría usarse este circuito?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme:
Scroll to Top