目录
ROS系统
ROS系统是一个机器人的框架,将各个功能模块化,并提供通讯架构,各个功能以节点的方式存在,相互之间独立存在,分布式运行,系统的拓展性和稳定性较好。
ROS的版本选择建议
ROS版本 | Ubuntu版本 |
---|---|
Melodic | Ubuntu 18.04 |
Lunar | Ubuntu 17.04 |
Kinetic | Ubuntu16.04 |
Jade | Ubuntu 15.04 |
Indigo | Ubuntu14.04 |
ROS安装
- 选择安装源
- 备份源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
完成这一步后可以根据上面输入的目录查看到对应的备份文件,文件名为sources.list.bak。
- 修改源
cd /etc/apt
ls
gedit sources.list
在弹出的gedit编辑器里粘贴国内源,选择阿里源进行粘贴
- 国内镜像源分享
阿里云源
# deb cdrom:[Ubuntu 16.04 LTS Xenial Xerus - Release amd64 (20160420.1)]/ xenial main restricted
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
清华大学
# deb cdrom:[Ubuntu 16.04 LTS Xenial Xerus - Release amd64 (20160420.1)]/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security multiverse
中科大源
#https://mirrors.ustc.edu.cn/repogen/
deb https://mirrors.ustc.edu.cn/ubuntu/ eoan main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ eoan main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ eoan-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ eoan-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ eoan-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ eoan-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ eoan-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ eoan-backports main restricted universe multiverse
#Not recommended
#deb https://mirrors.ustc.edu.cn/ubuntu/ eoan-proposed main restricted universe multiverse
#deb-src https://mirrors.ustc.edu.cn/ubuntu/ eoan-proposed main restricted universe multiverse
搜狐源
deb http://mirrors.sohu.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ trusty-backports main restricted universe multiverse
网易源
deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse
东北大学
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial main restricted #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial main restricted
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial restricted multiverse universe #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial-updates main restricted
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial universe
deb http://mirror.neu.edu.cn/ubuntu/ xenial-updates universe
deb http://mirror.neu.edu.cn/ubuntu/ xenial multiverse
deb http://mirror.neu.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirror.neu.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirror.neu.edu.cn/ubuntu/ xenial-security main restricted
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial-security universe
deb http://mirror.neu.edu.cn/ubuntu/ xenial-security multiverse
服务器选择
在Ubuntu左上角的搜索->软件和更新->ubuntu软件里的 restricted、universe和multiverse的可选择框是勾选的状态,下载自里面的地址是阿里云的地址http://mirrors.aliyun.com/ubuntu或其他可用的地址。
添加源
ros
$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
添加秘钥(ros)
$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 0xB01FA116
国内ustc
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'
添加秘钥(ustc)
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
国内镜像安装参考
http://wiki.ros.org/ROS/Installation/UbuntuMirrors
ROS安装
- 更新软件
$ sudo apt-get update && sudo apt-get upgrade
下载并安装ROS(全功能版本),18.04 安装ros-Melodic-desktop-full,16.04安装 ros-kinetic-desktop-full
$ sudo apt-get install ros-kinetic-desktop-full
初始化ROS
$ sudo rosdep init && rosdep update
环境配置
$ echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
安装rosinstall
$ sudo apt-get install python-rosinstall
测试ROS
$ roscore
报错及处理方法
sudo: rosdep:找不到命令
sudo rosdep init
sudo: rosdep:找不到命令
解决办法
sudo apt install rospack-tools
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.
参考:https://blog.csdn.net/u013468614/article/details/102917569
#打开hosts文件
sudo gedit /etc/hosts
#在文件末尾添加
151.101.84.133 raw.githubusercontent.com
#保存后退出再尝试
安装完成后,输入roscore 命令出现以下错误
程序“roscore”尚未安装。 您可以使用以下命令安装:
新开一个终端会出现以下信息
根据网友提示,如下操作
- 输入命令 :gedit ~/.bashrc
source/opt/ros/kinetic/setup.bash 改为source /opt/ros/kinetic/setup.bash 即在source后添加空格才能正确的表示路径。
安装成功
最后输入roscore 成功显示
错误 bash: export: `XXXXX’: 不是有效的标识符
在终端运行ros的现象
在终端运行ros时,出现错误:Unable to contact my own server at…
解决办法
- 参考 http://wiki.ros.org/ROS/NetworkSetup
- 编辑.bashrc文件
$cd ros_ws
$gedit ~/.bashrc
- 屏蔽出错的环境变量
- 新增如下语句
export ROS_HOSTNAME=localhost
export ROS_MASTER_URI=http://localhost:11311
- 重启终端