Lab 05 id 2241678 Nieznany


1



Programowanie w języku G - Laboratorium 5



Ćwiczenie 5.1 Pierwiastek kwadratowy

Cel:

Zapoznanie z wykorzystaniem struktur wyboru (case structure).



Postępowanie według instrukcji umożliwia budowę programu kontrolującego, czy wprowadzana liczba jest dodatnia i w przypadku spełnienia tego warunku obliczania jej pierwiastka kwadratowego. W przeciwnym razie wyświetlana jest informacja o błędzie.

Panel czołowy ________________________________________________________________________

1. Otwórz nowy projekt programu LabVIEW.

2. Zmodyfikuj okno panelu czołowego wstawiając odpowiednie elementy tak, aby uzyskać rezultat podobny do pokazanego na poniższym rysunku.



3. W tym celu należy wstawić, w obszar okna panelu czołowego, następujące obiekty znajdujące się w palecie Controls:

a) kontrolkę numeryczną Numeric Controls z grupy Controls/Numeric Controls i nadać jej etykietę Liczba;

b) wskaźnik numeryczny Numeric Indicator z grupy Controls/Numeric Indicators i nadać mu etykietkę Pierwiastek kwadratowy.



Schemat blokowy _____________________________________________________________________

1. W oknie schematu blokowego wstaw obiekt struktury wyboru (Case Structure). Obiekt Case Structure znajduje się na palecie Functions w grupie Execution Control.

2. W obszarze struktury wyboru Case Structure uaktywnij okno FALSE i zbuduj schemat blokowy przypominający ten przedstawiony na poniższym rysunku.





Porada: Przełączanie między poszczególnymi oknami obiektu Case Structure (struktury wyboru) odbywa się za pomocą strzałek umieszczonych w górnej części okna. W polu testowym między strzałkami zamieszczona jest nazwa aktualnie otworzonego okna obiektu struktury wyboru.





Programowanie w języku G

strona 1



2



3. W celu dostosowania schematu blokowego do wymagań projektu należy umieścić w nim następujące obiekty znajdujące się w palecie Functions:

a) warunek Greater or Equal to 0? (większe lub równe 0). Obiekt ten znajduje się w grupie Arithmetic & Comparison /Express Comparison. Funkcja ta daje na wyjściu stan 1 (TRUE), jeżeli liczba na wejściu jest większa lub równa 0;

b) wewnątrz okna struktury wyboru (dla false) stałą liczbową i nadać jej wartość -99 999,0. Ponadto korzystając z menu kontekstowego uaktywnić okno właściwości Properties stałej liczbowej i na karcie Format and Precision zadeklarować Digits of precision na wartość 2 i wybrać opcję postaci wyświetlania liczby na zmiennoprzecinkową (Floating point) Dokonane zmiany zatwierdzić przyciskiem OK;

c) wewnątrz okna struktury wyboru (dla false) funkcję One Button Dialog. Funkcja znajduje się w grupie All Functions/Time & Dialog. Funkcja umożliwia wyświetlanie na ekranie monitora komunikatów tekstowych;

d) korzystając z menu kontekstowego obiektu One Button Dialog zadeklaruj komunikat o treści: Błąd!!! Niewłaściwa liczba (Liczba ujemna). W tym celu wykorzystaj funkcję Create (zawartą w menu kontekstowym), wybierając opcję Constant.

4. Wykonaj niezbędne połączenia między poszczególnymi elementami schematu blokowego.

5. W obszarze struktury wyboru Case Structure uaktywnij okno TRUE i zbuduj schemat blokowy zgodny z przedstawionym na poniższym rysunku.



6. Wstaw wewnątrz okna struktury wyboru Case Structure moduł pierwiastkowania Square Root.

Obiekt znajduje się w grupie funkcji Arithmetic & Comparison /Express Numeric.

7. Wykonaj niezbędne brakujące połączenia między elementami.

8. Zapisz stworzony projekt pod nazwą Square Root.vi.





Uruchamianie programu _______________________________________________________________

1. W oknie panelu czołowego i uruchom jednokrotnie program (przycisk Run, CRL+R). Nie używaj, w tym przypadku, do uruchamiania programu przycisku [ Run Continuously], ponieważ w przypadku ustawienia liczby ujemnej zostanie zawieszone działanie.

2. Zmieniaj wartości wyświetlanych liczb i obserwuj zachowanie się programu, szczególnie przy ustawianiu liczb ujemnych.

3. Upewnij się, czy program został zapisany na dysku, a następnie zamknij projekt.





Programowanie w języku G

strona 2





3



Ćwiczenie 5.2 Kontrola temperatury

Cel: Wykorzystywanie

struktur

wyboru.



Postępowanie według podanych instrukcji umożliwia budowę przyrządu wirtualnego wykrywającego i sygnalizującego wystąpienie wartości temperatury w zadeklarowanym zakresie. Jeśli wartość mierzonej temperatury przekroczy wyznaczony limit, zostanie załączona kontrolka w postaci diody LED i wygenerowany sygnał dźwiękowy.

Panel czołowy ________________________________________________________________________

1. Otwórz utworzony uprzednio pliku programu o

nazwie Temperature Running Average.vi

(Laboratorium 03 /Ćwiczenie 3.4 /Średnia bieżąca pomiaru temperatury). Po otwarciu pliku powinny zostać wyświetlone okna panelu czołowego i schematu blokowego zbliżone do przedstawionych poniżej.





2. Zmodyfikuj okno panelu czołowego wstawiając odpowiednie elementy tak, aby uzyskać rezultat podobny do pokazanego na poniższym rysunku.



3. W celu dostosowania panelu należy wykonać następujące czynności:

a) sprawdzić, czy aktywna jest opcja wyświetlania wartości przebiegu w postaci numerycznej. Jeżeli nie, to należy ją uaktywnić. Funkcję tę uruchamia się w menu kontekstowym wykresu uaktywniając opcję Digital Display w menu Visible Items;

b) z palety Controls z grupy Numeric Controls wstawić w okno panelu czołowego kontrolkę numeryczną Numeric Control i nadaj jej nazwę High Limit (lub np. Temperatura graniczna); c) z palety Controls z grupy LED wstawić w okno panelu czołowego wskaźnik w postaci diody świecącej Round LED i nadaj jej etykietkę Warning (lub np. Ostrzeżenie).

4. Po wprowadzeniu zmian do tworzonego projektu zapisz go na dysku komputera pod nazwą Temperature Control.vi.





Programowanie w języku G

strona 3



4



Schemat blokowy _____________________________________________________________________

1. W oknie schematu blokowego dokonaj niezbędnych poprawek tak, by uzyskać efekt podobny do przedstawionego na poniższym rysunku.





2. Dostosuj wielkość okna pętli While, tak by możliwe mogło być wstawienie brakujących elementów.

Następnie do wnętrza obszaru pętli wstaw następujące elementy:

a) obiekt struktury wyboru (Case Structure). Obiekt Case Structure znajduje się na palecie Functions w grupie Execution Control. Uaktywnij w nim okno TRUE.

b) warunek Greater (warunek większości). Obiekt ten znajduje się w grupie Arithmetic

& Comparison/Express Comparison. Funkcja ta daje na wyjściu stan 1 (TRUE), jeżeli liczba na wejściu górnym jest większa od liczby na wejściu dolnym modułu.

3. Do wnętrza okna TRUE obiektu struktury wyboru Case Structure wstaw przyrząd wirtualny Beep.vi (generator dźwięku). Obiekt ten znajduje się w palecie Functions w grupie All Functions i podgrupie Graphics & Sound /Sound.

4. Wykonaj brakujące połączenia między poszczególnymi elementami.

5. Zapisz w bieżącym pliku dokonane zmiany. Plik będzie potrzebny w kolejnych zajęciach.



Uruchamianie programu _______________________________________________________________

1. Uaktywnij okno panelu czołowego. Przed uruchomieniem programu ustaw na kontrolce numerycznej High Limit wartość 80.

2. Obserwuj zmiany zachodzące na panelu czołowym (diodzie LED i głośniku PC) po przekroczeniu wartości progowej ustawionej na kontrolce numerycznej.

3. Sprawdź działanie programu dla innych wartości progowych temperatury.

4. Upewnij się, czy został zapisany program na dysku, a następnie zamknij plik projektu.



Programowanie w języku G

strona 4





5



Ćwiczenie 5.3 Czas wyszukiwania (Time to Match)

Cel:

Zapoznanie z korzystaniem ze struktur sekwencyjnych.



Postępowanie według podanych instrukcji umożliwia budowę przyrządu wirtualnego, który będzie obliczał czas, jaki minął od chwili uruchomienia programu do momentu wygenerowania przez generator liczb losowych wartości zadanej przez użytkownika.

Panel czołowy ________________________________________________________________________

1. Otwórz plik programu Auto Match.vi (plik został utworzony wcześniej (Laboratorium 3 /Ćwiczenie 3.1 /Znajdź liczbę). Powinny zostać wyświetlone okna panelu czołowego i schematu blokowego analogiczne do przedstawionych poniżej.





2. Zmodyfikuj okno panelu czołowego wstawiając wskaźnik numeryczny Numeric Indicator (paleta Controls grupa Numeric Indicators). Wskaźnikowi nadaj etykietkę Time to Match (Czas wyszukiwania). Efekt wprowadzonych zmian powinien być podobny do pokazanego na poniższym rysunku.





3. Zmień typ danych - kontrolki Number to Match i wskaźników Current Number i # of iterations na I32, wskaźnika Time to Match na DBL (Double Precision). Zmian tych można dokonać w menu kontekstowym Representation wybierając ikonę zgodną z pożądanym typ danych.

4. Za pomocą menu kontekstowego wskaźnika Time to Match uaktywnij okno Format and Precison w oknie właściwości Properties obiektu. W oknie tym wybierz opcję Digits of precision i ustaw ilość wyświetlanych miejsc po przecinku na 3.

5. Po wprowadzeniu zmian do tworzonego projektu zapisz go na dysku pod nazwą Time to Match.vi.





Programowanie w języku G

strona 5



6



Schemat blokowy _____________________________________________________________________

1. W oknie schematu blokowego dokonaj niezbędnych poprawek tak, by uzyskać efekt podobny do przedstawionego na poniższym rysunku.



2. Wstawić wokół istniejącego schematu blokowego strukturę sekwencyjną (stosową) Stacked Seqence Structure. Struktura Stacked Sequence znajduje się w palecie Functions w grupie All Functions

/Structures. W celu dodania kolejnej ramki do struktury sekwencyjnej należy użyć polecenia Add

Frame After znajdującego się w menu kontekstowym obiektu.

3. Poza polem struktury sekwencyjnej należy umieścić obiekt licznika czasu Tick Count (ms ). Obiekt Tick Count (ms) znajduje się w palecie Functions w grupie All Functions/Time & Dialog.

4. Wykonaj brakujące połączenia w schemacie blokowym dla ramki 0. Następnie za pomocą strzałek umieszczonych w górnej części ramki struktury sekwencyjnej przejdź do ramki 1.

5. W ramce 1 umieść znajdujący się w oknie schematu blokowego wskaźnik Time to Match.

6. Następnie wewnątrz ramki 1 struktury sekwencyjnej umieść następujące elementy: a) obiekt licznika czasu Tick Count (ms) (paleta Functions grupa All Functions/Time & Dialog); b) moduł odejmowania -

Subtract. Moduł znajduje się w palecie Functions w

grupie

Arithmetic & Comparison /Express Numeric;

c) moduł dzielenia - Divide (paleta Functions grupa Arithmetic & Comparison /Express Numeric). Do dolnego wejścia modułu dzielenia dołącz stałą numeryczną o wartości 1000.

7. Wykonaj brakujące połączenia w schemacie blokowym dla ramki 1.

8. Wykonane zmiany zapisz w bieżącym pliku.

Uruchamianie programu _______________________________________________________________

1. Uaktywnij okno panelu czołowego i kilkukrotnie uruchom program deklarując kilka wartości poszukiwanych liczb.

2. W oknie wskaźnika Time to Match wyświetlana jest wielkość określająca czas, jaki minął od momentu uruchomienia programu do chwili wygenerowania przez program szukanej liczby.

3. Zamknij plik stworzonego programu.



Programowanie w języku G

strona 6





7



Ćwiczenie 5.4 Węzeł formuły

Cel:

Praktyczne wykorzystywanie obiektów formuł matematycznych.



Postępowanie według podanych instrukcji umożliwia budowę przyrządu wirtualnego wykorzystującego węzły formuły do wykonywania złożonych działań matematycznych i wyświetlania ich na wykresie.

Panel czołowy ________________________________________________________________________

1. Otwórz nowy projekt.

2. W oknie panelu czołowego umieść wykres Waveform Graph. W wykorzystując menu kontekstowe usuń legendy osi (menu kontekstowe Visible Scale Label oraz X Scale i Y Scale).

3. Zmień zakres liczb wyświetlany na osi Y od -2,0 do 10,0 i skoku wartości (interwał) 2,0. Ustaw wyświetlanie liczb z dokładnością do 1 miejsca po przecinku. W przypadku osi X ustaw zakres od 0

do 200 przy skoku wartości równym 20. Po wykonaniu tych zmian panel czołowy powinien wyglądać podobnie do przedstawionego na poniższym rysunku.



Porada: Modyfikacji wyglądu wykresu wykonuje się wpisując żądane wielkości w określone miejsca na osiach wykresu (początek osi – minimum, koniec osi – maksimum zakresu, druga liczba – interwał).

Postępowanie jest podobne do wykonywanego w ramach ćwiczenia Ćwiczenie 3.4 - Średnia bieżąca pomiaru temperatury.



Schemat blokowy _____________________________________________________________________

1. Zbuduj schemat blokowy przedstawiony na poniższym rysunku.





2. Przekształcając schemat blokowy wstaw z poszczególnych grup palety Functions następujące obiekty:

a) pętlę For (grupa All Functions /Structure);



Programowanie w języku G

strona 7

8



b) węzeł Formula Node (grupa All Functions /Structure);

c) moduł dzielenia - Divide (grupa Arithmetic & Comparison /Express Numeric); d) stałą liczbową - Numeric Constant (grupa Arithmetic & Comparison /Express Numeric).

3. Wstaw, wykorzystując z menu kontekstowego pętli For polecenie Create Constant, stałą liczbową o wartości 200 określającą ilość iteracji (kroków) pętli.

4. Wykorzystując polecenia Add Input (dodaj wejście) i Add Output (dodaj wyjście) menu kontekstowego węzła Formula Node utwórz jedno wejście do formuły nadając mu nazwę x i dwa wyjścia o nazwach a i y.

5. Do środka obszaru formuły wpisz następujące funkcje matematyczne, której wartość będzie wyznaczała formuła Formula Node:

a = tanh(x) + cos(x)

y = a**3 + a



Wskazówka: W formułach matematycznych stosowanych w środowisku LabVIEW symbol ** oznacza potęgowanie.



6. Wykonaj niezbędne połączenia między elementami schematu blokowego.

7. Zapisz program pod nazwą Formula Node Exercise.vi.



Uruchomienie programu _______________________________________________________________

1. Uruchom programu w oknie panelu czołowego.

2. Zaobserwuj wygenerowany na wykres.

3. Uruchom kilkukrotnie program dokonując uprzednio modyfikacji obliczanych funkcji oraz liczby iteracji pętli.

4. Zamknij plik bieżącego projektu przyrządu wirtualnego.



Ćwiczenie 5.5 Obwód szeregowy RLC

Cel:

Praktyczne wykorzystywanie obiektów formuł matematycznych.



Postępowanie według podanych instrukcji umożliwia budowę przyrządu wirtualnego wykorzystującego węzeł

formuły do symulowania działania prostego, idealnego obwodu RLC. Eksperymentator ma możliwość zadawania wartości i częstotliwości napięcia zasilającego oraz wartości rezystancji, indukcyjności i pojemności, a w efekcie zostaje obliczona wartość natężenia prądu w obwodzie oraz wartości napięć na poszczególnych elementach obwodu.

Panel czołowy ________________________________________________________________________

1. Otwórz nowy projekt i zbuduj panel czołowy o wyglądzie zbliżonym do przedstawionego na rysunku.

2. Panel czołowy zawiera następujące obiekty:

a) cztery wskaźniki (wskazówkowe) (Natężenie prądu I, Napięcie UR, Napięcie UC, Napięcie UL) z wyświetlonymi dodatkowo wskaźnikami numerycznymi;

b) trzy kontrolki numeryczne R, L, C do deklarowania wartości elementów układu; c) dwie kontrolki numeryczne w postaci gałek (Napięcie, Częstotliwość) do deklarowania parametrów napięcia zasilającego;



Programowanie w języku G

strona 8



9



d) przycisk logiczny Stop (Koniec symulacji) towarzyszący pętli While, który służy do kończenia pracy programu;

e) elementy graficzne: tło pochodzące z pliku RLC.jpg (lokalizację poda prowadzący zajęcia) oraz tło przyrządu z palety LabVIEW.

3. Dokonać formatowania elementów kontrolek i wskaźników (zakres min/max, skok, liczba cyfr znaczących) śna wyczucie” tj. np. dla gałki zadawania wartości napięcia – minimum 0, maksimum

- 300, skok – 1, skala – zmiennoprzecinkowa, precyzja – 0 cyfr).





Schemat blokowy _____________________________________________________________________

1. Utwórz schemat blokowy, który będzie obliczał pożądane wartości napięć i prądów występujących w idealnym obwodzie RLC. Informacje pomocne do rozwiązania tego problemu są następujące: Wartości dane (zadawane przez eksperymentatora):

U – wartość napięcia zasilającego w V (woltach);

f – częstotliwość napięcia zasilającego w Hz (hercach);

R – rezystancja rezystora umieszczonego w obwodzie w "Ś (omach);

L – indukcyjność cewki w H (henrach);

C – pojemność kondensatora w F (faradach).

Wartości pośrednie i poszukiwane:

XL – reaktancja indukcyjna w "Ś (omach), X = 2 fL

π

L

;

XC – reaktancja pojemnościowa w "Ś (omach), X = 1/(2 fC

π )

C

;

Z – impedancja obwodu w "Ś (omach) ,

2

2

Z = R + ( X ł

)

L

X C

;

I - wartość natężenia prądu w obwodzie w A (amperach), I = U / Z ; UR – wartość napięcia na rezystorze R w V (woltach), U = I R

R

;

UL – wartość napięcia na indukcyjności L w V (woltach), U =

L

I X L ;

UC – wartość napięcia na pojemności C w V (woltach), U =

C

I X C .



Programowanie w języku G

strona 9





10



2. Utworzony schemat blokowy może być zbliżony do przedstawionego na kolejnym rysunku.



3. Obiekt pętli While został wprowadzony dla zachowania ciągłości funkcjonowania programu.

Zadaniem modułu oczekiwania (Wait (ms)) jest zapobieganie monopolizacji zasobów komputera przez nieustannie wykonywaną pętlę.

4. Zapisz plik programu pod nazwą Rezonans.vi.



Uruchomienie programu _______________________________________________________________

1. Uruchom programu w oknie panelu czołowego.

2. Odpowiedz na pytanie, jaka będzie wartość natężenia prądu ( I) i napięcia na cewce ( UL) w przypadku następujących parametrów występujących w obwodzie:

U = 230 V (wartość napięcia zasilającego);

f = 50 Hz (częstotliwość napięcia zasilającego);

R = 36,8 "Ś (rezystancja rezystora);

L = 1,1 H (indukcyjność cewki);

C = 50 µF (0,000050 F) (pojemność kondensatora).

3. Zamknij plik bieżącego programu.



Opracowane na podstawie:

LabVIEW 7 Express Basics Interactive Training CD. National Instruments 2003.

LabVIEW Basics I. Introduction Course Manual. National Instruments 2002.



Programowanie w języku G

strona 10







Wyszukiwarka

Podobne podstrony:
Lab 01 id 2241675 Nieznany
lab id 2241674 Nieznany
Lab 08 id 2241680 Nieznany
lab 03 id 2241693 Nieznany
CISAX01GBD id 2064757 Nieznany
SGH 2200 id 2230801 Nieznany
111003105109 stress id 2048457 Nieznany
CIXS201GBD id 2064760 Nieznany
TOCEL96GBB id 2491297 Nieznany
1078 2 FEA209544 128UEN A id 22 Nieznany
McRib(r) Sandwich id 2201097 Nieznany
BD V600 L3 C A3 V1[1] 1 id 2157 Nieznany
DOC0534 id 2032985 Nieznany
8 17 id 2009842 Nieznany
REKAN02GBBT id 2491218 Nieznany
cialo albatros id 2035175 Nieznany
[17] FR540NT010 id 2085454 Nieznany

więcej podobnych podstron