(三)介紹簡單的ROS命令


1.ROS文件系統中的基本概念

Packages: Package是ROS系統中最底層最基本的組織,里面存放各種文件:庫、工具、可執行文件等.
Manifest: 一個package描述xml文件,定義package之間的依賴關系.
Stacks: package的集合,比package這個概念高一級別
Stack Manifest: 作用類似package manifest文件,但是它是針對stack的.

在文件系統中很容易識別packagestack:
package是一個包含 manifest.xml 文件的目錄.
stack是一個包含 stack.xml 文件的目錄.

2.文件系統工具

ROS中大量代碼分散在眾多的packagesstacks之中命令工具ls 和 cd已不能滿足檢索要求。因此ROS提供了一套自己的命令工具來完成與這些命令相似的工作

先下載一個 ros-tutorials 程序包:

$ sudo apt-get install ros-indigo-ros-tutorials 

(1) 使用rospack和rosstack

rospack 查找軟件包。返回信息:軟件包的路徑。  $ rospack find [package_name]

rosstack 查找stack。返回信息:stack的路徑。     $ rosstack find [stack_name]

$ rospack find roscpp   
結果:/opt/ros/indigo/share/roscpp

(2) 使用roscd

【1】直接切換(cd)到某個package或者stack的目錄. 

$ roscd [locationname[/subdir]]   

$ roscd roscpp

為了驗證我們已經切換到了roscpp p軟件包目錄. 我們使用unix的命令查看路徑pwd:

$ pwd   
結果:/opt/ros/indigo/share/roscpp

(3)使用 rosls

 作用是列出指定的package或stack中的文件及目錄.

$ rosls [locationname[/subdir]]

$ rosls roscpp_tutorials
結果:cmake  launch  package.xml  srv

(5)Tab 自動完成輸入

當要輸入一個完整的軟件包名稱時會變得比較繁瑣,ROS工具支持TAB 自動完成輸入的功能。

Eg:roscd roscpp_tut<<< 現在請按TAB鍵 >>> ,命令行中應該會自動補充剩余部分。

 

總結: 

ROS命令工具的的命名方式:

     rospack = ros + pack(age)

     roscd = ros + cd

     rosls = ros + ls 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM