Przykład programowania PLC w języku drabinkowym - ćwiczenie 6 1. Cel ćwiczenia
Zapoznanie się z podstawowymi elementami języka drabinkowego i zasadami programowania Programowalnych Sterowników Logicznych (Programmable Logic Controller). W ramach ćwiczenia studenci wykonują przykładowe programy na sterownikach.
2. Wykaz aparatury
• Sterownik programowalny typu FX3U firmy Mitsubishi
• Panel operatora firmy Proface
• Oprogramowanie narzędziowe Melsoft FX-TRN-BEG 3. Podstawy programowania w języku drabinkowym
W programie FX Trainer wypieramy przykład F-6. Aby zobaczyć całe urządzenie w opcji Help wybieramy Guidance aby przejść do edycji programu wciskamy Edit Ladder
Naszym zadaniem jest napisanie programu obsługi poniższego obiektu. Wyroby z podajnika (Y0) mają być przetransportowane do pojemników L, M, S w zależności od ich wielkości. Do wykrywania wielkości mamy trzy czujniki optyczne X0, X1, X2. Pozycja wózka wykrywana jest czujnikami dwustanowymi X4, X5, X6. Do załączania taśmociągów służą wyjścia Y5, Y6, Y7 a do wykrywania obecności elementu na taśmociągu odpowiednio wejścia X10-X11, X12-X13, X14-X15. Zakładamy, że taśmociągi transportujące załączone są tylko wtedy gdy jest to potrzebne (element na taśmociągu)
Kolejność podawanych elementów i ich rodzaj można zmienić w opcji Edit / change parts
a) uruchomienie podajnika
Zakładamy, że uruchomienie podajnika (Y0=1) może nastąpić pod warunkiem, że podnośnik znajduje się w dolnym położeniu (X4=1) oraz podnośnik nie jest odwrócony.
Jeżeli załączone jest wejście X24 to podawanie następuje automatycznie. Jeżeli wejście X24 nie jest załączone to możemy wymusić podanie wyrobu ręcznie (X20). Jeżeli włączony jest podajnik to również uruchomiony jest transporter (Y1)
Wyniki porównania musimy zapamiętać
Jeżeli element znajduje się na platformie to uruchomiamy ruch do góry aż do osiągnięcia odpowiedniego dla wielkości elementu czujnika krańcowego. W naszym przypadku ostatnia linia NOT(X4) AND M4 nie jest potrzebna gdyż przenośnik małych elementów jest na tej samej wysokości co podajnik.
Jeżeli element osiągnie zadaną pozycje (w zależności od zmierzonej wysokości) to załączamy obrót (Y4).
Wyłączenie obrotu i powrót do pozycji wyjściowej ma nastąpić dopiero po przetransportowaniu elementu za czujniki obecności elementu na taśmie
Zatrzymanie taśmy powinno nastąpić po przejściu elementu przez czujnik obecności na końcu taśmy (załączenie w tym przypadku następuje dopiero jak element znajdzie się na taśmie (X10) ale można to było zrobić wcześniej np. jak wykryliśmy wielkość elementu (M4)) . Jeżeli element znajduje się na taśmie to kasujemy pamięć wielkości (M4). W związku z tym że czujnik końca taśmy (X11) nie jest na samym końcu musimy opóźnić wyłączenie taśmociągu (T0). X11 działa tylko przez chwilę stąd dodatkowy przekaźnik M11 do podtrzymania.
Dla taśmy elementów średnich pokazano inny sposób załączenia i wyłączenia taśmy
To samo dla elementów dużych
Jeżeli wypakowaliśmy element to możemy powrócić do pozycji dolnej
UWAGA
1. Zmodyfikuj program tak aby po załadowaniu trzech elementów zapaliły się lampki odpowiednio: Y20 – 2 małe, Y21 – 2 średnie, Y22 –2 duże.
2. Jeżeli wszystkich elementów będzie przynajmniej 2 w każdym pudełku, to zatrzymaj proces – ponowne uruchomienie wciśnięciem przycisku x21
3. Zmierz czas potrzebny do transportu poszczególnych elementów od pojawienia się na podnośniku do końca taśmy, zapisz czasy transportu odpowiednio do rejestrów D0, D1, D2.
4. Włącz alarm jeśli czas transportu przekroczy wartość zadaną w rejestrze D5 (Y23 – mruga 0.5s/0.5s) w takiej sytuacji należy zatrzymać podawanie
Ad. 1.
Zadanie to jest proste wystarczy podłączyć liczniki do czujników np. na końcu poszczególnych przenośników
Ad. 2.
Aby wyłączyć podawanie musimy wygenerować nową zmienną, która będzie jedynką jeżeli wszystkie liczniki będą aktywne. Aby można było ponownie uruchomić układ musimy skasować liczniki.
Zmienna ta zablokuje podawanie następnych elementów (wpisujemy ją do już istniejącej linii 0:
Ad.3
Poniżej pokazano przykładową wersję programu do pomiaru czasu transportu. Wadą tej wersji jest to, że jeżeli następny element pojawi się na podnośniku przed zakończeniem transportu poprzedniego to zmierzony czas wynosi 0. Aby poprawić ten błąd trzeba uzyć więcej Timerów – zastanów się jak to zrobić
Ad 4
Jeżeli chcemy sprawdzić czy czas pomiędzy czujnikami obecności nie jest dłuższy od zadanego to możemy wykonać to następująco. Jeżeli TIMER T10 zostanie uruchomiony (załączony zostanie styk T10) to znaczy, że czas przejazdu jest dłuższy niż zadany w D5 a to może oznaczać, że przenośnik nie działa.
Do D5 powinniśmy wpisać wartość początkową np. gdy startuje sterownik (M8002)
Załączenie styku T10 powinno sygnalizować awarię i zatrzymywać podawanie następnych elementów np.
Sygnalizacja przerywanym sygnałem podłączonym do Y10
Bit M8013 jest generatorem impulsów o okresie 1 s (0.5/0.5s)
Przerwanie działania można zrealizować np. przez odcięcie załączenia Y0
Możemy również stykiem T0 załączyć przekaźnik pomocniczy (np. [SET M25]) i ten styk podłączyć w linii 0 zamiast T10. W takim przypadku aby odblokować awarie musimy skasować przekaźnik M25.
Możemy również wykorzystać komparatory (elementy porównujące bo wcześniej zmierzyliśmy czasy
Komparator wpisujemy:
Pamiętać aby nie wykorzystywać wszystkich metod na raz.