Conversión de nivel de voltaje analógico (cambio de nivel)

10

Tengo un joystick que emite voltaje analógico en algún lugar entre 1.5V y 3.5V.

Quiero transformar este rango de voltaje para controlar un controlador de motor que toma voltaje analógico entre 0V y 5V.

¿Cómo nivelo el cambio y amplifico correctamente?

jfenwick
fuente
¿No hay un microcontrolador intermediario? Si es así, solo use un ADC.
sptrks
2
Creo que es posible que desee explicar qué es exactamente lo que quiere hacer aquí. ¿Está tratando de escalar un voltaje analógico de 1.5V-3.5V a 0V-5V? ¿Estás tratando de convertir un voltaje analógico a alguna salida digital?
bjthom
Un convertidor de impulso podría ayudarlo a pasar de 3.5 V a 5 V, pero no a pasar de 1.5 V a 0 V. Su ganancia siempre es mayor o igual a 1.
Telaclavo
1
@Telaclavo un impulso no es útil aquí, ya que se usa para alimentar, pero suponemos que tiene un suministro mayor que 3.5 V.
clabacchio
1
Sabemos que esos son voltajes analógicos. ¿Cuál es su suministro?
clabacchio

Respuestas:

12

Desea una ganancia simple de 5/2 = 2.5 centrada alrededor de 2.5 V. Esto es fácil suponiendo que tenga una potencia de 5 V disponible, como por ejemplo desde el controlador del motor:

Esto debe ser un opamp de salida de riel a riel que pueda funcionar con una potencia de 5 V, como el MCP6041 y muchos otros. R1 y R2 forman un divisor de voltaje para formar los 2.5 V alrededor de los cuales se amplificará la señal de entrada. C2 atenúa el ruido de la fuente de 5V incluso más que la CC para lograr un nivel de CC silencioso y suave. El opamp está en una configuración clásica de ganancia positiva, con R4 y R3 configurando la ganancia. La impedancia de la fuente de 2.5 V producida por R1 y R2 efectivamente se suma a R3 con fines de ganancia, pero esa es una pequeña contribución de 1.2 kΩ en 100 kΩ. La ganancia será ligeramente inferior a 2.5.

Olin Lathrop
fuente
1
+1. Más precisamente, salida de riel a riel (aquí no se necesita entrada de riel a riel)
Jason S
@ Jason - Corregido.
Olin Lathrop
¿Cómo elegiste los valores para R1 y R2?
abdullah kahraman
1
@abdullah: Dado que el suministro es de 5 V y el punto es hacer 2.5 V, una restricción fue R1 = R2. La otra opción era cuál debería ser la impedancia de la fuente de 2.5 V, que es R1 // R2. Más bajo es mejor, pero más bajo también significa más corriente. Sentí que 100 kOhm era casi tan alto como quería ir con R3 para mantener baja la captación de ruido parásito. 1.2 kOhms parecían una impedancia lo suficientemente baja en relación con eso, y toma aproximadamente 1 mA del suministro de 5V, lo que sonó razonable.
Olin Lathrop
1
@jfenwick: No puedo decir qué crees que significan esas ecuaciones sin tus términos que definen correctamente, como "Ad". Además, parece que puede haber pasado por alto el hecho de que hay retroalimentación negativa en este circuito, que establece la ganancia. La ganancia de circuito abierto del opamp es tan grande que no importa la ganancia del circuito de circuito cerrado. No veo que 5V y GND se unan en ningún lado. Tendrás que ser más específico con menos movimientos de manos.
Olin Lathrop
6

Esto es posible con solo un amplificador operacional. Lo que estás tratando de hacer es cambiar de nivel y amplificar . Solíamos hacer esto todo el tiempo. Son útiles en robots en los que tiene un sensor con un pequeño rango de salida de voltaje analógico, y desea expandir la oscilación de voltaje para que pueda obtener la máxima resolución de su ADC.

Por lo general, los fabricamos con compensación y ganancia variables, para poder ajustarlos para cada sensor en el robot.

Amplificador operacional cambio de nivel variable y amplificación

Una vez que haya configurado correctamente, siempre puede medir las resistencias de los potes y utilizar resistencias de valor fijo.

O puede calcular los valores directamente:

Amplificador operacional cambio de nivel y amplificación

Hay una calculadora en línea para ayudarlo a calcular los valores de resistencia.

Rocketmagnet
fuente
Correcto, pero necesita proporcionar sus voltajes de suministro
clabacchio
@clabacchio: cierto. Pero creo que podemos suponer que hay 5v disponibles.
Rocketmagnet
44
Tenga en cuenta que esto se invierte. Eso podría ser un problema en la interfaz de usuario si el joystick debe moverse en sentido opuesto a la dirección intuitiva para aumentar la velocidad del motor.
Olin Lathrop
Gracias por señalar que esto se llama cambio de nivel.
jfenwick
4

Contrariamente a lo que dice Cybergibbons, es una electrónica analógica bastante simple. Pero debe especificar qué suministro tiene la intención de utilizar para su circuito.

Necesita un circuito que reduzca su señal de modo común (1.5 V) a 0 y aplique una ganancia de 5/2 = 2.5 al resto. Puede hacerlo fácilmente con un cambiador de nivel basado en Op-Amp con algo de ganancia.

Una solución es usar un sustractor analógico con un voltaje de referencia colocado a 1.5 V, una solución aún más simple es solo un amplificador no inversor con la referencia en el lugar correcto.

Este circuito hará el trabajo:

ingrese la descripción de la imagen aquí

El Opamp es solo el predeterminado en el simulador, puede que necesite otro, dependiendo del suministro.

R1+R2R2

clabacchio
fuente
Es simple si solo está dibujando un esquema: la complicación viene con el requisito de que la señal debe ir de 0-5V y es una entrada a un controlador de motor. 0.05V no lo va a cortar, por lo que necesita un suministro opamp dividido. Eso significa que debe proporcionar un suministro dividido, lo que supone un gran esfuerzo adicional.
Cybergibbons
@Cybergibbons no tanto, dependiendo de lo que tenga; y, utilizando amplificadores operacionales de riel a riel, también podría hacer el trabajo sin él.
clabacchio
Posiblemente. Me han enseñado que confiar en el rendimiento de riel a riel es un no no para el control por varias razones. En primer lugar, riel a riel nunca es realmente riel a riel: los opamps de mejor rendimiento alcanzan alrededor de 10 mV, lo que puede causar problemas. Segundo, no son tan lineales en esa región. Tercero, si carga la salida, el rendimiento de riel a riel empeora mucho (un control del motor puede cargar la salida, no lo sabemos). Por supuesto, si el controlador del motor tiene una banda muerta, no importa.
Cybergibbons
@Cybergibbons también, sobre la degradación del rendimiento, puede que tenga razón (no lo sé), pero Analog Devices tiene amplificadores operacionales de riel a riel que van a aproximadamente 2-5 mV (máx.) De los rieles. Pero este problema no existe si tiene un suministro de 12 V, por lo que depende de cómo quiera suministrarlo. Acerca de la capacidad de conducción, puede usar otro amplificador operacional para amortiguar la señal, siempre que tenga el suministro adecuado.
clabacchio
@Cybergibbons: ¿es más probable que un pin de salida PWM del procesador llegue a 10 mV de tierra, incluso con un ciclo de trabajo del 0%?
MikeJ-UK