You are on page 1of 117

MC LC

CHNG 1: TNG QUAN TI ..................................................................................... 1


1.1

t vn ................................................................................................................... 1

1.2

S lc v th gic my tnh ...................................................................................... 1

1.3

Lch s cc thut ton v Robot chi c .................................................................. 8

1.4

Nhim v ca lun vn ............................................................................................ 11

1.5

S khi ca h thng .......................................................................................... 12

CHNG 2: GII THIU S LC NG C BC V NG C DC .............. 13


2.1

Cu to v nguyn l hot ng ca ng c bc .............................................. 13

2.2

Cc loi ng c bc.............................................................................................. 14

2.3

Cc mch iu khin c bn ................................................................................... 17

2.4

Cc phng php iu khin ng c bc .......................................................... 19

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60 ................ 23


3.1

Gii thiu chung v h PIC ..................................................................................... 23

3.2

Gii thiu v vi iu khin PIC18F67J60 .............................................................. 27

CHNG 4: XY DNG THUT TON CHI C ...................................................... 44


4.1

Dng tr chi ............................................................................................................ 44

4.2

Cy tr chi .............................................................................................................. 45

4.3

Vt cn ...................................................................................................................... 45

4.4

Chin lc tm kim trong tr chi ........................................................................ 47

4.5

Th tc minimax ...................................................................................................... 48

4.6

Th tc Alpha-Beta: ................................................................................................ 51

4.7

Thut ton khai cuc(Openning book) v tn cuc(Endgame database) ........... 54

CHNG 5: X L NH VI OPENCV.......................................................................... 55
5.1

Tng quan v th vin OpenCV ............................................................................. 55

5.2

OpenCV trn HH Ubuntu .................................................................................... 58

5.3

Cc vn c bn trong x l nh ......................................................................... 64

5.4

Thut ton s dng trong lun vn: Bin i Hough ........................................... 69

CHNG 6: THIT K V THI CNG M HNH PHN CNG .............................. 76


6.1

Gii thiu v Robot .................................................................................................. 76

6.2

Yu cu v tng .................................................................................................. 83

6.3

Thit k Robot .......................................................................................................... 86

6.4

Thit k bn c v qun c ..................................................................................... 90

6.5

M hnh sau khi thc hin ...................................................................................... 93

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

MC LC

CHNG 7: GII THUT CHNG TRNH ................................................................. 96


7.1

Lu gii thut...................................................................................................... 96

7.2

Phng php iu khin cnh tay Robot Scara .................................................... 97

7.3

Thut ton x l nh nhn dng nc i .............................................................. 99

7.4

Chng trnh chi c ng dng tr tu nhn to ................................................ 102

CHNG 8: KT QU T C V HNG PHT TRIN TI ................ 112


8.1

Hnh nh v kt qu t c .............................................................................. 112

8.2

Hn ch ca ti v hng pht trin ............................................................... 115

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

vi

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

CHNG 1: TNG QUAN TI


1.1

t vn
Th gic my l mt lnh vc v ang pht trin mnh m trn th gii hin nay.

Khi nim v th gic my Computer Vision c lin quan ti nhiu ngnh hc v c nhiu
hng nghin cu khc nhau. K t nhng nm 70 ca th k 20 khi m kh nng tnh ton
ca cc my tnh tr nn mnh m, n c th gii quyt c nhng cng vic cn ti tc
cao nh x l cc tp nh hay cc on video th th gic my c nhc n, nghin cu v
pht trin cho n ngy nay.
Trong th gic my tnh, lnh vc pht hin v nhn dng ng mt vai tr ct yu vi
rt nhiu ng dng trong hu ht cc lnh vc hin i nh thm him khng gian, qun s, y
t, gii tr Vi s kt hp th gic my tnh vi tr tu nhn to, cc c my t ng (robot)
do con ngi ch to ra ngy cng thng minh v ging con ngi hn.
T tnh hnh thc t , ti lun vn Robot chi c tng ca em ra i, c ng
dng x l nh nhm mc ch kim nghim li nhng kin thc hc trng v qua
nghin cu thm nhng lnh vc mi, nhng th thch mi trn con ng khoa hc ngy
cng pht trin.
X l nh v tr tu nhn to l nhng lnh vc rt mi ca th gii, vi nhng kin thc
v thut ton c pht trin mi ngy. Do thi gian thc hin lun vn ch gi gn trng mt
hc k v nhng kin thc ca bn thn cng hn ch, nn nhng thiu st l khng th trnh
khi. Em rt mong nhn c nhng gp ca qu thy c v cc bn.

1.2

S lc v th gic my tnh

1.2.1 Khi nim c bn


Th gic my bao gm l thuyt v cc k thut lin quan nhm mc ch to ra mt h
thng nhn to c th nhn thng tin t cc hnh nh thu c hoc cc tp d liu a chiu.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

My mc cng ngy cng thng minh, n khng ch thay con ngi lm nhng cng
vic nng nhc v nhm chn m n cn c mt s kh nng bt chc ng vt v con
ngi. Mt trong s nhng kh nng l nhn bit c th gii qua mt ca n. Bng
vic kt hp vi cc m hnh khc na nh my hc, mng nron gip cho chng dn tin
ti mt h thng nhn to c nhng quyt nh linh hot v chnh xc hn.

Hnh 1.1: Tng tc gia th gic my tnh v cc lnh vc khc


Lnh vc nghin cu ca th gic my tnh rt rng, v c im chung l cc bi ton
v th gic my tnh u khng c mt bi chung v cch gii quyt duy nht. Mi gii
php gii quyt mt vn v thu c mt kt qu nht nh cho nhng trng hp c th.
Th gic my tnh bao gm:
o Nhn dng (recognition) : Nhn dng nh l mt trong nhng vn kinh
in trong lnh vc th gic my v x l nh. Mc ch ca nhn dng nh tc l xc nh
xem liu mt bc nh c tn ti nhng i tng, c im c bit hay khng. Chc nng
ny c th thc hin t ng, khng cn s tc ng ca con ngi; tuy nhin n khng m
bo trong cc trng hp chung, vi nhng i tng tu v trong tnh hung tu .
Nhn dng vt th (nhn dng bin bo giao thng, ng bin xe chy).
Phn bit vt th ( phn bit khun mt, du vn tay, ch vit ).
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

Pht hin vt th ( pht hin xe c, vt l ).

Hnh 1.2: ng dng th gic my tnh trong nhn dng khun mt


o Phn tch chuyn ng (motion tracking): Nhn dng chuyn ng c p
dng s l mt chui cc nh lin tip c lng tc chuyn ng ca tng im
nh.
Egomotion: Xc nh chuyn ng trong khung cnh 3D t camera. p dng
cho cc camera theo di t ng.
Tracking: Theo di chuyn ng ca mt i tng no , v d nh ngi
hay xe c.

Hnh 1.3: ng dng th gic my tnh trong theo di chuyn ng

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

o Xy dng cnh (scene reconstruction): y l chc nng cho php xy dng


v m phng li mt khung cnh 3D t nhng bc nh hoc mt an phim cho trc.

Hnh 1.4: ng dng th gic my tnh trong m phng li cu trc khng gian
o Phc hi nh(image restoration): Lai b tc ng ca nhiu trong nh, khi
phc li hnh nh ban u.

1.2.2 Lch s pht trin


Nm 1955, Selfridge ln u tin a ra khi nim th gic my tnh( eyes and ears for
the computer ). Nhng nm u tin , th gic my tnh pht trin ngy cng nhanh, v t
c nhiu thnh tu.
Nm 1965, Roberts t thnh tu trong vic pht hin ra cc gc cnh trong nhng hnh
khi n gin v chuyn sang dng hnh hc khng gian.
Sau hn 1 thp k, nm 1978, Hanson v Riseman c th nhn dng cc ng
thng mt cch hon chnh. Cng ngh th gic my tnh tin mt bc di trong vic kt hp
vi lnh vc tr tu nhn to (Articial Intelligence).

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

Nm 1979, Nagel bc u thnh cng trong vic phn tch hnh nh giao thng, y l
c s cho b phn tr l o (Visual driver assistance) c lp t trn xe tr gip ti x c
hon thnh vo 1 thp k sau vo nm 1988 bi Bajcsy.
Nm 1996, Dickmanns c th phn tch chuyn ng trn ng cao tc v hon
thin cng ngh pht hin chuyn ng (Motion tracking). Lnh vc ny sau pht trin rt
mnh v ng dng rt nhiu trong hu ht cc thnh tu tin tin.

Hnh 1.5: ng dng th gic my tnh trong phn tch chuyn ng ca xe trn ng cao
tc
Nhng nm u th k 21, nh du bc pht trin vt bc trong lnh vc pht hin
khun mt. Thnh tu v th gic my tnh ngy cng pht trin. cc hi tho khoa hc v th
gic my tnh c t chc thng xuyn.

1.2.3 Cc ng dng
Cc ng dng ca CV rt rng ln v a dng. Tuy nhin mt s ng dng cn mc
hn ch v ch hiu qu khi tch hp vi nhng cng ngh khc. Di y chng ta s im
qua mt vi ng dng ni bt, qua cm nhn c vai tr cng nh tim nng ca CV.
Y khoa (chn on, gii phu)
Cc ng dng trong chn on y khoa da vo cc thit b phn cng a dng nh my
chp ct lp (CT - computed tomography), my chp cng hng t (MRI - magnetic
resonance imaging), my siu m, chp X-quang. nh chp t cc thit b trn s c iu

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

chnh gip bc s xem xt d dng hn, c tng hp gip bc s nhn nhn y


hn.
Ngoi ra, t tp hp nh (chp ct lp, chp bi camera t hon) m hnh 3D c xy
dng v s dng hiu qu trong chn on cng nh iu tr. in hnh nh h thng chp ct
lp ti tn Brilliance iCT Scanner do cng ty thit b y khoa Philips pht trin nm 2007
(Hnh ) c kh nng to m hnh nh ba chiu ton b cu trc c th bnh nhn - xng
khp, c quan ni tng v c n tng mch mu.
An ninh (camera thng minh, nhn dng)
CV c th c tch hp vo h thng camera theo di truyn thng, m nhn vai tr
theo di v cnh bo, gip gim st vin khng phi trc tip quan st 24/24: pht hin
chuyn ng v cnh bo xm phm, pht hin cc tnh hung bt thng da trn nhn dng
c ng nh u , cp ngn hng, nguy c cht ui ...

Hnh 1.6: ng dng th gic my tnh trong an ninh


Mt ng dng khc ca CV trong lnh vc an ninh l nhn dng khun mt ph bin
trn mt s dng my tnh xch tay
Giao thng (theo di lu thng, iu khin xe)
ng dng c ph bin hin nay l theo di lu thng: cnh bo sm tnh trng n
tc, ghi nhn cc trng hp phng nhanh lng lch, chp v truy sut s xe vi phm x l
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

... Mt ng dng khc ang c nghin cu pht trin l iu khin xe t hnh. H thng
camera ghi nhn hnh nh xung quanh khi xe di chuyn, bng cm quan my tnh, nh v ln
ng, pht hin cc vt cn v xe khc, nhn bit cc bng ch dn,... iu khin xe.
Robot (gia nh, khng gian)
Trong lnh vc khng gian, CV c vai tr quan trng trong vic vn hnh cc robot
thm him (hnh12). Trc ht l xy dng m hnh 3D ca b mt hnh tinh hoch nh
ng i an ton nht. Trong qu trnh di chuyn, robot c lng chuyn ng ca mnh da
trn s phn tch chuyn ng ca cnh quan. Khi tip cn mc tiu cn kho st, robot
iu khin cnh tay c hc qua quan st t camera thc hin cc thao tc o bi, ly mu t
, chp nh chi tit,...

Hnh 1.7: ng dng th gic my tnh trong thm him khng gian
CV cng c pht trin cho cc robot gia nh, gip robot c th xy dng m hnh v
nh v mnh (SLAM Simultaneous Localization and Mapping), giao tip vi con ngi qua
nhn dng c ng.
T ng ha sn xut (o lng, kim nh cht lng)
Trong cc dy chuyn sn xut, cng ngh cm quan my tnh c ng dng thay th
phng php th cng hoc c hc nhm tng hiu sut v trnh va chm h hi sn phm.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

Ph bin nht l o lng v kim nh cht lng sn phm: mu sc v ph u khi sn


v xe hi, cn i v hnh dng bnh rng (hnh 13), cht lng in nhn mc (hnh 14),...

1.2.4 Th gic my tnh Vit Nam


Trong nhng nm gn y, lnh vc th gic my c ng dng rng ri trn khp
c nc v c bit c nghin cu chuyn su trong cc t chc qun i v mt s vin
nghin cu khc.
Vic p dng th gic my vo cc ng dng nghin cu khoa hc c coi l mt khi
u cho chng ng pht trin ca th gic my cc trng i hc hin nay.

1.3

Lch s cc thut ton v Robot chi c

1.3.1 Nhng chic my nh c u tin


Mt iu ng kinh ngc l chng trnh chi c u tin c vit trc khi chic my
tnh u tin c pht minh. N c vit bi mt ngi nhn xa trng rng, bit rng my
tnh c th lp trnh c sp ra i v mt khi n c pht minh ra, n c th chi c c.
Ngi l Alan Turing, mt trong nhng nh ton hc ln ca thi k . Turing
ng u nhm ph m b mt "Enigma" ca c, c nh hng ln n kt cc ca chin
tranh th gii ln th 2. ng rt thch chi c nhng mc d rt cc k thng minh v ginh
rt nhiu cng sc hc c nhng ng vn ch l mt ngi chi tng i yu. Sau chin
tranh, ng vit nhng lnh hng dn my tnh c th chi c c.
Vo thi im cha c chic my tnh no c th chy c cc lnh nn chnh ng
thc hin cc lnh , ng vai b x l trung tm v cn khong na ting cho mt nc i.
Mt vn c c ghi li, trong chic "paper machine" ca Turing thua mt ng nghip.
Cng vo cng thi vi Turing, mt nh ton hc ln khc, Claude Shanon ca Bell
Laboratori cng ngh ti vic dy my tnh chi c. ng nhn ra rng vn l ch c qu
nhiu kh nng tip din sau mt nc i. Do ng phn bit gia "chin lc A", tm kim
tt c nhng nc tip theo, v "chin lc B", b nhng ng khng cn thit.
Trong nhng nm chin tranh, M xy dng mt phng th nghim khng l Los
Alamos trong sa mc ca bang New Mexico. Mc ch ca n l nghin cu ch to bom
nguyn t. tm ra dng cu to ca phn kch n c th to thnh phn ng dy chuyn
i hi rt nhiu tnh ton.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

Nm 1946, nh ton hc Hungary/M John von Neumann c giao nhim v thit k


mt chic my tnh thc hin cng vic ny nhanh hn. Nm 1950, mt chic my khng
l c goi l MANIAC I c ch to. N c hng nghn bng chn khng v cng tc v c
th thc hin 10000 lnh trong mt giy. N cng c th c lp trnh.

Hnh 1.8: C my MANIAC I


Thay v ngay lp tc bt tay vo vic ch to bom, cc nh khoa hc bt u th nghim
vi chic my. Mt trong nhng iu u tin h lm l vit mt chng trnh chi c. N
chi trn mt bn c thu nh 6x6 v khng c Tng. Mc d vy chng trnh ny vn cn
12 pht tm kim trc 4 nc .

1.3.2 Thut ton Alpha-Beta


Vn chnh vi cc chng trnh chi c l s lng ln cc nc phi tnh ton. Mt
v tr trung bnh s c 40 nc i hp l. Nu tnh tt c cc nc i i phng i sau s
c 40x40 = 1600 v tr. iu ny c ngha l sau mt nc 16000 v tr c th xy ra. Sau hai
nc n l 2.5 triu v tr v sau ba nc l 4.1 t. Trung bnh mt vn c ko di khong 40
nc. S v tr cn tnh l khong 10 m 128, ln hn c s nguyn t c trong v tr (ch
khong 10 m 80). Do my tnh lc dng nh khng bao gi c th chi trnh
kin tng.
Bc nhy vt u tin l nm 1958 khi ba nh khoa hc ca i hc Carnegie-Mellon
University ti Pittsburgh (Newell, Shaw v Simon) tm ra mt pht hin quan trng. Bn c
th b mt phn ln ca cy tm kim m khng nh hng ti kt qu. H gi l thut
ton alpha-beta. Mt im cn nh l y l mt k thut ton hc thun tu.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

Thut ton alpha-beta c kt qu ging nh mt tm kim y trong khi ch phi i


qua cn bc hai s v tr m tm kim y cn. Vo thp k 70, chic my tnh nhanh nht
(CDC Cyber series) c th tm trc ti 7 nc v t c kh nng chi ng n.

1.3.3 Chic my Belle


Ken Thompson l mt nh khoa hc khng th ch i nhng chic siu my tnh gi
hng triu tr nn 5 hay 25 ln nhanh hn c th chi c tt hn. ng v mt ng
nghip Bell Laboratories quyt nh ch to mt chic my ch chuyn chi c, s dng
hng trm con chip v gi khong 20 nghn la.

Hnh 1.9: C my Belle


H gi chic my l "Belle" v n ch c th chi c. Nhng n c th tm kim ti
180 nghn v tr trong mt giy (siu my tnh vo thi ch c th tm c 5000 v tr)
Belle c th tm trc 8 hay 9 ply trong cc cuc thi u, gip n c th c chi trong hng
kin tng. N thng gii v ch th gii my tnh chi c u tin v tt c nhng gii u
khc t 1980 n 1983 cho n khi n b chic my khng l Cray X-MPs, t hn n mt
nghn ln, qua mt.

1.3.4 Hitech
Vo gia nhng nm 80, gio s Hans Berliner , mt nh khoa hc my in ton i
hc Carnegie-Mellon tip tc cng vic ca Ken Thompson. Berliner , tng l phng vin
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

10

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

bo ch gii v ch c vua th gii, ch to mt chic my tnh c phn cng c bit


chi c, gi l HiTech. ng v sinh vin Carl Ebeling ch to mt con chip tnh cc nc
i. Vi 64 chip chy song song, HiTech sut na t c danh hiu v ch my tnh nh
c vua th gii vo nm 1986 (mt chic Cray thng gii ny).
1.3.5 Deep Blue
Sau cc sinh vin ca Berliner nh Feng-hsiung Hsu, Murray Campbell v nhng
ngi khc t pht trin mt chic my tnh khc, c gi l ChipTest v sau Deep
Thought. Gi ca n khong 5000 la v c th tnh ton c 500 000 v tr trong mt
giy. Sau Hsu v Campbell gia nhm IBM. Cng vi Joe Hoane h ch to ra Deep Blue.
Garry Kasparov thi u vi Deep blue ti Philadelphia v New York. N gm c mt
my ch IBM SP/2 vi mt s ln cc con chip c bit tnh ton nhanh. Mi con chip c
th x l hai n ba triu v tr mt giy. Vi vic s dng hn 200 con chip ny, tc tng
cng ca chng trnh c th tng ln ti 200 triu v tr trong mt giy.

1.4

Nhim v ca lun vn
Tn ti l: ROBOT CHI C TNG.
Nhim v ca ti l thc hin m hnh bn c tng t ng ng dng cng ngh x

l nh nhn dng qun c vi cc ni dung thc hin trong qu trnh lm lun vn nh


sau:
-

Tm hiu ng c bc v cc phng php iu khin.

Thit k v thi cng m hnh phn cng c th di chuyn c cc qun c v


ng thi nhn bit nc i ca ngi chi.

Xy dng chng trnh chi c tng trn my tnh ng dng tr tu nhn to.

ng dng x l nh c th nhn dng c nc i ca ngi chi.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

11

GVHD: TS. Nguyn c Thnh

CHNG 1: TNG QUAN TI

1.5

S khi ca h thng
Webcam: quan st
qun c

USB

My Tnh: Trung tm
iu khin m hnh: x
l nh, thut ton chi
c, x l nc i

Khi mch vi iu khin


PIC18F67j60: lu chuyn thng
tin v cho PC v phn tch iu
khin cc mch thnh phn

Khi mch cng


sut: iu khin hot
ng ca 2 ng c
bc, ng c dc v
nam chm in

2 ng c bc
1 ng c DC
1 nam chm in

Hnh 1.10: S lc cu trc h thng

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

12

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

CHNG 2: GII THIU S LC NG C BC V NG C


DC
2.1

Cu to v nguyn l hot ng ca ng c bc
ng c bc l mt loi ng c in c nguyn l v ng dng khc bit vi a s

cc ng c in thng thng. Chng thc cht


l mt ng c ng b dng bin i cc tn
hiu iu khin di dng cc xung in ri rc
k tip nhau thnh cc chuyn ng gc quay
hoc cc chuyn ng ca rto c kh nng c
nh rto vo cc v tr cn thit.
V cu to, ng c bc c th c coi
l tng hp ca hai loi ng c: ng c mt
chiu khng tip xc v ng c ng b gim
tc cng sut nh.
ng c bc khng quay theo c ch
thng thng, chng quay theo tng bc nn
c chnh xc rt cao v mt iu khin hc.
Chng lm vic nh cc b chuyn mch in

Hnh 2.1: Cc loi ng c bc

t a cc tn hiu iu khin vo stato theo


th t v mt tn s nht nh. Tng s gc quay ca rto tng ng vi s ln chuyn mch,
cng nh chiu quay v tc quay ca rto ph thuc vo th t chuyn i v tn s
chuyn i.
ng c bc c 5 c tnh c bn sau:
o Brushlesss ( khng chi than ): ng c bc l loi ng c khng chi than.
o Load Independent ( c lp vi ti ): ng c bc quay vi tc n nh trong
tm moment ca ng c.
o Open loop positioning ( iu khin v tr vng h): thng thng chng ta c th m
xung kch ng c xc nh v tr m khng cn phi c cm bin hi tip v tr,
nhng i khi trong nhng ng dng i hi tnh chnh xc cao ng c bc thng
c s dng kt hp vi cc cm bin v tr nh : encoder, bin tr
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

13

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

o Holding Torque (moment gi ): ng c bc c th gi c trc quay ca n, so


vi ng c DC khng c hp s th moment gi ca ng c bc ln hn rt nhiu.
o Excellent Response ( p ng tt): ng c bc p ng tt khi khi ng, dng li
v o chiu quay mt cch d dng.

2.2

Cc loi ng c bc
C 3 loi ng c bc c bn:
o ng c nam chm vnh cu : c rotor lm bng nam chm vnh cu
o ng c bin t tr thay i: Li rotor lm t st t v hot ng da vo s thay
i t trng gia li v cc cc t stato.
o ng c lai: ht hp gia 2 nguyn l hot ng trn .
Stator ca ng c bc c nhiu cun dy qun trn n. S sp xp cc cun dy ny

to nn h s th cp, h s ny s phn bit thnh cc loi ng c khc nhau. ng c bc


nam chm vnh cu v loi ng c bc lai c th c kt lin kt li vi nhau phn bit
thnh 3 chng loi motor: n cc, lng cc, v ng c bc hai dy song song.

2.2.1 ng c bin t tr thay i


Thng thng loi ng c bc ny c 3 hoc 5 cun dy vi cu to nh hnh sau:

Hnh 2.2: Cu tao ng c bin t tr


ng c bc t tr thay i trong hnh 1 bao gm 3 cun dy c ni chung mt
u. Stator ng c bc c 6 cc v rotor c 4 rng. Chng ta c th nhn vo hnh th
cun dy 1 ang c cp in, v th rng X v tr cc 1. Sau khi cun 2 c cp in
lc t sinh ra s ht u Y v cc 2, v trong trng hp ny nu cun 3 c cp in th
rng Y s di chuyn v pha cc 3 lc ng c ng c bc s di chuyn ngc chiu
kim ng h. Nh vy chng ta thy mi bc ng c di chuyn l 30 , v thc hin
mt vng th ng C Bc phi di chuyn 12 bc.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

14

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

quay ng c ny mt cch lin tc,chng ta ch cn cp in lin tc lun phin cho


3 cun. Theo logic t ra, trong bng di y 1 c ngha l c dng in i qua cc cun, v
chui iu khin sau s quay ng c theo chiu kim ng h 24 bc hoc 2 vng:
Cun 1 1001001001001001001001001
Cun 2 0100100100100100100100100
Cun 3 0010010010010010010010010
Trn thc t th ng c bc t tr thay i c s cc v s rng nhiu hn di
chuyn nhng bc nh hn. ng c bc loi ny c th t ti 1 / bc.

2.2.2 ng c bc n cc
ng c bc loi n cc bao gm 2 cun dy, mi cun c ni ra ngoi gia
cun, v vy thng thng trn thc t y l loi ng c 5 hoc 6 dy ra, ng c bc loi
ny c iu khin bng cch cho u dy chung ni ln ngun v tng u dy cn li ln
lt c ni mass.
ng c bc loi n cc hot ng ging nh tt c ng c ng c bc nam
chm vnh cu v ng c bc hn hp , ngha l n hot ng trn nguyn tc dng t
thng ngn nht gia cc stator v rng rotor. ng c bc hot ng da trn lc ht gia
cc bc v cc nam ca rotor c nhim t vnh cu v cc ca stator to ra do chiu dng
in chy qua stator. Cc bc v nam trn rotor nam chm vnh cu c t ha trc, v
cc t ca stator c quy nh ty theo chiu di chuyn ca dng in qua cc cc stator, v
trn nguyn tc t thng s hng t cc bc n cc nam.

Hnh 2.3: Cu to ng c bc n cc

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

15

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

Trn hnh v chng ta thy cun dy 1a c cp in chy theo hng t trn xung
di, ngha l khi , cc pha trn s tr thnh cc bc v pha di l cc nam, cc bc ca
cun dy s ht cc nam ca rotor v lm cho rotor di chuyn, v sau chng ta s cp in
cho cun 2a, th cun bn tri s tr thnh cc bc s ht cc nam ca rotor lm cho rotor
xoay theo chiu kim ng h, ngc li nu chng ta cp in cho cun 2b th ng c s
quay ngc chiu kim ng h, v mi bc ng c ng c bc di chuyn 1 gc 30 .

2.2.3 ng c bc lng cc
ng c bc lng cc bao gm 2 cun dy, v th trn thc t i vi loi ng c
bc P ny s c 4 dy ra. Khng ging vi ng c loi n cc, ti mi thi im dng
in s i qua ton b cun dy, nh vy moment sinh ra s ln hn nhiu so vi ng c
bc n cc. Dng in qua hai cun dy l hai chiu iu ny i hi cc ca ng c
ng c bc phi c thay i. Da vo hnh chng ta thy dng in chy t u 1b sang
u 1a V dng in s chy theo hng ngc li khi o chiu cp in. V vy iu
khin c ng c loi lng cc chng ta cn 2 mch cu H thay i cc tnh mi
cun dy.

Hnh 2.4: Cu to ng c bc lng cc 2 pha

2.2.4 ng c bc 2 dy song song


i vi loi ng c bc ny th chng ta hon ton c th u ni n tr thnh
ng c n cc hoc lng cc.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

16

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

Hnh 2.5: Cu to ng c bc 2 dy song song


Chng ta s kt ni song song hai cun dy khi cn dng in hot ng ln, v kt ni
hai dy ni tip khi cn in p hot ng ln.

2.2.5 ng c bc hn hp
ng c bc lai l loi kt hp gia ng c bc t thng thay i v loi nam chm
vnh cu. rotor cho ng c ng c bc lai c nhiu rng , ging nh loi t thng thay i,
cha li t ha trn ng tm xoay quanh trc ca n. Rng ca rotor to ng dn gip
nh hng cho t thng u tin vo trong l khng kh. ng c bc lai c li ging nh
ng c bc n cc v lng cc.

Hnh 2.6: Cu to ng c bc hn hp

Cc mch iu khin c bn

2.3

2.3.1 ng c t tr thay i
i vi ng c bc loi ny th mch iu khin bao gm 3 Mosfet iu khin ng
m 3 cun dy. Khi Mosfet chuyn t trng thi ng sang trng thi m, s xut hin cc
xung in p, c th lm hng Mosfet, v th chng ta cn lp them diode bo v khi chuyn
mch.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

17

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

Hnh 2.7: Mch iu khin ng c t tr thay i

2.3.2 ng c n cc
ng c bc loi ny cch iu khin cng hon ton tng t cch iu khin ng
c bc loi t tr thay i.

Hnh 2.8: Mch iu khin ng c n cc

2.3.3 ng c lng cc
i vi ng c bc loi ny, do c hai cun dy, v dng in qua 2 cun dy o
chiu, nn mch iu khin ca n gm 2 cu H.

Hnh 2.9: Mch iu khin ng c lng cc


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

18

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

V khi s dng cu H li ng c th chng ta phi ch n hin tng trng dn,


ngha l hai mosfet trn cng mt nhnh u ng, lm cho dng in tng nhanh, s nh
hng mosfet. Trong mch cu hnh trn s dng kt hp mosfet loi N l Q2, Q4 cho phn
cc dng, v Q1, Q3 cho phn cc m. Hin ti, c nhiu hng thit k IC cu H vi cng
sut tng i ph hp cho cc ng c loi va. nh, hoc chng ta c th s dng module
PWM ca vi iu khin ph hp cho vic iu khin tc ng c v to khong thi gian
delay trnh trng dn.

2.4

Cc phng php iu khin ng c bc

2.4.1 Wave driver

Hnh 2.10: Phng php wave drive


Phng php kch tng pha mt(ngha l trong mt lc ch c mtpha c kch:one
phase on) ng c bc nam chm vnh cu l s kt hp gia mt rotor nam chm vnh
cu v stato dn t. Nng lng dc to ra t mt cun dy ca stator s gy ra mt t
trng nam bc
ln kch th nht cun A s c kch to mt t trng ngc li lm rotor c
gi lai nh trn. ln kch th hai cun B s c kch cun A ngng Lm lc ht ca t
trng s chuyn t cun A sang cun B lm roto quay mt gc 900 theo chiu kim ng h.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

19

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

bc th ba va t cun A va B ln lt c kch nh trn lm ng c xoay vng tun t.

Bng 2.1: Th t iu khin ng c bc phng php wave drive

2.4.2 Full step

Hnh 2.11: Phng php Full Step


ln kch th nht c 2 pha l A&B u c kch ,chng s to ra mt t trng rt
mnh y hng cc bc ca rotor vo gia. ln kch th pha B vn gi nguyn nhng pha
a i din s c kch(pha -A) lm rotor quay mt gc 900. Qu trnh s xy ra tun t ln
kch th t v th nm lm cho ng c quay u.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

20

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

Bng 2.2: Th t iu khin phng php Full Step

2.4.3 Haft step


Ta c th chia i bc ca ng c bng cch chn mt trng thi tt gia s dch
chuyn pha ca 2 cun dy.
ln kch th nht c 2 cun A&B u c kch, rotor x quay 450 t cun A ln
th hai ch c cun B c kch v rotor li quay tip mt gc 450 theo chiu kim ng h .
Qu trnh c th tip din lm ng c quay u.

Bng 2.3: Th t iu khin phng php Half Step

2.4.4 Micro step


i vi ng c bc di chuyn mt bc n hon ton, ngha l kch in p trc
tip, cch ny ch c p dng khi ng c lm vic vn tc thp, nhc im ln nht ca
phng php ny l moment ng c s b suy gim nghim trng do tnh cm ca cun dy
s to ra thi hng, lc cn c thi gian dng in qua cun dy dt gi tr max.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

21

GVHD: TS. Nguyn c Thnh

CHNG 2: GII THIU S LC NG C BC V NG C DC

Hnh 2.12: th dng ca phng php Micro Step


Microstepping c s dng tng phn gii bc cho ng c v to ra s chuyn
i mn gia cc bc. Thng thng phng php Microstepping c p dng trong cc h
thng gii hn ting n v cc vn v cng hng.
Microstepping lm vic trn nguyn tc s gia tng dng in t cun dy ny qua cun
dy khc ca ng c bc. iu ny c th t c nh vo vic iu xung in p cp vo
cun dy ng c. T s iu xung trn cun dy ny gim th t s iu xung trn cun dy
khi li tng ln to ra s chuyn bc mn, khng to ra ting n.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

22

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

CHNG 3: H VI IU KHIN PIC V VI IU KHIN


PIC18F67J60
3.1

Gii thiu chung v h PIC

3.1.1 Lch s pht trin


Nm 1965 hng Genneral Instrument thnh lp ban vi in t nhm tp trung nghin
cu cng ngh ch to b nh kiu EPROM v EEPROM, l cc linh kin thu ht nhiu
u t ca cc phng th nghim bn dn. u nhng nm 70 Genneral Instrument cng ch
to vi x l 16 bit PC1600. B x l ny kh tt nhng c nhc im l kh nng vo ra
khng mnh thch ng b x l PC1600 trong cc ng dng cn c tnh nng cao. Nm
1975 Genneral Instrument thit k vi mch iu khin giao tip ngoi vi (Peripheral interface
controler) vit tt l PIC, l linh kin h tr cc tnh nng vo ra cho vi x l PIC khng
cn nhiu chc nng v ch x l cc cng vic vo ra do b m lnh ca n kh nh gn.
Nhng vi iu khin PIC u tin c im yu l ch to theo cng ngh n-MOS nn tiu th
nhiu nng lng, b nh chng trnh l loi ROM mt n ch np c mt ln, do
chng trnh iu khin c np ngay khi ch to vi mch nn ch thch hp vi cc khch
hng t mua vi s lng ln, lp rp trong sn xut nhng sn phm c th.
Nhng nm u thp ki 80 Genneral Instrument gp kh khn trong thng mi v t
chc li. Hng tp trung vo ch to linh kin bn dn cng sut ln l th mnh cho ti hin
nay ca hng. Genneral Instrument chuyn nhng Ban vi in t v nh my ti Chandle,
bang Anizona cho cc nh u t. H lp ra mt cng ty mi, t tn l Arizona Microchip
technology hin nay l Microchip technology Inc.
Chin lc ca cc nh u t l tp trung vo vi iu khin v cc b nh bn dn. Cc
vi mch PIC n-MOS c ci tin, ch to da trn nn tng cng ngh mi CMOS. Cc sn
phm u tin ca Microchip c bit ti v bn ra vi s lng ln l cc vi iu khin PIC
thuc h PIC16C5x. H ny c hai bin th vi b nh chng trnh l OTP v UV EPROM.
Loi OTP c th np trnh mt ln dng cho sn xut loi ln. Loi UV EPROM c th xa
c bng tia cc tm (tia UV) dng khi pht trin, th nghim phn mm.
Nm 1983 Microchip l hng u tin tch hp c b nh chng trnh flash
EEPROM vo nhng vi iu khin mi, trong c bit n nhiu nht l PIC 16C84 v
PIC16F84. B nh chng trnh flash loi b vai tr ca vi iu khin c b nh xo bng
tia cc tm, c v bng gm t tin v cc n chiu tia cc tm.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

23

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

3.1.2 Phn loi


Tiu chun phn nhm da trn s khc nhau v kin trc b x l bn trong vi iu
khin.
S cc thanh ghi c th truy cp c
C hay khng c ngt , s lng ngt
S lng cc phn cng c chc nng c bit
di t lnh
Da vo nhng c im vi iu khin PIC c chia lm 4 h:
H cp thp (low-end)
Gm cc loi c k hiu 12C5xx, 16C5x, 16C505, 16HV540

di t lnh 12 bit

B ch cc thanh ghi: c 32 thanh ghi trn mt bank, ti a c 4 bank


c im chung
Rt thch hp trong cc ng dng giao din n gin vi ngoi vi.
B nh chng trnh kiu OTP hoc EPROM xo c bng tia cc tm.
Tc cao, thc hin c 5 triu ch th/s vi tn s xung nhp 20MHz.
Ch c mt b m timer.
Khng c cc ngt cng.
Khng c cc li ra tng cng.
Np trnh song song, tr PIC12C5xx v PIC16C505 c np trnh ni tip
theo giao thc ICSP.
H cp chung (Mid-range)
Bao gm 12C6xx, 14C000, 16C55x, 16C6x, 16C62x, 16F62x, 16C67x, 16C8x, 16F87x

v 16C9xx
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

24

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

di t lnh 14 bit

L h vi iu khin PIC thng dng nht hin nay.

B tr cc thanh ghi: 128 byte trn mt bank, ti a 4 bank.

L vi iu khin vn nng tinh nng mnh.

C rt nhiu bin th khc nhau, vi cc kiu ng v a dng: DIP, PLCC, SSOP


c im:
Tc cao, thc hin c 5 triu ch th /s xung nhp 20MHz.
C cc ngt phn cng.
C t 1 n 3 b m timer
C rt nhiu kiu khc nhau v chn vo/ra tng cng bao gm cc vo/ra
tng t, giao din truyn thng ni tip: ng b, khng ng b, 12C, SPI,
CAN, USB, b iu khin LCD.
B nh chng trnh flash hu ht cc vi mch.
Kh nng np trnh ni tip ICSP.
C kh nng t ghi vo b nh chng trnh (self-programming).
C phn cng g ri chng trnh ICD mt s loi.
H cp cao (High-end) 17Cxxx
Gm cc loi 17Cxxx
-

di t lnh 16 bit

B tr cc thanh ghi: 224 byte trn mt bank, ti a 8 bank, 48 thanh ghi chc nng
c bit (SFR).

c im chung:
Kin trc khc so vi h PIC cp chung, cp thp.
C c lnh tng cng v nhiu kh nng nh a ch.
Vi iu khin giao tip bus, truy nhp cac thit b song song trc tip.
C mt s li vo/ra tng cng.
B nh chng trnh OTP.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

25

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

Np trnh kiu song song.


H cp cao (High- performance)
Gm nhng loi c k hiu 18Cxxx v 18Fxx2
-

di t lnh 16 bit.

B tr cc thanh ghi 256 byte trn mt bank, ti a c 16 bank.

c im chung:
Kin trc nng cao, da trn nn tng ca h cp trung, theo xu hng tha k
nhng tnh nng ca cc loi cp trung ng thi b xung cc tnh nng mi.
Do dn dn c kh nng thay th ton b PIC cp trung.
C cc lnh tng cng v nhiu kh nng nh a ch.
C kh nng truy nhp ti 2Mbyte b nh chng trnh, 4Kbyte b nh RAM.
Vct ngt n, c th lp trnh c mc u tin cc ngun ngt.
Kh nng vo/ra tng t h cp trung.
Tn s hot ng ti a 40MHz, c b nhn tn s PLL.
C b nh chng trnh flash.
Np trnh ni tip, c kh nng t ghi vo b nh chng trnh.
Hin nay mi nht l DSPIC vi nhiu tnh nng vt tri: Kin trc Harvard sa i,
83 lnh n, vi ch a ch mm do.

3.1.3 Mt s u im Microchip PIC


B np trnh cho PIC c th t lp rp mt cc d dng vi chi ph thp do PIC ch yu
np trnh theo chun ICSP (In-Circuit Siral Programming) l phng thc np trnh ni tip:
cc d liu c np vo b nh chng trnh thng qua 2 chn vo/ra c gn l cng truy
nhp n b nh chng trnh trong qu trnh np trnh. Do nh c b nh flash v np
trnh theo chun ICSP m nhng ngi nghin cu v s dng PIC tit kim c ng k
chi ph mua cc cng c np. Vi b nh flash th thi gian np trnh cng c ci thin
ng k ( ch khong vi chc giy) so vi UV EPROM (c hn chc pht).

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

26

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

Microchip cung cp rt y v chi tit cc ti liu k thut v tt c cc loi vi iu


khin PIC. Ngoi ra cn cung cp phn mm cng c min ph MPLAB-IDE c nh gi l
tt nht so vi cc cng c pht trin tng t ca cc hng sn xut vi iu khin khc (cc
ti liu cng c ny c cung cp min ph trn www.microchip.com). Ngoi ra cn c rt
nhiu sch vit v PIC v cc trang web ni v vi iu khin ny. Ti liu h tr cho vi iu
khin PIC ch dng sau my tnh c nhn PC v v doanh s bn ra thi trng hin nay.
Microchip ng u v doanh s bn PIC 8 bit, vt ln trn c cc vi iu khin ca
motorola.

3.2

Gii thiu v vi iu khin PIC18F67J60

3.2.1 Gii thiu chung


PIC18F4550 l mt vi x l c bn a chc nng v r. N l
sn phm ca h vi x l PIC thng dng ca cng ty Microchip
ca M c tr s t ti Chandler, Arizona (M).
Vi iu khin PIC18F67J60 l mt vi iu khin thuc dng
vi iu khin PIC19F97J60, do n c cc c trng chung ca

Hnh 3.1: Vi iu
khin PIC18F67J60

h vi iu khin ny.
- S dng thch anh 25MHz cho ng dng Ethernet.
- B nh chng trnh 128Kbyte ( 65532 lnh).
- B nh d liu 3808 byte.
- C 39 chn I/O thuc cc port A,B,C,D,E,F,G.
- C 5 b Timer:

Timer0: vn hnh nh l 1 b nh thi 8 bit hoc 16 bit, 1 b m.

Timer1: vn hnh nh l 1 b nh thi 8 bit, 1 b m.

Timer2: vn hnh nh l 1 b nh thi 8 bit, 1 b m.

Timer3: vn hnh nh l 1 b nh thi 16 bt, 1 b m.

Timer4: vn hnh nh l 1 b nh thi 8 bt, 1 b m.

- C 2 module Capture/Compare/PWM.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

27

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

- C 3 module EnhancedCapture/Compare/PWM.
- Cc giao tip ni tip MSSP (Master Synchronous Serial Port) v Enhanced USART
(Universal asynchronous receiver/transmitter).
- C 11 knh chuyn i A/D 10 bit.

3.2.2 S chn
Sau y l s chn ca PIC18F67J60.

Hnh 3.2: S chn ca PIC18F67J60

Chn

Loi

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

M t chc nng v cc c tnh

28

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

/MCLR

Chn Reset, mc tch cc thp

OSC1

Li vo b giao ng tinh th

OSC2

Li ra b giao ng tinh th

CLKI

Li vo ca xung Clock ngoi, lun kt hp vi

CLKO

chn OSC1
Li ra ca b dao ng tinh th, ni vi tinh th
hoc b cng hng trong ch dao ng
thch anh. Ging nh CKLO trong ch RC
hoc EC. Lun kt hp vi chn chc nng
OSC2

LEDA

Ethernet LEDA indicator output

LEDB

Ethernet LEDB indicator output

VREF-

Li vo Vref- (thp) th chun

VREF+

Li vo Vref+ (cao) th analog chun

TOCKI

Li vo xung Clock ngoi ca Timer0

INT0,INT1,INT2,INT3

Ngt ngoi

FLT0

Tng cng PWM u vo, kch hot bng phn


mm

KBI0,KBI1,KBI2,KBI3

Interrupt-on-change pin

PGC

Ng vo clock ca ICSP

PGD

I/O

Vo ra d liu ca ICSP

T1OSO

Dao ng u ra Timer1

T1OSI

Dao ng u vo Timer1

T13CKI
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

u vo xung clock ngoi Timerq/Timer3


29

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

ECCP1,

ECCP2,

I/O

Capture input/Compare output/PWM output

ECCP3,CCP4,CCP5
P1A, P2A,P3A

P1B,P2B,P3B

P1C,P2C,P3C

P1D,P2D,P3D

SCK1

I/O

Vo ra Clock ng b ca khi SPI

SDI1

Li vo d liu ca khi SPI

SDO1

Li ra d liu ca khi SPI

SCL1

I/O

Vo ra Clock ni tip ca I2C

SDA1

I/O

Vo ra d liu ni tip ng b ca I2C

RA0-RA5

I/O

PortA.

RB0-RB7

I/O

PortB.

RC0-RC7

I/O

PortC.

RD0-RD2

I/O

PortD.

RE0-RE5

I/O

PortE.

RF1-RF7

I/O

PortF.

RG4

I/O

PortG.

TX1

Cng truyn khi EUSART1

CK1

I/O

Xung clock cho EUSART1

RX1

Cng nhn khi EUSART1

DT1

I/O

D liu EUSART1

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

30

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

C1OUT,C2OUT

Ng ra b so snh

CVREF

B so snh tham kho in p u ra

/SS1

Slaver ng b

AN0-AN11

12 chn vo tn hiu analog

Vss

GND cho module s v chn I/O

Vdd

Ngun dng cho module s v chn I/O

AVss

GND cho module tng t

AVdd

Ngun dng cho module tng t

ENVREG

Cho php iu chnh in p trn chip

VDDCORE

Ngun cung cp cho li vi iu khin

VCAP

Kt ni t in lc bn ngoi

VSSPLL

GND cung cp cho Ethernet PHY PLL

VDDPLL

3.3V cung cp cho Ethernet PHY PLL

VSSTX

GND cung cp cho Ethernet PHY truyn

VDDTX

3.3V cung cp cho Ethernet PHY truyn

VSSRX

GND cung cp cho Ethernet PHY nhn

VDDRX

3.3V cung cp cho Ethernet PHY nhn

RBIAS

Bias current for Ethernet PHY

TPOUT+

Tn hiu u ra Ethernet

TPOUT-

Tn hiu u ra Ethernet

TPIN-

Tn hiu u vo Ethernet

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

31

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

TPIN+

Tn hiu u vo Ethernet

Bng 0.1: Chc nng cc chn ca PIC18F67J60

3.2.3 Dao ng thch anh


Mi vi iu khin hot ng u cn mt xung clock nht nh. Hai chn OSC1 v
OSC2 cung cp dao ng cho vi iu khin PIC hot ng.
PIC18F67J60 c th hot ng trong 5 ch dao ng khc nhau:
1) HS

Dng thch anh tn s cao

2) HSPLL

Dng thch anh tn s cao vi ch PLL

3) EC

Dng xung clock bn ngoi FOSC/4

4) ECPLL

Dng xung clock bn ngoi vi ch PLL

5) INTRC

Dng dao ng ni 31 kHz

ch HS, HSPLL th dng thch anh ni vo 2 chn OSC1 v OSC2 thip lp


dao ng. Vic mc thm cc t lc gip tng tnh n nh ca b dao ng, tuy nhin gi tr
ca t khng qu ln hay qu nh dao ng n nh v thi gian khi ng ngn.

Bng 3.2: Gi tr cc t lc thch anh


i vi mt s ng dng m chnh xc ca thi gian khng quan trng, c th dng
dao ng RC nh mt gii php tit kim. Tn s dao ng c xc nh bi gi tr ca in
tr R v t C.

3.2.4 MCLR
PIC18F67J60 c 8 ch reset khc nhau:
1) Power-on Reset (POR)
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

Reset khi cp ngun


32

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

2) MCLR Reset during normal operation

Reset khi chn MCLR=0

3) MCLR Reset during Sleep

Reset trog trng thi ngh

4) Watchdog Timer (WDT) Reset

Reset bng b watchdog

5) Programmable Brown-out Reset (BOR)

Reset mc thp

6) RESET Instruction

Reset bi lnh trong program

7) Stack Full Reset, Stack Underflow Reset

Reset khi trn

8) Configuration Mismatch (CM)

Hnh 3.3: S kt ni chn MCLR.


Ng vo Master Clear (MCLR) trn chn s 7 ca vi iu khin PIC. Khi a MCLR
xung thp, cc thanh ghi bn trong vi iu khin PIC s c ti nhng gi tr thch hp
khi ng li h thng.
a s nhng thanh ghi trong pic khng nh hng bi reset. Cc thanh ghi b nh
hng bi reset c th tra cu trc tip trong datasheet.

3.2.5 Ngun cp
PIC18F67J60 vn hnh vi ngun n 3.3V.
-

Chn Vdd v chn Vref ( ngun cho b ADC) : ni vi VCC

2 Chn Vss ( trong c 1 chn Vss cho b ADC) : ni vi GND

C 4 chn ny phi c ni ngun th PIC mi hot ng c.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

33

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

PIC c tng cng 3 ch hot ng Run, Idle mode vi dng t hn 5.8 A v Sleep
mode vi dng tiu th ch 0.1 A. Hai ch idle v sleep c kch hot a pic vo
trng thi tit kim nng lng.

3.2.6 T chc b nh
PIC18F67J60 bao gm 2 khi b nh ring bit: B nh chng trnh v b nh d liu
RAM. i vi kin trc Harvard, b nh d liu v b nh chng trnh s dng cc bus
ring bit. iu ny cho php truy nhp ng thi hai khng gian b nh.

Hnh 3.4: T chc b nh ca PIC.


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

34

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

B nh chng trnh cn c cc ngn xp (stack) vi 32 mc. Vector reset c t


a ch 0000h v vector ngt ngoi vi c t a ch 0008h v 00018h. Khi PIC c
reset th chng trnh s nhy v v tr vector reset v bt u thc hin ti .
Cc vng RAM a mc ch (GPR General Purpose RAM) c chiu rng l 8 bit v
c truy cp trc tip hoc gin tip thng qua thanh ghi chc nng c bit.
Cc thanh ghi chc nng c bit c s dng bi b x l trung tm v cc hm chc
nng ngoi vi iu khin hot ng ca cc thit b. Cc thanh ghi chc nng c bit c
chia lm 2 loi, loi th nht dng cho cc chc nng ngoi vi (ngt, so snh, iu bin xung
PWM,...) loi th hai dng cho cc chc nng bn trong ca vi iu khin (cc php tnh s
hc, truy xut d liu,... )
B nh d liu bao gm 16 Bank: Bank 0, Bank 1 Bank 15. Mi Bank c dung
lng 256 Bytes, bao gm vng RAM a mc ch v vng cc thanh ghi chc nng c bit
SFRs (Special Function Registers).
Vic truy xut c khi qut qua hnh sau:

Hnh 3.5: Qu trnh truy sut b nh PIC.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

35

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

3.2.7 Capture /Compare /PWM ( CCP)


CCP (Capture/Compare/PWM) bao gm cc thao tc trn cc xung m cung cp bi
cc b m Timer1, Timer2, Timer3 v Timer4.
PIC18F67J60 c tch hp sn nm khi CCP: ECCP1, ECCP2, ECCP3, CCP4 v
CCP5.Mi CCP c mt thanh ghi 16 bit (CCPRxH:CCPRxL), pin iu khin dng cho khi
CCPx l RC2/ECCP1/P1A, RC1/T1OSI/ECCP2/P2A, RD1/ECCP3/P3A, RD2/CCP4/P3D v
RG4/CCP5/P1D. Cc chc nng ca CCP bao gm:
-

Capture.

So snh (Compare).

iu ch rng xung PWM (Pulse Width Modulation).

Khi hot ng ch Capture th khi c mt hin tng xy ra ti pin CCPx, gi


tr ca thanh ghi TMR1(hoc TMR3) s c a vo thanh ghi CCPRx. Cc hin tng
c nh ngha bi cc bit CCPxM<3:0> (CCPxCON<3:0>) v c th l mt trong cc hin
tng sau:
-

Mi khi c cnh xung.

Mi khi c cnh ln.

Mi cnh ln th 4.

Mi cnh ln th 16.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

36

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

Hnh 3.6: C ch hot ng ch Capture.


Sau khi gi tr ca thanh ghi TMR1(hoc TMR3) c a vo thanh ghi CCPRx, c
ngt CCPIF c set v phi c xa bng chng trnh. Nu hin tng tip theo xy ra m
gi tr trong thanh ghi CCPRx cha c x l, gi tr tip theo nhn c s t ng c
ghi ln gi tr c.
Khi hot ng ch Compare, gi tr trong thanh ghi CCPRx s thng xuyn
c so snh vi gi tr trong thanh ghi TMR1(hoc TMR3). Khi hai thanh ghi cha gi tr
bng nhau, cc pin ca CCP c thay i trng thi (c a ln mc cao, a xung mc
thp hoc gi nguyn trng thi), ng thi c ngt CCPIF cng s c set. S thay i
trng thi ca pin c th c iu khin bi cc bit CCPxM<3:0> (CCPxCON <3:0>).
Tng t nh ch Capture, Timer1 phi c n nh ch hot ng l timer
hoc m ng b. Ngoi ra, khi ch Compare, CCP c kh nng to ra hin tng c
bit (Special Event trigger) lm reset gi tr thanh ghi TMR1 v khi ng b chuyn i
ADC. iu ny cho php ta iu khin gi tr thanh ghi TMR1 mt cch linh ng hn.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

37

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

Hnh 3.7:C ch hot ng ch Compare.


Khi hot ng ch PWM (Pulse Width Modulation: khi iu ch rng xung),
tn hiu sau khi iu ch s c a ra cc pin ca khi CCP (cn n nh cc pin ny l
output). s dng chc nng iu ch ny trc tin ta cn tin hnh cc bc ci t sau:
1) Thit lp thi gian ca 1 chu k ca xung iu ch cho PWM (period) bng cch
a gi tr thch hp vo thanh ghi PR2 (PR4).
2) Thit lp rng xung cn iu ch (duty cycle) bng cch a gi tr vo thanh
ghi CCPRxL v cc bit CCPxCON<5:4>.
3) iu khin cc pin ca CCP l output bng cch clear cc bit tng ng trong
thanh ghi TRISG.
4) Thit lp gi tr b chia tn s prescaler ca Timer2 (Timer4) v cho php n hot
ng bng cch a gi tr thch hp vo thanh ghi TxCON.
5) Cho php CCP hot ng ch PWM.
Trong gi tr 1 chu k (period) ca xung iu ch c tnh bng cng thc: B chia
tn s prescaler ca Timer2 (Timer4) ch c th nhn cc gi tr 1, 4 hoc 16. Khi gi tr thanh
ghi PR2 (PR4) bng vi gi tr thanh ghi TMR2 (TMR4) th qu trnh sau xy ra:

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

38

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

Thanh ghi TMR2 (TMR4) t ng c xa.

Pin ca khi CCP c set.

Gi tr thanh ghi CCPRxL (cha gi tr n nh rng xung iu ch duty cycle)


c a vo thanh ghi CCPRxH.

rng ca xung iu ch (duty cycle) c tnh theo cng thc:


PWM period = [(PRx)+1]*4*TOSC*(gi tr b chia tn s caTMRx).
PWM duty cycle = (CCPRxL:CCPxCON<5:4>)*TOSC*(gi tr b chia tn s TMRx)

Hnh 3.8:C ch hot ng ch PWM.


Nh vy 2 bit CCPxCON<5:4> s cha 2 bit LSB. Thanh ghi CCPRxL cha byte cao
ca gi tr quyt nh rng xung. Thanh ghi CCPRxH ng vai tr l buffer cho khi
PWM. Khi gi tr trong thanh ghi CCPRxH bng vi gi tr trong thanh ghi TMR2 v hai bit
CCPxCON<5:4> bng vi gi tr 2 bit ca b chia tn s prescaler, pin ca khi CCP li c
a v mc thp, nh vy ta c c hnh nh ca xung iu ch ti ng ra ca khi PWM.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

39

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

3.2.8 Ngt
Vi iu khin PIC 18F67J60 c nhiu ngun ngt v u tin mt s tnh nng ngt, cho
php hu ht cc ngun ngt c gn cc mc u tin cao hoc mt mc u tin thp.
Vector ngt u tin cao ti 0008h v u tin thp ti 0018h. S kin ngt u tin cao s lm
gin on ngt u tin thp bt chp n ang c thc hin.
C 13 thanh ghi c s dng kim sot hot ng ngt. Nhng thanh ghi ny l:
-

RCON

INTCON

INTCON2

INTCON3

PIR1,PIR2,PIR3

PIE1,PIE2,PIE3

IPR1,IPR2,IPR3

Hnh 3.9: Khi t chc ngt trong PIC.


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

40

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

Mi ngun ngt u c 3 bit kim sot hot ng l:


-

Flag bit: ch ra rng mt s kin ngt xy ra.

Enable bit: cho php chng trnh thc hin r nhnh ti a ch vector ngt
khi bit c c thit lp.

Priority bit: chn u tin cao hoc l u tin thp.

3.2.9 Module A/D 10bit


Vi iu khin PIC 18F67J60 c 11 knh chuyn i A/D (analog-to-digital). Module
ADC cho php chuyn i mt tn hiu tng t u vo thnh mt gi tr s 10 bit tng ng
u ra.
Module A/D c 5 thanh ghi:

Thanh ghi ADRESH (A/D Result High Register).

Thanh ghi ADRESL (A/D Result Low Register).

Thanh ghi ADCON0 (A/D Control Register 0).

Thanh ghi ADCON0 (A/D Control Register 1).

Thanh ghi ADCON0 (A/D Control Register 2).

Qu trnh chuyn i A/D:


- Bc 1: Cu hnh cho module A/D

Thit lp thanh ghi ADCON1 (cu hnh chn analog, VREF, Digital I/O).

Thit lp thanh ghi ADCON0 (cho php b A/D hot ng, chn knh A/D
u vo).

Thit lp thanh ghi ADCON2 (chn xung clock cho b A/D, acquisition time).

- Bc 2: Cu hnh ngt A/D (nu s dng)

Xa bit ADIF.

Set bit ADIE.

Set bit GIE.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

41

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

- Bc 3: Ch acquisition time c yu cu (nu c yu cu).


- Bc 4: Bt u chuyn i, set bit ADCON0<1>.
- Bc 5: Ch qu trnh chuyn i A/D hon thnh bng vic ch cho n khi bit
ADCON0<1> b xa hoc ch ngt A/D.
- Bc 6: c kt qu cc thanh ghi (ADRESH:ADRESL), xa bit ADIF nu c yu
cu.
- Bc 7: thc hin qu trnh chuyn i tip theo, quay li bc 1 hoc bc 2.

3.2.10 Module Ethernet


Vi iu khin PIC18F67J60 c tch hp sn module iu khin Ethernet.
y l mt gii php kt ni hon chnh, bao gm c module Media Access Control (MAC)
v Physical Layer transceiver (PHY). Module Ethernet p ng tt c cc chun IEEE 802.3
cho kt ni 10-BaseT cp i xon. C hai led output bo lin kt v trng thi hot ng
ca mng.

Hnh 3.10: S khi module Ethernet.


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

42

GVHD: TS. Nguyn c Thnh

CHNG 3: H VI IU KHIN PIC V VI IU KHIN PIC18F67J60

Module Ethernet gm 5 khi chc nng chnh:


-

Khi truyn nhn PHY s m ha v gii m d liu gi hoc nhn u RJ45.

Khi MAC ph hp vi chun IEEE 802.3 cung cp MIIP ( Media Independent


Interface Management ) iu khin PHY.

Mt b m RAM 8Kbyte lu tr cc gi tin truyn nhn.

Mt khi phn x iu khin s truy cp vo b m RAM khi c DMA,


khi truyn nhn yu cu.

Thanh ghi giao tip c chc nng thng dch nhng dng lnh v tn hiu trng
thi ni gia module Ethernet v cc thanh ghi c bit ca vi iu khin SFRS.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

43

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

CHNG 4: XY DNG THUT TON CHI C


Dng tr chi

4.1

Cc tr chi u tr nh c Vua, c Tng, c vy, c caro (go-moku), c gnh... cn


gi l cc tr chi i khng, din ra gia hai u th. Cc tr chi u c th chuyn v
mt dng bi ton tm kim c bit: tm ng i n cc im cao nht gia hai u th.
c im ca cc tr chi trn nh sau:

C hai u th, mi ngi ch i mt nc khi ti lt.

Cc u th u bit mi thng tin v tnh trng trn u.

Trn u khng ko di v tn, phi din ra ha, hoc mt bn thng v bn kia thua.
Thng thng ta hay gi cc tr chi ny l cc loi c.

a) C tng

b) C vua

c) C caro

d) C vy
Hnh 4.1: Cc loi c

Cc tr chi nh chi bi, d mn, xc sc... ph thuc nhiu vo may mn khng thuc
lp tr chi ny.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

44

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

4.2

Cy tr chi
Cc trng thi bn c khc nhau (hay cn gi l mt th c, tnh hung c) trong qu

trnh chi c th biu din thnh mt cy tm kim (c gi l cy tr chi - hnh 1.2) v ta


s tin hnh tm kim trn cy tm c nc i tt nht. Cy tr chi c cc nt ca cy l
cc tnh hung khc nhau ca bn c, cc nhnh ni gia cc nt s cho bit t mt tnh
hung bn c chuyn sang tnh hung khc thng qua ch mt nc i n no . D nhin,
cc nc i ny din ra theo cp do hai u th ln lt tin hnh. su ca cy tr chi ply
l s tng ca cy (chnh l su d ca cy). Thut ng nc i trong sch c thng
nht ch bao gm mt ln i ca mt u th hoc mt ln i phn ng li ca i th bn kia.
Ch n khc vi thi quen dng trong thc t mt nc i bao gm ln i ca ta v mt ln
i ca i th. Ni cch khc, nc i y thc cht ch l "na nc" theo cch hiu ca
lng c.
Trng thi bn c ban u (
lt bn tin) : ply = 0

Trng thi bn c mi (
lt bn hu) : ply = 1

Trng thi bn c mi (
lt bn tin) : ply = 2
Hnh 4.2: Cy tr chi

4.3

Vt cn
Dng mt thut ton vt cn tm kim trn cy tr chi da theo mt tng n

gin: tm ra nhnh cy s dn ti nc thng i qun l m bo thng li. Nu ng vy,


cc loi c s tr thnh cc tr chi bun t, s chng cn u nhng b quyt huyn o thn
k v bn c s chng khc g bn... tnh. Tuy nhin, cch lm ny li khng th thc hin ni
do bng n t hp. V d, nu t mt th c, trung bnh c kh nng i c 16 nc i khc
nhau (ta gi l h s nhnh con ti mi nt l b = 16). Nh vy, sau mt tng ta s c 16
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

45

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

nt con, mi nt ny li c th c 16 con na. Tng s nt con su th hai l 16x16 = b2.


C nh vy su d s c bd nt.

Hnh 4.3: su v s nt con


Nu gi s su ca cy l 100 (h s nhnh 16 v su 100 u l nhng con s
cn nh hn con s thng gp trong tr chi c), th s nhnh phi duyt ln n 16 100 hay
xp x 10120 - mt con s ln khng khip. Ta gi s tt c cc nguyn t trong v tr u tr
thnh my tnh tnh nc i vi tc mt giy tnh c c 1010 (10 t) nc i, v nu
chng hot ng ct lc c 15 t nm th n by gi mi c th i c nc i u tin.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

46

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

Hnh 4.4: th s nh tng theo thi gian


V s cc kh nng tng qu nhanh, ch c mt s t nhng vn n gin l thch hp
vi kiu tm kim vt ht mi kh nng ny (kiu tm kim vt cn i hi phi kim tra tt c
cc nh). Do , cc phng php tm kim khc ra i v pht trin. Ngc li, nu c
mt phng php lun lun chnh xc nhm nh gi mt th c ny l tt hay km so vi th
kia, th tr chi tr thnh n gin bng cch chn nc i dn ti th c tt nht. Do s
khng cn phi tm kim g na. Rt tic, cc th tc nh vy khng h c. Ta cn c chin
lc tm kim trong tr chi.

4.4

Chin lc tm kim trong tr chi


Mt chin lc thng c c ngi ln my dng l phn tch th c ch sau mt s

nc i no ca c hai bn. Sau khi "nhn xa" xem bn c c nhng kh nng bin i nh
th no sau mt s nc, ta s nh gi xu tt ca cc th c nhn c. Tip theo, ta s
chn nc i s dn ti mt th c tt nht trong s c cn nhc n cch i ca c hai
bn. Vi my, th c ny c nh gi l tt hn th c kia nh so snh im ca th do
b lng gi tr li. Chng ta ch c kh nng xt trc mt s hu hn cc nc (v d i
kin tng chi c c th xt trc 8-10 nc i, ngi thng ch 2-4 nc i). R rng l
nu xt cng su th chi cng gii. Nhng khng th thc hin iu ny vi su qu ln
c do s nt su c th tr nn ln khng khip v khng thi gian phn tch.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

47

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

Nu dng mt su hp l th b phn tch c th hon thnh vic tnh ton trong mt thi
gian hn nh.

4.5

Th tc minimax
Minimax (cn gi l minmax) l mt phng php c mc ch l ti thiu ha

(minimize) tn tht vn c d tnh c th l "ti a" (maximize). C th hiu ngc li l,


n nhm ti a ha li ch vn c d tnh l ti thiu (maximin).
Gii thut Minimax gim tm ra nc i tt nht, bng cch i ngc t cui tr chi
tr v u. Ti mi bc, n s c nh rng ngi A ang c gng ti a ha c hi thng
ca A khi n phin anh ta, cn nc i k tip th ngi chi B c gng ti thiu ha
c hi thng ca ngi A (ngha l ti a ha c hi thng ca B).
Gi s chng ta c mt b phn tch th c c th p dng tt c cc lut, cc phng
php nh c khc nhau vo tng th c v chuyn i chng thnh mt con s i din (cho
im th c). Mt khc, ta gi s con s l dng khi p dng cho th c ca mt u th
(c gi l ngi chi cc i - maximizer), v l m khi p dng cho u th bn kia (c
gi l ngi chi cc tiu - minimizer). Qu trnh tnh ton cho im th c c gi l lng
gi tnh (static evaluation). Hm thc hin vic tnh ton c gi l mt b lng gi tnh, v
gi tr nhn c gi l im lng gi tnh. C hai u th u c gng i nh th no
t c im tuyt i ln nht. Ngi chi cc i s tm nhng nc i dn n im ca
mnh tr nn ln hn (hay cao nht c th c) hay im ca i th bt m hn (nh hn
v gi tr tuyt i). Cn u th ca anh ta, ngi chi cc tiu, li ra sc phn khng li,
dn ti im m ca anh ta m hn hay im dng ca i th nh i

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

48

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

V d c mt cy tr chi nh sau

Ngi chi cc i hi vng chn nc i bn phi t c im 8.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

49

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

Th nhng nu i nh vy th khi n lt i ca ngi chi cc tiu, anh ta s c gng


khng cho ngi chi cc i t c im ny bng cch chn nc i nhnh bn tri v
nh vy, ngi chi cc i ch c c 1 im thay v 8. Ngc li, nu ngi chi cc i
chn nc i bn tri, th trong tnh hung xu nht anh ta vn cn c 2 im, ln hn l
chn nc i bn phi.

Ni chung, ngi chi cc i s phi tm cch nhn ra cc nc i ca i phng tip


theo lm cho im gim xung. V tng t nh vy, ngi chi cc tiu phi nhn bit c
nc i ca ngi chi cc i c gng lm tng im ln. Th tc tm nc i tt nht trn
cy tr chi nh trn c gi l th tc Minimax do im mi nt c th l im cc i
hoc c th l im cc tiu.
Thut ton MINIMAX p dng vo cc tr chi c c nh ngha nh sau:
o Nu nh t n gii hn tm kim (n tng di cng ca cy tm kim), tnh gi tr
tnh ca th c hin ti ng vi ngi chi . Ghi nh kt qu
o Nu nh mc ang xt l ca ngi chi cc tiu, p dng th tc Minimax ny cho
cc con ca n. Ghi nh kt qu nh nht
o Nu nh mc ang xt l ca ngi chi cc i, p dng th tc Minimax ny cho
cc con ca n. Ghi nh kt qu ln nht.
nh gi:
Nu h s nhnh trung bnh ca cy l b v ta thc hin tm kim n su d th s nt
phi lng gi y cy nh ta bit l bd. y chnh l s o phc tp ca thut ton.
Nu b = 40, d = 4 (cc con s thng gp trong tr chi c) th s nt phi lng gi l 404 =
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

50

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

2560000 (trn 2 triu ri nt). Cn vi b = 40, d = 5 th s nt phi lng gi s tng 40 ln


na thnh 405 = 102400000 (trn 102 triu nt).
Do , thut ton ny chy chm do vic sinh cc nc i v lng gi rt tn thi gian
tnh ton, do vy su ca cy tr chi cng b hn ch nhiu.

4.6

Th tc Alpha-Beta:
Th tc AlphaBeta l mt ci tin thut ton Minimax nhm ta bt nhnh ca cy tr

chi, lm gim s lng nt phi sinh v lng gi, do c th tng su ca cy tm


kim. Gi s ta c th c m hai nt u tin c lng gi.

Nu thc hin th tc Minimax i vi cc nt s cho thy ngi chi cc i


c m bo nu i nc bn tri s c t nht l 2 im d l cc lng gi ca cc nt
khc cho kt qu nh th no i na.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

51

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

By gi, ta li gi s nt tip theo c lng gi v cho kt qu l 1. Nu i vo nhnh


ny th i phng s m bo lm im ca ngi chi cc i khng th vt qu c gi
tr 1 d l cc lng gi ca cc nt khc cho kt qu nh th no i na. Do n y,
nc i tt nht l chn nc i bn tri vi m bo l t nht t c 2 im. V do ,
hon ton khng cn thit phi lng gi nt cn li.
Nguyn tc Alpha-Beta
Nu bit iu tht s ti th ng mt thi gian tm hiu n s ti t n u
tng ny c gi l nguyn tc Alpha-Beta do n dng trong th tc AlphaBeta.
Hai tham s ca th tc ny (theo cc t tn truyn thng) c gi l alpha v beta v dng
theo di cc trin vng - chng cho bit cc gi tr nm ngoi khong [alpha, beta] l cc
im "tht s ti" v khng cn phi xem xt na.
Khong [alpha, beta] cn c gi l ca s alpha, beta. Trong alpha lu li gi tr
ln nht c th t c ca ngi chi cc i. Beta lu li gi tr nh nht c th t c
ca ngi chi cc tiu.
Trong ng cnh ca cc tr chi, nguyn tc Alpha-Beta ni rng, mi khi xem xt mt
nt bt k, nn kim tra cc thng tin bit v cc nt cha, ng ca n. Rt c th do c
thng tin t cha, ng nn khng cn phi lm bt c vic g na cho nt ny. Cng vy,
nguyn tc ny cng gip chnh sa hoc xc nh chnh xc gi tr ti nt cha, ng n. Nh
trn ni, mt cch tin theo di qu trnh tnh ton l dng cc tham s alpha v beta ghi
li cc thng tin theo di cn thit. Th tc AlphaBeta c bt u ti nt gc vi gi tr ca
alpha l -vcng v beta l +vcng. Th tc s t gi quy chnh n vi khong cch gia
cc gi tr alpha v beta ngy cng hp hn.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

52

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

Hnh 4.5: V d v thut ton AlphaBeta


Thut ton AlphaBeta
o Nu mc ang xt l nh (gc cy), t gi tr ca alpha l - v beta l +.
o Nu nh t n gii hn tm kim (n tng di cng ca cy tm kim), tnh gi
tr tnh ca th c hin ti ng vi ngi chi . Ghi li kt qu
o Nu nh mc ang xt l ca ngi chi cc tiu,
-

Thc hin cc cng vic sau cho n khi tt c cc con ca n c xt vi

th tc AlphaBeta hoc cho n khi alpha l bng hoc ln hn beta.


-

p dng th tc AlphaBeta vi gi tr alpha v beta hin ti cho mt con. Ghi

nh li kt qu.
-

So snh gi tr ghi nh vi gi tr beta, nu gi tr nh hn th t beta bng

gi tr mi ny.
-

Ghi nh li beta

o Nu nh mc ang xt l ca ngi chi cc i,


-

Thc hin cc cng vic sau cho n khi tt c cc con ca n c xt vi


th tc AlphaBeta hoc cho n khi alpha l bng hoc ln hn beta.

p dng th tc AlphaBeta vi gi tr alpha v beta hin ti cho mt con. Ghi


nh li kt qu.

So snh gi tr ghi nh vi gi tr alpha, nu gi tr ln hn th t alpha


bng gi tr mi ny.

Ghi nh li alpha.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

53

GVHD: TS. Nguyn c Thnh

CHNG 4: XY DNG THUT TON CHI C

4.7

Thut ton khai cuc(Openning book) v tn cuc(Endgame


database)

4.7.1 Khai cuc


Nguyn tc chnh ca khai cuc l: Nhanh chng xut ng lc qun,ng thi cc
qun chnh cn thng thong linh hat, chim c v tr thun li, b tr lc qun hp l, bo tr
tnh nhp nhng ng b v lin kt ca lc qun. Nguyn tc xut ng cc qun chnh nhanh
chng l da trn lc chin u ca lc qun, qun c lc chin u cng mnh th phi cng
c gng xut cng sm.
Tuy nhin, cc chng trnh nh c li khng th da vo nguyn tc ny m li ph
thuc vo s im tnh c trn bn c. S im ny lc ban u li khng chnh lch nhiu
khin cc nc sinh ra bi my khng c linh hot.
Hn na, trang thi ban u, cc nc c sinh ra bi ton b cc qun c rt ln,
tn nhiu thi gian x l. Nh vy, khng t c hiu qu mong mun. Do , ngi ta
kt hp thm d liu cho nhng nc i u tin ny, c gi l opening book.
Trong opening book bao gm d liu khai cuc ca cc vn c mu. Bng cch tng s
lng cc vn c mu v su ca cc nc khai cuc, ta gin tip tng thng minh ca
my.

4.7.2 Tn cuc
Khi vn u gn kt thc, s lng qun c con t, thng l 5 n 6 qun, my tnh s
kt hp vi d liu tn cuc (end-game database) m nhn ra bn thng v thua. Nu my
thng, n s i nhng nc cn li chnh xc tuyt i bo m chin thng. Nu my thua,
n s chi theo ng tt nht - tc l lu thua nht.
Hin nay, vi tn cuc gm 6 qun, c n t 8 n 20 t v tr khc nhau, vn ch p
dng ni cho cc my tnh cao cp v dung lng tra cu vn cn ln. tn cuc vi 7 qun,
my phi tnh ton 1 lng khong 500 nghn t v tr. y l 1 con s xa vi ng vi nhng
my tnh hin ti.
Nhn nh: gi s mt ngy no trong tng lai, khi nghin cu v khai cuc v c
s d liu tn cuc gp nhau. Khi , my s c th i nc i u tin v thng bo s chiu
ht sau bao nhiu nc.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

54

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

CHNG 5: X L NH VI OPENCV

5.1

Tng quan v th vin OpenCV

5.1.1 Lch s pht trin ca OpenCV


OpenCV l vit tt ca Open Source Computer Vision , l th vin x l nh m
ngun m hon ton min ph ca Intel. OpenCV l mt th vin m gm cc hm c xy
dng phc v cho vic x l th gic my thi gian thc (Real time computer vision). Cc
thut ton x l nh thng thng ln cao cp u c ti u ha bi cc nh pht trin th
vin thnh cc hm n gin v rt d s dng.

Hnh 5.1: ng dng ca OpenCV


Intel a ra phin bn OpenCV u tin vo nm 1999. Ban u n yu cu phi c th
vin x l nh ca Intel. Sau v s l thuc ny m h phi g b v by gi chng ta c
th s dng th vin ny hon ton c lp.
Thi im ban u ca OpenCV, mc tiu ca ca n tm lt nh sau:
-

H tr nghin cu bng cch cung cp nhng


m ti u ha mt cch c bn nht.

Ph bin kin thc v x l nh bng cch


cung cp cc c s ph bin m cc nh pht
trin c th xy dng trn, v vy m m s
d dng hn v c th hiu v chnh sa d
hn.

Khng i hi bn quyn hay thng mi ha


v ha ton min ph.

Phin bn alpha u tin ca OpenCV c


pht hnh ti Hi ngh IEEE v Computer Vision v
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

55

Hnh 5.2: Sch ca OReilly


GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Pattern Recognition trong nm 2000, v nm ln tung ra cc bn beta gia nm 2001 v


2005. Phin bn 1.0 u tin c pht hnh vo nm 2006. Vo gia nm 2008, OpenCV
nhn c h tr tch cc t cc doanh nghip, v pht trin mnh m. Phin bn 1.1 c
pht hnh th nghim vo thng 10 nm 2008.
Cng thi gian , mt cun sch ca hai tc gi vit v OpenCV c xut bn bi
O'Reilly ra th trng.
Thng 10 nm 2009, OpenCV ra phin bn th 2. OpenCV 2.0 bao gm nhng thay i
ln vo giao din c++, nhm d dng hn, nhiu kiu-mu an ton, cc chc nng mi, v
thc thi tt hn v hiu sut (c bit l trn h thng a li ngy cng ph bin).
Tnh ti thi im hin ti OpenCV bao gm hn 500 thun ton gii thut ng dng
trn hone 28 lnh vc ca x l nh, vi nhng u im sau:
-

ng thi h tr rt nhiu h iu hnh nh: Window, Linux v MacOSX.

Vit trn nn tng C++, Python. Ngoi ra n cn c th vit trn nn C# hay VB


vi vic dng cc th vin h tr truy sut OpenCV.

Lun lun cp nht lin tc nhng gii thut mi.

5.1.2 Nhng im c trng


a) Image and Video I/O
Nhng giao din ny s gip bn c c d liu nh t file hoc trc tip t video.
Bn cng c th to cc file nh v video vi giao din ny
Th gic my v cc thut ton x l nh ( General computer-vision and imageprocessing algorithms(mid and low level APIs))
S dng nhng giao din ny, bn c th thc hnh vi rt nhiu chun th gic my m
khng cn phi c m ngun ca chng.
b) Modul th gic my cp cao
OpenCV gm mt vi tc dng cp cao. Thm vo nhn dng mt, d tm, theo
di. N bao gm lung th gic ( s dng camera di ng xc nh cu trc 3D), kch c
camera v m thanh ni.
c) AI and machine-learning

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

56

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Cc ng dng ca th gic my thng yu cu my mc phi hc ( machine learning)


hoc cc hnh thc tr tu nhn to khc. Mt vi trong s chng l c sn trong gi OpenCV
d) Ly mu nh v php bin i
N thng rt tt cho qu trnh x l mt nhm phn t nh nh l mt n v.
OpenCV bao gm ly tch ra, ly mu ngu nhin, phc ch, xoay nh, lm cong nh (
warping), thay i hiu ng ca nh.
e) Cch thc to v phn tch nh nh phn
nh nh phn thng xuyn c dng trong cc h thng kim tra c khuyt im hnh
dng hoc cc b phn quan trng. S biu din nh cng rt thun tin khi chng ta bit r
vt th cn bt.
f) Cch thc cho tnh ton thng tin 3D ( methods for computing 3D
information)
Nhng hm ny rt c ch khi cn sp xp v xc nh vi mt khi lp th (with a
stereo rig) hoc vi khng gian nhn phc tp ( multiple views) t mt camera ring.
g) Cc php ton cho x l nh, th gic my v biu din nh( image
interpretation)
OpenCV s dng cc php ton ph bin nh: i s hc, thng k v tnh ton hnh
hc
h) ha
Nhng giao din ny gip bn vit ch v v trn hnh nh. Thm vo nhng chc
nng ny c s dng nhiu trong ghi nhn v nh du. V d nu bn vit mt chng
trnh cn nhn dng nhiu i tng th n s rt c ch cho to nhn nh ( label image) vi
kch thc v v tr.
i) Phng thc GUI
OpenCV bao gm ca s giao din ca chnh bn thn n. Trong khi nhng giao
din ny c so snh gii hn vi kh nng c th thc hin trong mi mi trng. Chng
cung cp nhng mi trng API a phng tin v n gin hin th hnh nh, cho php
ngi dng nhp d liu thng qua chut, bn phm v iu khin qu trnh.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

57

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

j) Cu trc d liu v gii thut


Vi nhng giao din ny bn c th gi li, tm kim, lu v cch danh mc iu khin,
cc tuyn tp(cng nh cc tp hp lnh c gi ), ha v s nhnh mt cch hiu
qu.
k) Kh nng tn ti lu di ca d liu (Data persistence)
Nhng phng php ny cung cp cc giao din mt cch thun li lu tr cc
dng khc nhau ca d liu vo a c th khi phc khi cn thit.

5.1.3 Cch t chc


CXCORE bao gm cc dng d liu c bn r rng. V d cu trc d liu v nh,
im, hnh ch nht c xc nh trong file cxtypes.h. CXCORE cha cc php ton i s
tuyn tnh v thng k, cc hm lu tr lu di ( persistence fun) v cc li thao tc. C
iu l lng thay l cc hm ha c cho vic v nh cng c lu tr ti y.
CV cha ng qu trnh x l nh v cc phng php nh gi s b kch thc nh.
Nhng hm tnh ton hnh hc cng c lu tr ti y.
CVAUX c m t trong vn bn ca OpenCV nh l modul c v ch dng th
nghim. Tuy nhin, giao din n gin nht cho nhn dng mt c nm trong modul ny.
Nhng m ngun nm trong module ny rt ph hp cho vic nhn dng mt v chng c
s dng rng ri cho mc ch ny.

5.2

OpenCV trn HH Ubuntu

5.2.1 Gii thiu HH Ubuntu


Ubuntu l mt h iu hnh hon ton m, c xy dng d trn nhn (kernel) Linux.
Cng ng ngi dng Ubuntu c hnh thnh bi nhng l tng gn km theo trit l
Ubuntu (Ubuntu Philosophy) l: ngi dng c s dng phn mm min ph, mi mt phn
mm u c th s dng di giao din ngn ng bn a ca ngi dng v quan trng nht
l ngi dng hon ton t do chnh sa v thay i phn mm ph hp vi nhu cu s
dng ca mnh.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

58

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.3: Giao din h iu hnh Ubuntu 12.04


Ubuntu kt hp nhng c im ni bt chung ca h iu hnh nhn Linux, nh tnh
bo mt trc mi virus v malware, kh nng ty bin cao, tc , hiu sut lm vic, v
nhng c im ring tiu biu ca Ubuntu nh giao din bt mt, bng by, ci t ng dng
n gin, s d dng trong vic sao lu d liu v s h tr ca mt cng ng ngi dng
khng l.
Cng ng Ubuntu bao gm ngi pht trin, lp trnh vin, ngi th nghim, ngi
son ti liu k thut, ngi dng th cc ti liu k thut, ngi dch v, quan trng nht,
nhng ngi dng Ubuntu hng ngy.
Mt s tnh nng ca Ubuntu:
Ubuntu s lun lun c min ph, bao gm c doanh nghip v bn cp nht bo
mt.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

59

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Ubuntu i km vi y h tr thng mi t Canonical v hng trm cng ty


trn khp th gii
Ubuntu bao gm cc bn dch rt tt nht v c s h tng m kh nng tip cn
cng ng phn mm min ph c n cung cp
Ubuntu a CD ch cha cc ng dng phn mm min ph, chng ti khuyn khch
bn s dng phn mm ngun m min ph.
Hin nay Ubuntu h tr tng i hon chnh 24 ngn ng. Danh sch ny vn tip
tc di thm v c ting Vit ( dch c 77%, iu kin c xem nh tng i hon
chnh l 80%).

5.2.2 Ci t th vin OpenCV 2.4.2 trn HH Ubuntu 12.04


Ci t th vin OpenCV trn HH Ubuntu l cng vic kh phc tpv mt thi gian,
chng ta cn thc hin trnh t cc bc sau:
-

u tin, ta phi m bo rng tt c mi th trong h thng c cp nht v


nng cp:
$sudo apt-get update
$sudo apt-get upgrade

Tip theo, nhng g cn phi c thc hin l ci t cc iu kin tin quyt cn


thit theo yu cu ca OpenCV th vin . Danh sch ph thuc c th c chnh
sa theo nhu cu ca bn. Bc ny rt d dng, bn ch cn phi vit lnh di
y trong Terminal:
$sudo apt-get install build-essential libgtk2.0-dev
libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev
cmake

python-dev

python-numpy

python-tk

libtbb-dev

libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev


libopencore-amrwb-dev

libtheora-dev

libvorbis-dev

libxvidcore-dev libx264-dev libqt4-dev libqt4-opengldev

sphinx-common

libdc1394-22-dev

texlive-latex-extra
libavcodec-dev

libv4l-dev

libavformat-dev

libswscale-dev
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

60

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Tip theo, ta ti sourcecode OpenCV 2.4.2 v my:


$cd ~
$wget
http://downloads.sourceforge.net/project/opencvlibrar
y/opencv-unix/2.4.2/OpenCV-2.4.2.tar.bz2
$tar -xvf OpenCV-2.4.2.tar.bz2
$cd OpenCV-2.4.2

By gi, chng ta phi to ra cc Makefile bng cch s dng cmake . y


chng ta c th xc nh cc b phn ca OpenCV m chng ta mun bin dch .
Chng ta mun s dng Python, TBB, OpenGL, Qt, lm vic vi video, vv th
y l ni cn phi thit lp . Ch cn thc hin lnh ny vo thit b u cui
to ra Makefile ph hp . Lu rng c hai du chm cui dng , n l mt i
s cho chng trnh cmake v n c ngha l th mc cha:
$mkdir build
$cd build
$cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON
-D

WITH_V4L=ON

-D

INSTALL_PYTHON_EXAMPLES=ON

INSTALL_C_EXAMPLES=ON
-D

BUILD_EXAMPLES=ON

-D
-D

WITH_QT=ON -D WITH_OPENGL=ON ..
-

Kim tra xem lnh trn c sinh ra cc li hay khng v c bit l n bo co


FFMPEG l YES. Nu ngc li, ta s khng th c hoc vit cc on video.
Ngoi ra, kim tra xem Python, TBB, OpenGL, V4L, OpenGL v Qt c c pht
hin hay khng. Nu c bt k sai st xy ra, chng ta phi quay tr li v sa
cha bng vic ci t thm cc gi cn thit v sau chy cmake mt ln na.
Bn s thy mn hnh hin ra iu tng t nh sau:

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

61

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.4: Cu hnh OpenCV khi ci t.


-

By gi, chng ta sn sng bin dch v ci t OpenCV 2.4.2:


$make
$sudo make install

Cu hnh OpenCV . Trc tin, m tp tin opencv.conf vi m sau y:


$sudo gedit /etc/ld.so.conf.d/opencv.conf

Thm dng sau /usr/local/lib vo cui ca tp tin ( n c th l mt tp tin


rng ) v sau lu li:

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

62

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.5: Sa tp tin opencv.conf khi ci t OpenCV.


-

Chy on m sau cu hnh cc th vin:


$sudo ldconfig

By gi bn phi m mt tp tin:
$sudo gedit /etc/bash.bashrc

Thm hai dng vo cui ca tp tin v lu li:


PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgco
nfig
export PKG_CONFIG_PATH

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

63

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.6: Sa tp tin bash.bashrc khi ci t OpenCV.


-

Cui cng, ng giao din iu khin v m mt ci mi, khi ng li my tnh


hoc ng xut v sau ng nhp li. OpenCV s khng hot ng cho n khi
bn lm iu ny.

5.3

Cc vn c bn trong x l nh

5.3.1 Mt s khi nim c bn


a) im nh (Picture Element)
Gc ca nh (nh t nhin) l nh lin tc v khng gian v sng. x l bng my
tnh (s), nh cn phi c s ho. S ho nh l s bin i gn ng mt nh lin tc thnh
mt tp im ph hp vi nh tht v v tr (khng gian) v sng (mc xm). Khong cch
gia cc im nh c thit lp sao cho mt ngi khng phn bit c ranh gii
gia chng. Mi mt im nh vy gi l im nh (PEL: Picture Element) hay gi tt l
Pixel. Trong khun kh nh hai chiu, mi pixel ng vi cp ta (x, y).
im nh (Pixel) l mt phn t ca nh s ti to (x, y) vi xm hoc mu nht
nh. Kch thc v khong cch gia cc im nh c chn thch hp sao cho mt

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

64

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

ngi cm nhn s lin tc v khng gian v mc xm (hoc mu) ca nh s gn nh nh


tht. Mi phn t trong ma trn c gi l mt phn t nh.
b) phn gii ca nh
phn gii (Resolution) ca nh l mt im nh c n nh trn mt nh s
c hin th. Theo nh ngha, khong cch gia cc im nh phi c chn sao cho mt
ngi vn thy c s lin tc ca nh. Vic la chn khong cch thch hp to nn mt
mt phn b, chnh l phn gii v c phn b theo trc x v y trong khng gian
hai chiu.

Hnh 5.7: V d v s khc bit v phn gii


V d: phn gii ca nh trn mn hnh CGA (Color Graphic Adaptor) l mt li
im theo chiu ngang mn hnh: 320 im chiu dc * 200 im nh (320*200). R rng,
cng mn hnh CGA 12 ta nhn thy mn hn mn hnh CGA 17 phn gii 320*200. L
do: cng mt mt ( phn gii) nhng din tch mn hnh rng hn th mn (lin tc
ca cc im) km hn.
c) Mc xm ca nh
Mt im nh (pixel) c hai c trng c bn l v tr (x,y) ca im nh v xm ca
n. Di y chng ta xem xt mt s khi nim v thut ng thng dng trong x l nh.
Mc xm ca im nh l cng sng ca n c gn bng gi tr s ti im .

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

65

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Cc thang gi tr mc xm thng thng: 16, 32, 64, 128, 256 (Mc 256 l mc ph
dng. L do: t k thut my tnh dng 1 byte (8 bit) biu din mc xm: Mc xm dng 1
byte biu din: 256 mc, tc l t 0 n 255).

Hnh 5.8: Mc xm ca im nh biu din bng s


d) Lc xm ca nh (Histogram)
Lc xm ca mt nh s c cc mc xm trong khong [0,L1][0,L1] l mt hm
ri rc p(rk)=nk/n. Trong nk l s pixel c mc xm th rk, n l tng s pixel trong nh v
k=0,1,2....L1. Do P(rk) cho mt xp x xc sut xy ra mc xm rk. V hm ny vi tt c
cc gia tr ca k s biu din khi qut s xut hin cc mc xm ca mt nh. Chng ta cng
c th th hin lc mc xm ca nh thng qua tn sut xut hin mi mc xm qua h
ta vung gc Oxy. Trong , trc honh biu din s mc xm t 0 n N (s bit ca nh
xm). Trc tung biu din s pixel ca mi mc xm.

Hnh 5.9: Lc xm ca nh

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

66

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

5.3.2 Cc m hnh mu
L phng php din gii cc c tnh v tc ng ca mu trong ng cnh nht nh.
Khng c m hnh mu no l y cho mi kha cnh ca mu Ngi ta s dng cc m
hnh mu khc nhau m t cc tnh cht c nhn bit khc nhau ca mu.
-

M hnh mu RGB: nh sng Red, Green v Blue ng dng cho mn hnh, TV.

M hnh HSV: Nhn thc ca con ngi.

M hnh CYK: My in.

a) M hnh mu RGB
Mi mu c biu din bi khng gian mu RGB u l s pha trn ca 3 thnh phn
mu c bn (Red, Green, Blue). M hnh mu RGB c biu din bi khi lp phng vi
cc trc R, G, B.

Hnh 5.10: Khi lp phng mu RGB


Nhn xt
-

M hnh ny khng th biu din mi mu trong ph nhn thy

cho cc ng dng my tnh

Mn hnh my tnh v TV s dng m hnh ny

c s dng rng ri nht

n gin

b) M hnh mu CMY
Gm 3 thnh phn mu c bn cyan, magenta, yellow. L b mu ca khng gian GRB.
Mi quan h gia 2 khng gian C = 1.0 R,M = 1.0 G,Y = 1.0 - B
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

67

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.11: M hnh mu CMY


c) M hnh mu HSV
Thay v chn cc phn t RGB c mu mong mun, ngi ta chn cc tham s mu:
-

Hue: Bc sng gc ca nh sng. Trong m hnh Hue c biu din bng gc


t 00 n 3600

Value: Cng hay chi nh sng. Value c gi tr [0, 1], V=0 -> mu en.
nh lc gic c cng mu cc i.

Saturation: Thc o tinh khit nh sng gc. S trong khong [0, 1]. Biu din
t l tinh khit ca mu s chn vi tinh khit cc i.

M hnh HSV trc gic hn m hnh RGB. Bt u t Hue (H cho trc v V=1, S=1).
thay i S: B sung hay bt trng, thay i V: B sung hay bt en cho n khi c mu mong
mun.

Hnh 5.12: M hnh mu HSV

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

68

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Thut ton s dng trong lun vn: Bin i Hough

5.4

5.4.1 Khi nim


Bin i Hough l mt k thut thng s dng nhn dng mt hnh dnh c th nh
ng thng, hnh trn, hnh tam gic trong mt nh. Bin i hough ngy nay c ng
dng nhiu trong cc lnh vc, c bit trong lnh vc y hc. u im chnh ca k thut bin
i Hough l n nhn dng mt cch ton cc nn khng b nh hng bi nhiu nh.

5.4.2 L thuyt
Trong qu trnh x l nh, mt vn c bn nhng rt thng gp l phi nhn dng
cc ng thng, hnh trn hay cc a gic. Thng thng, ta phi tin x l nh trc bng
thut ton pht hin bin, v cc gc t nhn dng ra hnh dng ca vt. Tuy nhin, nu
trong nh , do nhiu nn mt i mt hay nhiu pixel khin bin ca vt khng lin tc th
bin ca vt cng khng lin tc dn n nhiu kh khn. V l do ny, bin i hough ra
i.
V c bn, bin i hough da vo vic c tnh cc tham s t cc ng ranh gii, ri
trn c s xc nhn cc tp hp cc tham s no tha mt ngng cho php. Trn c s ny,
php bin i Hough c th nhn dng rt a dng cc hnh dng khc nhau.

5.4.3 Bin i Hough nhn dng ng thng


Trong khng gian nh, mt ng thng c phng trnh sau : y=mx+b v c v
bng cc im nh (x,y) tha phng trnh.
Ta c 2 tham s l m v b. T mt ng thng s tr thnh 1 im (m,b) trong
khng gian tham s. Tuy nhin, phng trnh ny khng tt cho vic tnh ton do trng hp
cc ng thng thng ng s lm cho tham s m v b tr nn khng xc nh. V th,
tin cho vic tnh ton, php bin i Hough chn 2 tham s khc cho ng thng l r and
(theta).

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

69

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.13: Biu din ng thng bng r v


Vi r l khong cch t ng thng ti gc ta v l gc gia vector t gc gia
php tuyn ca ng thng vi trc honh
Khi phng trnh ng thng c vit li nh sau:

Hay dng khc l

r = xcos + ysin

Khng gian Hough khng gian tham s trng hp ny l mt phng (r, ) vi


v

Ta c:
Mt ng thng khng gian nh (x,y) khi bin i Hough s l 1 im trong khng
gian tham s (r, ) v ngc li.
Tp hp cc ng thng qua 1 im trong khng gian nh (x,y) khi bin i Hough s
tr thnh 1 ng cong hnh sin trong khng gian tham s v tun theo phng trnh:

Gi s ta t 2 im trn khng gian nh, th giao im ca 2 ng cong to t 2 im


y giao nhau ti 1 im trn khng gian tham s. im giao y chnh l tham s ca ng
thng i qua 2 im y trong khng gian nh.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

70

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Tp hp cc im ca mt ng thng s c bin i thnh tp hp cc ng cong,


giao im chung ca cc ng con ny chnh l nghim tham s ca bi ton.

Hnh 5.14: Php chuyn hough 1 ng thng sang mt phng tham s


Trn c s ny, bi ton c chuyn t vic tm thao s ca ng thng sang tm giao
im ca cc ng cong.
Trn c s ny, quy trnh nhn dng mt ng thng p dng php bin i Hough
nh sau:
1. Tin x l nh, chuyn nh cn nhn dng v dng nh phn ca cc ng bin,
ranh gii.

Hnh 5.15: nh ban u v sau khi tm bin


2. Qut ton b cc im nh, mi im nh khi chuyn qua khng gian tham s l
mt ng cong hnh sin.
3. Mc xm ca khng gian tham s (Accumulator - xem nh l 1 nh) tng ln
tng ng vi s ng cong i qua im . Qu trnh ny c th xem nh mi
im nh trn hnh ban u s bu chn (vote) cho mt tp tham s (r, ).
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

71

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.16: Khng gian hough trc v sau khi cn chnh lc xm


4. Cui cng, nhng im no c mc xm vt qua ngng m ta quy nh l tham
s ng thng nhn dng c.

Hnh 5.17: Cc ng thng nhn dng c


5. T cc ng thng, ta a chng qua mt b lc gm nhiu iu kin: khong
cch gia 2 ng gn nhau, di ngn nht cng vi vic i chiu vi nh
mu ct nhng ng ny thnh nhng on thng ng.
Trng hp ng bin b t on do nhiu:

Hnh 5.18: Php bin i Hough vi nh b t on


Trng hp nh thu c b nhiu mui tiu

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

72

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.19: Php bin i Hough vi nh b mui tiu


Nh vy, php bin i hough rt t b nh hng bi nhiu.

5.4.4 Bin i Hough nhn dng ng trn


Tng t nh nhn dng ng thng, bin i Hough cng c th dng nhn dng
cc ng cong nh parabol, ng elip, ng trn
Phng trnh ng trn c tham s ha nh sau:

Trong im (a,b) l ta tm ng trn v r l bn knh ng trn.


Phng trnh ny c th vit n gin nh sau (Vi

):

Nh vy, bi ton tr thnh tm b ba tham s (a,b,r) ca ng trn. Khng gian tham


s Hough s l khng gian 3D. Vic ny khin cho qu trnh tm tr nn phc tp hn v tn
nhiu thi gian hn.
Trc ht, ta xt trng hp n gin, ta ch tm cc ng trn c bn knh xc nh.
Nh vy, khng gian tham s tr thnh mt phng.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

73

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Hnh 5.20: Bin i hough tm ng trn vi R xc nh


ng vi mi im, sau khi bin i hough, s tr thnh mt hnh trn (hnh nt t trn
hnh v). Nh vy, tm ca hnh trn chnh l giao im ca cc hnh trn t.
M rng hn, trong trng hp bn knh R khng xc nh, mi im qua php bin i
s tr thnh b mt mt hnh nn ngc trong khng gian tham s (a,b,r).

Hnh 5.21: Bin i Hough ca mt im qua khng gian tham s

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

74

GVHD: TS. Nguyn c Thnh

CHNG 5: X L NH VI OPENCV

Qu trnh x l tip theo tng t nh vi trng hp ng thng.


Cc ng trn c bin khng Cc ng trn c bin trng
trng nhau

chng ln nhau

nh gc

nh nh phn loi b
nn

nh ng bin

Kt qu cc ng trn

Nhn xt

Cc ng trn nhn kh chnh


xc

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

Cc ng trn nhn dng


c c sai lch, ty vo
phn ng bin b mt.

75

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

CHNG 6: THIT K V THI CNG M HNH PHN CNG


6.1

Gii thiu v Robot

6.1.1 nh ngha Robot cng nghip


Hin nay c nhiu nh ngha v robot ta c th im qua mt s nh ngha sau:
- nh ngha theo tiu chun AFNOR ( Php):
Robot cng nghip l mt c cu chuyn ng t ng c th lp trnh , lp i lp li cc
chng trnh, tng hp cc chng trnh t ra trn cc trc ta , c kh nng nh v, nh
hng , di chuyn cc i tng vt cht : chi tit,d ao c , g lp theo nhng hnh trnh
thay i c chng trnh ha nhm thc hin cc nhim v cng ngh khc nhau.
- nh ngha theo RIA ( Robot Istitute of American ):
Robot l mt tay my vn nng c th lp i lp li cc chng trnh c thit k i chuyn
vt liu, chi tit, dng c hoc thit b chuyn dng thng qua cc chng trnh chuyn ng
c th thay i hon thnh cc nhim v khc nhau.
C th ni Robot cng nghip l mt my t ng linh hot thay th tng hot ng c bp v
hot ng tr tu ca con ngi trong nhiu kh nng thch nghi khc nhau. Robot cng
nghip cc kh nng chng trnh ha linh hot trn trc chuyn ng , biu th cho s trc t
do ca chng . Robot cng nghip c trang b nhng bn tay my hoc cc c cu chp
hnh, gii quyt nhng nhim v xc nh trong cc qu trnh cng ngh, hoc trc tip tham
gia thc hin cc nguyn cng hoc phc v cc qu trnh tho lp gia cng vi thao tc cm
nm vn chuyn v trao i cc i tng vi cc trm cng ngh. Trong mt h thng my
t ng linh hot, c gi l H thng t ng linh hot robot ha cho php thch ng
nhanh vi thao tc n gin khi nhim v sn xut thay i.

6.1.2 Bc d do ca Robot
Bc t do l kh nng chuyn ng ca c cu ( chuyn ng tnh tin hoc quay ).
dch chuyn c mt vt th trong khng gian, c cu chp hnh ca robot phi t c
mt s bc t do. Ni chung c h ca robot l mt c cu h , do bc t do ca n c th tnh
theo cng thc :
W = 6n
y:

(6.1)

n S khu ng;
Pi - S khp loi I ( i= 1,2,.,5 : S bc t do b hn ch ).

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

76

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

i vi cc c cu c cc khu c ni vi nhau bng khp quay hoc tnh tin ( khp


ng loi 5) th s bc t do bng s khu ng. i vi cc khu h, s bc t do bng tng
s bc t do ca cc khp ng.
nh v v nh hng khu chp hnh cui mt cch ty trong khng gian 3 chiu
robot cn c 6 bc t do, trong 3 bc t do nh v v 3 bc t do nh hng. Mt s
cng vic n gin nng h, sp xp ta c th yu cu bc t do t hn. Cc robot hn, sn
thng yu cu 6 bc t do. Trong mt s trng hp cn s kho lo, linh hot hoc khi
cn phi ti u ha qu o ngi ta dng robot vi s bc t do nhiu hn 6.

6.1.3 H ta
Mi robot thng gm nhiu khu v lin kt vi nhau qua nhiu khp to thnh mt
xch ng hc xut pht t mt khu c bn ng yn. H ta gn vi khu c bn gi l
h ta c bn ( hay h ta chun). Cc h ta trung gian khc gn vi cc khu ng
gi l h ta suy rng. Trong tng thi im hot ng , cc ta suy rng xc nh cu
hnh ca robot bng cch chuyn dch hi hoc cc chuyn dch gc ca cc khp tnh tin
hoc khp quay. Cc h ta suy rng cn c gi l bin khp.

Hnh 6.1: Cc ta suy rng ca robot.


Cc h ta gn trn cc khu ca robot phi tun theo quy tc bn tay phi: Dng tay
phi , nm hai ngn tay t v tay p t vo lng bn tay, xe 3 ngn : ci , tr , gia theo 3
phng vung gc vi nhau. Nu chn ngn ci l phng ca trc z th ngn tr ch phng
chiu trc x v ngn gia s biu th phng chiu trc y.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

77

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.2: Quy tc bn tay phi xc nh trc ta cho robot.

6.1.4 Trng cng tc ca Robot


Trng cng tc ( hay vng lm vic, khng gian cng tc ) ca robot l ton b th tch
c qut bi khu chp hnh cui khi robot thc hin cc chuyn ng c th. Trng cng
tc b rng buc bi cc thng s hnh hc ca robot cng nh cc rng buc c hc ca cc
khp; v d: mt khp quay c th chuyn ng nh hn mt gc 3600. Ngi ta thng dng
hai hnh chiu m t trng cng tc ca mt robot.

Hnh 6.3: Biu din trng cng tc ca mt robot.

6.1.5 Cu trc c bn ca Robot cng nghip


a. Cc thnh phn c bn ca Robot cng nghip
Mt robot cng nghip thng bao gm thnh phn chnh nh : cnh tay robot, ngun
ng lc, dng c gn ln khu chp hnh cui, cc cm bin , b iu khin, thit b dy hc,
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

78

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

my tnh cc phn mn lp trnh cng nn c coi l mt thnh phn ca h thng robot.


Mi quan h gia cc thnh phn robot trong hnh sau:

Cc cm
bin
Thit b
dy hc

B iu
khin v
my tnh

Ngun ng
lc

Cc chng
trnh

Cnh tay
robot

Dng c
thao tc

Hnh 6.4: Cc thnh phn chnh ca h thng robot.


Cnh tay robot ( tay my ) l kt cu c kh gm mt khu lin kt vi nhau bng cc
khp ng c th to nn nhng chuyn ng c bn ca robot.
Ngun ng lc l cc ng c in ( mt chiu hoc ng c bc) , cc h thng xy
lanh kh nn, thy lc to ng lc cho tay my hot ng.
Dng c thao tc c gn trn khu cui ca robot, dng c ca robot c th c nhiu
kiu khc nhau nh : dng bn tay nm bt i tng hoc cng c lm vic nh m hn,
mi, phun sn
Thit b dy hc dng dy cho robot cc thao tc cn thit thao yu cu ca qu trnh
lm vic, sau robot t lp li cc ng tc c dy lm vic ( phng php lp trnh
kiu dy hc ).
Cc phn mn lp trnh v cc chng trnh iu khin robot c ci t trn my
tnh. Dng iu khin robot thng qua b iu khin. B iu khin cn c gi l M
un iu khin iu khin, n cn c kt ni vi my tnh. Mt moun cc cm bin gip
robot nhn bit trng thi ca bn than, xc nh v tr ca i tng lm vic hoc cc d tm
khc; iu khin cc bng ti hoc c cu cp phi hot ng phi hp vi robot
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

79

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

b. Kt cu ca tay my
Nh ni trn, tay my l thnh phn quan trng, n quyt nh kh nng lm vic
ca robot. Cc kt cu ca nhiu tay my c phng theo cu to v chc nng ca tay
ngi; tuy nhin ngy nay, tay my c thit k rt a dng, nhiu cnh tay robot c hnh
dng rt khc tay ngi. Trong thit k v s dng tay my, chng ta cn quan tm n cc
thng s hnh ng hc, l nhng thng s lin quan ti kh nng lm vic ca robot nh:
tm vi ( hay trng cng tc), s bc t do ( th hin s kho lo linh hot ca robot),
cng vng, ti trng vt nng, lc kp
Cc khu ca robot thng c thc hin hai hng chuyn ng c bn:
-

Chuyn ng tnh tin theo hng x,y,z trong khng gian Descarde, thng thng to
nn cc hnh khi, cc chuyn ng ny thng k hiu l T ( translation) hoc P (
Prismatic ).

Chuyn ng quay quanh cc trc x, y, z k hiu l R ( Roatation).


Ty thuc vo s khu v s t hp cc khu chuyn ng ( R v T ) m tay my c cc

cu khc nhau vi vng lm vic khc nhau. Cc kt cu thng gp ca robot l robot kiu
ta Dercarde, ta tr, ta cu, robot kiu Scara, h ta gc ( phng sinh)
Robot kiu ta Dercarde: l tay my c 3
chuyn ng c bn tnh tin theo phng ca cc trc h
ta gc ( cu tnh T.T.T). Trng cng tc c dng khi
ch nht. Do kt cu n gin. loi tay my ny c cng
vng cao, chnh xc c kh d m bo v vy n
thng dng vn chuyn phi liu, lp rp, hn trong
mt phng.
Hnh 0.5: Robot kiu cc
Robot kiu ta tr: Vng lm vic ca robot c dng hnh tr rng. Thng khp
th nht chuyn ng quay. V d : robot 3 bc t do, cu hnh R.T.T nh hnh v. C nhiu
robot kiu ta tr nh : robot Versetran ca hng AMF ( Hoa K).

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

80

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.6: Robot kiu


ta tr
Robot kiu ta cu: Vng lm vic ca robot c dng hnh cu, thng cng
vng ca loi robot ny thp hn so vi hai loi trn. V d robot 3 bc t do, cu hnh R.R.R
hoc R.R.T lm vic theo kiu ta cu.

Hnh 6.7: Robot kiu ta cu


Robot kiu h ta gc : ( h ta phng sinh): y l kiu robot c s dng
nhiu hn c. Ba chuyn ng u tin l cc chuyn ng quay, trc quay th nht vung
gc vi 2 trc kia. Cc chuyn ng nh hng khc cng l chuyn ng quay. Vng lm
vic ca tay my ny gn ging mt phn khi cu. Tt c cc khu u nm trong mt phng
thng ng nn cc tnh ton c bn l bi ton phng. u im ca loi robot l hot ng
theo h ta gc l gn nh, tc l c vng lm vic ln hn so vi kch c ca bn than
robot, linh hot cao.
Cc robot hot ng theo h ta gc nh : robot PUMA ca hng Unimation Nokia
( Hoa K - Phn Lan ), IRb 6 ( Thy in ) , Toshiba , Mittsubishi, Mazak (Nht Bn).
V d mt robot hot ng theo h ta gc ( h ta phng sinh) c cu hnh
RRR.RRR:
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

81

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.8: Robot hot ng theo h ta gc.


Robot kiu Scara: l loi robot ra i vo nm 1979 ti trng i hc Yamanashi (
Nht) l mt kiu robot mi nhm p ng s a dng ca qu trnh sn xut. Loi robot ny
thng c s dng trong qu trnh lp rp cc chi tit. Ba khp u tin ca robot ny c
cu hnh RRT cc trc khp u theo phng php thng ng.

Hnh 6.9: Robot Scara

6.1.6 Phn loi Robot cng nghip


Robot cng nghip rt phong ph a dng, c th c phn loi theo cc cch sau:
a. Phn loi theo kt cu
Theo kt cu ca tay my ngi ta phn thnh robot kiu ta cc, kiu ta tr,
kiu ta cu, kiu ta gc, robot kiu Scara nh trnh by trn.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

82

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

b. Phn loi theo h thng truyn ng


C cc dng truyn ng ph bin l:
H truyn ng in: thng dng cc ng c in 1 chiu (DC: Dirrect Current )
hoc cc ng c bc ( step motor ). Loi truyn ng ny d iu khin, kt cu gn.
H truyn ng thy lc: c th t c cng sut cao, p ng nhng iu kin
lm vic nng. Tuy nhin, h thng thy lc thng c kt cu cng knh, tn ti phi tuyn
ln kh x l iu khin.
H thng truyn ng kh nn: c kt cu gn nh hn do khng cn dy dn ngc
nhng li phi gn lin vi trung tm to ra kh nn. H ny lm vic vi cng sut trung bnh
v nh, km chnh xc, thng ch c tch hp vi cc robot hot ng theo chng trnh
sn vi cc thao tc n gin nhc ln t xung.
c. Phn loi theo ng dng
Da vo ng dng ca robot trong sn xut c Robot sn, Robot hn, Robot lp rp.
Robot chuyn phi.
d. Phn loi theo cch thc v c trng ca phng php iu khin
C robot iu khin h ( mch iu khin khng c cc quan h phn hi ), Robot iu
khin kn ( hay iu khin servo ) : s dng cc cm bin, mch phn hi tng chnh
xc v mc linh hot iu khin.
Ngoi ra cn c th c cch phn loi khc ty theo quan im v mc ich nghin cu.

Yu cu v tng

6.2

6.2.1 Yu cu
Cn thit k mt cnh tay robot c th di chuyn cc qun c trong ton b mt phng
bn c.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

83

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.10: Kch thc bn c


Cn c theo kch thc bn c v v tr t Robot thit k cnh tay ph hp.

6.2.2 tng
Chn m hnh cnh tay Robot Scara v m hnh ny c kh nng p ng y cc
yu cu t ra nh nng v di chuyn cc qun c trong phm vi cho trc.
Mt s hnh nh cnh tay Robot Scara c dng trong thc t:

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

84

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.11: Hnh dng thng gp ca Robot Scara

Hnh 6.12: Mt mu Robot Scara trong cng nghip

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

85

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

6.3

Thit k Robot
T nhiu ngun trn Internet, robot ch yu c lm t kim loi, c tin, gia cng

v lp rp rt chnh xc, i hi my mc chuyn dng v trnh c kh nht nh.


Sau khi nm c nguyn l v c cu ch to robot, cng vi yu cu ca ti nh ti, tc
v linh hot. Chng ti quyt nh dng vt liu mica ch to robot.
u im ca phng php ny:

Ph hp vi cc m hnh robot cn tc di chuyn nhanh v ti nh.

Thch hp cho cc bn sinh vin nghin cu, thit k v th nghim v khng cn


nhiu my mc chuyn dng.

Gi thnh r v thi gian hon thnh sn phm ngn.

Hnh 6.13: Hnh dng Robot c v m phng trn my tnh


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

86

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Cu to Robot:

2 khp cnh tay do 2 ng c bc iu khin.

1 trc dc di chuyn ln xung do ng c DC iu khin.

1 nam chm in c gn u cnh tay c tc dng ht hoc th mt qun c ti


cc v tr khc nhau trn bn c.

6.3.1 Thi cng m hnh


V cc chi tit Robot dng phn mm Corel x5

Hnh 6.14: Cc chi tit phn thn Robot

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

87

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.15: Chi tit phn y Robot

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

88

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.16: Cc chi tit khp cnh tay Robot


Sau khi hon tt bn v cc chi tit ny, chng ta cn mang i ct Laser.
Lu : chn loi mica i Loan cho cht lng nt ct thm m v cng cao.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

89

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

6.4

Thit k bn c v qun c

6.4.1 Cu to qun c
Qun c l loi qun c tng bng nha trng c( c khi lng nh). Bn trong c gn
mt ming st c ng knh bng ng knh qun c.

Hnh 6.17: Cu to qun c

Hnh 6.18: Cc qun c sau khi hon thnh

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

90

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

6.4.2 Thi cng bn c


Dng phn mn Corel X5 v bn c.

Hnh 6.19: Hnh Bn v bn c


Sau khi hon tt giai on thit k, c mt bn c p vi cc ng nt sc xo
cn gia cng bng my CNC.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

91

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.20: Hnh Bn c v cc qun c sau khi hon thnh

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

92

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

6.5

M hnh sau khi thc hin

Hnh 6.21: Robot nhn t trn xung

Hnh 6.22: Phn thn Robot

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

93

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.23: Khp cnh tay th nht

Hnh 6.24: Khp cnh tay th hai

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

94

GVHD: TS. Nguyn c Thnh

CHNG 6: THIT K V THI CNG M HNH PHN CNG

Hnh 6.25: C cu gp c

Hnh 6.26: Bn c v cc qun c


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

95

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

CHNG 7: GII THUT CHNG TRNH


7.1

Lu gii thut
Bt u

Ci t ban u

Sai

Lt i
ca

Ngi
chi nhn

ng

Sai

ng

My sinh nc i

X l nh

iu khin Robot
di chuyn qun c

Cp nht nc i

Sai
Vn c
kt
ng
Dng chng trnh
Hnh 7.1: Lu gii thut ca chng trnh

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

96

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

7.2

Phng php iu khin cnh tay Robot Scara

7.2.1 Phng php DDA (Digital Differential Analyzer)


Phng php DDA da trn c s thay vi phn bng hiu s cc gi tr ta ti cc
thi im ly mu, khong thi gian ly mu gi l chi k DDA.
V d: di chuyn theo ng thng t im hin ti n im (x,y,z) ta tng i
vi vn tc v, khong ng i l L x 2 y 2 z 2 , thi gian di chuyn T = L/v, vn tc di
chuyn theo mi trc l vx=x/T, vy=y/T,vz=z/T. Ta chia thi gian T thnh n khong chu k
TDDA, (n-1)TDDA<TnTDDA, trong mi chu k khong thi gian di chuyn l xi, yi = xi
*vy/vx, zi = xi *vz/vx. u v cui thi gian T, lng di chuyn thay i ph hp qu
trnh tng tc, vn tc khng i, gim tc v ngng sao cho

x , tng t cho cc

trc y v z.

Hnh 7.2: Ni suy tuyn tnh.


Gi s cn di chuyn theo trc x v y khong cch a v b mm theo th t, tng ng vi
gc v gc vi khong ng di chuyn l L a 2 b 2 v tng gc phi di chuyn l .
ng c bc c phn gii 1.80/ xung c iu khin ch vi bc vi chia l 16
v h thng truyn ng 2:1 th s xung trn mi ng c tng ng l n = *16*2/1.8, n=
*16*2/1.8, tng xung n = *16*2/1.8 . Du ca , quy nh chiu quay ca ng c, s
xung pht ra tng ng vi gc quay ca ng c. Ta dng s sau pht xung, c mi
xung nhp f thanh ghi qx c cng vi n , n c ly gi tr tuyt i, nu qx |n| th pht
mt xung cho ng c th nht v qx = qx - |n|, nu qx < |n| th khng pht xung, tng t cho
qy.
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

97

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

Bng 7.1: V d v pht xung cho 2 ng c.


Cho =56.250, = 33.750,=65.60 quy i ra s xung l 1000,600 v 1166
Chu k

Qx

Qy

Xung 1

Xung 2

1000

600

2000 834

120034

1834 668

634

1668 502

1234 68

1502 336

668

1336 170

1268 102

1170 4

702

1004

1302 136

2004838

736

Mi ng c c iu khin bng 2 chn mt chn DIR v mt chn PUL. Hai ng


c c iu khin bi bn chn P2.0,P2.1,P2.2,P2.3.

7.2.2 Phng php iu khin s dng trong lun vn


Cnh tay Robot Scara trong lun vn s dng phng php DDA vn tc hng.
Ta ca cc qun c c tnh ton trc v chuyn v bng ta vi cc gc tng ng.
Bng ta ny c lu di dng hng s trong sut chng trnh iu khin.

Hnh 7.3: Hnh Bng ta cc qun c


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

98

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

i vi nhng v tr c th c hai cch di chuyn, chng trnh iu khin s t chn


qu o di chuyn ngn nht.
Sau khi chn c gc di chuyn ti u, chng trnh s a ra s xung cn cp cho
mi ng c v gi hm DDA.

7.3

Thut ton x l nh nhn dng nc i


ng dng ca x l nh trong ti l xc nh v tr ca cc qun c c trn bn c t

xut ra ma trn bn c a v chng trnh chi c x l v sinh nc i mi. u tin


webcam s chp hnh bn c v a v my tnh. Ti y nh s c x l ban u bao gm
lc nhiu, ct , chuyn h.Qun c bao gm 2 mu xanh v . Trc tin ta s nhn dng
cc qun c mu , xc nh ta ca chng v a vo ma trn bn c vi gi tr l 3.
Tng t vi cc qun c mu xanh chng cng c xc nh v tr v a vo ma trn bn
c vi gi tr l 1. Sau mi ln x l nh vy ta s c c ma trn bn c. Da vo 2 ma trn
bn c lin tip ta xc nh c nc i ca qun c : di chuyn , n c hay ng yn.
Ton b qu trnh ny c th chia lm ba bc:
-

Tin x l nh

Xc nh mu sc cc qun c

nh v tr cc qun c

a) Tin x l nh
Khai bo webcam:
CvCapture*capture

= NULL;

Lu nh nhn c t webcam vo mt bin frame vi kch thc c t trc:


capture = cvCaptureFromCAM(0);
cvSetCaptureProperty(capture,CV_CAP_PROP_FRAME_WIDTH,WID
TH);
cvSetCaptureProperty(capture,CV_CAP_PROP_FRAME_HEIGHT,HE
IGHT);
frame = cvQueryFrame(capture);
Chuyn nh v h mu HSV, gim nhiu v lm smooth:
cvCvtColor(frame,colimgbot,CV_RGB2HSV);
cvSmooth(monoimgbot, monoimgbot, CV_GAUSSIAN, 7, 7);
b) Xc nh mu sc cc qun c

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

99

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

Qun c bao gm 2 mu : v xanh. Sau khi nhn c hnh nh chp t webcam v


chuyn v h mu HSV ta tin hnh phn ngng v lc mu.
for(i=0;i< (heighthsv);i++)
{
for(j=0;j<(widthhsv);j++)
{
if((datahsv[(i)*stephsv+j*channelshsv]<=hlower_red) &&
(datahsv[(i)*stephsv+j*channelshsv]>=hupper_red))
{
if((datahsv[(i)*stephsv+j*(channelshsv)+1])>sthreshold_re
d)
{
datamono[i*stepmono+j*channelsmono]=255;
}
else
datamono[i*stepmono+j*channelsmono]=0;
}
}
}
for(i=0;i< (heighthsv);i++)
{
for(j=0;j<(widthhsv);j++)
{
if(!(datamono[i*stepmono+j*channelsmono]==0 ||
datamono[i*stepmono+j*channelsmono]==255))
datamono[i*stepmono+j*channelsmono]=0;
}}
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

100

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

c) Xc nh v tr cc qun c
Li dng c im ca qun c tng hnh trn v c 1 vng trn trn qun c, ta p
dng thut ton tm ng trn trong vng qun c v nh ra v tr mt cc tng i ca
qun c.
Qu trnh nhn dng cc ng trn nh sau:
CvMemStorage* storage= NULL;
CvSeq* circles

= 0;

circles = cvHoughCircles(monoimgbot,
storage,CV_HOUGH_GRADIENT, 1, monoimgbot ->height/16,
100, 30,30,40);
for (k = 0; k < circles->total; k++)
{
float* p = (float*)cvGetSeqElem( circles,
k );
toadochitiet[k].x=cvRound(p[0]);
toadochitiet[k].y=cvRound(p[1]);
}
for (h = 0; h < circles->total; h++)
{
for(i=0;i<10;i++)
{
for(j=0;j<9;j++)
{
if (
((toadochitiet[h].x) > (toadoX[i]- offset))
&&
((toadochitiet[h].x) < (toadoX[i]+ offset)))
{
if (
((toadoY[j]- offset) < (toadochitiet[h].y))
&&
((toadoY[j]+ offset) > (toadochitiet[h].y))
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

101

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

)
temp_board[i][j]= const_red;
}}}}

7.4

Chng trnh chi c ng dng tr tu nhn to

7.4.1 Biu din bn c v qun c


Bn c trong tr chi c Tng l mt bng ch nht bao gm 9 ng dc v 10
ng ngang. Cc qun c chia lm hai bn ng ti cc giao im ca cc ng.
Ta dng mt mng piece c ln 90 biu din ton b bn c.

Hnh 7.4: Biu din bn c bng s, v tr qun pho ng vi v tr 20


Cc ca mng s cha nhng gi tr khc nhau cho bit l qun c g. Mi qun c
s c gn mt m s khc nhau nh bng di y
Qun c

Gi tr

Tt (Cht)

Tng

Pho

Xe

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

102

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

Tng

Trng

Ngoi ra ta dng mt mng khc gi l mng color biu din mu ca qun


Bn

K hiu

Gi tr

Xanh

LIGHT

DARK

Trng

EMPTY

bit bn no ti lt i, ta dng mt bin ton cc side cha mt trong hai gi tr


LIGHT v DARK. Mt bin ton cc khc xside s c sn gi tr ngc vi side tin tnh
ton (v d nu side = LIGHT th xside = DARK). Khi ti phin i phng i, ta cn o
ngc gi tr trong c side v xside
Trn giao din ha, ta s dng 90 bc hnh ng vi 90 v tr. Nh vy, biu din
ton b bn c, ta ln lt qut 2 mng trn nh sau:
private void DrawAllPieces()
{
for (Byte i = 0; i < 90; i++)
{
Drawpieces(

piece[i],color[i],i) //

}
}

7.4.2 Sinh nc i (Hm GEN)


Mt trong nhng vic quan trng nht my tnh c th chi c c l phi ch cho
n bit mi nc i c th i c t mt th c. My s tnh ton chn nc i c li nht
cho n. Cc yu cu chnh i vi mt th tc sinh nc i l:

Chnh xc (rt quan trng). Mt nc i sai s lm hng mi tnh ton. ng thi


chng trnh c th b trng ti x thua lun. Do s lng nc i sinh ra ln, lut i
qun nhiu v phc tp nn vic kim tra tnh ng n tng i kh.

y (rt quan trng). Sinh c mi nc i c th c t mt th c.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

103

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

Nhanh. Do chc nng ny phi sinh c hng triu nc i mi khi my n lt nn


gim thi gian sinh nc i c ngha rt ln.
Mt nc i c hai gi tr cn quan tm. l im xut pht (from) v im n

(dest). Ta s khai bo mt cu trc move nh sau dng nhng ni cn n d liu nc i.


public struct MOVE
{
public SByte from;
public SByte dest;
}
Kim tra gii hn bn c
V d c mt qun Xe nm s 84 (trong mng piece). By gi ta s sinh th mt
nc i sang tri mt cho n. Nc i sang tri mt c chuyn thnh s 83 l mt v
tr cng hng vi xut pht nn c chp nhn. Mt nc i khc cn phi xem xt l sang
tri ba - 81. 81 tuy c trong bn c nhng khc hng nn khng c chp nhn. Nh
vy, mun bit ca nc i sang tri c c php khng ta phi kim tra xem n c cng
hng vi xut pht khng. Vic kim tra thc hin bng cch chia cho 9 (kch thc ca mt
dng) v ly phn nguyn (trc li phi chuyn th t v gc l 0 bng cch tr i 1).
Cc nc i va sinh ra s c a vo danh sch nc i nh gi th tc Gen_push.
Th tc ny c hai tham s l v tr xut pht ca qun c s i v ni n dest ca qun c
.
K thut MAILBOX: mc ch chnh ca k thut ny l nhm gim bt cc php kim
tra vt gii hn bn c v lm n gin chng trnh. Mu cht l thay cho bn c c kch
thc bnh thng 9x10 = 90, ta dng mt bn c m rng, mi chiu c thm 2 ng na
(bn c mi c kch thc 13x14 = 182). Cc ng vi cc ng bao m rng u c gi tr
-1, tc l cc gi tr bo vt bin. Cc nc i trn bn c 9x10 c chuyn tng ng sang
bn c ny. Nu mt nc i c sinh ra li ri vo mt trong hai ng bao th c ngha n
ri ra ngoi bn c ri, phi b i v ngng sinh nc v pha . S d c n hai ng
bin (ch khng phi mt) do qun M v Tng c th nhy xa n hai .

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

104

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

Hnh 7.5: Chuyn tng ng bn c t bng 9x10 sang bng 13x14 kim tra gii hn
ngoi
Vic chuyn i to thc hin nh hai mng. Mng mailbox90 dng chuyn t
to bn c thng sang to bn c mi. Mng ng vi bn c mi - mailbox182 dng
kim tra cc nc i vt qu ng bin v d liu chuyn tr li to bnh thng.
Chng trnh cng cn kim tra s nc i ti a theo mt hng ca qun c ang xt.
Ch c qun Pho v Xe c th i n 9 nc i, cn cc qun khc c nhiu nht l 1.
Vic i mt qun sang v tr mi thc cht l ta thay i to ca n bng cch
cng vi mt hng s (dng hoc m). trn ta thy qun Xe sang tri mt nc ta
phi cng v tr hin ti vi -1. sinh mt mi theo hng dc, ta phi cng vi +13 hoc 13 (ch , vic sinh nc v kim tra hp l u da vo mng mailbox182 nn gi tr 13 l
kch thc mt dng ca mng ny). sinh cc nc i cho ta phi cng tr vi mt hng
s khc. Ta nn lu cc hng s ny vo mng offset c 2 chiu. Mt chiu da vo loi qun
c nn ch s c nh t 1 n 7. Chiu cn li l s hng i ti a ca mt qun c.
Qun c c nhiu hng nht l qun M c ti 8 hng nn chiu ny c khai bo ch s
t 1 n 8. Cc qun c c s hng t hn s c in 0 vo phn tha. Ch l nc i
qun Tt ca hai bn khc nhau hng tin. tit kim ta ch lu nc tin ca Tt en, cn
nc tin ca Tt trng ch n gin ly ngc du.
Kim tra v tr c php n
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

105

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

Vic chuyn to t bn c thng sang bn c m rng ch gip ta loi b c cc


nc vt qu bin. Ta cn phi kim tra mt s gii hn khc. V d nh Tng v S khng
th i ra ngoi cung, Tng ch c php 7 im c nh pha bn mnh, Tt ch c
php tung honh trn t i phng, cn pha bn mnh cng b gii hn ngt ngho mt s
... thc hin nhng php kim tra ny, ta dng mt mng l legalmove ng vi tng
trn bn c s cung cp cc thng tin ny. kim tra mt qun c c c php khng,
ta dng mt mt n bt Maskpiece m tu theo tng qun s c gi tr khc nhau. Nu cn
kim tra c bit trng vi mt n ny c t l 1 th qun c c php n y.

Hnh 7.6: Mt n kim tra mt qun c c c php n v tr no khng?


Ngoi ra, ta cn phi kim tra nc b cn (i vi Tng v M) v x l cch n qun
ca qun Pho nh mt trng hp c bit. Nh vy, tng th sinh cc nc i cho mt qun
c c dng nh sau:
p = piece[i]; { Sinh nc i cho qun c p v tr i }
for (j = 1;j++;j<=8 )

// S hng i ti a

if (offset[p,j] = 0) break;
x=mailbox90[i];

//

Chuyn

sang

bn

rng
if (p in [ROOK, CANNON]) n := 9 else n := 1;
for(t=1;t++,t<=n)

// S nc c th i theo mt

hng
{
if((p=PAWN) & (side=LIGHT)) x = x - offset[p, j]
else x = x + offset[p, j];
y = mailbox182[x];

// Nc i mi
//

Chuyn

to

bnh thng
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

106

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

if side = DARK t = y
else t = 90-y;
if ((y=-1) |

// Ra ngoi l ?

((legalmove[t] & maskpiece[p])=0))


// c php v tr ny khng ?
break; // Thot nu nc i khng hp l
}
{ Kim tra nc cn vi Tng, M v x l Pho y }
...
Mt vn na l lut hai Tng khng c i mt trc tip vi nhau. Vic kim tra
c thc hin nh hm kingface. Hm s tr li gi tr true nu nc va i gy h mt
Tng. Hm ny c th c t trong th tc sinh nc Gen. Tuy nhin n gin hn, ta t
n trong th tc gen_push, nu h mt Tng th tc ny s khng a nc i vo danh
sch cc nc i.

7.4.3 nh gi mt th c (Hm EVAL)


nh gi mt th c l mt trong nhng nhim v quyt nh chng trnh chi c ca
bn c l hay hay khng. Cn c vo mt th c my s gn cho n mt im s (lng gi
tnh) nh gi tt - xu. Nh im ny my mi c th so snh cc th c vi nhau v
bit chn nc i tt nht. im ca mt th c da trn rt nhiu yu t m kh c th s
ho ht c nh ph thuc vo s lng v gi tr cc qun c hin ti, ph thuc vo tnh
hm, tnh bin, th cng, th th ca tng qun c cng nh c cc din trn u. V d, mt
cp M giao chn, c th st cnh tin qun v ta lng phng th thng c gi hn hai M
ng ri.
Trong gii hn ca lun vn, ta p dng phng php n gin nhng c bn nht:
lng gi da trn c s gi tr ca tng qun c. Cch tnh ny s ly tng gi tr cc qun c
hin c ca bn mnh tr i tng gi tr cc qun c hin c ca i phng.
im cc qun c c nh gi theo kinh nghim v cho bit s tng quan gia cc
qun c. Sau y l im trung bnh tng qun vi t l m mi ngi thng chp nhn:
Qun c
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

im
107

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

Tt

10 (20 nu qua sng)

20

Tng

20

40

Pho

45

Xe

90

Ngoi ra cc im s ny c c th ha bng cc mng 90 v tr trn bn c. ng vi


mi v tr s c s im tng ng. V d ta c bng im ca qun tt nh sau:
static Byte[, ,] pointtable =
{{

{0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

0,

10,

0, 12,

0, 15,

0, 12,

0, 10,

10,

0, 13,

0, 10,

0, 13,

0, 10,

20, 20, 20, 20, 20, 20, 20, 20, 20,


20, 21, 21, 22, 22, 22, 21, 21, 20,
20, 21, 21, 23, 23, 23, 21, 21, 20,
20, 21, 21, 23, 22, 23, 21, 21, 20,
11, 12, 13, 14, 14, 14, 13, 12, 11},
Hm tnh im ca bn c nh sau:
public static int Eval()
{
int i, s = 0;
for (i = 0; i < BOARD_SIZE; i++)
{

if

(color[i] == DARK) s += pointtable[piece[i],

DARK, i];
else

if

(color[i]

==

LIGHT)

-=

pointtable[piece[i], LIGHT, i];


}
if (side == LIGHT) s = -s;
return (s + bonus());
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

108

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

}
Trong bonus() l hm tnh cc gi tr im thng cho th c.

7.4.4 X l mt nc i th
Trong qu trnh tnh ton tm nc i tt nht cho mnh, my thng phi i "th" mt
nc ri li tnh tip. Sau n s phc hi li nc i ny. Do qu trnh th - phc hi din
ra rt nhanh v khng hin ra mn hnh nn my c th th hng chc triu ln mi khi n
lt. Vic i th c thc hin nh gi hm Makemove. Vic khi phc nc i ny nh gi
th tc UnMakemove. Nh vy, chng trnh thng xuyn thc hin cc cu lnh dng nh
sau:
while {tt c cc nc i c th c t mt th c} do
{
Makemove(mt_nc_i);

//i th mt nc

best = Tnh im ca nc i th ;
UnMakemove;

//phc hi nc i ny

Lu nc i c im cao nht;
}

7.4.5 Thut ton tm kim AlphaBeta


Thut ton AlphaBeta da trn nguyn l phn tch chng 4 c dng sau:
public static short AlphaBeta(short alpha, short beta, short
depth)
{
short i, value, best;
if (depth == 0) return Eval();
Gen();
best = -INFINITY;
for

(i = m_gen_begin[m_ply];(i<m_gen_end[m_ply])&&(best<

beta); i++)

//vng lp tt c cc nc sinh ra

{
if (best > alpha) alpha = best;
if (MakeMove(m_gen_dat[i].m)) value = 1000 - m_ply;
else value = -AlphaBeta(-beta, -alpha, depth - 1));
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

109

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

UnMakeMove();
if (value > best)
{
best = value;
if (m_ply == 0) m_newmove = m_gen_dat[i].m;
//lu nc i tt nht su 0
}
return best;
}
}
Nc i tt nht (im cao nht) su 0 (ply = 0) c lu vo mt bin ton cc
newmove. My s chn i theo nc ny.
Th tc gi hm AlphaBeta ch c cc lnh n gin nh di. N gi hm ny vi cc
gi tr khi u thch hp bt u tm kim.
public static void ComputerThink()
{
PreCalculate();
if (openningbookcs.FollowOpeningBook())
return;//kim tra d liu khai cuc, s trnh
by mc sau
InitGen();
SetMaterial();
m_newmove.from = NOMOVE;
best = AlphaBeta(-INFINITY, INFINITY, MAX_PLY)
}

7.4.6 Cp nht mt nc i
Sau khi "suy ngh" xong, n lc my hoc ngi phi thc hin mt nc i thc
s. Chng trnh phi cp nht tt c cc thng tin cn thit lin quan n nc i v hin
hnh nhng thay i. Vic ny c thc hin nh gi hm UpdateNewMove. N c kh
nhiu ch ging nh hm Makemove nhng n gin hn. Tham s quan trng nht m n
quan tm l nc i c ngi hoc my chn i (t trong bin ton cc newmove). Hm
SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

110

GVHD: TS. Nguyn c Thnh

CHNG 7: GII THUT CHNG TRNH

cng ng thi s kim tra tnh trng thng c ca bn va i (n c Tng i phng) v


tr v gi tr true nu c mt bn thng. Vng lp chnh s cn c vo gi tr chn l ny
ngng chi.

7.4.7 Xy dng d liu khai cuc


Biu din nc c bng ngn ng my:
-

nh s t 0 ti 9 ng vi 10 hng ngang

ch t A ti I ng vi 9 ct.

Hnh 7.7: Cch biu din ct v hng bng ch ci v s


D liu khai cuc l mt file txt cha gi tr cc nc i u tin ca mt vn c( trung
bnh khong 20 nc u tin). Mi 1 vn c l mt dng.
V d 1 vn c c th c biu din nh sau:
H2E2 B9C7 C3C4 H7F7 B0C2 H9G7 C2D4 D9E8 B2C2 C9E7
Nh vy, mi khi bt u game, ta c mng cha cc gi tr cc nc i mu.
Mi khi ti lt my, my s kim tra xem cc nc i trc ph hp vi cc chin
thut khai cuc no. Nu tm thy nc i ging vi chin thut ny, my s chn v lm
theo.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

111

GVHD: TS. Nguyn c Thnh

CHNG 8: KT QU T C V HNG PHT TRIN TI

CHNG 8: KT QU T C V HNG PHT TRIN TI


8.1

Hnh nh v kt qu t c

8.1.1 Mt s hnh nh ca m hnh

Hnh 8.1: Module Camera

Hnh 8.2: Phn thn Robot


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

112

GVHD: TS. Nguyn c Thnh

CHNG 8: KT QU T C V HNG PHT TRIN TI

Hnh 8.3: Phn cnh tay Robot v bn c

Hnh 8.4: Robot nhn t cnh bn

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

113

GVHD: TS. Nguyn c Thnh

CHNG 8: KT QU T C V HNG PHT TRIN TI

Hnh 8.5: Robot nhn t pha trc


SVTH: L Bch Qu Cng 40800236
V Vn Khc
40800953

114

GVHD: TS. Nguyn c Thnh

CHNG 8: KT QU T C V HNG PHT TRIN TI

8.1.2 Kt qu t c

Cnh tay Robot di chuyn qun c kh chnh xc trong thi gian cho php.
X l nh: Chng trnh nhn ra nc i ca ngi chi vi chnh xc gn nh
tuyt i. Thi gian x l nhanh, khong 800ms (Ph thuc tc CPU).
Chng trnh chi c:
o Vi su 4: s nt tnh c sau khi i nc u tin l 150480 nt,h s
phn nhnh l 41 vi thi gian o c xp x 100ms, thi gian suy ngh
khng ng k (Ph thuc tc CPU).
o Vi su 5: s nt tnh c l 5574794, tc gp 37 ln su 4. Thi gian
suy ngh lc ny ln n gn 5 giy (Ph thuc tc CPU).
o Vi su 6: s nt tng rt ln xp x 63 triu nt vi thi gian gn 50 giy.

8.2
Hn ch ca ti v hng pht trin
8.2.1 Nhng kh khn gp phi

Do x dng ng c bc c cng sut khng ph hp vi thit k ca cnh tay nn


lc di chuyn c th b trt bc, gy thiu chnh xc.
Camera dng trong x l nh cn c nh c v tr tng i so vi bn c nn
chng trnh d b sai lch nu qu trnh di chuyn m hnh khng cn thn lm
vng vo module ny.

8.2.2 Bin php khc phc

khc phc hin tng trt bc cn di gim vn tc cc ng c bc tng


moment khi ng v gim qun tnh lc dng cnh tay.
gim sai s v v tr tng i ca camera v bn c, cn to mt b khung chc
chn gn camera vo.

8.2.3 Hng pht trin ca ti

Thit k mt m hnh cnh tay Scara hon chnh hn. Thay th vt liu mica bng kim
loi tng bn.
Thay th cc ng c bc ph hp hn hoc thay bng cc ng c DC c encoder
hi tip iu khin vng kn chnh xc.
X l nh: a v ta chnh xc ca qun c, t ta suy ra v tr so vi cnh tay
iu khin gp chnh xc qun c nu ngi chi t lch.
Pht trin thut ton chi c thng minh hn.
tng tnh di ng, cn tm cch np chng trnh xung mt my tnh nhng ph
hp.

SVTH: L Bch Qu Cng 40800236


V Vn Khc
40800953

115

GVHD: TS. Nguyn c Thnh

You might also like