I really like this series. I think you are on to a product that could sell very well. Having insight into the MPPT process and verifying that it's working optimally is not possible on the cheap Chinese units, and your solution also gives far more flexibility for incoming voltages, amps, battery voltage, amps, with the brains staying the same no matter the power electronics... Massive appeal to me, and I'm sure many others.
Fascinating Julian, bloody fascinating. Really appreciated all the wave form comparisons and you wonderful explanation. I'm rather looking forward to the rest, pls make sure it's too the same detail, I've learned a lot from this video👍
Excellent video. You produced a similar one when converting the pwm5 to Arduino and I found that explanation invaluable in converting your code to the attiny85 after referencing the data sheet. Very much looking forward the next instalment.
There are dedicated micro controllers that have special PWM modules, that have High and low side pwm output pairs with set able dead times to match the output drivers switching latency to prevent shoot through. Also with fast fault current shut down Inputs to disable the output if there are software or hard ware issues, these will trip faster than the current limiting on a PSU and save you money and time soldering when your inductor saturates :-)
Coolkeys2009 Those are for professional designs and most of the viewer will not have the interests in due to reachability problems. in STM32 or STM8 series with advanced timer can do that easily or if you want to jump higher then there is TMS320F series or STM32F334 for it with micro edge positioning. there will be no hardware feedback for fault situations.
This board might be a bit advanced for beginners, but it's inexpensive and contains features that make motor control far easier and more reliable: www.ti.com/ww/en/launchpad/launchpads-c2000-launchxl-f28027.html Most importantly is a feedback loop from the analog comparator module to the PWM module, so the comparator can directly control the duty cycle. This gives you very precise voltage or current control.
He's tinkerning with an Arduino to see if it will be suitable, I think in this case he would be better off with an PIC on some strip board or even breadboard programming in C. I'm not convinced it will be safe to use PWM in the way he's showing for anything other than very low power/efficiency.I know some of the pic18f, dspic30 are available with the exact peripherals he needs. Mind you I do see the advantages of using an Arduino in terms of pre written routines etc.
You may be correct but, do you think anyone who follows this series or, even better, tries it at home, will have a much better understanding about how buck, boost and buck-boost circuits works? I kind of thing that might be the point, not making industrial system for mass production. I could be wrong.
That's looking quite good! Coupling the two Mosfets to one pot with slight overlap is indeed very easy; just subtract a small value from the potmeter to set the other gate. I think you could make quite a nice buck-or-boost module using a low power MCU as small as a ATtiny13A. By virtue of the symmetrical approach one could just select two pins to serve as input for either buck or boost mode. Nice! Now what's next? What type of conversion is best suited for a tiny MPPT module?
I still wish there was an IDE as simple to use as the Arduino C. Hi Tech C and Mikro C are more advanced and I'm still doing baby steps with C. Oh well, assembly is a little mor lengthy but.... Great job, I love how you delve into the data sheets and make them understandable
AFAIK, there is no intermediate step solution out there... The Arduino 'IDE' is as basic as it gets (calling it an IDE is generous) and that's OK because it is designed for a target audience of people new to the concepts of embedded programming. I come from the other direction, having used IDE's like Tasking, Keil, Crossworks, and various other ones wrapped around Eclipse. Seeing as most chip manufacturers are now rolling their own IDE, the path to using a more high end IDE may be to pick one Chip manufacturer (eg. Atmel) and learn their IDE (Atmel Studio 7) until comfortable with it. Jumping to another IDE is easier as the basic principles are known by then. But it will take time. - Eddy
You could do that with only two PWM channels driving integrated half-bridge gate drivers that'll generate the complementary drive signal and dead time for you for each half of the bridge. They also tend to have integrated bootstrap power supplies for the high side devices so you down have to worry about the floating switch node and needing an isolated power supply referenced to it.
Sure thing. I just thought it worth mentioning before a software route was too far along when they're prone to problems providing lockout mechanisms to prevent shoot through, generating small dead time quantities and harder to guarantee the state of things during boot of the uC while I/O is being configured and also in the event of a soft or hard crash. In the case of using an MCU of that kind of scale it'll also reduce the amount of computation needed per control loop iteration which could be quite useful on a uC where doing floating point maths gets expensive (time wise) quickly.
will try that and hopefully Julian does also. Hopefully his capture process recognizes the changes. Others are using larger characters and that's good.
Julian !! Where did you find those Potentiometers on the boards? THose are very neat - and seem to be quite rare (after much searching). Love the post !!
np. "module" is the key word ebay sellers use for any component or circuit mounted to a little pcb like that, usually intended for arduino users. so searching potentiometer module, relay module, [type of sensor] module, wifi module etc will find the corresponding thing
If you're planning on using N-channel devices for both high and low side switching, what are you planning to do to get around the requirements for the gate drive of the high side? That requires a voltage above the rails, so it usually involves a charge pump. P channel devices are of course inferior to N channel but they are much easier to drive for doing high side switching, so you should really consider using complementary pairs. You can probably find suitable P channel devices for relatively low loads. And then you don't have to worry about inverting the PWM channel.
a video about how to oscilloscope would be amazing. like how to use it and what the buttons and dials do. I kind of know what it does its measuring a voltage and drawing it as a line over time but there must be more to it
why don't you look at ECCP of a some PIC. it has all the features built in. You just specify dead time (to avoid top and bottom being on at the same time), set polarities and use the same single PWM. You can use ECCP with 1, 2 or 4 outputs. Also for driving mosfets look for MOSFET drivers like TC1426/TC1427/TC1428. You'll find it's not that easy to drive a mosfet at 30+kHz, especially big one with huge gate charge. Well you probably know that from your solar PWM controller.
Sir, i have been seeing all ur videos and i would like to do a similar solar project where i use panels to charge batteries and in return i need to buck/boost convert which can give me 12,24 and 48v outputs which can run my wifi ap and network switches only for a few hours, can u recommend if any such charge controller etc is available which can achieve this reliably. i use a inverter as of now but i would like to run the devices directly on DC to avoid any conversion losses due to inverter
You could go a lot further than muppet 2 here, you have just demonstrated how a H bridge works for dc to ac inversion :) would be another awesome project if you decided to go with it :)
A modified sine wave is worthless, useless and pointless, it doesnt matter which way the wind blows, your still pissing into it with anything less than a true sine ;)
are you going into production with this muppt? I'd like one if you are. what volts and amps capacity? I need a 100v in 12/24 volt out. and about 60a. I wish I could build one of these.
If you have specific requirement then I can design one for you and send the assembled one. But delivering this 60Amp is not that easy job. It needs multistage conversion.
Can you send me the full details to my mail ? should it be fresh designed one or it could be with products that is already available in the market ? I just cant estimate right now unless I have all the details. You may get in touch at satyajit.siliguri@gmail.com
10:32 - ya, Adobe Acrobat Reader *DC* sucks! Uninstall and get the regular Reader 11. Adobe is pushing their "cloud" services and the user interface sucks. It wastes so much screen real estate.
I really like this series. I think you are on to a product that could sell very well. Having insight into the MPPT process and verifying that it's working optimally is not possible on the cheap Chinese units, and your solution also gives far more flexibility for incoming voltages, amps, battery voltage, amps, with the brains staying the same no matter the power electronics... Massive appeal to me, and I'm sure many others.
Fascinating Julian, bloody fascinating. Really appreciated all the wave form comparisons and you wonderful explanation.
I'm rather looking forward to the rest, pls make sure it's too the same detail, I've learned a lot from this video👍
Excellent video. You produced a similar one when converting the pwm5 to Arduino and I found that explanation invaluable in converting your code to the attiny85 after referencing the data sheet. Very much looking forward the next instalment.
Excellent video! I love when you bring your scope to the video. Hope, you will make prototypes on breadboard soon!
There are dedicated micro controllers that have special PWM modules, that have High and low side pwm output pairs with set able dead times to match the output drivers switching latency to prevent shoot through. Also with fast fault current shut down Inputs to disable the output if there are software or hard ware issues, these will trip faster than the current limiting on a PSU and save you money and time soldering when your inductor saturates :-)
Coolkeys2009 because this is an Arduino how to.
Coolkeys2009 Those are for professional designs and most of the viewer will not have the interests in due to reachability problems. in STM32 or STM8 series with advanced timer can do that easily or if you want to jump higher then there is TMS320F series or STM32F334 for it with micro edge positioning. there will be no hardware feedback for fault situations.
This board might be a bit advanced for beginners, but it's inexpensive and contains features that make motor control far easier and more reliable: www.ti.com/ww/en/launchpad/launchpads-c2000-launchxl-f28027.html
Most importantly is a feedback loop from the analog comparator module to the PWM module, so the comparator can directly control the duty cycle. This gives you very precise voltage or current control.
He's tinkerning with an Arduino to see if it will be suitable, I think in this case he would be better off with an PIC on some strip board or even breadboard programming in C. I'm not convinced it will be safe to use PWM in the way he's showing for anything other than very low power/efficiency.I know some of the pic18f, dspic30 are available with the exact peripherals he needs. Mind you I do see the advantages of using an Arduino in terms of pre written routines etc.
You may be correct but, do you think anyone who follows this series or, even better, tries it at home, will have a much better understanding about how buck, boost and buck-boost circuits works? I kind of thing that might be the point, not making industrial system for mass production. I could be wrong.
That's looking quite good! Coupling the two Mosfets to one pot with slight overlap is indeed very easy; just subtract a small value from the potmeter to set the other gate.
I think you could make quite a nice buck-or-boost module using a low power MCU as small as a ATtiny13A. By virtue of the symmetrical approach one could just select two pins to serve as input for either buck or boost mode. Nice!
Now what's next? What type of conversion is best suited for a tiny MPPT module?
You are my HERO ! Thank you so much for this video. Nice work .
NICE! Love your new scope (did not like your old one... 'cause it was just like my DSO, lol)
I still wish there was an IDE as simple to use as the Arduino C. Hi Tech C and Mikro C are more advanced and I'm still doing baby steps with C. Oh well, assembly is a little mor lengthy but.... Great job, I love how you delve into the data sheets and make them understandable
AFAIK, there is no intermediate step solution out there... The Arduino 'IDE' is as basic as it gets (calling it an IDE is generous) and that's OK because it is designed for a target audience of people new to the concepts of embedded programming. I come from the other direction, having used IDE's like Tasking, Keil, Crossworks, and various other ones wrapped around Eclipse. Seeing as most chip manufacturers are now rolling their own IDE, the path to using a more high end IDE may be to pick one Chip manufacturer (eg. Atmel) and learn their IDE (Atmel Studio 7) until comfortable with it. Jumping to another IDE is easier as the basic principles are known by then.
But it will take time.
- Eddy
You could do that with only two PWM channels driving integrated half-bridge gate drivers that'll generate the complementary drive signal and dead time for you for each half of the bridge. They also tend to have integrated bootstrap power supplies for the high side devices so you down have to worry about the floating switch node and needing an isolated power supply referenced to it.
Thanks Jeremy. I'll look at some MOSFET drivers later in the project.
Sure thing. I just thought it worth mentioning before a software route was too far along when they're prone to problems providing lockout mechanisms to prevent shoot through, generating small dead time quantities and harder to guarantee the state of things during boot of the uC while I/O is being configured and also in the event of a soft or hard crash. In the case of using an MCU of that kind of scale it'll also reduce the amount of computation needed per control loop iteration which could be quite useful on a uC where doing floating point maths gets expensive (time wise) quickly.
Hey Julian. Nice work, but if there was a way to increase the size of the characters when you have the sketch on the screen that would be excellent .
there is a way. just look in the preferences in the IDE
will try that and hopefully Julian does also. Hopefully his capture process recognizes the changes. Others are using larger characters and that's good.
Julian !! Where did you find those Potentiometers on the boards? THose are very neat - and seem to be quite rare (after much searching). Love the post !!
search ebay for "potentiometer module"
Ohhh man yeme !! That nailed it !! Thanks a ton !!
np. "module" is the key word ebay sellers use for any component or circuit mounted to a little pcb like that, usually intended for arduino users. so searching potentiometer module, relay module, [type of sensor] module, wifi module etc will find the corresponding thing
thats just a variable resistor, see only 3 terminals. those rotary encoders have 5, +ve, gnd, 2 for the rotation, 1 for the push switch
Really informative !
Thanks for sharing with all details.
Would you trust a buck or boost ps controlled by a uP instead of an analogic controller ?
If you're planning on using N-channel devices for both high and low side switching, what are you planning to do to get around the requirements for the gate drive of the high side? That requires a voltage above the rails, so it usually involves a charge pump. P channel devices are of course inferior to N channel but they are much easier to drive for doing high side switching, so you should really consider using complementary pairs. You can probably find suitable P channel devices for relatively low loads. And then you don't have to worry about inverting the PWM channel.
I'll be using my DCOI (dual complimentary opto-isolator) MOSFET driver with a couple of enhancements ;)
would be interesting to see how the outputs go on powerup. possible to have two gates turned on at the same time causing a short?
Terry Peake nice point
a video about how to oscilloscope would be amazing. like how to use it and what the buttons and dials do. I kind of know what it does its measuring a voltage and drawing it as a line over time but there must be more to it
I noticed how the zeners change to fancy Schottky diodes. Did I win something, Julian?
He Listened :-) Merely a symbol change, same part, but you knew that.
Why not just use an inverting input and or a buffer with 7400 series logic ? You can configure dead time with passives.
why don't you look at ECCP of a some PIC. it has all the features built in. You just specify dead time (to avoid top and bottom being on at the same time), set polarities and use the same single PWM. You can use ECCP with 1, 2 or 4 outputs. Also for driving mosfets look for MOSFET drivers like TC1426/TC1427/TC1428. You'll find it's not that easy to drive a mosfet at 30+kHz, especially big one with huge gate charge. Well you probably know that from your solar PWM controller.
Sir, i have been seeing all ur videos and i would like to do a similar solar project where i use panels to charge batteries and in return i need to buck/boost convert which can give me 12,24 and 48v outputs which can run my wifi ap and network switches only for a few hours, can u recommend if any such charge controller etc is available which can achieve this reliably. i use a inverter as of now but i would like to run the devices directly on DC to avoid any conversion losses due to inverter
You could go a lot further than muppet 2 here, you have just demonstrated how a H bridge works for dc to ac inversion :) would be another awesome project if you decided to go with it :)
sounds expensive, but im sure it will also do a pure sine too :)
Thats as maybe, but a modified sine is the same as pissing into the wind really aint it...
A modified sine wave is worthless, useless and pointless, it doesnt matter which way the wind blows, your still pissing into it with anything less than a true sine ;)
nice projet !!!
Looks like this is going to be a great project.
please share source code for this example
could make a multimeter with an arduino
are you going into production with this muppt? I'd like one if you are. what volts and amps capacity?
I need a 100v in 12/24 volt out. and about 60a. I wish I could build one of these.
James stranger I can help you
Satyajit Roy
how ?
If you have specific requirement then I can design one for you and send the assembled one. But delivering this 60Amp is not that easy job. It needs multistage conversion.
Satyajit Roy
I'm going to eventually have about 8 or 10 250 watt 24 v panels. but just 2 for now. what would something like that cost?
Can you send me the full details to my mail ? should it be fresh designed one or it could be with products that is already available in the market ? I just cant estimate right now unless I have all the details. You may get in touch at satyajit.siliguri@gmail.com
is he making a programmable psu from what i can tell?
He rebuilds his home made solar mppt tracker and tries to build it in a way he can charge and discharge with the device.
MPPT solar charge controller
he is doing synchronous mppt.
nice ! :)
10:32 - ya, Adobe Acrobat Reader *DC* sucks! Uninstall and get the regular Reader 11. Adobe is pushing their "cloud" services and the user interface sucks. It wastes so much screen real estate.
going to do it ... third