Ankündigung

Einklappen
Keine Ankündigung bisher.

Anlagenstatus einer Alpha Innotec Wärmepumpe (Luxtronik 1.0)

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

    Zitat von saft6luck Beitrag anzeigen
    Der eibPC legt leider immer noch regelmäßig Pausen ein.
    % Event: sendtcp(iPad_WZ_Port,iPad_WZ_I..:ERR_PROC_OBJECT_M SG_OUT@2014-04-12 09:17:06
    Offenbar kann eine TCP Anfrage Verbindung nicht mehr an CF geschickt werden. Wieviele iPads und CF Seiten hast Du da im Betrieb?
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      Zitat von enertegus Beitrag anzeigen
      Offenbar kann eine TCP Anfrage Verbindung nicht mehr an CF geschickt werden. Wieviele iPads und CF Seiten hast Du da im Betrieb?
      Es ist nur eines in Betrieb, die anderen habe ich im Code entfernt.
      BR
      Marc

      Kommentar


        Zitat von saft6luck Beitrag anzeigen
        Es ist nur eines in Betrieb, die anderen habe ich im Code entfernt.
        Korrelieren die Angaben oben mit deinem iPad und deiner Konfig?
        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
        Enertex Produkte kaufen

        Kommentar


          Zitat von enertegus Beitrag anzeigen
          Korrelieren die Angaben oben mit deinem iPad und deiner Konfig?
          Ja, schon, es ist das verwendete iPad. Ich hatte das Problem am Donnerstag gesehen bzw. versucht einzugrenzen und dann bis auf dieses alle anderen iPads rausgenommen. Den Ereignisspeicher hatte ich allerdings nicht ausgelesen.
          BR
          Marc

          Kommentar


            Zitat von saft6luck Beitrag anzeigen
            Der eibPC legt leider immer noch regelmäßig Pausen ein.

            ...

            Meist alle 5 Minuten ist der eibPC derart beschäftigt, dass er nichts mehr macht, dann bleibt auch kurz die Visu stehen.

            Getestet mit nur einem iPad/CommandFusion, bei 20ms Zykluspause. Maximale Zyklus-Laufzeit ist 999ms, Patches: 3.008.ptc.
            Es ist auch schon (oder immer noch) mehrfach passiert, dass die Rollos nicht gefahren sind oder die Displays nicht auf Nachtbetrieb gingen.
            Hey Marc,

            hast Du Interesse an meiner veränderten Makro Version?
            Hab das Makro dahin verändert, dass zwischen dem Parsen der einzelnen Blöcke paar Hundert ms Pause ist, damit der EibPC "Luft zum atmen" bekommt..

            Grüße
            Matthias

            Kommentar


              Zitat von enertegus Beitrag anzeigen
              Wir haben das weiter untersucht bzw. arbeiten hier noch. Wie es ausschaut, wird durch die hohe Last, in jedem Zyklus, den anderen Prozessen zu wenig Luft zum atmen gegeben.
              Hallo Michael,

              kann man dies als "Bug" bezeichnen?
              Wann ist der nächste Stammtisch? Bin ja mal auf das fränkische Bier gespannt

              Grüße
              Matthias

              Kommentar


                Zitat von Matthias Beitrag anzeigen
                hast Du Interesse an meiner veränderten Makro Version?
                Hab das Makro dahin verändert, dass zwischen dem Parsen der einzelnen Blöcke paar Hundert ms Pause ist, damit der EibPC "Luft zum atmen" bekommt..
                Grundsätzlich ja.

                Hab nur heute den ganzen Tag nebenbei damit verbracht, die Zeiten der einzelnen Blöcke so zu optimieren und dann zu zerschneiden, dass die Blöcke weniger als 800ms brauchen.

                Sind in Summe dann 30 Blöcke. Erst dann bekomme ich keinen Ereigniseintrag mehr.

                Der gezeigte Code erzeugt einen netten Auslastungsgraphen. Leider ist er nur gültig, solange es keinen "Überlauf" gibt. Im Falle eines Überlaufs wird der Wert meist ausgelassen oder beeinflusst den Graph später. Insbesondere bei Updates jede Sekunde sieht man das chart dann ruckeln. In vernünftigen Bereichen >1min ist das natürlich ok, dann kann man aber nicht so schön debuggen.

                [highlight=epc]
                [WebServer]
                page (0)[$Allgemein$,$Logger$]
                design $black$
                header(0)
                line $eibPC Auslastung$
                mtimechart(1)[LONG,NOAUTOSCALE,192,0,1000,0,1000] ( $AktZyklusZeit$,LEFT, ChartBuffer1, $MaxZyklusZeit$,RIGHT, ChartBuffer2)
                footer(0)

                [EibPC]
                // Berechnet die minimale und maximale Zyklusdauer
                // der Verarbeitung. Dabei ist die Performance-Angabe im EibStudio immer
                // als Offset dabei.
                Max=1000000000000000u64
                Restzeit=0u64
                StoppZeit=Max
                AktZyklusZeit=0u64
                MaxZyklusZeit=0u64
                MinZyklusZeit=Max
                // Im EibStudio ggf. geändert, Defaultwert ist 20ms (funktioniert nicht, bei Werten >0 ergibt sich ein Überlauf)
                PerformanceZeit=0u64

                // Timebuffer IDs vergeben:
                ChartBuffer1=0
                ChartBuffer2=1
                // timebufferconfig: Einen Zeitbuffer konfigurieren
                TimeBuffer_MemTyp=0
                TimeBuffer_Len=3000u16
                ResultTimeBuffer0=timebufferconfig(ChartBuffer1, TimeBuffer_MemTyp, TimeBuffer_Len, 0u32 )
                ResultTimeBuffer1=timebufferconfig(ChartBuffer2, TimeBuffer_MemTyp, TimeBuffer_Len, 0u32 )


                // Die erste Zyklus kann etwas länger dauern ...
                if afterc(after(systemstart(),10000u64), Max, Restzeit) then {
                StoppZeit=0u64;
                } endif
                if change(Restzeit) then {
                AktZyklusZeit=max(StoppZeit-Restzeit-PerformanceZeit,AktZyklusZeit);
                MaxZyklusZeit=max(StoppZeit-Restzeit-PerformanceZeit,MaxZyklusZeit);
                MinZyklusZeit=min(StoppZeit-Restzeit-PerformanceZeit,MinZyklusZeit);
                StoppZeit=Restzeit;
                } endif

                if cycle(0,01) then {
                // Werte in den Buffer schreiben
                timebufferadd(ChartBuffer1,convert(AktZyklusZeit,0 u32));
                timebufferadd(ChartBuffer2,convert(MaxZyklusZeit,0 u32));
                AktZyklusZeit=0u64;
                } endif

                [/highlight]

                Wenn ich die Pausen zwischen den Blöcken auf 2sec stelle, das Makro jede Minute aufrufe und die Grafik jede Sekunde update ergibt sich diese Auslastung. Man kann dann jeden einzelnen Block recht gut sehen.
                Ohne das WP-Makro ist es etwas entspannter (2. Bild, man beachte die Skala, auch hier ist hellblau das Maximum).

                Das Makro fängt übrigens mit dem ansteigenden Maximum an, wird kurz ruhiger und zeigt dann einen Burst. Dann kommt nach einer kurzen Pause das nächste Makro.
                Angehängte Dateien
                BR
                Marc

                Kommentar


                  Zitat von saft6luck Beitrag anzeigen
                  Grundsätzlich ja.
                  Ok, habs mal hier angehangen.
                  Ich hoffe ich habe keine Fehler reingebaut - habe eben noch mein ganzes Syslog-Logging rausgeschmissen.
                  Das Makro macht zwischen dem Parsing der einzelnen Blöcke immer 250ms Pause. Das lief zuletzt bei mir reibungslos.
                  Habe auch noch ein "Retry" eingebaut. Bei mir kam es machmal vor, dass die WP nicht richtig gelesen wurde. Jetzt wird bis zu 3x ein neuer Versuch gestartet.
                  Außerdem hatte Michael (Jambala) in seinem Makro ein paar kleine Fehler beim Parsing. Hab die soweit alle ausgemerzt.
                  Hoffe es hilft.
                  Wie viele Stunden in das Debugging geflossen sind.. Neenee..

                  Grüße
                  Matthias
                  Angehängte Dateien

                  Kommentar


                    Hallo Community,

                    ich bin neu in diesem Forum und wende mich mit einer Frage an euch. Ich habe bereits das halbe Internet durchsucht :-) und habe nur hier Postings gefunden, die mich hoffen lassen zu meinem Problem eine Lösung oder Hinweise zu finden. Ich bedanke mich bereits im Voraus für Tipps von euch.

                    Ich habe eine Alpha Innotec Wärmepumpe mit einer Luxtronik 1.0 Steuerung (V2.4). Den Anlagenstatus kann ich z.B. mit 1800 abfragen. Ich bin dabei ein kleines Script zu schreiben, dass folgendes können soll:

                    1 Abfrage und Steuerung des Betriebsmodus (Heizung / Kühlung)
                    2 Abfrage der Brauchwassertemperatur
                    3 Abfrage und Steuerung der Temperatur des Wärmekreislaufs

                    2 und 3 habe ich bereits gelöst, bei 1 habe ich in diesem Bereich gelesen (Beitrag von Swenga), dass mit 6300 der Kühlmodus abgefragt werden kann.
                    Bei mir kommt aber bei 6300 "778;1;6300" was wohl bedeutet, dass die Steuerung nicht versteht was ich will. Die Frage der Steuerung des Kühlmodus stellt sich dann auch noch, mir wär aber schon geholfen wenn ich abfragen kann ob der Kühlmodus aktiv ist oder nicht.

                    Kann mir jemand dabei weiterhelfen?

                    Vielen Dank im Voraus,
                    Hugo

                    Kommentar


                      Zitat von Technologiezentrum Beitrag anzeigen
                      Hallo Community,

                      Ich habe eine Alpha Innotec Wärmepumpe mit einer Luxtronik 1.0 Steuerung (V2.4). Den Anlagenstatus kann ich z.B. mit 1800 abfragen. Ich bin dabei ein kleines Script zu schreiben, dass folgendes können soll:
                      Hallo,

                      auf welche Programmiersprache setzt du? Für die Luxtronik 1 habe ich ein Perl-Modul geschrieben. Zum Einstieg:

                      Perl-Modul für Luxtronik 1 Steuerung (Alpha-Innotec)

                      Bin mir aber jetzt nicht sicher, ob auf der Website die aktuellste Version liegt.

                      Im übrigen kann ich mittels OpenHAB und diesem Modul meine Luxtronik per Smarthone steuern (s. Screenshots)

                      Gruß,
                      thoern
                      Angehängte Dateien

                      Kommentar


                        Zitat von thoern Beitrag anzeigen
                        Hallo,

                        auf welche Programmiersprache setzt du?
                        Gruß,
                        thoern
                        Ich mache das mit PHP, da das die Grundlage meiner Haussteuerungssoftware ist (IP-Symcon).
                        Es fehlt mir nur noch die Implementation des Betriebsmodus (Heizung / Kühlung).

                        Wenn ich 6300 per Terminal schicke, kommt die besagte Meldung, die ich als Fehlermeldung interpretiere. Hast du die Option "Kühlen" implementiert?

                        Gruß, Hugo

                        Kommentar


                          Nein. habe ich leider nicht.
                          Wenn du eine Übersicht mit den Abfragecodes brauchst, schick mir deine Mailadresse per PN. Der 6300-er Code kommt in der Übersicht aber auch nicht vor.

                          Gruß,
                          thoern

                          Kommentar

                          Lädt...
                          X