Programowanie Wybranych Sterowników Przemysłowych Strona 1 z 5
Laboratorium 4
Biblioteka Logical operations
1. Cel ćwiczenia
Celem ćwiczenia jest zapoznanie się z instrukcjami programu TIA Portal, które wykonują
najpopularniejsze operacje według logiki boolowskiej na bitach argumentów oraz inne operacje
powiązane z logiką. Za pomocą tych funkcji możemy wykonać iloczyn logiczny, sumę logiczną,
alternatywę wykluczającą, negację. Znajdują się również bloki pełniące funkcję kodera, dekodera,
switcha oraz multipleksera.
2. Przebieg ćwiczenia
Ćwiczenie jest podzielone na dwa etapy. W pierwszej części są opisane wszystkie elementy
Logical operations. W drugim etapie są przedstawione przykładowe układy wykorzystujące dane
funkcje.
2.1. Instrukcje z biblioteki Logical operations
Wszystkie elementy biblioteki Logical operations przedstawiono na rysunku 1. Tą bibliotekę
funkcji można podzielić na dwie kategorie. Pierwszą są elementy realizujące podstawowe zadania na
zadanych argumentach. Druga podgrupa składa się z kodera, dekodera, switcha i multipleksera. Są to
bardziej rozbudowane elementy, które są często wykorzystywane w zadaniach logicznych jak np.
przesyłanie, odbieranie informacji z wielu źródeł za pomocą linii jednoprzewodowej.
AND – iloczyn logiczny
OR – suma logiczna
EXCLUZIVE OR – alternatywa wykluczająca
INV – inwerter
Decode – dekoder
Encode – koder
Select – switch
Multiplex – multiplekser
Rysunek 1 Elementy biblioteki Logical opertions
Zadanie 1
Należy zapoznać się z wszystkimi elementami Bit logic w pomocy programu TIA Portal
(nazwa funkcji >> przycisk „F1”). Jak wykonać operacje na pojedynczych bitach?
Programowanie Wybranych Sterowników Przemysłowych Strona 2 z 5
Laboratorium 4
Biblioteka Logical operations
2.2. Przykłady zastosowania komponentów z biblioteki Logical operations
W tej części jest przedstawione praktyczne zastosowanie elementów biblioteki.
2.2.1. Realizacja alternatywy wykluczającej bajt danych wejściowych i wartości
zaprogramowanej w sterowniku
Na rysunku 3 jest przedstawiony schemat drabinkowy układu. Aby przypisać wartość stałą
trzeba ją dodać do Watch Table i za pomocą przycisku na rysunku 2 w trybie Online przypisać daną
do sterownika
.
Rysunek 2 Przycisk aktualizacji wartości
Rysunek 3 EXOR dla bajtu z wejścia i danej z PLC
Zadanie 2
Należy stworzyć podobny program do układu z punktu 2.2.1, który wykona operację AND na
bajcie wejściowym i stałej zapisanej w markerze.
Programowanie Wybranych Sterowników Przemysłowych Strona 3 z 5
Laboratorium 4
Biblioteka Logical operations
2.2.2. Multiplekser z ośmioma argumentami, które są wybierane za pomocą
wejściowego bajtu danych I0 (rysunek 4)
Dzięki temu układowi można przypisać odpowiednią wartość dowolnego typu odpowiadającą
stanowi wejścia argumentu K. W tym wypadku wartość K jest ustalana za pomocą bajtu zmiennych
wejściowych I0. Przepisana liczba jest dawana na bajt wyjścia QB0. Dla wartości K, która jest różna
od ośmiu podanych w multiplekserze argumentów jest wybierany argument z wejścia ELSE.
Dodatkowo wyjście ENO przyjmuje wartość „0”.
Rysunek 4 Multiplekser sterowany bajtem I0
Zadanie 3
Należy zbudować układ z punktu 2.2.2
i przeanalizować jego działanie. Dlaczego w tym
układzie wykonana jest rotacja?
Uwaga!
Aby dodać dodatkowe argumenty wejściowe należy kliknąć prawym przyciskiem na blok
MUX i wybrać opcję Insert input.
Bardzo podobnie do obiektu MUX działa funkcja SEL. Różni się ona zakresem swojego
działania, tzn. może przyjąć tylko dwa argumenty wejściowe, którymi steruje zmienna G typu Bool.
Funkcja SEL jest najczęściej wykorzystywana jako przełącznik uruchamiający dwie różne operacje.
Programowanie Wybranych Sterowników Przemysłowych Strona 4 z 5
Laboratorium 4
Biblioteka Logical operations
2.2.3. Kodowanie i dekodowanie
Dekoder ustawia bit, który licząc od najmniej znaczącego jest zapisany na jego wejściu.
Pozostałe bity zmiennej wyjściowej mają wartość zero.
Enkoder działa odwrotnie, tzn. pobiera z zadanej wartości najmniej znaczący bit z logiczną
jedynką i do wyjścia podaje na którym miejscu ten bit się znajduje.
Na rysunku 5 jest przedstawiony prosty układ z definicjami zmiennych, który wykorzystuje
operacje kodowania i dekodowania danych. Rysunek 6 przedstawia definicje zmiennych.
Rysunek 5 Kodowanie i dekodowanie
Rysunek 6 Definicje zmiennych dla programu przedstawionego na rysunku 4
Zadanie 4
Należy zbudować układ z punktu 2.2.3 i wytłumaczyć jego działanie. Dlaczego niektóre typy
zmiennych muszą być typu UInt? Jaka jest maksymalna wartość dekodowania liczby w tym
programie? Z czego to wynika?
Programowanie Wybranych Sterowników Przemysłowych Strona 5 z 5
Laboratorium 4
Biblioteka Logical operations
Zadanie 5
Należy stworzyć prosty kalkulator logiczny, który za pomocą zadawania numeru w postaci
binarnej z wejścia IB0 będzie realizował następujące zadania:
- dla wartości 0 wyzeruje cały bajt QB0,
- dla wartości 1 uaktywni wyjście (od Q0.0 do Q0.7) o numerze odpowiadającym wartości dziesiętnej
zadanej z markera MW0. W wypadku wartości większej od 7 układ ma policzyć modulo z 8,
- dla wartości 2 policzy sumę logiczną bajtu danych zapisanych w MW2 i MW4 i wyświetli wartość w
QB0,
- dla wartości 3 wyliczy iloczyn logiczny bajtu danych zapisanych w MW2 i MW4 i wyświetli wartość
w QB0,
- dla wartości 4 wyliczy alternatywę wykluczającą bajtu danych zapisanych w MW2 i MW4 i
wyświetli wartość w QB0.