Home
Dokument
Contents
1. 4444444HHHRRRRRR Rn Rn Rn Rn nn nn nn nn nenn nennen nn ernennen Aufnahme stopper anne asien dB RIDE nie a a Soundkartentreiber schlie en nnnn nn Audiodaten in ein wav File schreiben uu2222022200000nnnnnn nn nn nnnnnnnnnnnnnn nun nnnnnnnnnnnnnnnnnnnn san nn 103
2. Bild 67 Sound Eingang konfigurieren Zun chst muss der Soundeingang konfiguriert werden Dazu ben tigt das Objekt SI Config vi Informationen ber die verwendete Karte oberster Eingang Da jedoch blicherweise pro PC nur eine Soundkarte vorhanden ist kann dieser Eingang offen bleiben oder man verwendet die Standardeinstellung 0 Der Eingang Soundformat ben tigt einen Cluster in dem die Informationen ber die Soundqualit t stereo oder mono die Abtastrate 8 11 025 21 5 44 1 KHz und die Aufl sung 8 oder 16 bit enthalten sind Die Puffergr e sollte zwischen 8192 Bytes 8 kB bei einer mono 8 bit Aufnahme und 65335 Bytes 64 kB liegen Von diesem Objekt wird auch die Task ID erstellt die alle anderen Objekte die mit der Aufzeichnung von Audiodaten zu tun haben als Eingangsgr e zwingend ben tigen 87 Task ID Eingang Task ID Ausgang Fehler Eingang kein Fehler Fehler Ausgang SI Starten SI Start vi Bild 68 Aufnahme starten Wenn die Konfiguration abgeschlossen ist kann die Aufnahme mit dem Objekt SI Start vi gestartet werden Die Soundkarte beginnt nun Daten aufzunehmen und in den Puffer zu schreiben Von dort m ssen die Daten mit dem Objekt SI Read vi ausgelesen werden Mono 5 Bit Mono 16 Bit Task ID Eingang Task ID Ausgang Fehler Eingang kein Fehler Fehler Ausgang Stereo 16 Bit Stereo 8 Bit SI Lesen SI Read vi Bild 69 Audi
3. und berechnung_sub vi referenziert 7 zumindest so lange bis erneut gemessen wird weil die Daten dann berschrieben werden 62 I RefNum stringZnum BtringZnum Aw Bild 35 VI Referenz auf string2num_sub vi Die Funktion und der Sinn von Call by Reference wurden bereits in Kapitel 3 2 2 beschrieben Das ben tigte Bedienelement VI RefNum string2num YvI Rerklum string2nurm HI Bild 36 VI RefNum Bedienelement normalerweise ausgeblendet wird ausgeblendet da der Benutzer zum einen keine Eingaben vornehmen soll zum anderen auch gar keine Eingaben vornehmen kann Dennoch wird es ben tigt um das Objekt VI Referenz ffnen anzusteuern Dies geschieht aber im Quellcode bei der Programmierung durch Auswahl des VI Servers und nicht im normalen Betrieb In Rahmen 3 befindet sich das eigentliche Messprogramm Wie bereits in Kapitel 3 3 4 beschrieben besteht dieses aus einer gro en while Schleife die so lange wiederholt wird bis der Benutzer den Button Ende bet tigt Der Ablauf des Messprogramms soll nun anhand eines Schleifendurchlaufes erkl rt werden Der Schleifendurchlauf beginnt mit einer aus 8 Rahmen bestehenden Sequenz die den Multiplexer mit den durch das Sub VI agilent_steuerung_sub vi bereitgestellten Steuerstrings steuert und die gesendeten Daten aus dem Eingangspuffer der RS232 Schnittstelle ausliest Diese Sequenz befindet sich in Rahmen 3 oben links die Auswa
4. 6 0 75 C 0 5959 0 0314 B 0 1840 B 0 0029 B ke ep p i 0 0900 L q y L Hierbei bedeuten akt Dpr A p D Durchmesserverh ltnis von Blende zu Rohr lt 1 Rohr Rep Reynoldszahl bezogen auf den Rohrdurchmesser De l das Verh ltnis des Abstandes der Druckentnahme im Einlauf von der D korr Blendenstirnseite zum Rohrdurchmesser das Verh ltnis des Abstandes der Druckentnahme im Auslauf von der L l Blendenr ckseite zum Rohrdurchmesser L bedeutet den Bezug auf D rohr den Abstand von der Blendenr ckseite an L w rde sich auf den Abstand von der Blendenstirnseite beziehen D Unterscheidung von D ga Flansch und Eck Druckentnahmen Eck Druckentnahme Li L 0 D und Druckentnahme Li 1 L 0 47 Flansch Druckentnahme 25 4 L L 2 D Rohr 10 Expansionszahl e e 1 0 41 0 35 AP K Ps Ap sL Die Expansionszahl e ber cksichtigt die Kompressibilit t des Fluids Bei langsamen Str mungen oder bei geringen Druckerh hungen kann die Str mung jedoch als inkompressibel betrachtet werden d h e 1 Ma assenstrom qm C T qm 7 er Reynoldszahl Rep Re 4 g Am T Don n Bestimmung des Massenstroms mittels einer Messblende gem DIN EN ISO 5167 1 von 1998 Seit der nderung der Norm im April 1998 wird der Durchflusskoeffizient C nicht mehr durch die Stolz Gleichung bestimmt sondern durch die Reader Ha
5. Bild 5 Prinzipskizze D senmessung Gem Norm ist wie bei der Blendenmessung eine Iteration notwendig um die voneinander abh ngigen Gr en Re C und qm zu bestimmten Die Berechnung von qm und Re erfolgt analog zur Berechnung bei der Blendenmessung lediglich die Gleichung zur Bestimmung des Durchflusskoeffizienten C ist eine andere Durchflusskoeffizient C bei ISA D sen D 6 1 15 C 0 9900 0 2262 B 0 00175 B 0 0033 B Durchflusskoeffizient C bei Langradiusd sen 6 05 C 0 9965 0 00653 B a Rep sofern es sich um eine in eine Rohrleitung eingebaute D se handelt s13 Es ist jedoch m glich und blich den Volumenstrom bei bekannter Dichte der Umgebungsluft durch eine Normd se mit bekannter Durchflusszahl zu ermitteln wodurch man sich den Aufwand f r eine iterative Berechnung sparen kann Die Berechnungsgleichung lautet 2 12 V Ap a Fa 2 2 3 Dynamische und kinematische Viskosit t Zur Bestimmung der Reynoldszahl wird die dynamische bzw kinematische Viskosit t eines Fluids ben tigt Allgemein l sst sich schreiben c L Er Re wobei c eine Str mungsgeschwindigkeit L eine charakteristische L nge und v die kinematische Viskosit t sind Die kinematische Viskosit t v h ngt mit der dynamischen Viskosit t ber die Dichte zusammen v P Bei Luft h ngt die dynamische Viskosit t n im Bereich zwischen 0 und 5 bar haupts chlich von der Temperatur ab
6. Hauptprogramm des Messdatenerfassungssystems aamdes_0 9 3sim vi VI Hauptprogramm jedoch wird hier ein der Pr fstand simuliert d h man kann mit dem Programm ohne angeschlossene Messhardware Multiplexer messen agilent_steuerung_sub vi VI stellt die Steuerstrings in SCPI f r den Multiplexer zur Verf gung und errechnet die notwendigen Wartezeiten Synchronisierung array_sort vi Sub VI Sortiert ein 2D Array nach einer w hlbaren Spalte oder Zeile auswertung vi Sub VI wie der Name schon sagt werden mit diesem VI die gemessenen Ergebnisse ausgewertet Das Frontpanel wird bei Aufruf ge ffnet so dass der User die n tigen Eingaben vornehmen kann Dieses VI erm glicht das Betrachten der verschiedenen gemessenen Gr en in einem XY Diagramm dazu werden die Koeffizienten eines an diese Kurve angepassten Polynoms w hlbaren Grades ausgegeben berechnung_sub vi Sub VI in diesem VI werden alle n tigen aerodynamischen Berechnungen durchgef hrt config_sub vi Sub VI Verwaltungsprogramm f r alle Parameter und Konstanten 57 geo_read_sub vi Sub VI liest einen bestimmten Teilbereich aus einer Konfigurationsdatei kalib vi VI Hilfsprogramm zum Erstellen einer Kalibrierkurve kalib_global vi globale Globale Variable in der die Kalibrierwerte Variable gespeichert werden kalib_sub vi Sub VI Unterprogramm in dem au
7. 67 Mit der Anzeige der Werte auf dem Display und der Speicherung in dem Speicher Array ist ein Zyklus aus Messen Umwandeln Verarbeiten Anzeigen und Speichern abgeschlossen Parallel dazu werden aber noch andere Strukturen verarbeitet Bild 43 Starten des Sub VIs auswertung vi bei Bet tigung des Schalters Auswerten Zum einen wird das Sub VI auswertung vi gestartet und dessen Frontpanel angezeigt wenn der Benutzer den Schalter Auswerten bet tigt und bereits mehr als 2 Messpunkte aufgenommen wurden vorher macht eine Polynomanpassung auch keinen Sinn gt p Bild 44 Code zum verringern des Z hlers f r die Messpunkte Zum anderen wird bei Bet tigen des Schalters letzten l schen der Wert der Variablen Messpunkt um eins verringert Da dieser Wert als Zeilenindex f r das Speicher Array verwendet wird bedeutet dies dass die Werte des n chsten Messpunktes ber die Werte des zuletzt gemessenen geschrieben werden Dies funktioniert jedoch nur in dem Speicher Array Die Zeile in der Dateiausgabe muss nach Beendigung des Programms manuell gel scht werden da die Datei immer sofort nach dem Ende eines Messzyklus geschrieben wird Wird nun ein Messpunkt gel scht berschrieben dann erscheinen in der Ausgabedatei zwei oder auch mehr Zeilen mit gleicher Messpunktnummer Die richtigen Werte stehen dann immer in der unteren Zeile Es ist auch m glich durch mehrmaliges Bet tigen
8. Fehler anzeigen dient dazu wie der Name schon sagt Fehler aus dem Fehlerspeicher der Multiplexers auszulesen und anzuzeigen Der Schalter sollte nur bet tigt werden wenn die Schalter Messen und online aus sind sonst kann der Multiplexer die ankommenden Befehle nicht verarbeiten und bricht mit einer Fehlermeldung ab Die ausgelesenen Fehlermeldungen werden nach dem Abruf aus dem Fehlerspeicher gel scht Im linken oberen Bereich befinden sich auch die Men s mit denen der Benutzer die Pr fstandskonfiguration ausw hlen kann Die Anwahl der Konfiguration e wird berechnet macht nur bei Wahl der Konfiguration Blendenmessung Sinn Im rechten oberen Bereich befinden sich die Bedienelemente mit denen der Benutzer die Messdatenerfassung und die Sound Aufnahme steuern kann Durch Bet tigen des Schalters online wechselt das Programm in die Betriebsart online Messung d h die Berechnungen werden ber nur 10 vom Multiplexer gemittelte Messpunkte durchgef hrt Bei Bet tigung des Schalters Messung wechselt das Programm f r einen Zyklus in die Betriebsart Messung d h die Berechnungen werden ber eine bestimmte Anzahl gemittelter Messpunkte gr er 30 durchgef hrt Die Betriebsart Messung hat Vorrang vor der Betriebsart online Messung d h wenn online angew hlt ist und der Schalter Messen gedr ckt wird dann schlie t die Software den laufenden Programmzyklus ab we
9. timewait vi und haben nur den Zweck die Ausf hrung dieses Beispielprogramms so zu verlangsamen dass man den nderungen auf dem Frontpanel folgen kann Den Eingangs beschriebenen definierten Zustand erreicht man durch die for Schleife in Rahmen 2 der Sequenz die genau einmal ausgef hrt wird und dann wieder auf einen neuen Datensatz wartet bevor sie erneut ausgef hrt wird 86 Die verwendeten Schieberegister sind im oben dargestellten Beispiel nicht unbedingt notwendig Sie wurden aber verwendet da es mit einer kleinen nderung am Code auch m glich ist die for Schleife mehrmals auszuf hren und einzelne Werte in ein Array einzuf gen Letzteres ist sinnvoll wenn die Zeile oder Spalte eben nicht als 1 D Array vorliegt sondern erst in dieser Schleife zu einer Zeile oder Spalte zusammengef gt werden soll 4 3 3 soundtest2 vi Der Quellcode des VT s soundtest2 vi stammt aus dem von der Hilfe zur Verf gung gestellten Beispielprogramm Record Wave File vi das demonstriert wie eine Windows Audiodatei aufgenommen wird F r die Programmierung einer Audioaufnahme mittels der Soundkarte des PCs stehen bereits LabVIEW Objekte zur Verf gung Die Zusammenstellung dieser Objekte zu einem lauff higen Programm und die Objekte selbst werden nun im einzelnen vorgestellt Task ID Ausgang Soundformat Puffergr e 8192 in Bytes Fehler Eingang kein Fehler Fehler Ausgang SI Konfigurieren SI Config vi
10. D_Blende_aussen variabel m entspricht meistens dem Rohrdurchmesser d_Blende_innen variabel m Durchmesser der Blenden ffnung A_D se variabel m Fl che der D sen ffnung beta_Blende variabel Durchmesserverh ltnis D se alpha_D se variabel Durchflusszahl der D se EInEIItIS variabel m Durchmesser der Eintritts ffnung Durchmesser Austritts undidder dementsprechend sind H he und l Breite oder der Durchmesser querschnitt rechteckig 53 anzugeben Die Eingangsgr e Messgr en und die Ausgangsgr e Berechnungsergebnisse bed rfen keiner ausf hrlichen Erl uterung 3 6 4 Speicherung der Daten Zur Speicherung der Messdaten stehen 2 Dateiformate zur Auswahl e formatierter Text mit einem Leerzeichen zwischen Zahlenwerten prn Datei e formatierter Text mit einem Semikolon als Trennzeichen zwischen den Zahlenwerten csv Datei Dies bedeutet dass s mtliche Zahlenwerte vor der Ausgabe in die Datei in Strings umgewandelt werden Beide Formate sind transparent da man zum einen die M glichkeit hat die Datenfiles mit einem Text Editor einzusehen und auch zu verstehen zum anderen sind die Daten in den Files dokumentiert d h vor jeder Gr e steht der Name Das prn Format wurde gew hlt um die Daten in eine Form zu bringen die auch von anderen Hochsprachen z B C oder C m glichst problemlos eingelesen werden kann Das csv Format wurde gew hlt damit die Daten
11. ssig zu messen Daher muss der Volumenstrom am Austritt mit Hilfe der Kontinuit tsgleichung bestimmt werden 18 2 4 aerodynamische Kenngr en Die in den nachfolgenden Kapiteln beschriebenen Berechnungen und Verfahren ben tigt man um die Leistung und die G te eines Ventilators beurteilen zu k nnen 2 4 1 Totaldruckerh hung spez Stufenarbeit und Wirkungsgrad Bei einer thermodynamischen Betrachtung einer Str mungsmaschine handelt es sich um ein kontinuierlich durchstr mtes System f r das die allgemeinen thermodynamischen Gesetze gelten Eine W rme und Leistungszufuhr m ssen demnach zu einer Energieerh hung des Fluids f hren die sich durch die Totalenthalpie h ausdr cken l sst P Q Jha Pa oma dA fhe Pr Cne dAr An Ag Die spezifische Totalenthalpie erfasst die ganze an das Fluid gebundene Energie 1 h er gz In der spez Enthalpie h sind zus tzlich zur inneren Energie die Verschiebungsarbeiten am Ein und Austritt eingeschlossen Unter der Voraussetzung dass sich die Maschine an einem station ren Betriebspunkt befindet und instation re Einfl sse nicht auftreten kann man folgende Leistungsbilanz aufstellen h h ei c2 g z Zg Die kalorischen Zustandsgr en Enthalpie h und Entropie s sind mit den thermischen Gr en Temperatur T Druck p und spez Volumen v durch die Hauptgleichung von Gibbs verkn pft A A h h vdp T ds 1 E E Tritt nun bei einer Str mung
12. 02 2 73E 03 3 2 13E 1 101E 05 2 62E 2 2 76E 03 4 2 13E 01 101E 05 4 35642 2 75E 03 5 2 13E 01 101E 05 6 77 E 2 2 71E 403 Bild 31 Ausschnitt aus der Ausgabedatei Betrachtung in Excel Anhand der Tabelle in Bild 31 kann man auch die Struktur des Speicherarrays erkennen E simtest7 csw WordPad Datei Bearbeiten Ansicht Einf gen Format Deal eall al el amp Konstanten R 2 872000E 2 kappa 1 400000E 0 c_p 1 004000E 0 D went 7 220000E 1 D_ Rohr 4 000000E 1 D BL a 4 000000E 1 d_BL i 2 379000E 1 beta 7 957000E 1 Bild 32 Ausschnitt aus der Ausgabedatei Betrachtung mit Wordpad Ebenfalls in Rahmen 2 befindet sich der Code mit dem die RS232 Schnittstelle angesprochen wird vergleiche Kapitel 3 4 1 und einige Gr en bzw Bedienelemente zu Null gesetzt werden J pHa Bild 33 die Variablen Messpunkt und Speicher Array werden zu Null gesetzt 61 In Bild 33 ist die Initialisierung der Variablen Messpunkt und Speicher Array dargestellt Das Anzeigeelement Messpunkt wird dazu nicht direkt angesprochen sondern es wird eine lokale Variable mit dem Attribut Schreiben verwendet da das Anzeigelement selbst nur in dem Sequenzrahmen direkt verbunden werden kann in dem es eingebaut ist Da die Anzeige des Messpunktes w hrend der Messung erfolgen soll also in Rahmen 3 kann es nicht in Rahmen 2 vorhanden sein Es w re zwar m glich eine lokale Sequenzva
13. 2 array vi Normalerweise ist das Einf gen von Spalten oder Zeilen in ein Array mit dem Objekt in Array einf gen leicht zu bewerkstelligen Bild 65 1D Array als neue Zeile in ein 2D Array einf gen Wenn man jedoch nicht direkt auf die Eingangs und Ausgangsarrays zugreifen kann und gezwungen ist mit lokalen Variablen zu arbeiten bekommt man das Problem dass am Eingang des Objekts immer Daten vorhanden sind und die Struktur mehrmals ausgef hrt wird Zwar gehen keine Daten verloren die Struktur ben tigt aber zus tzliche Rechenzeit die evtl an anderer Stelle fehlt zudem ist das unkontrollierte wiederholte Schreiben der gleichen Werte an die gleiche Stelle auch kein Zeichen von sauberer Programmierung 85 Um dieses Problem zu l sen ist es notwendig einen definierten Zustand herzustellen bei dem die Werte nur einmal geschrieben werden Dies erreicht man folgenderma en array vi Diagramm atei Bearbeiten Ausf hren Werkzeuge Durchsuchen Fenster Hilfe DIE em Elala eer EE yi Bild 66 Quellcode array vi Der Kern dieses Programms befindet sich in der Sequenz rechts unten Die Case Struktur rechts oben dient lediglich zum Initialisieren der Variablen beim Programmstart die for Schleife links unten erzeugt ein eindimensionales Array aus 6 Zufallszahlen im Intervall von O bis 100 Rahmen 1 und 3 Index 0 und 2 der Sequenz rechts unten beinhalten nur das bereits aus Kapitel 4 2 11 bekannte Sub VI
14. 5 Grad gew hlt werden die Koeffizienten f r ein Polynom 3 Grades ausgegeben Die Eingangsgr e dieses VIs ist die globale Variable Speicher Array in der sich die vom Hauptprogramm gemessenen und berechneten Werte befinden Da sich diese Werte nicht zwangsl ufig in der richtigen Reihenfolge befinden m ssen diese zun chst mit dem Sub Vi array_sort vi sortiert werden Die Spalte nach der sortiert wird ist die Abszisse des Graphen Das Objekt allgemeine Polynomanpassung spielt in diesem VI eine zentrale Rolle die Werte die in der X Achse dargestellt werden m ssen streng monoton steigen sonst kann kein Polynom angepasst werden 13 Y Werte x Werte Polynomialordnung Algorithmus Beste Polynomial Anpassung Polynomialanpassungs Koeffi Allgemeine Polynomanpassung General Polynomial Fit vi Bild 48 LabVIEW Objekt allgemeine Polynomanpassung Mit diesem Objekt wird u a f r 2 eindimensionale Arrays ein angepasstes Polynom w hlbaren Grades berechnet Die Polynomkoeffizienten werden wiederum als Array ausgegeben Der Index Spalte oder Zeile des Elements ist gleich dem Exponenten im Polynom d h der Koeffizient f r den Term x steht im Array an Position 0 der Koeffizient f r den Term x steht im Array an Position 1 und so weiter Dank dieser Anordnung l sst sich die Berechnung der St tzstellen zur grafischen Darstellung dieses Polynoms auf 2 geschachtelte for Schlei
15. Betrachtung ist f r Pr fstandsmessungen an allen Ventilatoren wichtig die das Medium Luft f rdern da sich mit der Luftfeuchte auch die Dichte ndert und u a der Volumenstrom von der Dichte abh ngt etc Berechnung der Dichte von feuchter Luft allgemein gilt die Zustandsgleichung f r ideale Gase p V m R T oder p p R T 1 wobei die Gaskonstante f r die feuchte Luft wie folgt zu bestimmen ist 2 R Ri po ist der Dampfdruck des Wassers 1 0 377681 PP 2 p In Gleichung 2 ist darauf zu achten dass sich der Druck p in der Regel aus dem barometrischen Druck und dem statischen Druck der Str mung zusammensetzt z B am Austritt des Ventilators ist p Apa Ps Der zur Lufttemperatur geh rende Dampfdruck pp des Wassers kann anhand der Dampfdruckkurve ermittelt werden Diese Kurve ist z B in Bohl W Technische Str mungslehre 3 auf den Seiten 269 bis 280 in tabellarischer Form gegeben und kann durch ein Polynom 5 Grades mit sehr guter N herung approximiert werden 6 171663994717479620000 x p_D cS x 5 ephea FT ZZ citx 1 c0 x 0 Approximation der Dampfdruckkurve h20 durch ein Polynom 5 Grades Bild 1 Auszug aus dem LabVIEW Code zur Berechnung des Dampfdruckes bei einer gegebenen Temperatur x in C Somit l sst sich die Dichte der feuchten Luft wie folgt bestimmten 5 p Ra tun 273 15K 3 pP Die Ber cksichtigung von feuchter Luft als F
16. Speicher des Rechners eine Kopie der Daten erstellt Der Vorteil dieser Methode liegt darin dass die Originaldaten also die die in der Variablen Array enthalten sind nicht manipuliert werden Der Nachteil liegt genau darin dass ein 2 Datensatz erstellt wird und das Erstellen dieses Datensatzes Rechenzeit beansprucht Im Gegensatz dazu werden bei der Methode Call by Reference keine Daten bergeben sondern Verweise References auf die Daten Die Gefahr bei dieser Methode liegt darin dass keine Kopie der Daten erstellt wird sondern die 28 Originaldaten selbst manipuliert werden Dies bedeutet jedoch einen Geschwindigkeitsvorteil weil kein 2 Datensatz erstellt wird und somit auch keine Rechenzeit daf r in Anspruch genommen werden muss Aufruf von berechnung_sub vi mittels Call by Reference Bild 13 Beispiel f r Call by Reference Der in Bild 13 dargestellte Quellcode stammt aus dem Hauptprogramm Hier wird das Sub VI berechnung_sub vi per Referenz aufgerufen Die Daten die in die Funktion hineingef hrt werden werden ver ndert was an dieser Stelle aber auch zul ssig ist da bereits eine Kopie dieser Daten erstellt wurde und diese Daten auch nicht mehr f r eine weitere Operation ben tigt werden 3 2 3 Cluster m Ein Cluster in LabVIEW l sst sich am einfachsten als B ndel von Daten beschreiben die nicht zwangsl ufig von einander abh ngig sind Sie eignen sich hervorragend um
17. Steckkarten auf der R ckseite f r den jeweiligen Zweck ausger stet werden kann In der hier verwendeten Konfiguration war das Ger t mit einer 20 Kanal Multiplexer Karte best ckt mit der Scannen und direktes Messen einer Temperatur von Spannungen Widerst nden Frequenzen und von Str men letzteres jedoch nur auf 2 Kan len m glich ist Die Kommunikation zwischen Messger t und PC ist sowohl ber die RS232 Schnittstelle als auch ber den GPIB Bus m glich Die Entscheidung f r die RS232 Schnittstelle beruhte haupts chlich darauf dass praktisch jeder PC insbesondere auch mobile Ger te Notebooks und Laptops ber diese Schnittstelle verf gen die notwendigen Treiber bereits in das Betriebssystem integriert sind und kein zus tzlicher Aufwand f r Einsteckkarten o notwendig ist 3 4 1 Einstellungen zum Betrieb an einer RS232 Schnittstelle In der im Ger t einprogrammierten Grundkonfiguration f r die Kommunikation ber die RS232 Schnittstelle sind folgende Einstellungen festgelegt mom OoOooo le lusskontrol nput KONKOF nput HW HandShake nput alt HW HSh output KONKOF output alt Hi HSh WOFF Byte WON Byte Parity error byte nu Bild 19 Einstellungen der RS232 Schnittstelle 40 Baudrate 56700 Stopbits 1 bit Parit t keine Parit t Datenbits 8 input XON XOFF ja input Hardware Handshake nein input alt Hardware Handshake nein Datenflu output XON XOFF ja steuer
18. des 68 Schalters letzten l schen den Index um mehr als eins zu verringern Die Dateiausgabe muss dann dementsprechend manuell korrigiert werden Last but not least befindet sich oben rechts in der while Schleife eine Case Struktur mit dem Code f r die Aufzeichnung der Audiodaten Dieser Teil des Programms wurde zun chst in einem eigenst ndigen VI entwickelt und erst nach erfolgreichen Tests in das Hauptprogramm eingef gt Erkl rungen zu dieser Struktur sind im Kapitel 4 3 3 zu finden Da sich der Code in dem Case true der Case Struktur befindet wird dieser Teil des Programms nur ausgef hrt wenn die programmierte Bedingung wahr ist Dieser Fall tritt ein wenn der Schalter Sound Automatik eingeschaltet ist und der Schalter Messen gedr ckt wird Da man nicht beide Schalter gleichzeitig bet tigen kann muss man wenn man Sound aufnehmen m chte zuerst den Schalter Sound Automatik bet tigen und dann die Messung starten Die L nge in Sekunden der Aufnahme ist abh ngig von der gew hlten Anzahl der zu mittelnden Messwerte da der Sound immer ber eine Messperiode Multiplexer ansteuern Messung starten Warten gemittelte Werte auslesen aufgenommen wird Zus tzlich zur Speicherung der Zeitdaten in einer wav Datei wird eine online FFT der aufgenommenen Signale berechnet Dies ist m glich bzw dazu steht die notwendige Rechenzeit zur Verf gung weil der Rest des Programms in dieser Z
19. die Berechnungen an Ventilatoren verwenden 20 Bei hydraulischen Str mungsmaschinen gilt mit p Pa Pa 2 DEAD Ba Bernoulli Gleichung an 20 l A 2 _02 _ allgemein f r den Ventilator P aSa be p Pape p 2 p oder als Druckerh hung Ap p Pe p e eR 2 E Die Druckerh hung ist gleich der Summe aus der Differenz von statischem Druck an Aus und Eintritt und der Differenz von dynamischem Druck an Aus und Eintritt Die Druckerh hung Ap wird in diesem Zusammenhang als Totaldruckerh hung Ap bezeichnet und beschreibt die dem Fluid von der Str mungsmaschine zugef hrte Arbeit pro Volumeneinheit N wW 1J 1Ws 1Nm N n_ Nm_ J m m m m J gt Ap 1Pa 1 m 1Pa 1 Bezieht man die Totaldruckerh hung auf die Masse so erh lt man die spezifische Stufenarbeit kg m 2 Ir Bee 2 y AP pJ 22 Pa ei 4 J 1M _ s 4 b kg ke kg kg kg s m m 21 Sonderf lle in der Berechnung ergeben sich bei frei ansaugenden oder frei ausblasenden Maschinen Totaldruckerh hung bei frei ansaugenden Maschinen 1 Ap Dat Da De Totaldruckerh hung bei frei ausblasenden Maschinen l APh Ap gt PE ch Bestimmung der Str mungsgeschwindigkeit im Rohr E 2 1 De T Dia Bestimmung der Str mungsgeschwindigkeit allgemein c ieh Volumenstrom durch Fl che pA A Der Wirkungsgrad einer Maschine ist allgemein definiert als der Quotient aus Nutzen und Aufwand D
20. die Elementbezeichnung des Ausgansclusters um das entsprechende Element erweitern Berechnung der aerodynamischen Kenngr en berechnung_sub vi Eingangscluster Messwerte l schen Ausgangscluster Messwerte von kalib_sub vi kopieren einf gen und in Bedienelement umwandeln Ausgangscluster Berechnungsergebnisse und Clusterkonstante f r die Elementbezeichnung des Ausgansclusters um das die entsprechende n Element e erweitern Berechnung anpassen Hauptprogramm aamdes_0 9 3d vi das versteckte Anzeigeelement Kalibrierung l schen Ausgangscluster Kalibrierung Ausgang von config_sub vi kopieren und einf gen Eigenschaftsknoten sichtbar unsichtbar in Rahmen 2 wieder anschlie en das Frontpanel um die gew nschten Anzeigeelemente erweitern SCPI Steuer Strings in Rahmen 2 um einen Kanal erweitern Scan Liste und Spannungsmessung die Routine zur Erstellung des Dateikopfes um den entsprechenden Kanal und die gew nschten Ergebnisse erweitern Die Objekte Cluster nach Namen aufschl sseln in Rahmen 3 um die neuen Elemente in Messwerte und Berechnungsergebnisse erweitern Das Objekt Array erstellen um die ben tigte Anzahl erweitern Index Liste erweitern ggf die Indices in der Struktur zur grafischen Anzeige ndern Auswerung auswertung_sub vi Anpassen der Men s f r die Auswahl von Abszisse und Ordinate gem der der im Hauptprogramm ge
21. fst nden mit den Drosselger ten Blende oder D se Die genauen Berechnungsverfahren sind in der Norm DIN EN ISO 5167 1 4 festgelegt Die derzeit g ltige Fassung ist die Ausgabe von 1998 die die Ausgabe von 1995 in der Berechnung des Durchflusskoeffizienten C bei der Blendenmessung korrigiert Um eine Kompatibilit t zu lteren Messergebnissen und lteren Programmen sicherzustellen wurden in dem neu erstellten Programm beide Versionen ber cksichtigt und werden darum auch an dieser Stelle behandelt 2 2 1 Blendenmessung i Diane deL Str mungsrichtung yA y Da Bild 4 Prinzipskizze Blendenmessung Bild 2 zeigt eine Prinzipskizze der Blende des Str mungsverlaufs und der Dr cke Die Blende als unstetige Querschnittsverengung bewirkt eine starke Strahlkontrak tion Der Druck p liegt ber dem statischen Druckniveau in der Rohrleitung die eingebaute Blende hat eine Druckabnahme und einen Druckverlust zur Folge p gt p Zur Ermittlung des Massen bzw Volumenstroms wird die Druck nderung p P gt Wirkdruckdifferenz gemessen 6 Die rechnerische Ermittelung des Massenstroms erfolgt durch iteratives L sen des folgenden Gleichungssystems C f B Rev Li L2 Rep f qm Dron N qm f C B e dei per ApeL Bestimmung des Massenstroms mittels einer Messblende gem DIN EN ISO 5167 1 von 1995 Durchflusskoeffizient C
22. kommt es zu dem s g Differentialfehler da die Aufl sung bei der AD Wandlung immer begrenzt ist Dar ber hinaus neigen AD Wandlerkarten zum bersprechen der Kan le 5 1 Soundkarte als Messger t Eggert hat in seiner Diplomarbeit Objektorientierte Programmierung eines 2 Kanal Frequenzanalysators unter DASYLab und LabVIEW 10 bereits Untersuchungen zur Verwendbarkeit von Soundkarten als Messger t f r Schalluntersuchungen gemacht und stellt fest Die Messungen zeigten dass die getestete Soundkarte vom Typ DMX Xfire 1024 der Firma TerraTec ein sehr gutes lineares bertragungsverhalten zeigt Die Untersuchung auf Phasentreue zeigte dass bei der Soundkarte DMX Xfire 1024 eine maximale Phase von 0 18 bei etwa 22 3 kHz auftrat was einen sehr guten Wert darstellt Auch f r die Amplitude und die Koh renz ergaben sich sehr gute Werte Leider zeigte sich bei der Soundkarte DMS Xfire 1024 mit einem Abstand von 66 dB ein leichtes bersprechen auf den zweiten Kanal 1 AD Wandlerkarten k nnen zudem nur Spannungen in einem beschr nkten Spannungsbereich sampeln 90 In seiner Zusammenfassung schreibt er Zusammenfassend l sst sich sagen dass Soundkarten der mittleren bzw oberen Preisklasse als Messkarten zu Zusammenarbeit mit einem Personalcomputer zu Messzwecken in Betracht kommen Mit diesem Wissen kann man also durchaus davon ausgehen dass die Weiterverarbeitung der aufgezeichneten Soundfiles korr
23. m glichst einfach in eine Tabellenkalkulation eingelesen werden k nnen Zumindest mit Microsoft Excel funktioniert dies ohne weitere Konvertierung wobei die als Strings gespeicherten Zahlenwerte von Excel automatisch als Zahlen interpretiert werden Dies erm glicht eine schnelle Weiterverarbeitung der Daten ohne dass diese extra konvertiert werden m ssen wenn beim ffnen das csv Format ausgew hlt wurde 54 3 7 Aufzeichnung akustischer Daten Auf Wunsch des Anwenders durch Bet tigen des Schalters Sound Automatik wird f r die Dauer eines Messzyklus mit der Soundkarte des PC und einem oder zwei daran angeschlossenen Mikrofonen eine Audio Datei aufgezeichnet und im wav Format Zeitsignal auf die Festplatte gespeichert Der Anwender kann die Sampling Rate und die Aufl sung w hlen F r eine m glichst genaue Aufzeichnung der Daten wird die unten dargestellte Einstellung empfohlen D SIE o KK BR Bi ori Soundformat fitere rede Bild 26 Bedienelemente zur Sound Aufnahme Die Datei wird in dem angegebenen Arbeitsverzeichnis mit folgendem Dateinamen gespeichert Ordnungsname mp Nummer des Messpunktes sound wav W hrend der Aufzeichnung d h auch w hrend der Messung wird eine online FFT der eingelesenen Daten durchgef hrt Die Ergebnisse der FFT werden jedoch noch nicht weiterverarbeitet 55 4 Erl uterung des Quellcodes Nachdem in Kapitel 3 die Funktion des Pr
24. rdermedium erfolgt weil der Pr fstand der Fa Pollrich Ventilator daf r eingerichtet ist Wie die folgenden Grafiken zeigen ergibt sich in dem f r Niederdruckventilatoren blichen Temperaturbereich eine Differenz zwischen dem nach Gleichung 3 berechneten Wert der Dichte und dem mit dem idealen Gasgesetz ermittelten Wert von ca 1 In Anbetracht der Tatsache dass der Ventilator als hydraulische Str mungsmaschine angesehen wird und dabei das Medium vereinfachender Weise als inkompressibel betrachtet wird ergibt sich aus dieser Berechnungsmethode keine technisch relevante Verbesserung der Genauigkeit erzielt Vergleich 1 2300 1 2200 1 2100 1 2000 Ber cksichtigung der 1 1900 Luftfeuchte 1 1800 Berechnung mit idelem 1 1700 Gasgesetz 1 1600 1 1500 1 1400 15 20 25 30 Lufttemperatur Dichte Bild 2 Vergleich zwischen dem nach Gleichung 3 berechneten Wert der Dichte und dem mit dem idealen Gasgesetz ermittelten Wert Abweichung 1 20E 02 1 00E 02 8 00E 03 6 00E 03 Reihe1 Differenz 4 00E 03 2 00E 03 0 00E 00 15 20 25 30 Lufttemperatur Bild 3 Differenz zwischen dem nach Gleichung 3 berechneten Wert der Dichte und dem mit dem idealen Gasgesetz ermittelten Wert 2 2 Durchflussmessung von Fluiden mit Drosselger ten blicherweise erfolgt die Messung des Durchflusses bei Ventilatorpr
25. 44444sRRBn RR nnnn nenn nn nun nnnn nennen nnnennnnnnnn nn nnnennnnnnnen Schl ssel einles n 2 2 4022 2320000000000 000 Banana nn ann ann am mann nn an dann anna rn rn Bedienfelder f r den Simulatorbetrieb rrrrHHHnnnnnnnnn nenn nenn nn nenn nenn nenn nennen nn nn ernennen LabVIEW Objekt Tabellenstring in Array uussnensnenenennnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnnnnnnnnn vom Multiplexer gesendete Strings in ihrer Urform uzusssssssnnnnnnnnnnnnnnnnnnnnnnnnnn nn Array indizieren und Werte in den Ausgangscluster schreiben 4 444444404RRRRRRRRRR RR RR HH Quellcode von timewaltv airia a aa a a eaaa denen he Teen ernennen VI Einstellungen siii siira Hannah naar an nenn nenn saI EEAS aaan E anana E Ea Ei Ea Quellcode umwandlung_csv_sib vi eeeessnnnsnnnnnnnnonnnnnnnnnnnnnennnnnnnnnnennnnnnnnnnnnnnnnnnennnnnnnnnnnnnnnsnnnnenn VI iter2 M ea ne nn De ee Denen ee 1D Array als neue Zeile in ein 2D Array einf gen 44444444HRRRRRRRRnnnn nn nn nn HR HH HR HR nn nn nn nn Han nn Quellcode array u ein a a aa ia a aa aaa aoaia Sound Eingang konfigurieren ssiiissisiiiiiiniiiisiiniiiiniaediiiendednn danna diinnandnn andaina naadi nenn A fjahme starteN sns 222er RS IRIRRRBI Audiodaten aus dem Puffer lesen 44444HHHHRRRRRRnRnR RR nn RR nn nn RR nn HH nn nn nn nn nn nn nennen ernennen nnn nenn Audiodaten in einer while Schleife einlesen
26. 48 Umwandlung der Strings in Zahlen u a ee 48 Umwandlung der eingelesenen Spannungen in Messgr en s es 50 3 3 6 3 aerodynamische Berechnungen en un en 52 3 6 4 Speicherung der Datem avanan eaeiieeennegie 54 3 7 Aufzeichnung ak stischer Daten 55 4 Erl uterung des Quellc des essen nn nn ankann 56 4 1 Liste der zum Programm geh renden Dateien ssunnrnennnnnnnnnnen nennen een 57 4 2 QUEEN 59 4 2 1 Hauptprogramm anne nenne nenne nes nn 59 4 2 2 2kanalfft_flattop_sub vi und 2kanalfft_sub vi ueessnensseennnennnennnnnnnnennnnen nn 70 4 2 3 ag lent Steuerung sub ya ae 70 4 2 4 array SOME een E E E aa Oraa TE aE Eae SERA SETETE 7i 4 2 5 A SWEMUNG VI ne ea a re a u ee 72 4 2 6 DEESch HUNG SUBV eine 75 4 2 7 CONTI SUB Msn ee 78 4 2 8 089 read SUDAN ee 79 4 2 9 U Eu N 120 0 4 PPRP FREE FAR EINER BIETE EEDFBOBTEUBEET FSTERREEFSIEFEREFREEFEREEEIEFRREERERFEIEURN 80 42 10 gt Stnng2num SUB Me ee 81 42 11 S MEWAINE nenne 82 4 2 12 Sumwandlund CSyslD ya 83 4 3 Hilfsprogramme zur Verdeutlichung von Abl ufen uunnenennsnnennnnnnnnnnnnnn nennen nennen 84 4 3 1 ETZ Vi BESONBESRBSANEFPRERTBESRUNENESEREEHTEEHENSUNERERSSENERHLURTNERPIOREENEEINHERNERTNUNFRERFRLETEERETETR 84 4 3 2 IENA E A 85 4 3 3 SOUMAtEStA Vista 87 5 Vergleich des PC gest tzten Systems mit herk mmlichen Messger ten 90 5 1 Soundkarte als Messger t nee 90 5 2 Temperatur MmesS NG rnrn ee ni rea E E ANa 91 5 3 BEUCKMESSUNG a AE AE
27. Anzeigeelemente zusammen mit dieser Markierung zu verschieben Das Zusammenf gen evtl getrennter Verbindungen kann ohne dieses Hilfsmittel sehr kompliziert werden da diese Nummerierung strikt eingehalten werden muss Falls dies aus irgendeinem Grund nicht m glich sein sollte m ssen die Dateiausgabe und das Auswerteprogramm angepasst werden da diese mit dieser Reihenfolge arbeiten Nachdem die gemessenen und errechneten Gr en angezeigt wurden werden diese zu einem eindimensionalen Array zusammengef gt und anschlie end als neue Zeile in das Speicher Array und in die Ausgabe Datei eingef gt Der Quellcode der Struktur die die Daten in das Array schreibt ist nicht trivial und wird darum in Kapitel 4 3 2 detailliert erl utert An dieser Stelle wird darum nicht weiter darauf eingegangen Das Schreiben in die Datei ist dagegen wieder recht einfach Die Daten werden in einen String umgewandelt und als neue Zeile in eine Textdatei geschrieben Da auch hier das Trennzeichen Leerzeichen oder Strichpunkt beachtet werden muss und der Code viel Platz beansprucht wurde die Umwandlung in das Sub VI umwandlung_csv_sub vi ausgelagert Die dort ausgef hrten Operationen sind denen der Erstellung des Dateikopfes in Rahmen 2 sehr hnlich 66 Parallel zum Speichern im Array und in der Datei l uft die grafische Anzeige der Punkte auf dem Frontpanel Da das verwendete Anzeigobjekt XY Grafik als Eingangsgr e einen Array aus Clusterarray
28. Aufzeichnung von Audiodaten bereits fertig programmiert ist beschr nkt sich diese Erweiterung auf die Programmierung der Motorsteuerung des Drehkanals Die Steuerung des Motors ber die Schnittstelle ist prinzipiell hnlich zu der Steuerung des Multiplexers mit SCPI Befehlen Die verwendete Schnittstelle muss initialisiert werden im Betrieb m ssen die entsprechenden Steuerbefehle ber die Schnittstelle gesendet werden und beim Beenden des Programms muss diese wieder geschlossen werden Es ist empfehlenswert die Initialisierung das Senden der Befehle und das Schlie en dem Hauptprogramm zu berlassen Dazu k nnen die Sequenzen die bereits den COM Port zur Steuerung des Multiplexers ffnen und schlie en um den entsprechenden Code erweitert werden Da die Drehbewegung synchron zur Aufnahme der Audiodaten erfolgen soll ist es zweckm ig das Senden des Start und des Stopp Befehls in die Sequenz einzuf gen in der auch die Soundaufnahme gesteuert wird Die n tigen Steuerbefehle kann ein Sub Vi generieren 97 6 4 Hinzuf gen eines weiteren Kanals Annahme Es soll ein weiterer Kanal Nr 113 zur Temperaturmessung mit einem Widerstandsthermometer hinzugef gt werden Der Temperatursensor liefert ein Einheitssignal zwischen 0 und 10 V Es wird die Temperatur am Austritt bestimmt Dieser Fall ist der schwierigste da man beim Hinzuf gen einer neuen Messgr e fast alle Module ab ndern muss Unter Umst nden kann es so
29. De a T P Die dimensionslosen Kennzahlen o und sind Kenngr en f r die Typisierung bzw E 6 Auslegung bei vorgegebenem V bzw Y 5 23 Durchmesserzahl 1 2 Y In yt D NZ E T 5 p Laufzahl o auch Schnelllaufzahl 12 NR 5 yt Die Kennzahlen und o finden in dem s g Cordier Diagramm Verwendung das eyy 7 Aufschluss ber die Bauformen von einstufigen Turbomaschinen gibt 24 3 Programmierung der Messdatenerfassung 3 1 LabVIEW oder DASYLab Zu programmieren ist ein aeroakustisches Messdatenerfassungssystem d h Gleich und Wechselgr en sind m glichst gleichzeitig zu erfassen DASYLab ist ein einfach zu bedienende Windows basierte grafische Messdatenerfassungssoftware mit der ein Bediener ohne weitreichende Programmierkenntnisse in der Lage ist schnell und einfach per Drag and Drop von Bedienelementen eine Applikation zusammenzustellen Im Gegensatz dazu ist LabVIEW eine grafische Programmierumgebung f r die Mess und Automatisierungstechnik die einfache grafische Entwicklung mit einer leistungsstarken flexiblen Programmiersprache verbindet Zwar ist LabVIEW eine weitaus komplexere Umgebung als DASYLab der Bediener hat auch die M glichkeit komplexe Programme zu erstellen auf einem Niveau wie es mit DASYLab nicht m glich ist und hat die volle Kontrolle ber seinen Code Dar ber hinaus ist der Programmierer in LabVIEW nicht an vorge
30. EA EAA A E EE E EE 92 6 Erweiterung d r SoftWare ncinet a ei 94 6 1 Beispiel 1 Austausch des Multiplexers 22202202002000000000nn 0000 nun nnn nn nn En nenn 94 6 2 Beispiel 2 Erweiterung der Sound Funktion ussssssssnsnnnnnnnnnnnnnnnnnnnnnnnnnannnnnn 95 6 3 Hinzuf gen einer Drehkanalsteuerung sss 4rnennnnnnnnnn nen nnnnnnnnnn anne 97 6 4 Hinzuf gen eines weiteren Kanal unse el 98 7 ZUSAMMENFASSUNG see ee ae a a 100 Anhang Literaturverzeichnis Abbildungsverzeichnis 1 Einleitung Die vorliegende Diplomarbeit behandelt die objektorientierte Programmierung eines aeroakustischen Messdatenerfassungssystems Dazu sollten zum einen die bekannten Methoden und Verfahren zur Pr fstandsmessung an Ventilatoren in ein Programm umgesetzt werden zum anderen sollte das Programm auch in der Lage sein zeitgleich zur Aufnahme der aerodynamischen Daten Soundfiles an ausgew hlten Messpunkten aufzuzeichnen Die Software entstand in Zusammenarbeit mit der Firma Pollrich Ventilator M nchengladbach als Ersatz f r ein bestehendes aber veraltetes Messdatenerfassungssystem an einem Normpr fstand f r Radialventilatoren Als Messger te stehen das Agilent 34970A Messdatenerfassungs Schaltsystem mit den daran angeschlossenen Ger ten zur Aufnahme von Druck und Temperatur und die Soundkarte des PC s TerraTec DMX Xfire 1024 zur Verf gung Die Programmierung sollte entweder mit dem Softwarepaket DasyLAB oder Lab
31. Fachhochschule D sseldorf Fachbereich Maschinenbau und Verfahrenstechnik Diplomarbeit Christian Berger Matrikel Nr 383 000 Objektorientierte Programmierung einer aeroakustischen Messdatenerfassung Institut f r Str mungsmaschinen IFS Prof Dr Ing F Kameier Dipl Ing C Haukap D sseldorf im Dezember 2001 Vorwort Diese Diplomarbeit entstand an der Fachhochschule D sseldorf am Institut f r Str mungsmaschinen Ich m chte mich an dieser Stelle bei meinem sehr geehrten Prof Dr Ing F Kameier f r die Anregung zu dieser Diplomarbeit bedanken Besonders m chte ich mich f r die Betreuung die mir w hrend der gesamten Arbeit gew hrt wurde bei Prof Dr Ing F Kameier Dipl Ing C Haukap sowie allen Mitarbeitern des Instituts f r Str mungsmaschinen bedanken Ebenso m chte ich mich bei meiner Frau f r die Unterst tzung und vor allem f r die Geduld bedanken Inhalt 2 1 2 2 2 2 1 2 2 2 2 2 3 2 3 2 3 1 2 3 2 2 4 2 4 1 2 4 2 3 1 3 2 3 2 1 3 2 2 3 2 3 3 2 4 3 3 3 3 1 3 3 2 3 3 3 3 3 4 3 4 3 4 1 3 4 2 3 4 3 3 4 4 3 5 3 6 3 6 1 3 6 2 EINIEILUNG er vers A E E A 5 Grundlage Ms anar nein 6 feuchte Luft sea siie ateua ee see nee ee 6 Durchflussmessung von Fluiden mit Drosselger ten uss0n444snnnnnnnnn nenn 9 Bl nd nmessung s area EB ns 9 Messung mit Normd se u nennen 13 Dynamische und kinematische Viskosit t uuennesnennnnnnnnnnnnnnnnnnnnnnnnn
32. LabVIEW Diagramm Dieses einfache Programm berechnet die Summen aus x und y sowie a und b Die Strukturen sind parallel im Diagramm angeordnet und werden darum beim Starten des Programms gleichzeitig abgearbeitet Im Gegensatz dazu werden die Berechnungen in dem Bild 9 nacheinander ausgef hrt da zum Startzeitpunkt das Berechnungsergebnis der Summe x y noch nicht vorliegt die 2 Berechnung also noch keine Daten hat Bild 9 nacheinander ausgef hrte Berechnungen Multitasking ist auf PCs mit nur einer CPU als quasiparalleles Abarbeiten von Befehlen mit Hilfe eines Zeitscheibenmodells zu verstehen und kann nicht mit echtem Multitasking wie es nur auf Parallelrechnern m glich ist verglichen werden So kann es durchaus vorkommen dass zeitkritische hardwarenahe Prozesse nicht wie erwartet parallel sondern nacheinander ausgef hrt werden 26 Eine Nichtbeachtung dieser grundlegenden Dinge f hrt in den meisten F llen insbesondere beim Verwenden von lokalen Variablen zu berraschenden nicht gewollten Ergebnissen 3 2 1 Sequenz und While Schleife Zu den wichtigsten Strukturen in einem LabVIEW Programm geh ren die Sequenz und die While Schleife In einer While Schleife wird der enthaltene Code so lange ausgef hrt bis die Abbruchbedingung eintritt in dem Beispiel unten wird so lange die Summe aus a und b gebildet bis die STOPP Taste gedr ckt wird Bild 10 While Schleife In einer Sequenz werden die Anwe
33. P gt 9 _ Ps AP eL Dichte am Ventilatoraustritt Ps Ap Ri Pa SETIS 10 377861 P gt 9 Ps Ap Hinweis wenn die W rme bertragung vom Fluid auf die Rohrwand zwischen Austritt und Blende vernachl ssigt wird so kann man die Lufttemperatur vor der Blende gleich der Lufttemperatur am Austritt setzen und spart sich somit den Aufwand f r eine Temperaturmessung Dichte am Ventilatoreintritt A Pr Ps Pe ApE lt 0 2 tg 273 15 1 0 377861 P gt 9 _ Ps Ap Hinweis Um den messtechnischen Aufwand m glichst klein zu halten ist es m glich die Umgebungstemperatur te f r die Dauer der Messung als konstant anzusehen Die Temperatur kann z B vor Beginn der Messung mit einem Quecksilberthermometer ermittelt werden Wenn kein Ansaugrohr vorhanden ist spricht man von einem frei ansaugenden Ventilator In diesem Fall ist der Druck am Eintritt gleich dem Umgebungsdruck die Temperatur am Eintritt gleich der Temperatur der Umgebungsluft Die Gr en Druckdifferenz Ape und Temperatur te am Eintritt entfallen somit Den in den Ventilator eintretenden Volumenstrom kann man in diesem Fall mit Hilfe der Kontinuit tsgleichung bestimmen 16 Bekannt Massenstrom am Ventilatoraustritt qm Dichte am Eintritt Dichte der Umgebungsluft pe pg Kontinuit tsgleichung Ame qma ps Cp dA fpa ca dA Ag Ar V 4e Pe Wird mit diesem Volumenstrom der Wirkungsgrad der Maschine bes
34. VIEW erfolgen die beide f r die objektorientierte Programmierung von Messsoftware entwickelt wurden Mit den so gewonnen Daten soll zum einen die Kennlinie eines Radialventilators berechnet werden zum anderen soll eine Datenbank geschaffen werden die es erm glicht auf Grundlage dieser Daten ein Kennfeld vorherzusagen oder einen Ventilator aerodynamisch auszulegen Bei der Programmierung und Dokumentation sollte besonderer Wert darauf gelegt werden dass evtl in Zukunft notwendige nderungen oder Erweiterungen auch ohne die aktive Mithilfe des Programmierers durchgef hrt werden k nnen 2 Grundlagen In den folgenden Kapiteln werden zun chst die Grundlagen der aerodynamischen Berechnungen an Ventilatoren mit F rdermedium Luft zusammengetragen Ein anderes Medium au er Luft wird nicht betrachtet 2 1 feuchte Luft Trockene Luft besteht zu 78 04 Mol aus Stickstoff zu 21 04 Mol aus Sauerstoff zu 0 93 Mol aus Argon und zu 0 03 Mol aus Kohlendioxyd Die atmosph rische Luft kann man als Zweistoffgemisch betrachten bestehend aus trockener Luft und Wasser das in dampff rmiger und fester Form vorliegen kann Man bezeichnet dieses Gemisch auch als feuchte Luft Die trockene Luft betrachtet man als einheitlichen Stoff Da der Gesamtdruck bei Zustands nderungen fast immer in der N he des Atmosph rendrucks liegt kann man die feuchte Luft aus trockener Luft und Wasserdampf als ein Gemisch idealer Gase ansehen 1 Diese
35. W Objekt Tabellenstring in Array Mit Hilfe dieses Objektes wird z B ein String der Form 1 123 2 123 3 123 in das eindimensionale Array 1 123 2 123 3 123 umgewandelt Dank dieses Objektes spart man sich bei richtiger Formatierung des Eingangsstrings die Arbeit den String in einzelne Teilst cke die jeweils einen Zahlenwert repr sentieren zu zerlegen und anschlie end jeden String einzeln in eine Zahl umzuwandeln Ungl cklicher weise ist das vom Multiplexer verwendete Trennzeichen ein Komma das auf manchen Systemen als Dezimaltrennzeichen interpretiert wird Ausgabe 2 01069750E 01 0 00000000E 00 1 87500000E 04 2 00000000E D4 1 25000000E 04 1 87500000E 04 1 87500000E 04 1 25000000E 04 1 25000000E 04 2 00000000E 04 i 47625000E 02 5 18375000E 02 Bild 59 vom Multiplexer gesendete Strings in ihrer Urform Das f hrt auf manchen Systemen dazu dass die Strings nicht richtig interpretiert werden Darum wird mit Hilfe der String2Num Settings das Komma aus dem String gefiltert und durch ein anderes Zeichen ersetzt Standardeinstellung ist eine Raute das evtl falsche Dezimaltrennzeichen der Punkt wird ebenfalls gefiltert und durch das richtige ersetzt Mit diesem aufbereiteten String kann man das Objekt Tabellenstring in Array ohne Probleme einsetzen und den String in ein Array aus Zahlen umwandeln 81 Die Werte im Array k nnen mit dem Objekt Array in
36. Zur Berechnung der dynamischen Viskosit t kann das Sutherland Law 3 verwendet werden TIT f r Luft gilt n 1 710 10 Pa s und E A Pa E A 14 2 3 Ventilatorpr fst nde 2 3 1 Druckseitiger Ventilatorpr fstand Blende O Inex bL Austritt 5 Index A Apa l AP I N N A E Prsi Eintritt Index E Bild 6 Prinzipskizze druckseitiger Ventilatorpr fstand Bei dieser Konfiguration wird der Massenstrom im druckseitigen Kanal mit einer Blendenmessung bestimmt Unter der Voraussetzung dass das System dicht ist und keine Masse verloren geht bleibt die Masse zwischen Eintritt und Austritt gleich Massenerhalt Es werden folgende Gr en gemessen bzw ermittelt Umgebungsdruck pg Temperatur der Umgebungsluft tur in C Luftfeuchte die Motorleistung Pwot z B ber Drehzahl und Drehmoment Druckdifferenz Ape und Temperatur te am Eintritt Druckdifferenz Apa und Temperatur ta am Austritt Druckdifferenz gegen Umgebungsdruck unmittelbar vor der Blende Ap s Temperatur des Mediums unmittelbar vor der Blende t s Wirkdruckdifferenz Apg 15 Da sich die Temperaturen und die statischen Dr cke Ape Apa und Ap s zwischen Ein und Austritt ndern ist die Dichte des Mediums an jedem Punkt verschieden Die Dichten lassen sich wie folgt berechnen Dichte an der Blende Ps AP sL PBL z R 42315 1 0377861
37. altung der Parameter wurde das Sub VI config_sub vi geschrieben gt config_sub vi Datei Bearbeiten Ausf hren Werkzeuge Durchsuchen Fenster Hilfe Leerlaufmoment Geometrie Jo ooooe 0 Jo oooe 0 Jo 0ouoe o Jo 0oooe o vr ef ooooe 0 Jo Jo onooe 0 ee ep ooooe 0 Bild 22 Frontpanel des Sub VI config_sub vi Dieses Sub VI wird beim Start des Messdatenerfassungssystems automatisch ge ffnet und bleibt so lange im Vordergrund bis der Button o k gedr ckt wird In den einzelnen Registern kann der Benutzer die notwendigen Einstellungen vornehmen allgemein e COM Port e Einstellungen zur Umwandlung der Strings in Zahlen e Arbeitspfad f r die Dateiausgabe 46 e Ordnungsmerkmal Bestandteil des Dateinamens e Trennzeichen entweder ein Leerzeichen formatierter Text oder ein Semikolon csv Datei Kalibrierung In diesem Feld werden die Faktoren und Offsets f r die einzelnen Kan le eingegeben Konstanten Stoffwerte des F rdermediums sowie Angaben zur Geometrie des Laufrades der Rohrleitung und des Messger tes Leerlaufmoment Koeffizienten f r das Polynom des Leerlaufmoments Geometrie Weitere Angaben zur Geometrie des Pr fstandes Diese Angaben werden zur Berechnung in diesem Programm aber nicht ben tigt Dar ber hinaus hat der Benutzer die M glichkeit die eingegebenen Daten in einer ini Datei zu speichern und die gespeicherten Wert
38. analysators unter DASYLab und LabVIEW Juni 2000 Institut f r Str mungsmaschinen Fachhochschule D sseldorf Agilent Technologies Benutzerhandbuch Agilent 34970A Messdatenerfassungs Schaltsystem 1 Ausgabe 1997 Jamal R Hangestedt A LabVIEW Das Grundlagenbuch 3 Auflage 2001 Addison Wesley Verlag M nchen L Bommes J Fricke K Klaes Hrsg Ventilatoren 1 Auflage 1994 Vulkan Verlag Essen Br el amp Kjaer Schallintensit t Brosch re zur Erl uterung der Grundlagen von Schallintensit tsmessung in Theorie und Praxis Revision April 1991 Br el amp Kj r N rum D nemark Kameier Vorlesungsskript Str mungsakustik FH D sseldorf 2001 Schade H Kunz E Str mungslehre mit einer Einf hrung in die Str mungsmesstechnik von Jorg Diter Vagt 2 Auflage 1989 DeGruyter Verlag Berlin New York 101 Abbildungsverzeichnis Bild 1 Bild 2 Bild 3 Bild 4 Bild 5 Bild 6 Bild 7 Bild 8 Bild 9 Bild 10 Bild 11 Bild 12 Bild 13 Bild 14 Bild 15 Bild 16 Bild 17 Bild 18 Bild 19 Bild 20 Bild 21 Bild 22 Bild 23 Bild 24 Bild 25 Bild 26 Bild 27 Bild 28 Bild 29 Bild 30 Bild 31 Bild 32 Bild 33 Bild 34 Bild 35 Bild 36 Bild 37 Bild 38 Auszug aus dem LabVIEW Code zur Berechnung des Dampfdruckes bei einer gegebenen Temperatur INC Ren EEE LEE Denn nee 7 Vergleich zwischen dem nach Gleichung 3 berechneten Wert der Dichte und dem mit dem idealen Ga
39. ass das Trennzeichen zwischen den Dezimalstrings immer ein amp ist alle Kalibrierfaktoren 1 und alles Offsets 0 sind Der Hebelarm zur Berechnung des saugseitigen Drehmoments sollte mit 1 m angegeben werden Die Berechnungen die dieses VI ausf hrt sind ist im Prinzip die Umkehrung des VI berechnung_sub vi Mit Hilfe der dimensionslosen Kennlinie einer bereits verifizierten Messung werden die Gr en Blendenwirkdruck Druckdifferenz am Austritt D senwirkdruck Druckdifferenz am Eintritt und das Drehmoment druck und saugseitig berechnet und als Strings ausgegeben Diese Strings werden vom Hauptprogramm bernommen und verarbeitet Wenn das Messdaten erfassungssystem richtig arbeitet dann stimmen vom Simulatorprogramm berechneten Gr en mit den Ergebnissen des Hauptprogramms berein Der Drossel Entdrosselvorgang wird durch einen Schieberegler simuliert mit dem man die Lieferzahl zwischen 0 und 100 eines festgelegten Intervalls bewegen kann Bei der Festlegung des Intervalls sollte der Bereich gew hlt werden in dem diese Kennlinie tats chlich gemessen wurde 80 4 2 10 string2num_sub vi Das Sub Vi string 2num_sub vi wandelt die eingelesenen Strings in Zahlen um Das wichtigste Objekt in diesem Programm ist das Objekt Tabellenstring in Array Trennzeichen Tab a Format String Ez Tabellen String Array Arraytyp 2D Dbl z Tabellenstring in Array Spreadsheet String To Array Bild 58 LabVIE
40. bjekt Formelknoten gearbeitet da dieser zum einen den Code leicht lesbar macht zum anderen die Programmierung komplizierter und langer Formeln wesentlich erleichtert C 0 5959 0 0312 beta 2 1 0 1840 beta 5 beta 0 0029 beta 2 5 1E6 Re 0 75 Bild 50 Berechnung des Durchflusskoeffizienten C in einem Formelknoten Zum besseren Verst ndnis sind die einzelnen Bereiche im Quellcode selbst mit kleinen Texten dokumentiert 75 Fallunterscheidung druckseitiger saugseitiger frei ausblasender Pr fstand Pr fstand Pr fstand Blendenmessung D senmessung D senmessung berechnete Werte ausgeben uw Bild 51 Struktogramm des Sub VlIs berechnung_sub vi Die u erste Struktur dieses VIs ist eine Case Struktur mit der die verschiedenen Berechnungen f r einen druckseitigen Ventilatorpr fstand einen saugseitigen Ventilatorpr fstand und einen saugseitigen frei ausblasenden Ventilatorpr fstand unterschieden werden In allen 3 F llen ist die Berechnung der Dichte der feuchten Luft und der kinematischen und dynamischen Viskosit t des Mediums gleich Unterschiede gibt es zum einen bei der Berechnung des Durchflusses Iteration bei der Blende fester Durchflussbeiwert bei der D se zum anderen bei der Berechnung der Totaldruckerh hung Ap von frei ausblasenden Ventilatoren und Ventilatoren mit Rohranschluss Die aerodynamischen Zusammenh nge sind aber in allen F llen die g
41. chne die Eintritts und Austrittsgeschwindigkeit berechne die Totaldruckerh hung berechne die spezifische Stufenarbeit berechne die Lieferzahl berechne die Druckzahl berechne die Leistungs Schnelllauf und Druchmesserzahl berechne den Wirkungsgrad Ausgabe der Berechnungsergebnisse Bild 53 _Struktogramm f r die Berechnung beim saugseitigen Pr fstand 77 4 2 7 config_sub vi Das Sub VI config_sub vi ist ein weiteres Unterprogramm bei dem der Benutzer aktiv auf dem Frontpanel Eingaben vornehmen kann und soll Es dient zur Verwaltung und Speicherung der Einstellungen und wird beim Start des Hauptprogramms automatisch ge ffnet Der Quellcode dieses VIs besteht haupts chlich aus zwei Case Strukturen In der einen befindet sich die Routine um die eingegebenen Daten in eine ini Datei zu schreiben die andere liest gespeicherte Daten aus einer ini Datei aus Die beiden am h ufigsten verwendeten Objekte sind demnach auch Abschnitt RefNum RefNum Ausgang Schl ssel __le93 Gefunden Standardwert 2 Wert Fehler Eingang kein Fehler Fehler Ausgang Schl ssel lesen Read Key vi Bild 54 LabVIEW Objekt Schl ssel lesen und Abschnitt RefNum Schl ssel Wert Fehler Eingang kein Fehler Originalstring schreiben F 1e RefNum Ausgang Fehler Ausgang Schl ssel schreiben Write Key vi Bild 55 LabVIEW Objekt Schl ssel s
42. chreiben Die Funktion dieser beiden Objekte l sst sich am einfachsten anhand der Struktur einer ini Datei erkl ren simulator ini Editor Datei Bearbeiten Format Trennzeichen Leerzeichen TRUE Kalibrierung offsetl 0 000000 Faktorl1 1 000000 offset2 0 000000 offsat 78 Eine ini Datei besteht aus sogenannten Abschnitten und aus Schl sseln Jeder Abschnittsname kommt in einer Datei nur ein mal vor und ist durch eckige Klammern gekennzeichnet Dem Abschnittnamen folgen die Schl ssel die den Wert nach dem Gleichheitszeichen repr sentieren Ein Schl sselname kann in einer Datei mehrmals vorkommen jedoch nur einmal pro Abschnitt Durch dieses System erh lt jeder Wert der in dieser Datei gespeichert ist einen eindeutigen Namen Beim Auslesen sucht man nun nach diesem Namen und erh lt den Wert Beim Schreiben gibt man den Abschnittsnamen und den Schl ssennamen vor und schreibt dann den Wert 4 2 8 geo_read_sub vi Das Sub VI geo_read_sub vi wurde erstellt um den Quellcode des bergeordneten VIs config_sub vi klein und bersichtlich zu halten Der Code ben tigt relativ viel Platz weil der Cluster Geometrie verschiedene Datentypen beinhaltet was dazu f hrt dass keine Schleife zum Einlesen der Daten verwendet werden kann sondern jeder Wert separat eingelesen werden muss Die Definition des Datentyps erfolgt bei dem Objekt Schl ssel lesen durch Angabe eine
43. chselt in die Betriebsart Messung und nach Abschluss der Messung wieder zur ck in die Betriebsart online Messung Die aktuelle Nummer des Messpunktes wird nach jedem Durchlauf eines Zyklus der Betriebsart Messung um eins erh ht Der Benutzer hat aber auch die M glichkeit jeweils den letzten Messpunkt zu berschreiben um die Messung zu wiederholen Der Schalter Sound Automatik dient zur Aufzeichnung der Sounddaten Die beiden Schalter rechts daneben Record und Stopp k nnen bet tigt werden man sollte aber davon absehen da dies unter Umst nden dazu f hren kann dass die Steuerung des Programmes aus dem Takt ger t weil sich 2 parallel abzuarbeitende While Schleifen gegenseitig blockieren Wenn der Schalter Sound Automatik gedr ckt ist dann nimmt die Software nur in der Betriebsart Messung f r die Messdauer eine wav Datei auf und speichert diese im Arbeitsverzeichnis Die Informationen ber 35 das verwendete Sound Format werden in dem kleinen Feld darunter angezeigt Stereo bedeutet in diesem Fall dass auf 2 Kan len Audiodaten aufgenommen werden z B mit 2 Mono Mikrofonen an 2 unterschiedlichen Orten In dem blau umrandeten Display wird online ein FFT der aufgenommen Audiodaten angezeigt Diese FFT ist jedoch nicht skaliert und liefert somit nur Informationen ber die Frequenzanteile nicht jedoch ber den Pegel Das Display wird vertikal durch d nne gr ne Linien in 6 Fehler aufg
44. d damit alle Resourcen die in diesem Prozess verwendet wurden wieder freigegeben werden Dies erfolgt durch das Objekt SI Clear vi Task ID Eingang Fehler Eingang kein Fehler Fehler Ausgang SI L schen SI Clear vi Bild 72 Soundkartentreiber schlie en Mit dem Objekt SI File Write vi lassen sich die aufgezeichneten Daten nun auf die Festplatte in eine Datei speichern Mono 16 Bit Mono 8 Bit Wavedateipfad Soundformat Fehler Eingang kein Fehler Stereo 8 Bit Stereo 16 Bit Wavedateipfad Ausgang Fehler Ausgang Sound Wavedatei schreiben Snd Write Wave File vi Bild 73 Audiodaten in ein wav File schreiben 89 5 Vergleich des PC gest tzten Systems mit herk mmlichen Messger ten Beim Vergleich der Genauigkeit des PC gest tzten Systems mit herk mmlichen Systemen muss man gedanklich zwischen Messger t und Rechner trennen Werden nur externe Messger te verwendet z B Multimeter etc die mit dem Rechner ber eine Schnittstelle verbunden sind so k nnen die Berechnungen im PC k nnen als sehr genau betrachtet werden Zwar macht auch ein PC beim Rechnen mit Fliesskommazahlen einen Fehler dieser liegt aber im Bereich von mindestens 10 oder kleiner ist also technisch in keinster Weise relevant Werden die Messungen im PC selbst vorgenommen z B mit der Soundkarte oder Messkarte so tritt auch im PC ein Messfehler auf Wie bei allen Digitalen Messger ten
45. des Multiplexers mittels SCPI Befehlen 42 Eine Zusammenstellung der verwendeten Befehle mit Erkl rung 11 RST ReSeT Setzt das Ger t in den werkseitig eingestellten Ausgangszustand zur ck SYST REM SYSTem REMote Versetzt das Ger t in die extern gesteuerte Betriebsart f r den RS232 Betrieb Alle Tasten der Frontplatte au er der Taste local werden bei dieser Betriebsart deaktiviert CONF VOLT CONFigure VOLT Konfiguriert einen Kanal oder eine SCAN Liste f r Spannungsmessung M gliche Optionen DC oder AC die Angabe des Bereiches und der Genauigkeit 10 0 001 ist optional CONFigure CONF TEMP TEMPerature Konfiguriert einen Kanal f r Temperaturmessung Im Lieferumfang des Multiplexers ist ein Thermoelement ThermoCouple des Typs J enthalten ROUT ROUTe Befehl f r das Konfigurieren von zu beobachtenden zu messenden Kan len Die gemessenen Werte werden im nicht fl chtigen Speicher des Ger tes abgelegt und stehen dort zur weiteren Verwendung zur Verf gung FETC FETCh Befehl um die im nicht fl chtigen Speicher des Multiplexers abgelegten Werte auszulesen der Speicher wird danach geleert CALCulate CALC AVER AVERage es wird der Mittelwert der im nicht fl chtigen Speicher des Ger tes abgelegten Werte f r die angesprochenen Kan le berechnet und an die Schnittstelle gesendet 43 ROUT MON ROUTe MONitor Konfigurieren des Monitors online Anzeig
46. die dem Multiplexer zum Messen zur Verf gung gestellte Zeit zu kurz war Darum wurde der Faktor nach und nach auf 1150 erh ht bis ein zufriedenstellendes Ergebnis erreicht war Eine halbe Sekunde ben tigt der Multiplexer durchschnittlich um den empfangenen String auszuwerten und die Messung auszul sen 4 2 4 array_sort vi Das Sub VI array_sort vi wird verwendet um ein zweidimensionales Array nach einer Spalte der Gr e nach aufsteigend zu sortieren Die programmiertechnische Umsetzung ist relativ simpel 71 Bestimme die Anzahl der Zeilen des 2D Arrays F r die Anzahl der Zeilen im Array mache folgendes ermittle den Index a des kleinsten Elements in Spalte x des Eingangsarrays f ge die Zeile a des Eingangsarrays als Zeile i in das Ausgangsarray ein l sche die Zeile mit dem Zeilenindex a aus dem Eingangsarray Schleifenindex i gib das sortierte 2D Array aus Bild 46 Struktogramm 2D Array sortieren Im Eingangsarray wird der Index des kleinsten Elements der Spalte nach der die Sortierung erfolgen soll gesucht Die Zeile in der sich dieses Element befindet wird als erste Zeile in das Ausgangsarray eingef gt anschlie end wird die Zeile aus dem Ausgangsarray gel scht Anschlie end wird wieder in dem nun verkleinerten Eingangsarray das kleinste Element in der Spalte nach der sortiert wird gesucht die Zeile in der sich das Element befindet als zweite Zeile in das Ausgang
47. dizieren aus der Tabelle extrahiert werden und dem Ausgangscluster gemessene Spannungen zugef hrt werden delta_p_E K106 Luftf K107 Bild 60 Array indizieren und Werte in den Ausgangscluster schreiben 4 2 11 timewait vi Das Sub VI timewait vi ist ein sehr kleines VI Es hat lediglich den Zweck eine Struktur f r einen bestimmten Zeitraum warten zu lassen Der Quellcode besteht aus einer Sequenz mit 2 Rahmen und einer while Schleife In Rahmen 1 wird der aktuelle Timer Wert eingelesen In Rahmen 2 wird so lange der aktuelle Timer Wert ausgelesen und mit dem Wert aus Rahmen 1 plus die Wartezeit in Millisekunden verglichen bis dieser gr er ist Bild 61 Quellcode von timewait vi Das besondere an diesem VI im Gegensatz zu den anderen Sub VIs ist die Priorit t mit der es ausgef hrt wird Mit einem Mausklick auf Datei VI Einstellungen gelangt man in ein Men in dem man unter der Kategorie Ausf hrung w hlen kann ob die Bearbeitung dieses VI im Bezug auf das aufrufende VI eine niedrigere oder h here Priorit t hat 82 gt YI Einstellungen en x Kategorie Ausf hrung Priorit t Bevorzugtes Ausf hrungsssytem Hintergrundpriorit t niedrigste gleiches wie Aufrufer I Ablaufinvariante Ausf hrbarkeit IV Automat Behandlung von Men s beim Start 7 Nach ffnen ausf hren IV Debugging aktiviert 7 Bei Aufruf unterbrechen I Anzeigeelemente bei Aufruf l sc
48. e der gemessenen Werte auf dem Display des Multiplexers M gliche Optionen STATus ON oder OFF Monitor f r einen bestimmten Kanal ein oder ausschalten Die werkseitige Einstellung ist zun chst OFF Wird das Monitoring eingeschaltet so kann der Kanal mit dem Drehknopf auf dem Frontpanel des Multiplexers ausgew hlt werden ROUT SCAN ROUTe SCANnen mit diesem Befehl wird die SCAN Liste festgelegt z B bedeutet 101 112 dass die Kan le 101 bis 112 in die SCAN Liste aufgenommen werden TRIG TRIGger Befehl zur Konfiguration des Triggers TRIG TIM TRIGger TIMe Befehl zur Messung ber ein bestimmtes Zeitinterval TRIG COUN TRIGger COUNt Befehl zur Messung ber eine bestimmte Anzahl von Messpunkten INIT Startet den Trigger Wenn keine Parameter angegeben wurden die das Ger t dazu veranlassen auf z B eine bestimmte Uhrzeit zu warten und eine SCAN Liste konfiguriert ist dann startet das Ger t sofort Aus Bild 20 wird auch die Messkonfiguration ersichtlich Die SCAN Liste umfasst 12 Kan le 101 bis 112 von denen 11 Kan le 102 bis 112 f r eine Gleichspannungsmessung im Bereich von 0 bis 10 V und einer Aufl sung von 0 001 V konfiguriert sind und einer Kanal 101 f r eine Temperaturmessung mit einem Thermoelement Typ J Es handelt sich dabei um das im Lieferumfang enthaltene Thermoelement Der Monitor wird bei der Initialisierung auf Kanal 101 gesetzt so dass der Multipl
49. e wieder einzulesen Dieses Feature ist z B beim Neustart des Programms n tzlich man erspart sich den Aufwand alle Parameter neu eingeben zu m ssen Dem User steht die Wahl des Dateinamens frei sinnvoller weise w hlt man z B jedoch einen Namen der zum Ordnungsnamen des Messdatenfiles passt oder Aufschluss ber die Pr fstandskonfiguration gibt 47 3 6 Verarbeitung der eingelesenen Messgr en 3 6 1 Umwandlung der Strings in Zahlen Die am COM Port eingelesenen Daten liegen als Strings vor Der Multiplexer verwendet dabei standardm ig das wissenschaftliche Zahlenformat mit 8 Nachkommastellen d h eine gemessene Spannung von 23 5 Volt wird angegeben als 2 35000000E 1 Damit diese Spannungen zu Messgr en umgewandelt werden k nnen m ssen die Strings in Zahlen umgewandelt werden Dies geschieht in dem Unterprogramm string2num_sub vi ring2num_sub vi p Datei Bearbeiten Ausf hren Werkzeuge Durchsuchen Fenster Hilfe Maaaal olm 13pt Anwendungsschriftart w Ferne A String2Num Settings eingelesene Spannungen lesener String Bild 23 Sub VI string2num_sub vi Das Hauptprogramm bergibt an dieses Sub VI den eingelesenen String und die Einstellungen zur Umwandlung und erh lt nach Abarbeitung des Sub VIs Zahlenwerte eingelesene Spannungen zur ck W hrend der Programmierung ist aufgefallen dass mit Einstellungen der verwendeten LabVIEW Objekte Probleme auftraten wenn der Rechner ge
50. eine gr ere Anzahl von einzelnen Elementen zu einem bersichtlichen Element zusammenzufassen und somit die Daten zu strukturieren In Bild 13 ist u a das Symbol des Clusters Konstanten zu sehen der die zur aerodynamischen Berechnung ben tigten Konstanten z B die Gaskonstante oder den Laufraddurchmesser etc beinhaltet Das Praktische an Clustern ist dass alle darin enthaltenen Objekte einen Namen haben und der Programmierer mit dem Objekt nach Namen aufschl sseln die Anmerkung dieser Code ist nicht in der Version 9 3d zu finden sondern stammt aus einer lteren Version 29 M glichkeit hat definiert auf einen einzelnen Wert zur ckzugreifen oder mit dem Objekt nach Namen b ndeln auch einen einzelnen Wert schreiben kann Sinnvoll angewendet d h es werden Daten die zu einer Gruppe geh ren z B Berechnungsergebnisse oder Konstanten zusammengefasst erleichtern Cluster die Programmierung erheblich leisten einen wichtigen Beitrag zur Vermeidung von un bersichtlichem Kabelwirrwarr und machen somit den Quellcode leichter lesbar und verst ndlicher 3 2 4 Sub VIs Ein Sub VI ist wie der Name schon sagt ein Unterprogramm und kann f r verschiedene Zwecke eingesetzt werden Die Programmierung eines Sub VIs bietet sich z B an wenn man eine ganz bestimmte Funktion oder Routine in einem Programm fter ben tigt Zwar w re es theoretisch m glich den Code mittels Copy amp Paste so oft w
51. eit durch das Sub VI timewait vi in einen Wartezustand versetzt wird der wenig CPU Leistung beansprucht Der letzte Rahmen der Sequenz des Hauptprogramms wird erst dann erreicht wenn die while Schleife in Rahmen 3 terminiert weil der Ende Schalter bet tigt wurde Dieser Rahmen dient nur dazu das Programm sauber zu beenden d h die ge ffneten VI Referenzen und der COM Port Treiber werden mit Hilfe der entsprechenden Objekte wieder geschlossen 69 4 2 2 2kanalfft_flattop_sub vi und 2kanalfft_sub vi Die beiden VIs sind fast identisch beide berechnen mit Hilfe des LabVIEW Objekts Auto Power Spectrum das Frequenzspektrum eines Zeitsignals f r einen oder 2 Kan le und geben dieses aus Der Unterschied liegt in der verwendeten Fensterfunktion Wie der Name schon andeutet verwendet das Sub VI 2kanalfft_flattop_sub vi die Flat Top Fensterfunktion das Sub Vi 2kanalfft_sub vi verwendetet dagegen das Hanning Fenster Der Quellcode stammt aus einem Beispielprogramm Sound Card Simple Spectrum Analyer vi das in der LabVIEW Hilfe enthalten ist und fast unver ndert bernommen werden konnte Notwendige Anpassungen waren e Die Aufzeichnung der Sound Daten erfolgt im Hauptprogramm d h das Objekt sound read und damit zusammenh ngende Objekte wurden entfernt e es wurde eine Case Struktur eingebaut die bei der Berechnung die verschiedenen m glichen Formate 8 oder 16 bit stereo oder mono be
52. eiten Ausf hren Werkzeuge Durchsuchen Fenster Hilfe BI afn 13pt Anwendungsschriftart tor iar Dateiausgabe in AGILENTSAETOAIMEEREENTT ml CB Ga e u aA Leed c c DAAnwendenBerge Test c 2001 Ch Berger Einstellungen Auswerten 100 y H CO DAEK o EK do Ez alte Norm Eck Druckentn Soundformat f 1 konstant v E 16 bi Bild 16 Frontpanel des Messdatenerfassungssystems Im obersten Abschnitt befinden sich die Bedienelemente zum Beenden des Programms zum Anzeigen der Einstellungen zum Starten des Auswerteprogramms sowie die Anzeige f r den Arbeitspfad und den Dateinamen der Datei in dem die Daten gespeichert werden Im linken oberen Bereich befinden sich die Anzeigeelemente die den Status der RS232 Schnittstelle anzeigen Die Nummer des verwendeten COM Ports wird als Zahl angezeigt die LED COM online leuchtet wenn die Initialisierung des COM Ports in der Startphase des Programms ohne Fehler durchgef hrt worden ist Sollte die Initialisierung fehlgeschlagen sein so bleibt die LED COM online aus stattdessen leuchtet die LED Fehler rot Das Programm muss in diesem Fall neu gestartet werden Die LED Lesen blinkt in der Betriebsart online oder Messen auf wenn Daten von der RS232 Schnittstelle gelesen werden Wenn keine Messung 34 durchgef hrt wird sich das Programm also im Leerlauf befindet leuchtet die LED dauerhaft Das Bedienelement
53. ekte Ergebnisse liefert In eigenen Untersuchungen konnte auch festgestellt werden dass Dank des fast linearen Frequenzgangs der hier verwendeten Soundkarte eine Kalibrierung mit Pistonfon und Kalibrator gute Resultate liefert 5 2 Temperaturmessung Das Agilent 34970A Messdatenerfassung Schaltsystem verf gt auf der verwendeten Messkarte Typbezeichnung HP 34901A 20 Kanal Anker Multiplexer ber eine eingebaute Thermoelement Vergleichsstelle Die Messung der Lufttemperatur wird mit dem im Lieferumfang enthaltenen Thermoelement Typ J durchgef hrt Im Vergleich zu Pr zisionsmessger ten die bis zu 0 1 Kelvin aufl sen k nnen ist ein Thermoelement mit einer Genauigkeit von 1 5 K relativ ungenau Eine Verbesserung der Genauigkeit w re z B durch die Benutzung von Platin Widerstandsthermometern m glich Hier kann man wenn man Preis und Leistung abw gt durchaus eine Aufl sung von 0 1 K erreichen allerdings mu bei Pt Widerstandsthermometern auch die Zeitkonstante beachtet werden da diese wesentlich tr ger sind als Thermoelemente Bei genauerer Betrachtung des Berechnungsmoduls und der berlegung was eine genauere Temperaturmessung denn f r Auswirkungen auf die Genauigkeit der Ergebnisse hat kommt man jedoch schnell zu der Auffassung dass eine Erh hnung I bei Luftstr mungen ist die Bestimmung auf 0 1 K schon mit einem sehr gro en Aufwand verbunden 91 der Genauigkeit der Temperaturmessung r
54. elativ wenig Einfluss auf die Genauigkeit der Resultate hat Dies ist darauf zur ckzuf hren dass die gesamte aerodynamische Berechnung f r eine hydraulische Str mungsmaschine ausgef hrt ist bei der die Temperatur nur in die Berechnung der Dichte eingeht Diese Berechnung wird auch nur ein mal pro Messzyklus ausgef hrt Des weiteren geht die Dichte in die meisten Gleichungen mit der Potenz 1 ein Eine Verbesserung der Genauigkeit h tte also nur Auswirkungen auf technisch nicht mehr relevante Nachkommastellen und lohnt sich somit nicht Ein weiterer Messfehler entsteht durch die Iteration des Durchflusskoeffizienten mit dem im Berechnungsmodul der Massenstrom und die Reynoldszahl berechnet werden Bedingt durch die Abbruchbedingung der while Schleife die terminiert wenn sich der Massenstrom um weniger als 0 000001 ndert ist auch der hierbei entstehende Fehler technisch nicht relevant 5 3 Druckmessung Die Genauigkeit der Druckmessung ist von 2 Faktoren abh ngig Zum einen ist die G te des verwendeten Messger ts sehr entscheidend Zum anderen entstehen auch bei der Spannungsmessung mit dem internen Digitalmultimeter des Multiplexers Fehler Die verwendeten Druckmessger te der Firma Mecotec weisen je nach Ausf hrung eine Abweichung von 12 5 Pa bei der Ausf hrung 0 bis 50 mbar dies entspricht der angegebenen Abweichung von 0 25 vom Endausschlag der f r alle Typen gilt bzw sogar bis zu 250 Pa bei der Ausf hrung 0 b
55. en und nur Mittelwerte auszulesen entlastet den PC Die so frei gehaltenen Systemressourcen k nnen nun f r andere rechenintensive Operationen wie z B eine real time Fast Fourier Transformation der audio Daten verwendet werden Zusammenfassend l sst sich sagen dass ein Programm erstellt wurde das in der bestehenden Form den Anspr chen an eine normgerechte Pr fstandsmessung gen gt und dar ber hinaus durch den modularen Aufbau und die detaillierte Dokumentation des Quellcodes auch offen f r zuk nftige Erweiterungen oder nderungen ist 100 Literaturverzeichnis 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Dubbel Taschenbuch f r den Maschinenbau 18 Auflage 1995 Springer Verlag Berlin Lessenich Reinartz Laborskript Bestimmung der Luftfeuchte Bohl W Technische Str mungslehre 11 Aufl 1998 Vogel Verlag W rzburg DIN EN ISO 5167 1 von 1995 und 1998 VDI Richtlinie Abnahme und Leistungsversuche an Ventilatoren Kameier Vorlesungsskript Str mungsmaschinen FH D sseldorf 2000 Taschenbuch der Mathematik 25 Auflage 1991 Verlag Nauka Moskau Anmerkung des Verfassers bekannt als Bronstein Bohl W Str mungsmaschinen 1 7 Aufl 1998 Vogel Verlag W rzburg Bohl W Str mungsmaschinen 2 5 Aufl 1995 Vogel Verlag W rzburg Eggert R Diplomarbeit zum Thema Objektorientierte Programmierung eines 2 Kanal Frequenz
56. er Aufwand ist in diesem Falle die hineingesteckte mechanische Arbeit mit der die Maschine angetrieben wird Der Nutzen einer Str mungsmaschine sind die Totaldruckerh hung und der gef rderte Volumenstrom Somit ergibt sich der Wirkungsgrad einer Str mungsmaschine zu _ 4v AP n P oder genauer als der auf den Ansaugzustand bezogener Wirkungsgrad q qve Ap Pu 22 2 4 2 dimensionslose Kennzahlen Bei den dimensionslosen Kennzahlen einer Str mungsmaschine handelt es sich um durch Normierung gewonnene dimensionslos gemachte Gr en aus der Druckerh hung der Leistung und dem Volumenstrom Sinn und Zweck dieser Kennzahlen ist es das gemessene Verhalten einer Maschine bei einem bestimmten Betriebspunkt auf andere Betriebspunkte oder geometrisch hnliche Maschinen extrapolieren zu k nnen Die dimensionslosen Kennzahlen w und A sind Kenngr en f r das Betriebsverhalten einer Str mungsmaschine bei vorgegebenem Dyent und vorgegebener Drehzahl n 5 Aus dem Druck bzw der Druckerh hung wird die Druckzahl w 2 Y 2 T i a Da Bei der Berechnung ist zu beachten dass SI Einheiten verwendet werden Darum ist die blicherweise in 1 min gemessene Drehzahl der Maschine umzurechnen Diese Umrechnung wurde in den hier angegebenen Gleichungen bereits ber cksichtigt y 6 Aus dem Volumenstrom wir die Lieferzahl E 4 qy Ko a Vent 60 Aus der Leistung wird die Leistungszahl X Pu 8 3 n
57. erden an das Sub VI Informationen ber die Pr fstandkonfiguration bergeben Hier wird eingestellt ob es sich um einen druckseitigen Pr fstand mit Blendenmessung um einen saugseitigen Pr fstand mit Messd se zur Volumenstrombestimmung oder um einen saugseitigen frei ausblasenden Pr fstand mit Messd se handelt Des weiteren hat der Benutzer die M glichkeit zwischen folgenden Berechnungsverfahren bei der Blendenmessung auszuw hlen e Berechnung von C nach DIN EN ISO 5167 1 vom November 1995 nur Eck Druckentnahme 52 Berechnung von C nach DIN EN ISO 5167 1 A1 vom Februar 1998 f r o Eck Druckentnahme o Flansch Druckentnahme o und D oder D 2 Druckentnahme Berechnung mit konstantem e 1 Expansionszahl Verzicht auf die Bestimmung des Differenzdrucks zum Umgebungsdruck vor der Blende Ap s Berechnung von e mit Ap s d h die Kompressibilit t des Mediums wird ber cksichtigt Die an das Berechnungsprogramm bergebenen Konstanten sind zum einen konstante Stoffwerte zum anderen Angaben zur Geometrie Bezeichnung Wert und Einheit Beschreibung k R 287 2 J z Gaskonstante der trockenen Luft kappa 1 4 Isentropenexponent kJ po u Be c_p 1 004 ER spezifische W rmekapazit t der Luft D_Vent variabel m Meter Durchmesser des Ventilatorlaufrades D_ Rohr _SDMS variabel m Durchmesser des Rohres an der statischen Druckmessstelle Au endurchmesser der Blende
58. eteilt die Anzeige beginnt bei 0 Hz und endet bei 3000 Hz In dem gro en Display links unten werden die ermittelten Daten der online Messung als farbige Kreise und die Daten der gespeicherten Messwerte als farbige K stchen dargestellt Es werden jeweils nur die gerade aktuellen Werte der online Messung angezeigt jedoch alle bereits in der Betriebsart Messung aufgenommenen und gespeicherten Werte Zur besseren Unterscheidung wurden folgende Farbzuordnungen gew hlt rot psi ber phi blau eta ber phi gr n lambda ber phi der Wirkungsgrad ist mit 100 zu multiplizieren um den Wert in zu erhalten Im rechten unteren Abschnitt werden die Ergebnisse der Berechnung und soweit n tig auch die gemessenen Werte als Zahlen mit Einheiten soweit vorhanden dargestellt Die bei der jeweiligen Pr fstandkonfiguration nicht ben tigten oder nicht aufgenommen Werte bleiben dauerhaft 0 z B werden bei dem druckseitigen Ventilatorpr fstand kein Wirkdruck an der D se und keine Druckdifferenz am Eintritt gemessen diese obere Grenze ist nicht endg ltig und kann bis zur Sampling Frequenz erweitert oder verkleinert werden 36 3 3 3 berblick Diese beiden Strukturen Sequenz und While Schleife wurden in Kapitel 3 2 1 explizit erw hnt weil das Hauptprogramm ganz oberfl chlich gesehen aus einer Sequenz und einer While Schleife besteht Messdatenerfassung Hauptprogramm ETOPP Bild 17 stark vere
59. exer standardm ig die Lufttemperatur anzeigt 44 3 4 4 Synchronisierung Wie schon in Kapitel 3 3 4 erw hnt wurde muss das Programm in der Zeit bis der Multiplexer die Daten an den Eingangspuffer der RS232 Schnittstelle sendet in einen Wartezustand versetzt werden da der Multiplexer sonst die laufende Messung mit einer Fehlermeldung abbricht Zwar existiert in LabVIEW das Objekt Warten ms das die Ausf hrung des Programms f r eine bestimmte w hlbare Zeit anh lt dieses Objekt hat aber den Nachteil dass in dieser Zeit das Frontpanel nicht auf Benutzereingaben reagiert und dadurch der Eindruck entsteht das Programm funktioniere nicht richtig oder sei abgest rzt Aus diesem Grund wurde ein Sub VI entwickelt das ebenfalls f r eine bestimmte Zeitspanne wartet jedoch die Ausf hrung des brigen Codes nicht unterbricht Da dieses VI als Sub VI mit niedriger Priorit t ausgef hrt wird ist gew hrleistet dass die wichtigen Tasks die n tige Rechenzeit zur Verf gung haben Sei Bild 21 Sub VI timewait vi Der Quellcode wird in Kapitel 4 2 11 erl utert 45 3 3 Einstellungen Das Messdatenerfassungsprogramm in den fr hen Versionen kam mit relativ wenigen Einstellungen aus Im Laufe der Entwicklung mussten aber immer mehr Parameter ber cksichtigt werden so dass es schlie lich n tig wurde diese aus dem Hauptprogramm auszulagern da dieses sonst zu un bersichtlich geworden w re Zur Verw
60. fen reduzieren xtrapolation in Bild 49 Berechnung eines Polynoms in 2 geschachtelten for Schleifen Das Praktische an dieser Methode ist dass diese L sung f r jeden Grad des Polynoms funktioniert und keine Fallunterscheidungen programmiert werden m ssen da der Grad des Polynoms auch durch die Anzahl der berechneten Koeffizienten und somit durch die L nge des Arrays in dem diese Koeffizienten ausgegeben werden gegeben ist 74 Die u ere for Schleife dient zur Berechnung der St tzstellen Dazu wird die Differenz zwischen gr tem und kleinstem Element durch 100 geteilt jeweils mit dem aktuellen Wert der Schleifenvariablen i multipliziert und zum kleinsten Element addiert d h ohne Extrapolation wird die Kurve mit 100 St tzstellen berechnet In der inneren for Schleife wird f r ein festes x der Wert des Polynoms berechnet Da die for Schleife automatisch indizieren kann d h in Schleifendurchlauf 0 wird das Arrayelement 0 verwendet in Schleifendurchlauf 1 das Arrayelement 1 usw kann man mit der Information ber den Grad des Polynoms die programmiertechnische L sung wie oben dargestellt auf eine einzige sich f r jeden x Wert wiederholende Operation reduzieren 4 2 6 berechnung_sub vi In dem Sub VI berechnung_sub vi sind alle aerodynamischen Berechnungen zusammengefasst Die verwendeten Berechnungsgleichungen sind im Kapitel Grundlagen beschrieben In diesem VI wurde haupts chlich mit dem O
61. fgeschl sselter Cluster mit Anzeigeelementen uusrusss4HHHnnnnnnnnnnn ann nn nn ann nn grafische Anzeige auf dem Frontpanel nnnnennnen nennen nennen Starten des Sub VIs auswertung vi bei Bet tigung des Schalters Auswerten unennnn Code zum verringern des Z hlers f r die Messpunkte unnnnnnnnnnnnnnnnnnnennnn nennen dynamisches erzeugen einen Strings und Berechnung der Messzeit uuu444n4nnnnnnnnnnnnnnnnnnn nn Struktogramm 2D Array sortieren unnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nn Frontpanel von auswertung ViN sennnnnsnnnnnnennnnnnnnnnnnnnnnnnnnnnsnnnnnnnnnnnnnnnnnnnnnnnnnsnnnsnnnnnnnnensnnnssnnnnenennn LabVIEW Objekt allgemeine Polynomanpassung usursrrrHrenennnnnn nennen nennen nennen nennen nennen nenn Berechnung eines Polynoms in 2 geschachtelten for Schleifen r4HHHHHHRRRRRnRn Rn Rn Rn HH HH Berechnung des Durchflusskoeffizienten C in einem Formelknoten us sus444HHHRnn nn nenn nenn nenn Struktogramm des Sub VIs berechnung_sub Vi eeennnennnnenennnnnnnnnnnnnnnn nenn nnnnnennnnnnn nn nnnnennnnnnnn nn Struktogramm f r die Berechnung beim druckseitigen Pr fstand nennen Struktogramm f r die Berechnung beim saugseitigen Pr fstand nennen LabVIEW Objekt Schl ssel lesen uuusss422000000nnnn nn nnnnnnnnn nun nn nn nnnnnnnnn nenn nn nnnnnnnnennnn nun snnnnenenen LabVIEW Objekt Schl ssel schreiben 244
62. gar einfacher sein das Modul neu zu schreiben als den alten Code zu ver ndern Mit Hilfe der folgenden Checkliste soll ein berblick gegeben werden was beim Einf gen eines zus tzlichen Kanals alles beachtet werden muss e Kalibrierfaktor und offset einf gen e Lese und Schreibroutine f r die Konfiguration Konfigurationsdatei anpassen config_sub vi e Ausgangscluster Kalibrierung Ausgang anpassen e Steuerstring zur Mittelwertbildung um einen Kanal erweitern CALC AVER AVER 101 112 Steuerung wird zu agilent_steuerung_sub vi CALC AVER AVER 101 113 e Berechnungsformel f r die ben tigte Messzeit anpassen ggf durch Testen e Ausgangscluster erweitern e Clusterkonstante f r die Elementbezeichnung des Ausgansclusters um das entsprechende Element erweitern e eine zus tzliche Indizierung Index 12 hinzuf gen und mit dem Ausgangscluster Umwandlung in Zahlen string2num_sub vi verbinden e Eingangscluster gemessene Spannungen l schen Umwandlung in e Ausgangscluster von string2num_sub vi Messgr en kopieren einf gen und in Bedienelement kalib_sub vi umwandeln e Ausgangscluster Kalibrierung Ausgang aus config_sub vi kopieren einf gen und in 98 Bedienelement umwandeln eine weitere Kalibrierstruktur bestehend aus Messwert Spannung mal Faktor plus Offset einf gen Ausgangscluster Messwerte und Clusterkonstante f r
63. gebene Objekte gebunden sondern hat die M glichkeit sich eigene Objekte die auch in einer anderen Sprache z B C oder C erstellt werden k nnen mit den gew nschten Eigenschaften zu programmieren Letzteres war auch f r die Entscheidung f r LabVIEW ma geblich da im Vordergrund stand eine flexible erweiterbare und wartbare Software zu erstellen die ggf auch unabh ngig von der Programmierplattform lauff hig ist Zwar war der Einarbeitungsaufwand erheblich gr er als bei DASYLab diesen Nachteil machte LabVIEW aber schnell durch eine sehr komfortable intuitive Bedienung und den Umstand dass es sich um ein Programm handelt nicht um eine an eine bestimmte Software gebundene Applikation wieder wett Als Beispiel f r die Einschr nkungen von DASYLab in der Version 5 6 sei die fehlende M glichkeit der Programmierung einer Iterationsschleife genannt 35 3 2 Grundlegende Programmstrukturen in LabVIEW Ein LabVIEW Programm setzt sich immer aus 2 Komponenten zusammen Der Bedienoberfl che auf der der Benutzer Eingaben vornehmen kann und Ergebnisse angezeigt bekommt und dem Diagramm das den Quellcode enth lt LabVIEW ist eine multitasking multithreading Entwicklungsumgebung gt die nach dem Datenfluss Modell arbeitet D h zwei im Diagramm parallel angeordnete Strukturen werden gleichzeitig ausgef hrt wenn Daten zur Verarbeitung vorliegen Hierzu ein kleines Beispiel Bild 8 Parallele Strukturen in einem
64. hen Abbrechen Bild 62 VI Einstellungen Dieses VI hat nun die niedrigste Priorit t und macht damit Rechenzeit f r wichtigere Unterprogramme wie z B die Aufzeichnung von Audiodaten und die online FFT sowie die Datenerfassung und Berechnung der Ergebnisse frei 4 2 12 umwandlung_csv_sub vi Vor dem Schreiben in die Ausgabedatei werden die Zahlenwerte wieder in Strings umgewandelt Dies geschieht in dem Sub VI umwandlung_csv_sub vi erte in csv Format OF Ete y Bild 63 Quellcode umwandlung_csv_sib vi Die Werte die auf dem Frontpanel zu sehen sind werden als eindimensionales Array an dieses Unterprogramm bergeben Weitere Eingangsgr en sind der aktuelle Messpunkt sowie das gew hlte Trennzeichen Die dem Array entnommen Werte 83 werden in einen String in Exponentialnotation mit 6 Nachkommastellen umgewandelt und zu einem einzigen langen String zusammengef gt Zwischen den Werten wird das gew hlte Trennzeichen gesetzt Diesem langen String wird der ebenfalls in einen String umgewandelte aktuelle Messpunkt vorangestellt Das abschlie ende Zeichen ist ein Carriage Return Damit wird sichergestellt dass in der Dateiausgabe f r jeden Messpunkt eine neue Zeile begonnen wird Der fertige String wird dann wieder an das Hauptprogramm zur ckgegeben wo er in die Ausgabedatei geschrieben wird 4 3 Hilfsprogramme zur Verdeutlichung von Abl ufen Viele komplexe Funktione
65. hl erreicht man mittels Rechtsklick 63 Bild 37 Steuerungs Einlesesequenz Rahmen 7 Auslesen der Strings aus dem Puffer Struktogramm dieser Sequenz Record und Stopp auf false setzen Sound ein aus Steuerstring 1 true un false an den Multiplexer senden Aufnahme tue nichts starten Aufruf Sub VI timewait vi warte f r eine bestimmte Zeit Steuerstring 2 an den Multiplexer senden Aufruf Sub VI timewait vi warte f r eine bestimmte Zeit Anzahl der Zeichen im Aufnahme Eingangspuffer ermitteln beenden diese Anzahl Zeichen aus dem Eingangspuffer einlesen Zeichenkette ausgeben Bild 38 Struktogramm der Steuerungs Einlesesequenz Beim Betrachten der Steuer Einlesesequenz losgel st von dem Sub VI agilent_steuerung_sub vi mag es eventuell unlogisch erscheinen dass die Wartezeiten von der Fehlerabfrage und der Messung addiert sowie die Steuerstrings aus Fehlerabfrage und Messung verkn pft werden Da jedoch Steuerstrings bzw Wartezeit f r den jeweils nicht angew hlten Zustand leer bzw Null sind war dieser 64 Weg die einfachste Methode ohne aufwendige Programmierung von Case Strukturen o das gew nschte Ziel zu erreichen Als n chstes durchlaufen die eingelesenen Daten nun eine Art Weiche Wenn der Benutzer den Button Fehler anzeigen gew hlt hat dann werden die eingelesenen Strings ohne weitere Vera
66. icht bemerkbar da die Ger te auf eine Temperatur von 45 C aufgeheizt werden und diese Temperatur beibehalten wird Der Einfluss der Gastemperatur wird hier nicht explizit ber cksichtigt da aufgrund des Aufbaus des Pr fstandes die Gastemperatur am Messger t gleich der Umgebungstemperatur ist 93 6 Erweiterung der Software F r die Erweiterung der Software gibt es auf Grund der Komplexit t keine universelle L sung Eine nderung des Quellcodes wird nur zu bewerkstelligen sein wenn man zum einen Erfahrung in der Programmierung von LabVIEW hat zum anderen ben tigt man auch Kenntnisse im Bereich Pr fstandsmessungen an Ventilatoren Anhand einiger Beispiele soll nun verdeutlicht werden wie man eine notwendige nderung durchf hrt und was dabei beachtet werden muss 6 1 Beispiel 1 Austausch des Multiplexers Annahme der bisher verwendete Multiplexer kann aus einem nicht n her genannten Grund nicht mehr eingesetzt werden Es steht ein anderes Ger t zur Verf gung das ebenfalls an die RS232 Schnittstelle angeschlossen werden kann und mit SCPI Befehlen gesteuert werden kann Die gesendeten Daten sind ebenfalls Strings L sung Dieses Problem betrifft haupts chlich das Modul agilent_steuerung_sub vi Zun chst m ssen die Steuer Strings gem dem Handbuch so angepasst werden dass der Multiplexer wieder gesteuert werden kann Die Zeit die die Messkarte zur Aufnahme einer Messreihe ben tigt muss ebe
67. ie gew nscht zu vervielf ltigen dies f hrt aber schnell zu einem un bersichtlichen und schlecht strukturierten Programm Der Einsatz von Sub VIs ist in diesem Zusammenhang wesentlich eleganter und ergonomischer da zum einen der Code des Hauptprogramms vergleichsweise klein und berschaubar bleibt zum anderen sich nderungen am Sub VI sofort auf alle Stellen im Code auswirken Weiterhin ist der Einsatz von Sub VIs auch sinnvoll um den Code des Hauptprogramms zu strukturieren und komplexe Funktionen auszulagern Dies hilft dem Programmierer auch beim Debugging da es bei einem nicht gegliederten Quellcode sehr schwer werden kann die komplexen Zusammenh nge zu verstehen und die Datenfl sse nachzuvollziehen und so Fehlerquellen aufzusp ren Die einfachste M glichkeit ein Sub VI zu erstellen ist den entsprechenden Code im Diagramm Fenster zu markieren und im Men den Befehl Bearbeiten Sub Vi erstellen auszuw hlen 30 Bild 14 Sub VI erzeugen LabVIEW erzeugt dann selbst ndig ein neues VI das die n tigen Anschl sse enth lt mit denen das VI als Sub VI in ein anderes eingebunden werden kann Das Sub VI wird als eigenst ndige Datei abgespeichert ist auch ohne das bergeordnete VI lauff hig und kann ohne weiteres auch in anderen VIs verwendet werden Alternativ dazu kann auch jedes bereits bestehende VI so bearbeitet werden dass es als Sub VI eingesetzt werden kann Dazu m ssen Anschl sse defi
68. igen Sub VIs ge ndert werden m ssten Die Multiplikation des Eingangssignals mit dem Faktor sollte wiederum im Sub Vi erfolgen Der ben tigte Eingang muss ebenfalls hinzugef gt werden Da es sich hier um Schall handelt der von einer Maschine in einen geschlossenen Kanal eingestrahlt wird muss die Bestimmung des Schalldruck und Schallleistungspegels mit Hilfe des in der DIN EN 25130 beschriebenen Kanalverfahrens erfolgen Da sich die Schallwellen im Kanal nicht gleichm ig ausbreiten sind auch stehende Wellen in radialer Richtung m glich Der Schalldruck ist dann ber den Kanalquerschnitt nicht mehr konstant und muss r umlich gemittelt werden 13 Dies erreicht man durch Messung an mindestens 3 gleichm ig auf den Umfang verteilten Messstellen oder durch Verwendung eines Drehkanals Der Schalldruckpegel ist der RMS Wert des aufgenommenen kalibrierten Signals Der Kanal Schallleistungspegel Lw ergibt sich aus dem r umlichen Mittelwert des Schalldruckpegels Lp und der Querschnittsfl che A des Kanals sowie einigen frequenzabh ngigen Korrekturen 13 Der prinzipielle Zusammenhang zwischen Lw und Lp ist in folgender Gleichung gegeben A Ly L FIRE 0 96 6 3 Hinzuf gen einer Drehkanalsteuerung Annahme Die Audiodaten sollen mit einem Drehkanal aufgenommen werden Die Steuerung des Drehkanals soll durch das Programm erfolgen die Motorsteuerung verf gt ber eine serielle Schnittstelle L sung Da die
69. infachte Darstellung des Programmablaufes Die u erste Struktur ist eine Sequenz aus 4 Schritten In Schritt 1 Index 0 wird das Hauptprogramm gestartet das mit Hilfe eines Unterprogramms die Einstellungen und die Kalibrierung etc abfragt In Schritt 2 Index 1 werden der COM Port ge ffnet die Einstellungen geladen der Multiplexer in die gew nschte Betriebsart versetzt die Sub VT s referenziert Variablen soweit notwendig zu null gesetzt und die Dateien f r die Speicherung erstellt In Schritt 3 Index 2 befindet sich das eigentliche Hauptprogramm das in einer While Schleife l uft und so lange wiederholt wird bis der Stopp Button gedr ckt wird In Schritt 4 Index 3 werden der COM Port und die referenzierten Unterprogramme wieder geschlossen Diese Reihenfolge ist wichtig um das Programm sauber zu starten und zu beenden Wird dies nicht beachtet so treten u a Laufzeitfehler bei der Initialisierung der RS232 Schnittstelle auf 37 3 3 4 Struktogramm der Messdatenerfassung Der Kern des Programms besteht aus der Messdatenerfassung und der Berechnung der aerodynamischen Gr en Hier stehen 2 Betriebsarten zur Verf gung die sich nur dadurch unterscheiden dass in der Betriebsart Online ber nur 10 Messpunkte gemittelt wird w hrend in der Betriebsart Messung ber eine bestimmte Anzahl von Messpunkten gr er 30 und kleiner 300 gemittelt wird Aufruf des Unterprogramms zur Ko
70. is 1 bar auf Da alle Messger te die Spannung von 1 V bei Vollausschlag ausgeben entsteht dadurch auch ein Fehler bei der ausgegebenen Spannung der bei 2 5 mV liegt Zusammen mit dem Fehler des DMM der bei der verwendeten Messkarte und dem gew hlten Messbereich zwischen 0 6 und 0 8 mV 11 liegt entstehen Ungenauigkeiten bei der Druckmessung im Bereich von 20 bis 320 Pa 92 Da aber diese Ger te Piezokristalle zur Umwandlung des Drucks in eine Spannung verwenden kann man von einem linearen Zusammenhang zwischen gemessenem Druck und ausgegebener Spannung ausgehen Wenn man diese Ger te in regelm igen Abst nden mit einem sehr genauen Fl ssigkeitsmanometer Betz Manometer berpr ft erreicht man auch mit einem derartigen Messger t Genauigkeiten kleiner 1 Pa was ausreichend ist um auch kleine Str mungsgeschwindigkeiten mit ausreichender Genauigkeit aufzunehmen Ein Einfluss der Umgebungstemperatur auf die Genauigkeit der Mekotek Ger te ist nicht berpr ft worden und spielt wie bei allen Druckmessger ten nur f r den unteren Druckmessbereich eine Rolle Die Genauigkeit der von der Fa Pollrich Ventilator verwendeten Druckmessger te des Typs MKS Baratron wird vom Hersteller mit 0 15 vom Messwert angegeben Bei einem zu messenden tats chlichen Druck von 10 Pa bedeutet dies eine Messunsicherheit von 0 015 Pa Dies ist in der Tat eine sehr hohe Genauigkeit Ein Einfluss der Umgebungstemperatur macht sich n
71. isungen nacheinander Schritt f r Schritt ausgef hrt Bild 11 Sequenz mit 2 Schritten Im ersten Schritt Index 0 wird die Summe aus x und y berechnet im 2 Schritt Index 1 wird die Summe aus a und b berechnet 27 3 2 2 Call by Value Call by Reference Wie auch in anderen Hochsprachen gibt es in LabVIEW die M glichkeit Unterprogramme als Funktion zu behandeln und mittels Call by Reference oder Call by Value aufzurufen Die Methode Call by Value bedeutet dass das Hauptprogramm an eine Funktion das Unterprogramm Werte bergibt und vom Unterprogramm die berechneten Ergebnisse zur ckbekommt Zur Verdeutlichung soll das folgende Beispiel dienen Bild 12 Beispiel f r Call by Value Der in Bild 12 dargestellte Quellcode stammt aus dem Auswerteprogramm In Array sind die im Hauptprogramm gemessenem Werte gespeichert Damit die Werte weiterverarbeitet werden k nnen m ssen diese zun chst sortiert werden Dazu dient das Unterprogramm array sort vi Der Aufruf dieses Unterprogrammes erfolgt per Call by Value da die Funktion das Unterprogramm als Sub VI direkt in den Quellcode mit eingebunden ist Die in der Variablen Array enthaltenen Werte werden an das Sub VI bergeben und somit einer weiteren im Sub VI vorhandenen Variablen zugewiesen Mit der Kopie der Daten wird dann das Ergebnis berechnet und an die bergeordnete Programmstruktur zur ckgegeben F r diese Operation wird also im
72. lcode zurechtzufinden ohne dass er die jeweils genaue Funktion des Codes kennen muss Eine detaillierte Erkl rung des Codes ist in Kapitel 4 zu finden 3 3 1 Einschr nkungen Auch wenn w hrend der Programmierung Wert auf eine m glichst multifunktionale Verwendbarkeit gelegt wurde so bleibt die Software dennoch immer eine f r einen Einzelfall erstellte Spezialanwendung die sich ohne nderungen am Quellcode nicht f r andere Zwecke einsetzen l sst Diese Restriktionen gelten ganz besonders f r die Verwendung der Messhardware Ein wesentlicher Bestandteil des Programms ist die Steuerung des Agilent 34970A Messdatenerfassungs Schaltsystems Ohne dieses Ger t ist das Programm ohne sehr gro e Ver nderungen nicht lauff hig es ist aber wahrscheinlich dass sich Ger te hnlicher Bauart des 0 g Herstellers ohne weiteres verwenden lassen Ebenso ist der Anwender bei der Wahl der Schnittstelle auf die an seinem Rechner verf gbaren COM Ports beschr nkt Andere Schnittstellen z B GPIB wurden nicht implementiert Bauartbedingt durch das Agilent 34970A Messdatenerfassungs Schaltsystems ist es erforderlich dass die Messger te Spannungen als Ausgangssignal liefern Eine Messung von Str men ist mit der zur Verf gung stehenden Messkarte ohnehin nur auf 2 Kan len m glich 33 3 3 2 Benutzeroberfl che Das Frontpanel des Messdatenerfassungssystems gliedert sich in 5 Bereiche B aamdes_0 9 3d vi Datei Bearb
73. leichen Die explizite Erkl rung jeder Formel w rde den Rahmen dieser Arbeit sprengen zudem sind die verwendeten Gleichungen bereits in der Literatur 6 8 und 9 sehr gut dokumentiert Stattdessen soll der Ablauf der Berechnungen f r den saugseitigen und druckseitigen Pr fstand mit jeweils einem Struktogramm verdeutlicht werden 76 Start epsilon ja berechnen nein Berechnung Berechnung er zen der wird epsilon 1 der Dichte Fa er dyn und kin berechnet Dampfdruckes Gaskonstanten Viskosit t beende die while Schleife wenn sich der Massenstrom um weniger als 0 0000010 ndert berechne C berechne den Massenstrom berechne den Volumenstrom berechne die Reynoldszahl Berechne die Fl che des Ausblasquerschnitts berechne die Eintritts und Austrittsgeschwindigkeit berechne die Totaldruckerh hung berechne die spezifische Stufenarbeit berechne die Lieferzahl berechne die Druckzahl berechne die Leistungs Schnelllauf und Druchmesserzahl berechne den Wirkungsgrad Ausgabe der Berechnungergebnisse Bild 52 Struktogramm f r die Berechnung beim druckseitigen Pr fstand Start Berechnung Berechnung Berechnung Berechnung a nn e u Dampfdruckes Gaskonstanten dyn und kin Viskosit t berechne den Massenstrom berechne den Volumenstrom berechne die Reynoldszahl Berechne die Fl che des Ausblasquerschnitts bere
74. leistung berechnet Dabei wird die Lagerreibung durch ein Polynom 3 Grades ber cksichtigt Die Koeffizienten dieses Polynoms m ssen in einem Leerlaufversuch ermittelt werden Zur automatischen Bestimmung der Werte f r die Kalibrierung steht das VI kalib vi zur Verf gung Hier ist darauf zu achten dass Gr en die vom Messger t in einer anderen Einheit als Pa ausgegeben werden umgerechnet werden m ssen da das Hauptprogramm und die weiteren Unterprogramme nur mit der Einheit Pa bei Druck Gr en rechnen Das gleiche gilt nat rlich wenn die Kalibrierung manuell z B aus einem Kalibrierschein eingegeben wird 51 3 6 3 aerodynamische Berechnungen Die aerodynamischen Berechnungen sind alle in dem Sub VI berechnung_sub vi zusammengefasst Die verwendeten Berechnungsgleichungen sind in Kapitel 2 zu finden gt berechnung_sub vi Datei Bearbeiten Ausf hren Werkzeuge Durchsuchen Fenster Hilfe Datei Geboten Ausf hren Werkzeuge Durchsuchen Fenster ie _ CLC UUUPI pns Jp 7307 1 0 _ J 7357 eooo Jp 0000 Fosso oso E 0 1278 6 a a oiz 0 0000 o o Jp 0000 IE EEE Bild 25 Sub VI berechnung_sub vi verkleinerte Darstellung Die Eingangsgr en dieses VIs sind die Cluster Messgr en Konstanten und Berechnungsparameter Die Ausgangsgr e ist der Cluster Berechnungsergebnisse In dem Cluster Berechnungsparameter w
75. n wurden nicht im Hauptprogramm selbst entwickelt sondern zun chst als eigenst ndige Anwendung programmiert und getestet Zwar werden diese Programme zum Teil im Messdatenerfassungssystem nicht mehr ben tigt sie eignen sich aber hervorragend um die programmiertechnische L sung nicht trivialer Zusammenh nge losgel st von dem sehr gro en Hauptprogramm zu betrachten und zu erkl ren 4 3 1 iter2 vi Das Programm iter2 vi berechnet den Wert der Folge die bekanntlich gegen die nat rliche Zahl e 2 71828 konvergiert 7 Bild 64 VI iter2 vi 84 Die Iteration l uft in einer while Schleife ab die beendet wird und das Ergebnis an das Anzeigeelement Ergebnis der Iteration sendet vgl Kap 3 2 Datenfluss Modell wenn die Differenz zwischen aktuellem Wert der Berechnung und dem Wert der Berechnung im letzten Schleifendurchlauf kleiner als 1 0 E 16 ist Um diese Differenz bilden zu k nnen ist es notwendig auf den aktuellen und den letzten Wert zur ckzugreifen Dies kann man durch ein Schieberegister bewerkstelligen ein Element der while Schleife das dem Eingang linke Seite den Wert des Ausgangs rechte Seite des vorhergehenden Schleifendurchlaufes zuweist Nach diesem Prinzip l uft die Iteration in dem Sub VI berechnung_sub vi ab mit der die Werte f r den Durchflusskoeffizienten berechnet werden damit Massenstrom und Reynoldszahl ermittelt werden k nnen 4 3
76. nd bergabe mittels lokaler Sequenzvariable Im zweiten Rahmen der Sequenz befindet sich schon deutlich mehr Code In den oberen 2 3 ist die Routine zu finden mit dem der Kopf der Ausgabedatei erstellt wird Dazu werden alle Konstanten und die Kalibrierung in Strings umgewandelt und mit Namen versehen Offset 12 gt Bild 30 Erstellen der Strings f r den Kopf der Ausgabedatei In Bild 30 ist der Code zur Umwandlung des Kalibrierfaktors 12 und des dazugeh renden Offset 12 dargestellt Dazu wird der Cluster Kalibrierung nach Namen aufgeschl sselt und die einzelnen Werte werden jeweils an ein Objekt bergeben das die Zahl in einen String in Exponential Format umwandelt Danach werden die einzelnen Strings zu einem einzigen l ngeren String verkn pft Die Exponentialnotation wurde gew hlt um sicherzustellen dass auch bei kleinen Faktoren Offsets oder Konstanten keine wichtigen Nachkommastellen verloren gehen Diese Operation wird f r die ganze Kalibrierung und alle Konstanten durchgef hrt Anschlie end werden alle diese schon etwas gr eren Einzelstrings nochmals zu einem einzigen String zusammengefasst und in eine Text Datei geschrieben 60 Das Ergebnis bei Verwendung des Semikolons als Trennzeichen sieht folgenderma en aus 36 Messp Lufttemp C p_b Pa delta_p_BL Pa delta_p_A Pa 0 2 13E 01 101E 05 4 66E 00 2 59E 03 1 2 13E 01 101E 05 4 D3E 1 2 66E 03 2 2 13E 01 101E 05 1 32E
77. nen nennen nennen 60 Ausschnitt aus der Ausgabedatei Betrachtung in Excel 4444444H0RRRRRRRnnRnRn nn RR RR HH HH HH HH HH 61 Ausschnitt aus der Ausgabedatei Betrachtung mit Wordpad s4s4sHHHHHHRnRn nenn Rn nenn nn HH HH 61 die Variablen Messpunkt und Speicher Array werden zu Null gesetzt 61 Inhalt der globalen Variablen Speicher Array anzeigen unnnnnnnnnnnnnnnnnnnnn nennen nennen 62 VI Referenz auf string2num_sub Vi neessnnensennnnnenennnnnnnnnnnnnnennnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnnnnnn 63 VI RefNum Bedienelement normalerweise ausgeblendet 244444444444000RRRRRR RR nn RR nn RR nn 63 Steuerungs Einlesesequenz Rahmen 7 Auslesen der Strings aus dem Puffer s es 64 Struktogramm der Steuerungs Einlesesequenz nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nn 64 102 Bild 39 Bild 40 Bild 41 Bild 42 Bild 43 Bild 44 Bild 45 Bild 46 Bild 47 Bild 48 Bild 49 Bild 50 Bild 51 Bild 52 Bild 53 Bild 54 Bild 55 Bild 56 Bild 57 Bild 58 Bild 59 Bild 60 Bild 61 Bild 62 Bild 63 Bild 64 Bild 65 Bild 66 Bild 67 Bild 68 Bild 69 Bild 70 Bild 71 Bild 72 Bild 73 Datenweiche im Hauptprogramm sussssssnnnnanananananannnnnan nn nn ann Hann nn nn nn Hann nn Han nnnnnnnnnnnnnnnnnnnn Sequenz mit referenzierten Sub VIs zur Berechnung u244444nnnnnnnnnnnnnnnnn nennen nach Namen au
78. nennen nennen 14 NENEISKOFBRUFStande nee 15 Bruckseitiger Ventilatorpr fstand une 15 Saugseitiger Ventilatorpr fstand usssns44snnnnnnnnnnnnnnnnnnnnnnnnnnnannnnnnnnnnn 17 aerodynamische Kenngr en are 19 Totaldruckerh hung spez Stutzenarbeit und Wirkungsgrad s 424442 2 19 dimensionslose Kennzahlen an 23 Programmierung der Messdatenerfassung 4ss 4444nnnnnnn nenn nnnnnn nenn nnnn anne 25 LabVIEW oder DASYLab Fr ee Terre 25 Grundlegende Programmstrukturen in LabVIEW ueeasssennnnnnnnsnnnnnnnnnnnnnnnnnnnnnnn 26 Sequenz und While Schleife a aa 27 Call by Value Call by Reference uun2uernnnnennnnnennnnnnnnsnnnnnnnnnnnnnnnnnnsnnennnn 28 U SI IRRE E A E E 29 SUBV ES ee 30 berblick ber das Messdatenerfassungssystem uuuaeesnnnnsnnnsnnnennennenenenenennnn 33 Einschr nkungen een 33 Benitzeroberflache 2 ns ee ninar einden ieaaa 34 Ula SIno e a ne AAEE ae a a ee 37 Struktogramm der Messdatenerfassung 222444s 444Rnnn ann Hann nn nnnnnnnnnnnnnnnn 38 Steuerung eines Agilent Multiplexers uun na 40 Einstellungen zum Betrieb an einer RS232 Schnittstelle 40 Externe Programmierung mit SCPI nel 41 bersicht ber die verwendeten SCPI Befehle sowie Erl uterung 42 SYNCHFONISIEFLNG Her awenenun een een an ae a are 45 Einstellungen seen er rer een 46 Verarbeitung der eingelesenen Messgr en sss 4444nnnnnnnnnn nenn nnnnnnnnnnnnnnnn
79. nfalls ber cksichtigt werden Dazu ist in Abh ngigkeit von der Abtastrate der Karte entweder die Formel Bild 45 mit der die Messzeit berechnet wird anzupassen oder ggf auch neu zu ermitteln Sollte das Format des ausgegebenen Strings nicht dem bisher verwendeten Format hnlich sein so kann es unter Umst nden notwendig sein auch die Routine zur Umwandlung der Strings in Zahlen abzu ndern Normalerweise z B bei einem anderen Trennzeichen sollte dies aber nicht notwendig werden Es ist durchaus denkbar dass auch die Einstellungen des COM Ports ver ndert werden m ssen Diese nderung m sste dann direkt im Hauptprogramm vorgenommen werden 94 6 2 Beispiel 2 Erweiterung der Sound Funktion Annahme Das bestehende Programm soll neben der Aufnahme auch die Momentanwerte von Schallleistung und Schalldruck anzeigen L sung Am einfachsten l sst sich diese Aufgabenstellung realisieren wenn man das Sub VI 2kanalfft_sub vi anpasst da dieses schon auf das Hauptprogramm abgestimmt ist und die ben tigten Gr en bereits in der richtigen Form an dieses Sub VI bergeben werden Die Berechnung von Schallleistung und Schalldruck kann direkt in diesem Unterprogramm erfolgen Da das Sub VI noch nicht ber die ben tigten Anschl sse zur bergabe der berechneten Werte an das Hauptprogramm verf gt m ssen diese hinzugef gt werden Ggf kann es notwendig werden das LabVIEW Objekt Einheiten Skalieren zu e
80. nfiguration des Messsystems RS232 und Multiplexer initialisieren SCAN Liste konfigurieren Sub VIs laden Ausf hrung bis Stop Taste gedr ckt wird Online oder Messung Messung Online Der Multiplexer Der Multiplexer mittelt ber eine einstellbare mittelt ber 10 Messpunkte Anzahl von Messpunkten z B 100 SCAN beginnen warten bis Messung fertig ist SCAN beginnen warten bis Messung fertig ist Strings einlesen Strings einlesen Strings in Spannungen umwandeln Strings in Spannungen umwandeln Spannungen in Messwerte umwandeln Spannungen in Messwerte umwandeln Berechnungen durchf hren Berechnungen durchf hren Ergebnisse anzeigen Ergebnisse anzeigen und speichern Datenerfassung beenden RS232 Schnittstelle schlie en Sub VIs entladen terminieren Bild 18 Struktogramm Unter Messpunkt ist in diesem Zusammenhang der Wert der gemessenen Gr e zu einem bestimmten Zeitpunkt zu verstehen Die Zeitintervalle zwischen zwei Messpunkten sind abh ngig von der Abtastrate des Multiplexers Diese ist wiederum abh ngig von der verwendeten Messkarte und liegt in der hier verwendeten Konfiguration bei 60 Messungen pro Sekunde pro gemessenem Kanal Dies entspricht einer Abtastrate von ca 3 Hz wenn alle 20 verf gbaren Kan le abgetastet werden 38 Da die Mittelung der gemessenen Einzelwerte Messpunkt im Multiplexer vorgenommen wird dami
81. niert werden E dox ioi xi Hife _ Hilfe Je gt Bild 15 VI Symbol und Anzeige der Anschl sse des VIs Normalerweise hat ein VI keine Anschl sse durch die ein Datentransfer zu anderen VIs m glich ist Diese m ssen erst hinzugef gt werden Dazu klickt man in dem Frontpanel Fenster rechts oben auf das VI Symbol klickt mit der rechten Maustaste und w hlt Anschl sse anzeigen Daraufhin verschwindet das VI Symbol und die Anschl sse sind sichtbar Sind keine Anschl sse definiert so sieht man nur ein leeres wei es K stchen Wiederum mit einem Klick mit der rechten Maustaste gelangt man in das Auswahlmen mit dem man Anschl sse hinzuf gen l schen und neu anordnen kann Wenn alle n tigen Anschlussfelder vorhanden sind so kann man mit dem Kabeltrommel Werkzeug die Anschl sse zuordnen in dem man zuerst auf das Bedienelement auf dem Frontpanel klickt und anschlie end auf den Anschluss der zugewiesen werden soll Wenn vorher kein Anschluss zugewiesen 31 war dann ndert sich die Farbe des Anschlusses von wei zu der Farbe die dem Datentyp des Anzeige oder Bedienelements entspricht 32 3 3 berblick ber das Messdatenerfassungssystem Dieses Kapitel soll einen berblick ber die Programmstruktur geben Dabei wird ganz bewusst nicht auf alle Einzelheiten eingegangen und der komplette Quellcode erkl rt sondern nur die grobe Struktur erl utert Dies soll dem Leser helfen sich im Quel
82. ntfernen und durch eine selbst geschriebene Logarithmierung zu ersetzen da der in diesem Objekt verwendete Skalierungsfaktor nicht einstellbar ist sondern in Abh ngigkeit von den Eingangsgr en fest einprogrammiert ist und auch gar nicht f r die Berechnung von Schallgr en vorgesehen ist Zwar ist es m glich das Objekt zu ndern davon sollte aber abgesehen werden da sich diese nderung dann auf ALLE Berechnungen auswirkt die mit diesem Objekt durchgef hrt werden auch solche die gar nichts mit diesem Programm zu tun haben Eine Anpassung bzw Kalibrierung des Eingangssignals mit Hilfe eins Faktors ist mit diesem Objekt ebenfalls nicht m glich was bei der Berechnung des von Schallgr en nat rlich zu falschen Ergebnissen f hrt Den zur Kalibrierung des Eingangssignals ben tigten Faktor sollte man direkt in das Hauptprogramm einbauen oder besser eine Routine schreiben die den Benutzer zwingt diesen Faktor bei jedem neuen Start des Programms mit einem Unterprogramm mit Hilfe von Kalibrator und oder Pistonfon zu ermitteln Der Aufwand der betrieben werden m sste wenn dieser Faktor in die Einstellungen mit 14 es handelt sich hier um ein LabVIEW Objekt dass genauso wie ein Sub VI ge ffnet und bearbeitet werden kann 95 aufgenommen w rde steht in keinem Verh ltnis zum Nutzen da dann alle Cluster sowohl in dem Unterprogramm zur Erstellung der Einstellungen als auch im Hauptprogramm und den davon abh ng
83. odaten aus dem Puffer lesen Dieses Objekt hat f r die Formate mono 8 bit mono 16 bit stereo 8 bit und stereo 16 bit jeweils einen Ausgang Daten sind aber nur an dem Ausgang vorhanden der den durch Soundeingang konfigurieren gew hlten Einstellungen entspricht Die Audiodaten werden als Integer Zahlenwerte werden in Arrays abgelegt Sinnvollerweise legt man um das Einlese Objekt eine while Schleife mit einem Schieberegister in das die eingelesenen Daten eingef gt werden Die aufgezeichneten Audiodaten werden dann bis zum Ende der Schleife im Arbeitsspeicher des PCs abgelegt Bild 70 Audiodaten in einer while Schleife einlesen Diese Methode birgt aber auch die Gefahr dass der Arbeitsspeicher des PCs Voll uft da bei hoher Aufl sung gr ere Datenmengen gesammelt werden 88 A Bei einer Abtastrate von 44 1 kHz CD Qualtit t und einer Aufl sung von 16 bit stereo fallen in einer Sekunde 2 2 Byte 16 bit mal 44100 mal 2 176 4 kByte Audiodaten an was wiederum bedeutet dass eine Aufnahme ber ein Minute unter Umst nden bis zu 10 Megabyte Speicher beansprucht Bei Rechnern mit wenig RAM kann das unter Umst nden zu BlueScreens f hren Durch das Objekt SI Stop vi wird die Aufzeichnung von Audiodaten wieder angehalten Task ID Eingang Task ID Ausgang Fehler Eingang kein Fehler Fehler Ausgang SI Stoppen SI Stop vi Bild 71 Aufnahme stoppen Anschlie end m ssen die Soundkarte un
84. ogramms erl utert wurde soll nun in diesem Kapitel auf den Quellcode eingegangen werden Es wird bewusst darauf verzichtet jedes LabVIEW Objekt einzeln zu erkl ren viel mehr sollen der Zusammenhang zwischen den Objekten und die wichtigsten Abl ufe und Routinen ausf hrlich erkl rt werden F r die Beschreibung der einzelnen verwendeten Objekte ist auch die in LabVIEW integrierte Kontexthilfe deutlich besser geeignet als ein langer Text da dort die ben tigten Informationen praktisch per Mausklick zur Verf gung stehen Kontext Hilfe Logarithmus der Basis 2 Logarithm Base 2 Berechnet log2 x Wenn x D logz x Unendlich Wenn x lt 0 und nicht komplex ist logz x NaN x kann ein Skalar ein Array ein Cluster aus Zahlen oder ein Array aus Clustern aus Zahlen usw sein Klicken Sie hier um mehr Hilfe zu erhalten DW Bild 27 LabVIEW Kontexthilfe zum Objekt Logarithmus zur Basis 2 56 4 1 Liste der zum Programm geh renden Dateien Die folgende Tabelle dient als bersicht ber alle zum Messdatenerfassungssystem geh renden Dateien und Unterprogramme und beschreibt kurz die Funktion Dateiname Typ Beschreibung 2kanalfft_flattop_sub vi 2kanalfft_sub vi Sub VI Sub VI berechnet online die FFT eines Zeitsignals unter Verwendung der Flat Top Fensterfunktion berechnet online die FFT eines Zeitsignals unter Verwendung der Hanning Fensterfunktion aamdes_0 9 3d vi VI
85. orden so m sste das Ger t nach einem Reset erst mit den Standardeinstellungen angesprochen werden und dann wieder auf die neuen Einstellungen initialisiert werden 41 Beim Senden der Befehle muss darauf geachtet werden dass das Ger t nach dem Erhalt eines Befehls der eine bestimmte Zeit in Anspruch nimmt z B Scannen von 100 Messpunkten keine weiteren Befehle annimmt bis die aktuelle Operation abgeschlossen ist Werden in der Zeit in der das Ger t nicht empfangsbereit ist dennoch Befehle gesendet so ignoriert der Multiplexer diese Anweisung und bricht u U die aktuelle Operation mit der Fehlermeldung Query Interrupted ab Dieser Umstand wirkt sich z B im Hauptprogramm in so fern aus dass die Routine die die Daten vom COM Port einliest so lange warten mu ohne auf den COM Port zuzugreifen bis der Multiplexer die zu sendenden Daten in den Eingangspuffer geschrieben hat 3 4 3 bersicht ber die verwendeten SCPI Befehle sowie Erl uterung Die SCPI Befehle an sich sind leicht verst ndlich sie setzen sich aus jeweils 3 4 Anfangsbuchstaben der englischen W rter f r Messen Scannen Berechnen etc zusammen Grunds tzlich gilt SCPI Befehle sind zeilenweise zu senden d h ein Befehl mu mit einem Carriage Return n chste Zeile beendet werden OM Port ROUT MON 101 ROUT MON STAT ON CONF TEMP TC J 101 CONF YOLT DC 10 0 001 102 112 ROUT SCAN 101 112 Bild 20 Initialisierung
86. r cksichtigt e Die grafische Ausgabe wird vom aufrufenden VI bernommen 4 2 3 agilent_steuerung_sub vi Das Sub VI agilent_steuerung_sub vi funktioniert relativ einfach es gibt abh ngig von den Eingangsgr en Messen mit Mittelung true false Online Messung true false Fehler anzeigen true false und Anzahl der Messpunkte numerisch den gew nschten Steuer String f r den Agilent Multiplexer aus Die Steuer Strings an sich sind fest einprogrammiert es handelt sich bei diesem Sub VI also im Prinzip um zwei ausgelagerte Case Strukturen Lediglich der String zur Steuerung der Betriebsart Messung wird dynamisch in Abh ngigkeit von der Anzahl der Messpunkte generiert 70 Bild 45 dynamisches erzeugen einen Strings und Berechnung der Messzeit Die Messzeit wird in Abh ngigkeit von der gew hlten Anzahl der Messpunkte nach einer empirisch ermittelten Formel berechnet t el Z Mess 60 mit n Anzahl der Messpunkte 1150 500 ltu ms und z Anzahl der angesprochenen Kan le Diese Formel entstand durch folgende berlegungen Der Multiplexer kann mit der verwendeten Messkarte maximal 60 Kan le pro Sekunde abtasten F r eine Messung ber 12 Kan le mit 100 Messpunkten ben tigt der Multiplexer also mindestens 20 Sekunden Diese Zahl muss mit 1000 multipliziert werden da das Sub VI timewait vi in Millisekunden rechnet In Versuchen mit dem Faktor 1000 stellte sich aber heraus dass
87. rbeitung in der Anzeige angezeigt an das weitere Programm wird ein leerer String bergeben Ist der Button Fehler anzeigen aus d h die empfangenen Daten sind Messwerte dann werden diese Daten zur Weiterverarbeitung an die nachfolgende Struktur bergeben Bild 39 Datenweiche im Hauptprogramm Nach passieren der Weiche werden die Daten an eine weitere aus 3 Rahmen bestehende Sequenz bergeben In dieser Sequenz wird mit Hilfe der referenzierten Sub VIs der Hauptteil der Rechenarbeit geleistet Bild 40 Sequenz mit referenzierten Sub VlIs zur Berechnung In Rahmen 1 werden die Strings in Zahlen umgewandelt in Rahmen 2 werden mit Hilfe der Kalibrierung aus den Spannungen die Messwerte errechnet und in Rahmen 3 werden anschlie end die aerodynamischen Berechnungen durchgef hrt 65 Da die Sub VIs berechnung_sub vi und kalib_sub vi die Ergebnisse als jeweils einen Cluster zur ckgeben werden die Cluster nach Namen aufgeschl sselt bevor die einzelnen Werte an die entsprechenden Anzeigeelemente bergeben werden Lufttemp in C p_bin Pa E delta_p_BL in Pa Bild 41 nach Namen aufgeschl sselter Cluster mit Anzeigeelementen Die kleinen blauen Zahlen sind die Spaltenindices des Arrays in das die Werte gespeichert werden Diese sind nicht mit dem Anzeigeelement verbunden sondern einfach ein von Hand eingef gter Text Beim ndern des Quellcodes ist es sehr empfehlenswert die
88. riable zu verwenden was jedoch viel umst ndlicher w re als die hier gezeigte L sung Das Element Speicher Array ist eine globale Variable Globale Variablen werden wie ein VI erstellt beinhalten jedoch keinen Code nur ein Anzeigeelement Der Vorteil globaler Variablen ist dass sie auch in anderen VIs ohne spezielle bergabe zur Verf gung stehen es reicht das Symbol in dem jeweiligen VI zu platzieren Es handelt sich also um eine einfache Methode um Werte von einem VI an ein anderes zu bertragen Von dieser M glichkeit wird hier Gebrauch gemacht weil die Daten die das Hauptprogramm misst in dem Sub VI auswertung vi zur Berechnung der Polynomkoeffizienten und zur Anzeige der Kurven ben tigt werden Das besondere daran ist dass die gemessenen Werte auch nach dem Ende des Hauptprogramms noch in der globalen Variablen vorhanden sind es w re also durchaus m glich das Hauptprogramm zu beenden anschlie end das Auswerteprogramm zu starten und mit den Werten der letzten Messung den Versuch auszuwerten Dar ber hinaus stehen die Daten auch jedem anderen VI zur Verf gung Davon kann man z B Gebrauch machen wenn man einfach mal einen Blick auf die gemessenen Werte werfen will Das dazu ben tigte VI ist schnell zu programmieren Speicher Array pen Bild 34 Inhalt der globalen Variablen Speicher Array anzeigen Des weiteren werden in Rahmen 2 die Sub VIs string2num_sub vi kalib_sub_vi
89. rris Gallangher Gleichung 4 Diese lautet Durchflusskoeffizient C 6 0 7 C 0 5961 0 0261 B 0 216 B 0 000521 875 eo ep WEN 0 0188 0 0063 A B 0 043 0 080 0 123 ep 4 0 031 M 0 8 M p 4 1 0 11 A 11 Hierbei bedeuten B Dar D rohr Rep A L es Durchmesserverh ltnis von Blende zu Rohr lt 1 Reynoldszahl bezogen auf den Rohrdurchmesser 0 8 I nicht die Fl che Re a 1 B das Verh ltnis des Abstandes der Druckentnahme im Einlauf von der Blendenstirnseite zum Rohrdurchmesser das Verh ltnis des Abstandes der Druckentnahme im Auslauf von der Blendenr ckseite zum Rohrdurchmesser L bedeutet den Bezug auf den Abstand von der Blendenr ckseite an L w rde sich auf den Abstand von der Blendenstirnseite beziehen D Unterscheidung von D F Flansch und Eck Druckentnahmen Eck Druckentnahme LS 0 D und Druckentnahme Li 1 L 0 47 Flansch Druckentnahme HE L3 D 25 4 Rohr Die brige Berechnung hat sich nicht ge ndert und wird wie in EN ISO 5167 1 1995 durchgef hrt 12 2 2 2 Messung mit Normd se Das genaue Berechnungsverfahren zur Bestimmung eines Massestroms mittels Einlaufd se ist ebenfalls in der DIN EN ISO 5167 1 festgelegt 4 Hier gilt die Apni e Ausgabe von 1995 s Ar
90. s Standardwertes eines bestimmten Typs ven Booleschen Wert Numerischen Wert einlesen einlesen Bild 56 Schl ssel einlesen Da die bergabe der ausgelesenen Werte an den Ausgangscluster nicht sequentiell erfolgen kann m ssen alle Schl ssel parallel eingelesen und bergeben werden was dazu f hrt dass f r jeden einzulesenden Wert ein eigenes Objekt mit der dazugeh rigen Definition des Standardwertes verwendet werden muss 10 dies ist sicher keine besonders elegante L sung 79 4 2 9 simulator vi Das Sub VI simulator vi simuliert den Betrieb am Pr fstand Dieses Unterprogramm ist in das VI aamdes_0 9 3sim vi eingebaut und ersetzt dort die Strukturen zur Steuerung des Multiplexers und zum Einlesen der Daten von der RS232 Schnittstelle Die Strings die normalerweise von dem Ger t gesendet werden werden im Simulatorbetrieb nun von dem Unterprogramm generiert Die Steuerung des Sub VT s erfolgt durch ein zus tzliches Bedienfeld im Hauptprogramm Dort werden auch die ben tigten Parameter eingestellt phi Simulator canson oE Luftfeuchte2 Umgebungsdruck2 Drehzahl 2 Lufttemperatur 0 0040 Jo 0se0 Ba r 0 63 J101200 00 Pa J sco 1 min Jz 0 oc Bild 57 Bedienfelder f r den Simulatorbetrieb F r einen reibungslosen Betrieb sollten entweder die Konfigurationsdatei Simulator ini geladen werden oder aber sinnvolle Einstellungen gew hlt werden Hierbei gilt es zu beachten d
91. s den eingelesenen Spannungen mit Hilfe der Kalibrierung die Messwerte erzeugt werden simulator ini config Konfigurationsdatei f r das Hauptprogramm Datei in dem die n tigen Einstellungen f r den Simulationsbetrieb aamdes_0 9 4sim vi gespeichert sind simulator vi Sub VI Hilfsprogramm das den Pr fstand simuliert und einen String ausgibt den der Multiplexer bei der Messung senden w rde speicher _array vi globale Globale Variable in der die in der Variable Betriebsart Messung aufgenommenen Werte gespeichert und zur Weiterverarbeitung in auswertung vi bereitgestellt werden standard ini config Konfigurationsdatei mit Standardeintr gen Datei Dient als Vorlage zur Erstellung eigener Konfigurationsdateien string2num_sub vi Sub VI wandelt die eingelesenen Strings in Zahlenwerte um testfhd01 ini config Konfigurationsdatei f r den Betrieb des Datei Messdatenerfassungssystems am Ventilatorpr fstand an der FH D sseldorf timewait vi Sub VI Sub Vi das in einer Sequenz eingesetzt f r eine bestimmte w hlbare Zeit wartet und somit den Sprung in den darauffolgenden Rahmen verz gert OHNE die Ausf hrung des brigen Codes zu beeinflussen umwandlung_csv_sub vi Sub VI Umwandlung von Zahlen in formatierten Text 58 4 2 Quellcode Der Quellcode ist in manchen F llen zu gro um als Grafik in diesen Text eingef gt zu werden Darum werden hier nur Fragmente dargestellt Es ist empfehlenswer
92. s erwartet m ssen die Daten vor der bergabe an das Objekt noch in die entsprechende Form umgewandelt werden ennlinie Wirkungsgrad Leistungszah AnzeigeObjekt XY Graph K Achse eta Bild 42 grafische Anzeige auf dem Frontpanel F r die Anzeige der Momentanwerte Druckzahl ber Lieferzahl Leistungszahl ber Lieferzahl und Wirkungsgrad ber Lieferzahl werden die berechneten Gr en zun chst in ein eindimensionales Array umgewandelt und anschlie end in einen Cluster geb ndelt Dabei ist die Reihenfolge zu beachten der Wert der auf der X Achse angezeigt werden soll muss mit dem obersten Eingang des Objektes Elemente b ndeln verbunden werden F r die Anzeige der gespeicherten Werte wird das Speicher Array indiziert d h es werden neue eindimensionale Arrays gebildet die die Werte der Spalte 18 Index 17 Lieferzahl der Spalte 19 Index 18 Druckzahl und der Spalte 17 Index 16 Wirkungsgrad beinhalten Mit diesen 3 Arrays werden die Cluster Druckzahl ber Lieferzahl und Wirkungsgrad ber Lieferzahl gebildet Diese 5 Cluster werden nun wiederum zu einem Array zusammengef gt und an das Anzeigeelement bergeben so dass die jeweiligen Momentanwerte f r Druckzahl ber Lieferzahl Leistungszahl ber Lieferzahl und Wirkungsgrad ber Lieferzahl sowie alle bereits gemessenen und gespeicherten Werte f r Druckzahl ber Lieferzahl und Wirkungsgrad ber Lieferzahl zur Anzeige gebracht werden
93. sarray eingef gt und aus dem Eingangsarray entfernt Dieser Vorgang wird so lange wiederholt bis das Eingangsarray aus Null Zeilen besteht Das Ausgangsarray ist dann das sortierte Array 4 2 5 auswertung vi Das Sub VI auswertung vi ist eines der wenigen Sub VlIs bei denen der Benutzer auch mit dem Frontpanel arbeitet Es dient dazu die Messwerte als Kurven darzustellen die Polynomkoeffizienten dieser Kurven zu ermitteln und das Maximum der Kurve zu ermitteln 72 auswertung vi Datei Bearbeiten Ausf hren Werkzeuge Durchsuchen Fenster Hilfe em 0 0185 1 4298 6 6725 53 3670 256 7113 0 0000 lambda x phi Py A fro Fand Ai 0 13574424 0 00000000 0 00000000 o oooononn Bild 47 Frontpanel von auswertung vi Der User kann die Kurve die er dargestellt haben m chte mittels eines Men s ausw hlen Der Wertebereich die St tzstellen ist durch den kleinsten und den gr ten gemessenen Wert gegeben Die Kurve kann aber mittels des gelben Drehreglers bis um maximal 100 extrapoliert werden Die berechneten Polynomkoeffizienten werden automatisch angezeigt Die Anzahl der Koeffizienten h ngt vom gew hlten Grad des Polynoms ab Sind im Eingangsarray weniger Zeilen vorhanden als der gew hlte Grad des Polynoms so wird automatisch der h chste berechenbare Grad angezeigt Beispiel bei 3 gemessenen Punkten 3 Zeilen im Eingangsarray kann kein Polynom 5 Grades angepasst werden Wird nun der
94. sgesetz ermittelten Wert esnnnnnsnnnnenennnnnnnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnnnnnnnennnnnnnnnnnnnennnnnnssnennnnnensnnnnnnnn 8 Differenz zwischen dem nach Gleichung 3 berechneten Wert der Dichte und dem mit dem idealen Gasgesetz ermittelten Wert uu000s0naHnHn nannten daaa ia a e aaia 8 Prinzipskizze Blendenmessung 44444HHHHHRRnnnnn nennen nennen nennen nenn nennen nennen nennen 9 Prinzipskizze D senmessung 242s2444 0444 2400008000000 anaana A aA Aaaa KENEAN Naaa ee 13 Prinzipskizze druckseitiger Ventilatorpr fstand srsrrrrHHHRennnnnn nenn nenn nennen nennen nennen nennen ern 15 Prinzipskizze saugseitiger Ventilatorpr fstand uursrsrrrsrseennnnnnn nennen nennen nennen nenn nenne nennen 17 Parallele Strukturen in einem LabVIEW Diagramm ussssssssennn en nennen nnnnnnnnnnnnnn nenn nnnnnnnn nennen 26 nacheinander ausgef hrte Berechnungen u4444444HHHHHnRn nenn nenn nen nn nn nn nn nn nn nennen nn n nennen ernennen 26 While Schleife 20 0 42020004220000000n00nsne sand tenadans nenn aa Erai e p a Ei iaa arena riire 27 S q enz Mit 2 Sehritten sissie iinn aidia aian a rdi iradia ria arandia En 27 Beispiel f r Cal by V l Eiss site aupin aa aiaia aa aaa ai nern 28 Beispiel f r Call by References isisi une rennen 29 S ARE 71211101 1 E O T A A E T 31 VI Symbol und Anzeige der Anschl sse des VISs 222444444444400000RRRRRRR RR RR nn nn nn nn nn nn nn nn nennen 31 Fron
95. smaschine keine u ere W rmezufuhr auf kann man den Anteil der W rme an der Gesamtenthalpie vernachl ssigen und nur noch die 19 Druck nderung betrachten 1 In diesem Fall spricht man von einer hydraulischen Str mungsmaschine das F rdermedium wird dabei als inkompressibel angesehen Diese Betrachtungsweise ist nat rlich nur eine inkompressible N herung f r Str mungen kompressibler Fluide Nach Schade Kunz gilt f r die Dichte in einem str menden kompressiblen Fluid folgender Zusammenhang 16 1 Pl mit po Dichte im Ruhezustand x Isentropenexponent und M Machzahl Aus dieser Gleichung l sst sich ableiten dass die Dichte nderung in einer Gasst mung um so kleiner ist je kleiner die Machzahl ist Bei einer Auswertung dieser Gleichung gelangt man f r Luft bei einer Temperatur von 20 C zu folgendem Ergebnis C M ro r ro 30 m s 0 087 0 4 50m s 0 145 1 0 100 m s 0 291 4 2 150 m s 0 436 9 5 Aus dieser Tabelle wird ersichtlich dass die Abweichung bei einer inkompressiblen N herung der Dichte zur tats chlichen Dichte bei Str mungsgeschwindigkeiten bis 50 m s relativ gering ist blicherweise berechnet man Luftstr mungen bis zu einer Machzahl kleiner 0 3 inkompressibel Unter dieser Voraussetzung l sst sich auch die Bernoulli Gleichung in der Form f r station re Str mungen reibungsbehafteter inkompressibler Fluide im Schwerefeld l ngs einer Stromlinie f r
96. t den Quellcode beim Lesen dieses Textes zu ffnen um die hier beschriebenen Schritte nachvollziehen zu k nnen 4 2 1 Hauptprogramm In der Datei aamdes_0 9 3d vi ist der Code f r das Hauptprogramm enthalten Wie schon in Kapitel 3 3 3 beschrieben besteht die grobe Struktur dieses Programms aus einer Sequenz mit 4 Rahmen und einer while Schleife in Rahmen 3 die das eigentliche Messprogramm enth lt und so lange ausgef hrt wird bis der User das Programm mit dem Ende Button beendet Der erste Rahmen Index 0 ist noch relativ einfach zu verstehen Er enth lt nur das Sub VI config_sub vi dessen Frontpanel vgl Kapitel 3 5 beim Aufruf ge ffnet wird damit der Benutzer die n tigen Eingaben vornehmen kann anen TOR aaa Sequenz Rahmen 1 Sub I Einstellungen 1 x Frontpanel beim Laden ffnen IV Frontpanel nach den Aufruf anzeigen IV nach Abarbeitung schlie en Falls urspr nglich geschlossen p Bei Aufruf unterbrechen Bild 28 Sub VI config_sub vi im Rahmen 1 der u eren Sequenz des Hauptprogramms Dieses Sub Vi bergibt nach der Abarbeitung die ben tigten Parameter an das Hauptprogramm wo sie versteckt angezeigt werden und mittels lokaler Sequenzvariablen an die nachfolgenden Rahmen bergeben werden 59 eerlaufmoment Kabrera a o000000000000000000000000000000000 eerlaufmoment Dateipfad Btring2Num Settings Bild 29 Anzeige der Parameter u
97. t nur ein Wert bertragen werden muss ben tigt der Multiplexer eine bestimmte Zeit um die vorgegebene Anzahl von Werten zu messen und den Mittelwert zu bestimmen In dieser Zeit zwischen dem Start des Scan Vorganges und der R ckgabe der Werte durch den Multiplexer muss das Programm warten Da das Agilent 34970A Messdatenerfassungs Schaltsystem die gemittelten Messwerte als Strings an die Schnittstelle bertr gt m ssen diese Strings im n chsten Schritt in Zahlen umgewandelt werden Dies geschieht in dem Unterprogramm string2num_sub vi Die nun vorliegenden Werte sind Spannungen die mit Hilfe des Unterprogramms kalib_sub vi in Messgr en umgewandelt werden Anschlie end werden in dem Unterprogramm berechnung_sub vi die n tigen aerodynamischen Berechnungen durchgef hrt Nach Abschluss dieser Operationen zeigt das Hauptprogramm die ermittelten Ergebnisse auf der Benutzeroberfl che an In diesem Struktogramm ist die Funktion Fehler anzeigen nicht enthalten da diese nicht zur eigentlichen Funktion des Programms dem Erfassen und Auswerten von aerodynamischen Messdaten geh rt sondern lediglich ein Hilfsmittel f r den User ist bei St rungen am Agilent Multiplexer die Fehler auszulesen und den Fehlerspeicher zu l schen 39 3 4 Steuerung eines Agilent Multiplexers Das Agilent 34970 A Messdatenerfassungs Schaltsystem ist ein Multifunktionsger t das mit entsprechenden Einsch ben f r
98. timmt so spricht man von einem auf den Ansaugzustand bezogenen Wirkungsgrad Die Gleichung zur Berechnung der Dichte lautet in diesem Fall p Pe z Ri tumse 273 15 1 0 377861 PP Ps 2 3 2 Saugseitiger Ventilatorpr fstand ww Austritt Index A Pe AB D se Eintritt Index D Index E APou Ape D X Motor Bild 7 _Prinzipskizze saugseitiger Ventilatorpr fstand Bei dieser Konfiguration wird der Massenstrom auf der Saugseite ermittelt Dies ist sowohl mit einer Blende als auch mit einer D se m glich Da die Verwendung der 17 Blendenmessung schon im Kapitel Druckseitiger Ventilatorpr fstand beschrieben wurde und bei der saugseitigen Blendenmessung die gleichen Gesetzm igkeiten gelten wie bei der druckseitigen Blendenmessung wird hier nur noch auf die D senmessung eingegangen Es werden folgende Gr en gemessen bzw ermittelt Umgebungsdruck pg Temperatur der Umgebungsluft tur in C Luftfeuchte die Motorleistung Pwot z B ber Drehzahl und Drehmoment Druckdifferenz Ape und Temperatur te am Eintritt Druckdifferenz Apa und Temperatur ta am Austritt Wirkdruckdifferenz Apo Ist auf der Druckseite weder ein Kanal noch eine Drossel vorhanden so spricht man von einem frei ausblasenden Ventilatorpr fstand Hier gibt es keine M glichkeit die Gr en Druck und Temperatur am Austritt zuverl
99. tpanel des Messdatenerfassungssystems 444444HHHRHRRnRn Rn Rn nn nn non nn nn nn nn nn nn nn nn nn nn n nn nn nn anne 34 stark vereinfachte Darstellung des Programmablaufes snnnnnnn nennen 37 Strukt gramm cc 2a ea ea Den een en Eree 38 Einstellungen der RS232 Schnittstelle uuuu nennen nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn anne 40 Initialisierung des Multiplexers mittels SCPI Befehlen n244444nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn 42 Sub VI timeWalt Mi ann har En han nn a 45 Frontpanel des Sub VI config_sub Vi ueeessnsnneennnnnnnnnnnnnenennnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nn nnnnnnnnnnnnn 46 Sub VEE string2num suUb Vie ee ne a Ren a nennen 48 Sub_VI kalib_sub vi verkleinerte Darstellung 4444444HHRRRHnnnnnnnnnnnnnnnnnnnnnnnnnnnn nn 50 Sub VI berechnung_sub vi verkleinerte Darstellung nennen nennen 52 Bedienelemente zur Sound Aufnahme uusssrs4sHnnnenn nenn nennen nennen nn nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnen 55 LabVIEW Kontexthilfe zum Objekt Logarithmus zur Basis 2N eeesnnnsssnnnnenennnnnnnnennnnnnn nenn nnnennnnnnnnnn 56 Sub VI config_sub vi im Rahmen 1 der u eren Sequenz des Hauptprogramms uneeenn 59 Anzeige der Parameter und bergabe mittels lokaler Sequenzvariable unnunseennensenenennenneennennnn 60 Erstellen der Strings f r den Kopf der Ausgabedatei rrrrrrsnnnnnnnnnnn nn nennen nen
100. ung wenn von einem linearen bertragungsverhalten des Sensors ausgegangen wird durch Multiplikation mit einem Faktor und Addition eines Summanden in eine Messgr e umgewandelt werden Diese Aufgabe bernimmt das Sub Vi kalib_sub vi gt kalib _sub vi Datei Bearbeiten Ausf hren Werkzeug Durchsuchen Fenster Hilfe Se S eee EEE To MT B Te Ee Jo Go Foo om Aoo po 0 Epo Bild 24 Sub_VI kalib_sub vi verkleinerte Darstellung Die Eingangsvariablen blau sind die eingelesenen Spannungen die Kalibrierung bestehend aus einen Faktor und einem Offset pro Kanal die Koeffizienten f r das Polynom f r des Leerlaufmoments und die Schalter mit denen man zwischen druckseitigem und saugseitigem sowie frei ausblasendem Kanalpr fstand ausw hlen kann Bei Auswahl von saugseitigem Pr fstand werden die Gr en Blendenwirkdruck und Differenzdruck am Eintritt zu 1 Pa gesetzt die Eing nge f r Drehzahl und Drehmoment druckseitig werden ignoriert 50 Bei Auswahl von duckseitigem Pr fstand wird die Gr e D senwirkdruck zu 1 Pa gesetzt die Eing nge f r Drehzahl und Drehmoment saugseitig werden ignoriert Wenn zus tzlich frei ausblasend angew hlt ist dann wird auch noch der Differenzdruck am Austritt auf 1 Pa gesetzt Aus Drehmoment und Drehzahl druckseitig bzw Drehzahl und Kraft mal Hebelarm saugseitig wird in diesem VI die an den Ventilator abgegebene Motor
101. ung output Hardware Handshake nein XON XOFF output alt Hardware Handshake nein XOFF Byte 19 XON Byte 17 Parity Error Byte 0 Da eine nderung der Einstellungen f r den Betrieb keine Vorteile bringt wurden die Einstellungen so bernommen Des weiteren f llt das Ger t bei einem Reset auf diese werkseitigen Grundeinstellungen zur ck d h bei einem evtl auftretenden Fehler ist das Ger t nach einem Reset sofort wieder ansprechbar ohne dass die COM Einstellungen neu initialisiert werden m ssen 3 4 2 Externe Programmierung mit SCPI Die zur externen Steuerung des Agilent 43970A Messdatenerfassungs Schaltsystems verwendete Skriptsprache hei t SCPI Die Befehle werden ber die Schnittstelle als Strings gesendet das Ger t wertet die empfangenen Befehle aus und wechselt daraufhin in den gew nschten Betriebsmodus oder f hrt die entsprechenden Aktionen aus Mit Ausnahme des Speichers f r die SCAN Liste verf gt das Agilent 34970A Messdatenerfassungs Schaltsystem aber ber keinen Programmspeicher d h das Ger t reagiert jeweils nur auf den aktuell gesendeten Befehl Eine Abfolge von Befehlen Programm muss also in der Steuerungssoftware implementiert sein Es handelt sich also nicht wie im Handbuch beschrieben um eine externe Programmierung sondern um eine externe Steuerung mit einer speziell daf r entwickelten Software die den Ablauf steuert Anmerkung w ren andere Einstellungen f r den Betrieb gew hlt w
102. w hlten Indices 99 7 Zusammenfassung In der vorliegenden Diplomarbeit wurde ein aeroakustisches Messdaten erfassungssystem mit dem Softwarepaket LabVIEW programmiert Mit der erstellten Software lassen sich Kennliniendaten von Radialventilatoren an einem Normpr fstand aufnehmen und berechnen Die dabei gewonnenen Datens tze kann man als Datenbank betrachten die die Grundlage zur Berechnung von Kennfeldern und zur Auslegung von Ventilatoren darstellt F r die Speicherung der aerodynamischen Daten wurden 2 Datenformate gew hlt die sowohl f r den Menschen z B mit einem Texteditor als auch f r bestimmte Anwendungen leicht lesbar sind Neben der Erfassung der aerodynamischen Daten verf gt das Programm auch ber die M glichkeit akustische Daten mit der Soundkarte des PCs aufzuzeichnen und als Windows Audio File abzuspeichern Die Benutzeroberfl che des Programms ist intuitiv zu bedienen und zeigt alle gemessenen Werte in bersichtlicher Form an Die notwendigen Einstellungen werden zentral verwaltet und k nnen in einer Konfigurationsdatei gespeichert werden Mit einer integrierten Auswerteroutine ist der Benutzer in der Lage die gemessenen Daten der gesamten Messreihe grafisch darzustellen Das verwendete Messdatenerfassungs Schaltsystem der Firma Agilent erwies sich im Betrieb als sehr zuverl ssig und gut f r die Aufgabe geeignet Die M glichkeit tempor re Daten in dem integrierten nicht fl chtigen Speicher abzuleg
103. wechselt 48 wurde Diese Probleme sind darauf zur ckzuf hren dass es m glich ist in den Systemeinstellungen der jeweiligen Plattform das Zeichen f r den Dezimalpunkt zwischen Komma und Punkt umzustellen und der vom Multiplexer gesendete String Kommas als Trennzeichen zwischen den einzelnen Werten verwendet Dies f hrt unter Umst nden zu einer falschen Zuordnung oder dazu dass Nachkommastellen ignoriert werden und die weitere Berechnung somit falsch ist Als Abhilfe wurden die String2Num Settings eingef hrt mit denen der Benutzer die M glichkeit hat vor der Umwandlung das Trennzeichen und den falschen Dezimalpunkt zu filtern und durch andere richtige Zeichen zu ersetzen Unter Umst nden k nnte man auf dieses Unterprogramm auch verzichten Allerdings m sste dann sicher gestellt sein da das System auf die entsprechende L ndereinstellung amerikanisch konfiguriert ist Gerade dieses kann aber eventuell wiederum bei anderen Anwendungen zu Problemen f hren und wird darum vom Bediener des PCs nicht gew nscht Somit w re das Programm auf so einem System nicht mehr lauff hig was bedeuten w rde dass man extra f r diese Anwendung einen eigenen PC zur Verf gung stellen m sste Die Filterung der Zeichen im Programm ist somit die elegantere und flexiblere L sung 49 3 6 2 Umwandlung der eingelesenen Spannungen in Messgr en Um aus den eingelesenen Spannungen Messgr en zu machen muss die Spann
Download Pdf Manuals
Related Search
Dokument dokument dokument pdf dokument 1 dokumentasi documents dokumentumok dokumentacija dokumentenscanner dokumenty word dokumenter denne pc dokumentavgift dokument 1 word dokumentarci dokumentationen dokumentovano ba dokumentenmappe dokument tekstowy dokument logga in dokument scannen dokument artikel dokumenty finansowe krs dokument google word dokumentasi kegiatan dokumente scannen dokument microsoft word
Related Contents
High Speed Data Logger Module Quick Start Tecumseh AEA9415EXAGB Technical Data Sheet Operating Manual - Performance Audio 取扱説明書1 - SOOKI EXTERNAL TEMPERATURE REGULATOR “VENTS TS-1-90“ Manual - English Pages 22 à 30 - Site du groupe scolaire Jean Moulin 東フ レ株式会社 Copyright © All rights reserved.
Failed to retrieve file