自学内容网 自学内容网

ubuntu20.04安装ros noetic版本记录

记录下自己在ubuntu系统上安装ros的过程和遇到的问题,供参考:

环境:ubuntu20.04系统,国内网络;

步骤:

1.切换源地址,并更新;

2.配置ros安装地址、密钥;

3.安装ros版本

4.初始化、更新ros版本;

5.运行ros,测试安装结果;

详细操作:

1.切换源地址并更新:

切换源的目的是用国内网络,更快的更新相关资源;

ubuntu切换源的方法,打开Software&Updates,在UbuntuSoftware这个页面里,点击Download from这个下拉选项,选择other...,,打开对话框,选择china - mirrors.aliyun.com。如下图:

然后命令行输入 sudo apt update 完成更新;

2.配置ros安装地址、密钥

打开终端输入如下命令:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

3.安装ROS Noetic Desktop Full版

sudo apt install ros-noetic-desktop-full

以上三步都很简单,很少遇到问题,后面的步骤会遇到很多问题;

4.初始化、更新rosdep

安装好ros版本之后,需要在终端输入

sudo rosdep init
sudo rosdep update

输入rosdep init的时候,有可能遇到命令找不到,需要安装相关依赖:

sudo apt install python3-rosdep2

然后再执行sudo rosdep inti

执行rosdep init如果提示/etc/ros/rosdep/sources.list.d/20-defalut.list文件已经存在,可以将这个文件重新修改个名字,然后再rosdep init;

初始化这一步主要是为下一步rosdep update准备相关的配置文件;

rosdep update超时处理:

上面步骤完成后,准备rosdep update,因为用的国内的网络,这一步基本都是timeout,无法更新;所以需要修改更新方法,思路如下:

1.将ros代码clone到本地;2修改上面初始化得到的配置文件的值,将更新地址改为本地地址;3执行更新;

详细如下:

4.1.在本地创建一个英文路径的文件夹,用来存放ros工程,然后将代码clone到本地,命令如下:

git clone https://github.com/ros/rosdistro.git

4.2.修改配置文件中的路径信息:

需要修改三处文件,

/etc/ros/rosdep/sources.list.d/20-defalut.list

/usr/lib/python3/dist-packages/rosdep2/rep3.py

 /usr/lib/python3/dist-packages/rosdistro/__init__.py

将/etc/ros/rosdep/sources.list.d/20-defalut.list文件里的https://路径修改为本地路径如下图:

其中file:///home/vboxuser/rosdistro/rosdistro/这个路径就是上面代码clone到的本地路径;

按照上面修改的规则,修改另外两个文件;每个文件只需要修改一行即可;

/usr/lib/python3/dist-packages/rosdep2/rep3.py这个文件里REP3_TARGETS_URL =这一行修改;

/usr/lib/python3/dist-packages/rosdistro/__init__.py这个文件里DEFAULT_INDEX_URL =这一行修改;

4.3.执行更新

将上面三个文件修改好之后,再执行sudo rosdep update;即可更新成功;

5.ros环境配置和试运行

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

上面命令是配置ros环境变量;这样打开终端就可以输入ros命令;

roscore命令测试:

在终端输入roscore,如果没有roscore或roslaunch,需要更新roslaunch;命令如下:

sudo apt-get install ros-noetic-roslaunch

注意:这个更新需要指定ros版本

更新好这个之后,可以执行roscore命令;

rosrun命令测试:

终端输入rosrun,如果没有这个命令,需要安装rosbash,catkin;命令如下:

sudo apt-get install ros-noetic-catkin

sudo apt-get install ros-noetic-rosbash

注意:这个更新需要指定ros版本

更新好之后,可以执行rosrun命令;

运行turtlesim:

小乌龟页面运行测试,需要安装对应的包,命令如下:

sudo apt-get install ros-noetic-turtlesim

运行这个命令的前提是,roscore必须启动,否则会报错;

运行结果如下图:

至此,ros安装全部完成;

原创,转载注明出处;


原文地址:https://blog.csdn.net/gz9456/article/details/144763214

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!