- Open Access
- Total Downloads : 792
- Authors : Debabrata Pal
- Paper ID : IJERTV5IS020332
- Volume & Issue : Volume 05, Issue 02 (February 2016)
- DOI : http://dx.doi.org/10.17577/IJERTV5IS020332
- Published (First Online): 19-02-2016
- ISSN (Online) : 2278-0181
- Publisher Name : IJERT
- License: This work is licensed under a Creative Commons Attribution 4.0 International License
Modeling, Analysis and Design of a DC Motor based on State Space Approach
Debabrata Pal
Aksum University,
College of Engineering and Technology Department of Electrical and Computer Engineering Ethiopia, NE Africa
Abstract: This paper presents the generalized dynamic modeling
J 2() + B ()
= () (4)
of dc motor using state space approach. The performance of dc motor under various conditions is simulated using
2
MATLAB/SIMULINK environment and simulation result demonstrates the feasibility of the proposed system. A state feedback gain matrix is designed for the dc motor with the help of pole-placement technique. Direct substitution method is used to design state observer matrix for the motor. Both designs are verified by Ackermans formula in MATLAB environment.
Key words: state space, state observer, pole-placement, MATLAB/SIMULINK
I. INTRODUCTION
Direct current machines are the most versatile energy conversion devices. Their outstanding advantage is that the
Where (t) = armature voltage, (t) = back emf, (t) = armature current, () =developed torque, () = motor shaft angle, () = (t) = shaft speed, J= moment of
inertia of the rotor, B = viscous frictional constant, = inductance of armature windings, = armature winding resistance, = motor torque constant, = motor constant.
Here the motor speed (t) is controlled by varying the armature voltage (t). Hence (t) is the input variable and (t) is the output variable.
We chose as the state variables 1() = (t) = ()
volt-ampere or speed torque characteristic of these machines
and () =
() (5)
are very much flexible and easily adaptable for both steady state and dynamic operations. When a wide range of speed control and torque output are required dc motor is an obvious
2
The state equations
equations.
will now
be derived by using above
choice[1].
1() = – () + () (6)
The state space approach is a generalized time domain
1
2
method for modeling, analyzing and designing a wide range
2() = –
1() – 2() + 1
(7)
of control systems and is particularly well suited to digital
computational technique. In this paper armature current and speed of the dc motor are taken as state variables.
0
0
In this section we shall present a design method commonly called pole-placement technique. It will be shown that if the system considered is completely state controllable then poles
() = ()= (t) = () . (8)
1
1
Hence state model of dc motor is derived from equations (6),
(7) and (8) as follows
of the closed loop system may be placed at the desired location with the help of state feedback gain matrix K.
1()
[] = [
] [1()] + [ 1 ] u (t)
In pole-placement approach to the design of control system we assumed that all state variables are available for feedback. In practice however all state variables are not available for feedback. So it is necessary to estimate unavailable state
2()
2()
(9)
variables. Estimation of unmeasurable state variable is commonly called observation. Here we shall see later the state observer gain matrix Ke can be designed if the system is completely state observable [2], [3], [4].
II: DC MOTOR MODELING USING STATE SPACE ANALYSIS
The different equations related to DC motor are given below
y(t) = [1 0] [x1(t)] (10)
x2(t)
III: DC MOTOR STATE MODEL SIMULATION USING MATLAB
Let, the motor parameters (coefficient of differential equations) are assigned to be Lm = 0.01 H, Kt=0.22 N-m/A, Km=0.22 V-sec/rad, J=0.0044 kg-m2, B=0.0011 N-m-sec/rad,
(t) = ()
(1)
= 4 . The system models given by equations ((6), (7) and
(8)) are solved to compute the instantaneous values of the
(t) = () + () + () (2)
()= (t) (3)
performance variable of the system. The simulated results are shown in following figs.
1()
60 [
] = [0.25 50
] [1()] +[ 0
] u(t)
2()
Speed (rad/sec)
Speed (rad/sec)
50
40
22 400
x (t)
2() 100
(11)
2
2
30
30
y(t) = [1 0] [x1(t)] (12)
20 Using state space block tool in MATLAB SIMULINK, the modeling of dc motor also can be performed to check the
10 feasibility of the system with initial condition
0 0 10 10
0 2 4 6 8 10
Time (second)
[ 0 ]=[20]=[0.1]x' = Ax+Bu
y = Cx+Du
Armature current (ampere)
Armature current (ampere)
3
2.5
2
Signal Generator
State-Space
Scope(x1)
1.5
1
0.5
0
0 2 4 6 8 10
Time (second)
Fig1: Speed and Armature current of dc motor with 12V armature voltage
300
Speed (rad/sec)
Speed (rad/sec)
200
100
0
-100
-200
Fig3: Simulink diagram to simulate motor dynamics
300
Speed (rad/sec)
Speed (rad/sec)
200
100
0
-100
-200
-300
0 2 4 6 8 10
Time (second)
30
Armature current (ampere)
Armature current (ampere)
20
10
0
-300
0 2 4 6 8 10
Time (second)
Fig4: Motor speed waveform with (t) = 50 square (t) V
IV: STATE FEEDBACK GAIN MATRIX K DESIGN FOR DC MOTOR
We shall chose the control signal to be
u = -K x (13)
This means that the control signal u is determined by an instantaneous state. Such a scheme is called state feedback. The 1×n matrixes K is called the state feedback gain matrix.
Suppose the dc motor is given by
= Ax +Bu (14)
The feedback gain matrix K that forces the Eigen values of
A-BK to be n1, n2, . nN (desired values) can be determined by the following steps.
Step (a) Check the controllability condition for the system.
-10
Here, A = [0.25 50 ] , B = [ 0
] , C = [1 0]
22 400 100
-20
Hence the controllability matrix M is given by M = [ ]
-30
0 2 4 6 8 10
= [ 0 5000
]
]
100 40000
Time (second)
Fig2: Speed and Armature current of dc motor with (t) = 50 square (t) V
Thus the state model of dc motor is derived using motor parameters and equation (9) and (10) as follows:
We find || 0 and therefore, rank M = 2. Thus the system is completely state controllable.
Step (b): By defining the desired state feedback gain matrix K as K = [1 2] and equating | + | with the desired characteristic equation, we obtain
| + | =
|[ 0] [0.25 50
] + [[ 0
] [1 2]]|
We find || 0 and therefore, rank N = 2. Thus the system is completely state observable.
0
22 400
=
100
Step (b) By defining the desired state observer gain matrix Ke
as Ke = [1] and equating | + | with the
| + 0.25 50 | 1001 + 22 + 400 + 1002
2
desired characteristic equation, we obtain
| + | =
= 2 + (400.25 + 1002 ) S + (1200
+252 +50001)
|[ 0
] [0.25 50
] + [
1] [1 0]|
0
(15)
22 400
2
Step (c) Suppose the desired location of the closed loop poles are at S = -10 and S = -10.
Hence the desired characteristic equation is
(S+10)(S+10) = 2 + 20S +100 (16)
Step (d): Comparing equation (15) & (16) we get 1 =
0.2010 , 2= -3.8025
V: STATE FEEDBACK GAIN MATRIX K DESIGN USING MATLAB
Ackermans formula is used to write the program in command window. The program is given below.
>> %State feedback matrix K design using pole-placement technique
>> A = [-0.25 50;-22 -400];
>> B = [0; 100];
>> J = [-10 -10];
>> K = acker (A, B, J) K = -0.2010 -3.8025
VI: FULL ORDER STATE OBSERVER GAIN MATRIX Ke DESIGN FOR DC MOTOR
A full order state observer estimates all of the system state variables. In practice this may not happen for a number of reasons including cost or that the state may not physically be measurable.
We define the mathematical model of the observer to be
=(AKeC)+Bu+Key (17)
Where is the estimated state and C is the estimated output. The n×1 matrix Ke is called state observer gain matrix. Hence the observer error equation is defined by
– = (A KeC) ( -)
=(AKeC) e (18)
Where ( -) = e = error vector. Thus the dynamic behavior of the error vector depends upon the Eigen values of A KeC
.The state observer gain matrix is designed by the following steps.
Step (a) Check the observability condition for the system.
The observability matrix N is given by N = [ ] =
[1 0.25]0 50
+ 0.25 + 50 22 + 2 + 400|
=| 1
=| 1
=2 + (400.25 + 1)S + (1200 +
4001+502)
(19)
Step (c) Suppose the desired location of the Eigen values are at S = -10 and S = -10.
Hence the desired characteristic equation is (S+10)(S+10)=2 +20S+100 (20)
Step (d) comparing equation (19) & (20) we get 1 = – 380.25, 2= 3020
VII: STATE OBSERVER GAIN MATRIX Ke DESIGN USING MATLAB
Ackermans formula is used to write the program in command window. The program is given below.
>> %State observer gain matrix Ke design
>> A= [-0.25 50;-22 -400];
>> B= [0; 100];
>> C= [1 0];
>> L= [-10 -10];
>> Ke = acker (A',C',L)' Ke =
1.0e+003 *
-0.3802
3.0200
VIII: RESPONSE TO INITIAL CONDITION WITH DESIGNED K AND Ke VALUES
Finally, we have derived the response of the system to the given initial conditions; x1(0) =1, x2(0) =0, e1 (0) =1, e2 (0)
= 0.
The given program is used to get the response curves for the system.
A = [-0.25 50;-22 -400];
B = [ 0;100];C=[1 0];D=[0]; K = [-0.201 -3.8025];
Ke = [-380.25; 3020];
AA = [A-B*K B*K ; zeros(2,2) A-Ke*C];
sys= ss (AA, eye (4), eye(4), eye(4)); t=0:0.01:8;
x0 = [1;0;1;0];
x= initial (sys,x0,t); x1 = [1 0 0 0]*x';
x2 = [0 1 0 0]*x';
e1 = [0 0 1 0]*x';
e2 = [0 0 0 1]*x';
subplot (2,2,1); plot(t,x1);grid
>> xlabel ('t(sec)'); ylabel('x1')
>> subplot(2,2,2); plot(t,x2);grid xlabel('t(sec)'); ylabel('x2')
>> subplot (2,2,3); plot(t,e1);grid xlabel ('t(sec)'); ylabel('e1')
>> subplot(2,2,4); plot(t,e2);grid xlabel('t(sec)'); ylabel('e2')
15000
x1
x1
x2
x2
10000
5000
2000
1000
0
REFERENCES
-
Dr. P.S. Bimbhra, Electrical Machines, KHANNA PUBLSHER
-
Katsuhiko Ogata, Modern Control Engineering, PEARSON PUBLISHER.
-
Charles L. Philips & Royce D. Harbor, Feedback Control Systems, PRENTICE HALL PUBLISHER
-
Roland S. Burns Advanced Control Engineering, BUTTERWORTH HEINENANN, A Division of reed educational and professional publishing limited.
-
Devendra K. Chaturvedi, Modeling and simulation of system using MATLAB and Simulink, CRC Press Taylor and Francis group Boca Raton London New York 2010.
-
M. S. RUSU, and L. Grama, The Design of a DC Motor Speed Controller, Fascicle of Management and Tech. Eng., Vol. VII (XVII), 2008, pp. 1055-1060.
0
0 2 4 6 8
t(sec)
-1000
0 2 4 6 8
t(sec)
15
e1
e1
10
5
0
0 2 4 6 8
t(sec)
0
e2
e2
-50
-100
-150
0 2 4 6 8
t(sec)
Fig5: Response curves to initial condition
IX: CONCLUSION
The state model of dc motor has been developed and simulation has been carried out for the proposed system. K and Ke have been determined using direct substitution method and verified using MATLAB. But It is important to note that the matrix K is not unique for a given system but depends on the desired closed loop pole location which determines the speed and damping of the response whereas Ke serves as a correction signal to the plant model to account for the unknowns in the plant. If significant unknowns are involved, the feedback signal through the matrix Ke should be relatively large.