Recently the Chinese ESC design utilizing the ATMEGA which we have been flashing with Bernard Konze's firmware has been disappearing from the market. This was the push I needed to finally decide to design and build a replacement. Collaborating with a friend, we worked on it over the summer. It is finished and I think it came out pretty well. I call it ESC32:
Design goals:
- Extremely fast implementation of requested throttle setting
- Ability to take high rate input
- Multiple input protocols
- Ease of programming, real-time debugging
- Efficient
- Inexpensive
The final specifications read:
- STM32F103 72Mhz MCU - 32bit ARM
- Firmware written in straight C
- SWD connector for real-time debugging
- Input via PWM IN / UART / I2C
- 1KHz PWM update rate capable
- All N-FET design with gate drivers
- At least 40A continuous with proper cooling, maybe much more
- 2S => 5S battery
- Option to power logic side via UART or PWM IN +5v
- Command Line Interface for testing / parameter modification / back channel
- 8KHz => 64KHz PWM out
- Current sensing / limiting
- Regenerative braking capable
- Closed loop control mode - experimental
- Lots of RAM and CPU cycles available for advanced control techniques
- BOM cost < $20 at quantity
* image courtesy of TC Pictures, LLC.
It is a drop-in replacement for the ESC's that I have been running with AutoQuad and will take standard PWM input up to 450Hz. I will eventually design new high rate PWM timing which will bring this rate up to 1KHz. It is a definite improvement over the ATMEGA design. Your flight controller can ask for large, quick changes in throttle and it is able to implement them very fast. This allows PID output to be tuned to be more aggressive and results in much smoother control.
Start ups are very smooth and I have not yet found a motor it could not start. It uses oversampling techniques which allow it to accurately control a BLDC motor down to 200RPM. Early indications based on some initial head to head testing with other ESC's show the it is very power efficient. This comes from the fast switching of the N-FETs due to the use of gate drivers. Less time is spent in the on-off / off-on transitions, so less power is used, less heat generated. No special heat sinks or cooling should be necessary for typical 10 to 20 amp usage. This also means that you can use higher PWM output rates without too much of a hit to efficiency.
* image courtesy of TC Pictures, LLC.
As the ESC is an extremely important component of multi-rotor UAV's, it is critical that it keeps running, no matter what. So you can imagine the amount of testing necessary before you can start to trust a new design with your expensive machine. There are a handful of people flying the ESC32 now and I myself have perhaps 10 hours without incident so far. There may still be problems, but I am fairly confident that it is trustworthy. It's all I fly now.
Comments
Hi Bill,
Did you prehaps test the stepresponse of the closed loop RPM controller.
I'm testing my dsPIC BLDC controller and get a settling time of 120ms with robbe 2827-34 an EP1048 prop. RPM goes from 1750rpm to 5000rpm in 120ms. But I was wondering how other ESC's preformed.
Hi Magnus,
You certainly have a point about the huge price gap. Still, the various purpose of usage may justify an higher price tag for some applications. Especially in those cases where the drone might be used in commercial or semi commercial missions.
Hi Thomas,
Hercules II may be a good product, but the price tag will not justify it, especially when the Chinese sell an ESC between 6-16 USD.
Thanks Davey!
Www.altigator.com sell the Herkules II.
While writing stuff in the blog comments of@AutoQuad ESC32 v1r5 I should point out that I find his initiative and ability to design an ESC is very impressing and admirable.
And by the way... that Herkules II project seems very interesting. But where is it sold??
We will see how things turn out with the CC initiative. But as Jeff said, major ESC brand targeting multi rotor market is indeed very good news. Others will follow, and custom performance will be available to all of us, without black art custom flashing :)
And yes @Anish, I really appreciate the ESC logging feature. For tuning and optimization I think it would be good to know how things are going at ESC / motor level.
u could program the castle esc using thier interface and has in build data logging. Sometimes useful in after action analysis
I have used castle ESC for a long time, even both their esc that were still version 1 and got replaced to whatever revision but had to ship it back (Im outside US so its a bit expensive). IMHO unless castle will replace the existing HW and then maybe wait until at least rev 3 of that hardware I will not really spend much money as I will spend more sending them back for replacement. Dont get me wrong I still prefer them in my Car/Truck/Heli and even got almost all version of USB programmer but it might be too early to jump ship just yet. at this point it is more logical to just buy hobbywing oem like plush/blueseries and maybe flash it with simonk than to spend on an expensive but not yet workable. Might as well go all out and go Herkules II.
On the plus side, at least the Multirotor community is getting the attention so more manufacturer might release targeted ESC for us