Das 3. Skribt Teil 1 welches für die eigentliche steuerung zuständig ist:
läuft jede Minute
<?
Datenbank
$dbHost = „localhost“; // MySQL Hostname
$dbUser = „root“; // MySQL user
$dbPassword = „euerpasswort“; // MySQL password
$datenbank = „steuerung_hans“;// MySQL Datenbank
Datenbanktabellen Variablen
$dbwochen_steuerung = „wochen_steuerung
“;
$dbkonfig = „konfig
“;
$dbraeume = „raeume
“;
$dbsonst_steuerung = „sonst_steuerung
“;
$dbszenarien = „szenarien
“;
$dbtemperaturen = „temperaturen
“;
$dbstatistik = „statistik
“;
$dbschaltlog = „schaltlog
“;
$dbpumpe_laufzeit = „pumpe_laufzeit
“;
$dbstatistik_raum = „statistik_raum
“;
$Stunde = date(„H“,time());
$Minute = date(„i“,time());
$Secunde = date(„s“,time());
$Wochentag = date(„w“,time());
$datum = date(„Y.m.d“,time());
$jetztstamp = strtotime(„2008-1-1 $Stunde:$Minute:$Secunde“);
Variablen holen
$TempDifferenz = GetValue(29409 /[Variablen\TempDifferenz]/);
$TempDifferenz = str_replace(",", „.“, $TempDifferenz);
$pumpe = 0;
Variablen holen Ende
Variablen
$Wohnzimmersoll = GetValue(38956 /[Temperaturen\Wohnzimmersoll]/);
$Arbeitszimmersoll = GetValue(35220 /[Temperaturen\Arbeitszimmersoll]/);
$Badsoll = GetValue(45408 /[Temperaturen\Badsoll]/);
$GaesteWCsoll = GetValue(20325 /[Temperaturen\GaesteWC]/);
$Schlafzimmersoll = GetValue(12961 /[Temperaturen\Schlafzimmersoll]/);
$Wohnzimmerist = GetValue(41453 /[Sensoren\Wohnzimmer\Temperatur]/);
$Arbeitszimmerist = GetValue(50375 /[Sensoren\Arbeitszimmer\Temperatur]/);
$Badist = GetValue(27703 /[Sensoren\Bad\Temperatur]/);
$GaesteWCist = GetValue(40417 /[Sensoren\Gäste WC\Temperatur]/);
$Schlafzimmerist = GetValue(40214 /[Sensoren\Schlafzimmer\Temperatur]/);
$Wohnzimmerstatus = GetValue(38391 /[Status\Wohnzimmerstatus]/);
$Arbeitszimmerstatus = GetValue(10092 /[Status\Arbeitszimmer]/);
$Badstatus = GetValue(12192 /[Status\Bad]/);
$Schlafzimmerstatus = GetValue(38913 /[Status\Schlafzimmer]/);
$GeasteWC = GetValue(17188 /[Status\GaesteWC]/);
$Pumpestatus = GetValue(52223 /[Status\pumpe]/);
$automatikstatus = GetValue(11911 /[Variablen\automatik]/);
$Szenario = GetValue(24455 /[Variablen\Szenario]/);
Ausrechnen
Bild Setzen
SetValue(34363 /[Status\Bild]/ ,round($Wohnzimmerist, 0));
####### Wohnzimmer
Aus
if ($Wohnzimmerist-$TempDifferenz>$Wohnzimmersoll){
if ($Wohnzimmerstatus==1){
SetValue(38391 /*[Status\Wohnzimmerstatus]*/,0);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 0, true);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Wohnzimmer','".$Wohnzimmerist."','".$Wohnzimmersoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','0')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
An
if ($Wohnzimmerist+$TempDifferenz<$Wohnzimmersoll){
$pumpe=1;
if ($Wohnzimmerstatus==0){
SetValue(38391 /*[Status\Wohnzimmerstatus]*/,1);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 0, false);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Wohnzimmer','".$Wohnzimmerist."','".$Wohnzimmersoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','1')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
Arbeitszimmer
Aus
if ($Arbeitszimmerist-$TempDifferenz>$Arbeitszimmersoll){
if ($Arbeitszimmerstatus==1){
SetValue(10092 /*[Status\Arbeitszimmer]*/,0);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 1, true);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Arbeitszimmer','".$Arbeitszimmerist."','".$Arbeitszimmersoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','0')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
An
if ($Arbeitszimmerist+$TempDifferenz<$Arbeitszimmersoll){
$pumpe=1;
if ($Arbeitszimmerstatus==0){
SetValue(10092 /*[Status\Arbeitszimmer]*/,1);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 1, false);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Arbeitszimmer','".$Arbeitszimmerist."','".$Arbeitszimmersoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','1')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
Bad
Aus
if ($Badist-$TempDifferenz>$Badsoll){
if ($Badstatus==1){
SetValue(12192 /*[Status\Bad]*/,0);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 2, true);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Bad','".$Badist."','".$Badsoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','0')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
An
if ($Badist+$TempDifferenz<$Badsoll){
$pumpe=1;
if ($Badstatus==0){
SetValue(12192 /*[Status\Bad]*/,1);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 2, false);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Bad','".$Badist."','".$Badsoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','1')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
GästeWC
Aus
if ($GaesteWCist-$TempDifferenz>$GaesteWCsoll){
if ($GeasteWC==1){
SetValue(17188 /*[Status\GaesteWC]*/,0);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 3, true);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('GästeWC','".$GaesteWCist."','".$GaesteWCsoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','0')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
An
if ($GaesteWCist+$TempDifferenz<$GaesteWCsoll){
$pumpe=1;
if ($GeasteWC==0){
SetValue(17188 /*[Status\GaesteWC]*/,1);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 3, false);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('GästeWC','".$GaesteWCist."','".$GaesteWCsoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','1')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
Schlafzimmer
Aus
if ($Schlafzimmerist-$TempDifferenz>$Schlafzimmersoll){
if ($Schlafzimmerstatus==1){
SetValue(38913 /*[Status\Schlafzimmer]*/,0);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 5, true);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Schlafzimmer','".$Schlafzimmerist."','".$Schlafzimmersoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','0')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}
An
if ($Schlafzimmerist+$TempDifferenz<$Schlafzimmersoll){
$pumpe=1;
if ($Schlafzimmerstatus==0){
SetValue(38913 /*[Status\Schlafzimmer]*/,1);
TMEX_F29_SetPin(29129 /*[Aktoren\DS2408]*/, 5, false);
IPS_Sleep(200);
$sqlUpdate="insert into $dbschaltlog (raum, tempist, tempsoll, szenario,automatik, Uhrzeit, tatum, status) values ('Schlafzimmer','".$Schlafzimmerist."','".$Schlafzimmersoll."','".$Szenario."','".$automatikstatus."','".$jetztstamp."','".$datum."','1')";
$linkUpdate = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_select_db($datenbank,$linkUpdate);
$resultUpdate = mysql_query($sqlUpdate, $linkUpdate);
}
}