ĐK Robot tự hành Giảng viên TS Bùi Đình Bá TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CƠ KHÍ Bộ môn Cơ điện tử Báo cáo môn học ĐIỀU KHIỂN ROBOT TỰ HÀNH Đề tài ROBOT TỰ HÀNH BÁM THEO MÀU (có code sẵn cho python và arduino)
Trang 1Đề tài : ROBOT TỰ HÀNH BÁM THEO MÀU
Giảng viên hướng dẫn : TS Bùi Đình BáSinh viên thực hiện:
Hà
Nội, tháng 8 năm 2021
Nguyễn Trọng Đức 20170708 CK.CĐT.01 – K62Nguyễn Đình Toản 20170944 CK.CĐT.01 – K62
Lê Thị Thanh Huyền 20170781 CK.CĐT.01 – K62Lay Ratanak 20170280 CK.CĐT.01 – K62
Trang 2BẢN NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Giáo viên hướng dẫn: TS Bùi Đình Bá
Sinh viên thực hiện: Nguyễn Trọng Đức
Nguyễn Đình Toản
Lê Thị Thanh Huyền Lay Ratanak
Lớp: CK-CĐT01-K62
1 Nội dung
………
………
………
………
………
………
………
2 Nhận xét của giáo viên hướng dẫn ………
………
………
………
………
………
………
Hà Nội, ngày……….tháng………năm Giáo viên hướng dẫn ký tên
Trang 3MỤC LỤC
LỜI MỞ ĐẦU
Cùng với cuộc phát triển của con người, các ngành khoa học kỹ thuậtkhông ngừng tìm kiếm ra các công nghệ mới, đặc biệt là robot đang dần thaythế các công việc của con người Để robot hoạt động được, ta không chỉ cần cómột phần cơ cấu chấp hành hoàn hảo mà còn cần cả một bộ điều khiển để đápứng các nhu cầu điều khiển robot Tuy nhiên, chỉ khi có một bộ não hoàn hảo,robot mới có thể hoạt động một cách chính xác Chính vì vậy trong quá trìnhđiều khiển robot, chúng ta cần sử dụng các thuật toán điều khiển, các hàm điềukhiển để làm cho hệ thống ổn định, ít ảnh hưởng với nhiễu nhất có thể Các bộđiều khiển ngày nay đã và đang đáp ứng được rất nhiều yêu cầu điều khiển phứctạp Do đó, điều khiển thông minh trên robot ngày càng được chú trọng và ứngdụng rộng rãi trong các ngàng công nghiệp, thay thế cho các hoạt động của conngười trong các môi trường độ hại, nguy hiểm Và robot tự hành là một trongcác loại robot được ứng dụng rộng rãi nhất
Robot bám màu là một trong những loại robot đa hướng được ứng dụngkhá phổ biến hiện nay Chúng có khả năng di chuyển theo bất kì hướng nào màkhông cần phải thay đổi vị trí và tư thế Với cấu trúc bánh đặc biệt và khả năng
di chuyển đó, robot bám màu ngày càng được ứng dụng rộng rãi Các vấn đề
Trang 4như kiểm soát quỹ đạo, hạn chế sai lệch khi điều khiển robot đa hướng là mộttrong các nội dung rất được quan tâm trong khi điều khiển robot bám theo màu.
Vì đặc tính là đa hướng nên robot rất dễ bị lệch với một bộ điều khiển hở Đã córất nhiều nghiên cứu các thuật toán để điều khiển robot nói chung như PID,Fuzzy, điều khiển tuyến tính, điều khiển trượt, … Trong đó thuật toán PID được
áp dụng rộng rãi trong công nghiệp, là bộ điều khiển được sử dụng nhiều nhấttrong các bộ điều khiển phản hồi Đối với các thiết bị không có mô hình toánhọc về hệ thống điều khiển thì PID sẽ là bộ điều khiển tốt nhất bởi tính ổn địnhcủa nó (khi đã chọn được hệ số phù hợp)
Vì vậy, trong khuôn khổ môn học Điều khiển Robot tự hành, chúng em
lựa chọn đề tài “Robot bám màu sử dụng xử lý ảnh” để tiến hành nghiên cứu và
điều khiển robot
Chúng em xin chân thành cảm ơn thầy Bùi Đình Bá đã nhiệt tình hướngdẫn cho chúng em trong môn học Điều khiển Robot tự hành này Trong quátrình thực hiện đề tài không thể tránh khỏi những thiếu sót, kính mong thầy cô
và các bạn góp ý để chúng em có thể hoàn thiện đề tài này
Chúng em xin chân thành cảm ơn!
Trang 5PHÂN CHIA CÔNG VIỆC
STT Họ và tên MSSV Nhiệm vụ
1 Nguyễn Trọng Đức 20170708 Xử lý trên Python truyền thôngqua cho Arduino
2 Nguyễn Đình Toản 20170944 Xử lý trên Python truyền thôngqua cho Arduino
3 Lê Thị Thanh Huyền 20170781 Điều khiển tốc độ động cơ, làmbáo cáo, slide
4 LAY RATANAK 20170280 Xử lý ảnh: Nhận diện vật thể màxe bám theo, làm báo cáo, slide
Trang 6Chương 1: Giới thiệu đề tài
Robot bám màu hoặc đối tượng là một loại mobile robot, di động tự hành,
tự định hướng, di chuyển theo màu hoặc đối tượng định sẵn bằng cách kết hợpcác hướng chuyển động xoay và tịnh tiến theo quỹ đạo định trước đảm bảocamera luôn hướng về màu hoặc đối tượng
Robot bám theo màu hoặc đối tượng là loại robot tự hành sử dụng bánh
xe Mecanum và với thiết kế đặc biệt giúp robot di chuyển được đa hướng.Robot bám đối tượng sử dụng xử lý ảnh có tiềm năng lớn để phát triển trongtương lai như: Robot vận chuyển trong các kho hàng, Robot tuần tra thực hiệnnhắc nhở người dân giữ khoảng cách trong đại dịch COVID – 19, hành lý tựđộng di chuyển theo hành khách, …
Hình 1 1 Ứng dụng robot tự hành
Trang 7Chương 2: Nguyên lý hoạt động2.1 Các thiết bị được sử dụng
- Arduino Uno R3
Hình 2 1 Arduino Uno R3
Vi điều khiển 8 bít là bộ não điều khiển các động cơ và truyền nhận tín hiệu
- Nguồn nuôi robot: Pin Lithium 3.8 V
Hình 2 2 Pin Lithium
- Camera điện thoại
Hình 2 3 Camera điện thoại
Trang 8- Động cơ và bánh đa hướng
Hình 2 4 Động cơ và bánh đa hướng
Bánh đa hướng cung cấp cho robot những khả năng di chuyển đặc biệt như đi ngang mà không cần quay trục robot
Trang 92.2 Sơ đồ điều khiển
2.2.1 Sơ đồ truyền dữ liệu
Hình 2 7 Sơ đồ truyền dữ liệu
2.2.2 Sơ đồ kết nối
Hình 2 8 Sơ đồ kết nối
Trang 102.3 Cơ sở động học
Robot sử dụng bánh đá hướng Mecanum 60mm
Hình 2 9 Bánh đa hướng Mecanum 60mm
Cặp bánh xe Mecanum L+R nhựa đường 60mm có khả năng di chuyển linh hoạt theo nhiều hướng, bánh được làm bằng nhựa kết hợp với các bánh nhỏbằng cao su cho độ ma sát cao chống trơn trượt
Mỗi bộ chứa hai bánh xe mecanum bên trái cũng như hai bánh xe bênphải Bốn bánh xe Mecanum được kết nối với một động cơ riêng biệt với điềukhiển độc lập Tùy thuộc vào từng hướng và tốc độ bánh xe riêng biệt, nền tảng
di động có thể di chuyển về phía trước, phía sau, sang một bên và bất kỳ hướnghoặc quay mong muốn nào khác Hai mô-đun điều khiển từ xa - mô-đun BLE
và mô-đun RF - có thể được thêm vào trên bộ này để cho phép điều khiển từ xa
Hình 2 10 Bánh đa hướng
Trang 11Các con lăn ngoại vi có góc chuyển một phần lực theo hướng quay của bánh xe thành lực pháp tuyến đối với hướng của bánh xe Tùy thuộc vào từng hướng và tốc độ bánh xe riêng biệt, sự kết hợp của tất cả các lực này tạo ra một vectơ lực tổng theo bất kỳ hướng mong muốn nào Gọi bán kính của bánh xe là
R, vận tốc góc của bốn bánh là ω1, ω2, ω3, ω4, tốc độ của các con lăn trên mỗi bánh là _ν_g1, _ν_g2, _ν_g3 và _ν_g4, và tốc độ của bệ tính bằng x -chuyển
hướng, hướng y và vận tốc góc là _ν_x, _ν_y và ω0 Các gốc tọa độ toàn cục tại
О, trung tâm của nền tảng và các hệ tọa độ cục bộ tại mỗi bánh xe có gốc tọa độ
là O1, O2, O3 và O4 Khoảng cách từ giữa bệ đến giữa bánh xe là L1, và L2 là khoảng cách giữa bệ đến trục lăn của bánh xe α là góc của các con lăn: 45º
trong trường hợp này
Hình 2 11 Tọa độ bánh đa hướng
Công thức hàm truyền vận tốc
Trong tọa độ tổng thể, tốc độ tại tâm của bánh xe 1,01 , là
(1)
(2)
Trang 12Khi ở tọa độ địa phương tại bánh xe 1 , tốc độ của 01 là
(3)
(4)Kết hợp phương trình (1) (4), ta có
(5)
(6)Giải (5) và (6) thì vận tốc góc của bánh 1 là
(7)
Tương tự, vận tốc của 3 bánh xe khác có thể được tính như
(8)Phương trình (8) thể hiện mối quan hệ giữa tốc độ quay của các bánh xe
và chuyển động của bệ Về mặt lý thuyết, nền tảng có thể di chuyển theo bất kỳhướng nào bằng sự kết hợp thích hợp của vận tốc hình tam giác của bốn bánh
xe Trên thực tế, Đối với nền tảng này, các chuyển động được sử dụng phổ biếnnhất khá hạn chế
Dữ liệu hình ảnh được thu thập về từ camera điện thoại thông qua kết nốiwifi được xử lý theo chương trình bằng Python Từ đó, lọc bỏ nhiễu xác địnhđược vị trí tương quan giữa điểm đích và vùng đạt yêu cầu trên khung hình
Hình 2 12 Vị trí tương quan giữa điểm đích và vùng đạt yêu cầu
Trang 13Chương 3: Kết quả thực nghiệm3.1 Sản phẩm thu được
Hình 3 1 Robot tự hành bám theo màu
Trang 143.2 Code lọc màu
3.3 Code truyền dữ liệu
Trang 153.4 Code điều khiển xe
Trang 18Chương 4: Kết quả đề tài 4.1 Kết quả đạt được:
- Học được ngôn ngữ lập trình Python
- Hiểu biết về cách ứng dụng xử lý ảnh để điều khiển robot
- Xe chạy bám theo mục tiêu như đề tài đề ra
- Các linh kiện hoạt động được như mong muốn
4.2 Hướng phát triển:
- Xây dựng các thuật toán bám vật chính xác hơn không phụ thuộc vàomàu sắc của vật
- Tích hợp thêm chức năng để điều khiển vận tốc cho xe
- Cải thiện khả năng nhận diện chính xác hơn
Trang 19Chương 5: Kết luận
Sau quá trình thực hiện đề tài, nhóm chúng em đã làm được conrobot có khả năng nhận diện màu của vật thể nhưng do chưa có encoder kiểmsoát tốc độ ở các bánh nên vẫn chưa kiểm soát được độ chính xác của robot.Ngoài ra, chúng em còn có thêm kinh nghiệm trong việc thiết kế phần cứng, cảithiện khả năng lập trình cũng như xử lý các vấn đề xảy ra.Từ đó chúng em nhận
ra được cách phát triển khả năng của mình cũng như cách phát triển đề tài mộtcách hoàn chỉnh nhất trong tương lai
Trang 20TÀI LIỆU THAM KHẢO
4 Roland Siegwart and Illah R Nourbakhsh - Introduction to
Autonomous Mobile Robots, 2004
Trang 21PHỤ LỤC HÌNH ẢNH