Monday, 19 June 2017

power supply - Different ways to digitally control an adjustable SMPS


I want to make a battery powered, adjustable SMPS for use in situations when I cannot have an outlet near me, so I would like some more information or suggestions about this topic. The SMPS chip I am basing this off is a LM2733.


The power source would be a LiPo, voltage output 3V to 25V, and at most 500mA.


There are a few ways I think I can control a SMPS chip digitally: one is a digital pot controlled with a MCU via SPI or I2C. A 1024 step pot would give me 20mV stepping, which is more than enough. What I saw in datasheets is that the pots are only able to go up to 5V for the digital resistor. Would that be a limiting factor in such a design? This way seems the simplest and least demanding way from what I see.


Another way would be using a DAC, but I am not sure if it would need to go faster than the switching speed of the SMPS, because in data sheets I always see the voltage dividers before the output capacitor. Problem is that I do not know what the feedback pin wants to see. Does it want the entire ramp up and down from the inductor and compare it to the reference voltage, or does it just find the average voltage of each cycle?



I know it is similar to {this question}, but I'm looking for some more information or discussion.



Answer



Having read the datasheet I'm going to venture a guess. The chip expects 1.23V at the FB pin when the output is at the desired level. Usually this is set by a resistive divider, but I don't think it will be too much of a problem to generate it with a D/A. However, the 13.3K resistor seems to be important, so I'd leave that there but remove the other resistor that connects to the output voltage and basically replace it with your microcontroller/DAC combo.


I think that all you should have to do is ensure that the output of the DAC is 1.23V when the output voltage is where you want it. To keep things realistic You'll probably want to make the output of the DAC mimic a resistive divider - just divide the output voltage of the SMPS by a magic number that gives you 1.23V at the FB pin when you have the desired output voltage.


You are however right to question how fast you have to update the DAC. While the switching frequency of the SMPS is either 600KHz or 1.6MHz this is NOT the bandwidth of the control loop in the chip. I don't see much in the datasheet about what it is, but it does mention using CF to put a zero in the root-locus at 8KHz. So by wild-guess I'd say try to change your DAC at 10KHz - every 100us if possible.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...