neues Modul 98_powerMap

Begonnen von igami, 19 Dezember 2016, 05:36:36

Vorheriges Thema - Nächstes Thema

igami

Zitat von: Loredo am 23 Januar 2017, 18:57:52
Find ich auch. Jetzt nur nicht aufhören  ;)
Dachte schon du hast dich abgemeldet  ;D
Ne, habe nicht vor mich abzumelden nur so ganz folgen kann ich auch nicht mehr ::)
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

klausw

Bei mir im Log finden sich jede Menge Einträge dieser art:

2017.01.23 22:57:04 1: powerMap Heizkessel: Pumpe_Heizkreis: Adding to total
2017.01.23 22:57:04 1: powerMap Heizkessel: Pumpe_Boiler: Adding to total


Verbose für das powerMap habe ich aber genau aus diesem Grund auf 0 gestellt.
Dadurch müsste es doch unterdrückt werden.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Loredo

Ich glaube verbose=0 gibt es so nicht.
Ist auch ein Versehen, ich habe das gerade korrigiert.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Gruby

Hallo zusammen,

ich bräuchte einen Tip wie die Powermap Daten von verschiedenen Geräten in das Modul Electricity Calculator eingebunden werden können.
Das verfolgte Ziel ist eine Verbrauchsanzeige pro Room sowie eine Gesamtverbrauchsanzeige minus der zugeführten Energie der Solaranlage.

Die Messung erfolgt in der Regel via KNX-Switche mit Strommessung und zusätzlich der nicht messbaren Werte einzelner Verbraucher mittels PowerMap.

Viele Grüße

Gruby

igami

Zitat von: Gruby am 29 Januar 2017, 15:51:49
ich bräuchte einen Tip wie die Powermap Daten von verschiedenen Geräten in das Modul Electricity Calculator eingebunden werden können.
Das verfolgte Ziel ist eine Verbrauchsanzeige pro Room sowie eine Gesamtverbrauchsanzeige minus der zugeführten Energie der Solaranlage.
Das ist ja eher eine ElectricityCalculator spezifische Frage und so auch glaube ich nicht umsetzbar.
Ich habe bei mir folgendes definiert

defmod ElectricityCalculator ElectricityCalculator .*:energy.*

defmod powerMap powerMap
attr powerMap powerMap_rname_E energy
attr powerMap powerMap_rname_P power
attr powerMap room helper

Dadurch bekomme ich im ElectricityCalculator für jedes device einzelne Readings, diese werden aber nicht zusammen gefasst.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

igami

#65
Die Interpolation des Moduls muss noch angepasst werden.
In dem Thread Kennlinie / Lookup table in Perl umsetzen geht es darum von einem Analogthermometer PLC Werte in Temperatur zu mappen. Dabei gehen die PLC Werte von 1793 bis 15501 (aufsteigend) und die Temperatur Werte von +80°C bis -30°C (absteigend) dadurch, dass im powerMap davon ausgegangen wird, dass es immer aufsteigend, aufsteigend ist kommen falsche Werte zustande. Schuld daran dürften die Zeilen ab 1401 sein

            foreach ( sort keys %{ $powerMap->{$reading} } ) {
                next unless ( looks_like_number($_) );
                $val1 = $_ if ( $_ < $num );
                $val2 = $_ if ( $_ > $num );
                last if ( defined($val2) );
            }

Hier wird erstmalig geschaut wo die nächsten beiden Variablen sind, aber eben sehr plump und es wird davon ausgegangen, dass sie aufsteigend sind. Ich wollte mir nachher mal Gedanken dazu machen wie man das eleganter Lösen kann, aber vielleicht hat ja schon jemand einen Ansatz parat. Auf ein zusätzliches Perl Modul wie Math::Interpolate würde ich gerne verzichten, aber man kann da ja mal rein schauen wie es gelöst wurde.

Edit: Es scheint doch ein anderer Fehler zu sein, auch bei meiner HUE Leuchte wird nicht korrekt interpoliert

2017.02.03 06:33:03 5: powerMap HUEDevice2: pct: val=71 num=71
2017.02.03 06:33:03 5: powerMap HUEDevice2: pct: Interpolating power value between 10 and 100
2017.02.03 06:33:03 4: powerMap HUEDevice2: energy calculation results:
  energyOld : 2724.9165543209 Wh
  powerOld  : 4.7 W
  power     : 6.62222222222222 W
  timeframe : 0.000555555555555556 h
  energyDiff: 0.00261111111111111 Wh
  energy    : 2724.91916543201 Wh

Es wird zwischen 10 und 100 Interpoliert obwohl powerMap so aussieht:

{
  'pct' => {
             '0' => '0.4',
             '10' => '1.2',
             '100' => '9.2',
             '20' => '1.7',
             '30' => '1.9',
             '40' => '2.3',
             '50' => '2.7',
             '60' => '3.4',
             '70' => '4.7',
             '80' => '5.9',
             '90' => '7.5'
           },
  'state' => {
               'off' => '0.4',
               'on' => '9.2',
               'unreachable' => 0
             }
}
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

Loredo

Die Sortierreihenfolge habe ich gerade korrigiert.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Frosch

Hallo zusammen,
erstmal danke an alle Beteiligten für die Entwicklung und Umsetzung dieses Moduls.

Gibt es eine Möglichkeit das "pM_energy"-Reading durch powerMap in kWh umrechnen zu lassen, oder muss ich alle Watt-angaben in Kilowatt-angaben ändern?

Gruß Mathias

Loredo

#68
Die Einheiten-Umrechnung ist in Unit.pm vorgesehen und kann dann darüber erfolgen.
Derzeit ist es noch nicht möglich und die Einheiten sind in Watt bzw. Wattstunden.


Bitte beachten: Wenn du die Wattangaben im powerMap Attribut in Kilowatt änderst, dann bleibt die Einheit intern trotzdem auf Watt gesetzt. Zukünftig kann es dadurch also u.U. zu Fehlern kommen.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

alex885

Hallo wie kann ich denn diesen State eines HM Dimmer Kanals Mappen?

STATE  chn:off phys:30

benötigt wird natürlich der phys wert.

Merci für die Hilfe

Alex
FHEM auf Hackintosh-NUC, 5 x Rpi mit Fhem2Fhem & Shairport-Sync , FB7390, CUL, HMLAN, ZWave, Zigbee, RfxTrx, Rollotron, mySensors, Xiaomi mi, div Zeuchs..

Loredo

Sofern chn: keinen Wert einer Ziffer annehmen kann, kannst du es direkt so verwenden. Es werden automatisch alle Nicht-Ziffern aus dem Wert ignoriert.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Vize

#71
Hallo zusammen,

habe hier u.U. ein etwas seltsames Phänomen.

Gestern habe ich ein HHTPMOD-Device mit geänderten Daten aktualisiert.
Seitdem werden automatisch die Readings für/von powerMap in diesem Device erzeugt, obwohl die Attribute darin gar nicht vergeben sind...

In den Internals des HTTPMOD-Devices findet sich das:
Powermap:
   Readingsdesc:
     Pm_consumption:
       rtype      w
     Pm_energy:
       rtype      whr


Die Attribute sehen so aus, also keine Spur von powerMap:
disable    0
   enableControlSet 1
   enableCookies 1
   reAuthRegex .*Error.*
   reading01Format %.0f
   reading01JSON fuelgauge
   reading01Name Akku-Füllstand
   replacement1Mode key
   replacement1Regex %%password%%
   replacement1Value password
   sid1Header1 Content-Type: text/html
   sid1Header2 Accept: */*
   sid1URL    https://mein-senec.de/
   sid2Data   username=XXX&passwort=%%password%%
   sid2Header1 Accept: */*
   sid2Header2 Content-Type: application/x-www-form-urlencoded
   sid2IgnoreRedirects 1
   sid2URL    https://mein-senec.de/endkunde/auth/authenticate
   sid3Header1 Accept: */*
   sid3Header2 Content-Type: text/html
   sid3URL    https://mein-senec.de/endkunde
   stateFormat { sprintf("%.0f",ReadingsVal($name,"Akku-Füllstand",0)) }
   timeout    20
   userattr   reading01Format reading01JSON reading01Name replacement1Mode:reading,internal,text,expression,key replacement1Regex replacement1Value sid1Data sid1Header1 sid1Header2 sid1URL sid2Data sid2Header1 sid2Header2 sid2IgnoreRedirects:0,1 sid2URL sid3Header1 sid3Header2 sid3URL
   verbose    2


Ist dazu etwas bekannt?

Das Kuriose daran ist, dass ich gestern ebenfalls ein anderes Device in gleicher Weise aktualisiert habe.
Dort tritt dieses Verhalten aber nicht auf...
Ergänzung: In diesem Device stehen ebenfalls in den Internals die Sachen zu Powermap, die Readings tauchen aber wie gesagt nicht auf...

Wenn noch weitere Infos fehlen, bitte einfach Bescheid geben...

Danke schonmal!

Gruß
Andreas

Vize

Moin,

hat niemand eine Idee oder einen Hinweis?

Viele Grüße
Andreas

Loredo

Ich habe spontan keine konkrete Idee dazu, weil du nur unvollständige Infos lieferst und man es so nicht nachstellen kann.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Vize

Moin,

welche Infos brauchst du denn noch, bzw. was wäre hilfreich?

Kurios ist halt, dass es (bisher) nur bei einem HTTPMOD-Device auftritt...

Gruß
Andreas