LabVIEWForum.de - Mit LabView aus Teststand Variablen auslesen

LabVIEWForum.de

Normale Version: Mit LabView aus Teststand Variablen auslesen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallöchen Leute,
vorneweg oh man bin ich müde =_=. Und ich versuch mich grad bissel in TestStand einzuarbeiten.
Naja also es is so, ich hab da nen Step in Teststand und dieser checked halt ob ein Wert übereinstimmt aus einem vorhandenen Array. Der Wert mit dem ich das abchecke is in ner StationGlobals und heißt PWB also StationGlobals.ProjectParameter.PWB um genau zu sein.

Nun wenn dieser erste Step ausgeführt wurde egal ob PASS/FAILED dann kommt ne 'Action' die auch ein VI nutzt um dann eben zum Beispiel diese PWB Variable auszulesen und neu zu setzen. Klappt auch gut. Nun würde ich aber gerne noch das Array auslesen können das im ersten Step alle möglichkeiten enthalten soll das dem PWB entspricht. Jedoch befindet sich das bei Step.Config.LOTArray. Und nun mein Problem.
Ich kann im LabView VI, also in dieser Action das dieses VI called, nicht sagen ja nimm dir doch bitte dieses Array Names LOTArray aus dem Step.Config mit dem Namen LOTArray und gib mir das und zeigs mir im VI an. Problem ist das er mir bei Step.Config meckert er finde es nicht. Jetzt weiß ich halt net, da ich die StationGlobals ja schön auslesen kann mit dem kompletten Namen von oben aber nicht das Array mit dem jetztigen. Erkennt er dann wohl nicht was denn genau der erste Step ist oder wie?
Ich hab auch schon das Step durch den Namen des Steps ersetzt. Aber 'Verify Sensor Type Number.Config.LOTArray' ging dennoch leider auch nicht.

Weiß iwer wie ich nicht nur Zugriff auf StationGlobals von LabView aus bekomme sondern auch auf eine solche Variable?
Vllt noch zur Verständlichkeit, diese LOTArray Variable ist innerhalb des ersten Steps der eig. auch nur ein VI ist und dieses Array an TestStand überträgt. Jedoch komme ich nicht an das Blockdiagramm um zu schauen wie das genau geht Sad

peace Adi
Hoffe nicht zu verwirrend.
Hi Adi,

vornweg, ja ich bin verwirrt nach Deinem Posting Blink
Ich versuch trotzdem Dir mal etwas weiter zu helfen in der Hoffnung Dein Problem einigermaßen verstanden zu haben.
Also erst mal
StationGlobals sind Variablen die für jede Sequenz die Du in TS benutzt verwendbar. Somit natürlich auch in jedem Schritt.
Step Variablen gehören immer zu dem aktuellen Schritt. Somit kannst Du natürlich nicht in deinem zweiten Schrit über Step auf Variablen deines ersten Schritts zugreifen. Unter Umständen kommst du da über RunState.PreviouseStep.... ran.
Die bessere Möglichkeit ist meiner Ansicht jedoch das Aray unter Locals abzulegen. Dort kommen alle Variablen hin die Du nur in dieser Sequenz benötigst. Da kannst du dann z.B. über Locals.LOTArray drauf zugreifen. Im ersten genauso wie im zweiten Schritt.

Hoffe das hilft Dir etwas weiter.

Gruß Jochen
Also meinst du ich soll beim ersten Step das LOTArray in eine Local Variable schreiben und diese im 2. Step (also bei der Action) dann einfach auslesen? Klingt eig. recht logisch x__X Ich werds gleich mal versuchen^^ Danke dir schonmal
Jupp, so hatte ich mir das gedacht Cool

Vielleicht nen kurzer Abriss zu den Var-Sections:

Locals -> nur in der Aktuellen Sequenz gültig
FileGlobals -> in allen Sequenzen des aktuellen Files gültig
StationGlobals -> in allen Files auf diesem Rechner
(Parameters) -> Übergabeparameter für die Sequenz

Vielleicht hilft Dir das für die Zukunft ein bisschen weiter

Jochen
Hm iwie kein Button gefunden um meinen letzten Beitrag zu editieren. Naja auf jedenfall hab ich eine noch bessere Lösung gefunden Wink
Da ich ein Goto eingefügt hab (mach ich eig. net gern) und dann gesagt habe geh zurück zum ersten Step hat er mir folgende Expression angezeigt:
RunState.Sequence.Main["ID#:XaaIzeggm0aGqNSYtWoK4C"].Result.Status == "Failed"

Das hat mich dann auf die Idee gebracht in meiner Action eben diese Expression zu nutzen und so das LOTArray zu übergeben. Und das einfach mit dieser Expression:
RunState.Sequence.Main["ID#:XaaIzeggm0aGqNSYtWoK4C"].Config.LOTArray

Und siehe da ich hab die Variable aus dem ersten Step in meinem 2 Step (Action) Big Grin und joa jetzt hab ich die in dem VI halt anzeigen können und kann nun damit weiter rumfuchteln Wink

peaceout Adi
Naja, musst du wissen Big Grin

Allerdings tut mir der leid der das dann mal in einem Jahr anpassen muss Abgelehnt. Bei TS ist es halt auch wie beim Programmieren, keep it as simple as possible. Klar geht es, aber glaubst Du das du in nem halben Jahr noch weißt was das tut?

Nur eine Anregung meinerseits, Jochen
Hmmm,

ich mein die Syntax ist ja eig. immer die selbe RunState.Sequence.Main["ID#:BOOOOOING"].Result.Status == "Failed", das was sich ändert ist ja sozusagen immer die 'ID' diese ist halt je nach Step anders. Wenn man dies einfach sauber dokumentiert dann sehe ich dabei eig. keinerlei Probleme. Oder sehe ich das jetzt falsch und habe evtl etwas vergessen?

Habe immer gerne solche Tipps Smile
Referenz-URLs