Professional Documents
Culture Documents
Đà ÁN TÞT NGHIÞP
ĐÄ TÀI: XÂY DĀNG Hà TâA Đâ ÀO CHO
ROBOT DI ĐâNG
Đà ÁN TÞT NGHIÞP
Ts. Nguyßn Minh Ngãc. Ths. Nguyßn Thanh Đăng. Lê Hoài Thanh
TrÁn Hoàng Huy
Sinh viên thực Chữ ký xác nhận
STT Các nội dung, công việc thực hiện Sản phẩm Thời gian
hiện của GVHD
…../…../20…
2 - Thiết kế và thi công phần cứng cho Robot và hệ tọa đọ gắn Lê Hoài Thanh
robot và hệ tọa độ. trên robot
…../…../20…
3 - Lập trình cho phần cứng bằng Firmware nạp cho robot Lê Hoài Thanh
arduino
…../…../20…
4 - Lập trình giao diện trên C# Phần mềm hiển thị đồ thị Lê Hoài Thanh
di chuyển của robot
…../…../20…
5 - Giao tiếp App và phần cứng Hệ tọa độ ảo Lê Hoài Thanh
…../…../20…
6 - Kiểm tra và chạy thử Đánh giá kết quả. Lê Hoài Thanh
…../…../20…
LâI CÀM ¡N
----- ö÷ -----
Chúng em xin chân thành cảm ơn các thầy cô khoa Công Nghệ Điện Tử- Bộ
Môn Điện Tử Máy Tính, trường Đại Học Công Nghiệp Tp. Hồ Chí Minh đã tận
tình giúp đỡ và tạo mọi điều kiện cho em thực hiện đồ án Tốt nghiệp này.
Chúng em xin đặc biệt gửi lời cảm ơn sâu sắc đến giáo viên hướng dẫn Th.S
Nguyễn Thanh Đăng đã giúp đỡ tận tình trong quá trình chọn đề tài cũng như hỗ
trợ chúng em trong suốt quá trình thực hiện đồ án.
Trong quá trình nghiên cứu và thực hiện đồ án, tuy đã rất cố gắng nhưng
chúng em không thể tránh khỏi sự sai sót, chúng em rất mong nhận được những
hướng dẫn, ý kiến đóng góp của quý thầy cô và bạn bè.
Chúng em xin chân thành cảm ơn!
NHÀN XÉT CĂA GIÁO VIÊN H¯àNG D¾N
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
TP.HCM, Ngày … Tháng… Năm 2018
Giáo viên hướng dẫn
NHÀN XÉT CĂA GIÁO VIÊN PHÀN BIÞN 1
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
TP.HCM, Ngày … Tháng … Năm 2018
Giáo viên phản biện 1
NHÀN XÉT CĂA GIÁO VIÊN PHÀN BIÞN 2
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
TP.HCM, Ngày … Tháng … Năm 2018
Giáo viên phản biện 2
MĀC LĀC
Ch°¢ng 1. Mâ ĐÀU .......................................................................................................1
1.1.Đặt v¿n đÅ ..............................................................................................................1
1.2.Đái t°ợng nghiên cứu ............................................................................................2
Ch°¢ng 2. C¡ Sâ LÝ THUYÂT ....................................................................................3
2.1.Gißi thiáu chung vÅ há tháng ................................................................................3
2.2. Tßng quan vÅ robot di đãng, há tháng dẫn đ°áng và các ph°¢ng pháp xác đánh
tãa đã. ..........................................................................................................................4
2.3. Tßng quan vÅ board m¿ch Arduino Mega và board m¿ch Arduino Nano .........14
2.4.Các module sử dụng trong há tháng. ...................................................................33
Ch°¢ng 3. ThiÃt kà và thi công .....................................................................................42
3.1.ThiÃt kà phÁn cứng Robot ...................................................................................42
3.2.ThiÃt kà m¿ch điÅu khiÇn cho Robot ...................................................................43
3.3.Lập trình cho Robot và bã đãc tãa đã .................................................................45
3.4.Lập trình giao dián điÅu khiÇn vßi C# .................................................................47
Ch°¢ng 4. KiÇm thử và đánh giá...................................................................................49
4.1.Mãt sá hình Ánh vÅ kÃt quÁ kiÇm thử ..................................................................49
4.1.KÃt quÁ kiÇm thử: ................................................................................................51
Ch°¢ng 5. KÃt luận và h°ßng phát triÇn đÅ tài .............................................................52
5.1. KÃt luận...............................................................................................................52
5.2 H°ßng phát triÇn đÅ tài ........................................................................................52
Tài liáu tham khÁo .........................................................................................................53
Phụ lục ...........................................................................................................................54
Danh sách các bißu đá, đá thß, s¢ đá, hình Ánh
Hknh 1. Tßng quan há tháng Há Tãa Đã Ào ...................................................................3
Hknh 2. Robot di đãng có bánh xe vi sai c¢ bÁn..............................................................6
Hình 3. Robot di đãng .....................................................................................................9
Hknh 4. Ph°¢ng pháp đo 3 góc tam giác .......................................................................13
Hknh 5. Ph°¢ng pháp đánh vá sử dụng bÁn đồ ...............................................................14
Hknh 6. S¢ đồ chân của chip ATmega 2560 ..................................................................18
Hknh 7. S¢ đồ khái chip ATmega 2560 .........................................................................19
BÁng 1. Chức năng các Port và Pins của chip Atmega 2560 ........................................23
Hknh 8. S¢ đồ chân s¢ l°ợc của Arduino Mega 2560 ...................................................25
Hknh 9. S¢ đồ chân chip ATmega 328p ........................................................................28
Hknh 10. S¢ đồ khái chip ATmega 328p .......................................................................29
BÁng 2. Chức năng các Port và Pins của chip Atmega 328p ........................................31
Hknh 11. S¢ đồ ra chân của board Arduino Nano .........................................................32
BÁng 3. Chân I/O trên board Arduino Nano .................................................................32
Hknh 12. S¢ đồ chân IC LM2596 ..................................................................................34
Hình 13. IC LM2596 .....................................................................................................34
BÁng 4. Các tham sá của IC LM2596 ...........................................................................35
Hknh 14. S¢ đồ nguyên lý module LM2596 ..................................................................35
Hình 15. Module LM2596 .............................................................................................36
BÁng 5. Các chân và chức năng của IC L298................................................................37
Hknh 16. S¢ đồ chân của IC L298 .................................................................................38
Hknh 17. S¢ đồ khái L298 ............................................................................................38
BÁng 6. Chân và các chức năng cùa chip SPCP168A ...................................................39
Hknh 18 S¢ đồ chân SPCP168A ....................................................................................40
Hình 19. Trục X và trục Y của chip SPCP168A ...........................................................40
Hình 20. Các chân của Module HC05 ...........................................................................41
Hknh 21. S¢ đồ phÁn cứng robot di đãng ......................................................................42
Hknh 22. S¢ đồ nguyên lý m¿ch điÅu khiÇn cho Robot .................................................43
Hình 23. Há tãa đã Áo ....................................................................................................44
Hình 24. Bã đãc tãa đã đ°ợc nái vßi m¿ch điÅu khiÇn .................................................44
Hình 25. Giao dián điÅu khiÇn viÃt bằng C# .................................................................47
Hknh 26. L°u đồ giÁi thuật giao dián điÅu khiÇn ...........................................................48
Hình 27. Robot vßi bã đãc tãa đã đã đ°ợc hoàn thành .................................................49
Hknh 28. Robot đang đ°ợc vận hành .............................................................................49
Hình 29. Chuãt máy tính đ°ợc c¿p nguồn.....................................................................50
Hình 30. Tãa đã và đ°áng đi hiÇn thá lên phÁn mÅm điÅu khiÇn ..................................50
Tóm tắt đề tài
ĐÅ tài <Xây dāng há tãa đã Áo cho Robot di đãng= đ°ợc thāc hián bãi 2
sinh viên Lê Hoài Thanh và TrÁn Hoàng Huy. Sau thái gian thāc hián 3 tháng
nhóm thāc hián đã hoàn thành đ°ợc: ThiÃt kà và thi công phÁn cứng cho Robot
di đãng, xây dāng há tãa đã Áo cho Robot dāa trên há tãa của chuãt máy tính,
nhóm đã đãc đ°ợc há tãa đã Oxy của chuãt quang và áp dụng lên cho Robot di
đãng, từ há tãa đã này nhóm xây dāng phÁn mÅm điÅu khiÇn, sử dụng sóng
Bluetooth đÇ truyÅn dÿ liáu vÅ và vÁ đồ thá trên máy tính. KÃt quÁ đã đ¿t đ°ợc
theo yêu cÁu đÅ ra.
Ch°¢ng 1. Mä ĐÀU
1.1.Đặt v¿n đề
Hián nay, công nghá robot là mãt trong nhÿng lĩnh vāc đ°ợc quan tâm hàng
đÁu của xã hãi. ĐÇ h°ßng đÃn sā hián đ¿i hoá, robot đ°ợc con ng°ái sÁn xu¿t đÇ
há trợ chúng ta trong nhiÅu lĩnh vāc của cuãc sáng. Robot cũng đã t¿o ra mãt cuãc
cách m¿ng lßn nh° Internet tr°ßc đây, nó đ°ợc ứng dụng rãng rãi trong công
nghiáp, y tÃ, quác phòng , hàng không và vũ trụ. Trong đó, robot di đãng đ°ợc
xem nh° mãt trợ thủ đắc lāc cho con ng°ái, và đặc biát vßi cuãc cách m¿ng công
nghiáp lÁn thứ 4 vào kỷ nguyên này có thÇ sÁ mã ra mãt thái đ¿i cāc thánh của
robot di đãng.
Nói đÃn robot di đãng,há tháng điÅu khiÇn đóng vai trò thiÃt yÃu cho sā di
chuyÇn của robot, đã có r¿t nhiÅu nghiên cứu vÅ sā di chuyÇn của lo¿i robot này
nhằm phát triÇn nhÿng ph°¢ng pháp giúp đánh vá cũng nh° điÅu khiÇn đÇ có thÇ
phát triÇn thêm nhiÅu ứng dụng cho robot di đãng. Trên thà gißi hián đã có nhiÅu
ph°¢ng pháp xác đánh t¿o đã cho robot di đãng, điÇn hknh nh°:
Há tháng dead-reckoning: có giá thành rÁ nh°ng đã sai lách tăng theo thái
gian.
Há tháng dẫn đ°áng cãt móc chủ dãng: sử dụng đánh vá GPS đÇ xác đánh
điÇm di chuyÇn của robot, tuy đ°ợc sử dụng nhiÅu nh¿t, nh°ng chß chính xác ã
môi tr°áng ngoài trái, há tháng này có sai sá lßn, không thÇ dùng trong môi tr°áng
yêu cÁu đã chi tiÃt cao.
Há tháng đánh vá sử dụng bÁn đồ: sử dụng nhiÅu cÁm biÃn đÇ dẫn đ°áng cho
robot đãng, há tháng có giá thành cao và phức t¿p.
Từ nhÿng h¿n chà của há tháng dẫn đ°áng trên , nhóm nghiên cứu quyÃt đánh
bắt tay vào thāc hián đÅ tài <Thiết kế và thi công bộ định vị cho robot di động=
đÇ có thÇ t¿o ra mãt há to¿ đã Áo giúp viác điÅu khiÇn, dẫn đ°áng cho robot mãt
cách hiáu quÁ h¢n.
1
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
2
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Ch°¢ng 2. C¡ Sä LÝ THUY¾T
2.1.Giái thißu chung về hß thßng
• Arduino Mega điÅu khiÇn Robot di chuyÇn bằng cách giao tiÃp vßi
m¿ch cÁu H đÇ điÅu khiÇn 2 đãng c¢ DC.
• Bã đãc tãa đã vßi linh kián chính là chip SPCP168A sÁ đãc tãa đã và
gửi vÅ cho Arduino Mega qua UART.
• Arduino Nano sÁ đãc góc quay từ module la bàn sá GY511 vßi giao
thức I2C. Arduino Nano sÁ dùng góc quay đó đÇ điÅu chßnh góc quay
của đãng c¢ b°ßc sao cho há tãa đã xOy của chip SPCP168A không
bá lách.
3
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
2.2. Tổng quan về robot di đßng, hß thßng d¿n đ°ãng và các ph°¢ng
pháp xác đßnh táa đß.
2.2.1. Robot di động
a. Sơ lược về Robot di động
Robot di đãng dùng đÇ chß chung cho lo¿i robot có thÇ di chuyÇn xung quanh
môi tr°áng bằng các c¢ c¿u nh° di chuyÇn bằng chân, di chuyÇn bằng bánh xe,
bánh xích, đám khí,...thông qua sā điÅu khiÇn của máy tính hoặc thông qua các vi
m¿ch lập trknh. Robot di đãng có thÇ thāc hián nhiÅu tác vụ ã các đáa điÇm khác
nhau, không cá đánh ã mãt vá trí trong lúc vận hành. So vßi robot cá đánh, lo¿i
robot này có tính phức t¿p cao h¢n, đòi hßi mãt sā đÁu t° lßn h¢n. Trong khi robot
cá đánh thāc hián các công viác đ¢n giÁn, có thÇ lặp đi lặp l¿i mãt hành đãng,
công viác nh¿t đánh và chß yêu cÁu mãt không gian cá đánh đÇ làm viác thì robot
di đãng l¿i thāc hián các công viác có tính phức t¿p cao h¢n, các công viác này
th°áng thāc hián trong mãt không gian mã, thay đßi liên tục và có thÇ r¿t phức
t¿p. Robot di đãng phÁi có khÁ năng đánh vá, thu thập thông tin mãt cách đÁy đủ
vÅ môi tr°áng xung quanh sau đó mßi quyÃt đánh hành đãng sÁ đ°ợc thāc thi tiÃp
theo.
ĐÇ có thÇ thāc hián các yêu cÁu phức t¿p trên, Robot di đãng đ°ợc tích hợp
các cÁm biÃn – thứ đ°ợc coi nh° là các giác quan cho robot di dãng – giúp chúng
có thÇ di chuyÇn, đánh vá hay thu thập thông tin, dÿ liáu. Ngoài ra, robot phÁi đ°ợc
kÃt nái vßi há tháng cung c¿p đián năng đÇ có thÇ vận hành các bã phận c¢ khí,
bã phận điÅu khiÇn cũng nh° các khái cÁm biÃn. Tuỳ theo yêu cÁu công viác mà
robot di đãng có thÇ đ°ợc kÃt nái vßi há tháng máy tính điÅu khiÇn, ngoài ra còn
có thÇ mang theo các thiÃt bá khác nh° camera, micro, cÁm biÃn và các c¢ c¿u c¢
khí đÇ thāc hián công viác.
Mãt đặc điÇm quan trãng khác của robot di đãng là có tính tā đãng t°¢ng
đái, có nghĩa là có thÇ thāc hián mãt sá công viác mà không có sā can thiáp của
con ng°ái. ĐiÅu này thÇ hián rõ trên các robot tā hành đ°ợc phát triÇn và chà t¿o
gÁn đây trong lĩnh vāc quác phòng và hàng không vũ trụ .
4
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
C¿u t¿o của robot di đãng r¿t đa d¿ng từ mức đ¢n giÁn cho đÃn mức đã phức
t¿p cao, nhkn chung các robot di đãng đÅu có các bã phận c¢ bÁn nh° bã phận
chuyÇn đãng, nguồn và vß bãc. Robot di đãng nÃu phân lo¿i theo môi tr°áng làm
viác thì gồm 3 lo¿i: Trên không, mặt đ¿t, d°ßi n°ßc, vßi mái môi tr°áng thk đòi
hßi robot phÁi có kÃt c¿u khác nhau, đái vßi robot trên không thì bã phận giúp
robot chuyÇn đãng có thÇ là cánh qu¿t, vßi robot d°ßi n°ßc thì có thÇ là chân vát,
vßi rbot trên c¿n thì là bánh xe, bánh xích,....
Hián có r¿t nhiÅu công ty chuyên vÅ sÁn xu¿t robot trên thà gißi, hÁu hÃt các
công ty này có xu¿t xứ từ Mỹ nh° iRobot, Kuka robotics, Ekso Bionics. VÅ phía
châu Á có các công ty đÃn từ Nhật nh° Honda Robotics, Panasonic hay Foxconn
Technology group đÃn từ Đài Loan. Hián t¿i sá sáng chà cao nh¿t thuãc vÅ công
ty Honda vßi 499 sáng chÃ, tiÃp đÃn là Samsung vßi 177 sáng chÃ, iRobot của Mỹ
đứng thứ ba vßi 122 sáng chÃ. Vßi Viát Nam nói riêng, chúng ta có TOSY
Robotics là mãt công ty chuyên vÅ nhÿng sÁn phẩm robot và đồ ch¢i công nghá
cao, đã có nhiÅu đăng ký sáng chà liên quan đÃn robot t¿i nhiÅu quác gia trên thÃ
gißi, có 21 sáng chà và kiÇu dáng công nghiáp đ°ợc TOSY Robotics đăng ký t¿i
các n°ßc nh° Mỹ, Trung Quác, Hàn Quác, Canada và EU. Các sÁn phẩm của
TOSY đã đ°ợc xu¿t khẩu đi h¢n 60 quác gia trên thà gißi.
Robot di đãng đã và đang đ°ợc các n°ßc phát triÇn nhằm phục vụ cho viác
tā đãng hoá sẳn xu¿t, vận chuyÇn t¿i các nhà máy công nghiáp và các ngành khác
nh° Y tÃ, An ninh quác phòng. Trong t°¢ng lai xa, chúng sÁ trã thành nhÿng công
cụ đắc lāc há trợ cho cuãc sáng hián đ¿i.
5
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
b. Phương trình động lực học tổng quát của Robot di động
Robot di đãng có bánh xe có khÁ năng chuyÇn đãng đãc lập mà không cÁn
trknh điÅu khiÇn của con ng°ái bên ngoài. Robot đ°ợc trang bá cho chuyÇn đãng
gồm: Đãng c¢ DC và đ°ợc điÅu khiÇn bãi mãt bã xử lý.
GiÁ sử khái l°ợng robot đặt t¿i tâm C. Lo¿i robot này có thÇ xem nh° há
tháng vßi n biÃn c¿u hình trong há to¿ đã tßng quát có m ràng buãc khác nhau.
Ph°¢ng trknh đãng lāc hãc biÇu dißn nh° sau.
.. . . .
M (q) q + Vm (q, q) q + F ( q) + d = B(q) − AT (q) (2.1)
Trong đó:
- M(q) ∈ Rnxn là ma trận quán tính đái xứng xác đánh d°¢ng.
.
Vm (q q) nxm
- là ma trận liên quan đÃn lāc h°ßng tâm và coriolis.
.
6
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
- là nhißu bao gồm nhißu ngoài và các thành phÁn bên trong robot
n
d = ( d x , , d y , d )
T
- B(q)
nxr
là ma trận biÃn đßi đÁu vào.
- A(q) là ma trận ràng buãc vßi giÁ sử rằng robot chuyÇn đãng sao cho
nxm
Vá trí của robot trong há quy chiÃu Cartesian quán tính {O,X,Y} thì hoàn
q = xc , yc ,c
T
toàn đ°ợc cụ thÇ hóa đ°ợc bãi vector Trong đó xc, yc là tãa đã của
trãng tâm của, robot và là ph°¢ng của há quy chiÃu c c so vßi há quy chiÃu
c, x , y
quán tính. Mái liên há giÿa vận tác giÿa hai tãa đã cá đánh và di đãng:
Mô hknh đãng lāc hãc của WMR sau khi biÃn đßi tãa đã đ°ợc biÇu diÇn nh°
sau:
.
M vc + Vm vc + F + d = (2.3)
Rrong đó Vc = [v c , c ] vßi vc là vận tác dài của robot t¿i tâm C có ph°¢ng
theo trục dãc của robot, c là vận tác góc so vßi trục thẳng đứng đi qua tâm C.
M = S T MS , V m = S T (MS+ Vm S), d = S T d , = S T B
ùcos − d sin ù
Trong đó ma trận S (q ) = úú sin d cos úú ,
úû 0 1 úû
7
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
ù •
ù
ú md 2 cos ú
ù m 0 md sin ù
ú • ú
M (q) = úú 0 −md sin úú , Vm (q. q ) = ú md 2sin ú ,
.
m
úû md sin −md cos I úû ú 0 ú
ú ú
ûú ûú
ùcos cos ù ù − sin ù
ù ù
A(q) = úú cos úú
1ú
B(q) = ú sin sin úú , = ú r ú, (2.4)
r
úû L − L úû û l û úû − d úû
q = (x, y, )T
. .
• • •
= −m( y c sin + xc cos )
Ph°¢ng trknh đãng hãc chuyÇn đãng của trãng tâm C d°ßi d¿ng vận tác dài
và vận tác góc quay là:
ùcos − d sin ù
ùv ù ùv1 ù
S (q) = úsin d cos úú , v = ú ú = ú ú ,
ú (2.6)
úû0 úû û û ûv2 û
1
ù. ù
ú xc ú ùcos − d sin ù
ú . ú = úsin d cos ú ùv1 ù , (2.7)
ú yc ú ú ú úv ú
ú . ú úû0 1 úû û 2 û
ûú c ûú
Sử dụng công thức Lagrange đ°ợc sử dụng đÇ tkm ph°¢ng trknh đãng lāc
hãc của WMR. Vì robot chß chuyÇn đãng trong mặt phẳng ngang, trong tr°áng
hợp này G(q)=0, nên há tháng không thÇ thay đßi vá trí theo chiÅu Z nên thà năng
của há, U trã thành hằng sá. Năng l°ợng đãng năng KE đ°ợc cho nh° sau :
ni
1 1 T 1• •
k = mi vi vi + i I ii , K E = õ k Ei = q T M(q) q
i
E
T
2 2 i =1 2 (1.8)
8
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Ph°¢ng trknh đãng lāc hãc của robot tā hành trong hình 1 có thÇ đ°ợc thÇ
hián trong d¿ng ma trận trong (2.4) của robot di đãng sÁ đ¢n giÁn h¢n nÃu chúng
ta lo¿i đ°ợc bßt thành phÁn d trong há. ĐÇ làm đ°ợc viác này hãc viên đã chãn
thiÃt kà há robot tā hành trục nái hai bánh ã giÿa xe sao cho trãng tâm của robot
nằm chính giÿa trục nái hai bánh truyÅn đãng, khi đó giá trá d=0. S¢ đồ hình hãc
của robot đ°ợc vÁ l¿i đ¢n giÁn nh° hknh:
Vect¢ vá trí của robot trên bÅ mặt là q = (x, y, ) x và y là các tãa đã của điÇm
T
C (t¿i điÇm giÿa của trục nái 2 bánh) và là góc đánh h°ßng của robot trong há
quy chiÃu quán tính.
úû 0 0 I úû úû 0 úû
(1.9)
ùcos cos ù ù − sin ù
ù ù
A( q) = úú cos úú
1ú
B(q) = ú sin sin úú , = ú r ú,
r
úû L − L úû û l û úû 0 úû
Lúc này (2.1) công thức đãng lāc hãc Euler-Lagrange của robot tā hành đ°ợc
viÃt l¿i.
ù ù
x
ö m 0 0ö ú ú ùcos cos ù ù sin ù
÷ ÷ú ú 1 ú ú ù 1 ù ú ú
÷ 0 m 0 ÷ ú y ú = r ú sin cos ú ú ú + ú − cos ú (2.10)
÷ 0 0 I ÷ú ú
ø ø ú ú ûú L L ûú û 2 û ûú 0 ûú
û û
9
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Trong đó :
1 và 2 lÁn l°ợt là moment của đãng c¢ trái và đãng c¢ phÁi.
r là bán kính của bánh xe và L là khoÁng cách từ bánh xe đÃn tâm C của
robot. Ràng buãc non-holonomic trong điÅu kián không tr°ợt (1.5), khi đó đ°ợc
viÃt l¿i:
1 1
Đặt l = (1 + 2 ) và a = (1 + 2 )
r r
từ (1.10) ta có:
l
x= cos + sin
m m
a
y= cos − sin (2.12)
m m
a
=
I
Trong đó l , a là moment tánh tiÃn và moment quay t°¢ng ứng. Mái liên há
giÿa vận tác giÿa hai tãa đã cá đánh và di đãng:
ùcos 0ù
S (q) = úúsin 0 úú ,
úû 0 1 úû
ù ù
ùvù v
q = S (q) ú ú + S (q ) ú ú
û û ú ú
đ¿o hàm công thức (2.2) ta có : û û (2.13)
ta đ°ợc :
x = −v sin + v cos
10
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
l
cos + sin = −v sin + v cos
m m
l
cos − sin = v cos + v sin (2.15)
m m
a
=
I
Nhân dòng đÁu vßi cosθ và dòng thứ hai vßi sinθ rồi cãng l¿i ta có:
l a
v= , =
m I (2.16)
Trong đó v và ω là vận tác dài và vận tác góc của robot. Mặt khác của d¿ng
thông th°áng thk đ°ợc viÃt dāa trên ph°¢ng trknh (2.13):
x = v cos
y = v sin (2.17)
=
Đây là ph°¢ng trknh đãng hãc (2.17) và đãng lāc hãc (2.16) của robot di
đãng. Nhÿng ph°¢ng trknh này áp dụng cho d¿ng robot di đãng c¢ bÁn vßi c¢ chÃ
di chuyÇn bằng bánh xe. Vßi mái lo¿i Robot di đãng riêng thì có mãt ph°¢ng trknh
đãng lāc hãc riêng vì nhÿng thông sá của đãng c¢, vi điÅu khiÇn sÁ dẫn đÃn sā
thay đßi của momen lāc, vận tác di chuyÇn, vận tác dài, vận tác quay, …
11
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
- TruyÅn dÿ liáu này qua bã điÅu khiÇn của Robot bằng sóng wifi, bluetooth,...
robot xử lý lánh và đi theo quỹ đ¿o đã đánh ra.
c. Những lợi ích mà hệ thống dẫn đường mang lại cho Robot di động
• Đánh vá đ°ợc vá trí robot trong mãt há to¿ đã Áo.
• CÁi thián tính ßn đánh trong di chuyÇn so vßi viác điÅu khiÇn bằng tín hiáu
Analog thông qua các thiÃt bá nh° Joystick, keyboard .
• Có thÇ áp dụng vào thāc tà đÇ há trợ cho viác chà t¿o nhÿng robot tā hành
thu thập dÿ liáu.
• Phát triÇn thành nhiÅu ứng dụng khác nhau trên robot nh° tích hợp đánh vá
toàn cÁu, kÃt hợp vßi các lo¿i cÁm biÃn âm thanh, hồng ngo¿i,...t¿o ra mãt
há tháng dẫn đ°áng cao c¿p h¢n, ßn đánh h¢n.
Nh°ợc điÇm của ph°¢ng pháp này là do ph°¢ng pháp dead-reckoning là cập
nhật thông tin vÅ h°ßng của chuyÃn đãng theo thái gian do đó dẫn tßi sā tích luỹ
sai sá khi thái gian chuyÇn đãng lâu. Sā tích luỹ sai sá theo h°ßng sÁ dẫn đÃn sai
sá vá trí lßn tăng tß lá vßi khoÁng cách chuyÃn đãng của robot. Lý do dẫn đÃn sā
không chính xác trong viác chuyÃn từ sá vòng quay bánh xe sang chuyÃn đãng
tuyÃn tính nh°: Đã chính xác của c¢ c¿u ch¿p hành và nhißu trong quá trình thu
thập các xung từ encorder… .
12
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
13
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Khi cÁn đo khoÁng cách xa thì cÁn các bã phát có công su¿t lßn t¿i điÇm phát
đà đÁm bÁo phát theo mãi h°ßng, đÇ th¿y đ°ợc nhÿng vùng cãt mác không thÃ
quan sát đ°ợc vật. Đây là h¿n chà của ph°¢ng pháp này, vk phát công su¿t lßn
theo mãi h°ßng chi phí tăng cao, kém ßn đánh và khó thāc hián.
14
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
➢ Arduino là mãt bo m¿ch vi xử lý đ°ợc dùng đÇ lập trknh t°¢ng tác vßi các
thiÃt bá phÁn cứng nh° cÁm biÃn, đãng c¢, đèn và nhiÅu lo¿i thiÃt bá khác. Arduino
có môi tr°áng phát triÇn ứng dụng cāc kỳ dß sử dụng, đi kèm là mãt ngôn ngÿ
lập trình có thÇ hãc mãt cách dß dàng, thuận tián cho ngay cÁ nhÿng ng°ái không
chuyên. Mãt đặc điÇm nßi bật nÿa là giá thành của Arduino khá r¿, cãng thêm sā
há trợ của tính ch¿t nguồn mã khiÃn Arduino ngày càng đ°ợc °a chuãng trong
lĩnh vāc Đián Tử nói chung và IoT nói riêng.
➢ Arduino sử dụng vi điÅu khiÇn AVR phát triÇn bãi hãng Atmel, đ°ợc sÁn
xu¿t dāa trên c¿u trúc AVR RISC, là mãt trong nhÿng dòng vi điÅu khiÇn đÁu tiên
dùng bã nhß flash đÇ l°u ch°¢ng trknh. Vi điÅu khiÇn AVR có công su¿t cao, tuy
nhiên l¿i ít tiêu tán năng l°ợng. Thông th°áng AVR có mãt sá nhÿng tính năng
đặc tr°ng sau:
+ Có thÇ sử dụng xung clock lên đÃn 16Mhz, xung lock nãi lên tßi 8Mhz.
+ Bã nhß Flash có thÇ lập trình l¿i nhiÅu lÁn, có dung l°ợng lßn, só SRAM
lßn , kèm theo bã nhß l°u trÿ lập trknh đ°ợc EEPROM.
➢ Hián t¿i mãt sá dòng Arduino thông dụng nh° Arduino Uno R3, Arduino
Mega, Arduino Nano,... sử dụng các Vi diÅu khiÇn nh° ATmega328,
ATmega1280, ATmega 2560,...
➢ Vßi nhÿng tián ích trên, Arduino dÁn chiÃm đ°ợc thá phÁn lßn trong lĩnh
vāc đián tử ứng dụng, nhÿng sÁn phẩm mang tính tián ích cao đã ra đái, phục vụ
nhu cÁu con ng°ái trong đái sáng. ĐiÇn hình là 1 sá sÁn phẩm nh°:
15
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
+ Máy in 3D : Lo¿i máy in này giúp t¿o ra vật thÇ trāc tiÃp từ các file
CAD 3D. Công nghá này có ứng dụng trong nhiÅu lĩnh vāc đái sáng nh°
Y tÃ, nghá thuật, môi tr°áng,... Nhá vào Arduino, các lo¿i máy in 3D
nguồn mã Reprap đã ra đái đÇ đáp ứng nhÿng nhu cÁu trên.
+ Robot: Vßi khÁ năng xử lý t°¢ng đái tát, kích th°ßc nhß gãn, giá
thành hợp lý, Arduino đ°ợc ứng dụng làm bã não cho nhiÅu lo¿i robot
kích cỡ nhß, đặc biát là robot di đãng.
+UAV: Mãt trong nhÿng công nghá nßi tiÃng của thà kỷ XXI, đ°ợc ứng
dụng nhiÅu trong các lĩnh vāc đáa lý, thái tiÃt, quác phòng . Arduino phù
hợp vßi công nghá này do chúng có thÇ xử lý tát các lo¿i cÁm biÃn nh°
Gyro, accelerometer, GPS,...và khÁ năng truyÅn nhận tín hiáu từ xa.
16
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
18
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
19
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
3 Port A (PA7....PA0) Port A là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port A vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và source.
Khi là ngõ vào, nhÿng chân ã Port A thông
th°áng ã mức th¿p sÁ là nguồn c¿p dòng cho tÁi
nÃu đián trã kéo lên đ°ợc kích ho¿t. Port A sÁ ã
3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi Reset ho¿t
đãng, ngay cÁ khi xung clock không ho¿t đãng.
4 Port B (PB7....PB0) Port B là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port B vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và source.
Khi là ngõ vào, nhÿng chân ã Port B thông
th°áng ã mức th¿p sÁ là nguồn c¿p dòng cho tÁi
nÃu đián trã kéo lên đ°ợc kích ho¿t. Port B sÁ ã
3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi Reset ho¿t
đãng, ngay cÁ khi xung clock không ho¿t đãng.
Port B có khÁ năng truyÅn dẫn tát h¢n các Port
khác
5 Port C (PC7....PC0) Port C là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port C vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và source.
Khi là ngõ vào, nhÿng chân ã Port C thông
th°áng ã mức th¿p sÁ là nguồn c¿p dòng cho tÁi
nÃu đián trã kéo lên đ°ợc kích ho¿t. Port C sÁ ã
3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi Reset ho¿t
đãng, ngay cÁ khi xung clock không ho¿t đãng.
20
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
6 Port D (PD7....PD0) Port D là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port D vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và source.
Khi là ngõ vào, nhÿng chân ã port D thông
th°áng ã mức th¿p sÁ là nguồn c¿p dòng cho tÁi
nÃu đián trã kéo lên đ°ợc kích ho¿t. Port D sÁ ã
3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi Reset ho¿t
đãng, ngay cÁ khi xung clock không ho¿t đãng.
7 Port E (PE7....PE0) Port E là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port E vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và source.
Khi là ngõ vào, nhÿng chân ã Port E thông
th°áng ã mức th¿p sÁ là nguồn c¿p dòng cho tÁi
nÃu đián trã kéo lên đ°ợc kích ho¿t. Port E sÁ ã
3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi Reset ho¿t
đãng, ngay cÁ khi xung clock không ho¿t đãng.
8 Port F (PF7....PF0) Port F ho¿t đãng vßi vai trò ngõ vào Analog cho
bã chuyÇn đßi ADC.
Port F cũng ho¿t đãng nh° mãt port I/O 8 bits 2
chiÅu nÃu bã chuyÇn đßi ADC không đ°ợc sử
dụng. Các chân của port có thÇ cung c¿p đián trã
kéo lên. Ngõ ra Port F vßi đặc tính truyÅn đái
xứng vßi hai khÁ năng sink và source. Khi là ngõ
vào, nhÿng chân ã Port F thông th°áng ã mức
th¿p sÁ là nguồn c¿p dòng cho tÁi nÃu đián trã
kéo lên đ°ợc kích ho¿t. Port F sÁ ã 3 tr¿ng thái (
0, 1 và Tùy Đánh) khi Reset ho¿t đãng, ngay cÁ
khi xung clock không ho¿t đãng. NÃu giao thức
JTAG đ°ợc kích ho¿t, đián trã kéo lên ã các chân
PF7(TDI), PF5(TMS) và PF4(TCK) sÁ đ°ợc kích
ho¿t ngay khi reset xÁy ra.
Port F cũng phục vụ nhÿng chức năng của giao
thức JTAG.
21
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
9 Port G (PG5....PA0) Port G là mãt port I/O 6 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port G vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và source.
Khi là ngõ vào, nhÿng chân ã port G thông
th°áng ã mức th¿p sÁ là nguồn c¿p dòng cho tÁi
nÃu đián trã kéo lên đ°ợc kích ho¿t. Port G sÁ ã
3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi Reset ho¿t
đãng, ngay cÁ khi xung clock không ho¿t đãng.
10 Port H (PH7....PH0) Port H là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port H vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và source.
Khi là ngõ vào, nhÿng chân ã Port H thông
th°áng ã mức th¿p sÁ là nguồn c¿p dòng cho tÁi
nÃu đián trã kéo lên đ°ợc kích ho¿t. Port H sÁ ã
3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi Reset ho¿t
đãng, ngay cÁ khi xung clock không ho¿t đãng.
11 Port J ( PJ7....PJ0) Port J là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port J vßi đặc tính truyÅn
đái xứng vßi hai khÁ năng sink và source. Khi là
ngõ vào, nhÿng chân ã Port J thông th°áng ã
mức th¿p sÁ là nguồn c¿p dòng cho tÁi nÃu đián
trã kéo lên đ°ợc kích ho¿t. Port J sÁ ã 3 tr¿ng thái
( 0, 1 và Tùy Đánh) khi Reset ho¿t đãng, ngay cÁ
khi xung clock không ho¿t đãng.
12 Port K (PK7….PK0) Port K ho¿t đãng vßi vai trò ngõ vào Analog cho
bã chuyÇn đßi ADC.
Port K cũng ho¿t đãng nh° mãt port I/O 8 bits 2
chiÅu nÃu bã chuyÇn đßi ADC không đ°ợc sử
dụng. Các chân của port có thÇ cung c¿p đián trã
kéo lên. Ngõ ra Port K vßi đặc tính truyÅn đái
xứng vßi hai khÁ năng sink và source. Khi là ngõ
vào, nhÿng chân ã Port K thông th°áng ã mức
th¿p sÁ là nguồn c¿p dòng cho tÁi nÃu đián trã
22
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
13 Port L (PL7…PL0) Port L cũng ho¿t đãng nh° mãt port I/O 8 bits 2
chiÅu nÃu bã chuyÇn đßi ADC không đ°ợc sử
dụng. Các chân của port có thÇ cung c¿p đián trã
kéo lên. Ngõ ra Port L vßi đặc tính truyÅn đái
xứng vßi hai khÁ năng sink và source. Khi là ngõ
vào, nhÿng chân ã Port L thông th°áng ã mức
th¿p sÁ là nguồn c¿p dòng cho tÁi nÃu đián trã
kéo lên đ°ợc kích ho¿t. Port L sÁ ã 3 tr¿ng thái (
0, 1 và Tùy Đánh) khi Reset ho¿t đãng, ngay cÁ
khi xung clock không ho¿t đãng.
14 RESET Ngõ vào Reset. Mãt đián áp mức th¿p vào chân
này lâu h¢n chiÅu dài xung tái thiÇu sÁ t¿o ra
reset, kÇ cÁ khi xung clock không ho¿t đãng,
chiÅu dài các xung ngắn h¢n sÁ không đủ đÇ t¿o
ra reset.
15 XTAL1 Ngõ vào của bã khuÃch đ¿i dao đãng nghách đÁo
và ngõ vào đÇ vận hành xung clock nãi.
BÁng 1. Chức nng các Port và Pins căa chip Atmega 2560
23
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
- SRAM : 8KB
- EEPROM : 4KB
• Board Arduino Mega 2560 có thÇ dùng nguồn từ cßng USB hoặc nguồn ngoài.
Nguồn ngoài có thÇ là AC-DC adapter hoặc nguồn Pin, vßi adapter có thÇ sử
dụng jack nguồn 2.1mm, vßi pin có thÇ sử dụng chân Vin và GND.
• Đián áp ho¿t đãng nằm trong ng°ỡng từ 6-20V. NÃu đián áp c¿p vào ít h¢n 7V,
chân 5V trên board có thÇ c¿p nguồn ra nhß h¢n 5V và board m¿ch sÁ không
ßn đánh. NÃu đián áp c¿p vào cao h¢n 12V bã ßn áp có thÇ bá nóng và gây h°
hßng cho board m¿ch.
• Board m¿ch Arduino Mega 2560 khác vßi nhÿng Board m¿ch Arduino tr°ßc
đây ã chá nó không dùng FTDI USB-to-Serial driver chip, thay vào đó nó dùng
Atmega8U2 đ°ợc lập trình nh° mãt bã chuyÇn USB-to-Serial.
• Board m¿ch Arduino Mega 2560 vßi chip Atmega2560 có bã nhß flash vßi
dung l°ợng 256KB (trong đó 8KB đÇ ch¿y bootloader) đÇ chứa code, SRAM
vßi dung l°ợng 8KB và EEPROM vßi dung l°ợng 4KB.
24
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
• 54 chân I/O trên Arduino Mega 2560 có thÇ dùng làm input hoặc output. Chúng
ho¿t đãng vßi đián áp 5V, mái chân có thÇ cung c¿p hoặc nhận vào tái đa 40mA
và có đián trã kéo lên 20-50 k Ω tích hợp sẵn ( mặc đánh là không kÃt nái )
• Mãt sá chân I/O của Arduino Mega 2560 có cắc chức năng đặc biát nh° sau:
- Chân LED: 13 , đây là led tích hợp sẵn trên Adrduino Mega.
25
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
27
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
28
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
29
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
3 Port B (PB7:PB0) Port B là mãt port I/O 8 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port B vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và
source. Khi là ngõ vào, nhÿng chân ã Port B
thông th°áng ã mức th¿p sÁ là nguồn c¿p dòng
cho tÁi nÃu đián trã kéo lên đ°ợc kích ho¿t. Port
B sÁ ã 3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi
Reset ho¿t đãng, ngay cÁ khi xung clock không
ho¿t đãng.
4 Port C (PC5:PC0) Port B là mãt port I/O 7 bits 2 chiÅu vßi đián trã
kéo lên tích hợp. Ngõ ra Port B vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và
source. Khi là ngõ vào, nhÿng chân ã Port B
thông th°áng ã mức th¿p sÁ là nguồn c¿p dòng
cho tÁi nÃu đián trã kéo lên đ°ợc kích ho¿t. Port
B sÁ ã 3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi
Reset ho¿t đãng, ngay cÁ khi xung clock không
ho¿t đãng.
5 Pin PC6 NÃu thanh ghi RSTDISBL đ°ợc lập trình, PC6
đ°ợc dùng nh° mãt chân I/O. L°u ý rằng tính
năng của PC6 khác vßi các chân khác ã Port C.
NÃu thanh ghi RSTDISBL không đ°ợc lập
trknh, PC6 dùng nh° 1 ngõ vào Reset, mãt đián
áp mức th¿p vào chân này lâu h¢n chiÅu dài
xung tái thiÇu sÁ t¿o ra Reset, kÇ cÁ khi xung
30
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
6 Port D (PD7....PD0) Port D là mãt port I/O 8 bits 2 chiÅu vßi đián
trã kéo lên tích hợp. Ngõ ra Port D vßi đặc tính
truyÅn đái xứng vßi hai khÁ năng sink và
source. Khi là ngõ vào, nhÿng chân ã port D
thông th°áng ã mức th¿p sÁ là nguồn c¿p dòng
cho tÁi nÃu đián trã kéo lên đ°ợc kích ho¿t. Port
D sÁ ã 3 tr¿ng thái ( 0, 1 và Tùy Đánh) khi
Reset ho¿t đãng, ngay cÁ khi xung clock không
ho¿t đãng.
BÁng 2. Chức nng các Port và Pins căa chip Atmega 328p
31
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
32
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
• LM2596 là mãt IC nguyên khái cung c¿p t¿t cÁ các chức năng tích cāc
của mãt bã ßn áp chuyÇn m¿ch b°ßc xuáng ( step-down hay buck ), vßi
khÁ năng cháu đ°ợc tÁi lên đÃn 3A, có đặc tính nắn dòng. ThiÃt bá này
có đián áp đÁu ra có thÇ điÅu chßnh đ°ợc bằng biÃn trã. Vßi yêu cÁu
phÁn cứng ít, bã ßn áp này dß sử dụng, đ°ợc tích hợp sẵn bã bù trừ tÁn
sá và bã dao đãng tÁn sá cá đánh.
33
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
34
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
8 Iq (mA) 5
- S¢ đồ nguyên lý
35
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
- Module LM2596
36
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
37
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
38
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
39
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
40
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
• Thông sá kỹ thuật
- Dòng đián khi ho¿t đãng: khi Pairing 30 mA, sau khi pairing
ho¿t đãng truyÅn nhận bknh th°áng 8 mA.
41
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
M¿ch điều Bß xÿ lý
khißn đßng c¢ trung tâm
Bß
đác Đßng c¢
Đßng c¢
táa đß DC
DC
Power
42
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
- M¿ch điÅu khiÇn sÁ c¿p tín hiáu cho các chân input IN1,
IN2,IN3,IN4 của m¿ch cÁu H.
- M¿ch cÁu H đ°ợc c¿p nguồn 12V từ pin, nhận tín hiáu điÅu khiÇn
từ m¿ch điÅu khiÇn, xu¿t tín hiáu đó d°ßi d¿ng đián áp qua các chân
OUT1, OUT2, OUT3, OUT4.
- Các chân OUT1, OUT2 nái vßi đãng c¢ 1, OUT3, OUT4 nái vßi
đãng c¢ 2 đÇ vận hành 2 đãng c¢ này.
• S¢ đá nguyên lý
43
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Hình 24. Bß đác táa đß đ°ÿc nßi vái m¿ch điều khißn
44
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Begin
Robot di chuyÇn
Đã nhận đủ X Sai
và Y
Đúng
45
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Sai
Máy tính đã kÃt
nái vßi Bluetooth
Đúng
Đãc tãa đô
End
• Khai báo các chân Arduino sử dụng cho Driver L298, bã đãc tãa
đã, module Bluetooth.
• Khai báo các biÃn l°u tãa đã, Baudrate cho bluetooth.
• Khãi đãng bã đãc tãa đã, nÃu bã đãc tãa đã ho¿t đãng thì bắt đÁu
gửi tín hiáu cho đãng c¢.
• Arduino sÁ gửi tín hiáu điÅu khiÇn vào các chân IN1 IN2 IN3 IN4
của driver L298.
• NÃu L298 nhận đ°ợc tín hiáu, mãt mức đián áp sÁ gửi qua các chân
OUT1 OUT2 vào đãng c¢ thứ 1, OUT3 OUT4 vào đãng c¢ thứ 2.
• NÃu bluetooth đã kÃt nái vßi máy tính thì bắt đÁu đãc tãa đã.
46
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
47
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
• TiÃn hành kÃt nái COM: nÃu kÃt nái thành công ch°¢ng trknh sÁ bắt
đÁu nhận dÿ liáu từ cßng COM, nÃu kÃt nái th¿t b¿i ch°¢ng trknh báo
lái, yêu cÁu chãn đúng port COM.
• Khi kÃt nái thành công cßng COM, dÿ liáu đ°ợc gÿi đÃn.
• Xử lý chuái, nhận đ°ợc hai giá trá x và y, nÃu chuái nhận vÅ sai đánh
d¿ng ch°¢ng trknh báo lái và kÃt thúc.
• Ch°¢ng trknh kÃt thúc khi ng°ái dùng đóng giao dián.
48
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
49
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Hình 30. Táa đß và đ°ãng đi hißn thß lên phÁn mềm điều khißn
50
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
51
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
- PhÁn mÅm ch¿y tát, nhận tín hiáu đúng vßi tín hiáu robot gửi vÅ và vÁ
đ°ợc đ°áng đi theo yêu cÁu của đÅ tài.
Đây là đÅ tài r¿t mßi, ch°a có trên thāc tà hián nay, nhóm đã m¿nh
d¿n thāc hián theo yêu cÁu của giáo viên h°ßng dẫn, đÅ tài là tiÅn đÅ phát
triÇn há tháng dẫn đ°áng cho Robot di đãng r¿t đa năng, há tãa đã Áo trong
đÅ tài có thÇ đ°ợc ứng dụng cho nhiÅu thiÃt bá khác không chß riêng cho
Robot di đãng.
• Nh°ợc điÇm
Do thái gian thāc hián quá ngắn ( 3 tháng ) và đÅ tài ch°a có trên thāc
tà nhóm đã gặp r¿t nhiÅu khó khăn vÅ tài liáu tham khÁo nên đÅ tài chß dừng
l¿i ã mức đãc tãa đã xy và vÁ l¿i đ°áng đi của robot trên máy tính. Tuy
nhiên nÃu thái gian thāc hián dài h¢n và kinh phí tát h¢n đÅ tài có thÇ phát
triÇn thêm trên các đái t°ợng khác nh° : tàu thuyÅn, ô tô, robot hÁm mß, ….
Đây cũng chính là h°ßng phát triÇn cho các đÅ tài sau đÇ hoàn thián h¢n.
52
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
[4] Borenstein, J., Everet,t H.R., Feng, L., Navigating Mobile Robots,
Systems and Techniques. Natick, MA, A.K. Peters, Ltd., 1996.web :
[5] Borenstein, J., Everett, H.R., Feng, L., Where Am I? Sensors and
Methods for Mobile Robot Positioning. Ann Arbor, University of Michigan.
Available at http:// www-personal.engin.umich.edu/~johannb/position.htm.
[8] Canudas de Wit, C., Siciliano, B., and Bastin G. (editors), Theory of
Robot Control. New York, Spinger-Verlag, 1996.
53
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
Phā lāc
- Code điÅu khiÇn của Arduino Mega 2560
#include <arduino.h>
#include <ps2.h>
#include <stdint.h>
#include <SoftwareSerial.h>
#define IN1 9
#define IN2 8
#define IN3 11
#define IN4 10
#define MIN_SPEED 0
int i;
void M_Dung()
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
54
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
{ //speed: từ 0 - MAX_SPEED
analogWrite(IN1, speed);
digitalWrite(IN2, LOW);
{ //speed: từ 0 - MAX_SPEED
digitalWrite(IN3, LOW);
analogWrite(IN4, speed );
analogWrite(IN2, speed);
{
55
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
analogWrite(IN4, speed);
/**********************ROBOT DI CHUYEN*******************/
void di_thang ()
M1_Tien(42);
M2_Tien(48);
void di_lui()
M1_Lui(42);
M2_Lui(50);
int16_t mstat;
int16_t mx,my;
void mouse_init()
mouse.write(0xff); // reset
56
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
mouse.read(); // blank */
mouse.read(); // blank */
mouse.read(); // ack
delayMicroseconds(100);
void co_read ()
mstat = mouse.read();
mx = mouse.read();
my = mouse.read();
if(mx==129)
tempX-=10;
else if(mx==127)
tempX+=10;
if(my==129)
tempY-=10;
else if(my==127)
tempY+=10;
57
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
void setup()
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
mouse_init();
BT.begin(9600);
BT.println("Bluetooth Connected");
void loop()
di_thang();
delay(10);
co_read();
BT.print (tempX,DEC);
BT.print(" ");
58
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
BT.print (tempY,DEC);
BT.println();
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.IO.Ports;
using System.Runtime.InteropServices;
using System.Diagnostics;
namespace Form_Mouse
{
public partial class Form_Mouse : Form
{
SerialPort serialComPort = new SerialPort();
private string in_data;
public Form_Mouse()
{
InitializeComponent();
foreach (string portName in SerialPort.GetPortNames())//tim cong
COM co trong may va add no
{
ComboBox_COMPort.Items.Add(portName);
}
if (ComboBox_COMPort.Items.Count > 0)
ComboBox_COMPort.SelectedIndex =
ComboBox_COMPort.Items.Count - 1;
59
Đồ án tốt nghiệp ĐH Công Nghiệp TP.HCM
serialComPort.DataReceived += new
SerialDataReceivedEventHandler(serialComPort_DataReceived);
}
{
portError = true;
}
if (portError)
{
MessageBox.Show("KHÔNG THÆ KÂT NàI");
}
else
{
ComboBox_COMPort.Enabled = false;
Button_Connect.Enabled = false;
Button_DisConnect.Enabled = true;
}
}
catch (Exception ex1)
{
{
MessageBox.Show(ex1.Message, "LàI KÂT NàI");
}
}
}
ComboBox_COMPort.Enabled = true;
Button_Connect.Enabled = true;
Button_DisConnect.Enabled = false;
}
this.Invoke(new EventHandler(displaydata_event));
Ler();
Draw();
}
graph.SmoothingMode =
System.Drawing.Drawing2D.SmoothingMode.HighQuality;
}
graph.DrawLine(new Pen(Color.Blue, 2), ptAnt.X + 310,
ptAnt.Y + 160, toaDo.X + 310, toaDo.Y + 160);//vÁ đ°áng nái
graph.DrawString("O",
new Font("Palatino Linotype", 10, FontStyle.Bold),
new SolidBrush(Color.Black), 310, 260);//ghi tâm O
graph.DrawString("Y",
new Font("Palatino Linotype", 10, FontStyle.Bold),
new SolidBrush(Color.Black), 310, 1); // ghi trục y
graph.DrawString("X",
new Font("Palatino Linotype", 10, FontStyle.Bold),
new SolidBrush(Color.Black), 600, 260); // ghi trục x
ptAnt = toaDo;
}
}
catch (Exception ex2)
{
MessageBox.Show(ex2.Message, "LàI VÀ HÌNH");
}
}
}
}
}
64