檔案系統級(filesystem) :ros的內部結構、檔案結構和所需的核心檔案都在這一層裡, 乙個ros程式的結構,是一些按不同功能進行區分的資料夾。
一般的資料夾結構如下:
管理和組織ros工程**的地方,catkin是ros定製的編譯構建系統,是對cmake的擴充套件,更好的支援ros。
mkdir -p ~/catkin_ws/src # 建立乙個名為catkin——ws的資料夾
cd ~/catkin_ws/ # 要在工作空間編譯
catkin_make # 編譯
source ~/catkin_ws/devel/setup.bash # 編譯後source重新整理環境
src源工作空間(source space)儲存package源**
build編譯空間(build space)放置cmake&catkin快取和中間檔案
devel開發空間(development space)放置目標檔案
package,功能包,是ros軟體的基本組織形式,也是catkin編譯的基本單元,乙個package可以包含多個可執行檔案(節點node)
cmakelist.txt
catkin的編譯規則(還不會cmake,就不詳解了)
package.xml
功能包清單 定義了package的一些屬性資訊,例如包名、版本號、作者、依賴項等,模板如下:
有如上兩個檔案的package是最簡單package
**檔案
指令碼(shell、python)和c++(標頭檔案、原始檔)
自定義通訊格式 msg、srv、action等,
message是乙個程序傳送到其他程序的訊息,
src是ros中每個程序提供的服務定義請求和響應資料結構
(後面會詳細講)
launch以及配置檔案(yaml)
ros提供了一些與linux命令類似的指令,下面把常用的列舉如下:
rospack
查詢某個pkg的位址
rospack find package_name
列出本地所有pkg
rospack list
roscd
跳轉到某個pkg路徑下
roscd package_name
rosls
列舉某個pkg下的檔案資訊
rosls package_name
rosed
編輯pkg中的檔案
rosed package_name file_name
catkin_create
建立乙個pkg
catkin_create_pkg [deps]
rosdep
安裝某個pkg所需的依賴
rosdep install [pkg_name]
ROS學習 工程結構
package是catkin編譯的最基本的單元,catkin編譯的時候會遞迴查詢src目錄下的每乙個package。package是ros軟體的基本組織形式,乙個package可以包含多個可執行檔案 節點 乙個package中至少含有乙個cmakelists.txt和乙個package.xml。規定...
建立ROS工程結構
影象化顯示目錄工程結構 tree sudo apt install tree 1 建立ros工作空間 mkdir p catkin ws src create mutil level directory cd catkin ws catkin make initialization source d...
ROS學習(一) ROS入門
注 主要是古月部落格學習過程中的記錄,其專欄為 ros robot operating system 是用於機械人的一種次級作業系統,可以提供硬體抽象描述 底層驅動程式管理 共用功能執行 程式間的訊息傳遞 程式發行包管理等功能。ros的設計目標是在機械人研發中提高 復用率,是一種分布式處理框架,可執...