Ankündigung
Einklappen
Keine Ankündigung bisher.
Charts mal wieder...... :(
Einklappen
X
-
Sorry, das versteh ich nicht. "Immer nur an einer Stelle ein mpchart ansprechen". Heist das , keine else-anweisung? oder in einer if-abfrage nur einen der 4Graphen updaten (gleichzeitig)?
Ich seh in deinem Code nicht den Unterschied (bis auf die nicht vorhandene else). Du schreibst ne Variable ins chart und ich ne Konstante. Das wird es ja nicht sein, weil ich im normalen Leben auch Variable reinschreibe. Vielleicht kannste das nochmal kurz erläutern
Zitat von enertegus Beitrag anzeigenDas Problem an diesem Code:
Das mpchart-Objekt aktualisiert sich direkt an die Webdarstellung. Wenn nun mehrere solcher Objekte Werte melden, kommt es zu "Nebeneffekten".
Lösung: Immer nur an einer Stelle ein mpchart ansprechen:
[highlight=epc]
Val=23f16
if ("HWR_Licht_Arbeitsplatte-2/0/3") == EIN then Val=63f16 else Val=23f16 endif
if change(Val) then mpchart(1,CountX,Val,3,KellerHeizungID) endif;
[/highlight]
Sorry für die späte Antwort, ist mir durch die Lappen gegangen.
Kommentar
-
Zitat von yapon Beitrag anzeigenDu schreibst ne Variable ins chart und ich ne Konstante. Das wird es ja nicht sein, weil ich im normalen Leben auch Variable reinschreibe. Vielleicht kannste das nochmal kurz erläutern
Zwei gleiche Aufrufe von mpcharts werden daher jeweils ihre eigenen Daten schicken:
If cycle(0,5) then mpchart() endif
If cycle(0,2) then mpchart() endif
Der erste alle 5, der andere alle 2 Sekunden, die Daten sind dann aber unterschiedlich.offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
Enertex Produkte kaufen
Kommentar
-
Die Daten sind dann unterschiedlich?? Weil beim zweiten Aufruf wieder neue dazukommen??
Was heisst das jetzt? Wie muss ich es machen, wenn ich 4 Graphen in einem Chart benutze?
Für jeden Graph eine eigene if-Abfrage?
Oder in einer if-Abfrage allen vieren neue Daten geben? So läuft es im Moment.
Oder nur warten zwischen dem Geben von Daten an die Graphen?
Ich versteh nicht, was du mir sagen willst.
Zitat von enertegus Beitrag anzeigenDer Aufruf von mpchart speichert alle 48-Werte in dem Puffer des mpchart-Objekts ab. Dabei generiert jeder Funktionsaufruf von mpchart eigene Puffer, auch wenn diese am Ende für das selbe Webelement gemacht sind.
Zwei gleiche Aufrufe von mpcharts werden daher jeweils ihre eigenen Daten schicken:
If cycle(0,5) then mpchart() endif
If cycle(0,2) then mpchart() endif
Der erste alle 5, der andere alle 2 Sekunden, die Daten sind dann aber unterschiedlich.
Kommentar
-
Hallo nochmal.....
wer weiß denn, wie man die Charts ansprechen muß um keine 0/0 Punkte zu bekommen?
Oder wer kann mir erklären was Enertegus meint?
Zitat von yapon Beitrag anzeigenDie Daten sind dann unterschiedlich?? Weil beim zweiten Aufruf wieder neue dazukommen??
Was heisst das jetzt? Wie muss ich es machen, wenn ich 4 Graphen in einem Chart benutze?
Für jeden Graph eine eigene if-Abfrage?
Oder in einer if-Abfrage allen vieren neue Daten geben? So läuft es im Moment.
Oder nur warten zwischen dem Geben von Daten an die Graphen?
Ich versteh nicht, was du mir sagen willst.
Kommentar
-
Zitat von yapon Beitrag anzeigenHallo nochmal.....
wer weiß denn, wie man die Charts ansprechen muß um keine 0/0 Punkte zu bekommen?
2. Dieses Funktion-Objekt merkt sich auch gleich die "alten" Werte, die übermitteln soll durch deren Aufruf.
3. Eine weitere Instanz des Objekts (also eine zweite Funktion, die auf das gleiche Chart zugreift), speichert eigene Werte, davon völlig unabhänigige Werte.
=> immer nur an einer Stelle mpchart aufrufen:
[highlight=epc]
Val =0f16
if event("HWR_Licht_Arbeitsplatte-2/0/3") or event ("HWR_TestTaste-4/0/1") then {
if ("HWR_TestTaste-4/0/1") == EIN then {
if ("HWR_Licht_Arbeitsplatte-2/0/3") == EIN then {
Val=63f16;
} else {
Val=23f16;
} endif;
mpchart(1,WebZeit,Val,3,KellerHeizungID);
}
[/highlight]
Schau Dir den Code im Vergleich zu Deinem genau an: Hier wird das mpchart für das Webelement genau 1x verwendet. Nun sollte das klappen.
Klarer?offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
Enertex Produkte kaufen
Kommentar
-
Zitat von Uwe! Beitrag anzeigenalso allgemeiner ausgedrückt, darf die Kombination aus ID und PageID bei einem mpchart(ID, VarX, VarY, Index,PageID) im gesamten Soucrecode nur einmal vorkommen, richtig?
offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
Enertex Produkte kaufen
Kommentar
Kommentar