1. CEL ĆWICZENIA Celem ćwiczenia jest zapoznanie studentów ze środowiskiem LabVIEW oraz podstawami programowania w języku graficznym G.

Podobne dokumenty
Podstawy programowania w LabView (1)

Lab. 3 Typy danych w LabView, zapis do pliku

LabVIEW PLATFORMA EDUKACYJNA Lekcja 1 Pierwsze kroki w środowisku LabVIEW

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

Lab. 3 Typy danych w LabView, zapis do pliku

Reprezentacja zmiennych numerycznych

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

LabVIEW w połączeniu z urządzeniami rejestrującymi obraz, ruch, może zostać użyty równie funkcjonalnie jak przyrządy GPIB, PXI, RS232 i RS485.

Tworzenie i zapis plików w VI

WSTĘP DO PROGRAMOWANIA W LAB VlEW - cz. I

Synteza układów kombinacyjnych metodą tablic Karnaugha - ćwiczenie 10

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

Politechnika Wrocławska, Katedra Inżynierii Biomedycznej Systemy Pomiarowo-Diagnostyczne, laboratorium

Robert Barański, AGH, KMIW For Loops While Loops v1.0

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.

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

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

Lab. 3 Tablice, struktura warunkowa

Tworzenie prezentacji w MS PowerPoint

Lab. 2 Tablice, struktura warunkowa

Programowanie w języku G - Laboratorium 4

Oficyna Wydawnicza UNIMEX ebook z zabezpieczeniami DRM

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

CoDeSys 3 programowanie w języku CFC

Podstawy użytkowania programu LabView

Budowa i oprogramowanie komputerowych systemów sterowania. Wykład 2. Labview

Ćwiczenia nr 4. Arkusz kalkulacyjny i programy do obliczeń statystycznych

Programowanie w języku G - Laboratorium 3

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

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2.

Podstawy programowania w LabView (2) Instrukcje strukturalne

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

Podstawy programowania w środowisku LabVIEW, program do pomiaru napięcia

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

Compas 2026 Vision Instrukcja obsługi do wersji 1.07

Modelowanie obiektowe - Ćw. 1.

Programowanie w języku G - Laboratorium 12

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

LABORATORIUM SYSTEMÓW POMIAROWYCH KTP IR PW MATERIAŁY POMOCNICZE DO ĆWICZENIA 1 SYMULATOR SYSTEMU POMIAROWEGO W STANDARDZIE IEC-625.

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

ActionFX oprogramowanie do sterowania efektami platform i kin 7D V1.0.1

Laboratorium Systemów SCADA

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

Wirtualne przyrządy kontrolno-pomiarowe

MS Access formularze

Wirtualne przyrządy pomiarowe

Celem ćwiczenia jest zapoznanie się z podstawowymi funkcjami i pojęciami związanymi ze środowiskiem AutoCAD 2012 w polskiej wersji językowej.

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

Nr: 15. Tytuł: Kancelaris w systemie Windows 8 i Windows 8.1. Data modyfikacji:

Ćwiczenie C1. Utworzenie wielokanałowego systemu zbierania danych i prezentacja zarejestrowanych przebiegów na ekranie PC

6.4. Efekty specjalne

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

Programowanie w języku G - Laboratorium 2

OPERACJE NA PLIKACH I FOLDERACH

LabVIEW for Windows JAKO NARZĘDZIE DO PROJEKTOWANIA WIRTUALNYCH PRZYRZĄDÓW POMIAROWYCH

Jeżeli pole Krawędź będzie zaznaczone uzyskamy obramowanie w całej wstawianej tabeli

Dlaczego stosujemy edytory tekstu?

Synteza układów kombinacyjnych metodą tablic Karnaugha - ćwiczenie 7

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

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

Analiza obwodów elektrycznych z zastosowaniem LabVIEW

Program ćwiczenia: SYSTEMY POMIAROWE WIELKOŚCI FIZYCZNYCH - LABORATORIUM

Klawiatura. Klawisze specjalne. Klawisze specjalne. klawisze funkcyjne. Klawisze. klawisze numeryczne. sterowania kursorem. klawisze alfanumeryczne

INSTRUKCJA UŻYTKOWNIKA PORTALU SIDGG

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz. 1

Po naciśnięciu przycisku Dalej pojawi się okienko jak poniżej,

LABORATORIUM MULTIMEDIALNEGO MODELOWANIA PROCESÓW. Ćwiczenie 1

WPROWADZENIE DO ŚRODOWISKA SCICOS

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

1. Opis okna podstawowego programu TPrezenter.

Laboratorium z Grafiki InŜynierskiej CAD. Rozpoczęcie pracy z AutoCAD-em. Uruchomienie programu

Edytor tekstu OpenOffice Writer Podstawy

Modelowanie układów sekwencyjnych w LabView - ćwiczenie 8

Idea przyrządów wirtualnych Virtual Instruments - VI

Programowanie w języku G - Laboratorium 1

Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Katedra Metrologii i Systemów Elektronicznych

Podstawy budowy wirtualnych przyrządów pomiarowych

Maszyna stanu State Machine

Programowanie w środowisku graficznym GUI

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

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz. 1

Edytor tekstu MS Word podstawy

Struktura dokumentu w arkuszu kalkulacyjnym MS EXCEL

LabVIEW PLATFORMA EDUKACYJNA Lekcja 6 LabVIEW i Arduino programy wykorzystujące wyświetlacz LCD, czujnik temperatury, PWM i diodę LED

AutoCAD LT praca na obiektach rastrowych i nakładanie barw z palety RGB na rysunki.

imei Instytut Metrologii, Elektroniki i Informatyki

Aplikacja projektu Program wycinki drzew i krzewów dla RZGW we Wrocławiu

Samouczek edycji dokumentów tekstowych

Podstawy tworzenia prezentacji w programie Microsoft PowerPoint 2007

Tworzenie dokumentacji 2D

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Podstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)

Komputerowe wspomaganie eksperymentu 5

PROGRAMOWALNE STEROWNIKI LOGICZNE

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Projektowanie w środowisku KHOROS Cantata

Galileo v10 pierwszy program

Lekcja 1: Origin GUI GUI to Graficzny interfejs użytkownika (ang. GraphicalUserInterface) często nazywany też środowiskiem graficznym

Transkrypt:

1. CEL ĆWICZENIA Celem ćwiczenia jest zapoznanie studentów ze środowiskiem LabVIEW oraz podstawami programowania w języku graficznym G. 2. MATERIAŁ NAUCZANIA 2.1. Opis środowiska LabVIEW LabVIEW jest zintegrowanym środowiskiem programowania opracowanym przez firmę National Instruments. Jest to pakiet oprogramowania służący do projektowania wirtualnych przyrządów pomiarowych (ang. virtual instruments, VI). LabVIEW jest wyposażony w zestaw narzędzi gromadzących, analizujących, obrazujących oraz archiwizujących dane. W LabVIEW można stworzyć własny interfejs, np. przedni panel sterujący, wyposażony w kontrolery i wskaźniki. Kontrolerami mogą być pokrętła, przyciski, pola numeryczne oraz inne mechanizmy umożliwiające wprowadzanie danych wejściowych. Wskaźnikami mogą być wykresy, diody LED oraz inne urządzenia obrazujące sygnał wyjściowy. Po zbudowaniu interfejsu należy odpowiednio go zaprogramować, używając kodu i struktur tak, aby spełniał swoje zadanie. Programowanie odbywa się poprzez tworzenie diagramów blokowych. 2.2. Tworzenie nowego projektu i elementy programu VI Po uruchomieniu programu w oknie startowym w celu utworzenia nowego projektu należy wybrać opcję BlankVI. Na ekranie pojawią się dwa podstawowe okna programu VI: Front Panel (okno z szarym tłem) oraz Błock Diagram (okno z białym tłem). Okno Front Panel stanowi interfejs użytkownika korzystającego z programu napisanego w LabVIEW. Przy jego pomocy tworzymy panel, na którym możemy umieścić przyciski, przełączniki, wskaźniki, okna dialogowe, okna z wynikami, wykresy. Przy pomocy tego okna użytkownik programu steruje wykonaniem programu i odczytuje wyniki wykonania programu. Okno Błock Diagram zawiera kod programu napisany w języku G. Wszystkie instrukcje języka graficznego LabView posiadają swoją reprezentację graficzną (obiekty graficzne). Programowanie polega na wyborze odpowiednich instrukcji i ich łączeniu zgodnie z kolejnością przepływu danych lub kolejnością wykonywania obliczeń. [1] Na rys. 2.1. pokazano przykład palety Controls dostępny dla okna Front Panel (uruchomienie palety następuje poprzez naciśnięcie prawego przycisku myszy w obszarze okna Front Panel). Paleta Controls zawiera wszystkie standardowe kontrolki (ang. control) oraz indykatory (ang. indicator). Uwaga! Nazwa palety Controls może prowadzić do dwuznaczności, ponieważ zawiera ona zarówno kontrolki, jak i indykatory. Controls zostało tu użyte w znaczeniu obiektów prezentacji bądź akwizycji danych i nie należy mylić go z kontrolką używaną do wprowadzania danych wejściowych VI. Rys.2.1. Widok panelu Controls Rys.2.2. Widok panelu Functions

Kontrolkami są nazywane w LabVIEW przyciski oraz wszelkie pola edycyjne, czy też wyboru natomiast wszystkie pola wyświetlające jakąś wartość noszą nazwę indykatorów. Najczęściej używane grupy kontrolek to: numeryczne (Numeric) elementy pozwalające na przekazywanie zmiennych numerycznych np. za pomocą suwaków czy pokręteł, logiczne (Boolean) elementy przekazujące zmienne logiczne np. jako przełączniki czy wskaźniki w postaci diody LED, tekstowe (String & Path) elementy przekazujące zmienne tekstowe oraz ścieżki dostępu do pliku, tablice i klastry danych (Array, Matrix & Cluster) - elementy przekazujące tablice i klastry danych (odpowiednik struktury w języku C), graficzne (Graph) elementy wyświetlające dane w postaci graficznej, wykresy. Przygotowując diagram posługujemy się paletą funkcji (Functions). Na rys. 2.2 przedstawiono przykład palety funkcji dostępnej dla okna Błock Diagram zawierającej standardowe elementy diagramu blokowego (uruchomienie palety następuje po kliknięciu prawym przyciskiem w obszarze diagramu blokowego). Wybrane funkcje umieszczamy na diagramie przeciągając je myszką. Najczęściej wykorzystywane są funkcje z zakładek: struktury (Structures) zawiera funkcje strukturalne, zmienne globalne i lokalne, tablice (Array) - zawiera funkcje do obsługi tablic, klaster, klasa (Custer, Class & Variant) zawiera funkcje do obsługi elementów typu klaster. numeryczne (Numeric) funkcje operujące na liczbach, logiczne (Boolean) funkcje operujące na zmiennych logicznych, łańcuch (String) funkcje operujące na zmiennych tekstowych, porównanie (Comparison) operacje porównania. (Timing) zawiera funkcje związane z odmierzaniem czasu, pliki (File I/O) zawiera funkcje do obsługi plików. [2] 2.3. Typy danych W języku graficznym podobnie jak w innych językach zdefiniowano kilka typów danych. Określają one, jakiego rodzaju informacje mogą przechowywać zmienne i jaki jest ich zakres. Postarano się, aby w łatwy sposób można było rozpoznać, jaki typ reprezentuje zmienna. Zrobiono to poprzez przypisanie zmiennym kolorów. Dzięki temu, patrząc na diagram, możemy od razu zauważyć, z jaką zmienną mamy do czynienia. O jej rodzaju informuje nas również wygląd ikon na diagramie. Po wyglądzie zmiennej możemy również rozpoznać czy jest to kontrolka (źródło danych, jej obrys jest pogrubiony i terminal połączeniowy znajduje się z prawej strony), czy indykator (element wyświetlający dane, obrys jest cieńszy a terminal znajduje się z lewej strony). Istnieją również stałe, które są pokazane tylko na diagramie. Wygląd zmiennej można ustalić na dwa sposoby: może ona być ikoną lub terminalem. W pierwszym wypadku ikona reprezentująca zmienną jest większa, ale niesie więcej informacji, ponieważ możemy rozpoznać związany z nią element na panelu czołowym. W drugim wypadku jest mniejsza, ale nie zaciemnia nam diagramu. Zmianę wyglądu uzyskujemy klikając na niej prawym klawiszem myszy i zaznaczając lub odznaczając w menu lokalnym opcję View As Icon. Na rys. 2.3 przedstawiono ikony i typy kilku podstawowych zmiennych. [2]

Rys.2.3. Typy zmiennych [2] Rys.2.4. Zmiana reprezentacji danych zmiennej numerycznej Zmienną definiujemy przez wstawienie odpowiedniego elementu na panelu czołowym. Wybierające element reprezentujący dane logiczne, np. przycisk, tworzymy zmienną logiczną przekazującą jedną z dwóch wartości: 0 lub 1. Wybierając element zawierający dane numeryczne np. pokrętło czy suwak tworzymy zmienną numeryczną reprezentującą liczby zmiennoprzecinkowe, całkowite lub zespolone. W przypadku zmiennych numerycznych należy zdefiniować, które dane są reprezentowane. Możemy to zrobić na panelu czołowym lub na diagramie. W pierwszym wypadku, klikamy prawym przyciskiem myszy na wstawionym elemencie wybieramy opcję Representation (rys. 2.4) i wskazujemy właściwy typ. To samo można zrobić na diagramie, klikając w tym wypadku na ikonie. 2.4. Linijka przycisków narzędziowych Zarówno na panelu czołowym oraz na diagramie u góry znajduje się linijka przycisków narzędziowych. (rys.2.5) Większość z nich jest taka sama (w oknie diagramu znajduje się kilka dodatkowych umożliwiających śledzenie wykonania programu). Rys.2.5. Widok linijki przycisków narzędziowych w panelu czołowym Poszczególne przyciski pełnią następujące funkcje: Run - przycisk rozpoczyna wykonywanie programu (biała strzałka sygnalizuje gotowość do uruchomienia, zaczerniona wykonywanie programu, przełamana błąd na diagramie, kliknięcie w tym momencie w strzałkę wyświetla listę błędów), Run Continuously - rozpoczyna wykonanie programu w trybie ciągłym. Program wykonuje się tak, jakby pracował w pętli, Abort Execution - zatrzymanie wykonywania programu, Pause - wstrzymanie/wznowienie wykonywania programu,

Highlighting Execution - włącza/wyłącza animację danych na diagramie (można zaobserwować przepływ danych i kolejność wykonywania instrukcji; program wykonuje się znacznie wolniej i można go obserwować nie używając pułapek; aktywna funkcja jest podświetlona, tak samo jak przekazywane dane). Step Into - praca krokowa, po naciśnięciu przycisku wykonywana jest jedna instrukcja; jeśli na diagramie znajdują się instrukcja zagnieżdżone, to program otwiera je i wykonuje również krok po kroku, Step Over - praca krokowa, po naciśnięciu przycisku jest wykonywany pojedynczy krok programu; podprogramy znajdujące się na diagramie nie są otwierane, a wykonywane jak jedna instrukcja, Step Out - zakończenie pracy krokowej, aktualny diagram jest wykonywany do końca, Text Settings - ustawienia czcionki, Align Objects - wyrównanie elementów, Distribute Object - wyrównanie odległości pomiędzy elementami, Resize Object, zmiana wymiarów zaznaczonych obiektów, Reorder - zmiana kolejności nakładających się na siebie obiektów, Show Context Help - włączenie/wyłączenie okienka pomocy kontekstowej. 3. PRZEBIEG ĆWICZENIA 3.1. Utworzenie programu do generowania liczb losowych z przedziału od 0 do 1 a) Utworzenie interfejsu użytkownika Uruchomić program LabVIEW, a następnie w oknie Getting Started wybrać Blank VI W oknie Front Panel wstawić przycisk Stop (prawy przycisk myszy Boolean Stop) Z palety Controls wstawić obiekt Waveform Chart. Zmienić nazwę Waveform Chart na Liczby Losowe ( double click na tekst nazwy). Zmienić skalę na osi Y na 0 1 (prawy klawisz myszy na obiekcie Y scale Formating Scales, a następnie zmienić parametry zgodnie z rys. 2.6) Rys.2.6. Formatowanie skali osi Y b) Utworzenie i uruchomienie programu w języku graficznym Przejść do okna Błock Diagram. Obiekty Stop i Liczby Losowe są odpowiednikami obiektów wstawionych w oknie Front Panel. Z palety Functions wstawić obiekt Rundom Number (0-1) (prawy klawisz myszy Functions Numeric Random Number (0-1)). Najechać kursorem na obiekt Rundom Number (0-1) i połączyć linią z obiektem Liczby Losowe.

Wstawić pętlę While Loop (Functions Programming Structures While Loop). Wybrany obiekt przenieść do okna Błock Diagram. Nacisnąć i zwolnić lewy przycisk myszy. Przesuwając kursor myszy objąć powstałym prostokątem obiekty, które będą wykonywane w pętli ("Random Namber 0-1", "Liczby Losowe", "Stop"). Obiekt Loop Condition (ikona w postaci czeronego kółka) połączyć z przyciskiem Stop. (rys. 2.7) Sprawdzić czy aktywna jest opcja Stop if True (prawy klawisz myszy na Loop Condition). Pętla While Loop jest wykonywana gdy na wejście przerywające wykonywanie pętli jest podana wartość logiczna TRUE. Obiekt "Stop" generuje wartość "TRUE" po jego uaktywnieniu. Dlatego należy sprawdzić ustawienie pętli Continue if True / Stop if True. Zapisać program pod nazwą losowe.vi. Przejść do okna losowe.vi Front Panel. Wcisnąć przycisk Run, a następnie Stop. Rys.2.7. Diagram programu c) Dodanie taktowania do programu losowe.vi Wrócić do okna losowe.vi Błock Diagram. Wstawić wewnątrz pętli obiekt Wait Until Next ms Multiple (Functions Programming Timing Wait Until Next ms Multiple). Dodać obiekt Numeric Constans (Functions Programming Numeric Numeric Constans). Wpisać w oknie Numeric Constans wartość 100. Połączyć z obiektem Wait Until Next ms Multiple. Zapisać zmiany wprowadzone do programu w pliku losowe2.vi (Save As Rename). Uruchomić program i sprawdzić jego działanie. Co się zmieniło? Jak będzie działał program jeśli wpiszemy inną wartość w oknie Numeric Constans? Wrócić do okna Błock Diagram. Uruchomić program (Run), uaktywnić przycisk Higlight Execution/DoNot Higlight Execution. Jaki jest teraz efekt działania programu? d) Analiza wyników, zapis w pliku, testowanie programu. Z palety Functions wybrać obiekt Mean (Mathematics Probability&Statistic Mean) i umieścić na zewnątrz pętli While Loop (uwaga obiekt Mean został umieszczony na zewnątrz pętli w celu obliczenie wartości średniej po przerwaniu pętli). Wstawić obiekt Write To Spreadsheet File (Functions Programming File I/O Write To Spreadsheet File) i umieścić również na zewnątrz pętli While Loop. Kursorem najechać na prawy górny róg obiektu Mean i kliknąć prawym przyciskiem myszy. Z menu obiektu wybrać Create Indicator. Zarówno w oknie Błock Diagram, jak i w oknie Front Panel pojawi się obiekt mean służący do wyświetlania wyników obliczeń, który automatycznie zostanie połączony z obiektem Mean. Zmienić nazwę obiektu mean na Wartość średnia.

Połączyć wyjście obiektu Random Number (0-1) z wejściem obiektu Mean. Połączenie zostanie narysowane przerywaną linią z czerwonym przekreśleniem co sygnalizuje, że zostały połączone piny reprezentujące różne typy danych. W podobny sposób połączyć wyjście Random Number (0-1) z wejściem ID data obiektu Write To Spreadsheet File. Należy wybrać wejście ID data ponieważ pętla While Loop tworzy jednowymiarową tablicę danych z liczb losowych generowanych przez obiekt Random Number (0-1). Połączenie zostanie również narysowane przerywaną linią z czerwonym przekreśleniem, co sygnalizuje, że zostały połączone piny reprezentujące różne typy danych - rys. 2.8. Rys.2.8. Diagram programu Pomarańczowe kwadraty w prostokącie symbolizującym pętlę While Loop reprezentują dane generowane przez pętlę, które są przekazywane do dalszej części programu po przerwaniu pętli. Kursorem najechać na pomarańczowy kwadrat i kliknąć prawym przyciskiem myszy. Z menu wybrać Tunnel Mode Indexing. Zmiana tej opcji spowoduje, że pętla będzie gromadziła dane w postaci tablicy jednowymiarowej. Jak program sygnalizuje zmianę tej opcji? Tablica jednowymiarowa może być wprowadzona na połączone w omawianym przykładzie wejścia obiektów Mean i Write to Spreadsheet File. Linia przerywana łącząca obiekty zmieni się na pomarańczową linię ciągłą ponieważ niezgodność typów danych została usunięta. Zapisać zmiany wprowadzone do programu w pliku losowe3.vi. Uruchomić program i sprawdzić jego działanie. Po naciśnięciu przycisku stop pojawi się okno dialogowe, w którym należy wpisać nazwę pliku do którego zostaną zapisane wyniki. 4. LITERATURA 1. Chruściel M., LabVIEW w praktyce, Wydawnictwo BTC, Legionowo, 2008 2. Szaj W., Podstawy programowania w LabView, ELEKTRONIKA PRAKTYCZNA 4/2013, s. 99-103