Ankündigung

Einklappen
Keine Ankündigung bisher.

EIBPC auf den neusten Stand bringen

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

    #16
    den zähler nutze ich nur für den 15 Minuten Mittelwert. Die Zähler von L&J geben den Wert in W aus. Das Datenformat ist f32. Ich hatte vorher u32 das ging garnicht. Die direkten Werte, also Leistung Haus1, Haus2, etc. zeigen auch alle korrekt an. Nun bei den berechneten Werten kommt nichts. Z.B. die Gesamtleistung bleibt immer leer. Genauso wie meine Graphen, da passiert leider auch nichts. Das muss noch irgendwo ein Bug ein, aber bei diesem Forum bin ich sicher das wir ihn finden ;-)

    Kommentar


      #17
      Zitat von fuchs Beitrag anzeigen
      Das Datenformat ist f32. Ich hatte vorher u32 das ging garnicht.
      Die Frage ist hier ob Du glaubst, das Deine Werte richtig sind (EIS11 bedeutet nur 4Byte, die Interpretation ist ja was anderes) oder weißt, das Deine Werte richtig sind. Was sagt denn der Busmonitor? Plausibel?

      Du kennst diesen Thread oder auch diesen Thread hier?

      Gruß,
      Bernd

      Kommentar


        #18
        ich hatte zuerst die werte als u32. die direkten anzeigen haben dann aber nicht plausieble werte angezeigt. ich habe dann auf f32 umgestellt, ab da zeigen zumindest die werte die nicht berecht werden korrekt an. nur die berechneten weigen sich.

        Eine Frage dazu, wenn ich eine Zuweisung
        in der Art mache:

        Variable=Gruppenadresse

        wird die in jedem Durchlauf ausgeführt und nur einmalig? Oder muss ich es so machen

        if change(Gruppenadresse) the Variable=Gruppenadresse endif

        ?

        Kommentar


          #19
          Hier mal mein derzeitiger Stand. Ich habe jetzt mal die Programmierung ohne das else probiert, mal gucken was dann passiert :-)
          Angehängte Dateien

          Kommentar


            #20
            So, ich habs geschafft, die Anzeige in den Buttons funktioniert nun richtig. Allerdings werden die Diagramme nur mit Nullen gefüllt.

            Die Zähler senden je Minute ihre Werte. Diese summiere ich und zähle mit der Variablen "Minuten" hoch.

            Jede Viertelstunde sollen die Werte dann ins Diagramm geschrieben werden. Hierzu dividiere ich durch den Zähler um den Mittelwert zu erhalten. Dazu wird der Wert noch in f16 konvertiert.

            convert(ZahlerMWB/Minuten,0f16)

            Darf mann das so schreiben oder dürfen in convert keine Berechnungen stehen also so

            convert(ZahlerMWB,0f16)/Minuten

            dann die Minuten natürlich als f16?

            [highlight=epc]

            WebZeit=convert(convert(hour(),0f32)+convert(minut e(),0f32)/60f32,0f16)

            //Mittelwertbildung für Zählerdiagramme
            //Zählerwerte sekündlich aufsummieren und Minuten hochzähler
            Minuten=0f32
            ZahlerMWA=0f32
            ZahlerMWB=0f32
            ZahlerMWC=0f32
            ZahlerMWD=0f32
            ZahlerMWBHKW=0f32
            ZahlerMWBHKWE=0f32
            ZahlerMWGe=0f32
            ZahlerMWZu=0f32
            if stime(00) then {
            Minuten=Minuten+1f32;
            ZahlerMWA=ZahlerMWA+"Leistung Strom-11/1/1";
            ZahlerMWB=ZahlerMWB+"Leistung Strom-11/0/1";
            ZahlerMWC=ZahlerMWC+"Leistung Strom-11/2/1";
            ZahlerMWD=ZahlerMWD+"Leistung Strom-11/5/1";
            ZahlerMWBHKW=ZahlerMWBHKW+"Leistung Strom-11/3/1";
            ZahlerMWBHKWE=ZahlerMWBHKWE+BHKWEigen;
            ZahlerMWGe=ZahlerMWGe+GesamtLeistung;
            ZahlerMWZu=ZahlerMWZu+Zukauf;
            } endif


            //Mittelwerte alle 15 Minuten ins Diagramm schreiben und Variablen wieder auf 0 setzen
            if (mtime(00,00) or mtime(15,00) or mtime(30,00) or mtime(45,00)) then {
            mpchart(ZahlerGA,WebZeit,convert(ZahlerMWA/Minuten,0f16),0,ZahlerID);
            mpchart(ZahlerGB,WebZeit,convert(ZahlerMWB/Minuten,0f16),0,ZahlerID);
            mpchart(ZahlerGC,WebZeit,convert(ZahlerMWC/Minuten,0f16),0,ZahlerID);
            mpchart(ZahlerGD,WebZeit,convert(ZahlerMWD/Minuten,0f16),0,ZahlerID);
            mpchart(ZahlerGBHKW,WebZeit,convert(ZahlerMWBHKW/Minuten,0f16),0,ZahlerID);
            mpchart(ZahlerGBHKW,WebZeit,convert(ZahlerMWBHKWE/Minuten,0f16),1,ZahlerID);
            mpchart(ZahlerGGe,WebZeit,convert(ZahlerMWGe/Minuten,0f16),0,ZahlerID);
            mpchart(ZahlerGGe,WebZeit,convert(ZahlerMWZu/Minuten,0f16),1,ZahlerID);
            Minuten=0f32;
            ZahlerMWA=0f32;
            ZahlerMWB=0f32;
            ZahlerMWC=0f32;
            ZahlerMWD=0f32;
            ZahlerMWBHKW=0f32;
            ZahlerMWBHKWE=0f32;
            ZahlerMWGe=0f32;
            ZahlerMWZu=0f32;
            } endif
            [/highlight]

            Kommentar


              #21
              Also es lag tatsächlich an diesem Befehl:

              convert(ZahlerMWB/Minuten,0f16)

              so darf man also im EIBPC nicht schreiben. Meine Leistungsberechnung stimmen nun alle, die grafische Anzeige funktioniert auch.

              Wie man aber im Bild 3 sieht, sind die Balken im Diagramm etwas breit, sodass sie sich überlappen. Kommt da nochmal eine Besserung? Und was mir noch im Bild 4 aufgefallen ist, der aktuelle Graph ist hinter der Legende. Wenn es mal ein Diagramm gibt, welches die Daten immer von rechts nach links schiebt, also nicht wieder von links anfängt könnte man doch die Legende in die linke Ecke verschieben?
              Angehängte Dateien

              Kommentar


                #22
                Zitat von fuchs Beitrag anzeigen
                convert(ZahlerMWB/Minuten,0f16)

                so darf man also im EIBPC nicht schreiben.
                Hm, ist das jetzt ein Bug oder ein Feature?
                Tessi

                Kommentar


                  #23
                  Zitat von Tessi Beitrag anzeigen
                  Hm, ist das jetzt ein Bug oder ein Feature?
                  Zitat von fuchs Beitrag anzeigen
                  Also es lag tatsächlich an diesem Befehl:
                  convert(ZahlerMWB/Minuten,0f16)
                  Ich bin mir noch nicht sicher, ob ich das richtig verstanden habe.
                  Natürlich muss gehen:
                  [highlight=epc]
                  a=1.2f32
                  b=2454f32
                  c=convert(a/b,0u16)
                  [/highlight]
                  Alles andere (wenn also c==0f32) wäre ein Bug. Oder was meinst Du?
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #24
                    Also ich hatte zuerst folgenden Befehl im PC

                    convert(ZahlerMWB/Minuten,0f16)

                    hiermit kam nur Nullen ins Diagramm. Ich habe mir den Quelltext angeschaut, damit ich sehe ob das mit der Webzeit funktionierte.

                    Ich habe dann nur den Befehl gegen

                    convert(ZahlerMWB,0f16)/Minuten

                    getauscht. Minuten habe ich natürlich vorab in f16 gewandelt. Seit dem funktioniert die Anzeige. Meine Vermutung daher, die Berechnung innerhalb von convert funktioniert nicht?!

                    Kommentar


                      #25
                      Zitat von fuchs Beitrag anzeigen
                      Meine Vermutung daher, die Berechnung innerhalb von convert funktioniert nicht?!
                      An sich sollte das funktionieren. Wenn nicht, brauch ich ein kleines Beispiel zum Nachvollziehen des Bugs
                      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                      Enertex Produkte kaufen

                      Kommentar


                        #26
                        Kein Problem,

                        https://knx-user-forum.de/234720-post11.html

                        hier steht ja mein Quelltext, noch in der nicht funktionierenden Variante. Ich kann euch auch gern den Code zusenden. Wie Ihr wollt.

                        Kommentar


                          #27
                          Zitat von fuchs Beitrag anzeigen
                          hier steht ja mein Quelltext, noch in der nicht funktionierenden Variante. Ich kann euch auch gern den Code zusenden. Wie Ihr wollt.
                          Wie gesagt, am besten in der kleinsten möglichen lauffähigen Codegröße.
                          offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                          Enertex Produkte kaufen

                          Kommentar

                          Lädt...
                          X