Los valores de Arduino ADC cambian después de la desconexión USB

ingrese la descripción de la imagen aquíUtilizo una función de lectura analógica Arduino uno para leer un circuito divisor de voltaje para un rango de voltaje de 0-70 VCC. En el divisor de voltaje, estoy usando 2.7Kohm y 36kohm para reducir el rango de voltaje de 0-70VDC a 0-5VDC para la entrada analógica de arduino. El circuito funciona bien con la alimentación USB al arduino, y tan pronto como desconecto el USB y el arduino cambia a la fuente de alimentación de conmutación dual de respaldo (120 V CA a 12 V CC y 5 V CC), los valores analógicos cambian. Los valores aún son estables y no veo ningún valor basura, pero hay una gran compensación entre los valores originales y los valores después de desconectar la alimentación USB de arduino. ¿Alguien puede comentar con una solución a esto? Revisé varias veces y la conexión a tierra es común en todo el circuito.

Un esquema ayudaría... De lo contrario, la respuesta es, ¿qué es diferente cuando se cambia la energía?... lo cual tampoco es una respuesta...
@Trevor He agregado el esquema como referencia. Tenga en cuenta que el esquema no ayudará mucho ya que el problema está relacionado con cambiar el suministro de USB a la fuente de alimentación de conmutación de doble voltaje externa.
Sí, no lo hace... ¿cómo obtiene Arduino su energía cuando desaparecen los 120 V?
Presumiblemente, fuera del bus USB @Trevor
@Trevor Se apaga. Pero mientras está conectado al puerto USB de la computadora, funciona sin problemas aunque la fuente de alimentación esté encendida. Tan pronto como se desconecta el suministro USB de la computadora y el arduino comienza a recibir energía de la fuente de alimentación, los valores analógicos cambian. Revisé el voltaje del divisor de voltaje antes y después de desconectar el USB, los valores son exactamente iguales. algo cambia en la referencia de ADC o algo así, no estoy seguro de lo que sucede.
Sugeriría que haya una diferencia de nivel de suministro de 5 V entre su suministro de CA y su suministro de CC de respaldo. Dado que el A/D usa los 5 V como referencia, vería un cambio.
¿Qué fuente se utiliza para Vref? Verifique y mida Aref out y todos los voltajes Gnd en ambos modos. V REF se puede seleccionar como AV CC, referencia interna de 1,1 V o pin AREF externo. AV CC está conectado al ADC a través de un interruptor pasivo. La referencia interna de 1,1 V se genera a partir de la referencia de banda prohibida interna (V BG ) a través de un amplificador interno. En cualquier caso, el pin AREF externo está conectado directamente al ADC.
@TonyStewart.EEsince'75 No he dado ningún voltaje de referencia. Pensé que el arduino seleccionaría automáticamente 5 voltios como referencia. y así es como se supone que debe ser, ¿no?
@JackCreasey ¿Cómo puede haber una diferencia de nivel entre el suministro de CA y el suministro USB de la computadora?
Si se usó 5V como Vref y eso cambia un 10%, ¿se correlaciona con sus resultados?
@TonyStewart.EEsince'75 Sí. Tan pronto como cambio de la alimentación USB a la fuente de alimentación, obtengo un aumento del 10 % en mis resultados analógicos.
eso solo se puede corregir cambiando el Vref a un valor constante estable
@TonyStewart.EEsince'75 Verifiqué mi voltaje de referencia predeterminado y era de 4 voltios en lugar de 5 voltios cuando operaba con la fuente de alimentación externa. Si el arduino está alimentado por USB, la referencia es de 5 voltios.
Estoy perdido por su falta de claridad en cuestión. ¿Cuáles son sus errores reales de ADC vs Vref vs Vdc y qué no entiende? Analice los resultados de error en una hoja de cálculo. También sea más explícito acerca de Gnd vs Earth Ground y Floating Ground. Su esquema lo dice todo. No tiene idea de "tierra de estrella" y tierra o EMC y esto conduce a consecuencias de errores de medición.
@TonyStewart.EEsince'75 Creo que lo estás complicando mucho más de lo que parece. El esquema es un dibujo aproximado/rápido de algo que estoy probando aquí. No tiene nada que ver con mi falta de comprensión de los esquemas de dibujo. Mi pregunta era y sigue siendo muy simple, ¿por qué cuando desconecto mi alimentación USB de arduino y la pongo en una fuente de alimentación conmutada externa de 5 voltios, el voltaje de referencia analógico interno cambia de 5 voltios a 4 voltios?
¿No puede realizar algunas pruebas para rastrear el origen de la causa raíz? La sensibilidad a los cambios te lo dirá. Pero primero conecte Earth gnd a 0V.
@TonyStewart.EEsince'75 Intenté probar todo. Habilité un voltaje de referencia externo de 5 voltios en lugar de 5 voltios internos, y todavía tenía el mismo problema, el problema empeoró en ese caso. la lectura analógica tuvo una compensación del 50%. es solo que cuando la alimentación cambia de USB de 4,9 voltios a fuente de alimentación de 5 voltios, el análogo comienza a comportarse mal. todos los IO digitales funcionan bien. Haré la conexión a tierra a 0 V y discutiré mis resultados con usted.
Pon tu respuesta en tu pregunta con una tabla de pruebas y valores.

Respuestas (1)

Lea la hoja de datos de Atmel para el '328

La Sección 28.2 cubre el A/D Las entradas se ven así:

ingrese la descripción de la imagen aquí

De forma predeterminada, en Arduino Uno, el voltaje de referencia se toma de AVCC, que es el VCC de 5 V utilizado por la MCU.

El esquema de Arduino está aquí .

Puede programar la unidad para que no use AVCC/1.1ref y alimentar una referencia más estable... o fijar su voltaje de suministro.

También puede cambiar a la referencia de 1,1 V y cambiar su divisor de entrada.

Gracias por su respuesta. Entiendo que puedo cambiar la referencia a 1.1 V internos, pero todavía estoy tratando de entender que si la configuración predeterminada es de 5 V proporcionada por la entrada de arduino, ¿por qué los valores analógicos cambiarían tanto al cambiar la fuente de alimentación de USB? a la fuente de alimentación. Tanto el USB como la fuente de alimentación suministran 5 VCC constantes.
No tenemos idea de cuánto es "Tanto" y cuánto ruido se está rectificando en el sistema ni el cambio de tierra con más de 3 terrenos externos. (usb, batería, fuente de alimentación)
@AmmarSurti. No ha proporcionado mucha información... ¿cuánto cambia su lectura A/D? ¿Estás midiendo el voltaje con un medidor digital?
@TonyStewart.EEsince'75 Realicé algunas pruebas esta mañana: verifiqué el voltaje AREF cuando el puerto USB estaba proporcionando energía al arduino, y era de 4.9 voltios. Cambié el voltaje de referencia a externo en el programa y proporcioné exactamente 5 voltios de la fuente de alimentación conmutada. Los valores analógicos aumentaron hasta 2 veces el valor original. Entonces, si obtenía un valor de 5, aumentaba a 15.
@JackCreasey Sí, estoy comprobando el voltaje con un multímetro digital.
@TonyStewart.EEsince'75 Otra cosa divertida, cuando el arduino se ejecuta en la fuente de alimentación externa y conecto el usb de mi computadora para reprogramar el arduino, los valores vuelven a la normalidad y automáticamente soluciona el problema.
Eso me dice que tiene un problema de EMI con su entrada de señal y un CMRR deficiente. Obtenga par trenzado, blindado y agregue una gran manga de ferrita. El ruido se rectifica a CC debido a la no linealidad de entrada.
@TonyStewart.EEsince'75 No hay problema con la señal de entrada analógica. En condiciones de prueba, la entrada de señal es de 3,9 voltios, permanece allí independientemente de la fuente de alimentación con la que opere el arduino.
Le sugiero que intente alimentar la unidad desde un banco de energía USB. Luego tiene sistemas de energía comparativos... la PC/USB y el banco de energía. Si las lecturas están bien para ambos, definitivamente tiene un problema con su fuente de alimentación de CA/CC.