一、准备工作
1、查询Ubuntu版本
安装ROS2前,需要知道安装的Ubuntu版本,不同的Ubuntu版本对应不同的ROS2版本,具体见下图:
在Ubuntu终端中输入lsb_release -a,即可查询Ubuntu版本
2、Ubuntu换源
这里以清华源为例
在清华大学开源软件镜像站中找到对应版本的Ubuntu的镜像,链接如下:
链接: https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
在Ubuntu终端中对系统自带的镜像备份
$ sudo cp /etc/apt/sources.list /etc/apt/sources.list
用gedit工具更换清华源,打开文档后将预先找到的清华源镜像粘贴进去,点击保存后关闭窗口
$ sudo gedit /etc/apt/sources.list
更新源
$ sudo apt-get upgrade
替换后的文件内容
二、设置编码
locale是对系统语言设置
$ 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查看是否设置成功, 下图中LC_ALL为空,代表设置失败。
遇到这种情况,输入export LC_ALL=en_US.UTF-8即可解决。
三、安装ROS2的资源库到本地
$ sudo apt update && sudo apt install curl gnupg lsb-release
更换源
$ sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
设置key
$ sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
$ sudo apt update && sudo apt install curl gnupg lsb-release
$ sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
获取ros2
$ 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
在更换源时,出现Failed to connect to raw.githubusercontent.com的错误提示时,根据以下链接添加网址的ip。
链接: https://www.guyuehome.com/37844
四、安装ROS2
先进行软件的更新后,输入sudo apt install ros-melodic-desktop-full安装ros2,melodic可以更换为对应Ubuntu版本的ros2版本
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install ros-melodic-desktop-full
安装ros2成功界面
五、环境变量设置
为了在任意终端中使用ROS需要配置环境变量
$ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
六、安装依赖
为了在任意终端中使用ROS需要配置环境变量
$ sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential
$ sudo apt install python-rosdep
七、初始化rosdep
为了在任意终端中使用ROS需要配置环境变量
$ sudo rosdep init
$ rosdep update
初始化rosdep成功界面
八、ros经典实例
第一个终端启动ros内核
$ roscore
第二个终端打开乌龟小程序界面
$ rosrun turtlesim turtlesim_node
第三个终端打开乌龟的键盘控制程序
$ rosrun turtlesim turtle_teleop_key
注意:要把鼠标移动到第三个终端的界面上才能操控乌龟