¿Entrada de 12 V en 3.3 V GPIO, TVS bajada o Schottky pull up?

12

Estoy construyendo mi propio PLC que tiene que aceptar entradas permanentes de hasta 30 V CC en un STM32F con entradas de 3.3 V.

La entrada conmutada tendrá que funcionar con 8-30 V, pero el 90% del tiempo el voltaje de entrada se fijará en 12 V o 24 V. Las entradas solo serán interruptores, como interruptores de límite, por lo que no me molesta detectar entradas de menos de 8 V o entradas de sensores, etc., tampoco me preocupa la velocidad, ya que, en realidad, lo más rápido que se moverán los interruptores es cada 1 s; Solo necesito asegurarme de que mi microcontrolador esté protegido.

Quiero un circuito universal que pueda usar en múltiples productos / proyectos de tipos similares, por lo que el recuento de componentes, el costo y el espacio de PCB deben ser mínimos, por lo que realmente no quiero usar optoacopladores.

Dos ingenieros electrónicos han recomendado lo siguiente, pero no estoy muy seguro de qué manera es mejor:

Ingrese la descripción de la imagen aquí

¿Debo usar el superior o el inferior? ¿Nada porque?

Terry Gould
fuente
55
No suelo decir esto, pero parece un buen lugar para un optoacoplador.
Matt Young
@MattYoung, ¿podría actualizar su comentario para decir por qué se necesitaría un optoacoplador?
Richard Chambers
1
El circuito que pregunto en esta pregunta es un circuito de entrada de un PLC de marca principal.
Ron Beyer

Respuestas:

17

En realidad, este es un problema antiguo con los PLC y no es tan simple como sus soluciones previstas.

El mayor problema que tiene es que, además de tener una amplia variedad de voltajes lógicos potenciales que necesita poder manejar, los niveles lógicos reales pueden ser mucho más altos que el riel de 3.3V que está utilizando internamente. Algunos sensores y dispositivos tienen umbrales lógicos superiores a 5V. Como tal, simplemente usando un circuito de corte como ha indicado no detectará el bajo nivel de dichos sensores.

La etapa de entrada de los PLC debe ser mucho más flexible.

Incluso si el nivel lógico de bajo nivel es aceptable, estos circuitos tienen problemas diferentes.

Zener / TVS Limiting.

ingrese la descripción de la imagen aquí

Este circuito tiene el beneficio de que, para un voltaje de entrada conocido, el Zener puede dimensionarse para que nunca permita que el voltaje exceda el voltaje del riel. Normalmente, elegiría un zener con un voltaje inverso más pequeño que el riel, pero más alto que el umbral lógico de alto nivel.

Sin embargo, el zener pasará una gran parte de su vida con polarización inversa, por lo que paga una penalización en forma de tiempo de recuperación inversa cuando la señal de entrada cae, lo que retrasará su señal un poco.

VIH

Diodo limitador sobre carril

ingrese la descripción de la imagen aquí

El uso del diodo hasta el riel tiene el problema de que el voltaje de salida aún excederá Vcc, ya sea solo un poco. Sin embargo, eso todavía puede ser perjudicial para la entrada. Además, en este caso, el tiempo de recuperación inversa significa, para bordes de entrada rápidos, un alto voltaje lo hará muy brevemente.

Entonces

VOL

Alternativas


Optoacoplamiento.

Un método común utilizado por los PLC es utilizar optoacopladores.

esquemático

simular este circuito : esquema creado con CircuitLab

Este método le brinda el beneficio adicional de aislamiento y separación del suelo. El problema con esto es que necesita algún tipo de acondicionamiento de señal entre el sensor y la entrada para asegurarse de que el LED esté encendido en el umbral correcto y que la cantidad correcta de corriente se alimente a través del LED. Ese condicionamiento podría ser la resistencia simple que se muestra arriba, o un circuito complejo que incluye algún tipo de comparador.

La velocidad del optoacoplador también es un factor limitante. Sin embargo, este método se usa comúnmente porque le brinda total flexibilidad.

Acondicionamiento de entrada analógica

Otro método es aceptar la señal en forma analógica, compararla con una referencia variable con histéresis y generar el nivel lógico de esa manera.

esquemático

simular este circuito

Obviamente, los componentes, incluido el comparador, deben elegirse para acomodar los voltajes de entrada máximos. El circuito que se muestra es bastante simple, puede volverse mucho más complejo con filtros, reguladores, protección ESD, etc.

Combinación

Por razones de aislamiento, puede combinar lo anterior y hacer que el comparador alimente un controlador de corriente constante al LED de un optoacoplador.

Si estuviera desarrollando un producto, ensamblaría todo eso en un pequeño módulo enchufable que podría enchufarse en los enchufes de borde de tarjeta en una placa "madre", como se usa para tarjetas en PC. De esa manera, puede reemplazarlos fácilmente si uno se fríe. Ese método también le permite poner a disposición otros tipos de entrada, por ejemplo, una entrada de fibra óptica.

Trevor_G
fuente
2
¿Un BJT o un FET no sería una forma buena, segura y barata de hacer esto? OK, la señal se invertiría, pero el software solucionaría eso. Pregunta genuina, no tratando de ser inteligente.
DiBosco
VOL
Gracias por su respuesta muy detallada, acabo de actualizar mi pregunta para responder algunos de los problemas que mencionó. El voltaje de entrada será de 8-30v con una frecuencia máxima de 1s
Terry Gould
@TerryGould genial, entonces ya te he mostrado casi todo lo que necesitas saber :)
Trevor_G
¿Cambiaría mucho si la entrada fuera tolerante a 5V? Muchos en STM32F son, con un máximo absoluto a 5.3V. También Vih es 0.7 * Vdd, entonces 2.3V para un riel de 3.3V.
Jan Dorniak
5

100k es demasiado alto. Se activaría desde casi cualquier relé o operación de conmutación cercana. No es realmente confiable para un PLC si me preguntas.

En realidad, existen normas y reglamentos para los PLC . Dado que desea que todos los proveedores de PLC tengan un comportamiento similar en las instalaciones, sería bueno que varios modelos pudieran conectarse entre sí sin problemas.

Por ejemplo, la entrada solo lo considera encendido cuando se hunde al menos ~ 2 mA y está por encima de 10V. (IEC 61131-2) iec 61131-2

No puede obtener esto precisamente con pasivos, por eso hay partes como SN65HVS880.

En mi respuesta anterior, he dado un ejemplo esquemático sobre cómo puede intentar acercarse a este comportamiento con pasivos *.

Un simple 100K y un BAT54S no serán confiables, lo puedo decir por experiencia.

ejemplo de entrada de plc
respuesta previa

* disparador Schmitt separado no es esencial

Jeroen3
fuente
2

Ambos son aceptables. Deberá asegurarse de que el resistor tenga el tamaño correcto para que la corriente de entrada no provoque que el voltaje de entrada caiga por debajo de V_IH, pero con CMOS esto es trivial ya que la corriente de entrada es muy pequeña (100k es casi seguro)

Con el segundo, la única advertencia es que necesitará asegurarse de que la carga total en 3.3v nunca sea inferior a 30V / 100k (multiplicada por la cantidad de entradas que tenga), de lo contrario, el riel de 3.3 V podría ser elevado a un voltaje que podría dañar los dispositivos en él. Si pones el micro en modo de suspensión, podría dibujar tan poco.

La otra advertencia es que en ambos casos la resistencia de 100k actúa con la capacitancia de entrada como un filtro de paso bajo, lo que ralentiza las entradas. Si hay una capacitancia de entrada de 10 pF, tendrán una velocidad de alternancia máxima de aproximadamente 100 kHz y un retraso de aproximadamente 2 microsegundos.

τεκ
fuente
VOL
"Ninguno de los dos funciona si el VOL del sensor conectado> 1.5V más o menos". - Agregue una resistencia de GPIO a tierra para formar un divisor de voltaje. ¡Problema resuelto!
Bruce Abbott