1. 程式人生 > >在BeagleBone Black 上安裝ROS Hydro

在BeagleBone Black 上安裝ROS Hydro

   BeagleBone Black(BBB) 是一種基於ARM Cortex A8處理器的低成本開發平臺。此開發板是基於發行版製作的。由一支希望統一嵌入式系統發行版的小型團隊開發,他們希望作業系統是穩定且使用者是友好的。

考慮到社群的開發人員需要一個具有一些通用輸入/輸出(GPIO)引腳的機載機器人裝置,德州儀器設計了BeagleBone Black。BeagleBone Black平臺是BeagleBone的改進版。開發版的主要特性包括ARM Cortex A8處理器(時鐘頻率為1GHz,記憶體為512MB),具有乙太網、USB介面、HDMI、46引腳GPIO介面。這些GPIO 可以設定為I/O、ADC、脈寬調製,以及I2C、SPI或者UART等通訊協議介面。GPIO是一種直接將感測器和執行器與BeagleBone連線的簡單方法。

我們選擇在Ubuntu ARM上安裝ROS因為這個發行版更常用,推薦在執行ROS的平臺上使用Ubuntu 13.04 ARM raring armhf的映象。此外還可以用於其他基於ARM 的開發版,如UDOO OdroioU3、Odroio X2或Gumstick.

一、在安裝ROS 到BeagleBoneBlack之前,需要做一些準備工作。

首先,必須安裝一個與ROS相容的ubuntu ARM發行版。所以需要ubuntu ARM 的安裝映象。可以通過下面的命令使用wget 獲得ubuntu 13.04 Raring armhf:

  $wget https://rcn-ee.net/deb/flasher/raring/BBB-eMMc-flasher-ubuntu-13.04-2013-10-08.img

下載映象,將其安裝到SD卡上:

1.將BeageBoneblack Ubuntu映象放到micro SD卡上,並插入到封閉的BBB。還要確保有鍵盤、滑鼠、顯示器和乙太網連線。

    2.同時按住“開始”按鈕,為電源板供電。繼續按住“開始”按鈕,直到USER LED開始閃爍,你應該使用一個5V外部電源,USB電源可能無法正常工作。

    3.大約一分鐘之後螢幕應顯示登入提示。

    4.移開板大約10分鐘後,影象將會閃爍到eMMC。

   5.經過十分鐘後,4個LED應牢固而不閃爍。取出mirco SD卡,然後重新接通電源。

    6.要花一兩分鐘才能啟動到登入螢幕使用者是:ubuntu

     密碼是:temppwd   注意:輸入密碼的迴音是關閉的

   7.你現在應該在ubuntu的命令終端上,你的BeagleBone Black將從此開始啟動。

    7.窗體頂端

窗體底端

     一旦在開發平臺上安裝好ubuntuARM,就需要配置BeagleBone Black的網路介面以實現網路訪問,必須配置如IP、DNS和閘道器等網路配置。最簡單的方式就是在另一臺計算機上掛載SD卡並編輯 /etc/network/interfaces  設定好網路後,為了安裝ROS中如CMake、Python或Vim等可能需要的功能包、程式和庫,使用以下命令:

      $ sudo apt-get install cmakepython-catkin-pkg python-empty python-nose python-setuotools libgtest-devbuild-essential

      $ sudo apt-get install g++ curl pkg-configlibv41-dev libjpeg-dev build-essential libssl-dev vim

   用於BeagleBoneBlack的作業系統在微型SD卡上配置的空間為1至4GB,如果需要使用一個大的ROS Hydro功能包,我們可以使用空間更大的SD卡,重新分割槽,擴大檔案系統佔可用空間的比例。通過下列命令可以實現以下目的:

    1. 需要切換到超級使用者模式,輸入以下的命令並輸入密碼:

    $ sudo su

    2.檢視SD卡的分割槽資訊:

    $fdisk /dev/mmcblk0

    3.輸入p,可見SD卡的兩個分割槽:

    $ p

    4.輸入‘d’刪除分割槽,然後輸入2指定要刪除的分割槽/dev/mmcblk0p2:

    $ d

    $ 2

 5.輸入n,建立一個新分割槽;如果輸入p將建立一個主分割槽,輸入2指定第二個分割槽的編號。

    $ n

    $ p

    $ 2

    6.如果沒有問題,輸入w儲存這些操作,或者按ctrl+Z組合鍵取消更改:

    $ w

    7.完成後重啟開發版

    $ reboot

    8.完成重啟後,再次切換到超級使用者模式:

    $ sudo su

    9.最後,執行下面的命令執行作業系統記憶體檔案系統的擴容。

    $ resize2fs /dev/mmcblk0p2

     然後開始安裝ROS,不能安裝ROSfull-desktop,必須單獨安裝每一個功能包。

二、配置主機和source.list檔案

     現在開始配置主機:

       $sudo update-locate LANG=C LANGUAGE=C LC_ALL=C LC_MESSAGES=POSIX

    之後我們將配置源列表,目前活躍的發行版是ubuntu 13.04 Raring armhf,它也是ubuntu ARM 最受歡迎的版本。

       $ sudo sh -c ‘echo “deb http://packages.namniart.com/repos/rosraring main” > /etc/apt/sources.list.d/ros-latest.list’

三、設定金鑰

四、安裝ROS 功能包

 在安裝ROS 功能包之前,必須更新系統以避免出現庫依賴的問題。

       $ sudo apt-get update

  ROS-base 會安裝包括編譯和通訊庫以及以及ROS 功能包,但不包括GUI工具:

   $ sudo apt-get install ros-hydro-ros-base

我們可以按照下面的命令來安裝指定的ROS功能包,執行下面的命令:

   $ sudo apt-get install ros-hydro-PACKAGE

如果我們需要查詢在BeagleBoneBlack中可用的ROS功能包,執行下面的命令:

   $ apt-cache search ros-hydro

例如,下面的包為ROS正常工作的基礎,可以使用apt-get單獨安裝:

   $ sudo apt-get install ros-hydro-ros

   $ sudo apt-get install ros-hydro-roslaunch

   $ sudo apt-get installros-hydro-ros-rosparam

   $ sudo apt-get install ros-hydro-rosservice

五、初始化rosdep

在使用ROS之前,必須首先安裝並初始化rosdep命令列工具,可以輕鬆的安裝庫並解決準備編譯原始碼的系統依賴問題,以及提供ROS 執行需要的一些核心元件。可以用下面的命令進行安裝並初始化rosdep:

   $ sudo apt-get install python-rosdep

   $ sudo rosdep init

   $ sudo update

六、在BeagleBone Black中配置環境:

新增下面ROS 環境變數到bash中,這樣它們每次命令列啟動時就可以自動載入:

   $ echo “source /opt/ros/hydro/setup.bash” >> ~/.bash

   $ source ~/.bashrc

    如果在系統中有多個版本的ROS必須注意.bashrc 的變數設定為正在使用的版本。

    如果我們想要在當前命令列中配置環境,執行命令如下:

      $ source /opt/ros/hydro/setup.bash

七、在BeagleBone Black中安裝rosinstall

   Rosinstall 是ROS中一個常見的命令列工具,使安裝功能包更方便。需要在  ubuntu 中使用下面的命令進行安裝:

      $ sudo apt-get install python-rosinstall