FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Steve am 12 März 2014, 21:29:04

Titel: NetIO Relais mit Dummy schalten
Beitrag von: Steve am 12 März 2014, 21:29:04
Hallo,

ich habe ein Befehl "on-for-timer" was von NetIO-Relais nicht verarbeitet wird

Logfile: set FBH_Mischer_weniger on-for-timer 9.5 : Unknown argument ?, choose one of on off

Gibt es einen Umweg über einen Dummy der dann nur ein klassische EIN/AUS weiter gibt?

VG Steve
Titel: Antw:NetIO Relais mit Dummy schalten
Beitrag von: Puschel74 am 13 März 2014, 08:05:51
Hallo,

zeig mal den Code.
Ich denke man sollte dort auch ein at einbauen können das nach der gewünschten Zeit ein off sendet - ganz ohne Dummy.

grüsse
Titel: Antw:NetIO Relais mit Dummy schalten
Beitrag von: Steve am 13 März 2014, 20:53:10

Hallo,

hier mal ein kurzer Auszug aus der cfg.

Also FBH_Mischer_weniger und mehr soll für eine errechnete Zeit angesprochen werden.

Die ECMDDevice schalten nicht wenn das Notify den Befehl gibt.

Mit einem Dummy geht es.


----------------------------------------------------------------------------------------------------------------------------------------------------------
>define FBH_Mischer_weniger ECMDDevice RELAIS 01
>define FBH_Mischer_mehr ECMDDevice RELAIS 02

>define FBH_Stellwert dummy

>define PID.Test PID20 HZ_VL:temperature FBH_Stellwert
>attr PID.Test pidActorInterval 3
>attr PID.Test pidActorTreshold 5
>attr PID.Test pidActorValueDecPlaces 0
>attr PID.Test pidFactor_I 0.2
>attr PID.Test pidFactor_P 10



>define Alt_Stellwert dummy

>define FBH notify FBH_Stellwert {\
> my $alt_stellwert = ReadingsVal("FBH_Stellwert","Alt_Stellwert",0);;\
>  fhem ("setreading FBH_Stellwert Alt_Stellwert $EVENT");;\
>  my $delta=($EVENT-$alt_stellwert)*.95;;\
> if ($delta > 0) {fhem("set FBH_Mischer_mehr on-for-timer $delta");;}\
>  if ($delta < 0){$delta = -$delta;; fhem("set FBH_Mischer_weniger on-for-timer $delta")};;\
>  if (abs($delta) >30) {$delta = abs($delta)-30;; sleep $delta}\
> }
----------------------------------------------------------------------------------------------------------------------------------------------------
Titel: Antw:NetIO Relais mit Dummy schalten
Beitrag von: Puschel74 am 13 März 2014, 21:17:05
Hallo,

sorry aber bitte erstmal das
http://forum.fhem.de/index.php/topic,16311.0.html (http://forum.fhem.de/index.php/topic,16311.0.html)
durchlesen.

Du willst ja eine Antwort - aber nicht erst nach 20 Beiträgen Nachfragen - oder?

Nimm es mir bitte nicht krumm aber 2 Mausklicks um die Codes in die passenden Tags zu werfen und den Text insgesamt leserlich zu machen ...
Das sollte doch wohl drinnen liegen oder?

Versuch es doch einfach mal und schau wie der Text mit Tags aussieht - das animiert sicher mehr zu helfen  ;)

Grüße
Titel: Antw:NetIO Relais mit Dummy schalten
Beitrag von: Steve am 13 März 2014, 21:29:17
Sorry für meine Schlamperei, werde mich bessern...







define FBH_Mischer_weniger ECMDDevice RELAIS 01
define FBH_Mischer_mehr ECMDDevice RELAIS 02

define FBH_Stellwert dummy

define PID.Test PID20 HZ_VL:temperature FBH_Stellwert
attr PID.Test pidActorInterval 3
attr PID.Test pidActorTreshold 5
attr PID.Test pidActorValueDecPlaces 0
attr PID.Test pidFactor_I 0.2
attr PID.Test pidFactor_P 10


#define FBH_Mischer_weniger ECMDDevice RELAIS 01

#define FBH_Mischer_mehr ECMDDevice RELAIS 02

define Alt_Stellwert dummy

define FBH notify FBH_Stellwert {\
my $alt_stellwert = ReadingsVal("FBH_Stellwert","Alt_Stellwert",0);;\
  fhem ("setreading FBH_Stellwert Alt_Stellwert $EVENT");;\
  my $delta=($EVENT-$alt_stellwert)*.95;;\
  if ($delta > 0) {fhem("set FBH_Mischer_mehr on-for-timer $delta");;}\
  if ($delta < 0){$delta = -$delta;; fhem("set FBH_Mischer_weniger on-for-timer $delta")};;\
  if (abs($delta) >30) {$delta = abs($delta)-30;; sleep $delta}\
}

Titel: Antw:NetIO Relais mit Dummy schalten
Beitrag von: Puschel74 am 13 März 2014, 22:07:42
Hallo,

ok, ich weiß nicht ob dich das weiter bringt aber versuch mal

fhem("define FBH_Mischer_Aus at ".$delta" set FBH_Mischer_weniger off");
wenn $delta einen Timestamp in der Form von hh:mm:ss hat sollte das hoffentlich klappen.

Ich hab den Code jetzt nicht ausprobiert und 1:1 in die fhem.cfg kopiert gibt das mit Sicherheit Fehlermeldungen.

Grüße