Best sPWM tutorial I have seen so far! Very clear and informative. Thanks. Point to note, on Mega 2560 one needs to change DDR in the variable frequency sketch for PB5 and 6 - i.e. different to Uno. So its DDRB = 0b01100000. Cheers
@meanman19929 жыл бұрын
+martyno Cheers, I am aware of that. Did you have a look at the sketches on github or just from what you saw in the video? I'm not sure if I should try and make the sketches suit multiple boards or just leave it with one to stop it sprawling out too much.
@OswaldChisala8 жыл бұрын
I'm absolutely impressed by the clarity of your explanation of sPWM wave generation. Kudos to you, mate! :)
@meanman19928 жыл бұрын
Thank you.
@devanshuagarwal387 жыл бұрын
Thanks a lot!...I implemented the same logic of SPWM on pic16f72 and its working fine. The detailed tutorial was really helpful.
@AugustineAriola4 жыл бұрын
Please how did you do that?
@94aswin8 жыл бұрын
I've been searching for this stuff for a few weeks now.... the best explanation that ive come across so far ! Thanks...
@omtandon27413 жыл бұрын
same here
@prasanthchigurupatii3 ай бұрын
Hi , Thanks for the excellent explanation, similarly excepting for three phase sinePWM.
@sanupamu7 жыл бұрын
It's best tutorial in whole KZbin
@JahanZeb19764 жыл бұрын
*Amazing tutorial. You know the subject matter the best.*
@rashmiranjannayak32515 жыл бұрын
Perfect presentation with deep real world focused. Many many thanks for up loading and for noble intention.
@ihavecojones Жыл бұрын
At least 1 year of Electrical Engineering and half a year of master's in electrical engineering condensed into a well composed and well explained 24 minute video. Someone give this man a stool, a camera , a whiteboard and a decent salary as a teacher...because the old farts couldn't explain how water boils to a fucking kettle...
@javasyndicate7134 жыл бұрын
wowww ,,,, why I just find your vid, this is best presentation- Thank You !!
@meanman19924 жыл бұрын
Glad it was helpful!
@kbdesignz58088 жыл бұрын
Very cool stuff! Thanks for the well presented explanation.
@kingsleyazubuikeabonyi36122 жыл бұрын
How can I download your code, and what are the libraries needed Engr. Kurt?
@MsMicro20076 жыл бұрын
Thanks for such a nice demonstration of SPWM signal generation, can you please tell me what is the value of capacitor used in RC filter
@franciscoantoniomoralestap48306 жыл бұрын
Very good brother, greetings from Mexico ... just one question, pin number 13 that works in the physical application.?
@andryxa774 жыл бұрын
Hi. Is there any plans to implement this on esp32? Would be much appreciated to see example of working code on esp32 to output spwm pulses.
@muznashiblifarooqi99778 жыл бұрын
Is it possible to add a 90 degree phase shift in the spwm?
@Zerofoxthree6 жыл бұрын
very great tutorial, i learn a lot from here
@ainsworthlynch8 жыл бұрын
If i have a sqaurewave inverter could I feed the Spwm through an Opamp and feed Fets to modify output signal?
@birdemetsohbet95884 жыл бұрын
which output is giving pwm to inverter which we are going to implement ? are u using 13 ?
@josepablodelgado12305 жыл бұрын
if i want to make a little inverter (low power and for 10 DC Volts) with that code, i only put the outputs 13 and 10 to H bridge with mosfet or IGBTS?
@abdulkadirkucuk83846 жыл бұрын
very good effort for spwm generating idea. but you should build a multi channel spwm for full bridges.
@richardmatjeane90047 жыл бұрын
Guy! I love your work!
@sanupamu7 жыл бұрын
Could you please let me one thing. In arduino IDE io.h library are available?. How can I write code in register level as well as arduino function.
@dantosrock435 жыл бұрын
hello sir, what is the value RC filter? i tryn 100nf and 50kvr not respon thank u
@muhammadbilalmemon2716 жыл бұрын
sir please let us know the values of capacitor & resistor you used here.
@parthibadnan72627 жыл бұрын
nice video. i converted the ino file to hex and ran it on proteus .But the output signal seems to be less than 50 hz and the line period = microMHz*1e6/freq/SinDivisions does not seem to work but if i use period = microMHz*1e6/freq/SinDivisions /8 then i get 50 hz frequency can you tell me why?
@harshsrivastava30666 жыл бұрын
How to generate the pwm of 10 kHz in ARDUINO DUE? What changes I will have to do in your code? and how will I get the header file of look up table for the sinusoidal ,triangular and pwm ? also u have used "#include #include " how will Iget the above two ?
@sanupamu7 жыл бұрын
Dear sir could you please me one thing instead of H-bridge if I use center tap transformer for out put and used two sets of mosfet for pin 9 and 10, so what will happen?. sine wave can generate or not? or generate some distort wave?
@vipinchoudhary27876 жыл бұрын
please tell ,how to calculate the value for sine table....
@irwandiusk48084 жыл бұрын
Thank you for your code, I have gotten a nice sinusoidal waveform. I will use the wave to drive the speaker and I need a circuit with few transistors to amplify the signal. Could you give me information about the circuit?
@wallaceobey6515 жыл бұрын
Thanks for this!. Also I saw your code on github and I've been trying to add a dead band/dead time to it. Do you have any tips for this? Thanks again.
@meanman19924 жыл бұрын
A few people have asked for dead-band, I should look at adding it. I don't have any specific tips, but if you wanted to put up a WIP pull request we could tackle it together from there?
@vengug73034 жыл бұрын
Hi sir how to change the mosfet switching frequency please
@VishnuMenon674 жыл бұрын
So if we need for a different switching frequency , we need to change the lookup table right ? Also how to write the lookup table?
@meanman19924 жыл бұрын
Have you watched the second part of this video? kzbin.info/www/bejne/aXXNfKt6gcSEmZI
@lovelifeandunity15334 жыл бұрын
Hello meanman, can u help me kindly with three phase spwm.. specially the confusing part is to generate 120 degree phase shift with high frequency (40-60khz) range.. I wonder how to manage that with 16bit timers including 8bit.. please guide...
@JJ.24.67 жыл бұрын
Hi...please tell me that can i check results of these program in the serial plotter??? Please reply..
@MegaFer19945 жыл бұрын
can you help me, I want the fundamental frequency to be 60 hz thanks
@JoshuaHarbangan7 жыл бұрын
Very nice tutorial sir... I've tried to use your code (SPWM with variable sinusoidal frequency) on my single phase inverter project. But I have one question... Can you explain me how to add a "delay" (about 500 uS) in the transition between OCR1A and OCR1B? Thank you sir...
@ahmedessaffani70596 жыл бұрын
very instructive tutorial. Thanks,
@jamest.50017 жыл бұрын
this is the most informative video I have found. I am curious . do you or have you made a boost stage for a inverter? or the code for arduino to drive a DC boost. it needs to be self regulating. I found a spwm driver board. to run safety functions. and drive the H bridge. my concern is boosting 12-24v yo about 170+/-, at enough current for a 2500-5000 watt inverter. from your video I think you can solve this issue. if you can. it would be a great help. I know very little a out arduino. and coding thanks
@karolinamaria9157 жыл бұрын
hello good night, I'm experimenting with a 3-phase inverter design with arduino nano, put the program that is here on the internet, but the fault that I present is that it rotates like a stepper motor, please please me you can indicate that it may be happening thank you,
@hamzaabbasi64187 жыл бұрын
can you please tell me how you have determined the contents of look up matrices
@timm38026 жыл бұрын
watch the video!
@SudiptaMandalsuri6 жыл бұрын
amazing.. learnt a lot form this video.. I really appreciate your work
@yannis92preloude4 жыл бұрын
Hi. Meanman from your code is possible to adjust the output voltage. I have transformer 10v 0 10v input 12 volt with no feed back my AC looks good on scope butt under load i get 207volts. can you help in anyway , thanks Yannis
@meanman19924 жыл бұрын
There's a second part to this video where we change the amplitude of the wave, which would lower the voltage, have you seen it? kzbin.info/www/bejne/aXXNfKt6gcSEmZI
@adammohiuddin4638 жыл бұрын
I want to program variable frequency spwm in my arduino mega 2560, but the catch is that the magnitude of the sine wave is also dependent on the frequency by the equation magnitude= (frequency*4.4 +5.4)/225.4. Is it possible to do so? If yes would you please let me know the changes that must be made in your code for variable frequency spwm? Thank you!
@meanman19928 жыл бұрын
check out the new video, the varible frequency spwm code should make it a lot easier for you. kzbin.info/www/bejne/aXXNfKt6gcSEmZI
@Jm-my1rd4 жыл бұрын
can you make another video using pic18f4550 using MPlab compiler for the spwm?
@meanman19924 жыл бұрын
Probably not, but you might be able to take these concepts, look at the datasheet and try and implement it yourself. 👍
@hassane89n8 жыл бұрын
Thanks for useful stuff. I am wondering if the amplitude can change? I am using encoder for speed reading when the speed reduce i need to reduce the amplitude for the output pwm. Thanks!
@meanman19928 жыл бұрын
I think you have already found my other video where I have some code that allows for amplitude change?
@hassane89n8 жыл бұрын
Thanks, I found it but my idea is to change the amplitude depends on motor speed. For instance, make the ma=0.8 instead of 1. is that possible? I am considering V/f method for single induction motor
@meanman19928 жыл бұрын
I don't know what "ma" stands for, neither do I now what "V/f" is? Variable frequency? the other video covers changing the the amplitude and frequency, not depending on motor speed but you could write a code yourself that builds on mine that does that quiet easily.
@kbdesignz58088 жыл бұрын
meanman1992 v/f in motor drive world is voltage/ frequency usually
@tonysfun7 жыл бұрын
Very nice! I'm now a subscriber!
@Pedro191238 жыл бұрын
Hello my friend. How are you doing? I want to know how much is the capacitance that you used for the low pass filter. THANK YOU SO MUCH. GREAT VIDEO!
@rodstartube5 жыл бұрын
don't lose you faith, he should still answer
@digitalbeauty56887 жыл бұрын
HELLO FRIEND CAN YOU PLEASE TELL ME THAT WHAT ARE THE VALUES OF R & C YOU USED HERE. I WILL BE GLAD IF YOU REPLY. THANKS
@alexwv88718 жыл бұрын
Can you help me with my custom game pad? I have some pics of what I'm using if you would like to help. I'd really appreciate it. I don't know how I can wire the button board to my computer
@abhishekprasad32997 жыл бұрын
Very good and informative video.It helped a lot. Thanks. Do you have one for three phase?
@abhishekprasad32997 жыл бұрын
What changes should be made in the code, can you help please.
@omtandon27413 жыл бұрын
Me: Spending weeks figuring out the best way to make a perfect SPWM output. Other KZbinrs: Writing this code " int mos_top = 3; int mos_bot = 5; double pot = 0; void setup() { //define the pins as outputs Serial.begin(9600); pinMode(mos_top,OUTPUT); pinMode(mos_bot,OUTPUT); pinMode(pot,INPUT); //Initial value is LOW digitalWrite(mos_top,LOW); digitalWrite(mos_bot,LOW); } void loop() { double pot_val = analogRead(pot)/10; //One is LOW and other is HIGH digitalWrite(mos_top,LOW); digitalWrite(mos_bot,HIGH); delay(pot_val); // 1/16ms = 62.5Hz //One is HIGH and other is LOW digitalWrite(mos_top,HIGH); digitalWrite(mos_bot,LOW); delay(pot_val); Serial.println(pot_val); } " and putting "PURE SINEWAVE INVERTER TUTORIAL " in the thumbnail.
@0rchimaru7 жыл бұрын
May I know how do you calculate the lookup table?
@zainharoon41564 жыл бұрын
And sir should we make spwm for sinwave without intrupt
@meanman19924 жыл бұрын
I doubt it's possible with this hardware.
@zainharoon41564 жыл бұрын
@@meanman1992 ahn so there is no way without intrupt?
@sumanjha19517 жыл бұрын
awesome ... thanks for great information, can you explain generic spwm code more clear
@giridharan90387 жыл бұрын
sir i need about ibgt details using this project
@omergonulal25727 жыл бұрын
Thank you for this video.this video very perfect 🖒🖒🖒🖒🖒🖒
@zainharoon41564 жыл бұрын
Sir i used analogread() command in isr(timero_vect) after that my circuit is short and output is out shape sir kindly how i can use adc in isr(timer0_vect)
@meanman19924 жыл бұрын
The interrupt is called very ofter, I'm not sure how long it takes for anologread() to finish, but it's possible that it's simply too slow to be called in the ISR. Why do you want to read it that often?
@zainharoon41564 жыл бұрын
@@meanman1992 sir i want control output of sinwave when i used analogread() in loop so my output slowly incresed because intrupt go first after it finish it will go to loop then take adc value their so thats why my output reached slowly so thats the reason thats why i want to use feedback adc in isr(timer0_vect) if you kindly guid me how its possible ?
@meanman19924 жыл бұрын
@@zainharoon4156 I still don't understand why you want to read it that often? like what's the motivation. Like I said I think it's probably not possible because of how often the ISR is called. The loop that comes from ISR is very different from the arduino "loop" as the former doesn't wait for everything to finish executing. Since I don't know why you think you need to read that often it's hard for me to say, But I would use a separate loop, not the ISR. and by "slowly increase" I'm guessing you mean increasing the amplitude. So long as you modifying a scale variable that the isr uses to calculate the output, then you will not need analog read to run every time in the isr.
@zainharoon41564 жыл бұрын
@@meanman1992 sir i want to increase or decrease the amplitude of sinwave frequently but my amplitude of sinwave don t increase frequently so i want make frequently how can i make it frequently sorry if i can t tell you my whole thing if you kindly give me your email i will sent you my code
@meanman19924 жыл бұрын
@@zainharoon4156 Sorry mate, I can't review code.
@Electron68074 жыл бұрын
Bro how to generate 3 phase pwm supply
@asitbiswas60395 жыл бұрын
how can i increase two signal's gap and how can i add feedback loop Please help me sir!!!!
@milanmakwana38834 жыл бұрын
Nice away some can you make video for three phase spwm 120 apart from each other
@tiagonet87948 жыл бұрын
for 60Hz have any modification?
@meanman19928 жыл бұрын
5th line static int freq = 60; // Sinusoidal frequency
@meanman19928 жыл бұрын
Also this kzbin.info/www/bejne/aXXNfKt6gcSEmZI
@xierxu4 жыл бұрын
Where can I learn how to do all this from scratch?
@meanman19924 жыл бұрын
Don't think I can answer that completely. But learning C/C++ programing, and being involved in the adruino community is a good place to start. They might be able to answer the question better. forum.arduino.cc/
@xierxu4 жыл бұрын
@@meanman1992 Could you recommend books and a proven circuit to program and utilize the Atmega chip? I think the Atmel is Atmega?
@janpaul50597 жыл бұрын
I think that using analogWrite command is simplest to get the same result
@thuyavansathiamurthi3592 Жыл бұрын
You rock my guy
@PauloZancoski5 жыл бұрын
Great video !
@nguyenat19654 жыл бұрын
good job !
@THlCKOFlT2 ай бұрын
Thank you !!
@pacocable7 жыл бұрын
please can you say me the value capacitor, resistor and trimmer? thank you very much.i don´t speak english very well
@allanharper90016 жыл бұрын
Well done mate
@har21916 жыл бұрын
Hi sr. Nice video,mmmmm.... please, can you tell me how make it for 60Hz?
@timm38026 жыл бұрын
watch the video!
@erenyeage19958 жыл бұрын
hey can some body help me here. I'm new in arduino. So i want to ask that why the ground pins of arduino were not used ?
@RNA0ROGER8 жыл бұрын
They share the same ground.
@fernandoyose66808 жыл бұрын
thx alot dude
@mangeshdoifode14707 жыл бұрын
hiiii.nice explaination.can i get ur email id please.as their is some important issues that i want to share with you related to my project.