161
LUN ÁN T T NGHI P ROBOCON 2007 PH ẦN 1: ĐỊNH HƢỚ NG CHƢƠNG 1: SÂN THI ĐẤ U VÀ LU ẬT CHƠI ROBOCON 2007 I. Sân Chơi: Chủ đề “KHÁM PHÁ VỊ NH H LONG” GVHD: PHAN H ỮU TƢỚ C ĐỘ I: RETURN (CDDT6B) - 1 -

LUẬN ÁN TỐT NGHIỆPROBOCON 2007

Embed Size (px)

Citation preview

LUN N TT NGHIP

ROBOCON 2007

PHN 1: NH HNGCHNG 1: SN THI U V LUT CHI ROBOCON 2007I. Sn Chi:Ch KHM PH VNH H LONG

GVHD: PHAN HU TC I: RETURN (CDDT6B)

-1-

LUN N TT NGHIP II. Lut Chi: 1. Khi qut:

ROBOCON 2007

i (Red) v i xanh (Green) s iu khin cc Robot bng tay (tng trng cho rng m) v Robot t ng (tng trng cho rng con) t ngc trn cc hn o. i no t c ngc trn cng ca o s chim c hn o.i u tin hon tt vic xy dng cc hn o to thnh 3 nh ca ch V khu vc gia sn thi u c coi l i ginh c VICTORY ISLANDS v l i chin thng. Trong trng hp khng c i no ginh c VICTORY ISLANDS th i no ghi c nhiu im hn s thng. Mi trn u ko di 3 pht. Khi ng li (Retry). Khi khi ng li, khng c php thay th bt k b phn no ca Robot. Ngun nui cng khng c php np li hay b sung thm. Trng ti s ton quyn quyt nh nu vic khi ng li lm nh hng n kt qu trn u cng nh vi phm lut thi u. Trng lng Tt c cc Robot bng tay v t ng k c ngun nui, cp, cc b phn khc ca Robot phi c cn trc khi thi u. Tng khi lng ca tt c cc Robot ca mi i trong thi u khng c vt qu 50kg. Cch tnh im Vng ngoi: + 10 hn o trn ng dn th nht k t ngoi vo: 1 im Vng trong: + 5 hn o trn ng dn th 3 k t ngoi vo: 2 im + 5 hn o trn ng dn th 6 k t ngoi vo: 3 im Thng tuyt i: Mt i s ginh c thng tuyt i khi tha mn c hai (2) iu kin sau:

GVHD: PHAN HU TC I: RETURN (CDDT6B)

-2-

LUN N TT NGHIP

ROBOCON 2007

+ i t c ngc trn cng ca ba (3) hn o to thnh ch V dnh cho i mnh gia sn (vng trong). + Ti thiu phi t c hai (2) vin ngc mi hn o k trn, trong c mt (1) vin trn cng v khng c vin no chm vo Robot ca i mnh 2. Robo t ng: Cc robot t ng phi hon ton t ng. Sau khi trn u bt u, tt c cc robot t ng c khi ng ln lt. Mi robot t ng ch c khi ng bng mt (1) ng tc. Sau khi robot c khi ng, cc thnh vin ca i khng c php chm vo robot . Tt c cc Robot t ng phi c t va trong khong khng gian 1000mm L x 1000mm W v 1500mm H ti vng xut pht trc khi khi ng. Hnh dng v kch thc ca Robot t ng c th thay i nhng khng c vt qu 2000mm theo chiu cao v 1500mm theo chiu rng (tnh theo mt chiu bng v theo mi hng) Khi trn u bt u, Cc Robot t ng c th c tch ra nhng s lng khng c vt qu ba (3) Robot. Cc b phn tch ra t robot t ng c xem l mt robot t ng khc, v vy n phi hot ng ging nh mt robot t ng thc s . Cc Robot t ng khng mang ngc khng c php xm phm khu vc xung quanh vng xut pht ca Robot t ng ca i bn trong vng 30 giy u trn u. Xem hnh v bit thm chi tit. in p ngun nui cc Robot phi nh hn hoc bng 24VDC. 3. Robo iu khin bng tay: Robo iu khin bng tay phi c hot ng thng qua b iu khin s dng cp hoc b iu khin t xa bng hng ngoi, tia nhn thy c hoc sng m. Robo iu khin bng tay ch c php hot ng vng bng tay v vng ngoi.GVHD: PHAN HU TC I: RETURN (CDDT6B)

-3-

LUN N TT NGHIP

ROBOCON 2007

Robo iu khin bng tay c nhim v gp khu kin xy dng c t trn sn nhu hnh v n cc o 1 im v vng cha ngc ca Robo t ng t vo y. Robo iu khin bng tay khng c xm phm vng t ng nu khng s bi tr im ty theo thi gian xam phm Robo iu khin bng tay khng c chm vo robo t ng Mi i ch c c 1 con Robo iu khin bng tay khng cao qu 1,5 mt khi vng xut pht ( 1m-1m). khi di chuyn c th bung ln cao nhng khng qu 2m.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

-4-

LUN N TT NGHIP

ROBOCON 2007

CHNG 2: HNG PHT TRIN CA ROBO TRONG THC T I. S nh kho:

Ch ly hng. Ch chuyn hng. Ch xp hng vo.

Vng ngoi. Vng hot ng ca robo ly hng. Vng hot ng ca robo xp hng.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

-5-

LUN N TT NGHIP

ROBOCON 2007

S nh kho da trn s sn thi u Robocon 2007 vi kch thc dc trnh by nh trn hnh v di y.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

-6-

LUN N TT NGHIP

ROBOCON 2007

II. Hng di chuyn ca robo ly hng:

u tin robo ly hng ng v tr nh hnh v. Sau ta iu khin trn my vi tnh cho robo hot ng. Robo di chuyn theo hng mi tn s 1 n ch ly hng ( mu xanh l cy). Sau gp hng i v quay u li di chuyn ti v tr giao hng. Khi ti v tr giao hng ta s iu khin cho robo b hng xung v quay u li di chuyn theo hng s 3 tip tc ly hng.GVHD: PHAN HU TC I: RETURN (CDDT6B)

-7-

LUN N TT NGHIP

ROBOCON 2007

III. Hng di chuyn ca robo xp hng:

u tin robo ly hng ng v tr nh hnh v. Sau ta khi ng cho robo hot ng. Robo di chuyn theo hng mi tn s 1 n ch ly hng ( mu en) do robo ly hng t xung. Robo s kim tra xem c hng t vo cha. Nu cha c hng th robo s ng ch ti khiGVHD: PHAN HU TC I: RETURN (CDDT6B)

-8-

LUN N TT NGHIP

ROBOCON 2007

c hng th mi di chuyn ti ly hng. Cn nu c hng th robo s gp hng, quay u li di chuyn theo hng mi tn s 2 v quo tri di chuyn theo hng mi tn s 3 xp hng vo v tr 1. Robo s kim tra xem c hng t vo cha. Nu c hng t vo ri th robo s di chuyn theo hng 3-2-4 n v tr t hng th 2 v robo s xt tip hng v tr 2. Nu c hng s di chuyn qua v tr 3, cn cha c hng th robo s xp hng vo v di chuyn ti v ttr ly hng xp hng vo v tr s 3. Cn nu v tr 1 khng c hng th robo s xp khi hng vo v di chuyn theo hng mi tn 3-2-1 ly khi hng tip theo. Khi robo s xp hng vo v tr tip theo cho n khi 3 v tr xp hng y th robo s ng v tr xut pht v chng ta c th cho robo ngng hot ng.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

-9-

LUN N TT NGHIP

ROBOCON 2007

PHN 2: C KHI. TNG QUAN: Do kinh nghim v c kh cn hn ch nn chng em thit k robo c c cu n gin. Tuy nhin robo vn p ng c yu cu ca ti l: gp hng, nh hng, nng hng, h hng, di chuyn theo ng line. Sau y l hnh nh c cu robo ca chng em:

Nhn nghing

Nhn thng

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 10 -

LUN N TT NGHIP Robo chng em c c cu gm 3 phn: - Phn . - Phn trc nng h cng. - Phn cng kp. II.CHI TIT: 1. Phn :

ROBOCON 2007

Phn l mt khung nhm c kch thc 25x38 mm, gm 2 phn: phn chnh v phn ng c, c b tr nh sau: - Phn chnh: Pha trc l 2 cng nh v nh v v nhn bit hng. Na trc ca dng t mch.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 11 -

LUN N TT NGHIP

ROBOCON 2007

Na sau ca : gia l phn kt ni vi trc nng h qu, hai bn c b tr lm khai 2 acqui. - Phn ng c: Phn ng c l mt tm nhm dy 3 ly c un hnh ch U gn 2 ng c. Pha trn chng em tn dng khang trng t thm acqui th 3.

Phn chnh v phn ng c c kt ni vi nhau tuy nhin khng c nh vi mc ch l khc phc tnh trng cc bnh robo khng tip xc u trn mt t do hin tng hay mt sn khng phng gy ra. Gii php chng em a ra l kt ni hai b phn thng qua mt trc, v vy chng c th c ng c lp thng qua trc .GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 12 -

LUN N TT NGHIP 2. Phn trc nng h hng:

ROBOCON 2007

Phn trc nng h hng l mt thanh nhm c kch thc 38x76 mm. y l phn kt ni vi b phn cng kp c th nng h qu theo phng thng ng.

PHN TRC NNG H QU

cng kp c th di chuyn trn trc, pha trc trc chng em gn mt sn cam to thnh mt ng ray. T cng kp c th chuyn ng thng qua nhng xoay trn sn cam ny.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 13 -

LUN N TT NGHIP

ROBOCON 2007

Trn thn trc chng em phay nhng l trn c khang cch u nhau. iu ny c tc dng lm gim trng lng cho robo, ng thi chng em dng nhng l trng ny m xung, t c th n nh cho cng kp di chuyn trn mt khang ty .

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 14 -

LUN N TT NGHIP

ROBOCON 2007

Pha trn trc chng em b tr mt bn phm iu khin chng ta c th ng va quan st va iu khin, rt tin li.

3. Phn cng kp:

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 15 -

LUN N TT NGHIP Phn cng gm c hai phn: phn hp nng v phn cng kp. - Phn hp nng:

ROBOCON 2007

Pha sau: chng em t hai ng ln vi mc ch l chu lc cho phn cng kp pha trc v gip cng trt ln xung d dng. Pha trc: gm mt ng ln di, v mt ng c nng c gn nhng trt trn sn cam.

Chng em t ng c nng pha trc vi mc ch l to ra s cn bng cho c b phn cng kp pha trc. Bnh thng, vi khi lng ca b phn cng kp s lm cho c b phn cng v hp nng v pha trc. Lc ny 2 ng ln pha sau s chu lc chnh. Khi nng cng, ng c cun ln trn sn cam, ng thi lc xoay ca ng c cng tc ng lc ch yu ln phn cng pha trc, to ra s cn bng lc , gip cho nng cng d dng hn. Tuy nhin khi h cng, lc chi ca cng s c lc xoay ng c tng thm. Do lc ny khng ch c 2 ng ln pha sau chu lc m cn c c ng ln pha trc na.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 16 -

LUN N TT NGHIP - Phn cng kp:

ROBOCON 2007

c thit k theo qui tc hnh bnh hnh, trong thn cng c nh. V vy mun cng y ra pha trc v kp c ch cn tc dng lc ln mt cnh ca cng theo phng hng v trc. bin i lc xoay ca ng c thnh lc y tnh tin chng em dng mt thit b gi l co y. Co y gm 1 trc c ren c gn vo trc ng c, phn cn li ging nh ai c trt tnh tin trn trc khi trc xoay, t tc dng lc tnh tin ln cng.

Pha trc cng chng em t 4 thanh nhm theo phng thng ng gip c ng qu khi c 2 hng tr ln chng ln nhau. V hng c kp cht, chng em bc xp cho 4 thanh nhm to ma st nhng khng nh hng qu.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 17 -

LUN N TT NGHIP

ROBOCON 2007

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 18 -

LUN N TT NGHIP

ROBOCON 2007

PHN 3: THIT K MCH IU KHINCHNG 1: TNG QUTMch trong robo t ng gm 4 khi: khi ngun, khi cm bim, khi vi x l, khi ng c c thit k theo s sau:

KHI CM BIN

KHI VI X L

KHI NG C

KHI NGUN

Khi ngun c nhim v cp cho tt c cc khi. Khi ngun gm 3 ngun: 5V, 15V, 24V. Ngun 5V cp cho khi vi x l v khi cm bin. Ngun 12V v 24V cp cho khi ng c. Khi cm bin c nhim v chuyn i tn hiu quang v tn hiu c hc thnh tn hiu in cp cho vi x l. Khi cm bin gm 2 phn: cm bin quang hc v cm bin c hc. Khi vi x l l khi quan trng nht v n iu khin gin tip mi hot ng ca robot thng qua khi ng c. Ty thuc vo tn hiu t khi cm bin a vo, da vo chng trnh lp trnh, vi x l phn tch gii m xut tn hiu iu khin ph hp n khi ng c. Khi ng c c nhim v nhn tn hiu t vi x l iu khin cc motor bnh xe v cc motor b qu.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 19 -

LUN N TT NGHIP

ROBOCON 2007

CHNG 2 : GII THIU CC LINH KIN S DNGI. in tr:in tr l mt linh kin th ng c tnh cn tr dng in v lm mt s chc nng khc ty thuc vo v tr ca in tr trong mch in. n v: ohm(), Kohm(K), Mohm(M) 1M = 1000K = 1000000.

1. in tr than:in tr than l lai in tr c tr s c nh, c s dng nhiu nht trong mch in. in tr than l hn hp l hn hp ca bt than v cc cht khc, ty t l pha trn m in tr c tr s ln hay nh. Bn ngoi in tr c bc lp cch in.

K hiu : Tr s ca in tr c ghi bng cc vng mu theo qui c ca Hoa K nn thng c goi l vng mu Hoa K. Mu en Nu Cam Vng Xanh l Xanh dng Tm Xm Trng Vng kim Bc Vng s 1 (s th nht) 0 1 2 3 4 5 6 7 8 9 Vng s 2 (s th hai) 0 1 2 3 4 5 6 7 8 9 Vng s 3 (s bi) x100 x101 x102 x103 x104 x105 x106 x107 x108 x109 x10-1 x10-2 Vng s 4 (sai s)

Trng hp c bit, nu khng c vng s 4 (loi in tr c 3 vng mu) th sai s l +/- 20%.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 20 -

LUN N TT NGHIP

ROBOCON 2007

Hin nay, ngi ta c th ch to cc loi in tr thanh c nm vng mu l loi in tr c chnh xc cao. Lc , vng s 1, 2, 3 l vng s; vng s 4 l s bi; vng s 5 l sai s.

2. Bin tr (Variable Resistor ,vit tt l VR):Bin tr c cu to gm mt in tr mng than hay dy qun c dng hnh cung gc quay 270o. C mt trc xoay gia ni vi con trt lm bng than (cho bin tr dy qun) hay lm bng kim loi (cho bin tr than), con trt s p ln mt in tr to kiu ni tip xc lm thay i tr s in tr khi xoay trc. Bin tr dy qun l loi bin tr tuyn tnh c t s in tr t l gc xoay. Bin tr than c loi bin tr tuyn tnh, c loi bin tr thay i theo tr s hm logarit. K hiu:

3. Quang tr (Photo Resistor):Quang tr thng c ch to t cht sulfur-catmium nn trn k hiu thng ghi ch CdS. Quang tr c tr s thay i ln hay nh ph thuc vo cng nh sng chiu vo n. Nu cng nh sng chiu vo cng ln th gi tr in tr s gim nh. Khi cng nh sng chiu vo cng nh th gi tr in tr s tng

II. T in:L loi linh kin th ng c tnh tch tr nng lng in. c trng cho kh nng tch in ca t dng i lng gi l in dung C. C=s d

: l hng s in mi ty thuc vo cht in mi. s: l

tit din bn cc c n v (m2 ). d: l b mt lp in mi n v (m). c: l in dung c n v Farad (F). 1F (micro Farad) = 10-6F.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 21 -

LUN N TT NGHIP 1nF (nano Farad) 1pF (pico Farad) = 10-9F. = 10-12F.

ROBOCON 2007

1fF (fempto Farad) = 10-15F . T in c chia lm hai loi chnh: T in c phn cc tnh dng v m. T in khng phn cc tnh c chia lm nhiu dng.

1. T ha:L loi t c phn cc tnh dung v m. T ha c bn cc l nhng l nhm, in mi l nhng lp nhm xit rt mng c to nn bng phng php in phn. in dung ca t ha kh ln t 1F n 10000 F. Khi s dng phi rp ng cc tnh dng v m, in th lm vic thng nh hn 500V. K hiu:-

2. T gm (ceramic):L loi t khng phn cc tnh.c ch to gm cht in mi l gm, thng c dng trn dt, b mt c trng bc lm bn t. K hiu:

3. T giy:L loi t khng c cc tnh gm c hai bn cc l bng kim loi di, c gia c lp cch in l giy tm du v cun li thnh ng. in p nh thng n vi trm vn. K hiu v hnh dng:

4. T mica:L loi t khng c cc tnh, in dung t vi pF n vi trm F, in p lm vic rt cao, trn 1000V. T mica t tin hn t gm v t sai s, p tuyn cao tn tt, bn cao. Trn

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 22 -

LUN N TT NGHIP

ROBOCON 2007

t mica c sn cc chm mu ch tr s in dung v cch c ging nh c tr s in tr. Hnh dng: 1: s th nht 2:s th hai 3:bi s

5. T mng mng:L loi t c cht in mi l cc cht polyester (PE), polyetylen (PS), in dung t vi trm picofarad n vi chc microfarad, in p lm vic ti hng ngn vn Hnh dng:

6. T tang:L loi t c phn cc tnh, in dung c th rt cao nhng kch thc nh t 0,1F n 100F, in p lm vic thp ch vi chc vn. T tang thng c dng vin Hnh dng:

III. Diode bn dn: 1 Cu to:L linh kin tch cc c mt lp tip tip xc P-N.bn ngoi c bc lp plastic, hai u ca mi bn dn c trn kim loi nhm ni dy ra ngoi.

Anod PGVHD: PHAN HU TC I: RETURN (CDDT6B)

Catod N

- 23 -

LUN N TT NGHIP K hiu:

ROBOCON 2007

A

K

2. Nguyn l hat ng:iu kin diode dn l VA VK

2.1 Phn cc thun (VA VK):Cc dng ca ngun ni vi Anod, cc m ngun ni vi Catod. Lc , in tch dng ca ngun s y l trng trong vng P v in tch m ca ngun s y electron trong vng N lm cho electron v l trng li gn mi ni hn v khi lc tnh in ln th electron t N s sang mi ni qua P v ti hp vi l trng. Khi vng N mt electron tr thnh mang in tch dng th vng N s ko in tch m t cc m ca ngun ln th ch, khi vng P nhn electron tr thnh mang in tch m th cc dng ca ngun s ko in tch m t vng P v. Nh vy, c mt dng electron chy t cc m ca ngun qua diode t N sang P n cc dng ca ngun, ni cch khc c mt dng in chy t P sang N.

2.2. Phn cc nghch (VA 0V th in tch dng cc G s ht electron ca nn P v pha gia hai vng bn dn N+ v khi lc ht ln th s electron b ht nhiu hn ni lin hai vng bn dn N+ v knh c lin tc. Khi c dng in ID chy t D sang S v in tr gia D v S gim. in th ti cc G cng ln th dng ID cng ln v in p VDS cng nh. Khi VGS ln bng V th c dng in ID, in tr gia D v S cng nh nht bng 0 v in p VD = VS = 0V. in p V cng c gi in p thm v tr s khong 1V.

ID VGS = 4V +3V +2V +1V

ID

VG

VGS0 V

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 28 -

LUN N TT NGHIP

ROBOCON 2007

VI. Led by on:L tp hp 7 led c ch to dng thanh di c 2 loi anod chung v catod chung. S chn:LED7DOAN

1. Anod chung:+Vcc

a

b

c

d

e

f

g

dp

2. Catod chung:+Vcc

a

b

c

d

e

f

g

dp

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 29 -

LUN N TT NGHIP

ROBOCON 2007

VII. B Ghp Quang (opto P817) :Opto P817 gm hai phn gi l s cp v th cp. Phn s cp l diode pht ra hng ngoi. Phn th cp l mt quang transistor. B ghp quang hot ng theo nguyn l: tn hiu in phn s cp l LED hng ngoi (cn gi l phn pht) i thnh tn hiu nh sng. Tn hiu nh sng c phn th cp l quang transistor (cn gi l phn nhn) i li thnh tn hiu in. B ghp quang c dng cch gia hai mch c in p cch bit ln. in tr cch in gia s cp v th cp c tr s rt ln thng khong vi chc n vi trm megaohm i vi dng in mt chiu. K hiu:

VIII. Cc IC s dng trong mch: 1. LM7805:LM7805 l IC n p in p ra c nh +5V. Thc t in p ra dao ng t 4,7V n 5,2V. Chn 1: ng vo Chn 2: ni mass Chn 3: ng ra in p +5V K hiu:

LM78051 VIN VOUT 3

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 30 -

LUN N TT NGHIP Hnh dng:

ROBOCON 2007

LM7805

2. IC LM324:IC LM324 tch hp gm 4 opamp s dng ngun n cc. Chn 4 l chn cp ngun Vcc c gi tr t +5V n +30V. Chn 11 l chn mass. Khi V+> V- th ng ra mc cao ( opamp bo ha dng). Khi V+< V- th ng ra mc thp ( opamp bo ha m). S chn:

C th thay th ICLM324 bng IC LM339 nhng c s chn khc vi LM324 hoc thay bng IC TL084 c s chn tng t nhng ngun cp nh hn.

3. 74HC540:y l IC khuch i o c chn iu khin v ngun cung cp cho IC t +4.75V n +5.25V.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 31 -

LUN N TT NGHIP S chn:Error!

ROBOCON 2007

Bng s tht:

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 32 -

LUN N TT NGHIP

ROBOCON 2007

4. IC VI X L P89V51RD2:S chn:

Nh vy P89V51RD2 c tt c 40 chn. Mi chn c chc nng nh cc cng I/O (xut/nhp), trong 24 chn c cng dng kp: mi ng c th hot ng nh mt ng I/O hoc nh mt ng iu khin hoc nh thnh phn ca bus a ch v bus liu. M t chn: VCC (chn 40) Chn cp ngun 5V. GND (chn 20) Chn ni mass. Port 0 Port 0 l mt port xut/nhp d liu c s chn t 32 n 39. Nu c s dng nh l mt ng xut th mi chn phi c in tr ko ln bn ngoi. Port 0 c 2 chc nng: port xut nhp d liu khi s dng b nh bn trong, bus a ch byte thp v bus d liu a hp khi s dng b nh ngoi.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 33 -

LUN N TT NGHIP Port 1

ROBOCON 2007

Port c 1 chc nng l mt port xut/nhp d liu 8 bit c cc in tr ko ln bn trong c s chn t 1 n 8. Port 2 Port 2 l mt port xut/nhp d liu 8 bit c cc in tr ko ln bn trong c s chn t 21 n 28 . Port 2 c 2 chc nng :port xut nhp d liu khi s dng b nh bn trong; bus a ch byte cao khi s dng b nh ngoi. Port 3 Port 3 l mt port xut/nhp song hng 8 bit c cc in tr ko ln bn trong c s chn t 10 n 17. Port 3 c 2 chc nng: port xut nhp d liu khi s dng b nh bn trong; cc tn hiu iu khin khi s dng b nh ngoi. Port 3 cng cung cp cc chc nng ca cc c trng c bit nh c lit k di y:

Chn P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7

Tn RXD TXDINT0 INT1

Cc chc nng chuyn i Port nhp ni tip Port xut ni tip Ngt 0 bn ngai Ngt 1 bn ngai Ng vo Timer/Counter 0 Ng vo Timer/Counter 1 Xung ghi b nh d liu ngai Xung c b nh d liu ngai

T0 T1WR RD

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 34 -

LUN N TT NGHIP RST (chn 9) L chn ng vo reset. Khi RST = 0 th CPU hot ng bnh thng. Khi RST = 1 th CPU s reset thit lp trng thi ban u. ALE (chn 30)

ROBOCON 2007

ALE (Address Latch) l tn hiu cho php cht a ch thc hin gii a hp cho bus a ch byte thp v bus d liu a hp. Khi lp trnh th chn ny c b trng. ALE =1 th bus AD0 n AD7 ng vai tr l bus D0 - D7 ALE =0 th bus AD0 n AD7 ng vai tr l bus A0 - A7 PSEN/(chn 29) Psen (program store enable) l chn cho php c b nh chng trnh ngoi. Khi lp trnh th chn ny b trng. PSEN = 1 CPU s dng Rom trong. PSEN = 0 CPU tm np lnh t bn ngoi. EA/ (chn 31) L tn hiu cho php s dng b nh chng trnh Rom ngoi EA/ = 1 CPU s dng chng trnh Rom trong. EA/ = 0 CPU s dng chng trnh Rom ngoi. Khi lp trnh cho Rom trong chip th chn EA/ ng vai tr l ng vo in p lp trnh. XTAL1 V XTAL2 (chn 18,19) XTAL1 v XTAL2 l hai ng vo v ra ca mot bo dao ong tren chip. Dng ni vi thch hoc mch dao ng tao xaung clock bn ngoi cp tn hiu xung clock cho chip hot ng. XTAL1 l ng vo mch to xung clock trong chip. XTAL1 l ng ra mch to xung clock trong chip.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 35 -

LUN N TT NGHIP

ROBOCON 2007

CHNG 3: CC MCH DNG TRONG ROBOTI. Khi ngun:Khi ngun gm hai mch ngun chnh: mch ngun 5V v mch ngun 15V, 24V cp cho cc rle v mch ng c.

1. Mch ngun 5V: 1.1 S mch:1 2 2 1 2 ACQUY 12V 1 D4 2 C1 2200U C4 0.33U D3 1 2,2_3W C2 104 C3 2200U D1 D2 1 R1 1 U1 VI LM7805 VO 3 470 D5 DO 5V R2 Q1 2 B688

1.2 Nguyn l hot ng:y l mch ngun n p 5V v c ph dng. Ngun cung cp ly t cquy 12V qua IC n p 7805 (U1), transistor B688 (Q1) ph dng v cc linh kin in tr, t, diode c thit k nh hnh v. V mch ny cp in p cho nhiu khi nh khi cm bin, khi chnh cm bin v quan trng l khi vi x l s dng nhiu IC. Nu khng dng B688 th khi tt c cc mch hot ng thng s xy ra hin tng st p do dng khng . Do dng B688 mc nh s ph dng m khng khuych i in p.in p ng ra vn khng i 5V. Diode D1 bo v mch khi gn sai cc. T C1,C3 l t lc ngun. T C2, C4 ng vo, ng ra dung lc nhiu tn s cao, b cho p ng qu ca n p. R1 l in tr cng sut c nhim v phn cc cho B688 dn ch khuych i. Gi

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 36 -

LUN N TT NGHIP

ROBOCON 2007

tr in tr R1 rt quan trng. V nu R1 ln qu th Q1 dn bo ha, lm in p vo 12V ti cc E bng in p ti cc C v bng in p ng ra lc ny mch khng cn chc nng n p. Nu R1 nh qu (VEB nh) th Q1 khng dn, B688 khng ph dng. V vy, chng ta chn gi tr gi tr R1 ph hp B688 dn khuych i. Ta chn gi tr R1 bng cch: in p ri trn R1 bng in p VEB trn B688 khong 0,6V transistor dn khuych i, dng qua in tr R1 vo chn s 1 ca IC7805 ti a 1A. Khng ai s dng ht cng sut ca LM7805 do chng em chn gi tr qua ti a l 300 mA. Tnh R1 = 0,6V/0.3A = 2 ohm. Trong thc t khng c in tr 2 ohm v vy ta ly in tr 2,2 ohm thay th. R2 l in tr phn cc cho led bo ngun. Thng th in p trn led khong dng khong t 10mA n 20mA do ta c th tnh c gi tr R2 = (5V - 2V)/ (10 n 20mA) = 150 ohm n 300 ohm. 2V,

2 Mch ngun 12V, 24V: 2.1 S mch:U4 1 2 12V 1 2 24V 1 2 12V + + + C1 2200u C2 2200 1 VIN VOUT R LED LM7815 3 R1

2.2 Nguyn l hot ng:Ngun 24V c to ra bng cch ghp ni tip hai bnh cquy 12V. Ngun 24V qua con IC n p 7815 to ra ngun 15V. Ngun 15V c s dng cung cp khi khuych i cng sut, cp ngun cho rle v opto.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 37 -

LUN N TT NGHIP

ROBOCON 2007

II. Khi cm bin:Gm 2 phn: mchcm bin d ng v thit b ngoi vi.

1. Mch cm bin d ng:Mch cm bin d ng v mch cn chnh cm bin.

1.1 Mch cm bin d ng:5V

R6 220

R7 220

R8 220

R9 220

R10 220

R11 220

D3 LED

D4 LED

D5 LED

D6 LED

D7 LED

D8 LED

5V R12 10K R13 10K R14 10K R15 10K R16 10K R17 10K J1

FR18 LDR C2 104

ER19 LDR C3 104

DR20 LDR C4 104

C

B

A

1 2 3 4 5 6 7 8 CAP8 C7 104

R21 LDR C5 104

R22 LDR C6 104

R23 LDR

y l mch cm bin quang, c thit k 6 b cm bin quang, mi b c 1 led pht siu sng v mt quang tr. Mch ny di y robot, c dng d tm vch trng trn sn. Cc t 104 c tc dng lc tn s cao do quang tr sinh ra lc hot ng R6, R7 ,R8 ,R9,R10, R11 hn dng v bo v led siu sng. R12 ,R13, R14, R15, R16, R17 to cu phn th cho quang tr. Mch ny c tc dng bin i tn hiu quang thnh tn hiu in a vo mch cn chnh.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 38 -

LUN N TT NGHIP

ROBOCON 2007

1.2 Mch cn chnh cm bin: S mch:R2 100K 5V 5V U1A 3 + 1 2 5V D1 LED 5V R1 220

AR4 100K

LM324

R3 220

5V

5V U1B D2 LED

J1 1 2 3 4 5 6 7 8 5V

5

+ 7 J2 5V LM324 R5 220 CBDD1 CBDD2 CBDD3 CBDD4 CBDD5 CBDD6 1 2 3 4 5 6 -

BR6 100K 5V

6

5V U1C D3 LED

VXL

CON8 10 + 8 9 5V LM324 R8 100K 5V 5V U1D 12 + 14 13 5V LM324 R10 100K 5V 5V U2A 3 + 1 2 5V LM324 R12 100K 5V 5V U2B 5 + 7 6 LM324 D6 LED R11 220 D5 LED R9 220 D4 LED R7 220

C

D

E

F

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 39 -

LUN N TT NGHIP

ROBOCON 2007

1.3 Mch cm bin d ng thu nh: a. S mch:5V 5V R1 220 5V R3 220 R4 10K 100K D1 U1A 3 + 1 2 LM324 D2 LED PHAT R5 LDR C1 104 LED

R2

b. Nguyn l hot ng v cch s dng:Khi cha nhn nh sng ca led pht, quang tr c gi tr rt ln so vi gi tr in tr R2. in p V- gn bng Vcc (5v). Led pht khng chiu v pha quang tr m chiu thng xung nn sn v phn x ngc li bn mt quang tr lm thay i gi tr in tr ty thuc vo nn sn l mu g (i vi nn sn mu trng, in tr c gi tr thp nht v nh sng c phn x ton phn). V vy, khi robot i qua nhng ni nn sn c mu khc nhau th in p ti cng V- ca opamp c gi tr mc in p khc nhau ty thuc vo mu ca nn sn( nu nn mu trng th V- c gi tr in p thp nht, k tip l mu xanh, sau cng l mu ). Mc ch ca mch cm bin ny ch pht ra tn hiu mc cao (5v) a vo khi vi x l khi cm bin gp nn sn mu trng, cn cc mu cn li u a ra mc thp. V th, in p ny cn c a vo cng V- ca opamp so snh mc in p ti cng V+ ca opamp. Mc in p ti cng V+ c iu chnh bi bin tr cn chnh R6. Ta chnh R6 sao cho in p ti ng vo ca V+ (chn s 3 opamp) nh hn in p ti ng vo tr V- (chn s 2 opamp) khi vch xanh v vch ; v ln hn in p ti ng vo tr V- khi vch trng. Led chn s 1 ca LM324 c nhiu v gip ta cn chnh cm bin d dng hn, khiGVHD: PHAN HU TC I: RETURN (CDDT6B)

- 40 -

LUN N TT NGHIP

ROBOCON 2007

chn s 1 opamp mc thp th led ny sng, chnh v vy chng ta cm bin vo vch trng v cn chnh R6 cho n khi thy led sng ln, nhng khi a cm bin vo nn v xanh m led khng sng l ng. Ni tm li, chng ta chnh cm bin sao cho led ( chn s 1 ca opamp) ch sng khi vo nn v xanh m khng sng khi vo vch trng. T C1 mc song song vi quang tr c nhim v chng nhiu, trit tiu tn s cao khi cm bin chuyn t nn (hoc xanh) sang vch trng s sinh ra nhiu tn s cao khc nhau lm nh hng n vi x l nhng do c t mc song song s trit tiu nhng tn s ny xung mass. Tm li mch ny c thit k theo kiu tch cc mc cao.

2. Thit b ngoi vi:Thit b ngoi vi gm: cng tc hnh trnh, encoder, tim cn. Cng tc hnh trnh c mc theo kiu thng h. Tc l khi cng tc h th khng tn hiu nhng khi cng tc ng li s c tin hiu mc 0 ti IC vo vi x l. Tim cn l linh kin bao gm mt mt thu v mt pht c lp to thnh mt gc 300. Khi hat ng n nhn bit vt th bng cc nh sng phn x c pht ra t mt pht. T to ra s thay i in p trn tim cn v to ra mc p cao vo chn vi x l. III. KHI NG C Khi ng c c s dng thm ngun 24V cp cho motor hot ng. Mch ng c s dng nhng con Opto cch ly vi cc khi khc. V khi motor quay s to ra in p xoay chiu, nu khng cch ly th p xoay chiu s di v cc khi khc lm cht IC, quan trng l khi vi x l, in p cp bnh thng l 5V khi p di v ch cn ln hn 5,5V th IC vi x l s b cht .

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 41 -

LUN N TT NGHIP

ROBOCON 2007

1. Mch ng c bnh xe: a. S mch:RL0 15V R1 100 J1 2 1 VXl PWM0 R4 100 15V D3 LED R5 47K OPTO2 PC817 RL0 Q3 C1815 47K OPTO1 PC817 PWM0 Q2 B562 R3 330 3W D22 D1 12V LED R2 D2 4007 Q1 D468 24V M1 K2611 5 6 7 4 3 2 C1 104 MOTOR 1 2 LS1 RELAY 8 1 D23 DC1_DC1

b. Nguyn l hot ng:Nguyn l hot ng ca mch ny chia ra 2 phn: to xung v o chiu motor. Phn to xung: Tn hiu t khi vi x l qua in tr R1, led, Opto1. R1 c tc dng hn dng bo v led pht hng ngoi trong opto v led. Led c tc dng m phng tn hiu ca vi x l khi led sng l mch ng c ny hot ng v ngc li. Khi cha c tn hiu (mc thp) t khi vi x l xut ra th opto1 cha dn v c in tr khng rt ln 100K, lm cho khi totem-pole khng hot ng trong phn cp ngun ca khi motor cng sut. Vy khi ny tch cc mc cao. Tc l khi mc 1 transistor D468 trong khi totem-pole dn bo ha v B562 khng dn. Dng t ngun 12V qua D468 trong khi totempole ti FET dn motor quay. Ngc li, khi mc thp th D468 ngng dn v B562 dn bo ha nu t k sinh trong FET c tch in. Lp tc t trong FET c x qua B562 xung mass, FET ngng dn. Tm li, mch c kh nng chu tn s iu xung cao do vi x l xut ra.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 42 -

LUN N TT NGHIP Diode D2

ROBOCON 2007

c tc dng ngn chn dng r t D468 n B562. in tr cng sut 330-

3W dng tn nhit cho FET v hn dng cho D468. Phn o chiu motor: Motor thit b c cc m v cc dng, khi dng chy t cc dng sang cc m, motor quay thun, ngc li khi dng chy t cc m sang cc dng motor quay nghch Phn o chiu ng c thc cht l mch iu khin dng in i t cc dng motor sang m hay t cc m sang cc dng motor. Phn ny khng c tc dng cho motor chy v n khng cp dng cho motor, n ch c tc dng thay i chiu cp dng cho motor. Khi khi vi x l tn hiu mc thp led hng ngoi trong opto2, transistor quang trong opto2 ngng dn, khng c dng in vo chn B ca transistor C1815 lm n ngng dn. Do , cng khng c dng t ngun 12V qua cun dy trong relay xung mass, relay khng ng. Nh vy, Nu K2611 dn th dng t ngun 24V s i vo chn 3 ra chn 5 ca relay, n vo chn 1 v ra chn 2 ca motor, n vo chn 4 v ra chn 6 ca relay, v qua FET xung mass. Motor quay thun. Khi khi vi x l tn hiu mc cao led hng ngoi trong opto2, transistor quang trong opto2 dn, c dng in t ngun 12V vo chn B ca transistor C1815 lm n dn. Do , cng xut hin dng ti cun dy trong relay, relay ng. Nh vy, Nu K2611 dn th dng t ngun 12V s i vo chn 3 ra chn 2 ca relay, n vo chn 2 v ra chn 1 ca motor, n vo chn 7 v ra chn 6 ca relay, v qua FET xung mass. Motor quay nghch.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 43 -

LUN N TT NGHIP

ROBOCON 2007

IV. Khi vi x l: 1. S mch:R1 4K7 1 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 R3 4K7 RESET 5V 5V 2 3 4 5 6 7 8 9 9 8 7 6 5 4 3 2 1 5V 31 40 9 20 EA/VPP VCC RST GND ALE/PROG PSEN 39 38 37 36 35 34 33 32 1 2 3 4 5 6 7 8 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 5V 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 30 5V 29 5V P0.7 18 P0.6 17 P0.5 16 P0.4 15 P0.3 14 P0.2 13 P0.1 12 P0.0 11 P3.4 U4 10uF RESET SWITCH R8 8K2 SW1 100 8 7 6 5 4 3 2 1 KMR 18 17 16 15 14 13 12 11 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 74LS540 A1 A2 A3 A4 A5 A6 A7 A8 G1 G2 2 3 4 5 6 7 8 9 1 19 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P3.5 1 19 2 3 4 5 6 7 8 9 9 8 7 6 5 4 3 2 1 R4 4K7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 P3.5 P1.7 P1.6 P1.5 P1.4 P1.0 P1.1 P1.2 P1.3 2 3 4 5 6 7 8 9 1 19 A1 A2 A3 A4 A5 A6 A7 A8 G1 G2 R5 10K Q1 C1815 U3 74LS540 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 G1 G2 U5 74LS540 P2.0 18 P2.1 17 P2.2 16 P2.3 15 P2.4 14 P2.5 13 P2.6 12 P2.7 11 P3.6 1 19 2 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 G1 G2 R10 1K P3.7 P2. 0 P2. 1 P2. 2 P2. 3 P2. 4 P2. 5 P2. 6 P2. 7 3 2 1 J8 CAP 3 1 2 J7 XANH A1 A2 A3 A4 A5 A6 A7 A8 3 4 5 6 7 8 9 D1 9 D2 8 D3 7 D4 6 D5 5 D6 4 D7 3 D8 2 5V 1 R7 4K7 A1 A2 A3 A4 A5 A6 A7 A8 2 3 4 CBDD1 5 CBDD2 6 CBDD3 7 CBDD4 8 CBDD5 9 J2 CBDD6 1K Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 18 17 16 15 14 13 12 11 FET1 ROLE1 FET2 ROLE2 FET3 ROLE3 FET4 ROLE4 U1 P89V51RD2 1 R2 4K7 U2 74LS540

5V

5V C1 33pF C3 R6

Y 1 11.0592MHz C2 33pF

J1 P0.0 P0.1 P0.2 P0.3 1 2 3 4 J3

BANPHIM J4 DO 1 2 8 7 6 5 4 3 2 1 R9

5V

P0.4 P0.5 P0.6 P0.7

1 2 3 4

J5 BANPHIM J6

1K

P3.7

P3.0 P3.1 P3.2 P3.3

1 2 3 4

J9 SCAN LED

DATALED

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 44 -

LUN N TT NGHIP

ROBOCON 2007

2. Nguyn l hot ng ca khi vi x l:Khi vi x l c 1 con vi x l P89V51RD2. Tt c cc port vi x l u c in tr ko ln ngun c tc dng ko dng. Cc port ca vi x l u hot ng ch tch cc mc thp tr port 0 ca vi x l khi iu khin bn phm c th mc thp hoc mc cao. Tt c IC ca khi vi x l s dng ngun 5V. Mch khng s dng b nh bn ngoi nn chn EA c ni ln ngun. Vi x l s dng thch anh 11,0592 Mhz cp vo chn X1, chn X2. Trn ng truyn nhn tn hiu t bn ngoi u s dng IC 74HC540 tr IC U2 v U4 c s dng xut tn hiu ra bn ngoi. y l IC m o c tc dng chng nhiu t thit b ngoi c th lm treo vi x l v c s dng cng tc ngt tn hiu bn ngoi vo vi x l. IC 74HC540 c hai chn iu khin l chn 1 v chn 19. Ty trng hp c th m vi x l s iu khin IC hot ng nhn tn hiu bn ngoi hay l ngng hot ng. Port 0: C 2 chc nng: iu khin bn phm v cm bin d ng. Khi robot cha hot ng th IC U3 c ngt nn khng c tn hiu t bn ngoi vo port 3. Lc ny port 0 c s dng nh l port va xut va nhn tn hiu t bn phm. Khi robot hot ng th IC U3 c m nhn tn hiu t b cm bin d ng. Trc khi tn hiu vo vi x l th s qua IC 74HC540 y l IC m o, c tc dng khuych i dng v o tn hiu. V vy tn hiu vo vi x l l tch cc mc thp. Port 1: Tt c cc bit trong port 1 u c s dng iu khin ng c. Trong port 1 c 2 IC, mt con s dng iu khin khi ng c trong mch v IC cn li iu khin khi m rng. V mch c thit k theo kiu tch cc mc thp v th tn hiu iu khin t cc bit ny xut ra trc tin phi qua cng o ca IC 74HC540 U2 hoc U4 thnh tch cc mc cao ri mi ti khi ng c . Port 2: Port 2 c s dng iu khin hai khi ring bit: led 7 on, cng tc hnh trnh v encoder.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 45 -

LUN N TT NGHIP

ROBOCON 2007

Trong qu trnh iu khin robot, IC U5 ngng hot ng. Lc ny vi x l ch hin th tn hiu trn LED 7 on. Do s dng LED 7 on c anod chung nn vi x l hot ng tch cc mc thp. Khi robot hot ng th IC U5 cng hot ng. Vi x l hot ng tch cc mc thp. Do cc thit b ngoi vi u hot ng ch tch cc mc cao nn khi qua IC m o thnh mc thp. Cc cng tt hnh trnh ny c mc theo kiu thng h v c in tr ko ln ngun nhm ko dng. Port 3: T bit P0.1 n bit P0.3 iu khin hin th ca led 7 on. Cc bit ny u c ni vo chn B ca transistor PNP nn u hot ng ch tch cc mc thp. Khi robot hot ng cc port ny u mc cao nn led 7 on khng hin th. T bit P0.4 n P0.7 iu khin 4 con IC 74HC540. Mun IC 74HC540 hot ng th hai chn 1 v chn 19 u mc thp nn 4 bit ny u tch cc mc thp. Nt Reset SW1: nt reset c mc theo kiu thng h. Khi ta nhn nt dng in i t Vcc qua R6 va R8 xung mass, v R8 c tr khng ln hn rt nhiu tr khng ca R6 nn tn hiu ti chn Reset l tn hiu mc cao, vi x l b reset. T C11 c tc dng t ng reset lc bt ngun, Khi cha cp ngun in p trn t bng 0V, nn khi va cp in t npt 0V -> Vcc, do khi cp in th in p a vo chn Reset l Vcc, nn mch tng h thng. Qa trnh reset phi c gi mc cao ti thiu hai chu k ca my. Khi chn RST tr li mc thp, vic thc thi chng trnh lun lun bt u v tr u tin ca chng trnh: a ch 0000H. Ni dung ca RAM trong chip khng b nh hng bi hot ng reset.

V. Khi iu khin:Khi iu khin l mch cho php ngi iu khin chn chng trnh cho robot hot ng. Mch gm khi hin th v phm iu khin.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 46 -

LUN N TT NGHIP 1. Khi LED 7 on:J1 CAP8

ROBOCON 2007

R1 100

R2 100

R3 100

R4 100

R5 100

R6 100

R7 100

R8 100

5V R9 10K Q1 A1013 P3.0

5V R10 10K Q2 A1013 P3.1

5V R11 10K Q3 A1013 P3.2

5V R12 10K Q4 A1013 P3.3

7 6 4 2 1 9 10 5

A B C D E F G DP

A 7 6 4 2 1 9 10 B C D E F G DP U3 7 6 4 2 1 9 10 LED7DOAN 5

A B C D E F G DP U4 7 6 4 2 1 9 10 LED7DOAN 5

A B C D E F G DP

U1

LED7DOAN

U2

LED7DOAN

5

Khi hin th LED 7 on c 4 con LED 7 on, 4 con transistor, in tr hn dng. Khi hin th c tnh cht rt quan trng trong mch robot. Khi hin th c tc dng hin th xung m ca encoder, hin th s chng trnh cho robot hot ng. Transistor c nhim v cp ngun hoc khng cp ngun cho robot hot ng di s iu khin ca vi x l. Khi robot ang hot ng vi x l xut tn hiu mc 1, transistor b ngt dn n khng c ngun cp cho LED 7 on nn LED 7 on b kha. Vi x l xut tn hiu mc 0 transistor dn c ngun cp LED 7 on nhng s hin th ny cn ph thuc vo port 0 ca vi x l. Tm li LED 7 on ch hin th khi ta s dng ch m xung encoder hoc khi ang chn chng trnh cho robot hot ng.GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 47 -

LUN N TT NGHIP

ROBOCON 2007

2. Khi bn phm:SW1 SW2 SW3 SW4 P0.0 P0.1 P0.2 P0.3

SW5

SW6

SW7

SW8

1 2 3 4

J2 CAP4

SW9

SW10

SW11

SW12

P0.4 P0.5 P0.6 P0.7

1 2 3 4

J3 CAP4

SW13

SW14

SW15

SW16

y l bn phm c thit k theo kiu ma trn. Bn phm c 2 chc nng chnh: iu khin ch m xung encoder hoc ch chn chng trnh cho robot.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 48 -

LUN N TT NGHIP

ROBOCON 2007

PHN 4: LP TRNH TRONG ROBOCHNG 1: GII THIU thun tin cho vic thit k mch v lp trnh, nhm em chn cch thit k mch robo s dng 1 con vi x l. Vi x l nhn tn hiu t cm bin d ng iu khin motor chy cn bng vi nhiu tc khc nhau, ngoi ra n cn cha cc chng trnh con khc nh thng, lui, quo tri, quo phi.v.v v iu kin cc motor nng v gp xp hng. Nu chng ta s dng 2 con vi x l th lm cho vic thit k mch phc tp v tn km. Lc ta s s dng 1 con vi x l cho vic d ng v 1 con vi x l cho cc vic iu khin khc. S khi:Ban phm ma tran P3.4 = 0

4 motor ieu khien

P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7

P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0

74H C540

Cam bien do ng (P0.0 P0.5)

Quet led

74H C540

Data led 7 oan

Bit ieu khien P0, P2, P1

P3.6 = 0 Cong tat xanh - o74H C540

Encoder Tiem can Cong tat hanh trnh

P3.6 = 1

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 49 -

LUN N TT NGHIP

ROBOCON 2007

CHNG 2: CU TRC CA VI IU KHIN 8951I.CU TRC PHN CNG CA 8951: IC8951 l mt h vi iu khin do hng Intel ca M sn xut. Chng c cc c im chung nh sau: 8 KB EPROM bn trong. 128 Byte RAM ni. Port xut/nhp I/O 8 bit. Giao tip ni tip. 64 KB vng nh m ngoi. 64 KB vng nh d liu ngoi. X l Boolean (hot ng trn bit n). 210 v tr nh c th nh v bit. 4 s cho hot ng nhn hoc chia. II. S V CHC NNG CC CHN CA 8951: 1. S chn:

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 50 -

LUN N TT NGHIP 2.S nguyn l:

ROBOCON 2007

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 51 -

LUN N TT NGHIP 3. Chc nng cc chn ca 8951

ROBOCON 2007

- 8951 c tt c 40 chn c chc nng nh cc ng xut nhp. Trong c 24 chn c tc dng kp (c ngha 1 chn c 2 chc nng), mi ng c th hot ng nh ng xut nhp hoc nh ng iu khin hoc l thnh phn ca cc bus d liu v bus a ch. a. Cc port: Port 0 - Port 0 l port c 2 chc nng cc chn 32 - 39 ca 8951. Trong cc thit k c nh khng dng b nh m rng n c chc nng nh cc ng IO. i vi cc thit k c ln c b nh m rng, n c kt hp gia bus a ch v bus d liu. Port 1 - Port 1 l port IO trn cc chn 1-8. Cc chn c k hiu P1.0, P1.1, P1.2, c th dng cho giao tip vi cc thit b ngoi nu cn. Port 1 khng c chc nng khc. V vy chng ch c dng cho giao tip vi cc thit b bn ngoi. Port 2 - Port 2 l 1 port c tc dng kp trn cc chn 21 - 28 c dng nh cc ng xut nhp hoc l byte cao ca bus a ch i vi cc thit b dng b nh m rng. Port 3 - Port 3 l port c tc dng kp trn cc chn 10 - 17. Cc chn ca port ny c nhiu chc nng, cc cng dng chuyn i c lin h vi cc c tnh c bit ca 8951 nh bng sau: Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7GVHD: PHAN HU TC I: RETURN (CDDT6B)

Tn RXT TXD INT0\ INT1\ T0 T1 WR\ RD\

Chc nng chyn i Ng vo d liu ni tip Ng ra d liu ni tip Ng vo ngt cng th 0. Ng vo ngt cng th 1. Ng vo ca TIMER/COUNTER th 0. Ng vo ca TIMER/COUNTER th 1. Tn hiu ghi d liu ln b nh ngoi. Tn hiu c b nh d liu ngoi

- 52 -

LUN N TT NGHIP b. Cc ng tn hiu iu khin: Ng tn hiu PSEN (Program store enable):

ROBOCON 2007

- PSEN l tn hiu ng ra chn 29 c tc dng cho php c b nh chng trnh m rng thng c ni n chn lnh. - PSEN mc thp trong thi gian Microcontroller 8951 ly lnh. Cc m lnh ca chng trnh c c t Eprom qua bus d liu v c cht vo thanh ghi lnh bn trong 8951 gii m lnh. Khi 8951 thi hnh chng trnh trong ROM ni PSEN s mc logic 1. Ng tn hiu iu khin ALE (Address Latch Enable ) : - Khi 8951 truy xut b nh bn ngoi, port 0 c chc nng l bus a ch v bus d liu do phi tch cc ng d liu v a ch. Tn hiu ra ALE chn th 30 dng lm tn hiu iu khin gii a hp cc ng a ch v d liu khi kt ni chng vi IC cht. - Tn hiu ra chn ALE l mt xung trong khong thi gian port 0 ng vai tr l a ch thp nn cht a ch hon ton t ng. - Cc xung tn hiu ALE c tc bng 1/6 ln tn s dao ng trn chip v c th c dng lm tn hiu clock cho cc phn khc ca h thng. Chn ALE c dng lm ng vo xung lp trnh cho Eprom trong 8951 Ng tn hiu EA\ (External Access): - Tn hiu vo EA\ chn 31 thng c mc ln mc 1 hoc mc 0. Nu mc 1, 8951 thi hnh chng trnh t ROM ni trong khong a ch thp 8 Kbyte. Nu mc 0, 8951 s thi hnh chng trnh t b nh m rng. Chn EA\ c ly lm chn cp ngun 21V khi lp trnh cho Eprom trong 8951. Ng tn hiu RST (Reset) : - Ng vo RST chn 9 l ng vo Reset ca 8951. Khi ng vo tn hiu ny a ln cao t nht l 2 chu k my, cc thanh ghi bn trong c np nhng gi tr thch hp khi ng h thng. Khi cp in mch t ng Reset. Cc ng vo b dao ng X1, X2: 0E\ (output enable) ca Eprom cho php c cc byte m

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 53 -

LUN N TT NGHIP

ROBOCON 2007

- B dao ng c tch hp bn trong 8951, khi s dng 8951 ngi thit k ch cn kt ni thm thch anh v cc t nh hnh v trong s . Tn s thch anh thng s dng cho 8951 l 12Mhz. Chn 40 (Vcc) c ni ln ngun 5V. 4. Cu trc bn trong ca vi iu khin : a. T chc b nh :

FFFF FF CODE Memory

FFFF DATA Memory

00 On - Chip Memory External Memory

Enable via PSEN 0000 0000

Enable via RD & WR

Bn b nh Data trn Chip nh sau :7F FF F0 RAM a chc nng E0 E7 6 E5 E4 E3 E2 E1 E0 A F7 F6 F5 F4 F3 F2 F1 F0 B

D0 30 2F 7F 7E 7D 7C 7B 7A 79 78

D7

D6

D5

D4

D3

D2

D1

D0

PSW

B8

_

_

BC

BB

BA

B9

B8

IP

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 54 -

LUN N TT NGHIP

ROBOCON 2007

2E 2D 2C 2B 2A 29 28 27 26 25 24 23 22 21 20 1F 18 17 10 0F 08 07 00

77 6F 67 5F 57 4F 47 3F 37 2F 27 1F 17 0F 07

76 6E 66 5E 56 4E 46 3E 36 2E 26 1E 16 0E 06

75 6D 65 5D 55 4D 45 3D 35 2D 25 1D 15 0D 05

74 6C 64 5C 54 4C 44 3C 34 2C 24 1C 14 0C 04

73 6B 63 5B 53 4B 43 3B 33 2B 23 1B 13 0B 03

72 6A 62 5A 52 4A 42 3A 32 2A 22 1A 12 0A 02

71 69 61 59 51 49 41 39 31 29 21 19 11 09 01

70 68 60 58 50 48 40 38 30 28 20 18 10 08 00

B0

B7

B6

B5

B4

B3

B2

B1

B0

P3

8

AF

_

_

AC

AB

AA

A9

8

IE

A0

A7

6

5

4

3

2

1

A0

P2

99 98 9F 9E

Khng nh a ch bit 9D 9C 9B 9A 99 98

SBUF SCON

90

97

96

95

94

93

92

91

90

P1

8D 8C 8B 8A 89

Khng nh a ch bit Khng nh a ch bit Khng nh a ch bit Khng nh a ch bit Khng nh a ch bit 8F 8E 8D 8C 8B 8A Khng nh a ch bit 89 88

TH1 TH0 TL1 TL0 TMOD TCON PCON

Dy 3

88 87

Dy 2 83 Dy 1 Dy 0 Dy thanh ghi mc nh R0 - R7 82 81 80 87 86 Khng nh a ch bit Khng nh a ch bit Khng nh a ch bit 85 84 83 82 81 80 DPH DPL SP P0

RAM

CC THANH GHI CHC NNG C BIT

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 55 -

LUN N TT NGHIP

ROBOCON 2007

- B nh trong 8951 bao gm ROM v RAM. RAM trong 8951 bao gm nhiu thnh phn: phn lu tr a dng, phn lu tr a ch ha tng bit, cc bank thanh ghi v cc thanh ghi chc nng c bit. - 8951 c b nh theo cu trc Harvard: c nhng vng b nh ring bit cho chng trnh v d liu. Chng trnh v d liu c th cha bn trong 8951 nhng 8951 vn c th kt ni vi 64K byte b nh chng trnh v 64K byte d liu. Cc c tnh cn ch - Cc thanh ghi v cc port xut nhp c nh v (xc nh) trong b nh v c th truy xut trc tip ging nh cc a ch b nh khc. - Ngn xp bn trong Ram ni nh hn so vi Ram ngoi nh trong cc b Microcontroller khc. RAM bn trong 8951 c phn chia nh sau: Cc bank thanh ghi c a ch t 00H n 1FH. "RAM a ch ha tng bit c a ch t 20H n 2FH. "RAM a dng t 30H n 7FH. "Cc thanh ghi chc nng c bit t 80H n FFH. Ram a dng - Mc d trn hnh v cho thy 80 byte a dng chim cc a ch t 30H n 7FH, 32 byte di t 00H n 1FH cng c th dng vi mc ch tng t (mc d cc a ch ny c mc ch khc). - Mi a ch trong vng RAM a dng u c th truy xut t do dng kiu a ch trc tip hoc gin tip. RAM c th truy xut tng bit: - 8951 cha 210 bit c a ch ha, trong c 128 bit c cha cc byte c cha cc a ch t 20F n 2FH v cc bit cn li cha trong nhm thanh ghi c chc nng c bit. - tng truy xut tng bit bng phn mm l cc c tnh mnh ca microcontroller x l chung. Cc bit c th c t, xa, AND, OR, . . . , vi 1 lnh n. a s cc microcontroller x

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 56 -

LUN N TT NGHIP

ROBOCON 2007

l i hi mt chui lnh c - sa - ghi t c mc ch tng t. Ngoi ra cc port cng c th truy xut c tng bit. - 128 bit truy xut tng bit ny cng c th truy xut nh cc byte hoc nh cc bit ph thuc vo lnh c dng. Cc bank thanh ghi : - 32 byte thp ca b nh ni c dnh cho cc bank thanh ghi. B lnh 8951 h tr 8 thanh ghi c tn l R0 n R7 v theo mc nh sau khi reset h thng, cc thanh ghi ny c cc a ch t 00H n 07H. - Cc lnh dng cc thanh ghi RO n R7 s ngn hn v nhanh hn so vi cc lnh c chc nng tng ng dng kiu a ch trc tip. Cc d liu c dng thng xuyn nn dng mt trong cc thanh ghi ny. - Do c 4 bank thanh ghi nn ti mt thi im ch c mt bank thanh ghi c truy xut bi cc thanh ghi RO n R7 chuyn i vic truy xut cc bank thanh ghi ta phi thay i cc bit chn bank trong thanh ghi trng thi. b. Cc thanh ghi c chc nng c bit : - Cc thanh ghi ni ca 8951 c truy xut ngm nh bi b lnh. - Cc thanh ghi trong 8951 c nh dng nh mt phn ca RAM trn chip v vy mi thanh ghi s c mt a ch (ngoi tr thanh ghi b m chng trnh v thanh ghi lnh v cc thanh ghi ny him khi b tc ng trc tip). Cng nh R0 n R7, 8951 c 21 thanh ghi c chc nng c bit (SFR : Special Function Register) vng trn ca RAM ni t a ch 80H n FFH. Ch : tt c 128 a ch t 80H n FFH khng c nh ngha, ch c 21 thanh ghi c chc nng c bit c nh ngha sn cc a ch. - Ngoi tr thanh ghi A c th c truy xut ngm nh ni, a s cc thanh ghi c chc nng c bit SFR c th a ch ha tng bit hoc byte. Thanh ghi trng thi chng trnh (PSW: Program Status Word): T trng thi chng trnh a ch D0H c tm tt nh sau:

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 57 -

LUN N TT NGHIP BIT PSW.7 PSW.6 PSW.5 PSW4 PSW.3 SYMBOL CY AC F0 RS1 RS0 ADDRESS D7H D6H D5H D4H D3H

ROBOCON 2007 DESCRIPTION Cary Flag Auxiliary Cary Flag Flag 0 Register Bank Select 1 Register Bank Select 0 00 = Bank 0; address 00H 01 = Bank 1; address 08H 10 = Bank 2; address 10H 11 = Bank 3; address 18H 07H 0FH 17H 1FH

PSW.2 PSW.1 PSW.0 Chc nng tng bit

OV P

D2H D1H DOH

Overlow Flag Reserved Even Parity Flag

C Carry CY (Carry Flag):

- C nh c tc dng kp. Thng thng n c dng cho cc lnh ton hc: C=1 nu php ton cng c s trn hoc php tr c mn v ngc li C= 0 nu php ton cng khng trn v php tr khng c mn. C Carry ph AC (Auxiliary Carry Flag): - Khi cng nhng gi tr BCD (Binary Code Decimal), c nh ph AC c set nu kt qu 4 bit thp nm trong phm vi iu khin 0AH 0FH. Ngc li AC= 0. C 0 (Flag 0): C 0 (F0) l 1 bit c a dng dng cho cc ng dng ca ngi dng. Nhng bit chn bank thanh ghi truy xut: - RS1 v RS0 quyt nh dy thanh ghi tch cc. Chng c xa sau khi reset h thng v c thay i bi phn mm khi cn thit.GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 58 -

LUN N TT NGHIP

ROBOCON 2007

- Ty theo RS1, RS0 = 00, 01, 10, 11 s c chn Bank tch cc tng ng l Bank 0, Bank1, Bank2, Bank3.

RS1 0 0 1 1 C trn OV (Over Flag) :

RS0 0 1 0 1

BANK 0 1 2 3

- C trn c set sau mt hot ng cng hoc tr nu c s trn ton hc. Khi cc s c du c cng hoc tr vi nhau, phn mm c th kim tra bit ny xc nh xem kt qu c nm trong tm xc nh khng. Khi cc s khng c du c cng bit OV c b qua. Cc kt qu ln hn +127 hoc nh hn -128 th bit OV = 1. Bit Parity (P): - Bit t ng c set hay Clear mi chu k my lp Parity chn vi thanh ghi A. S m cc bit 1 trong thanh ghi A cng vi bit Parity lun lun chn. V d A cha 10101101B th bit P set ln mt tng s bit 1 trong A v P to thnh s chn. - Bit Parity thng c dng trong s kt hp vi nhng th tc ca Port ni tip to ra bit Parity trc khi pht i hoc kim tra bit Parity sau khi thu. Thanh ghi B: - Thanh ghi B a ch F0H c dng cng vi thanh ghi A cho cc php ton nhn chia. Lnh MUL AB s nhn nhng gi tr khng du 8 bit trong hai thanh ghi A v B, ri tr v kt qu 16 bit trong A (byte cao) v B(byte thp). Lnh DIV AB ly A chia B, kt qu nguyn t vo A, s d t vo B. - Thanh ghi B c th c dng nh mt thanh ghi m trung gian a mc ch. N l nhng bit nh v thng qua nhng a ch t F0H F7H.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 59 -

LUN N TT NGHIP Con tr ngn xp SP (Stack Pointer) :

ROBOCON 2007

- Con tr ngn xp l mt thanh ghi 8 bit a ch 81H. N cha a ch ca byte d liu hin hnh trn nh ngn xp. Cc lnh trn ngn xp bao gm cc lnh ct d liu vo ngn xp (PUSH) v ly d liu ra khi Ngn xp (POP). Lnh ct d liu vo ngn xp s lm tng SP trc khi ghi d liu v lnh ly ra khi ngn xp s lm gim SP. Ngn xp ca 8031/8051 c gi trong RAM ni v gii hn cc a ch c th truy xut bng a ch gin tip, chng l 128 byte u ca 8951. - khi ng SP vi ngn xp bt u ti a ch 60H, cc lnh sau y c dng: MOV SP , #5F - Vi lnh trn th ngn xp ca 8951 ch c 32 byte v a ch cao nht ca RAM trn chip l 7FH. S d gi tr 5FH c np vo SP v SP tng ln 60H trc khi ct byte d liu. - Khi Reset 8951, SP s mang gi tr mc nh l 07H v d liu u tin s c ct vo nh ngn xp c a ch 08H. Nu phn mm ng dng khng khi ng SP mt gi tr mi th bank thanh ghi1 c th c 2 v 3 s khng dng c v vng RAM ny c dng lm ngn xp. Ngn xp c truy xut trc tip bng cc lnh PUSH v POP lu tr tm thi v ly li d liu, hoc truy xut ngm bng lnh gi chng trnh con ( ACALL, LCALL) v cc lnh tr v (RET, RETI) lu tr gi tr ca b m chng trnh khi bt u thc hin chng trnh con v ly li khi kt thc chng trnh con Con tr d liu DPTR (Data Pointer): - Con tr d liu (DPTR) c dng truy xut b nh ngoi l mt thanh ghi 16 bit a ch 82H (DPL: byte thp) v 83H (DPH: byte cao). Ba lnh sau s ghi 55H vo RAM ngoi a ch 1000H: MOV A , #55H MOV DPTR, #1000H MOV @DPTR, A - Lnh u tin dng np 55H vo thanh ghi A. Lnh th hai dng np a ch ca nh cn lu gi tr 55H vo con tr d liu DPTR. Lnh th ba s di chuyn ni dung thanh ghi A

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 60 -

LUN N TT NGHIP (l 55H) vo nh RAM bn ngoi c a ch cha trong DPTR (l 1000H). Cc thanh ghi Port (Port Register): - Cc Port ca 8951 bao gm Port0 a ch trong kh nng giao tip. Cc thanh ghi Timer (Timer Register): 80H, Port1 a ch

ROBOCON 2007

90H, Port2 a ch

A0H, v Port3 a ch B0H. Tt c cc Port ny u c th truy xut tng bit nn rt thun tin

- 8951 c cha hai b nh thi/ b m 16 bit c dng cho vic nh thi c m s kin. Timer0 a ch 8AH (TLO: byte thp ) v 8CH (THO: byte cao). Timer1 a ch 8BH (TL1: byte thp) v 8DH (TH1: byte cao). Vic khi ng timer c SET bi Timer Mode (TMOD) a ch 89H v thanh ghi iu khin Timer (TCON) a ch 88H. Ch c TCON c a ch ha tng bit . Cc thanh ghi Port ni tip (Serial Port Register) : - 8951 cha mt Port ni tip cho vic trao i thng tin vi cc thit b ni tip nh my tnh, modem hoc giao tip ni tip vi cc IC khc. Mt thanh ghi m d liu ni tip (SBUF) a ch 99H s gi c hai d liu truyn v d liu nhp. Khi truyn d liu ghi ln SBUF, khi nhn d liu th c SBUF. Cc mode vn khc nhau c lp trnh qua thanh ghi iu khin Port ni tip (SCON) c a ch ha tng bit a ch 98H. Cc thanh ghi ngt (Interrupt Register): - 8951 c cu trc 5 ngun ngt, 2 mc u tin. Cc ngt b cm sau khi b reset h thng v s c cho php bng vic ghi thanh ghi cho php ngt (IE) a ch A8H. C hai c a ch ha tng bit. Thanh ghi iu khin ngun PCON (Power Control Register): - Thanh ghi PCON khng c bit nh v. N a ch 87H cha nhiu bit iu khin. Thanh ghi PCON c tm tt nh sau: Bit 7 (SMOD) : Bit c tc Baud mode 1, 2, 3 Port ni tip khi set. Bit 6, 5, 4 Bit 3 (GF1) : Khng c a ch. : Bit c a nng 1.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 61 -

LUN N TT NGHIP Bit 2 (GF0) : Bit c a nng 2 .

ROBOCON 2007

Bit 1 (PD) : Set khi ng mode Power Down v thot reset. Bit 0 (IDL) : Set khi ng mode Idle v thot khi ngt mch hoc reset. III. Hot ng Port ni tip ca vi iu khin: 1.Gii thiu: - 8951 c mt port ni tip trong chip c th hot ng nhiu ch trn mt dy tn s rng. Chc nng ch yu l thc hin chuyn i song song sang ni tip vi d liu xut v chuyn i ni tip sang song song vi d liu nhp. - Port ni tip cho hot ng song cng (full duplex: thu v pht ng thi) v m thu (receiver buffering) cho php mt k t s c thu v c gi trong khi k t th hai c nhn. Nu CPU c k t th nht trc khi k t th hai c thu y th d liu s khng b mt. - Hai thanh ghi chc nng c bit cho php phn mm truy xut n port ni tip l: SBUF v SCON. B m port ni tip (SBUF) i ch 99H nhn d liu thu hoc pht. Thanh ghi iu khin port ni tip (SCON) i ch 98H l thanh ghi c i ch bit cha cc bit trng thi v cc bit iu khin. Cc bit iu khin t ch hot ng cho port ni tip, v cc bit trng thi Bo co kt thc vic pht hoc thu k t . Cc bit trng thi c th c kim tra bng phn mm hoc c th lp trnh to ngt. 2. Cc thanh ghi v cc ch hot ng ca port ni tip: a. Thanh ghi iu khin Port ni tip : Ch hot ng ca port ni tip c t bng cch ghi vo thanh ghi ch port ni tip (SCON) a ch 98H .Sau y cc bn tm tt thanh ghi SCON v cc ch ca port ni tip:

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 62 -

LUN N TT NGHIP Bit SCON.7 SCON.6 SCON.5 K hiu SM0 SM1 SM3 a ch 9FH 9EH 9DH M t

ROBOCON 2007

Bit 0 ca ch port ni tip Bit 1 ca ch port ni tip. Bit 2 ca ch port ni tip . Cho php truyn thng x l trong cc ch 2 v 3, RI s khng b tc ng nu bit th 9 thu c l 0 Cho php b thu phi c t ln 1 thu cc k t. Bit 8 pht, bit th 9 c pht trong ch 2 v 3, c t v xa bng phn mm. Bit 8 thu, bit th 9 thu c. C ngt pht. t ln 1 khi kt thc pht k t, c xa bng phn mm. C ngt thu. t ln 1 khi kt thc thu k t, c xa bng phn mm.

SCON.4 SCON.3

REN TB8

9CH 9BH

SCON.2 SCON.1

RB8 TI

9AH 99H

SCON.0

RI

98H

Tm tt thanh ghi ch port ni tip SM0 0 0 1 1 SM1 0 1 0 1 Ch 0 1 2 3 M t Thanh ghi dch UART 8 bit UART 9 bit UART 9 bit Tc baud C nh (Fosc /12 ) Thay i ( t bng timer ) C nh (Fosc /12 hoc Fosc/64 ) Thay i ( t bng timer )

b. Cc ch Port ni tip : Trc khi s dng port ni tip, phi khi ng SCON cho ng ch . V d, lnh sau: MOV SCON, #01010010B Khi ng port ni tip cho ch 1 (SM0/SM1 = 0/1), cho php b thu (REN = 1) v c ngt pht (TP = 1) b pht sn sng hot ng.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 63 -

LUN N TT NGHIP Ch 0 (Thanh ghi dch n 8 bit)

ROBOCON 2007

- Ch 0 c chn bng cc thanh ghi cc bit 0 vo SM1 v SM2 ca SCON, a port ni tip vo ch thanh ghi dch 8bit. D liu ni tip vo v ra qua RXD v TXD xut xung nhp dch, 8 bit c pht hoc thu vi bit u tin l LSB. Tc baud c nh 1/12 tn s dao ng trn chip. - Vic pht i c khi ng bng bt c lnh no ghi d liu vo SBUF. D liu dch ra ngoi trn ng RXD (P3.0) vi cc xung nhp c gi ra ng TXD (P3.1). Mi bit pht i hp l (trn RXD) trong mt chu k my, tn hiu xung nhp xung thp S3P1 v tr v cao S6P1.

Mt chu k myS1 OSC P1 P2 S2 P1 P2 S3 P1 P2 S4 P1 S5 P2 P1 S6 P2 P1

Data Out Shift Clock WRITE to SBUF ALE Data Out RXD Shift Clock (TXD)

Bit Data hp lS3P1 S6P1

Phng to

Gin thi gian port ni tip pht ch 0

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 64 -

LUN N TT NGHIP

ROBOCON 2007

- Vic thu c khi ng khi cho php b thu (REN) l 1 v bit ngt thu (RI) l 0. Quy tc tng qut l t REN khi bt u chng trnh khi ng port ni tip, ri xo RI bt u nhn d liu. Khi RI b xo, cc xung nhp c a ra ng TXD, bt u chu k my k tip v d liu theo xung nhp ng RXD. Ly xung nhp cho d liu vo port ni tip xy ra cnh ng ca TXD. Mt chu k my

Data out Shift clock

D0

D1

D2

D3

D4

D5

D6

D7

Gin thi gian ni tip ch 0 Ch 1 (UART 8 bit vi tc baud thay i c): ch 1, port ni tip ca 8951 lm vic nh mt UART 8 bit vi tc baud thay i c. Mt UART (B thu pht ng b vn nng) l mt dng c thu pht d liu ni tip vi mi k t d liu i trc l bit start mc thp v theo sau bit stop mc cao. i khi xen thm bit kim tra chn l gia bit d liu cui cng v bit stop. Hot ng ch yu ca UART l chuyn i song song sang ni tip vi d liu nhp. ch 1, 10 bit c pht trn TXD hoc thu trn RXD. Nhng bit l: 1 bit start (lun lun l 0), 8 bit d liu (LSB u tin) v 1 bit stop (lun lun l 1). Vi hot ng thu, bit stop c a vo RB8 trong SCON. Trong 8951 ch baud c t bng tc bo trn ca timer 1. To xung nhp v ng b ha cc thanh ghi dch ca port ni tip trong cc ch 1,2 v 3 c thit lp bng b m 4 bit chia cho 16, ng ra l xung nhp tc baud. Ng vo ca b m ny c chn qua phn mm

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 65 -

LUN N TT NGHIP

ROBOCON 2007

Tc baud

16

Xung nhp tc baud Thanh ghi dch port ni tip UART 9 bit vi tc baud c nh (ch 2): Khi SM1=1 v SM0=0, cng ni tip lm vic ch 2, nh mt UART 9bit c tc baud c nh, 11 bit s c pht hoc thu:1bit start, 8 bit data, 1 bit data th 9 c th c lp trnh v 1 bit stop. Khi pht bit th 9 l bt c g c a vo TB8 trong SCON (c th l bit Parity) .Khi thu bit th 9 thu c s trong RB8. Tc baud ch 2 l 1/32 hoc 1/16 tn s dao ng trn chip. UART 9 bit vi tc baud thay i c (ch 3): Ch ny ging nh ch 2 ngoi tr tc baud c th lp trnh c v c cung cp bi Timer.Tht ra cc ch 1, 2, 3 rt ging nhau. Ci khc bit l tc baud (c nh trong ch 2, thay i trong ch 1 v 3) v s bit data (8 bit trong ch 1,9 trong ch 2 v 3). c. Khi ng v truy xut cc thanh ghi cng ni tip: Cho php thu Bit cho php b thu (REN=Receiver Enable) Trong SCON phi c t ln 1bng phn mm cho php thu cc k t thng thng thc hin vic ny u chng trnh khi khi ng cng ni tip, timer C th thc hin vic ny theo hai cch. Lnh: SETB REN ; t REN ln 1 Hoc lnh MOV SCON,#XXX1XXXXB ; t REN ln 1 hoc xo cc bit khc trn cn (cc X phi l 0 hoc 1 t ch lm vic) Bit d liu th 9: Bit d liu th 9 cn pht trong cc ch 2 v 3 phi c np vo trong TB8 bng phn mm. Bit d liu th 9 thu c t RB8. Phn mm c th cn hoc khng cn bit d liu thGVHD: PHAN HU TC I: RETURN (CDDT6B)

SCON khi

- 66 -

LUN N TT NGHIP

ROBOCON 2007

9, ph thuc vo c tnh k thut ca thit b ni tip s dng (bit d liu th 9 cng ng vai tr quan trng trong truyn thng a x l ) Thm 1 bit parity: Thng s dng bit d liu th 9 thm parity vo k t. Nh nhn xt chng trc, bit P trong t trng thi chng trnh (PSW) c t ln 1 hoc b xo bi chu k my thit lp kim tra chn vi 8 bit trong thanh tch ly. Cc c ngt: Hai c ngt thu v pht (RI v TI) trong SCON ng mt vai tr quan trng trong truyn thng ni tip dng 8951. C hai bit c t ln 1 bng phn cng, nhng phi c xo bng phn mm. d. Tc baud port ni tip: Nh ni, tc baud c nh cc ch 0 v 2. Trong ch 0 n lun lun l tn s dao ng trn chip c chia cho 12. Thng thng thch anh n nh tn s dao ng trn chip nhng cng c th s dng ngun xung nhp khc. Dao ng trn chip

12a. ch d 0

Xung nhp tc d baud

64Dao ng trn chip SMOD = 0 Xung nhp tc d baud SMOD = 1

32b. ch 2

32Dao ng trn chip SMOD = 0 Xung nhp tc d baud SMOD = 1

16c. ch 1 v 3 GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 67 -

LUN N TT NGHIP Cc ngun to xung nhp cho port ni tip

ROBOCON 2007

- Mc nhin sau khi reset h thng, tc baud ch 2 l tn s b dao ng chia cho 64, tc baud cng b nh hng bi 1 bit trong thanh ghi iu khin ngun cung cp (PCON) bit 7 ca PCON l bit SMOD. t bit SMOD ln 1 lm gp i tc baud trong cc ch 1, 2 v 3. Trong ch 2, tc baud c th b gp i t gi tr mc nhin ca 1/64 tn s dao ng (SMOD=0) n 1/32 tn s dao ng (SMOD=1) - V PCON khng c nh a ch theo bit, nn t bit SMOD ln 1 lnh sau: MOV A,PCON ; ly gi tr hin thi ca PCON SETB ACC.7 ; t bit SMOD ln 1 MOV PCON,A ; ghi gi tr ngc v PCON - Cc tc baud trong cc ch 1 v 3 c xc nh bng tc trn ca timer 1. V timer hot ng tn s tng i cao, trn timer c chia thm cho 32 (hoc 16 nu SMOD =1 ) trc khi cung cp tc xung nhp cho port ni tip. 3. T chc ngt trong 8051: Vi iu khin c 5 ngun ngt: 2 ngun ngt ngoi,2 ngt timer v 1 ngt Port ni tip, tt c cc ngun nTgt b cm sau khi reset h thng v cho php bi phn mm. a. Cho php v khng cho php ngt: Mi ngun ngt c cho php hoc khng cho php thng qua thanh ghi chc nng c bit c cc bit c a ch ha IE (Interrupt Enable) ti a ch 0A8H. cn phi theo cc

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 68 -

LUN N TT NGHIP BIT SYMBOL BIT ADDRESS

ROBOCON 2007 DESCRIPTION (1:ENABLE,0:DISABLE)

IE.7 IE.6 IE.5 IE.4 IE.3 IE.2 IE.1 IE.0 b.VcT ngt:

EA EA ET2 ES ET1 EX1 ET0 EX0

AFH AEH ADH ACH ABH AAH A9H A8H

Global Enable/Disable Undefined Enable Timer 2 Interrupt (8052) Enable Serial Port Interrupt Enable Timer 1 Interrupt Enable External 1 Interrupt Enable Timer 0 Interrupt Enable External 0 Interrupt

Khi ngt c chp nhn gi tr c a vo PC (Program Counter) gi l vector ngt (Interrupt Vector). INTERRUPT System Reset External 0 Timer 0 External 1 Timer 1 Serial Port Timer 2 c. Ngt Port ni Tip: Ngt Port ni tip xy ra khi c 2 c ngt truyn (TI) hoc c ngt nhn (RI) c t. Ngt truyn xy ra khi bit cui cng trong SBUF truyn xong tc l lc ny thanh ghi SBUF rng .Ngt nhn xy ra khi SBUF hon thnh vic nhn v ang i c tc l lc ny thanh ghi SBUF y. C hai c ngt ny c t bi phn cng v xa bng phn mm. FLAG RST IE0 TF0 IE1 TF1 RI OR TI RI OR TI VECTOR ADDRESS 0000 H 0003 H 000B H 0013 H 001B H 0023 H 002B H

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 69 -

LUN N TT NGHIP

ROBOCON 2007

CHNG 3: TP LNH CA 8951Tap lenh cua 8951 c chia lam 5 nhom: So hoc Luan l Chuyen d lieu Chuyen ieu khien Cac ch dan thiet lap lenh: Rn : Thanh ghi R0 en R7 cua bank thanh ghi c chon. data : 8 bit a ch vung d lieu ben trong. No co the la vung RAM d lieu trong (0-127) hoac cac thanh ghi chc nang ac biet. @Ri : 8 bit vung RAM d lieu trong (0-255) c anh a ch gian tiep qua thanh ghi R0 hoac R1. #data : Hang 8 bit cha trong cau lenh. #data16 : Hang 16 bit cha trong cau lenh. addr16 : 16 bit a ch ch c dung trong lenh LCALL va LJMP. addr11 : 11 bit a ch ch c dung trong lenh ACALL va AJMP. rel : Byte offset 8 bit co dau c dung trong lenh SJUMP va nhng lenh nhay co ieu kien. bit : Bit c nh a ch trc tiep trong RAM d lieu noi hoac cac thanh ghi chc nang ac biet.

I. Nhom lenh x l so hoc:ADD A, Rn (1 byte, 1 chu k may): Cong noi dung thanh ghi Rn vao thanh ghi A. ADD A, data (2, 1) : Cong trc tiep 1 byte vao thanh ghi A. AAD A, @Ri (1, 1) : Cong gian tiep noi dung RAM cha tai a ch c khai bao trong Ri vao thanh ghi A.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 70 -

LUN N TT NGHIP

ROBOCON 2007

ADD A, #data (2, 1) : Cong d lieu tc thi vao A. ADDC A, Rn (1, 1) : Cong thanh ghi va c nh vao A. ADDC A, data (2, 1) : Cong trc tiep byte d lieu va c nh vao A. ADDC A, @Ri (1, 1) : Cong gian tiep noi dung RAM va c nh vao A. ADDC A, #data (2, 1) : Cong d lieu tc thi va c nh vao A. SUBB A, Rn (1,1): Tr noi dung thanh ghi A cho noi dung thanh ghi Rn va c nh. SUBB A, data (2, 1) : Tr trc tiep A cho mot so va c nh. SUBB A, @Ri (1, 1) : Tr gian tiep A cho mot so va c nh. SUBB A, #data (2, 1) : Tr noi dung A cho mot so tc thi va c nh. INC A (1, 1) : Tang noi dung thanh ghi A len 1. INC Rn (1, 1) : Tang noi dung thanh ghi Rn len 1. INC data (2, 1) : Tang d lieu trc tiep len 1. INC @Ri (1, 1) : Tang gian tiep noi dung vung RAM len 1. DEC A (1, 1) : Giam noi dung thanh ghi A xuong 1. DEC Rn (1, 1) : Giam noi dung thanh ghi Rn xuong 1. DEC data (2, 1) : Giam d lieu trc tiep xuong 1. DEC @Ri (1, 1) : Giam gian tiep noi dung vung RAM xuong 1. INC DPTR (1, 2) : Tang noi dung con tro d lieu len 1. MUL AB (1, 4) : Nhan noi dung thanh ghi A vi noi dung thanh ghi B. DIV AB (1, 4) : Chia noi dung thanh ghi A cho noi dung thanh ghi B. DA A (1,1) : Hieu chnh thap phan thanh ghi A. II. Nhom lenh luan l : ANL A, Rn (1, 1) : AND noi dung thanh ghi A vi noi dung thanh ghi Rn. ANL A, data (2, 1) : AND noi dung thanh ghi A vi d lieu trc tiep. ANL A, @Ri (1, 1) : AND noi dung thanh ghi A vi d lieu gian tiep trong RAM. ANL A, #data (2, 1) : AND noi dung thanh ghi vi d lieu tc thi.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 71 -

LUN N TT NGHIP

ROBOCON 2007

ANL data, A (2, 1) : AND mot d lieu trc tiep vi A. ANL data, #data(3, 2) : AND mot d lieu trc tiep vi d lieu tc thi. ANL C, bit (2, 2) : AND c nh vi mot bit trc tiep. ANL C, /bit (2, 2) : AND c nh vi bu cua mot bit trc tiep. ORL A, Rn (1, 1) : OR thanh ghi A vi thanh ghi Rn. ORL A, data (2, 1) : OR thanh ghi A vi mot d lieu trc tiep. ORL A, @Ri (1, 1) : OR thanh ghi A vi mot d lieu gian tiep. ORL A, #data (2, 1) : OR thanh ghi A vi mot d lieu tc thi. ORL data, A (2, 1) : OR mot d lieu trc tiep vi thanh ghi A. ORL data, #data(3, 2) : OR mot d lieu trc tiep vi mot d lieu tc thi. ORL C, bit (2, 2) : OR c nh vi mot bit trc tiep. ORL C, /bit (2, 2) : OR c nh vi bu cua mot bit trc tiep. XRL A, Rn (1, 1) : XOR thanh ghi A vi thanh ghi Rn. XRL A, data (2, 1) : XOR thanh ghi A vi mot d lieu trc tiep. XRL A, @Ri (1, 1) : XOR thanh ghi A vi mot d lieu gian tiep. XRL A, #data (2, 1) : XOR thanh ghi A vi mot d lieu tc thi. XRL data, A (2, 1) : XOR mot d lieu trc tiep vi thanh ghi A. XRL data, #data(3, 2) : XOR mot d lieu trc tiep vi mot d lieu tc thi. SETB C (1, 1) : at c nh. SETB bit (2, 1) : at mot bit trc tiep. CLR A (1, 1) : Xoa thanh ghi A. CLR C (1, 1) : Xoa c nh. CPL A (1, 1) : Bu noi dung thanh ghi A. CPL C (1, 1) : Bu c nh. CPL bit (2, 1) : Bu mot bit trc tiep.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 72 -

LUN N TT NGHIP RL A (1, 1) : Quay trai noi dung thanh ghi A. RLC A (1, 1) : Quay trai noi dung thanh ghi A qua c nh. RR A (1, 1) : Quay phai noi dung thanh ghi A. RRC A (1, 1) : Quay phai noi dung thanh ghi A qua c nh. SWAP A (1, 1) : Quay trai noi dung thanh ghi A 1 nibble (1/2 byte). III.

ROBOCON 2007

Nhom lenh chuyen d lieu:MOV A, Rn (1, 1) : Chuyen noi dung thanh ghi Rn vao thanh ghi A. MOV A, data (2, 1) : Chuyen d lieu trc tiep vao thanh ghi A. MOV A, @Ri (1, 1) : Chuyen d lieu gian tiep vao thanh ghi A. MOV A, #data (2, 1) : Chuyen d lieu tc thi vao thanh ghi A. MOV Rn, A (1, 1) : Chuyen noi dung thanh ghi A vao thanh ghi Rn. MOV Rn, data (2, 2) : Chuyen d lieu trc tiep vao thanh ghi Rn. MOV Rn, #data (2, 1) : Chuyen d lieu tc thi vao thanh ghi Rn. MOV data, A (2, 1) : Chuyen noi dung thanh ghi A vao mot d lieu trc tiep. MOV data, Rn (2, 2) : Chuyen noi dung thanh ghi Rn vao mot d lieu trc tiep. MOV data, data (3, 2) : Chuyen mot d lieu trc tiep vao mot d lieu trc tiep. MOV data, @Ri (2, 2) : Chuyen mot d lieu gian tiep vao mot d lieu trc tiep. MOV data, #data (3, 2) : Chuyen mot d lieu tc thi vao mot d lieu trc tiep. MOV @Ri, A (1, 1) : Chuyen noi dung thanh ghi A vao mot d lieu gian tiep. MOV @Ri, data (2, 2) : Chuyen mot d lieu trc tiep vao mot d lieu gian tiep. MOV @Ri, #data (2, 1) : Chuyen mot d lieu tc thi vao mot d lieu gian tiep. MOV DPTR, #data16 (3, 2): Chuyen mot hang 16 bit vao thanh ghi con tro d lieu. MOV C, bit (2, 1) : Chuyen mot bit trc tiep vao c nh. MOV bit, C (2, 2) : Chuyen c nh vao mot bit trc tiep. MOVC A, @A+DPTR (1, 2) : Chuyen byte bo nh chng trnh co a ch la @A + DPTR vao thanh ghi A.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 73 -

LUN N TT NGHIP thanh ghi A.

ROBOCON 2007

MOVC A, @A + PC(1, 2) : Chuyen byte bo nh chng trnh co a ch la @A + PC vao MOVX A, @Ri (1, 2) : Chuyen d lieu ngoai (8 bit a ch) vao thanh ghi A. MOVX A, @DPTR (1, 2): Chuyen d lieu ngoai (16 bit a ch) vao thanh ghi A. MOVX @Ri, A (1, 2) : Chuyen noi dung A ra d lieu ngoai (8 bit a ch). MOVX @DPTR, A (1, 2) : Chuyen noi dung A ra d lieu ngoai (16 bit a ch). PUSH data (2, 2) : Chuyen d lieu trc tiep vao ngan xep va tang SP. POP data (2, 2) : Lay d lieu trc tiep ra khoi ngan xep va giam SP. XCH A, Rn (1, 1) : Trao oi d lieu gia thanh ghi Rn va thanh ghi A. XCH A, data (2, 1) : Trao oi gia thanh ghi A va mot d lieu trc tiep. XCH A, @Ri (1, 1) : Trao oi gia thanh ghi A va mot d lieu gian tiep. XCHD A, @Ri (1, 1) : Trao oi gia nibble thap (LSN) cua thanh ghi A va LSN cua d lieu gian tiep.

IV. Nhom lenh chuyen quyen ieu khien :ACALL addr11 (2, 2) : Goi chng trnh con dung a ch tuyet oi. LCALL addr16 (3, 2) : Goi chng trnh con dung a ch dai. RET (1, 2) : Tr ve t lenh goi chng trnh con. RETI (1, 2) : Tr ve t lenh goi ngat. AJMP addr11 (2, 2) : Nhay tuyet oi. LJMP addr16 (3, 2) : Nhay dai. SJMP rel (2, 2) : Nhay ngan. JMP @A + DPTR (1, 2) : Nhay gian tiep t con tro d lieu. JZ rel (2, 2) : Nhay en A bang 0. JNZ rel (2, 2) : Nhay en A khong bang 0. JC rel (2, 2) : Nhay en c nh c at.

JNC rel (2, 2) : Nhay neu c nh khong c at.GVHD: PHAN HU TC I: RETURN (CDDT6B) - 74 -

LUN N TT NGHIP JB bit, rel (3, 2) : Nhay tng oi neu bit trc tiep c at. JNB bit, rel (3, 2) : Nhay tng oi neu bit trc tiep khong c at. JBC bit, rel (3, 2) : Nhay tng oi neu bit trc tiep c at, roi xoa bit.

ROBOCON 2007

CJNE A, data, rel (3, 2) : So sanh d lieu trc tiep vi A va nhay neu khong bang. CJNE A, #data, rel (3, 2) : So sanh d lieu tc thi vi A va nhay neu khong bang. CJNE Rn, #data, rel (3, 2) : So sanh d lieu tc thi vi noi dung thanh ghi Rn va nhay neu khong bang. CJNE @Ri, #data, rel (3, 2) : So sanh d lieu tc thi vi d lieu gian tiep va nhay neu khong bang. DJNZ Rn, rel (2, 2) : Giam thanh ghi Rn va nhay neu khong bang. DJNZ data, rel (3, 2) : Giam d lieu trc tiep va nhay neu khong bang.

Chng 4: VI X L IU KHINGVHD: PHAN HU TC I: RETURN (CDDT6B) - 75 -

LUN N TT NGHIP

ROBOCON 2007

Bi 1: CHNG TRNH TO XUNG I. Phng php u xung:

in p trung bnh ti motor:UTB =1 T

X ( t ) dt =a

c

b

1 T

24dt +a

1

T

0dtb

c

=

24 T

(b-a) =

24 T

TON

24 T

Ta c: P t l thun vi UTB M Nn P t l thun vi vn tc V ca motor UTB t l thun vi vn tc V ca motor

Nh vy TON t l thun vi vn tc V ca motor Tm li ta ch cn vit chng trnh to xung thay i TON ca xung ti motor sau cho tha iu kin : T = TON + TOFF = const. II. S lp trnh: 30H: gi tr TON ca xung ti motor do bit P0.5 xut ra 31H: gi tr TON ca xung ti motor do bit P0.7 xut ra 04H: Bit bo trng thi TON,TOFF ca xung ti motor do bit P0.5 xut ra, khi 04H = 0 th trng thi xung ti motor do bit P0.5 xut ra l TON v ngc li

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 76 -

LUN N TT NGHIP thi xung ti motor do bit P0.7 xut ra l TON v ngc li.

ROBOCON 2007

05H: Bit bo trng thi TON,TOFF ca xung ti motor do bit P0.7 xut ra, khi 05H = 0 th trng

BEGIN

CLR 04H=0 CLR 05H=0

MOV R1,30H MOV R2,31H

CLR P0.5 CLR P0.7

DELAY

(R1)=(R1) - 1

R2=(R2) - 1

R1#0

R2# 0

04H=0

Tnh gi tr Toff da vo cng thc: Toff = FFH (30H)

05H=0

Tnh gi tr Toff da vo cng thc: Toff = FFH (31H)

CPL P0.5

CPL P0.7

CLR 04H

MOV R1,TOFF

CLR 05H

MOV R2,TOFF

CPL PO.5

CPL P0.7

SETB 04H

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 77 -

LUN N TT NGHIP

ROBOCON 2007

S trn l chng trnh to xung lin tc d m phng. Khi kt hp chng trnh ny vo trong chng trnh chnh trong vi x l, ta phi vit li chng trnh ny li thnh mt chng trnh con, chng trnh con to xung ny khi c gi ra ch to mt chu k xung T = TON + TOFF ri thot ra khi quay v chng trnh chnh. Nh vy, c xung lin tc ti P0.5, P0.7 th chng trnh chnh buc phi gi lin tc chng trnh con to xung ny. Gi tr 30H, 31H s c chng trnh cn bng tnh ra hoc mov trc tip vo ri a vo chng trnh con to xung.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 78 -

LUN N TT NGHIP

ROBOCON 2007

Bi 2: CHNG TRNH CN BNG I. Phng php cn bng: 1. Cch b tr cam bin do ng cho robo: B cm bin do ng gm 6 cm bin S1, S2, S3, S4, S5, S6 v 2 vng 30H, b tr nh sau: (lu vng 30H v 31H khng c cm bin do ng) 31H c

31H

S 1

S 2

S 3

S 4

S 5

S 6

30H

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

MOTOR BEN TRAI (P1)

MOTOR BEN PHAI (P2)

Cm bin S1 v S2 c vo bit P0.0 v P0.1 ca Vi x l. Cm bin S3 v S4 c vo bit P0.2 v P0.3 ca Vi x l. Cm bin S5 v S6 c vo bit P0.4 v P0.4 ca Vi x l. Cm bin S1, S2, S3, S4, S5, S6 u tch cc mc thp. 31H c gi l vng lch phi. Khi vch trng d ng ri vo vng ny th bit 31H trong Vi x l s bng 0. 30H c gi l vng lch tri. Khi vch trng d ng ri vo vng ny th bit 30H trong Vi x l s bng 0. P1: cng sut cp cho motor bn tri c iu kin bi Vi x l. P2: cng sut cp cho motor bn phi c iu kin bi Vi x l.

GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 79 -

LUN N TT NGHIP

ROBOCON 2007

2. Cc trng hp ca cm bin do ng khi hot ng:31H P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 30H X X X X X X X 0 0 X X X X X X 0 0 X X X X X X 0 0 X X 0 X X X X 0 X X X 0 0 X X X X X X X X 0 0 X X X X X X X X 0 0 X X X X X X X X 0 0 X X X X VXL iu chnh P1,P2 thng qua CT to xung P1 = P2 (robo chy thng cn bng) P1>P2 (robo hi sang tri) P1>>P2 (robo hi lch sang tri) P1>>>P2 (robo lch sang tri) P1>>>>P2 (robo lch hn sang tri) P1 KEP QUA BI LOI * ;*** *** TOA DO *** TOA_DO_X DATA 30H TOA_DO_Y DATA 31H GOC_QUAY DATA 32H ;*** ** CONG XUAT DONG CO *** ** P_BTRAI DATA 33H P_BPHAI DATA 34H ;*** * VAN TOC *** VAN_TOC DATA 35H ;****** DEM SO VACH NGANG*** ** DEM_VACH DATA 36H TONG_CAM_BIEN DATA 37H TONG_DEM_VACH DATA 38H ;****** ENCODER *** GT_ENCODER_DOAN1_BEGIN_THAP DATA 39H GT_ENCODER_DOAN1_BEGIN_CAO DATA 3AH GT_ENCODER_DOAN1_THAP DATA 3BH GT_ENCODER_DOAN1_CAO DATA 3CH GT_ENCODER_DOAN1_ERROR_THAP DATA 3DH GT_ENCODER_DOAN1_ERROR_CAO DATA 3EH GT_ENCODER_DOAN2_THAP DATA 3FH GT_ENCODER_DOAN2_CAO DATA 40H ;****** ENCODER PHAI *** ** ENCODER_THAP DATA 41H ENCODER_CAO DATA 42H DATA_ENCODER_THAP DATA 43H DATA_ENCODER_CAO DATA 44H ;*** ** MA CHUONG TRINH *** MA_PRO DATA 45H MA_PHIM DATA 46H ;*** ** MA_HIEN_THI *** * LED1 DATA 47H LED2 DATA 48H LED3 DATA 49H LED4 DATA 4AH QUET_LED DATA 4BH CHAY_CHU DATA 4CH TG_HIEN_THI DATA 4DH ;*** * MA DU LIEU ENCODER *** ** GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 93 -

LUN N TT NGHIP

ROBOCON 2007

DON_VI_THAP DATA 4EH CHUC_THAP DATA 4FH TRAM_THAP DATA 50H DON_VI_CAO DATA 51H CHUC_CAO DATA 52H TRAM_CAO DATA 53H ;*** * VAN TOC *** * TOCDO_TRUNGBINH DATA 54H TOCDO_MAX DATA 55H TOCDO_MIN DATA 56H GT_TON_XUNG_BANH_TRAI DATA 57H GT_TON_XUNG_BANH_PHAI DATA 58H ;*** *** ENCODER DUNG *** * ENCODER_DUNG_THAP DATA 59H ENCODER_DUNG_CAO DATA 5AH ;*** *** ENCODER CANH TAY *** * DEM_ENCODER_NANG DATA 5BH DEM_ENCODER_CANG DATA 5CH BYTE_THAP DATA 5EH BYTE_CAO DATA 5FH TG_DELAY_BO_QUA DATA 60H TG_DELAY DATA 61H ;****** ENCODER *** GT_ENCODER_DOAN1_BEGIN_THAP_VONG DATA 62H GT_ENCODER_DOAN1_BEGIN_CAO_VONG DATA 63H GT_ENCODER_DOAN1_THAP_VONG DATA 64H GT_ENCODER_DOAN1_CAO_VONG DATA 65H GT_ENCODER_DOAN2_THAP_VONG DATA 66H GT_ENCODER_DOAN2_CAO_VONG DATA 67H BYTE_KEP_QUA DATA 68H MOD_KEP_QUA DATA 69H BYTE_GAP_BO_QUA DATA 6AH ; BYTE_GAP_BO_QUA=0 --> BO_QUA ; BYTE_GAP_BO_QUA=1 --> DE_1_QUA ; BYTE_GAP_BO_QUA=2 --> DE_2_QUA ; BYTE_GAP_BO_QUA=3 --> GAP_QUA ; declare relative segments to be used in this module (file) PROGRAM_10_XANH segment code ; declare imported labels and symbols (defined in other ; modules but referred to in this module) extern code QUEO_TRAI ; function (label) extern code QUEO_PHAI ; function (label) extern code DIEU_TOC ; function (label) extern code PHANH ; function (label) extern code KEP_QUA_Y ; function (label) extern code BO_QUA ; function (label) extern code NANG_CANG ; function (label) GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 94 -

LUN N TT NGHIP

ROBOCON 2007

extern code HA_CANG ; function (label) extern code BUNG_CANG ; function (label) extern code NGAT_ET1 ; function (label) extern code NGAT_ET0 ; function (label) extern code DELAY ; function (label) extern code XUAT_PHAT_CO_QUA ; function (label) extern code XUAT_PHAT_KO_CO_QUA ; function (label) extern code XUAT_PHAT_X ; function (label) extern code XUAT_PHAT_Y ; function (label) ; extern code DE_1_QUA function (label) ; extern code DE_2_QUA function (label) extern code MO_CANG ; function (label) extern code GAP_QUA ; function (label) extern code GAP_QUA_2 ; function (label) extern code GAP_QUA_3 ; function (label) extern code NANG_GAP_QUA ; function (label) extern code DELAY500MS ; function (label) extern code TAO_XUNG ; function (label) extern code GAP_QUA ; function (label) extern code GAP_QUA_2 ; function (label) extern code GAP_QUA_3 ; function (label) extern code GAP_QUA_BANG_TAY ; function (label) extern code NANG_GAP_QUA ; function (label) extern code CHAY_THANG_Y extern code DO_DUONG ; declare exported labels and symbols (defined in this ; module and referred to in other modules) public CHUONG_TRINH_DAT_BIET_XANH_0 public CHUONG_TRINH_DAT_BIET_XANH_1 public CHUONG_TRINH_DAT_BIET_XANH_2 public CHUONG_TRINH_DAT_BIET_XANH_3 public CHUONG_TRINH_DAT_BIET_XANH_4 public CHUONG_TRINH_DAT_BIET_XANH_5 public CHUONG_TRINH_DAT_BIET_XANH_6 public CHUONG_TRINH_DAT_BIET_XANH_7 public CHUONG_TRINH_DAT_BIET_XANH_8 public CHUONG_TRINH_DAT_BIET_XANH_9 ORG 000BH LJMP NGAT_ET0 ORG 001BH LJMP NGAT_ET1 ORG 0030H rseg PROGRAM_10_XANH ; rseg is the keyword to start a relative segment ;@@@@@@@@ CHUONG TRINH HOAT DONG BEN XANH TU 10 DEN 19 @@@@@@@@ ;============ BO HANG =========================== BO_HANG: GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 95 -

LUN N TT NGHIP

ROBOCON 2007

MOV ENCODER_THAP,#10 MOV ENCODER_CAO,#0 SETB ACT_NGAT_TIMER1 MOV VAN_TOC,#70 TIM_VI_TRI_BO_QUA: LCALL DO_DUONG JB ACT_NGAT_TIMER1,TIM_VI_TRI_BO_QUA LCALL PHANH LCALL HA_CANG LCALL MO_CANG JNB CTHT_TIEM_CAN,$ LUIBOHANG: CLR MOTOR_TRAI_DAO CLR MOTOR_PHAI_DAO MOV ENCODER_THAP,#10 MOV ENCODER_CAO,#0 MOV GT_TON_XUNG_BANH_TRAI,#40 MOV GT_TON_XUNG_BANH_PHAI,#40 SETB ACT_NGAT_TIMER1 LUI_BO_HANG: LCALL TAO_XUNG JB ACT_NGAT_TIMER1,LUI_BO_HANG SETB MOTOR_TRAI_DAO SETB MOTOR_PHAI_DAO LCALL DELAY500MS MOV GT_TON_XUNG_BANH_TRAI,#42 MOV GT_TON_XUNG_BANH_PHAI,#40 MOV R0,#3 THOAT_BO_HANG: LCALL TAO_XUNG DJNZ R0,THOAT_BO_HANG RET ;================= KEP HANG ===================== KEP_HANG: MOV VAN_TOC,#70 MOV ENCODER_THAP,#16 ;CHAY TOI 30 XUNG THI LUI 30XUNG MOV ENCODER_CAO,#0 SETB ACT_NGAT_TIMER1 TIM_QUA_Y: LCALL DO_DUONG JB ACT_NGAT_TIMER1,TIM_QUA_Y LCALL PHANH XET_TIM_HANG_Y: JNB CTHT_TIEM_CAN,CO_HANG SJMP XET_TIM_HANG_Y ;=================================== GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 96 -

LUN N TT NGHIP

ROBOCON 2007

CO_HANG: MOV TG_DELAY,#10 LCALL DELAY LCALL XIET_HANG CLR TT_TIEM_CAN_NANG MOV ENCODER_THAP,#16 ; LUI 30 XUNG MOV ENCODER_CAO,#0 CLR MOTOR_TRAI_DAO CLR MOTOR_PHAI_DAO LCALL DELAY500MS MOV GT_TON_XUNG_BANH_TRAI,#45 MOV GT_TON_XUNG_BANH_PHAI,#40 SETB ACT_NGAT_TIMER1 LUI_KEP_HANG: LCALL TAO_XUNG JB ACT_NGAT_TIMER1 ,LUI_KEP_HANG SETB MOTOR_TRAI_DAO SETB MOTOR_PHAI_DAO LCALL DELAY500MS MOV GT_TON_XUNG_BANH_TRAI,#45 MOV GT_TON_XUNG_BANH_PHAI,#40 MOV R0,#3 THOAT_KEP_HANG: LCALL TAO_XUNG DJNZ R0,THOAT_KEP_HANG SETB MOTOR_NANG_CANG_DAO CLR MOTOR_NANG_CANG MOV DEM_TIEM_CAN_NANG,#0 ; NANG CANG THEO SO LO TREN TRUC ROBO CLR BIT_TIEM_CAN_NANG ; XET CTHT NANG SETB BIT_CTHT_HA SETB BIT_TIEM_CAN_MO SETB BIT_TIEM_CAN_BUNG JNB BIT_TIEM_CAN_NANG,$ RET ;*** * ;==================== XIET QUA ===================== XIET_HANG: CLR ACT_NGAT_TIMER1 CLR MOTOR_CANG SETB MOTOR_CANG_DAO SETB TT_TIEM_CAN_CANG SETB BIT_CTHT_HA SETB BIT_TIEM_CAN_NANG CLR BIT_TIEM_CAN_MO ;XET TIEM CAN MO SETB BIT_TIEM_CAN_BUNG JNB BIT_TIEM_CAN_MO,$ GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 97 -

LUN N TT NGHIP

ROBOCON 2007

XIET_CHAT_HANG: CLR MOTOR_CANG SETB MOTOR_CANG_DAO LCALL DELAY500MS LCALL DELAY500MS LCALL DELAY500MS LCALL DELAY500MS LCALL DELAY500MS LCALL DELAY500MS LCALL DELAY500MS LCALL DELAY500MS SETB MOTOR_CANG SETB MOTOR_CANG_DAO RET END ;======================= CAC HAM CON DO DUONG ============================ ;*** ** KT DI QUA VACH NGANG -> BIT_QUA_VACH_NGANG *** KT_QUA_VACH_NGANG: CLR BIT_QUA_VACH_NGANG ;KHOI DONG BIT KTRA VACH NGANG LOOP_KT_QUA_VACH_NGANG: MOV TONG_CAM_BIEN,#0 JB CAMBIEN1,KIEMTRA_CAMBIEN2 INC TONG_CAM_BIEN KIEMTRA_CAMBIEN2: JB CAMBIEN2,KIEMTRA_CAMBIEN3 INC TONG_CAM_BIEN KIEMTRA_CAMBIEN3: JB CAMBIEN3,KIEMTRA_CAMBIEN4 INC TONG_CAM_BIEN KIEMTRA_CAMBIEN4: JB CAMBIEN4,KIEMTRA_CAMBIEN5 INC TONG_CAM_BIEN KIEMTRA_CAMBIEN5: JB CAMBIEN5,KIEMTRA_CAMBIEN6 INC TONG_CAM_BIEN KIEMTRA_CAMBIEN6: JB CAMBIEN6,KIEMTRA_VACHNGANG INC TONG_CAM_BIEN ;KIEM TRA CO DI QUA VACH TRANG KHONG KIEMTRA_VACHNGANG: MOV A,TONG_CAM_BIEN CJNE A,#4,LAYCO_C ;VACH NGANG: TONG CAM BIEM >=4 LAYCO_C: JC THOAT_KT_QUA_VACH_NGANG SETB BIT_QUA_VACH_NGANG ;BAO DA QUA VACH NGANG LCALL TAO_XUNG GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 98 -

LUN N TT NGHIP

ROBOCON 2007

LJMP LOOP_KT_QUA_VACH_NGANG ;CHO DEN KHI QUA VACH NGANG THOAT_KT_QUA_VACH_NGANG: RET ;*** * ;=========================== KT VUNG CAM BIEN ============================ DO_DUONG: MOV A,VAN_TOC ;MOTOR TRAI NHANH HON MOTOR PHAI MOV B,#10 ;GIAM MOTOR TRAI, MOTOR PHAI GIU NGUYEN DIV AB MOV B,#8 MUL AB MOV P_BTRAI,A MOV P_BPHAI,VAN_TOC MOV A,VAN_TOC CJNE A,#70,LAYCO_C_DO_DUONG ;VACH NGANG: TONG CAM BIEM >=4 LAYCO_C_DO_DUONG: JNC TRUNG_TAM_NHANH LJMP TRUNG_TAM_CHAM ;================================================= ;---------------- TOC DO CHAM ------------TRUNG_TAM_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN3 ;1 1 0 0 1 1 ORL C,CAMBIEN4 JC VUNG_PHAI1_NHANH SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI LJMP THOAT_DO_DUONG ;--------BIT NHO VUNG PHAI ----------------VUNG_PHAI1_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN4 ;1 1 1 0 1 1 ORL C,/CAMBIEN3 ORL C,/CAMBIEN5 JC VUNG_TRAI1_NHANH SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#5 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;------------------------------------VUNG_TRAI1_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN3 ;1 1 0 1 1 1 ORL C,/CAMBIEN2 GVHD: PHAN HU TC I: RETURN (CDDT6B)

- 99 -

LUN N TT NGHIPORL C,/CAMBIEN4 JC VUNG_PHAI2_NHANH SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR PHAI MOV B,#10 DIV AB MOV B,#5 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_PHAI2_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN4 ;1 1 1 0 0 1 ORL C,CAMBIEN5 JC VUNG_TRAI2_NHANH SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#4 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_TRAI2_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN2 ;1 0 0 1 1 1 ORL C,CAMBIEN3 JC VUNG_PHAI3_NHANH SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR PHAI MOV B,#10 DIV AB MOV B,#4 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_PHAI3_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN5 ;1 1 1 1 0 1 ORL C,/CAMBIEN4 ORL C,/CAMBIEN6 JC VUNG_TRAI3_NHANH GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

- 100

LUN N TT NGHIPSETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#3 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;-------------------------------------VUNG_TRAI3_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN2 ;1 0 1 1 1 1 ORL C,/CAMBIEN1 ORL C,/CAMBIEN3 JC VUNG_PHAI4_NHANH SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR PHAI MOV B,#10 DIV AB MOV B,#3 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;----------------------------------------------VUNG_PHAI4_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN5 ;1 1 1 1 0 0 ORL C,CAMBIEN6 JC VUNG_TRAI4_NHANH SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI CLR BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#2 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;-----------------------------------------------------VUNG_TRAI4_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN1 ;0 0 1 1 1 1 ORL C,CAMBIEN2 JC VUNG_PHAI5_NHANH CLR BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

- 101

LUN N TT NGHIPMOV A,P_BPHAI ;GIAM MOTOR PHAI MOV B,#10 DIV AB MOV B,#2 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;-----------------------------------------------VUNG_PHAI5_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN6 ;1 1 1 1 1 0 ORL C,/CAMBIEN5 JC VUNG_TRAI5_NHANH SETB BIT_NHO_TRAI CLR BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#1 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_TRAI5_NHANH: ;1 2 3 4 5 6 MOV C,CAMBIEN1 ;0 1 1 1 1 1 ORL C,/CAMBIEN2 JC VUNG_PHAI6_NHANH CLR BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#1 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;-------------------------------------------------VUNG_PHAI6_NHANH: ;1 2 3 4 5 6 MOV C,BIT_NHO_PHAI ;1 1 1 1 1 1 BIT_NHO_PHAI ORL C,/CAMBIEN1 ORL C,/CAMBIEN2 ORL C,/CAMBIEN3 ORL C,/CAMBIEN4 ORL C,/CAMBIEN5 ORL C,/CAMBIEN6 JC VUNG_TRAI6_NHANH GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

- 102

LUN N TT NGHIPMOV P_BTRAI,#1 LJMP THOAT_DO_DUONG ;------------------------------------------------------VUNG_TRAI6_NHANH: ; 123456 MOV C,BIT_NHO_TRAI ; BIT_NHO_TRAI 111111 ORL C,/CAMBIEN1 ORL C,/CAMBIEN2 ORL C,/CAMBIEN3 ORL C,/CAMBIEN4 ORL C,/CAMBIEN5 ORL C,/CAMBIEN6 JC VUNG_ERROR_NHANH MOV P_BPHAI,#1 LJMP THOAT_DO_DUONG ;--------------------------------------------VUNG_ERROR_NHANH: MOV A,P_BPHAI MOV B,#10 DIV AB MOV B,#5 MUL AB MOV P_BPHAI,A MOV A,P_BTRAI MOV B,#10 DIV AB MOV B,#5 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;================================================= ;---------------- TOC DO CHAM ------------TRUNG_TAM_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN3 ;1 1 0 0 1 1 ORL C,CAMBIEN4 JC VUNG_PHAI1_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI LJMP THOAT_DO_DUONG ;--------BIT NHO VUNG PHAI ----------------VUNG_PHAI1_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN4 ;1 1 1 0 1 1 ORL C,/CAMBIEN3 ORL C,/CAMBIEN5 JC VUNG_TRAI1_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

- 103

LUN N TT NGHIPSETB BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#4 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;------------------------------------VUNG_TRAI1_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN3 ;1 1 0 1 1 1 ORL C,/CAMBIEN2 ORL C,/CAMBIEN4 JC VUNG_PHAI2_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR PHAI MOV B,#10 DIV AB MOV B,#4 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_PHAI2_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN4 ;1 1 1 0 0 1 ORL C,CAMBIEN5 JC VUNG_TRAI2_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#3 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_TRAI2_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN2 ;1 0 0 1 1 1 ORL C,CAMBIEN3 JC VUNG_PHAI3_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR PHAI GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

- 104

LUN N TT NGHIPMOV B,#10 DIV AB MOV B,#3 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_PHAI3_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN5 ;1 1 1 1 0 1 ORL C,/CAMBIEN4 ORL C,/CAMBIEN6 JC VUNG_TRAI3_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 DIV AB MOV B,#2 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;-------------------------------------VUNG_TRAI3_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN2 ;1 0 1 1 1 1 ORL C,/CAMBIEN1 ORL C,/CAMBIEN3 JC VUNG_PHAI4_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR PHAI MOV B,#10 DIV AB MOV B,#2 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;----------------------------------------------VUNG_PHAI4_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN5 ;1 1 1 1 0 0 ORL C,CAMBIEN6 JC VUNG_TRAI4_CHAM SETB BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI CLR BIT_NHO_PHAI MOV A,P_BTRAI ;GIAM MOTOR TRAI MOV B,#10 GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

- 105

LUN N TT NGHIPDIV AB MOV B,#1 MUL AB MOV P_BTRAI,A LJMP THOAT_DO_DUONG ;-----------------------------------------------------VUNG_TRAI4_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN1 ;0 0 1 1 1 1 ORL C,CAMBIEN2 JC VUNG_PHAI5_CHAM CLR BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV A,P_BPHAI ;GIAM MOTOR PHAI MOV B,#10 DIV AB MOV B,#1 MUL AB MOV P_BPHAI,A LJMP THOAT_DO_DUONG ;-----------------------------------------------VUNG_PHAI5_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN6 ;1 1 1 1 1 0 ORL C,/CAMBIEN5 JC VUNG_TRAI5_CHAM SETB BIT_NHO_TRAI CLR BIT_NHO_PHAI MOV P_BTRAI,#1 LJMP THOAT_DO_DUONG ;----------------------------------------VUNG_TRAI5_CHAM: ;1 2 3 4 5 6 MOV C,CAMBIEN1 ;0 1 1 1 1 1 ORL C,/CAMBIEN2 JC VUNG_PHAI6_CHAM CLR BIT_NHO_TRAI ;XOA NHO LECH TRAI/PHAI SETB BIT_NHO_PHAI MOV P_BPHAI,#1 LJMP THOAT_DO_DUONG ;-------------------------------------------------VUNG_PHAI6_CHAM: ;1 2 3 4 5 6 MOV C,BIT_NHO_PHAI ;1 1 1 1 1 1 BIT_NHO_PHAI ORL C,/CAMBIEN1 ORL C,/CAMBIEN2 ORL C,/CAMBIEN3 ORL C,/CAMBIEN4 ORL C,/CAMBIEN5 GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

- 106

LUN N TT NGHIPORL C,/CAMBIEN6 JC VUNG_TRAI6_CHAM MOV P_BTRAI,#1 LJMP THOAT_DO_DUONG ;------------------------------------------------------VUNG_TRAI6_CHAM: ; MOV C,BIT_NHO_TRAI ; BIT_NHO_TRAI ORL C,/CAMBIEN1 ORL C,/CAMBIEN2 ORL C,/CAMBIEN3 ORL C,/CAMBIEN4 ORL C,/CAMBIEN5 ORL C,/CAMBIEN6 JC VUNG_ERROR_CHAM MOV P_BPHAI,#1 LJMP THOAT_DO_DUONG ;---------------------------------------------VUNG_ERROR_CHAM: MOV A,P_BPHAI MOV B,#10 DIV AB MOV B,#7 MUL AB MOV P_BPHAI,A MOV A,P_BTRAI MOV B,#10 DIV AB MOV B,#7 MUL AB MOV P_BTRAI,A THOAT_DO_DUONG: MOV GT_TON_XUNG_BANH_TRAI,P_BTRAI MOV GT_TON_XUNG_BANH_PHAI,P_BPHAI LCALL TAO_XUNG RET ;=============CHUONGTRINHTAOXUNG========== TAO_XUNG: CLR BIT_TON_TRAI CLR BIT_TON_PHAI TX_TRAI: MOV R1,GT_TON_XUNG_BANH_TRAI CJNE R1,#1,TX_TRAI0 SETB MOTOR_TRAI SJMP TX_PHAI TX_TRAI0: GVHD: PHAN HU TC I: RETURN (CDDT6B) -

ROBOCON 2007

123456 111111

- 107

LUN N TT NGHIPCLR MOTOR_TRAI TX_PHAI: MOV R2,GT_TON_XUNG_BANH_PHAI CJNE R2,#1,TX_PHAI0 SETB MOTOR_PHAI SJMP TA TX_PHAI0: CLR MOTOR_PHAI TA: MOV R7,#20 DJNZ R7,$ DJNZ R1,TC JNB BIT_TON_TRAI,TB SJMP TC TB: SETB MOTOR_TRAI MOV A,#251 SUBB A,GT_TON_XUNG_BANH_TRAI MOV R1,A SETB BIT_TON_TRAI TC: DJNZ R2,TA JNB BIT_TON_PHAI,TD SJMP TE TD: SETB MOTOR_PHAI MOV A,#251 SUBB A,GT_TON_XUNG_BANH_PHAI MOV R2,A SETB BIT_TON_PHAI SJMP TA TE: RET ;=================== DELAY ========================= DELAY500MS: ;CHUONG TRINH CON TAO THOI GIAN TRE MOV R5,#6

ROBOCON 2007

DEL500MS1: MOV R6,#75 DEL500MS2: MOV R7,#250 DJNZ R7,$ DJNZ R6,DEL500MS2 DJNZ R5,DEL500MS1 GVHD: PHAN HU TC I: RETURN (CDDT6B) -

- 108

LUN N TT NGHIPRET ;*** ;=================== DELAY ========================= DELAY50MS: ;CHUONG TRINH CON TAO THOI GIAN TRE MOV R6,#75 DEL50MS: MOV R7,#250 DJNZ R7,$ DJNZ R6,DEL50MS RET ;======================= QUEO PHAI ========================== QUEO_PHAI: MOV ENCODER_THAP,#GT_ENCODER_QUEO_PHAI_THAP MOV ENCODER_CAO,#GT_ENCODER_QUEO_PHAI_CAO SETB MOTOR_TRAI_DAO CLR MOTOR_PHAI_DAO LCALL DELAY500MS MOV GT_TON_XUNG_BANH_TRAI,#70 MOV GT_TON_XUNG_BANH_PHAI,#80 SETB ACT_NGAT_TIMER1 KHONG_DO_LAI_PHAI_DOC: LCALL TAO_XUNG JB ACT_NGAT_TIMER1 ,KHONG_DO_LAI_PHAI_DOC CLR ACT_NGAT_TIMER1 MOV ENCODER_THAP,#5 MOV ENCODER_CAO,#0 SETB ACT_NGAT_TIMER1 KHONG_DO_LAI_PHAI_NGANG: JNB ACT_NGAT_TIMER1 ,BAT_LAI_PHAI LCALL TAO_XUNG SJMP KHONG_DO_LAI_PHAI_NGANG BAT_LAI_PHAI: MOV GT_TON_XU