speed of two DC fans for rotating the wheel in either
direction. Due to the popularity and ease of programming
of the ubiquitous BASIC Stamp microcontroller (BS2), we
originally implemented the project using it. The project
required two BS2s: one for the master controller and one
for the quadrature encoder. Also, a Pololu motor controller
was used to take care of the PWM.

The setup of the controllers is shown in
Figure 4. Notice the two Stamp modules (left)
and the Pololu module (right). The board is
Parallax’s Professional Development Board —
a versatile development and experimentation
platform with a handy additional DB9 RS-232
connector for easy communication with a PC.
Figure 5 shows some additional circuitry
common to both the original and the revamped
(with the Propeller) projects. The infrared
encoding circuitry is on the left. On the right
are the power opto-isolation and drivers for the
motors.

The original system performed quite
adequately and achieved the project’s
requirements. Nevertheless, it was not as
responsive as we desired and needed to be more
robust. You can observe this from Figures 6 and
7 which show the step responses of the ideal and
real systems (i.e., responses [blue] to
commanded changes in direction [red]). Due to
the limitations of the setup used, the speed of
the response of the physical system was not
overly fast and not very smooth. The wheel was
limited to 2. 8 rotations per second (Hz) due to
performance limitations imposed by the
communications bottleneck between the various
subsystems.