ROS lesson 1
阿新 • • 發佈:2019-01-29
寫代碼 end 底層 以及 工作 str github 工作空間 linu
ROS ROS官網
ROS 簡介
- ROS 是 Robot Operation System 的簡寫,並且 他誕生在2000年後,至今有10余年了,運行在 Linux(Ubuntu) 上
- ROS 不是 真正意義上的 OS(操作系統)
- 類似Java 的 JVM 只是運行在操作系統上的一個軟件來管理 Robot 的操作。 因為在過去 需要做很多事情。 機器人架構,底層算法,激光感應器Draw Mapping, 算法。
ROS 安裝
- 在 Github 上搜索 重德智能
- 在 重德智能 上找到 ROS-Academy-for-Beginners(是開源的項目,裏有介紹,以及下載 與 安裝 教程
)
ROS IDE推薦
- 軟件名稱: RoboWare
- 軟件安裝: 見 roboware
ROS 編譯工具
- ** catkin ** 編譯工具 基於CMake 開發的
- ** catkin_make ** 初始化 並 建立 工作空間
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
編譯
cd ~/catkin_ws #回到工作空間
catkin_make
source ~/catkin_ws/devel/setup.bash
#編譯完成後要source刷新環境
執行後會在當前目錄下生成 build 和 devel 兩個文件夾
build
build 裏是 目標文件,一些生成的頭文件
或者代碼文件
,這裏不需要管。
src 就是寫代碼的 地方 ,不需要去** build & devel** 文件夾package
- ROS 軟件的基本組織形式
- catkin 編譯的基本單元
- 一個package可以包含多個可執行文件(節點)
package 包含 CMakeList.txt 和 package.xml 這是 最精簡結構
CMakeList.txt 規定catkin編譯的規則
例如:源文件、依賴項、目標文件
package.xml 定義package的屬性
例如: 包名、版本號、作者、依賴等
<?xml version="1.0" encoding="UTF-8"?>
<package><!--根標簽-->
<name/><!--包名-->
<version/><!--版本號-->
<description/><!--包描述-->
<maintainer/><!--維護者-->
<license/><!--軟件許可-->
<buildtool_depend/><!--編譯工具-->
<build_depend/><!--編譯時的依賴-->
<run_depend/><!--運行時的依賴-->
</package>
ROS 開發 常用命令
- rospack
- 查找某個pkg的地址
rospack find package_name
- 列出本地所有的pkg
rospack list- roscd
- 跳轉到某個pkg路徑下
roscd package_name
- rosls
- 列舉某個pkg下的文件信息
rosls package_name
- rosed
- 編輯pkg種的文件
rosed pakage_name file_name
- catkin_create_pkg
- 創建一個pkg
catkin_create_pkg <pkg_name>[deps]
- rosdep
- 安裝某個pkg所需的依賴
rosdep install [pkg_name]
ROS lesson 1