Ankündigung

Einklappen
Keine Ankündigung bisher.

Langzeitaufzeichnung (Chart) mal wieder

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Langzeitaufzeichnung (Chart) mal wieder

    Hi,

    hab mir die Macros so angesehen... das was ich will scheint aber so nicht ganz dabei zu sein,
    deswegen hab ich mich mal selber hingesetzt und versucht was umzusetzen.
    Leider funktioniert das so irgendwie nicht ganz.. vielleicht kann mir einerm
    mal ein paar Tipps geben wie das besser bzw. überhaupt funktioniert.

    Hintergrund:

    ich hab eine Variable die mir den gesamten Stromverbrauch von gestern
    darstellt. Diesen Stromverbrauch hätte ich jetzt gern in einem Chart mit
    Balkendarstellung. Das ist soweit ja nicht das Problem. Das Funtkioniert soweit
    ganz gut.. und sieht auch super aus. Nach einem Neustart des EibPC's sind
    die Daten allerdings weg.

    Mein Ansatz war jetzt. Die Daten in einen String zu schreiben. Jeden Morgen
    den Wert des Vortages einfach hinten Anfügen. (mit Trennzeichen)
    Dann nach einem Neustart einen Loop über den String zu machen, der mir
    dann jeweils die einzelnen Positionen ausliest und wieder in das Chart schreibt...
    das gleiche dann mit meiner zweiten Variable (DayofMonth) die mir
    für die X-Achse einfach die benötigten Zahlen liefert... (1-31) ..

    was ich bisher hab:

    [highlight=epc]
    //Stromdiagramm

    ges_Strom_String = $$
    ges_Strom_varString = $$
    ges_Strom_startpos = 0u16
    ges_Strom_endpos = 0u16
    ges_Strom_gespos = 0u16
    ges_Strom_gespos_xt = 0u16
    ges_Strom_gespos_t1 = 0u16
    ges_Strom_gespos_t2 = 0u16
    ges_Strom_Zeit = $$
    ges_Strom_var_Zeit= $$
    n = 99u16

    //bei Systemstart String auslesen
    if after(systemstart(),20000u64) then {
    readflash(ges_Strom_String, 50u16);
    readflash(ges_Strom_Zeit, 51u16);
    n=0u16
    } endif

    //String aufbauen
    if mtime(00,00) or mtime (30,00) then {
    ges_Strom_String = ges_Strom_String + $;$ + convert(gesakttagverbrauch, $$);
    ges_Strom_Zeit = ges_Strom_Zeit + $;$ + convert(dayofmonth, $$)
    } endif

    //Start und Endposition des Strings
    if change(n) then {
    ges_Strom_gespos = size (ges_Strom_String);
    ges_Strom_gespos_xt= size (ges_Strom_Zeit)
    } endif

    if change(n) then {
    ges_Strom_startpos = find (ges_Strom_String, $;$, n);
    ges_Strom_gespos_t1 = find (ges_Strom_Zeit, $;$, n)
    } endif

    if change(n) then {
    ges_Strom_endpos = find (ges_Strom_String, $;$, n+1u16);
    ges_Strom_gespos_t2 = find (ges_Strom_Zeit, $;$, n+1u16)
    } endif

    //String für Chart
    if change(n) then {
    ges_Strom_varString = split(ges_Strom_String,ges_Strom_startpos,ges_Stro m_endpos);
    ges_Strom_var_Zeit= split(ges_Strom_Zeit, ges_Strom_gespos_t1+1u16, ges_Strom_gespos_t2)
    } endif

    if change(n) then {
    mpchart(16,convert(ges_Strom_var_Zeit,0f16),conver t(ges_Strom_varString,0f16),0,Strom3ID);
    if n==31u16 then n=n else n=n+1u16 endif
    } endif


    //Beim String die erste Position abschneiden
    if mtime(01,00) or mtime (31,00) then {
    ges_Strom_String = split(ges_Strom_String,ges_Strom_endpos,ges_Strom_ gespos);
    ges_Strom_Zeit = split(ges_Strom_Zeit,ges_Strom_gespos_xt,ges_Strom _gespos_t2);
    writeflash(ges_Strom_varString, 50u16);
    writeflash(ges_Strom_var_Zeit, 51u16)
    }endif

    [/highlight]

    wie gesagt das ganze funktioniert noch gar nicht ... aber vielleicht bekommen wir das
    gemeinsam irgendwie hin...

    Gruß Martin

    EDIT: ich glaub ich muss mir mal die Funktion stringcast anschaun...
    EDIT2: die mtime(xx,yy) hab ich nur drin, damit ich nicht immer bis Mitternacht warten muss.. wird dann in ein htime(00,00,00) geändert
    Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

    #2
    Hallo Martin,

    ich habe mich auch bereits daran versucht, dann aber keine Lust mehr gehabt weil das zurückschreiben in die Charts immer nur zu blödsinnigen Chartverläufen führte.

    Es lassen sich auf keiden Fall alle Wertepaare einfach hintereinander in das Chart zurückschreiben. Das habe ich auch ohne Schleifen mit langen Listen von Wertepaaren erfolglos versucht.

    Ich warte nun erst einmal was die nächste Firmware in Sachen Charts bringt, bevor ich hier endlose Zeit in eine an sich einfache Funktionalität investiere.

    Das Thema Charts ist leider an vielen Stellen sehr rudimentär gelöst.

    Viele Grüße

    Michael

    Kommentar


      #3
      oohhhh.. ok... hab da nämlich auch noch keine wirklichen Erfolge erziehlt..
      hab allerdings auch noch nicht großartig weiter gemacht..

      trotzdem irgendwie schade...
      Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

      Kommentar


        #4
        muss gestehen, dass ich es ähnlich handhabe. Ich hab so ca. 10 Grafiken, aber serh brauchbar sind die alle nicht. Ich investiere da aber aktuell keine ZEit, weil da einfach zuviel Grundlagen fehlen, die man mühsam manuell ausbügeln müsste.
        Ich hoffe noch immer, das bald ein Update kommt, mit dem dann vernünftige Diagramme möglich sind.
        ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

        Kommentar


          #5
          jetzt is halt die Frage, wart ich noch.. oder bastel ich weiter...
          hab ich das richtig im Kopf das mit dem Webserver erst wieder Mitte
          nächsten Jahres was passiert ??? weiß nicht ob ich so lang warten will...
          Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

          Kommentar


            #6
            Das Zieldatum wurde bisher nicht genannt, sondern nur der mögliche Umfang:

            https://knx-user-forum.de/250522-post70.html

            Aber da das Thema Floating Chart schon geschätzte 2 Jahre auf der Agenda ist, solltest Du Dir selbst einen Plan überlegen ...

            Kommentar


              #7
              Plan überlegen
              rrd auf NAS oder WG installieren?
              und die Anzeige als Webseite einbinden?

              so in Etwas?
              EPIX
              ...und möge der Saft mit euch sein...
              Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

              Kommentar


                #8
                Zitat von EPIX Beitrag anzeigen
                rrd auf NAS oder WG installieren?
                und die Anzeige als Webseite einbinden?

                so in Etwas?
                mir wär eine EIBPC eigene Lösung lieber
                Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

                Kommentar


                  #9
                  Zitat von Jambala Beitrag anzeigen
                  Das Zieldatum wurde bisher nicht genannt, sondern nur der mögliche Umfang:
                  Wir haben ab 1.11. Projektstart für die Visu ("Echtzeit"). Das wird wohl so bis Mitte Februar dauern, danach sollen auch die Charts und die Stringverarbeitung erheblich erweitert werden. Ich kann da nur schlecht schätzen, aber es dauert meistens länger als ich hoffe... Immerhin ist dann schon mal der Router weg, aber SynOhr kommt dann wohl auch noch in den Vertrieb...
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #10
                    Zitat von enertegus Beitrag anzeigen
                    Wir haben ab 1.11. Projektstart für die Visu ("Echtzeit"). Das wird wohl so bis Mitte Februar dauern
                    coole News... Merci..

                    na mal schaun ob und was ich dann in der Richtung noch mache...
                    Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

                    Kommentar


                      #11
                      Zitat von enertegus Beitrag anzeigen
                      Wir haben ab 1.11. Projektstart für die Visu ("Echtzeit"). Das wird wohl so bis Mitte Februar dauern, danach sollen auch die Charts und die Stringverarbeitung erheblich erweitert werden. Ich kann da nur schlecht schätzen, aber es dauert meistens länger als ich hoffe... Immerhin ist dann schon mal der Router weg, aber SynOhr kommt dann wohl auch noch in den Vertrieb...
                      Ich drücke Euch die Daumen. Wenn die drei Themen bis zum Frühjahr umfangreich verbessert werden, wäre das ein riesiger Schritt nach vorne...

                      Kommentar


                        #12
                        Vielleicht könnten die werten Nutzer mal notieren, welche Eigenschaften Sie bei den Charts genau erwarten...?

                        Ich möchte beispielsweise 3 Jahre lang alle 5 Minuten einen f32 speichern. Zur Anzeige möchte ich dann eine x-Achse haben, bei der ich angeben kann das ich z.B. den Bereich zwischen dem 3.12.2012 und dem 7.12.2012 sehen will. Dazu brauche ich eine y-Achse wo die f32-Werte eingetragen werden und die dann autmatisch skaliert
                        Passend dazu möchte ich im gleichen Chart einen Binärwert als Balkendiagramm im Hintergrund haben und weiterhin einen Stellwert mit 0..255 (0-100%) was ja auch mit einem f32 lösbar sein dürfte. f16 vermeide ich aus den bereits dargelegten Gründen.

                        Weiterhin möchte ich gerne einen Chart haben wo ich im ersten Diagramm eine x-Achse mit Zeitangaben habe z.B. 3.12.2012 und im zweiten Diagramm dann eine weitere x-Achse die genau um eine Zeit t verschoben ist. Hintergrund: Ich möchte Meßreihen aus gleichen Zeitabschnittlängen zu unterschiedlichen Zeiten vergleichen.
                        Beispiel: Gasverbrauch im Dezember 2011 und 2012

                        Und zusätzlich hätte ich gerne ein x-y-Balkendiagramm wo ich Werte für die x-Achse vorgeben kann und wo dann in der y-Achse die entsprechenden Werte als Säule auftauchen.
                        Beispiel auch hier: Mein No-Frost Gefrierschrank geht in regelmäßigen Abständen an und aus. Wenn er aber mal wieder vereist am Auslauf, dann ändern sich die Perioden und Abstände, mit denen er an- und ausgeht. Ich würde jetzt gerne meinen "optimalen Zustand" einfangen im Sinne von
                        Zeitraum für 24 Stunden.
                        an Anzahl
                        3 min 2
                        4 min 5
                        5 min 12
                        6 min 24
                        7 min 45
                        8 min 122
                        9 min 100
                        10 min 84
                        11 min 61

                        usw. Dann bekomme ich eine annähernde Gaußverteilung. Hat der Schrank Probleme, so bekomme ich eine Verschiebung die ich optisch sofort sehen kann und die mit dem EibPC so nicht einfach auszuwerten ist.

                        So, bin da, wer noch?

                        Gruß,
                        Bernd

                        Kommentar


                          #13
                          Die Anforderungen von Bernd unterstütze ich voll, insbesondere die Kombinationsmöglichkeit von verschiedenen Datentypen in einem Chart.

                          Darüberhinaus habe ich noch folgende Punkte:

                          - Charthöhe und -breite frei wählbar (angelehnt an das Schachbrett des Webserver), also nicht nur max. doppelt so groß wie heute

                          - deutlich mehr Werte als die max. 48 Werte heute, min. 60x24 Werte

                          - Vorgabemöglichkeit für die Skalierung beider Achsen, automatisch oder fester Wert

                          - Floating Chart

                          - Vorgabemöglichkeit für das Weiterschieben des Charts (Floating Chart), automatisch bei Erreichen der max. Werte oder fester Wert (z.B. alle 24h)

                          - Positionierung der Legende nicht mehr so nah an den Kurven

                          - Möglichkeit Daten strukturiert aus dem Remanentspeicher in ein Chart zurückzuschreiben

                          Viele Grüße

                          Michael

                          Kommentar


                            #14
                            Ich hab hier
                            https://knx-user-forum.de/eibpc/1126...tml#post263279
                            geantwortet
                            offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                            Enertex Produkte kaufen

                            Kommentar

                            Lädt...
                            X