The Tinymovr BLDC Driver Packs in the Power, Thanks to the Overo PAC5527!

The Tinymovr from Backyard Robotics packs in the power, thanks to its choice of the PAC5527 integrated motor control MCU!

Tom Fleet
6 years agoHW101

BLDC motors are all around us.

From powering our camera gimbal-equipped quadcopter drones (there's six motors alone in one of those setups!) — to finding place within our home and garden tooling and accessories, these brushless motors leave few places that the conventional, brushed DC motors is favored these days.

Brushing off our differences

For those of you who haven't had much experience with BLDC motors, perhaps it is best to start with a recap of what's what when it comes to working with coils and windings.

Before brushless; there was brushed.

A conventional brushed motor consists of a set of coils, wound around a rotating armature, which sits inside a magnetic casing.

I current flows in one direction through the coils, the resultant electromagnetic field will interact with the field of the permanent magnet, which results in the coils and spindle rotating, as the magnetic fields attempt to align.

If you can sequence the flow of current through the motor winding, so that they are sequentially energized with the correct polarity, the spindle will continue to rotate in that direction!

This sequencing seems tricky, but the solution is simpler than it sounds! The coils are wired to a set of rotating contacts, that are arranged around the spindle. You can seem them flickering past in the animation above, but let's look at this single coil example below.

As the spindle flips 180 degrees, the contacts flip, and the current flows correctly, for the given orientation.

This whole system relies on being able to make good electrical contact to the coil contacts, as they whizz by at speed. This is achieved by using spring loaded graphite or metal "brushes", that lead to the name brushed motor!

As clever as mechanical commutation is, it's always going to struggle to achieve the efficiencies we desire in modern power budgets. Those sliding contacts generate heat due to friction, and also bear the characteristic of one day maybe needing to be replaced.

Brushless changes things up a bit. It's still the same core idea, but everybody's changed places! Now, the coils are fixed in place, and sequenced electronically. The magnets are now acting to rotate the spindle, moving in response to the varying fields of the stationary coils as they are flipped back and forth in polarity.

This has some immediate obvious benefits! For a start, far less friction - means less heat, and greater efficiencies. And as the force of a motor is limited only by the strength of the field you can develop, you are now free to up the ante. It's easier to pass higher currents, now that you don't have to worry about arc welding your contacts.

Set phases to <num>

If you want to really pump up the power, you need to pack in a few more phases! Simply put, you now have multiple sets of coils (phases), arranged in pairs, equally spaced around the motor, with multiple sets of magnets for each phase to interact with (poles). Depending on your application, going for many poles can offer finer positioning of the rotor.

If you're more about power,you might not care for such control, instead, choosing to drive a few phases at higher current, with a beefier windings. The hobby RC aircraft world has transformed since the introduction of such brushless motors, with their huge power to weight ratios allowing for quadcopters and ducted fan models that appear to defy conventional flight parameters!

So as you have probably worked out, you need a little bit more than a DC power source to spin up one of these multi-phase motors. And while there are a world of controllers to choose from — in the format of hobbyist ESC modules — there are only a few truly open designs that allow for application specific tweaks, like high torque, low speed operation, or the need for precise feedback from your specific Hall effect or rotary encoder.

What designs are available have generally originated from electric vehicle control — long boards, scooters, small buggies — and are not hugely suitable for the size and weight budgets of all but the largest of quadcopters.

There's a huge amount to pack in to the board, not only the controller that must decide when and for how long to drive each phase, but also you need to cram in the hefty FETs that are needed to switch such high currents. There's the usual need for the gate drivers that allow the meager MCU I/O to trigger those FETs to switch cleanly, so they don't spend too much time in their non-linear phase of conduction. It's can be a bit of a squeeze to lay out all those parts when space is in short supply...

Backyard Robotics to the rescue!

The Tinymovr, from Yannis Chatzikonstantinou over at Backyard Robotics, is able to pack all of this functionality into a tiny board, with space to spare, thanks to its use of the Qorvo PAC5527 — one of a range of parts to recently hit the supply chain, that integrates a powerful MCU, along with gate drivers, charge pumps, DACs, comparators and everything else needed for motor control, into a single SoC — leaving you free to focus on the physical layout of your design, as you see fit.

Tinymovr showcases just how integrated a system this part really is, with the QFN-48-packaged PAC5527 occupying a mere 6mm² of the total 40mm² board area, the remaining active component area is pretty much comprised of those massive FETs and passives. That's going to make the BoM a breeze to handle!

With a powerful Cortex-M4F, clocked at up to 140MHz, there's not only plenty of power for computing the parameters required to correctly drive the power stage to spin the motor as desired, but more than enough resource left over to implement fast control interfaces, with the Tinymovr able to accept commands over both UART and CAN hardware interfaces.

CAN, normally an interface found in more industrial applications is starting to become more commonly place in high-end hobbyist applications. With the recent Adafruit STM32F405 Feather also offering a CAN peripheral to play with, there's not a lot standing in the way of seeing what it CAN do for your application!

With a good amount of flash to work with also, Tinymovr can firmware can accommodate operation in torque, velocity or position modes, using field oriented control (FOC).

Absolute positional feedback is achieved through the use of the MA702, a 12-bit digital contactless angle sensor, which is used to track a Neodymium magnet that is attached to the motor shaft.

Beyond it's clean design, and clever component choice, there isn't a huge amount of technical detail to take away from this project at the moment. That's unfortunate, for now but we're sure that Backyard Robotics has plans to release the design once they have satisfied their goals to release this board as a complete product.

Until that point, we suggest checking out the project page, along with keeping an eye on the Backyard Robotics blog for more inspiration along this project path!

Tom Fleet
Hi, I'm Tom!I create content for Hackster News, allowing us to showcase your latest and greatest projects for the world to see!
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles