Synchronous buck converter - WIP - Page 1
Forum section: electronics / projects

author: liviu.gelea
author_rank: Contributor
timestamp: March 27, 2023, 08:31:01 pm
content: Hello. I'm working on a synchronous buck converter capable of:Constant power outputConstant current outputCurrent limitingThis project is a work in progress so I will be revisiting this topic to keep you updated as well as humbly asking for some help at times and accepting some feedback if you're kind enough and you think I'm worth your time.The goal is mostly educational but I did in more than one occasion find myself in need of such a device.The work will progress in stages, each stage will end in a prototype that is supposed to prove some concepts and identify some issues better than I can using simulations.Stage 1 - CompleteThis prototype was a proof of concept, mostly for:Testing MOSFET driverTesting different capacitor and inductor sizesSeeing if shoot-through is a problemGetting a sense of how noisy the signals are, which parts get hot and any other potential problemsloop sizes and effect on noiseHow does bootstrapping diodes work?What I found during this step:This works great: no shoot through, nothing gets too hot.Signals are very noisy due to no clear return paths or the large sharp currents (dI/dT). The mosfet driver signals especially seem to be very noisy and I could see the noise decrease as I added additional return paths in close proximity to the signal paths.I need to learn some board design principles and my next prototype will be printed circuit board.I'd really like it if the current sensing was BEFORE the load so that the load isn't floating in respect to GNDthe mosfet driver really doesn't like resistors on signal traces. I can only get away with a few ohms before nothing works anymoreStage 2 -In progress...After cumulating a few dozen hours watching circuit design videos on YouTube I think it's time to try to fix some of the issues in previous prototype as well as answer some new questions:Can I accurately amplify the current sensing resistor voltage 50x or do I lose accuracy and introduce noise. My current sensing resistor is 0.01 Ohm. How does op-amp bandwidth and slew rate come into play?How do I read current if current sensing op-amp is floating so that the load isn't? Do I also float the microcontroller to provide same reference?How do I pass 10 Amps through copper traces? Soldering the exposed traces?How do I improve the noise: low impedance signal return pathsdid I design the heatsink footprint right? will it fit into the board?Heatsink pageanddatasheetBecause I want ground reference planes beneath the signal traces I have to use a 4 layer design:Code:Sig --------------- All signals go in this layerGND --------------- acts as signal return path plane.GND --------------- don't need this but there are no 3 layer boardsPWR loops --------- exposed copper for tinning traces. Because of routing constraints I opted to put current sensing resistors on this layer as well thus keeping the entire loop on a single layerI opted for some through-hole components: capacitors, inductors and mosfets because:I had them at hand I can easily experiment switching different componentsI like the idea of having components on front layercomponent leads act like convenient vias allowing me to get access to ground and VCC easilyThe final product will probably be 100% surface mounted.Current issues:Moving the load reference to ground. Currently the ground connects to the current resistor and the load floats on top of that. I would like to switch the order so that the current resistor floats but I don't know how to read it then. DO I just read voltage and subtract the load voltage drop? But I also need to ensure the voltages being measured are below 5V so that arduino doesn't just read "HIGH". Perhaps a voltage divider and doing some math in software.I don't like how the circuit draws current pulses instead of continuous current. I made some simulations using either inductor+ capacitor or inductor+capacitor + flyback diode but I get some oscillations as well as potentially bouncing voltages in reverse, potentially frying the electrolitic capacitors.Simulation here!Other minor issues: finishing board, adding vias, ensuring design rules and JLCPCB constraints. Adding ISP pins for changing controller parameters such as frequency and PID parameters.

author: liviu.gelea
author_rank: Contributor
timestamp: April 18, 2023, 02:16:04 pm
content: Hey. I think I need some help choosing an op-amp for the current sensor.I asked ChatGPT. And here's its input:QuoteFrom what I can tell, its advice seems on point, except for the slew rate which seems excessive for a buck converter but I didn't mention the use case.Any tips?I also own some dedicated current sensing circuits. I don't see a good reason to use those but if it's too difficult to this much amplification without too much noise please mention it.Thanks!