Archives: Actuator

My simplest ever PCB

While wiring up the first 3 degree of freedom mammal actuator, I knew I was going to have a need to distribute power to each of the three motor controllers.  Thus, enter my simplest ever PCB.  It is just 4 holes for each of power and ground with traces connecting them.

moteus busbar PCB

moteus busbar PCB

It took an annoying amount of time to actually solder in all the necessary wires, but it was still better than the alternative of a bunch of ring terminals bolted together.

moteus brushless servo open source release

moteus is an open source brushless servo actuator designed for use in highly dynamic robots.  It consists of PCB designs, software, and mechanical designs necessary to construct powerful brushless servos, and link them together into legged robots.  Today I’ve published the full source and designs for all of this work on github under an Apache 2.0 License - https://github.com/mjbots/moteus

moteus r3 controller installed on leg

moteus r3 controller installed on leg

These are the software and designs I have been developing in order to replace the actuators on Super Mega Microbot (which will probably get a new name shortly as well).  It isn’t done, but at least the controller is working well enough now that I have a pre-production verification run of ~30 controllers in flight.  Even still, I expect that further evolution, both on the controller board and in the mechanical systems is inevitable.

Controller r3 and endurance testing

After my self-education on MLCC derating I spun yet another low-volume prototype run of the servo controller.  This one has more than double the effective capacitance by doubling the number of capacitors and by selecting capacitors that have less derating.  I also fixed an incorrect pad geometry for the 6 pin ZH connector, optimized the BOM count a bit and reselected parts that were no longer available.

2x fully assembled controller r3

2x fully assembled controller r3

Mammal geometry leg revision

After getting the first version of the mammal geometry leg working and jumping I worked on a second revision.  At a minimum, I wanted to fix all the problems that required hand machining, however I also decided it was trivial enough to add a reduction ratio to the tibia through the belt drive, that I should just go ahead and do it.  My inverse kinematics calculations showed that this would make a big difference in average power consumption.

Welcome Mini Cheetah!

It is great to see that Ben Katz was finally able to announce his work on the MIT Mini Cheetah!  I’m looking forward to reading their ICRA paper, if nothing else to figure out what motor selection they made and how to design a more compact gearing system.  My current prototypes rely exclusively on belts for reduction, as I decided that my current geared prototypes were too cumbersome.

UPDATE 2019-03-06: I now see that Ben’s thesis in his post is actually his master’s thesis, which fully describes the actuators and robots.  I had erroneously thought it was just his undergrad thesis.  Thanks for publishing so much!

Motor controller heatsinking

The controllers for the improved actuators for SMMB have a moderate amount of power to deal with.  During jump maneuvers they can put 60 amps of phase current into the motor, and I’ve applied for very short intervals over 500W of power to a motor.  The FETs on the board are relatively high performance, but there is still a fair amount of heat that has to be dissipated.

When getting started, I knew I would likely have to do something to get heat out of the board and had a two stage plan.  The first was to heatsink the back of the controller board and second, if that wasn’t enough, heat sink the front of the board.

Mammal geometry 2d inverse kinematics

Now that I have a mammal geometry leg moving, I wanted to get a better feel for what the overall performance would be in various gaits.  I had already derived position based inverse kinematics for Super Mega Microbot, but had no such derivation for force.  Here’s my jupyter notebook with derivations for both position and force (in 2D), along with average power consumption for various forms of straight walking gait with my current draft motor selections.

Initial mammal jumping

I got the mammal geometry leg up on the jump stand, then took it down, switched the femur motor to a BE8108, then took it down, and added a 3rd degree of freedom.  There is still a lot of work to do to get it performing well, and it is pretty clear it won’t have the same vertical jump of the 4 bar linkage, but I think it still might be an overall superior option.

Mammal geometry legs

Before committing to the side-by-side 4-bar linkage leg for SMMB’s new actuators, I wanted to give a try with a more traditional mammal geometry.  That was my preference to begin with, but my initial motor evaluation didn’t find any motors which had sufficient torque without a gearbox, and adding a gearbox in a simple way changed the dimensions enough that mammal geometries weren’t feasible.  I spent some time looking for new options, and I found at least one which was promising, the XOAR Titan 6008.