Zahl aus reading mit Einheit extrahieren

Begonnen von Firefield, 30 November 2015, 17:14:52

Vorheriges Thema - Nächstes Thema

Firefield

Hallo,
ich hab von Aeotec ein Aeotec Home Energy Meter G2.
Alle Readings werden da mit einer Einheit oder anderen Infos ausgegeben.

current  1.339 A                                                              2015-11-30 17:02:23
energy   27.599 kWh previous: 27.584 delta_time: 4 s   2015-11-30 17:03:00
power    173.786 W                                                         2015-11-30 17:03:57
voltage  232.141 V                                                          2015-11-30 17:04:41


Finde ich prinzipiell nicht schlecht, bereitet mir allerdings Probleme bei der Weiterverabeitung zu userReadings. FHEM rechnet zwar und gibt auch das richtige Ergebnis aus. Produziert aber jedesmal eine Fehlermeldung im Logfile.


2015.11.30 17:06:37 1: PERL WARNING: Argument " 232.141 V" isn't numeric in multiplication (*) at (eval 573118) line 1.
2015.11.30 17:06:37 3: eval: {ReadingsVal("PwM","voltage",0)*ReadingsVal("PwM","current",0);; }


Was nun die Größe des Logfiles pro Tag beträchtlich ansteigen lässt. 

Warum schafft es FHEM denn zu rechnen obwohl es eine Fehlermeldung ausgibt?
Gibts ne Möglichkeit auszuwählen welcher Teil aus dem reading verwendet werden soll (Ähnlich wie bei den Diagrammen)? Finde da nix
Gigabyte GB-BACE-3150, 8GB RAM, 120GB SSD, Proxmox mit FHEM-VM und DB-VM| (ab und an aktuelles) FHEM mit ConfigDB+LogDB. MariaDB + phpmyadmin. | Zwave.me USB dongle, Jeelink, HM, BTLE und HUEbridge.

justme1968

das ist eine warnung und keine fehlermeldung.

nimm ReadingsNum statt ReadingsVal oder $NUM statt $VALUE wenn es um eine reafingsGroup geht.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Firefield

#2
oh, das war schnell...
hat  geholfen, danke (:

hab mit ReadingsNum nun noch lediglich eine Warnung:
2015.11.30 17:26:55 1: PERL WARNING: Argument "27.88527.885305" isn't numeric in division (/) at (eval 578834) line 1.
2015.11.30 17:26:55 3: eval: { ReadingsNum("PwM","energy",0)/3.0;; }


dazugehörige reading ist

energy  27.885 kWh previous: 27.885 delta_time: 305 s    2015-11-30 17:33:42


damit könnt ich leben, da es deutlich weniger Warnungen sind und FHEM trotzdem richtig rechnet. Pickt sich da nun nur die Zahlen raus. Ist halt blöd, dass da mehr als eine steht.
Rechnen tut es weil..?? Zahlen bis zum zweiten Punkt werden verwendet?
Gigabyte GB-BACE-3150, 8GB RAM, 120GB SSD, Proxmox mit FHEM-VM und DB-VM| (ab und an aktuelles) FHEM mit ConfigDB+LogDB. MariaDB + phpmyadmin. | Zwave.me USB dongle, Jeelink, HM, BTLE und HUEbridge.

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968