Hi Folks,
I'm new around here, so a small background first: I've been making power supplies for as long as I can remember, from high voltage psu's using rectifier tubes to high current/low voltage switching ones.
But I have never used digital control, and that's the reason of this topic. I have read articles here and there, they are very helpful as general guidelines. Here are some of them:
http://tuxgraphics.org/electronics/201005/bench-power-supply-v3.shtml
http://linuxfocus.org/English/June2005/article379.shtml#379lfindex4
https://forum.arduino.cc/index.php?topic=294313.0
Well, as you can see by the title, I want a linear power supply, so it will have the classical configuration of power transformer - rectifier - filter - regulator, and yes, it will produce a lot of heat on the regulator section.
To drive the transistors on the regulator section, I'm thinking of using an opamp with the necessary dc gain to multiply my control signal (0 to 3.3 or 5V) to the full range of voltage output, which will be around 24V. The chosen one so far is CA3140, for it may be powered up to 36V.
Voltage monitoring will use a simple voltage divider. I haven't made up my mind yet if I will let the adjustments to the software or simply add a trimpot to the divider. Pros and Cons?
As far as current monitoring goes, my idea is to use a hall sensor rather than a shunt. I've always used shunts, so I would like to try a different approach and save an opamp. ACS712 is an option, but I don't really know any of them. Max current should be around 3 amps.
I still don't know how I am going to set/control voltage and current .. first idea is to use potentiometers on analog inputs. But I could also go for some keyboard and/or rotary encoder.
I think of implementing most protections via software, therefore I will need very fast response mainly on current monitoring.
So the basics is that I would use a DAC for control and two ADC's for monitoring.
I happen to have some ESP32's around, they have both ADC and DAC, so it will probably be my choice.
I would like to hear your thoughts about this ideas, and see if I am missing or mistaking something.
Regards,
Paulo