Control Logic for Automated Aerobatic Flight of a ... - CiteSeerX

9 downloads 1150 Views 224KB Size Report
sachusetts Ave, M.I.T. Room 35-223, Cambridge, MA 02139 gavrick@mit.edu. ... Description of MIT's Aerobatic. Helicopter .... at which the notched plant achieves 45 degree phase. 2 of 8 ..... graduate students Kara Sprague and Alex Shteren-.
AIAA 2002-4834 Control Logic for Automated Aerobatic Flight of a Miniature Helicopter

AIAA Guidance, Navigation, and Control Conference and Exhibit 5-8 August 2002, Monterey, California

V. Gavrilets ∗ I. Martinos † B. Mettler ‡ and E. Feron § Massachusetts Institute of Technology, Cambridge, MA 02139 In this paper we describe the control logic that enabled a small-scale unmanned helicopter to execute a completely automatic aerobatic maneuver. The logic consists of steady-state trim trajectory controllers, used prior to, and upon the exit from the maneuver; and a maneuver logic inspired by human pilot strategies. Extensive flight tests with this control logic demonstrated smooth entry into the maneuver, automatic recovery to a steady-state trim trajectory, and the robustness of the trim-trajectory control system toward measurement and modeling errors. This approach can be extended to a variety of maneuvers.

Introduction

of more advanced maneuvers.

Miniature helicopters with a stiff hub allow expert R/C pilots to perform aggressive maneuvers, like axial roll, hammerhead, Immelman and split-S. The high maneuverability inherent in such small-scale rotorcraft1 can be useful for an unmanned surveillance helicopter in a confined environment, such as a mountain valley or a city. In order to control an agile vehicle from a remote location, a significant level of autonomy has to be incorporated into the flight control system. Until now, the aerobatic capability had not been achieved in autonomous flight. Our group at MIT has demonstrated an entirely automatic axial roll with an X-Cell 60 helicopter.2 This result builds on our previous efforts: we developed an avionics package for an aerobatic miniature helicopter,3 developed and validated a nonlinear dynamic model that adequately describes the helicopter in aerobatic flight,4 and devised human-inspired maneuver execution strategies based on recorded time histories of pilot commands and state variables during several maneuvers. After a brief description of the helicopter, avionics and available control modes, we will describe the longitudinal-vertical and lateral-directional control systems employed for trim trajectory tracking. Next we describe the human-inspired control logic,5 designed for the implementation of aerobatic maneuvers. We will focus on the roll maneuver, which was successfully demonstrated in flight. Finally, we explain how this approach will be used for automatic execution ∗ Ph.D.

candidate, Laboratory for Information and Decision Systems, Massachusetts Institute of Technology, 77 Massachusetts Ave, M.I.T. Room 35-223, Cambridge, MA 02139 [email protected]. Author to whom all correspondence should be addressed † M.S. candidate, [email protected] ‡ Post-doctoral associate, [email protected] § Senior Member AIAA, Associate Professor of Aeronautics and Astronautics, [email protected]

Description of MIT’s Aerobatic Helicopter The helicopter features a 5 ft diameter hingeless main rotor with a Bell-Hiller stabilizer bar.6 Total weight of the helicopter including the 7 lb avionics box is 17 lbs. The helicopter is equipped with an electronic governor, which maintains the rotor speed at 1600 rpm. The sensor package includes an inertial measurement unit (IMU) with three gyros and three accelerometers, a GPS receiver, a barometric altimeter, and a triaxial magnetic compass. The avionics package is described in detail in our earlier publication.3 Our current flight control system allows the modes of operation shown in Table 1. In the “manual” mode the pilot commands the collective and cyclic pitch deflections on the R/C transmitter sticks, as well as a setpoint for a yaw rate feedback controller. In the “rate tracking” mode the pilot commands all three angular rates and the collective pitch. In the “velocity/heading rate command - altitude hold” (VHRCAH) mode the pilot commands turn rate, forward, side and vertical velocities or engages altitude hold. In the “hover hold” mode the helicopter maintains GPS position, pressure altitude, and magnetic heading. Finally, the pilot can initiate an automatic axial roll maneuver by activating a switch on the remote-control transmitter.

Longitudinal-vertical controller The command variables are the body-axis forward and inertial vertical velocities. The pilot commands forward speed in the range of -2 to 15 m/sec by foreaft deflections of the left stick on the remote control (this stick is used to command collective pitch in the “manual mode”). The stick is not spring-loaded, and the pilot uses it as a trim setting for velocity hold, without actively controlling the speed. Longitudinal deflections of the spring-loaded right stick are used

1 of 8

Copyright © 2002 by the author(s). Published by the American Institute of Aeronautics and Astronautics, Inc., with permission.

Table 1

Longitudinal Lateral Directional Vertical

Autopilot Modes for MIT X-Cell Helicopter

Manual

Rate Tracking

VHRCAH

Hover hold

Lon. Cyclic Lat. Cyclic Yaw rate Collective

Pitch rate Roll rate Yaw rate Collective

Forward velocity Side velocity Turn rate Altitude/rate

Position Position Heading Altitude

to command altitude rate or to engage altitude hold. This command structure allows changes in speed and altitude, and at the same time relieves the pilot of the tasks of controlling vertical and longitudinal channels for the rest of the flight. Linearized longitudinal-vertical dynamics

Based on flight experiments, longitudinal and lateral dynamics of the X-Cell are sufficiently decoupled4 to design separate feedback controllers. A linear model of the longitudinal-vertical dynamics was obtained by an analytical linearization of the nonlinear equations of motion around a steady turning flight at a constant altitude. The state vector of perturbations from the trim  T conditions is Xlon = u a1 w q θ , where u is the perturbation in the body axis forward speed from the trim speed Ue , a1 is the longitudinal flapping angle of the main rotor, w is the body Z-axis velocity, q is the pitch rate and θ is the pitch angle. The vector of control input perturbation values T  , where δlon is the longidutiis Ulon = δlon δcol nal cyclic pitch, and δcol is the collective pitch of the main rotor blades. The equations of motion are given in Eq. 1: g a1 − Ue tan Θe q u˙ = Xu (u − uw ) − cos Φe −g cos Θe θ a1 1 ∂a1 w − ww 1 ∂a1 u − uw − + (1) a˙1 = τe ∂µ ΩR τe τe ∂µz ΩR Kδlon 1 ∂a1 −q + δlon + δcol τe τe ∂δcol w˙ = Zu (u − uw ) + Zw (w − ww ) +  Zqht + Ue q − g cos Φe sin Θe θ + Zcol δcol q˙ θ˙

=

Ma1 a1 + Mwht (w − ww ) + Mqht q

=

cos Φe q

Here Φe is the trim value of the bank angle; Θe - the trim pitch angle, which is determined by the trim solution, ΩR is the main rotor blades tip speed, uw and ww are projections of wind speed on body axes. Aerodynamic coefficients, or stability and control derivatives, are obtained by linearization of the nonlinear model near the selected equilibrium point, 1 ∂X(Ue ,Φe ) e.g. Xu = m . τe is the effective time con∂U stant of the rotor, determined by the stabilizer bar aerodynamic and inertial properties.4

Model reduction for control system design

To make use of the robustness properties of the linear quadratic regulator, a measurement of the full state vector is needed. When this is impossible, an estimator with a significantly higher bandwidth than the open-loop plant dynamics is known to provide good robustness properties in practice. Forward velocity, ascent rate, pitch angle and pitch rate can be either measured or reasonably accurately estimated in real-time, either by an extended Kalman filter or a combination of complementary filters.3 Rotor flapping angles are difficult to measure. The estimator for the flapping angles would rely significantly on the knowledge of the open-loop dynamics, which would lead to the loss of controller robustness. Instead, we decided to use a rigid body approximation of the longitudinal-vertical dynamics. However, the flapping state participates in a lightly damped fuselage-rotor mode.7 We used a notch filter on the longitudinal cyclic to eliminate potential gain margin problems with the controller design based on the reduced-order model.8, 9 With the notch filter the attitude rate dynamics can be approximated by a first order transfer function.8 The reduced 4th order dynamics then should approximate the plant with the notch filter on the longitudinal cyclic. The equations of motion for the reduced order model are u˙ w˙ q˙ θ˙

= Xu (u − uw ) + Xwmr (w − ww ) − g cos Θe θ  mr δcol δ + Xcol + Xqmr − Ue tan Θe q + Xδmr lon lon  ht = Zu (u − uw ) + Zw (w − ww ) + Zq + Ue q −g cos Φe sin Θe θ + Zδlon δlon + Zcol δcol  = Mumr (u − uw ) + Mwmr + Mwht (w − ww )  mr + Mqmr + Mqht q + Mδmr δ + Mcol δcol lon lon

= cos Φe q

(2)

Stability derivatives Xwmr , Xqmr , Mumr and Mwmr can be calculated by using a static relationship instead of the differential equation for flapping in Eq. 1. There is only a negligible addition to the forward speed damping derivative Xu . The rate damping due to the main rotor can be derived from the quasi-steady approximation, however it would result in a significant phase lead compared to the actual cyclic-to-rate transfer function augmented with the notch filter. Therefore, the damping derivative Mqmr was chosen to match the frequency at which the notched plant achieves 45 degree phase

2 of 8

lag.8 This provides a conservative, but adequate model for a high-bandwidth design with a linear quadratic regulator. mr mr Control derivatives Xδmr , Xcol and Mcol arise from lon the eliminated flapping differential equation. The longitudinal cyclic control derivative Mδmr was chosen to lon produce the same steady state response from the pitch cyclic to the pitch rate as the original plant. Control system design

To guarantee zero steady state error in tracking forward speed and altitude rate the reduced order state vector was augmented with the integrators, which resulted in a new 6-dimensional state vector and corresponding state and control matrices. The equation for the forward speed integral error is: u˙ i = ucmd − u

(3)

The linearized equation for the altitude rate integral error is V˙ hi

= −

Vhcmd − u sin Θe + w cos Θe cos Φe   sin2 Θe cos Φe θUe cos Θe + cos Θe

The feedback gains for this 6×2 system were calculated with a linear quadratic regulator approach. Diagonal Q and R matrices were used in the quadratic cost function: Z ∞  xT Qx + uT Ru dt (4) J= 0

The controllers were designed for the following six trim points: 0, 3, 6, 9, 12 and 15 m/sec body axis forward speed. All design cases were based on a trim bank angle of 45 degrees; which was the maximum commanded bank angle. Based on simulation studies with the full model which includes flapping state and the notch filter we eliminated several gains. To improve the transient response a feedforward from the forward speed command to the longidutinal cyclic was added. It was implemented as the pitch angle command proportional to the speed command: θ cmd = G1 · ucmd . Two additional feedforward signals were used to facilitate the enforcement of kinematic constraints. In steady turns the aircraft has to maintain body axis pitch rate, proportional to yaw rate: q cmd = rcmd tan φcmd

(5)

The collective pitch was modified as a function of commanded pitch and bank angles to reduce altitude loss during rapid accelerations or hard banks: ff = δcol

 1 ss 2 2 δcol φcmd + θcmd 2

(6)

ss where δcol is the value of the collective angle low-pass filtered with a first order filter with 10 seconds time

constant. Figure 1 shows the resulting control architecture. The control laws were designed to the following specifications: the damping ratio of at least 0.5 for the two oscillatory modes with the frequencies of less than 10 rad/sec; rise time for the altitude rate step response of no more than 1 second; rise time for the forward speed step response of no more than 2.5 seconds. A constant-gain proportional controller was designed for the altitude hold. The requirement for the altitude hold was maximum ±3 meter error during 45 degree banks. The rate of change of the forward speed command was limited from 5 m/sec/sec for deceleration to 2 m/sec/sec for acceleration to avoid rapid changes in the gains of the lateral-directional controllers, scheduled with forward speed. Prior to flight tests the controllers were extensively tested on MIT’s hardware-in-the-loop simulation.3 Flight test results for longitudinal-vertical controller

Flight testing showed that the longitudinal-vertical closed loop dynamics were predicted well by the simulation. Figure 2 shows the forward velocity and altitude time histories during rapid acceleration and deceleration maneuvers. Note that the forward velocity estimate is corrected by the GPS measurements that arrive once a second, with 1 second latency. We also found that there is an additional effective 0.3 second latency contributed by the internal estimator used in the particular GPS receiver we used. After compensation3 this resulted in 1 m/sec jumps on average due to corrections. Pressure altitude is measured with a resolution of 2 feet. The pitch angle estimated through gravity aiding is within 5 degrees of the true value based on the estimate obtained in postprocessing. During this flight winds up to 10 knots were recorded. The control law proved to be robust to such measurement errors and disturbances.

Lateral-directional controller The lateral controller was described in detail in our previous publication;8 here we provide a summary of its main features. A block-diagram of the controller is shown in Figure 3. Command variables

We chose the yaw rate and the sideslip velocity as the command variables. The yaw rate command is mechanized as a turn rate command such that it acts as the yaw rate command at hover and as an effective bank angle command in forward flight. The control logic uses the tail rotor to turn at hover, and primarily the lateral cyclic in forward flight, utilizing the tail rotor for the turn coordination. The pilot commands turn rate by a sideways deflection of the right stick

3 of 8

G1

Pitch angle command G5

qcmd G5

G6

G2

u

ucmd 1/s

G3

Longitudinal-Vertical Dynamics + Notch filter on cyclic + Servo Dynamics + Analog anti-aliasing filters

Cyclic

G4

Altitude rate Command

Coll 1/s

G7

w

Pitch rate Pitch angle

Altitude rate

Collective feedforward

G8

Fig. 1

Longitudinal-vertical control architecture

and the tail rotor pitch δr . The rotor torque variation due to collective pitch deflection δcol leads to a change in yawing moment, and is treated as a disturbance. Another source of disturbance is wind side velocity vw . The equations of motion are

15

m/sec

10 u u

5

cmd

0 −5 0

5

10

15

20

25



30

Yv (v − vw ) + g · b + We p + (Yr − Ue ) r

+

60

g cos(Θe )φ + Yδr δr 1 v − vw Blat b˙ = − b − p − Bµ + δa (7) τe ΩRmr τe p˙ = Lb b + Lev (v − vw ) + Lr r + Lδr δr r˙ = Nv (v − vw ) + Np p + Nr r + Nδr δr + Nδcol δcol φ˙ = p + tan(Θe )r

hbaro hcmd

m

58

56

54 0

=

5

10

15 time, sec

20

25

30

Fig. 2 Forward velocity and altitude time histories during rapid acceleration and deceleration

(lateral cyclic in manual mode), and side velocity by a sideways motion of the left stick (yaw rate command in manual mode). Both stick deflections are springloaded. During most of the flight the pilot uses a single left stick sideways motion to control turn rate of the helicopter in cruise flight, while the autopilot performs turn coordination, and maintains altitude and forward speed. Linear model and control design

X-Cell’s lateral-directional dynamics are adequately described by a linear model with five states and two  T inputs. The state vector is x = v b p r φ , where v is the side velocity, b is the lateral rotor flapping, p is the roll rate, r is the yaw rate, and φ is the roll angle. The control inputs are the lateral cyclic δa

The values for aerodynamic coefficients were obtained by an analytical linearization of the nonlinear equations of motion4 around straight and level flight. As in the longitudinal case, a notch filter on the lateral cyclic was applied to alleviate potential gain margin problems due to the lightly damped fuselagerotor mode,8 and allowed the use of the rigid-body approximation for the design. Integrators were appended on the command variable tracking errors; LQ gains were computed for the resulting 6 × 2 system. The gains were designed for six forward speed values from 0 to 15 m/sec. The controller gains were switched once a new design point velocity was reached; hysteresis logic was used to prevent limit-cycling. Continuity of the control surface commands during gain switching (as well as during switching between different controller modes) was ensured by resetting the integrator states to appropriate values. This is possible when the control system has at least as many integrators as control surface inputs. Let the vector of control surface

4 of 8

U/g

asin

F33

K14

K11 vcmd

1/s

K15

K13 1/s

v

cyclic Lateral-Directional Dynamics + Notch filter on cyclic + Servo Dynamics + tail Analog Antialias rotor

K25

rcmd

K12

K16 K26

p

r

roll K23 F34

K22 K21 K24

Fig. 3

Lateral-directional controller structure

commands be computed according to Eq. 8. u = G p xp + G i xi

(8)

where xp are physical states, xi are integrator states, Gp and Gi are the corresponding gain matrices. Then upon initialization of the control mode, the integrator states can be initialized as shown in Eq. 9. xi = G−1 i (u − Gp xp )

(9)

where u is the last control input used by the previous control law before the switching. This gain scheduling logic proved superior to linear gain interpolation, especially in transition between hover and forward flight, when lateral-directional gains change radically to compensate for change in plant dynamics. At hover the feedback gain from the integral of the yaw rate error to the tail rotor pitch is large, while in forward flight this gain is small and the gain of the integral of the yaw rate error to the lateral cyclic is large. This makes the helicopter behave naturally, using appropriate control effectors for changing heading both in hover and in forward flight without any explicit mode switching required from the pilot. The turn rate command was artificially limited to preclude a commanded bank angle above 45 degrees. A feedforward logic was used to assure a crisp bank angle response in forward flight, and a fast yaw rate response in hovering flight.8 The control laws were tested from hover to 15 m/sec forward flight; the pilot performed a number of 45 degree banks. The closed loop response was adequately predicted by the simulation.8

Maneuver execution logic The logic for automatic execution of an axial roll was inspired by the human pilot’s strategy for executing the maneuver.5 Based on input and state time

histories recorded during a series of manual aerobatic maneuvers, we made the following observations: each particular type of maneuver is largely repeatable; the pilot uses few continuous feedbacks during the maneuvers; most of the pilot’s actions can be described by piece-wise constant or piece-wise linear functions, with the switching times determined by the vehicle attitude. The composition and complexity of each maneuver type can differ significantly. However, the necessary control functionalities are common to most of them. Our goal is to develop the logic that will allow implementation of a variety of maneuvers. We chose to start with the axial roll because it is a relatively simple maneuver. The pilot’s strategy for implementing the axial roll can be described as follows.5 Usually just prior to the maneuver the pilot slightly pitches up the helicopter to make use of the translational lift while inverted. To initiate the roll the pilot briskly ramps up the lateral cyclic to full deflection, and modulates the collective roughly as a cosine of the bank angle; this keeps the thrust pointing up when the helicopter is upside down, and generates little thrust when the main rotor disk is perpendicular to the horizon. When the helicopter reaches a specific attitude (≈ −50 degrees), the pilot brings the cyclic to neutral. Recorded state trajectories during an axial roll maneuver performed in the “manual” mode are given in Figure 4. Essential for the autonomous implementation of most types of maneuvers are tight angular rate tracking controllers. The rate tracking loops were singleaxis proportional-integral controllers. Notch filters on cyclic commands were used to attenuate the lightly damped fuselage-rotor mode7 and permit higher bandwidth. To ensure that these rate tracking controllers provided adequate performance, we had our pilot perform a number of axial rolls with the rate tracking

5 of 8

200 p, deg/sec φ, deg

0 −200 0 10 0 −10 −20 −30 0 −40

0.5

1

0.5

1

0.5

1

1.5

2

2.5

3

1.5

2

2.5

3

2

2.5

3

θ, deg

−60

ψ, deg

−80 0 5

1.5 coll, deg cos(φ) ⋅ δ

col

0 −5 0 60

0.5

1

1.5

2

2.5 altitude, m

3

0.5

1

1.5

2

2.5

3

50 40 0 16

u, m/sec

14 12

0

0.5

1

1.5 time, sec

2

2.5

3

Fig. 4 Recorded state trajectory during a manual axial roll

loops; his strategy remained the same. Based on these results, we generated reference trajectories for the angular rates. The pitch and yaw rate commands were zero throughout the maneuver. The roll rate trajectory approximated an actual trajectory during manual axial rolls: 0.3 second linear ramp up to a maximum commanded value of 165 deg/sec, next a constant command until the helicopter rotated by 310 degrees, next a 0.2 sec linear ramp-down to zero commanded roll rate, followed by 0.2 seconds coasting time at zero roll rate command to arrest the rolling motion after the maneuver. We decided not to use the Euler attitude angles during aerobatic maneuvers because of known singularities in case the helicopter unexpectedly reached +90 or -90 degree pitch angle during the maneuver. We used an approximate roll angle obtained by integrating the body axis roll rate after the maneuver initiation. This approximate roll angle was used to determine the time of the ramp-down start, as described above. Collective angle, which largely determines the rotor thrust, was modulated as a function of the approximate roll angle as well. This strategy results in a profile that is close to the pilot’s actions during the roll:  min trim (10) · cos φ, δcol δcol = max δcol

trim where δcol is the trim collective angle in forward flight. We limited the negative collective angle to min δcol = −3 (full travel is from -10.5 deg to 10.5 deg) to retain sufficient control authority during inverted portion of the flight; this approach is also used by pilots. The entire flight sequence used to demonstrate the automatic roll maneuver goes as follows: (1) the pilot takes off manually, and engages the “velocity/heading rate command/altitude hold” mode at a safe maneuver altitude (above 50 m); (2) the pilot commands the forward speed setpoint used for the maneuver execution (12 and 15 m/sec were used). From that point

the helicopter is flown with a single left sideways stick turn rate (or, equivalently, bank angle) command. The autopilot maintains the altitude and forward speed setpoints. (3) After performing a number of turns to attain the desired course, the pilot brings the helicopter to level flight by commanding zero turn rate (releasing the spring-loaded stick). (4) He then engages the entirely automatic axial roll sequence by a switch on the R/C transmitter. The helicopter performs the roll, and exits the maneuver sequence at a level attitude and practically zero roll rate. (5) At this point the controller automatically goes back to the “velocity/heading rate command/altitude hold” mode. The altitude hold acquires a new altitude setpoint, and the forward speed returns to the selected speed setting. A number of rolls were performed in several flights, all state trajectories matched closely those predicted by the simulation. Maximum altitude loss of about 20 meters along with a forward speed increase to 20 m/sec were typical for the maneuvers performed at 15 m/sec; the altitude drop was smaller for 12 m/sec entry speed setpoint. Heading change was small in all cases (up to 10 degrees). These effects were all captured accurately by the simulation. Figure 5 shows the flight test data for an autonomous axial roll. Figure 6 shows the altitude and speed time histories for a longer time interval to indicate recovery after the maneuver completion. 200 0 −200 0 0 −10 −20 −30 0 10 0 −10 −20 −30 0 80 70 60 50 0 25

1

2

p, deg/sec φ,4deg

3

5

θ, deg 1

2

3

4

5 ψ, deg

1

2

3

4

5 Altitude, m

1

2

3

4

1

2

3

4

5

20 15 0

u, m/sec 5

time, sec

Fig. 5 Recorded state trajectory during an autonomous axial roll

We can see that most of the altitude loss and gain in speed occurs during the second half of the roll. We did not use the pitch up before the maneuver, and it contributed to the loss of altitude. A more effective way to make a cleaner, cork-screw like automatic axial roll is to use a speed tracking controller during the roll. Note that the maneuver implementation described above required switching from the trim trajectory tracking controllers to the maneuver control laws and

6 of 8

80 Altitude, m 70

60

50 0

2

4

6

8

10

22 u, m/sec 20 18 16 14 0

2

4

6

8

10

time, sec

Fig. 6 Altitude and speed during an autonomous axial roll and recovery phase

back. In both cases the controllers have as many integrator states as control surfaces, therefore it is possible to initialize the integrator states such that the surface deflections are continuous, as described in Eq. 9. This logic enables smooth transitions between the modes.

Extension to Advanced Maneuvers The trim trajectory controllers, the angular rate tracking loops, and similar maneuver sequencing logic will be applied to a number of aerobatic maneuvers, which can have a high operational value. Consider an Immelman maneuver, during which the pilot performs half a loop, followed by half a roll, thus providing a quick way of changing the direction of flight. While implementing a manual Immelman, the pilot uses one cyclic command at a time, and adjusts collective pitch to keep positive lift when the helicopter is inverted and close to zero lift when the rotor disk is perpendicular to the horizon. The trajectories for the roll and pitch angular rates implemented by a human pilot are usually well approximated by piece-wise linear and piece-wise constant segments, which will be used as reference trajectories for the rate tracking controllers. The switching times for the different segments in the reference rate trajectories can be made a function of attitude angles, which closely approximates pilot’s strategy. By having the pilot fly the maneuver in the rate tracking mode first and using similar reference trajectories in an automatic maneuver we ensure that feasible trajectories are commanded, which mitigates the potential risk of deviating from the desired trajectories. The modulation of the collective pitch angle, used by the pilot during the maneuver, can be very closely approximated by a cosine of the angle between Earth gravity axis (the inertial ”down” direction) and helicopter Z body axis. Maneuver entrance and recovery are critical for successful implementation. The correct entrance condi-

tions for a maneuver can be ensured by trim trajectory tracking controllers described above, and by an automatic verification that the actual vehicle state is within a safe region of the desired trim state for the maneuver initiation. For example, before the automatic axial roll our controller automatically verifies vehicle attitude, speed and altitude. To guarantee a safe recovery from the maneuver we need to ensure that the state vector at the time of the exit belongs to the region of attraction of the trim trajectory tracking controller. A theoretical proof, requiring explicit construction of a Lyapunov function, could be achieved in the future. In practice extensive simulation studies with a sufficiently accurate model are required to show that the vehicle speed and attitude remain within tolerable bounds in the presence of expected disturbances and modeling errors. Intuitively, aerobatic maneuvers that require less time for execution will have more predictable exit states. We believe that many maneuvers could be implemented using the approach described above.

Conclusions An aerobatic maneuver under computer control was demonstrated with a miniature helicopter. The control laws for maneuver execution consist of tight angular rate tracking loops, experimentally determined reference trajectories for the angular rates, and a collective pitch modulation law. Smooth recovery from the maneuver was demonstrated; trim trajectory trajectory tracking controllers based on low-order linearquadratic regulator design were used. Proper initialization of the integrator states ensures bumpless transition between controller modes. Automatic execution of a variety of aggressive maneuvers is essential for motion planning algorithms designed to utilize vehicle agility.10, 11 Such algorithms require precisely the characteristics of the control logic presented in this paper: close trim trajectory tracking, accurate maneuver execution, and guaranteed recovery from the maneuvers. The flight tests showed that previously developed low-order nonlinear model of the X-Cell helicopter4 captures essential dynamics for high-bandwidth design based on its analytical linearizations, and adequately predicts state trajectories during the maneuver and recovery phases. We will test this approach on more advanced and operationally useful maneuvers.

Acknowledgements Essential participants to this effort include MIT graduate students Kara Sprague and Alex Shterenberg, who have implemented a major part of the realtime flight software, and Dr. David Vos of Athena Technologies who provided invaluable advice through

7 of 8

all phases of the project. Partial funding for this research was provided by the Office of Naval Research under a Young Investigator Award and the NASA Grant NAG2-1441, NAG2-1522.

References 1 Mettler,

B., Dever, C., and Feron, E., “System Identification and Characteristics of Small-Scale Rotorcraft,” NATO SCI Symposium, Berlin, Germany, May 2002. 2 Miniature Aircraft USA, Orlando, FLa, X-Cell .60 graphite SE Helicopter Kit (Special Edition) Instruction Manual. 3 Sprague, K., Gavrilets, V., Dugail, D., Mettler, B., and Feron, E., “Design and Applications of an Avionics System for a Miniature Acrobatic Helicopter,” AIAA Digital Avionics Systems Conference, Daytona Beach, FL, 2001. 4 Gavrilets, V., Mettler, B., and Feron, E., “Nonlinear Model for a Small-Size Acrobatic Helicopter,” No. AIAA 2001-4333, Proceedings of the AIAA Guidance, Navigation, and Control Conference, Montreal, Canada, August 2001. 5 Gavrilets, V., Frazzoli, E., Mettler, B., Piedmonte, M., and Feron, E., “Aggressive Maneuvering of Small Autonomous Helicopters: A Human-Centered Approach,” International Journal of Robotics Research, October 2001, pp. 795–807. 6 Bramwell, A., Bramwell’s Helicopter Dynamics, AIAA, Reston VA, 2001. 7 Mettler, B., Tischler, M., and Kanade, T., “System Identification Modeling of a Small-Scale Unmanned Rotorcraft for Control Design,” Journal of the American Helicopter Society, Vol. 47, No. 1, January 2002, pp. 50–63. 8 Mettler, B., Gavrilets, V., Feron, E., and Kanade, T., “Dynamic Compensation for High-Bandwidth Control of SmallScale Helicopter,” American Helicopter Society Specialist Meeting, San Francisco, CA, January 2002. 9 Padfield, G., Helicopter Flight Dynamics: The Theory and Application of Flying Qualities and Simulation Modeling, AIAA Education Series, Reston, VA, 1996. 10 Frazzoli, E., M.Dahleh, and Feron, E., “Real-time motion planning for Agile Autonomous Vehicles,” AIAA Journal of Guidance, Control and Dynamics, Vol. 25, No. 1, 2002, pp. 116– 129. 11 Mettler, B., Valenti, M., Schouwenaars, T., Frazzoli, E., and Feron, E., “Rotorcraft Motion Planning for Agile Maneuvering,” Proceedings of the 55th Forum of the American Helicopter Society, Montreal, Canada, June 2002.

8 of 8