Convertir una señal alta/baja en una señal digital adecuada

Estudiante de electrónica de secundaria aquí, lo siento si esta es una pregunta simple.

Tengo un sensor fotoeléctrico que actualmente tengo conectado a un microcontrolador.

Cuando está encendido, la entrada digital siempre lee alto. Cuando se conecta a una entrada analógica MCU, la entrada cambia cuando el sensor se activa entre 200 (bajo) y 2000 (alto). En otras palabras, es un sensor digital, pero su salida no es exactamente digital, es más de '0.1 o 0.9' en lugar de 0 o 1.

¿Hay algún tipo de IC que pueda usar para convertirlo en una verdadera señal digital?

¿Puedes compartir las hojas de datos y el diagrama del circuito? En realidad, es posible que esté experimentando algún otro problema.
"Cuando está en la entrada analógica, la entrada cambia cuando el sensor se activa entre 200 (bajo) y 2000 (alto)". ¿Qué voltajes representan estos números?
Los sensores fotoeléctricos a menudo tienen una salida de colector abierto, por lo que podría ser tan simple como agregar una resistencia pullup.
0.1 y 0.9 están dentro de los límites de la lógica adecuada alta y baja. A menos que comparta información sobre qué sensor es, cómo se alimenta y dónde está conectado para leer el pin analógico o digital, no hay forma de saber qué salió mal. Existe la posibilidad de que su pregunta sobre cómo convertirlo en una señal digital adecuada no sea la pregunta correcta para resolver el problema.
Como todos aquí han preguntado, puede editar su pregunta y agregar: diagrama de circuito (no un enlace) y un enlace a la hoja de datos del sensor. Gracias.

Respuestas (5)

¿Hay algún tipo de IC que pueda usar para convertirlo en una verdadera señal digital?

Sí, puede usar un IC comparador de voltaje.

El comparador comparará los voltajes en sus dos entradas. Cuando uno es mayor que el otro, su salida será alta; de lo contrario, será baja.

Se pueden elegir 'alto' y 'bajo' para que sean voltajes lógicos para que pueda controlar su pin de entrada MCU directamente. Algunos tienen salidas de colector abierto/drenaje abierto y necesitan una resistencia pull-up.

Conectaría la salida de su sensor a un pin de entrada del comparador y un voltaje de referencia Vref al otro pin de entrada. Vref establece el voltaje de umbral. Cuando su sensor cruza ese umbral de voltaje, la salida del comparador va de menor a mayor, o de mayor a menor dependiendo de cómo lo haya conectado.

Vref se puede controlar desde un potenciómetro preestablecido, para que pueda experimentar.

A continuación se muestra un circuito comparador de ejemplo, tomado de este documento de diseño de Texas Instruments que explica toda la teoría detrás de los comparadores y cómo diseñar un circuito en la práctica.

Explica que puede conectar su comparador con histéresis o sin ella. La histéresis detiene el 'parloteo' de la salida del comparador (cambiando rápidamente entre alto y bajo) cuando las entradas tienen un voltaje casi igual. Vale la pena usarlo aquí, ya que solo necesita una resistencia adicional y hace que la salida sea mucho más estable.

ingrese la descripción de la imagen aquí

Una parte de ejemplo es el LM393 ( que se muestra a continuación ) que contiene dos comparadores en un paquete DIL amigable de 8 pines.

Tenga en cuenta que puede comprar MCU con un comparador incorporado. A menudo, los pines de entrada del comparador van a los pines de entrada de MCU o una entrada del comparador puede ser impulsada por un DAC interno para proporcionar Vref, que luego se puede programar a través del software.

ingrese la descripción de la imagen aquí

Es común que la electrónica digital no llegue a 0 V o al voltaje de suministro. La hoja de datos del sensor indicará cuál es el voltaje alto mínimo (por ejemplo, 0,9 * Vsuministro) y el voltaje bajo máximo.

De manera similar, el microcontrolador tendrá valores de umbral para entrada alta y baja. Supongo que 0.1 y 0.9 son solo una suposición, si no se registra, probablemente esté más lejos de 0 y 1 (voltaje de suministro) en realidad, ya que generalmente el 10 % y el 90 % del voltaje se aceptaría como 0 y 1. Podría usar un Schmitt dispara IC o un IC de búfer lógico que tiene el umbral de entrada deseado, pero en caso de que necesite establecer los umbrales exactamente, necesita usar un comparador.

O simplemente déjelo en la entrada analógica y configure los umbrales en el firmware.

Umbrales Lógicos

Los umbrales para los circuitos integrados lógicos que se definen en las hojas de datos son mucho más estrictos que el 10 % y el 90 % de V+. Muchos pueden usar del 40 % al 60 %, otros de 1 V a 2 V, por lo que una verdadera señal digital solo tiene que obedecer los requisitos lógicos de la hoja de datos.

Todos los circuitos integrados lógicos tienen especificaciones analógicas para definir el rango V,I de la interfaz.

Las hojas de datos recomiendan márgenes para el rechazo de ruido que tienden a ser alrededor de 1/3 a 2/3 del voltaje de suministro CMOS, a menudo llamado Vdd o simplemente V+.

En las unidades de microcontrolador (MCU o uC) es común definir que los umbrales lógicos pueden variar con la temperatura y las tolerancias del 30 % al 70 %, por lo que la entrada baja = 0 o Vil máximo debe estar por debajo de 0,3 V+ o el 30 % del suministro. y el mínimo alto o Vih =0.7 debe estar por encima del 70% V+.

Por lo tanto, del 10 % al 90 % cumple fácilmente con esta especificación lógica . ingrese la descripción de la imagen aquí

También existen inversores con histéresis o backlash que utilizan los umbrales anteriores. Los termostatos para hogares tienen una histéresis de alrededor de +/-0.5 'C, por lo que para la luz es importante decidir si necesita una transición brusca sin ruido y la histéresis que necesita puede ser mucho menor que 1/3 a 2/3 Vdd .

Sensores de luz

Existen muchos sensores sensibles a la luz que cambian la resistencia (LDR) o convierten la luz en corriente (PD).

CMOS Logic normalmente tiene un umbral de rango medio para voltajes analógicos con alta impedancia.

Por lo tanto, a partir de la Ley de Ohm y conociendo el uA del umbral de corriente que desea para "0,1", elige ese valor de resistencia pullup para crear el voltaje a través del sensor.

Aquí hay una discusión reciente sobre LDR y sensores de luz. ¿Cuál es la relación matemática entre la resistencia de un LDR y la intensidad de la luz en lux?

Conclusión

A veces, necesita un IC para amortiguar un voltaje analógico para crear una señal lógica, otras veces todo lo que necesita es solo un sensor con resistencia directamente en cualquier IC lógico para crear los niveles lógicos necesarios para cambiar algo. Los detalles vienen en las hojas de datos del sensor y la interfaz deseada. La familia 74HC... de lógica CMOS son las puertas lógicas CMOS simples básicas que se utilizan a menudo.

"Digital" está en el ojo del espectador, no es una propiedad de la electricidad en sí misma.

(Advertencia: la siguiente explicación es un poco complicada. Estoy tratando de transmitir la idea general, en lugar de dar una explicación de ingeniería exacta).

Las tensiones y corrientes eléctricas entre dispositivos son siempre analógicas. Cuando construimos sistemas "digitales", asignamos significados a niveles particulares de voltaje¹ (llamados "niveles lógicos" ) dentro de los circuitos y luego diseñamos el sistema para señalar a través de niveles de voltaje en esos rangos. Uno común en la electrónica de aficionados de hoy (y en una gran cantidad de productos electrónicos comerciales durante la década de 1990) es 5 V TTL, donde normalmente 0,0-0,8 V se lee como "bajo" o "cero" y 2,4-5,0 V se lee como "alto". " o uno." (Cualquier cosa entre 0,8 V y 2,4 V es una señal inválida y puede causar un comportamiento indefinido en el sistema). Una similar es la lógica CMOS de 5 V que tiene requisitos de rango más estrictos, típicamente 0,0-1,5 V para "bajo" y 3,5-5,0 V de "alto".²

Si bien esto suena simple, no puede ignorar que estos siguen siendo, al final, sistemas analógicos. En un sistema TTL, se requiere que el receptor de una señal extraiga corriente :

TTL es una lógica de sumidero de corriente, ya que se debe extraer una corriente de las entradas para llevarlas a un nivel de voltaje lógico 0. La etapa de conducción debe absorber hasta 1,6 mA de una entrada TTL estándar sin permitir que el voltaje aumente a más de 0,4 voltios. La etapa de salida de las compuertas TTL más comunes se especifica para funcionar correctamente cuando se manejan hasta 10 etapas de entrada estándar (un fanout de 10).

Entonces, por ejemplo, si tiene una entrada de detección de impedancia extremadamente alta que puede leer el voltaje en una línea mientras prácticamente no consume corriente, es posible que no extraiga suficiente corriente de la salida en un dispositivo TTL en particular para leer correctamente lo que ese dispositivo está intentando. comunicar. Esto sería una falla del diseño analógico necesario para que ese sistema digital en particular funcione correctamente.

Entonces, su sensor fotoeléctrico, si lo entiendo correctamente, ya es un sistema digital; simplemente está usando un estándar de señalización eléctrica para "apagado" y "encendido" (o como quiera llamar a los dos valores) que es diferente de lo que usa su microcontrolador. Otras publicaciones aquí han ofrecido buenas ideas específicas sobre cómo convertir una a la otra, pero le resultará instructivo mirar las hojas de datos de ambos dispositivos e intentar averiguar no solo qué niveles de voltaje tiene para la salida del sensor. y la necesidad del pin de entrada digital del microcontrolador, pero también qué tipo de comportamiento necesita para la corriente. Porque, al final, siempre te afecta una ley básica del universo: I = V/R .


¹ Bueno, generalmente voltajes. También son posibles otras formas de hacer esto. Por ejemplo, las interfaces de bucle de corriente envían señales a través de la cantidad de corriente que fluye a lo largo de un circuito.

² Estas son convenciones generales; cada chip individual u otro dispositivo tendrá sus propias especificaciones detalladas en su hoja de datos que se deben seguir para que sus señales digitales se envíen y lean correctamente.

Preguntaste si hay un IC que pueda convertir la salida del sensor en un "verdadero digital". Probablemente esa no sea la solución que realmente desea.

La hoja de datos de su microcontrolador identificará el voltaje máximo que representa bajo y el voltaje mínimo que representa alto. Necesitas buscar esos valores.

Sin embargo, si el microcontrolador percibe que la salida del sensor siempre es alta, eso significa que el microcontrolador piensa que la salida del sensor (y esto es importante) siempre cae por encima del límite mínimo de una entrada "alta". Pero, ¿por qué el sensor haría eso?

No identificó el sensor (y toda esta respuesta podría ser incorrecta dependiendo de su sensor...), pero la mayoría de los sensores fotoeléctricos son solo potenciómetros (resistencias variables). Cuando la luz es lo suficientemente fuerte, la resistencia cae casi a cero. Cuando la luz es débil, la resistencia es moderada. Cuando no hay luz la resistencia es alta. Si solo pensaste para ti mismo, "¡oye, eso es solo un interruptor elegante!" entonces estás en el camino correcto.

De hecho, cuando dijo en su pregunta, "el sensor se activa entre 200 (bajo) y 2000 (alto)", lo que probablemente quiso decir es que la resistencia del sensor varía entre 200Ω (luz fuerte) y 2kΩ (sin luz). 0

¿Qué significa esto para usted?

La entrada a un microcontrolador es una resistencia súper alta (megaohmios, generalmente muchos megaohmios). De hecho, para sus propósitos, es solo un capacitor. Conectó un voltaje "alto" a ese capacitor con un interruptor (su sensor). Cerraste el interruptor y el capacitor cargó. Luego abrió el interruptor y no sucedió nada porque no hay ningún lugar para que vaya la carga en la tapa. 1

Resultado: el microcontrolador piensa que la entrada siempre es alta.

El problema se resuelve fácilmente agregando una resistencia de valor razonablemente alto (por ejemplo, 150 KΩ 2 ) desde la entrada del microcontrolador a tierra. ¿Recuerdas tus matemáticas de resistencia en serie? Cuando la luz es fuerte, el voltaje a través de esa resistencia de 150 KΩ es VCC menos una cantidad trivial. Cuando la luz está apagada, el voltaje cae a cero gracias a la resistencia. 3 Si la luz es débil, la entrada puede ser alta o baja (lo que probablemente sea parte del objetivo del experimento).


0 Realmente duele que no nos hayas dicho qué es el sensor. Lo que dijiste también podría significar que el sensor se activa bajo a 200 lúmenes o lux y alto a 2000 lúmenes o lux, en cuyo caso casi toda mi respuesta es incorrecta.

1 No sé qué has aprendido hasta ahora en tus estudios, así que no quiero insistir en este punto, pero un condensador es como una batería recargable. Una vez que haya cargado la batería, puede caminar con ella y no perderá (a efectos prácticos) su carga. Necesitas conectar la batería a algo para que se descargue. Las mayúsculas en el contexto de lo que estamos hablando hacen exactamente lo mismo. Es cuando aplicas una señal de CA a una tapa que las cosas se ponen realmente geniales (y toda la metáfora de la batería se va por la ventana...).

2 No se limite a utilizar este valor. Ese valor puede ser demasiado alto dependiendo de qué tan rápido espere que cambie la luz. Sospecho que el problema que está tratando de resolver incluye un cálculo de qué tan grande debería ser esta resistencia. Tómese el tiempo para hacer ese cálculo.

3 De hecho, la resistencia de apagado de su sensor de 2 KΩ en comparación con ese valor de 150 KΩ sugiere fuertemente que es demasiado, demasiado alta. Pero es increíblemente valioso para ti hacer los cálculos para averiguar por qué. De hecho, podría ser mejor conectar el sensor a tierra y la resistencia a VCC. Haz... Las... Matemáticas... 😎