Bản đồ Phình to (Inflation Map) trong Lập kế hoạch Đường đi
Trước đây, chúng ta đã xem xét bản đồ tĩnh và bản đồ chướng ngại vật, nhưng đối với lập kế hoạch đường đi, hai bản đồ này là không đủ, chúng ta cần thêm một bản đồ thứ ba, đó là bản đồ phình to.
Bản đồ phình to khá dễ hiểu, đó là việc phình to các chướng ngại vật trên bản đồ. Tại sao phải thực hiện thao tác này? Chủ yếu là vì khi lập kế hoạch đ ...
Đăng vào ngày 7 tháng 7 lúc 12:18
Tạo và Sử Dụng Tin Nhắn Tùy Chỉnh Trong ROS
Trong giao thức truyền thông của ROS, dữ liệu được truyền theo cấu trúc đã định nghĩa trước, chẳng hạn như các loại tin nhắn (msg) cho Topic hoặc dịch vụ (srv). Các loại dữ liệu cơ bản trong std_msgs của ROS thường không đáp ứng đủ nhu cầu phức tạp, do đó ta có thể sử dụng tin nhắn tùy chỉnh.
Tạo RobotPosition.msg
Tạo thư mục `msg` ở cùng cấp ...
Đăng vào ngày 6 tháng 7 lúc 14:51
Giải pháp Bảo Vệ Dữ liệu Cảm biến Robot: Zod Loại Bỏ 90% Lỗi Dữ liệu
Bảo vệ dữ liệu cảm biến robot với Zod
Zod là một thư viện xác thực kiểu TypeScript, giúp xây dựng hệ thống xác thực dữ liệu mạnh mẽ. Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng Zod để đảm bảo rằng các quyết định của robot luôn dựa trên dữ liệu đáng tin cậy.
Điểm yếu trong dữ liệu cảm biến
Robot công nghiệp trung bình tạo ra 2.5GB dữ l ...
Đăng vào ngày 28 tháng 6 lúc 00:13
Custom Message Type Definition and Utilization in ROS Communication
Defining Custom Topic Messages
To enable structured data exchange between nodes via ROS topics, custom message types must be defined and integrated into the build system.
Define Message Interface
Create a .msg file in the msg/ directory of your package, e.g., Person.msg:
string name
uint8 sex
uint8 age
# Constants for sex
uint8 UNKNOWN = 0
u ...
Đăng vào ngày 27 tháng 6 lúc 21:22
Sử dụng tệp khởi động (launch) trong ROS
Cách sử dụng tệp khởi động (launch)
1. Tệp khởi động: Sử dụng tệp XML để cấu hình và khởi động nhiều nút (có thể tự động khởi động ROS Master)
2. Ngữ pháp tệp khởi động:
<launch>
<node pkg="turtlesim" name="sim1" type="turtlesim_node"/>
<node pkg="turtlesim" name="sim2" type=& ...
Đăng vào ngày 25 tháng 6 lúc 20:07
Costmap trong ROS Navigation
1 Giới thiệu về Costmap
Trong quá trình robot thực hiện lập kế hoạch đường đi, chúng ta cần hiểu rằng thuật toán lập kế hoạch dựa vào những gì để tính toán ra một đường đi trên bản đồ. Nó dựa vào bản đồ toàn cục được xây dựng bởi gmapping, nhưng chỉ dựa vào một bản đồ toàn cục thô sơ là không đủ. Bởi vì bản đồ này tĩnh, không thể cập nhật thông ...
Đăng vào ngày 20 tháng 6 lúc 08:43
Giải Pháp Các Vấn Đề Thường Gặp Trong Dự Án BehaviorTree.ROS
Tổng Quan Dự Án Ngôn Ngữ Lập Trình Chính
BehaviorTree.ROS là một dự án mã nguồn mở cung cấp các công cụ hữu ích cho nhà phát triển sử dụng ROS (Robot Operating System) với BehaviorTree.CPP. Dự án này nhằm mục đích giúp các lập trình viên xây dựng cây hành vi (behavior trees) trong C++ một cách độc lập với middleware. Cây hành vi là phương pháp ...
Đăng vào ngày 18 tháng 6 lúc 19:44
Hướng dẫn cài đặt T265 với SDK RealSense và RealSense-ROS
I. Giới thiệu phần cứng
Máy tính nh_embedded Jetson Xavier NX với thiết bị 6002E như hình dưới:
Camera T265 kép
II. Giới thiệu về RealSense SDK và RealSense-ROS
Theo quan điểm của tôi, RealSense SDK là trình điều khiển cần thiết để sử dụng T265, cho phép chúng ta mở phần mềm chính thức để xem vị trí và hình ảnh kép. RealSense-ROS là trình điều ...
Đăng vào ngày 17 tháng 6 lúc 17:07
Tổng quan về ROS: Kiến trúc, Khái niệm cốt lõi và Công cụ dòng lệnh
1. ROS là gì?
ROS = Cơ chế giao tiếp + Công cụ phát triển + Chức năng ứng dụng + Hệ sinh thái
Mục tiêu: Nâng cao khả năng tái sử dụng phần mềm trong lĩnh vực robot.
1.1 Cơ chế giao tiếp trong ROS
ROS sử dụng kiến trúc giao tiếp phân tán với tính liên kết lỏng lẻo (loosely coupled).
Khái niệm về coupling (tính liên kết)
Coupling là mức độ phụ ...
Đăng vào ngày 24 tháng 5 lúc 02:02