Forum: FPGA, VHDL & Co. Gauß fitten in Messdaten


von -gb- (Gast)


Lesenswert?

Hallo,
ich taste mit einem ADC eine Gaußkurve sehr oft ab. Das ist dann 
natürlich etwas vertauscht, daher will ich da einen Gauß reinfitten. Ich 
habe keine Ahnung wie sowas geht und bitte um eine kurze Abschätzung des 
Aufwands.
Es würde mir auch reichen den Algorithmus zu kennen un den dann mit VHDL 
umzusetzen. Gibt es sowas irgendwo fertig oder einfach verständlich?

Vielen Dank!

von Markus F. (mfro)


Lesenswert?

Auch wenn ich die Frage nicht gänzlich verstehe - ich glaube, Du suchst 
das da: https://de.wikipedia.org/wiki/Methode_der_kleinsten_Quadrate , 
oder?

von -gb- (Gast)


Lesenswert?

Das kann sein. Ich kenne mich da nicht so aus, ich würde nur gerne etwas 
ritten damit das Rauschen minimiert wird. In Python gibt es schöne 
Funktionen aber ich brauche das in schnell im FPGA. Sonst müsste ich die 
Sampledaten wegschreiben und das später mit dem PC rechnen was aber 
langsam ist.
Ist es schwer die Methode mit den kleinsten Quadraten in VHDL zu 
beschreiben? Was muss ich da an Stolperstellen erwarten?

von John (Gast)


Lesenswert?


von -gb- (Gast)


Lesenswert?

Du meinst die Formel da? Hm ...
Würde man Rauschen durch ein digitales Tiefpassfilter wegbekommen, also 
auch den Fehler durch Rauschen minimieren?
Das Signal ist eine abgetasteten Gauß-Glocke. Die Fläche darunter ist 
der interessante Wert aber die ist ungenau weil das Signal leicht 
rauscht.

von Sigi (Gast)


Lesenswert?

Also wenn du eine Gausskurve anfitten willst,
warum schätzt du nicht einfach die char. Parameter?
Dazu einfach Mittelwert und Varianz, lässt sich
prima in VHDL giessen. Für die Varianz brauchst
du ggf noch eine MUL-Unit.

von -gb- (Gast)


Lesenswert?

Varianz ist ja die Breite und Mittelwert die Position. Für die Fläche 
unter der Kurve brauche ich aber doch die Höhe. Also mit der Varianz 
kann ich den Gauß in der Horizontalen strecken, aber das bräuchte ich 
auch für die Vertikale. Oder hab ich was falsch verstanden?

von Sigi (Gast)


Lesenswert?

Nein, ausser den beiden Schätzwerten brauchst
du nichst weiter. Beide Werte definieren
ein und dieselbe Kurve eindeutig. Schau dir
einfach mal die Formel für die Gausskurve an.

von J. S. (engineer) Benutzerseite


Lesenswert?

Soll das permanent oder gruppenweise geschehen?

Suche mal nach mittlere quadratische Kontingenz.

von -gb- (Gast)


Lesenswert?

@ Sigi: Was meinst du mit Mittelwert? Den Median? Gibt es sowas wenn es 
sich nur um Abtastwerte handelt die nach zeitlichem Auftreten aber nicht 
nach Häufigkeit sortiert sind?

Nein das soll nicht kontinuierlich geschehen sondern je Impuls mit 
Gaußform habe ich rund 2000 Samples.

von Sigi (Gast)


Lesenswert?

Mittelwert: arithmetisches Mittel.

von -gb- (Gast)


Lesenswert?

OK das ist wie auch die Varianz einfach zu bestimmen. Vielleicht bin ich 
ja blind ich finde nämlich keine Funktionsgleichung in der man nicht 
dieses mü also den Median braucht.

von S. N. (higgns)


Lesenswert?

"Mü" ist der Mittelwert.

Genauer: in der Mathematik ist "mü" der Erwartungswert. Der Mittelwert 
einer Stichprobe konvergiert mit steigender Anzahl an 
Stichprobenelementen gegen den Erwartungswert.

von Gustl B. (-gb-)


Lesenswert?

Ok, Mittelwert ist alle Samples aufsummieren und durch die Anzahl 
teilen, das ist einfach. Varianz ist auch einfach.
Wenn ich dann also mü und Sigma habe, wie komme ich auf die Fläche? Ist 
das auch einfach machbar im FPGA? Zur Not kann ich diese kleinen Daten 
dann zum PC schicken und das dort rechnen.

von Sigi (Gast)


Lesenswert?

Mit Fläche meinst du wohl das Integral?

Falls ja: Summiere doch einfach alle Werte auf
und multipliziere mit einen entspr. Skalierungsfaktor.

Btw. Wenn das eine Gausskurve ist (d.h. Dichtefunktion),
dann ist das Integral doch 1. Stell doch am Besten mal
einen Satz Daten hier rein, als Textfile. Dann kann man
sich ein besseres Bild machen.

von J. S. (engineer) Benutzerseite


Lesenswert?

Gustl B. schrieb:
> Wenn ich dann also mü und Sigma habe, wie komme ich auf die Fläche? Ist
> das auch einfach machbar im FPGA?

Klar geht das auch im FPGA- habe ich auch schon gemacht. Die Frage ist 
nur, ob es nötig ist. Bei meiner damaligen APP war es nötig, weil die 
Schlussfolgerungen, die aus der Lage der Kurve geschlossen wurden, auch 
in der Elektronik zu Reaktionen führen mussten. Bei Dir scheint mir das 
aber nicht der Fall. Die Kurve selber zu plotten ist extern natürlich 
einfacher - schau mal in den Bronstein oder ein entsprechendes Buch.

von Gerald M. (gerald_m17)


Lesenswert?

Für das Integral gilt:

integral exp(-A*x^2) = 0.5*sqrt(Pi/A)
(Latex scheint hier nicht richtig zu funktionieren)

Du musst also A berechnen. Das ist lediglich die Standardabweichung mit 
einem Faktor multipliziert.
Du musst die Kurve nicht fitten, diese sollte sich automatisch aus den 
Messwerten ergeben (mit Mittelwert und Standardabweichung) und damit 
auch das Integral.

von J. S. (engineer) Benutzerseite


Lesenswert?

Gefittet wird eine solche Kurve meistens dann, wenn man weiss, dass die 
Realdaten einer Normalverteilung entsprechen, aber Messfehler 
rausgenommen werden sollen. Daher fließen in diesem Fall meist noch 
Gewichtungen ein.

von Gustl B. (-gb-)


Lesenswert?

Vielen Dank!

Also ich taste sehr viele so Gauß Kurven ab, berechne deren Fläche 
(derzeit durch Aufsummieren aller Samples) und diese Flächenwerte werden 
dann zu einem Spektrum. Also in x-Richtung der Flächenwert und in 
y-Richtung die Anzahl der abgetasteten Kurven die diesen Wert haben.

Ich möchte vom einfachem Aufsummieren weg weil das Signal nicht ganz 
sauber ist. Das mit mü und sigma berechnen scheint mir da schon besser 
aber auch nicht perfekt, denn:

Irgendwo muss ich ja einen Anfang und ein Ende der Kurve definieren. 
Dazu setze ich etwas über 0-Volt eine Schwelle, wird diese nach oben 
überschritten wird aufsummiert bis das Signal wieder drunter fällt.
Aber was ist wenn die Nulllinie selber leicht schwankt, also das 
Rauschen eine sehr niedrige Frequenz hat? Dann ist der Gauß mal minimal 
weiter oben, mal minimal weiter unten. Bilde ich den Mittelwert mü durch 
aufsummieren der Samples, dann bekomme ich einen Fehler. Ich weiß nicht 
so recht wie ich das umgehen kann. Man könnte kontinuierlich die 
Nulllinie angucken und so einen dynamischen Untergrund annehmen. Richtig 
fitten ist wohl die optimale Lösung aber schwer machbar.

von Gustl B. (-gb-)


Lesenswert?

Hallo nochmal, also irgendwie ist das mit mu und sigma seltsam und ich 
weiß auch gar nicht ob ich das so machen darf weil das was ich habe eben 
nichts stochastisches ist.
ich habe also jetzt ein Beispiel:

7, 40, 129, 233, 241, 141, 47, 9

das sind die 8 Samplewerte die mit der Zeit, also in gleichen 
Zeitabständen aufgenommen wurden.
Würde ich da jetzt mit mu und sigma rechnen komme ich auf Folgendes:

mu als Mittelwert = 847 / 8 = 105.875

die varianz ist dann die aus
(7-105.875)^2+(40-105.875)^2+(129-105.875)^2+(233-105.875)^2+(241-105.87 
5)^2+(141-105.875)^2+(47-105.875)^2+(9-105.875)^2  geteilt durch 8 =
63154.875 / 8 = 7894.36

Die erwartete Fläche sollte irgendwo in der Größenordnung von 847 (= 
Summe aller Einzelwerte) liegen. Wie bekomme ich aus mu und sigma diese 
Fläche?

Vielen Dank!

: Bearbeitet durch User
von Achim S. (Gast)


Lesenswert?

Gustl B. schrieb:
> und ich
> weiß auch gar nicht ob ich das so machen darf

Nein, darf man leider nicht. Viele der Tips basierten auf einem 
Missverständnis. Die Tippgeber gingen davon aus, dass du schwankende 
Messwerte hast und die Gaußverteilung der Messwerte bestimmen willst. 
Tatsächlich hast du Messwerte, deren Zeitverlauf eine Gaußkurve 
darstellen (und die darüber hinaus etwas um die Gaußkurve herum 
schwanken). Wenn du mit diesen Messwerten eine Varianz berechnest, 
bekommst du etwas, das mit dem "Effektivwert" der Gaußkurve verwandt 
ist, aber nicht die - eigentlich gewünschte - Breite der Kurve.

Zu deinem ursprünglichen Anliegen: Aufsummieren kann ein FPGA 
hervorragend, einen Least-Square-Fit darin abzubilden wäre einigermaßen 
aufwändig. Wenn ich es machen müsste, würde ich wahrscheinlich eher 
einen Controller im FPGA den Fit durchführen lassen.

Ich glaube aber auch, dass der Fit dir kein besseres Ergebnis liefern 
kann als das Aufsummieren. Wenn die Abweichungen von deiner Gaußkurve im 
Mittel=0 sind, dann sollte die Summe über die einzelnen Messwerte das 
Rauschen bestmöglich unterdrücken. Ein Fit kann das nicht besser.

Der einzige Vorteil des Fits ist aus meiner Sicht, dass du einen 
zuverlässigeren Zahlenwert für den Untergrund bekommst (den Untergrund 
summierst du bei deiner bisherigen Auswertung einfach mit).

Ich würde an deiner Stelle beim Aufsummieren bleiben und versuchen, den 
Untergrund genauer zu bestimmen. Du könntest z.B. ständig den Untergrund 
aufintegrieren. Und wenn du sicher bist, dass während der letzten 
Untergrundmessung kein Gaußpuls auftrat, kannst du das Ergebnis als 
aktuellen Untergrundwert übernehmen und beim Aufsummieren von den 
Messwerten abzuiehen.

von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

Danke! Sehr gut! Genau das habe ich vermutet. Aber ich sehe noch einen 
Vorteil beim Fit:
Der ADC rauscht vermutlich nicht gleichverteilt. Ich habe mal ein Bild 
angehängt, da sind viele Signalformen so wie sie aus dem ADC kommen 
überlagert. Ja, ist kein guter ADC, aber auch teurere Modelle erzeugen 
da horizontale Linien. Ein Hersteller der das professionell macht sagte 
dass die genau wegen solchen ADC-unschönheiten einen Gauß fitten.

Was ich auch machen könnte (aber vielleicht nicht will^^) ist die 
Messdaten so zu skalieren dass man Stochastik anwenden kann. Also mu = 0 
setzen und so dass das mittig um die 0 herum ist die Glocke.

Das mit dem Untergrund ist gar nicht so einfach, also wenn das Rauschen 
auf dem Untergrund sehr niederfrequent im Vergleich zum Gauß ist dann 
funktioniert es wenn ich vor dem Gauß den Untergrund mittele und das 
dann von jedem Gauß-Sample abziehe. Vielleicht auch noch dahinter 
mitteln und irgendwie ein Dreieck abziehen ...
Ist das Rauschen sehr hochfrequent im Vergleich zum Gauß mittelt es sich 
sowieso weg.
Schlimm ist Rauschen ähnlicher Frequenz. Der Gauß ist so 10 - 20 us 
lang, das sind dann 50 - 100 kHz. Wenn ich mir das Signal angucke im 
Oszi mit FFT ist da halt auch was ...

: Bearbeitet durch User
von Achim S. (Gast)


Lesenswert?

Gustl B. schrieb:
> Der ADC rauscht vermutlich nicht gleichverteilt.

Kann schon sein. Aber wenn das Rauschen sich asymmetrisch auf die 
Messkurve auswirkt, dann verfälscht es doch den Fit genau so wie die 
bisherige Integration.

Gut dass du mal eine Messung zeigst, das hätte viele Missverständnisse 
vermieden. Deine Kurve ist übrigens ohnehin kein (symmetrischer) Gauß, 
weil die ansteigende Flanke deutlich steiler ist als die abfallende. 
Sieht mir eher nach einem Effekt deines Verstärkers aus als nach 
Digitalisierungs-Artefakten.

Du kannst ja mal eine der Kurven in den PC laden und dort mit 
Standardwerkzeugen fitten. Dann siehst du, ob sich der Aufwand eines 
Fits im FPGA lohnen kann. Wenn ich die Kurven so sehe, glaube ich nicht 
daran.

von Gustl B. (-gb-)


Lesenswert?

Danke Dir!

Ja, was mache ich dann um das zu verbessern? Irgendwelche schöne Ideen? 
Also, mit nur Aufsummieren ist mein Ergebnis schon einigermaßen gut, 
aber ich will natürlich mehr.

Jedenfalls hab ich jetzt mal im FPGA mit Dividierern gespielt^^ und 
hoffentlich was gelernt.

Genau, das wäre die Alternative die Messdaten zum PC schicken und da 
dann fitten, aber dann ist die Datenmenge deutlich größer, das wird 
schwer für mich. Kann man da sonst was mit machen mit der mittleren 
quadratischen Abweichung vom Durchschnittswert? Also irgendwie die Kurve 
charakterisieren in einem Wert der das besser macht als die Summe der 
Samplewerte?

: Bearbeitet durch User
von Achim S. (Gast)


Lesenswert?

Gustl B. schrieb:
> Ja, was mache ich dann um das zu verbessern? Irgendwelche schöne Ideen?

Wo kommt denn dein Signal her? Irgendwelche Leuchtpulse von streuenden 
Partikeln oder so was? Dann würde ich mal den Fotoverstärker anschauen, 
ob er nicht schneller sein müsste. Oder jedweden sonstigen 
Vorverstärker, der vor dem ADC kommt. Ist dann wahrscheinlch eher ein 
Thema für "Analogtechnik" als für "FPGA und VHDL".

Gustl B. schrieb:
> Wenn ich mir das Signal angucke im
> Oszi mit FFT ist da halt auch was ...

na dann zeig uns doch das auch mal...

Gustl B. schrieb:
> Das mit dem Untergrund ist gar nicht so einfach, also wenn das Rauschen
> auf dem Untergrund sehr niederfrequent im Vergleich zum Gauß ist dann
> funktioniert es wenn ich vor dem Gauß den Untergrund mittele und das
> dann von jedem Gauß-Sample abziehe. Vielleicht auch noch dahinter
> mitteln und irgendwie ein Dreieck abziehen .

So hatte ich das gemeint. Wobei ich die Untergrundsmessung nach dem Gauß 
eher vorsichtig angehen würde, weil du ordentliche Überschwinger nach 
unten hast - das kann das Korrektursignal eher verschlechtern als 
verbessern.

Gustl B. schrieb:
> Genau, das wäre die Alternative die Messdaten zum PC schicken und da
> dann fitten,

Mein Vorschlag wäre, das nur mal exemplarisch für einige wenige Pulse 
durchzuspielen. Damit man sieht, ob die Fitterei überhaupt was bringen 
kann.

von Gustl B. (-gb-)


Lesenswert?

Ist wohl vielleicht wirklich ne Analogsache.
FFT kann ich gerade nicht anhängen weil da dauernd Messungen laufen. Der 
Detektor ist so ein Germanium Detektor der radioaktiven Zerfall misst, 
die Fläche ist also proportional zur Zerfallsenergie.

Mit Analogtechnik kenne ich mich leider noch weniger aus. Jetzt hab ich 
am FPGA-Board einen ADC angeschlossen. Der ADC braucht auch analoge 
Masse und Vref. Was vielleicht ganz gut wäre wäre wenn das mit der 
Nullinie mitschwingt falls die schwingt. Nur weiß ich nicht so recht wie 
ich Vref und die digitale Spannungsversorgung bauen soll. Bisher mache 
ich das mit einem LDO der aus +5 V die +3,3 V generiert. Wenn man sich 
das dann anguckt hat man aber auch Rauschen im zweistelligen mV-Bereich. 
Nicht hoch aber gibt es ist halt da, ist ja auch Digitaltechnik da die 
mit Leiterbahnen sendet und so.

von Achim S. (Gast)


Lesenswert?

Gustl B. schrieb:
> Der
> Detektor ist so ein Germanium Detektor der radioaktiven Zerfall misst,
> die Fläche ist also proportional zur Zerfallsenergie.

Soll sich dann überhaupt eine symmetrische Gaußkurve als Form ergeben? 
Gabs da nicht irgendwas mit einer Abhängigkeit vom Ort der 
Wechselwirkung und den unterschiedlich langen Driftzeiten der 
Ladungsträger?

Ach, ich weiß nicht mehr, ist schon zu lange her, dass ich mich mit 
sowas einigermaßen auskannte...

von Gustl B. (-gb-)


Lesenswert?

Ja da gibt es was ... kenne mich da aber auch nicht sooo aus. Das macht 
mein Vater aber eben mit Technik aus den 80ern die ich jetzt mal durch 
Moderneres ersetzen möchte für das man auch Ersatzteile bekommt und so.

Also wenn der Detektor größer ist dauert es länger bis alle Ladungen 
rausgesaugt wurden, aber eigentlich sollte das der shaping-amplifier 
schon gaußförmig machen wenn man dem genug Zeit lässt.

von René D. (Firma: www.dossmatik.de) (dose)


Lesenswert?

> Das Signal ist eine abgetasteten Gauß-Glocke. Die Fläche darunter ist
> der interessante Wert aber die ist ungenau weil das Signal leicht
> rauscht.

Eine Gaußkurve ist unendlich breit. Mathematisch gesehen.
Du mußt eine Schwelle definieren.
Beim Überschreiten der Schwelle immer fleißig addieren bis die Schelle 
wieder unterschritten wird.

Eine Gaußkurve wird gern mit einer Parabel gefittet. Die Parabel hat 
fast den gleichen Verlauf in dem Bereich mit den höheren Werten.


Dann gibt es noch andere Tricks.

Die Erste Ableitung bilden. Dan bekommst du die beiden Punkte der größen 
Steigung. Diese stehen auch in einer wichtigen Beziehung.

von Gustl B. (-gb-)


Lesenswert?

Klar mache ich ne Triggerschwelle. Das mit dem Ableiten ist so ne Sache, 
hab ich schon gemach im FPGA, macht man es zweimal bekommt man 
eigentlich was hybsches bei dem man dann die Fläche unter dem mittleren 
Teil nehmen könnte. Hab aber keine Ahnung in wieweit sich das Signal das 
ich vermessen will dadurch verbessert oder verschlechtert gegenüber 
einfachem Aufsummieren.

von Duke Scarring (Gast)


Lesenswert?

Gustl B. schrieb:
> Der
> Detektor ist so ein Germanium Detektor der radioaktiven Zerfall misst,
> die Fläche ist also proportional zur Zerfallsenergie.
Die Pulshöhe ist auch proportional zur Energie, ist aber leichter zu 
ermitteln. Dadurch, das Dein Untergrund sehr gut aussieht, sollte das 
gut gehen.
Hast Du verschiedene Proben da, um Deinen Detektor anhand der 
Enegielinien zu kalibrieren?

Duke

von -gb- (Gast)


Lesenswert?

Hallo, ja die Höhe kann man auch verwenden aber wie macht man das? Das 
Sample mit dem größten Wert? Dann hat man aber wieder eher mehr 
Rauschen.

Klar haben wir Standardproben um das alles zu kalibrieren.

von René D. (Firma: www.dossmatik.de) (dose)


Lesenswert?

Gustl B. schrieb:
> Klar mache ich ne Triggerschwelle. Das mit dem Ableiten ist so ne Sache,
> hab ich schon gemach im FPGA, macht man es zweimal bekommt man
> eigentlich was hybsches bei dem man dann die Fläche unter dem mittleren
> Teil nehmen könnte.

Aufsummieren ist ein Tiefpass. Leider hast du das Problem bei kleinen 
Werten die Grenzen für den Beginn und das Ende der Summierung zu finden.
Du hast nicht die Probleme an dem Hügel sondern rechts und links.

Deshalb war mein Tipp die Ableitungen zu bilden um die Grenzen zufinden.

Du kannst die zweite Ableitung bilden (Laplace). Die Nulldurchgänge 
detektieren und diese als Trigger für die Summierung des 
Eingangssignals.
Dann hast du über die Halbwertsbreite integriert.

Um das Rauschen zu entfernen kannst du ein moving average filter nehmen.

Du kannst z.b. mit delay und shift operator einfach über drei Werte 
mitteln.


 0,25a+0,5b+0,25c

0,25 ist zweimal nach rechts geschoben
0,5 einmal nach rechts geschoben

a aktueller Wert
b Wert a^-1 (a durch ein Delay gatter geschoben)
c Wert b^-1 (b durch eine Delay gatter geschoben)

von Gustl B. (-gb-)


Lesenswert?

Hallo, in einem älteren Thread hatte ich das mal versucht, also zweimal 
abgeleitet wie hier im Bild:
Beitrag "Re: Peakfläche über leicht verrauschter Nullinie bestimmen."

Ich habe das aber nie mit Messdaten gemacht, würdest Du im abgeleiteten 
Signal aufsummieren oder im Originalsignal?

von Gerald G. (gerald_g)


Lesenswert?

Um den Hochpunkt zu bestimmen, könntest du die höchsten 3 Punkte nehmen, 
und eine Parabel damit berechnen.
Also: f(x)= dx^2 +ex + f die drei Punkte einsetzen und damit d,e und f 
berechnen.
Das lässt sich sehr einfach in die Form:
f(x)= a(b-x)^2 + c überführen.
Sollte deutlich besser sein als nur den höchsten Punkt zu nehmen und du 
musst dich nicht mit kleinsten Fehlern beschäftigen, da es nicht 
überbestimmt ist.

von Achim S. (Gast)


Lesenswert?

Gustl B. schrieb:
> Ich habe das aber nie mit Messdaten gemacht, würdest Du im abgeleiteten
> Signal aufsummieren oder im Originalsignal?

???
Die Ableiterei soll doch dabei helfen, saubere Pulsgrenzen zu 
definieren. Summieren musst du im Originalsignal. Wenn du die Ableitung 
aufsummierst (was nichts anderes ist als die diskrete Form des 
Aufintegrierens), dann kannst du das Ergebnis auch ganz Rechnung 
vorhersagen.

Gerald G. schrieb:
> Um den Hochpunkt zu bestimmen, könntest du die höchsten 3 Punkte nehmen,

Aber nur, wenn er das Rauschen vorher vollständig losgeworden ist. Wenn 
er bei den aktuellen Kurven eine Parabel durch die drei höchsten Punkte 
bestimmt, bekommt er Hausnummern als Ergebnis.

von Gerald G. (gerald_g)


Lesenswert?

Achim S. schrieb:
> Wenn er bei den aktuellen Kurven eine Parabel durch die drei höchsten
> Punkte bestimmt, bekommt er Hausnummern als Ergebnis.

Das ist wohl wahr. Wobei, wenn ich mir das hochfrequente Rauschen so 
anschaue, sollte sich das bei der Menge an Samples raus mitteln.
Ich würde mal die Daten nehmen, in ein Datenbearbeitungsprogramm füttern 
welches das Integral einer interpolierten Kurve berechnet, und mit dem 
aufsummierten Integral vergleichen. Ich denke nicht dass sich das stark 
unterscheidet. Das größte Problem wird sein, das Ende der Kurve zu 
bestimmen, bei den Überschwingern die da angedeutet sind.

Edit: Achja, mit einer angefitteten Gaußkurve kann man das natürlich 
auch vergleichen, wobei ich Wette dass dort der Fehler am Größten ist.

: Bearbeitet durch User
von Gustl B. (-gb-)


Lesenswert?

Ah ok genau dann werde ich das mal probieren ... eigentlich ganz nett 
mit dem Anfang und Ende des Impulses durch Ableitung. Wenn ich 
dazwischen alle aufsummiere, dann muss ich ja irgendwie eine Nulllinie 
davon abziehen. Nehme ich dann den Wert bei Impulsanfang dafür?

von René D. (Firma: www.dossmatik.de) (dose)


Lesenswert?

Thema: Nulllinie

Es ist ein konstantes Offset dieser ist auch von deiner Höhe abhängig.
Die Summe ( dein Integral) hat einen konstanten Fehler.

Wenn du deine Messung kalibrieren kannst, dann kannst du den 
mathematischen Fehler in die Kalibration drücken.

Mathematisch bestimmst du bei der Kalibration den Fehler und konstante 
Fehler sind einfach mit einer linearen Kalibration korrigierbar.

von Gustl B. (-gb-)


Lesenswert?

Ja ne, ich frage mich ob ich eine Nulllinie für alle Impulse nehmen soll 
oder für jeden eine Eigene. Ich würde das für jeden Inpuls selber 
machen, also ohne ableiten und so erstmal den Durchschnitt sehr vieler 
Samples vor einem Impuls rechnen und dann das als Nullinie ansehen oder 
minimal drüber.

Wenn ich jetzt zweimal ableite und da jeweils die Nulldurchgänge als 
Anfang und Ende sehe, was ist dann die Nulllinie? Immernoch wie gerade 
beschrieben der Mittelwert von vielen Samples die keinen Impuls 
enthalten oder soll ich dann die Nullinie auf höhe des Samplewerts legen 
bei dem Nulldurchgang der 2. Ableitung?

Ich werde das erstmal nur mit Aufsummieren machen und die Nulllinie als 
Mittelwert über sehr viele Samples vor dem jeweiligen Impuls.
Als Impulsstart ist dann wenn der Mittelwert der z. B. 4 neuesten 
Samples um einen festen Wert (einstellbar) größer ist als die Nullinie.

von René D. (Firma: www.dossmatik.de) (dose)


Lesenswert?

Die Ableitungen sind frei von einem Gleichanteil. Du kannst ein 
Tiefpaßfilter bauen, das außerhalb eines Events nur Werte sampelt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.