Challenge

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

Q1

-->>

%design parameter for dc motor
clc
clear all

J=0.01;%moi of motor kg*m^2
Ba=0.1;%motor viscuous force N-m-s
km=0.01;%back EMF V/rad/s
kt=0.01; %motor torque constant N-m/amp
Ra=1;%resistance of the armature ohm
La=0.5;%inductance of the armature circuit in Henrywh
% for joccobian matrices
A=[-Ba/J kt/J;-km/La -Ra/La]
B=[0;1/La]
zeta=0.5;
fn=1
wn=2*pi*fn
p1=-zeta*wn+wn*sqrt(zeta^2-1);
p2=-zeta*wn-wn*sqrt(zeta^2-1);
p=[p1;p2]
K=place(A,B,p)

kp=K(1)
kd=K(2)
ki=200
% % %
%end

to plot graph

figure(1)
%at ki=200,kp=k(1)&kd=K(2)
subplot(411);
plot(out.time,out.w);hold on;grid;
plot(out.time,out.x1ref);
stepinfo(out.w,out.time)
%stepinfo Computes step response characteristics.
subplot(412);
plot(out.time,out.Ia)
subplot(413)
plot(out.time,out.torque)
subplot(414)
plot(out.time,out.Vb)

explainnation

PID control method, there are three pieces of gain that work to correct or reduce the error, which consists of Kp, Ki and Kd. Kp

is a proportional component, Ki is an integral component, Kd is a derivative component.

Kp is used to improve the transient response rise time and settling time of course.

Ki works to improve steady-state response.

Kd is used to improve the transient response by way of predicting errorwill occur in the future.

Optimization of PID system depends on upon the value of Kp, Ki, and Kd. When all three components are not exact, the

resulting response will deviate from the desired results. That requires tuning value of Kp, Ki, and Kd is accurate to obtain a

component value which is appropriate to support the response of the system to be.

now from graphs

(i) at ki=0,kd=K(2) & kp=K(1) (ref fig(1) & g(1))

from graph its seen that the responce signal not even near to the refernce signal within the simulation time it can be seen using stepinfo matlab function

RiseTime: 0.1752
SettlingTime: 0.4792
SettlingMin: 2.2672
SettlingMax: 2.5918
Overshoot: 0
Undershoot: 0
Peak: 2.5918
PeakTime: 0.3600

(ii) at ki=100,kd=K(2) & kp=K(1) (ref fig(2) & g(2))

from graph its seen that the responce signal is not reached to the refernce signal within the simulation time. but it is close to the refernce signal it can be seen using stepinfo matlab function

RiseTime: 0.9642
SettlingTime: 2.0535
SettlingMin: 4.5039
SettlingMax: 4.9990
Overshoot: 0
Undershoot: 0
Peak: 4.9990
PeakTime: 5

(iii) at ki=500,kd=K(2) & kp=K(1) (ref fig(3) & g(3))

from graph its seen that the responce signal is overshooting and undershooting refrence signal.it can be seen using stepinfo matlab function

RiseTime: 0.1517
SettlingTime: 1.2197
SettlingMin: 4.4256
SettlingMax: 6.6507
Overshoot: 33.0133
Undershoot: 0
Peak: 6.6507
PeakTime: 0.3700

(iv) at ki=00,kd=K(2) & kp=K(1) (ref fig(4) & g(4))

from previous two graph it seen that at ki=100 the responce is slow where as at ki =500 the responce is very fast but it is over shooting the refrence signal. so from obesrvation it can be said that the ideal ki value lies in b/w 100 & 500

so ki=200 is taken

from graph its seen that the responce signal is reaching refrence signal fast and the overshooting is also negligible.

it can be seen using stepinfo matlab function

RiseTime: 0.2776
SettlingTime: 0.4771
SettlingMin: 4.5269
SettlingMax: 5.0300
Overshoot: 0.1
Undershoot: 0
Peak: 5.0000
PeakTime: 5

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.