DK ONOFF Dongco Bang PIC

You might also like

You are on page 1of 49

Bao cao o an mon hoc I

Li cam n
Knh gi Thay TS. Nguyen Thien Thanh!
Em la Nguyen Uy Danh, sinh vien nam 4, khoa ien_ien T,
ai Hoc Bach Khoa Tp.HCM.
Hoc ky nay, em rat vinh d c thc hien e tai cua o
an mon hoc I di s hng dan tan tnh cua Thay. Chnh s
nhiet tnh ch dan cua Thay a giup em hoan thanh o
an kha tot, at c nhng yeu cau c ban ma e tai at
ra. Va cung qua o, em a hoc hoi, tiep can c nhieu van
e thc te hn, bo sung nhng khe h kien thc do viec
hoc thien ve ly thuyet e lai.
Em xin chan thanh cam n Thay.

Cung qua ay, em xin gi li cam n chan thanh cua mnh


en gia nh, ban be nhng ngi a ong vien, quan tam
het mc en em trong suot qua trnh thc hien o an. o la
nhng ong lc thuc ay em co gang hn, quyet tam hn,
e cuoi cung em co c ket qua nh ngay hom nay.
Em xin gi li cam n en tat ca.
Sinh vien thc hien

Nguyen Uy Danh

GVHD : TS. Nguyen Thien Thanh 1


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Chng I :
Gii thieu ve e tai

I.Tom tat e tai o an mon hoc I


1. Gii thieu cac module mach cua e tai
e tai o an mon hoc I cua em la : ieu khien ON_OFF
toc o ong c DC. Vi yeu cau e tai nh tren, hng
thc hien e tai cua em c tom tat nh sau:
- S dung vi ieu khien PIC16F877A lam chip ieu khien
trung tam.
- Xay dng ban phm gom 13 phm. Trong o:
+1 phm e ong thi reset vi ieu khien va dng
ong c DC
+ 10 phm ng vi 10 so t 0 en 9 e ngi dung
nhap toc o at
+ 1 phm ra lenh ong c quay thuan (FORWARD)
+ 1 phm ra lenh ong c quay ngc (REVERSE)
- S dung 8 led 7 oan. Trong o
+ 4 led dung e ngi dung nhap toc o at mong
muon
+ 4 led e ngi dung quan sat toc o o trc tiep t
ong c
- S dung driver cau H L293D trc tiep ieu khien chieu
quay, ong ngat ong c DC
- oi tng ieu khien la ong c DC co gan encoder
ong truc.

GVHD : TS. Nguyen Thien Thanh 2


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

- Ngoai ra, tren mach con co cac linh kien khac e


thc hien truyen tn hieu gia vi ieu khien trung tam vi
cac thiet b hien th noi tren.
Tat ca cac module mach tren se c em trnh bay ro trong
cac phan tiep theo cua e tai.

2. S o nguyen ly ket noi cac module trong mach

3. Cach van hanh mach


+ Bc 1: ta se nhap toc o at t ban phm. Toc o
at nay gom co 4 ch so, se hien len thong qua 4 led. Ta
phai nhan u 4 con so th mach mi hoat ong c, neu
GVHD : TS. Nguyen Thien Thanh 3
SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

khong nhan u mach se treo o, ch ngi dung nhan so


tiep. Neu nhap sai toc o, ta co the nhan phm reset e
nhap toc o lai t au. Neu nhan nham sang cac phm
RESERVE hoac FORWARD trc khi nhap u 4 so phan cai
at toc o th ngi dung hoan toan co the nhan lai ma
khong anh hng en ket qua.
+ Bc 2: ta nhan tiep RESERVE hay FORWARD cho ong c
chay theo y muon. Trong qua trnh ong c quay, vi ieu khien
se nhan lien tuc nhan xung phat ra t encoder, tnh toan ra
toc o va so sanh vi toc o at ban au e ra quyet nh
ON_OFF ong c. Toc o nhan ve se c so sanh vi toc
o at c 1ms mot lan. Ngoai ra c 1s th vi ieu khien se
cap nhat toc o thc cua ong c, the hien ra 4 led 7 oan
e ngi dung co the theo doi va anh gia.

II. Cac yeu cau cua e tai


1. Thong qua e tai, lam quen vi cach thc ieu khien
oi tng ong c.
2. Tm hieu thc te cac linh kien, cac loai IC, hoat ong
cua cac loai cam bien.
3. Thiet ke, thi cong mach ieu khien va mach ong lc
ieu khien ong c DC
4. Viet chng trnh cho vi ieu khien PIC16F877A thc hien
thanh cong theo yeu cau e ra.
5. anh gia ve sai so ,chat lng he thong ieu khien
6. Tm hieu cac hng phat trien cua e tai, nang cao
chat lng cua he thong

GVHD : TS. Nguyen Thien Thanh 4


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Chng II :
Gii thieu ve cac linh kien, phan t s
dung trong mach

I. Vi ieu khien PIC16F877A


1. Khai quat ve vi ieu khien PIC16F877A
1.1.S o chan va s o nguyen ly cua PIC16F877A
S o chan

GVHD : TS. Nguyen Thien Thanh 5


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

S o nguyen ly

GVHD : TS. Nguyen Thien Thanh 6


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

1.2. Nhan xet


T s o chan va s o nguyen ly tren, ta rut ra cac
nhan xet ban au nh sau :
- PIC16F877A co tat ca 40 chan
- 40 chan tren c chia thanh 5 PORT, 2 chan cap
nguon, 2 chan GND, 2 chan thach anh va mot chan
dung e RESET vi ieu khien.
- 5 port cua PIC16F877A bao gom :
+ PORTB : 8 chan
+ PORTD : 8 chan
+ PORTC : 8 chan
+ PORTA : 6 chan
+ PORT E : 3 chan

1.3. Khai quat ve chc nang cua cac port trong vi


ieu khien PIC16F877A

GVHD : TS. Nguyen Thien Thanh 7


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

PORTA
PORTA gom co 6 chan. Cac chan cua PortA, ta lap trnh e
co the thc hien c chc nang hai chieu : xuat d lieu
t vi ieu khien ra ngoai vi va nhap d lieu t ngoai vi vao
vi ieu khien.
Viec xuat nhap d lieu PIC16F877A khac vi ho 8051.
tat ca cac PORT cua PIC16F877A, moi thi iem ch thc
hien c mot chc nang :xuat hoac nhap. e chuyen t
chc nang nay nhap qua chc nang xuat hay ngc lai, ta
phai x ly bang phan mem, khong nh 8051 t hieu luc
nao la chc nang nhap, luc nao la chc nang xuat.
Trong kien truc phan cng cua PIC16F877A, ngi ta s
dung thanh ghi TRISA a ch 85H e ieu khien chc nang
I/O tren. Muon xac lap cac chan nao cua PORTA la nhap
(input) th ta set bit tng ng chan o trong thanh ghi TRISA.
Ngc lai, muon chan nao la output th ta clear bit tng ng
chan o trong thanh ghi TRISA. ieu nay hoan toan tng t
oi vi cac PORT con lai
Ngoai ra, PORTA con co cac chc nang quan trong sau :
- Ngo vao Analog cua bo ADC : thc hien chc nang
chuyen t Analog sang Digital
- Ngo vao ien the so sanh
- Ngo vao xung Clock cua Timer0 trong kien truc phan
cng : thc hien cac nhiem vu em xung thong qua Timer0
- Ngo vao cua bo giao tiep MSSP (Master Synchronous Serial
Port)
PORTB

GVHD : TS. Nguyen Thien Thanh 8


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

PORTB co 8 chan. Cung nh PORTA, cac chan PORTB cung


thc hien c 2 chc nang : input va output. Hai chc nang
tren c ieu khien bi thanh ghi TRISB. Khi muon chan nao
cua PORTB la input th ta set bit tng ng trong thanh ghi TRISB,
ngc lai muon chan nao la output th ta clear bit tng ng
trong TRISB.
Thanh ghi TRISB con c tch hp bo ien tr keo len co
the ieu khien c bang chng trnh.
PORTC
PORTC co 8 chan va cung thc hien c 2 chc nang input
va output di s ieu khien cua thanh ghi TRISC tng t nh
hai thanh ghi tren.
Ngoai ra PORTC con co cac chc nang quan trong sau :
- Ngo vao xung clock cho Timer1 trong kien truc phan
cng
- Bo PWM thc hien chc nang ieu xung lap trnh c
tan so, duty cycle: s dung trong ieu khien toc o va
v tr cua ong c v.v.
- Tch hp cac bo giao tiep noi tiep I2C, SPI, SSP, USART
PORTD
PORTD co 8 chan. Thanh ghi TRISD ieu khien 2 chc nang
input va output cua PORTD tng t nh tren. PORTD cung la
cong xuat d lieu cua chuan giao tiep song song PSP (Parallel
Slave Port).
PORTE
PORTE co 3 chan. Thanh ghi ieu khien xuat nhap tng ng
la TRISE. Cac chan cua PORTE co ngo vao analog. Ben canh

GVHD : TS. Nguyen Thien Thanh 9


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

o PORTE con la cac chan ieu khien cua chuan giao tiep
PSP.

1.4. Tai sao s dung PIC16F877A ma khong dung 8051


cho e tai
Trong chng trnh ao tao cua Trng ai Hoc Bach Khoa, em
c hoc va th nghiem tren kit cua vi ieu khien 8051. Ho vi
ieu khien 8051 la mot ho vi ieu khien ien hnh, pho bien,
de s dung va lap trnh, rat phu hp vi sinh vien mi bat
au lam quen en lap trnh cho vi ieu khien. Tuy nhien, cung
trong qua trnh nghien cu va th nghiem vi cac chip ieu
khien thuoc ho 8051 ( ien hnh la 89C51, 89052), em nhan
thay no co nhng nhc iem c ban sau ay :
- Bo nh Ram noi co dung lng thap , ch co 128 bytes.
ieu nay gay tr ngai ln khi thc hien cac d an ln vi
vi ieu khien 8051. e khac phuc ta phai m rong them lam
han che so chan danh cho cac ng dung cua vi ieu khien.
- So lng cac bo giao tiep vi ngoai vi c tch hp san
trong 8051 t, khong co cac bo ADC, PWM, truyen d lieu song
song. Khi muon s dung cac chc nang nay, ta phai s
dung them cac IC ben ngoai, gay ton kem va kho thc
hien v de b nhieu neu khong biet cach chong nhieu tot.
- Ngoai ra con mot so han che khac nh so lng Timer
cua 8051 t, ch co 2 Timer. Chnh ieu nay lam cho giai thuat
khi viet chng trnh gap kho khan.

GVHD : TS. Nguyen Thien Thanh 10


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Nhng nhc iem can ban tren cua 8051, em a quyet nh


khong dung vi ieu khien nay cho e tai ieu khien toc
o ong c cua mnh.
Vi ky vong da tren nen tan kien thc tiep thu c khi
hoc vi ieu khien 8051, em rat muon t ban than tm hieu
mot ho vi ieu khien mi manh hn, ay u tnh nang hn
e trc mat la phuc vu tot cho o an , luan van, sau na
la cho cac d an trong tng lai neu em co dp s dung vi
ieu khien trong d an cua mnh.
Trong qua trnh tm kiem mot ho vi ieu khien mi thoa
yeu cau nh em a trnh bay tren. Em nhan thay PIC cua
hang Microchip la mot la chon ly tng. Ch can xem xet
qua cac port va chc nang cua cac port ma em a trnh bay
muc 1.3, ta cung de dang nhan ra nhng u iem vt troi
cua vi ieu khien nay so vi 8051.
Gia cua PIC16F877A ma em mua tren th hien trng la
50000 ong, mac hn 2 lan gia mot con chip ho 8051. Viec s
dung PIC16F877A trong mot e tai khong ln nh e tai ieu
khien toc o ong c co the la mot lang ph. Tuy nhien
vi muc ch nang cao kien thc, nang cao kha nang t tm
toi ,hoc hoi qua cac kenh thong tin giao duc khac nhau,
nham phuc vu muc ch lau dai sau nay, th ay la mot s
la chon hoan toan xac ang. Va tren thc te, trong mot
thi gian tng oi ngan, em a nam vng c nhng mang
kien thc c ban nhat e s dung no tot trong e tai cua
mnh.
Tren la toan bo nguyen do tai sao em chon vi ieu khien
PIC16F877A cho e tai o an mon hoc I cua mnh.

GVHD : TS. Nguyen Thien Thanh 11


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

phan tiep theo cua bao cao o an mon hoc I em se i


sau gii thieu nhng phan ma em a nghien cu c e
phuc vu cho viec thc hien o an cua mnh.
2. Tm hieu ve vi ieu khien PIC16F877A
2.1. Cau truc phan cng cua PIC16F877A
PIC la ten viet tat cua Programmable Intelligent computer
do hang General Instrument at ten cho con vi ieu khien au
tien cua ho. Hang Micrchip tiep tuc phat trien san pham
nay va cho en hang a tao ra gan 100 loai san pham khac
nhau.
PIC16F887A la dong PIC kha pho bien, kha ay u tnh
nang phuc vu cho hau het tat ca cac ng dung thc te.
ay la dong PIC kha de cho ngi mi lam quen vi PIC co
the hoc tap va tao nen tan ve ho vi ieu khien PIC cua
mnh.
Cau truc tong quat cua PIC16F877A nh sau :
- 8K Flash Rom
- 368 bytes Ram
- 256 bytes EFPROM
- 5 port vao ra vi tn hieu ieu khien oc lap
- 2 bo nh thi Timer0 va Timer2 8 bit
- 1 bo nh thi Timer1 16 bit co the hoat ong ca
che o tiet kiem nang lng vi nguon xung clock
ngoai
- 2 bo Capture/ Compare/ PWM
- 1 bo bien oi Analog -> Digital 10 bit, 8 ngo vao
- 2 bo so sanh tng t
- 1 bo nh thi giam sat (Watch Dog Timer)

GVHD : TS. Nguyen Thien Thanh 12


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

- 1 cong song song 8 bit vi cac tn hieu ieu khien


- 1 cong noi tiep
- 15 nguon ngat

S o khoi vi ieu khien 16F877A

GVHD : TS. Nguyen Thien Thanh 13


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

2.2. To chc bo nh PIC16F877a


2.2.1. Bo nh chng trnh

Bo nh chng trnh PIC16F877A

GVHD : TS. Nguyen Thien Thanh 14


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Bo nh chng trnh cua vi ieu khien PIC16F877A la bo


nh Flash, dung lng 8K word (1 word cha 14bit) va c phan
thanh nhieu trang nh hnh tren.
e ma hoa c a ch 8K word bo nh chng trnh, thanh
ghi em chng trnh PC co dung lng 13 bit.
Khi vi ieu khien reset, bo em chng trnh se tro ve a
ch 0000h. Khi co ngat xay ra th thanh ghi PC se tro en a
ch 0004h.
Bo nh chng trnh khong bao gom bo nh Stack va
khong c a ch hoa bi bo em chng trnh.
2.2.2. Bo nh d lieu
Bo nh d lieu cua PIC16F877A c chia thanh 4 bank. Moi
bank co dung lng 128 byte.
Neu nh 2 bank bo nh d lieu cua 8051 phan chia rieng
biet : 128 byte au tien thuoc bank1 la vung Ram noi ch e
cha d lieu, 128 byte con lai thuoc bank 2 la cung cac thanh
ghi co chc nang ac biet SFR ma ngi dung khong c
cha d lieu khac trong ay th 4 bank bo nh d lieu cua
PIC16F877A c to chc theo cach khac.
Moi bank cua bo nh d lieu PIC16F877A bao gom ca cac
thanh ghi co chc nang ac biet SFR nam cac cac o nh
a ch thap va cac thanh ghi muc ch dung chung GPR nam
vung a ch con lai cua moi bank thanh ghi. Vung o nh
cac thanh ghi muc ch dung chung nay chnh la ni ngi dung
se lu d lieu trong qua trnh viet chng trnh. Tat ca cac
bien d lieu nen c khai bao cha trong vung a ch nay.
Trong cau truc bo nh d lieu cua PIC16F877A, cac thanh
ghi SFR nao ma thng xuyen c s dung (nh thanh ghi

GVHD : TS. Nguyen Thien Thanh 15


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

STATUS) se c at tat ca cac bank e thuan tien trong


viec truy xuat. S d nh vay la v, e truy xuat mot thanh
ghi nao o trong bo nh cua 16F877A ta can phai khai bao
ung bank cha thanh ghi o, viec at cac thanh ghi s dung
thng xuyen giup ta thuan tien hn rat nhieu trong qua trnh
truy xuat, lam giam lenh chng trnh.

GVHD : TS. Nguyen Thien Thanh 16


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

S o bo nh d lieu cua PIC16F877A


Da tren s o 4 bank bo nh d lieu PIC16F877A ta rut ra
cac nhan xet nh sau :
-Bank0 gom cac o nh co a ch t 00h en 77h, trong
o cac thanh ghi dung chung e cha d lieu cua ngi

GVHD : TS. Nguyen Thien Thanh 17


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

dung a ch t 20h en 7Fh. Cac thanh ghi PORTA, PORTB,


PORTC, PORTD, PORTE eu cha bank0, do o e truy xuat
d lieu cac thanh ghi nay ta phai chuyen en bank0. Ngoai ra
mot vai cac thanh ghi thong dung khac ( se gii thieu sau)
cung cha bank0
- Bank1 gom cac o nh co a ch t 80h en FFh. Cac
thanh ghi dung chung co a ch t A0h en Efh. Cac thanh ghi
TRISA, TRISB, TRISC, TRISD, TRISE cung c cha bank1
- Tng t ta co the suy ra cac nhan xet cho bank2 va bank3
da tren s o tren.
Cung quan sat tren s o, ta nhan thay thanh ghi STATUS, FSR
co mat tren ca 4 bank. Mot ieu quan trong can nhac lai
trong viec truy xuat d lieu cua PIC16F877A la : phai khai bao
ung bank cha thanh ghi o. Neu thanh ghi nao ma 4 bank
eu cha th khong can phai chuyen bank.
2.2.3. Mot vai thanh ghi chc nang ac biet SFR
Thanh ghi STATUS: thanh ghi nay co mat ca 4 bank thanh ghi
cac a ch 03h, 83h, 103h va 183h : cha ket qua thc
hien phep toan cua khoi ALU, trang thai reset va cac bit
chon bank can truy xuat trong bo nh d lieu.

Thanh ghi OPTION_REG : co mat bank2 va bank3 co a


ch 81h va 181h. Thanh ghi nay cho phep oc va ghi, cho phep
ieu khien chc nang pull_up cua cac chan trong PORTB, xac
lap cac tham so ve xung tac ong, canh tac ong cua ngat
ngoai vi va bo em Timer0

GVHD : TS. Nguyen Thien Thanh 18


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Thanh ghi INTCON : co mat ca 4 bank a ch


0Bh,8Bh,10Bh,18Bh. Thanh ghi cho phep oc va ghi, cha cac bit
ieu khien va cac bit bao tran timer0, ngat ngoai vi RB0/INT
va ngat khi thay oi trang thai tai cac chan cua PORTB.

Thanh ghi PIE1 :a ch 8Ch, cha cac bit ieu khien chi tiet
cac ngat cua cac khoi chc nang ngoai vi.

Thanh ghi PIR1 : a ch 0Ch, cha c ngat cua cac khoi


chc nang ngoai vi, cac ngat nay c cho phep bi cac bit
ieu khien cha trong thanh ghi PIE1.

Thanh ghi PIE2 : a ch 8Dh, cha cac bit ieu khien cac
ngat cua cac khoi chc nang CCP, SSP bu, ngat cua bo so
sanh va ngat ghi vao bo nh EEPROM.

Thanh ghi PIR2: a ch 0Dh, cha c ngat cua cac khoi


chc nang ngoai vi, cac ngat nay c cho phep bi cac bit
ieu khien cha trong thanh ghi PIE2

GVHD : TS. Nguyen Thien Thanh 19


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Thanh ghi PCON : a ch 8Eh, cha cac c hieu cho biet


trang thai cac che o reset cua vi ieu khien.

2.3. Thanh ghi W(work) va tap lenh cua PIC16F877A


2.3.1. Thanh ghi W
ay la thanh ghi rat ac biet trong PIC16F877A. No co vai
tro tng t nh thanh ghi Accummulator cua 8051, tuy nhien
tam anh hng cua no rong hn rat nhieu.
Tap lenh cua PIC16F877A co tat ca 35 lenh th so lenh co
s gop mat cua thanh ghi W la 23 lenh. Hau het cac lenh
cua PIC16F877A eu lien quan en thanh ghi W. V du nh, trong
PIC chung ta khong c phep chuyen trc tiep gia tr cua
mot thanh ghi nay qua thanh ghi khac ma phai chuyen thong
qua thanh ghi W.
Thanh ghi W co 8 bit va khong xuat hien trong bat ky bank
thanh ghi nao cua bo nh d lieu cua 16F877A. Moi dong
lenh trong PIC16F877a c mo ta trong 14 bit. Khi ta thc hien
mot lenh nao o, no phai lu a ch cua thanh ghi b tac
ong (chiem 8 bit) va gia tr mot hang so k nao o (them 8
bit na) la 16 bit, vt qua gii han 14 bit. Do vay ta khong
the nao tien hanh mot phep tnh toan trc tiep nao gia 2
thanh ghi vi nhau hoac gia mot thanh ghi vi mot hang so

GVHD : TS. Nguyen Thien Thanh 20


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

k. Hau het cac lenh cua PIC16F877A eu phai lien quan en


thanh ghi W cung v ly do o. Khi thc hien mot dong lenh
nao o, th PIC se khong phai ton 8 bit e lu a ch cua
thanh ghi W trong ma lenh ( v c hieu ngam). Co the xem
thanh ghi W la thanh ghi trung gian trong qua trnh viet chng
trnh cho PIC16F877A.
2.3.2. Tap lenh cua PIC16F877A
PIC16F877A co tat ca 35 lenh va c trnh bay kha ro
trong datasheet. Em se nh kem tap lenh phan cuoi cung
cua bai bao cao.
Trong chng trnh, em s dung ngon ng asembly e viet.
Trnh bien dch la Mplab c Microchip cung cap mien ph cho
ngi dung.
2.4. Cac van e ve Timer
PIC16F877A co tat ca 3 timer : timer0 (8 bit), timer1 (16 bit) va
timer2 (8 bit).

Timer0

GVHD : TS. Nguyen Thien Thanh 21


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

S o khoi cua Timer0


Cung giong nh 8051, Timer0 cua 16F877A cung co 2 chc
nang : nh thi va em xung. 2 chc nang tren co the
c la chon thong qua bit so 5 TOCS cua thanh ghi OPTION.
Ngoai ra, ta cung co the la chon canh tch cc cua xung
clock, canh tac ong ngatthong qua thanh ghi tren.
Timer0 c tch hp them bo tien nh 8 bit (prescaler), co
tac dung m rong dung lng cua Timer0. Bo prescaler nay
co the c ieu chnh bi cac 3 bit PS2:PS0 trong thanh ghi
OPTION. No co the co gia tr 1:2, 1:4, 1:8, 1:16, 1:32, 1:64,
1:128, 1:256 tuy thuoc vao viec thiet lap cac gia tr 0 ,1 cho
3 bit tren.

GVHD : TS. Nguyen Thien Thanh 22


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Bo tien nh co gia tr 1:2 chang han ,co ngha la : bnh


thng khong s dung bo tien nh cua Timer0 (ong ngha
vi tien nh t le 1:1) th c khi co tac ong cua 1 xung
clock th timer0 se tang them mot n v. Neu s dung bo
tien nh 1:4 th phai mat 4 xung clock th timer0 mi tang
them mot n v. Vo hnh chung, gia tr cua timer0 (8 bit) luc
nay khong con la 255 na ma la 255*4=1020.
Cac thanh ghi lien quan en Timer0 bao gom :
- TMR0 : cha gia tr em cua Timer0
- INTCON : cho phep ngat hoat ong
- OPTION_REG : ieu khien prescaler
Timer1

S o khoi cua Timer1

Timer1 la bo nh thi 16 bit, gia tr cua Timer1 se c lu


trong hai thanh ghi 8 bit TMR1H:TMR1L. C ngat cua Timer1 la bit
TMR1IF, bit ieu khien cua Timer1 la TRM1IE.
Cap thanh ghi cua TMR1 se tang t 0000h len en FFFFh
roi sau o tran ve 0000h. Neu ngat c cho phep, no se

GVHD : TS. Nguyen Thien Thanh 23


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

xay ra khi khi gia tr cua TMR1 tran t FFFFh roi ve 0000h,
luc nay TMR1IF se bat len.
Timer1 co 3 che o hoat ong :
- Che o hoat ong nh thi ong bo : Che o c
la chon bi bit TMR1CS. Trong che o nay xung cap cho Timer1
la Fosc/4, bit T1SYNC khong co tac dung.
- Che o em ong bo : trong che o nay, gia tr cua
timer1 se tang khi co xung canh lenh vao chan T1OSI/RC1.
Xung clock ngoai se c ong bo vi xung clock noi, hoat
ong ong bo c thc hien ngay sau bo tien nh t le
xung (prescaler).
- Che o em bat ong bo :che o nay xay ra khi bit
T1SYNC c set. Bo nh thi se tiep tuc em trong suot qua
trnh ngu cua vi ieu khien va co kha nang tao mot ngat
khi bo nh thi trang va lam cho Vi ieu khien thoat khoi
trang thai ngu.
Timer2 : la bo nh thi 8 bit bao gom mot bo tien nh
(prescaler), mot bo hau nh Postscaler va mot thanh ghi chu
ky viet tat la PR2. Viec ket hp timer2 vi 2 bo nh t le
cho phep no hoat ong nh mot bo inh thi 16 bit. Module
timer2 cung cap thi gian hoat ong cho che o ieu bien
xung PWM neu module CCP c chon.

GVHD : TS. Nguyen Thien Thanh 24


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

S o khoi cua Timer2


II. Motor Driver L293D :
L293D la IC dung e ieu khien cung 1 luc 2 ong c nho.
Trong e tai cua mnh, em ch dung no e ieu khien mot
ong c.
Dong gii han cua L293 la 600mA.
S o chan cua L293

GVHD : TS. Nguyen Thien Thanh 25


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

S o hoat ong cua L293D

GVHD : TS. Nguyen Thien Thanh 26


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Bang ieu khien cac chan chc nang cua L293D


ENABLE DIRA DIRB Function
High High low Quay phai
High low high Quay trai
GVHD : TS. Nguyen Thien Thanh 27
SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

High Low/high Low/high Dng nhanh


Low Dng cham

Trong o an , em s dung 3 chan cua PortC e ieu khien 3


chan DIR1A, DIR1B va EN1 va lam quay ong c M1. Ket qua
thu c kha tot.
III. Cac IC khac
IC74LS138
Em s dung IC nay e chon led c hien th. ay la IC co
chc nang phan kenh, t tn hieu ma hoa au vao co the
chon c mot trong 8 kenh au ra khac nhau (chan c chon
tch cc mc 0).
S o chan :

S o nguyen ly:

GVHD : TS. Nguyen Thien Thanh 28


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

3 chan A, B, C c ma hoa e chon kenh au ra. Cac


chan G2A, G2B (tch cc thap) va G1 (tch cc cao) la cac chan
cho phep. Y0:Y7 la cac ngo ra.
Bang chan tr

IC74LS47: co chc nang chuyen t BCD sang ma e hien


th ra led 7 oan.
S o ket noi

GVHD : TS. Nguyen Thien Thanh 29


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Cac chan A3:A0 la e a tn hieu ma BCD. Cac chan


a,b,c,d,e,f,d la tn hieu output ma led 7 oan (tch cc mc
thap).
Bang chan tr

GVHD : TS. Nguyen Thien Thanh 30


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

IV. oi tng ieu khien : ong c DC


ay ca ong c em s dung trong e tai :

Ben trong ong c co gan mot encoder ong truc vi no


dung e xac nh toc o va v tr cua ong c.
Cac thong so cua ong c nh sau:

GVHD : TS. Nguyen Thien Thanh 31


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

+ ien ap DC cap cho ong c : 24VDC


+ Toc o toi a 4000 vong/phut
+ So xung cua encoder 108xung/vong
+ ien cam L=102mH
ong c co tat ca 6 day ra :
+ 2 day cung cap nguon 24 V cho ong c
+ 2 day nguon 5V cung cap ap cho encoder
+ 1 day tn hieu kenh A va 1 day kenh A bu a xung
encoder ra ngoai
Phng phap ieu khien : Thay oi toc o ong c bang
cach thay oi ap cap vao cho ong c.
Nguyen ly hoat ong cua cam bien encoder : co nhieu loai
encoder khac nhau. Moi loai lai co mot nguyen ly hoat ong
khac nhau, trong khuon kho bao cao o an I em xin trnh bay
phan nguyen ly loai encoder trong e tai ma em s dung :
incremental encoder.
Mo hnh th 1

Incremental encoder ve c ban la mot a tron quay quanh


mot truc c uc lo nh hnh tren.

GVHD : TS. Nguyen Thien Thanh 32


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

2 ben mat cua cai a tron o, se co mot bo thu


phat quang. Trong qua trnh encoder quay quanh truc, neu gap
lo rong th anh sang chieu qua c, neu gap manh chan th
tia sang khong chieu qua c. Do o tn hieu nhan c t
sensor quang la mot chuoi xung. Moi encoder c che tao se
biet san so xung tren mot vong. Do o ta co the dung vi
ieu khien em so xung o trong mot n v thi gian va tnh
ra toc o ong c.
Cai encoder ma em s dung trong o an cua mnh, hoan
toan giong vi mo hnh tren. Tuy nhien, mo hnh tren co
nhc iem ln la : ta khong the xac nh c ong c quay
trai hay quay phai, v co quay theo chieu nao i na th ch co
mot dang xung a ra. Ngoai ra iem bat au cua ong c, ta
cung khong the nao biet c.
Cai tien mo hnh 1 bang mo hnh 2 nh sau:
Mo hnh th 2

GVHD : TS. Nguyen Thien Thanh 33


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Trong mo hnh nay, ngi ta uc tat ca la 2 vong lo.


Vong ngoai cung giong nh mo hnh 1, vong gia pha so vi
vong ngoai la 90 o. Khi o, dang xung ra t 2 vong tren nh
sau :

Hai xung a ra t 2 vong lech nhau 90 o, neu vong ngoai


nhanh pha hn vong trong th chac chan ong c quay t trai
sang phai va ngc lai.

GVHD : TS. Nguyen Thien Thanh 34


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Mot lo vong trong cung dung e phat hien iem bat


au cua ong c. Co the viet chng trnh cho vi ieu khien
nhan biet : neu co mot xung phat ra t vong trong cung
nay, tc la ong c a quay ung mot vong.
Vi nhng ac tnh tren, encoder dung rat pho bien trong
viec xac nh v tr goc cua ong c..
Van e quan trong trong viec tm mua nhng loai ong c co
gan encoder nh the nay e lam o an oi vi sinh vien la
: cap mat quang 2 ben encoder e tao xung thng b chet va
khong co o thay the.
Mot loai encoder th 2 cung pho bien hien nay, o la
:absolute encoder.
Mo hnh a quang cua loai nay nh sau:

Chng III :
Nguyen ly hoat ong cua mot so module
trong mach

I.Mach nguon 5 V chuan cung cap cho vi ieu khien


va nguon 24 cung cap cho ong c.
1. S o nguyen ly

GVHD : TS. Nguyen Thien Thanh 35


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

J9
1
O U T_24 2
24V

Q 2 Q 2SA1302 Q 3 Q 2SA 1302 0


J8
O U T_12
D 10 D 13 1
D 9 2
12V
D 1 D 1N 4007 D 1N 4007
D 1N 4007

1
J6 B R ID G E 0
U 3 U 4 U 5 O U T_5
F1 R 7 LM 7824 R 6 LM 7812 LM 7805 J7
1 4 - + 2 1 2 1 2 1 2
2 V IN VO U T V IN VO U T V IN VO U T 1
FU SE 4 .7 -2 W 4 .7 -2 W 2

G N D

G N D
G N D
2 4 V A C /5 A 5V
C 10 C 9
C 11 C 12
0
3
D 8 D 12 2 2 0 0 u F /3 5 V

3
D 1N 4007 D 1N 4007 8 2 0 0 u F /5 0 V 2 2 0 0 u F /3 5 V 0 .1 u F
0 C 8 0
R 4 2 2 0 0 u F /3 5 V
560

Q 1 0 0 0 0 0 0
Q 2SA1015
R 5
0
R 3 100K
2 .2 K
O U T_24 O U T_12 O U T_5

D 3 0 R 9 R 10 R 11
2 .2 K 1k 470
LED

D 14 D 15 D 16
LED LED LED

2. Giai thch nguyen ly hoat ong


T trai sang :
- Dung bien ap e chuyen t nguon 220VAC sang 24VAC
cung cap vao module mach nguon tren.
- Cau diode D1 BRIDGE dung e nan dong xoay chieu thanh
mot chieu. Khoi mach gom cac linh kien D14007 D8, D14007
D12, Q1 C1815, R3 2.2k, R5 100k, Led D3 dung e bao hieu co
nguon cung cap au vao.
- Cac tu trong mach nay eu co tac dung loc nhieu nguon
vao , cung nh loc nhieu nguon au ra. Lam cho nguon tng
oi on nh, khong b anh hng nhieu bi tai (tai nho).
- Transitor cong suat Q2SA1302 dung e keo dong cho 2
nguon 24 V va 12V tranh hien tng sut ap tren tai do dong
yeu.
- Cac IC 7824, 7812, 7805 la 3 IC on ap, lan lt on ap 24V,
12V va 5V au ra.
- 3 led D14, D15, D16 e hien th co ap au ra.
II. Khoi mach reset vi ieu khien PIC16F877A
1.S o nguyen ly

GVHD : TS. Nguyen Thien Thanh 36


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

HI
10k

1 33
M C L R */V P P R B 0 /IN T 34
2 R B1 35
3 R A 0 /A N 0 R B2 36
4 R A 1 /A N 1 R B 3 /P G M 37
5 R A 2 /A N 2 /V R E F -/C V R E F R B4 38
6 R A 3 /A N 3 /V R E F + R B5 39
7 R A 4 /T 0 C K I/C 1 O U T R B 6 /P G C 40
R A 5 /A N 4 /S S * /C 2 O U T R B 7 /P G D
1 5
0 1 6 R C 0 /T 1 O S O /T 1 C K I 19
1 7 R C 1 /T 1 O S I/C C P 2 R D 0 /P S P 0 20
1 8 R C 2 /C C P 1 R D 1 /P S P 1 21
2 3 R C 3 /S C K /S C L R D 2 /P S P 2 22
2 4 R C 4 /S D I/S D A R D 3 /P S P 3 27
2 5 R C 5 /S D O R D 4 /P S P 4 28
2 6 R C 6 /T X/C K R D 5 /P S P 5 29
R C 7 /R X/D T R D 6 /P S P 6 30
13 R D 7 /P S P 7
O S C 1 /C L K IN 8
R E 0 /R D * /A N 5 9
R E 1 /W R * /A N 6 10
14 R E 2 /C S */A N 7
O S C 2 /C L K O U T
12 11
31 VSS P IC 1 6 F 8 7 7 A VD D 32
VSS VD D

2. Gii thch
Vi ieu khien 16F877A hoat ong khi chan so 1 MCLR mc 1
va b reset khi b clear ve mc 0.
Vi mach reset tren, bnh thng phm nhan h ra, chan
reset mc 1 , vi ieu khien hoat ong. Khi nhan phm xuong,
chan 1 cham at b clear ve 0, vi ieu khien c reset tr lai
trang thai ban au. ( thanh ghi PC tro a ch 0000h trong bo
nh chng trnh).

III. Khoi mach quet phm


1.S o nguyen ly

GVHD : TS. Nguyen Thien Thanh 37


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

H I
10k

H I
1 3 3
M C L R * /V P P R B 0 /IN T 3 4
2 R B1 3 5
3 R A 0 /A N 0 R B2 3 6
4 R A 1 /A N 1 R B 3 /P G M 3 7
5 R A 2 /A N 2 /V R E F -/C V R E F R B4 3 8 10k 10k 10k 10k
6 R A 3 /A N 3 /V R E F + R B5 3 9
7 R A 4 /T 0 C K I/C 1 O U T R B 6 /P G C 4 0
R A 5 /A N 4 /S S * /C 2 O U T R B 7 /P G D
15
0 16 R C 0 /T 1 O S O /T 1 C K I 1 9
17 R C 1 /T 1 O S I/C C P 2 R D 0 /P S P 0 2 0
18 R C 2 /C C P 1 R D 1 /P S P 1 2 1
23 R C 3 /S C K /S C L R D 2 /P S P 2 2 2 HANG 3
24 R C 4 /S D I/S D A R D 3 /P S P 3 2 7
25 R C 5 /S D O R D 4 /P S P 4 2 8
26 R C 6 /T X /C K R D 5 /P S P 5 2 9
C 5 30p R C 7 /R X /D T R D 6 /P S P 6 3 0 HANG 2
13 R D 7 /P S P 7
O S C 1 /C L K IN 8
4Mhz R E 0 /R D * /A N 5 9
R E 1 /W R */A N 6 10 HANG 1
14 R E 2 /C S * /A N 7
O S C 2 /C L K O U T
12 11
VSS VD D
H I
C 6 30p 31 P IC 1 6 F 8 7 7 A 32
0 VSS VD D
H I

HANG 0

2. Giai thch ket noi


S dung PORTD cua vi ieu khien e thc hien quet phm.
Cac chan 6,5,4 ket noi thanh 3 cot (colums), cac chan 3,2,1,0
ket noi thanh 4 hang (rows), chan 7 bo trong.
Thiet lap cac chan rows la chan input, chan cols la chan
output. Keo cac ien tr len nguon rows e xac nh
ung mc logic ben ngoai a vao vi ieu khien.
3. Giai thuat quet phm
b1: Kiem tra co ket phm nao khong. Neu khong b ket phm th
qua bc 2.
b2: Tien hanh quet phm, xem th phm nao nhan, lay ma
phm o ve lu trong bien key.
b3: Moi gia tr bien key ai dien cho mot phm tren ban phm.
ng vi moi bien key, ta at ra mot phm hien th tren led
mong muon.
b4: Tra bang e oi gia tr bien key sang ma BCD chuan b
a vao 7447 e oi dang ma led 7 oan.

GVHD : TS. Nguyen Thien Thanh 38


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

b5 : Lap lai bc 1 e nhan ung phm tiep theo.

IV. Giai thuat ieu khien ON_OFF ong c DC


1.S o nguyen ly

Encoder :108 xung, 4000vong/phut

.A -
N D
cc

H I
.A
G
C
C
V
Encoder

1
2
3
4
H I
10k
Nguon 24V
+
-

0
1 3 3
M C L R * /V P P R B 0 /IN T 3 4
2 R B1 3 5
3 R A 0 /A N 0 R B2 3 6
4 R A 1 /A N 1 R B 3 /P G M 3 7
5 R A 2 /A N 2 /V R E F -/C V R E F R B4 3 8
13
12

6 R A 3 /A N 3 /V R E F + R B5 3 9
5
4

8 7 R A 4 /T 0 C K I/C 1 O U T R B 6 /P G C 4 0
VC C 2 R A 5 /A N 4 /S S * /C 2 O U T R B 7 /P G D
D
D
D
D

16
N
N

VC C 1
N
N

H I
1 5
G
G
G
G

9 0 1 6 R C 0 /T 1 O S O /T 1 C K I 1 9
3 /4 E N 1 1 7 R C 1 /T 1 O S I/C C P 2 R D 0 /P S P 0 2 0
1 /2 E N 1 8 R C 2 /C C P 1 R D 1 /P S P 1 2 1
14 15 2 3 R C 3 /S C K /S C L R D 2 /P S P 2 2 2
2

-
M G 1 11 4 Y 4 A 10 2 4 R C 4 /S D I/S D A R D 3 /P S P 3 2 7
6 3 Y 3 A 7 2 5 R C 5 /S D O R D 4 /P S P 4 2 8
A 3 2 Y 2 A 2 2 6 R C 6 /T X /C K R D 5 /P S P 5 2 9
1 Y 1 A C 5 30p R C 7 /R X/D T R D 6 /P S P 6 3 0
13 R D 7 /P S P 7
+ U 14 O S C 1 /C L K IN 8
4M hz R E 0 /R D * /A N 5 9
L293 R E 1 /W R */A N 6 10
R E 2 /C S * /A N 7
1

14
O S C 2 /C L K O U T
0 12 11
C 6 30p 31 VSS P IC 1 6 F 8 7 7 A VD D 32
VSS VD D

Noi 2 chan 3 va 6 cua L293D vao 2 day nguon cua ong


c. S dung 2 bit RC6 va RC7 cua PORTC vi ieu khien noi vao
2 chan 2 va 7 cua L293D e ieu khien chieu quay. Bit RC5 la
bit cho phep ong c hoat ong. Chan RA4 c nh che
o input e nhan xung t encoder truyen ve.
2. Giai thuat ieu khien
b1: at 2 bit RC6 va RC7 la 0, 1 hoac ngc lai e xac nh
chieu quay cua ong c. Bat bit RC5 len 1 cho phep ong c
quay.
b2: Dung Timer1 nh thi gian 1ms, Timer0 che o em
xung t encoder. C sau moi 1ms ( thi gian lay mau) ngat
GVHD : TS. Nguyen Thien Thanh 39
SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

timer1 xay ra, trong chng trnh phuc vu ngat cua timer1, tien
hanh oc xung cua encoder cha trong thanh ghi TMR0 cua
timer0.
b3 : T so xung cua Timer0 trong 1ms, ta tnh toan c toc
o hien tai cua ong c.
b4 : Thc hien phep tr gia toc o at va toc o o
c. Neu hieu so ln hn 0 ( khong co nh) th cho ong c
tiep tuc chay, neu hieu so nho hn 0 (c nh len 1) th tien
hanh tat ong c bang cach cho bit EN=0.
b5: C sau 1s th hien toc o cua ong c ra led 7 oan mot
lan.
b6: Lap lai lien tuc qua trnh tren, ta co toc o o dao
ong xung quanh toc o at.

GVHD : TS. Nguyen Thien Thanh 40


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Chng IV
Chng trnh viet bang Assembly ieu khien ON_OFF
ong c DC

Phan chng trnh se c em trnh bay trong buoi bao ve o


an mon hoc. Cac phan anh gia chat lng ieu khien ,
nhan xet v.v se c em trnh bay trong bai bao cao chnh
thc va trong buoi bao ve o an mon hoc.

GVHD : TS. Nguyen Thien Thanh 41


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Phu luc:
Tap lenh PIC16F877A

GVHD : TS. Nguyen Thien Thanh 42


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

GVHD : TS. Nguyen Thien Thanh 43


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

GVHD : TS. Nguyen Thien Thanh 44


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Tai lieu tham khao


1. Ho Trung My. Vi x ly. Nha xuat ban ai hoc Quoc Gia
GVHD : TS. Nguyen Thien Thanh 45
SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

2. Microchip. Datasheet 16F877A


3. Trng Sa Sanh (chu bien). Ky Thuat ien ai Cng. Nha
xuat ban ai hoc Quoc Gia
4. Nguyen Th Phng Ha. Ly Thuyet ieu khien T ong.
Nha xuat ban ai hoc quoc gia.
5. Cac tai lieu t internet, t dien an www.picvietnam.com
va cac luan van cua cac anh ch khoa tren.

GVHD : TS. Nguyen Thien Thanh 46


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Muc luc

e muc trang
Li cam
n
.. 1
Chng I : Gii thieu ve e
tai
.. 2
I. Tom tat e tai o an mon hoc I
. 2
1. Gii thieu cac module mach cua e
tai.. 2
2. S o nguyen ly ket noi cac module trong
mach 3
3. Cach van hanh mach
.. 3
II. Cac yeu cau cua e tai
. 4
Chng II : Gii thieu ve cac linh kien, phan t s
dung trong mach. 5
I. Vi ieu khien PIC16F877A
. 5
1. Khai quat ve vi ieu khien
PIC16F877A. 5
1.1. S o chan va s o nguyen ly cua
PIC16F877A 5
1.2. Nhan xet
.
6
1.3. Khai quat ve chc nang cua cac port
trong vi ieu khien
PIC16F877A
. 7
1.4. Tai sao s dung PIC16F877A
.. 8

GVHD : TS. Nguyen Thien Thanh 47


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

2. Tm hieu ve vi ieu khien PIC16F877A


... 10
2.1. Cau truc phan cng cua
PIC16F877A.. 10
2.2. To chc bo nh
PIC16F877a 13
2.2.1.Bo nh chng
trnh.. 13
2.2.2. Bo nh d lieu
. 14
2.2.3. Mot vai thanh ghi chc nang ac
biet SFR 16
2.3. Thanh ghi W(work) va tap lenh cua
PIC16F877A. 18
2.3.1. Thanh ghi
W..
18
2.3.2. Tap lenh cua
PIC16F877A 18
2.4. Cac van e ve Timer
. 18
II. Motor Driver L293D
22
III. Cac IC khac

24
IV. oi tng ieu khien : ong c DC
.. 27
Chng III :Nguyen ly hoat ong cua mot so module
trong mach 31
I.Mach nguon 5 V chuan cung cap cho vi ieu khien
va nguon 24 cung cap cho ong
c
31
II. Khoi mach reset vi ieu khien
PIC16F877A.. 32
III. Khoi mach quet
phm
33
IV. Giai thuat ieu khien ON_OFF ong c
DC.. 34

GVHD : TS. Nguyen Thien Thanh 48


SVTH: Nguyen Uy Danh
Bao cao o an mon hoc I

Chng IV:Chng trnh viet bang Assembly ieu khien


ON_OFF
ong c
DC
36
Phu luc: Tap lenh
PIC16F877A
37

GVHD : TS. Nguyen Thien Thanh 49


SVTH: Nguyen Uy Danh

You might also like