Hardware Empfehlung Stellantrieb

Begonnen von Eisix, 28 Dezember 2016, 12:30:44

Vorheriges Thema - Nächstes Thema

choetzu

#15
hallo Eisix

danke für deine Info, ich versuche nun das irgendwie mit meinem beschränkten Wissen nachzustellen. ;) Brauche dazu aber noch etwas Hilfe. Für die Raumtemperatur-Steuerung hast du folgende Devices:

- Sensor_BAD_EG: Sensor, misst Temperatur im Bad
- EinschaltTemp_BAD_EG: Dummy, welcher mit Zeiten und Temperaturen von Steuerung.Heizung.BAD_EG gesteuert wird
- Steuerung.Heizung.BAD_EG: ??? Es kommt sonst nirgends in deiner Beschreibung vor. Wie berechnet erh die Zeiten und Temperaturen? Oder was macht es genau?
- Heizung_BAD_EG: Das ist NodOn 2 Kanal
- Heizung.Status_BAD_EG: Speichert den aktuellen Status. Dabei verstehe ich aber "[[Heizung.Status_BAD_EG:Tag]-[ Heizung.Status_BAD_EG:Nacht]]" nicht genau.. Was bedeutet das? Es ist doch eine Rechnung und nicht eine Bedingung. Oder bin ich falsch?
- EinschaltTemp_BAD_EG: (set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempTag]). Was wirt hier eingesetzt? Die Dauer oder die Solltemperatur?

Danke für deine Hilfe. Ich will nur verstehen. Denn noch ist mir nicht ganz klar, wie du den Stellantrieb genau steuerts. D.h. mit dem NodOn ist klar, aber wie lange lässt du Strom durch den NodOn fliessen, bis du die richtige Temp hast? Die Bodenheizung ist ja relativ träge und reagiert nicht grad sofort. oder?

Danke für deine Hilfe. Lg c

Raspi3, EnOcean, Zwave, Homematic

Eisix

Hallo,

Kopiere dir morgen die aktuellen Stände zusammen.
   
([Heizung.Status_BAD_EG:Heizung] eq "automatic" and [[Heizung.Status_BAD_EG:Tag]-[ Heizung.Status_BAD_EG:Nacht]]) (set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempTag])

Der Teil ist z.B: wenn Automatik und in der Zeitspanne Tag-Nacht schalte auf TempTag

Heizung_BAD_EG ist der readingsproxy für einen Channel des nodon

Gruß
Eisix

choetzu

Super, herzlichen Dank. bin gespannt.

Zitat von: Eisix am 07 Januar 2018, 22:59:43
Heizung_BAD_EG ist der readingsproxy für einen Channel des nodon

Heizung_BAD_EG habe ich verstanden, danke. Wo ich keine Eräuterung finde, ist zu Steuerung.Heizung.BAD_EG. Was macht das genau?

Lg c


Raspi3, EnOcean, Zwave, Homematic

Eisix


Hallo,

Die Readings Namen von Heizung.Status_BAD_EG sind denke ich sprechend

Tag -> Zeitpunkt an dem auf Tag umgeschaltet wird
Nacht -> Zeitpunkt an dem auf Nacht umgeschaltet wird
TempTag -> gewünschte Temperatur am Tag
TempNacht -> gewünschte Temperatur Nachts (Nachtabsenkung)
automatic -> es wird automatisch nach den eingestellten Zeiten zwischen Tag und Nacht umgestellt
manuell -> die automatik wird abgeschaltet und der manuell eingestellte Wert (TempMan) wird versucht zu erreichen

Der doif mach also die Nachtabsenkung, schaltet zwischen automatik und manuell um. Dabei wird einfach EinschaltTemp_BAD_EG auf die entsprechenden Temperaturen gesetzt.

Hier ein list von Steuerung.Heizung.BAD_EG

Internals:
   DEF        ([Heizung.Status_BAD_EG:Heizung] eq "automatic" and [[Heizung.Status_BAD_EG:Tag]-[ Heizung.Status_BAD_EG:Nacht]]) (set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempTag]) DOELSEIF ([Heizung.Status_BAD_EG:Heizung] eq "manuell") (set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempMan]) DOELSE (set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempNacht])
   NAME       Steuerung.Heizung.BAD_EG
   NR         381
   NTFY_ORDER 50-Steuerung.Heizung.BAD_EG
   STATE      cmd_1
   TYPE       DOIF
   Helper:
     DBLOG:
       cmd:
         logdb:
           TIME       1515382200.06026
           VALUE      1
       cmd_event:
         logdb:
           TIME       1515382200.06026
           VALUE      timer_1
       cmd_nr:
         logdb:
           TIME       1515382200.06026
           VALUE      1
       state:
         logdb:
           TIME       1515382200.06026
           VALUE      cmd_1
   READINGS:
     2017-12-28 07:13:11   Device          Heizung.Status_BAD_EG
     2018-01-08 04:30:00   cmd             1
     2018-01-08 04:30:00   cmd_event       timer_1
     2018-01-08 04:30:00   cmd_nr          1
     2017-12-28 07:13:11   e_Heizung.Status_BAD_EG_Heizung automatic
     2018-01-08 04:30:00   state           cmd_1
     2018-01-07 21:09:25   timer_01_c01    08.01.2018 04:30:00
     2018-01-07 21:09:25   timer_02_c01    08.01.2018 21:00:00
     2018-01-07 21:09:22   wait_timer      no timer
   Regex:
   condition:
     0          ReadingValDoIf($hash,'Heizung.Status_BAD_EG','Heizung') eq "automatic" and DOIF_time($hash,0,1,$wday,$hms)
     1          ReadingValDoIf($hash,'Heizung.Status_BAD_EG','Heizung') eq "manuell"
   days:
   devices:
     0           Heizung.Status_BAD_EG
     1           Heizung.Status_BAD_EG
     all         Heizung.Status_BAD_EG
   do:
     0:
       0          set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempTag]
     1:
       0          set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempMan]
     2:
       0          set EinschaltTemp_BAD_EG [Heizung.Status_BAD_EG:TempNacht]
   helper:
     DOIF_Readings_events
     DOIF_eventas
     event      timer_1
     globalinit 1
     last_timer 2
     sleeptimer -1
     timerdev   
     timerevent timer_1
     timereventsState
     triggerDev
     timerevents:
       timer_1
     triggerEvents:
       timer_1
   internals:
   interval:
     0          -1
     1          0
   itimer:
     all         Heizung.Status_BAD_EG
   localtime:
     0          1515382200
     1          1515441600
   readings:
     0           Heizung.Status_BAD_EG:Heizung
     1           Heizung.Status_BAD_EG:Heizung
     all         Heizung.Status_BAD_EG:Heizung
   realtime:
     0          04:30:00
     1          21:00:00
   time:
     0          [Heizung.Status_BAD_EG:Tag]
     1          [Heizung.Status_BAD_EG:Nacht]
   timeCond:
     0          0
     1          0
   timer:
     0          0
     1          0
   timers:
     0           0  1
   triggertime:
     1515441600:
       localtime  1515441600
       hash:
   uiState:
   uiTable:
Attributes:
   room       Heizungsraum
   wait       3:3:3


Soviel erst mal dazu. Hoffe das macht es verständlich?

Gruß
Eisix

choetzu

Super, herzlichen Dank. Das habe ich nun verstanden und kann es auch nachvollziehen.

Wo ich noch einen Knoten habe ist bei der Schaltung des Nodon-ReadingsProxy. Er wird ja geschaltet, wenn die Solltemperatur nicht der IST-Temperatur entspricht. Dadurch dass die Bodenheizung träge ist, wird dann nicht konstant hoch und runtergeschraubt?

Danke für die (hoffentlich) letzte Hilfe ;)

Lg C
Raspi3, EnOcean, Zwave, Homematic

Eisix

#20
Hallo,

kein Problem freut mich wenn ich jemand helfen kann. Habe hier auch schon genug Hilfe erfahren. Außerdem gibt das auch die Möglichkeit das jemand noch Ideen zur Verbesserung des ganzen hat.

Bzgl. hoch runterschrauben. Ich könnte mir vorstellen das wenn man den Temperatursensor direkt neben einer Außentür platziert und die ständig auf und zu geht sowas auftreten könnte. In so einem Fall könntest du ein wait in den doif packen das der Wert z.B. 15 min unter dem Schwellenwert liegen muß um einzuschalten.

Meine Temperatursensoren senden normalerweise alle 15 min außer bei größeren Abweichungen, das ist aber Feintuning der Sensoren.
Im 1 screenshot (Wohnzimmer) siehst du so einen Fall von kurz Einschaltung waren 20 min. Ich denke das da die steigende Außentemperatur schon gereicht hat. Kürzere Schaltintervalle habe ich bei keinem der 5 Räume beobachtet.
Im 2 screenshot (Bad) sieht man wie die Nachtabsenkung arbeitet. Seit 2 Tagen ist der Raum aber eh warm genug ohne Heizung  :D.

Bis jetzt bin ich ohne wait's ausgekommen.

list Program.Heizung_BAD_EG

Internals:
   DEF        ([Sensor_BAD_EG:temperature:d] < [EinschaltTemp_BAD_EG:state]) (set Heizung_BAD_EG on, setreading Heizung_BAD_EG stateColor #995c00) DOELSE (set Heizung_BAD_EG off, setreading Heizung_BAD_EG stateColor #112026)
   NAME       Program.Heizung_BAD_EG
   NR         309
   NTFY_ORDER 50-Program.Heizung_BAD_EG
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2018-01-08 17:28:11   Device          Sensor_BAD_EG
     2018-01-06 12:47:40   cmd             2
     2018-01-06 12:47:40   cmd_event       Sensor_BAD_EG
     2018-01-06 12:47:40   cmd_nr          2
     2018-01-08 04:30:00   e_EinschaltTemp_BAD_EG_state 22.0
     2018-01-08 17:28:11   e_Sensor_BAD_EG_temperature 22.6 C
     2018-01-06 12:47:40   state           cmd_2
   Regex:
   condition:
     0          ReadingValDoIf($hash,'Sensor_BAD_EG','temperature','','d') < ReadingValDoIf($hash,'EinschaltTemp_BAD_EG','state')
   devices:
     0           Sensor_BAD_EG EinschaltTemp_BAD_EG
     all         Sensor_BAD_EG EinschaltTemp_BAD_EG
   do:
     0:
       0          set Heizung_BAD_EG on, setreading Heizung_BAD_EG stateColor #995c00
     1:
       0          set Heizung_BAD_EG off, setreading Heizung_BAD_EG stateColor #112026
   helper:
     DOIF_Readings_events
     DOIF_eventas
     event      temperature: 22.6 C,CleanTemp: 22.6
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   Sensor_BAD_EG
     timerevent temperature: 22.6 C,CleanTemp: 22.6
     triggerDev Sensor_BAD_EG
     timerevents:
       temperature: 22.6 C
       CleanTemp: 22.6
     timereventsState:
       temperature: 22.6 C
       CleanTemp: 22.6
     triggerEvents:
       temperature: 22.6 C
       CleanTemp: 22.6
     triggerEventsState:
       temperature: 22.6 C
       CleanTemp: 22.6
   internals:
   itimer:
   readings:
     0           Sensor_BAD_EG:temperature EinschaltTemp_BAD_EG:state
     all         Sensor_BAD_EG:temperature EinschaltTemp_BAD_EG:state
   trigger:
   uiState:
   uiTable:
Attributes:
   room       Heizungsraum


Gruß
Eisix

Eisix

Falschen Screenshot angehängt.
Hier nochmal der richtige 1.

choetzu

hallo Eisix

herzlichen Dank für deine Geduld, jetzt wird mir vieles klarer. Es gibt bei dir eigentlich nur ein "Bodenheizung EIN" und ein "Bodenheizung AUS", oder? Also entweder ist der Stellhahn ganz aufgedreht oder ganz zu. "Halbaufgedreht" gibts bei dir nicht, stimmts? Das war mein Knoten ;)

Lg c
Raspi3, EnOcean, Zwave, Homematic

Eisix

Hallo,

korrekt, auf oder zu. Was anderes kannst du ja auch mit dem Nodon nicht realisieren, der kennt ja auch nur an oder aus.

Gruß
Eisix

choetzu

Zitat von: Eisix am 09 Januar 2018, 10:34:57
korrekt, auf oder zu. Was anderes kannst du ja auch mit dem Nodon nicht realisieren, der kennt ja auch nur an oder aus.

Ausser man programmiert was. Sprich wenn man weiss, wie lange (z.B. in Sekunden) Nodon "offen" sein muss, damit der Stellantrieb ganz offen ist, könnte man auch halb-öffen, indem man nur die Hälfte der Zeit nimmt. Natürlich müsste der Zustand dann in einem Dummy gespeichert werden, damit man weiss, wie die Stellung des Stellantriebes grad ist. Hast du dir das auch schon überlegt?

Ich möchte drum vermeiden, dass ich entweder einen "kalten" oder einen "heissen" Boden habe ;)
Raspi3, EnOcean, Zwave, Homematic

Eisix

Ich kenne deine Ventile nicht aber mit meinen kann das nicht funktionieren. Es geht auch definitiv nicht mit den Nodon Aktoren.
Rein von der Logik her schon nicht, du willst einschalten und nach Ablauf eines Timers wieder ausschalten. Und wie schaltest du dann wieder aus!?
Was dir vorschwebt ist sowas wie bei den Rolladenaktoren. Wo über die Zeit der Fahrweg angenommen wird.

Ich denke du solltest dir da Ventile mit Durchflussmengenregulierung anschauen z.B. https://wiki.fhem.de/wiki/Micropelt_iRTV_Kleinstellantrieb
Aber da reden wir dann von einer anderen Preisliga.

Gruß
Eisix

choetzu

Zitat von: Eisix am 09 Januar 2018, 11:28:46
Ich denke du solltest dir da Ventile mit Durchflussmengenregulierung anschauen z.B. https://wiki.fhem.de/wiki/Micropelt_iRTV_Kleinstellantrieb
Aber da reden wir dann von einer anderen Preisliga.

Super, herzlichen Dank. Ich werde mir das nochmals überlegen.. Der Micropelt ist mir bekannt, aber wenn ich die Bedienungsanleitung lese, dann steht da

Zitat3.2 Bestimmungsgemäßer Gebrauch
Der energieautarke Heizkörperstellantrieb ist ausschließlich zur Regelung von
wassergefüllten Heizungsradiatoren geeignet. Eine andere Verwendung, auch an
Fußbodenheizungen, ist nicht zulässig
und kann zu Schäden führen.

Dies hält mich davon ab...
Raspi3, EnOcean, Zwave, Homematic