Neues Modul - Heating_Control, WeekdayTimer

Begonnen von Dietmar63, 04 Januar 2013, 19:42:26

Vorheriges Thema - Nächstes Thema

Dietmar63

schon hochgeladen - prüf bitte, ob es lüppt.
ich habe noch ein wenig mehr geändert.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

mgernoth

Hi Dietmar,

Scheint zu tun, zumindest passen die im "list" angezeigten Profile zu meiner Konfiguration (die jetzt wieder lesbarer ist, ich hatte gestern auf die Schnelle das ganze auf Tagesnummern umgestellt).

Also Danke nochmal :-)

Gruß
  Michael

cornelius fillmore

Ich hänge mich mal hinten dran.

Kann es sein, das durch das Modul, die Heating_Control desired-temp jetzt dreifach die FHT gesendet wird?

Zitat2013-06-16_20:01:24 FHT_0c23 desired-temp 17.0
2013-06-16_20:01:24 FHT_0c23 desired-temp 21.0
2013-06-16_20:01:24 FHT_0c23 desired-temp 17.0
2013-06-16_20:02:24 FHT_0c23 actuator: 0%
2013-06-16_20:04:20 FHT_0c23 actuator: 0%
2013-06-16_20:05:22 FHT_0c23 desired-temp 17.0
2013-06-16_20:05:22 FHT_0c23 desired-temp 17.0
2013-06-16_20:05:22 FHT_0c23 desired-temp 21.0
2013-06-16_20:06:17 FHT_0c23 actuator: 0%
2013-06-16_20:07:11 FHT_0c23 desired-temp 21.0
2013-06-16_20:07:11 FHT_0c23 desired-temp 17.0
2013-06-16_20:07:11 FHT_0c23 desired-temp 17.0

Ich habe folgendes für das Modul eingegeben:
Zitat## Heizplan ##
### Wohnzimmer ###
define FHT_WZ_modofr Heating_Control FHT_0c23 145|06:00|21 145|22:00|17
attr FHT_WZ_modofr room Wohnzimmer
define FHT_WZ_dimi Heating_Control FHT_0c23 23|06:00|21 23|07:00|17 23|14:00|21 23|22:00|17
attr FHT_WZ_dimi room Wohnzimmer
define FHT_WZ_we Heating_Control FHT_0c23 67|07:00|21 67|23:00|17
attr FHT_WZ_we room Wohnzimmer
###
3 x Fhem 5.9 mit RPI

Dietmar63

Ja das kann sein.
Du hast drei Definitionen ohne weitere Bedingung erstellt.
Sie funktionieren unabhängig voneinander!
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

cornelius fillmore

Zitat von: Dietmar63 schrieb am Mo, 17 Juni 2013 18:55Ja das kann sein.
Du hast drei Definitionen ohne weitere Bedingung erstellt.
Sie funktionieren unabhängig voneinander!

Verstehe ich jetzt nicht.
Was für "Bedingungen" sollte ich denn noch einfügen?

Mach bitte mal ein Muster, von dem wie du das meinst.
3 x Fhem 5.9 mit RPI

Dietmar63

jetzt habe ich gesehen, dass du Tagesangaben gemacht hast.
vielleicht hast du eine alte Version geladen - wir hatten einmal Probleme.

Was hast du installiert fhem 5.4?
Kannst du ein update durchführen?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

cornelius fillmore

Zitat von: Dietmar63 schrieb am Mo, 17 Juni 2013 23:11jetzt habe ich gesehen, dass du Tagesangaben gemacht hast.
vielleicht hast du eine alte Version geladen - wir hatten einmal Probleme.

Was hast du installiert fhem 5.4?
Kannst du ein update durchführen?

Ich hab mal ein update gemacht.

Jetzt scheint es zu gehen.

thx
3 x Fhem 5.9 mit RPI

Dietmar63

Du könntest zum Beispiel alle Zeitpunkte in einem HC zusammenfassen.
Die Angabe der Tage kann per Sa, So, Sa-Fr erfolgen.

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

John

Hallo Dietmar,

ich hatte in diesem Beitrag

Link

 das Thema time_offset angesprochen.

Du meintest Sommer wäre eine gute Zeit für dich darüber nachzudenken.
Hast du darüber nachgedacht ?

Ich kanns aber auch verstehen wenn du der Badhose den Vorzug gibts.

John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

cerberus

Hallo, ich habe das Module Heating Control für mich jetzt entdeckt und schon einiges für meine FHT´s definiert. Nun meine Frage dazu. Da bei mir wochenweise die Zeit anders ist wann ich aufstehe bzw. auch nach Hause komme wäre es toll, wenn ich dem Module Heating Control sagen könnte, ob ich in eine ungerade bzw. geraden Woche bin um für die jeweilige Woche ein eigenes Heizprofil zu erstellen.

Gruß
cerberus
Banana PI mit Bananian + Fhem 5.5, 2x SCC SlowRF/Homematic + RS485 LAN Gateway HMW-LGW-O-DR-GS-EU + RPI2 I2C to 1-Wire Host Adapter for Raspberry Pi

oliv06

I do not speak german so forgive me to speak english. I am french and I wanted to be able to translate this module in french. I looked at the code and I think it could be adapted this way.
Could you check please and integrate in the SVN if it is correct ?
Thanks a lot
Olivier

# diff -up 98_Heating_Control.pm.bak 98_Heating_Control.pm
--- 98_Heating_Control.pm.bak 2013-10-07 20:32:03.000000000 +0200
+++ 98_Heating_Control.pm 2013-10-07 20:52:05.000000000 +0200
@@ -80,6 +80,7 @@ Heating_Control_Define($$)
 
   my @Wochentage_de = ("Sonntag","Montag","Dienstag","Mittwoch", "Donnerstag","Freitag","Samstag" );
   my @Wochentage_en = ("Sunday", "Monday","Tuesday", "Wednesday","Thursday",  "Friday", "Saturday");
+  my @Wochentage_fr = ("Dimanche", "Lundi","Mardi", "Mercredi","Jeudi",  "Vendredi", "Samedi");
 
   return "invalid Device, given Device <$device> not found" if(!$defs{$device});
 
@@ -91,6 +92,7 @@ Heating_Control_Define($$)
   for (my $w=0; $w<@Wochentage_de; $w++) {
     delete($hash->{"PROFILE ".($w).": ".$Wochentage_de[$w]}) if($hash->{"PROFILE ".($w).": ".$Wochentage_de[$w]});
     delete($hash->{"PROFILE ".($w).": ".$Wochentage_en[$w]}) if($hash->{"PROFILE ".($w).": ".$Wochentage_en[$w]});
+    delete($hash->{"PROFILE ".($w).": ".$Wochentage_fr[$w]}) if($hash->{"PROFILE ".($w).": ".$Wochentage_fr[$w]});
   }
 
   for(my $i=0; $i<@a; $i++) {
@@ -116,8 +118,9 @@ Heating_Control_Define($$)
      $hash->{helper}{COMMAND} = $conditionOrCommand;
   }
 
-  my $daysRegExp    = "(mo|di|mi|do|fr|sa|so|tu|we|th|su)";
+  my $daysRegExp    = "(mo|di|mi|do|fr|sa|so|tu|we|th|su|lu|ma|me|je|ve)";
   my $daysRegExp_en = "(tu|we|th|su)";
+  my $daysRegExp_fr = "(lu|ma|me|je|ve)";
 
   my %dayNumber=();
   my $idx = 0;
@@ -128,8 +131,12 @@ Heating_Control_Define($$)
   foreach my $day  ("su","mo","tu","we","th","fr","sa") {
      $dayNumber{$day} = $idx; $idx++;
   }
+  $idx = 0;
+  foreach my $day  ("di","lu","ma","me","je","ve","sa") {
+     $dayNumber{$day} = $idx; $idx++;
+  }
 
-  my (@st, @days, $daylist, $time, $para, $englisch);
+  my (@st, @days, $daylist, $time, $para, $englisch, $french);
   for(my $i=0; $i<@switchingtimes; $i++) {
     
     @st = split(/\|/, $switchingtimes[$i]);
@@ -160,6 +167,7 @@ Heating_Control_Define($$)
         my $day = substr($daylist,0,2,"");
         my $del = substr($daylist,0,1,"");
         $englisch = ($day =~  m/^($daysRegExp_en)$/g);
+        $french = ($day =~  m/^($daysRegExp_fr)$/g);
         my @subDays;
         if ($oldDel eq "-" ){
            # von bis Angabe: Mo-Di
@@ -203,6 +211,8 @@ Heating_Control_Define($$)
   my $rWochentage;
   if ($englisch) {
      $rWochentage = \@Wochentage_en;
+  } elsif ($french) {
+     $rWochentage = \@Wochentage_fr;
   } else {
      $rWochentage = \@Wochentage_de;
   }


Otto

Hallo,

wie kann die HC neu starten, sodass die Werte neu abgeglichen werden.

Habe folgende Code
define HC_WZ Heating_Control Heiz_WZ_ClimRT_tr 12345|06:00|22 67|06:30|22 12345|20:00|18 67|21:00|18 (ReadingsVal("Verreist", "state", "Ja") eq "Nein")
attr HC_WZ room Heizung

define HC_Verreist notify Verreist:Ja {fhem ("set Heiz_WZ_ClimRT_tr desired-temp 16;; set Heiz_AZ_ClimRT_tr desired-temp 16") }


Wenn der dummy Verreist wieder auf Nein gestellt wird, möchte ich die "normalen" Werte zum Ventil schicken.

Wie geht das?

Gruß Otto
Gruss Otto

.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.

docker - homematic

Otto

Hallo,

ich habe es gefunden:

define HeizStatus2            notify Heizung:.*                          {Heating_Control_SetAllTemps()}


Gruß Otto
Gruss Otto

.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.

docker - homematic

Dietmar63

Improvments to Heating_Control an WeekdayTimer:
- french language supported by autdetection
- param now supports a second parameter like on-for-timer:3456
- default switchparameter can be adjusted more elaborate

this may cause problems. If you want an other default behaviour - please contact me.
my %modifier = ("MAX"      => "desiredTemperature",
                  "FHT"      => "desired-temp",
                  "FS20"     => "",
                  "HM-CC-VD" => "desired-temp",
                  "HM-CC-TC" => "desired-temp" );



Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Steffen

Guten Abend!

Habe seit Heute Update diese Fehlermeldung:
2013.10.17 19:06:05 2: CUL_HM set WaschKeller desired-temp 22.0
Use of uninitialized value $n in hash element at fhem.pl line 3001.
Use of uninitialized value in concatenation (.) or string at /opt/fhem/FHEM/98_Heating_Control.pm line 318.
2013.10.17 19:08:08 3: set Wz_Heizung1  21.0 : Unknown argument 21.0, choose one of burstXmit clear:readings,register,rssi,msgEvents desired-temp:on,off,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0 getConfig getRegRaw getSerial pair peerBulk raw regBulk regSet reset sign:on,off statusRequest sysTime unpair
2013.10.17 19:08:08 3: Unknown argument 21.0, choose one of burstXmit clear:readings,register,rssi,msgEvents desired-temp:on,off,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0 getConfig getRegRaw getSerial pair peerBulk raw regBulk regSet reset sign:on,off statusRequest sysTime unpair


Er stellt auch bei keiner der "Heating_Control define" die Temp. am Regler um.

Mfg Steffen