Cài đặt ROS 2 thủ công

Ghi chú này được dịch và biên tập từ tài liệu chính thức của ROS 2: Ubuntu (Debian packages) — ROS 2 Documentation: Humble (opens in a new tab).

Ghi chú này cung cấp hướng dẫn chi tiết các bước cài đặt ROS 2 phiên bản Humble Hawksbill trên hệ điều hành Ubuntu thông qua các gói Debian (apt). Phương pháp này được khuyến nghị sử dụng nhờ tính ổn định và khả năng cập nhật tự động thông qua trình quản lý gói của hệ thống.

Yêu cầu hệ thống

Hướng dẫn này áp dụng cho các hệ thống đáp ứng yêu cầu sau:

  • Hệ điều hành: Ubuntu 22.04 LTS (Jammy Jellyfish).
  • Kiến trúc hỗ trợ: amd64 hoặc arm64.
  • Lưu ý: ROS 2 Humble không hỗ trợ cài đặt qua apt trên các phiên bản Ubuntu khác (như 20.04 hoặc 24.04).

Bước 1: Thiết lập Locale (Ngôn ngữ hệ thống)

Yêu cầu đầu tiên là đảm bảo hệ thống hỗ trợ chuẩn mã hóa UTF-8. Điều này giúp ngăn chặn các lỗi định dạng ký tự có thể phát sinh trong quá trình biên dịch và thực thi các node của ROS 2.

Thực thi các lệnh sau trong Terminal để kiểm tra và thiết lập locale:

locale  # Kiểm tra locale hiện tại của hệ thống

sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

locale  # Kiểm tra lại để xác nhận các biến môi trường đã hiển thị UTF-8

Bước 2: Cấu hình kho lưu trữ (Repository)

Hệ thống cần được cấp quyền truy cập vào kho lưu trữ chính thức của ROS 2 để tiến hành tải về các gói cài đặt.

1. Kích hoạt kho lưu trữ Universe của Ubuntu:

sudo apt install software-properties-common
sudo add-apt-repository universe

2. Thêm GPG key của ROS 2: Việc thêm khóa GPG giúp hệ thống xác thực tính hợp lệ và toàn vẹn của các gói phần mềm tải về từ máy chủ ROS.

sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

3. Thêm kho lưu trữ ROS 2 vào cấu hình hệ thống:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

Bước 3: Cài đặt các gói phần mềm ROS 2

Sau khi cấu hình kho lưu trữ, cần cập nhật lại chỉ mục các gói của apt và nâng cấp hệ thống để tránh xung đột phiên bản giữa các thư viện.

sudo apt update
sudo apt upgrade -y

Có nhiều phiên bản cài đặt khác nhau, tuy nhiên đối với môi trường phát triển (Development Environment), phiên bản Desktop được khuyến nghị sử dụng. Phiên bản này bao gồm lõi ROS 2, RViz, các ví dụ (demos) và công cụ giao diện người dùng (GUI tools).

sudo apt install ros-humble-desktop

Bước 4: Cấu hình biến môi trường (Environment Setup)

Để sử dụng các công cụ dòng lệnh của ROS 2 (như ros2 run, ros2 topic,...), tệp kịch bản khởi tạo hệ thống cần được nạp vào phiên làm việc hiện tại.

source /opt/ros/humble/setup.bash

Để tự động hóa quá trình này, bạn có thể thêm lệnh trên vào tệp ~/.bashrc. Khi đó, ROS 2 sẽ tự động được khởi tạo mỗi khi một cửa sổ Terminal mới được mở.

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

Bước 5: Kiểm tra cài đặt (Chạy thử ví dụ)

Để xác minh quá trình cài đặt đã hoàn tất và hệ thống hoạt động ổn định, bạn có thể chạy thử ví dụ giao tiếp cơ bản (Pub/Sub) được cung cấp sẵn.

1. Khởi chạy Node Talker (Sử dụng C++): Mở một cửa sổ Terminal mới và thực thi lệnh:

ros2 run demo_nodes_cpp talker

Hệ thống sẽ liên tục ghi log với nội dung: [INFO] [talker]: Publishing: 'Hello World: x'.

2. Khởi chạy Node Listener (Sử dụng Python): Mở thêm một cửa sổ Terminal thứ hai và thực thi lệnh:

ros2 run demo_nodes_py listener

Hệ thống sẽ ghi log với nội dung: [INFO] [listener]: I heard: [Hello World: x].

Nếu quá trình truyền và nhận dữ liệu giữa hai terminal diễn ra thành công, điều đó chứng tỏ ROS 2 Humble đã được cài đặt và cấu hình chính xác trên hệ thống của bạn.

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