基于Ubuntu 的 Parrot ARDrone 2.0的SDK安装以及ardrone_autonomy和tum_ardrone的安装和使用

基于Ubuntu 的 Parrot ARDrone 2.0的SDK安装以及ardrone_autonomy和tum_ardrone的安装和使用经过了一个多星期的摸索,现在开始慢慢理解ParrotARDrone2.0的使用。现在总结一下遇到的问题,希望用这款无人机的人能够得到一些帮助,毕竟不能总是做一个伸手党。ParrotARDrone2.0是法国的一家无人机的厂商生产的无人机的产品,是parrotardrone1.0的进阶版,摸索的这一个星期我感受到现在对ardrone2.0的支持还是挺棒的。有很多资料,遇到问题

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

经过了一个多星期的摸索,现在开始慢慢理解Parrot ARDrone 2.0的使用。现在总结一下遇到的问题,希望用这款无人机的人能够得到一些帮助,毕竟不能总是做一个伸手党。
Parrot ARDrone 2.0是法国的一家无人机的厂商生产的无人机的产品,是parrot ardrone 1.0的进阶版,摸索的这一个星期我感受到现在对ardrone 2.0的支持还是挺棒的。有很多资料,遇到问题google一下也有很多解决方案。这款无人机售价比较便宜,我们购买的是power edition版本,价格在2500左右,然后不包括GPS模块,价格在600左右。如果需要进行室外自主飞行,就需要GPS模块获得无人机的location然后利用qgroundcontrol这款软件指定无人机的飞行路径,就可以实现按照固定的轨迹自主飞行拍摄。这款无人机还有的硬件外设有一个向前的摄像头,720p的,还有一个向下的摄像头,分辨率比较差。内置里IMU,处理器是一款ARM 的处理器。详细的参数可以去google搜索一下那个用户手册(user guide),里面的参数写的很详细。
Parrot ardrone 2.0不做开发的话买回来的装上电池就可以飞了,这个需要你仔细看看里面的使用说明书。你需要在手机或者pad上面下载对应版本的app——ARFreeFlight 2.0(最好使用iphone或者ipad,我发现这款app对安卓的支持貌似不是很好,但是也是可以用的)。
闲话不多说了,下面开始讲关于使用ardrone 2.0开发的一些事情了。其他的资料可以去官网看看:
(http://www.parrot.com)
ardrone2.0的SDK 下载的地址是:http://developer.parrot.com/products.html,里面的SDK 2.0就是针对ardrone 2.0的SDK 。我们要讲的ardrone_autonomy其实是SDK的二次封装。在SDK的基础上加上了ROS,就像是ardrone的驱动一样。
首先是讲解ardrone_autonomy的安装,我参考的文献http://blog.csdn.net/u014209688/article/details/42614705#comments,里面讲解的是有两种安装方式,但是我使用的是第一种安装方式,后来也证明了,第一种安装方式既简单,有很少会报错。

sudo apt-get install  ros-kinetic-ardrone-autonomy

因为我使用的Ubuntu的版本是16.04,对应的ros的版本是kinetic,如果你是ubuntu 14.04,对应安装的应该是indigo,ubuntu 12.04对应安装hydro,安装ros的步骤其实很简单,具体的步骤可以参照ros wiki,google对应的ros版本就可以里。在这里我需要强调一下的是,如何你用github的版本安装ardrone_autonomy和直接用apt-get install 的方式是不一样的,可能会出很多问题。所以还是建议直接用命令安装,里面的坑我大概花了两三天才搞明白。我还是给出git的链接:https://github.com/tum-vision/ardrone_autonomy
我安装好了ardrone_autonomy之后,需要安装tum_ardrone,这个时候遇到的问题更多,tum_ardrone是一个ros的stack,里面运行的是SLAM 中比较著名的ptam的程序,可以利用UI 界面来控制无人机或者实现无人机的自动控制,也可以对无人机的状态进行估计。
首先我要强调一下的是,**安装tum_ardrone的时候因为对应的ros版本的问题,我走了很多弯路。由于我的电脑只能安装ubuntu 16.04, ROS版本是kinetic,我想试着用这个环境安装好tum_ardrone。弄了三四天编译总是通不过,出现的错误是

recipe for target 'all' failed

后来我换系统换成里ubuntu 14.04,对应的ROS 版本换成里indigo,很快的我这个也搞定了。
安装tum_ardrone的过程:(对应的github的链接:https://github.com/tum-vision/tum_ardrone
首先在任意一个目录下面:

mkdir catkin_ws
cd catkin_ws
mkdir src
cd src
catkin_init_workspace
git clone https://github.com/tum-vision/tum_ardrone.git -b indigo-devel
cd ..
rosdep install tum_ardrone
catkin_make

出创建ROS的workspace和package的过程可以参考链接:http://blog.csdn.net/github_30605157/article/details/52209434
http://blog.csdn.net/xiaocainiaoshangxiao/article/details/13295625
在catkin_make 的时候我遇到了几个问题,记住在git clone 的时候对应的branch分支一定要和安装的ROS版本对应,不然会有很多错误。换了版本之后遇到的错误基本上都是可以通过google解决问题的,主要是
对应的lib没有安装好,直接用sudo apt-get install 就可以解决了,一定要仔细看出的什么错误,静下心来好好google想想。
安装好了这两个之后我又尝试着去编译最原始的SDK,我参考的链接是:
http://petrkout.com/linux/parrot-ardrone-2-0-video-streaming-through-opencv-in-linux/
遇到的问题有这两个:

libavutil.a(eval.o): undefined reference to symbol 'fabs@@GLIBC_2.2.5'
libm.so.6: error adding symbols: DSO missing from command line 

上面安装的链接有人也遇到的相同的问题,作者也给出里解决方案,遇到相同问题的人可以好好参考。

参考文献:
[1]http://developer.parrot.com/products.html
[2]http://blog.csdn.net/u014209688/article/details/42614705#comments
[3]https://github.com/tum-vision/ardrone_autonomy
[4]https://github.com/tum-vision/tum_ardrone
[5]http://blog.csdn.net/github_30605157/article/details/52209434
[6]http://blog.csdn.net/xiaocainiaoshangxiao/article/details/13295625
[7]http://petrkout.com/linux/parrot-ardrone-2-0-video-streaming-through-opencv-in-linux/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/170577.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • struts2拦截器详解_struts拦截器配置

    struts2拦截器详解_struts拦截器配置当我们在intercepter内使用“returninvocation.invoke();”进行拦截器释放,线程会继续走下一个拦截器或请求方法。当我们直接返回return”success”,这类字符串时,拦截器会匹配所请求action的result结果,并直接返回。…

  • linux(1)Mac上传文件到Linux服务器

    linux(1)Mac上传文件到Linux服务器前言我们使用mac时,想让本地文件上传至服务器,该怎么办呢windows系统,我们可以使用xftp或者rz命令,那么mac呢?mac系统,我们可以使用sftp、scp或者rz命令,本文介绍sft

  • Java操作XML文件

    Java操作XML文件目录一、使用DOM4j进行XML的DOM解析1.1、使用DOM4j查询XML文档1.2、使用DOM4j修改XML文档1.3、使用xPath技术二、使用SAX方式解析XML文档2.1、使用SAX解析方式查询XML文档2.2、对比DOM解析和SAX解析Java中有两种解析XML文件的方式:DOM解析和SAX解析。一、使用DOM4j进行XML的DOM解析…

  • jvm怎么加载类_jvm类加载器

    jvm怎么加载类_jvm类加载器为什么要自定义加载器如何实现自定义加载器使用自定义加载器的场景

  • [Protel99SE]打印PDF「建议收藏」

    [Protel99SE]打印PDF「建议收藏」写在前面Protel仍然占据着不少工程师的手心,最近在接触一些产品转生产的事宜。从研发拿到一些工程资料后,需要转化出来给生产使用。于是就遇上了将Protel设计文件输出成PDF文件的问题。准备工作想要打印输出PDF文件,最方便的就是装一个PDF打印机。推荐安装Foxit阅读器,自动全安装PDF打印机。之后用任何软件做文档,想输出PDF文件,可以直接调用打印功能,然后打印到Fox

  • idea设置背景黑色_idea主题样式设置

    idea设置背景黑色_idea主题样式设置1、File=>Settings2、Appearance=>Darcula

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号