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

下載本文檔

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

文檔簡(jiǎn)介

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

計(jì)算平臺(tái)部署與測(cè)試項(xiàng)目五ROS的安裝與使用任務(wù)5ROS文件系統(tǒng)的構(gòu)建目錄01.任務(wù)描述02.任務(wù)目標(biāo)03.任務(wù)準(zhǔn)備04.知識(shí)準(zhǔn)備05.任務(wù)實(shí)施06.評(píng)價(jià)反饋01.任務(wù)描述

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

對(duì)于源代碼包,只有編譯才能在系統(tǒng)上運(yùn)行。早期的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è)計(jì)比rosbuild更為傳統(tǒng),具有更好的分發(fā)包、更好的交叉編譯支持和更好的可移植性。Catkin的工作流與CMake非常相似,但同時(shí)為自動(dòng)“查找包”基礎(chǔ)結(jié)構(gòu)和構(gòu)建多個(gè)依賴項(xiàng)目提供了支持時(shí)間。Catkin操作簡(jiǎn)單、高效,可移植性更好,而且支持交叉編譯和更加合理的功能包分配。目前版本的ROS同時(shí)支持rosbuild和Catkin兩種編譯系統(tǒng),但rosbuild已經(jīng)被逐步淘汰,所以我們直接上手Catkin即可。Catkin是基于CMake的編譯構(gòu)建系統(tǒng),具有以下特點(diǎn):(1)Catkin沿用了包管理的傳統(tǒng),例如find_package()基礎(chǔ)結(jié)構(gòu)、pkg-config。(2)擴(kuò)展了CMake,可自動(dòng)生成find_package()代碼、pkg-config文件。(3)操作簡(jiǎn)單、高效,可移植性更好。(4)支持交叉編譯和更加合理的功能包分配。二、工作空間

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

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

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論