26.10.2009, 15:47
Hallo LabVIEW User,
ich habe anscheinend ein kleines Problem bei der Anwendung der Ereignisstruktur.
Ich möchte eine GUI für eine Motorensteuerung schreiben. (bzw. sie existiert schon...funktioniert aber eben nicht..)
Dafür habe ich mehrere Controls mit denen ich verschiedene Parameter (Motorauswahl, Geschwindigkeit, Beschleunigung usw.) ändern kann.
Jetzt soll sofort nach Änderung der Werte die neue Konfiguration als string per TCP/IP an meine Motoren "geschickt" werden.
Ich dachte mir, das beste ist, ich trenne diese beiden Komplexe und arbeite mit 2 seperaten Schleifen.
1e Eingabeschleife, in der eine Ereignisstruktur sitzt, die nach Änderung eines Parameters nur diesen Parameter vom jeweiligen Control ausließt und in einen "Zwischenstring" schreibt.
In der 2ten Schleife ("Kommunikatioonsschleife") befindet sich die TCP/IP-Kommunikation in einer weiteren Ereignisstruktur.
D.h. sobald sich der Wert von "Zwischenstring" ändert müsste eigentlich diese 2te Schleife arbeiten und den String über TCP/IP versenden.
Macht sie aber nicht.....
Ich habe ein kleines Minimalbeispiel gemacht um den Denkfehler einzugrenzen:
Was dieses Programm machen müsste, (aber nicht tut) ist folgendes:
Bei Änderung des Wertes A (durch den Schieber) oder B (durch das Eingabefeld)
wird der unsigned inter (U16) in einen String konvertiert.
Bei Änderung des String-wertes müsste die Ereignisstruktur der "Kommunikationsschleife"
sofort den neuen Wert in das Ausgabefeld schreiben.
..leider reagiert die "Kommunikationsschleife" garnicht.
Wo ist mein Denkfehler???
Ich verwende LabVIEW 8.6.1f1
ich habe anscheinend ein kleines Problem bei der Anwendung der Ereignisstruktur.
Ich möchte eine GUI für eine Motorensteuerung schreiben. (bzw. sie existiert schon...funktioniert aber eben nicht..)
Dafür habe ich mehrere Controls mit denen ich verschiedene Parameter (Motorauswahl, Geschwindigkeit, Beschleunigung usw.) ändern kann.
Jetzt soll sofort nach Änderung der Werte die neue Konfiguration als string per TCP/IP an meine Motoren "geschickt" werden.
Ich dachte mir, das beste ist, ich trenne diese beiden Komplexe und arbeite mit 2 seperaten Schleifen.
1e Eingabeschleife, in der eine Ereignisstruktur sitzt, die nach Änderung eines Parameters nur diesen Parameter vom jeweiligen Control ausließt und in einen "Zwischenstring" schreibt.
In der 2ten Schleife ("Kommunikatioonsschleife") befindet sich die TCP/IP-Kommunikation in einer weiteren Ereignisstruktur.
D.h. sobald sich der Wert von "Zwischenstring" ändert müsste eigentlich diese 2te Schleife arbeiten und den String über TCP/IP versenden.
Macht sie aber nicht.....
Ich habe ein kleines Minimalbeispiel gemacht um den Denkfehler einzugrenzen:
Was dieses Programm machen müsste, (aber nicht tut) ist folgendes:
Bei Änderung des Wertes A (durch den Schieber) oder B (durch das Eingabefeld)
wird der unsigned inter (U16) in einen String konvertiert.
Bei Änderung des String-wertes müsste die Ereignisstruktur der "Kommunikationsschleife"
sofort den neuen Wert in das Ausgabefeld schreiben.
..leider reagiert die "Kommunikationsschleife" garnicht.
Wo ist mein Denkfehler???
Ich verwende LabVIEW 8.6.1f1