Den Giao Thong Thong Minh

Embed Size (px)

Citation preview

  • 7/29/2019 Den Giao Thong Thong Minh

    1/111

    N GIAO THNG THNG MINH

    Chng 1GII THIU TNG QUT V TI TT NGHIP

    1.1. Gii thiu v cc ng dng cXC x l nh trong thc t:Cc ti nghin cu v x l nh t nm 1964 n nay khng ngng pht

    trin. Chng c ng dng trong k thut nhm gii quyt cc vn v nng caocht lng thng tin nh.

    X l nh ngy nay c ng dng trong nhiu lnh vc.Trong y hc, cc thut ton c ng dng nng cao tng phn, m ha

    cc mc sng thnh cc mu ni suy nh X-quangCc nh thin vn hc, dngk thut ny nhm tch cc nhiu thu c t v tinh, tng tng phn cho nh

    chp nhn thy c cc chi tit m mt thng kh phn bit c. Trong vt l,k thut my tnh nng cao cht lng nh c ng dng trong cc lnh vc nh:

    plasmas, microscopy in ti vi ngnh in t t ng th x l nh c ng dng trong thc t nh:

    my nhn cng nghip kim tra sn phm, nhn dng mc tiu trong qun s, nhndng vn tay, nhn dng ng xu, nhn dng mt ngi, cm bin mu, theo di mt giao thng

    C th thy cc ti lin quan n x l nh, cng nh cc ng dng ca n

    trong thc t th v cng rng ln. Tuy nhin, khng phi bt c mt ng dng noca x l nh khi a vo thc t cng d dng, vic lm mt ng dng hot ng tt l c mt vn kh khn bi cc yu t ngoi cnh rt d tc ng n cng vicx l nh nh: khng gian thay i, nh sng thay i, tng phn ca nh cn xl vi mi trng khng gian l khng cao

    1.2. Ni dung ti v cc ng dng c trc :1.2.1. Ni dung ti:

    Yu cu ca ti tt nghip bao gm vic thit k v ch to hon thin mhnh ti mt ng t c hai chiu lu thng, c m hnh n giao thng vcamere c b tr hp hp l.

    M hnh l nhng chic xe c t ti hai chiu lu thng ca mt ng t, tasp xp nhng chic xe ng vi nhiu trng hp nh : mt tha, mt bnh thng, v mt cao, ta x dng cng c matlab chp li v rakt qu phn tch. Sau khi phn tch tn hiu s c gi xung thc hint thi gian cho n giao thng.

    Tm hiu truyn thng my tnh vi vi x l To giao din ngi dng.

    Trang 1

  • 7/29/2019 Den Giao Thong Thong Minh

    2/111

    N GIAO THNG THNG MINH

    Tm hiu cc thut ton x l nh, bt nh trn Matlab.

    Phi thc hin c gii thut v chong trnh nh gi c mt luthng thng qua cng c matlab.

    Trnh c cc yu t gy nhiu t mi trng ngoi nh: tng phngia xe v nn ng khng cao.

    S h thng:

    1.2.2. L do chn v lm ti n giao thng thng minh :Nh ni, cng vi s pht trin khng ngng ca x l nh th hng lot

    cc sn phm ra i c ng dng rng ri trong thc t. Cc ti lin quan nx l nh trong giao thng ng b cng nh ng thy ngy cng c quan tm.

    Nhm Mt thn gm cc thnh vin ang nghin cu v cng tc ti Trung tmCng ngh M phng Hc vin k thut qun s (B Quc phng). Vi ti: Hthng ghi v t ng v qun l phng tin s dng cng ngh x l v nhn dngnh ( ot Gii nh trong cuc thi tr tu Vit Nam 2006). Cng theo nhmcng v ang nghin cu h thng qun l trt t giao thng, thng k c lulng phng tin qua li trn ng, o tc , chp li hnh phng tin vi phmtrt t giao thng nh: vt n , i sai ln ng.

    ti ca L Quc Anh, n t Vin tin hc Php ng H Ni (d thi TTVN2005) vi ti Gii php gim st giao thng. Tc gi m t h thng c khnng: bit c s lng xe trn ng, vn tc xe, chiu di hng i khi xy ra chtc

    Th gii pht trin cc chng trnh m xe v tnh vn tc t ng bngmy tnh t lu nh h thng gim st giao thng bng cng ngh x l nh ca

    phng th nghim my tnh ca hng IBM, h thng m xe bng x l nh my tnhca trng i hc Berkeley (M)

    Trong thc t chng ta thy, ti cc ng t n xanh n c nhng lc phabn ng ch c vi phng tin tham gia giao thng. Pha bn cn li th mt

    lu thng th qu cao nhng vn phi ch cho thi gian n xanh c t c nhri mi c lu thng tip nhiu khi cn gy ra ch tc giao thng do nhng ngikhng y thc nng lng mun qua ng nhanh. V vy ti nghin cu n giaothng thng minh c a ra vi mc ch nh gi c mt lu thng ti ccng t nhm gii quyt c vn nu trn. Theo em ngh y l mt ti ht scmi m v th sc sinh vin.

    Do y l mt ti mi m v thi gian c hn nn trong qu trnh ngin cucn gp rt nhiu kh khn trong vic x l. Em hy vng rng ti ny s c cc

    bn sinh vin ham thch v s pht trin ti ngy cng hon thin hn.

    Trang 2

  • 7/29/2019 Den Giao Thong Thong Minh

    3/111

    N GIAO THNG THNG MINH

    1.3. Kh khn:

    nh hng t tng phn gia xe v nn ng:V nn ng th c nh. Nhng cc loi xe lu thng trn ng th a dng.

    Do vn l s lm nh th no nu nh gia xe v nn ng c mu sc gnging nhau?Chng hn:

    Nu gia chic xe v khng gian quanh n c tng phn cao.

    V d: Xe trng so vi nn ng mu en ( tng phn cao).

    (a)

    (b)

    (c)Hnh 1.1 (a) nh chp t webcam, (b) nh a cp xm, (c) nh trng en

    Trang 3

  • 7/29/2019 Den Giao Thong Thong Minh

    4/111

    N GIAO THNG THNG MINH

    Hnh 1.2 Biu histogram

    V d: Xe so vi nn ng mu en ( tng phn kh cao)

    (a)

    (b)

    Trang 4

  • 7/29/2019 Den Giao Thong Thong Minh

    5/111

    N GIAO THNG THNG MINH

    (c)Hnh1.3 (a) Hnh xe mu chp t webcam, (b) nh xm, (c) nh trng en.

    Nu tng phn gia chic xe vi nn ng l thp? V d: Xe xanh so vi nn ng mu en ( tng phn thp):

    (a)

    (b)

    Trang 5

  • 7/29/2019 Den Giao Thong Thong Minh

    6/111

    N GIAO THNG THNG MINH

    (c)Hnh 1.4 (a) Xe chp t webcam, (b) nh a cp xm, (c) nh trng en

    Hnh 1.5 Biu histogram vi xe mu xanh, nn ng mu en.

    ? Nhn xt:T biu histogram hnh 1.5. i vi xe mu xanh, nn ng mu en r

    rng c tng phn rt thp (cc thnh phn histogram hp v tp trung cui).iu ny dn ti nh sau khi chuyn sang trng en hnh 1.4 (c) l khng tt. Do ,khng th tnh din tch chic xe trong trng hp ny.

    Nhiu bi nh sng mi trng:nh sng s bin thin theo gi gic trong ngy. Hn na, n cn chu s tc ngtrc tip hoc gin tip t cc i tng nh: xe vo trm lc ban m s bt n,ngi i ng chiu n vo, n ng

    Trang 6

  • 7/29/2019 Den Giao Thong Thong Minh

    7/111

    N GIAO THNG THNG MINH

    1.3.1. Cch gii quyt:V nhiu nh sng: Trong Matlab c h tr mt cng c thc hin vic san bngcc vng sng ti.

    I = imread('rice.png');imshow(I)

    se = strel('disk',12);J = imtophat(I,se);figure, imshow(J)

    K = imadjust(J);figure, imshow(K)

    Trang 7

  • 7/29/2019 Den Giao Thong Thong Minh

    8/111

    N GIAO THNG THNG MINH

    Gii quyt tng phn gia khng gian nn v xe: gii quyt cng vic tch xe th gia xe v khng gian quanh n phi c

    tng phn cao.

    Cc phng php lm th:1. Tch mu2. Tch bin

    Tuy nhin, c hai phng php u khng thc hin c v kt qu ca tchmu v tch bin c tt hay khng l ph thuc vo tng phn gia xe v khnggian quanh n. i vi nhng xe c mu sc to nn tng phn cao so vi nnng th cng vic ny khng gp kh khn, nhng i vi nhng xe c mu sc m tng phn ca n l thp th phng php ny khng hiu qu.

    i vi trng hp trn ta c cch lm tng tng phn gia xe v nnng bng cch to nn ng sao cho c nhng vch trng xen k nhng vch en,v cch lm ny rt hiu qu v ph hp vi b tr nn ng ti ng t l nhngvch trng gim tc xe.

    Hnh 1.6 nn ng cho m hnh

    Trang 8

  • 7/29/2019 Den Giao Thong Thong Minh

    9/111

    N GIAO THNG THNG MINH

    Chng 2GII THIU V X L NH V MATLAB

    2. Gii thiu cch thc truy cp thng tin trn help ca matlab:Ci t:

    Thc hin ci t matlab 7.0 (hoc 6.5). C hai a, mt a phn mm chychng trnh matlab 7.0 v mt a help.S dng:

    C th vo help tm thng tin, tp lnh lin quan Trc tip:

    Trong ca s command windows g: help lnh hay biu thc linquan

    V d:>> help find

    Gin tip:

    Vo menu/help/demos

    Demos: mt s v d tham kho. Search: kim thng tin lin quan.

    2.1. Qu trnh x l nh:Qu trnh x l nh bt u bng cng vic thu nhn nh t camera hoc cc

    sensor bn ngoi.S ca qu trnh x l:

    Hnh 2.1 S caqu trnh x l nh

    Trang 9

    Camera

    Sensor

    Thu nhn nh

    Lu nh

    Tin x l nh

    Phn tch nh

    Trch chn ctrng

  • 7/29/2019 Den Giao Thong Thong Minh

    10/111

    N GIAO THNG THNG MINH

    2.1.1. Thu nhn nh:Thu nhn nh c th s dng my quay (camera), webcam, my qut (scanner)

    nh thu c c th l nh trng en hoc cng c th l nh mu. Tuy nhin,

    c th x l v tnh ton cc nh trn my tnh th ch c nh s l n gin nht.Ty thuc vo cht lng thit b thu nhn nh, cc nh s c cht lng khc

    nhau. iu ny nh hng ln n qu trnh tin x l nh.Cc thit b nh c th cho ra cc kt qu tng t hoc nh s cho nn nh sau

    khi chp phi c chuyn thnh nh s (c th dng my scanner qut li tmnh tng t, chuyn n sang nh s a ln my tnh x l).

    2.1.2. Qu trnh tin x l nh:

    l qu trnh x l v nng cao cht lng nh. nh sau khi thu nhn cc th cha nhiu thng tin khng cn thit nh: nhiu, le,iu ny lm cho nhc dung lng ln v c cht lng khng tt, nh hng khng nh n qu trnhx l nh.

    i vi ti lun vn th nh sau x l phi t c cc yu t nh: cn bngcc mc sng ti, kh nhiu, nng cao tng phn.

    2.1.3. Qu trnh phn tch nh:Phn tch nh l qu trnh bin i nh t a ra cc c trng quan trng

    ca nh. y l giai on quan trng nht ca qu trnh x l nh. Cc c trng catm nh c th l: ng bin, phn vng nh, hoc c hai

    2.1.4. c trng ca nh:nh sau khi qua cc bc tin x l v phn tch nh s a ra cc thng s ca

    i tng m chng ta cn quan tm ti. Cc thng s ny s c tnh ton li t chng ta c th a ra cc c trng ca tm nh. Chng ta c th s dng ctrng ny nhn dng s khc bit ca: cc khun mt ngi, sn phm b li trong

    dy chuyn, nhn dng bin s xeTrong thc t, qu trnh x l nh th c nhiu phng php lm khc nhau v

    v th chng ta s c nhiu thut ton tm ra c trng ca mt tm nh l khc nhau.

    Trang 10

  • 7/29/2019 Den Giao Thong Thong Minh

    11/111

    N GIAO THNG THNG MINH

    2.2. Mt s khi nim v nh s:2.2.1. C s v mu:

    Isaac Newton pht hin ra rng, nu mt chm tia sng mt tri i qua mt lng

    knh th chm sng khi qua n khng phi l nh sng trng. M n l mt ph mulin tc t tm ti .

    nh sng l nhng ngun nng lng in t trong dy bc sng quang ph t400nm n 700nm.

    Ph mu c chia thnh 6 vng mu: tm, lam, lc, vng, cam, . Nu nhnmu y th khng c ranh gii gia cc mu k nhau, m mu ny lin sang mukhc.

    Mu m mt ngi cm nhn c l do s phn x nh sng t vt th.

    2.2.2. nh RGB:

    nh RGB (nh mu) hay cn gi l nh truecolor do tnh trung thc ca n.nh ny c biu din theo mt ma trn ba chiu kch thc m x n x 3, vi m x n lkch thc nh theo pixels. Ma trn ny nh ngha cc thnh phn mu red, green,

    blue cho mi im nh. V d: im nh v tr (10,5) s c 3 thnh phn mu cxc nh bi cc gi tr (10,5,1), (10,5,2) v (10,5,3). Vi 1, 2, 3 l tng ng vi cc

    mu R, G, B.

    2.2.3. nh trng en, nh a cp xm:nh trng en ch bao gm hai mu: mu en v mu trng. Chng ta phn s

    bin i ny thnh L mc. Nu L bng hai tc ch c hai mc l 0 v 1 th l nhtrng en, hay cn gi l nh nh phn. Nu L ln hn hai th ta c nh a cp xm.Vic xc nh s mc ny ph thuc vo tiu ch lng t ha. L thng chn l 32,64, 128, 256. Trong nh a cp xm 256 mc l nh c cht lng cao v thngc chn.

    Vi nh nh phn th mi pixel m ha trn mt bit. Cn nh a cp xm 256mc th mi pixel m ha trn tm bits.

    Chng ta c th thy r c nguyn l ca mt tm nh mu, cng nh nhtrng en thng qua mt s lnh trong matlab:

    2.2.4. V d trong matlab v nh mu v nh trng en, a cp xm:%Thc hin ly nh RGB c sn trong my tnh, nh c lu sn ti th mc%work trong matlab, c path l: C:\ Matlab7.0\Work\file nh

    >> anh=imread('k.jpg'); %phi c du phy cui hng v y l mt ma trn

    nh %c dung lng ln.

    Trang 11

  • 7/29/2019 Den Giao Thong Thong Minh

    12/111

    N GIAO THNG THNG MINH

    figure(1), imshow(anh); % trnh din nh mu RGB

    Hnh 2.2 Hnh mu RGB%Thc hin tch ma trn mu ra khi nh mu RGB

    >> goc=anh;>> goc(:,:,2)=0; %Cho ma trn mu xanh Green bng khng

    >> H1=goc;>> H1(:,:,3)=0; %Cho ma trn mu xanh Blue bng khng>> figure(2),imshow(H1);

    Hnh 2.3 Mu R tch t RGB

    Trang 12

  • 7/29/2019 Den Giao Thong Thong Minh

    13/111

    N GIAO THNG THNG MINH

    %Thc hin chuyn i nh mu thnh nh a cp xm, tng tng phn vchuyn thnh nh trng en.

    >> T1=rgb2gray(anh); %chuyn thnh nh a cp xm

    >> figure(3),imshow(T1);>> tuong_phan = imadjust(T1); %tng tng phn>> figure(4),imshow(tuong_phan);>>lay_nguong = graythresh(tuong_phan); %ly ngng theo thut ton otsu>> trang_den = im2bw(tuong_phan,lay_nguong); %nh trng en>> figure(5),imshow(trang_den);

    Hnh 2.4 nh a cp xm

    Hnh 2.5 nh trng en

    Trang 13

  • 7/29/2019 Den Giao Thong Thong Minh

    14/111

    N GIAO THNG THNG MINH

    2.2.5. nh dng nh:nh Bitmap (Microsoft Windows Bitmap (*.BMP)):

    L nh c nh dng theo chun do Microsoft a ra. Vi nh dng ny,

    nh c chuyn m v c lu li y thng tin. Tuy nhin, nh c nhdng theo dng ny c dung lng rt ln v n khng c nn.nh GIF (Graphic Interchanger Format (*.GIF)):

    c nh dng theo chun nn LZW da trn s lp li ca mt nhm imnh thay v cc m lot di nh cc nh dng khc nn dung lng lu tr nh hn.nh GIF thng c dng lu tr cc nh n gin v t c s chuyn i mugia cc vng nh. Chng hn cc nh ha hay th, biu Tuy nhin, nhGIF c cht lng cao, phn gii ha cao, c th hin th trn hu ht cc phn

    mm ha.nh JPEG (Joint Photographic Expert Group (*.JPEG hay *.JPG)):nh JPEG l chun nn nh tnh c mt mt, thng c dng lu tr cc

    nh mu hoc cc nh a mc xm khi khng c yu cu cao v nh gii nn phiging hon ton nh gc. Dung lng ca nh JPEG thng rt nh. Ngi dng cth ch ng dung lng ca nh lu tr bng cch chn t l nn nhiu hay t. nhlu vi nh dng JPG c th lu c 24 bits/pixel d liu mu (tng ng 16triu mu).

    2.3. Cc phng php x l nh trong qu trnh tin x l:2.3.1. Thay i tng phn:Trong nh s, mi im nh c mt gi tr sng khc nhau mt ngi c thnhn thy v cm nhn. Tuy nhin, nu hai i tng c cng sng nhng t trnhai nn nh khc nhau th cho chng ta cc cm nhn khc nhau.

    Khi nim tng phn c a ra biu din s thay i sng cai tng so vi nn, hay ni ca im nh (vng nh) so vi vng nn cha n.nh vi tng phn thp c th do iu kin sng khng , khng u, hoc s

    tng i ging nhau v mu sc, nh sng gia i tng v khng gian quanh itng hoc do tnh khng tuyn tnh hay bin ng nh ca b cm nhn nh.

    iu chnh li tng phn ca nh, ta iu chnh li bin trn tondi hay trn di c gii hn bng cch bin i tuyn tnh u vo (dng hm bini l hm tuyn tnh) hay phi tuyn (hm m hay hm logarit).Thay i tng phn dng trong matlab:>> anh=imread('race_02.jpg');>> figure(1),imshow(anh);

    >> T1=rgb2gray(anh);>> figure(3),imshow(T1);

    Trang 14

  • 7/29/2019 Den Giao Thong Thong Minh

    15/111

    N GIAO THNG THNG MINH

    >> tuong_phan = imadjust(T1); %to nn tng phn vi imadjust>> figure(4),imshow(tuong_phan);>> lay_nguong = graythresh(tuong_phan);

    >> trang_den = im2bw(tuong_phan,lay_nguong);>> figure(5),imshow(trang_den);

    Hnh 2.6 nh cha tng tng phn

    Hnh 2.7 nh sau khi tng tng phnCng thc chung cho lnh imadjust(i vi tt c cc nh xm, mu) l:>> J = imadjust(I,[low_in; high_in], [low_out; high_out],gamma);Trong :

    I: l ma trn nh gray.

    [low_in; high_in]: l gi tr mc xm nh ban u. Nu tng ng ta nhpthng s l [0 1] th mc nh l kiu uint8, [0 1] tng ng vi mc lng tca tm nh l t [0 255], vi uint16 th [0 1] tng ng vi [0 65535].

    [low_out; high_out]: l gi tr mc xm nh sau bin i. Cc gi tr cchn ca n nm trong khong [0 1], tng t nh [low_in; high_in].

    Gamma:Nu gamma nh hn 1 th nh sau bin i phi tuyn vi nh ban u, theo hm mdng:

    Trang 15

  • 7/29/2019 Den Giao Thong Thong Minh

    16/111

    N GIAO THNG THNG MINH

    Nu gamma bng 1 th nh sau bin i s t l tuyn tnh vi nh ban u

    Nu gamma ln hn 1 th nh sau bin i phi tuyn vi nh ban u theo hm m

    dng:

    Ch : Ta c thay i cc thng s ca [low_in; high_in] hoc [low_out; high_out] to nn nhng tm nh m bn.

    Thc hin vi Matlab:>> T1=rgb2gray(anh); % bin i thnh nh mc xm>> figure(3),imshow(T1);

    >> tuong_phan = imadjust(T1,[0 1],[1 0]); % to nh m bn>> figure(4),imshow(tuong_phan);

    Trang 16

  • 7/29/2019 Den Giao Thong Thong Minh

    17/111

    N GIAO THNG THNG MINH

    >> lay_nguong = graythresh(tuong_phan);>> trang_den = im2bw(tuong_phan,lay_nguong);>> figure(5),imshow(trang_den);

    >> T2=rgb2gray(anh);>> figure(6),imshow(T2);>> tuong_phan = imadjust(T1,[0 0.75],[0 1]);>> figure(7),imshow(tuong_phan);

    Hnh 2.8 nh m bn

    Hnh 2.9 nh tng tng phn

    2.3.2. Lm bng histogram:Histogram ca mt nh s vi cc mc xm nm trong di [0, L-1] l mt hm rirc h(rk)=nk. Trong , rk l mc xm th k v nk l s im nh c mc xm rk.Trong thc t, histogram thng c chun ha bng cch chia mi gi tr ca ncho tng s im nh, k hiu l n. Do , histogram chun ha cho bi p(rk)=nk/n,vi k=0, 1, 2, , L-1.

    Trang 17

  • 7/29/2019 Den Giao Thong Thong Minh

    18/111

    N GIAO THNG THNG MINH

    V d 1:>> anh=imread('huanrace.jpg');>> figure(1),imshow(anh);

    >> T2=rgb2gray(anh);>> figure(6),imshow(T2);>> figure(8),imhist(T2,64); % trnh din th histogram

    Hnh 2.10 nh xm

    Hnh 2.11 Biu Histogram

    Trang 18

  • 7/29/2019 Den Giao Thong Thong Minh

    19/111

    N GIAO THNG THNG MINH

    ? Nhn xt:T biu Histogram ta thy cc thnh phn Histogram vng sng v vng ti dntp trung v hai gc ca biu (vng ti l c gi tr t (0 n 50) tp trung kh

    nhiu, vng sng t (200 n 250) cng kh nhiu). iu ny chng t y l mttm nh c tng phn cao.

    V d 2:Thc hin tng t nh trn vi mt tm nh khc.

    Hnh 2.12 nh xm

    Hnh 2.13 Biu Histogram

    Trang 19

  • 7/29/2019 Den Giao Thong Thong Minh

    20/111

    N GIAO THNG THNG MINH

    ? Nhn xt: biu ny, cc thnh phn Histogram tp trung hp v nm gia biu thang

    xm. V th, y l mt tm nh c tng phn thp. V d 3:

    Hnh 2.14 nh a cp xm

    Trang 20

  • 7/29/2019 Den Giao Thong Thong Minh

    21/111

    N GIAO THNG THNG MINH

    Hnh 2.15 Biu Histogram

    Trang 21

  • 7/29/2019 Den Giao Thong Thong Minh

    22/111

    N GIAO THNG THNG MINH

    ? Nhn xt:Biu Histogram hnh 2.15. Cc thnh phn histogram tp trung hp v b

    phn cc v pha thp ca biu . Do , y l mt tm nh c tng phn thp

    v ti.Trong matlab c h tr hm strectchlim. Hm ny tnh ton histogram ca nh

    v xc nh cc gi tr gii hn ca mc xm mt cch t ng. N tr v mt vectorm ta c th dng lm cp thng s [low_in; high_in] cung cp cho hm imadjust(trong trng hp mc nh, hm imadjust s dng hm stretchlim to ra cp[low_in; high_in] nu ngi s dng khng cung cp). Bnh thng hm stretchlims ly gi tr mc xm nm mc 1% v 99% trong vng bin thin mc xm canh. Tuy nhin, ta cng c th thay i m rng hoc thu hp cc gii hn ny bng

    cch cung cp thm cc thng s tol cho hm stretchlim. l mt vector gm haiphn t thuc [0 1] cho bit ta s chn cc gii hn mc no trong vng bin thinmc xm (mc nh l [0.01 0.99]).

    >> [low, high]=stretchlim(I, tol)

    >> H1=imread('chup_02.png');>> H1=rgb2gray(H1);

    >> figure(3), imshow(H1);>> l=stretchlim(H1,[0 1]);

    >> ansl =

    0.01960.9882

    2.4. Cc phng php pht hin bin nh:

    Ton t sobel:

    BW = edge(I,'sobel')

    >> H1=imread('huanrace.jpg');>> H1=rgb2gray(H1);>> figure(3), imshow(H1);>> BW = edge(H1,' prewitt);>> figure(6), imshow(BW);

    Trang 22

  • 7/29/2019 Den Giao Thong Thong Minh

    23/111

    N GIAO THNG THNG MINH

    Hnh 2.16 nh ban u

    Hnh 2.17 nh sau khi tch bin vi sobel

    Trang 23

  • 7/29/2019 Den Giao Thong Thong Minh

    24/111

    N GIAO THNG THNG MINH

    ng dng vi prewitt:

    Hnh 2.18 nh sau khi tch bin vi prewitt

    Ngoi hai phng php tch bin trn, th trong matlab cn h tr mt s phngphp khc nh:

    Roberts:

    BW = edge(I,'roberts')BW = edge(I,'roberts',thresh)[BW,thresh] = edge(I,'roberts',...)

    Log:

    BW = edge(I,'log')

    Zerocross:

    BW = edge(I,'zerocross',thresh,h)

    Canny

    BW = edge(I,'canny')

    Trang 24

  • 7/29/2019 Den Giao Thong Thong Minh

    25/111

    N GIAO THNG THNG MINH

    2.5. Matlab vi cc php tnh ma trn:

    Nhp ma trn:>>A = [ 1 2 3; 4 5 6 ; 7 8 9]

    ans =1 2 34 5 67 8 9

    Chuyn mt vector hng thnh ct v ngc li:>> A'ans =

    1 4 7

    2 5 83 6 9

    Tm v tr cc phn t trong mt ma trn:

    >> [i,j]=find(A>5)i =

    33

    23

    j =

    1233

    Vi i l hng, tng ng vi ct j trong ma trn c gi tr ln hn 5. Ma trn rng: F=[];

    Xa hng v ct trong ma trn:Thc hin xa hng th hai.>> A(:,2)=[]A =

    1 34 6

    7 9

    Trang 25

  • 7/29/2019 Den Giao Thong Thong Minh

    26/111

    N GIAO THNG THNG MINH

    Quay ma trn:

    B=rot90(A)B =

    3 6 92 5 81 4 7

    Kch thc ma trn:>> size(B)ans =

    3 3Tc ma trn c 3 hng, 3 ct.

    Tm gi tr ln nht trong mi ct ma trn:>> A = [1 2 3 ; 4 5 6; 7 8 9]A =

    1 2 34 5 67 8 9

    >> v=max(A)v =

    7 8 9Tm gi tr nh nht trong mi ct ma trn:

    >> v=min(A)v =

    1 2 3

    S chiu ca ma trn:>> n=rank(A)

    n =2

    Trang 26

  • 7/29/2019 Den Giao Thong Thong Minh

    27/111

    N GIAO THNG THNG MINH

    Mt s hm c v lu nh:

    Hm Mc chAxis V trc

    Image, imshow Hin th nhImread c nh t file nh c snImmovie To phim t nhiu khun hnhImwrite Lu nhImfinfo Ly thng tin nhInd2rgb i nh ch s sang nh RGBImview Hin th nh, c th a du nhc chut

    vo nh ny xem thng tin (mu sc,v tr cc pixels)_

    V d:

    c nh c sn trong my tnh:>> anh=imread('d:\dien_tu\m.png');>> image(anh);

    Hnh 2.19 nh c t my tnh.

    Trang 27

  • 7/29/2019 Den Giao Thong Thong Minh

    28/111

    N GIAO THNG THNG MINH

    2.6. Bt nh:Giao tip my tnh vi webcam:

    Mua mt webcam c km theo a driver. Nu c webcam m khng c driver

    th c th tm thng tin ca hng bn webcam (c ghi trn sn phm), cth vo Phong V nh k thut vin chp phn mm driver vo USB.

    Ci a driver v my tnh (rt d dng).

    Cm u ni webcam vo cng USB.

    M chng trnh chy, lc ny my tnh c th giao tip vi webcam.Matlab giao tip vi Webcam:Trong qu trnh x l nh, mun chp, quay phimx l nh mt cch trc tip twebcam vi phn mm matlab. Th cn phi thc hin nhng bc sau:

    1. Phi c file vfm.dll(File ny c th i xin thy, bn b).2. Sau khi c file vfm.dll th thc hin chp file ny vo a ch:

    C:/Windows/System32.

    3. Lc ny, matlab c th hot ng giao tip vi webcam.V d:

    Thc hin thu nh t webcam:

    >> vid=videoinput(winvideo,1); % khai bo ng vo cho webcam

    >> preview(vid); % trnh din nh ng thu c t webcam>> chup_hinh=getsnapshot(vid); % chp hnh nh ng.>> figure(2), imshow(chuphinh2); % trnh din nh tnh va chp>> imwrite(chuphinh2, 'chup.png', 'png'); % lu li nh va chp trong matlab/work>> delete(vid);>> clear vid; % thc hin xa v ng ng vo.

    2.7. To giao din ngi s dng:

    Giao din ngi s dng (Graphical User Interface - GUI) l giao din bnghnh nh ca chng trnh. Mt GUI tt c th lm cho chng trnh tr nn d sdng bng cch cung cp nhng thng tin ban u cn thit v vi nhng cng ciu khin nh: nt nhn (Pushbutton), hp lit k (list box), thanh trt (slider),trnh n (menu),GUI nn c thit k mt cch d hiu v thn thin ngis dng c th hiu v d on c kt qu ca mt tc ng.

    2.7.1. Cch lm vic ca mt GUI:GUI bao gm cc nt nhn, hp lit k, thanh trt, menu, chng cung cp chongi s dng mt mi trng lm vic thn thin.

    Trang 28

  • 7/29/2019 Den Giao Thong Thong Minh

    29/111

    N GIAO THNG THNG MINH

    Vi GUI th ngi s dng ch cn hiu c cch ng dng ca n, khng cn ichi tit qu su vo chuyn mn, khng cn hiu r cch thc lm vic ca chngtrnh nh th no. Tuy nhin, to mt GUI l mt cng vic rt kh khn i vi

    ngi lp trnh bi v GUI trong matlab th cha c ph bin, nghin cu k, cchng dn cng nh v d ng dng l cha nhiu.

    Cc thnh phn chnh trong mt GUI ca matlab:- Component (cc thnh phn cu thnh): mi i tng trong GUI (nt nhn,nhn, hp son tho,) sau khi kt hp li th to thnh mt GUI hon chnh.- Cc thnh phn phn loi thnh:

    o Cng c iu khin: nt nhn, hp son tho, thanh trt,

    o

    Cc thnh phn tnh: khung hnh, chui k t,o Menu v axes: l cc h trc dng hin th hnh ha.

    o Figure: cc thnh phn ca GUI phi c sp xp vo trong mt

    figure, l mt ca s c hin th trn mn hnh my vi tnh.o Callback: cui cng, khi ngi s dng tc ng vo chng trnh

    bng cch nhn chut, hay g bn phm th chng trnh phi p ngli mi s kin ny.

    Cng c To bi hm Miu tCc cng c iu khinPushbutton Uicontrol L mt nt nhn. N s

    gi hm khi ta nhn von

    Toggle button Uicontrol L nt nhn c hai trngthi l on v off. Khic tc ng n s gi hmtng ng v thay i

    trng thi t on sangoff v ngc li.

    Radio button Uicontrol Cng l mt nt nhn chai trng thi c thhin bi mt vng trnnh, trng thi on tngng vi trng hp c duchm chm gia vng trnv ngc li off. Trongmt nhm Radio button ta

    Trang 29

  • 7/29/2019 Den Giao Thong Thong Minh

    30/111

    N GIAO THNG THNG MINH

    ch c th chn c mtthnh phn. Khi c tcng vo mi thnh phn

    s c mt hm c gi.Check box Uicontrol Cng l mt nt nhn chai trng thi c thhin bi mt hnh vungnh, trng thi on tngng vi trng hp cnh du gia hnh vungv ngc li l trng thioff. Khi c tc ng ns gi hm tng ng vthay i trng thi t onsang off hoc ngc li.

    List box Uicontrol L mt danh sch ccchui. Ngi s dng cth chn mt chui bngcch click hoc doubleclick vo n. Chng

    trnh s gi mt hm khic mt chui c chn.

    Popup menus Uicontrol L cng c cho phpchng ta chn mt chuitrong mt nhm cc chui.Danh sch tt c cc chuis c hin th khi cclick chut. Khi khng c

    click chut cng c chth hin chui hin tic chn.

    Trang 30

  • 7/29/2019 Den Giao Thong Thong Minh

    31/111

    N GIAO THNG THNG MINH

    Slider Uicontrol L cng c cho php iuchnh mt cch lin tc

    gi tr trong mt thanhtrt. Mi khi gi tr cathanh trt thay i s chm c gi.

    Cc thnh phn tnhFrame Uicontrol c s dng to ra

    mt khung hnh ch nht.Frame cn c s dng nhm cc cng c iu

    khin li vi nhau. Framekhng c kh nng gihm.

    Text field Uicontrol c s dng to ramt nhn bao gm cc kt. Text field khng ckh nng gi hm.

    Menu v trc thMenu items Uicontrol c s dng to ra

    menu trn thanh cng c.Chng trnh s gi hmkhi mt i tng trongmenu c chn.

    Axes Axes c s dng to mth trc th. Axes khngc kh nng gi hm.

    Context menus Uicontextmenu c s dng to ra

    menu xut hin khi righclick vo mt hnh tronggiao din.

    Trang 31

  • 7/29/2019 Den Giao Thong Thong Minh

    32/111

    N GIAO THNG THNG MINH

    Hnh 2.20 Mt s thnh phn trong giao di

    2.7.2. To v hin th mt GUI:M mn hnh GUI: VoMatlab 7.0\menu\GUIDE. Chn Create New Gui.V d: To mt giao din nh gi mt lu thng trn ng t tm hnh chotrc_c s pht trin lun vn n giao thng thng minh.

    Hnh 2.21 to giao din iu khinPhn tch:Chng cn c: Nm ntPushbutton, by Text field, haiAxes.Bc 1: VoMenu\Gui phc ha giao din c dng nh hnh v:

    Trang 32

  • 7/29/2019 Den Giao Thong Thong Minh

    33/111

    N GIAO THNG THNG MINH

    Bc 2: Lu li giao din vi tn l: giaodien_doan3. Sau khi lu th ta s c hai file l:giaodien_doan3.figvgiaodien_doan3.m. Vigiaodien-doan3.figl file chygiao din vgiaodien_doan3.m l file code chng trnh.

    Hnh 2.22 Ca s thc hin vit chng trnh cho giao din

    Bc 3: Quay ligiaodien_doan3.fig thay i mt s thuc tnh cho cc nt nhnv textfield.Nhn double click vo nt pushbutton th nht ta s thy ca s thuc tnh hin ra

    Hnh 2.23 Ca s thuc tnh cho nt Pushbutton th nht

    Trang 33

  • 7/29/2019 Den Giao Thong Thong Minh

    34/111

    N GIAO THNG THNG MINH

    Trong ca s thuc tnh ca nt nhn Pushbutton th nht vo: VoStyle g: ANH NEN. Vo FontSize chn kch c ch l 10.0.

    Vo FontWeigh chn kiu ch m l bold.Tng t cho nt nhn Pushbutton th hai,ba,bn,nm ln lt:

    ThayStyle: ANH SO SANH, PHAN TICH ANH, RESET, CANCELi vi textfieldth v bng thuc tnh chn Style sau ghi: Danh Gia Mat DoLuu Thong cho text10, TRUONG DAI HOC TON DUC THANG,KHOA DIEN-DIEN TU.cho cc text cn liSau khi thay i thuc tnh ta c mn hnh giao din sau:

    Hnh 2.24 giao din chnh2.7.3. Lp trnh cho Gui:function pushbutton2_Callback(hObject, eventdata, handles)H1=imread('anh nen1.jpg');imnen=image(H1,'parent',handles.axes7);function pushbutton3_Callback(hObject, eventdata, handles)global H3 H2[filename, pathname, filterindex]=uigetfile( ...

    {'*.jpg','JPEG File (*.jpg)'; ...'*.*','Chon file anh bat ky (*.*)'}, ...

    Trang 34

  • 7/29/2019 Den Giao Thong Thong Minh

    35/111

    N GIAO THNG THNG MINH

    'Chon 1 buc anh');var=strcat(pathname,filename);H2=imread(var);

    H3=image(H2,'parent',handles.axes8);function pushbutton1_Callback(hObject, eventdata, handles)H1=imread('anh nen1.jpg');global H3 H2[filename, pathname, filterindex]=uigetfile( ...

    {'*.jpg','JPEG File (*.jpg)'; ...'*.*','Chon file anh bat ky (*.*)'}, ...'Chon 1 buc anh');

    var=strcat(pathname,filename);H2=imread(var);H2=H2(42:351,120:502,:);figure(3),imshow(H2),title('Anh xe duoc phan vung gioi han');a2=rgb2gray(H2);figure(),imshow(a2);H1=H1(42:351,120:502,:);figure(5),imshow(H1),title('Anh goc duoc phan vung gioi han');a1=rgb2gray(H1);

    figure(),imshow(a1);a3=imabsdiff(a2,a1);a3 = medfilt2(a3);figure(6),imshow(a3);for i=1:310

    for j=1:383if 0

  • 7/29/2019 Den Giao Thong Thong Minh

    36/111

    N GIAO THNG THNG MINH

    figure(13),imshow(H);%_______thuc hien tim gioi han cua hinh can tach_________[m,n]=size(H);

    for i=1:mfor j=1:n

    if H(i,j)==1h1=i;break;

    endend

    endfor i=m:-1:1

    for j=1:nif (H(i,j)==1)

    h2=i;break;

    endend

    endfor j=1:n

    for i=1:mif (H(i,j)==1)

    c1=j;break;

    end;end;

    end;for j=n:-1:1

    for i=1:mif (H(i,j)==1)

    c2=j;break;

    end;end;

    end;H3=H(h2:h1,c2:c1);

    figure(10),imshow(H3);dt_nenduong=m*n

    Trang 36

  • 7/29/2019 Den Giao Thong Thong Minh

    37/111

    N GIAO THNG THNG MINH

    [q,t]=size(H3);p=0;for i=1:q;

    for j=1:t;if H3(i,j)==1

    p=p+1;end

    endenddt_chiemcho=pdt_tyle=(dt_chiemcho/dt_nenduong)*100if 0

  • 7/29/2019 Den Giao Thong Thong Minh

    38/111

    N GIAO THNG THNG MINH

    2.8. Kt qu:Sau khi chy chng trnh ta thu c kt qu sau:

    Hnh 2.25 nh gc v nh c so snh

    Trang 38

  • 7/29/2019 Den Giao Thong Thong Minh

    39/111

    N GIAO THNG THNG MINH

    Hnh 2.26 nh gc v nh c so snh sau khi c phn vng gii hn

    Trang 39

  • 7/29/2019 Den Giao Thong Thong Minh

    40/111

    N GIAO THNG THNG MINH

    Hnh 2.27 nh gc v nh c so snh sau khi c chuyn v nh a cp sm

    Trang 40

  • 7/29/2019 Den Giao Thong Thong Minh

    41/111

    N GIAO THNG THNG MINH

    Hnh 2.28 nh sau khi thc hin php tr tuyt i

    Hnh 2.29 nh tr c x l

    Trang 41

  • 7/29/2019 Den Giao Thong Thong Minh

    42/111

    N GIAO THNG THNG MINH

    Hnh 2.30 nh sau khi tng tng phn v lc trung v

    Hnh 2.31 nh sau khi c trch chn c trng

    Trang 42

  • 7/29/2019 Den Giao Thong Thong Minh

    43/111

    N GIAO THNG THNG MINH

    Hnh 2.32 nh c trng sau khi c ly gii hn

    y chnh l c trng cui cng ca vic x l nh. T hnh nh cui cngny ta c th tnh c din tch mu trng ca xe chim ch,t ta suy ra ct l din tch gia nn ng v t nh gi c mt lu thng trn ng.

    Hnh 2.33 nh giao din sau khi phn tch xong

    Trang 43

  • 7/29/2019 Den Giao Thong Thong Minh

    44/111

    N GIAO THNG THNG MINH

    Mt s ng dng khc trong to giao din:

    Nhn nt gi xung vi x l mt k t A.Bc 1: To mt mn hnh giao din c nt Pushbutton. Sau , lu li giao din

    ny. C th thay i thuc tnh ca nt nhn ty thch.Bc 2: Trongfile.m ta vit chng trnh cho hm con callback gi v nhn k t vi x l.function pushbutton1_Callback(hObject, eventdata, handles)s=serial('COM1','BAUDRATE',9600,'DATABITS',8); % Chn cng COM1, tc baud l 9600, gi k t 8 bitsfopen(s); % M cng COMfprintf(s,'A'); % Truyn xung vi x l ch A

    out = fscanf(s); % Nhn d liu t vi x l a ln.fclose(s);delete(s);clear s; % ng v xa COM

    Hnh 2.34 Giao tip my tnh vi vi x lXc nh trng thi ca nt Toggle Buttons:Bc 1: Phc tho v to giao din c mt nt toggle button, v mt text field.

    Hnh 2.35 Nt Toggle button

    Trang 44

  • 7/29/2019 Den Giao Thong Thong Minh

    45/111

    N GIAO THNG THNG MINH

    Bc 2: Vit chng trnh cho Callback:function togglebutton1_Callback(hObject, eventdata, handles)% hObject handle to togglebutton1 (see GCBO)

    % eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,'Value') returns toggle state of togglebutton1state=get(handles.togglebutton1,'Value');if state == 0

    set(handles.Text2,'String',')else

    set(handles.Text2,'String','')end

    2.9. Xut nhp qua cng ni tip:

    Trong matlab h tr cc lnh truyn thng qua cng COM.V d: Truyn xung Vi x l ch M.s=serial('COM1','BAUDRATE',9600,'DATABITS',8);fopen(s);fprintf(s,'M');out = fscanf(s)fclose(s);delete(s);clear s;

    Trong :s=serial('COM1','BAUDRATE',9600,'DATABITS',8);L thc hin truyn ni tip thng qua cng COM 1, tc baud c chn l 9600,

    truyn 8 bits d liu.Sau khi ci t cc thng s truyn thng trn my tnh th chng ta thc hin lnhfopen(s). Lnh ny cho php m cng COM trn my tnh. My sn sng i tn hiu gi xung Vi x l.Lnh fprintf(s, M): Gi ch M xung Vi x l.Lnh fscanf(s): Nhn tn hiu (d liu) t Vi x l gi ln.fclose(s), deletet(s), clear s: ng cng truyn thng ni tip, xa tn hiu cng nitip khi b nh (Remove a serial port object from memory), xa cc kt qu ( tnh

    ton) v cng truyn thng ra khi ca s lm vic (workspace).

    Trang 45

  • 7/29/2019 Den Giao Thong Thong Minh

    46/111

    N GIAO THNG THNG MINH

    Lu cho truyn thng ni tip vi Matlab:

    Hnh 2.36 Lu truyn thng ni tip trn Matlab

    Trang 46

    t thng s truyn

    thng (cng COM) chomy tnh Gi d liu cho VXL

    Nhn d liu t VXL

    ng, xa cc tn hiuca cng COM

    M cng COM

  • 7/29/2019 Den Giao Thong Thong Minh

    47/111

    N GIAO THNG THNG MINH

    Chng 3GII THIU V VI X L AT89C51

    3.1. Gii thiu v AT89C51:L mt Microcomputer 8 bit, loi CMOS, c tc cao v cng sut thp vi b nhFlash c th l p trnh c. N c sn xut vi cng ngh b nh khng bay himt cao ca hng Atmel, v tng thch vi chun cng nghi p ca 80C51 v80C52 v chn ra v b lnh. Mt s nh sn xut c php cung cp cc IC tngthch vi cc sn phm MCS-51 ca Intel l Siemens, Advanced Micro Devices,Fujitsu, Philips, Atmel

    3.2. S khi:

    Hnh 3.1: S khi ca AT98C51

    Trang 47

  • 7/29/2019 Den Giao Thong Thong Minh

    48/111

    N GIAO THNG THNG MINH

    3.3. c trng ca AT89C51:+ Tng thch vi cc sn phm MCS-51.+ 4KByte b nh Flash c th l p trinh li vi 1000 chu k c/xo.

    + Hot ng tnh y : 0Hz n 24MHz.+ Kha b nh chng trnh ba cp.+ 128 x 8 bit RAM ni .+ 32 ng xut-nh p l p trnh c (tng ng 4 port) .+ Hai timer/counter 16 bit .+ Mt port ni tip song cng l p trinh c .+ Mch ng h v b dao ng trn chip .

    3.4. Cu hnh chn ca AT89C51:

    Hnh 3.2: Cc chn ca AT89C51AT89C51 c tt c 40 chn. Mi chn c chc nng nh cc ng I/O

    (xut/nh p), trong 24 chn c cng dng kp: mi ng c th hot ng nhmt ng I/O hoc nh mt ng iu khin hoc nh thnh phn ca bus a chv bus liu.M t chn:

    + VCC (chn 40): Chn cp ngun.+ GND (chn 20): Chn ni t.+ Port 0: l mt port xut/nh p song hng cc mng h 8 bit. Nu c s

    dng nh l mt ng xut th mi chn c th ko 8 ng vo TTL. Khi mc 1 cvit vo cc chn ca port 0, cc chn ny c th c dng nh l cc ng nh p tngtr cao. Port 0 c th c nh cu hnh hp knh gia bus a ch v bus d liu

    Trang 48

  • 7/29/2019 Den Giao Thong Thong Minh

    49/111

    N GIAO THNG THNG MINH

    (phn byte thp) khi truy c p n b nh d liu v b nh chng trnh ngoi. ch ny, P0 c cc in tr pullup bn trong. Port 0 cng nhn cc byte code (byte mchng trnh) khi l p trnh Flash, v xut ra cc byte code khi kim tra chng trnh.

    Cn c cc in tr pullup bn ngoi khi thc hin vic kim tra chng trnh.+ Port 1: Port 1 l mt port xut/nh p song hng 8 bit c cc in tr pullup

    bn trong. Cc b m ng ra ca port 1 c th ko hoc cung cp 4 ng nh p TTL.Khi mc 1 c vit vo cc chn ca port 1, chng c ko ln cao bi cc intr pullup ni v c th c dng nh l cc ng nh p. Nu ng vai tr l cc ngnh p, cc chn ca port 1 (c ko xung thp qua cc in tr bn ngoi) s cpdng IIL do cc in tr pullup bn trong.

    + Port 2: Port 2 l mt port xut/nh p song hng 8 bit c cc in tr pullupbn trong. Cc b m ng ra ca port 2 c th ko hoc cung cp 4 ng vo TTL.Khi cc mc 1 c vit vo cc chn ca port 2 th chng c ko ln cao bi ccin tr pullup ni v c th c dng nh cc ng vo. Khi c dng nh cc ngvo, cc chn ca port 2 (c ko xung qua cc in tr bn ngoi) s cp dng IILdo c cc in tr pullup bn trong. Port 2 pht ra byte cao ca a ch khi c t bnh chng trnh ngoi v khi truy c p b nh d liu ngoi dng cc a ch 16 bit(MOVX @DPTR). Trong ng dng ny, n dng cc in tr pullup ni "mnh" khi

    pht ra cc mc 1. Khi truy c p b nh d liu ngoi dng cc a ch 8 bit (MOVX@RI), port 2 pht ra cc ni dung ca thanh ghi chc nng c bit P2. Port 2 cng

    nhn cc bit cao ca a ch v mt vi tn hiu iu khin khi l p trnh v kim traFlash.

    + Port 3: Port 3 l mt port xut-nh p song hng 8 bit c in tr pullup nibn trong. Cc b m ng ra ca port 3 c th ko hoc cung cp 4 ng vo TTL.Khi cc mc 1 c vit vo cc chn ca port 3 th chng c ko ln cao bi ccin tr pullup ni v c th c dng nh cc ng vo. Khi c dng nh cc ngvo, cc chn ca port 3 (c ko xung qua cc in tr bn ngoi) s cp dng IILdo c cc in tr pullup bn trong.

    3.5. Cc chc nng chuyn i trn Port 3:+ RST (chn 9): Ng vo reset. Mt mc cao trn chn ny khong hai chu k

    my trong khi b dao ng ang chy s reset thit b.+ ALE/ PROG: ALE l mt xung ng ra cht byte thp ca a ch trong

    khi truy c p b nh ngoi. Chn ny cng l ng nh p xung l p trnh (PROG) khi l ptrnh Flash. Khi hot ng bnh thng, ALE c pht vi mt t l khng i l1/6 tn s b dao ng v c th c dng cho cc mch ch timing v clocking

    bn ngoi. Tuy nhin, lu rng mt xung ALE s b b qua mi khi truy c p b nhd liu ngoi. Nu mun, hot ng ALE c th cm c bng cch set bit 0 ca

    Trang 49

  • 7/29/2019 Den Giao Thong Thong Minh

    50/111

    N GIAO THNG THNG MINH

    SFR ti a ch 8Eh. Nu bit ny c set, ALE ch dc hot ng khi c mt lnhMOVX hoc MOVC. Ngc li, chn ny c ko ln cao bi cc in tr pullup"nh". Vic set bit cm-ALE khng c tc dng khi b vi iu khin ang ch

    thi hnh ngoi.+ PSEN (Program Store Enable): l xung c b nh chng trnh ngoi. Khi

    AT89C51 ang thi hnh PSEN c kch hot hai ln mi chu k my, nhng hai m(code) t b nh chng trnh ngoi, hot ng PSEN s b b qua mi khi truy c p

    b nh d liu ngoi.+ EA/Vpp: EA (External Access Enable) phi c ni vi GND cho php

    thit b c code t b nh chng trnh ngoi c a ch t 0000H n FFFFH. Tuynhin, lu rng nu bit kho 1 (lock-bit 1) c l p trnh, EA s c cht bntrong khi reset. EA phi c ni vi Vcc khi thi hnh chng trnh bn trong. Chnny cng nhn in p cho php l p trnh Vpp=12V khi l p trnh Flash (khi p l ptrnh 12V c chn).

    + XTAL1 v XTAL2: l hai ng vo v ra ca mt b khuch i dao ngnghch c cu hnh dng nh mt b dao ng trn chip.

    Hnh 3.3: Cch gn thch anh vi AT89C51Khng c yu cu no v duty cycle ca tn hiu xung ngoi,v ng nh p ni vimch to xung ni l mt flip-flop chia i, nhng cc ch nh v thi gian high vlow, cc mc p ti a v ti thiu phi c tun theo.

    3.6. T chc b nh:

    Trang 50

  • 7/29/2019 Den Giao Thong Thong Minh

    51/111

    N GIAO THNG THNG MINH

    Vi x l AT89C51 c b nh theo cu trc Harvard: c nhng vng b nhring bit cho chng trnh v d liu. Nh ni trn, c chng trnh v d liuc th bn trong; d vy chng c th c m rng bng cc thnh phn ngoi ln

    n ti a 64 Kbytes b nh chng trnh v 64 Kbytes b nh d liu. B nh bntrong bao gm ROM v RAM trn chip, RAM trn chip bao gm nhiu phn: phnlu tr a dng, phn lu tr a ch ha tng bit, cc bank thanh ghi v cc thanhghi chc nng c bit.

    Cc thanh ghi v cc port xut nh p c xp trong b nh v c th ctruy xut trc tip ging nh cc a ch b nh khc. Ngn xp bn trong RAM ninh hn so vi RAM ngoi nh trong cc b vi x l khc. RAM bn trong c

    phn chia gia cc bank thanh ghi (00H1FH), RAM a ch ha tng bit (20H2FH), RAM a dng (30H7FH) v cc thanh ghi chc nng c bit (80HFFH).

    3.7. Cc thanh ghi chc nng c bit:Mt bn vng b nh trn chip c gi l khng gian thanh ghi chc nng

    c bit (SFR). Khng phi tt c cc a ch u c s dng, v cc a ch khngc s dng c th khng c cung cp trn con chip. Cc hnh ng c n cca ch ny ni chung s tr v cc d liu ngu nhin, v cc hnh ng vit s cmt hiu ng khng xc nh.

    Cc phn mm ngi dng khng nn vit cc mc 1 n nhng v tr khng

    c lit k ny, v chng c th c dng trong cc sn phm tng lai khi thmvo cc c trng mi. Trong trng hp ny, cc gi tr reset hoc khng tch ccca cc bit mi s lun l 0.

    Cc thanh ghi ni c truy xut ngm nh bi b lnh. V d lnh INC As tng ni dung ca thanh ghi tch ly A ln 1. Tc ng ny c ngm nh trongm lnh.

    Cc thanh ghi ny c nh dng nh mt phn ca RAM trn chip. V vymi thanh ghi s c mt a ch (ngoi tr thanh ghi m chng trnh v thanh ghi

    lnh v cc thanh ghi ny him khi b tc ng trc tip, nn khng c li khi tchng vo trong RAM trn chip).

    l l do AT89C51 c nhiu thanh ghi nh vy. Cng nh R0 n R7, c21 thanh ghi chc nng c bit (SFR : Special Function Register) vng trn caRAM ni, t a ch 80H n FFH. Ch rng hu ht 128 a ch t 80H n FFHkhng c nh ngha. Ch c 21 a ch SFR l c nh ngha. Ngoi tr tch ly(A) c th c truy xut ngm nh ni, a s cc SFR c truy xut dng ach trc tip. Ch rng mt vi SFR c th c a ch ha bit hoc byte. Ngi

    thit k phi thn trng khi truy xut bit v byte. V d lnh sau : SETB 0E0H s setbit 0 trong thanh ghi tch ly, cc bit khc khng i. Ta thy rng E0H ng thi l

    Trang 51

  • 7/29/2019 Den Giao Thong Thong Minh

    52/111

    N GIAO THNG THNG MINH

    a ch byte ca c thanh ghi tch ly v l a ch bit ca bit c trng s nh nhttrong thanh ghi tch ly. V lnh SETB ch tc ng trn bit, nn ch c a ch bit lc hiu qu.

    3.8. Hot ng ca port ni tip:Vi x l AT89C51 c mt port ni tip trong chip c th hot ng nhiu

    ch trn mt di tn s rng. Chc nng ch yu ca port ni tip l thc hinchuyn i song song sang ni tip i vi d liu xut, v chuyn i ni tip sangsong song vi d liu nh p.

    Truy xut phn cng n port ni tip qua cc chn TXD v RXD. Cc chnny c cc chc nng khc vi hai bit ca Port 3, P3.1 chn 11 (TXD) v P3.0

    chn 10 (RXD). Port ni tip cho hot ng song cng (full duplex : thu v pht ngthi), v m lc thu (receiver buffering) cho php mt k t s c thu v c gitrong khi k t th hai c nhn. Nu CPU c k t th nht trc khi k t thhai c thu c thu y th d liu s khng b mt. Hai thanh ghi chc nngc bit cho php phn mm truy xut n port ni tip l : SBUF v SCON.B m port ni tip (SBUF) a ch 99H tht s l hai b m. Vit vo SBUF np d liu s c pht, v c SBUF truy xut d liu thu c. y l haithanh ghi ring bit : thanh ghi ch ghi pht v thanh ghi ch c thu.

    3.9. Tm tt tp lnh:Tp lnh ca AT89C51 c ti u ha cho cc ng dng iu khin 8 bit,

    nhiu kiu nh a ch c ng v nhanh dng truy xut RAM ni c dngnhm to thun li cho cc thao tc trn cc cu trc d liu nh. Tp lnh cng htr cc bin 1 bit cho php qun l bit trc tip trong cc h logic v iu khin cyu cu x l bit. Do cc lnh ca MCS-51 c 8 bit nn 89C51 c ti a 256 lnh(thc t c 255 lnh, 1 lnh khng c nh ngha) gm 139 lnh 1 byte, 92 lnh 2

    byte, 24 lnh 3 byte.

    xc nh r ngun v ch ca d liu, ta dng n cc kiu nh a ch sa+ Thanh ghi+ Trc tip+ Gin tip+ Tc thi+ Tng i+ Di+ Ch s

    nh a ch thanh ghi:

    Trang 52

  • 7/29/2019 Den Giao Thong Thong Minh

    53/111

    N GIAO THNG THNG MINH

    Cc lnh s dng kiu nh a ch thanh ghi c m ha bng cch dng 3bit thp nht ca lnh ch ra mt thanh ghi bn trong khng gian a ch logic ny.Ngi lp trnh c th truy xut 8 thanh ghi lm vic c nh s t R0 n R7. C

    4 dy thanh ghi lm vic nhng ti mt thi im ch c mt dy thanh ghi c tchcc. Cc dy thanh ghi chim 32 byte u tin ca RAM d liu trn chip ( a ch t00H n 1FH ) v ta dng cc bit 4 v 3 trong t chng trnh PSW ch ra dythanh ghi tch cc. Khi reset bng phn cng cho php dy 0 tich cc, cn cc dykhc c chn bng cch sa i cc bit 4 v 3 ca PSW sao cho ph hp.nh a ch trc tip:

    Kiu nh a ch trc tip c s dng dng truy xut cc bin nh hoccc thanh ghi trn chip. Mt byte c thm vo tip theo m lnh dng xc nha ch. Ty thuc vo bit c gi tr v tr cao ca a ch trc tip, mt trong haikhng gian nh trn chip c chn. Khi bit 7 bng 0, a ch trc tip trong tm t 0n 127 ( 00H - 7FH ) v 128 byte thp trn chip ca RAM ni c tham chiu. Khi

    bit 7 bng 1, tt c cc port xut/nhp, cc thanh ghi chc nng c bit, iu khin,trng thi c gn a ch trong tm t 128 n 255 ( 80H - FFH ). Ta khng nhtthit phi nh a ch ca cc thanh ghi ny, trnh hp dch cho php ta s dng mgi nh vit tt d hiu nh P0 thay cho port 0, TMOD cho thanh ghi ch nhthi...nh a ch gin tip:

    Kiu nh a ch ny dng xc nh 1 bin khi a ch ca bin c xcnh, v rt thun tin trong trng hp qun l cc v tr nh lin tip, cc im nhpc nh ch s trong cc bng cha trong RAM, cc s chnh xc hoc cc chui kt. Kiu nh a ch ny ch p dng cho 2 thanh ghi R0, R1. Cc thanh ghi ny hotng nh l cc con tr v ni dung ca chng ch ra a ch trong RAM, ni m dliu c c hay c ghi. Bit c ngha thp nht ca lnh xc nh thanh ghi no(R0 hay R1) c s dng lm con tr.nh a ch tc thi:

    Khi ton hng ngun l mt hng s thay v l mt bin, kiu nh a ch nyc s dng. Trong hp ng, cc ton hng tc thi oc nhn bit nh vo du #t trc chng. Ton hng ny c th l mt hng s, mt bin, hoc mt biu thcs hc s dng cc hng s, cc k hiu v cc ton t. Trnh dch hp ng tnh gitr v thay th d liu tc thi vo trong lnh. Tt c cc lnh s dng kiu nh ach tc thi u s dng hng d liu 8 bit lm d liu tc thi. Tuy nhin, khi tadng con tr d liu 16 bit DPTR, hng a ch 16 bit c cn n.nh a ch tng i:

    Kiu nh a ch tng i ch c s dng cho cc lnh nhy. Mt a chtng i (hay cn gi l offset) l mt gi tr 8 bit c du. Gi tr ny c cng vi

    Trang 53

  • 7/29/2019 Den Giao Thong Thong Minh

    54/111

    N GIAO THNG THNG MINH

    b m chng trnh to ra a ch ca lnh tip theo cn thc thi. Do ta s dngmt offset c du, cho nn tm nhy c gii hn t (-128) byte n 127 byte. Bytea ch tng i l byte thm vo tip theo byte m lnh ca lnh.

    nh a ch tuyt i:Kiu nh ch tuyt i ch c s dng vi cc lnh ACALL v AJUMP.

    y l cc lnh 2 byte cho php r nhnh chng trnh trong trang 2K hin hnh cab nh chng trnh bng cch cung cp 11 bit thp ca a ch ch, trong 3 bitcao (A8 - A10) a vo m lnh v 8 bit thp (A7 - A0) thnh lp byte th 2 calnh. 5 bit cao ca a ch ch l 5 bit cao hin hnh trong b m chng trnh, dovy lnh theo sau lnh r nhnh v ch ca lnh r nhnh phi trong cng 1 trang2K, v A11 - A5 khng thay i.nh a ch di:

    Kiu nh a ch di c dng cho cc lnh LCALL v LJUMP. Cc lnh 3byte ny cha a ch ch 16 bit (byte 2 v byte 3) ca lnh. Kiu nh a ch ny cphm s dng rng ht ton b khng gian nh ca chng trnh 64K, nhng li phthuc vo v tr v chim 3 byte.nh a ch ch s:

    Kiu ny s dng mt thanh ghi nn (hoc b m chng trnh hoc con trd liu) v mt offset (thanh cha A) to thnh dng a ch hiu dng cho lnhJUMP hoc MOVC.

    Cc loi lnh :Cc lnh ca 89C51 c chia lm 5 nhm :

    + Nhm lnh s hc+ Nhm lnh logic+ Nhm lnh di chuyn d liu+ Nhm lnh x l bit+ Nhm lnh r nhnh

    Cc lnh s hc:

    Tt c cc lnh s hc c thc hin trong mt chu k my, ngoi tr lnhtng INC DPTR trong 2 chu k my, cc lnh MUL AB v DIV AB trong 4 chu kmy.Cc lnh logic:

    Nhm lnh logic ca 89C51 rhc hin cc php ton logic (AND, OR, XOR,NOR) trn cc byte d liu v thc hin trn tng bit c cng gi tr v tr (trng s).Tt c cc lnh logic s dng thanh cha A lu mt ton hng s c thc thitrong 1 chu k my, ngc li nu s dng thanh ghi khc hoc byte nh khc thay

    cho thanh cha A, lnh phi c thc hin trong 2 chu k my. Cc php ton logic

    Trang 54

  • 7/29/2019 Den Giao Thong Thong Minh

    55/111

    N GIAO THNG THNG MINH

    c th c thc hin trn mt byte bt k trong b nh d liu ni m khng cnqua trung gian thanh cha A.Cc lnh di chuyn d liu:

    Trong RAM ni: cc lnh di chuyn d liu trong khng gian nh ni cthc thi trong 1 hoc 2 chu k my. Trong RAM ngoi: vi cc lnh thc hin vic dichuyn d liu gia RAM ni vi RAM ngoi, ta phi s dng kiu nh a ch gintip. Tt c cc lnh di chuyn d liu hot ng trn b nh ngoi c thc thitrong 2 chu k my v s dng thanh cha lm ton hng ngun hoc ton hng ch.Cc tn hiu dng truy xut RAM ngoi (RD v WR) ch tch cc trong khi lnhMOVX c thc thi. Cc bng tm kim: c 2 lnh di chuyn d liu dnh cho vicc cc bng tm kim trong b nh chng trnh. Do cc lnh ny truy xut b nhchng trnh, cc bng tm kim ch c th c v khng c cp nht. M gi nhca lnh l MOVC (move constant : di chuyn hng). MOVC hoc s dng b mchng trnh hoc con tr d liu lm thanh ghi nn v thanh cha A cha a choffset. Lnh ny c th truy xut mt bng 256 im nhp c nh s t 0 n 255.S ca im nhp yu cu c np cho thanh ghi A v con tr d liu c khing cha a ch u bng.Cc lnh x l bit:

    B x l 89C51 cha 1 b x l logic trn bit cho php ta thc hin cc phpton n bit. Cc lnh truy xut bit gm cc lnh r nhnh, di chuyn, set, xa, ly

    b, OR v AND. Mi thao tc truy xut bit u s dng kiu nh a ch trc tipvi a ch bit t 00H n 7FH trong 128 v tr thp, v t a ch 80H n FFH trongkhng gian SFR. Cc a ch bit 128 v tr thp thuc cc byte c a ch t 20H n2FH c nh s lin tc t bit 0 ca byte a ch 20H ( bit 00H ) n bit 7 ca

    byte a ch 2FH (bit 7FH). Cc bit c th c set v xa bng 1 lnh. iu khinn bit c dng cho cc thit b xut/nhp nh relay, ng c, cun dy, cc LED,mch ci bo ng, loa, hoc nhp t cc chuyn mch hoc cc b ch th trng thi.Cc lnh r nhnh:

    - Trong tp lnh ca 89C51 c nhiu lnh iu khin lung chng trnh, gmcc lnh gi mt th tc v quay v t mt th tc, r nhnh c iu kin hoc khngc iu kin.

    - Cc bng nhy : lnh JMP @A+DPTR h tr cc thao tc nhy ph thuc votrng hp c th cho cc bng nhy. a ch ch c tnh thi im thc thilnh l tng ca ni dung thanh ghi 16 bit DPTR vi ni dung ca thanh cha A.DPTR c np a ch ca bng nhy v thanh cha A ng vai tr ca mt thanhghi ch s.

    - Chng trnh con v ngt : dng cc lnh CALL, ACALL v LCALL, sdng cc lnh tuyt i v di. Cc chng trnh con c kt thc bng lnh RET,

    Trang 55

  • 7/29/2019 Den Giao Thong Thong Minh

    56/111

    N GIAO THNG THNG MINH

    lnh ny tr vic thc thi chng trnh tr v lnh theo sau lnh CALL. Cn lnhRETI tr iu khin v chng trnh gi t 1 trnh phc v ngt ISR. im khc nhaugia RET v RETI l RETI bo hiu cho h thng iu khin ngt rng qu trnh x

    l ngt xong. Nu khng c mt ngt no c duy tr trong thi gian RETI thcthi, RETI thc thi ging nh RET.

    - Nhy c iu kin : 89C51 cung cp cho ta cc lnh nhy c iu kin, sdng kiu nh a ch tng i v cng b gii hn khong cch nhy t -128

    byte n +127 byte k t lnh theo sau lnh nhy c iu kin.

    Chng 4

    Trang 56

  • 7/29/2019 Den Giao Thong Thong Minh

    57/111

    N GIAO THNG THNG MINH

    GII THIU V CHUN RS 232

    4.1. Gii thiu chung v chun RS232 :

    bo m s tng thch gia cc thit b truyn d liu ni tip do cchng khc nhau sn xut, nm 1960 Hip hi Cng nghip in t (EIA) xydng mt chun giao din gi l RS232. 1963, chun ny c ci tin gi lRS232A, RS232B, RS232C gi chung l chun RS232.RS232 lc u c xy dng phc v ch yu trong vic ghp ni im - im giahai thit b u cui DTE (Data Terminal Equipment) ch yu l my tnh v ccthit b u cui gi v nhn d liu. Cn DCE (Data Cornmunication Equipment) lthit b truyn thng d liu, chng hn nh cc modem chu trch nhim v truyn

    d liu. V th chun RS232 tch hp khng nhng Modem, PC m cn ctch hp rt nhiu cc thit b cng nghip c chc nng truyn d liu s.

    c im:Chun RS232 quy nh 9 ng truyn d liu dng c bn v 25 ng

    truyn dng m rng. N quy nh theo phng php truyn d liu theo dng nhphn ni tip gia thit b u cui truyn s liu v thit b truyn s liu. Tuy nhinchng ta ch cn mt s ng l p ng chc nng truyn s liu.

    RS232 c mc in p t -12V +12V. Mc cao [1] tng ng vi mc

    -12V -3V, mc thp [0] tng ng vi mc +3V +12V, khong t -3V n+3V khng xc nh. Do , ni RS232 vi PC u phi qua b bin i in pnh MAX232 chuyn mc logic TTL sang mc in p ca RS232 v ngc li.

    i tng Mc logic Mc in p tng ngCng COM

    (Mc RS232C)1 -12V n -3V0 +3V n +12V

    Vi iu khin(Mc TTL)

    1 +5V0 0V

    Ch lm vic :

    Ch lm vic ca h thng RS232 l hai chiu ton phn, tc l hai thit btham gia cng c tc dng thu v pht tn hiu cng mt lc. Nh vy, vic thc hintruyn thng cn ti thiu 3 dy dn - trong hai dy tn hiu ni cho cc u thu

    pht ca hai trm v mt dy t.

    Trang 57

  • 7/29/2019 Den Giao Thong Thong Minh

    58/111

    N GIAO THNG THNG MINH

    Ngy nay cng vi s ra i ca cc vi mch th h mi lm tng tc truyn nhn ca chun ny nhng m n khng t c tc ti 460kB. L do thtn gin: u tin ta phi xt ti nguyn tc truyn ca RS232 l truyn ni tip,

    th hai vic truyn nhn thng tin theo mt cch no lun phi tun th theonguyn tc "bt tay" ngha l phi c mt bn yu cu sau yu cu phi c chpnhn ri d liu mi c truyn i. Chun RS232 y lun tun th ng theonguyn tc ny. Vic truyn d liu theo RS232 vi 3 dy ch thc hin c trongh thng ch c hai thnh vin m thi. Nu trong mt mng truyn thng c nhiuthnh vin tham gia bt buc truyn theo RS232 phi c y cc dy ni. Nguyntc truyn d liu thng qua RS232 da trn s so snh in p ca dy dn vi ttheo cc mc [0] hoc [1] nh nguyn l trnh by trn. Chnh v l do ny mn khng truyn i xa c (ch hot ng trong khong tm 40m tr li). Khi truyni xa vt qua mc quy nh th lc ny do s tiu tn in nng trn ng dy lmcho vic thu nhn thng tin d ri vo tnh trng khng xc nh. Cn mt khuytim na l cc tn hiu u ly im chun l ng mass chung dn n d bnhiu, dn n khng th truyn xa c. V th cn ch iu ny khi thit k btk h thng truyn tin no.

    4.2. IC Max 232 v cch giao tip :4.2.1. Gii thiu v IC Max 232 :

    Do chun RS232 ra i kh lu, trc khi c h mch vi in t TTL, v vymc in p vo/ra ca n khng tng thch vi TTL. V th i hi cn c mt biu khin ng truyn (b chuyn i in p) chuyn i cc tn hiu RS232v cc mc in p TTL c cc chn TxD v RxD ca 8051 chp nhn. V th ICMAX232 ra i chuyn i t mc in p RS232 v mc TTL v ngc li. Mtim mnh khc ca MAX232 l dng in p +5V nh 8051.

    Trang 58

  • 7/29/2019 Den Giao Thong Thong Minh

    59/111

    N GIAO THNG THNG MINH

    MAX 232 c 2 b iu khin ng truyn l nhn v truyn d liu. Cc b

    iu khin ng truyn dng cho TxD c gi l T1 v T2 v b iu khin ngnhn cho RxD c gi l R1 v R2. Trong nhiu ng dng th ch c 1 cp cdng. V d T1 v R1 c dng vi nhau cho trng hp TxD v RxD ca 8051,cp cn li (T2 v R2) th khng s dng. rng, b iu khin T1 ca MAX232c gn T1in v T1out (trn cc chn s 11 v 14 tng ng), R1 cng c R1 in v R1out(trn cc chn 13 v 12). Chn T1in (chn 11) ca MAX232 c ni vi chn TxDca VXL (chn 11) truyn mc logic TTL t VXL vo MAX232; sau T1outc ni ti chn RxD (chn 2) ca cng COM_l chn nhn d liu PC c tnhiu ny. Ngc li chn R1in (chn 13) l chn c d liu vo ca MAX232 nivo chn TxD (chn 3) ca cng COM_l chn truyn d liu ca PC MAX232nhn tn hiu t PC, sau chn R1out (chn 12) ca MAX232 c ni vi chnRxD ca VXL (chn 10) VXL nhn tn hiu iu khin t PC.

    Chi tit cng COM ca PC

    Trang 59

  • 7/29/2019 Den Giao Thong Thong Minh

    60/111

    N GIAO THNG THNG MINH

    4.2.2. Cch giao tip gia RS 232 v PC :

    V C C

    X T A L 1

    R S T

    C 1 0

    3 3 P

    C 1 1

    1 0 U F

    R 1 7

    1 0 0

    C 2 3

    1 0 U

    U 3

    M A X 2 3 2

    1

    3

    8

    1 1

    1 0

    1

    3

    4

    5

    2

    6

    1 2

    9

    1

    4

    7

    1

    6

    1

    5

    R

    1

    IN

    R 2 I N

    T 1 I N

    T 2 I N

    C +

    C 1 -

    C 2 +

    C 2 -

    V

    +

    V -

    R 1 O U T

    R 2 O U T

    T

    1

    O

    U

    T

    T 2 O U TVC

    C

    G

    N

    D

    Y 1

    1 1 . 0 5 9 2 M H z

    C 9

    3 3 P

    U 1

    A T 8 9 C 5 1

    9

    1 8

    1 9

    2

    0

    2 9

    3 0

    3 1

    4

    0

    1

    2

    3

    4

    5

    6

    7

    8

    2 1

    2 2

    2 3

    2 4

    2 5

    2 6

    2 7

    2 8

    1 0

    1 1

    1 2

    1 3

    1 4

    1 5

    1 6

    1 7

    3 9

    3 8

    3 7

    3 6

    3 5

    3 4

    3 3

    3 2

    R S T

    X T A L 2

    X T A L 1

    G

    N

    D

    P S E N

    A L E / P R O G

    E A / V P P

    V

    C

    C P 1 . 0

    P 1 . 1

    P 1 . 2

    P 1 . 3

    P 1 . 4

    P 1 . 5

    P 1 . 6

    P 1 . 7

    P 2 . 0 / A 8

    P 2 . 1 / A 9

    P 2 . 2 / A 1 0

    P 2 . 3 / A 1 1

    P 2 . 4 / A 1 2

    P 2 . 5 / A 1 3

    P 2 . 6 / A 1 4

    P 2 . 7 / A 1 5

    P 3 . 0 / R X D

    P 3 . 1 / T X D

    P 3 . 2 / I N T 0

    P 3 . 3 / I N T 1

    P 3 . 4 / T 0

    P 3 . 5 / T 1

    P 3 . 6 / W R

    P 3 . 7 / R D

    P 0 . 0 / A D 0

    P 0 . 1 / A D 1

    P 0 . 2 / A D 2

    P 0 . 3 / A D 3

    P 0 . 4 / A D 4

    P 0 . 5 / A D 5

    P 0 . 6 / A D 6

    P 0 . 7 / A D 7

    R S T

    C 2 1

    1 0 U

    V C C

    V C C

    R 1 8

    8 . 2 K

    V B 1 S U B - D 9

    59 48 37 261

    X T A L 2

    1 0 U F

    C 2 2

    1 0 U

    X T A L 2

    X T A L 1

    S W 1

    Hnh 4.1 S u ni MAX 232 vi VXL v giao tip PC thng qua cng COM

    MAX 232 cn c 4 t in c gi tr t 1 n 22uF. Ghi ch: Trong mch trn ta thy ch s dng chn s 2, s 3 v s 5 ca cng

    COM m thi. Tt c cc chn khc u b.

    Trang 60

  • 7/29/2019 Den Giao Thong Thong Minh

    61/111

    N GIAO THNG THNG MINH

    Chng 5THIT K V THI CNG M HNH

    5.1. Thit k m hnh :5.1.1. Yu cu t ra cho m hnh :

    Thit k m hnh ti mt ng t c hai chiu lu thng. n bo v v tr t camera cho ph hp.

    B tr mu sc nn ng ng vi yu cu.

    5.1.2. Thi cng m hnh :

    Hnh 5.1 khung m hnh v nn ng

    Trang 61

  • 7/29/2019 Den Giao Thong Thong Minh

    62/111

    N GIAO THNG THNG MINH

    Hnh 5.2 khung m hnh khi gn camera

    Hnh 5.3 m hnh khi gn camera v n

    Trang 62

  • 7/29/2019 Den Giao Thong Thong Minh

    63/111

    N GIAO THNG THNG MINH

    Hnh 5.4 cn cnh m hnh khi gn n

    Trang 63

  • 7/29/2019 Den Giao Thong Thong Minh

    64/111

    N GIAO THNG THNG MINH

    Hnh 5.5 m hnh khi c xe

    Trang 64

  • 7/29/2019 Den Giao Thong Thong Minh

    65/111

    N GIAO THNG THNG MINH

    Hnh 5.6 nhng hnh nh v m hnh hon chnh

    Trang 65

  • 7/29/2019 Den Giao Thong Thong Minh

    66/111

    N GIAO THNG THNG MINH

    5.1.3. Thi cng mch iu khin :S mch iu khin :

    D A T A 2

    S L E

    S

    L

    E

    _

    L

    E

    D

    _

    V

    A

    N

    G

    R 1 5 3 3 0

    R 1 7 3 3 0

    U 2

    L E D 7 D O A N

    7 51

    0

    91246

    3 8

    A D

    P

    GFEDCB

    C

    A

    C

    A

    C 5C

    S L E _ L E D _ X A N H _ 1

    S L E

    + C 1 11 0 u F

    S

    L

    E

    _

    L

    E

    D

    2

    V C C

    V C C

    S L E _ L E D _ V A N G

    Q 1

    P N P B C E

    +

    C 9

    1 0 u F

    S L E

    S

    L

    E

    _

    L

    E

    D

    4

    R 1 6 3 3 0

    R 6R

    D 4

    L E D

    C 13 3 p

    D 5

    L E D

    -

    +

    D 7

    B R I D G E

    1

    3

    2

    4

    V C C

    Q 4

    P N P B C E

    R S T

    S

    L

    E

    _

    L

    E

    D

    _

    X

    A

    N

    H

    _

    1

    R X D

    J 1

    C O

    123

    Q 2

    P N P B C E

    D 3

    L E D

    U 7

    M A X 2 3 2

    1

    3

    4

    526

    1 2

    9

    1 1

    1 0

    1 3

    8

    1 4

    7

    C 1 +

    C 1 -

    C 2 +

    C 2 -V +V -

    R 1 O U T

    R 2 O U T

    T 1 I N

    T 2 I N

    R 1 I N

    R 2 I N

    T 1 O U T

    T 2 O U T

    Q 3

    P N P B C E

    R 1 2 3 3 0

    C 2

    3 3 p

    C 4C A P N P

    V

    C

    C

    S

    L

    E

    _

    L

    E

    D

    1

    V C C

    R 1 3 3 3 0

    S W 1

    R E S E T

    1

    4

    2

    3

    R 3R

    R 1 0R

    D 6

    L E D

    D 2

    L E D

    +

    C 8

    1 0 u F

    D A T A 1

    S L E _ L E D _ X A N H

    Y 1

    Z T A

    U 3

    L E D 7 D O A N

    7 51

    0

    91246

    3 8

    A D

    P

    GFEDCB

    C

    A

    C

    A

    T X D

    R S T D A T A 4

    S

    L

    E

    _

    L

    E

    D

    _

    D

    O

    _

    1

    D A T A 7

    C 31 0 u

    V C C

    S L E

    U 6

    L M 7 8 0 5 / T O1

    2

    3V I N

    G

    N

    D

    V O U T

    R 4R

    S

    L

    E

    _

    L

    E

    D

    _

    X

    A

    N

    H

    S

    L

    E

    _

    L

    E

    D

    3

    U 5

    A T 8 9 C 5 1

    9

    1 8

    1 9

    2 93 0

    3

    1

    12345678

    2 12 22 32 4

    2 52 62 72 8

    1 01 11 21 31 41 51 61 7

    3 93 83 73 6

    3 53 43 33 2

    R S T

    X T A L 2

    X T A L 1

    P S E NA L E / P R O G

    E

    A

    /V

    P

    P

    P 1 . 0P 1 . 1P 1 . 2P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7

    P 2 . 0 / A 8P 2 . 1 / A 9

    P 2 . 2 / A 1 0

    P 2 . 3 / A 1 1P 2 . 4 / A 1 2P 2 . 5 / A 1 3P 2 . 6 / A 1 4P 2 . 7 / A 1 5

    P 3 . 0 / R X DP 3 . 1 / T X D

    P 3 . 2 / I N T 0P 3 . 3 / I N T 1

    P 3 . 4 / T 0P 3 . 5 / T 1

    P 3 . 6 / W RP 3 . 7 / R D

    P 0 . 0 / A D 0P 0 . 1 / A D 1P 0 . 2 / A D 2

    P 0 . 3 / A D 3P 0 . 4 / A D 4P 0 . 5 / A D 5P 0 . 6 / A D 6P 0 . 7 / A D 7

    R 1 1 3 3 0

    V C C

    R 2R

    R 1 91 0 K

    R 9R

    U 1

    L E D 7 D O A N

    7 51

    0

    91246

    3 8

    A D

    P

    GFEDCB

    C

    A

    C

    A

    S

    L

    E

    _

    L

    E

    D

    _

    V

    A

    N

    G

    _

    1

    R 7R

    D 1

    L E D

    D A T A 3

    C 6C

    S L E _ L E D _ D O _ 1

    S L E _ L E D _ D O

    T X D

    S

    L

    E

    _

    L

    E

    D

    _

    D

    O

    J 2

    C O N 9

    12345

    6789

    R 1R

    U 4

    L E D 7 D O A N

    7 51

    0

    91246

    3 8

    A D

    P

    GFEDCB

    C

    A

    C

    A

    D A T A 5

    S L E _ L E D _ V A N G _ 1

    R X D

    V C C

    R 5R

    + C 1 01 0 u F

    C 7C

    D A T A 6

    R 8R

    R 1 4 3 3 0

    P 1

    r s 2 3 2

    594837

    261

    Trang 66

  • 7/29/2019 Den Giao Thong Thong Minh

    67/111

    N GIAO THNG THNG MINH

    Hnh 5.7 mch iu khin

    Trang 67

  • 7/29/2019 Den Giao Thong Thong Minh

    68/111

    N GIAO THNG THNG MINH

    5.2. Xy dng chng trnh iu khin trn my tnh v vi x l :5.2.1. Lu gii thut :Trn my tnh :

    Begin

    Chupmt luthngtuynA

    Chupmt luthngtuynB

    Anhnn Anhsosanh

    Tachanhnnrakhoi khungcanhngoai

    Tachanhsosanhrakhoikhungcanh

    ngoai

    avanhacpxam

    avanhacpxam

    Thc hintrtuyt i 2im

    anh

    Thc hinxly- Nu0

  • 7/29/2019 Den Giao Thong Thong Minh

    69/111

    N GIAO THNG THNG MINH

    Tng mc tng phanvaloc trung vi

    a vanhtrng en

    Tach trich chon ctrng

    Tinh din tich bichimch

    Ly tyldin tich chimchtrn din tichnn:

    Nu 0

  • 7/29/2019 Den Giao Thong Thong Minh

    70/111

    N GIAO THNG THNG MINH

    Trn vi x l :

    Start

    Thi gian eo giaothng c chay

    mc inh

    Lp i lp laithi gian mc

    inh

    Tin hiu matlab g i xung

    Ki t A Ki t B Ki t C

    Cai t thi g iancho en xanh ong vi ki t A

    Cai t thi g iancho en xanh ong vi ki t B

    Cai t thi giancho en xanh ong vi ki t C

    Sau khi chay xong thi gian cai t ng v i mi kit,nu khng co tin hiu truyn xung thi se lp lai

    thi gian mc inh

    RESET hthng

    5.2.2. Chng trnh cho vi x l :

    Trang 70

    END

  • 7/29/2019 Den Giao Thong Thong Minh

    71/111

    N GIAO THNG THNG MINH

    $MOD51

    XANH1 BIT P1.0DO1 BIT P1.1VANG1 BIT P1.2

    XANH2 BIT P1.5DO2 BIT P1.6VANG2 BIT P1.7BIEN_XANH EQU 30H

    BIEN_DO EQU 31HS_KTRA BIT 20H

    ;PORT 2 CHON LED;PORT 0 DATA

    ;60H HANG CHUC 1;61H HANG DON VI 1;62H HANG CHUC 2

    ;63H HANG DON VI 2

    ORG 00HJMP BEGIN

    ORG 0023HJMP ISR

    ORG 0030H

    BEGIN:

    MOV P2,#255MOV P0,#255MOV P1,#255MOV P3,#255;------------------------THIET LAP SERIAL---MOV TMOD,#21HMOV SCON,#01010010B ;BIT REN =1 CHO PHEP THU CAC KY TU 52h

    MOV TH1,#-3 ;TOC DO 9600 BAUD

    Trang 71

  • 7/29/2019 Den Giao Thong Thong Minh

    72/111

    N GIAO THNG THNG MINH

    SETB ESSETB TR1SETB TISETB EA

    ;------------------------------------------------------MOV BIEN_XANH,#30HMOV BIEN_DO,#34H

    MAIN:MOV P1,#0FFHLCALL DO_XANH

    LCALL XANH_DOLJMP MAIN

    ;_______________________________________TEST_TR:

    JNB TI,$CLR TIMOV SBUF,A

    RETISR:TRUYEN:

    ;JNB TI,NHAN;CLR TI

    NHAN:JNB RI , EXIT_SERIALCLR RI

    MOV A,SBUFCALL TEST_TR;RETI;===================================

    CJNE A,#'A',NEXT1

    CALL TEST_TRSETB S_KTRACLR A

    MOV BIEN_XANH,#40HMOV BIEN_DO,#44H

    Trang 72

  • 7/29/2019 Den Giao Thong Thong Minh

    73/111

    N GIAO THNG THNG MINH

    JMP EXIT_SERIAL;--------------------------------------

    NEXT1:CJNE A,#'B',NEXT2

    CALL TEST_TRSETB S_KTRACLR AMOV BIEN_XANH,#32HMOV BIEN_DO,#32HJMP EXIT_SERIAL

    ;----------------------------------------NEXT2:CJNE A,#'C',NEXT5CLR AMOV BIEN_XANH,#34HMOV BIEN_DO,#30HJMP EXIT_SERIAL;---------------------------------------

    NEXT3:

    CJNE A,#'D',NEXT4

    CALL TEST_TRSETB S_KTRACLR AMOV BIEN_XANH,#36HMOV BIEN_DO,#28HJMP EXIT_SERIAL

    NEXT4:CJNE A,#'E',NEXT5

    CALL TEST_TRSETB S_KTRACLR AMOV BIEN_XANH,#38HMOV BIEN_DO,#26HJMP EXIT_SERIAL

    NEXT5:

    Trang 73

  • 7/29/2019 Den Giao Thong Thong Minh

    74/111

    N GIAO THNG THNG MINH

    CJNE A,#'F',NEXT6CALL TEST_TRSETB S_KTRACLR AMOV BIEN_XANH,#28HMOV BIEN_DO,#36HJMP EXIT_SERIAL

    NEXT6:CJNE A,#'G',NEXT7

    CALL TEST_TRSETB S_KTRA

    CLR AMOV BIEN_XANH,#26HMOV BIEN_DO,#38HJMP EXIT_SERIAL

    NEXT7:CJNE A,#'H',NEXT8

    CALL TEST_TRSETB S_KTRA

    CLR AMOV BIEN_XANH,#24HMOV BIEN_DO,#40HJMP EXIT_SERIAL

    NEXT8:CJNE A,#'S',NEXT9

    CALL TEST_TRSETB S_KTRA

    CLR AMOV BIEN_XANH,#22HMOV BIEN_DO,#42HJMP EXIT_SERIAL

    NEXT9:CJNE A,#'U',NEXT10

    CALL TEST_TRSETB S_KTRA

    CLR AMOV BIEN_XANH,#20H

    Trang 74

  • 7/29/2019 Den Giao Thong Thong Minh

    75/111

    N GIAO THNG THNG MINH

    MOV BIEN_DO,#44HJMP EXIT_SERIAL

    NEXT10:

    CALL TEST_TRSETB S_KTRACLR AMOV BIEN_XANH,#18HMOV BIEN_DO,#46HJMP EXIT_SERIAL

    ; MOV 08H,A

    EXIT_SERIAL:RETI;---------------------------------------DO_XANH:

    MOV R3,BIEN_DOMOV R4,BIEN_XANH;MOV P1,#00HMOV DPTR,#DULIEUCLR DO1

    CLR XANH2LOOP:MOV A,R3ADD A,#99HDA AMOV R3,AANL A,#0FHMOV 61H,AMOV A,R3

    ANL A,#0F0HSWAP AMOV 60H,A

    MOV A,R4ADD A,#99HDA AMOV R4,AANL A,#0FH

    MOV 63H,AMOV A,R4

    Trang 75

  • 7/29/2019 Den Giao Thong Thong Minh

    76/111

    N GIAO THNG THNG MINH

    ANL A,#0F0HSWAP AMOV 62H,A

    CJNE R4,#99H,LOOP2SETB XANH2CLR VANG2MOV R4,#03HMOV 63H,#03HMOV 62H,#00H

    LOOP2:LCALL QUETLED

    JNB S_KTRA,CONTI1CLR S_KTRAJMP DO_XANH

    CONTI1:CJNE R3,#00H,LOOPRET

    ;___________________________________________XANH_DO:

    MOV P1,#0FFH

    MOV R4,BIEN_DOMOV R3,BIEN_XANH;MOV P1,#00HMOV DPTR,#DULIEUCLR DO2CLR XANH1

    LOOP3:

    MOV A,R3

    ADD A,#99HDA AMOV R3,AANL A,#0FHMOV 61H,AMOV A,R3ANL A,#0F0HSWAP AMOV 60H,A

    MOV A,R4

    Trang 76

  • 7/29/2019 Den Giao Thong Thong Minh

    77/111

    N GIAO THNG THNG MINH

    ADD A,#99HDA AMOV R4,AANL A,#0FHMOV 63H,AMOV A,R4ANL A,#0F0HSWAP AMOV 62H,A

    CJNE R3,#99H,LOOP4SETB XANH1

    CLR VANG1MOV R3,#03HMOV 61H,#03HMOV 60H,#00H

    LOOP4:LCALL QUETLEDJNB S_KTRA,CONTI2CLR S_KTRAJMP XANH_DO

    CONTI2:CJNE R4,#00H,LOOP3RET

    HIENTHI:PUSH 00HPUSH ACC

    MOV R6,#0F7H ;BIEN CHON LED TICH CUCMOV R0,#063H ;DIA CHI DE LAY DU LIEU HIEN THIDISP:

    MOV A,@R0MOVCA,@A+DPTRMOV P0,AMOV P2,R6LCALL DELAYMOV P2,#0FFH

    DEC R0MOV A,R6

    Trang 77

  • 7/29/2019 Den Giao Thong Thong Minh

    78/111

    N GIAO THNG THNG MINH

    RR AMOV R6,ACJNE R0,#05FH,DISP ;DIEU KIEN QUET DU 4 LEDPOP ACCPOP 00HRET

    ;_______________________________________________DELAY:

    PUSH 00HPUSH 01HMOV R0,#10

    DEL:

    MOV R1,#25DJNZ R1,$DJNZ R0,DELPOP 01HPOP 00HRET

    ;_______________________________________________QUETLED:

    PUSH 00H

    MOV R0,#100LOOP1:

    MOV TH0,#HIGH(-10000)MOV TL0,#LOW(-10000)SETB TR0

    SCAN:LCALL HIENTHI

    JNB TF0,SCANCLR TR0CLR TF0DJNZ R0,LOOP1POP 00HRET

    ;======================================DELAY_MS123:

    MOV R2,#5

    DELAY_2:MOV R0,#200

    Trang 78

  • 7/29/2019 Den Giao Thong Thong Minh

    79/111

    N GIAO THNG THNG MINH

    DELAY_1:MOV R1,#250DJNZ R1,$DJNZ R0,DELAY_1DJNZ R2,DELAY_2

    RET

    DULIEU:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

    END

    5.2.3. Chng trnh trn my tnh :

    Chng trnh cho giao din chnh :

    function varargout = LuanVan_DenGiaoThongThongMinh(varargin)% LUANVAN_DENGIAOTHONGTHONGMINH M-file forLuanVan_DenGiaoThongThongMinh.fig% LUANVAN_DENGIAOTHONGTHONGMINH, by itself, creates a newLUANVAN_DENGIAOTHONGTHONGMINH or raises the existing% singleton*.

    %% H = LUANVAN_DENGIAOTHONGTHONGMINH returns the handle to anew LUANVAN_DENGIAOTHONGTHONGMINH or the handle to% the existing singleton*.%%LUANVAN_DENGIAOTHONGTHONGMINH('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in

    LUANVAN_DENGIAOTHONGTHONGMINH.M with the given input arguments.%% LUANVAN_DENGIAOTHONGTHONGMINH('Property','Value',...) creates anew LUANVAN_DENGIAOTHONGTHONGMINH or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI beforeLuanVan_DenGiaoThongThongMinh_OpeningFunction gets called. An% unrecognized property name or invalid value makes property application

    % stop. All inputs are passed toLuanVan_DenGiaoThongThongMinh_OpeningFcn via varargin.

    Trang 79

  • 7/29/2019 Den Giao Thong Thong Minh

    80/111

    N GIAO THNG THNG MINH

    %% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".

    %% See also: GUIDE, GUIDATA, GUIHANDLES

    % Copyright 2002-2003 The MathWorks, Inc.

    % Edit the above text to modify the response to helpLuanVan_DenGiaoThongThongMinh

    % Last Modified by GUIDE v2.5 27-May-2009 12:33:22

    % Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...

    'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn',

    @LuanVan_DenGiaoThongThongMinh_OpeningFcn, ...'gui_OutputFcn', @LuanVan_DenGiaoThongThongMinh_OutputFcn, ...

    'gui_LayoutFcn', [] , ...'gui_Callback', []);

    if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});

    end

    if nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

    elsegui_mainfcn(gui_State, varargin{:});

    end% End initialization code - DO NOT EDIT

    % --- Executes just before LuanVan_DenGiaoThongThongMinh is made visible.function LuanVan_DenGiaoThongThongMinh_OpeningFcn(hObject, eventdata,handles, varargin)

    % This function has no output args, see OutputFcn.% hObject handle to figure

    Trang 80

  • 7/29/2019 Den Giao Thong Thong Minh

    81/111

    N GIAO THNG THNG MINH

    % eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to LuanVan_DenGiaoThongThongMinh (see

    VARARGIN)

    % Choose default command line output for LuanVan_DenGiaoThongThongMinhhandles.output = hObject;

    % Update handles structureguidata(hObject, handles);

    % UIWAIT makes LuanVan_DenGiaoThongThongMinh wait for user response (seeUIRESUME)% uiwait(handles.figure1);

    % --- Outputs from this function are returned to the command line.function varargout = LuanVan_DenGiaoThongThongMinh_OutputFcn(hObject,eventdata, handles)% varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure

    % eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)

    % Get default command line output from handles structure

    varargout{1} = handles.output;

    % --- Executes on button press in pushbutton6.

    function pushbutton6_Callback(hObject, eventdata, handles)% hObject handle to pushbutton6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)

    H1a=imread('chupnenA.png');axes(handles.axes7),imshow(H1a);

    H2a=imread('chupsosanhA.png');axes(handles.axes8),imshow(H2a);

    Trang 81

  • 7/29/2019 Den Giao Thong Thong Minh

    82/111

    N GIAO THNG THNG MINH

    H1b=imread('D:\ProgramFiles\MatLab\work\chupnenB.png');axes(handles.axes12),imshow(H1b);H2b=imread('D:\ProgramFiles\MatLab\work\chupsosanhB.png');

    axes(handles.axes13),imshow(H2b);

    %s=serial('com1','baudrate',9600,'databits',8);%la thuc hien tryen noi tiep thong wacong COM1,toc do baud dc chon la 9600, truyen 8 bit du lieu%fopen(s);% cho phep mo cong COM tren may tinh.May san sang doi tin hieu de guixuong vi xu ly%fprintf(s,'S');%gui chu S xuong vi xu ly%out=fscanf(s);%nhan tin hieu (du lieu) tu vi xu ly gui len%fclose(s);%dong cong truyen thong noi tiep%delete(s);%xoa tin hieu cong noi iep khoi bo nho%clear s;%xoa cac ket qua ve cong truyen thong ra khoi cua so lam viec

    % --- Executes on button press in pushbutton7.

    function pushbutton7_Callback(hObject, eventdata, handles)% hObject handle to pushbutton7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB

    % handles structure with handles and user data (see GUIDATA)

    %s=serial('com1','baudrate',9600,'databits',8);%la thuc hien tryen noi tiep thong wacong COM1,toc do baud dc chon la 9600, truyen 8 bit du lieu%fopen(s);% cho phep mo cong COM tren may tinh.May san sang doi tin hieu de guixuong vi xu ly%fprintf(s,'R');%gui chu S xuong vi xu ly%out=fscanf(s);%nhan tin hieu (du lieu) tu vi xu ly gui len

    %fclose(s);%dong cong truyen thong noi tiep%delete(s);%xoa tin hieu cong noi iep khoi bo nho%clear s;%xoa cac ket qua ve cong truyen thong ra khoi cua so lam viec

    h=imread('hinhnen.png');axes(handles.axes11),imshow(h);set(handles.text15,'string','');axes(handles.axes7),imshow(h);

    axes(handles.axes8),imshow(h);axes(handles.axes12),imshow(h);

    Trang 82

  • 7/29/2019 Den Giao Thong Thong Minh

    83/111

    N GIAO THNG THNG MINH

    axes(handles.axes13),imshow(h);set(handles.text10,'string','Danh gia Mat Do Luu Thong');

    delete('chupsosanhA.png');clear chupsosanhA.png;

    set(handles.text11,'string','Danh Gia Mat Do Luu Thong');

    delete('chupsosanhB.png');clear chupsosanhB.png;

    set(handles.text16,'string','Danh Gia Ket Qua Phan Tich');

    % --- Executes on button press in pushbutton17.

    function pushbutton17_Callback(hObject, eventdata, handles)% hObject handle to pushbutton17 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB

    % handles structure with handles and user data (see GUIDATA)close;% --- Executes on button press in radiobutton1.function radiobutton1_Callback(hObject, eventdata, handles)% hObject handle to radiobutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)

    state=get(handles.radiobutton1,'value');if state==0

    h=imread('hinhnen.png');axes(handles.axes11),imshow(h);set(handles.text15,'string','');axes(handles.axes7),imshow(h);axes(handles.axes8),imshow(h);axes(handles.axes12),imshow(h);

    axes(handles.axes13),imshow(h);else

    Trang 83

  • 7/29/2019 Den Giao Thong Thong Minh

    84/111

    N GIAO THNG THNG MINH

    h=imread('huan.jpg');axes(handles.axes11),imshow(h);set(handles.text15,'string','XIN KINH CHAO QUY KHACH');

    i=imread('hinhnen.png');axes(handles.axes7),imshow(i);axes(handles.axes8),imshow(i);axes(handles.axes12),imshow(i);axes(handles.axes13),imshow(i);

    end

    % Hint: get(hObject,'Value') returns toggle state of radiobutton1

    % --- Executes on button press in pushbutton30.function pushbutton30_Callback(hObject, eventdata, handles)% hObject handle to pushbutton30 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)H1a=imread('chupnenA.png');

    H2a=imread('chupsosanhA.png');

    %H2=imread('chup_02.png');%figure(1),imshow(H1),title('Hinh khong gian mau');%figure(2),imshow(H2),title('Hinh can so sanh');%_______________kiem tra ca thong so tam hinh__________%imview(H2);%______phan vung xe ra khoi khung canh ngoai_________H2a=H2a(42:351,120:502,:);

    figure(3),imshow(H2a);a2=rgb2gray(H2a);figure(),imshow(a2);%imview(a2);%_____phan vung tuong tu cho anh goc_________________H1a=H1a(42:351,120:502,:);figure(5),imshow(H1a),title('Anh goc duoc phan vung gioi han');a1=rgb2gray(H1a);

    figure(),imshow(a1);%imview(a1);

    Trang 84

  • 7/29/2019 Den Giao Thong Thong Minh

    85/111

    N GIAO THNG THNG MINH

    %______kiem tra khung hinh duoc gioi han?_____________%size(H2)a3=imabsdiff(a2,a1);

    %a3=bwareaopen(a3,150);%chu y them vaoa3 = medfilt2(a3);%a3=bwareaopen(a3,5);figure(6),imshow(a3);%imview(a3);%____________________________________________________________for i=1:310

    for j=1:383if 0

  • 7/29/2019 Den Giao Thong Thong Minh

    86/111

    N GIAO THNG THNG MINH

    endend

    end

    for i=m:-1:1for j=1:n

    if (Ha(i,j)==1)h2=i;break;

    endend

    endfor j=1:n

    for i=1:mif (Ha(i,j)==1)

    c1=j;break;

    end;end;

    end;for j=n:-1:1

    for i=1:mif (Ha(i,j)==1)

    c2=j;break;

    end;end;

    end;H3a=Ha(h2:h1,c2:c1);

    %figure(10),imshow(H3);%H3 = bwareaopen(H3,100);figure(10),imshow(H3a);

    %imview(H3);dt_nenduong_a=m*n[q,t]=size(H3a);

    p=0;

    for i=1:q;for j=1:t;

    Trang 86

  • 7/29/2019 Den Giao Thong Thong Minh

    87/111

    N GIAO THNG THNG MINH

    if H3a(i,j)==1p=p+1;

    end

    endenddt_chiemcho_a=p%[p,q]=size(H3);%dt_chiemcho=p*qdt_tyle_a=(dt_chiemcho_a/dt_nenduong_a)*100if 0

  • 7/29/2019 Den Giao Thong Thong Minh

    88/111

    N GIAO THNG THNG MINH

    %H2=imread('chup_02.png');%figure(1),imshow(H1),title('Hinh khong gian mau');%figure(2),imshow(H2),title('Hinh can so sanh');

    %_______________kiem tra ca thong so tam hinh__________%imview(H2);%______phan vung xe ra khoi khung canh ngoai_________H2b=H2b(42:351,120:502,:);figure(3),imshow(H2b);a2=rgb2gray(H2b);figure(),imshow(a2);%imview(a2);%_____phan vung tuong tu cho anh goc_________________H1b=H1b(42:351,120:502,:);figure(5),imshow(H1b),title('Anh goc duoc phan vung gioi han');a1=rgb2gray(H1b);figure(),imshow(a1);%imview(a1);%______kiem tra khung hinh duoc gioi han?_____________%size(H2)a3=imabsdiff(a2,a1);

    %a3=bwareaopen(a3,150);%chu y them vaoa3 = medfilt2(a3);%a3=bwareaopen(a3,5);figure(6),imshow(a3);%imview(a3);%____________________________________________________________for i=1:310

    for j=1:383

    if 0

  • 7/29/2019 Den Giao Thong Thong Minh

    89/111

    N GIAO THNG THNG MINH

    b3 = medfilt2(b3);figure(8),imshow(b3);Hb= bwareaopen(b3,500);

    figure(13),imshow(Hb);%se = strel('disk',0);%c3 = imopen(b3,se);%threshold = graythresh(c3);%H = im2bw(c3,threshold);%H = bwareaopen(H,50);%figure(9),imshow(H);%_______thuc hien tim gioi han cua hinh can tach_________[m,n]=size(Hb);for i=1:m

    for j=1:nif Hb(i,j)==1

    h1=i;break;

    endend

    end

    for i=m:-1:1for j=1:n

    if (Hb(i,j)==1)h2=i;break;

    endend

    end

    for j=1:nfor i=1:m

    if (Hb(i,j)==1)c1=j;break;

    end;end;

    end;

    for j=n:-1:1for i=1:m

    Trang 89

  • 7/29/2019 Den Giao Thong Thong Minh

    90/111

    N GIAO THNG THNG MINH

    if (Hb(i,j)==1)c2=j;break;

    end;end;

    end;H3b=Hb(h2:h1,c2:c1);%figure(10),imshow(H3);%H3 = bwareaopen(H3,100);figure(10),imshow(H3b);

    %imview(H3);dt_nenduong_b=m*n[q,t]=size(H3b);

    p=0;for i=1:q;

    for j=1:t;if H3b(i,j)==1

    p=p+1;end

    endenddt_chiemcho_b=p%[p,q]=size(H3);%dt_chiemcho=p*qdt_tyle_b=(dt_chiemcho_b/dt_nenduong_b)*100if 0

  • 7/29/2019 Den Giao Thong Thong Minh

    91/111

    N GIAO THNG THNG MINH

    endend

    end

    if dt_tyle_a > dt_tyle_b & 0 dt_tyle_b & 10 dt_tyle_b & 20

  • 7/29/2019 Den Giao Thong Thong Minh

    92/111

    N GIAO THNG THNG MINH

    if dt_tyle_a > dt_tyle_b & 30 dt_tyle_b & 40 dt_tyle_b & 50 dt_tyle_b & 60

  • 7/29/2019 Den Giao Thong Thong Minh

    93/111

    N GIAO THNG THNG MINH

    set(handles.text16,'string','Mat Do Tuyen A day Hon Mat Do TuyenB : 70%');

    s=serial('com1','baudrate',9600,'databits',8);

    fopen(s);fprintf(s,'K');out=fscanf(s);fclose(s);delete(s);clear s;

    elseif dt_tyle_a > dt_tyle_b & 70 dt_tyle_b & 80 dt_tyle_b & 90

  • 7/29/2019 Den Giao Thong Thong Minh

    94/111

    N GIAO THNG THNG MINH

    s=serial('com1','baudrate',9600,'databits',8);fopen(s);fprintf(s,'N');

    out=fscanf(s);fclose(s);delete(s);clear s;

    endend

    endend

    endend

    endend

    endend

    if dt_tyle_b > dt_tyle_a & 0 dt_tyle_a & 10

  • 7/29/2019 Den Giao Thong Thong Minh

    95/111

    N GIAO THNG THNG MINH

    delete(s);clear s;

    elseif dt_tyle_b > dt_tyle_a & 20 dt_tyle_a & 30 dt_tyle_a & 40

  • 7/29/2019 Den Giao Thong Thong Minh

    96/111

    N GIAO THNG THNG MINH

    elseif dt_tyle_b > dt_tyle_a & 50 dt_tyle_a & 60 dt_tyle_a & 70

  • 7/29/2019 Den Giao Thong Thong Minh

    97/111

    N GIAO THNG THNG MINH

    if dt_tyle_b > dt_tyle_a & 80 dt_tyle_a & 90

  • 7/29/2019 Den Giao Thong Thong Minh

    98/111

    N GIAO THNG THNG MINH

    delete('chupsosanhB.png');clear chupsosanhB.png;

    chng trnh h tr camra :function varargout = Mat_Do_Tuyen_A(varargin)% MAT_DO_TUYEN_A M-file for Mat_Do_Tuyen_A.fig% MAT_DO_TUYEN_A, by itself, creates a new MAT_DO_TUYEN_A or raisesthe existing% singleton*.%

    % H = MAT_DO_TUYEN_A returns the handle to a new MAT_DO_TUYEN_Aor the handle to% the existing singleton*.%% MAT_DO_TUYEN_A('CALLBACK',hObject,eventData,handles,...) calls thelocal% function named CALLBACK in MAT_DO_TUYEN_A.M with the given inputarguments.%

    % MAT_DO_TUYEN_A('Property','Value',...) creates a newMAT_DO_TUYEN_A or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before Mat_Do_Tuyen_A_OpeningFunction gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to Mat_Do_Tuyen_A_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one

    % instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES

    % Copyright 2002-2003 The MathWorks, Inc.

    % Edit the above text to modify the response to help Mat_Do_Tuyen_A

    % Last Modified by GUIDE v2.5 27-May-2009 11:00:12

    Trang 98

  • 7/29/2019 Den Giao Thong Thong Minh

    99/111

    N GIAO THNG THNG MINH

    % Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...

    'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @Mat_Do_Tuyen_A_OpeningFcn, ...'gui_OutputFcn', @Mat_Do_Tuyen_A_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);

    if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});

    end

    if nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

    elsegui_mainfcn(gui_State, varargin{:});

    end% End initialization code - DO NOT EDIT

    % --- Executes just before Mat_Do_Tuyen_A is made visible.function Mat_Do_Tuyen_A_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to Mat_Do_Tuyen_A (see VARARGIN)

    % Choose default command line output for Mat_Do_Tuyen_Ahandles.output = hObject;

    % Update handles structureguidata(hObject, handles);

    % UIWAIT makes Mat_Do_Tuyen_A wait for user response (see UIRESUME)% uiwait(handles.figure1);

    Trang 99

  • 7/29/2019 Den Giao Thong Thong Minh

    100/111

    N GIAO THNG THNG MINH

    % --- Outputs from this function are returned to the command line.function varargout = Mat_Do_Tuyen_A_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VARARGOUT);

    % hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)

    % Get default command line output from handles structurevarargout{1} = handles.output;

    % --- Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)

    vid=videoinput('winvideo',1);%preview(vid);H1a=getsnapshot(vid);

    %figure(2),imshow(chup_hinh);imwrite(H1a,'chupnenA.png','png');delete(vid);clear vid;

    % --- Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)

    % hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)

    vid=videoinput('winvideo',1);%preview(vid);H2a=getsnapshot(vid);%figure(2),imshow(H2);

    imwrite(H2a,'chupsosanhA.png','png');delete(vid);

    Trang 100

  • 7/29/2019 Den Giao Thong Thong Minh

    101/111

    N GIAO THNG THNG MINH

    clear vid;

    function varargout = Mat_Do_Tuyen_B(varargin)

    % MAT_DO_TUYEN_B M-file for Mat_Do_Tuyen_B.fig% MAT_DO_TUYEN_B, by itself, creates a new MAT_DO_TUYEN_B or raisesthe existing% singleton*.%% H = MAT_DO_TUYEN_B returns the handle to a new MAT_DO_TUYEN_Bor the handle to% the existing singleton*.%% MAT_DO_TUYEN_B('CALLBACK',hObject,eventData,handles,...) calls thelocal% function named CALLBACK in MAT_DO_TUYEN_B.M with the given inputarguments.%% MAT_DO_TUYEN_B('Property','Value',...) creates a newMAT_DO_TUYEN_B or raises the% existing singleton*. Starting from the left, property value pairs are

    % applied to the GUI before Mat_Do_Tuyen_B_OpeningFunction gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to Mat_Do_Tuyen_B_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES

    % Copyright 2002-2003 The MathWorks, Inc.

    % Edit the above text to modify the response to help Mat_Do_Tuyen_B

    % Last Modified by GUIDE v2.5 27-May-2009 10:41:29

    % Begin initialization code - DO NOT EDIT

    gui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...

    Trang 101

  • 7/29/2019 Den Giao Thong Thong Minh

    102/111

    N GIAO THNG THNG MINH

    'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @Mat_Do_Tuyen_B_OpeningFcn, ...'gui_OutputFcn', @Mat_Do_Tuyen_B_OutputFcn, ...

    'gui_LayoutFcn', [] , ...'gui_Callback', []);

    if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});

    end

    if nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

    elsegui_mainfcn(gui_State, varargin{:});

    end% End initialization code - DO NOT EDIT

    % --- Executes just before Mat_Do_Tuyen_B is made visible.function Mat_Do_Tuyen_B_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.

    % hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to Mat_Do_Tuyen_B (see VARARGIN)

    % Choose default command line output for Mat_Do_Tuyen_Bhandles.output = hObject;

    % Update handles structureguidata(hObject, handles);

    % UIWAIT makes Mat_Do_Tuyen_B wait for user response (see UIRESUME)% uiwait(handles.figure1);

    % --- Outputs from this function are returned to the command line.

    function varargout = Mat_Do_Tuyen_B_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VARARGOUT);

    Trang 102

  • 7/29/2019 Den Giao Thong Thong Minh

    103/111

    N GIAO THNG THNG MINH

    % hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (se