You are on page 1of 78

KHOA CNG NGH IN T V TRUYN THNG

B MN CNG NGH K THUT MY TNH

BI GING
M PHNG V M HNH HA

THI NGUYN 2011

1
MC LC
MC LC ...................................................................................................................................... 2
CHNG I .................................................................................................................................... 4
GII THIU KIN THC M PHNG .................................................................................. 4
1.1. Mt s nh ngha c bn ..................................................................................................... 4
1.2. M hnh ha h thng........................................................................................................... 5
1.2.1. Vai tr ca phng php m hnh ha h thng............................................................ 5
1.2.2. Phn loi m hnh ha h thng .................................................................................... 7
1.3. Phng php m phng........................................................................................................ 9
1.3.1. S khi...................................................................................................................... 9
1.3.2. Bn cht ca phng php m phng ......................................................................... 10
1.3.3. Cc bc nghin cu m phng .................................................................................. 13
1.3.4 Mt s mi trng m phng thng gp.................................................................... 15
CHNG II................................................................................................................................. 16
MI TRNG MATLAB V CCH LP TRNH............................................................... 16
2.1 Gii thiu mi trng lm vic Matlab ............................................................................... 16
2.2 Cc hm ton ....................................................................................................................... 16
2.3 Tnh ton vi vector v ma trn........................................................................................... 17
2.3.1. Khai bo vector v ma trn.......................................................................................... 17
2.3.2. Tnh ton vi vector v ma trn................................................................................... 20
2.4 Cc php so snh v php ton Logic ................................................................................. 23
2.5 Bin, cu trc v trng ...................................................................................................... 24
2.5.1. Bin ............................................................................................................................. 24
2.5.2. Cu trc ....................................................................................................................... 25
2.5.3. Trng......................................................................................................................... 28
2.6 Qun l bin ........................................................................................................................ 29
2.7 R nhnh v vng lp .......................................................................................................... 31
2.7.1 Lnh r nhnh if v switch ........................................................................................... 31
2.7.2 Vng lp for v while ................................................................................................... 31
2.7.3 Gin on bng continue v break ............................................................................... 32
2.8 Cc scripts v cc hm ca Matlab...................................................................................... 34
2.8.1. Cc scripts ca Matlab................................................................................................. 34

2
2.8.2. Cc hm ca Matlab .................................................................................................... 35
2.9 Nhp xut d liu ................................................................................................................ 36
CHNG III ............................................................................................................................... 37
HA TRONG MATLAB..................................................................................................... 37
3.1 C s ho Matlab ........................................................................................................... 37
3.2 ho 2 chiu..................................................................................................................... 39
3.3 ho 3 chiu..................................................................................................................... 42
3.3.1 Cc lnh Plots ............................................................................................................... 42
3.3.2 Phi cnh trong ho 3-D.......................................................................................... 44
3.3.3 Nhp, xut v in ho................................................................................................ 44
CHNG IV ............................................................................................................................... 46
C S SIMULINK ..................................................................................................................... 46
4.1 Khi ng Simulink ............................................................................................................ 46
4.2 Cc thao tc c bn vi Simulink........................................................................................ 48
4.3 Tn hiu v cc loi d liu ................................................................................................. 50
4.3.1 Lm vic vi tn hiu.................................................................................................... 50
4.3.2 Lm vic vi cc loi s liu ........................................................................................ 51
4.4 Th vin Sources v Sinks .................................................................................................. 52
4.4.1 Th vin Sources.......................................................................................................... 52
4.4.2 Th vin Sinks.............................................................................................................. 58
4.5 Th vin Math ..................................................................................................................... 60
4.6 Khai bo tham s v phng php tch phn chun b cho m phng. ............................... 63
4.6.1 Khi ng v ngng m phng .................................................................................... 66
4.6.2 X l li........................................................................................................................ 68
4.6.3 Tp hp cc tham s trong Script ca Matlab.............................................................. 68
4.6.4 In m hnh Simulink..................................................................................................... 69
4.7 H thng con (Sub system).................................................................................................. 70
4.7.1 To h thng con .......................................................................................................... 70
4.7.2 Th vin signals v Subsystem .................................................................................... 71
4.7.3 Kch hot c iu kin cc h thng con ...................................................................... 74

3
CHNG I
GII THIU KIN THC M PHNG
1.1. Mt s nh ngha c bn

- i tng (object) l tt c nhng s vt, s kin m hot ng ca


con ngi c lin quan ti.
- H thng (System) l tp hp cc i tng (con ngi, my mc),
s kin m gia chng c nhng mi quan h nht nh.
- Trng thi ca h thng (State of system) l tp hp cc tham s,
bin s dng m t h thng ti mt thi im v trong iu kin nht nh.
- M hnh ( Model) l mt s phn nh i tng, con ngi dng
s nghin cu, thc nghim nhm tm ra quy lut hot ng ca i
tng hay ni cch khc m hnh l i tng thay th ca i tng gc
nghin cu v i tng gc.
- M hnh ha (Modeling) l thay th i tng gc bng mt m
hnh nhm cc thu nhn thng tin quan trng v i tng bng cch tin hnh cc
thc nghim trn m hnh. L thuyt xy dng m hnh v nghin cu m hnh
hiu bit v i tng gc gi l thuyt m hnh ha.

Nu cc qu trnh xy ra trong m hnh ng nht (theo cc ch tiu nh


trc) vi cc qu trnh xy ra trong i tng gc th ngi ta ni rng m hnh
ng nht vi i tng. Lc ny ngi ta c th tin hnh cc thc nghim trn
m hnh thu nhn thng tin v i tng.

- M phng (Simulation, Imitation) l phng php m hnh ha da


trn vic xy dng m hnh s (Numerical model) v dng phng php s
(Numerical method) tm cc li gii. Chnh v vy my tnh s l cng c hu
hiu v duy nht thc hin vic m phng h thng.
L thuyt cng nh thc nghim chng minh rng, ch c th xy dng
c m hnh gn ng vi i tng m thi, v trong qu trnh m hnh ha bao

4
gi cng phi chp nhn mt s gi thit nhm gim bt phc tp ca m hnh,
m hnh c th ng dng thun tin trong thc t. Mc d vy, m hnh ha
lun lun l mt phng php hu hiu con ngi nghin cu i tng, nhn
bit cc qu trnh, cc quy lut t nhin. c bit, ngy nay vi s tr gip c lc
ca khoa hc k thut, nht l khoa hc my tnh v cng ngh thng tin, ngi ta
pht trin cc phng php m hnh ha cho php xy dng cc m hnh ngy
cng gn vi i tng nghin cu, ng thi vic thu nhn, la chn, x l cc
thng tin v m hnh rt thun tin, nhanh chng v chnh xc. Chnh v vy, m
hnh ha l mt phng php nghin cu khoa hc m tt c nhng ngi lm
khoa hc, c bit l cc k s u phi nghin cu v ng dng vo thc tin
hot ng ca mnh.

1.2. M hnh ha h thng

1.2.1. Vai tr ca phng php m hnh ha h thng

a) Khi nghin cu trn h thng thc gp nhiu kh khn do nhiu nguyn


nhn gy ra nh sau:

- Gi thnh nghin cu trn h thng thc qu t.


V d: Nghin cu kt cu ti u, bn, kh nng chng dao ng ca
t, tu thy, my bay, ngi ta phi tc ng vo i tng nghin cu cc lc
ln n mc c th ph hy i tng t nh gi cc ch tiu k thut
ra. Nh vy, gi thnh nghin cu s rt t. Bng cch m hnh ha trn my
tnh ta d dng xc nh c kt cu ti u ca cc thit b ni trn.
- Nghin cu trn h thng thc i hi thi gian qu di.
V d: Nghin cu nh gi tin cy, nh gi tui th trung bnh ca h
thng k thut (thng thng tui th trung bnh ca h thng k thut khong 30
40 nm), hoc nghin cu qu trnh pht trin dn s trong khong thi gian 20
50 nm, Nu ch i qung thi gian di nh vy mi c kt qu nghin cu
th khng cn tnh thi s na. Bng cch m phng h thng v cho h thng

5
vn hnh tng ng vi khong thi gian nghin cu ngi ta c th nh gi
c cc ch tiu k thut cn thit ca h thng.
- Nghin cu trn h thc nh hng n sn xut hoc gy nguy him cho
ngi v thit b.
V d: Nghin cu qu trnh chy trong l hi ca nh my nhit in,
trong l luyn clanhke ca nh my xi mng ngi ta phi thay i ch cp
nhin liu (than, du), tng gim sn lng gi cp, thay i p sut trong l,
Vic lm cc th nghim nh vy s cn tr vic sn xut bnh thng, trong nhiu
trng hp c th xy ra chy, n gy nguy him cho ngi v thit b. Bng cch
m phng h thng, ngi ta c th cho h thng vn hnh vi cc b thng s,
cc ch vn hnh khc nhau tm ra li gii ti u.
- Trong mt s trng hp khng cho php lm thc nghim trn h thng
thc.
V d: Nghin cu cc h thng lm vic mi trng c hi, nguy him,
di hm su, di y bin, hoc nghin cu trn c th ngi, Trong nhng
trng hp ny dng phng php m phng l gii php duy nht nghin cu
h thng.

b) Phng php m hnh ha cho php nh gi nhy ca h thng khi


thay i tham s hoc cu trc ca h thng cng nh nh gi phn ng ca h
thng khi thay i tn hiu iu khin. Nhng s liu ny dng thit k h
thng hoc la chn thng s ti u vn hnh h thng.

c) Phng php m hnh ha cho php nghin cu h thng ngay c khi


cha c h thng thc

Trong trng hp ny, khi cha c h thng thc th vic nghin cu trn
m hnh l gii php duy nht nh gi cc ch tiu k thut ca h thng, la
chn cu trc v thng s ti u ca h thng ng thi m hnh cng c
dng o to v hun luyn.

6
Trong nhng trng hp ny dng phng php m phng m hnh ha l
gii php duy nht nghin cu h thng.

1.2.2. Phn loi m hnh ha h thng

C th cn c vo nhiu du hiu khc nhau phn loi m hnh. Hnh 1.1


biu din mt cch phn loi m hnh in hnh. Theo cch ny m hnh chia
thnh hai nhm: m hnh vt l v m hnh ton hc hay cn gi l m hnh tru
tng.

- M hnh vt l l m hnh c cu to bi cc phn t vt l. Cc thuc


tnh ca i tng phn nh cc nh lut vt l xy ra trong m hnh. Nhm m
hnh vt l c chia thnh m hnh thu nh v m hnh tng t. M hnh vt l
thu nh c cu to ging i tng thc nhng c kch thc nh hn cho ph
hp vi iu kin ca phng th nghim. V d, ngi ta ch to l hi ca nh
my nhit in c kch thc nh t trong phng th nghim nghin cu cc
ch thy vn ca p thy in. u im ca loi m hnh ny l cc qu trnh
vt l xy ra trong m hnh ging nh trong i tng thc, c th o lng quan
st cc i lng vt l mt cch trc quan vi chnh xc cao. Nhc im ca
m hnh vt l thu nh l gi thnh t, v vy ch s dng khi thc s cn thit.

7
- M hnh vt l tng t c cu to bng cc phn t vt l khng
ging vi i tng thc nhng cc qu trnh xy ra trong m hnh tng ng
vi qu trnh xy ra trong i tng thc. V d, c th nghin cu qu trnh dao
ng ca con lc n bng m hnh tng t l mch dao ng R-L-C v qu trnh
dao ng iu ha trong mch R-L-C hon ton tng t qu trnh dao ng iu
ha ca con lc n, hoc ngi ta c th nghin cu ng dy ti in bng m
hnh tng t l mng bn cc R-L-C. u im ca loi m hnh ny l gi thnh
r, cho php chng ta nghin cu mt s c tnh ch yu ca i tng thc.
- M hnh ton hc thuc loi m hnh tru tng. Cc thuc tnh c
phn nh bng cc biu thc, phng trnh ton hc. M hnh ton hc c chia
thnh m hnh gii tch v m hnh s. M hnh gii tch c xy dng bi cc
biu thc gii tch. u im ca loi m hnh l cho ta kt qu r rng, tng qut.
Nhc im ca m hnh gii tch l thng phi chp nhn mt s gi thit n
gin ha c th biu din i tng thc bng cc biu thc gii tch, v vy
loi m hnh ny ch yu c dng cho cc h tin nh v tuyn tnh.
- M hnh s c xy dng theo phng php s tc l bng cc chng
trnh chy trn my tnh s. Ngy nay, nh s pht trin ca k thut my tnh v
cng ngh thng tin, ngi ta xy dng c cc m hnh s c th m phng
c qu trnh hot ng ca i tng thc. Nhng m hnh loi ny c gi l
m hnh m phng. u im ca m hnh m phng l c th m t cc yu t
ngu nhin v tnh phi tuyn ca i tng thc, do m hnh cng gn vi i
tng thc. Ngy ny, m hnh m phng c ng dng rt rng ri.
C th cn c vo cc c tnh khc nhau phn loi m hnh nh: m
hnh tnh v m hnh ng, m hnh tin nh v m hnh ngu nhin, m hnh
tuyn tnh v m hnh phi tuyn, m hnh c thng s tp trung, m hnh c thng
s di, m hnh lin tc, m hnh gin on,
M hnh phi t c hai tnh cht c bn sau:
Tnh ng nht: m hnh phi ng nht vi i tng m n phn nh theo
nhng tiu chun nh trc.

8
Tnh thc dng: C kh nng s dng m hnh nghin cu i tng. R
rng, tng tnh ng nht trong m hnh phi a vo nhiu yu t phn nh
y cc mt ca i tng. Nhng nh vy nhiu khi m hnh tr nn qu phc
tp v cng knh n ni khng th dng tnh ton c ngha l mt i tnh
cht thc dng ca m hnh. Nu qu ch trng tnh thc dng, xy dng m hnh
qu n gin th sai lch gia m hnh v i tng thc s ln, iu s dn
n kt qu nghin cu khng chnh xc. V vy, ty thuc vo mc ch nghin
cu m ngi ta la chn tnh ng nht v tnh thc dng ca m hnh mt cch
thch hp.

1.3. Phng php m phng

1.3.1. S khi

Cc m hnh s khi gm hai i tng, cc ng dy tn hiu v cc


khi. Chc nng ca ng dy tn hiu l truyn dn tn hiu, hoc gi tr, t
im gc ban u ca n (thng l mt khi) ti im kt thc (thng l mt
khi khc). Hng ca dng tn hiu c xc nh bi mi tn trn ng tn
hiu. Mt hng ch c xc nh cho mt ng tn hiu, ton b cc tn hiu
truyn trn cc nhnh khc phi theo hng ring. Mi khi l mt thnh phn x
l tc ng ti tn hiu v tham s u vo to ra tn hiu u ra. Bi v cc
khi chc nng c th l phi tuyn cng nh tuyn tnh nn tp hp cc khi chc
nng ring v thc t l khng gii hn v hu nh khng bao gi c s ging
nhau gia cc nh cung cp v ngn ng ca khi chc nng. Tuy nhin, mt s
ba khi c bn phi c thit lp cc ngn ng s khi c im chung.
Cc khi ny l nt cng, khi khuch i v b tch phn. Mt h thng kt hp
cht ch ba khi c m t nh Hnh 1.2.

9
Y
0

R + E X 1 Y
_ K
+ D

Nt cng B khuch i B tch phn

Hnh 1.2: V d v mt h thng 3 khi

1.3.2. Bn cht ca phng php m phng

Phng php m phng c th nh ngha nh sau:

M phng l qu trnh xy dng m hnh ton hc ca h thng thc v sau


tin hnh tnh ton thc nghim trn m hnh m t, gii thch v d on
hnh vi ca h thng thc.

Theo nh ngha ny, c ba im c bn m m phng phi t c. Th


nht l phi c m hnh ton hc tt tc l m hnh c tnh ng nht cao vi h
thc ng thi m hnh c m t r rng thun tin cho ngi s dng. Th hai
l m hnh cn phi c kh nng lm thc nghim trn m hnh tc l c kh nng
thc hin cc chng trnh my tnh xc nh cc thng tin v h thc. Cui
cng l kh nng d on hnh vi ca h thc tc l c th m t s pht trin ca
h thc theo thi gian.

Phng php m phng c xut vo nhng nm 80 ca th k 20, t


n nay phng php m phng c nghin cu, hon thin, v ng dng
thnh cng vo nhiu lnh vc khc nhau nh lnh vc khoa hc k thut, khoa
hc x hi, kinh t, y t, Sau y trnh by mt s lnh vc m phng php m
phng c ng dng v pht huy c u th ca mnh.

- Phn tch v thit k h thng sn xut, lp k hoch sn xut.


- nh gi phn cng, phn mm ca h thng my tnh.
- Qun l v xc nh chnh sch s tr mua sm vt t ca h thng kho vt
t, nguyn liu.

10
- Phn tch v nh gi h thng phng th qun s, xc nh chin lc
phng th, tn cng.
- Phn tch v thit k h thng thng tin lin lc, nh gi kh nng lm vic
ca mng thng tin.
- Phn tch v thit k cc h thng giao thng nh ng st, ng b,
hng khng, cng bin.
- nh gi, phn tch v thit k cc c s dch v nh bnh vin, bu in,
nh hng, siu th.
- Phn tch h thng kinh t, ti chnh.

Phng php m phng c ng dng vo cc giai on khc nhau ca


vic nghin cu, thit k v vn hnh cc h thng nh sau:

+ Phng php m phng c ng dng vo giai on nghin cu, kho


st h thng trc khi tin hnh thit k nhm xc nh nhy ca h thng i
vi s thay i cu trc v tham s ca h thng.

+ Phng php m phng c ng dng vo giai on thit k h thng


phn tch v tng hp cc phng n thit k h thng, la chn cu trc h
thng tha mn cc ch tiu cho trc.

+ Phng php m phng c ng dng vo giai on vn hnh h thng


nh gi kh nng hot ng, gii bi ton vn hnh ti u, chn on cc trang
thi c bit ca h thng.

Qu trnh m hnh ha c tin hnh nh sau: Gi h thng c m


phng l S. Bc th nht ngi ta m hnh ha h thng S vi cc mi quan h
ni ti ca n. thun tin trong vic m hnh ha, ngi ta thng chia h S
thnh nhiu h con theo cc tiu ch no S = S1, S2, S3, , Sn. Tip n ngi
ta m t ton hc cc h con cng cc quan h gia chng. Thng thng gia cc
h con c mi quan h trao i nng lng v trao i thng tin. Bc th hai
ngi ta m hnh ha mi trng xung quanh E, ni h thng S lm vic, vi cc

11
mi quan h tc ng qua li gia S v E. Khi c m hnh ca S v E, ngi ta
tin hnh cc thc nghim trn m hnh, tc l cho S v E lm vic mt iu
kin xc nh no . Kt qu ngi ta thu c mt b thng s ca h thng,
hay thng gi l xc nh c mt im lm vic ca h thng. Cc thc
nghim c lp li nhiu ln v kt qu m phng c nh gi theo xc sut
thng k. Kt qu m phng cng chnh xc nu s ln thc nghim, cn gi l
bc m phng cng ln. V l thuyt bc m phng l hu hn nhng phi
ln v ph thuc vo yu cu ca chnh xc.

Hnh 1.3 trnh by qu trnh nghin cu bng phng php m phng v


quan h gia h thng thc vi kt qu m phng.

Hnh 1.3 Qu trinh nghin cu bng phng php m phng

Nhn vo hnh 1.3 ta thy rng nghin cu h thng thc ta phi tin
hnh m hnh ha tc l xy dng m hnh m phng. Khi c m hnh m phng
s tin hnh lm cc thc nghim trn m hnh thu c cc kt qu m phng.
Thng thng kt qu m phng c tnh tru tng ca ton hc nn phi thng
qua x l mi thu c cc thng tin kt lun v h thng thc. Sau dng cc
thng tin v kt lun trn hiu chnh h thc theo mc ch nghin cu ra.

12
1.3.3. Cc bc nghin cu m phng

Hnh 1.4 Cc bc nghin cu m phng

Khi tin hnh nghin cu m phng thng thng phi thc hin qua 10
bc nh c biu din bi lu nh hnh 1.4.

Bc 1: Xy dng mc tiu m phng v k hoch nghin cu.

13
iu quan trng trc tin l phi xc nh r mc tiu nghin cu m
phng. Mc tiu c th hin bng cc ch tiu nh gi, bng h thng cc
cu hi cn c tr li.

Bc 2: Thu thp d liu v xc nh m hnh nguyn l.

Ty theo mc tiu m phng m ngi ta thu thp cc thng tin, cc d liu


tung ng ca h thng S v mi trng E. Trn c s xy dng m hnh
nguyn l Mnl, m hnh nguyn l phn nh bn cht ca h thng S.

Bc 3: Hp thc ha m hinh nguyn l Mnl

Hp thc ha m hnh nguyn l l kim tra tnh ng n, hp l ca m


hnh. M hnh nguyn l phi phn nh ng bn cht ca h thng S v mi
trng E nhng ng thi cng phi tin dng, khng qu phc tp cng knh.
Nu m hnh nguyn l Mnl khng t phi thu thp thm thng tin, d liu tin
hnh xy dng li m hnh.

Bc 4: Xy dng m hnh m phng Mmp trn my tnh.

M hnh m phng Mmp l nhng chng trnh chy trn my tnh. Cc


chng trnh ny c vit bng cc ngn ng thng dng nh FORTRAN,
PASCAL, C++, hoc cc ngn ng chuyn dng m phng nh GPSS,
SIMSCRIPT,

Bc 5: Chy th

Sau khi ci t chng trnh, ngi ta tin hnh chy th xem m hnh m
phng c phn nh ng cc c tnh ca h thng S v mi trng E hay khng.
giai on ny cng tin hnh sa cha cc li v lp trnh.

Bc 6: Kim chng m hnh

Sauk hi chy th ngi ta c th kim chng v nh gi m hnh m


phng c t yu cu hay khng, nu khng phi quay li t bc 2.

Bc 7: Lp k hoch th nghim

14
bc ny ngi ta phi xc nh s ln th nghim, thi gian m phng
ca tng b phn hoc ton b m hnh. Cn c vo kt qu m phng ( bc 9),
ngi ta tin hnh hiu chnh k hoch th nghim t c kt qu vi
chnh xc theo yu cu.

Bc 8: Th nghim m phng

Cho chng trnh chy th nghim theo k hoch c lp bc 7.


y l bc thc hin vic m phng, cc kt qu ly ra t bc ny.

Bc 9: X l kt qu

Th nghim m phng thng cho nhiu d liu c tnh thng k xc sut.


V vy, c kt qu cui cng vi chnh xc theo yu cu, cn phi thc hin
vic x l cc kt qu trung gian. Bc x l kt qu ng vai tr quan trng trong
qu trnh m phng.

Bc 10: S dng v lu tr kt qu.

S dng kt qu m phng vo mc ch nh v lu gi di dng cc


ti liu c th s dng nhiu ln.

1.3.4 Mt s mi trng m phng thng gp

- Matrix/ System Build

- Easy 5

- Matlab/ Simulink

- LabView

- VisSim

15
CHNG II
MI TRNG MATLAB V CCH LP TRNH
2.1 Gii thiu mi trng lm vic Matlab

2.2 Cc hm ton

Chng trnh Matlab c sn rt nhiu hm ton tp hp trong bng sau y.


xem k hn, c th s dng cc lnh help elfun hoc help datafun. Tt c cc
hm trong bng u c kh nng s dng tnh vi vector.

Cc hm ton

sqrt(x) Cn bc hai rem(x, y) S d ca php chia x/y

exp(x) Hm m c s e round(x) Lm trn s

log(x) Logarithm t nhin ceil(x) Lm trn ln

log10(x) Logarithm c s thp phn floor(x) Lm trn xung

abs(x) Gi tr tuyt i sum(v) Tng cc phn t vector

16
sign(x) Hm du prod(v) Tch cc phn t vector

real(x) Phn thc min(v) Phn t vector b nht

imag(x) Phn o max(v) Phn t vector ln nht

phase(x) Gc pha ca s phc mean(v) Gi tr trung bnh cng

Cc hm lng gic

sin(x) Hm sin atan(x) Hm arctg 900

cos (x) Hm cos atan2(x) Hm arctg 1800

tan(x) Hm tg sinc(x) Hm sin (pi x)/(pi x)

2.3 Tnh ton vi vector v ma trn

2.3.1. Khai bo vector v ma trn

Matlab c mt s lnh c bit khai bo hoc x l vector v ma trn.


Cch n gin nht khai bo, to nn vector hoc ma trn l nhp trc tip. Khi
nhp trc tip, cc phn t ca mt hng c cch bi du phy hoc v tr cch
b trng (trong cc trng hp khc Matlab s b qua v tr trng, cc hng ngn
cch bi du (;) hoc ngt dng.

V d:

>> my_vector = [2 3 4]

my_vector =

2 3 4

>> my_matrix = [my_vector; 5 6 7]

my_matrix =

2 3 4

5 6 7

17
Vector c cc phn t tip din vi mt bc i nht nh, c th c
nhp mt cch n gin nh ton t (:) nh sau:

Start: increment: destination

Nu ch nhp start v destination th Matlab s t ng t increment l +1.

V d:

>> my_vector = (1:3:8)

my_vector =

1 4 7

>> my_vector1 = (1:8)

my_vector1 =

1 2 3 4 5 6 7 8

Cng c th nhp cc vector tuyn tnh cng nh vector c phn hng


logarithm bng cch dng lnh:

linspace(start, destination, number)

logspace(start, destination, number)

i vi logspace th start v destination c nhp bi s m thp phn,


v d: 100 = 102 ta ch cn nhp 2.

V d:

>> linspace(1,7,3)

ans =

1 4 7

>> logspace(1,3,5)

ans =

1.0e+003 *

18
0.0100 0.0316 0.1000 0.3162 1.0000

Bng cc hm ones(line, column) v zeros(line, column) ta to cc ma


trn c phn t l 0 hoc 1. Hm eye(line) to ma trn n v, ma trn ton
phng vi cc phn t 1 thuc ng cho, tt c cc phn t cn li l 0. Kch
c ca ma trn hon ton ph thuc ngi nhp.

V d:

>> ones(2,2)

ans =

1 1

1 1

>> zeros(2,2)

ans =

0 0

0 0

>> eye(3)

ans =

1 0 0

0 1 0

0 0 1

Vic truy cp tng phn t ca vector hoc ma trn c thc hin bng
cch khai bo ch s ca phn t, trong cn lu rng: Ch s b nht l 1 ch
khng phi l 0. c bit, khi cn xut tng hang hay tng ct, c th s dng
ton t (:) mt cch rt li hi. Nu du (:) ng mt mnh, iu y c ngha l:
Phi xut mi phn t thuc hng hay ct.

V d:

19
>> my_matrix(2,3)

ans =

Matlab c mt lnh rt hu ch, phc v to ma trn vi chc nng tn hiu


th, l rand(line, column). Khi gi, ta thu c ma trn vi phn t mang cc
gi tr ngu nhin.

V d:

>> rand (2,3)

ans =

0.9501 0.6068 0.8913

0.2311 0.4860 0.7621

2.3.2. Tnh ton vi vector v ma trn

Nhiu php tnh c th c p dng cho vector v ma trn.

- Cc php tnh vi tng phn t: .* ./ .^

>> [2 3 4] .* [1 2 3]

ans =

2 6 12

>> [2 3 4] .^ [1 2 3]

ans =

2 9 64

- Chuyn v ma trn matrix:

transpose (maxtrix) hoc matrix.

>> transpose (my_matrix)

ans =

20
2 5

3 6

4 7

- Chuyn v ma trn matrix c phn t phc lin hp:

ctranspose (maxtrix) hoc matrix

(i vi cc gi tr thc, hai lnh trn cho ra kt qu nh nhau)

>> matrix = [1+i 1-i;2 3]

maxtrix =

1.0000 + 1.0000i 1.0000 - 1.0000i

2.0000 3.0000

>> ctranspose(matrix)

ans =

1.0000 - 1.0000i 2.0000

1.0000 + 1.0000i 3.0000

- o ma trn:

inv(matrix)

>> matrix = [1 2;4 9]

matrix =

1 2

4 9

- Tnh nh thc ca ma trn:

det(matrix)

>> det(matrix)

ans =

21
1

- Tnh cc gi tr ring ca ma trn:

eig(matrix)

>> eig(matrix)

ans =

0.1010

9.8990

- Xc nh hng ca ma trn:

rank(maxtrix)

>> rank (my_matrix)

ans =

- Tnh vector sai phn:

diff(vector [n])

>> vector= [1 2 3]

vector =

1 2 3

>> diff(vector)

ans =

1 1

- Chp vector (nhn a thc): nu hai vector cn chp c s phn t l cc h


s ca hai a thc, kt qu thu c s ng vi cc h s sau khi nhn hai a thc
vi nhau.

conv(vector 1, vector 2)

22
>> vector1 = [2 3 4]

vector1 =

2 3 4

>> vector2 = [1 2 3]

vector2 =

1 2 3

>> conv(vector1,vector2)

ans =

2 7 16 17 12

2.4 Cc php so snh v php ton Logic

Cc php tnh logic c th s dng cho tt c cc s. Khi tnh, cc gi tr


khc 0 ng vi logic true v cc gi tr 0 ng vi logic false. Khi xut gi tr ln
mn hnh ta s ch thu c cc s 0 hoc 1.

Php so snh Php tnh logic

== eq(a,b) bng ~ not(a,b) Negation (NOT)

~= ne(a,b) khc & and(a,b) AND

< lt(a,b) b hn | or(a,b) OR

<= le(a,b) b hn hoc bng xor(a,b) exclusive OR

> gt(a,b) ln hn

>= ge(a,b) ln hn hoc bng

Ch :

23
- Cc php tnh c thc hin theo trnh t: trc ht l cc biu thc ton,
tip theo l cc biu thc logic. Tuy nhin, khi c cm gic khng chc chn, c
th dng cch vit vi du ngoc n.

- Mt lnh hu ch l exist(variable) gip kim tra xem trong Workspace c


tn ti bin hay hm no tn l variable hay khng: Nu khng: Nu khng ta thu
c kt qu l s 0, nu kt q l s khc 0, chnh l s ni ln bn cht ca
variable, chng hn 1 ni rng variable l bin trong wordspace, 2 ni rng
variable l mt Matlab File trong th mc Matlab, C th xem danh mc cc
lnh nh help ops.

2.5 Bin, cu trc v trng

2.5.1. Bin

Thng thng, kt qu ca cc bin c gn cho ans. S dng du = ta c


th nh ngha mt bin, ng thi gn gi tr cho bin . Khi nhp tn ca mt
bin m khng gn gi tr, ta thu c gi tr hin ti ca bin. Tt c cc bin u
l bin global trong Workspace. Tn ca bin c th cha ti 32 ch ci, gch
ngang thp (_) cng h ch s. Ch vit hoa v ch thng u c phn bit.

Vic nhp gi tr c th c thc hin thnh mt chui lnh trong cng


mt dng, ch cch nhau bi du (;). Nu s dng du phy (,) tch cc lnh,
khi y cc gi tr s c xut ra mn hnh.

V d:

>> variable_1 = 25; variable_2 = 10;

>> variable_1

variable_1 =

25

>> a = variable_1 + variable_2, A = variable_1/variable_2

a =

24
35

A =

2.5000

Mt s tn bin nh pi, i, j v inf c Matlab dng ch cc hng s


hay k hiu, vy nn ta phi trnh s dng chng. i vi cc php tnh bt nh
(0/0), trn mn hnh s hin kt qu NaN (Not A Number). Eps cho ta bit cp
chnh xc tng i khi biu din s vi du phy ng (V d: eps = 2.2204e-
016)

V d:

>> 1/0

Warning: Divide by zero.

ans =

Inf

>> 0/0

Warning: Divide by zero.

ans =

NaN

2.5.2. Cu trc

thun tin cho vic qun l v s dng, ta c th tp hp nhiu bin li


trong mt cu trc. Trong mi mng c mt tn ring (mt chui k t string)
t gia hai du ( ) c km theo gi tr. Mt cu trc c to nn bi lnh
struct(name_1, value_1, name_2, value_2, )

>> matrix=[2 3 4;3 4 5]

matrix =

25
2 3 4

3 4 5

>> my_struct=struct('data',matrix,'size',[2,3]);

Vic truy cp vo d liu c thc hin vi du (.)

>> my_struct(2).data=matrix.^(-1);

>> my_struct(2).data(1,:)

ans =

0.5000 0.3333 0.2500

Cu trc mc vng

Cc cu trc ng nhin cng c th c to nn mc vng vi nhau. V


d sau y minh ha kh nng : Ta khai bo mt cu trc c tn l componist
vi mng u tin c tn l name, c gn gi tr l chui k t Johann
Sebastian Bach. Mt cu trc th 2 c tn datum vi 3 mng Day, Month v
Year ct gi ngy, thng v nm sinh. Sau ta gn cu trc datum vo mng
born ca cu trc componist:

>> componist = struct('name','Johann Sebastian Bach')

componist =

name: 'Johann Sebastian Bach'

>> datum.Day = 21;

>> datum.Month = 'March';

>> datum.Year = '1685';

>> componist.born = datum;

>> componist

componist =

name: 'Johann Sebastian Bach'

26
born: [1x1 struct]

Ta gn cho mng name ca cu trc componist gi tr mi l chui k t


Wolgang Amadeus Mozart. Cc gi tr ca mng born c gn trc tip:

>> componist(2).name = 'Wolfgang Amadeus Mozart';

>> componist(2).born.Day = 27;

>> componist(2).born.Month = 'January';

>> componist(2).born.Year = 1756;

>> componist(2)

ans =

name: 'Wolfgang Amadeus Mozart'

born: [1x1 struct]

>> componist(2).born

ans =

Day: 27

Month: 'January'

Year: 1756

Cu trc componist lc ny mang c im cu trc ca cc vector, v


vy c th x l cc phn t ca cu trc nh cc vector. Trong v d va nu,
cc vector chnh l hai mng name v born:

>> componist

componist =

1x2 struct array with fields:

name

born

27
2.5.3. Trng

Tng qut mt mc cao hn cu trc l trng. chnh l cc Array


(mng nhiu chiu), cha Cell (t bo) vi d liu thuc cc loi v kch c khc
nhau. Ta c th to ra Cell Array bng lnh cell, hoc n gin bng cch ghp
cc phn t bn trong du ngoc { }. Tng phn t ca Cell Array c th c
truy cp nh cc vector, ma trn thong thng hoc nh cc Array nhiu chiu, ch
cn lu rng: Thay v s dng du ngoc trn ( ) ta s dng du ngoc mc { }.

Gi s ta to mt Cell Array rng c tn my_sell nh sau:

>> my_sell = cell(2,3)

my_sell =

[] [] []

[] [] []

By gi ta ln lt gn cho tng mng ca my_cell cc gi tr sau y,


trong c c cc phn t cu trc componist(1) v componist(2) mc
2.5.2:

>> my_cell{1,1} = 'Xin chao cac ban! ';17

>> my_cell{1,2} = 10;

>> my_cell{1,3} = [1 2;3 4];

>> my_cell{2,1} = componist(1);

>> my_cell{2,2} = componist(2);

>> my_cell{2,3} = date;

Khi nhp tn ca Cell Array trn mn hnh hin ln y cu trc ca n.


C th bit ni dung(hay gi tr) ca mt hay nhiu Cell khi ta nhp cc ch s ca
Cell:

>> my_cell

28
my_cell =

[1x36 char ] [ 10] [2x2 double]

[1x1 struct] [1x1 struct] '23-Nov-2009'

>> my_cell{2,3}

ans =

23-Nov-2009

>> my_cell{2,1:2}

ans =

name: 'Jahann Sebastian Bach'

born: [1x1 struct]

ans =

name: 'Wolfgang Amadeus Mozart'

born: [1x1 struct]

>> my_cell{2,2}.born.Month

ans =

January

2.6 Qun l bin

Kch c ca vector hay ma trn c xc nh bi lnh size(variable). i


vi vector cn c th dng lnh length(variable), v khi s dng lnh cho
ma trn ta s thu c gi tr ca vector mang kch c ln nht. Ngoi ra mt bin
c th c kch c l 0, nu n c to nn bi lnh variable = [].

>> a = [2 4 5;1 2 4]

a =

2 4 5

1 2 4

29
>> length(a)

ans =

>> size(a)

ans =

2 3

>> variable = []

variable =

[]

Bng lnh who ta c th kim tra c mi bin ang tn ti trong


Workspace nh danh mc hin trn mn hnh. Bng whos ta cn bit thm cc
thng tin v kch c v nhu cu b nh ca bin. Bng lnh clear[variable_1
variable_2 ] ta c th xo c ch ch mt s bin nht nh, nu ch gi clear
ta s xo ton b bin trong Workspace.

>> whos

Name Size Bytes Class

a 2x3 48 double array

ans 1x1 8 double array

b 3x2 48 double array

componist 1x2 1256 struct array

datum 1x1 398 struct array

my_cell 2x3 1878 cell array

variable 0x0 0 double array

Grand total is 221 elements using 3636 bytes

30
2.7 R nhnh v vng lp

2.7.1 Lnh r nhnh if v switch

Bng cc php so snh v logic mc trc, ta c th a ra c cc quyt


nh, phn bit cc trng hp. lm iu , Matlab c cc lnh sau y:

- if term command [elseif term command ][else command] end

- swith term case term command [...][otherwise command] end

>> if test<=2; a=2, elseif test<=5; a=5,else a=10, end;

a =

>> switch test case 2; a=2, case {3 4 5}; a=5, otherwise


a=10, end;

a =

Trong c hai trng hp trn, cc lnh con c ngn cch bi du (;) v du


(,). Trong cc Scripts, thng ta hay vit nhiu cu trc if v switch mc vng,
an xen ln nhau.

2.7.2 Vng lp for v while

Bng vng lp ta c th thc hin lp li nhiu ln mt s lnh nht nh:

- For variable = term command end

- While term command end

Trong c hai trng hp, lnh break u c tc dng kt thc vng lp.

vidu.m

for k=1:0;

k^2

31
end;

n = 1;

while 1

n=n+1;

m=n^2

if m>10

break;

end;

end

>> vidu

m =

m =

m =

16

Trong v d trn vng lp for khng h c thc hin v phm vi 1:0


ca k l phm vi rng v iu kin ngng c kim tra trc. Ngc li, cng
trong v d vng lp while c thc hin t nht mt ln v iu kin
ngng ch c kim tra sau cng. Ngoi ra, vng while cn hai lnh end kt
thc.

2.7.3 Gin on bng continue v break

Hai lnh hay c s dng iu khin chu trnh tnh ton l continue v
break. Trong vng lp for hay while, khi gi continue ngay lp tc chu trnh

32
tnh chuyn sang bc lp k tip, mi lnh cha thc hin ca vng lp s b b
qua.

Lnh break cn mnh hn: Ngng vng lp ang tnh. Lnh break c tc
dng c trong cc cu trc r nhnh dng if, switch. Nu break c s dng
ngoi vng for, while trong phm vi ca mt script file hay function ca
Matlab, khi y script file v function s b ngng ti v tr ca break.

V d: Kim tra xem trong cc s nguyn thuc khong 3 7, s no l s


nguyn t. Vic kim tra c thc hin mch vng bn ngoi.

>>for m = 3:1:7,

For n = 2:1:m-1,

If mod(m,n) ~= 0, continue, end

Fprintf( %2d is not a prime number!\n, m)

Break

End % n

If n == m-1,

Fprintf(!! %2d is a prime number!\n, m)

End % if

end % m

Mch vng trong c nhim v: Ln lt chia s cn kim tra m cho tt c


cc s trong khong t 2 ti (m-1), sau kim tra xem s d mod(m, n) ca php
chia c khc 0 hay khng. Nu s d bng 0, khi y m chia ht cho n v lnh
continue khng c gi, lnh fprintf xut thng bo ln mn hnh. Nu s
d khc 0, khi y m khng chia ht cho n v lnh continue c hiu lc, lnh
fprintf v break b b qua chuyn sang kim tra vng lp mi vi n ln
hn. Nu m khng chia ht cho cc s trong khong t 2 n (m-1), m ch chia

33
ht cho 1 v bn thn m, khi y m l s nguyn t. Vic kim tra n == m-1 l cn
thit, v nu m khng phi l s nguyn t, v v vy vng lp pha trong c
ri b bi lnh break tip tc cc lnh thuc vng lp pha ngoi.

Matlab a ra kt qa trn mn hnh nh sau:

!! 3 is a prime number!

2 is not a prime number!

3 .

xem tt c cc lnh to kh nng iu khin chng trnh tnh ton, ta


gi lnh help lang.

2.8 Cc scripts v cc hm ca Matlab

2.8.1. Cc scripts ca Matlab

Bn cnh kh nng nhp lnh trc tip, ta c th vit v ct nhiu chui


lnh trong cc script ca Matlab di dng file vi k t ASCII (m-file). Mt
script c khai bo tn khng c ui .m. son tho cc file ta c th s
dng trnh son tho ca Matlab bng cch gi menu File/New/M-file hoc
File/Open. Cng c th gi trc tip nh nt nhn trn ca s Matlab. Nu cha
ci t trnh son tho , c th s dng bt k trnh son tho ASCII no khc
cng c.

34
Hnh 2.3 Trnh son tho ca Matlab vi v d file PWM.M

V mt dng lnh c th tr nn qu di, ngi s dng c th xung dng


(cha kt thc) bng du

2.8.2. Cc hm ca Matlab

Mt dng c bit ca hm m-files l cc hm ca Matlab (cc function).


Khi gi mt function ta c th chuyn giao d liu cho function hay nhn d
liu do function tr li. Ngoi ra, mt function cng c th c cc
function khc hay script gi, v mt script cng c th c cc scripts gi.

Cc bin trong phm vi mt function l bin local (cc b). Cc bin


global (ton cc, c gi tr s dng chung) c nh ngha bi lnh global
variable Lnh nh ngha phi c gi trc tip t Command Windows ca

35
Matlab, hay t mt script, v cng c th nh ngha trong phm vi mt
function.

Trong phm vi function ta c th s dng hai bin nargin v nargout


xc nh s lng d liu c chuyn giao hay nhn tr li.

Nu mt Matlab script hay mt Matlab function ln u tin c gi,


Matlab s dch ra m o, l m s c kch hot thc hin nhim v t ra cho
script hay function. Nu v sau khng c s thay i g trong m-file, qu trnh
dch s khng xy ra ln th hai. Bng lnh clear functions ta c th xo
cng bc cc hm dch, ng thi gi nguyn cc m-files.

2.9 Nhp xut d liu

Thng thng, Matlab tm c cc script hay d liu, bt buc cc file


lin quan phi nm ti th mc hin ti. Mt s lnh iu hnh v qun l file

pwd Hin th th mc hin ti

dir [] Hin th ni dung ca th mc []

ls [] Hin th ni dung ca th mc []

cd directory Chuyn th mc

mkdir directory To th mc mi

copyfile source destination Sao chp (copy) file

delete file Xo file

! commando Gi lnh t h iu hnh

36
CHNG III
HA TRONG MATLAB
3.1 C s ho Matlab

Khun kh ca mi thao tc xut ho trn nn Matlab l Figure. C th


to ra ca s nh hnh 2.2 bng cch gi lnh figure v mi figure s t ng
c nh s.

>> figure

C th gi mt figure c s bng lnh figure(number). S ca figure


s hin th nu ta gi gcf (Get hendle to Current figure).

>> gcf

ans =

37
Bng lnh subplots (row, column, counter), c th chia u mt figure
thnh nhiu subplots ( ho con) c counter (b m) nh s pha trn
bn tri. Nu vic nh s ch cn mt ch s, chng s c vit tun t khng
cn du phy hay du cch.

C th xo ni dung ca mt figure bng lnh clf (clear current figure),


v lnh delete figure(number) s xo chnh figure. Tng t, lnh
close(number) s ng figure mang s number cn lnh close all s ng tt
c cc figures ang m. C th xem c im ca mt figure bng lnh get, vi
lnh set ta li c th lp c im cho figure.

Vic lp trnh ho trong Matlab lun ph thuc vo i tng c th v


v cng phong ph. Mt cng c lm nh bt cng vic l trnh son tho c tnh
ho (property editor) vi ca s gii thiu hnh sau:

Vic phn chia thang bc ca trc thng c Matlab t ng thc hin.


Tuy nhin, ta c th phn chia th cng trong trng hp hai chiu (2-D) bng
lnh axis([x_min,x_max,y_min,y_max]) v trong trng hp ba chiu (3-D)
axis([x_min,x_max,y_min,y_max,z_min,z_max]). Lnh axis(auto) s trao
quyn chia trc li cho Matlab. Lnh grid on s to ra mt li to ng vi
cch chia trc xc nh. i vi ho 3-D ta c thm lnh box on to
khung bao cho 3-D-Plot.

38
in k t vo mt ho ta c nhiu kh nng khc nhau: Dng
xlabel(string), ylabel(string), zlabel(string) in tn cho trc; dng
title(string) in tn cho figure. Ngoi ra ta cn c th vit cc k t ln cao,
tt thp hay cc k t Hy Lp.

Bng lnh legend(string_1,string_2,, [position]) ta c th in thm


mt s li ghi ch vo ho. V tr ca li ghi ch c xc nh bi s ghi
trong [position], vi ngha: 14 s t li ghi ch vo 4 gc, 0 t t ng v -1
t vo bn phi, cnh ho. Lnh text(x_value,y_value,string) cho php ta
in mt on vn bn vi ni dung string vo to bt k x_value, y_value
trong ho.

S dng lnh zoom on | off dung chut ct v co dn mng .


Ngoi ra, ca s figure cn c mt vi nt cho php dung chut in on vn
bn, v thm nt hoc mi tn, v m Property Editor.

C th thm thng tin chi tit v xut ho ra mn hnh bng cch gi


help graph2d, help graph3d v help specgraph.

3.2 ho 2 chiu

Lnh plot (x_value,y_value [,plotstyle]) v th ni cc im cho bi


cp gi tr x_value, y_value. Thng thng cc im c ni bi mt nt lin.
Nu ta np lun phin nhiu vector x/y, ta s thu c nhiu nt ni c lp vi
nhau. Nu thiu x_value, khi y cc gi tr ca y_value s c v theo th t ch
s ca chng. Nu y_value l cc gi tr phc, khi y th v vi hai trc o v
trc thc. Lnh stars cng c vit vi c php tng t nhng s to ra th
bc thang.

Chui k t plotstyle cu to bi hai thnh phn: Thnh phn th nht l


mt ch ci chn mu v thnh phn th hai l chui k hiu c trng cho
dng chm/ gch ni to nn nt th.

39
Mu Nt v im

k en r - Nt lin o Chm trn

b Xanh lam m sm -- Nt t * Chm sao

c Xm y Vng : Nt gch chm + Du cng

g Xanh l cy w Trng . Nt chm Du nhn

Mi ln gi mi lnh plot, cc th c trong Figure (hoc trong


Subplot) hin ti s b xo. C th ngn chn cc iu bng cch gi lnh hold
on sau lnh plot u tin.

figure;

subplot (121);

plot([-5:0.1:5],cos((-5:0.1:5)*pi), 'k:');

hold on;

fplot ('2*sin(x)', [-5 5]);

subplot(122);

t = (0:20)*0.9*pi;

plot(cos(t),sin(t));

40
Lnh fplot(function, range) trong v d trn minh ha kh nng v trc
tip cc hm tng minh. Ngoi ra, Matlab cn to iu kin v cc hm khng
tng minh mt cch d dng nh lnh ezplot(function_1, [function_2,] range).

Hai lnh semilogx v semilogy cng c c php ging nh plot vi


im khc duy nht: Hai trc x v y c chia thang logarithm. Lnh loglog c
tc dng chia ng thi c hai trc x v y theo thang logarithm.

th BODE v bng lnh bode:

>> figure;

>> pt1 = tf ([1],[0.04 1]);

>> pd = tf ([0.04 1], [1]);

>> bode (pt1,'b-',pd,'r--')

41
3.3 ho 3 chiu

3.3.1 Cc lnh Plots

Lnh plot3 c tc dng tng t nh lnh plot, im khc duy nht l


plot3 c thm vector s liu th ba dnh cho trc z.

>> phi = (0:100) / 100*2*pi;

>> plot3(sin(2*phi), cos(3*phi), phi, 'b*');

42
biu din cc hm 2 chiu di dng mt trong khng gian ta s dng
lnh surf(x_value, y_value, z_value [, color]). Nu x_value, y_value, z_value l
cc ma trn c s hng v s ct ging nhau, khi y cc im ca ho s c
v v ni lin thnh mt.

Nu cc im c mt khong cch u n v pha hai trc x v y, khi y


x_value v y_value c th ch l vector. Trong trng hp ny, cc gi tr x_value
c chun theo ct v y_value chun theo hang ca ma trn z_value.

Hai lnh mesh v waterfall c c php ging nh surf, nhng li to


ra mt li khng in y v ho kiu thc nc. Ngc li contour li v
nn cc ng ng mc (ng ni cc im c cng z_value).

43
Ngoi ra ta cn c th thm mt ma trn color xc nh mu cho ho.
Mi phn t ca color ng vi mt phn t ca z_value. Cc gi tr mu s c
s dng trong mt bng mu, v ta c th thay i bng nh lnh
colormap(name). Nu khng khai bo ma trn mu, Matlab s t ng gn color
= z_value. Di mu c th c co dn thang nh lnh caxis (color_min,
color_max).

3.3.2 Phi cnh trong ho 3-D

C th dng lnh view(horizontal,vertical) phi cnh cho ho 3


chiu bng cch khai cc gc theo phng nm ngang v phng thng ng tnh
bng (o, Degree). Gc chun cho trc l (-37.5o, 30o). Ngoi ra, cng c th
to dng hay thay i phi cnh bng cch nhy v ko th chut, sau khi gi
lnh rotate3d.

3.3.3 Nhp, xut v in ho

Nu cn phi gn mt File ho c sn vo khun hnh ca Figure, ta c


th s dng hai lnh variable = imread(file,fmt) v image(variable).

>> anh = imread('anh1.jpg','jpeg');

>> image(anh)

44
Bng lnh imread ta gn File ho vi nh dng fmt cho bin variable.
Nu variable nhn hnh nh ch bao gm gam mu xm, variable s l mt bin 2
chiu. Nu l hnh nh mu RGB, variable s l mt mng 3 chiu. nh dng
ca ho c khai bo bi fmt. Lnh image (variable) s xut ho mi gn
cho variable ra mn hnh Figure c cha nh vi nh dng .jpg

ho Figure ca Matlab cng c th c xut sang cc nh dng khc.


Lnh print fnumber s in Figure mang s number ra my in. Lnh print
fnumber -dfmt file s xut Figure thnh file vi cc nh dng ho khc. V
d: bmp (Windows bitmap), emf (Enhanced meta), eps (EPS level 1), jpg
(JPEG image), pcx (Paintbrush 24-bit) hay tif (TIFF image, compressed).
bit chi tit hy gi lnh help print.

Nu cn phi lu li sau ny x l, c th ct cc ho thu c


thnh File vi nh dng fig ca Matlab. ct hoc ta i theo menu File / Save
as, hoc gi lnh saveas(handle, file [,format]). Lnh saveas ct handle
(Figure hin ti, c th dng gcf hi) thnh tp c tn file vi mt trong cc
nh dng: fig (File nh phn), m (gm mt File fig v mt File Script).

45
CHNG IV
C S SIMULINK
4.1 Khi ng Simulink

c th lm vic vi Simulink, trc ht ta phi khi ng Matlab. Nu


chy di h iu hnh Linux, sau khi thc hin lnh simulink3 ta s thu c
ca s th vin ca Simulink. Nu lm vic di Windows, sau khi gi simulink
ta c ca s tra cu th vin nh sau:

46
Cc th vin con Source (cc khi ngun tn hiu), Sinks (cc khi xut tn
hiu), Math (cc khi ghp ni ton hc) v Signals & Systems (cc khi tn hiu
v h con) s c gii thiu trong phm vi chng ny.

Tnh cht ca cc khi chc nng

Tt c cc khi chc nng u c xy dng theo mt mu ging nhau


nh sau:

Mi khi c mt hay nhiu u vo/ra (tr trng hp ngoi l: cc khi


thuc hai th vin con Source v Sinks), c tn v trung tm ca hnh khi ch
nht c biu tng th hin c im ring ca khi. Ngi s dng c th tu
thay i tn ca khi (nhy kp phm chut tri vo v tr tn), tuy nhin, mi tn
ch c th s dng mt ln duy nht trong phm vi ca s m hnh m phng. Khi
nhy kp phm chut tri trc tip vo khi ta s m ca s tham s Block
Parameters (tr cc khi Scope, Slider Gain, Subsystem) v c th nhp th cng
cc tham s c trng ca khi. Khi nhp xong, nhy chut tri vo nt OK hay
nt Apply Simulink chp nhn cc tham s va nhp. Nu nhy kp phm chut
tri vo nt Help ta s m ca s ca tin ch tr gip trc tuyn. Nhy mt ln

47
phm chut phi trc tip vo khi c tc dng m menu cha cc lnh cho php
son tho v lp nh dng khi.

Simulink phn bit hai loi khi chc nng: Khi o (vitural) v khi thc
(not vitural). Cc khi thc ng vai tr quyt nh khi chy m phng m hnh
Simulink. Vic thm hay bt mt khi thc s thay i c tnh ng hc ca h
thng ang c m hnh Simulink m t. C th nu nhiu v d v khi thc
nh: khi Sum hay khi Product ca th vin con Math. Ngc li cc khi o
khng c kh nng thay i c tnh ca h thng, chng ch c nhim v thay i
din mo ho ca m hnh Simulink. chnh l cc khi nh Mux, Demux,
hay Enable thuc th vin con Signal & System. Mt s khi chc nng mang c
tnh o hay thc tu thuc theo v tr hay cch thc s dng chng trong m hnh
Simulink.

M hnh Simulink

T ca s th vin khi (Library) hay t ca s truy cp th vin (Library


Browser) ta c th to ra cc ca s m phng mi bng cch i theo menu File /
New / Model, hoc m cc File c sn qua menu File / Open. Mt File Simulink
khi c ct gi s c ui .mdl.

4.2 Cc thao tc c bn vi Simulink

Sao chp: Bng cch gp v th Drag & Drop nh phm chut phi l c
th sao chp mt khi t th vin con (cng c th t mt ca s khc ngoi th
vin).

Di chuyn: Ta c th d dng di chuyn mt khi trong phm vi ca s ca


khi nh phm chut tri.

nh du: Bng cch nhy phm chut tri vo khi ta c th nh du, la


chn tng khi, hoc ko chut nh du nhiu khi mt lc.

48
Xa: c th xa cc khi v cc ng ni b nh du bng cch gi
lnh menu Edit / Clear. Bng menu Edit / Undo hoc t hp phm Ctrl+Z ta c th
cu vn li ng tc xa va thc hin.

H thng con: Bng cch nh du nhiu khi c quan h chc nng, sau
gom chng li thng qua menu Edit / Create Subsystem, ta c th to ra mt h
thng con mi.

Ni hai khi: Dng phm chut tri nhy vo u ra ca mt khi, sau di


mi tn ca chut ti u vo cn ni. Sau khu th ngn tay khi phm chut,
ng ni t ng c to ra. C th r nhnh tn hiu bng cch nhy phm
chut phi vo mt ng ni c sn v ko ng ni mi xut hin ti u vo
cn ni.

Di chuyn ng ni: lu tn hiu thong v d theo di, nhiu khi ta


phi di chuyn, b tr li v tr cc ng ni. Khi nhy chn bng chut tri ta c
th di chuyn tu cc im gc hoc di chuyn song song tng on thng ca
ng ni.

To vector ng ni: d phn bit gia ng ni n v ng ni


cc tn hiu theo nh dng vector, hoc ma trn, hoc mng, ta c th chn menu
Format / Wide nonscalar lines tng b dy ca ng ni.

Ch th kch c v dng d liu ca tn hiu: Lnh chn qua menu Format /


Signal dimensions s hin th kch c ca tn hiu i qua ng ni. Lnh menu
Format / Port data types ch th thm loi d liu ca tn hiu qua ng ni.

nh dng cho mt khi: Sau khi nhy phm chut phi vo mt khi, ca
s nh dng khi s m ra. Ti mc Format ta c th la chn kiu v kch c
ch, cng nh v tr ca tn khi, c th lt hoc xoay khi. Hai mc Foreground
Color v Background Color cho php ta t ch mu bao quang cng nh mu
nn ca khi.

49
nh dng cho ng ni: Sau khi nhy phm chut phi vo mt ng
ni, ca s nh dng ng s m ra. Ti y c cc lnh cho php ct b, chp
hoc xo ng ni.

Hp i thoi v c tnh ca khi: Hoc i theo menu ca ca s m


phng Edit / Block Properties, hoc chn mc Block Properties ca ca s nh
dng khi, ta s thu c hp i thoi cho php t mt vi tham s tng qut v
c tnh ca khi.

Hp i thoi v c tnh ca tn hiu: C th ti c hp thoi Signal


Properties ca mt ng ni hoc bng cch nhy chut nh du ng ni trn
ca s m phng, sau i theo menu Edit / Signal Properties t ca s nh
dng ng. Trong hp i thoi ta c th t tn cho ng ni mt cch n
gin hn: Nhy kp phm chut tri vo ng ni ta s t ng ti c ch
nhp vn bn.

4.3 Tn hiu v cc loi d liu

4.3.1 Lm vic vi tn hiu

Trong Simulink ta phn bit ba loi kch c tn hiu:

Tn hiu n.

Vector tn hiu: Cn c gi l tn hiu 1-D, v kch c ca tn hiu


ch c xc nh theo mt chiu vi di n.

Ma trn tn hiu: Cn c gi l tn hiu 2-D, v kch c ca tn


hiu c xc nh theo hai chiu [mn]. C vector hng [1n] v
vector ct [m1] cng thuc v phm tr ma trn tn hiu.

50
Khi to Simulink, cc khi o s to nn cc ng tn hiu o, duy nht
nhm mc ch lm cho s cu trc tr nn ri mt, ngi s dng d qun
l hn. Tn hiu o c th c 51hem51 s tp hp hnh nh ca nhiu tn hiu
o, khng o, hay hn hp c hai loi. Trong qu trnh m phng, Simulink s
dng mt th tc tn signal propagation nhn bit: Nhng tn hiu thc no
c ghp vo 51hem tn hiu o.

i vi cc tn hiu o ta c th m hp thoi Signal Properties v khai


chn Show propagated signals. Sauk hi khai chn tn ca tn hiu s t ng c
b sung 51hem phn trong ngoc < >, cho bit cc tn hiu cha trong .

Bus tn hiu l tp hp cc tn hiu o ring r. Khi tch Bus bi b phn


phn knh Demux ta s khng th truy cp vo tng phn t ca mi tn hiu, m
ch c th truy cp vo tng tn hiu.

4.3.2 Lm vic vi cc loi s liu

Bn cnh cc c im c gii thiu, mi tn hiu thuc s cu trc


Simulink u c gn mt loi s liu nht nh, v do quyt nh n dung
lng b nh dnh cho mt tn hiu. Simulink cng h tr tt c cc loi s liu
ca Matlab.

double: chnh xc cao, du phy ng.

51
single: chnh xc va, du phy ng.

int8, uint8, int16, uint16, int32, uint32: s nguyn 8-, 16- hay 32- bit
c / khng c du.

52oolean: bin logic 0 hoc 1.

Loi s liu mc nh sn ca Simulink l double. Trong qu trnh m


phng, Simulink s kim tra xem vic o gia cc loi s liu c ng hay
khng, nhm loi tr cc kt qu sai lm c th xy ra.

Kh nng khai bo, xc nh loi s liu ca tn hiu cng nh ca tham s


thuc cc khi chc nng trong Simulink l c bit c ngha, nu ta d nh to
ra t m hnh Simulink m chy cho cc ng dng thi gian thc. Nhu cu v b
nh v tc tnh ton ph thuc vo loi s liu c ta chn.

4.4 Th vin Sources v Sinks

4.4.1 Th vin Sources

a) Constant

Khi constant to nn mt hng s thc hoc phc, hng s c th l scalar,


vector hay ma trn tu theo cch ta khai bo tham s Constant Value v
Interpret vector parameters as 1-D c c chn hay khng. Nu c chn,
ta c th khai bo tham s Constant Value l vector hang hay ct vi kch c [1n]
hay [n1] di dng ma trn. Nu khng c chn, cc vector hang ct
ch c s dng nh vector vi chiu di n, tc l tn hiu 1-D.

52
b) Step v Ramp

Nh hai khi Stemp v Ramp ta c th to nn cc tn hiu dng bc thang


hay dng dc tuyn tnh, 53at kch thch cc m hnh Simulink. Trong hp
thoi Block Parameters ca khi Step ta c th khai bo gi tr u / gi tr cui v
c thi im bt u ca tn hiu bc nhy. i vi Ramp ta c th khai bo
dc, thi im v gi tr xut pht ca tn hiu u ra.

i vi c hai khi, ta c th s dng tham s tu chn Interpret vector


parameters as 1-D quyt nh cc tn hiu dng bc nhy hay dng dc tuyn
tnh c gi tr scalar hay vector hay ma trn.

Ch : Hai khi Step v Ramp khng phi ch to ra mt tn hiu nh nhiu


ngi vn hiu nhm, m c th to ra mt tp cc tn hiu c x l di dng
vector hng hay ct hoc ma trn.

c) Signal Generator v Pulse Generator

Bng Signal Generator ta to ra cc dng tn hiu kch thc khc nhau.

53
Cung cp cho 4 dng song khc nhau (ging nh my pht 54at ):

+ Sng Sin

+ Sng vung (Square)

+ Sng rng ca (Sawtood)

+ Sng ngu nhin (Random)

Vi Pulse Generator to chui xung hnh ch nht. Bin v tn s c


th khai bo tu . i vi Pulse Generator ta cn c kh nng chn t l cho b
rng xung (tnh bng phn trm cho c chu k). i vi c hai khi ta c th s
dng tham s tu chn Interpret vector parameters as 1-D quyt nh cc tn
hiu c gi tr scalar hay vector ma trn.

54
i vi cc h gin on hay h lai (s c c hai loi khi lin tc v
gin on) ta s dng khi Discrete Pulse Generator to chui xung ch nht.

d) Repeating Sequence

Khi Repeating Sequence cho php ta to nn mt tn hiu tun hon tu .


Tham s Time values phi l mt vector thi gian vi cc gi tr n iu tng.
Vector bin ra Output values phi c kch c ph hp vi chiu di ca tham s
Time values. Gi tr ln nht ca vector thi gian quyt nh chu k lp li ca
vector bin ra.

55
e) Sine Wave

Khi Sine Wave c s dng to tn hiu hnh sin cho c hai loi m
hnh: lin tc (tham s Simple time = 0) v gin on (tham s Simple time = 1).
Tn hiu u ra y ph thuc vo 56at ham s chn: Amplitude, Frequency v
Phase trn c s quan h y = Amplitude.sin(Frequency.time + Phase). V n
v ca Phase l [rad], ta c th khai bo trc tip gi tr ca Phase l mt h s
no nhn vi pi. Ging nh khi Constant, ta c th s dng tham s tu chn
Interpret vector parameters as 1-D quyt nh cc tn hiu c gi tr calar hay
vector hay ma trn.

56
f) From Workspace

Khi From Workspace c nhim v ly s liu t ca s Matlab Workspace


cung cp cho m hnh Simulink. Cc s liu ly vo phi c dng ca biu thc
Matlab, khai bo ti dng Data.

57
g) From File

Bng khi From File ta c th ly s liu t mt MAT-File c sn. MAT-


File c th l kt qu ca mt ln m phng trc , c to nn v ct i
nh khi To file trong s Simulink.

4.4.2 Th vin Sinks

58
Th vin ny bao gm cc khi xut chun ca Simulink. Ngoi kh nng
hin th n gin bng s, cn c cc khi dao ng k biu din cc tn hiu
ph thuc thi gian hay biu din hai tn hiu trn h to XY.

a) Scope

Nh khi Scope ta c th hin th cc tn hiu ca qu trnh m


phng. Khi nhn vo nt Properties, hp thoi Scope Properties (c im ca
Scope) s m ra. Chn general ta c th t ch cho cc trc. Khi t Number
of axes > 1, ca s Scope s c nhiu th con ging tng t nh lnh Subplot
ca Matlab. Nu in mt s c th vo time range, th s ch c biu din
ti thi im do gi tr ca s xc nh.

b) XY Graph

Khi ny biu din hai tn hiu u vo trn h to XY di


dng ho Matlab u vo th nht (bn trn). ng vi trc X u th hai ng
vi trc Y.

c) To Workspace

59
Khi To Workspace gi s liu u vo ca khi ti mi trng Matlab
Workspace di dng mng (Array), Stracture hay Stracture with time v ly
chui k t khai ti variable name t tn cho tp s liu c ghi.

d) To File

Khi ny gip ta ct tp s liu (mng hay ma trn) u vo ca khi


cng vi vector thi gian di dng Mat-File. Array nh dng ging nh nh
dng m khi From File cn, v vy s liu do To File ct c th c From File
c trc tip m khng cn phi x l g.

4.5 Th vin Math

Th vin ny c mt s khi c chc nng ghp ton hc cc tn hiu khc


nhau, c nhng khi n gin ch nhm cng hay nhn tn hiu cn c cc hm
phc tp nh lng gic v logic Sau y ta xt chc nng ca mt s khi
quan trng trong th vin ny.

a) Sum

60
Tn hiu ra ca khi Sum l tng cc tn hiu u vo (V d nh tn hiu
u vo l cc tn hiu hnh Sin th tn hiu u ra cng l cc tn hiu hnh Sin).
Khi Sum cng c th tnh tng tng phn t (v d tn hiu vo gm hai tn hiu:
Sin(x) v [5 9 3] th tn hiu ra s c dng [Sin(x)+5 Sin(x)+9 Sin(x)+3]

b) Product v Dot Product

Khi Product thc hin php nhn tng phn t hay ma trn cng nh
php chia gia cc tn hiu vo (dng 1- D hay 2 D) ca khi, v d: nu mt
khi Product c tham s Number of Inputs = */*, vi ba tn hiu vo l 5, sinx v
[4 4 5 6] khi y tn hiu u ra c dng [20/Sinx 20/Sinx 25/Sinx 30/Sinx].

Khi Dot Product tnh tch v hng ca cc Vector u vo. Gi tr


u ra ca khi tng ng vi lnh Matlab y = Sum(cn(u1)*u2).

c) Math Function v Trigonometric Function

61
C hai khi ny u c th x l tn hiu 2-D. Khi Math Function c
mt lng ln cc hm ton c chun b sn cho php ta la chn theo nhu
cu s dng.

Cn khi Trigonometric Function c tt c cc hm lng gic


quan trng.

d) Gain v Slider Gain

Khi Gain c tc dng khuch i tn hiu u vo (nh dng 1-D hay 2-


D) bng biu thc khai bo ti Gain. Biu thc ch c th l mt bin hay mt
s bin. Bin phi tn ti trong mi trng Matlab Workspace th khi y
Simulink mi tnh ton c bin.

Khi Slider Gain cho php thay i h s khuch i v hng trong qu


trnh m phng.

62
4.6 Khai bo tham s v phng php tch phn chun b cho m phng.

Trc khi tin hnh m phng ta phi c nhng thao tc chun b nht
nh: l khai bo tham s v phng php m phng. Cc thao tc chun b
c thc hin ti hp thoi Simulation Parameters. Ti tt c cc tham s u
c mt gi tr mc nh sn, ngha l: C th khi ng m phng tt nht, phi
thc hin chun b, t cc tham s ph hp vi m hnh Simulink c th.

Hp thoi Simulation Parameters bao gm cc trang:

a) Solver (thut ton)

Ti trang ny ta c th khai bo thi im bt u v kt thc, thut ton


tch phn v phng php xut kt qu ca m phng.

Simulink cung cp cho ta mt s thut ton khc nhau gii bng s


phngt rnh vi phn. p ng mt ph kh rng cc bi ton t ra. i vi h
gin on ta c th chn thut ton discrete vi bc tch phn linh hot (Variable-
Step) hay c nh (Fixed-step).

63
Thut ton Variable-step lm vic vi bc tch phn linh hot. Vic gii
cc phng trnh vi phn c bt u vi bc tch phn khai bo ti Initial step
size. Nu ngay khi va bt u, o hm ca cc bin trng thi qu ln, Solver
s chn gi tr b hn gi tr ghi ti Intial step size. Trong qu trnh m phng,
Simulink s c gng gii phng trnh vi phn bng bc cho php ln nht ghi ti
Max step size. Kch c Max step size c th tnh nh sau:

Do c kh nng thch nghi bc tch phn, thut ton Slover vi Variable-


step c th gim st bin thin ca cc bin trng thi t thi im va qua ti thi
im hin ti. Thm vo , thut ton c th nhn bit cc v tr khng lin tc
ca hm nh cc t bin dng bc nhy.

b) Gim st sai s

c th thch nghi bc tch phn vi ng hc ca cc bin trng thi,


ti mi bc tch phn, Simulink li tnh bin thin ca bin trng thi t thi
im va qua ti thi im hin ti. bin thin c gi l sai s cc b
local error ei (i = 1 : s bin trng thi ca h. C mi bc tch phn, thut
ton Solver (dng Variable-step) li kim tra xem local error ca mi bin trng
thi c tho mn iu kin acceptable error (sai s c th chp nhn) c xc
nh bi tham s Relative tolerance v Absolute tolerance hp thoi Simulation
Parameters (vit tt l eltol v abstol). iu kin acceptable error c m t bng
cng thc sau:

ei max ( reltol.|xi|,abstol)

acceptable error

Nu mt trong s cc bin trng thi khng tho mn iu kin trn, bc


tch phn t ng c gim v qu trnh tnh ca bc s c lp li. Vic
acceptable error c xc nh trn c s la chn ti a c nguyn do nh sau:

64
Gi tr khai bo tai Relative tolerance l ng vi bin thin cho php tnh bng %
ca gi tr tc thi ca bin trng thi xi. Nu acceptable error ch c quyt nh
bi Relative tolerance, vy khi |xi| b th relation tolerance c th tr nn qu b,
ng ngha vi vic: Bin trng thi khng c php bin thin g na. iu ny
khng xy ra nu acceptable error c chn theo cng thc trn. Nu ta khai
bo cho Absolute tolerance gi tr auto, khi y Simulink s bt u bng 10-6. Sau
abstol c t v reltol.max(|xi|). Nh cch chn bc linh hot nh vy,
Simulink cho php cc bin trng thi vn c

c) Zero crossing detection

Khi nim zero crossing trong Simulink c hiu l tnh khng lin tc
trong din bin ca trng thi hay l cc im khng thng thng. Cc tn hiu
khng lin tc thng do mt s khi nht nh gy ra nh Abs, Backslash, Dead
Zone, Saturation hay Switch. Mi khi hm loi ny c km theo mt bin zero
crossing, ph thuc vo cc bin trng thi khng lin tc v i du mi khi gp
im khng lin tc. C sau mi bc tch phn, Simulink li kim tra cc bin
zero crossing v qua nhn bit: Trong bc hin ti c xy ra zero crossing hay
khng. Nu c Simulink s tnh chnh xc ti a thi im xut hin bng phng
php ni suy gia gi tr va qua v gi tr hin ti ca bin zero crossing . Khi
bit chnh xc, Simulink bt u tnh tip t cn phi. V vy, nu chn sai s
qu th s c nguy c b st cc im khng. Nu c nghi vn b st im khng,
cn phi gim sai s khai bo m bo l Solver vi Variable-step s chn
bc tnh nh.

Solver vi Fixed-step hot ng vi bc c nh v vic gim st pht


hin cc im khng lin tc l khng th. Song v bit chnh xc s lng bc
tch phn, ta c th c lng kh chnh xc thi gian tnh ca m hnh m phng.
iu ny c bit c ngha nu ta d kin ci t m hnh (sau khi m phng
thnh cng) trn mt cu hnh Hardware no .

d) Workspace I/O

65
Nh khai bo thch hp ti trang Workspace I/O ta c th gi s liu vo,
hoc c s liu t mi trng Matlab Workspace m khng cn s dng cc khi
nh To Workspace, From Workspace trong m hnh Simulink. Ngoi rat a c th
khai bo gi tr ban u cho cc bin trng thi ti y.

Input: tn ca cc tp s liu cn c t Workspace, cc tp s liu c th


nh dng Array, Structure v Structure with time.

Initial State: tn ca bin ang gi gi tr ban u, bin c th c nh


dng Array hay Structure. Vic tn dng kh nng khai bo bin gi gi tr ban
u l rt quan trng khi ta cn s dng cc gi tr trng thi ca mt ln m
phng trc , ang cn nm trong Workspace nh kch hot Save to
Workspace v khai bo Final state.

Bin ra ca m hnh Simulink c ct bng cch in tn bin ra vo


Output, sau khi kch hot Output. Tng t State ct bin trng thi vo
Workspace

e) Advance (khai bo nng cao)

Sauk hi nhn nt Configure ca Inline parameters, ta thu c ca s mi


khai bo cu trc tham s ca m hnh. Vic kch hot Inline parameters s
ph nh kh nng thay i tham s ca cc khi trong qu trnh m phng. Duy
nht nhng tham s lit k trong danh sch Global (tunable) parameters l vn c
th thay i c. V nhng tham s khng thay i c s b coi l hng s, thi
gian s gim i ng k.

4.6.1 Khi ng v ngng m phng

Qu trnh m phng ca m hnh Simulink c khi ng qua menu


Simulation/Start. Trong khi m phng, c th chn Simulation/Pause tm
ngng, hay Simulink/Stop ngng hn qu trnh m phng.

Thm vo ta cn c th iu khin qu trnh m phng bng cc dng


lnh vit ti ca s lnh ca Matlab. iu ny c bit c ngha khi ta mun t

66
ng ho ton b cc chu trnh m phng, khng mun khi ng, ngng hay x
l, bng tay. l cc lnh set_param v sim.

Lnh set_param c gi nh sau:

set_param(sys,SimulinkCommand,cmd)

Trong lnh trn, m hnh m phng c tn sys s c khi ng khi


cmd = start, hay ngng li khi cmd = stop. Sau khong thi gian ngh pause, tar a
lnh tip tc m phng bng continue. Nu chn cmd = update, m hnh s c
cp nht mi

Lnh sim c gi nh sau:

[t,x,y] = sim(model)

Nu mun chuyn giao c tham s m phng, ta gi :

[t,x,y] = sim(model,timespan,options,ut)

Bng lnh trn ta ch ng c qu trnh t tham s m phng t mi


trng Matlab. V tri ca lnh gm cc vector thi gian t, ma trn bin trng thi
x v ma trn bin ra y ca m hnh. Cc tham s ca sim c ngha nh sau :
model l tn ca m hnh Simulink, timespan vit di dng [tStart tFinal] nh
ngha thi im bt u v thi im ngng chy m phng. Tham s ut cho php
c tp s liu c vo khi Inport, c tc dng tng t nh khi khai Input
thuc trang Workspace I/O ca hp thoi Simulation Parameters.

Bng option ta chuyn giao cho m hnh cc tham s m phng quan trng
nh thut ton v bc tch phn, sai s, cc iu kin xut s liu, Vic to cu
trc tham s options c thc hin bng lnh :

options = simset (property, value, )

Vi lnh trn, cc tham s t trong hp thoi Simulation Parameters s


khng b thay i, m ch b v hiu ho khi sim khi ng qu trnh m phng.
Bng lnh :

67
newopts = simset(oldopts, property, value, )

ta c th thay i b tham s c oldopts bi b tham s mi newopts.


Khi gi simset khng c khai bo i km, khi y ton b properties v cc gi tr
ca chng c xut ra mn hnh. Vi lnh :

struct = simset(model)

ta s thu c trn vn b tham s options c khai bo nh lnh


simser hay nh hp thoi Simulations Parameters.

V d lnh :

[t,x,y] = sim(model, [],simset(simget(model), slover, ode23,


MaxStep, 0.01) ;

s a thut ton tch phn ca s Simulink c tn model v ode23 vi


bc ln nht l 0,01 giy. Ti v tr ca timespan ta vit [], ngha l : cc gi tr
ca Start time v Stop time hp thoi Simulation Parameters c gi nguyn.

4.6.2 X l li

Nu xut hin li trong qu trnh m phng, Simulink s ngng m phng


v m hp thoi thng bo li Simulation Diagnostics.

Trong phn pha trn ca hp thoi bo li ta thy c danh sch cc khi


gy nn li. Khi chuyn vch chn ti khi no, ta s thy phn di hp thoi
cc m t k v li ca khi . Nu nhy chut tri vo nt Open, ca s Block
Parameters ca khi s m ra tat hay i, sa li cc tham s khai bo ti .
i khi ngun gy li trn s cn c tn ni bt 68hem bng mu, gip ta
nhanh chng xc nh c v tr ca khi gy li.

4.6.3 Tp hp cc tham s trong Script ca Matlab

i vi cc s Simulink phc hp, ta khng nn trc tip khai bo tham


s cho tng khi c th, m nn tp hp chng li trong mt script (m-File). Bng

68
cch y mi cng vic khai bo hay thay i tham s u c th c thc hin
mt cch rt r rang, tng minh v kh nhm ln.

lm nh vy, thay v vit cc gi tr c th, ta ch cn vit tn ca cc


bin. Cc bin s c gn gi tr c th sau ny, trong khun kh ca script.
Trc khi bt u m phng hay sau khi thay i tham s, ta s phi gi script
np cc bin vo mi trng Workspace ca Matlab. Nh vy, trong qu trnh m
phng Simulink c th truy cp v s dng cc bin np.

Mt kh nng kch hot mt script cha cc tham s m hnh, l vic s


dng cc th tc Callback. Kh nng ny cho php ta tit kim, khng cn mt
cng gi script bng dng lnh trong ca s lnh. Mt script, khi c lin
kt vi tham s InitFcn ca s Simulink nh lnh set_param, lc bt u m
phng s c kch hot, nhng lun trc khi c Block Parameters.

V d:

Set_param(model, InitFcn, model_init)

s lin kt script c tn model_ini.m vi tham s InitFcn ca m hnh


Simulink c tn model.mdl. Mi lin kt s b hu nu ta gi:

set_param(model, InitFcn, )

Thng tin: Th tc Callback no c gi v c gi vo lc no, s do


lnh sau y quyt nh:

set_param(0, CallbackTracing, on)

Lnh s buc Simulink phi lit k ton b cc th tc Callback ti ca


s Command khi chng c gi. bit 69hem v lnh set_param v Callback
Routines ta gi lnh help set_param.

4.6.4 In m hnh Simulink

Cng ging nh ho Matlab, ta c th xut m hnh Simulink di cc


dng khc nhau. Bng lnh print smodel ta s xut m hnh c tn model ra my

69
in. Tuy nhin, nu in qua menu File/Print ta s c nhiu kh nng khai bo tham s
in hn. V d: Ch in mt tng m hnh nht nh. Trc khi in ta nn chuyn tham
s Paper type v kh A4, v mt vi my in c vn khi in theo kh usletter. C
th lm iu t ca s Command ca Matlab

Set(gcf, PaperType, A4)

Vic in m hnh Simulink thnh File c thc hin tng t nh ho


Matlab:

Print smodel;

Print smodel dmeta model;

Print smodel deps model;

4.7 H thng con (Sub system)

4.7.1 To h thng con

C hai cch to h thng con:

Cch 1: Dng chut nh du tt c cc khi m ta mun gom li vi nhau.


Cn ch nh du c cc ng tn hiu km theo. Sau chn Create
Subsystem thuc menu Edit. Cc khi b nh du s c Simulink thay
th bi mt khi Subsystem. Khi nhy chut kp vo khi mi, ca s c
tn ca khi mi s m ra. Cc tn hiu vo / ra ca h con s c t ng
ghp vi h thng m bi cc khi Inport v Outport.
Cch 2: Dng khi Subsystem c sn ca th vin Signals & Systems. Sau
khi gp khi sang m hnh h thng ang m, ta nhy chut kp vo
khi m ca s ca khi v ln lt gp cc khi cn thit to thnh
h thng con. Vic ghp ni vi h thng m phi c ch ng thc hin
bng tay nh cc khi Inport v Outport. y l cch i ngc vi cch 1:
Ta ln lt to cc h thng con (bt u t tng thp nht), sau ni cc
h thng con to thnh h thng m (tng cp trn trc tip).

70
4.7.2 Th vin signals v Subsystem

Subsystem

Khi Subsystem c s dng to h thng con trong khun


kh ca mt m hnh Simulink. Vic ghp vi m hnh thuc cc tng ghp trn
c thc hin nh khi Inport v Outport. S lng u vo / ra ca khi
Subsystem ph thuc s lng khi Inport v Outport.

u vo / ra ca khi Subsystem s c t theo tn mc nh ca cc


khi Inport v Outport. Nu chn Format / Hide Port Labels trn menu ca s khi
Subsystem, ta c th ngn chn c cch t tn k trn v ch ng t cho
Inport v Outport cc tn ph hp vi ngha ca chng.

Inport v Outport

Inport v Outport l cc khi u vo, u ra ca mt m hnh m phng.


Ti hp thoi Block Parameters ta c th in vo Port number s th t ca
khi. Simulink t ng nh s cc khi Inport v Outport mt cch c lp vi
nhau, bt u t 1. Khi ta b sung thm khi Inport hay Outport, khi mi s nhn
s th t k tip. Khi xo mt khi no , cc khi cn li s t ng nh s
mi. Trong hp thoi Block Parameters ca Inport, ta cn c Port with dng
khai bo b rng ca tn hiu vo. Khi ghp mt tn hiu c b rng ln hoc b
hn b rng khai bo vi Inport, ngay lp tc Simulink bo li.

Cn lu tm ti mt vi tham s quan trng khc ca khi Outport. V d,


Outport when disabled cho h thng cn x l tn hiu ra nh th no khi h thng
m phng ang ngng khng chy (xo v khng hay gi nguyn gi tr cui
cng). Initial Output cho bit gi tr cn lp cho u ra.

71
Thng qua cc khi Inport v Outport thuc tng trn cng (ch khng phi
thuc cc h thng con), ta c th ct vo hay ly s liu ra khi mi trng
Workspace. lm iu ta phi kch hot cc Input v Output trang
Workspace I/O ca hp thoi Simulation Parameters v khai bo tn ca cc bin
cn ly s liu vo, hay tn ca cc bin m ta s gi s liu ti

Enable v Trigger

Hai phn t Enable v Trigger nhm mc ch to cho cc h con


Subsystem kh nng khi ng c iu kin. Trong mt h thng con ch c th s
dng mt khi Enable v Trigger. Khi c gn mt trong hai khi , ti khi
Subsystem s xut hin thm mt u vo iu khin c bit, ni m tn hiu
Enable hay Trigger c a ti.

Cc h con c khi Enable c gi l h cho php. H con s c


kch hot ti nhng bc tch phn c pht ra tn hiu Enable vi gi tr dng.
Tham s States when enabling cho bit cn t gi tr ban u cho bin trng thi
nh th no trc khi c kch hot. Tham s Show output port gn cho khi
Enable thm mt u ra, to iu kin x l hay s dng tip tn hiu Enable.

Cc h con c khi Trigger gi l h c kch hot bng xung. Vic kch


hot xy ra ti sn dng (Trigger type: rising), hay sn m (Trigger type:
falling), hay c hai sn (either) ca xung kch hot. Nu Trigger type c chn
l function-call, ta c c hi ch ng to xung kch hot nh mt S-function do ta
t vit.

Cc khi Enable v Trigger l khi o c iu kin.

Mux v Demux

72
Khi Mux c tc dng ging nh mt b chp knh, c tc dng chp cc
tn hiu 1-D ring r thnh mt vector tn hiu mi. Nu nh mt trong s cc tn
hiu ring r l 2-D, khi y ta ch c th tp hp cc tn hiu ring r thnh Bus tn
hiu. Ti tham s Number of inputs ta c th khai bo tn, kch c v s lng
tn hiu vo. V d, vit [4 3 -1] ngha l c tt c 3 u vo, u vo th nht c
b rng l 4, u vo th hai c b rng l 3, cn u vo th ba cha xc nh v
gi tr khai l -1.

Khi Demux c tc dng ngc li vi Mux: Tch cc tn hiu c chp t nhiu


tn hiu ring r tr li thnh cc tn hiu ring r mi. Khi Demux lm vic hoc
theo ch vector (Bus selection mode = off) hoc theo ch chn Bus (Bus
selection mode = on). ch vector, Demux ch chp nhn tn hiu 1-D u
vo v s tch tn hiu 1-D thnh cc tn hiu ring r nh khai bo ti
Number of outputs. Tham s Number of outputs c th c khai bo di dng
mt s nguyn >1 hay di dng mt vecter hng, vic tch cc phn t ca tn
hiu vo v phn chia cc phn t thnh cc tn hiu ra hon ton ph thuc
vo b rng tn hiu vo, s lng v b rng ca tn hiu ra m ta khai bo. Khi
chn ch Bus selection, Demux ch chp nhn Bus tn hiu u vo ca khi.

Mux v Demux lun lun l o.

Bus Selector v Selector

73
Cc tn hiu do khi Mux chp li, c th c tch ra khng ch bng
khi Demux. Ta c th s dng khi Bus Selector ti to li cc tn hiu t mt
Bus tn hiu, ng thi gom chng li thnh cc tn hiu ring r ban u.

Ti hp thoi Block Parameters ca khi Bus Selector trong Signals in


the bus ta c th thy danh sch lit k tt c cc tn hiu nm trong Bus. Nhn nt
Select >> ta c th chn nhng tn hiu m ta cn tch ra khi Bus v gom li nh
ban u.

Khi Selector cho ta kh nng la chn linh hot hn Bus Selector: Kh


nng tch ra khi Bus tn hiu 1-D hay 2-D cc phn t ring l ri sau gom
chng li thnh mt tn hiu 1-D hay 2-D mi.

Hit Crossing

Khi Hit Crossing c tc dng pht hin thi im tn hiu u vo i qua


gi tr khai ti Hit Crossing offset theo hng khai ti Hit Crossing direction. Nu
ta chn Show output port, ti thi im Crossing u ra s nhn gi tr 1, cn li l
0. Nu ti trang Advanced ca hp thoi Simulation Parameters ta t Boolean
logic signals = off, tn hiu ra s l double, ngoi ra l boolean.

IC

Khi IC c tc dng gn cho tn hiu ra ca khi mt iu kin ban u


nht nh.

4.7.3 Kch hot c iu kin cc h thng con

74
Cc h thng con c cha khi Enable hay Trigger gi l cc h cho php
kch hot hay h kch hot bng xung. Vic kch hot h con hon ton do tn hiu
iu khin tng ng xc nh. Nh v d di y cho thy, khi gn khi Enable
hay Trigger cho mt h con, h s t ng c thm mt u vo ginh cho tn
hiu iu khin.

V d tip theo gii thch r hn na cch s dng khi Enable. Hai tn hiu
hnh sin c cng bin v tn s c a ti mt Subsystem. Tn hiu sin th
nht c a ti u vo Enable, tn hiu sin th hai c a ti u vo In1
ca h con. Bn trong h con, tn hiu ca In1 c nhn vi tn hiu ra ca khi
Enable. Tn hiu u ra ca khi Product v ca khi Enable c chp knh, a
ti khi Scope v ct vo Workspace di nh dng Array sau plot thnh
th.

75
Sau khi chy enable1.mdl, thu c th trn ta cn thc hin cc dng
lnh sau:

>> plot(tout,simout(:,1),'r-.',tout,simout(:,2),'g-');
>> legen('Signal Enable','Signal Enable x Sinus');

V d tip theo s minh ho tc dng ca khi Trigger. Trong s m


phng: Hai tn hiu hnh sin c tn s khc nhau c a ti mt h con. Khi
Sine Wave th hai ch c a tng trng qua h con. Ba tn hiu Trigger, tn
hiu ra ca Subsystem v Sine Wave th hai c a ti Scope. Tng t v d
trn, c ba tn hiu c plot ta so snh. Tuy nhin tham s ca khi Trigger
c t vo either, ngha l: H con c kch hot bng c hai sn ln v
xung ca xung kch hot.

76
Sau khi chy trigger1.mdl, tc l khi: Kt qu m phng c ct vo
Workspace, ta thc hin chum lnh di y thu c th nh hnh trn.

>> plot(tout,simout(:,1),'r-.',tout,simout(:,2),'g-');
>> legend('Trigger Signal','Out1 Signal','Sinus Signal');

77
TI LIU THAM KHO
[1] Angermann, A.; Beuschel, M.; Rau, M.; Wohlfarth, U.: Simulation mit
SIMULINK/MATLAB: Skriptum mit Ubungsaufgaben. Stand: 29. November
2001, TU munchen:

[2] Bishop, R. H.: Modern control systems analysis and disign using MATLAB.
Addison - Wesley, 1993.

[3] Nguyn Phng Quang MATLAB & SIMULINK dnh cho k s iu khin
t ng - Nh xut bn khoa hc v k thut.

78

You might also like