FHEM Forum

FHEM => Codeschnipsel => Thema gestartet von: frankie93 am 28 Dezember 2013, 15:45:36

Titel: Heizungssteuerung mit FHT8V
Beitrag von: frankie93 am 28 Dezember 2013, 15:45:36
Hallo,

ich habe einen Stellantrieb FHT8V, den ich mit den Befehlen (Beispiel) set COC raw T12340126FF oder set stellantrieb.01 valve 100
auf den Stellwert 100% einstellen kann. Dies funktioniert auch einwandfrei.
Ich möchte aber den Stellwert berechnen (aus verschiedenen Parametern) und den berechneten Wert einer Variablen zuweisen. Über diese Variable soll dann das Ventil gesteuert werden.
Also so ähnlich wie nachstehend:
set stellantrieb.01 valve stellwert  (wobei stellwert die variable ist).
Beim Speichern kommt es jetzt zu der Fehlermeldung, daß hinter valve ein Wert zwischen 0 und 100 stehen muß, also keine Variable möglich ist.

Hat jemand eine Idee, wie das Ventil über eine Variable gesteuert werden kann ?
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: Bernhard am 28 Dezember 2013, 15:57:22
Zitat von: frankie93 am 28 Dezember 2013, 15:45:36

set stellantrieb.01 valve stellwert  (wobei stellwert die variable ist).


set stellantrieb.01 valve $stellwert

Aber warum nimmst nicht das Modul PID  zum rechnen?
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: frankie93 am 28 Dezember 2013, 16:06:53
mit
set stellantrieb.01 valve $stellwert
geht es auch nicht.

Hier kommt auch die Fehlermeldung:
Set valve needs a numeric parameter between 0 and 100
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: Bernhard am 28 Dezember 2013, 16:11:17
dann ist vermutlich ein gebrocherner Wert drin.
Stelle sicher, dass nur ganzzahlige Werte übergeben werden.
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: frankie93 am 28 Dezember 2013, 16:24:45
in der variable steht nur ein ganzzahliger Wert

schon beim Speichern der fhem.cfg kommt die beschriebene Fehlermeldung (also ein Syntaxfehler)
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: Bernhard am 28 Dezember 2013, 16:31:00
dann muss schon genauer beschreiben, wie die Anweisung verpackt ist, in notify, at, ...   oder einfach nur so in der fhem.cfg
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: frankie93 am 28 Dezember 2013, 16:38:39
zum Ausprobieren habe ich es nur so in der fhem.cfg stehen.

also so:
define stellantrieb.01 FHT8V 1234
attr stellantrieb.01 room Heizungen

define stellwert dummy
set stellwert 30

set stellantrieb.01 valve $stellwert
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: Bernhard am 28 Dezember 2013, 17:26:50
na dann ists klar.
Vorab, ich weiss jetzt nicht, ob man ein "set xxx" jetzt so einfach in die fhem.cfg setzen kann.
Aber du könntest das in ein notify packen
etwa

define X_init notify global:INITIALIZED {\
  fhem "set stellwert 30";;\
  my $soll=ReadingsVal("stellwert","state","0")+0;;\
  fhem "set stellwert $soll";;\
}
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: frankie93 am 28 Dezember 2013, 17:48:44
ja, aber wie bekomme ich jetzt den Inhalt der Variable $soll in den Stellantrieb 
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: Bernhard am 28 Dezember 2013, 17:51:47
z.b.  do oben in dem notify   mit einem zusätzlichen   

    fhem "set stellantrieb.01 valve $soll"
Titel: Antw:Heizungssteuerung mit FHT8V
Beitrag von: frankie93 am 29 Dezember 2013, 10:28:40
Danke Bernhard für Deine Hilfe.
Es funktioniert