Monday, December 28, 2020

Portable Power


Portable Power - in a rechargeable format

I am not so sure why it took me so long to come to a portable power solution. I now have two power packs to provide me with 12V and 8V. I have built these power packs to use 18650 cells. These cells can be easily recharged with an XTAR (cheap) charger. I 3D print the packs and used salvaged battery connectors. With a bit of soldering and hot glue, I now have two more options for power. (finally!)

When I started building robots, I used rechargeable power banks. These worked very well, but were limited to just 5V.  I had a second bigger power bank that provided 5V and 12V, but it is quiet heavy. I wanted to have more options, but I did not want to invest in expensive hobby LiPos and chargers - although they look extremely tempting.

A local Maker recommended the XTAR charger and over the counter 18650 (used by all the Vapors!).  I just need to have some packs for them. Finally, over this Christmas break I have invested the time and made my packs.  They could be A LOT nicer - My craftsmanship has waned a bit more than I realized! ;)

Wednesday, November 18, 2020

Robot Wolves - Totally Not Evil!!

Yeah, this is 'Totally' not evil.

A Japanese town has deployed robot wolves in an effort to scare away bears that have become an increasingly dangerous nuisance in the countryside. Credit - The Guadian - Japanese town deploys Monster Wolf robots to deter bears ►

Saturday, September 26, 2020

Milli (#9) - New Mount for Helix - and Crawling Video!

 Milli - a Bio/Math inspired crawling single actuator robot millipede - now with teeth!

Milli - Millipede robot - now with teeth

From the last post, you may have noticed that I had tried to print some "nodes" as a possible improvement to Milli the millipede. Well, that thought was not as successful as I had hoped. There turned out to be no flexibility and too much tension on the helix. With this in mind, I reopened the milli design and set to work on some design updates:

  • Offset the motor
  • add a gear reduction to the motor
  • add a bearing to main helix mount - to remove force on the motor itself
  • try out a new power source
  • Add teeth - because we need to add more Nightmare Fuel!!
CAD Design - new Motor Mount and Gear

The new design is a new motor mount, with drive gear, a bearing mounted main gear, and new 12V "shore" power.

3D printing gears remains a dark art to me, but here you can see that they are functional. In this print, I have used a larger Modul of 1.5, this makes larger teeth. I believe for my quick 3D prints this is a more accommodating solution (more tolerance for rough prints!).

I applied a liberal amount of hot glue to attach the pre-existing helix mount to the newly printed main gear. That may qualify this for a frankenstein prototype, no doubt.

Sloppy gears? certainly room for improvement - on the next iteration.  The thicker base layer print creates an uneven gear surface.

Another issue was the 'pede wheels' that I kept from the previous build. They function as wheels, however in the video you can see that the left wheel consistently unwinds and falls off, Doh!

Ready to Test!  Let's get crawling!

Milli - Robot Millipede on a colorful background

For this round of testing, I am using "shore power". The robot is tethered to a 12V DC source. I reused a momentary switch - also from a printer - in order to easily turn on and off the robot.

Testing goes as expected.  The motor gear hold, which is surprising.  However the front left pede-wheel falls off frequently.  The motion of the helix, continues to be smooth.  I believe the addition of the bearing smooth this rotation off, taking load off the motor.  

Video on YouTube:

Next Steps:

With this success, time to think of what would be in the next iteration.
  • Onboard 12V power supply
  • micro-controller with PWM output
  • Motor Driver board
  • remote or autonomous operation (Min1 project may come first)

Sunday, September 13, 2020

Current Thinking in the Robot Labs

These are things currently being thought about at the TENRA Robot Labs...

Late nights and early mornings in the lab!

3D Printing

Ah... the beauty of 3D printing for robots!   It is the magic of having an idea in your head, which leads to, a sketch on paper, a drawing in CAD, and then a solid print - or many prints:

1st - A quick sketch on paper

2nd - A quick draft in OpenSCAD

3rd - a quick print - a solid Object!

Finally - Repeat as needed

I really love this aspect of Rapid Prototyping. I find it one of the more enjoyable steps in robot building. At each step in the process, you can find opportunities or issues with your design. It is fantastically easy to go back a step or two and add improvement to the design.

A good example is in this very simple build of "Node", pictured above.  "The Node" is an experiment in the Milli Project. I wanted to explore the ability to move in two directions on the helix in order to improve the mobility of the millipede robot. 

At each step in the process, I found that new aspects of the build became evident.  Even in the first print, i realized that I need more of the 'feet' to touch the printer bed. A quick change to parameters in the CAD, and it solved the problem. Finally, a quick print of three copies of the nodes. I assembled them and was able to perform my tests. The result was that the solution would not work as is due to certain bindings. I was having a difficult time imagining this complex relation in my head.  The rapid development of the concept provides a fast path to success or failure, both are acceptable!

Min1 - what should it do at night? 

Min1 is the Minimal Viable Robot for the Totally Not Evil Robot Army.  But, I am just thinking, what can this robot do at night.  It is just sitting around, with nothing to do.  Idle cycles are the devil's playground, right? So perhaps it needs a few teeth and a sensor to seek things (like ankles) out and make stabby motions.  ;)

Min1 - outfitted with ultrasonic sensors and stabby teeth

Min1 ready to Roam - seek and stab

Min1 Robot - as a Franken-prototype ready to go


Tilt, the balancing - 2 wheel Robot, is sitting prominently in the TENRA Robot Labs. It is patiently waiting a more powerful power source.  Twelve Volts DC is not going to cut it, it needs more power to keep the recycled printer motors from stalling.  I have just recycled a 19V power adapter that I will use as 'shore power' for the next round of testing. 

I am really liking Tilts new 'eyes'!

Saturday, August 22, 2020

Robot RoundUp - Mid 2020 Edition

Here are some interesting finds from the internet about Robots of today:

The Totally Not Evil Robot Revolution has Arrived

National Geographic Magazine has an excellent feature read on how robots are entering out lives. It covers many different aspects of the social impacts of robots in work and life. It is a very nice read:  The Robot Revolution has Arrived


Festo continues to amaze with their bio inspired everything!-- in this case a bio mimicked bird, the BionicSwift!

And their Bionic Mobile Assistant:

These robots are starting to look more and more like the helper bots of the future. Tools that assist. Perhaps Festo is becoming a better 'Boston'?

Practicality / Pragmatism:

Continuing on the pragmatic path. Stretch by Hello Robot is also ready to enter the domestic robot market.

Stretch by Hello Robot

And on the not so Totally Not Evil side...  Autonomous Warfare.  :(  Our humanities advancement in the ability to automate everything will always be driven (it seems) by the need to build more effective machines for warfare.  Here is a good video summary by Digital Trends:

Back to the safety net of the economy! Here is a more commercial perspective, In this view point from Forbes Magazine on Where Robotics Are Heading

Finally back to this! - THE SNATCHER!

A team at  the Seoul National University of Science & Technology has developed an ultrafast biomimicry Chameleon Tongue! (article in IEEE) This is a great vision on how robots can snatch packages for robot delivery of our future.  of course in the Totally Not Evil Robot world, it could be used to enhance porch piracy! (gads!)

How could you NOT want a Robot with a 30" Tongue?!?

Monday, August 10, 2020

Tilt! - A Balancing Robot (#6) - Prototype Construction Complete

The planned 3D printing is complete, here is a view of the assembled Prototype of the Tilt! Self Balancing Robot.

Tilt! -3D Printed - Recycled Printer - Self Balancing Robot (prototype)

Now onto the wiring and testing!

Monday, August 3, 2020

Tilt! - A Balancing Robot (#5) - Initial wiring and software for testing

The first leg is completed and structurally sound enough to start testing the wiring and software needed for control.  (hmmmn... did I say leg?)

Tilt! Balancing Robot - first prototype leg

over the past weekend, I found many many videos on YouTube for Balancing Robots. There seem to be dozens of them!  The majority of these are copies of other projects, just re-implemented. Even less of these videos support code to help in the own development.  And with inspection of these codes, the majority are copies of the same code. It makes me wonder, who is the originator of this code base that is getting copied so many times?

Cargo Programmer

A Cargo Programmer is a person that copies code and scripts off the Internet and tries to build a system without fully understanding it. In 2020, this seems to be massively popular. Sites like StackExchange and the many Instructables and Git repos make this almost too easy.  The biggest concern is that these 'cargo programmers' do not understand the logic and activity behind the code.

The origination of the term is from the concept of Cargo Cults. Now we see that same concept being applied to 'magic technology' that is appearing on the internet. Same concept goes back to nomenclature of 'Script Kiddies', who were n00bs! that just cut and paste computer hacking code without really being a Computer Hacker. The point is, examples and code on the internet is great - but please take the time to understand them as you use them!

Mea culpa

OK OK! after all that ranting - for my first tests, I will do the same thing!!  Just to get things started and to learn more about the systems. However, I did take time to examine each of the libraries and code to make sure I understood it. As well as had to do some minor adaptation for my hardware.

In searching the internet and git, there are a few copies of the exact same code. I found that Makertut, has the code on git, and even though it is clearly copied, it is cleaner than some of the other code sets (even from James Bruton) for this project.  Then I was surprised to find it was a copy of kurimawxx00.  So, who was the original, (Frank?) honestly I don't know and I don't think it was either of these.  They both contain code for a motor controller LMotorController - in which I can not find the original creator.  It is simple code to control output on a L298N H-bridge, but why have special code for that?

Special shout-out, through my internet searches I have found that Dinh Tung “Tony” Le, AKA mechatony, Gets some special credit. He gets extra credit as he had to build all of the libraries from scratch in order to get school credit for his project. Tony has removed his code from the internet. But the explanations of the difficulties of this task are spelled out in his videos. this concept was often overlooked by the 'copies'.

#include "PID_v1.h"
#include "LMotorController.h"
#include "I2Cdev.h"
#include "MPU6050_6Axis_MotionApps20.h"

The result after all of this, I was able to install and compile the basic libraries for MPU6050, I2Cdev, and PID (and LMotorController - roll eyes!). The guys that wrote these libraries are awesome for their support of the maker community.

With some (also copies) example code, I was able to get my test leg moving and reacting to the pitch change of the MPU6050.  The motor accelerated with the larger pitch and reversed when pitching backward.  This is the basic proof-of-concept needed at this stage of the rapid prototype.

Next steps

Print out and assemble the second leg of the Robot (see image), and then design the chassis or mounts for the microcontroller, mpu6050, and L298N H-Bridge. for a battery I will be using a Talentcell 12v/5v battery bank.

Tilt! Balancing Robot - Prototype layout

Here you can see all of the components that will be part of Tilt.  Notice that the motors, belts, rods, rubber stoppers, and screws are all recycled from Printers.  Also, the bearings are from discarded inline skates.

One can dream...

Sunday, July 26, 2020

Tilt! - A Balancing Robot (#4) - Engineering the Wheel Mount

Perhaps this takes a little more thought than I first expected.  I am trying to build this robot using scrap parts from printers, standard components, and in this case the bearings and axels from a pair of inline skates. WELL... that lead to some issues with the wheel mount. Today, I am re-engineering this design and building the wheel mount.

First attempt to test the motor, belt and pulley

Here is are the parts. I was trying to rig them up to quickly test how much backlash I would get from the old printer motors and belts.  However, the axel and wheel were so wobbly that I could not make it work.  (In addition, my plans to use a piece of scrap pressed steel to attach the motor are dashed - I do not have the necessary tools to cut large holes in the steel.  so back to the 3D printer!!) Also, you will see, I am re-using the printer's belt drive. This is about 70cm in length.

Wheel, bearing, and axel from an in-line skate wheel

The design problem is how to use the already dimensioned Axel and Bearings. Since I am reusing this part, I must work around it's length. It is longer than what I will need. In addition to this concern, I will need a way to secure the axel to the base and wheel mount of the Tilt robot. This is not typically a problem with balancing robots that us stepper motors since they have more direct control of the wheel. However, I firmly believe that the weight of the robot should not be directly applied to the motor. Thus I am using bearing and separating the load from the motor.

Checking the alignment (modulus) of the belt and the 3D printed pulley

I sketched out the arrangement of the bearings and spacers and axel. It is necessary to 'plug' the bearing into both the wheel/pulley. While redesigning this aspect of the wheel, I took the time to inspect the belt to make sure the pulley's teeth aligned with the belt. This is based on the modulus I calculated. It seems to match.

On the frame side, i repeated the bearing housing, creating a mount that holds the bearing but provides freedom for the axis.  I am sure this will have another review in future robot designs. After printing, I will test out this new design.

Tilt - Wheel base design (in red) - OpenSCAD

For the frame, I am still unsure what materials I will use for the 30cm between the wheel axel and the motor. since I do not know, yet, I designed a simple 3D printed frame with 10mm separate holes for M3 bolts. With this design I will have the flexibility to use anything, and just bolt that to the structure.

Next Steps:

The next steps are to print out the new design and assemble a single wheel for testing. this structure will allow me to clamp the wheel to the table and test the tension on the motor. I will be looking at how much backlash or slipping the belt will have.

The next physical design step will be to find a way to connect the motor mount to the wheel mount.


Here is the printed wheel mount.  The scrap steel would not work very well. I currently lack the tools to shape it and bore holes through to attach to the motor mount. 

I did have two rods of medium length from printers I salvaged.  With the ability to print out parts, I printed a rod mount. The mount is adjustable using the rubber rollers that are already on the steel rods. (now i just need two more for the other side!)

A workable prototype for one side of the balancing robot

Monday, July 20, 2020

Tilt! - A Balancing Robot (#3) - Shaping up the prototype design

The parts are sitting on the workshop surface, at least most of them. I thought I had some blockers in the sense that I *thought* I would need to have an encoder to make this work. Now, it occurs to me that the control system doesn't really care how much the wheel has turned, it will be controlling completely on the feedback from the motion sensor!  of course!

Finding a good wheel and drive mechanism has been blocking me. This is starting to take some shape in my head/design (at least for the the prototype).  I will be using 2, 12-18v brushed DC motors from recycled printers. The motors have a nylon 'pulley' on the spindle that is used to drive a notched belt from the printer.  I have found the belts in my pile of parts.(!) The belts solve two problems - 1) I will be able to step down the rotational rate of the motor, and 2) I will be able to directly drive the wheels.

Tilt - drafting out ideas on paper first -> then to OpenSCAD

I sketched out my thoughts above. Here you can see the motor I am planning on using including the nylon pulley.  I counted the number of teeth (Zahn) on the pulley. You can calculate out the modulus of the pulley gear by dividing the reference diameter (7mm) by the number of teeth (24). Thus I am using the modulus of 0.3 in my designs.  Als on the right is the belt I plan on using - also from a recycled printer.  below you can see my first attempts to test-print a pulley of modulus 0.3!

First attempt to print at m=0.3, the gcode was not precise enough. I reduce the extruded width for external walls to 50% and this helped considerably.

On to new challenges

I have no wheels that I would like to use for this prototype. given the need for a 3D printed spindle for the belt, it might be best just to custom design and print the wheels as well. Then I can integrate the spindle for the belt, a wheel of good size (10cm diameter) and integrated bearing.  From the draft above on paper, I made this concept on OpenSCAD.

The green portion will be the wheel. It has a very wide hub designed to be fitted with a skate bearing. The Yellow portion will be the pulley for the belt. It will be screwed to the side wall of the wheel. The hub of the pulley is slightly smaller than the wheel to lock in the bearing.

3D Printing

Here are the results of the design, printed.  It took some test prints to get the resolution correct for the fine detail of the pulley.

Tilt - 3D printed wheel and pulley for balancing robot

Tilt - 3D printed wheel and pulley for balancing robot

Next Steps:

I am looking now for a piece of metal about 30+ cm long that I can fabricate into the leg of the balancing robot. These recycled printer motors need to have something thin and strong to bolt into. this can be achieved with 3D printing - but I think metal will be a better solution. 

Once the leg material can be found, I will be testing the pulley, motor, and tensioning. I have to be careful of any slippage of the belt.

Saturday, July 11, 2020


A Dream of Totally-Not-Evil-Robot-Army Minions!!

Minions - and not the D'zney ones!  Every Mad Scientist needs them.  Especially if you are going to build a robot army. Minions can be the foundation for any robot army, the very lowest of the 'foot soldiers'. What would be the robot equivalent?  Perhaps the most simplest robot configuration. In 'Agile' speak: the Minimal Viable Robot?

Robotic Minion with a Manipulator Arm

The Minimal Viable Robot, would have the minimal number of parts, and be the easiest to replicate. It could be small, one would say Miniature. A minimal, miniature robot - the first one in the Robot Army.  It will be a Min-i-on, and mini-one, a Mini1!

Lets build it!!  Because this Robot Army needs many many more robots!  It needs Mini1s!!

Mini1 sketches


What is the bare-bones, minimalist robot, that still has some kick?  I would propose:

  • 2 Wheels
  • 2 Small Motors
  • a Motor Controller
  • Microcontroller
  • and a Battery

That sounds really basic. but, if it is going to do something - like to serve butter - in needs at least a sensor and a manipulator.

Here are some parts I have laying around the Totally Not Evil Robot Army Lab. This is a really cheap build with these parts. The Wheels are from an old printer. The motors came off of a chotsky fan I collected from a trade fair. The motor driver is a little overkill L298N but will do the job. The microcontroller is a Arduino Pro Mini (clone) about $5. and for power perhaps this battery bank battery 5V.  For a sensor, I have a common ultrasonic ranger HC-SR04.  And if I go for an arm, I will use simple micro-servos. In the bottom corner is a ESP32, which would be more powerful, and provide wifi/bluetooth - perhaps for future versions.

Potential Parts for a Mini1 - Robot Minion

Alright!  Let's get started:

Mini1 - first CAD sketch - OpenSCAD

Friday, July 10, 2020

Crappy Robot Stories #1: Secondhand Love

 Crappy Robot Stories...

The front door to the shop slammed open andValk stalked through, block trench coat swirling around his ankles. He marched through the store, past the ranks of metallic soldiers standing motionless, to the counter at the back of the store. Beneath the display cabinet, rows of motherboards and semi-organic AI’s sparkled in the lights.
              Val slammed both hands down on the glass.
              “I demand a refund!” he shouted at the clerk behind the counter. Electricity sparked off of the stray white hairs that stood out in all directions from his head like a puffy cloud.
              The clerk behind the counter didn’t flinch from the sudden noise. Instead, he slowly dog-eared the page of Evil Today that he was reading before closing the magazine and laying it off to the side. Finally, he raised his bored gaze to the puffing scientist on the other side of the counter.
              “Welcome to Secondhand Evil, how can I help you today?” he intoned.
              “I demand a refund for… for… for that!” Valk shouted again, pointing behind him. As the clerk looked, a metallic head with a single eye widget poked around the villain’s back.
              “Hello,” the robot whirred. “My name is Bobs, minion robot 001.”
              “What seems to be the problem?” The clerk asked.
              “It’s supposed to be an evil robot. I specifically asked for the Villainy 2.0 software to be installed, and it hasn’t been!”
              “All our models come standard with the henchman software Villainy 2.0 installed. Why do you believe your model does not?”
              “It doesn’t do anything evil!”
              The clerk sighed and pulled a complaint form out from beneath the counter. “Can you give me some examples?” he droned.
              “I told it to prepare the lab for experiments, and it cleaned my lair. The floors are freaking sparkling!”
              The clerk looked up, one eyebrow raised.
              “I had just the right amount of evil chaos! It’s too neat now! It interferes with my evil creativity!” Valk screeched.
              Behind him, gears whirred as the cycloptic robot peeked around its owner again. “There were roaches.”
              That’s not the point!”
              “Okay, it cleaned without command. Anything else?” The clerk asked.
              “Yes! I identified a homeless man that would make the perfect minion, and I sent Bobs out to recruit him. The guy was recruited…. to an IT firm as a manager! He now makes six figures and can comfortably support his family!”
              The clerk rolled his eyes and began to scrawl on the form. “Failure to follow directive to necessary level. Anything else?”
              “He made me contribute to the middle class. I loathe the middle class!”
              “Yes, yes, I know the Evil Rulebook as well. Anything else?”
              “He’s constantly baking cupcakes. My entire lair smells like vanilla!” Valk’c chest heaved as he turned to glare at the robot.
              The clerk looked at the robot as well. Bobs held up a pink box and offered it to the clerk. He opened it up to a perfectly frosted cupcake, wrapped in a lacy doily.
              “Oookay, that’s a new one,” he said slowly. “Are they any good?”
              They’re delicious!” Valk screeched. “And they aren’t even poisoned? What kind of villainy is that?”
              “I see.” The clerk closed the box and stored it beneath the counter. He pointed up above his head, at the large sign suspended from the ceiling.
              All purchases are final. NO REFUNDS, NO EXCHANGES.
              “Oh, come on, you have to do something for me!” Valk insisted. “What about in-store credit?”
              “Nope. All sales are final. You acknowledged the risks of buying a second-hand robot when you signed the contract with us. Would you like to see your signature? I can pull up the agreement right now.”
              “I want to see your manager!”
              The clerk rolled his eyes. “I mean, I can call her if you want me too, but she said she was working on her death ray and she was going to use anyone who interrupter her as target practice.”
              Valk glared at the clerk, who stared back with the dead gaze of someone who had spent way to long in retail.
              “Fine!” he snapped, spinning around. “Bobs, we’re leaving. Se if I ever come to this stupid store again! I’m going to tell everyone how terrible the place is!”
              The robot waved one, then raced off after its master with a whirr of gears.
              The clerk sighed, shook his head, and flicked his magazine open.
              “Cupcakes,” he sighed. “Really?”

Monday, July 6, 2020

Tilt! - A Balancing Robot (#2) - Online Inspiration

There are certainly influencers that I am using while developing this idea. Here are links to their videos, libraries, and project pages.

From the Internet:

James Bruton

He is loud and British, but you have to admire his enthusiasm!

OzBot - Red

These are nice robot builds. and good inspiration and guidance.

Of course - this guy's proto-robot army.  From his 2018 blog: Electronics and Robotics.

Open Source Libraries:

I am benefiting from some OpenSource libraries

Jeff Rowberg’s  I2CDev

Brett Beauregard’s  PID Library

More General Inspiration and help:

Homofaciens project page on using Transmissive optical sensors to create DIY servos.

DroneBot Workshop video description of using the MPU-6050.  As well as a nice project page.

This looks pretty detailed too..  kas on the Arduino Forums has a nice long thread on the topic of Balancing Robots.  I certainly liked his disclaimer: 
"I invented nothing
I read A LOT and went by trial and error"

Monday, June 29, 2020

Tilt - A Balancing Robot (#1) - Thinking about it

Tilt will be my next robot with a focusing on implementing Dynamic Control in Robotics.

There are a good number of videos on YouTube from 2 years ago on how to build a "self-balancing robot". I do find these fascinating, and I would like the experience of building one - of course as cheaply as possible with as many reused parts as possible.  ;)

I am challenged by the engineering aspects of this type of robot.  Perhaps because ... that an inverted pendulum was offered as a senior project when I was an undergraduate. I passed on it due to the complexity at the time, and lack of good motors and controllers. Yes, I am a bit haunted that I *should* have done this project. So, I feel like I should re-live my Control Engineering days and build this robot! :)

I feel that these type of control will be standard in most future interesting robots. I sense that we are still at the early aspects even though Dynamic movement has been a part of the current stable of robots. we are starting to see combinations of quadrupeds -and- wheels. (Soon, I would not be surprised to find reaction wheels also included for more stability and agility.)  

However - after all that is mentioned, these types of developments are still very uncommon in the DYI Robotics space!

Moving forward with this robot, the numbers and types of parts are limited.  Here is what I am considering at this point:

  • 2 wheels, recycle, reuse, or print
  • 2 motors - 9-12v from a recycled printer
  • 2 belts - to drive the wheels and do some gear reduction/torque
  • 2 encoders - used to measure the output of the motores
  • 1 motor driver for DC brushed motors (L298N)
  • 1 micro controller - EPS32 or Arduino Nano or other
  • 1 motion sensor - MPU-6050
  • 1 battery solution - drives the motors, powers the electronics
What else would I need?

OK - Time to scavenge for parts!  and think about an encoder solution.

Thursday, June 25, 2020

Intergalactic Planetary (gears)!

Just doing some thinking and sketching on how best to use Recycled Printer Motors in my robots. 

One of the Totally Not Evil Robot Army motivations, is to make robotic creations by recycling parts from existing technology. To RE-USE, is the best approach to waste management. -- and also of course, because I am really, really cheap.  ;)

Recycled Printer Motors

Most computer printers have these nice (DC Brushed) Motors, but they tend to be too fast and with out a lot of usable torque for my projects. This would be expected, since the printers they come from have a lot of built in gear reduction.  For power, they typically require 12-18v. These are not light either, they have some weight to them. In order to utilize these printer motors, they will need a gearbox to both reduce speed and increase the torque - which is exactly what gearboxes do for motors.

The Planetary Gear is a good choice for a compact way of converting the motors output into a stronger more useful force.

The Planetary Gear is made up of 4 pieces, The Sun Gear, one or more Planet Gears, The Carrier (connecting Planet gears) and on the outside, the Ring.

Named Parts of a Planetary Gear Box

The configuration of a planetary gear box can vary based on specific needs. Any one part of the system can be 'fixed' which allows for the other two parts to become the Driver (input) and the Output.  

Example:  by fixing the Ring and attaching the drive motor to the Sun, it makes the Planetary Carrier to become the Output and move.  Likewise, you could fix the Carrier and attaching the drive motor to the Sun Gear, would cause the Ring to be the output and move.

Here is a quick 3D print or sketch of the Planetary "Wheel".  Here the motor and Carrier are the same part. This allows the motor to directly drive (input) the Sun gear.  Since the planets are fixed, the Ring will move. I have built the Ring gear to be the inside of a wheel.

Planetary Wheel
Motor Mounted on the Planetary Carrier

On the reverse side you can see the planetary gears encased in the wheel. The Sun Gear is removed.

Complete "Planetary Wheel"

Gear Reduction with Planetary Gears

The actual gear reduction and torque increase can be calculated based on the number of teeth in the gears or the radius of the gears (given a specific modulus).  The equations are similar to basic gear equations, however there are differences due to the planetary gear set.  here they are:

For the gear ratio of a basic gear 

    i = Z2 / Z1 

where Z are the number of teeth on Gear 1 and Gear 2

For the Planetary Gear, we have the number of teeth - Zs for Sun Gear and Zr for the Ring. The number of teeth on the carrier does not matter, since it is derived and removed from the equations. (also, it does not matter how many actual planet gears you have).

the equation for planetary gear reduction is:

    i = 1 + (Zr / Zs)

Here is a nice little summary video of deriving the gear-ratios of Planetary Gears.

(Update:  here is a nice summary sheet from the MIT FAB LAB)

Testing the 3D printed gear box

I was able to make this wheel work pretty much out of the print.  I did have some difficulty in the motor shaft 'stripping out' the inside of the sun gear if the gears were blocked.  this is the same problem encountered on the Milli project.  I believe some glue may help hold the gear in place, but this does not seem to be a sustainable solution. I would have difficulty replacing the gear when needed.

As a result, The Sun gear would slowly lift off of the motor spindle when operated at full speed.  (A failure you would not want if the Wheel was part of an inter-planetary rover.)

Looking forward, at these brushless motors, I believe a belt and tensioner system may work best. Most of the motors I have, already have a nylon belt gear on the motor spindle.  I will try to use this combination in one of my next projects.


Hi all, this post was somewhat delayed due to some personal health issues.  I am doing much better now, thanks!  I have some upcoming work on a balancing robot - using Printer Motors that I am currently considering.  More to Come!  Thanks! Doug