1-deepinV20 安装配置ROS

本教程指导您在PC上安装ROS,并配置ROS环境,至于为什么选择deepin而不是ROS通用的ubuntu,也仅仅是为了支持国产系统。鉴于本人水平有限,如哪位攻城狮网友发现本文存在的问题,烦请留言指正,谢谢!

本教程指导您在PC上安装ROS,并配置ROS环境。

ubuntu安装ROS

fishros一键ROS安装

下述命令即可一键完成ROS版本的选择与安装,详细可参考fishros

wget http://fishros.com/install -O fishros && . fishros

deepinV20安装ROS

1 配置source.list

配置source.list以使你的电脑能从packages.ros.org获取软件

sudo sh -c 'echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu buster main" > /etc/apt/sources.list.d/ros-latest.list'

2 配置密钥

配置source.list以使你的电脑能从packages.ros.org获取软件

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

3 安装

首先需要确保deepin的包索引是最新的:sudo apt-get update
在ROS中有许多不同的库和工具。我们提供了4个默认配置。另外你也可以单独安装ROS包。
如果下一步出现问题,你可以使用以下的存储库,而不是使用上面提到的ros-shadow-fixed所提及的存储库。

  • 完整桌面版(推荐):ROS,rqt,rviz,robot-generic库,2D/3D仿真以及2D/3D感知
    sudo apt install ros-noetic-desktop-full
    
  • 建议桌面版安装:ROS,rqt,rviz,robot-generic库
    sudo apt install ros-noetic-desktop
    
  • ROS-Base(基本框架):ROS包,构建和通信库,无GUI工具
    sudo apt install ros-noetic-ros-base
    

4 环境配置

每次启动一个新的bash的,将ROS相关的环境变量自动添加到bash会话是很方便的。

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

5 构建包依赖关系

到目前为止已经安装了运行ROS Core所需要的组件。有许多分开分布的工具和需求来创建并管理你的ROS工作空间。例如 rosinstall是一个常用的命令行工具,它使您可以用一个命令轻松地下载许多ROS包的源代码树。要安装这个工具或其他构建ROS包的依赖可运行:

sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
6 初始化rosdep

在你使用ROS工具前,你需要初始化rosdep。rosdep使您能够轻松的为您需要的编译的源码安装依赖项,另外rosdep可以让你在ROS中运行一些核心组件。如果没有安装rosdep,可以按照以下步骤进行安装

sudo apt install python3-rosdep
sudo rosdep init
rosdep update

注意:
sudo rosdep init失败:解决办法

#将下列复制到 /etc/hosts 文件的末尾
151.101.84.133 raw.githubusercontent.com
sudo /etc/init.d/networking  restart
#之后再运行
sudo rosdep init
rosdep update

# 或者使用fishros.com的解决方案rosdepc
 sudo apt-get install python3-pip
 sudo rosdepc  init
# 由于rosdepc暂时不能识别deelin系统,需要在执行rosdepc update之前修改/etc/lsb-release  主要是将DISTRIB_ID修改为debian

cat /etc/lsb-release
DISTRIB_ID=debian
DISTRIB_RELEASE=20.6
DISTRIB_DESCRIPTION="Deepin 20.6"
DISTRIB_CODENAME=apricot

sudo rosdepc update # 建议用root进行更新

ROS环境变量

在ROS安装过程中,你source过一个setup.*sh文件,也可能你也把个source命令添加到了启动脚本里。source这个脚本的过程是必须的,因为ROS使用依赖于使用shell环境所组成的组合空间的概念。这使得不同版本的ROS或者包的开发更为容易。
如果您在使用ROS包的时候遇到问题,请优先确认是否设置了正确环境变量。可使用如下命令检查ROS环境变量的设置.如果printenv的打印中没有ROS相关的输出,你需要source对应的脚本。

printenv  | grep ROS

ROS_VERSION=1
ROS_PYTHON_VERSION=3
ROS_PACKAGE_PATH=/opt/ros/noetic/share
ROSLISP_PACKAGE_DIRECTORIES=
ROS_ETC_DIR=/opt/ros/noetic/etc/ros
ROS_MASTER_URI=http://localhost:11311
ROS_ROOT=/opt/ros/noetic/share/ros
ROS_DISTRO=noetic

一般需要source的脚本是

source /opt/ros/<distro>/setup.bash #distro:表示你所安装的ROS的版本,建议将此命令写入~/.bashrc中

创建ROS工作区-catkin

mkdir -p ~/ros_ws/src
cd ~/ros_ws
catkin_make

catkin_make工具是catkin工作区的便捷工具,在工作区第一次运行此工具的时候,此工具会自动在src/目录下生成CMakeLists.txt。
ROS Melodic以及使用更早版本的ROS的Pyhton3用户需要注意:如果你是从ROS源码构建,以实现Python3的兼容性,且已经适当的设置了您的系统[安装了ROS Python包,catkin]等,则在一个干净的catkin工作区中你的第一个catkin_make命令必须是

catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3

这将配置你的catlin_make使用Python3.

如果你仔细查看当前的~/ros_ws目录你会发现catkin_make不仅生成了CMakelist.txt还创建了devel和build目录。devel目录中存放*.sh文件,source这些*.sh会覆盖您当前的环境变量,以为了后来ros能找到您所维护的包。

source devle/setup.bash

为了确保知行上述命令后您的工作区脚本倍覆盖,可使用如下命令来查看ROS_PACKAGE_PATH环境变量

echo $ROS_PACKAGE_PATH
/home/gaoy/ros_ws/src:/opt/ros/noetic/share
#或者printenv | grep ROS_PACKAGE_PATH

Gitee地址

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值