Praca przejściowa

Komentarze

Transkrypt

Praca przejściowa
POLITECHNIKA WARSZAWSKA
INSTYTUT AUTOMATYKI I ROBOTYKI
Praca przejściowa
Zastosowanie środowiska TIA Portal do konfiguracji i
programowania sterownika S7-1200
Wykonał: Rafał Kurtyka
Promotor: mgr inż. Jakub Możaryn
Ocena:
Warszawa 2011
1
SPIS TREŚCI
1.Sterownik……………………………………………...…………………3
2.Platforma TIA (Totally Intgrated Automation)…………….……………4
2.1. Konfiguracja środowiska – projekt……………….…………………5
2.2. Komunikacja ze sterownikiem w środowisku TIA.……………...... 8
2.3. Programowanie w środowisku TIA.……………..….……………. 12
2.4. Implementacja regulatora PID…………..………………………... 19
2
1. Sterownik
Sterownikiem wykorzystanym w projekcie jest Simatic S7 1200 firmy Siemens.
Sterownik ten charakteryzuje się modułową konstrukcją (maks. 8 modułów
sygnałowych, 1 płyta sygnałów, 3 moduły komunikacyjne). Maksymalna liczba wejść
binarnych i analogowych wynosi odpowiednio 284 i 51. W urządzeniu zintegrowano
interfejsy PROFINET/ETHERNET przemysłowy z obsługą protokołów TCP/IP, ISO
na
TCP,
S7.
Sterownik
posiada
możliwość
diagnostyki
i
monitorowania
oprogramowania przez port ETHERNET oraz komunikacji przez protokoły RS-232,
RS-485 i MODUS RTU.
W
projekcie
wykorzystywane
będą
jednostka
CPU
1214C,
zasilacz
230VAC/24VDC PS1207 oraz moduł rozszerzeń wejść/wyjść analogowych 6ES7 234
(Rys.1.1). Sposób podłączenia układu do sieci energetycznej i komputera przedstawia
rysunek 1.2. Jednostkę CPU i 6ES7 należy zasilić indywidualnie (możliwe jest
wykorzystanie tego samego zasilacza) napięciem stałym 24V. Wymiana danych
między modułami CPU i AI/AO (6ES7) odbywa się poprzez wewnętrzną magistralę.
Funkcję programatora pełni komputer PC podłączany kablem ethernetowym.
Rys.1.1. Sterownik Simatic S7 1200. [1]
3
Rys.1.2. Schemat podłączenia sterownika. [2]
2. Platforma TIA (Totally Integrated Automation)
TIA
jest
to
środowisko
służące
do
konfiguracji,
programowania
i
monitorowania sterowników SIMATIC S7 1200 oraz paneli operatorskich HMI.
Oprogramowanie STEP 7 Basic (aplikacja do programowania PLC w języku FBD lub
LD) oraz WinCC Basic (aplikacja do tworzenia wizualizacji) zintegrowane są na
platformie, co umożliwia wymianę danych między nimi. Środowisko zawiera także
narzędzia do tworzenia nowych bibliotek obiektów projektu (zmiennych procesowych,
najczęściej wykorzystywanych funkcji – np. PID) czy grafiki obiektu (elementów
4
wizualizacji procesu). Na platformę SIMATIC S7-1200 została przeniesiona z
systemów SIMATIC S7-300/S7-400 sprawdzona koncepcja bloków organizacyjnych
OB, funkcji FC oraz bloków funkcyjnych FB i bloków danych DB.
2.1. Konfiguracja środowiska - projekt
Po uruchomieniu aplikacji TIA użytkownikowi ukazuje się widok portalu
(Rys.2.1), przedstawiający pasek zadań (1), wybór opcji (2) oraz listę utworzonych
projektów (3).
Rys.2.1. Widok portalu.
W celu utworzenia nowego projektu należy wybrać opcję Create new project
(Rys.2.2). Następnym krokiem jest podanie ścieżki do katalogu z projektem (Path) i
nazwy projektu (2), która różni się od nazw utworzonych wcześniej projektów. W
prezentowanym na rys. 2.2. przykładzie projekt nazwano „Regulator_PID”. Po
uzupełnieniu powyższych parametrów utworzyć nowy projekt przyciskiem Create (3).
Po utworzeniu projektu i zapisaniu w podanym katalogu, dla naszego projektu
dostępny jest pasek zadań – L (Rys.2.3). Na początku projektowania konieczny jest
5
Rys.2.2. Tworzenie nowego projektu.
wybór jednostki centralnej sterownika. W tym celu należy kliknąć na zadanie Devices
& Networks (1), a następnie wybrać opcję Add new device (2). Do wyboru powinny być
udostępnione 2 rodzaje urządzeń: Simatic HMI i Simatic PLC. Jeżeli naszym zadaniem
jest zaprogramowanie sterownika, należy wybrać ikonę Simatic PLC (3). Niezbędne
jest także wpisanie nazwy urządzenia (4), w tym projekcie będzie to „Sterownik_1”. Z
wyświetlonego katalogu wybierana jest jednostka centralna CPU, poprzez dwukrotne
kliknięcie na jej opis (5):
PLC > Simatic S7 1200 > CPU > CPU 1214C > 6ES7-214-1AE30-0XB0.
Rys.2.3. Wybór jednostki CPU.
Po wyborze jednostki centralnej, ukazuje się widok projektu (Rys.2.4). Z lewej
strony dostępne jest okno Project tree (1). W oknie tym, znajdują się katalogi, poprzez
które
użytkownik
ma
dostęp
do
każdego
fragmentu
projektu.
Katalog
Sterownik_1[CPU 1214C DC/DC/DC] zawiera informacje na temat programu oraz
konfiguracji sprzętowej wybranego sterownika. Zawartość katalogów jest wyświetlana
6
w oknie centralnym – „Regulator_PID” (2), w którym na wstępie powinien pojawić się
moduł CPU wraz z jego parametrami poniżej. Po prawej stronie widoku projektu
znajdują się zakładki (3) umożliwiające dostęp do katalogu sprzętowego czy bibliotek
MODBUS lub HMI. W lewym dolnym rogu okna głównego znajduję się odnośnik do
widoku portalu (4). Dzięki niemu możliwe jest przełączanie między widokiem projektu
i widokiem portalu.
Rys. 2.4. Widok projektu.
W regulatorze PID sygnałem sterującym jest sygnał analogowy. Moduł CPU
dostępny w projekcie nie posiada wyjść analogowych, a więc konieczne jest dołączenie
oddzielnego modułu z wyjściami analogowymi (Rys. 2.5). W tym celu należy wybrać
zakładkę Hardware catalog (1). Użytkownikowi powinna ukazać się lista folderów z
modułami rozszerzeniowymi. Z listy tej należy wybrać katalog AI/AO, następnie AI4 x
14bits/AO2 x 14 bits i ostatecznie konkretny moduł – tu 6ES7 234-4HE30-0XB0 (2).
Aby dołączyć ten element do projektu, należy przeciągnąć go z katalogu na pole 2 obok jednostki CPU (3).
7
Rys. 2.5. Dołączenie modułu Analog Input/Output.
2.2. Komunikacja ze sterownikiem w środowisku TIA
Aby skomunikować się ze sterownikiem należy użyć kabla internetowego z
wtyczką RJ-45 (Rys.2.6). Jeden koniec podłączyć do sterownika (1) a drugi do
komputera.
Rys. 2.6. a) moduł CPU. b) Kabel z wtyczkami RJ-45.
Będąc w widoku projektu kliknąć na ikonę Download to device dostępną na
pasku narzędzi (Rys.2.7). W ten sposób wgrywamy pusty program do sterownika, w
celu sprawdzenia komunikacji. W tym momencie rozpocznie się wyszukiwanie
połączenia między sterownikiem, a komputerem. W naszym projekcie połączenie nie
było utworzone, więc programator automatycznie znajdzie podłączony sterownik i
zaproponuje przypisanie mu domyślnego adresu IP -192.168.0.1 (Rys.2.8). Należy
wtedy wybrać proponowane połączenie (1) oraz wcisnąć przycisk Load (2).
8
Rys. 2.7. Pasek narzędzi.
Rys. 2.8. Automatycznie wyszukane połączenie.
Program może zapytać nas o przypisanie dodatkowego IP wymaganego w tym
połączeniu (Rys. 2.9). Zgadzamy się poprzez kliknięcie na przycisk Yes. Powinniśmy
otrzymać wiadomość, że więcej dodatkowych IP nie jest wymagane (Rys.2.10). Należy
potwierdzić komunikat wciskając OK. Kompilator przejdzie do sprawdzenia
poprawności programu. Wyniki sprawdzenia wyświetlane są w oknie Load preview.
(Rys.2.11.a). Jeśli wszystko jest poprawne, w zakładce Message pojawia się informacja
Ready for loading. Aby kontynuować wgrywanie należy kliknąć na przycisk Load. Po
zakończeniu wgrywania użytkownik informowany jest o jego poprawności w oknie
Load results (Rys.2.11.b). Jeżeli nie wystąpiły żadne błędy w komunikacji lub w
zapisie do pamięci, w zakładce Message powinna ukazać się informacja Downloading
to device completed without terror. Poza tym, na zakończenie wgrywania, mamy także
9
możliwość włączenia modułów sterownika – przejście w tryb RUN. W tym celu
zaznaczyć opcję Start all (1). Aby zakończyć wgrywanie kliknąć na przycisk Finish.
Rys. 2.9. Przypisanie dodatkowego IP.
Rys. 2.10. Potwierdzenie dodatkowego IP.
Rys. 2.11. a) Okno Load preview. b) Okno Load results.
10
W środowisku TIA istnieje możliwość sprawdzenia poprawności działania
poszczególnych modułów oraz ich połączenia. Służy do tego opcja Online &
diagnostics dostępna w zakładce Online (Rys.2.12). Po wyborze tej funkcji powinno
ukazać się okno Online access (Rys.2.13). W oknie tym należy wybrać rodzaj
połączenia diagnostycznego (w projekcie jest to kabel internetowy). Po dokonaniu
ustawień kliknąć na przycisk Go online. Kompilator przechodzi w tryb Online, a
wyniki diagnostyczne wyświetla w oknie Device information (Rys.2.14). O braku
problemów informuje nas opis: No devices with problems.
Rys. 2.12. Wybór opcji Online & diagnostics.
Rys. 2.13. Ustawienia połączenia diagnostycznego.
11
Rys. 2.14. Wyniki diagnostyki.
2.3. Programowanie w środowisku TIA
Aby rozpocząć pisanie programu w STEP 7 Basic należy w oknie Project tree
(Rys.2.15) wybrać katalog Sterownik_1 (1), wewnątrz którego znajdują się parametry i
funkcje dotyczące tylko wybranego sterownika. Następnie w podkatalogu Program
blocks (2) odnajdujemy blok Main [OB1] (3). Blok ten jest niezbędny w każdym
programie, gdyż to właśnie w nim wykonuje się główna pętla programowa. Po
dwukrotnym kliknięciu na niego, użytkownikowi powinna ukazać się zawartość bloku,
czyli pusty program (Rys.2.16).
Domyślnym językiem programowania jest LAD, czyli tzw. język drabinkowy.
Sieci drabinek w bloku organizacyjnym oznaczone są kolejno jako Network 1, Network
2, itd. (1). Powyżej drabinek znajduje się pasek najczęściej używanych instrukcji (2),
które można dodawać i usuwać poprzez kliknięcie na niego prawym przyciskiem
myszy i wybranie odpowiedniego polecenia. Te same instrukcje znajdują się po prawej
stronie, w oknie Instructions, w zakładce Favorites (3). W oknie tym użytkownik
posiada także dostęp do podstawowych instrukcji w zakładce Instruction (4) oraz do
rozszerzonych instrukcji – zakładka Extended instructions (5).
Pierwszym
realizowanym
zadaniem
jest
pierwiastkowanie
zmiennej
rzeczywistej, które może być rozpoczęte i zakończone w dowolnej chwili, np. przez
operatora korzystającego z panelu HMI (Rys.2.17).
Niezbędnymi elementami w pisanym programie są zatem włącznik i wyłącznik
obliczeń.
Funkcja
ta
będzie
zrealizowana
za
pomocą
dwóch
przycisków
(START/STOP), znajdujących się w panelu HMI. Na początek należy znaleźć w
zakładce Instructions (Rys.2.18), w katalogu Bit logic (1) symbol Normally open
12
contact (2) i przeciągnąć go do sieci Network 1, w miejsce oznaczone zielonym
prostokątem (3).
Rys. 2.15. Przejście do bloku OB1.
Rys. 2.16. Interfejs programowania.
13
Rys. 2.17. Zadanie do zrealizowania.
Rys. 2.18. Wstawienie do programu styku
Symbol ten reprezentuje styk normalnie otwarty (czynny). Konieczne jest
podanie adresu sygnału, który ma wyzwolić jego zadziałanie. O braku przypisanego
adresu użytkownik informowany jest na dwa sposoby (Rys.2.19). Pierwszym jest
symbol krzyżyka na czerwonym tle przy nazwie sieci Network (1), oznaczający
wystąpienie błędu we wskazanej sieci. Drugim są znaki zapytania nad symbolem styku,
informujące o braku przypisanego adresu (2).
Dla każdego adresu możliwe jest przypisanie nazwy. Ułatwia to rozróżnialność
użytych zmiennych, a w konsekwencji przyspiesza programowanie i zwiększa
czytelność programu. Każda zmienna zapisywana jest na liście tagów (Rys.2.20). W
celu utworzenia nowego tagu należy wejść do bazy tagów w katalogu PLC tags (1).
Kliknięcie w pole Name (2) w wierszu nr 1 umożliwi wpisanie nazwy. W projekcie
będzie to nazwa „wlacz”. Po zatwierdzeniu nazwy klawiszem Enter, zostanie
14
stworzony pierwszy tag. Typ zmiennej (Data type - Bool) oraz adres ( Address - %I0.0)
będą przypisane automatycznie. Możliwa jest edycja tych parametrów jak i wpisanie
komentarza odnośnie zmiennej w kolumnie Comment.
Rys. 2.19. Powiadomienia o braku przypisanego adresu.
Rys. 2.20. Tworzenie nowego tagu.
Symbol %I0.0 oznacza, że wykorzystywane jest wejście dyskretne nr 0
sterownika – bit 0. W projekcie styk będzie wyzwalany przez przycisk w panelu HMI.
Przycisk taki nie może oddziaływać z bitami związanymi z sygnałami wejściowymi czy
wyjściowymi. Należy przypisać mu adres flagi, czyli bitu w pamięci sterownika oraz
typ danej Bool (Prawda/Fałsz). Symbol takiego markera opisuje się literą „M”, a nowy
adres wynosi %M0.0. W wyżej wymieniony sposób tworzymy dodatkowe dwa tagi:
„wylacz” i „dziala” o kolejnych adresach %M0.1 i %M0.2. Uzupełnioną listę tagów
przedstawia rysunek nr 2.21.
Rys. 2.21. Uzupełniona lista tagów.
15
Po utworzeniu zmiennych należy powrócić do bloku Main [OB1] i przypisać
adres do użytego styku w sieci Network 1 (Rys.2.22). W tym celu kliknąć na znaki
zapytania (1) i z rozwiniętej listy (2) i wybrać tag o nazwie „wlacz” (3). Adres zostaje
przypisany i wyświetlony nad symbolem styku razem z nazwą zmiennej (4).
Rys. 2.22. Przypisanie zmiennej (tagu) do styku.
W programie potrzebny jest jeszcze jeden styk normalnie otwarty, umieszczony
w równoległej gałęzi do pierwszej (Rys.2.23). Aby utworzyć nową gałąź należy kliknąć
na początek gałęzi (1), a następnie wybrać instrukcję Open branch (2) w pasku
instrukcji. Użytkownikowi powinien ukazać się początek nowej gałęzi (3). W nowym
punkcie umieścić kolejny styk, przeciągając go z paska instrukcji (4). Przypisać do
niego tag o nazwie „wylacz”.
Rys. 2.23. Tworzenie nowej gałęzi.
Dwa
utworzone
styki
będą
potrzebne
w
programie
do
sterowania
przerzutnikiem SR. Styk „wlacz” będzie ustawiał przerzutnik, a styk „wylacz” będzie
kasował wyjście przerzutnika. Blok SR (Rys.2.24 - 1) należy przeciągnąć z katalogu Bit
logic do pierwszej gałęzi w sieci Network1 i umieścić w zielonym punkcie zaraz za
stykiem „wlacz” (2). Znaki zapytania nad wklejonym blokiem przerzutnika informują
16
użytkownika o braku adresu. Jest to adres wyjścia przerzutnika Q, który jest przez nas
ustawiany lub kasowany. Przypisujemy do niego tag „dziala”. Sygnał tagu będzie
przyjmował wartość logiczną 1, gdy przerzutnik będzie ustawiony oraz wartość zero, w
przypadku „zresetowania”. Kolejną punktem jest połączenie styku „wylacz” z
wejściem kasującym przerzutnika R1 (Rys.2.25). W tym celu należy kliknąć na symbol
strzałek, znajdujący się za stykiem „wylacz” (1) i przeciągnąć go na wejście resetujące
R1 (2). Zbudowany układ (3) ma służyć do włączania i wyłączania operacji
pierwiastkowania zmiennych rzeczywistych.
Rys. 2.24. Wstawienie przerzutnika SR.
Rys. 2.25. Połączenie wejścia przerzutnika z wolnym stykiem.
Następnym etapem jest umożliwienie użytkownikowi wprowadzenia z zewnątrz
liczby rzeczywistej (np. liczba wpisana na panelu HMI) i wykonanie na niej operacji
pierwiastkowania. Do tego celu potrzebne będą kolejne dwa tagi („argument” i
„wynik”), odnoszące się do zmiennych typu Real (Rys.2.26). Zmienna typu Real
zajmuje 32 bity (4 bajty) w pamięci, dlatego adresy kolejnych zmiennych muszą różnić
się o 4 cyfry (np. %MD10 i %MD14). Operacja pierwiastkowania wykonywana będzie
w bloku SORT (Rys.2.27).
Podanie sygnału dyskretnego true na wejście EN bloku SQRT włącza działanie
bloku (rozpoczyna liczenie). Jeśli w bloku nie występuję żaden błąd, sygnał true
podawany jest na wyjście ENO. Aby pierwiastkowanie można było włączać i wyłączać
17
(np.z poziomu HMI) należy w nowej gałęzi umieścić styk czynny i przypisać do niego
tag „dziala” (Rys.2.28). Następnie z zakładki Instructions (1), z katalogu Math,
przeciągnąć blok SORT i dokleić do wolnego styku (2).
Rys. 2.26. Lista uzupełniona o tagi typu Real.
Rys. 2.27. Blok SQRT.
Rys. 2.28. Wstawienie bloku SORT.
Na koniec pozostało przypisanie na wejście IN bloku SORT tagu „argument”
(liczba pierwiastkowana) oraz na wyjście OUT tagu „wynik” (pierwiastek liczby na
wejściu IN).
18
2.4. Implementacja regulatora PID
W tym etapie projektowania zostanie pokazany sposób zaimplementowania
regulatora PID. Regulator cyfrowy powinien być próbkowany ze stałym oraz
możliwym do ustawienia czasem próbkowania. Main OB1 jest blokiem głównym
wykonywanym zawsze. Dla potrzeb regulacji zostanie utworzony nowy blok
organizacyjny (Rys.2.29) o ustalonym czasie wykonywania. W tym celu wybrać w
oknie Project tree -> Sterownik_1-> Program block opcję Add new block (1). Na liście
rodzajów bloków kliknąć Organization block (2). W polu Name wpisać nazwę bloku –
tu „Regulator” (3). Na liście opcji zaznaczyć Cyclic interrupt (4), aby ustawić czas
wykonywania bloku – Scan time (5). Domyślnie ustawiony jest czas 100 ms jest
odpowiedni.
Rys. 2.29. Tworzenie bloku organizacyjnego „Regulator”.
W nowoutworzonym bloku organizacyjnym OB200 (Rys.2.30) można
przystąpić do implementacji funkcji PID. Najprościej jest skorzystać z gotowego bloku
regulatora (Rys.2.31). W zakładce Extended instructions (1), w katalogu PID, znajduje
19
się blok funkcji (FB) PID_Compact (2). Należy przeciągnąć ten blok z biblioteki do
sieci Network 1 (3), w bloku organizacyjnym OB200.
Rys. 2.30. Nowoutworzony blok organizacyjny Regulator [OB200].
Rys. 2.31. Wykorzystanie PID_Compact.
W momencie utworzenia regulatora PID w programie, rezerwowany jest pewien
obszar w pamięci tzw. blok danych (DB). Struktura danych DB odzwierciedla
parametry wejściowe i wyjściowe oraz dane statyczne FB. Dane te są dostępne dla
innych bloków w kodzie programu. Po umieszczeniu bloku funkcyjnego PID_Compact
w drabince, powinno wyświetlić się okno Call options (Rys.2.32). W polu Name należy
podać nazwę bloku DB (1). W projekcie będzie wykorzystywany tylko jeden regulator
PID, więc można potwierdzić domyślną nazwę PID_Compact_DB, klikając OK (2).
Gdy blok PID jest już umieszczony w programie (Rys.2.33), obecność bloku
funkcyjnego wyróżniona jest w oknie Project tree, w katalogu Program blocks (1).
Natomiast w katalogu Technological Objects powinien pojawić się nowy obiekt
PID_Compact_DB [DB1] (2). W obiekcie możliwe jest zmiana takich parametrów
regulatora jak np. granice alarmowe, charakterystyki sygnałów czy nastawy.
Kolejnym krokiem jest wyznaczenie jego odpowiedzi skokowej regulatora.
Wartości zadana i mierzona (symulowana) będą zadawane z panelu HMI. Regulator ma
20
pracować w trybie automatycznym. Wartość sterująca będzie podawana na wyjście
analogowe i odczytywana na wejściu analogowym (Rys.2.34), a następnie po obróbce
sygnału przekazywana do panelu.
Rys. 2.32. Okno Call options.
Rys. 2.33. Katalog Program blocks po utworzeniu PID.
Rys. 2.34. Moduł AI/AO, sprzężenie wyjścia analogowego z wejściem analogowym.
21
Przed przystąpieniem do konfiguracji regulatora niezbędne jest utworzenie
nowych zmiennych. Listę tagów przedstawia rysunek 2.35. W zmiennych
odwołujących się do sygnałów analogowych należy wpisać adres wejścia i wyjścia
(%IW96 i %QW96). Adresy te można odczytać z danych konfiguracyjnych sterownika
(Rys.2.36). W tym celu kliknąć w oknie Project tree na pole Sterownik_1->Device
configuration (1), a następnie na moduł AI/AO w oknie głównym (2). Poniżej w
zakładce Properties udostępniona zostanie konfiguracja modułu. Aby poznać
ustawienia sygnałów analogowych należy wybrać pole AI4/AO2 (3). Pola Analog
imputs i Analog outputs zawierają listę kanałów, do których podłączane są przewody
(zarówno w przypadku wejścia jak i wyjścia w projekcie wykorzystany będzie Channel
0). Kliknąć na pole Analog imputs-> Channel0 (4). W oknie po prawo ukażą się
ustawienia kanału 0. Należy odczytać adres (5) oraz zmienić rodzaj sygnału z
napięciowego na prądowy: Current (6). Powtórzyć czynności 5 i 6 dla kanału 0 wyjścia
analogowego (7).
Rys. 2.35. Zmienne utworzone na potrzeby regulatora.
Rys. 2.36. Konfiguracja modułu AI/AO.
22
Mając utworzone zmienne można przystąpić do konfiguracji regulatora. Na
początku należy ustawić w bloku funkcyjnym PID_compact potrzebne sygnały
wejściowe i wyjściowe (Rys.2.37). W tym celu wybrać w oknie Project tree pole
Sterownik_1->Program blocks->Regulator[OB200] (1), a następnie zaznaczyć w
programie blok regulatora (2). W oknie poniżej należy kliknąć na zakładkę
Configuration (3). Wybrać pole Basic parameters (4). Biały krzyżyk na czerwonym tle
oznacza, że podstawowe parametry regulatora nie zostały jeszcze skonfigurowane.
Rys. 2.37. Konfiguracja regulatora.
W oknie Basic parameters ustawia się takie sygnały jak Setpoint (wartość
zadana), Input value (wartość mierzona) oraz Output value (sterowanie). Można
skojarzyć te zmienne z określonym blokiem danych lub z blokiem funkcyjnym. W
projekcie dla wszystkie trzy sygnały będą skojarzone z blokiem funkcyjnym
(Rys.2.38). W tym celu rozwinąć listę pod nazwą zmiennej (1) i wybrać opcję Value at
the function block (2).
Następnie powinno się określić źródło dla sygnałów Imput value i Output value
(Rys.2.39). Może to być zmienna z programu (Imput / Output) lub sygnał analogowy
(Imput_PER / Output_PER). Wartość mierzona ma być symulowana na wejście,
dlatego jako źródło wybieramy zmienną w programie (1). Sterowanie ma być
podawane na wyjście analogowe, więc źródłem będzie ustawiony domyślnie sygnał
analogowy (Output_PER).
Na koniec należy przypisać konkretne zmienne do poszczególnych sygnałów
(Rys.2.40). Zaczynając od sygnału Setpoint, najwygodniej jest zaznaczyć kursorem
23
puste, białe pole i wpisać pierwszą literę nazwy bloku funkcyjnego: „P” jak
PID_Comapct
Rozwinie
(1).
się
wtedy
lista
ze
wszystkimi
zmiennymi
rozpoczynającymi się na tą literę. Wśród nich znajdują się „PID_Compact_DB”>>.
Znak >> oznacza, że jest to wskaźnik do wszystkich zmiennych związanych z blokiem
funkcyjnym o poprzedzającej go nazwie. Po kliknięciu kursorem na wskaźnik rozwija
się lista zmiennych, z której należy wybrać „PID_Comapct_DB”.Setpoint (2). W
podobny sposób ustawić zmienną „PID_Comapct_DB”.Imput jako Imput value (3). W
pole zmiennej Output value wpisać adres wyjścia analogowego QW96 bądź nazwę
tagu: „WYanalogowe” (4). W celu sprawdzenia poprawności można także
przeprowadzić kompilację programu (Rys.2.41). Brak błędu oznacza brak błędów w
konfiguracji regulatora.
Rys.2.38. Skojarzenie zmiennych regulatora.
Rys.2.39. Ustawienie źródła sygnałów regulatora.
24
Rys. 2.40. Przypisanie zmiennych do sygnałów regulatora.
Rys. 2.41.Kompilacja programu.
Regulator powinien pracować w trybie automatycznym, z możliwością zmiany
nastaw przez użytkownika. W celu zmiany ustawień regulatora należy w oknie Project
tree (Rys.2.42) kliknąć prawym przyciskiem myszy na obiekt:
25
Sterownik_1->Technological_Objects->PID_Compact_DB
(1),
a
następnie
w
rozwiniętym menu wybrać polecenie Open in editor (2). W oknie głównym pojawi się
lista wszystkich zmiennych odpowiedzialnych za ustawienia regulatora. Aby włączyć
automatyczny tryb pracy należy znaleźć zmienną Stani->sRet->i_Mode (1) i wpisać w
polu Initial value cyfrę 3 (2).
Następnym krokiem będzie umożliwienie zmiany nastaw regulatora (Rys.2.44).
Nastawy regulatora można podejrzeć poprzez dwukrotne kliknięcie na pole:
Sterownik1->Technological_Objects->PID_Compact_DB->Configuration
w
oknie
Project tree (1). W oknie głównym udostępniona zostanie konfiguracja regulatora. Aby
umożliwić zmianę nastaw, należy wybrać opcję Advanced settings (2) oraz zaznaczyć
pole Use manual PID parameter setting (3) w obszarze PID parameter. W bieżącym
oknie możliwa jest zmiana takich parametrów jak np.: wzmocnienie (Proportional
gain), czas zdwojenia (Integration time) i czas wyprzedzenia (Derivative time).
Rys. 2.42. Wejście do parametrów regulatora.
Rys. 2.43. Ustawienie regulatora w automatyczny tryb pracy.
26
Rys. 2.44. Nastawy regulatora PID.
Ostatnim
etapem
projektu
jest
przeskalowanie
sygnału
sterującego
odczytywanego z wejścia analogowego. Sygnał analogowy podawany jest na
przetwornik analogowo/cyfrowy i przekazywany do programu w postaci zmiennej
integer o zakresie 0÷26784 (0÷20 mA). W projekcie wymaga się, aby sygnał sterujący
regulatora zmieniał się w zakresie 0÷100%. Niezbędna jest zmiana zakresu sygnału
(Rys.2.45). W tym celu należy wstawić do programu (Network 2 w bloku
organizacyjnym Regulator [OB200]) dwa bloki z katalogu Convert (1), znajdującego
się w zakładce Instructions. Pierwszy z nich to blok normalizacji NORM_X (2). Drugi
to blok skalowania SCALE_X (3).
Rys. 2.45. Bloki NORM_X i SCALE_X.
Blok normalizacji zamienia zmienną określonego typu i o określonym zakresie
na zmienną typu rzeczywistego (Real) zmieniającą się w zakresie 0÷1. Blok skalowania
z kolei, zamienia zmienną rzeczywistą o zakresie 0÷1 na zmienna określonego typu o
27
określonym zakresie. Przeliczając wartość w bloku NORM_X, a następnie w bloku
SCALE_X dostaje się efekt jak transformacji sygnału jak na rysunku 2.46.
Rys. 2.46. Efekt normalizacji i skalowania.
W obu blokach należy ustalić typ przeliczanych zmiennych int (Rys.2.47).
Można to zrobić poprzez kliknięcie na znaki zapytania w bloku i wybranie z
rozwiniętej listy odpowiedniego typu (1). Dla funkcji NORM_X będzie to typ zmiennej
wejściowej (argumentu), a dla funkcji SCALE_X typ zmiennej wyjściowej
(wynikowej).
Rys. 2.47. Ustawienie typu zmiennych wyliczanych w blokach NORM_X i SCALE_X.
Na koniec pozostało przypisanie zmiennych do bloków oraz podanie
przeliczanych zakresów (Rys.2.48). Zmienną wejściową funkcji normalizacji VALUE,
będzie zmienna „WEanalogowe” o zakresie MIN÷MAX: 0÷26784 (1). Wynik
normalizacji (OUT) zapisywany będzie do zmiennej „zmienna” (2), która zostanie
przypisana także do funkcji skalowania (3) jako argument (VALUE). Wynik skalowania
(OUT), to zmienna „CV”, której zakres (0-100) ustawiany jest na wejściu bloku
skalowania (5). Wartość „CV” jest sygnałem sterującym regulatora.
28
Rys. 2.48. Określenie wejść i wyjść w blokach NORM_X i SCALE_X.
Rys. 2.49. Implementacja regulatora PID z wykorzystaniem wejścia analogowego.
29
Bibliografia
[1] http://www.siemens.com
[2] Siemens S7-1200 Pierwsze kroki
30

Podobne dokumenty