ROS在ARM上的編譯
ROS(robot operaring system)作為移動機器人軟件架構,近幾年得到了越來越廣泛的應用,但是大部分應用是基于X86架構的處理器,怎么樣將這么強大的工具和應用極為廣泛的ARM處理器結合在一起,是現在很多開發(fā)者急于解決的問題。我作為ROS的初學者最近也嘗試了一把ROS 的arm移植,糾結了四五天,不過最后還是成功了。
雖然現在針對非X86架構的處理器產生了一些ROS的應用方案,比如eros(http://www.ros.org/wiki/eros)、rosserial(http://www.ros.org/wiki/rosserial)等方式,后者是針對Arduino的,前者玩了幾天,沒搞清楚是怎么用的,所以上網各處搜索,也在ROS的群里問了一些人,最近正好群里也有人成功在MK802 III上成功編譯了ROS源碼,所以直接在目標機上編譯源碼這個原始的方式,雖然效率較低,但是應該是行的通的。
移植環(huán)境:
PC:Ubuntu 12.04
arm處理器:Cortex-A9
arm操作系統(tǒng):Ubuntu12.04
ROS版本:groovy
編譯流程:
1、安裝工具軟件
啟動ARM板中的ubuntu操作系統(tǒng),使用串口與電腦連接,通過ssh使得PC機可以與ARM板進行遠程控制,然后就可以在PC機上控制arm板中的代碼編譯了。
首先是按照教程上說的:
sudo apt-get install python-rosdep python-wstool build-essential
但是在arm的ubuntu源中沒有python-rosdep和python-wstool這兩個包,這兩個包的安裝可以按照fuerte的編譯說明進行(http://www.ros.org/wiki/fuerte/Installation/Ubuntu/Source):
python ez_setup.py
利用easy_install安裝pip:(http://www.ros.org/wiki/ROS/Installation/EasyInstallConfig)
sudo easy_install pip
然后安裝以下的包:(http://www.ros.org/wiki/fuerte/Installation/Ubuntu/Source)
sudo pip install -U rosdep
sudo pip install -U rosinstall
sudo pip install -U rospkg
安裝python-wstool:
pip install -U wstool
redep初始化:
sudo rosdep init
rosdep update
2、下載源碼
創(chuàng)建文件夾:
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
下載代碼,我是用的是最小包ros-common:
wstool init src -j8 http://packages.ros.org/web/rosinstall/generate/raw/groovy/ros_comm
傳說春運搶票搞垮了github,一開始怎么都連接不上github的服務器,嘗試了一天,才在茫茫搶票熱潮中把代碼下了下來。
c++相關文章:c++教程
評論