Temat ćwiczenia: STEP 7/MicroWin 32 - WPROWADZENIE Nr ćwiczenia - S_1 Cel ćwiczenia Nabycie umiejętności instalowania i okablowania oraz poznanie trybów pracy sterownika: SF, RUN, STOP. Poznanie podstawowych możliwości programu narzędziowego STEP7/MicroWin: 1.Tworzenie projektu: - uruchamianie i zaznajomienie z programem STEP-7/MicroWin - wybór jednostki centralnej (patrz sterownik np. CPU212) - edytor LAD korzystanie z gotowych elementów graficznych edytora - edytor STL lista instrukcji - edytor FBD bloki funkcyjne 2. Pisanie funkcji dokumentacyjnych projektu. 3. Przesyłanie programu do sterownika 4. Uruchomianie sterownika i testowanie programu użytkowego. Wyposażenie stanowiska - komputer PC - sterownik S7-200 - symulator stanów wejściowych sterownnika - instrukcja ćwiczenia - zestaw instrukcji oprogramowania SIMATICA - katalogi Przebieg ćwiczenia Ćwiczenie wykonać według załączonej instrukcji. Przeprowadzone ćwiczenia dokumentować na dyskietce i w zeszycie do pracowni. Ćwiczenie zakończyć zredagowniem wniosków. -1-
1. Sterownik programowalny PLC w układzie sterowania Każdy układ sterowania ze sterownikiem programowalnym składa się z: czujników, elementów wykonawczych, sterownika programowalnego (PLC) Czujniki przyłącza się do wejść sterownika i ich stan ma wpływ na stan wyjść. Czujniki to m.in wyłączniki krańcowe, przyciski, termoelementy, czujniki zbliżeniowe, łączniki itp. Elementy wykonawcze przyłącza się do wyjść oraz do modułów wyjśiowych sterownika. Są to takie elementy jak styczniki, elektrozawory, przekaźniki, lampki sygnalizacyjne itp. Sterownik programowalny składa się z jednostki centralnej (CPU), modułów wejść i wyjść oraz interfejsu operatora. SIMATIC S7-200 jest urządzeniem kompaktowym z określoną liczbą wejść i wyjść wbudowanych na CPU. Sterownik może być modularnie rozszerzany. Sterownik pracuje cyklicznie, na początku każdego cyklu przetwarzania stany modułów wejściowych są odczytywane i zapisywane do pamięci wejść procesowych (PII). Pamięć wejść procesowych jest specjalnym obszarem pamięci w sterowniku programowalnym. Na końcu przetwarzania cyklu programu wyniki przetwarzania są przekazywane do pamięci wyjść procesowych (PIQ). Każdy cykl programu kończy ustawieniem wyjść fizycznych sterownika. Po zakończeniu cyklu następuje rozpoczęcie następnego. Jednostka centralna sterownika przetwarza sygnały wejściowe zgodnie z poleceniami zapisanymi w programie użytkowym. Cykl obejmuje odczyt wejść, jedno przetworzenie programu użytkowego i zapis do wyjść. W trakcie przetwarzania programu realizowana jest autodiagnostyka i obsługa komunikacji. Moduły wyjść przetwarzają sygnały przychodzące z programu użytkowego na sygnały wyjściowe, takie jak napięcia, prądy, czy też stan styków przekaźników wyjściowych sterownika. 2. Parametry techniczne sterownika SIMATIC S7-200 z jednostką CPU-212. -2-
Jednostka centralna CPU-212 wer. 0 ma wbudowane 8 wejść dwustanowych oraz 6 wyjść dwustanowych. Wejścia (zaciski na dole) - do podłączenia 8 czujników - wejścia dwustanowe 24V/0V Wyjścia (zaciski na górze) - do podłączenia 6 elementów wykonawczych (styki przekaźników sterownika 5-30 VDC, 250 VAC, 2A) Przełącznik trybu pracy: - RUN (wykonywanie programu), - STOP (program nie jest wykonywany), - TERM (terminal - w tej pozycji przełącznika możliwa komunikacja sterownik - pogram STEP7/Micro/Win -z możliwością wyboru trybu pracy RUN lub STOP z PC lub programatora. Diody LED sygnalizujące stan CPU - SF - błąd systemowy (czerwona). - RUN - tryb pracy RUN (zielona), - STOP -tryb pracy STOP (żółta). Potencjometry analogowe (tylko dla CPU 212 wersja1 ) - do realizacji zadań analogowych. Interfejs programatora - interfejs RS 485 z możliwością wyboru protokołu wymiany danych: - protokół PPI - 9600 bodów, - protokół port swobodny - 300 do 19200 bodów, Zasilanie dla czujników - zintegrowany zasilacz dla czujników 24 V (20,4-28,8 V, 180 ma ) Zasilanie sterownika - 220V,50Hz Pamięć danych - ok. 500 instr.(1 kb) -3-
Czas wykonywania instrukcji binarnych -1,3 ms/1k instr.. Znaczniki - 128 Liczniki / timery - 64 / 64 Liczniki szybkie - 1 programowy (2kHz) Kondensator podtrzymujący dane min/typowo - 8 / 50 godz.. Do pamięci danych sterownika kopiowany jest cały program użytkowy przy pomocy programatora lub komputera PC. Pamięć danych jest podtrzymywana specjalnym kondensatorem lub baterią. Schemat układów we/wyj sterownika. Sterownik S7-212 jest przedstwicielem rodziny SIMATIC S7-200. Są to sterowniki o budowie kompaktowej. Do tej rodziny należą także między innymi S7-212, 214, 215, 216 i -4-
obecnie najnowsze 221, 224, 226 i 226XM. Jednostka podstawowa może być rozszerzona poprzez przyłączenie modułów z dodatkowymi wejściami i wyjściami cyfrowymi i analogowymi. Możliwości rozszerzenia mogą być różne dając odpowiedni przydział adresów i tak np.: IB0 - bajt wejściowy (wejścia wbudowane na jednostce centralnej)- osiem bitów I0.0 - I0.7, do których można przyłączyć osiem typu czujniki. QB0 - bajt wyjściowy ( wyjścia wbudowane na jednostce centralnej) - tylko sześć bitów Q0.0 Q0.5, do których można przyłączyć sześć elementów wykonawczych EM221 - moduł wejściowy ( bajt IB1) EM223 - moduł wejściowy ( bajt IB1) i wyjściowy ( bajt QB1) EM235 - moduł analogowy wejściowy (trzy wejścia - słowa AIW0, AIW2, AIW4) i wyjściowy (słowo AQW0) Program przetwarzany jest przez procesor jednostki centralnej cyklicznie. Po wykonaniu ostatniej instrukcji procesor ponownie rozpoczyna procedurę przetwarzania od początku. 3. Organizacja pamięci sterownika Argumenty rozkazów to głównie adresy okerślonych obszrów pamięci oraz stałe zapisane w odpowiednim formacie. Adres składa się z identyfikatora obszaru pamięci, formatu oraz kolejnego numeru z zakresu tego obszaru. Identyfikatory poszczególnych obszarów pamięci to: V - pamięć danych, I - rejestrów wejściowych, Q - rejestrów wyjściowych, M - obszaru znaczników, SM - specjalnego obszaru pamięci, T - timerów, C - liczników, AI - wejść analogowych, AQ - wyjść analogowych, AC - rejestrów akumulatora i HC - liczników szybkie. Za idetyfikatorem obszaru pamięci występuje symbol informujący o wielkości komórki (format). Te symbole to: -5-
B - bajt-b, W słowo, D - podwójne słowo Organizację pamięci danych (obszar z identyfikatorem V) przedstawia poniższy rys. Każdy bajt to osiem bitów, które mają swoje adresy i tak np. Bajt VB10 Słowo VW12 Podwójne słowo VD8 W języku STEP-7/MicroWin stałe mogą występować w postaci: a) dziesiętnej - np. 207 b) binarnej - np. 2#01011001 c) hex - np. 16#0F d) ASCII - np. Text -6-
4. Edytory języka STEP 7 /Micro Win. Konwencjonalne, najprostsze układy sterowania, stosowane od dawna w różnych układach automatyki to szeregowo lub równolegle połączone styki poprzez które, podaje się potencjał na cewki lub inne elementy wykonawcze. Realizację zadania sterowania przy pomocy PLC należy przeprowadzić przydzielając najpierw wejścia i wyjścia sterownika programowalnego dla poszczególnych czujników i elementów wykonawczych. Programowanie sterowników będzie realizowane przy pomocy komputera i programu STEP- 7/MicroWin. W czasie ćwiczeń będą wykonywane kolejne projekty, które należy zapisywać na dyskietce w określonym porządku. Na każdym ćwiczeniu zakładamy katalog o tej samej nazwie ale za każdym razem z kolejnym numerem. W każdym katalogu będą zapisywane projekty realizowane w czasie danego ćwiczenia. Aby uruchomić program STEP7 Microwin32 należy kliknąć ikonę Uruchomiony program umożliwia przy pomocy przycisków umieszczonych na górnym pasku narzędzi napisanie nowego projektu, otwarcie napisanego projektu oraz wybór trybu pracy sterownika RUN lub STOP (przy ustawionym mikroprzełączniku sterownika w pozycji TERM). Nowy projekt Otwórz projekt RUN STOP W tym celu możemy również posłużyć się zestawem menu: File New File Open... oraz PLC RUN PLC STOP Menu PLC umożliwia również między innymi czyszczenie pamięci sterownika: kasowanie programu użytkownika znajdującego się w strowniku ( Clear... ), wybór typu jednostki centralnej (Type.. np. CPU212), i ściągnięcie informacji o konfiguracji sterownika (Information...) -7-
Menu View pozwala na wybór edytora STL, Ladder lub FBD. 5. Edytor LAD. W menu File wybieramy New (nowy projekt) oraz wybieramy odpowiednią jednostkę centralną PLC Type. Korzystając z menu STEP7Microwin. View można dokonać odpowiednich ustawień w porgramie -8-
Wybór edytora Wyświetlanie dodatkowych dodatkowych, pomocniczych okien z lewej strony okna edytora Zacznijmy od prostej konfiguracji programu, a mianowicie pozostawmy tylko okno Instrucion Tree rozwijając w nim menu Insruction. W związku z tym okno programu STEP7/Micro/Win32 z edytorem LAD będzie wyglądało jak na poniższym rys. -9-
Przyjrzyjmy się górnemu paskowi narzędzi programu. Wstawianie symboli można realizować korzystając z okna Instrucion Tree po rozwinięciu menu a następnie Tą drogą mamy dostęp do wszystkich instrukcji bitowych. Symbole graficzne w edytorze LAD są analogiczne jak stosowane w schematach sterowania stycznikowo-przekaźnikowych. Podstawowe symbole graficzne stosowane w edytorze LAD to: -10-
6. Pierwszy projekt połączenie szeregowe iloczyn logiczny. Celem ćwiczenia w tym punkcie jest nabycie umiejętności pisania projektu w edytorze LAD. Do tego celu posłużymy się schematem prostego układu sterowania. Po zamknięciu przełączników S1 i S2 powinna zaświecić się lampka H1. Przełączniki S1 i S2 ( są czujnikami) w programie muszą otrzymać adresy pozwalające je jednoznacznie rozróżnić. Adres przełącznika jest określony przez sposób podłączenia do sterownika. Przełącznik S1 ma będzie przyłączony do wejścia I0.0 a przełącznik S2 do I0.1.Lampka H1 jest elementem wykonawczym i musi być podłączona do wyjścia Q0.0 sterownika. -11-
Program w edytorze LAD dla powyższego schematu zajmuje jeden segment (Network 1). Zapisany program powstaje automatycznie w edytorze STL i FBD. W edytorze STL program to zestaw instrukcji. Podstawowe instrukcje to: LD adr_bitu ładuj na stos stan bitu LDN aadr_bitu - ładuj na stos zanegowany stan bitu A adr_bitu iloczyn logiczny bitu podanego w instrukcji z bitem na szczycie stosu (wynik zostanie umieszczony na szczycie stosu na miejscu bitu, który brał udział w tej operacji) AN adr_bitu iloczyn logiczny zanegowanego bitu podanego w instrukcji z bitem na szczycie stosu (wynik zostanie umieszczony na szczycie stosu na miejscu bitu, który brał udział w tej operacji) = adr_bitu kopiuj stan szczytowego bitu stosu na adr_bitu wskazany w instrukcji Połączenie szeregowe w edytorze LAD odpowiada instrukcji iloczynu, natomiast równoległe instrukcji sumy. W edytorze FBD program jest przedstawiony w postaci bloku funkcyjnego z dwoma wejściami i jednym wyjściem. W bloku realizowana jest funkcja iloczynu logicznego AND. -12-
Na tym zakończymy pierwszy program (projekt). Zapiszmy (File Save As...) go na dyskietce we wcześniej założonym katalogu (np. AK_S1)w pliku o dowolnej nazwie i zamknijmy File Close. Projektu nie przesyłamy do sterownika zapoznajemy się z edytorami programu STEP7- Microwin. 7. Zadanie 1 - połączenie równoległe suma logiczna. Celem tego punktu ćwiczenia jest kontynuacjca zapoznawania się z edytorami języka STEP7/MicroWin Postępując podobnie jak w punkcie 7 należy napisać kolejny program w dowolnym edytorze, w którym będzie połączenie równoległe ( np. zmienić schemat tak by przełączniki S1 i S2 były połączone równolegle a więc lampka H1 powinna świecić się po załączeniu przełącznika S1 lub S2 jak również przy załączeniu ich obu). Połączenie równoległe w LAD to w edytorze STL instrukcja O - suma logiczna ( OR). Zapoznać się z wersjami programu we wszystkich edytorach, zapisać program i zamyknąć go. W dalszym ciągu projektu nie przesyłać do sterownika ćwiczymy biegłość w posługiwaniu programem STEP7-Microwin. W tym momencie mamy w naszym katalogu dwa projekty. 8. Zadanie 2. Napisać trzeci program, korzystając z dowolnego edytora. Ten program od poprzednich będzie się różnił tym, że będzie się składal z co najmniej trzech segmentów. Np. : Network 1- połączenie szeregowe kilku elementów wejściowych ustawia wyjście Q0.0 Network 2 połączenie równoległe kilku elementów wejściowych ustawia wyjście Q0.1 Network 3 połączenie mieszane (szeregowo- równoległe) kilku elementów wejściowych ustawia wyjście Q0.2. Zapoznamy się z wersjami programu we wszystkich edytorach, zapisujemy program, ale nie zamykamy i przechodzimy do realizacji kolejnego punktu instrukcji, pozwalającego uzupełnić projekt o niezbędne funkcje dokumentacyjne. 9. Funkcje dokumentacyjne. Każdy program powinien być wyposażony w funkcje dokumentacyjne: nazwa i opis projektu, tytuły oraz komentarze segmentów, symbole elementów przyłączonych do we/wy sterownika. Wprowadzimy teraz do zadania z punktu 9 funkcje dokumentacyjne. Nazwę i opis projektu realizujemy korzystając View Properties.. pojawi nam się okno, w którym w poszczególnych polach wpiszemy nazwę projektu, nazwisko autora oraz krótki komentarz dotyczący projektu. -13-
Tytuły oraz komentarze segmentów (NETWORK ) projetku. Np. w edytorze LAD można tą funkcję wywołać klikając na to pole Pojwai się okno, które stosownie do treści zadania wypełnimy np. : I tak, tytuły poszczególnych segmentów mogą mieć treść zgodną z poleceniem na początku zadania. Będą one widoczne we wszystkich edytorach. Uwaga W edytorze STL możemy pisać dodatkowo komentarze w dowolnym miejscu po znaku //. Symbole elementów przyłączonych do sterownika dotyczą czujników ( przyłączanych do wejść sterownika) i elementów wykonawczych (przyłączanych do wyjść sterownika), które oprócz adresów (miejsc ich przyłączenia do sterownika takich jak I0.0, I0.1, Q0.0, itp.) mogą otrzymać adresy symboliczne związane z ich opisem na -14-
obiekcie sterowania. Tworzymy je rozwijając w oknie Project1 ÞSymbol Table. Instrukction Tree menu Po kliknięciu na menu pojawi się okno w którym wpiszemy, w kolumnie Name kolejno symbole i tak np. dla przykładu z punktu 7 będą to: S1, S2, H1 i odpowiednio w kolumnie Address adresy: I0.0, I0.1, Q0.0. Kolumna Comment pozwala wprowadzić dodatkowe opisy, co ma znaczenie przy dużych projektach. Oczywiście w zadaniu, które realizujemy samodzielnie będą odpowiednio symbole i adresy takie, jakie zostały zastosowane, a komentarz wg własnej inwencji. Po napisaniu funkcji dokumentacyjnych, korzystając z menu View Symbolic Addresing możemy zmienić adresy na symboliczne. Podobnie jak program pisany w jednym edytorze automatycznie tworzony jest w drugim, również funkcje dokumentacyjne powstają automatycznie w pozostałych edytorach. Zapoznaj się z ich wersją. Napisany projekt zapisz, ale nie zamykaj. Teraz przejdziemy do ładowania projektu do sterownika, a następnie do testowania. 10. Przesłanie programu do sterownika, uruchomienie i testowanie. 10. 1. Ładowanie programu do sterownika powinno odbywać się przy sterowniku w trybie STOP oraz po wcześniejszym wyczyszczeniu pamięci CPU sterownika (wykasowaniu znajdującego się tam programu). Czyszczenie pamięci sterownika wykonujemy korzystając z menu w górnym pasku narzędzi PLC Clear... 10. 2. Napisany program załadować do sterownika. Zadanie to można zrealizować -15-
używając przycisk z górnego paska narzędzi lub korzystając z menu File Download. Po wywołaniu tej funkcji pojawi się okno, w którym należy zaznaczyć bloki do załadowania (na tym etapie jest to tylko Program Block). Klikamy OK. Po chwili zgłosi się komunikat, że program załadowany, który należy to potwierdzić OK. 10. 3. Uruchomianie sterownika. Po załadowaniu programu możemy przejść do uruchomienia sterownika i testowania programu. Zadanie to można wykonać używając przycisk z górnego paska narzędzi lub korzystając z menu PLC RUN, lub z przycisku funkcyjnego. 10. 4. Testowanie programu. Testowanie programu przeprowadzimy na stanowisku laboratoryjnym. Stanowisko laboratoryjne do ćwiczeń składa się z komputera PC, sterownika S7-212 - 1BA00-0XB0 oraz symulatora czujników (zadajnika stanów sygnałów wejściowych podawanych na wejścia I0.0 I0.7). Przy pomocy zadajnika podawane jest na określone wejście napięcie 24V DC z zasilacza sterownika. Stan wysoki (jedynka logiczna) zadany symulatorem na określonym wejściu jest sygnalizowany świeceniem diody na sterowniku. Układ połączeń stanowiska laboratoryjnego przedstawia poniższy rysunek. -16-
Można teraz przy pomocy symulatora zmieniać stan sygnałów wejściowych sterownika i testować działanie programu obserwując stan diod sygnalizujących stany wyjść sterownika. Język STEP-7/MicroWin udostępnia funkcje pomocne przy testowaniu działania programu. Jedna z tych funkcji dla edytora LAD i FBD to w menu Debug Program Status. Funkcja monitoruje na bieżąco w trakcie działania sterownika stan rejestrów, komórek pamięci i funkcji, zaznaczając między innymi kolorowo na schemacie drabinkowym styki i wyjścia w stanie 1, oraz pokazując zawartości rejestrów występujących na schemacie. Inną funkcją pomocną przy testowaniu jest funkcja, która znajdziemy w górnym pasku narzędzi w menu View Status Chart. Po wywołaniu tej funkcji pojawia się okno z tabelą, którą powinniśmy wypełnić wpisując w kolumnie Address adresy linii wejściowych i wyjściowych, które zostały wykorzystane w projekcie. W kolumnie tej można wpisywać również adresy całych rejestrów wejściowych i wyjściowych oraz innych rejestrów i komórek pamięci wykorzystywanych w projekcie, jeżeli istnieje taka potrzeba w czasie testowania. W kolumnie Format możemy wybrać format w jakim chcemy śledzić zawartość rejestrów ( binarny, hex, dziesiętny, itp.). I tak dla przykładu niżej podano wypełnienie takiej tabeli. Wypełnioną tabelę uaktywniamy przyciskiem na górnym pasku narzędzi Dodatkowo funkcja ta umożliwia programową zmianę stanu bitu lub zawartości rejestrów -17-
poprzez wpisanie żądanej wartości w kolumnie New Value i wymuszenie jej przciskiem na górnym pasku narzędzi Poniżej obraz okna z wymuszonym programowo stanem wejścia I0.0. Odblokowanie tego stanu można wykonać przyciskiem Korzystając z powyższych funkcji należy sprawdzić i przetestować działanie napisanego programu. 11. Zadanie kontrolne (NIE ROBIMY!!!) Na podstawie wiadomości, z którymi należało się zapoznać w trakcie ćwiczenia napisz program w dowolnym edytorze realizujący następujące zadanie. Przeprowadzić syntezę układu kombinacyjnego, którego warunki pracy podano poniżej w tabeli.w zależności od stanu na czterech wejściach sterownika ( A, B, C, D) stan dwów wyjść (X,Y) ma przyjmować odpowiednie wartości wg niżej podanej tabeli: A B C D X Y -18-
0 0 0 0 ф 1 0 0 0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 ф 0 0 1 1 1 1 ф 1 0 0 0 1 1 1 0 0 1 ф 1 1 0 1 0 0 ф 1 0 1 1 0 0 1 1 0 0 1 ф 1 1 0 1 ф ф 1 1 1 0 ф 1 1 1 1 1 1 1 ф - stan obojętny Przed napisaniem programu należy ustalić adresowanie: wejścia Adress Name I0.0 A I0.1 B I0.2 C I0.3 D wyjścia Q0.0 X Q0.1 Y Przy pomocy siatki zależności (tablic Karnaugha) wyprowadzić wzory na wyrażenia: X(A, B, C, D) =? Y(A, B, C, D) =? Wprowadzić funkcje dokumentacyjne. Przetestować program korzystając z funkcji testujących. -19-