Laboratorium wirtualne 1/Moduł 3 - ćwiczenie 3: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 368: | Linia 368: | ||
{| border="0" cellpadding="5" width="100%" | {| border="0" cellpadding="5" width="100%" | ||
|valign="top" width="500px"|[[Grafika:LW1_M3_Slajd25.png]] | |valign="top" width="500px"|[[Grafika:LW1_M3_Slajd25.png]] | ||
|valign="top"|''opis | |valign="top"|Włączanie i wyłączanie przyrządu można zrealizować poprzez przełącznik dwupozycyjny typu '''Binary Switch'''. Wszystkie elementy panelu przyrządu, które użytkownik może nastawiać, przełączać, wybierać lub naciskać należy wcześniej zmodyfikować (nie dotyczy to włącznika). W oknach właściwości należy kolejno uaktywniać opcję '''Initially Dimmed'''. Spowoduje to, iż po uruchomieniu aplikacji wszystkie elementy z zaznaczonym wyżej parametrem nie będą aktywne (slajd 25 po lewej stronie). Aktywacji tych elementów można dokonać w ramach funkcji '''Callback''' przyporządkowanej do przełącznika dwupozycyjnego. | ||
Operacji tej można dokonać przy użyciu funkcji '''SetCtrlAttribute''', która służy do ustawiania właściwości elementów pulpitu użytkownika. Drugi jej argument powinien zawierać identyfikator elementu podlegającego zmianie. W trzecim właściwość, która ma być zmieniona. W czwartym zaś wartość tej właściwości. Zatem po rozwinięciu drzewa własności w polu trzeciego parametru w gałęzi '''Control Settings...''' odnaleźć i wybrać należy pozycję '''Dimmed'''. Korzystając z okna podpowiedzi dla parametru czwartego ustawić wartość aktywującą przycisk. (Należy pamiętać o wstawieniu funkcji do kodu) | |||
Pełny opis funkcji '''SetCtrlAttribute''' dostępny jest poprzez pomoc środowiska LabWindows/CVI. W tym celu należy wybrać menu '''Help -> Contents''' i po otworzeniu okna pomocy ze '''''Spisu treści''''' wybrać '''Library Reference -> User Interface Library -> Functions -> Alphabetical List of Functions -> SetCtrlAttribute.''' | |||
Wywołanie funkcji musi zostać powtórzone dla każdego składnika ekranu przyrządu, który miał ustawiony atrybut '''Initially Dimmed'''. | |||
Wartość początkową przełącznika powinno być 0 (Off). Po włączeniu (wartość 1) należy wywoływać dla każdego żądanego elementu funkcję '''SetCtrlAttribute'''. Funkcja '''Callback''' przyporządkowana dla „włącznika zasilania” może mieć postać instrukcji waunkowej '''if .... else '''. Schematyczny zapis tej instrukcji znajduje się poniżej: | |||
'''if( stanPrzełącznika == 1)''' | |||
{ | |||
:'''SetCtrlAttribute''' | |||
:'''................''' | |||
} | |||
else | |||
{ | |||
:'''QuitUserInterface(0);''' | |||
:'''//koniec programu (w tym przypadku zbędny jest przycisk''' | |||
:'''//KONIEC i przyporządkowana mu funkcja CALLBACK''' | |||
} | |||
|} | |} | ||
Linia 374: | Linia 395: | ||
{| border="0" cellpadding="5" width="100%" | {| border="0" cellpadding="5" width="100%" | ||
|valign="top" width="500px"|[[Grafika:LW1_M3_Slajd26.png]] | |valign="top" width="500px"|[[Grafika:LW1_M3_Slajd26.png]][[Grafika:LW1_M3_Slajd27.png]] | ||
|valign="top"|''opis | |valign="top"|Identycznie do sposobu utworzenia przycisku '''Koniec''' utworzyć kolejny przycisk '''Zapis''', którego naciśnięcie spowoduje zapis danych (wektora z wygenerowanymi próbkami przebiegu) do pliku. Pomocna będzie funkcja '''ArrayToFile''' (w menu Library: Formatting and I/O Library -> File I/O). Pełny opis funkcji '''SetCtrlAttribute''' dostępny jest poprzez pomoc środowiska LabWindows/CVI. W tym celu należy wybrać menu '''Help -> Contents''' i po otworzeniu okna pomocy ze '''''Spisu treści''''' wybrać '''Library Reference -> Formatting and I/O -> Alphabetical List of Functions -> ArrayToFile.''' | ||
Dla sprawdzenia poprawności zapisu można utworzyć jeszcze jeden przycisk, tym razem o nazwie '''Odczyt''' (ustawienia takie jak dla przycisku '''Zapis''') uaktywniany dopiero po zapisie danych. W funkcji callback stowarzyszonej z tym przyciskiem należy odczytać dane z pliku korzystając z '''FileToArray''' (w menu Library: Formatting and I/O Library -> File I/O). Wyświetlenie danych na ekranie odbywa się w omówiony już sposób. Rozważyć warto stworzenie nowego programu czytającego zapisane do pliku sygnały. | |||
Pełny opis funkcji '''SetCtrlAttribute''' dostępny jest poprzez pomoc środowiska LabWindows/CVI. W tym celu należy wybrać menu '''Help -> Contents''' i po otworzeniu okna pomocy ze '''''Spisu treści''''' wybrać '''Library Reference -> Formatting and I/O -> Alphabetical List of Functions -> FileToArray.''' Po odczytaniu danych z pliku należy je wyświetlić w dodatkowym ekranie oscyloskopowym. | |||
|} | |} | ||
Linia 388: | Linia 408: | ||
{| border="0" cellpadding="5" width="100%" | {| border="0" cellpadding="5" width="100%" | ||
|valign="top" width="500px"|[[Grafika:LW1_M3_Slajd28.png]] | |valign="top" width="500px"|[[Grafika:LW1_M3_Slajd28.png]] | ||
|valign="top"| | |valign="top"|Środowisko LabWidows/CVI pozwala w bardzo szerokim zakresie rozbudować funkcjonalność przedstawionego przyrządu wirtualnego. Istnieje możliwość generacji złożonych sygnałów odkształconych a także sygnałów definiowanych przez użytkownika. Oprócz podstawowej analizy czasowej i częstotliwościowej istnieje możliwość cyfrowego przetwarzania sygnałów w oparciu o analizę czasowo-częstotliwościową np.: STFT czy analizę falkową. Dysponując odpowiednim sprzętem (karta DAQ lub interfejs GPIB) można dokonać akwizycji sygnałów rzeczywistych. | ||
|} | |} | ||
<hr width="100%"> | <hr width="100%"> |
Wersja z 23:25, 29 sie 2006
wersja beta
LABORATORIUM WIRTUALNE 1
Ćwiczenie 3 - Projekt wirtualnego oscyloskopu w środowisku LabWindows/CVI
![]() |
|
![]() |
Stworzyć nowy projekt i wybrać File -> New -> *.uir. |
![]() |
Po uruchomieniu program będzie wyglądał podobnie jak na ilustracji poniżej. |