On-for-timer in Plot und Status abbilden

Begonnen von Guest, 05 Juli 2011, 07:56:48

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Hallo,

es gibt Geräte, wie z.B. den Regensensor FS20 SR, die nur ein "on-for-
timer 60" aussenden und dies für die Dauer der Aktivität wiederholen.
Danach wir aber leider kein "off" gesendet.

Dadurch lässt sich der Zustand schlecht feststellen und das Log/Plot
kennt das Ende des Signals nicht.

Gibt es eine Methode, dies besser abzubilden. Z.b. eine Ergänzung
welche nach Ablauf des letzten Signals automatisch ein "off" sendet
oder einfügt?

Viele Grüße

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Gibt es eine Methode, dies besser abzubilden. Z.b. eine Ergänzung
> welche nach Ablauf des letzten Signals automatisch ein "off" sendet
> oder einfügt?

notify?

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Verstehe, also selber pro Gerät programmieren.

Hat das jemand schon einmal gemacht?
Wäre doch eigentlich eine tolle Sache, wenn FHEM das schon selber
handhaben könnte.

Danke für die Antwort.

On 5 Jul., 08:01, Rudolf Koenig wrote:
> > Gibt es eine Methode, dies besser abzubilden. Z.b. eine Erg nzung
> > welche nach Ablauf des letzten Signals automatisch ein "off" sendet
> > oder einf gt?
>
> notify?

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Hat das jemand schon einmal gemacht?

Diese fhem-softies...

define sensor_off_check notify sensor {
  if($defs{sensor_off_do}) {
    fhem "define sensor_off_do at +00:01:00 set sensor off";
  } else {
    fhem "modify sensor_off_do +00:01:00";
  }
}

Backslash und ;; sind noch hinzufuegen, falls man es nicht im fhemweb
modify modus einfuegt

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Das ist große Klasse. Vielen Dank Rudolf.
Den if-Zweig musste ich tauschen.

Damit ich auch mal etwas in das Forum zurückgeben kann, habe ich die
Routine mit meinen bescheidenen Perl-Kenntnissen noch so gestaltet, so
dass sie automatisch die  Zeit erkennt. Funktioniert also mit "on-for-
timer 4" als auch "on-for-timer 3840":

# 2-Kanal-Funk-Regensensor FS20 SR
define Regensensor FS20 1234 3a
...
define Regensensor_off_check notify Regensensor:on-for-timer.* { \
        my @@args= split(" ", "%");; \
        if($defs{Regensensor_off}) { \
                my $mod_cmd= sprintf ( \
                "modify Regensensor_off +%%02d:%%02d:%%02d", \
                $args[1] / 3600, ($args[1] / 60) %% 60, $args[1] %%
60);; \
                fhem $mod_cmd;; \
        } else { \
                my $def_cmd= sprintf ( \
                "define Regensensor_off at +%%02d:%%02d:%%02d set
Regensensor of
f", \
                $args[1] / 3600, ($args[1] / 60) %% 60, $args[1] %%
60);; \
                fhem $def_cmd;; \
        } \}


On 5 Jul., 08:32, Rudolf Koenig wrote:
> > Hat das jemand schon einmal gemacht?
>
> Diese fhem-softies...
>
> define sensor_off_check notify sensor {
>   if($defs{sensor_off_do}) {
>     fhem "define sensor_off_do at +00:01:00 set sensor off";
>   } else {
>     fhem "modify sensor_off_do +00:01:00";
>   }
>
> }
>
> Backslash und ;; sind noch hinzufuegen, falls man es nicht im fhemweb
> modify modus einfuegt

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

salvadore

                                             

Hallo,
ich habe versucht die Routine in die fhem.cfg einzufügen, aber
irgendwie klappt es nicht. Aufgefallen ist mir, das es doch sicher
heisen muss: ......Regensensor:on-old-for-timer.*
Kann mir jemand auch bei den noch fehlenden Zeilen zum log/plot
behilflich sein. Bin noch fhem-Dummie und mit den in Englisch
verfassten  Dokumetationen hapert es.
Schon vorab herzlichen Dank
HG

On 5 Jul., 14:32, FHEM-Softie wrote:
> Das ist große Klasse. Vielen Dank Rudolf.
> Den if-Zweig musste ich tauschen.
>
> Damit ich auch mal etwas in das Forum zurückgeben kann, habe ich die
> Routine mit meinen bescheidenen Perl-Kenntnissen noch so gestaltet, so
> dass sie automatisch die  Zeit erkennt. Funktioniert also mit "on-for-
> timer 4" als auch "on-for-timer 3840":
>
> # 2-Kanal-Funk-Regensensor FS20 SR
> define Regensensor FS20 1234 3a
> ...
> define Regensensor_off_check notify Regensensor:on-for-timer.* { \
>         my @@args= split(" ", "%");; \
>         if($defs{Regensensor_off}) { \
>                 my $mod_cmd= sprintf ( \
>                 "modify Regensensor_off +%%02d:%%02d:%%02d", \
>                 $args[1] / 3600, ($args[1] / 60) %% 60, $args[1] %%
> 60);; \
>                 fhem $mod_cmd;; \
>         } else { \
>                 my $def_cmd= sprintf ( \
>                 "define Regensensor_off at +%%02d:%%02d:%%02d set
> Regensensor of
> f", \
>                 $args[1] / 3600, ($args[1] / 60) %% 60, $args[1] %%
> 60);; \
>                 fhem $def_cmd;; \
>         } \}
>
> On 5 Jul., 08:32, Rudolf Koenig wrote:
>
>
>
>
>
>
>
> > > Hat das jemand schon einmal gemacht?
>
> > Diese fhem-softies...
>
> > define sensor_off_check notify sensor {
> >   if($defs{sensor_off_do}) {
> >     fhem "define sensor_off_do at +00:01:00 set sensor off";
> >   } else {
> >     fhem "modify sensor_off_do +00:01:00";
> >   }
>
> > }
>
> > Backslash und ;; sind noch hinzufuegen, falls man es nicht im fhemweb
> > modify modus einfuegt

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM 5.6, APU-Board, CUNO 1.x, RFXtrx433, 8 FHT80B, diverse FS20 Aktoren, Rasperry, div. DS18x-Sensoren, KD101, AB400R, HE877, ESA2000, Beaglebone Black Rev.C, Jeelink, PCA 301, PT8005,

Tobias

                                                   

Hi rudi,

hast du das Codefragment mit ins offizielle 10_FS20.pm übernommen??
Habe so etwas IMHO in dieser Richtung drin gesehen, direkt unter dem
Abschnitt "Calculating the time" Habe nämlich obiges codefragment
gerade für meine Bewässerungssteuerung mit eingebaut...

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

rudolfkoenig

                                                   

> hast du das Codefragment mit ins offizielle 10_FS20.pm übernommen??

Codefragment uebernommen? Das war doch ein notify... Bin verwirrt.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Tobias

                                                   

Das meine ich... oder was macht es sonst??

###########################################
  # Set the state of a device to off if on-for-timer is called
  if($modules{FS20}{ldata}{$name}) {
    CommandDelete(undef, $name . "_timer");
    delete $modules{FS20}{ldata}{$name};
  }
  if($a[1] =~ m/for-timer/ && $na == 3 &&
     defined($attr{$name}) && defined($attr{$name}{"follow-on-for-
timer"})) {
    my $to = sprintf("%02d:%02d:%02d", $val/3600, ($val%3600)/60, $val
%60);
    $modules{FS20}{ldata}{$name} = $to;
    Log 4, "Follow: +$to setstate $name off";
    CommandDefine(undef, $name . "_timer at +$to setstate $name off");
  }


On Sep 19, 3:56 pm, Rudolf Koenig wrote:
> > hast du das Codefragment mit ins offizielle 10_FS20.pm bernommen??
>
> Codefragment uebernommen? Das war doch ein notify... Bin verwirrt.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

rudolfkoenig

                                                   

On Mon, Sep 19, 2011 at 10:13:37AM -0700, tobias.faust wrote:
> Das meine ich... oder was macht es sonst??

Das ist sehr alt (siehe http://fhem.de//commandref.html#follow-on-for-timer),
und generiert kein event, was man loggen kann, es setzt nur den sichtbaren
Status.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com