PC Controlled DC Power Supply with GUI (ECE342-W24; EJ16)

C++
Python
3D Printing
PCB
Documentation
Hardware
Junior Design

PC controlled DC power supply that can be user-adjusted via physical buttons and a Graphical User Interface varying from 2-14 volts and 0-1.5 amps max output. The main PCB handles regulation and sensing for two channels, and rides on top of the Nucleo64 breakout board, in addition to the main power distribution for the system. A second custom PCB was made for the buttons to increment, decrement, and switch between selection for voltage or current. The system is inside an IP43 safe enclosure that is 3D-printed. The key components behind this system are a STM32 microcontroller driving a AD5290 digital potentiometer, which adjusts the voltage at the output of a LM2596 switching regulator, in addition to providing current limiting functionality. The Nucleo64 is responsible for the SCPI communication, managing the LCD screen, and reading data from the voltage and current sensors (INA260). Some notable future improvements include the full integration of a microcontroller onto the Nucleo Shield PCB, compressing the power supply PCB further, and respinning the button PCB to accommodate 12x12mm buttons.

4 Lifts 

Artifacts

Name Description
Top-level Block Diagram This is a general overview of the complete system and key components for functionality.   Download
Fusion 360 Design Power supply enclosure designed in Fusion 360 with inspiration from a wooden gift box.   Download
Button PCB Schematic and design for the button PCB using KiCad.   Download
Nucleo-shield PCB Schematic and design for the main PCB using KiCad.   Download
Executive Summary Outlines our project, our team's approach, and the overall design process.   Download
Presentation Video discussing our journey throughout the term and at the end of the project.   Link