VALVES
VALVES | |
---|---|
Zweck / Funktion | |
Durchschnitt mit individueller Gewichtung und Ignore | |
Allgemein | |
Typ | Inoffiziell |
Details | |
Dokumentation | siehe Forum |
Support (Forum) | Codeschnipsel |
Modulname | 39_VALVES.pm |
Ersteller | epsrw1,cwagner |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
VALVES bietet eine einfache Möglichkeit, den nach flexibel konfigurierbaren Regeln gewichteten Durchschnittswert einer Gruppe von Werten zu berechnen.
Features
Diese Wiki-Seite beschreibt den Versionsstand 1.0 des VALVES-Moduls.
Die Namensgebung beruht auf der primären Anwendung des Moduls auf Valve-Position-Readings von Heizungsthermostaten.
Thread im Forum:[1]
Beschreibung
VALVES bietet als kleines Helferlein die Möglichkeit, einen halbwegs sinnvollen und individuell gewichteten Durchschnittswert der Readings mehrerer verschiedener Devices zu berechnen.
Für jeden Wert einzeln kann ein Offset definiert werden. Es können dynamisch jeweils die höchsten/niedrigsten 0 bis 3 Werte ignoriert werden. Eine weitere Einstellung ermöglicht, bestimmte Werte doppelt zu zählen.
Im Anwendungsbeispiel Raumbedarfsabhängige Heizungssteuerung wird das Modul zum Beispiel verwendet, um den Durchschnittswert der Ventilöffnungen aller Heizkörper zu berechnen. Die individuelle Gewichtung über Attr ermöglicht hierbei einen virtuellen hydraulischen Abgleich.
Die Liste aller auszulesenden Devices wird in einem attr eingestellt, der Name des Readings in einem weiteren. Das Modul prüft dann regelmäßig (attr: poll interval) die Daten der FHEM-Devices und berechnet neu, wenn ein Änderung festgestellt wird.
Für die Beeinflussung des Durchschnittes hat man folgende Attribute:
- ignoriere niedrigste 0...3 Positionen
- ignoriere höchste 0...3 Positionen
- ignoriere namentlich genannte Devices
- priority-device Liste (zählen doppelt)
- valves<Devicename>Gewichtung optionale Einzeleinstellung für jedes Reading, multipliziere mit Attr-Wert (zB:0,95 um 5% abzuziehen). Damit können Unterschiede bekannte gleichbleibende Meßungenauigkeiten kompensiert werden, oder verschieden große Geräte in vergleichbare Rechengrößen konvertiert werden.
Define
define <name> VALVES
Attribute
Alle Attribute sind auch in fhem durch das Kommando get attrHelp <varname> erklärt, für's "schnelle Nachschauen zwischendurch".
valvesInitialDelay ->Startverzögerung
valvesPollInterval ->Berechnungsfrequenz
valvesDeviceList ->Pflicht-Attr, liste thermostate mit valve-pos readings
valvesDeviceReading ->Pflicht-Attr, bezeichnung valve-pos reading
valvesIgnoreLowest ->niedrigste N werte ignorieren
valvesIgnoreHighest ->höchste N werte ignorieren
valvesIgnoreDeviceList ->device(s) die komplett ignoriert werden, zB. temporärer eintrag für gästezimmer
valvesPriorityDeviceList ->devices, die doppelt gezählt werden
valves<Devicename>Gewichtung ->faktor für einzelnes device für individuelle gewichtung
Settings
reset ->alle readings zurücksetzen
Readings
state -> Fehlermeldung oder Mittelwert nach oben beschriebener Berechnung
valve_<Devicename> -> berechnete virtuelle Ventilstellung pro Gerät
valveDetail_<Devicename> -> Debug-Info mit Details
raw_average -> simpler Mittelwert ohne Berücksichtigung der Gewichtungen (ignores werden auch hier ignoriert)
valve_average -> Mittelwert nach oben beschriebener Berechnung
valve_max -> größte aktuelle Ventilöffnung seit letztem Reset
valve_min -> kleinste aktuelle Ventilöffnung seit letzutem Reset
Weblinks
- [2] Thread im Forum, in dem dieses Modul vorgestellt wurde
- ...