Estoy intentando usar un transistor para encender y apagar un SSR, que a su vez enciende y apaga un solenoide. Originalmente usé un transistor NPN (2N222), pero esto causó problemas cuando la MCU se reinicia, porque todos los pines IO están altos . Mientras trataba de teorizar (usando mi conocimiento muy limitado en el área) sobre cómo podría usar un transistor PNP para encender/apagar los +5V que van a los transistores NPN, se me ocurrió que simplemente podría usar un PNP para conducir el SSR directamente. Esto evitaría el problema de reinicio, porque el transistor se "apagaría" mientras el IO estaba alto (¿verdad...?):
¿Es este un uso apropiado de un transistor PNP? ¿Es esta una solución válida (probablemente obvia para la mayoría pero inteligente para mí)?
Según la respuesta de Russell, creo que no lo es (al menos, no como se dibuja aquí), porque la salida de MCU es solo de 3.3V, no de 5V.
La solución que propone es lo suficientemente buena como solución básica, siempre que pueda garantizar que la salida de FEZ se mantenga alta en todo momento hasta que la establezca en un nivel bajo. Ese es su trabajo para determinar.
Agregue una resistencia de valor alto [tm] de +5 V a la base PNP para mantenerla apagada cuando "FEZ" esté en circuito abierto. Si no lo hace, probablemente se lleve a "sorpresas". 10k a 100k será suficiente.
Tenga en cuenta que, como se muestra, FEZ debe aumentar hasta cerca de +5 V para apagar el transistor. Tan solo 0,5 V por debajo del riel (4,5 V) puede provocar que se encienda. Esto puede o no ser un problema dependiendo de la implementación del circuito del procesador/controlador. Lo que funciona aquí puede fallar en alguna parte si no se tiene en cuenta. Cambiar los 10k a 100k anteriores a, por ejemplo, 2k2 de base a emisor dividirá el voltaje de la unidad para que necesite más voltaje gping negativo antes de que se encienda el transistor. Diseño a la medida.
El solenoide DEBE tener un diodo inverso a través de él si funciona con CC para minimizar el pico reactivo al apagar.
Como se muestra, su SSR tiene una etapa de salida TRIAC. Esto puede implicar unidad de CA o puede ser simplemente el símbolo que tenía disponible. Si de hecho es un solenoide accionado por CA, es posible que necesite o no "apagarlo" para evitar problemas de energía reactiva, como en el caso de CC.
Si el optoacoplador está "cruzado por cero" encendido y apagado, es posible que no necesite un "amortiguador", aunque, con una carga altamente reactiva, la corriente y el voltaje están casi 90 grados desfasados y el apagado en un cruce por cero de voltaje seguirá siendo dar como resultado una "patada" inductiva.
Si el optoacoplador no tiene un cruce por cero, necesitará un amortiguador para disipar la energía reactiva. No puede simplemente usar un diodo invertido, ya que conducirá cada segundo medio ciclo (¡y habría " problemas "! :-)). . Un método es usar diodos zener de polaridad opuesta en serie, con voltajes zener al menos ligeramente por encima del voltaje pico de media onda de CA. por ejemplo, para la unidad de bobina de red de 110 VCA Vzener >= 110 x 1.414 >= 160- V. Digamos 18- V zeners. ( terminal 1 del solenoide - cátodo zener 1, ánodo zener1 - ánodo zener2, cátodo zener 2 - terminal 2 del solenoide.
Manejo de encendido
Si bien lo anterior resuelve el problema tal como se presentó, PUEDE no resolver el problema como sucede en casos genéricos del mundo real, y posiblemente tampoco en este caso. Aquí nos hemos dejado "cautivos" por lo que hace el procesador al inicio, en lugar de diseñar lo que queremos que suceda. Si el procesador no hace exactamente lo que queremos, nos vemos obligados a encontrar otra solución.
Una alternativa es diseñar un circuito que garantice un arranque adecuado. Es posible que esta no sea la solución más barata y sencilla, y si vale la pena depende de la aplicación. No voy a entrar en muchos detalles ya que hay muchas maneras de hacerlo.
Un solo ejemplo. Se utiliza un controlador NPN. La base del transistor está conectada a una tapa electrolítica a través de un diodo (posiblemente un diodo Schottky). El condensador también se carga a través de una resistencia de Vcc. Al encender, el capacitor está a 0 V, por lo que la base del transistor está sujeta por el capacitor y el transistor no puede encenderse. El capacitor se carga alto por la resistencia de Vcc y después de un período de probablemente < 1 tiempo Vcapacitor constante > 0.6V (ignorando el efecto del diodo) y el capacitor ya no tiene efecto en la operación. Es necesario determinar qué ocurre cuando se apaga.
Se pueden imaginar varias opciones. por ejemplo, el condensador podría ser controlado por un pin "de repuesto" y varios controladores controlados juntos de esta manera. Esto podría usarse como una "desactivación de controlador" masiva en cualquier momento a un costo incremental de un diodo Schottky por controlador.
Si este u otro esquema vale la pena es algo por determinar en cada caso.
Una alternativa es cambiar el suministro que se utiliza para controlar los periféricos (como el SSR en este caso). Esto también se puede hacer con control de clavijas o mediante un retardo RC. Muchas oportunidades para pensar y jugar.
Unidad de 3,3 V y otros problemas del mundo real
El LED del optoacoplador MOC3010 requiere un voltaje directo máximo de 1,5 V, por lo que la unidad de 3,3 V está bien.
Conecte el emisor PNP a 3V3 (si está disponible) y conduzca según los comentarios anteriores.
Si hay varios destellos en la línea de entrada antes de que las cosas se estabilicen, entonces se requiere una de mis ideas de encendido o algo similar si se quieren evitar operaciones falsas.
Si el tiempo de respuesta no es un problema, o si un retraso de, por ejemplo, 0,5 s es aceptable, agregar un condensador de "tamaño adecuado" a la base del transistor (ya sea PNP o NPN) ralentizará el funcionamiento. Esto también ralentiza el tiempo de liberación, por lo que debe tener en cuenta los efectos generales.
Incluso si la operación sin amortiguador parece funcionar bien, recomendaría MUY ENCARECIDAMENTE que se use un amortiguador, ya que "pasan cosas" y, tarde o temprano, es probable que alcance el voltaje máximo de la red "solo así" y experimente un pico inductivo de considerable magnitud. . En ausencia de un amortiguador, el propio TRIAC puede decidir intensificar y disipar la energía. Ya sea que lo haga de manera destructiva o simplemente se encienda de manera efectiva durante otro medio ciclo, está por determinarse. Este no es el tipo de cosas que desea que sus componentes determinen. en su nombre. Un diseño confiable es aquel que está (al menos) diseñado. Si pueden suceder cosas para las que no ha diseñado, entonces puede esperar que suceda lo inesperado.
Sí, tu circuito está bien.
Sin embargo, un punto: para mayor claridad, generalmente es una buena idea dibujar esquemas con voltajes de alimentación positivos a negativos de arriba a abajo. En otras palabras, su circuito es correcto, pero me gustaría ver el transistor transpuesto verticalmente. Emisor en la parte superior conectado al suministro de + 5V, colector hacia abajo conduciendo el SSR y base a la izquierda como lo tiene. Mi primera reacción fue que su circuito estaba roto hasta que noté los 5V en la parte inferior.
Si te entiendo bien el emisor del transistor esta conectado a +5V, pero el microcontrolador es de 3.3V.
En general, no puedes hacer eso. Hacer que la salida sea alta seguirá consumiendo corriente a través de la base: (5V - 0.7V - 3.3V)/2200 = 450 A, que sería suficiente para encender el SSR. Una solución sería cambiar el pin de E/S a entrada en lugar de convertirlo en una salida alta, pero la mayoría de los controladores de 3,3 V no son tolerantes a 5 V.
Podría bajar unos cuantos voltios de la base colocando un par de diodos en serie, pero esos necesitan corriente para crear la caída de voltaje, lo que significaría que necesita una resistencia a tierra, y luego vuelve a tener su problema original: en el arranque conducirá la ruta transistor-diodos-pulldown, encendiendo el SSR.
Mi sugerencia sería volver a la solución NPN y asegurarse de que cualquier pull-up interno esté deshabilitado.
Si mi memoria no me falla, el único problema es que lo que has hecho invierte el 'sentido' de la entrada FEZ. Es decir, para encender el transistor, debe conducir la base del transistor PNP a GND. Aparte de eso, me parece una solución perfectamente válida.
pete b
Marca
pete b
connor lobo
Marca