[Aporte] Tester para Vcc de 0 a 25 Volts con PIC 16F628a ( resolución en decimas )

Hola Amigos:
Me he decidido a publicar esta idea debido a que muchas veces he usado información entregada gratuitamente por otras personas y que en realidad nunca se agradece. Para mi una forma de agradecer es aportar, y aquí esta mi aporte :

A.- El porque de hacerlo:
En primer lugar buscando en internet un tester con PIC no encontré pues se requiere micros de gama mayor que contengan conversores análogos-digitales y el 628 ni los de gama menor no lo trae. Necesitaba un tester para medir baterías cargadas con paneles solares, pero usando los comparadores del pic nunca llegue a buena resolución de voltaje, ya que básicamente se pueden obtener 16 estados de lectura.

B.- Porque lo logre si no hay otras alternativas?
Basicamente, porque cuando no se puede llegar a un resultado por un medio, siempre queda la alternativa de buscar un camino alternativo y eso hice. Un poco de creatividad e ingenio es necesario para poder avanzar. Las ideas previamente masticadas , probadas y aprobadas para mi son mas aburridas.

C.- Como lo logre?
Mi idea fue asi: el pic 16f628a tiene 4 comparadores que se pueden usar de distinta forma. Para este caso lo use como tres comparadores con una referencia común. Asi puedo medir tres voltajes al mismo tiempo saliendo por los pines A0 A1 A2 y uso a3 como referencia.
Luego pensé que un circuito RC ( Resistencia condensador ) según sus valores demora un tiempo determinado en cargar el condensador hasta un voltaje determinado. Hay formulas que calculan el TAU, pero eso es para los cerebritos. Obviamente me base en eso para calcular pero no viene al caso mencionar los resultados.
La gracia de esto, es que si mantengo constante en circuito RC y vario el voltaje de entrada, demorara menos en cargarse un voltaje bajo y demorara mas en cargarse un voltaje alto. Ahora, si para cargar el circuito RC utilizo un pin del pic, podre saber cuando comienza la carga y , por otro lado, cuando se alcance el voltaje de referencia del comparador será el fin del tiempo de carga.

Finalmente , si activo con 1 un pin del pic y comienzo a contar ( 16 bits es suficiente ) mientras reviso que el comparador no cambie de estado, al final tendre una cuenta equivalente al tiempo. Asi, Contador = Tiempo = Voltaje.
Una vez que se realiza el proceso se debe descargar el condensador para comenzar un nuevo ciclo , lo que es realizado con el pin A4 que tira a tierra el condensador y lo descarga completamente.

Sabida la lógica, realice una tabla en Excel dándome estos resultados:

volt cou_h Cou_l 16bits
5 25 150 6550
5,5 28 155 7323
6 31 145 8081
6,5 34 175 8879
7 37 192 9664
7,5 40 210 10450
8 44 80 11344
8,5 47 150 12182
9 51 25 13081
9,5 54 140 13964
10 59 94 15198
10,5 61 240 15856
11 66 180 17076
11,5 69 200 17864
12 73 200 18888
12,5 77 240 19952
13 82 120 21112
13,5 86 40 22056
14 90 20 23060
14,5 95 88 24408
15 100 20 25620
15,5 104 200 26824
16 110 100 28260
16,5 114 210 29394
17 120 50 30770
17,5 126 200 32456
18 131 200 33736
18,5 138 120 35448
19 144 230 37094
19,5 151 200 38856



D.- Calculo del voltaje obtenido
Con estos datos obtenidos se pueden usar distintas maneras para saber el voltaje. Una forma es mirarlo como una recta ( aunque no lo es , pues es una curva ) y con un calculo de pendiente y ecuación de la recta podemos determinar matemáticamente el voltaje capturado.
Sin embargo, me resulto mejor tabular los valores dentro de la Eeprom del pic y hacer otro calculo, aplicando un poco de lógica.
Les dejo la tarea de como llevar el conteo a voltaje, si se rinden les comento como lo hice. Pero es ideal esforzar el cráneo para lograr cosas.
Espero sea un aporte la idea.
Saludos a todos!

Adjunto grafico de relacion counteo-voltaje y Esquematico a mano
 

Adjuntos

  • WP_20150427_002.jpg
    WP_20150427_002.jpg
    69.8 KB · Visitas: 42
  • grafico.png
    grafico.png
    7.9 KB · Visitas: 18
Atrás
Arriba