Schreiben von werten in Abhängigkeit eines anderen Wert.

Marcel6618

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen.
Ich bräuchte mal eure Hilfe.

Ich habe bei mir zuhause eine Wärmepumpe installiert. Welche ja ab einem Wirkungsgrad x unwirtschaftlich wird. Deshalb habe ich einen Strom- und Wärmemengenzähler mit impulsausgang eingebaut um den wiekungsgrad zu berechen.
Dieser Wirkungsgrad sollte nach Veränderung der Außentemperatur und Austrittstemperatur der Wärmepumpe gespeichert werden.
Bevor die wärmepumpe freigegeben wird, soll sie Außentemperatur und austrittstemperatur mit den gespeicherten Werten vergleichen und den gespeicherten Wirkungsgrad wieder auslesen den ich dann für die Freigabe verwende. Also kurz gefasst.

In Abhängigkeit von 2 Temperaturen einen Wert speichern. Temperatur Veränderung um 1 Kelvin Wert speichern. Usw. Vor Start WP aktuelle Temperaturen mit gespeicherten Temperaturen vergleichen und dann gespeicherten Wert auslesen.

Danke mal für eure Hilfe.

Marcel
 
Versuche mal aus

Vergleicher
pos. Flanken
MOVE
S/R

mal was zusammenzubasteln. ;)

Oder wolltest du ein fertiges Beispiel?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich denke mal, da gibt es vorher noch ein paar grundsätzliche Fragen zu klären.

Wen ich das überhaupt richtig verstanden habe, willst du zuerst einmal deinen Wirkungsgrad in Abhängigkeit von der Änderung einer der beiden Temperaturren speichern. Die Abspeicherung soll erfolgen, wenn Delta T > 1 Grad.

Zuerst mußt du klären, wie du die Werte so abpeichern kannst, dass du sie auch wiederfindest.

Die einfachste Lösung wäre ein Array [a, b], wobei a=Außentemperatur und b= Austrittstemperatur.
Wenn du alle möglichen Wertepaare nimmst bedeutete das für die Außentemperatur -40 bis +40, für die Austrittstemperatur +10 bis +80.
Dann brauchst du ein Array [80, 70], welche bei einer Wirkungsgradabspeicherung als Word 80*70*2 Byte bedeutet, also 11200 Byte.
Das sollte in einer SPS eigentlich möglich sein.

Wenn also eine Temperatur sich ändert und du willst abspeichern, dann speicherst du in dem Arrayelement mit den entsprechenden Temperaturen den Wirkungsgrad ab.

Bsp.: Außentemperatur = 10 grad, Austrittstemperatur = 30 grad, du speicherst den Wirkungsgrad in Zelle [10,30] ab.

Wenn du später die Wärmepumpe wieder freigeben willst, dann nimmst du die beiden Temperaturen und siehst genau in der dazugehörigen Zelle nach.
Ich würde alle Zellen mit -1 vorgelegen, damit man erkennen kann, dass darin noch nie ein Wert gespeichert wurde.
Außerdem mußt du dir überlegen ob die gespeicherten Werte irgendwann ihre Gültigkeit verlieren und gelöscht werden müssen.

Die zweite Möglichkeit wäre eine Liste oder Datenbank, in der du die Wertepaare so, wie sie kommen abspeicherst und in der du später dann danach suchen kannst, aber in Anbetracht dessen, dass das Array nicht zu groß ist, würde ich diese Lösung als die kompliziertere eher nicht empfehlen.

PS: Die Temperaturbereiche habe ich mal so geraten, das kannst du sicher genauer sagen. :)
Bei +40 Grad läuft ja deine Pumpe sicher nicht mehr.
Bei der Abfrage im Array muß man vorher den Wertebereich prüfen, um nicht auf Arrayelemente zuzugreifen, die gar nicht existieren!
 
Zuletzt bearbeitet:
Ich denke mal, da gibt es vorher noch ein paar grundsätzliche Fragen zu klären.

Wen ich das überhaupt richtig verstanden habe, willst du zuerst einmal deinen Wirkungsgrad in Abhängigkeit von der Änderung einer der beiden Temperaturren speichern. Die Abspeicherung soll erfolgen, wenn Delta T > 1 Grad.

Zuerst mußt du klären, wie du die Werte so abpeichern kannst, dass du sie auch wiederfindest.

Die einfachste Lösung wäre ein Array [a, b], wobei a=Außentemperatur und b= Austrittstemperatur.
Wenn du alle möglichen Wertepaare nimmst bedeutete das für die Außentemperatur -40 bis +40, für die Austrittstemperatur +10 bis +80.
Dann brauchst du ein Array [80, 70], welche bei einer Wirkungsgradabspeicherung als Word 80*70*2 Byte bedeutet, also 11200 Byte.
Das sollte in einer SPS eigentlich möglich sein.

Wenn also eine Temperatur sich ändert und du willst abspeichern, dann speicherst du in dem Arrayelement mit den entsprechenden Temperaturen den Wirkungsgrad ab.

Bsp.: Außentemperatur = 10 grad, Austrittstemperatur = 30 grad, du speicherst den Wirkungsgrad in Zelle [10,30] ab.

Wenn du später die Wärmepumpe wieder freigeben willst, dann nimmst du die beiden Temperaturen und siehst genau in der dazugehörigen Zelle nach.
Ich würde alle Zellen mit -1 vorgelegen, damit man erkennen kann, dass darin noch nie ein Wert gespeichert wurde.
Außerdem mußt du dir überlegen ob die gespeicherten Werte irgendwann ihre Gültigkeit verlieren und gelöscht werden müssen.

Die zweite Möglichkeit wäre eine Liste oder Datenbank, in der du die Wertepaare so, wie sie kommen abspeicherst und in der du später dann danach suchen kannst, aber in Anbetracht dessen, dass das Array nicht zu groß ist, würde ich diese Lösung als die kompliziertere eher nicht empfehlen.

PS: Die Temperaturbereiche habe ich mal so geraten, das kannst du sicher genauer sagen. :)
Bei +40 Grad läuft ja deine Pumpe sicher nicht mehr.
Bei der Abfrage im Array muß man vorher den Wertebereich prüfen, um nicht auf Arrayelemente zuzugreifen, die gar nicht existieren!

Danke für die Antwort. Werde mal mein Glück versuchen.
 
Zurück
Oben