LabVIEWForum.de
Befüllung - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Befüllung (/Thread-Befuellung)

Seiten: 1 2


Befüllung - Schüler92 - 17.03.2011 23:03

Hallo.
Ich simuliere in meinem angehängten Programm [attachment=32819] einige Füllstände, Temperaturen und Drücke.
Diese nehmen bei jedem Durchlauf ab. Das funktioniert einwandfrei.
Das Problem dabei ist folgendes:
Wenn die Anzeigen auf 0 sind, soll wieder aufgefüllt werden.
Das passiert zwar, jedoch wird der Vorgang nicht angezeigt.
Mir ist auch klar wieso (innere While-Schleife wird zuerst fertig abgearbeitet) ABER
mir ist es noch nicht gelungen, dieses Problem zu umgehen.

Ich wäre euch sehr dankbar wenn mir jemand helfen könnte.

Mfg.


RE: Befüllung - IchSelbst - 18.03.2011 00:17

(17.03.2011 23:03 )Schüler92 schrieb:  Ich wäre euch sehr dankbar wenn mir jemand helfen könnte.
Hilfe 1: siehe Anhang.

Hilfe 2: Was machst du denn !!
Du kannst doch nicht einfach den Variablennamen löschen! Das fällt unter Todsünde! Was in anderen Programmiersprachen der Variablenname ist, heißt in LabVIEW Beschriftung. Das, was man bezogen auf das Element als sichtbaren Text auf dem Frontpanel anzeigen sollte, heißt Untertitel. Die Beschriftung, also den Namen, würde ich niemals löschen. Auch doppelte "Beschriftungen" - doppelte Namen - sind ganz, ganz schlecht. Und wenn du die Beschriftung am Frontpanel nicht sehen willst - dann ausblenden, also unsichtbar machen.


RE: Befüllung - Y-P - 18.03.2011 08:39

Hast Du schon mal was von einem Schieberegister gehört? O

Gruß Markus


RE: Befüllung - Schüler92 - 18.03.2011 17:23

Hmmm. Danke für die Tipps.
So weit so gut. Das "Problem" ist, dass jetzt nun der Taster zur Aktivierung der Befüllung überflüssig bzw. nicht mehr vorhanden ist.
Hätte gerade probiert, diesen irgendwie zu implementieren aber irgendwo bei der Case-Struktur klappts nicht.

Habt ihr eine Idee?
Huh


RE: Befüllung - IchSelbst - 19.03.2011 14:22

(18.03.2011 17:23 )Schüler92 schrieb:  Hätte gerade probiert, diesen irgendwie zu implementieren aber irgendwo bei der Case-Struktur klappts nicht.
Habt ihr eine Idee?
Der Möglichkeiten gibt es mehrere. Eine im Anhang.

So, wie du es zur Zeit programmiert hast, ist es eine "einfache, lineare" Lösung. Hierbei wird pro Schleifendurchlauf grundsätzlich alles "gemacht". Im besonderen bedeutet das: Die einzelnen Zustände, ob befüllt werden soll, ob die Anlage steht etc. etc. werden geprüft und daraus wird der Ablauf, z.B. der Additive Wert des Füllstandes, festgelegt (<0 => Entleerung, >0 => Befüllung).

Eine andere Möglichkeit wäre eine "komplexe" Lösung. Hier würde z.B. in einem Event-Case auf einen Tastendruck reagiert. Je nach dem würde dann z.B. der additive Wert in so einem Event-Case festgelegt werden. In der Hauptschleife würden dann die einzelnen Zustände, ob befüllt werden soll, ob die Anlage steht etc. etc. nicht geprüft werden, sondern nur mit dem additiven Wert aus der Event-Struktur gearbeitet.


RE: Befüllung - Schüler92 - 19.03.2011 17:56

Hallo 'IchSelbst',
wie hast du es in der ersten Version (die du gepostet hast) geschafft, dass du im Frontpanel 3 Stoptaster hattest aber im BD nur ein Boolsches Element???
Würd mich wirklich interessieren.

Mfg. Schüler92


RE: Befüllung - IchSelbst - 19.03.2011 20:19

(19.03.2011 17:56 )Schüler92 schrieb:  wie hast du es in der ersten Version (die du gepostet hast) geschafft, dass du im Frontpanel 3 Stoptaster hattest aber im BD nur ein Boolsches Element???
Am Frontpanel ist, wie im Blockdiagramm auch, nur ein einziger Stoptaster.

LabVIEW hat folgende Eigenschaft: Jedem Element, ob Anzeige- oder Bedien-Element, auf dem Frontpanel ist genau ein Element auf dem Blockdiagramm zugeordnet (und umgekehrt).

Der Trick ist folgender: Der Stopptaster liegt nicht in einem Reiter, sondern über dem Tab-Element. Läge er in einem Reiter, würde der Taster wie alle anderen Elemente im Reiter auch "verschwinden", sobald der Reiter gewechselt wird. Daher hast du ja auf jeden Reiter einen Taster gelegt.

Die Frage ist nun, wie kommt der Taster über das Tab? Ganz einfach: Der Taster muss neben dem Tab platziert werden. Dann muss man ihn markieren und mit den Tasten, nicht mit der Maus, verschieben. Dann schiebt er sich über/vor das Tab. (Sollte er unter/hinter dem Tab verschwinden, so musst du in "In den Vordergrund" setzen (siehe Menü-Leiste).


RE: Befüllung - Schüler92 - 20.03.2011 09:24

Klappt Prima. Danke. Thanx


RE: Befüllung - Schüler92 - 22.03.2011 16:54

Hallo.
Könntet ihr mir bitte bei einem Problem helfen?
In meinem Programm habe ich im Frontpanel z.B. bei Füllstand -> Methanol, 2 Tanks und einen Umschalter.
Ich möchte nun, dass abhängig von der Stellung des Schalters nur der rechte oder nur der linke Tank entleert wird.
Das wäre ja an sich kein Problem (habe es bereits in einer ähnlichen Übung geschafft), würden nicht beide dasselbe Eingangssignal verwenden.
Zudem kann ich das Array nicht vergrößern, da ich nur 2 DAQs zur Verfügung habe und somit auch nur 4 AOs habe.
Bitte um Tipps


RE: Befüllung - IchSelbst - 22.03.2011 19:34

Ich hab mal ein Muster gemacht, wie ich mir eine Lösung für deine Gesamtaufgabe im Ansatz vorstelle.

Bei Fragen fragen.