zoukankan      html  css  js  c++  java
  • 如何安装ROS

      本篇文章以安装ROS Kinetic为例进行讲解。

    1.设置网络时间协议(NTP,Network Time Protocol)

      在ROS官方安装项目中虽然没有包括NTP,但为了缩小PC间通信中的ROS Time的误差,下面我们设置NTP。设置方法是安装chrony之后用ntpdate命令指定ntp服务器即可。这样一来会表示服务器和当前计算机之间的时间误差,进而会调到服务器的时间。这就是通过给不同的PC指定相同的NTP服务器,将时间误差缩短到最小的方法。

    sudo apt-get install -y chrony ntpdate
    sudo ntpdate -q ntp.ubuntu.com
    

      ps:有些时候,有些朋友会遇到SLAM导航时控制不了机器人,可能与这个有关。需要做的就是让主从机时间同步。

    2.添加代码列表

      在ros-latest.list添加ROS版本库。打开新的终端窗口,输入如下命令。

    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'
    

    3.设置公钥(Key)

      为了从ROS存储库下载功能包,下面添加公钥 。作为参考,以下公钥可以根据服务器的操作发生变更,请参考官方wiki页面

    sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
    

    4.更新软件包索引

      现在用户已经将ROS版本库地址放在代码列表中,我们建议在安装ROS之前刷新软件包列表的索引并升级所有当前安装的Ubuntu软件包,但这不是必选项。

    sudo apt-get update
    

    5.安装ROS Kinetic Kame

      使用以下命令安装台式机的ROS功能包。这包括ROS、rqt、RViz、机器人相关的库、仿真和导航等等。

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

      上面的安装只包含基本的rqt,但是笔者将安装所有额外的rqt相关的功能包。用下面的命令安装所有rqt相关的功能包,可以很方便地使用各种rqt插件。

    sudo apt-get install ros-kinetic-rqt*
    

    6.初始化rosdep

      在使用ROS之前,必须初始化rosdep。rosdep是一个通过在使用或编译ros的核心组件时轻松安装依赖包来增强用户便利的功能。

    sudo rosdep init
    rosdep update
    

    7.安装rosinstall

      这是安装ROS的各种功能包的程序。它是被频繁使用的有用的工具,因此务必要安装它。

    sudo apt-get install python-rosinstall
    

    8.加载环境设置文件

      下面加载环境设置文件。里面定义着ROS_ROOT和ROS_PACKAGE_PATH等环境变量。

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

    9.创建并初始化工作目录

      ROS使用一个名为catkin的ROS专用构建系统。为了使用它,用户需要创建并初始化catkin工作目录,如下所示。除非用户创建新的工作目录,否则此设置只需设置一次。

    mkdir -p ~/catkin_ws/src
    cd ~/catkin_ws/src
    catkin_init_workspace
    

      如果用户已经创建了一个catkin工作目录,下面我们来进行构建。目前,只有src目录和CMakeLists.txt文件在catkin工作目录中,但让我们尝试使用catkin_make命令来构建吧。

    cd ~/catkin_ws/
    catkin_make
    

      当用户构建没有问题时,运行ls命令。除了自己创建的src目录之外,还出现了一个新的build和devel目录。catkin的构建系统的相关文件保存在build目录中,构建后的可执行文件保存在devel目录中。

    ls
    build
    devel
    src
    

      最后,我们加载与catkin构建系统相关的环境文件。

    echo “source ~/catkin_ws/devel/setup.bash”>> ~/.bashrc
    source .bashrc
    

    10.测试安装结果

      所有ROS安装已完成。要测试它是否正确安装,请关闭所有终端窗口并运行一个新的终端窗口。现在通过输入以下命令来运行roscore。

    roscore
    

      如果运行之后像下面没有出现错误,则说明成功安装。退出是[Ctrl+c]。

    ... logging to /home/pyo/.ros/log/9e24585a-60c8-11e7-b113-08d40c80c500/roslaunch-pyo-5207.log
    Checking log directory for disk usage. This may take awhile.
    Press Ctrl-C to interrupt
    Done checking log file disk usage. Usage is <1GB.
    started roslaunch server http://localhost:38345/
    ros_comm version 1.12.7
    SUMMARY
    ========
    PARAMETERS
    * /rosdistro: kinetic
    * /rosversion: 1.12.7
    NODES
    auto-starting new master
    process[master]: started with pid [5218]
    ROS_MASTER_URI=http://localhost:11311/
    setting /run_id to 9e24585a-60c8-11e7-b113-08d40c80c500
    process[rosout-1]: started with pid [5231]
    started core service [/rosout]
    

      

     

     

    作者:kay
    出处:https://www.cnblogs.com/kay2018/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    软件质量属性简述
    浅谈MVC架构
    SOA整理
    程序员的自我修养阅读笔记3
    程序员的自我修养阅读笔记2
    程序员的自我修养阅读笔记1
    架构漫谈阅读笔记3
    架构漫谈阅读笔记2
    Weather APP
    php通过==和!==比较NULL和''结果均为真
  • 原文地址:https://www.cnblogs.com/kay2018/p/10307450.html
Copyright © 2011-2022 走看看