Strona 2 z 2

Re: Rekurencja w LabVIEW

: 09 sty 2008 22:22
autor: jogurt_owocowy
Możliwe że ja tego zrobić nie umiem ale jeśli faktycznie istnieje takie ograniczenie to LV ma ode mnie duży minus.
Ty zaś powinieneś dostać duży minus za niepodanie wersji LV której używasz ;)
A tak na serio: umiesz to zrobić, a to czy jesteś w stanie, to już zależy od używanej wersji. W 8.5 (tu na pewno, a z tego co miałem się czas zorientować, także w 8.2 i 8.0) wystarczy zaznaczyć stosowną opcję: File -> VI Properties -> Window Appearance -> Customize -> Show front panel when called
W wersji 7.1 i wcześniejszych NIE MOŻNA tego zrobić (w prosty sposób).
Pozdrawiam ]

Rekurencja w LabVIEW

: 10 sty 2008 18:18
autor: Pierre
Szanowny Panie Moderatorze :)
Wersja LabVIEW jakiej używam jest napisana w profilu. Mój błąd - nie napisałem w poście, kajam się i dziękuję za naprowadzenie na jedyną, słuszną ścieżkę ;)
A co do Front Panelu to faktycznie mimo długiego czasu przesiedzianego nad tym VI'sem nie wpadłem na to, że mnogość opcji w zakładce Customize może być tak przeogromna. Prościej jest to zrobione w SubVI Node Setup gdzie od razu widać.
Niemniej odwołuję wszystko co powiedziałem. LV obsługuje rekurencję i wszystko działa jak sobie programista zażyczy. I teraz nawet wiem jak! :]
Dziękuję i pozdrawiam!

Re: Rekurencja w LabVIEW

: 10 sty 2008 19:01
autor: jogurt_owocowy
Szanowny Pierre...
Myślę, że możemy sobie tu pisać po imieniu - nie potrzeba tych "panów".
Wersja LabVIEW jakiej używam jest napisana w profilu.
Ja po kliknięciu w Twój profil widzę tyle:
[img]http://labview.pl/uploads/veir/profil.gif[/img]
Dlaczego - nie wiem. Ktoś wie?
Ale nawet poza tym, czy jeśli kiedyś zmienisz wersję LV na 10, to czy będziesz pamiętać o zmianie wpisu w swoim profilu? A co jeśli używasz kilku wersji (zresztą w profilu da się ustawić tylko jedną)? Przecież konkretnego projektu najpewniej nie robisz we wszystkich naraz.

Re: Rekurencja w LabVIEW

: 10 sty 2008 19:15
autor: bogdani
Witam

To ja włączę się z małym :offtopic:

Ja widzę wersje LV w profilu wszystkich i myślałem że każdy to widzi.

Ot niespodzianka. Trzeba ten problem rozwiązać.

bogdani

Re: Rekurencja w LabVIEW

: 10 sty 2008 19:39
autor: jogurt_owocowy
Czyżbyśmy znaleźli buga na lv.pl?

W niczyim profilu nie widzę wersji LV poza swoim. Jeśli to coś pomoże, to używam Firefoxa 2.0.0.11, a w IE 6.0.2900.2180 jest tak samo.

Walcz bogdani! :)

Ale mimo wszystko byłbym i tak za związaniem wersji LV nie z profilem użytkownika, a z konkretnym postem. Tak jest sensowniej, tym bardziej, że w profilu da się ustawić tylko jedną wersję, więc co jeśli ktoś używa kilku?

Rekurencja w LabVIEW

: 10 sty 2008 22:46
autor: Pierre
@jogurt_owocowy

Faktycznie w profilach innych użytkowników nie widać tej informacji. Ale nie tylko ja byłem w błędzie :)
Co prawda mój problem już nie jest aktualny ale żeby stało się zadość dopiszę że chodziło o wersję LV <b>8.2</b>

Re: Rekurencja w LabVIEW

: 11 sty 2008 09:28
autor: bogdani
Panowie koniec
:offtopic:
bo zaraz podzielę temat...
Pierre możesz się podzielić z innymi kolegami swoim rozwiązaniem i przyczynić się do niezadawania tych samych pytań przez zamieszczenie rozwiązania.
bogdani

Re: Rekurencja w LabVIEW

: 12 sty 2008 12:30
autor: Pierre
OK
Zatem podsumowując: W LV 8.2 rekurencyjne wywoływanie VI należy zacząć od ustawienia opcji File > VI Properties > Execution > Reentrant execution oraz: File > VI Properties > Window Appearance > Customize > Show front panel when called VI należy wywoływać za pomocą Call By Reference Node, do którego podłączamy Open VI Reference ze stałą 8 na wejściu opcji oraz ścieżką dostępu do VI. Następnie klikamy na terminal type specifier VI refnum i wybieramy create > constant. Klikamy na utworzony element i wybieramy nasz VI Select VI Server Class > Browse. Oczywiście na koniec zamykamy referencję Close VI Reference.
I w zasadzie to tyle :) Pozdrawiam! Pierre

Re: Rekurencja w LabVIEW

: 13 sty 2008 09:04
autor: maszup
ja bym to zrobil iteracyjnie w petli while, zawsze na poczatku otwieral ten sam VI razem z front panelem, nastepnie po wyjsciu wyniki zapisywal do shift register i tak w kolko.

Re: Rekurencja w LabVIEW

: 13 sty 2008 10:21
autor: Pierre
@fonzo
Oczywiście że można tak zrobić ale z czystej ciekawości chciałem zastosować rekurencyjne wywoływanie. Zresztą już w tym wątku były przedstawiane dowody że każdy program można zapisać zarówno iteracyjnie jak i rekurencyjnie wątek (PMaj - jogurt_owocowy). Takie rzeczy zwyczajnie warto wiedzieć ;)