|
|
Abtastrate künstlich erhöhen |
|
sarns |

Forum-Newbie
|
 |
Beiträge: 9
|
 |
|
 |
Anmeldedatum: 19.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 19.05.2011, 18:52
Titel: Abtastrate künstlich erhöhen
|
 |
Hallo goMatlab-Forum,
ich habe eine Messreihe, die aus vielen spitzen Peaks besteht. Die Abstände der Messpunkte sind jeweils 30s. Um zu verdeutlichen, was die Auswirkungen wären, wenn man die Zeitabstände größer wählen würde, wollte ich einen Plot erzeugen, der aus dem "hochaufgelösten" Signal und künstlich niedriger aufgelösten Signalen besteht. Die Messpunkte stehen für den Stromverbrauch in W, somit sollte die Fläche (Energie) unter dem Ausgangs-Signal und dem künstlich verschlechterten Signal gleich sein.
Jetzt ist die Frage ob mir Matlab eine vorgefertigte Routine anbietet oder ob ich mir da was selber basteln muss? Vielen Dank schonmal!
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 20.05.2011, 21:16
Titel: Re: Abtastrate künstlich erhöhen
|
 |
Hallo sarns,
Das klingt nach INTERP1.
Gruß, Jan
|
|
|
sarns |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 9
|
 |
|
 |
Anmeldedatum: 19.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 20.05.2011, 23:30
Titel:
|
 |
Hi Jan S,
danke für deinen Hinweis. Hab das ganze mal mit INTERP1 versucht. Auf den ersten Blick siehts ganz gut aus. Wenn man aber mal genauer hinschaut passt es leider nicht so gut. Hier ein kleines Beispiel:
An Stelle 6,8 und 10 trifft INTERP1 auf den y-Wert 0 und interpoliert dazwischen linear was wiederum für yi natürlich auch 0 ergibt. Bei langen Messreihen gleicht sich dieser Effekt aus und der Flächeninhalt ist nahezu gleich. Allerdings wäre meine Anforderung dass ich im Zeitintervall von 2 jeweils unter der roten und blauen Fläche der gleiche Flächeninhalt ist. Somit sollte die blaue Kurve etwas "glatter" aussehen.
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 23.05.2011, 11:56
Titel:
|
 |
Hallo sarns,
Stimmt. INTERP1 ist viel besser geeignet um Punkte einzufügen, als Punkte herauszuschneiden.
DECIMATE sollte besser sein, da es die Daten vorher mit einem passendn Lowpass-Filter glättet. Aber Deine Beispiel-Daten sind z.B. zu kurz um ein ordentliches Ergebnis damit zu bekommen. Eigentlich benötigst Du den Mittelwert der Elemente, die in den jeweiligen Abschnitten liegen. Auch das läßt sich per INTERP1 erreichen. Das ist deutlicher einfacher, wenn die Datenpunkte equidistant sind. Wenn Du dann die Mittelwerte über je S/T (S und T sind Integer) haben möchtest, kannst Du den Vektor erst per INTERP1 aufblähen und dann per SUM wieder kürzen:
Nun muss man noch auf die Ränder achten, da die Länge des Vektors nich unbedingt ganzzahlig durch den Quotienten teilbar ist. Die Dertails überlasse ich Dir.
Gruß, Jan
|
|
|
sarns |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 9
|
 |
|
 |
Anmeldedatum: 19.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.05.2011, 07:57
Titel:
|
 |
Hi Jan S,
Stimmt, die Daten, die ich oben angegeben habe sind sehr kurz. DECIMATE kann ich leider nicht testen, da ich keinen Zugriff auf die Signal Processing Toolbox habe. Dein Beispiel ist bei mir leider nicht gelaufen, aber der Hinweis auf RESHAPE war Gold wert
Ich habe es jetzt folgendermaßen gelöst:
wobei A der Messvektor und t der Faktor mit dem die Abtastrate vekleinert werden soll.
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 25.05.2011, 01:14
Titel:
|
 |
Hallo sarns,
Ja, ich habe schon wieder einen Tippfehler eingefügt. Leider habe ich auf meinem Internetrechner kein Matlab laufen.
Ich hatte die ersten beiden Argumente von INTERP1 vertauscht.
Gruß, Jan
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|