Java 2 Ada


Version 1 by Stephane Carrez
Project Laboratory Power Supply
Date 2006 - today
Goals Create a multi-output variable power supply for my electronics lab


I started LPS during the 2006 summer althought I had this idea for a long time. Every electronics lab should have some power supply that you can adjust and tune according to your lab's use. I needed one. It's also one of the thing most eletronics hobbist like to do. LPS will probably have the following specifications:

0..20V/4A:Two positive variable power supplies with a full voltage scale digitally controlled. The output current is measured and is also limitted. Both voltage and current are controlled with a PWM and integrator system. The total output power of both supplies will not exceed 80VA.
0..-20V/4A:Two negative variable power supplies. This is similar to the positive power supplies but the schematics are different on the control and measurement aspects.

LPS will also feature:

  • Measure of output current and voltage
  • Recording of these measures over time
  • An isolated serial connection for a remote control and monitoring
  • Integrated PC switching supply


In its heart, LPS has 3 Atmel ATmega16 microcontrollers that communicate with an I2C bus.

The power supply is provided by two toric transformers that deliver 80VA on 2x9V. One transformer is dedicated to the positive supply while the second one to the negative supply. A rectifier board is associated with each transformer and it delivers two outputs one arround 13 volts and a second arround 26 volts. Both outputs are decoupled by 22000uF capacitors. The rectifier board also contains a set of relays and current sense resistors to measure and limit the current. The board directly delivers the power to the power supply transistors which are mounted on a huge heater. To control the power supply a specific board uses an Atmel ATmega16 microcontroller to control two different power supplies. A first power supply controller is dedicated to the positive voltage, thus controlling the +0..20V outputs. A second one is dedicated to the negative supplies and controls the 0..-20V outputs. Because the ATmega16 does not have enough IO to connect the LCD, the serial line, control the power supply the output current, it was necessary to have a master board. The master board also contains an Atmel ATmega16 which communicates with the two power supply boards with the I2C serial bus. The LPS master directly connects to the 2x16 LCD controller.

Why so many microcontrollers? The Atmel ATmega16 is very very cheap. Instead of adding some control logic to have a single microcontroller drive the 4 power supplies, it was easier and appeared to be less expensive. It was also an interesting challenge to create such a distributed application.


Hardware Physical Dimensions: The LPS hardware is put in a 300mm x 220mm x 120mm steal case.
Hardware Description: This page gives several details about the hardware and the design of the boards.
Hardware Connectors: This page gives the layout of the hardware connectors for every board.
LPS Remote Commands: The power supply can be remotely controlled with the serial port. This page describes the commands that can be sent.
Changes and History: History, changes and evolution of LPS over time.
LPS Display: LPS User Interface.
Issues: Issues related to the design and making of LPS.

Project Planning

The LPS project is now managed using the free Online Project Management Service Planzone.

Board Documentation

Positive and Negative Power Supply Rectifiers:
Positive and Negative Power Supply Regulators:
Positive and Negative Power Supply Controllers:
LPS Master Controller:
LPS LCD Panel:
LPS Power Supply:

Similar Projects

A digital DC powersupply by Guido Socher: An excellent and simple power supply controlled by an Atmega8.