Autor Tema: Medir batería con ADC y Enable  (Leído 1805 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1689
Medir batería con ADC y Enable
« en: 23 de Febrero de 2017, 13:15:37 »
Hola a todos
Ando buscando una forma de medir batería con un micro sin drenar corriente cuando no se esta realizando la medición , he encontrado el diagrama que adjunto en la imagen, creen que funcione??
De antemano, gracias por la atención
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado Picuino

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 5416
Re:Medir batería con ADC y Enable
« Respuesta #1 en: 23 de Febrero de 2017, 13:42:24 »
¿Qué tensión tiene la batería? Para tensiones muy elevadas, hay que proteger la puerta del mosfet.
El mosfet de abajo tiene que conmutar con poca tensión de puerta (3.3v). No lo he comprobado.
Por lo demás parece funcionar bien. Pruébalo en una protoboard si quieres estar seguro.

Otra solución más sencilla es colocar un zener a Vdd con una tensión un poco menor de la batería.
Luego una resistencia en serie del zener a un pin del micro, que puedas llevar a estado bajo o estado alto.
Otro pin del micro puede leer la tensión del zener y deducir la tensión de la batería.
Esto sólo vale para un rango pequeño de tensiones de la batería y no te da tanta precisión.

Saludos.

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1689
Re:Medir batería con ADC y Enable
« Respuesta #2 en: 23 de Febrero de 2017, 13:55:29 »
gracias picuino, La bateria son dos pilas AA para hacer un VCC de 3V
Si, el Gate conmutaría con un micro del mismo VCC
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:Medir batería con ADC y Enable
« Respuesta #3 en: 23 de Febrero de 2017, 16:31:25 »
Hola jhozate, con solo 3V es difícil que funcione el circuito, ya que si lo hace, con poca caída de tensión, ya dejaría de activar los gates de los mosfet.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado colotron

  • PIC12
  • **
  • Mensajes: 73
    • Canal de YouTube
Re:Medir batería con ADC y Enable
« Respuesta #4 en: 23 de Febrero de 2017, 23:28:25 »
gracias picuino, La bateria son dos pilas AA para hacer un VCC de 3V
Si, el Gate conmutaría con un micro del mismo VCC

Pero entonces... la tensión de batería a medir no es más alta que la alimentación del microcontrolador?, las baterías alimentan directamente al pic?.
Porque de ser así no precisas para nada usar transistores. Son necesarios si el micro está alimentado con 3V por ejemplo pero la tensión a medir con el divisor resistivo es mayor a eso (5V, 12V, etc), ya que de lo contrario al desconectar el GND del divisor resistivo quedaría en el pin de medición una tensión más alta que la alimentación del micro, y eso haría actuar los diodos de protección del pin correspondiente (diodos a VCC y GND).

Entonces, si estás alimentando al micro con la misma batería, tranquilamente puedes usar un esquema como:

* Medir alimentacion con enable.png
(5.07 kB, 563x442 - visto 540 veces)

Cuando quieras medir la alimentación del micro ( que supongo = batería) se BAT_MEAS_EN como pin de salida en bajo (0), se realiza la medicón con el conversor AD (pin ADC_BAT), luego se pone el pin BAT_MEAS_EN en alta impedancia configurándolo como una entrada (sin pullup ni pulldown).

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1689
Re:Medir batería con ADC y Enable
« Respuesta #5 en: 24 de Febrero de 2017, 09:31:58 »
si, la alimentación son dos pilas AA, y alimentan al micro.

El esquema inicial, lo que sacado del siguiente link
Código: [Seleccionar]
https://e2e.ti.com/blogs_/b/fullycharged/archive/2016/01/15/simple-battery-monitoring-in-ultra-low-power-applications
« Última modificación: 24 de Febrero de 2017, 09:35:01 por jhozate »
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado colotron

  • PIC12
  • **
  • Mensajes: 73
    • Canal de YouTube
Re:Medir batería con ADC y Enable
« Respuesta #6 en: 24 de Febrero de 2017, 11:18:51 »
si, la alimentación son dos pilas AA, y alimentan al micro.

El esquema inicial, lo que sacado del siguiente link
Código: [Seleccionar]
https://e2e.ti.com/blogs_/b/fullycharged/archive/2016/01/15/simple-battery-monitoring-in-ultra-low-power-applications

Entonces no precisas usar transistores, como dije arriba, es necesario cuando la tensión a medir a través del divisor resistivo es más alta que la alimentación del micro, pero si se está midiendo la misma alimentación del micro no hace falta.

Dicho de otra manera, imagina que en el circuito que puse dejamos el enable en alta impedancia: que tensión habrá en el pin que va al ADC?
Pues como no hay corriente circulando porque el circuito no está cerrado I* R = 0, con lo que la tensión de batería estará directamente aplicada al pin de medición del CAD.
Adjunto otro diagrama mostrando los diodos de protección.

Si Vbat != alimentación del micro estaríamos dejando en serie cuando NO se mide la batería, con el resistor del lado alto, con el diodo de protección del pin BAT_MEAS que va a VCC, con la alimentación del micro. De ahí que digo que terminamos aplicando la tensión de batería (más alta en la nota de aplicación de Texas) a un pin del micro lo que puede ocasionar daños, de ahí la necesidad de usar transistores.

Pero si Vbat = alimentación del micro = VCC entonces tenemos no estamos aplicando ninguna tensión al pin del micro que éste no pueda manejar, entonces no hay ninguna necesidad de usar transistores.

Me parece que me estoy repitiendo mucho, ojalá no esté agregando confusión, pero se entiende lo que digo? sino trato empezar de cero otra vez con mayor claridad.

Saludos.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 7817
Re:Medir batería con ADC y Enable
« Respuesta #7 en: 24 de Febrero de 2017, 15:25:49 »
Creo que voy a resumir un poco la idea de colotron y agregar un poco mas:

Como la tension medida no supera el limite (que es VDD del micro) no es necesario que uses un divisor resistivo, y solo necesitarias una simple resistencia a la entrada del micro. Aun asi esto no te salva de esa pequeña corriente de entrada que tiene un pin en estado de alta impedancia, ni la carga que pueda tomar al momento de leer.

El tema con el analisis anterior esta en que al ser VBAT = VDD vas a tener problemas, tomemos 2 casos

Caso de conectar directo el pin al micro:
Al tener que referenciar tu ADC deberias hacerlo a una tension conocida. Podrias usar VDD pero en este caso tendrias tu problema. En el que siempre tu lectura seria VDD ( o 0xFF para 8 bits) Si VBAT es de 4V , VDD es 4V, si VBAT es de 2V VDD es 2V, entonces siempre medirias el ADC en su valor mas alto.

Caso de conectar el micro con un divisor resistivo:
Nuevamente ocurre lo mismo que antes, supongamos que hago un divisor resitivo de 1/2 , entonces si VDD = VBAT = 3V, el punto de sensado es de 1.5V. Esto nos daria el ADC a mitad de escala ( ejemplo de 8 bits en 0x7F) el problema nuevamente es que si referenciamos a VDD y por ejemplo este baja a 2V, nuestro punto de sensado seria de 1V, y nuevamente es mitad de escala.

Con lo cual nunca detectariamos esa baja de tension en ninguno de los 2 casos.

Solucion es utilizar una referencia de tension externa, y que se mantenga estable dentro del rango de voltaje de la bateria, ejemplo, si la bateria va desde 2V a 3V, durante ese valor que pueda mantener esos 1.8V por ejemplo de salida (supongo un valor, deberias revisarlo correctamente en el datasheet) , y asi alimentar a Vref+.
Esto tambien implica usar un divisor resistivo aunque tu idea era eliminarla, pero podrias poner resistencias de GRAN valor de esa forma tenes una tension y corriente suficiente como para alimentar un AO de bajo consumo en seguidor de tension. Y de alli alimentar al micro.

Todo esto porque la alimentacion o referencia es la misma tension (o una fraccion de esta) de lo que se quiere medir.

La otra opcion es darle total el micro entrara en BOR apenas llegue a una tension definida en los bits de configuracion.

Desconectado Picuino

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 5416
Re:Medir batería con ADC y Enable
« Respuesta #8 en: 25 de Febrero de 2017, 19:55:35 »
Prueba a medir caída de tensión en un diodo. Necesitas la entrada del ADC y una salida digital para polarizar la resistencia. A nivel bajo, el consumo es de cero.

Probablemente el micro ya tenga una referencia interna de 1.25v (bandgap), más estable que el diodo y también desconectable.

Un saludo.

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1689
Re:Medir batería con ADC y Enable
« Respuesta #9 en: 10 de Abril de 2017, 09:28:25 »
Hola jhozate, con solo 3V es difícil que funcione el circuito, ya que si lo hace, con poca caída de tensión, ya dejaría de activar los gates de los mosfet.

Un saludo.

Atte. CARLOS.
Efectivamente como dijo chaly, el mosfet no conmutó correctamente, despues de haber revisado los mosfet encontré algunos con la característica de "logic level" que son precisamente para conmutar con voltajes lógicos.
Pondré en prueba el arreglo que puso colotron, y seguiré en busqueda de un mosfet logic level SOT23-3.  :?
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado colotron

  • PIC12
  • **
  • Mensajes: 73
    • Canal de YouTube
Re:Medir batería con ADC y Enable
« Respuesta #10 en: 10 de Abril de 2017, 10:30:25 »

Efectivamente como dijo chaly, el mosfet no conmutó correctamente, despues de haber revisado los mosfet encontré algunos con la característica de "logic level" que son precisamente para conmutar con voltajes lógicos.
Pondré en prueba el arreglo que puso colotron, y seguiré en busqueda de un mosfet logic level SOT23-3.  :?
[/quote]

Yo haría algo así (suponiendo que lo único que estés midiendo con el ADC sea la batería y nada más, sino podría usar una pata solo para habilitar la referencia):

* 2017-04-10-102357_1366x768_scrot.png
(9.51 kB, 933x425 - visto 477 veces)


La idea es que la referencia y el divisor resistivo solo consuman corriente al momento de medir durante algunos milisegundos poniendo BAT_MEAS_EN = 0, y luego dejar esa circuitería desenchufada poniendo BAT_MEAS_EN como entrada (alta impedancia) con lo que quedaría el circuito abierto tanto para la referencia como para el divisor.

Resistores, algún capacitor, 1 zener, y nada de mosfets  :o

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1689
Re:Medir batería con ADC y Enable
« Respuesta #11 en: 10 de Abril de 2017, 19:11:44 »
gracias colotron, si ! probaré ese esquema, aunque como comentó picuino tendría algo de fuga, probaré también poner un diodo en la parte baja del divisor y mido su caída, así le pongo la tierra con un Pin del micro y el resto del tiempo se supone que no habría consumo alguno
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado Simon21

  • PIC18
  • ****
  • Mensajes: 301
Re:Medir batería con ADC y Enable
« Respuesta #12 en: 07 de Enero de 2020, 17:49:59 »
Hola a todos.

Como resolvieron este tema al final ??

Leyendo un poco, me parece la mejor opción conmutar un transistor desde la salida digital del micro, medir el valor en el ADC y luego dejar de conmutar el transistor para evitar el consumo de corriente en el divisor resistivo.

Aguardo respuesta de quienes hayan implementado algo similar o mejorado.

Saludos !
INGENIERIA ELECTRONICA
UNIVERSIDAD TECNOLOGICA NACIONAL