Zum Inhalt springen
Nur ganz kurz für unglaubliche 0 Euro (sonst 39,99€)
4 ETS Projekte als Vorlagen zum vergleichen
Ich habe damals nirgendwo ein kurzes ETS Beispiel gefunden.
Am liebsten hätte ich mein Projekt mit anderen verglichen.
Ich war neugierig, "Wie machen es die anderen?"
Deshalb habe ich für dich diese 4 ETS Projekte zusammen gestellt.
Du kannst die Projekte direkt in der ETS öffnen und sehen,
wie ich es gemacht habe.
  • 1. Rollladensteuerung
  • 2. Präsenzmelder benutzen
  • 3. Licht schalten mit einem Taster
  • 4. Fensterkontakte richtig parametrieren
Startseite » 1. Lange vor der Bauplanung » 1.3. KNX Grundlagen » Die KNX Telegramm Interna

Die KNX Telegramm Interna

Heute mal was für die richtigen Cracks. Du wolltest schon immer wissen, wie ein KNX Telegramm auf Bit-Ebene aussieht. Hier kommt die Antwort. Für alle die einen KNX-Kurs machen möchten, sehr wichtige Lektüre. Diejenigen, die eigene KNX Hardware bauen wollen, ja es gibt auch OpenSource KNX, müssen das hier wissen. Profis kriegen eine kleine Auffrischung der Materie.

Wir sprechen ja immer von Telegrammen, die über den Bus laufen. Was bedeutet das? Nun ganz unten auf der Stromebene wird einfach für eine bestimmte Zeit ein Kurzschluss auf der Leitung erzeugt und so das NULL Bit gesendet. Bei dem EINS Bit passiert einfach gar nichts. Jep, genau die Kommunikation auf dem KNX Bus läuft genau so. Gehen wir also mal auf die Einzelheiten ein.

Wie werden die Bits denn im KNX Telegramm gesendet?

Auf der untersten Ebene fliegen also Bits durch deine grüne Leitung. Entweder eine EINS oder eine NULL. Mehr gibt es da nicht. Ist wie bei einem Netzwerk oder in einem Computer.

Auf der KNX Leitung funktioniert das so wie auf diesem Bild dargestellt:

So wird ein KNX Telegramm übertragen.
Übertragung von Bits auf dem KNX-Bus. Bei einer NULL wird die Leitung einfach kurzgeschlossen.

Wenn nichts passiert, liegt die Spannung bei ca. 30 Volt. Dann lauschen alle Komponenten und wissen, da ist nichts los. Sobald eine Komponente etwas sendet, und dieses Telegramm eine NULL enthält, wird das erkannt.

Daraus siehst du auch, warum mehrere Teilnehmer gleichzeitig eine Antwort senden können. Antworten alle mit einem „JA, Nachricht verstanden“ weiß die Komponente, an die diese Nachricht gegangen ist gar nicht, ob die Antwort von einem oder von vielen Teilnehmern kam.

Die Zeit zwischen den roten Linien beträgt genau 1/9600 Sekunden oder 104 µs. Es können nämlich auf dem KNX Bus 9600 Bits pro Sekunde übertragen werden.

Jetzt weißt du auch, wozu die Drossel so wichtig ist. Da die Spannungsversorgung dauerhaft versucht die 30 Volt zu halten, würde sie die NULLen „ausbügeln“. Damit das nicht passiert, wird eine Drossel vorgeschaltet. Jeder Teilnehmer hat zusätzlich einen Kondensator eingebaut, da er ja, durch eine NULL, kurzzeitig einen Spannungsabfall kompensieren muss.

Wie läuft es denn nun bei Kollisionen?

Eine Kollision tritt auf, wenn zwei Teilnehmer gleichzeitig unterschiedliche Telegramme senden. Dann muss eine Kollisionsbehandlung statt finden. KNX regelt Kollisionen mittels CSMA/CA Verfahren (Carrier Sense Multiple Access with Collision Avoidance).

Das bedeutet nichts anderes als „einer gewinnt immer“. Eine Nachricht kommt auf jeden Fall durch, es wird keine Bandbreite verschwendet. Funktionieren tut das so:

Kollisionsbehandlung bei KNX Telegrammen.
Kollisionsbehandlung bei KNX. Teilnehmer 1 gewinnt. Er darf seine Nachricht auf den Bus senden.

Während des Sendens „hören“ die Teilnehmer, was auf dem Bus so los ist. Wenn nun, wie in dem Beispiel oben, ein Teilnehmer eine EINS senden möchte (er würde also quasi nur abwarten), die Spannung auf dem Bus aber fällt, weiß der Teilnehmer „oh, da hat ein anderer eine NULL gesendet“. In diesem Fall bricht Teilnehmer 2 die Nachricht sofort ab. Teilnehmer 1 kriegt von der Aktion gar nichts mit, da er ja seine NULL senden konnte.

Deshalb spricht man auch von „NULL Gewinnt“ Kollision Behandlung.

Wie lang darf die Leitung sein?

Immer wieder kommt die Frage: Wie lang darf denn die KNX Leitung sein? Darf ich in mit einer Linie durch das ganze Haus gehen? Hier die Antworten aus den KNX Unterlagen:

  • Spannungsversorgung – Teilnehmer: maximale Entfernung 350 Meter
  • Teilnehmer – Teilnehmer: maximale Entfernung 700 Meter (die Spannungsversorgung steht dann in der Mitte)
  • Gesamtlänge: 1000 Meter (dabei wird von der SV noch ein Strang mit ca. 300 Metern abgezweigt)

So, ich denke damit kommt jedes durchschnittliche Einfamilienhaus mit einer Spannungsversorgung aus. Wenn 700 Meter nicht reichen, hast du ein Haus, bei dem eine zweite Leitung keine große Rolle mehr spielt.

Wie lang dar eine KNX Leitung sein?
Leitungslängen in Metern. Mit einer Spannungsversorgung kannst du 1000 m KNX-Bus versorgen.

Was steht denn nun drin, im KNX Telegramm?

Jetzt, da du weißt, wie du ein Telegramm mit einem Oszilloskop auslesen kannst, kommen wir zu dem Inhalt. Du willst ja auch verstehen, was du da siehst. Also los.

Zuerst aber noch etwas Grundlagen. Bei der KNX Übertragung werden keine Byte übertragen, sondern Zeichen. Diese Zeichen enthalten dann jeweils ein Byte (8-Bit) Information. Ein Zeichen beginnt mit einem Startbit, gefolgt von den 8 Bits der Information. Danach kommt ein Bit zur Prüfung der Parität und ein Stop-Bit. Damit klar ist, dass das Zeichen zu Ende ist, folgt eine Pause von 2 Bits (also 208 µs). Ein Zeichen „dauert“ also 13 Bits oder 1,35 ms.

Ein Telegramm ist, je nach Inhalt zwischen 8 und 23 Zeichen lang. Vor jedem Telegramm muss der Sender 50 Bit abwarten, bevor er sendet. Nach einem Telegramm ist für 15 Bit Stille auf dem Bus. Hier haben die Teilnehmer Zeit, die Aufgabe zu verarbeiten. Danach senden alle gleichzeitig eine Quittung die 1 Zeichen lang ist.

Daraus ergibt sich, dass ein Telegramm zwischen 20 ms und 40 ms lang den Bus belegt. Maximal passen also 50 Telegramme in einer Sekunde durch den Bus. Dann ist Schluss. bei größeren Telegrammen, mit Text sind es sogar „nur“ 25 pro Sekunde. Jetzt siehst du auch, warum es nicht ratsam ist die Temperatur von jedem Taster Sekündlich an die Visualisierung senden zu lassen. Es kann sein, dass dann kein Platz mehr für wichtigeres ist.

Wie ist so ein KNX Telegramm aufgebaut?

8 bis 23 Zeichen pro KNX Telegramm. Das ist ja jetzt nicht besonders viel. Aber um die Information zu senden „Lampe An“ sind 8 Zeichen halt auch nicht wenig. Da steckt doch bestimmt noch mehr drin. So ist es auch. Hier die Zusammensetzung:

KNX Telegramm und seine Bausteine
Der Aufbau eines KNX Telegramms. Bei einer Nutzinformation von 1 Bit, ist es dann 8 Zeichen lang.

Der Aufbau im einzelnen ist wie folgt:

  • Steuerfeld – Regelt die Priorität der Telegramme auf dem Bus und gibt an ob diese Nachricht eine Wiederholung ist.
  • Quelladresse – Die physikalische Adresse des Absenders (2 Byte)
  • Zieladresse – Die Gruppenadresse zu der die Nutzinformation gehört ODER eine physikalische Adresse bei der Programmierung (Bit 17 bei der Zieladresse bestimmt ob es eine GA oder eine PA ist)
  • Routing Zähler – Fängt bei 7 an und wird bei jedem Koppler reduziert. Bei 0 wird das Telegramm verworfen.
  • Länge der Nutzinformation – Gibt an wie viele Bits Nutzinformation folgen.
  • Sicherungs Feld – Dient zur Kontrolle, ob die Daten richtig übertragen wurden.

Mathematik: 8 Bit+16 Bit +17 Bit +3 Bit +4 Bit +1 Bit +8 Bit =57 Bit = 8 Byte = 8 Zeichen

Nur ganz kurz für unglaubliche 0 Euro (sonst 9,99€)
KNX Spickzettel auf einer Seite!
Ich habe zwei Kurse gemacht und einige Bücher gelesen
um KNX zu versehen.
Dabei ist es so einfach!
Um es zu verstehen, brauchst du lediglich diesen Spickzettel!
Jetzt Herunterladen, ansehen und verstehen.

Fazit

So, ich hoffe ich konnte ein wenig Klarheit in die Interna von KNX Telegrammen bringen. Das war jetzt ein wenig trockene Theorie, aber du hast bis hierher gelesen, also war es interessant. Diese Ebene des KNX Wissens ist aber auch gut, um die größeren Zusammenhänge zu verstehen. Wer es noch genauer wissen will, dem empfehle ich dieses PDF.

Viel Spaß mit KNX,
Damian

Weiterlesen

Ein Gedanke zu „Die KNX Telegramm Interna“

  1. Hallo,
    wenn ich einen 8-Bit-Befehl (ist das der Einstell-Wert des Object-Typ in der ETS?)übertragen möchte, geht sich das mit 8 Zeichen noch aus(8×8=64)?. Sprich: ein 1Bit-Befehl benötigt gleich lang wie ein 8Bit-Befehl?
    Danke im Voraus
    LG Josef

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.


KNX Blogger Freebies alle!
Nur heute: Das große KNX Bundle!
✓ E-Book – „Smarthome oder nicht?“ ✓
✓ A4 Spickzettel – KNX auf einer Seite
✓ 4 ETS Projekte – ETS sofort verstehen


Die Datei wird sofort an die angegebene E-Mail gesendet.