Tải bản đầy đủ (.doc) (41 trang)

Thiết kế robot tự động dò đường sử dụng vi điều khiến 8051

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.15 MB, 41 trang )

I

ìasBKíHsaHHEũaHìasiiaEíiaEiiasiiSEHaETÌHKaEĩĩĩEĩĩH:

f ỈOĨ/ỈO

MOSIỴHI ĐNÝa S'HI

:u

'NV

?p Suạntị U9ỊA SupĩQ

lAIQ-ỵ6P:

Nvni maN3ẪÍ1ĐN

uẹụx

lĩ08
NẸIH2 Í13IGIA
ONỌ.ÍÌG ỌGDNỘG.ÍU 1030X32
V

DỎHIVG

cỈỆIH
MỴ ỌG
À


-rm'*ĐNỌHI NẸIA - Í1I NỆIG VOHM
V

ĩWfã

V-

‘í,

V

HMIÁ DOHIÝG ĐNỌ/1 NI


CHƯƠNG III TÍNH TOÁN VÀ THIẾT KẾ..........................................................34
MỤC L ỤC
3.1 Sơ đồ khối tổng quát...............................................................................
34
ĐẦU.........................................................................................iii
3.2 LỜI
KhốiNÓI
nguồn.............................................................................................34
TẮTkhiến
ĐỒ ÁN..................................................................................iv
3.3 TÓM
Khối điều
trung tâm......................................................................35
DANH
MỤC
BẢNG BIỂU......................................................................V

3.4 Khối cảm biến.........................................................................................36
MỤC
VẼ...........................................................................vi
3.5 DANH
Khối công
suấtHÌNH
điều khiển
động cơ.........................................................37
MỤC
CHỮ
CÁI CÚNG
VIẾT TẮT.......................................................vii
CHƯƠNGDANH
IV THI
CÔNG
PHẦN
VÀ PHẦN MỀM.................................38
MỞ
ĐẦU................................................................................................1
4.1 Thiết kế mạch in .....................................................................................38
PHẦN
I Cơkế
SỞ
LÝ THUYẾT.................................................................2
4.1.1
Thiết
mạch
in cho mạch cảm biến hồng ngoại...........................38
CHƯƠNG
I

GIỚI
THIỆU
HỌin
VIcho
ĐIỀU
KHIỂN
8051..........................................2
4.1.2 Thiết kế mạch
mạch
điều khiến...........................................38
1.1 4.1.3
Sự ra đời
của
họ
vi
điều
khiến
8051
..........................................................
Thiết kế mạch in cho mạch công suất............................................392
1.2
Kiến
trúc
của họ
điều khiển........................................................40
8051 ...............................................2
4.2 Lập trình chung
phần mềm
choviAT89C51
1.3 4.2.1

Tóm tắt
tậpđồlệnh
củatoán...........................................................................40
8051.......................................................................3
Lưu
thuật
1.3.1 Chế
độ đánh
chỉ..........................................................................4
4.2.2
Chương
trìnhđịa
phần
mềm................................................................41
1.3.2..........................................................................................................
KÉT LUẬN............................................................................................49T
óm
tắtLIỆU
tập lệnh
của 8051...........................................................................7
TÀI
THAM
KHẢO......................................................................50
1.4.................................................................................................................... Gi
ới thiệu về vi điều khiển AT89C51..................................................................12
1.4.1.......................................................................................................... S
ơ đồ và chức năng các chân của AT89C51................................................12
1.4.2.......................................................................................................... C
ấu trúc bên trong của AT89C51................................................................16
1.4.3.......................................................................................................... C

ác hoạt động chức năng chính trong AT89C51.........................................18
PHẦN II PHÂN TÍCH VÀ THIẾT KẾ...................................................21
CHƯƠNG II MỘT SỐ Bộ PHẬN CHỨC NĂNG CỦA ROBOT..........................21
2.1 Hệ thống cảm biến nhận vạch..................................................................21
2.1.1 Nguyên lý cơ bản...........................................................................21
2.1.2 Các loại cảm biến...........................................................................22
2.2 Động cơ DC............................................................................................24
2.2.1 Cấu tạo...........................................................................................24
2.2.2 Nguyên tắc hoạt động....................................................................24
2.2.3 Điều khiển tốc độ động cơ DC.......................................................26
2.2.4 Điều khiến động cơ bằng mạch cầu H...........................................27
2.2.5 Điều khiển động cơ bằng phương pháp PWM...............................32
2.3 Nguồn......................................................................................................33

23


LỜI NÓI ĐẨU
Trong cuộc sống của chúng ta, robot có vai trò ngày càng lớn và ngày càng
thông minh theo sự phát triển của khoa học kỹ thuật. Trên thế giới, đã xuất hiện rất
nhiều robot thông minh có thế giúp con người thực hiện những công việc đơn giản
cũng như những công việc nguy hiểm, phức tạp, như robot hồ trợ bác sĩ phẫu thuật,
robot làm việc trong môi trường phóng xa, robot thám hiếm mặt trăng... ứng dụng
của robot trong thời đại này là rất lớn đối với con người.
Ở nước ta hiện nay, một số ngành thuộc lĩnh vực cơ điện tử và tự động hoá
đang phát triển rất nhanh. Việc nghiên cún, tìm hiểu về robot đã có những bước
phát triến đáng kế, đặc biệt là trong các viện nghiên cứu, sinh viên các trường đại
học. Với cuộc thi Robocon Châu Á Thái Bình Dương, sinh viên Việt Nam đã có
nhiều lần vô địch, vượt qua các đối thủ mạnh của các nước phát triển như Nhật Bản,
Trung Quốc... Điều đó chứng tỏ sinh viên chúng ta rất quan tâm đến việc nghiên

cứu, tìm hiểu về robot.
Với niềm đam mê tìm hiếu về robot, và với mong muốn khoa Điện tử - Viễn
thông của chúng ta có thể tham gia cuộc thi Robocon toàn quốc, em đã mạnh dạn
thực hiện đề tài “Thiết kế Robot tự động dò đường sử dụng vi điều khiến 8051”.
Mặc dù phạm vi đề tài rất nhỏ và khiêm tốn, nhưng với em, đây là bước khởi đầu
quan trọng khi lần đầu tiên bước vào thế giới robot, một thế giới hấp dẫn, đa dạng
và đầy thử thách.
Trong quá trình thực hiện đồ án này, e xin chân thành cảm ơn Thạc sĩ Đặng
Thái Sơn đã tận tình hướng dẫn và giúp đỡ em thực hiện tốt đề tài này. Mặc dù vậy
nhưng do thời gian và kiến thức của bản thân có hạn nên đồ án không the tránh khỏi
sai sót, mong quý thầy cô và các bạn đóng góp ý kiến đế đồ án được hoàn thiện hơn.

Vinh, ngày 07 tháng 01 năm 2013
Sinh

viên

thực

Nguyễn Duy Tuấn

4

hiện


TÓM TẤT ĐÔ ÁN
Trong thời đại ngày nay, với sự phát triển của công nghệ điện tử tự động hóa
đã làm cho con người dần được thay thế bởi các loại máy móc trong một số công
việc từ đơn giản đến phức tạp. Trong những năm qua, các cuộc thi Robocon đã làm

dấy lên phong trào tìm hiểu sâu rộng hơn trong sinh viên cả nước về công nghệ tự
động hóa. Trong phạm vi đồ án này, e nghiên cứu các vấn đề như sau:
- Nghiên cứu các kĩ thuật nhận biết môi trường bên ngoài cho robot sử dụng
các loại cảm biến hiện có trên thị trường.
- Nghiên cứu các kĩ thuật điều khiển tốc độ động cơ sử dụng vi điều khiển
8051.
-

Nghiên cứu kỳ thuật lập trình cho vi điều khiển 8051 sử dụng họp ngữ và
ngôn ngữ assembly.

Các kỹ thuật trên đã được em trình bày một cách chi tiết trong đồ án. Các kết
quả nghiên cứu đã được ứng dụng trong sản phẩm “Robot tự động dò đường”.
ABSTRACT
Nowadays, with the development of Electronic Automation Technology, it
has made people gradually beinh replaced by machineries in a number of works
from simple to complex. Machines are applied in doing both simple works and
complex works instead of human labor. In the recent years, it’s robocon contest that
has arisen nation-wide movements of students in studying automation technology.
In domain of this research, ĩ concentrate on reseaching these following issues:
- Researching techniques to identiĩy the external environment for robot using
sensors available on the market
- Researching techniques motor speed control using 8051 microcontroller
- Researching on programming techniques for 8051 microcontroller using
assembly language.
The techniques above are presented in details in this research. The results of
reseaching are applied in product “Automatic Robot Navigation”.

5



DANH MỤC BẢNG BIỀU
Bảng 1.1 Các đặc tính của họ vi điều khiến 8051.......................................2
Bảng 1.2 Các lệnh rẽ nhánh........................................................................11
Bảng 1.3 Chức năng các chân port 3..........................................................14
Bảng 1.4 Nội dung các thanh ghi sau khi Reset..........................................15
Bảng 1.5 Các thanh ghi chức năng đặc biệt điều khiến timer......................19
Bảng 1.6 Địa chỉ các vecto ngắt.................................................................19
Bảng 1.7 Trạng thái các thanh ghi sau reset................................................20
Bảng 2.1 Cách hoạt động của mạch cầu H..................................................28

6


code

EN
ROM

OSFET

bocon

Random access memory
Read only memory
Central Processing Unit
Operation code
Program Status Word
ĩnput- Output
Output Enable

Program store enable

Bộ nhớ ghi/đọc
Bộ nhó chỉ đọc
Đon cị xử lý trung tâm
Hoạt động mã
Chương trình từ trạng thái
Vào - ra
DA NH MỤC HÌNH VẼ
DA NH
Kích
hoạtMỤC
đầu raCHỮ CÁI VIẾT TẮT

chokhiển
phép 8051............................................3
Hình 1.1 SơChương
đồ khốitrình
của lưu
họ vitrữđiều
1.2 SơBộđồ
nguyên
vi điềucó
khiểnthể
AT89C51
12
Erasable
Programmable HìnhRead
Only
nhớ lý

ROM
lập ....................................
trình
Hình 1.3 Sơ đồ khối
bộ vibằng
điều khiển
........................................13
Memory
được
xung AT89C51
điện hoặc
xóa
Hình 1.4 Mạch daođược
độngbằng
dùngtiathạch
anh cho AT89C51............................ 16
cực tím.
Hình 1.5 Bản
nhó'cho
data
trên chíp AT89C51......................................18
Address Latch Enable
Địađồ
chỉbộchốt
phép
Hình 2.1 Nguyên
tắc nhận
biết vạch của led thu phát hồng ngoại...............22
External Access
Bên ngoài

truy cập
Hình 2.2 Sơ đồ nguyên lý thu phát hồng ngoại........................................... 23
Thiếtảnh
lậpquang
lại trở thực tế...........................................................23
Hình 2.3 Hình
Light Emitting Diode
Đi ốt phát
quang
Hình 2.4 Nguyên
lý thu
dùng ánh sáng khả biến......................................... 24
Hình
2.5

đồ
mạch
cầu
Direct Current
Điện một chiềuH........................................................................27
Hình 2.6 Sơ đồ..................................... nguyên lý mạch cầu H sử dụng Relay
Pulse Width Modulation
Độ rộng xung
29
MetalOxide
Semeconductor
hiệu
ứng
trường
Oxit

Hình
2.7 SơTransistor
đồ............................nguyên
lý mạch cầu
H dùng BJT công suất
Field-Effect Transisor 30
Kim loại - Bán dẫn
Robot Contest
thi robot
Hình 2.8 SơCuộc
đồ...................................nguyên
lý mạch cầu H dùng MOSFET
31
Hình 2.9 Sơ đồ.....................nguyên lý mạch cầu H dùng Relay kết hợp FET
31
Hình 2.10 Phương pháp điều khiển động cơ bàng PWM............................32
Hình 2.11 Một loại ác quy khô................................................................... 33
Hình 3.1 Sơ đồ.........................................................................khối tống quát
34
Hình 3.2 Sơ đồ.............................................................. nguyên lý khối nguồn
35
Hình 3.3 Sơ đồ.....................................................nguyên lý mạch điều khiến
35
Hình 3.4 Sơ đồ.....................................nguyên lý mạch cảm biến hồng ngoại
36
Hình 3.5 Sơ đồ...........nguyên lý mạch đệm tín hiệu dùng bộ so sánh LM324
36
Hình 3.6 Sơ đồ.........................nguyên lý khối công suất điều khiển động cơ
37
Hình 4.1 Sơ đồ.......................................... mạch in khối cảm biến hồng ngoại

38
Hình 4.2 Sơ đồ..........................................................mạch in khối điều khiến
38
Hình 4.3 Sơ đồ........................................................... mạch in khối công suất
39

7
8


Đặc tính

Số lượng

ROM trên chip

4K byte

RAM

128 byte

Đặc tínhnữa
Sổtrước
lượng
Tóm
tăt
tập
lệnh
củacó

8051
nhờ cho
vào dữ
ký1.3.2
tựTrong
# hoặc
đặtchế
độchỉ.
này,
chúng.
các
Toán
thanh
hạng
ghi
bên
này
trong
có 1thếbyte,
8051
là một
được
hằng
đánh
địa
học,
chỉ
trực
tiếp
liệu

địa
Tập
lệnh
139
lệnh
94
lệnh
2sốbyte
vàmột
24 biến
lệnh
bằng
hoặc
một
8
bit
biểu
địa
chỉ
thức
nằm
số
học
trong
sử
byte
dụng
thứ
các
hai

hằng
của
số.

lệnh
3
byte.
Tập
lệnh
của
8051
được
chia
thành
5
nhóm:
số
học,
logic,
chuyến
dữ
liệu,
Bộ định thời
2
PHÂN
I
ĐẦU
Tập lệnh
của 8051
chia làmlệnh

5 nhómnhánh.
lệnhMỞ
cơ bản:
chuyển
điềuđược
khiển,
1.3.1.5
Địanhóm
chỉ tương rẽ
đối
Các chân vào ra
32
Cơ SỞ LÝ THUYẾT
1.3.1
Chếđềđộtài:
đảnh địa chỉ
- Mục tiêu
• Kiểu
Nhómđịnh
lệnhđịa
số học
chỉ tương đối chỉ được sử dụng cho các lệnh nhảy. Một
Nguồn ngắt
6 tắt của chữ Robot
CHƯƠNG
Robocon
viết
làdữ
kìliệu,
sáng

tạoGiá
robot
Châu
Á
địa chỉ Khi
tương
đốilệnh
(cònđược
đượcthực
gọi thi
là offset)
lànày
mộtIcần
giá
trị
8thi
bittiêp
có dấu.
trị này
một

lệnhContest,
một
câu
hỏi
được
đặt ra
Địa
chỉ
trực

Thái
Bình
Dương
được
tổ
chức
hằng
năm.
Đây

cuộc
thi
được
khởi
xướng
tại
được
• cộng
Nhóm
với
lệnh
bộchứa
đếm
trình
địa
chỉÉN
của
lệnhra tiếp
cần địa


“Dữ
liệu
được
ởchương
đâu”.
Câu
trảđế
lờitạo
chora câu
hỏi
này
tạo
các theo
kiểu định
Cổng nối tiếp
1 logic
GIỚI
THIỆU
HỌ

ĐIÊU
KHỈ
8051
Nhật
Bản.
Từ Có
nămnhiều
2002,kiếu
nó trở
cuộcdothivậy

thường
niên kiểu
do Hiệp
hội lời
Phát
đượccủa
thực
thi.
chỉ
8051.
địnhthành
địa chỉ
có nhiều
câu trả
chothanh
câu
1.
Sự
đời
của
họdi
vỉ
khiên
8051
nhình
nlệnh
nchuyến
và ỉTruyền
Châu
Áđiều

Thái
Bình
Dương
tố chức
tại các
nước
thành
hỏi
trên
chang
hạn
như:
trong
byte
thứ 2 của
1 lệnh,
trong
thanh
ghiviên
R4, mang
trong tên
địa
• ra
Nhóm
dữ
liệu
Định địa chỉ tương đối Địa
có điếm
lợi tiếp
là cung cấp cho chúng ta mà không

chỉtrào
trực
ABU
Robocon
đểtrong
cổ vũ
cho
phong
sángtrong
tạo con
robot
trong
khu vực. Thành viên
Mã lệnh
chỉ
trực
tiếp
hoặc
bộ
nhớ
ngoài

địa
chỉ
trỏ
dữ
liệu.
Vàovào
năm
1981

hãnglạiIntel
giới bất
thiệu
sốđích
bộ vi
điều
khiếnhạn
được
gọi là
phụ thuộc
vị trí,
nhưng
có điểm
lợi một
là các
nhảy
bị giới
trong
tại mỗi
nước
được
cửdịch
một
độiphép
là sinh
viêncác
củathanh
một ghi
trường
họcđặc

haybiệt
cao(cóđẳng

vậy,
trình
cho
gọi tên
chứcđại
năng
địa

Nhóm
lệnh
xử

bit
8051.
Bộ
vi
điều
khiển
này

128
byte
RAM,
4K
byte
ROM
trên

chíp,
hai
bộ
tầm -128
byte
đếnđịnh
127 địa
byte.
Các
kiểu
chỉđiều
làcai
phần
cần
thiết
cho
toàn
bộ tập
lệnhđacủa
mỗi mộtđịnh
bộ

đồ
khối
của
họ
vi
khiển
8051
như

sau:
tham
dự
(ngoại
trừ
nước
đăng
tố
chức
được
cử
2
đội).
Trong
số
trường
hợp,
chỉ
trực
tiếp
từ nối
80Htiếp
đếnvàFFH)
ví dụ:
P0rộng
cho 8cống
0,
TMOD
cho
thanhđặtghitrên

chếmột
độ
thời,
một
cổng
4
cống
(đều
bit)
vào
ra
tất
cả
được
vi
xử
lý,
vi
điều
khiến.
Các
kiếu
định
địa
chỉ
cho
phép
ta
xác
định


nguồn

đích
i ổ Địa
chỉ tuyển
tuyệt đoi
đội 1.3.1.
ABU robocon
được
ra tù' vòng thi trong nước do đài truyền hình thành
Timer...
chíp.dữLúc
ấy nó được
coi
là khác
một “hệ thống
trên chíp”.
8051huống
là một
xử lýCó8 8bitkiểu

của
cách
thuộc
vào
lậpbộ
trình.
Mã lệnh
viên tổ liệu

chứctheo
với nhiều
cùng chủ
đề. Là nhau
cuộc phụ
thi truyền
hìnhtình
có yếu tố kỹ
thuật
và tính đối
nghĩa
làKiểu
CPU
chỉ
cóchỉthế
làm
việc
với
8được
bit dữ
liệu
tạivới
một
thời
điếm.
Dừ liệu
lớn
1.3.1.3
Địa
gián

tiếp
định
địa
chỉ
tuyệt
đối
chỉ
sử
dụng
các
lệnh
ACALL

định
địa
chỉ
như
sau:
kháng cao, Robocon có được sự quan tâm rất lớn của mọi thành phần trong xã hội.
hơn
8 bit
được
chialệnh
ra thành
các
liệu rẽ
8 bit
để cho
xử lý.
8051

có trang
tất cả 2K
4 cổng
AJMP.
Đây
là các
bytechỉ
chodữphép
nhánh
chương
trình
trong
1.3.1.1
Thanh
ghi2nhận
địa
Làm
cách
nàotuyển
để
biết
một
biến
khi
địa
chỉ
của
biến
đãtrên
được

xác
định,
vào
ra
1/0
mỗi
cống
rộng
8
bit.
Mặc

8051

thể

một
ROM
chíp
cực
đại
Đe
chọn
đội
tham
gia
cuộc
thi
Robocon
quốc

tế,
Việt
Nam
tổ
hiện hành của bộ nhớ chương trình bằng cách cấp 11 bit địa chỉ thấp (A0-A10) chức
được
tính
toán
hoặc
được
sửa
đôi
trong
khi
một
chưong
trình
dạng
chạy.
Tình
Vlã lệnl

64
K
byte,
nhưng
các
nhà
sản
xuất

lúc
đó
đã
cho
xuất
xưởng
chỉ
với
4K
byte
cuộc
thi
Robocon
Việt
Nam.
Robocon
trở
thành
ngày
hội
thường
niên
của
sinh
viên
đế xác 8051
định địa
đíchthanh
trongghi,
trang

Còn
cao ghi
hiệnđánh
hànhsốtrong
thanh
có 4chỉ
bank
mỗimã.
bank
có 58 bit
thanh
từ RO
đến R7.
huống
này chíp.
chỉ tôn
phátvinh
sinh
khilực
ta quản
lý các
vị tríhệnhớ
liên tiếp, các điểm nhập được
ROM
trên
Việt
Nam,
nơi
năng
sang

tạo
ghi đếm
chương
trình.
vậy địa
chỉthanh
củacủa
lệnh
theotrẻ.
sau
nhánhchọn
và địa
chỉthanh
Tại
mồi
thời
điếm
chỉ Vì

một
bank
ghithếđược
tíchlệnh
cực.rẽMuốn
bank
chuỗi kí tự. Các kiểu định địa chỉ thanh ghi hay trực tiếp không sử dụng được cho
của
lệnh
rẽ
nhánh

cần
phải
cùng
trang

2
kbyte.
Đe
không
bị
giới
hạn
ta
có vào
ghi
nào
ta
chỉ
cần
gán
các
bít
nhị
phân
thích
hợp
vào
RSI
(PSW.4)


RSO
(PSW.3)
ACC
= đã
điều Đại
khiển
trở có
nên
phố
biến
sau
khi
Intel
chobiết
phép
cácquốc
nhà
sản
Trường
học
Vinh
tacác
đã
tham
cuộc
thiđược
Robocon
toàn
tìnhVi
huống

này,
do8051
vậy
ta chúng
cần
địa
chỉgia
toán
hạng
trong
thời
gian
PC hoặc DPTR +các
thể
sử
dụng
lệnh
LCALL,
LJMP.
trong
thanh
ghi
trạng
thái
chưong
trình
(PSW).
Các
lệnh
sử

dụng
kiêu
định
địa
chỉ
xuất
khác
sản
xuất

bán
bất
kỳ
dạng
biến
thế
nào
của
8051

họ
thích
với
điều
năm
2008
nhưng
không
thành
công.

Ke
tiếp
niềm
dam

của
cha
anh

rất
nhiều
hợp dịch.
thanh
được
mãR0-R7.
hoá
cáchvới
dùng
3 chưa
bit
thấp
nhất
của
opcode
đểkinh
chỉ nghiệm
raphiên
một
Địaỉ.viên
chỉ

thanh
ghi
kiện
họ
phải
đếĐiện

lại
8051.
Điều
dẫnkiện
đếncũng
sự ranhư
đời
nhiều
sinh
khoa
tử tương
- bằng
Viễnthích
thông
những
cónày
điều
1.3.
7ghi
Địa
chỉ
dài
Ghi

chú:thanh
ghi
Giải
bên
pháp
trong
của
của
8051
không

gian
dùng
địa
kiểu
chỉ
định
logic
địa
này.
chỉ
gián
tiếp.
Các
thanh
ghi
RO

bản
của gia

8051cuộc
vớithi.
cácDo
tốcđó,
độmục
kháctiêu
nhau
lượng
ROM
chíp
khác
đế tham
củavàđềdung
tài này
là khơi
dậytrên
niềm
dam
mê nhau
điện
Kiểu
định
địa
chỉ
dài
chỉ
được
dùng
cho
các

lệnh
LCALL

LJMP
các
RI

thế
hoạt
động
như
các
con
trỏ
(pointer)

nội
dung
của
chúng
chỉ
ra
địa
chỉ
được
sảnmột
xuất.
mặc
dù Điện
có nhiều

Rn
tử củabán
các bởi
em hơn
sinh nữa
viên,các
tạonhà
dựng
tiềnĐiều
đề đếnày
gópquan
phầntrọng
giúp làcho
khoa
tử lệnh
3thông
byte
này
chứa
chỉ
đích
16
Lợi
ích
của
nàythấp
là sử
dụng
hết xác
trong

RAM,
noi

dừđịa
liệu
được
hay
ghi.
Bittương
có nhớ
ýlệnh
nghĩa
nhất
opcode
Direct
Địathế
chỉ
8 có
bit
trong
RAM
nội
(00H-0FH).
biến
khác
nhau
của
8051
về
tốcđọc

độ bit.
và dung
lượng
ROM
trên
chíp,
nhưng
tất
Viễn
thế
tham
gia
cuộc
thi
Robocon
trong
lai.
toàn
bộ
không
gian
trình
64K,
lại

bất
lợi
lệnh
định
thanh

ghitương
nào nhớ
(RO
hay
được
dùng
trỏ.điếm
Trong
ngữ
của
8051,
cả
chúng
đều
thíchchương
với Rl)
8051
ban
đầunhưng
vềlàm
cáccon
lệnh.
Điều
nàyhợp
có là
nghĩa
làdài
nếu
ta
-chỉNhiệm

của
đề
tài dụng
đến
3chương
byte.
kiếu
định
địagián
chỉ vụ
gián
tiếp
biết
dựaghi
vàonào
ký tự
@thìđặtnóRI.
trước
Địa
tiếp
sửđược
RO
@Ri
viết
trình
của
mình
chonhận
mộtthanh
phiên

bản
đóhoặc
cũngRO
sẽ hay
chạyRl.với mọi
Nhiệm
vụ
củachiếu
đề
tài
này
làlàthiết
kếtừ
một
con

tự đến.
độngNgười
đi theo
phiên
bất
khác

không
phân
biệt
sản
xuất
nào.
1.3.1.8

Địa
chỉkỳ
tham
RO

RI
được
chứa
địa
chỉ
ôhãng
nhớ
màrobot
lệnh
tác thế
động
ta
Toánbản
hạng
nguồn
-dùng
có để
thể
Rn,nó
direct
hoặc
@Ri.
Source
đường
đi

đã định
trước
bằng
cách
dò theo các vạch đen trên nền trắng mà không có
quy
ước
dùng
dấu
@
trước
RO

R1.
Addrló
:
Địachỉlóbit.
1.2 Địa
Kiênchỉ
trúctham
chung
của họ
vỉ điều khiên
chiếu
thanh8051
ghi cơhoặc
bản (hoặc
hạng
đíchbên
- ngoài.

có dùng
thê một
là Rn,
direct
@Ri. thanh ghi đếm
Destination sựToán
tác động
trợ giúp
1.3.2.

Nhỏm
lệnh
sổ
học
chương
trình
PC
hoặc
thanh
ghi
con
trỏ
dữ
liệu
DPTR)

địa viên
chỉ Offset
(trong
Bộ

vi điều
khiển
8051 có kiến trúc Harvard là thành
đầu tiên
của họ
-sốYêu
cầu
của
đềđểtài
Hằngghi
8tích
bit.
#data
thanh
luỹ
A)
tạo
địa
chỉ
được
tác
động
cho
các
lệnh
JMP
hoặc
8051.
Hãng
Intel


hiệu


MCS
51.
ADD A,Rn
: Cộng nội dung thanh ghi Rn vào thanh ghi A.
MOVC.
bảngkếnhảy
bảng
tìm hoạt
kiếmđộng
dễ dàng
ra đế
sử ổn
dụng
địanhất.
Yêu cầu
đề tài Các
là thiết
mộtvàcon
robot
với được
tốc độtạocao
nhất,
định
#data 16
Hằng
sốchiếu.

16
bit. khiến
Họ
vi
điều
8051

một
số
đặc
tính
chung
như
sau:
ADD A,data
chỉ
tham
:
Cộng
trực
tiếp
1
byte
vào
thanh
ghi
A.
Robot có thế hoạt động linh hoạt, đi theo các loại đường từ đơn giản đến phức tạp.
Bit
Địa chỉ trực tiếp Bảng

của một
bit.
Các
đặckhối
tínhcủa
củadung
họvivi
điềukhiển
khiển
8051
ADD A,@Ri
:1.1
Cộng
tiếp
nội
RAM
chứa
tại
địa chỉ được khai báo
Hình1.1
Sơ gián
đồ
họ
điều
8051
Địathanh
chỉ thanh
ghi
Rel
Địa

tương
88051
bit.
trong
vào
ghi A.
1.3chỉTóm
tắt đối
tập (offset)
lệnh
củaRi

DDC A,@Ri
DDC A,#data

UBB A,#data
CA

C Rn

C data

C @Ri

EC A

ra, liệu
mộttức
sốthời
thanh

ghi
đặc biệt như thanh ghi tích luỹ, con trỏ dữ
ADD A,#data
:Ngoài
Cộng
dữ
vào
A.cờtối
Tập
lệnh
của dung
MSC-51
được
ưuvào
hoáA.cho các ứng dụng điều khiến 8 bit.
Cộng
gián
tiêp
nội
RAM

nhớ
liệu...cũng được xác định trong các lệnh
nên không
các bít địa chỉ. Trong các lệnh
Nhiều kiểu định địa chỉ cô đọng và nhanh, dung để truy xuất RAM nội được dùng
Cộng
dữ ghi
liệutích
tức thời

và cờ xác
nhớ định
vào A.
này
thanh
luỹ được
là “A”, con trỏ dữ liệu là “DPTR”, thanh ghi
đến nhằm tạo thuận lợi cho các thao tác trên các cấu trúc dữ liệu nhỏ. Tập lệnh cũng
đếmTrừ
chương
trìnhAlàcho
“PC”,
cờ

“C”,
cặpnhớ.
thanh ghi tích luỹ B là “AB”.
nội biến
dung
mộtphép
sônhớ
tức
thời
hộ trợ các
1 bit cho
quản
lývàbitcờtrực
tiếp trong các hệ logic và điều khiến
1.3.1.2
Địa

chỉ
trực
tiếp
có yêu
lý thanh
bit. Cũng
Tăngcầu
nộixử
dung
ghi Anhư
lêntrong
1. trong các vi xử lý 8bit, các lệnh của 8051 có
Địa
chỉ
tiếp
các
opcode
8
bit,
do
đó
số
lệnh

thểgián
lên
đến
256
lệnh
(thực

có Rn
255vàlệnh,
SUBB A,Rn
: chỉ
Trừ
nội
dung
thanh
ghidụng
A cho
nội
dung
thanhtếghi
cờ một
Kiểu
định
địa
trực
tiếp
được
sử
truy
xuất
nhớ2 byte
hoặc
các
Tăng
nội
dung
thanh

ghi
Rn
lên
1.
lệnh1.3.1.4
không đượcĐịa
địnhchỉnghĩa).
Ngoài opcode, một sốđếlệnh
còn
có các
thêmbiến
1 hay
tức
thời
thanh ghi trên chip. Một byte thêm vào tiếp theo opcode dùng để xác định địa chỉ.
TăngĐịa
dữ liệucơtrực
nhớ.lên 1.
bảntiếp
được
tác động
Khi chỉ
toán hạng
nguồn là mộtOffset
hằng số thay vì làĐịa
mộtchỉ
biến,
hằng
số này có thể
Tăng

gián
tiếp
nội
dung
vùng
RAM
xuống
1.
đưa vào lệnh và đây là byte dữ liệu tức thời. Các toán hạng tức thòi được nhận biết
SUBB A,data
: Trừ trực tiếp A cho một số và cờ nhớ.
Giảm nội dung thanh ghi A xuống 1.

EC Rn

Giảm nội dung thanh ghi Rn xuống 1.

EC data

Giảm dừ liệu trực tiếp xuống 1

EC @Ri

Giảm dữ liệu trực tiếp xuống 1.

14
12
11
9
13

15
10


C DPTR

Tăng nội dung con trỏ dữ liệu lên 1.

UL AB

Nhân nội dung thanh ghi A với nội dung thanh ghi B.

V AB

Chia nội dung thanh ghi A cho nội dung thanh ghi B.

NL A,data
NL A,@Ri

RL data,A

AND nội dung thanh ghi A với dữ liệu trực tiêp.
thanh
A trong
với một
dữ liệu trực tiếp.
XRL nội dung thanh
A,data
AND
ghi A vớiXOR

dữ liệu
giánghi
tiếp
RAM.
XRL
A,@Ri
XOR
ghi A với một dữ liệu gián tiếp.
AND nội
dung thanh
ghi với dữ
liệu thanh
tức thời.
XRL
A,#data
XOR thanh ghi A với một dữ liệu tức thời.
XRL
AND một
dữ liệu data,A
trực tiếp với A.
XRL data,#data
XOR một dữ liệu trực tiếp với thanh ghi A.
AND một
dữ liệu trực tiếp với A một dữ liệu tức thời.
SETBC
XOR một dữ liệu trực tiếp với một dữ liệu tức thời.
SETB
bit
AND cờ nhớ với 1 bit trực tiếp.Đặt cờ nhớ.
CLR

A
AND cờCLRC
nhớ với bù 1 bit trực tiếp.
Đặt một bit trực tiếp.
CPRA
OR thanh
ghi A với thanh ghi Rn.
Xoá thanh ghi A.
CPLC
CPL
bit
OR thanh ghi A với một dữ liệuXoá
trựccờtiếp.
nhớ.
RL
A
OR thanh
ghi A với một
nộitiếp.
dung thanh ghi A.
RLC
A dữ liệuBùgián
RRghi A với một
A dữ liệuBùtức
OR thanh
cờthời.
nhớ.
RRC
A
Bù một

OR mộtSWAP
dữ liệu trực tiếp với thanh
ghi bit
A. trực tiếp.

RL data, #data

Quay
OR một dữ liệu trực tiếp với một
dữ trái
liệu nội
tức dung
thời. thanh ghi A.

NL A,#data

NL data,A

NL data,#data

NL c,bit

NL c,/bit

RL A,Rn

RL A,data

RL A,@Ri


RL A,#data

Quay
trái thập
nội dung
OR
DA cờ
A nhớ
: với một bit trực tiếp.
Hiệu
chỉnh
phânthanh
thanhghi
ghiAA.qua cờ nhớ.
1.3.2.2
Nhóm lệnh
logic
phải nội dung thanh ghi A.
RL c,/bit
OR cò' nhớ với bù của một bit Quay
trục tiếp.
ANL A,Rn
: AND nội dung thanh ghi A với nội dung thanh ghi Rn.
RL A,Rn
XOR thanh ghi A với thanh ghiQuay
Rn. phải nội dung thanh ghi A qua cờ nhớ.
Quay trái nội dung thanh ghi A 1 nibble (1/2 byte)
.2.3 Nhóm lệnh di chuyên

RL c,bit


OV A,Rn

Chuyển

OV A,data

Chuyển

dữ liệu

OV A,@Ri

Chuyển

nội dung thanh ghi Rn với thanh ghi A.

OV A,#data

Chuyển

dữ liệu trực tiếp vào thanh ghi A.

OV Rn,data

Chuyển

dữ liệu gián tiếp vào thanh ghi A.

OV Rn,#data


Chuyển

dữ liệu tức thời vào thanh ghi A.

OV data,A

Chuyển

dữ liệu trực tiếp vào thanh ghi Rn.

OV data,Rn

Chuyển

dữ liệu tức thời vào thanh ghi Rn.

OV data,data

Chuyển

nội dung thanh ghi A vào một dừ liệu trực tiếp.

OV data,@Ri

Chuyển

nội dung thanh ghi Rn vào một dữ liệu trục tiếp.

OV data,#data


Chuyển

OV @Ri,A

Chuyển

OV @Ri,data

Chuyển

một dữ liệu trực tiếp vào một dữ liệu trục tiếp.
một dữ liệu gián tiếp vào một dữ liệu trực tiếp.
một dữ liệu tức thời vào một dữ liệu trực tiếp.
nội dung thanh ghi A vào một dữ liệu gián tiếp.
một dữ liệu trực tiếp vào một dữ liệu gián tiếp.

16
17


Condition

Jump If Not <Condition>

Jump If <Condition>

c =1

JNC rel


JC rel

Bit = 1

JNB bit, rel

JB bit, rel / JBC bit, rel

A=0

JNZthiệu
rel
JZ rel
1.4 Giới
điều nếu
khiên
T89C51
Nhảy
cờẢnhớ
MOV @Ri,#data
Chuyên
một
dữ không
liệu tứcđược
thời đặt.
vào một dữ liệu gián tiếp.
JNC
rel về::vỉ
JB

bit,rel
Rn =0
DJNZ
Rn,
rel
:: Nhảy
tương
đốihằng
nếu 16
bit
trực
tiếp
được
đặt. trỏ
MOV DPTR,#data
Chuyên
một
vào
ghicon
dữ toàn
liệu.
Đặc điêm và chức
năng
hoạt
động
củabit
các
ICthanh
họ
MSC-51

hoàn
tương tự
JNB
bit,rel
như nhau,
đây giới
mộttiếp
bộvào
vi
khiển
do hãng
sản
Direct = 0 MOV c,bit
DJNZởbit,rel
direct,
rel:: thiệu
NhảyAT89C51
tương
đốilàtrực
nếu
bit
trựcđiều
không
được ATMEL
đặt
Chuyển
một bit
cờtiếp
nhớ.
JBC

xuất với công
nghệ CMOS

tốc
độ
cao
vào
công
suất
thấp
với
bộ
nhớ
Flash

thế
: Nhảy tương đối nếu bit trực tiếp được đặt, rồi xoá bit.
CJNE
A,data,rel
A # direct MOV bit,c
CJNE
A, direct,
rel
: Chuyến
nhó vào
bit trực
lập trình
được.
Tương
thích với cờ

chuẩn
côngmột
nghiệp
củatiếp.
8051 và 8052 về chân ra và
: So sánh dữ liệu trực tiếp với A và nhảy nếu không bằng.
lệnh.
A # data MOV tập
CJNE A, #data,
rel
A,@A+DPTR
: Chuyển
byte bộ nhớ chưong trình có địa chỉ là @A+DPTR
CJNE
A,#data,rel
:
So
sánh
dữ liệu tức thời với A và nhảy nếu không bằng.
vào
thanh
ghi
A.
Các đặc trưng của AT89C51
Rn # data
CJNE Rn, #data, rel
CJNE Rn,#data,rel
: Sobộ
sánh
dừchuông

liệu tức
thờicóvới
thanh ghi
MOV A,@A+PC
: -Chuyển
nhớ
trình
địanội
chỉdung
là @A+PC
vàoRn và nhảy
4 KBbyte
EPROM
bên
trong.
@Ri # #data
CJNE @Ri, #data, rel
nếu không bằng.
- 128 Byte RAM nội.
thanh
ghi
A.
PO.O CJNE @Ri,#data,rel
: So/nhập
sánh ĩ/o
dữ8liệu
- A,@Ri
4 Port xuất
bit. tức thời với dữ liệu gián tiếp và nhảy nếu
MOVX

không bằng.
Chuyển dữ liệu ngoài (8 bit add) vào thanh ghi A.
P0 .3 MOVX A,@DPTR
- Giao tiếp nối tiếp.
P0 .4
DJNZ Rn,rel @RI,A : Giảm
thanh
ghi Rn
và (16
nhảybitnếu
không
bằng. ghi A.
MOVX
Chuyển
dữ liệu
ngoài
add)
vào thanh
- 64 KB vùng nhớ mã ngoài
@DPTR,A : Giảm thanh dữ liệu trực tiếp và nhảy nếu không bằng.
SET
P0 .7 MOVX
DJNZ data,rel
Chuyến nội dung A ra dữ liệu ngoài (8 bit add).
- 64
KBrẽvùng
nhớ dữ liệu ngoại.
PUSH
data
ẼÃ/VP 1.3.2.5 Nhóm

lệnh
nhánh
POP
data Chuyển nội dung A ra dữ liệu ngoài (16 bit add).
- Xử lý
Boolean
(hoạt
động
bit đơn).
ALE/P
lệnh
đê điều
khiến
lêntrên
chương
trình bao gồm việc gọi hoặc trả lại
XCH Có nhiều
A,Rn
Chuyển
dữ
liệu
trục
tiếp
vào ngăn xếp và tăng SP.
P2 . 6 XCH
từ chương -trình
hoặc
nhánh
điều kiện hay không có điều kiện. Tất cả
210con

vị trí
nhớchia
có thê
địnhcó
vị bit.
A,data
P2 .4 XCH
các lệnh rẽ nhánh
không dữ
ảnhliệu
hưởng
đến vào
cờ. ngăn
Ta cóxếp
thếvàđịnh
trực tiếp
giảmnhãn
SP. cần nhảy tới
A,@RiđềuChuyến
P2 .2 XCHD
4ps
cho
hoạt
động
nhân
hoặc
chia.
mà không
cần


địa
chỉ,
trình
biên
dịch
sẽ
đặt
địa
chỉ
nơi
cần
nhảy
tới vào đúng
A,@R
Trao đôi dữ liệu giữa thanh ghi Rn và thanh ghi A.
P2 . 0 khâu lệnh đã đưa ra.
- Hỗ trợ chuẩn
Trao đối
giaogiữa
tiếpthanh
SPI ghi A và một dữ liệu trực tiếp.
Nhảy có điều kiện:
Trao
đôinăng
giữa các
thanh
ghicủa
A vàA một
dữ liệu gián tiếp.
1.4.1

Sơ đồ và
chức
chân
T89C51
1

Trao đôi giữa nibble thấp (LSN) của thanh ghi A và LSN của
AT89C51 có tất cả 40 chân có chức năng như các đường xuất nhập. Trong
24 chân có tác dụng kép (có nghĩa là 1 chân có 2 chức năng), mỗi đường có
dữ liệu đó
giáncótiếp.
1.3.2.4
Nhóm
lệnhxuất
chuyên
điêu
khiên
thế hoạt
động như
đường
nhập
hoặc
như rẽ
đường
điều khiến hoặc là thành phần
Bảng
1.2
Các
lệnh
nhánh

liệu và bus
chỉ. trình con dùng địa chỉ tuyệt đối.
ACALLcủa các bus dữ
addrll
Gọi địa
chuông
LCALL addrló
Gọi chuông trình con dùng điaụ chỉ dài.
RET
Trở về từ lệnh gọi chương trình con.
RET1
trở về từ lệnh gọi ngắt.
AJMP
addrl
1
Nhảy tuyệt đối.
LJMP
addrló
Nhảy dài.
SJMP
rel
JMP @A+DPTR
Nhảy ngắn.
JZ
rel
Nhảy gián tiếp từ con trỏ dữ liệu.
JNZ
rel
JC rel
Nhảy nếu A=0.

Nhảy nếu A không bằng 0.
Nhảy nếu cờ nhớ được đặt.
Nhảy không điêu kiện : ALJMP, LJMP, SJMP.

18
19


Bit

Tên

P3.0

RXT

Ngõ vào dừ liệu nối tiếp.

P3.1

TXD

Ngõ xuất dữ liệu nối tiếp.

P3.2
P3.3
P3.4
P3.5
P3.6
P3.7


anh ghi

m chương trình

ch luỹ

Chức năng chuyên đôi

INT0\ 1.4.2.2
Ngõ
vào
ngắt cứng thứ 0
-Công
Các
vào
nhớ
bộ
dữ
liên
động:
RA
M
Tín
hiệungõ
2:Bộ
raHình
Công

chân

2 dao
làSơ
ALE
1đồ
công
lànguyên
một
có tác
xung
kép
khoảng
trên AT89C51
các
thờichân
gian21-28
port 0được
đóngdùng
vai
1.2
lý dụng
vitrong
điều
khiển
trò
nhưlàcác
địa đường
chỉ thấpxuất
nênnhập
chốt Ngõ
địa

hoặcchỉ
làhoàn
byte
toàn
cao
tự
của
động.
bus
địa chỉ đối với các thiết bị dùng
INT1A
vào
ngắt
cứng
thứ
1
AT89C51
Bộ dao có
động
128 được
byte RAM
được
ởtích
bênũtrong
họp
bên
chip.
RAM AT89C51,
trong AT89C51
khi sử

bao dụng
gồm
cẫng
port
câng port
2 trong
bộ nhớ mở rộng.
Cácngười
xung
tín
hiệu
ALE
tốc
độthêm
bàngthạch
1/6P2trữ
lần
tần
số
dao
động
trên
chip

POC
- PQ7
.0
-P2
7địa
AT89C51

thành
phần:thiết
phần
kếlưu
chỉ
trữ
cầncó
đa
kết
dụng,
nối
phần
lưu
anh
cáchoá
tụ.từng
Tần bit,
số
thạch
các
bank
anh
TOnhiều
Ngõ
vào
của
TIMER/COUNTER
thứ
0vàchỉ


thế ghi
được
3:cho
Công
làm
3tín
là hiệu
công
đồng

tácbộđặc
dụng
(clock)
kép
trên
cho8051
các
chân
phần
khác
của
Các5V.
hệ
chân
của
thanh
thường
sửCông
dụng
và dùng

các
thanh
AT89C51
ghi
chức
là 12Mhz.
năng
Chân
biệt.
40 (Vcc)
Họ
được
cónốibộ10-17.
lên
nhớ
nguồn
theo
cấuthống.
trúc
XTAL2
TIChân
Ngõ
TĨMER/COƯNTER
thứ
công này
ALEcóđuợc
nhiêu
dùng
chức
làmvào

năng,
ngõ
vào
các
xung
công lập
dụng
trình
chuyên
cho
EPROM
đôi1 có
liên
trong
hệAT89C51.
vớiliệu.
các đặc
tính
Harvard:
những
vùng
bộcủa
nhớ
riêng
biệt
cho
chương
trình

dữ

Chương
đặc
biệt
của
8951
như

bảng
sau:
trình

dữ
liệu

thể
chứa
bên
trong
89C51
nhưng
AT89C51
vẫn

thể
kết
nối
WR\
hiệu ghi dữAccess):
liệu lên bộ nhớ ngoài
- Ngõ tín hiệu Tín

EA \(Externaỉ
với 64K byte bộ nhớ chương trìnhCvà
2 64K byte dữ liệu.
RD\
Tín ởhiệu
đọc31bộthường
nhớ dữđược
liệu ngoài
Tín hiệu vào EA\
chân
mắc lên mức 1 hoặc mức 0. Neu ở
Có hai đặc tính cần chú ý là:
mức 1, AT89C51 thi hành chương trình từ EPROM nội trong khoảng địa chỉ thấp 4
Nội dung
Thanh
ghi 0,ghi89C51
Nội
dung
Bảng
1.3cổng
Chúc
năng
cácđã
chân
port3
Kbyte. -Neu
mức
sẽ
thi
hành

chương
trình
từ định
bộ nhớ
ChânvàEA\
Cácở thanh
và các
xuất
nhập
được
vị mở
trongrộng.
bộ nhớ

được
lấy
làm
chân
cấp
nguồn
12V
khi
lập
trình
cho
EPROM
trong
AT89C51.
thể
truy

xuất
trục
tiếp
giống
như
các
địa
chỉ
bộ
nhớ
khác.
0000H
XXX00000B
XTAL1

- Ngõ
tín xếp
hiệutrong
RST (Reset):
Ngăn
RAM nội 0XX00000B
nhỏ hơn so với RAM ngoại như các bộ vi điều
Ngõkhiên
vào RST ở chân 9 là ngõ vào Reset của AT89C51.
Khi ngõ vào tín hiệu
GND
Các thanh ghi định thời
này đưa lên cao ít nhất là 2 chu kỳ máy, các thanh ghi bên trong được nạp nhũng
khác.
giá trị thích

họp đe khởi động hệ thống. Khi cấp điện mạch tự động khởi động.
SCON

Trạng
thái trong
của tất
cả các thanh
của
8051
RAM
AT89C51
đượcghi
phân
chia
nhưsau
sau:khi khởi động hệ thống được
SBUFbên
tóm tắt trong bảng sau:
Mạch
động
thạch
PTR
0000H
PCON(HMOS)
OXXXXXXXB
CácHình
blank1.4
thanh
ghidao
có địa

chỉdùng
từ 00H
đến anh
1FH.cho AT89C51
1.4.2PCON(CMOS)
Can trúc bên trong của
A T89C51
rt 0-3
0XXX0000B
RAM địa chỉ hoá từng bít có địa chỉ từ 20H đến 2FH.
Các chip vi điều khiến dùng làm thành phần trung tâm trong các thiết kế
II
hướng điềuRAM
khiển.đaBộ
nhớcóthường
bé hơn nhiều so với một hệ vi xử lý.
dụng
địa chỉcótừdung
30H lượng
đến 7FH.
Ị—I 12MHZ
Nó còn không có ổ đĩa và hệ điều hành. Chương trình điều khiển phải thường trú
C1
thanh
ghi
chức
năng
đặc
biệt


chỉ
từ 80H
đến FFH.
trong ROM.Các
Chương
trình
vẫn
được
lưu
giữ
ngay
cả
mất
Do lý do trên, chip
Bảng
1.4
Nội
dung
các
thanh
sau
khi điện.
Reset
Byte
Địađịa
chighi
Bitkhi
Byte Địa chỉ Bit
8051 có không gian bộ nhớ riêng cho chương
FF

trình và dữ liệu. Cả bộ nhớ chương
II
F0
điều
khiên
trình1.4.1.2
và bộ nhớCác
dữ ngõ
liệu tín
đềuhiệu
nằm
trong
chip. Tuy nhiên ta có thể mở rộng bộ nhớ
30pF
chương trình và bộ nhớ dữ liệu bằng cách sử dụng các chip nhớ bên ngoài với dung
- Ngỗ tín hiệu PSEN (Program store enahle):
lượng tối đa là 64K cho bộ nhớ chương trình và 64K cho bộ nhớ dừ liệu.
Vùng RAM đa mục đích
PSEN làỉ tín
ngõ ra ởtrình
chânR 29
có tác dụng cho phép đọc bộ nhớ chuông
1.4.2.
Bộ hiệu
nhớ chương
OM
EO
trình mở rộng thường
được
nối

đến
chân
Enable) của EPROM cho
Hình 1.3 So’ đồ khối bộ viOE\
điều(Output
khiển AT89C51
trình luu giữ chưong trình điều khiến chip 8051. Sau khi khởi
phép đọcBộ
cácnhớ
bytechưong
mã lệnh.
động, hệ thống bắt đầu thực hiện chương
trình từ địa chỉ 0000H. Khi chương
DO
PSEN ở mức thấp trong thời gian Microcontroller 89C51 lấy lệnh. Các mã
trình lớn quá kích thước bộ nhớ chương trình bên trong chip, chương trình này phải
lệnh của chươngCác
trình được
đọc
từ EPROM qua bus dừ40liệu và được chốt vào thanh
xuất
nhập
được1.4.1.1
nạp vào bộ nhớcống
chương
trình
ngoài. Neu chương trình
3 0 nằm trong ROM nội, chân
B8 lệnh. Khi 89C51
ghi lệnh bên trong AT89C51 để giải mã

thi hành chương trình
38
/EA phảiCong
được 0:
treo
lên
5V.
Neu
chương
trình

ROM
ngoài,
đất.
3 chânchân
có 2 1.chức năng ở các
32 /EA
- 39 phải
của nối
89C51.
trong EPROM nộiCống
PSEN0sẽlàở cổng
mức logic
7
Việc
ở bộ nhớ
ngoài
phảimở
kết rộng
họp

chân tín hiệu truy xuất
3 6 với
Trongtruy
cácxuất
thiếtchương
kế cỡ trình
nhỏ không
dùng
bộ nhớ
3 nó có chức năng như các
- Ngõ
tínvới
hiệucác
điêuthiết
khiên
(A BO
ddress
Enahle):
5rộng, nó được kết họp giữa
bộ
nhớ I/O.
ngoài
/PSEN.
đường
Đối
kếALE
cở lớn
có bộ Latch
nhớ mở
34

3
bus địa Khi
chỉ và
bus
dữ
liệu.
AT89C51 truy xuất bộ nhớ bên ngoài, cống3 1 0 có chức năng là bus địa
30
chỉ và bus
dữtrọng
liệu
do
phải
táchthanh
các đường
dữchân
liệu

địaCác
chỉ.chân
Tín hiệu
ALE

Cổng
ỉ: Cổng
là cổng
I/O
trên
1-8.
đượcraký

hiệu
Quan
nhấtđó1trong
các
ghi các
trên

thanh
2 9 ghi đếm chương trình, nó
chân
thứ
30
dùng
làm
tín
hiệu
điều
khiến
đế
giải
đa
hợp
các
đường
địa
chỉ

dữ
Pl.o,
Pl.l,

P1.2,
...
pl.7

thê
dùng
cho
giao
tiếp
với
các
thiết
bị
ngoài
nếu
cần.
được đặt lại 0000H. Khi RST trở lại mức thấp, việc thi2 8hành chương trình luôn bắt
27
liệu
kết
nối đầu
chúng
với
IC chốt.
Cốngkhi
không

chức
năng
khác,

vì vậy
chúng
chỉ được
cho0000H.
giao tiếp
vớidung
các
26 dùng
đầu
ở 1địa
chỉ
tiên
trong
bộ nhớ
trong
chương
trình:
địa chỉ
Nội
25
thiếtRAM
bị bêntrên
ngoài.
24
của
chip không bị thay đối bởi lệnh Reset.
2
3
99
98


24
22
21
23
20

22
21


26
25

90

97

96

95

94

93

P1

92 91 90


lại 8 24- bit, chế độ 3 là chế độ định thời chia sẻ và có hoạt động khác nhau cho từng
23

22bộ
21

20

định thời.

1F
18
17đặc
10

ông định địa chì bít

Các Timer của 89C51 được

8D
Không định địa chỉ bit
8C
8B
định địa
chỉ bit6
truy8AxuấtKhông
bởi việc
dùng
89
Không định địa chi bít


thanh ghi

biệt như sau :
Bảng 1.5 Các thanh ghi chúc
đặcđịnh
biệtđịađiều
Không
chỉ bitkhiến timer
88 năng

0F
08
07
00

87
83
82
81
80

THI
‘THO
"TLI
chức
năng
"TLO
TMOD
"PCON


Không định địa chỉ bít
8F 8E 8D 8C 8B 8A 89
Không định địa chi bít

DPH
"DPL
'sp
"po

Không định địa chi bít
Không định địa chỉ bit
Không định địa chỉ bít
87
RAM

"TCON

86

85

84

83

82 81 80

CÁC THANH GHI CHỨC NĂNG ĐẶC BIỆT


1.4.3.2 Hoạt động ngắt
Hình 1.5 Bản đồ bộ nhớ data trên chíp AT89C51
Có 5 nguyên
nhânđộng
đế tạo
ra năng
ngắt trong
ĐóT89C51
là 2 ngắt ngoài, hai ngắt do
1.4.3
Các hoạt
chức
chỉnh 8051.
trong A
bộ định thời và một ngắt do cống nối tiếp. Khi ta thiết lập trạng thái ban đầu
Hoạt động
(sau1.4.3.1
khi khởi động),
tất cảđịnh
các thời
ngắt đều bị vô hiệu hoá và sau đó chúng được cho
phép riêng
rẽ
bằng
phần
mềm.
Bộ định thời của Timer là một chuỗi các Flip Flop được chia làm 2, nó nhận
tín hiệuKhi
vàomột
là một

xungnhận,
clock,giáxung
clocknạp
được
vào Flip
Floptrình
thứ được
nhất
ngắtnguồn
được chấp
trị được
chođưa
bộ đếm
chương

xung
clock
của
Flip
Flop
thứ
hai


cũng
chia
tần
số
clock
này

cho
2

cứ
gọi là véc tơ ngắt. Véc tơ ngắt là địa chỉ bắt đầu của trình phục vụ ngắt của các ngắt
tiếp
tục.
tương úng.

kế được
tiếp chia
2, nên
Cácmỗi
véc tầng
tơ ngắt
cho cho
ở bảng
sau :Timer n tầng phải chia tần số clock ngõ
n
vào
cho
2
.
Ngõ
ra
của
tầng
cuối
cùng


clock của Flip Flop tràn Timer hoặc cò' mà
thanh ghi mặc định R0 - R7
ACCbộ
nó kiểm tra bởi phần mềm hoặc sinh ra ngắt. Giá trị nhị phân trong các FF của
Timer
có the đượcĐịa
nghĩ
xung địa
clock
các sự kiện quan trọng bởi vì
Thanh ghi
Chức
năng
chỉnhư đếm Đảnh
chỉ hoặc
từng hỉt
Timer được khởi động. Ví dụ Timer 16 bit có thê đếm đến từ FFFFH sang 0000H.PSW
Bảng 1.6 Địa
TCON
Điều khiển
88H
Cóchỉ các vecto ngắt
Các bộ định thòi dùng đế tạo ra các khoảng thời gian khác nhau, dùng để
TMOD
Chế độ
89H để tạo tốc độ Không
đếm
sự kiện hoặc dùng
baud cho việc truyền thông nối tiếp. 1P
Trong

8051 có hai bộ định thời là T0 và TI. Việc lựa chọn chế độ hoạt động cho các Timer
TLO
Byte cao timer 0
8AH
Không
này nhờ vào thanh ghi TMOD. Còn việc điều khiển các Timer hoạt động nhờ vào
thanh
ghitimer
TCON.
4 chế độ hoạt động
cho các Timer. Chế độ 0 là chế độ định
TL1
Byte
thấp
0 Có
8BH
Không
thời 13 - bit, chế độ 1 là chế độ định thời 16-bit, chế độ 2 là chế độ định thời tự nạp
THO
Byte cao timer 1
8CH
Không
THI

Byte thấp timer 1

Nguồn ngắt Cờ ngắt

8DH


Không

Địa chỉ vecto ngắt

Reset hệ thống

0000H

Ngắt ngoài 0

0003H

Bộ định thời 0

000BH

Ngắt ngoài 1

0013H

Bộ định thời 1

001BH

Port nối tiếpRI or TI

0023H

IE


P2

SBUF
SCON

26
25


Bộ định thời TF2
2 or EXF2

HANH GHI

002BH

NỘI DUNG

Bộ đếm chương trình PC
0000H
Thanh chứa A
Thanh ghi B
PSW
SP
DPRT
Port 0 đến Port 3
IP
IE

Khi chương trình đang thực hiện, nếu có ngắt với ưu tiên cao xuất hiện, trình

phục vụ ngắt cho ngắt có mức ưu tiên thấp tạm dừng. Ta không thế tạm dừng một
chương trình ngắt có mức ưu tiên cao hơn. Khi có 2 ngắt khác nhau xuất hiện đồng
thời, ngắt có mực ưu tiên cao sẽ được phục vụ trước. Khi 2 ngắt có cùng mức ưu tiên
xuất hiện đồng thời, chuỗi vòng cổ định sẽ xác định ngắt bào được phục vụ trước.
Chuỗi vòng này sẽ là ngắt ngoài 0, ngắt ngoài 1, ngắt do bộ định thời 0, ngắt do
bộ định
thời 1, ngắt do port nối tiếp, ngắt do bộ định thời 2 (đối với 8052).
0000H
1.4.3.3

Hoạt động Reset

AT89C51 được reset bằng cách giữ chân RST ở mức cao tối thiểu hai chu kỳ
xxxOOOOOB
máy và sau đó chuyến về mức thấp. Trạng thái của tất cả các thanh ghi sau khi reset
OxxOOOOOB
hệ thống
như sau:

Các thanh ghi định thời
SCON
SBUF
PCON (HMOS)

OxxxxxxxB

PCON (CMOS)

OxxxOOOOB


Bảng 1.7 Trạng thái các thanh ghi sau reset

Khi khởi động hệ thông thanh ghi PC được nạp địa chỉ 0000H, khi đó chương
trình sẽ bắt đầu tù' địa chỉ đầu tiên trong bộ nhớ chương trình. Nội dung của RAM
trên chip không bị ảnh hưởng khi ta khởi động hệ thống.

28
27


PHÂN II
PHẢN TÍCH VÀ THI ÉT KÉ
CHƯƠNG II
MỘT SÓ Bộ PHẬN CHỨC NẤNG CỦA ROBOT
Dựa trên mục tiêu, nhiệm vụ và yêu cầu của đề tài. Robot của em thiết kế sẽ
có 2 bánh chủ động nằm ở phía sau được gắn vào 2 động cơ DC. Phía trước là 1
bánh xe có khả năng điều hướng cho robot.
Đe robot có thể dò đường theo các vạch đen thì phía trước robot cần lắp đặt
hệ thống cảm biến nhận vạch đế phát hiện vạch đen và gửi thông tin về khối điều
khiến trung tâm xử lý.
2.1 Hệ thống cảm biến nhận vạch
Có thế nói đây là phần quan trọng nhất trong robot dò đường, quyết định khả
năng di chuyến của robot. Neu bộ phận này hoạt động không chính xác, robot sẽ bị
lạc đường. Như vậy, để có thể hoàn thành mục tiêu là đi đúng đường đi đã định
trước, bộ phận này phải có khả năng nhận biết vạch đen trên nền trắng, đồng thời có
khả năng nhận biết được các chỗ đường cong, ngã ba, ngã tư đe đưa về bộ điều
khiển nhằm điều khiển robot đi theo con đường đã định sẵn.
2.1.1

Nguyên lý cơ bản


Chúng ta đều biết rằng ánh sáng bao gồm 7 màu co bản: đỏ, cam, vàng, lục,
lam, tím, xám, trắng. Ánh sáng trắng là ánh sáng tổng hợp của 7 loại ánh sáng đon
sắc trên. Sở dĩ chúng ta có thể thấy vật màu đỏ, vật kia màu vàng là do khi ánh sáng
trắng chiếu tới, những ánh sáng màu khác bị hấp thụ, chỉ còn những ánh sang màu
đỏ(hay vàng) là bị phản xạ lại. Mắt chúng ta thu nhận được những ánh sáng này và
chúng ta nhận biết được màu sắc của vật.
Dựa vào nguyên lý trên, người ta đã cho ra đời những vật biết nhận biết màu
sắc. Những cảm biến này khá đắt so với điều kiện kinh tế của sinh viên. Rõ ràng với
môi trường di chuyển của robot đã nêu thì ta sẽ chỉ cần một cảm biến nhận biết
được noi nào sáng, nơi nào tối là đủ. Với những vạch đen đó sẽ là nơi tối, với nền
trắng đó sẽ là nơi sáng và nhiệm vụ của robot là sẽ đi theo những vạch tối đó.
Chúng ta có the làm ra các cảm biến chuyên dụng nhưng giá thành rất cao.

29


2.1.2

Các loại cảm biên

Trên thị trường hiện nay có các loại cảm biến đon giản phù hợp với đề tài
như cảm biến quang, cảm biến hồng ngoại... Trong phạm vi đề tài này em sử dụng
cảm biến hồng ngoại do cảm biến hồng ngoại dễ sử dụng, giá thành rẻ, được cung
cấp nhiều trên thị trường và có tính ôn định cao.
2.1.2.1

Cảm biến hồng ngoại

Cảm biến hồng ngoại là một dạng cảm biến có khả năng nhận biết ánh sáng

hồng ngoại chiếu vào. Do đó, chúng ta sử dụng một cặp led thu phát hồng ngoại đế
nhận biết vạch đen.
Mô hình nguyên lý sử dụng cặp led thu phát hồng ngoại như sau:

Hình 2.1 Nguyên tắc nhận biết vạch của led thu phát hồng ngoại
Led phát sẽ phát tia hồng ngoại hướng về phía mặt phang đường đi, đường đi
sẽ phản xạ tia này lại led nhận. Tuỳ vào màu sắc đường đi tối hay sáng mà cường độ
tia hồng ngoại phản xạ lại ít hay nhiều.
Một vạch cảm biến hồng ngoại gồm một LED phát hồng ngoại (inírared
emitter) và một transistor thu hồng ngoại (infrared phototrasistor).
Nguyên tắc hoạt động: Khi cường độ phát càng lớn thì dòng điện chạy qua
phototransistor càng lớn. Khi không có ánh sáng chiếu tới, transistor tắt, tín hiệu
ngõ ra là mức 1. Khi có ánh sáng chiếu tới transistor dẫn, xuất hiện dòng điện ic.
Neu cường độ ánh sáng đủ mạnh, transistor bị bão hoà và cực c được nối đất. ơ đây
chúng ta cần nhận biết là có vạch hay không có vạch do đó chúng ta cần tạo ra một
điện áp ngưỡng. Neu áp ra nhỏ áp ngưỡng túc là có vạch, ngược lại không có vạch.
Theo trên, chúng ta nhận thấy rằng mạch điện khá đon giản, tuy nhiên mạch
này rất dễ bị nhiễu với ánh sáng tự’ nhiên và ánh đèn vì vậy ta phải che chắn thật tốt.

30


Một cặp led thi phát hồng ngoại.
5V

I



R1

270

R2
10K

tín hiêu ra
PHAT1

D1
xz D10
^ THU1

Hình 2.2 Sơ đồ nguyên lý thu phát hồng ngoại
2.1.2.2

Cảm biến quang

về nguyên tắc dùng ánh sáng khả biến về nhận biết vạch đen cũng tương tự
như dùng ánh sáng hồng ngoại. Thay vì dùng LED phát hồng ngoại, ta sẽ dùng LED
đơn sắc và thay phototransistor bởi quang trở.

Hình 2.3 Hình ảnh quang trở thục tế

31


Quang trở là một loại điện trở đặc biệt, điện trở của quang trở thay đôi tuỳ
thuộc vào cường độ ánh sáng chiếu lên nó. Trên thị trường hiện nay có hai loại
quang trở:
- Dạng thứ nhất có điện trở giảm khi đuợc chiếu sáng (nedative co-effícient)

- Dạng thứ hai có điện trở tăng khi đuợc chiếu sáng (positive co-efficient)

Hình 2.4 Nguyên lý thu dùng ánh sáng khả biến
2.2 Động cơ DC
Động CO' điện một chiều là động CO' điện hoạt động với dòng điện một chiều
hay còn gọi là điện DC. Có rất nhiều loại động cơ DC được bán trên thị trường.
Chọn loại nào cho phù hợp với thiết kế là rất quan trọng.
2.2.1

Cấn tạo

Động cơ điện DC thường được cấu tạo bơi 2 thành phần chính là Stator và
Rotor. Stator của động cơ điện 1 chiều thường là 1 hay nhiều cặp nam châm vĩnh
cửu hay nam châm điện, rotor có các cuộn dây quấn và được nối với nguồn điện
một chiều, một phần quan trọng khác của động cơ điện 1 chiều là bộ phận chỉnh
lưu, nó có nhiệm vụ là đối chiều dòng điện trong khi chuyến động quay của rotor là
liên tục. Thông thường bộ phận này gồm một bộ cố góp và một bộ chổi than tiếp
xúc với cổ góp.
2.2.2

Nguyên tắc hoạt động

Phần chính của động cơ điện gồm phần đứng yên (stator) và phần chuyến
động (rotor) được quấn nhiều vòng dây dẫn hay có nam châm vĩnh cửu. Khi cuộn
dây trên rotor và stator được nối với nguồn điện, xung quanh nó tồn tại các tù'

32


trường, sự tương tác từ trường của rotor và stator tạo ra chuyên động quay của rotor

quanh trục hay 1 mô men.
Phần lớn các động cơ điện hoạt động theo nguyên lý điện từ, nhưng loại
động cơ dựa trên nguyên lý khác như lực tĩnh điện và hiện ứng điện áp cũng được
sử dụng. Nguyên lý cơ bản mà các động cơ điện từ dựa vào là có một lực cơ học
trên một cuộn dây có dòng điện chạy qua nằm trong một từ trường. Lực này theo
mô tả của định luật lực Lorentz và vuông góc với cuộn dây với cả từ trường.
Phần lớn động cơ từ đều xoay nhưng cũng có động cơ tuyến tính. Trong
động cơ xoay, phần chuyển động được gọi là rotor, và phần đúng yên gọi là stator.
Khi hoạt động, động cơ điện một chiều hoạt động theo nguyên tắc sau:

Pha 1: Từ trường của rotor cùng cực với stator, dễ đẩy nhau tạp ra chuyển động
quay của rotor

Pha 2: Rotor tiếp tục quay

33


Pha 3: Bộ phận chỉnh điện sẽ đối cực sao cho tù' trường giữa stator và rotor cùng
dấu, trở lại pha 1.
2.2.3

Điên khiên tôc độ động cơ DC

Thông thường, tốc độ quay của một động cơ điện một chiều tỷ lệ với điện áp
đặt vào nó, và ngẫu lực quay tỷ lệ với dòng điện. Điều khiển tốc độ của động cơ có
thê bằng cách điều khiến các điếm chia điện áp của bình ắc quy, điều khiến bộ cấp
nguồn thay đổi được, dùng điện trở hoặc mạch điện tử... Chiều quay của động cơ có
thế thay đổi được bằng cách thay đổi chiều nối dây của phần kích từ, hoặc phần
ứng, nhưng không thê được nêu thay đôi cả hai. Thông thường sẽ được thực hiện

bằng các bộ công tắc tơ đặc biệt (Công tắc tơ đổi chiều).
Điện áp tác dụng có thể thay đồi bằng cách xen vào mạch một điện trở nối
tiếp hoặc sử dụng một thiết bị điện tử điều khiển kiểu chuyển mạch lắp bằng
Thyristor, transistor hoặc loại cố điến hơn nữa bằng cách đèn chình lưu hồ quang
Thuỷ ngân. Trong một mạch điện gọi là mạch băm điện áp, điện áp trung bình đặt
vào động cơ thay đổi bằng cách chuyển mạch cung cấp thật nhanh. Khi tỷ lệ thời
gian ơn đến thời gian off thay đối sẽ làm thay đối điện áp trung bình. Tỷ lệ phần
trăm thời gian “on” trong một chu kỳ chuyến mạch nhân với điện áp cấp nguồn sẽ
cho điện áp trung bình vào động cơ. Như vậy với điện áp nguồn cung cấp là 100W,
và tỷ lệ thời gian ơn là 25% thì điện áp trung bình là 25V. Trong thời gian off, điện
áp cảm ứng của phần ứng sẽ làm cho dòng điện không bị gián đoạn, qua một đi ốt
gọi là đi ốt phi hồi, nối song song với động cơ. Tại thời điểm này, dòng điện của
mạch cung cấp sẽ bằng không trong khi dòng điện qua động cơ vẫn khác không và
dòng trung bình của động cơ vẫn luôn lớn hơn dòng điện trong mạch cung cấp, trừ

34


SI

S2

S3

S4

Trạng thái của động cơ

1


0

1

0

Quay thuận

0

1

0

1

Quay ngược

1

1

0

0

1

0


0

1

động cơ
0khi tỷ0 lệ thờiHãm
Theo
gian sơ
“ơn”
đồ đạt
trên,đến
ta thấy
100%.
cầuơ Htỷ gồm
lệ 100%
1 motor,
“ơn”2 này,
dây cấp
dòngnguồn
qua động
(1 vcccơvàvà1
GND)
dòng
cung
cộng
cấp
với
bằng
4
khoá.

nhau.
Ta
Mạch

thê
đóng
tác
cắt
động
tức
đê
thời
đóng
này
khoá
ít
bị
bất
tốn
cứ
hao
lúc
năng
nào
lượng
và bấthơn
cứ
1
Hãm
động


1
khoá
mạchnào.
dùngChúng
điện trở.
ta có
Phương
4 khoápháp
vậy này
sẽ có
gọi16làtrạng
phương
thái.pháp
Tuyđiều
nhiên
khiển
chỉ có
kiểu4 điều
trạngbiến
thái
1đuợc
0
độ rộng
sử Chập
dụng.
xung điện
(PWM
Những -trạng
pulsethái

width
cònmodulation),
lại sẽ khôngvàhoạt
thường
độngđược
hoặcđiều
gâykhiến
ra chập
bằng
điện.
vi
Cách
điều
khiến.
hoạt
động
Đôi
của
khi
cầu
người
H
được
ta
còn
tóm
sử
tắt
dụng
như

sau:
mạch
lọc
đầu
ra
đế
làm
bằng
phắng
điện
0
Chập điện
1
áp đầu ra và giảm bớt tạp nhiễu của động cơ.
Bảng 2.1 Cách hoạt động của mạch cầu H
Trong phạm vi đồ án này em sử dụng loại động cơ bước. Động cơ bước là
một loại động cơ điện có nguyên lý và ứng dụng khác biệt với đa số các loại động
cơ điện thông thường. Chúng thực chất là một động cơ đồng bộ dùng đế biến đổi
các tín hiệu điều khiển dưới dạng các xung điện rời rạc kế tiếp nhau thành các
chuyến động góc quay hoặc các chuyến động của rotor có khả năng cố định rotor
vào các vị trí cần thiết.

về cấu tạo, động cơ bước có thể được coi là tống họp của hai loại động cơ:
Động cơ một chiều không tiếp xúc và động cơ đồng bộ giảm tốc công suất nhỏ.
Động cơ bước không quay theo cơ chế thông thường, chúng quay theo tùng
bước nên có độ chính xác rất cao về mặt điều khiển học. Chúng làm việc nhờ các bộ
chuyển mạch điện tử đưa các tín hiệu điều khiển vào stator theo thứ tự và một tần số
nhất định. Tông số góc quay của rotor tương ứng với số lần chuyên mạch, cũng như
chiều quay và tốc độ quay của rotor phụ thuộc vào thứ tự chuyển đổi và tần số
đây ta xét: S,Sx

chuyển Ở
đổi.
2.2.4.2
Mạch
cầu Hđộng
dùngcơ
reỉay
2.2.4
Điều khiên
hang mạch câu H
Trên thựcMạch
tế cócầu
nhiều
2.2.4.1
H cách đế tạo ra các khoá S1,S1,S2,S2. Giả sử dòng qua
động cơ tương đối lớn, chúng ta nên chọn khoá đóng ngắt là Relay.
Relay là một dạng công tắc (switch) cơ điện (electrical mechanical device).
Gọi là công tắc cơ điện vì chúng gồm các tiếp điếm cơ được điều khiến đóng mở
bằng dòng điện. Với khả năng đóng mở các tiếp điểm, Relay đúng là một lựa chọn
tốt đế làm khoá cho mạch cầu H. Thêm nữa chúng lại được điều khiển bằng tín hiệu
điện, nghĩa là chúng ta có thể dùng vi điều khiển để điều khiển Relay, qua đó điều
khiển mạch cầu H.
Nguyên tắc hoạt động của Relay: Khi có một dòng điện 12V hoặc 24V...
(tuỳ theo từng loại Relay) chạy qua cuộn dây (cuộn hút), cuộn dây sẽ trở thành một
?v
nam châm điện hút cực của công tắc làm đóng Relay, dòng điện chạy qua Relay về
động cơ. Tuy nhiên, khi sử dụng sơ đồ này, cần chú ý thêm đi ốt vào cuộn hút của
mỗi Relay nhằm ngăn chặn dòng điện từ cuộn hút phóng ngược về bộ vi điều khiển,
sẽ làm giảm tuối thọ của vi điều khiến.
Mạch cầu H dùng Relay cóA ưu điểm làBdễ chế tạo, chịu dòng cao, đặc biệt

nếu thay Relay bằng các linh kiện tương đương như contactor, dòng điện tải có thể

GND

Hình 2.5 Sơ đồ mạch cầu H

36
35


lên đến hàng trăm ampe. Tuy nhiên, do là thiết bị cơ khí nên tốc độ đóng/ mở cửa
Relay rất chậm, nếu đóng mở quá nhanh có thê dẫn đến hiện tượng dính tiếp điếm
và hư hỏng. Vì vậy, mạch cầu H bàng Relay không được dùng trong phương pháp
điều khiên tốc độ động cơ bằng PWM.



Hình 2.6 Sơ đồ nguyên lý mạch cầu H sử dụng Relay
2.2.4.3

Mạch câu H dùng BJT công suât

BJT là một linh kiện bán dẫn có khả năng làm việc như một khoá điện tử có
tần số đáp ứng cao. Thích hợp cho sử dụng trong phương pháp điều khiển động cơ
sử dụng PWM. Trong thị trường có nhiều loại BJT có công suất khác nhau. Nhưng
ở đây e sử dụng cặp BJT công suất vừa đó là TIP41C và TIP42C. Hai loại BJT này
có thể chịu được dòng điện đi qua Colector và Emitor là 6A. Điện áp làm việc có
thể lên đến 1

oov.


Nhược điếm lớn nhất của mạch cầu H dùng BJT là công suất của BJT thường
nhỏ, vì vậy với motor công suất lớn thì BJT ít được sử dụng. Mạch điện kích cho
BJT cần tính toán rất kỹ để đưa BJT vào trạng thái bão hoà, nếu không sẽ hỏng
BJT. Mặt khác, điện trở CE của BJT khi bão hoa cũng tương đối lớn, BJT vì vậy có
thê bị nóng.

37


k

lN4001

1N40Ũ1

vs

—VAr



TIP42C

Q3

>
mj

DI


Y Q0-1

TIP42C


QO-3

^Motor

"L 2N39C

2H 3904

GND

>

GND
1K

<

>

Q4

1K

L2 TIP41C

DI

TIP41C

J

Dl

^1N4001 1N4CC1

GND

Hình 2.7 So’ đồ nguyên lý mạch cầu H dùng BJT công suất
2.2.4.4

Mạch cầu H dùng MOSFET

MOSFET (Metal Oxide Semeconductor Field-Effect Transisor) là Transisor
hiệu ứng trường có dùng kim loại và oxit bán dẫn.
MOSFET thường được dùng thay các BJT trong các mạch cầu H vì dòng mà
linh kiện bán dẫn này có thê dẫn rất cao, thích hợp cho các mạch công suất lớn. Do
cách thức hoạt động, có thể hình dung MOSFET kênh N tương đương một BJT loại
npn và MOSFET kênh p tương đương BJT loại pnp. Thông thường các nhà sản xuất
MOSFET thường tạo ra 1 cặp MOSFET gồm 1 linh kiện kênh N và 1 linh kiện kênh
p, 2 MOSFET này có thông số tương đồng nhau và thường được dùng cùng nhau.
Một ví dụ dùng 2 MOSFET tương đồng là các mạch số CMOS (Complemetary
MOS). Cũng giống như BJT, khi dùng MOSFET cho mạch cầu H, mỗi loại
MOSFET chỉ thích hợp với 1 vị trí nhất định, MOSFET kênh N được dùng cho các
khoá phía dưới và MOSFET kênh p dùng cho các khoá phía trên.


38


V5

Hình 2.8 Sơ đồ nguyên lý mạch cầu H dùng MOSFET
2.2.4.5

Mạch cầu dùng Relay kết hợp với FET

Với những gì trình bày ở trên thì cầu H dùng cho robot là sự lựa chọn tối ưu
hơn cả. Tuy nhiên mạch cầu H khá phức tạp và chúng ta cần đến cầu H khi có yêu
cầu tốc độ đảo chiều động cơ nhanh. Tốc độ đảo chiều động cơ cho robot không
nhất thiết phải nhanh. Vì vậy chúng ta có mạch đảo chiều động cơ ít phức tạp hơn
dùng Relay kết hợp với FET.

ROLE2

Khi FET được đóng động cơ quay theo chiều thuận. Khi đóng FET kết hợp
với đóng FET động cơ DC sẽ quay theo chiều ngược lại. Hai diode dùng đế bảo vệ
cho FET và cuộn dây của Relay.

39


2.2.5

Điều khiên tốc độ động cơ hăng phương pháp PWM

Trong quá trình di chuyến robot, có những lúc chúng ta cần robot chạy thật

nhanh, đôi khi có những lúc ta lại cần nó chạy chậm. Ví dụ ở những đoạn đường
thắng, những lúc robot lên dốc thì ta phải cho robot chạy nhanh. Còn ở những khúc
cua, lúc robot bằng qua rừng thì ta lại cần tốc độ thấp... Thật ra chúng ta có thế
dùng cơ khí để thay đổi tốc độ động cơ như: bánh răng giảm tốc, hộp số... nhưng
cách này không linh hoạt và có thế gặp khó khăn. Thật may mắn, chúng ta có thế
dùng điện đế thay đối tốc độ động cơ một cách linh hoạt hơn nhiều. Em muốn nói
đến phương pháp điều chế xung PWM.
Nguyên tắc chung của phương pháp này, đó là: khi thay đối điện áp cấp cho
động cơ, tốc độ động cơ cũng thay đối theo. Với điện áp cấp cho động cơ là analog,
việc thay đối điện áp rất bất tiện. Nhưng hiện nay, đa số các bộ điều khiển là dạng
số, do đó, chúng ta dễ dàng thực hiện điều này. Một chuỗi xung có chu kỳ nhiệm vụ
(duty cycle) thay đôi sẽ tạo ra một điện áp trung bình thay đôi và có tác dụng như
một điện áp analog cung cấp cho động cơ.

Hình 2.10 Phương pháp điều khiến động cơ bằng PWM
Điện áp trung bình đầu ra được tính như sau:
Unun g kM=U M „.ĨMỊ!t(2.1)

Trong đó :

ƯMax là

điện áp cực đại

THigh là thời gian xung ở mức
cao
T là chu kỳ xung
Duty Cycle được định nghĩa là tỉ lệ phần trăm giữa thời gian xung ở mức cao
và thời gian chu kỳ xung.
Duty Cycỉe =ĩmỉL' 100%

(2.2)

40


2.3 Nguồn nuôi
Nguồn nuôi được sử dụng cho robot là loại nguồn 12V DC cho điều khiến
động cơ và nguồn 5V DC cho khối mạch điều khiển trung tâm và mạch cảm biến
nhận vạch.
Loại nguồn này chúng ta có thế tìm nhiều trên thị trường như các loại ác quy,
pin lithium - ion.... Đây là các loại thiết bị có khả năng tích trữ điện năng dưới
dạng hoá năng và có thế cung cấp năng lượng dưới dạng điện năng cho các thiết bị
ngoài khi cần thiết.

Hình 2.11 Một loại ác quy khô

41


CHƯƠNG III
TỈNH TOÁN VÀ THIẾT KẾ
3.1 Sơ đồ khối tông quát
Dựa vào yêu cầu thiết kế và yêu cầu chức năng của robot. Em có sơ đồ khối
tổng quát cho robot như sau:
KHÔỉ NGUỒN

KHÓI ĐIỀU KHIÊN
TRUNG TẦM

KHỐI CẢM BĨẾN


ĩ>

KHỎ ỉ Hỉ ẺN THÌ

iz

ĐÒNG ca TRẢ ĩ

c

KHÔI CÔNG SUÂT
ĐIỀU KHIÊN ĐỘNG cơ

s DÕNG Cơ PHẢ ỉ

Hình 3.1 Sơ đồ khối tổng quát
Trong đó:
-

Khối nguồn: Cung cấp nguồn điện 12V DC và 5V DC cho hệ thống.

-

Khối cảm biến: Thu thập dữ liệu về đường đi của robot rồi gửi về khối điều
khiên trung tâm đê xử lý.

-

Khối hiến thị: Hiến thị tốc độ của 2 động cơ dưới dạng số vòng/phút.


-

Khối công suất điều khiển động cơ: Bộ đệm công suất cho 2 động cơ.

-

Khối điều khiến trung tâm: Xử lý và điều khiến mọi hoạt động của robot.
3.2 Khối nguồn

Khối nguồn có chức năng cung cấp điện áp 12V DC cho động cơ và điện áp
5V DC cho khối điều khiển, khối cảm biến và khối hiển thị. Mạch nguồn em sử
dụng một ắc quy khô 12V, 100Ah.
Bên cạnh đó, từ điện áp 12V DC lấy từ ắc quy, chúng ta sử dụng một mạch
ốn áp dùng ĨC ổn áp LM7805 để tạo ra điện áp 5V DC cung cấp cho mạch.
Sơ đồ nguyên lý khối nguồn như sau:

42


×