Page properties | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Expand | ||
---|---|---|
| ||
Version 0.0.1
Version 0.0.2
Version 0.0.3
Version 1.0.0
Version 1.0.1
|
Inhalt
Table of Contents | ||
---|---|---|
|
Download
https://github.com/joesie/GPIO/releases/download/1.0.0/GPIO_1_0_0.zip
Installation
Bei der Installation wird die Bibliothek "pigpio" automatisch geladen. Hierfür muss der Loxberry Zugang zum Internet haben. Ohne diese Bibliothek kann das Plugin nicht betrieben werden.
nach der Installation ist ein Neustart erforderlichN
Konfigurationsoptionen
Über die Konfigurationsoberfläche können folgende Einstellungen vorgenommen werden:
- Anzahl der Eingänge
- Anzahl der Ausgänge
- Zuweisung der GPIO Pins zu den Kanälen die über die LoxConfig aufgerufen werden können.
- Einstellung eines Präfix zur Identifizierung der Eingänge
- Abtastintervall zum einlesen des Zustandes der Eingänge
- Auswahl des Minservers an den der Zustand der Eingänge gesendet werden soll
Funktion des Plugins
Konfiguration
Anzahl Ein/Ausgänge
Als erstes werde die Anzahl der benötigten Ein- und Ausgänge angegeben. Dabei können die Anzahl der Ein- und Ausgänge gemischt oder auch nur Ein- oder nur Ausgänge gewählt werden. siehe folgende Abbildung:
Die Auswahl muss gespeichert werden. Nach dem speichern wird der untere Bereich, die Kanalkonfiguration angepasst.
Kanalkonfiguration
In der Kanalkonfiguration wird die Zuordnung der physischen Ein- und Ausgänge zu den Kanälen des Plugins vorgenommen. Diese Trennung der physischen Pins (GPIOs) zu den verwendeten Ein- und Ausgängen (Kanälen) dient dazu in der LoxConfig z.B. die Kanäle 0-2 zu verwenden, während im Plugin die GPIOS 15, 19 und 26 verwendet werden. Die Zuordnung kann zu jeder Zeit einfach im Plugin neu vergeben werden ohne die Programmierung im Miniserver anzupassen.
Die Zuweisung erfolgt durch Eingabe der entsprechenden GPIO Nummer. Hierbei ist darauf zu achten, dass jedem GPIO nur ein Kanal zugewiesen wird. Außerdem darf ein GPIO nur ein Ein-oder Ausgang sein. Die Verwendung sowohl als Ausgang wie Eingang ist nicht möglich!
Die Pinbelegung des PIs kann z.B.hier nachgelesen werden.
die weiteren Einstellungen sind ausschließlich für die Eingänge benötigt:
Beschaltung (Pullup/Pulldown)
Für jeden Eingang kann gewählt werden, ob dieser mit dem internen Pullup oder Pulldown beschaltet werden soll. Dieser Widerstand dient dazu, bei nicht anliegendem Signal am Eingang, diesen auf einen definierten Wert 0V (Pulldown) oder 3,3V (Pullup) zu ziehen (siehe https://de.wikipedia.org/wiki/Open_circuit#Beschaltung_der_Signalleitungen). Der Defaultwert ist Pulldown.
Präfix
Der Präfix dient dazu, die Eingänge in der LoxConfig eindeutig zuzuordnen. Hierzu muss der Präfix im Loxberry exakt gleich sein wie in der LoxConfig. Die Bezeichnung des Eingänge in der Config bauen sich aus dem Präfix+Nummer des Eingangs zusammen. Z.B "LoxberryGPIO0" für den ersten Eingang.
Der Präfixist standardmäßig auf "LoxberryGPIO" gesetzt. Sollte nur ein Loxberry im Einsatz sein, kann dieser unverändert verwendet werden. In den Beispieltemplates wird dieser Standardwert verwendet.
Miniserver
Damit die Eingänge an den Miniserver gemeldet werden können, muss zwingend vor der Konfiguration dieses Plugins ein Miniserver im Loxberry konfiguriert sein!
Im Plugin kann bei Konfiguration mehrerer Miniserver der ausgewählt werden, an der Status des Eingangs gemeldet werden soll.
Nach dem speichern der Änderungen MUSS der Miniserver neu gestartet werden. Nur so werden die Einstellungen der Eingänge übernommen!
Verwendung der Ein- und Ausgänge
Schalten der Ausgänge
Geschaltet werden die Ausgänge über URL Parameter. Dabei ist es möglich sowohl einen, wie auch mehrere Ausgänge auf einmal zu schalten. Die Parameter sind dabei wie folgt aufgebaut:
Die Parameter der Ausgänge sind mit "o" gefolgt von der Kanalnummer aufgebaut. Z.B. "o1" für Ausgang 1. Der Wert wird mit "on" für einschalten oder "off" für ausschalten angegeben.
Beispiel:
Der Ausgang 1 soll eingeschaltet werden, dann sieht der Parameter folgendermaßen aus: "o1=on".
Eine URL für die Ausgänge 0-3 kann somit folgendermaßen aussehen:
Adresse des Loxberry/plugins/gpio/?o0=off&o1=on&o2=on&o3=on
Verwendung der Eingänge
Alle eingestellten Eingänge werden mit dem eingestellten Abtastintervall abgefragt. Damit die am Eingang anliegenden Signale sicher gelesen werden, müssen diese mindestens doppelt so lange anliegen wie das Intervall ist. Bei kürzeren Signalen kann es passieren, dass der geänderte Wert nicht erkannt wird. Beispiel: Eingestelltes Intervall 100ms daraus folgt das Signal muss mindestens 200ms anliegen. Siehe Nyquist-Shannon-Abtasttheorem
Jede Statusänderung der Eingänge wird per http als Push Nachricht an den ersten konfigurierten Miniserver geschickt.
Praktische Tipps rund um die GPIOs wurden hier zusammengefasst: Allgemeines zu den GPIOs
Einrichtung in der Loxone Config Software
Ausgänge:
Vorlagedatei für 8Relais:
View file | ||||
---|---|---|---|---|
|
View file | ||||
---|---|---|---|---|
|
In folgendes Verzeichnis legen und Config neu starten C:\ProgramData\Loxone\Loxone Config 10.0\Templates\VirtualOut oder wie im Bild Vorlage importieren Virtuelle Ausgänge/Vordefinierte Geräte/Vorlage importieren.
Hab absichtlich den EIB Taster verwendet um später den Status zu ermitteln.
Je nach Relaistyp muss der Ausgang (zur Zeit noch Q am EIB Taster und später im Plugin) noch invertiert werden oder oder ihr verwendet die 2.Invertierte Vorlage
IP anpassen nicht vergessen: http://user:passwort@IP Loxberry
Eingänge:
Eingänge analog den Präfix im Loxberry anlegen
Mit einem Webbefehl könnt ihr den Virtuellen Eingang testen: http://user:password@IP Miniserver/dev/sps/io/"Präfix"0/Ein oder ebenhttp://user:password@IP Miniserver/dev/sps/io/"Präfix"0/Aus
Rückmeldung sollte in etwa so ausschauen und die LiveView wird darauf reagieren
Roadmap
- Ein- und Ausgänge als Option invertieren
- Nach Änderung der Konfigiration sollen die Werte sofort verwendet werden
Testseite zum anzeigen des Stus der Eingänge sowie schalten der Ausgänge
Fragen stellen und Fehler melden
Fehler bitte im Github als Issue einstellen. Fragen können hier im Kommentar gestellt werden.