Hoffmann Et Al Quadrotor DASC04

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

THE STANFORD TESTBED OF AUTONOMOUS ROTORCRAFT FOR MULTI

AGENT CONTROL (STARMAC)


Gabe Hoffmann, Dev Gorur Rajnarayan, Steven L. Waslander, PhD. Candidates
David Dostal, Masters Candidate, Jung Soon Jang, Research Associate,
Claire J. Tomlin, Assistant Professor, Stanford University, Stanford, CA.

Abstract STARMAC (see Figure 1) is an outdoor


testbed for testing and validating multi-agent
As an alternative to cumbersome aerial
algorithms and control schemes. It comprises a set
vehicles with considerable maintenance
of autonomous quadrotor helicopters that can
requirements and flight envelope restrictions, the
follow prescribed waypoint trajectories using GPS
X4 flyer is chosen as the basis for the Stanford
and IMU sensing. The testbed could be extended to
Testbed of Autonomous Rotorcraft for Multi-Agent
operate indoors by incorporating vision based
Control (STARMAC). This paper outlines the
position and velocity estimation or other indoor
design and development of a miniature autonomous
positioning systems.
waypoint tracker flight control system, and the
creation of a multi-vehicle platform for
experimentation and validation of multi-agent
control algorithms. This testbed development paves
the way for real-world implementation of recent
work in the fields of autonomous collision and
obstacle avoidance, task assignment formation
flight, using both centralized and decentralized
techniques.

Introduction
Aerial multi-vehicle testbeds are typically
expensive and complex platforms, often requiring
large open spaces to operate. Fixed-wing aircraft
also have constraints on maneuverability whereas (a) A photograph of two flyers.
conventional helicopters are dynamically and
structurally complex, expensive, and hard to
control. In order to circumvent these issues in the
development of a multi-vehicle testbed at Stanford
University, a quadrotor helicopter was proposed as
the base vehicle.
The quadrotor helicopter, or X4 flyer, has four
fixed-pitch rotors mounted at the four ends of a
simple cross frame. Owing to symmetry, this
vehicle is dynamically elegant, inexpensive, and
simple to design and construct. It is an omni-
directional vehicle, and has no almost constraints on
its motion. It can be flown in tight spaces and does
not require large safety distances to operate. These
facts make it an ideal candidate for a versatile and (b) Configuration of the system.
user-friendly multi-agent testbed.
Figure 1: A photograph of the STARMAC.
The goals are to use STARMAC as a testbed well as each of the relevant hardware components.
for recent algorithms in decentralized optimization A description of the software architecture on
[1,2], in which each vehicle in the group will STARMAC follows. The paper then describes the
compute its optimal trajectory, which avoids all flyer dynamics used as a basis for estimator and
other vehicles, online using a Nash bargaining controller design, and continues with the resulting
formulation which assumes only partial knowledge estimation and control techniques implemented on
of the entire system state. In addition, the testbed the flyers. The paper then presents flight test results
will be used for validation of multi-player game for a single flyer achieving autonomous hover
algorithms. As a future goal, there are plans to control. Finally, the future directions of the project
equip each flyer with varied sensor suites, including are outlined, including a discussion of current
cameras, and use STARMAC as a validation theoretical developments to be implemented on
platform for distributed sensing algorithms. STARMAC in the near term.

Previous Work System Overview


X4 flyers have been developed as early as STARMAC currently consists of two X4 flyers
1922, with the first known successful hover and a ground station, and is designed with the
occurring in October of that year [3]. The recent ability to add up to 2 additional flyers and a ground
advent of miniature electronics enabled the creation based computation cluster to the final system. The
of the Roswell flyer, the first RC X4 flyer from flyers are controlled by the central ground station
Area Fifty-One Technologies in 1996, which later through a wireless link, which carries GPS
became the DraganFlyer from RCToys [4]. differential correction data and new waypoint
Keyence [5] also developed two RC sized X4 flyers commands to each flyer, and flight data from each
known as the Engager and Gyrosaucer. The flyer to the ground station (Figure 2). The trajectory
increased availability has spurred interest in their generation may be performed by the ground station
automation. Numerous groups including [6], [7] computer or by the computation cluster, depending
have attempted single vehicle X4 projects, and most on the complexity of the algorithm implemented.
recently, [8] maintained a successful hover of 25 The main goals for STARMAC include the
cm in height using a tethered X4 flyer earlier this ability to perform multi-vehicle coordinated tests in
year. order to validate cooperative and non-cooperative
Multi agent testbeds have been developed by multi-agent control algorithms in real time and in a
many researchers at leading institutions, including real, variable, outdoor environment. Specifically,
MIT [9], Berkeley [10], Caltech [11], and Stanford collision and obstacle avoidance, trajectory
[12] to name just a few. The key distinctions (both determination, task assignment and coordinated
advantageous and disadvantageous) that separate search algorithms are to be tested. Other
our testbed from previous work are: possibilities include extending the testbed
capabilities to perform vision-based navigation, in
• The X4flyer as the type of vehicle chosen, both indoor and outdoor environments.
resulting in a maintenance free aerial
testbed,
X4 flyer
• The ease of testing multiple vehicle
scenarios using such small vehicles, The base vehicle is the Draganflyer III, an off-the-
shelf radio-controlled X4 flyer that arrives with
• The restrictive payload size (< 1 lb.) and onboard gyro-based stability augmentation. The
high vibration environment (specific to flyer can lift approximately four ounces of payload
rotorcraft), resulting in significant design and fly for about ten minutes at full throttle, due to
constraints. a recent upgrade to Lithium-polymer batteries
which have increased both payload and flight
Outline duration and hence have greatly enhanced the
This paper begins with a testbed overview abilities of the system.
which describes the overall system architecture as
System Hardware
Full System Hz, and exhibit standard differential error ranges of
Flyer PCB
1-2m in the horizontal plane. The Sodar has a
sampling rate of 12 Hz, a range of 2 meters, and an
SCI SCI
GPS COMM. BLUE accuracy of 5-10 centimeters, depending largely on
PIC TOOTH
I2C the noise environment and the reflecting surface.
SODAR
CONTROL PWM Finally, the IMU provides gyro-stabilized attitude,
Motors
IMU
SCI
PIC attitude rate, and acceleration information at 76 Hz.
It has been shown to work extremely well in low
vibration environments but loses accuracy as
BLUE USB Ground Station vibration amplitude increases.
TOOTH Pentium IV Pentium IV
SCI Ground
GPS
TCP/IP Comp.
Station Cluster Ground Station
The ground station is a standard laptop
Figure 2: System Hardware Overview, with computer running Microsoft Windows XP and
expanded view of the Flyer printed circuit board National Instruments Labview 7, which handles all
components. SCI refers to serial communication. serial communication to the flyers and the
differential GPS unit, and will manage the TCP/IP
ethernet connection to the computation cluster via
The proprietary onboard electronics unit has built in Labview modules as well. Labview also
been completely replaced by a PCB designed and facilitated the design of a GUI for debugging,
assembled at Stanford, which incorporates all monitoring and remote control of the testbed
sensing and communication functions needed for vehicles. The Bluetooth software module creates
autonous flight. Two Microchip PIC18F6520 virtual serial port connections to each flyer which
microcontrollers (referred to as PICs) coordinate the are visible in Labview, and hence communication
activities of communication, sensing, estimation with all flyers is abstracted to a standard serial
and control on board the flyer. interface, which can be implemented using built
Labview features. Manual flight is performed via
Communications Link standard joystick input to the ground station laptop.
Flight data is relayed to the ground and
commands are sent to the flyers via a Bluetooth Computation Cluster
Class II device that has a declared range of over 300 The computation cluster will involve 1-4 PC
ft, although in practice, data loss occurs as early as computers running Matlab 6.5, which can
150 ft. This is a different class of device from that communicate with each other using Matlab Java
found in household appliances, and consequently libraries. The PCs and base station are connected
has greater range. The device operates in the 2.4 via TCP/IP, and algorithm calculations can be
GHz frequency range, and incorporates band- performed in both centralized and decentralized
hopping, error correction and automatic manners.
retransmission. It is designed as a serial cable
replacement and operates at a maximum rate of
115.2 kbps. Software Architecture
The real time control of aerial vehicles requires
precise timing and robust code design. To perform
Sensors
all control functions onboard the flyer and
The current onboard sensor suite includes the implement a controller with as high a bandwidth as
Trimble Lassen LP – a differential-capable GPS possible, the computations required for the
unit, the Devantech SRF08, an ultrasonic altimeter estimation and control laws must be pared down to
(referred to as Sodar), and the MicroStrain 3DM-G, reasonable efficiency. As such, most of the
a complete three-axis IMU (Inertial Measurement resulting software architecture was selected to
Unit) for attitude detection. GPS updates occur at 1 ensure both the continuous operation of the fixed
real-time control process and a robust enabled for the various serial communications
communications channel with the ground station necessary.
from which user commands originate.
Ground Station
On Board The Labview code running on a Windows
Onboard the X4 flyer, core functionality has platform is inherently multi threaded and non-
been implemented using two PIC processors. The deterministic. However, Labview timing seems to
Control PIC is connected to each of the motors via be quite reliable, and we have found
PWM outputs, to the IMU via a serial port, and to communications with the ground station to be
both the SODAR and the Communication PIC via a limited by the serial data rate much more than by
shared I2C bus. The Communications PIC is the ability of the ground station to handle the
connected to both the Bluetooth device and the GPS incoming data. There are four main types of
sensor via separate serial ports as well as to the threads in the Labview code, and all scheduling and
shared I2C bus. timing is handled via built in functions and
structures. The thread types include: flyer data
receive and display thread (one for each flyer), flyer
Control PIC
command generate and send thread (one for each
The Control PIC software is designed to be a flyer), data logging thread (collects all data), and
deterministic single loop code which polls for GPS differential unit management thread (only one
necessary information from its attached sensors and instance). The GUI displays a tab for each flyer
from the Communications PICs and performs all which display full state information received from
calculations once each loop. This architecture was the flyer, and a tab for monitoring the differential
chosen to ensure accurate timing of the control GPS unit.
outputs to the motors. With such a design, a timing
budget was required in order to ensure all
calculations could be performed each cycle despite Aircraft Dynamics
worst-case communication delays at all interfaces. The X4 flyer can be modeled as a primarily
The loop is timed off the 76Hz continuous IMU linear system for a moderate range of the vehicle
data stream, and cannot wait to reattempt any flight envelope. Since the ultimate goal of
communication if unsuccessful. As a result, none STARMAC was to investigate interaction amongst
of the communication methods can be blocking on vehicles, this simplifying assumption greatly
the Control PIC. reduced the complexity of the control design
problem. A complete nonlinear model is presented
Communications PIC and was used for simulation.
The Communications PIC code services two
serial connections by polling for incoming data, and Forces and Moments
uses an interrupt routine to service the Control PIC Each rotor produces a thrust Ti, a drag moment
communication channel. This avoids blockage of Qi about its axis of rotation, a rolling moment Ri
the time-critical control loop. The I2C bus is driven perpendicular to its axis of rotation, and a drag
by the interrupt routine and receives flight data or force Di in the direction ewi, which is opposite to
provides the most recent ground station command direction of its relative velocity with the oncoming
to the Control PIC immediately upon request. At wind. The drag moments Qi are proportional to the
fixed intervals, the main Communications PIC code rotor thrust, and are given by Qi = KrTi. Let the
reads GPS data and transmits/receives data to/from direction of flight be eW. Let xB, yB and zB denote
the ground station. This architecture was chosen to the body axes. Denote the position vector from the
ensure that the Communication PIC does not center of gravity (cg) of the vehicle to the rotor disc
interfere with the timing of the Control PIC, and to center by ri. Let the free stream dynamic pressure
avoid the possibility of interrupt collisions, which be q∞, the drag coefficient of the aircraft in forward
might have resulted if more interrupts had been flight CD, the reference area S, the mass of the
aircraft m, and gravity g. A free body diagram, axes
and rotor numbering are defined in Figure 3. The
total force F and moment M acting on the vehicle in
the body frame are as follows.

∑ [ −T z
4
F = − q ∞ SC D e W + m g + i B − Di e W ]
i =1
(1.1)

∑[Q z
4
M= i B + Ri e Wi + Di (ri × e Wi ) + Ti (ri × z B )]
i =1
(1.2)
The reason for the four-rotor design now Figure 3: X4 Flyer Free Body Diagram.
becomes apparent. This configuration takes If we make the rather reasonable assumption
advantage of the symmetry in the system and that the STARMAC helicopter is a planar vehicle,
cancels out several moments. The rotors can be then we can further simplify the terms ri ⋅ z B to a
grouped into the front-back pair, and the left-right
pair. Suppose the pairs rotate in opposite directions. simple multiplication by a moment arm l. Further, if
There are then two rotors spinning clockwise and we consider operating points close to hover, then
two rotors spinning anti-clockwise. The yawing we can assume the drag terms Di and the total drag
moments generated by the rotors cancel out to zero. D to be small. We can also assume that the angular
A rolling moment can be generated by speeding up rates p, q, and r are small. Assume that the aircraft
one of the motors in the left-right pair and slowing is symmetric about the x, y, and z axes. Then, by
the other by the same amount. Similarly, a pitching the perpendicular axis theorem
moment can be generated by speeding up one of the I = I xx = I yy = I zz / 2
motors in the front-back pair and slowing down the
other by the same amount. A yawing moment can
be generated by speeding up one pair and slowing
down the other by the same amount. Note that in
each the above cases, the only effect is the
Rotational Dynamics
generation of a single moment. The sum of rotor The moment of inertia tensor I is assumed
thrusts is held constant. diagonal, as described previously, the exact
governing moment equation is given by

In fact, the symmetry effects extend even Iω B + ω B × I ωB = M
further. A single rotor in forward flight also
∑ [Q z
4
generates a moment perpendicular to its axis of = i B + Ri e Wi + Di (ri × e Wi )
rotation, which we denoted by Ri. However, in this i =1
configuration, the rolling moments Ri also cancel +Ti (ri × z B )] (1.3)
out due to the opposite directions of rotation. This
cancellation takes place as long as the net angular If we assume small perturbations about hover,
momentum of all four rotors is zero (this holds at all we make the following approximations: The rotor
times except during transients). Even in this case, rolling moments Ri are negligible. Since the vehicle
owing to small inertias and large moment arms, the is planar and symmetric, the drag terms Di (ri × eWi)
changes in thrust are small, so the differences in only apply on the left-right rotor pair, and they
rotor speeds will be small. The resulting rotor cancel out. The rotor drag moments are given by Qi
rolling moments will be much smaller. For this = KrTi. Let the perturbation angular rates be p, q and
reason, we will neglect the rotor rolling moments Ri r. We now have
in subsequent discussions.
 Since this is near hover, we ignore the drag terms
Ip = − Iqr + l (T4 − T2 ) and use rotation matrices corresponding to the Euler
 angles to get
I q = − Ipr + l (T1 − T3 ) (1.4)

 &x&  0   0 
2 Ir = K r (T1 + T3 − T2 − T4 ) m  &y& = Rψ ⋅ Rθ ⋅ Rφ ⋅  0  +  0  (1.8)
 z   −T 
    mg 
If we also assume that the angular rates are small  && 
and thus neglect their products, the equations
become linear, and we can cast them in matrix form where Rψ , Rθ , Rφ are the rotation matrices
as follows.
corresponding to the Euler angle rotations ψ , θ , φ .
 T1  If these angles are small, then
I 0 0 p &  0 −l 0 −l  

0 I  
0   q&  = 
l 0 −l 0   
T2  &&
x  1 ψ −θ   0   0 
   
 0 0 2 I   r&   − Kr
T 
− K r   3  m  &&
y =  −ψ 1 φ 
0  +  0  (1.9)
 Kr Kr 
T4   z 
 &&  θ
 −φ 1 
 −T    mg 

(1.5)
The body angular rates are easily related to the
State Estimation
inertial Euler angle rates, ϕ& , θ&,ψ& , when the Euler
Attitude and attitude rate estimation is not
angles themselves are small. This is indeed the case required, as it is already performed in the IMU as
if the perturbations from hover are small. Then, the received from MicroStrain. We found these sets of
Euler angle rates are approximately equal to the signals to be both accurate and reliably noise free at
body angular rates. Thus, we get moderate vibration amplitudes, although they do
 T1 
decay at maximum flyer thrust levels. Acceleration
I 0 0   φ&&   0 −l 0 −l   data was quite noisy throughout the flyer operating
   T2
0  θ&& 
0   
regime, and so attitude information is used instead

0 I = 
l 0 −l
T  of direct acceleration measurements in the
 0 0 2 I  ψ&&   K r − Kr Kr − K r   3  estimation of translational acceleration.
T4 
Altitude estimation using a Kalman filter was
(1.6)
necessary in order to determine altitude rate, as it
We observe that the equations are decoupled. This was not sensed directly, and the characteristics of
is the form of equations for rotational dynamics the Sodar sensor proved quite difficult to manage.
used for the inner-loop controller design. The problem lay in receiving false echoes due to
motor noise, and as such, we added acceleration
limited reasonability checks to the data, and
Translational dynamics
selected the first available measurement that
Define the total thrust in the body frame as satisfied the limits from a list of up to 17
T = T1 + T2 + T3 + T4 measurements stored by the unit during each
measurement. Ultimately, an IR sensor for a
If the position vector of the cg in the inertial limited portion of the flight envelop was added to
reference frame is r, the translational dynamics can augment the Sodar signal where possible.
be written as follows
Position estimation uses both GPS position and
m&r& = −q∞ SCD e W + mg + ∑[−T z i B − Di e Wi ] velocity measurements, as well as attitude
information in a Kalman filter to update the position
(1.7) and velocity estimates at 10 Hz. The GPS data is
used to correct for integration bias of the small
angle approximated accelerations derived from the
attitude information.
Controller Synthesis ∂φ
u= x2 + v (1.13)
This section outlines the approach used for ∂x1
control of the X4 flyer. Wherever possible, the
simplest linear controllers were used, and only where v is an arbitrary part of the control input
where the situation required were more complex which will be defined subsequently. Then (1.12)
nonlinear effects considered, as in the altitude becomes
control loop, for example. V& = sv + s ∆( x, g ) (1.14)

Altitude loop control


The altitude dynamics of the STARMAC can Assumption 1: ∆ satisfies the following inequality
be modeled as a double integrator:
|| ∆( x, g ) ||∞ ≤ δ ( x) + γ | g | (1.15)
x&1 = x2
(1.10) where the continuous function δ ( x) ≥ 0 and
x&2 = u + ∆( x, g )
γ ∈ [0,1) are known.
where x = [ h h&]T is the state, u is the control input,
g is the gravity constant, and ∆ is the matched Using the above assumption, (1.14) becomes
uncertainty. To design a robust state feedback
control to stabilize the system to the origin ( x = 0 ) V& = sv + s ∆( x, g )
(1.16)
in the presence of the uncertainty ∆ , a sliding mode ≤ sv + | s | ( δ ( x) + γ | g |)
control is applied.
Take the arbitrary control input v as
Suppose the first component of (1.10) can be
stabilized by a smooth state feedback control v = − K ( x) ⋅ sign( s) (1.17)
x 2 = φ ( x1 ) , where φ (0) = 0 , i.e., the origin of
where
x&1 = φ ( x1 ) is asymptotically stable. To proceed
with the design of the sliding mode control, set the K ( x) ≥ δ ( x ) + b, ∀ || x || ≤ r0 (1.18)
sliding surface s as
for some b > γ | g | , and sign(⋅) is the signum
s = x2 − φ ( x1 ) (1.11) nonlinearity. Then,

If s = 0 , then x 2 = φ ( x1 ) and the state x1 V& ≤ − K ( x ) | s | +δ ( x ) | s | +γ | g || s |


(1.19)
approaches the origin asymptotically. Therefore, ≤ − ( b − γ | g |) | s |
u can be designed to bring s to zero in finite time
and maintain the condition s = 0 for all future This inequality ensures that any trajectory starting
1 2 away from the manifold, s = 0 , will reach it in
time. Using V = s as a Lyapunov function finite time and will remain confined to the manifold
2 s = 0 [13] once achieved.
candidate, we obtain
The sliding mode controller (1.17) contains the
 ∂φ  discontinuous nonlinearity sign(⋅) , which is known
V& = s  x&2 − x&1 
 ∂x1  to cause chattering when applied to real systems.
(1.12) One simple approach to eliminate chattering in the
 ∂φ 
= s  u + ∆ ( x, g ) − x2  altitude control output is to approximate the signum
 ∂x1  nonlinearity by a saturation nonlinearity [14]. This
is achieved by smoothing out the control
Take the control u as discontinuity in a thin boundary layer. As a result,
the control input v is taken as
 s in the control scheme, leading to some altitude
v = − K ( x ) ⋅ sat   (1.20) deviation during maneuvers.
ε 

where
y if | y | ≤ 1
sat ( y ) = 
 sign( y ) if | y | > 1
and ε is a positive constant. The resulting the
control input u for the altitude loop control is given
by
∂φ s Figure 4: STARMAC in flight
u= x2 − K ( x) ⋅ sat   (1.21)
∂x1 ε 
Future Direction
Attitude loop control STARMAC stands to become a unique testbed
An inner loop attitude controller was designed that will enable the implementation of many
using for the simplified second order rotational cutting-edge multi-agent control techniques in an
dynamics model described by equation (1.6), using easy-to-use real-world environment. The system has
standard LQR techniques. The cost matrix Q was been designed to accommodate 4-6 flyers. As the
chosen such that angular deviations were penalized individual flyer design nears completion, additional
more than rate deviations. Also, the pitch and roll flier are being constructed Implementation of the
loops were penalized identically, with a reduced waypoint tracking algorithm and of the computation
penalty on the yaw deviations. This controller was cluster is to be completed.
implemented in floating point onboard the X4 flyer. Once completed, the aim is to implement
The control inputs for each rotor corresponding to decentralized optimization techniques that allow the
pitch, roll and yaw are computed separately, and flyers to act as individual agents in a system, and
then added to the altitude input and the nominal coordinate, or compete, to achieve system level
thrust to yield the net thrust value for each rotor. goals such as collision avoidance and formation
This controller worked well at low thrust levels, but flight. Such work will see individual decision
performance at higher thrust levels was degraded makers communicating in the computation cluster
owing to the increased vibration levels. This was to arrive at team decisions.
solved by implementing a softer attitude controller
with lower costs on attitude deviations. This An exciting field of research that could be
improved noise rejection at the cost of tracking investigated using the STARMAC platform is that
performance. of vision based navigation and control. There
remains sufficient payload available on the current
flyer design to incorporate a small wireless camera,
Flight Test Results and such a development project would further
Figure 4 shows a STARMAC flyer in the air. expand the opportunities available for discovery
Figure 5 (overleaf) shows altitude, roll, and pitch using the STARMAC testbed.
data for a STARMAC flyer in hover, tracking
commanded altitude and attitude. The test was run
outdoors, and attitude deviations reflect manual
attitude command inputs to counteract wind
disturbances. The altitude command was held
constant. However, net vertical thrust changes with
attitude and this effect is not currently accounted for
Altitude
250

200

150
z (cm)

100

50

0
0 5 10 15 20 25 30 35 40 45
Time (s)

Pitch
20
Angle (degrees)

10

-10

-20
0 5 10 15 20 25 30 35 40 45
Time (s)

Roll
20
Angle (degrees)

10

-10

-20
0 5 10 15 20 25 30 35 40 45

Time (s)

Figure 5: Onboard Controller Test Data


Systems, In Proceedings of the 11th International
References Conference on Advanced Robotics, Portugal, June
2003.
[1] G. Inalhan, D. M. Stipanovic, and C. J. Tomlin.
[13] Khalil, Hassan, 1996, Nonlinear Systems,
Decentralized optimization, with application to
Prentice-Hall.
multiple aircraft coordination. In Proceedings of the
[14] Slotine, Jean-Jacques and Weiping Li, 1991,
41st IEEE Conference on Decision and Control,
Applied Nonlinear Control, Prentice-Hall.
Las Vegas, December 2002.
[2] S. L. Waslander, G. Inalhan, and C. J. Tomlin.
Decentralized Optimization via Nash Bargaining.
Kluwer Academic Press, 2004.
[3] P.Lambermont, Helicopters and Autogyros of
the World, 1958
[4] Website, http://www.rctoys.com
[5] Website, http://www.keyence.co.jp/hobby/
english/saucer.html
[6] Kroo, Ilan et al., The Mesicopter: A Miniature
Rotorcraft Concept, Stanford University, July 2000.
[7] Castillo, Pedro, Dzul, Alejandro, and Lozano,
Rogelio, Real-Time Stabilization and Tracking of a
Four-Rotor Mini Rotorcraft, IEEE Transactions on
Control Systems Technology, Vol. 12, No. 4, July
2004.
[8] Pounds, P., Mahony, R., Hynes, P. and Roberts,
J., Design of a Four-Rotor Aerial Robot, in Proc. of
2002 Australian Conference on Robotics and
Automation, Auckland, November 2002.
[9] Richards, A., Kuwata, Y., and How, J.
Experimental demonstrations of real-time MILP
control, In Proceeding of the AIAA Guidance,
Navigation, and Control Conference, 2003.
[10] T. J. Koo, J. Liebman, C. Ma, B. Horowitz, A.
Sangiovanni-Vincentelli, and S. Sastry
Platform-Based Embedded Software Design for
Multi-Vehicle Multi-Modal Embedded Software,
Embedded Software, Alberto Sangiovanni-
Vincentelli and Joseph Sifakis (Eds.), Lecture Notes
in Computer Science, Springer-Verlag, 2002.
[11] Lars Cremean], William B. Dunbar, Dave van
Gogh, Jason Hickey, Eric Klavins, Jason Meltzer
and Richard M. Murray, The Caltech Multi-Vehicle
Wireless Testbed, in Proceedings of the 41st IEEE
Conference on Decision and Control, 2002.
[12] Christopher M. Clark, Eric W. Frew, Henry L.
Jones, and Stephen M. Rock. An Integrated System
for Command and Control of Cooperative Robotic

You might also like