ROS在ARM上的编译
ROS(robot operaring system)作为移动机器人软件架构,近几年得到了越来越广泛的应用,但是大部分应用是基于X86架构的处理器,怎么样将这么强大的工具和应用极为广泛的ARM处理器结合在一起,是现在很多开发者急于解决的问题。我作为ROS的初学者最近也尝试了一把ROS 的arm移植,纠结了四五天,不过最后还是成功了。
虽然现在针对非X86架构的处理器产生了一些ROS的应用方案,比如eros(http://www.ros.org/wiki/eros)、rosserial(http://www.ros.org/wiki/rosserial)等方式,后者是针对Arduino的,前者玩了几天,没搞清楚是怎么用的,所以上网各处搜索,也在ROS的群里问了一些人,最近正好群里也有人成功在MK802 III上成功编译了ROS源码,所以直接在目标机上编译源码这个原始的方式,虽然效率较低,但是应该是行的通的。
移植环境:
PC:Ubuntu 12.04
arm处理器:Cortex-A9
arm操作系统:Ubuntu12.04
ROS版本:groovy
编译流程:
1、安装工具软件
启动ARM板中的ubuntu操作系统,使用串口与电脑连接,通过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、下载源码
创建文件夹:
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的服务器,尝试了一天,才在茫茫抢票热潮中把代码下了下来。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码