1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân

75 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết Kế Và Xây Dựng Bản Đồ Di Chuyển Ứng Dụng Điều Khiển Mô Hình Robot Di Động Bằng Chân
Tác giả Lưu Trọng Huy, Nguyễn Thành Luân
Người hướng dẫn TS. Trần Ngọc Hoàng
Trường học Đại Học Đà Nẵng
Chuyên ngành Cơ khí
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2024
Thành phố Đà Nẵng
Định dạng
Số trang 75
Dung lượng 8,99 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • CHƯƠNG I: GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI (0)
    • 1.1 Giới thiệu (0)
      • 1.1.1 Tổng quan về Robot (15)
      • 1.1.2 Phân loại chung về robot (20)
      • 1.1.3 Robot di động bằng chân (22)
    • 1.2 Phần mềm điều khiển (24)
      • 1.2.1 Cơ sở để chọn ROS làm công cụ (25)
      • 1.2.2 Giao thức truyền tin trong ROS (25)
      • 1.2.3 Bản địa hóa của robot (26)
      • 1.2.4 Tính năng của ROS (29)
      • 1.2.5 Cấu trúc ROS (29)
      • 1.2.6 SLAM (33)
      • 1.2.7 Ngăn điều hướng ROS (35)
      • 1.2.8 Nguyên lí hoạt động (40)
  • CHƯƠNG II: THIẾT KẾ HỆ THỐNG CƠ KHÍ (41)
    • 2.1 Tổng quan hệ thống cơ khí (41)
      • 2.1.1 Xây dựng động học cho robot (41)
      • 2.1.2 Tổng quan hệ thống cơ khí (45)
    • 2.2 Thiết kế robot (46)
      • 2.2.1 Giới thiệu phần mềm thiết kế cho robot (46)
      • 2.2.2 Thiết kế chân robot (48)
      • 2.2.3 Phần thân (49)
      • 2.2.4 Tính toán và lựa chọn nam châm điện (49)
      • 2.2.5 Lựa chọn động cơ (54)
    • 2.3 Kết luận chương (58)
    • 3.2 Các linh kiện (60)
      • 3.2.1 Raspberry Pi [3] (60)
      • 3.2.2 LIDAR (63)
    • 3.3 Cài đặt hệ thống (67)
      • 3.3.1 Hệ điều hành Ubuntu (67)
      • 3.3.2 Cài đặt ROS NOETIC (70)
      • 3.3.3 Khởi động Rviz (70)
    • 3.4 KẾT LUẬN CHƯƠNG (70)
  • CHƯƠNG IV: ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN ĐỀ TÀI (73)
    • 4.1 KẾT LUẬN (73)
    • 4.2 GIÁ TRỊ CỦA ĐỀ TÀI (73)
  • TÀI LIỆU THAM KHẢO (75)

Nội dung

Tên đề tài: Thiết kế và xây dựng bản đồ di chuyển ứng dụng điều khiển mô hình robot diĐiều hướng cho robot di động là một vấn đề có nhiều ứng dụng to lớn và liên quan tớinhiều lĩnh vực..

GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI

Phần mềm điều khiển

Robot Operating System (ROS) là hệ thống phần mềm mã nguồn mở hỗ trợ phát triển và điều khiển robot, với cấu trúc linh hoạt và mạnh mẽ ROS cung cấp nền tảng tiêu chuẩn cho việc xây dựng ứng dụng robot phức tạp, cho phép các nhà phát triển tương tác qua nhiều chức năng, bao gồm truyền tin giữa các thành phần và cung cấp công cụ phân tích, mô phỏng Đặc biệt, ROS hỗ trợ phân phối nhiệm vụ xử lý trên nhiều máy tính khác nhau, giúp phát triển và kiểm tra hiệu quả Cốt lõi của ROS là phần mềm trung gian truyền nhận gói dữ liệu gọi là “message”.

Với cộng đồng lớn và khả năng mở rộng, ROS đã trở thành tiêu chuẩn ngành trong lĩnh vực robot, được ứng dụng rộng rãi trong robot di động, robot công nghiệp, robot y tế và nghiên cứu Sự phổ biến này không chỉ tăng tốc độ phát triển robot mà còn tạo điều kiện thuận lợi cho việc chia sẻ kiến thức và kinh nghiệm trong cộng đồng Một ứng dụng điển hình của ROS là khả năng giúp robot quét bản đồ và tự điều hướng đến điểm đích.

Hình 1 11 Logo Robot Opeting System Open Source

1.2.1 Cơ sở để chọn ROS làm công cụ:

Có nhiều lý do quan trọng để chọn ROS cho phát triển và điều khiển robot Dưới đây là những lợi ích nổi bật của ROS: so với các framework robot hiện có, ROS vượt trội về khả năng mở rộng, tính linh hoạt và cộng đồng hỗ trợ mạnh mẽ.

ROS là nền tảng mã nguồn mở miễn phí, hỗ trợ phát triển hợp tác trong các ngành công nghiệp và nghiên cứu Lập trình viên có khả năng mở rộng chức năng của ROS thông qua việc thêm các gói (package) Hầu hết các gói ROS hoạt động trên một lớp trừu tượng phần cứng, cho phép dễ dàng tái sử dụng cho các robot khác.

ROS hỗ trợ nhiều ngôn ngữ lập trình hiện đại, bao gồm C++, Python và Lisp, đồng thời cũng có các thư viện thử nghiệm cho Java và Lua, giúp người dùng dễ dàng triển khai và phát triển ứng dụng.

ROS cung cấp một giao diện tích hợp cho nhiều thư viện robot bên thứ ba, bao gồm Open Source Computer Vision (OpenCV), Point Cloud Library (PCL), Open-NI, Open-Rave và Orocos Điều này cho phép các lập trình viên dễ dàng làm việc với các thư viện này mà không gặp khó khăn.

ROS tích hợp hiệu quả với các trình giả lập mã nguồn mở như Gazebo và có khả năng tương tác tốt với các trình giả lập độc quyền như Webots và V-Rep.

- Kiểm tra mã: ROS cung cấp một framework kiểm tra sẵn có được gọi là ROSTEST để kiểm tra chất lượng và bug.

Framework ROS được thiết kế với khả năng mở rộng cao, cho phép thực hiện các tác vụ tính toán nặng cho robot Các tác vụ này có thể được triển khai trên đám mây hoặc trên các cụm không đồng nhất, mang lại sự linh hoạt và hiệu suất tối ưu trong quá trình xử lý.

- Cộng đồng: Hiện nay cộng đồng ROS rất phát triển, chúng ta có thể bắt đầu làm Robot với sự trợ giúp của các developer trong và ngoài nước.

1.2.2 Giao thức truyền tin trong ROS Để các thiết bị phần cứng trong hệ thống hiểu nhau, ta có một đơn vị thông tin gọi là node, mỗi node này sẽ truyền hoặc nhận thông điệp từ các node khác, tùy vào chức năng của node đó mà sẽ được gọi là subscriber hay publisher.

Hình 1 12 Giao thức truyền tin trong ROS

Trong hệ thống ROS, một ví dụ đơn giản về việc truyền nhận thông tin là topic "Chatter" với chuỗi String "Hello ROS" Node gửi thông tin được gọi là Publisher node, trong khi node nhận thông tin được gọi là Subscriber node Quá trình này phải thông qua một node chủ, gọi là ros master, có nhiệm vụ quản lý việc truyền nhận thông tin Hệ thống ROS hỗ trợ nhiều topic khác nhau với các kiểu data frame đã được định nghĩa, và kích thước gói tin thường dao động trong khoảng hàng trăm byte.

Khi đọc giá trị từ cảm biến IMU qua STM32 và gửi đến mini PC, gói tin sẽ có kiểu data frame là sensor_msgs/Imu với kích thước 317 bytes Để thực hiện điều này, ta cần viết một Publisher node trên vi điều khiển, đảm bảo gửi gói tin với tần số publish cố định Quan trọng là tần số publish phải thấp hơn tốc độ baudrate để đạt được tần số update mong muốn, tránh việc xử lý sai trên mini PC.

Với tốc độ truyền ros serial đạt 115200 kbits/s, tương đương 14400 bytes/s, kích thước topic Imu là 317 bytes, nên tần số publish tối đa nên dưới 45.425 Hz Ngoài ra, có thể tăng baudrate để nâng cao tần số publish, nhưng cần chú ý đến khả năng chịu tải của cáp USB.

1.2.3 Bản địa hóa của robot a) Giới thiệu về bản địa hóa

Bản địa hóa và lập bản đồ (SLAM) là một tính năng thiết yếu trong robot, giúp chúng tự động xác định và xây dựng bản đồ môi trường xung quanh Robot sử dụng các cảm biến như lidar để thu thập thông tin và xác định vị trí cũng như hướng di chuyển của mình trong không gian thực.

Hình 1 13 Minh họa về SLAM

Các kỹ thuật SLAM như Gmapping, Hector-SLAM và Cartographer đóng vai trò quan trọng trong quá trình bản địa hóa Trong số đó, Gmapping là công cụ phổ biến giúp xây dựng bản đồ và ước lượng vị trí robot theo thời gian thực Để thực hiện SLAM với Gmapping, hai giá trị đầu vào quan trọng là /tf topic và /scan topic /tf topic cung cấp thông tin về chuyển động của robot trong không gian, hỗ trợ tính toán sự chuyển đổi vị trí giữa các hệ tọa độ khác nhau, trong khi /scan topic chứa dữ liệu lidar từ môi trường xung quanh, giúp xác định khoảng cách và hướng trong quá trình xây dựng bản đồ.

Hình 1 14 Phương thức hoạt động của SLAM

Dựa trên dữ liệu từ cảm biến và thông tin từ hai topic, Gmapping tổng hợp và tạo bản đồ môi trường Quá trình này kết hợp các điểm đặc trưng từ lidar cùng với phép biến đổi vị trí từ /tf topic, giúp xác định vị trí và hướng di chuyển của robot Kết quả là một bản đồ chi tiết và ước tính chính xác vị trí của robot trong không gian.

THIẾT KẾ HỆ THỐNG CƠ KHÍ

Tổng quan hệ thống cơ khí

2.1.1 Xây dựng động học cho robot

Hình 2 1 Kí hiệu các khớp chân của robot trong mô phỏng Bảng 2 1 Tọa độ các điểm khớp của chân robot so với tọa độ gốc

Chân Khớp Toạ độ trục X Toạ độ trục Y Toạ độ trục Z

Hình 2 2 Hệ toạ độ các điểm trên chân của robot

Bảng 2 2 Bảng thông số DH i α a θ d

 Ta sẽ tính ma trận biến đổi A i cho từng khâu theo công thức:

A i = [ cos sin 0 0 θ θ i i −sin cos sin θ θ i 0 i cos cos α i α α i i −cos sin cos θ θ i 0 sin i α sin i α α i i a a i i cos sin d 1 i θ θ i i ]

Dựa vào bảng thông số DH ở trên, ta có:

A 1 = [ cos sin 0 0 θ θ 1 1 0 0 1 0 −cos sin 0 0 θ θ 1 1 l l 1 1 cos sin 0 1 θ θ 1 1 ]

A 2 = [ cos sin 0 0 θ θ 2 2 − cos sin 0 0 θ θ 2 2 0 0 1 0 l l 2 2 cosθ sin 0 1 θ 2 2 ]

Vì khi góc θ 2 tại trục Z 1 quay xuống, thì tại trục Z 2 quay theo chiều ngược lại một góc - θ 2 , nên tại đây ta có một ma trận T 2 :

 Để tính toán ma trận động học tổng quát từ gốc đến cuối, ta cần nhân các ma trận biến đổi A i

A 12 = A 1 ∗ AT 2 = [ cos sin 0 0 θ θ 1 1 0 0 1 0 −cos sin 0 0 θ θ 1 1 l l 1 1 cos sin θ θ 1 1 + + l l l 2 2 2 sin cos cos 1 θ θ θ 2 1 2 ∗cos ∗sin θ θ 1 2 ]

A 123 = A 12 ∗ A 3 = [ cos sin 0 0 θ θ 1 1 −sin cos 0 0 θ θ 1 1 0 0 1 0 l l 1 1 cos sin θ θ 1 1 + +l l 3 3 cos sin d 3 +l θ θ 1 2 1 1 +l + sin l 2 2 cos θ cos 2 θ θ 2 1 ∗sin ∗cos θ θ 1 2 ]

T = A 123 ∗ A 4 = [ cos sin 0 0 θ θ 1 1 −sin cos 0 0 θ θ 1 1 0 0 1 0 l l 1 1 cos sin θ θ 1 1 + + d l l 3 3 3 cos sin + d θ 4 θ + 1 1 1 +l + l 2 l sin 2 2 cos cos θ 2 θ θ 2 1 ∗sin ∗cos θ θ 1 2 ]

2.1.2 Tổng quan hệ thống cơ khí

Hình 2 4 Tổng quan hệ thống cơ khí

 Lựa chọn vật liệu chế tạo

Vật liệu chế tạo robot ảnh hưởng khối lượng, độ bền, tuổi thọ và khả năng gia công. (kém=1; tốt=5)

Bảng 2 3 Giải pháp vật liệu Trong đó:

C1: Độ cứng C2: Trọng lượng C3: Chịu nhiệt C4: Khả năng gia công C5: Chi phí

Từ bảng so sánh trên, ta chọn nhựa PLA.

Thiết kế robot

2.2.1 Giới thiệu phần mềm thiết kế cho robot

Creo Parametric là phần mềm CAD/CAM nổi bật của công ty Parametric Technology Corporation (PTC), chuyên dụng cho thiết kế và gia công khuôn mẫu.

Creo Parametric là phần mềm quản lý dữ liệu dưới dạng tham số, nhờ đó có thể thay đổi kích thước hình dáng sản phẩm thiết kế nhanh chóng.

Creo Parametric có thể giao tiếp với các phần mềm khác như: AutoCAD, Mechanical Desktop, Moldflow, Visi, ….

Creo Parametric là phần mềm tích hợp hoàn hảo, cho phép lập bản vẽ theo thông số và chia sẻ dữ liệu với các module khác Với một thanh công cụ mạnh mẽ, Creo Parametric hoạt động hiệu quả trong nhiều môi trường tích hợp và đồng bộ Các đối tượng được tạo ra trong phần mềm này có thể dễ dàng chia sẻ với các ứng dụng khác.

Do sự tương quan giữa các tham số của một thành phần, mọi thay đổi thực hiện đối với một đối tượng trong chế độ này sẽ được phản ánh trong các chế độ khác.

Trong chế độ PART, người dùng có thể tạo mô hình cho một thành phần Sau đó, trong chế độ DRAWING, có thể tạo bản vẽ theo phép chiếu vuông góc Thành phần này có thể được lắp ghép với các thành phần khác trong chế độ ASSEMBLY Trong cả ba môi trường PART, DRAWING và ASSEMBLY, người dùng có khả năng thực hiện thay đổi với một tham số của thành phần đó.

 Các ứng dụng của phần mềm CreoParametric

Phần mềm thiết kế PTC Creo cho phép người dùng chuyển đổi ý tưởng thành mô hình kỹ thuật số một cách chính xác, giúp tạo ra sản phẩm cuối cùng một cách dễ dàng.

Người dùng có thể thiết kế các sản phẩm từ đơn giản đến phức tạp với Creo 3.0 thông qua các công cụ như Extrude, Revolve, Sweep và các lệnh như Blend, Warp, Section, Sweep Blend Phần mềm này hỗ trợ thiết kế theo tham số, giúp tạo mô hình chi tiết máy tiêu chuẩn nhanh chóng Bên cạnh đó, Creo cho phép chỉnh sửa thông số thiết kế và cập nhật tự động cho các bước tiếp theo Với hơn 30 năm kinh nghiệm trong phát triển phần mềm CAD, PTC Creo Parametric luôn được xếp hạng trong top các phần mềm 3D CAD hàng đầu hiện nay.

PTC began developing Creo in 2009, initially referring to it as Project Lightning, which was announced at PlanetPTC Live in Las Vegas in June 2010 The product name, Creo, was revealed in October 2010, and PTC launched Creo 1.0 in June 2011 The latest version, PTC Creo 7.0, was released on April 14, 2020.

Creo hỗ trợ mô phỏng quy trình lắp và tách khuôn sản phẩm Sau khi hoàn tất thiết kế mẫu, phần mềm cho phép tính toán độ co rút của vật liệu, tự động thiết kế hình dạng lòng khuôn cho mẫu và mô phỏng quá trình tách khuôn thông qua chức năng Mold Cavity.

Với Module đính kèm đó là PTC Creo Expert Moldbase Extension 9.0 (EMX 9.0) làm cho tính năng thiết kế khuôn trở nên cực kì mạnh mẽ và hiệu quả.

Tính năng gia công của Creo mang lại sự linh hoạt và dễ dàng trong việc lập trình gia công CNC với các trục 3, 4 và 5 Người dùng có thể lựa chọn nhiều kiểu phay khác nhau, bao gồm Profile, Pocketing, Face, Roughing, Reroughing, Finishing và khắc chữ bằng Engraving Ngoài ra, Creo cũng cho phép người dùng tiện mặt ngoài, mặt đầu, tiện lỗ, rãnh, ren trên các bề mặt tròn xoay một cách dễ dàng.

PTC Creo Parametric là phần mềm thiết kế mạnh mẽ với nhiều tính năng nổi bật như Simulation, mô phỏng động và Generative Design sử dụng công nghệ AI Tại Việt Nam, Creo được ưa chuộng nhất trong lĩnh vực thiết kế máy, thiết kế chi tiết và chế tạo khuôn mẫu Sự phổ biến của phần mềm này có thể được lý giải bởi việc nó đã được giới thiệu từ sớm và được đào tạo trực tiếp tại các trường Đại học, Cao đẳng Với tính năng mạnh mẽ và dễ sử dụng, Creo đã trở thành lựa chọn hàng đầu cho các công ty và doanh nghiệp tại Việt Nam.

It integrates with other PTC solutions that support product development, including Windchill for Product Lifecycle Management (PLM) and Mathcad, which offers optimal design management solutions.

Hình 2 5 Bảng vẽ chi tiết chân robot

Phần thân được thiết kế với hình dạng là một hình hộp chữ nhật để có thể chứa các linh kiện như nguồn, Arduino, module mosfet, …

2.2.4 Tính toán và lựa chọn nam châm điện

Nam châm điện là thiết bị tạo ra từ trường nhờ vào dòng điện lớn chạy qua cuộn dây, thường được gọi là nguồn phát từ trường.

Nam châm điện là loại nam châm tạo ra từ trường nhờ dòng điện một chiều hoặc xoay chiều Nam châm điện mini nổi bật với khả năng chịu nhiệt tốt hơn so với các loại nam châm vật liệu khác, khiến chúng trở thành lựa chọn hàng đầu trong môi trường có nhiệt độ cao.

Hình 2 7 Nam châm điện b) Cấu tạo của nam châm điện

Nam châm điện được cấu tạo từ một sợi dây điện đồng quấn quanh lõi sắt Khi dòng điện chạy qua cuộn dây, lõi sắt sẽ bị nhiễm từ, tạo ra từ trường mạnh mẽ Tuy nhiên, khi ngừng dòng điện, lõi sắt sẽ ngay lập tức mất đi tính từ hóa.

Hình 2 8 Cấu tạo của nam châm điện c) Các loại nam châm điện

- Nam châm điện hình khối:

Hút sắt dạng thỏi hoặc các tấm lớn có trọng lượng nặng thường được sử dụng trong các xà từ của cẩu trục lớn, giúp thu hút thép có khối lượng lớn một cách hiệu quả.

- Nam châm điện hút phép phế:

Kết luận chương

Trong chương 2, nhóm chúng tôi đã hoàn thành thiết kế robot bốn chân với chiều cao tối đa 18.3 cm so với mặt đất Kích thước thân robot là 30 cm chiều dài, 16 cm chiều rộng và 9.84 cm chiều cao, trong khi chân robot có chiều dài tối đa là 26.8 cm.

Hình 2 14 Mô hình robot sau khi hoàn thiện thiết kế

CHƯƠNG III: THIẾT KẾ HỆ THỐNG QUÉT BẢN ĐỒ3.1 Tổng quan hệ thống điện

Hình 3 1 Sơ đồ tổng quan hệ thống điện

Hình 3 2 Lưu đồ thuật toán xử lý dữ liệu của hệ thống

Các linh kiện

Hình 3 3 Raspberry Pi 4 Model B RAM 8Gb

Raspberry Pi là một máy tính mini kích thước tương đương thẻ ATM, hoạt động trên hệ điều hành Linux Sản phẩm này được phát triển bởi Raspberry Pi Foundation, một tổ chức phi lợi nhuận.

Bảng 3 1 Thông số kỹ thuật của Raspberry Pi 4 Thông số kỹ thuật

Bộ sử lý Broadcom BCM2711, lõi tứ Cortex-A72 (ARM v8) SoC 64-bit @ 1.5GHz

Bộ nhớ 1GB, 2GB hoặc 4GB LPDDR4 (tùy theo kiểu máy)

Kết nối Không dây IEEE 802.11b/g/n/ac 2,4 GHz và 5,0

GPIO Có 40 chân tiêu chuẩn (hoàn toàn tương thích ngược với các bo mạch trước đó) Video và âm thanh

Cổng micro HDMI 2 × (hỗ trợ lên tới 4Kp60) Cổng camera MIPI CSI 2 làn

Cổng âm thanh nổi và video tổng hợp 4 cực Đa phương tiện

H.265 (giải mã 4Kp60) H.264 (giải mã 1080p60, mã hóa 1080p30) Đồ họa OpenGL ES, 3.0

Hỗ trợ thẻ Khe SD Khe cắm thẻ Micro SD để tải hệ điều hành và dữ liệu

5V DC qua đầu nối USB-C (tối thiểu 3A) 5V DC qua tiêu đề GPIO (tối thiểu 3A)

Cấp nguồn qua Ethernet (PoE) – được kích hoạt (yêu cầu PoE riêng có)

Môi trường Nhiệt độ hoạt động 0–50°C

Hình 3 4 Sơ đồ chân Raspberry Pi

Chân cấp nguồn trên bo mạch điện tử bao gồm nguồn 3V3, nguồn 5V và GND (Ground), giúp kết nối hệ thống dây điện cho các dự án của bạn Những chân này tương ứng với các chân trên bo mạch Arduino, cung cấp điện áp 5V và 3,3V (với 3,3V giới hạn tải 50mA) Chân GND cũng rất quan trọng, đặc biệt khi bạn không sử dụng nguồn điện bên ngoài như pin hoặc bộ chuyển đổi, chúng sẽ hỗ trợ cấp nguồn cho mạch một cách hiệu quả.

- 5V DC qua đầu nối USB-C (tối thiểu 3A).

Các chân cắm DNC (Not Connected) xuất hiện trong một số phiên bản bo mạch nhưng không có chức năng Tuy nhiên, ở các bo mạch mới, chúng đã được sử dụng cho các mục đích khác Cụ thể, chân 3 và 4 mới sẽ được đánh dấu là GND chung, có khả năng tích hợp vào nhóm chân trước đó.

Các chân GPIO (Chân I/O mục đích chung) có khả năng cấu hình linh hoạt, cho phép lập trình để thực hiện các chức năng cụ thể theo nhu cầu của người dùng.

Chân đặc biệt là các chân dùng cho kết nối hoặc giao diện đặc biệt, chẳng hạn như UART, TXD, RXD, thường thấy trên Arduino Một số chân khác như SDA, SCL, MOSI, MISO, SCLK, CE0, CE1 cũng được sử dụng rộng rãi Những chân này đóng vai trò quan trọng trong việc giao tiếp và kết nối các thiết bị.

- PWM, độ rộng xung có thể được điều chỉnh được Trên Raspberry Pi 3 và 4, chúng là GPIO12, GPIO13, GPI018 và GPIO19.

- SPI là một giao diện giao tiếp khác mà tôi cũng đã đề cập trong một bài viết kh ác.

- Trong trường hợp bảng 40 chân mới, chúng là các chân (với các kênh liên lạc khác nhau như bạn có thể thấy):

- SPIO: MOSI (GPIO10), MISO (GPI09), SCLK (GPI011), CEO (GPI08), CE1 (GPIO7).

- SPI1: MOSI (GPIO20); MISO (GPIO19); SCLK (GPIO21); CEO (GPI018); CE1 (GPIO17); CE2 (GPIO16).

- Bus I2C được cấu thành từ chân tín hiệu dữ liệu (GPIO2) và chân xung nhịp (GPIO3) Ngoài EEPROM Data (GPIO0) và Clock EEPROM (GPIO1).

Serial là một phương thức giao tiếp hữu ích, sử dụng các chân TX (GPIO14) và RX (GPIO15), tương tự như các chân trên bo mạch Arduino UNO.

LIDAR (Phát hiện ánh sáng và phạm vi) là công nghệ xác định khoảng cách bằng cách sử dụng tia laser để đo thời gian ánh sáng phản xạ quay trở lại máy thu Phương pháp này cho phép tạo ra các mô hình 3D kỹ thuật số về bề mặt Trái đất và đáy đại dương, với khả năng ứng dụng trên mặt đất, trên không và di động LIDAR được áp dụng rộng rãi trong việc tạo bản đồ có độ phân giải cao, phục vụ cho các lĩnh vực như khảo sát, địa lý, khảo cổ học, địa chất, lâm nghiệp và dẫn đường cho ô tô tự hành và máy bay trực thăng, điển hình là Ingenuity trong các chuyến bay trên Sao Hỏa.

Hệ thống LIDAR sử dụng tia laser để phát ra các xung năng lượng ánh sáng hướng xuống mặt đất, sau đó ghi lại thời gian mà các xung này mất để di chuyển xuống và trở lại cảm biến.

Khoảng cách được xác định bằng cách sử dụng thời gian di chuyển và được tính bằng tốc độ ánh sáng.

Hình 3 5 Nguyên lý của hệ thống LIDAR

Cảm biến Lidar sử dụng tia laser để đo khoảng cách đến chướng ngại vật và có khả năng tạo bản đồ 3D khu vực hoạt động nhờ vào tốc độ phản hồi cao và khả năng quay liên tục Ưu điểm của cảm biến này là giảm thiểu số lượng thiết bị hỗ trợ cần thiết, cho phép tự quét và cập nhật bản đồ, đồng thời thay thế nhiều loại cảm biến phát hiện chướng ngại vật khác Tuy nhiên, nhược điểm của nó là chi phí cao và phần mềm phức tạp, gây khó khăn trong việc sửa chữa và cập nhật.

Dựa trên các phân tích và điều kiện thiết kế hệ thống robot cùng với chi phí đã đề cập, cảm biến Lidar đã được lựa chọn cho đề tài này, cụ thể là RPLIDAR A1M8.

Hình 3 7 RPLIDAR A1M8 Thông số kỹ thuật của RPLIDAR A1M8

Bảng 3 2 Thông số kỹ thuật RPLIDAR A1M8

Mục Đặc trưng Đơn vị Bình luận

Phạm vi khoảng cách 0,15 - 6 m Đối tượng trắng

Phạm vi góc 0 - 360 o Độ phân giải khoảng cách

Cho tất cả khoảng cách Độ phân giải góc ≤ 1 o Tốc độ quet 5.5

Giá trị điển hình được đo khi RPLIDAR A1 lấy

360 mẫu mỗi lần quet Bước sóng laser 785 Bước sóng Dải đèn hồng ngoai

Công suất laser 3 mw Công suất cực đại Độ dài xung 110 μs

 Cách lấy tín hiệu của RPLIDAR

RPLIDAR hoạt động theo chiều kim đồng hồ, trong khi đầu ra dữ liệu SDK cung cấp thông tin về khoảng cách và góc theo hệ tọa độ thuận tay trái Tuy nhiên, đầu ra từ rplidar_ros đã được chuyển đổi sang hệ tọa độ thuận tay phải.

RPLIDAR giao tiếp qua giao diện UART, cho phép kết nối với máy tính hoặc vi điều khiển thông qua cáp USB-UART Sau khi thiết lập kết nối, bạn có thể sử dụng phần mềm đi kèm hoặc thư viện lập trình để truy xuất dữ liệu quét từ RPLIDAR.

Tín hiệu LiDAR có thể là tín hiệu liên tục hoặc rời rạc, tùy thuộc vào loại cảm biến LiDAR được sử dụng.

Cảm biến LiDAR liên tục hoạt động bằng cách phát ra các xung laser liên tục và đo thời gian phản xạ của từng xung Loại cảm biến này cung cấp một luồng dữ liệu liên tục về khoảng cách và cường độ phản xạ, cho phép thu thập thông tin chính xác về môi trường xung quanh.

Cảm biến LiDAR rời rạc hoạt động bằng cách phát ra các xung laser định kỳ và ghi lại thời gian phản xạ của từng xung Thiết bị này tạo ra một tập hợp các điểm dữ liệu, cung cấp thông tin về khoảng cách và cường độ phản xạ, giúp cải thiện độ chính xác trong việc thu thập dữ liệu không gian.

Tần suất phát xung laser của LiDAR, hay còn gọi là tốc độ quét, có thể thay đổi tùy theo từng thiết bị, thường dao động từ 10 kHz đến 200 kHz Tốc độ quét cao giúp nâng cao khả năng lấy mẫu dữ liệu nhanh chóng và chính xác, tuy nhiên, nó cũng tiêu thụ nhiều năng lượng hơn.

RPLIDAR A1M8 quét với tốc độ 5.5Hz và tần số lấy mẫu lên đến 8000 điểm trên giây, cung cấp dữ liệu về khoảng cách và góc cho mỗi điểm.

Cài đặt hệ thống

Hệ điều hành được sử dụng trong dự án này là Raspbian, một hệ điều hành máy tính dựa trên Debian dành cho Raspberry Pi Raspbian có nhiều phiên bản, bao gồm Raspbian Stretch và Raspbian Jessie Kể từ năm 2015, Raspberry Pi Foundation đã chính thức cung cấp Raspbian như là hệ điều hành chính cho các máy tính bảng đơn Raspberry Pi Với tính ổn định vượt trội và dung lượng nhẹ, Raspbian là lựa chọn tối ưu cho Raspberry Pi phiên bản 1.8.1.

Hình 3 10 Giao diện phần mền Raspberry Pi Imager v1.8.5 Ở mục Raspberry Pi Device chọn Raspberry Pi 4 như hình 3.11

Hình 3 11 Bảng Raspberry Pi Device Ở mục Operating System chọn Other general-purpose OS  Ubuntu  Ubuntu Server20.04.5 LTS (64 bit) như hình 3.12

Trong danh mục cài đặt, bạn có thể lựa chọn các hệ điều hành khác nhau Tiếp theo, hãy chọn mục "Storage" như hình 3.13 và nhấn vào ổ nhớ mà bạn muốn cài đặt Sau khi đã chọn xong, bạn chỉ cần nhấn "Write" để phần mềm tự động cài đặt hệ điều hành lên thẻ nhớ.

Hình 3 13 Chọn vị trí ổ nhớ cần boot

Lưu ý trước khi cài đặt thẻ nhớ cần phải được format giải phóng toàn bộ dung lượng. Kết nối nới màng hình ta có thể thấy giao diện chính.

Sau khi cài đặt xong hệ điều hành Ubuntu server dùng dòng lệnh “Sudo apt install ubuntu- desktop” để hoàn tất cài đặt hệ điều hành Ubuntu

Hình 3 14 Giao diện hệ điều hành

3.3.2 Cài đặt ROS NOETIC Đầu tiên cập nhật và cài đặt gói ros noetic-desktop-full

$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

$ sudo apt-key adv keyserver 'hkp://keyserver.ubuntu.com:80' recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

$ sudo apt install ros-noetic-desktop-full

Thiết lập môi trường ROS

$ echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

Cài đặt các gói công cụ cần thiết

$ sudo apt install python3-rosdep python3-rosinstall python3-rosinstall- generator python3-wstool build-essential

Mở terminal thứ nhất và nhập các dòng lệnh như sau:

$ source /opt/ros/noetic/setup.bash

$ source ros_ws/devel/seturbash

$ roslaunch rplidar ros rplidar launch

Mở ternimal thứ hai và nhập các dòng lệnh như sau:

$ source ros_ws/devel/seturbash

$ roslaunch hector_slam_launch tutorial launch

Sau khi robot quét map xong chúng ta sử dụng dòng lệnh dưới đây để lưu map

$ rosrun map_server map_saver -f ~/map

KẾT LUẬN CHƯƠNG

Trong quá trình thực hiện chương 3 nhóm đã đạt được những kết quả sau:

Robot có khả năng phát hiện chướng ngại vật nhờ vào cảm biến LIDAR, cùng với sự hỗ trợ của các cảm biến siêu âm và cảm biến hồng ngoại Những công nghệ này giúp tăng cường độ chính xác trong việc nhận diện các vật cản có chiều cao tương đương hoặc lớn hơn.

- Về chức năng bản đồ được tạo tự động, robot có thể mất khoảng 2 đến 5 phút để tạo sơ đồ phòng có diện tích 20m 2 bao gồm các đồ vật.

Chất lượng bản đồ không thay đổi nhiều qua các lần quét, chỉ khác nhau về hướng tùy thuộc vào vị trí bắt đầu Hình dạng của bản đồ được đánh giá tốt, ít nhiễu và các đường nét tương đối đồng đều.

Robot có khả năng xác định vị trí ban đầu trên bản đồ trong khoảng thời gian 40 giây nhờ vào chức năng điều hướng hiệu quả.

Hình 3 15 Bản đồ do Lidar tạo ra

Hình 3 16 Bản đồ rút gọn

Hình 3 17 Bản đồ sau khi được lưu lại

ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN ĐỀ TÀI

Ngày đăng: 15/02/2025, 10:35

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[18] NOAA (2013),“LIDAR—Light Detection and Ranging—is a remote sensing method used to examine the surface of the Earth” Sách, tạp chí
Tiêu đề: LIDAR—Light Detection and Ranging—is a remote sensing method used to examine the surface of the Earth
Tác giả: NOAA
Năm: 2013
[19] Paul, Richard (1981), “Robot manipulators: mathematics, programming, and control : the computer control of robot manipulators”. MIT Press, Cambridge, MA. ISBN 978-0-262-16082-7 Sách, tạp chí
Tiêu đề: Robot manipulators: mathematics, programming, and control : the computer control of robot manipulators
Tác giả: Paul, Richard
Nhà XB: MIT Press
Năm: 1981
[20] Sunil93 (2013), “Interfacing PS2 controller with AVR -Bit Bang” Sách, tạp chí
Tiêu đề: Interfacing PS2 controller with AVR -Bit Bang
Tác giả: Sunil93
Năm: 2013
[21] Nguyễn Văn Hân (2017), “Giao thức truyền dữ liệu nối tiếp” Sách, tạp chí
Tiêu đề: Giao thức truyền dữ liệu nối tiếp
Tác giả: Nguyễn Văn Hân
Năm: 2017
[22] PGS.TS. Nguyễn Trường Thịnh (2014), “Giáo trình kỹ thuật robot”, nhà xuất bản ĐHQG TPHCM Sách, tạp chí
Tiêu đề: Giáo trình kỹ thuật robot
Tác giả: PGS.TS. Nguyễn Trường Thịnh
Nhà XB: nhà xuất bản ĐHQG TPHCM
Năm: 2014

HÌNH ẢNH LIÊN QUAN

Hình 1. 2 Xe tự hành thám hiểm mặt trăng Lunokohod 1 - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 1. 2 Xe tự hành thám hiểm mặt trăng Lunokohod 1 (Trang 18)
Hình 1. 1 Robot 4 chân của hãng R.S Mosher và hãng General Electric - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 1. 1 Robot 4 chân của hãng R.S Mosher và hãng General Electric (Trang 18)
Hình 1. 3 Robot Shakey-robot đầu tiên nhận dạng đối tượng bằng camera - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 1. 3 Robot Shakey-robot đầu tiên nhận dạng đối tượng bằng camera (Trang 19)
Hình 1. 4 Tay robot trên tàu thám hiểm Viking 1 - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 1. 4 Tay robot trên tàu thám hiểm Viking 1 (Trang 20)
Hình 1. 13 Minh họa về SLAM - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 1. 13 Minh họa về SLAM (Trang 27)
Hình 1. 24 Sơ đồ tổng quan về Cấu hình ngăn xếp điều hướng(Nguồn: Internet) - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 1. 24 Sơ đồ tổng quan về Cấu hình ngăn xếp điều hướng(Nguồn: Internet) (Trang 35)
Hình 2. 3 Locomotion của robot - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 2. 3 Locomotion của robot (Trang 45)
Hình 2. 5 Bảng vẽ chi tiết chân robot - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 2. 5 Bảng vẽ chi tiết chân robot (Trang 48)
Hình 2. 9 Robot trên mặt phẳng thẳng đứng - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 2. 9 Robot trên mặt phẳng thẳng đứng (Trang 52)
Hình 3. 2 Lưu đồ thuật toán xử lý dữ liệu của hệ thống - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 3. 2 Lưu đồ thuật toán xử lý dữ liệu của hệ thống (Trang 60)
Hình 3. 8 Tín hiệu từ RPLIDAR - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 3. 8 Tín hiệu từ RPLIDAR (Trang 66)
Hình 3. 14 Giao diện hệ điều hành - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 3. 14 Giao diện hệ điều hành (Trang 69)
Hình 3. 13 Chọn vị trí ổ nhớ cần boot - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 3. 13 Chọn vị trí ổ nhớ cần boot (Trang 69)
Hình 3. 15 Bản đồ do Lidar tạo ra - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 3. 15 Bản đồ do Lidar tạo ra (Trang 71)
Hình 3. 17 Bản đồ sau khi được lưu lại - Đề tài thiết kế và xây dựng bản Đồ di chuyển Ứng dụng Điều khiển mô hình robot di Động bằng chân
Hình 3. 17 Bản đồ sau khi được lưu lại (Trang 72)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w