RegistrierenRegistrieren   LoginLogin   FAQFAQ    SuchenSuchen   
Was gewinne ich durch die Interpolation von Messdaten?
 
Neue Frage »
Antworten »
    Foren-Übersicht -> Sonstiges
Autor Nachricht
TooOld



Anmeldungsdatum: 01.02.2016
Beiträge: 18

Beitrag TooOld Verfasst am: 04. Feb 2016 19:44    Titel: Was gewinne ich durch die Interpolation von Messdaten? Antworten mit Zitat

Hallo zusammen ...

Ich habe da noch mal eine kleine Frage Hilfe
An einem Versuchsaufbau nehme ich ein Signal in Abhängigkeit der Position eines Schrittmotors auf. Ich möchte möglichst exakt feststellen, wann dieses Signal einen bestimmten Wert unterschreitet. Die Schrittweite ist jedoch auf ein Minimum beschränkt, sodass ich das Signal nicht mit einer beliebigen Ortsauflösung messen kann.

Das Gute ist, dass sich das Signal recht stetig verändert, weswegen mir der Gedanke kam, Zwischenwerte einfach zu interpolieren.
Beispiel: Ich möchte wissen, wann ist. Als Messwerte habe ich und . Wenn jetzt noch und sind, drängt sich ja der verdacht auf, dass bei liegt Big Laugh

Habe ich durch diese lineare Interpolation wirklich etwas gewonnen? Und was? Genauigkeit? Präzession? ...
Wie muss ich bei solch einem Vorgehen die Messungenauigkeit angeben? Immerhin kann ich meinen Schwellwert so auf beliebig viele Stellen nach dem Komma angeben, aber welche Stellen sind dann wirklich Signifikant grübelnd

Danke schon mal für eure Hilfe! Thumbs up!
ML



Anmeldungsdatum: 17.04.2013
Beiträge: 3403

Beitrag ML Verfasst am: 07. Feb 2016 11:09    Titel: Re: Was gewinne ich durch die Interpolation von Messdaten? Antworten mit Zitat

Hallo,

TooOld hat Folgendes geschrieben:
Habe ich durch diese lineare Interpolation wirklich etwas gewonnen? Und was? Genauigkeit? Präzession? ...
Wie muss ich bei solch einem Vorgehen die Messungenauigkeit angeben?

Du gewinnst zunächst an zeitlicher Auflösung, weil Du ja nun für alle Zeitpunkte eine Position angeben kannst. Ob Dir das hilft, ist eine zweite Frage.

Wenn es nicht um Schrittmotoren ginge, sondern um eine gleichförmige mechanische Bewegung, würde ich auch davon ausgehen, dass sich die Messunsicherheit verringert, da Du viele Messdaten für die Interpolation verwendest und Du so die statistische Unsicherheit verringern kannst. Ein Anhaltspunkt für die statistische Messunsicherheit wäre in diesem Fall die Abweichung der Messpunkte von der Regressionsgeraden, z. B. anzugeben in Form von der aus den Messdaten abgeleiteten Streuungs- oder Varianzen:
https://de.wikipedia.org/wiki/Lineare_Regression

Das Problem hier ist aber, dass der Schrittmotor keine wirklich gleichförmige Bewegung realisiert, sondern sich eher ruckartig fortbewegt. Die Annahme einer zeitlich linearen Bewegung zwischen zwei Schritten und auch während der Schritte ist eher hypothetisch.

Leider hast Du uns nicht verraten, ob der Schrittmotor bloß seine Schritte zählt und aufgrund seiner Schrittweite auf die Position schließt oder ob ein zusätzlicher Wegaufnehmer vorhanden ist.
- Wenn ein zusätzlicher Wegaufnehmer vorhanden ist, kannst Du ja versuchen, die Position häufiger abzurufen (auch zwischen oder während der Schritte)
- Weißt Du, was ein Mikroschrittbetrieb ist, und hast Du Dir schon angeschaut, ob Dein Treiber eine solche Ansteuerung erlaubt? Wenn ja, könntest Du auf diese Weise mehr Messpunkte und eine glattere Bewegung erreichen.


Viele Grüße
Michael
TooOld



Anmeldungsdatum: 01.02.2016
Beiträge: 18

Beitrag TooOld Verfasst am: 07. Feb 2016 18:15    Titel: Antworten mit Zitat

Vielen Dank erst einmal für deine Antwort!

Wie ich sehe ist das Problem scheinbar doch nicht so trivial, wie ich es mir erhofft hatte. Ich kann dem Motor nur sagen, wie viele Schritte er zurücklegen soll. Ich habe keine Möglichkeit mir die tatsächlich zurückgelegte Strecken anzeigen zu lassen. Ich habe mir aber mal von einem Kollegen sagen lassen, dass der Motor das was er machen soll sehr gut macht... Wie auch immer Big Laugh

Wenn ich jetzt vom idealen Fall perfekt äquidistanter Schritte ausgehen würde, wäre dann also die Abweichung der Punkte von der Regressionsgeraden ein Maß für meine Messunsicherheit?

Bei der linearen Regression fitte ich die Messdaten ja durch eine Gerade an. Was ändert sich, wenn der erwartete Verlauf keine Linie ist? Ich frage das nur schon mal, da ich demnächst ein ähnliches Problem habe, bei dem ich eine Sinc-Funktion über die Schrittmotorposition erwarte grübelnd
ML



Anmeldungsdatum: 17.04.2013
Beiträge: 3403

Beitrag ML Verfasst am: 07. Feb 2016 19:16    Titel: Antworten mit Zitat

Hallo,

Zitat:

Ich kann dem Motor nur sagen, wie viele Schritte er zurücklegen soll. Ich habe keine Möglichkeit mir die tatsächlich zurückgelegte Strecken anzeigen zu lassen.

Ich würde im ersten Ansatz davon ausgehen, dass die Schrittweite konstant ist.

Zitat:

Wenn ich jetzt vom idealen Fall perfekt äquidistanter Schritte ausgehen würde, wäre dann also die Abweichung der Punkte von der Regressionsgeraden ein Maß für meine Messunsicherheit?

Es geht um die Gleichförmigkeit der Bewegung. Die Variation der Schrittweite wird in dem Zusammenhang Dein kleinstes Problem sein. (Allenfalls wird das zum Problem, wenn der Motor "durchdreht" und Schritte zählt, die er in Wirklichkeit nicht macht.)

Das Ding ist: Die lineare Interpolation nutzt Dir nur dann etwas, wenn sich der Motor gleichförmig bewegt. Da der Motor bei jedem Schritt einmal beschleunigt, einmal abbremst und ggf. noch eine Weile wartet, bis der nächste Schritt erfolgt, liegt keine gleichförmige Bewegung vor, und Du kannst x(t) nicht einfach linear interpolieren.

Ehe Du Dich aber jetzt in der Signalverarbeitung verbeißt: Hast Du Dir die die Mikroschrittsteuerung schon angeschaut, oder hast Du das irrtümlich als "zu kompliziert" verworfen?

Zitat:

Bei der linearen Regression fitte ich die Messdaten ja durch eine Gerade an. Was ändert sich, wenn der erwartete Verlauf keine Linie ist? Ich frage das nur schon mal, da ich demnächst ein ähnliches Problem habe, bei dem ich eine Sinc-Funktion über die Schrittmotorposition erwarte?

Ich hoffe, Du hast noch genügend Geduld, um abzuwarten, bis Du zumindest die Fragestellung kennst ;-)


Viele Grüße
Michael
TooOld



Anmeldungsdatum: 01.02.2016
Beiträge: 18

Beitrag TooOld Verfasst am: 07. Feb 2016 20:05    Titel: Antworten mit Zitat

Hm... Ich bin gerade nicht sicher, ob ich die Problemstellung nicht gut erklärt habe, oder etwas auf dem Schlauch stehe Big Laugh

Das physisch vorhandene Signal ist über den gesamten Messzeitraum in guter Näherung konstant. Der Schrittmotor bewegt nur den Detektor, mit welchem dieses Signal für den jeweiligen Ort des Detektor aufgenommen wird.

Dabei ist es doch eigentlich egal, wie sich der Detektor zwischen zwei Messpunkten bewegt, oder? grübelnd

Die Ansteuerung hab ich mir schon angeschaut. Also zumindest die Ansteuerung des Controllers vom PC aus. Ein Schritt setzt sich dabei aus 5 Mikroschritten zusammen. Um genau zu sein, kann ich also die Anzahl der Mikroschritte an den Controller übermitteln. Die bisherugen Messdaten habe ich bereits immer mit Abständen von 1 Mikroschritt aufgenommen.
ML



Anmeldungsdatum: 17.04.2013
Beiträge: 3403

Beitrag ML Verfasst am: 07. Feb 2016 20:28    Titel: Antworten mit Zitat

Hallo,

TooOld hat Folgendes geschrieben:
Hm... Ich bin gerade nicht sicher, ob ich die Problemstellung nicht gut erklärt habe, oder etwas auf dem Schlauch stehe Big Laugh


Du hast zur Problemstellung noch so gut wie gar nichts gesagt. Zum Beispiel weiß ich nicht, was Dein Sensor so macht.


Ich zeige Dir, was ich meine:

Zitat:

An einem Versuchsaufbau nehme ich ein Signal in Abhängigkeit der Position eines Schrittmotors auf.

a) An meinem Schrittmotor ist ein Temperatursensor befestigt. Ich würde gerne die Temperatur in Abhängigkeit von der Schrittmotorposition aufnehmen.
b) An meinem Schrittmotor ist ein Positionssensor befestigt.

Zitat:

Ich möchte möglichst exakt feststellen, wann dieses Signal einen bestimmten Wert unterschreitet.

a) Ich möchte möglichst genau wissen, wann [an welchem Ort] die Temperatur einen bestimmten Wert unterschreitet.
b) Ich möchte möglichst genau wissen, wann [zu welcher Zeit] die Position einen gewissen Wert unterschreitet.

Zitat:

Die Schrittweite ist jedoch auf ein Minimum beschränkt, sodass ich das Signal nicht mit einer beliebigen Ortsauflösung messen kann.

a) Die Schrittweite ist mir zu groß. Wie kann ich die Auflösung verringern.
b) Die Schrittweite des Motors ist mir zu groß. Was kann ich machen?

Ich habe bisher sowas wie Variante b) verstanden.


Viele Grüße
Michael
TooOld



Anmeldungsdatum: 01.02.2016
Beiträge: 18

Beitrag TooOld Verfasst am: 07. Feb 2016 21:44    Titel: Antworten mit Zitat

Sorry, ich glaube ich wollte das ganze durch eine genaue Beschreibung nicht verkomplizieren und hab wohl zu viel weg gelassen Big Laugh

Also an meinem Schrittmotor ist ein Lichtsensor befestigt, mit dem ich die (Licht)Intensitätsverteilung in Abhängigkeit der Position des Schrittmotors aufnehme. Die Intensitätsverteilung sollte dabei in guter Näherung über den Zeitraum der Messung zeitlich konstant sein (aber natürlich ortsabhängig Augenzwinkern ). Ich möchte so genau wie möglich bestimmen, an welchem Ort (also bei welcher Schrittmotorposition) ein bestimmter Intensitätswert unterschritten wird. Der Schrittmotor bewegt sich schon mit der kleinst möglichen Schrittweite, aber das ist mir noch etwas zu grob. Daher würde ich gern die Werte zwischen den einzelnen Messwerten durch eine Interpolation erhalten. Mich interessiert nur, wie groß die "Messunsicherheit" dieser interpolierten Werte ist. Sprich: Ist es überhaupt sinnvoll zu interpolieren. (Das ist jetzt bereits alles etwas vereinfacht, beschreibt den Sachverhalt aber hoffentlich genau genug.)

Ich muss gestehen, es ist schon eine Weile her, dass ich ne Veranstaltung zur Fehlerrechnung gehört habe und auf diese oder ähnliche Fragestellungen wurde da mMn auch nicht eingegangen... grübelnd
ML



Anmeldungsdatum: 17.04.2013
Beiträge: 3403

Beitrag ML Verfasst am: 07. Feb 2016 23:47    Titel: Antworten mit Zitat

Hallo,

TooOld hat Folgendes geschrieben:

Also an meinem Schrittmotor ist ein Lichtsensor befestigt, mit dem ich die (Licht)Intensitätsverteilung in Abhängigkeit der Position des Schrittmotors aufnehme. Ich möchte so genau wie möglich bestimmen, an welchem Ort (also bei welcher Schrittmotorposition) ein bestimmter Intensitätswert unterschritten wird.


Zitat:

Sprich: Ist es überhaupt sinnvoll zu interpolieren.

Ja, das ist eben die Frage. Ich kann aber nur bedingt helfen, da ich das Problem nicht kenne. Ich weiß zum Beispiel nicht, was Du abbildest und weshalb Du das Unterschreiten des Intensitätswertes erkennen willst. Ich kann aber vielleicht Fragen stellen, die Dich in die richtige Richtung lenken.

Ich gehe davon aus, dass Du mit der Optik eine (beleuchtete) Fläche auf Deinen Sensor abbildest und dass Du mit dem Schrittmotor einen Lineartisch (etwa sowas: http://www.owis.eu/produkte/motorisierte-positioniersysteme/productview/Main/?formtstamphash=1454884574431&cHash=ecf970f85babc7f0df4980ecc41ac597) betreibst.

Zunächst zum mechanischen Teil der Frage:
- Wie groß ist der Durchmesser der "empfindlichen Fläche", also der Fläche, die auf das Sensorelement abgebildet wird?
- Wie groß ist im Vergleich dazu die Linearbewegung bei der kleinstmöglichen Schrittweite des Schrittmotors?
- Wie groß wiederum ist im Vergleich dazu die Wiederholgenauigkeit der Linearbewegung bzw. der angegebene Maximalfehler für die Positionsansteuerung?

Nun zum informationstechnischen Teil der Frage:
- Wie stark ändert sich die Intensität des Sensorsignal, wenn Du Dich eine Motorschrittweite in x-Richtung bewegst? Die Frage zielt darauf, ob das Abtasttheorem (es geht um örtliche Abtastung, nicht zeitliche Abtastung!) eingehalten wird und wie groß die Überabtastung ist.


Viele Grüße
Michael
TooOld



Anmeldungsdatum: 01.02.2016
Beiträge: 18

Beitrag TooOld Verfasst am: 08. Feb 2016 15:16    Titel: Antworten mit Zitat

Hallo Michael,

Zuerst einmal vielen Dank für deine Geduld und Hilfe Thumbs up!
Das Problem, weswegen ich mich hier auch etwas ziere ist, dass ich nicht sicher bin, wie viel ich hier einfach über den Aufbau ausplaudern darf...

Ich hoffe trotzdem auf deine Fragen ausreichend antworten zu können, ohne zu viel zu sagen.

Wie du schon richtig vermutet hast, hängt an dem Schrittmotor ein Lineartisch. Aufgrund der gerade eingebauten Spindel bin ich auf eine ziemlich grobe (Mikro)Schrittweite von 5µm beschränkt. (Wenn die Vorversuche gut aussehen darf ich aber "vielleicht" etwas besseres kaufen Big Laugh ) In dem Datenblatt wird von einer Reproduzierbarkeit von "<1µm" gesprochen.

Auf diesem Lineartisch befindet sich neben dem Detektor auch noch eine kleine Optik und ein sehr kleines Pinhole (~1µm). Die Detektorfläche wird dann sozusagen über das Pinhole bestimmt.

Das Signal ändert sich pro (Mikro)Schritt ca. um 0,03 (wobei es sich hier um beliebige Einheiten handelt, und das maximale Signal auf 1 normiert ist). Man muss aber sagen, dass es zu Beginn und am Ende größere nichtlineare Bereiche gibt, in denen die Änderung deutlich kleiner ist. Im interessierenden Bereich, der ca. 0,3-0,4 breit ist, ändert sich das Signal aber in sehr guter Näherung linear.
ML



Anmeldungsdatum: 17.04.2013
Beiträge: 3403

Beitrag ML Verfasst am: 09. Feb 2016 21:12    Titel: Antworten mit Zitat

Hallo,

TooOld hat Folgendes geschrieben:

Auf diesem Lineartisch befindet sich neben dem Detektor auch noch eine kleine Optik und ein sehr kleines Pinhole (~1µm). Die Detektorfläche wird dann sozusagen über das Pinhole bestimmt.

Ok, das musst Du letztlich selbst wissen.

Ich wollte an sich nicht auf die Größe des Pinholes hinaus, sondern auf die Fläche, die dadurch abgebildet wird.
- Wenn Du ein Wellenfeld direkt vermisst, würde ich auch annehmen, dass die Größe des Pinholes das ist, was Du abbildest. Wenn Du Laserlicht verwendest und Interferenzstrukturen vermisst, musst Du bei der Interpretation der Messwerte wahrscheinlich sehr genau aufpassen und vorher schon ungefähr wissen, wie groß die Interferenzstrukturen sind.
- Wenn Du durch ein solches Loch in Reflexion misst, weiß ich nicht, was passiert. Ich habe da eine Lochkamera vor Augen -- da wird ja durch ein kleines Loch eine ganze Landschaft abgebildet. Wenn Du so eine Lochkamera ein kleines Stück verschiebst, wird im wesentlichen immer noch die gleiche Landschaft abgebildet. Da ist klar, dass sich das Messignal nicht viel ändert.


Zitat:

Das Signal ändert sich pro (Mikro)Schritt ca. um 0,03 (wobei es sich hier um beliebige Einheiten handelt, und das maximale Signal auf 1 normiert ist). Man muss aber sagen, dass es zu Beginn und am Ende größere nichtlineare Bereiche gibt, in denen die Änderung deutlich kleiner ist. Im interessierenden Bereich, der ca. 0,3-0,4 breit ist, ändert sich das Signal aber in sehr guter Näherung linear.

Wenn Dein Modell sagt, dass sich die Signalstärke linear mit dem Ort ändern muss, kannst Du interpolieren. Dann würde ich die Abweichung von der interpolierten Geraden als Fehler betrachten und die Standardabweichung so abschätzen:


S ist die Schätzfunktion für die Standardabweichung. Du nimmst hier die Gleichung mit 1/(n-1) und nicht mit 1/n, weil Du die Gerade auf Grundlage Deiner Messungen schätzen musst und sie nicht exakt kennst. (So macht man das zumindest bei der Mittelwertberechnung; ich habe das hier analog angewendet.)


Viele Grüße
Michael
Neue Frage »
Antworten »
    Foren-Übersicht -> Sonstiges