我有一个带有3DR无线电遥测套件的APM 3DR Quad。我想将实时声纳数据发送到我的笔记本电脑(运行Windows 7),以便在其他Arduino Sketch中进行操作。

声纳传感器已连接到Arduino的Analog In通道。处理这些数据以进行高度计算,我想通过使用遥测套件(2个3DR无线电:4个直升机上的1个,我的计算机上的1个)将高度数据发送到计算机上的某种地面站。 br />
我不太确定如何完成这项任务。有什么方法可以与Mission Planner Mav 1.0地面站一起修改源代码(GCS.h或GCS_Mavlink.pde)吗?还是我需要编写一个python模块来完成此任务?

评论

大卫,您好,欢迎来到机器人技术。我们在这里通常很友好并且乐于助人,所以我从您的问题中删去了“谢谢”这一行-这是可以理解的:)。我有一个问题是,当您指的是“无线电遥测”时,您是否在说声纳。

不,我有一个声纳传感器,已连接到Arduino的Analog In通道。处理这些数据以进行高度计算,我想通过使用遥测套件(2个3DR无线电:1个在四轴飞行器上,1个在我的计算机上)将该海拔高度发送到计算机上的某种地面站。 >
在user1702上,您好,评论旨在帮助改善问题和答案,因此最好通过编辑问题来添加评论中要求的信息,这样可以整理(删除)评论,而不会再分散人们对问题的注意力。

您要在便携式计算机上处​​理声纳数据,还是通过便携式计算机将其发送到另一台arduino?

约翰,我想在笔记本电脑上处理数据。我一直在尝试使mavproxy工作,但遇到了一些问题。希望我可以集成一个python模块来解决这个问题。

#1 楼

设置软件以通过MAVLink提取新的自定义传感器数据似乎比应做的难。

第一步是使四轴飞行器发送数据。


首先,需要在mavlink / message_definitions中使用XML定义新的MAVLink消息类型。您可以为message_id组成一个新的未使用的整数。
其次,使用MAVLink生成器生成消息打包/解压缩函数。
然后您需要向ArduCopter / GCS_Mavlink.pde添加代码在data_stream_send中构建并发送您的消息。您在这里确实需要小心一点,因为如果传感器读数停止主循环超过几毫秒,则飞行动力学就会开始下降,尤其是对于小型四边形飞行器或在室内飞行的人(这就是“ gcs_out_of_time”业务的意义所在) )。我要在STREAM_EXTRA3触发器中添加一个新传感器。
重建并上传新的飞行固件。

该项目的另一半在PC上,您需要在此修改地面站软件从遥测流中读取您的MAVLink数据包。我不知道您打算从哪里开始对Mission Planner进行此操作,它似乎是一个非常复杂的软件。但是幸运的是,它会将原始的无线电遥测转储到“ tlog”中,因此您可能能够构建一个完全独立的程序,以从tlog查找新的MAVLink数据包。 (您肯定不希望使用Arduino Sketch,因为Sketch是在Arduino而不是PC上运行的。)

如果这听起来很吓人,您并不孤单!对于我们的室内四边形,由于无法使用GPS或航路点或其他MAVLink功能,因此最终建立了自己的无线电通信协议和“地面站”,而对我们而言,处理MAVLink的复杂性是不值得的。