智能網(wǎng)聯(lián)汽車計算平臺部署與測試 課件 5.5 ROS文件系統(tǒng)的構(gòu)建_第1頁
智能網(wǎng)聯(lián)汽車計算平臺部署與測試 課件 5.5 ROS文件系統(tǒng)的構(gòu)建_第2頁
智能網(wǎng)聯(lián)汽車計算平臺部署與測試 課件 5.5 ROS文件系統(tǒng)的構(gòu)建_第3頁
智能網(wǎng)聯(lián)汽車計算平臺部署與測試 課件 5.5 ROS文件系統(tǒng)的構(gòu)建_第4頁
智能網(wǎng)聯(lián)汽車計算平臺部署與測試 課件 5.5 ROS文件系統(tǒng)的構(gòu)建_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

智能網(wǎng)聯(lián)汽車

計算平臺部署與測試項目五ROS的安裝與使用任務(wù)5ROS文件系統(tǒng)的構(gòu)建目錄01.任務(wù)描述02.任務(wù)目標03.任務(wù)準備04.知識準備05.任務(wù)實施06.評價反饋01.任務(wù)描述

經(jīng)典機器人PR2依靠強大的ROS,可以獨立完成多種復雜的任務(wù),例如PR2可以自己開門、找到插頭給自己充電、打開冰箱取出啤酒、打簡單的臺球等等。實現(xiàn)上述功能PR2需要安裝、調(diào)用相關(guān)的ROS功能包,而這些功能包均以文件的形式存放。文件系統(tǒng)作為ROS的基礎(chǔ)框架,想要使用ROS工程實現(xiàn)各式各樣的功能,首先需要認識ROS工程,了解文件系統(tǒng)。在助理工程師開始使用ROS之前,你作為測試工程師,準備向他介紹Catkin編譯系統(tǒng)、工作空間的創(chuàng)建和結(jié)構(gòu)、功能包的創(chuàng)建和結(jié)構(gòu),介紹ROS文件系統(tǒng)中常見的目錄、文件以及這些目錄存放的主要內(nèi)容和相關(guān)文件中定義的主要內(nèi)容。02.任務(wù)目標通過學習,希望同學們完成以下任務(wù)。了解能夠安裝ROS的平臺。了解ROS文件系統(tǒng)的常見結(jié)構(gòu)。熟悉創(chuàng)建工作空間的方法。熟悉創(chuàng)建功能包的方法。能夠說出ROS文件系統(tǒng)中常見的目錄、文件及其作用。能夠正確創(chuàng)建功能包。具有良好的團隊協(xié)作精神和較強的組織溝通能力。具備良好的職業(yè)道德。獲得多途徑檢索知識、分析解決問題以及多元化思考解決問題的方法,形成創(chuàng)新意識。能夠正確創(chuàng)建工作空間。03.任務(wù)準備常規(guī)實訓著裝防護裝備安裝有ROS系統(tǒng)的計算機平臺教學設(shè)備ROS教學工具04.知識準備ROS將所有文件按照一定的規(guī)則進行組織,不同功能的文件被放在不同的文件夾下。在構(gòu)建ROS文件系統(tǒng)前,首先了解文件系統(tǒng)中常見的幾個概念。

對于源代碼包,只有編譯才能在系統(tǒng)上運行。早期的ROS編譯系統(tǒng)是rosbuild,隨著ROS的發(fā)展,rosbuild不能很好地滿足系統(tǒng)的需求。在ROS的Groovy版本推出后,Catkin替代rosbuild正式投入使用。Catkin是ROS的官方構(gòu)建體系,是ROS構(gòu)建系統(tǒng)的繼承者,ROS構(gòu)建系統(tǒng)Catkin結(jié)合了CMake宏和Python腳本,在CMake的正常工作流之上提供了額外的功能。一、Catkin編譯系統(tǒng)Catkin的設(shè)計比rosbuild更為傳統(tǒng),具有更好的分發(fā)包、更好的交叉編譯支持和更好的可移植性。Catkin的工作流與CMake非常相似,但同時為自動“查找包”基礎(chǔ)結(jié)構(gòu)和構(gòu)建多個依賴項目提供了支持時間。Catkin操作簡單、高效,可移植性更好,而且支持交叉編譯和更加合理的功能包分配。目前版本的ROS同時支持rosbuild和Catkin兩種編譯系統(tǒng),但rosbuild已經(jīng)被逐步淘汰,所以我們直接上手Catkin即可。Catkin是基于CMake的編譯構(gòu)建系統(tǒng),具有以下特點:(1)Catkin沿用了包管理的傳統(tǒng),例如find_package()基礎(chǔ)結(jié)構(gòu)、pkg-config。(2)擴展了CMake,可自動生成find_package()代碼、pkg-config文件。(3)操作簡單、高效,可移植性更好。(4)支持交叉編譯和更加合理的功能包分配。二、工作空間

工作空間是創(chuàng)建、修改、編譯軟件包的目錄。工作空間就像是一個倉庫,里面存放著ROS的各種工程項目,便于系統(tǒng)組織管理調(diào)用。工作空間在可視化圖形界面里體現(xiàn)為一個文件夾。我們寫的ROS代碼通常就放在工作空間中。編譯后會在catkin_ws目錄下自動創(chuàng)建build、devel兩個文件夾,加上原有的src文件夾,在catkin_ws工作空間里面總共包含src、build、devel這三個文件夾,如圖所示。

這些文件夾的具體用途如下:(1)src:ROS的源代碼軟件包。(2)build:存放Catkin(CMake)的緩存信息和中間文件。(3)devel:存放生成的目標文件(包括msg、srv頭文件,動態(tài)鏈接庫,靜態(tài)鏈接庫,可執(zhí)行文件等)、環(huán)境變量。Build和devel兩個文件夾是由系統(tǒng)自動生成管理的,在日常的開發(fā)中,使用較為頻繁的是src文件夾,編寫的ROS程序或者下載的源代碼包都是存放在這里。三、功能包功能包(package)是ROS源代碼存放的地方,任何ROS的代碼無論是C++還是Python都要放到package中,這樣才能正常編譯和運行。一個工作空間可以包含多個package,一個package可以編譯出來多個目標文件(如ROS可執(zhí)行程序、動態(tài)靜態(tài)庫、頭文件等)。常見的package結(jié)構(gòu)如圖所示。常見的package相關(guān)命令及用途:05.任務(wù)實施按照前面所了解的知識內(nèi)容和小組內(nèi)部討論的結(jié)果,制定工作方案,落實各項工作負責人,如任務(wù)實施前的準備工作、實施中主要操作及協(xié)助支持工作、實施過程中相關(guān)要點及數(shù)據(jù)的記錄工作等。06.評價反饋(1)各組代表展示匯報PPT,介紹任務(wù)的完成過程。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論