停靠模式¶
DOCK 模式可自动操纵飞行器驶向静止的对接目标。目前,我们支持借助连接到配套计算机上的摄像头进行对接。配套计算机会估算出标记的姿态(如:"...")。ArucoMarker/AprilTag)放置在基座上,并发送 降落目标 向飞行器发送 mavlink 信息,然后由精确着陆库 (AC_PrecLand) 来估计对接目标的位置。
使用 OpenMV 摄像机作为辅助计算机来执行自动对接的测试已经取得了成功。不过,任何配备了 RGB 摄像头(如 OpenMV 摄像头、Raspberry Pi、Jetson Nano 等)的配套计算机,只要能估算出放置在对接目标上的标记的姿势并生成 降落目标 可使用 mavlink 向载具(飞行)控制器发送信息。
OpenMV 摄像机¶
OpenMV 相机是一块袖珍相机板,能够执行各种计算机视觉任务。它可以通过 UART 接口传输所需的 mavlink 信息,因此可用作执行自动对接的配套计算机。该相机可直接从以下网站购买 openmv.io
与(飞行)控制器连接¶
配套计算机需要通过 UART 接口与(飞行)控制器的串行端口连接。
如上图所示,将摄像头的 P4、VIN 和 GND 引脚连接到(飞行)控制器的一个串行端口。上图中,OpenMV 摄像机连接到 Pixhawk 的 Telem2 端口。其他配套计算机的连接方案也类似。用户只需将配套计算机上的 TX 引脚连接到(飞行)控制器遥测端口的 RX 引脚,然后给配套计算机供电即可。
设置 serial2_protocol 如果使用串行 2/Telem2,则 = 1(MAVLink);如果连接到其他串行端口,则使用相应的 SERIALx_PROTOCOL 参数
设置 SERIAL2_BAUD = 115
生成 AprilTag 标记¶
OpenMV 摄像机具有检测 AprilTag 的功能。OpenMV 集成开发环境内置了 AprilTag 生成器。使用它生成 AprilTag 的步骤如下:
转到工具 -> 机器视觉 -> AprilTag 生成器 -> TAG36H11 系列(587 个标签 - 推荐)。这将打开一个小对话框。
设置要生成的标记范围。例如,如果您想生成标签号 1,请将最小值和最大值设为 1。 您也可以通过设置相应的最小值和最大值,一次生成一系列标签。
点击确定,将标签保存到所需目录。
成功生成标签后,用户可以将其打印出来并垂直放置在对接目标上。标签的默认打印尺寸为 示例脚本 下一节中的尺寸为 165 毫米。只需将生成的标签图像打印在一张 A4 纸上,就能获得这种尺寸的标签。
提示
标记检测的最大范围 示例脚本 这个范围可以通过使用更大尺寸的标记来增大。在测试过程中,使用 380 毫米的标记牌成功获得了约 4 米的最大范围。有关修改脚本以使用更大标记的说明将在下一节讨论。
向摄像机上传代码¶
OpenMV 摄像机可使用 OpenMV IDE 进行编程。详细的操作说明可参见 这里.
使用微型 USB 电缆将 OpenMV 摄像机连接到电脑。
打开 OpenMV 集成开发环境,点击集成开发环境窗口左下角的连接按钮。
转到文件菜单,创建新文件并复制 此 脚本到编辑器窗口。
设置标记号和标记大小 这里.尺寸必须以毫米为单位从边缘量到边缘(包括黑色边框)。
要将代码上传到摄像机,请转到工具菜单并单击 将打开的脚本保存到 OpenMV Cam(作为 main.py).
完成!现在可以取下微型 USB 电缆,使用外部电源为相机供电。如果脚本运行成功,您应该会看到摄像机上的红色或绿色 LED 指示灯闪烁。当摄像机看到标记时,LED 灯闪烁绿色;当摄像机看不到标记时,LED 灯闪烁红色。
安装到载具上¶
摄像机应安装在载具前部。摄像头板的安装应使带镜头的摄像头边缘向上(即远离地面)。这是我们认为在大多数情况下都会使用的默认设置。不过,我们也支持将摄像机安装在背面和不同的安装方向。如果您想以其他配置安装摄像机,请不要忘记设置相关的 PLND_XXX 相应的参数。
备注
精确着陆库也依靠飞行器的罗盘来构建目标矢量。任何类型的 磁干扰 在对接过程中,载具指南针的偏差可能会导致载具出现不适当的行为。
通过 GCS 设置¶
需要设置以下参数才能使用漫游车上的配套计算机进行精确着陆。
PLND_ENABLED = 1
PLND_TYPE = 1
设置上述参数后,您需要重新启动载具。
如果要以上节所述默认配置以外的任何配置安装摄像机,请适当设置以下参数。
PLND_CAM_POS_X, PLND_CAM_POS_Y, PLND_CAM_POS_Z:摄像机在机身框架中的位置(米)
PLND_ORIENT:摄像头在车身上的安装方向。摄像头可以安装在车身前部或后部
PLND_YAW_ALIGN:摄像机从默认配置到安装配置的旋转角度(以厘度为单位),围绕从镜头指向外侧的轴旋转
对接过程可以通过以下参数进行微调。
DOCK_SPEED:载具在停靠模式下的最大速度限制。
dock_hdg_corr_en:启用停靠时的航向修正。这样,即使在载具不完全位于停靠站前方时切换停靠模式,载具也能正面停靠在停靠站上。请注意,该功能只有在下列情况下才会起作用 DOCK_DIR 参数设置正确。
DOCK_DIR:这是载具在停靠时希望朝向的指南针方向。该方向与停靠站的朝向相反。例如,如果停靠站朝北,则载具应从南面停靠,因此该参数的值应为 180 度。
dock_hdg_corr_wt:该参数定义了载具尝试修正航向的积极程度。
DOCK_STOP_DIST:载具停靠停靠站的距离(米)。
提示
如果出现意外的突然移动,请做好重新控制的准备(将模式切换为保持或手动)。