diff --git "a/docs/IO-Ger\303\244te & -Aktionen.md" "b/docs/IO-Ger\303\244te & -Aktionen.md" deleted file mode 100644 index 05b90d7ad9..0000000000 --- "a/docs/IO-Ger\303\244te & -Aktionen.md" +++ /dev/null @@ -1,39 +0,0 @@ -### IO-Geräte - -IO/GPIO sind analoge und digitale Ein- und Ausgänge, die man meist als Pin- oder Buchsenleiste auf der Platine findet. openWB software2 kann analoge und digitale Eingänge auslesen und analoge sowie digitale Ausgänge schalten. Die Ein- und Ausgänge befinden sich auf dem konfigurierten IO-Gerät, wie zB dem Dimm- & Control-Kit. Um festzulegen, was mit den Informationen aus den Eingängen gemacht werden soll oder welche Ausgänge geschaltet werden sollen, konfigurierst Du IO-Aktionen. Bei der IO-Aktion gibst Du an, welcher Ein- oder Ausgang dafür verwendet werden soll und ggf weitere Aktions-spezifische Einstellungen. - -#### Dimm-& Control-Kit - -Das Dimm-& Control-Kit besitzt acht analoge Eingänge (AI1-AI8), acht digitale Eingänge (DI1-DI8) und achte digitale Ausgänge (DO1-DO8). Bei den Ausgängen handelt es sich um potentialfreie Relais-Ausgänge mit 5A@28VDC/250VAC. - -#### openWB series2-Modell mit AddOn-Platine - -Die AddOn-Platine stellt 7 Eingänge und 3 Ausgänge zur Verfügung. WICHTIG: In openWB software 1.9 waren den IOs feste Aktionen zugeordnet, die auch auf der Platine beschriftet sind. Diese Zuordnung ist in software2 NICHT vorgegeben. Zur einfachen Zuordnung der Pins hier eine Übersicht: - -| Pin | Beschriftung | -|---------|---------| -| Eingang 21 | RSE 2 | -| Eingang 24 | RSE 1 | -| Eingang 31 | Taster 3 PV | -| Eingang 32 | Taster 1 Sofortladen | -| Eingang 33 | Taster 4 Stop | -| Eingang 36 | Taster 2 Min+PV | -| Eingang 40 | Taster 5 Standby | -| Ausgang 7 | LED 3 | -| Ausgang 16 | LED 2 | -| Ausgang 18 | LED 1 | - -## IO-Aktionen - -### Steuerbare Verbrauchseinrichtungen: Dimmen per EMS, Dimmung per Direkt-Steuerung, RSE - -Ausführliche Informationen findest Du im gesonderten Wiki-Beitrag [Steuerbare Einrichtungen nach § 14a EnGW und § 9 EEG](https://github.com/openWB/core/wiki/Steuerbare-Verbrauchseinrichtungen-nach-§14a) - -### Steuerbare Erzeugungseinrichtungen: Stufenweise Steuerung - -Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung an und kann optional das Signal der Eingänge an Ausgänge durchreichen. -Ausführliche Informationen findest Du im gesonderten Wiki-Beitrag [Steuerbare Einrichtungen nach § 14a EnGW und § 9 EEG](https://github.com/openWB/core/wiki/Steuerbare-Verbrauchseinrichtungen-nach-§14a) - -## Manuelles Setzen der Ausgänge - -Die Ausgänge aller IO-Geräte können per MQTT gesetzt werden. Die Topics findet Ihr in den Einstellungen des jeweiligen Geräts als Copy-to-Clipboard-Link. Das manuelle Setzen des Ausgangs überschreibt den Wert, den zB die openWB bei einer IO-Aktion gesetzt hat. diff --git a/docs/Identifikation.md b/docs/Identifikation.md deleted file mode 100644 index f74b0b9b12..0000000000 --- a/docs/Identifikation.md +++ /dev/null @@ -1,33 +0,0 @@ -Mit den verschiedenen Identifikations-Möglichkeiten kannst du die openWB grundsätzlich vor unbefugtem Laden schützen oder fahrzeugbasierte Funktionen nutzen. Es gibt zwei grundlegende Konzepte: Das Entsperren eines Ladepunkts und das Zuordnen eines Fahrzeugs. - -Die Identifikation erfolgt über - -* RFID-Tags: Setzt einen eingebauten RFID-Reader voraus. Dieser ist als optionales Zubehör für openWB Pro und openWB series2 erhältlich. Der Tag kann nach oder max. 5 Minuten vor dem Anstecken gescannt werden. -* Eingabe einer ID am Display: Setzt ein eingebautes Display voraus. -* Fahrzeugerkennung: Setzt eine openWB Pro und ein Fahrzeug, das diese Funktion unterstützt, voraus. (Permalink zur Übersicht im Forum) Zur Identifikation wird die MAC-Adresse des Fahrzeugs verwendet. Hat die Pro auch einen RFID-Reader, hat bei der Fahrzeug-Zuordnung die MAC-Adresse die höhere Priorität. Beim Entsperren wird beides geprüft. - -Die beschriebenen Identifikationsverfahren werden in der Software gleich ausgewertet. Es sind unterschiedliche Wege je nach Hardwareausstattung, die Information an die Software zu übergeben. Wenn ID-Tags genutzt werden sollen, dann ist in der Navigationsbar unter Einstellungen - Optionale Hardware unter dem Punkt Identifikation von Fahrzeugen die Option Identifikation aktivieren auf An zu stellen. - -Zusätzlich kann das Entsperren und die Fahrzeug-Auswahl auch manuell im Web-GUI oder am Display durchgeführt werden. - -#### Ladepunkt entsperren - -Unter Einstellungen → Konfiguration → Ladepunkte → Ladepunkt-Profil kann für eine Gruppe von Ladepunkten die gültigen ID-Tags hinterlegt werden. Ist der Ladepunkt gesperrt und es wird einer der hinterlegten Tags gescannt/eingegeben, wird der Ladepunkt entsperrt. Mit der Option Sperren nach Abstecken wird nach dem Abstecken der Ladepunkt gesperrt und muss bei nächsten Abstecken erst entsperrt werden, bevor geladen werden kann. - -#### Fahrzeug zuordnen - -Im Menü Einstellungen → Konfiguration → Fahrzeuge können ID-Tags für das Fahrzeug hinterlegt werden. Wird einer dieser Tags erkannt, wird das Fahrzeug dem Ladepunkt zugeordnet. - -Im Ladeprofil kann eingestellt werden, ob nach dem Abstecken das Standard-Fahrzeug zugeordnet werden soll. Andernfalls wird nach Abstecken das letzte vorher ausgewählte Fahrzeug zugeordnet. -Die Option Standard nach Abstecken macht nur Sinn, wenn neben dem Standard-Fahrzeug mindestens ein weiteres Fahrzeug und neben dem Standard-Lade-Profil mindestens ein weiteres Lade-Profil angelegt wurde. Dabei ist dem Standard-Fahrzeug das Standard-Lade-Profil und dem weiteren Fahrzeug das weitere Lade-Profil zuzuweisen. Wenn nur mit Identifikation geladen werden soll, muss im Standard-Lade-Profil der aktive Lademodus auf Stop gestellt werden. In den Lade-Profilen der anderen Fahrzeuge muss Standard nach Abstecken aktiviert werden. -Über den ID-Tag wird ein Fahrzeug zugeordnet. Nach Abstecken wechselt die Auswahl dann auf Standardfahrzeug in den Lademodus Stop und der Ladepunkt startet keinen weiteren Ladevorgang, bis die Auswahl entweder händisch über das User Interface oder automatisch per ID-Tag auf ein Fahrzeug geändert wird, das sich z.B. im Lademodus Sofortladen befindet und laden darf. - -### Use Cases - -#### Sperre nach Abstecken - -Sperre nach Abstecken kann an einem Ladepunkt verwendet werden, welcher das Laden gegenüber fremdem Zugriff sichert. Wird der ID-Tag nur zum Sperren/Entsperren des Ladepunktes verwendet, dann startet immer das ausgewählte Fahrzeug den Ladevorgang. Dies kann im privaten Bereich mit nur einem Fahrzeug sinnvoll sein, damit nur dieses Fahrzeug auch laden darf. Die Option ist aber auch für Ladeparks sinnvoll, bei denen die Ladepunkte nur für eine Gruppe von ID-Tags freischaltbar sind und dem ID-Tag zum Entsperren auch gleichzeitig zugeordnet sind. - -#### Standard nach Abstecken - -Standard nach Abstecken kann an einem Ladepunkt verwendet werden, welcher das Laden mehrerer verschiedener Fahrzeuge ermöglichen soll. Werden mehrere Fahrzeuge mit verschiedenen Lade-Profilen und verschiedenen ID-Kennungen neben dem Standard-Fahrzeug angelegt, kann über die ID-Kennung zwischen den einzelnen Fahrzeugen gewechselt werden. Hier bietet sich beispielsweise ein privater Ladepunkt mit zwei Fahrzeugen an oder ein Ladepunkt in einer Firma mit verschiedenen Mitarbeitern. Standard nach Abstecken kann auch dazu verwendet werden, um beispielsweise zwischen zwei Fahrzeugen (und damit Fahrzeug-Profilen und Lade-Profilen) ohne ID-Tag zu wechseln, vor allem wenn nur eines der Fahrzeuge über die ID-Kennung zuverlässig erkannt wird. diff --git "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" deleted file mode 100644 index 77a573797b..0000000000 --- "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" +++ /dev/null @@ -1,39 +0,0 @@ -## Steuerbare Verbrauchseinrichtungen (SteuVE) nach § 14a EnGW - -Der Gesetzgeber sieht verschiedene Möglichkeiten für steuerbare Verbrauchseinrichtungen vor. Für jede steuerbare Verbrauchseinrichtung kann eine andere Option angemeldet werden. Bei der Konfiguration muss deshalb auch immer der/die Ladepunkte angegeben werden, für die die IO-Aktion angewendet werden soll. - -### Dimmen per EMS - -Beim Dimmen wird eine maximale Bezugsleistung für alle steuerbaren Verbrauchseinrichtungen nach einer vorgegebene Formel ermittelt. Das Ergebnis dieser Formel muss bei der IO-Aktion `Dimmen` in der Einstellung `maximale Bezugsleistung` eingetragen werden. ACHTUNG: Die openWB kann aktuell nur die Ladepunkte berücksichtigen. Sind noch weitere steuerbare Verbraucher angemeldet, können diese über einen digitalen Ausgang angebunden werden. Da openWB die Leistung dieser Geräte nicht kennt, werden 4,2kW angenommen. Muss der Verbraucher seine Leistung begrenzen, wird der Ausgang auf 0V gesetzt. Für die korrekte Ermittlung der maximalen Bezugsleistung ist der Betreiber, nicht openWB oder die software2 verantwortlich. -Vorhandener Überschuss kann zusätzlich zur maximalen Bezugsleistung verwendet werden. - -### Dimmung per Direkt-Steuerung - -Bei der Dimmung per Direkt-Steuerung wird jede steuerbare Verbrauchseinrichtung separat angesteuert und ihr Leistungsbezug auf 4,2kW gedimmt. -Pro steuerbarer Verbrauchseinrichtung muss eine IO-Aktion konfiguriert werden und dort der Ladepunkt und der zugehörige Eingang angegeben werden. - -### Rundsteuer-Empfänger-Kontakt (RSE) - -Für den RSE-Kontakt können Muster aus verschiedenen Eingängen angegeben werden. Es kann frei festgelegt werden, bei welchem Muster die zugeordneten Ladepunkte Gesperrt oder freigegeben sind. - -In der abgebildeten Konfiguration werden die Ladepunkte nur freigegeben, wenn beide Kontakte DI1 und DI2 geschlossen sind. Ist auch nur einer geöffnet, wird gesperrt. - -![RSE-Beispielkonfiguration](RSE-Beispielkonfiguration.png) - -## Steuerbare Erzeugungsanlagen (EZA) nach § 9 EEG - -Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung an und kann optional das Signal der Eingänge an Ausgänge durchreichen. - -Die Einspeise- oder Erzeugungsleistung der EZA (abhängig von der Implementierung in der EZA) wird über drei potentialfreie Signalkontakte der FNN-Steuerbox geregelt. Die openWB übernimmt dabei keine direkte Steuerung des Wechselrichters, sondern visualisiert lediglich und protokolliert den aktuellen Steuerzustand. - -Das Signalkabel der FNN-Steuerbox muss daher beispielsweise über ein Koppelrelais mit zwei separaten Schließer-/Wechselkontakten mit dem I/O-Modul der openWB und der Erzeugungsanlage verbunden werden. Falls dies nicht möglich ist, kann die Steuerbox über einfache Koppelrelais mit dem I/O-Modul der openWB verbunden werden und das empfangene Signal an vorhandene Ausgänge des I/O-Moduls (falls vorhanden) durchgereicht werden. - -Die Signalkontakte bilden folgende Zustände ab: -S1 -> 60% der EZA -S2 -> 30% der EZA -W3 -> 0% der EZA -alle Kontakte offen -> 100% der EZA - -Die Eingangsmuster sind so zu konfigurieren, dass auch bei mehreren geschlossenen Kontakten eine eindeutige Funktion gewährleistet wird. In der abgebildeten Konfiguration hat z.B. der Eingang DI5 für Begrenzung auf 0% Priorität, sodass dieses Muster auch erkannt wird, falls noch einer der Eingänge DI3 oder DI4 geschlossen sind. - -![EZA-Beispielkonfiguration](EZA-Beispielkonfiguration.png) diff --git a/docs/samples/sample_modbus/sample_modbus/counter.py b/docs/samples/sample_modbus/sample_modbus/counter.py index 206d9bdbb8..5964ca63f0 100644 --- a/docs/samples/sample_modbus/sample_modbus/counter.py +++ b/docs/samples/sample_modbus/sample_modbus/counter.py @@ -28,6 +28,7 @@ def initialize(self) -> None: self.fault_state = FaultState(ComponentInfo.from_component_config(self.component_config)) def update(self): + unit = self.component_config.configuration.modbus_id power = self.client.read_holding_registers(reg, ModbusDataType.INT_32, unit=unit) imported, exported = self.sim_counter.sim_count(power) diff --git a/docs/samples/sample_modbus/sample_modbus/inverter.py b/docs/samples/sample_modbus/sample_modbus/inverter.py index 6fda28c90f..c37d82bf26 100644 --- a/docs/samples/sample_modbus/sample_modbus/inverter.py +++ b/docs/samples/sample_modbus/sample_modbus/inverter.py @@ -28,6 +28,7 @@ def initialize(self) -> None: self.fault_state = FaultState(ComponentInfo.from_component_config(self.component_config)) def update(self) -> None: + unit = self.component_config.configuration.modbus_id power = self.client.read_holding_registers(reg, ModbusDataType.INT_32, unit=unit) exported = self.sim_counter.sim_count(power)[1]