Professional Documents
Culture Documents
Automatica
journal homepage: www.elsevier.com/locate/automatica
Brief paper
1. Introduction system (Cai, Peng, Chen, & Lee, 2005; Sprague et al., 2001). The
function of the avionics system is to collect measurement signals,
Unmanned aerial vehicles (UAVs) have recently aroused drive the actuators, and support communications and real-time
great interest in industrial and academic circles, because of operations of autonomous flight control laws. One of the core
their potential applications in many areas and their scientific issues in designing a fully autonomous UAV helicopter is to
significance in academic research. UAVs are capable of carrying out effectively design and implement sophisticated flight control laws.
work where the surrounding environment is dangerous to human Diverse methods, such as H∞ control (Weilenmann, Christen,
beings and they can be utilized as platforms with maneuverability & Geering, 1999), the model predictive approach (Shim, Kim, &
and versatility for pure academic research. Among various types Sastry, 2003), the differential geometry method (Isidori, Marconi,
of UAVs, the UAV helicopter is an excellent platform for academic & Serrani, 2003) and the neural network approach (Enns & Si,
research as it is safely manipulated in a manual mode and is easily 2003), have been explored to design autonomous flight control
operated in an automatic mode. Many research groups worldwide laws for small-scale UAV helicopters. The work of (Marconi & Naldi,
have chosen such a platform for their academic purposes (see, for 2007) provides some useful theoretical guidelines in controlling
examples, Bortoff (1999), Kim, Shim, and Sastry (2002), McKerrow helicopters. However, many of the works focus merely on the
(2004), Roberts, Corke, and Buskey (2002) and Shim, Kim, and design of kernel control laws and/or in certain specific flight
Sastry (2000), and the references therein). conditions and are only verified by simulation.
Small-scale UAV helicopters are commonly upgraded from The objective of our work is to design a fully autonomous flight
radio-controlled hobby helicopters by assembling an avionics control law that is able to perform various flight missions for a
UAV helicopter, and to verify the feasibility and operability of
the UAV in actual flight tests. The proposed flight control scheme
I The material in this paper was partially presented at The 26th Chinese Control consists of three parts, namely, the kernel control law, command
Conference, Zhangjiajie, Hunan, China, 2007. This paper was recommended for generator and flight scheduling. The function of the kernel control
publication in revised form by Associate Editor Yoshikazu Hayakawa under the law is to guarantee the asymptotic stability of the aircraft motion
direction of Editor Toshiharu Sugie. This work is supported in part by the Defence with respect to the surrounding air. The role of the command
Science and Technology Agency (DSTA) of Singapore under a Temasek Young generator is to produce flight commands or references to the
Investigator Award.
∗ Corresponding author. Tel.: +65 6516 2289; fax: +65 6779 1103. kernel control layer, and finally the task of the flight scheduling
E-mail addresses: kmpeng@nus.edu.sg (K. Peng), caiguowei@nus.edu.sg
part is to generate the flight references for pre-scheduled flight
(G. Cai), bmchen@nus.edu.sg, bmchen@ieee.org (B.M. Chen), eledm@nus.edu.sg tasks or flight missions. Since the time scale associated each part
(M. Dong), kaiyew_lum@nus.edu.sg (K.Y. Lum), eleleeth@nus.edu.sg (T.H. Lee). of the overall flight control system is hierarchical in nature, the
0005-1098/$ – see front matter © 2009 Elsevier Ltd. All rights reserved.
doi:10.1016/j.automatica.2009.06.016
2334 K. Peng et al. / Automatica 45 (2009) 2333–2338
flight control law can be designed in a decentralized fashion. A11 A12 0 A14 0
A newly developed nonlinear control technique, namely, the 0 0 I2 0 0
A1 = , B1 = ,
composite nonlinear feedback (CNF) control method (Chen, Lee, A31 0 0 A34 0
Peng, & Venkataramanan, 2003; He, Chen, & Wu, 2005), which 0 0 A43 A44 B41
has successfully been applied to solve many real-life problems, is
A55 A56 0 B52 0
employed to design the kernel control law based on the identified 0 A66 0 0 0
linear model of the UAV helicopter using in-flight data. Dynamic A2 = , B2 = ,
A75 A76 A77 B72 B73
inversion (Isidori et al., 2003), capable of fully dealing with 0 A86 A87 0 0
nonlinearities in affine systems, is adopted to design the command
where
generator based on the kinematical models of the UAV. Lastly, the
−0.1778 −9.781
flight scheduling is described in a discrete event system that causes 0 0
A11 = , ,
A12 =
the helicopter to fly in some pre-determined flight conditions. 0 −0.3104 0 9.781
−9.781 −0.3326 −0.5353
0
A14 = , A31 = ,
2. Dynamic and kinematic models of UAV helicopter 0 9.781 0.1903 −0.2940
75.764 343.860
0 −1
The UAV system studied in this paper, named HeLion, is A34 = , A43 = ,
upgraded from a radio-controlled bare helicopter, Raptor 90, by 172.620 −59.958 −1 0
assembling an effective avionics onboard system mounted under −8.1222 4.6535
A44 = , A55 = −0.6821,
the fuselage of the helicopter (Cai et al., 2005). The helicopter is −0.0921 −8.1222
1,410 mm in length, 190 mm in width, and 476 mm in height, and
= 0 −0.1070 , A66 = 0 1 ,
its maximal takeoff weight is 15 kg. Its weight increases from 4.9 kg A56
to 11 kg after integrating all the necessary components. Its main = 0 −5.5561 , A86 = 0 2.7492 ,
A76
rotor has a diameter of 1,605 mm and its tail rotor has a diameter
A75 = −0.1446, A77 = −36.674, A87 = −11.1120,
of 260 mm. The helicopter is equipped with an engine, which
0.0496 2.6224
produces a power of 2.28 kW at the spinning rate of 15,000 rpm, B41 = , B52 = 15.6491,
and it can be operated manually with a remote control unit. The 2.4928 0.1740
range of its practical spinning rate is from 2,000 rpm to 16,000 rpm. B72 = 1.6349, B73 = −58.4053.
The gear ratio of the engine rotor to the main rotor to the tail rotor
The kinematical model is relatively simple and is given by
is 8.45:1:4.65. The bare helicopter is capable of performing various
flight tasks including hover and agile flight. As the flight speed of ṗx
!
Vx
!
small-scale helicopters is relatively low, its effect in aerodynamics ṗy 0
= Bb Vy , (4)
can be safely ignored and it is feasible practically to use a linear ṗz Vz
model in hovering and near-hovering flight conditions. A linear
where px , py , pz are respectively the displacements (in m) of
model of HeLion for such flight conditions has been identified
helicopter in the (x, y, z )-directions of the north-east-down (NED)
in Cai, Chen, Peng, Dong, and Lee (2006) with in-flight data and
frame, and Bb is the transformation matrix from the NED frame to
is given as
the body frame with
ẋ1 A 0 x1 B 0
= 1 + 1 u, cθ cψ cθ sψ −s θ
" #
(1)
ẋ2 0 A2 x2 0 B2 Bb = −cφ sψ + sφ sθ cψ cφ cψ + sφ sθ sψ sφ cθ , (5)
where the state variables sφ sψ + cφ sθ cψ −sφ cψ + cφ sθ sψ cφ cθ
0 where s? = sin(?) and c? = cos(?). Lastly, the height of the aircraft
x1 = Vx , Vy , φ, θ , ωx , ωy , a, b , x2 = (Vz , ψ, ωz , wf )0 ,
is given by h = −pz .
and where Vx , Vy , Vz (in m/s) are the ground velocities measured in
the (x, y, z)-directions of the body frame, respectively. φ , θ and ψ 3. Design of autonomous flight control law
(in rad) are respectively the roll, pitch and yaw angles, and ωx , ωy
and ωz (in rad/s) are the corresponding roll, pitch and yaw angular The schematic diagram of the autonomous flight control law
rates, a and b (in rad) are the first harmonics of longitudinal and is shown in Fig. 1, in which the overall flight control system is
lateral flapping angles of the main blade tip-path plane, and finally, hierarchically divided into three layers: (1) the kernel control layer,
ωf is a state variable of a built-in filter in the yaw channel. The which is to guarantee the asymptotic stability of the aircraft motion
control input is given by with respect to the surrounding air and to track flight commands
Vxc , Vyc , Vzc , and ψc ; (2) the command generator layer, which is
u = δ − δ0 , (2) to generate flight commands by tracking flight references pxr , pyr
where δ0 is the trim values of the control input command, and and pzr from the flight scheduling layer; and lastly (3) the flight
0 scheduling layer, which is to generate flight references based on
δ = δr , δp , δc , δt , with δr , δp , δc and δt being respectively the
pre-schedule flight tasks or flight missions. As demonstrated later
roll cyclic, pitch cyclic, collective and tail rotor commands, which
in actual test results, such a control scheme has proven to be very
all have a normalized value in [−1, 1], with 1 being equivalent to
effective and yields an excellent performance.
π/4 rad. For HeLion, the maximum values that the input channels
can take are respectively 0.35, 0.35, 0.12 and 0.4. The measurement
output of the UAV system is 3.1. Kernel control layer
0 The structure of the kernel control law is decentralized in nature
y = Vx , Vy , φ, θ , ωx , ωy , Vz , ψ, ωz . (3)
and is shown in Fig. 2. The kernel control law is decoupled into
In the hovering condition, δ0 = (0.05, 0.02, −0.22, 0)0 when two parts, i.e., the rolling/pitching control and the heaving/heading
the spinning rate of the main blades is 1750 rpm. Under such an control. The rolling/pitching control is hierarchically divided into
operating condition, the corresponding system data are the velocity, attitude and swashplate control components. The
K. Peng et al. / Automatica 45 (2009) 2333–2338 2335
that the state variables of Vx and Vy are capable of tracking the flight
u1
commands Vxc and Vyc as quickly as possible. The velocity control v44 = B− 1
41 A43 x32 + , (19)
u2
law is carried out based on the following subsystem
and where x32 = (ωx , ωy )0 , and u1 and u2 are respectively the first
ẋ11 = Ā11 x11 + A12 v11 , (6) and second entries of the UAV model in (1). It is to design a control
where x11 = (Vx , Vy )0 , Ā11 = A11 − A14 A− 1
34 A31 and
law that such that x44 tracks
v55 = B52
−1
A56 x66 + u3 , (25) ṗx Vx cos ψs cos θs
! ! !
and where x66 = (ψ, ωz ) and u3 is the third entry in the control
0 ṗy 0
= Bb Vy = Vg sin ψs cos θs , (40)
input vector of (1). A very simple static controller is obtained as ṗz Vz − sin θs
follows where Vg , θs and ψs are respectively the ground speed, flight path
v55 = F55 Vz − B−
52 (A55 + B52 F55 )Vzc .
1
(26) angle and flight azimuth angle. The task of the command generator
is to generate flight commands, i.e., Vxc , Vyc , Vzc and ψc , by tracking
We select F55 = −0.052265 such that A55 + B52 F55 < 0. It is clear
the flight references of the scheduled steady and maneuvering
that
flights.
u3 = v55 − B−
52 A56 x66 .
1
(27) For a heading direction reference given in terms of ψr or ψ̇r ,
ψc = ψr or ψc = ψ̇r 1t + ψ, (41)
3.1.5. Heading motion control
Heading motion control is to generate a controller such that the where 1t is generally chosen to be the sampling period of the over-
state variable ψ will follow the flight command ψc . The subsystem all control system, which is 20 ms for HeLion. For flight references
we use for heading motion control is characterized by given in terms of pxr , pyr and pzr or ḣr ,
v66 = FΨ x66 + GΨ ψc + ρΨ B0Ψ PΨ (x66 − HΨ ψc ) , (30) are feedback gains chosen for our UAV helicopter. We note that
h = −pz . For flight references given in terms of Vgr and either one
where
of hr , θsr , θ̇sr and ψsr or ψ̇sr ,
FΨ = 0.01712 −0.08486
(31)
Vxc cos ψsc cos θsc
! !
is chosen such that AΨ + BΨ FΨ is asymptotically stable,
Vyc = Bb Vgr sin ψsc cos θsc , (44)
GΨ = [−CΨ 2 (AΨ + BΨ FΨ )−1 BΨ ]−1 , (32) Vzc − sin θsc
where
HΨ = −(AΨ + BΨ FΨ )−1 BΨ GΨ , (33)
kh (h − hr )
Pψ > 0 is the solution of the Lyapunov equation, θsc = arcsin or θsc = θ̇sr 1t + θs (45)
Vg
(AΨ + BΨ FΨ ) PΨ + PΨ (AΨ + BΨ FΨ ) = −WΨ
0
(34)
or θsc = θsr , and
with WΨ = diag{0.034243, 1.7122 × 10−6 }, and finally
−α |ψ−ψc |
e 4 − e−1
ψsc = ψsr or ψsc = ψ̇sr 1t + ψs , (46)
ρΨ = −β4 (35)
and where kh = −0.5 is a feedback gain chosen for our UAV and 1t
1 − e− 1
is chosen to be the sampling period of the overall control system.
with β4 = 1 and α4 = 0.1.
Lastly, the detailed design of flight scheduling is to be given
In order to transform the control law of (30) into the actual
in the next section for a flight envelope, which consists of flight
input to the helicopter, we need to estimate the state variable ωf
tasks including automatic takeoff, hovering, slithering, spiraling
associated to the built-in filter in the yaw channel, which can be
and automatic landing.
done as follows
ẋf = (A87 − Lf A77 )(xf + Lf ωz ) + A86 x66 4. Simulation and actual flight experiment
− Lf (A75 Vz + A76 x66 + B72 u3 + B73 u4 ) , (36)
where Lf = −0.1 is chosen so that A87 − Lf A77 < 0, and We illustrate the design of flight scheduling with a flight en-
velope experiment, which consists of tasks including automatic
ω̂f = xf + Lf ωz . (37) takeoff, hovering, slithering, turning back, head turning, pirouet-
Finally, the 4th entry of the control input vector is given by ting, vertical turning, spiral turning, and automatic landing. Table 1
gives the event-driven models of such an experiment. The specific
u4 = v66 − B−
73 A75 Vz − A77 ω̂f − B72 u3
1
(38) flight references of the scheduled steady and maneuvering flights
and the actual control signal that is injected into the UAV is given are given as follows:
by
(1) Takeoff: ḣr , pxr , pyr and ψr are constants.
δ = δ0 + u. (39) (2) Hovering: pxr , pyr , pzr and ψr are constants.
This completes the design of the kernel control laws for the UAV (3) Slithering: ψsr = ψsr0 ± π /4, and hr , Vgr and ψr are constants.
helicopter system. (4) Head turning: hr , Vgr , ψsr and ψ̇r are constants.
K. Peng et al. / Automatica 45 (2009) 2333–2338 2337
Table 1
Events in flight scheduling.
Step No Flight mission Transition condition Next step
0 Abnormal 2
1 Takeoff Lift up 15 m 2/0
2 Hovering Duration of 15 s 3/9/A
3 Slithering Duration of 32 s 4/0
4 Turning back Duration of 8 s 5/0
5 Head turning Duration of 32 s 6/0
6 Pirouetting Duration of 32 s 7/0
7 Vertical turning Duration of 62.8 s 8/0
8 Spiral turning Duration of 40 s 2/0
9 Landing Descend to ground A/0
A Termination
Fig. 5. Actual flight paths and the references for the whole test.