Programowanie Wybranych Sterowników Przemysłowych
Strona 1 z 5
Laboratorium 2
Biblioteka Compare
1. Cel ćwiczenia
Celem ćwiczenia jest zaprezentowanie działania elementów z biblioteki Comapre (rysunek 1)
dostępnej w TIA Portal. Elementy z tej biblioteki służą do porównywania wartości. Znajomość
obsługi elementów z tej biblioteki jest kluczowa w przypadku tworzenia bardziej zaawansowanych
projektów ze względu na to że często konieczne jest porównywanie wartości. Po wykonaniu ćwiczeń
przewidzianych dla instrukcji z biblioteki Compare, słuchacz będzie umiał prawidłowo porównywać
dowolne wielkości liczbowe, określić czy dany argument znajduje się w określonym zakresie, czy też
nie. Będzie w stanie, bardzo łatwo określić czy zmienna jest typu REAL czy nie.
2. Przebieg ćwiczenia
2.1. Instrukcje z biblioteki Comapre
Equal – sprawdzenie czy dwa argumenty są sobie równe
Not Equal – sprawdzenie czy dwa argumenty nie są równe
Grater or equal – sprawdzenie argument jest większy równy
Less or equal – sprawdzenie czy argument jest mniejszy równy
Grater than – sprawdzenie czy argument jest większy
Less than – sprawdzenie czy argument jest mniejszy
Value within range – sprawdzenie czy argument mieści się w zakresie
Value outsider range – sprawdzenie czy argument jest poza zakresem
Check validity – sprawdzenie czy argument jest typu REAL
Check invalidity – sprawdzenie czy argument nie jest typu REAL
Rysunek 1 Biblioteka Compare wraz z opisem jej elementów
Elementy biblioteki Compare porównują zawsze argument górny z dolnym pod kątem
prawdziwości warunku. Tak więc warunek zawarty w funkcji CMP> będzie prawdziwy wtedy gdy to
górny argument będzie większy od dolnego a nie odwrotnie (rysunek 2).
Zadanie 1
Należy zapoznać się ze wszystkimi elementami biblioteki Compare w pomocy programu TIA
(nazwa funkcji >> przycisk „F1”), i podać różnice między elementami CMP >= i CMP > oraz
IN_RANGE i OUT_RANGE.
Programowanie Wybranych Sterowników Przemysłowych
Strona 2 z 5
Laboratorium 2
Biblioteka Compare
Rysunek 2 Warunek większy niż a) spełniony b)niespełniony
2.2. Korzystanie z elementów biblioteki Compare
Elementy z tej biblioteki stosuje się w przypadkach gdzie konieczne jest porównanie dwóch
wartości liczbowych takich jak np.: poziom wody w zbiorniku, czy ilość uruchomień danego
urządzenia w stosunku do zalecanej ilości na jednostkę czasu.
Korzystanie z elementów tej biblioteki wygląda tak samo jak z elementów pozostałych
bibliotek wystarczy przeciągnąć dany element za pomocą myszki z menu do drabinki i upuścić w
odpowiednim miejscu. Istotne jest natomiast aby odpowiednio wybrać typ zmiennych jaki będzie
porównywany, ponieważ można porównywać jedynie wartości tych samych typów, a ponadto
poszczególne typy zapisuje się w pamięci w inny sposób(tabela 1).
Tabela 1 Adresowanie dla różnych typów zmiennych
Typ zmiennej
Adresowanie
Opis
Bit
Mx.x(np. M0.0)
wartości logiczne np.: gdy ustawia się
pojedyncze wyjście.
Byte
MBx(np.: MB0)
zapis całego bajtu (8 bitów)
INT
MWx(np.:MW0)
zapis liczby całkowitej wymaga 2 bajtów,
o czym należy pamiętać podczas
adresowania by nie wpisywać do dwóch
kolejnych markerów różnych liczb np.:
MW0 i MW1 gdyż w bajcie 1 nastąpi
konflikt.; prawidłowy zapis wygląda
następująco: MW0 i MW2.
REAL, DINT
MDx(np.:MD0)
zapis
liczby
rzeczywistej/zmienno-
przecinkowej,
podobnie
jak
dla
dwubajtowego MW należy pamiętać o
tym że MD zajmuje 4 bajty, więc kolejne
markery mogą być zapisywane jako MD0
i MD4
a)
b)
Programowanie Wybranych Sterowników Przemysłowych
Strona 3 z 5
Laboratorium 2
Biblioteka Compare
Aby wybrać typ zmiennej dla bloków porównujących należy rozwinąć dolne menu danego
bloku i wybrać typ zmiennej (rys. 3 a). Zmiany funkcji bloku np.: z „==” na „>=” dokonuje się przez
rozwinięcie górnego menu (rys. 3 b)
Rysunek 3 Obsługa bloków porównania
Zadanie 2
Należy przeanalizować działanie układu z rysunku 4 i na jego podstawie zbudować
odpowiednik, przy wykorzystaniu bloków porównania.
Rysunek 4 Układ sprawdzający czy argument zapisany w MW10 jest w określonym zakresie
Do symulowania działania tego układu konieczne jest utworzenie tzw. Watch table (rys 6).
Jest to narzędzie służące do zmiany wartości komórek pamięci. Umożliwia ono aktualizację wartości
wpisanych do sterownika. Aby utworzyć Watch table należy wybrać pozycję Add New Watch table
znajdującą się w drzewie projektu(PLC_1[CPU….] >> Watch tables]. W kolumnie Address należy
Programowanie Wybranych Sterowników Przemysłowych
Strona 4 z 5
Laboratorium 2
Biblioteka Compare
wpisać adres markera jakim chcemy sterować, natomiast w kolumnie Display format reprezentację
podawanej wartości(na potrzeby ćwiczenia zalecane DEC_unsigned). Aby uaktualnić wartość w
rejestrze należy kliknąć na ikonę przedstawioną na rysunku 5.
Rysunek 5 Ikona polecenia uaktualniającego wartości w Watch table
Nagłówek przykładowej tabeli z kategorii Watch table została zaprezentowana na rysunku 6
w raz z opisem kolumn tabeli
1. ikona polecenia aktualizacji wartości,
2. nazwa własnej (niema wpływu na działanie programu) danego argumentu,
3. adresu argumentu w pamięci,
4. ikona polecenia włączającego monitoring,
5. sposób wyświetlania,
6. wartość monitorowana (poprzednio ustawiona),
7. wartość do ustawienia,
8. status (np.: wartość wprowadzona ale jeszcze nie uaktualniona).
Rysunek 6 Nagłówek tabeli Watch table
Zadanie 3
Korzystając z poznanych elementów zbudować układ sterujący roletami zewnętrznymi przy
następujących założeniach:
- układ ma posiadać pięć poziomów natężenia światła, w zależności od tych poziomów rolety
mają być całkowicie otwarte przy minimalnym natężeniu, całkowicie zamknięte przy
maksymalnym,
- przyjmujemy że wartości natężenia światła wyrażone są w liczba całkowitych (INT) i
zmieniają się w zakresie od 0 (min) do 100 (max),
- w zależności od tego jakie jest aktualne ustawienie rolet, na wyjściu układu ma się pojawić
sygnał odpowiadającemu danemu ustawieniu. Dla 5% otwarcia przesłony, sygnał w postaci
jedynki logicznej ma się pojawić np.: na wyjściu M11.0 i odpowiednio dalej dla
poszczególnych stopni.
1
2
3
5
6
7
8
4
Programowanie Wybranych Sterowników Przemysłowych
Strona 5 z 5
Laboratorium 2
Biblioteka Compare
Zadanie 4
Korzystając z poznanych elementów zbudować układ sterujący dawkowaniem chloru do wody
w basenie przy następujących założeniach:
- poziom chloru w wodzie może mieć minimalne 0,01mg/l oraz maksymalne stężenie 0,5mg/l,
- poziom wody może się wahać od 1,5 do 1,55 głębokości,
- sterowanie odbywa się poprzez otwieranie i zamykanie zaworów:
- Q0.2 spust do kanalizacji (gdy poziom wody jest za wysoki),
- Q0.3 dolanie wody (gdy poziom wody jest za niski oraz gdy poziom chloru jest za wysoki),
- Q0.4 dolanie chloru (jeśli stężenie chloru osiągnie wartość mniejszą niż minimalna).