I've spent a huge amount of time making a PSU which satisfies my requirements:
- voltage set and read resolution: ~1mV
- current set and read resolution: ~1mA
- set parameters controlled with ease by DAC.
- easy readout by ADC
- max current: ~ 2-3A
- max voltage: ~ 20-24V
- possible to track outputs.
- relatively cheap solution. (Linear Technology has an uber-sample program which allows you to send samples even if you have a commercial e-mail. (I've received samples while using Gmail).
I've focused the most onabsolute accuracy; other requirements were less important.
After gazillion of hours spending in LTspice I've managed to bring this monster alive:
The thing that drived me nuts the most was stabilizing feedback network. I don't know if it is property of high-side current measuring using LTspices macro-model, but every solution which utilized it, falls. So I've tried with low-side current sense. After some tweaking I released that this path doesn't make thing hairier - no addition OP amp I've used.
Program says about 0.2mV accuracy which is fairly optimistic prediction. I haven't done prototype already, but with my poor PCB routing skills; susceptibility to ground loops I don't except accuracy higher than 10mV.
There is link to file. If you wanna changed it or whatever, you are free to go:
my dropbox