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