機械人作業系統 ROS檔案結構

2021-10-25 13:53:30 字數 2036 閱讀 3240

catkin工作空間是建立、修改、編譯catkin軟體包的目錄。catkin的工作空間,直觀的形容就是乙個倉庫,裡面裝載著ros的各種專案工程,便於系統組織管理呼叫。在視覺化圖形介面裡是乙個資料夾。我們自己寫的ros**通常就放在工作空間中。

catkin(cmake)的快取資訊和中間檔案

生成的目標檔案(包括標頭檔案,動態鏈結庫,靜態鏈結庫,可執行檔案等)、環境變數

ros的catkin軟體包(源**包)

package資料夾

package是catkin工作空間的基本單元。包含以下檔案及資料夾:

cmakelists.txt寫法:

巨集作用cmake_minimum_required()

#cmake的版本號

project()

#專案名稱

find_package()

#找到編譯需要的其他cmake/catkin package

catkin_python_setup()

#catkin新加巨集,開啟catkin的python module的支援

add_message_files()

#catkin新加巨集,新增自定義message/service/action檔案

add_service_files()

add_action_files()

generate_message()

#catkin新加巨集,生成不同語言版本的msg/srv/action介面

catkin_package()

#catkin新加巨集,生成當前package的cmake配置,供依賴本包的其他軟體包呼叫

add_library()

#生成庫

add_executable()

#生成可執行二進位制檔案

add_dependencies()

#定義目標檔案依賴於其他目標檔案,確保其他目標已被構建

target_link_libraries()

#鏈結catkin_add_gtest()

#catkin新加巨集,生成測試

install()

#安裝至本機

package.xml寫法:

pacakge.xml遵循xml標籤文字的寫法,在新版本中,包含的標籤為:

標籤名作用

< pacakge >

根標記檔案

< pacakge >

根標記檔案

< name >

包名< version >

版本號< description >

內容描述

< maintainer >

維護者< license >

軟體許可證

< buildtool_depend >

編譯構建工具,通常為catkin

< depend >

指定依賴項為編譯、匯出、執行需要的依賴,最常用

< build_depend >

編譯依賴項

< build_export_depend >

匯出依賴項

< exec_depend >

執行依賴項

< test_depend >

測試用例依賴項

< doc_depend >

文件依賴項

scripts資料夾

存放可執行指令碼,例如shell指令碼(.sh)、python指令碼(.py)

include資料夾

存放c++原始碼對應的標頭檔案

src資料夾

存放ros的源**,包括c++的原始碼和(.cpp)以及python的module(.py)

msg資料夾

存放自定義格式的訊息(.msg)

srv資料夾

存放自定義格式的服務(.srv)

action資料夾

存放自定義格式的動作(.action)

launc**件夾

存放launc**件(.launch或.xml)

機械人作業系統ROS總結

ros有很詳細大文件 按照文件,按步驟學習即可。ros定義了程序間通訊的方式,程序可以是在同乙個機器上,也可以是分布式的。這非常便於搭積木 搭系統,但是,對於效能,要做真正產品,估計效率要再考慮。這樣,從不同到 來的軟體模組,可以方便的組合成乙個機械人系統。ros把軟體分成不同的package,裡面...

機械人作業系統ROS入門

三 ros安裝 四 其它 參考資料和資源 ros是機械人作業系統 robot operating system 的英文縮寫。ros是用於編寫機械人軟體程式的一種具有高度靈活性的軟體架構。ros的原型源自史丹福大學的stanford artificial intelligence robot stai...

機械人作業系統入門(ROS)入門)

外文名robot operating system 性 質機械人軟體平台 簡 稱ros 用 途提供類似作業系統的功能 通常這樣解釋ros 通道 ros提供了一種發布 訂閱式的通訊框架用以簡單 快速地構建分布式計算系。工具 ros提供了大量的工具組合用以配置 啟動 自檢 除錯 視覺化 登入 測試 終止...