Infos und Ergänzungen rund um Raumthermostate, Stellantriebe

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

mrMuppet
Beiträge: 220
Registriert: 22.04.2011, 20:29
Hat sich bedankt: 1 Mal

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von mrMuppet » 27.02.2012, 20:15

Zweites Gerät dass so heisst kann ich nicht finden. "Wa" ist auf jeden Fall neu!

Ausgabe jetzt:
Die Variable 'Wärmeanforderung' existiert.
Das Gerät 'HeizungMain' existiert.
HssType: HM-LC-Sw1-Ba-PCB
letzte Aktualisierung: 2012-02-27 20:14:38

Wärmeanforderung müsste jetzt gerade bei etwa 80 sein!

Edit: Ist nicht eigentlich die Aktualisierung der "Wärmeanforderung" das interessantere?
58 Kanäle in 44 Geräten
Wand-Tablet mit Mediola
Yamaha AVR, Dreambox, Squeezebox, FreeNAS, Fritzbox, SeduLight, FireTV, Chromecast

Benutzeravatar
anli
Beiträge: 4326
Registriert: 10.06.2009, 14:01
Wohnort: 20 Min. nördlich von Hannover und bei Bremen
Hat sich bedankt: 1 Mal
Danksagung erhalten: 23 Mal
Kontaktdaten:

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von anli » 27.02.2012, 22:09

mrMuppet hat geschrieben:Zweites Gerät dass so heisst kann ich nicht finden. "Wa" ist auf jeden Fall neu!
Edit: Ist nicht eigentlich die Aktualisierung der "Wärmeanforderung" das interessantere?
Inwiefern? Das Skript bricht vor der Aktualisierung ab. Das tut es, weil es den Kanal nicht findet des HM-LC-Sw1-Ba-PCB nicht findet. Deshalb müssen wir vor der Aktualisierung suchen. Das haben wir getan und das Problem lokalisiert.

Du musst die Zeile

Code: Alles auswählen

            object d_heizung_state = dom.GetObject ("BidCos-RF." # d_heizung.Address() # ".STATE");
ändern in

Code: Alles auswählen

            object d_heizung_state = dom.GetObject ("BidCos-RF." # d_heizung.Address() # ":1.STATE");
Dann sollte es gehen.
Herzliche Grüße, anli

Alle Angaben ohne Gewähr und Haftung meinerseits. Verwendung der von mir zur Verfügung gestellten Downloads auf eigene Gefahr. Ich bitte um Verständnis, dass ich aus zeitlichen Gründen keine unaufgeforderte Hilfestellung per PN/Mail geben kann. Bitte allgemeine Fragen ins Forum stellen, hier können viele fähige User viel schneller helfen.

Homematic-Manager v2: einfaches Tool zum Erstellen von Direktverknüpfungen und Bearbeiten von Gerätenamen, -parametern etc. für Homematic und HomematicIP (Alternative diesbzgl. zur WebUI)

Einsteiger-Hilfeerweiterter Skript-Parser

mrMuppet
Beiträge: 220
Registriert: 22.04.2011, 20:29
Hat sich bedankt: 1 Mal

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von mrMuppet » 27.02.2012, 22:59

anli hat geschrieben: Inwiefern? Das Skript bricht vor der Aktualisierung ab. Das tut es, weil es den Kanal nicht findet des HM-LC-Sw1-Ba-PCB nicht findet. Deshalb müssen wir vor der Aktualisierung suchen. Das haben wir getan und das Problem lokalisiert.

Du musst die Zeile

Code: Alles auswählen

            object d_heizung_state = dom.GetObject ("BidCos-RF." # d_heizung.Address() # ".STATE");
ändern in

Code: Alles auswählen

            object d_heizung_state = dom.GetObject ("BidCos-RF." # d_heizung.Address() # ":1.STATE");
Dann sollte es gehen.
Ich hab die Stelle gefunden- aber leider klappts immer noch nicht. Gab gerade mal nen neustart... und jetzt zeigt der Script Executor sorgar quasi nichts mehr an:
{
"d_heizung_state": "null",
"d_heizung": "null",
"sessionId": "",
"s_waermeanforderung": "null",
"httpUserAgent": "",
"STDOUT": ""
}


???
58 Kanäle in 44 Geräten
Wand-Tablet mit Mediola
Yamaha AVR, Dreambox, Squeezebox, FreeNAS, Fritzbox, SeduLight, FireTV, Chromecast

Benutzeravatar
anli
Beiträge: 4326
Registriert: 10.06.2009, 14:01
Wohnort: 20 Min. nördlich von Hannover und bei Bremen
Hat sich bedankt: 1 Mal
Danksagung erhalten: 23 Mal
Kontaktdaten:

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von anli » 28.02.2012, 09:07

Welches Skript hast Du denn im Executor gepostet? Da funktioniert nur mein Skript. Das Original-Programm-Skript geht dort nicht, da auf Dinge zugegriffen wird, die nur im Rahmen des Programms existieren ($this$ und die Konditionen).
Herzliche Grüße, anli

Alle Angaben ohne Gewähr und Haftung meinerseits. Verwendung der von mir zur Verfügung gestellten Downloads auf eigene Gefahr. Ich bitte um Verständnis, dass ich aus zeitlichen Gründen keine unaufgeforderte Hilfestellung per PN/Mail geben kann. Bitte allgemeine Fragen ins Forum stellen, hier können viele fähige User viel schneller helfen.

Homematic-Manager v2: einfaches Tool zum Erstellen von Direktverknüpfungen und Bearbeiten von Gerätenamen, -parametern etc. für Homematic und HomematicIP (Alternative diesbzgl. zur WebUI)

Einsteiger-Hilfeerweiterter Skript-Parser

Benutzeravatar
anli
Beiträge: 4326
Registriert: 10.06.2009, 14:01
Wohnort: 20 Min. nördlich von Hannover und bei Bremen
Hat sich bedankt: 1 Mal
Danksagung erhalten: 23 Mal
Kontaktdaten:

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von anli » 28.02.2012, 09:27

So, habe das Skript noch einmal angepasst. Bitte Ergebnis posten :D
Herzliche Grüße, anli

Alle Angaben ohne Gewähr und Haftung meinerseits. Verwendung der von mir zur Verfügung gestellten Downloads auf eigene Gefahr. Ich bitte um Verständnis, dass ich aus zeitlichen Gründen keine unaufgeforderte Hilfestellung per PN/Mail geben kann. Bitte allgemeine Fragen ins Forum stellen, hier können viele fähige User viel schneller helfen.

Homematic-Manager v2: einfaches Tool zum Erstellen von Direktverknüpfungen und Bearbeiten von Gerätenamen, -parametern etc. für Homematic und HomematicIP (Alternative diesbzgl. zur WebUI)

Einsteiger-Hilfeerweiterter Skript-Parser

mrMuppet
Beiträge: 220
Registriert: 22.04.2011, 20:29
Hat sich bedankt: 1 Mal

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von mrMuppet » 28.02.2012, 10:34

anli hat geschrieben:Welches Skript hast Du denn im Executor gepostet? Da funktioniert nur mein Skript. Das Original-Programm-Skript geht dort nicht, da auf Dinge zugegriffen wird, die nur im Rahmen des Programms existieren ($this$ und die Konditionen).
Wenn ich mich jetzt nicht völlig vertan hab, dann habe ich schon deinen "Testscript" im Executor getestet... und nicht den "Teddy-Heizungsscript". Kann das nur leider hier von der Arbeit aus nicht überprüfen. Auch deine neuste Überarbeitung kann ich leider erst heute abend testen!
58 Kanäle in 44 Geräten
Wand-Tablet mit Mediola
Yamaha AVR, Dreambox, Squeezebox, FreeNAS, Fritzbox, SeduLight, FireTV, Chromecast

mrMuppet
Beiträge: 220
Registriert: 22.04.2011, 20:29
Hat sich bedankt: 1 Mal

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von mrMuppet » 28.02.2012, 18:50

So, Kontroll-script geht wieder,

STDOUT-Ausgabe:

Die Variable 'Wärmeanforderung' existiert.
Das Gerät 'HeizungMain' existiert.
HssType: HM-LC-Sw1-Ba-PCB
Kanäle: HeizungMain
Datenpunkte: BidCos-RF.IEQ0243900:1.STATE BidCos-RF.IEQ0243900:1.ON_TIME BidCos-RF.IEQ0243900:1.INHIBIT
letzte Aktualisierung: 2012-02-28 18:48:02
58 Kanäle in 44 Geräten
Wand-Tablet mit Mediola
Yamaha AVR, Dreambox, Squeezebox, FreeNAS, Fritzbox, SeduLight, FireTV, Chromecast

Benutzeravatar
anli
Beiträge: 4326
Registriert: 10.06.2009, 14:01
Wohnort: 20 Min. nördlich von Hannover und bei Bremen
Hat sich bedankt: 1 Mal
Danksagung erhalten: 23 Mal
Kontaktdaten:

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von anli » 28.02.2012, 19:05

Super. Dann sollte das ganze Programm in der geänderten Fassung doch durchlaufen:

Code: Alles auswählen

! Wärmeanforderungs-Steuerung
! (c) 2010 teddy278

! Schnittstelle zur WebUI
object s_waermeanforderung = dom.GetObject("Wärmeanforderung");            ! Systemvariable, Integer, zur Überwachung
object d_heizung = dom.GetObject("HeizungMain");      ! Aktor zum Schalten der Heizung

! 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());
}

! Heizung bei Bedarf schalten
object d_heizung_state = dom.GetObject ("BidCos-RF." # d_heizung.Address() # ":1.STATE");
time t_timestamp = d_heizung_state.Timestamp();
time t_now = system.Date("%Y-%m-%d %H:%M:%S").ToTime();
integer i_diff = t_now.ToInteger() - t_timestamp.ToInteger();

if ((i_summe <= 20) && (!d_heizung_state.State())) {
  d_heizung_state.State(true);
}
if ((i_summe >= 30) && (i_diff > 600) && (d_heizung_state.State())) {
  d_heizung_state.State(false);
}

! Wärmeanforderung aktualisieren
if (s_waermeanforderung.State() != i_summe) {
  s_waermeanforderung.State(i_summe);
}
Herzliche Grüße, anli

Alle Angaben ohne Gewähr und Haftung meinerseits. Verwendung der von mir zur Verfügung gestellten Downloads auf eigene Gefahr. Ich bitte um Verständnis, dass ich aus zeitlichen Gründen keine unaufgeforderte Hilfestellung per PN/Mail geben kann. Bitte allgemeine Fragen ins Forum stellen, hier können viele fähige User viel schneller helfen.

Homematic-Manager v2: einfaches Tool zum Erstellen von Direktverknüpfungen und Bearbeiten von Gerätenamen, -parametern etc. für Homematic und HomematicIP (Alternative diesbzgl. zur WebUI)

Einsteiger-Hilfeerweiterter Skript-Parser

mrMuppet
Beiträge: 220
Registriert: 22.04.2011, 20:29
Hat sich bedankt: 1 Mal

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von mrMuppet » 28.02.2012, 19:14

Juhu! Es funktioniert!! Vielen Dank anli!!!


:D :D :D

Wärmeanforderung mal gleich auf 28!

Kannst Du mir noch als letztes sagen, wo bei mir der Fehler lag? Nur damit ich etwas daraus lernen kann....
58 Kanäle in 44 Geräten
Wand-Tablet mit Mediola
Yamaha AVR, Dreambox, Squeezebox, FreeNAS, Fritzbox, SeduLight, FireTV, Chromecast

Benutzeravatar
anli
Beiträge: 4326
Registriert: 10.06.2009, 14:01
Wohnort: 20 Min. nördlich von Hannover und bei Bremen
Hat sich bedankt: 1 Mal
Danksagung erhalten: 23 Mal
Kontaktdaten:

Re: Infos und Ergänzungen rund um Raumthermostate, Stellantr

Beitrag von anli » 28.02.2012, 19:22

Gerne. Es lag daran, dass Du einen anderen Aktor verwendet hast als Teddy damals, als er das Skript erstellt hat :D
Herzliche Grüße, anli

Alle Angaben ohne Gewähr und Haftung meinerseits. Verwendung der von mir zur Verfügung gestellten Downloads auf eigene Gefahr. Ich bitte um Verständnis, dass ich aus zeitlichen Gründen keine unaufgeforderte Hilfestellung per PN/Mail geben kann. Bitte allgemeine Fragen ins Forum stellen, hier können viele fähige User viel schneller helfen.

Homematic-Manager v2: einfaches Tool zum Erstellen von Direktverknüpfungen und Bearbeiten von Gerätenamen, -parametern etc. für Homematic und HomematicIP (Alternative diesbzgl. zur WebUI)

Einsteiger-Hilfeerweiterter Skript-Parser

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“