Trajectory Linearization Control for a Miniature ... - Springer Link

4 downloads 211 Views 1MB Size Report
Based on TLC theory, the objective is to design a time-varying feedback controller Vctrl=K1(t)Paug to stabilize Paug. A simple method is to set K1(t)=[KI1, KP1],.
International Journal of Control, Automation, and Systems (2013) 11(2):286-295 DOI 10.1007/s12555-012-0042-0

ISSN:1598-6446 eISSN:2005-4092 http://www.springer.com/12555

Trajectory Linearization Control for a Miniature Unmanned Helicopter Bing Zhu and Wei Huo Abstract: Trajectory linearization control (TLC) approach is applied to design a nonlinear trajectory tracking controller for a miniature unmanned helicopter. The controller is based on nonlinear model derived from Newton-Euler equations, with collective and cyclic pitches being regarded as actual controls. Via model simplifications, the nonlinear helicopter model can be transformed into a cascaded form including four subsystems. Corresponding with the simplified cascaded structure, the proposed controller is constructed by synthesizing TLC designs for subsystems. Each of them includes designs of a pseudo-inversion and an error regulator. A summarized TLC algorithm for the unmanned helicopter is listed briefly after the detailed controller design process. Simulation results are provided to demonstrate performances of the closed-loop system. Keywords: Flight control, nonlinear control, trajectory linearization control, trajectory-tracking, unmanned helicopter.

1. INTRODUCTION The research of miniature unmanned helicopter has became very popular during recent years. Compared with fixed-wing vehicles and ordinary manual manipulated helicopters, miniature unmanned helicopter has some significant advantages. For example, the miniature unmanned helicopter requires smaller space to take off and land; it is capable to operate low-velocity flights that can seldom be performed by fixed-wing vehicles; moreover, it is capable to complete some tasks in harsh environment without pilots. Among all aspects of researches on miniature unmanned helicopters, control systems design is regarded as one of the most significant studies. At the early stage in developing controllers for unmanned helicopter, linear controllers (PID [1], LQR and LQG [2-4]) are among the most widely adopted approaches. For linear controller design, the nonlinear model of the unmanned helicopter should be linearized in flight modes such as hovering or forward flight with constant velocity; then controllers are designed to stabilize specific flight modes. Although linear controls are uncomplicated and reliable, they only stabilize limited numbers of flight modes, and require transitions among different working points; moreover, tuning parameters of linear controllers requires expertise. Linear controls with transitions among flight modes can be categorized into gain-scheduling approach. Fuzzy __________ Manuscript received January 20, 2012; revised October 18, 2012; accepted December 2, 2012. Recommended by Editorial Board member Wen-Hua Chen under the direction of Editor Zengqi Sun. This work is supported by the Natural Science Foundation of China under Grant No. 61074010. Bing Zhu and Wei Huo are with the Seventh Research Division, and Science and Technology on Aircraft Control Laboratory, Beihang University, Beijing 100191, P. R. China (emails: [email protected], [email protected]). © ICROS, KIEE and Springer 2013

logic control [5,6] is a superior linear approach that blends linear controls with weight functions. It deviates from gain-scheduling by using fuzzy rules rather than transitions. To avoid complexity of transitions among linearized modes, nonlinear controllers are designed for unmanned helicopters. The most representative method is backstepping [7-9] that is directly based on Lyapunov stability analysis. However, one of the most remarkable drawbacks of backstepping is that it might be difficult to solve derivatives of virtual controls. Adaptive neural network control [10] is introduced for controller design of unmanned helicopter; however, its stability analysis is fairly complicated. Exact input-output linearization is proved unsuitable for controller design of the helicopter [11]. Sliding mode control [12] is effective in robust controller design for large-scale systems; however, it uses un-smooth sign functions which would harm helicopter servos. Researchers design Robust H∞ controllers [13], such that approximate linearized model can be used while model uncertainties and disturbances are compensated. Other nonlinear methods include adaptive output regulation [14], model predictive control [15], and learning control [16]. Some recent achievements in unmanned helicopter control include: 1) hybrid control [17] by applying a “maneuver automaton” to select optimally different control laws; 2) robust control for full envelope flight control [18]; 3) controller with obstacle avoidance strategies [19]; 4) hierarchical behavior based control architecture [20]; 5) Model predictive control with mode transition controller [21]; 6) pseudo control hedging [22] for avoiding bad adaptations in case of actuator saturations. In this paper, trajectory linearization control (TLC) approach [23,24] is applied to trajectory tracking of a miniature unmanned helicopter. TLC is a model based approach, which could be divided into two parts: 1) a pseudo inversion that forces the controlled system to

Trajectory Linearization Control for a Miniature Unmanned Helicopter

track the command trajectory approximately; and 2) an error regulator that stabilizes tracking errors. Compared with classical linear approaches operating only on limited numbers of discrete points, TLC is capable to function on the entire continuous trajectory. The algorithm of TLC is simpler than those of classical nonlinear approaches, since it avoids complicated input-output linearization and prohibitive solutions for derivatives of virtual controls. So far, TLC has been applied to some specific cases successfully, such as Ohio University Robocup Soccer Players [25], RLV Flight Control [26], HSV Flight Control [27], Quanser UFO [28], and quadrotor helicopter [29]. Main contributions of this paper include that: 1) A unified nonlinear control algorithm is designed such that the closed-loop system tracks the entire continuous trajectory, which is different from series of linear controllers for specific flight modes. 2) The complexity of developing pseudo-inversion for high-order full-state model is avoided by designing and combining controllers for subsystems. 3) Collective and cyclic pitches of main and tail rotors, instead of thrusts generated by the rotor discs [11], are considered as actual controls; and expressions of thrusts with respect to collective pitches are described by direct algebra expressions proposed in [30], which are simpler than dynamical equations [31] and more accurate than proportional expression [4]. 4) An augmentation approach is introduced to generate command trajectory of yaw angle, so that a possible discontinuous transition (from -π to π) is avoided. The configuration of this paper is arranged as following: some basic conceptions of TLC are reviewed in Section 2; a simplified nonlinear dynamic model of unmanned helicopter is provided in Section 3; detailed control design procedures based on TLC are described in Section 4; performances of the closed-loop system are demonstrated by simulation in Section 5; conclusion of this paper is given in the last section. 2. TRAJECTORY LINEARIZATION CONTROL TLC approach [23,24] is invented to address the following nonlinear system: ⎧⎪ξ(t ) = f (ξ (t ), μ (t ), θ ) , ⎨ ⎪⎩η (t ) = h (ξ (t ), μ (t ), θ ) ,

(1)

where ξ ∈ R n , µ ∈ Rl , η ∈ R m , and θ ∈ R r are system states, inputs, outputs and parametric vectors respectively. Define ξc , µc and ηc as the command states, inputs and outputs, respectively; and they satisfy:  ⎪⎧ξc (t ) = f (ξc (t ), μc (t ), θ ) , ⎨ ⎪⎩ηc (t ) = h (ξc (t ), μc (t ),θ ) .

(2)

The purpose of trajectory-tracking is to design a controller, such that the practical output η(t) of the closedloop system tracks the command output ηc(t).

287

Fig. 1. Basic structure of TLC, composed by a pseudo inversion and an error regulator. Generally, TLC is composed by two parts: one is an inverse model of (2) that enables the practical trajectory to approximate the command trajectory; and the other is a regulator that stabilizes errors brought by initial states, model uncertainties and disturbances. The signal generated by the inverse model of (2) is defined as nominal control signal (denoted by subscript “n”). As is illustrated in Fig. 1, the designed control is the sum of the nominal control and the regulator. Inverse model is of great significance in trajectory tracking of nonlinear control systems [32,33], because the exact inverse model could cancel nonlinear dynamics of the plant, and contribute to asymptotical tracking. Unfortunately, the ideal inverse model is non-causal and almost impossible to implement [23]. The reason is that derivatives used in the ideal inverse model depend on future states. Consequently, an approximation called pseudo-inversion [24] has to be introduced to substitute the ideal inversion. The pseudo-inversion is obtained primarily by replacing exact derivatives in the inverse model with signals generated by pseudo-differentiators. A second order pseudo differentiator is given by ⎧ x1 = x2 , ⎪ 2 ⎨ x2 = −ω d ( x1 − u ) − 2ξ d ω d x2 , ⎪y = x , 2 ⎩

(3)

where y is regarded as the pseudo derivative of u; ξd is fixed to 0.707 as the optimal damping ratio; and ωd is a trade-off between better approximation and smaller highfrequency noise. Since pseudo-inversion is only an approximation, and initial states are sometimes incompatible with the command trajectories, there exist errors between the command trajectory and the practical trajectory. Define errors of states, inputs and outputs as ξe = ξ c − ξ , ηe = ηc − η , and µe = µc − µ , respectively. It follows that ξe = f (ξ + ξe , μ + μe , θ ) − f (ξ , μ , θ ) = F (ξ , ξ e , μ , μe , θ ) ,

ηe = h ( ξ + ξ e , μ + μ e , θ ) − h ( ξ , μ , θ ) = H (ξ , ξ e , μ , μe , θ ) .

(4)

(5)

Due to the pseudo-inversion, tracking errors to be stabilized become comparatively small; therefore, (4) and (5) can be linearized: ⎧⎪ξe = A(t )ξ e + B(t ) μctrl , (6) ⎨ ⎪⎩ηe = C (t )ξe + D(t ) μctrl ,

Bing Zhu and Wei Huo

288

where m is the gross mass; F and Q are external resultant forces and torques in FRF, respectively; the matrices

where A (t ) =

∂F ∂ξe

∂F B (t ) = ∂μe C (t ) = B (t ) =

∂H ∂ξe ∂H ∂μe

= ξe = 0, μe = 0

= ξe = 0, μe = 0

= ξe = 0, μe = 0

= ξe = 0, μe = 0

∂f (ξ , μ ) ∂ξ ∂f (ξ , μ ) ∂μ

,

⎡ c θ cψ ⎢ c θ sψ ⎢ ⎢⎣ − s θ

ξ =ξc , μ = μc

. ξ =ξc , μ = μc

In Fig. 1, μe could be regarded as the control input of the error dynamics, so that it is warranted to use μctrl instead of μe in (6). Now the trajectory tracking problem of the nonlinear system (1) becomes a stabilizing problem of the linear system (6). The trajectory tracking problem is solved, if the error converges to zero. 3. MODELING OF UNMANNED HELICOPTER 3.1. Reference frames and assumptions For mathematical description of helicopter model and its controller design, two reference frames are defined. 1) The earth reference frame (EFR) is fixed to the earth, with its origin O locating at a fixed point. The x axis points to the north, and the z axis points upright vertically. The y axis is confirmed by the right-hand rule. 2) The fuselage reference frame (FRF) is fixed to the fuselage, with its origin Ob locating at c.g. (center of gravity) of fuselage. The xb axis points to fuselage head. The zb axis is perpendicular to xb axis and points upright. The yb axis can be confirmed by the right-hand rule. Some critical assumptions [34] are required for helicopter controller design. 1) The fuselage is a rigid body; any elastic deformations are beyond this research. 2) The motion of earth is neglected in this research. 3) The ground effect is negligible. 4) The mass and inertial matrix, as well as gravity acceleration, are regarded as known constants. 3.2. Fuselage dynamic model In ERF, position of c.g. of the helicopter P  [ x, y, z ]T ; attitude of the fuselage γ  [φ ,θ ,ψ ]T which denotes pitch, roll and yaw angles, respectively. It is assumed that –π / 2 < φ < π / 2 and –π / 2< θ < π / 2. In RFR, linear velocity V  [u, v, w]T , and angular velocity ω  [ p, q, r ]T . Rigid body dynamics of the fuselage can be described by Newton-Euler equation: P = Rt ( γ )V , mV = −ω × mV + F ,

γ = Rr ( γ ) ω , J ω = −ω × J ω + Q, −1

cψ s θ s φ − c φ sψ sψ s θ s φ + c φ cψ cθ s φ

0 ⎡1 Rr ( γ ) = ⎢⎢0 c φ ⎢⎣0 − s φ

,

∂h (ξ , μ ) ∂μ

Rt ( γ ) =

ξ =ξc , μ = μc

∂h (ξ , μ ) ∂ξ

, ξ =ξc , μ = μc

(7) (8) (9) (10)

c φ cψ s θ + s φ sψ ⎤ c φ sψ s θ − s φ cψ ⎥⎥ , ⎥⎦ cθ c φ

− sθ ⎤ c θ s φ ⎥⎥ , c θ c φ ⎥⎦

where c(•) and s(•) are shorts for cos(•) and sin(•), respectively; since the fuselage is symmetrical with respect to the Obxbzb plane, the inertial matrix ⎡I ⎢ xx J ⎢ 0 ⎢ ⎣⎢ − I xz

0 I yy 0

− I xz ⎤ ⎥ 0 ⎥, ⎥ I yy ⎦⎥

(11)

where Ixx, Iyy and Izz are moments of inertia around axes xb, yb, and zb, respectively; Ixz denotes product of inertia. 3.3. Forces and torques Some parameters are defined in Table 1. The typical structure of a helicopter is illustrated by Fig. 2. Resultant forces and torques ⎡ ⎤ s ε cη mg s θ + Tm ⎢ ⎥ 2 2 1−s ε s η ⎡ Fx ⎤ ⎢ ⎥ ⎢ ⎥ c ε sη F = ⎢ Fy ⎥ = ⎢⎢ −mg c θ s φ − Tm − Tt ⎥⎥ , 1−s2 ε s2 η ⎢F ⎥ ⎢ ⎥ ⎣ z⎦ ⎢ c ε cη ⎥ −mg c θ c φ − Tm ⎥ 1−s2 ε s2 η ⎦ ⎣⎢

(12)

⎡ L ⎤ ⎡ Tm hm sη + Tt ht + Qm s ε ⎤ Q = ⎢⎢ M ⎥⎥ = ⎢⎢Tm lm + Tm hm s ε + Qt − Qm sη ⎥⎥ . ⎢⎣ N ⎥⎦ ⎢⎣ −Tm lm sη + Tt lt − Qm c ε cη ⎥⎦

(13)

Table 1. Aerodynamic and geometric parameters. Notations Definitions g Gravitational acceleration Vertical and horizontal distances from main rotor hm, lm hub to c.g. of fuselage in FRF Vertical and horizontal distances from tail rotor ht, lt hub to c.g. of fuselage in FRF Tm, Tt Main and tail rotor thrusts tcm, tct Thrust coefficients of main and tail rotors Qm, Qt Main and tail rotor counteractive torques qcm, qct Torque coefficients of main and tail rotors ε, η Longitudinal and lateral cyclic pitches θ m, θ t Collective pitches of main and tail rotors am, at Slopes of thrust curve R m, R t Radii of main and tail rotor discs A m, A t Areas of main and tail rotor discs sm, st Solidities of main and tail rotors Ωm, Ωt Rotational rates of main and tail rotors ρ Density of air δ Local rotor drag coefficient

Trajectory Linearization Control for a Miniature Unmanned Helicopter

289

expressions are approximations, they are accurate enough in low-velocity fights [30]. Substitution of (14), (15), and (16) into (8) and (10) yields a nonlinear cascaded model, with [θm, θt, ε, η]T regarded as actual controls. 4. CONTROLLER DESIGN

Fig. 2. Helicopter model, including reference frames, flapping angles and rotor thrusts. Forces and torques expressed by (12) and (13) are unsuitable for controller design because of some strongly coupled terms; Consequently, simplifications of forces and torques are required for controller design. According to mechanical properties of the helicopter [11,35], cyclic pitches are fairly small, indicating that small angle assumption can be employed [14]: sη ≈ η , s ε ≈ ε , s 2 η ≈ 0, s 2 ε ≈ 0, cη ≈ 1, c ε ≈ 1.

Small angle assumption will be substantiated by simulation results presented in Section 5. Further, Tmε, Tmη and Tt contribute only tiny effects to resultant forces, and Qt exert insignificantly on resultant torques, so that they are negligible in controller design [7,14,22,31]. Forces and torques are then approximated: mg s θ ⎡ ⎤ ⎢ F ≈ ⎢ −mg c θ s φ ⎥⎥ , ⎢⎣ −mg c θ c φ − Tm ⎥⎦ ⎡ Tm hmη + Tt ht + Qm ε ⎤ Q ≈ ⎢⎢Tm lm + Tm hmε + Qt − Qmη ⎥⎥ , ⎢⎣ −Tm lmη + Tt lt − Qm ⎥⎦

(14)

(15)

such that, in the helicopter model, position subsystem and attitude subsystem become cascaded. Some previous researchers [4] often approximate expressions of thrusts with respect to collective pitches into a linear proportional one. However, this approximation is often proved invalid. In this research, a more precise expression is introduced [30]: ⎧ Ti = tci ρ si Ai Ωi2 Ri2 , ⎪ 2 ⎪ ⎤ ⎨ ai2 si 2 1 ⎡ ai si + + aiθi ⎥ , ⎪tci = ⎢ − 4⎢ 4 2 32 3 ⎥⎦ ⎪⎩ ⎣

4.1. The objective and overall structure of the controller The purpose of this research is to design a controller such that the helicopter is capable to track continuous command trajectories. Corresponding to the cascaded structure of the nonlinear model, the structure of the controller consists of two parts: a position controller and an attitude controller. Each of them could be further divided into a dynamic part and a kinematic part, respectively. The principle of the controller can be explained as following. Firstly, a desired velocity Vc is acquired from command position Pc; Secondly, command attitude γc and main rotor thrust are designed to act as “virtual actuators”, such that the actual velocity V tracks Vc; Thirdly, desired angular velocity ωc is designed for the attitude subsystem to track γc; Fourthly, control torque Q enabling actual angular velocity ω to track ωc is obtained; finally, the practical controls are computed algebraically from Tm and Q. The overall structure of the controlled system is displayed by Fig. 3, where the block “attitude control system” is illustrated by Fig. 4. As can be seen from Fig. 4(a), the region enclosed by the dashed line represents the attitude dynamic control system and resembles the basic structure of TLC. Parameters of the error regulator

Fig. 3. The overall structure of TLC for the unmanned helicopter: the closed-loop attitude subsystem is regarded approximately as an identity matrix.

(a) (16)

where the subscript i=m, t denotes the main or tail rotor. The counteractive torques of the main or tail rotor Qi =

qci ρ si Ai Ωi2 Ri3 ,

δ 1.5 si qci = + 1.13tci , 8 2

(b) (17)

where δ has a typical value of 0.012. Although the above

Fig. 4. (a) The structure of closed-loop attitude subsystem; (b) The equivalent structure of closedloop attitude subsystem.

Bing Zhu and Wei Huo

290

should be assigned such that the transient process of the attitude dynamics is much faster than that of the attitude kinematics, and the TLC-structured attitude dynamical control subsystem could be regarded as an identity matrix approximately, as is shown by Fig. 4(b). Further, parameters of the attitude kinematics control subsystem should be designed much faster than that of the position dynamics, so that the transient process of attitude kinematics is comparatively fast and the structure of Fig. 4(b) can be seen as an identity matrix. Similarly, parameters of the position dynamics should be designed much faster than those of the position kinematics. Then, the local stability of the tracking errors and the overall tracking performances are guaranteed by the time-scale separation theory [36] and the singular perturbation theory [37]. In the following subsections, the design procedure is described according to chronological order. The position parts are discussed first, and the attitude parts follow. 4.2. Controller for position kinematics The dynamic pseudo-inverse of position kinematics can be derived directly from (7): Vn = Rt−1 (γ c ) Pc ,

where Pc is obtained through pseudo differentiator (3). According to (4) and (6), linearizing the position error equation yields

Pe = Rt (γ c )Vctrl , T

(18)

I3×3 ⎤ , 03×3 ⎥⎦

⎡ 0 ⎤ B1 = ⎢ 3×3 ⎥ . ( ) R γ ⎣ t c ⎦

Based on TLC theory, the objective is to design a time-varying feedback controller Vctrl=K1(t)Paug to stabilize Paug. A simple method is to set K1(t)=[KI1, KP1], where K I 1 = Rt−1 (γ c ) A11 and K P1 = Rt−1 (γ c ) A12 , such that the closed-loop system becomes

I3×3 ⎤ P  A1 Paug , A12 ⎥⎦ aug

(19)

where 2 2 2 A11 = diag( −ω11 , − ω12 , − ω13 ), A12 = diag(−2ξ11ω11 , − 2ξ12ω12 , − 2ξ13ω13 ).

0 ⎢ 2 ⎢⎣ −ω1k

⎥ ⎥⎦

x

⎤ ⎡∫ x d t ⎤ ⎥, ⎥⎢ −2ξ1k ω1k ⎥⎦ ⎢⎣ x ⎥⎦ 1

which is apparently stable. Finally, according to TLC approach, Vc = Vn + Vctrl ,

(22)

which is the command signal for position dynamics. 4.3. Controller for position dynamics From (8), the pseudo inversion of position dynamics Fn = m (Vc + ωc × Vc ) ,

where Vc = [uc , vc , w c ]T is obtained by differentiating Vc with pseudo differentiator (3). Linearization of the error equation F Ve = Aˆ2 (ωc ) Ve + ctrl , m

(23)

where Ve = Vc − V , and ⎡ 0 ˆA (ω ) = ⎢ − r 2 c ⎢ c ⎢⎣ qc

rc 0 − pc

−qc ⎤ pc ⎥⎥ . 0 ⎥⎦

Vaug = ⎡⎣ ∫ VeT dt , VeT ⎤⎦ yields the augmented error equation

augmented

error

T

where ⎡03×3 A2 = ⎢ ⎣⎢03×3

where

⎡0 Paug = ⎢ 3×3 ⎣ A11

d dt

Vaug = ⎡⎣VeT , VeT ⎤⎦ = A2Vaug + B2 Fctrl ,

yields [18]

Paug = ⎡⎣ PeT , PeT ⎤⎦ = A1 Paug + B1Vctrl ,

⎡0 A1 = ⎢ 3×3 ⎣03×3

( ∫ x d t )⎤⎥ = ⎡

Defining

where Pe  Pc − P. Defining augmented error vector Paug = ⎡⎣ ∫ PeT dt , PeT ⎤⎦

⎡d ⎢ dt ⎢ ⎢⎣

(20) (21)

Here, ξ1k and ω1k (k = 1,2,3) are designed according to the desired setting-times and overshoots of longitudinal, lateral and altitudinal motions, respectively. The stability of system (19) is obvious because it has been decoupled into three subsystems; each of them has the form

⎡ 03×3 ⎤ I 3×3 ⎤ , B2 = ⎢ 1 ⎥. ⎥ Aˆ 2 (ωc ) ⎦⎥ ⎢⎣ m I 3×3 ⎥⎦

Similarly, to stabilize Vaug, a time-varying feedback controller Fctrl=K2(t)Vaug should be designed by K 2 (t ) = [ K I 2 , K P 2 ] ,

(

K I 2 = mA 21 ,

)

K P 2 = m A22 − Aˆ2 (ωc ) ,

where A 21 and A 22 are designed similarly to (19), such that the velocity subsystem is stabilized. As is mentioned in Subsection 4.1, ω2k should be designed much larger than ω1k, such that the transient process of position dynamics is much faster than that of position kinematics. The desired control force

Fc = [ Fx _ c , Fy _ c , Fz _ c ]T = Fn + Fctrl .

(24)

4.4. Controller for attitude kinematics Inputs of attitude controller should be command trajectories of the Euler angles instead of the command forces derived in the above subsection. It is possible to acquire Euler angles, because forces are generated by

Trajectory Linearization Control for a Miniature Unmanned Helicopter

thrusts of rotors with Euler angles, as is shown in (14). Solving the attitude from (14), we have ⎧ 2 2 2 2 ⎪Tm = Fz _ c + m g − Fx _ c − Fy _ c , ⎪⎪ ⎨φc = atan 2 − Fy _ c , Tm − Fz _ c , ⎪ ⎪θ c = atan 2 Fx _ c , m2 g 2 − Fx2_ c . ⎪⎩

(

)

(

(25)

)

Noticeably, ψ does not appear in (14) or (25). Generally, if the unmanned helicopter is required to track a continuous trajectory, the head of the fuselage should point along the tangent of command trajectory, implying that ψ c = atan 2 ( y c , xc ) .

(26)

However, the range of atan2(•) is (-π, π], and a discontinuous transition from –π to π would appear in command yaw angle if yc varies from negative to positive while the sign of xc keeps unchanged. To avoid such a discontinuity, the derivative command yaw angle ψ c =

xc  yc −  xc y c

(27)

xc2 + y c2

is employed, and its integral is selected as the command: t

ψ c = ∫ ψ c d t , ψ c ( 0 ) = atan 2 ( yc ( 0 ) , xc ( 0 ) ) .

Design ωctrl=K3(t)γaug to stabilize the error, where

(

A31 and A32 resemble the design of (19), with ω3k and ξ3k assigned based on the desired setting times and overshoots. ω3k should be designed much larger than ω2k to guarantee a faster transient process. According to TLC method, command angular velocity ωc = [ pc , pc , rc ]T = ωn + ωctrl .

4.5. Controller for attitude dynamics The pseudo inversion of attitude dynamics Qn = J ω c + ωc × J ωc ,

ω e = Aˆ4ωe + Bˆ 4Qctrl ,

where ωe  ωc − ω , Aˆ 4 = ⎡⎣ aˆij ⎤⎦ , and Bˆ 4 = J −1 ; 3×3 ( I xx + I zz − I yy ) I xz

aˆ11 =

I

For the task of hovering, ψc could be assigned arbitrarily. The pseudo inversion of the attitude kinematics is derived from (9):

aˆ13 =

ωn =

T

where γc = ⎡⎣φc , θc , ψ c ⎤⎦ is acquired through pseudo differentiator (3). Linearization of error equation γe = Aˆ3γ e +

Rr−1

where γ e  γ c − γ , and

( qc s φc + rc c φc ) c θc 2

0 ( qc s φc + rc c φc ) t θc cθc

0⎤ ⎥ 0⎥ . 0 ⎥⎦

In the above expression, t(•)=tan(•). Defining augmented error γ aug = ⎡⎣ ∫ γ eT dt , γ eT ⎤⎦ the augmented error equation γaug = ⎡⎣γ eT , γeT ⎤⎦ = A3γ aug + B3ωctrl ,

T

gives

(29)

aˆ33 =

qc , pc +

2 I yy I zz − I zz2 − I xz

I

rc ,

qc ,

2 I xz I −I pc − xx zz rc , I yy I yy

aˆ22 = 0 , aˆ23 = −

aˆ32 =

Aˆ3 =

I xx − I zz 2I pc + xz rc , I yy I yy

2 2 − I yy I xx + I xx + I xz

− I yy I xx

I 2 2 + I xx + I xz I

qc , pc +

(− I xx − I zz + I yy ) I xz I

(− I xx − I zz + I yy ) I xz I

rc ,

2 . qc , and I  I xx I zz − I xz

Defining augmented error ωaug = ⎡⎣ ∫ ωeT dt , ωeT ⎤⎦

T

yields

ω aug = ⎡⎣ωeT , ω eT ⎤⎦ = A4ωaug + B4 Qctrl ,

where ⎡ 03×3 A3 = ⎢ ⎢⎣ 03×3

I 3×3 ⎤ ⎥, ˆ A4 (ωc ) ⎥⎦

⎡ 03×3 ⎤ B4 = ⎢ . ˆ ⎥ ⎣ B4 ⎦

The augmented error can be stabilized by

where ⎡ 03×3 A3 = ⎢ ⎢⎣ 03×3

I 2 I yy I zz − I zz2 − I xz I

aˆ31 =

(γ c ) ωctrl ,

⎡ ( qc c φc − rc s φc ) t θ c ⎢ ⎢ −qc s φc − rc c φc ⎢( q c φ − r s φ ) c θ c ⎣ c c c c

( I xx + I zz − I yy ) I xz

aˆ21 = −

(γ c ) γc ,

(31)

where ω c is obtained by differentiating ωc with pseudo differentiator (3). Linearization of error equation

aˆ12 =

Rr−1

)

K3 ( t ) = [ K I 3 , K P 3 ] = ⎡ Rr ( γ c ) A31 , Rr ( γ c ) A32 − Aˆ3 ⎤ . ⎣ ⎦

(28)

0

291

I 3×3 ⎤ ⎥, Aˆ3 ⎥⎦

⎡ 03×3 ⎤ B3 = ⎢ −1 ⎥. ⎢⎣ Rr ( γ c ) ⎥⎦

Qctrl = K 4 ( t ) ω aug = [ K I 4 , K P 4 ]ω aug

(

)

= ⎡ Bˆ 4−1 A41 , Bˆ 4−1 A42 − Aˆ 4 (ωc ) ⎤ ω aug , ⎣ ⎦

(32)

Bing Zhu and Wei Huo

292

where A 41 and A 42 are designed similar to (19), with a41k = -ω4k2 and a42k = -2ξ4kω4k, (k =1,2). To assure faster transient performances, ω4k is specified greater than ω3k. The desired control torque Q = Qc = Qn + Qctrl .

(33)

4.6. Calculating actual controls Actual controls [θm, θt, ε, η]T can be calculated based on previous subsections by the following procedures: 1) The main rotor thrust Tm can be acquired from the first equation of (25), and the main rotor collective pitch θm can be derived from (16) by tcm

4t ⎤ 3⎡ s t , θ m = ⎢ m cm + cm ⎥ . = 2 2 2 ⎣⎢ 2 am ⎦⎥ ρ sm Am Ω m Rm

Tm

(34)

3) Tail rotor thrust Tt and cyclic pitch angles ε and η are then calculated from (15) and (33) by τ  [Tt , ε , η ] =

QA−1

( Q − QB ) ,

(36)

where ⎡ ht QA = ⎢⎢ 0 ⎢⎣ lt

Qm

Tm hm ⎤ −Qm ⎥⎥ , −Tm lm ⎥⎦

Tm hm 0

⎡ 0 ⎤ QB = ⎢⎢Tm lm ⎥⎥ . ⎢⎣ −Qm ⎥⎦

Invertibility of QA can be guaranteed by

(

)

ρ st At Ωt2 Rt2

,

θt =

3 ⎡ st tct 4tct ⎤ + ⎢ ⎥. 2 ⎢⎣ 2 at ⎥⎦

T

(

)

T

2) ωctrl = ⎡ Bˆ3−1 A31 , Bˆ3−1 A32 − Aˆ3 (ωc ) ⎤ ⎡⎣ ∫ γ eT d t , γ eT ⎤⎦ , ⎣ ⎦   where A and A resemble the design of (19); 32

3) Command angular velocity is calculated by (30). Step 5: 1) Qn = J ω c + ωc × J ωc , where ω c is computed with pseudo differentiator (3);

(

)

T

2) Qctrl = ⎡ Bˆ4−1 A41 , Bˆ4−1 A42 − Aˆ4 (ωc ) ⎤ ⎡⎣ ∫ ωeT d t , ωeT ⎤⎦ , ⎣ ⎦   where A and A are designed similar to (19); 41

42

3) The control torque Q is calculated by (33). Step 6: Actual controls [θm, θt, ε, η]T can be calculated by (34)-(37). Theoretically, γc and ωc should be used in Step 1, Step 2 and Step 4; however, they are not obtained until Step 3 and Step 4 respectively, thus cannot be used in previous steps. Consequently, γc and ωc appeared in Step 1, Step 2 and Step 4 should be substituted by γ and ω: Fn = m (Vc + ω × Vc ) ,

where Tm ≠ 0 and Qm ≠ 0 . 4) With tail rotor thrust Tt, the tail rotor collective pitch is finally obtained by Tt

)

Vn = Rt−1 ( γ ) Pc ,

det QA = − ht hm lm + lt hm2 Tm2 − lt Qm2 ≠ 0,

tct =

(

2) Fctrl = ⎡ mA21 , m A22 − Aˆ 2 (ωc ) ⎤ ⎡⎣ ∫ VeT d t , VeT ⎤⎦ , ⎣ ⎦   where A21 and A22 are designed similarly to (19); 3) Command control force Fc is calculated by (24). Step 3: Tm, φc and θc can be acquired from (25), and ψc can be calculated by (27) and (28). Step 4: 1) ωn = Rr−1 ( γ c ) γc , with γc calculated with

31

δ 1.5 sm + 1.13tcm , Qm = qcm ρ sm Am Ω 2m Rm3 . (35) 8 2

T

culated through pseudo differentiator (3);

pseudo differentiator (3);

2) The main rotor torque is calculated from (17) by qcm =

where A11 and A12 are designed according to (19); 3) Command velocity Vc is calculated by (22). Step 2: 1) Fn = m (Vc + ωc × Vc ) , where Vc is cal-

(37)

4.7. Brief summary of TLC algorithm for the modelscaled unmanned helicopter In this research, the command trajectory Pc is known, and the practical position P, velocity V, attitude γ, and angular velocity ω can be measured by sensors. ξik and ωik (i =1,2,3,4; k =1,2,3) are designed based on required setting-times and overshoots of each subsystems. According to descriptions of previous subsections, the TLCbased algorithm for the unmanned helicopter could be summarized as following: Step 1: 1) Vn = Rt−1 ( γ c ) Pc , where Pc is obtained from pseudo differentiator (3); T

2) Vctrl = ⎡⎣ Rt−1 ( γ c ) A11 , Rt−1 ( γ c ) A12 ⎤⎦ ⎡⎣ ∫ PeT d t , PeT ⎤⎦ ,

(

)

T

ωctrl = ⎡ Bˆ3−1 A31 , Bˆ3−1 A32 − Aˆ3 (ω ) ⎤ ⎡⎣ ∫ γ eT d t , γ eT ⎤⎦ . ⎣ ⎦

This substitution is rational, because the transient process of closed-loop attitude subsystem are much faster than that of closed-loop position subsystem, with ωi+1k (often at least 4 times) larger than ωik (i =1,2,3,4; k =1,2,3). 5. SIMULATION AND DISCUSSION In simulation, values of the unmanned helicopter parameters are cited from [38]. The un-simplified model (7)(10) are used herein as the plant to be controlled. The closed-loop system is supposed to take off and track a spiral curve until it reaches the height of 20m; and then it is commanded to track a circular trajectory. Expressions of command trajectory are given by 1) For t ≤ 40s , 1 ⎛ ⎛ 2π ⎞ ⎞ ⎛ 2π ⎞ xc = 10sin ⎜ t ⎟ , yc = 10 ⎜ cos ⎜ t ⎟ − 1⎟ , zc = t ; 2 ⎝ 80 ⎠ ⎝ 80 ⎠ ⎠ ⎝

2) For 40s < t ≤ 120s ,

Trajectory Linearization Control for a Miniature Unmanned Helicopter

⎛ ⎛ 2π ⎞ ⎞ ⎛ 2π ⎞ xc = 10sin ⎜ t ⎟ , yc = 10 ⎜ cos ⎜ t ⎟ − 1⎟ , zc = 20 . 80 ⎝ ⎠ ⎝ 80 ⎠ ⎠ ⎝ The command yaw angle is given by (27) and (28), such that head of the helicopter points along tangent of the command trajectory. Total time span of the simulation is 120 seconds. Initial values of position P(0)=[3,-3,3]T m, and initial value of yaw ψ(0)=0.1(rad). Control parameters are listed in Table 2. According to time-scale separation principle, each ωi+1k (i =1,2,3) is assigned four times of ωik, and all ξik (i =1,2,3,4; k =1,2,3) are fixed at 0.707 to achieve optimal damping ratio. Simulation results are displayed in Figs. 5-8. Fig. 5 displays the command (red dashed line) and the practical Table 2. Control parameters. Notations ξd ξ1k ξ2k ξ3k ξ4k

Values 0.707 0.707 0.707 0.707 0.707

Notations ωd ω1k ω2k ω3k ω4k

Values 5 0.1875 0.75 3 12

(blue solid line) trajectories of the unmanned helicopter in 3-Dimensional coordinates. Fig. 6 exhibits the tracking performances in different directions. As is expected, the practical closed-loop system tracks the command trajectory after only a few seconds setting time. The error in z directions appeared at the 40th second is due to the un-smoothness of the command trajectory. Fig. 7 illustrates that roll and pitch angles are capable to track their command signals. Fig. 8 displays that collective pitches and cyclic pitches are very small, indicating the small angle assumption and the model simplification (14) and (15) in Section 3 are appropriate. Robustness of the proposed controller is satisfying, since the control algorithm based on simplified model enables the unsimplified plant to track the command trajectory. As can be judged from TLC algorithm and simulation results, TLC is primarily a nonlinear approach possessing some advantages of both linear and nonlinear controls. It is effective on the entire trajectory without any transitions among discrete working points of classical linear controls. Advantages of TLC over classical nonlinear approaches include that, derivatives are ob0.1

practical command

0

20

0.1

-0.1

φ(rad)

25

0

-0.2

-0.1

-0.4

practical command

-0.2

-0.3 15

z(m)

293

0

20

0

40

5

10

60

80

time(s)

10

15

100

120

0.2 5

θ(rad)

0.1

0 20 10

-30 0

0

-0.2

10

0

y(m)

Fig. 5. The 3-D trajectory of the closed-loop system: the helicopter rises along a spiral curve, then it operates a circular flight. practical command y(m)

10 0

-10

60

80

time(s)

practical command

15

100

120

0.15

0.1

m0.05

t

0.1 0.05

-20 0

20

40

60

time(s)

80

100

120

0

25

20

40

60

time(s)

5

practical command

5 0

20

40

60

time(s)

80

100

120

120

0

-5

-10

0

20

40

60

time(s)

80

100

20

40

60

time(s)

80

100

120

Fig. 6. Position and yaw angle of the closed-loop system: practical states tracks their command signal with satisfying performances.

20

40

0

20

40

60

80

100

120

60

80

100

120

time(s)

0

-0.05

-0.15

0

0.02

0

-0.1 0

0

120

0.05

ε (rad)

ψ (rad)

10

100

practical command

20 15

80

0

η(rad)

-10

0

10

0.2

practical command

10

40

5

Fig. 7. Roll and pitch angles: attitude of the fuselage is maintained small, and the tracking performances are satisfying.

θ (rad)

20

20

0

θ (rad)

-20

x(m)

0

-10

x(m)

z(m)

0.2

-0.2

-20 -10

0

0 -0.1

-0.02 -0.04 -0.06

0

20

40

60

time(s)

80

100

120

-0.08

time(s)

Fig. 8. Actual controls: collective and cyclic pitches of rotors are fairly small, implying that small angle assumption is valid.

Bing Zhu and Wei Huo

294

tained through pseudo differentiators, thus prohibitive analytical solutions for derivatives of virtual controls are avoided. The proposed controller can be designed by combining TLCs for subsystems, circumventing complicated input-output linearizations for the entire model. Based on time-scale separation and singular perturbation theory, stability analysis on TLC are straight-forward, which is superior over neural networks or fuzzy controls. Although there exist approximations, TLC is reliable because of its excellent local performances. In principle, TLC approach is based on pseudo inverse and linearization; therefore, the stability result is local. If initial values are located excessively far from the command trajectory, effects of the pseudo inverse would be greatly weakened, and the linearization is unreasonable. Moreover, replacement of commanded attitude and angular velocity with their practical counterparts would be inappropriate in case of excessive initial values. From an experimental point, however, the proposed controller is fairly simple for implementation, and local stability is quite adequate for helicopter controller design.

[4]

[5]

[6]

[7]

[8]

6. CONCLUSION A TLC-based trajectory tracking controller is designed for a miniature unmanned helicopter. Mathematical model of the miniature helicopter is derived from Newton-Euler equation and simplified into a cascaded form, with collective and cyclic pitches being regarded as practical controls. The controller is designed by synthesizing TLC designs for subsystems of the cascaded structure, so that the controller design for high-order plant is circumvented. Control parameters are designed based on time-scale separation and singular perturbation principles. Theoretical design and simulation results show that: 1) TLC approach for the unmanned helicopter is effective and simple; 2) performances of the closed-loop system are satisfying, since tracking errors are fairly small, and attitude is bounded; 3) robustness of the proposed controller is acceptable, since the algorithm is designed based on simplified model; 4) actual controls are small, which is significant for experimental implementation. Future researches may include 1) TLC design for unmanned helicopter with parameter uncertainties and external disturbances; 2) dynamics of actuators and their impacts on the closed-loop system; and 3) extension of stability region of closed-loop systems under TLC.

[1]

[2]

[3]

REFERENCES A. Brown and R. Garcia, “Concepts and validation of a small-scale rotorcraft proportional integral derivative (PID) controller in a unique simulation environment,” J. Intel. Robotic Syst., vol. 54, no. 1-3, pp. 511-532, March 2009. A. Bogdanov and E. Wan, “State-dependent Riccati equation control for small autonomous helicopters,” J. Guid., Ctrl. Dyn., vol. 30, no. 1, pp. 47-60, January-February 2007. J. J. Gribble, “Linear quadratic Gaussian/loop trans-

[9]

[10]

[11]

[12]

[13]

[14]

[15]

[16]

[17]

fer recovery design for a helicopter in low speed flight,” J. Guid., Ctrl. and Dyn., vol. 16, no. 4, pp. 754-761, July-August 1993. Z. Jiang, J. Han, Y. Wang, and Q. Song, “Enhanced LQR control for unmanned helicopter in hover,” Proc. of the 1st Intl. Sym. on Syst. and Ctrl. in Aerospace and Aeronautics, pp. 1438-1443, 2006. B. Jiang, Z. Gao, P. Shi, and Y. Xu, “Adaptive fault-tolerant tracking control of near-space vehicle using Takagi-Sugeno fuzzy models,” IEEE Trans. Fuzzy Syst., vol. 18, no. 5, pp. 1000-1007, October 2010. H. Zhang and Y. Quan, “Modeling, identification, and control of a class of nonlinear systems,” IEEE Trans. Fuzzy Syst., vol. 9, no. 2, pp. 349-354, April 2001. C. T. Lee and C. C. Tsai, “Improvement in trajectory tracking control of a small scale helicopter via backstepping,” Proc. of the 4th Int. Conf. on Mechatronics, pp. 887-892, 2007. E. Frazzoli, M. A. Dahleh, and E. Feron, “Trajectory tracking control design for autonomous helicopters using a backstepping algorithm,” Proc. American Ctrl. Conf., pp. 4102-4107, 2000. R. Mahony, T. Hamel, and A. Dzul, “Hover control via Lyapunov control for an autonomous model helicopter,” Proc. of the 38th Conf. Decis. & Ctrl., pp. 3490-3495, 1999. S. S. Ge, B. Ren, and K. P. Tee, “Adaptive neural network control of helicopters with unknown dynamics,” Proc. of the 45th Conf. Decis. & Ctrl., pp. 3022-3027, 2006. T. J. Koo and S. Sastry, “Output tracking control design of a helicopter model based on approximate linearization,” Proc. of the 37th Conf. Decis. & Ctrl., pp. 3635-3649, 1998. B. Jiang, X. Liu, and S. Zhang, “Tracking control for a class of uncertain nonlinear large-scale systems via sliding mode technique,” Proc. of American Ctrl. Conf., pp. 1540-1544, 1995. H. Wang, A. A. Mian, D. Wang, and H. Duan, “Robust multi-mode flight control for an unmanned helicopter based on multi-loop structure,” Int. J. Ctrl., Autom. Syst., vol. 7, no. 5, pp. 723-730, October 2009. A. Isidori, L. Marconi, and A. Serrani, “Robust nonlinear motion control of a helicopter,” IEEE Trans. Autom. Ctrl., vol. 48, no. 3, pp. 413-426, March 2003. C. Liu, W.-H. Chena, and J. Andrewsb, “Tracking control of small-scale helicopters using explicit nonlinear MPC augmented with disturbance observers,” Ctrl. Eng. Prac., vol. 20, no. 3, pp. 14981503, March 2012. R. Enns and J. Si, “Helicopter flight control design using a learning control approach,” Proc. of the 39th Conf. Decis. & Ctrl., pp. 1754-1759. 2000. M. W. Mcconley, M. D. Piedmonte, B. D. Appleby, E. Frazzoli, E. Feron, and M. A. Dahleh, “Hybrid control for aggressive maneuvering of autonomous

Trajectory Linearization Control for a Miniature Unmanned Helicopter

[18]

[19]

[20]

[21]

[22]

[23]

[24]

[25]

[26]

[27]

[28]

[29]

[30]

[31]

[32]

aerial vehicles,” Proc. of the 19th Digital Avionics Syst. Conf., pp. 1E4/1-1E4/8, 2000. M. La Civita, G. Papageorgiou, W. C. Messner, and T. Kanade, “Design and flight testing of an H∞ controller for a robotic helicopter,” J. Guid. Ctrl. Dyn., vol. 29, no. 2, pp. 485-494, 2006. D. H. Shim, C. Hoam, and S. S. Sastry, “Conflictfree navigation in unknown urban environments,” IEEE Rob. & Autom. Mag., vol. 13, no. 3, pp. 2733, 2006. A. H. Fagg, M. A. Lewis, J. F. Montgomery, and G. A. Bekey, “The USC autonomous flying vehicle: an experiment in real-time behavior-based control,” Proc. IEEE/RSJ Int. Conf. Intel. Rob. Syst., pp. 1173-1180, 1993. T. Samad and G. Balas, Software Enabled Control: Information Technology for Dynamical Systems, Wiley-IEEE Press, 2003. E. Johnson and S. Kannan, “Adaptive trajectory control for autonomous helicopter,” J. Guid. Ctrl. Dyn., vol. 28, no. 3, pp. 524-538, May-June 2005. J. Zhu, “Nonlinear tracking and decoupling by trajectory linearization,” Lecture Notes, Presented at NASA Marshall Space Flight Center, Jun 1998. M. C. Mickle, R. Huang, and J. J. Zhu, “Unstable, non-minimum phase, nonlinear tracking by trajectory linearization control,” Proc. IEEE Int. Conf. Ctrl. App., pp. 812-818, 2004. Y. Liu, X. Wu, J. J. Zhu, and J. Lew, “Omnidirectional mobile robot controller design by trajectory linearization,” Proc. of American Ctrl. Conf., pp. 3423-3428, 2003. J. J. Zhu, D. A. Lawrence, J. Fisher, and Y. B. Shtessel, “Direct fault tolerant RLV attitude control - a singular perturbation approach,” Proc. of the 34th Southeastern Sym. on Syst. Theory, pp. 86-91, 2002. T. A. Adami, J. J. Zhu, M. A. Bolender, D. B. Doman, and M. Oppenheimer, “Flight control of hypersonic scramjet vehicles using a differential algebraic approach,” AIAA Guid. Nav. Ctrl. Conf. Exhibit, 10.2514/6.2006-6559, 2006. X. Wu, T. Adami, J. Campbell, G. Jianwei, and J. J. Zhu, “A nonlinear flight controller design for a UFO by trajectory linearization method, Part II: controller design,” Proc. IEEE Southeastern Sym. on Syst. Theory, pp. 103-107, 2002. B. Zhu and W. Huo, “Trajectory linearization control for a quadrotor helicopter,” Proc. of the 8th IEEE Int. Conf. Ctrl. and Autom., pp. 34-39, 2010. A. R. S. Bramwell, D. Balmford, and G. Done, Bramwell’s Helicopter Dynamics, Butterworth Heinmann, 2001. H. R. Pota, B. Ahmed, and M. Garratt, “Velocity control of a UAV using backstepping control,” Proc. of the 45th IEEE Conf. Decis. & Ctrl., pp. 5894-5899, 2006. S. D. Devasia, D. Chen, and B. Paden, “Nonlinear inversion based output tracking,” IEEE Trans. on Autom. Ctrl., vol. 41, no. 7, pp. 930-941, July 1996.

295

[33] L. R. Hunt and G. Meyer, “Stable inversion for nonlinear systems,” Automatica, vol. 33, no. 8, pp. 1549-1554, August 1997. [34] Y. Yang, Flight Control for Helicopter (in Chinese). National Def. Industry Press, Beijing, 2007. [35] O. Shakernia, Y. Ma, T. John Koo, and S. Sastry, “Landing an unmanned air vehicle: vision based motion estimation and nonlinear control,” Asian J. Ctrl., vol. 1, no. 3, pp. 128-145, September 1999. [36] A. R. Teel, L. Moreau, and D. Nesic, “A unified framework for input-to-state stability in systems with two time scales,” IEEE Trans. Autom. Ctrl., vol. 48, no. 9, pp. 1526-1544, Sep. 2003. [37] Y. Liu and J. Zhu, “Singular perturbation analysis for trajectory linearization control,” Proc. American Ctrl. Conf., pp. 3047-3052, 2007. [38] V. Gavrilets, Autonomous Aerobatic Maneuvering of Miniature Helicopter, Ph.D. Diss., M.I.T, 2003. Bing Zhu received his B.S. degree from Beihang University (formerly named Beijing University of Aeronautics and Astronautics) in 2007. He is currently a Ph.D. candidate at the same university. His research interests include nonlinear control and its application to unmanned helicopters. Wei Huo received his Ph.D. degree from Beihang University (formerly named Beijing University of Aeronautics and Astronautics) in 1990. He is currently a professor at the same university. His research interests include nonlinear mechanical system control, unmanned vehicle control and intelligent control.