Report For Laboratory No. 1: Control Systems and Technology Department
Report For Laboratory No. 1: Control Systems and Technology Department
2
Introduction
Lab 1 is about simulation, analysis, and optimization of a DC motor. A motor is selected from
an online catalog, providing required design constant values. Using these design constants,
various plots and critical values are calculated.
Finally, using these plots and critical values, a
summary of the motor characteristics and
information for further optimization is produced.
The analysis software for this lab is Matlab,
specifically the “Control System Toolbox”. It will be
used for producing Nyquist, Bode, step, and impulse
charts, which produce important result data such as
percent overshoot and settling time. All code used
for this analysis can be seen in Appendix 1.
Background
Before starting with the analysis in Matlab, it is necessary obtain the transfer function of the
DC motor. We start with the electrical representation of the DC motor, which is represented
by a resistance part and an inductance part. In this case the relation between the input and
output will be the angular motor speed and the voltage.
Transfer function of a DC motor:
𝑜𝑢𝑡𝑝𝑢𝑡 𝑠 𝑤 𝑠
𝐻 𝑠 = =
𝑖𝑛𝑝𝑢𝑡 𝑠 𝑣 𝑠
Motor Constants
Ra = Electrical resistance
L = Electrical inductance
Ke = Electromotive force constant
Km = Motor torque constant
J = Moment of inertia of the rotor
WDCM = Angular motor speed
Relation between torque (T) and current (I):
𝑇- = 𝐾- 𝑏𝐼
Transfer function of torque equation:
𝑇-
= 𝐾- 𝑏
𝐼
Relation between voltage and current mesh:
𝑑𝐼
𝑉2 = 𝑉3 + 𝑉5 + 𝑉6 = 𝑅2 𝐼 + 𝐿2 + 𝑉:
𝑑𝑡
𝑉6 = 𝐾; 𝑏×𝑊>?@ = Back EMF Voltage
3
The la place transform of this voltage equation:
𝑉2 𝑠 − 𝐾B ×𝑊>?@ 𝑠 = 𝑅2 + 𝐿2 𝑠×𝐼 𝑠
The rotational motion of internal load:
𝑀 = 𝑇- − 𝐾; ×𝑊>?@ = 𝐽𝑤>?@
Transfer function:
1
𝑊>?@ 𝑠 𝐽
=
𝑇- 𝑠 𝐾;
𝑠+ 𝐽
F
Replacing values and dividing by we obtain the analytical transfer function for a DC motor’s
G
angular speed is shown below. Using this transfer function, plots are produced and utilized
in Matlab.
1
𝐽
𝐾
𝑠+ ; 𝐽
𝐻 𝑠 =
1
𝐽
𝑅2 + 𝐿2 𝑠×𝑖 + 𝐾𝑏 ∗ 𝐾;
𝑠+ 𝐽
1
𝐻 𝑠 = 𝐾𝑒
𝐽 ∗ 𝑅2 𝐿 J 𝐽 ∗ 𝑅2
𝑠 + 𝑠+1
𝐾; ∗ 𝐾- 𝑅2 𝐾; ∗ 𝐾-
For further clarity, the transfer function is simplified into defined variables.
Defined Variables
𝐽𝑅2
𝑇- =
𝐾; 𝐾-
𝐿
𝑇2 =
𝑅2
𝐾- = 𝐾;
Transfer Function
1
𝐾;
𝑊>?@ 𝑠 = J
𝑇- 𝑇2 𝑠 + 𝑇- 𝑠 + 1
Plots
Four different plots are utilized to analyze the motor design. Each plot provides important
information about the effective usage of a desired motor.
1.) Nyquist – Stability analysis
2.) Bode – Magnitude and frequency analysis
3.) Step – Peak overshoot and settling time
4.) Impulse – Response magnitude and settling time
4
Analysis of Frequency Characteristics
A random motor was chosen with the following characteristics. This motor has been
analyzed via the Nyquist, Bode, Step, and Impulse functions to determine an optimization
point for the angular speed (WDCM). Additionally, various inertia values (J) are tested to
account for different objects attached to the rotor.
Ra = 15 Ohms = Electrical Resistance
L = 0.15 Henrys = Electrical Inductance
Ke = 0.1 V/(rad/sec) = Electromotive force constant
Km = Ke Nm / P^2 = Motor torque constant
J = (input) Kg/m^2 = Moment of inertia of the rotor
WDCM = (output) rad/sec = Angular motor speed
The inertia (J) was modified from 0.05E-6 to 0.40E-6 with 0.05E-6 intervals. This can be seen
in the legend of each chart.
Nyquist Diagram
5
Bode Diagram
Inertia (J) Peak Gain Crossover Frequency
[dB] [Hz]
5.0E-07 31.3 192
2.0E-06 25.6 95.7
4.0E-06 22.9 67.2
6
Step Response
Inertia (J) % Overshoot Settling Time Settling Time
[sec] [millisec]
5.0E-07 64.4 0.0780 78
2.0E-06 40.9 0.0761 76.1
4.0E-06 26.7 0.0651 65.1
7
Impulse Response
Inertia (J) Peak Peak Response Settling Time Settling Time
Response / 100 [sec] [millisec]
5.0E-07 2.99E+03 29.9 0.0821 82.1
2.0E-06 1.26E+03 12.6 0.0835 83.5
4.0E-06 789 7.89 0.0750 75
8
Conclusion
Stability analysis – the Nyquist plot shows the following trends.
1.) The motor is stable for all frequencies.
2.) The motor is stable regardless of inertia.
Bode Plot – Gain and crossover frequency.
1.) Peak gain decreases from 31.3dB to 22.9dB as inertia increases.
2.) The crossover frequency decreases from 192 to 67.2 as inertia increases.
Step Chart – Overshoot and Settling Time
1.) The overshoot decreases by 37.7% as the inertia increases.
2.) The settling time is not very affected by the inertia.
Impulse Chart – Response Magnitude and Settling Time
1.) The peak response drops from ~3000 to 789 as inertia increases.
2.) The settling time is not very affected by the inertia.
9
Appendix 1 – Matlab Code
%Lab1(Simulation of Linear Control Systems using Functions From Control
System Toolbox)
%Analysis of Characteristics for Direct Current Motor
clear all; close all; clc
%% Motor Properties
Um_max = 30; % Max applied voltage Units: volts
Wmax = 300; % Max velocity Units: rad/sec
Ra=15; % Electrical resistance Units: ohms
La= 0.15; % Electrical inductance Units: henry
J=0.12E-5; % Inertia Units: Kg*m^2
%% Nyquist
figure(1); hold;
P = nyquistoptions; P.FreqUnits = 'Hz';
for i = 1:L
nyquistplot(theTFs(i), P);
end
legend(theLegend);
%% Bode
figure(2); hold;
P = bodeoptions; P.FreqUnits = 'Hz';
for i = 1:L
bodeplot(theTFs(i), {10,10000}, P); grid on
end
legend(theLegend);
%% Step
figure(3); hold;
for i = 1:L
step(theTFs(i), 0:0.001:0.15); grid on
end
legend(theLegend);
%% Impulse
figure(4); hold;
for i = 1:L
impulse(theTFs(i), 0:0.001:0.15); grid on
end
legend(theLegend);
10