LabVIEWForum.de - Kennlinie in xy graph aufnehmen (Drehzahl Drehmoment)

LabVIEWForum.de

Normale Version: Kennlinie in xy graph aufnehmen (Drehzahl Drehmoment)
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hallo Forum,

ich bin gerade auf ein Problem gestoßen und stehe momentan auf dem Schlauch dieses in Labview umzusetzen. Dabei geht es um die Erstellung einer Drehzahl Drehmomentkennlinie für Servomotoren. Ich habe einen Prüfstand welcher mir die aktuellen Werte für Drehzahl und Drehmoment liefert (noch weitere, aber für die Kennlinie vorerst unintereesant).

Die Werte kommen von einer SPS via Modbus TCP und liegen in Labview als dbl Werte vor.
Prinzipiell soll das Ganze später so aussehe, dass eine Kennlinie für verschiedene Drehzahlen (Anzahl einstellbar) aufgenommen werden soll. Im Anhang habe ich in Excel ein Diagramm erstellt, von dem wie es später aussehen soll.
Für jede Drehzahl soll ein neuer Plot im gleichen Diagramm erstellt werden. (X-Achse fix skaliert auf 0...3000rpm). Das xy-graph Beispiel habe ich mir bereits angesehen, jedoch weiß ich derzeit nicht wie ich die for-schleife bei mir integrieren soll um das array zu füllen.
Im Prinzip ist das ja ein mehrspaltiges Array, bestehend aus einer Spalte für Drehzahl und eine für Drehmoment. Meherere aneinandergereiht erbigen die verschiedenen Plots. (Siehe Excel Diagramm)

Das zur Theorie, nur wie kann ich das umsetzen?
Ich habe meine Versuche das in labview umzusetzen angehängt. Die obere While Schleife erzeugt mir den xy Graph für einen Plot (wie kann man das erweitern, dass dort ein zweiter, dritter oder n-ter Anschluss drankommt)
In der unteren While Schleife habe ich das "Füllen" des arrays umgesetzt. Denn vorerst sollen die Messpunkte (Drehzahl&Drehmoment) via "Snapshot" (sprich durch klicken des Buttons) in das array geschrieben werden.

Hat einer von euch eine Idee wie ich das lösen kann?

Danke schon einmal für die Hilfe.

Gruß
Andy
[attachment=29278]
(Labview Version ist 2009)
Hallo Andy,

"wie kann man das erweitern, dass dort ein zweiter, dritter oder n-ter Anschluss drankommt"
Schon mal die Kontexthilfe vom XY-Graph aufmerksam angeschaut? Da steht genau beschrieben, wie man mehrere Plots in den Graphen bekommt...

"In der unteren While Schleife habe ich das "Füllen" des arrays umgesetzt. Denn vorerst sollen die Messpunkte (Drehzahl&Drehmoment) via "Snapshot" (sprich durch klicken des Buttons) in das array geschrieben werden."
Hast du doch schon umgesetzt!? Wo ist das Problem? OK, man könnte die "Mechanical Action" des Buttons of Latch... setzen, um nur genau einen Wert zu übernehmen...
Hallo GerdW,

danke für den Tipp. Mit deiner Hilfe ist es nun möglich meine n-Plots darzustellten.
Jetzt habe ich nur eine Expertenfrage:

Wie bekomme ich das VI Übersichtlich in SubVIs gepackt, dass ich die untere case Struktur n-mal ausführe und dementsprechend das Ausgabearray bekomme?
Mich stören die ganzen Schieberregister...

Danke nochmals

Andy
[attachment=29294]
(Labview 2009)
Hallo Andy,

mich stören die nicht...Smile

Anbei dein VI mit geänderter Art, die Plots zu löschen. Man kann schließlich auch eine Konstante nehmen, statt aus einem Array alle Elemente zu löschen...Lv09_img2

Wenn du wirklich subVIs machen willst, würde ich jeweils 2 SRs zu einem zusammenfassen und dann den jeweiligen Plot darin speichern. In deine obere Schleife habe ich auch noch ein SR gepackt, dann entfällt nämlich die lokale Variable (Dataflow!). Außerdem könnte man beide Schleifen in eine einzige packen, dann braucht man nur einen Stopp-Button.
Das mit den 2 While Schleifen ist aus der Historie entstanden. Das sollte mir die Unterschiede der 2 Möglichkeiten aufzeigen. Das obere einfach vergessen, das ist aus dem Beispiel des XY-Graph.

Die 2SR pro Case stören mich dahingehend, dass ich dieses VI später in meine Statemachine reinpacken will in der auch das FP läuft.
Daher wäre es ganz nett wenn man - nur der übersichthalber - auf die SR in der Statemachine verzichten könnte.

Ich brauche mehr oder weniger die Anschlüsse:
Eingänge:
-Drehzahl
-Drehmoment
-Aktion (nächster Wert oder Reset)
Ausgang:
-das gebündelte Array welches zum Array für den xy graphen geht
Hallo Andy,

was stören dich die ganzen Shiftregister, wenn du sie in einem subVI versteckst?
Das, was du so willst, nennst sich in LabVIEW üblicherweise ActionEngine oder FunctionalGlobalVariable (oder auch StateMachine). Einfach mal danach suchen, entweder hier oder im NI-Forum...
naja, das sieht bei 15 nacheinander anzufahrenden Drehzahlen recht unübersichtlich aus....
Hallo Andy,

"bei 15 nacheinander anzufahrenden Drehzahlen"

Willst du 15 verschiedene Plots (gleich ein "Array of Plots" benutzen?) oder nur 15 Werte in einem Plot?
Hallo GerdW,

ich möchte (bis zu) 15 Plots in einem xy-diagramm aufgezeichnet haben.
Dabei ist jedem Plot eine Drehzahl zugeordnet. Wenn Drehzahl bspw 1000rpm ist, dann soll ein Plot loslaufen. Stellt man die Drehzahl nun auf bspw 1200rpm, so geht die Aufzeichnung für 1200rpm los. So habe ich dann bis zu 15 Drehzahlen und deren Drehmomente in einem Diagramm. Siehe mein erster Post mit dem Excel Diagramm.

Ich habe das nun so umgesetzt, dass ich 15 Plots auszeichnen kann. Jedoch ist das mit den Schieberegistern sehr unübersichtlich.

Daher würde ich das gesamte VI gerne in ein SubVi packen und nur die 3 Eingänge und 1 Ausgang haben.

Lv09_img2
Hallo Andy,

arbeite mit einem Array of Plots! Nutze entweder die Drehzahl direkt (bei fest vorgegebenen Werten, Enum-Control) oder einen zusätzlichen Index-Eingang (bei variablen Drehzahlvorgaben, Ring-Control), um den jeweiligen Plot im Array zu indizieren. Nur noch ein SR, nur geringfügig höherer Aufwand im dann einzigen SubVI...
Seiten: 1 2 3
Referenz-URLs