In this video I’m going to show how i built a brushless DC (BLDC) ESC (electronic speed controller) based on an Atmega328P microcontroller. This ESC was a prototype for a much larger one that I’ll be using to drive the 1500-watt motors on my submarine. The video also explains the theory behind how a brushless DC motor works, and some troubleshooting tips that you may find helpful if you build one of these yourself.
The code i used for the first test can be found here:
I later modified it to add a reverse function and adjusted the startup sequence settings to get a smoother start to my motors.
A guide on using the Atmega328P microcontroller by itself (without the arduino board) can be found here:
Hardware used:
MOSFETs: IRLZ44
Flyback Diodes: MUR120G
MOSFET Drivers: IR2101
5V Linear Regulator: LM7805
MOSFET Driver supply regulator: LM317
The motor used in the first part of this video is a very old brushless motor i used to fly on a drone, and I’m not sure what the part number is or if it’s still in production.
The submarine motors are Turnigy SK3 6374-192 kV brushless motors. I’ve replaced their ball bearings with bronze sleeves, and coated the rotor and stator with enamel to protect against saltwater.
Arduino Code:
I've updated the description with a link to the arduino code
Waaait, doesn't delta have higher power (and thus torque) than star?
And RPM is controlled by the switching speed anyway?
3:55 What if we use these switching instead ?
I realized.
I see in the video the sequence on/off of the switches is this:
s1: 110000
s2: 000011
s3: 001100
s4: 000110
s5: 011000
s6: 100001
But wouldn't it be better if it looks like this?
s1: 111000000011
s2: 001111100000
s3: 000000111110
s4: 000011111000
s5: 100000001111
s6: 111110000000
the sub motors sound unbalanced lol. add a stabilizer bearing at the end of the shaft!
Great video , your voice was super clear , thanks
Sir how to open aurdino code file which is you geven in description
All water circulation pumps in EU use similar circuit. Pumps like Wilo. I need driver board pcb. I can't find any information on those pump corcuits
This was amazing!!!
The MOST IMPORTANT Question.
Can you please let me know how did you wire slide switch for reverse forward function?
Your Answer wii be Appreciated 👍 👍
I just wanted to say thanks for sharing your project, It provided inspiration and impetus. I had been putting my own ESC project off for a while. A combination of analysis paralysis and trying to think of all the required features. I decided to go with through hole components (majority) and an arduino after seeing this video. My motor is now up and running. Thanks again.
Please the code with reverse rotation
Hi, how did you determine the resistance values of the new back emf voltage divide resistors?
Next step. Make it a pure sine ESC.
Are you the same guy from inherent machining??
it can work with a 36v motor at 12 amps?
احتاج كود للتشغيل بمقابل مادي
ADHD Powers Activate! Time to switch back to this project. lol
can it be used for inverter refrigerator compressors, please answer
Cool project and great video.
any 400A opensource ESC
That thing looks like it could go to the titanic far more safely then that carbon fiber death trap
Some nice work there! I'm curious about (more than) one thing … how did you diagnose that the voltage spike was resetting the AT-mega?
congratulations great video!!
Greetings Hyperspace Pirate. First of all thank you for sharing your project. I have three questions:
1) This circuit of yours for brushless motors, is it necessary to give a push to the motor to start it, like many circuits given on the internet?
2) It serves for HD and CD ROM motors with 3 and 4 wires?
3) Can Arduino Nano be used? Thanks a lot.
hi, very nice.thanks
Hello, Im doing a regen braking project and Im wondering how compatible your regular ESC is with that kind of thing?
Can you tell me what I don't understand at 7:17 minutes? What is the purpose of the three resistors connected to the ground?
14:02 I'm troubled by that noisy start whenever you start the motor or reverse direction. That would make me cringe if i was driving your sub (or just in it).
I think you need to smooth the inrush current at startup. I can't help but feel that's a lot of unnecessary strain on the motor! It would freak me out.
I like the way it ramps the speed, and also using assembly opcodes to switch the MOSFETs.
Good job! I would've probably used a different micro, tho… just sayin'. 👍 👌
14:33 ooooo! Sounds like some bearings are already bad, when you run it fast!
Hope it doesn't leave you stranded at the bottom of the sea!
Got emergency ballast blow (i hope)?
I want my OWN submarine!
Can i use yours sometime? Hmmm?
This looks like much fun!
I can't dive any more due to eustachian tube spasms in one ear, so this looks like next best thing.
Maybe better! Def better. 👍 👌
Very nice!