Скачиваний:
18
Добавлен:
25.04.2015
Размер:
222.1 Кб
Скачать

SOLVAY

FLUOR UND DERIVATE GMBH

SOLKANE

Stoffdatenmodul

Visual Basic

Version 2.0 09/99

Postfach 220

Telefon:

0511/857-0

D-30002 Hannover

Telefax:

0511/857-21 66

Hans-Böckler-Allee 20

E-mail:

andrea.neubert@solvay.com

D-30173 Hannover

Internet:

http://www.solvay.com

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Formelzeichen, Abkürzungen und Begriffe

Formelzeichen

Formel-

Maß-

Erläuterung

zeichen

einheit

 

 

 

 

c

J/(kg K)

Spezifische Wärmekapazität

h

J/kg

Spezifische Enthalpie

M

g/mol

Molare Masse

p

Pa

Druck

s

J/(kg K)

Spezifische Entropie

T

K

Temperatur

v

m³/kg

Spezifisches Volumen

w

m/s

Schallgeschwindigkeit

κ

-

Adiabatenexponent

λ

W/(m K)

Wärmeleitfähigkeit

η

Pa s

Dynamische Viskosität

σ

N/m

Oberflächenspannung

Abkürzungen und Begriffe

Indizes Erläuterung

c Kritischer Punkt p p = const.

v v = const.

‘ Gesätt. Flüssigk., Siedepunkt ‘’ Gesättigter Dampf, Taupunkt

B, b:

Siedepunkt (Bubble point)

D, d:

Taupunkt (Dew point)

DLL:

Dynamic Link Library

Exportroutine:

In einer DLL implementierte Prozedur oder Funktion, die von dieser DLL

 

exportiert wird.

F:

Flüssige Phase

G:

Gasphase

Importroutine:

Prozedur oder Funktion, die extern in einer DLL implementiert ist und von

 

einem Anwenderprogramm aufgerufen wird.

IPar_:

Formaler Eingabeparameter.

Primärfunktion:

Privat deklarierte Importroutine in einem VBA-Modul

Refr, ref:

Formaler Parameter zur Übergabe einer Kältemittelbezeichnung.

RPar:

Formaler Parameter, in dem das Ergebnis einer Berechnung übergeben

 

wird.

Sekundärfunktion: In einem VBA-Modul implementierte Funktion, die eine Primärfunktion

 

aufruft.

S_Name

Platzhalter für einen Funktionsnamen.

VB

Visual Basic

VBA

Visual Basic for Applications

-2-

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Über diese Broschüre

Diese Broschüre wendet sich an jene, die das Herzstück unseres SOLKANE-Programms für Kältemittel - das Modul zur Berechnung thermodynamischer Stoffdaten - in eigenen Windows-Programmen einsetzen möchten.

Seit wir das SOLKANE-Programm als eine moderne Form der Produktinformation über Kältemittel an unsere Kunden weitergeben, haben bereits zahlreiche Interessenten von dieser Möglichkeit Gebrauch gemacht. Allerdings hat die Praxis gezeigt, daß es selbst versierten Programmierern unter Umständen nicht sofort gelingt, das Stoffdaten-Modul in eigene Programme einzubinden. Simple Tippfehler, Portabilitätsprobleme bei unterschiedlichen Entwicklungsplattformen und falsch eingesetzte Funktionen können viel Zeit, Geld und Nerven kosten.

Mit der vorliegenden Broschüre wollen wir einige Erfahrungen weitergeben, die mit dem Einsatz unseres Stoffdatenmoduls in verschiedenen Entwicklungsplattformen gesammelt wurden. Im Vordergrund stehen dabei einfache und leicht nachvollziehbare Methoden. Aus diesem Grunde sind die Erläuterungen bewußt auf relativ einfach handhabbare statische Importmethoden beschränkt.

Im ersten Teil der Broschüre finden Sie Anleitungen und Beispiele zum Import der Stoffdatenfunktionen in Ihre Programme. Ausführliche Funktionsbeschreibungen und Quelltexte sind im Anhang zusammengestellt. Alle Quelltexte und Beispielprogramme sind auch in Form von Dateien auf dem beiliegenden Datenträger enthalten. Dazu gehört auch ein Add-In ”SOLKANE.XLA” für EXCEL 7 (und höher), das Sie sofort einsetzen können.

Es ist kaum möglich, die große Anzahl verschiedener Programmiersprachen (und versionsspezifischer Unterschiede) in ganzer Breite zu berücksichtigen. In dieser ersten Auflage sind Beispiele für die Programmiersprachen

Delphi , Version 2 bis 4

MS Visual Basic, Version 6.0

Visual Basic for Applications (EXCEL 7)

enthalten. Es ist beabsichtigt, nach und nach auch weitere Programmiersprachen einzubeziehen.

Alle Beispiele befassen sich mit der 32-Bit-Version des Stoffdatenmoduls. Auf Unterschiede zwischen der 16und der 32-Bit-Version wird im Text hingewiesen.

-3-

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Das SOLKANE-Stoffdatenmodul

Funktionen thermischer Eigenschaften

Das SOLKANE-Stoffdatenmodul stellt Stoffdatenfunktionen aller wesentlichen thermischen

Eigenschaften von Kältemitteln für

die flüssige Phase,

die Gasphase

sowie Sättigungstemperatur und -druck am Siedeund Taupunkt

im kältetechnisch wichtigen Zustandsbereich (i.allg. p < pC) zur Verfügung (siehe Anhang). Im einzelnen sind dies Funktionen folgender Eigenschaften:

1.

Siedeund Taupunktdruck:

p’ = f(T) und p” = f(T)

2.

Siedeund Taupunkttemperatur:

T’ = f(p) und T” = f(p)

3.

Spezifisches Volumen, Flüssigkeit:

v’ = f(T)

4.

Druck, Gasphase:

p = f(T, v)

5.

Spezifisches Volumen, Gasphase:

v = f(p, T)

6.

Temperatur, Gasphase:

T = f(p, v), T = f(p, h) und T = f(p, s)

7.

Spezifische Enthalpie, Flüssigkeit:

h’ = f(T)

8.

Spezifische Enthalpie, Gasphase:

h = f(T, v) und h = f(T, p)

9.

Spezifische Entropie, Flüssigkeit:

s’ = f(T)

10. Spezifische Entropie, Gasphase:

s = f(T, v) und s = f(T, p)

11. Spez. Wärmekapazität, Flüssigkeit:

c’ = f(T)

12. Spez. Wärmekapazität, Gasphase (p=const.):

cp = f(T, v) und cp = f(T, p)

13. Spez. Wärmekapazität, Gasphase (v=const.):

cv = f(T, v) und cv = f(T, p)

14. Adiabatenexponent, Gasphase:

κ = f(T, v) und κ = f(T, p)

15. Schallgeschwindigkeit, Gasphase:

w = f(T, v) und w = f(T, p)

16. Wärmeleitfähigkeit, Flüssigkeit:

λ‘ = f(T)

17. Wärmeleitfähigkeit, Gasphase:

λ = f(T, p)

18. Dynamische Viskosität, Flüssigkeit:

η‘ = f(T)

19. Dynamische Viskosität, Gasphase:

η = f(T, p)

20. Oberflächenspannung:

σ = f(T)

21. Charakteristische Daten (Molare Masse, kritische Temperatur, kritischer Druck, ...)

-4-

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Bild 1: Druck-Enthalpie-Diagramm für zeotropes Kältemittelgemisch (schematisch)

T’(p) und T”(p) wiedergegeben.

Die Eigenschaften der Gasphase, einschließlich der Taulinie, können entweder als Funktion f(T,p) oder f(T,v) berechnet werden.

Die Flüssigkeit wird innerhalb des interessierenden Zustandsbereichs als inkompressibel angesehen. Aus diesem Grunde werden Eigenschaften der flüssigen Phase nur als Funktion der Temperatur dargestellt.

Die Sättigungsdrücke bzw. Sättigungstemperaturen am Siedeund Taupunkt werden durch spezielle Funktionen p’(T), p”(T),

Für einkomponentige Kältemittel (z.B. R134a) oder azeotrope Gemische (z.B. R507) gilt p’(T) = p”(T) und T’(p) = T”(p). Wie Bild 1 zeigt, gilt hingegen bei zeotropen Gemischen (z.B. R407C) p’(T) > p”(T) und T’(p) < T”(p). Auf diesen Sachverhalt sei hier besonders hingewiesen, da er eine häufige Fehlerquelle darstellt.

Eine Sonderrolle spielen die nur für die Gasphase gültigen Funktionen T(p,s) und T(p,h). Sie können insbesondere bei der Berechnung von Verdichtungsprozessen sehr effektiv eingesetzt werden.

Struktur

Das SOLKANE-Stoffdatenmodul für 32-Bit-Applikationen besteht aus zwei DLLs (Dynamic Link Libraries) - REF_CALC32.DLL und VAR_LIB32.DLL.

Das Schema in Bild 2 zeigt die prinzipielle Struktur eines Programmes, das mit dem SOLKANE Stoffdatenmodul verbunden ist.

-5-

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Bild 2: Grundstruktur eines Programmes mit dem SOLKANE-Stoffdatenmodul

In VAR_LIB32.DLL sind die eigentlichen Stoffdatenroutinen enthalten. Die DLL REF_CALC32 stellt eine Schnittstelle zum Anwenderprogramm dar. Sie exportiert die benötigten Stoffdatenfunktionen an das Anwenderprogramm und organisiert intern den Zugriff auf VAR_LIB32.DLL.

Für das Anwenderprogramm ist REF_CALC32.DLL stets das ”aktive” Modul. Es bleibt dem Anwender (bzw. dem Anwenderprogramm) überlassen, wie der Zugriff auf REF_CALC32.DLL organisiert wird. Der Zugriff ist am einfachsten realisierbar, wenn sich REF_CALC32.DLL im gleichen Ordner wie das ausführbare Programm oder im Windows- System-Verzeichnis befindet, da das ausführbare Programm automatisch an diesen Positionen nach der DLL sucht.

Weiterhin muß sichergestellt sein, daß die DLL REF_CALC32 auf VAR_LIB32 zugreifen kann. Grundsätzlich sollten sich daher beide DLLs im gleichen Ordner befinden.

Das SOLKANE-Stoffdatenmodul für 16-Bit-Applikationen besteht aus den Komponenten REF_CALC.DLL und VAR_LIB.DLL.

Allgemeine Syntax der Stoffdatenfunktionen

Das SOLKANE-Stoffdatenmodul ist in BORLAND DELPHI® erstellt. In REF_CALC32.DLL werden insgesamt 34 Funktionen (Exportroutinen) thermodynamischer Eigenschaften und Transportgrößen bereitgestellt. Die allgemeine Syntax dieser Funktionen lautet:

Function S_Name(Refr [;IPar_1] [;IPar_2] ; RPar)

Die Funktionen S_Revision (sieheAnhang) ist die einzige Ausnahme von dieser Regel.

Funktionsname:

Name ist ein Platzhalter für einen Funktionsbezeichner. Der komplette Funktionsname wird aus dem Bezeichner und einer vorangestellten Zeichenkette S_ gebildet.

Eingabedaten:

Refr: Null terminierter String, enthält Kältemittelbezeichnung (z.B. ‘R134a’, ‘R407C’, ...)

-6-

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

IPar_n: 8 Byte Gleitkomma, enthält unabhängige Parameter (z.B. Druck, Temperatur usw.)

Die Anzahl der Eingabedaten hängt von dem jeweiligen Problem ab.

Ausgabedaten:

RPar: 8 Byte Gleitkomma, gibt Ergebnis der Berechnung zurück (abhängiger Parameter). RPar ist im allgemeinen der letzte Parameter der Parameterliste.

Rückgabewert der Funktion:

2 Byte boolescher Parameter. Der Rückgabewert der Funktion ist der Fehlerstatus der Berechnung:

TRUE (1) : Ein Fehler ist aufgetreten.

FALSE (0) : Es ist kein Fehler (!!) aufgetreten.

Die Eingabedaten sind per Wertkopie, die Ausgabedaten per Referenz zu übergeben.

Für jede thermodynamische Eigenschaft oder Transportgröße ist eine eigene Funktion vorhanden.

Funktionsimport aus dem SOLKANE Stoffdatenmodul

Visual Basic

Grundsätze

1.Das Anwenderprogramm muß Zugriff auf die DLLs REF_CALC32 und VAR_LIB32 haben. Beide DLLs sollten sich deshalb im gleichen Ordner wie das Anwenderprogramm oder im Windows-System-Verzeichnis befinden.

2.Die zu importierenden Funktionen (Importroutinen) sind im Anwenderprogramm zu vereinbaren.

3.Die im Anwenderprogramm vereinbarte Importroutine muß an Hand des Funktionsnamens eindeutig auf eine in REF_CALC32.DLL implementierte Funktion (Exportroutine) weisen. Achtung! Groß-/Kleinschreibung beachten!

4.Die in den Importroutinen deklarierten Parametertypen müssen mit denen der Exportroutinen in REF_CALC32.DLL kompatibel sein.

5.Importund Exportroutinen müssen hinsichtlich der vereinbarten Art der Parameterübergabe (per Wert oder per Referenz) übereinstimmen.

-7-

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Der Anhang enthält eine komplette Zusammenstellung aller für VB gültigen

Funktionsvereinbarungen.

Ein Listing der Importvereinbarungen aller von REF_CALC32.DLL bereitgestellten Funktionen ist im Anhang enthalten.

Im beigefügten Modul ImportVB6.bas sind die Importvereinbarungen aller von REF_CALC32.DLL bereitgestellten Funktionen komplett implementiert.

Syntax

Für die Vereinbarung der Importroutinen gilt folgende allgemeine Syntax:

[Private] Declare Function S_name Lib "REF_CALC32.DLL" _

(ByVal Refr As String [,ByVal IPar_1 As Double][,ByVal IPar_2 As Double],

_

ByRef RPar As Double) As Boolean;

Hinweis: Die obige Syntax ist ein Beispiel für den statischen Import von Funktionen.

Parametertypen

Folgende Parametertypen sind bezüglich der vom SOLKANE-Stoffdatenmodul bereitgestellten Exportroutinen in VB zuweisungskompatibel.

Nullterminierter String:

String

8

Byte Gleitkommazahl:

Double;

2

Byte Boolean:

Boolean (Werte: true und false) oder

Integertypen (z.B. Byte, Integer; Werte: 0 und 1)

Die Schlüsselworte ”ByVal” (Wert) und ”ByRef” (Referenz) definieren die Übergabeart. Das Ergebnis der Berechnung ist jeweils per Referenz zu übergeben.

Beispiel

Für das Kältemittel sollen die Verdichtungsendtemperatur tV2 (in °C) und die spezifische Verdichtungsarbeit wt (in kJ/kg) eines theoretischen Verdichtungsprozesses bei folgenden Bedingungen berechnet werden:

Verdampfungstemperatur: 0°C;

Kondensationstempertur: 45°C;

Sauggasüberhitzung:

20 K;

isentroper Gütegrad:

0,7

-8-

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Dieses Beispiel demonstriert insbesondere den Nutzen der Funktionen S_f_entro und S_f_entha.

Implementation:

'Schritt 1: Vereinbarung der Importroutinen

'Funktion Nr. 7: Taupunktdruck

Private

Declare Function S_p_d

Lib

"REF_CALC32.DLL" (ByVal Refr As String,

_

 

 

 

 

ByVal T

As Double, ByRef p_d As Double) As Boolean

' Funktion Nr. 15: Enthalpie, Gasphase

 

Private

Declare Function S_h_v Lib "REF_CALC32.DLL" (ByVal Refr As String,

_

 

 

 

 

ByVal T

As Double, ByVal p As Double, ByRef h_v As Double) As Boolean

' Funktion Nr. 18: Entropie, Gasphase

 

Private

Declare Function S_s_v Lib "REF_CALC32.DLL" (ByVal Refr As String,

_

 

 

 

 

ByVal T

As Double, ByVal p As Double, ByRef s_v As Double) As Boolean

' Funktion Nr. 20: Temperatur T=f(p,s), Gasphase

Private

Declare Function S_f_entro Lib "REF_CALC32.DLL" (ByVal Refr As

String,

_

 

 

 

ByVal p

As Double, ByVal s As Double, ByRef f_entro As Double) As Boolean

' Funktion Nr. 21: Temperatur T=f(p,h), Gasphase

Private

Declare Function S_f_entha Lib "REF_CALC32.DLL" (ByVal Refr As

String,

_

 

 

 

ByVal p

As Double, ByVal h As Double, ByRef f_entha As Double) As Boolean

' Schritt 2: Implementation Berechnung (Auszug)

Private

Sub CalcProcess()

 

 

 

Dim T0, TC, p0, pC, TV1, hV1, sV1, _

 

TV2_is, hV2_is, TV2, hV2, wt, Eta_is As Double

Dim Retur As Boolean

 

 

 

Dim Refr As String

 

 

' Parameterdeklaration

Refr = "R134a"

 

 

' Vorgabe Kältemittel

Eta_is = 0.7

 

 

' Vorgabe isentroper Gütegrad

T0 = 0 + 273.15

 

 

' Vorgabe Verdampfungstemperatur T0 [K]

TC = 45 + 273.15

 

 

' Vorgabe Kondensationstemperatur TC [K]

TV1 =

20 + T0

 

 

' Vorgabe Ansaugtemperatur TV1 [K]

Retur

= S_p_d(Refr, T0, p0)

 

 

'Saugdruck p0 [Pa]

Retur

= S_p_d(Refr, TC, pC)

 

 

'Gegendruck pC [Pa]

Retur

= S_h_v(Refr, TV1, p0, hV1)

 

'Enthalpie hV1 [J/kg], Sauggas

Retur

= S_s_v(Refr, TV1, p0, sV1)

 

'Entropie sV1 [J/kgK], Sauggas

Retur

= S_f_entro(Refr, pC, sV1, TV2_is)

 

 

'Isentrope Verdichtungsendtemperatur TV2_is [K]

Retur

= S_h_v(Refr, TV2_is, pC, hV2_is)

 

'Enthalpie bei isentroper Verdichtung hV2_is [J/kg]

wt = (hV2_is - hV1) / Eta_is

 

 

'Spezifische Verdichterarbeit wt [J/kg]

hV2 =

hV1 + wt

 

'Enthalpie am Verdichtungsendpunkt hV2 [J/kg]

Retur

= S_f_entha(Refr, pC, hV2, TV2)

'Verdichtungsendtemperatur TV2 [K]

' Maßeinheitenumrechnung

 

 

 

TV2 =

TV2 - 273.15

 

 

'Verdichtungsendtemperatur TV2 [°C]

wt = wt / 1000

 

'Spezifische Verdichtungsarbeit wt [kJ/kg]

...

 

 

 

 

' Ergebnisausgabe

 

 

 

...

 

 

 

 

End Sub

 

 

 

 

Ergebnis:

tV2 = 79,7 °C

wt = 45,1 kJ/kg

-9-

Bild 3: Beispielprogramm Sol_VB6

SOLVAY FLUOR UND DERIVATE GmbH

 

SOLKANE® Stoffdatenmodul

Visual Basic6.0

Visual-Basic-Beispielprojekt ”SOL_VB6”

Das unter Microsoft Visual Basic 6.0 erstellte Projekt SOL_VB6 zeigt anhand von Beispielen, wie die Funktionen des SOLKANE-Moduls in einer VB-Entwicklungsumgebung eingesetzt werden.

Das gesamte Projekt besteht aus folgenden Dateien:

1.

Sol_vb6.vbp, Sol_vb6.vbw:

VB6-Projektdateien

2.

Form1.frm, Form1.frx:

Formulardateien

 

3.

ImportVB6.bas

VB-Modul mit

Vereinbarungen der externen

 

Funktionen

 

 

4.

Sol_VB6.exe

Ausführbare Programmdatei

Die DLLs REF_CALC32 und VAR_LIB32 sollten entweder in den Projektordner oder in das Windows-System-Verzeichnis kopiert werden.

Achtung! Sol_VB6.exe benötigt zusätzlich die DLLs Msvbvm60.dll und Oleaut32.dll. Beide sind verteilbare Bestandteile der Microsoft VB6-Entwicklungsumgebung, haben aber keine unmittelbar Bedeutung für die Funktionstüchtigkeit des SOLKANEModuls. Wenden Sie sich bitte an uns, falls Sie diese Dateien benötigen.

Das aus dem Sol_VB6-Projekt erstellte ausführbare Programm Sol_VB6.exe können Sie selbstverständlich auch für einen ausführlichen Test des SOLKANE-Moduls nutzen.

Mit Hilfe der beiden Auswahlboxen

”Refrigerant” und ”Function” (siehe Bild 3) wählen Sie Kältemittel und Zustandsfunktion aus. Die jeweils gewünschten Eingabedaten sind in die Editierfelder ”Temperature” bis ”Entropy” einzutragen. ”Calculate” löst die Berechnung aus. Das Ergebnis wird im Feld ”Result” dargestellt. Das Feld

”Error” gibt den Fehlerstatus der letzten Berechnung an (FALSE bedeutet ”kein Fehler” !!).

-10-

Соседние файлы в папке SOL_VB6
  • #
    25.04.201517.28 Кб18Form1.frm
  • #
    25.04.20152.22 Кб17Form1.frx
  • #
    25.04.2015215.44 Кб20HelpVBE.pdf
  • #
    25.04.2015222.1 Кб18HilfVBD.pdf
  • #
    25.04.20155.33 Кб16ImportVB6.bas
  • #
    25.04.2015890 б16SOL_VB6.vbp
  • #
    25.04.201582 б16SOL_VB6.vbw