Moin liebes Forum,
ich versuche zur Zeit einen gewissen Wert im Plot nicht darzustellen, leider gelingt es mir nicht.
Ich benutze dblog und versuche wie folgt den Wert "0" zu unterdrücken.
Ich habe es mit folgenden Varianten probiert:
sr_USV:energy1:::$val=~/^[0]{1}$/?'hide':$val
sr_USV:energy1:::$val=~/^[0]{1}$/?"hide":$val
sr_USV:energy1:::$val=~/^[0]{1}$/?'ignore':$val
Mein "Show preprocessed Input" schaut wie folgt aus:
2019-04-08_16:35:53 0
2019-04-08_16:40:53 0
2019-04-08_16:45:52 0
2019-04-08_16:50:52 0
2019-04-08_16:55:52 22.77
2019-04-08_17:00:52 22.77
2019-04-08_17:05:52 22.79
2019-04-08_17:10:52 22.79
2019-04-08_17:15:52 22.81
2019-04-08_17:20:52 22.83
2019-04-08_17:25:52 22.83
2019-04-08_17:25:52 22.83
2019-04-08_17:25:52 22.83
2019-04-08_17:30:52 22.85
2019-04-08_17:35:52 22.85
2019-04-08_17:40:52 0
2019-04-08_17:45:52 0
2019-04-08_17:50:52 0
2019-04-08_17:55:52 22.91
2019-04-08_18:00:52 22.93
2019-04-08_18:05:52 22.93
2019-04-08_18:05:52 22.93
Mein Device, welches ich Logge schaut wie folgt aus:
Internals:
DEF d8a48054 64
FUUID 5ca49eda-f33f-5a17-0d65-bf74eedc1994b766
IODev Z_Wave
LASTInputDev Z_Wave
MSGCNT 1039
NAME sr_USV
NR 893
STATE on
TYPE ZWave
ZWaveSubDevice no
Z_Wave_MSGCNT 1039
Z_Wave_RAWMSG 000400400a3202a14a0028012d0027d700
Z_Wave_TIME 2019-04-08 18:05:52
homeId d8a48054
isWakeUp
nodeIdHex 40
Helper:
DBLOG:
current:
myDbLog:
TIME 1554739552.7667
VALUE 0.4
energy:
myDbLog:
TIME 1554739552.67054
VALUE 22.93
energy1:
myDbLog:
TIME 1554739552.67054
VALUE 22.93
power:
myDbLog:
TIME 1554739552.70675
VALUE 79.55
power1:
myDbLog:
TIME 1554739552.70675
VALUE 79.55
voltage:
myDbLog:
TIME 1554739552.73645
VALUE 233.29
READINGS:
2019-03-31 10:56:02 alarm PowerManagement: Event cleared: Over-load detected, arg 0108
2019-04-04 22:54:25 configButtonOnOff 13
2019-04-04 22:54:25 configConfigureMaximumAlarmCurrent 0
2019-04-04 22:54:25 configConfigureMaximumOverLoadCurrent 1
2019-04-04 22:54:25 configConfigurePlugTimeSwitchFunction 16
2019-04-04 22:54:25 configConfigurePowerReport 1
2019-04-04 22:54:25 configConfigureTimeSwitchPeriod 50
2019-04-04 22:54:25 configLedDisplay 120
2019-04-04 22:54:25 configMeterReportInterval 1
2019-04-04 22:54:25 configRememberRelayONOFFStatus 300
2019-04-04 22:54:25 configSendMeterReport Enable
2019-03-29 21:53:45 config_0 0
2019-04-08 18:05:52 current 0.4 A previous: 0.39 delta_time: 301 s
2019-04-08 18:05:52 energy 22.93 kWh previous: 22.93 delta_time: 301 s
2019-04-08 18:05:52 energy1 22.93
2019-04-04 22:54:08 model Neo CoolCam Power plug 12A
2019-04-04 22:54:08 modelConfig shenzen_neo/nas-wr01z.xml
2019-04-04 22:54:08 modelId 0258-0200-1027
2019-04-08 18:05:52 power 79.55 W previous: 77.09 delta_time: 301 s
2019-04-08 18:05:52 power1 79.55
2019-04-02 17:31:27 powerlvl current 0 remain 0
2019-04-01 19:35:40 reportedState on
2019-04-01 19:35:40 state on
2019-04-04 22:54:25 timeToAck 0.033
2019-04-04 22:54:25 transmit OK
2019-04-01 21:44:17 version Lib 3 Prot 6.02 App 2.32 HW 16 FWCounter 0
2019-04-08 18:05:52 voltage 233.29 V previous: 233.65 delta_time: 301 s
Attributes:
DbLogInclude power1,energy1
IODev Z_Wave
classes ZWAVEPLUS_INFO SECURITY SECURITY_S2 TRANSPORT_SERVICE POWERLEVEL VERSION ASSOCIATION MULTI_CHANNEL_ASSOCIATION ASSOCIATION_GRP_INFO MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY SWITCH_BINARY SWITCH_ALL METER ALARM CONFIGURATION SUPERVISION
genericDeviceType outlet
icon measure_battery_100
room QNAP,ZWave
userReadings power1:power.* {
my $v = (split(' ',ReadingsVal($NAME,'power','')))[0];; $v;;
},
energy1:energy.*
{ my $v1 = (split(' ',ReadingsVal($NAME,'energy','')))[0];;
if ($v1 < 1000) { $v1;; }
else { $v1 = 0 ;; $v1;; }
}
vclasses ALARM:8 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 MANUFACTURER_SPECIFIC:2 POWERLEVEL:1 SECURITY:1 SECURITY_S2:1 SUPERVISION:1 SWITCH_ALL:1 SWITCH_BINARY:1 TRANSPORT_SERVICE:2 VERSION:3 ZWAVEPLUS_INFO:2
Da in dem Reading "energy" manchmal totaler Schrott steht, schreibe ich hier ein userReading namens "energy1", dieses logge ich in die MariaDB.
Im Anhang befindet sich mein GPLOT als Bilddatei.
Gruß
Mathze
Habe das Problem nun mit einem userReading gelöst. Viele Wege führen nach Rom, wollte eigentlich den über den Plot gehen, aber ok.
Gruß
Mathze