Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

hpk
Beiträge: 44
Registriert: 01.12.2011, 19:15

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von hpk » 28.11.2017, 08:35

Jetzt steht Aktuelle Temperatur: 20.000000 in der Ausgabe.

MFG

dtp
Beiträge: 10658
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von dtp » 28.11.2017, 08:39

Und meine zweite Frage? :roll:
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

hpk
Beiträge: 44
Registriert: 01.12.2011, 19:15

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von hpk » 28.11.2017, 08:42

Sorry es handelt sich um Funk-Thermostate HM-TC-IT-WM-W-EU.

MFG

dtp
Beiträge: 10658
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von dtp » 28.11.2017, 11:57

Dann würde ich es mal mit "SET_TEMPERATURE" unter Kanal 2 statt mit "SETPOINT" unter Kanal 1 versuchen:

Code: Alles auswählen

string VentilSchalterKanal = "Buero.Heizung:1";
string Raumregler = "Buero.Thermostat";

real aktuelleTemperatur = (dom.GetObject(ID_CHANNELS).Get(Raumregler#":2")).DPByHssDP("ACTUAL_TEMPERATURE").Value();
WriteLine("Aktuelle Temperatur: "#aktuelleTemperatur);
real zielTemperatur = (dom.GetObject(ID_CHANNELS).Get(Raumregler#":2")).DPByHssDP("SET_TEMPERATURE").Value();
WriteLine("Ziel-Temperatur: "#zielTemperatur);
object ventilAktorDP = (dom.GetObject(ID_CHANNELS).Get(VentilSchalterKanal)).DPByHssDP("STATE");
WriteLine("Ventil-Zustand: "#ventilAktorDP);
Und "Buero.Thermostat"? Ist das ein HM-CC-RT-DN, oder was möchtest Du mit "STATE" abfragen?

Das kann so aber auch vor der Firmware-Änderung nicht funktioniert haben. Hast Du mal die Aktoren gewechselt?
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

hpk
Beiträge: 44
Registriert: 01.12.2011, 19:15

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von hpk » 28.11.2017, 15:10

Hallo das Script wurde einmal für das Vorgängermodell HM-CC-TC für eine andere Homematic geschrieben (von einem Bekannten - ich bin leider kein Programmierer) - die noch im Betrieb ist und mit alter Firmware einwandfrei läuft und schaltet.

Es hat aber so vor dem Firmware-Update bei mir funktioniert - wie gesagt hatte es so bis zum Update in Betrieb - und hätte es gemerkt wenn die Heizung nicht funktioniert hätte.

Es wurden keine Aktoren oder Thermostate getauscht.

Bin leider momentan unterwegs - werde es gleich testen sobald ich wieder zuhause bin.

Danke

mfg

dtp
Beiträge: 10658
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von dtp » 28.11.2017, 15:56

Nun ja, nun greifst Du aber nicht mehr auf die Datenpunkte des HM-CC-TC, sondern auf die des HM-TC-IT-WM-W-EU zurück. Und die haben zum Teil unterschiedliche Bezeichnungen und sind über unterschiedliche Kanäle erreichbar.

Daher hat Dein Problem nichts mit der neuen Firmware zu tun, sondern damit, dass Du die falschen Datenpunkte aufrufst.

Die gute Nachricht ist aber die, dass sich das recht leicht fixen lässt. ;)
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

hpk
Beiträge: 44
Registriert: 01.12.2011, 19:15

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von hpk » 28.11.2017, 16:55

Die gute Nachricht ist aber die, dass sich das recht leicht fixen lässt.
Ja für jemanden der gut im Programmieren ist wahrscheinlich schon, für mich ist es aber nicht so einfach.

Mfg

hpk
Beiträge: 44
Registriert: 01.12.2011, 19:15

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von hpk » 28.11.2017, 17:05

Und "Buero.Thermostat"? Ist das ein HM-CC-RT-DN, oder was möchtest Du mit "STATE" abfragen?
Du meinst wahrscheinlich Buero.Heizung - das ist der Aktor - ein HM-LC-SW1-FM - und mit "STATE" wird dessen Zustand abgefragt (Ein/Aus).

MFG

dtp
Beiträge: 10658
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von dtp » 28.11.2017, 17:09

hpk hat geschrieben: Du meinst wahrscheinlich Buero.Heizung - das ist der Aktor - ein HM-LC-SW1-FM - und mit "STATE" wird dessen Zustand abgefragt (Ein/Aus).
Ja, sorry, ich meinte "Buero.Heizung". Alles klar, wobei da dann aber auch ein ".Value()" im Skript fehlt. Teste es bitte noch mal hiermit:

Code: Alles auswählen

string VentilSchalterKanal = "Buero.Heizung:1";
string Raumregler = "Buero.Thermostat";

real aktuelleTemperatur = (dom.GetObject(ID_CHANNELS).Get(Raumregler#":2")).DPByHssDP("ACTUAL_TEMPERATURE").Value();
WriteLine("Aktuelle Temperatur: "#aktuelleTemperatur);
real zielTemperatur = (dom.GetObject(ID_CHANNELS).Get(Raumregler#":2")).DPByHssDP("SET_TEMPERATURE").Value();
WriteLine("Ziel-Temperatur: "#zielTemperatur);
object ventilAktorDP = (dom.GetObject(ID_CHANNELS).Get(VentilSchalterKanal)).DPByHssDP("STATE").Value();
WriteLine("Ventil-Zustand: "#ventilAktorDP);
Und wenn das soweit vernünftige Werte liefert, dann sollte das folgende Skript laufen:

Code: Alles auswählen

string VentilSchalterKanal = "Buero.Heizung:1";
string Raumregler = "Buero.Thermostat";
real hysterese = 0.5;

real aktuelleTemperatur; real zielTemperatur; object ventilAktorDP;

aktuelleTemperatur = (dom.GetObject(ID_CHANNELS).Get(Raumregler#":2")).DPByHssDP("ACTUAL_TEMPERATURE").Value();
zielTemperatur = (dom.GetObject(ID_CHANNELS).Get(Raumregler#":2")).DPByHssDP("SET_TEMPERATURE").Value();
ventilAktorDP = (dom.GetObject(ID_CHANNELS).Get(VentilSchalterKanal)).DPByHssDP("STATE");

if(aktuelleTemperatur < (zielTemperatur + hysterese)){ !Aktor einschalten, wenn Temperatur zu niedrig
  if(!ventilAktorDP.Value()){ventilAktorDP.State(1);}
}
else{
  if(aktuelleTemperatur > (zielTemperatur - hysterese)){ !Aktor ausschalten, wenn Temperatur zu hoch
    if(ventilAktorDP.Value()){ventilAktorDP.State(0);}
  }
}
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

hpk
Beiträge: 44
Registriert: 01.12.2011, 19:15

Re: Neue Firmware - Program läuft nicht mehr - Hilfe!!!

Beitrag von hpk » 28.11.2017, 18:15

Und wenn das soweit vernünftige Werte liefert, dann sollte das folgende Skript laufen:
ventilAktorDP = (dom.GetObject(ID_CHANNELS).Get(VentilSchalterKanal)).DPByHssDP("STATE");
Müsste das im Code nicht
object ventilAktorDP = (dom.GetObject(ID_CHANNELS).Get(VentilSchalterKanal)).DPByHssDP("STATE").Value();
heissen??

Kann leider erst morgen alles testen - und danke vielmals erstmals.

MFG

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“