Skip to content

PX4视觉自主开发套件

PX4视觉自主开发套件是一款功能强大且价格亲民的套件,用于在自动驾驶飞行器上开展计算机视觉开发。

整体概览

该套件包含一架几乎可直接飞行的碳纤维四轴飞行器,配备了Pixhawk 4或Pixhawk 6C(V1.5版本)飞行控制器、UP Core配套计算机(4GB内存与64GB eMMC)以及Occipital Structure Core深度相机传感器。

本指南介绍让飞行器准备好飞行所需的最少额外设置(安装遥控系统和电池),还涵盖首次飞行以及如何着手修改计算机视觉代码等内容。

WARNING

PX4不再支持本文档中描述的避障软件:

套件中包含一个USB闪存盘,其中有基于该软件的避障功能实现示例。此示例仅作为参考,用于展示该平台的能力。

TIP

对于开发和测试视觉解决方案(不依赖旧有集成),本套件仍强烈推荐。

购买渠道

PX4视觉指南内容

注意事项与通知

  1. 本套件适用于使用前置摄像头的计算机视觉项目(它没有向下或后置深度摄像头)。因此,在不进行修改的情况下,无法用于测试需要向下摄像头的功能。
  2. 任务中的避障功能仅在有GPS信号时才可测试(任务使用GPS坐标)。在位置模式下,只要通过GPS或光流获得良好的位置锁定,就可以测试防撞功能。
  3. 标记为“USB1”的端口如果连接USB3外设,可能会干扰GPS(需禁用包括任务在内的依赖GPS的功能)。这就是为什么启动镜像放在USB2.0记忆棒上。
  4. PX4 Vision v1且ECN编号为010或更高(载板RC05及以上),UP Core既可以通过直流插头供电,也可以使用电池供电。 RC编号ECN编号
  5. 所有PX4 Vision v1.5的UP Core既可以通过直流插头供电,也可以使用电池供电。

WARNING

对于PX4 Vision v1且ECN编号低于010/载板低于RC04的情况,UP Core仅应使用电池供电(请勿移除UP Core电源插座的安全盖)。此条不适用于PX4 Vision v1.5。 警告 - 请勿连接电源端口

套件内容

INFO

PX4 Vision V1和V1.5的区别可在此处查看。

PV4视觉v1.5

PX4 Vision V1的套件内容可在PX4 v1.13文档此处查看。

PX4视觉开发套件包含以下组件:

  • 核心组件
    • 1个Pixhawk 4或Pixhawk 6C(v1.5版本)飞行控制器
    • 1个PMW3901光流传感器
    • 1个TOF红外距离传感器(PSK - CM8JL65 - CC5)
    • 1个Structure Core深度相机:
      • 160度广角视觉相机
      • 立体红外相机
      • 板载IMU
      • 强大的NU3000多核深度处理器
    • 1台UP Core计算机(4GB内存与64GB eMMC,预装Ubuntu和PX4避障软件):
      • Intel® Atom™ x5 - z8350(最高1.92 GHz)
      • 兼容操作系统:微软Windows 10完整版、Linux(ubilinux、Ubuntu、Yocto)、Android
      • FTDI UART连接到飞行控制器
      • “USB1”:USB3.0 A型端口,用于从USB2.0闪存盘启动PX4避障环境(连接USB3.0外设可能干扰GPS)。
      • “USB2”:JST - GH接口的USB2.0端口。可用于连接第二个摄像头、LTE等(或开发期间连接键盘/鼠标)。
      • “USB3”:连接深度相机的USB2.0 JST - GH端口
      • “HDMI”:HDMI输出
      • SD卡插槽
      • WiFi 802.11 b/g/n @ 2.4 GHz(连接到外部天线#1)。使计算机能够接入家庭WiFi网络以访问互联网/进行更新。
  • 机械规格
    • 框架:全5毫米3K碳纤维斜纹布材质
    • 电机:T - MOTOR KV1750
    • 电调:BEHEli - S 20A电调
    • GPS:M8N GPS模块
    • 电源模块:Holybro PM07
    • 轴距:286毫米
    • 重量:不含电池或螺旋桨为854克
    • 遥测:连接到飞行控制器的ESP8266(连接到外部天线#2)。实现与地面站的无线连接。
  • 一个预闪存软件的USB2.0闪存盘,包含:
    • Ubuntu 18.04 LTS
    • ROS Melodic
    • Occipital Structure Core ROS驱动程序
    • MAVROS
    • PX4避障
  • 各种线缆、8个螺旋桨、2个电池绑带(已安装)及其他配件(可用于连接额外外设)。

还需准备什么

套件包含了除电池和遥控系统外所有必备的无人机硬件,这两项需另行购买:

  • 电池
    • 4S锂聚合物电池,带XT60母接头
    • 长度小于115毫米(以适配电源接头和GPS天线之间的空间)
  • 遥控系统
  • 一个H2.0内六角扳手(用于拧下顶板,以便连接遥控接收器)

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

首次设置

  1. 兼容的遥控接收器连接到飞行器(套件未提供):
    • 使用H2.0内六角扳手工具拧下(移除)顶板(电池放置处)。
    • 将接收器连接到飞行控制器
    • 重新安装顶板。
    • 将遥控接收器安装在飞行器后部的UP Core载板上(使用扎带或双面胶带)。
    • 确保天线无任何遮挡,并与框架电气隔离(例如,将它们固定在载板下方或飞行器的臂/腿上)。
  2. 绑定遥控地面和空中单元(若尚未完成)。绑定步骤取决于所使用的具体遥控系统(请阅读接收器手册)。
  3. 将GPS天线升高到垂直位置,并将盖子拧到底板上的固定座上。(v1.5版本无需此步骤) 升高GPS天线
  4. 将套件中预成像的USB2.0闪存盘插入UP Core标记为“USB1”的端口(如下突出显示)。 UP Core:USB1端口
  5. 使用充满电的电池为飞行器供电。

INFO

连接电池前请确保移除螺旋桨。

  1. 几秒钟后,使用以下默认凭据将地面站连接到飞行器的WiFi网络:
    • SSID:pixhawk4
    • 密码:pixhawk4

TIP

连接后(如有需要),可通过使用网页浏览器打开URL:http://192.168.4.1来更改WiFi网络SSID、密码和其他凭据。波特率不得从921600更改。

  1. 在地面站启动QGroundControl。
  2. 配置/校准飞行器:

INFO

飞行器应已预先校准(例如,固件、机架、电池和传感器均已设置好)。不过,您需要校准刚连接的遥控系统,并且重新进行指南针校准通常也是有必要的。

- [校准遥控系统](../config/radio.md)
- [校准指南针](../config/compass.md)
  1. (可选)在遥控器上配置飞行模式选择开关

INFO

也可以使用QGroundControl更改飞行模式。

我们建议为以下模式定义遥控器开关: - 位置模式 - 一种安全的手动飞行模式,可用于测试防撞功能。 - 任务模式 - 运行任务并测试避障功能。 - 返航模式 - 使飞行器安全返回发射点并着陆。 10. 按所示旋转方向安装螺旋桨: 电机顺序图 - 螺旋桨方向可通过标签确定:“6045”(正常,逆时针)和“6045R”(反向,顺时针)。 螺旋桨标识 - 使用提供的螺旋桨螺母拧紧: 螺旋桨螺母

带避障功能飞行无人机

完成上述飞行器设置后:

  1. 连接电池为飞行器供电。
  2. 等待启动序列完成且避障系统启动(启动期间飞行器将拒绝解锁命令)。

TIP

从提供的USB闪存盘启动/启动过程大约需要1分钟(或从内部存储器启动需要30秒)。

  1. 检查避障系统是否已正确启动:
    • QGroundControl通知日志显示消息:“避障系统已连接”。 QGC日志显示避障系统已启动
    • Structure Core相机前部可见红色激光。
  2. 等待GPS指示灯变绿。这意味着飞行器已获得GPS定位,可准备飞行!
  3. 将地面站连接到飞行器的WiFi网络。
  4. 找一个安全的户外飞行地点,理想情况下有一棵树或其他方便的障碍物,用于测试PX4视觉功能。
  5. 要测试防撞功能,启用位置模式并手动飞向障碍物。飞行器应在距离障碍物6米内减速并停止(距离可使用CP_DIST参数更改)。
  6. 要测试避障功能,创建一个路径被障碍物阻挡的任务。然后切换到任务模式运行任务,观察飞行器绕过障碍物并返回规划路线。

使用套件进行开发

以下部分说明如何使用该套件作为开发计算机视觉软件的环境。

PX4避障概述

WARNING

此功能已不再受PX4支持](../computer_vision/path_planning_interface.md)。

PX4避障系统由运行在配套计算机(连接深度相机)上的计算机视觉软件组成,该软件向运行在飞行控制器上的PX4飞行堆栈提供障碍物和/或路线信息。

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

  • PX4视觉套件默认运行“localplanner”,这是您开发自己软件的推荐起点。
  • “globalplanner”尚未在此套件中测试。
  • “landing planner”需要向下的摄像头,不修改摄像头安装方式无法使用。

PX4和配套计算机通过MAVLink使用以下接口交换数据:

  • 路径规划接口 - 用于在自动模式下实现避障功能的API。
  • 防撞接口 - 基于障碍物地图在手动位置模式下实现飞行器防撞的API(目前用于防撞功能)。

在配套计算机上安装镜像

您可以将镜像安装在UP Core上并从内部存储器启动(而不是使用USB闪存盘)。 这是推荐做法,因为从内部存储器启动速度更快,还能释放一个USB端口,并且可能比USB闪存盘提供更多内存。

INFO

从内部存储器启动大约需要30秒,而从提供的USB2闪存盘启动大约需要一分钟(其他闪存卡可能需要几倍的时间)。

要将USB镜像刷入UP Core:

  1. 将预闪存的USB驱动器插入UP Core标记为“USB1”的端口。
  2. 登录配套计算机(如上文所述)。
  3. 打开终端并运行以下命令将镜像复制到内部存储器(eMMC)。在刷写过程中,终端会提示输入一些响应。
sh
cd ~/catkin_ws/src/px4vision_ros/tools
sudo./flash_emmc.sh

INFO

执行此脚本时,UP Core计算机中保存的所有信息都将被删除。

  1. 拔出USB闪存盘。
  2. 重启飞行器。此时UP Core计算机将从内部存储器(eMMC)启动。

启动配套计算机

首先将提供的USB2.0闪存盘插入UP Core标记为“USB1”的端口,然后使用4S电池为飞行器供电。避障系统应在大约1分钟内启动(不过这取决于所提供的USB闪存盘)。

TIP

带避障功能飞行无人机部分还介绍了如何验证避障系统是否已激活。

如果您已在配套计算机上安装镜像,则只需为飞行器供电(即无需USB闪存盘)。避障系统应在大约30秒内启动并运行。 启动后,配套计算机既可用作计算机视觉开发环境,也可用于运行软件。

登录配套计算机

要登录配套计算机:

  1. 通过“USB2”端口将键盘和鼠标连接到UP Core: UP Core:USB2
    • 使用套件中的USB - JST电缆获得USB A型接头。 USB转JST电缆
    • 如果键盘和鼠标有单独的接头,可以在电缆上连接一个USB集线器。
  2. 将显示器连接到UP Core的HDMI端口。 UP Core:HDMI端口 此时Ubuntu登录屏幕应出现在显示器上。
  3. 使用以下凭据登录UP Core:
    • 用户名:px4vision
    • 密码:px4vision

开发/扩展PX4避障功能

PX4视觉套件的UP Core计算机提供了一个完整且完全配置好的环境