Tải bản đầy đủ (.pdf) (93 trang)

Development of a miniature low cost UAV helicopter autopilot platform and formation flight control of UAV teams 2

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.31 MB, 93 trang )

Chapter 4
Dynamic Modeling and Control of
the Miniature UAV Helicopter
In this chapter, we present the work on the dynamic modeling and control law design for our
miniature size UAV helicopter. The helicopter has inherently unstable, complicated, and
nonlinear dynamic, under the significant influence of exogenous disturbances and parameter
perturbations. The system has to be stabilized using a feedback controller. To design a
reliable automatic control law, an accurate model which could accurately capture the input-
output dynamics is necessary.
Due to the complexity of the helicopter dynamics, there have been efforts to apply non-
model-based approaches such as PID (proportional-integral-derivative) tuning, fuzzy-logic
control, neural network control, or a combination of these, etc. [53] While these approaches
are attractive because no identification is required, they do not guarantee closed-loop sta-
bility while they are being tuned or learnt.
The stabilizing controller may also be designed by the model-based mathematical ap-
proach. The mathematical model-based approach assumes the availability of a linear or
nonlinear system model for the controller design. In this case, the system identification
process takes up a significant amount out of the whole research effort of building a UAV
helicopter.
73
CHAPTER 4. 74
Fortunately during the construction of HeLion UAV helicopters, we have obtained a lot
of experience, which enables us to conquer various problems in modeling nd control of the
miniature UAV helicopter, BabyLion. In order to increase the fidelity and application scope
of the developed model, we have sequentially implemented a variety of model derivation
methods, including: time-domain system identification and frequency-domain system iden-
tification [11]. These two methods are for linear model identification. By conducting and
comparing the different methods, we have successfully obtained a high-fidelity linear model
based on the helicopter dynamics for the purpose of control law design and implementation.
The remaining content of this chapter is organized as follows. Section 4.1 presents the
data collection and preprocessing for the modeling and Section 4.2 introduces the model


structure for the helicopter. Section 4.3 focus on first principle modeling technique based
on the MIMO model. Section 4.4 presents the complete procedure for deriving an imple-
mentable model which is suitable for small UAV helicopters and with minimum complexity
based on classical modeling method. The implementation results and necessary comparisons
between the two methods are also addressed in Section 4.5.3. In Section 4.5, we draw some
concluding remarks.
4.1 Data Collection and Preprocessing
Data collection is a state-of-the-art process and with great importance. Without high-quality
data, it could be never possible to identify the dynamic models accurately and reliably. To
ensure the quality of collected flight test data, we sequentially carry out the following three
sub-steps, including, (1) select the input signals, (2) collect flight test data via suitably
conducted experiments, and (3) preprocess the raw data.
4.1.1 Select the Input Signals
Frequency sweep and symmetric doublets are selected as the input signals for the purposes
of model identification and model validation, respectively.
CHAPTER 4. 75
Frequency sweep is a class of control inputs that has a quasi-sinusoidal shape of in-
creasing frequency [56]. One typical frequency-sweep input signal is described by (4.1) and
visually shown in Fig. 4.1. To persistently excite the linear dynamics which is dominant
within the desired frequency range for the small-scale UAV helicopter, the issued frequency-
sweep signal needs to meet a series of requirements.
1. Initial frequency: The initial frequency is required to be as low as possible. Considering
the pilot’s maneuverability, we choose an initial frequency as 0.2 Hz (e.g., 5s long
period);
2. Highest frequency: The highest frequency for the frequency sweep input is also limited
to avoid introducing unnecessary nonlinearities and structural vibrations. For the
miniature scale UAV helicopter, the upper limitation is set as 2 Hz;
3. Frequency-increasing progression: To ensure the low frequency range (0.2 ∼ 0.5 Hz)
is fully excited, the pilot will issue two concatenated long-period ( 5 ∼ 6 sec) input
at the beginning of each perturbation. After that, the input frequency is required to

increase smoothly to the highest threshold value (2 Hz);
4. Amplitude: It is not necessary to keep the amplitude constant during the whole fre-
quency sweep perturbation period. Typically the adjusting range is ±10 − 20%. How-
ever, the aerodynamics should be guaranteed linear.
u(t) = asin(π(f
0
+ f(t))t) (4.1)
where t is the time, u(t) is the generated frequency sweep signal with respect to time t, a is
the adjustable amplitude, f
0
and f (t) is the initial and time-increasing frequencies in Hz.
Symmetric doublet, which is illustrated in Fig. 4.2, is an easy-to-issue input signal
which could provide a clear visualization of key dynamic characteristics and model perfor-
CHAPTER 4. 76
Figure 4.1: Typical frequency sweep input signal.
mance [56]. Such signal is commonly used for model validation on both full- and small-scale
helicopters [55, 43, 17].
4.1.2 Collect Flight Test Data
The overall data collection procedure involves two tasks, namely data collection for model
identification, and data collection for model validation.
The collection of flight data has been conducted under human control of the helicopter.
Special flight maneuvers were carried out while the avionics system was running and logging
the flight data which consists of all the helicopter outputs and the measured RC inputs. Re-
garding the input signal, we choose the frequency sweep signal, which has a quasi-sinusoidal
shape of increasing frequency in the interested range, for the model identification and a dou-
blet signal for model validation since they have been commonly used in numerous full-scale
and small-scale UAV helicopter system identification [10].
CHAPTER 4. 77
Figure 4.2: Typical doublet input signal.
The procedure of data collection is as follows. Firstly the helicopter is brought to a hover

and input trim values are set for each of the control input to keep it at a desired operating
point. When such a flight condition is achieved, the pilot is required to issue the frequency
sweep for each of the four input channels which include aileron, elevator, collective pitch and
rudder, while keeping the basic hovering flight condition. The resultant input and output
data are then recorded for the purpose of identification. This experiment was also iterated
several times until enough high quality flight data was obtained for the model validation. A
visual illustration of one set of inputs and outputs collected in a rudder channel perturbation
experiment is shown in Figures 4.3 to 4.7.
Data collection for model validation is conducted at the end of each flight test. After
achieving certain trimmed flight status, the symmetric doublet input signal is injected to
each of the four input channels. Since the doublet signal is much easier to issue compared
with frequency sweeps, only two to three set of experiment results are recorded per flight
test.
CHAPTER 4. 78
555 560 565 570 575
−0.05
0
0.05
0.1
δ
lat
(−1~1)
555 560 565 570 575
−0.05
0
0.05
δ
lon
(−1~1)
555 560 565 570 575

−0.2
−0.18
−0.16
−0.14
δ
col
(−1~1)
555 560 565 570 575
−0.2
0
0.2
δ
ped
(−1~1)
Time (s)
Figure 4.3: Input signals in the yaw channel perturbation experiment.
555 560 565 570 575
5.5
6
6.5
7
x (m)
555 560 565 570 575
9
9.5
10
10.5
y (m)
555 560 565 570 575
18

19
20
21
z (m)
Time (s)
Figure 4.4: Position outputs in the yaw channel perturbation experiment.
CHAPTER 4. 79
555 560 565 570 575
−0.5
0
0.5
u (m/s)
555 560 565 570 575
−1
−0.5
0
0.5
v (m/s)
555 560 565 570 575
−0.6
−0.4
−0.2
0
0.2
w (m/s)
Time (s)
Figure 4.5: Velocity outputs in the yaw channel perturbation experiment.
555 560 565 570 575
−0.4
−0.2

0
0.2
p (rad/s)
555 560 565 570 575
−0.4
−0.2
0
0.2
0.4
q (rad/s)
555 560 565 570 575
−2
0
2
r (rad/s)
Time (s)
Figure 4.6: Angular rates in the yaw channel perturbation experiment.
CHAPTER 4. 80
555 560 565 570 575
−0.05
0
0.05
0.1
Φ (rad)
555 560 565 570 575
−0.05
0
0.05
0.1
Θ (rad)

555 560 565 570 575
60
80
100
120
140
160
Ψ (degree)
Time (s)
Figure 4.7: Euler angles in the yaw channel perturbation experiment.
4.1.3 Preprocessing of the Raw Dataset
The raw dataset is required to be preprocessed such that the side effects caused by the non-
zero trimming values, the piloted feedback input, and noises or disturbances are minimized.
For the time-domain dataset, we can only conduct the basic preprocessing, which includes:
1. Data range selection:
From the continuously recorded raw dataset, we need to pick out the meaningful slots
related to frequency sweep and doublet perturbation. This is easy to realize since
input shapes of frequency sweep and doublet are characteristic.
2. Data detrending:
Conducting data detrending is necessary due to the following two reasons. Firstly, the
aerodynamics is perturbed using frequency sweeps based on the trim flight conditions.
as listed in Table 4.1. These trim values for both inputs and outputs are regarded as
CHAPTER 4. 81
Table 4.1: Trim values for the tested flight conditions
States Hovering Forward 1 m/s Backward 1 m/s Heave 1m/s Side slip 1m/s
u
0
(m/s) 0.0330 1.0500 -0.9367 0.1619 0.1976
v
0

(m/s) -0.0350 -0.2700 -0.0875 -0.2006 1.3044
w
0
(m/s) 0.0840 0.3720 0.1200 -1.1220 -0.3056
p
0
(rad/s) -0.0004 -0.0031 0.0021 0.0101 -0.0093
q
0
(rad/s) -0.0002 0.0021 0.0034 0.0020 -0.0003
r
0
(rad/s) -0.0008 0.0005 -0.0009 0.0045 -0.0164
φ
0
(rad) 0.0630 0.0450 0.0710 0.0880 0.0962
θ
0
(rad) -0.005 -0.1250 -0.0844 -0.0204 0.0087
δ
lat0
(-1∼1) -0.0070 0.0025 -0.0121 0.0367 0.0127
δ
lon0
(-1∼1) 0.0190 0.0678 0.0221 0.0227 0.0310
δ
col0
(-1∼1) -0.2879 -0.2762 -0.2810 -0.3275 -0.2234
δ
ped0

(-1∼1) 0.0030 0.0065 0.0005 0.0007 -0.0037
constant biases and need to be detrended prior to model identification. Secondly, the
data collection is piloted-issued with unavoidable trimming or trending shift, which
should be corrected such that the fidelity of the identification result is not affected.
3. Data filtering:
The high frequency vibrations caused by the engine, main rotor and tail rotor may
corrupt the data quality and thus should be further attenuated. For BabyLion, we
apply a first order low-pass filter with the cut-off frequency with -3 dB at 10 Hz to
both input and output channels. Note that using the identical filters for both inputs
and outputs is compulsory to avoid extra time-delay caused by the filtering procedure.
4.2 Helicopter Aerodynamics Model Structure
The model structure specifies the order and form of the differential equations which describe
the dynamics. The model used in this project is adapted directly from the UAV group in
CHAPTER 4. 82
the National University of Singapore Control and Simulation Laboratory [9]. This model
structure was established through the analysis of physical effects using the first principles.
Specifically the model structure consists of three parts, namely, the 6-DOF rigid-body dy-
namics, coupled rotor flapping dynamics, and yaw rate gyro dynamics
4.2.1 6 Degree of Freedom (DOF) Rigid-body Dynamics
The 6-DOF rigid-body dynamics is described using Newton-Euler equation 4.2. Note that
the tip-path-plane (TPP) flapping angles a
s
and b
s
are involved due to the strong coupling
between the main rotor and the fuselage of the small-scale UAV helicopters. Therefore,






























˙u = (−w
0
q + v
0
r) + X

u
u − gθ + X
a
s
a
s
˙v = (−u
0
r + w
0
p) + Y
v
v + gφ + Y
b
s
b
s
˙w = (−v
0
p + u
0
q) + Z
w
w + Z
r
r + Z
col
δ
col
˙p = L

u
u + L
v
v + L
a
s
a
s
+ L
b
s
b
s
˙q = M
u
u + M
v
v + M
a
s
a
s
+ M
b
s
b
s
˙r = N
v
v + N

r
r + N
r
f b
r
f b
+ N
ped
δ
ped
(4.2)
where X
()
, Y
()
, Z
()
, L
()
, M
()
and N
()
are the lumped unknown dynamic derivatives which
need to be identified, u
0
, v
0
, and w
0

are the trimmed speed values of any designated flight
condition listed in Table 4.1. In the near hovering flight, these values can be set all zeros
and g is the gravity.
4.2.2 Coupled Rotor Flapping Dynamics
Recalling the “hybrid model” structure developed in [7,30] for the full-scale helicopters, the
main rotor dynamics is described by two coupled first-order equations which represent the
lateral and longitudinal flapping motions of the assumed tip-path-plane. Physically, the tip-
path-plane is the top of the corn-shaped rotor, defined by the first-harmonic representation
of the main blade flapping motion [43]. An illustration of the TPP, which can also be found
CHAPTER 4. 83
Figure 4.8: An illustration for tip-path-plane.
in [43], is given in Fig. 4.8 for easy understanding. β represents the blade flapping angle
relative to hub plane, and β
0
is the coning angle of the rotating rotor.
Compared with the full-scale counterpart, the main difference residing in the small-
scale helicopters is that the main rotor is commonly augmented by a stabilizer bar, which
acts as a secondary rotor with much smaller aerodynamic surface and 90
o
phase difference
to effectively dampen the inputs of aileron and elevator servos (δ
lat
and δ
lon
). Based on
[19, 43, 44], the stabilizer bar dynamics can be lumped into the bare main rotor dynamics.
The final first-order coupled rotor flapping dynamics is represented in 4.3.

˙a
s

= −q −
a
s
τ
+ A
b
s
b
s
+ A
lat
δ
lat
+ A
lon
δ
lon
˙
b
s
= −p −
b
1
τ
+ B
a
s
a
s
+ B

lat
δ
lat
+ B
lon
δ
lon
(4.3)
where A
b
s
and B
a
s
are coupled rotor flapping derivatives, ()
lat
and ()
lon
are control deriva-
tives of aileron and elevator servos, respectively, and τ is the effective rotor time constant.
4.2.3 Yaw Rate Gyro Dynamics
The recently developed RC helicopters are commonly equipped with a yaw rate gyro to
facilitate pilot to control the yaw rate and heading angle. In the selected model struc-
ture [43], an arbitrary yaw rate gyro dynamics with poor physical meaning is adopted and
CHAPTER 4. 84
proved applicable. Without considering the off-axis coupling terms related to variable set
{v, p, w, δ
col
}, the yaw channel dynamics is represented in 4.4.


˙r = N
r
r + N
rf b
r
f b
+ N
ped
δ
ped
˙r
f b
= K
r
r + K
rf b
r
f b
(4.4)
where ()
r
, ()
rf b
and ()
ped
are unknown derivatives.
4.3 MIMO Modeling and Control Method
In the last section, a classic helicopter aerodynamic model is given. In this section, we
identify the MIMO model using advanced system identification techniques.
4.3.1 Modeling of BabyLion UAV Helicopter

A model which could accurately capture BabyLion’s aerodynamics is of great importance
since it will directly affect the designed flight control law’s performance. Currently the most
common modeling method for small-scale UAV helicopters is system identification technique,
which is based on the practical flight test data. In [43] and [9], system identification has
been successfully implemented on HeLion and R50 to obtain high fidelity linearized model.
However in the following content of this section, we will show that for BabyLion UAV
helicopter, such a method is only partially applicable which is mainly due to its rapid
dynamics and noisy sensor. To maintain the reliability of the derived model, we implement
a comprehensive modeling approach which combines both system identification and first
principle modeling. Specifically such approach is composed of the following four steps,
namely, model structure determination, system identification, first principle modeling, and
model validation.
CHAPTER 4. 85
MIMO Model Structure Determination
Based on the helicopter aerodynamic model given in 4.2, 4.3 and 4.4, an eleventh order
linearized model can be obtained. There is an extended dynamic model of seventeenth
order linearized model, which is proposed in [45] and expressed in 4.5. In this structure,
two main unique features of RC helicopters, stabilizer bar and yaw rate gyro have been
included, which is developed in [43]. The detailed information of the inner model structure
can be found in [43]. However, in order to minimize the model complexity, we do not
adopt the extended seventeenth order linearized model. Another reason is that with the
successful implementation for HeLion, reported in [9], it has been proven that the eleventh
order model is accurate enough to cover the small-scale UAV helicopter’s dynamics. The
physical meanings of the state and input variables are listed in Table 4.2.
˙x = Ax + Bu (4.5)
where
x =

u v p q φ θ a
s

b
s
w r r
f b

T
(4.6)
¯u =

δ
lat
δ
lon
δ
col
δ
ped

T
(4.7)
CHAPTER 4. 86
A =


































X
u
0 0 0 0 −g X
a
s

0 0 0 0
0 Y
v
0 0 g 0 0 Y
b
s
0 0 0
L
u
L
v
0 0 0 0 L
a
s
L
b
s
0 0 0
M
u
M
v
0 0 0 0 M
a
s
M
b
s
0 0 0
0 0 1 0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 0 0 0 0
0 0 0 −1 0 0
−1
τ
f
A
b
s
0 0 0
0 0 −1 0 0 0 B
a
s
−1
τ
f
0 0 0
0 0 0 0 0 0 Z
a
s
Z
b
s
Z
w
Z
r
0
0 0 N
p
0 0 0 0 0 N

w
N
r
N
r
f b
0 0 0 0 0 0 0 0 0 K
r
K
r
f b


































(4.8)
B =

















0
6×4
A
u
as
A
u
bs
0 0
B
u
as
B
u
bs
0 0
0 0 Z
u
0
0 0 N
u
N
u
0 0 0 0

















(4.9)
MIMO System Identification
Based on the selected model structure, we carry out the system identification to obtain the
unknown parameters. Similar to the identification procedure of HeLion/SheLion, we first
conduct one set of special flight tests to collect necessary input/output data. Specifically the
pilot manually executes the chirp signal, which is a sinusoidal signal with smooth increasing
frequency over the interested frequency range, in each of the four helicopter input channels
to perturb the helicopter in roll, pitch, heave and yaw directions sequentially. During these
perturbations, the pilot needs to ensure the hover or near hover condition and the least
CHAPTER 4. 87
Table 4.2: State and input variables with the physical meanings
States and Inputs Physical Meaning
u (m/s) Body frame X-axis velocity
v (m/s) Body frame Y-axis velocity
p (rad/s) Roll angular rate (rad/s)
q (rad/s) Pitch angular rate
φ (rad) Roll angle
θ (rad) Pitch angle

a
s
(rad) Lateral tip-path plane flapping angle
b
s
(rad) Longitudinal tip-path plane flapping angle
w (m/s) Body frame Z-axis velocity
r (rad/s) Yaw angular rate
r
f b
(rad/s) Yaw rate feedback
δ
lat
(-1∼1) Aileron servo input
δ
lon
(-1∼1) Ellevator servo input
δ
col
(-1∼1) Collective pitch servo input
δ
ped
(-1∼1) Rudder servo input
off-axis or correlated inputs. The input and output data are then recorded for further data
analysis, system identification, and model validation. The overall experiment set has been
initiated for four to five times to ensure that enough high quality data has been collected.
In our initial plan, the parameter identification process is further categorized into three
sub-steps. Firstly, the angular rate dynamics is identified. Then, the translational dynamics
is identified based on the results in previous step. Lastly, all of the identified parameters
are reiterated and the overall linearized model is obtained. One advanced frequency-domain

system identification toolkit, call CIFR (Comprehensive Identification from Frequency Re-
sponse software package) [56], is implemented. As there is high frequency noise in the
angular velocity output from the low-cost small-size IMU, we need further pre-process the
available data in su-step 1. The angular velocity data is taken as measurement information.
We introduce a low-pass filter to pre-process these measurement data. Meanwhile the servo
input data-taken as control input, also pass the same low-pass filter to reduce the delay ef-
CHAPTER 4. 88
Table 4.3: Estimated parameters through system identification, MIMO modeling method.
Parameters Identified Value CR bound (%) Insens bound(%)
L
b
855.51 10.46 2.53
M
a
395.72 5.48 1.69
τ 0.18 17.89 5.25
A
b
-7.23 28.50 7.77
B
a
6.39 23.39 7.47
A
lat
1.41 5.83 1.99
A
lon
4.19 4.64 2.04
B
lat

5.30 4.92 2.12
B
lon
-1.72 5.43 2.19
Z
w
-0.49 27.3 29.97
Z
col
32.68 3.98 1.89
N
r
-12.37 8.63 29.83
K
r
0.73 18.10 8.63
N
ped
167.10 29.86 2.28
N
f b
-167.10* – –
K
f b
-24.74* – –
* Fixed derivative tied to a free derivative.
fect. We notice that in sub-step 2, the reliable identification results for partial translational
dynamics could not be achieved. This is mainly caused by the over sensitive aerodynamics
in hover and near hover conditions due to BabyLion’s ultra small size. Since collecting
the effective translational identification data is extremely difficult for BabyLion, we decide

to keep the reliable identified parameters which are obtained in sub-step 1/2 and listed in
Table 4.3 along with the accuracy indices (Cramer-Rao bound and Insensitivity bound).
The first principle modeling approach is then used to estimate the remaining undetermined
parameters.
First Principle Modeling
The first principle modeling approach has been widely used in full-scale manned of unmanned
helicopters. Such a method is mainly based on the various helicopter physical parameters
CHAPTER 4. 89
Table 4.4: Estimated parameters through first principle modeling approach
Parameters Identified Value
X
u
-0.049
Y
v
-0.122
L
u
-0.021
L
v
-0.068
M
u
0.032
M
v
-0.078
X
a

-9.78 (-G)†
Y
b
9.78 (G)†
† Fixed value in the model.
to derive nonlinear/linear models for different flight conditions. For our BabyLion UAV
whose physical parameters are easy to measure, such method is well suited to identify the
remaining parameters. One famous first principle modeling toolkit, named FLIGHTLAB
[26], is adopted. The complete physical parameter set for, fuselage, main rotor, stabilizer
bar, tail rotor, and brushless motor is injected to FLIGHTLAB for model generation. The
final identified parameters are listed in Table 4.4. Combining the identified parameters
shown in Table 4.3, we could fully determine the model for BabyLion UAV in hover and
near hover conditions.
Model Validation
The model validation procedure is performed in time-domain. One comparison result for all
necessary BabyLion’s outputs has been shown in Figure 4.9. The close agreement between
the simulation response and real flight data indicates the identified model is accurate enough
to reflect the BabyLion’s dynamics, and suitable for the flight control law design which will
presented in the next section.
CHAPTER 4. 90
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−10
−5
0
5
10
Acc
x
(m/sec
2

)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−4
−2
0
2
4
6
8
Acc
y
(m/sec
2
)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−5
0
5
Acc
z
(m/sec
2
)
Time (sec)
Experimental
Simulational
a. Acceleration.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−1
−0.5

0
0.5
1
φ (rad)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−1
−0.5
0
0.5
1
θ (rad)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−2
−1.5
−1
ψ (rad)
Time (sec)
b. Euler angle.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−4
−2
0
2
4
p (rad/sec)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−3
−2
−1
0

1
2
3
q (rad/sec)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−2
−1
0
1
2
r (rad/sec)
Time (sec)
c. Angular rate.
0.5 1 1.5 2 2.5 3 170 3.5 4 4.5 5
0.40
0.42
0.44
0.46
δ
ail
0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5
0.50
0.52
δ
ele
0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5
0.42
0.44
0.46
0.48

δ
col
0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5
0.2
0.26
δ
rud
Time (s)
d. Input signal.
Solid line: experimental; Dashed line: simulation
Figure 4.9: Verification of the identified model.
CHAPTER 4. 91
Figure 4.10: General flight control scheme for UAVs.
4.3.2 Control Law Design for BabyLion UAV Helicopter
Based on the identified mathematic model, we proceed to design the flight control law.
The general scheme for a flight control system is depicted in Figure 4.10, which consists of
three hierarchical control loops, i.e., an inner-loop control block for internal stabilization
of the BabyLion, and an outer-loop control block to control the position; and lastly, 3) a
flight scheduling block which is to navigate BabyLion to follow flight paths generated by the
ground station. Since our aim for current stage is to realize the initial automatic control in
hover and near hover conditions, we hereby only focus on the design of inner and outer-loop
control blocks.
Inner-loop Control Law Design
The inner-loop control law is designed using the Linear Quadratic Gaussian (LQG) tech-
nique. First, we rewrite the identified model as follows,








˙x = Ax + Bu,
y = C
1
x,
h = C
2
x,
(4.10)
CHAPTER 4. 92
where x, u, h and y are the state variable, control variable, controlled output and measured
output respectively. C
1
and C
2
are as defined by
C
1
=





















1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 0 1 0





















,
and
C
2
=







1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 0 1 0








.
Then we carry out the following two steps,
Step 1: Design a linear quadratic regulator as
u = F x + Gr
ref
, (4.11)
where r
ref
= [u, v, w, r]

is the reference signal.
For the linear feedback control law, we choose F as
F =







0.0185 −0.1076 −0.0381 0.0033 −0.7204 −0.1749 −0.7192 −2.4044 0 0 0
0.0635 0.0288 0 −0.0359 0.1970 −0.6214 −1.4718 0.5856 0 0 0
0 0 0 0 0 0 0 0 −0.0606 0 0
0 0 0 0 0 0 0 0 0 −0.0049 0.0161








.
The tracking matrix G = −[C
2
(A + BF )
−1
B]
−1
is then given by
G =







−0.0193 0.1168 0 0
−0.0668 −0.0307 0 0
0 0 0.0757 0
0 0 0 0.2114







.

CHAPTER 4. 93
Next, Design a reduced order observer as follows





˙x
c
= A
c
x
c
+ B
c

y
u

,
ˆx = C
c

x
c
y

.
(4.12)
where x

c
= [a
s
, b
s
, r
f b
]

is the immeasurable state vector and output ˆx includes both the
measurable and recovered immeasurable states. The observer matrices A
c
, B
c
and C
c
are
given by
A
c
=




−13.4810 −12.4170 0
5.2821 −16.5840 0
0 0 −12.167





,
B
c
=




0.0069 −0.0008 −0.2415 −1.3036 −0.0007 −0.0048 0 0 1.4090 4.1860 0 0
−0.0013 −0.0009 −1.1809 0.0586 −0.0014 −0.0007 0 0 5.3030 −1.7240 0 0
0 0 0 0 0 0 0 2.2598 0 0 0 7.8085




,
and
C
c
=






























0 0 0 1 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0 1 0 0
1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1 0

0 0 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 0 0






























.
The final designed inner-loop control law is then obtained by combining the results of
both steps.
Outer-loop Control Law Design
For the outer-loop control law design, we use the dynamic inversion technique since the
strap down equation and position equation are fully known. The output signal of this
CHAPTER 4. 94
control loop is the vector r
ref
, which is also the reference signal for the inner-loop control
block. Specifically the outer-loop control law is designed as follows,
r
ref
=


V
r

=

B
b
K
p
(

P −


P
c
)
k
ψ
(ψ − ψ
c
)

, (4.13)
where

V = [u, v, w]

is the body frame velocity vector, B
b
is the transformation matrix from
NED frame to body frame,

P and

P
c
are the practical and desired position vectors, ψ and
ψ
c
are the practical and desired heading angles, respectively. The finally selected outer-loop
control gains are given by
K
p

=




−0.25 0 0
0 −0.25 0
0 0 −0.1




, K
ψ
= −0.2 . (4.14)
4.4 Cascaded Modeling and Control Method
The micro-size IMU, which is physically smaller than their bulky counterparts, tends to
provide poorer sensor information. During the system identification process, we observed
that there exists a big problem which lowers the system performance. The angular rate in-
formation from our IMU sensor contains high amplitude noise, which increases the difficulty
of attitude control. In our flight experiment, the UAV sometimes fluctuates wildly due to
the noisy gyroscope output. This makes it very difficult to choose matrices Q and R when
designing a feasible flight control law. Another problem is that we are subsequently to use
this miniature UAV platform for indoor vision based navigation, where the accurate GPS
position and velocity signals are not available. The MIMO modeling method is not possible
to have good application with less accurate and fidelity vision velocity signal. Also, we
observed quite often temporary loss or failure in the GPS signals in our flight experiment,
which lead to a severe crash. These problems motivated us to employee a novel robust
cascaded control architecture for the control of the miniature UAV helicopter. The basic
CHAPTER 4. 95

idea is to put the attitude control alone in the core inner loop. When the GPS temporarily
loss or failure occurs, the autopilot can switch to attitude control only, thereby a crash can
be avoided. This architecture is also easy to implement on a vision-based navigation, which
is able to replace the GPS signal when a GPS loss or failure occur.
4.4.1 Cascaded Modeling
Lateral and longitudinal fuselage dynamics
We noted that PID controller also works (see e.g. [6]), which means physically that the
attitude channels (roll, pitch and yaw) of the helicopter from the control surface deflection
to the attitude angular rate is first-order by ignoring the actuator dynamics. This is true
in our manual flight tests. We also noted in our experiment that there is coupling effect
between the latitude channel and the longitudinal channel, which is validated in the classical
model in (4.5). However, no apparent coupling was observed for the collective pitch channel
and the rudder channel. We then further concluded there is a second-order plant from the
input servos to the attitude channels. This is to say, a direct reduced second order model
can be identified by ignoring the flapping angles a
s
and b
s
dynamics and using the servo
inputs as the direct input.
































·
Φ
= p
·
θ
= q
·
p
= −a

p
p + A
p
δ
lat
+ B
p
δ
lon
·
q
= −b
q
q + A
q
δ
lat
+ B
q
δ
lon
·
ψ = r
·
r
= −c
r
r + C
r
δ

rud
(4.15)
From the aerodynamic mechanism, we know that the force on the helicopter is generated
because there is an inclination of the rotating main blade plane. This force results in the
CHAPTER 4. 96
acceleration of the helicopter movement. As such, we can put the velocity and position
together in the outerloop with the attitude alone, as the core inner loop control part. As the
attitude is driven by the servos, the attitude change will induce the inclination of the rotating
main blade plane which will again induce the acceleration movement of the helicopter. We
conclude that there is a relationship between the helicopter movement and the attitude
inclination angles. In general, there exists a cascaded system such that the helicopter
movement control works as the outer loop, and the attitude control works as the inner
loop. The outer loop will generate attitude references for the inner loop in real-time.
This can be deduced from the velocity dynamic equations. To see the details, the
simplified forward velocity dynamic equation is used as an example:
·
u
= X
u
u − gθ + X
a
s
a
s
(4.16)
Considering a linear control, we can simply assume there is a virtual value that meets
a
s
= f
θ

θ
r0
(4.17)
where f(θ) is a transition coefficient for the a
s
and the virtual pitch angle θ
r0
,
Thus (4.16) can be rewritten as
·
u
= X
u
u − gθ
r
(4.18)
where θ
r
= θ − X
a
s
a
s
/g = θ − (X
a
s
f
θ
/g)θ
r0

is the pitch angle rotation reference.
Note that the state a
s
is in the same direction of the pitch attitude θ and in the hovering
or near hovering mode. We can assume there exists a linear proportional relation between
the state a
s
and the pitch angle reference θ
r0
.
In the same way, there is a similar relationship in the lateral velocity channel as in (4.19)
·
v
= Y
v
v + gφ
r
, (4.19)
CHAPTER 4. 97
where φ
r
= φ + Y
b
s
b
s
/g is the φ angle rotation reference.
The heave dynamic channel as in (4.20).
·
w

= Z
w
w + Z
u
δ
col
(4.20)
Together, we have the full dynamic equations as in (4.21).




















































·

Φ
= p
·
θ
= q
·
p
= −a
p
p + A
p
δ
lat
+ B
p
δ
lon
·
q
= −b
q
q + A
q
δ
lat
+ B
q
δ
lon
·

ψ = r
·
r
= −c
r
r + C
r
δ
rud
·
u
= X
u
u − gθ
r
·
v
= Y
v
v + gφ
r
·
w
= Z
w
w + Z
u
δ
col
(4.21)

Therefore, the general scheme for a flight control system is depicted in Figure 4.11,
which consists of two-layer cascaded control loops, i.e.,
1) an inner-loop control block for attitude stabilization of the BabyLion;
2) an outer-loop control block to control the position and velocity;
This control scheme has a clear physical meaning. Suppose the UAV is hovering, the
ground station sends a command to fly forward, the UAV will nose down to drive the
helicopter rotating main blade plane to lean forward. The aerodynamics will generate a
force to drive the helicopter fly forward. For the lateral flight, there is a similar physical
analogy.
With the flight schedule which generates position and velocity references by the on-
board computer or by the ground station in real time, the Babylion UAV will thus follow

×