# Modeling, Analysis and Design of a DC Motor based on State Space Approach

DOI : 10.17577/IJERTV5IS020332

Text Only Version

#### 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()

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

200

100

0

-100

-200

Fig3: Simulink diagram to simulate motor dynamics

300

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

1. Dr. P.S. Bimbhra, Electrical Machines, KHANNA PUBLSHER

2. Katsuhiko Ogata, Modern Control Engineering, PEARSON PUBLISHER.

3. Charles L. Philips & Royce D. Harbor, Feedback Control Systems, PRENTICE HALL PUBLISHER

4. Roland S. Burns Advanced Control Engineering, BUTTERWORTH HEINENANN, A Division of reed educational and professional publishing limited.

5. Devendra K. Chaturvedi, Modeling and simulation of system using MATLAB and Simulink, CRC Press Taylor and Francis group Boca Raton London New York 2010.

6. 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.