calcular el voltaje de la batería usando la imagen ADC

2

Necesito calcular el voltaje de la batería usando el ADC de mi PIC. El voltaje de mi batería es de 24 V y el ADC tiene una resolución de 12 bits, el voltaje de funcionamiento del PIC es de 3.3 V.

Estoy usando V ref + interno y P ref- del PIC como tensiones de referencia, perla de ferrita (modelo 1206) No sé el valor correcto. ¿Por qué se utiliza la cuenta de ferrita?

¿Cómo puedo calcular el voltaje de la batería usando este circuito? Ayúdeme con el cálculo con claridad?

    
pregunta Pradeep kumark

3 respuestas

4

Escribiré esta respuesta un poco más detalladamente, ya que no parece que tengas mucho conocimiento sobre electrónica.

En primer lugar, su circuito no parece un circuito de medición de voltaje, sino más bien un circuito de suministro. (¿Puede ser para tu microcontrolador PIC?)

El diodo Zener Z2 limita el voltaje en el lado derecho a un máximo de 3.3V. (Lo hace simplemente volviéndose conductor a ese voltaje).

Debido a esto, hay una caída de voltaje de 24V-3.3V = 20.7V sobre R2, lo que lleva a una corriente total de 20.7mA. A partir de esto, 1.5mA fluirán a través de R13, el resto de 19.2mA fluirán a través de Z2.

Si conectas algo que consume, digamos 15mA a 3.3V en el lado derecho, Z2 solo consumirá 4.2mA. La corriente total a través de R2 seguirá siendo 1.5mA + 15mA + 4.2mA = 20.7mA, por lo que la caída de voltaje sigue siendo 20.7V y el voltaje restante a la derecha aún es 3.3V.

Sin embargo, si conecta algo que consume más de 19,2 mA, la corriente general a través de R2 supera los 20,7 mA y también lo hace la caída de voltaje. El voltaje a la derecha se rompe, por debajo de 3.3V.

Por lo tanto, este circuito permite suministrar un dispositivo de 3.3 V que no consume más de 19.2 mA en el lado derecho. Pero tenga en cuenta que siempre habrá una corriente de 20.7 mA, incluso si no hay ningún dispositivo conectado. Esto drenará lentamente la batería. Además, debido a la caída de alto voltaje, más del 86% de la energía de la batería se desperdicia en calor. Eso no es muy eficiente.

C1 y C9 (y sus valores) son condensadores de bloqueo muy típicos utilizados, p. ej. Cerca de microcontroladores. El consumo de energía de un microcontrolador puede cambiar muy rápidamente, mientras que los cables también tienen una inductancia. Esto significa que el circuito no puede satisfacer las demandas de energía que cambian rápidamente, lo que lleva a una tensión de alimentación inestable para el microcontrolador. Como resultado, el microcontrolador puede no funcionar bien. Los condensadores actúan como búfer y pueden proporcionar algo de corriente hasta que el resto del circuito proporcione la corriente completa. (Si quieres, es como una despensa)

Llegando a la ferrita:
Un primer comentario: 1206 es solo el tamaño físico, no el modelo, ni ningún parámetro eléctrico. Las ferritas bloquean las altas frecuencias y permiten que las bajas frecuencias (y DC) pasen. Esto también significa que pueden filtrar picos repentinos de corriente suavizándolos un poco. Digamos que tiene ese microcontrolador con su rápido cambio de consumo de corriente y algún otro circuito muy sensible a una tensión de alimentación suave. El consumo de corriente del microcontrolador causaría caídas de voltaje, que se notarán en el otro circuito. Esa ferrita reduciría este efecto al suavizar la corriente que fluye hacia el microcontrolador. Sin embargo, eso causaría mayores caídas de voltaje en el lado del microcontrolador, pero por lo tanto, usted tiene los condensadores.

Finalmente, usted preguntó cómo medir el voltaje de una batería por ADC. En general, un ADC acepta un cierto rango de voltaje de entrada. Para el PIC, está definido por \ $ V_ {REF -} \ $ y \ $ V_ {REF -} \ $. En la mayoría de los casos, \ $ V_ {REF -} \ $ es 0V y \ $ V_ {REF -} \ $ se puede elegir entre la tensión de alimentación (3.3V en su caso) o una referencia interna (vea la hoja de datos, supongo 1.25 V). Pero a menudo también es posible alimentar su propio voltaje de referencia externo al ADC.

Para una medición precisa, use la referencia interna, ya que es independiente de la tensión de alimentación y es muy estable.

El ADC convierte un voltaje dentro de ese rango en un número, es decir, \ $ n = 0 \ $ para \ $ V_ {ADC \ _in} = V_ {REF -} \ $ y \ $ n = 2 ^ {12} - 1 = 4095 \ $ (ADC de 12 bits) para \ $ V_ {ADC \ _in} = V_ {REF +} \ $. Por lo tanto, la conversión es

$$ V_ {ADC \ _in} = (V_ {REF +} - V_ {REF -}) \ cdot \ frac {n} {2 ^ {12} -1} + V_ {REF -} $$

Ahora, el voltaje de la batería excede el rango del ADC, por lo que debes dividirlo hasta que esté dentro del rango. Hágalo de modo que la tensión esperada que se va a medir esté un poco por debajo del límite superior de ADC. Por ejemplo, para medir su 24V usando la referencia interna de 1.25V, use un resistor de 19kOhm y 1kOhm para dividir los 24V hasta 1/20, que es de 1.2V. Por supuesto, tendrá que multiplicar \ $ V_ {ADC \ _in} \ $ por 20 para obtener el voltaje real.

    
respondido por el sweber
1

El circuito que muestra parece ser una fuente de alimentación . No se puede medir el voltaje real de la batería. El designador BATT.VOLT solo significa que se deriva de la batería.

Si desea medir el voltaje de la batería, necesita un divisor de voltaje de + 24V a la entrada ADC PIC. No menciona el número de pieza, pero creo que la mayoría de los PIC requieren que la impedancia de la fuente sea inferior a 10K o 2.5K, así que usemos 2.5K.

Entonces necesitas dos resistencias R1 y R2 de manera que R2 / (R1 + R2) = Vref / Vbat (max) donde Vbat (max) es el voltaje máximo de la batería que desea medir, y R1 * R2 / (R1 + R2) < 2.5K.

Supongamos que está utilizando el módulo FVR (disponible en algunos PIC) para una referencia de 2.048 V y Vbat (máx.) = 30V. Entonces podrías escoger R2 = 2.00K y R1 = 27.4K.

Entonces, para un Vbat de 24 V obtendría 3265 conteos, y para un Vbat de 30 V obtendría 4081 conteos.

Puedes calcular Vbat = (ADC_counts / 4096) * Vref * (27.4 +2) / 2

    
respondido por el Spehro Pefhany
0

La perla de ferrita se usa aquí como un filtro de ruido. R2 y R13 es un circuito divisor de voltaje y zener se usa para evitar que el pin MCU se dañe.

Según lo indicado por mí en el Pin ADC de MCU, no debe haber un voltaje mayor que vref. En cuanto al esquema, parece que tiene 3.3V, ya que el diodo Zener usado tiene un voltaje de ruptura de 3.3V.

Ahora vamos a su esquema y suponiendo que el voltaje de detección máximo en el pin ADC de la MCU es 3.3V. Como se mencionó, el voltaje de la batería es de 24 V, R2 es de 1K y R13 es de 2,2K, por lo que el voltaje en BAT.VOLT que se conectará al pin ADC de MCU se puede calcular de la siguiente manera

BAT.VOLT = (R13 / (R13 + R2)) * Vbat = 16.5V, lo que puede dañar su pin MCU. Ya que el voltaje máximo que puede detectar el pin ADC es 3.3V (Asumido), aquí el valor de resistencia tiene que configurarse de tal manera que para 24 voltios, el voltaje en el pin MCU debería tener 3.2V.

Dado que el ADC tiene una resolución de 12 bits, entonces para 3.3V tiene un paso de alrededor de 0.4mV.

Y se debe usar una resistencia antes del diodo Back to Back, como se muestra en la siguiente figura, y el valor de la resistencia del desviador de tensión se puede reemplazar con el valor que se muestra en la figura

    
respondido por el Sanjeev Kumar

Lea otras preguntas en las etiquetas