加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 前言:
    • 安裝 ROS 軟件包
    •  
    • 看小烏龜
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

加快你ROS安裝的一篇文章

2020/12/28
220
閱讀需 10 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

前言:

首先 ROS 大家應(yīng)該比較熟悉了哈,如果需要補(bǔ)充一下請(qǐng)看我之前的這篇文章 《嵌入式的我們?yōu)槭裁匆獙W(xué) ROS》,對(duì)于嵌入式來說 ROS 是一個(gè)很好的進(jìn)階方向,所以如何快速的安裝一個(gè) ROS 到我們電腦上是一件很重要的事情。當(dāng)然 ROS 官網(wǎng)都有進(jìn)行介紹如何安裝,但是由于網(wǎng)絡(luò)地址的原因,ROS 安裝如果按照官網(wǎng)的方法,你要踩很多的坑。所以我作為一個(gè)過來人,介紹一些我是如何快速安裝的。

ROS 目前主要支持 Ubuntu、OSX、Android、Arch、Debian 等系統(tǒng),ROS 也針對(duì) ARM 處理器編譯了核心庫和部分功能包。新發(fā)布的 ROS2 也支持 Windows 系統(tǒng)。

選擇一個(gè)適合你的 ROS 版本很重要,因?yàn)槲沂褂玫谋敬螠y(cè)試使用的 Ubuntu 版本為 Ubuntu 16.04,ROS Kinetic Kame 還是比較適合的。如果你使用的是 Ubuntu 20 更新的版本,可以安裝 noetic 版本,雖然版本不一樣,但是安裝時(shí)的操作基本都是一樣的。

?

開始安裝:

首先我們看官網(wǎng)的教程,雖然有官方的教程,但是我們知道 ROS 官方相關(guān)的源都在國內(nèi),所以如果你使用官網(wǎng)的教程,那么相信你如果不使用特殊方法的話,你會(huì)安裝的很費(fèi)力。大部分包括之前的我就被安裝時(shí)候下載速度驚呆。

所以第一件事情,請(qǐng)大家更換 ROS 的國內(nèi)鏡像

sudo?vi?/etc/apt/sources.list


設(shè)置 ROS 的 sources.list 為國內(nèi)鏡像:

這里有其他人做的參考,但是經(jīng)過使用之后發(fā)現(xiàn)有些問題:

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ ?main" > /etc/apt/sources.list.d/ros-latest.list'

?

有問題?。?!

?

?

sudo apt-get update 會(huì)提示如下錯(cuò)誤

E: Malformed entry 1 in list file /etc/apt/sources.list.d/ros-latest.list (Suite) E: The list of sources could not be read.

我的建議使用官網(wǎng)的命令, 再把鏈接替換成,國內(nèi)鏡像源。

sudo?sh?-c?'echo?"deb?http://mirrors.ustc.edu.cn/ros/ubuntu/?$(lsb_release?-sc)?main"?>?/etc/apt/sources.list.d/ros-latest.list'

再使用官網(wǎng)命令添加 keys

sudo?apt-key?adv?--keyserver?'hkp://keyserver.ubuntu.com:80'?--recv-key?C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

加載軟件包列表

一旦配置完軟件版本倉庫(repositories)之后,可以用下列命令得到最新的可用軟件包列表:

udo?apt-get?update

需要注意的是,這會(huì)更新你系統(tǒng)中所有的軟件版本倉庫,而不僅僅是新添加的 ROS 庫。

?

安裝 ROS 軟件包

ROS 系 統(tǒng)非常龐大,包含眾多功能包、函數(shù)庫和工具,所以 ROS 官方為用戶提供了多種安裝版本:

桌面完整版安裝(Desktop-Full):這是最為推薦的一種安裝版本,除了包含 ROS 的基礎(chǔ)功能(核心功能包、構(gòu)建工具和通信機(jī)制)外,還包含豐富的機(jī)器人通用函數(shù)庫、功能包(2D/3D 感知功能、機(jī)器人地圖建模、自主導(dǎo)航等)以及工具(rviz 可視化工具、gazebo 仿真環(huán)境、rqt 工具箱等)。命令為:

sudo?apt-get?install?ros-kinetic-desktop-full

默認(rèn)全裝,后面大家也不需要再安裝了。分包安裝的內(nèi)容大家可以參看我篇頭所寫的那篇 ROS 文章。

如果按照官方源,那我們這里需要下載安裝好長的時(shí)間,不過用國內(nèi)鏡像 不出意外 一般是十幾分鐘就可以下載完畢。

如果提示下載失敗, 重復(fù)這個(gè)命令:

sudo?apt-get?install?ros-kinetic-desktop-full

環(huán)境設(shè)定 每次啟動(dòng)新的 shell 時(shí),如果將 ROS 環(huán)境變量自動(dòng)添加到 bash 會(huì)話中,將很方便:

echo?"source?/opt/ros/kinetic/setup.bash"?>>?~/.bashrc


.?~/.bashrc?
source?~/.bashrc

構(gòu)建軟件包的依賴關(guān)系

rosinstall 是一個(gè)常用的命令行工具,我們可以通過一個(gè)命令輕松下載 ROS 軟件包的許多源代碼樹。要安裝此工具和其他依賴項(xiàng)以構(gòu)建 ROS 軟件包,請(qǐng)運(yùn)行:

sudo?apt?install?python-rosdep?python-rosinstall?python-rosinstall-generator?python-wstool?build-essential

為系統(tǒng)設(shè)置 rosdep

rosdep 是 ROS 自帶的工具,主要功能是為某些功能包安裝依賴關(guān)系,同時(shí)某些 ROS 核心功能包必須用到的工具,這個(gè)初始化步驟是一次性的,一旦 ROS 正常工作,多數(shù)用戶不再需要訪問 rosdep。完成上述安裝步驟之后,需要使用如下命令進(jìn)行初始化操作:

sudo?rosdep?init
rosdep?update

rosdep update 會(huì)在你的賬戶中初始化 rosdep 系統(tǒng),該命令在你的根目錄下保存一些文件,文件夾名為 .ros,因?yàn)槭浅跏蓟?,這個(gè)命令只需要運(yùn)行一次。該命令是在普通用戶下運(yùn)行。

rosdep init 經(jīng)常出現(xiàn)問題,加載失敗和下載失敗

**error loading sources list**

sudo vi /etc/hosts

在最下面添加一句這個(gè):

151.101.84.133 raw.githubusercontent.com

?

看小烏龜

安裝小烏龜,這個(gè)看似簡單的小烏龜例程,其實(shí)蘊(yùn)含 ROS 最基礎(chǔ)的原理和機(jī)制。

sudo?apt-get?install?ros-kinetic-turtlesim

打開一個(gè)終端(Terminal),這是 ROS 運(yùn)行需要的管理器節(jié)點(diǎn)

roscore

打開第二個(gè) Terminal,啟動(dòng) turtlesim 仿真器節(jié)點(diǎn)(可以把小烏龜?shù)慕缑骈L置頂)

rosrun?turtlesim?turtlesim_node

打開第三個(gè) Terminal,通過使用鍵盤的前后左右按鍵進(jìn)行控制小烏龜

rosrun?turtlesim?turtle_teleop_key

ROS 安裝完成

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

一個(gè)程序員,喜歡寫文章,還喜歡打籃球,也喜歡吉他鋼琴的駁雜之人。日常更新自己,分享包括但不限于C/C++、嵌入式、物聯(lián)網(wǎng)、Linux等編程學(xué)習(xí)筆記,同時(shí),公眾號(hào)內(nèi)包含大量的學(xué)習(xí)資源。歡迎關(guān)注,一同交流學(xué)習(xí),共同進(jìn)步!