You are on page 1of 30

Bo co bi tp ln vi x l

MC LC
LI NI U ......................................................................................................1
Phn 1: Nguyn tc chung.....................................................................................3
Phn 2. Cu to......................................................................................................4
2.1.Vt liu Linh kin .....................................................................................4
2.2 M t k thut ..............................................................................................4
Phn 3: Thit k phn mm ...................................................................................6
3.1 Chi tit thit k .............................................................................................6
3.2 Phn mch chnh ....................................................................................... 13
3.3 Lp trnh cho 89S52 .................................................................................. 14
KT LUN ........................................................................................................ 29
Ti liu tham kho .............................................. Error! Bookmark not defined.

LI NI U
1

Bo co bi tp ln vi x l
Nh chng ta bit, vi x l c vai tr rt ln trong i sng ca con
ngi. Cng vi s pht trin ca khoa hc k thut, nhiu th h vi x l
mi ra i vi nhiu chc nng v nh gn. Chnh v vy, cng ngy vi x
l cng thm nhp su vo i sng con ngi.
Nhm gip cc sinh vin t ng ha hiu r hn v mn vi x l cng
nh nng cao kh nng thc hnh mn hc. Cc sinh vin c t chc
lm bi tp ln vi ti thit k robot d ng. Mt vn rt c quan
tm khi thit k robot l phi lp trnh lm sao cho robot c th i theo mt
qu o mong mun. iu ny ph thuc rt nhiu vo ngi thit k. Bn
bo co ny c a ra gii quyt cc vn trn vi mt robot d ng
n gin.
ti ny c s tham gia ca tt c cc thnh vin trong nhm.Tt c
cng hp tc vi nhau cho ra sn phm cui cng.
Mc d c gng rt nhiu, nhng chc chn bn bo co ny s cn
nhiu thiu st v y l ln u em tham gia lm mch nn c rt t kinh
nghim. Rt mong c s gp ca thy.
Em cng xin chn thnh cm n thy V Vn H! Trong thi gian thit
k robot, chng em cng nhn c nhiu s gip ca thy cng nh
nhng kin thc rt b ch trong hc k ny.

PHN 1. NGUYN TC CHUNG


2

Bo co bi tp ln vi x l
Tht ra, robot d ng l 1 bin th c bit ca robot hng sng. S
d ni nh vy l do chng c cng nguyn tc hot ng l s dng cm bin
quang in ( quang tr hoc diode hng ngoi) so snh cng sng t
iu chnh hng i thch hp.Tuy nhin, robot d ng, cm bin
c b tr gn mt ng v ngun sng so snh lc ny do chnh robot
to ra. Nhng do u li c s sai lch v cng sng. Cu tr li nm
ng v, ng v ny c tnh cht khc vi xung quanh, thng th n c
mu en hp th nh sng. Khi robot i lch vo vng c vch v, nh
sng pht ra t robot khng phn x li nh bnh thng m b ng k hp
th 1 phn lm sai lch sng gia 2 cm bin. Vic cn li l thit k sao
cho robot c hnh vi khc phc s sai lch v ta c c loi robot i theo
ng v.
Nhim v ca cc cm bin quang c m t nh hnh sau:

ng i c vch sn vi chiu di mt ct ngang xc nh. ng i


c t trn nn c vt liu khc loi. Nu ng i l vt liu phn quang
th nn khng phn quang v ngc li.
t s dng cc LED hng ngoi chiu xung mt ng i hoc nn.
nh sng hng ngoi s phn x li khi gp vt liu phn quang. S dng cc
b thu cc nh sng hng ngoi phn quang ny, t xc nh c trng thi
ca mnh trn mt ng: lch tri hoc phi so vi mt ng, cn hoc
khng cn trn mt ng,; t a ra quyt nh iu khin tng ng.

PHN 2. CU TO

Bo co bi tp ln vi x l
2.1. Vt liu Linh kin

2x ng c mt chiu 12V(DC motor)


1x IC7805, 1x tn nhit
6x cp thu pht hng ngoi, 6x mt thu hng ngoi
4x IC LM393N, 1x IC L293D, 1x IC 89S52
2x Cp 10 si, 3x juck 2 si
6x in tr 1k, 6x in tr 4.7k, 6x in tr 20k
3x Board mch
2x t thng 33p, 2x t s 10, 1x t ha 470
10x n LED
6x Diode 1N4007
1x thch anh 12MHz
1xBng en v giy A0 lm ng i
1xPin 11,1 V (3 cell)
2xNt nhn

2.2. M t k thut
Thit k xe t ng d ng tha mn cc yu cu sau:
- Xe dng sau khi chy 3 vng
- m bo d ng ng.
- Xe chy m bo tc n nh.
- C n LED hin th ng trng thi hin ti ca xe trn ng.
- Xe c kh nng o chiu quay ng c, hm ngc.
- Thit k phn mm d nhn, d kim tra, sa cha m bo thc hin
ng yu cu bi.
Da trn yu cu ca bi v bm st vi ni dung mn hc, nhm chn
phng n thit k:
Xe vn hnh c 3 bnh, 2 bnh sau ch ng, bnh trc
xoay trn nh hng (bnh li).
Xe dn ng bng 2 ng c 1 chiu t hai bnh sau.
Phn d ng dng 6 cp cm bin (1 led pht hng
ngoi v 1 quang tr.), tn hiu a v i qua khu so snh LM293D m
bo mc in p a vo vi iu khin.
Phn x l chn vi iu khin 89S52 ca Atmel.

Bo co bi tp ln vi x l
Xe c hin th trng LED (bo ngun, ng c) tng
ng vi trng thi xe.
Phn iu khin chuyn ng chn 2 mch cu H c
tch hp sn trong L298.

PHN 3. THIT K PHN MM


Tng quan thit k s bao gm 5 khi chnh nh sau:

Bo co bi tp ln vi x l
Khi ngun: cung cp in p 12V cho ng c v 5V cho
khi vi iu khin.
Khi vi iu khin.
Khi sensor: nhn tn hiu ng i.
Khi so snh.
Khi iu khin 2 ng c DC.
3.1 Chi tit thit k
S nguyn l cc khi.

S mch i dy.

Bo co bi tp ln vi x l

a.Khi senser
Dng 6 LED pht hng ngoi v 6 quang tr:

Bo co bi tp ln vi x l

Khi Led pht tn hiu khi c tn phn


li th quang tr s thay i in tr
n pht tn hiu vo LM393 so
snh ri a vo vi iu khin vi
iu khin x l ri a ra tn hiu
pht lnh iu khin ng c.

Chc nng ca khi:


+ To tn hiu phn hi v khi vi x l trung tm t iu khin ng
c.
+ Nguyn l hot ng: Khi c nh sng th in tr ca quang tr s gim v
ngc li, in tr ca n thay i c t 0.5k (khi c nh sng) n 250k
(khng c nh sng), ta s dng led pht lm ngun sng cho n. Khi gp
nn trng, nh sng s phn x ln quang tr lm in tr n gim xung v
khi gp vch en (bng keo en) th nh sng s kh phn x nn quang tr
nhn t nh sng => tr n tng. T da vo 2 quang tr, robot c th phn
bit c vch en trn nn trng (di s h tr ca opamp so snh).
b.Khi so snh

Bo co bi tp ln vi x l

Chc nng ca mch so snh:

V+

HIGH

V+

LOW

V+ < V-

V + > V-

V-

0V

V-

0V

Do tn hiu ra t sensor nh nm
1 mch phn p nn in p ny s
dao ng ph thuc vo sng
phn x li, do o ta nn dng 1
khi so snh LM393 to mc tn
hiu ph hp cho VK x l hot
ng.
Mc in p u ra so snh c
nhn bit bng su led su u ra
so snh, nu gp vch trng, mc
in p ra l 0V, n sng v nu

Bo co bi tp ln vi x l
gp vch en, mc in p ra l
5V, n tt.

c.Khi ng c
Loi ng c ta s dng l 2 ng
c DC-12V, phc v cho vic iu
khin xe tin, li, tng tc, quay
phi, quay tri, vi cc cp tc
khc nhau

Ta la chn L298 iu khin ng c vi 2 mch cu H tch hp sn


bn trong.
S khi iu khin:

d.Khi ngun
Dng ngun 12V cp in p vo, sau thng qua khi lc, h p
dng 7805 ta ly ra in p 5V n nh cung cp cho cc khi cn li.

10

Bo co bi tp ln vi x l
Ngoi ra cn c mt s bin php bo v nh dng cu chi 2A, dng
diode chng ngc ngun.

e.Khi iu khin
S dng vi x l 8 bit AT89S2 c cu trc tng t nh 89C51 (8051).
y l VK thuc h MCS-51, vi 8K bytes b nh, c th c/ghi d liu
khong 1000 ln.
in p hot ng u vo t 4.0 n 5.5V
Tn s cung cp tnh t 0 n 33 kHz.
32 ng I/O c th lp trnh c.
3 Timer/Counter 16 bit
8 ngun ngt ngoi
Cu trc chn v s khi bn trong:

11

Bo co bi tp ln vi x l

S khi bn trong:

12

Bo co bi tp ln vi x l
Trong mch ng dng em dng thch anh 12MHz. Cc chn tn hiu
sensor c a vo Port1, tn hiu iu khin ng c ra t Port2.
S chi tit thit k:

3.2 Phn mch chnh


S mch chnh:

13

Bo co bi tp ln vi x l
3.3 Lp trnh cho 89S52
a. S khi iu khin c tm tt nh sau:
MCH

MCH

SENSORS

VI IU KHIN

XE CHUYN NG

Lu thut ton iu khin:

14

IU KHIN
NG C

Bo co bi tp ln vi x l
KHI TO
GII THIU

D NG

NO

YES
LCH

i thng

Cua tri
Or Cua phi

NO

VCH

YES
Chng trnh con khi
bt vch ch

n gin y ta ch s dng phng php iu khin ng c theo kiu


ON/OFF.
b.Code chng trnh bng ngn ng C:
Chng trnh vit cho vi iu khin s dng ngn ng Assembler vi trnh
dch l phn mm Keil C. u im ca ngn ng Assembler l m ngun
chy nhanh v gn, gip sinh vin nm chc cu trc phn cng ca vi iu
khin cng nh cc bc lp trnh phn mm. Tuy nhin nhc im ca
ngn ng ny l kh hiu v rc ri.

15

Bo co bi tp ln vi x l
Di y l chng trnh vit bng ngn ng C cho IC AT89S52. Chng
trnh c vit v dch trn phn mm keil C:
#include<REGX51.H>
//==========Dinh nghia chieu quay banh========

#define go 1
#define back 0

//--------------------------------------------

#define out 0x0FF //0B11111111

//==========Dinh nghia mat do=================


#define R5 0x0BF // 0B11011111
#define R4 0x09F // OB11001111
#define R3 0x0DF // OB11101111
#define R2 0x0AF // OB11100111
#define R1 0x0EF // OB11110111
#define TT 0x0E7 // OB11110011
#define L1 0x0F7 // OB11111011
#define L2 0x0F3 // OB11111001
#define L3 0x0FB // OB11111101
#define L4 0x0F9 // OB11111100
#define L5 0x0FD // OB11111110

//---------------------------------------------

//===Dinh nghia Pin xung PWM, Pin dieu khien===

16

Bo co bi tp ln vi x l

sbit dk1a = P1^0;


sbit dk1b = P1^1;
sbit dk2a = P1^2;
sbit dk2b = P1^3;
sbit xung1 = P1^4;
sbit xung2 = P1^5;

//----------------------------------------------

//===============Khai bao=======================
unsigned char toc_do1,toc_do2;
unsigned char x=0, y=0, m, n;
unsigned long int counter0 = 0;
unsigned char INPUT;

//==============Ham tao tre====================

void delay (unsigned long int a)


{
unsigned long int i;
for (i = 0; i <= a; i++);
}

//----------------------------------------------

//===============Dieu khien banh trai============

17

Bo co bi tp ln vi x l
void banh_trai (unsigned char toc_do0,unsigned char chieu)
{
if (chieu == go)
{
TR0 = 1;
tocdo1 = m + (toc_do0 - 10) * n;
dk1a = 1;
dk1b = 0;
}
if (chieu == back)
{
TR0=1;
toc_do1 = m + (toc_do0 - 10) *n;
dk1a = 0;
dk1b = 1;
}
}

//-----------------------------------------------------

//===============Dieu khien banh phai============

void banh_phai (unsigned char toc_do0,unsigned char chieu)


{
if (chieu == go)
{
TR1 = 1;
toc_do2 = m + (toc_do0 - 10) *n;

18

Bo co bi tp ln vi x l
dk2a = 1;
dk2b = 0;
}
if (chieu == back)
{
TR1 = 1;
toc_do2 = m + (toc_do0 - 10) *n;
dk2a = 0;
dk2b = 1;
}
}

//-----------------------------------------------------

//==============Tao xung PWM banh trai=================


void ngatt0 (void) interrupt 1
{
x++;
if (x <= 25)
{
TR0 = 0;
TL0 = 256 toc_do1;
xung1 = 1;
TR0 = 1;
}
else if (x < 50)
{
TR0 = 0;

19

Bo co bi tp ln vi x l
TL0 = 256 - (200 toc_do1);
xung1 = 0;
TR0 = 1;
}
else if (x == 50) {x = 0;}
}
//-----------------------------------------------------

//==============Tao xung PWM banh phai=================


void ngatt1 (void) interrupt 3
{
y++;
if (y <= 25)
{
TR1 = 0;
TL1 = 256 toc_do2;
xung2 = 1;
TR1 = 1;
}
else if (y < 50)
{
TR1 = 0;
TL1 = 256 - (200 toc_do2);
xung2 = 0;
TR1 = 1;
}
else if (y == 50) {y=0;}

20

Bo co bi tp ln vi x l
}
//-----------------------------------------------------

//================Ham do duong=========================
void doduong(unsigned char so_vong)
{
unsigned char nho_trai, nho_phai, nhoT, nhoP, start = 0, startdk=0;
unsigned char a;
unsigned char INPUT;
while (start <= so_vong)
{

INPUT = P0; //nhan thong tin mat do


if ((P0_0 == 0) && (P0_7 == 0))
{ if (startdk == 0) {start++;}
startdk = 1;
a=1; m=30; n=3;
while (a) {if((P0_0 == 1) && (P0_7 == 1)) {a=0;}}
}

if ((startdk == 1) && (P0_0 == 0) && (P0_1 == 0) && (P0_2 == 0))


{
banh_phai (11, go);
banh_trai (9, go);
nho_trai = 1; nhoT = 0;nhoP = 0;
startdk = 0;
a=1; m=40; n=3;
while (a) {if (P0 == out) {a=0;};}

21

Bo co bi tp ln vi x l
delay (1000);
}
switch (INPUT)
{
case TT:
{
banh_phai (10, go);
banh_trai (10, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case L1:
{
banh_phai (11, go);
banh_trai (9, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case L2:
{
banh_phai (12, go);
banh_trai (8, go);
nho_trai = 0;
nho_phai = 0;
break;
}

22

Bo co bi tp ln vi x l
case L3:
{
banh_phai (13, go);
banh_trai (7, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case L4:
{
banh_phai (14, go);
banh_trai (6, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case L5:
{
banh_phai(15, go);
banh_trai (5, go);
nho_trai = 0;
nho_phai = 0;
break;
}

case R1:
{
banh_phai (9, go);

23

Bo co bi tp ln vi x l
banh_trai (11, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case R2:
{
banh_phai (8, go);
banh_trai (12, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case R3:
{
banh_phai (7, go);
banh_trai (13, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case R4:
{
banh_phai (6, go);
banh_trai (14, go);
nho_trai = 0;
nho_phai = 0;
break;

24

Bo co bi tp ln vi x l
}
case R5:
{
banh_phai (5, go);
banh_trai (15, go);
nho_trai = 0;
nho_phai = 0;
break;
}
case out:
{
if (nhoP == 1)
{nho_phai = 1; nhoP = 0;}
if (nhoT == 1)
{nho_trai = 1; nhoT = 0;}
else if (nho_trai == 1)
{
banh_phai (18, go);
banh_trai (4, back);
}
else if (nho_phai == 1)
{
banh_phai (4, back);
banh_trai (18, go);
}
break;
}
default:

25

Bo co bi tp ln vi x l
{
If ((INPUT != R1) || (INPUT != R2) || (INPUT != R3) ||
(INPUT != R4) || (INPUT != R5) ||(INPUT != L1) || (INPUT != L2) ||
(INPUT != L3) || (INPUT != L4) || (INPUT != L5) ||(INPUT != out))
{
Banhphai (10, go);
banhtrai (10, go);
}
break;
}
}
}
}
//=================START===========================
void start ()
{
char exit, key;
exit = 1;
while (exit)
{
Key = P2_0;
if (key == 0)
{exit = 0;}
}
}
//--------------------------------------------------//==================stop==============================
void stop ()

26

Bo co bi tp ln vi x l
{
TR0 = 0;
TR1 = 0;
xung1 = 0;
xung2 = 0;
}
//===================Ham chinh=======================
void main()
{
TMOD = 0x22;
IE = 0x08B;
IT0 = 1;
IP = 0;
M = 40; n = 3;
start ();
while (1) {P2_1 = 0; do_duong (2); stop (); while (1);}
}

KT LUN

Trong qu trnh thc hin bi tp ln, chng em gp mt s kh khn sau


v tng bc khc phc.
Ti liu

27

Bo co bi tp ln vi x l
y l ln u tin thc hin mt sn phm thc da trn nn kin thc hc
tp c nn nhiu vn cha c thng sut. Trc ht, l cch lm xe v
c kh, thit k mch, d ng ra sao, cua xe tri phi thun ngc.
Khc phc: hc hi t hng dn ca thy gio, cc bn trong lp c
bit l cc bn tng tham d cuc thi Robocon, hc hi t cc anh cc
kha trc, tham kho ngun ti liu trn mng Internet.
Kt qu: Hc hi c nhiu kinh nghim lm robot n gin t cc
ngun trn, cc tutorial v thit k mch, thit k c kh, bm xung, ngt
Thit k mch
Vn : Cha c kinh nghim v thit k mch thc t, cn gii quyt
cc vn : v mch nguyn l v mch in s dng phn mm Altium
Designer 9.0, cc k thut sp xp linh kin, i dy
Do thi gian cng kh ngn nn khng th lm mch bng tay nn em tin
hnh t mch cho kp thi gian nn chi ph t.
Khc phc: Hc cch s dng cc phn mm ni trn vi nhiu tutorial
trn cc din n nh www.dientuvietnam.net, www.picvietnam.com , trong
mch cng s dng th vin chn linh kin download trn hai din n trn
c chng em chnh sa li.
Lp trnh
y c th coi l vn phc tp nht v l linh hn ca xe t hnh, iu
khin ton b hot ng ca xe v cng l vn tiu tn nhiu thi gian
nht.
Vn 1: c v x l tn hiu SENSORS
Tnh ton, thu thp cc trng hp xe lch ra khi ng, xe gp khc cua, xe
khng bt c vch en, xe bt vch ch, xe cua gc cua gp
X l cc trng hp trn nh th no?
Trong qu trnh test xe, nhiu khi Sensors bt khng chun hoc khng n
nh.
Khc phc: thu thp cc trng hp, dng tay y xe i theo ng
c bit l cc khc cua v ghi tn hiu hin th trn cc led bo v, tnh ton
cc trng hp lch tri, lch phi, lch t, lch nhiu, khng lch, bt vch
ch

28

Bo co bi tp ln vi x l
Hn chc cc mi hn mch SENSORS, kim tra cp ni vi mch vi iu
khin, iu chnh bin tr ly in p so snh hot ng n nh a vo
IC L298.
Kt qu:Mch hot ng n nh, SENSORS bt rt tt, tn hiu bo v
trn mch vi iu khin chun xc.
Vn 2: Khng s dng phng php iu ch rng xung PWM
a vo chn IN1, IN3 iu khin chiu quay cng nh tc quay ca
hai ng c truyn ng do xe chuyn ng cha c trn m b git mt
cht, tc xe cha cao, mmen ng c cn nh kh vt qua chng ngi
vt nh i tip.
Trn y l nhng bo co s lc v robot d ng. Mc d c
gng nhiu nhng khng th trnh khi nhng sai st.

TI LIU THAM KHO


1. Tng Vn On. H Vi iu khin 8051.
2. Nguyn Tng Cng, Phan Quc Thng. Cu trc v lp trnh h vi
iu khin 8051.
3. Bi ging trn lp
4. Website:
Datasheetarchive.com
www.dientuvietnam.net

29

Bo co bi tp ln vi x l
www.picvietnam.com
www.8051projects.com
www.dieukhien.net

30

You might also like