zoukankan      html  css  js  c++  java
  • 基于虚拟机+Ubuntu1604的ROS-kinetic配置流程

    简单记录一下配置的过程

    先换源,以阿里源为例

    备份原有源
    sudo cp /etc/apt/sources.list /etc/apt/sources_init.list
    编辑源文件
    sudo gedit /etc/apt/sources.list
    将文件内容全部删除 替换成
    deb http://mirrors.aliyun.com/ubuntu/ xenial main
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
    
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
    
    deb http://mirrors.aliyun.com/ubuntu/ xenial universe
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
    
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe

    apt二连

    sudo apt-get update
    sudo apt-get upgrade

    设置“软件和更新”

    sudo update-manager -c -d

    如果要升级就升级,升级完后点左下角的设置就可以进到界面了,前四个勾选上,第五个可选

    添加中科大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'

    设置秘钥

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

    更新软件源并安装ROS

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

    初始化rosdep

    sudo rosdep init
    rosdep update

    设置环境变量(可选)

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

    如果不设置则需要每次在包的路径下使用

    source setup.bash

    安装一些常用工具

    sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential python-rosdep ninja-build

    此时可以测试下例程了,方法见前篇ROSOnWindows,编译方法和Windows下相同,不再赘述

    如果要编译,那么还会遇到非常多问题,主要是没有安装上对应的包,这点ROSOnWindows我觉得做的就好很多,这里列出常见的包,其他可以通过百度对应问题来解决

    (这里非常建议直接装二进制包,如果不是需要修改该包,就不要将编译包作为源码引入新包,这样“可能”会产生很大的依赖问题)

    sudo aptitude install libsdl1.2-dev
      
    sudo apt-get install libbullet-dev libsdl-image1.2-dev libasound2-dev
      
    sudo apt-get install ros-kinetic-bfl ros-kinetic-arbotix ros-kinetic-gazebo-ros-control ros-kinetic-gmapping
    
    sudo apt-get install ros-kinetic-move-base-msgs ros-kinetic-moveit ros-kinetic-manipulation-msgs ros-kinetic-rplidar-ros
    
    sudo apt-get install ros-kinetic-vision-opencv libopencv-dev python-opencv ros-kinetic-map-server

    后续缺少相应包的时候也可以用这个方式尝试,package 替换为对应的包名字

    sudo apt-get install package

    如果遇到了这个报错,那么是内存不足,提高虚拟机的内存即可,如果内存有上限,则开启虚拟内存

    c++internalcompiler error:killed(program cc1plus)

     如果Gazebo黑屏,那是因为没有加载完模型,可以先把所有模型下载好,笔者下载全部模型用了近一个小时

    cd ~/.gazebo/
    mkdir -p models
    cd ~/.gazebo/models/
    wget http://file.ncnynl.com/ros/gazebo_models.txt
    wget -i gazebo_models.txt
    ls model.tar.g* | xargs -n1 tar xzvf

    如果报错“ vmw_ ioctl_command error Invalid argument ”,则关闭虚拟机,然后在设置里面关闭“加速3D图形”即可

     如果遇到执行python脚本时显示“ can't locate node [xxxx] in package [yyyy] ”,假设程序是完整的并且没有问题的(如跑例程),那么就是没有给py权限,勾选上“ Execute

     感谢以下Geeks

    Ubuntu install of ROS Kinetic
    http://wiki.ros.org/kinetic/Installation/Ubuntu
    ROS学习过程中问题
    https://blog.csdn.net/t972409256/article/details/82661633
    ubuntu系统下ros系统问题的解决方法示例
    https://blog.csdn.net/Groot_Lee/article/details/79202507
    虚拟机运行Gazebo问题修复
    http://blog.exbot.net/archives/3035
    用Python实现ROS节点
    https://blog.csdn.net/u013832707/article/details/53980759
  • 相关阅读:
    适用于小白的 python 快速入门教程
    Centos7.x & RedHat7.x系统忘记 root 密码解决办法
    让我来教你如何免费使用RHEL小红帽系统
    10#Windows注册表的那些事儿
    9#搭建网站
    8#继承和多态
    7#Java基本语句语法
    6#day2总结
    5#关于数据数值的转换
    .NET Core开发日志——配置
  • 原文地址:https://www.cnblogs.com/Pyrokine/p/10703489.html
Copyright © 2011-2022 走看看