3-Phase BLDC Motor Controller will Run you $20 in Parts - ZVEIL

3-Phase BLDC Motor Controller will Run you $20 in Parts

by Joshua Vasquez July 29, 2016

If you’re an active shopper on RC websites, you’ll find tiny motors spec’ed at hundreds of watts while weighing just a few grams, like this one. Sadly, their complementary motor controllers are designed to drive them at a high speed, which means we can only hit that “520-watt” power spec by operating in a max-speed-minimum-torque configuration. Sure, that configuration is just fine for rc plane and multicopter enthusiasts, but for roboticists looking to drive these bldc motors in a low-speed-high-torque configuration, the searches come up blank.

The days in the dust are coming to an end though! [Cameron] has been hard at work at a low cost, closed-loop controller for the robotics community that will take a conventional BLDC airplane motor and transform it into a high end servo motor. Best of all, the entire package will only run you about $20 in parts–including the position sensor!

“Another BLDC motor controller?” you might think. “Surely, I’ve seen this before“. Fear not, faithful readers; [Cameron’s] solution will get even the grumpiest of engineers to crack a smile. For starters, he’s closing the loop with a Melexis MLX90363 hall effect sensor to locate the rotor position. Simply glue a small magnet to the shaft, calibrate the magnetic field with one revolution, and–poof–a wild 14-bit encoder has appeared! Best of all, this solution costs a mere $5 to $10 in parts.

Next off, [Cameron] uncovered a little-known secret of the ATMEGA32u4, better known as the chip inside the Arduino Leonardo. It turns out that this chip’s TIMER4 peripheral contains a feature designed exclusively for 3-phase brushless motor control. Complementary PWM outputs are built into 3 pairs of pins with configurable dead time built into the chip hardware. Finally, [Cameron] is pulsing the FETs at a clean 32-Khz — well beyond the audible range, which means we won’t hear that piercing 8-Khz whine that’s so characteristic of cheap BLDC motor controllers.

Curious? Check out [Cameron’s] firmware and driver design on the Githubs.

Of course, there are caveats. [Cameron’s] magnetic encoder solution has a few milliseconds of lag that needs to be characterized. We also need to glue a magnet to the shaft of our motor, which won’t fly in all of our projects that have major space constraints. Finally, there’s just plain old physics. In the real world, motor torque is directly proportional to current, so stalling an off-the-shelf bldc motor at max torque will burn them out since no propeller is pushing air through them to cool them off. Nevertheless, [Cameron’s] closed loop controller, at long last, can give the homebrew robotics community the chance to explore these limits.


Filed under: Microcontrollers

Joshua Vasquez
Joshua Vasquez

Author



Leave a comment

Comments will be approved before showing up.


Also in In The News

Shane Dawson Just Announced He's Engaged But Some People Think It's A Distraction From The Cat Drama

by Razmig Messerian March 20, 2019

The announcement came days after Shane was involved in a controversy where he was forced to deny he'd had sex with his cat.


View Entire Post ›

Continue Reading

17 Impossibly Cool Wedding Ideas You'll Want To Steal For Your Big Day

by Razmig Messerian March 16, 2019

Because it's never too early to start planning.


View Entire Post ›

Continue Reading

Chance The Rapper And Kirsten Corley Got Married Over The Weekend

by Razmig Messerian March 11, 2019

Chance the Rapper is now Chance the Husband!


View Entire Post ›

Continue Reading