Durchnittliche Ventilöffnung bei mehreren HK-Thermostaten

Kabellose und kabelgebundene Sender und Empfänger der klassischen Homematic-Serie

Moderator: Co-Administratoren

hofi77
Beiträge: 87
Registriert: 17.02.2015, 08:45

Durchnittliche Ventilöffnung bei mehreren HK-Thermostaten

Beitrag von hofi77 » 10.10.2015, 20:21

Hallo zusammen!

Ich habe eine Frage und hoffe dass mir wer helfen kann.

Ich habe in einem Raum 3 HK. Ist es möglich mittels einer Variable und Programm oder Script dass mir der Durchschnitt dieser 3 Ventile (öffnungsgrad in %) angezeigt wird?

Danke für eure Hilfe :)

Lg
Manuel

Benutzeravatar
robbi77
Beiträge: 13787
Registriert: 19.01.2011, 19:15
System: CCU
Wohnort: Landau
Hat sich bedankt: 181 Mal
Danksagung erhalten: 732 Mal

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von robbi77 » 10.10.2015, 21:04

Alte neue?


Gruß
Roberto
Bei Risiken und Nebenwirkungen fragen Sie den Elektriker Ihres geringsten Mißtrauens!
http://www.eq-3.de/service/downloads.html
Tips und Tricks für Anfänger: viewtopic.php?t=22801
Programmlogik: viewtopic.php?f=31&t=4251
Webui-Handbuch: https://www.eq-3.de/downloads/download/ ... h_eQ-3.pdf
Script und Linksammlung: viewtopic.php?f=26&t=27907
Troll des Forums ...

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von blackhole » 10.10.2015, 23:13

robbi77 hat geschrieben:Alte neue?
Erstens heißt das "Neue Alte?" und zweitens sollte das Privatleben des Threaderstellers bezüglich seiner Anfrage keine Relevanz haben.

SCNR

Daimler
Beiträge: 9114
Registriert: 17.11.2012, 10:47
System: Alternative CCU (auf Basis OCCU)
Wohnort: Köln
Hat sich bedankt: 37 Mal
Danksagung erhalten: 283 Mal

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von Daimler » 11.10.2015, 09:45

Und - noch Kopfschmerzen? :lol:
Gruß Günter

pivccx mit 3.xx in Produktiv und Testsystem mit HM-, HM-W, HMIP- und HMIP-W Geräten, HPCx Studio 4.1,
L-Gateways, RS-L-Gateways, HAP, Drap, FHZ200x, vereinzelt noch FS2x-Komponenten.
HM / HM-IP: Zur Zeit knapp 300 Komponenten mit ??? Kanälen .

Ich übernehme für alle von mir gegebenen Hinweise, Tipps und Links keine Haftung! Das Befolgen meiner Tipps ist nur für Fachkundige gedacht und erfolgt auf eigene Gefahr!

hofi77
Beiträge: 87
Registriert: 17.02.2015, 08:45

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von hofi77 » 11.10.2015, 09:46

hatte ich vergessen sorry: neue HK-Thermostate sonst immer noch glücklich ;)

hofi77
Beiträge: 87
Registriert: 17.02.2015, 08:45

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von hofi77 » 29.10.2015, 12:11

Ist hier wirklich keiner der mir bei meinem Problem helfen kann?

Wäre schön wenn jemand eine Idee hätte :)

LG

Manuel

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von Xel66 » 29.10.2015, 13:48

Zur durchschnittlichen Öffnung nur ansatzweise. Es gibt hier einen Thread, der sich mit etwas Ähnlichem befasst. Hier werden die Stellungen der Ventile in einer Variable summiert, aus der man dann einen Wärmebedarf in Form einer abstrakten Zahl ableiten kann. Diesen Ansatz könntest Du benutzen und die so ermittelte Zahl durch die Anzahl Deiner Heizkörperthermostate teilen. Das ergibt dann rechnerisch den Mittelwert der in der Berechnung enthaltenen Ventile.

Dieses Script läuft mit ganz kleinen Anpassungen bei mir seit über einem Jahr im Hintergrund mit und ich logge so den Wärmebedarf während der Heizperiode im Systemprotokoll (ich lasse einfach die Variable protokollieren). Das bläht zwar das Protokoll auf, aber zukünftig will ich von meiner starrem Öffnungsgrad-abhänigen Wärmebedarfsermittlung (Ventil >10% geöffnet) auf diese Ermittlung des Wärmebedarfs umsteigen. Das Protokoll hilft mir bei der Ermittlung des Schwellwertes, ab wann ich die Heizung aktiviere. Im Moment komme ich (wenn ich die ermittelte Schwelle durch die Anzahl meiner Ventile teile) auf einen durchschnittlichen Öffnungsgrad von 15%, was meiner starren Einstellung mit >10% schon recht nahe kommt. Bevor ich das live schalte, muss ich noch einen Override für meinen Badheizkörper integrieren, denn bedingt durch die Schichtarbeit bekommt der unabhängig vom Rest des Hauses auch mal in der Frühe einen höheren Sollwert, damit das Bad auch beim Aufstehen zur Frühschicht geheizt ist.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

hofi77
Beiträge: 87
Registriert: 17.02.2015, 08:45

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von hofi77 » 11.11.2015, 18:47

Hallo xel66!

Danke für den guten Tipp!

Habe dieses Skript in ein Programm eingebaut (nachdem ich die Zeilen für das ein und ausschalten der Heizung gelöscht habe)

Bei der Prüfung wird mir kein Fehler angezeigt jedoch steht in der System variable immer nur null.

Das Gewerk für die Thermostate heißt Heizung und die Systemvariable habe ich Ventilstellung genannt und auch im Skript angepasst.

Was habe ich falsch gemacht?

Code: Alles auswählen

! Schnittstelle zur WebUI
object s_waermeanforderung = dom.GetObject("Ventilstand");            ! Systemvariable, Integer, zur Überwachung

! Stellantriebe aus dem WebUI-Programm abfragen
object o_prg = dom.GetObject($this$);
integer i_count=0;
integer i_summe=0;
string s_address;
object o_dp_err;
object o_chn;
object o_dp = dom.GetObject(o_prg.Rule().RuleCondition(0).CndSingleCondition(i_count).LeftVal());

while (o_dp) {
  o_chn = dom.GetObject(o_dp.Channel());
  s_address = o_chn.Address();
  o_dp_err=dom.GetObject("BidCos-RF." # s_address # ".ERROR");
  if (o_dp_err.Value() == 0) {
    i_summe = i_summe + o_dp.Value();
  }
  i_count = i_count + 1;
  o_dp = dom.GetObject(o_prg.Rule().RuleCondition(0).CndSingleCondition(i_count).LeftVal());
}

! Wärmeanforderung aktualisieren
if (s_waermeanforderung.State() != i_summe) {
  s_waermeanforderung.State(i_summe);
}
leider kenne ich mich mit programmierung nicht gut aus :(

Danke für die Hilfe! :)

lg

Manuel

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von Xel66 » 11.11.2015, 19:05

hofi77 hat geschrieben:... und die Systemvariable habe ich Ventilstellung genannt und auch im Skript angepasst.
Nö, hast Du nicht! Zumindest steht in Deinem Script was anderes.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

hofi77
Beiträge: 87
Registriert: 17.02.2015, 08:45

Re: Durchnittliche Ventilöffnung bei mehreren HK-Thermostate

Beitrag von hofi77 » 11.11.2015, 19:30

sorry hatte ich übersehen dass da auch noch was zu ändern war

jetzt ist alles geändert:

Code: Alles auswählen

! Schnittstelle zur WebUI
object s_ventilstand = dom.GetObject("Ventilstand");            ! Systemvariable, Integer, zur Überwachung

! Stellantriebe aus dem WebUI-Programm abfragen
object o_prg = dom.GetObject($this$);
integer i_count=0;
integer i_summe=0;
string s_address;
object o_dp_err;
object o_chn;
object o_dp = dom.GetObject(o_prg.Rule().RuleCondition(0).CndSingleCondition(i_count).LeftVal());

while (o_dp) {
  o_chn = dom.GetObject(o_dp.Channel());
  s_address = o_chn.Address();
  o_dp_err=dom.GetObject("BidCos-RF." # s_address # ".ERROR");
  if (o_dp_err.Value() == 0) {
    i_summe = i_summe + o_dp.Value();
  }
  i_count = i_count + 1;
  o_dp = dom.GetObject(o_prg.Rule().RuleCondition(0).CndSingleCondition(i_count).LeftVal());
}

! Wärmeanforderung aktualisieren
if (s_ventilstand.State() != i_summe) {
  s_ventilstand.State(i_summe);
}
und immer noch 0 :(

was mache ich falsch?

Danke für deine Geduld

lg
Manuel

Antworten

Zurück zu „HomeMatic Aktoren und Sensoren (klassisch)“