Ubuntu安装ROS foxy记录
1. 首先检查系统编码是不是UTF-8
检查系统编码是不是utf-8,如果不是需要改为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
只需要是UTF-8
就行,不是非得en_US.UTF-8
2.设置安装源
-
确保Ubuntu Universe仓库是否开启
apt-cache policy | grep universe
-
运行后会出现一下反馈
500 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 Packages release v=20.04,o=Ubuntu,a=focal,n=focal,l=Ubuntu,c=universe,b=amd64
-
如果没有出现,需要运行
sudo apt install software-properties-common sudo add-apt-repository universe
-
添加秘钥:
sudo apt update && sudo apt install curl gnupg2 lsb-release sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
这里会出现访问不了https://raw.githubusercontent.com的情况
在url之前添加https://ghproxy.com/可以解决问题
sudo apt update && sudo apt install curl gnupg2 lsb-release sudo curl -sSL https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
-
将源加入到source list
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
3.安装ROS2包
-
更新apt仓库
sudo apt update
-
更新包
sudo apt upgrade
-
桌面安装(推荐):ROS、RViz、演示、教程。
sudo apt install ros-foxy-desktop
-
ROS-Base Install (Bare Bones):通信库、消息包、命令行工具。没有 GUI 工具。
sudo apt install ros-foxy-ros-base
4.环境设置
-
获取安装脚本
通过以下文件来设置的环境。
source /opt/ros/foxy/setup.bash
-
为了不必每次打开终端都需要输入上述内容,可以将其添加到~/.bashrc中,使其自动启动
echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc
5.示例
如果您在上面安装了 ros-foxy-desktop,您可以尝试一些示例。
-
a.消息发布和订阅
- 在一个终端中,获取 setup 文件,然后运行 C++ talker:
source /opt/ros/foxy/setup.bash ros2 run demo_nodes_cpp talker
- 在另一个终端中获取设置文件,然后运行 Python 侦听器
source /opt/ros/foxy/setup.bash ros2 run demo_nodes_py listener
- 你应该看到说话者说它正在发布消息,而听众说我听到了这些消息。这将验证 C++ 和 Python API 是否正常工作。
-
b.小乌龟游戏
-
打开终端Ctrl+Alt+T,输入下面的指令
ros2 run turtlesim turtlesim_node
这时候出现小海龟的画面
-
打开另一个终端,输入
ros2 run turtlesim turtle_teleop_key
这个时候就可以在这个终端控制小海龟移动了
-
-
相机游戏
6.卸载
If you need to uninstall ROS 2 or switch to a source-based install once you have already installed from binaries, run the following command:
如果您需要卸载 ROS 2 或在从二进制文件安装后切换到基于源的安装,请运行以下命令:
sudo apt remove ~nros-foxy-* && sudo apt autoremove
如果需要删除库,需要运行一下命令:
sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove
# Consider upgrading for packages previously shadowed.
sudo apt upgrade
评论区