关于windows下PC控制AR.Drone的IP配置相关问题

感谢guoming0000的博客和相关资源

http://blog.csdn.net/guoming0000/article/details/7075292

对于刚开是接触ARDrone开发的朋友建议看一下,本人刚刚接触AR,适逢实验室新购进的AR,研究了一番……

在下就说一些关于自己跑SDK遇到的一些问题和心得吧。

本人测试的是官方的 SDK_1.8 ,不可理喻的存在很多Bug,可用的是本文开头引用的博客中提到的源文件,正确配置后正常操控AR。


必须要有的库:(引自官方开发文档指导)

  • Microsoft Windows SDK (点击下载),Windows的头文件和标准库。
  • SDL Library (点击下载),关于视频图像显示。
  • Microsoft DirectX SDK(点击下载),AR的键盘操控,特别是游戏手柄。


1.关于 项目解决方案.(sln)  文件的问题,官方的英语guide直接打开 your_SDK\Examples\Win32\VCProjects\ARDrone\ARDrone.sln但是对于Visual Studio 版本是有要求的,如果不对是不会打开的,可以用以下方法。

用.txt方式打开ARDrone.sln,更改第二行代码到本地的# Visual Studio版本,保存在双击打开,Visual会提示你是否更新,而后你就得到适合本地Visual版本的项目了。


2.进行过上面步骤后,你可能回去尝试打卡项目内的.cpp文件或者.h文件,但是会提示不能打开,这是因为并不能按照默认的路径找到相关文件,需要在环境里更改默认的路径配置,配置方法请看本文开头处的连接博客。而后便可以打开各个文件了。


3.宏 选项在ARDroneLib中的vp_os_signal_dep.h文件中,有如下两个关于选择编译的宏定义

#define USE_WINDOWS_CONDITION_VARIABLES 是使用windows SDK 同步线程的,即你的系统要是Vista以上的。

#defineUSE_PTHREAD_FOR_WIN32 是应用在XP或者更在版本的……(几率不大)

这两个宏只能存在一个,即只能编译一个相关。所以基本情况(WIN7、Vista)要注释掉第二个。

以上步骤,加上开头博客的连接中的步骤都无误的话,就能生成可执行文件了。


4.但是关于控制端即PC,和受控端AR。的IP要有以下注意事项。

AR的IP默认是192.168.1.1,特殊情况比如多个AR共用一个WIFI网段(几率不大),AR就会生成不相同的IP。而在环境中的win32_custom.h文件中涉及AR和PC端的IP地址。连接的话,打卡笔记本无线网设置自己的IP 192.168.1.2(要与 win32_custom.h 中的IP相对应),打开AR(直到四角的LED变色),连接ardrone_XXXXX,在控制台下ping 192.168.1.1如果正常ping通,说明连接AR成功,而后运生成的.exe文件,按控制台提示和控制说明进行控制。

常见问题:

Q:.exe文件运行了,可是现实“Connection timeout”

A:连接速度慢,如果还是不能连接,ping 一下试试,如果还是不行,重开应用程序


Q:打不开任何源文件,.cpp或者.h都打不开

A:确保你的ARDroneLibDir 和Win32ClientDir 宏已经在属性管理器中设置好了


Q:编译时候出现“windows.h:no such file or directory”

A:确保你的Windows SDK 正确安装,


Q:编译时候出现“Cannot open input file ‘dxguid.lib’ ”

A:确保你的DirectX SDK 安装正确。

Q:编译时候提示“Error spawning mt.exe ”

A:Windows SDK安装错误,重新安装。


Q:编译时# include <XXX.h>出错,导致随后程序很多相关错误。

A:没能够正确关联外部的依赖项,最简单方法是把缺少的<XXX.h>直接添加到,VS 的lib文件夹中,但对于<XXXX.c>,添加到VS的source文件夹中。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值