Maximale Tagestemperatur zurücksetzen

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

brodigy
Beiträge: 3
Registriert: 24.06.2014, 22:30

Maximale Tagestemperatur zurücksetzen

Beitrag von brodigy » 24.06.2014, 22:37

Hallo,

ich habe gemäß der Anleitung (http://www.eq-3.de/Downloads/PDFs/Dokum ... e_V1.1.pdf) die maximale und minimale Temperaturanzeige eingerichtet.

Code: Alles auswählen

var source = dom.GetObject("$src$");
var maxTemp = dom.GetObject
("maximale Temperatur");
if (source)
{
if (source.Value() > maxTemp.Variable())
{
maxTemp.Variable(source.Value());
}
}
else
{
var wds = dom.GetObject("Funk-Kombisensor");
var curTemp = wds.DPByHssDP("TEMPERATURE");
maxTemp.Variable(curTemp.Value());
}
Jetzt möchte ich zusätzlich noch die ermittelten Werte jedoch täglich zurücksetzen lassen. Wir müsste das Reset Skript aussehen? kann mir jemand helfen?

Danke brodigy

Benutzeravatar
Roland M.
Beiträge: 9805
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 252 Mal
Danksagung erhalten: 1381 Mal

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von Roland M. » 24.06.2014, 22:55

Hallo und willkommen im Forum!

Hab das sinngemäß über ein weiteres Programm so gelöst:

Code: Alles auswählen

WENN Zeitmodul (täglich um 00:00 Uhr)
DANN Script(
   temp_max_gestern = temp_max;
   temp_min_gestern = temp_min;
   temp_max = aktuelle_temp;
   temp_min = aktuelle_temp;
   )

Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Benutzeravatar
Herbert_Testmann
Beiträge: 11062
Registriert: 17.01.2009, 11:30
Danksagung erhalten: 7 Mal

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von Herbert_Testmann » 25.06.2014, 13:58

Hallo

Du kannst auch einfach Werte zuweisen.
Bei den minimalen Werten = +60
bei den maximalen Werten = -40

Damit sollte sich bei der ersten Messung des Tages auf jeden fall eine Änderung ergeben :)

Steht da nicht unter Tips$Tricks ein Scriptbeispiel für max/min Temp?
---
Dieses Schreiben wurde maschinell erstellt und ist ohne Unterschrift gültig

Benutzeravatar
Roland M.
Beiträge: 9805
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 252 Mal
Danksagung erhalten: 1381 Mal

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von Roland M. » 25.06.2014, 14:33

Hallo!
Herbert_Testmann hat geschrieben: Du kannst auch einfach Werte zuweisen.
Bei den minimalen Werten = +60
bei den maximalen Werten = -40

Damit sollte sich bei der ersten Messung des Tages auf jeden fall eine Änderung ergeben :)
Geht natürlich auch, nur hat es den Nachteil, daß es dann in einer grafischen Auswertung immer Spikes gibt.
Und man spart sich auch nur unwesentliche Skriptarbeit...

Steht da nicht unter Tips$Tricks ein Scriptbeispiel für max/min Temp?
Ja, genau wie oben mit dem dom.GetObject("$src$").
Warum einfach, wenn es auch kompliziert geht?
Für diese Anwendung meines Erachtens zu aufgeblasen.


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Benutzeravatar
Herbert_Testmann
Beiträge: 11062
Registriert: 17.01.2009, 11:30
Danksagung erhalten: 7 Mal

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von Herbert_Testmann » 25.06.2014, 17:03

Roland M. hat geschrieben:Hallo!
Herbert_Testmann hat geschrieben: Du kannst auch einfach Werte zuweisen.
Bei den minimalen Werten = +60
bei den maximalen Werten = -40

Damit sollte sich bei der ersten Messung des Tages auf jeden fall eine Änderung ergeben :)
Geht natürlich auch, nur hat es den Nachteil, daß es dann in einer grafischen Auswertung immer Spikes gibt.
Und man spart sich auch nur unwesentliche Skriptarbeit...
Ist eigentlich egal, aber ich verstehe nicht, warum es in der Grafik Ausreisser geben soll. Es gibt doch in 24h nur eine Max und eine Min Temp. Spätestens 00:03 haben beide die dann grade aktuelle Temp von z.B. 18°
Also müsste sich schon jemand das Diagramm zwischen 00:00 und 00:03 generieren lassen, um diesen Ausreisser zu bemerken.
---
Dieses Schreiben wurde maschinell erstellt und ist ohne Unterschrift gültig

brodigy
Beiträge: 3
Registriert: 24.06.2014, 22:30

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von brodigy » 25.06.2014, 19:07

Vielen Dank erstmal für die Tipps.
Meine Favorit ist, die maximale/minimal Temperatur zu einem bestimmten Zeitpunkt auf die Aktuelle zurückzusetzen.
Ich bin leider programmiertechnisch hier noch Einsteiger, deshalb die Frage, wie kann sieht das Skript für den Fall "setze die maxTemp um 0:00Uhr auf die curTemp" konkret aus?
Ich hab das noch nicht hinbekommen...

Sorry

Benutzeravatar
jollyjinx
Beiträge: 129
Registriert: 18.03.2014, 14:04
Wohnort: Taufkirchen b. München
Danksagung erhalten: 2 Mal

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von jollyjinx » 25.06.2014, 20:21

Ich würde das einfach über die Timestamp Funktion auslesen. Einfach am Anfang des Scripts testen ob die MaximalTemperatur schon am heutigen Tag gesetzt wurde:


var lastchanged = dom.GetObject("maximal Temperatur").Timestamp();
114 Kanaele in 22 Geraeten, 10 Geraetetypen:
2x HM-Sec-WDS-2(Funk-Wassermelder), 1x HM-Sec-SC-2(Funk-Tuer-/ Fensterkontakt), 1x HM-RCV-50(CCU2 System), 2x HM-ES-TX-WM(Funk-Sender fuer Energiezaehler-Sensor), 7x HM-CC-RT-DN(Funk-Heizkoerperthermostat), 1x HM-LC-Sw4-SM(Funk-Schaltaktor 4-fach), 5x HM-Sec-SCo(Funk- Tuer-/Fensterkontakt optisch), 1x HM-ES-PMSw1-Pl(Funk-Schaltaktor mit Leistungsmessung), 1x HM-LC-Sw1-Pl-2(Funk-Schaltaktor 1-fach), 1x HM-LC-Sw1PBU-FM(Funk-Schaltaktor 1-fach fuer Markenschalter)
--------------------------------------------
Inventur mit Jollys InventurScript erzeugt.

Benutzeravatar
Roland M.
Beiträge: 9805
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 252 Mal
Danksagung erhalten: 1381 Mal

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von Roland M. » 25.06.2014, 22:04

Hallo!
Herbert_Testmann hat geschrieben:Ist eigentlich egal, aber ich verstehe nicht, warum es in der Grafik Ausreisser geben soll. Es gibt doch in 24h nur eine Max und eine Min Temp. Spätestens 00:03 haben beide die dann grade aktuelle Temp von z.B. 18°
Um es kurz zu machen: 1:0 für dich! :D


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Benutzeravatar
Roland M.
Beiträge: 9805
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 252 Mal
Danksagung erhalten: 1381 Mal

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von Roland M. » 25.06.2014, 22:24

Hallo!
brodigy hat geschrieben:Ich bin leider programmiertechnisch hier noch Einsteiger, deshalb die Frage, wie kann sieht das Skript für den Fall "setze die maxTemp um 0:00Uhr auf die curTemp" konkret aus?
Ich hab das noch nicht hinbekommen...
So sieht meine Lösung aus:

Hier das Programm zum Erstellen der Werte:
Max-Min.PNG
Max-Min.PNG (24.18 KiB) 2635 mal betrachtet
Das zugehörige Skript:

Code: Alles auswählen

! Minimum-Maximum
! 18.12.2012 Minimum/Maximum-Werte des Thermometers speichern
! 19.12.2012 Uhrzeit hinzugefügt


! Systemvariablen übernehmen
var maxTemp = dom.GetObject("Außentemperatur Maximum");
var minTemp = dom.GetObject("Außentemperatur Minimum");
var timeMin = dom.GetObject("Uhrzeit Minimum");
var timeMax = dom.GetObject("Uhrzeit Maximum");

! Aktuelle Temperatur
var wds = dom.GetObject("Temperaturfühler");
var curTemp = wds.DPByHssDP("TEMPERATURE");
 

if (curTemp.Value() > maxTemp.Value())
 {
 maxTemp.Variable(curTemp.Value());
 timeMax.Variable(system.Date("%H:%M"));
 }

if (curTemp.Value() < minTemp.Value())
 {
 minTemp.Variable(curTemp.Value());
 timeMin.Variable(system.Date("%H:%M"));
 }

Und um Mitternacht dann das:
Max-Min-Reset.PNG
Max-Min-Reset.PNG (17.68 KiB) 2635 mal betrachtet

Code: Alles auswählen

! Min-Max-Reset
! 18.12.2012 Übertragen der Minimum/Maximum-Werte auf "Gestern" und Rücksetzen 
! 19.12.2012 Uhrzeit hinzugefügt


! Systemvariablen übernehmen
var maxTemp = dom.GetObject("Außentemperatur Maximum");
var minTemp = dom.GetObject("Außentemperatur Minimum");
var maxGestern = dom.GetObject("Außentemperatur Max Gestern");
var minGestern = dom.GetObject("Außentemperatur Min Gestern");
var timeMin = dom.GetObject("Uhrzeit Minimum");
var timeMax = dom.GetObject("Uhrzeit Maximum");

! Aktuelle Temperatur
var wds = dom.GetObject("Temperaturfühler");
var curTemp = wds.DPByHssDP("TEMPERATURE");
 


maxGestern.Variable(maxTemp.Value());
minGestern.Variable(minTemp.Value());
maxTemp.Variable(curTemp.Value());
minTemp.Variable(curTemp.Value());
timeMax.Variable(system.Date("%H:%M"));
timeMin.Variable(system.Date("%H:%M"));
Ich hoffe, es ist weitgehend selbsterklärend...

Aktuell sieht das dann so aus:
Max-Min-aktuell.PNG
Max-Min-aktuell.PNG (10.04 KiB) 2635 mal betrachtet


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

brodigy
Beiträge: 3
Registriert: 24.06.2014, 22:30

Re: Maximale Tagestemperatur zurücksetzen

Beitrag von brodigy » 29.06.2014, 13:36

Danke, es funktioniert jetzt!

Antworten

Zurück zu „HomeMatic allgemein“