Đồ án đo khoảng cách

Preview:

DESCRIPTION

đo khoảng cách hiển thị lên LCD16x2

Citation preview

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    1 | P a g e

    MC LC

    Mc lc.1

    Li ni u...2

    I.Nhim v thit k..3

    II. Hng gii quyt cc yu cu chc nng.....3

    III. Yu cu phn cng, phn mm..4

    1. Phn cng....4

    a. Vi iu khin MSP430G25534

    Gii thiu tng qut.4

    S chn ..5

    Gii thch s lc cc chn...7

    b. Mch np cho MCU7

    c. Module cm bin siu m SRF05.9

    d. Mn hnh LCD HD44780-1602a.12

    e. Thit k mch....14

    Nguyn l o...14

    2. Yu cu phn mm...15

    IV.Thc hin...15

    Mch thit k...15

    Code hon chnh.15

    V.Kt qu.21

    Khong cch c hin th ln LCD21

    Khi khong cch qu gn th bo DANGEROUS..21

    Giao tip vi my vi tnh.21

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    2 | P a g e

    LI NI U

    Ngy nay k thut vi iu khin tr nn quen thuc trong cc ngnh k thut v

    trong dn dng. Cc b vi iu khin c kh nng x l nhiu hot ng phc tp m

    ch cn mt chip vi mch nh, n thay th cc t iu khin ln v phc tp bng

    nhng mch in gn nh, d dng thao tc s dng.

    Vi iu khin khng nhng gp phn vo k thut iu khin m cn gp phn to ln

    vo vic pht trin thng tin. Chnh v cc l do trn, vic tm hiu, kho st vi iu

    khin l iu m cc sinh vin ngnh in m c bit l chuyn ngnh k thut in-

    in t phi ht sc quan tm. chnh l mt nhu cu cn thit v cp bch i vi

    mi sinh vin, ti ny c thc hin chnh l p ng nhu cu .

    Cc b iu khin s dng vi iu khin tuy n gin nhng vn hnh v s dng

    c li l mt iu rt phc tp. Phn cng vic x l chnh vn ph thuc vo con

    ngi, chnh l chng trnh hay phn mm. Nu khng c s tham gia ca con

    ngi th h thng vi iu khin cng ch l mt vt v tri. Do vy khi ni n vi iu

    khin cng ging nh my tnh bao gm 2 phn l phn cng v phn mm.

    Di y em xin trnh by ton b ni dung n: Thit k mch o khong cch

    dng cm bin siu m - kt hp KIT MSP430 Launchpad do thy L Quang

    Thun- ging vin Trng i Hc Bch Khoa TPHCM hng dn.

    Trong qu trnh thc hin ti vn cn nhiu sai st, mong nhn c nhiu kin

    ng gp t thy v cc bn.

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    3 | P a g e

    I.Nhim v thit k

    -Thit k mch o khong cch dng cm bin siu m

    -Hin th khong cch o c ln LCD v my tnh

    -Cho php ci t khong cch cnh bo vo m bo khi khong cch qu gn

    II. Hng gii quyt cc yu cu chc nng

    -iu khin bng MSP430 (1)

    -Ngun cp 3.3 V

    -Khong cch n vt cn (2) o c thu thp thng qua cm bin siu m SFR05

    (3)

    -Dng LCD 16x2 hin th (4)

    -Dng buzzer (5) v LED m bo v quang bo khi khong cch qu gn

    -Xy dng chc nng hin th v ci t trn LCD

    -To nt nhn c th hiu chnh khong cch nguy him (6)

    2

    4

    6

    5

    3

    1

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    4 | P a g e

    III. Yu cu phn cng, phn mm

    1. Phn cng

    a. Vi iu khin MSP430G2553

    Gii thiu tng qut :

    Vi iu khin msp430 ny do hng TI ( Texas Instruments) sn xut.

    Vi iu khin( Micro controller unit MCU ) l n v x l nh, n c tch hp

    ton b cc b nh nh ROM , RAM , cc port truy xut , giao tip ngoi vi trc tip

    trn 1 con chip ht sc nh gn. c thit k da trn cu trc VON-NEUMAN ,

    c im ca cu trc ny l ch c duy nht 1 bus gia CPU v b nh (data v

    chng trnh) , do m chng phi c rng bit tng t nhau.

    MSP430 c mt s phinbn nh: MSP430x1xx, MSP430x2xx, MSP430x3xx,

    MSP430x4xx, MSP430x5xx. Di y l nhng c im tng qut ca h vi iu

    khin MSP430:

    + Cu trc s dng ngun thp gip ko di tui th ca Pin

    -Duy tr 0.1A dng nui RAM.

    -Ch 0.8A real-time clock.

    -250 A/ MIPS.

    + B tng t hiu sut cao cho cc php o chnh xc

    -12 bit hoc 10 bit ADC-200 kskp, cm bin nhit , Vref ,

    -12 bit DAC.

    -B gim st in p ngun.

    + 16 bit RISC CPU cho php c nhiu ng dng, th hin mt phn kch thc

    Code lp trnh.

    -Thanh ghi ln nn loi tr c trng hp tt nghn tp tin khi ang lm vic.

    -Thit k nh gn lm gim lng tiu th in v gim gi thnh.

    -Ti u ha cho nhng chng trnh ngn ng bc cao nh C, C++

    -C 7 ch nh a ch.

    -Kh nng ngt theo vc t ln.

    + Trong lp trnh cho b nh Flash cho php thay i Code mt cch linh hot,

    phm vi rng, b nh Flash cn c th lu li nh nht k ca d liu.

    S chn :

    Chip MSP430 c kch thc nh gn , ch vi 20 chn i vi kiu chn DIP.

    Bao gm 2 port I/O (hay GPIO general purprose input/ output : cng nhp xut

    chung).

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    5 | P a g e

    S chn

    Port 1 : c 8 chn t P1.0 n P1.7 tng ng vi cc chn t 2-7 v 14 , 15.

    Port 2 : cng gm c 8 chn P2.0 P2.7 ng vi cc chn 8 13 , 18,19.

    Ngoi chc nng I/O th trn mi pin ca cc port u l nhng chn a chc nng,

    ta th thy r trong bng sau :

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    6 | P a g e

    Trn bng l chc nng ca tng chn

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    7 | P a g e

    Gii thch s lc cc chn :

    - Chn s 1 l chn cp ngun Vcc( k hiu trn chip l DVcc ) , y ngun cho

    chip ch c cp mc 3,3V , nu cp ngun cao qu mc ny th chip c th hot

    ng sai hay chy chip .

    -Chn 20 l chn ni cc m (0V) , chn ny th khng c g c bit.

    -Chn reset : Chnh l chn s 16 RST , nu cc bn tng hc v PIC th s thy

    chn reset c k hiu l MCLR , cc bn thy du gch ngang trn c ngha l

    chn ny tch cc mc thp . Mc ch ca vic reset l nhm cho chng trnh

    chy li t u .

    -Mch dao ng : Cng ging nh nhng dng vi iu khin khc th Msp430 cng

    h tr ngi dng thch anh ngoi ( external crystal ), nhng thch anh ngoi vi cho

    php ch c th ln ti 32,768 kHz m thi, v tn hiu ny c mc trn 2 chn 18

    v 19. Nhng msp430 li h tr thch anh ni c th ln n 16Mhz, ty vo cch

    khai bo trong lp trnh. V mc nh ca chip l thch anh ni. Nh vy th chng ta

    khng cn thit phi s dng mch dao ng ngoi cho chip ging nh nhng dng

    khc.

    - Port I/O :

    Port 1 : c 8 chn t P1.0 n P1.7 tng ng vi cc chn t 2-7 v 14 , 15.

    Port 2 : cng gm c 8 chn P2.0 P2.7 ng vi cc chn 8 13 , 18,19.

    Trong ch nhp (input) th c 2 port u c 1 mch iu khin in tr ko dng

    gi l PULL UP nhng gi tr ca in tr ny rt ln khong 47K nn gi l WEAK

    PULL UP RESISTAN. Vic iu khin PULL UP s c tin hnh thng qua lp

    trnh tc ng ln thanh ghi PxREN .

    iu ny cng ging nh vic thit lp input port B ca vi iu khin PIC, port B

    cng c in tr ko ln , v ngi lp trnh phi thao tc qua thanh ghi

    OPTION_REG.

    b. Mch np cho MCU.

    Kit Lanchpad :

    Vi bt k 1 con MCU no th vic phi thit k 1 mch np cho chip l iu khng

    th b qua ! V vi Msp430 cng khng l ngoi l .

    Msp430 l dng value line , power low, v low cost . Chnh v vy m TI cung

    cp cho ngi dng 1 mch np code + debug ch trn 1 mch nh gn. Trong kit

    cn c h tr :

    -1 mch np code c c debug

    -1 dy cp USB tt kt ni kit vi my tnh.

    -1 chip thch anh 32,768kHz

    -1 chip Msp430G2553

    -1 chip Msp430G2453

    -1 header female.

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    8 | P a g e

    Hnh nh ca Kit launchpad

    Kit c th np c code cho dng Msp430G : nh msp430g2231, 2553, 2452,

    Kit kt ni vi my tnh thng qua cng USB .

    Mt kit LaunchPad gm hai thnh phn, vi GND c ph chung:

    - Na trn: L phn mch np theo chun spy-bi-wire Jtag (2 dy), kt hp vi

    chuyn i giao tip UART vi my tnh. Trn cng l u USBmini ni vi my

    tnh, pha di l hng Header ni ra i tng cn giao tip, bao gm cc chn:

    TXD, RXD: phc v giao tip UART vi my tnh.

    RST, TEST: phc v np v debug (sa li) theo chun spy-bi-wire Jtag.

    VCC: cp ngun 3V3 cho i tng (thng l na di LaunchPad).

    - Na di: l mt mch pht trin MSP430 n gin, bao gm:

    Socket cm MSP430 (thng gn sn chip MSP430G2553), Pad hn thch anh,

    Nt nhn Reset chip.

    Nt nhn gn vo P1.3, hai Led hin th c jumper gn vo P1.0 v P1.6. Hai

    hng header kt ni hai hng chn ca chip ra ngoi, mt hng header ngun

    GND-GND-VCC ly ngun 3V3 trn LaunchPad.

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    9 | P a g e

    c. Module cm bin siu m SRF05

    SRF05 l mt bc pht trin t SRF04, c thit k lm tng tnh linh hot,

    tng pham vi, ngoi ra cn gim bt chi ph. SRF05 l hon ton tng thch vi

    SRF04. Khong cch l tng t 3 mt n 4 mt. Mt ch hot ng mi, SRF05

    cho php s dng mt chn duy nht cho c kch hot v phn hi, do tit kim

    c gi tr trn chn iu khin ca bn. Khi chn ch khng kt ni, SRF05 cc

    hot ng ring bit chn kch hot v v chn hi tip, nh SRF04. SRF05 bao

    gm mt thi gian tr trc khi xung phn hi mang li iu khin chm hn

    chng hn nh b iu khin thi gian c bn Stamps v Picaxe thc hin cc

    xung lnh.

    Cm bin gm mt b pht v mt b thu sng siu m.

    Khong cch o: 3cm - 4m.

    SRF05 s dng nguyn l phn x ca sng o khong cch. Khi mun o

    khong cch SRF05 s pht ra mt 8 xung vi tc 40Khz. Sau n s ch i

    xung phn x v. T thi gian gia xung i v xung v ta c th d dng tnh c

    khong cch t SRF05 ti vt cn.

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    10 | P a g e

    1) Ch 1: Tng ng SRF04 tch bit kch hot v phn hi

    Khi pht ra xung, v ch xung phn x v, chn ECHO ca SRF05 s c ko ln

    cao. Khi c xung phn x v chn ECHO s c ko xung thp, hoc sau 30ms

    nu khng c xung phn x v.

    2) Ch 2: Dng mt chn cho c kch hot v phn hi

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    11 | P a g e

    3) Mt s c im khc ca cm bin siu m SRF05

    Mc ca sng m hi tip ph thuc vo cu to ca i tng v gc phn x

    ca n.

    Mt i tng mm c th cho ra tn hiu phn hi yu hoc khng c phn hi. Mt

    i tng mt gc cn i th mi c th chuyn thnh tn hiu phn chiu mt

    chiu cho cm bin nhn.

    4) Vng pht hin ca SRF05

    Nu ngng pht hin i tng c t qu gn vi cm bin, cc i tng

    trn mt ng c th b va chm ti mt im m. Nu ngng ny c t

    mt khong cch qu ln t cc cm bin th i tng s c pht hin m

    khng phi l trn mt ng va chm.

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    12 | P a g e

    Mt k thut ph bin lm gim cc im m v t c pht hin chiu rng

    ln hn c ly gn l thm mt ci tin bng cch thm mt n v SRF05 b sung

    v gn kt ca hai n v hng v pha trc. Thit lp nh vy th c mt khu vc

    m hai khu vc pht hin chng cho ln nhau.

    5) Thng s mt s loi cm bin siu m SRF

    *: c tnh gc ca hnh nn cm bin cm bin

    **: S vng ghi li bi cm bin. y l nhng ting vng ghi t c gn y nht,

    v c ghi mi bng mi ln khc nhau.

    A: Nhng cm bin nh hn in hnh ( SRF05/04) kch thc.

    B: Phm vi thi gian c th c iu chnh xung bng cch iu chnh c.

    C: Cm bin ny cng bao gm mt photocell mt trc pht hin nh sng.

    D: Hot ng mt tn s 235kHz cao hn.

    d. Mn hnh LCD HD44780-1602a

    Khi sn xut LCD, nh sn xut tch hp chp iu khin (HD44780) bn trong

    lp v v ch a cc chn giao tip cn thit. Cc chn ny c nh s th t v

    t tn nh hnh

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    13 | P a g e

    S chn ca LCD

    Chc nng cc chn:

    Chn K

    hiu M t

    1 VSS Chn ni t cho LCD, khi thit k mch ta ni chn

    ny vi GND ca mch iu khin

    2 VDD Chn cp ngun cho LCD, khi thit k mch ta ni

    chn ny vi VCC=5V ca mch iu khin

    3 VEE iu chnh tng phn ca LCD.

    4 RS

    Chn chn thanh ghi (Register select). Ni chn RS

    vi logic 0 (GND) hoc logic 1 (VCC) chn

    thanh ghi.

    + Logic 0: Bus DB0-DB7 s ni vi thanh ghi lnh

    IR ca LCD ( ch ghi - write) hoc ni vi b

    m a ch ca LCD ( ch c - read)

    + Logic 1: Bus DB0-DB7 s ni vi thanh ghi d

    liu DR bn trong LCD.

    5 R/W

    Chn chn ch c/ghi (Read/Write). Ni chn

    R/W vi logic 0 LCD hot ng ch ghi,

    hoc ni vi logic 1 LCD ch c.

    6 E

    Chn cho php (Enable). Sau khi cc tn hiu c

    t ln bus DB0-DB7, cc lnh ch c chp nhn

    khi c 1 xung cho php ca chn E.

    + ch ghi: D liu bus s c LCD chuyn

    vo(chp nhn) thanh ghi bn trong n khi pht hin

    mt xung (high-to-low transition) ca tn hiu chn E.

    + ch c: D liu s c LCD xut ra DB0-

    DB7 khi pht hin cnh ln (low-to-high transition)

    chn E v c LCD gi bus n khi no chn E

    xung mc thp.

    7 -

    14

    DB0 -

    DB7

    Tm ng ca bus d liu dng trao i thng

    tin vi MPU. C 2 ch s dng 8 ng bus ny:

    + Ch 8 bit : D liu c truyn trn c 8

    ng, vi bit MSB l bit DB7.

    + Ch 4 bit : D liu c truyn trn 4 ng t

    DB4 ti DB7, bit MSB l DB7

    15 - Ngun dng cho n nn

    16 - GND cho n nn

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    14 | P a g e

    e. Thit k mch

    Giao tip gia vi iu khin v cc phn cng c th hin qua s chn ni

    sau:

    Tm tt s ni chn t vi iu khin :

    P1.0 (+) Buzzer

    P1.3 Button MODE

    P1.4 chn EN ca LCD

    P1.5 chn RS ca LCD

    P1.6 Buttton GIM ch s

    P1.7 Button TNG ch s

    P2.0 Chn ECHO ca SFR05

    P2.1 Chn TRIGGER ca SFR05

    P2.2 Chn d liu D4 ca LCD

    P2.3 Chn d liu D5 ca LCD

    P2.4 Chn d liu D6 ca LCD

    P2.5 Chn d liu D7 ca LCD

    Nguyn l o : S dng nguyn l phn x ca sng o khong cch. Khi

    mun o khong cch vi x l s truyn mt xung ti thiu 10 micro giy vo

    chn Trigger ca SRF05 khi SRF05 s pht ra mt 8 xung vi tc 40Khz.

    Sau n s ch i xung phn x v. T thi gian gia xung i v xung v ta

    c th d dng tnh c khong cch t SRF05 ti vt cn.

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    15 | P a g e

    2. Yu cu phn mm :

    - Lp trnh cho MSP430 dng phn mm CCS ca TI

    - Datasheet:MSP430G2553,MSP43x2xx,SRF05,Buzzer,Led,LCD.

    - Th vin MSP430 :LCD,UART,Flash,Clock,Switch,Math

    - C# lp trnh giao din hin th khong cch ln my tnh

    IV.Thc hin

    Mch thit k

    Code hon chnh

    /* Description: do khoang cach su dung module SRF05, hien thi len man hinh lcd * CONNECT: VCC --> 3.3V * TRIGGER --> P2.1 * ECHO --> P2.0 * GND --> GND * NC --> no connect */

    a.Thit lp thng s ,chc nng cc chn v cc hm x l cho bi ton #include #include "LCD.h" #include "basic_config.h" #include "math.h" #include "UART.h" #define trigger BIT1; #define echo BIT0; #define up (P1IN & BIT6) #define down (P1IN & BIT7) #define mode (P1IN & BIT3) void timer_init(void); // khai bao chuong trinh con timer

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    16 | P a g e

    void do_khoang_cach(void); // khai bao chuong trinh con do khoang cach void hienthi(void); void caidat(void); void alarm(void); unsigned char is_push(unsigned char but); unsigned int t1=0, t2=0, delta=0, flag=0, a=20,b=0;// first_pulse=0;

    b.Ci t ch hot ng ca cc thanh ghi, chn,tn s hot ng ca vi x lvoid main(void) { WDTCTL = WDTPW | WDTHOLD; BCSCTL1 = CALBC1_1MHZ; DCOCTL = CALDCO_1MHZ; P2DIR |= trigger; // trigger ouput,p2.1 la out put khi triger len 1 P2SEL |= echo; //connect P2.0 (echo) to CCI0A (capture/compare input ) P2SEL2 &= ~echo; // chi thay doi 1 bit 2.0 P2DIR &= ~echo; P1DIR |= BIT0; P1OUT &= ~BIT0; P1SEL &=~ BIT3; P1SEL2 &=~ BIT3; P1DIR &=~BIT3; P1REN |= BIT3; P1OUT |= BIT3; lcd_init(1); timer_init(); lcd_clear(); _BIS_SR(GIE); //ngat toan cuc UART_Init();

    c.S dng nt nhn chn ch , mc nh s hin th ln LCD khong cch while (1) { if(is_push(mode)==1) { while(is_push(mode)==1); if(b == 0) b = 1; else b = 0; } switch (b) { case 1: caidat(); break; case 0:

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    17 | P a g e

    hienthi(); alarm(); break; } } }

    d.Thit lp ch hot ng ca timer void timer_init(void) { TA1CTL = TASSEL_2 + MC_2 ; // continuos mode, 0 --> FFFF TA1CCTL0 = CM_3 + CAP + CCIS_0 + SCS+ CCIE; // falling edge & raising edge, capture mode, capture/compare interrupt enable TA1CCTL0 &= ~ CCIFG; }

    e.Kch chn trigger void do_khoang_cach(void) { P2OUT |= trigger; __delay_cycles(20); P2OUT &= ~trigger; }

    f.Ci t khong cch cn bo ng void caidat(void) { lcd_gotoxy(0,0); lcd_puts("Warning distance"); if (a >=100) { lcd_gotoxy(3,1); lcd_puts(" "); lcd_gotoxy(0,1); lcd_put_num (a,0,0); } else if (a >9) { lcd_gotoxy(2,1); lcd_puts(" "); lcd_gotoxy(0,1); lcd_put_num (a,0,0); } else { if (a

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    18 | P a g e

    lcd_put_num (a,0,0); } } lcd_gotoxy(4,1); lcd_puts("cm"); if (is_push(up)==1) a++; if (is_push(down)==1) a=a-1; }

    g.Hin th khong cch o c ln LCD void hienthi(void) { if (delta=100) { lcd_gotoxy(0,1); lcd_put_num (delta,0,0); } else if (delta >9) { lcd_gotoxy(2,1); lcd_puts(" "); lcd_gotoxy(0,1); lcd_put_num (delta,0,0); } else { if (delta

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    19 | P a g e

    } } lcd_gotoxy(4,1); lcd_puts("cm"); __delay_cycles(150000); }

    h.Bo ng khi khong cch qu gn void alarm(void) { if (delta

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    20 | P a g e

    if (P2IN & BIT0 ==1 )// neu co xung canh len tai chan echo (P2.0) t1 = TA1CCR0; else { // neu co canh xuong tai chan echo (P2.0) t2 = TA1CCR0; if (t2 > t1) { delta = (t2-t1)/58; delta=delta+1; UART_Write_Char(10); UART_Write_Int(delta); } } TA1CCTL0 &= ~ CCIFG; }

  • N MN HC 1 : O KHONG CCH BNG CM BIN SIU M 2014-2015

    21 | P a g e

    V.Kt qu

    Khong cch c hin th ln LCD

    Khi khong cch qu gn th bo DANGEROUS

    Giao tip vi my vi tnh

Recommended