SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
1
Modelling, Autopilot Design and Field-Tuning of a UAV with Minimum Control Surfaces Ming Liu, Member, IEEE, Gregory K. Egan, Life Member, IEEE, and Fendy Santoso
Abstract—While having the benefit of mechanical simplicity, model-scale UAVs with only two elevon control surfaces present interesting challenges in dynamics modelling, autopilot design and field-tuning. Because of limited on-board computing and communication bandwidth, traditional control theory was applied to systematically tune the PID based autopilots offline. Based on the aerodynamics analysis, its MIMO (multi-input-multi-output) underactuated linear model configuration was deduced. Utilising the real-time flight data collected from human-controlled test flight, a 2-input-3-output linear model was obtained by means of system identification. It includes the transfer functions in the airspeed loop, heading loop, and altitude loop. The dynamic behaviour of the aircraft was analysed and five PID controllers in three loops were designed based on the root-locus techniques. The controllers were implemented and further tuned in field flights with improved performances. We demonstrate that with proper precautions, traditional control theory can be used to solve complex control problems which are often tackled with nonlinear control algorithms. Index Terms—Unmanned Aerial Vehicles, Underactuated Systems, Modelling and Identification, Autopilot Design and Tuning.
I. I NTRODUCTION N the last twenty years or so, the research and development of unmanned aerial vehicles (UAVs) has made significant progress. Along with the achievements of more conventional fixed-wing and helicopter UAVs, considerable effort has been applied to develop special UAVs with novel configurations and airframes driven by the demands of particular applications and technology advances. The examples include vertical takeoff and landing (VTOLs), flying wings, coaxial rotorcraft, multicopters with an overall trend towards smaller micro aerial vehicles (MAVs). At the same time, their modelling and autopilot design have been active topics to enhance their performance, reliability and safety. Unlike the more familiar flying wings with swept tapered wings, our UAV, colloquially called a “plank”, has an unswept constant chord (width) wing of low aspect (length-to-width) ratio. With the propellor mounted in a tractor configuration but having no rudder or elevators, its attitude is controlled by two-independently driven elevon surfaces, as shown in Fig. 1. It is very rugged, of compact construction, easy to maintain
I
M. Liu is with the Institute of Intelligent Machines, Hefei Institute of Physical Science, Chinese Academy of Sciences, Hefei, 230031, China (email:
[email protected]). G. K. Egan was with the Department of Electrical and Computer Systems Engineering, Monash University, VIC, 3800, Australia (email:
[email protected]). F. Santoso is with the School of Engineering and Information Technology, The University of New South Wales at the Australian Defence Force Academy, Canberra, ACT, 2612, Australia (email:
[email protected]).
Fig. 1. The P15035 UAV, having only two independent elevon (formed from elevator/aileron) control surfaces, in-flight.
and with benign flight behaviour and wide airspeed range. It is perhaps for these reasons, a similar configuration was adopted for the Dragon Eye [1], a small UAV for use by the US Marine Corps. However its two elevon (combining elevator and aileron) control surfaces result in an underactuated configuration and significant coupling between roll and yaw [2], presenting a challenge for controller design. Although it may share major dynamic features with the conventional fixed-wing aircraft, its special characteristics introduced by the underactuated and elevon-only is an interesting area of research. To the best of our knowledge, there has little research published in this area. Generally speaking, the dynamics of majority fixed-wing aircraft exhibit non-linearity and strong coupling among state variables which are subject to uncertainties caused by changes of flying conditions and unpredictable turbulence [3], [4] all exacerbated by the size of the aircraft and the associated aerodynamics. Despite this UAV autopilots and associated onboard navigation firmware must ensure adequate safety and robust dynamic performance. To design an effective autopilot for a given airframe, a comprehensive understanding of its dynamic model is essential, especially when its open loop is unstable. For most conventional UAVs, having at least three primary control surfaces (i.e., rudder, elevator and ailerons), their modelling and controller design have been widely reported in the literature. For instance, the identification of a UAV using flight data was given in [5]. While a study on aerodynamic technologies can be found in [6], an overview of flight control systems of small UAVs was presented in [7]. Furthermore, in [8] and [9], UAV control based on computer vision was proposed, while in [10], a kinematic model-based design was reported. Modelling and adaptive control was demonstrated in [11]. In [12], the authors presented an inverse control scheme for a self-organising map, similar to the gain-scheduling control.
SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
In most practical cases of UAV controller design, the model is formulated by analysis of the geometry, control surfaces and mass distribution. The autopilot is then tuned against this model before actual flights. Although the process can be partially automated, it does require a considerable experience as a badly tuned autopilot can easily cause loss of the aircraft and, potentially at least, cause harm to others. In our case, however, an experienced human pilot and onboard instrumentation were both available. Test flights of representative patterns were carried out with onboard data acquisition. The data, informed by our knowledge of the aircraft’s aerodynamic behaviour, was used to acquire statistical models by applying various schemes of system identification techniques. Given our UAV’s observed dynamic behaviour, five PID controllers in three flight loops were synthesised using root-locus techniques. When implemented in an MP2028 commercial autopilot [13], the controllers showed significantly improved performance after fine tuning in the field tests. After giving a brief description of general trimmed models of conventional model-scale aircraft in Section II, we discuss our UAV’s special features and associated modelling structure in Section III. The experiment based modelling is described in Section IV. In Section V, we present the design and synthesis of its five controllers. Section VI shows the results of field test flight, with conclusions being drawn in Section VII. II. G ENERAL A IRCRAFT M ODEL Conventional aircraft control yaw, pitch and roll movements by using rudder, elevator and aileron control surface deflections. Their nonlinear models could be simplified into two typical linear models, namely the longitudinal and lateral models. During the trimmed level flight with a constant throttle, its further simplified longitudinal model, in which δe is the elevator deflection and θ is the pitch angle, all being increment values, is given by (see [3], [4], [14], [15], [16], and [17]): n(s) θ (s) = . (1) δe (s) ∆s (s)∆ p (s) 2 represents and short-period In (1), ∆s (s) = s2 + 2ξs ωns s + ωns mode, which is usually underdamped; and ∆ p (s) = s2 + 2 is the phugoid mode, which can be either over 2ξ p ωnp s + ωnp or underdamped. On the other hand, the lateral-directional model is given by [ ] n11 (s) n12 (s) [ ] [ ] n21 (s) n22 (s) ϕ (s) δa (s) = (2) ψ (s) δr (s) ∆sp (s)∆r (s)∆d (s)
where ϕ and ψ are roll and yaw angles around the trimmed point, respectively; and δa and δr are aileron and rudder increment reflections, respectively. It is well-known that ∆sp (s) = 2 s + 1/Tsp , ∆r (s) = s + 1/Tr and ∆d (s) = s2 + 2ξd ωnd + ωnd represent the so-called spiral mode, roll subsidence mode, and Dutch roll mode, respectively. In (1) and (2), n(s) and ni j (s), i, j = 1, 2, are the numerator polynomials with proper orders. Models (1) and (2) are stable in general. The short period mode in (1) represents the high-frequency pitch oscillation with a small time constant depending on the position of the
2
TABLE I P15035
SPECIFICATIONS
Span
150 cm
Motor
Electric
Chord
35 cm
Flight duration
40-60 minutes
Length
106 cm
Speed
33-150 Kph
Controls
Elevon
Battery
28 GP3300 NiMH
Weight
2.9-4.6 Kg
Autopilot
MP2028
centre of gravity and the volume of the horizontal tail. The phugoid model characterises the slow response lasting much longer with relatively small damping, mainly depending on aircraft’s lift and drag coefficients. In (2), Tsp > Tr implies that the spiral model, which is a slow and stable yaw motion, has a large time constant compared with the associated roll subsidence mode. The Dutch mode is influenced by aircraft’s yaw damping and static directional stability feature. Refer to [15] and [18] for their further characteristics. III. O UR E LEVON - CONTROLLED UAV Our UAV, the P15035, has only two elevon surfaces. The two elevons must control roll, pitch and indirectly yaw as there is no rudder. Table I gives its main specifications. Focusing on trimmed flight with a constant throttle, we will consider the following simplified 2-input-3-output model structure in our modelling. Let δL and δR be the left and right elevon angles, respectively; and [q, p, r]T be the rate vector of pitch, roll and yaw, the model is given by: ] q G11 G12 [ p = G21 G22 δL . (3) δR r G31 G32 As, mechanically, the aircraft is exactly symmetrical about the vertical plane, the deflection of left and right elevons should be the same sign for pitch movement and opposite for roll and subsequently yaw. This implies that G11 = G12 , G21 = −G22 and G31 = −G32 . (3) can be rewritten as [ ] q Gq 0 p = 0 G p δA (4) δD r 0 Gr where Gq = 2G11 , G p = G21 , Gr = G31 δA = (δL + δR )/2, δD = δL − δR are the average and difference of two elevon deflections, respectively. It is worth pointing out that the outputs of model to be estimated, given by (3) and (4), are the attitude rates instead of attitude angles given by (1) and (2). The reason for such is that the mapping from rates and to angles, being integral or similar, is very likely to fail the estimation due to the high frequency measurement noise. While using attitude rates as the outputs we can avoid the difficulty to obtain (3) and (4) first, then to have (1) and (2) by taking the mapping from [q, p, r]T to [θ , ϕ , ψ ]T into account. IV. E XPERIMENT- BASED MODELLING To determine (4), the experiment-based system identification and parameter estimation approaches, i.e., [19], were applied.
SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
Flying the UAV by a human pilot, the real-time flight data was recorded by on-board logger at a sampling frequency of 5 Hz, which then was used to deduce Gq , G p and Gr statistically. A. Trimmed Attitude Models We consider the linear MIMO-ARX model given by: A(z−1 )y = z−k B(z−1 )u + e
(5)
where z is the one step forward operator; u = [δL , δR and a y = [q, p, r]T ; A(z−1 ) = I + ∑ni=1 Ai z−i ∈ R3×3 and B(z−1 ) = nb −k ∑i=0 Bi z−i ∈ R3×2 are the matrix real polynomials; k ≥ 0 is the step number of delay; and e is the modelling error. The mapping G : u 7→ y can also be expressed using the transfer matrix: ad j(A)B (6) G = A−1 B(z) = |A| ]T
where G = {Gi j } ∈ R3×2 is identical to the matrix G in (3), ad j(A) is the adjoint matrix of A, and |A| is the characteristic polynomial of G. During the estimation, model format in (3) was applied with an expectation that the outcome could be used for the clarification of (4). The MATLAB’s system identification toolbox was used for modelling. After a tedious process of trial and error for a large variety on the system orders and delay time estimations, a compromised MIMO-ARX model, with na = 3, nb = 2 and k = 1, was chosen, based on the clarifications on models’ fit errors, one step ahead prediction errors as well as the simplicity. For the G finally obtained, it clearly indicated that G11 ≈ .G12 , G21 ≈ . − G22 , and G31 ≈ . − G32 as each pair has very similar pole/zero distribution. This validates (4) and shows that the flight dynamics is decoupled as longitudinal and lateral models driven by δA and δD separately [20]. The final outcomes, all with sampling rate of 5Hz, are given by: q −0.7804z(z + 0.110) = , δA (z − 0.9125)(z2 + 0.2267z + 0.3763)
(7)
Gp =
p 2.003z(z − 0.9044) = , δD (z − 0.912)(z2 − 0.629z + 0.1441)
(8)
Gr =
r −0.3688z(z − 1.25) = . δD (z − 0.9115)(z2 − 0.629z + 0.1441)
(9)
Gq =
and
See [20] for detailed modelling and validation. B. Longitudinal Model To obtain the longitudinal model given by (1), we need to find out the mapping from pitch-rate q to pitch θ . Based on a set of flight data, it was obtained using MATLAB as θ /q = 0.021z/(z − 0.9893). Thus, elevon to pitch angel model is given by combining it with (7), which is −0.0164z2 (z + 0.110) θ = . δA (z − 0.912)(z − 0.990)(z2 + 0.227z + 0.376)
(10)
Its continues time version is then given by
θ −0.034963(s + 7.15)(s2 + 11.88s + 99.24) = . δA (s + 0.463)(s + 0.0538)(s2 + 4.887s + 83.12)
(11)
3
Being the longitudinal model of the UAV, (11) indicates that the short period mode in (1) is ∆s (s) = s2 +4.887s+83.12 with a natural frequency of ωn = 9.12 rad/s and a damping ratio of ξ = 0.268. Its phugoid model ∆ p (s) is exponentially overdamped, determined by the large time constants T1 = 18.58 = 1/0.0538 second (while the other one is T2 = 2.16 = 0.463 second). Although ∆s is under damped with a ξ = 0.268, it rapidly decays with a settling time of less than 1 second. Thus, the longitudinal response is dominated by exponential model (s+0.0538), and the short period mode has a very weak influence over the response. C. Lateral-directional Model Using the flight data, the transfer function from roll-rate to roll is worked out as ϕ /p = 0.0885z/(z − 0.9981) and that from yaw-rate to yaw is ψ /r = 0.1497z/(z − 0.9981). Cascading them with (7) and (8) respectively we have the following lateral-directional models:
ϕ 0.177z2 (z − 0.9044) = δD (z − 0.912)(z − 0.9981)(z2 − 0.629z + 0.1441)
(12)
and
ψ −0.056z2 (z − 1.25) = . (13) δD (z − 0.912)(z − 0.9981)(z2 − 0.629z + 0.1441) Consequently the lateral-directional model (2) of our UAV in s domain, to which δD is the only input, becomes [ ] [ ] 1 ϕ (s) n1 (s) = δD . (14) ψ (s) ∆sp (s)∆r (s)∆d (s) n2 (s) In which ∆d (s) = s2 +9.686s+32.29 represents the Dutch Roll mode with a damping ratio of 0.85 and a natural frequency of 5.68 rad/s. The spiral mode is given by ∆sp (s) = s + 0.0095 indicating a larger time constant of yaw motion of 100 seconds. Term ∆r (s) = s + 0.4633 is the subsidence mode with a time constant of 2 seconds. It should be noted, as indicated by (13), that yaw model is a non-minimum phase system. As we have no rudder control surface, there is no direct control of yaw, yaw being achieved indirectly through roll. When a yaw is attempted the initially small elevon deflection will lead to a greater air drag for the wing opposite to the desired yaw direction, and causes a slight oppositional yaw. As the elevon deflection increases further the aircraft rolls, overcoming the initial adverse yaw and turns fuselage back to the direction required. V. AUTOPILOT PID PARAMETER D ESIGN The onboard autopilot MP2028 is a multi-mode controller which can be programmed to implement a variety of multiloop configurations [13]. Since it only allows separated singleinput-single-output PID control, the advanced algorithms cannot be applied. We will design five PID controllers in three loops mainly based on the root locus technique (simulation studies of robust control of this UAV is given in ([21], [22], [23]). Among the set of alternatives, we adopt the typical control configurations consisting of an airspeed control loop, a heading
SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
vd ev θd eθ - h- Cv - h- Cθ 6 6
δA - Gθ
θ - Gv
v -
30Hz
4
A. Airspeed Control Loop 1) Pitch loop: As the inner pitch loop is updated at 30Hz (see Fig. 2), we convert (10) to its 30Hz version using MATLAB, given by
5Hz Gθ = Fig. 2. Airspeed loop consists of an inner pitch loop and an outer airspeed loop, in which v is the actual airspeed, θ is pitch angle, δA is the elevon average, and vd is the airspeed command.
ϕd eϕ hd eh - h- Ch - h- Cϕ 6 6
δD - Gϕ
ϕ - Gh
h -
30Hz 5Hz
Fig. 3. Heading loop consists of an inner roll loop and outer heading loop, in which h is the actual heading, ϕ is roll angle, δD is the elevon difference, and hd is the heading command.
loop and an altitude loop, provided by MP2028. Shown in Fig. 2, the airspeed has a typical “double loop” format including an inner elevon-to-pitch loop, at a sampling rate of 30Hz and an outer airspeed loop, at 5Hz. Longitudinal model Gθ ’s expression in 5Hz is given by (10), Gv is the transfer function from pitch θ to airspeed v to be obtained and Cθ and Cv are two controllers to be designed. Similarly, the double heading loop configuration is shown in Fig. 3, in which Gϕ is corresponding to (12), Ch and Cϕ are two controllers to be designed, and Gh is the transfer function from roll ϕ to heading h (= ψ ) to be obtained. The third one is the altitude loop shown by Fig. 4, in which Ga is the transfer function from throttle thr to altitude a and Ca is the altitude controller to be determined. It should be noted that although yaw and heading are defined in different coordinates; in this work, they are regarded as the same (as indicated by the autopilot’s log data) and named alternatively due to limited pitch/roll motion. As our controllers are constrained to PID only by MP2028, the freedom of design is limited. Further challenge is that the double-loop design requires a compromise between the performance of the inner loop and the outer loops, which requires a repeated trial-and-error process.
ad
ea - h- Ca 6
thr - Ga
a -
5Hz Fig. 4. Throttle-to-altitude loop, in which a is the actual altitude, thr is the throttle, and ad is altitude command.
θ (z) δA (z)
=
−0.001434(z − 0.7867) (z − 0.9847)(z − 0.9982) (z2 − 1.581z + 0.67167) × 2 . (15) (z − 1.765z + 0.8498) 30Hz
The root locus of its unit feedback system is given by Fig. 5 left. Since the control task is to have a zero pitch steady state error for level holding, an additional integrator from controller is needed. Hence, we use a PI controller whose zero can cancel the stable pole near z = 0.9982, given by Cθ =
δA (z) −0.922(z − 0.9982) . = eθ (z) z−1
(16)
Although it seems that it can be replaced by a P control after cancelling its zero at z = 0.9982 with its pole at z = 1, the empirical test shows that a P control alone cannot hold the altitude. This is due to the fact the open loop pole at z = 0.9982 is corresponding to the phugoid mode, represented by factor s + 0.0538 in (11), which is not an integral. To have a zero level holding error it has to be canceled and replaced by an ideal integrator. With (16), the inner closed loop transfer function is then given by
θ (z) θd (z)
=
0.0013225(z − 0.7867) (z − 1)(z − 0.983) (z2 − 1.581z + 0.6716) × 2 (z − 1.766z + 0.8504) 30Hz
(17)
whose step response is shown in Fig. 5. 2) Airspeed loop: To design the outer loop controller we need to convert (17) to its 5Hz expression, which is:
θ (z) θd (z)
=
0.015128(z + 0.1257) (z − 1)(z − 0.9022) (z2 − 0.0175z + 0.001701) × (z2 + 0.2256z + 0.3782)
.
(18)
5Hz
Its root locus is given in Fig. 6 left. As the outer loop output is the airspeed, the transfer function from pitch-to-airspeed, namely Gv in Fig. 2 has to be identified using the flight data. The relationship between altitude, pitch, roll and airspeed is rather complex. In relatively simple level trimmed flight throttle controls airspeed which determines lift which determines altitude. However, for example, with a large roll angle the projected wing area in the inertial (gravity) frame is reduced requiring greater airspeed to restore the desired lift. To find an approximate model for trimmed flight we applied a period of flight record, with constant throttle. The model obtained is Gv =
−0.027z v(z) = θ (z) z − 0.92
(19)
with a sampling rate of 5Hz and in terms of meter per second to degree. This model is indeed only an approximate in a closed range of trimmed level flight.
SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
5
Step Response 1.4 Step Response
1.5
1
1
0.8
0.6
0.4
−0.5
1.4
1.2
1
0.5 Amplitude
0
1.2
Imaginary Axis
0.5 Amplitude
Imaginary Axis
1
0
0.6
−0.5 0.4
0.2
−1 −1
−1 0
−0.5
0 Real Axis
0.5
1
0.8
0
5
10
15
20
0.2
25
Time (sec)
−1.5 −2
Fig. 5. Left: Root locus of inner open pitch loop transfer function (15); Right: step response of inner closed pitch loop with (16) while loop gain is 0.6 (blue), 0.8 (green) and 1 (red).
0
−1.5
−1
−0.5 0 Real Axis
0.5
1
1.5
0
10
20
30 Time (sec)
40
50
60
Fig. 7. Left: Root locus of airspeed loop after Cv brings in a zero at z = 0.8; Right: Step response of closed airspeed loop with (21) where kv =0.2(blue), 0.3(green) and 0.5(red).
2
1.5
1.5
1
0.5 −1
−1 −1.5 −2
−1.5 −1.5
−1
−0.5 Real Axis
0
0.5
1
−2
−2
−1 0 Real Axis
1
−0.5
Fig. 6. Left: Root locus plot of open loop transfer function (18); Right: Root locus of open airspeed loop transfer function (20).
−1 −1
−0.5
0 Real Axis
0.5
1
Fig. 8. Left: Root locus of open roll loop transfer function (22); Right: Roll step response.
By cascading (18) and (19), we have the following: 0.0013615z(z + 0.1257) v(z) =− θd (z) (z − 1)(z − 0.92)(z − 0.9022) (z2 − 0.0175z + 0.001701) × . (z2 + 0.2256z + 0.3782)
0
Step Response 1
1
(20)
0.8
B. Heading (Yaw) Control
0.5
0.6
0
0.4
0.2
0
−0.5
−0.2
−1 −1
−0.4
−0.5
0 0.5 Real Axis
1
1.5
0
5
10
15 Time (sec)
20
25
30
Fig. 9. Left: Root locus of open heading loop with transfer function (27); Right: Step response of the overall heading loop with controller (28) in which kh = 3.5. .
Step Response
1
1 0.9 0.8
0.5 Imaginary Axis
We then design the outer loop airspeed controller Cv in Fig. 2. Open loop transfer function (20) has a root locus shown in Fig. 6 right. It indicates that, due to three poles at z = 1, 0.92 and 0.9022, the closed loop is stable only for smaller open loop gain. To increase the stability margin of airspeed loop, Cv should be a PD controller given by Cv = −ks (z − zv )/z with zv in a range (0.8 - 0.92) to cancel one of (20)’s pole nearby and pole z = 0 to cancel (20)’s zero at the same position and therefore to pull the root locus back into the unit circle. Fig. 7 left shows the root locus after a controller z − 0.8 Cv = −kv (21) z is chosen. For kv = 0.2, 0.3 and 0.5, the closed airspeed loop have the step responses given in Fig. 7 right indicating the prompt rise time and a zero steady state error.
Imaginary Axis
5Hz
Amplitude
−0.5
0 −0.5
0.7 Amplitude
0
1 0.5
Imaginary Axis
Imaginary Axis
Imaginary Axis
1 0.5
0
0.6 0.5 0.4 0.3
We now determine the parameters for Cϕ and Ch in the double heading loop shown in Fig. 3. 1) Roll Loop: At a sampling frequency of 30Hz, Gϕ = ϕ (z)/δD (z) in (12) at 5Hz sampling rate becomes ϕ (z) 0.018139(z2 − 1.417z + 0.5131) = . (22) δD (z) (z − 1)(z2 − 1.694z + 0.7243) 30Hz
−0.5 0.2 0.1
−1 −1.5
−1
−0.5 0 Real Axis
0.5
1
0
0
50
100
150
Time (sec)
Fig. 10. Left: Root locus of open altitude loop transfer function (30); Right: Step response of the overall throttle-to-altitude loop with (31) (ka = 40).
SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
6
TABLE II D ESIGNED CONTROLLERS VIS FIELD TUNED CONTROLLERS
Its root locus is given by Fig. 8 left showing rather favourable behaviours dominated by a pair of conjugate roots and can be easily stabilised by a P controller. Thus, a controller given by
Designed controllers
Field tuned controllers −0.9281 (z−0.9813)(z−0.07914) z(z−1)
(23)
Cθ
is chosen, leads to the following closed loop transfer function: 0.01179(z2 − 1.417z + 0.5131) ϕ (z) = . (24) ϕd (z) (z − 0.9541)(z2 − 1.728z + 0.7528) 30Hz
Cv
−0.922 z−0.9982 z−1 −ks z−0.8 z
Cϕ
0.65
0.65
Ch
−5.5 z−0.9126 z ka (z−0.9858)(z−0.07415) z(z−1)
−1.945 z−0.9126 z
Cϕ = 0.65
Its step response shown in Fig. 8 right indicates a zero steady state error and a rise time of 2 seconds. 2) Heading loop: As the outer yaw (heading) loop is sampled at 5Hz, we need to convert (24) back to its 5Hz version: 0.11272(z + 0.02879)(z − 0.02136) ϕ (z) . (25) = ϕd (z) (z − 0.7522)(z2 − 0.7188z + 0.1789) 5Hz Roll to heading (yaw) transfer function is given by (12) and (13) being a non-minimum phase system given by: ψ ψ δD −0.31751(z − 1.25) = = (26) . ϕ δD ϕ z − 0.9044 5Hz
Cascading it with (25) and recalling notice ψ = h, we have the roll reference to heading transfer function given by h(z) −0.035791(z − 1.25) = ϕd (z) (z − 0.9044) (z + 0.02879)(z − 0.02136) × (27) (z − 0.7522)(z2 − 0.7188z + 0.1789) 5Hz which is a non-minimum phase system inherited from the open loop lateral-directional model (13). Fig. 9 left indicates its root locus. Based on it a simple PD controller is designed and given by z − 0.9126 Ch = −kh . (28) z While kh = 5.5, the step response of overall heading loop is given by Fig. 9 right and the closed loop transfer function is then h(z) −0.0213z(z − 1.25) . = (29) 2 h (z) (z − 0.2632)(z − 1.096z + 0.3882) d
Ca
−3.612 z−0.22 z
8.55 (z−0.9858)(z−0.07415) z(z−1)
In the case of ka = 40, the step response for the closed altitude loop is shown in Fig. 10 right. Up to now, we completed the design of five PID controllers in all three loops. In the next section, we will present the field test results and outcomes of PID fine tuning. VI. S IMULATIONS AND F IELD T EST R ESULTS Based on the mathematical models shown in the last section, several computer simulations as well as field flight and on-site tuning were conducted. Being the final outcomes, the designed controllers, i.e., (16), (21), (23), (28) and (31), and their final versions are listed in Table II. In what follows, we present both computer simulations and field test results to highlight the accuracy of our model and the effectiveness of our final tuned controllers as given in the right column of Table II. We will also discuss the deviations between them. A. Simulation Results To observe the effectiveness of our lateral and longitudinal models we compare their simulated response with respect to ones obtained from real-time flight as seen in Fig. 11 left. In other words, we fed our model with the same input signals as the ones applied in the real flight and compared the outputs of altitude and yaw tracking. We found that both our longitudinal and lateral models demonstrated reasonably good accuracy as indicated by their negligible tracking errors.
5Hz
C. Throttle-to-Altitude Loop From the throttle and altitude data recorded during the test flight, we obtain Ga in Fig. 10 right which is given by 0.00000582z a(z) . = (30) Ga = t (z) (z − 0.9858)(z − 0.96) hr
5Hz
The input is the normalised fine servo (0-32767), and the output is altitude in meter. It has a DC gain of 0.01, implying that a variation of 120 meters in flight altitude corresponds to a variation of 12000 fine servo settings. Its (unit feedback system’s) root locus is shown in Fig. 10 right. To increase the stability margin, we apply a PID controller which cancels the open loop pole at 0.9858 and bends the root-locus left towards to the origin of z-plane, given by: Ca = ka
(z − 0.9858)(z − 0.07415) . z(z − 1)
(31)
Fig. 11. Left: comparative performance (model validation) of our longitudinal and lateral models with respect to experimental flight-data; blue shows the performance of our model with respect to real-time flight data input, green denotes the expected outcome from real-time flight data, and red is the set point. We observe that our models achieve acceptable tracking accuracy. Right: 3D flying routes of our UAV from GPS data, showing overall trajectories.
SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
7
B. Field Test and Results Fig. 11 right shows a typical 3D profile obtained from another mission. In the flight lasting more than 12 minutes (3600 samples at 5Hz), the human pilot flew the UAV to 60 meters altitude where it was switched to autopilot control at the 22nd second. Based on the prior settings of airspeed, altitude and way-points it climbed further to the given level of 120 meters and entered a level flight following a complex path specified. Although the altitude was set to a constant, the path turns to both left and right directions. The landing, not shown in the figure, was performed under human control. In the same mission associated with Fig. 11 right, the profiles of attitude control and airspeed, altitude hold and throttle profiles are shown in Fig. 12 in which the red plots are commands and the blue plots are the actual responses. For the same test, Fig. 13 indicates that the direction was kept heading left for 360 seconds (step 1800), then was kept turning right until step 2500 and afterwards turned to the left again. The throttle profile during the flight is given in Fig. 12c. Due to the complicated flying path required, frequent heading changes are shown in Fig. 13c, which are associated with coupled roll variation as well, given by Fig. 13b. The coupling is indeed attributed to UAV’s rudder-less airframe. As expected, the non-minimum phase feature of yaw loop causes an inevitable “delay” of the yaw tracking when the UAV keeps turning in one direction, and this delay vanishes while the aircraft is flying straight ahead as indicated by Fig. 13c. This can be well-explained by considering a stable nonminimum phase system’s responses to a ramp signal and a step signal. As mentioned before, it is due to the increasing drag to the wing opposite at the very beginning, when a turn is attempted. As shown by the figures, the pitch control, airspeed regulation and level holding all show satisfactory performances indicated by Fig. 13. The pitch is effectively regulated around zero degree, while level holding shows ultimate stability, i.e., the actual altitude varies around command with a maximum deviation of 7.5 meters due to the instant turbulence and barometers noise. Meanwhile, the airspeed is also consistently well-regulated at the given level of 20.7 meter per second. During the same flight test, coordinated turn performance was examined. While the UAV was making a consistent left and right yaw motion, as shown in Fig 13c, Fig 13d shows the logged body y-axis lateral accelerations, recorded by the on-board accelerometer, as well as its simulation outcome for comparison. The lateral acceleration was rather small even in the phases the UAV was making continuously yaw motion demonstrating that the turn is well-coordinated. The accelerometers are noisy and some artefacts in the data will have been filtered out. In conventional model-scale aircraft, we would normally use aileron differential to reduce the deflection of the aileron on the outside of the turn and also the drag that would otherwise result in adverse yaw and associated drag. For planks, we do not use significant elevon differential because the average of the aileron component of the deflections will be interpreted as an elevator or pitch command. In practice planks, like ours,
Fig. 12. The profiles of altitude, airspeed, and throttle from a real-time flight. The altitude hold set point command was 120 meters.
Fig. 13. The profiles of lateral motions (pitch, roll, yaw) from a realtime flight. While the red plots are the desired values, the blue plots show actual variables. For lateral acceleration, while blue indicates experimental acceleration, red denotes its simulated profile. The lateral acceleration data was taken when the UAV made loops in almost steady turn condition. Near zero lateral acceleration clearly demonstrates the performance of our autopilot in performing coordinated turns.
SUBMITTED TO IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY
when rolling exhibit a transverse airflow that moves down the inside wing impinging upon the large vertical stabiliser the leading edge of which should be close to the trailing edge of the wing. This compensates for adverse yaw. C. Discussions Table II indicates that three controllers, Cϕ , Ch and Ca , in heading loop and throttle loop are almost identical to the designed ones despite small gain variations in Ch and Ca . This can be due to offset differences in servo calibration and slight mismatches in model gains. However, the tuned pitch loop controller Cθ is a PID, instead of a PI, as shown in (16). This implies a more conservative design. Its additional zero at z = 0.07914 leads to a quick response. This means that the real inner pitch model has a much larger stability margin than (15) in the sense that its poles (and zeros) could be much closer to the origin than those shown in Fig. 5 right. In fact, if we treat its zero as . z = 0.07914 = 0, the two Cθ ’s will become identical. The above argument can also be used to reason why a smaller zero of z = 0.22 was tuned in airspeed controller Cv instead of the designed z = 0.8. Due to the fact that the true poles (and zeros) are much closer to the z plan origin than those given by Fig. 5 right, the closed inner loop root locus will be bent much further towards the origin than those given in Fig 7 right. Thus, the tuned controller given by Cv = −3.612(z − 0.22)/z can still stabilise outer loop resulting a reasonably good performance. As regards the deviations in pitch and airspeed modelling, the propellor thrust alignment is usually established so as not to generate any pitch or yaw input cruising in trimmed flight. Motor torque generates roll input. Dramatic change to throttle can cause substantial effects most notably pitch. However, our models were obtained from a trimmed flight during which the throttle was a constant. Ignoring the throttle’s effects inevitably causes some modelling errors. This can be easily seen that during field test when the UAV was tracking a complicated command path, the actual throttle has a variation around 8% of its full range rather than being a constant, as shown by Fig. 12c. This would definitely affect the final outcome of the tuning process. The good point is that once the throttle is involved, the true model tends to be more stable. This leaves more margin for the designers, so that we can either add new zero to it, or move the designed zero even closer to the origin on z-plane. VII. C ONCLUSION The paper presented the modelling, autopilot design and the final field test results for an unconventional model-scale UAV controlled using elevons and without a rudder or elevators. We investigated the special features of this kind of under-actuated aircraft allowing the structure of a model for trimmed flight to be formulated. Based on the real-time flight data, linear models for airspeed control, heading control and altitude control were acquired, which were then used to design five PID controllers. The controllers were simulated and implemented on the UAV in a real field test. Through the fine-tuning process, the controllers led to satisfactory flight performances in heading, altitude hold, airspeed regulation and turn-coordination.
8
ACKNOWLEDGMENT The authors would like to thank Mr. Raymond Cooper, for his construction of the P15035 aircraft and coordination of all test flights, and all members of our Aerobotics Research Groupr at Monash University. This work was partially supported by Chinese NSFC grant No. 61340016. The authors gratefully acknowledge the constructive contributions of the anonymous referees. R EFERENCES [1] AeroVironment Inc., (2014) Dragon Eye, Available: http://www.avinc.com. [2] G. K. Egan, R. J. Cooper, and B. Taylor, Unmanned Aerial Vehicle Research at Monash University, Eleventh Australian International Aerospace Congress, Melbourne, Australia, 13-17 March 2005. [3] B. Etkin, Dynamics of Atmospheric Flight, USA: Dover, 2005. [4] R. W. Pratt, Flight Control Systems: Practical Issues in Design and Implementation, England: IEE, 2000. [5] J. Rao, Z. Gong and Z. Jiang, GA-Based Flight Motion Model Parameter Identification of a Subminiature Fixed-Wing Unmanned Aerial Vehicle, Proceedings of International Conference on Mechatronics and Automation pp.3549 - 3554 Aug. 2007. [6] A. Abbas, J. de Vicenteb, E. Valerob, Aerodynamic technologies to improve aircraft performance, Aerospace Science and Technology, Vol 28, Issue 1, pp. 100132, July 2013. [7] Y. Cui and T. Inanc, Controller Design for Small Air Vehicles An Overview and Comparison, International Conference on Unmanned Aircraft Systems (ICUAS), Atlanta, GA, pp. 621-627, May 28-31, 2013. [8] A.R. Shabayek, C. Demonceaux, O. Morel, D. Fofi, Vision Based UAV Attitude Estimation: Progress and Insights, J. Intell. Robot. Syst. Vol. 65, Issues 1-4, pp. 295308, 2012. [9] K. Schauwecker, A. Zell, On-Board Dual-Stereo-Vision for the Navigation of an Autonomous MAV, J. Intell. Robot. Syst., Vol. 74, Issue 1-2, pp. 116, April 2014. [10] N.P. Kakirde, A. Davari, and J. Wang, Trajectory Tracking of Unmanned Aerial Vehicle using Servomechanism Strategy, Proceedings of the ThirtySeventh Southeastern Symposium on Systems Theory, pp.163-166, March 2005. [11] Z. Ye, P. Bhattacharya, H. Mohamadian, H. Majlesein and Y. Ye, Equational dynamic modelling and adaptive control of UAV,IEEE/SMC International Conference on System of Systems Engineering, pp.339-343, April 2006 [12] J. Cho, J. C. Principe, D. Erdogmus and M.A. Motter, Modelling and inverse controller design for an unmanned aerial vehicle based on the self-organising map, IEEE Transactions on Neural Networks, vol. 17, Issue 2, pp. 445-460, March 2006. [13] MicroPilot Inc., (2004) MicroPilot 2028g Installation and Operation, Available: http://www.micropilot.com. [14] G. Franklin, J. D. Powell and A. Emami-Naeini, Feedback Control of Dynamic Systems, 3rd ed. USA: Addison-Wesley, 1994. [15] B. N. Pamadi, Performance, Stability, Dynamics, and Control of Airplanes, 2nd ed. Virginia, USA: AIAA, 2004. [16] T. R. Yechout, Introduction to Aircraft Flight Mechanics: Performance, Static Stability, Dynamic Stability, and Classic Feedback Control. USA: AIAA, 2003. [17] B. L. Stevens and F. L. Lewis, Aircraft Control and Simulation, 2nd ed. Harlow, New Jersey: John Wiley & Sons, 2003 [18] M. V. Cook, Flight Dynamics Principles, 3rd ed. UK: Arnold, 1997. [19] L. Ljung and T. Soderstrom, Theory and Practice of Recursive Identification, MIT Press, 1983. [20] M. Liu, G. K. Egan and Y. J. Ge, Identification of Attitude Flight Dynamics for An Unconventional UAV, IEEE International Conf. on IROS, pp. 3243 - 3248, Oct., 2006. [21] F. Santoso, M. Liu and G. Egan, H2 and H∞ Robust Autopilot Synthesis for Longitudinal Flight of a Special Unmanned Aerial Vehicle: A Comparative Study, IET Control Theory and Applications, vol. 2, no. 7, pp 583-594, 2008. [22] F. Santoso, M. Liu and G. Egan, µ -synthesis Loop Shaping for Altitude Flight Dynamics of a Flying-Wing Airframe, Journal of Intelligent and Robotic Systems, to appear 2014. [23] F Santoso, M Liu, GK Egan, Linear Quadratic Optimal Control Synthesis for a UAV, 12th Australian International Aerospace Congress, AIAC12, Melbourne, 16-22 March 2007.