Hallo zusammen,
habe ein Problem mit der Umsetzung von THRESHOLD. :(
Ich habe ein Außen Thermometer (HM-WDS10-TH-O) welches den Namen Temperatur_aussen hat. Und ein Heizkörperventil (HM-CC-RT-DN) welches den Namen HZ_Keller_Bar_h hat.
Nun möchte ich das Außen Thermometer dazu nutzen die Heizung zu steuern. bei Unterschreitung von 15°C Außentemperatur soll die Heizung an gehen. Und bei Überschreitung von 15°C soll diese wieder aus gehen.
#############################################################################################
## Temperatur schalten wenn Außentemperatur +/- 15°C
#############################################################################################
define Temp_aussen THRESHOLD Temperatur_aussen:temperature:0:15
ergibt bei mir schon die Fehlermeldung:
Temp_aussen: Unknown sensor device Temperatur_aussen specified
Please define Temp_aussen first
Leider komme ich hier nicht weiter . . . .
Brauch hier mal einen Denkanstoß wie ich das regeln kann.
Danke
Gruß
Markus
So das Problem:
Temp_aussen: Unknown sensor device Temperatur_aussen specified
Please define Temp_aussen first
konnte ich lösen. Hatte immer versucht das in der Datei vom Heizungsventil, statt des Sensors einzutragen.
Nun erhalte ich aber bei den weiteren Zeilen
define Keller_Bar_raum THRESHOLD Temp_aussen:state:off heating
set HZ_Keller_Bar_h_raum desired 20
folgende Meldung?
HZ_Keller_Bar_raum: value:off, hysteresis needs a numeric parameter
Please define HZ_Keller_Bar_h_raum first
Habe beide Zeilen ebenfalls in der Datei vom Sensor untergebracht. Tem_aussen zeigt in FHEM auch alle nötigen Zustände/Werte an.
Wo liegt hier mein Fehler?
Danke
Gruß
Markus
Zuerst: Unterschiedliche Dateien sind nicht notwendig und schaffen, nach meiner Erfahrung nur Probleme. Eine Config reicht und dort muss man nicht einmal rein schauen, weil alles im Frontend anleg-/änderbar ist.
Zum aktuellen Problem: Hast du die die commandref zu THRESHOLD angeschaut? Du versuchst hier "off" als Wert für die Hysterese zu setzen. Der Fehler beschreibt das Problem schons ehr gut ;)
Deine THRESHOLD Def. ist nicht vollständig. Es muss ungefähr so, wie bei mir aussehen, musst du nur für dich anpassen:
define HerdlichtON_OFF THRESHOLD Differenz_2_1:DiffTemp:0:3:|set Herdlicht on|set Herdlicht off
commandref:
ZitatIt can also FHEM/perl command chains are specified:
Examples:
define thermostat THRESHOLD sensor |set Switch1 on;;set Switch2 on|set Switch1 off
P.S. Marvin78 war schneller ;)
VG
Frank
Danke für Eure Antworten.
Habe es jetzt so gemacht.
define Temp_aussen THRESHOLD Temperatur_aussen:temperature:0:15
define Keller_Bar_raum THRESHOLD Temp_aussen:state:0:15: |set HZ_Keller_Bar_h off|set HZ_Keller_Bar_h on
bin mir aber nicht ganz sicher, ob ich somit mein Problem gelöst bekomme. Irgendwie scheine ich hier einen Denkfehler zu haben . . . ?
readings zeigt mir nun Active 15 an? Und Temp_aussen = off (bei aktuell 19°C)
Frage: Ist das nun so richtig (verstanden habe ich es nicht wirklich :( ) und wie kann ich hier eine Soll Temp vorgeben.
Möchte halt bei Aussentemperatur unter 15°C das die Heizung auf 20°C heizt und im umgekehrten Falle unter 15°C auss bleibt.
Danke
gruß
Markus
Zitat von: DJ-Mix am 06 April 2014, 16:48:07
define Temp_aussen THRESHOLD Temperatur_aussen:temperature:0:15
define Keller_Bar_raum THRESHOLD Temp_aussen:state:0:15: |set HZ_Keller_Bar_h off|set HZ_Keller_Bar_h on
bin mir aber nicht ganz sicher, ob ich somit mein Problem gelöst bekomme. Irgendwie scheine ich hier einen Denkfehler zu haben . . . ?
readings zeigt mir nun Active 15 an? Und Temp_aussen = off (bei aktuell 19°C)
Frage: Ist das nun so richtig (verstanden habe ich es nicht wirklich :( ) und wie kann ich hier eine Soll Temp vorgeben.
Möchte halt bei Aussentemperatur unter 15°C das die Heizung auf 20°C heizt und im umgekehrten Falle unter 15°C auss bleibt.
Dann eher:
define Temp_aussen THRESHOLD Temperatur_aussen:temperature:0:15
define Keller_Bar_raum THRESHOLD Temperatur_aussen OR Temp_aussen:state:off HZ_Keller_Bar_h
set Keller_Bar_raum desired 20
Gruß
Damian
Danke Damian.
So sieht es zumindest aus als wenn es funktioniert ;)
Aber leider verstanden habe ich TRESHOLD nicht . . . :(
Kann ich Probleme mit den tempList bekommen (im Auto Mode)?
Danke Gruß
Markus
zu früh gefreut . . . .
irgendwie wird die Temperatur nicht an das Thermostat übergeben?
Wo kann hier der Fehler liegen - sorry für die vielen Fragen, aber leider verstehe ich TRESHOLD nicht :(
Zitat von: DJ-Mix am 06 April 2014, 20:34:06
zu früh gefreut . . . .
irgendwie wird die Temperatur nicht an das Thermostat übergeben?
Wo kann hier der Fehler liegen - sorry für die vielen Fragen, aber leider verstehe ich TRESHOLD nicht :(
Dann musst du im Log nach Fehlermeldungen schauen.
Gruß
Damian
Im Log finde ich folgendes . . .
2014.04.06 20:53:17 2: set Keller_Bar desired 22
2014.04.06 20:53:17 2: Keller_Bar: no reading yet for Temperatur_aussen temperature
2014.04.06 20:53:19 2: output of Keller_Bar set HZ_Keller_Bar_h off: Unknown argument off, choose one of burstXmit clear:readings,register,rssi,msgEvents fwUpdate getConfig getRegRaw inhibit:on,off pair raw regBulk regSet reset sysTime unpair
vielleicht hilft das weiter
Internals:
CFGFN /opt/fhem/FHEM/wetter.cfg
CHANGED
DEF Temperatur_aussen OR Temp_aussen:state:off HZ_Keller_Bar_h
NAME Keller_Bar
NR 183
NTFY_ORDER 50-Keller_Bar
STATE active 22 on
TYPE THRESHOLD
cmd1_gt set HZ_Keller_Bar_h off
cmd2_lt set HZ_Keller_Bar_h on
cmd_default 2
hysteresis 1
offset 0
operator OR
sensor Temperatur_aussen
sensor2 Temp_aussen
sensor2_reading state
sensor2_state off
sensor_reading temperature
Readings:
2014-04-06 21:31:52 cmd cmd2_lt
2014-04-06 21:31:46 desired_value 22
2014-04-06 21:31:46 mode active
2014-04-06 20:53:20 sensor2_state on
2014-04-06 21:30:33 sensor_value 18.0
2014-04-06 21:31:52 state active 22 on
2014-04-06 21:31:46 threshold_max 22
2014-04-06 21:31:46 threshold_min 21
Attributes:
room Keller
state_cmd1_gt off
state_cmd2_lt on
state_format _m _dv _sc
Gruß
Markus
Zitat von: DJ-Mix am 06 April 2014, 21:28:57
Im Log finde ich folgendes . . .
2014.04.06 20:53:17 2: set Keller_Bar_raum desired 22
2014.04.06 20:53:17 2: Keller_Bar_raum: no reading yet for Temperatur_aussen temperature
2014.04.06 20:53:19 2: output of Keller_Bar_raum set HZ_Keller_Bar_h off: Unknown argument off, choose one of burstXmit clear:readings,register,rssi,msgEvents fwUpdate getConfig getRegRaw inhibit:on,off pair raw regBulk regSet reset sysTime unpair
Gruß
Markus
dann schreibe mal in der Kommandozeile "list Temperatur_aussen" und poste hier den Output.
"set HZ_Keller_Bar_h off" funktioniert nicht. Was ist "HZ_Keller_Bar_h"?
Gruß
Damian
Hallo Damian,
Ich habe ein Außen Thermometer (HM-WDS10-TH-O) welches den Namen Temperatur_aussen hat. Und ein Heizkörperventil (HM-CC-RT-DN) welches den Namen HZ_Keller_Bar_h hat.
hier der Auzug des HZ_Keller_Bar_h
Internals:
CFGFN /opt/fhem/FHEM/heizung.cfg
DEF 22BD0D
HMLAN1_MSGCNT 425
HMLAN1_RAWMSG *********
HMLAN1_RSSI -66
HMLAN1_TIME 2014-04-07 14:32:52
IODev HMLAN1
LASTInputDev HMLAN1
MSGCNT 425
NAME HZ_Keller_Bar_h
NR 34
STATE CMDs_done
TYPE CUL_HM
channel_01 HZ_Keller_Bar_h_Weather
channel_02 HZ_Keller_Bar_h_Climate
channel_03 HZ_Keller_Bar_h_WindowRec
channel_04 HZ_Keller_Bar_h_Clima
channel_05 HZ_Keller_Bar_h_ClimaTeam
channel_06 HZ_Keller_Bar_h_remote
lastMsg No:03 - t:10 s:22BD0D d:000000 0A88E50F005B
protLastRcv 2014-04-07 14:32:52
protSnd 21 last_at:2014-04-07 08:50:18
protState CMDs_done
rssi_at_HMLAN1 avg:-66.26 min:-69 max:-64 lst:-66 cnt:425
Readings:
2014-04-06 21:31:51 Activity alive
2014-04-06 21:32:54 CommandAccepted yes
2014-04-04 23:07:17 D-firmware 1.1
2014-04-04 23:07:17 D-serialNr KEQ*****
2014-04-06 17:28:02 PairedTo 0x25757F
2014-04-04 23:08:56 R-backOnTime 10 s
2014-04-06 17:28:02 R-btnLock off
2014-04-06 17:28:02 R-burstRx on
2014-04-06 17:28:02 R-cyclicInfoMsg on
2014-04-06 17:28:02 R-cyclicInfoMsgDis 0
2014-04-06 17:28:02 R-globalBtnLock off
2014-04-06 17:28:02 R-localResDis off
2014-04-04 23:08:56 R-lowBatLimitRT 2.1 V
2014-04-06 17:28:02 R-modusBtnLock off
2014-04-06 17:28:02 R-pairCentral 0x25757F
2014-04-06 17:28:02 RegL_00: 01:01 02:01 09:01 0A:25 0B:75 0C:7F 0E:0A 0F:00 11:00 12:15 16:00 18:00 19:00 1A:00 00:00
2014-04-07 08:50:18 RegL_07: CD:12 CE:21 CF:29
2014-04-07 14:32:52 actuator 0
2014-04-07 14:32:52 battery ok
2014-04-07 14:32:52 batteryLevel 3
2014-04-07 14:32:52 desired-temp 17.0
2014-04-07 14:32:52 measured-temp 22.9
2014-04-07 08:50:18 state CMDs_done
2014-04-07 05:05:47 time-request -
Helper:
cSnd 0125757F22BD0D00040000000007
mId 0095
rxType 140
Io:
newChn +22BD0D,00,01,1E
nextSend 1396873972.33404
Prt:
bErr 0
sProc 0
sleeping 1
Rspwait:
Q:
qReqConf
qReqStat
Role:
dev 1
Rssi:
At_hmlan1:
avg -66.2611764705881
cnt 425
lst -66
max -64
min -69
Shregw:
07 04
Shadowreg:
RegL_07:
Attributes:
IODev HMLAN1
actCycle 000:10
actStatus alive
autoReadReg 4_reqStatus
expert 2_full
firmware 1.1
model HM-CC-RT-DN
peerIDs
room Keller
serialNr KEQ****
subType thermostat
webCmd :burstXmit
Gruß
Markus
[quote author=DJ-Mix link=topic=22233.msg156672#msg156672 date=1396874245]
Hallo Damian,
Ich habe ein Außen Thermometer (HM-WDS10-TH-O) welches den Namen Temperatur_aussen hat. Und ein Heizkörperventil (HM-CC-RT-DN) welches den Namen HZ_Keller_Bar_h hat.
[/quote]
Wenn es ein Heizkörperventil ist, dann kannst du den nicht mit on/oft schalten. Dann ist THRESHOLD für diese Aufgabe ungeeignet. Ich gehe davon aus, dass du die beiden HM-Komponennten direkt peeren kannst. Am besten fragst du im Homematic-Forum nach.
Gruß
Damian
Zitat
Wenn es ein Heizkörperventil ist, dann kannst du den nicht mit on/oft schalten. Dann ist THRESHOLD für diese Aufgabe ungeeignet. Ich gehe davon aus, dass du
schade . . . . :(
Trotzdem danke für deine Hilfe Damian
gruß
Markus