INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

es hakt mal wieder...



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!

19.12.2006, 15:06
Beitrag #1

maze Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 85
Registriert seit: Sep 2006

8.0
2006
kA


Deutschland
es hakt mal wieder...
moin zusammen, bei mir gehts mal wieder nicht voran...

mein Problem ist folgendes:
ich habe 12 Kanäle bzw Eingänge, die jeweils entweder true oder false sein können, je nachdem, ob man sie vorher ausgewählt hat, oder nicht.
für jeden Eingang, der true ist, möchte ich, dass die entsprechende Nummer (1-12) an ein subvi übergeben wird, welches den Befehl (Sx), wobei x, die Kanalnummer ist, an die serielle Schnittstelle sendet und zwar solange, bis ich ein Acknowledge (A) zurückbekomme.
1. kriege ich es nicht hin, den einzelnen True/False-Werten Nummern zuzuorden
2. weiss ich nicht, wie man einem subvi einen 'Array' übergibt, so dass das subvi für jeden Wert im subvi die gleiche funktion ausführt...

ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt.
ein vi gibt es leider nicht zu posten, da alles bisher großer Mist war...

mfg
maze
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
19.12.2006, 18:25
Beitrag #2

Mr.T Offline
LVF-SeniorMod


Beiträge: 1.007
Registriert seit: Jun 2005

2009
2005
kA

88400
Deutschland
es hakt mal wieder...
Hallo!

' schrieb:1. kriege ich es nicht hin, den einzelnen True/False-Werten Nummern zuzuorden

Da die Auswahl vorher erfolgt sein muß, bietet sich hier an, die Auswahl in einem Array (boolesch) zusammenzufassen. Wenn dies geschehen ist, hat jedes Arrayelement einen Index, den Du praktischerweise als zugewiesene Nummer benutzen könntest.

' schrieb:2. weiss ich nicht, wie man einem subvi einen 'Array' übergibt, so dass das subvi für jeden Wert im subvi die gleiche funktion ausführt...

Also die Übergabe kannst Du leicht erstellen:

1. Erstelle ein Anzeige und ein Bedienelement-Array
2. Markiere das Anzeigeelement im Blockdiagramm
3. "Bearbeiten"--> Sub-VI erstellen
4. Voilá: Übergabe ist automatisch erfolgt

Prinzipielles Vorgehen zum erstellen eines Sub-VIs gibts sicher als Beispiel.
Ich hoffe, dies hilft Dir weiter, auch wenn es keine Komplettlösung ist - aber die möchtest Du ja sicher auch nicht haben...

Gruß!

Mit einem freundlichen Wort und etwas Gewalt erreicht man viel mehr als nur mit einem freundlichen Wort. [...Marcus zu Lennier, B5]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2006, 11:21
Beitrag #3

maze Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 85
Registriert seit: Sep 2006

8.0
2006
kA


Deutschland
es hakt mal wieder...
moin, erstmal danke für die Antwort.
ich muss da nochmal nachhaken. Wie greif ich denn auf die Indices eines Arrays zu und vor allem nur auf die die True sind?
Des weiteren sind mir noch zwei weitere Fragen in den Sinn gekommen:
1. wie kann ich die while-Schleife 'zurücksetzen', wenn nach 2 umläufen die Abbruchbedingung noch nicht erfüllt ist?
2. wie sorg ich dafür, dass diese Schleife nach und nach für alle True-elemente des Arrays durchgeführt wird?

Der Index soll übrigens als String an den 'concentanate String' übergeben werden, aber das ist dann ja nicht mehr das Problem.

Freue mich auf weitere Inspiration...


Sonstige .vi  fastscansetup.vi (Größe: 10,49 KB / Downloads: 190)


   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2006, 14:50
Beitrag #4

maze Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 85
Registriert seit: Sep 2006

8.0
2006
kA


Deutschland
es hakt mal wieder...
nochmal ein kleines update...
   

die auswahl, der von null verschiedenen elemente habe ich jetzt so realisiert!
in dem rot markierten bereich komm ich allerdings noch nicht weiter.
und zwar möchte ich für jedes element die schleife ausführen. vllt hab ich da auch ein brett vorm kopf, aber ich finde in der palette nichts, um die elemente des arrays zu trennen.

und nach wie vor würde ich den counter der schleife gerne resetten können, fall das gewünschte ergebnis nach 2 umläufen noch aussteht.
vielen dank für jedwedes bemühen...
gruß maze
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2006, 15:02 (Dieser Beitrag wurde zuletzt bearbeitet: 20.12.2006 15:08 von Kvasir.)
Beitrag #5

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
es hakt mal wieder...
Hi

die Indizes der Kanäle bekommst du ganz einfach mit einer For Schleife und einem Case (siehe Screenshot).

Das gleiche machst du um die Kanäle an dein Visa weiterzuleiten. Du steckst den Array mit den Indizes an eine For Schleife und schaltest die Indizierung an (Das Rechteck, wo der Draht in die For Schleife geht muss offen sein)
Dadurch läuft die Schleife automatisch so oft wie der Array lang ist und arbeitet die Werte ab.

Natürlich kannst du eigentlich deine ganze While Schleife gleich in den True Case der For Schleife meines Vorschlages stecken.

Das mit der Abbruchbedingung habe ich noch nicht ganz verstanden. Willst du warten bis das A kommt? Auf jeden Fall nach 2 mal abbrechen?

Ich denke, du willst am ehesten einfach deine "und" Bedingung in eine "oder" umwandeln. Dann läuft die Schleife maximal 2x, oder nur 1x, wenn ein A kommt.

Gruß


edit: Vi modifiziert und hochgeladen


Angehängte Datei(en) Thumbnail(s)
   

Sonstige .vi  fastscansetup_1.vi (Größe: 11,52 KB / Downloads: 171)

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.12.2006, 14:20
Beitrag #6

maze Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 85
Registriert seit: Sep 2006

8.0
2006
kA


Deutschland
es hakt mal wieder...
jooooooooo, habs hinbekommen.
vielen dank für die hilfe, war riesig...
allen die das hier lesen auch schöne Feiertage und nen guten Rutsch! ich werd LabVIEW jetzt mal ne woche ruhen lassen!
bis denne
maze
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Gehe zu: