一、技术参数
工作温度:-20 - 60℃
工作电压:DC12V - DC24V
输出电流:16A(每个回路)
额定功率:12V:<500W 24V:<1000W
输出回路:红(R)、绿(G)、蓝(B)三个通道
输出颜色:16777216(256 * 256 * 256)种
输出连接:共阳
静态功耗:<0.3W
外形尺寸:88mm * 54mm * 59mm(长宽高)
通信方式:RS485
波特率:4800 9600 19200 38400 57600 115200
通信协议:自有协议、MODBUS-RTU协议、自定义协议
二、功能特点
多种场景:
- 颜色控制、无极自动调光
- 定时开关、全彩爆闪、7色呼吸
灵活的指令:
- 自定义指令关联控制
- 自带IO控制、远程IO控制
- 双色筒灯调色温专用指令
- 单回路、多回路定时开关控制
- RGB灯色彩控制(多达1600万色)
- 可配置波特率、上电记忆功能、回复使能
丰富的输入输出功能:
- 2个可编程输入IO
- 6个可编程自动场景
- 延时控制、延时输入技术(方便对接人体感应)
多种负载对接能力:
- 标准共阳RGB灯带/灯具
- 独立的单色灯带、双色温筒灯
三、无缝多协议
- 本司自定协议(推荐采用)
- 工业级标准MODBUS协议系统
- 多达6条用户可自定义协议(需要配合本司自定协议使用)
四、可靠的安全性能
- RS485通信控制
- 55A原装进口MOS
- 防电源反接功能,宽电压7-28V供电
- 强干扰环境的应用,可选择高速隔离通信版
- 全部使用大厂原装器件,高性价比。工业级进口MCU抗干扰能力强
五、接线端说明
V+:模块供电正极(宽电压7-26V供电) V-:模块供电负极 A:RS485的A端 B:RS485的B端 V+:共阳RGB灯正极(与供电的V+相通) R:LED红色(负极) G:LED绿色(负极) B:LED蓝色(负极)

六、控制器选项表
型号 | 通信接口 | 通信隔离 | 负载能力 | 单回路负载能力 | 供电电源 |
---|---|---|---|---|---|
WE102 | RS485 | 无 | 15A | 5A | - |
WE102A | RS485 | 无 | 20A | 5A | - |
WE102B | RS485 | 有 | 15A | 5A | - |
WE102C | RS485 | 有 | 20A | 5A | - |
WE102D | RS485 | 无 | 6A | 2A | - |
WE102E | RS485 | 无 | 8A | 2A | - |
WE102F | RS485 | 无 | 6A | 2A | - |
说明:
- 控制器是低压直流控制器,默认的供电电压是DC:7-28V。建议12V或24V。当应用在供电电压大于28V时,需要提前联系客服人员进行定制。
- 控制器的输出端口是大功率MOS管,严禁负载(输出与V+)短路。为了防止负载短路,请选择与负载功率合适的保险管进行保护。
- 控制器的负载电压与供电电压要一致。
七、通信协议说明
自有协议
本协议用于配置设备的 RS485 通信参数。所有命令均以 0xA5开头,以 0x5A结尾。校验和是从 长度字节 开始,到 校验和字节之前 的所有字节的累加和(通常取低8位)。
1. 设置通信地址 (0xB0)
- 功能: 更改设备的通信地址。
- 重要提示:
o如果设备上有 地址拨码开关,此命令无效,会返回失败 (0xB3)。必须使用拨码开关设置地址。
o拨码开关操作:
- 出厂默认:所有开关在非数字侧 (1),地址为 0xFF。
- 设置地址:将开关拨到数字侧表示该位为 0,否则为 1。
- 必须断电操作! 带电操作可能损坏控制器。
- 拨码开关设置后,重新通电生效。
o使用此命令设置地址:无需断电,立即生效,新地址会保存。
- 发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此命令数据部分长度 (旧地址 + 命令字 + 新地址 = 3字节) |
3 | 旧地址 | 0xXX | 当前与设备通信使用的地址 (0x00-0xFF) |
4 | 命令字 | 0xB0 | 地址设置命令 |
5 | 新地址 | 0xXX | 要设置的新地址 (0x00-0xFF) |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 新地址 的累加和 (SUM(0x04, 旧地址, 0xB0, 新地址)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
- 接收响应 (设备 -> 主机):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x03 | 此响应数据部分长度 (新地址 + 命令字 = 2字节) |
3 | 新地址 | 0xXX | 设备当前使用的地址 (即设置后的地址) |
4 | 命令字 | 0xB2 / 0xB3 | 0xB2 = 设置成功 0xB3 = 设置失败 (通常因拨码开关存在导致) |
5 | 校验和 | 0xXX | 从 长度 (0x03) 到 命令字 的累加和 (SUM(0x03, 新地址, 命令字)) |
6 | 结束码 | 0x5A | 固定结束符 |
·
2. 查询通信地址 (0xB1)
·功能: 查询设备当前的通信地址。
·发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x03 | 此命令数据部分长度 (地址 + 命令字 = 2字节) |
3 | 地址 | 0xXX / 0xFF | 本机地址 (单台查询) 或 0xFF (广播查询,所有设备都会响应地址) |
4 | 命令字 | 0xB1 | 地址查询命令 |
5 | 校验和 | 0xXX | 从 长度 (0x03) 到 命令字 (0xB1) 的累加和 (SUM(0x03, 地址, 0xB1)) |
6 | 结束码 | 0x5A | 固定结束符 |
·
·接收响应 (设备 -> 主机):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x03 | 此响应数据部分长度 (地址 + 命令字 = 2字节) |
3 | 地址 | 0xXX | 设备当前的通信地址 |
4 | 命令字 | 0xB2 | 地址查询回复命令 (固定为成功回复) |
5 | 校验和 | 0xXX | 从 长度 (0x03) 到 命令字 (0xB2) 的累加和 (SUM(0x03, 地址, 0xB2)) |
6 | 结束码 | 0x5A | 固定结束符 |
·
3. 设置通信波特率 (0xB4)
- 功能: 更改设备的 RS485 通信波特率。
- 发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此命令数据部分长度 (地址 + 命令字 + 波特率 = 3字节) |
3 | 地址 | 0xXX | 当前与设备通信使用的地址 (0x00-0xFF) |
4 | 命令字 | 0xB4 | 波特率设置命令 |
5 | 波特率 | 0x01-0x05 | 1=4800, 2=19200, 3=38400, 4=57600, 5=115200, 其他=9600 |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 波特率 的累加和 (SUM(0x04, 地址, 0xB4, 波特率)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
- 接收响应 (设备 -> 主机):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此响应数据部分长度 (地址 + 命令字 + 波特率 = 3字节) |
3 | 地址 | 0xXX | 设备地址 |
4 | 命令字 | 0xB6 / 0xB7 | 0xB6 = 设置成功 0xB7 = 设置失败 |
5 | 波特率 | 0x01-0x05 | 设备当前使用的波特率 (1=4800, 2=19200, 3=38400, 4=57600, 5=115200, 其他=9600) |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 波特率 的累加和 (SUM(0x04, 地址, 命令字, 波特率)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
4. 查询通信波特率 (0xB5)
·功能: 查询设备当前的 RS485 通信波特率。
·发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x03 | 此命令数据部分长度 (地址 + 命令字 = 2字节) |
3 | 地址 | 0xXX / 0xFF | 本机地址 (单台查询) 或 0xFF (广播查询) |
4 | 命令字 | 0xB5 | 波特率查询命令 |
5 | 校验和 | 0xXX | 从 长度 (0x03) 到 命令字 (0xB5) 的累加和 (SUM(0x03, 地址, 0xB5)) |
6 | 结束码 | 0x5A | 固定结束符 |
·
·接收响应 (设备 -> 主机):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此响应数据部分长度 (地址 + 命令字 + 波特率 = 3字节) |
3 | 地址 | 0xXX | 设备地址 |
4 | 命令字 | 0xB6 / 0xB7 | 0xB6 = 查询成功 0xB7 = 查询失败 (不常见) |
5 | 波特率 | 0x01-0x03 | 设备当前使用的波特率 (1=19200, 2=57600, 3=115200, 其他=9600) |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 波特率 的累加和 (SUM(0x04, 地址, 命令字, 波特率)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
o注意: 查询响应中的波特率数值定义 (1=19200, 2=57600, 3=115200) 与设置命令 (1=4800, 2=19200, 3=38400...) 不同,且范围更小。其他=9600是相同的。
5. 设置是否回复 ACK (0xB8)
·功能: 设置设备在收到命令后是否回复确认 (ACK)。
o0x00(默认): 回复 ACK。
o0x01: 不回复 ACK。
·发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此命令数据部分长度 (地址 + 命令字 + 回复关闭 = 3字节) |
3 | 地址 | 0xXX | 当前与设备通信使用的地址 (0x00-0xFF) |
4 | 命令字 | 0xB8 | ACK 回复设置命令 |
5 | 回复关闭 | 0x00 / 0x01 | 0 = 回复ACK (默认) 1 = 不回复ACK |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 回复关闭 的累加和 (SUM(0x04, 地址, 0xB8, 回复关闭)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
·接收响应 (设备 -> 主机):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此响应数据部分长度 (地址 + 命令字 + 回复关闭 = 3字节) |
3 | 地址 | 0xXX | 设备地址 |
4 | 命令字 | 0xBA / 0xBB | 0xBA = 设置成功 0xBB = 设置失败 |
5 | 回复关闭 | 0x00 / 0x01 | 设备当前的ACK回复状态 (0=回复, 1=不回复) |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 回复关闭 的累加和 (SUM(0x04, 地址, 命令字, 回复关闭)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
6. 查询是否回复 ACK (0xB9)
- 功能: 查询设备当前是否回复 ACK。
- 重要提示: 如果设备已设置为不回复 ACK (0x01),发送此查询命令后,设备不会回复任何数据(通信灯可能会闪,但串口无输出)。
- 发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x03 | 此命令数据部分长度 (地址 + 命令字 = 2字节) |
3 | 地址 | 0xXX / 0xFF | 本机地址 (单台查询) 或 0xFF (广播查询) |
4 | 命令字 | 0xB9 | ACK 回复查询命令 |
5 | 校验和 | 0xXX | 从 长度 (0x03) 到 命令字 (0xB9) 的累加和 (SUM(0x03, 地址, 0xB9)) |
6 | 结束码 | 0x5A | 固定结束符 |
·
- 接收响应 (设备 -> 主机): (仅当设备设置为回复 ACK 时才会收到)
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此响应数据部分长度 (地址 + 命令字 + 回复关闭 = 3字节) |
3 | 地址 | 0xXX | 设备地址 |
4 | 命令字 | 0xBA / 0xBB | 0xBA = 查询成功 0xBB = 查询失败 (不常见) |
5 | 回复关闭 | 0x00 / 0x01 | 设备当前的ACK回复状态 (0=回复, 1=不回复) |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 回复关闭 的累加和 (SUM(0x04, 地址, 命令字, 回复关闭)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
7. 设置断电输出状态记忆功能 (0xBC)
- 功能: 控制设备断电后是否记忆并恢复断电前的输出状态。
o0x00(默认): 不记忆。下次上电输出为默认状态。
o0x01: 记忆。下次上电恢复断电前的输出状态。
- 说明: 开启记忆功能 (0x01) 后,设备会在下一次收到有效的输出控制命令并执行后,将当时的输出状态保存下来。断电后,下次上电即恢复该状态。
- 发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此命令数据部分长度 (地址 + 命令字 + 记忆功能 = 3字节) |
3 | 地址 | 0xXX | 当前与设备通信使用的地址 (0x00-0xFF) |
4 | 命令字 | 0xBC | 记忆功能设置命令 |
5 | 记忆功能 | 0x00 / 0x01 | 0 = 不记忆 (默认) 1 = 记忆 |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 记忆功能 的累加和 (SUM(0x04, 地址, 0xBC, 记忆功能)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
- 接收响应 (设备 -> 主机):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此响应数据部分长度 (地址 + 命令字 + 记忆功能 = 3字节) |
3 | 地址 | 0xXX | 设备地址 |
4 | 命令字 | 0xBE / 0xBF | 0xBE = 设置成功 0xBF = 设置失败 |
5 | 记忆功能 | 0x00 / 0x01 | 设备当前的记忆功能状态 (0=不记忆, 1=记忆) |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 记忆功能 的累加和 (SUM(0x04, 地址, 命令字, 记忆功能)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
8. 查询断电输出状态记忆功能 (0xBD)
- 功能: 查询设备当前的断电输出状态记忆功能状态。
- 发送命令 (主机 -> 设备):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x03 | 此命令数据部分长度 (地址 + 命令字 = 2字节) |
3 | 地址 | 0xXX / 0xFF | 本机地址 (单台查询) 或 0xFF (广播查询) |
4 | 命令字 | 0xBD | 记忆功能查询命令 |
5 | 校验和 | 0xXX | 从 长度 (0x03) 到 命令字 (0xBD) 的累加和 (SUM(0x03, 地址, 0xBD)) |
6 | 结束码 | 0x5A | 固定结束符 |
·
- 接收响应 (设备 -> 主机):
字节位置 | 字段 | 值 (十六进制) | 说明 |
1 | 起始码 | 0xA5 | 固定起始符 |
2 | 长度 | 0x04 | 此响应数据部分长度 (地址 + 命令字 + 记忆功能 = 3字节) |
3 | 地址 | 0xXX | 设备地址 |
4 | 命令字 | 0xBE / 0xBF | 0xBE = 查询成功 0xBF = 查询失败 (不常见) |
5 | 记忆功能 | 0x00 / 0x01 | 设备当前的记忆功能状态 (0=不记忆, 1=记忆) |
6 | 校验和 | 0xXX | 从 长度 (0x04) 到 记忆功能 的累加和 (SUM(0x04, 地址, 命令字, 记忆功能)) |
7 | 结束码 | 0x5A | 固定结束符 |
·
总结关键点:
- 起始/结束码: 所有命令都以 0xA5开始,以 0x5A结束。
- 长度: 指从 长度字节之后 到 校验和字节之前 的数据字节数。
- 校验和: 计算范围是从 长度字节 开始,到 校验和字节之前 的所有字节。务必正确计算。
- 地址:
- 设置/查询特定设备时使用其 当前地址。
- 广播地址 0xFF可用于查询命令(地址、波特率、ACK状态、记忆功能),所有设备都会响应(注意冲突)。
- 拨码开关: 存在时,地址设置命令无效且危险(需断电操作)。
- ACK 回复: 如果设备设置为不回复 ACK (0x01),发送查询 ACK 状态命令 (0xB9) 将不会收到任何响应。
- 记忆功能: 开启后,需发送一次有效的输出控制命令,设备才会保存当时的输出状态用于断电恢复。
WE-10x系列 LED控制器通信协议完整文档
1. 概述
WE-10x系列LED控制器主要用于对低压RGB灯具、单双色灯具的颜色和亮度进行控制。支持标准的RS485通信接口,数据交换采用16进制协议。在具体的命令格式中,各部分以字节为单位。可以通过软件配置其它的波特率。配置后会按最新波特率应答命令。
出厂默认参数
- 通信波特率:9600bps
- 数据位:8位
- 停止位:1位
- 校验位:无
- 设备地址:0x00-0xFE(广播地址0xFF)
2. 指令格式说明
基本指令格式
[起始码] [长度] [地址] [命令字] [有效数据] [校验和] [结束码]
各字段说明
字段 | 说明 | 值 | 备注 |
---|---|---|---|
起始码 | 数据帧开始标志 | 0xA5 | 固定值 |
长度 | 起始码、长度、结束码除外的所有通信内容的字节之和 | 0xXX | 从"地址"到"校验和"的字节长度和 |
地址 | 控制器地址 | 0x00-0xFE | 广播地址0xFF不应答 |
命令字 | 命令的功能码 | 0xA0-0xA1 | 详见各指令协议 |
有效数据 | 通信中的有效数据 | - | 各指令的数据内容定义详见各指令协议 |
校验和 | 长度、地址、命令字、有效数据的算术累加和 | 0xXX | 溢出部分忽略,取低8位;可使用0xEE替换(不校验) |
结束码 | 数据帧结束标志 | 0x5A | 固定值 |
3. 具体指令说明
3.1 设置RGB(RGBW)值
功能:依据三基色原理设置RGB的值,W值为可选的亮度值。
发送指令格式
A5 [长度] [地址] A0 [R值] [G值] [B值] [W值] [校验和] 5A
长度说明:
- RGB类型控制器:0x06(6字节)
- RGBW类型控制器:0x07(7字节)
参数范围:
- R值:0x00-0xFF(红色输出值)
- G值:0x00-0xFF(绿色输出值)
- B值:0x00-0xFF(蓝色输出值)
- W值:0x00-0xFF(白色输出值,仅RGBW类型有效)
接收指令格式
A5 [长度] [地址] A2 [R值] [G值] [B值] [W值] [校验和] 5A
长度说明:
- RGB类型控制器:0x06(6字节)
- RGBW类型控制器:0x07(7字节)
示例
RGBW类型控制器,红灯和白灯亮:
- 发送:
A5 07 FF A0 FF 00 00 FF EE 5A
- 接收:
A5 06 00 A2 FF 00 00 A7 5A
3.2 查询RGB(RGBW)值
功能:查询控制器当前的RGB(W)输出值。
发送指令格式
A5 03 [地址] A0 [校验和] 5A
接收指令格式
A5 [长度] [地址] A2 [R值] [G值] [B值] [W值] [校验和] 5A
示例
- 发送:
A5 03 FF A0 EE 5A
- 接收:
A5 06 00 A2 FF 00 00 A7 5A
3.3 控制器场景功能设置
功能:设置各种场景效果,包括呼吸、暴闪、调光、单步调光、开关等。
发送指令格式
A5 [长度] [地址] A1 [场景码] [功能码] [场景内容] [校验和] 5A
参数说明:
- 场景码:0x01(呼吸灯)、0x02(暴闪)、0x03(调光)、0x04(单步调光)、0x05(开关)
- 功能码:详见相应的场景命令表
- 场景内容:详见相应的场景命令表
接收指令格式
同3.1的接收命令格式。
3.3.1 呼吸灯场景内容表
功能码:0x01 场景内容格式:
[颜色码] [速度] [亮度]
颜色码说明:
- 0x01:红灯呼吸
- 0x02:绿灯呼吸
- 0x03:蓝灯呼吸
- 0x04:白灯呼吸(RGB型时是RGB合成白色呼吸,RGBW型时是W输出呼吸)
- 0x05:RGB呼吸
- 0x06:黄灯呼吸
- 0x07:紫灯呼吸
示例
- 红灯呼吸:
A5 08 FF A1 01 01 01 00 FF EE 5A
- 绿灯呼吸:
A5 08 FF A1 01 02 01 00 FF EE 5A
- 蓝灯呼吸:
A5 08 FF A1 01 03 01 00 FF EE 5A
- 白灯呼吸:
A5 08 FF A1 01 04 01 00 FF EE 5A
- RGB呼吸:
A5 08 FF A1 01 05 01 00 FF EE 5A
- 黄灯呼吸:
A5 08 FF A1 01 06 01 00 FF EE 5A
- 紫灯呼吸:
A5 08 FF A1 01 07 01 00 FF EE 5A
3.3.2 暴闪场景内容表
功能码:0x02 场景内容格式:
[颜色码] [速度] [亮度] [其他参数]
示例
- 红灯爆闪:
A5 08 FF A1 02 01 01 02 FF EE 5A
- 绿灯爆闪:
A5 08 FF A1 02 02 01 02 FF EE 5A
- 蓝灯爆闪:
A5 08 FF A1 02 03 01 02 FF EE 5A
- 白灯爆闪:
A5 08 FF A1 02 04 01 02 FF EE 5A
- 7色爆闪:
A5 0B FF A1 02 06 01 02 FF FF FF FF EE 5A
- 黄灯爆闪:
A5 0B FF A1 02 07 01 02 FF FF FF EE 5A
- 紫灯爆闪:
A5 0B FF A1 02 08 01 02 FF FF FF FF EE 5A
3.3.3 调光场景内容表
功能码:0x03 场景内容格式:
[颜色码] [目标亮度] [速度]
示例
- 红灯调光:
A5 07 FF A1 03 01 FF 01 EE 5A
- 绿灯调光:
A5 07 FF A1 03 02 FF 01 EE 5A
- 蓝灯调光:
A5 07 FF A1 03 03 FF 01 EE 5A
- 白灯调光:
A5 07 FF A1 03 04 FF 01 EE 5A
(只对RGBW输出型号有效) - 同步调光(全亮):
A5 0A FF A1 03 05 FF FF FF FF 01 EE 5A
- 同步调光(全关):
A5 0A FF A1 03 05 00 00 00 00 01 EE 5A
3.3.4 单步调光场景内容表
功能码:0x04 场景内容格式:
[操作码]
操作码说明:
- 0x01:红灯亮度加1
- 0x81:红灯亮度减1
- 0x02:绿灯亮度加1
- 0x82:绿灯亮度减1
- 0x03:蓝灯亮度加1
- 0x83:蓝灯亮度减1
- 0x04:白灯亮度加1(RGBW有效)
- 0x84:白灯亮度减1(RGBW有效)
- 0x05:RGBW亮度加1(RGBW有效)
- 0x85:RGBW亮度减1(RGBW有效)
示例
- 红灯亮度加1:
A5 05 FF A1 04 01 EE 5A
- 红灯亮度减1:
A5 05 FF A1 04 81 EE 5A
- 绿灯亮度加1:
A5 05 FF A1 04 02 EE 5A
- 绿灯亮度减1:
A5 05 FF A1 04 82 EE 5A
- 蓝灯亮度加1:
A5 05 FF A1 04 03 EE 5A
- 蓝灯亮度减1:
A5 05 FF A1 04 83 EE 5A
- 白灯亮度加1:
A5 05 FF A1 04 04 EE 5A
- 白灯亮度减1:
A5 05 FF A1 04 84 EE 5A
- RGBW亮度加1:
A5 05 FF A1 04 05 EE 5A
- RGBW亮度减1:
A5 05 FF A1 04 85 EE 5A
3.3.5 开关场景内容表
功能码:0x05 场景内容格式:
[颜色码] [延时] [操作类型] [状态值]
操作类型说明:
- 0x01:单通道控制
- 0x05:RGBW同时控制
状态值说明:
- 0x01:开
- 0x00:关
- 0x02:开关切换(发送一次为开,下一次为关,循环)
示例
- 红灯开:
A5 08 FF A1 05 01 00 01 01 EE 5A
- 红灯关:
A5 08 FF A1 05 01 00 01 00 EE 5A
- 红灯开关切换:
A5 08 FF A1 05 01 00 01 02 EE 5A
- 白灯开:
A5 08 FF A1 05 04 00 01 01 EE 5A
- 白灯关:
A5 08 FF A1 05 04 00 01 00 EE 5A
- 白灯开关切换:
A5 08 FF A1 05 04 00 01 02 EE 5A
- RGBW开:
A5 0B FF A1 05 05 00 01 01 01 01 01 EE 5A
- RGBW关:
A5 0B FF A1 05 05 00 01 00 00 00 00 EE 5A
- RGBW开关切换:
A5 0B FF A1 05 05 00 01 02 02 02 02 EE 5A
4. 注意事项
- 广播地址0xFF用于向所有设备发送命令,但设备不会响应广播命令
- 校验和计算:从"长度"字节开始到"校验和"前一个字节的累加和,取低8位
- 使用0xEE作为校验和可以跳过校验计算
- RGB类型控制器忽略W值参数
- 场景功能中的白色效果在RGB型和RGBW型控制器上的实现方式不同
LED控制器 MODBUS协议完整文档
1. 概述
WE-10x系列LED控制器主要用于对低压RGB灯具、单双色灯具的颜色和亮度进行控制,支持标准的RS485通信接口,数据交换采用标准的MODBUS RTU协议。有关详细的指令生成与解析方式,可根据本文中的寄存器表结合参考《MODBUS协议中文版》即可。
1.1 寄存器地址表
注: 保持寄存器1相应的寻址地址是0x0000,保持寄存器2相应的寻址地址是0x0001,依次类推。
寄存器名称 | 寻址地址 | 功能说明 | 值范围 | 访问权限 | 备注 |
---|---|---|---|---|---|
输出值R | 0x0000 | 红色通道输出值 | 0x0000-0x00FF | 读写 | RGB值范围0-255 |
输出值G | 0x0001 | 绿色通道输出值 | 0x0000-0x00FF | 读写 | RGB值范围0-255 |
输出值B | 0x0002 | 蓝色通道输出值 | 0x0000-0x00FF | 读写 | RGB值范围0-255 |
输出值W | 0x0003 | 白色通道输出值 | 0x0000-0x00FF | 读写 | W值范围0-255 |
设备地址 | 0x0004 | 设备通信地址 | 0x0001-0x00FF | 读写 | 1-255 |
波特率 | 0x0005 | 通信波特率 | 0-5 | 读写 | 见波特率说明 |
禁止应答 | 0x0006 | 是否禁止应答 | 0-1 | 读写 | 0:允许,1:禁止 |
断电记忆 | 0x0007 | 断电状态记忆 | 0-1 | 读写 | 0:不记忆,1:记忆 |
场景功能 | 0x0008 | 场景功能设置 | - | 读写 | 见场景功能说明 |
波特率设置值说明:
- 0: 4800bps
- 1: 9600bps(默认值)
- 2: 19200bps
- 3: 38400bps
- 4: 57600bps
- 5: 115200bps
2. 指令列表
2.1 控制器参数设置
功能码: 0x06(写单个寄存器) 控制器参数包括设备地址、波特率、禁止应答、断电记忆等参数。当不清楚设备地址时,可通过广播地址进行参数设置。 指令格式:
[设备地址] [功能码0x06] [寄存器地址高8位] [寄存器地址低8位] [数据高8位] [数据低8位] [CRC校验低8位] [CRC校验高8位]
示例:控制器原地址为0x01,更改地址为0x03
- 发送命令:
01 06 00 04 00 03 88 0A
- 接收响应:
01 06 00 04 00 03 88 0A
说明:
- 地址设置时,返回命令的从机地址同接收的命令一致,都是0x01
- 新从机地址将在下一次通信时有效,设置完成后请使用新从机地址0x03
- 使用广播地址0x00可以进行设备地址初始化设置
2.2 控制器参数查询
功能码: 0x03(读保持寄存器) 注意: 当设置了"禁止应答"功能有效后,查询无返回。 指令格式:
[设备地址] [功能码0x03] [起始地址高8位] [起始地址低8位] [寄存器数量高8位] [寄存器数量低8位] [CRC校验低8位] [CRC校验高8位]
示例:查询控制器地址
- 发送命令:
01 03 00 04 00 01 C5 CB
- 接收响应:
01 03 02 00 01 79 84
响应说明:
01
:设备地址03
:功能码02
:返回数据字节数00 01
:查询到的参数值(此处为设备地址0x0001)79 84
:CRC校验
2.3 控制器输出值设置
功能码: 0x10(写多个寄存器) 设置4个输出回路的值,当负载是RGB灯具时可以显示对应的颜色,当负载是单色灯具时,将对应每个输出的亮度值。本命令为RGBW格式设置,当控制器为"无W输出型号"时,W值将被控制器忽略。 指令格式:
[设备地址] [功能码0x10] [起始地址高8位] [起始地址低8位] [寄存器数量高8位] [寄存器数量低8位] [数据字节数] [数据1高8位] [数据1低8位] ... [CRC校验低8位] [CRC校验高8位]
示例1:设置R回路输出为0xFF
- 发送命令:
01 10 00 00 00 04 08 00 FF 00 00 00 00 00 00 B9 75
- 接收响应:
01 10 00 00 00 04 C1 CA
示例2:设置G回路输出为0xFF
- 发送命令:
01 10 00 00 00 04 08 00 00 00 FF 00 00 00 00 A2 6E
- 接收响应:
01 10 00 00 00 04 C1 CA
示例3:设置B回路输出为0xFF
- 发送命令:
01 10 00 00 00 04 08 00 00 00 00 00 FF 00 00 86 4A
- 接收响应:
01 10 00 00 00 04 C极 CA
示例4:设置W回路输出为0xFF
- 发送命令:
01 10 00 00 00 04 08 00 00 00 00 00 00 00 FF F6 3A
- 接收响应:
01 10 00 极 00 00 04 C1 CA
示例5:设置全部回路输出为0xFF
- 发送命令:
01 10 00 00 00 04 08 00 FF 00 FF 00 FF 00 FF DD 11
- 接收响应:
01 10 00 00 00 04 C1 CA
示例6:设置全部回路输出为0x00
- 发送命令:
01 10 00 00 00 04 08 00 00 00 00 00 00 00 00 B6 7A
- 接收响应:
01 10 00 00 00 04 C1 CA
2.4 控制器输出值查询
功能码: 0x03(读保持寄存器)
示例:查询控制器地址为0x01的输出值
- 发送命令:
01 03 00 00 00 04 44 09
- 接收响应:
01 03 08 00 FF 00 FF 00 FF 00 00 BE FC
响应说明:
- 按照RGBW的顺序返回
- 上述示例返回值:R=0x00FF, G=0x00FF, B=0x00FF, W=0x0000
- 每个通道值占用2个字节(16位),但有效值为低8位
2.5 控制器场景功能设置
功能码: 0x10(写多个寄存器) 包括呼吸、暴闪、调光、独立开关等功能。 注: 当是"RGB输出的型号"时,只要是白色功能都是合成的,比如灯带是RGB合成白色呼吸;当是"RGBW型号"时,灯带直接从W输出呼吸灯。
呼吸灯功能写入内容表
功能 | 写入值 | 说明 |
---|---|---|
红灯呼吸 | 0x0001 | 红色呼吸效果 |
绿灯呼吸 | 0x0002 | 绿色呼吸效果 |
蓝灯呼吸 | 0x0003 | 蓝色呼吸效果 |
白灯呼吸 | 0x0004 | 白色呼吸效果 |
紫灯呼吸 | 0x0005 | 紫色呼吸效果 |
黄灯呼吸 | 0x极6 | 黄色呼吸效果 |
青灯呼吸 | 0x0007 | 青色呼吸效果 |
七彩呼吸 | 0x0008 | 七彩呼吸效果 |
爆闪功能写入内容表
功能 | 写入值 | 说明 |
---|---|---|
红灯爆闪 | 0x0001 | 红色爆闪效果 |
绿灯爆闪 | 0x0002 | 绿色爆闪效果 |
蓝灯爆闪 | 0x0003 | 蓝色爆闪效果 |
白灯爆闪 | 0x0004 | 白色爆闪效果 |
7色爆闪 | 0x0005 | 7色循环爆闪 |
调光功能写入内容表
参数 | 地址偏移 | 说明 |
---|---|---|
功能选择 | 0x0000 | 调光功能标识(0x0003) |
R亮度值 | 0x0001 | 红色亮度(0x00-0xFF) |
G亮度值 | 0x0002 | 绿色亮度(0x00-0xFF) |
B亮度值 | 0x0003 | 蓝色亮度(0x00-0xFF) |
W亮度值 | 0x0004 | 白色亮度(0x00-0xFF) |
调光速度 | 0x0005 | 调光速度值 |
开关功能写入内容表
功能 | 写入值 | 说明 |
---|---|---|
红灯开关 | 0x0001 | 红色开关切换 |
绿灯开关 | 0x0002 | 绿色开关切换 |
蓝灯开关 | 0x0003 | 蓝色开关切换 |
白灯开关 | 0x0004 | 白色开关切换 |
全部开关 | 0x0005 | 全部通道开关 |
示例1:设置控制器为紫灯呼吸
- 发送命令:
01 10 00 08 00 05 0A 00 01 00 00 00 00 00 00 00 00 00 00 81 C8
- 接收响应:
01 10 00 08 00 05 81 C8
示例2:7色爆闪
- 发送命令:
01 10 00 08 00 08 10 00 02 01 00 02 00 FF FF FF 00 5B 4C
- 接收响应:
01 10 00 08 00 08 40 0D
示例3:红灯亮度调到0x0F、绿灯亮度调到0xFF、蓝灯亮度调到0x80、白灯亮度调到0xA0
- 发送命令:
01 10 00 08 00 07 0E 00 03 极 05 00 0F 00 FF 00 80 00 A0 00 01 1D C1
- 接收响应:
01 10 00 08 00 07 00 09
示例4:控制器红灯开关转换(发送本命令一次为开,下一次为关,循环)
- 发送命令:
01 10 00 08 00 05 0A 00 05 00 01 00 00 00 00 00 02 A6 61
- 接收响应:
01 10 00 08 00 05 81 C8
示例5:RGBW全部延时1秒开关转换
- 发送命令:
01 10 00 08 00 08 10 00 05 00 05 00 00 00 01 00 02 00 02 00 02 00 02 46 13
- 接收响应:
01 10 00 08 00 08 40 0D
3. 通信参数默认值
- 设备地址: 0x01(默认)
- 波特率: 9600bps(8位数据位,1位停止位,无校验)
- 禁止应答: 0(允许应答)
- 断电记忆: 0(不记忆输出状态)
4. 注意事项
- 使用广播地址0x00时,所有设备都会响应,可能导致通信冲突
- 设置"禁止应答"功能后,设备将不响应任何查询命令
- RGBW输出值范围为0x0000-0x00FF,实际有效值为低8位
- 场景功能设置时,请根据控制器型号(RGB或RGBW)选择合适的功能