Programmed Adjustable Power PART 3: Just layout it!



Long day for me to update my blog. I even don't know my blog was blocked by our Great Fire Wall.

Yesterday I passed my first time of GRE test. That's a f**k test. But during the day of preparing the GRE, I got a chance to attend our University's electronic design contest. In the contest, I fixed some problems of my power and add some now function into it.

This is the top layer of the power. You can see a black PCB which plug into the main board. That's a current detection module. I using TI's INA200A to detecting the current of power's output. Then using Arduino's ADC to check out the current if the current exceeds the threshold value. This threshold value could change during the runtime. If the power is overloaded, the relay (yellow thing) will cut off the output to protect the buck chip until manual reset the system.

The 1602 LCD could display the output voltage, output current and cut off thrshold current value. Using Arduino to control the LCD is very simple like using printf() function in C language.

This the bottom layer of the power. I using the surface mount package part to keep the system small.

This is the out put waveforms. About 15mV ripple voltage in 1A load, 10V output. Fantastic result by using Nichicon HD aluminium electrolytic capacitor.

That's all of the
This project is open-sourced, under the licence of BY-NC-SA. If you want the SCH, PCB file and Arduino file, leave the comment and I will mail you ASAP.
Thanks to Texas Instruments for offering me so many kind of chips free.

One Response to “Programmed Adjustable Power PART 3: Just layout it!”

  1. David Says:
    Jul 16th, 2014 Firefox 33.0 Windows 01:19 Reply

    I'm working on my own digital power supply and I would very much like to see you final sketch, am learning programming so it could help much.
    Nice blog.


Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).