19.08.2006, 09:44
Beitrag #2
|
ahlers01
LVF-Gelegenheitsschreiber
Beiträge: 143
Registriert seit: Feb 2005
7.1-2011
1993
DE_EN
38116
Deutschland
|
Kollektor im Sub-VI soll nur die übergebenen Werte an das Sub-VI speichern.
' schrieb:Hallöle miteinander.
Gibt es die Möglichlkeit einem Kollektor ine einem SUB-VI zu sagen er soll nur die jeweils aufgerufen Werte speichern.
Hier malö ein korrektes Beispiel.
Also habe ein Sub-VI mit Kollektor.
dieses wird 3 mal aufgerufen und soll dann messwerte filtern umrechenen und wieder zurückgeben.
So da es sich um 3 verschiedene Messwerte handelt soll der Kollektor nur die jeweils beim aufruf übergebenen Werte speichern.
Ich glaub das hört sich jetzt ziemlich verwirrend an, deshalb nochmal das Problem erläutert
also hab ein Sub-Vi was 3mal aufgreufen wird. in diesem ist ein Kollektor. So der Kollektor sammelt jetzt alle Daten die kommen. Also gibt es ein mischmasch aus allen 3 Kanälen.
Wie sag ich das jetzt dem Kollektor das er nur die Werte sammeln soll die auch wirklich bei diesem Sub-VI-aufruf übergeben wird.
Vielleich versteht es ja einer
Also danke mal Felix
Ist wirklich nicht einfach zu verstehen...
Also: Du hast ein einem subVI irgendeine Datenstruktur, die in der Lage ist, sich die beim Aufruf der subVI übergebenen Werte zu merken (vermutlich ein Schieberegister)? Und das Ding nennst Du Kollektor, richtig?
Nun, wenn du die subVI aufrufst, wird, wenn Du es entsprechend programmiert hast, bei jedem Aufruf der dabei übergebene Datensatz in dem 'Kollektor' gespeichert. Das ist genau das, was Du willst: bei jedem Aufruf wird der aktuell übergebene Datensatz gespeichert. Wo also liegt das Problem?
|
|
|
19.08.2006, 09:46
(Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2006 09:49 von bierber.)
Beitrag #3
|
bierber
LVF-Gelegenheitsschreiber
Beiträge: 104
Registriert seit: Jan 2006
8.01
2006
kA
Deutschland
|
Kollektor im Sub-VI soll nur die übergebenen Werte an das Sub-VI speichern.
' schrieb:Ist wirklich nicht einfach zu verstehen...
Also: Du hast ein einem subVI irgendeine Datenstruktur, die in der Lage ist, sich die beim Aufruf der subVI übergebenen Werte zu merken (vermutlich ein Schieberegister)? Und das Ding nennst Du Kollektor, richtig?
Nun, wenn du die subVI aufrufst, wird, wenn Du es entsprechend programmiert hast, bei jedem Aufruf der dabei übergebene Datensatz in dem 'Kollektor' gespeichert. Das ist genau das, was Du willst: bei jedem Aufruf wird der aktuell übergebene Datensatz gespeichert. Wo also liegt das Problem?
nein bei LabVIEW 8 gibt es ein Express VI was sich messwerte merkt. Das nennt sich kollektor
Das Problem ist das ich das sub VI 3 mal aufrufe und 3 mal unterschiedliche Kanäle übergebe. Der Kollektor sammelt jetzt die Daten von allen 3 Kanälen und mixt die wild durcheinander.
Ich will das ich immernur das Werte-Array für den entsprechenden Kanal bekomme
Also
123 --> Sub-VI-->123
456--> Sub-VI --> 456
789--> Sub-VI --> 789
Im Moment bekomme ich das
123 --> Sub-VI-->123456789
456--> Sub-VI --> 123456789
789--> Sub-VI --> 123456789
Hoffe jetzt ist es klarer
|
|
|
19.08.2006, 10:00
Beitrag #4
|
|
|
19.08.2006, 10:03
Beitrag #5
|
SchwindelInside
LVF-Gelegenheitsschreiber
Beiträge: 77
Registriert seit: Dec 2005
2012 pro
2005
EN
Deutschland
|
Kollektor im Sub-VI soll nur die übergebenen Werte an das Sub-VI speichern.
' schrieb:Hallöle miteinander.
Gibt es die Möglichlkeit einem Kollektor ine einem SUB-VI zu sagen er soll nur die jeweils aufgerufen Werte speichern.
Hier malö ein korrektes Beispiel.
Also habe ein Sub-VI mit Kollektor.
dieses wird 3 mal aufgerufen und soll dann messwerte filtern umrechenen und wieder zurückgeben.
So da es sich um 3 verschiedene Messwerte handelt soll der Kollektor nur die jeweils beim aufruf übergebenen Werte speichern.
Ich glaub das hört sich jetzt ziemlich verwirrend an, deshalb nochmal das Problem erläutert
also hab ein Sub-Vi was 3mal aufgreufen wird. in diesem ist ein Kollektor. So der Kollektor sammelt jetzt alle Daten die kommen. Also gibt es ein mischmasch aus allen 3 Kanälen.
Wie sag ich das jetzt dem Kollektor das er nur die Werte sammeln soll die auch wirklich bei diesem Sub-VI-aufruf übergeben wird.
Vielleich versteht es ja einer
Also danke mal Felix
<div align="left">Hallo Felix,
In der Zeit als die Antwort erstellt habe, sind schon wieder einge Antworten eingetrudelt. Mit diesem ExpressVI hab ich nicht allzuviel Erfahrung. Aber könnte dieses VI nicht vielleicht auch Dein Problem lösen?:
Kollektor.vi (Größe: 14,29 KB / Downloads: 261)
schönen Tag noch
SchwindelInside</div>
|
|
|
19.08.2006, 10:09
(Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2006 10:15 von bierber.)
Beitrag #6
|
|
|
19.08.2006, 10:24
Beitrag #8
|
|
|
19.08.2006, 10:26
(Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2006 10:34 von ahlers01.)
Beitrag #9
|
ahlers01
LVF-Gelegenheitsschreiber
Beiträge: 143
Registriert seit: Feb 2005
7.1-2011
1993
DE_EN
38116
Deutschland
|
Kollektor im Sub-VI soll nur die übergebenen Werte an das Sub-VI speichern.
' schrieb:die Frage war ja ob man das abstellen kann, das er die Daten sammelt wie oben beschrieben
Ja, nimm einfach keinen Kollektor...
Im Ernst: wenn Du die Daten sammeln willst, kriegst Du sie halt auch gesammelt.
Vielleicht willst Du die Daten ja (in dem subVI) einerseits sammeln, und nur die an das subVI übergebenen Teildaten filtern? Dann musst Du halt im subVI den Filteralgorithmus nur auf die übergebenen Eingangsdaten anwenden, und nicht auf die komplette Sammlung, die der Kollektor zurückgibt.
Das subVI köönte dann etwa so aussehen:
|
|
|
19.08.2006, 10:39
(Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2006 10:40 von Lucki.)
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
Kollektor im Sub-VI soll nur die übergebenen Werte an das Sub-VI speichern.
So wie ich Dein Problem verstehe, müßtest Du doch lediglich an den Eingang "rücksetzen" dieses Express-VI die Kontante "true" anschließen, dann wäre die jeweilige Vorgeschichte vergessen und es zählen nur die momentanen Eingangswerte. Aber auf diese naheliegendste Möglichkeit wärest doch Du, oder zumindest einer von denen die Dir hier antworten, längst gekommen, also habe ich das Problem nicht verstanden. Oder doch?
|
|
|
| |