14.09.2011, 15:38
Beitrag #1
|
suntmaster
LVF-Grünschnabel
Beiträge: 16
Registriert seit: Sep 2011
2010
-
EN
Deutschland
|
Auswertung Beschleunigungsensor in Strecke
Hallo Zusammen,
ich habe ein Problem und komme nicht mehr weiter, hoffe ihr könnt mir helfen.
Ich werte ein Signal eines Beschleunigungssensors aus und möchte nun aus den Werten eine Strecke ermitteln, sprich 2mal integrieren. Und genau da ist das Problem, wie kann ich das machen mir LabView ??
Würde mich über Antworten freuen.
Gruß
|
|
|
14.09.2011, 15:43
Beitrag #2
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
Wenn du ein festes dt hast, hiermit:
Integral x(t)
Musst du halt 2x machen.
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
14.09.2011, 18:43
Beitrag #3
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
Hab' das gerade mal getestet. Klappt aber nicht so ganz (wahrschienlich hab' ich aber nur einen Denkfehler ).
Wenn ich die Funktion x (untere For-Schleife) integriere kommt bei "Trapezoidal Rule" auch 1/2 * x^2 heraus, bei 3 z.B. 1/2 * 3^2 = 4,5.
In der oberen For-Schleife, bei einer Konstanten (Wert 10), gibt es doch nach dem Integrieren 10x(+C), oder stehe ich auf dem Schlauch? Weil da kommt bei 2 z.B. nicht 20, sondern je nach Integrierart was ganz anderes heraus.
Was mache ich falsch?
Hier mein Bsp.:
Integral.vi (Größe: 13,38 KB / Downloads: 346)
Gruß Markus
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
15.09.2011, 07:30
Beitrag #4
|
suntmaster
LVF-Grünschnabel
Beiträge: 16
Registriert seit: Sep 2011
2010
-
EN
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
Guten Morgen,
Danke scho ma für die schnellen Antworten.
Ich habe allerdings im moment das Problem, dass ich dieses Integral nicht bei den Funktionen finden kann. kann das an meiner Version liegen oder bin ich zu blöd zum es finden.
Vllt könnt mir jemand sagen wo ich diese Funktion finde.
Danke
|
|
|
15.09.2011, 07:43
(Dieser Beitrag wurde zuletzt bearbeitet: 15.09.2011 07:43 von Y-P.)
Beitrag #5
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
Mathematics -> Integration & Differentiation -> Integral x(t)
Gruß Markus
PS: Kann mir jemand sagen, was mein Denkfehler in Beitrag #3 ist?
Gruß Markus
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
15.09.2011, 18:02
(Dieser Beitrag wurde zuletzt bearbeitet: 15.09.2011 20:28 von jg.)
Beitrag #6
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
(15.09.2011 07:43 )Y-P schrieb: PS: Kann mir jemand sagen, was mein Denkfehler in Beitrag #3 ist?
1) Dein VI ist in dieser Form erst ab LV2009 gültig, erst da gab es die Auswahl der Integrationsmethode.
2) Fehler ist, dass du den Standardwert bei Intial- und Final Condition nicht geändert hast. Die ist nämlich jeweils ein Array mit einem Element, nämlich Null. Schau mal in die Beschreibung zu Integral(x).
Bei der Trapezregel wird auf ein Wert x_(j-1) benötigt, bei der Simpson Regel auch noch ein Wert x_(j+1).
Also: Bei der Trapezregel einen Wert für Initial Condition anschließen, bei Simpson Intial + Final:
Gruß, Jens
EDIT: Link korrigiert
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
15.09.2011, 20:11
(Dieser Beitrag wurde zuletzt bearbeitet: 15.09.2011 20:14 von Y-P.)
Beitrag #7
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
Jetzt stimmen die beiden oberen Ergebnisse, aber 1/2*x^2 (untere For-Schleife) stimmt nicht mehr.
Wieso schreibe ich bei Initial (bei Simpson auch bei Final) den Wert 10 rein?
EDIT:
Hier noch das VI:
Integral-1.vi (Größe: 8,18 KB / Downloads: 249)
Gruß Markus
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
15.09.2011, 22:54
(Dieser Beitrag wurde zuletzt bearbeitet: 16.09.2011 06:44 von jg.)
Beitrag #8
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
Ist im Screenshot zu sehen, dass du bei deinem 3. Integral auch ein Array [10] anschließen sollst? Nein!
Nochmals (nach dem inzwischen der Link stimmt), schau dir die Erklärung zur Mathematik in der Hilfe an.
Und meinen Screenshot für die Integration deiner Konstanten-Funktion revidiere auf das hier:
zumindest, wenn der erste Wert des Ausgabe-Array das Integral von 0 bis 0 sein soll. Das ist jetzt aber haargenau auf die dahinterliegende Mathematik/Numerik angepasst.
Mach' mer mal a Bilde zur Erklärung, hier dein erstes Bsp, konstante Funktion, definiert an den Stellen x=0,1,2,...,9 (die weiße Linie)
Rot dargestellt sind die Rechtecke, die die LabVIEW-Integral-Funktion bei Verwendung der Trapezregel aufaddiert, wenn man die Initial Condition auf dem Default-Wert [0] belässt. (Die Darstellung stimmt nicht ganz, da sich die Rechtecke berühren müssen, aber dann hätte man sie nicht mehr erkannt). Die numerische Integrations-Funktion gibt dir auch ein Array mit 10 Element zurück. Etwas unklar ist, was das Array-Element 0 darstellt. Ist es das Integral von 0 bis 0? Oder von 0 bis 0,5? Oder gar von 0 bis 1? Laut Hilfe soll es das Integral von 0 bis 0 sein. Wie man aber sieht, wird beim Default-Wert [0] eben noch eine Fläche von 5*1 dazu addiert.
Und deshalb funktioniert die Trapezregel "zufällig" bei deinem 2. Bsp, der numerischen Integration einer Geraden durch den Ursprung bei Verwendung der Default-Wert [0]:
Abschließende Bemerkung: Wir sind bei numerischer Integration. Das wird dir in den seltensten Fällen das absolut richtige Ergebnis liefern.
Ein Delta von 1 bei numerischer Integration, das ist ein Killerkriterium für ein einigermaßen korrektes Resultat. Man will schließlich in der Regel möglichst kleine Rechtecke aufaddieren.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
16.09.2011, 08:25
Beitrag #9
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
OK. Danke Jens. Belassen wir es am besten mal dabei. Ich blicke allerdings immer noch nicht, wieso man (auf einmal) -50 und +10 anschließen muss (bzw. -10 bei Trapezoidal) und vor allem, dass man das als Array anschließen muss (bei der Hilfe blicke ich nicht wirklich durch).
Komisch ist es allerdings schon, dass LabVIEW es nicht schafft eine einfache Funktion wie "x" zu integrieren.
Ich stelle mir eine Funktion vor, wo ich vorne mein Signal (in dem Fall eine Steigung von 0-10, also "x") anlege und hinten kommt 1/2 * x^2 heraus (also vorne 0, 1, 2, 3,... und hinten 0, 0.5, 2, 4.5,...) Gibt es so was nicht?
Gruß Markus
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
16.09.2011, 11:00
|
suntmaster
LVF-Grünschnabel
Beiträge: 16
Registriert seit: Sep 2011
2010
-
EN
Deutschland
|
RE: Auswertung Beschleunigungsensor in Strecke
ich habe jetzt leider immernoch das problem dass ich nicht weis, was ich in mein vi schreiben muss...
ich hab die Zeit und die Beschleunigung zur Verfügung.
wie muss ich diese mit dem Integral verschalten ??
Gruß Dominik
|
|
|
| |