Hình 3.3 Sơ đồ khối điều khiểnDựa vào sơ đồ khối điều khiển hình 3.3, Arduino được nối như sau:3.4 Giải thuật dò line Chúng ta sẽ sử dụng thuật so sánh mã để dò line cho robot.Khi xe hoạ
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT VINH
KHOA ĐIỆNNGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG HÓA
Trang 2NHIỆM VỤ ĐỒ ÁN/LUẬN VĂN/TIỂU LUẬN TỐT NGHIỆP
Họ tên sinh viên: Nguyễn Ngọc Mạnh Mã SV: 1405190001
Hệ đào tạo: Đại học
Lớp: DHTDHCK14A1 Ngành: Tự Động Hóa
Khoa: Điện
1 Tên đề tài:
Thiết kế robot tự hành bám line theo quỹ đạo đặt trước
2 Danh mục tài liệu tham khảo
[1 WD Compact Omni-Directional Arduino Compatible Mobil Robot,
<https://www.robotshop.com/uk/3wd-compact-omni-directional-arduino-compatible- mobile-robot.html/>
[2]: Caroline Rees, iRobot Wins $7.2m Contract to Supply PackBot Robots to Brazilian government, <https://www.unmannedsystemstechnology.com/2013/05/ irobot-wins-7-2m-contract-to-supply-packbot-robots-to-brazilian-government/>
[3]: Robot studies shed fast light on insect evolution, <https://cosmosmagazine.com/technology/robot-studies-shed-fast-light-on-insect-evolution/>, 22/2/2017
[4]: Anthony Cuthbertson , Obot dog spotmini from boston dynamics can open doors with its jaw, <https://www.newsweek.com/robot-dog-spotmini-boston-dynamics- opens- door-its-jaw-804613>, 2/13/2018
[5]: AGV Navigation – Laser Navigation Technology, <http://amrobots.net/en/205- 2/ >.[6]: Guidance systems, <http://www.systemlogistics.com/eng/ products/ agv- automated-guided-vehicles-1/guidance-systems>
[7]: Navigation of automated guided vehicles using magnet spot guidance method,
<https://www.sciencedirect.com/science/article/abs/pii/S0736584511001372> [8]: http://www.pmh-co.com/electronic%20wg.html
[9]: January 2004 - Mars Rovers Landed, <https://www.nasa.gov/ directorates/ heo/scan/images/history/January2004.html>
[10]: Toshiba’z ‘scorpion’ robot will look into Fukushima reactor,
Trang 3<https://www.sandiegouniontribune.com/sdut-toshibas-scorpion-robot-will-look-into- fukushima-2015jun30-story.html>, 30/6/2015.
[11]: So sánh Xiaomi Roborock Gen 2 và Gen 3, <https://novadigital.net/so-sanh roborock-gen-2-va-xiaomi-gen-3/>
xiaomi-[12]: iRobot 510 PackBot Multi-Mission Robot, <https://www.army-technology.com/ projects/irobot-510-packbot-multi-mission robot/>
[13]: Comercial Service Robot Intelligent Robot for Businesses Catering Restaurant Service Waiter Robot Deliver, <https://www.alibaba.com/product-detail/ Comercial- Service-Robot-Intelligent-Robotfor_60648564885.html>
3 Nội dung phần thuyết minh
2
CHƯƠNG 2: LỰA CHỌN PHƯƠNG ÁN THIẾT KẾ
CƠ KHÍ VÀ HỆ THỐNG ĐIỆN CHO ROBOT DÒ
LINE
30%
3
CHƯƠNG 3: THIẾT KẾ LẬP TRÌNH VÀ GIẢI
THUẬT TOÁN DÒ LINE VÀ PID ĐIỀU KHIỂN
CHƯƠNG 2: LỰA CHỌN PHƯƠNG ÁN THIẾT
KẾ CƠ KHÍ VÀ HỆ THỐNG ĐIỆN CHO ROBOT
DÒ LINE
15/2/2023
3
CHƯƠNG 3: THIẾT KẾ LẬP TRÌNH VÀ GIẢI
THUẬT TOÁN DÒ LINE VÀ PID ĐIỀU KHIỂN
ĐỘNG CƠ
15/3/2023
Trang 44 CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM 15/4/2023
6 Ngày giao nhiệm vụ Đồ án/Luận văn/Tiểu luận tốt nghiệp: Ngày … tháng …
năm 20…
THÁI HỮU NGUYÊN
Bản nhiệm vụ Đồ án/Luận văn/Tiểu luận tốt nghiệp đã được Hội đồng khoa học củaKhoa …….………… thông qua ngày tháng năm 20…
Trang 5PHẦN NHẬN XÉT TÓM TẮT CỦA CÁN BỘ HƯỚNG DẪN
1.Tinh thần, thái độ của sinh viên trong quá trình làm đề tài tốt nghiệp
………
………
………
………
………
………
………
2.Đánh giá chất lượng của đề tài tốt nghiệp (so với nội dung yêu cầu đã đề ra trong nhiệm vụ đề tài tốt nghiệp, trên các mặt lí luận thực tiễn, tính toán giá trị sử dụng, chất lượng các bản vẽ…) ………
………
………
………
………
………
………
………
………
………
………
………
………
Nghệ An, ngày / /2023
Giáo viên hướng dẫn
Trang 6
NHẬN XÉT ĐÁNH GIÁ CỦA GIÁO VIÊN CHẤM PHẢN BIỆN
Đánh giá chất lượng đề tài tốt nghiệp về các mặt thu thập và phân tích số liệu ban đầu,
cơ sở lí luận chọn phương án tối ưu, cách tính toán chất lượng thuyết minh và bản vẽ, giá trị lí luận và thực tiễn đề tài
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Nghệ An, ngày / /2023
Giáo viên phản biện
Trang 7
LỜI CẢM ƠN
Đề tài “Thiết kế robot tự hành bám line theo quỹ đạo đặt trước” là nội dung Em được giao để nghiên cứu và làm đồ án tốt nghiệp sau bốn năm học chương trình đại học chuyên ngành Điện công nghiệp tại trường Đại học sư phạm kĩ thuật Vinh
Để hoàn thành quá trình nghiên cứu và hoàn thiện đồ án tốt nghiệp này, lời đầu tiên
em xin gửi lời cảm ơn chân thành cảm ơn tới toàn thể quý Thầy Cô.Đặc biệt là thầy Thái Hữu Nguyên cùng với tri thức và tâm huyết của Thầy đã hướng dẫn, hỗ trợ và tạo điều kiện em hoàn thành đồ án tốt nghiệp tại trường Nếu không có Thầy đồ án tốt nghiệp của
Em khó có thể hoàn thành được
Cuối cùng, em xin cảm ơn những người thân, bạn bè đã luôn bên Em, động viên, sẻ chia, giúp đỡ, cổ vũ tinh thần… Đó là nguồn động lực giúp Em hoàn thành chương trình học và đồ án tốt nghiệp này
Nghệ An, ngày 15 tháng 4 năm2023
Sinh viên
Nguyễn Ngọc Mạnh MỤC LỤC CHƯƠNG 1: TỐNG QUAN 1
1.1 Tổng quan về Mobile Robot 1
1.1.1 Phân loại Mobile robot 1
1.2 Ứng dụng của Mobile robot 5
1.2.1 Tổng quan về robot dò line: 8
1.2.2 Một số mô hình robot dò line trong các cuộc thi: 8
1.2.3 Các thành phần xe dò line: 10
1.3 Mục tiêu và nhiệm vụ: 18
Trang 8CHƯƠNG 2: LỰA CHỌN PHƯƠNG ÁN THIẾT KẾ CƠ KHÍ VÀ HỆ THỐNG
ĐIỆN CHO ROBOT DÒ LINE 20
2.1 Lựa chọn phương án thiết kế 20
2.1.1 Về Cơ khí: 20
2.1.2 Về phần điện: 20
2.2 Thiết kế cơ khí 21
2.2.1 Tính toán kích thước xe 21
2.2.2 Tính toán công suất cho động cơ: 22
2.2.3 Tính toán moment xoắn động cơ 23
2.2.4 Điều kiện để xe vào cua mà không bị trượt: 24
2.2.5 Điều kiện để xe vào cua mà không bị lật: 25
2.2.6 Các thông số cơ bản của xe 25
2.2.7 Các tấm đế xe 26
2.2.8 Mô phỏng động học 27
2.3 Thiết kế hệ thống điện 30
2.3.1 Thiết kế khối cảm biến dò line: 30
2.3.4 Khối driver và động cơ 38
2.3.5 Khối nguồn 40
2.3.6 Điều khiển động cơ hai bánh xe 40
CHƯƠNG 3: THIẾT KẾ LẬP TRÌNH VÀ GIẢI THUẬT TOÁN DÒ LINE VÀ PID ĐIỀU KHIỂN ĐỘNG CƠ 44
3.1 Sơ đồ khối hệ thống điều khiển 44
3.2 Lưu đồ giải thuật 45
3.3 Khối điều khiển: 45
3.4 Giải thuật dò line 47
3.5 Áp dụng thuật toán PID 48
3.6 Phân tích chuyển động: 53
3.7 Giới thiệu phần mềm Arduino IDE 53
Trang 93.8 CODE cho robot dò line 55
CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM 66
4.1 Kết quả thực nghiệm 66
4.2 Đề xuất phương án hiệu chỉnh thiết kế: 67
KẾT LUẬN 68
TÀI LIỆU THAM KHẢO 1
Trang 10DANH MỤC HÌNH
Hình 1.1: Robot chuyển động bằng bánh xe (a) và bánh xích (b) 1
Hình 1.2: Robot truyền động bằng chân 2
Hình 1.2: Hệ thống Laser guidance [5] 2
Hình 1.3: Magnetic spot guidance [6] 3
Hình 1.4: Nguyên tắc hoạt động Magnetic spot guidance [7] 3
Hình 1.5: Nguyên tắc hoạt động magnetic guidace [8] 4
Hình 1.6: Wire guidance [9] 4
Hình 1.7: Robot Opportunity của NASA [10] 5
Hình 1.8: Robot Scorpion của TOSHIBA [11] 6
Hình 1.9: Robot vận chuyển hàng hóa [12] 6
Hình 1.10: Robot lau nhà Xiaomi Roborock Gen 3 [13] 7
Hình 1.11: Robot 510 PackBot được sản xuất bởi iRobot trang bị cho quân đội Mỹ[14] .7 Hình 1.12: Robot phục vụ nhà hàng của LKK Group [15] 8
Hình 1.13: Robot dò line “The Chariot” (a) và sơ đồ nguyên lý của nó (b) [16] 9
a) Mô hình xe dò line “Silvestre” b) Sơ đồ nguyên lý xe “Silvestre” 9
Hình 1.14: Robot dò line Silvestre (a) và sơ đồ nguyên lý (b) [17] 9
Hình 1.15: Mô hình xe dò line “Fireball” (a) và sơ đồ nguyên lý (b) [18] 10
Hình 1.16: Động cơ DC Servo giảm tốc GA25 [19] 12
Hình 1.17: Động Cơ Bước Step Motor NEMA17 NEMA23 Stepper [20] 12
Hình 1.18: Động cơ servo 13
Hình 1.19: Pixy2 CMUcam5 Smart Vision Sensor [21] 13
Hình 1.20: Phototransistor 14
Hình 1.21: Nguyên lý của cảm biến quang dẫn 14
Hình 1.22: Tín hiệu đọc về digital 15
Hình 1.23: Thuật toán xấp xỉ đọc tín hiệu analog: xấp xỉ bậc hai (a) 15
Hình 1.24: Điều khiển tập trung (Centralized control) 16
Hình 1.25: Cấu trúc điều khiển phần cấp (Distributed control) 17
Trang 11Hình 2.1: Phương án xe 3 bánh 2 bánh sau dẫn động 20
Hình 2.2: Các lực tác dụng lên xe dò line 21
Hình 2.3: Mô hình SolidWorks của xe dò line 25
Hình 2.4: Kích thước mặt mica phía dưới 26
Hình 2.5: Cụm ráp thân xe 26
Hình 2.6: Sơ đồ động học 27
Hình 2.7: Vận tốc xe và bánh trái, phải theo thời gian khi xe chạy thẳng 29
Hình 2.8: Vận tốc xe và bánh trái, phải theo thời gian khi xe chạy cung tròn 30
Hình 2.9: Thanh cảm biến dò line hồng ngoại BFD-1000 [22] 31
Hình 2.1: Mạch điện 1 cảm biến TCRC5000 32
Hình 2.11: Đồ thị quan hệ giữa IF và IC [23] 33
Hình 2.12: Đồ thị quan hệ IC và V [24] 34
Hình 2.13: Ảnh hưởng của việc đặt cảm biến lên switching distance 34
Hình 2.14: Vùng hoạt động của cảm biến TCR-5000 35
Hình 2.15: Khoảng cách giữa 2 cảm biến D (mm) 36
Hình 2.16: Phạm vi quét của 2 cảm biến liền kề 37
Hình 2.17: Sơ đồ khối cảm biến 37
Hình 2.18: Động cơ DC Servo giảm tốc GA25 38
Hình 2.19: Motor driver L298N [25] 38
Hình 2.20: Sơ đồ khối driver và động cơ [25] 39
Bảng 2.5: Các thông số của motor driver L298N 39
Hình 2.21: Sơ đồ khố chung cho toàn hệ thống 40
Hình 2.22: Giản đồ thời gian của xung PWM 41
Hình 2.23 Đồ thị xung PWM 2 động cơ 43
Hình 2.24 Sơ đồ điều khiển vận tốc động cơ 43
Hình 3.1: Sơ đồ hệ thống điều khiển 44
Hình 3.2: Vi điều khiển Arduino Uno R3 45
Hình 3.3 Sơ đồ khối điều khiển 47
Trang 12Hình 3.4: Các mức lệnh điều khiển robot bám line 48
Hình 3.5 Điều khiển vòng kín PID 49
Hình 3.6: Mô hình PID áp dụng cho bài robot dò line của bài 51
Hình 3.7: Đáp ứng động cơ 1 khi sử dụng bộ PID 52
Hình 3.8 Đáp ứng động cơ 2 khi sử dụng bộ PID 52
Hình 3.9 Giao diện phần mềm Arduino IDE 54
Hình 3.10 Các nút lệnh trong Arduino IDE 54
Hình 3.11 Vùng thông báo trong Arduino IDE 54
Hình 4.1 Bản đồ sa bàn của robot dò line 66
Hình 4.2: Chạy thực nghiệm robot dò line 66
Trang 13DANH MỤC BẢNG BIỂU
Bảng 1.1: Đánh giá ưu, nhược điểm sơ đồ nguyên lý 11
Bảng 1.2: So sánh giữa các phương pháp đọc cảm biến: 16
Bảng 1.3: So sánh cấu trúc điều khiển tập trung và cấu trúc điều khiển phân cấp 17
Bảng 2.1: Thông số xe dò line 25
Bảng 2.2: So sánh sánh ưu nhược điểm của số lượng cảm biến dò line 31
Bảng 2.3: Thông số kỹ thuật của thanh cảm biến dò line hồng ngoại BFD-1000 32
Bảng 2.4: Thông số kỹ thuật của cảm biến TCR 5000 35
Bảng 2.5: Các thông số của motor driver L298N 39
Bảng 2.6: Số liệu khi thực nghiệm điều khiển vận tốc khi cấp xung PWM sử dụng driver L298 42
Bảng 3.1: Thông số của Arduino uno R3 46
Bảng 3.2: thông số ki kp kd 53
Trang 14Hình 3.3 Sơ đồ khối điều khiểnDựa vào sơ đồ khối điều khiển (hình 3.3), Arduino được nối như sau:
3.4 Giải thuật dò line
Chúng ta sẽ sử dụng thuật so sánh mã để dò line cho robot
Khi xe hoạt động, sensor thu thập thông tin qua bộ chuyển đổi ADC chuyển thànhgiá trị tín hiệu và đưa về vi điều khiển Giá trị nhận về sẽ được so sánh với một giá trị đặttrước Nếu giá trị ADC (i) < giá trị ngữơng thì led thu thứ i đang ở phần sân, nếu ngượclại thì đang ở phần vạch
49
Trang 15Hình 3.4: Các mức lệnh điều khiển robot bám line
Ở đây mình mã hóa 4 cặp cảm biến của mình thành các giá trị từ 0 đến 7 Khi hoạtđộng ánh sáng từ led chiếu xuống đường nếu gặp đường nếu gặp đường nền màu trắngthì ánh sáng phản chiếu trở lại quang trở tương ứng, lúc đó tín hiệu được truyền về chântương ứng của vi điều khiển là mức 0 Nếu ánh sáng từ led xuống gặp line đen thì ánhsáng hầu như bị hấp thụ gần hết, lúc đó tín hiệu từ sensor báo về vi điều khiển về mức 1 Dựa trên các mức lệnh để điều chỉnh tốc độ 2 bánh trái phải để đưa robot về quỹ đạo,phương pháp này đơn giản nhưng robot chạy không ổn định vì thế để khắc phục nhượcđiểm này ta áp dụng bộ điều khiển PID vào để hiệu chỉnh
3.5 Áp dụng thuật toán PID
Để giải thuật toán PID chúng ta cần giải thuật điều khiển vi tích phân
PID là một bộ điều khiển sử dụng cơ chế phản hồi feedback trong hệ thống côngnghiệp PID sẽ tính toán các giá trị “ sai số” là hiệu số đo được của thiết bị trên thực tế vàgiá trị mà mình mong muốn Giải thuật tính toán của PID bao gồm 3 thông số riêng biệt,gọi là điều khiển 3 khâu: các giá trị tỉ lệ (Proportional), tích phân (Integral), đạo hàm(Derivative), giá trị tỉ lệ xác định của sai số hiện tại, giá trị tích phân xác định tác độngcủa các sai số quá khứ và vi phân xác tác động của tốc độ biến đổi sai số Nhờ vậy mà ta
có mối quan hệ: P phụ thuộc vào sai số hiện tại, I phụ thuộc vào tích lũy sai số trong quákhứ và D dự đoán các sai số trong tương lai, dựa vào tốc độ thay đổi của hiện tại
50
Trang 16Hình 3.5 Điều khiển vòng kín PID
Phương trình PID tổng quát:
- Hàm lỗi e(t) tại thời điểm t: độ lệch giữa giá trị mong muốn và giá trị đo được:
e(t) = V - Vset mo(t)
Trong đó:
Vset: Setpoint Value (giá trị điện áp mong muốn)
Vmo (t): Measurable Output Value (giá trị điện áp đo được tại thời điểm t)
Khâu tỉ lệ Proportional: điều khiển tỉ lệ với giá trị lỗi hiện tại.
Trang 17Integral (hàm tích phân): điều khiển tương ứng với mức lỗi được tích lũy theo
thời gian Iout=Ki.∫
0
t
e(r)dr
Trong đó:
Iout: thừa số tích phân của đầu ra
Ki: độ lợi tích phân, 1 thông số điều chỉnh
e: sai số
t: thời gian tức thời
r: một biến trung gian
Dout: thừa số vi phân đầu ra
Kd: Độ lợi vi phân, một thông số điều chỉnh
e: sai số
t: thời gian tức thời
Tóm lại:
Độ lợi tỉ lệ : Giá trị càng lớn thì đáp ứng càng nhanh do đó sai số càng lớn, bù khâu
tỉ lệ càng lớn Một giá trị độ lợi tỉ lệ quá lớn sẽ dẫn đến quá trình mất ổn định và daođộng
Độ lợi tích phân: Giá trị càng lớn kéo theo sai số ổn định bị khử càng nhanh Đổi lại
là độ vọt lố càng lớn: bất kỳ sai số âm nào được tích phân trong suốt đáp ứng quá độ phảiđược triệt tiêu tích phân bằng sai số dương trước khi tiến tới trạng thái ổn định
Độ lợi vi phân: Giá trị càng lớn càng giảm độ vọt lố, nhưng lại làm chậm đáp ứngquá độ và có thể dẫn đến mất ổn định do khuếch đại nhiễu tín hiệu trong phép vi phân saisố
52
Trang 18Mô hình PID áp dụng cho robot dò đường:
Hình 3.6: Mô hình PID áp dụng cho bài robot dò line của bài
Giải thuật PID được tích hợp vào trong giải thuật điều khiển robot dò đường để tínhtoán và xuất ra các giá trị PWM điều khiển 2 động cơ gắn với 2 bánh sau của robot dựavào độ sai lệch giữa giá trị đo đạc ngõ vào và giá trị mong muốn Độ sai lệch, hay còn gọi
là giá trị lỗi, được tính toán trong giải thuật PID là độ lệch giữa trạng thái hiện tại củarobot so với đường đi Có nghĩa là, độ sai lệch giữa giá trị hiện tại của bộ cảm biến so vớigiá trị của cảm biến trong trường hợp robot chạy thẳng về phía trước Việc áp dụng giảithuật PID trên robot dò đường sử dụng cảm biến quang được trình bày bằng một sơ đồkhối như hình
Chương trình điều khiển sử dụng giải thuật PID Ở đây mình mã hóa 4 cặp cảm biếnthành các giá trị từ Và thuật toán sẽ luôn đặt setpoint =các giá trị nằm giữa cảm biến 2 và
Trang 19I là sai số trong quá khứ
D là sai số tương lai
Ta mô phỏng trên matlab được các kết quả trước và sau khi sử dụng thuật toán PIDnhư sau
Hình 3.7: Đáp ứng động cơ 1 khi sử dụng bộ PID
Độ vọt lố bằng 0
Hình 3.8 Đáp ứng động cơ 2 khi sử dụng bộ PID
54
Trang 20Như vậy sau khi điều chỉnh thì chúng ta có bản hệ số Ki, Kp,Kd cho động cơ tráiphải như sau:
- Khi vận tốc của hai bánh bằng nhau sẽ tiến thẳng
- Khi hai bánh có cùng vận tốc nhưng ngược chiều robot sẽ quay tròn
- Khi vận tốc của bánh trái lớn hơn bánh phải thì robot rẽ phải, bánh phải lớn hơnbánh trái thì quay trái
3.7 Giới thiệu phần mềm Arduino IDE
Giao diện:
55