Objekt letzter Empfang mit Datum+Uhrzeit

Programmierung der FHZ-Zentralen mit contronics homeputer Standard / homeputer Studio & WEB-Server

Moderator: Co-Administratoren

m.jansen
Beiträge: 219
Registriert: 16.03.2011, 16:30
Wohnort: Aachen

Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von m.jansen » 19.04.2011, 12:30

Hallo,

besteht die Möglichkeit der Anzeige von "Letzter Empfang" mit Datum und Uhrzeit in einem Objekt,b.z.w einem Fenster?
Besten Dank vorab,

Mfg.
m.jansen

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von buempi » 19.04.2011, 13:34

Hallo m.jansen

Erstelle ein Anzeige-Objekt vom Typ Zeichen und hinterlege im Sensor-Objekt folgende Makrozeile:

Code: Alles auswählen

AnzeigeObjekt := Zeit
Wenn "Ausführen bei Empfang" aktiviert ist, wird nun bei jedem Empfang die Zeit (Datum/Uhrzeit) in dein Anzeige-Objekt geschrieben.

Bei gewissen Sensoren (z.B. TFK) wird das Makro aber nicht wirklich bei jedem Empfang ausgeführt, sondern nur, wenn sich auch der Zustand geändert hat. Die periodischen Statusmeldungen werden nicht beachtet. Sollte das bei deinem Sensor auch so sein, müsste man mit einem eigenen Typ was basteln. Melde dich in diesem Fall einfach nochmals.

Viele Grüsse
Bümpi

m.jansen
Beiträge: 219
Registriert: 16.03.2011, 16:30
Wohnort: Aachen

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von m.jansen » 19.04.2011, 13:52

Hallo buempi,
vielen Dank schonmal :D
Also habe jetzt ein Objekt der mir immer das Datum und Uhrzeit des letzten Empfangs anzeigt.
Könnte man jetzt auch das dazugehörige Objekt anzeigen?
Also z.b. Aussenfeuchte dann das Datum und die uhrzeit
Eine Auflistung von oben nach unten wäre dann natürlich auch perfekt :wink:

Mfg.
m.jansen

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von buempi » 19.04.2011, 14:18

m.jansen hat geschrieben:Eine Auflistung von oben nach unten wäre dann natürlich auch perfekt
... wird aber auch komplizierter! - Du musst wieder ein Zeichen-Objekt "AnzeigeMeldungen" anlegen und dieses in der Visualisierung auf die notwendige Höhe und Breite bringen.

In diesem Zeichen-Objekt definierst du so viele Zeichen-Variablen "Meldung1" bis "MeldungX", wie du im Überblick haben möchtest. Dann kommt das folgende Makro rein:

Code: Alles auswählen

Meldung8 := Zeit + " " + Meldung8

AnzeigeMeldungen := Meldung1 + "<<" + Meldung2 + "<<" + Meldung3 + "<<" + Meldung4 + "<<"
AnzeigeMeldungen := AnzeigeMeldungen + Meldung5 + "<<" + Meldung6 + "<<" + Meldung7 + "<<" + Meldung8

Meldung1 := Meldung2
Meldung2 := Meldung3
Meldung3 := Meldung4
Meldung4 := Meldung5
Meldung5 := Meldung6
Meldung6 := Meldung7
Meldung7 := Meldung8
In jedem Objekt, das protokolliert werden soll, kommt nun folgendes rein:

Code: Alles auswählen

** FeuchteSensor ist der Name des Sensors - so wird auch gleich der gemeldete Wert angezeigt!
AnzeigeMeldungen.Meldung8 := "Feuchte aussen: " + FeuchteSensor
aufrufen(AnzeigeMeldungen)
Du kannst auch Schaltungen, die in einem Makro ausgelöst werden, protokollieren:

Code: Alles auswählen

Schaltsteckdose einschalten
AnzeigeMeldungen.Meldung8 := "Steckdose eingeschaltet"
aufrufen(AnzeigeMeldungen)
Etwas unschön bei dieser Lösung ist, dass die Liste - bis mal 8 Meldungen dargestellt sind - sich von unten nach oben füllt. - Und schön tabellenartig ausrichten lassen sich die Meldungen leider auch nicht; wegen der verwendeten Proportionalschrift und weil keine Tabulatoren möglich sind.

Viele Grüsse
Bümpi

m.jansen
Beiträge: 219
Registriert: 16.03.2011, 16:30
Wohnort: Aachen

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von m.jansen » 19.04.2011, 14:39

Also schneller gehts devinitiv nicht :!:
Danke nochmal.
Ich werde es heute abens durchtesten,da ich jetzt momentan nur über VNC auf den Homeserver zugreiffen kann von der Arbeit aus.
Vor dem PC direkt zu sitzen ist besser :P

Mfg.
m.jansen

m.jansen
Beiträge: 219
Registriert: 16.03.2011, 16:30
Wohnort: Aachen

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von m.jansen » 19.04.2011, 15:10

Hi nochmal,
hat mich doch zu sehr gejuckt es mal direkt zu testen :mrgreen:
Also ich bekomme immer ne Fehlermeldung im Sensor: S_Aussenfeuchte
Unbekannter Bezeichner -) ANZEIGEMELDUNGEN.MELDUNG8

Hab ein Objekt AnzeigeMeldungen
Das ist als Makro:
Meldung8 := Zeit + " " + Meldung8

AnzeigeMeldungen := Meldung1 + "<<" + Meldung2 + "<<" + Meldung3 + "<<" + Meldung4 + "<<"
AnzeigeMeldungen := AnzeigeMeldungen + Meldung5 + "<<" + Meldung6 + "<<" + Meldung7 + "<<" + Meldung8

Meldung1 := Meldung2
Meldung2 := Meldung3
Meldung3 := Meldung4
Meldung4 := Meldung5
Meldung5 := Meldung6
Meldung6 := Meldung7
Meldung7 := Meldung8
dann im S_Aussenfeuchte das als Makro:
AnzeigeMeldungen.Meldung8 := "Feuchte aussen: " + S_Aussenfeuchte
aufrufen(AnzeigeMeldungen)
Beide dann haken bei Ausführen beim Empfang
Oder habe ich da was falsch gemacht :oops:

Mfg.
m.jansen

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von buempi » 19.04.2011, 15:35

Hallo m.jansen

Du musst noch die 8 Variablen "Meldung1" usw. (Typ Zeichen) im Objekt "AnzeigeMeldungen" definieren. Auch darf in diesem Objekt "Ausführen bei Änderung" NICHT angehakt sein, weil sich sonst das Makro in einem Loop drehen würde: Jeder Durchgang führt zu einer Änderung und diese wieder zur erneuten Ausführung des Makros.

Viele Grüsse
Bümpi

m.jansen
Beiträge: 219
Registriert: 16.03.2011, 16:30
Wohnort: Aachen

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von m.jansen » 20.04.2011, 06:48

Morgen buempi,

vielen Dank nochmal,bin da noch nicht so fit in der Programmierung :( .
Trotzdem geht es jetzt :mrgreen:

Mfg.
m.jansen

m.jansen
Beiträge: 219
Registriert: 16.03.2011, 16:30
Wohnort: Aachen

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von m.jansen » 20.04.2011, 20:35

Hallo buempi,

könntest du mir bitte da nochmal nachhelfen :?:
Also hab jetzt ein Objekt Timeout erstellt.Dort sollten laut der Hilfedatei immer die ausgefallenen HMS sensoren angezeigt werden.
Soweit so gut,hab einen entfernten HMS100TF (nachgebaut vom G..),aber sollte genauso funktionieren wie der ELV.
Jetzt wird wenn ein Timeout kommt, immer nur das Erste angezeigt,nicht so schön aufgelistet wie jetzt der " letzte Empfang".
Könnte man das jetzt auch das so anwenden ,mit der Auflistung,auch mit Datum und uhrzeit in dem Objekt Timeout?

Danke schonmal im Voraus,

Mfg.
m.jansen

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Objekt letzter Empfang mit Datum+Uhrzeit

Beitrag von buempi » 20.04.2011, 20:55

Hallo m.jansen

Homeputer schreibt die Fehlermeldung direkt in das Objekt Timeout. Wir müssen sie also im ersten Schritt auch in eine Variable schreiben und dann läuft's wie vorher:

Code: Alles auswählen

Meldung8 := Zeit + " " + Timeout

Timeout := Meldung1 + "<<" + Meldung2 + "<<" + Meldung3 + "<<" + Meldung4 + "<<"
Timeout := Timeout + Meldung5 + "<<" + Meldung6 + "<<" + Meldung7 + "<<" + Meldung8

Meldung1 := Meldung2
Meldung2 := Meldung3
Meldung3 := Meldung4
Meldung4 := Meldung5
Meldung5 := Meldung6
Meldung6 := Meldung7
Meldung7 := Meldung8
Dieses Makro im Objekt Timeout wird immer automatisch ausgeführt, sobald Homeputer was reingeschrieben hat; unabhängig von der Option "Ausführen bei Änderung". Auch hier wäre es falsch, die Option zu aktivieren!

Ich hoffe, dass du bei den Timeouts nie 8 Zeilen brauchst!

Viele Grüsse
Bümpi

Antworten

Zurück zu „homeputer Studio / Standard: Programmierbeispiele“