天天看點

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

硬體樹莓派raspi 3B+

軟體平台:armhf 即樹莓派安裝的是32位ubuntu mate 18.04

官網參考

https://wiki.ros.org/melodic/Installation/Ubuntu​wiki.ros.org

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

由上圖可以指導,ros系統是支援3種架構下的ubuntu 18.04系統。

  1. amd64就是平時我們用的電腦,筆記本安裝的64位ubuntu 系統 ;
  2. arm64是樹莓派上安裝的64位的ubuntu 18.04系統;
  3. armhf是樹莓派上安裝的32位的ubuntu 18.04系統;

安裝步驟:

在/etc/apt/sources.list.d/檔案夾下面建立一個ros-latest.list檔案,并将deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main寫入該檔案。這裡$lsb_release -sc實際就是bionic。不同版本的ubuntu 的$lsb_release -sc值不同。18.04是bionic;17.10是artful;16.04是xenial。可以在ctrl+alt+t 打開終端輸入lsb_release -sc檢視自己的Ubuntu版本。這裡我們直接在終端執行下面這句即可。

sudo sh -c 'echo "deb http:// packages.ros.org/ros/ub untu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

添加密鑰{這裡知乎顯示有問題,我把密鑰截圖放在這裡}

curl -sSL 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xC1CF6E31E6BADE8868B172B4F42ED6FBAB17C654' | sudo apt-key add -

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

更新

sudo apt update

選擇安裝ros;考慮到樹莓派3B+資源少,安裝的是ros-base。然後通過PC機+樹莓派構成主從機模式。rqt和rviz都在pc機上實作。4B+可以嘗試desk install。

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

環境變量添加。就是将這一句“source /opt/ros/melodic/setup.bash”解除安裝~/.bashrc的末尾,并且source以下,是這個檔案重新生效。ps:每一次打開終端時,都會執行一次~/.bashrc。也就是會執行這一句“source /opt/ros/melodic/setup.bash”。

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

source ~/.bashrc

安裝ros的依賴包

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

初始化rosdep

sudo apt install python-rosdep

sudo rosdep init

rosdep update

運作sudo rosdep init很容易報錯,一般是無法通路外網,可以上http://google.com的同學不會遇到這個問題。sudo rosdep init的作用是在建立檔案詢夾"/etc/ros/rosdep/sources.list.d",并建立一個20-default.list檔案,在檔案中寫入以下文字。是以無法上外網的同學,自己手動建立檔案夾和檔案,把下面這段文字複制進去就可以了。這時候運作sudo rosdep init依然會提示報錯,不過不用管它。直接運作rosdep update即可,這個時候可能會出現time out的提示,把網絡切換快一點就行或手機熱點!!!!。多運作幾次rosdep update就好了。

# os-specific listings first

yaml https:// raw.githubusercontent.com /ros/rosdistro/master/rosdep/osx-homebrew.yaml osx

# generic

yaml https:// raw.githubusercontent.com /ros/rosdistro/master/rosdep/base.yaml

yaml https:// raw.githubusercontent.com /ros/rosdistro/master/rosdep/python.yaml

yaml https:// raw.githubusercontent.com /ros/rosdistro/master/rosdep/ruby.yaml

gbpdistro https:// raw.githubusercontent.com /ros/rosdistro/master/releases/fuerte.yaml fuerte

# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

其他解決無法聯網方法

修改hosts

Ubuntu直接在終端輸入,這裡樹莓派應該輸入sudo nano /etc/hosts 普通桌上型電腦直接輸入sudo vi /etc/hosts即可。

sudo vi /etc/hosts
或者
sudo nano /etc/hosts
           
添加以下内容儲存即可。在

http://IPAddress.com查詢到的http://raw.githubusercontent.com的ip是199.232.28.133。在https://site.ip138.com/raw.Githubusercontent.com/查詢raw.githubusercontent.com的ip有很多個,使用ping找一個最快的。

199.232.28.133  raw.githubusercontent.com
或者
151.101.84.133  raw.githubusercontent.com
           
opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

參考:

關于rosdep init 失敗問題的研究​blog.csdn.net

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

修改Hosts臨時解決GitHub的raw.githubusercontent.com無法連結的問題 - 秦晉之巅社群​qjzd.net:3000

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

解決GitHub raw.githubusercontent.com 無法連結​www.jianshu.com

opt檔案夾下沒有ros_樹莓派(Ubuntu18.04)安裝ros

繼續閱讀