0% found this document useful (0 votes)
8 views

Exeperiment 5 Group 10

Uploaded by

medove.samsung
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Exeperiment 5 Group 10

Uploaded by

medove.samsung
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/346082574

Position Control of a DC-Servo Motor with a PV, and a Dead-Beat Controller

Experiment Findings · November 2020

CITATIONS READS

0 1,499

2 authors:

Juan Antonio Burgos Coronado Mehrab Hasan


Universität Siegen Universität Siegen
2 PUBLICATIONS 0 CITATIONS 1 PUBLICATION 0 CITATIONS

SEE PROFILE SEE PROFILE

All content following this page was uploaded by Juan Antonio Burgos Coronado on 22 November 2020.

The user has requested enhancement of the downloaded file.


Institute of Automatic
Control Engineering

Experiment 5

Position Control of a DC-Servo Motor with a PV,


and a Dead-Beat Controller

Laboratory Report

Group 10

Name Matriculation Number


Mehrab Hasan 1535639

Rashed Al Amin 1537985

Seyedamirmohsen Rafazi 1524824

Juan Antonio Burgos Coronado 1536975

Orkhan Gayibov 1520912

(SoSe2020)
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

1. Introduction:
DC-Servo motor is widely used because it comes in many shapes and sizes, so that its
application is quite easy and flexible, and high reliabilities and low cost. Speed and position
control are required in industrial applications, robot manipulators and home appliances.
Because of accurate and efficient tuning of parameters for PID controller, it has become
particularly important for the Process industries, it is simple structure, good stability, and high
reliability. DC-servo motors are used in feedback-controlled devices (control systems) like 3D
printers, computer disk drives, aircraft flight control systems, automatic steering control, etc.
In this experiment, two controllers for position-control of a DC-servo motor plant (Figure 1)
are to be designed. The first step to designing a controller is derivation of a mathematical
description of the controlled system, followed by parameter identification. Figure 1 shows the
electrical and mechanical components of the plant. A combination of these two parts will
describe the behaviour of the plant in a continuous time form.

Figure 1: Mechanical Components of an Armature Controlled DC-Motor.


However, the performance characteristics of this DC-Servo motor control systems are specified
in terms of the transient response characteristics. This experiment demonstrates the
performance of two different controller (PV-Controller and Dead-beat controller) for the DC-
Servo motor.
Initially, a PV (PD) controller for the given DC-Servo motor is designed and analyzed. We
have omitted the integral gain (PID), as the main purpose of the integral gain is to reduce the
steady state error. the given system already has an integrator, therefore, a proportional (P) and
velocity/derivative (V) controller is enough to control the system.
In addition, a dead-beat controller for the for the given DC-Servo motor is designed and
analyzed. The dead-beat controller is a discrete finite settling time controller. This controller
finds the input signals to be applied to the system to bring its output to a steady state, with zero
error in a minimum number of sampling periods.

2
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

2. Derivative the Electrical Characteristics of the DC-Motor


The electrical and mechanical characteristic equations of an DC-Servo Motor yield the
following Laplace system transfer function, assuming zero initial conditions.
θ(s) ηg ηm Kt Kg
=J 2 2 (1)
Vm (s) eq Rm s +(Beq Rm +ηg ηm Km Kt Kg )

Where, 𝐽𝑒𝑞 = 𝐽1 + 𝜂𝑔 𝐽𝑚 𝐾𝑔 2 is the total load inertia reflected at the motor shaft. Substituting
𝐾0 = 𝜂𝑔 𝜂𝑚 𝐾𝑡 𝐾𝑔 , K1 = Beq R m + ηg ηm K m K t K g 2 and 𝐾2 = 𝐽𝑒𝑞 𝑅𝑚 further simplifies of the
equation (1) to
θ(s) K0
= K S2+K (2)
V (s)
m 2 S 1

The identified system parameters listed in Table 1.

Table 1: Parameters of the system.

Name Value
𝐊𝐠 70
𝐊𝐭 0.0077
𝐊𝐦 0.0077
𝛈𝐠 0.9
𝛈𝒎 0.69
𝐁𝐞𝐪 0.004
𝐉𝐞𝐪 0.0020842
𝐑𝐦 2.6

K 0 = ηg ηm K t K g = 0.9 × 0.69 × 0.0077 × 70 = 0.334719


K1 = Beq R m + ηg ηm K m K t K g 2 = 0.004 × 2.6 + 0.9 × 0.69 × 0.0077 × 0.0077 × 702
= 0.190813541
K 2 = Jeq R m = 0.0020842 × 2.6 = 0.00541892
So, the transfer function can be written as,
0.334719
G(s) = 0.00541892 S2+0.190813541 S

3
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

3. Answer of the given Questions


3.1.1 The effect of the derivative control term depends on the rate of change of the error. As a
result, a controller with derivative control exhibits an anticipatory response.

3.1.2 The controller equation is according to the given system,

Vm = K p (θd − θ) − K v θ∙ (3)

where θd is the desired position, K P and K v are controller gains. Equation (2) can be written
as,
Vm = θd K p − θK p − K v θ∙

Performing Laplace transformation to the above

Vm (s) = K p θd (s) − K p θ(s) − K v Sθ(s)

Vm (s) = K p θd (s) − (K p + K v S)θ(s) (4)

Substituting equation (2) in equation (4),

θ(s)(K2 S2 +K1 S)
= K p θd (s) − (K p + K v S)θ(s) (5)
K0

θ(s)(K 2 S 2 + K1 S) = K p K 0 θd (s) − (K p + K v S)K 0 θ(s)

[K 2 S 2 + K v K 0 + K1 )S + K p K 0 ]θ(s) = K p K 0 θd (s)

θ(s) KpK0
=
θd (s) K 2 S 2 + (K v K 0 + K1 )S + K p K 0

Transfer function that is obtained:

θ(s) K p K 0 /𝐾2
= 2
θd (s) S + ((K v K 0 + K1 )/K 2 )S + (K p K 0 )/K 2

θ(s) KP KA
G(s) = = S2 + ( K (6)
θd (s) B + KA Kv ) S+ KP KA

K0 K1
Where, K A = and K B =
K2 K2

3.1.3 The closed loop transfer function has the following general form,

ωn 2
G(s) = (7)
s2 +2ζωn s+ωn 2

Comparing of the coefficients from Equations (6) and (7),

4
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

ωA = √K P K A = √160. 5983 K p = 12.672√K p

Jx = K B + K A K V = 91.5524 + 160.5983 K v
1 1
Jx
ζ= = 7.2245 K p −2 + 12.6727 K v K p −2
2ωn

3.1.4 The affect for changing Kp and K v to system’s natural frequency and damping ratio is
listed in Table 2.
Table 1: changing Kp and Kv affect the system’s natural frequency and damping ratio.

Parameters KP ↑ increased KP ↓ decreased Kv ↑ increased Kv ↓ decreased


𝛚𝐧 Increase Decrease - -
𝛇 Decrease Increase Increase Decrease

3.1.5 Calculation of 𝐊 𝐩 and 𝐊 𝐯 :

Given parameters, Maximum Overshoot φ = 2% and Peak time Tp = 90ms

Comparing of the coefficients from Equations (6) and (7),


Kp K0
ωn 2 = (8)
K2

K1 +Kv sKp
2ζωn = (9)
K2

Rearranging the equations (8) and (9),

ωn 2 K 2
Kp =
K0

2ξωn K 2 − K1
Kv =
K0
The given equation for Peak time and Maximum overshoot is,

π
Tp =
ωn √1 − ζ2
π
ωn = = 55.7476
Tp √1 − ζ2

−ζπ
√1−ζ 2
φ= e

5
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

ln|φ|
ζ= = 0.7797
√ln2 |φ| + π2

Hence K p and K v can be calculated from the following equations,

ωn 2 K 2
Kp = = 𝟓𝟎. 𝟑𝟗𝟓𝟑
K0
2ξωn K 2 − K1
Kv = = 𝟎. 𝟖𝟑𝟖𝟔
K0

3.1.6 The matlab script to calculate Tr , Ts and Td is demonstrate in APENDIX I.


For the given system, calculated dead time is 0.026800
3.1.7 Simulation of the given system are shown in Figure 2, Figure 3 and Figure 4.

Figure 2: Saturated and unsaturated controller outputs of the given system.

6
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

Figure 3: Input and Output signal of the given system.

Figure 4: Input and Output signal of the given system.

7
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

3.1.8
Percentage overshoot: For a step input, the percentage overshoot (PO) is the maximum value
minus the step value divided by the step value. In the case of the unit step, the overshoot is just
the maximum value of the step response minus one.
Mathematically,
−ζπ
√1−ζ2
φ=e × 100 = 2.00049391

Where ζ is the damping ratio. The percentage overshoot can be explained by transient
characteristics of a second order servo system.

Figure 5: Transient Characteristics of a Second Order Servo System.


Peak time: Peak time is simply the time required by response to reach its first peak i.e. the peak
of first cycle of oscillation, or first overshoot.
Mathematically,
π
Tp = = 0.0899728
ωn √1−ζ2

Where, ζ is the damping ratio.

8
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

3.1.9
Measured Over shoot 𝛗 = 2.00049
The above value of φ is approximately equal to the required value of φ =2%. So, it matches the
requirement.
The response of the system was according the calculations, with an exceedingly small deviation
due to environmental conditions and approximation in calculations. The output response of the
system is slightly different from expected.
Measured Peak time Tp = 89 ms
The above value of Tp is approximately equal to the required value of Tp =90 ms. So, it matches
the requirement and the slight difference in the value is due to the following reasons:
- The effect of damping due to inductance is neglected which may introduce non-linearity into
the system dynamics.
- Input power to the motor is less as the supply voltage provided by the controller as output
voltage is less.
- Also, by reducing the voltage supplied to the motor, back emf decreases thereby decreasing
speed of the motor and hence increasing Tp.

3.1.10:
The saturation block of the control output makes the response slower. There is a specific
amount of voltage needs to be provided to the system to work correctly in expected (calculated)
period of time. Here the voltage is limited (saturated) because of which the system does not
receive enough voltage to reach desired angle in the expected time.

4.2.1 The matlab script to calculate q0, q1, q2, p1 and p2 is demonstrate in APENDIX II.
4.2.2 The simulation of a Standard Digital Controller Design is shown in Figure 2.

Figure 6: Simulation blocks of Dead beat controller.

9
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

4.2.3 In theory Dead beat controller brings the system’s response to the desired steady state
value after a prefixed number of sample steps. The number of samples should depend on the
order and on the length of a possible existing dead time of the controlled system. Since the
error after two steps became zero, the control signal after the same time also became zero.
4.2.4 In theory dead beat controller avoids overshoot and guarantee 0 error after prefix number
of samples in our case too. Our system is of second order and thus it need 2 times the sample.
As seen from the graph, the system reaches zero error after 2msec. The sample time described
for the system was 150 msec.
4.2.5 Figure 6 shows the Controller parameters of the dead-beat controller with different
sample times and their corresponding controller parameters.

Figure 6: Controller parameters of the dead-beat controller.


Since the Dead-beat controller guarantees no overshoot, there is no waste of energy and the
amount of energy is fixed. If the sample time is reduced the maximum value of the control
signal will increase proportionally in order to keep the energy constant. The desired position
will be reached faster. If the sample time is increased, the control signal will be lower
(proportionally) but the desired position will be reached slower.
Thus, we need to find the optimum sample time in accordance with the physical parameters of
the system.

10
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

5. Implementation of the PV-Controller and Dead-Beat Controller


5.2 Answer of the Laboratory Experiment:
5.2.1 As we tested the actual plant and plotted responses for both actual and simulated plant,
we noticed that the responses related to both of them are highly close to each other (as shown
in the Figure 7). As can be seen in the Figure 7, The response of the simulated plant (the black
graph) does not show any steady-state error and reaches the set-point which is equal to 30
degrees, yet, by zooming into the graph, we noticed that the actual plant response (the red
graph) shows a very small amount of steady-state error and the graph reaches to 29.88 degrees.
The 0.12-degree error is very small and therefore we can conclude that the actual plant response
highly corresponds to the simulated plant response.
5.2.2 As is said in the previous question, there is a very small difference equal to 0.12 degrees
between the responses of both actual and simulated plant.
5.2.3 As can be seen in the Figure 8, the peak point of the actual plant response is specified,
which shows the Tp is equal to 174 ms (from the 0.5 s to 0.674 s), and the peak is equal to
29.88. It is obvious that there is no overshoot, which means Φ is equal to zero.
5.2.4 In the Figure 9, the outputs related to the saturated (the green graph) and unsaturated (the
red graph) controller is plotted. As can be seen, if the output of the controller is not saturated,
the output will go way beyond the required limit because of the integral windup phenomenon,
which increases the constant error.
As can be seen, if the output is saturated, it will be limited to +/- 10 volts, otherwise, it will go
even beyond -/+ 40 volts.

Figure 7: IO of the implemented PV controller.

11
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

Figure 8: Peak point of the saturation of implemented PV of real plant.

Figure 9: Saturated and unsaturated output of the implemented PV controller.


5.4.1 & 5.4.2 In comparison with actual plant response and simulated plant response with can
observe some discrepancies, there are several reasons of this.
▪ In dead-beat controller we have 1 sec of period and we used 150ms sampling time.
Because of this we can observe some discrepancies between frequencies of simulated
and real plant. In this case we must choose appropriate sampling time. This factor
should be exactly able to divide to 500, it can be 50ms or 100ms.
▪ The gear has internal vibrations which also produce small discrepancy and we can
observe it in amplitude axis (that is one of the reasons of this)

12
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

Figure 10: IO of the implemented Dead-Beat controller.


5.4.3 It is related to controller outputs: we observe that the controller outputs are the similar, in
this case when the Dead-beat controller is used, the saturation block is not needed. The main
discrepancy that we can observe is that the for simulation version, we have a constant peak of
4 and a period of approx. 0.9 sec (Figure 11), but for the real plant, we don't reach the 4, we
stay in 3.97 and a period of 1.05 (Figure 12), this is due to the delay in the real system
experiment.
5.4.4 Deadbeat control is an extremely optimistic for short sampling periods. it can come up
with zero steady state error for a shortest possible time, but it usually requires exceptionally
large control commands and low sampling time which is need more memory. Also, Deadbeat
control have no oscillation at end points so no extra energy and time loses. On the other side
PV controller have oscillation and overshoot, sometimes this overshoot can be useful. For
instance, car speed control where acceleration is important in order to come up with big speed
for a short time.

Figure 11: Saturation simulation of Dead-beat controller.

13
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

Figure 12: Saturated and unsaturated output of the implemented Dead-beat controller.

14
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

Appendix I
MATLAB Script for Overshoot, Peak time, Rise time, Settling time calculation:

%This program is helpful for the calculation of the parameters


%of a system stem response
%This is Maximun Overshoot, Peak time, Rise time, Settling time
num1=[3107.79248]; %Numerator of the transfer function
den1=[1 86.9309 3107.79248]; %Denominator of the transfer function
wn= sqrt(num1);
damping = den1(2)/(2*wn);
maxOverShot = exp(-(damping*pi)/sqrt(1-damping^2));
PeakTime = pi/(wn*sqrt(1-damping^2));
beta=atan(sqrt(1-damping^2)/damping);
riseTime=(pi-beta)/(wn*sqrt(1-damping^2));
settlingTime = 4/(damping*wn);
fprintf('the Maximun overshot is %f\n',maxOverShot);
fprintf('the peak time is %f\n',PeakTime);
fprintf('the rise time is %f\n', riseTime);
fprintf('the settling time is %f\n',settlingTime);

MATLAB Script for dead time calculation:

%Calculation of dead Time using a graphical approach

num1=[3107.79248]; %Numerator of the transfer function


den1=[1 86.9309 3107.79248]; %Denominator of the transfer function
t=0:0.0001:10; %Vector of time
y = tf(num1,den1); %Transfer function
g = step(y,t);

%Plotting function
Plot(1) = plot(t,g,'r');
xlabel('time (sec)');
ylabel('Amplitude');
xlim([0 0.3]);

15
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

ylim([-.5 1.2]);
title('Step Response');
grid on;
hold on;

%horizontal line through in 5


Plot(1) = plot(t,ones(size(t))*0.5,'--');
Plot(1) = plot(t,zeros(size(t)),'--');
i=1;
while g(i) <= 0.5
i = i+1;
end

tuTime = i;

%Mark intersection with transfer function


Plot(10) = plot(t(tuTime),g(tuTime),'o');

Tu=t(tuTime);

fprintf('the dead time is %f\n',Tu);

16
Laborpraktikum Regelungstechnik Experiment Script Experiment 5

Appendix II

T = 0.6;
b = 1.754168;
a = 35.21246;
c = exp(-a*T);
b1 = b*T + (b*c)/a - b/a;
b2 = b/a - b*c*T - (b*c)/a;
a1 = -1 - c;
a2 = c;
q0 = 1/(b1 + b2);
q1 = q0 * a1;
q2 = q0 * a2;
p1 = q0 * b1;
p2 = q0 * b2;

17

View publication stats

You might also like