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