motion feedback to the biped. The standard IMUs provide
three vectors for linear acceleration, rotation, and the
surrounding magnetic field. In the past, these were
individual sensors but most new chips are integrated
The benefits of the integrated package are reduced size
and cost, as well as requiring less wiring. Sensor fusion is
the key to a good IMU, so we have our own “secret sauce.”
In addition to the IMUs, Watson uses three load cells
on each foot. These provide pressure sensitive feedback to
make it much easier to know where the center of mass is
located in relation to the feet. Almost all other bipeds rely
only on the IMUs to keep balance. Watson is able to
maintain a stable stance much easier. Rather than wait for
the IMU to alert the biped that it has already started to fall,
Watson can keep its center of mass over the feet before it
starts to tip over.
The wireless serial interface serves multiple purposes.
One purpose is to send commands to the biped’s CPU.
These commands can be anything from “Walk Forward
One Step” to “Make Me A Sandwich.” The amount of
autonomous behavior versus full control is dependent on
Another and just as important purpose is telemetry
and feedback. Again, this is dependent on exactly what you
decide to get back. Everything from low level IMU and load
cell data, to a video feed from the camera will help in
debugging and controlling the biped. XBee is our choice for
both the Arduino and Raspberry Pi. It allows control via a
simple serial port and requires very few resources. We have
USB ports and Wi-Fi adapters for optional control over the
A stereo camera gives us a full 3D reconstruction of
everything in its field of view. With a full color image,
we recognize objects, do facial recognition, and map out
our biped’s surroundings. We use proprietary hardware and
software that allows us to use inexpensive cameras.
One of the most difficult parts of building a non-tethered biped is the power source. Only in the last five
years has the battery industry been able to supply us with
enough energy density to build an all electrical biped that
can last long enough to perform even the simplest of tasks.
Higher voltages are typically better for generating more
torque from a servo motor. Higher C or Capacity values are
needed to provide the sudden need for power when the
torque requirements get high.
We prefer the newer LiFePo4 battery chemistry that
produces voltages around 3. 2 rather than the 3. 7 of the
LiPo. This lets us run around 12 volts for most servos.
Gazebo Simulation - Girts
One of the problems we have is figuring out what
servos to use. We use the Gazebo simulator to estimate the
required torques in the joints. Gazebo is a 3D multi-robot
simulator for outdoor environments. It can simulate
physical interactions between the robots and the world, as
well as the sensor feedback for the robots. In fact, it was
used in the first phase of the Robotics Challenge where the
teams programmed a simulated Atlas robot to complete the
Gazebo is an open-source project — one of the projects
of the Open Source Robotics Foundation — so it is available
to everyone. The environment and objects used for the
virtual trials are available as well, so we can download
virtual goodies like a fire hose or a buggy to use in
simulations with our robot.
To run a simulation, Gazebo needs a file describing the
structure of the robot and some C++ code to control the
robot. At this point, we have a robot model consisting of
27 rigid parts and 26 joints between them. In addition to
that, we have some 200 lines of code to play animations
using PID controllers to produce the individual torques for
each of the joints. This mimics the use of digital servos that
have PID controllers inside to control their position.
As a byproduct of that, we can see the amount of
torque required at each of the joints at each point through
the animation sequence. As expected, just standing straight
requires the least amount of torque. Though, while moving,
the torques can be as large as 25 N*m in the knee and
15 N*m in the hip for the current weight of our robot.
So far, we use just a part of the simulator’s abilities. In
addition to movement, it can simulate input from various
sensors like IMUs, cameras, and load cells. If that works
well, we’ll be able to work on the algorithms without the
risk of breaking the real robot.
Stay tuned for more updates on our biped project. SV
40 SERVO 11.2013