Step 7 Druck in Temperatur Rechnen via SCALE?

Sany

Level-1
Beiträge
19
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

habe eine kleine Aufgabe zu meistern, an der ich gerade feststecke.

Ich möchte die Drücke eines Druckgebers (Angaben in Bar) in eine Temperatur berechnen.

Bei 0 bar ist die Temperatur -33.0°c und bei 50.0 bar +98.0°c, nun habe ich versucht diese Werte über SCALE zu "normalisieren" aber leider klappt das nicht korrekt.
Weiß jemand ob es eine andere Formel gibt anstatt SCALE? Scale ist ja schon passend, aber die Umrechnung stimmt leider nicht, vermutlich wegen des Faktors.

Entweder denke ich zu kompliziert oder finde nicht den richtigen Baustein, für diese eigentlich doch einfache Aufgabe, die Temperatur werte sind fest zum Druck.

Grüsse,
Daniel
 
Wenn die Temperaturwerte zum Druck fest sind, kannst du dir deinen Baustein doch selbst bauen. SCL oder AWL können das sicher.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Zwischen Deiner Temperatur und Deinem Druck hast Du also keinen linearen Zusammenhang.
Hast Du etwas mehr Informationen? Woher weißt Du das Scale nicht die "richtigen" Werte liefert? Hast Du eine Wertetabelle?
 
Eine Gleichung für die Temperatur wäre meiner Meinung nach

y(°C) = 262 / 10 * x(Bar) - 33

Das ergibt lineare Temperaturwerte.
Code:
[TABLE="width: 160"]
[TR]
[TD="width: 80, align: right"]-33[/TD]
[TD="width: 80, align: right"]0[/TD]
[/TR]
[TR]
[TD="align: right"]-30,38[/TD]
[TD="align: right"]1[/TD]
[/TR]
[TR]
[TD="align: right"]-27,76[/TD]
[TD="align: right"]2[/TD]
[/TR]
[TR]
[TD="align: right"]-25,14[/TD]
[TD="align: right"]3[/TD]
[/TR]
[TR]
[TD="align: right"]-22,52[/TD]
[TD="align: right"]4[/TD]
[/TR]
[TR]
[TD="align: right"]-19,9[/TD]
[TD="align: right"]5[/TD]
[/TR]
[TR]
[TD="align: right"]-17,28[/TD]
[TD="align: right"]6[/TD]
[/TR]
[TR]
[TD="align: right"]-14,66[/TD]
[TD="align: right"]7[/TD]
[/TR]
[TR]
[TD="align: right"]-12,04[/TD]
[TD="align: right"]8[/TD]
[/TR]
[TR]
[TD="align: right"]-9,42[/TD]
[TD="align: right"]9[/TD]
[/TR]
[TR]
[TD="align: right"]-6,8[/TD]
[TD="align: right"]10[/TD]
[/TR]
[TR]
[TD="align: right"]-4,18[/TD]
[TD="align: right"]11[/TD]
[/TR]
[TR]
[TD="align: right"]-1,56[/TD]
[TD="align: right"]12[/TD]
[/TR]
[TR]
[TD="align: right"]1,06[/TD]
[TD="align: right"]13[/TD]
[/TR]
[TR]
[TD="align: right"]3,68[/TD]
[TD="align: right"]14[/TD]
[/TR]
[TR]
[TD="align: right"]6,3[/TD]
[TD="align: right"]15[/TD]
[/TR]
[TR]
[TD="align: right"]8,92[/TD]
[TD="align: right"]16[/TD]
[/TR]
[TR]
[TD="align: right"]11,54[/TD]
[TD="align: right"]17[/TD]
[/TR]
[TR]
[TD="align: right"]14,16[/TD]
[TD="align: right"]18[/TD]
[/TR]
[TR]
[TD="align: right"]16,78[/TD]
[TD="align: right"]19[/TD]
[/TR]
[TR]
[TD="align: right"]19,4[/TD]
[TD="align: right"]20[/TD]
[/TR]
[TR]
[TD="align: right"]22,02[/TD]
[TD="align: right"]21[/TD]
[/TR]
[TR]
[TD="align: right"]24,64[/TD]
[TD="align: right"]22[/TD]
[/TR]
[TR]
[TD="align: right"]27,26[/TD]
[TD="align: right"]23[/TD]
[/TR]
[TR]
[TD="align: right"]29,88[/TD]
[TD="align: right"]24[/TD]
[/TR]
[TR]
[TD="align: right"]32,5[/TD]
[TD="align: right"]25[/TD]
[/TR]
[TR]
[TD="align: right"]35,12[/TD]
[TD="align: right"]26[/TD]
[/TR]
[TR]
[TD="align: right"]37,74[/TD]
[TD="align: right"]27[/TD]
[/TR]
[TR]
[TD="align: right"]40,36[/TD]
[TD="align: right"]28[/TD]
[/TR]
[TR]
[TD="align: right"]42,98[/TD]
[TD="align: right"]29[/TD]
[/TR]
[TR]
[TD="align: right"]45,6[/TD]
[TD="align: right"]30[/TD]
[/TR]
[TR]
[TD="align: right"]48,22[/TD]
[TD="align: right"]31[/TD]
[/TR]
[TR]
[TD="align: right"]50,84[/TD]
[TD="align: right"]32[/TD]
[/TR]
[TR]
[TD="align: right"]53,46[/TD]
[TD="align: right"]33[/TD]
[/TR]
[TR]
[TD="align: right"]56,08[/TD]
[TD="align: right"]34[/TD]
[/TR]
[TR]
[TD="align: right"]58,7[/TD]
[TD="align: right"]35[/TD]
[/TR]
[TR]
[TD="align: right"]61,32[/TD]
[TD="align: right"]36[/TD]
[/TR]
[TR]
[TD="align: right"]63,94[/TD]
[TD="align: right"]37[/TD]
[/TR]
[TR]
[TD="align: right"]66,56[/TD]
[TD="align: right"]38[/TD]
[/TR]
[TR]
[TD="align: right"]69,18[/TD]
[TD="align: right"]39[/TD]
[/TR]
[TR]
[TD="align: right"]71,8[/TD]
[TD="align: right"]40[/TD]
[/TR]
[TR]
[TD="align: right"]74,42[/TD]
[TD="align: right"]41[/TD]
[/TR]
[TR]
[TD="align: right"]77,04[/TD]
[TD="align: right"]42[/TD]
[/TR]
[TR]
[TD="align: right"]79,66[/TD]
[TD="align: right"]43[/TD]
[/TR]
[TR]
[TD="align: right"]82,28[/TD]
[TD="align: right"]44[/TD]
[/TR]
[TR]
[TD="align: right"]84,9[/TD]
[TD="align: right"]45[/TD]
[/TR]
[TR]
[TD="align: right"]87,52[/TD]
[TD="align: right"]46[/TD]
[/TR]
[TR]
[TD="align: right"]90,14[/TD]
[TD="align: right"]47[/TD]
[/TR]
[TR]
[TD="align: right"]92,76[/TD]
[TD="align: right"]48[/TD]
[/TR]
[TR]
[TD="align: right"]95,38[/TD]
[TD="align: right"]49[/TD]
[/TR]
[TR]
[TD="align: right"]98[/TD]
[TD="align: right"]50[/TD]
[/TR]
[/TABLE]
[TABLE="width: 160"]
[TR]
[TD="width: 80, align: right"][/TD]
[/TR]
[/TABLE]
 
Ich möchte die Drücke eines Druckgebers (Angaben in Bar) in eine Temperatur berechnen.

Bei 0 bar ist die Temperatur -33.0°c und bei 50.0 bar +98.0°c, nun habe ich versucht diese Werte über SCALE zu "normalisieren" aber leider klappt das nicht korrekt.
Weiß jemand ob es eine andere Formel gibt anstatt SCALE? Scale ist ja schon passend, aber die Umrechnung stimmt leider nicht, vermutlich wegen des Faktors.
Wie hast Du denn den FC105 parametriert?
Und sind die 0 und 50 bar auch die Grenzen des Sensors oder nur Deine Umrechnungspunkte?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Sorry, hatte erst jetzt wieder Zeit ;-)
Danke für die vielen Antworten, aber ich habe es nun anders hinbekommen. Um euch nicht im Dunkeln zu lassen:
Der Drucksensor hängt an einer Kälteanlage (Ammoniak) das Kältemittel hat für einen bestimmten Druck eine bestimmte Temperatur.

Hatte für die Umrechnung von Druck auf Temperatur, eine Stoffwerte DB mit Umrechnungsfunktion für das Kältemittel R717, hier stimmte plötzlich die Umrechnung nicht mehr (Druck entsprach nicht der umgerechneten Temperatur)

Mein Problem hier war jedoch Simpel, in der Kältetechnik unterscheidet man zwischen Überdruck und absolut Druck, hier fehlte mir leider durch den Umbau der Faktor 1.0, wodurch die Temperatur für absolutdruck berechnet wurde und nicht für Überdruck.

Was mich jedoch nicht schlafen lässt, die Umwandlung von Druck in Temperatur müsste sich doch auch mit SCALE realisieren lassen? (Auch wenn Scale nur Analogeingangssignale umrechnet)

Beispiel, bei 2.00 bara hat das Kältemittel immer -19°c, bei 9,0 bara, 21.5°c
 
Zuletzt bearbeitet:
Wichtig ist hier die Bezugsgröße, von der ausgegangen wird.
Click mal mit der Maus auf "Scale" und dann "F1".
Da siehst du auch die Formel., die verwendet wird.
Siemens geht bei Scale immer von ihren eigene Analogbaugruppen aus.
Die bringen Werte zwischen 0 und 27768 (Wenn ich recht erinnere ;-) ). Von diesen Eingangswerten wird auch ausgegangen.
Ich hab letztens hier im Forum einen eingenen kleinen Baustein als Quelle gepostet, da kann man die Eingangswertebereiche selbst festlegen, ist die gleiche Formel wie im "Scale", aber mit 2 Variablen mehr.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Eine der viele Möglichkeiten als Quelle.

Code:
FUNCTION "REAL_Skalier" : Void
TITLE = REAL_Skalier_SCL
FAMILY : Skalier
VERSION : 0.1
   VAR_INPUT 
      IN_MIN : Real;
      IN_REAL : Real;
      IN_MAX : Real;
      OUT_MIN : Real;
      OUT_MAX : Real;
   END_VAR
   VAR_OUTPUT 
      OUT_REAL : Real;
   END_VAR
   VAR_TEMP 
      IN_REAL_Cache : Real;
   END_VAR

BEGIN
    IN_REAL_Cache :=   LIMIT(MN:=IN_MIN, IN:=IN_REAL, MX:=IN_MAX);
    OUT_REAL := (((IN_REAL_Cache - IN_MIN) / ((IN_MAX - IN_MIN) / 100)) * ((OUT_MAX - OUT_MIN) / 100)) + OUT_MIN;
END_FUNCTION

Bram
 
Du weißt aber schon, dass der Zusammenhang zwischen Druck und Temperatur bei Ammoniak nicht linear ist?
Schon eine Weile her, aber ich glaube mich zu erinnern, dass ich damals die Umrechnung mit einigen LN-Funktionen gebaut habe, und selbst das ist nur eine Approximation.
 
ich hatte das problem auch schon einmal und habe mir da eine lösung geschrieben mit der Funktion "suche in DB".

kann Dir da notfalls helfen wenn erwünscht.

mfg;)
 
Zurück
Oben