Regulator PID
Kurs programowania PLC od podstaw
Odc. 20
Kontakt w sprawie artykułu: Mateusz Fas - 2021-03-29
Z tego artykułu dowiesz się:
- czym jest regulator PID oraz jakie pełni funkcje
- jak odpowiednio dobrać nastawy regulatora PID
- jak wykorzystać regulator PID w systemie sterowania
Z poprzedniego artykułu dowiedziałeś się jak wysyłać wiadomości Email w sterowniku PLC. W tym artykule poznasz budowę oraz zastosowanie regulatora PID. Nauczysz się także nastawiać regulator dobierając mu odpowiednie parametry. Dowiesz się także jak wykorzystać regulator PID w systemie sterowania, wykorzystując stworzony wcześniej program.
Kurs programowania PLC od podstaw dla automatyków i elektryków
Podstawy programowania sterowników PLC
Programowanie sterownika PLC w języku drabinkowym
Programowanie zintegrowanego panelu HMI
Komunikacja sterowników PLC w sieci szeregowej i Ethernet
Zaawansowane funkcje sterownika PLC
Czym jest Regulator PID?
Regulator PID nazywany jest inaczej regulatorem proporcjonalno-całkująco-różniczkującym. Składa się on z 3 członów:
- Proporcjonalnego P – o wzmocnieniu Kp, który kompensuje uchyb bieżący
- Całkującego I, o czasie zdwojenia (całkowania) Ti, który kompensuje akumulację uchybów z przeszłości
- Różniczkującego D – o czasie wyprzedzenia (różniczkowania) Td, który kompensuje przewidywane uchyby w przyszłości
Regulator PID stanowi najlepsze rozwiązanie w przypadku, gdy wiedza na temat obiektu regulacji jest ograniczona. Poprzez odpowiedni dobór nastaw regulatora PID, otrzymuje się regulację dostosowaną dla danego obiektu.
Schemat blokowy przedstawiający budowę regulatora PID :
Klasyczny układ regulacji
Głównym zadaniem regulatora PID jest kontrola procesu technologicznego. Jego celem jest najczęściej utrzymanie wartości wyjściowej na określonym poziomie, zwanym wartością zadaną.
Regulator pracuje w pętli sprzężenia zwrotnego, oblicza wartość uchybu, jako różnicę pomiędzy zadanym sygnałem wejściowym, a wartością sygnału wyjściowego. Stosując regulator PID dążymy do zredukowania uchybu poprzez odpowiednie dostosowanie sygnału podawanego na wejście regulowanego obiektu.
Po niezależnym zwiększaniu parametrów regulatora, otrzymamy efekty jak w tabelce poniżej. Ma to wpływ na dobranie nastaw regulatora PID.
Programowanie w akcji!
Dokonasz teraz modyfikacji podprogramu Mieszanie_i_grzanie, w taki sposób aby możliwe było wykorzystanie regulatora PID do grzania cieczy w zbiorniku. Dobierzesz nastawy dla regulatora oraz dodasz nowy ekran operatorski, który pomoże w obserwacji procesu regulacji temperatury.
Krok 1. Deklaracja nowych zmiennych
Przed przystąpieniem, do modyfikacji naszego programu dodaj w pierwszej kolejności nowe zmienne. W oknie I/O Names dodaj rejestry przedstawione w tabeli, które zostaną wykorzystane w dalszej części kursu.
Krok 2. Dodawanie bloków funkcyjnych.
Po zakończeniu dodawania rejestrów przejdź do modułu Mieszanie_i_grzanie. W pierwszej kolejności dodaj cewki ustawiające i resetujące odpowiedzialne za załączenie i wyłączenie grzania oraz regulatora PID po upływie określonego czasu.
Utwórz nową linię, a następnie dodaj bloki normalizujące wartość sterującą i wartość zadaną, pobieraną z wizualizacji oraz blok obliczający moc grzałki.
Następnie dodaj blok, dzięki któremu po wyłączeniu regulatora PID, moc grzałki zostanie ustawiona na podaną wartość
W następnym etapie dodaj blok odpowiedzialny za zwiększanie temperatury cieczy, która jest równocześnie zmienną procesową podawaną na blok regulatora PID.
W kolejnym szczeblu umieść dwa bloki. Pierwszy z nich odpowiedzialny będzie za symulację utraty energii do otoczenia, natomiast drugi będzie odpowiadał za normalizację aktualnej wartości temperatury w celu wyświetlenia jej na ekranie operatorskim.
W następnym kroku dodaj trzy szczeble, które zapewnią kontrolę nad maksymalnym i minimalnym poziomem temperatury w zbiorniku. W razie potrzeby wyłączą grzanie bądź ustawią minimalną temperaturę.
Krok 3. Dodawanie regulatora PID .
W celu dodania Regulatora PID w oknie Cscape wybierz opcję Menu -> View -> Toolbars -> Special Operations
Po otwarciu Special Operations ukaże się takie okno narzędziowe.
Do wyboru mamy dwa bloki funkcyjne odpowiedzialne za strojenie oraz obsługę regulatora PID:
- PID IND – (od ang. Independent) – regulator tradycyjny o niezależnych wyrazach
- PID ISA (od ang. ideal standard algorithm) – regulator idealny
Różnica jaka występuje między nimi polega na wpływie współczynnika wzmocnienia proporcjonalnego na wynik końcowy. W niektórych przypadkach nastaw Regulatora PID_IND jest łatwiejszy niż PID_ISA, ale oba działają poprawnie.
Do naszego programu wybierz blok PID_ISA i umieść go na ostatnim nowo dodanym szczeblu.
Przejdź do konfiguracji wybranego bloku:
- SP – wartość zadana
- PV – wielkość regulowana
- CV – sygnał sterujący
- MAN – tryb pracy ręcznej (wyłączenie automatu)
- UP – w trybie ręcznym zwiększenie sygnału sterującego
- DOWN – w trybie ręcznym zmniejszenie sygnału sterującego
Krok 4. Konfiguracja regulatora PID
Bloki funkcyjne PID są konfigurowane za pomocą okna dialogowego Edit. Aby otworzyć okno PID Edit, po dodaniu bloku regulatora PID kliknij na niego dwukrotnie.
W oknie edycji podaj kolejno rejestry odpowiedzialne za:
- przechowywanie nastaw regulatora oraz konfiguracji bloku
- ustawienie wartości zadanej
- wprowadzenie zmiennej procesowej
- przechowanie zmiennej kontrolnej obliczonej przez regulator
- trzy ostatnie rejestry odpowiedzialne za manualna kontrole nad regulatorem
Po wprowadzeniu wszystkich parametrów w oknie PID Edit, wciśnij przycisk TUNE, w celu otworzenia okna do wprowadzania nastaw.
Pamiętaj, że oprogramowanie Cscape musi być połączone ze sterownikiem w celu prawidłowego wykorzystania tego okna!
Krok 5. Automatyczne dobieranie nastaw regulatora PID
Przed rozpoczęciem automatycznego dostrajania wymagane jest częściowe zdefiniowanie parametrów bloku PID. Dotyczy to zwłaszcza parametrów Setpoint, Sample Period, Upper and Lower Clamp, Error Term i Output Polarity.
- Sample Period – jak często rozwiązywane jest równanie
- CV Upper Clamp – największa wartość zmiennej CV która ma wpływ na proces lub największa bezpieczna wartość
- CV Lower Clamp – najmniejsza wartość zmiennej CV która ma wpływ na proces lub najmniejsza bezpieczna wartość
- CV bias – kompensacja, która może być dodana do CV
- Dead band Upper/Lower – może zapobiegać niepotrzebnym oscylacjom, liczba ponad/poniżej wartości zadanej, gdzie wartość PV jest wystarczająco blisko (instrukcja PID nie będzie dostosowywać wartości CV)
- Minimal Slew Time – minimalna prędkość narastania sygnału
W celu skorzystana z opcji automatycznego dostrajania bloku PID, po zdefiniowaniu parametrów bloku PID zaznacz opcję Support Auto Tune a następnie kliknij na Auto Tune Settings >>>
Następnie wprowadź odpowiednie zmienne.
Po wprowadzeniu parametrów naciśnij przycisk OK. Poprzednio dodany blok PID zmieni się na nowy blok AutoPID.
Krok 6. Dodawanie i edycja ekranu operatorskiego.
Przejdź do edytora ekranów. Na pierwszym ekranie dodaj obiekt Screen Jump, który będzie przenosił nas do ekranu 13 .
Następnie zmień jego adres na adres na adres ekranu 13 oraz w opcji Legend >> jego nazwę na PID oraz czcionkę jak na załączonym zdjęciu. Następnie przejdź do ekranu 13 na którym zamieścimy niezbędne elementy panelu.
Po przejściu do ekranu 13 ustaw tytuł postępując analogiczne jak w przypadku poprzednich ćwiczeń a następnie dodaj obiekt Screen Jump, jak w poprzednim kroku i ustaw jego nazwę jako „Powrot”. Przycisk ten będzie nas przenosił do ekranu głównego.
W kolejnym etapie dodaj trzy obiekty Numeric Data, opisując je kolejno:
Temperatura aktualna (%R812),
Moc grzałki (%R811),
Temperatura zadana (%R815)
Pierwsze dwa elementy nie posiadają możliwości edycji. Służą jedynie w celach informacyjnych. Natomiast wartość w trzecim z nich można ustawić w przedziale od 0 do 100.
W kolejnym kroku dodaj lampkę (%M70) informującą o stanie regulatora PID oraz przycisk dwustopniowy (%M8), który odpowiada za załączenie grzałki w zbiorniku.
Ostatnim elementem wizualizacji dodanie jest wykres trendu, na którym zobrazujesz przebieg wartości temperatury (%R801). W oknie edycji linii trendu wprowadź rejestr przechowujący aktualną wartość wysterowanej temperatury.
A następnie zdefiniuj jego parametry oraz zmienne.
Finalnie ekran operatorski wygląda w następujący sposób.
Oczywiście nie jest to jedyne możliwe rozwiązanie wyglądu ekranu operatorskiego.
Następnie zamknij edytor ekranów i wgraj program do sterownika. Przetestuj działanie regulatora, zmieniając jego nastawy i sprawdzając jakie zmiany następują po ich wprowadzeniu.
W kolejnym artykule z cyklu Kurs programowania PLC od podstaw:
- możliwość składowania i rejestracji danych
- menadżer pamięci zewnętrznej w sterownikach Horner
- logowanie danych procesowych w Cscape na zewnętrznych nośnikach danych
A jak zrobić PID z Rampą?