TRỊNH TUẤN DƯƠNG NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO MOBILE ROBOT TỰ HÀNH TÍCH HỢP MỘT SỐ CÔNG NGHỆ XỬ LÝ ẢNH VÀ THUẬT TOÁN HIỆN ĐẠI Ngành: Công nghệ kỹ thuật cơ điện tử Chuyên ngành: Kỹ thuật
Trang 1HÀ NỘI - 2020
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ^^
Trang 2HÀ NỘI - 2020
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ^^
TRỊNH TUẤN DƯƠNG
NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO MOBILE ROBOT TỰ HÀNH TÍCH HỢP MỘT SỐ CÔNG NGHỆ
XỬ LÝ ẢNH VÀ THUẬT TOÁN HIỆN ĐẠI
Ngành: Công nghệ kỹ thuật cơ điện tử
Chuyên ngành: Kỹ thuật cơ điện tử
Mã số: 8520114.01
LUẬN VĂN THẠC SĨ CÔNG NGHỆ KỸ THUẬT CƠ ĐIỆN TỬNGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS PHẠM MẠNH THẮNG
Trang 3Trịnh Tuấn Dương
LỜI CAM ĐOAN
Tôi xin cam đoan: Luận văn này là công trình nghiên cứu cá nhân, không saochép lại Tất cả những nội dung có sự tham khảo từ các tài liệu khác đều đượcghi lại đầy đủ trong phần tài liệu tham khảo
Hà Nội, ngày 18 tháng 9 năm 2020
Học viên
Trang 4i i
Trịnh Tuấn Dương
LỜI CẢM ƠN
Tôi xin gửi lời cảm ơn chân thành đến Giáo viên hướng dẫn là PGS.TS PhạmMạnh Thắng vì những sự giúp đỡ, hướng dẫn tận tình của thầy Những sự chỉdẫn, giúp đỡ đó có vai trò rất quan trọng giúp tôi hoàn thành được Luận văn.Tôi cũng xin gửi lời cảm ơn đến Gia đình, Bạn bè, Đồng nghiệp, những người
đã có sự giúp đỡ, động viên kịp thời trong thời gian tôi thực hiện Luận văn này.Xin chân thành cảm ơn!
Hà Nội, ngày 18 tháng 9 năm 2020
Học viên
Trang 5MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC BẢNG BIỂU vi
DANH MỤC HÌNH VẼ vii
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀLUẬN VĂN 2
1.1 Giới thiệu chung 2
1.1.1 Giới thiệu về robot tự hành 2
1.1.2 Bài toán xác định vị trí và tìm đường 3
1.2 Mục đích, đối tượng, nội dung nghiên cứu, và giới hạn của luận văn 6
1.2.1 Mục đích, và đối tượng nghiên cứu của luận văn 6
1.2.2 Nội dung nghiên cứu của luận văn 8
1.2.3 Giới hạn của luận văn 9
CHƯƠNG 2 THIẾT KẾ MOBILE ROBOT 10
2.1 Cấu tạo tổng quát của mobile robot 10
2.2 Thiết kế phần khung, vỏ cho mobile robot 10
2.2.1 Ứng dụng công nghệ in 3D FDM trong việc thiết kế khung, vỏ cho robot 10
2.2.2 Thiết kế, chế tạo khung vỏ của robot bằng công nghệ in 3D FDM
13 2.3 Thiết kế mạch nguyên lý cho mobile robot 15
2.4 Thiết lập chế độ làm việc cho các linh kiện 15
2.4.1 Arduino Uno 15
2.4.2 QTR - 5RC 16
Trang 62.4.3 Module thu phát sóng Radio nRF24L01 18 2.4.4 Động cơ DC 19
Trang 72.4.5 Module điều khiển động cơ L298 20
2.4.6 Thiết lập giao tiếp cho robot 21
2.5 Viết chương trình điều khiển cho mobile robot 22
CHƯƠNG 3 XÂY DỰNG CHƯƠNG TRÌNH XỬ LÝ ẢNH VÀ ĐỊNH HƯỚNG CHO MOBILE ROBOT 27
3.1 Mục đích và nội dung của chương trình 27
3.2 Ứng dụng công nghệ xử lý ảnh trong luận văn 27
3.2.1 Tổng quan về xử lý ảnh 27
3.2.2 Khai thác thư viện OpenCV để hỗ trợ quá trình xử lý ảnh trong luận văn 28
3.2.3 Một số khái niệm và thuật ngữ quan trọng về xử lý ảnh được sử dụng trong luận văn 29
3.3 Xây dựng nguyên lý hoạt động của chương trình xử lý ảnh 31
3.4 Tạo bản đồ 32
3.4.1 Dùng ROI để xác định vùng hoạt động của robot 32
3.4.2 Xác định đường đi của robot (tìm line) 33
3.4.3 Thu nhỏ kíchthước vạch 35
3.4.4 Chia nút vàxácđịnhthông số của các nút 36
3.5 Ứng dụng thuật toán Camshift trong việc truy bắt, định vị robot 37
3.5.1 Giới thiệu thuật toán Camshift 37
3.5.2 Truy bắt robot theo thuật toán Camshift 42
3.6 Tìm đường cho robot 46
3.6.1 Giới thiệu về thuật toán A* 49
3.6.2 Ứng dụng thuật toán A* tìm đường cho robot 50
3.1 Dần hướng cho robot 50
3.2 Kết quả thử nghiệm tìm đường, định vị và dần hướng cho robot theo thời gian thực 51
3.2.1 Kết quả lần thử nghiệm 1 52
Trang 83.2.2 Kết quả thử nghiệm lần 2 54
Trang 93.2.3 K
ết quả thử nghiệm lần 3 563.2.4 Kết quả thử nghiệm lần 4 58
KẾT LUẬN 60 DANH MỤC CÔNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN VĂN 62 TÀI LIỆU THAM KHẢO 63 PHỤ LỤC 1: MỘT SỐ HÌNH ẢNH VỀ SẢN PHẨM, VÀ MÔI TRƯỜNG THỬ NGHIỆM CỦA LUẬN VĂN 65 PHỤ LỤC 2: CÔNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN VĂN 72
Trang 10DANH MỤC BẢNG BIỂU
Bảng 1-1 So sánh ưu, nhược điểm của mobile robots bám vạch và không bámvạch 7Bảng 2-1 Một vài ưu, nhược điểm của công nghệ in 3D FDM 12Bảng 2-2 So sánh hành vi của robot trong luận văn và các robot bám vạch sửdụng thuật toán bám đường trái hoặc bám đường phải 24Bảng 2-3 Kết quả xác định ngã rẽ và hành vi của robot dựa trên tín hiệu trả vềcủa cảm biến dò line 25
Trang 11DANH MỤC HÌNH VẼ
Hình 1.1 Một mobile robots đơn giản [27] 2
Hình 1.2 Nhiều công nghệ có thể được áp dụng cùng lúc để định vị và định hướng cho mobile robots [16] 3
Hình 1.3 Thiết bị BLE Beacons sử dụng công nghệ bluetooth [11] 4
Hình 1.4 Hệ thống đánh dấu AprilTags [11] 4
Hình 1.5 Hệ thống định vị bằng sóng radio[17] 5
Hình 1.6 Hệ thống NFC tags [11] 5
Hình 1.7 Hệ thống RFID passive tags [11] 6
Hình 1.8 Một mobile robot bám vạch có nhiệm vụ vận chuyển nguyên vật liệu [23] ' 6
Hình 1.9 Hệ thống đánh dấu cho một mobile robots bám vạch từ [18] 7
Hình 1.10 Bản đồ chứa các vòng lặp khiến cho một số thuật toán dò đường như bám biên không thể giải đúng 8
Hình 1.11 Nguyên lý hoạt động của hệ thống 9
Hình 2.1 Một mô hình đang được in theo công nghệ FDM [22] 11
Hình 2.2 Mặt trước mô hình 3D mobile robot 13
Hình 2.3 Mặt sau mô hình 3D của mobile robot 14
Hình 2.4 Mô hình mobile robot hoàn thiện 14
Hình 2.5 Mạch nguyên lý của hệ thống gồm hai phần: module phát tín hiệu và mobile robot 15
Hình 2.6 Board Arduino Uno [9] 16
Hình 2.7 Cảm biến QTR - 5RC [16] 17
Hình 2.8 Module thu phát sóng radio NRF24L01 [12] 18
Hình 2.9 Động cơ DC GA25 [10] 19
Hình 2.10 Module điều khiển động cơ L298 [20] 20
Hình 2.11 Cấu tạo của IC điều khiển động cơ L298 21
Hình 2.12 Sơ đồ truyền dữ liệu từ chương trình xử lý ảnhđến robot 21
Hình 2.13 Nguyên lý hoạt động của mobile robot 23
Hình 3.1 Các module chính trong thư viện OpenCV [25] 28
Hình 3.2 Không gian màu RGB [24] 30
Hình 3.3 Không gian màu HSV [26] 30
Hình 3.4 Nguyên lý hoạt động của chương trình xử lý ảnh 31
Hình 3.5 Bản đồ trước khi áp dụng ROI (trái) và bản đồ sau khi áp dụng ROI (phải) 32 Hình 3.6 Kết quả xác định vạch theo bằng phương pháp phân ngưỡng nhị phân
Trang 12ngược trên bản đồ 1 34Hình 3.7 Kết quả xác định vạch theo bằng phương pháp phân ngưỡng nhị phânngược trên bản đồ 2 34Hình 3.8 Kết quả làm giảm kích thước vạch trên bản đồ 1 bằng phép toán coảnh 36Hình 3.9 Kết quả làm giảm kích thước vạch trên bản đồ 2 bằng phép toán coảnh 36Hình 3.10 Ví dụ về việc chia lưới trong một bản đồ mà đường đi có kích thướclớn [8] 37Hình 3.11 Cửa sổ lọc trượt đến trọng tâm của tập hợp điểm [15] 38Hình 3.12 Trong thuật toán meanshift, kích thước của cửa sổ lọc không thay đổitheo sự thay đổi của đối tượng [15] 40Hình 3.13 Trong thuật toán Camshift, kích thước và hướng của cửa sỏ lọc thayđổi theo sự thay đổi của đối tượng [15] 41Hình 3.14 Sự thay đổi của Histogram khi dải chia lưới thay đổi [2] 42Hình 3.15 Ảnh gốc, histogram và backprojection tương ứng [13] 43Hình 3.16 Robot tự hành được đánh dấu nhận dạng bởi hai vùng màu khác nhautrên thân 44Hình 3.17 Kết quả định vị mobile robot tại một số vị trí khác nhau 45Hình 3.18 Kết quả giảm nhiễu nhờ việc tinh chỉnh các giá trị HSV dùng để phânngưỡng 46Hình 3.19 Thuật toán tìm đường theo quy tắc bám phải [30] 46Hình 3.20 Thuật toán Pledge giúp thoát khỏi các vật cản phức tạp [30] 47Hình 3.21 Kết quả tìm đường bằng thuật toán A* (trái) và thuật toán Dijkstra(phải) 49Hình 3.22 Kết quả tìm đường của lần thử nghiệm 1 52Hình 3.23 Kết quả dẫn hướng cho robot theo thời gian thực của lần thử nghiệm
1 53Hình 3.24 Kết quả tìm đường lần thử nghiệm 2 54Hình 3.25 Kết quả dẫn hướng cho robot theo thời gian thực của lần thử nghiệm
2 55Hình 3.26 Kết quả tìm đường của lần thử nghiệm 3 56Hình 3.27 Kết quả dẫn hướng cho robot theo thời gian thực của lần thử nghiệm
3 57Hình 3.28 Kết quả tìm đường lần thử nghiệm 4 58Hình 3.29 Kết quả dẫn hướng theo thời gian thực lần thử nghiệm thứ 4 59
Trang 13Phụ lục 1 1 Môi trường thử nghiệm hoạt động của robot 65
Phụ lục 1 2 Chương trình xử lý ảnh trên máy tính kết nối với Module phát qua giao tiếp Serial 66
Phụ lục 1.3 Góc nhìn chéo về Robot 67
Phụ lục 1.4 Mặt bên của Robot 68
Phụ lục 1.5 Mặt lưng của Robot 69
Phụ lục 1.6 Mặt sau của robot 70
Phụ lục 1.7 Mặt đáy của Robot 71
Trang 14MỞ ĐẦU
Luận văn thạc sĩ “Nghiên cứu, thiết kế, chế tạo mobile robot tự hành tíchhợp một số công nghệ xử lý ảnh và thuật toán hiện đại” có nhiệm vụ chính làthiết kế, chế tạo một mô hình mobile robot tự hành dạng bám vạch được định vị,tìm đường và dẫn hướng nhờ vào sự kết hợp giữa các công nghệ xử lý ảnh vàthuật toán tìm đường Hướng tiếp cận này mang đến điểm mới so với các mobilerobot bám vạch truyền thống là khả năng giải quyết đồng thời ba bài toán định
vị, tìm đường và dẫn hướng Nhờ áp dụng công nghệ xử lý ảnh nên robot có thểđến được vị trí bất kỳ trên đường đi mà không cần tạo các dấu trên bản đồ nhưphương pháp truyền thống Đồng thời, nhờ áp dụng công nghệ xử lý ảnh, sựtương tác giữa người dùng với robot bám vạch cũng tăng lên khi người dùng cóthể lựa chọn vị trí đích cho robot một cách đơn giản thông qua việc kích chuộttrên ảnh của bản đồ
Nội dung của báo cáo luận văn gồm có những phần sau:
Chương 1 Tổng quan về luận văn
Chương 2 Thiết kế mobile robot dạng bám vạch
Chương 3: Xây dựng chương trình xử lý ảnh và định hướng cho mobile
robot dạng bám vạchHướng phát triển của luận văn vẫn còn rất rộng Vì vậy, tác giả sẽ tiếp tụcnghiên cứu, phát triển nội dung của luận văn để có thể tìm hiểu sâu hơn về lĩnhvực mobile robot và hoàn thiện, nâng cao tính ứng dụng của luận văn vào thựctiễn Báo cáo không tránh khỏi còn có những sai sót, cũng như tầm hiểu biết củatác giả chỉ có hạn nên rất mong nhận được những ý kiến đóng góp để tác giả cóthể sửa chữa và cải tiến, hoàn thiện và làm phong phú thêm nội dung của luậnvăn
Xin chân thành cảm ơn!
TÁC GIẢ
Trang 15CHƯƠNG 1 TỔNG QUAN VỀ LUẬN VĂN
1.1 Giới thiệu chung
1.1.1 Giới thiệu về robot tự hành
Robot tự hành, hay còn gọi là AMR (autonomous mobile robot) hoặc AGV(autonomous guided vehicle) là những robot có khả năng di chuyển một cách tựđộng Khác với robot công nghiệp (industrial robots) là những robot ít có tính diđộng hơn, mobile robot thường có khả năng tự hành trong một môi trườngkhông kiểm soát (các robot dạng AMR) hoặc có khả năng sử dụng các cảm biếnđịnh hướng để di chuyển theo các đường đã được định trước (các robot dạngAGV)
Hình 1.1 Một mobile robots đơn giản [27].
Mobile robots đang ngày càng trở nên phổ biến cả trong công nghiệp và cuộcsống Tất cả các lĩnh vực từ y tế, quân sự, giáo dục, sản xuất hay sinh hoạtthường nhật đều có sự xuất hiện của mobile robots Ví dụ, các bệnh viện cũngnhư các nhà máy đã sử dụng mobile robots suốt nhiều năm trong việc vậnchuyển các dụng cụ, nguyên vật liệu Trong gia đình, các robot hút bụi tự độngngày một phổ biến, hoạt động hiệu quả hơn và giá thành rẻ hơn Ngoài ra,mobile robots cũng được sử dụng trong các nhiệm vụ như thám hiểm, hay cácnhiệm vụ liên quan đến môi trường độc hại hoặc nguy hiểm cho con người [27]
Trang 161.1.2 Bài toán xác định vị trí và tìm đường
Trong các vấn đề nghiên cứu liên quan đến mobile robots thì bài toán xác định
vị trí và tìm đường là những bài toán rất quan trọng và vẫn đang được nghiêncứu, phát triển các giải pháp hiệu quả
Đối với bài toán tìm đường, mục tiêu của bài toán này là tìm ra đường đi phùhợp cho robots Đường đi phù hợp ở đây là các đường đi thỏa mãn hai tiêu chí:
Có khả năng dẫn tới đích, và là đường ngắn nhất Bài toán này có thể được giảiquyết một cách thủ công nhờ người lập trình hoặc cũng có thể giải quyết bằngviệc cho robot dò đường Tuy nhiên, nhược điểm của các cách trên là đường đi
có thể không đúng hoặc có thể đúng nhưng không phải là đường đi ngắn nhất,
và bản đồ càng phức tạp thì độ khó trong việc tìm đường càng tăng lên Phươnghướng giải quyết thứ hai là áp dụng các thuật toán tự động Theo đó, đường điđến đích phù hợp sẽ được tìm một cách tự động, tốc độ của việc tìm đường sẽphụ thuộc vào loại thuật toán được áp dụng Ưu điểm của phương pháp này làđường được tìm một cách tự động, và một số thuật toán tìm đường tự động đãđược chứng minh là có thể tìm được đường đi ngắn nhất Tuy nhiên, để có thể
áp dụng được thuật toán tìm đường tự động thì cần phải có thông tin về bản đồ.Ngoài bài toán tìm đường thì một bài toán khác cũng cần được giải quyết đểmobile robots có thể đi đến đích, đó là bài toán định vị (localization) Bài toánnày có thể phân thành hai loại, dựa theo môi trường hoạt động của robot nhưsau: Định vị ngoài trời (outdoor localization) và định vị trong nhà (indoorlocalization)
Acoustic tower
Hình 1.2 Nhiều công nghệ có thể được áp dụng cùng lúc để định vị và định
hướng cho mobile robots [16].
Trong khi bài toán định vị ngoài trời có thể được giải quyết đơn giản bằng cách
Trang 17NFC, RFID, hay wifi [4, 11]:
- BLE Beacons: Đây là các thiết bị kích thước nhỏ có thể gắn trên tườnghoặc các bề mặt được thiết kế chuyên dụng trong việc định vị trong nhà.Theo đó, mobile robots sẽ phát hiện tín hiệu từ BLE Beacons, và tính toán
vị trí của nó thông qua việc tính toán khoảng cách của nó so với các BLEBeacons
Hình 1.3 Thiết bị BLE Beacons sử dụng công nghệ bluetooth [11].
- AprilTags: Đây là một phương pháp giá rẻ sử dụng công nghệ xử lý ảnh
để định vị Theo đó, các điểm đánh dấu (markers) được làm theo mẫuAprilTags sẽ được dán ở các vị trí cần thiết Mobile robots được trang bịcamera sẽ nhận diện các ký hiệu này và tính toán được vị trí của mình
Trang 18Hình 1.4 Hệ thống đánh dấu AprilTags [11].
- Ngoài các phương pháp đã trình bày thì còn một số phương pháp khácnhư sử dụng hệ thống định vị bằng sóng radio (hình 1.5), hoặc sử dụng
Trang 19các hệ thống NFC tags (hình 1.6) hay hệ thống RFID tags (hình.17) Một
số nhược điểm có thể còn tồn tại của các phương pháp trên như sau:
Product Code: RB-Mav-09
Product Code : RB-Mav-15
Trang 20Hình 1.7 Hệ thống RFID passive tags [11].
1.2 Mục đích, đối tượng, nội dung nghiên cứu, và giới hạn của luận văn
1.2.1 Mục đích, và đối tượng nghiên cứu của luận văn
Hình 1.8 Một mobile robot bám vạch có nhiệm vụ vận chuyển nguyên vật
liệu [23].
Trang 21Mobile robots không bám vạch
Mobile robots bám vạch
Ưu điểm Độ linh động cao vì phạm vi
hoạt động không bị giới hạnbởi vạch
Hoạt động ổn định
Chi phí thường thấp hơn so vớimobile robots không bámvạch
Nhược điểm Cần kết hợp nhiều loại cảm
biến cũng như các phươngpháp định hướng để có thể hoạtđộng ổn định, do đó chi phíthường đắt hơn
Độ linh động kém hơn so vớimobile robots bám vạch
Hiện tại, mobile robots bám vạch khi di chuyển thường được định vị bằng cáchđánh dấu (tạo các markers) như sau: Tại các vị trí cần định vị (thường là ngã rẽ)
sẽ sử dụng thêm mã hóa IR [7] hoặc LED [1] để làm dấu Tuy nhiên, nhượcđiểm của phương pháp này là chỉ áp dụng trong môi trường làm việc không yêucầu độ linh hoạt cao vì tại mỗi vị trí cần đến của phương tiện lại phải đặt các dấu(markers) và khi muốn thay đổi lại vị trí sẽ phải can thiệp vào việc sắp xếp cácdấu
Hình 1.9 Hệ thống đánh dấu cho một mobile robots bám vạch từ [18].
Trang 22Ngoài ra, đối với mobile robots dạng này, nếu không muốn tìm đường thủ côngcho robots thì có thể cho robots tiến hành dò đường Tuy nhiên, việc cho robots
dò đường cũng rất tốn công sức và thời gian trong các trường hợp bản đồ phứctạp và việc dò đường còn không thể thực hiện được trong trường hợp bản đồ cóchứa các vòng lặp
Hình 1.10 Bản đồ chứa các vòng lặp khiến cho một số thuật toán dò đường như
bám biên không thể giải đúng.
Vì vậy, mục đích và đối tượng nghiên của luận văn là tìm ứng dụng công nghệ
xử lý ảnh cũng như thuật toán tìm đường vào mobile robots bám vạch để giảiquyết đồng thời bài toán định vị, tìm đường, dẫn hướng và khắc phục một sốnhược điểm còn tồn tại trong việc di chuyển của mobile robots dạng bám vạchnhư đã nêu trên
1.2.2 Nội dung nghiên cứu của luận văn
Để đạt được mục đích các mục đích trên, luận văn sẽ tập trung vào các nội dungsau:
- Ứng dụng công nghệ xử lý ảnh trong việc tạo bản đồ, truy bắt và định vịrobots
- Ứng dụng thuật toán tìm đường tự động trong việc tìm đường cho robots
- Ứng dụng công nghệ in 3D trong việc thiết kế, chế tạo khung vỏ chorobots
- Thiết kế, chế tạo robots có khả năng bám vạch và có khả năng được dẫnhướng thông qua công nghệ giao tiếp không dây
Trang 23Hệ thống được xây dựng gồm một chương trình xử lý ảnh và một mobile robot
có khả năng liên kết với nhau và hoạt động theo nguyên lý như trên hình 1.11
Hình 1.11 Nguyên lý hoạt động của hệ thống
Ảnh được gửi về từ một camera gắn ngoài sẽ được thu thập bởi chương trình xử
lý ảnh trên laptop Sau đó, chương trình xử lý ảnh sẽ xử lý, phân tích và gửinhững dữ liệu về đường đi tới robot theo thời gian thực Mobile robots sẽ liêntục cập nhật dữ liệu từ cảm biến và dữ liệu được gửi về từ chương trình xử lýảnh để có thể di chuyển đến đích
1.2.3 Giới hạn của luận văn
Từ lý thuyết đến thực tế là một chặng đường dài, và với tốc độ phát triển hiệnnay thì công nghệ và kiến thức thay đổi không ngừng Với tầm hiểu biết hạn hẹpcủa tác giả thì khó lòng giải quyết được nhiều yêu cầu trên thực tế vì nhiều khichỉ cần thêm một yêu cầu cũng khiến khối lượng kiến thức liên quan cũng như
độ khó tăng lên nhiều lần Do đó, luận văn chỉ tập trung vào xây dựng một hệthống chứng minh được tính khả thi của luận văn và giới hạn như sau:
- Mobile robots ngoài việc đáp ứng được các yêu cầu của luận văn thìkhông còn nhiệm vụ nào khác, ví dụ như tải nặng
- Hệ thống được thiết kế lấy ảnh đầu vào từ một camera, thỏa mãn các yêucầu cơ bản của luận văn nhưng chưa được thiết kế để xử lý hết các tìnhhuống đặc biệt, đột xuất có thể xảy ra
Trang 24CHƯƠNG 2 THIẾT KẾ MOBILE ROBOT
2.1 Cấu tạo tổng quát của mobile robot
Mobile robot được thiết kế trong luận văn gồm có các bộ phận chính như sau:
- Bộ phận khung, vỏ: Phần khung, vỏ có tác dụng liên kết các bộ phận kháccủa robot Đồng thời, nó cũng có tác dụng trong việc tăng độ cứng vững,bảo vệ robot khỏi các tác động từ bên ngoài
- Bộ phận công suất: Bộ phận công suất có tác dụng cung cấp năng lượngcho robot hoạt động Bộ phận này phải cung cấp công suất đủ lớn nhưngkhối lượng cũng không được quá nặng Do đó, mobile robot sử dụng hệpin Li-Ion làm nguồn cung cấp năng lượng
- Bộ phận truyền động: Mobile robot được dẫn động bằng hai bánh chủđộng và một bánh dẫn hướng Các bánh chủ động được điều khiển bởi haiđộng cơ DC giảm tốc
- Hệ thống cảm biến và giao tiếp: Cảm biến có nhiệm vụ thu thập thông tin
từ môi trường hỗ trợ quá trình điều khiển robot Robot trong luận vănđược trang bị cảm biến dò line QTR-5RC để hỗ trợ bám vạch Ngoài ra,robot cũng được trang bị module NRF24L01+ để hỗ trợ giao tiếp vớichương trình xử lý ảnh trên máy tính
- Bộ phận mạch điều khiển: Module điều khiển trung tâm có vai trò điềukhiển hoạt động của mobile robot thông qua quá trình xử lý tín hiệu từcảm biến, điều khiển động cơ thông qua module L298N và giao tiếp vớimáy tính qua NRF24L01+ Board điều khiển được sử dụng là ArduinoUno
2.2 Thiết kế phần khung, vỏ cho mobile robot
Để mobile robot hoạt động ổn định thì phần khung, vỏ đóng vai trò rất quantrọng Khung, vỏ của robot giúp kết nối, cố định và sắp xếp hợp lý các bộ phậncủa robot như bánh xe, các linh kiện, bảng mạch và pin Từ đó, giúp cho robot
có được sự ổn định và vững chắc trong quá trình vận hành Ngoài ra, phầnkhung vỏ còn có tác dụng tăng tính cá nhân hóa và thẩm mỹ cho robot Xuấtphát từ các yêu cầu trên, phần khung vỏ của robot được thiết kế và chế tạo dựavào công nghệ in 3D FDM
2.2.1 Ứng dụng công nghệ in 3D FDM trong việc thiết kế khung, vỏ cho robot.Công nghệ in 3D là một quá trình công nghệ nhằm tạo ra mô hình vật thể 3D từ
Trang 252.2.2 một mô hình 3D được thiết kế trên máy tính (CAD) Quá trình này
liên tục đắp các lớp vật liệu theo từng lớp dưới sự điều khiển của máy in 3D để tạo thành vật thể, do đó nó còn có tên gọi khác là công nghệ sản xuất đắp dần (Additive Manufacturing - AM) Công nghệ in 3D có lịch sử phát triển lâu đời
và hiện tại đã có những bước tiến lớn và xuất hiện ngày một rộng rãi hơn trong cuộc sống cũng như sản xuất Các máy in 3D giá rẻ cũng có độ chính xác cao nên được sử dụng rộng rãi trong việc nghiên cứu, học tập để tạo mẫu Trong công nghiệp, tính đến năm 2019, sự chính xác của máy in 3D tăng cao, cộng với
khả năng hoạt động bền bỉ, phạm vi nguyên liệu được mở rộng đã đưa công nghệ in 3D góp mặt nhiều hơn trong quá trình sản xuất Một trong các lợi thế lớn của công nghệ in 3D là khả năng chế tạo các vật thể có hình dạng cũng như
kết cấu phức tạp, ví dụ như các bộ phận rỗng hoặc có kết cấu đặc biệt bên trong.
Công nghệ in 3D được ứng dụng trong nhiều lĩnh vực khác nhau như:
2.2.5 - Hình 2.1 Một mô hình đang được in theo công nghệ FDM [22].
2.2.6 Có nhiều công nghệ khác nhau được phát triển để có thể in 3D, ví dụ như
Trang 26SLA, SLS Trong đó, công nghệ FDM ( fused deposition modeling - tạo môhình bằng cách hợp nhất lắng đọng) được sử dụng phổ biến hơn cả, chiếm tới
Trang 272.2.746% theo thống kê năm 2018 [22] Công nghệ này tuy ra đời sau, nhưng
điểm là giá thành rất rẻ nên có độ phổ biến cao, và đây cũng là công nghệ được
lựa chọn để chế tạo phần khung vỏ cho mobile robot trong luận văn.
- Tạo mô hình 3D: Mô hình 3D có thể được tạo bằng cách thiết kế trên cácphần mềm chuyên dụng hoặc thông qua việc quét mẫu bằng máy quétlaser (laser scanner)
- Tạo file in 3D: Đây là quá trình tạo file để nạp trực tiếp vào máy in 3D.Quá trình này bản chất là nhằm chia mô hình ra thành từng lớp để có thể
in 3D (slicing) được thực hiện dưới sự trợ giúp của các phần mềm chuyêndụng Trong quá trình này, việc thiết lập các thông số, ví dụ như độ rỗng,nhiệt độ in, tốc độ in sẽ ảnh hưởng trực tiếp đến chất lượng vật thể in 3Dđược tạo thành
- In 3D vật thể: Trong quá trình này, máy in 3D sẽ in từng lớp xếp chồnglên nhau để tạo thành vật thể Theo đó, vật liệu được sử dụng có thể là cácsợi nhựa PLA hay ABS sẽ được kéo và làm nóng chảy khi đi qua modulesinh nhiệt Sau đó, theo sự di chuyển của đầu phun sẽ được in ra thànhtừng lớp xếp chồng lên nhau Các lớp này trong quá trình nguội đi sẽ liênkết với nhau và tạo thành vật thể
- Hậu xử lý: Đây là quá trình loại bỏ các phần nâng đỡ vật thể trong quátrình in (support) hoặc đánh bóng vật thể theo nhiều phương pháp khácnhau để vật thể đạt độ bóng hoặc độ thẩm mỹ mong muốn
2.2.8 Công nghệ in 3D FDM có một số ưu, nhược điểm chính như được trình bày tạibảng 2-1
2.2.9 Bảng 2-1 Một vài ưu, nhược điểm của công nghệ in 3D FDM.
2.2.10Ưu
điểm
- Giá thành rẻ
- Nguyên liệu sử dụng đa dạng
- Độ phổ biến cao nên dễ tiếp cận
- Thích hợp cho quá trình tạo mẫu
2.2.11Nhượ
c điểm
- Thời gian in rất lâu
- Các máy giá rẻ chỉ in được các vật liệu dễ nóng chảy như2.2.12
Trang 282.2.13 2.2.14 PLA.
- Việc thiết kế mô hình và thiết lập các thông số ảnh hưởnglớn đến chất lượng mô hình, do đó yêu cầu kinh nghiệmcủa người sử dụng
- Không phù hợp cho quá trình sản xuất hàng loạt
2.2.15
2.2.16 Thiết kế, chế tạo khung vỏ của robot bằng công nghệ in 3D FDM
Mobile robot được thiết kế để đảm bảo các yêu cầu sau:
Trang 292.2.22Hình 2.3 Mặt sau mô hình 3D của mobile robot.
Trang 302.3 Thiết kế mạch nguyên lý cho mobile robot
2.2.27Mạch nguyên lý của hệ thống được thiết kế như hình 2.5 Trong đó bao gồm 2module chính:
- Module truyền dữ liệu gồm 1 board Arduino và 1 chip NRF24L01+
Chương trình xử lý ảnh sẽ gửi dữ liệu tới mobile robot qua module truyền
án tạo mẫu (phát triển các sản phẩm thử nghiệm) Board có các đặc tính kỹ thuật
để đáp ứng cho mục đích của luận văn như:
Trang 31- Tần số làm việc cao: 16MHz
- Bộ nhớ flash: 32 KB
- Số lượng chân vào ra số: 14 (6 chân có thể tạo xung PWM)
- Số lượng chân tương tự: 6
- Hỗ trợ các giao tiếp SPI, I2C, Serial [9]
2.2.32Arduino Uno sẽ thực hiện các nhiệm vụ chính sau:
- Đọc tín hiệu từ cảm biến dò line
- Giao tiếp với module NRF24L01 để truyền và nhận dữ liệu
- Điều khiển hoạt động của robot dựa trên dữ liệu từ cảm biến dò line và dữliệu nhận được qua giao tiếp không dây
- Xuất tín hiệu ra module L298 để điều khiển động cơ
và bị phản xạ gần như hoàn toàn trên nền trắng giúp cho cảm biến hồng ngoạigần như là lựa chọn đơn giản và hiệu quả nhất khi muốn robot bám theo vạch
Có rất nhiều loại cảm biến hồng ngoại được sản xuất để sử dụng trong các ứngdụng khác nhau ví dụ như các cảm biến hồng ngoại tiệm cân hay các cảm biến
Trang 322.2.37 PIR Trong số đó, QTR-RC là một loại cảm biến hồng ngoại được sản
trí cách đều nhau Nguyên lý làm việc của mỗi cặp thu phát như sau: Kể từ khi
có tín hiệu phát từ Led, thời gian suy giảm điện áp trên quang trở sẽ tỉ lệ với
mức độ phản xạ của tia hồng ngoại xuống nền Thời gian suy giảm càng nhanh
thì mức đô phản xạ càng lớn và ngược lại Phương thức đo này có những ưu
điểm như sau:
- Không cần dùng đến phương pháp biến đổi ADC
- Có khả năng thực hiện phép đo song song cho nhiều cặp cảm biến
- Việc đọc song song khiến cho khả năng sử dụng các Led được tối ưu hơn.2.2.42Vậy, để đọc được dữ liệu từ một cặp thu phát trên cảm biến này thì phải thựchiên các bước như sau:
2.2.43 B1: Bật IR Led
2.2.44 B2: Thiết lập chân I/O
2.2.45 B3: Chờ tối thiểu 10 us để điện áp lên mức cao
Trang 33- B4: Thiết lập chân I/O là đầu vào.
- B5: Đo thời gian suy giảm điện áp trên chân I/O
- B6: Tắt IR Led
2.2.46Với mức độ phản xạ mạnh thì thời gian suy giảm tín hiệu có thể chỉ là vài chục
us Trong khi với mức độ phản xạ yếu thì thời gian này có thể lên đến vài ms
[16]
2.4.3 Module thu phát sóng Radio nRF24L01
2.2.47Module NRF24L01 được sử dụng để truyền nhận dữ liệu giữa module phát vàmodule thu trên mobile robot Trong đó, nRF24L01 là chip thu phát sóng radio
ở dải tần 2.4-2.5 GHz do hãng Nordic Semiconductor sản xuất Chip này có thểđược thiết lập để hoạt động ở nhiều chế độ và có mức tiêu thụ năng lượng thấp
2.2.48
2.2.49
2.2.50Hình 2.8 Module thu phát sóng radio NRF24L01 [12].
2.2.51Một số đặc điểm của module NRF24L01 [12]:
- Khoảng cách thu phát lên đến 100 m với địa hình ít vật cản
- Có khả năng truyền nhận tín hiệu 2 chiều (vừa đóng vai trò module phát và
module thu được cùng một lúc)
- Tần số thu phát sóng radio: 2.4Ghz
- Giao tiếp với vi điều khiển thông qua giao tiếp SPI
2.2.52Trong luận văn, các module NRF24L01 sẽ được thiết kế để thực hiện giao tiếpmột chiều với nhau, và giao tiếp với Arduino Uno thông qua giao tiếp SPI
Trang 34DC là phù hợp nhất đối với mobile robot Mobile robot trong luận văn có khốilượng nhỏ và không có yêu cầu nào về chịu tải nên không cần sử dụng động cơ
có công suất lớn Do đó, động cơ DC được chọn chỉ cần thỏa mãn các yêu cầusau:
- Công suất trung bình
- Điện áp làm việc trong khoảng nguồn cấp bằng pin của robot là 12V
Trang 35- Tốc độ không tải: 320 rpm
- Dòng không tải: 80 mA
Trang 36- Công suất định mức: 13.2W
- Dòng khi động cơ bị giữ: 2.29A
- Momen khi bị giữ: 7.96 kgí.cm
2.2.58 CURRENT SENSING B2.2.59 OUTPUT42.2.60 OUTPUT32.2.61 INPUT42.2.62 ENABLE B2.2.63 INPUT 32.2.64 LOGIC SUPPLY VOLTAGE v ss
2.2.65 GND2.2.66 INPUT 22.2.67 ENABLE A2.2.68 INPUT 12.2.69 SUPPLY VOLTAGE Vs
2.2.70 OUTPUT2
2.2.71 OUTPUT1
2.2.72 CURRENT SENSING A
2.2.73Hình 2.10 Module điều khiển động cơ L298 [20]
2.2.74Thông thường để điều khiển một động cơ DC thì phải dùng một mạch cầu đểcó
thể điều khiển cả chiều quay và tốc độ IC L298 với thiết kế gồm 2 mạch cầutích hợp được ứng dụng rất phổ biến trong điều khiển động cơ L298 có thể điềukhiển động cơ bước hoặc 2 động cơ DC đồng thời IC này có một số đặc điểm
cơ bản sau [20]:
- Điện áp nuôi có thể lên đến 46V
- Bảo vệ quá nhiệt
2.2.75Module L298 chứa hai mạch cầu H nên có thể được sử dụng để điều khiển tốc
độ và chiều quay của 2 động cơ DC của robot (hình 2.11) Các trạng thái quaycủa từng động cơ (quay thuận, quay ngược hay dừng lại) có thể được điều khiểnthông qua việc thiết lập mức logic của các chân In1 đến In4 của module Ngoài
ra, tốc độ của động cơ cũng có thể được điều khiển qua module nhờ phương2.4.5 Module điều khiển động cơ L298
Trang 37pháp PWM PWM là phương pháp điều chỉnh điện áp trung bình trên tải bằngcách thay đổi độ rộng xung Về bản chất thì PWM chính là việc đóng ngắtnguồn cấp cho tải theo một chu kỳ nhất định Việc đóng ngắt này được thực hiệnbằng các khóa điện tử như Transistor hay MOSFET.
2.2.76Các xung có độ rộng khác nhau sẽ cung cấp điện áp trung bình trên tải khác
Trang 382.2.77 nhau Điện áp trung bình đầu ra khi sử dụng phương pháp PWM
2.2.81■ u max là điện áp tối đa của nguồn
- t là thời gian xung ở mức logic cao
- d (duty cycle) là phần trăm giữa thời gian xung ở mức logic cao so với chu kỳxung
2.2.82Vậy, từ hành vi của robot, các trạng thái về chiều quay cũng như tốc độ củacác
động cơ sẽ được thiết lập bằng cách điều khiển các chân tương ứng và ghi giá trịPWM vào module L298
2.2.83
2.2.84 Hình 2.11 Cấu tạo của IC điều khiển động cơ L298.
2.2.85
2.2.86 2.4.6 Thiết lập giao tiếp cho robot
2.2.87Dữ liệu được truyền từ máy tính xuống robot theo nguyên lý được trình bày trên
hình 2.12
Trang 392.2.89 Hình 2.12 Sơ đồ truyền dữ liệu từ chương trình xử lý ảnh đến robot.
Trang 40- Chương trình xử lý ảnh trên máy tính sẽ truyền dữ liệu xuống modulephát là board Arduino thông qua giao tiếp Serial Đây là giao tiếp nối tiếpvới tốc độ Baud mặc định 9600, đã được tích hợp sẵn trên Arduino.
- Hai module NRF24L01 có khả năng truyền nhận hai chiều, giao tiếp quasóng radio ở tần số 2.4 GHz
- Các board Arduino kết nối với module NRF24L01 qua giao tiếp SPI Đây
là một loại giao tiếp nối tiếp đồng bộ khoảng cách ngắn thường đượcdùng trong hệ thống nhúng Các bước để giao tiếp giữa board Arduino vàmodule NRF24L01 như sau:
2.2.90 + Thiết lập chân giao tiếp
2.2.91 + Tạo mảng dữ liệu
2.2.92 + Khởi tạo địa chỉ giao tiếp
2.2.93 + Gán địa chỉ giao tiếp
2.2.94 + Thiết lập mức khuếch đại
2.2.95 + Thiết lập module NRF24L01 là module nhận hay phát dữ liệu2.2.96 + Truyền, nhận dữ liệu
2.2.972.5 Viết chương trình điều khiển cho mobile robot
2.2.98Mobile robot hoạt động theo nguyên lý tổng quan như trên hình 2.13
2.2.99Đầu tiên, mobile robot sẽ khởi tạo trạng thái các chân, khởi tạo các biến và cácthông số cho việc đọc tín hiệu cảm biến, điều khiển động cơ, giao tiếp Serial vàgiao tiếp không dây qua sóng radio Sau đó, robot sẽ tự động tiến hành việc cănchỉnh việc đọc tín hiệu cho cảm biến dò line để sẵn sàng cho quá trình bám line