Condensador de suavizado para sensor de voltaje

0

Así que "construí" un sensor de voltaje para un Arduino usando dos resistencias. La configuración actual es la que se muestra en el cismático y los pines Arduino solo son tolerantes a 5 V.

La precisión del sensor es correcta cuando hay poco consumo de corriente en la batería. Pero cuando la batería está alimentando motores, la tensión tiende a saltar mucho. Lo primero que haré con esta configuración es aumentar el valor de R2 de 100K a 330K. Esto disminuirá el voltaje máximo de 55V a 20V, pero de todos modos nunca debería estar presionando más de 20V. Eso aumentará la resolución a la que puedo medir la batería, pero creo que para obtener datos muy precisos, debo agregar condensadores de suavizado en algún lugar del circuito para asegurarme de que el voltaje no "salte" tanto. ¿Algún pensamiento?

EDITAR: Entonces, después de escuchar algunas recomendaciones en este post, decidí hacer algunas pruebas. Decidí cambiar la resistencia de 1M y 100K con 10K y 1K respectivamente. Luego utilicé una batería lipo de 2 celdas completamente cargada y ejecuté 4 motores continuamente durante unos 25 minutos hasta que la batería se agotó. Los datos se registraron en Serial Mointor y se graficaron en Excel. No arranqué los motores hasta que pasaron 20 segundos para la grabación. Aquí están mis conclusiones.

Comosepuedeverenlosgráficos,losdatosdelosdosprimerosestánportodaspartes.La"estabilidad" de la señal que se está grabando no parece depender de la impedancia de esa señal (al menos para el Atmega32u4). Un promedio de 20 muestras a la vez mostró datos utilizables que parecen consistentes con otras curvas de descarga de la batería lipo.

La estabilidad de los siguientes gráficos podría mejorarse reduciendo la proporción de R1 y R2, y sospecho que agregar un límite de filtrado en R2 también aumentaría la precisión de la medición.

    
pregunta M.Schindler

2 respuestas

2

El uso de un valor demasiado grande para el divisor de voltaje afectará la precisión y el voltaje que su arduino "vea"

Arduino adc tiene "impedancia":

LahojadedatosdeATMEGA328dice:"El ADC está optimizado para señales analógicas con una impedancia de salida de aproximadamente 10 kohm o menos", por lo que no debe usar un valor demasiado grande para el divisor de voltaje.

En su esquema, los condensadores de suavizado son demasiado grandes. Unos cuantos microfaradios están bien y creo que debería incluirse un condensador de derivación de cerámica para evitar el aumento de voltaje causado por el motor.

Debido a que está interesado en el rango de 0 a 20 V, el esquema debería ser algo como esto:

simular este circuito : esquema creado usando CircuitLab

    
respondido por el Long Pham
0

C1 y C2 no suavizan el voltaje: si desea crear un filtro de paso bajo RC, debe colocar el condensador en el lado correcto de la resistencia, y eso es a través de R2, justo en la entrada ADC.

En cuanto al valor, es su elección, depende de la cantidad de filtrado que necesite, solo use el usual fórmula . Recuerde que el valor R que se debe usar es la impedancia de salida de su divisor de voltaje, y esa es la combinación paralela de R1 y R2 (no solo R2).

Asegúrese de que la tapa no sea una cerámica de alto K como X7R, o estará fabricando un micrófono piezoeléctrico. Utilice electrolítico, película o cerámica C0G. Si usa resistores de alto valor para evitar gastar la batería, observe la corriente de fuga en la hoja de datos de la tapa.

La hoja de datos del micro dice "El ADC está optimizado para señales analógicas con una impedancia de salida de aproximadamente 10 kohm o menos". Esto es cierto, pero hay más que eso. Cuando el ADC toma una muestra, conectará su condensador de muestreo a la entrada durante un cierto período de tiempo, y la impedancia de la fuente debe ser lo suficientemente baja como para ajustar completamente el voltaje en la tapa de muestreo a 1LSB durante el tiempo de muestreo. Con una impedancia de fuente de 100k, esto no sucede, por lo que perderá precisión.

Sin embargo, si agrega un límite a través de R2, entonces el límite de muestreo de ADC se cargará a partir de ese límite mayor y se liquidará muy rápidamente. Ahora, la cantidad de carga utilizada en la tapa de muestreo no debe cambiar el voltaje en la tapa de su filtro en más de 1 LSB, por lo que el valor de la tapa del filtro debe ser de al menos \ $ 2 ^ {ADCbits} \ $ veces el muestreo ADC gorra. Con este truco, puede adquirir señales lentas de fuentes de impedancia muy alta sin utilizar un opamp, siempre que la frecuencia de muestreo sea lo suficientemente baja.

    
respondido por el peufeu

Lea otras preguntas en las etiquetas