LabView - porady Drukuj
Wpisany przez Krzysztof Dobek   
środa, 22 stycznia 2014 15:53

Artykuł ten podaje kilka wskazówek dla początkujących użytkowników LabView. Jego zawartość będzie poszerzana wraz z upływem czasu.

 

1. Tworząc główny vi swego programu (zapewne jedyny) zawsze zaczynaj od utworzenia pętli while i przycisku Stop przerywającego jej działanie.

 

2. Staraj się używać struktury zdarzeń (Event Structure). Znacząco zmniejszy ona obciążenie procesora i uporzadkuje kod. Od razu utwórz "klatkę" obsługującą zdarzenie zmiany wartości przycisku Stop. Ustal również czas oczekiwania na zdarzenie (wartość domyślna oznacza oczekiwanie, aż do zajścia dowolnego zdarzenia obsługiwanego przez strukturę).

3. Nie używaj zmiennych lokalnych (a tymbardziej globalnych) jeśli nie musisz. Ponieważ w LabView programista najczęściej nie wie w jakiej kolejności jest wykonywany kod (a zwłaszcza zwalniane są zasoby) używanie zmiennych lokalnych może prowadzić do poważnych błędów. Staraj się używać rejestry przesuwne (Shift register).

Pamiętaj by inicjować wartość rejestru i przede wszystkim w każdej klatce struktury zdarzeń nadaj wartość wyjściową łączu rejestru. W powyższym przykładzie klatka wywoływana po upłynięciu czasu oczekiwania na zdarzenie nie nadaje żadnej ustalonej przez użytkownika wartości temu łączu, co skutkuje nadaniem mu wartości 0. Taką też wartość pokaże powyższy program, pomimo, że w klatce zdarzenia przycisku Stop wartość rejestru przesuwnego jest przekazywana na wylot klatki.

4. Jeżeli chcesz z klatki obsługującej zdarzenie związane ze zmianą wartości jednej kontrolki wywołać zdarzenie zmiany wartości innej kontrolki użyj węzła właściwości (Propery Node) o nazwie Value (Signaling) kontrolki, której zmianę wartości chcesz zainicjować.

5. Pamiętaj, że kod wykonywany w petli MUSI zostać umieszczony w jej wnętrzu. Np. w poniższym przykładzie pierwsza pętla symuluje ruch punktu po krzywej sinusoidalnej z krokiem czasowym 25 ms, a druga wykreśli krzywą sinusoidalną.

Poprawiony: poniedziałek, 13 listopada 2017 08:36