INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Nulldurchgang für XY-Graphen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

02.08.2011, 08:59
Beitrag #1

VisionRed Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Aug 2011

7.1
2010
DE



Nulldurchgang für XY-Graphen
Moinmoin Zsammen,

hier mein kleines Problem.
Ich habe ein Programm geschrieben, bei dem ein Ball 4 Lichtschranken durchrollt. Mit der ersten wird die erste Zeitmessung gestartet, mit der 2. Stoppt die 1. und Beginnt die 2. und so weiter.

Nun habe ich die Daten in einen XY-Graphen geschrieben und möchte gerne Wissen, wann der Ball theoretisch zum stehen kommt. Also die X-Achse schneidet. Y=0.

Wie kann ich das Realisieren?


Mit freundlichen Grüßen
Tobi Smile


Angehängte Datei(en)
7.1 .vi  Light Barrier.vi (Größe: 373,7 KB / Downloads: 202)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
02.08.2011, 10:01
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Nulldurchgang für XY-Graphen
Hallo Tobi,

Zitat:Wie kann ich das Realisieren?
Zuerst mal die ganzen (unnötigen) lokalen Variablen entfernen. Danach die unnötigen TimedWhileLoops...

Dann die Programmstruktur ändern:
- Statemachine einführen anstatt 5 parallel abgefragter Cases mit darin versteckten Schleifen
- für jede Lichtschranke einfach folgende Abfrage: Wenn High-Flanke dann aktuelle Zeit merken
- nach der Messung über der Zeit die bekannte X-Position der Lichtschranke auftragen
- dann eine passende Regressionsfunktion auf deine 4 Messpunkte anwenden und die nach y=0 auflösen...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 10:16
Beitrag #3

VisionRed Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Aug 2011

7.1
2010
DE



RE: Nulldurchgang für XY-Graphen
Hey Gerd,

über die lokalen variablen lässt sich reden. aber die timed while loops brauch ich, da das programm auf 1ms genau arbeiten soll.

bevor ich das programm in eine statemachine überführe würde ich gerne erstmal testen ob es auch so geht.


"nach der Messung über der Zeit die bekannte X-Position der Lichtschranke auftragen"
--> die 4 versch. x-positionen krieg ich ja schon.

"dann eine passende Regressionsfunktion auf deine 4 Messpunkte anwenden und die nach y=0 auflösen... "
--> wie soll ich das machen. wenn ich eine regressionsgrade auf die kurve anwende, ermittelt die mir ja nicht den genauen nulldurchgang.



Danke für dir Hilfe bisher.
TK
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 10:19 (Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2011 10:21 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Nulldurchgang für XY-Graphen
Hallo Tobi,

Zitat:aber die timed while loops brauch ich, da das programm auf 1ms genau arbeiten soll.
Das ist auf einem normalen PC mit Windows Illusion...

Zitat:wenn ich eine regressionsgrade auf die kurve anwende, ermittelt die mir ja nicht den genauen nulldurchgang.
Nicht direkt: du erhälst (wahrscheinlich) ein paar Polynomkoeffizienten, die dir eine Kurve (= Funktion) beschreiben. Und mit ein bisschen Magie Mathematik kann man berechnen, wo diese Funktion die Nulllinie kreuzt (sowas nennt sich Nullstelle)...

P.S.: Deine Shift-Tasten sind anscheinend defekt...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 10:28
Beitrag #5

VisionRed Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Aug 2011

7.1
2010
DE



RE: Nulldurchgang für XY-Graphen
Zitat:Das ist auf einem normalen PC mit Windows Illusion...
--> Sobald das Programm das tut was es soll, werd ich noch ein Real-Time Modul einbinden.


Zitat:Nicht direkt: du erhälst (wahrscheinlich) ein paar Polynomkoeffizienten, die dir eine Kurve (= Funktion) beschreiben. Und mit ein bisschen Magie Mathematik kann man berechnen, wo diese Funktion die Nulllinie kreuzt (sowas nennt sich Nullstelle)...
--> Wie heist denn das VI welches ich benutzen soll. zZ arbeite ich daran eine Exponentialfunktion an die Kurve zu legen und über die den Nulldurchgang zu ermitteln, aber mit mäßigem Erfolg.


Zitat:P.S.: Deine Shift-Tasten sind anscheinend defekt...
Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 10:34 (Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2011 10:36 von GerdW.)
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Nulldurchgang für XY-Graphen
Hallo Tobi,

ist die Funktion, mit der ein Ball ausrollt, exponentiell?

Für Polynome gäbe es PolynomialRoots!
Mit den Minima-Funktionen in der Optimierungspalette kenne ich mich nicht aus - aber eine Schleife zu programmieren, die Nullstellen sucht und bei vorgegebener Genauigkeit abbricht, ist eigentlich eine typische Einsteigeraufgabe Smile

Zitat:Sobald das Programm das tut was es soll, werd ich noch ein Real-Time Modul einbinden.
Hattest du bisher nicht erwähnt! Außerdem: warum packst du TWL innerhalb von CaseStrukturen innerhalb einer anderen TWL? Das ist mMn nicht sinnvoll... Deshalb nochmal:
Statemachine programmieren - von mir aus auch mit einer TWL als äußere Schleife...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 10:43
Beitrag #7

VisionRed Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Aug 2011

7.1
2010
DE



RE: Nulldurchgang für XY-Graphen
Zitat:ist die Funktion, mit der ein Ball ausrollt, exponentiell?
-->ich denke sie sollte eher linear sein


Zitat:Für Polynome gäbe es PolynomialRoots!
-->Okay, aber PolynomialRoots ermittelt mir doch die Nullstellen einer Funktion, die auch wirklich welche hat. Meine hat ja nur eine theoretische. Der Ball kommt hinter den Lichtschranken zum stehen. Aus den Daten der Lichtschranken soll dann der "zukünftige" Endpunkt (Nullpunkt y-Achse) ermittelt werden.


Zitat:Mit den Minima-Funktionen in der Optimierungspalette kenne ich mich nicht aus - aber eine Schleife zu programmieren, die Nullstellen sucht und bei vorgegebener Genauigkeit abbricht, ist eigentlich eine typische Einsteigeraufgabe Smile
--> Ich bin recht neu in LabVIEW drin, deshalb hab ich mich ja auch an euch gewendet Smile Weist du wie so eine Schleife aussehen könnte?


Mit freundlichen Grüßen
TK
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 10:48 (Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2011 10:49 von GerdW.)
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Nulldurchgang für XY-Graphen
Hallo Tobi,

Zitat:PolynomialRoots ermittelt mir doch die Nullstellen einer Funktion, die auch wirklich welche hat. Meine hat ja nur eine theoretische. Der Ball kommt hinter den Lichtschranken zum stehen. Aus den Daten der Lichtschranken soll dann der "zukünftige" Endpunkt (Nullpunkt y-Achse) ermittelt werden.
Du suchst den Punkt, wo der Ball liegen bleibt. Ob der Punkt nun in deinen Messwerten enthalten ist oder nicht, ist unerheblich - dieser Punkt ist durch die Nullstelle deiner Bewegungsfunktion definiert...

Zitat:Weist du wie so eine Schleife aussehen könnte?
Mal etwas Pseudocode:
Repeat until genauigkeit
...wenn sign(f(untere grenze)) <> sign(f(obere grenze))
...dann neue grenze = mitte(alte grenzen)
...sonst berechnungsfehler
end repeat

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 10:55 (Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2011 11:05 von VisionRed.)
Beitrag #9

VisionRed Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Aug 2011

7.1
2010
DE



RE: Nulldurchgang für XY-Graphen
Zitat:Mal etwas Pseudocode:
Repeat until genauigkeit
...wenn sign(f(untere grenze)) <> sign(f(obere grenze))
...dann neue grenze = mitte(alte grenzen)
...sonst berechnungsfehler
end repeat

--> also ich versteh das wie folgt:

Repeat until genauigkeit
... wenn 0 (was ja meine untere grenze ist) <> aktueller y-wert
... dann neue grenze = mitte(alte grenzen) ???
...sonst berechnungsfehler
end repeat.
Kann man sich mit LabVIEW die Funktion zu einer generierten Kurve (bzw. Geraden) ermitteln lassen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2011, 11:47
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Nulldurchgang für XY-Graphen
Hallo Tobi,

ich meinte eher das Newton-Verfahren...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  2 Graphen mit unterschiedlichem dt in einen Graphen unaimed 8 11.337 14.03.2005 14:45
Letzter Beitrag: unaimed

Gehe zu: