LabVIEW-Kurs Fallstudie

16
Birgit Plötzeneder 2011 Aufgabe: Ist das Glas halb voll?

Transcript of LabVIEW-Kurs Fallstudie

Page 1: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Aufgabe:Ist das Glas halb voll?

Page 2: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Roadmap

Aufgabenstellung

Schritt 1: Sound einlesen

Schritt 2: Signalanalyse

Schritt 3: Interpolation, Ausgabe

Schritt 4: Kalibrieren, Dekoration, Realtest

Page 3: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Aufgabenstellung

Wenn man z.B. mit einem Metallteil auf ein Glas klopft, klingt dieses in einer eindeutigen Frequenz. Wenn man es mit Wasser füllt, verändert sich diese.

Gesucht ist ein Programm, das aufgrund der Aufnahme mit der Soundkarte die Füllhöhe des Glases anzeigt.

Übungsziele: mit unbekannten Befehlen arbeiten, Wiederholung von Arrays, komplexen Datentypen, Schleifen,.., Frontpanelgestaltung

Page 4: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 1: Sound einlesen

Die Soundkarte soll gestartet und getestet werden. Das funktioniert mit dem Befehl:

RMT >> Klassisch >> Programmierung >> Audio & Grafik >> Audio >> Eingabe >>Audioaufnahme

Dieser Befehl löst, wenn keine Mikrofone vorhanden sind, einen Fehler aus. Da wir ohnehin nur ein Glas haben (mit dem wir selbstverständlich am Ende testen), simulieren wir den Sound erst einmal.

Page 5: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 1: Simulation

Anstelle der Live-Audioaufnahme verwenden wir *.wav-Files. Zuerst öffnet und dann liest man diese Files. Folgende Befehle erledigen dies:

RMT >> Klassisch >> Programmierung >> Audio & Grafik >> Audio >> Dateien >>Audiodatei öffnenbzw. Audiodatei lesen → benötigen DirectX (!)

Zur Auswahl der Files verwendet man die Case-Aufgabe mit dem Listenfeld(→ Aufgabe 3).

Page 6: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 2: Signalanalyse

Signal einlesen gibt ein Signal als Datentyp.

Unsere Simulation (Audiodatei lesen) gibt ein Array aus Signalverläufen.

Zweckmäßigerweise soll eine Konvertierung erfolgen, so dass man später mit Copy-Paste den Realtest durchführen kann.

→ Komplexe Datentypen

Page 7: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 2: Signalanalyse

Von dem Signal betrachtet man zuerst das Leistungsspektrum. Dazu gibt es eine Funktion:

RMT >> Signalverlauf >> Analoger Signalverlauf >> Signalverlaufsmessungen >> Spektrum ermitteln

Ein Glas hat eine bestimmte Resonanzfrequenz, je nach Wasserstand. Diese bildet das Maximum im Spektrum. Man bekommt das Maximum mit der Statistikfunktion:

Express >> Signalanalyse >> Statistik

Page 8: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 2: Signalanalyse

Von dem Signal betrachtet man zuerst das Leistungsspektrum. Dazu gibt es eine Funktion:

RMT >> Signalverlauf >> Analoger Signalverlauf >> Signalverlaufsmessungen >> Spektrum ermitteln

Ein Glas hat eine bestimmte Resonanzfrequenz, je nach Wasserstand. Diese bildet das Maximum im Spektrum. Man bekommt das Maximum mit der Statistikfunktion:

Express >> Signalanalyse >> Statistik

Anwendungstipp:Beim Graphen fürs Spektrum mit RMT auf die Skala Autoscale X abschalten, dann hüpft die Graphik nicht so!

Page 9: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 3: Interpolation, Ausgabe

Wir messen erst einmal die Resonanzfrequenz für das leere, halbleere und volle Glas.

Die gemessenen Werte können wir einmal in Excel / Calc anschauen.

→ Calc-Datei anschauen

Page 10: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 3: Interpolation, Ausgabe

Erkenntnis: Eine Interpolation ist notwendig.

Wenn man mit LabVIEW arbeitet, ist es oft eine gute Idee, einfach einmal nach Befehlen zu suchen. Man kann dies in der Hilfe tun, oder direkt in der Funktionspalette.

Page 11: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 3: Interpolation, Ausgabe

Angenommen, wir haben uns 1D-Array interpolieren ausgesucht. In der Hilfe (RMT auf Block) findet mandie Belegung.

Page 12: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 3: Interpolation, AusgabeAls Methode haben wir uns für Spline

entschieden. Die Konstante kann man mit Dateneingabe (Tool 2) auf den Pfeil ändern.

X und Y sind offensichtlich Arrays mit Füllstand bzw. Frequenz.

xi ist der gesuchte Wert, yi der Füllstand, bei dem nachgeschaut wird.

Page 13: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 3: Interpolation, Ausgabe

Die Interpolation liefert ein Array → Datentypen!

Ausgabe erfolgt mit einem Tank:

RMT >> Numerische Anzeigelelemente >> Tank

Die Skala muss angepasst werden.

Page 14: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 4: Kalibrieren, Dekoration, Realtest

In diesem Schritt soll man noch die Werte kalibrieren können. Dazu verwendet man den Schalter und eine True-False-Funktion. Die Eingabeelemente müssen in Anzeigeelemente umgewandelt werden.

Wenn der Schalter gedrückt wird (wie bei Klingel), dann wird der Wert der Frequenz übernommen - sonst der alte. Das gibt eine Rückkopplung!

Page 15: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 4: Kalibrieren, Dekoration, Realtest

Als letzter Schritt soll die Deko verändert werden – hierzu großzügig mit Farbe (Werkzeugpalette) und Labels gestalten.

Außerdem können Sie den Tank umgestalten, dazu verwenden ziehen Sie den Bildausschnitt glas.png bzw. tasse.png ins Blockdiagramm.

Dieser wurde mit RMT >> Fortgeschritten >> Anpassen.. erstellt.

Page 16: LabVIEW-Kurs Fallstudie

Birg

it P

lötz

ened

er 2

011

Schritt 4: Kalibrieren, Dekoration, Realtest

Für den Realtest können Sie (nachdem alles klappt!) RMT >> Klassisch >> Programmierung >> Audio & Grafik >> Audio >> Eingabe >>Audioaufnahme statt der Simulation verwenden.