zmiana wartości zmiennej WY z block diagramu

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
siadajpan
Posty: 6
Rejestracja: 19 cze 2012 07:45
Wersja środowiska: LabVIEW 2011

zmiana wartości zmiennej WY z block diagramu

Post autor: siadajpan »

Hej

Jestem bardzo niedawnym uzytkownikiem labview i mam pewną rzecz do zrobienia. Nie za bardzo wiem jak za to się zabrać, więc proszę o wskazówki/rady :)
Chodzi o to, żeby po zaistnieniu pewnego warunku, zmienna (którą mogę ustawić ręcznie) z wartościami enum/liczbowymi, ew. przycisk zmieniła się.

Przykład:
Aby móc przesłać pompie sygnał, muszę najpiejw wcisnąć przycisk umożliwiający przepływ w rurze, następnie przestawić wartość enum z "Manual" na "Automatic" i potem dopiero do pompy trafia sygnał, który będzie miał wplyw na przepływ. Chciałbym aby po wpisaniu wartości, rzeczy te robiły sie automatycznie. Jednocześnie chcę miec możliwość ręcznej zmiany wielkości enumowej i przycisku.

Czy jest możliwość zrobienia tego w miarę prosty sposób? <bez pisania kodu>
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

zmiana wartości zmiennej WY z block diagramu

Post autor: Garreth »

Co masz na myśli mówiąc "bez pisania kodu"? :)

No to co, robisz pętlę while w której masz event structure. W ustawieniach event structure definiujesz akcje (np. Zmiana wartości przycisku). Wtedy po wykonaniu tej akcji, wykonuje się to co jest w evencie, czyli na przykład wpisanie wartości do jakiejś tam zmiennej.
siadajpan
Posty: 6
Rejestracja: 19 cze 2012 07:45
Wersja środowiska: LabVIEW 2011

zmiana wartości zmiennej WY z block diagramu

Post autor: siadajpan »

No właśnie cały problem dotyczy tego jak zmienić tą zmienną. Bo głownie chodzi o to, żeby zmieniła się wartość wyświetlana w polu do edycji tej zmiennej...
Coś jakbyś miał dwa miejsca w których możesz zmienić jedną zmienną. Jeśli zmienisz w jednym polu, to automatycznie zmienia się w drugim. To samo w drugim polu. Jeśli tam zmienisz, automatycznie zmienia się w pierwszym.
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

zmiana wartości zmiennej WY z block diagramu

Post autor: Garreth »

Zmienna lokalna? Prawy klawisz na indykator-> create local variable. Taka zmienna ma też opcje w menu kontekstowym aby służyła do zapisu albo odczytu obecnej wartości.
Drugi sposób to przez użycie property node indykatora (Value z tego co pamiętam).
Trzecia, to wykorzystanie kolejek czy podobnych sposobów synchronizacji pętli (polecenie zmiany wartości wysyłane byłoby w kolejce, przykładowo).

Tylko taka kwestia optymalizacji - za każdym wywołaniem takiej zmiennej, LV musi zarezerwować na nią pamięć. Nie jest to jakiś wielki problem, zwłaszcza jeśli aplikacja będzie na PC, ale warto sobie zdawać z tego sprawę.
ODPOWIEDZ