1.1 接口概述
LED 控制接口用于控制机器人身上的 LED 灯效,支持多种颜色和灯效模式(闪烁、常亮、呼吸、流水等)。开发者通过发布 LedControl 消息来切换 LED 模式,命令会立即生效。
1.2 消息字段与模式枚举
通信接口:
| 话题名称 | 消息类型 | 方向 | 说明 |
|---|---|---|---|
/hardware/led_control | LedControl.msg | 客户端 → 灯光控制服务 | 发送灯光控制请求 |
完整消息定义见 GitHub 消息目录。
支持的 LED 模式:
| 模式常量 | 说明 | 效果 |
|---|---|---|
0 | 还原 | 还原内置灯光 |
BLINK_RED | 红色闪烁 | LED 红色快速闪烁 |
BLINK_GREEN | 绿色闪烁 | LED 绿色快速闪烁 |
BLINK_BLUE | 蓝色闪烁 | LED 蓝色快速闪烁 |
BLINK_WHITE | 白色闪烁 | LED 白色快速闪烁 |
CONSTANT_ON_WHITE | 白色常亮 | LED 白色持续点亮 |
CONSTANT_ON_GREEN | 绿色常亮 | LED 绿色持续点亮 |
BREATHE_WHITE | 白色呼吸 | LED 白色呼吸效果 |
WATER_WHITE | 白色流水 | LED 白色流水效果 |
BREATHE_RED | 红色呼吸 | LED 红色呼吸效果 |
BLINK_ORANGE | 橙色闪烁 | LED 橙色快速闪烁 |
CONSTANT_ON_ORANGE | 橙色常亮 | LED 橙色持续点亮 |
1.3 示例:LED 模式循环切换
本示例每隔 1 秒自动切换一次 LED 模式,循环展示所有可用的灯光效果。
运行命令:
Bash |
自定义 LED 控制:
Python |
1.4 注意事项
- LED 控制命令会立即生效
- 建议控制发布频率,避免过于频繁切换
- 某些模式组合可能不被硬件支持
- 如果发生内置系统错误或警告,ROS2 灯光设计接口将无效
📎 本章涉及的开源仓库源码文件(点击文件名跳转 GitHub):LedControl.msg · led_control_example.py
