PX4 Vision 自主开发套件(早期用户版)

PX4 Vision Autonomy DevKit 是一款功能强大、价格低廉的工具包,可用于自动驾驶汽车的计算机视觉开发。

概述

该套件包含一架几乎可以随时飞行的碳纤维四旋翼飞行器,配备了一个 Pixhawk 4 飞行控制器、 UP 核心 和枕骨 结构核心 深度摄像头传感器。载具配有 PX4 软件 避开障碍物预防碰撞 开箱即用“”。开发人员可以使用该工具包试用由 PX4 规避 项目,修改现有代码,或尝试全新的基于计算机视觉的功能。

指南介绍了飞行器准备飞行所需的最低限度的额外设置(安装遥控系统和电池)。指南还介绍了首次飞行以及如何开始修改计算机视觉代码。

购买

购买链接和有关该套件的更多信息 可以在这里找到.

警告和通知

  1. 该套件适用于使用前向摄像头的计算机视觉项目(没有向下或向后的深度摄像头)。因此,它不能(不经修改)用于测试 安全着陆或其他需要朝下摄像头的功能。

  2. 任务中的避障只能在有 GPS 时进行测试(任务使用 GPS 坐标)。在定位模式下,只要 GPS 或光流能够很好地锁定位置,就可以测试防碰撞功能。

  3. 标有 USB1 如果与 USB3 外设(禁用依赖 GPS 的功能,包括任务)。这就是为什么启动映像是在一个 USB2.0 记忆棒。

  4. UP 核心 只能使用电池供电(请勿取下电池)。 UP 核心 电源插座安全盖)。

    警告 - 请勿连接电源端口

了解您的 DevKit

示意图概览

分层示意图

DevKit 包含以下组件:

  • PX4 Vision 无人机套件包含这些内部零件:
    • 1x Pixhawk 4 飞行控制器(带定制 PX4 固件)
    • 1x pmw3901 光流量传感器
    • 1x 距离传感器
    • 1x 结构核心深度摄像头
    • 1x UP 核心 电脑(使用 Ubuntu,避免 PX4)
      • Atom CPU
      • 连接至飞行控制器的 FTDI UART
      • USB1:USB3.0 用于从 USB2.0 记忆棒启动 PX4 避障环境的端口(连接 USB3.0 外围设备可能会干扰 GPS)。
      • USB2:JST-GH 连接器上的 USB2.0 端口。可用于第二摄像头、LTE 等(或开发过程中的键盘/鼠标)。
      • USB3:连接深度摄像头的 USB2.0 JST-GH 端口
      • HDMI:HDMI 输出
      • SD 卡插槽
      • WiFi (连接至 1 号外置天线)。允许计算机访问家庭 WiFi 网络,进行互联网访问/更新。
    • 与飞行控制器连接的 ESP8266(连接到 2 号外部天线)。实现与地面站的无线连接。
  • 一个 USB2.0 记忆棒,内含预刷新软件:
    • Ubuntu 18.04 LTS
    • ROS 旋律
    • 枕骨结构 核心 ROS 驱动器
    • 马弗罗斯
    • PX4 规避
  • 各种电缆、螺旋桨和其他配件(可用于连接其他外设)。

您还需要什么?

除电池和无线电控制系统必须单独购买外,该套件包含所有必要的无人机硬件:

  • 电池
    • 4S 锂电池,带 XT60 母接头
    • 长度小于 115 毫米(安装在电源连接器和 GPS 杆之间)
  • 无线电控制系统
  • 一把 H2.0 六角扳手(用于拧下顶板,以便连接遥控接收器)

此外,用户还需要地面站硬件/软件:

首次设置

  1. 附上 兼容遥控接收器 在载具上安装一个""(不随套件提供):

    • 使用 H2.0 六角扳手工具卸下/拧下顶板(电池所在位置)。
    • 将接收器连接至飞行控制器.
    • 重新装上顶板。
    • 将遥控接收器安装在 UP 核心 载具后部的承载板(使用拉链或双面胶带)。
    • 确保天线远离任何障碍物,并与车架电气隔离(例如,将天线固定在承载板下或载具臂或腿上)。
  2. 装订 将遥控地面和空中单元绑定在一起(如果尚未绑定)。绑定程序取决于所使用的特定无线电系统(请阅读接收机手册)。

  3. 将 GPS 杆升至垂直位置,然后将盖子拧到底板上的支架上。

    升起 GPS 桅杆

  4. 将套件中预置的 USB2.0 记忆棒插入 UP 核心 有标签的端口 USB1 (下面突出显示)。

    UP 核心:USB1 端口

  5. 用充满电的电池为载具供电。

    确保在连接电池之前取下螺旋桨。

  6. 使用以下默认凭据将地面站连接到车载 WiFi 网络(几秒钟后):

    • SSID: pixhawk4
    • 密码 pixhawk4

    WiFi 网络 SSID、密码和其他凭证可在连接后(如果需要)通过使用网络浏览器打开 URL 进行更改: http://192.168.4.1.波特率不得更改为 921600。

  7. 开始 QGroundControl 地面站。

  8. 配置/校准 载具:

    载具到货时应该已经过校准(例如,固件、机身、电池和传感器都已设置好)。不过,您需要校准无线电系统(您刚刚连接的系统),而且通常值得重新进行指南针校准。

  9. (可选) 配置一个 飞行模式选择开关 遥控器上的

    还可以使用 QGroundControl

    我们建议将遥控控制器开关定义为:

    • 位置模式 - 可用于测试防碰撞的安全手动飞行模式。
    • 任务模式 - 运行任务并测试避障能力。
    • 返回模式 - 让飞行器安全返回发射点并着陆。
  10. 按图示旋转安装螺旋桨:

    电机顺序图

    • 螺旋桨的方向可以通过标签确定: 6045 (正常,逆时针)和 6045R (逆时针)。

      螺旋桨识别

    • 用提供的螺旋桨螺母拧紧:

      螺旋桨螺母

驾驶无人机(带规避功能)

完成上述载具设置后:

  1. 连接电池,为载具供电。

  2. 等待启动顺序完成,避让系统启动(载具在启动过程中将拒绝上膛命令)。

    从提供的 USB 记忆棒启动/启动过程大约需要 1 分钟(或从 USB 记忆棒启动/启动过程大约需要 30 秒)。 内存).

  3. 检查避让系统是否正常启动:

    • QGroundControl 通知日志会显示信息: 已连接避让系统.

      QGC 日志显示避让系统已启动

    • 红色激光显示在机身前部。 结构核心 照相机。
  4. 等待 GPS LED 灯变绿。这意味着飞行器已获得 GPS 定位,可以开始飞行!
  5. 将地面站连接到车载 WiFi 网络。
  6. 寻找一个安全的室外飞行地点,最好有一棵树或其他方便测试 PX4 Vision 的障碍物。

  7. 测试 预防碰撞启用 位置模式 并手动飞向障碍物。飞行器应减速,然后停在距离障碍物 6 米以内的地方(距离可以是 变了 使用 CP_DIST 参数)。

  8. 测试 避障创建一个路径被障碍物阻挡的任务。然后切换到 任务模式 运行任务,观察载具绕过障碍物,然后返回计划路线。

使用套件进行开发

下文将介绍如何将套件用作开发计算机视觉软件的环境。

PX4 规避概述

PX4 规避 该系统包括运行在配套计算机(附带深度摄像头)上的计算机视觉软件,该软件可向运行在计算机上的 PX4 飞行算法池提供障碍物和/或路线信息。 飞行控制器.

有关配套计算机视觉/规划软件的文档可在 github 上找到: PX4/回避.该项目提供了许多不同的规划器实现(打包为 ROS 节点):

  • PX4 Vision 套件可运行 地方规划师 默认情况下,这是您自己的软件的推荐起点。
  • 全球规划师 尚未使用该套件进行测试。
  • 着陆规划器 需要一个朝下的摄像头,如果不先修改摄像头的安装,就无法使用。

PX4 和配套电脑通过以下方式交换数据 MAVLink 使用这些接口:

  • 路径规划界面 - 用于在自动模式下执行避让功能的应用程序接口。
  • 碰撞预防界面 - 基于障碍物地图(目前用于防碰撞)的手动定位模式下的载具避障应用程序接口。

在配套计算机上安装图像

您可以在 UP 核心 并从内置内存启动(而不是 U 盘)。

建议这样做,因为从内置内存启动速度更快,还能腾出一个 USB 端口,而且提供的内存可能比 U 盘更大。

从内置存储器启动大约需要 30 秒钟,而从附带的 USB2 记忆棒启动大约需要一分钟(其他记忆卡可能要多花几倍的时间)。

要将 USB 映像闪存到 UP 核心:

  1. 将预先刷新的 USB 驱动器插入 UP 核心 有标签的端口 USB1.
  2. 登录配套计算机 (如上所述)。
  3. 打开终端并运行以下命令将映像复制到内部存储器(eMMC)上。在闪存过程中,终端会提示一些响应。

    CD ~/catkin_ws/src/px4vision_ros sudo ./flash_emmc.sh
    

    保存在 UP 核心 执行此脚本时,计算机将被移除

  4. 拔出 U 盘。

  5. 重新启动载具。重新启动载具 UP 核心 现在,计算机将从内部存储器(eMMC)启动。

启动配套计算机

首先将提供的 USB2.0 记忆棒插入 UP 核心 有标签的端口 USB1然后使用 4S 电池为载具供电。避障系统应在大约 1 分钟内启动(但这取决于所提供的 USB 记忆棒)。

驾驶无人机(带规避功能) 此外,还解释了如何验证避让系统是否处于激活状态。

如果您已经 在配套电脑上安装图像 您只需为载具供电即可(即无需 USB 记忆棒)。避让系统应在 30 秒内启动并运行。

启动后,配套计算机既可用作计算机视觉开发环境,也可用于运行软件。

登录伴侣电脑

登录配套电脑:

  1. 将键盘和鼠标连接到 UP 核心 通过端口 USB2:

    UP 核心:USB2

    • 使用套件中的 USB-JST 电缆获取 USB A 接口

      USB 至 JST 电缆

    • 如果键盘和鼠标有单独的连接器,则可在电缆上安装 USB 集线器。
  2. 将显示器连接到 UP 核心 HDMI 端口。

    UP 核心:HDMI 端口

    然后,Ubuntu 登录屏幕就会出现在显示器上。

  3. 登录 UP 核心 使用证书:
    • 用户名 px4vision
    • 密码 px4vision

开发/扩展 PX4 规避功能

PX4 Vision’s UP 核心 计算机为扩展 PX4 Avoidance 软件(更广泛地说,是使用 ROS2 开发新的计算机视觉算法)提供了一个完整且配置齐全的环境。您应在载具上开发和测试软件,将其同步到自己的 git 仓库,并在 github 上与更广泛的 PX4 社区分享任何修正和改进。 PX4/Avoidance repo.

柔荑花序工作区位于 ~/catkin_ws并为运行 PX4 避障本地规划器进行了预配置。启动文件 (避免发射)在 px4vision_ros 包(修改该文件可更改启动的规划器)。

启动时会启动避让软件包。若要集成不同的规划器,则需要禁用此功能。

  1. 使用以下命令禁用回避程序:

    systemctl stop avoidance.service
    

    您只需重启机器即可重新启动服务。

    其他有用的命令包括

    # 重新启动服务
    systemctl start avoidance.service
    
    # 禁用服务(停止服务,启动后不重启)
    systemctl 关闭 避免.服务
    
    # 启用服务(启动服务并启用启动后重启)
    systemctl 以便 避免.服务
    
  2. 避障软件包的源代码见 https://github.com/PX4/avoidance 位于 ~/catkin_ws/src/avoidance.

  3. 修改代码要获取最新的避险代码,请从避险软件仓库中提取代码:

    git pull origin git checkout origin/master
    
  4. 构建软件包
    catkin build local_planner
    

ROS 工作区位于 ~/catkin_ws.有关在 ROS 中开发和使用 catkin 工作区的参考信息,请参见 ROS 柔荑教程.

开发 PX4 固件

该套件用于创建计算机视觉软件,该软件可在配套计算机上运行,并与 PX4’ 灵活的路径规划和防碰撞接口集成。

您还可以修改 PX4 本身,以及 将其安装为自定义固件:

  • 您需要连接 QGroundControl 到套件'的 Pixhawk 4 通过 USB 以更新固件。
  • 选择 PX4 Vision DevKit 加载新固件后的机身: 机身选择 - PX4 Vision DevKit

不修改 PX4 代码 用得上 以满足大多数计算机视觉用例。要讨论接口或如何集成其他功能,请加入 PX4 频道:#computer-vision.

其他发展资源

如何获得技术支持?

有关硬件问题,请致电 Holybro: [email protected].

有关软件问题,请使用 社区支持渠道:

© PX4 开发团队。许可证 CC BY 4.0            已更新:2024-02-13 22:49:01

与" "匹配的结果"

    没有与""匹配的结果"