08 极物科技 | DALI调光灯 - UDP 通讯协议规范

极物科技 | DALI调光灯 - UDP 通讯协议规范

前言

极物科技致力于智能控制系统及硬件研发,以"极物OS+多协议融合"打破生态壁垒。

一句话概述:本文提供极物主机 DALI 调光灯服务的完整 UDP 通讯协议规范,供需要进行二次开发或系统对接的技术伙伴参考。

本文聚焦于 极物主机 DALI 调光灯的 UDP 通讯协议规范,详细解析服务端口与保活机制、报文帧结构、控制报文格式(亮度/色温/场景)、地址机制及状态更新报文,为二次开发和第三方中控对接提供完整的协议参考。

在这里插入图片描述


1. 服务端口与连接说明

极物主机 DALI 调光服务提供 UDP 接口,双路 DALI 总线使用独立端口:

服务端口号说明
DALI 1 接口2000对应 DALI 1 总线
DALI 2 接口2010对应 DALI 2 总线

连接说明

  • 客户端通过 UDP 协议向主机对应端口发送 JSON 报文
  • 一个端口支持多个客户端同时连接
  • 服务地址:极物主机 IP(默认监听 0.0.0.0)

⚠️ 注意:DALI 2 总线默认处于关闭状态,需在 Web 配置中启用后,2010 端口才会提供服务。


2. 报文帧结构总览

所有控制报文遵循统一的 JSON 帧结构:

字段类型必选说明
frame_typeString报文类型(request/keeplive/update)
frame_qnString报文序列号,建议累加
frame_driverString驱动标识,固定为 light-dali
driver_dataObject实际控制参数,由 DALI 模块定义
device_infoObject发送方设备信息(如 sn)
frame_resultString报文结果,固定为 ok

完整示例

{
  "driver_data": {
    "address_num": "1",
    "address_type": "shortaddress",
    "cmd_name": "-   DIRECT ARC POWER CONTROL",
    "cmd_type": "normal",
    "dali_index": "1",
    "cmd_value": "254"
  },
  "frame_type": "request",
  "frame_qn": "112233",
  "frame_driver": "light-dali",
  "device_info": {
    "sn": "11111"
  },
  "frame_result": "ok"
}

3. driver_data 字段说明

字段类型说明
address_numString地址编号(根据地址类型取值,见"地址机制")
address_typeString地址类型:shortaddress(单灯)/ group(分组)/ broadcast(广播)
cmd_nameString指令名称(见"控制指令速查表")
cmd_typeString指令类型:normal(标准指令)/ extend(扩展指令)
dali_indexString总线编号:1(DALI 1)/ 2(DALI 2)
cmd_valueString指令参数值(亮度/色温/保留值等)

4. 保活报文

保活报文用于确认客户端与服务端的连接状态。服务端对每个客户端维护独立的保活计时,超过设定超时时间未收到该客户端的保活报文,将主动关闭该客户端连接。

发送格式

{
  "frame_type": "keeplive"
}

返回格式(主机原样确认,并附加报文序列号与驱动标识):

{
  "frame_type": "keeplive",
  "frame_qn": 1,
  "frame_driver": "light-dali"
}

收到相同的 frame_type: "keeplive" 即表示连接正常。

保活策略

  • 建议每 5 秒发送一次保活报文
  • 客户端若在保活超时时间内未收到保活报文的返回值,应主动断开并重新建立连接
  • 服务端支持多客户端连接,因此各客户端必须独立发送保活报文

5. 控制报文详解

5.1 亮度控制(DAPC)

控制灯具到指定亮度,亮度范围为 0~254(对应 0%~100%)。

单灯亮度控制

{
  "driver_data": {
    "address_num": "1",
    "address_type": "shortaddress",
    "cmd_name": "-   DIRECT ARC POWER CONTROL",
    "cmd_type": "normal",
    "dali_index": "1",
    "cmd_value": "254"
  },
  "frame_type": "request",
  "frame_qn": "112233",
  "frame_driver": "light-dali",
  "device_info": {
    "sn": "11111"
  },
  "frame_result": "ok"
}

分组亮度控制

{
  "driver_data": {
    "address_num": "1",
    "address_type": "group",
    "cmd_name": "-   DIRECT ARC POWER CONTROL",
    "cmd_type": "normal",
    "dali_index": "1",
    "cmd_value": "127"
  },
  "frame_type": "request",
  "frame_qn": "112234",
  "frame_driver": "light-dali",
  "device_info": {
    "sn": "11111"
  },
  "frame_result": "ok"
}

全局广播亮度控制

{
  "driver_data": {
    "address_num": "1",
    "address_type": "broadcast",
    "cmd_name": "-   DIRECT ARC POWER CONTROL",
    "cmd_type": "normal",
    "dali_index": "1",
    "cmd_value": "254"
  },
  "frame_type": "request",
  "frame_qn": "112235",
  "frame_driver": "light-dali",
  "device_info": {
    "sn": "11111"
  },
  "frame_result": "ok"
}

5.2 色温控制(DT8 扩展)

控制 DT8 双色温灯具的色温,范围 2000K~7000K。

{
  "driver_data": {
    "address_num": "1",
    "address_type": "broadcast",
    "cmd_name": "control current tc value",
    "cmd_type": "extend",
    "dali_index": "1",
    "cmd_value": "4000"
  },
  "frame_type": "request",
  "frame_qn": "112236",
  "frame_driver": "light-dali",
  "device_info": {
    "sn": "11111"
  },
  "frame_result": "ok"
}

5.3 场景控制

调用灯具内部存储的场景(场景 0~15)。

指令名与场景对照表

指令名对应场景
16 GO TO SCENE 0场景 0
17 GO TO SCENE 1场景 1
18 GO TO SCENE 2场景 2
31 GO TO SCENE 15场景 15

⚠️ 注意:场景指令的 cmd_value 字段无效,照抄即可。

示例 - 调用分组 1 的场景 0

{
  "driver_data": {
    "address_num": "1",
    "address_type": "group",
    "cmd_name": "16  GO TO SCENE  0",
    "cmd_type": "normal",
    "dali_index": "1",
    "cmd_value": "100"
  },
  "frame_type": "request",
  "frame_qn": "112237",
  "frame_driver": "light-dali",
  "device_info": {
    "sn": "11111"
  },
  "frame_result": "ok"
}

5.4 基础控制指令

指令名功能cmd_type
0 OFF关灯normal
5 RECALL MAX LEVEL开灯(最大亮度)normal
6 RECALL MIN LEVEL调至最小亮度normal
1 UP调亮normal
2 DOWN调暗normal
3 STEP UP步进调亮normal
4 STEP DOWN步进调暗normal

6. 地址机制

6.1 地址类型

address_type含义address_num 范围
shortaddress单灯短地址0 ~ 63
group分组地址0 ~ 15
broadcast全局广播0(忽略)

6.2 地址规则

  • 单灯(shortaddress):对指定短地址的单个灯具进行控制
  • 分组(group):对指定分组内的所有灯具进行统一控制
  • 广播(broadcast):对当前 DALI 总线上的所有灯具进行控制

7. 状态更新报文

DALI 服务会主动向所有已连接的客户端推送灯具状态,报文格式如下:

{
  "frame_type": "update",
  "frame_qn": 274,
  "frame_driver": "light-dali",
  "driver_data": {
    "address_num": 1,
    "color": 3000,
    "brightness": 250,
    "dali_bus": 1,
    "online": 1,
    "device_type": 8,
    "cmd": "update_info",
    "address_type": "shortaddress"
  }
}

driver_data 字段说明

字段类型说明
address_numNumber灯具地址
address_typeString地址类型(shortaddress/group/broadcast)
colorNumber当前色温(K),仅 DT8 单灯上报
brightnessNumber当前亮度(0~254)
dali_busNumber总线编号(1 或 2)
onlineNumber在线状态(1=在线,0=离线),仅单灯上报
device_typeNumber设备报告的类型/版本号(来自 QUERY VERSION NUMBER),仅单灯上报
cmdString固定为 update_info

更新策略

  1. 数据有变化时立即发送一次
  2. 新客户端接入时发送一次所有灯具信息

分组/广播指令的亮度汇总规则

  • 分组(group)上报的 brightness 为该分组下所有灯中最亮的那盏灯的亮度值(取最亮值)
  • 广播(broadcast)上报的 brightness 为该 DALI 总线下所有灯中最亮的那盏灯的亮度值

⚠️ 注意:分组/广播的亮度为汇总值(取最亮),便于快速判断分区/总线内是否还有灯亮着;若需获取具体某盏灯的状态,请订阅单灯(shortaddress)上报。

⚠️ 注意:控制类指令执行后无确认报文,请通过 update 推送或主动查询确认灯具实际执行结果。


8. UDP 通信可靠性建议

本服务对控制指令不返回确认报文(控制后可通过状态推送或主动查询确认执行结果)。由于 UDP 协议不保证报文可靠到达,建议第三方系统遵循以下策略:

  1. 序列号管理frame_qn 字段建议每次发送累加,用于报文去重与追踪
  2. 控制确认:控制指令下发后,通过订阅状态更新报文或主动查询来确认灯具实际执行结果
  3. 非阻塞接收:接收 socket 需设置超时,避免阻塞
  4. 保活检测:定期发送保活报文,检测连接状态,断线后自动重连

9. 常用指令速查表

9.1 标准指令(normal)

功能指令名cmd_value说明
关灯0 OFF10忽略
调亮1 UP10忽略
调暗2 DOWN10忽略
步进调亮3 STEP UP10忽略
步进调暗4 STEP DOWN10忽略
开灯5 RECALL MAX LEVEL10最大亮度
暗灯6 RECALL MIN LEVEL10最小亮度
亮度控制- DIRECT ARC POWER CONTROL0~254直接亮度
场景 0~1516 GO TO SCENE 0 ~ 31 GO TO SCENE 15100调用场景

9.2 扩展指令(extend)

功能指令名cmd_value说明
色温控制control current tc value2000~7000当前色温(K)
查询当前色温get current tc value忽略返回色温值
查询场景色温 0~15get sence tc value 0 ~ get sence tc value 15忽略返回场景色温
设置场景色温 0~15set sence tc value 0 ~ set sence tc value 15亮度+色温写入场景色温

10. 典型应用示例

10.1 控制灯具到 50% 亮度

  • address_type:shortaddress
  • address_num:1(灯具短地址)
  • cmd_name:- DIRECT ARC POWER CONTROL
  • cmd_value:127(约 50% 亮度)

10.2 设置整组灯具色温 4000K

  • address_type:group
  • address_num:1(分组地址)
  • cmd_name:control current tc value
  • cmd_value:4000

10.3 广播关闭所有灯具

  • address_type:broadcast
  • cmd_name:0 OFF

10.4 调用场景

  • address_type:group
  • address_num:1(分组地址)
  • cmd_name:16 GO TO SCENE 0(场景 0)

11. 注意事项

  1. 报文精确匹配cmd_name 字段必须严格匹配指令名(含空格),否则无法识别
  2. 地址唯一:单灯短地址 0~63 需唯一,避免通讯冲突
  3. 广播地址broadcast 类型的 address_num 字段被忽略
  4. DALI 2 主动推送:DALI 2 服务默认关闭,需启用后才可接收状态推送
  5. 客户端保活:所有客户端必须周期性发送保活报文,超过保活超时未发送的客户端将被服务端断开

12. 相关文档

  • 《极物科技 | DALI调光灯 - 快速接入指南》
  • 《极物科技 | DALI调光灯 - IEC 62386 底层协议解析》
  • 《极物科技 | DALI调光灯 - DT8 双色温控制专题》
  • 《极物科技 | DALI调光灯 - 功能接口与调试指南》
  • 《极物科技 | DALI调光灯 - 设备发现与地址分配机制》
  • 《极物科技 | DALI调光灯 - 状态上报与监控机制》
  • 《极物科技 | DALI调光灯 - 工程实施与运维指南》

关于极物科技(ZEEWO)

极物科技(Zeewo)致力于为用户提供智能控制系统及硬件产品。我们以总线系统为技术底座,以**“稳定、可靠、快速响应”**为产品底线,是国内少有的拥有 KNX、DALI 全套软硬件自主研发能力的厂商之一。

我们的核心能力:

  • 系统架构:自研极物 OS,支持多协议无界融合(KNX/DALI/CAN/RS485/IP)。
  • 核心硬件:带双路 DALI 的 KNX 主机、超薄全金属定制面板、各类智选传感器及网关。
  • 生态互联:深度融入 Apple HomeKit、Matter、小度、HomeAssistant 及纯血鸿蒙生态。
  • 调试交付:独家支持 ETS 导出 XML 直接导入进行 APP 免编程调试,支持远程 WEB 运维。

我们的市场覆盖:
服务网点已覆盖全国核心城市(含长三角、珠三角、成渝等),并以高品质的方案深耕家居生活、酒店民宿、企业办公、疗愈康养、餐馆会所等多个细分领域。

在这里插入图片描述
在这里插入图片描述

(如果您在开发或落地中遇到技术问题,欢迎通过官网或后台私信与我交流探讨)

内容概要:本文系统性地介绍了Neo4j图数据库的技术体系、核心原理与企业级实战应用,涵盖从基础理论到生产落地的完整知识链条。深入剖析了Neo4j作为原生图数据库在存储架构、数据模型、查询语言(Cypher)方面的核心技术优势,重点讲解其基于节点、关系、属性的三元组模型和原生图存储机制,对比传统关系型数据库在处理复杂关联数据时的性能瓶颈。文档全面覆盖环境部署、工业级建模规范、Cypher深度编程、海量数据导入、Python/Java全栈开发集成、图算法分析(GDS)、高可用集群搭建及性能优等内容,并通过金融风控知识图谱项目实现端到端的综合实战演练,提供可直接复用的建模模板、优化方案与故障排查手册。; 适合人群:具备一定数据库基础,从事大数据、人工智能、金融风控、知识图谱等相关领域的研发人员、架构师及数据工程师,尤其适合工作1-5年希望掌握图数据库企业级开发能力的技术人员。; 使用场景及目标:①掌握Neo4j在金融风控、社交网络、知识图谱等复杂关联场景下的建模与查询能力;②实现海量图数据的高效导入、集群部署与性能优化;③结合GDS图算法进行社群发现、路径分析、核心节点挖掘等智能分析任务;④构建前后端一体化的企业级图谱可视化系统。; 阅读建议:此资源强工程化与生产级落地,建议结合实际项目边学边练,重点关注建模规范、索引设计、Cypher执行计划优化与集群运维等关键环节,配套源码与配置模板应作为开发参考标准使用。
代码下载链接: https://pan.quark.cn/s/a4b39357ea24 网站扒站工具,如标题所述,是用于复制或仿制网站内容的技术手段。 这些工具能够帮助用户抓取网站上的HTML代码、图片、CSS样式表、JavaScript文件等资源,以实现快速构建与原网站相似的新站点。 在IT行业中,这种行为有时被称为网页抓取或网页克隆,对于学习、分析或测试网站设计有着重要作用。 Teleport Ultra 是一款知名的扒站工具,它允许用户以一种系统化的方式下载整个网站到本地计算机上,以便离线查看或进一步分析。 以下是对Teleport Ultra及其功能的详细介绍: 1. **全面抓取**:Teleport Ultra能深入网站的每一个角落,不仅抓取首页,还能追踪链接,将整个网站的结构、内容和资源都下载下来。 这包括静态页面、动态内容、登录后的页面等。 2. **自定义设置**:用户可以设定抓取范围,例如只抓取特定目录,或者排除某些不想要的页面。 此外,还可以设置代理服务器,以匿名方式抓取,避免被目标网站检测到。 3. **时间度**:对于大型或需要分时段抓取的网站,Teleport Ultra支持定时任务,可以在指定的时间自动开始抓取工作。 4. **内容过滤**:该工具允许用户过滤掉不需要的元素,如广告、脚本或图片,只保留核心内容。 5. **网站镜像**:完成抓取后,Teleport Ultra可以创建一个完整的网站镜像,包括所有链接关系,使得在本地浏览时体验与在线网站几乎一致。 6. **报告生成**:它还提供详细的抓取报告,包括未成功下载的页面、错误信息等,方便用户检查和修复问题。 7. **易于使用**:Teleport Ultra的界面直观,即使对编程不...
源码下载地址: https://pan.quark.cn/s/a4b39357ea24 Electron-Lark release-download-count 下载地址: Release electron 版的飞书 Feishu (原 Lark),对网页版本进行封装 相比起普通网页版,功能如下 独立的运行窗口,不容易误关闭 关闭程序时后台运行,隐藏到通知栏小图标,双击可重新打开界面 新消息提醒,状态栏小图标闪烁 解除浏览器限制,避免因浏览器版本不对而提示无法使用 已知问题 - 部分功能无法使用(工作台/会议等) - 飞书网页版缺陷,请向官方反馈 历史问题 - ~~ubuntu18.04 Gnome 桌面,锁屏之后,系统通知栏图标 Tray 会消失, 当前规避方案如下~~ - ~~当有新消息提醒的时候,会重置通知栏图标 tray,保证哪怕因为锁屏导致 tray 消失,在收到新消息之后也会重新出现并闪烁~~ - 使用 alt + shift + m 的快捷键,重新显示界面以及 dock 图标 - ~~V1.0.3 版本已修复,添加了一个 linux 锁屏监听,自动 reset appTray~~ - V1.1.1 版本升级了 electron 依赖,问题解决~ (另外有一说一, 飞书的技术架构就是基于 Electron 的, Windows 和 Mac 客户端也都是使用 Electron 打包, 既然如此为什么不顺便为 Linux 也提供支持呢 ?) - 2021-04-26更新:后知后觉 deepin 商店已经有 wine 版本的飞书了,详情可看这个 deepin官方帖子 如果公司使用的并不是自己部署版本的飞书的话,可以尝试一下,ubuntu 上面可以再加一个 d...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值