MAV链接特定消息的侦听器



使用MAVLink路由器,我创建了三个本地主机端点(图像的左下角窗口(,我可以通过MAVLink检查器中的QGroundControl端口14550查看实时数据,但我似乎无法在listen.py脚本中获取数据。我没有看到wireshark上有任何东西进入指定的端口,但我认为这可能是因为它是通过mavlink协议中的sik遥测无线电进入的。

侦听脚本

左下角是我的车载电脑运行mavlink路由器

OP现在可能已经解决了这个问题,但为其他有这个问题的人负责。在侦听器脚本中,您传递了一个连接字符串";udp:localhost:14552";。您的mavink路由器实例表明UDP端点是客户端。这意味着您的侦听器和mavlink路由器udp端点都在侦听mavlink数据包。Mavlink路由器不会向这些客户端端点发送Mavlink数据包,直到它们从预期的ip和端口接收到Mavlink心跳。

您应该将侦听器pymavlink连接字符串更改为">udpout:localhost:14552,让脚本在线程中发送mavlink心跳,或者在无限循环中每秒发送一次。

TL;DR将您的连接字符串设置为udpout,使其成为";udp服务器";并发送mavlink心跳。Mavlink路由器应该在这些心跳进入后立即开始响应消息。

或者,您可以将您的mavlink路由器端点设置为";udp服务器";通过更改mavlink路由器的conf文件来实现端点。类型";mavlink routerd-help;以了解如何将端点设置为";听";或者在不首先接收心跳的情况下发送mavlink消息。

希望能帮助

最新更新