RoboDurden / Esp32_20A_80V_dcdc

20A 80V dcdc/mppt with Esp32 and touch display
MIT License
0 stars 1 forks source link

questions about the power supply module #1

Open AILIFE4798 opened 6 months ago

AILIFE4798 commented 6 months ago

hi, i want to make a portable variable power supply controlled by esp32 i want to ask some question about the module

  1. is the module synchronus aka there is 4 mosfet operating the inductor in full bridge it can highly increase effiency and reduce heat
  2. the original module have potentiometer for adjustment insted of button, that in most case mean it is not truely digitaly controlled, but i need my project to only use a single touch screen without any analog component, can the esp32 control the voltage and constant current
  3. in these cheap module, the constant current is done in software, there is a pid loop to control the voltage based on the current feedback, so the software have to be very fast to react, i want to know if you set voltage to for example 30v and constant current 0.01a and connect a single led to it, will the supply react fast enough to not blow up the led
RoboDurden commented 6 months ago

Long answer later. Yes 4 mosfet. My PCB is not tested yet. My PCB only features 8 bit resolution for v_in and v_out. Potentiometers set the offset voltage, a resistor on PCB the range +- x Volt. So 2x/255 is the resolution. Current control only via PID of voltage. Only good enough for charging or mppt . Can not pull voltage down from 30V to 0.6V. With external 4x 12bit DAC chip from MCP , direct digital current control should be possible. There is a guy in Cina who designed a ltc8705 dcdc with four potentiometers. But I was not able to get in contact with him ...

RoboDurden commented 6 months ago

http://m.eeworld.com.cn/RDesigns_detail/56242

AILIFE4798 commented 6 months ago

4 mosfet then this is the best module online ive seen so far i have some 36v 4a ones with fp5139 pwm chip and same nuvoton microcontroller they are fully digital using encoder and button i am willing to use external dac, but dac is not necessary in this case, using pwm and opamp is better(use pwm and rc filter, the opamp will have infinate input resistant and 0 output resistant to keep result stable) esp32 have hardware pwm so it should be good constant current via pid loop of voltage can be used as normal bench supply, dps5005 does that, and i know some other clones also do, just the software need to be fast and optimized so with external dac can i control 0.6 to 50v at least 80v would be good to have the guy that made his own module is not using digital control so its not really useful

RoboDurden commented 6 months ago

This 20A80V LT8705 module is also analog only with three potentiometers. The digital control is done by my pickup module with 2x dac for V_in and V_out

As all my cheap ESP S2 Mini clones have a bug and one dac does only output 128-255 = 1.6V-3.2V, i already needed to do my own dac with pwm and filter as you can see in my Mppt_LT8705.ino :

  ledcSetup(CHANNEL_DacOut, 10000, 8);  // configure LED PWM functionalitites
  ledcAttachPin(PIN_DACout, CHANNEL_DacOut);  // attach the channel to the GPIO to be controlled
...
  ledcWrite(CHANNEL_DacOut, iOut);

10 kHz was good enough for me. grafik

The trick with using a dac to "reprogram" the potentiometer is that the comparator voltage is 1.2V which is nicely in the range of the 3.3V dac. grafik So you can add an "offset" to feedback pin and the LT8705 thinks that V_out is higher (or lower) then it truly is.. The resistor between dac and LT7805 sets the influence of the dac and therefore the +- range. With my hover car booster i can set V_out from 25V to 50V. But i doubt that these dcdc converters can regulate down to 0.6V. But you can disable the converter to set V_out to 0V.

As this 20A80V module has a potentiometer for current, it looks like the dac method would also apply to that. Yet i did not measure a feedback voltage of about 1.2V at that potentiometer but only the shunt current voltage of 0.00x V :-/

But according to the datasheet, this trick should also work for direct current control: grafik

But it needs to be tested, if IMON_OUT which is meant as an output can be used to program the current target:

_generate a voltage V IMON_OUT that is linearly proportional to the output current. When the input or output current causes the respective IMON_IN or IMONOUT voltage to rise near or above 1.208V (typical), the VC pin voltage will be pulled down to maintain the desired maximum input and/or output current (see EA1 and EA2 on the Block Diagram). The input current limit function prevents overloading the DC input source, while the output current limit provides a building block for battery charger or LED driver applications. It can also serve as short-circuit protection for a constant-voltage regulator.

This guy with the 4 potentiometers might be of great help and i do not have any experience to design a dcdc converter from scratch.

When i am back in spring time i want to continue with this pickup module here that can only do V_in and V_out while monitoring I_out.

But i have already ordered three of these 4-channel 12bit dac MCP4728: https://www.aliexpress.com/item/1005006272473960.html http://ww1.microchip.com/downloads/en/devicedoc/22187e.pdf

AILIFE4798 commented 6 months ago

there is no such thing as digital pwm ic they already are, just using a comparator as input voltage feedback and you have to offset it somehow i will reverse engineer the 36v one that have 2 lm317 opamp see how they designed it

idk what the input voltage adjust is used for only out voltage this one is needed i dont need hardware output current i will use voltage to control the current and always set hardware current to 10a for protection if esp software failed why the module cannot regulate to 1v or so i thought most modules can you should use a opamp in series with rc filter, because the resistive divider will load the rc filter so higher frequency is required, opamp have true infinite input resistance so you can get much more resolution

RoboDurden commented 6 months ago

Please post a cicruit with a opamp in series with rc filter to get nice dac from esp32 pwm. V_in is needed for mppt.

AILIFE4798 commented 6 months ago

i have reverse engineered my 36v4a module it actually have hardware current limiting with another set of opamp so maybe it really is needed

for each set of control, 2 opamp is used(one dual opamp package for one set of control), the output voltage/current feedback is first amplified by one opamp (the current shunt/voltage divider go to non inverting input, and a feedback resistor from output to inverting input) (just like how they do it for phase current, incase you havent recognized me now you do), the output of first opamp is connected to the microcontroller adc pin for feedback, and also connected to the second opamp non inverting input, the micro controller pwm pin is connected to a rc filter to the inverting input of the second opamp, and the second opamp output go to the pwm ic for buck boost

AILIFE4798 commented 6 months ago

i will send you pin tracing and schematic later

AILIFE4798 commented 6 months ago

36v4a buck back@0 75x IMG_20240224_123450

i removed everything from the board in order to reverse it

RoboDurden commented 6 months ago

Please link the complete 36v4a module. Even so I don't understand how this affects my 20A80V project here.

AILIFE4798 commented 6 months ago

you asked me how to control buck regulator ic with pwm and opamp i say im not a professional either so lets do what the chines do the best just reverse engineer what others do and copy it this is just what i have thats completely digitaly controlled and have digital hardware current adjusment this totaly can be fitted to the 80v20a one you might need 4 set of opamps for it though but 4 pwm is easy on esp

RoboDurden commented 6 months ago

I need a circuit diagram. And there should be some literature or Wikipedia page to describe the function.

But there is not enough space for a 8-sot dual opamp on my PCB anyway.

AILIFE4798 commented 6 months ago

https://www.youtube.com/watch?v=hyLYPu-4EN8 this video explains it if theres not enough space you can add another layer the cost of pcb is same as 2 layer added is still smaller then 10x10 you just need to place the interconnect at different place of pcb it would make it less mechanicaly stable but as long as touch screen is mounted correctly its ok

RoboDurden commented 6 months ago

Okay, the opamp provides the current that effects the feedback input of the Lt8705. That gives more freedom for the low pass filter and a strong low pass can be achieved with a small capacity. I need a strong current on the pwn output pin of about +-10 mA to keep the capacity small while still providing the current to change the dcdc feedback input.

But it works. And multiple PCB layers are not the problem. There is no physical space left for a 8-sot on my compact pickup module.

And again, a tiny quad 12bit DAC controlled by i2c that does not need a PID loop to control current will also have stable output current to manipulate dcdc feedback input.

And four times low pass plus quad opamp is way more complex.

Yes, if you only want to control output voltage, then adding an opamp is nice.

If I find physical space for an 8-sot opamp, I will consider your advice for a future version :-)

Thank you.

AILIFE4798 commented 6 months ago

i mean order a second piece of pcb and stack it once more so you have plenty more space to work with and you can design it to be ordered as one piece but cut it to 2 at home so its cheaper

a dac would be good for replacing the rc filter, but can it output enough current to drive the feedback pin? i red in another video even with dac a output follower opamp is required, i think it depends on the dac chip

the 36v4a module is actually very clever the code does not need to deal with the load and input voltage changing, as the micro controller only controls the comparator inverting input, the normal feedback is passed through the none inverting input, and this way the micro conntroller can still control the full voltage range 0-36v

i am going to make a similar thing and to avoid making a complete buck converter my self(which is possible with a esp32, but im not good at it), i want to try hack this 80v20a one as its the most powerful buck boost ive seen at this tiny size, switching supply especialy synchronus one really is superior i got misleaded by some youtube video to use digital potentiometer as i do not know how opamp work before now i think about it its a very good idea ill buy some 80v20a module to try it out the comercial module the ui is always very bad like this 36v4a module you will need to press the up and down button 36000 times to adjust the full range you can long press but its still very painful(btw, how did they get such amazing resolution PWM?or is it clever software)

RoboDurden commented 6 months ago

Yes I will be happy if you also start working with this nice 20A80V module. Another guy from the gen2.x repo did find the original manufacturer in China and he responded that he could offer a modified version for $15 at 100 pieces.. The two female headers have 8x gnd to give the LCD module stability.

It would be nice to have modified version that routes the additional lt8705 pins needed to the two female headers..

AILIFE4798 commented 6 months ago

the original 80v20a module buy directly from china cost more then $15 so yes you should go order a custom version but do not use the original microcontroller it is a very bad choice idk why so many similar product uses it

i will try to modify some lm2596 first as well the things take forever to come from china i think im not that far from making a moost converter from scratch tbh because the driver ic handle most of the hard work, the circuitry to control the chip ill have to make in any case anyways, i think the hardest is the inductor, you cannot buy those pre made you will have to somehow wind it your self and calculate the value which im not good at

61fLAKGqDKL _AC_UF894,1000_QL80_ these tiny module can deliver 100w or even 140w in newer model is really good and also buck boost it is not as good but it is actually what i need for a portable variable power supply the 80v20a one is still on the too big side too bad i cannot adjust the voltage and constant current by external means it have built in control of everything

AILIFE4798 commented 6 months ago

and for these driver chip that have external mosfet, cant i just use more powerful mosfet and decrease current shunt resistance to increase the current rating it shouldnt effect the chip function right

RoboDurden commented 6 months ago

The big inductivity coil can only carry a certain amount of energy.

But there are pins on the lt8705 to synchronize two modules.

AILIFE4798 commented 6 months ago

i actually want to use ltc3780 the voltage is only 30v a bit low i want at least 50 but this module really is too big i would still use it for a stationary bench supply that dont need to be portable but i want to make a portable version first

RoboDurden commented 6 months ago

https://youtu.be/1vDQG1ODD4M But yes, 30V limit :-(

AILIFE4798 commented 5 months ago

I have found another digital controlled DC DC module It is using stm8 as controller This time it is like your design the feedback connected to a pin with 2 layer rc filter directly There is a opamp on board but it is used to amplify current only This module can display voltage current but can only set voltage no constant current (Interestingly the LCD is driven by the stm8 directly without driver ic, but I don't find any info online that stm8 have a built in LCD driver)

IMG_20240305_203111

So yes every buck boost ic can be used for this digital control modification What do you think is best that can output about 50v 5-10a,I need buck boost one cuz it'll be powered from 14v, and best if it is synchronous so less heat Ltc3780 seems to be the best option despite the 30v problem My current portable supply is 36v5a max 80w(long term 40w) which is in most case enough but as always we want more

RoboDurden commented 5 months ago

14 v to 50 v is bad decision. Step up is less efficient than step down.

AILIFE4798 commented 5 months ago

I am making a portable bench supply that will not often be used at 50v anyways it's just good to have for driving high voltage led 4s battery is maximum acceptable because 5v step up to charge it is very ineffecient also

RoboDurden commented 5 months ago

If you want a range from 5V to 50V than this lt8705 module here is the best you can get for $20 in my opinion Use a prototype board to test your opamp approach and report back :-)

AILIFE4798 commented 5 months ago

I want to make 1.5 to 50v I mean I will need to charge the battery with USB It's best to use USB pd that have 20v but it's not always available so it have to support 5v

The lt8705 is a good chip yes but the ready made module is too large I'll have to design a custom PCB and worry about the inductor and such I don't need 20a And the ltc3780 ready made module design is not the best certainly but well it's much more acceptable I think the goal is to design a complete lt8705 based board but for now I'll start simple I'll test with and without opamp This really is my first time using opamp

RoboDurden commented 4 months ago

Thank you for your interest @AILIFE4798 , major update online: https://youtu.be/tdmJfj5aSUM

I-hate-2FA commented 4 months ago

I still haven't had time to mess with this yet The mm32 project is good enough now I can finally take a rest and work on other thing and maybe finally make a video I will surely give it a try though, I've recently seen a video making a digitally controlled electronic load with opamp and pwm, so I think I have now idea how to apply it to controlling buck boost converter also

RoboDurden commented 4 months ago

Ah yes, the opamp to seperate the filtered output current from the pwm input current. I am still confident that the max 40mA source- and 28mA sink-currents of the Esp32S2 are enough to control the feedback inputs of the LT8705 But please report on your findings with pwm + opamp :-)

I-hate-2FA commented 4 months ago

I say I'm a hardware guy but I've never actually used a opamp on irl but I think I can learn how to use it easily if not too much math is involved