Depuración de una interfaz PIC16F84A con un optoacoplador 4N25

Tengo una placa PCB que estoy tratando de reparar, el principio de esta placa de circuito es cambiar los relés de un horno uno a la vez con un tiempo de descanso constante, y el usuario del horno predefine el tiempo de conmutación.

El PCB está constituido por un PIC16F84A interconectado con 2 displays multiplexados de 7 segmentos, y con dos relés, también está el pin RA4 conectado al colector del optoacoplador 4N25. Compré un nuevo PIC16F84A y grabé en él mi programa hecho por mí mismo, y primero simulé todo el circuito de PCB en Proteus, en la simulación todo funciona bien como se esperaba, excepto la parte del optoacoplador que encontré rara.

relé_PIC

Para que quede claro, adjunté una captura de pantalla de la parte del optoacoplador con el PIC16F84A en Proteus.

El optoacoplador desempeña el papel de una puerta lógica abierta/cerrada en un horno representado como un interruptor en la simulación anterior, sin embargo, se han encontrado algunos problemas:

1/ El PIC parece reiniciarse infinitamente como puede ver, el MCLR del PIC está conectado directamente al colector del transistor PNP B327 que está conectado a tierra a través del Emisor del fototransistor a través de una resistencia R18, ¿es esto normal? tenga en cuenta que no es mi diseño de circuito, solo lo hice en Proteus dependiendo de la PCB disponible para probarlo.

2/ Cuando conecto el MCLR a +5V con una resistencia de 10k, el circuito parece funcionar bien, sin embargo, no entiendo el propósito de usar el diodo Zener en el emisor BC327.

3 / En la entrada del 4N25, encontré una resistencia limitadora de corriente igual a R17 = 33k, y sabiendo que el 4N25 tiene un CTR del 20%, obtenemos poca corriente en la entrada, ¡y el optoacoplador nunca obtendrá nada en la salida! para resolver este problema, asumí un If = 20ma y cambié el R17 = 200 y ahora el optoacoplador comenzó a enviar la lógica 1 necesaria al PIC, quiero saber si hay algún propósito para usar un R17 tan alto del diseñador ?

¡Bienvenido a EE.SE! Según todos los informes, esta es una muy buena 'primera pregunta'.

Respuestas (3)

No intento ser ofensivo, pero ¿está 100% seguro de que su simulación concuerda con la placa que está depurando? ¿Es esta una placa lanzada en producción que funciona, o el concepto de diseño de alguien que aún no se ha probado?

La conexión _MCLR definitivamente no me parece normal. Al ser una señal baja activa, necesita un pull-up (como ha descubierto). Tampoco estoy totalmente seguro de que el divisor de voltaje creado con ese 1.9k y su pullup de 10k vaya a funcionar en una gran población de piezas.

También tiene razón en que la corriente de polarización 4N25 está muy alejada de la resistencia original. La hoja de datos de Vishay solo especifica CTR en una condición de prueba de 10 mA, por lo que su expectativa de 20 % CTR con 33k no es válida. Por lo general, me quedo con la corriente que coincide con la condición de prueba y evito subir más que eso si es posible, para evitar el envejecimiento prematuro/la degradación de CTR con el tiempo.

Esta es una placa liberada en producción y ya se usó en un horno.
Para el diseño, dibujé la conexión del circuito PCB en un papel y seguí cada PIN y conexión punto por punto y los verifiqué varias veces, me sorprendió ver tal conexión, el propietario de la placa PCB me dijo que estaba funcionando antes.

Adam tiene razón, cometió un error al transcribir el circuito de reinicio, que es un detector de caída de voltaje estándar (pero horrible) basado en zener. Es probable que el valor de 1,9 K no sea correcto.

Aquí está la configuración probable :

ingrese la descripción de la imagen aquí

En cuanto al 4N25, si lee la hoja de datos e interpreta las curvas de la figura 3 junto con el CTR mínimo del 20 %, verá que se requiere una corriente LED mínima de aproximadamente 1 mA para una saturación de 0,4 V antes de tener en cuenta la temperatura y el envejecimiento. por lo que 3mA sería más razonable, lo que implica una resistencia en el rango de 1K a 1,5K con un suministro de 5V.

¡Gracias Adam y Sphero por su ayuda!

Problema resuelto , verifiqué nuevamente mi transcripción esquemática con el circuito PCB, no hay transcripción incorrecta, el esquema que envié es correcto, no sé si es otra configuración de un circuito de protección contra caídas basado en diodo Zener, sin embargo, cuando cambié el optoacoplador por uno nuevo y cambié la resistencia del LED de 33K por una de 10k, y me arriesgué a poner en el circuito el PIC16F84A que tenía programado, todo comenzó a funcionar como se esperaba, lo probé por más de 48 horas, sigue en servicio y está bien, con suerte.