Sunteți pe pagina 1din 7

1

Constructing & Simulating a Mathematical Model of


Longitudinal Helicopter Flight Dynamics
Fahad A Al Mahmood
This paper will present detailed procedure of how to construct a basic mathematical model
that represents general longitudinal helicopter flight dynamics. The procedure will start from
linearizing the translational and rotational dynamics and rotational kinematics equations of
motion using the small perturbation theory. There are certain assumptions made for the sake
of simplifications. The next step is to construct the fundamental linearized form for describing
the stability and response of a small motion of a helicopter around a trim condition. In order to
simulate the results, basic input data from an existing helicopter will be used. The last step is
will be simulating the results using MATLAB Simulink program.
Nomenclature
a
M

Mass of helicopter (kg, lb)
s 1


Longitudinal cyclic pitch (rad)
Z Y X , ,

External aerodynamic forces in x,y,z body axes (N, lb)
c 1


Lateral cyclic pitch (rad)
e e e
R Q P , ,

Angular velocities around x,y,z body axes (rad/s) v w u , ,

Translational velocity components of helicopter along fuselage axis (m/s)
N M L , ,

External aerodynamic moments in x,y,z axes (N.m, ft.lb) r q p , ,

Angular velocities components of helicopter
0


Main rotor collective pitch angle (rad) , ,

Euler angles defining the orientation of the aircraft relative to the Earth (rad).
T 0


Tail rotor collective pitch angle (rad)
a


Main rotor angular velocity (rad/s)
I. Introduction
HE helicopter is specific in regards to other transportation means, not just by its structure but also by its motion
possibilities. The helicopter can move vertically, float in the air, turn in place, move forward and lateral, and can
perform these movements in combinations. Because of this, helicopter dynamics modeling is a very complex problem.
In the present, problems in helicopter flight dynamics are mostly solved in aid of modern computers and software. In
many complex problems, computers do not make it possible to understand the physical nature of the problem.
Fortunately, many problems considering helicopters can be analyzed without overly complex calculus and with the use
of simple formulas. Certain assumptions are taken into consideration in order to simplify the modeling procedure, such
as that atmospheric and other disturbances are ignored.
II. Helicopter Controllers
A helicopter is generally and mainly controlled by three operating controls. Those controls are throttle, the
collective pitch controller and the cyclic pitch controller. The collective pitch angle of a rotor blade is the angle
between the chord line and a reference plane determined by the rotor hub or the plane of rotation (Figure 1). The cyclic
pitch angle is between the rotor disk and the air speed caused by tilting the rotor disk either up (positive) or down
(negative) (Figure 2). The throttle main purpose is to control the angular speed of the main rotor. In this helicopter
model, we are going to assume constant angular speed in order to focus more on the effect of the other controllers.

Figure 1: Collective Pitch Angle of Rotor Blade

Figure 2: Cyclic Pitch Angle

The collective pitch control angles all blades equally and simultaneously and allows the aircraft to rise vertically
(Figure3). The cyclic pitch control allows each blade to be angled individually and allows the aircraft to move forward
or backward, nose upward or downward, and roll from side to side (Figure 4). A tail rotor is used to maintain yaw
control and counteract the torque effect. By changing the pitch of the tail rotor's blades, this rotor will produce a side
force that turns the helicopter nose left or right (Figure 5).
T
2

Figure 3 (Collective Pitch) Figure 4 (Cyclic Pitch) Figure 5 (Tail Collective Pitch)
There is also a coupling effect when using the cyclic pitch due to the angled lift that consists of vertical and
horizontal force components. In this model, the helicopter will be controlled by entering four inputs: main rotor
collective pitch angle, tail rotor collective pitch angle, longitudinal cyclic pitch angle and lateral cyclic pitch angle.
III. Linearizing Helicopter Equations of Motion

Considering the helicopter equations of motion in nonlinear form given by:
) , , ( t u x F x=


In 6 degree of freedom form, the motion states and controls are:
{ }
{ }
T c s
r p v q w u
0 1 1 0
, , ,
, , , , , , , ,


=
=
u
x

Starting from the following non-linearized form of equations of motion:

cos cos ) (
cos sin ) (
sin ) (
g
M
Z
pv qu w
g
M
Y
ru w p v
g
M
X
qw v r u
a
a
a
+ + =
+ + =
+ =


( )
( ) ( )
( ) N qr p I pq I I r I
M p r I rp I I q I
L pq r I qr I I p I
xz yy xx zz
xz xx zz yy
xz zz yy xx
+
|
.
|

\
|
=
+ + =
+
|
.
|

\
|
+ + =


2 2




tan cos tan sin
sin cos
sec cos sec sin
r q p
r q
r q
+ + =
=
+ =



By using the small perturbation theory in the form x x x
e
+ = and by writing all forces in the following
approximate form:

T c s r p v q w u e
T
T
c
c
s
s
e
T c s
X X X X X r X X p X v X X q X w X u X X X
X X X X X
r
r
X X
p
p
X
v
v
X X
q
q
X
w
w
X
u
u
X
X X
0 1 1 0
0
0
1
1
1
1
0
0
0 1 1 0


+ + + + + + + + + + + + + =

+ =

Then the linearized equations of motion for the full six degrees of freedom can be written as:
u B x A x + =


In fully expanded form, the system and control matrices can be written as:

( ) ( )
(
(
(
(
(
(
(
(
(
(
(
(




+ +


+

+
+
+
=
e r e p v e e q w u
e e e a e e
e r e p v e e q w u
e r e e e p v e e q e w e u
e e a e
yy zz xx e
yy xz e r
yy zz xx e
yy xz e p
v q w u
r e e e p e v e e e q w e u
e r p e v e e q e w u
Q k N Q k N N P k R k N N N
Q k L Q k L L R k P k L L L
U Y g W Y Y g Y P Y R Y
I I I P
I I R M
I I I R
I I P M
M M M M
Z g V Z P Z g U Z Z Q Z
V X X R X g W X Q X X
1
'
3
' '
3 1
' ' '
2
'
1
' '
2 1
' ' '
0 0
tan cos 0 1 0 sec tan sin 0 0
0 0
cos cos sin sin
sin cos 0 0 0 cos 0 0
/
/ 2
0
/
/ 2
0
sin sin sin cos
0 cos
A


3
(
(
(
(
(
(
(
(
(
(
(

=
' ' ' '
' ' ' '
0 1 1 0
0 1 1 0
0 1 1 0
0 1 1 0
0 1 1 0
0 1 1 0
0 0 0 0
0 0 0 0
T c s
T c s
T c s
T c s
T c s
T c s
N N N N
L L L L
Y Y Y Y
M M M M
Z Z Z Z
X X X X






B

where:
) ( / , / , / form normalized Semi M Z Z M Y Y M X X
a i i a i i a i i
= = =

i
xz zz xx
xx
i
xz zz xx
xz
i
i
xz zz xx
xz
i
xz zz xx
zz
i
N
I I I
I
L
I I I
I
N
N
I I I
I
L
I I I
I
L
2 2
'
2 2
'

=

) ( rate turn
a

=

( )
( )
( )
2
2
3
2
2
2
2
1
xz zz xx
xz xx yy xx
xz zz xx
xz yy zz zz
xz zz xx
yy xx zz xz
I I I
I I I I
k
I I I
I I I I
k
I I I
I I I I
k

+
=

+
=

+
=


Notice that the heading angle has been omitted since the direction of flight in the horizontal plane does not have
effect on the aerodynamic or dynamic forces and moments. For the purpose of calculation demonstration, the
following is detailed procedure for linearizing the forward velocity component:
( )( ) ( )( )
( )
( ) ( ) ( ) ( )
0 :
cos
cos
sin
sin ) (
0 1 1 0
0 1 1 0
0 1 1 0
0 1 1 0
0 1 1 0
0 1 1 0
= = =
+ + + + + + + + + + + =
+ + + + + + + + + + + =
+ + + + + + + + + + + + +
+ + + + + =
+ =

X X X where
X X X X r V X p X v R X g q W X w Q X u X u
X X X X r V r X p X v R v X g q W q X w Q w X u X u
g X X X X r X X p X v X X q X w X u X X
w W q Q v V r R u
g X qw v r u
T c s e r p e v e e q e w u
T c s e r p e v e e q e w u
e T c s r p v q w u e
e e e e
T c s
T c s
T c s

IV. The DRA (RAE) Research Puma, SA330 Input Data

For the purpose of simulating the above
mathematical model, the DRA Research Puma,
SA330 data will be used. The SA330 Puma is a
twin engine, medium support helicopter in the 6
tones category, manufactured by Eurocopter
France (ECF), and in service with a number of
civil operators and armed forces, including the
British Royal Air Force.
The stability and control derivatives predicted
by STAGE Helisim simulation software are
graphed as function of forward speed (knots). The
flight conditions correspond to sea level (=1.227
kg/m
3
) with zero sideslip and turn rate, from hover
to 140 knots.

The following data has been both obtained from the helicopter data and by reading stability and control derivatives
from the helicopter design charts (Appendix A) at a speed of 100 knots:

rad s
m
r
rad s
m
q
rad s
m
p
s w
s v
s u
r
rad s
m
q
rad s
m
p
s w
s v
s u
Y
Y
Y
Y
Y
Y
X
X
X
X
X
X
.
.
.
1
1
1
.
.
1
1
1
52
33 . 0
5 . 1
0225 . 0
133 . 0
005 . 0
0
5 . 1
33 . 0
004 . 0
006 . 0
0275 . 0
=
=
=
=
=
=
=
=
=
=
=
=

s r
s q
s p
m s
rad
w
m s
rad
v
m s
rad
u
r
rad s
m
q
rad s
m
p
s w
s v
s u
L
L
L
L
L
L
Z
Z
Z
Z
Z
Z
1
1
1
.
.
.
.
.
1
1
1
35 . 0
1
66 . 1
055 . 0
045 . 0
005 . 0
0
5 . 1
85 . 0
004 . 0
03 . 0
026 . 0
=
=
=
=
=
=
=
=
=
=
=
=

s r
s q
p
m s
rad
w
m s
rad
v
m s
rad
u
r
s q
s p
m s
rad
w
m s
rad
v
m s
rad
u
N
N
N
N
N
N
M
M
M
M
M
M
1
1
.
.
.
1
1
.
.
.
625 . 0
25 . 0
0
035 . 0
02 . 0
008 . 0
0
75 . 0
22 . 0
025 . 0
004 . 0
03 . 0
=
=
=
=
=
=
=
=
=
=
=
=

0
0
41
115
5
10
7 . 0
2 . 3
0
5 . 0
4 . 9
5 . 2
0
1
2
1
2
0
2
0
2
1
2
1
2
0
0
2
1
2
1
2
0
=
=
=
=
=
=
=
=
=
=
=
=
T
C
S
T
C
S
T
C
S
Z
Z
Z
Z
Y
Y
Y
Y
X
X
X
X
rad s
m
rad s
m
rad s
m
rad s
m
rad s
m
rad s
m
rad s
m
rad s
m
rad s
m


2
0
1
2
1
2
0
0
1
2
1
2
0
2
0
2
1
2
1
2
0
1
1
1
1
1
1
1
1
1
5 . 9
0
67 . 1
5
0
0
5 . 7
5 . 2
3 . 5
25
3
5 . 7
s
s
s
s
s
s
s
s
s
T
C
S
T
C
S
T
C
S
N
N
N
N
M
M
M
M
L
L
L
L
=
=
=
=
=
=
=
=
=
=
=
=


s
rad
a
kg.m
zz
kg.m
yy
kg.m
xz
kg.m
xx
I
I
I
I
27
889 , 25
240 , 33
2226
9638
2
2
2
2
=
=
=
=
=

4
V. Modeling the Helicopter Flight Dynamics using MATLAB & Simulink

With the data above and by the help of using MATLAB, the A & B matrices were constructed. In order to make a
quick check for the output response using MATLAB, the following commands are executed to test the effect of
applying 1 degree of collecting pitching for 5 seconds:
t=0:0.01:5;
de=1*pi/180*ones(size(t));
[n1,d]=ss2tf(A,B,C,D,1);
sys = tf(n1(2,:),d);
lsim(sys,de,t);
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-10
-5
0
Linear Simulation Results
A
m
p
lit
u
d
e

The simulation shows a linear and continuous vertical acceleration to about 10m/s after 5 seconds. The simulation
shows clearly that the system is unstable and it produces diverging response. Another way to check the instability is by
using the (damp) command in MATLAB to test the stiffness matrix (A):

damp(A)
Eigenvalue Damping Freq. (rad/s)
7.15e-004 -1.00e+000 7.15e-004
2.02e-004 + 2.70e+001i -7.50e-006 2.70e+001
2.02e-004 - 2.70e+001i -7.50e-006 2.70e+001
-6.99e-004 + 1.25e-003i 4.88e-001 1.43e-003
-6.99e-004 - 1.25e-003i 4.88e-001 1.43e-003
-6.44e-002 1.00e+000 6.44e-002
-1.22e-001 1.00e+000 1.22e-001
-6.93e-001 1.00e+000 6.93e-001

We can see that we have positive real parts of the eigenvalues which indicates that the system is unstable. The
system needs a state feedback matrix K to ensure that the system is stable. The matrix K will be obtained using the
method of linear-quadratic (LQ) state-feedback regulator for continuous plant.
| |
Qx y
u B x BK A x
=
+ =


This can be easily solved for using the function (LQR) in MATLAB. The Q matrix is chosen to be an identity
matrix of 8-by-8 in dimension:

C = diag(ones(1,8));
[K]= lqr (A,B,C,diag([1 1 1 1]));
We can quickly check the stability of the stiffness matrix with the feedback by using the (damp) command in
MATLAB:
damp(A-B*K)
Eigenvalue Damping Freq. (rad/s)
-2.89e-003 + 7.10e-004i 9.71e-001 2.97e-003
-2.89e-003 - 7.10e-004i 9.71e-001 2.97e-003
-1.63e-001 + 2.70e+001i 6.04e-003 2.70e+001
-1.63e-001 - 2.70e+001i 6.04e-003 2.70e+001
-6.14e-001 1.00e+000 6.14e-001
-1.02e+001 1.00e+000 1.02e+001
-1.12e+001 1.00e+000 1.12e+001
-1.22e+002 1.00e+000 1.22e+002
Now all the real parts of the eigenvalues are negative which indicate a stable system. To obtain the transfer function
using MATLAB, we execute the following commands:
[K]= lqr (A,B,Q,diag([1 1 1 1]))
p=85;
[n1,d]=ss2tf(A-B*K,B,p*C,D,1);
[n2,d]=ss2tf(A-B*K,B,p*C,D,2);
[n3,d]=ss2tf(A-B*K,B,p*C,D,3);
[n4,d]=ss2tf(A-B*K,B,p*C,D,4);
tf(n1(2,:),d)
step(5*pi/180*n1(2,:),d)
We have selected the weighting factor (p) to be 85 after few iterations to produce the maximum vertical speed at a
reasonable collective pitch angle. The above commands will results of having 8 numerator equations for each of the 4
inputs. Following the above MATLAB commands, the last command tf(n1(2,:),d) will output the following transfer
function between the collective pitch angle and the vertical speed:
5
( )
( ) 55.36 + s 3.626e4 + s 6.327e6 + s 1.144e7 + s 2.072e6 + s 1.219e5 + s 3598 + s 144.7 + s
4494 - s 2.943e6 - s 5.137e8 - s 9.271e8 - s 1.597e8 - s 8.477e6 - s 2.204e5 - s 9775 -
2 3 4 5 6 7 8
2 3 4 5 6 7
0
=
s
s W
The same way can be done to obtain any transfer function between any of the 4 inputs and the 8 outputs. The following
is the graphical representation of applying 5 degrees collective pitch angle and the resulting vertical speed:
0 0.05 0.1 0.15
-8
-6
-4
-2
0
Step Response
A
m
p
l
i
t
u
d
e

Using the A, B, C matrices and the calculated K matrix, we are able to construct the following Simulink model
(Figure 6):

Figure 6: Simulink Block Diagram
In order to achieve a maximum climb rate of 1500 ft/min (7.62 m/s), the control input was modified to be:
o o
5 . 1 5
1 0
= =
s


Notice that in addition to the applied collective pitch angle of
o
5 , we had to also apply a longitudinal cyclic pitch
angle of
o
5 . 1 in order to minimize the forward speed coupling. On the other hand, in order to achieve a forward speed
of 100 knots (52 m/s), the control input was modified to be:
o o o
7 . 0 10 3
1 1 0
= = =
c s


Like the previous maneuver, in addition to the applied longitudinal cyclic pitch angle of
o
10 , we had to apply a
collective pitch angle of
o
3 in order to keep the altitude constant and also lateral collective pitch angle of
o
7 . 0 to
counteract the coupled lateral movement. For the forward flight simulation, we had to play again with the weighting
factor which is multiplied by the matrix C. The following is the C matrix we have so far:
C =

297.5000 0 0 0 0 0 0 0
0 85.0000 0 0 0 0 0 0
0 0 85.0000 0 0 0 0 0
0 0 0 85.0000 0 0 0 0
0 0 0 0 85.0000 0 0 0
0 0 0 0 0 85.0000 0 0
0 0 0 0 0 0 85.0000 0
0 0 0 0 0 0 0 85.0000

The following is graphical representations of the two simulation outputs:
6

Figure 7: Upward Flight Simulation

Figure 8: Forward Flight Simulation

As more evaluations of the helicopter performance are simulated and better decisions about the best turn rates and
speeds to output are made, the more the C matrix will have to change and maybe also the K matrix. Unfortunately we
don't have much information about the best values to achieve for each of the output parameters for that particular
helicopter. The more performance design information is available the more the simulation will be modified to result in
a better representation of what an effective control will have to be.
VI. Conclusion
In this paper we have gone through the procedure of how to construct basic mathematical model that represents
general longitudinal helicopter flight dynamics. The procedure started with linearizing the translational and rotational
dynamics and rotational kinematics equations of motion using the small perturbation theory. The next step was to
construct the fundamental linearized form for describing the stability and response of a small motion of a helicopter
around a trim condition. In order to simulate the results, input data and derivatives from an existing helicopter was
used. The final step was simulating the results using MATLAB Simulink program. The design is still not fully
developed due to the fact that we don't have more information available about the performance specifications of the
Puma helicopter.

7
Appendix
Sample stability derivatives charts:

References
[1] Padfield, Gareth D. Helicopter Flight Dynamics: The Theory and Application of Flying Qualities and Simulation Modeling,
AIAA Education Series. 1996.
[2] MATLAB 7.01 & Simulink 6.1
[3] Prouty, Raymond W. Helicopter Performance, Stability, and Control. Malabar, Florida: Krieger Publishing Company. 2003.
[4] Bramwell, A. R. S. Bramwells Helicopter Dynamics. Reston, Virginia: AIAA, Inc. 2001.
[5] Johnson, Wayne. Helicopter Theory. New York: Dover Publications, INC, 1980.
[6] D. Cvetkovic, I. Kostic, C. Mitrovic, A. Bengin. Mathematical Models Of Helicopter Flight Dynamics. Reno, NV: 40th AIAA
Aerospace Sciences Meeting & Exhibit. 14-17 January 2002.