KNX-Nachrichtenformate und Beispiele

kostenlosKostenloses technisches Material

Dieser Inhalt ist direkt lesbar und eignet sich für das Grundlagenlernen und die Suche.

KNX-Nachrichtenformate und Beispiele

1. KNX-Protokoll - Schichten (OSI-Modell vereinfacht)

Das KNX-Protokoll basiert hauptsächlich auf einer vereinfachten Version desOSI-Modellsund ist in vier Schichten unterteilt:

OSI-SchichtKNX-ImplementierungFunktionsbeschreibung
Physische SchichtTP (Twisted Pair), RF, IPdefiniert das physische Medium (z. B. KNX TP1 - Bus, drahtlose RF, KNXnet / IP-Tunnel).
Die Datenlink-SchichtKNX Data Link LayerVerwalten Sie Bus-Arbitration, Konflikterkennung, Frame-Prüfungen (z. B. Prüfsumme).
Netzwerk EbeneKNX Network LayerVerarbeitung von Routing (Multicast / Broadcast), Adressfilterung (physische und Gruppenadressen).
AnwendungsschichtKNX Application Layerdefiniert die Datensemantik (z. B. DPT-Typen) und die Logik für die Interaktion zwischen Geräten (Lese / Schreiben / Antwort).

2. Kommunikationsmodell

(1) Multicast (Gruppenkommunikation)

  • ZweckDas Gerät sendet Daten an eine Gruppenadresse, die von allen Geräten empfangen und verarbeitet wird, die diese Gruppenadresse abonnieren.
  • Merkmale: Effiziente One-to - Many-Kommunikation, geeignet für die Beleuchtungsteuerung, Szenenauslösung usw.
  • Beispiel:组地址 1/2/3Erhält den Befehl „Light on", und alle Lampen, die an diese Adresse gebunden sind, führen die Aktion aus.

(2)Punkt-zu - Punkt (Point-to - Point)

  • ZweckGeräte kommunizieren direkt über eine physische Adresse (z. B. Konfiguration, Diagnose).
  • MerkmaleDie physikalische Adresse des Ziels muss für die Initialisierung oder Wartung des Geräts eindeutig angegeben werden.
  • Beispiel: Zentrale Steuerung0.0.1zum Sensor.1.1.10Temperaturdaten angefordert.

3. Typ der Nachricht

KNX-Nachrichten werden inStandard-Frame (L_Data) 和 Erweiterter Frame (L_Data Extended):

TypSteuerungsfeldwertDatenlänge Beschränkung unterteiltAnwendungsszenarien
Standard-Frame0xBC≤ 15 ByteRegelmäßige Steuerung (Schalter, Prozentsatz)
Erweiterte Frame0xBF≤ 255 ByteBig Data Übertragung (wie Protokoll, Konfiguration)

4. Struktur der Adresse

(1) Physikalische Adresse (Individual Address)

  • Format:区域(4bit).线(4bit).设备(8bit)2 Bytes.
  • Beispiel:1.2.3 → 0x12 0x03(binär0001 0010 0000 0011).
  • Zweck: Identifiziert das Gerät eindeutig für die Peer-to - Peer-Kommunikation oder die Konfiguration des Geräts.

(2) Gruppenadresse

  • Format:主组(5bit)/中间组(3bit)/子组(8bit) 或 主组(5bit)/子组(11bit)2 Bytes.
  • Beispiel:
  • 3/2/1 → 0xE3 0x21(Binärsystem1110 0011 0010 0001(Binär
  • 5/2047 → 0xA5 0xFF(Binärsystem1010 0101 1111 1111)
  • NutzungLogische Gruppierung, Geräte Abonnements-Gruppen - Adresse realisieren die One-to - Many-Kommunikation.

5. Datendarstellung (APDU)

(1) DPT (Data Point Type)

KNX definiert die Datensemantik durch denDPT-Standard, im Format主类型.子类型(z. B.DPT 1.001Schalter für Boolean):

DPT BeispielDatenlängeBeschreibung
DPT 1.0011 bitBooleaner Wert (0= Off,1= Öffnen).
DPT 5.0011 ByteProzentsatz (0x00= 0%,0xFF= 100%).
DPT 9.0012 ByteTemperatur (Fließkomma, z. B.0x0C00= 24 ° C).
DPT 16.00114 - ByteZeichenkette (ASCII-codiert, z. B."KNX")。

(2)APDU Struktur

  • TPCI (Transport Control): 1 Byte, markiert den Nachrichtstyp (z. B. Datenanfrage, Bestätigung).
  • APCI (Application Control): 1 Byte, um den Operationstyp (Lesen, Schreiben, Antwort) zu definieren.
  • Data Load: Die tatsächlichen Daten basieren auf DPT-Codierung.

Beispiel:

  • Schalter Schreibbefehl:TPCI=0x00(写), APCI=0x80(DPT 1.001), Daten =0x01(开)。
  • Temperaturlesesanfrage:TPCI=0x40(读), APCI=0x00(无数据)。

6. Kommunikationsdienst

(1) Polling

  • Das Master-Gerät fordert aktiv Daten von einem Slave-Gerät an (z. B. den Sensorstatus).
  • Nachricht Beispiel:控制字段=0xBC, 目标地址=传感器物理地址, APCI=读请求。

(2) Bestätigung

  • Der Empfänger muss ein Bestätigungsframe (ACK) beantworten, um die Zuverlässigkeit zu gewährleisten.
  • Beispiel: Rückgabe vonACK报文(0xB0)。

(3) Wiederversuch-Mechanismus

  • Wenn kein ACK erhalten wird, überträgt der Absender die Nachricht nach einer angegebenen Zeitüberschreitung (normalerweise bis zu drei Mal).

7. Sicherheitsmechanismen

  • Herkömmlicher Modus: Keine Verschlüsselung, abhängig von der physischen Schicht Sicherheit (z. B. Buszugriffssteuerung).
  • KNX Secure: Hinzufügen von Datenverschlüsselung (AES - 128) und Authentifizierung, um Manipulation und Abhören zu vermeiden.
  • Beispiel für SicherheitsnachrichtenVerschlüsselungslast und MAC (Message Authentication Code) auf der Basis von Standard-Frame hinzufügen.

8. Taktische Testempfehlungen

  1. Package-Snap - Tool: Verwenden Sie Wireshark +KNX-Plug - inum den Busverkehr zu analysieren und bestimmte Gruppenadressen zu filtern.
  2. Fehlersuche:
  • Checksumme-Fehler: Prüft das Ergebnis der Ausnahme-OR der Nachricht.
  • Adresskonflikte: Sicherstellen, dass physische und Gruppenadressen einzigartig sind.
  1. ETS-KonfigurationBindet DPT-Typen im ETS-Projekt, um Datenanalysefehler zu vermeiden.

Im KNX-Protokoll wird die Nachricht überwiegend überSteuerungsfeld和TPCI (Transport Control Information)unterschieden, wobei verschiedene Nachrichtentypen für verschiedene Szenarien geeignet sind (z. B. Steuerungsanweisungen, Datenanfragen, Antworten usw.). Im Folgenden finden Sie eine detaillierte Beschreibung und ein Beispiel für gängige KNX-Nachrichtentypen:


1. Standard-Frame (L _ Data Standard)

  • Steuerungsfeld:0xBC
  • Datenlänge: ≤ 15 Byte
  • Anwendbares Szenario: Regelmäßige Steuerungsanweisungen (Schalter, Prozentsatz, Zustandlese, etc.).

Beispiel: Schaltersteuerung

BC 11 0A E1 03 01 01 80
  • Steuerungsfeld 0xBC: Standard-Frame, normale Priorität
  • Quelladresse 0x110A(1.1.10)
  • Zieladresse 0xE103(Gruppenadresse 1 / 2 / 3).
  • Daten 0x01: Schalter-Zustand (Ein).
  • Prüfsumme 0x80: Ergebnis der Exclusive OR-Berechnung.

2. Erweiterte Frames (L _ Data Extended)

  • Steuerungsfeld:0xBF
  • Datenlänge: ≤ 255 Byte
  • Anwendbares Szenario: Übertragung großer Datenmengen (z. B. Zeichenketten, Logs, komplexe Konfigurationen).

Beispiel: Senden von Zeichenketteninformationen

BF 23 05 E2 51 0E 10 4B 4E 58 20 54 65 73 74 00 00 00 5C
  • Steuerungsfeld 0xBF: Erweiterte Frames, niedrige Priorität.
  • Quelladresse 0x2305(2.3.5).
  • Zieladresse 0xE251(Gruppenadresse 2 / 5 / 1).
  • Datenlänge 0x0E14 Bytes Daten.
  • Daten 0x10 4B 4E 58 20 54 65 73 74 00 00 00:
  • DPT 16.001 (Zeichenfolge) mit"KNX Test"(ASCII-Codierung).
  • Prüfungen und 0x5C: Berechnung geringer.

3. Bestätigung des Frames (ACK / NACK)

  • Steuerungsfeld:0xB0(ACK) oder0xB1(NACK)
  • StrukturKeine Daten, nur Kontrollfelder und Prüfsumme.
  • AnwendungsszenarienDer Empfänger bestätigt oder verweigert.

Beispiel: ACK bestätigt

B0 00 00 00 00 00 00 B0
  • Kontrollfeld 0xB0Bestätigung des Frame (ACK).
  • Prüfungen und 0xB0: Nur das eigene Exclusive-OR - Ergebnis ist0xB0。

Polling Request

  • Steuerungsfeld:0xBC(Standard-Frame)
  • TPCI:0x40(Leseanfrage)
  • Anwendbares Szenario: Das Master-Gerät fordert aktiv Daten aus dem Slave-Gerät an.

Beispiel: Lesen von Temperatursensordaten

BC 00 01 12 34 01 40 00 2D
  • Quelladresse 0x0001(Zentralgerät 0.0.1).
  • Zieladresse 0x1234(physische Sensoradresse 1.2.52).
  • Datenlänge 0x01: 1 Bytes Daten.
  • TPCI + APCI 0x40: Leseanforderung (ohne Datenlast).
  • Prüfungen und 0x2D: Berechnung geringer.

5. Antwort (Response)

  • TPCI:0x80(Schreibantwort) oder0xC0(Leseantwort)
  • Szenario: Daten oder Status der Anforderung, die das Gerät antwortet.

Beispiel: Der Temperatursensor gibt Daten zurück

BC 12 34 00 01 02 06 00 5C
  • Quelladresse 0x1234(Sensoradresse 1.2.52).
  • Zieladresse 0x0001(Zentralgerät 0.0.1).
  • Datenlänge 0x02: 2 Byte Daten.
  • Daten 0x0600: Temperaturwerte (DPT 9,001, 24,0 ° C).
  • Prüfungen und 0x5C: Berechnung geringer.

6.Übertragung (Broadcast)

  • Zieladresse:0x0000(All-Null - Adresse)
  • Anwendbares SzenarioDas Gerät sendet globale Befehle an alle Knoten des Busses (z. B. Systemreset).

Beispiel: Globale Reset-Befehl

BC 00 01 00 00 01 FF 01
  • Quelladresse 0x0001(zentrales Gerät).
  • Zieladresse 0x0000: Broadcast-Adresse.
  • Daten 0xFFZurücksetzungsbefehl (Code).

7. Sicherheit (KNX Secure)

  • Steuerungsfeld:0xBC 或 0xBF(in Kombination mit Verschlüsselungs-Flags)
  • Struktur: Verschlüsselungslast und MAC (Message Authentication Code) auf Standard-Frame hinzufügen.
  • Anwendbares SzenarioVerhinderung von Datenmanipulationen oder Abhören.

Beispiel (vereinfachte verschlüsselte Nachrichten)

BC 11 0A E1 03 10 01 80 [加密负载] [MAC] 2A
  • Datenteil: Klartext-Daten0x01wird in längeren Byte verschlüsselt.
  • MAC: verwendet, um die Datenintegrität zu überprüfen (z. B. AES - 128 Berechnungen).

Schlüsselvergleichstabelle

NachrichtentypKontrollfeldDatenlängeTPCITypisches Szenario
Standard-Frame0xBC≤ 15 Byte0x00Schaltersteuerung, Prozentsatz-Anpassung
Erweiterter Frame0xBF≤ 255 Byte0x00Lange Text, komplexe Konfiguration
ACK Bestätigung0xB0无-Erfolgreiche Antwort erhalten
NACK Ablehnung0xB1无-Erhalt fehlerhafter Antwort
Lesesanfrage0xBC1 Byte0x40Aktive Anforderung von Sensordaten
Schreibantwort0xBCVariable0x80Gerätestatus-Aktualisierung Bestätigung
Send Frame0xBCVariable0x00Anweisungen auf Systemebene (z.B. Reset)

Hinweise

  1. TPCI versus APCI:
  • TPCI (Transport Control) Kennzeichnung des Nachrichtstyps (Lesen, Schreiben, Antwort).
  • APCI (Application Control) definiert spezifische Aktionen (z. B. DPT-Typen).
  1. Adressfilterung: Das Gerät verarbeitet nur Nachrichten, die mit der Zieladresse übereinstimmen (physische oder abonnierte Gruppenadresse).
  2. ChecksummeImmer ein XOR-Wert für alle vorhergehenden Bytes.

Ich hoffe, dass diese Beispiele Ihnen helfen, die verschiedenen Nachrichtentypen von KNX zu verstehen! In der praktischen Entwicklung wird empfohlen, die offizielle Protokolldokumentation und die Validierung von ETS-Tools zu kombinieren.

Die folgenden Beispiele zeigen:

Beispiel 1: Schaltersteuerung (Standard-Frame)

Szenario: Gerät für die physische Adresse1.1.10an die Gruppe1/2/3Senden Sie den Beleuchtungsanweis.
Nachricht:

BC 11 0A E1 03 01 01 80
  • Steuerungsfeld 0xBCStandard-Frame, normale Priorität.
  • Quelle 0x110A: Gerätenadresse1.1.10。
  • Zieladresse 0xE103: Gruppenadresse1/2/3(E1gibt den Adresstyp der Gruppe an.
  • Datenlänge 0x011: 1 Bytes Daten.
  • Daten 0x01: Schaltzustand (0x01= Ein,0x00= geschlossen).
  • Prüfungen und 0x80:BC XOR 11 XOR 0A XOR E1 XOR 03 XOR 01 XOR 01 = 80。

Beispiel 2: Temperatursensordaten (erweiterter Rahmen)

Szenario: Sensor2.3.5Melde Temperatur22.5°Can Gruppenadresse2/5/1。
Nachricht:

BF 23 05 E2 51 02 06 00 5C
  • Steuerfeld 0xBF: Erweiterter Frame, niedrig Priorität.
  • Quelle-Adresse 0x2305: Gerätadresse2.3.5。
  • Ziel-Adresse 0xE251: Gruppen-Adresse2/5/1。
  • Datenlänge 0x02: 2 Byte Daten.
  • Daten 0x0600:
  • DPT 9.001 (Temperatur), kodiert als0x0600 → 22.5°C(Floating Point-Format).
  • Prüfungen und 0x5C: Berechnung geringer.

Beispiel 3: Szenensteuerung (Multibyte-Daten)

Szenario: Zentrale Gerät0.0.1Trigger-Szenario3(Gruppenadresse)5/0/3)。
Meldung:

BC 00 01 E5 03 03 03 00 00 6F
  • Kontrollfeld 0xBC: Standard-Frame.
  • Quelladresse 0x0001: Zentrale Adresse0.0.1。
  • Zieladresse 0xE503: Gruppenadresse5/0/3。
  • Datenlänge 0x03: 3 Bytes Daten.
  • Daten 0x030000Szenario Nr. 3, zusätzliche Parameter.
  • Prüfungen und 0x6F: Berechnung.

Schlüsselpunkt

  1. Adresscode:
  • physische Adresse:区域(4bit).线(4bit).设备(8bit)→ 2 Byte (z. B.1.1.10 → 0x11 0x0A)。
  • Adresse der Gruppe:主组(5bit)/中间组(3bit)/子组(8bit)→ 2 Byte (z. B.1/2/3 → 0xE1 0x03, die höchste Zahl1110Angabe der Adresse).
  1. Daten kodieren:
  • Schalter: 1 Schalter (0x00= aus,0x01= ein).
  • Temperatur: 2 Byte Gleitkomma (z. B. DPT 9.001).
  • Prozentsatz: 1 Byte (0x00= 0%,0xFF= 100%).
  1. Prüfungen und: Exclusive OR für alle vorhergehenden Bytes (z. B.BC XOR 11 XOR 0A XOR E1 XOR 03 XOR 01 XOR 01 = 80)

Praxisempfehlung

  • Konfiguration des Geräts mit ETS (KNX Engineering Tools Software) ohne manuelles Paket.
  • Nachrichtenbeispiele dienen hauptsächlich zum Verständnis der zugrunde liegenden Protokolle und können mit Package-Grab - Tools (wie Wireshark + KNX-Plugins) debuggt werden.
  • Vertieftes Lernen findet man im offiziellen KNX-Dokument „KNX Standard" oder im Buch „KNX for IoT".

Relevante Etiketten
Sollte man diese Informationen für ein echtes Projekt verwenden?

Gehen Sie zum Tool Center, um Nachrichten zu analysieren, CRC-Prüfungen und Geräte-Debugging zu erledigen, oder senden Sie Anforderungen für Auswahl - und Zugangsvorschläge.

Ingenieur Mitglied

Verwandeln Sie diesen Artikel in ein umsetzbares Debuggermaterial

Erweiterte Nachrichtenanalyse, Paket-Downloads, Codebeispiele, Engineering-Szenarien und Priority-Technischer Support sind für die Real-Projekt - Bereitstellung möglich.

Unbegrenzte Werkzeuge
Datenpaket und Codepaket
Vollständige Engineering Case-Basis
Vorrangiger Zugang zum technischen Support

Antwort veröffentlichen

Ihre E-Mail - Adresse wird nicht öffentlich gemacht. Erforderliche Elemente wurden verwendet * markiert.