KNX und ETS5 Tutorial
KNX und ETS5 Tutorial für Anfänger
Einleitung
Dieses Tutorial soll den Einstige in die KNX Welt erleichtern und einen Einblick in die Programmierung mit ETS5 geben. Unser Versuchsaufbau besteht aus 4 KNX Komponenten und der ETS5 Software (Demo). Die Komponenten lassen sich zu einem kleinen Versuchsaufbau zusammenfügen, an dem die grundlegende Vorgehensweise der Programmierung mit ETS5 beschrieben wird.
Folgende Komponenten wurden von uns verwendet:
* 1x Schaltaktor (20-fach Schaltaktor MDT AKS-2016.02) * 1x Sensor (Raumtemperaturregler mit Bildschirm MDT SCN-RT1GS.01) * 1x IP-Gateway (SCN-IP000.01) * 1x Busspannungsversorgung mit integrierter Spannungsversorgung (MDT STV-0640.01)
Die extra Spannungsversorgung ist hier zum Beispiel für das IP-Gateway notwendig, da die vom KNX Bus bereitgestellte Spannung nicht für dieses Gerät ausreicht. Zum Programmieren der Geräte haben wir die ETS Software der KNX Association in der Version 5.5.4 (Build 952) verwendet. Die einzelnen Komponenten werden im folgenden Kapitel genauer beschrieben und ihre Funktionsweise erklärt. Danach wird die Verkabelung der Geräte in unserem Versuchsaufbau beschrieben.
Komponenten
IP-Gateway
Ein IP-Gateway verbindet den KNX-Bus durch ein Ethernet-Patchkabel mit dem lokalen LAN-Netzwerk. Damit wird einerseits die Programmierung der Aktoren durch die ETS-Software ermöglicht, anderseits können wir die KNX-Komponenten über eine plattformunabhängige Smart-Home-Zentrale wie dem OpenHab steuern.
Das von uns verwendete IP-Gateway SCN-IP000.01 besitzt oben links einen Anschluss für die externe Versorgungsspannung. Rechts daneben ist der Anschluss für die [rot/schwarz]-Busanschlusssklemmen angebracht und auf der Vorderseite befindet sich ein Ethernet-Anschluss. Der unter den Busanschlusssklemmen liegende Programmierknopf aktiviert beim Drücken den Programmiermodus. wenn der Programmier-Modus an ist, leuchtet die LED-Anzeige. Sie ist erlischt, wenn der Programmiervorgang abgeschlossen ist. Über die Ethernet-Schnittstelle liegen zwei LED-Anzeigen, diese geben den Status für die KNX-Busspannung (oben) und die Ethernet-Verbindung (unten) an. Werden auf dem KNX-Bus Telegramm-Protokolle übertragen, blinkt die KNX-LED auf, werden Datenpakete über die Ehternet-Schnittstelle übertragen, blinkt die Ethernet-LED auf.
Schaltaktor
Ein Aktor dient als physikalische Schaltzentrale. Diese es empfängt und sendet KNX-Telegramme und kann angeschlossene Verbraucher unabhängig voneinander schalten. Ein Schaltaktor wird für eine KNX-Minimalinstallation immer gebraucht. Der 20-fach Schaltaktor MDT AKS-2016.02 steht uns zur Verfügung, welcher je nach Ausbaustufe bis zu 20 Verbraucher unabhängig voneinander schalten und den Stromverbrauch separat messen kann. Am oberen und unteren Rand sind die 20 Kanäle angebracht. Jeder Kanal, mit je zwei grünen Anschlüssen, an dem die Verbraucher angeschlossen werden, wird über ein bistabiles Relais geschaltet und kann zusätzlich über die Taster am Aktor manuell betätigt werden. Wenn ein Kanal eingeschaltet ist, leuchtet die entsprechende LED-Anzeige. Die unten links liegenden [rot/schwarz]-Busanschlusssklemmen ermöglichen den In- und Output der Busspannung bzw. der Telegramme. Auf der Vorderseite ganz links befindet sich der Programmierknopf "Prog." und die entsprechende LED-Anzeige, welcher den Programmiermodus für die Kanäle aktiviert. Jeder Kanal kann durch die ETS-Software programmiert werden und die daran angeschlossenen Verbraucher an- oder ausschalten.
Sensor
Bei dem uns zur Verfügung stehenden Sensor handelt es sich um einen Raumtemperaturregler, der die Temperatur seiner Umgebung messen und regeln kann. Die gesammelten Temperatur-Informationen können (intervallabhängig) über den KNX-Bus an andere KNX-Komponenten versendet werden, dessen Funktionsausführungen von den Sensordaten abhängig sein können. Allerdings kann dieses Gerät auch wie ein normaler Taster verwendet werden (siehe Kapitel LINK ZU Programmieren in ETS5).
Der Raumtemperaturregler MDT SCN-RT1GS.01 braucht neben der [rot/schwarz]-Busanschlusssklemme noch eine separate Spannungsversorgung, da die Display-Anzeige mehr Strom verbraucht.
(Bus-)Spannungsversorgung
Die Spannungsversorgung erzeugt die notwendige Gleichspannung von 28…30 Volt für den KNX-Bus und versorgt gleichzeitig die angeschlossenen KNX-Komponenten mit Spannung. Da über den KNX Bus Daten versendet werden sollen, muss diese spezielle Busspannungsversorgung verwendet werden, die die modulierten Daten sonst gestört werden. Allerdings benötigen manche Geräte wie z.b. das IP-Gateway eine zusätzliche Spannungsversorgung um zu funktionieren. Aus diesem Grund hat das von uns verwendete Model eine zusätzliche Spannungsversorgung integriert (im Bild rechts), die allerdings nicht für den KNX Bus an sich verwendet werden darf.
Die von uns verwendeten Außen-, Neutral- und Schutzleiter; unten links die [rot/schwarz]-Busanschlusssklemmen für die Spannungsversorgung mit integrierter Drossel (MDT STV-0640.01) verfügt über drei Anschlussklemmen: oben links die Stromnetzanschlussklemmen für die Versorgung des Stromeingangs, je eine Klemme für die Versorgung des Busstromausgangs; unten rechts die Stromausgangsklemmen, welche stromhungrige KNX-Komponenten wie Displays mit der zusätzlich benötigten Spannung versorgen können. Außerdem wird sie mit drei LED-Anzeigen versehen: von oben nach unten je eine für Normalbetrieb, Überlast und Busreset.
Bei der Variante ist unbedingt darauf zu achten, dass Busstromklemmen vorhanden sind. Werden keine Busstromklemmen verwendet, sind Funktionsstörungen die Folge.
Versuchsaufbau - Verkabelung der Komponenten
Am Anfang unseres Versuchsaufbaus werden wir die einzelnen KNX-Komponenten miteinander verbinden und mit Hilfe der ETS-Software programmieren. Das KNX-Modell sieht wie folgt aus:
Im Zentrum des Modells steht der KNX-Bus, mit dem alle KNX-Komponenten verbunden sind. Einige der Komponenten wie der Dimmer-Aktor brauchen eine separate Stromversorgung und werden im Modell mit einem gelben Blitz gekennzeichnet.
Beim Aufbau eines KNX-Buses ist es im Grunde unwichtig, in welcher Reihenfolge (Reihenschaltung, baumförmige Struktur, randomisierter Graph etc.) die einzelnen Komponenten miteinander verbunden werden. Da wir hier aber Gleichstrom nutzen, wird dringend abgeraten die Komponenten als eine geschlossenen Kreis anzuordnen. Dies kann dazu führen, dass bei unterschiedlichen Kabellängen, die später versandten Telegramme zu unterschiedlichen Zeiten eintreffen, was eine zusätzliche Fehlerquelle sein könnte.
Jede KNX-Komponente bietet standardmäßig vier Anschlussklemmen, so dass an jeder Komponente theoretisch drei weitere Komponenten angeschlossen werden können.
Bemerkung: Der naive Ansatz wäre hier, zuerst das KNX-Modell vollständig zu realisieren und dann mit der Programmierung zu beginnen. Da aber niemand in unserer Gruppe davor ein KNX-Experte war und wir auch die Ersten waren, die dieses Workshop-Thema bearbeitet haben, vergingen viel Zeit für "try-and-error"-Prozesse. Im Nachhinein empfehlen wir Anfängern eine "step-by-step"-Vorgehensweise. Das bedeutet, dass wir jedes Gerät einzeln in den KNX-Bus aufnehmen und mit der ETS-Software einrichten. Falls etwas nicht funktionieren sollte, ersparen wir uns die Fehlersuche im ganzen System. In unserer Dokumentation zeigen wir jedoch der Übersicht halber erst den vollständigen Aufbau der KNX-Komponenten und dann deren Programmierung mit ETS.
1. Schritt:
Die erste Komponente in unserem KNX-System ist die Spannungsversorgung MDT STV-0640.01 (links im Bild). Dieser wird benötigt, um das KNX-Netz mit Gleichstrom (gelb/weiß-Anschlussklemmen) zu versorgen. Die Anschlüsse sind wie folgt gekennzeichnet und müssen mit folgenden Kabeln verbunden werden: Der Neutralleiter (N) wird mit dem blauen Kabel verbunden, der Schutzleiter (PE) mit dem gelb-grünen Kabel und der Außenleiter (L) wird mit dem schwarzen Kabel verbunden. Der ausgehende [dunkelgrau/rot]-Anschluss versorgt die KNX-Komponeten mit einer Bus-Spannung, auf welche Informationen auf der Bus-Leitung ausgetauscht werden. Die Spannungsversorgungs-Komponenten müssen nicht programmiert werden.
Bemerkung: Auf der rechten Seite im Bild haben wir ebenfalls eine Spannungsversorgung vom Modell MDT STV-0024.01. Dieser besitzt jedoch keine Bus-Spannungsversorgung, sondern versorgt nur die angeschlossenen Geräte mit Strom. Anfangs stand uns nur dieses Gerät als Spannungsversorgung zur Verfügung. Wir konnten die Geräte zwar anschalten und auch in der ETS-Software sehen, jedoch nicht programmieren. Erst mit Hilfe des Hersteller-Supports, den wir erst nach 3 Tagen erreichen konnten, wurde uns der Fehler bewusst. Daraufhin musste die Spannungsversorgung MDT STV-0640.01, mit einer separaten Bus-Spannung, angeschafft werden. Im weiteren Versuchsaufbau haben wir einfach beide Spannungsversorgungen angeschlossen, sicherlich würde hier nur die Benutzung der Spannungsversorgung MDT STV-0640.01 ausreichen.
2. Schritt:
Nun fügen wir dem KNX-Netz das IP-Gateway MDT SCN-IP000.01 hinzu. Das IP-Gateway bekommt seinen Strom durch die Spannungsversorgung (gelb/weiß-Anschluss).
3. Schritt:
Damit das IP-Gateway Daten-Pakete auf dem KNX-Bus empfangen und senden kann, schließen wir die Bus-Spannung an. Das grüne Kabel im Bild ist ein vieradriges KNX-Datenkabel. Im Normalfall werden dabei nur die zwei [dunkelgrau/rot]-Adern benötigt. Bei bestimmten KNX-Komponenten, die mehr Spannung benötigen wie unser IP-Gateway, werden die beiden [gelb/weiß]-Adern zusätzlichen angeschlossen.
4. Schritt:
Damit die zweite Spannungsversorgung MDT STV-0024.01 das IP-Gateway auch mit Strom versorgen kann, verbinden wir beide Spannungsversorgungs-Komponenten über eine 230V Spannung miteinander. Die Ethernet-Schnittstelle verbinden wir per Ethernet-Kabel mit unserem Router/Switch. Dies ermöglicht uns im weiteren Verlauf die Komponenten auf dem KNX-BUS über das http-Protokoll mit der ETS-Software zu programmieren.
5. Schritt:
Für eine KNX-Minimalinstallation wird immer ein Aktor gebraucht, der als physikalische Schaltzentrale dient. Unser 20-fach Schaltaktor MDT AKS-2016.02 besitzt wie der Name schon sagt, die Möglichkeit 20 voneinander unabhängige Verbraucher zu schalten und den Stromverbrauch separat zu messen. Eine Bus-Spannung kommt ebenfalls an dem Aktor dran.
6. Schritt:
Danach haben wir einen neuen Stromkreis angelegt, der durch den Schaltaktor später an- oder ausgeschaltet wird. Im Normalfall ist das ein von der Netzspannung unserer KNX-Spannungsversorgung externer Stromkreis. Wir haben diesen jedoch an den Input der Spannungsversorgung geklemmt, da auch hier 230V Wechselspannung ankommen. Alternativ müsste man einen Netzstecker für die Steckdose anbauen, damit wäre der Stromkreis nicht direkt mit der KNX-Spannungsversorgung gekoppelt. Die Mitte des Kabels haben wir aufgebrochen, sodass wir einen Anschluss an den Schaltaktor erstellen. Die Relais in dem Schaltaktor sorgen dann später dafür, dass unser getrenntes Kabel wieder überbrückt wird, sodass im eingeschaltenen Zustand Strom fließt.
7. Schritt:
Nun fügen wir unserem KNX-Netz einen 4-fach Taster und eine Temperaturanzeige mit Displayanzeige hinzu. Beide Komponenten werden jeweils über einen [dunkelgrau/rot]-Anschluss mit dem KNX-Bus verbunden. Die Temperaturanzeige benötigt eine zusätzliche Spannungsversorgung über den [gelb/weiß]-Anschluss.
8. Schritt:
Wir haben einen Versuch mit dem Dimmaktor gestartet. Die Verkabelung ist dabei keineswegs intuitiv. An dem Dimmaktor haben wir je Kanal vier Anschlüsse mit der Kennzeichnung N L_L ~ (von links nach rechts). Der Neutralleiter (blau) wird dabei aufgespalten und mit dem ersten Anschluss (N) verbunden, so wie bei der Spannungsversorgung. Im unserem Kabel hatten wir nun keine schwarze Variante, also muss das braune Kabel der Außenleiter sein. Dieses wird auch aufgespalten und das eine Ende wird mit einem (L) verbunden und das andere Ende mit dem (~). Damit kann die durch den Aktor fließende Spannung reduziert werden und es besteht die Möglichkeit der Dimmung.
9. Schritt:
Im letzten Schritt haben wir an unserem Versuchsaufbau eine dimmbare Glühbirne angeschlossen. Die nötige Spannung erhält die Glühbirne durch den Dimm-Aktor. Die Schaltung und die Dimmung erfolgt nach erfolgreicher Programmierung über den Taster oder das Smart-Home-Webinferface.
Finaler Aufbau:
Am Ende sieht unser Aufbau wie folgt aus:
Die Geräte sind jeweils an den KNX Bus angeschlossen. Da es sich um ein Bussystem handelt, können wir die Geräte hintereinander verkabeln, wie in Bild [2] bei C und D zu sehen. Die Verkabelung bei A ist für ein angeschlossenes Gerät am Schaltaktor gedacht. Dieser Schaltet durch und schließt dann den Stromkreislauf, der an der normalen Spannungsversorgung angeschlossen ist. Damit könnte man z.b. eine LED an- und ausschalten. Die zusätzliche Stromversorgung, die das IP-Gateway benötigt, ist bei B zu sehen.
Versuchsaufbau - Programmierung mit ETS5
Der zweite Streckenabschnitt unseres Versuchsaufbaus behandelt im Allgemeinen die http-Komponenten, die mit Hilfe des IP-Gateways mit den KNX-Komponenten kommunizieren. Die folgende Modell-Abbildung zeigt, wie unser Versuchsaufbau vollständig am Ende aussehen soll.
Zur Inbetriebnahme einer KNX-Installation führt leider kein Weg an der Engineering-Tool-Software (ETS) vorbei. Obwohl die Software angeblich OpenSource sein soll, ist die Nutzung lizenzrechtlich von der KNX-Association geschützt.
Wer weniger als 5 Komponenten pro Projekt damit verwalten will, darf die kostenlose ETS-Demo Version nutzen.
Die Lite Version unterstützt bis zu 20 KNX-Komponenten und kostet 200€. Alles darüber hinaus erfordert eine Professional Version, die happige 1000€ kostet.
Der Download der Software über die Homepage( http://www.knx.de/knx-de/index.php) funktioniert nur, wenn man einen gültigen Account hat.
Für unseren Workshop wurde eine lite-Lizenz vom Institut bereit gestellt. Um die Demo-Version frei zu schalten, musste jedes Mal ein USB-Dongle mit einem Lizenz-Token angeschlossen werden.
KNX-Schnittstelle
Nach dem Start der ETS-Software befinden wir uns im Reiter "Übersicht". Wir wechseln zum Reiter "Bus" und schauen unter dem Punkt "Verbindungen" -> "Schnittstellen", ob die Software unser IP-Gateway findet. Dies ist die Voraussetzung, dass wir alle KNX-Komponenten im KNX-Netz ansteuern können.
Katalog-Pakete importieren
Damit ETS die KNX-Komponenten erkennt, müssen wir die entsprechenden "Kataloge" auf der Hersteller-Homepage [1] herunter laden. Wir können uns die Kataloge in .knxprod-Format als Geräte-Treiber vorstellen, ohne diese ETS die Features der Hardware nicht ansprechen könnte. Bei der Auswahl der Kataloge zum Download ist auf die exakte Gerätebezeichnung zu achten. Nachdem wir alle notwendigen Pakete heruntergeladen und unter dem Reiter "Kataloge" importiert haben, erhalten wir folgende Auflistung alle KNX-Komponenten wie in der folgenden Abbildung.
Neues Projekt anlegen
Nun erstellen wir unter dem Reiter "Übersicht" mit dem Button "+" ein neues Projekt für unser KNX-System. Außer der Vergabe eines neuen Projektnamens können wir die Standard-Einstellungen übernehmen. Es liegt an euch, wie Ihr das Projekt bzw. euer Smart-Home strukturieren wollt. Wir verweisen zusätzlich auf das ETS-Manual "ETS-Projekte: Erste Schritte" und einen Tutorial-Eintrag vom Tech-Blog "In 10 Schritten mit ETS Programmieren" [2]. Weiter zeigen wir als Beispiel die Einrichtung unseres ETS-Projektes.
Struktur des Aufbaus definieren
In diesem Schritt beschreiben wir den Aufbau des Versuchs bzw. des Systems, das früher im Labor zusammengebaut wurde. Dazu nutzen wir den Menu-Punkt "Gebäudeteile hinzufügen". Eine minimale Struktur wäre dann ein Schaltschrank, in dem sich alle KNX-Geräte befinden. Es ist aber möglich beliebig komplizierte und gut strukturierte Systeme nachzubauen.
Neue Geräte zum Projekt hinzufügen
Weiter können wir zur erstellten Struktur die vorher importierten KNX-Geräte hinzufügen. Dazu öffnen wir die Sicht "Kataloge" und schleppen die nötigen Geräte per Drag&Drop in das Projekt bzw. in den Schaltschrank1 (oben links).
Adressierung
Für ein besseres Verständnis des ETS-Systems machen wir einen kleinen Überblick rund ums Thema Adressierung. Jede KNX-Komponente verfügt über einen eigenen Mikrocomputer und EEPROM (Electrically Erasable Programmable Read-Only Memory) und kann mit der ETS Software programmiert werden. Dabei spielen die Adressen der einzelnen KNX-Komponenten für die Identifikation und Kommunikation im KNX-Bus eine wichtige Rolle. Wir unterscheiden hierbei zwischen der physikalischen Adresse und der Gruppenadresse.
Physikalische Adressen
Die physikalische Adresse identifiziert eindeutig einen Teilnehmer in einem KNX-Netz. Jeder Teilnehmer besitzt zu jeder Zeit genau eine physikalische Adresse. Bei der Auslieferung besitzen die KNX-Komponenten eine physikalische Standardadresse, die vor der Programmierung geändert werden sollte, um Konflikte zu vermeiden.
Die Adresse besteht aus drei Zifferngruppen, die durch Punkte getrennt werden. Die erste Zifferngruppe gibt den Bereich an, die zweite die Liniennummer und die dritte die Teilnehmernummer. Die Ziffernfolge 1.3.10 hat also die Bedeutung: 1.Bereich, 3.Linie, 10.Teilnehmer.
Es gibt maximal 15 Bereiche. In einem Bereich können bis zu 15 Linien zusammengefasst werden. Eine Linie ist die kleinste Einheit beim KNX-System, und sie besteht in ihrer minimalsten Konfiguration aus einer Spannungsversorgung mit Drosselelung (z.B. ein MDT STV-0640.01), sowie einem Sensor und einem Aktor. In einer Linie werden im Normalfall bis zu 64 Teilnehmer angeschlossen. Mittels eines Linieverstärkers können theoretisch bis zu 255 Teilnehmer in einer Linie verbunden werden. Somit können in einem KNX-System theoretisch bis zu 57.375 Teilnehmer miteinander verbunden werden.
Gruppenadressen
Die Gruppenadresse ist mit einem Schaltdraht vergleichbar. Sie muss demzufolge mit dem Sensor und dem Aktor verbunden werden. Eine Gruppenadresse kann zu mehreren Teilnehmern gehören und beschreibt eine Funktion. Wenn z. B. ein Telegramm mit der Funktion "Anschalten" an eine Gruppenadresse geschickt wird, werden alle Geräte bzw. Teilnehmer mit dieser Gruppenadresse angeschaltet. Die Gruppenadresse dient also einer logischen Unterteilung der Teilnehmer in einem KNX-System.
Der Aufbau der Gruppenadresse ist ähnlich wie von der physikalischen Adresse. Die einzige Unterscheidung besteht darin, dass die Ziffernfolgen durch einen Schrägstrich statt mit Punkten getrennt werden (1/3/10). Die Ziffernfolge 1/3/10 bedeutet also: 1.Hauptgruppe, 3.Mittelgruppe und 10.Untergruppe.
Für die Einteilung der Gruppen kann folgende Empfehlung Verwendung finden: Die Hauptgruppe stellt die Etage des Gebäudes dar. Die Mittelgruppe stellt die Gewerke/Objekte dar, wie z .´B. eine Lampe, eine Jalousien, eine Heizung usw.. Die Untergruppen stellen dann schließlich die einzelnen Aktionen dar. Z. B. für die Lampe: Schalten, Dimmen.
Gruppenadressen festlegen und zu Geräten zuweisen
Mit dem Wissen über Gruppenadressen können wir jetzt auch in unserem Projekt solche festlegen. Falls das Fenster "Gruppenadressen" noch nicht im Arbeitsbereich zu finden ist, dann können Sie es wie auf dem Bild unten öffnen (Menü-Punkt "Arbeitsbereich"). Im geöffneten Fenster rechts kann man Hauptgruppen, Mittelgruppen und Gruppenadressen hinzufügen.
Manuelle physikalische Adressenvergabe
Die physikalische Standard Adresse ist bei allen Geräten im Auslieferungszustand die 1.1.250. Damit jeder Teilnehmer im KNX-Netz eindeutig identifiziert werden kann, muss jeder KNX-Komponente eine einmalige physikalische Adresse zugewiesen werden. Um die manuell eingegebene physikalische Adresse zu übernehmen, versetzen wir die jeweilige KNX-Komponente in den Programmier-Modus. Dies geschieht, in dem wir einen spitzen Gegenstand nehmen und damit einige Sekunden lang die "Prog."-Taste gedrückt halten, bis die untere LED-Anzeige blinkt. Nun wählen wir am ETS die KNX-Komponente aus und öffnen mit einem rechts-Klick das Kontextmenu. Unter dem Punkt "Programmieren"->"Programmieren (Physikalische Adresse & Applikationsprogramm)" überschreiben wir die neue physikalische Adresse auf die Hardware. Analog dazu funktioniert auch das setzen von Gruppenadressen. Die Daten werden nur überschrieben, wenn die KNX-Komponente sich im Programmier-Modus sich befindet. Ist der Schreibvorgang abgeschlossen, deaktivieren wir den Programmier-Modus durch erneutes Drücken der "Prog."-Taste.
KNX-Aktor programmieren
Nachdem Ihr euch mit ETS vertraut gemacht habt, solltet Ihr in der Lage sein, eine eigene Struktur zu erstellen. Unsere Struktur sag wie folgt aus: