Reloj con excitación desde la línea AC con PIC16F88


Este es uno de los muy pocos proyectos que hice con Niple, en este circuito en particular no pasé de la etapa de simulación por lo que llevarlo a un uC real (no simulado) puede requerir algún tipo de ajuste o adaptación. En su momento me encargaron un cargador de baterías medio extraño basado únicamente en niveles de tensión y tiempos trascurridos. Extrañamente no se me solicitó constatar niveles de corriente algo que es muy poco usual en cargadores de baterías que se precien de tal. Dado que los períodos de tiempo que trascurrían entre las diversas etapas eran extensos decidí probar cuantas opciones de temporización se me vinieran a la mente y una de ellas fué mirar los pulsos de la red eléctrica obteniendo excitación directamente de allá. No es algo novedoso para mi, tengo en producción un frecuencímetro de red eléctrica true RMS el cual para poder tomar la frecuencia de la red necesariamente debe poder acondicionar la CA en pulsos de nivel de tensión compatibles con el microcontrolador y luego contarlos dentro de un lapso de tiempo preciso (un segundo para que sea true RMS) y luego mostrar en pantalla dicho valor. Por tal y como para experimentar un poco mas con Niple que si bien lo tenia pago no lo había utilizado demasiado decidí hacer esta experiencia de reloj que, al menos en la simulación funcionó muy bien.

No hay demasiado que ver en este circuito, un microcontrolador con oscilador interno, dos pulsadores sobre un puerto A sin resistencias internas de PullUp por lo que tenemos dichos componentes por fuera del uC, un display del tipo alfanumérico con la mínima cantidad de líneas de comunicación, incluso sin RW (algo que por cierto no me gusta nada) pero queriendo hacer lo menos posible esto es lo que se logra!. El capacitor de 100nF como siempre va pegado al micro y si nuestro LCD es algo ordinario o bien si esta algo distante del microcontrolador ponerle en paralelo a los terminales 1 y 2 otro de estos cerámicos es una buena idea. La alimentación de este circuito debe ser provista por una fuente estabilizada de 5V aunque como la fuente de temporización proviene externamente no es crítico si varía la alimentación y afecta al oscilador RC interno del micro puesto que no es de allí de donde se obtienen los pulsos de reloj.

ATENCION: Tengan presente que este circuito sólo lo he simulado, la terminal 3 del microcontrolador (rotulado como ENT) debe ser adaptado a la línea de AC para que el micro no vuele en mil pedazos!

De los siguientes links se pueden bajar tanto el proyecto para Niple como el archivo para la simulación y el HEX para quemar directamente el micro.

Proyecto Niple   /   Archivo HEX para grabar el uC  /  Proyecto de Proteus para simular el circuito

Si a alguno se le ocurre pasarlo a CCS o a otro entorno mas fiable que el Niple y me lo quiere pasar para que lo anexe a esta nota será bienvenido y por supuesto AGRADECIDO!

 

Pablo Canello, 05/04/2020