Treiber Gateway

<< Click to Display Table of Contents >>

Navigation:  Komponenten > Treiber >

Treiber Gateway

Die Gateway Funktion dient dazu, eine direkte bidirektionale Kommunikation zwischen Treibern herzustellen. Dadurch müssen nicht mehr die einzelnen Kanäle miteinander verknüpft werden. Folgende Treiber unterstützen diese Funktion:

 

KNX

BACnet Server

BACnet Client

Modbus Master

MQTT Client

 

Verbindungs-Schema:

ExportSchema

 

 

Verknüpfungs-Datenpunkte

Sendender Treiber

Datenpunkt

Typ

Datenpunkt

Empfangender Treiber

Funktion

KNX

Treiber Gateway -  MQTT Client

Bidirektional

Treiber Gateway - KNX

MQTT Client oder Broker

Verbindungsdatenpunkt zwischen KNX und MQTT

KNX

Treiber Gateway - BACnet Server

Bidirektional

Treiber Gateway - KNX

BACnet Server

Verbindungsdatenpunkt zwischen KNX und BACnet Server

BACnet Server

Treiber Gateway - MQTT Client

Bidirektional

Treiber Gateway - BACnet Server

MQTT Client oder Broker

Verbindungsdatenpunkt zwischen BACnet Server und MQTT

Modbus Master

Treiber Gateway - BACnet Server

Bidirektional

Treiber Gateway - Modbus Master

BACnet Server

Verbindungsdatenpunkt zwischen Modbus Master und BACnet Server

Modbus Master

Treiber Gateway - MQTT Client

Bidirektional

Treiber Gateway - Modbus Master

MQTT Client oder Broker

Verbindungsdatenpunkt zwischen Modbus Master und MQTT

BACnet Client

Treiber Gateway - MQTT Client

Bidirektional

Treiber Gateway - BACnet Client

MQTT Client oder Broker

Verbindungsdatenpunkt zwischen BACnet Client und MQTT

 

 

Import

Name

Funktion

KNX (CSV)

Damit die KNX-Datenpunkte im MQTT oder dem BACnet-Server erzeugt werden, ist ein Export als "CSV (TAB)" aus der Datenpunktliste des KNX-Treibers und anschließendem "KNX (CSV)"-Import  in der Kanalliste des MQTT oder BACnet-Servers nötig.

KNX (XML)

Damit die KNX-Datenpunkte im MQTT-Client oder dem BACnet-Server erzeugt werden, ist ein XML-Export aus dem Gruppenadressfenster der ETS und anschließendem "KNX (XML)"-Import in der Kanalliste des MQTT-Clients oder BACnet-Servers nötig.

Modbus Master

Damit die Modbus-Master-Datenpunkte  im MQTT oder dem BACnet-Server erzeugt werden, ist einmal ein Export als xml aus der Datenpunktliste des Modbus-Master-Treibers und anschließendem "Modbus"-Import in der Kanalliste des MQTT oder des BACnet-Servers nötig.

BACnet Server

Damit die BACnet-Server-Datenpunkte im MQTT erzeugt werden, ist ein Export als XML aus der Datenpunktliste des BACnet-Server-Treibers und anschließendem "BACnet (Server)"-Import  in der Kanalliste des MQTT nötig.

BACnet Client

Damit die BACnet-Client-Datenpunkte im MQTT erzeugt werden, ist ein Export als XML aus der Datenpunktliste des BACnet-Client-Treibers und anschließendem "BACnet (Client)"-Import in der Kanalliste des MQTT nötig.

 

Beispiel KNX-Import aus EisBär KNX-Treiberexport im Bacnet Kanal-Editor:

BACnet_Server_Channel_import

 

Beispiel KNX-Import aus ETS-Gruppenadressexport im MQTT Kanal-Editor:

(siehe auch KNX 2 MQTT)

MQTT_Client_Gatewayimport

 

 

Hinweise:

Datenimport und / oder manuelle Datenpunkteingabe

Im "Normalfall" (alle benötigten Objekte wurden importiert und die Verbindung geht nur über den Gateway Datenpunkt) können Steuerelemente z.B. mit der KNX Komponente verbunden werden. Wird dort ein Befehl ausgelöst, so geht der zum einen auf den KNX Bus und wird zum anderen über den Gateway-DP an BACnet gesendet. Analog könnte das Steuerelement auch mit dem korrespondierenden BACnet Datenpunkt verbunden werden -> in dem Falle sendet der Bacnet direkt und parallel den Wert über das GW an den KNX.

 

Im Bacnet-Kanal gibt es eine Spalte "DriverGatewayReference" die beim Gateway-Import mit einer eindeutigen Referenz des Fremdsystems gesetzt wird. Im Falle von KNX ist das die physikalische Adresse (csv) bzw der Name (xml).

Kommt eine Änderung über den Gateway-Datenpunkt, so wird anhand der DriverGatewayReference geschaut welcher Bacnet-Kanal dem entspricht. Diese DriverGatewayReference hat keine sichtbare Spalte im Kanaleditor und wird nur durch einen Import gesetzt. Nachträglich manuell angelegte Bacnet-Kanäle werden  nicht auf KNX-Objekte gemappt, da die Eingabemöglichkeit fehlt (Workaround über Export - Edit - Import der Kanalliste ist möglich). Werden solche Kanäle manuell angelegt und diese ein Gegenstück auf KNX Seite haben, müssen die entsprechenden Datenpunkte explizit verknüpft werden.

Wenn auf KNX Seite oder durch ein Steuerelement, das mit beiden Datenpunkten (KNX und Bacnet) verknüpft ist eine Aktion ausgelöst wird, so wird diese sowohl auf KNX-Seite, als auch auf Bacnet-Seite nur einmal auf den jeweiligen Bus gesendet.

Werden KNX-Werte zweimal gesendet (z.B. einmal beim Triggereingang und dann vom Bus zurück), wird das auf Bacnet-Seite entprellt. Es wird nach Wertänderung geprüft. Falls gleiche Wert zyklisch gesendet werden, müssen mindestens 500ms dazwischen liegen, bevor diese auf Bacnetseite erneut gesendet werden.