Omnibus F4 Pro(板载电流传感器)和 Omnibus F4 AIO(无板载传感器)¶
备注
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
购买地点¶
可从多个零售商处购买,包括 myairbot.com
版本¶
该电路板有许多版本,也有许多克隆版。如果电路板上有用于选择 "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 输出,不受此修改的影响。
视频输入和输出中心轨上的视频电源通过板载噪声滤波器提供。可通过电路板背面的焊盘选择 ~4.5V(标为 5V)或 VBAT-0.5V (VBAT)。
应焊接 PPM 焊盘/电阻,并移除 "S-BUS "电阻/焊盘,否则 UART1 或 UART6 或 RCIN 将无法工作。
PWM 输出¶
专业版通过通孔焊盘提供 6 路 PWM 输出,另外两路(PWM7& PWM8)通过 "MOTO "丝网印刷上方的焊盘提供。AIO 版本仅通过通孔焊盘提供 6 路 PWM 输出。
默认 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 将电路板连接到电脑时按下:
安装 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 端口与设备管理器中的相同。
选择 "加载自定义固件 "并浏览相应的 .apj 文件。闪存完成后,对设备进行电源循环。
恭喜您!您现在可以在 omnibusF4 上运行 ArduPilot 了。您可以使用相同的过程升级到新版本的 ArduPilot。您可以使用 MP 的固件更新功能,或者从源代码中编译自己想要的载具固件,然后将 .apj 文件上传到电路板。
编译 ArduPilot¶
要构建自己的固件,请参阅有关设置构建环境和编译源代码的说明: 构建代码
配置¶
使用这些设置启用电池电量监控器 :
BATT_MONITOR=4
然后重新启动。
BATT_VOLT_MULT 11.0
batt_amp_pervlt 38.0(注意,该值可能从 18 到 38 不等,取决于具体的电路板制造商......需要校准以匹配实际电流)
如何用继电器引脚触发摄像头¶
任何 PWM 输出均可用作继电器引脚。参见 GPIO
RELAY2_PIN = 54 表示输出 PWM 5 分配给 RELAY2
可提供硬件定义 这里.