dr inż. Artur Zieliński Katedra Elektrochemii, Korozji i Inżynierii Materiałowej Wydział Chemiczny PG pokój 311

Wielkość: px
Rozpocząć pokaz od strony:

Download "dr inż. Artur Zieliński Katedra Elektrochemii, Korozji i Inżynierii Materiałowej Wydział Chemiczny PG pokój 311"

Transkrypt

1 dr inż. Artur Zieliński Katedra Elektrochemii, Korozji i Inżynierii Materiałowej Wydział Chemiczny PG pokój 311 Politechnika Gdaoska, 2011 r. Publikacja współfinansowana ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

2 Warsztat Środowiskiem naturalnym sygnałów cyfrowych jest pamięć komputera. Z tego względu do ich analizy i obróbki podczas ćwiczeń laboratoryjnych wykorzystany będzie jeden z pakietów programistycznych. Wybór padł na środowisko LabVIEW. Kilka zagadnień ułatwiających poruszanie się w nim przedstawionych zostanie w bieżącym wykładzie.

3 LabVIEW Alan Turing LabVIEW to skrót od Laboratory Virtual Instruments Engineering Workbench. Jest to środowisko programowania dla wielu platform umożliwiające między innymi obróbkę rejestrację i generowanie sygnałów. Wykorzystywany jest w nim specyficzny język programowania G, oparty na graficznej realizacji algorytmów i zaliczany do wizualnych języków programowania. Dokładną analizę języka G z punktu widzenia teorii programowania znaleźć można w dokumencie: wykład 2 3

4 Alternatywa środowisko dla Linuksa Zaletą LabVIEW jest wygodna obsługa urządzeń pomiarowych. Pewnym ograniczeniem dostępu do tego oprogramowania jest jego cena. Jako alternatywne rozwiązanie umożliwiające programową obsługę kart pomiarowych przytoczyć można darmowy projekt Comedi pracujący pod kontrolą Linuksa. wykład 2 4

5 Kontrola karty pomiarowej Razem ze środowiskiem LabVIEW możliwe jest zainstalowanie programu Measurement and Automation Explorer. Umożliwia on między innymi przeprowadzenie diagnostyki karty pomiarowej. wykład 2 5

6 Wirtualny instrument Panel czołowy Schemat blokowy Filozofia programowania w LabVIEW bazuje na konstruowaniu wirtualnych urządzeń (Virtual Instruments, czyli VI). Instrument zawiera panel frontowy, umożliwiający interakcję z użytkownikiem, i schemat blokowy, zawierający diagram przepływu danych realizujący żądany algorytm. wykład 2 6

7 Elementy panelu Kontrolka: umożliwia ustawianie wartości zmiennej Ta odpowiada zmiennej logicznej Wyświetlacz: umożliwia odczytanie wartości zmiennej w programie. (typ logiczny). Etykietki zwiększają czytelność interfejsu. wykład 2 7

8 Elementy schematu Procedura reprezentowana jest przez ikonę z końcówkami połączeniowymi. Struktura programistyczna. Instrukcja wyboru. Zmienne rzeczywiste. Zmienna logiczna. wykład 2 8

9 Budowanie i uruchamianie Elementy sterujące uruchamianiem i zatrzymywaniem wirtualnego urządzenia. uruchomienie uruchomienie z zapętleniem zatrzymanie pauza Kliknięcie na dowolnym wolnym miejscu panelu bądź schematu prawym klawiszem myszy, powoduje wyświetlenie palety zawierającej elementy umieszczane na odpowiednim bloku urządzenia wirtualnego. wykład 2 9

10 Typy danych Kontrolki i wyświetlacze posiadają swoje odpowiedniki w postaci zmiennych widocznych na schemacie blokowym. Kolor ikony pozwala rozróżnić typ zmiennej. Pomarańczowy oznacza zmienne rzeczywiste (zmiennoprzecinkowe). Kolor niebieski odpowiada zmiennym całkowitym wykorzystywanym między innymi do sterowania wykonaniem pętli. wykład 2 10

11 Zmienne logiczne Zmienne logiczne przyjmują dwa stany: prawda lub fałsz. Kształt ramki wokół ikony informuje czy dana zmienna służy do zapisu (jest zmieniana przez użytkownika), czy do odczytu (informuje użytkownika o rezultacie działania programu). Zmienne typu logicznego wykorzystywane są między innymi do sterowania instrukcją wyboru. wykład 2 11

12 Kolor różowy Ten kolor używany jest przez typy zmiennych o zupełnie różnym zastosowaniu. Są to zmienne tekstowe oraz struktury (klastery). Rozróżnienia dokonać można po fakturze wirtualnego przewodu łączącego zmienne każdego z typów. Jednym z zastosowań zmiennych napisowych jest deklaracja formatu (taka jak w języku C) zapisywania zmiennych numerycznych w pliku. Struktura (klaster) stanowi konglomerat zmiennych różnych typów. W powyższym przykładzie wykorzystana jest do wyskalowania osi odciętych na wykresie (Waveform Graph). Patrząc od góry pierwsza końcówka określa początek osi, druga krok, a trzecia dane do narysowania. wykład 2 12

13 Konflikt danych Próba połączenia na schemacie blokowym zmiennych o niezgodnych typach prowadzi do błędu składniowego. Przycisk służący do uruchamiana wirtualnego urządzeni zmienia wygląd (przerwana czarna strzałka). Kliknięcie przycisku powoduje wyświetlenie okna informującego o rodzaju i położeniu błędu. Niewłaściwie wykonane połączenie ma postać przerywanej linii. Użyteczny jest tu skrót klawiszowy CTRL-B, usuwający globalnie błędne połączenia. wykład 2 13

14 Przykładowa aplikacja Wykres Zapis do pliku Przedstawiony schemat odpowiada wirtualnemu urządzeniu służącemu do rejestracji danych z karty pomiarowej i zapisania ich w pliku tekstowym. W programie wykorzystano stosunkowo nowy element środowiska jakim jest Express VI (duża błękitna ikona). Służy on do obsługi procesu rejestracji danych. Rezultat pomiaru przesyłany jest do wykresu oraz pliku. wykład 2 14

15 Odpluskwianie Ten żargonowy zwrot oznacza tropienie i usuwanie błędów w tworzonym programie. Jednym z użytecznych narzędzi, służących do realizacji tego zadania, jest próbnik pozwalający na podgląd wartości aktualnie przesyłanych wybranym przewodem w trakcie pracy wirtualnego urządzenia. wykład 2 15

16 Wykorzystanie próbnika Ustawienie próbnika na przewodzie oznaczonym pozwala stwierdzić, że przesyłane nim dane mają postać jednowymiarowej tablicy (Array). wykład 2 16

17 Drugi próbnik Próbnik umieszczony na granatowym przewodzie pozwala stwierdzić, że transmitowane są nim dane o budowie złożonej. Oprócz tablicy danych numerycznych przekazywana jest również informacja o szybkości próbkowania, czyli szybkości pobierania danych z sygnału analogowego. Taki sposób przesyłania danych umożliwia prawidłowe wyskalowanie osi czasu na wykresie. wykład 2 17

18 Wniosek Do prawidłowego odzwierciedlenia (na wykresie) i analizy sygnału w postaci cyfrowej konieczna jest dodatkowa informacja dotycząca odległości między kolejnymi próbkami. Jeśli źródłem sygnału cyfrowego jest przetwornik analogowo cyfrowy, odległość między próbkami określona jest przez częstotliwość próbkowania. Znaczenie szybkości próbkowania można łatwo zilustrować eksperymentem myślowym z zebrą. wykład 2 18

19 Próbkowanie zebry Na skutek niewłaściwego doboru kroku próbkowania na przedstawionym obrazku zebry, komputer może stwierdzić, że jest ona czarna. wykład 2 19

20 Analiza widmowa Nawiązanie do analizy widmowej odnaleźć można także na okładce kultowego dzieła zespołu Pink Floyd z 1973 roku. Zasygnalizowany problem związany z doborem szybkości próbkowania w stosunku do szybkości zmian sygnału stanowić będzie przedmiot kolejnych wykładów. Zagadnienie badane będzie z wykorzystaniem analizy widmowej stanowiącej ważne narzędzie cyfrowego przetwarzania sygnałów. wykład 2 20

21 Podsumowanie Przedstawionych zostało kilka podstawowych informacji ułatwiających rozpoczęcie pracy w środowisku LabVIEW. Zawierający kompletny język programowania pakiet umożliwia wykonywanie szerokiego zakresu operacji związanych z przetwarzaniem sygnałów. Graficzny język G wydaje się relatywnie prosty i umożliwia rozpoczęcie pracy z sygnałami bez konieczności długiej nauki samego języka. Prostota ta nie powinna być jednak bagatelizowana, gdyż tworzenie wydajnych aplikacji w LabVIEW wymaga znajomości specyfiki i haczyków tego środowiska. wykład 2 21