Su Dung Matlab Trong 1h

Embed Size (px)

Citation preview

Phn 1: S dng phn mm Matlab (Thc hnh trong 1h)Matlab l cng c m phng, phn tch, thit k v x l hiu trong iu khin t ng. C nhiu toolbox (Nhm cng c) khc nhau phc v cho nhng ng dng c th ca vic thit k, phn tch v pht trin cc h thng iu khin t ng. Bi ny chng ta tp trung vo Cng c xy dng cc h thng iu khin (Control Systems Toolbox). Ni dung Vec-t (Vectors) Hm (Functions) Xut biu (Plotting) a thc (Polynomials) Ma trn(Matrices) S dng M-file trong Matlab S dng Help Chng ta bt u t phn c bn l vect. Mi phn t ca vect khai bo cch nhau mt khong trng v ton b t trong du ngoc vung [ ], v n xem nh l mt bin. V d, to mt vect bng cch g ca s lnh nh sau: c code 1. a = [1 2 3 4 5 6 9 8 7].

Matlab s hin ra: c code 1. a = 2. 123456987

Nu mun to vect c cc phn t tng dn t 0 n 20, mi phn t cch nhau mt bc l 2 th: c code 1. t = 0:2:20

c code

1. t = 2.

0 2 4 6 8 10 12 14 16 18 20

Thao tc vi Vect cng rt n gin. Chng hn, mun cng thm 2 vo mi phn t trong vect a th: c code 1. b = a + 2

c code 1. b = 2. 3 4 5 6 7 8 11 10 9

Nu 2 Vect c cng kch thc(s phn t), php cng 2 Vect cng n gin: c code 1. c = a + b

c code 1. c = 2.

4 6 8 10 12 14 20 18 16

Php tr 2 Vect cng tng t.

Hm tin dng, Matlab trang b kh nhiu hm chun, mi hm l mt khi cc m lnh c th thc hin mt chc nng c th. Matlab c tt c cc hm ton hc chun nh sin,cos, log, exp, sqrt..v.v. Cc hng s thng dng nh pi, i hoc j trong php tnh s phc cng c a vo Matlab . V d: c code 1. sin(pi/4)

c code 1. ans = 2. 0.7071 Mun bit cch s dng cc hm, g dng lnh help [function name] ca s lnh. Matlab cng cho php ta to hm bng lnh function. Click vo link bit cch to mt hm v tham kho cc hm c vit cho lot bi hng dn ny.

V biu V biu trong Matlab cng kh n gin. V d v hm sin theo thi gian, truc ht to ra vect thi gian t(du chm phy (;) ng sau dng lnh cho php Matlab khng hin th gi tr cu dng lnh . c code 1. t=0:0.25:7; 2. y = sin(t); 3. plot(t,y)

Biu trn v xp x mt chu k cu hm sin. V biu c bn trong Matlab kh n gin, lnh plot cng c m rng trong nhiu c php khc nhau. Bn c th xem thm v lnh plot ti y.

a thcTrong Matlab, mt a thc c biu din bi mt vect. to mt a thc ch cn nhp vo cc h s ca a thc theo bc gim dn. V d mun m t a thc:

th nhp vo dng lnh: c code 1. x = [1 3 -15 -2 9 ] c code 1. x = 2.

1 3 -15 -2 9

Nu a thc c h s no bng 0 th vn phi nhp vo ti vi tr tng ng ca vect. V d:

c biu din trong Matlab nh sau: c code 1. y = [1 0 0 0 1 ] Ta c th tnh gi tr a thc bng hm polyval. V d mun tnh gi tr a thc trn vi s=2, c code 1. z = polyval([1 0 0 0 1],2)

c code 1. z = 2. 17

Cng c th tm nghim a thc bng Matlab, nht l vi cc a thc bc cao:

Tm nghim a thc: c code 1. roots([1 3 -15 -2 9])

c code 1. ans = 2. -5.5745 3. 2.5836 4. -0.7951 5. 0.7860

Mun nhn hai a thc ta dng lnh conv c code 1. x = [1 2]; 2. y = [1 4 8]; 3. z = conv(x,y)

c code 1. z = 2.

1 6 16 16

Chia hai a thc cng tng t bng lnh deconv, nhung c s d. V d chia a thc z cho y, kt qu l x, phn d R. [xx, R] = deconv(z,y) c code 1. xx = 2. 1 2 3.

4. 5.

R= 0 0 0 0

Kt qu cho thy, y chnh l a thc/vect x pha trn. Nu z khng chia ht cho y th vect ca a thc phn d s khc 0. Nu mun cng hai a thc cng bc, th vit nh sau c code 1. z=x+y. Trng hp chung, mun s dng hm do ngi dng nh ngha th c th s dng hm polyadd. s dng, copy hm vo m-file, v s dng n nh cc hm khc trong toolbox ca Matlab. Khi hm polyadd lu di dng m-file, v d mun cng hai a thc x, y khng cng bc th s dng nh sau: c code 1. z = polyadd(x,y)

c code 1. x = 2. 1 2 3. 4. y= 5. 1 4 8 6. 7. z= 8. 1 5 10

Ma trnKhai bo ma trn cng nh vect, ch khc l cc hng c ngn cch bi du chm phy (;) c code 1. B = [1 2 3 4;5 6 7 8;9 10 11 12 ]

c code 1. B = 2. 1 2 3 4 3. 5 6 7 8 4. 9 10 11 12

c code 1. B = [ 1 2 3 4 2. 5 6 7 8 3. 9 10 11 12 ] c code 1. B = 2. 1 2 3 4 3. 5 6 7 8 4. 9 10 11 12

C th thao tc vi ma trn bng nhiu cch khc nhau. Chng hn tm ma trn hon v bng du(') c code 1. C = B' 2.

c code 1. C = 2. 3. 4. 5.

1 2 3 4

5 9 6 10 7 11 8 12

Ta c th nhn hai ma trn B v C cho nhau. Ch vn v cp ca ma trn khi nhn. c code 1. D = B * C

c code 1. D = 2. 30 70 110 3. 70 174 278 4. 110 278 446

c code 1. D = C * B

c code 1. D = 2. 107 3. 122 4. 137 5. 152

122 140 158 176

137 158 179 200

152 176 200 224

Nhn tng phn t tng ng trong ma trn vi nhau bng php ton .* (vi iu kin 2 ma trn phi cng kch thc). c code 1. E = [1 2;3 4] 2. F = [2 3;4 5] 3. G = E .* F

c code

1. E = 2. 1 2 3. 3 4

c code 1. F = 2. 3.

2 3 4 5

c code 1. G = 2. 2 6 3. 12 20

Nu c mt ma trn E vung, ta c th nhn n ln nhiu ln bng cch t s m: c code 1. E^3

c code 1. ans = 2. 37 54 3. 81 118

Hoc ly tha tng s hng ca ma trn: c code 1. E.^3

c code 1. ans = 2. 1 3. 27

8 64

Php o ma trn E: c code 1. X = inv(E)

c code 1. X = 2. -2.0000 1.0000 3. 1.5000 -0.5000

hoc tr ring ca ma trn: c code 1. eig(E)

c code 1. ans = 2. -0.3723 3. 5.3723

Ngoi ra cn c th tm h s a thc c tnh ca ma trn. Lnh "poly" to ra mt vect cha h s ca a thc c tnh: c code 1. p = poly(E)

c code 1. p = 2. 3. 1.0000 -5.0000 -2.0000

Lu rng tr ring ca ma trn cng ging nh nghim phng trnh a thc c tnh: roots(p) c code 1. ans = 2. 5.3723 3. -0.3723

S dng M-file trong Matlab Matlab xy dng mt mi trng son tho tch hp sn, trong File menu chn New M-file hoc click vo biu tng trn thanh cng c. Chng trnh trong M-file c lu di dng filename.m, c th thc thi ton b chng trnh mt lc (thay v nhp v thc thi tng lnh trong Command window) S dng Help trong Matlab Phn Help ca Matlab kh hay v tin dng. Mun tm hiu lnh no th son lnh theo cu trc: help tnlnh hoc doc tnlnh Mt vi lu khi s dng Matlab: -Ta c th xem gi tr mt bin bt k lc no bng cch g tn bin. c code 1. B

Kt qu:

c code 1. B = 2. 3. 4.

1 2 3 4 5 6 7 8 9

-C th vit nhiu lnh trn cng mt dng nhng phi cch nhau bng du chm phy c code 1. (;) hoc du phy c code 1. (,) . Chc cc bn thnh cng!