Convertir PWM a voltaje analógico

0

Necesito convertir una señal PWM con un ciclo de trabajo variable del arduino a un voltaje analógico de 0-5V. Utilicé un filtro RC con un periodo de tiempo de 3.9ms. La salida PWM tiene un periodo de 2ms. Experimenté un efecto de carga en la salida y, por lo tanto, utilicé un amplificador operacional como búfer. Sin embargo, todavía estoy experimentando el mismo problema. Mi salida va desde 1.2-5V. Necesito que la salida varíe en todo el rango de 0-5V. ¿Alguien puede sugerir una solución para esto?

simular este circuito : esquema creado usando CircuitLab

El amplificador operacional es LM358N.

    
pregunta Devansh Mittal

3 respuestas

4
  

Utilicé un filtro RC con un período de tiempo de 3.9 ms. La salida PWM tiene un   Período de 2ms.

Le sugeriría un período de tiempo más largo para su filtro. También le sugiero que simule esto para ver cómo se ve la salida y observe que algunos artefactos de la señal PWM todavía están presentes en el nivel de CC: -

Lo anterior usa sus números y sí, agregar una carga alterará las características del filtro y dará diferentes resultados (más voltaje de ondulación). Si tiene suministros bipolares decentes, debería poder usar un amplificador operacional, pero recuerde que un amplificador operacional solo puede suministrar cargas de hasta 20 mA. Si está buscando un sistema de suministro de corriente más potente, necesita un amplificador de potencia o la adición de un transistor.

    
respondido por el Andy aka
3

¿Qué tensión de alimentación está utilizando? Si se trata de una fuente de alimentación de 5 V, no espere que el LM358 pueda generar de 0 a 5 V en su salida. Especialmente cuando se carga la salida, no podrá llevar la salida a los rieles de suministro.

O bien, dé al LM358 más "espacio para la cabeza", así que dele un suministro de -2 V (o menos) y +8 V (o más). Por ejemplo, use un suministro de -10 V / + 10 V.

Pero una solución mucho más fácil es utilizar un opamp con entrada y salida riel a riel , por ejemplo, MCP6001 . Además, con este opamp no puede cargar demasiado la salida si desea que pueda alcanzar los voltajes del riel de alimentación.

    
respondido por el Bimpelrekkie
0

Siempre puedes hacer un amplificador de voltaje capacitivo y luego introducirlo en el modo de seguidor de Mosfet. Tenga en cuenta que los impulsores de voltaje capacitivos no son eficientes, siempre son menos eficientes que el 50%.

Se vería algo así como this :

Hehechoflechasquemuestranquénodosrepresentanlosgráficos.

Elprimergráfico,eldelaizquierda,eselciclodetrabajodesuPWM.
ElsegundográficoeselPWMquerealmenteveelcircuito.
EltercergráficoeslasalidafiltradadesuPWM.
Elcuartográficoeslasalidadeestecircuito,quecoincideconlatensiónsobreelprimerfiltroLPyelciclodetrabajodelPWM.Sienrealidadestástratandodeconducirunmotorpequeñooalgomás,entoncesdeberíasquitarel1kΩdelasalida.

Eldientedesierrade1kHzylos3VqueentranenelamplificadoroperacionalparagenerarelPWMnosonunaparterealdelcircuito,esunmodeloparaelPWMquesaledesuMCU.

LasalidadelprimerLPingresaaunP-MOSqueestáenunaconfiguracióndeseguidor.ElvoltajeensufuenteseráelumbraldevoltajedelMOSFET,porloqueparaeliminarestedesplazamientoagregounN-MOScomoetapafinal,tambiénenlaconfiguracióndelseguidor.

Sielnodoquedice7.67Vhubierasido5Vensulugar,entonceslasalidasolohabríapodidooscilarentre0Vy5VmenoselumbraldelN-MOS.Enesteejemplo,elvoltajedeumbralesde1.5V,porlotanto,mientrasloalimentemoscon6.5V,lasalidapuedeoscilarentre0Vy5V.

El" Some oscillator " podría ser un pin en la MCU o algún otro circuito oscilante.

También agregué otro filtro LP para un filtro adicional.

Sin embargo, también puede ignorar los MOSFET en la configuración del seguidor y simplemente conectar el suministro de 7.67 V a su LM358 y terminar con él. Primero quería compartir la solución MOSFET para demostrar que no tienes que lanzar amplificadores operacionales a todo para resolver todos los problemas.

    
respondido por el Harry Svensson

Lea otras preguntas en las etiquetas