(4)(4.5) 将任务规划器连接到Autopilot

简介: (4)(4.5) 将任务规划器连接到Autopilot

前言

本文解释了如何将 Mission Planner 连接到自动驾驶仪上,以便接收遥测数据并控制飞行器。

!Note

对于已有 ArduPilot 固件的安装,或没有现有 ArduPilot 固件(without existing ArduPilot firmware)的板子,都有单独的连接说明,以便加载固件(Load Firmware)。


1 设置连接

要建立连接,你必须首先选择你要使用的通信方法/通道,然后设置物理硬件和 Windows 设备驱动程序。你可以用 USB 线、遥测无线电(Telemetry Radios)、蓝牙(Bluetooth)、IP 连接等方式连接 PC 和自动驾驶仪。

!Note

你的连接硬件的驱动程序必须存在于 Windows 中,因为这使得你连接的 COM 端口和默认数据速率对 Mission Planner 可用。

998f8d8618ca49b39f469a633b204cab.png

使用 SiK 电台进行连接。

在任务规划器上,使用屏幕右上方的下拉框设置连接和数据速率。


d5a26eb4a4734758a5392cfe7fb04e7b.png

一旦你连接了 USB 或遥测无线电,Windows 将自动为你的自动驾驶仪分配一个 COM 端口号,该端口将显示在下拉菜单中(实际数字并不重要)。连接的适当数据速率也会被设定(通常 USB 连接的数据速率是 115200,无线电连接的速率是 57600)。

选择所需的端口和数据速率,然后按 CONNECT 按钮,连接到自动驾驶仪。连接后,Mission Planner 将从自动驾驶仪下载参数,按钮将变为 DISCONNECT,如图所示:

!Tip


"选择端口"下拉菜单还包含 TCP 或 UDP 端口选项,可用于通过网络连接到自动驾驶仪。

端口选择框下面的"统计......"热链,如果被点击,将提供有关连接的信息,如签名安全(Signing security)是否激活,链接统计等有时,这个窗口会在当前屏幕下方弹出,必须把它拿到前面来才能看到。

连接多个飞行器

额外的连接可以通过右键点击 CONNECT 按钮,从下拉列表中选择连接选项来实现。。



c54c66b1789e45d5a388ff02d638607b.png

可以用连接列表下拉选项加载一个预先写好的连接列表的文件。这是该文件的一个示例格式:

tcp://127.0.0.1:5670

udp://127.0.0.1:14550

udpcl://192.168.1.255:14550

serial:com4:115200

2 故障处理

如果任务规划器无法连接:

  • 检查所选方法是否使用了正确的波特率(USB 的 115200 或无线电/遥测的 57600);

如果通过 USB 连接,在尝试连接之前,要确保开机后几秒钟已经过去。如果你在 bootloader 初始化时间内尝试连接,Windows 可能会得到错误的 USB 信息。在这之后的连接尝试可能需要拔掉 USB 连接再重新插入,然后等待引导程序进入主代码(几秒钟),然后尝试连接。偶尔,如果在引导程序初始化期间尝试连接,MP 必须重新启动;

如果在 Windows 上使用 COM 端口,检查连接的 COM 端口是否存在于 Windows 设备管理器的串行端口列表中;

  • 如果你的自动驾驶仪有一个 F7 或 H7 处理器,并且有 CAN 端口,那么请看下面的章节,复合连接的故障处理(Troubleshooting Composite Connections);
  • 如果使用 USB 端口,请尝试不同的物理 USB 端口;

你还应该确保自动驾驶仪控制器板安装了适当的 ArduPilot 固件,并已正确启动(在 Pixhawk 上有有用的 LEDsSounds,可以告诉你自动驾驶仪的状态)。

如果使用远程链接(非 USB),Mission Planner 连接了,但没有下载参数,或者你不能得到命令,如模式改变的行动,那么自动驾驶仪可能已经打开了签名功能。见 MAVLink2 签名(MAVLink2 Signing)。

3 复合连接的故障处理

带有 F7 或 H7 处理器并有 CAN 接口的自动驾驶仪使用的固件提供两个 USB 接口。一个用于正常的 MAVLink 连接,一个用于 SLCAN 串行连接到 CAN 接口进行配置和固件更新。这被称为复合型 USB 设备。

默认情况下,MAVLink 的 USB 接口是 SERIAL0,而 SLCAN 的 USB 接口是电路板上最高的 SERIALx 端口。目前与 Mission Planner 一起安装的 Windows 驱动程序可以选择使用其中一个,由于 ArduPilot 固件中对 MAVLINK 协议都进行了默认设置,因此无论选择哪一个作为 COM 端口,都能正常工作。

然而,有一种情况是,用户会发现它无法连接到任务规划器下拉框中明显的 COM 端口。这发生在用户不小心将 Windows 驱动作为 MAVLink COM 端口的任何 SERIALx 端口的协议改为 MAVLink 以外的协议。这很容易发生,如果用户从不同的自动驾驶仪使用的飞行器配置中获取现有的参数文件,而该文件的协议已经改变。例如,用户拥有一架非 F7/H7 CAN 自动驾驶仪的飞机,并将其升级为具有该功能的飞机,然后在用新的自动驾驶仪设置飞机时加载他现有的参数文件。一旦参数文件被加载,自动驾驶仪被重新启动,通信就会丢失,无法重新建立。

发生的情况是,Windows 所使用的 SERIALx 端口的协议已被改变。几乎总是这样,这是编号最高的 SERIALx 端口,因为在非 CAN 功能的自动驾驶仪上,

该端口通常被设置为 -1,而 Windows 的 COM 端口驱动程序选择该接口作为 COM 端口,而不是 SERIAL0。

恢复的步骤如下:

  • 进入 Windows 设备管理器,在端口列表中找到自动驾驶仪正在使用的 COM 端口。它将有你最初用于连接 Mission Planner 的 COM 端口#。右键单击,它将显示"更新驱动程序软件"作为选项之一。点击它;


ff26aaa3d0d345049dac02c36fb22728.png

  • 点击"浏览我的电脑......"选项,然后点击"从列表中选择..."选项,你将看到这个屏幕:

  • 向下滚动列表,直到出现"复合USB"选项并点击它;

现在将你的自动驾驶仪重新连接到电脑上,将出现两个 COM 端口。一个会连接(剩下的一个有 MAVLink 协议),另一个则不会。如果你没有连接到其中一个,请尝试另一个。但千万不要断开自动驾驶仪与电脑的连接,否则复合驱动将卸载,你将不得不重新开始;

现在你已经连接到 Mission Planner,把 Serialx 端口的协议改回 2(MAVLink2)。现在你可以断开和重新连接自动驾驶仪,它将只显示一个 COM 端口,从现在开始你应该可以连接。从现在开始不要改变这个协议,除非试图利用 SLCAN 接口。由于 Mission Planner SERIALx 端口不再是正常的 SERIAL0,而是最高的端口,因此可能有点不熟悉,但这并不影响自动驾驶仪的配置和操作。

4 相关话题

Mission Planner Bluetooth Connectivity


相关文章
|
1天前
|
调度 知识图谱
【综合能源】含氢气氨气综合能源系统优化调度【免费】
该程序参考《_基于氨储能技术的电转氨耦合风–光–火综合能源系统双层优化调度》模型,对制氨工厂、风力发电、电制氢、燃气轮机、火电机组等主体进行建模分析,以火电机组启停成本、煤耗成本、弃风成本和购气成本形成的综合成本为目标,程序采用matlab+cplex求解,注释清晰,方便学习!
|
11月前
配电网络扩展规划:考虑使用概率性能源生产和消费概况的决策(Matlab代码实现)
配电网络扩展规划:考虑使用概率性能源生产和消费概况的决策(Matlab代码实现)
|
12月前
|
机器学习/深度学习 安全 调度
开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略
首先,基于闵可夫斯基加法提出了充电站内电动汽车集群模型的压缩方法,并建立了日前可调 度潜力预测模型和实时可调度潜力评估模型。同时,考虑充电站间的非合作博弈,建立了电力零售 市场下充电站的策略投标模型,并基于驻点法将其转化为一个广义 Nash 均衡问题。然后,提出了 基于日前报价和实时报量的两阶段市场交易模式,并与合作投标模式、价格接受模式和集中调度模式进行对比。最后,基于一个 38 节点配电系统进行了仿真。仿真结果表明所提出的可调度潜力计 算方法能够将电动汽车集群封装为广义储能设备,从而降低了模型的维度。基于可调度潜力的策 略投标模型能够挖掘电动汽车的储荷潜力,实现电动汽车与电网的有序互动。
|
数据可视化 BI
【一键启用】生产跟踪|解决制造企业生产管理难题
生产跟踪是一款适用于离散型生产制造企业实现智能生产管理的模板。针对性解决生产进度无从知晓、任务分工不透明、生产过程管控效率低、各类生产报表统计费时费力等痛点问题。
【一键启用】生产跟踪|解决制造企业生产管理难题
铁路机务系统职工教育培训工作中存在的问题
铁路机务系统是我国铁路企业的重要组成部分,承担着我国运输行业的重要任务。员工培训是提升铁路机务系统职工教育效果的重要手段。只有提高了机务系统职工的整体水平,才能确保服务质量。为此,论文分析了铁路机务系统职工教育培训工作中存在的问题,并有重点地分析了提升铁路机务系统职工教育培训的有效对策。
|
传感器 机器人 芯片
【NetDIY智能主控】开发计划
无论是爱好者还是硬件从业者,其最终目的不过是希望快速完成心目中的一个产品而已。当制作者心目中想象的产品越来越复杂,其相关的代码越来越多,其硬件平台的限制便越来越凸显了。
785 0

热门文章

最新文章

  • 1
    流量控制系统,用正则表达式提取汉字
    25
  • 2
    Redis09-----List类型,有序,元素可以重复,插入和删除快,查询速度一般,一般保存一些有顺序的数据,如朋友圈点赞列表,评论列表等,LPUSH user 1 2 3可以一个一个推
    26
  • 3
    Redis08命令-Hash类型,也叫散列,其中value是一个无序字典,类似于java的HashMap结构,Hash结构可以将对象中的每个字段独立存储,可以针对每字段做CRUD
    25
  • 4
    Redis07命令-String类型字符串,不管是哪种格式,底层都是字节数组形式存储的,最大空间不超过512m,SET添加,MSET批量添加,INCRBY age 2可以,MSET,INCRSETEX
    27
  • 5
    S外部函数可以访问函数内部的变量的闭包-闭包最简单的用不了,闭包是内层函数+外层函数的变量,简称为函数套函数,外部函数可以访问函数内部的变量,存在函数套函数
    23
  • 6
    Redis06-Redis常用的命令,模糊的搜索查询往往会对服务器产生很大的压力,MSET k1 v1 k2 v2 k3 v3 添加,DEL是删除的意思,EXISTS age 可以用来查询是否有存在1
    30
  • 7
    Redis05数据结构介绍,数据结构介绍,官方网站中看到
    21
  • 8
    JS字符串数据类型转换,字符串如何转成变量,+号只要有一个是字符串,就会把另外一个转成字符串,- * / 都会把数据转成数字类型,数字型控制台是蓝色,字符型控制台是黑色,
    19
  • 9
    JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
    19
  • 10
    定义好变量,${age}模版字符串,对象可以放null,检验数据类型console.log(typeof str)
    19