UDP Empfänger

Implementiert ab Firmware Version 3.3.0
Dieser Job löst, in Abhängigkeit von vorher definierten Inhalten bestimmter UDP-Netzwerkpaketen, beliebige Telegramme in KNX aus. Zusammen mit dem Job „UDP-Sender“ ist damit eine bidirektionale Anbindung von UDP-basierten Anwendungen an den EIBPORT und damit an das KNX-System möglich.
Name
Pflichtfeld. Vergeben Sie einen eindeutigen Namen für den Job. Der Name darf maximal 15Zeichen enthalten.
Freigabeobjekt
Durch das Freigabeobjekt wird der Job freigegeben oder gesperrt. Es handelt sich um ein EIS 1 Objekt:
Gruppenadresse nicht vergeben = Job freigegeben
Gruppenadresse eingetragen, Wert 1 = Job freigegeben
Gruppenadresse eingetragen, Wert 0 = Job ist gesperrt
Gruppenadresse eingetragen, Kein Wert = Job ist gesperrt
Sobald eine Adresse in das Feld eingetragen ist, verhält sich die Freigabe entsprechend dem Wert der Gruppenadresse. Wurde auf die Adresse bisher kein Wert gesendet, ist sie also zurzeit Werte-los, ist der Job gesperrt.
Port
Tragen Sie hier die Portnummer ein, auf der die gewünschte Anwendung Ihre UDP-Daten an den EIBPORT senden wird: 1-65535.
Protokollauswertung
Paketkodierung
Wählen Sie hier die Zeichenkodierung mit welchem das ankommende Paket kodiert wurde. Möglich ist:
ISO-8859-1: Zeichenkodierung die z. B. von Windows Systemen genutzt wird
UTF-8: Zeichenkodierung von anderen Systemen, z. B. Linux, MAC.
Wenn Sie die falsche Zeichenkodierung wählen, werden die Sonderzeichen einer Nachricht nicht richtig interpretiert. Sie erfahren auf Seiten der sendenden Anwendung welche Kodierung genutzt wird.
Treffer definieren
Mit Hilfe dieser Auswahl bestimmen Sie welcher Inhalt des gewünschten Paketes ein oder mehrere KNX-Telegramme auslöst. Sie haben folgende Möglichkeiten:
per ASCII-Protokollanalyse (1 Treffer):
Nutzen Sie ein Analysetool („UDP Packet Analysis Tool“) um den gewünschten Paketinhalt als Text (ASCII) definieren zu können. Das Analysetool öffnet sich nach Drücken des „Start“ Buttons. (Beschreibung des Analysetools s. u.). In diesem Modus können Sie EINEN Treffer definieren. Legen Sie mehrere Jobs an, falls mehrere Treffer gefordert sind.per Binärprotokollanalyse (16 Treffer):
Nutzen Sie ein Analysetool („UDP Packet Analysis Tool“) um den gewünschten Paketinhalt binär definieren zu können. Das Analysetool öffnet sich nach Drücken des „Start“ Buttons. (Beschreibung des Analysetools s. u.). In binären Modus können Sie 16 Treffer definieren. Nutzen Sie weitere Jobs falls mehr als 16 Treffer gefordert sind.per manuellem regulären Ausdruck (16 Treffer):
Wenn Sie eigene reguläre Ausdrücke verwenden wollen, nutzen Sie diese Auswahl. Die Konfigurationsmaske für reguläre Ausdrücke wird bei Auswahl freigeschaltet. Die Treffer werden mit Klammern („()“) gekennzeichnet und von links nach rechts durchnummeriert. Es können bis zu 16 Treffer definiert werden.
ASCII Protokollanalyse – UDP Packet Analysis Tool
Das UDP Packet Analysis Tool für die ASCII Protokollanalyse hilft Ihnen, das empfangene Datagramm aufzuzeichnen, den gewünschten Paketinhalt auf ASCII Basis zu definieren, und diesen mit einer Gruppenadresse zu verknüpfen. Die Verknüpfung wird automatisch in die Job Maske übertragen. Es ist nur 1 Treffer pro Job möglich.

ASCII Protokollanalyse
Live Capture
Hier werden die, auf der in der Job Maske eingestellten Portnummer eingehenden UDP-Pakete aufgelistet. Die eingestellte Portnummer wird in roter Schrift dargestellt „Eingehende Pakete auf Port XXXX“. Über die Buttons darunter wird die Aufzeichnung der Pakete (Capture) gestartet oder gestoppt. Beim Start des Analyse Tools ist die Aufzeichnung automatisch aktiviert.
Paketinhalt
Um den Inhalt eines Paketes anzuzeigen, muss das gewünschte Paket in der Live-Capture Auflistung markiert werden. Markieren Sie dann den gewünschten Paketinhalt mit dem Mauszeiger.
Inhalt des Wertes
Legen Sie bitte fest, ob der markierte Inhalt statisch oder dynamisch ist.
Verhalten
Bestimmen Sie das Vorgehen, was passieren soll, falls der markierte Inhalt in einem UDP-Paket vorkommt.
Wert einlesen:
Der markierte Wert bzw. der Wert, der anstelle der Markierung erscheint, wird eingelesen und auf die entsprechende Gruppenadresse gesendet.Treffer melden:
Kommt der markierte Wert vor, wird ein vorher definierter Wert auf die Gruppenadresse gesendet. Bei Auswahl erscheint das Feld „Gesendeter Wert bei Treffer“.
EIS-Typ
Bestimmt den EIS-Typen des definierten Ausgangs. Es stehen zur Verfügung:
EIS 1 = 1 Bit Wert.
EIS 5 = 2 Byte Floating Point (Fließkomma) Wert.
EIS 6 = 1 Byte Prozentwert.
EIS 9 = 4 Byte Floating Point (Fließkomma) Wert.
EIS 10u = 2 Byte Dezimal Wert ohne Vorzeichen.
EIS 11u = 4 Byte dezimal Wert ohne Vorzeichen. Formatierung: siehe EIS 10u.
EIS 14u = 1 Byte Dezimalwert ohne Vorzeichen.
EIS 15 = 14 Byte Textwort (Bis zu 14 Zeichen Text).
Adresse
Adressfeld zur Bestimmung der Gruppenadresse auf den der Ausgang sendet (Verhalten des Adressfelds, siehe oben).
Definierte Ausgänge
Hier werden die zuvor konfigurierten Ausgänge dargestellt. Dabei gibt es folgende Syntax:
[getroffener Inhalt]@[Ausgangsnummer]
[getroffener Inhalt]: Ein „.*“ zeigt an, dass der Inhalt dynamisch ist (siehe „Inhalt des Wertes“). Eine bestimmte Zeichenkette (z. B. „ON“) zeigt an, welchem statischen Inhalt angegeben wurde.
[Ausgangsnummer]: Es wird angezeigt für welche Ausgangsnummer der Treffer konfiguriert wurde.
Beispiel:
.*@Ausgang 1 bedeutet, dass für Ausgang 1 ein dynamischer Inhalt konfiguriert wurde. Über den Button „Zu Job hinzufügen“ wird die aktuelle Ausgangskonfiguration in den Job übertragen. Über „Aktualisieren“ und „Entfernen“ wird die Liste verwaltet.
Binärprotkollanalyse – UDP Packet Analysis Tool
Das UDP Packet Analysis Tool für die Binärprotokollanalyse hilft Ihnen, das empfangene Datagramm aufzuzeichnen, den gewünschten Paketinhalt auf Binärbasis zu definieren, und diesen mit einer Gruppenadresse zu verknüpfen. Die Verknüpfung wird automatisch in die Job Maske übertragen. Es sind 16 Treffer pro Job möglich.

UDP-Empfänger – Binäre Paket Analyse
Live-Capture
siehe „ASCII Protokollanalyse“
Paketinhalt
Um den Inhalt eines Paketes anzuzeigen, müssen die gewünschten Pakete in der Live-Capture Auflistung markiert werden. Markieren Sie dann den gewünschten Paketinhalt mit dem Mauszeiger.
Bytereihenfolge
Die eingestellte Bytereihenfolge bestimmt wie binäre Inhalte von 2 und 4 Byte für die Umrechnung auf KNX-Datentypen interpretiert werden.
Little Endian (x86, Intel, …) = kleinstwertige Byte steht am Anfang
Big Endian (ARM, Motorola, Power PC, … ) = höchstwertige Byte steht am Anfang
Offset
Anzeigeelement. Zeigt die nicht markierten Bytes gerechnet von Byte 0.
Binärer Datentyp
In Abhängigkeit der markierten Bytes im Paketinhalt werden die für die Auswahl möglichen binären Datentypen angezeigt. Die richtige Auswahl ist wichtig, damit der Wert für die weitere Verwendung richtig interpretiert wird (mit / ohne Vorzeichen, Fließkommazahl etc.)
EIS-Typ
siehe „ASCII Protokollanalyse“
Adresse
siehe „ASCII Protokollanalyse“
Definierte Ausgänge
siehe „ASCII Protokollanalyse“
Wird das „UDP Packet Analysis Tool“ geschlossen, gehen die Paketinhalt-Informationen verloren. Wird das Fenster erneut geöffnet stehen zwar die Ausgangs-(Treffer-) Informationen weiter zur Verfügung, aber damit der Paketinhalt erneut angezeigt, und damit wieder die markierte Stelle angezeigt werden kann, muss das Paket erneut gesendet werden.
Manueller regulärer Ausdruck
Mit einem regulären Ausdruck wird der Inhalt des Paketes gefiltert und das Ergebnis an einen der Ausgänge übergeben. Ein regulärer Ausdruck ist eine Zeichenkette, in welcher die verschiedenen Zeichen unterschiedliche Filterfunktionen übernehmen. Bitte informieren Sie sich im Internet über die Funktionsweise von regulären Ausdrücken.
Regulärer Ausdruck
Tragen Sie hier den gewünschten Ausdruck ein. Jeder „Treffer / Ausgang“ wird im regulären Ausdruck durch eine Gruppe repräsentiert. Eine Gruppe befindet sich innerhalb von (). Außerdem können folgende Flags für den Filter genutzt werden:
Case Insensitive:
Große und Kleinschreibung wird nicht beachtet.Multiline:
Muss aktiviert werden, wenn der Ausdruck über mehrere Zeilen hinweg reichen soll.Ungreedy:
Es wird nicht nach größtmöglicher Übereinstimmung gesucht („greedy“), sondern nach der ersten Übereinstimmung nicht weiter gefiltert.Dot All:
Wenn aktiviert, übergeht der Ausdruck „.“ auch Zeilenenden. Ist sinnvoll in Zusammenhang mit „multiline“ und einem Treffer über beliebig viele Zeilen hinweg.Extended:
Aktiviert erweiterte Funktionen, so dass bei komplexen Texten auch Kommentare gefiltert werden.
Anzahl Treffer
Wählen Sie hier aus wie viele Treffer / Ausgang – Felder zur Konfiguration freigeschaltet werden.
Treffer / Ausgang #1 - #16
Definieren Sie hier die Gruppenadresse, EIS-Typ und Modus für den jeweiligen Treffer welcher durch () im regulären Ausdruck repräsentiert wird.
EIS-Typ
siehe „ASCII Protokollanalyse“
Modus
Siehe Beschreibung zu „Verhalten“ zu „ASCII Protokollanalyse“
Beispiel
Ein Konfigurationsbeispiel mit regulären Ausdrücken anhand von XML-Daten der openweathermap API: XML-Daten:
<current>
<city id="2643741" name="City of London">
<coord lon="-0.09" lat="51.51"/>
<country>GB</country>
<sun rise="2015-06-30T03:46:57" set="2015-06-30T20:21:12"/>
</city>
<temperature value="72.34" min="66.2" max="79.88" unit="fahrenheit"/>
<humidity value="43" unit="%"/>
<pressure value="1020" unit="hPa"/>
<wind>
<speed value="7.78" name="Moderate breeze"/>
<direction value="140" code="SE" name="SouthEast"/>
</wind>
<clouds value="0" name="clear sky"/>
<visibility value="10000"/>
<precipitation mode="no"/>
<weather number="800" value="Sky is Clear" icon="01d"/>
<lastupdate value="2015-06-30T08:36:14"/>
</current>
Verwendeter Regulärer Ausdruck:
temperature value="([0-9]+.[0-9]+)".*?humidity value="(\d+)"
Verwendete Flags:
Multiline
Dot All
Der Ausdruck filtert die Werte “72.34” (Temperatur) und “43” (Feuchtigkeit), demnach werden 2 Ausgänge wie folgt definiert:
Treffer / Ausgang 1: EIS-Typ = EIS 5 oder EIS 9 (Fließkomma Zahl), Modus = Wert einlesen
Treffer / Ausgang 2: EIS-Typ = EIS 6 (Prozent), Modus = Wert einlesen

UDP Empfänger – Beispiel