ROS入门(一) 文件结构篇


ROS有很多架构及概念,例如工作空间,功能包,消息,服务等等。

我们先从最开始的工作空间说,工作空间在其它里面,有的叫作项目,有的叫作解决方案。其实就是一个项目的根目录地址。

例如,我们在/home里创建一个工作空间叫作workspace的。

注意,ros的所有运行的程序文件都要写在叫作src的文件。

 

之后我们可以先尝试在terminal中进入workspace中,

使用 cd ~/workspace/ 指令进入

可以使用mkdir src 指令创建文件夹src。

在workspace 的根目下catkin_make,就可以编译整个项目了

(注意,catkin_make 要在workspace根目录下面使用,不要在其它文件夹下编译 。)

 

之后就是功能包了,

在src文件中,我们需要进入src文件夹里。

 

通过cd ./src进入

使用catkin_create_pkg 名称 创建你想要的package。

同样的,在package文件夹下也要建立一个src文件夹,

并且将所有的执行文件,节点文件要放在这里面。

(注意,catkin_make会在workspace中生成三个文件夹,一个install,一个devel,一个build

 

其实catkin_make 实际和下面的指令是等效的

$ cd ~/workspace
$ cd src
$ catkin_init_workspace
$ cd ..
$ mkdir build
$ cd build
$ cmake ../src -DCMAKE_INSTALL_PREFIX=../install -DCATKIN_DEVEL_PREFIX=../devel
$ make


之后就是消息,在相应的package下,建立相关的消息,可参考ROS Wiki中的章节:
http://wiki.ros.org/ROS/Tutorials/CreatingMsgAndSrv

在package根目录下创建msg文件夹写入msg文件。

 

这些就是最基本的文件夹结构和文件框架。

示意图可以更清楚地表示这些结构。

 

workspace_folder/        -- WORKSPACE
  src/                   -- SOURCE SPACE
    CMakeLists.txt       -- 'Toplevel' CMake file, provided by catkin
    package_1/
      src/
      node.cpp
      include/
      CMakeLists.txt     -- CMakeLists.txt file for package_1
      package.xml        -- Package manifest for package_1
    ...
    package_n/
    msg/
    srv/ src/       node.py include/ CMakeLists.txt -- CMakeLists.txt file for package_n package.xml -- Package manifest for package_n

一个基本的ros项目的文件结构基本就是这样啦。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM