For something basic like a brushed DC motor, speed control can be quite simple, and powering up the motor is a simple matter of just applying voltage. Brushless motors are much more demanding in their requirements however, and won’t spin unless driven just right. [Electronoobs] has been exploring the design of a brushless speed controller, and just released version 1.0 of his open-source ESC design.
The basic design is compact, and very similar to many off-the-shelf brushless ESCs in the low power range. There’s a small PCB packing a bank of MOSFETs to handle switching power to the coils of the motor, and a big capacitor to help deal with current spikes. The hacker staple ATMEGA328 is the microcontroller running the show. It’s a sensorless design, which measures the back EMF of the motor in order to determine when to fire the MOSFETs. This keeps things simple for low-torque, low-power applications.
It’s a tidy build, and the latest revision shows a lot of polish compared to the earlier prototypes. If you’re interested to learn more, try building it yourself, or consider building a thrust testing rig for your bench at home. Video after the break.
Perhaps, by version 3 it might have regenerative braking?
does it run simonk? Getting an esc to work under arduino is easy enough, getting an esc to work well is another story…
+1
What about VESC? Isn’t it open source and not Arduino based? I am actually looking for a nice open source ESC…
An Arduino is woefully underpowered to perform FOC…VESC uses a 32bit STM MCU, you really need the speed and FPU if you want FOC.
The usual suspects:
https://github.com/sim-/tgy
https://github.com/bitdump/BLHeli
Run VESC 4.12 or 4.2 or 6 all are open source designs for running brushless motor and are very good
Am I the only one slightly frightened by the lack of protection diodes on the BEMF sensing? 33k res will drop the current down pretty far but AVR pins are still delicate flowers.
AVRs have built-in protection diodes on their IO pins.
http://nerdralph.blogspot.com/2015/09/diodes-diodes-everywhere.html
Any help regarding ESC for BLDC for Electric Bicycle
up to a certain point, just make this bigger by adding more transistors and appropriate gate drives
I’m rather confused by the high-current paths only having one via for every layer switch.
It’s 2019. We have now STSPIN32F0, PAC5532 with integrated gate drivers, high speed ADCs with plenty of flashmem which enough to implement FOC control for 2-3 bucks.
Thank you for sharing, I never knew they existed. Any particular favorite?
I love the initiative of open design. So thanks for that.
I don’t get why he uses a buck converter instead of voltage regulator. We’re talking few milliamps here to power the ATmega and this would suppress this big coil. I don’t think efficiency is that crucial here.
Also I agree with Dave, a bit of protection on feedback would be a good improvement. Especially if you use the ESC and disconnect (by accident ?) the power source.
The buck converter is a step in the right direction in my opinion. The target market for 90% of what this would be used for is battery-based, and still using a linear regulator is just wasteful.
Limiting the feedback potential is likely to prove an issue though under all but ideal circircumstance.
There are a bunch of designs here too that are all open source. I have been adding to it for a few years.
https://www.rcgroups.com/forums/member.php?u=696658
Firmware available too for 32 bits designs here.
https://github.com/conuthead/f051bldc
I want to get chaotic behaviour of BLDC motor.It will be required for my PhD. Can anyone help me