Das performance problem ist mir klar, sowie die Lösung mit einem Ringpuffer, obwohl ich ausser STACK_16 und STACK_32 keinen enstprechenden FB in der Bibliothek sehe.
Was ich eigentlich ausser mittelwertbildung brauche, ist einen Puffer der letzten Daten eines Messwertes zur Trendbildung.
Konkret habe ich folgendes Problem:
ich bilde eine Steuerung und Visualisierung mit Codesys HMI, für ein integrierte Hausheizung mit Sonnenkollekoren, Akku und Schnittholzheizung.
Zur Visualisierung benutze ich codesys und vorgesehen ist Visualisierung mit webserver. Ich möchte aber dazu keinen PC ständig laufen lassen, aber nur ab und zu schauen.
Beim connect startet der Trend immer von Null an und füllt sich dann mit neuen Werten. Blick in die Vergangenheit ist nicht möglich, was bei Problemen nützlich sein kann!
Es ist möglich, Trends in der Steuerung zu speichern, ich meine aber es hat keinen Sinn, da die Daten ständig auf Flash geschrieben werden und dieser Speicher dann schnell kaputt geht.
Besser möchte ich eher meine Daten in einen Array (Ram) speichern, und Zugriff auf diese Daten dann bilden (zB mit einem ActivX). Die Menge wäre begrenzt, zb 120 reals, jeweils 1 Wert/Minute, also 2 Stunden. Diese Daten dürfen flüchtig sein. Es ist mir klar, das ein Ringpuffer, wenn sein Daten verfügbar sind, auch brauchbar wäre.
Die Möglichkeit, Daten extern zu schicken habe ich nicht gecheckt, wie gesagt, ich möchten keinen PC oder NAS ständig laufen lassen.
Vielleicht ist die Problematik einer Kurzzeitmesswertspeicherung und Visualisierung schon irgendwoanders gelöst worden?
Vielen Dank für die Bemühung und die Superbibliothek!
Jacques