Page 1 of 1

Unterscheidung von Kurven

Posted: Sun 18. Oct 2015, 14:15
by Michal
Hallo,

ich möchte aus einer Messung heraus verschiedene Typen von Kurven unterscheiden.
Man stelle sich einmal eine linear elastische (1) Kurve (Kraft-Weg Diagramm) und eine plastische (2) Kurve vor.
Ich kann jeder Kurve eine Zuordnung zuweisen (gut, schlecht, oder weich, fest, das auch mit Zahlen).
Das Messgerät soll später automatisch messen und dann nicht den Kurvenverlauf weiterleiten, sondern die Zuordnung (also gut/schlecht).
Nur wie baue ich am besten das Netz auf? Eien Matrix und jeden Punkt der Matrix wo die Kurve verläuft als aktiv markeiren? Oder gibt es da bessere Strategie?
Hat jemand mit ähnlicher Problematik Erfahrung gemacht?
Die Kurve hat natürlich auch immer andere Amplitude, ich könnte es aber skalieren, es geht also darum die Form der Kurve (elastisch wird steil, plastisch flach, etc.) zu unterscheiden.
Vielen Dank.
Michal

Re: Unterscheidung von Kurven

Posted: Sun 18. Oct 2015, 16:48
by TJetter
Hallo,

Für solch eine Analyse scheint mir eine FFT (Fast Fourier Transformation) als Vorverarbeitung der Kurven ein guter Kandidat zu sein. Damit wird die Kurve in den Frequenzbereich transformiert. Die Amplituden der einzelnen Frequenzanteile und - wenn man möchte - auch deren Phasenlage kann man dann als Input-Neuronen für ein NN verwenden. In MemBrain kann man im Lesson-Editor (und ebenso über Skripting) FFT-Berechnungen direkt durchführen. Dazu macht es Sinn, die Anzahl Stützstellen der Kurven auf das notwendige Minimum zu begrenzen. Dadurch erhält man dann auch für die FFT weniger Frequenz-Stützstellen und somit eine Reduktion der Inputneuronenzahl. Alternativ kann man mit einer höheren Zahl an Stützstellen die FFT berechnen und dann Mittelwerte aus den Frequenzanteilen bilden. MemBrain kann auch das direkt im Lesson Editor durchführen. Das funktioniert dann aber nur mit reellwertigen FFT-Berechnungen und nicht mehr mit komplexen (die Amplitude und Phasenlage als Real-/und Imaginärteil beinhalten). Die Kurven sollten vor der FFT-Berechnung alle mit 0 beginnen und mit 0 enden (so wie das in der Skizze ja bereits der Fall ist). Ist das nicht der Fall, dann kann man mit einer Hüllkurve (z.B. Gauss) arbeiten, die mit der Kurve multipliziert wird, bevor die FFT berechnet wird. Das kann MemBrain allerdings bisher nicht selbst, müsste also im Vorfeld Teil der Datenaufbereitung sein.

Wenn der absolute Spitzenwert der Kurven nicht relevant ist, sondern nur die Form, dann macht es auf jeden Fall Sinn, die Kurven vorher so zu skalieren, dass der Spitzenwert immer gleich ist. Dann ist aber eine Zuordnung zu einem absoluten Festigkeitswert natürlich nicht mehr möglich. Lediglich eine Aussage über 'elastisch' oder 'plastisch' wäre dann noch denkbar. Damit würde dann aber ein Schaumstoff ggf. genau so beurteilt werden wie ein Stück Stahl, solange man den jeweiligen elastischen Bereich nicht verlässt.
In der Beispielskizze gehen ja auch beide Kurven in den plastisch verformten Berech über, oder? Nur dass man sich bei Kurve 1 vorstellen kann, dass sie wieder zum Ausgangspunkt zurückkehren würde, wenn man den Zugversuch deutlich vor dem Peak stoppen würde, richtig?

Ist es möglich, einmal einen Satz Kurven mit Bewertung zu posten, oder als PN oder Mail an mich zu senden? Dann kann ich bei nächster Gelegenheit gerne einmal einen Erstversuch zum Test der Machbarkeit aufsetzen.

Wie soll denn der spätere Einsatz im Produktivbetrieb aussehen? Ich frage deshalb, weil die MemBrain DLL momentan noch nicht die FFT-Berechnung unsterstützt. Das lässt sich aber für eine zukünftige Version hinzufügen. Wie soll denn das 'Messgerät' am Ende aussehen (Hardware-/Softwareplattform)?

Viele Grüße

Re: Unterscheidung von Kurven

Posted: Sun 18. Oct 2015, 16:53
by TJetter
Nachtrag:

Die Kurven müssen vor der FFT-Berechnung alle die selbe Anzahl von Stützstellen aufweisen. Ggf. müssen sie am Ende einfach mit Nullen aufgefüllt werden, so dass alle die selbe Länge haben.

Grüße