You are on page 1of 70

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Robocon c t chc t nm 2002.Cuc thi ny cun ht rt nhiu bn sinh vin c nim am m khoa hc k tht.Cuc thi ny em li cho
1

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

chng ta rt nhiu nhng kin thc v k thut ,rn luyn c tnh kin tr ,bn b ,dm i mt vi gian kh .Hn na ,cuc thi li nhng k nim p v mt thi sinh vin. Gio trnh ny c bin son nhm gip cc bn c c mt ci nhn tng quan v robot ,s nh hng c th v nhng kinh nghim qu bu khi tham gia robocon Gio trnh gm 8 bi : Bi 1: Gii thiu v Robot Cc Modul ca robot. Bi 2: Mch iu khin robot bng tay. Bi 3: Mch cm bin d ng. Bi 4: Mch cng sut iu khin ng c . Bi 5: Mch vi iu khin. Bi 6: Lp trnh v k thut d ng . Bi 7: Lp trnh cc thao tc khc v chin thut. Bi 8: Chng trnh hon thin cho mt robot t ng Ton b cc bi hc u c thc hnh trn mch v robot tht.S dng mch in v robot ca i BK-FIRE.

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Bi ny s gii thiu cho cc bn mt cch tng quan v robot v cc modul ca robot cng nh mt s kinh nghim khi lm robocon. 1.1.Gii thiu v robot 1.1.1.Nhng hnh nh v robot trong cc cuc thi robocon Hnh 1.1.BK-FIRE 2005 (Robot t ng)

Hnh 1.2.BK-FIRE 2005 (Robot bng tay)

Hnh 1.3. FXR 2004 (robot t ng)

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Hnh 1.4.BKPRO 2006

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

1.1.2.Cc modul trong robot Trong robocon ,c 2 loi robot l robot t ng v robot iu khin bng tay. Robot bao gm 3 phn chnh :C kh ,mch in t v lp trnh + C kh :
5

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Phn ny bao gm cc kt c c kh ca robot .Phn ny mi nm u thay i tu thuc vo thi.y chnh l phn th hin tng ca bn.Khi c mt tng c o ,mt kt cu c kh tt ,bn s c nhiu c hi dnh chin thng.Trong cuc thi robocon , tng ng vai tr rt quan trng .Do ,khi thit k c kh ,ton i cn phi hp bn k lng a ra mt gii php thit k c kh ti u nht. thit k c kh ,cc bn c th dung cc phn mm thit k c kh chuyn dng nh Solid work ,Autocad. Hnh 1.3.C cu bnh xch

Hnh 1.4.C cu kh nn

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

C cu kh nn c BK-FIRE s dng u tin trong cuc thi robocon 2005 .T ,c cu ny c rt nhiu i s dng v rt thnh cng nh FAS-01 ,BK-FIRE (2006). + Mch in t Mch in t trong robot ng vai tr nh nhng mch mu trong mt c th ngi .N ng vai tr kt ni ton b nhng b phn khc trong robot thnh mt th thng nht. Mch in t trong robot bao gm cc phn chnh : - Mch vi iu khin (8051 ,PIC ,AVR) ng vai tr nh b no ca robot iu khin ton b hot ng ca robot theo chng trnh lp sn. - Mch sensor ng vai tr nh cc gic quan ca robot gip robot nhn dng mi trng xung quanh gi tn hiu v vi iu khin. - Mch cng sut iu khin ng c ,dng iu khin cc c cu ca robot - Mch chin thut thi u :cho php ngi s dng c th tu la chon chin thut khi trn sn thi u.

Hnh 1.5.Mch in t trong robocon (FXR)

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Hnh 1.6.Mch robot (BK-PRO 2006)

+Lp trnh Chng trnh trong robot ging nh b no ca mt c th ngi ,robot ch hot ng c khi c chng trnh ci t sn cho n.Cc chin tht thi u ,ng chy ca robot l do ngi lp trnh qut inh .Hai ngn ng c s dng nhiu trong robocon l C v ASM .Tuy nhin ,ngn ng C c s dng nhiu nht v C c cu trc d debug li v c bit thun tin

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

khi lm nhng chng trnh ln (Cc chng trnh trong robocon rt phc tp). mt robot c th hot ng tt ,cn phi c s phi hp cht ch gia cc phn c khi ,mch ,v lp trnh .Nu mt b phn khng tt ,th robot s khng hot ng c. 1.2.Mt s kinh nghim khi tham gia robocon. 1.2.1.T chc i hnh. Mt i robot bao gm 7 n 10 ngi ,v thng c chia thnh 3 nhm -Nhm c kh :Thit k ,gia cng c kh (3-4 ngi). -Nhm mch in t :Thit k ,lm mch cho robot (2-3 ngi). -Nhm lp trnh: Lp trnh ,test robot (3 ngi) Ngi i trng phi c trch nhim phn cng r rng cng vic cho tng ngi ,cc thnh vin phi nghim tc chp hnh trnh hin tng ch , li. 1.2.2.Mua sm thit b linh kin i robot phi c nh hng r rng ,lm robot cn c nhng phng tin g ,a im mua hng c th. Cng c c kh :Khoan my ,ca my ,ca tay ,inh rt : a im :Ch gii (Ph Hu) Cng c in t :M hn ,ht thic ,ng h in t.v.v.v a im :Trn Cao Vn ,17 Hn Thuyn ,70 Hng Trng ,269 i Cn. 1.2.3.Tm kim ti tr lm robot ,bn phi tn rt nhiu tin (trung bnh t 20 n 30 triu v c th nhiu hn na) .Vi iu kin sinh vin ,cc bn rt kh c th c c s tin nh th ,Do ,bn cn phi tm kim cc nh ti tr t cc doanh nghip.Tuy nhin xin c ti tr ,bn cn phi c phng n k hoch c th ,hay nhng mi quan h khc. -a ch mt s doanh nghip cc bn c th xin ti tr a) Cng ty Elcom 18 Nguyn Ch Thanh b) Cng ty c phn k thut SEEN (T Lim) c) Cng ty Ameco (Tng 1 to nh sng Phng Lit)

Robot iu khin bng tay l mt phn khng th thiu c trong robocon .Trong mt s trn ,robot bng tay c vai tr h tr cho robot t
9

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

ng .i khi ,robot bng tay gip thay i cc din trn sn.Mch iu khin robot bng tay phn ln l mch relay iu khin ng c. 2.1.Chc nng ca mch iu khin bng tay Mch iu khin bng tay dng iu khin cc ng c ca robot bng tay.Vic iu khin ng c bao gm cc chc nng sau - iu khin ng c quay ngc (robot li ) - iu khin ng c quay xui (robot tin ) - Dng ng c (dng robot) Relay c dng trong robot bng tay l loi relay OMRON ,dng ln

Hnh 2.1.Role omron

2.2.Nguyn tc hot ng mch iu khin robot bng tay Mch ny s dng 2 relay iu khin 1 ng c ,cp ngun cho relay th 1 th ng c quay phi ,cp ngun cho relay th 2 th ng c o chiu. S mch iu khin bng tay

10

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Bn thit k mt mch iu khin s dng cc nt bm ng m cc relay ,mch rt n gin v hiu qu.Tuy nhin ,lm nh vy s khng thm m v bt tin .Do bn c th thit k b iu khin bng gamepad PS 2 iu khin . (Phn ny c tham kho ti liu trn mng) Gamepad cho Robot iu khin bng tay chia lm 2 loi : iu khin t xa bng hng ngoi v iu khin qua dy cp. Nu dng cc mch thu pht hng ngoi thng thng th tnh n nh khi thi u khng cao (!), tt nht nn dng Vi x l (VXL) thu pht theo tn s ring ca mnh (nh POL chng hn). iu khin qua dy cp mang tnh n nh rt cao, y chng ti cp ti cch s dng gamepad qua dy cp. 1.S dng gamepad playstation ca SONY. Kt ni trc tip vo Vi x l. Rt gn khi thit k phn cng, tuy nhin chng ta nn km theo nt Reset VXL trn gamepad tng tnh n nh. y l phng php s dng ca i FXR. 2.Ci to phn mch ca 1 gamepad bt k: Trong mch ca cc gamepad bt k, cc nt nhn c thit k nh l cc cng tc hnh trnh (tc l c 1 im chung ni mass). + Ct b ng mch in ni cc nt nhn vi phn iu khin ca gamepad. + S dng cc nt nhn nh l cc cng tc hnh trnh c lp. a. Truyn ni tip :

11

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Theo cch x l ny chng ta ch s dng cp 4 si : +5v, mass, TXD, RXD. Cch x l ny vn cha n nh tuyt i nhng s dng t Port VXL. Nn km theo nt Reset VXL trn gamepad tng tnh n nh. y l phng php Basic Bot s dng nm 2003 v 2004. b. Truyn song song : Thc cht ta ni tt c cc nt nhn xung thng mch iu khin, khi cc nt nhn ng vai tr nh l nhng cng tc hnh trnh. Phng php ny rt n nh, tuy nhin nhc im l rt tn Port VXL (mi nt nhn ng vi 1 Port).

Cch khc phc nhc im trn : S dng mch dn knh 16 sang 1.

12

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Phng php ny gim bt c ng k s lng Port VXL, tnh n nh cao. Thit k mch robot bng tay kiu bn t ng c FXR s dng trong cuc thi robocon 2004 rt thnh cng (ot chc v ch )

Bi hc ny gii thiu v mch cm bin trong robocon.Mch cm bin ng vai tr nh mt ca robot gip cho robot c kh nng nhn bit c mi trng xung quanh (vch trng ,chng ngi vt ) t c bin php x l. Trong mch cm bin ,cc bn c th s dng cc loi led thu pht hng ngoi hoc quang tr .Led thu pht hng ngoi c gi thnh r (2500 /cp). Hnh 2.1.Sensor hng ngoi.

i vi robot cng nghip ,bn c th s dng nhng loi cm bin cng nghip ca cc hng Omron ,hay Siemens.Cc loi cm bin ny c nhy cao v kh nng chng nhiu tt.Tuy nhin gi thnh rt t (hng trm ),cho nn s dng chng trong robocon th khng ph hp .Bn hon ton c th t ch to mch sensor cho mnh.

Hnh 2.2.Mt s sensor dng trong cng nghip

13

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

3.1.Mch sensor pht thng.

14

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

3.1.1.S nguyn l
C D V 5 0 _ 2 P R44 R

C D V 5

0 _ 2 P R44 R

D7 LED

D7 LED

U11A 2

2 1

U11F

U11A 2

2 1

U11F

74LS14 3 1

74LS14

74LS14 3 1

74LS14

R43 R

C31 CAP NP GND U10A

R43 R

C31 CAP NP GND U10A

1 4 + 3 2 LM324 BIEN_TRO_1 11

1 4 + 3 2 LM324 BIEN_TRO_1 11

1 _ N I

1 _ N I

3.1.2.S mch in

15

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

3.1.3.Nguyn l hot ng. Trong s nguyn l trn ,cp led thu pht c t st nhau ,mt chn ca led thu c a v LM324 .LM324 l IC khuch i so snh ,mc ch khuych i tn hiu t sensor .Tn hiu ra t LM324 c a v IC 7414 (Triger inverter) o mc tn hiu ,tn hiu ra c a vo chn ca vi iu khin.Chit p ng vai tr chnh nhy ca sensor ,n led c tc dng bo hiu khi sensor gp vch trng. Khi hot ng ,led pht chiu tia hng ngoi xung sn thi u ,khi chm tia hng ngoi chiu xung nn en , led pht khng nhn c chm phn x nn khng dn ,in tr bng v cng ,tn hiu ra LM324 l mc 1 ,qua 7414 b o mc tn hiu v 0 (led bo sang ,tn hiu vo vi iu khin l mc 0).Tng t ,khi robot gp nn trng ,mc tn hiu ngc li ,led bo tt ,tn hiu vo vi iu khin mc 1. 3.1.4.u nhc im Mch sensor pht thng c u im l n gin ,d ch to ,tit kim chi ph .Tuy nhin ,nhc im ca mch sensor pht thng l kh nng chng nhiu km .Khi trn sn thi u ,nh sng n cao p s nh hng n kh nng hot ng ca sensor .Do ,sensor phi c che chn k lng khi nh hng n kh nng hot ng ca sensor (t trong hp kn ,hoc bc bng dnh en cc sensor). 3.2.Mch sensor pht xung

16

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

c im ca mch sensor pht xung l kh nng chng nhiu tt ,khng b nh hng bi cc iu kin bn ngoi nh nh sng.Tuy nhin ,mch pht xung c nhc im l phc tp ,khng tin li
5VVDK RLED1 5VVDK 5VVDK 22K C1.1 1nF 3 THU1 R1.1 22K R2.1 100K COMPA U1A 4 + 1 104 1 1 C2.1 R3.1 12 4 + U1D 14 VDK1 LED1 2.2K

2 LM324 -

13 LM324 COMPB 1 1 5VVDK

Trn thc t ,trong cc cuc thi robocon a s cc i s dng mch sensor pht thng .Bi v mch sensor pht thng tng i n gin ,d s dng

3.3.B tr sensor Trn robot ,v nguyn tc ,s dng nhiu sensor th kh nng bm ng cng tt .Tuy nhin ,trn thc t bn ch cn s dng 6 n 8 sensor l

17

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

.Cch b tr sensor s tu thuc vo tng v cht lng cc loi ng c bn s dng trong robot. Xin gii thiu 2 phng php b tr sensor trn robot a) S dng 6 sensor xp thnh hng ngang. | | | | Vch trng | | O O |O O| O O (sensor) 1 2 3 4 5 6 Cch ny thch hp i vi vic s dng cc loi ng c c hm tt ,quay ng t quay bng 1 bnh (bnh quay ,bnh dng).Trong cch b tr ny ,sensor 2,3,4,5 c s dng bm ng ,hai sensor ngoi cng 1 v 6 c dng m ng t v quay phi ,quay tri.Phng php b tr sensor ny c FXR s dng nm 2004 v ot chc v ch. a) S dng 8 sensor | | | | Vch trng | | O O |O O| O O (sensor) 2 3 4 5 | | | | O O Cch ny thng c p dng vi cc loi ng c c hm km ,quay ng t bng 2 bnh.( 2 bnh quay ngc chiu nhau). s trn ,2 sensor c lp pha di ca robot bt ng t ,cn 6 sensor pha trn dng bm ng.y l cch m BK-FIRE s dng trong cuc thi robocon nm 2005. 3.4.Cng tc hnh trnh Cng tc hnh trnh c s dng kh nhiu trong robocon .Cng tc hnh trnh thng c lp t cc c cu pha trn ,nh c cu truyn ng ,gp qu ,b bng. Hnh 3.3.Cng tc hnh trnh

18

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Cng tc hnh trnh c 3 chn : dng thng ng ,thng m. Mt chn tn hiu c ni t hoc VCC , mt chn c ni vi vi iu khin. Trong robocon ,vic b tr cng tc hnh trnh cn phi linh hot ,kho lo pht huy ti a kh nng nhn bit ca robot. 3.5.Encoder Mt cng ngh mi c mt s i robot p dng trong nhng nm gn y l s dng cc b encoder . C s ca phng php ny l s dng c tnh di qung ng i c v sai s chuyn ng gia hai bnh ca ng c nh khai thc tnh cht ca b m ho xung vng quay (Rotary encoder).

B encoder thc cht l mt a c c l c gn cp sensor thu pht 2 bn .B encoder c gn trn bnh xe hoc trn ng c ca robot

Nguyn tc hot ng ca encoder Gm mt b thu pht hng ngoi v mt a cho chia l c t gia h thng thu pht ny. a c gn trn trc ca ng c hoc trc chuyn
19

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

ng. Qu trnh a chuyn ng lm cho phn photo sensor thay i trng thi v to ra mt chui cc xung vung trn u ra. y l thng s k thut quan trng ca mt encoder. Tu theo s l trn a m s xung to ra trong mt vng quay ca a khc nhau. S lng xung cng ln ngha l s l cng nhiu trn mt vng trn 360. Ngha l ta cng c th iu khin chnh xc. V d nhin b encoder cng t tin. Chng ta c th thy c nhiu loi encoder dng t trng hoc trn a c nhiu vng l nhng ti gii thiu loi ph dng v n gin nht l s dng nh sng nh trn. Trong thc t chng ta c th thy cc b encoder trn cc ng c DC ch khng ch l cc thnh phn c lp. Vic la chn v s dng hai loi encoder ny u c nhng u v nhc im ring m ti khng cp y. Hnh dng cc encoder :

Khi robot mun dch chuyn theo mt qu o xc nh cn cn c vo hai trng thi c bn l qung ng i c ca hai bnh (tham chiu vi chng trnh, v hng chuyn ng), Sai s qung ng gia hai ng c.

20

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Phng php ny th hin c tnh rt mm do khi phi chuyn hng v c th xoay robot mt gc bt k ra khi qu o chnh. Encoder thng c 6 dy (hoc 4 dy ty loi ) bao gm 2 dy ngun ,2 dy tn hiu A v B v dy pha Z.2 dy tn hiu A v B cho php bn xc nh s vng quay ca ng c ,vn tc v chiu quay ca ng c. lp trnh x l tn hiu encoder ,bn c th ni 2 dy tn hiu A v B vo 2 chn timer hoc ngt ngoi ca vi iu khin,thit lp vi iu khin ch counter ,vi iu khin s m xung t vi iu khin. Bn c th tham kho code di y void ngat0(void) interrupt 1 // ngat bo dinh thoi 0 { if (kt0==0) // bit nay set de dung trong luc quay va di lap ma { P1_2=1; P1_3=1; P1_0=1; P1_1=1; } if (kt0==1) // bit nay xoa de bam xung dinh thoi new { TR0=0; if (dem_trai==tocdo_trai) { P1_2=~P1_2;tocdo_trai=10-tocdo_trai;dem_trai=0;} dem_trai++; TR0=1; } if (kt0==2) // dung cho bamxung quay { TR0=0; TH0=0xFF; TL0=0x47; d2++; TR0=1; }
21

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

} // quay dung bo lap ma void quayphai(unsigned char bytecao,unsigned char bytethap) { TMOD=0x55;// dem su kien P1_2=1; P1_3=0; P1_0=0; P1_1=1; delay(500); P1_0=1; kt0=0;// bit nay set de chuong trinh ngat kiem tra lua chon TH0=bytecao; TL0=bytethap; // 230 XUNG TR0=1; while(1) { if (P1_3==1) break;

} } void ngat1(void) interrupt 3 // ngat bo dinh thoi 1 { if (kt1==0) // dung de di lap ma { P1_0=1; P1_1=1; P1_2=1; P1_3=1; } if (kt1==1) // bam xung dinh thoi kieu moi { TR1=0; if (dem_phai==tocdo_phai) { P1_0=~P1_0;tocdo_phai=10-tocdo_phai;dem_phai=0;} dem_phai++; TR1=1;
22

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

} } // quay dung bo lap ma void quaytrai(unsigned char bytecao,unsigned char bytethap) { TMOD=0x55; //khoi dong bo dinh thoi dem su kien kt1=0; P1_0=1; P1_1=0; P1_2=0; P1_3=1; delay(500); P1_2=1; TH1=bytecao; TL1=bytethap; TR1=1; while(1) { if (P1_1==1) break; } }

void quay(unsigned char status ,unsigned char bytecao ,unsigned char bytethap) { if (status==turn_right) quayphai(bytecao,bytethap); if (status==turn_left) quaytrai(bytecao,bytethap); } void delay (unsigned long time) { unsigned long i; for (i=0;i<time ;i++)
23

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

{} } // bam xung bang bo dinh thoi

void quayphaingatu() { motor(backward); delay(3500); motor(stop); delay(10000); motor(left_go); delay(4500); bamxung_quay(5,motor_left); motor(stop); } void quaytraingatu() { motor(backward); delay(3500); motor(stop); delay(10000); motor(right_go); delay(4500); bamxung_quay(5,motor_right); motor(stop); }

4.1. ng c. ng c c s dng trong robocon l loi ng c 1 chiu (DC motor). Hnh 4.1.ng c 1 chiu

24

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Vic la chn ng c cn c vo cc tiu ch sau: -Tc -Kh nng chu ti - hm -Dng ,p -i vi ng c dng cho c cu chuyn ng (phn ca robot) yu cu t ra l phi c tc nhanh ,v c hm tt .ng c thng c s dng phn ny l loi ng c pitman. Ngoi ng c pitman ,bn c th s dng cc loi ng c khc ,min l t c cc tiu ch nu trn.Bn c th s dng ng c vung tho bnh rng .y l cc m BK-FIRE s dng trong cc thi robocon2005 ,bng cch ny ,robot ca BK-FIRE t c tc kh cao.

25

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Hnh 4.3.ng c pitman. -i vi ng c dng cho c cu nng h ,gp qu (phn trn ) yu cu phi c kh nng chu ti ,kho .Loi ng c thng c s dng l loi ng c gt nc hoc ng c c hp iu tc .c im ca loi ng c ny l tc khng cao nhng lc quay rt kho c th chu ti ln.Trong nm 2005 ,cc i robocon BK- Nng s dng ng c ny cho robot trung tm v t hiu qu rt cao. -Trong mt s trng hp ,robot cn phi c tc cc nhanh .VD nm 2005 v 2006 ,cc robot trung tm phi c tc c bit nhanh (trong vng 1,5s-2s phi chim lnh c uc trung tm). gii quyt vn ny,mt s i s dng ng c xe my cho robot trung tm.ng c xe my c dng ln ,v tc rt nhanh.Tuy nhin vi loi ng c ny th cc mch cng sut khng th iu khin c. gia tng tc ,bn c th lp t c cu xch cho robot ca mnh. 4.2.Mch iu khin ng c 4.2.1.Mch relay 4.2.1.1.S nguyn l

26

DKS GROUP Nguyen Manh Truong Mobi : 0988857861


R20 DC1_DIR R R19 DC2_DIR 24VDC Q6 2N1470 ROLE1_ON 24VDC 24VDC TRAN1_ON 3 Q5 2N1470 ROLE2_ON 5 ROLE1_ON 1 GND 2 20-2121-DPDT LS2 DC1_EN R30 GND R TRAN2_ON TRAN2_ON 3 5 ROLE2_ON 1 GND 2 Q2 IRF540N/TO GND R 20-2121-DPDT Q1 IRF540N/TO 24VDC 6 7 4 8 6 7 4 LS1 8

http://www. dks.com.vn

J16 1 2 CON2

R TRAN1_ON

J17 1 2 CON2

DC2_EN

R29

4.2.1.2.Nguyn l hot ng. Loi relay c s dng trong mch robot t ng l loi relay 8 chn (2 tip im ) Mch relay iu khin ng c s dng 2 tn hiu iu khin .Chn DC_EN v chn DC_DIR ,chn DC_EN l chn kch FET (ng m FET) chn DC_DIR l chn o chiu .Tuy nhin ,trc khi o chiu ng c bn phi tt FET trc ,nu khng s gy cht FET.

4.3.Mch cu H iu khin ng c 4.3.1.S nguyn l


27

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

+12V 5V 5V 5V 4 1 U1A 3 2 13 74LS00 7 NGUON5V 4 3 2 1 CON4 5V 5V 4 1 U1B 6 5 74LS00 7 9 10 74LS00 7 QCH1.2 RCH1.8 10K RCH1.9 10K 4 1 U1C 8 R02 1K Opto1.2 PS2501-1 MTP60N06 -12V QCH1.4 MTP60N06 1 2 CON2 +12V NGUON12V 5V MTP60P06 74LS00 7 MCH1+ MCH112 R01 1K Opto1.1 PS2501-1 11 QCH1.3 MTP60P06 RCH1.5 10K QCH1.1 RCH1.6 10K

4 1

U1D

MCH1-

MCH1+

2 1 OUT1

5V

-12V

4.3.2.S mch in

4.3.3.Nguyn l hot ng Mch cu H iu khin ng c s dng 4 MOSFET IRF540 khuch i cng sut v ng m. Hnh 4.4.IRF 540

28

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Mosfet l loi transitor hiu ng trng (MOSFET = metal-oxide semiconductor field-effect transistor) MOSFET l m hnh ngun dng ph thuc p.Nh vy kch dn MOSFET cn a in p vo hai cc Vgs. Mt im khc ca MOSFET na l MOSFET c Vds khng n nh nh Vce (BJT) m n ph thuc vo gi tr n nh khc l Rds-on ( ch ng ngt). Nh vy Vds = Id*Rds. Nh vy cng sut tiu tn trn MOSFET ch yu ph thuc vo Rds. C hai loi MOSFET knh P v knh N. Loi knh N thng c Rds nh hn knh P. Loi knh N cn Vgs > 0 dn. Loi knh P cn Vgs < 0 dn. a s cc MOSFET bt u dn khi abs(Vgs) xp x 5. Thng gi tr khuyn co l 10V. Khi in p ln hn 15 bt u c nguy c nh thng Vgs. Kh nguy him l khi b thng MOSFET thng dn lun dn n d n. Trong m hnh ca MOSFET c mt ci t k sinh t gi l Cgs cn quan tm n t ny khi thit k mch li s dng PWM.Khi lm Robot thng dng con IRF540 li ng c DC hoc dng mch cu IRF540 iu khin hng (Mc d cch iu khin ny rt kh). Mch cu H iu khin ng c c 2 tn hiu iu khin .2 chn tn hiu na c ni vi 2 chn vi iu khin. Gi s 2 tn hiu iu khin l A,B (tng ng 2 chn P1.0 ,P1.1) iu khin ng c DC c cc trng thi iu khin :ng c quay ,o chiu ,dng v iu khin tc ng c.

Ta c bng trng thi P1.0 1 0 1 P1.1 0 1 1 Trng thi ng c quay xui ng c quay ngc Dng ng c
29

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

1 1 Dng ng c 4.3.4.M ngun iu khin ng c #include <at89x52.h> #include <robot.h> unsigned char dutycycle=0 ; /* P2_0 P2_1 : dieu khien dong co nang ha P2_2 P2_3 : dieu khien dong co lay bong */ void motor( unsigned char status) { switch (status) { case nang: { P2_0=1; P2_1=0; break; } case ha: { P2_0=0; P2_1=1; break; } case dung: { P2_0=1; P2_1=1; break; } } }

30

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

void motorkep(unsigned char state) { switch (state) { case kep: { P2_2=0; P2_3=1; break; } case nha: { P2_2=1; P2_3=0; break; } case phanh : { P2_2=1; P2_3=1; break; } } } void delay ( unsigned char time) { unsigned char i; for ( i=0; i<time ;i++) {} } void nangnhanhdan(unsigned char time1,unsigned time2) {
31

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

unsigned char x,y; for (x=0;x <time1 ;x++) { for ( y=0;y<time2; y++) { P2_0=1; P2_1=0; delay(dutycycle); P2_1=1; delay(Time-dutycycle); } dutycycle++; if (dutycycle==255) break;; } } void nangchamdan(unsigned char Time1,unsigned Time2) { unsigned char x,y; for (x=0;x <Time1 ;x++) { for ( y=0;y<Time2; y++) { P2_0=1; P2_1=0; delay(dutycycle); P2_1=1; delay(Time-dutycycle); } dutycycle--; if (dutycycle==0) break; }
32

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

} void nhabong(unsigned char timedelay) { motorkep(nha); delay(timedelay); motorkep(phanh); } void main() { // trang thai gap bong motorkep(kep); delay(255); motorkep(phanh); // co cau nang bong hoat dong nangnhanhdan(100,100); // chang 1 nang nhanh dan

// chang 2 : nang het toc luc motor(nang); delay(100); // chang 3 : nang cham dan nangchamdan(100,100); motor(dung); delay(100); motorkep(phanh); /* trang thai nha bong khi P0 cua slaver nhan tin hieu dieu khien tu master thi trang thai nha bong hoat dong */

33

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

nhabong(100);

while(1) { motor(dung); motorkep(phanh); } // P0=0xFB; } /* bo qua thu 1 */ 4.3.5.K thut iu ch rng xung iu khin tc ng c (PWM) iu khin tc ng c l mt k thut ht sc quan trng trong vic lp trnh robot .K thut ny gip bn c th iu khin robot ca mnh chy nhanh chm tu ,gip cho hot ng ca robot lun linh hot ,thch ng vi mi tnh hung xy ra trn sn. a) Cch to xung c rng thay i bng VK. Cch 1: Nh cc bn iu khin nhp nhy 1 con led, l to ra 1 xung 1 chn ca vi iu khin, nhng xung c rng c nh, tn s ln, cch bn c th iu chnh li hm delay tn s ca n ng 1 Khz. Tuy nhin v l dng hm delay nn trong thi gian c xung ln 1(5V) v thi gian khng c xung(0V) vi iu khin khng lm g c, hn na to xung bng vic delay m cc bn c nhu cu cn 2 b pht xung 2 knh, c cng tn s m khc rng xung th tr nn rt kh khn. Cho nn chng ta dng b nh thi Timer ca vi iu khin trong trng hp ny rt tin. + Cch 2: Dng ngt Timer ca b vi iu khin. Trc ht nhc li v ngt ca vi iu khin: + Ngt l g ? tr li cu hi ny ti xin trch an v ngt trong bi 2 v d cho ngt timer: Timer
Program excution without interrut Main Program

ISR

ISR

ISR

Main

**

Main

**

Main

**

Main

Program excution with interrupt. 34

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Mt chng trnh chnh khng c ngt th chy lin tc, cn chng trnh c ngt th c khi no iu kin ngt c m bo th con tr s nhy sang hm ngt thc hin xong hm ngt li quay v ng ch c thc hin tip chng trnh chnh. Ti c 1 v d nh sau: Bn ang n cm , c ting in thoi , bn t bt cm ra nghe in thoi , nghe xong li quay v bng bt cm ln n tip. Th qu trnh n cm ca bn l chng trnh chnh,c in thoi gi n l iu kin ngt, bn ra nghe in thoi l thc hin chng trnh ngt(Interrupt Service Rountine),quay v n cm tip l tip tc thc hin chng trnh chnh. Ngt i vi ngi mi hc vi iu khin l rt kh hiu, v a s cc ti liu u khng gii thch ngt lm g. C nhiu loi ngt khc nhau nhng tt c u c chung 1 c im, ngt dng cho mc ch a nhim. a tc l nhiu, nhim tc l nhim v. Thc hin nhiu nhim v . Cc bn nhn vo tin trnh ca hm main vi chng trnh c ngt : Chng trnh chnh ang chy, ngt xy ra, thc hin hm ngt ri quay li chng trnh chnh. Chng trnh trong vi iu khin khc vi v d n cm nghe in thoi ca ti ch, thi gian thc hin hm chnh l rt ln,thi gian thc hin hm ngt l rt nh, cho nn thi gian thc hin hm ngt khng nh hng g n thi gian thc hin hm chnh Nh vy trong hm ngt cc bn lm 1 vic, trong hm chnh ca bn lm 1 vic nh vy coi nh cc bn lm c 2 vic(a nhim) trong 1 qung thi gian tng i ngn c mS, ch thc ra ti 1 thi im vi iu khin ch thc thi 1 lnh. V d : Bn th ngh xem lm th no va iu ch xung PWM iu chnh tc ng c , va c cc cm bin u vo m tc ng c ph thuc u vo cm bin. Vy ngt l 1 iu kin no xy ra ngu nhin m vi iu khin c th bit do phn cng ca vi iu khin, ri ta cn c vo lp trnh. * V d: Vi ngt b nh thi timer, hay b m counter l khi trn b m th phn cng ca vi iu khin s bo c ngt xy ra v nhy n chng trnh phc v ngt( ISR_ Interrupt Sevice Rountine) 1 cch t ng. Vi ngt ngoi, chn P3.2 chng hn, nu ta khai bo trc chn s dng chn P3.2 s dng cho ngt ngoi ch khng phi s dng cho mc
35

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

ch IO thi c khi c 1 xung xut hin t mch ngoi vi truyn vo chn P3.2 th phn cng ca vi iu khin nhn ra v chuyn ti chng trnh phc v ngt. Vi ngt ni tip th c khi c k t truyn t my tnh xung vi iu khin th s c hin tng ngt xy ra. - Hm ngt: Cu trc: Void Tnhm(void) interrupt ngunngt using bngthanhghi { // Chuong trinh phuc vu ngat o day } Ch v hm ngt: + Hm ngt khng c php tr li gi tr hay truyn bin vo hm. + Tn hm bt k. + interrupt l t kha phn bit hm ngt vi hm thng. + Ngun ngt t 0 ti 5 theo bng vector ngt. + Bng thanh ghi trn ram chn t 0 n 3. Ty theo bn vit hm ngt cho ngun no bn chn ngun ngt t bng sau: Ngt do C a ch vector Reset h thng RST 0000H Ngt ngoi 0 IE0 0003H B nh thi 0 TF0 000BH Ngt ngoi 1 IE1 0013H B nh thi 1 TF1 001BH Port ni tip RI hoc TI 0023H B nh thi 2 TF2 hoc EXF2 002BH Ring ngt Reset khng tnh, bt u m t 0 v t ngt ngoi 0. V d: ti cn vit hm ngt cho b nh thi timer 1 hm ngt s l. void timer1_isr(void) interrupt 3 using 0 { // Lenh can thuc hien. } - V using 0: C 4 bng thanh ghi bn c th chn cho chng trnh phc v ngt, ci ny cng khng quan trng. Trong hm ngt cc bn c th b i t using 0, khi vi iu khin s t sp xp l dng bng thanh ghi no.

36

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

- Hm ngt khc hm bnh thng ch no. Hm bnh thng v d hm delay, c khi bn gi n th n s c thc hin, c ngha l n c v tr c nh trong tin trnh hm main, c ngha l bn bit n xy ra khi no. Cn hm ngt th khng c tin trnh c nh, iu kin ngt c th xy ra bt k lc no trong tin trnh hm main v c khi no c iu kin ngt th hm ngt s c gi t ng. - s dng ngt ta phi lm cc cng vic sau: 1) Khi to ngt: dng ngt no th cho php ngt hot ng bng cch gn gi tr tng ng cho thanh ghi cho php ngt IE( Interrupt Enable): EA ET2 ES ET1 EX1 EX0 ET0 iu khin cc ngun ngt IE (0: khng cho php; 1: cho php) IE.7 EA Cho php/ khng cho php ton cc IE.6 --Khng s dng IE.5 ET2 Cho php ngt do b nh thi 2 IE.4 ES Cho php ngt do port ni tip IE.3 ET1 Cho php ngt cho b nh thi 1 IE.2 EX1 Cho php ngt t bn ngoi (ngt ngoi 1) IE.1 EX0 Cho php ngt t bn ngoi (ngt ngoi 0) IE.0 ET0 Cho php ngt do b nh thi 0 IE l thanh ghi c th x l tng bt. V d : bn mun cho php ngt timer 1 bn dng lnh: ET1=1; Khng cho php na bn dng lnh : ET1=0; Hoc bn c th dng lnh IE= 0x08; th bit 3 ca thanh ghi IE tc(IE) s ln 1. Nhng cch th nht tin hn. 2) Cu hnh cho ngt: Trong 1 ngt n li c nhiu ch v d: vi ngt timer. Bn phi cu hnh cho n chy ch no, ch timer hay counter, ch 16 bit, hay 8 bit, bng cch gn cc gi tr tng ng cho thanh ghi TMOD( Timer MODe). TMOD Chn model cho b nh thi 1 7 GATE Chn model cho b nh thi 1 6 C/T Bt chn chc nng m hoc nh thi: 5 M1 Bit chn ch th nht 4 M0 Bit chn ch th 2 M1 M0 Ch Chc nng 0 0 0 Ch nh thi 13 bit 0 1 1 Ch nh thi 16 bit

37

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Ch t ng np li 8 bit 1 1 3 Ch nh thi chia x 3 GATE Bit iu khin cng cho b nh thi 0 2 C/T Bit chn chc nng m / nh thi cho b nh thi 0 1 M1 Bit chn ch th nht cho b nh thi 0 0 M0 Bit chn ch th 2 cho b nh thi 0 V d ti cu hnh cho b nh thi 1 ch timer,vi b m 8 bit t ng np li(auto reload) dng lnh sau: TMOD=0x20. Cc bn ng lo v vic phi nh bng thanh ghi ny, cc bn khng phi nh ni trng ra nh vy, chuyn sang phn lp trnh cc bn s c hng dn lm th no khng phi nh, nhng ch lp trnh vi C mi lm c cn lp trnh Asem th bt buc phi nh . 3)Bt u chng trnh c ngt: -Trc khi bt u cho chy chng trnh ta phi cho php ngt ton cc c xy ra bng cch gn EA(Enable All interrupt) bng 1, th ngt mi xy ra. -Thng th ngay vo u chng trnh(hm main) trc vng while(1) chng ta t cng vic khi to, cu hnh v cho php kim tra ngt. V d vi b nh thi timer ta gn cc gi tr ph hp cho thanh ghi TCON( Timer CONTROl). TCON iu khin b inh thi TCON.7 TF1 C trn ca b nh thi 1. C ny c set bi phn cng khi c trn, c xo bi phn mm, hoc bi phn cng khi b vi x l tr n trnh phc v ngt TCON.6 TR1 Bit iu khin hot ng ca b nh thi 1. Bit ny c set hoc xo bi phn mm iu khin b nh thi hot ng hay ngng TCON.5 TF0 C trn ca b nh thi 0 TCON.4 TR0 Bit iu khin hot ng ca b nh thi 0 TCON.3 IE1 C ngt bn ngoi 1 (kch khi cnh). C ny c set bi phn cng khi c cnh m (cung) xut hin trn chn INT1, c xo

38

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

bi phn mm, hoc phn cng khi CPU tr n trnh phc v ngt TCON.2 IT1 C ngt bn ngoi 1 (kch khi cnh hoc mc). C ny c set hoc xo bi phn mm khi xy ra cnh m hoc mc thp ti chn ngt ngoi TCON.1 IE0 C ngt bn ngoi 0 (kch khi cnh) TCON.0 IT0 C ngt bn ngoi 0 ( kch khi cnh hoc mc) V d chy b nh thi timer 1 ta dng cu lnh: TR1=0; TR1(Timer Run 1). Cn bn no thch kh th:TCON=0xxx; Cn cc loi ngt khc qu trnh tng t, y l kha hc c bn ch lm vic vi ngt timer, trong kha nng cao s c cc ngt cn li, tuy nhin lm vic c vi ngt timer th cc ngt khc cc bn cng c th lm tng t, cc bn lm n ngt no th dng ti liu tra bng thanh ghi ca ngt . Ti liu ti s gi cng bi ny. - Quay tr li bi hc: Sau khi khi to song v cho ngt timer 1 chy th iu g xy ra? Khi bt u cho timer 1 chy th b m ca timer s m dao ng ca thch anh, c 12 dao ng ca thch anh(1 chu k my), b m ca timer 1 TL1(Timer Low1) s tng 1,c thn ni timer 1 m s chu k my. i vi ch 8 bt. TL1 l 1 thanh ghi 8 bt, l b m ca b nh thi r ri. N m c t 0, n 255. Nu n m n 256 th b m trn, TL1 quay vng li bng 0, v c ngt TF1(Timer Flag 1) t ng c gn ln 1(bng phn cng ca vi iu khin) nh 1 cng tc t ng bt, v ngt xy ra. Cn vi ch 16 bt, b m ca b nh thi cn 1 thanh ghi 8 bt na l TH1(Timer high 1), nu cu hnh cho timer 1 hot ng ch 16 bit th khi TL1 trn n s m sang TH1(TH1 s tng 1). Nh vy ta c th m: 216 chu k my( 2 thanh ghi 8+8=16 bt). Ch l khi b m trn ngt s xy ra. Nu ta cn m 256 chu k my th khi khi to ta cho TL1=0; , cn nu khng mun m 256 chu k my m ta ch cn m 100 thi ngt xy ra ri th ta fi lm nh sau: 256-100 = 156; v khi khi to ta gn : TL1=155; v m t 155 n 255 l 100 ln th ngt xy ra. Vi yu cu ca bi. To xung tn s 1Khz Chu k = 1/103 = 0,001 giy= 1 mili giy=1000 uS= 1000 chu k my. Vi 10 cp tc , tc l bn phi to ra c xung 10%, 20%, 30%, 40%, , 90%, 100%. 1 xung nh sau: 5V
39

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

0V

T : Chu k 1000 miro giy. Khong thi gian xung ko di 5V l T1. Xung 10% tc l T1/ T= 10%=1/10. Xung 20% T2/T=2/10PWM(Thay i rng xung) By gi ti mi xin ni v phn 2. 4.3.5.Nguyn l ca PWM - Xung PWM: a ra m transitor, xung vi rng ln hn transitor s m lu hn ng c s quay nhanh hn,d nhin khng tuyn tnh. Khng c xung ng c s khng quay, c xung 100% ng c s quay max.Tuy nhin xung phi ln hn 1 mc no th mi khi ng cho ng c. Cc c tnh ny cc bn tham kho trong gio trnh v my in, kh c in, nu cc bn cn thng s chnh xc. c th thay i 10 cp tc vi chu k 1000uS, ta khi to cho ngt timer: 100 uS ngt 1 ln. Trong hm ngt kim tra xem ta cn cp xung bao nhiu % th ta s gn gi tr cho n. C th nh sau: * Hm khi to ngt. Dng ngt timer 0, 100 uS ngt 1 ln, dng ch 2 8 bit t ng np li ca timer (v mnh ch cn m n 100).TL0 np bng 156. i vi ch 2 khi trn b m TL0 s quay vng gi tr bng 0, nhng sau n li c np gi tr lu trong TH0(gi tr np li), do ta ch cn gn gi tr choTL0 v TH0 trong hm khi to, cn cc ch khc 16 bit, 2 timer counter 8 bit, khi trn b m TL0 khng c np li m ta phi t gn li gi tr cho n trong hm ngt. void khoitaotimer0(void)// Ham khoi tao { EA=0;// Cam ngat toan cuc TMOD=0x02;// Timer 0 che do 2 8 bit auto reload TH0=0x9B;// Gia tri nap lai 155 doi ra so hex TL0=0x9B;// Gia tri khoi tao 155 doi ra so hex ET0=1;// Cho phep ngat timer 0 EA=1;// Cho phep ngat toan cuc TR0=1;// Chay timer 0 bat dau dem so chu ki may }
40

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Mch vi iu khin ng vai tr l phn trung tm ca robot .Vi iu khin c th v nh l b no ca mt c th ngi ,iu khin mi hot ng ca robot. 5.1.Gii thiu mt s loi vi iu khin c s dng trong robocon 5.1.1.Vi iu khin 8051 Vi iu khin 8051 l loi vi iu khin c s dng nhiu nht trong cc cuc thi robocon t trc ti nay.Bi v n c gi thnh r ,d mua v nhiu ti liu ting Vit.Chnh v th ,nhiu i robocon s dng 8051 l b no cho robot ca mnh. Hnh 5.1.Vi iu khin 8051

41

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Hnh 5.2.S chn

42

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Trong cc loi iu khin h 8051 ,vi iu khin 89c52 v 89s52 c nhiu i robocon s dng nhiu nht.c bit l cc i n t Bch Khoa H Ni.

43

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Nhng c im ca vi iu khin 8051 ,cc bn c th tham kho trong cun gio trnh 8051 ca MTC. Mt loi vi iu khin thuc h 8051 kh mnh na do hng Philip sn xut l loi P89V51RD.Chip Philip c cc i min nam ,c bit l BK HCM s dng rt nhiu do c ti tr min ph. Nhn chung chp Philip c y nhng tnh nng ca loi chp 89c51 ca atmel nh timer/counter , ngt .v ..v. Bn cnh , chp philip c nhng tnh nng ni bt hn con 89c51 . - B nh ROM c dung lng ln 16/32/64 kb Flash rom v 1024 bytes Ram ( so vi 8 k rom ,128 bytes ram ca 89x) b nh ca chp PHILIP -Chc nng ISP ( In system -programming) ISP l kh nng np trc tip chng trnh vo chip ngay trn mch m khng cn phi rt chp ra khi mch .i vi vdk ca atmel ch c con AVR ,v 89s52 mi c chc nng ny.Nh chc nng ny ,mch np cho chip philip rt n gin d ch to -Chc nng IAP (in-application programmable),chc nng IAP cho php b nh flash c kh nng cu hnh li trong khi cc ng dng ang chy. -3 b nh thi 16 bt chc nng ca philip ging ht chp 89c51 -SPI (serial peripheral interface) Chc nng ny cho php truyn d liu ng b vi tc cao gia chp philip v cc thit b ngoi vi khc ,hay gia cc chp vi nhau. - PWM (pulse width modulation) y l mt chc nng rt c bit ca philip ,khi chp hot ng ch ny mt chn ca chp s ra pht xung vi tn s khc nhau (tn s ny do ngi lp trnh xc nh) . Philip c ch bm xung 8 bit (con AVR cn h tr bm xung 10 bt ADC) vi 5 chn bm xung. -Chc nng ngt Philip 8 ngt vi 4 mc u tin ngt ,n cng c ngt ngoi ,ngt timer , ni tip nh 89c ,ngoi ra cn c chc nng ngt PCA ,UART/SPI.C th ni chip philip l loi chp rt u vit ,c th thay th rt tt cho loi chip 89c52 thng c dng trong cc k ROBOCON.cc bn c th tham kho thm datasheet ca lai chip ny trang http//www.alldatasheet.com (p89v51rd ) Trong nm 2004 ,2006 ,chip Philip c FXR v BKPRO s dng trong cuc thi robocon v ginh chc v ch. 5.1.2.Vi iu khin AVR

44

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

AVR l loi vi iu khin do hng ATMEL sn xut .AVR c nhng tnh nng rt mnh so vi 8051 nh PWM ,ADC .AVR c BK-FIRE s dng u tin vo nm 2006 v lt c vo vng chung kt ton quc. Hinh 5.1.Vi iu khin AVR

Vic s dng AVR trong robocon c th ni l mt ci tin mi trong cng ngh ch to robot theo truyn thng ca cc i n t BKHN.Thng tin v chip AVR cc bn c th tham kho gio trnh Vi iu khin nng cao ca trung tm MTC. 5.1.3.Vi iu khin PIC. Bn cnh AVR ,PIC cng l mt s la chn kh tt cho cc i robocon do nhng tnh nng vt tri ca n so vi cc loi vi iu khin khc nh kh nng chng nhiu ,PWM ,ADC, ngt.Hin nay trn thtrng c kh nhiu dng vi iu khin PIC.VD:pic16f877,pic16f84 ,pic16f828..v.v.v nh gi cc dng PIC - Dng PIC nhiu chn nht l dng PIC18Fxxxx, c nhng con s chn ln n 80 chn - Dng PIC t chn nht l dng PIC10Fxxx, ch c 6 chn - Dng PIC ph bin nht l dng PIC16F877A ( mnh v tnh nng, 40 chn, b nh cho hu ht cc ng dng thng thng) - Dng PIC m chng ti nh gi cao nht l dng PIC16F876A (28 chn, chc nng khng khc g so vi PIC16F877A, nhng nh gn hn nhiu, v s chn cng khng qu t nh PIC16F88). - Dng PIC h tr giao tip USB l dng PIC18F2550 v PIC18F4550 - Dng PIC iu khin ng c mnh nht l dng PIC18F4x31 - Khi cho rng mnh chuyn nghip hn, cc bn nn dng PIC18F458 - Dng PIC tng hnh l dng PIC17xxxxx, hin nay khng cn c sn xut
45

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Hnh 5.2.Vi iu khin PIC

5.2.S nguyn l Trong gio trnh ny ,chng ti ch yu tp trung vo mch vi iu khin dng 89s52.Bi v vi iu khin 89s52 c s dng kh thng dng trong cc k robocon.S nguyn l ca vi iu khin c ni nhiu trong gio trnh vi iu khin c bn (8051) do MTC son tho.Cc bn c th tham kho k hn trong tp gio trnh ny.
5V CL1 104 0 4 C C V 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/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 29 30 CON10 Vidieukhien1 Vidieukhien2 Vidieukhien3 Vidieukhien4 Vidieukhien5 Vidieukhien6 P30(RXD) P31(TXD) 5V 1 3 5 7 9 ISP_program 2 4 6 8 10 CON10AP int P30(RXD) P31(TXD) /INT0 /INT1 T0 T1 A4 A5 SELECT_PRO /INT0 /INT1 T0 T1 PO4 PO5 PO6 1 2 3 4 5 6 7 8 9 10

MASTER A1 A2 A3 B1 B2 B3 B4 B5 1 2 3 4 5 6 7 8 19 18 9 31 39 38 37 36 35 34 33 32 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 XTAL1 XTAL2 RST EA/VPP

Cta1

30p

Y1 RST Cta230p 11.509Mhz 5V PO0 PO1 PO2 PO3 PO4 PO5 PO6 PO7

P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 PSEN P0.4/AD4 P0.5/AD5 ALE/PROG P0.6/AD6 D P0.7/AD7 N G 0 2

5V

P89V51RD2

46

DKS GROUP Nguyen Manh Truong Mobi : 0988857861


5V

http://www. dks.com.vn

SW1 Cs1 100uF RST Rs1 10k

Hnh 5.2.S nguyn l mch vi iu khin. Mch vi iu khin s dng ngun 5 vn.Trong robocon ,mch ny ng vai tr l khi trung tm ca robot , kt ni vi tt c cc modul khc.T mch vi iu khin ny ,bn c th m rng ra cc modul khc. Mch ngun. Mch vi iu khin s dng ngun 5V ,Tuy nhin cc acquy dng trong robot u l ngun 12V hoc 24V .Do ,bn khng th u trc tip ngun c quy vo vi iu khin c ,cn phi thit k mt mch ngun cung cp mt ngun in n nh 5V cho vi iu khin .

DPOWER1 1A POWER_IN J2 2 1 CON2 C_L4 C_N1 104 1000uF SW DPST DPOWER2 10A POWER_IN C_L5 104 24V LED 24V 24V SWITCH POWER_IN

R_CS1 1 22R2W

U3 VIN

LM7805/TO 5V VOUT 3 5V_A D N G 2 LED C_N2 10uF C_L2 104 C_L3 104

C_L1 104

R_5V_A 1K

R_24V 10

S nguyn l mch ngun dng trong robocon. Mch ngun ny s dng IC n p 7805.y l loi IC n p : u vo > 7V u ra 5V 500mA. Mch n p: cn cho VK v nu ngun cho VK khng n nh th s treo VK, khng chy ng, hoc reset lin tc, thm
47

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

ch l cht chp.Trong s trn ,cc t in ng vai tr lc nhiu ,n p ,diode chng ngc dng.Ngoi ra ,trong mch ngun ,cc bn ch nn lp thm n bo ngun v cu ch bo v qu p .

Trong robocon ,lp trnh l khu cui cng trong 3 b phn cu thnh robot. Lp trnh s ng vai tr quyt nh cui cng nh gi robot ca bn s hot ng tt hay khng.Robot s khng th chy tt nu nh chng trnh x l khng hon ho. 6.1.Cc ngn ng lp trnh s dng trong robocon. Trong robocon c 2 ngn ng lp trnh c s dng nhiu nht l C v ASM .2 ngn ng ny c nhng im mnh v im yu ring. Ngn ng ASM c u im l gn nh ,gip ngi lp trnh hiu su v cu trc phn cng ca vi iu khin .Cc chng trnh vit bng ASM thng chy nhanh v tc x l cao.ASM c BK-FIRE s dng trong cuc thi 2005 v hot ng kh hiu qa.Tuy nhin ,ASM c nhc im l kh hc v tp lnh ngho nn ,khng thun tin lp trnh cc chng trnh ln. Ngn ng lp trnh C c th mnh l d hc ,tp lnh phong ph ,v c im l ngn ng lp trnh c cu trc nn rt thun li xy dng cc chng trnh ln.Nhc im ca C l khng gip ngi c hiu su v cu trc phn cng. Nhn chung , trong cc cuc thi robocon ,ngn ng C c s dng nhiu nht do nhng u im ca n.Gio trnh ny cng hng dn bn lp trnh bng ngn ng C. 6.2.M ngun ca robocon Xin gii thiu mt on m ngun ca i CIRTECH-45 ca BKHN nm 2004 /* Night Lamp Saver V5.0 89C2051(ext.oscillator 680kHz) + MAC97A6 + no battery backup demonstration of using Micro-C and ATMEL89C2051 to build a device used for controlling night lamp that turn on and off night lamp with preset time on/off. After reset or power failure occured, high blink rate of led will show, user should press P3.0 to reset time to 18:00, low blink rate will show indicating normal operation.

48

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

The Saver V4.0 using Xtal 11.0592MHz produces EMI that interfere TV reception This version the Xtal oscillator has changed to RC oscillator 680kHz. cputick incremental was derived from 50Hz or 20ms main frequency. Copyright (c) 1999 W.SIRICHOTE */ #include c:\mc51\8051io.h #include c:\mc51\8051reg.h /*-------- turn lamp on/off after reset time to 18:00 ---------*/ #define onHour1 18 /* 18:00 turn lamp on */ #define onMin1 00 #define offHour1 18 /* 18:01 turn off */ #define offMin1 01 /* every day turn on at 19:00 and and off at 22:00 */ #define onHour2 19 #define onMin2 00 #define offHour2 22 #define offMin2 00 /* set clock to 18:00 when press P3.0 */ #define setHour 18 #define setMin 00 /*-------------------------------------------------------------*/ extern register char cputick; unsigned register sec25,sec50,sec,sec5,min,hour,flag1,temp,led,blink_rate; /* above must be defined as register for tiny model */ /* variables description cputick increments by one every 20ms sec25 half second counter
49

char

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

sec50 2*25Hz counter sec current second sec5 5 second counter min current min hour current hour temp temp register led counter for led on duration (times cputick) blink_rate 0 = high blink rate, 10 low blink rate flag1 intertask signaling mask byte

flag1.0 set every 1 second 0x01 flag1.1 set every 1 min 0x02 flag1.2 not use 0x04 flag1.3 set every 0.5 second 0x08 flag1.4 set after P3.2 has been pressed 0x10 flag1.5 disable turn on/off 18:00-18:01 if set 0x20 flag1.6-7 not use */ main() { cputick = 0; hour = 18; min = 0; sec = 0; sec25 = 0; sec50 = 0; flag1 = 0; blink_rate = 0;

/* indicate reset time to 18:00 is needed */

asm "LAMP EQU $97"; /* P1.7 */ asm{ SETB $AF /* setb EA */ SETB $A8 /* enable external interrupt */ SETB $88 /* negative edge triggering */ } while(1) { while ( cputick < 1);
50

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

cputick = 0;

/* 20ms has elapsed */

/*------------- the following tasks execute every 10ms ------*/ time(); comparetime(); cpubeat(); settime(); /* waithigh(); */ } /*-----------------------------------------------------------*/ } time () /* update real-time clock, date */ { sec25++; if (sec25 >= 25) /* now 25 times means half second */ {sec25 = 0; flag1 |= 0x08; /* set bit 3 every 0.5 s */ sec50++; if (sec50 >= 2) /* 2 * 25 * 20 ms = 1 s */ {sec50 = 0; flag1 |= 0x01; /* set bit 0 */ sec++; if (sec >= 60) {sec = 0; flag1 |= 0x02; /* set bit 1 */ min++; if (min >= 60) {min = 0; hour++; if (hour >= 24) {hour = 0; } } } }
51

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

} } comparetime() { if ((flag1 & 0x10) != 0) /* enabled only after P3.2 has been pressed */ { compareTimeOn_Off(); } } compareTimeOn_Off() { if ((flag1 & 0x01)!=0) { testOnOff(); if(hour == onHour2 && min == onMin2) asm" CLR LAMP"; if(hour == offHour2 && min == offMin2) asm" SETB LAMP"; } } testOnOff() { if ((flag1 & 0x20) == 0) { if(hour == onHour1 && min == onMin1) asm" CLR LAMP"; if(hour == offHour1 && min == offMin1) { asm" SETB LAMP"; flag1 |= 0x20; /* disable further test on off */ } } }

cpubeat()
52

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

{ beat5sec(); livecpu(); } beat5sec() /* clear P3.7 every blink rate */ { if ((flag1 & 0x08)!=0) { flag1 &= ~0x08; /* clear bit 3 of flag1 */ sec5++; if (sec5 > blink_rate) {sec5 = 0; flag1 |= 0x40; /* set bit 6 of flag1 to signal livecpu task */ asm " clr P3.7"; /* make led on */ led = 2; /* load time on duration times cputick */ } } } livecpu() { if ((flag1 & 0x40) != 0) { led--; if (led == 0) { asm " setb P3.7"; flag1 &= ~0x40; } } } settime() { if ((P3 & 0x01) == 0) /* reset time to 18:00 if P3.1 low */
53

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

{ hour = setHour; min = setMin; sec = 0; sec50 = 0; flag1 |= 0x10; /* enable compare time on/off */ flag1 &= ~0x20; /* reenable testOnOff after pressing set clock to 18:00 */ blink_rate = 10; } } /* waithigh() { asm" jnb P3.2,*"; pause(2); asm" jnb P3.2,*"; pause(2); } pause(j) int j; { int i; for (i=0;i<j;i++) ; } */ M ngun ASM

;CHUONG TRINH CHO IC MASTER ; P1: CAM BIEN NHAN VAO ; P0: TRUYEN SANG SLAVER STARTB EQU P3.7 CT_NANG EQU P3.2 CT_HATAY EQU P3.0 CT_QUA EQU P3.1
54

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

CB_L EQU P1.2 CB_R EQU P1.1 MKEP_DIR EQU P2.0 MKEP_EN EQU P2.1 MNANG_DIR EQU P2.2 MNANG_EN EQU P2.3 STOP_C EQU 11111111B QPHAI_C EQU 00011111B QTRAI_C EQU 00101111B LUI_C EQU 00111111B THANG_C EQU 01001111B TINHCHINH_C EQU 01011111B ORG 0000H LJMP INIT ORG 001BH ;DIEM NHAP VECTOR NGAT CUA T1 LJMP NGATT1 ORG 0030H INIT:;KHOI TAO CAC GIA TRI SAU RESET CLR TR0 MOV SP,#5FH SETB STARTB ;BIT KHOI DONG MOV P0,#0FFH MOV P1,#0FFH MOV R0,#0H ;BIT Dem SO NGA TU MOV R1,#0H MOV P2,#0H ;TAT CAC DONG CO MOV IE,#0H ;CHO PHEP NGAT BO DINH THOI 1 MOV P3,#0FFH MOV TMOD,#00010001B CLR TR1 CLR TR0 CLR TF0 CLR TF1

;============================================= ============================================= =================================


55

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

MAIN: ;MOV P0,QPHAI_C JB STARTB,MAIN LAP_CHINH: MOV A,P1 ANL A,#00001111B MOV P0,A LJMP LAP_CHINH EXIT: NODO: SJMP NODO ;============================================= ============================================= ================================= DEMNGATU: INC R0 ;LCALL STOP_ALL ; LCALL TRE_2S CJNE R0,#2,TIEP1 LCALL DUNG_NGATU LCALL TRE_QUAY LCALL QUAYPHAI TIEP1: CJNE R0,#10,TIEP2 LCALL DUNG_NGATU LCALL TRE_QUAY LCALL QUAYphai TIEP2: CJNE R0,#15,DITIEP LCALL DUNG_NGATU LCALL TRE_QUAY LCALL QUAYTRAI HERE20: SJMP HERE20 DITIEP: TREQUAVACH: LCALL TRE0 ;CHO THOI GIAN TRE DI DI QUA VACH NGANG TROVE: RET ;TRO VE CHUONG TRINH ;==================================
56

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

LAYQUA: LCALL STOP_ALL ;KEPQUA SETB MKEP_EN LCALL TRE_quay CLR MKEP_EN ;NANG QUA SETB MNANG_EN DOINANG: JB CT_NANG,DOINANG CLR MNANG_EN ;NHA QUA SETB MKEP_DIR SETB MKEP_EN LCALL TRE_quay CLR MKEP_EN CLR MKEP_DIR ;HA TAY ; SETB MNANG_DIR ; SETB MNANG_EN ; DOIHA: JB CT_HATAY,DOIHA ; CLR MNANG_EN ; CLR MNANG_DIR RET ;================================ DUNG_NGATU: LAPNT: JB P1.4,THOATNT MOV A,P1 ANL A,#00001111B MOV P0,A LJMP LAPNT THOATNT: LCALL STOP_ALL LCALL TRE_QUAY MOV P0,#00111111B DOINT: JNB P1.4, DOINT LCALL STOP_ALL MOV P0,#01011111B ;TINH CHINH LCALL STOP_ALL
57

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

RET ;================================== QUAYTRAI: MOV P0,#00101111B ;QUAYTRAI LCALL TRE_QUAY LAPQT: MOV A,p1 ORL A,#11111001B CJNE A,#11111111B,LAPQT LCALL STOP_ALL LCALL TRE_100 MOV P0,#00011111B ;QUAYPHAI LAPQT2: MOV A,p1 ORL A,#11111001B CJNE A,#11111111B,LAPQT2 LCALL STOP_ALL LCALL TRE_QUAY LCALL TRE_QUAY RET ;============================================= ============ QUAYPHAI: MOV P0,#00011111B ;QUAYTRAI LCALL TRE_QUAY LAPQP: MOV A,p1 ORL A,#11111001B CJNE A,#11111111B,LAPQP LCALL STOP_ALL LCALL TRE_100 MOV P0,#00101111B ;QUAYPHAI LAPQP2: MOV A,p1 ORL A,#11111001B CJNE A,#11111111B,LAPQP2 LCALL STOP_ALL LCALL TRE_QUAY LCALL TRE_QUAY
58

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

RET ;============================================= ==== NGATT1: RETI STOP_ALL: MOV P0,#0FFH RET ;====================CAC THU TRE================ TRE0: ;THU TUC DE TAO TRE QUA VACH NGANG NGA TU mov r7,#50 again0: mov TH0,#HIGH(-10000) mov TL0,#LOW(-10000) setb tr0 wait0: MOV A,P1 ANL A,#00001111B MOV P0,A jnb tf0,wait0 clr tr0 clr tf0 djnz r7,again0 RET TRE_500: ; 1s mov r7,#50 again_1S: mov TH0,#HIGH(-10000) mov TL0,#LOW(-10000) setb tr0 wait_1S: jnb tf0,wait_1S clr tr0 clr tf0 djnz r7,again_1S RET TRE_QUAY: ; MOV R7,#100 again: mov TH0,#HIGH(-10000) mov TL0,#LOW(-10000)
59

TUC

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

setb tr0 wait: jnb tf0,wait clr tr0 clr tf0 djnz r7,again RET TRE_100: ; MOV R7,#10 again: mov TH0,#HIGH(-10000) mov TL0,#LOW(-10000) setb tr0 wait: jnb tf0,wait clr tr0 clr tf0 djnz r7,again RET TRE_2S: ; 1s mov r7,#200 again_2S: mov TH0,#HIGH(-10000) mov TL0,#LOW(-10000) setb tr0 wait_2S: jnb tf0,wait_2S clr tr0 clr tf0 djnz r7,again_2S RET END 6.3.K thut d ng. Bi hc ny s nu ln cc phng php lp trnh d ng trong robocon. Vic lp trnh d ng trong robot thc cht l vic x l tn hiu t sensor v a ra cc lnh iu khin ng c m bo cho robot c th bm theo vch trng trn sn.Khi lp trnh ,cc bn phi xc nh uc tt c cc trng hp c th xy ra ca sensor ,t a ra cc tn hiu iu khin ng c hp l. Quay v bi sensor ,ta c s b tr sensor | |
60

| | Vch trng

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

O 1

| O |O 2 3

| O| O 4 5

O (sensor) 6

4 sensor 2,3,4,5 dng bm ng.Khi trn sn thi u ,gi s khi robot lch sang phi sensor 2 chm vch trng ,sensor 4 chm nn ,bn phi iu chnh cho ng c phi quay nhanh hn ,ng c tri chm li hay dng robot quay li v tr.Tng t ,khi robot lch sang tri ,bn cng iu khin tung t nh vy.Bng cch x l nh th ,bn s gip cho robot c th bm ng mt cch hiu qu. Khi gp ng t ,hai sensor ngoi cng 1,6 s chm vch trng ,c mc tn hiu 0 a vo vi iu khin .Bn cn lp trnh m s ln mc tn hiu 0 vo vi iu khin t suy ra ng t robot i. 6.4.K thut chng nhiu Nh hc bi sensor ,khi thi u nh hng ca n cao p trn sn c th gy ra nhiu ln sensor dn ti vic nhn bit tn hiu sai. chng nhiu ,bn c th s dng chng trnh x l. C nhiu trng hp do nhiu nn sensor c th nhn nhm vch trng.Do ,bn phi vi iu khin kim tra thnh nhiu ln. M ngun . void golong(unsigned char songatu) { unsigned char d=0; unsigned char dem=0; motor(forward); while (1) { if ((out_left==nen)&&(out_right==nen)) motor(forward); if ((out_left==nen)&&(out_right==vach)) { motor(right_stop); motor(left_go); } if ((out_right==nen)&&(out_left==vach)) { motor(left_stop); motor(right_go); }
61

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

// bat nga tu if ((out_left==vach)&&(out_right==vach)) { while ((LEFT==vach)&&(RIGHT==vach)) { d++; if (d==100) { dem++; d=0; if (dem<songatu) { h_thi(dem); motor(forward); delay(1200);} break;//thoat khoi while }//if }// while if (dem==songatu) {h_thi(dem);motor(stop);dem=0;break;} } // chinh lech nhieu }//end of while (1) }//end of golong_ngatmo

Trong khi thi u ,c rt nhiu cc tnh hung xy ra .Do ngi lp trnh cn phi xy dng nhiu chin thut thi u khc nhau m bo c th x l kp thi mi tnh hung c th c trn sn. hin th chin thut thi u ,bn c th dung led 7 thanh hay mn hnh LCD ,mt h thng cc phm bm iu khin , la chn cc gii php thi u.Thc cht , phn ny chng ta quy v bi ton lp trnh giao tip vi iu khin vi bn phm v mn hnh LCD ,led 7 thanh

62

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

7.1.S nguyn l a)Giao tip vi led 7 thanh

R_24V 10

5V

5V MASTER SW1 Cs1 100uF RST Rs1 10k Y1 RST Cta230p 11.509Mhz Rsip1 5V 1 2 3 4 5 6 7 8 9 10k 5V PO0 PO1 PO2 PO3 PO4 PO5 PO6 PO7 7 O P Start 5V PO0 PO1 PO2 PO3 PO4 PO5 PO6 PO7 A1 A2 A3 B1 B2 B3 B4 B5 1 2 3 4 5 6 7 8 19 18 9 31 39 38 37 36 35 34 33 32 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 XTAL1 XTAL2 RST EA/VPP 0 4 C C V

CL1 104 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/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 29 30 Vidieukhien1 Vidieukhien2 Vidieukhien3 Vidieukhien4 Vidieukhien5 Vidieukhien6 P30(RXD) P31(TXD) 5V 1 3 5 7 9

ISP_program 2 4 6 8 10 CON10AP int P30(RXD) P31(TXD) /INT0 /INT1 T0 T1 A4 A5 SELECT_PRO /INT0 /INT1 T0 T1 PO4 PO5 PO6 1 2 3 4 5 6 7 8 9 10 CON10

Cta1

30p

P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 PSEN P0.4/AD4 P0.5/AD5 ALE/PROG P0.6/AD6 D P0.7/AD7 N G 0 2

5V

P89V51RD2

3 c c V e f

8 . d . . . c . g . . b P . D a

U17 2 1 9 7 6 4 5

R4 R5 R6 R7 R R8 R R9 R

10 9 15 13 12 11 14

8 D E F A B C G D N G U16 D0 D1 D2 D3

7 1 2 6

PO0 PO1 PO2 PO3

5V Rp1 470 1 t a h P _ d e L

5V

5V Rp2 470 3 t a h P _ d e L

5V Rp3 470 4 t a h P _ d e L

5V Rp4 470 5 t a h P _ d e L

5V Rp5 470 6 t a h P _ d e L Rp6 470 Led_Phat1 Led_Phat2 Led_Phat3 Led_Phat4 Led_Phat5

Connecter_sensor 1 3 5 7 9 13 Led_Phat6 11 15 2 4 6 8 10 12 14 16 CON16AP Led_Thu1 Led_Thu2 Led_Thu3 Led_Thu4 Led_Thu5 Led_Thu6

SN7447 O B C I R / I B T C BR L V 4 5 3 6 1 5V

0 1

2 t a h P _ d e L

s trn ,ta s dng 1 led 7 thanh hin th cc chin thut thi u 1 ,2 ,3.v.v.2 phm bm choice v start la chn chin thut.Mt led 7 thanh c th hin th c 10 chin thut thi u tng ng vi cc s t 0 n 9.Ngoi ra ,led 7 thanh cn c dng hin th s ng t. 7.2.M ngun void main() { unsigned char tam=0;

63

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

init(); P2_6=0; P2_7=0; h_thi(tam); selection(); switch (select) { case 0: { hanhtrinh0(); } break; case 1:{ hanhtrinh1(); } break; case 2:{ hanhtrinh2(); } break; case 3:{ hanhtrinh3(); } break; case 4:{ hanhtrinh4(); } break; case 5:{ hanhtrinh5(); } break; case 6:{ hanhtrinh6(); } break; case 7:{
64

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

hanhtrinh7(); } break; case 8: { hanhtrinh8(); } break; case 9:{ hanhtrinh9(); } break; }//end of swith delay(50000); h_thi(tam); } /* cac ham chuc nang */ void selection() { P2_6=0; P2_7=0; while (P2_7==0) { while (P2_6==1) { select++; if (select>9) select=0; h_thi(select); delay(12000); } } }//end void h_thi(unsigned char so) { if (so==0) {P0_3=0;P0_2=0;P0_1=0;P0_0=0;} else if (so==1) {P0_3=0;P0_2=0;P0_1=0;P0_0=1;} else if (so==2) {P0_3=0;P0_2=0;P0_1=1;P0_0=0;} else if (so==3) {P0_3=0;P0_2=0;P0_1=1;P0_0=1;}
65

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

else if (so==4) {P0_3=0;P0_2=1;P0_1=0;P0_0=0;} else if (so==5) {P0_3=0;P0_2=1;P0_1=0;P0_0=1;} else if (so==6) {P0_3=0;P0_2=1;P0_1=1;P0_0=0;} else if (so==7) {P0_3=0;P0_2=1;P0_1=1;P0_0=1;} else if (so==8) {P0_3=1;P0_2=0;P0_1=0;P0_0=0;} else if (so==9) {P0_3=1;P0_2=0;P0_1=0;P0_0=1;} } b) S dng LCD
VCC

g n o c _ d e l

u r t _ d e l

SW2_cong Jum_cong 1 2 SW3_tru 1 2 Jum_tru P0.6 P0.5 EA P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 10 9 8 7 6 5 4 3 2

R_SIP10

VCC 1 RESISTOR SIP 10

VCC

U1 r e t n e _ d e l Enter e c i o h c _ d e l P0.7 P3.3 Choice 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 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/T2 P1.1/T2-EX P1.2 P1.3 P1.4/SS P1.5/MOSI P1.6/MISO P1.7/SCK AT89S8252 LCD Display 2x16 EA RST D d E 0 1 2 3 4 5 6 7 N d EWS GV V RR E DDDDDDDD 1 2 3 5 4 6 7 8 9 0 1 2 3 4 1 1 1 1 1 VCC 3 4 0 1 2 3 4 5 6 7 . . . . . . . . . . 0 0 2 2 2 2 2 2 2 2 P P P P P P P P P P VCC VCC 31 9 40 EA/VPP RST VCC 0 2 D N G 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 ALE/PROG PSEN XTAL2 XTAL1 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 30 29 18 19 ZTA 12M P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 RX TX IR P3.3 D0 D1 D2 D3

D1 LCD2x16 VCC 15 16 A K

C1_ZTA 33 C2_ZTA

C_nhieu 104

33

T E S E R _ 47u C

SW_reset

m o 0 0 1

R_RESET

66

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

S trn thay th led 7 thanh bng LCD .Nhn chung dung LCD hin th chin thut thi u chuyn nghip hn (vi hin th c c ch ) tuy nhin , dung LCD kh tn km v khng tht s hiu qu .V th ,tt nht l cc bn nn s dng led 7 thanh hin th chin thut thi u. /******************************/ // LCD void lenh () { RS=0; EN=1; delay (50); EN=0; delay (100); } void ghi () { RS=1; }

EN=1;

delay (50); EN=0;

delay (100);

void LCDwrite(unsigned char c) { P2=c; ghi(); } void LCDputs(unsigned char *s,unsigned char row) { unsigned char len; if(row==1) { P2=0x80;lenh (); } else { P2=0xC0; lenh ();} len=strlen(s); while(len!=0) { LCDwrite(*s); s++; len--; } } void LCDcontrol(unsigned char dk)
67

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

{ P2=dk; } void init_LCD () { delay(400); LCDcontrol(0x38); //LCD 2 dong _ 5x7 LCDcontrol(0x0C); //bat hien thi, tat con tro LCDcontrol(0x01); //xoa man hinh } /*****************************/ void keyboard() { unsigned char key=0; unsigned char test=0; LCDcontrol(0x01); choice=enter=1; LCDputs("Robot Ready",1); delay(100000); LCDcontrol(0x01); LCDputs("1:Golong 2:Around ",1); LCDputs("3:Turn left 4:Turn right",2); delay(100000); LCDcontrol(0x01); while(1) { LCDputs("1: 2: 3: 4:,2); while(choice==0) { delay(10000); key++; LCDcontrol(0x01); if (key==1)LCDputs("1 ",1); if (key==2)LCDputs("2 ",1); if (key==3)LCDputs("3 ",1); if (key==4)LCDputs("4 ",1); LCDputs("1:C 2:S 3:D 4:E",2); if (key>4) { LCDputs("0 ",1);key=0;}
68

lenh ();

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

} if (key==1)while(enter==0) if (key==2)while(enter==0) if (key==3)while(enter==0) if (key==4)while(enter==0) if (test==1) break; }//while(1) } // keyboard

golongr(); Around(); left(); test=1;

bi ny ,chng ta s hon thin mt robot hon chnh thi u . Chng ta s dng robot nh hnh di y

69

DKS GROUP Nguyen Manh Truong Mobi : 0988857861

http://www. dks.com.vn

Robot hnh trn l robot ca mt i tham gia trong cuc thi robocon 2007.Chng ta s s dng robot ny thc hnh . Phn mch ca robot ,chng ta s dng mch iu khin ng c bng relay Nh hnh di

y l mch iu khin ca i BK-FIRE nm 2005 ,robot hot ng kh hiu qu .u ni sensor nh hnh trn ,lp t mch sensor vo phn ca robot .Robot ny s dng b c quy 24V DC cp ngun.Mch ny s dng 6 sensor xp thnh hng ngang bm ng ,6 ng c iu khin cc c cu. Sau khi lp t mch v sensor ,u ni cc ng c .Ta s lp trnh cho robot c th bm theo vch trng c sn. Trong bi thc hnh ny ,chng ta s dng vi iu khin 89c52 iu khin robot. y l ton b code chng trnh bm ng ca robot.(vit bng ASM)

70

You might also like