ArduPilot固件使用指南


本章将描述7-Nano运行ArduPilot固件时需要注意的要点,除本章外您可能还需要阅读以下内容:

加载固件

7-Nano®控制器支持ArduPilot,下面主要讲解如何加载ArduPilot固件。

[!TIP] 7-Nano支持4.5.6及以上版本固件.

在线烧录固件:

将7-Nano连接到电脑,打开地面站,点击初始设置界面》安装固件(CUAV-7-Nano)》等待烧录完成.

ardupilot firmware

本地烧录固件:

请先下载固件到本地:

多旋翼

传统直升机

固定翼和垂起

无人车

无人船

选择加载自定义固件》选择下载的固件》等待烧录完成

ardupilot firmware2

UART映射

  • SERIAL0 -> USB
  • SERIAL1 -> UART7 (TELEM1)
  • SERIAL2 -> UART5 (TELEM2)
  • SERIAL3 -> USART1 (GPS&SAFETY)
  • SERIAL4 -> UART8 (GPS2)
  • SERIAL7 -> USART3 (FMU DEBUG)

[!NOTE] TELEM1 和TELEM2接口带流量控制(RTS/CTS), 其它UARTs没有RTS/CTS引脚.

RC输入

硬件连接图

RCIN接口支持所有单向RC协议(SBUS/PPM/DSM);

DSM/PPM/SBUS接收机

使用杜邦线连接至RCIN接口;无需任何额外的参数设置。

对于CRSF/ELRS等带有遥测的双向协议的接收机,需要连接到UART接口, 以下为设置教程:例如SERIAL2 (UART5/TELEM2) 用于双向 RC。

ELRS接收机

将接收机连接至TELME2接口并设置以下参数:

将接收机连接至TELME2接口并设置以下参数:
 - SERIAL2_PROTOCOL=23;
 - SERIAL2_OPTIONS=0;
 - RSSI_TYPE=3;
 - RC_OPTIONS=8192(Use 420kbaud for ELRS protool);

写入重启

CRSF接收机


- SERIAL2_PROTOCOL=23;
- SERIAL2_OPTIONS=0;
- RSSI_TYPE=3;

FPort接收机


- SERIAL2_PROTOCOL=23;
- SERIAL2_OPTIONS=7;
- RSSI_TYPE=3;

[!TIP] 任何UART都可以用于连接ArduPilot中的RC接收机,并且兼容除PPM之外的所有协议。有关详细信息,请参阅无线电控制系统

PWM输出

7-Nano支持14路PWM输出

PWM输出分组:

  • 第一组:M1~M4(TIM5)

  • 第二组:M5~M6(TIM4)

  • 第三组:M7~M8(TIM1)

  • 第四组:M9-M11(TIM8)

  • 第五组:M12(TIM15)

  • 第五组:M13-M14(TIM12)

[!NOTE] 同一组中的PWM输出需要使用相同的输出速率和协议,如果组中的任何输出使用DShot,则该组中的所有通道都需要使用DShot。M1-M8支持3.3V电压和5V电压输出之间的切换。可以通过BRD_PWM_VOLT_SEL参数配置进行切换。

GPIO

所有的Servo输出都可以作为GPIOs (relays(继电器), 相机快门, RPM等). 作为GPIO需要设置SERVOx_FUNCTION=-1(X为引脚序号).

GPIO引脚映射关系:

  • PWM1(M1) 50
  • PWM2(M2) 51
  • PWM3(M3) 52
  • PWM4(M4) 53
  • PWM5(M5) 54
  • PWM6(M6) 55
  • PWM7(M7) 56
  • PWM8(M8) 57
  • PWM9(M9) 58
  • PWM10(M10) 59
  • PWM11(M11) 60
  • PWM12(M12) 61
  • PWM13(M13) 62
  • PWM14(M14) 63
    以将M14作为继电器为例;设置Relay_pin=63.

模拟输入

7-Nano有6个模拟输入接口.

  • ADC Pin9 -> 电池电压传感器
  • ADC Pin8 -> 电池电流传感器
  • ADC Pin5 -> VDD 5V电源感应
  • ADC Pin13 -> ADC 3.3V感应
  • ADC Pin12 -> ADC 6.6V感应
  • ADC Pin10 -> RSSI电压监控

电池监测器(电流计设置)

[!NOTE] 标准套餐含7-VDM电源检测模块,支持10-100V电池输入,但只检测电压不检测电流并且您还需自行配备一个BEC模块为控制器供电。PDB套餐含7-Nano PDB电源监测模块,内含BEC、电源检测、分电板功能;

7-Nano PDB

  • BATT_MONITOR=4
  • BATT_VOLT_MULT=31
  • BATT_V0LT_PIN=9
  • BATT_CURR_PIN=8
  • BATT_AMP_PERVLT=24

7-nano

VDM

  • BATT_MONITOR=3/4
  • BATT_VOLT_MULT=31
  • BATT_V0LT_PIN=9

7-nano

罗盘

7-Nano具有 IST8310内置指南针,但由于干扰,该板通常与外部I2C指南针一起使用,作为 GPS/指南针组合的一部分。理应优先使用外部指南针(例如GPS上的指南针)作为主要指南;始终确保为外部指南顺序高于内部指南针。

ardupilot firmware

以太网口配置

7-Nano支持通过以太网建立局域网链接,局域网内的设备需处于同一IP网络(同一网段)以使每个设备具有唯一的IP地址并且能够与其它设备通信。

[!TIP] ArduPilot 4.5及以上版本固件支持以太网配置。

打开Mission planner>配置>全部参数表,设置NET_ENABLED=1,,重启自动驾驶仪并修改以下参数:

ardupilot firmware

如上图,设置自动驾驶仪IP为192.168.10.14,路由IP设置为192.10.3(根据路由IP设置)。

ardupilot firmware

设置电脑IP为192.168.10.15,设置一个网络端口为15001,以便通过UDP访问该网络设备,端口协议为2。

[!NOTE] 最多可以设置四个端口。

系统硬件连接

  • 使用配套的网线连接至电脑,并为自动驾驶仪及AG路由供电。
  • 进入电脑【更改网络设配器选项】>以太网属性【Internet协议版本4(TCP/IPV4】>手动进行网络配置(本机IP,配置为192.168.0.1,子网掩码255.255.255.0)>点确定应用配置.

ardupilot firmware

网络连通性测试

  • 进入Windows命令窗口
  • 输入:ping 192.168.10.4

ardupilot firmware

[!TIP] 有网络延时数据回复则为通信建立,显示通信超时则可能时IP不对或者通信失败。

连接地面站

  • 运行Mission planner地面站软件
  • 设置连接方式"UDP"
  • 输入端口号15001。

开发指南

[!COMMENT] CUAV不提供固件及软件二次开发技术指导,如有相关问题,请仔细阅读相关指南或ArduPilot discord_频道寻求ArduPilot协助。

ArduPilot固件编译命令

./waf configure --board CUAV-7-Nano

./waf copter --upload

已编译好的固件可以在 https://firmware.ardupilot.org 中名为“CUAV-7-Nano”的子文件夹中找到。

该主板预装了兼容 ArduPilot的引导加载程序,允许使用任何兼容 ArduPilot的地面站加载 *.apj 固件文件。

results matching ""

    No results matching ""