LabVIEWForum.de
Darstellung eines Zustandes durch Bilder - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Grafik & Sound (/Forum-Grafik-Sound)
+---- Thema: Darstellung eines Zustandes durch Bilder (/Thread-Darstellung-eines-Zustandes-durch-Bilder)

Seiten: 1 2


Darstellung eines Zustandes durch Bilder - Brushfire - 08.08.2011 10:04

Hallo,

bin noch ein ziemlicher Laie und würde mich über eure Hilfe freuen.

Ich will auf einer Seite meiner Registerkarte eine Grafik (10 Kammern) anzeigen lassen, was für mich soweit noch kein Problem darstellt. Ebenfalls sind/sollen auf der Registerkarte 10 Druckschalter, für jede Kammer einen, zu finden sein.
Jetzt möchte ich gerne durch dass betätigen eines Druckschaltes zeigen, dass die Kammer voll oder leer ist.

Ich habe dies über 10 Case-Strukturen versucht, in dem ich an jeder einen Druckschalter angeschlossen habe und dann die Grafiken deklariert habe, die bei "True" und "False" angezeigt werden sollen. Die Ausgabe der Grafiken habe ich über die gleiche Grafikanzeige laufen lassen. Leider, wenn man jetzt dass Programm in betrieb nimmt, dann flackert alles und dass war nicht das Ziel.

Könnte Ihr mir eventuell dabei helfen?

Mit den besten Grüßen
Brushfire


RE: Darstellung eines Zustandes durch Bilder - NWOmason - 08.08.2011 10:20

(08.08.2011 10:04 )Brushfire schrieb:  Ich habe dies über 10 Case-Strukturen versucht, in dem ich an jeder einen Druckschalter angeschlossen habe und dann die Grafiken deklariert habe, die bei "True" und "False" angezeigt werden sollen. Die Ausgabe der Grafiken habe ich über die gleiche Grafikanzeige laufen lassen. Leider, wenn man jetzt dass Programm in betrieb nimmt, dann flackert alles und dass war nicht das Ziel.

Das Flackern könnte daher kommen, dass du die Grafiken die ganze Zeit neuzeichnest, als dem Control (pictureControl?) bei jedem Schleifendurchlauf einen Wert zuweist?!?

(08.08.2011 10:04 )Brushfire schrieb:  Könnte Ihr mir eventuell dabei helfen?

Am besten können wir dir helfen, wenn du dein VI hochlädst. Dann kann man über den Source Code nachvollziehen, was passiert und warum es flackert.


Beste Grüße,
NWO


RE: Darstellung eines Zustandes durch Bilder - Brushfire - 08.08.2011 10:37

Hallo NWO,

ich habe die VI jetzt mal hochgeladen, dass ist nur die Versuchs VI, die soll später in ein anderes Projekt mit einbezogen werden.

Dass ist jetzt nur ein Beispiel mit 5 Kammern.

Grüße

Brushfire


RE: Darstellung eines Zustandes durch Bilder - GerdW - 08.08.2011 11:09

Hallo Chris,

du hast im VI 5 Case-Strukturen. In jeder Struktur liest du ein JPG ein und stellst es im PictureIndicator (per lokaler Variable) dar. Klartext: dein subVI liest 5mal das Bild "leer.jpg" ein und stellt es pro Aufruf auch 5mal dar. Das kann schon ganz übel flackern...

Und was noch schlimmer ist: Wenn jetzt ein Button True ist, wird zwar das Bild geladen und angezeigt, aber ziemlich sicher sofort wieder durch ein anderes Bild überschrieben - eine klassische RaceCondition durch übermäßigen Gebrauch lokaler Variablen. Lösung: in den Cases nur den Pfad ausgeben und nach den Cases nur einmal ein Bild laden und darstellen!

P.S.: Es gibt auch Pfad-Konstanten, dann muss man nicht erst alle Strings nach Pfad umwandeln...


RE: Darstellung eines Zustandes durch Bilder - NWOmason - 08.08.2011 11:19

Wie ich schon vermutet habe, schreibst du immer ein Bild in das Picturecontrol. Durch dieses dauerne beschreiben, wird das Ganze sicher flackern. Zusätzlich laufen die Casestrukturen parallel. Also wird bei jedem Aufruf das Bild 5 mal neu beschrieben. (Edit: wie Gerd schon bemerkte Wink )


Zwei Lösungsansätze:

1) Diese VI nur aufrufen, bzw. das PictureControl nur beschreiben,wenn eine Änderung des Status auftritt.
2) Mit Mehraufwand. Per Graphikprogramm je eine Graphik für jeden Zustand erstellen. Dann die Buttons abfragen und die entsprechende Graphik laden. Wird jedoch aufwändig bei entrsprechend hoher Buttons aufgrund der Kombinationsmöglichkeiten

Beste Grüße,
NWO


RE: Darstellung eines Zustandes durch Bilder - Brushfire - 08.08.2011 13:03

Hallo,

bitte reißt mir jetzt den Kopf nicht ab, ich hab da so meine Schwierigkeiten mit euren Lösungsansätzen, dass Problem habe ich verstanden, aber leider scheitere ich an der Umsetzung. Blush

Könntet Ihr mir sagen mit welchen Funktionen ich arbeiten muss?

Vielen Dank schonmal für eure Antworten.

Grüße
Chris


RE: Darstellung eines Zustandes durch Bilder - GerdW - 08.08.2011 13:07

Hallo Chris,

dann schau dir mal das VI im Anhang an. Dieses verwendet ein Optionsfeld statt einzelner Buttons...


RE: Darstellung eines Zustandes durch Bilder - Brushfire - 08.08.2011 13:19

Hallo GerdW,

kannst du mir bitte deine VI nochmal als 8.6 anhängen? Ich bin heute leider nicht in der Uni wo 2010 Version vorhanden ist und hier auf mein Lappi, hab ich nur die 8.6 als Studentversion.

Vielen DAnk

Chris


RE: Darstellung eines Zustandes durch Bilder - GerdW - 08.08.2011 13:38

Gruß!!


RE: Darstellung eines Zustandes durch Bilder - Brushfire - 08.08.2011 14:50

Vielen Dank erstmal für deine/eure Mühen.

Also mit Optionsfeldern hab ich es leider nur bedingt hinbekommen. Ich kann zwar über das Optionsfeld jetzt den Zustand für eine Kammer mir anzeigen lassen, aber sobald ich eine zweite Option auswähle, verschwindet der Zustand der davor eingestellt war.

Da ich leider mit Druckschaltern arbeiten muss (ein Anwender muss erst auf den Schalter drücken, damit er eine Aufforderung bekommt in welche Richtung er dass Handventil gedreht werden muss).
Durch die farbliche Änderung (mit Zeitverzögerung) wollte ich dem Anweder zeigen, dass eine Zustandsänderung in der Kammer geschehen ist.


Würde mich über weitere Vorschläge freuen.

Grüße
Chris