■ FIGURE 4.
Base of the
Table 1 - Parts List
Item Part# Qty Source Website
Optical Encoder M21AAS0DB03 1 DRC www.drc.com
Encoder Base - 1 - -
Hut HUB-02 1 Lynxmotion www.lynxmotion.com
Propeller 5x3 LP05030 2 APC Propellers www.apcprop.com
Motor 799C 2 Astroflight www.astroflight.com
Acrylic Rect. Bar 443501U.S.Pl astic www.usplastic.com
5. 5" x 1.4" x 0.225"
Acrylic Rect. Bar 44350 1 U.S. Plastic www.usplastic.com
11" x 1.4" x 0.225"
Alum. L Connector ASB-06 4 Lynxmotion www.lynxmotion.com
7/8-9 UNC Screw - 15 Any store -
7/8-9 Nut - 15 Any store -
Electronics and Power Supply
DSP TMS320C6713 1 Texas www.ti.com
DSP Starter Kit Instruments
E3631A 2 Agilent
commands. The motor and its
velocity control can be purchased at
AstroFlight ( www.astroflight.com).
To measure the inclination of the
pendulum, a two-channel quadrature encoder was attached to a Power Supply
custom-made aluminum base as
shown in Figure 4. The sensor we used was produced by
DRC ( www.drc.com). Unfortunately, they do not produce
it anymore. However, US Digital ( www.usdigital.com)
produces similar and more modern products.
We powered the motors using a 12V, 1A power supply.
The sensors and the motor controllers are connected to a
TMS320C6713 DSP Starter Kit board. This project could
be implemented using more simple and less expensive
processing units, as long as they are capable of reading
data from encoders and producing PWM signals.
integration, and derivation. Controllers using modern
techniques make use of linear algebra and mathematical
models of the robots being controlled. Analog computers
are built with operational amplifier circuits, which makes it
extremely hard to operate with vectors and matrices. In the
following paragraphs, we describe how we implemented a
classic digital PID controller on a DSP.
Controlling The Robot
Using One Motor
Digital PID Controllers
A controller is run by an algorithm which makes
decisions on how to manage the behavior of a plant or
system, e.g., a robot. The control system theory is divided
into classic controls and modern controls. Classic techniques
may be implemented using analog or digital computers.
However, modern techniques may only be implemented in
digital computers. Classic techniques use basic mathematical
operations like addition, subtraction, multiplication,
As mentioned earlier, the objective of the system is to
reach a given inclination set point angle. We want to
achieve this as quickly as possible and with the least
number of oscillations. To simplify and learn more about the
behavior of the system, we first operated it with one motor.
Figure 5 shows the control system's negative feedback loop
we implemented. Later on, we'll describe how we added a
second motor to try to increase the robot's performance.
The first signal we need to create is the error signal e
defined in Equation 1:
The error signal tells us how far we are from the
desired inclination angle. Assume we want the robot
■ FIGURE 5.
■ Figure 1(b)