Strona 1 z 1

Jak przekazywać zmieniające się dane do SubVI?

: 20 mar 2008 23:48
autor: ky3orr
Koledzy!

W jaki sposób dostarczać do kodu zamkniętego w SubVi jakiś parametr zmienny w czasie?

Jeśli zrobię terminal to dane są przekazywane takie jak przy wywołaniu SubVi tak? -Czy się mylę?...

Dokładniej to mam w SubVi pętlę while i to VI kończy pracę gdy spełniony jest warunek. I właśnie jak dodrutować sygnał, modyfikowany przez program zewnętrzny, do warunku tak by to zadziałało?

pozdrawiam

Jak przekazywać zmieniające się dane do SubVI?

: 21 mar 2008 07:16
autor: Mikrobi
Do rzeczowej odpowiedzi potrzebna bedzie informacja o wersji LabVIEW.
Powyżej 8ki (8.0, 8.2, 8.5) jesli VIje są w strukturze projektu mozesz wykorzystywać zmienne współdzielone (Shared Variables).
We wczesniejszych wersjach stosowane były LV2glb (LabVIEW to global), zwane też Action Engine.
Można je również stosować oczywiście w nowych wersjach, ale do prostego przekazywania danych sugeruje Sh.Variables.

Re: Jak przekazywać zmieniające się dane do SubVI?

: 27 mar 2008 20:35
autor: MarekK
Tzn parametr zmienia się w czasie na skutek czego - jest wypracowany przez inny uruchomiony vi? jakieś wejścia A/C? Proponuję w tym uruchomionym subvi umieścić poniższy następny podprogram: Obrazek z opcją False i stworzyć drugi inny vi który przekazywałby te zmienne i zawierał ten sam podprogram z opcją True teraz tak oby dwa vi muszą być oczywiście uruchomione powyższy podprogram musi mieć odhaczoną opcję Reentrant execution (VI properties/Execution)

Jak przekazywać zmieniające się dane do SubVI?

: 28 mar 2008 09:08
autor: bartus
Mozesz zrobic tak jak proponowali koledzy powyzej - tzn zastowsowac functional globale, ew jezeli sprawa jest mniej skomplikowana to zwykle globale( mniej skomplikowana sprawa - w jednym miejscu zapis do zmiennej i potem tylko odczytywanie z niej).

ew moznaby jeszcze bylo wykorzystac kolejki, moze nawet pokusic sie o jakies zastosowanie referencji? ( tego ostatniego nie jestem pewien, az sprawdze sam ;) )

Pozdrawiam

bartus