esquema y algoritmo para voltímetro de rango automático

1

Estoy creando un voltímetro digital en ATmega16 con rango automático a propósito. Solo tengo un problema con el diseño de autorange. ¿Alguien tiene un esquema de un divisor de voltaje y un algoritmo de cómo debería funcionar el rango automático?

Escuché sobre la escalera de resistencia seleccionable FET pero actualmente no sé cómo usarla en mi proyecto. Me refiero al esquema y cómo controlarlo desde el microcontrolador.

El voltímetro debería ser muy simple: es un proyecto para mis estudios, por lo tanto, no quiero usar ningún potenciómetro digital o circuitos sofisticados. Los rangos pueden ser de 2 niveles, por ejemplo.

    
pregunta M_K

4 respuestas

1

Una escalera de resistencia con interruptores FET se utiliza normalmente para implementar un convertidor de analógico a digital. Por ejemplo, esto es de patente US3755807 :

Sinembargo,elATmega16yatieneunADC,porloquenoesnecesariousarunaescaleraderesistenciadeestetipo.

LaformamásfácildemanejardosrangosesusardosdivisoresdevoltajeyusardosentradasADCdiferentesensumicrocontroladorparaellos(porloquelaconmutaciónserealizamediantesoftware):

Si desea ahorrar el último bit de energía y aumentar un poco la impedancia de entrada, coloque los interruptores FET entre las resistencias inferiores y la masa para evitar que la corriente fluya a través de los divisores no utilizados. (O simplemente use los pines GPIO que puede cambiar entre tierra (salida cero) y alta impedancia (entrada).)

    
respondido por el CL.
2

Aquí hay una manera simple:

simular este circuito : esquema creado usando CircuitLab

  • Cuando conduzca D1, D2 y D3 al estado Z, no habrá divisor de voltaje y podrá medir V_IN voltaje en el rango de 0 a AREF

  • Cuando maneja D3 bajo, obtendrá un divisor de voltaje 1: 1 y podrá medir el V_IN de voltaje en el rango de 0 a 2*AREF

  • De manera similar, si se manejan D2 y D1 en un nivel bajo, obtendrás 3: 1 y 7: 1 y rangos de medición de 4*AREF y 8*AREF respectivamente.

Algorítmicamente, debe mantener el D1 bajo cuando se conecta la sonda a V_IN , y disminuir progresivamente la relación de división hasta que el valor medido aumente por encima del 50% de su rango de ADC.

Enchufe desvergonzado: tengo un pequeño proyecto mío que pretende ser simple y educativo, y creo que lo implementaré esta función de rango automático la próxima vez que la toque.

    
respondido por el Dmitry Grigoryev
1

Ganancia digital programable utilizando un CD4066: -

Los"interruptores" del CD4066 son básicamente mosfets que actúan como "encendido" o "apagado".

Ganancia digital programable mediante MOSFET: -

Unmosfetcomosemuestraarribasepuedesuponersimplementecomocircuitoabiertoocortocircuito(comounrelédecontactoointerruptor).Conelcircuitoabiertodetresmosfets,lagananciaes-(R2+R3)/R1.Conunmosfetseleccionado(aplicandounniveldevoltajedecompuertaadecuado),laretroalimentaciónsereduceylagananciaaumenta.PuedeelegirvaloresparaRa1,Ra2yRa3paragenerargananciasquecambianasí:-

Informacióntomadade aquí (El amplificador programable digitalmente recibe la ganancia del sensor , Necesidades de rango).

    
respondido por el Andy aka
0

Cree un divisor de voltaje normal que se conecte entre los terminales + y - de las entradas de su medidor.

La MCU mide la salida del divisor con un convertidor A / D.

Normalmente, un divisor de voltaje simple consiste en un resistor divisor superior e inferior. Para hacer un divisor de rango múltiple, en lugar de usar una resistencia individual en el lado inferior, use varias resistencias en paralelo. Coloque un interruptor MOSFET entre cada resistencia de lado bajo y masa. Al seleccionar diferentes combinaciones de MOSFET, puede seleccionar la relación de división.

El IO / pin en la mayoría de las MCU contiene un diodo ESD. El diodo ESD protegerá el pin IO de sobretensión siempre que la corriente sea limitada. Por lo general, es permisible realizar una pequeña cantidad de corriente continua en el diodo (la cantidad se especificará en la hoja de datos). Siempre que su resistencia divisoria superior sea lo suficientemente grande como para limitar la corriente, la MCU no se dañará.

    
respondido por el user4574

Lea otras preguntas en las etiquetas