Sometimes in the lab there is need to monitor the power parameters during some period of time and put it on a nice graph.
Because I couldn't find something like this and because it is fun to make things, I start to wonder what if I put an Arduino on a power supply!
So, the lab supply must have:
-Variable voltage between 1- 14.4V
-Current monitor-Start/Stop
-Overcurrent protection
-Serial output with time markers
Because I am lazy, I used some ready-made modules.
The main power supply is a modified 12V/5A SMPS; with a little tweak it now deliver 17V/4A.
The modification was made in the feedback circuit where the TL494 reference is compared with the output voltage.The variable output voltage is made with a DC/DC Step down module able to handle constant voltage from 1.25 to Vsmps - 2V at around 5 A.
The output voltage and current are measured with the Arduino ADCs and I used two 2.5 LM4050 precision shunt reference in series to have Aref at 5V.
The DC/DC Step down is controlled with a PCF optocoupler driven by a digital potentiometer MCP41010 on SPI.
The output relay is used for fast protection as a "crowbar" circuit and, in the future, will connect the output to a controlled discharge circuit to characterise batteries.
By code, this power supply can be used to deliver regulated voltage and monitor the current or to charge various batteries.
The schematic:
The code is on Github.