Challenge

Project 2 - Speed Control of a Direct Current (DC) motor

Ans:

For mathematical modelling we will write down the equations obtained from KCL and Inertia .

Va=RaIa+La*dIa/dt+Vb

Where

  • Va is the armature voltage,

  • Ra is the armature resistance,

  • La is the armature inductance,

  • Ia is the armature current,

  • Vb is the back EMF (Electromotive Force)

  • The back EMF is proportional to the angular velocity (ω) of the motor: Eb=KeωK

  • Mechanical System:

    The torque developed by the motor is proportional to the armature current: Tm=Kt*Ia

    where:

    • Tm is the motor torque,

    • Kt is the torque constant

We can derive the State Space model and Transfer function model from these equations.

Plant Model is is defined as

A=[-Bm/J Kt/J;-Km/La -Ra/La];

B=[0;1/La]; C=[1 0]

Script for defining the DC motor parameters

% Parameter of DC motor

J=0.01; %moment of inertia

Bm=0.1; %Viscous force constant

Km=0.01; %Bback enf constatnt

Kt=0.01; %Torque constant

Ra=1; %Armature resistant

La=0.5; %Inductance

As we have already decided the parameters for DC motor. Next part is to Obtain the controller gains from pole placement Kp & Kd

Script: Also attached

run DC_MOTOT_parameter.m

% DC moor ss

A=[-Bm/J Kt/J;-Km/La -Ra/La];
B=[0;1/La];
f=1;
wn=2*pi*f;
zeta=0.5;
P1=-zeta*wn+wn*sqrt(zeta^2-1);
P2=-zeta*wn-wn*sqrt(zeta^2-1);
P=[P1,P2];
K=place(A,B,P)

Gains obtained from the Pole Placement are K1=Kp=17.49 K2=Kd=-2.0. Applying these gains in our simulink model to analyze the response of speed reference tracking.

Now we need to run simulink model to analyze the system response.

Subsystem Model for DC motor is shown

Now adding Controller gains obtained from Pole placement to the model.(Keeping Integral gain 0 at the moment)

Entire Simulink Model with controller gains and reference speed 5.

Script to generate the plots

figure(1)
subplot(3,2,1);plot(out.time,out.Vs);grid;title("supply Voltage");
subplot(3,2,2);plot(out.time,out.Vb);grid;title("Back emf")
subplot(3,2,3);plot(out.time,out.ia);grid;title("Armatur current")
subplot(3,2,4);plot(out.time,out.Ta);grid;title("Torque")
subplot(3,2,5);plot(out.time,out.w,'b-');grid;hold;title("Speed")
subplot(3,2,5);plot(out.time,out.wc,'m--');grid;

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.