Omnibus F4 Pro(板载电流传感器)和 Omnibus F4 AIO(无板载传感器)

./_images/omnibusf4pro.png

以上图片和部分内容由以下提供 myairbot.com

备注

Copter-3.6.0 和 Plane-3.9.0(及更高版本)可支持该电路板

备注

由于闪存限制,该电路板不包含所有 ArduPilot 功能。请参见 固件限制 了解详情。

规格

  • 处理器

    • STM32F405 ARM

  • 传感器

    • InvenSense MPU6000 IMU(加速度、陀螺仪)

    • BMP280 气压计

    • 电压和电流传感器(仅限专业版

  • 接口

    • UARTS

    • 6 或 8 PWM(仅限专业版)输出

    • RC 输入 PWM/PPM,SBUS

    • 用于外部罗盘的 I2C 端口

    • USB 端口

    • 内置 OSD

购买地点

版本

该电路板有许多版本,也有许多克隆版。如果电路板上有用于选择 "SBUS "或 "PPM "RX 输入的焊接跳线,则可获得最佳效果,且不会影响功能/性能。对于所有接收器类型,都应将跳线焊接到 "PPM "选择上。ArduPilot 将自动检测并接受使用此跳线选择的 RX 输入上的任何支持格式(SBUS/PPM/DSM 等)。此外,请确保电路板上有气压计、SD 卡插槽和电流感应电路。

电路板连接

GPS 连接到 UART6(SERIAL3)

Telem 可在 UART 1 (SERIAL1) 上使用

默认情况下,共享的 USART3/I2C 引脚仅启用 I2C 操作,以允许连接外部罗盘或数字空速传感器。

然而,通过设置 BRD_ALT_CONFIG 为 1 时,外部 I2C 连接被禁用,因此 USART3 可作为普通 UART 使用。在参数列表中为 SERIAL2。

电路板的 RSSI 焊盘可用作模拟 RSSI 输入。在Mission Planner地面站中使用引脚 "0 "作为 RSSI 输入引脚。Mission Planner地面站提供了电池电压和电流刻度的默认值,但由于该电路板有多种型号,因此可能需要手动校准。

RSSI 焊盘可重新用作 UART4 的 TX 输出端,而不是模拟 RSSI 输入端。 BRD_ALT_CONFIG 参数设置为 2 或 3。如果 BRD_ALT_CONFIG 参数设置为 3 时,PWM 输出引脚 5 将成为 UART4 的 RX 引脚,以提供完整的附加 UART。此外,如果 BRD_ALT_CONFIG 参数设置为 4,则 UART3 和 UART4 均处于活动状态,可以使用。

如果您想通过电路板的中心轨为舵机输出的电调 BEC 为舵机供电,则应按此处所述移除二极管: https://www.rcgroups.com/forums/showthread.php?2874687否则,直接从电调或独立的 BEC 为舵机独立供电,不连接电路板的舵机输出中心轨。RX in 引脚旁边的 VCC 引脚仅为 5V 输出,不受此修改的影响。

../_images/OMNIBUSF4Pro_remove_diode.jpg

视频输入和输出中心轨上的视频电源通过板载噪声滤波器提供。可通过电路板背面的焊盘选择 ~4.5V(标为 5V)或 VBAT-0.5V (VBAT)。

应焊接 PPM 焊盘/电阻,并移除 "S-BUS "电阻/焊盘,否则 UART1 或 UART6 或 RCIN 将无法工作。

../_images/omnibusf4pro_ardupilot_wiring.jpg

PWM 输出

专业版通过通孔焊盘提供 6 路 PWM 输出,另外两路(PWM7& PWM8)通过 "MOTO "丝网印刷上方的焊盘提供。AIO 版本仅通过通孔焊盘提供 6 路 PWM 输出。

../_images/PWM7-8.jpg

默认 UART 顺序

  • SERIAL0 = 控制台 = USB

  • SERIAL1 = Telemetry1 = USART1

  • SERIAL2 = 未指定(遥测 2 = USART3,如果 BRD_ALT_CONFIG =1)

  • serial3 = gps1 = usart6

  • SERIAL4 = GPS2 = UART4(如果 BRD_ALT_CONFIG = 2 或 3)

  • SERIAL5 = 未指定

  • SERIAL6 = 未指定

串行协议可根据个人喜好进行调整。

Dshot 能力

所有电机/伺服输出均可进行 Dshot 和 PWM 操作。然而,输出的 Dshot 和正常 PWM 操作混合使用会受到组的限制,即如果要为组中的某个输出启用 Dshot,则需要将该组中的所有输出都配置为 Dshot,而不是 PWM 输出。在配置为普通伺服/电机输出时,必须相同(PWM 速率或 Dshot)的输出组有1/2/6、3/4/5、7/8(仅限专业版)。

刷新固件

通常情况下,这些电路板在出售时都预装了 betaflight / INav 固件,如果您想使用 ArduPilot,则需要同时更新固件和引导加载器,因为后续的 ArduPilot 固件升级处理需要一个兼容 ArduPilot 的引导加载器。

可以找到固件文件 这里.OmnibusF4Pro 板使用 omnibusf4pro 固件,AIO 版本使用 omnibusf4 固件。以下示例将使用 pro 版本。除了用于通过 MissionPlanner 进行固件刷新的 .apj 文件外,还有一些 .hex 文件可用于各种实用程序,如 dfu-util 或 betaflight / iNav GUI。您还会发现一个 _bl.hex 文件,其中包含固件和 ArduPilot 兼容引导加载程序(如果您的电路板上还没有)。

可使用 BF 或 iNav GUI 对提供的 _bl.hex 文件进行刷新,这可能是首次将 ArduPilot 安装到电路板上的最便捷方法。

另外,也可以单独刷新引导加载程序。这需要将电路板调入 DFU 模式。可以使用 dfu-util 等工具来闪存引导加载器。一旦有了引导加载器,就可以使用 MissionPlanner 的固件功能完成所有后续固件更新。

进入 DFU 模式

为此,您需要找到电路板上的 DFU 跳线。在大多数电路板上,这是一个小按钮,需要在通过 USB 将电路板连接到电脑时按下:

../_images/omnibusf4_dfu_button.png

安装 dfu-util

  • Linux (Ubuntu)

    苏都 适切-获取 安装 dfu-利用
    
  • OS X

     安装 dfu-利用
    
  • Windows操作系统

    下载 dfu-util 到本地系统,例如在 D:dfu-util.

    将其重命名为 dfu-util.exe

    的路径。 dfu-util.exe 到系统环境变量 路径:"我的电脑"> "属性"> "高级"> "环境变量"> "路径"。请注意,变量 路径 用分号隔开 ;.这将允许在命令提示符下全局执行 dfu-util。

    您可以使用 betaflight 闪存引导加载程序,而不是使用 dfu-util。这里有详细说明: https://github.com/betaflight/betaflight/wiki/Installing-Betaflight 如果在 Windows 下无法将电路板识别为 COM 端口,则必须下载并安装 zadig : http://zadig.akeo.ie/

闪存引导程序

可找到当前目标的引导加载程序二进制文件 这里.

为该电路板类型下载 omnibusf4pro_bl.bin。通过 USB 连接电路板并进入 DFU 模式后,打开终端,使用以下命令行闪存新的引导加载程序:

苏都 dfu-利用 -d 0483:df11 -c 1 -i 0  -a 0  -D omnibusf4pro_bl.箱柜  -s 0x08000000

闪烁完成后,对电路板进行电源循环,你会看到一个稳固的电源 LED 和一个快速闪烁的蓝色 LED。

备注

另外,也可以使用 -bootloader 选项,从 ./waf 源码构建特定板卡的引导加载程序。

Flash ArduPilot

打开Mission Planner地面站,转到初始设置选项卡。确认右上角的 COM 端口与设备管理器中的相同。

./_images/openpilot-revoi-mini-com-ports.png

选择 "加载自定义固件 "并浏览相应的 .apj 文件。闪存完成后,对设备进行电源循环。

./_images/openpilot-revoi-mini-load-firmware.png

恭喜您!您现在可以在 omnibusF4 上运行 ArduPilot 了。您可以使用相同的过程升级到新版本的 ArduPilot。您可以使用 MP 的固件更新功能,或者从源代码中编译自己想要的载具固件,然后将 .apj 文件上传到电路板。

编译 ArduPilot

要构建自己的固件,请参阅有关设置构建环境和编译源代码的说明: 构建代码

配置

使用这些设置启用电池电量监控器 :

BATT_MONITOR=4

然后重新启动。

BATT_VOLT_PIN 12

BATT_CURR_PIN 11

BATT_VOLT_MULT 11.0

batt_amp_pervlt 38.0(注意,该值可能从 18 到 38 不等,取决于具体的电路板制造商......需要校准以匹配实际电流)

如何用继电器引脚触发摄像头

任何 PWM 输出均可用作继电器引脚。参见 GPIO

RELAY2_PIN = 54 表示输出 PWM 5 分配给 RELAY2

可提供硬件定义 这里.