Habe mal eine Erweiterung zum Thema "FHT8V direkt" eingebaut.
Voraussetzung ist die Beschreibung im WIKI.
Dazu läuft ein AT und dieser schaut aller 00, 15 , 30 , 45 Minuten in einer
Steuerdatei nach, ob was zu verändern ist.
in der fhem.cfg steht :
# Frage jede 1/4 Stunde Heizzeiten.cfg ab
define Heizschalter_alle_15_minuten at +*00:15:00 {sucheSchaltzeit()}
attr Heizschalter_alle_15_minuten alignTime 00:00:00
Hier meine Perl-Erweiterung. Bitte mal drüberschaun, was
verbesserungswürdig wäre. Ich spreche ein lausiges Perl!!
Grundsätzlich aber macht das Teil schon das was es machen soll.
Bitte nicht die Perltypische Schreibweise benutzen... ich kann das noch
nicht lesen ;-))
in der 99_myUtils.pm steht:
ganz oben habe ich folgendes eingefügt:
use Time::Local;
sub
sucheSchaltzeit() {
## Ermittle aktuelle Rechnerzeit /datum/ zeit/ tag etc.
######################
my ($Sekunde, $Minute, $Stunde, $Monatstag, $Monat,
$Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime(time);
my @Zeilen = ("");
# öffne Steuerdatei nur zum Lesen
open(HEIZDAT,'<','/usr/share/fhem/FHEM/Heizzeiten.cfg') || die "Datei mit
Heizzeiten nicht gefunden";
while()
{
push(@Zeilen,$_);
}
close(HEIZDAT);
## entferne alle \n-Zeichen
chomp (@Zeilen);
for(@Zeilen)
{
# in $_ steht die aktuelle Zeile und die wird per Leerzeichen
aufgedröselt
my @zeilen_werte = split(/ /,$_);
### Abfrage ob es eine Kommentazeile ist - Kennzeichen ein #
if ($zeilen_werte[0] ne "#"){
### Abfrage ob heute entsprechender Tag > Posi 1
if ($zeilen_werte[0] == $Wochentag){
## abprüfen ob Stunde erreicht
if ($zeilen_werte[1] == $Stunde){
## abprüfen ob Minute erreicht
if ($zeilen_werte[2] == $Minute){
#### Jetzt Name des Antriebs und Dummys und
Zieltemp einlesen sowie Befehle absetzen
fhem "set " . $zeilen_werte[3] . " desired " .
$zeilen_werte[5] ;
fhem "set " . $zeilen_werte[4] . " " .
$zeilen_werte[5] ;
Log 3, "$zeilen_werte[3] geaendert auf
$zeilen_werte[5]";
}
}
}
}
}
}
################### Ende SUB sucheSchaltzeit
Die Datei Heizzeiten.cfg steht in /fhem/FHEM und sieht so aus:
###########################################
##### Hier werden die Heizzeiten definiert
# 0-6 Wochentag beginnt mit Sonntag
# 00-23 Volle Stunde
# 00 oder 15 oder 30 oder 45 Minute
# PID-Name
# Dummy-Name
# gewünschte Temp. in vollen Graden
###########################################
# Sonntag
0 08 00 heizung.02 AZ_desired_temp 20
0 21 00 heizung.02 AZ_desired_temp 17
#
0 08 00 heizung.01 Keller_desired_temp 20
0 21 00 heizung.01 Keller_desired_temp 17
############################################
# Montag
1 14 00 heizung.02 AZ_desired_temp 20
1 21 00 heizung.02 AZ_desired_temp 17
#
1 06 00 heizung.01 Keller_desired_temp 20
1 21 00 heizung.01 Keller_desired_temp 17
############################################
und so weiter ...
Einmal in /fhem/FHEM/ angelegt, taucht diese dann im Webinterface unter
"Edit Files" " Own modules and helper files" auf und kann ab dann auch dort
bearbeitet werden.
Danke für Euere Mithilfe.
Schönen Samstag
Kai-Uwe
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com