Seite 12 von 33

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 14:37
von 2LeftHands
Hallo BadenPower,
hallo alchy,

Der Kanal war es und die verdrehten -59 :!: ... Danke

BadenPower hat geschrieben:Ein Blick ins Fehlerlog wäre nicht schlecht gewesen! Über den Rest der Fehleranfälligkeit des Skriptes sag' ich schon gar nichts. Aber die Leerzeichen sind es nicht.
Das Fehlerlog ... beinhaltet bei mir nur 1,5 Minuten ... wie kann ich hier mehr einstellen/sehen.
Was meinst du mit Fehleranfälligkeit ... bin noch neu im Thema :(

LG
Peter

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 14:52
von BadenPower
2LeftHands hat geschrieben:Das Fehlerlog ... beinhaltet bei mir nur 1,5 Minuten ... wie kann ich hier mehr einstellen/sehen.
"Einstellungen > Zentralenwartung" und dort kann man in der Rubik "Fehlerprotokoll" einstellen, was geloggt werden soll.
Im Regelfall reicht dort die Einstellung "Nur Fehler".
2LeftHands hat geschrieben:Was meinst du mit Fehleranfälligkeit ... bin noch neu im Thema :(
Das Verwenden von dom.GetObject() in Verbindung mit einem Namen um Objekte zu erhalten.
Denn wenn zwei oder mehrere Objekte den gleichen Namen tragen ist es ein Glücksspiel, welches Objekt zurückgegeben wird und somit auch ein Glückspiel, ob das Skript ausgeführt wird oder nicht. Und selbst wenn es ausgeführt wird ist nicht gewährleistet, dass alle Aktionen korrekt ausgeführt werden. Dadurch kann auch die komplette Rega abstürzen.

.

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 14:54
von alchy
2LeftHands hat geschrieben:Der Kanal war es und die verdrehten -59 ... Danke
DS
Ja natürlich, sonst hätten wir es ja nicht geschrieben.
Aber weil du so artig Bildschirmcopys gepostest hast, musstest du auch belohnt werden.
Das fehlende >> Fehlerprotokoll << wird wahrscheinlich nicht nur 2min lang sein. Einstellungen posten.


Alchy

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 15:09
von 2LeftHands
Hallo ihr 2,
Fehlerprotokoll.JPG
ich werde es mal zurückdrehen auf nur Fehler.
Im SYSTEMPROTOKOLL ist kein Eintrag zu finden.
Das Verwenden von dom.GetObject() in Verbindung mit einem Namen um Objekte zu erhalten.
Wäre also besser hier die Seriennummer zu verwenden ...
AT-1.JPG
So sieht es jetzt aus ... komisch immer noch

Danke für die Mühe und das Lob ... die Signatur kommt auch bald :)

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 15:42
von BadenPower
2LeftHands hat geschrieben:So sieht es jetzt aus ... komisch immer noch
Poste nochmals das komplette Skript in der Ausführung, wie Du es jetzt verwendest.
2LeftHands hat geschrieben:Wäre also besser hier die Seriennummer zu verwenden ...
Nein.
Man verwendet schon die Namen, aber eben nicht das global wirkende dom.GetObject(), sondern die Methode .Get() der entsprechenden Listen. Also bei Systemvariablen eben

Code: Alles auswählen

object lSysvar = (dom.GetObject(ID_SYSTEM_VARIABLES)).Get("Name der Systemvariable");
.

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 15:45
von alchy
Im Systemprotokoll wird nur geloggt, wenn du z.B. In den Einstellungen von Geräten den Haken bei protokolliert anhakst.

Alchy

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 16:07
von 2LeftHands
Danke alchy werde ich schauen.

Was wäre denn in diesem Fall die Systemvariable ... könntest du mir bitte ein Beispiel geben.


So sind die jetzigen Settings:
SV-Aussentemperatur.JPG
SV-Zeit.JPG
HM-WDS10-TH-O.JPG
AT-Geraeteansicht.JPG
AT.JPG

Code: Alles auswählen

var curTemp = dom.GetObject("Aussentemperatur-Balkon:1").DPByHssDP("TEMPERATURE").Value();
var maxTemp = dom.GetObject("AT-Maximum").Value();
var minTemp = dom.GetObject("AT-Minimum").Value();
var jetzt = system.Date("%H:%M h");

if (curTemp > maxTemp)
{ dom.GetObject("AT-Maximum").State(curTemp);
  dom.GetObject("Time-Max").State(jetzt);
}
if (curTemp < minTemp)
{ dom.GetObject("AT-Minimum").State(curTemp);
  dom.GetObject("Time-Min").State(jetzt);
}
AT-Reset.JPG

Code: Alles auswählen

var curTemp = dom.GetObject("Aussentemperatur-Balkon:1").DPByHssDP("TEMPERATURE").Value();
var maxTemp = dom.GetObject("AT-Maximum").Value();
var minTemp = dom.GetObject("AT-Minimum").Value();

dom.GetObject("AT-Max-Gestern").State(maxTemp);
dom.GetObject("AT-Min-Gestern").State(minTemp);
dom.GetObject("AT-Maximum").State(curTemp);
dom.GetObject("AT-Minimum").State(curTemp);
dom.GetObject("Time-Max").State("00:00 h");
dom.GetObject("Time-Min").State("00:00 h");

Danke für Eure Hilfe

LG
Peter

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 17:26
von BadenPower
Beim überfliegen konnte ich jetzt nichts negatives feststellen.

Führe einmal das untenstehende Skript mit den WriteLine()'s unter "Skript testen" aus und poste das Ergebnis:

Code: Alles auswählen

WriteLine("Start");
WriteLine(dom.GetObject("Aussentemperatur-Balkon:1"));
var curTemp = dom.GetObject("Aussentemperatur-Balkon:1").DPByHssDP("TEMPERATURE").Value();
WriteLine(curTemp);
var maxTemp = dom.GetObject("AT-Maximum").Value();
WriteLine(maxTemp);
var minTemp = dom.GetObject("AT- Minimum").Value();
WriteLine(minTemp);
var jetzt = system.Date("%H:%M h");

if (curTemp > maxTemp)
{
  WriteLine("CUR MAX");
  dom.GetObject("AT-Maximum").State(curTemp);
  dom.GetObject("Time-Max").State(jetzt);
}
if (curTemp < minTemp)
{
  WriteLine("CUR MIN");
  dom.GetObject("AT-Minimum").State(curTemp);
  dom.GetObject("Time-Min").State(jetzt);
}
WriteLine("ENDE");
Im Programm für den Reset hast Du noch das Ändern der Variablen zusätzlich zum Skript drin. Ist das beabsichtigt?
.

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 17:36
von 2LeftHands

Code: Alles auswählen

Start
Aussentemperatur-Balkon:1
4.200000
4.300000
4.200000
CUR MIN
ENDE
Das passende Diagramm .
Diagramm.JPG
Ich habe mich an die Anleitung der Seiten 1+2 gehalten ... liegt da schon der Fehler ?

Egal wie ich es drehe .. nur Script - nur Programm - gemischt .. sieht immer so aus
AT-1.JPG
Danke

Re: Min.- Max. Temperaturen Gestern und Heute

Verfasst: 14.11.2016, 18:45
von BadenPower
2LeftHands hat geschrieben:

Code: Alles auswählen

Start
Aussentemperatur-Balkon:1
4.200000
4.300000
4.200000
CUR MIN
ENDE
Und Du bist sicher, dass Du das Skript im obigen Post von mir 1:1 ausgeführt hast?

Dann mach einmal dieses:

Code: Alles auswählen

WriteLine("START");
WriteLine(dom.GetObject("Aussentemperatur-Balkon:1"));
WriteLine(dom.GetObject("AT-Maximum"));
WriteLine(dom.GetObject("AT-Minimum"));
var curTemp = dom.GetObject("Aussentemperatur-Balkon:1").DPByHssDP("TEMPERATURE").Value();
WriteLine(curTemp);
var maxTemp = dom.GetObject("AT-Maximum").Value();
WriteLine(maxTemp);
var minTemp = dom.GetObject("AT- Minimum").Value();
WriteLine(minTemp);
var jetzt = system.Date("%H:%M h");

if (curTemp > maxTemp)
{
  WriteLine("CUR MAX");
  WriteLine(dom.GetObject("AT-Maximum"));
  dom.GetObject("AT-Maximum").State(curTemp); 
  WriteLine(dom.GetObject("Time-Max")); 
  dom.GetObject("Time-Max").State(jetzt);
  WriteLine("Max-ENDE");   
}
if (curTemp < minTemp)
{
  WriteLine("CUR MIN");
  WriteLine(dom.GetObject("AT-Minimum"));
  dom.GetObject("AT-Minimum").State(curTemp);
  WriteLine(dom.GetObject("Time-Min"));
  dom.GetObject("Time-Min").State(jetzt);
  WriteLine("Min-ENDE");  
}

WriteLine(dom.GetObject("AT- Maximum"));
WriteLine(dom.GetObject("AT- Minimum"));
WriteLine("ENDE");