LabVIEWForum.de - Programm schneller anhalten und andere Probs

LabVIEWForum.de

Normale Version: Programm schneller anhalten und andere Probs
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich muss mich gerade mit LabVIEW rumärgern. Ich soll ein riesen Programm, um einen Motor und eine Magnetpulverbremse zu steuern und zwei Messwellen auszulesen, schreiben. Leider hab ich vorher noch nie etwas mit LabVIEW zu tun gehabt. Der Anfang ist aber gemacht und nun geht`s auf Fehlersuche.
1. Das Programm hält nur mit einer gewissen Verzögerung an, wenn ich auf den STOP Button klicke.
2. Ich habe zu Testzwecken nur eine Messwelle an ai1 angeschlossen (Karte NI PCI 6229 mit Anschlussblock CB 68 LP) und trotzdem reagieren beide Anzeigen (An- und Abtrieb) auf Torsionsbewegungen, die ich von Hand erzeuge. ai1 = Abtrieb.
Ich hoffe, ihr könnt mir bei meinem ersten Problem hilfreich zur Seite stehen.
Weitere werden folgen...Wacko

Andi

Das vi hab ich mal angehängt.
Hi Andi,

zwei Anmerkungen:

1. Du hast alles in ne WHILE-Loop platziert, auch die Initialisierung (Dev1/ai1). Das solltest du vor der Schleife machen, dann passiert das auch nur 1x und verbrät keine Rechenzeit und auch keinen zusätzlichen Speicher! Außerdem sparst du damit die Sequenz ein, die Blockdiagramme immer ein bisschen unübersichtlich machen! Und wenn du trotzdem ne Sequenz nutzen willst: Verschieb doch die Tunnel im ersten Schritt auf die linke Seite, damit im 2. Schritt wieder von links nach rechts programmiert werden kann...das sieht sauberer aus!

2. Das stoppen des VI dauert deswegen ein bisschen, weil erst der Erfassungszyklus des AI beendet wird. Das lässt sich kaum vermeiden! Außerdem sollte der Sauberkeit wegen der Messkanal nach der Messung wieder geschlossen werden. (Speicher aufräumen)

3. Das beide AI "erfassen" könnte unter Umständen ein Masse-Problem sein, evtl. stimmt die Beschaltung nicht ganz...manchmal muss der "Sense"-Pin genutzt werden, manchmal mit der Masse verbunden werden!

Gruss
Achim
Hallo Achim,

erstmal vielen Dank für Deine Antwort. Ich hoffe, ich habe Deine Ratschläge einigermaßen richtig befolgt.
Das Programm schließt jetzt sofort, wenn man auf den Stop-Button drückt Smile
Die Tunnel habe ich auf die linke Seite verschoben und die Initialisierungen habe ich aus der Whileschleife gezogen.
Bleit nur noch das Problem, dass beide Graphen ausschlagen. Die Messwelle ist sicher am Anschlussblock richtig angeschlossen. Ich werde nachher mal versuchen, eine zweite Messwelle anzuschließen. Vielleicht löst sich das Problem dann ja von alleine.
Ich hab mal das geänderte vi angehängt.

Andi
Hi,
den ersten Sequenzschritt kannst du dir schenken (ist ja nur Rein-Raus)! Das "Aufräumen" darf nicht im dritten Schritt, sondern am Ende der Schleife passieren, z.B. außerhalb der Schleife (hinten dran), oder in ner Case-Struktur, in deren TRUE-Case das "Clear" aufgerufen wird, wenn der STOP-Button gedrückt wird! Momentan wird ja jedes Mal der Task verworfen!

Zum Ausschlag des zweiten Kanals fällt mir auch nix ein...evtl. ist im MAX ne Einstelllung falsch...ich glaub aber trotzdem eher an ein Masseproblem...

Mahlzeit...naja, gleich...;-)
Achim

PS: Evtl. solltest du mal überprüfen, ob RSE richtig ist!
Nicht benutzte Kanäle sollten grundsätzlich auf Masse gelegt werden, sonst hast du Crosstalk, die 6229 hat ja nur ein ADC und benutzt ein Multiplexer um die Kanäle zu schalten.

VDB
Referenz-URLs