Każdy sterownik, a co za tym idzie program, napisany pod konkretny sterownik będzie posiadać różnego rodzaju zmienne (variables). W tym artykule przedstawimy kilka podstawowych zmiennych w sterownikach PLC, a także wyjaśnimy, czym one są.
Zmienne w sterownikach PLC – czym są i do czego służą?
Zmienne w programowalnych sterownikach logicznych wykorzystuje się do przechowywania oraz przetwarzania informacji. Zmienne są to takie dane, które mogą zmieniać swoją wartość w trakcie pracy sterownika, czyli wykonywania programu. Zostają one umieszczone w pamięci sterowników. Wszystkie zmienne, jakie będziemy używać, muszą zostać zadeklarowane przez użytkownika, a co za tym idzie, mogą one być lokalne lub globalne oraz występować jako parametry wejściowe i wyjściowe. Deklaracji zmiennych, jakie są używane w programie, dokonuje się na samym początku tuż po deklaracji nazwy. Warto podkreślić, że deklarowanie zmiennych jest w gruncie rzeczy niezależne od języka.
Elementy zmiennych w sterownikach PLC
Zmienna w programowalnych sterownikach zawiera elementy, takie jak:
- nazwa, jaką damy deklarowanej zmiennej,
- typ zmiennej określamy słowami kluczowymi służącymi do deklaracji zmiennych:
- VAR – deklaracja zmiennych wewnętrznych,
- VAR_INPUT – zmienna dostarczana z zewnątrz,
- VAR_OUTPUT – zmienna wyprowadzana z programu na zewnątrz,
- VAR_GLOBAL – zmienna globalna.
- informacje o typie danej, jaką zmienna będzie przechowywać. Informacja ta niezbędna jest do określenia obszaru pamięci, jaka jest potrzebna do jej przechowywania. Więcej o typach danych możesz się dowiedzieć z naszego artykułu Typy danych w sterownikach PLC.
- atrybuty, dzięki którym wiemy, czy zmienna będzie podtrzymywana po braku zasilania za pomocą baterii lub co z nią można zrobić. Istnieją następujące atrybuty:
- RETAIN – zmienna, która można podtrzymywać,
- CONSTANT – stała, czyli zmienna niemodyfikowalna,
- R_EDGE – zmienna, która reaguje tylko na zbocze narastające,
- F_EDGE – jest odwrotnością R_EDGE, czyli reaguje tylko na zbocza opadające,
- READ_ONLY – zmienna tylko do odczytu,
- READ_WRITE – zmienna do odczytu i zapisu.
Zmienne proste – co należy o nich wiedzieć?
Zmienne proste nazywane także jednoelementowe lub skalarne, są to takie zmienne, które należą do zmiennych typu elementarnego. Zmienne tego rodzaju mogą być przedstawiane symbolicznie za pomocą nazwy lub w sposób bezpośredni mówiący o położeniu fizycznym na przykład w strukturze wejść i wyjść sterownika lub pamięci. Do deklaracji zmiennej już z określoną lokalizacją w pamięci sterownika używa się słowa kluczowego, jakim jest AT. Adres takiej zmiennej jest reprezentowany przez znak %. Zaraz po nim występuje jeden z kilku przedrostków określających obszar pamięci, w którym jest ona umieszczona (I – wejście, Q – wyjście, W – słowo itp.), oraz przedrostek rozmiaru, a także jedna lub kilka liczb określających jej adres. Przykładowe proste zmienne: %QX20 – bit 20 na wyjściu, %IW200 – słowo 200 na wyjściu.
Przykłady zmiennych w sterownikach PLC
Na pierwszym zdjęciu widoczna jest konfiguracja zmiennych globalnych w programie GX Works 2, czyli na sterownikach z rodziny Mitsubishi. W pierwszej kolumnie widać określenie rodzaju zmiennej. W naszym przypadku jest to VAR_GLOBAL, czyli zmienna globalna. Następnie Label Name określa nazwę zmiennej. Data Type to typ danych, które przyjmuje zmienna. Widoczny jest także adres zmiennej oraz obszar pamięci, w jakim zmienna jest przechowywana.


Na powyższym zdjęciu ze zmiennymi lokalnymi widać znacznie mniej opcji do określenia w porównaniu ze zmiennymi globalnymi. W zmiennych lokalnych określamy tylko rodzaj zmiennej, nazwę oraz typ danych. W tym przypadku mamy do czynienia między innymi z wartościami bitowymi czy timerami.
Podsumowanie
Trzeba pamiętać, że deklaracja zmiennej przyjmuje nazwę (identyfikator), jest umieszczona w odpowiednim obszarze pamięci (opcjonalnie), atrybut (opcjonalnie) oraz typ danych, do których należy. Zmienne mogą mieć postać zmiennej lokalnej lub globalnej, a także parametrów przy wywołaniu jako dane wejściowe lub wyjściowe.
Artykuł powstał z wykorzystaniem książki pt. Programowanie sterowników przemysłowych, Jerzego Kasprzyka, Wydawnictwo WNT, Warszawa 2017.