Podręcznik programowania Aeg Scn71800s0

Podręcznik programowania Aeg Scn71800s0 to kompletny przewodnik dotyczący programowania tego systemu. Zawiera szczegółowe informacje i instrukcje dotyczące instalacji, konfiguracji i użytkowania systemu. Zawiera również szczegółowe informacje o wszystkich funkcjach, które może wykonywać system. Podręcznik zawiera również informacje o tym, jak korzystać z najnowszych aktualizacji systemu, jak korzystać z narzędzi do monitorowania i diagnostyki oraz jak utrzymywać system w dobrym stanie. Podręcznik jest przydatny dla osób, które chcą poznać system i w pełni wykorzystać jego możliwości.

Ostatnia aktualizacja: Podręcznik programowania Aeg Scn71800s0

IN2) * IN3) bez względu na typ danych. Formułę matematyczną można wprowadzić w pasku formuły. Rysunek 2-14: Polecenie CALCULATE i pasek formułyWskazówka Więcej informacji można znaleźć w pomocy Online dla TIA Portal. Zalety • Wywołanie formuły matematycznej za pomocą jednego polecenia • Prosta konfiguracja pozwala zaoszczędzić czasWłaściwości Obsługuje sekwencje bitowe, liczby całkowite oraz liczby zmiennoprzecinkowe • • Obsługuje wiele funkcji matematycznych (wszystkie podstawowe działania arytmetyczne, funkcje trygonometryczne, zaokrąglanie, logarytmy itp. ) • Można rozszerzyć ilość wejśćZalecenia • Zawsze korzystaj z polecenia CALCULATE dla działań matematycznych, zamiast poleceń takich jak np. ADD, SUB, itp. 2. 9. 2 Polecenia MOVE W ramach STEP 7 (TIA) można skorzystać z następujących poleceń typu MOVE. Polecenie MOVE_BLK_VARIANT zostało dodane dla sterowników S7-1200/S7150026 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001752 Nowości w S7-1200/1500 2. 9 PoleceniaTabela 2-16: Polecenia typu „Move” Polecenie Zastosowanie WłaściwościMOVE Kopiowanie • Kopiowanie zawartości parametru na wartości wejściu IN do parametru na wyjściu OUT. Kopiowanie • tablicy • Parametry na wejściu oraz wyjściu muszą być tego samego typu. MOVE_BLK • Parametry mogą być również Kopiowanie kilku • zmiennymi uporządkowanymi obszarów (dane PLC). • Kopiowanie kompletnych tablic i struktur. • • Kopiowanie zawartości tablicy do innej tablicy. UMOVE_BLK Kopiowanie • tablicy bez • Tablica źródłowa oraz docelowa muszą przerwania być tego samego typu. MOVE_BLK_VARIANT Kopiowanie • Kopiowanie całych tablic oraz struktur. (wyłącznie dla S7- tablicy1500) • Kopiowanie poszczególnych elementów tablicy. Dodatkowo, można określić • ilość kopiowanych elementów oraz • element, od którego rozpocząć kopiowanie. Serialize Kopiowanie •(wyłącznie dla S7- danych • Kopiowanie zawartości tablicy bez1500) uporządkowany ryzyka przerwania procesu przez OB. ch do tablicy binarnej Tablica źródłowa oraz docelowa muszą być tego samego typu. Deserialize Kopiowanie •(wyłącznie dla S7- danych z tablicy • Kopiowanie jednej lub kilku zmiennych1500) bajtu do jednej uporządkowanych (dane PLC). lub kilku struktur Rozpoznawanie typów danych podczas wykonywania programu. Szczegółowe raportowanie błędów. Obsługa danych PLC, tablic oraz bloków danych w tablicy. Łącznie kilku rekordów danych w pojedynczą tablicę binarną, oraz przesyłanie jej do innych urządzeń w postaci komunikatu. Przesyłanie parametrów wejściowych oraz wyjściowych jako danych typu Variant. Wykorzystanie urządzenia I-Device: Urządzenie I device odbiera kilka rekordów danych, które są następnie kopiowane do innych struktur. Łączenie kilku rekordów danych w pojedynczą tablicę binarną oraz kopiowanie jej do innych struktur. PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 27OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011752 Nowości w S7-1200/1500 Rysunek 2-15: Polecenia: serialize oraz deserialize (wyłącznie dla S7-1500) Tablica binarna Struct3 [0.. 7] Struct2 Bajt0 Struct1 Bajt1 Int. Real. Uint.. Bajt7.. Polecenie Polecenie serialize deserializeZalecenia • Istnieją istotne różnice pomiędzy poleceniami MOVE, MOVE_BLK oraz MOVE_BLK_VARIANT – Polecenie MOVE służy do kopiowania całych struktur. – Polecenie MOVE_BLK służy do kopiowania fragmentów tablicy zawierającej dane o znanym typie. – Polecenie MOVE_BLK_VARIANT służy do kopiowania fragmentów tablic, których typ danych zostanie określony dopiero w trakcie wykonywania programu. Wskazówka UMOVE_BLK: Proces kopiowania nie może zostać przerwany przez system operacyjny. Czas reakcji CPU na sytuacje awaryjne może zostać wydłużony podczas wykonywania polecenia „Copy array without interruption”. Pełen opis polecenia MOVE można znaleźć w pomocy online dla TIA Portal. Wskazówka Więcej informacji można znaleźć w poniższych pozycjach: Kopiowanie obszarów pamięci w STEP 7 (TIA Portal) http://support. automation. siemens. com/WW/view/en/5988670428 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001752 Nowości w S7-1200/1500 2. 9 Polecenia2. 3 Polecenia VARIANT (wyłącznie dla S7-1500) Tabela 2-17: Polecenia „Move” Polecenie Zastosowanie Właściwości Polecenia „MOVE” Odczyt wartości Pozwala odczytać wartość zmiennej VariantGet wskazywanej przez VARIANT. Pozwala zapisać wartość zmiennej VariantPut Zapis wartości wskazywanej przez VARIANT Listy Zliczanie elementów Pozwala zliczyć elementy tablicy CountOfElements wskazywanej przez VARIANT Porównanie poleceń Określanie typu Pozwala wywołać typ danych TypeOf() danych zmiennej wskazywanej przez (tylko w SCL) VARIANT Określanie typu TypeOfElements() danych tablicy Pozwala wywołać typ danych (tylko w SCL) elementów tablicy wskazywanej przez VARIANTWskazówka Więcej poleceń typu VARIANT można znaleźć w pomocy online dla TIA Portal. 4 Polecenie RUNTIME Polecenie „RUNTIME” służy do zmierzenia ile czasu potrzeba do wykonania całego programu, pojedynczych bloków lub sekwencji poleceń. Polecenie to pojawia się w językach SCL (S7-1200/S7-1500) oraz STL (S7-1500). Wskazówka Więcej informacji można znaleźć w poniższych pozycjach: Jak zmierzyć czas wykonania części/całego programu w S7-1200/S7-1500? http://support. com/WW/view/en/87668318PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 29OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011752 Nowości w S7-1200/15002. 10 Symbole i komentarze2. 10. 1 Środowisko programowaniaZalety Aby zwiększyć czytelność kodu, można skorzystać z dodatkowych oznaczeń takich jak komentarze oraz nazwy symboliczne. Oznaczenia te zostają wgrane razem z kodem bezpośrednio do sterownika. Rozwiązanie to skraca czas serwisowania zakładu, gdy nie ma dostępu do projektu w wersji offline. Zalecenia • Sięgnij po komentarze, aby zwiększyć przejrzystość kodu. Komentarze zbiorcze dla networków (sieci) widoczne są nawet, gdy podgląd jest zwinięty. • Stwórz kod, który będzie czytelny dla pozostałych programistów. Poniższy przykład przedstawia paletę komentarzy do twojej dyspozycji. Przykład Poniższy obrazek przedstawia komentarze dostępne w edytorze LAD (te same funkcje dostępne są dla edytora FDB). Rysunek 2-16: Wstawianie komentarzy w programie użytkownika (LAD) 1 2 3 4 Można skorzystać z następujących komentarzy: 1. Komentarz blokowy 2. Komentarz dla sieci (nagłówek) 3. Komentarz szczegółowy 4. Komentarze do poleceń, bloków oraz funkcji (np. otwórz, zamknij itp. )30 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001752 Nowości w S7-1200/1500 2. 10 Symbole i komentarze Komentarze w językach SCL oraz STL, muszą być poprzedzone znakiem // w każdym rzędziePrzykład Poziom napełnienia:= Promień * Promień * PI * wysokość; // oblicza poziom napełnienia średniego zbiornikaWskazówka Więcej informacji można znaleźć w poniższych pozycjach: Dlaczego nagłówki oraz komentarze nie są wyświetlane po otwarciu projektu w edytorze bloków w STEP 7 (TIA Portal)? http://support. com/WW/view/en/419955182. 2 Komentarze w watch tableZalety • Komentarze można również dodać w wierszach watch table. Zalecenia • Uporządkuj watch table dodając komentarze w wierszach. • Używaj komentarzy również dla pojedynczych zmiennych. Przykład Rysunek 2-17: Watch table ze wstawionymi komentarzamiPPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 31OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011752 Nowości w S7-1200/15002. 11 Stałe systemowe Elementy sprzętowe oraz oprogramowanie sterowników S7 300/400 są identyfikowane za pomocą adresów logicznych oraz diagnostycznych. Sterowniki S7-1200/1500 wykorzystują do tego stałe systemowe. Elementy sprzętowe oraz oprogramowanie (np. interfejsy, moduły, bloki organizacyjne) mają własną stałą systemową, która została wygenerowana automatycznie podczas instalacji. Zalety • Wywołuj moduły korzystając z przypisanej mu nazwy, a nie identyfikatora sprzętowego. Zalecenia • Aby ułatwić rozpoznanie, zawsze przypisuj modułom nazwy związane z pełnioną przez nie funkcją. Przykład Poniższy przykład przedstawia wykorzystanie stałych systemowych w programie użytkownika. Rysunek 2-18: „Stałe systemowe” w programie użytkownika 2 1 3 1. Stałe systemowe sterownika można znaleźć w folderze „PLC tags – Default tag table”. Pozostałe stałe znajdują się w osobnej zakładce „Default tag table”. 3. W tym przykładzie, nazwa symboliczna „Robot_arm_left” została nadana modułowi DI. Moduł ten można odnaleźć pod tą samą nazwą w zakładce stałe systemowe „system constants”. Nazwa „Robot_arm_left” jest powiązana z blokiem diagnostycznym „GET_DIAG”. 32 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001752 Nowości w S7-1200/1500 2. 12 Stałe użytkownikaWskazówka Wejdź w zakładkę konfiguracji urządzenia „Device configuration”, aby odszukać stałą systemową interesującego Cię urządzenia. Wskazówka Więcej informacji można znaleźć w poniższych pozycjach: Co nowego wnoszą stałe systemowe do modułów S7-1200/1500? http://support. com/WW/view/en/787828362. 12 Stałe użytkownika Stałe użytkownika (zmienne Constant) służą do zapisywania wartości stałych. Rozróżnia się stałe lokalne dla bloków organizacyjnych (OB), funkcji (FC) oraz bloków funkcyjnych (FB) oraz stałe globalne dla całego programu użytkownika. Zalety • Stałe użytkownika (zmienne Constant) można wykorzystać do zmiany wartości stałych (np. wartości progowych, indeksów tablic), zarówno lokalnie w blokach funkcji jak i globalnie w całym programie. • Dzięki stałym użytkownika, program jest bardziej przejrzysty. Właściwości Stałe lokalne definiuje się w interfejsie danego bloku. • Stałe globalne definiuje się w folderze „PLC tags“. • Program użytkownika zezwala jedynie na odczyt stałych użytkownika. • Stałe użytkownika nie są widoczne w przypadku bloków chronionych. •PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 33OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011752 Nowości w S7-1200/1500Zalecenia • Korzystaj ze stałych użytkownika, aby poprawić przejrzystość programu oraz do zmiany: – kodów błędu, – poleceń CASE, – współczynników przeliczeniowych, – stałych naturalnych…Przykład Rysunek 2-19: Stała bloku (lokalna) dla polecenia CASE Rysunek 2-20: Stała sterownika (globalna)Wskazówka Więcej informacji można znaleźć w poniższej pozycji: W jaki sposób przekonwertować jednostki zmiennych w STEP 7 (TIA Portal)? http://support. com/WW/view/en/619288912. 13 Wewnętrzna identyfikacja sterowników oraz zmiennych HMI STEP 7, WinCC, Startdrive, oraz Safety korzystają ze wspólnej bazy danych środowiska projektowego TIA Portal. Jakiekolwiek zmiany danych obejmują cały program użytkownika, bez względu na to gdzie zmiana została wprowadzona. Dzięki temu dane pozostają spójne w obrębie całego programu. Każda nowa zmienna otrzymuje unikalny identyfikator, niedostępny dla użytkownika. Nie można go wyświetlić ani zmienić nawet podczas modyfikacji adresu zmiennej. 34 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001752 Nowości w S7-1200/1500 2. 13 Wewnętrzna identyfikacja sterowników oraz zmiennych HMI Poniższy rysunek przedstawia sposób wewnętrznej identyfikacji danych. Rysunek 2-21: Wewnętrzna identyfikacja dla PLC oraz HMI PLC_1 Adres Wewnętrzny Wewnętrzny Nazwa Tryb dostępu HMI_1 absolutny identyfikator identyfikator symbolu HMI Nazwa Połącznie za symbolu PLC PLC HMI pomocą PLC Silnik_1 I0. 0 000123 009876 Silnik_1 Zawór_2 Q0. 3 000138 000578 Zawór_2 Wskazówka Identyfikator ulegnie zmianie w przypadku: • zmiany nazwy • zmiany typu • usunięcia zmiennejZalety • Można dowolnie zmieniać adresy zmiennych nie zmieniając ich wewnętrznych identyfikatorów oraz powiązania. Komunikacja pomiędzy sterownikiem, urządzeniem HMI, a napędem również pozostaje bez zmian. • Długość nazwy symbolicznej nie wpływa na komunikację między sterownikiem, a urządzeniem HMI. Właściwości Po zmodyfikowaniu adresu zmiennych PLC należy ponownie uruchomić sterownik. Ponowne uruchomienie urządzenia HMI nie jest konieczne, ponieważ system odnajdzie zmienne po ich wewnętrznym identyfikatorze. (sprawdź Rysunek 2-22: Zmiana adresu lub dodawanie wiersza). Rysunek 2-22: Zmiana adresu lub dodawanie wiersza Zmienne PLC Motor_1 Zmiana adresu Motor_1%I2. 0%I0. 0 & PLC Elementy DB Dodawanie wiersza & PLCPPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 35OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011752 Nowości w S7-1200/15002. 14 Błędy oraz tryb STOP Sterowniki S7-1200/1500 są bardziej stabilne w porównaniu do S7-300/400. Zdecydowanie mniej zdarzeń może spowodować przejście sterownika w tryb STOP. Spójność bloków programowych jest sprawdzana już na poziomie kompilacji programu w TIA Portal. Dzięki temu sterowniki S7-1200/1500 są bardziej stabilne od ich poprzedników. Zalety Tylko trzy rodzaje błędów mogą spowodować przejście sterownika S7-1200/1500 w tryb STOP, przez co łatwiej jest zaprogramować reakcję sterownika na błędy. Właściwości Tabela 2-18: Reakcja sterowników S7-1200/1500 na błędy Błąd S7-1200 S7-1500 1. Czas monitorowania cyklu RUN STOP, gdy OB80 przekroczony jednokrotnie STOP nieskonfigurowany RUN 2. Czas monitorowania cyklu STOP przekroczony dwukrotnie STOP, gdy OB121 3. Błędy programowania nieskonfigurowany Błędy bloków organizacyjnych (OB) • Blok OB80 „Time error interrupt” zostaje wywołany przez system operacyjny w sytuacji przekroczenia maksymalnego czasu wykonania cyklu. • Blok OB121 „Programming error” zostaje wywołany przez system operacyjny w przypadku błędu podczas wykonania programu. Każdy błąd zostaje odnotowany w buforze diagnostycznym. Wskazówka Sterowniki S7-1200/1500, posiadają również inne programowalne bloki operacyjne (OB), które można zaprogramować na wypadek np. błędów diagnostycznych, awarii modułu typu rack, itp. Więcej informacji na temat błędów można znaleźć w pomocy online dla TIA Portal pod hasłem „Events and OBs”. 36 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001753 Programowanie 3. 1 System operacyjny i program użytkownika3 Programowanie3. 1 System operacyjny i program użytkownika Sterowniki SIMATIC składają się z systemu operacyjnego i programu użytkownika. • System operacyjny odpowiada za wszystkie funkcje, które nie są bezpośrednio związane z głównym zadaniem sterownika (np. ponownie uruchomienie sterownika, aktualizowanie obrazu procesu, wywołanie programu użytkownika, obsługa błędów, organizacja pamięci, itp. ) System operacyjny jest integralną częścią sterownika. • Program użytkownika zbudowany jest z bloków niezbędnych do realizacji danego zadania. Do zaprogramowania programu użytkownika wykorzystuje się bloki programowalne, które zostają wgrane do sterownika. Rysunek 3-1: System operacyjny i program użytkownika FB FC Program FC użytkownika Lokalny Globalny Sprzęt System Główny FC operacyjny OB Wywołanie cykliczne3. 2 Program użytkownika jest zawsze wykonywany w sposób cykliczny. Główny blok organizacyjny (OB. ) pojawia się w folderze „Program Blocks”, zaraz po stworzeniuZalety sterownika w STEP 7. Następnie jest on przetwarzany przez sterownik w nieskończonej pętli. Bloki programowe Najnowsza wersja STEP 7 (TIA Portal) wykorzystuje podobne rodzaje bloków, co wersje poprzednie: • Bloki organizacyjne • Bloki funkcyjne • Funkcje • Bloki danych Doświadczeni użytkownicy STEP 7 bez problemu mogą kontynuować prace z nową wersją oprogramowania. Natomiast dla nowych użytkowników, zaznajomienie się z programowaniem w STEP 7 nie powinno stanowić większego wyzwania. • Zróżnicowane typy bloków pozwalają stworzyć program o przejrzystej budowie. • Przejrzysta budowa programu umożliwia wielokrotne wykorzystanie programu lub wybranych funkcji np. w innych projektach. Wystarczy jedynie zmienić konfigurację. (sprawdź w rozdziale 3. 8 Bloki wielokrotnego użytku „reusable blocks”). • Łatwiejsze wykrywanie oraz usuwanie błędów, w tym błędów w programowaniu przekłada się na mniej problemów w zarządzaniu zakładem produkcyjnym. PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 37OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011753 ProgramowanieZalecenia • Pamiętaj o logicznej budowie każdego zadania. • Stwórz program, w którym każda funkcja jest podzielona na podfunkcje. Te z kolei zbudowane są z jeszcze mniejszych elementów. Dokonuj dalszych podziałów, aż uzyskasz funkcje, które będziesz w stanie wykorzystać wielokrotnie, podmieniając jedynie parametry. • Określ interfejsy (wejścia/wyjścia) pomiędzy poszczególnymi blokami funkcji łącznie z interfejsami funkcji dostarczonych przez innych producentów. Bloki organizacyjne, bloki funkcyjne oraz funkcje można zaprogramować w poniższych językach programowania. Tabela 3-1: Języki programowania Język programowania S7-1200 S7-1500 Ladder (LAD)  Function block diagram (FBD)  Structured control language (SCL)  Graph  Statement list (STL) 3. 1 Bloki organizacyjne (OB) Rysunek 3-2: Okno dodawania nowego bloku „Add new block” (OB) Bloki organizacyjne OB są interfejsem pomiędzy systemem operacyjnym a programem użytkownika. Odpowiadają za następujące procesy: • Zachowanie sterownika podczas rozruchu • Cykliczne wykonanie programu • Przetwarzanie programu z kontrolowanymi przerwaniami • Obsługa błędów Różnorodność dostępnych bloków organizacyjnych zależy od sterownika. 38 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001753 Programowanie 3. 2 Bloki programoweWłaściwości • Bloki organizacyjne są wywoływane przez system operacyjny sterownika • W programie użytkownika można stworzyć kilka głównych bloków organizacyjnych (Main OB). Będą one przetwarzane sekwencyjne, zgodnie z nadanym numerem Rysunek 3-3: Korzystanie z kilku głównych bloków organizacyjnych (Main OB)Program użytkownikaGłówny_1 FB OB1 Lokalny FCGłówny_y FB OB200 Lokalny FCGłówny_x FB OB300 Lokalny FCZalecenia • Rozpisz program na kilku głównych blokach organizacyjnych (Main OB) w taki sposób, aby móc swobodnie wymienić poszczególne części między sterownikami. • Upewnij się, aby główne bloki organizacyjne nie komunikowały się ze sobą. Dzięki temu będą pracować niezależnie. Jeżeli jednak komunikacja między blokami jest konieczna, skorzystaj z globalnych bloków danych (sprawdź w rozdziale 4. 2 Brak pamięci bitowej / globalne bloki danych). • Posegreguj poszczególne części programu zgodnie z ich funkcją do folderów i przechowuj je w bibliotece projektu lub bibliotece globalnej. PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 39OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011753 Programowanie Rysunek 3-4: Przechowywanie części program w bibliotece projektu Więcej informacji można znaleźć w rozdziale 3. 7 BibliotekiWskazówka Więcej informacji można znaleźć w poniższych pozycjach Jakie bloki organizacyjne są dostępne w STEP 7 (TIA Portal)? http://support. com/WW/view/en/5823574540 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001753. 2 3 Programowanie 3. 2 Bloki programowe Funkcje (FC) Rysunek 3-5: Okno dodania nowej funkcji (FC) „Add new block” Funkcje (FC) nie posiadają pamięci danych pomiędzy cyklami. Wartości użytych parametrów nie są zapisywane. Za każdym razem, kiedy funkcja jest wywołana otrzymuje nowe parametry aktualne. Właściwości Funkcje (FC) służą do przetwarzania danych w pojedynczym cyklu. • • Zmienne tymczasowe oraz zmienne wyjściowe pozostają nieokreślone, kiedy są wywołane w blokach niezoptymalizowanych. W blokach zoptymalizowanych • wartości zawsze przyjmują wartość domyślną (S7-1500 i S7-1200 Firmware V4). • • Aby zapisać parametry funkcji należy skorzystać z globalnych bloków danych. Funkcje (FC) mogą mieć kilka wyjść Wartość zwracana przez funkcję może zostać bezpośrednio wykorzystana, np. w SCL we wzorze matematycznym. Zalecenia • Używaj funkcji dla powtarzalnych operacji, które są wielokrotnie wywoływane w różnych obszarach programu użytkownika. • Skorzystaj z możliwości wykorzystania wartości zwracanej przez funkcję. := (parameter list);PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 41OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011753 ProgramowaniePrzykład Poniższy przykład przedstawia wzór matematyczny zaprogramowany w bloku FC. Wynik obliczeń zostaje zadeklarowany, jako wartość zwracana, dzięki czemu może zostać ponownie wykorzystany Tabela 3-2: Ponowne wykorzystanie wartości funkcji Krok Polecenie 1. Utwórz blok FC, którego wartością zwracaną będzie wynik wzoru matematycznego (tu: wzór na odcinek koła) FC 2. Wywołaj blok FC obliczając odcinek koła w dowolnym bloku (SCL). := (parameter list);Wskazówka Więcej informacji można znaleźć w poniższej pozycji: Ile parametrów (maksymalnie) można zdefiniować w STEP 7 dla funkcji CPU S7- 1200/S7-1500 CPU? http://support. com/WW/view/en/9941289042 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001753. 3 3 Programowanie 3. 2 Bloki programowe Bloki funkcyjne (FB) Rysunek 3-6: Okno dodania nowego bloku funkcyjnego (FB) “Add new block” Bloki funkcyjne (FB) mają wydzielony własny obszar do przechowywania danych pomiędzy cyklami programów. Jest to tzw. blok DB instancji („Instance DB”). Rysunek 3-7: Wywołanie bloku funkcyjnego Blok danych „Instance” Wywołanie bloku funkcyjnegoWłaściwości Bloki funkcyjne (FB) służą do przetwarzania danych z podtrzymaniem wartości • między cyklami programu. • Zmienne tymczasowe oraz zmienne wyjściowe pozostają nieokreślone, kiedy są • wywołane w blokach niezoptymalizowanych. W blokach zoptymalizowanych wartości zawsze przyjmują wartość domyślną (S7-1500 and S7-1200 Firmware V4). Zmienne statyczne zachowują swoją wartość z poprzedniego cykluZalecenia • Używaj bloków funkcyjnych, aby stworzyć przejrzysty program użytkownika. Blok funkcyjny można wywołać wielokrotnie, w różnych obszarach programu użytkownika. Funkcjonalność ta ułatwia zaprogramowanie często powtarzających się części programu. • Jeżeli bloki funkcyjne stosowane są wielokrotnie w programie użytkownika, skorzystaj z osobnych instancji, a najlepiej z multi-instancji. PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 43OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011753 Programowanie3. 4 Instancje Pojedyncze wywołanie bloku funkcyjnego nosi nazwę instancji. Dane przetworzone podczas tego wywołania zostają zapisane w bloku danych instance. Bloki danych typu instance przejmują strukturę interfejsu powiązanych bloków funkcyjnych. Struktury tej nie można zmienić w obrębie bloku danych (DB). Rysunek 3-8: Budowa interfejsu bloku funkcyjnego Instancja Wejście Wyjście Wej/Wyj Parametry statyczne Blok danych instance zbudowany jest z pamięci trwałej posiadającej interfejsy wejścia, wyjścia, wej/wyj i parametry statyczne (Static) oraz pamięci ulotnej (L stack), w której przechowywane są zmienne tymczasowe. Wartości tych zmiennych obowiązują przez jeden cykl, po czym muszą zostać zainicjalizowane, Właściwości Blok danych typu „instance” jest zawsze powiązany z blokiem funkcyjnym (FB). • • Bloki danych typu instance są tworzone automatycznie, podczas wywołania bloku funkcyjnego (FB). Nie trzeba ich tworzyć ręcznie w TIA Portal. • Budowa bloku danych typu instance jest tożsama z budową powiązanego bloku funkcyjnego FB. Wszelkie zmiany możliwe są wyłącznie w bloku funkcyjnym (FB)Zalecenia • Pamiętaj, że dane zapisane w bloku danych instance mogą być zmienione wyłącznie w powiązanym bloku funkcyjnym (FB). Więcej informacji można znaleźć w rozdziale 3. 4 Przechowywanie danych3. 5 Multi-instancje O multi-instancjach możemy mówić w sytuacji, gdy blok funkcyjny został wywołany w innym bloku funkcyjnym. W tej sytuacji, dane wywołanego bloku funkcyjnego zostają zapisane w bloku danych instance nadrzędnego bloku funkcyjnego. Wywołany blok zachowuje pełną funkcjonalność nawet w przypadku, gdy zostanie przeniesiony. Poniższy rysunek przedstawia blok funkcyjny, który korzysta z innego bloku funkcyjnego FB (“IEC Timer”). Wszystkie dane zapisane zostały w bloku multi- instance44 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//2200175Rysunek 3-9: Multi-instancje 3 Programowanie 3. 2 Bloki programowe FB Blok multi-insnancji Wywołanie z Parametr FB Parametry statyczne opóźnieniem TOF_TIMEKorzyści/zalety • Możliwość wielokrotnego zastosowania • Możliwość wielokrotnego wywołania • Mniejsza ilość bloków danych instance • Proste kopiowanie programów • Możliwość tworzenia struktur w trakcje programowaniaWłaściwości • Multi-instancje to obszary pamięci wewnątrz bloków danych instanceZalecenia Używaj multi-instancji, aby: • Zredukować liczbę bloków danych instance. • Stworzyć przejrzysty program użytkownika do wielokrotnego zastosowania. • Zaprogramować funkcje lokalne np. timer, licznik, itp. Przykład Jeżeli chcesz zaprogramować funkcje timera lub licznika, skorzystaj z bloków “IEC Timer” oraz “IEC Counter” w miejsce SIMATIC Timer (adresowanie absolutne). Wykorzystanie multi-instancji w tym przypadku zmniejszy ilość bloków wykorzystanych w programie użytkownika. PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 45OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011753 Programowanie Rysunek 3-10: Biblioteka IEC TimerWskazówka Więcej informacji można znaleźć w poniższej pozycji: Jak deklarować timery i liczniki dla S7-1500 w STEP 7 (TIA Portal)? http://support. com/WW/view/en/675852203. 6 Globalne bloki danych (DB) Rysunek 3-11: Okno dodawania nowego bloku danych (DB) „Add new block” Zmienne zapisane w blokach danych są dostępne w obrębie całego programu użytkownika. 46 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001753 Programowanie 3. 2 Bloki programowe Rysunek 3-12: Bloki globalne (Global DB) pełniące funkcję pamięci centralnej OB FC DB FB LocalZalety • Dobra organizacja obszarów pamięci • Szybki dostępWłaściwości Wszystkie bloki programu użytkownika mają dostęp do globalnych bloków danych • (DB) • Globalne bloki danych (DB) mogą składać się z danych różnego typu • Globalne bloki danych (DB) można stworzyć pomocą edytora programu lub zgodnie z typem danych PLC określonym przez użytkownika (sprawdź w rozdziale 3. 6. 3 Dane typu STRUCT oraz typy danych PLC). Zalecenia • Korzystaj z globalnych bloków danych, kiedy chcesz udostępnić dane innym blokom oraz innym częściom programu użytkownika. Wskazówka Więcej informacji można znaleźć w poniższej pozycji: Jakie typy dostępu, kolumny wartości oraz opcje dostępne są dla globalnych bloków danych w STEP? http://support. com/WW/view/en/680156313. 7 Wgrywanie bloków bez utraty wartości aktualnych (Downloading without reinitialization) Sterowniki S7-1200 (firmware V4. 0) oraz S7-1500 oferują możliwość rozszerzenia interfejsów zoptymalizowanych bloków funkcyjnych oraz bloków danych w trakcie wykonywania programu. Funkcjonalność ta pozwala wgrać zmodyfikowane bloki bez zatrzymywania pracy sterownika. Wartości aktualne zmiennych pozostają bez zmian. PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 47OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011753 Programowanie Rysunek 3-13: Wgrywanie bloków bez re-inicjalizacji Blok w Blok w Blok w sterowniku projekcie sterowniku Nazwa Wartość Nazwa Nazwa Wartość Zmienna1 3. 4 Zmienna1 Zmienna2 451 1 Zmienna2 Zmienna1 3. 4 Zmienna3 23 Zmienna3 Zmienna4 Zmienna2 451 Zmienna5 23 3 Zmienna3 2 Zmienna4 0 Zmienna5 0 Postępuj zgodnie z poniższymi krokami, podczas gdy sterownik jest w trybie RUN. 1. Włącz opcję „Downloading without reinitialization” 2. Wprowadź nowe zmienne dla istniejącego bloku. Wgraj blok do sterownika. Zalety • Możliwość wgrania nowych zmiennych bez utraty wartości aktualnych w trakcie wykonywania programu. Sterownik jest cały czas w trybie „RUN”. Właściwości Funkcjonalność wgrywania bloków bez reinicjalizacji jest dostępna wyłącznie dla • bloków zoptymalizowanych. • Tylko nowe zmienne zostają zainicjowane. Wartość pozostałych zmiennych pozostaje bez zmian. • Bloki z załączoną funkcją „Downloading without reinitialization” rezerwują • dodatkowy obszar pamięci i przez to zajmują więcej pamięci w sterowniku. • Wielkość obszaru dodatkowego zależy od dostępnej pamięci sterownika, ale nie • może przekraczać 2 MB. • Obszar dodatkowy można określić różny dla każdego bloku Domyślna wielkość obszaru dodatkowego to 100 bajtów. Bloki mogą być rozszerzane. Zalecenia • Określ wielkość obszaru dodatkowego dla bloków, które będziesz chciał rozszerzyć podczas uruchomienia (np. bloki testowe). Wgranie nowych zmiennych nie przerwie pracy sterownika. Zmienne, które zostały wcześniej wprowadzone nie ulegną zmianie. 48 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//22001753 Programowanie 3. 2 Bloki programowePrzykład: Ustawianie obszaru dodatkowego dla danego bloku Poniższa tabela opisuje jak ustawić obszar dodatkowy dla funkcjonalności „downloading without reinitializing”. Tabela 3-3: Ustawianie obszaru dodatkowego Krok Polecenie 1. Kliknij prawym przyciskiem myszy na jakikolwiek blok zoptymalizowany a następnie wybierz właściwości „Properties” 2. 2 1 3 1. Wybierz opcję “Download without reinitialization”. Wprowadź wielkość obszaru dodatkowego oznaczonego, jako „memory reserve”. Potwierdź OK. Wskazówka W TIA Portal można również ustawić wartość domyślną obszaru dodatkowego dla wszystkich nowych bloków. Z paska menu, wybierz „Options – Settings”, a następnie „PLC programming – General – Download without reinitialization“. PPrrzzeewwooddnniikkpprrooggrraammoowwania dla SS77--11220000//SS77-1-1550000 49OOppiiss ssyysstetemmuu––wwyyddaanniiee22//220011753 ProgramowaniePrzykład: Wgrywanie bloków bez reinicjalizacji Poniższy przykład przedstawia funkcję wgrywania bloków bez utraty wartości aktualnych. Tabela 3-4 Wgrywanie bloków bez reinicjalizacji Krok Polecenie 1. Ustaw dodatkowy obszar pamięci (sprawdź powyżej). Wybierz blok, np. zoptymalizowany blok danych (DB). Wybierz opcję „Download without reinitialization”, a następnie potwierdź OK. 4. Dodaj nową zmienną (również z atrybutem retentive). 5. Wartości aktualne w bloku pozostają bez zmian. Wskazówka Więcej informacji można znaleźć w pomocy online dla TIA Portal pod hasłem „Loading block extensions without reinitialization” oraz w poniższej pozycji: W jaki sposób mogę pobierać dane w trybie RUN w S7-1500? http://support. com/WW/view/en/7627812650 PPrzewodnik programowwaanniiaa ddllaa S7-1200/SS77--1155000 Opis ssyysstteemmuu –– wwyyddaanniiee 22//2200175


Informujemy, iż w celu optymalizacji treści dostępnych w naszym serwisie, dostosowania ich do Państwa indywidualnych potrzeb korzystamy z informacji zapisanych za pomocą plików cookies na urządzeniach końcowych użytkowników. Pliki cookies użytkownik może kontrolować za pomocą ustawień swojej przeglądarki internetowej. Dalsze korzystanie z naszego serwisu internetowego, bez zmiany ustawień przeglądarki internetowej oznacza, iż użytkownik akceptuje stosowanie plików cookies.

Kod produktu i numer produktu (PNC) znajdują się na tabliczce znamionowej urządzenia.

1. Model, np. EWF1204W
2. Kod produktu (PNC), np, 914520402
3. Kod ML, np. 05 
4. Numer seryjny

Podręcznik programowania Aeg Scn71800s0

Bezpośredni link do pobrania Podręcznik programowania Aeg Scn71800s0

Starannie wybrane archiwa oprogramowania - tylko najlepsze! Sprawdzone pod kątem złośliwego oprogramowania, reklam i wirusów

Ostatnia aktualizacja Podręcznik programowania Aeg Scn71800s0