NEWS
Thermostat DAnfoss programieren
-
Aber sicher, ist aber nicht wirklich schön programmiert, das geht mit Sicherheit wesentlich besser (waren meine ersten Schritte)
Die Datenpunkte musst du dir natürlich anpassen:
var hPlan = { 0 : {Heizung :'Wohnzimmer', Datenpunkt : 'zwave.0.NODE2.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '6:30', schaltWert :17}, 2 :{schaltzeit : '7:30', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :4}, }, 1 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 2 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 3 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 4 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 5 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 6 : { 1 :{schaltzeit : '7:30', schaltWert :17}, 2 :{schaltzeit : '9:00', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :17}, 4 :{schaltzeit : '23:30', schaltWert :4}, } }, 1 : {Heizung :'Esszimmer', Datenpunkt : 'zwave.0.NODE3.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '6:30', schaltWert :17}, 2 :{schaltzeit : '7:30', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :4}, }, 1 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 2 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 3 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 4 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 5 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 6 : { 1 :{schaltzeit : '7:30', schaltWert :17}, 2 :{schaltzeit : '9:00', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :17}, 4 :{schaltzeit : '23:30', schaltWert :4}, } }, 3 : {Heizung :'Kinderzimmer', Datenpunkt : 'zwave.0.NODE5.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '7:30', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 1 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 2 : { 1 :{schaltzeit : '7:30', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 3 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 4 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 5 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 6 : { 1 :{schaltzeit : '7:30', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, } }, 4 : {Heizung :'Schlafzimmer', Datenpunkt : 'zwave.0.NODE6.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 1 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 2 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 3 : { 1 : {schaltzeit :'6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 4 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 5 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 6 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, } } } function Wochentag() { var date = new Date(); var Tag = date.getDay(); return Tag } function Uhrzeit() { // Uhrzeit ermitteln var date = new Date(); var Minuten = date.getMinutes(); if (Minuten < 10) {Minuten = '0'+Minuten}; // wenn Minuten einstellig, dann fuege eine Null hinzu Minuten = date.getHours()+':'+Minuten; // Stunden + Minuten return Minuten } function HeizplanCheck() { for (let anzahlHeizungen in hPlan) { // Anzahl der Heizungen im Heizplan abfragen und nacheinander aufrufen for(let anzahlSchaltzeiten in hPlan[anzahlHeizungen][Wochentag()]) { // Anzahl der Schaltzeiten jeder Heizung für den heutigen Tag abfragen und nacheinander aufrufen if (hPlan[anzahlHeizungen][Wochentag()][anzahlSchaltzeiten].schaltzeit == Uhrzeit()) { // Paßt Schaltzeit zur aktuellen Zeit? setState(hPlan[anzahlHeizungen].Datenpunkt/*Heizung ID*/, hPlan[anzahlHeizungen][Wochentag()][anzahlSchaltzeiten].schaltWert); // Wenn ja, dann Heizung umstellen // sendTo("pushover", "send", { // message: 'Heizung umgestellt' /*+ hPlan[anzahlHeizungen].Heizung + 'auf' hPlan[anzahlHeizungen][Wochentag()][anzahlSchaltzeiten].schaltWert */, // sound: "" // }); }; } } } setInterval(HeizplanCheck , 60000); // alle 60 Sekunden Heizplan prüfen -
Aber sicher, ist aber nicht wirklich schön programmiert, das geht mit Sicherheit wesentlich besser (waren meine ersten Schritte)
Die Datenpunkte musst du dir natürlich anpassen:
var hPlan = { 0 : {Heizung :'Wohnzimmer', Datenpunkt : 'zwave.0.NODE2.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '6:30', schaltWert :17}, 2 :{schaltzeit : '7:30', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :4}, }, 1 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 2 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 3 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 4 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 5 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 6 : { 1 :{schaltzeit : '7:30', schaltWert :17}, 2 :{schaltzeit : '9:00', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :17}, 4 :{schaltzeit : '23:30', schaltWert :4}, } }, 1 : {Heizung :'Esszimmer', Datenpunkt : 'zwave.0.NODE3.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '6:30', schaltWert :17}, 2 :{schaltzeit : '7:30', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :4}, }, 1 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 2 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 3 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 4 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 5 : { 1 :{schaltzeit : '7:00', schaltWert :19}, 2 :{schaltzeit : '22:15', schaltWert :4}, }, 6 : { 1 :{schaltzeit : '7:30', schaltWert :17}, 2 :{schaltzeit : '9:00', schaltWert :19}, 3 :{schaltzeit : '22:15', schaltWert :17}, 4 :{schaltzeit : '23:30', schaltWert :4}, } }, 3 : {Heizung :'Kinderzimmer', Datenpunkt : 'zwave.0.NODE5.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '7:30', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 1 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 2 : { 1 :{schaltzeit : '7:30', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 3 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 4 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 5 : { 1 :{schaltzeit : '6:45', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, }, 6 : { 1 :{schaltzeit : '7:30', schaltWert :19}, 2 :{schaltzeit : '18:45', schaltWert :19}, } }, 4 : {Heizung :'Schlafzimmer', Datenpunkt : 'zwave.0.NODE6.THERMOSTAT_SETPOINT.Heating_1_1', 0 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 1 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 2 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 3 : { 1 : {schaltzeit :'6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 4 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 5 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, }, 6 : { 1 :{schaltzeit : '6:00', schaltWert :19}, 2 :{schaltzeit : '22:00', schaltWert :19}, } } } function Wochentag() { var date = new Date(); var Tag = date.getDay(); return Tag } function Uhrzeit() { // Uhrzeit ermitteln var date = new Date(); var Minuten = date.getMinutes(); if (Minuten < 10) {Minuten = '0'+Minuten}; // wenn Minuten einstellig, dann fuege eine Null hinzu Minuten = date.getHours()+':'+Minuten; // Stunden + Minuten return Minuten } function HeizplanCheck() { for (let anzahlHeizungen in hPlan) { // Anzahl der Heizungen im Heizplan abfragen und nacheinander aufrufen for(let anzahlSchaltzeiten in hPlan[anzahlHeizungen][Wochentag()]) { // Anzahl der Schaltzeiten jeder Heizung für den heutigen Tag abfragen und nacheinander aufrufen if (hPlan[anzahlHeizungen][Wochentag()][anzahlSchaltzeiten].schaltzeit == Uhrzeit()) { // Paßt Schaltzeit zur aktuellen Zeit? setState(hPlan[anzahlHeizungen].Datenpunkt/*Heizung ID*/, hPlan[anzahlHeizungen][Wochentag()][anzahlSchaltzeiten].schaltWert); // Wenn ja, dann Heizung umstellen // sendTo("pushover", "send", { // message: 'Heizung umgestellt' /*+ hPlan[anzahlHeizungen].Heizung + 'auf' hPlan[anzahlHeizungen][Wochentag()][anzahlSchaltzeiten].schaltWert */, // sound: "" // }); }; } } } setInterval(HeizplanCheck , 60000); // alle 60 Sekunden Heizplan prüfen ```` `Danke aber Was heisst 0 ? Montag und 6 Sonntag? ich habe nicht die Info gefunden :/ danke :)
-
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden