BỘ THÔNG TIN VÀ TRUYỀN THÔNG
TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN HỮU NGHỊ VIỆT - HÀN
KHOA CÔNG NGHỆ ĐIỆN TỬ- VIỄN THÔNG
============================
ĐỒ ÁN
VI ĐIỀU KHIỂN
ĐỀ TÀI
THIẾT KẾ ROBOT DÒ ĐƯỜNG
LỚP: CCVT07A
SVTH: HỒ MINH PHƯƠNG
GVHD: DƯƠNG TUẤN QUANG
Đà Nẵng, 14 tháng 12 năm 2016
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
MỤC LỤC
MỤC LỤC................................................................................................. 2
2.2.2 Khối cảm biến:............................................................................................................6
2.2.3 Các đặc điểm của hệ vi xử lý ATmega328:................................................................7
2.2.4 đặc điểm phần động cơ Module điều khiển động cơ L298.......................................8
2.3 Bo mạch Arduino:.......................................................................9
2.4. sơ đồ cấu trúc điều khiển:.......................................................11
CHƯƠNG III SƠ ĐỒ KHỐI VÀ SƠ ĐỒ NGUYÊN LÝ.....................12
CHƯƠNG IV. CÁCH LÀM MẠCH VÀ NGUYÊN TẮC HOẠT
ĐỘNG CỦA MẠCH................................................................................ 13
CHƯƠNG V KẾT LUẬN.......................................................................18
1.Ưu – Nhược điểm:.......................................................................18
2. Hướng phát triển đề tài:............................................................18
3. Tài liệu tham khảo:.....................................................................18
SVTH: Hồ Minh Phương_CCVT07A
2
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
LỜI NÓI ĐẦU
Trong thời đại công nghiệp hiện nay, robot ngày càng được sử dụng phổ
biến trong sản xuất cũng như trong cuộc sống con người. Robot đã có một vị trí
quan trọng không thể thay thế được, nó giúp con người làm việc trong những
điều kiện nguy hiểm khó khan. Ngoài ra robot còn dùng trong lĩnh vực thám
hiểm không gian, quân sự, giải trí… lĩnh vực robot di động đang ngày càng
được sự quan tâm của các nhà nghiên cứu và xã hội. Đặc biệt robot dò đường là
vấn đề thiết yếu của robot di động
SVTH: Hồ Minh Phương_CCVT07A
3
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
CHƯƠNG I: GIỚI THIỆU ĐỀ TÀI
Robot tự hành là một thành phần có vai trò quan trọng trong ngành Robot
học. cùng với sự phát triển mạnh mẽ của các hệ thống tự động hóa, robot tự
hành ngày một được hoàn thiện và càng cho thấy lợi ích của nó trong công
nghiệp và sinh hoạt. Một vấn đề rất được quan tâm khi nghiên cứu về robot tự
hành là làm thế nào để robot tự động đi theo một quỹ đạo đã định .
Để điều khiển robot theo quỹ đão, người thiết kế lập trình xác định độ lệch
tương ứng đối giữa quỹ đạo của robot và quỹ đọa mong muốn, sau đó so sánh độ
lệch đó thành các mức và điều khiển lái robot quay về quỹ đạo như hình 1.
Phương pháp này có ưu điểm đơn giản nhưng robot chạy không ổn định, lúc rất
nhanh, lúc lại chậm, tính ổn định phụ thuộc nhiều vào động cơ và kết cấu cơ khí
của robot. Trong nghiên cứu này tập trung vào khắc phục nhược điểm đó bằng
cách áp dụng bộ điều khiển PID điều khiển vị trí robot
SVTH: Hồ Minh Phương_CCVT07A
4
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
CHƯƠNG II: CẤU TẠO VÀ PHƯƠNG PHÁP ĐIỀU KHIỂN
ROBOT THEO QUỸ ĐẠO
2.1 Vật liệu – linh kiện:
• 2 động cơ một chiều (DC motor)
• IC atmega 328
• IC 7805
• Điện trở
• Thạch anh 16
• Tụ điện
• 3(cảm biến hồng ngoại)
• Mạch cầu
• Băng dính
• Dây dẫn
• Giấy bìa cứng
• Nguồn 9V
2.2 Phương pháp điều khiển robot theo quỹ đạo với bộ điều khiển PID
2.2.1 Cấu tạo của robot
SVTH: Hồ Minh Phương_CCVT07A
5
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
B1, B2, B3: 3 bánh xe của robot, B3 là bánh tự lựa hướng của robot
DC1: động cơ gắn bánh xe bên trái B1
DC2: động cơ gắn bánh xe bên phải B2.
CB: khối cảm biến nhận biết quỹ đạo xe
Arduino: điều khiển trung tâm của robot
Pin: Nguồn cấp cho robot hoạt động
Hình 3. Robot bám theo quỹ đạo
2.2.2 Khối cảm biến:
khối cảm biến gồm 3 cặp phát hồng ngoại. khi led phát chiếu xuống sàn
( màu trắng) và vạch ( màu đen) thị lượng ánh sáng hồng ngoại phản xạ lại và
led thu được khác nhau nên giá trị
khác nhau.
Hình 4: sơ đồ mạch cảm biến
SVTH: Hồ Minh Phương_CCVT07A
6
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
2.2.3 Các đặc điểm của hệ vi xử lý ATmega328:
Vi điều khiển là một hệ vi xử lý được tổ chức trong một chip.
Các thong số chính của vi điều khiển Atmega328 như sau
+ Bộ vi xử lý
+ giao diện SPI đồng bộ
+ kiến trúc: AVR 8bit
+ xung nhịp lớn nhất: 20Mhz
+ bộ nhớ chương trình (FLASH): 32KB
+ Bộ nhớ EEPROM: 1KB
+ Điện áp hoạt động rộng: 1.8V – 5.5V
+số timer: 3 timer gồm 2 timer 8-bit và 1 timer 16-bit
+số kênh xung PWM: 6 kênh (1timer 2 kênh
SVTH: Hồ Minh Phương_CCVT07A
7
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
2.2.4 đặc điểm phần động cơ Module điều khiển động cơ L298
a. Phần động cơ:
Moto DC hoạt động khi ta cấp 1 điện áp DC vào motor và 1 dòng điện 1
chiều chạy qua motor, motor sẽ quay theo chiều đó
Nếu chúng ta đổi chiều điện áp 1 chiều này thì motor sẽ quay lại ngược lại
b. Module điều khiển động cơ l298
SVTH: Hồ Minh Phương_CCVT07A
8
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
Chức năng các chân của L298
+ Module L298 có thể điều khiển 2 động cơ DC hoặc 1 động cơ bước, có 4
lỗ nằm ở 4 góc thuận tiện cho người sử dụng cố định vị trí của module
+ có gắn tản nhiệt chống nóng cho IC, giúp IC có thể điều khiển với dòng
đỉnh đạt 2A
+ IC L298 được gắn với các đi ốt trên board giúp bảo vệ vi xử lý chống lại các
dòng điện cảm ứng từ việc khởi động /tắt động cơ
2.3 Bo mạch Arduino:
Các bo mạch Arduino thật ra là bo mạch vi xử lý được dùng để lập trình
tương tác với các thiết bị phần cứng như cảm biến, động cơ, đèn hoặc các thiết
bị khác. Đặc điểm nổi bật của Arduino là môi trường phát triển ứng ứng dụng
cực kỳ dễ sử dụng, với một ngôn ngữ lập tình có thể học một cách nhanh chóng
ngay cả với người ít am hiểu về điện tử và lập trình. Và điều làm nên hiện tượng
Arduino chính là mức phần cứng tới phần mền. Bo mạch ArduinoUNO là bo
mạch thông dụng nhất.
ArduinoUno sử dụng chip Atmega328. Có 14 chân vào/ra số, 6 chân vào tương
tự, thạch anh dao động 16Mhz.
Một số thông số kỹ thuật như sau:
Vi điều khiển
Điện áp hoạt động
Nguồn cấp
Số đầu vào/ra số
Đầu vào tương tự
SVTH: Hồ Minh Phương_CCVT07A
Atmega328
5V
7-12V
14 (6PWM)
6
9
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
Dòng vào tương tự
Dòng điện vào/ra số
SVTH: Hồ Minh Phương_CCVT07A
40 mA
32 KB
10
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
Sơ đồ chân Arduino:
Hình 5: Bo mạch Arduino
- USB (1): Arduino sử dụng cáp USB để giao tiếp với máy tính. Thông qua
cáp USB chúng ta có thể Upload chương trình cho Arduino hoạt động,
ngoài ra USB còn là nguồn cho Arduino.
- Nguồn cấp một chiều cho Arduino
2.4. sơ đồ cấu trúc điều khiển:
Nguyên tắc điều khiển robot theo quỹ đạo: khối cảm biến nhận biết robot
đi theo hay lệch khỏi quỹ đạo và gửi tín hiệu về điều khiển trung tâm
Arduino. Arduino tính toán điều khiển tốc hai bánh xe robot để điều khiển
hướng đi chuyển của bobot. Cụ thể, để rẽ trái tốc độ bánh xe bên phải robot
nhanh hơn bên trasim ngược lại để rẽ phải tốc độ bánh xe bên trái nhanh hơn
tốc độ bên phải, để đi thẳng tốc độ hai bánh xe đều nhau. Khi robot đi thẳng
thì tốc độ di chuyển của robot lớn nhất, khi robot lệch khỏi quỹ đạo tốc độ di
chuyển robot chậm dần.
SVTH: Hồ Minh Phương_CCVT07A
11
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
CHƯƠNG III SƠ ĐỒ KHỐI VÀ SƠ ĐỒ NGUYÊN LÝ
1. sơ đồ khối :
2. sơ đồ nguyên lý
SVTH: Hồ Minh Phương_CCVT07A
12
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
CHƯƠNG IV. CÁCH LÀM MẠCH VÀ NGUYÊN TẮC HOẠT
ĐỘNG CỦA MẠCH
Mạch được mắc theo sơ đồ trên
1. Bộ phận cảm biến
+ khoảng cách giữa 2 module hồng ngoại là 1cm và khoảng cách giữa bên
phát và thu khoảng cách là lmm được đặt thẳng hàng với nhau. Dùng keo
nến để dáng vào .
+ khi ánh sáng thì module hồng ngoại sẽ giảm và ngược lại. ta sử dụng
module là nguồn sáng nên khi gặp nền trắng, ánh sáng sẽ phản xạ lên
module hồng ngoại làm điển trở giảm xuống và khi gặp vạch đen thì ánh
sáng sẽ khó phản xạ nên quang trở nhận ít ánh sáng làm điện trở tang. Từ
đó robot có phân biết được vạch đen trên nền trắng ( dưới sự hỗ trợ của IC
LM328)
2. Bộ phận điều khiển động cơ
2 động cơ DC có bộ giảm tốc giúp robot dễ nhận vạch hơn. 2 động cơ
được lắp phía sau xe và gắng chân ở phía trước.
SVTH: Hồ Minh Phương_CCVT07A
13
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
3. Bộ phận xử lý
a. Điều khiển:
Vi xử lí nhận tín hiệu từ L298 để điều khiển động cơ tiến hay lùi và
quay trái hoặc quay phải.
b. Code vi điều khiển:
Code được lập trình trình trên Arduino như sau:
#define inA1 2
#define inA2 3
#define inB1 4
#define inB2 5
#define ENA 10
#define ENB 11
void setup() {
pinMode(inA1, OUTPUT);
pinMode(inA2, OUTPUT);
pinMode(inB1, OUTPUT);
pinMode(inB2, OUTPUT);
pinMode(ENA, OUTPUT);
pinMode(ENB, OUTPUT);
Serial.begin(9600);
//đi chậm cho khỏi trượt Line
}
void loop(){
int a= digitalRead(9);
Serial.println(a);
int b= digitalRead(7);
Serial.println(b);
int c= digitalRead(8);
Serial.println(c);
SVTH: Hồ Minh Phương_CCVT07A
14
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
int d=a+b+c;
if(d<1)
{
analogWrite(ENA, 99 );
analogWrite(ENB, 99);
lui();
Serial.println("lui");
}
else if (d>2)
{dung();
Serial.println("dung");
}
else if(d<2){
if(b>0)
{
analogWrite(ENA, 110 );
analogWrite(ENB, 110);
dithang();
Serial.println("di thang");
}
SVTH: Hồ Minh Phương_CCVT07A
15
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
if (a>c)
{
analogWrite(ENA, 170 );
analogWrite(ENB, 170);
quayphai();
Serial.println("quayphai");
}
else if (c>a)
{
analogWrite(ENA, 170 );
analogWrite(ENB, 170);
quaytrai();
Serial.println("quaytrai");
}
}
}
void dithang(){
digitalWrite(inA1,HIGH);
digitalWrite(inA2,LOW);
digitalWrite(inB1,HIGH);
digitalWrite(inB2,LOW);
}
void lui(){
digitalWrite(inA1,LOW);
digitalWrite(inA2,HIGH);
digitalWrite(inB1,LOW);
SVTH: Hồ Minh Phương_CCVT07A
16
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
digitalWrite(inB2,HIGH);
}
void quaytrai(){
digitalWrite(inA1,HIGH);
digitalWrite(inA2,LOW);
digitalWrite(inB1,LOW);
digitalWrite(inB2,LOW);
}
void quayphai(){
digitalWrite(inA1,LOW);
digitalWrite(inA2,LOW);
digitalWrite(inB1,HIGH);
digitalWrite(inB2,LOW);
}
void dung(){
digitalWrite(inA1,LOW);
digitalWrite(inA2,LOW);
digitalWrite(inB1,LOW);
digitalWrite(inB2,LOW);
}
SVTH: Hồ Minh Phương_CCVT07A
17
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
CHƯƠNG V KẾT LUẬN
1.Ưu – Nhược điểm:
Đồ án đã cơ bản hoàn thành về các yêu cầu thiết kế và đã đạt được yêu
cầu về kỹ thuật và ứng dụng, robot đã có thể dò đường trên đường cong. Song
bên cạnh đó đồ án của em còn một số hạn chế như: khả năng chính xác chưa
được cao, tốc độ xử lí của robot còn chậm..
Do hạn chế về thời gian và kiến thức nên đò án của em vẫn còn những
hạn chế và thiếu sót. Rất mong nhận được sự đóng góp ý kiến của các bạn sinh
viên, của các thầy cô gáo để đồ án của em được hoàn thiện hơn.
2. Hướng phát triển đề tài:
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 công việc khác khi đã di chuyển linh hoạt. kĩ thuật dò đường là vô
cùng quan trọng trong các cuộc thi robocon chúng ta có thể tiếp tục phát triển nó
để làm ra các con robot có tính ứng dụng cao.
3. Tài liệu tham khảo:
[1] vi điều khiển , cấu trúc- lập trình và ứng dụng ,TS Kiều Xuân Thực – nhà
xuất bản Giáo Dục
[2] Internet:
www.dientuvietnam.net
www.keil.com
[3] các bài tham khảo về điện tử trên mạng internet
SVTH: Hồ Minh Phương_CCVT07A
18
Đồ án vi điều khiển
GVHD: Dương Tuấn Quang
NHẬN XÉT CỦA GIẢNG VIÊN
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
Đà Nẵng, ngày tháng
GIẢNG VIÊN
SVTH: Hồ Minh Phương_CCVT07A
19
năm 2016