Benutzer-Werkzeuge

Webseiten-Werkzeuge


eib_knx

EIB/KNX

Der EIB/KNX Treiber ermöglicht es Datenpunkte im KNX auszulesen und zu manipulieren. Dabei kann der Treiber auf bereits im KNX-Netz vorhandene Datenpunkte zugreifen sowie eigene Datenpunkte lokal auf dem Gateway bereitstellen.

Bei Geräten mit integrierter KNX-Schnittstelle kann die physikalische Adresse (Default 15.15.255) auf einen beliebigen gültigen Wert eingestellt werden, dies erfolgt über die integrierte Weboberfläche.

Damit der Treiber beim hochfahren des Gateways für alle Datenpunkte aktuelle Werte erhält, müssen alle im Treiber definierte Datenpunkte ETS-seitig das Leseflag gesetzt haben. Andernfalls werden diese Datenpunkte erst bei Wertänderung zum Gateway übertragen und das Hochfahren des Gateways verzögert sich, da der Treiber missglückte Leseversuche diverse Male wiederholt. Sollte es nicht möglich sein, bei einem Datenpunkt das Leseflag zu setzten kann dem Treiber durch ein speziellen Formatzusatz mitgeteilt werden, dass dieser nicht lesbar ist. Für diese Datenpunkte überspringt der Treiber die initialen Leseversuche.

Bitte beachten Sie, dass für den Betrieb eine KNX Netzes in jedem Fall eine externe KNX-Spannungsversorgung vonnöten ist. Im Regelfall ist eine solche Spannungsversorgung in den bereits existierenden KNX Netzen vorhanden.

Der Name des EIB/KNX-Treibers lautet: eib
Die Routing-Adresse des ersten EIB/KNX-Treibers ist: 70
Die Datenpunktdatei für den ersten EIB/KNX-Treiber heißt: eib1.txt
Die Konfigurationsdatei für globale Einstellungen des ersten EIB/KNX-Treibers heißt: eib1.cfg

Die Name des EIB/KNX-USBTreibers lautet: eibusb
Die Routing-Adresse des ersten EIB/KNX-USB Treibers ist: 1130
Die Datenpunktdatei für den ersten EIB-Treiber heißt: eibusb1.txt
Die Konfigurationsdatei für globale Einstellungen des ersten EIB/KNX-USB-Treibers heißt: eibusb1.cfg

Bei dem EIB/KNX-Treiber sowie allen weiteren Gateway-Treibern gilt für die Definition von Datenpunkten in der Datenpunktdatei:

Typ: Bedeutung
M Ganzzahliger Wert (Binäre Datenpunkte, Zählwerte) der vom Gateway nur gelesen werden kann/soll.
S Ganzzahliger Wert der vom Gateway gelesen sowie geschrieben werden kann/soll.
X Analogwert (mit Nachkommastellen) der vom Gateway nur gelesen werden kann/soll.
Y Analogwert (mit Nachkommastellen) der vom Gateway gelesen sowie geschrieben werden kann/soll.
A String, findet z.B. Verwendung bei BACnet Trends und ESPA4.4.4 Datenpunkten

Der Treiber kann sowohl zwei wie auch drei stellige KNX-Adressen verarbeiten. Die Adressen sind wie folgt aufgebaut.

Zweistellig: „<maj>/<min>[.<index>]„
Dreistellig: “<maj>/<mid>/<ext>[.<index>]„
Kommunikationsstatus mit EIB: „failure“

Dabei gilt folgende Definition:

Parameter Wertebereich Beschreibung
<maj> 0-31 Obere Gruppenadresse
<min> 0-2047 Untere Gruppenadresse
<mid> 0-7 Mittlere Gruppenadresse
<ext> 0-255 Erweiterte Gruppenadresse
<index>1-255 optionaler Index für Array Elemente

Die Adresse eines binären Quelldatenpunktes mit der dreistelligen Adresse „5/3/10“ wird demnach wie folgt in der Datei eibX.txt oder eibusbX.txt angegeben:

[M 5/3/10]

Um dem Treiber mitzuteilen wie er die unter einer Adresse abgelegten Informationen auswerten kann muss für jeden Datenpunkt das Format übergeben werden. Dies erfolgt anhand der Formatdefinition:

format = <format> [F:<fact>] [P:<poll>][U:<upd>] [I:<opt>] [L:<loc>] [H:<prio>] [R:<addr>] [D:<dly>]

Dabei kann <format> folgende Werte annehmen:

<format> Beschreibung
UINT1 1bit
UINT2 2bits
UINT3 3bits
UINT4 4bits
UINT5 5bits
UINT6 6bits
UINT7 7bits
UINT8 8bit unsigned (Vorzeichenlos)
SINT8 8bit signed
UINT16 16bit unsigned
SINT16 16bit signed
UINT24 24bit unsigned
UINT32 32bit unsigned
SINT32 32bit signed (Vorzeichenbehaftet)
FLOAT 32bit IEEE754 floating point (Fliesskommazahl)
DOUBLE 64bit IEEE754 floating point
SFLOAT 16bit IEEE754 floating point
DPT222 Array mit 3x 16bit IEEE754 floating point

Zuordnungstabelle der EIB/KNX Standard-Datenpunkttypen zum UGW Format:

EIS Typ DPT Typ Länge Bedeutung UGW Format
EIS-1 DPT-1 1 Bit Schalten UINT1
EIS-2 DPT-3 4 Bit Dimmen UINT4
EIS-3 DPT-10 3 Byte Zeit UINT24
EIS-4 DPT-11 3 Byte Datum UINT24
EIS-5 DPT-9 2 Byte Fließkomma kurz SFLOAT
EIS-6 DPT-5 DPT-6 1 Byte Relativwert UINT8 F:2.55
EIS-7 DPT-1 1 Bit Antriebssteuerung BIT1
EIS-8 DPT-2 1/2 Bit Prioritätskontrolle UINT1 / UINT2
EIS-9 DPT-14 4 Byte Fließkomma IEEE754 32Bit FLOAT
EIS-10 DPT-7 DPT-8 2 Byte Zähler 16Bit UINT16 / SINT16
EIS-11 DPT-12 DPT-13 4 Byte Zähler 32Bit UINT32 / SINT32
EIS-12 DPT-15 4 Byte Zugangskontrolle UINT32
EIS-13 DPT-4 1 Byte ASCII/ISO8859-1 Zeichen UINT8
EIS-14 DPT-5 DPT-6 1 Byte Zähler 8Bit UINT8 / SINT8
EIS-15 DPT-16 14 Byte Text 14 Zeichen
8 Byte Fließkomma IEEE 64Bit DOUBLE
DPT-17 1 Byte Szene UINT8
DPT-20 1 Byte HVAC Mode UINT8
DPT-21 1 Byte Status UINT8
DPT-22 2 Byte Status UINT16
DPT-23 2 Bit Action on/off Alarm up/down UINT2
DPT-25 1 Byte Double Nibble UINT8
DPT-26 1 Byte Scene Info UINT8
DPT-27 4 Byte combined info on/off UINT32
DPT-222 6 Byte 3 SFLOAT Werte in einem Array DPT222
DPT-232 3 Byte RGB Farbwert UINT24

EIS = EIB Interworking Standard, DPT = DatenPunktTyp

Bei Bedarf kann die Format-Angabe um weitere Parameter ergänzt werden, folgende Parameter stehen hierbei zur Verfügung:

Wert Wertebereich Beschreibung
F:<fact> Gültiger 32Bit floating point Wert Divisor durch den der vom KNX-Bus übertragene Wert bei der Abbildung im Gateway dividiert wird bzw. Faktor mit dem der vom Gateway zum KNX-Bus übertagene Wert multipiziert wird. Wird kein Faktor angegeben so ist dieser „1.0“
P:<poll> 0 - 216 Zeit in Sekunden im dessen Intervall der Datenpunkt aktiv vom Bus gelesen wird. Wird keine Pollrate angegeben so ist diese „0“ d.h. es wird nicht zyklisch gelesen.
U:<upd> 0 - 216 Zeit in Sekunden im dessen Intervall der Datenpunkt aktiv auf den Bus geschrieben wird. Wird kein Updateintervall angegeben so ist dieses „0“ d.h. es wird nicht zyklisch geschrieben
I:<opt> 0 - 7 Bit0 Wertänderung:
„0“ Filtere Wertänderungen
„1“ Wertänderungen nicht filtern
Bit1 Wert Pollen:
„0“ Leseanfragen generieren
„1“ keine Leseanfragen generieren
Bit2 Lokales Schreiben:
„0“ keine Schreibanfragen generieren
„1“ Schreibanfragen generieren
Werden keine <opt>-Flags angegeben so werden diese als „0“ interpretiert.
Anmerkung: Für lokale Datenpunkte werden Bit0 und Bit1 intern immer auf „1“ gesetzt.
L:<loc> 0 - 1 „0“ Entfernter Datenpunkt
„1“ Lokaler Datenpunkt
H:<prio> 0 - 1 „0“ Niedrige Priorität (default)
„1“ Hohe Priorität
Definiert die Priorität mit der der Datenpunkt vom DP-Manager geschrieben wird. Datenpunkte hoher Priorität werden vor denen mit niedriger Priorität geschrieben.
R:<addr> Gültiger EIB-Datenpunkt ausgenommen: „failure“ Diese Adresse wird gelesen nachdem der Datenpunkt zu dem diese Option gehört vom DP-Manager upgedated wurde. Der Treiber generiert diese Leseanfrage um <dly> Sekunden verzögert falls <dly> gesetzt ist.
D:<dly> 0 - 216 Zeit in Sekunden die der Treiber wartet bis der in <addr> definierten Datenpunkt gelesen wird nachdem der Datenpunkt zu dem diese Option gehört geschrieben wurde.

Typische Datenpunktdefinitionen können demnach sein:

[M 5/3/10]
 name = digitale Betriebsmeldung
 query = pe
 format = UINT1
[S 2/10]
 name = digitaler Sollwert
 query = pe
 format = UINT1
 writecache = yes
[M 5/3/11]
 name = multistate Meldung z.B. 0,1,2 für Aus,An,Auto
 query = pe
 format = UINT8
[S 5/3/12]
 name = multistate Sollwert  z.B. Stufenschalter 0,1,2 für Aus, An, Auto
 query = pe
 format = UINT8
 writecache = yes
[X 5/3/13]
 name = Temperatur Messwert
 query = pe
 format = SFLOAT
[Y 5/3/14]
 name = Temperatur Sollwert
 query = pe
 format = SFLOAT
 writecache = yes
# Prozentwerte 0-100% werden im EIB häufig auf 0-255 skaliert,
#deshalb muss in diesem Fall der Wert durch 2.55 dividiert werden.
[X 5/3/15]
 name =  Prozentwert
 query = pe
 format = UINT8 F:2.55
# Festkomma Wert (16 Bit, mit Faktor 10)
[X 13/3/222]
 name =  Festkomma
 query = pe
 format = UINT16 F:10
# Status der Verbindung zum EIB/KNX-Bus
[M failure]
  name = Verbindung zum EIB-BUS, 0=OK 1=Ausfall
  query = pe

Imprint/Impressum Disclaimer DSGVO/Privacy Policy

eib_knx.txt · Zuletzt geändert: 24.11.2022 06:54 von jhe

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki