Robotics
Kết nối & điều khiển qua Ros2/Rviz

Kết nối & điều khiển qua Ros2/Rviz

💡 Info: Ghi chú này hướng dẫn cách kết nối & điều khiển Ur3e với Ros-Humble (Ubuntu22.04). Chắc chắn rằng bạn đã cài đặt Ros-Humble trên máy tính của mình, nếu chưa hãy xem ghi chú của tôi về cách cài đặt nó.

Cài đặt Extenal Control trên robot

Để sử dụng được ur_robot_driver (package ros để làm việc với ur robot với ros) bạn cần cài đặt externalcontrol-xxxurcap, bạn có thể tìm thấy và tải xuống nó tại đây (opens in a new tab)

Để cài đặt nó, trước tiên bạn phải sao chép nó vào thư mục chương trình của robot, để thực hiện, bạn cần 1 usb, sao chép file urcap vừa tải về ở phía trên vào trong usb và cắm nó vào teach pendant. Trên màn hình teach pendant, ấn vào biểu tượng menu (biểu tượng 3 gạch) phía góc trên bên phải và chọn vào menu.

Tiếp đó, bạn lần lượt ấn chọn vào System -> URCaps chọn biểu tượng dấu cộng ở góc dưới, tìm file externalcontrol-xxxurcap trong phân vùng usb bạn vừa cắm vào để cài đặt. Sau khi hoàn thành, hệ thống sẽ yêu cầu bạn khởi động lại, sau khi quá trình hoàn tất, khi quay lại phàn URCaps vừa rồi, bạn sẽ thấy Exterrnal Control đã được cài đặt.

Tiếp đó, để giao tiếp được, hệ thống yêu cầu bạn cần kết nối được robot cùng pc trong cùng 1 mạng, xem ghi chú trước đó của tôi trong cùng phân mục để rõ hơn về cách kết nối.

Khi quá trình kết nối mạng hoàn tất, từ giao diện chính, bạn vào tab Installation > External Control và nhập địa chỉ IP tĩnh của máy tính ROS 2 vào ô Host IP, giữ nguyên thông số port 50002.

Cuối cùng, để robot thực sự sẵn sàng nhận các lệnh điều khiển từ máy tính, bạn cần khởi tạo một chương trình chạy cơ bản. Hãy chọn thẻ Program ở dải menu phía trên và tạo một chương trình trống hoàn toàn. Mở nhóm lệnh URCaps và nhấn chọn External Control để chèn trực tiếp khối lệnh này vào cấu trúc chương trình.

Bắt đầu ngắn với package Universal_Robots_ROS2_Driver

Universal_Robots_ROS2_Driver là package chính thức của Univerrsal Robots cho việc kết nối & làm việc giữa các robot thuộc dòng Ur với ros2, bạn có thể xem chi tiết hơn về nó trong repo này. Package repo hỗ trợ nhiều bản ros2 khác nhau, bạn có thể tùy chỉnh để phù hợp với phiên bản của mình (trong ghi chú này tôi sử dụng ros-humble).

Để bắt đầu, bạn cần cài đặt trình điều khiển bằng lệnh

# Cài đặt bộ driver cốt lõi và các gói mô hình cơ bản của Universal Robots cho ROS 2 Humble
sudo apt install ros-humble-ur

# Cài đặt hệ sinh thái MoveIt 2 để hỗ trợ nội suy quỹ đạo và tính toán động học nghịch
sudo apt install ros-humble-moveit

Tiếp theo đó khởi động trình điều khiển

source /opt/ros/humble/setup.bash
# Thay thế ur3 bằng một trong các mã: ur3, ur3e, ur5, ur5e, ur7e, ur10, ur10e, ur12e, ur16e, ur8long, ur15, ur18, ur20, ur30
# Thay thế địa chỉ IP bằng địa chỉ IP thực tế của robot hoặc phần mềm mô phỏng URSim của bạn
ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur3e robot_ip:=192.168.1.10 launch_rviz:=false

Mở một terminal khác và gõ lệnh dưới để khởi động moveit

ros2 launch ur_moveit_config ur_moveit.launch.py ur_type:=ur3e launch_rviz:=true

Để điều khiển, bạn chỉ cần dùng chuột kéo thả vòng tròn tương tác ở đầu robot trong RViz đến vị trí làm việc mong muốn. Cuối cùng, bạn nhấn nút Plan & Execute ở bảng điều khiển bên trái. MoveIt 2 sẽ tự động tính toán góc xoay của từng khớp sao cho tối ưu nhất, đồng thời truyền lệnh qua driver để robot thực tế di chuyển chính xác theo đúng hình ảnh mô phỏng.

Lưu ý quan trọng: Trước khi gửi lệnh di chuyển, bạn phải đảm bảo đã mở và nhấn nút chạy (Play) chương trình chứa lệnh External Control trên màn hình Teach Pendant. Nếu chương trình này chưa chạy, kết nối giữa ROS 2 và robot thực tế sẽ bị gián đoạn.

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