1
SKILL
LEVEL
Ringo Educational Guide Rev04.1 ~ Plum Geek
Using Ringo’s Motors
Let’s talk more about the previous experiment. Do you have any idea why Ringo
didn’t go straight even when the same motor speed numbers were used? The
reason is that mechanical systems are never made perfectly. Each motor will run
at a slightly different speed even when driven with the same power source as one
will be slightly more efficient than the other. There are lots of other variables at play
also - the surface may be more bumpy on one side, one motor tip may be getting
better grip on the surface, etc. All mechanical systems have some variation. It’s
possible to minimize the variation (by using very expensive and super accurate
motors for example), but some variation will always exist.
It isn’t very practical to constantly guess and adjust a robot’s speed settings to
make it go in a straight line as you experienced in the last example. For this reason,
most robots require some way of sensing how they are moving. Wouldn’t it be
smart if Ringo could somehow know that he was starting to veer to the right and
automatically adjust the speed of his motors to compensate and resume a straight
path? Well lucky for Ringo (and you!), he has two sensors that can be used for this
purpose. One is called a Gyroscope, which basically allows Ringo to know when he
is turning. The second one is called an Accelerometer, which basically allows Ringo
to know how fast he is moving and how far he has traveled. Using these awesome
sensors is beyond the scope of this lesson on basic motor operation, but check out
the Navigation lesson later in this guide for the full run down.
Mechanical Systems Aren’t Perfect
Let Ringo drive this “straight” line a few times. You’ll probably notice he tends to
veer off one direction or another. Study the Arc Movement example above and
see if you can adjust the numbers you use in the
Motors();
function to make him
go a bit more straight. Hint, if Ringo veers to the right, increase the right motor
number a bit, and if he veers off the left, increase the left motor number a bit.