Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
ich möchte ein Auswahlmenü bestehend aus Dialog Radio Button, Checkbox und Ring programmieren.
Dazu hätte ich gern gewusst, wie man sowas macht.
Z.B. sollen durch Häkchen setzen in der Dialog Checkbox verschiedene Kurven in einem Graphen ein- bzw. ausgeblendet werden.
Oder es soll durch Auswahl eines Radio Buttons oder Rings ein Unterprogramm oder Rechenalgorithmus gestartet werden oder es sollen dadurch andere Buttons aktiviert oder deaktiviert werden.
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Dialog Radio Button, Checkbox und Ring
<div align="left">Hallo,
hier ist ein kleines Beispiel (LabVIEW 8.0.1), wie Du das mit den Unterprogrammen und dem Rechenalgorithmus lösen kannst. Das mit dem Ein- und Ausblenden der Kurven weiß ich gerade auch nicht auswendig, aber ich denke, dass das mit Property-Nodes (Eigenschaftsknoten) funktioniert. Da musst Du vielleicht mal bei der LabVIEW-Hilfe nachschauen, oder ich schaue bei Gelegenheit mal nach.
Gruß M.Weippert
</div>
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Dialog Radio Button, Checkbox und Ring
Klar,
hier ist es. Hoffentlich hilft es Dir weiter.
.............und vergiss nicht, Deine LabVIEW-Version in Deinem Profil neu anzugeben, die wurde nämlich bei der Umstellung nicht übernommen, bzw. wurde in die Interessen rein geschrieben. Dann weiß man nämlich gleich in welcher Version man die VI's erstellen muss. War aber kein Problem. :-)
Gruß M.Weippert
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Dialog Radio Button, Checkbox und Ring
Hallo,
in den Leerlauf Case geht das Programm, wenn gerade nichts gemacht werden soll (Rechnen, Ausgeben,...), sprich das Programm ist im Leerlauf.
Da wird dann auch abgefragt, ob der User irgendwas tun will (in dem Fall Rechnen). Dies wird am besten mit Event-Strukturen (Event-Structures) gemacht. Durch den Klick auf "Rechenvorgang übernehmen" springt die Event-Structure in den Event-Case "Rech. uebern.". Da wird dann ausgelesen welche Rechenart eingestellt worden ist. Und je nach dem ob man "Rechnen 1, 2 oder 3" ausgewählt hat wird entsprechend auch "Rechnen 1, 2 oder 3" in das Schieberegister geschrieben und liegt beim nächsten Durchlauf der Schleife vorne am Case an. In den Rechnen Cases wird dann wieder in den Leerlauf gesprungen, nachdem die Rechnung durchgeführt wurde. Dann kann man einen neuen Rechenvorgang auswählen und ihn übernehmen........
Wenn man die Event-Structure weglässt ist man nicht so flexibel und in der Regel wird sie auch so verwendet.
Ich hoffe, dass Dir das weitergeholfen hat, wenn nicht kannst Du gerne nochmal nachfragen.
Gruß M.Weippert
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Dialog Radio Button, Checkbox und Ring
Hallo,
hast Du Dir schon mal die CPU-Auslastung bei Deinem VI angeschaut?
Wenn Du es so machen willst, dann würde ich zumindest eine Verzögerung (z.B. 10 ms oder 100 ms) in die Whileschleife einbauen.
Aber ich habe Dir Dein Beispiel mal umgeschrieben, so wie ich es gemacht hätte. Du kannst Dir ja auch mal hier die CPU-Auslastung vergleichsweise anschauen. Mit den Events entlastest Du Deine CPU. Die Schleife muss doch nicht unendlich durchlaufen. Es reicht doch, wenn man einen Button mit "Rechnung durchführen" einbaut und nur dann wird auch gerechnet, also alles einstellen, dann Rechnung durchführen.
Mit einer "State-Machine" zu programmieren lernt man bei den Lehrgängen bei National Instruments.
So wie Du es gemacht hast ist es aber auch nicht falsch, vielleicht nur nicht ganz so gängig, immerhin hat es ja funktioniert. Aber wenn Du es so lassen willst wie Du es hast, dann vergiss die Verzögerung (vgl. oben) nicht.
Wenn Du noch Fragen hast, kannst Du Dich gerne melden.
Gruß M.Weippert
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Wenn Du die Ereignisstruktur verwendest, dann brauchst Du in der Regel keinen Radio-Button. Habe mal ein ganz primitives Beispiel angehängt. Wenn Du damit SUB-VIs aufrufst, dann bei den SUB-VIs 1.) "modal" aktivieren (dann kann, wenn das Sub-VI geöffnet ist, nicht mehr an den Knöpfen des Hauptprogramms herumgespielt werden 2) "Fenster kann kann nicht geschlossen werden" aktivieren (damit kann das SUBVI nur über den Stopp-Button geschlossen werden, denn nur damit kommt man wieder zum Haupprogramm zurück)
Wichtig ist die Platzierung der Auswahlknöpfe im Blockbild. Im Beispiel befindet sich Button 1 im Ereignis, Button 2 in der Schleife und Button 3 außerhalb der Schleife. Button 2 hat die beste Platzierung, er wird zrückgesetzt, wenn das Unterprogramm beendet ist. Außerhalb der Schleife ist nicht akzeptabel (oder man ändert das Schaltverhalten), da der Button nie mehr zurückgesetzt wird (Siehe dazu weiteres Negativbeispiel in diesem Threat).