Przykład tworzenia programu w języku drabinkowym ( Ladder Diagram - LD ) uruchamiającego po kolei 3 napędy z zachowaniem opóźnień czasowych . Obiektem sterowanym jest układ trzech napędów ( silników ) sterujących taśmociągami pracującymi w jednym ciągu technologicznym.
W artkule tym przedstawimy krok po kroku w jaki sposób napisać program na sterownik firmy LOVATO ELECTRIC serii KINCO.
Aby w możliwie jasny sposób przedstawić zagadnienie w kolejnych krokach pokazujemy rozwiązanie "podstawowe" a następnie dokładamy kolejne elementy z opisem i praktycznym zastosowaniem.
Na potrzeby tego przykładu przyjeliśmy zastosowanie wszystkich sygnałów działających wprost , tzn. - "1" oznacza zaistnienie zdarzenia , "0" nie istnienie danego stanu. ( styki NO - normalnie otwarte )
Bogatą ofertę sterowników PLC małych i dużych znajdziesz w naszym sklepie
Do przetestowania i ćwiczeń polecamy programy umożliwiające symulację np. LOGO! 8 - LOGO! Soft Comfort ( Windows 64 ) , Zelio 2 ZELIO SOFT 2 , EASY E4 EASY-E4 oprogramowanie 7.11 [PL, EN, DE, IT]
iteracja 1.
Dla realizacji opóźnień załączania napędów zastosowano blok czasowy TIMER o działaniu " opóźnione załączenie " , na ilustracji poniżej przedstawiono okno konfiguracji bloku oraz jego działanie.
Realizacja programu na ilustracji poniżej, przy założeniu załączania układu przełącznikiem bistabilnym - sygnał START podawany w sposób ciągły ( brak sygnału to wyłączenie układu ) na wejście I01
Objaśnienia :
Linia 001,002 : Po podaniu sygnału na wejście I01 podawany jest sygnal do załączenie TIMERa 1 ( T01 ) który rozpoczyna odmierzanie nastawionego czasu . jednocześnie ( linia 002 ) jest załączany Napęd 1 przez wyjście "Q01"
Do czasu aż TIMER 1 ( T01 ) odmierzy zadany czas w układzie nic się nie zmienia.
Linia 003, 004: Po odmierzeniu czasu T01 załączany jest TIMER 2 ( T02 ) i jednocześnie ( linia 004 ) jest załączany Napęd 2 przez wyjście "Q02"
Do czasu aż TIMER 2 ( T02 ) odmierzy zadany czas w układzie nic się nie zmienia.
Linia 004, 005: Po odmierzeniu czasu T02 załączany jest Napęd 3 przez wyjście "Q03"
W ten sposób uruchomione zostały wszystkie napędy w okręślonych odstępach czasowych . Brak sygnału START ( na I01 ) w dowolnym momencie spowoduje wyłączenie wszystkich wyjść oraz zresetowanie TIMERów.
iteracja 2 :
Załączanie układu sygnałem ciągłym ( przełącznikiem ) z powodów bezpieczeństwa może być mocno kłopotliwe , np po zaniku napięcia uklad się wyłączy jednak po jego powrocie załączy się samoczynnie co w przypadku taśmociągów może być sytuacją niepożądaną.
Dlatego poniżej modyfikujemy nasz program do sterowania poprzez przyciski chwilowe ( monostabilne ), I tak na wejście I01 podajemy teraz sygnał z przycisku START a na I02 sygnał z przycisku STOP . wykorzystujemy również dodatkowo MARKER M01 .
MARKER to komórka pamieci sterownika, która przechowuje przypisaną wartość ( tak jak np wyjścia Ox, jednak nie powiązana z żadnym elementem fizycznym )
Objaśnienia :
Jak widać zmianie uległ tylko początek programu. Działanie opisujemy poniżejj .
Cykl 1 Linia 001 : Sterownik jako pierwszy odczytuje stan wejścia I02 ( STOP ) sygnał zostaje zanegowany czyli przy stanie "0" po lewej I02 po prawej pojawi się sygnał "1" następnie odczytuje wejście I02 ( START ) i przy stanie '1" ustawia Marker M01 na "1" - załączony .
Cykl 1 Linia 002 : Odczytywany jest stan Markera M01
Cykl 2 : W kolejnym cyklu Marker M01 pozostanie załączony mimo braku sygnału na I01 ( START ) ponieważ - za sprawa lini 002 sam się "podtrzyma" .
Tutaj widać również, że bez względu na stan wejścia I01 ( START ) i Markera M01 przy podaniu sygnału na wejście I02 ( STOP ) i jego odwróceniu Marker M01 zostanie ustawiony na "0". W ten sposób Marker M01 stał się sygnałem do załączenia układu co wykorzystujemy w lnii 003.
Działanie dalszej części programu jest identyczne z iteracją 1
Teraz nasz układ po zaniku napięcia do uruchomienia bedzie wymagał ponownego wciśniącia przycisku START.
iteracja 3
Teoretycznie nasz program mógłby być już zastosowany w praktyce, jednak należy uwzględnić dodatkowe aspekty działania w praktyce . dlatego wykorzystamy dodatkowe wejścia sterownika dla sygnałów o błędzie / awarii posczególnych napędów np. ze styków pomocniczych wyłączników silnikowych zabezpieczających napędy . I tak I03 - awaria napędu 1 , I tak I04 - awaria napędu 2, I tak I05 - awaria napędu 3
Jak widać powyżej zmiany w programie dotyczą linii 004, 006 oraz 007. Dadane wejścia I03, I04 oraz I05 są zanegowane - ozancza to że wyjścia będą mogły być załączane tylko wtedy gdy nie będzie sygnału o błędzie / awarii poszczególnych napędów.
iteracja 4
Jak wspomniano wcześniej program dotyczy realnego obiektu - trzech taśmociągów pracujących w ciągu jednej linii technologicznej, często w takim przypadku wymagane jest uzależnienie załączenia kolejnego napędu od pracy poprzedniego. Poniżej rozwiązanie :
Objaśnienia ;
Jak widać zmiany w programie dotyczą linii 006 oraz 007 . Dołożono uzależnienie załączenia napędu 2 ( Wyjście Q02 ) od załączenia Napędu 1 ( Wyjście Q01 ) oraz Napędu 3 ( Wyjście Q03 ) od załączenia Napędu 2 ( Wyjście Q02 ). Załączenie Napędu 1 ( wyjście Q01 ) w tym przypadku jest wymagane dla załązenia dwóch pozostałych.
iteracja 5
Biorąc pod uwagę specyfikę założonego obiektu - tośmociągów w jednej linii technologicznej - dużo częściej jednak ( niż w iteracji 4 ) potrzebne jest załączanie poszczególnych odcinków "od końca" oraz uzależnianie załączania kolejnego od poprzedniego a nie na odwrót.
W linii 004 zamieniamy wyjście Q01 na Q03 oraz informacje o błędzie / awarii z I03 na I05 ( Błąd N3 ),
W linii 006 zmieniamy uzależnienie załączenia z Q01 ( Napęd 1 ) na Q03 ( Napęd 3 )
W linii 007 wyjście Q03 na Q01 oraz informacje o błędzie / awarii z I03 na I05
Przedstawiono to na ilustracji poniżej.
Podsumowanie .
Program z powyższego artykułu realizuje poniższe funkcje ;
- Załączanie z opóźnieniem czasowym kolejnych 3 napędów od "początku" ( iteracja 4 ) lub od końca ( iteracja 5 ) z uwzględnieniem możliwości pracy odpowiedniego ( następnego / poprzedniego ) napędu.
- Sterowanie przyciskami monostabilnymi
- Uwzględnia awarię / błędy napędów.
W kolejnych artykułach - kolejne iteracje, między innymi wyświetlanie informacji o aktualnym stanie, czasu do załączenia,awarii napędów na wyswietlaczu , ingerencja w pracę programu poprzez klawiaturą wyświetlacza , itd.
Niniejszy artykuł służy jedynie celom edukacyjnym i tak należy go traktować. Użycie jakichkolwiek zawartych w nim informacji do celów komercyjnych w szczególności do sterowania rzeczywistym obiektem wymaga znajomości przedmiotu i posiadania odpowiednich kwalifikacji i uprawnień. Serwis www.e-automatyka.sklep.pl jak i właściciel serwisu firma E-AUTOMATYKA nie bierze odpowiedzialności za użycie zawartych w niniejszym artykule informacji w celach innych niż edukacyjne.