Hi,
ich moechte eine Pause wahrend einer Messstrecke einbauen, d.h. waehrend Messungen ablaufen, aber weiss nicht wie. Die Messstrecke laeuft dabei nur einmal ab, aber es sind ca. 80 Messungen. Wie kann in noch im Process eine Pause einbauen ? Und ich moechte aus den Subvi's heraus aktuelle Messwerte ans Mainpanel geben, damit der User weiss, welche Messung grad ablaeuft und welche Messwerte dabei rauskommen. Ist viel, aber kann mir bitte jemand von euch helfen ?
Cu, katsumi
S T A T E M A C H I N E
Jede Menge Beispiele hier im Forum! Damit sparst du dir auf elegante Weise deine Sequenzen!
Gruss
Achim
' schrieb:S T A T E M A C H I N E
Jede Menge Beispiele hier im Forum! Damit sparst du dir auf elegante Weise deine Sequenzen!
Gruss
Achim
Danke Achim.
Ich weiss zwar nicht wie ich 80 _verschiedene_ Messpunkte (Test von Bauelement nach techn. Datenblatt) in eine State Machine umbauen soll, aber wenn du meinst, das waere moeglich, dann ist es sicher moeglich, aber fuer 80 versch. Messpunkte nur _sehr_ aufwendig oder ?
Hat denn jemand ne andere Idee ? Danke.
Cu, katsumi
' schrieb:Danke Achim.
Ich weiss zwar nicht wie ich 80 _verschiedene_ Messpunkte (Test von Bauelement nach techn. Datenblatt) in eine State Machine umbauen soll, aber wenn du meinst, das waere moeglich, dann ist es sicher moeglich, aber fuer 80 versch. Messpunkte nur _sehr_ aufwendig oder ?
Hat denn jemand ne andere Idee ? Danke.
Cu, katsumi
Hmm würds doch mit ner State-Maschine machen:
Zustand 1: Fahre zu Punkt[0..80]*
Zustand 2: Messung
Jetzt kannste Dir überlegen wo Du die Pause haben willst, soll der Messkopf nach der Messung an der Postion warten, oder soll er nach der Messung noch zur nächsten Stelle fahren und dort warten.
Gruß, Rob
PS: Punkt[0] sei die "Ruhe"-Postion des Messarms/kopf nach Initialisierung/Reset/Einschalten des Aufbaus.
Hi,
wie ist denn dein Prozess bisher aufgebaut? Hast du 80 verschiedene Mess-VIs hintereinander geschaltet? Sollte dem so sein, könntest du jedes VI in einer gestapelten Sequenz platzieren. Für die Pausen fügst du Leer-Sequenzen ein und platzierst darin ein Wait-VI mit der gewünschten Zeit. Das wär die unelegante und unflexible Lösung.
Mit der State Machine würde es so gehen:
Start -> Messung (1von80) ..... Wiederholen bis Fertig/Timeout/Abbruch durch User -> Warten (Zeit als Parameter) -> Messung (2 von 80)...Wiederholen bis Fertig....----.....Warten (Zeit als Parameter) -> Messung (80 von 80) -> Fertig!
Die States definierst du dir als Enum (siehe Beispiele hier im Forum) und platzierst auf deinem FP ein entsprechendes Anzeigeelement, das dir den Wert=Namen des aktuell aktiven States anzeigt. Die Werte aus den SubVIs kannst du über Referenzen in entsprechende Anzeigelemente bringen.
http://www.LabVIEWforum.de/index.php...&view=findp
Gruss
Achim
Vielen Dank für die vielen Vorschläge.
Nächste Woche werde ich "versuchen" die vielen Tipps zu realisieren, aber es sieht nach sehr viel Arbeit aus. Sowas kommt eben raus, wenn man einfach drauflos "programmiert"...
Heute werde ich mich mal mit Modbus und den vielen netten Registern beschäftigen, vielleicht schaffe ich mehr als nur Wert setzen & aktuellen Wert auslesen.
Cu, katsumi
Auch LV verzeiht es einem nicht, wenn man ein Projekt nicht sorgfältig plant und strukturiert! Man kommt zwar in LV schnell zu Erfolgserlebnissen, muss aber bei ungenügender Planung immer wieder Code "rein-spaxen" bis man Laufzeitprobleme oder sonstwas kriegt!
Viel Erfolg!
A.
' schrieb:Auch LV verzeiht es einem nicht, wenn man ein Projekt nicht sorgfältig plant und strukturiert! Man kommt zwar in LV schnell zu Erfolgserlebnissen, muss aber bei ungenügender Planung immer wieder Code "rein-spaxen" bis man Laufzeitprobleme oder sonstwas kriegt!
Viel Erfolg!
A.
In Sachen Programmieren bin ich auch ein Greenhorn.
Wie ich LV Projekte sorgfaeltig plane und strukturiere weiss ich leider nicht, vielleicht gibts "irgendwo" im Netz Hilfen dazu ?
Bin fuer jeden Tip dankbar !
Cu, katsumi