Buck Converter Feedback Sugestion
Oznog,
I agree with all that you have written.
Also i'm glad you talked about the changing ESR values of the capacitor under that kind of solicitation.
Mostly i use capacitors to filter power supllies and in timing circuits.
i had seen capacitors "behaving" inproperly but never got to know what was happening.
SMPS and Audio have never been my thing, for now.
I´ve seen the aproaches to Buck Converter around the web, but most of them are designed
for a very specific aplication:
Some light a led, some charge a battery pack, and others...
I don't recall this for beeing small. Its just that they are steady charges.
After seeing your reply i couldn't help to show you my intention.
So i seat down and layed out some ideias.
**broken link removed**
So for a description of the circuit and clarity, i'll assume a panel with Vopen of 40V, a swing center of 30V, and a lower swing point of 20v each cycle.
Also all component values or references are discusable, off course.
I just intend to shown a working principle of what i have in mind.
So please take it gently.
The MOSFET will be discharging the input capacitor on the ON time and letting it charge on the OFF times, like any other Buck Converter.
In the input there are two distinct filters, more like "hold capacitors":
- One charges at the highest voltage which cycle of the input capacitor swing and is slowly discharged by a resister to track lower next cycles at lower voltages.
It is used to know if the solar panel is charging at the full 40v each cycle.
Failing to do so, we need to extend the MOSFET´s OFF time, so it can be fully charged.
- The other capacitor will discharge to the lower voltage of the falling swing, beeing slowly
charged by a resistor to track higher voltages in next cycles.
It is used to know if the solar panel is discharging all the way to 20v each cycle.
Failing to do so, we need to extend the MOSFET´s ON time, so it can be adequatly discharged.
These values are roughly divided by 5 by a voltage divider. The AmpOp's are voltage followers just to avoid the resister loading or ADC input driving.
The voltage divider across their outputs will provide a Swing Center value. Should be the 30v, but divided by 5 will be 6v.
The voltage divider formed by R7 and R8, Center Adjust, will provide the reference for the AmpOp, to generate a Center Error.
I used a transcondutance AmpOp, to generate this single voltage but any diferencial ADC will read these values directly.
The other AmpOp will show the value of the total Output Swing.
This is necessary because swinging either from 40-to-20 or 35-to-25 will show the same swing center and of course no error.
Instead if i used two Single ADCs to read directy the High Swing and Low Swing i would have the higher
value (of 40v), the lower value (of 20v) and from there know right away if i´m correctly certered, under or above.
Some may find that hardware will take the math overhead, and reading directly the drift error and the Swing Error may be
correct data for PID routines input.
some will say that taking out the second set of AmpOp will make the circuit less prone to error and
drift and one more step to be avoited, since they´re not saving much code overhead.
An ADC at the output, preferebly with diferencial amplification, would make it widen or shorten the OFF time for respectivly high voltage or low voltage.
Inductor would be choosen for the pretended higher frequency, at the highest ON time
allowed for the highest current output ( my case 20Amp) at the lowest output voltage possible ( my case 8v, empty batteries).
Also a soft start feature.
Frequency would be software limited.
Any 5MIPS PIC could use TMR0 to fire about 300 or 200K times a secondto cycle and adjust the timer for ON and OFF times.
Best Wishes,
Hugo Ferreira