5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)

标题: 将AR.Drone四轴DIY进行到底! [打印本页]

作者: mapgps    时间: 2010-9-24 23:32
标题: 将AR.Drone四轴DIY进行到底!
我的AR.Drone今天刚收到, DIY开玩啦!

AR.Drone四轴飞行器内置ARM9 CPU, Linux操作系统, 通过WiFi来控制.
开放的Linux内核使得在AR.Drone增加新设备成为可行. AR.Drone是一个很好的DIY平台.
这也正是我入手AR.Drone的主要原因. 要知道我既没iPhone也没Apple的其它东东(目前官方只支持iPhone系列做控制端), 买来怎玩? ---- 我的笔记本PC带WiFi, 那就拿它来控制AR.Drone.

中秋节假期正好有空, 于是我先行写了个简单的Java程序: 在Windows XP下的DOS窗口运行, 向UDP端口5556发送AT命令来控制AR.Drone.

今天收到AR.Drone后就测试了一下: 先发送了起飞AT命令, AR.Drone就立马起飞, 升至1米左右后便稳稳地悬停在那儿!
然后发送降落AT命令, AR.Drone便自动完成降落动作.
(我之前都做好了这样的思想准备: 万一降落命令不灵, 我就伸手把它拽下来!)
再试了些其它命令(pitch/roll/yaw/gaz)也都灵.

DIY目标:
1) Java版的跨平台地面控制软件(先在Windows XP下测试)
    a) 发送AT命令来控制AR.Drone
    b) 接受并显示两个摄像头的视频(可选其一或叠加)
    c) 用键盘控制
    d) 用游戏杆控制
2) 连接AR.Drone到WiFi AP, 通过Internet来遥控AR.Drone (能上网的飞行器!)
3) 在WiFi AP间漫游
4) 给AR.Drone配上气压高度计/激光高度计(对AR.Drone现有6米超声波高度计的补充)
4) 给AR.Drone配上GPS模块和磁罗盘, 沿预定路线自主飞行
5) 给AR.Drone配上USB 3G模块, 要飞多远就飞多远 ---- 只要电池够:)

2010.09.26: 增加键盘控制
(Java源程序见附件: (, 下载次数: 1849) )

PgUp键:  起飞
PgDn键:  降落
空格键:    悬停

方向键:
             前进
                ^
                 |
左进 <---+---> 右进
                 |
                v
             后退

Shift + 方向键:
             上升
                ^
                 |
左旋 <---+---> 右旋
                 |
                v
             下降

按住数字键1~9 : 速度(舵量), 1最小, 9最大(满舵), 松开数字键则恢复缺省值(10%舵量)

2010.10.04: 在AR.Drone上用tcpdump抓包分析网络数据
有些视频命令发到AR.Drone后, PC端收不到回传的数据, 于是想看看AR.Drone端的控制命令 / 姿态数据 / 视频数据是怎么传送的.
Android也是ARM CPU, 它上面的工具程序也能在AR.Drone上用.
找了个Android上的tcpdump抓包工具: http://www.eecs.umich.edu/~timuralp/tcpdump-arm
通过FTP将其上传到AR.Drone的/data目录下.
telnet 192.168.1.1
# cd /data

# chmod 755 tcpdump-arm
# ./tcpdump-arm -i ath0 -s 0 -w ardrone.pcap
tcpdump-arm: WARNING: can't create rx ring on packet socket 8: 92-Protocol not available
tcpdump-arm: listening on ath0, link-type EN10MB (Ethernet), capture size 65535 bytes
^C435 packets captured
436 packets received by filter
0 packets dropped by kernel
用Ctrl-C结束抓包.
再通过FTP将ardrone.pcap抓包文件传到PC机上, 可用Wireshark分析.

2010.10.05: Parrot今天发布了AR.Drone的详细开发文档
下 载: https://projects.ardrone.org/attachments/download/207/ARDrone_Developer_Guide.pdf
包括 飞控AT命令, 飞控数据, 视频流等, 是DIY的福音!
2010.10.17: 增加GPS模块成功
详见第6页110楼
2011.01.01: USB Host成功, GPS可用VBUS +5V
详见第13页247/251楼
2011.01.02: AR.Drone成功地读出了U盘里的文件
详见第13页252楼
2011.01.14 零点: USB 3G 成功
详见第15页292楼
2011.02.17: USB刷机教程
http://bbs.5imx.com/bbs/viewthread.php?tid=459895
2011.03.06: AR.Drone 附加导航板DIY (气压高度计 + 电子罗盘 + GPS) --- 基于Arduino
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4594637&bbs_page_no=1&bbs_id=1025
2011.03.22: 在Google Code 上设立 ARDroneME 开源项目:
(Java (J2ME) WiFi手机上的AR.Drone控制软件, WM6/Symbian等系统)
http://code.google.com/p/ardroneme/
2011.03.29: ARDroneME1.2 (带触屏软游戏柄):
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4626493&bbs_page_no=1&bbs_id=1025
2011.05.29: AR.Drone电调通信协议:
http://bbs.5imx.com/bbs/viewthread.php?tid=424058
2011.07.02: 直接读取AR.Drone摄像头的原始图像
详见第21页415楼

[ 本帖最后由 mapgps 于 2011-7-2 22:35 编辑 ]
作者: mapgps    时间: 2010-9-24 23:44
刚试通了AR.Drone连接我的WiFi  AP (带WEP加密), 这样上面的2)项成功了!
telnet 192.168.1.1
iwconfig ath0 mode managed key s:12345 essid MAPGPS; ifconfig ath0 192.168.0.100 netmask 255.255.255.0 up

通过网络访问AR.Drone IP地址: 192.168.0.100 即可.
作者: 昂藏    时间: 2010-9-24 23:57
支持楼主,牛啊。很有入手的打算,同样是没有苹果 wifi设备。

[ 本帖最后由 昂藏 于 2010-9-25 00:04 编辑 ]
作者: xo    时间: 2010-9-25 00:45
命令和参数在哪里找到的?
作者: 昂藏    时间: 2010-9-25 11:25
控制的API是公开的。
作者: frank8792    时间: 2010-9-25 17:00
标题: 支持 !
支持 !
作者: mapgps    时间: 2010-9-25 19:47
原帖由 xo 于 2010-9-25 00:45 发表
命令和参数在哪里找到的?

下 载ARDrone API的源程序:
https://projects.ardrone.org/projects/list_files/ardrone-api
AT命令在代码里找:
Examples\Android\ardrone\project\jni\at_cmds.c
AR.Drone上的Linux内核是开源的:
https://projects.ardrone.org/wiki/ardrone-api/Gpl
作者: mapgps    时间: 2010-9-25 21:26
限高2米:     java ARDrone 192.168.1.1 AT*CONFIG=1,\"control:altitude_max\",\"2000\"

起飞:        java ARDrone 192.168.1.1 AT*REF=101,290718208
降落:        java ARDrone 192.168.1.1 AT*REF=102,290717696
悬停:        java ARDrone 192.168.1.1 AT*PCMD=201,1,0,0,0,0

上升:        java ARDrone 192.168.1.1 AT*PCMD=301,1,0,0,1036831949,0
下降:        java ARDrone 192.168.1.1 AT*PCMD=302,1,0,0,-1110651699,0
前进:        java ARDrone 192.168.1.1 AT*PCMD=303,1,1036831949,0,0,0
后退:        java ARDrone 192.168.1.1 AT*PCMD=304,1,-1110651699,0,0,0
右旋:        java ARDrone 192.168.1.1 AT*PCMD=305,1,0,0,0,1036831949
左旋:        java ARDrone 192.168.1.1 AT*PCMD=306,1,0,0,0,-1110651699
右转:        java ARDrone 192.168.1.1 AT*PCMD=307,1,0,1036831949,0,0
左转:        java ARDrone 192.168.1.1 AT*PCMD=308,1,0,-1110651699,0,0

我正在写键盘控制的Java程序, 这样使用键盘来控制以上动作就方便多了.
作者: mapgps    时间: 2010-9-25 21:40
另外, 今天在办公室里成功地透过公司网络远程起飞/降落了一下放在家里的AR.Drone.
老头打电话过来说"你房间里的那个东西怎么自己飞起来了?"

视频显示的Java程序还没写好, 还看不见远程的飞行实况, 没敢做其它的飞行动作. 哈哈!
作者: waiting1985    时间: 2010-9-25 22:06
另外, 今天在办公室里成功地透过公司网络远程起飞/降落了一下放在家里的AR.Drone.
老头打电话过来说"你房间里的那个东西怎么自己飞起来了?"


高人啊
作者: robotfan    时间: 2010-9-25 22:22
视频解码还要研究下
作者: xb1019    时间: 2010-9-25 22:35
原帖由 mapgps 于 2010-9-25 21:40 发表
另外, 今天在办公室里成功地透过公司网络远程起飞/降落了一下放在家里的AR.Drone.
老头打电话过来说"你房间里的那个东西怎么自己飞起来了?"

视频显示的Java程序还没写好, 还看不见远程的飞行实况, 没敢做其它的飞 ...



难道你上班出门前吧AR的电源一直插着?
作者: mapgps    时间: 2010-9-25 22:45
原帖由 xb1019 于 2010-9-25 22:35 发表
难道你上班出门前吧AR的电源一直插着?

为做试验, 出门前将电池线插上.
AR.Drone可以待机6小时.
作者: xo    时间: 2010-9-26 02:28
高手高手高高手
作者: 昂藏    时间: 2010-9-26 02:29
凌晨顶贴。
作者: md35    时间: 2010-9-26 08:33
厉害呀
作者: 我爱JET    时间: 2010-9-26 09:22
牛人啊!:em26: :em26: :em26:
作者: ch9688    时间: 2010-9-26 09:45
牛人高人啊!:em26: :em26: :em26:
作者: zxf105    时间: 2010-9-26 09:55
LZ牛人~~~~~~~~~什么时候做好了~可否共享一下~~~~~~
我的AR.Drone有两节电池~
作者: fswwl    时间: 2010-9-26 10:26
这是 一定要顶的贴

什么时候 能在 MW的手机上控制 那就已经满足了我

继续支持  可以搞个团购 AR
作者: ufoxxxx    时间: 2010-9-26 11:04
标题: 回复 11楼 robotfan 的帖子
一定要搞出视频解码 要不看不见 没意义啊
作者: aotsuki    时间: 2010-9-26 11:29
得。。。我又中毒了
作者: mapgps    时间: 2010-9-26 17:57
增加键盘控制
(1楼已更新下 载)

PgUp键: 起飞
PgDn键: 降落
空格键:   悬停

方向键:
            前进
               ^
               |
左进 <---+---> 右进
               |
              v
            后退

Shift + 方向键:
            上升
               ^
               |
左旋 <---+---> 右旋
               |
               v
            下降

按住数字键1~9: 速度(舵量), 1最小, 9最大(满舵), 松开键则恢复缺省值(10%舵量)

[ 本帖最后由 mapgps 于 2010-9-27 00:43 编辑 ]
作者: 昂藏    时间: 2010-9-26 21:51
原帖由 mapgps 于 2010-9-26 17:57 发表
增加键盘控制
(1楼已更新下 载)

PgUp键: 起飞
PgDn键: 降落
空格键:   悬停

方向键:
            前进
               ^
               |
左进  右进
               |
              v
           ...


控制又升级了,顶贴支持。
作者: mahui625primax    时间: 2010-9-27 09:24
支持 搞一个飞行手柄控制的机器 到时可以对战。
作者: ch9688    时间: 2010-9-27 12:53
双手支持!把那失信与模友的X650压下去!
作者: fswwl    时间: 2010-9-28 10:39
要支持  有进步了

希望继续努力
作者: zxf105    时间: 2010-9-28 10:53
可否改成2.4G的遥控器 用的~

如果可以改了~那我就不卖掉它了~~~~
作者: mapgps    时间: 2010-9-28 19:58
原帖由 zxf105 于 2010-9-28 10:53 发表
可否改成2.4G的遥控器 用的~

如果可以改了~那我就不卖掉它了~~~~

       有USB接口的机载发射模块就行.
作者: lgle0501    时间: 2010-9-28 22:24
给AR.Drone配上3G模块 (Sierra AirCard 881U 是3G + GPS 二合一模块), 要飞多远就飞多远 ---- 只要电池够:)


太厉害,电子信鸽了。
作者: 昂藏    时间: 2010-9-29 22:47
电池的续航能力也要解决啊。
作者: robotfan    时间: 2010-10-1 14:06
怎样用外部的无线路由器连接?
作者: mapgps    时间: 2010-10-1 15:35
原帖由 robotfan 于 2010-10-1 14:06 发表
怎样用外部的无线路由器连接?

在2楼已说了:
AR.Drone连接我的WiFi  AP (带WEP加密, 密码12345):
telnet 192.168.1.1
iwconfig ath0 mode managed key s:12345 essid MAPGPS; ifconfig ath0 192.168.0.100 netmask 255.255.255.0 up

通过网络可访问AR.Drone IP地址: 192.168.0.100.
作者: robotfan    时间: 2010-10-1 17:38
我的路由器是TP-LINK TL-WR541G+无线宽带路由器  我路由器IP地址设为192.168.1.8  我PC机有两块网卡:一块100M有线一块54M无线,100M有线接无线宽带路由器的LAN口。54M无线接AR.drone 连接上IP为192.168.1.2  然后在DOS窗口telnet 192.168.1.1 接上 ,输入iwconfig ath0 mode managed key s:19831020 essid robotfan 后提示错误,然后我用iwlist命令也不能无线设备列表,总之就是不能让AR.drone连上我的无线宽带路由器。我的目的是用我的PC机通过无线宽带路由器再控制AR.drone,虽然我有无线网卡但连接很繁琐,是不是非得用无线网卡来配置AR.drone?在配置AR.drone的时候会不会无线设备已经被占用而导致不能连上我的无线路由器?还有我的无线路由器验证是采用WPA-PSK/WPA2-PSK方式的 ok吗?

[ 本帖最后由 robotfan 于 2010-10-1 17:40 编辑 ]
作者: robotfan    时间: 2010-10-1 17:41
有没有AR.Drone telnet命令列表 和解释?
作者: xo    时间: 2010-10-1 17:54
原帖由 robotfan 于 2010-10-1 17:41 发表
有没有AR.Drone telnet命令列表 和解释?


同问,api上的说明说了等于没说
作者: mapgps    时间: 2010-10-1 18:10
AR.Drone telnet 进去后就是Linux终端, 用的是Linux操作系统命令, 网上查着学就是了.

我只用过WEP加密, 没用过WPA.
你的WiFi AP的IP为192.168.1.8, 所以AR.Drone的IP还可以用192.168.1.1(在同一网段):
iwconfig ath0 mode managed key s:19831020 essid robotfan; ifconfig ath0 192.168.1.1 netmask 255.255.255.0 up

注意, 以上两个用分号隔开的命令要一起敲(拷贝)进去, 否则会过河拆桥.

你可用 iwlist scanning 命令列出扫到的所有AP信息(SSID, 加密模式, ...)
作者: robotfan    时间: 2010-10-1 19:45
我无线路由器DHCP开的有影响吗?
作者: mapgps    时间: 2010-10-1 19:57
无线路由器DHCP开着没影响, 只要IP 192.168.1.1 没有被别的机子占了就行.
AR.Drone是以静态IP 192.168.1.1连接无线路由器的.
作者: robotfan    时间: 2010-10-1 19:59
# iwconfig ath0 mode managed key s:19831020 essid robotfan; ifconfig ath0 192.16
8.1.1 netmask 255.255.255.0 up
Error for wireless request "Set Encode" (8B2A) :
    SET failed on device ath0 ; Input/output error.

我显示如上错误!
作者: mapgps    时间: 2010-10-1 20:01
在家里宽带共享路由器(NAT)上设一下端口映射, 就可以从外网访问内网的AR.Drone了.
作者: mapgps    时间: 2010-10-1 20:05
原帖由 robotfan 于 2010-10-1 19:59 发表
# iwconfig ath0 mode managed key s:19831020 essid robotfan; ifconfig ath0 192.16
8.1.1 netmask 255.255.255.0 up
Error for wireless request "Set Encode" (8B2A) :
    SET failed on device ath0 ; Inpu ...

试一下:
iwconfig ath0 mode managed key 19831020 essid robotfan; ifconfig ath0 192.168.1.1 netmask 255.255.255.0 up
"s:" 是在ASCII口令时用的.
作者: robotfan    时间: 2010-10-1 20:14
同样的错误
# iwconfig ath0 mode managed key 19831020 essid robotfan; ifconfig ath0 192.168.
1.1 netmask 255.255.255.0 up
Error for wireless request "Set Encode" (8B2A) :
    SET failed on device ath0 ; Input/output error.
ath0 什么意思?
作者: mapgps    时间: 2010-10-1 20:17
ath0 是AR.Drone上的WiFi设备名.

你试试WEP加密模式.
作者: robotfan    时间: 2010-10-1 20:25
原帖由 mapgps 于 2010-10-1 20:17 发表
ath0 是AR.Drone上的WiFi设备名.

你试试WEP加密模式.


恩 WEP方式就可以了!呵呵 AR.dronede的 AT命令有说明文档吗?在程序里找还是看不清
作者: mapgps    时间: 2010-10-1 20:29
AR.Drone的AT命令没有说明文档, 目前只能在程序里找.
AR.Drone开发者论坛上, 大家也在向 Parrot 诉求文档.
作者: robotfan    时间: 2010-10-1 20:48
还有一个问题 我的AR刚上电时4个电机绿 系统绿  这时候我都能连上   但过一会四个灯都变红色了 我telnet能连  但JAVA程序不能控制
作者: mapgps    时间: 2010-10-1 21:07
4个电机LED灯变红色, 说明进入了Emergency状态.  可能跟你放置AR.Drone的地方有关, 在被子上等, 容易让AR.Drone的超声波测距报错而自动进入Emergency状态. 目前只能插拔电池来解除, 我还没找到软件命令解除.
作者: robotfan    时间: 2010-10-1 21:42
iphone官方软件按一下上面reset就行了  肯定有软件命令
作者: mapgps    时间: 2010-10-1 22:06
分析SDK程序, 终于找到软件命令来解除Emergency状态:
发AT命令 AT*REF=1,290717952

即:
java ARDrone 192.168.1.1 AT*REF=1,290717952
作者: robotfan    时间: 2010-10-1 22:15
呵呵 恭喜 我用VB编写程序的话是否只要发送AT*REF=1,290717952?另外每个命令里的数值有什么具体含义吗?如1,290717952
作者: mapgps    时间: 2010-10-1 22:23
用VB编写程序的话, 只要通过Socket向AR.Drone的UDP端口5556发送字符串:
AT*REF=1,290717952\r
即可

参见我那个ARDrone.java文件前面的注释部分 UI_BIT

把290717952转成二进制:
10001010101000000000100000000
右起第8位bit为1 (Emergency reset)
作者: robotfan    时间: 2010-10-1 22:51
能否设定成让AR每次上电时自动去连接我的路由器,不然麻烦死了 呵呵
作者: mapgps    时间: 2010-10-2 00:13
原帖由 robotfan 于 2010-10-1 22:51 发表
能否设定成让AR每次上电时自动去连接我的路由器,不然麻烦死了 呵呵

可以把那条配制命令加到启动批处理文件中去:
/etc/init.d/rcS
不过要小心, 加错了就有可能"过河拆桥了" ---- WiFi连不上, 你再也进不去了 ---- 只能USB刷机(firmware).

我一直在想把那个USB口利用起来, 作为访问AR.Drone的第二通道. 这样WiFi有问题时, 可以USB进入.
这要找个USB驱动加载到AR.Drone.
作者: mapgps    时间: 2010-10-2 00:24
也可写个脚本程序, 监视WiFi连AP的状态. 如果连接失败, 则将其设回到原来的Ad-Hoc模式, 这样iPhone或其它WiFi机子就可主动连接AR.Drone了(Ad-Hoc模式).
这样有无AP, 都可玩AR.Drone.
作者: robotfan    时间: 2010-10-2 15:37
视频流现在还有说法吗?
作者: mapgps    时间: 2010-10-2 16:15
视频流在研究中, 希望能在这个假期中解决.
作者: robotfan    时间: 2010-10-3 02:40
命令格式能否中文说明下?
AT*REF=<sequence>,<UI>
AT*PCMD=<sequence>,<enable>,<pitch>,<roll>,<gaz>,<yaw>
        (float)0.05 = (int)1028443341                (float)-0.05 = (int)-1119040307
        (float)0.1  = (int)1036831949                (float)-0.1  = (int)-1110651699
        (float)0.2  = (int)1045220557                (float)-0.2  = (int)-1102263091
        (float)0.5  = (int)1056964608                (float)-0.5  = (int)-1090519040
AT*ANIM=<sequence>,<animation>,<duration>
AT*CONFIG=<sequence>,\"<name>\",\"<value>\"
作者: 昂藏    时间: 2010-10-3 08:18
原帖由 mapgps 于 2010-10-2 16:15 发表
视频流在研究中, 希望能在这个假期中解决.


预祝楼主成功。
作者: ch9688    时间: 2010-10-3 08:32
祝楼主成功,牛人一个!
作者: ngaihua    时间: 2010-10-3 17:44
你們都牛.但不及手機方便.除行ip可用行安卓的手機
作者: 昂藏    时间: 2010-10-4 11:59
原帖由 mapgps 于 2010-9-24 23:32 发表
我的AR.Drone今天刚收到, DIY开玩啦!

AR.Drone四轴飞行器内置ARM9 CPU, Linux操作系统, 通过WiFi来控制.
开放的Linux内核使得在AR.Drone增加新设备成为可行. AR.Drone是一个很好的DIY平台.
这也正是我入手AR.Dr ...


现在的程序,没AP,直接用带WIFI的笔电可以控制吗?
作者: mapgps    时间: 2010-10-4 12:01
原帖由 昂藏 于 2010-10-4 11:59 发表


现在的程序,没AP,直接用带WIFI的笔电可以控制吗?

可以
作者: l456789    时间: 2010-10-4 12:21
呵呵,四轴都接入WIFI网络了啊
作者: mapgps    时间: 2010-10-4 13:35
2010.10.04: 在AR.Drone上用tcpdump抓包分析网络数据
有些视频命令发到AR.Drone后, PC端收不到回传的数据, 于是想看看AR.Drone端的控制命令 / 姿态数据 / 视频数据是怎么传送的.
Android也是ARM CPU, 它上面的工具程序也能在AR.Drone上用.
找了个Android上的tcpdump抓包工具: http://www.eecs.umich.edu/~timuralp/tcpdump-arm
通过FTP将其上传到AR.Drone的/data目录下.
telnet 192.168.1.1
# cd /data

# chmod 755 tcpdump-arm
# ./tcpdump-arm -i ath0 -s 0 -w ardrone.pcap
tcpdump-arm: WARNING: can't create rx ring on packet socket 8: 92-Protocol not a
vailable
tcpdump-arm: listening on ath0, link-type EN10MB (Ethernet), capture size 65535 bytes
^C435 packets captured
436 packets received by filter
0 packets dropped by kernel
用Ctrl-C结束抓包.
再通过FTP将ardrone.pcap抓包文件传到PC机上, 可用Wireshark分析.

[ 本帖最后由 mapgps 于 2010-10-4 16:47 编辑 ]
作者: 昂藏    时间: 2010-10-4 22:15
原帖由 mapgps 于 2010-10-4 12:01 发表

可以


好的。

视频又有进展了,楼主加油。
作者: spispispirit    时间: 2010-10-5 00:22
标题: 回复 藤椅 昂藏 的帖子
头像不错~收了~呵呵
作者: chong168    时间: 2010-10-5 07:56
祝楼主成功
作者: mapgps    时间: 2010-10-5 22:12
2010.10.05: Parrot今天发布了AR.Drone的详细开发文档
下 载: https://projects.ardrone.org/attachments/download/207/ARDrone_Developer_Guide.pdf
包括: 飞控AT命令, 飞控数据, 视频流等, 是DIY的福音!
作者: 昂藏    时间: 2010-10-6 12:57
原帖由 mapgps 于 2010-10-5 22:12 发表
2010.10.05: Parrot今天发布了AR.Drone的详细开发文档
下 载: https://projects.ardrone.org/attachments/download/207/ARDrone_Developer_Guide.pdf
包括: 飞控AT命令, 飞控数据, 视频流等, 是DIY的福音!


如果早些发布,楼主能轻松不少吧。
作者: mapgps    时间: 2010-10-6 14:49
原帖由 昂藏 于 2010-10-6 12:57 发表


如果早些发布,楼主能轻松不少吧。

是呀! 之前没文档只好从SDK搞了些逆向工程.
Parrot发布文档, 正是AR.Drone开发者论坛上广大网友敦促的结果.
根据GPL规范, AR.Drone的飞控源码也可能要被公开.
作者: G0dspeed    时间: 2010-10-6 15:44
强悍啊!看样子这个4轴的开发潜力很大嘛!还自带CPU!
作者: 昂藏    时间: 2010-10-6 16:15
原帖由 mapgps 于 2010-10-6 14:49 发表

是呀! 之前没文档只好从SDK搞了些逆向工程.
Parrot发布文档, 正是AR.Drone开发者论坛上广大网友敦促的结果.
根据GPL规范, AR.Drone的飞控源码也可能要被公开.


公开源码,在国内来说,是双刃剑。
作者: xo    时间: 2010-10-6 22:44
原帖由 昂藏 于 2010-10-6 16:15 发表


公开源码,在国内来说,是双刃剑。


支持开源,打击翻版
作者: zimmon    时间: 2010-10-7 16:10
感觉!这个很有扩展性!可以添加很多功能!!!
作者: mapgps    时间: 2010-10-7 22:47
从昨天发布的SDK 1.5里, 用VC9.0编译出一个Windows版的:
https://projects.ardrone.org/att ... rone_win32_demo.zip
试了一下, 在Windows 7 下可看到视频, 但在Windows XP下看不到视频(正在与Parrot讨论该问题).

键盘控制:
8 或 I: 前飞
2 或 K: 后飞
4 或 J: 左飞
6 或 L: 右飞
A 或 +: 上升
Q 或 -: 下降
7 或 U: 逆时针旋转
9 或 O: 顺时针旋转
空格: 起飞 / 降落
Escape 或 Tab: Emergency
F: 水平校正
G: 悬停
作者: mapgps    时间: 2010-10-7 23:32
原帖由 mapgps 于 2010-10-7 22:47 发表
从昨天发布的SDK 1.5里, 用VC9.0编译出一个Windows版的:
https://projects.ardrone.org/attachments/214/ARDrone_win32_demo.zip
试了一下, 在Windows 7 下可看到视频, 但在Windows XP下看不到视频(正在与Parrot讨论 ...

经AR.Drone开发者论坛网友对我编译的那个Windows版程序的测试, 在XP Home Edition下可以看到视频.
但我的笔记本PC是XP Professional, 看不到视频.
作者: zimmon    时间: 2010-10-8 08:04
现在功能厉害啦~应该已经可以用游戏把控制啦~
作者: zimmon    时间: 2010-10-8 08:29
谁有条件!组个团购呗!有LZ的开发,相信很多人都会玩这个的!再买个飞行摇杆!把键位定义一下!那不直接就可以开玩啦?
作者: 昂藏    时间: 2010-10-8 08:55
原帖由 mapgps 于 2010-10-7 23:32 发表

经AR.Drone开发者论坛网友对我编译的那个Windows版程序的测试, 在XP Home Edition下可以看到视频.
但我的笔记本PC是XP Professional, 看不到视频.


XP Professional的SP2,SP3都不行吗?
作者: fswwl    时间: 2010-10-8 09:00
支持团购  

另 我的系统    vista  根本运行不了

提示:   应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志.
作者: zimmon    时间: 2010-10-8 15:34
又详细看拉下楼主的DIY目标!感觉完全能实现!但是要是把那么多设备都放上去!无人机的载重能否实现?已经有老外实现大电池!号称可以飞半个小时!对啦!最后的3G模块应该是USB接口吧!还有!再给楼主提个建议!希望加上无线充电功能!那个就爽啦!像BB的手机那样!!!降落下来开始充电!!!
作者: mapgps    时间: 2010-10-8 19:57
"无线充电功能", 这是个好主意.
还可以利用AR.Drone的视觉识别定点降落,  对准地面一个特制的充电插座(贴定位颜色块), 落下去自动插入充电.

那个WIndows版的程序也支持用游戏柄控制AR.Drone.
我的笔记本WIndows XP可能因为网卡驱动或防火墙问题, 收不到AR.Drone发过来的视频UDP包(个大被分片了--- UDP Fragments issue), 我的一台式机XP则可以.
作者: mapgps    时间: 2010-10-8 20:02
3G模块是USB接口, 二合一的 (3G + GPS).  Google一下"881U" --- 那是一片很小的东东.
AR.Drone也带USB口.
作者: zimmon    时间: 2010-10-8 20:45
就是后来我也考虑啦!可以设计一个漏斗状的在底部有触点可以充电!降落的时候用向下的那个视频控制!
要是很小片的那就最好啦!考虑考虑!那个USB干啥好!!
作者: xo    时间: 2010-10-8 21:28
不要降落使充电,不够技术含量

搞个空中充电!
作者: mapgps    时间: 2010-10-8 21:56
原帖由 fswwl 于 2010-10-8 09:00 发表
我的系统    vista  根本运行不了

提示:   应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志.

可能你的机子上没有VC9.0需要的运行库, 请下 载 vcredist_x86.exe 安装:
http://www.microsoft.com/downloads/en/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=en
作者: fswwl    时间: 2010-10-8 22:16
原帖由 mapgps 于 2010-10-8 21:56 发表

可能你的机子上没有VC9.0需要的运行库, 请下 载 vcredist_x86.exe 安装:
http://www.microsoft.com/downloads/en/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=en

好了   没做开发的  就是不懂  哈 ```
作者: zimmon    时间: 2010-10-9 08:28
原帖由 xo 于 2010-10-8 21:28 发表
不要降落使充电,不够技术含量

搞个空中充电!

老大~这个!有可能实现~但是充电12分钟肯定没办法完成!但是它飞12分钟就下来啦!这个咋办???
作者: mapgps    时间: 2010-10-9 10:53
我的Windows XP问题解决啦! 都是McAfee防毒软件惹的祸!
粘贴一下我在AR.Drone开发者论坛上回的贴:
(, 下载次数: 89)
作者: zimmon    时间: 2010-10-9 17:26
英文不好!汗
猜啦半天!联系上面看懂啦
作者: 昂藏    时间: 2010-10-10 09:41
原帖由 mapgps 于 2010-10-9 10:53 发表
我的Windows XP问题解决啦! 都是McAfee防毒软件惹的祸!
粘贴一下我在AR.Drone开发者论坛上回的贴:
499884


:em24:
作者: mapgps    时间: 2010-10-11 01:00
开始学习写在AR.Drone上运行的程序.
先在Windows XP下交叉编译, 然后拷贝到AR.Drone上运行.

试了个小小Hello程序gps.c:
#include <stdio.h>

int main () {
    printf ("Hello!\nMAPGPS\n");

    return 0;
}


D:\Work\Test\AR.Drone>arm-none-linux-gnueabi-gcc gps.c
D:\Work\Test\AR.Drone>ftp 192.168.0.100
Connected to 192.168.0.100.
220 Operation successful
User (192.168.0.100:(none)):
230 Operation successful
ftp> bin
200 Operation successful
ftp> put gps
200 Operation successful
150 Ok to send data
226 Operation successful
ftp: 5679 bytes sent in 0.00Seconds 5679000.00Kbytes/sec.
ftp>

D:\Work\Test\AR.Drone>telnet 192.168.0.100
BusyBox v1.14.0 (2010-07-02 15:17:06 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
# cd data
# chmod 755 gps
# ./gps
Hello!
MAPGPS
#

GPS模块已经下单买了, 接下来试验与AR.Drone的串口连接, 写程序(gps.c)接收NMEA GPS数据并解析, 再控制AR.Drone ...
作者: 昂藏    时间: 2010-10-11 08:54
原帖由 mapgps 于 2010-10-11 01:00 发表
开始学习写在AR.Drone上运行的程序.
先在Windows XP下交叉编译, 然后拷贝到AR.Drone上运行.

试了个小小Hello程序gps.c:
#include

int main () {
    printf ("Hello!\nMAPGPS\n");
    return 0;
}

...


GPS在室外的信号才好啊。如果要在室外玩得尽兴,留空时间也关键。
作者: zimmon    时间: 2010-10-11 20:47
高手!企盼成功~!问下gps模块哪里买的???正在出差中!!无法实时关注啦!
作者: mapgps    时间: 2010-10-11 21:30
Jcom C3-370C GPS模块, 在网上买的, 68元.
个子很小也很轻, 才10克重. 耗电44mA.
Google 一下 "Jcom C3-370C"
作者: 昂藏    时间: 2010-10-11 22:19
阿莫。。。。
作者: mapgps    时间: 2010-10-12 00:09
说到超长留空时间, 看来只有上燃料电池啦!

搜了一下, 好贵!

120W燃料电池
RECTS-120(价格:16000元)
技术指标:
类型
空冷质子交换膜燃料电池
性能
额定功率
120W*
额定电压
12V
额定电流
10A
单位面积额定输出功率
0.38W/cm2
电压范围
12-20V
效率
大于50
燃料
纯氢
大于99.95
压力
0.3-0.4 Kg
氧化剂/冷却剂
空气
压力
常压
物理特性
重量
580g
体积
0.6L
外型尺寸
102×106×53mm
操作环境
可操作环境温度
-10℃—40
环境湿度
20%-95
电池堆运行温度
-10℃—60
*测试结果是:环境温度10-35,空气相对湿度 RH% =30 - 90RH%下得到的

作者: ch9688    时间: 2010-10-12 07:33
一个字!汗:em17:
作者: mapgps    时间: 2010-10-12 08:13
期待燃料电池的普及, 价格下来, 那将是航模的福音!

前面说到的"空中充电"就变成"空中加油"了 —— 另一架四轴飞上去空中对接加注燃料(甲醇等)。




欢迎光临 5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年) (http://5imx.com/) Powered by Discuz! X3.3