Bao Cao Xe Do Duong

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 36

TRƯỜNG ĐẠI HỌC QUY NHƠN

KHOA KỸ THUẬT VÀ CÔNG NGHỆ


----------

BÁO CÁO MÔN HỌC


ĐỒ ÁN THIẾT KẾ MẠCH ĐIỆN TỬ

Đề tài: “XE DÒ LINE DÙNG VI ĐIỀU KHIỂN AT89S52


VÀ CẢM BIẾN HỒNG NGOẠI”

Lớp: KTĐT – TT 37A


Sinh viên thực hiện:
NGUYỄN CHÍ CƯỜNG
NGUYỄN THANH ĐỊNH
TRẦN MINH THƯ
ĐẶNG QUANG VINH
NGUYỄN THANH TỈNH
VĂN THỊ HỒNG NHI

Quy Nhơn, 06/2017


Mục lục
LỜI NÓI ĐẦU ........................................................................................................ 1
Chương I. Tổng quan ........................................................................................ 2
1. Cảm biến hồng ngoại .............................................................................................................. 2
1.1 Giới thiệu chung ............................................................................................................... 2
1.2 Các loại cảm biến .............................................................................................................. 2
1.3 Cảm biến hồng ngoại trong mạch dò đường .................................................................. 3
2. Vi điều khiển 8051 ................................................................................................................. 4
2.1 Giới thiệu chung ............................................................................................................... 4
2.2. Các phiên bản chip vi điều khiển 8051 ..................................................................... 5
2.2.1 Bộ điều khiển AT8951 .................................................................................................. 5
2.2.2 Bộ vi điều khiển 8052 ................................................................................................... 5
2.3. Các chân của chip 8051 ................................................................................................... 6
2.4. Tổ chức bộ nhớ của chip 8051 ..................................................................................... 12
2.5. Ứng dụng ........................................................................................................................ 14
3. Robot dò đường ............................................................................................................... 15
3.1. Giới thiệu về robot dò đường ....................................................................................... 15
3.2. Ứng dụng của robot dò đường ................................................................................ 16

Chương 2. Thiết kế mô hình ........................................................................ 16


1. Cấu trúc cơ bản của robot dò đường ............................................................................. 16
2. Các khối cơ bản của robot ............................................................................................... 17
2.1. Khối cảm biến dò đường .......................................................................................... 17
2.2. Khối so sánh tín hiệu ................................................................................................ 18
2.3. Khối driver điều khiển động cơ DC và động cơ ...................................................... 19
2.4. Khối điều khiển trung tâm ....................................................................................... 20
3. Lập trình điều khiển ........................................................................................................ 21

Chương 3. Lắp ráp và kết luận .................................................................... 28


1. Lắp ráp ............................................................................................................................. 28
2. Ưu nhược điểm của robot dò đường ............................................................................. 32
3. Hướng phát triển sản phẩm............................................................................................ 33

TÀI LIỆU THAM KHẢO .................................................................................... 34


LỜI NÓI ĐẦU

Ngày nay điều khiển tự động đã trở thành một nhu cầu không thể
thiếu được của con người , dưới sự xuất hiện của các học thuyết và các
ứng dụng cụ thể trong đời sống hằng ngày, có thể nói điều khiển tự động
đang chi phối dần cuộc sống của chúng ta. Con người đang cố gắng tạo ra
các xe dò line có khả năng làm việc thay cho con người , chúng ta thường
bắt gặp các xe dò line trong các dây chuyền hang hóa công nghiệp. Để
tìm ra các ý tưởng sáng tạo hay để tổ chức các cuộc thi bổ ích đó là tiền
đề để tạo ra những xe dò line có khả năng áp dụng vào thực tế.
Tự động hóa là tổng hòa của nhiều lĩnh vực như cơ khí, điều khiển,
công nghệ thông tin và cơ điện tử. Các lĩnh vực này kết hợp với nhau tạo
thành các hệ thống tự động hóa và cao hơn nữa là tự động hóa toàn bộ
hệ thống sản xuất. Ngành công nghệ tự động hóa ngày càng có vai trò
quan trọng và hết sưc cần thiết để đáp ứng các mục tiêu kinh tế, nhất là
trong quá trình công nghiệp hóa và hiện đại hóa như hiện nay.
Hiện có rất nhiều loại robot:
 Quy mô lớn như: những cánh tay máy như những dây chuyền
sản xuất, những hệ thống sản xuất tự động…
 Nhỏ hơn là những robot có khả năng di chuyển, làm những
công việc nguy hiểm thay thế con người, robot giúp người già,
robot bán hang…
Lần này nhóm thực hiện làm xe dò line. Đây là cơ sở, nền tảng để làm
những cái lớn hơn, có ích hơn trong quá trình học tập và làm việc sau
này.
Cũng chính vì mục đích đó mà chúng em thực hiện đề tài xe dò line, nó
lại là bước khởi đầu trong lập trình vi điều khiển, đây chỉ là công việc
nhỏ của quá trình thiết kế và thi công đề tài đã để cho em nhiều bài học
và kinh nghiệm quý giá, tìm tòi những ứng dụng thực tiễn trong cuộc
sống.
Chương I. Tổng quan
1. Cảm biến hồng ngoại

1.1 Giới thiệu chung


Cảm biến hồng ngoại được chia ra làm 3 loại: cảm
biến hồng ngoại thường, cảm biến hồng ngoại kiểu phản
xạ (infrared reflective sensor) và cảm biến hồng ngoại
kiểu thấu xạ (infrared slotted sensor).
1.2 Các loại cảm biến
Cảm biến hồng ngoại thường: đây là loại cảm biến
mà bộ phát và bộ thu không được kết cấu trong một khối.
Bộ phát và bộ thu là 2 bộ phận riêng rẽ. Bộ phát hồng
ngoại (infrared emitter) có hình dạng như một diode phát
quang (LED). Tuy nhiên ánh sang phát ra là hồng ngoại.
Bộ thu hồng ngoại (infrared detector) là một transistor
quang. Khi transistor nhận được ánh sáng hồng ngoại, nó
sẽ dẫn bão hòa. Ngược lại, nó sẽ ngưng dẫn.

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


phản xạ: là một linh kiện hình
thang được thiết kế cho những ứng
dụng đặc biệt. Trong linh kiện này
có tích hợp một transistor quang
(rất nhạy đối với ánh sáng hồng
ngoại) và một bộ phát ánh sáng
hồng ngoại. Khi có vật thể chắn sáng, lượng áng sáng này
sẽ được phản hồi đến transistor quan nhờ vật chắn sáng,
transistor quang bắt đầu dẫn và ngược lại.

Cảm biến hồng ngoại kiểu thấu xạ: nguyên lý hoạt


động hoàn toàn giống với cảm biến hồng ngoại kiểu phản

2
xạ. Tuy nhiên, lượng ánh sáng phát ra sẽ được đưa trực
tiếp đến transistor quang. Nếu không có vật thể chắn sáng
giữa bộ phát và bộ thu (transistor quang), transistor có
thể nhận hoàn toàn lượng ánh sáng được phát ra. Lúc này,
transistor sẽ dẫn bão hòa. Ngược lại, khi có vật thể chắn
sáng giữa bộ phát và thu, lúc này transistor sẽ không nhận
được lượng ánh sáng phát ra.

1.3 Cảm biến hồng ngoại trong mạch dò đường

3
2. Vi điều khiển 8051

2.1 Giới thiệu chung


RAM trong
CHIP ROM trong Bộ định thời
(byte)
8031 0 KB 128 2
8032 0 KB 256 3
8051 4 KB PROM 128 2
8052 8 KB PROM 256 3
8751 4 KB UV-EPROM 128 2
8752 8 KB UV-EPROM 256 3

MCS-51 là họ vi điều khiển của hãng Intel. Vi mạch tổng quát của
họ MCS-51 là chip 8051.
Chip 8051 có một số đặc trưng cơ bản sau:
 Bộ nhớ chương trình bên trong: 4 KB (ROM)
 Bộ nhớ dữ liệu bên trong: 128 byte (RAM)
 Bộ nhớ chương trình bên ngoài: 64 KB (ROM)
 Bộ nhớ dữ liệu bên ngoài: 64 KB (RAM)
 4 port xuất nhập (I/O port) 8 bit.
 2 bộ định thời 16 bit.
 Mạch giao tiếp nối tiếp.
 Bộ xử lý bit (thao tác trên bit riêng lẻ).
 210 vị trí nhớ được định địa chỉ, mỗi vị trí 1 bit.
 Nhân / chia trong4 uS.
Ngoài ra, trong họ MCS-51 còn có một sô chip vi điều khiển
khác có cấu trúc tương đương như:

4
8951 4 KB Flash ROM 128 2
8952 8 KB Flash ROM 256 3

2.2. Các phiên bản chip vi điều khiển 8051


2.2.1 Bộ điều khiển AT8951
AT8951 là phiên bản 8051 có ROM trên chip là bộ nhớ Flash.
Phiên bản này rất thích hợp cho các ứng dụng nhanh vì bộ nhớ
Flash có thể được xóa trong vài giây. Dĩ nhiên là để dùng
AT8951 cần phải có thiết bị lập trình Rom hỗ trợ bộ nhớ Flash
nhưng không cần đến thiết bị xóa ROM vì bộ nhớ Flash được
xóa bằng thiết bị lập trình PROM.

Ký hiệu ROM RAM I/O Timer Ngắt Vcc PIN


(KB) (V)
AT89C51 4 128 32 2 5 5 40
AT89LV51 4 128 32 2 5 3 40
AT89C1051 1 64 15 1 3 3 20
AT89C2051 2 128 15 2 5 3 20
AT89C52 8 256 32 3 6 5 40
AT89LV52 8 256 32 3 6 3 40

2.2.2 Bộ vi điều khiển 8052


8052 là một phiên bản của họ 8051, 8052 có tất cả các thông số kỹ
thuật của 8051, ngoài ra còn có thêm 128 byte RAM, 8 KB ROM và
ba bộ định thời.

Đặc tính kỹ thuật 8031 8051 8052


ROM trên chip (KB) 0 4 8
RAM trên chip (byte) 128 128 256

5
Bộ định thời 2 2 3
Chân vào/ra 32 32 32
Cổng nối tiếp 1 1 1
Nguồn ngắt 5 5 6

8051 là một trường hợp riêng của 8052. Mọi chương trình viết
cho 8051 đều có thể chạy được trên 8052 nhưng ngược lại có
thể không đúng.
2.3. Các chân của chip 8051
2.3.1. Sơ đồ khối và chức năng các khối của chip 8051

Sơ đồ khối của chip 8051


Chức năng các khối:
 CPU (Central Processing Unit): Đơn vị xử lý trung tâm
tính toán và điều khiển quá trình hoạt động của hệ thống.
 OSC (Oscillator): Mạch dao động tạo tín hiệu xung clock
cung cấp cho các khối trong chip hoạt động.
 Interrupt control: Điều khiển ngắt nhận tín hiệu ngắt từ
bên ngoài (INT0\, INT1\), từ bộ định thời (Timer 0, Timer
1) và từ cổng nối tiếp (Serial port), lần lượt đưa các tín
hiệu ngắt đến CPU để xử lý.

6
 Other registers: Các thanh ghi khác lưu trữ dữ liệu của các
port xuất/nhập, trạng thái làm việc của các khối trong chip
trong suốt quá trình hoạt động của hệ thống.
 RAM (Random Access Memory): Bộ nhớ dữ liệu trong
chip lưu trữ các dữ liệu.
 ROM (Read Only Memory): Bộ nhớ chương trình trong
chip lưu trữ chương trình hoạt động cuả chip.
 I/O port (In/Out ports): Các port xuất/nhập điều khiển
việc xuất nhập dữ liệu dưới dạng song song giữa trong và
ngoài chip thông qua các port P0, P1, P2, P3.
 Serial Port: Port nối tiếp điều khiển việc xuất nhập dữ liệu
dưới dạng nối tiếp giữa trong và ngoài chip thông qua các
chân TxD, RxD.
 Timer 0, Timer 1: Bộ định thời 0, 1 dừng để định gian
hoặc đếm sự kiện (đếm xung) thông qua các chân T0, T1.
 Bus control: Điều khiển bus điều khiển hoạt động của hệ
thống bus và việc đi chuyển thông tin trên hệ thống bus.
 Bus system: Hệ thống bus liên kết các khối trong chip lại
với nhau.

2.3.2. Sơ đồ chân và chức năng các chân của chip 8051

7
Sơ đồ chân chip 8051

2.3.2.1. Port 0
Port ) (P0.0 – P0.7) số thứ tự chân từ 32 – 39.
Port 0 có hai chức năng:
 Port xuất nhập dữ liệu (P0.0 – P0.7) không sử dụng bộ nhớ
ngoài.
 - Bus địa chỉ byte thấp và bus dữ liệu đa hợp (AD0 – AD7)
có sử dụng bộ nhớ ngoài.
 Khi port 0 đóng vai trò là port xuất nhập dữ liệu thì phải sử
dụng các điện trở kéo lên cao.
 Ở chế độ mặc định (khi reset) thì các chân Port 0 (P0.0 –
p0.7) được cấu hình là port xuất dữ liệu. Muốn các chân
port 0 làm port nhập dự liệu thì cần phải lập trỉnh lại, bằng
cách ghi mức logic cao đến tất cả các bit của port trước khi
bắt đầu nhập dữ liệu từ port. Khi lập trình cho ROM trong
chip thì port 0 đóng vai trò là ngõ vào của dữ liệu (D0 –
D7).

2.3.2.2. Port 1
Port 1 (P1.0 – P1.7) có số thứ tự chân từ 1 -8.
Có một số chức năng:
 Port xuất nhập dữ liệu (P1.0 – P1.7) sử dụng hoặc không sử
dụng bộ nhớ ngoài.

8
 Ở chế độ mặc định (khi reset) thì các chân Port 1 được cấu
hình là Port xuất dữ liệu. Muốn các chân port 1 làm port
nhập dữ liệu thì cần phải lập trình lại, bằng cách ghi mức
logic cao đến tất cả các bit của port trước khi bắt đầu nhập
dữ liệu từ port.
 Khi lập trình cho ROM trong chip thì Port 1 đóng vai trò là
ngõ vào của địa chỉ byte thấp (A0- A7).

2.3.2.3. Port 2
Port 2 (P2.0 – P2.7) có số thứ tự chân từ 21 -28.
Port 2 có hai chức năng:
 Port xuất nhập dữ liệu. port 2 không sử dụng bộ nhớ ngoài.
 Bus địa chỉ byte cao (A8 – A15) có sử dụng bộ nhớ ngoài.
 Ở chế độ mặc định (khi reset) thì các chân port 2 được cấu
hình là port xuất dữ liệu. Muốn các chân port 2 làm port
nhập dữ liệu thì cần phải lập trình lại, bằng cách ghi mức
logic cao đến tất cả các bit của port trước khi bắt đầu nhập
dữ liệu từ port.
 Khi lập trình cho ROM trong chip thì Port 2 đóng vai trò là
ngõ vào của địa chỉ byte cao (A8 – A11) và các tín hiệu điều
khiển.

2.3.3.4. Port 3
Port 3 (P3.0 – P3.7) có số thứ tự chân từ 10 -17.
Có các chức năng:
 Port xuất nhập dữ liệu không sử dụng bộ nhớ ngoài hoặc
các chức năng đặc biệt.
 Các tín hiệu điều khiển có sử dụng bộ nhớ ngoài hoặc các
chức năng đặc biệt.
 Ở chế độ mặc định (khi reset) thì các chan Port 3 được cấu
hình là port xuất dữ liệu. Muốn các chân port 3 làm port
nhập dữ liệu thì cần phải lập trinhfh lại, bằng cách ghi mức
cao đến tất cả các bit của port trước khi bắt đầu nhập
ddiefu khiển.

 Chức năng của port 3:

9
Bit Tên Địa chỉ bit Chức năng
P3.0 RxD B0H Nhận dữ liệu nối tiếp
P3.1 TxD B1H Phát dữ liệu nối tiếp
P3.2 INT0\ B2H Ngắt ngoài 0
P3.3 INT1\ B3H Ngắt ngoài 1
P3.4 T0 B4H Timer 0
P3.5 T1 B5H Timer 1
P3.6 WR\ B6H Điều khiển ghi vào RAM ngoài
P3.7 RD\ B7H Điều khiển đọc từ RAM ngoài

2.3.2.5. Chân PSEN\


PSEN (Program Store Enable): cho phép bộ nhớ chương trình,
chân số 29.
Chức năng:
 Là tín hiệu cho phép truy xuất (đọc) bộ nhớ chương
trình (ROM) ngoài.
 Là tín hiệu xuất, tích cực mức thấp.
PSEN\ = 0 trong thời gian CPU tìm – nạp lệnh từ ROM
ngoài.
PSEN\ = 1 CPU sử dụng ROM trong (không sử dụng ROM
ngoài).
Khi sử dụng bộ nhớ chương trình bên ngoài, chân PSEN\
thường được nối với chân OE\ của ROM ngoài để cho
phép CPU đọc mã lệnh từ ROM ngoài.

2.3.2.6. Chân ALE


ALE (Address Latch Enable): cho phép chốt địa chỉ, chân số 30.
Chức năng:
 Là tín hiệu cho phép chốt địa chỉ để thực hiện việc
giải đa hợp bus địa chỉ byte thấp và bus dữ liệu đa
hợp (AD0 – AD7).
 - Là tín hiệu xuất, tích cực mức cao.
 ALLE = 1 trong thời gian bus AD0 – AD7 đóng vai trò
là bus D0 – D7.
 ALE = 1 trong thời gian bus AD0 – AD7 đóng vai trò
là bus A0 – A7.

10
 Khi lập trình cho ROM trong chip thì chân ALE đóng
vai trò là ngõ vào của xung lập trình (PGM\).

2.3.2.7. Chân EA\


EA (External Access): truy xuất ngoài, chân số 31.
Chức năng:
 Là tín hiệu cho phép truy xuất (sử dụng) bộ nhớ
chương trình (ROM) ngoài.
 - Là tín hiệu nhập, tích cưc mức thấp.
 EA\ = 0 chip 8051 sử dụng chương trình của ROM
ngoài.
 EA\ = 1 chip 8051 sử dụng chương trình của ROM
trong.
 Khi lập trình cho ROM trong chip thì chân EA đóng
vai trò là ngõ vào của điện áp lập trình (Vpp = 12V –
12,5V cho họ 89xx; 21V cho họ 80xx, 87xx).
 Chân EA\ phải được nối lên Vcc (nếu sử dụng
chương trình của ROM trong) hoặc nối xuống GND
(nếu sử dụng chương trình của ROM ngoài), không
bao giờ được phép bỏ trống chân này.

2.3.2.8. Chân XTAL1, XTAL2


XTAL (Crystal): Tinh thẻ thạch anh, chân số 18 -19.
Chức năng:
 Dùng để nối với thạch anh hoặc mạch dao động tạo
xung clock bên ngoài, cung cấp tín hiệu xung clock
cho chip hoạt động.
 XTAL1 ngõ vào mạch tạo xung cock chip.
 XTAL2 ngõ ra mạch tạo xung clock chip.

2.3.2.9. Chân RST


RST (Reset): thiết lập lại, chân số 9.
Chức năng:
 Là tín hiệu cho phép thiết lập lại trạng thái ban đầu
cho hệ thống.
 Là tín hiệu nhập, tích cực mức cao.

11
 RST = 0 chip 8051 hoạt động bình thường.
 RST = 1 chip 8051 được thiết lập lại trạng thái ban
đầu.

2.3.2.10. Chân Vcc, GND


Vcc, GND: nguồn cấp điện, chân sô 40 và 20.
Chức năng:
 Cung cấp nguồn điện cho chip 8051 hoạt động.
 Vcc - +5V, 10% và GND = 0V

2.4. Tổ chức bộ nhớ của chip 8051


2.4.1. Bộ nhớ chương trình(ROM)
 Dùng để lưu trữ chương trình điều khiển cho chip
8051 hoạt động.
 Chip 8051 có 4 KB ROM trong, địa chỉ truy xuất:
000h – FFFh.

2.4.2. Bộ nhớ dữ liệu (RAM)


 Dùng để lưu trữ các dữ liệu và tham số.
 Chip 8051 có 128 byte RAM trong, địa chỉ truy xuất:
00h – 7Fh.
 RAM trong của chip 8051 được chia ra:

Gồm: 80 byte RAM


RAM đa chức năng Địa chỉ truy xuất: 30h – 7Fh
Kiểu truy xuất dữ liệu

Trực tiếp Gián tiếp


 RAM định địa chỉ bit: Cho phép xử lý từng bit dữ liệu
riêng lẻ mà không ảnh hưởng đén các bit khác trong cả
byte.

2.4.3. Thanh ghi chức năng đặc biệt


2.4.3.1. Thanh ghi A

12
A (Accumulator): thanh ghi tích lũy

E7 E6 E5 E4 E3 E2 E1 E0

 Địa chỉ byte: E0h


 Địa chỉ bit: E0h – E7h
 Công dụng: chứa dữ liệu của các phép toán mà
vi điều khiển xử lý.
2.4.3.2. Thanh ghi B
Phép nhân 2 số 8 bit không dấu, kết quả là số 16 bit.
 Byte cao: chứa vào thanh ghi B
 Byte thấp: chứa vào thanh ghi A
 Phép chia 2 số 8 bit: thương số và số dư là số 8
bit.
 Thương số: chứa vào thanh ghi A.
 Số dư: chứa vào thanh ghi B.

2.4.3.3. Thanh ghi ngăn xếp (Stack Pointer)


Con trỏ SP (stack pointer) là thanh ghi 8 bit ở địa chỉ 81h.
SP chứa địa chỉ của dữ liệu hiện đang ở đỉnh của stack. Các
lệnh liên quan đến stack bao gồm lệnh cất dữ liệu vào
stack và lệnh lấy dữ liệu ra khỏi stack sẽ giảm SP. Vùng
stack của 8051 được giữ trong RAM nội và được giới hạn
đến các địa chỉ truy xuất được bởi kiểu định địa chỉ gián
tiếp. Các lệnh PUSH và POP sẽ cất dữ liệu vào stack và lấy
dữ liệu từ stack, các lệnh gọi chương trình con (ACALL,
LCALL) và lệnh trở về (RET, RETI) cũng cất và phục hồi
nội dung của bộ đếm chương trình PC (Program counter).

2.4.3.4. Con trỏ dữ liệu DPTR


DPTR (data pointer) được dùng để truy xuất bộ nhớ
chương trình ngoài hoặc bộ nhớ dữ liệu ngoài. DPTR là
một thanh ghi 16 bit có địa chỉ là 82h (DPL, byte thấp) và
83h (DPH, byte cao).

13
2.4.3.5. Thanh ghi truyền thông nối tiếp (Serial Data
Buffer)
Bộ đệm truyền thông được chia thành hai bộ đệm, bộ đệm
truyền dữ liệu và bộ đệm nhận dữ liệu. Khi dữ liệu được
chuyển vào thanh ghi SBUF, dữ liệu sẽ được chuyển vào bộ
đệm truyền dữ liệu và sẽ được lưu giữ ở đó cho đến khi
quá trình truyền dữ liệu qua truyền thông nối tiếp kết
thúc. Khi thực hiện việc chuyển dữ liệu từ SBUF ra ngoài,
dữ liệu sẽ được lấy từ bộ đệm nhận dữ liệu của truyền
thông nối tiếp.

2.4.3.6. Thanh ghi của bộ định thời/bộ đếm


8051 có 2 bộ đếm/định thời (counter/timer) 16 bit để
định các khoảng thời gian hoặc để đếm các sự kiện. Các
cặp thanh ghi (TH0, TL0) và (TH1, TL1) là các thanh ghi
của bộ đếm thời gian. Bộ định thời 1 có địa chỉ 8Bh (TL1,
byte thấp) và 8Dh (TH1, byte cao). Hoạt động của bộ định
thời được thiết lập bởi thanh ghi chế độ định thời TMOD
(Timer Mode Register) ở địa chỉ 88h. Chỉ có TCON được
định địa chỉ từng bit.

2.4.3.7. Các thanh ghi điều khiển


Các thanh ghi điều khiển đặc biệt (IP, IE, TMOD, TCON,
SCON, PCON) là các thanh ghi điều khiển và ghi nhận trạng
thái của hệ thống ngắt, bộ đếm/định thời, truyền thông
nối tiếp.
2.5. Ứng dụng
Vi điều khiển được ứng dụng rất rộng rãi trong đời sống và
trong công nghiệp. Tất cả những thiết bị điện tử có phần điều
khiển tự động đều có thể có mặt vi điều khiển, trong nhu cầu
công nghiệp hóa thì vi điều khiển đóng vai trò quan trọng bậc
nhất trong chuyên ngành tự động và điều khiển.
Ví dụ những ứng dụng đơn giản của vi điều khiển 8051:
 Vi điều khiển giao tiếp led đơn vi điều khiển 8051
 Kết nối vi điều khiển với Rơle
 Kết nối vi điều khiển với LCD

14
 Kết nối vi điều khiển với ma trận led

3. Robot dò đường
3.1. Giới thiệu về robot dò đường
 Robot dò đường là một biến thế đặc biệt của robot hướng
sáng. Sở dĩ nói như vậy là do chúng có cùng nguyên tắc
hoạt động là sử dụng cảm biến quang điện ( quang trở hoặc
diode hồng ngoại) để so sánh cường độ sáng từ đó điều
chỉnh hướng đi thích hợp. Khi robot đi lệch vào vùng có
vạch vẽ, ánh sáng phát ra từ robot không phản xạ lại như
bình thường mà bị đường kẻ hấp thụ 1 phần làm sai lệch
độ sáng giữa hai cảm biến. Việc còn lại là thiết kế sao cho
robot có hành vi khắc phục sự sai lệch đó và ta có được loại
robot đi theo đường vẽ.
 Nhiệm vụ của các cảm biến quang như sau:

Sơ đồ mô phỏng cách hoạt động của xe

 Đường đi được vạch sẵn với chiều dài mặt cắt ngang xác
định. Đường đi được đặt trên nền có vật liệu khác loại. Nếu
đường đi là vật liệu phản quang thì nền không phản quang
và ngược lại.
 Robot sử dụng các LED phát chiếu xuống mặt đường đi
hoặc nền. Ánh sáng hồng ngoại sẽ phản xạ lại kkhi gặp vật
liệu phản quang. Sử dụng cảm biến quang robot xác định
được trạng thái của mình trên mặt đường , từ đó đưa ra
quyết định điều khiển tương ứng.
 Robot vận hành có 3 bánh, 2 bánh chủ động. Robot dẫn
động bằng 2 động cơ 1 chiều ở 2 bánh trước, bánh sau làm

15
nhiệm vụ điều hướng để xe chuyển hướng nhẹ nhàng hơn.
Phần dò đường dùng 4 cặp cảm biến . Phần xử lý chọn vi
điều khiển AT89S52.
3.2. Ứng dụng của robot dò đường
Được ứng dụng vào công nghệ dò đường di chuyển tự động
trong vận chuyển hàng hóa. Tuy còn sơ khai về nguyên tắc điều
khiển nhưng robot dò đường đã tạo một bước ngoặc quan
trọng trong công nghệ thiết kế và chế tạo robot, mở ra một kỷ
nguyên mới về ngành công nghệ kỹ thuật tự động hóa và đưa
tự động hóa vào sản xuất.

Chương 2. Thiết kế mô hình


1. Cấu trúc cơ bản của robot dò đường

Sơ đồ khối:

KHỐI KHỐI ĐIỀU KHỐI DRIVER ĐỘNG


KHỐI SO SÁNH KHIỂN CHÍNH ĐIỀU KHIỂN CƠ
SENSOR TÍN HIỆU DÙNG CHIP ĐỘNG CƠ DC DC
AT89S52

KHỐI DAO ĐỘNG

16
2. Các khối cơ bản của robot
2.1. Khối cảm biến dò đường

Khối cảm biến

Khối cảm biến dò đường là thành phần không thể thiếu trong
mô hình để điều khiển xe chạy một cách chính xác và đẹp mắt.
Trong mô hình xe này sử dụng 4 cặp cảm biến thu phát hồng
ngoại, được sắp xếp thành một hàng ngang, khi di chuyển thì hàng
cảm biến này có phương vuông góc với đường line trên nền đất.
Sắp xếp sao cho 2 cặp cảm biến ở ngoài đường line và 2 cặp ở
trong phạm vi độ rộng của đường line. Với 2 cặp cảm biến nằm ngoài
đường line thì ánh sáng hồng ngoài do led phát hồng ngoại phát ra
không bị vạch đen của đường line hấp thu nên tín hiệu truyền về led
thu ở mức cao, tương tự cho 2 cặp led ở trong đường line nhưng
ngược lại, ánh sáng hồng ngoại phát ra sẽ bị vạch đen hấp thụ một
phần lớn, nên tín hiệu thu được ở mức thấp. Dựa vào đó ta lập trình

17
sao cho khi các điều kiện đó bị sai thì điều chỉnh tốc độ quay của 2
động cơ DC để xe đi theo đúng đường để các điều kiện trở về trạng
thái đúng như ban đầu của nó.

2.2. Khối so sánh tín hiệu

Khối so sánh tín hiệu dùng IC LM324

Khối so sánh tín hiệu dùng IC LM324, là một IC công suất thấp bao
gồm 4 bộ khuếch đại thuật toán (OPAMP) trong nó.
Thông thường muốn sử dụng một bộ khuếch đại thuật toán (Op-
Amp) thì cần phải có nguồn đôi. Tức là phải có nguồn dương và
nguồn âm. Chẳng hạn như OPAMP 741.
Tuy nhiên các OPAMP trong LM324 được thiết kế đặc biệt để sử
dụng với nguồn đơn. Tức là chỉ cần Vcc và GND là đủ.
Một điều đặc biệt nữa là nguồn cung cấp của LM324 có thể hoạt
động độc lập với nguồn tín hiệu. Ví dụ nguồn cung cấp của LM324 là
5V nhưng nó có thể làm việc bình thường với nguồn tín hiệu ở ngõ
vào V+ và V- là 15V mà không có vấn đề gì.

18
2.3. Khối driver điều khiển động cơ DC và động cơ

Khối drvier điều khiển động cơ và động cơ DC

Khối điều khiển động cơ DC sử dụng IC driver


L298D, là một chip tích hợp 2 mạch cầu H trong gói 16 chân. Tất
cả các mạch kích, mạch cầu đều được tích hợp sẵn. L298D có điện
áp danh nghĩa cao (lớn nhất 36V) và dòng điện danh nghĩa lớn
nhất 1.2A nên rất thích hợp cho các các ứng dụng công suất nhỏ
như các động cơ DC loại nhỏ và vừa.
Có 2 mạch cầu H trên mỗi chip L298D nên có thể điều khiển 2
đối tượng chỉ với 1 chip này. Mỗi mạch cầu bao gồm 1 đường
nguồn Vs (thật ra là đường chung cho 2 mạch cầu), một
đường current sensing (cảm biến dòng), phần cuối của mạch cầu
H không được nối với GND mà bỏ trống cho người dùng nối một
điện trở nhỏ gọi là sensing resistor.
Động cơ sẽ được nối với 2 đường OUT1, OUT2 (hoặc OUT3,
OUT4 nếu dùng mạch cầu bên phải). Một chân En (EnA và EnB cho

19
2 mạch cầu) cho phép mạch cầu hoạt động, khi chân En được kéo
lên mức cao, mạch cầu sẵn sang hoạt động.

2.4. Khối điều khiển trung tâm

Khối điều khiển trung tâm

Khối điều khiển trung tâm sử dụng chip vi điều khiển AT89S52, là
một vi điều khiển thuộc họ MCS-51, với 8 KB bộ nhớ, có thể đọc/ghi
dữ liệu khoảng 1000 lần. Điện áp đầu vào từ 4.0 – 5.5V, tần số cung
cấp tĩnh từ 0 – 33 MHz, có 32 đường I/O lập trình được,
Timer/Counter 16 bit, 8 ngắt ngoài.
Vi điều khiển AT89S52 rất thích hợp để điều khiển động cơ DC.
Tuy nhiên, do các động cơ trên mạch thường hoạt động không ổn
định hay do sự cố kỹ thuật nên có tốc độ không ổn định cũng như
việc điều khiển đòi hỏi tốc độ động cơ phải thay đổi liên tục nên có
thể thiết kế mạch công suất cho 2 động cơ để động cơ hoạt động ổn
định hơn.

20
Dòng xuất nhập của chip tương đối nhỏ, với các ứng dụng sử dụng
ít cổng I/O thì ta có thể sử dụng trực tiếp các cổng này. Nhưng trong
mạch xe dò đường thì các cổng I/O được tận dụng tối đa nên có thể
thiết kế thêm các mạch đệm trước cổng I/O, các IC đệm có thể cung
cấp dòng lớn hơn cho tải.

3. Lập trình điều khiển


3.1. Lưu đồ ý tưởng thuật toán

21
3.2. Lưu đồ thuật toán chi tiết

22
3.3. Code Assembly
in_1 bit p1.0
in_2 bit p1.1
in_3 bit p1.2
in_4 bit p1.3
out_1 bit p0.0
out_2 bit p0.1
out_3 bit p0.2
out_4 bit p0.3

org 00h
ljmp main
org 40h
main:
;Thiết lập cổng ra/vào
mov p1,#0ffh
mov p0,#00h

;Lùi tìm đường đi khi quá giới hạn


mov a,p1
add a,#00000001b
jc hoantat

;Kiểm tra tín hiệu


setb in_4
jnb in_4,kt2
setb in_2
jnb in_2,a1
ljmp kt1
a1: call re_phai_gap
ljmp ktra_phai
kt2: setb in_2
jnb in_2,a2
call re_trai_gap
ljmp ktra_trai
a2: call tien

kt1: setb in_1


jnb in_1,kt3
setb in_3

23
jnb in_3,a3
call tien
ljmp main
a3: call re_trai
ljmp main
kt3: setb in_3
jnb in_3,a4
call re_phai
ljmp main
a4: call tien
ljmp main

hoantat:
call lui
ljmp main

ktra_trai:
setb in_2
jnb in_2,b1
setb in_4
jnb in_4,ktra_xong
call re_trai_gap
call delay
call tien
ljmp ktra_trai
b1: setb in_4
jnb in_4,b2
ljmp ktra_xong
b2: call re_trai_gap
call delay
call tien
ljmp ktra_trai

ktra_phai:
setb in_4
jnb in_4,b3
setb in_2
jnb in_2,ktra_xong
call re_phai_gap
call delay

24
ljmp ktra_phai
b3: setb in_2
jnb in_2,b4
ljmp ktra_xong
b4: call re_trai_gap
call delay
ljmp ktra_phai

ktra_xong:
ljmp main

;Quyết định
ngung:
clr out_1
clr out_2
clr out_3
clr out_4
call delay_thap
ljmp main
tien:
setb out_1
setb out_3
clr out_2
clr out_4
call delay
ljmp ngung
ret
lui:
setb out_2
setb out_4
clr out_1
clr out_3
call delay_thap
call ngung
ret
re_trai:
setb out_3
clr out_1
clr out_2
clr out_4

25
call delay_re
call delay_re
clr out_3
clr out_1
clr out_2
clr out_4
call delay_re
ret
re_phai:
setb out_1
clr out_2
clr out_3
clr out_4
call delay_re
call delay_re
clr out_3
clr out_1
clr out_2
clr out_4
call delay_re
ret
re_trai_gap:
setb out_2
clr out_3
clr out_1
clr out_4
call delay_re
call delay_re
setb out_3
clr out_2
clr out_1
clr out_4
call delay_re
call tien
call tien
call tien
call tien
ret
re_phai_gap:
clr out_1

26
setb out_4
clr out_2
clr out_3
call delay_re
call delay_re
setb out_1
clr out_3
clr out_2
clr out_4
call delay_re
call tien
call tien
call tien
call tien
delay:
MOV R1,#1
L1: MOV R2,#20
L2: MOV R3,#100
L3: NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R3,L3
DJNZ R2,L2
DJNZ R1,L1
ret
delay_re:
MOV R1,#1
d1: MOV R2,#25
d2: MOV R3,#100
d3: NOP
NOP
NOP
NOP
NOP
NOP

27
NOP
NOP
DJNZ R3,d3
DJNZ R2,d2
DJNZ R1,d1
ret
delay_thap:
MOV R1,#1
x1: MOV R2,#15
x2: MOV R3,#100
x3: NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R3,x3
DJNZ R2,x2
DJNZ R1,x1
ret
end

Chương 3. Lắp ráp và kết luận


1. Lắp ráp

Sơ đồ mạch in các modul thành phần:

28
Mạch in modul 4 cặp cảm biến hồng ngoại

Mạch in modul so sánh tín hiệu

29
Mạch in khối điều khiển trung tâm

Một số hình ảnh sản phẩm sau khi lắp ráp hoàn thành:

30
Ảnh sản phẩm thực tế

Đường “ray” cho xe chạy

Trong mô hình xe dò đường này có sử dụng các chi tiết, linh kiện:

31
Động cơ giảm tốc

Sạc dự phòng cấp nguồn cho mạch hoạt động

2. Ưu nhược điểm của robot dò đường

32
2.1. Ưu điểm
 Mô hình robot dò đường thiết kế chạy ổn định,
bám vạch chính xác, chạy đúng thuật toán yêu
cầu và hoàn thành nhiệm vụ.
 Thể hiện được khả năng hoàn toàn tự động của
mô hình, hoạt động theo chương trình đã lập
trình.
 Đây là bước ngoặc quan trọng mở để Robot
tiến xa hơn nữa trong quá trình tự động hóa.

2.2. Nhược điểm


Bên cạnh những ưu điểm vượt trội, robot dò đường cũng
có những mặt hạn chế:
 Quá trình thiết kế mạch, lắp ráp, sửa chữa
phức tạp tốn nhiều thời gian.
 Để robot hoạt động như ý con người đòi hòi
người lập trình phải am hiểu cả phần cứng lẫn
phần mềm của robot, đòi hỏi trình độ và kinh
nghiệm của người lập trình và thiết kế mạch.

3. Hướng phát triển sản phẩm

Từ ứng dụng điều khiển robot dò đường, ta có thể ứng dụng


trong nhiều mặt như thám hiểm, vạn chuyển hàng hóa trong
nhà máy, xe không người lái…
Cụ thể chúng ta có thể lập trình cho robot thông minh hơn
và có khả năng làm nhiều việc khác khi đã di chuyển linh
hoạt. Kỹ thuật đo lường là vô cùng quan trọng trong các
cuộc thi robocon chúng ta có thể tiesp tục phát triển nó để
làm ra các con robot có tính ứng dụng cao.

33
TÀI LIỆU THAM KHẢO

Tiếng Anh

[1]. Line Follower Robot.


https://www.engineersgarage.com/contribution/
line-follower-robot
[2]. Datasheet AT89S52 – Atmel Corporation.
www.atmel.com/images/doc1919.pdf
[3]. Overview of the 8051 family.
http://what-when-how.com/8051-
microcontroller/overview-of-the-8051-family/
[4]. Electronic Device and Circuit Theory - Robert
Boylestad, Nashelsky.

Tiếng Việt

[6]. Giáo trình cảm biến công nghiệp - Th.S. Hoàng


Minh Công, Trường Đại học Bách Khoa Đà Nẵng.

[7]. Giáo trình Vi điều khiển – Th.S. Phạm Hùng Kim


Khánh, Trường Đại học Kỹ Thuật Công Nghệ TP. Hồ
Chí Minh, Khoa Điện - Điện tử

34

You might also like