最近在测试Ptamm,google到ros上支持用ptam控制ardrone的悬停。公司特地买了一台以供测试。下面写下ardrone_driver和tum_ardrone的编译与运行
ubuntu准备:
最好是12.04 此版本既可以安装ros.hydro又可以安装ros.groovy这两个版本的ros都可以安装tum_adrone,建议不使用ros.indigo,我测试indigo安装tum_ardrone失败。
第一步是安装ros:
安装ros.hydro请参考
http://wiki. ros.org/hydr o/Installati on/Ubuntu 这个网站,需要注意的是后续编译tum_ardrone需要在root用户下进行,所以在进行到1.5 Initialize rosdep的时候请切换到root用户初始化ros。后续步骤都是在root用户下进行。
我的命令行输入如下
首先是普通用户操作:
$sudo sh -c 'echo "deb
http://packa ges.ros.org/ ros/ubuntu precise main" > /etc/apt/sources.list.d/ros-latest.list'
$wget
https://raw. githubuserco ntent.com/ro s/rosdistro/ master/ros.k ey -O - | sudo apt-key add -
$sudo apt-get update
$sudo apt-get install ros-hydro-desktop-full(安装时间依赖网络情况)
$sudo passwd root(设置root密码)
$su
root用户操作:
#echo "source /opt/ros/hydro/setup.bash" >> ~/.bashrc
#source ~/.bashrc
第二步是建立catkin workspace
这些操作依然是root用户,参考页面是
http://wiki. ros.org/catk in/Tutorials /create_a_wo rkspace
我的命令行输入如下:
#mkdir -p ~/catkin_ws/src
#cd ~/catkin_ws/src
#catkin_init_workspace
#cd ~/catkin_ws/
#catkin_make
第三步是安装ardrone driver和tum_ardrone
这里不建议参考其安装方法,有一些陷阱。以下是我命令行输入,依然是root用户
#cd /opt/ros/hydro/share
#git clone git://
github.com/t um-vision/ar drone_autono my.git ardrone_autonomy
#cd ardrone_autonomy
#rosmake
#cd ..
#git clone
https://gith ub.com/tum-v ision/tum_ar drone.git -b hydro-devel(这里下载只为了不用设置环境变量与后续的app运行,所以不用编译)
#cd ~/catkin_ws/src
#git clone
https://gith ub.com/tum-v ision/tum_ar drone.git -b hydro-devel
#cd ..
#rosdep install tum_ardrone(时间很长)
#catkin_make(时间更长)
#cp devel/lib/tum_ardrone/drone_* /opt/ros/hydro/share/tum_ardrone/
然后就可以连上ardrone;准备运行roscore和roslaunch了
运行:
1 用wifi找到ardrone热点并连接
2 打开三个终端窗口
3 每个窗口都进入root用户
4 第一个窗口运行:
roscore
5 第二个窗口运行:
roslau
nch tum_ardrone ardrone_driver.launch
6 第三个窗口运行:
roslaunch tum_ardrone tum_ardrone.launch
后续上测试图~