Robotics
Cài đặt môi trường mô phỏng UR3

Cài đặt môi trường mô phỏng UR3

Ghi chú này sử dụng kho lưu trữ UniversalRobots/Universal_Robots_ROS2_GZ_Simulation (opens in a new tab) (nhánh Humble), bạn đọc có thẻ truy cập repo chính thức để tìm hiểu thêm.

Trong quá trình phát triển các ứng dụng robot, việc sử dụng môi trường mô phỏng là bước bắt buộc trước khi triển khai thuật toán lên phần cứng thực tế (Đặc biệt đối với các nhóm mới tìm hiểu & người ít kinh nghiệm không có người hướng dẫn chi tiết). Universal Robots cung cấp gói Universal_Robots_ROS2_GZ_Simulation sử dụng trình giả lập Gazebo để mô phỏng chính xác động học và động lực học của các dòng robot UR.

Ghi chú này sẽ hướng dẫn chi tiết quy trình xây dựng (build) gói mô phỏng này từ mã nguồn, tập trung cụ thể vào việc khởi chạy mô hình cánh tay robot UR3 theo như mô tả được đề cập trong repo phát hành chính thức.

1. Yêu cầu hệ thống (Prerequisites)

Trước khi tiến hành cài đặt, hệ thống của bạn cần đáp ứng các điều kiện sau:

  • Đã cài đặt hoàn chỉnh ROS 2 Humble trên Ubuntu 22.04 (bạn có thể xem ghi chú hướng dẫn của tôi về cách cài đặt).
  • Đã cài đặt các công cụ phát triển cơ bản của ROS 2. Nếu chưa, hãy thực thi lệnh sau:
sudo apt update
sudo apt install python3-colcon-common-extensions python3-vcstool git

2. Khởi tạo Workspace và Tải mã nguồn

Để tránh xung đột hệ thống, các gói (packages) nên được biên dịch trong một không gian làm việc (workspace) riêng biệt.

Bước 2.1: Tạo thư mục không gian làm việc Mở terminal và tạo một thư mục mới có tên ur_ws (Universal Robots Workspace):

mkdir -p ~/ur_ws/src
cd ~/ur_ws/src

Bước 2.2: Nhân bản (Clone) mã nguồn từ GitHub Sử dụng git để tải mã nguồn gói mô phỏng nhánh humble từ kho lưu trữ chính thức:

git clone -b humble [https://github.com/UniversalRobots/Universal_Robots_ROS2_GZ_Simulation.git](https://github.com/UniversalRobots/Universal_Robots_ROS2_GZ_Simulation.git)

3. Quản lý và Cài đặt các thư viện phụ thuộc

Mô phỏng UR3 yêu cầu rất nhiều gói phụ thuộc đi kèm (chẳng hạn như ur_description, ros2_control...). Thay vì cài đặt thủ công từng gói, chúng ta sẽ sử dụng công cụ rosdep.

Di chuyển về thư mục gốc của workspace và chạy các lệnh sau:

cd ~/ur_ws
sudo rosdep init
rosdep update
rosdep install --from-paths src --ignore-src -y

4. Biên dịch mã nguồn (Build)

Sau khi toàn bộ thư viện phụ thuộc đã được đáp ứng, bước tiếp theo là biên dịch mã nguồn của workspace bằng colcon.

colcon build --symlink-install

Tham số --symlink-install giúp tối ưu quá trình phát triển bằng cách tạo liên kết tượng trưng (symlink) thay vì sao chép toàn bộ file. Điều này có nghĩa là khi bạn chỉnh sửa các file Python hoặc file cấu hình (launch, urdf...), bạn không cần phải chạy lại lệnh build.

5. Khởi chạy và Kiểm tra mô phỏng UR3

Bước 5.1: Cập nhật biến môi trường Sau khi quá trình biên dịch hoàn tất (không báo lỗi), bạn cần "nạp" workspace này vào môi trường terminal hiện tại:

source ~/ur_ws/install/setup.bash

Bước 5.2: Khởi động Gazebo và nạp mô hình UR3 Sử dụng lệnh ros2 launch để gọi kịch bản khởi chạy. Điểm quan trọng ở đây là bạn phải truyền tham số ur_type:=ur3 để hệ thống biết cần nạp cấu hình của cánh tay robot nào (mặc định gói này thường nạp dòng UR5e hoặc UR10e nếu không chỉ định).

ros2 launch ur_simulation_gz ur_sim_control.launch.py ur_type:=ur3

Nếu mọi thứ được thiết lập chính xác, một cửa sổ Gazebo (Ignition) sẽ được mở ra. Tùy thuộc vào phần cứng máy tính, lần khởi chạy đầu tiên có thể mất một chút thời gian để tải các thư viện hình ảnh và vật lý. Bạn sẽ thấy cánh tay robot UR3 xuất hiện trong môi trường giả lập 3D, sẵn sàng nhận các lệnh điều khiển từ ros2_control.

Hình ảnh Ur3 trong Rviz

Hình ảnh Ur3 trong Gazebo

Bình luận & Cảm xúc