You are on page 1of 26

MỤC LỤC

CHƯƠNG 1: MỞ ĐẦU .................................................................................................. 1


1.1 Lý do chọn đề tài ............................................................................................... 1
1.2 Mục tiêu của đề tài ............................................................................................. 1
1.3 Phạm vi giới hạn của đề tài................................................................................ 1
1.3.1 Phạm vi nghiên cứu .................................................................................... 1
1.3.2 Giới hạn....................................................................................................... 1
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ............................................................................... 2
2.1 Giới thiệu các vấn lý thuyết liên quan ............................................................... 2
2.1.1 Thuật toán bám tường ................................................................................. 2
2.1.2 Khái niệm điều khiển .................................................................................. 2
2.2 Mô hình hóa hệ thống ........................................................................................ 2
CHƯƠNG 3: TÌM HIỂU LINH KIỆN ........................................................................... 3
3.1 Arduino Nano CH340 ....................................................................................... 3
3.2 Mạch Điều Khiển Động Cơ DC L298 ............................................................... 4
3.3 Mạch giảm áp DC LM2596 3A ........................................................................ 6
3.4 Bánh đa hướng mắt trâu kim loại ...................................................................... 7
3.5 Động cơ DC giảm tốc V1 1:48 + bánh xe ........................................................ 9
3.6 PIN lipo 2200mah 11.1V 25C 3S – 227 ......................................................... 10
3.7 Dây cắm testboard (F-F Jumper Wire) ........................................................... 11
3.8 Ốc, đai ốc 4mm: ............................................................................................... 11
CHƯƠNG 4: THIẾT KẾ .............................................................................................. 12
4.1 Phần cơ khí ...................................................................................................... 12
4.1.1 Khung xe ................................................................................................... 12
4.1.2 Bố trí linh kiện .......................................................................................... 13
4.2 Phần điện ........................................................................................................ 15
4.3 Phần điều khiển................................................................................................ 15
4.3.1 Lưu đồ giải thuậ ........................................................................................ 15
4.3.2 Viết chương trình ...................................................................................... 16
CHƯƠNG 5:KẾT LUẬN ............................................................................................. 21
5.1 Kết quả đạt được .............................................................................................. 21
5.2 Những hạn chế ................................................................................................. 21
5.3 Hướng phát triển .............................................................................................. 21
MỤC LỤC HÌNH
Hình 1 Sơ đồ khối robot .................................................................................................. 2
Hình 2 Arduino Nano ...................................................................................................... 3
Hình 3 Sơ đồ chân Arduino Nano ................................................................................... 3
Hình 4 Mạch điều khiển động cơ DC L298 .................................................................... 4
Hình 5 Sơ đồ nguyên lý mạch điều khiển động cơ DC L298 ......................................... 5
Hình 6 Mạch giảm áp LM2596 ....................................................................................... 6
Hình 7 Sơ đồ nguyên lý mạch giảm áp LM2596 ............................................................ 6
Hình 8 Bánh đa hướng mắt trâu ...................................................................................... 7
Hình 9 Cảm biến siêu âm ................................................................................................ 8
Hình 10 Sơ đồ nguyên lý cảm biến siêu âm SRF04 ....................................................... 8
Hình 11 Động cơ giảm tốc và bánh xe ............................................................................ 9
Hình 12 Pin Lipo ........................................................................................................... 10
Hình 13 Tấm mica trong ............................................................................................... 10
Hình 14 Dây cắm testboard ........................................................................................... 11
Hình 15 Ốc và đai ốc ..................................................................................................... 11
Hình 16 Kết cấu mô phỏng ........................................................................................... 12
Hình 17 Kết cấu khung xe ............................................................................................. 12
Hình 18 Bố trí linh kiện................................................................................................. 13
Hình 19 Mặt đáy xe ....................................................................................................... 14
Hình 20 Các góc nhìn xung quanh xe .......................................................................... 14
Hình 21 Sơ đồ nối dây................................................................................................... 15
Hình 22 Lưu đồ giải thuật ............................................................................................. 15
Đồ án cơ điện tử: Robot giải mê cung

CHƯƠNG 1: MỞ ĐẦU
1.1 Lý do chọn đề tài

Robot tự hành (Mobile Robot) nói chung hay robot giải mê cung nói riêng 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 biết được vị trí nó đang đứng và có
thể di chuyển tới một vị trí xác định, đồng thời có thể tự động tránh được các chướng
ngại vật trên đường đi. Vì vậy, việc chế tạo thành công đề tài này sẽ mở ra một hướng
tiếp cận và góp phần thúc đẩy việc ứng dụng của robot ngày càng nhiều vào trong đời
sống hằng ngày và trong nghiên cứu chế tạo.

1.2 Mục tiêu của đề tài

 Làm quen với công tác nghiên cứu khoa học và cách thức làm việc nhóm.
 Thiết kế và thi công robot có thể tìm đường trong mê cung.
 Học hỏi và ứng dụng những kiến thức đã học vào thực tế thông qua đề tài.

1.3 Phạm vi giới hạn của đề tài

1.3.1 Phạm vi nghiên cứu

 Tìm hiểu về cấu trúc robot và giải thuật tìm đường trong mê cung
 Lập trình vi điều khiển
 Ứng dụng cảm biến
 Điều khiển động cơ
 Thiết kế chế tạo được robot

1.3.2 Giới hạn

Thiết kế chế tạo robot hoạt động trong một môi trường nhất định

GVHD: Th.s Hoàng Vinh 1


Đồ án cơ điện tử: Robot giải mê cung

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 Giới thiệu các vấn lý thuyết liên quan

2.1.1 Thuật toán bám tường

Thuật toán bám theo tường (wall follower) là một quy tắc nổi tiếng nhất để vượt
qua mê cung, còn được gọi là quy tắc tay trái hoặc quy tắc tay phải. Nếu mê cung chỉ liên
thông đơn giản nghĩa là tất cả các bức tường của nó được kết nối với nhau hoặc kết nối
với đường bao quanh mê cung, thì bằng cách dò một tay lên một bức tường của mê cung
thì người đi đảm bảo không bị lạc và tìm được lối ra nếu có một lối ra trên đường bao;
hoặc nếu không có lối ra thì sẽ quay trở lại lối vào và sẽ đi qua tất cả các đường của mê
cung ít nhất 1 lần.

2.1.2 Khái niệm điều khiển

Điều khiển là quá trình thu thập thông tin, xử lý thông tin và tác động lên hệ
thống để đáp ứng của hệ thống “gần” với mục đích định trước (bám đuổi kịp mục đích
điều khiển & theo sát yêu cầu thiết kế). Điều khiển tự động là quá trình điều khiển không
cần sự tác động của con người.
Điều khiển học nghiên cứu những hệ thống có bản chất khác nhau, có khả năng
thu nhận, lưu trữ, biến đổi thông tin và sử dụng thông tin để ra quyết định điều chỉnh và
điều khiển hệ thống đạt yêu cầu thiết kế.

2.2 Mô hình hóa hệ thống

Hình 1 Sơ đồ khối robot


Nguyên lý hoạt động: Khi cấp nguồn cho hệ thống, toàn bộ mạch hoạt động, cảm
biến siêu âm xác định khoảng cách giữa robot với tường gửi về cho vi điều khiển. Sau
đó vi điều khiển xử lý và điều khiển động cơ cho robot đi thẳng, rẽ trái, giữ khoảng cách
với tường (tường phải).

GVHD: Th.s Hoàng Vinh 2


Đồ án cơ điện tử: Robot giải mê cung

CHƯƠNG 3: TÌM HIỂU LINH KIỆN


3.1 Arduino Nano CH340

Hình 2 Arduino Nano

Mô tả: Mạch Arduino Nano CH340 có kích thước nhỏ gọn, có thiết kế và chuẩn
chân giao tiếp tương đương với Arduino Nano chính hãng, tuy nhiên mạch sử dụng chip
nạp chương trình và giao tiếp UART CH340 giá rẻ để tiết kiệm chi phí.
Arduino Nano là phiên bản nhỏ gọn của Arduino Uno R3 sử dụng MCU
ATmega328P-AU dán, vì cùng MCU nên mọi tính năng hay chương trình chạy trên
Arduino Uno đều có thể sử dụng trên Arduino Nano, một ưu điểm của Arduino Nano là
vì sử dụng phiên bản IC dán nên sẽ có thêm 2 chân Analog A6, A7 so với Arduino Uno.

Hình 3 Sơ đồ chân Arduino Nano

GVHD: Th.s Hoàng Vinh 3


Đồ án cơ điện tử: Robot giải mê cung

Thông số kỹ thuật:
Thiết kế theo đúng chuẩn chân, kích thước của Arduino Nano chính hãng.
IC chính: ATmega328P-AU.
IC nạp và giao tiếp UART: CH340.
Điện áp cấp: 5VDC cổng USB hoặc 6-9VDC chân Raw.
Mức điện áp giao tiếp GPIO: TTL 5VDC.
Dòng GPIO: 40mA.
Số chân Digital: 14 chân, trong đó có 6 chân PWM.
Số chân Analog: 8 chân (hơn Arduino Uno 2 chân).
Flash Memory: 32KB (2KB Bootloader).
SRAM: 2KB
EEPROM: 1KB
Clock Speed: 16Mhz.
Tích hợp Led báo nguồn, led chân D13, LED RX, TX.
Tích hợp IC chuyển điện áp 5V LM1117.
Kích thước: 18.542 x 43.18mm

3.2 Mạch Điều Khiển Động Cơ DC L298

Hình 4 Mạch điều khiển động cơ DC L298

Mô tả: Mạch điều khiển động cơ DC L298 có khả năng điều khiển 2 động cơ DC,
dòng tối đa 2A mỗi động cơ, mạch tích hợp diod bảo vệ và IC nguồn 7805 giúp cấp
nguồn 5VDC cho các module khác (chỉ sử dụng 5V này nếu nguồn cấp <12VDC).
Mạch điều khiển động cơ DC L298 dễ sử dụng, chi phí thấp, dễ lắp đặt.

GVHD: Th.s Hoàng Vinh 4


Đồ án cơ điện tử: Robot giải mê cung

Thông số kỹ thuật:
IC chính: L298 - Dual Full Bridge Driver
Điện áp đầu vào: 5~30VDC
Công suất tối đa: 25W 1 cầu (lưu ý công suất = dòng điện x điện áp nên áp cấp vào càng
cao, dòng càng nhỏ, công suất có định 25W).
Dòng tối đa cho mỗi cầu H là: 2A
Mức điện áp logic: Low -0.3V~1.5V, High: 2.3V~Vss
Kích thước: 43x43x27mm

Hình 5 Sơ đồ nguyên lý mạch điều khiển động cơ DC L298

GVHD: Th.s Hoàng Vinh 5


Đồ án cơ điện tử: Robot giải mê cung

3.3 Mạch giảm áp DC LM2596 3A

Hình 6 Mạch giảm áp LM2596


Mô tả: Mạch giảm áp DC nhỏ gọn có khả năng giảm áp từ 30V xuống 1.5V mà vẫn đạt
hiệu suất cao (92%) . Thích hợp cho các ứng dụng chia nguồn, hạ áp, cấp cho các thiết
bị như camera, motor , robot,...
Thông số kỹ thuật:
Điện áp đầu vào: Từ 3V đến 30V.
Điện áp đầu ra: Điều chỉnh được trong khoảng 1.5V đến 30V.
Dòng đáp ứng tối đa là 3A.
Hiệu suất : 92%
Công suất : 15W
Kích thước: 45 (dài) * 20 (rộng) * 14 (cao) mm

Hình 7 Sơ đồ nguyên lý mạch giảm áp LM2596

GVHD: Th.s Hoàng Vinh 6


Đồ án cơ điện tử: Robot giải mê cung

3.4 Bánh đa hướng mắt trâu kim loại

Hình 8 Bánh đa hướng mắt trâu

Mô tả: Bánh đa hướng mắt trâu kim loại lớn có kích thước nhỏ gọn thường được
sử dụng như bánh cân bằng của Robot, bánh có chất lượng tốt, chuyển hướng nhanh và
rất êm, phù hợp cho nhiều loại thiết kế robot khác nhau.
Thông số kỹ thuật:
Chất liệu ổ bi : sắt
Chất liệu vỏ : thép
Chiều cao : 20mm
Chiều dài : 50mm
Khoảng cách 2 lỗ bắt vít : 40mm
Đường kính lỗ vít : 4mm
Trọng lượng : 44g

GVHD: Th.s Hoàng Vinh 7


Đồ án cơ điện tử: Robot giải mê cung

2.2.5 Cảm Biến Siêu Âm SRF04

Hình 9 Cảm biến siêu âm

Mô tả: cảm biến dùng để nhận biết khoảng cách đến vật cản nhờ sóng siêu âm
phát ra từ cảm biến và nhận về (Quãng đường = vận tốc x thời gian / 2).
Thông số kỹ thuật:
Điện áp: DC 5V
Dòng điện:2mA
Output Level:5V
góc cảm ứng: không quá 15 độ
phát hiện khoảng cách: 2 cm -100cm
Độ chính xác cao: lên đến 0.3cm

Hình 10 Sơ đồ nguyên lý cảm biến siêu âm SRF04

GVHD: Th.s Hoàng Vinh 8


Đồ án cơ điện tử: Robot giải mê cung

3.5 Động cơ DC giảm tốc V1 1:48 + bánh xe

Hình 11 Động cơ giảm tốc và bánh xe

Mô tả: Động cơ DC giảm tốc V1 1:48 + bánh xe là loại được lựa chọn và sử dụng
nhiều nhất hiện nay cho các thiết kế Robot đơn giản, động cơ có chất lượng và giá thành
vừa phải cùng với khả năng dễ lắp ráp đem đến chi phí tiết kiệm và sự tiện dụng cho
người sử dụng, các bạn khi mua động cơ có thể mua thêm gá bắt động cơ vào thân
Robot.
Thông số kỹ thuật:
Điện áp hoạt động : 3~9VDC
Dòng điện tiêu thụ: 110 - 140mA
Tỉ số truyền: 1:48
Số vòng/1phút:
125 vòng/ 1 phút tại 3VDC.
208 vòng/ 1 phút tại 5VDC.
Moment: 0.8KG.CM

GVHD: Th.s Hoàng Vinh 9


Đồ án cơ điện tử: Robot giải mê cung

3.6 PIN lipo 2200mah 11.1V 25C 3S – 227

Hình 12 Pin Lipo

Mô tả: Pin Lipo là viết tắt của Pin Lithium Polymer, là loại Pin có kích thước nhỏ
gọn, dòng xả lớn, tuổi thọ cao, pin có điện áp trung bình 3.7VDC, sạc đầy là 4.2VDC,
có thể dùng mạch sạc TP4056 để sạc pin.
Thông số kỹ thuật:
Dung lượng: 2200mAh
Điện áp: 11.1V
Dòng xả 30C
Kích thước: 24mm x 34mm x 105mm
Trọng lượng: 183gam
Thiết kế đẹp, bắt mắt, vô cùng bắt mắt
2.2.8 Nhựa Mica Trong

Hình 13 Tấm mica trong

GVHD: Th.s Hoàng Vinh 10


Đồ án cơ điện tử: Robot giải mê cung

3.7 Dây cắm testboard (F-F Jumper Wire)

Hình 14 Dây cắm testboard

Mô tả: Dây cắm testboard cái cái 20cm 40 sợi (F-F Jumper Wire) được sử dụng
với testboard để kết nối các module và linh kiện điện tử với nhau.
Thông số kỹ thuật:
Dây lõi đồng nhiều sợi có độ dẫn điện cao, mối tiếp xúc chắc chắn, độ dài 20cm, có
nhiều màu sắc khác nhau (10 màu)

3.8 Ốc, đai ốc 4mm:

Hình 15 Ốc và đai ốc

GVHD: Th.s Hoàng Vinh 11


Đồ án cơ điện tử: Robot giải mê cung

CHƯƠNG 4: THIẾT KẾ
4.1 Phần cơ khí

4.1.1 Khung xe

Khung xe gia công thủ công từ tấm mica trong.

Hình 17 Kết cấu khung xe

Hình 16 Kết cấu mô phỏng

GVHD: Th.s Hoàng Vinh 12


Đồ án cơ điện tử: Robot giải mê cung

4.1.2 Bố trí linh kiện

Arduino nano
Cảm biến siêu âm
Pin lipo

Mạch giảm áp

Mạch ĐK động cơ

Động cơ và bánh xe

Hình 18 Bố trí linh kiện

GVHD: Th.s Hoàng Vinh 13


Đồ án cơ điện tử: Robot giải mê cung

Hình 19 Mặt đáy xe

Hình 20 Các góc nhìn xung quanh xe

GVHD: Th.s Hoàng Vinh 14


Đồ án cơ điện tử: Robot giải mê cung

4.2 Phần điện

Hình 21 Sơ đồ nối dây


4.3 Phần điều khiển

4.3.1 Lưu đồ giải thuậ

Hình 22 Lưu đồ giải thuật

GVHD: Th.s Hoàng Vinh 15


Đồ án cơ điện tử: Robot giải mê cung

4.3.2 Viết chương trình

#define ENA 5
#define ENB 6
#define in1 7
#define in2 8
#define in3 9
#define in4 10
// chân thu và phát của cảm biến trước
#define thu_A 2
#define phat_A 3
// chân thu và phát của cảm biến phải
#define thu_R 11
#define phat_R 12

float thoigian;
float dist;
float cambientrai;
float cambientruoc;
float cambienphai;
int XungENB=0,XungENA=0;
int p; // biến bù trừ tốc động cơ
float error;
float dokhoangcach(int chanphat, int chanthu) //tính khoảng cách từ cảm biến đến tường
{
digitalWrite(chanphat,HIGH);
delayMicroseconds(100);
digitalWrite(chanphat,LOW);
thoigian=pulseIn(chanthu,HIGH);
dist=0.0344*(thoigian/2);
return (dist);
}

GVHD: Th.s Hoàng Vinh 16


Đồ án cơ điện tử: Robot giải mê cung

void doccambien()
{
cambientruoc= dokhoangcach(phat_A,thu_A);
cambienphai= dokhoangcach(phat_R,thu_R);
//Serial.print(" Trai "); //70
//Serial.print(cambientrai);
//Serial.print(" Truoc "); //50
//Serial.print(cambientruoc);
//Serial.print(" Phai "); //40
//Serial.println(cambienphai);
}
// thiết kế cho xe quẹo trái
void QueoTrai()
{ nghichtrai();
nghichphai();
analogWrite(ENA,150);//110
analogWrite(ENB,150);
delay(5);
while (cambientruoc<15)
{
thuanphai();
nghichtrai();
analogWrite(ENA,150);//110
analogWrite(ENB,150);
doccambien();
}
}
void nghichphai()
{
digitalWrite(in1,LOW);
digitalWrite(in2,HIGH);
}

GVHD: Th.s Hoàng Vinh 17


Đồ án cơ điện tử: Robot giải mê cung

void thuanphai()
{
digitalWrite(in2,LOW);
digitalWrite(in1,HIGH);
}
void nghichtrai()
{
digitalWrite(in3,LOW);
digitalWrite(in4,HIGH);
}
void thuantrai()
{
digitalWrite(in4,LOW);
digitalWrite(in3,HIGH);
}
void BamPhai()
{
error = cambienphai-8;
if(error==0)
{
XungENA = 60;
XungENB = 60;
}
else
{
if(abs(error)>0 && abs(error)<=0.5) p=5;
if(abs(error)>0.5 && abs(error)<=1) p=10;
if(abs(error)>1 && abs(error)<=1.5) p=15;
if(abs(error)>1.5 && abs(error)<=2) p=20;
if(abs(error)>2 && abs(error)<=2.5) p=25;
if(abs(error)>2.5 && abs(error)<=3) p=30;
if(abs(error)>3 && abs(error)<=3.5) p=35;
if(abs(error)>3.5 && abs(error)<=4) p=40;

GVHD: Th.s Hoàng Vinh 18


Đồ án cơ điện tử: Robot giải mê cung

if(abs(error)>4.5 && abs(error)<=5) p=45;


if(abs(error)>5 && abs(error)<=5.5) p=50;
if(abs(error)>5.5 && abs(error)<=6) p=55;
if(abs(error)>6) p=60;

if(error>0) // giảm phải tăng trái


{
XungENA = 60 - p;
XungENB = 60 + p;
}
else if(error<0) // tăng phải giảm trái
{
XungENA = 60 + p;
XungENB = 60 - p;
}
}
analogWrite(ENB,XungENB);
analogWrite(ENA,XungENA);
}
void setup() // cấu hình chiều dữ liệu cho các chân
{
Serial.begin(9600);
pinMode(ENA,OUTPUT);
pinMode(ENB,OUTPUT);
pinMode(in1,OUTPUT);
pinMode(in2,OUTPUT);
pinMode(in3,OUTPUT);
pinMode(in4,OUTPUT);
pinMode(phat_A,OUTPUT);
pinMode(thu_A,INPUT);
pinMode(phat_R,OUTPUT);
pinMode(thu_R,INPUT);
}

GVHD: Th.s Hoàng Vinh 19


Đồ án cơ điện tử: Robot giải mê cung

// vòng lặp để xe hoạt động liên tục


void loop()
{
doccambien();
if (cambientruoc<15)
{
QueoTrai();
}
BamPhai();
}

GVHD: Th.s Hoàng Vinh 20


Đồ án cơ điện tử: Robot giải mê cung

CHƯƠNG 5: KẾT LUẬN


5.1 Kết quả đạt được

 Tìm hiểu được nguyên lý hoạt động một số linh kiện, robot giải mê cung.
 Biết cách thiết kế robot, hoạt động và cách kết hợp giữa các linh kiện.
 Rèn luyện hoạt động nhóm, biết cách phân chia nhiệm vụ giữa các thành viên.
 Biết cách và rèn luyện viết báo cáo.
 Robot tìm đúng đường giải mê cung.

5.2 Những hạn chế

 Kích thước còn lớn.


 Tốc độ hoạt động còn chậm.
 Độ ổn định chưa cao.

5.3 Hướng phát triển

 Giảm kích thước của robot giải mê cung.


 Tăng thêm độ ổn định, tăng thêm tốc độ hoạt động của robot.
 Luyện tập làm việc nhóm, tăng thêm gắn kết giữa các thành viên.
 Tìm hiểu thêm về các linh kiện và các cách kết hợp giữa các linh kiện.
 Tăng cao tính linh hoạt của robot.

GVHD: Th.s Hoàng Vinh 21

You might also like