# ARK CANnode

ARK CANnode (打开新窗口) 是一个开源的通用 UAVCAN 该节点包括一个 6 自由度 IMU。其主要用途是在 CAN 总线上使用非 CAN 传感器(I2C、SPI、UART)。它还具有 PWM 输出,可扩展载具控制输出的数量和物理距离。

ARK CANnode

# 购买地点

从以下网站订购该模块

# 规格

  • 开源原理图和 BOM (打开新窗口)
  • 运行 PX4 开放源码固件 (打开新窗口)
  • 支持 UAVCAN 固件更新
  • 动态 UAVCAN 节点枚举
  • 传感器
    • PixArt PAW3902 光学流量传感器
      • 在 9 勒克斯的超低照度条件下跟踪
      • 工作范围广,从 80 毫米至 30 米
      • 最高 7.4 拉德/秒
    • 电路板内置 40mW 红外 LED,可改善弱光下的运行性能
    • Broadcom AFBR-S50LV85D 飞行时间距离传感器
      • 集成 850 nm 激光光源
      • 视场角 (FoV) 为 12.4° x 6.2°,32 个像素
      • 典型距离可达 30 米
      • 可在高达 200k Lux 的环境光下运行
      • 在各种路面条件下都能很好地工作
      • 发射器光束为 2° x 2°,可照亮 1 至 3 个像素
    • 博世 BMI088 6 轴 IMU 或 Invensense ICM-42688-P 6 轴 IMU
  • stm32f412cgu6 mcu
    • 1MB 闪存
  • 两个 Pixhawk 标准 CAN 连接器
    • 4 引脚 JST GH
  • Pixhawk 标准 I2C 连接器
    • 4 引脚 JST GH
  • Pixhawk 标准 UART/I2C 连接器(基本 GPS 端口)
    • 6 引脚 JST GH
  • Pixhawk 标准 SPI 连接器
    • 7 引脚 JST GH
  • PWM 连接器
    • 10 引脚 JST JST
    • 8 PWM 输出
    • 与 Pixhawk 4 PWM 连接器引脚输出匹配
  • Pixhawk 标准调试连接器
    • 6 引脚 JST SH
  • 外形小巧
    • 3 厘米 x 3 厘米 x 1.3 厘米
  • LED 指示灯
  • 美国建造
  • 电源要求
    • 5V
    • 电流取决于连接的外设

# 接线/连接

ARK CANnode 使用 Pixhawk 标准 4 针 JST GH 电缆连接至 CAN 总线。将其他节点插入 ARK CANnode 的第二个 CAN 接口,即可连接多个 CAN 节点。

有关 UAVCAN 接线的一般说明也可在以下网站找到 UAVCAN > 接线.

有关将传感器连接到 ARK CANnode 的问题,请参阅有关将传感器连接到 Pixhawk 飞行控制器的各个传感器的文档。

# PX4 设置

# 启用 UAVCAN

要使用 ARK CANnode 板,请将其连接到 Pixhawk CAN 总线,并通过设置参数启用 UAVCAN 驱动程序 UAVCAN_ENABLE2 进行动态节点分配(或 3 如果使用 UAVCAN 电子调速器)(UAVCAN 配置的详细说明见 UAVCAN > PX4 配置.

步骤如下

启用后,将在启动时检测模块。

# PX4 配置

根据连接到 ARK CANnode 的传感器,您需要在飞行控制器上启用每个用户,参数如下 UAVCAN_SUB_*uavcan_sub_aspd, uavcan_sub_baro 等等)。

在 ARK CANnode 上,您可能需要配置以下参数:

参数 说明
CANNODE_TERM CAN 内置总线终端。

# LED 的含义

当 ARK CANnode 正在闪烁时,您会看到红色和蓝色 LED 灯;如果运行正常,则会看到纯蓝色 LED 灯。

如果 LED 显示为红色,则表示出错,应检查以下内容:

  • 确保飞行控制器已安装 SD 卡。
  • 确保 ARK CANnode 具有 ark_cannode_canbootloader 在闪光前安装 默认方舟代码.
  • 删除 SD 卡根目录和 ufw 目录中的二进制文件,并尝试重新构建和闪存。

# 构建 ARK CANnode 固件

ARK CANnode在销售时附带了最新的固件版本。想要更新到最新版本的开发人员可以使用正常的 PX4 工具链和源代码自行构建和安装。

步骤如下

  1. 安装 PX4 工具链.

  2. 使用以下命令克隆 PX4-Autopilot 信号源,包括 ARK CANnode Git:

    git clone https://github.com/PX4/PX4-Autopilot --recursive cd PX4-Autopilot
    
  3. 构建 ARK CANnode 固件:

    使方舟成为默认禁飞区
    
  4. 这将在 build/ark_cannode_default 名为 XX-X.X.XXXXXXXX.uavcan.bin.将此二进制文件放到飞行控制器 SD 卡的根目录下,以闪存 ARK CANnode。下次安装 SD 卡并为飞行控制器供电时,ARK CANnode 将自动闪存,您会发现二进制文件已不在根目录中,而是出现了一个名为 83.bin 在 SD 卡的 ufw 目录中。

    备注

    如果通电时飞行控制器中没有 SD 卡,ARK CANnode 将无法启动。

# 更新 ARK CANnode 引导加载程序

ARK CANnode 预装了引导加载程序。不过,您可以在 PX4-Autopilot 环境中对其进行重建和重新刷新。

步骤如下

  1. 构建 ARK CANnode 引导加载器固件:
    make ark_cannode_canbootloader
    

    备注

    这将设置您的 launch.json 文件。如果使用 Black Magic Probe 和 VS 代码,请确保更新 BMPGDBSerialPort 文件中的调试器所连接的正确端口。在 MacOS 上,端口名称应如下所示 cu.usbmodemE4CCA0E11.

  2. 将 ARK CANnode 与任何支持使用 GNU Project Debugger (GDB) 的串行线调试 (SWD) 设备(如 Black Magic Probe)连接,然后通过其中一个 CAN 端口为 ARK CANnode 供电。
  3. 将 ARK CANnode 闪存为 ark_cannode_canbootloader.要做到这一点 VS 编码你应该看到 CMake: [ark_cannode_canbootloader]:就绪 的底部栏上的 VS 编码表明您要闪存的内容。然后选择 开始调试 的 "运行和调试 "窗口中 VS 编码 然后选择 继续 在第一个断点之后。
  4. 刷新引导加载程序后,您就可以构建并刷新 ARK CANnode 固件了。 默认方舟代码 如上所述。