前言
经过2次安装测试,下面的步骤可行,其中有一些指令还不理解,希望日后能明白。
以下的指令均在 terminal 中执行。
第一步:设置 UTF-8
locale # check for UTF-8 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 # verify settings
可以一行一行复制粘贴执行,也可以整段一起执行。
第二步:下载 ROS2 的 GPG Key
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
下载完就可以在 /usr/share/keyrings/目录下看到 ros-archive-keyring.gpg
第三步:设置源
下面3个源,选择一个即可,建议选择阿里源:
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 # 官方源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.aliyun.com/ros2/ubuntu/ jammy main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null # 阿里源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null # 清华源
第四步:更新软件表
sudo apt update sudo apt upgrade
第五步:安装 ROS2
sudo apt install ros-humble-desktop
这一步会需要较长的时间。
第六步:设置环境变量
source /opt/ros/humble/setup.bash # 只能让当前 ternimal 认识 ROS2 指令 echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc # 添加到shell启动脚本,任意开启 ternimal 都可认识 ROS2 指令
到这里 ROS2 就安装完成了。
下面运行 ROS2 的 2 个经典 demo,验证一下安装是否完成。
第一个:消息的订阅、发布
1,打开一个 terminal ,执行
ros2 run demo_nodes_py listener # 开启一个订阅者
2,再打开一个 terminal,执行
ros2 run demo_nodes_cpp talker # 开启一个发布者
然后就能看到两个terminal 的通讯了:
第二个:小乌龟的轨迹
1,打开一个 terminal ,执行
ros2 run turtlesim turtlesim_node # 打开一个乌龟模拟节点
2,再打开一个 terminal,执行
ros2 run turtlesim turtle_teleop_key # 开启一个按键控制器
鼠标焦点落在第二个 terminal 上,按键盘的上下左右或者G/B/V/C/D/E/R/T,发现可以控制模拟器里小乌龟运动。
猜测这个原理跟第一个 demo 类似,就是一个节点发数据,另外一个节点接收数据。