Wie kann ich am besten Netzvariablen eines OPCs mittels state machine schalten?
Sobald ich nämlich die schleife im Hauptprogram implementiere, geht diese nicht mehr, die Variablen werden nicht mehr geschaltet. Als eigenständige VI läuft es fehlerfrei. Guter Rat wäre sehr hilfreich, um nicht zu verzweifeln
Deine VIs wären cool.
. . .
Gruß Markus
Hier die 2 VIs.
Sobald ich die HauptVI laufen lasse und anschließend die automatisch.vi starte, funkionierts. Kopiere ich nun den stateblock ins Hauptprogram, passiert nichts, als wären die Variablen unauffindbar.
1) Es ist nie eine gute Idee, 2 Event-Strukturen innerhalb eines VIs zu verwenden! Erst recht nicht, wenn die beiden Event-Strukturen dann noch auf dasselbe Event reagieren sollen (Value Change "VI_Steuerung").
2) THINK Dataflow: Wenn vor Start deines Programms der Button "Boolesch 2" FALSE ist, dann wird deine oben ins Blockdiagramm kopierte Schleife genau 1x ausgeführt. Wieso? Finde es selber heraus.
Gruß, Jens
bekomme es nicht hin, die Variablen zu ändern, da Steuerung.vi alle 100ms aktualisiert und wenn dort der Schalter auf off steht wird die Variable nicht geändert. Gibt es eine Möglichkeit, die Priorität so einzustellen, das zB Automatisch.vi > Steuerung.vi gilt?
Mit Prioritäten von VIs kannst du das nicht ändern, das musst du schon programmieren.
Wer hat das verbrochen?
Alles läuft parallel.
Beenden kann man das "Programm" nur über den Abort-Button in der Taskleiste.
Keine Übersicht, was wo auf Shared Variablen geschrieben oder gelesen wird, da die Controls im Frontpanel direkt daran gebunden sind.
Gruß, Jens
Respekt!
Wer bei dem BD durchblickt...
A.