You are on page 1of 61

n I:o lng v iu khin tc ng c 2012

N VI X L
O V IU KHIN TC NG C DNG 8051 GVHD:o c Thnh Sinh vin thc hin: Trng Vn Trng Phan Cng Ton

Li ni u Trong nhng nm gn y vi s pht trin mnh m ca khoa hc k thut.c bit ca ngnh cng nghip ch to cc linh kin bn dn,cc cc vi mch tch hp IC mt hng pht trin mi ca Vi x l hnh thnh l Vi iu Khin.Vi nhng u im to ln v tc , chnh xc cao,kh nng s l cc ba ton,tnh linh hot nn cc Vi iu khin c ng dng trn hu ht cc lnh vc trong cuc sng. Bng cch p dng Vi iu Khin trong sn xut v x l,Vi iu Khin thc s th hin c cc u im ca mnh so vi cc thit b thng thng khc. V nhng ng dng to ln ca Vi iu khin,do m cc trng i Hc,Cao ng,TCCN. V khoa hc cng ngh .Mn vi x l tr thnh mt mn hc khng th thiu c trong trng trnh o to.vi iu khin 8051 s cung cp cho sinh vin nhng khi nhin c bn cch thc hot ng ca Vi x l qua sinh vin c t duy ,kin thc nn tng, c th gii quyt cc bi ton ng dng thc t trong cuc sng,cng nh l c s hc tp nghin cu cc dng Vi x l khc nh :PIC,AVR. Qua n ny chng em c ci nhn thc t hn,su sc hn v vi iu khin.chng em cng hiu thm nhiu v cch thc x l mt bi ton thc t phc tp. Vi s hng n tn tnh ca thy:o c Thnh chng em hi vng chng em c th hon thnh tt n ny. Chng em xin chn thnh cm n thy! GVHD:o c Thnh 1

n I:o lng v iu khin tc ng c 2012


CHNG I.GII THIU CHUNG I.1.kho st h thng. Hin nay trong rt nhiu lnh vc i sng v sn xut cc loi ng c in ngy cng c ng dng rng ri hn so vi nhng loi ng c s dng nng lng nh xng, du, kh t..Nhng loi ng c in ny c nhng u im hn hn v hiu sut s dng, cu to nh gn, gi thnh hp l, d dng iu chnh tc , o chiu, cng bc cc qu trnh khi ng, qu trnh hm dng d dng.Trong thc t c rt nhiu loi ng c in c s dng bao gm: +ng c in c in 3 pha c chia lm cc loi c bn l: ng c in 3 pha dy qun v 3 pha roto lng sc, ng c in 1 pha. +ng c in 1 chiu bao gm cc loi nh: kch t song song v loi kch t ni tip. Thng thng vi nhng ng c thng xuyn i hi o chiu,tng, gim, hm dng th thng s dng ng c in 1 chiu l ch yu, v s d dng iu khin hn so vi ng c xoay chiu. tin hnh iu khin ng c 1 chiu, c rt nhiu bin php c ng dng nh l: thay i in p phn ng, thay i t thng, hoc s dng in tr ph mc thm vo phn ng ca ng c. lm c iu , chng ta cn i xy dng nhng h thng iu khin, c rt nhiu h thng c ng dng nh l: cc h thng iu khin PID, iu khin ng c bng Vi iu khin, hay c th iu khin bng cch s dng cc loi kh c in. Trong ti ny chng em s tin hnh nghin cu cc qu trnh iu khiu ng c bng phng php s dng Vi iu khin h 8051. I.2.Nhim v v yu cu k thut. * Thit k mt mch in iu khin ng c DC 12 v.vi cc yu cu quoay thun ,quoay nghch, tng tc,gim tc,vad o chiu quoay ng c. * Thc hin thao tc iu chnh cc chc nng trn thng qua cc nt n bao gm :nt khi ng ng c,nt iu khin quay thun, nt iu khin quay ngc, nt tng tc, nt gim tc, v nt dng ng c, thng qua cc nt n ny cho php ta c th iu chnh ng c lm vic 1 tc nh mong mun.

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


* H thng cho php hin th tc lm vic c th s dng LCD hoc LED 7 thanh, ng thi c cc led n thng bo trng thi quay thun, quay ngc, dng cn gi tr tc ng c c hin th chi tit l bao nhiu trn LED 7 on. * Thng qua ti, lm quen vi cch thc, nguyn l iu khin i tng ng c 1 chiu. * Tm hiu thc t cc linh kin, cc loi IC, hot ng ca cc loi cm bin. * Vit chng trnh cho vi iu khin thc hin thnh cng theo yu cu ra. * Tm hiu cc hng pht trin ca ti, nng cao cht lng ca h thng. * chi ph cho h thng khng qu cao,ph hp vi yu cu kinh t. Mch s dng cc linh kin sau: Vi iu khin :AT89c52. B cm bin quang hc:encoder ( c gn trc tip trn ng c DC) ng c in mt chiu: 12v Led 7seg. Nt nhn. Led n. LM7805. Mch cu H: L298. Ngoi ra cn cc phn t in khc nh:t ha,t phn cc,in tr

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


CHNG II:S KHI

II.1.s khi ca mch


Phm n HIN TH LED 7 seg VI X L 8051 IU KHIN NG C L293 N P NGUN 5V NG C DC-12V NGUN 12 V

Xung in
ENCODER

S khi ca mch.

II.2.nhim v - chc nng ca tng khi. ng c:ng c in c s dng trong mch l ng c in mt chiu c in p t vo ti a 24V.Trn trc ng c c gn mt a trn c khot cc l trn cho nh sng t led pht quang c th i qua ti con mt thu quang c th o c tc ng c. y chng ta dng ng c DC 12V. Encoder :dng o s vng quay ca ng c v pht hin chiu quoay ca ng c.encoder n s o tc ng c thng qua s lin lc, mt lin lc ca led pht quang v b phn thu quang ri chuyn thnh cc xung in p vung gi ti chn ngt ca Vi X L.

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


Vi X L:nhn cc tn hiu t encoder thng qua c ch ngt t cn c vo s xung do n s tnh ton x l : - a ra tc ng c hin th ln led 7 thanh. - iu ch rng xung PWM iu khin tc ng c cho ph hp vi yu cu. Khi vi x l l tri tim l khi c ca h thng l phn quan trng nht iu khin mi hot ng ca mch. Khi iu khin:iu khin hng ca ng c in mt chiu.trong bi ton ny chng em x dng mch cu H iu khin hng ca ng c. Khi hin th:nhn s liu v tc ng c t vi x l ri hin th ln cc led 7 thanh theo s iu khin ca Vi iu khin. Khi ngun n p 5V:c chc nng cung cp in p n nh cho cc khi trong mch.C th trong mch ta s dng hai ngun ring bit: - Ngun 5V DC dng nui cc IC trong mch hot ng to ra cc tn hiu xut ra chun TTL,trnh cc trng hp nhiu in p khng ng vi in p cp cho IC => trnh IC khng hot ng,hng hc,chp chy. - Ngun 12V DC dng cung cp cho ng c mt chiu DC (trong n ny s dng ng c mt chiu DC 12V.)

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


CHNG III:C S L THUYT GII QUYT BI TON

III.1. Vi iu Khin 8051.


III.1.1. Kin trc phn cng AT89C52 AT89C51 l phin bn 8051 c ROM trn chip l Flash. Phin bn ny thch hp cho ng dng nhanh v b nh Flash c th xo trong vi giy. AT89C51 c th c lp trnh qua cng COM ca my tnh IBM PC. Cc thnh phn bn trong n gm c: - 128 byte RAM - 8Kbyte ROM - 32 ng xut nhp - 3 b nh thi m 16 bit - 8 nguyn nhn ngt - mt port ni tip song cng - mt mch dao ng v to xung clock trn chi a. Cu hnh cc chn ca 89ATC52:
U1 39 38 37 36 35 34 33 32 1 2 3 4 5 6 7 8 19 18 31 9 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 30 29

P1.0/T2 P3.0/RXD P1.1/T2-EX P3.1/TXD P1.2 P3.2/INT0 P1.3 P3.3/INT1 P1.4 P3.4/T0 P1.5 P3.5/T1 P1.6 P3.6/WR P1.7 P3.7/RD XTAL1 XTAL2 EA/VPP RST AT89C52 ALE/PROG PSEN

b. M t cc chn GVHD:o c Thnh 6

n I:o lng v iu khin tc ng c 2012


- Vcc (40):chn cp in (5V) - GND (20):chn t (0V) * Cng Port 1 c ch nh l cng I/O t chn 1 n 8. Chng c s dng cho mc ch duy nht l giao tip vi thit b khi cn thit. Ngoi ra cc chn P1.0, P1.1 l 2 chn lin quan n hot ng ngt ca b nh thi 2. Trong nhng m hnh thit k khng dng b nh ngoi, Port 0 l cng I/O. Cn i vi cc h thng ln hn c yu cu mt s lng ng k b nh ngoi th Port 0 tr thnh cc ng truyn d liu v 8 bit thp ca bus a ch. Ngoi ra chn P1.0(T2) l ng vo ca b m thi gian 2. P1.1(T2EX) l chn capture/reload ca b m thi gian 2. * Cng Port 2 l cng I/O hoc l ng tryn 8 bit cao ca bus a ch cho nhng m hnh thit k c b nh chng trnh nm ngoi hc c hn 256 byte b nh d liu ngoi . * Cng Port 3 ngoi mc ch chung l cng I/O, nhng chn ny cn kim lun nhiu chc nng khc lin quan n c tnh c bit ca vi iu khin. Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 Tn RXD TXD INTO INT1 T0 T1 WR RD a ch bit B0H B1H B2H B3H B4H B5H B6H B7H Chc nng th hai Nhn d liu cho cng ni tip Truyn d liu cho cng ni tip Ngt 0 bn ngoi Ngt 1 bn ngoi Ng vo b m thi gian 0 Ng vo b m thi gian 1 Tn hiu iu khin ghi b nh d liu ngoi Tn hiu iu khin c b nh d liu ngoi

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


Nhng chc nng th hai ca chn cng Port 3 - /PSEN l mt tn hiu iu khin cho php b nh chng trnh bn ngoi hot ng. N thng c kt ni n chn /OE (Output Enable) ca /EPROM c cc byte chng trnh. Xung tn hiu /PSEN lun mc thp trong sut phm vi qu trnh ca mt lnh. Cn khi thi hnh chng trnh t ROM ngay bn trong chip, chn /PSEN lun mc cao. - Tn hiu ALE c chc nng c bit tch byte a ch thp v bus d liu khi cng P0 c s dng c ch tun t hay cn gi l ch dn knh, ngha l s dng cng mt ng truyn cho cc bit d liu v byte thp ca bus a ch - Khi chn /EA mc cao, vi iu khin c thc hin cc chng trnh lu tr vng nh thp hn 8Kbyte ROM bn trong chip. Cn /EA mc thp ch c nhng chng trnh lu b nh ngoi mi c thc hin - AT89S52c mt b dao ng ni bn trong chip hot ng theo tn s ca mt dao ng thch anh nm bn ngoi. Tn s thng dng ca thch anh l 11,0592 MHZ. - RST (9):ng vo reset mc cao trn chn ny trong 2 chu k my.

RST

Mch reset tc ng bng tay v s t ng reset li my. - XTAL1 v XTAL2:l hai ng vo v ra ca b khuch i o ca mch giao ng,c cu hnh dng dng nh mt b giao ng trn chp.

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012

Khng c yu cu no v chu k nghin v ca tn hiu xung Clock bn ngoi do tn hiu ny phi qua mch flip-flop chia hai trc khi ti mch to xung bn trong.Tuy nhin cc chi tit k thut v thi gian mc thp v thi gian mc cao,in p cc i ,in p cc tiu cn c xem xt. c.t chc b nh Khng gian b nh ca b vi iu khin c phn chia thnh 2 phn: b nh d liu v b nh chng trnh. Hu ht cc IC MCS u c b nh chng trnh nm bn trong chip, tuy nhin cng c th m rng dung lng ln n 64K b nh chng trnh v 64K d liu bng cch s dng mt s b nh ngoi. Bn trong chip vi iu khin AT89C51 c 128 byte b nh d liu. Khng gian b nh bn trong c chia thnh cc bank thanh ghi, RAM a ch theo bit, RAM dng chung v cc thanh ghi chc nng c bit. 7F FF F0 E0 D0 CD CC F 7 E 7 F 6 E 6 F 5 E 5 F 4 E 4 F 3 E 3 F 2 E 2 F 1 E 1 F 0 E 0 B ACC

RAM dng chung

D D D D D D D D PSW 7 6 5 4 3 2 1 0 TH2 TL2

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


CB CA C8 B8 2F 2E 2 D 7 7 7 7 7 7 F E D C B A 7 7 7 6 7 5 7 4 7 3 7 2 7 9 7 1 6 9 6 1 5 9 5 1 4 9 4 1 3 9 3 1 7 B0 8 7 A8 0 6 A0 8 6 99 0 5 98 8 5 90 0 4 8D 8 4 8C 0 3 8B 8 3 8A 0 9 F 9 7 9 E 9 6 9 9 9 9 9 D C B A 9 9 5 9 4 9 3 9 2 9 1 9 8 9 0 RCA P2L RCA P2H T2C ON B B B B B IP C B A 9 8

30

B B B B B B B B P3 7 6 5 4 3 2 1 0 A F A A A A A IE C B A 9 8

6 6 6 6 6 6 F E D C B A 6 6 6 5 6 4 6 3 6 2

A A A A A A A A P2 7 6 5 4 3 2 1 0 SBU F SCO N P1 TH1 TH0 TL1 TL0

2C 6 7

2B 5 5 5 5 5 5 F E D C B A 2 A 29 28 27 26 5 7 5 6 5 5 5 4 5 3 5 2

4 4 4 4 4 4 F E D C B A 4 7 4 6 4 5 4 4 4 3 4 2

3 3 3 3 3 3 F E D C B A 3 7 3 6 3 5 3 4 3 3 3 2

GVHD:o c Thnh

10

n I:o lng v iu khin tc ng c 2012


25 24 23 22 21 20 1F Bank Register 2 2 2 2 2 2 F E D C B A 2 7 2 6 2 5 2 4 2 3 2 2 2 9 2 1 1 9 1 1 0 9 0 1 2 8 2 89 0 1 8 1 88 0 0 8 0 0 8 F 8 E 8 8 8 8 8 D C B A 9 8 8 TCO N PCO N TMO D

1 1 1 1 1 1 F E D C B A 1 7 1 6 1 5 1 4 1 3 1 2

0 0 0 0 0 0 F E D C B A 0 7 0 6 0 5 0 4 0 3 0 2

83 82 81

DPH DPL SP 8 7 8 6 8 5 8 4 8 3 8 2 8 1 8 0 P0

00

80

S chi tit khng gian b nh d liu bn trong vi iu khin

d.cc thanh ghi c bit. AT89C52 c cc thanh ghi R0 n R7 v 21 thanh ghi chc nng c bit SFR (Special Function Register) nm phn trn ca RAM t a ch 80H n FFH.

GVHD:o c Thnh

11

n I:o lng v iu khin tc ng c 2012


Thanh ghi trng thi PSW (program stastus word): Bit PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 K hiu CY AC FO RS1 RS0 a ch D7H D6H D5H D4H D3H M t bit C nh C nh ph C 0 Chn dy thanh ghi(bit 1) Chn dy thanh ghi(bit 0) 00=bank1: a ch t 00h n 07h 01=bank2: a ch t 08h n 0Fh 10=bank3: a ch t 10h n 17h 01=bank2: a ch t 18h n 1Fh PSW.2 PSW.1 PSW.0 OV P D2H D1H D0H C trn D tr C kim tra chn l

- Thanh ghi B: thanh ghi lun c s dng km theo thanh ghi A thc hin cc php ton nhn v chia. Thanh ghi B xem nh l thanh ghi m dng chung. N c a ch t F0 n F7. - Con tr ngn xp: l mt thanh ghi 8 bit, n cha a ch ca phn d liu ang hin din ti nh ngn xp. Ngn xp hot ng theo phng thc LIFO. Hot ng y vo ngn xp lm tng SP ln trc khi ghi d liu vo. Hot ng ly ra khi ngn xp s c d liu ra rI gim SP. - Con tr d liu DPTR(Data Pointer): DPTR c s dng truy cp vo b nh chng trnh v b nh d liu ngoi, l thanh ghi 16 bot c 8 bit thp a ch 82H (DPL) v 8 bit cao a ch 83h (DPL)

GVHD:o c Thnh

12

n I:o lng v iu khin tc ng c 2012


- Cc thanh ghi cng: Cc cng I/O ca VDL bao gm P0 ti a ch 80H, P1 a ch 90H, P2 ti a ch A0H, P3 tI a ch B0H. Tt c cc cng u c a ch bit nn cung cp kh nng giao tip vi bn ngoi rt mnh - Cc thanh ghi b m thi gian: AT89C52 c 3 b m thi gian 16 bit nh cc khong thi gian hay m cc s kin. Timer0 c a ch 8AH (TL0: bit thp) v 8CH(TH0: byte cao). Timer1 c a ch 8BH (TL1: bit thp) v 8DH(TH1: byte cao). Timer2 c a ch CCH (TL2: bit thp) v 8CD(TH2: byte cao). Hot ng ca cc b m thi gian c thit lp bi cc thanh ghi TMOD,TCON, T2CON. Ngoi ra cc thanh ghi RCAP2L, RCAP2H c s dng trong ch t np ca 16 bitb nh thi 2. - Cc thanh ghi cng tun t: IC AT89C52 cha mt cng ni tip kt ni vi cc thit b ni tip nh moderm hoc giao tip vi cc IC khc s dng giao tip ni tip. B m d liu ni tip SBUF lu gi c d liu truyn i v d liu nhn c. - Cc thanh ghi ngt: AT89C52 c 6 nguyn nhn ngt v 2 ngt u tin. Cc ngt b cm sau khi h thng khi ng li v c bt bng cch ghi vo thanh ghi cho phep ngt IE. Mc u tin c thit lp thng qua thanh ghi u tin IP. - Thanh ghi iu khin nng lng PCON (Power Control Register): cha nhiu bit iu khin m bo cc chc nng khc nhau. III.1.2.hot ng ca timer. a.cc thanh ghi ca b nh thi. truy cp b nh thi ta s dng 11 thanh ghi FSR: SFR TCON TMOD TL0 TL1 TH0 Mc ch iu khin Chn ch Byte thp ca b nh thi 0 Byte thp ca b inh thi 1 Byte cao ca b inh thi 0 a ch 88H 89H 8AH 8BH 8CH nh a ch bit C Khng Khng Khng Khng 13

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


TH1 T2CON Byte cao ca b inh thi 1 iu khin b nh thi 2 8DH C8H Khng C Khng Khng Khng Khng

RCAP2L Nhn byte thp ca b nh thi 2 CAH RCAP2 H TL2 TH2 Nhn byte cao ca b nh thi 2 Byte thp ca b inh thi 2 Byte cao ca b nh thi 2 CBH CCH CDH

- Thanh ghi TMOD (Timer Moder Register): Bit 7 6 5 4 3 2 1 0 Tn Timer Chc nng Khi bit Gate=1 v INT1 cao th Timer 1 mi hot ng Bit chn counter/timer (1/0) Bit mode 1 Bit mode 0 Bit GATE ca timer 0 Bit chn counter/timer (1/0) Timer 0 Bit mode 1 ca Timer 0 Bit mode 0 ca Timer 0

GATE 1 C/T M1 M0 1 1 1

GATE 0 C/T M1 M0 0 0 0

Cc bt a ch ca thanh ghi TMOD: Thanh ghi TMOD c chia thnh 2 nhm 4 bit dng truy cp cc ch hot ng ca Timer0 v Timer1. Cc ch hot ng ca b nh thi: GVHD:o c Thnh 14

n I:o lng v iu khin tc ng c 2012


+ M1=0, M0=0: Mode 0 (Ch nh thi 13-bit) + M1=0, M0=1: Mode 1 (Ch nh thi 16 bit) + M1=1, M0=0: Mode 2 (Ch t ng np 8 bit) + M1=1, M0=1: Mode 3 (Ch nh thi chia x). - Thanh ghi iu khin b nh thi TCON (Timer control register): Bit TCON.7 TCON.6 TCON.5 TCON.4 TCON.3 TCON.2 TCON.1 TCON.0 K hiu a ch bit TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H M t C trn b nh thi Bit iu khin hot ng ca b nh thi 1 C trn b nh thi 0 Bit iu khin hot ng ca b nh thi 1 C ngt bn ngoi 1 C ngt bn ngoi 1 C ngt bn ngoi 0 C ngt bn ngoi 0

c.cc ch ca timer v c trn Ch nh thi 13 bit (mode 0): Mode 0 t c s dng trong cc h thng mi. Byte cao ca b nh thi THx c kt hp vI 5 bit c trng s nh nht va byte thp ca b nh thi TLx to nn b nh thi 13 bit. #bit cn li ca TLx khng c s dng.
TLx (5bit) THx (8bit)

TF Ch nh thi 16 bit (mode1): Trong Mode 1, tn hiu ng h c a vo c 2 byte cao v thp ca b nh thi (TLx,THx). Khi nhn xung ng h, b nh thi bt u m ln t GVHD:o c Thnh 15

n I:o lng v iu khin tc ng c 2012


0000H. Hin tng trn xy ra khi c chuyn tip t FFFFH v 0000H v lm bt c trn.
Timer Clock

TLx(8bit)

THx(8bit)

TFx(c trn)

Ch nh thi 8 bt t ng np li (mode 2): Trong Mode 2, thanh ghi nh thi TLx hot ng nh l b dnh thi 8 bit trong khi byte cao ca b dnh thi lu gi tr np li. Khi qu trnh m TLx b trn t FFH v 00H th khng nhng c trn bt ln m gi tr tng THx c np vo TLx, v tip tc qu trnh m t gi tr ny ti khi xy ra s chuyn i tip theo t FFH v 00H.
Timer Clock

TLx(8bit)

TFx(c trn)

THx(8bit)

Ch nh thi phn chia (mode 3): Timer 0 trong mode 3 c chia thnh 2 b nh thi 8b bit. TL0 v TH0 hot ng nh 2 b nh thi ring r v s dng cc c trn tng ng l TF0,TF1. Timer 1 trong mode 3 ngng lm vic nhng c th hot ng bng cch chuyn n sang mt trong mode khc. iu hn ch duy nht l c trn ca Timer mode khng b nh hng khi xy ra trn Timer1, bi v n c ni n TH0
Timer Clock

TL1(8bit) TL0(8bit)

TH1(8bit) TF0(c trn)

Timer Clock

1/12 FOSC

TH0(8bit)

TF1(c trn)

GVHD:o c Thnh

16

n I:o lng v iu khin tc ng c 2012


III.1.4.h thng ngt. a.gii thiu chung. Ngt ng vai tr trong vic thit k v thc hin cc ng dng ca vi iu khin. Chng cho php h thng p ng mt cch khng ng b n mt s kin v gii quyt s kin khi chng trnh khc khi chng trnh khc ang chy. Chng trnh gii quyt yu cu ca mt ngt gi l th tc phc v ngt ISR. ISR dng p ng li mt ngt v thng l thc hin cc hot ng vo ra i vi mt thit b vo ra ni vi vi iu khin. Khi xy ra mt ngt chng trnh chnh tm dng cng vic ang thi hnh v r nhnh sang ISR, tip theo ISR hot ng p ng yu cu ca ngt v n s kt thc bng lnh quay tr v, chng trnh chnh s hot ng tip tu ngay sau im r nhnh. Chng trnh chnh thc hin mc c bn cn ISR thc hin mc ngt.
Chng trnh chnh

ISR

Ti chng trnh phc v ngt

tr v chng trnh chnh ni xy ra ngt

C ch thc hin ngt b.t chc ngt. AT89C51 c tt c 6 nguyn nhn ngt: hai ngt do bn ngoi, ba ngt do b nh thi, mt ngt do port ni tip. Tt c cc ngt u b cm sau khi h thng khi ng (reset) sau chng c cho php bng phn mm. c. u tin ngt. Mi mt ngun ngt c th c lp trnh t c mt trong 2 mc u tin thng qua thanh ghi chc nng c bit c a ch bit IP tI 0B8H. Thanh ghi GVHD:o c Thnh 17

n I:o lng v iu khin tc ng c 2012


IP b xo sau khi h thng khi ng t cc ngt mc u tin thp hn so vi mc nh. Trong AT89C51 tn tI 2 mc u tin. Khi mt u ngt c mc u tin cao xut hin trong mt ISR c mc u tin thp ang thi hnh th ISR s b ngng li, ISR c mc u tin cao hn s c thc hin. Nu 2 ngt c mc u tin khc nhau xy ra cng mt lc th ngt c mc u tin cao hn s c phc trc:

Thanh ghi IE. Cc bt trong thanh ghi IP (thanh ghi iu khin u tin ngt): Bit IP.7 IP.6 IP.5 IP.4 IP.3 IP.2 IP.1 IP.0 K hiu PY2 PS PT1 PX1 PT0 PX0 a bit BDH BCH BBH BAH B9H B8H ch M t Khng nh ngha Khng nh ngha u tin cho ngt Timer 2 u tin cho ngt cng nI tip u tin cho ngt Timer 1 u tin cho ngt ngoi 1 u tin cho ngt Timer 0 u tin cho ngt ngoi 0 18

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012

d.c ch la chn tun t. Nu c 2 ngt cng mc u tin xy ra ng thi, mt c ch chn la theo th t c sn s xc nh ngt no c p ng trc. Vic chn la theo th t l: External 0, Timer 0, External 1, Timer 1, Serial Port, Timer 2. Qu trnh x l ngt: Khi mt ngt xut hin v n c CPU chp nhn, chng trnh chnh b ngng, cc hot ng tip theo xy ra nh sau: + Thc hin xong lnh hin hnh + B m chng trnh PC c lu vo trong Stack + Lu gi tnh trng ca ngt hin ti + Cc ngun ngt c gi ti mc ca ngt hin ti + Nap vo PC a ch Vector ca ISR + ISR thc hin ISR hot ng p ng li yu cu ngt. ISR kt thc bng lnh RETI c tc dng quay tr v chng trnh chnh, lnh ny s np li gi tr c ca PC trong ngn xp v khi phc tnh trng ca ngt c. Vic thc hin chng trnh chnh tip tc din ra ti ni n tm dng. e.vector ngt. Khi mt ngt c chp nhn th gi tr np vo PC gi l vect ngt. N chnh l a ch bt u ca ISR tng ng vi ngt c chp nhn. * Hm ngt: Void tenhamngat(void) interrupt ngun ngt { // Chng trnh ngt y } GVHD:o c Thnh 19

n I:o lng v iu khin tc ng c 2012


* Ch v hm ngt. - Hm ngt khng c tr li hay truyn bin vo hm - Tn hm bt k - Interrupt l hm ngt phi phn bit vi hm khc - Ngun ngt t 0-5 theo bng vecto ngt - Bng thanh ghi Ram chn t 0-3 Sau y l bng cc vect ngt Ngt System reset External 0 Timer 0 External 1 Timer 1 Serial Port Timer 2 C RST IE0 TF0 IE1 TF1 RI or TI TF2 or EXF2 Bng:Cc vecto ngt. a ch Vector 0000H 0003H 000BH 0013H 001BH 0023H 002BH

III.2.cm bin tc (encoder).


III.2.1.cu to v phn loi encoder. III.2.1.1.phn loi. Gm : encoder kiu cm ng. encoder tng i(encoder m xung). GVHD:o c Thnh 20

n I:o lng v iu khin tc ng c 2012


III.2.1.2.cu to v nguyn l hot ng ca mi loi encoder. a.encoder kiu cm ng.( Absolute encoder) cu to. - Gm mt nam chm vnh cu N-S trn c mt cun dy. - Mt bnh rng trn c p rng.bnh rng c gn trn trc quoay ca ng c.

nguyn l hot ng. Khi ng c quoay vi tc n(vong/pht) th bnh rng cng quoay vi tc n(vong/phut) th t thng ca nam chm vnh cu gi qua cun dy s bin thin.lm xut hin trn hai cun dy mt sc in ng E c tn s ph thuc vo tc quoay ca bnh rng. n = 60f/p hoc n=60f/N Trong : p:s rng trn bnh rng hay s l. n :tc ca c (vong/phut). N:s xung/vng ca encoder. f :tn s ca sc t ng to ra trn hai u cun dy. Ch cn o c tn s xung f ny ta c th xc nh c tc ca ng c. GVHD:o c Thnh

21

n I:o lng v iu khin tc ng c 2012


b.encoder tng i (encoder m xung). Cu to. - Mt led hng ngoi (b pht). - Mt transistor quang P.TZT (b thu). - a m ha:nm gia led hng ngoi (b pht) v transistor P.TZT (b thu).

Cu to trong ca encoder tng i. Nguyn tc hot ng. - to m xung th mi b ENCODER s s dng hai led pht v tng ng l hai b tch sng (hai con mt thu) .hai led c t sao cho hai tn hiu ra c pha vung gc nhau xc nh chiu quoay ca a(tng ng vi chiu quoay ca ng c).

Tc quoay ca a c xc nh nh vo tn s ca tn hiu.chiu c xt bng cch xem tn hiu no sm pha hay mun pha hn.

GVHD:o c Thnh

22

n I:o lng v iu khin tc ng c 2012

B encoder trong thc t gn trn ng c thng c 4 dy trong : - Dy :l dy ngun 5V. - Dy xanh l :GND - Dy vng v dy trng l hai tn hiu lch pha nhau 90 dng o tc ng c.

GVHD:o c Thnh

23

n I:o lng v iu khin tc ng c 2012 III.3.Led 7seg.


Led 7seg c th coi l mt tp hp ca 7 led n ghp li di dng cc thanh to ra .c hai loi led 7 thanh l loi catot chung v loi anot chung. 8 led n trn led 7 on c Anode(cc +) hoc Cathode(cc -) c ni chung vi nhau vo mt im, c a chn ra ngoi kt ni vi mch in. 8 cc cn li trn mi led n c a thnh 8 chn ring, cng c a ra ngoi kt ni vi mch in. Nu led 7 on c Anode(cc +) chung, u chung ny c ni vi +Vcc, cc chn cn li dng iu khin trng thi sng tt ca cc led n, led ch sng khi tn hiu t vo cc chn ny mc 0. Nu led 7 on c Cathode(cc -) chung, u chung ny c ni xung Ground (hay Mass), cc chn cn li dng iu khin trng thi sng tt ca cc led n, led ch sng khi tn hiu t vo cc chn ny mc 1.

V led 7 on cha bn trong n cc led n, do khi kt ni cn m bo dng qua mi led n trong khong 10mA-20mA bo v led. Nu kt ni vi ngun 5V c th hn dng bng in tr 330 trc cc chn nhn tn hiu iu khin. S v tr cc chn c b ch nh sau:

GVHD:o c Thnh

24

n I:o lng v iu khin tc ng c 2012


Trong :cc in tr 330 m mc ngoi dng hn dng qua led 7 thanh khi n c ni vi ngun in p 5V. M led 7 thanh: - M cho led 7 thanh anot chung (cc led n sng mc logic 0):
S hin th trn led 7 on M hin th led 7 on dng nh phn hgfedcba 0 1 2 3 4 5 6 7 8 9 A B C D E F 11000000 11111001 10100100 10110000 10011001 10010010 11000010 11111000 10000000 10010000 10001000 10000011 11000110 10100001 10000110 10001110 10111111 C0 F9 A4 B0 99 92 82 F8 80 90 88 83 C6 A1 86 8E BF M hin th led 7 on dng thp lc phn

- M led 7 thanh cato chung (cc led sng mc logic 1):


S hin th trn led 7 on 0 1 2 3 4 M hin th led 7 on dng nh phn 00111111 00000110 01011011 01001111 01100110 M hin th led 7 on dng thp lc phn 3F 06 5B 4F 66

GVHD:o c Thnh

25

n I:o lng v iu khin tc ng c 2012


5 6 7 8 9 A B C D E F 01101101 01111101 00000111 01111111 01101111 01110111 01111100 00111001 01011110 01111001 01110001 01000000 6D 7D 07 7F 6F 77 7C 39 5E 79 71 40

III.4.mch cu H.
III.4.1.nguyn l hot ng ca mch cu H Mt mch cu H dn gin c dng nh s sau:

Theo s trn ta mch cu H gm c: - Dy cp ngun +V. - Dy cp mass GND. - 4 kha ng m. Khi kha A1 v A2 ng th dng chy t ngun +V qua A1,MOTOR,A2 => ng c chy thun. GVHD:o c Thnh

26

n I:o lng v iu khin tc ng c 2012


Khi kha B1 v B2 ng th dng chy t ngun +V qua B1,MOTOR,B2 => ng c quoay ngc. Cc kha ny c th ng m c bt c lc no.Chng ta c 4 kha vy s c 16 trng thi.Tuy nhin ch c 4 trng thi l c s dng.Nhng trng thi cn li s khng hot ng v nu hot ng s gy chy n.Trong qu trnh iu khin chng ta phi lun trnh cc trng thi khng mong mun.Cch thc hot ng c tm tt nh bng sau. A1 1 0 1 0 1 0 B1 0 1 1 0 0 1 A2 1 0 0 1 0 1 B2 0 1 0 1 1 0 Trng thi ca ng c Quoay thun Quoay nghch Hm ng c Hm ng c Chp in Chp in

y ta xt: A,Bx = 1l ng cng tc. A,Bx = 0 l m cng tc. T bng trn ta nhn thy,cu H ch dng vi 4 trng thi u tin.V vy khi s dng cn thit phi trnh cc trng thi khng mong mun. Mch cu H chng ta dng iu khin chiu quoay ca ng c .C rt nhiu loi mch cu H khc nhau nh:mch cu H bn dn,mch cu H tch hp.mch cu H dng rle III.4.2.gii thiu v L298 (IC mch cu H). IC L298 l mch tch hp n chip c kiu v cng sut 15 chn (multiwatt 15) v POWERSO20 (linh kin dn cng sut). IC L298 l mt mch cu i (dual full- bridge ) c kh nng hot ng in p cao,dng cao. in p cp ln ti 46V Tng dng mt chiu chu c ti 4A in p bo ha Chc nng bo v qu nhit Logic 0 t 1.5V tr xung 27

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012

Dng ng v ca L298.

Cc gi tr c trng:

GVHD:o c Thnh

28

n I:o lng v iu khin tc ng c 2012


S chn v cu trc bn trong:

s chn Chc nng cc chn. MW.15 powerSO Tn 1,15 2,19 senseA ,senseB 2,3 4,5 Out 1,out 2 4 6 VSS

cu trc bn trong

5,7 6,11

7,9 8,14

Input1, Input 2 enableA enableB

8 9 10,12

1,10,11,20 GND 12 VSS 13,15 Input 3

Chc nng Chn ny qua in tr cm ng dng xung GND iu khin dng ti Ng ra ca cu A,dng ca ti mc gia hai chn ny c quy nh bi chn 1. Chn cp ngun cho tng cng sut.cn c mt t in 100nF ni gia chn ny vi chn GND Chn ng vo ca cu A,tng thch chun TTL. Chn ng vo enable(cho php) tng thch chun TTL.mc thp chn ny s cm ng ra cu A (i vi chn enableA)hoc cu B (vi enableB). Chn t (ground) Cp ngun cho khi logic,cn 1 t 100nF ni gia chn ny vi GND. Cc chn ng vo cu B 29

GVHD:o c Thnh

n I:o lng v iu khin tc ng c 2012


13,14 15,17 3,18 ,input 4 Out 3, Out 4 N.C Ng ra ca cu B,dng ca ti mc gia hai chn ny c quy nh bi chn 15. Khng kt ni (b ng)

III.5.ng c in mt chiu DC.

Hnh nh thc t ca ng c DC v encoder

Cu to bn trong ca ng c in mt chiu. ng c in mt chiu l ng c in hot ng vi dng in mt chiu. Cu to ca ng c gm c 2 phn: stato ng yn v rto quay so vi stato. Phn cm (phn kch t-thng t trn stato) to ra t trng i trong mch t, xuyn qua cc vng dy qun ca phn ng (thng t trn rto). Khi c dng in chy trong mch phn ng, cc thanh dn phn ng s chu tc ng bi cc lc in t theo phng tip tuyn vi mt tr rto, lm cho rto quay. Chnh xc hn, lc GVHD:o c Thnh 30

n I:o lng v iu khin tc ng c 2012


in t trn mt n v chiu di thanh dn l tch c hng ca vect mt t thng B v vect cng dng in I. Dng in phn ng c a vo rto thng qua h thng chi than v c gp. C gp s gip cho dng in trong mi thanh dn phn ng c i chiu khi thanh dn i n mt cc t khc tn vi cc t m n va i qua (iu ny lm cho lc in t c sinh ra lun lun to ra mmen theo mt chiu nht nh).

GVHD:o c Thnh

31

n I:o lng v iu khin tc ng c 2012


CHNG IV:THIT K V GIA CNG PHN CNG

IV.1.mch ngun nui.


Trong thc t ngy nay i vi cc vi iu khin,ICngi ta a s dng mc tng thch TTL hn l CMOS.mc TTL th IC TTL dng c v IC CMOS cng dng c (cc IC c di in p 3:8v).Mc TTL c chun dng 5V v chun m 0 V.cc chp vi iu khin,IC TTLi hi phi c ngun cung cp n nh 5V(giao ng t 4.75 ti 5.25) nu in p khng nm trong gii m xung thp hn th IC khng hot ng,cao hn th IC chy hng.Do trong cc thit k mch s dng IC phi cung cp cho chng mt ngun nui n nh khng ln xung theo in p ngun cp vo.

Mch ngun n p 5v.

GVHD:o c Thnh

32

n I:o lng v iu khin tc ng c 2012


Mch in ca khi ngun.

Mch ny s dng: - Mt IC n p LM 7805. - Mt led n :bo trng thi c ngun. - 4 t:chng nhiu v san phng in p

IV.2.encoder

Khi tai sng t led hng ngoi chiu vo chn B ca transistor quang lm ni tr Rce ca transistor gim mc 0 c a vo chn dng (+) ca OPAM lc my u ra ca b khuch i thut ton l 0. a m ha c gn trn trc ng c dn ti khi ng c quoay c lc a s chn tia sng chiu t led quang ti chn B ca transistor lm cho ni tr Rce ca transistor tng ln a in p dng (5V) vo chn dng (+) ca OPAM lm cho u ra ca b khuch i l mc dng. Bin tr:R9 to in p so snh.

GVHD:o c Thnh

33

n I:o lng v iu khin tc ng c 2012


Hai mc 0 v 1 c a v chn ngt ca VXL m .to mt bin m m s ln ngt t ta c th xc nh c tc ng c.

IV.3.mch VK 89c51.

S nguyn l

GVHD:o c Thnh

34

n I:o lng v iu khin tc ng c 2012


CHNG V:TNH TON THAM S V THIT K PHN MM

V.1.tnh ton tham s. V.1.1.tnh ton gi tr np vo cho timer0 v timer1. a. Phn tch la chn phng n o tc bng encoder: phng n 1:Tnh s cnh sung trong khong thi gian Ts (sampling time) suy ra vn tc trung bnh ca ng c (Pulse/Ts). phng n 2:Tm thi gian sut hin hai cnh xung lin tip ca encoder t c th suy ra vn tc trung bnh ca ng c.

b.Phn tch la chn phng n: Phng n 1: - S dng phng n ny ta cn mt timer nh thi gian ly mu v mt counter dm s xung. - Nu s dng phng n 1 s b gii hn v mt p ng do encoder gy ra (s xung qu ln,trn counter/hoc encoder c phn gii thp th thi gian ly mu Ts phi ln gim thiu sai s o c) Phng n 2: Nu dng phng n ny GVHD:o c Thnh 35

n I:o lng v iu khin tc ng c 2012


- ta cng cn 1 counter nh thi gian v 1 chn (c th l counter/ngt ngoi/1 chn in/out bnh thng). - thi gian thc thi chim hu ht thi gian hot ng ca MCU nn s dng mt thit b (device) ring bit lm nhim v ny. - Trong thut gii ca MCU MASTER ,dng giao tip song song gim thiu thi gian ly mu,tt nhin cn giao thc bt tay m bo nhn ng d liu,chiu quoay ca ng c cng c ENCODER READER CARD nhn v gi ln. c.la chon phng n Trong ti ny chng em chon phng n 1 v : - n gin - Tn t thit b hn phng n 2 - Gii thut n gin. d.tnh ton vi phng n chn o tc ng c ngi ta s lm nh sau:

Timer 0 encoder

Ts

TF=1

Counter 1

Hnh 1.s c tc t encoder. - S dng Timer 1 ch 1 dng lm counter m s xung cnh ca encoder. - S dng timer 0 nh thi gian ngt (Ts) thi gian ny c lp trnh c th thay i ty vo mc ch , ca ngi s dng.nhng chng ta nn chon Ts sao cho vic tnh ton tc ng c l n gin nht: Ta c:

GVHD:o c Thnh

36

n I:o lng v iu khin tc ng c 2012


Gi s trong Ts (c xc nh bi b nh thi timer0) th timer1 ch count1 m c count xung c minh ha nh hnh v di: count

Ts
Ts (s) nn tn s xung l f=1/T count 60 f 60.count Suy ra: c tc ng c l: n (vong/giay) N N .Ts

Th ta c chu k ca xung l : T

cho vic tnh ton tc ng c c d dng chng ta nn chn :


60 1 N .Ts

khi tc ng c ch n gin l :

n=count (vong/giay). Vy l by gi chng ta ch vic hin th con s count ln thit b hin th (trong n ny th thit b hin th l led 7seg)
Trong bi ny chng em dng encoder N = 100xung/vong.nn t biu thc trn ta c:
60 1 Ts=0.6 (s). 100.Ts

Tn s thch anh ca 8051 l 12MHz => mi nhp xung ng h c :


T0 =12/f=1us

Suy ra s nhp cn cho VK (c tn s thch anh f=12MHz) trong thi gian 0.6(s) l:
0.6 600000 =12.50000 >65536 do ta np cho cc thanh ghi TH0 v 106

TL0 ca vi iu khin gi tr:65536-50000=15536D=3C0B H TH0=0x3C v TL0=0xB0. V cn cho VK chy lp li 12 ln m bo T=12.500000. 10 6 =0.6 (s).

GVHD:o c Thnh

37

n I:o lng v iu khin tc ng c 2012


V.1.2.tnh ton gi tr np cc thanh ghi ca cho timer2 thc hin PWM. To mt xung c tn s f=1kHz T=1/1000=0.001s=1000us=1000 chu k my.chng ta to PWM vi 10 cp iu chnh tc l phi to c xung 10%,20%,30%....100%.mt xung nh sau: T1
5V

0v
T

Trong :T1 l khong thi gian xung mc cao 5V T l chu k ca xung. Xung % tc l T1/T= %= /100.

- Xung PWM s c a ra iu khin L298 thng qua rng xung.khi khng c xung ng c khng quoay,khi 100% xung th ng c quoay max.tuy xung phi ln hn mt mc no mi khi ng ng c. - c th thay i 10 cp vi chu k T=1000us th ta phi khi to cho ngt timer2:100us ngt 1 ln . - S dng timer2 vi ch t np 16bit th ta phi np cho RCAP2H;RCAP2L cc con s :65536-100=65436=FF9C H. RCAP2H=0xFF v RCAP2L=0x9C. V.1.3.mt s tnh ton khc. - Do cng P0 ca vi iu khin 89C52 c dng

GVHD:o c Thnh

38

n I:o lng v iu khin tc ng c 2012

Nh vy cn c in tr treo khong 10K (hoc 4.7k)

GVHD:o c Thnh

39

n I:o lng v iu khin tc ng c 2012


V.2.lu thut ton a.lu chng trnh ca mch.

start

Khi to: -timer 0:ch 16bit (50.000us). -timer2 :ch 16bit. - timer 1:ch count1 16 bit
2

Kim ta mt n

QT

QN

TT

GT

STOP

TR2=1

PWM

Tin hieu K ng C

ng c

END

GVHD:o c Thnh

40

n I:o lng v iu khin tc ng c 2012

Xung encoder

Count 1

Ngt timer0

Dem ++

Dem ==12

Hien thi

b.cc lu chng trnh con v cc hm chc nng. Chng trnh to tr: Delay(long time)
Long k=0

S K++==time

GVHD:o c Thnh

exit

41

n I:o lng v iu khin tc ng c 2012


Chng trnh khi to:

Khoitao(void)

P3=0xFF TMOD=0x51 IE=0xAA TR0=1 TR1=1 TH0=0x3C TL0=0xB0 T2CON=0x04 RCAP2H=0xFF RCAP2L=0x9C ET2=1 EA=1 TR2=1

GVHD:o c Thnh

42

n I:o lng v iu khin tc ng c 2012


Hm khi ng ng c quoay thun.

Qoay thuan(void)

P1.2==0

P1.5=0 P1.6=1 Xung =0x01 Phantramxung=6

Return phantramxung

Note:P1.5 v P1.6 l cc chn iu khin sng led thng bo l ang chy thun hay chy nghch.

GVHD:o c Thnh

43

n I:o lng v iu khin tc ng c 2012

Hm khi ng ng c quoay ngc.

Quoay nguoc(void)

P1.4==0

P1.5=1 P1.6=0 Xung=0x02 Phantramxung=6

Return phantramxung

GVHD:o c Thnh

44

n I:o lng v iu khin tc ng c 2012

Hm khi tao dng ng.

Dung(void)

P1.3==0

P1.5=1 P1.6=1 Phantramxung=0

Return phantramxung

GVHD:o c Thnh

45

n I:o lng v iu khin tc ng c 2012


hm tng tc : tangtoc

Phantramxung >0

P1.0==0

P1.0==0

Phantramxung ++

Phantramxung >9

Phantramxung=10

Return phantramxung

GVHD:o c Thnh

46

n I:o lng v iu khin tc ng c 2012

Hm gim tc :

giamtoc

P1.1==0

P1.1==0
S

Phantramxung --

Phantramxung <=1

Phantramxung=1

Return phantramxung

GVHD:o c Thnh

47

n I:o lng v iu khin tc ng c 2012


Hm hin th ch s ra cc PORT. Chuso(usigned char x) trong :X l tham s truyn cho hm

X=0

P0=0x40;break

X=1

P0=0x79;break

X=2

P0=0x24;break

X=3

P0=0x30;break

X=4

P0=0x19;break

X=5

P0=0x12;break

X=6

P0=0x02;break

X=7 X=8

P0=0x78;break

P0=0x00;break

X=9 GVHD:o c Thnh

P0=0x10;break

return

48

n I:o lng v iu khin tc ng c 2012


Hm hin th s .
tham s truyn cho hm l n,m Hienthiso(long n,long m)

int a,b,c,d,e; n=m*255+n e=n/10000; n=n-10000*e a =n/1000 n=n-1000*a b=n/100 n=n-100*b c=n/10 n=n-10*c d=n P3.0=1 Chuso(a);delay(1);P3.0=0 P3.1=1 Chuso(b);delay(1);P3.1=0 P3.2=1 Chuso(c);delay(1);P3.2=0 P3.3=1 Chuso(d);delay(1);P3.3=0 GVHD:o c Thnh 49

n I:o lng v iu khin tc ng c 2012


Chng trnh ngt timer0.

ISR_timer0

TR0=0 TR1=0 dem++ TH0=0x3C TL0=0xB0

Dem==12

Count1=TL1 Count2=TH1 TL1=TH1=0 dem=0

TR0=TR1=1

GVHD:o c Thnh

50

n I:o lng v iu khin tc ng c 2012


Hm to xung PWM s dng timer2.

ISR_timer2

TR2=TF2=0 chay++

Chay<=phantramxung

P2=xung

P2=0

Chay==10
S

Chay=0

TR2=1
Note:khi chy thun th P2.0=1 <=> xung=0x01 cn khi chy ngc th P2.1=1<=>xung=0x02. GVHD:o c Thnh 51

n I:o lng v iu khin tc ng c 2012


V.2.code c vit bng C. /*********************Mo ta chuong trinh******************/ /*******Chuong trinh do luong va dieu khien dong co DC *******/ /******************** sinh vien thuc hien ******************* TRNG VN TRNG SHSV:20092846 LP :DK&TH 4-K54 | PHAN CNG TON 20092784 | SHSV :20092784 | LP :K&TH 4-K54

**********************************************************/

#include <REGX52.H> int count1=0,count2=0; int dem=0; long k; void khoitao(void){// Ham khoi tao P3=0xFF; TMOD=0x51; IE=0xAA; TR0=1; TR1=1; TH0=0x3C; TL0=0xB0; //T2MOD=0xc9;//Timer 2 che do 2 8 bit auto reload,tine1 16 bit T2CON=0x04; //timer 2 o che do tu nap 16 bit va nap boi RCAPL2 GVHD:o c Thnh

52

n I:o lng v iu khin tc ng c 2012


RCAP2H=0xFF; //Cho timer2 o che do dem 50.000 micro giay RCAP2L=0x9C; ET2=1;// Cho phep ngat timer 0 EA=1;// Cho phep ngat toan cuc TR2=1;// Chay timer 0 bat dau dem so chu ki may } /****************Chuong trinh tao tre ***********************/ void delay(long time){ for (k=0;k<time;k++) } /************************Ngat timer 0 **********************/ void timer()interrupt 1{ TR0=0; TR1=0; dem++; TH0=0x3C; TL0=0xB0; {;}

if(dem==12){ count1=TL1; count2=TH1; TL1=TH1=0; GVHD:o c Thnh 53

n I:o lng v iu khin tc ng c 2012


dem=0; } TR0=1; TR1=1; } /********************ngat tiner2 tao PWM******************/ unsigned char xung; unsigned char phantramxung; unsigned char chay=0;// Khai bao bien dem de dem tu 1 den 10 void timer2(void) interrupt 5{ //Ngat timer 2 TR2=0; TF2=0; chay++; if(chay<=phantramxung) P2=xung; // Neu bien dem < phan tram xung thi dua gia tri 1 ra chan else P2=0x0F; moi TR2=1; // Cho chay timer } /*******************Ham tang toc****************************/ char tangtoc(void){//ham tang toc dong co if(phantramxung>0){ GVHD:o c Thnh 54 // Neu dem = phan tram xung // Dung chay timer 2

if(chay==10) chay=0; // Neu dem du 10 thi gan lai bang 0 de bat dau chu ki

n I:o lng v iu khin tc ng c 2012


if (P1_0==0){//neu nut tang duoc bam while(P1_0==0){ //nut dang giu; ; } phantramxung++; if (phantramxung>9) phantramxung=10; } } return phantramxung; } /**************************Ham giam toc*********************/ char giam(void){//ham giam toc dong co if (P1_1==0){//neu nut giam duoc bam while(P1_1==0){ //nut dang giu; ; } phantramxung--; if (phantramxung<=1) phantramxung=1; } return phantramxung; } /************************ham khoi dong**********************/ GVHD:o c Thnh 55 //khong lam j ca; //khong lam j ca;

n I:o lng v iu khin tc ng c 2012


char quoaythuan(void){//ham khoi dong dong co if(P1_2==0){ P1_5=0; P1_6=1; xung=0x01; phantramxung=6; } return phantramxung; } /*********************ham quay nguoc*************************/ char quaynguoc(void){//ham khoi dong dong co if(P1_4==0){ P1_5=1; P1_6=0; xung=0x02; phantramxung=6; } return phantramxung; } /************************ham dung***************************/ char dung(void){//ham khoi dong dong co if(P1_3==0){ GVHD:o c Thnh 56

n I:o lng v iu khin tc ng c 2012


P1_5=1; P1_6=1; phantramxung=0; } return phantramxung; }

/*********** cac ham dung de hien thi len leg **************/ void chuso(unsigned char x){// Ham dua du lieu ra PORT switch(x){ // Tuy thuoc vao bien dau vao ma dua du lieu ra tu 0...9 //logic 1 tat led, logic 0 bat led case 0: { P0=0x40; break; } // So 0 case 1: { P0=0x79; break; } // So 1 case 2: { P0=0x24; break; } // So 2 case 3: { P0=0x30; break; } // So 3 case 4: { P0=0x19; break; } // So 4 case 5: { P0=0x12; break; } // So 5 case 6: { P0=0x02; break; } // So 6 case 7: { P0=0x78; break; } // So 7 case 8: { P0=0x00; break; } // So 8 case 9: { P0=0x10; break; } // So 9 } GVHD:o c Thnh 57

n I:o lng v iu khin tc ng c 2012


} void hienthiso(long n,long m){ int a,b,c,d,e; n=m*255+n; e=n/10000; n=n-10000*e; a=n/1000;n=n-1000*a; b=n/100;n=n-b*100; c=n/10; n=n-c*10; d=n; P3_0=1;chuso(a);delay(1);P3_0=0; P3_1=1;chuso(b);delay(1);P3_1=0; P3_2=1;chuso(c);delay(1);P3_2=0; P3_3=1;chuso(d);delay(1);P3_3=0; } /************** chuong trinh chinh ***********************/ void main(void){ khoitao(); while(1){ hienthiso(count1,count2); quoaythuan(); tangtoc(); GVHD:o c Thnh 58

n I:o lng v iu khin tc ng c 2012


giam(); dung(); quaynguoc(); }

GVHD:o c Thnh

59

n I:o lng v iu khin tc ng c 2012


CHNG VI:KT LUN VI.1 kt qu ca n. Sau mt thi gian tm hiu nghin cu chng em hon ton bi ton : O LNG V IU KHIN TC NG C Tha mn cc ch tiu k thut d nh,chng trnh c vit trn keilC v c m phong trong proteus cho kt qu nh mong i.y l hnh nh m phng qua proteus:

VI.2.ng dng v phng hng pht trin. 1.ng dng. Mch o v iu khin tc ng c dng xc nh tc ng c mt chiu t C th: - Bit tnh trng hot ng ca ng c.pht hin ng c c chy theo ng thit k ban u khng bit c ng c c b hng hc hay khng. GVHD:o c Thnh 60

n I:o lng v iu khin tc ng c 2012


- iu chnh tc ng c theo yu cu tc nh sn. - Gip ngi vn hnh thit b c thm mt cng c quan st trc quan hn c th nm tnh hnh,hn ch phn no s c k thut sy ravn hnh thit b c tt hn. - Trong cc thit b sn xut,dn dng cn hot ng vi tc n nh. 2.phng hng pht trin. T nhng ng dng thc t m cc thit b o tc ngy cng c quan tm pht trin.c mt trong hng lot cc ngnh khoa hc,trong san xut cng nghip v cuc sng hng ngy.

GVHD:o c Thnh

61

You might also like