GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots Experiment Proposal NASA Reduced Gravity Student Flight Opportunities Program 2004 GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots in the field of Free-Flying Robotic Navigation submitted by The GYRE Project University of Washington Seattle, Washington 98195 Contact: David Bliss +1 206 860 3514 [email protected]Faculty Supervisor: Linda G. Bushnell +1 206 221 6717 [email protected]Team Members: David Bliss, Flyer* Junior, Chemistry University of Washington [email protected]Amelia Lacenski, Flyer Sophomore, Visual Communication University of Washington [email protected]Jennifer Lee Zeman, Flyer** Freshman, Undeclared Seattle Central Community College [email protected]Matthew Dockrey, Flyer* Freshman, Undeclared Seattle Central Community College [email protected]Adam Bliss, Alternate Flyer* Senior, Mathematics Harvey Mudd College [email protected]* Participated as Flight Crew for GYRE 1, July/August 2003. ** Participated as Ground Crew for GYRE 1, July/August 2003. ______________________________________________________ Linda G. Bushnell
40
Embed
Experiment Proposal NASA Reduced Gravity Student Flight …depts.washington.edu/gyre/04propfinal.pdf · 2003-11-25 · GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots
Experiment Proposal NASA Reduced Gravity Student Flight Opportunities Program 2004
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots
in the field of
Free-Flying Robotic Navigation
submitted by
The GYRE Project University of Washington Seattle, Washington 98195
III. Outreach Plan................................................................................................................................................. 36 1. Team’s Objective in Outreach Activities ...................................................................................................... 36 2. Team Website.............................................................................................................................................. 36 3. Description of Outreach Audience................................................................................................................ 36 4. Specific Plans for Activities ......................................................................................................................... 37 5. Specific Planned Events............................................................................................................................... 38 6. Creative / Innovative Approaches for Delivering Activities........................................................................... 38 7. Press Plan .................................................................................................................................................... 39
IV. Administrative Requirements ......................................................................................................................... 40 1. Institution’s Letter of Endorsement .............................................................................................................. 40 2. Statement of Supervising Faculty ................................................................................................................. 40 3. Funding / Budget Statement ......................................................................................................................... 40 4. Institutional Animal Care and Use Committee (IACUC)............................................................................... 40 5. Parental Consent Forms ............................................................................................................................... 40
Note: this document is submitted electronically in RTF (Rich Text Format), as required
by the NASA RGO. However, it is also available in Adobe’s Acrobat (PDF) format at
http://depts.washington.edu/gyre/04propfinal.pdf. Use the username ‘nasa’ and the
password ‘rgo’ to access this document.
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 3 / 40
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 4 / 40
2. Flight Week Preferences
The investigators would prefer the following flight weeks, most-preferred first:
1. Group 6, July 22 through July 31, 2004.
2. Group 5, July 8 through July 17, 2004.
3. Group 4, April 15 through April 24, 2004.
However, because the experiment is a free-float, the investigators emphasize their
willingness to accept any flight week if necessary for scheduling reasons.
3. Advisor / Mentor Request
The investigators are not requesting the services of a NASA Advisor / Mentor.
4. Synopsis / Abstract
The proposed experiment, GYRE 2, is a follow-up to the original GYRE experiment,
flown as part of the 2003 Reduced Gravity Student Flight Opportunities Program. GYRE 1
aimed to investigate the feasibility of visual servoing for navigation in microgravity, and good
visual data was acquired from the onboard cameras during the course of the experiment. The
current experiment, GYRE 2, will use analysis of the previous data to improve our motion
estimation algorithms and evaluate the performance of closed-loop control with visual servoing
for maneuvering in microgravity. Specifically, we will compare the performance of two closed-
loop control methodologies in this unique environment. Closed-loop controllers adjust the
behavior of a system based on the current output of the system in order to reach a desired
output in the future. In this case, the input is motion estimated from onboard cameras and the
desired goal is minimal motion in all six degrees of freedom. The output is the duty cycle to
command to the onboard cold gas propulsion system. Several concerns govern the design of a
feedback system for this application: the input, taken from motion estimation algorithms, is
noisy and may have errors; the kinematics of the robot may be nonlinear; and the platform is
compute-cycle-constrained. Also, the robot operates in a chaotic environment and may at any
time strike a wall or be repositioned by a crewmember. To determine the best method for
control, we will test two closed-loop controllers: PID and Lead-Lag. Our metrics for success are
error and system response -- that is, the deviation of the final speed of the robot from zero and
the time to reach a steady equilibrium. In determining success, error will be considered more
important measure of success than system response, but system response will also be
significant.
5. Test Objectives
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 5 / 40
The experiment is designed to select the most effective closed-loop controller for
orientation and navigation in freefall based on motion estimation input from three orthogonal
cameras and to demonstrate that automated orientation and navigation are possible via visual
servoing and feedback controllers. We hypothesize that a Proportional-Integral-Derivative
(PID) controller will provide the better closed-loop performance than a phase lag compensator,
and that the robot will be able to orient itself and successfully adjust its rotation to bring itself to
a standstill.
6. Test Description
Closed-loop controllers adjust the behavior of a system based on the current output of
the system in order to reach a desired output in the future. In this case, the input is motion
calculated from camera footage taken by the robot, and the goal is minimal motion in any
direction. The output is a decision to fire certain thrusters at a certain duty cycle.
Closed-loop feedback lessens the likelihood of overshooting the goal or getting caught in
an unstable oscillating rotation. Several concerns govern the design of a feedback system for
this application. First, the input, taken from motion estimation algorithms designed and tested
in a previous experiment, is erroneous at times. The interior of the Weightless Wonder is
visually noisy, with many objects moving at independent speeds, resulting in “spikes” in the
motion estimation data. Second, the input is discrete and digital. Many control systems
designed for continuous data rely on second-order data. Any control algorithm used in the
robot will of necessity assume that the rate of change is linear between each set of image pairs
used in motion estimation, and the control loop must be flexible enough that this assumption
will not invalidate it. Third, the control code must be efficient enough to run several times a
second and adjust thrust levels. Last, there is a good possibility that the robot will be bumped,
collide with a wall or be repositioned by a handler. A controller must be able to handle these
outside forces.
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 6 / 40
Noisy vision data
-4
-3
-2
-1
0
1
2
3
4
5
0 2 4 6 8 10 12 14 16
seconds
pix
els
of
tran
slat
ion
X translation Y translation
Figure 1: The robot’s vision data as a team member grabs and jars it. An example of very noisy data a closed-loop control would have to compensate for.
We will test two closed-loop controllers with different strengths and weaknesses to see
which is more effective at bringing the robot to a stop. There are two primary metrics for
success: error and system response. The error is the final speed of the robot – ideally, zero.
System response is the amount of time it takes the closed-loop control to reach a steady
equilibrium. We judge error to be a more important measure of success than system response;
however, in the event that both algorithms succeed at canceling the spin of the robot, we will use
system response as a measure of control effectiveness.
Each of the robot's three axes will have its own closed-loop controller, which will take
input from the two cameras that point perpendicular to that axis (and are thus situated to detect
motion around it). The controller will then decide whether to fire any thrusters on its axis, and if
so, which ones and at what duty cycle.
A. PID Controller
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 7 / 40
Proportional-Integral-Derivative (PID) controllers are widely used in electronic
appliances, and are frequently used to respond to visual input, such as aiming a robotic vehicle
at a specific point on the road (Tsugawa). PID controllers are usually used to aim a closed-loop
system at a specific goal.
PID controllers incorporate three separate controller “bands” to realize the benefits of
all three. The proportional band fires the thrusters at a duty cycle proportional to the robot's
current speed. This alters the speed accurately when the robot is rotating quickly, but can reach
an inaccurate steady state at a speed too slow for it to take action, or an unstable oscillation
between a positive and a negative rotation. The integral band fires the thrusters at a duty cycle
proportional to the sum of the past several speeds, preventing steady-state errors. The
derivative band fires the thrusters proportionately to the speed divided by the current
acceleration. This prevents overshoot; the derivative bands slows down the robot when it
approaches its goal.
We will be experimenting on the ground to determine the correct weights of the P, I,
and D bands, using the Ziegler-Nichols frequency response tuning method (Ziegler). The
weights will depend on thruster response times, drag, inertia, and camera accuracy. The robot
will be hung from a rigid wooden test stand and freely rotating bearings such that it has one
degree of freedom and we can configure the PID controller along that axis. A PID controller will
be installed in the robot and limited to access only the Proportional band. We will increase or
decrease the duty cycle a thruster is fired for each pixel of observed motion until the robot
reaches a steady oscillation – it notices it is spinning clockwise, fires its thrusters
counterclockwise, and is then spinning counterclockwise at the same rate. The thruster fire duty
cycle is called 'ultimate gain' (Gu) and the period of the oscillation is the ultimate period (Pu).
According to Zieger and Nichol's method, the P, I, and D values can be calculated as:
P = .6 Gu
I is integrated over 2/Pu
and D is measured over Pu/8
We expect these experiments to validate large values of P and D and small values of I.
B. Phase Lead/Lag Compensator
Phase Lead/Lag compensators are most often used to shape the long-term behavior of a
system into a desirable equilibrium. They are used in visual servoing to maintain a condition
such as keeping a vehicle a certain distance from the road's centerline (Blasi). They adapt well
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 8 / 40
to systems with a lot of sensor noise because they increase the margin of error and allow a
closed loop to remain stable even in the event of poor decisions caused by bad data, incorrect
modeling, or disproportionate system response.
Like the PID controller, Lead/Lag compensators calculate multiple terms in order to
maximize the benefits and balance the negatives. Phase lead increases the system bandwidth,
leading to a faster system response, but this term is very affected by data noise. Phase lag makes
a system "slower" – more stable, less sensitive to noise, but slower to reach its goal.
We will be conducting ground tests with the robot in one axis to evaluate the best phase
lead or lag for our Phase Compensator controller. We expect to adapt a phase lag in order to
cancel out the spikes from the noisy vision algorithms, using the methods outlined in Xu’s
“Automatic Tuning of Phase-lead and Phase-lag Compensators.”
C. Hardware Platform
We will evaluate these control algorithms using the GYRE Experimental Platform, a
robot built for the 2003 RGSFOP flight and flown during July of 2003. While minor
improvements to the hardware will be made, no major changes are anticipated. For specific
details about the hardware design, please consult the GYRE 2003 documentation available on
our website and the ‘Experiment Safety’ section of this document. A brief overview is included
here.
The robot is composed of three main subsystems: the control system, the power system,
and the propulsion system.
The control system
The robot is controlled from an external laptop. 802.11b wireless networking is used to
communicate with a laptop on the robot itself. This link is bidirectional, allowing commands to
be sent to the robot and data to be sent back. Software on the control laptop provides
visualization of the output of the motion estimation as well as control over the operation of the
robot. This allows us to easily change the feedback algorithm being used for a given parabola, as
well as test thruster operation by using a manual control mode. The laptop on the robot is
responsible for running the vision analysis and feedback control code. Video frames are
acquired from three IEEE1394 cameras. A serial link to a National Instruments Fieldpoint
module allows the laptop to fire thrusters as needed.
The power system
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 9 / 40
The control laptop is powered by commercial lithium-ion batteries. Two lithium-
polymer battery packs manufactured by the GYRE Project provide power for all other onboard
electronics.
The propulsion system:
The robot is maneuvered using 12 cold-gas thrusters. The propellant supply is two 1.4L
tanks of air at 30.0 MPa, each regulated to 1.3MP with a pressure regulator. The supplies are
tied together after the regulator to reduce asymmetrical thrusts from transient drop in pressure.
Two manifolds then provide the propellant to 12 high-speed solenoid valves. For weight and
routing reasons, Nylotube nylon tubing was chosen as the primary piping material. The
thrusters are SS plugs with #59 holes for the throat. By choosing a target granularity in
rotational control, we were able to define the target force of a thruster, and therefore the nozzle
diameter for the chosen pressure range.
7. Justification for a Follow-Up Flight
The proposed experiment, GYRE 2, is a follow-up to the original GYRE experiment,
flown as part of the Reduced Gravity Student Flight Opportunities Program 2003. The previous
experiment, GYRE 1, flew during the week of July 24, 2003. GYRE 1 aimed to investigate the
feasibility of visual servoing for navigation in microgravity. Due to a combination of hardware
failures and insufficient integration testing of replacement hardware, no maneuvering was
completed because the control bus to the thruster subsystem did not function in flight.
However, good visual data was acquired from the onboard cameras. The current experiment,
GYRE 2, will use the results from analyzing this data to improve our motion estimation
algorithms, will use the time available this year to perform rigorous testing of the maneuvering
system, and will test the performance of the maneuvering system and its associated control
(servo) loops using data gathered by visual processing.
We do not anticipate making substantial changes to the hardware platform, but will
make incremental improvements as needed to improve performance. For example, we intend to
substitute a faster onboard computer for better performance. However, the onboard control
software will be extensively rewritten for reliability, testability, and performance. Furthermore,
extensive integration testing and an associated feature freeze will be carried out well before
flight. Also, the electrical (ground loop) issues that led to hardware failure on the first flight will
be corrected and extensive electrical burn-in testing performed.
Because GYRE 1 did not successfully demonstrate closed-loop control and maneuvering,
it is necessary to fly GYRE 2 to determine whether this can be achieved and to compare the
performance of two closed-loop control methodologies in the unique environment of
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 10 / 40
microgravity. Data and experience gathered during GYRE 1 will be used to enhance the viability
of GYRE 2.
The results from GYRE 1 indicate that reasonable performance in motion estimation
can be attained using COTS hardware in real time. The conclusion is that visual servoing may
be an adequate technique for free-fall operations, but the remainder of the control loop must be
validated by further research.
8. References / Bibliography
Abramamovici, Aand Chapsky, J. Feedback Control Systems: A Fast-track Guide for
Scientists and Engineers. Boston: Kluwer Academic Publishers, 2000.
Blasi, R, et al. "Vision-based Lateral Control of Vehicles." IEEE Conference on
Intelligent Vehicles (1997)
Morris, Kristen. Introduction to Feedback Control. London: Harcourt Academic Press,
2001.
Stefani, Raymond, et al. Design of Feedback Control Systems. New York: Oxford, 2002.
Tsugawa, S., et al. "A Lateral Control Algorithm for Vision-Basised Vehicles with a
Moving Target in the FIeld of View." IEEE Conference on Intelligent Vehicles (1998): page
numbers.
Xu, Y. “Automatic Tuning of Phase-lead and Phase-lag Compensators,” International
Journal of Control, 60.4 (1994)
Xu, Y. "Robust Control of Free-Floating Space Robot Systems," International Journal
of Control 61.2, (1995)
Ziegler, J. G. and Nichols, N. B. "Optimum settings for Automatic Controllers," ASME
Transactions 65 (1942).
GYRE 2: Evaluation of Visual Navigation Techniques for Autonomous Free-Flying Robots 11 / 40
II. Experiment Safety Evaluation
1. Introduction
Because the experiment hardware is substantially unchanged from the GYRE 1 (2003)
flight, and in the interests of providing the most current, complete and accurate technical
information available, the final (i.e., used for TRR) TEDP from GYRE 1 is reproduced verbatim
here – that is, in the interests of maximum safety this section, unlike the rest of this proposal,
contains non-original content. This content is purely factual and technical. This content was
produced by, and all rights therein are held by, the GYRE Project, and is reused by permission.
Specific names, dates and details have been corrected for the current proposal, but the technical
content is unchanged. The TEDP for GYRE 2 will be created by making revisions to the GYRE 1
TEDP in order to account for any (minor) hardware changes made.