ubuntu18.04 LTS安装ROS教程

一,安装ubuntu 18.04
下载链接:https://releases.ubuntu.com/18.04.5/找到合适的版本安装

二,安装ROS melodic版本

1.设置sources.list(设置软件源),将电脑设置为可以从http://packages.ros.org接收软件

国外的:

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

 

国内的,速度快:

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

清华的:

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

2.添加秘钥

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

3.确保软件更新为最新版本

sudo apt-get update

 4.下载ros 

sudo apt-get install ros-melodic-desktop-full

5.设置环境

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

6.安装rosdep

sudo apt install python-rosdep2

7.初始化操作,需要先初始化rosdep

rosdep能够轻松地安装要编译的源代码的系统依赖关系,并且需要在ROS中运行一些核心组件。

在使用 ROS 之前,需要先初始化 rosdep

rosdep 使得你可以为你想要编译的源码,以及需要运行的 ROS 核心组件,简单地安装系统依赖。

sudo rosdep init

    备注如果出现错误:

ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
sudo gedit /etc/hosts
#在文件末尾添加
151.101.84.133  raw.githubusercontent.com
ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize

直接删除就好

sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

 

ubuntu18.04 LTS安装ROS教程

rosdep update

8.环境配置,添加ros环境变量。 如果在每次一个新的终端启动时,ROS 环境变量都能自动地添加进你的 bash 会话是非常方便,这可以通过如下命令来实现:

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

9.安装rosinstall,rosinstall是一种常用的命令行工具

到这一步,应该已经安装好了运行核心 ROS 包的所有东西。要创建和管理你自己的 ROS workspace,还有单独发布的许多的工具。比如,rosinstall 是一个常用的命令行工具,使你可以通过一个命令为 ROS 包简单地下载许多源码树。

要安装这个工具及其它的依赖以构建 ROS 包,则运行:

sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

10.测试ROS是否已经安装成功

第一步:按住Alt+Ctrl+T打开一个新的终端,然后输入roscore

第二步:按住Alt+Ctrl+T打开一个新的终端,然后输入rosrun turtlesim turtlesim_node,会弹出一个小海龟

rosrun turtlesim turtlesim_node

第三步:按住Alt+Ctrl+T打开一个新的终端,然后输入rosrun turtlesim turtle_teleop_key,按键盘上的上下左右箭头,控制小海龟移动

rosrun turtlesim turtle_teleop_key

至此,ROS的安装已经基本完成,下面就可以进行ROS开发了

创建并初始化工作目录

 ROS使用一个名为catkin的ROS专用构建系统。为了使用它,用户需要创建并初始化

catkin工作目录,如下所示。除非用户创建新的工作目录,否则此设置只需设置一次。

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
  1.  执行完之后会在~/下生成catkin_ws工作空间,执行完catkin_init_workspace之后会在src下生成CMakeList.txt

即使这个工作空间是空的(在’src’目录中没有任何软件包,只有一个CMakeLists.txt链接文件),你依然可以编译它:

cd ~/catkin_ws/
catkin_make

catkin_make命令在catkin 工作空间中是一个非常方便的工具。如果你查看一下当前目录应该能看到’build’和’devel’这两个文件夹。在’devel’文件夹里面你可以看到几个setup.*sh文件。接下来首先source一下新生成的setup.*sh文件:

$ source devel/setup.bash

要想保证工作空间已配置正确需确保ROS_PACKAGE_PATH环境变量包含你的工作空间目录,采用以下命令查看:

echo $ROS_PACKAGE_PATH
/home/<youruser>/catkin_ws/src:/opt/ros/melodic/share:/opt/ros/melodic/stacks

四,安装gazebo仿真软件
一般独立的gazebo软件在安装ROS时就已经安装好了,检查一下

gazebo

问题一:打开gazebo报错:VMware: vmw_ioctl_command error Invalid

argument
解决方法:
方法1:关闭虚拟机的3D图形加速,注意先关闭虚拟机再修改。

ubuntu18.04 LTS安装ROS教程

方法2:设置环境变量

export SVGA_VGPU10=0

一劳永逸方法

echo "export SVGA_VGPU10=0" >> ~/.bashrc

问题二:运行gazebo时出现api.ignitionfuel.org找不到
解决:修改~/.ignition/fuel中的config.yaml文件,将url: https://api.ignitionfuel.org修改为url: https://api.ignitionrobotics.org

which gzserver
which gzclient

出现下图:
ubuntu18.04 LTS安装ROS教程
安装gazebo_ros_pkgs

sudo apt-get install ros-melodic-gazebo-ros-pkgs ros-melodic-gazebo-ros-control

查看是否安装完全

source /opt/ros/melodic/setup.bash
source ~/catkin_ws/devel/setup.bash
roscore &
rosrun gazebo_ros gazebo &
rostopic list

ubuntu18.04 LTS安装ROS教程

rosservice list

ubuntu18.04 LTS安装ROS教程

五,配置Turtlebot3仿真环境
安装Turtlebot3需要的依赖包

sudo apt-get install ros-melodic-joy ros-melodic-teleop-twist-joy ros-melodic-teleop-twist-keyboard ros-melodic-laser-proc ros-melodic-rgbd-launch ros-melodic-depthimage-to-laserscan ros-melodic-rosserial-arduino ros-melodic-rosserial-python ros-melodic-rosserial-server ros-melodic-rosserial-client ros-melodic-rosserial-msgs ros-melodic-amcl ros-melodic-map-server ros-melodic-move-base ros-melodic-urdf ros-melodic-xacro ros-melodic-compressed-image-transport ros-melodic-rqt-image-view ros-melodic-gmapping ros-melodic-navigation ros-melodic-interactive-markers
cd ~/catkin_ws/src/
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/catkin_ws
catkin_make

测试成果:

export TURTLEBOT3_MODEL=burger
roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch

ubuntu18.04 LTS安装ROS教程

export TURTLEBOT3_MODEL=waffle
roslaunch turtlebot3_gazebo turtlebot3_world.launch

 

ubuntu18.04 LTS安装ROS教程

export TURTLEBOT3_MODEL=waffle_pi
roslaunch turtlebot3_gazebo turtlebot3_house.launch

ubuntu18.04 LTS安装ROS教程

利用键盘控制小车行进

export TURTLEBOT3_MODEL=waffle_pi
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

 

 

上一篇:2021-02-28


下一篇:树莓派4B Ubuntu18.04安装与ROS-Melodic安装