The project I am attempting is:
- Arduino UNO receiving a data record from a battery data logger
- one particular value (State of Charge) is extracted
- and sent to a PWM output
- going through a low pass RC filter
- into an OpAmp (LM324) to provide a clean DC output
- the output voltage should range from 0-100mV
The PVM frequency is ~480Hz (Arduino Uno); the 2 RC filter are 330R/10uF
I need help with the circuit design past the second RC filter.
This is what I started out with:
Which morphed into this (and seems flawed/suspicious to me):
But, I do not reach the 100mV at 100%, and the output is a bit spiky; assuming there needs to be another RC filter of sort.
The circuit does not need to be responsive, because the duty cycle, thus the mV out increments slowly in 0.5mV steps over hours, and decrements over hours.
[Addition 2016-07-10 0905Z]
Thank you for your responses.
It looks like I am a bit in over my head... not really understanding OpAmps... I have now taken a slightly different approach, and added a voltage divider on the input signal of %v to drop to .1V and since reaction time does not matter, put a 100uF cap in... then the 2 RC filters into the OpAmp; sorry for the for the Vcc for the OpAmp; now corrected to 5V.
The simulated output is 33-98mV. But I am not sure, how to configure the OpAmp to get a Voltage (as precise as possible) mathing the 0-256 step, 8bit, 0-100% duty cycle of the input.
Here the latest design: RC Filter with LM324 http://www.max.grenkowitz.net/tmp/SharedImages/RC_Filter_LM324_V2.jpg