Ros——安装|教程1-4

最近看ORB-SLAM方面的东西发现github大部分的SLAM项目都是用这个东西就去查了下。这里先简单的说下观感:
首先这个Ros是Robot operating system的简称。但是跟一般的系统似乎有所不同,按照我目前的理解他既可以移植到普通的嵌入式系统中间。可以算作是一个软件平台。似乎业界还有其他的软件平台但这方面我不太了解。也可以作为一个虚拟的环境来运行在类似Ubuntu上,或者其他操作系统上。wiki网上有比较详细的介绍。ROSwiki
从近些年来看大概经历了的几个版本。目前最新的版本是jade。看完官方文档发现教程做的还是很详细的,运行下来很顺利没有什么出错的地方。这里简单回顾一下,一切从简,细节的部分省略掉。

安装

设置Ubuntu软件源。这不似乎不需要
建立source.list

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

建立秘钥

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

安装

sudo apt-get update
sudo apt-get install ros-jade-desktop-full
sudo rosdep init
rosdep update
echo "source /opt/ros/jade/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt-get install python-rosinstall

教程

1.安装和配置ROS环境

安装ROS
配置环境变量

  • 主要就是ROS_PACKAGE_PATH这个环境变量。因为包是ROS的基本单元。这个路径可以设置索引包的路径,不在此路径的包是找不到的。跟java还有c++编译的时候差不多。如果没有ROS_PACKAGE_PATH说明你没有source setup.bash,见下一条。
  • 另一个需要设置的是每次使用ROS之前都要运行一下setup.bash当然你也可以选择把这个文件添加到.bashrc中间就是每次启动shell的时候稍微慢一点。
# source /opt/ros//setup.bash

为版本名如jade
创建ROS工作区间
ROS有两种工作区间,一种是catkin,另一种是rosbuild是老版本的

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

然后设置ROS_PACKAGE_PATH包含catkin_ws/src然后运行如下:

source devel/setup.bash

当然你可以换个文件夹

2.导航ROS文件系统

概述
首先说明两个概念,包是软件组织单元,每个包包含一个package.xml描述包。
ROS文件系统:

rospack find
ros+cd
ros+cd log
ros+ls

3.创建ROS package **包结构**

my_package/
    CMakeLists.txt
    package.xml
**catkin工作区间结构**
workspace_folder/        -- WORKSPACE
  src/                   -- SOURCE SPACE
    CMakeLists.txt       -- 'Toplevel' CMake file, provided by catkin
    package_1/
      CMakeLists.txt     -- CMakeLists.txt file for package_1
      package.xml        -- Package manifest for package_1
    ...
    package_n/
      CMakeLists.txt     -- CMakeLists.txt file for package_n
      package.xml        -- Package manifest for package_n
**创建catkin包**
cd ~/catkin_ws/src
catkin_create_pkg beginner_tutorials std_msgs rospy roscpp
//catkin_create_pkg  [depend1] [depend2] [depend3]
**创建catkin工作区间,source setup.bash**
cd ~/catkin_ws
catkin_make
. ~/catkin_ws/devel/setup.bash
**包依赖性**
rospack depends1 beginner_tutorials 
**直接依赖性**
rospack depends1 rospy
间接依赖性 **自定义包** **xml文件结构**
<description>The beginner_tutorials packagedescription>
描述文件
 


<maintainer email="[email protected]">usermaintainer>
描述文件作者



<license>TODOlicense>
license标记











<buildtool_depend>catkinbuildtool_depend>
<build_depend>roscppbuild_depend>
<build_depend>rospybuild_depend>
<build_depend>std_msgsbuild_depend>
<run_depend>roscpprun_depend>
<run_depend>rospyrun_depend>
<run_depend>std_msgsrun_depend>
文件依赖性

4.编译包

使用catkin_ws
原理类似于与cmake,只不过从cmake流转换到catkin_ws流

source /opt/ros/jade/setup.bash # (optionally)
catkin_make
catkin_make install  # (optionally)

创建包

cd ~/catkin_ws/
catkin_make

你可能感兴趣的:(c++,计算机视觉,日常小结)