Systemvariable loggen mit CUxD und Highcharts

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Mr.Burns
Beiträge: 67
Registriert: 18.09.2010, 14:33

Systemvariable loggen mit CUxD und Highcharts

Beitrag von Mr.Burns » 29.10.2014, 13:43

Hallo zusammen,

ich versuche seid ein paar Tagen erfolglos eine interne Systemvariable der CCU zu loggen.
Irgendetwas ist falsch mit der Übergabe oder der Aufzeichnung.
Das aufzeichnen von normalen CUxD sowie CCU Datenpunkten funktioniert, ebenso die Trenddarstellung unter Highcharts.

Ein Systemgerät (28) mit dem Namen Logger (CUX.2801002) ist angelegt.

Ist die Systemvariable (STROM,Zeichenkette) größer oder gleich null und ändert sich ihr wert, wird folgendes Script ausgelöst:
object o = dom.GetObject("STROM");
if (o) {
dom.GetObject("CUxD.CUX2801002:1.LOGIT").State(o.Name()#";"#o.Value());
}

Folgende Änderungen in den Parametern wurde vorgenommen:
DEVLOGFILE=/tmp/devlog.txt
DEVLOGSIZE=
DEVLOGMOVE=/media/sd-mmcblk0/cuxd/devlog
SUBSCRIBE_RF=1
SUBSCRIBE_WR=1
LOGIT=CUX2801001:1 << Ist dieser Eintrag nötig bzw. richtig???
Wahrscheinlich ist der Fehler ganz klein, aber ich komme nicht drauf. Hoffe jemand kann mir helfen.

Gruß

Benutzeravatar
uwe111
Beiträge: 3677
Registriert: 26.02.2011, 23:22
Kontaktdaten:

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von uwe111 » 29.10.2014, 15:05

Hast Du's schon mal so (wie in der CUxD-Doku beschrieben) probiert?

Code: Alles auswählen

object o = dom.GetObject("$src$");
Mr.Burns hat geschrieben:LOGIT=CUX2801001:1 << Ist dieser Eintrag nötig bzw. richtig???
Nein, ist nicht notwendig!

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.1.0, RFD-Monitor, Vellemann K8055, SSH KeyDir

paul53
Beiträge: 2440
Registriert: 26.04.2012, 20:42
Wohnort: Berlin

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von paul53 » 29.10.2014, 15:40

Mr.Burns hat geschrieben:Ist die Systemvariable (STROM,Zeichenkette) größer oder gleich null und ändert sich ihr wert, wird folgendes Script ausgelöst:
Ob sich der Wert ändert, ist mit den Bedingungen dess WebUI-Programmes nicht feststellbar. Das Programm muss bei Aktualisierung ausgelöst werden.
Ob eine Wertänderung stattgefunden hat, lässt sich innerhalb des Scripts testen:

Code: Alles auswählen

object o = dom.GetObject("$src$");
if (o)
{ if (o.Value() <> o.LastValue()) 
  { dom.GetObject("CUxD.CUX2801002:1.LOGIT").State(o.Name()#";"#o.Value());
  }
}
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Mr.Burns
Beiträge: 67
Registriert: 18.09.2010, 14:33

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von Mr.Burns » 29.10.2014, 16:58

Hat funktioniert. Ich hab bestimmt 5 verschiedene Script ausprobiert und nichts hat funktioniert. Das aus dem Handbuch wohl in abgewandelter Form...was bedeutet "$src$" ich kann kein "C". Klau mir das immer so zusammen.

Ich vermute mal, das es 2 Fehler waren, das fehlerhafte script und die Ausführung bei Aktualisierung.
Geht das nicht auf die Performance der CCU wenn die jeden Zyklus dieses Programm abarbeitet?
Ist dann wohl auch bei jedem Script, welches über eine Systemvariable getriggert wird, oder?

Das loggen der variable funktioniert jetzt (sieht man unter Info ->Devicelog), allerdings öffnet sich das Highcharts nicht mehr.
Wenn ich versuche direkt über CCU ->Systemsteuerung->Zusatzprogramme->Highcharts->Menu->Charts anzeigen erscheint die Fehlermeldung: Fehler: "keine CUxD LOGIT Zeile gefunden! lade cuxd.ini"
Wenn ich es über CUxD öffne bekomme ich keine Fehlermeldung nur die Ladeseite angezeigt (ohne Datenpunkte, Werte etc.)

Muss vielleicht doch etwas in die LOGIT Zeile unter Parameter?

Gruß

Benutzeravatar
uwe111
Beiträge: 3677
Registriert: 26.02.2011, 23:22
Kontaktdaten:

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von uwe111 » 29.10.2014, 17:11

Mr.Burns hat geschrieben:Muss vielleicht doch etwas in die LOGIT Zeile unter Parameter?
es ist möglich, dass HighCharts nach einer LOGIT= Zeile im Setup sucht.
Vielleicht funktioniert dann auch LOGIT=xyz. Einfach probieren.

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.1.0, RFD-Monitor, Vellemann K8055, SSH KeyDir

paul53
Beiträge: 2440
Registriert: 26.04.2012, 20:42
Wohnort: Berlin

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von paul53 » 29.10.2014, 17:26

Mr.Burns hat geschrieben:...was bedeutet "$src$" ich kann kein "C".
Hat nichts mit "C" zu tun, sondern ist in der HM-Script-Doku, Teil 1, Punkt 7.2 beschrieben.
Mr.Burns hat geschrieben:Geht das nicht auf die Performance der CCU wenn die jeden Zyklus dieses Programm abarbeitet?
HomeMatic kennt keine zyklische Abarbeitung von Programmen, außer es ist mittels Zeitmodul eine zyklische Abarbeitung programmiert. Das Programm wird immer dann ausgelöst, nachdem die SV durch das Programm, das die SV setzt, aktualisiert wurde.
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Mr.Burns
Beiträge: 67
Registriert: 18.09.2010, 14:33

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von Mr.Burns » 29.10.2014, 23:12

Danke, es funktioniert. LOGIT=xyz hab ich noch nicht ausprobiert, aber wenn man einen anderen Datenpunkt setzt z. B. eine Temperatur aus der Homematic, findet er auch Datenpunkte im Highchart und öffnet es problemlos.

Das mit LOGIT=xyz werd ich aber noch ausprobieren.

Danke für die Information bzw. des Scripts. Ich hab die Beschreibung schon mal überflogen aber nicht so gut verstanden, deshalb auch nicht behalten. Muss mich dafür entschuldigen, mit etwas Fleiß hätte ich mir die Frage selber beantworten können.

Prüfen auf Aktualisierung bedeutet also, das auf Änderung der Aktualität nicht des wertes getriggert wird. Hatte ich immer falsch verstanden...wieder was gelernt. Danke.

Gruß

Benutzeravatar
uwe111
Beiträge: 3677
Registriert: 26.02.2011, 23:22
Kontaktdaten:

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von uwe111 » 29.10.2014, 23:22

Mr.Burns hat geschrieben:Das mit LOGIT=xyz werd ich aber noch ausprobieren.
Musst Du nicht. Das war nur ein Beispiel, falls Dir kein anderer Datenpunkt einfällt. :)
Könnte auch LOGIT=sh7623jsf sein. :)

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.1.0, RFD-Monitor, Vellemann K8055, SSH KeyDir

peissl.at
Beiträge: 1246
Registriert: 16.05.2010, 12:39
Wohnort: Südwestlich von Graz

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von peissl.at » 30.10.2014, 22:05

Hi,

ich logge mehr als 20 Systemvariablen. Alle mit nur einem Programm, und dem obigen Script.

Es ist definitiv kein "LOGIT=irgendwas" nötig

Sonnige Grüße!
Robert

Gesendet von meinem iPad mit Tapatalk HD

Benutzeravatar
uwe111
Beiträge: 3677
Registriert: 26.02.2011, 23:22
Kontaktdaten:

Re: Systemvariable loggen mit CUxD und Highcharts

Beitrag von uwe111 » 31.10.2014, 00:21

Hallo Robert,
peissl.at hat geschrieben:Es ist definitiv kein "LOGIT=irgendwas" nötig
Zum Loggen natürlich nicht! Aber zum Starten von HighCharts schon.

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.1.0, RFD-Monitor, Vellemann K8055, SSH KeyDir

Antworten

Zurück zu „CUxD“