Tworzenie programów PLC dla sterowania sekwencyjnego i współbieżnego
5. Zasady tworzenia programów PLC dla sterowania współbieżnego
5.2. Program sekwencyjny PLC z procedurami sterowania współbieżnego
Należy zaznaczyć, że widoczne na rysunku 64 swoiste rozgałęzienie sekwencyjnego algorytmu SFC zapoczątkowane pierwsza linią przerywaną (tą górną) „ładnie” się rysuje, zaś trochę trudniej programowo implementuje w programie PLC. Autor sugeruje Czytelnikowi zwrócić szczególną uwagę na sieci programowe Network 3 do Network 8 na rysunku 65 programu PLC dla algorytmu SFC z rysunku 64.
Rysunek 65: Sieci programowe LAD dla realizacji algorytmu ze sterowaniem współbieżnym z rysunku 64
Ponieważ, jak już wiemy warunkiem „udanego” zapętlenia algorytmu SFC do kroku początkowego, (na rysunku 64 Kroku nr 0) jest użycie znacznika kroku „ostatniego” w rozwoju i tranzycji po tymże, to dla implementacji algorytmu z rysunku 64 musi nie może być inaczej koncepcyjnie, tylko „realizacyjnie”. Jest tak, ponieważ ostatnim w rozwoju algorytmu nie jest pojedynczy krok a dwa kroki, występujące przed niższą linią przerywaną, tj. Krok nr 1: M10.1 i Krok nr 3: M10.3. To dlatego w sieci programowej Network 3 widzimy symbole tych kroków „szeregowo” ze znacznikiem tranzycji złożonej T_0: M5.1. Dalej, ponieważ warunkiem poprawności programu PLC jest „likwidacja” znaczników „poprzednich”, to w sieci programowej Network 4 zauważamy zerowanie tychże. Ponieważ od tego momentu mamy trochę „pod górkę”, to autor zacznie od nowego akapitu.
Widocznie na rysunku 64 „nie kończące się” dwie linie przerywane oznaczają, że liczba ciągów w pojedynczym sterowaniu współbieżnym może być znacznie większa, niż tylko dwa. Mało tego, liczba sterowań współbieżnych może być również znacznie większa, niż tylko jedno. Przypomnijmy, że norma EN 61131-3 nie precyzuje, ile. Zazwyczaj liczby związane są po pierwsze z potrzebami takich sterowań w danym procesie przemysłowym, oraz po drugie z możliwością hardware oraz software, które będą miały zastosowanie do sterowania tym procesem. W przypadku dysponowania przez programistę oprogramowaniem narzędziowym, które umożliwia programowanie w języku (już) nazywanym metodą SFC, to sprawa jest prosta. Rysujemy graf SFC na ekranie monitora, wstawiamy odpowiednie linie i kropka. Inaczej sprawa wygląda w naszym przypadku, gdy implementujemy algorytm PLC do sterownika w postaci programu PLC napisanego np. przy użyciu metody LAD.
Zaznaczmy, że do utworzenia programu PLC zawierającego sterowanie współbieżne stosujemy te same zasady tworzenia programu PLC jak dla „zwykłego” algorytmu SFC, jednak przy wykorzystaniu pewnych norm i zasad.
Pierwszą zasadą jest to, iż zgodnie z oglądem tego, co jest „pod” pierwszą linią przerywaną (górna na rysunku 64), oznaczającą rozpoczęcie sterowania współbieżnego powinno nastąpić programowe ustawienie znaczników reprezentujących pierwsze kroki wszystkich ciągów w tym sterowaniu współbieżnym. U nas robi to sieć programowa Network 5 (oczywiście po zapaleniu tranzycji złożonej T1_2). Dalej, zgodnie z „prawidłem” algorytmu SFC (nie jest to nowa zasada) powstałe znaczniki likwidują znacznik poprzedni, czyli Kroku nr 0 (sieć programowa Network 6). Drugą zasadą jest to, że w kolejnych sieciach programowych należy umieścić program PLC, który realizuje oddzielnie od pozostałych od początku do końca każdy ciąg algorytmu sterowania współbieżnego. W naszym przypadku na rysunku 64 zauważamy, że w ciągu drugim mam sekwencję kroków, więc sieci programowe Network 7 i Network 8 powyższą zasadę realizują. (W ciągu pierwszym wystąpił tylko pojedynczy krok). Trzecia zasada była już na wstępie wzmiankowana, czyli znaczniki ostatnich kroków w każdym ciągu sterowania współbieżnego biorą udział łącznie z tranzycją „poza” drugą linią przerywaną (dolną) w wyjściu ze sterowania współbieżnego tworząc w naszym przypadku zapętlenie do Kroku nr 0. Pozostałe sieci programowe są tylko użyte do realizacji sterowania urządzeniami wykonawczymi oraz Timerami typu TON.