DEV/TTYO0在AR无人机2.0中使用 - 反向工程



我读了一篇有趣的文章,内容涉及鹦鹉的AR无人机2.0编码。在此代码中,他们我们会与无人机交谈。因此,代码是从创建到/dev/ttyO0

的流开始的

我刚开始了解有关Linux功能背景的更多信息,并想知道:

  • 您最初如何发现正在使用dev/ttyo0,例如在Linux上运行的无人机上。我认为这是一种逆向工程,但是正在使用哪些工具或命令?
  • 当我想对像无人机这样的系统进行反向工程时,找出发送了哪些命令时,是否有"嗅探器"之类的东西来找出正在发送的命令?

我知道这不是一个简短而简单的答案,但是我很乐意了解更多有关此信息的信息,或者找出在哪里可以学习的。但是最初,有关找到合适设备的问题将非常有趣。

谢谢

我不知道您问题第一部分的答案,但我可以解决第二部分。

是的,AR.Drone使用TCP和UDP用于无人机和控制器应用之间的所有通信,包括命令,遥测和视频。您可以使用标准网络嗅探器,例如TCPDUMP或Wireshark。当您连接到无人机时,其默认IP地址为192.168.1.1。配置嗅探器以捕获与该地址的所有流量。这是您可以看到的一些亮点:

  • 命令/"在" comms,port 5556上的udp:此端口用于将命令发送到无人机。命令在ASCII中,看起来像AT*...,例如AT*REF=7,256AT*PCMD=7,1,-1110651699,0,0,1050253722。Ar.Drone开发人员指南的第6节描述了大多数(但不是全部)命令。

  • NAVDATA,端口5554上的UDP:这是从包含传感器数据和有关无人机状态的无人机发送的二进制编码数据。它包括气压,高度估计,位置估计,飞行模式和GPS(如果您的无人机配备了一个)。由于您提到了javaScript,因此在节点ar-Drone库中的文件parsenavdata.js包含parse navdata的代码。

  • 视频,端口5555上的TCP:这是无人机中的实时视频,以几乎但并非奇异的H264格式称为铺路。该格式记录在开发人员指南的第7.3节中,大多数与AR.RONSERONE的库可以解析格式。

您可能会注意到的另一件事:

  • ftp:官方控制器应用程序使用标准FTP将埃菲默里斯文件发送给无人机,其中包含有助于GPS获得更快锁定的信息。

相关内容

  • 没有找到相关文章