通过 DroneCAN 传输串行数据

可以通过 DroneCAN 将 Ublox GPS U-Center 等程序的串行通信传递给外设。这样就可以对位于 DroneCAN 接口后面的内部串行连接外设(如 GPS 模块)进行配置和固件更新。

备注

DroneCAN 外围设备必须运行 AP_Periph 固件 1.5.1 版或更高版本,以及 DroneCAN GUI 工具 1.2.22 版或更高版本。

这是通过使用最新版本的 DroneCAN GUI 工具 :

  • 将(飞行)控制器及其目标外设 DroneCAN 连接到电脑。请勿启动本地地面站(如 Mission Planner)。

  • 通过 MAVlink 启动 DroneCAN GUI 工具,连接到(飞行)控制器,然后单击本地节点 ID 复选标记

./_images/dronecan-gui-screen1.jpg
  • 单击面板->串行转发,然后选择要从其转发的外设节点

../_images/dronecan-gui-screen2.jpg
  • 启动 U-Center 或其他适当的工具,使用端口 2001 连接到本地主机,即从 Receiver->Connection->Network Connection 菜单中的 127.0.0.1:2001。可能需要先创建一个新连接。

../_images/dronecan-gui-screen3.jpg

现在,您将连接到应用程序,串行转发对话框中的状态也将改变,以显示连接。您可以检查 DroneCAN 模块的数据流、检查固件版本、更改配置等。这些都是使用 U-Center 或其他应用程序将模块直接连接到 PC 串行端口时可以做的事情。

要通过此链接更改 DroneCAN 外设模块(GPS 等)的配置,您需要将串行转发对话框中的 "UART 锁定 "更改为 "锁定"。这样,连接的程序就可以独占访问模块,从而可以在不被 DroneCAN 外设微控制器覆盖的情况下进行更改。这是永久更改配置和升级固件所必需的。

备注

请注意,重启 DroneCAN 外围设备时,您所做的配置更改仍可能被覆盖。例如,某些 GPS 配置项目会在 GPS 初始化时更改,除非 gps_auto_config 被禁用,但未自动配置的将保持不变。

固件更新

备注

截至本文撰写时,仅在基于 Ublox F9P 的设备上进行过测试。

在上述连接状态下,您还可以更新内部模块的固件(如果有的话),如果模块在作为独立模块连接时通常允许在 DroneCAN 外设之外进行更新。

对于 UBlox F9P GPS,需要使用 Config-> PRT 配置将模块波特率从 230.4KBaud 降为 56.7Kbaud:

  • 在串行转发对话框中选中 uBlox 消息处理复选框。这将监测您将要进行的波特率更改,并更改 DroneCAN 的串行端口波特率,使其与之匹配,以便继续通信。

  • 选择查看->配置->PRT,将波特率改为 57.6K,然后单击发送按钮。

../_images/dronecan-gui-screen4.jpg
  • 通过查看串行转发对话框中 RX 字节数的变化来验证通信是否仍在进行。如果没有,请重复有关 PRT 的更改。

  • 然后使用 U-Center 的 "工具 "菜单,选择 "固件更新",选择固件镜像文件并将波特率设置为 56.7Kbaud。单击底部的 GO 按钮开始更新。

视频

下面的视频展示了这一过程。