Konfigurationsdatei - DataShare

Einrichten einer Konfigurationsdatei

Vorausgesetzt, dass der Controller bereits vollständig konfiguriert ist (d. h. die Systemelemente und deren Items wurden erstellt) und ein DataShare mit Kommunikationsprotokoll sowie Schnittstelle eingerichtet wurde, kann der Benutzer mit dem Befüllen der Konfigurationsdatei beginnen.

Da derzeit ausschließlich das KNX-Protokoll unterstützt wird, besteht die Konfiguration der Signale im Wesentlichen darin, den gewünschten Zuständen/Befehlen eine KNX-Gruppenadresse zuzuweisen.

Beispiel: Angenommen, im Bereich „Wohnzimmer“ befindet sich ein Licht mit dem Namen „Hauptlicht“, das folgende Zustände aufweist:

  • Aktueller Zustand
  • Dimmwert
  • RGB-Farbe

Eine mögliche Konfiguration der Gruppenadressen könnte folgendermaßen aussehen:

  • Aktueller Zustand: 1/1/1
  • Dimmwert: 1/1/2
  • RGB-Farbe: 1/1/3

Und die Freigabeeinstellungen dazu könnten lauten:

  • Aktueller Zustand: true
  • Dimmwert: true
  • RGB-Farbe: false
 
Hinweis

Es wird empfohlen, die Zuweisung der KNX-Gruppenadressen im Voraus zu planen, um Fehler bei der Konfiguration zu vermeiden.

Der KNX-Datpunkttyp (DPT) wird vom Controller automatisch für jeden Status/Befehl festgelegt. Der Benutzer muss diesen Wert daher weder angeben noch verändern.

Struktur der Konfigurationsdatei

Die Konfigurationsdatei für DataShare ist im CSV-Format organisiert. Jede Zeile entspricht einem Signal (Status oder Befehl), das freigegeben oder empfangen werden soll. Die Datei enthält die folgenden Spalten:

  1. GekkoNetwork: Bezieht sich auf den Controller, zu dem das Datenelement gehört. Fixiert auf: „local“ Dieser Wert darf nicht verändert werden.
  2. SystemElementName: Der Name des Systemelements, zu dem das Datenelement gehört (z. B. „lights“). Dieser Wert darf nicht verändert werden.
  3. PageName: Der Name der Seite, auf der sich das Element befindet (z. B. „Wohnzimmer“). Dieser Wert darf nicht verändert werden.
  4. ItemName: Der Name des Items (z. B. „Deckenlampe“). Dieser Wert darf nicht verändert werden.
  5. ItemGroupID: Die ID des Items oder der Gruppe innerhalb des Systemelements (z. B. „item0“). Dieser Wert darf nicht verändert werden.
  6. StatusCmdName: Der Name des Status oder Befehls, den man über DataShare teilen möchte (z. B. „dimLevel“). Dieser Wert darf nicht verändert werden.
  7. Format: Datentyp des Status/Befehls mit Wertebereich und Einheit (z. B. „float[0.00,100.0](%)“). Dieser Wert darf nicht verändert werden.
  8. Formula: Eine mathematische Formel, die auf den Rohwert des Signals angewendet wird. Die Variable ist „x“. Beispiel: „(x+1)/4“
  9. Erlaubte Operatoren:

    • Arithmetisch: „+“, „-“, „*“, „/“, „^“
    • Vergleich: „>“, „>=“, „<“, „<=“, „==“, „!=“
    • Bitweise: „&“, „|“, „>>“, „<<“
    • Logisch: „&&“, „||“
    • Optional: kann leer bleiben.
  10. Enable: Legt fest, ob das Signal aktiv ist. Mögliche Werte: „TRUE“ zur Aktivierung und „FALSE“ zur Deaktivierung des Signals. Kann leer sein. Standard: „TRUE“
  11. CheckChangeTime: Zeitintervall (in Sekunden) zur Prüfung auf Änderungen des Signals. Gültiger Bereich: [1, 86400]. Gilt nur für Status, nicht für Befehle. Standard: 1.0
  12. ForceSendingInterval: Intervall (in Sekunden) zum erzwungenen Senden des Signalwerts. Gültiger Bereich: [2, 604800]. Gilt nur für Status, nicht für Befehle. Kann leer sein. Standard: 60.0
  13. ChangeType: Art der Änderung, auf die geprüft wird. Mögliche Werte: „ABS“:Absoluter Wert und „%“:prozentuale Änderung. Kann leer sein. Standard: ABS. Gilt nur für Status, nicht für Befehle.
  14. ValueChangeToSend: Grenzwert der Änderung, ab dem das Signal gesendet wird. Kann leer sein. Standard ist 0 (wird bei jeder Änderung gesendet). Gilt nur für Status, nicht für Befehle.
  15. KNXDPT:Der KNX-Datenpunkttyp. Wird automatisch vom myGEKKO gesetzt. Standard: DPT_5_004.
  16. KNXGroupAddress: Die KNX-Gruppenadresse des Signals. Standard: GA -/-/-.
  17. Gültige Formate:

    • GA a/b/c
    • GA a/b
    • GA a
  18. Comment: Ein Kommentar zum Signal (z. B. Verwendungszweck). Maximal 512 Zeichen. Kann leer bleiben.
  19. Beim Arbeiten mit der Konfigurationsdatei sind folgende Punkte zu beachten:

    • Automatische Zeilenerstellung: Wenn ein neues Element im Controller erstellt wird, werden alle zugehörigen Status- und Kommandosignale automatisch als einzelne Zeilen in die Konfigurationsdatei übernommen.
    • Dabei gilt:

      • Enable ist standardmäßig auf true gesetzt.
      • Das Feld Formula bleibt leer.
      • Der KNX-Datentyp (KNXDPT) wird mit dem vom System empfohlenen Standardwert vorbelegt.
      • Die KNX-Gruppenadresse (KNXGroupAddress) wird auf „GA -/-/-“ gesetzt.
    • Standardwerte: Leere Felder werden beim Einlesen der Datei automatisch mit den entsprechenden Default-Werten befüllt.
    • Auskommentieren von Zeilen: Möchte man eine Zeile temporär deaktivieren oder nicht berücksichtigen, kann sie mit einem „#“ am Zeilenanfang kommentiert werden. Diese Zeilen werden beim Verarbeiten ignoriert, bleiben jedoch in der Datei bestehen.
    • Löschen von Zeilen: Wird eine Zeile, die zu einem bestehenden Item gehört, aus der Datei gelöscht, wird sie beim nächsten Herunterladen der Konfigurationsdatei automatisch wieder hinzugefügt.
    • Verarbeitung von Signalen: Ein Signal wird nur dann vom System verarbeitet, wenn eine gültige KNX-Gruppenadresse hinterlegt ist – unabhängig davon, ob Enable auf true oder false gesetzt ist.
  20. Ein typischer Eintrag in der Konfigurationsdatei sieht z. B. so aus:

  21. local;light;Wohnzimmer;Deckenlampe;item0;currentState;enum[0=off,1=on]();;true;10.00;60.00;abs;0.00;DPT_1;GA 1/1/4;;;;

    • GekkoNetwork: local
    • SystemElementName: light
    • PageName: Wohnzimmer
    • ItemName: Deckenlampe
    • ItemGroupID: item0
    • StatusCmdName: currenState
    • Format: enum[0=off, 1=on]()
    • Formula:
    • Enable: true
    • CheckChangeTime: 10.0
    • ForceSendingInterval: 60.0
    • ChangeType: abs
    • ValueChangeToSend: 0
    • KNXDPT: DPT_1
    • KNXGourpAddress: GA 1/1/1
    • Comment:

Generierung der Konfigurationsdatei mit Report

Neben dem einfachen Hoch- und Herunterladen kann die Konfigurationsdatei auch mit einem Report erweitert werden. Dazu klickt der Benutzer zuerst auf „Generate report“ und anschließend auf „Download“. Die so heruntergeladene Datei enthält zusätzlich zu den Konfigurationsdaten Statistikinformationen zu jedem Signal, die am Ende jeder Zeile eingefügt werden.

Diese Statistiken beinhalten unter anderem:

  • Anzahl der Ereignisse: Gibt an, wie viele Ereignisse (Senden oder Empfangen) seit dem letzten Klick auf „Generate report“ registriert wurden.
  • Zeitpunkt des letzten Ereignisses: Datum und Uhrzeit, zu dem zuletzt ein Ereignis festgestellt wurde – basierend auf der internen Uhrzeit des Controllers.

Diese zusätzlichen Informationen sind besonders hilfreich, um z. B. ungewöhnliches Verhalten der Signale zu analysieren oder einen Überblick über die Aktivität der Datenpunkte zu erhalten.

Darüber hinaus enthält der Report:

  • Den Zeitpunkt der Initialisierung des DataShare-Dienstes
  • Den Zeitpunkt des Exports
  • Informationen zum verwendeten Kommunikationsprotokoll, sowie
  • Den Namen und die ID des DataShare-Containers