Testseite2: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Die Seite wurde neu angelegt: „Kategorie:Arduino thumb|rigth|450px|Abb. 1: Vergleich rauschunterdrückender Filter '''Autor:''' Prof. Dr.-Ing. Schneider<br> '''Modul:''' Praxismodul I<br> '''Lehrveranstaltung:''' Mechatronik, Informatik Praktikum 2, 2. Semester<br>“
 
Keine Bearbeitungszusammenfassung
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 4: Zeile 4:
'''Modul:''' Praxismodul I<br>
'''Modul:''' Praxismodul I<br>
'''Lehrveranstaltung:''' Mechatronik, Informatik Praktikum 2, 2. Semester<br>
'''Lehrveranstaltung:''' Mechatronik, Informatik Praktikum 2, 2. Semester<br>
== Inhalt ==
* Einarbeitung in MATLAB<sup>®</sup>
* Programmierung und Anwendung eines gleitenden Mittelwertfilters
* Programmierung und Anwendung eines rekursiven Tiefpassfilters
* Auslegung von Filterparameter
* Anwendung der Filter auf eine Ultraschallmessung
* Vergleich der Filter anhand technischer Kriterien
== Lernziele==
Nach Durchführung dieser Lektion
* können Sie reale Messwerte speichern und via MATLAB<sup>®</sup> zyklisch visualisieren.
* haben Sie ein gleitendes Mittelwertfilter programmiert.
* haben Sie ein rekursives rekursiven Tiefpassfilter programmiert.
* können Sie die Filter parametrieren.
* haben Sie die Filter zyklisch auf Ultraschallmesswerte angewendet und das Filterverhalten analysiert.
* können Sie eine Funktion in MATLAB<sup>®</sup> programmieren und aufrufen.
== Lernzielkontrolle ==
# Wozu werden rekursive Filter benötigt?
# Nennen Sie die Formel für ein gl. Mittelwertfilter.
# Welche Parameter hat ein gl. Mittelwertfilter? Was bedeuten die Parameter?
# Nennen Sie die rekursive Formel für ein Tiefpassfilter.
# Welche Parameter hat ein Tiefpassfilter? Was bedeuten die Parameter?
# Vergleichen Sie die zwei rekursiven Filter. Nennen Sie Vor- und Nachteile.
# Wurde der Quelltext durch Header und Kommentare aufgewertet?
# Wurde auf <code>magic numbers</code> verzichtet?
# Wurde die Programmierrichtlinie eingehalten?
== Vorbereitung ==
Führen Sie als Vorbereitung den [https://www.mathworks.com/learn/tutorials/matlab-onramp.html MATLAB<sup>®</sup> Onramp Kurs] durch.
'''Arbeitsergebnis''' in SVN: MATLAB<sup>®</sup> Kurszertifikat
== Versuchsdurchführung ==
=== Aufgabe 2.1: Gleitendes Mittelwertfilter ===
Ein gleitendes Mittlwertfilter bildet einen Mittelwert über k Messwerte mittels FIFO.
# Schreiben Sie die Funktion <code>GleitendesMittelwertFilter.m</code>, welches die Eingangswerte zyklisch filtert. Hier bei wird der Mittelwert über die letzten k Messwerte gebildet.
# Testen Sie Ihre Funktion mit Ultraschallmesswerten mit statischen Zielen mit Ihrem Framework <code>zeigeZyklischUltraschallMessung.m</code> und <code>UltraschallMessung.mat</code> Aus den Aufgaben 1.3 und 1.4.
# Visualisieren Sie Messwerte und Filterergebnis in einem Plot mit Achsenbeschriftung und Legende.
# Testen Sie Ihre Funktion mit Ultraschallmesswerten mit dynamischen Zielen.
# Wählen Sie k anhand der Messwerte und diskutieren Sie Ihre Wahl mit Prof. Schneider.
'''Nützliche Befehle''': <code>plot, xlabel, ylabel, legend, persistent, isempty, isnan, function</code>
'''Arbeitsergebnisse''' in SVN: <code>GleitendesMittelwertFilter.m, testeGleitendesMittelwertFilter.m</code>
'''Hinweise:'''
* Nutzen Sie ein Array als FIFO.
* Die Formel für das gleitende Mittelwertfilter lautet: <math>\bar{x}_{GM}(k)=\frac{x(1)+x(2)+\ldots+x(k)}{k}</math> für k Messwerte
<div class="mw-collapsible mw-collapsed">
Eine Einführung zu rekursiven Filtern finden Sie in folgendem Video.<br>
* Gleitendes Mittelwertfilter: 19&thinsp;m 52&thinsp;s
* Tiefpassfilter: 29&thinsp;m
<iframe key="panopto" path="/Panopto/Pages/Viewer.aspx?id=fce4a806-dcbf-4e92-b10d-ac69013d7cb1&autoplay=false&offerviewer=true&showtitle=true&showbrand=true&captions=false&interactivity=all" height="405" width="720" style="border: 1px solid #464646;" allowfullscreen allow="autoplay"></iframe>
'''Demo:''' [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Demos/Arduino/DemoGleitenderMittelwert SVN: DemoGleitenderMittelwert]
Eine ausführliche Beschreibung mit Musterlösung finden Sie in [1, S.&thinsp;11&thinsp;ff.].
</div>

Aktuelle Version vom 19. März 2025, 11:37 Uhr

Abb. 1: Vergleich rauschunterdrückender Filter

Autor: Prof. Dr.-Ing. Schneider
Modul: Praxismodul I
Lehrveranstaltung: Mechatronik, Informatik Praktikum 2, 2. Semester

Inhalt

  • Einarbeitung in MATLAB®
  • Programmierung und Anwendung eines gleitenden Mittelwertfilters
  • Programmierung und Anwendung eines rekursiven Tiefpassfilters
  • Auslegung von Filterparameter
  • Anwendung der Filter auf eine Ultraschallmessung
  • Vergleich der Filter anhand technischer Kriterien


Lernziele

Nach Durchführung dieser Lektion

  • können Sie reale Messwerte speichern und via MATLAB® zyklisch visualisieren.
  • haben Sie ein gleitendes Mittelwertfilter programmiert.
  • haben Sie ein rekursives rekursiven Tiefpassfilter programmiert.
  • können Sie die Filter parametrieren.
  • haben Sie die Filter zyklisch auf Ultraschallmesswerte angewendet und das Filterverhalten analysiert.
  • können Sie eine Funktion in MATLAB® programmieren und aufrufen.

Lernzielkontrolle

  1. Wozu werden rekursive Filter benötigt?
  2. Nennen Sie die Formel für ein gl. Mittelwertfilter.
  3. Welche Parameter hat ein gl. Mittelwertfilter? Was bedeuten die Parameter?
  4. Nennen Sie die rekursive Formel für ein Tiefpassfilter.
  5. Welche Parameter hat ein Tiefpassfilter? Was bedeuten die Parameter?
  6. Vergleichen Sie die zwei rekursiven Filter. Nennen Sie Vor- und Nachteile.
  7. Wurde der Quelltext durch Header und Kommentare aufgewertet?
  8. Wurde auf magic numbers verzichtet?
  9. Wurde die Programmierrichtlinie eingehalten?

Vorbereitung

Führen Sie als Vorbereitung den MATLAB® Onramp Kurs durch.


Arbeitsergebnis in SVN: MATLAB® Kurszertifikat


Versuchsdurchführung

Aufgabe 2.1: Gleitendes Mittelwertfilter

Ein gleitendes Mittlwertfilter bildet einen Mittelwert über k Messwerte mittels FIFO.

  1. Schreiben Sie die Funktion GleitendesMittelwertFilter.m, welches die Eingangswerte zyklisch filtert. Hier bei wird der Mittelwert über die letzten k Messwerte gebildet.
  2. Testen Sie Ihre Funktion mit Ultraschallmesswerten mit statischen Zielen mit Ihrem Framework zeigeZyklischUltraschallMessung.m und UltraschallMessung.mat Aus den Aufgaben 1.3 und 1.4.
  3. Visualisieren Sie Messwerte und Filterergebnis in einem Plot mit Achsenbeschriftung und Legende.
  4. Testen Sie Ihre Funktion mit Ultraschallmesswerten mit dynamischen Zielen.
  5. Wählen Sie k anhand der Messwerte und diskutieren Sie Ihre Wahl mit Prof. Schneider.

Nützliche Befehle: plot, xlabel, ylabel, legend, persistent, isempty, isnan, function

Arbeitsergebnisse in SVN: GleitendesMittelwertFilter.m, testeGleitendesMittelwertFilter.m

Hinweise:

  • Nutzen Sie ein Array als FIFO.
  • Die Formel für das gleitende Mittelwertfilter lautet: x¯GM(k)=x(1)+x(2)++x(k)k für k Messwerte

Eine Einführung zu rekursiven Filtern finden Sie in folgendem Video.

  • Gleitendes Mittelwertfilter: 19 m 52 s
  • Tiefpassfilter: 29 m


Demo: SVN: DemoGleitenderMittelwert

Eine ausführliche Beschreibung mit Musterlösung finden Sie in [1, S. 11 ff.].