跳转至

RflySim APIs-底层控制接口库


RflySim APIs 库提供了一套完整的底层控制接口,覆盖姿态、速度、位置、加速度、力/力矩、遥控器、执行器等多种关键数据的读写接口,支持用户自定义控制器开发和实机部署。


模块列表

HIL 控制接口

模块 功能描述
HIL16 Ctrls Norm HIL 16维归一化控制接口,输出归一化的执行器控制指令
HIL16 Ctrls PWM HIL 16维 PWM 控制接口,输出 PWM 格式的执行器控制信号

遥控器接口

模块 功能描述
Input RC Cali 遥控器输入校准模块,支持通道校准和中立点设置
Input RC Norm 归一化遥控器输入,将原始 PWM 转换为 [-1, 1] 范围的标准化值
RC Over Ctrl 遥控器覆盖控制,实现遥控器信号对自动控制器的优先级覆盖

Offboard 控制接口

模块 功能描述
Offboard PVA Ctrl Offboard 位置/速度/加速度控制,支持位置、速度、加速度多层级控制
Offboard Att Ctrl Offboard 姿态控制,支持姿态角和姿态角速度控制
Offboard Adv Ctrl Offboard 高级控制,支持更复杂的控制模式和混合控制策略
Off Ctrl Msg All Offboard 控制消息汇总,整合多种控制模式的指令输出

状态获取接口

模块 功能描述
Pos Vel Att All 位置/速度/姿态全数据获取,输出载具的完整运动状态
Msg2Simulink API 消息转 Simulink API,将 MAVLink 消息转换为 Simulink 可用格式
Torque Thrust Ctrls 力矩/推力控制接口,支持基于力矩和推力的底层控制

工具模块

模块 功能描述
Re PX4 Block PX4 模块重配置,支持动态重配置飞控参数和模块设置

使用场景

自定义控制器开发

  • 位置控制器:使用 Offboard PVA Ctrl 开发自定义位置、速度、加速度控制器
  • 姿态控制器:使用 Offboard Att Ctrl 实现自定义姿态稳定和控制
  • 力位混合控制:结合 Torque Thrust Ctrls 实现基于力和力矩的底层控制

实机部署

  • HIL 仿真验证:使用 HIL16 Ctrls 模块在硬件在环仿真中验证控制器
  • 实机控制:通过 Offboard 接口实现 Simulink 控制器对实机的直接控制
  • 遥控器集成:使用 RC 相关模块实现遥控器与自动控制的无缝切换

数据采集与分析

  • 状态监测:使用 Pos Vel Att All 模块获取载具完整运动状态
  • 消息解析:使用 Msg2Simulink API 将飞控消息转换为可用数据
  • 实时分析:在 Simulink 中实时分析飞控数据并输出控制决策

使用注意事项

Offboard 控制注意事项

  1. 模式切换:进入 Offboard 模式前确保飞控处于正确的飞行模式(通常为 Position 或 Hold 模式)
  2. 指令频率:Offboard 控制指令需要以足够高的频率(建议 ≥50Hz)发送,否则飞控会退出 Offboard 模式
  3. 安全边界:使用 Offboard 控制时务必设置合理的飞行边界和故障保护机制
  4. 坐标系约定:确保 Simulink 控制器输出的指令与飞控期望的坐标系一致(通常为 NED 坐标系)

HIL 仿真注意事项

  1. 信号范围:HIL16 Ctrls 输出的控制信号范围应符合飞控期望的归一化范围或 PWM 范围
  2. 仿真同步:确保 Simulink 仿真步长与飞控控制周期匹配,避免时序不一致
  3. 传感器模型:HIL 仿真中飞控使用的传感器数据来自 Simulink 模型,确保传感器模型精度足够

遥控器集成注意事项

  1. 通道映射:确保 RC 输入通道与飞控配置的通道功能一致(如油门、偏航、俯仰、横滚)
  2. 失控保护:配置遥控器信号丢失时的飞控保护行为(如返航、降落或保持)
  3. 模式切换:合理配置遥控器通道用于飞行模式切换,确保自动/手动模式切换顺畅

相关资源


注意:本文档为 RflySim APIs 库的索引文档。各模块的详细使用说明请参考对应模块的独立文档页面。