跳转至

RGB_LED 模块文档

所属工具箱:Sensors and Actuators

RGB_LED 模块外观

简介

一句话描述:该模块用于控制无人机载RGB LED灯的闪烁模式与发光颜色,为仿真系统提供状态可视化指示功能。

该模块属于RflySim工具链的Sensors and Actuators接口库,可对接PX4飞控与仿真系统的外设驱动逻辑,在Simulink用户自定义控制算法中实现对RGB LED状态的灵活配置。模块支持多种预设闪烁模式和多档位颜色选择,可通过枚举类型输入直接指定参数,便于开发者快速调用。

该模块的状态输出会同步传递给CopterSim和RflySim3D渲染引擎,最终在三维仿真场景中直观呈现无人机的LED状态,典型使用场景包括无人机飞行状态指示、飞控模式切换提示、自定义告警提示等开发调试场景,可帮助开发者在仿真过程中直观观测无人机当前工作状态。

端口说明

输入端口(Inputs)

端口名 数据类型 维度 说明
Mode doubleenumeration 1×1 RGB LED的工作模式,对应RGBLED_MODE_ENUM枚举类型,输入值对应不同闪烁模式
Color doubleenumeration 1×1 RGB LED的显示颜色,对应RGBLEDCOLOR_ENUM枚举类型,输入值对应不同显示颜色

输出端口(Outputs)

本模块无输出端口。

参数配置(Parameters)

双击模块打开的 Mask 对话框中可配置以下参数:

参数名 类型 默认值 可选值/范围 说明
CopterID int 1 1~255 目标无人机的ID,用于指定需要控制RGB LED的无人机[待确认]

参数设置说明

CopterID

该参数用于指定需要控制RGB LED的无人机编号,在多无人机仿真场景中,只有ID与该参数匹配的无人机会接收并执行本模块输出的RGB LED控制指令。

Mode可选值说明

输入的模式参数可选枚举值对应功能:

  • MODE_OFF: 关闭RGB LED
  • MODE_ON: 常亮模式
  • MODE_BLINK_SLOW: 慢速闪烁模式
  • MODE_BLINK_NORMAL: 正常速度闪烁模式
  • MODE_BLINK_FAST: 快速闪烁模式
  • MODE_BREATHE: 呼吸灯模式
  • MODE_PATTERN: 自定义图案模式

Color可选值说明

输入的颜色参数可选枚举值:

  • COLOR_OFF: 关闭显示
  • COLOR_RED: 红色
  • COLOR_YELLOW: 黄色
  • COLOR_PURPLE: 紫色
  • COLOR_GREEN: 绿色
  • COLOR_BLUE: 蓝色
  • COLOR_WHITE: 白色
  • COLOR_AMBER: 琥珀色
  • COLOR_DIM_RED: 暗红色
  • COLOR_DIM_YELLOW: 暗黄色
  • COLOR_DIM_PURPLE: 暗紫色
  • COLOR_DIM_GREEN: 暗绿色
  • COLOR_DIM_BLUE: 暗蓝色
  • COLOR_DIM_WHITE: 暗白色
  • COLOR_DIM_AMBER: 暗琥珀色

可以在MATLAB命令行窗口输入enumeration('RGBLEDCOLOR_ENUM')查看所有有效颜色枚举,输入enumeration('RGBLED_MODE_ENUM')查看所有有效模式枚举。

模块特性(Block Characteristics)

特性项
支持的数据类型 doublesingle、枚举类型
直接馈通(Direct Feedthrough)
采样时间 继承
代码生成支持

数据通信协议

本模块不涉及网络通信。

相关模块

模块名 说明
Buzzer 控制蜂鸣器发声模式的执行器模块
PX4CtrlFeedback 获取PX4飞控的传感器与状态反馈数据
GPS 仿真GPS传感器数据输出模块
IMU 仿真IMU传感器数据输出模块
Barometer 仿真气压计传感器数据输出模块
Magnetometer 仿真磁力计传感器数据输出模块
RangeFinder 仿真测距传感器数据输出模块
OpticalFlow 仿真光流传感器数据输出模块
ViconPose 输出动捕系统定位得到的无人机位姿数据
Joystick 读取键盘摇杆输入的人机交互模块
EscPWMOut 输出电机电调PWM控制信号的执行器模块
ServoPWMOut 输出舵机PWM控制信号的执行器模块

使用示例

相关使用示例请参考以下路径:

[RflySim安装路径]/RflySimAPIs/5.RflySimFlyCtrl/0.ApiExps/4.PSPOfficialExps/Readme.pdf

请在上述路径中查看 Readme.pdf 获取完整的示例说明与操作步骤。

注意事项与常见问题

  • 初始化顺序:该模块依赖飞控底层硬件驱动完成初始化,需保证仿真启动后飞控板载外设初始化完成后再发送RGB LED控制指令,未完成初始化时发送的控制指令不会生效。
  • 枚举值输入规范:输入端口的模式和颜色仅支持对应枚举类型RGBLED_MODE_ENUMRGBLED_COLOR_ENUM的合法成员值,输入自定义数值或字符串会导致控制失效,可在MATLAB命令行执行enumeration('RGBLED_MODE_ENUM')enumeration('RGBLED_COLOR_ENUM')查询所有合法有效值。
  • 模式参数适配:当选择MODE_PATTERN自定义模式时,需要额外通过输入端口传入自定义闪烁 pattern 时序参数,否则模块会默认使用熄灭模式输出。
  • 仿真环境匹配:该模块仅适配PX4飞控固件的板载RGB LED外设仿真,自定义RTL飞控或其他固件需要提前适配对应驱动接口,否则无法正常控制LED状态。
  • 采样时间匹配:模块默认匹配飞控100Hz的外设更新频率,若自定义仿真采样率超过1000Hz,多余的控制指令不会被底层硬件响应,建议将模块输入更新频率设置在1Hz~100Hz区间。

更新日志

  • v4.1.0 (2024-08-12): 初始发布RGB_LED模块,支持多种LED闪烁模式与颜色控制,基于枚举类型输入实现功能调用