【发布时间】:2018-05-04 20:57:00
【问题描述】:
操作系统:Ubuntu 16.04
我正在尝试创建一个可以控制多个 Ryze Tello 无人机的 Python 程序。这些是非常简单的无人机,可以通过 Wi-Fi UDP 端口将计算机连接到它并通过文本命令发送来控制。
例如,这是一个简单的程序,在连接到无人机的 Wi-Fi 网络后,它会简单地向无人机发送“起飞”命令。
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto('command', 0, ('192.168.10.1', 8889))
sock.sendto('takeoff', 0, ('192.168.10.1', 8889))
现在,我的目标是能够一次向多架此类无人机发送命令(例如,让它们执行计划好的“跳舞”程序)。我有多个连接到我的计算机的 Wi-Fi 加密狗,每个都连接到一个单独的无人机。但是,问题是每架无人机都有固定的 IP 和端口,如上图所示。我曾尝试通过 SSH 连接到无人机以更改其 IP,但没有成功,支持热线也不确定 Tello 是否可行。但是,由于在我的计算机上仍然对连接进行了不同的处理,因此必须有一种方法可以分别向无人机发送命令。至于如何,我不确定,因此我为什么要寻求帮助。
【问题讨论】: