Tengo un motor de asiento de automóvil que conduzco a través de PWM y apunto a medir su posición contando las pequeñas variaciones en el voltaje a través de una resistencia de detección de corriente unida al lado bajo de un FET cuando el motor gira. En derechos más altos, el Vpp es significativamente menor (30 mV) que aquellos con un 25% de servicio (4.7V). Actualmente tomo la señal para medir por medio de un microcontrolador ADC en dos etapas de ganancia diferentes para manejar esto, pero deseo que todo esto suceda en una etapa con un circuito de ganancia variable, por lo que solo se necesita 1 ADC.
Antes de entrar en lo que he intentado, quiero formular mi pregunta principal. ¿Cómo ajusto dinámicamente la ganancia de mi forma de onda para emitir una señal a una Vpp constante cuando mi Vpp de entrada varía de 30mV a 4.7V?
Uso un amplificador operacional TI LMV344 con rieles en 0V y 5V. Los motores son de 12V.
Actualmente el flujo del circuito es:
- Salida de resistencia de detección
- Abrazadera de voltaje de diodo para eliminar la polarización de CC
- Amplificador operacional LPF de alta ganancia y sin inversión. Filtra la señal PWM de 20 kHz
- Pinza de diodo para reducir el sesgo. Ahora sé que puedo poner un condensador entre la resistencia y una conexión a tierra en la parte de ganancia del LPF anterior
- Sallen-Key LPF para reducir aún más la señal PWM de 20 kHz. Baja ganancia. Aquí es donde hago tapping para señales de bajo nivel, ya que cualquier ganancia más causa que el menor de los deberes haga que la señal actual sature el amplificador operacional.
- Abrazadera de diodo para reducir el sesgo de CC.
- Otro LPF de Sallen-Key idéntico al filtro anterior, sin toque. Tenía muchas ganas de filtrar ese ruido.
- Amplificador operacional LPF de alta ganancia y no inversión. Las señales de servicio superior se capturan aquí.
El problema con el que me he topado es que en el servicio más alto, la salida de Vpp es lo suficientemente baja como para que a veces sea difícil distinguir los pulsos. En el cruce, alrededor del 60%, el Vpp en el lado de servicio alto se está saturando y el Vpp en el lado de servicio bajo es demasiado pequeño.
Mi intento actual de resolver este problema es utilizar la señal PWM utilizada para impulsar el motor como un medio para ajustar la ganancia en un amplificador de ganancia solo por separado. La ganancia se establece para colocar la señal de servicio alto en la Vpp deseada. A medida que aumenta el trabajo y la copia invertida del trabajo se filtra en una señal analógica (representada por V3) y se alimenta a través de un seguidor de voltaje conectado al pin de inversión en el amplificador con la etapa de ganancia. Pero cuando hago esto, el DC emitido en el paso 5 hace que la señal se sature en el riel superior del amplificador operacional cuando se usan tareas bajas. Si coloco una pinza de diodo entre la señal del paso 5 y el amplificador de solo ganancia, puedo controlar la ganancia como esperaba. Cuando coloco un condensador entre la resistencia de ganancia conectada a tierra y a tierra para reducir la ganancia de CC a la unidad y eliminar la necesidad de la pinza de diodo, la ganancia ya no se controla y la ganancia de CC no es la unidad. La abrazadera de diodo debe reemplazarse ya que los distintos valores de Vpp necesitan diferentes desplazamientos para que no se saturen.
Aquí está el último párrafo como un esquema. Los amplificadores operacionales son amplificadores operacionales LMV344, no LMV324 como sugiere la ilustración. La señal de entrada tiene una Vpp de 30 mV a 4,7 V dependiendo del servicio del motor.
Y aquí hay dos ejemplos de la señal de entrada. La primera es la forma de onda del consumo de corriente al 100% de servicio y la segunda es el dibujo de corriente al 25% de trabajo.
¿Cómo puedo obtener un circuito de ganancia variable, amplificar señales con Vpp entre 30mV y 4.7V a aproximadamente 4.7V, mientras evito la saturación debido a los niveles de entrada de CC? Gracias de antemano. Esto me ha consumido durante el último mes.