You are on page 1of 24

MAE 4053 / ECEN 4413 Automatic Control Systems Fall 2011 Term Design Project Due: Tuesday, December

6, 2011 by 4 pm Using the Class D2L Dropbox Late submissions will result in a 20% late penalty per day

You are to complete the control system design given on the following pages. A complete, neat, and well-documented design is required. You will be graded on the accuracy and completeness of your design along with the appearance and clarity of your report. Feel free to use tools learned throughout the semester to complete your design. You may ask the instructor or the TA clarifying questions, but may receive no other help on your design other than what you are able to glean from the course notes or the course textbook. You may not utilize materials obtained from friends, other instructors, or found on the Internet. No solutions manuals or any other materials may be consulted. You are asked to sign the statement below attesting to the fact that you followed these instructions. Please use this page as the cover sheet for your submission. In submitting my Term Design Project, I attest to the fact that I followed the instructions given above.

________________________ Printed Name ________________________ Signed Name / Date

Figure 1.29. Disk Drive from Dorf & Bishop, Modern Control Systems, 12th Ed., Pearson, 2011, p. 34. Introduction Disk drives are used to store data and provide relatively quick access to large amounts of data on a magnetic disk or disks. Today's computers typically come with disk drives which can store hundreds of billions of bytes. A disk drive contains a set of stacked disks, each of which has data recorded magnetically in concentric circles or tracks/sectors on the disk. Magnetic recording material is layered onto a high-precision aluminum or glass disk and data is stored in an extremely small magnetic domain on this disk using a read/write head. The head records (writes) or reads information on the tracks. Two heads, one on each side of a disk, read or write the data as the disk spins. Disks usually spin at speeds of 7200 or more rpm and the head "flies" above the disk at a distance of less than 100 nm. A typical disk drive is shown in Figure 1.29 above, taken from the textbook. Each read or write operation requires the data to be located, which is an operation called a "seek." The performance of a disk drive is usually based on Data rate - The data rate is the number of bytes per second that the drive can deliver to the CPU. Rates of 1000 Mbits per second are common. Seek time - The seek time is the amount of time required by the arm to reach the desired track after data is requested by the CPU. Times of approximately 10 ms are common.

The seek time depends on how fast the disk drive system positions the head accurately at the desired track. In this project we are interested in positioning the head at the desired position with the least seek time.

I Current

T Torque

PID(s) Step PID Controller

Vs

1 L.s+R Armature Vb

Kt

1 J.s Arm

Velocity

1 s Integrator

y Position

Torque Factor

Kt Torque Factor1

omega Velocity

t Clock time

Closed-Loop Model A model of a closed-loop disk drive using both position and velocity feedback is shown above. The parameters for this model are as follows. Parameter Inertia Torque Factor Coil Resistance Coil Inductance Symbol J Kt R L Value 47.31 g-cm2 75 N-mm / ampere 8.7 ohms 1.15 mH

The parameter values above have not been put into a consistent set of units. You must first covert these values to the standard SI system of units before proceeding with your design. You are to design a Proportional - Integral Derivative (PID) controller which incorporates a filter coefficient for the derivative term which will result in the following closed-loop performance. The steady-state error to a step input must be zero. The settling time must be less than 50 ms. The percent overshoot to a step input must be less than 5 %.

The controller should take the following form.


Gc ( s ) = K P (1 + KI KD N s + ) s s+ N

Where N is the filter coefficient and should satisfy the constraint N 500 .

Submitted Materials Provide your time-domain and frequency-domain analysis of the closed-loop system excluding the controller (take the controller transfer function to be 1.) Provide your controller design and include documented effort to justify your design. Include the time-domain and frequency domain analyses including the controller. Show that your design meets the required specifications. Include your Matlab / Simulink code in an appendix.

MAE 4053 IECEN


Automatic Control Fall2011

4413 SYstems

Term Design Project


fr

Due: Friday, DecemAefizOtt

bY 4 Pm

Using the Class D2L DroPbox Late submissions will result in a l0o/o late penalfy per day pages' A complete' You are to complete the control system design given on the following on the accuracy and neat, and well-documented design is required. Vou will be-graded of your report' Feel free clarity completeness of your design along witlr,the appearance and to use tools learned throughout the semester to complete your design'
no other help on You may ask the instructor or the TA clarifying questions, but may receive the course your design other than what you are able to glean from the coulse notes or or found on textbook. you may not utiliie materials obtained from friends, other instructors, consulted' You are asked the Internet. No solutions manuals or any other materials may be instructions. Please to sign the statement below attesting to the factthatyou followed these ur. ihit page as the cover sheet for your submission'
the instructions In submitting my Term Design Project, I attest to the fact that I followed siven above.

n, z*:1\
Signed Name

lDate

5o

twfirn l
givr-n VrwbW*r"
{

Yvrz t1^3

EUt.9*KL?

t?Jr(r-,_'9-rvr1{

Nuar,,

tF

-v-L o^tn6dlrr-L

il.,^{r ;o1fr,rft'tat 'h"^

tftt

tu,

{*".

h'o--'

1-o ba- \ )

tu

*-,---4Y

@
N rw,

n&-iy4\r*
,{e ho , 5

"1D u*t6W,1,
s

&*b St

(Jt-sG

qt

\-n-u

W(tn* KDNI$ Ni r *re ttq-I

s<t*N)

e(rls"t W -*)

t4WC{i tooNraNs F v<Lt o,qC

l"r6stnJ)(ttiv+\

v*t

y'r,.^lh'1tc^[,t",t

^ A vxavr*1iry 1,rarJ-'..

TF = e\Q) l\

rtrrf
\t

,4 b"4 e t ,"rt y ;F n tv* rr-n'r)'1 *(,r{(r^Dt} t ( *,.tG K+Kr -t &Kr *"9 ,{


(,nK"N)

o
N'rw'

(^(5) = Tf

'

&"<ww

frt

r.n* 5

,TUW,

E=kf
=(- (aL,
= \('-

q(t,
?
s.

Li.. ,E i , 5Yw"Y5 tr^rt* "{r"'rr r 4s5 = 5"o

\i
5

-?0

"^''

* + 0- Qr.)) \tv l&"


,Vr 'i*?
o

(r- o'.k)) = $.. 9Oo \

*kl

"r
"-

t-

ilfr49
Kf(r(1N

:l-l

\n lti 9 gttrtt.^n Frv ^^h w t-"(w ; >Wo \r^"(-F-{/ k d-

o Ptwnl".A

aiw^1^ w- t&n (t)

At

P,g) =

\r -fr_ ? p Wn (o"gr
.

-h__./ rv'u{. GY

'/-tr \- z't?t+* - 94 > z'xlrt Fr" /


o"hry

-fl

4 1> 0 ',6s,
+ uor9

ry

ft(+xrdj

( 9*'.'

lr'^j,

lsl sal'th,L t^r.*s *f


T:

E"\va,n
,/-

hrnit^

'fc

q7.n A^
h?
'71 XlO +

t(t,

"5

0 *- *{an^P.arut/

ka'l'

o-ll5 */o*
I
OA

g'*fL1

lt*

,1f

rn

L-\

I,l5,x rv-3 J):


So,
r$o-w

, wrth t;lthx{Ylxr k^^g?ot l*""}""" +3 W- ,


"--

1t' n L'1'lZ AtO t(|^vq r o' B?,s-' 6?/''i2 t'5


rm-

'fi *r dr'..+,^'

7h** & te tTfu vruT dN:A J+"it ft-

^J

u"r,nN-^

J^-"d^ ^r..,oty';1's b,,ls-w ' ryiua-n U

Time Domain Analvsis (Controller Transfer Function = 1l:


MATLAB Code: >> num=[.075];

tt

6s n= [5.4 4e-9,4.L2e-5,5.63e-3,0.075];

>> sys=tf(num,den)

Transfer function:
0.075

5.44e-009 s^3 + 4.12e-005 s^2 + 0.00563


>> step(sys) >> grid; >> stepinfo(sys)

s + 0.075

ans =

RiseTime:0.1488 SettlingTime: O.27O3 SettlingMin: 0.9028 SettlingMax: 0.9991 Overshoot: 0 Undershoot: 0 Peak:0.9991 PeakTime:0.4808 Step Response:

0.8

4.7
i u_o

=
E

0.5
i'

0.4 0.3 0.2


0.1

i
I

i'
l

i i

t/

0.05

0.1

al\

a.2
Tlme (seconds)

0.25

MATTAB Code:
>> rlocus(sys); >> grid

Root Locus:

2.5 z
1.5

-a

0.5
.o

.R

o -nq o
-1

- t.3

. r

"-0-6'
.:.1-:.: ,.......

-2

-1.5
Real

-1

.'...........)*..

-0.5
-1)

0.5

1.5

Axis (seconds

x 10.

Frequencv Domain Analvsis (Controller Transfer Function = 1): MATIAB Code:


>> bode(sys)
>> grid >> margin(sys) >> grid

Bode Diagram:
?

Gm = 55.1 dB (at 1.02e+003

d !
o p
7-

o o

-250

L t:

45 i ,,,:
o o E
-90 i,-,ii

(I -180 i-'.'
-225
^-^!
1A'1
i

o -135 6

MATLAB Code:
>> nyquist(sys) >> grid

Nyquist Plot:

Nyquist Diaglam
-2 dB

'4

dB

$dB

-fr.2

0.2

4.4

0.6

0.8

Rl Axis

tur fu^yT+r1^ u,unffil4ez, ^b $ofi* oy,Vw^rk w/avt b^gA v--) &'nTrr - N;'u!: Fr D I-**^x-/{**, .,1-s^gkr } ,\

0f uL^,{\ lyt

Luary)
w 1l-\

{rY tr-.i, , a.'-o-(14s, le}- t^l^-( tt^- Sattt.. o Kg z Ku'o A w-T:C)


So,

\--^-o

Vloru-, c;.\^rr-e\r,l-n-n g li q- -eayr'.h'cn'

\ r tq'

wt
>

(rus" + Krs

*o

:Q

Rrtt \x c.^nr {,t


17J

61re-.' t"tP {"-'s

ftt $t-^-l*t,
i'e'

o\A

&t-^-n wetU- t..nnTLlt6.

ff.^R, tr..,' tk^A"*e


w

A^ s.^^"(

b-o

b! K't< zB 'le_.

t'\-tff $- K,

K\

Ziesler-Nichols PID Tuning method:


MATLAB Code: >> num=[.075];

tt

6sn= [5.4 4e-9,4.t2e-5,5.63e-3,0];

>> sys=tf(num,den)

Transfer function:
0.075

5.44e-009 s^3 + 4.12e-005 s^2 + 0.00563


>> rlocus(sys) >> grid >> rlocfind(sys)

Select a point in the graphics window

selected_point

-1.0565e+000 +8.8262e+002i

ans =

428.rr93
Root Locus:
Root Locus

2.5
a

06

.::-'-'.''..- -

056.

1"-----T----t-"-"'T-----':

O42 'am

014

/
.7t
1

E
o o
E

0.5
0

-x

'o
o E

. o

-0.5
-1

.?

\
-2^5

-25

^1.5

-1

-0.5

Real Axis (seconds

-i)

x 10'

MATLAB Code:
>> step(sys) >> grid

Step Response:
Step Response
2

1.8 1.6

lo
14
1.2-

l, i ,

lLLlir\t,

o
I

,l'll),,,, jlr,l lll lll I \,tr,


|,
II

i'i
il.8
0.6

il.4
*.2.
a

!'

lL' 1l

I lllllilli ll li l/ l r" i ,l
r

Iiiiii

tI

II

iI i
l1

Ii

i
t,

\l\lfiri$rvrr'\

v\rAv\A'rr' ^'-

-'
l

1j

'

005

il.1

, .,5

4.2

uli

n?

n?q

Tirne (seconcls)

Nuw

,t-+.,wT

U/

t\^r- {orr.*/^

o$ *v*1* } '4

wq

t\o.M"g :

w?

0 'tr1 Ku^.
f

= Zi]o.BT
. 13 )'

Kt
lr-D

'z-K.,r -

T,^
0'6

Kr,,.

T.,t

'

't1

0'7 1_

l,{eru- \riua-o

fni}anat.: N ( fuo N:
tr'-U_

Lol

4.rJr-L

S'o, +t'A

+ilt^,( +ft"ifar {*,h

w-rtb

/.M

^-t1{t$l4.ry

(?5--

+r{ " Y? I "? x ta3 t

* 1 I95 r{ lvt

-t S 1 r 7,Zrlxr-O q"t+,Xl0 r ruq^,o)st 'r) + 6 3S'l"t U r{*?7 I'l|xt#s < g B'? fxtv(

] /"T4 F tb*,t- F 8;!- *

Yryu,J& *b r^+.rf7_:',"

ry\,QTrfto,

f""" ,r.h,\\

MATLAB Code:
>> num=[635.75 991.9e3 98.95e6];

666=[5.44e-9 4.17e-5 9.74e-3 636.74 991.39e3 98.95e6]; >> sys=tf(num,den) Transfer function:
635.8 s^2 + 99L900 s + 9.895e007

tt

5.44e-009 s^5 + 4.17e-005 s^4 + 0.00974 s^3 + 636.1 s^2 + 991390


>> step(sys) >> grid >> stepinfo(sys) >> grid

s + 9.895e007

ans

RiseTime: NaN

SettlingTime: NaN

SettlingMin: NaN
SettlingMax: NaN Overshoot: NaN Undershoot: NaN
Peak: Inf

PeakTime: Inf

Step Response:
x
11,
i

"1026

^--^-----1---

Step Response I - ----

10

I
6

o
5 E

a2 a.m5 0.06 0.035 0.04


Time (seconds)

& t$& prucvis',,s o..t*^ch ;[,ie- .,$f--'-** v{k*, 9 ts?k


L{9

&A &Kn;"t/t- vr"l,n&t of


t\"t- rsh^(+
U

Ko ,,

LL B, N e* o^1.

a*"kag^..-

hnq TL,eo

L*,

KP= Lf

)=to
K5 =\o
N i )c, t\^A
l7p
5
I

*({l\r"1

b-Ct/g-rN(g

r
I

K-7

tgT6,Sgtul Lv|'L{'
5'qqrlv
o / 5

-Y

l8}i-

+ q ,f?xrd 5 sY J- 9'7h xro 3 33 t I g T1 "q3 g{* 2[t' Z5- S t te+f


s1<-+

? vwW"j'* +KA d ;}_{,i{."'f r*/,.p"

y esf u^s a-

In

vrA r

L-ryj ^,,&

MATLAB Code:
>>
nu

tt 6 s

m= [ ].87 6.88,206.25, 18751;


n=

[5.4 4e-9,4.17 e-5,9 .7 4e-3,1.87 7 .43,206.25, 1875 j ; >> sys=tf(num,den)

Transfer function:

t877s^2+206.3s+1875
5.44e-009 s^5 + 4.17e-005 s^4 + 0.OO974 s^3 + 1877 s^2 + 206.3 s + 1875
>> step(sys) >> grid >> stepinfo(sys)

ans

--

RiseTime: NaN

SettlingTime: NaN

SettlingMin: NaN SettlingMax: NaN Overshoot: NaN Undershoot: NaN Peak: Inf PeakTime: lnf Step Response:

Step Response

0.005

01

0.015 0.92
Ime (secon*)

a.Q25 0.03

0.035

0.04

o
4f' { or
+av^t
{

l,:ffi*-.F + ' 0 'l

V -uv\! orfivuLry
"i

fu*'"{

hl-,^,

$'3:rl-,j,
,-q

t"3

\ -\i.uU Q--' 5' +q'l l(' 9\ *-^^ -j r n j 05bgw +,[Af?3]-

+. *nr\ t,ti{Vy
F1fi TL

%v\a-A
U

.n"?-{yi^

fr{3 Plf,lt ou-\\

cive-n
U

S- {-N''& ^^rL
s

S-Oa* '0 -nw\- d:rr^*'.r^

Frlg.i, dS 1h,t-9L S4M-^r


6n.rrr-

t\

"^^[6*" tF.6.,{* nr,1n^J*."\

5 F^cn

l*-

**-f

Hej1A

' g,zr!-iti? hY'\^- : t4t'l *, Q

*AJ

f-u z qSfurrf t, , /" <qX


t[z^he R"rytY = Q ee$de t |."**17u
.

k 5o
e-"il"n

*=?.z\^- is s^\-i-l{r'& '

MATTAB Code:
>> num=[0.3 0.3 0.3]; 6gn=[5.44e-9 4.L1,e-5 5.83e-3 0.305625 0.30 0.30]; >> sys=tf(num,den)

tt

Transfer function:

0.3s^2+0.3s+0.3
5.44e-009 s^5 + 4.11e-005 s^4 + 0.00583 s^3 + 0.3056 s^2 + 0.3 s + 0.3
>> step(sys) >> grid >> stepinfo(sys)

ans =

RiseTime:0.0298 SettlingTime: O.O46t SettlingMin: 0.9097 SettlingMax: 1.01LL Overshoot: 1.1060 Undershoot: 0
Peak: 1.01-11

PeakTime:0.0648
Step Response:

Step Response

E f

o
E

E.

0.01

a.g2

0.03

0.04

0.05

0.06

0.07

Tirne (seconds)

Time Domain Analvsis:


MATLAB Code: >> rlocus(sys)
>> grid

Root locus:

0.46
2

tq
1

-,o

E C

o o o a

0.5
0
I

a 'x
(E

nal

:.

'o)
(!

1'V. al
i

98"

,,

0.uz

'1 5t

u
:

d7t
.............

0.6 -z

-2.3

.,:i.."

' "

: ..,,.."...........).....

...

o.$ ..:

n ,ia
.. .............1........

-J

-1

"5
Real

-1

-\

-0.5
-1)

0.5

Axis (seconds

xlA

Frequencv Domain Analvsis:


MATLAB Code:
>> >> >> >>

bode(sys)

grid
margin(sys)

grid

Bode Plot:

3ode Diagram

Gm=43.2 dB(at 1.03er003rad/s), Pm= 174ce,g (at4.85rad/s)


50
iriirt-___r___[r_l

E 0)"" E f -_ c{M-rw o (g
-1

50

-200 s0

I o o
c
(E

-90

o-1

80

-270
1l

MATLAB Code: >> nyquist(sys)


>> grid

Nyquist Plot:
Nyquist DiagEm 0

dB

-2,d8

.E

You might also like