亚洲欧洲国产欧美一区精品,激情五月亚洲色五月,最新精品国偷自产在线婷婷,欧美婷婷丁香五月天社区

      考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
        當(dāng)前位置:Linux認(rèn)證 > 綜合輔導(dǎo) > 文章內(nèi)容
        

      Linux教程:ROSonARM--RK3066上本地編譯ROSGroovy

      來源:Linux社區(qū) [ 2016年1月23日 ] 【

      1. 開源機(jī)器人操作系統(tǒng)ROS(Robot Operating System)簡介

      ROS(Robot Operating System)是一個(gè)開源的為機(jī)器人軟件開發(fā)設(shè)計(jì)的軟件框架,在異構(gòu)計(jì)算機(jī)集群中提供類似操作系統(tǒng)的功能。它并不是一個(gè)計(jì)算機(jī)的操作系統(tǒng),而是機(jī)器人的操作系統(tǒng),或者稱為元級操作系統(tǒng)(Meta Operating System)。據(jù)目前唯一一本比較官方的關(guān)于ROS的書《ROS By Example Volume 1》介紹,“The primary goal of ROS (pronounced "Ross") is to provide a unified and open source programming framework for controlling robots in a variety of real world and simulated environments.”,ROS的原始目的就是為了在一系列真實(shí)和模擬的環(huán)境中控制機(jī)器人提供一個(gè)統(tǒng)一的開源編程框架。為了實(shí)現(xiàn)這一目標(biāo),ROS架構(gòu)中有三個(gè)層次的概念:文件系統(tǒng)級(Filesystem Level),計(jì)算圖級(Computation Graph Level)和社區(qū)級(Community Level)。 具體可以查閱維基百科和官網(wǎng)wiki,這里就不過多介紹了。

      2. ROS Groovy Galapagos

      ROS Groovy Galapagos是2012年12月31日發(fā)布的ROS最新版本,主要支持Ubuntu 11.10、Ubuntu 12.04和Ubuntu 12.10。提到這個(gè)版本的原因是它采用了新的構(gòu)建系統(tǒng)——catkin,準(zhǔn)備逐漸取代之前的rosbuild。它解決了rosbuild當(dāng)中的幾個(gè)問題,讓ROS可以持續(xù)發(fā)展和擴(kuò)大規(guī)模,相對于rosbuild更符合文件系統(tǒng)層次結(jié)構(gòu)標(biāo)準(zhǔn)(Filesystem Hierarchy Standard,F(xiàn)HS),使在其它操作系統(tǒng)和架構(gòu)上發(fā)布ROS包更加容易。正是這個(gè)原因讓我在MK802 IIIS上編譯ROS的時(shí)候輕松很多,如果編譯之前的版本(比如fuerte)將會遇到更多問題。

      因?yàn)閏atkin的引入,ROS文件系統(tǒng)級的Stacks概念被移除了,原因是Package和Stack之間依賴性跟蹤出現(xiàn)的問題,取代的是元包(metapackage)的概念。

      3. Ubuntu on ARM

      ARM版Ubuntu的軟件源是在//ports.ubuntu.com/上,和桌面版的略有區(qū)別,我遇到的一個(gè)問題就是桌面版python-*的包ARM版幾乎都沒有,解決辦法是使用python的包管理工具pip安裝,比如桌面版上apt-get install python-PACKAGENAME,用pip install PACKAGENAME替代。據(jù)說easy_install的維護(hù)不夠好,所以應(yīng)該盡量用pip。

      我使用的是RK3066上的Picuntu。

      4. 編譯ROS for ARM

      從前為ARM編譯一般都需要在x86的上位機(jī)上交叉編譯,有一個(gè)叫做EROS的項(xiàng)目,但是似乎文檔不全,個(gè)人覺得用它成功編譯的人應(yīng)該也不多。近幾年ARM性能足夠強(qiáng)了,在ARM運(yùn)行的操作系統(tǒng)上直接編譯也不是什么問題。所以完全可以參考官網(wǎng)從源碼編譯的教程,官網(wǎng)還特別搞了一個(gè)在樹莓派上編譯的教程。

      當(dāng)然,樹莓派的內(nèi)存只有512MB,而且是ARM 11,使用ROS會受到很大的限制,既然它都可以編譯ROS Groovy,那么雙核A9的RK3066,1G內(nèi)存就更不是問題了。

      下面一步步按照官網(wǎng)上從源碼編譯的wiki來:

      4.1 安裝基礎(chǔ)依賴包

      操作系統(tǒng)相關(guān)的:

      sudo apt-get install build-essential git python-pip 
      

      ROS Common(或者叫ROS Base,Base Bones什么的)依賴的:

      sudo apt-get install libtinyxml-dev libgtest-dev  liblog4cxx10-dev
      

      注意這里只是在Picuntu RC2 上需要額外安裝的庫,可能你還會遇到其它庫的問題。desktop或者desktop-full依賴的庫更多,所以更難解決。

      還有一些重要的工具:

      sudo pip install wstool rospkg rosdep
      

      可能會遇到很多python-*的包缺少的問題,需要用sudo pip install PACKAGENAME安裝

      安裝完rosdep以后初始化一下:

      sudo rosdep init
      rosdep update
      
      首頁 1 2 3 4 尾頁
      將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
      關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
      Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved