10 Commits

Author SHA1 Message Date
Marc Hoppe
effa653a15 ...SetExtensions 2016-03-28 11:25:16 +02:00
Marc Hoppe
8a8a64cd91 ...99 2016-03-28 11:25:16 +02:00
e88e701a59 ... 2016-03-28 11:25:16 +02:00
84c27863f6 my:print aus 2016-03-28 11:25:16 +02:00
5e67aa9dfe myutils: Umstellung auf one-wire-temp statt fht 2016-03-28 11:25:16 +02:00
91f0669000 glots fuer onewire sensoren hinzu 2016-03-28 11:25:16 +02:00
eb201a9cf2 99-my: Roll-Schlitz: nur nuch 6 sek. hoch; Ausssentemp. beruecksichtigen 2016-03-28 11:25:16 +02:00
b90ea44b2f 99my: Rolladenrunter:Aussentemp-Differenz auf 3 verringert 2016-03-28 11:25:16 +02:00
Marc Hoppe
406dd136b8 99_MyUtils.pm bei niedrigen Aussentemp keine Abschattung 2016-03-28 11:25:16 +02:00
Marc Hoppe
f240ddc5af twilight: Waether_horizon ohne wetter setzen 2016-03-28 11:25:16 +02:00
19 changed files with 606 additions and 167 deletions

View File

@@ -431,8 +431,10 @@ sub Twilight_getWeatherHorizon(@)
my $location=$hash->{WEATHER}; my $location=$hash->{WEATHER};
if ($location == 0) { if ($location == 0) {
$hash->{WEATHER_HORIZON}="0"; $hash->{WEATHER_HORIZON}=$hash->{INDOOR_HORIZON}+1;
$hash->{CONDITION}="0"; $hash->{CONDITION}="-1";
#$hash->{WEATHER_HORIZON}="0";
#$hash->{CONDITION}="0";
return 1; return 1;
} }

View File

@@ -2,8 +2,9 @@ package main;
use strict; use strict;
use warnings; use warnings;
use POSIX; use POSIX;
sub use feature "state";
MyUtils_Initialize($$)
sub MyUtils_Initialize($$)
{ {
my ($hash) = @_; my ($hash) = @_;
} }
@@ -15,22 +16,21 @@ use constant {
STATE_SCHLITZ => 3, STATE_SCHLITZ => 3,
}; };
my @rolls = ( my @rolls = (
{ roll => "wohn.rollTerrR", dir=>"W", typ=>"n", temp=>"wohn.fht", tempS=>21, win=>"wohn.fenTerr", state=>STATE_IDLE, }, { roll => "wohn.rollTerrR", dir=>"W", typ=>"n", temp=>"tempWohn", tempS=>21, win=>"wohn.fenTerr", state=>STATE_IDLE, },
{ roll => "wohn.rollTerrL", dir=>"W", typ=>"n", temp=>"wohn.fht", tempS=>21, win=>"", state=>STATE_IDLE, }, { roll => "wohn.rollTerrL", dir=>"W", typ=>"n", temp=>"tempWohn", tempS=>21, win=>"", state=>STATE_IDLE, },
{ roll => "wohn.rollSofa", dir=>"S", typ=>"n", temp=>"wohn.fht", tempS=>21, win=>"", state=>STATE_IDLE, }, { roll => "wohn.rollSofa", dir=>"S", typ=>"n", temp=>"tempWohn", tempS=>21, win=>"", state=>STATE_IDLE, },
{ roll => "ess.roll", dir=>"S", typ=>"n", temp=>"wohn.fht", tempS=>21, win=>"", state=>STATE_IDLE, }, { roll => "ess.roll", dir=>"S", typ=>"n", temp=>"tempWohn", tempS=>21, win=>"", state=>STATE_IDLE, },
{ roll => "kuch.rollBar", dir=>"S", typ=>"n", temp=>"wohn.fht", tempS=>21, win=>"", state=>STATE_IDLE, }, { roll => "kuch.rollBar", dir=>"S", typ=>"n", temp=>"tempKueche", tempS=>21, win=>"", state=>STATE_IDLE, },
{ roll => "kuch.rollStr", dir=>"O", typ=>"n", temp=>"wohn.fht", tempS=>21, win=>"", state=>STATE_IDLE, }, { roll => "kuch.rollStr", dir=>"O", typ=>"n", temp=>"tempKueche", tempS=>21, win=>"", state=>STATE_IDLE, },
{ roll => "arb.rollTerr", dir=>"W", typ=>"n", temp=>"studio.fht", tempS=>21, win=>"", state=>STATE_IDLE, }, { roll => "arb.rollTerr", dir=>"W", typ=>"n", temp=>"tempStudio", tempS=>21, win=>"wohn.fenTerr", state=>STATE_IDLE, },
{ roll => "arb.rollWeg", dir=>"S", typ=>"n", temp=>"studio.fht", tempS=>21, win=>"", state=>STATE_IDLE, }, { roll => "arb.rollWeg", dir=>"S", typ=>"n", temp=>"tempStudio", tempS=>21, win=>"", state=>STATE_IDLE, },
{ roll => "bad.roll", dir=>"S", typ=>"n", temp=>"bad.fht", tempS=>23, win=>"", state=>STATE_IDLE, }, { roll => "bad.roll", dir=>"S", typ=>"n", temp=>"tempBad", tempS=>23, win=>"", state=>STATE_IDLE, },
{ roll => "schlaf.rollWeg", dir=>"S", typ=>"s", temp=>"schlaf.fht", tempS=>18, win=>"", state=>STATE_IDLE, }, { roll => "schlaf.rollWeg", dir=>"S", typ=>"s", temp=>"tempSchlaf", tempS=>18, win=>"", state=>STATE_IDLE, },
{ roll => "schlaf.rollStr", dir=>"O", typ=>"s", temp=>"schlaf.fht", tempS=>18, win=>"", state=>STATE_IDLE, }, { roll => "schlaf.rollStr", dir=>"O", typ=>"s", temp=>"tempSchlaf", tempS=>18, win=>"wohn.fenTerr", state=>STATE_IDLE, },
); );
# in dieser Reihenfolge fahren
my @rollHoch = ( my @rollHoch = (
"bad.roll", "bad.roll",
"arb.rollWeg", "arb.rollWeg",
@@ -57,6 +57,7 @@ my @rollRunter = (
"schlaf.rollStr" "schlaf.rollStr"
); );
# Bei Weckzeit auf Schlitz
my @rollWeck = ( my @rollWeck = (
"schlaf.rollWeg", "schlaf.rollWeg",
"schlaf.rollStr" "schlaf.rollStr"
@@ -76,15 +77,21 @@ my @rollArb = (
"arb.rollWeg", "arb.rollWeg",
); );
#------------------------------------------
my $tc=0;
my @blocktime=localtime;
my $blocktimerRunning=0;
sub myfhem($) { #------------------------------------------
#print "@_\n";
sub myfhemcmd($) {
#Log 1, "@_"; #Log 1, "@_";
fhem("@_"); fhem("@_");
} }
#------------------------------------------
sub RollCheckSkip($$) sub RollCheckSkip($$)
{ {
my($cmd, $roll) = @_; my($cmd, $roll) = @_;
@@ -99,14 +106,18 @@ sub RollCheckSkip($$)
return $skip return $skip
} }
#------------------------------------------
sub RollCmd($$$) sub RollCmd($$$)
{ {
my ($cmd, $roll, $delay) = @_; my ($cmd, $roll, $delay) = @_;
if(RollCheckSkip($cmd, $roll)==0) { if(RollCheckSkip($cmd, $roll)==0) {
myfhem ("define r".int(rand(10000))." at +".$delay." set ".$roll." ".$cmd); myfhemcmd ("define r".int(rand(10000))." at +".$delay." set ".$roll." ".$cmd);
} }
} }
#------------------------------------------
sub RollGroup(\@$$) sub RollGroup(\@$$)
{ {
my ($rolls, $cmd, $delay) = @_; my ($rolls, $cmd, $delay) = @_;
@@ -133,21 +144,22 @@ sub RollGroup(\@$$)
} }
} }
if($skip==0) { if($skip==0) {
myfhem ("define r".$i." at +".$t." set ".$r." ".$cmd); myfhemcmd ("define r".$i." at +".$t." set ".$r." ".$cmd);
} }
$i=$i+1; $i=$i+1;
} }
} }
#------------------------------------------
sub RollTest() { sub RollTest() {
&RollGroup(\@rollTest, "closes", 1); &RollGroup(\@rollTest, "closes", 1);
} }
#------------------------------------------
sub RollAll($$) { sub RollAll($$) {
#Log 1, "################";
my ($cmd, $delay) = @_; my ($cmd, $delay) = @_;
#Log 1, "c:$cmd d:$delay";
#&RollGroup(\@rollAlle, $cmd, $delay);
if($cmd eq "closes") { if($cmd eq "closes") {
&RollGroup(\@rollRunter, $cmd,$delay); &RollGroup(\@rollRunter, $cmd,$delay);
} }
@@ -156,103 +168,231 @@ sub RollAll($$) {
} }
} }
#------------------------------------------
sub RollWeck($) { sub RollWeck($) {
my ($delay) = @_; my ($delay) = @_;
&RollGroup(\@rollWeck, "up 5", $delay); &RollGroup(\@rollWeck, "up 5", $delay);
myfhem("set wach 1"); myfhemcmd ("define weckwachat at +03:00:00 set wach 1");
# myfhem("set wach 1");
} }
#------------------------------------------
sub Dbg($) { sub Dbg($) {
Log 1,$_[0]; Log3 "Roll", 1, $_[0];
} }
#------------------------------------------
sub RollRunterSchlitz($;$) {
my ($roll, $delay) = @_;
$delay ||= 0;
my @tparts = gmtime($delay);
my $t=sprintf ("%02d:%02d:%02d",@tparts[2,1,0]);
my @tparts2 = gmtime($delay+40);
my $t2=sprintf ("%02d:%02d:%02d",@tparts2[2,1,0]);
my $i=$tc++;
Dbg("RollChg: $roll - runter schlitz($delay)\n");
myfhemcmd("define r".$i." at +".$t." set ".$roll." closes");
myfhemcmd("define ru".$i." at +".$t2." set ".$roll." up 6");
}
#------------------------------------------
sub RollHoch($;$) {
my ($roll, $delay) = @_;
$delay ||= 0;
my @tparts = gmtime($delay);
my $t=sprintf ("%02d:%02d:%02d",@tparts[2,1,0]);
my $i=$tc++;
Dbg("RollChg: $roll - hoch($delay)\n");
myfhemcmd("define r".$i." at +".$t." set ".$roll." opens");
}
#------------------------------------------
sub RollRunter($;$) {
my ($roll, $delay) = @_;
$delay ||= 0;
my @tparts = gmtime($delay);
my $t=sprintf ("%02d:%02d:%02d",@tparts[2,1,0]);
my $i=$tc++;
Dbg("RollChg: $roll - runter($delay)\n");
myfhemcmd("define r".$i." at +".$t." set ".$roll." closes");
}
#------------------------------------------
sub IsSunny($) {
my ($wett)=@_;
if($wett==30 || $wett==31 || $wett==32 || $wett==33 || $wett==34 || $wett==35 || $wett==36) { # sonnig, heiter, heiss
return(1);
}
return(0);
}
#------------------------------------------
sub IsLater($) {
my($t)=@_;
#Dbg("Islater:$t");
my @time = localtime(time);
if ($t =~ /(\d+):(\d+)/ and ($time[2]>=$1) and ($time[1]>=$2) ) {
Dbg("later:$t");
return(1);
}
return(0);
}
#------------------------------------------
# Nach dem Wechsel auf !sonne noch 2Std warten
sub IsWetterSonneWait($) {
my ($wett)=@_;
state $wettalt=0;
if($wett != $wettalt) {
if(!IsSunny($wett)) {
if(IsSunny($wettalt)) {
@blocktime=localtime;
$blocktime[2]+=2; # +2Std
if($blocktime[2]>23) { $blocktime[2]=23; } # da nachts keine sonne scheint egal
$blocktimerRunning=1;
Dbg("son1");
}
}
else {
}
$wettalt=$wett;
}
if($blocktimerRunning) {
if(!IsLater("$blocktime[2]:$blocktime[1]")) {
return(1);
}
else {
$blocktimerRunning=0;
}
}
return(0);
}
#------------------------------------------
sub RollCheck() { sub RollCheck() {
#Dbg("RollCheck\n"); #Dbg("RollCheck\n");
my $temp=20; my $temp=20;
my $wett;
my $twil;
my $fen;
my $r; my $r;
my $sr;
my $i=0; my $i=0;
my $delay=11; my $delay=11;
my $tag=0;
my $tempOut=ReadingsVal("wetter", "temp_c", 99);
my $twil=Value("twil");
if ($twil>=3 && $twil<10) { # civil
$tag=1;
myfhem("set tag 1");
} else {
myfhem("set tag 0");
}
my $light=ReadingsVal("twil", "light", 0);
if ($light>=5) { # weather
myfhem("set hell 1");
} else {
myfhem("set hell 0");
}
my $wett=ReadingsVal("wetter", "code", 99);
my $sr=Value("sonnenrichtung");
# Nach wechsel von sonne auf !sonne blockert ?
my $sonneblock=IsWetterSonneWait($wett);
for $r ( @rolls ) { for $r ( @rolls ) {
my $fen="Closed";
my $tempH=0; my $tempH=0;
my $tempL=0;
my $sonne=0; my $sonne=0;
my $tag=0;
my $skipRunter=0; my $skipRunter=0;
my $skipHoch=0; my $skipHoch=0;
my @tparts = gmtime($i*$delay+1); my $ndelay=$i*$delay+1;
my $t=sprintf ("%02d:%02d:%02d",@tparts[2,1,0]); #Dbg("--------r:g ".$r->{roll}." / ".$r->{temp});
my @tparts2 = gmtime($i*$delay+40);
my $t2=sprintf ("%02d:%02d:%02d",@tparts2[2,1,0]);
# Dbg("r:g ".$r->{roll}." / ".$r->{temp}."\n"); # Raum zu warm und aussentemp hoch ?
#$temp=ReadingsVal($r->{temp},"measured-temp", 99);
$temp=ReadingsVal($r->{temp},"measured-temp", 99); $temp=ReadingsVal($r->{temp},"temperature", 99);
if($temp > $r->{tempS}) { if( ($temp>$r->{tempS} && $tempOut>($r->{tempS}-3)) || $temp>($r->{tempS}+2) ) {
$tempH=1; $tempH=1;
} }
if( $temp<$r->{tempS}-1 ) {
$tempL=1;
}
$wett=ReadingsVal("wetter", "code", 99); # Sonne scheint ins Fenster ?
$sr=Value("sonnenrichtung"); if($twil>=5 && $twil<7) { # nur, wenn der Sonnenstand ueber 'weather' liegt
if($wett==30 || $wett==32 || $wett==34 || $wett==36) { # sonnig, heiter, heiss # bei hoher Raum- und Aussentemperatur immer unten lassen
if (index($sr, $r->{dir}) != -1) { if($temp > ($r->{tempS}+2) && $tempOut > $r->{tempS}) {
$sonne=1; $sonne=1;
} }
elsif (index($sr, $r->{dir}) != -1) { # Sonnenrichtung ins Fenster
if($sonneblock) {
$sonne=1;
}
elsif(IsSunny($wett)) {
$sonne=1;
}
#Dbg("son3, $sonne");
}
} }
$twil=Value("twil"); # Offene Fenster nicht mit Rollaeden verschliessen
if($twil>=3 && $twil<10) {
$tag=1;
}
if($r->{win} ne "") { if($r->{win} ne "") {
$fen=Value($r->{win}); $fen=Value($r->{win});
Dbg("test win:$r->{roll}-$fen"); #Dbg("test win:$r->{roll}-$fen");
if ($fen eq "Open") { if ($fen eq "Open") {
Dbg("$r->{roll}:skipR"); #Dbg("$r->{roll}:skipR");
$skipRunter=1; $skipRunter=1;
} }
} }
# Zur Schlafzeit nicht oeffnen
if($r->{typ} eq "s") { if($r->{typ} eq "s") {
if(Value("wach") eq "0") { if(Value("wach") eq "0") {
$skipHoch=1; $skipHoch=1;
} }
} }
# Dbg(" tempH:$tempH so:$sonne tag:$tag skipR:$skipRunter"); Dbg("RollCheck:$r->{roll}-tempH:$tempH temp:$temp tempO:$tempOut so:$sonne wett:$wett sr:$sr twil:$twil tag:$tag fen:$fen skipR:$skipRunter skipH:$skipHoch st:$r->{state}");
if( $tag and $sonne and $tempH) { if( $tag and $sonne and $tempH) {
if($r->{state}!=STATE_SCHLITZ) { if($r->{state}!=STATE_SCHLITZ) {
if(!$skipRunter) { if(!$skipHoch && !$skipRunter) {
myfhem("define r".$i." at +".$t." set ".$r->{roll}." closes"); RollRunterSchlitz($r->{roll}, $ndelay);
myfhem("define ru".$i." at +".$t2." set ".$r->{roll}." up 7");
Dbg("RollChg: $r->{roll} - runter schlitz\n");
} }
$r->{state}=STATE_SCHLITZ; $r->{state}=STATE_SCHLITZ;
} }
} }
if($tag && !$sonne) { if(($tag && !$sonne)||($tag && $tempL)) {
if($r->{state}!=STATE_HOCH) { if($r->{state}!=STATE_HOCH) {
if(!$skipHoch) { if(!$skipHoch) {
myfhem("define r".$i." at +".$t." set ".$r->{roll}." opens"); RollHoch($r->{roll}, $ndelay);
Dbg("RollChg: $r->{roll} - hoch\n");
}
$r->{state}=STATE_HOCH; $r->{state}=STATE_HOCH;
} }
} }
}
if(!$tag) { if(!$tag) {
if($r->{state}!=STATE_RUNTER) { if($r->{state}!=STATE_RUNTER) {
if(!$skipRunter) { if(!$skipRunter) {
myfhem("define r".$i." at +".$t." set ".$r->{roll}." closes"); RollRunter($r->{roll}, $ndelay);
Dbg("RollChg: $r->{roll} - runter\n");
} }
$r->{state}=STATE_RUNTER; $r->{state}=STATE_RUNTER;
} }
@@ -261,6 +401,7 @@ sub RollCheck() {
} # for } # for
} }
#------------------------------------------
sub Untoggle($) { sub Untoggle($) {
my ($obj) = @_; my ($obj) = @_;

View File

@@ -62,13 +62,42 @@ SetExtensions($$@)
if($cmd eq "on-for-timer" || $cmd eq "off-for-timer") { if($cmd eq "on-for-timer" || $cmd eq "off-for-timer") {
RemoveInternalTimer("SE $name $cmd"); RemoveInternalTimer("SE $name $cmd");
delete($hash->{SE_TIMERRUNNING});
return "$cmd requires a number as argument" if($param !~ m/^\d*\.?\d*$/); return "$cmd requires a number as argument" if($param !~ m/^\d*\.?\d*$/);
if($param) { if($param) {
$hash->{SE_TIMERRUNNING} = $cmd;
DoSet($name, $cmd1); DoSet($name, $cmd1);
InternalTimer(gettimeofday()+$param,"SetExtensionsFn","SE $name $cmd",0); InternalTimer(gettimeofday()+$param,"SetExtensionsFn","SE $name $cmd",0);
} }
} elsif($cmd eq "on-for-timer-when-off") {
my $startTimer=1;
my $timercmd="on-for-timer";
if(!$hash->{SE_TIMERRUNNING}) {
my $actualState = ReadingsVal($name, "state", undef);
if($actualState eq $cmd1) {
$startTimer=0; # started Manually do not override by timer
}
}
if($startTimer) {
RemoveInternalTimer("SE $name $timercmd");
delete($hash->{SE_TIMERRUNNING});
return "$cmd requires a number as argument" if($param !~ m/^\d*\.?\d*$/);
if($param) {
$hash->{SE_TIMERRUNNING} = $timercmd;
DoSet($name, $cmd1);
InternalTimer(gettimeofday()+$param,"SetExtensionsFn","SE $name $timercmd",0);
}
}
} elsif($cmd eq "on-stop-timer" ) {
my $timercmd="on-for-timer";
RemoveInternalTimer("SE $name $timercmd");
delete($hash->{SE_TIMERRUNNING});
DoSet($name, $cmd1);
} elsif($cmd =~ m/^(on|off)-till/) { } elsif($cmd =~ m/^(on|off)-till/) {
my ($err, $hr, $min, $sec, $fn) = GetTimeSpec($param); my ($err, $hr, $min, $sec, $fn) = GetTimeSpec($param);
return "$cmd: $err" if($err); return "$cmd: $err" if($err);
@@ -154,9 +183,11 @@ SetExtensionsFn($)
if($cmd eq "on-for-timer") { if($cmd eq "on-for-timer") {
$defs{$name}{SE_TIMERRUNNING}="";
DoSet($name, "off"); DoSet($name, "off");
} elsif($cmd eq "off-for-timer") { } elsif($cmd eq "off-for-timer") {
$defs{$name}{SE_TIMERRUNNING}="";
DoSet($name, "on"); DoSet($name, "on");
} elsif($cmd eq "blink" && $defs{$name}{SE_BLINKPARAM}) { } elsif($cmd eq "blink" && $defs{$name}{SE_BLINKPARAM}) {

View File

@@ -0,0 +1,20 @@
# Created by FHEM/98_SVG.pm, 2015-11-04 22:49:54
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperature"
#logDGHeizung 4:rl7.*:0:
#logDGHeizung 4:RL_Bad.*:0:
#logDGHeizung 4:rl9.*:0:
plot "<IN>" using 1:2 axes x1y2 title 'RL7' ls l0 lw 1 with lines,\
"<IN>" using 1:2 axes x1y2 title 'RL_Bad' ls l1 lw 1 with lines,\
"<IN>" using 1:2 axes x1y2 title 'RL9' ls l2 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-11-04 22:46:57
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperature"
#logDGHeizung 4:DG_VL.*:0:
plot "<IN>" using 1:2 axes x1y2 title 'VL' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-10-27 22:27:15
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel "Humidity"
set y2label "Temperature"
#logOgRvKueche 4:RegExp::
plot "<IN>" using 1:2 axes x1y2 title 'Line 1' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-10-31 10:40:49
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel "Humidity"
set y2label "Temperature"
#logOgVl 4:OG_VL.temperature\x3a:0:
plot "<IN>" using 1:2 axes x1y2 title 'Line 1' ls l0 lw 1 with lines

View File

@@ -0,0 +1,21 @@
############################
# Display the power reported by the EM1010
# Corresponding FileLog definition:
# define ememlog FileLog /var/log/fhem/emem-%Y.log emem:power.*
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ylabel "Humidity"
set y2label "Temperature"
set grid
set ytics
set y2tics
#FileLog 4:RegExp::
plot "<IN>" using 1:2 title 'Line 1' with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-10-27 21:46:26
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperatur"
#logOgVl 4:OG_VL.temperature\x3a:0:
plot "<IN>" using 1:2 axes x1y2 title 'VL' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-10-30 23:05:40
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperature"
#logRlFlur 4:OG_RL_Flur.*:0:
plot "<IN>" using 1:2 axes x1y2 title 'Flur' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-10-27 22:37:42
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperature"
#logRlKueche 4:OG_RL_Kueche.temperature\x3a:0:
plot "<IN>" using 1:2 axes x1y2 title 'Kueche' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-10-30 23:06:33
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperatur"
#logRlWohn1 4:OG_RL_Wohn1.*:0:
plot "<IN>" using 1:2 axes x1y2 title 'Wohn1' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-10-30 23:07:05
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperatur"
#logRlWohn2 4:OG_RL_Wohn2.*:0:
plot "<IN>" using 1:2 axes x1y2 title 'Wohn2' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-11-28 18:14:03
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperature"
#logTempBad 4:tempBad.temperature\x3a::
plot "<IN>" using 1:2 axes x1y2 title 'Bad' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-12-04 20:26:59
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel "Humidity"
set y2label "Temperature"
#logTempKueche 4:tempKueche.temperature\x3a::
plot "<IN>" using 1:2 axes x1y2 title 'Line 1' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-11-24 09:12:53
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperature"
#logTempSchlaf 4:tempSchlaf.*:0:
plot "<IN>" using 1:2 axes x1y2 title 'Schlaf' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-11-28 19:38:06
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "Temperature"
#logTempStudio 4:tempStudio.temperature\x3a::
plot "<IN>" using 1:2 axes x1y2 title 'Studio' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-12-04 19:42:32
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel "Humidity"
set y2label "Temperature"
#FileLog_CUL_FHTTK_150d42 parameter
plot "<IN>" using 1:2 axes x1y2 title 'Line 1' ls l0 lw 1 with lines

View File

@@ -0,0 +1,16 @@
# Created by FHEM/98_SVG.pm, 2015-12-04 19:49:10
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid
set ylabel "Humidity"
set y2label "Temperature"
#logTempWohn 4:tempWohn.temperature\x3a::
plot "<IN>" using 1:2 axes x1y2 title 'Line 1' ls l0 lw 1 with lines