Maszyna stanu State Machine

Podobne dokumenty
Reprezentacja zmiennych numerycznych

Programowanie w języku G - Laboratorium 12

Lab. 3 Typy danych w LabView, zapis do pliku

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium cyfrowej techniki pomiarowej. Ćwiczenie 4

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Database Connectivity

5.4. Tworzymy formularze

Ćw. 2. Wprowadzenie do graficznego programowania przyrządów pomiarowych

MS Visual Studio Express 2012 for Web instalacja i konfiguracja

Programowanie w języku G - Laboratorium 7

1. Aplikacja LOGO! App do LOGO! 8 i LOGO! 7

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

Budowa aplikacji ASP.NET współpracującej z bazą danych do obsługi przesyłania wiadomości

Konfiguracja karty akwizycji danych pomiarowych DAQ

5.2. Pierwsze kroki z bazami danych

LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program

Lab. 3 Typy danych w LabView, zapis do pliku

Robert Barański, AGH, KMIW State Machine v1.0. Maszyna stanów (State Machine)

Nowy szablon stron pracowników ZUT

Modelowanie obiektowe - Ćw. 1.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Zaawansowane aplikacje internetowe - laboratorium

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory

Robert Barański, AGH, KMIW MathScript and Formula Nodes v1.0

Budowa aplikacji ASP.NET współpracującej z bazą danych do obsługi przesyłania wiadomości

PRZYRZĄDY WIRTUALNE. Część 6 Macierze, klastry, wzory. Prof. Krzysztof Jemielniak

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych

ZROZUMIENIE MODUŁOWOŚCI (Understanding Modularity)

Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:

podstawowa obsługa panelu administracyjnego

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

1. Wprowadzenie. 1.1 Uruchamianie AutoCAD-a Ustawienia wprowadzające. Auto CAD Aby uruchomić AutoCada 14 kliknij ikonę

Projekt ZSWS. Instrukcja uŝytkowania narzędzia SAP Business Explorer Analyzer. 1 Uruchamianie programu i raportu. Tytuł: Strona: 1 z 31

Tomasz Greszata - Koszalin

Instrukcja obsługi programu:

Zadanie 2. Tworzenie i zarządzanie niestandardową konsolą MMC

Tworzenie menu i authoring w programie DVDStyler

DLA DREAMBOX & FLASHWIZARD

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych

LabVIEW PLATFORMA EDUKACYJNA Lekcja 1 Pierwsze kroki w środowisku LabVIEW

Formatowanie tekstu za pomocą zdefiniowanych stylów. Włączanie okna stylów. 1. zaznaczyć tekst, który chcemy formatować

WPROWADZENIE DO ŚRODOWISKA SCICOS

Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska

Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia

podstawowa obsługa panelu administracyjnego

MentorGraphics ModelSim

Instrukcja obsługi programu DHL EasySHip v. 5.3.x

imei CYFROWE PRZETWARZANIE SYGNAŁÓW Laboratorium Temat: Tworzenie aplikacji w środowisku LabWindows/CVI Instytut Metrologii, Elektroniki i Informatyki

Instalowanie VHOPE i plików biblioteki VHOPE

Pierwsza niedogodność dotyczy strony zarządzaj działami.

Institution data management

ApSIC Xbench: Szybki start wydanie Mariusz Stępień

Korzystanie z edytora zasad grupy do zarządzania zasadami komputera lokalnego w systemie Windows XP

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

Skrócona instrukcja obsługi czujników Fast Tracer firmy Sequoia.

netster instrukcja obsługi

Pobieranie edytora CodeLite

Wstęp. Skąd pobrać program do obsługi FTP? Logowanie

Gromadzenie danych. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 15 minut.

Tworzenie szablonów użytkownika

Nawigacja po długim dokumencie może być męcząca, dlatego warto poznać następujące skróty klawiszowe

Projekt z przedmiotu Specjalizowane języki programowania Temat: Zastosowanie programowania obiektowego w środowisku LabView

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

Instalacja i konfiguracja IIS-a na potrzeby dostępu WEBowego/Secure

Jak przygotować pokaz album w Logomocji

Ćwiczenia 2 IBM DB2 Data Studio

VI od podstaw. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 30 minut.

Analiza i zapis sygnału. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 45 minut.

Jak zainstalować szablon allegro?

Laboratorium - Poznawanie FTP

koledzy, Jan, Nowak, ul. Niecała 8/23, , Wrocław, , ,

xmlns:prism= c. <ContentControl prism:regionmanager.regionname="mainregion" />

Ustalanie dostępu do plików - Windows XP Home/Professional

OBIEKTY TECHNICZNE OBIEKTY TECHNICZNE

Podręczna pomoc Microsoft Power Point 2007

Robert Barański, AGH, KMIW Arrays and Clusters v1.0. Poniższy poradnik wprowadza do tworzenia oraz obsługi tablic i typów danych klastra.

Oprogramowanie Turning Point 5. Tryb AnyWhere (Test AnyWhere) Oprogramowanie Turning Point 5 Tryb AnyWhere Agraf Sp. z o.o. Nowe Sady 2, Łódź

Sekretariat Optivum. Jak przygotować listę uczniów zawierającą tylko wybrane dane, np. adresy ucznia i jego opiekunów? Projektowanie listy

1. ISE WebPack i VHDL Xilinx ISE Design Suite 10.1 VHDL Tworzenie projektu Project Navigator Xilinx ISE Design Suite 10.1 File

6.4. Efekty specjalne

Oracle PL/SQL. Paweł Rajba.

UMOWY INSTRUKCJA STANOWISKOWA

Tablet bezprzewodowy QIT30. Oprogramowanie Macro Key Manager

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium przyrządów wirtualnych. Ćwiczenie 3

PORÓWNANIE KILKU ZESTAWIEŃ OBROTÓW I SALD

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

Tworzenie i zapis plików w VI

Jak skonfigurować bezpieczną sieć bezprzewodową w oparciu o serwer RADIUS i urządzenia ZyXEL wspierające standard 802.1x?

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych

Projektowanie układów VLSI-ASIC techniką od ogółu do szczegółu (top-down) przy użyciu pakietu CADENCE

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

Dzienniki pozalekcyjne, nauczania indywidualnego, świetlicowe

tel fax

Access - Aplikacja. Tworzenie bazy danych w postaci aplikacji

Instrukcja obsługi systemu Sky CMS

Procedury techniczne modułu Forte Kontroling. Raportowanie danych w MS Excel - Konfiguracja IIS na Windows oraz wykonanie importu

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa TECHNIKI REGULACJI AUTOMATYCZNEJ

Transkrypt:

Pozwala na sekwencyjne wykonywanie zadań. Wykorzystuje się struktury Case umieszczone w pętli While. Wywołanie konkretnej struktury Case jest zdeterminowane wyjściem z poprzednio wykonanej struktury Case. Najlepiej prześledzić to na przykładzie. Zanim zrealizujemy przykład, poznamy definicje typów (Type Definitions) w LabVIEW. Type Definitions jest bardzo przydatne, gdy dana kontrolka wykorzystywana jest w wielu programach, a od czasu do czasu zmieniamy ją (np. dodajemy kolejne zmienne itp.) Prześledźmy na przykładzie. Tworzymy klaster, a następnie wywołujemy menu podręczne, a z niego Advanced > Customize. W nowym oknie możemy edytować kontrolkę (zrobimy to później). Trzeba jeszcze wybrać opcję Type Def. z rozwijalnego menu na belce narzędziowej. Dalej zamykamy okno, w tym momencie LabVIEW zapyta czy zapisać zmiany. Zapisujemy pod nazwą My Cluster.ctl odpowiadając twierdząco na pytanie zadane przez LabVIEW.

Otwieramy nową aplikację (Ctrl + n) i umieszczamy na panelu naszą kontrolkę (All Controls > Select a Control i wybieramy My Cluster.ctl). Prawym przyciskiem myszy dla kontrolki wybieramy Open Type Def. W otwartym oknie dodajemy do klastera dodatkową kontrolkę Siglan length. Zamykamy okno i zapisujemy zmiany. Proszę zauważyć, że na panelu czołowym poprzedniej aplikacji nastąpiła automatyczna zmiana kontrolki.

Prostą maszynę stanu utworzymy korzystając z szablonu oferowanego przez LabVIEW. Z menu File (lub z przycisku New, jeśli nie mamy otwartej żadnej aplikacji) wybieramy New Otworzy się okno, w którym z VI from Template > Frameworks > Design Patterns wybieramy Standard State Machine.

Panel czołowy nowej aplikacji będzie pusty, natomiast diagram blokowy wygląda jak na slajdzie. W dalszej części będziemy go modyfikować.

1. Zapisujemy aplikację pod nazwą State Machine przyklad1.vi 2. Wskaźnik obecnego stanu (Current State) umieszczamy wywołując w pętli While na diagramie Create > Indicator. Na panelu umieszczamy go tak jak zamieszczono obok na slajdzie nad wskaźnikiem pojawiać się będą okna dialogowe, a zależy nam na tym aby nie przysłaniały wskaźnika. 3. Na stałej Beginning State prawym przyciskiem myszy wybieramy Open Type Def. 4. W otwartym oknie na kontrolce wybieramy prawym przyciskiem myszy Edit Items i dopisujemy do listy dwa stany: State1 oraz State2. 5. Zamykamy panel czołowy i zapisujemy zmiany pod sugerowaną nazwą w katalogu, w którym zapisaliśmy naszą aplikację. Maszyna stanu State Machine

6. Wracamy na diagram blokowy naszej maszyny stanu i prawym przyciskiem na strukturze Case wybieramy dwukrotnie polecenie Duplicate Case, aby utworzyć dodatkowe struktury dla stanów State1 i State2. 7. Uzupełniamy diagram blokowy jak pokazano na slajdzie. Odpowiedni stan w stałej Next State wybieramy z rozwijalnej listy. 8. Zapisujemy zmiany, przechodzimy na panel czołowy i uruchamiamy aplikację.

Kolejny przykład wykorzystywać będzie również strukturę Event. 1. Zamykamy poprzednie aplikacje i otwieramy nowy szablon (menu File > New i dalej jak w poprzednim przykładzie). Zapisujemy aplikację pod nową nazwą State Machine przyklad2.vi. 2. W pętli While dla stałej Beginning State wywołujemy Create Indicator (za rejestrem przesuwnym) 3. Dla stałej Beginning State modyfikujemy listę (prawy przycisk > Open Type Def.) stanów, dodając: Acquire, FFT Power Spectrum oraz Wait for User Event. 4. Usuwamy z pętli While ograniczenie czasowe (Wait (ms)). 5. Uzupełnianie struktury Case zaczniemy od stanu Acquire. " Acquire" 4 5 10 Round To +Infinity Multitone Generator.vi signal out W aveform Graph W ykres na panelu czoł owym Next State Wait for User Event Wywoł ane jako Create > Constant na wyjściu z Multitone Generator.vi

Kolejny przykład cd. 6. Dalej zmodyfikujemy strukturę Case dla stanów FFT Power Spectrum i Stop " FFT Power Spectrum" zmienna lokalna signal out Unbundle By Name f0 df magnitude FFT Power Spectrum.vi To Time Stamp Build W aveform zmienna lokalna t0 W aveform Graph dt Y Beginning State Wait for User Event " Stop" Stop

Kolejny przykład cd. 7. Przed modyfikacją struktury Case dla stanu Wait for User Event przejdźmy na panel czołowy i skonfigurujmy go jak pokazano na tym slajdzie. Wykorzystano przyciski OK odpowiednio je modyfikując. Sprawdzamy czy akcja mechaniczna przycisków ustawiona jest na Latch When Released.

Kolejny przykład cd. 8. Wskaźnik signal out jest wykorzystywany jedynie do przetrzymania danych w aplikacji, tak aby można je było wykorzystać w stanie FFT Power Spectrum. Chcielibyśmy go w takim razie ukryć na panelu czołowym. Wywołujemy więc na wskaźniku signal out menu podręczne i wybieramy Advanced > Hide Indicator. Efekt końcowy powinien być jak poniżej. Wskaźnik zniknął

Kolejny przykład cd. 9. Wracamy na diagram blokowy i modyfikujemy stan Initialization " Initialize", Default stał e 00:00:00.000 YYYY-MM-DD 0 0 0 Build W aveform t0 dt Y W aveform Graph signal out Zmienne lokalne UWAGA! Kontrolki dla tych zmiennych znajdują się w strukturze Case - Acquire Next State Wait for User Event

Kolejny przykład cd. 10. Czas na modyfikację stanu Wait for User Event. Wykorzystamy tutaj strukturę Event. Struktura będzie miała kilka stanów, każdy odpowiadał będzie reakcji na naciśnięcie przycisku na panelu czołowym. Dla wszystkich stanów definiujemy zdarzenie Value Change. Na tym slajdzie widać zawartość dla zdarzenia związanego z przyciskiem Stop. Wygląd struktury Event dla pozostałych przycisków pokazano na kolejnym slajdzie.

Kolejny przykład cd.