0. 前言

在智能楼宇、智能家居、酒店照明、暖通控制领域,KNX 是事实上的国际标准总线。它和 DALI 不同:DALI 是专用照明总线,而 KNX 是全能型分布式楼宇总线。本文从协议栈、拓扑、寻址、帧结构、实战要点完整梳理,适合做网关、驱动、二次开发的同学直接使用。


1. KNX 是什么?

KNX(Konnex)

  • 国际标准:ISO/IEC 14543、国内标准 GB/Z 20965
  • 前身:EIB + BatiBus + EHS 合并而来
  • 架构:无主机、分布式、对等通信
  • 特点:多厂商互通、稳定、抗干扰、长寿命
  • 速率(TP1 双绞线):9600bps

适用系统:

  • 照明控制
  • 窗帘 / 遮阳
  • 空调 / 地暖 / 新风
  • 安防、传感器、能耗监测
  • 大型楼宇跨区域联动

2. KNX 协议栈(5 层精简 OSI)

KNX 不使用完整 OSI,只保留最必要的 5 层,非常适合嵌入式实现。

  1. 物理层(PHY)
    • 电气信号、介质、编码
  2. 数据链路层(MAC)
    • 帧结构、CSMA/CA、优先级、CRC
  3. 网络层(Network)
    • 地址、路由、跨线路转发
  4. 传输层(Transport)
    • 连接模式、确认、重传
  5. 应用层(Application)
    • 组对象、DPT 类型、ETS 配置

3. 物理层(最常用:TP1 双绞线)

3.1 介质与电气

  • 两线无极性,总线供电 + 通信同线
  • 电压:29V 左右
  • 编码:曼彻斯特编码
  • 单段长度:≤1000m
  • 单段设备:≤64 个

3.2 常见物理类型

  • TP1:双绞线(99% 项目都用这个)
  • PL110:电力线(不用布线,但不稳定)
  • RF(868MHz):无线
  • KNXnet/IP:以太网隧道 / 路由(现代大屏、网关主流)

4. 数据链路层(核心:帧 + 防冲突)

4.1 CSMA/CA 冲突避免

  • 先监听总线是否空闲
  • 空闲才发送
  • 多优先级机制,保证报警 / 紧急命令优先

4.2 4 级优先级

  1. 系统命令(最高)
  2. 报警 / 紧急
  3. 普通控制
  4. 低优先级(如能耗上报)

4.3 标准 KNX 帧结构(简化版)

[控制字节] + [源地址] + [目标地址] + [数据长度+数据] + [校验码]
  • 控制:优先级、帧类型、重复标志
  • 源地址:物理地址
  • 目标地址:组地址 / 物理地址
  • 数据:1~6 字节(常见 1 字节开关、2 字节调光)
  • CRC:保证传输可靠

5. 网络层:两级地址体系(必须懂)

KNX 最核心的设计:物理地址 + 组地址分离

5.1 物理地址(PA):设备身份证

格式:

区域.线路.设备
  • 区域:0~15
  • 线路:0~15
  • 设备:0~255
  • 例子:1.2.10 → 1 区、2 线、10 号设备

作用:

  • 设备唯一标识
  • 用于 ETS 配置、诊断、点对点通信

5.2 组地址(GA):功能逻辑地址

三级格式(最常用):

主组 / 中间组 / 子组

例子:

  • 1/1/1:1F 客厅主灯
  • 1/2/1:1F 空调开关
  • 2/3/4:2F 走廊场景

特点:

  • 多对多、发布 / 订阅模式
  • 一个报文可以控制所有同组设备
  • 与物理位置无关,只和功能有关

6. 三层树形拓扑(大型楼宇必备)

骨干线(Backbone)
   ↓
区域(Area)×15
   ↓
线路(Line)×15
   ↓
设备 ×64
  • 一条线路:≤64 设备、≤1000m
  • 线路耦合器:隔离、路由、限流
  • 骨干耦合器:跨区域
  • 理论最大设备:15×15×256 = 57375

7. 应用层:组对象 + DPT(互操作关键)

7.1 组对象 Group Object

每个 KNX 设备对外暴露的通信接口,例如:

  • 开关 1 路
  • 调光亮度值
  • 窗帘开度
  • 温度值
  • 场景调用

7.2 DPT(数据点类型)

KNX 规定了标准数据格式,保证不同厂商设备互通。

常用 DPT:

  • DPT 1.001:开关(1bit:0 = 关,1 = 开)
  • DPT 1.003:启停
  • DPT 5.001:百分比(0~100%)
  • DPT 9.001:温度(2 字节 float)
  • DPT 18.001:场景调用

只要 DPT 一致,A 厂开关就能控制 B 厂灯具。


8. KNX 与 DALI 的区别(面试 / 实战高频)

表格

KNX DALI
定位 全能楼宇总线 专用照明总线
架构 分布式对等 主从(1 主 64 从)
速率 9600bps 1200bps
设备数量 最大≈5 万 单条总线 64
布线 29V 两线 12V 两线
功能 照明 + 暖通 + 窗帘 + 安防 仅照明(调光 / 场景 / 反馈)
实战关系 上层主控系统 照明子系统

真实项目结构:

中控/大屏 <---> KNX 网关 <---> DALI 网关 <---> DALI 灯具

9. 嵌入式开发实战要点

9.1 硬件

  • 常用 PHY:TP-UART / NCN5153 / TPUART2
  • 必须带:总线滤波、TVS、磁珠
  • 主控:STM32 / ESP32 均可

9.2 软件

  • 可以用:
    • 开源栈:knxd、Calimero
    • 厂商 SDK
  • 关键点:
    • 严格时序
    • 组对象 + DPT 必须标准
    • ETS 是唯一配置工具

9.3 布线

  • 两芯屏蔽线
  • 远离强电
  • 无极性,不用区分正负

10. 总结

  • KNX 是楼宇自动化的标准级总线,稳定、跨厂商、大型项目必选。
  • 核心是:物理地址定位设备 + 组地址实现逻辑控制
  • DALI 只管灯,KNX 管整栋楼。
  • 做智能楼宇、网关、中控,KNX 是必须掌握的协议。

 

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐