Innerhalb der Studienarbeit ging es um das Auswerten von Datensätzen mittels Matlab inklusive der Darstellung mittels Plot-Funktion. Die Aufgabenstellung umfasst die Erstellung eines universellen Programms zum Einlesen und Darstellen von Messdaten. Die Messdaten bestehen aus insgesamt 5 Spalten, die erste Spalte soll die x-Werte abbilden und die Spalten 2-5 bilden die Messwerte ab. Die Anzahl der Zeilen ist unbekannt. Unter den oben genannten Voraussetzungen soll eine Auswertung erfolgen von: der Bestimmung von Minimum und Maximum, der Ermittlung des Mittelwertes und der Standardabweichung, der Bestimmung der Regressionsfunktion oder Polynoms, der Darstellung der Kurven inklusive Beschriftung (Min,Max,Regression) und die Ausgabe aller ermittelten Werte in eine Textdatei, die mit einem Editor lesbar ist.
Inhaltsverzeichnis
1. Vorstellung des Kurses MATLAB
2. Beschreibung der Aufgabenstellung
3. Einlesen der Daten „Kurven“ mithilfe von MATLAB
4. Aufbereitung der Daten, um sie zu verwenden
5. Auswertung der Messdaten
5.1 Bestimmung des Minimums und des Maximums
5.2 Bestimmung des Mittelwerts und der Standardabweichung
5.3 Bestimmung der zugehörigen Regressionsfunktion
5.4 Bestimmung des Polynoms
6. Visualisierung der Messergebnisse & Messdaten
6.1 Plotten der Messdaten und der Regressionsfunktion
6.2 Beschriftung der Kurven durch eine Legende, Minima und Maxima
7. Berechnung der Gleichung des Polynoms
8. Ausgabe aller Messdaten in eine Textdatei
9. Ergebnisbetrachtung und Fazit
1. Vorstellung des Kurses Matlab
In dem Kurs Matlab geht es darum, mit der Software Matlab einen sicheren Umgang zu erlangen und sich mit der Software auseinander zu setzen.
Durch die intensive Benutzung der Software sollen die Grundfunktionalitäten verstanden, genutzt und durch weitere Erfahrungen im Bereich der Nutzung von Matlab verbessert werden.
Ein weiterer Punkt ist das Aufzeigen der Rechenleistung von Matlab, welche gerade für komplexe numerische Berechnungen durchaus von Vorteil sein kann.
Im Großen und Ganzen bietet der Kurs eine gute Möglichkeit über den bisherigen Tellerrand hinaus zu blicken, um sich von der starren Datenvisualisierung für komplexe Berechnungen von z.B. Excel zu lösen.
2. Beschreibung der Aufgabenstellung
Die Aufgabenstellung umfasst die Erstellung eines universellen Programms zum Einlesen und Darstellen von Messdaten.
Die Messdaten bestehen aus insgesamt 5 Spalten, die erste Spalte soll die x- Werte abbilden und die Spalten 2-5 bilden die Messwerte ab. Die Anzahl der Zeilen ist unbekannt.
Unter den oben genannten Voraussetzungen soll eine Auswertung von:
- der Bestimmung von Minimum und Maximum,
- der Ermittlung des Mittelwertes und der Standardabweichung,
- der Bestimmung der Regressionsfunktion oder Polynoms,
- der Darstellung der Kurven inklusive Beschriftung (Min,Max,Regression)
- und die Ausgabe aller ermittelten Werte in eine Textdatei, die mit einem Editor lesbar ist erfolgen.
Die Programmierung erfolgt mithilfe von Matlab und soll durch eine maximal 15 Seitige Dokumentation im PDF- Format ergänzt werden.
3. Einlesen der Daten „Kurven“ mithilfe von Matlab
Abbildung in dieser Leseprobe nicht enthalten
In dem Programmcode sehen wir, dass die Datei „Kurven.txt“ anfangs geöffnet wird und die einzelnen Spalten als String eingelesen werden.
Um die eingelesenen Werte verwenden zu können, müssen diese Werte erst in einen anderen Datentyp gewandelt werden.
Die Umwandlung der Daten erfolgt im nächsten Schritt.
Abbildung in dieser Leseprobe nicht enthalten
4. Aufbereitung der Daten zur Verwendung
Abbildung in dieser Leseprobe nicht enthalten
Um mit den eingelesenen Werten arbeiten zu können, werden alle Werte in „ readData“ von einer „String Variable“ in eine „Double Variable“ umgewandelt, wo gleichzeitig ein ersetzen aller “,“ stattfindet, sodass Matlab mit den Werten arbeiten kann.
Am Schluss werden alle Spalten in der Variable „data“ gespeichert.
Abbildung in dieser Leseprobe nicht enthalten
Im obigen Schritt wurden alle Werte, welche sich in Data befinden [61x5], einzelnen Spalten zugeordnet. Somit haben wir 5 unabhängige Spalten in 5 Variablen abgespeichert. Der Name der Spalten wurde so gewählt, dass man ohne weiteres erkennen kann, was in den einzelnen Variablen gespeichert ist.
5. Auswertung der Messdaten
5.1 Bestimmung des Minimums und des Maximums
Abbildung in dieser Leseprobe nicht enthalten
Zum Berechnen des Minimums und des Maximums bietet Matlab eine sehr angenehme Möglichkeit an vordefinierten Funktionen „min()“ und „max()“. Diese Funktionen können genutzt werden. In die Klammer wird die jeweilige Variable eingesetzt, von der wir die Ausprägung bestimmen wollen.
Auf die Veranschaulichung der restlichen Spalten wird verzichtet, da es komplett äquivalent funktioniert.
5.2 Bestimmung des Mittelwerts und der Standardabweichung
Abbildung in dieser Leseprobe nicht enthalten
Identisch zu den weiteren Spalten wird zur Berechnung des Mittelwertes die Funktion „mean()“ herangezogen. Eingesetzt wird die jeweilige Spalte, in dem oben ersichtlichen Beispiel die Variable „SP2“ welche die Werte der Spalte zwei verkörpert.
Um die Standardabweichung der Werte zu bestimmen, wird die Funktion „std()“ genutzt.
Sowohl der Mittelwert, als auch die Standardabweichungen wurden den oben genannten Variablen zugewiesen. Die Variablen der anderen Spalten unterscheiden sich in der Endung, wo die Spaltennummerierung erwähnt ist.
Abbildung in dieser Leseprobe nicht enthalten
5.3 Bestimmung der zugehörigen Regressionsfunktion
Abbildung in dieser Leseprobe nicht enthalten
Um einen Einblick in die Statistik zu bekommen: „Die Regressionsfunktion beschreibt die Abhängigkeit zweier Variablen mit einer Geraden. Man spricht auch von der „linearen Regression“ oder auch der „Polynomregression““.
Das vorgehen ist so gewählt, dass die Kovarianz mithilfe von „covQ“ bestimmt wurde. Die Kovarianz wurde aus den X- Werten „ xValue“ und der jeweiligen Spalte „SP2“ bestimmt.
Der Wert „(:)“ innerhalb der beiden Variablen bedeutet, dass die gesamte Spalte bis zum Ende betrachtet wird.
Um die Steigung „slope“ zu bestimmen muss die Kovarianz durch die Varianz geteilt werden. Die Varianz der X- Werte wird mithilfe „var(xValue)“ bestimmt.
Mithilfe des Mittelwertes und der Steigung kann der konstante Y- Wert der Regressionsgeraden bestimmt werden. Man subtrahiert vom Mittelwert einfach die Steigung mal den Mittelwert der X- Werte.
Zum Ende kann aus den Berechneten Werten „slope und const“ die Regressionsfunktion nach dem Schema „slope *x + const“ gebildet werden.
5.4 Bestimmung des Polynoms
Abbildung in dieser Leseprobe nicht enthalten
Unterstützend zur Regressionsfunktion habe ich die jeweiligen Funktionen „polyfit(xValue,SP..,N)“ und „polyval()“ genutzt. Da die lineare Regressionsfunktion nur für den ersten Plot geeignet war, habe ich für die weiteren Spalten ein Regressionspolynom genutzt. Dieses wurde über den Faktor „N“ in „polyfit()“ geändert. Der Faktor N steht für den Gradienten des Polynoms.
Somit hat Spalte 2 den Gradienten 1 und die weiteren Spalten immer einen Gradienten höher gesetzt bekommen, da es auf die Funktionen abgestimmt ist.
Mithilfe der Funktion „polyval()“ kann gezielt für einen beliebigen X- Wert der jeweilige Y- Wert zurückgegeben werden. Diese Funktion wird gerade zum Plotten der Regressionsfunktion oder des Regressionspolynoms wichtig.
Abbildung in dieser Leseprobe nicht enthalten
6. Visualisierung der Messergebnisse & Messdaten
6.1 Plotten der Messdaten und der Regressionsfunktion
Abbildung in dieser Leseprobe nicht enthalten
Beispielhaft an Spalte 2 durchgeführt werden je vier verschiedene Plots für die jeweiligen Grafiken ausgeführt. Als Zusatz habe ich alle Plots in eine „Figure“ gelegt, um alle gegenüberzustellen. Aufgrund der Übersichtlichkeit werden die Beschriftungen der „Minima und Maxima“ nur in die einzelnen Grafiken eingetragen.
Zum Anfang wurden die jeweiligen Parameter der „figure()“ festgelegt. Aus den Ersten beiden Spalten ist ersichtlich, dass der Name bereits festgelegt wurde und der Nummerntitel deaktiviert ist.
Des weiteren habe ich die Achsen mit „axis()“ automatisch gewählt, da es für die Skalierung anschaulicher ist.
Die Variable „p1“ wird zur weiteren Verwendung zugewiesen. In der Variable befindet sich die eigentliche Funktion „plot()“ welche sich aus zwei Plots zusammensetzt. Zum einen werden die eigentlichen Messwerte wie zu sehen geplottet und mithilfe der Eigenschaften „*:k“ sichtbar gemacht. Jeder dieser Zeichen besitzt eine jeweilige Eigenschaft, die die Visualisierung des Plots verändert.
Im hinteren Teil wird die Funktion „polyval()“, welche wir im Abschnitt weiter oben kennengelernt haben Geplottet. Zur Visualisierung sehen wir wieder die gewählten Eigenschaften „g-“ welche für die Farbe und die Art der Linie stehen.
Die jeweiligen Eigenschaften zum Plotten unterscheiden sich von Spalte zu Spalte, um einen generellen Überblick zu verschaffen habe ich die jeweiligen Eigenschaften aufgeführt.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung in dieser Leseprobe nicht enthalten
Mathworks (2019, Q3). Mathworks- Plots. Abgerufen 16. August 2020, von https://de.mathworks.com/help/matlab/ref/plot.html
Mithilfe des Codes „set()“ kann die Breite der Linie bestimmt werden, die in dem Plot zusehen ist.
Eine weitere gesetzte Eigenschaft ist „grid on“ wodurch hinter die Figure ein Gitter gelegt wird.
6.2 Beschriftung der Kurven durch eine Legende, Minima und Maxima
Abbildung in dieser Leseprobe nicht enthalten
Um die Labels, die Legende, das Minima und das Maxima in die bereits geplottete Funktion einzutragen, habe ich den Codebaustein „hold on“ genutzt, wodurch weitere Eintragungen in einer Figure getätigt werden können. (Einschub: Den Code „hold on“ habe ich auch genutzt, um alle Messwerte in einer Figure zu plotten, welche durch die „Fullscreen“ Eigenschaft ergänzt wurde)
Im nächsten Schritt des Codes wurden die Titel für die jeweilige X- und Y- Achse gewählt und der Titel über der Visualisierung der Messwerte.
Ergänzend zu den Achsenbeschriftungen habe ich auch eine Legende eingeführt, welche genau beschreibt welcher Verlauf, welcher Kurve zuzuordnen ist. Um die Legende sichtbar in die Auswertung der Messwerte einzubringen, wurde die Position je nach Messwertdaten gewählt.
Um die Maximalwerte und Minimalwerte in die Grafik eintragen zu können, müssen diese nochmals bestimmt werden. Ich werde anhand des Codes die Suche des Maximalwertes erklären, da die Suche des Minimalwertes analog erfolgt.
Zu aller erst wird der Maximalwert in der Spalte 2 gesucht mithilfe der „find()“ Funktion und der Gefundene Index in der Variable „indexmax“ gespeichert.
Mithilfe dieses Indexes können an dieser Position der X- und Y- Wert bestimmt werden und in den Variablen „ymax undxmax“ gespeichert werden.
Danach wird mithilfe einer „for- Schleife“ der Wert bis ymax abgegangen und an diesem Punkt wird ein Label mit dem maximalen Wert der Y- Koordinate eingesetzt. Um den Wert im Label platzieren zu können, muss der numerische Wert in einen String umgewandelt werden.
Die Ausrichtung wurde „horizontal“ gewählt, die Beschriftung wechselt zwischen linker und rechter Seite, je nachdem was für die Visualisierung besser lesbar ist.
7. Berechnung der Gleichung des Polynoms
Abbildung in dieser Leseprobe nicht enthalten
Um die Gleichung des Polynoms zu bestimmen, habe ich mit einer „for- Schleife“ gearbeitet, welche solange läuft, bis der Polynomregressionsgradient erreicht ist.
Innerhalb dieser Schleife werden mehrere Fallunterscheidungen getroffen „if- Anweisung“, um je nach Wert der Zählervariable „ii“ eine gewünschte Anweisung auszuführen.
[...]
- Citar trabajo
- Dennis Kraus (Autor), 2021, Auswertung von Messdaten mittels MATLAB, Múnich, GRIN Verlag, https://www.grin.com/document/1314745
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X.