background image

Sterowniki PLC/PAC 
Uwagi wstęne 
-Sterowniki PLC/PAC są jednymi z najczęściej stosowanych w przemyśle cyfrwych urządzeń sterujących  
-Skróty nazw oznaczają  Programmable Logic Controller i Programmable Automation Controller 
-Pod względem konstrukcyjnym obie wersje nie różnią się między sobą nazwa PAC jest raczej chwytem marketingowym i oznacza PLC o większych możliwościach 
obliczeniowych i platformą programową o większej otwartości. 
-Sterowniki PLC pierwotnie były dedykowane wyłącznie do realizacji sterowania logicznego , obecnie (zwłaszcza wersje PAC) są w stanie realizować większość zadań sterowania 
za wyjątkiem sterowania numerycznego i robotyki. 
-Kostrukcja i zasady programowania sterowników PLC są znormalizowane. 

 

Generalne założenia dotyczące systemów PLC: 
-Łatwe programowanie i rekonfiguracja(sprzętowa i programowa) w zależności od potrzeb. 
-Konstrukcja modułowa i łatwość napraw i utrzymania w ruchu poprzez wymianę modułów 
-Wyższa niezawodność mniejsze wymiary i pobór energii niż systemy przekaźnikowe 
-Cena porównywalna ze sprzętem przekaźnikowym 
Uwagi 
-Konfiguracja jest budowana z modułów ściśle pod kątem wymagań określonej aplikacji 
-W ramach jednej "rodziny" sterowników jest dostępna duża liczba różnych modułów o różnych możliwościach i cenie 
-Lokalizacja modułów na szynie jest ściśle okreslona i  determinuje np. Ich adresy 
-W praktyce często stosowana jest konfiguracja rozproszona, gdy moduły sygnałowe są połaczone z CPU za pośrednictwem sieci.  
 
Podstawowe typy modułów sterownika PLC: 
-Zasilacze 
-jednostki centralne (CPU) 
-moduły komunikacyjne np ETHERNET 
-moduły sygnałów procesowych:(wejścia binarne, analogowe, wyjścia binarne, analogowe) 
-Specjalizowane moduły "inteligentne" z własnymi procesami i układami wejść i wyjśc np.:pozyjonowanie osi ,regulacja temperatury  
 
Dodatkowe elementów PLC: 
Panele operatorskie – są to autonomiczne elementy o różnej funkcjonalności od prostej aż do bardzo rozbudowanej. Te bardziej rozbudowane pracują np pod windowsami ce i 
mogą być platformą sprzętową dla aplikacji SCADA i stopnia nadrzędnego. 
 
Sieć przemysłowa: 
-Do połączenia rozproszonej konfiguracji pojedynczego PLC 
-do połączenia sterownika PLC z innymi elementami systemu(np komputer) 
-sieć przemysłowa może siędość znacznie różnic od ETHERNETU 
 
Kompaktowy sterownik "hard PLC". Cechy: 
-W jednej obudowie jest CPU zasilacz i zespół wejści wyjśc 
-rozwiązanie dedykowane do prostszych aplikacji i tańsze niż sterownik modułowy 
-większość sterowników kompaktowych ma możliwość rozbudowy o dodatkowe wejścia i wyjścia. 
 
System sterowania "soft PLC" 
Idea:
Interfejs procesowy oraz metody programowania są te same co dla systemu hard plc.; Jednostka centralna jest zrealizowana wirtualnie pod nadzorem systemu WINDOWS 
Zalety:Znacznie większa moc obliczeniowa w stosunku do systemu hard PLC; intergracja na jednej platformie sprzętowo-programowej systemu SCADA i CPU sterownika(i ew. 
Środowiska konfiguracyjnego) 
Wady:Praca pod nadzorem systemu WINDOWS (zawodność działania) 
 
Cykl programowy PLC i regulatora cyfrowego: 

 

od „odczyt wejść” do „uaktualnienie wejść”:  czas odpowiedzi T

od początku do końca: czas cyklu Ts  
Czas cyklu ( ang. Cycle Time, Scan Time) Ts   Jest to czas trwania 1 cyklu programowego, od inicjalizacji do diagnostyki.  
Czas odpowiedzi ( ang. Response Time) To  Jest to czas od odczytu wejścia do zapisu skojarzonego z tym wejściem wyjścia.  
Podczas pracy sterownika wartości T

s oraz To nie są stałe, lecz zmieniają się w pewnym zakresie i można jedynie oszacować ich minimalne i maksymalne wartości: 

 

Dokładność zależy od oszacowań producenta 
 
W przypadku regulatorów PID i innych prostych urządzeń nie mamy wpływu na wartość T

oraz To, natomiast mamy wpływ na te parametry i mogą one być szacowane oraz 

mierzone w przypadku systemów PLC.  
Przykład szacowania wartości T

o dla sterownika PLC (SIEMENS): 

T

omin

=T

R

+Tos+Tu+Tw+T

Di

+T

Do+

T

T

omax

=2T

R

+2Tos+2Tu+2Tw+T

Di

+T

Do+

T

T

+2T

DP

 

TR – czas odczytu wejść,Tos -czas wykonania systemu operacyjnego,Tu – czas wykonania programu użytkownika,TW – czas zapisu wyjść,TDi –czas opóźnienia wejść,TDo –czas 
opóźnienia wyjść,  
 
Oszacowanie czasu obsługi wejść i wyjść:  
T

R

+T

W

=K+A*LB

0

+B*LB

1%3

+D*LB

DP

 

LB – liczba bajtów  czytanych lub zapisywanych:  
0 – na szynie 0, 
1-3 – na szynach 1 – 3, 
DP- w układach rozproszonych wejść /wyjść 
K, A, B, D  - stałe, równe w przypadku CPU 315 SIEMENS SIMATIC S7 300: K = 109 [us] , A= 10.6 [us] , B = 12.6 [us] , D = 10 [us] . 

background image

Oszacowanie czasu wykonania programu użytkownika:  

 

= 1.15 ( dla CPU 315 )  
Tinstr – czasy wykonania wszystkich instrukcji programu  
Czas wykonania pojedynczej instrukcji programu jest zdeterminowany przez: Typ CPU;Typ instrukcji;typ danych na jakich ta insrukcja jest wykonana 
Czasy wykonania timerów: 
T

T

=8n; n = ilość timerów użytych w programie 

 
WNIOSKI ( tylko system „Hard-PLC”): 
-Operacje wykonywane na danych typu DINT są znacznie szybsze, niż na danych typu REAL,  przy tej samej precyzji. 
-W przypadku wysokich wymagań dot czasu cyklu należy pamiętać o wyłączaniu nie używanych wejść i wyjść, 
-Sterownik „hard PLC” nie nadaje się do realizacji zadań sterowania numerycznego i robotyki, gdyż te zadania wymagają wykonywania dużej ilości szybkich obliczeń z użyciem 
funkcji trygonometrycznych.  
-Oszacowania podawane przez producenta sprzętu są zwykle bardzo „ostrożne” i opisują najgorsze możliwe przypadki.  
 
Zasady programowania sterowników PLC 
Ogólne zasady programowania opisane w normie: 
-Model i elementy oprogramowania 
-typy danych  
-typy zmiennych 
-języki i metody programowania 
Zasady nieomówione (zleżne od systemu sprzętu) 
-zasady adresacji 
-"nieformalne" elementy oprogramowania 
-metody implementacji niektórych elementów 
 
Konfiguracja – 
element na najwyższym poziomie jest to całość oprogramowania sterownika determinująca jego pracę. Obejmuje zarówno OS jak i program użytkownia 
Zasób – Element opisujący platformę sprzętową do realizacji programu. Program aby był wykonywalny musi być załadowany do zasobu np symulator PLC jest symulatorem 
zasobu. 
Program – Jest to logiczne połączenie wszystkich elementów konstrukcji potrzebnych do założonego przetworzenia sygnałów wymaganego do sterowania maszyny lub procesu 
przez system PLC 
Zadanie – Element nadzorujący wykonanie programu lub pewnej jego logicznej całości 
Blok funkcyjny -  element dynamiczny o wielu wejściach i wyjściach 
-bloki funkcyjne są podstawowym narzędziem programowania obiektowego systemów PLC  
-wyjścia bloku są zdeterminowane zarówno przez wejścia jak i przez historię działania bloku (część zmiennych jest zapamiętywana z poprzednich wywołań) 
-"na zewnątrz" bloku są dostępne wyłącznie zmienne wejśiowe i wyjśiowe a nie są dostępne zmienne wewnętrzne 
 
Standardowe bloki funkcyjne są częścią firmware’u sterownika i są dostępne w każdym systemie PLC:-elementy bistabilne,-elementy detekcji zbocza,-liczniki,-timery. 
Niektóre (nie wszystkie systemy PLC umożliwiają budowę własnych FB podczas budowy oprogramowania. 
Funkcja Element statyczny o wielu wejściach i zwracający jedną wartość określonego typu. 
-Funkcyjne są również podstawowym narzędziem programowania obiektowego systemów PLC 
-Wartość wyjścia funkcji jest zdeterminowana wyłącznie przez wartość jej wejść (funkcja nie posiada „pamięci”). 
-„na zewnątrz” funkcji są dostępne wyłącznie zmienne wejściowe i jej wyjście, a nie są dostępne zmienne wewnętrzne 
 
 
W każdym systemie PLC dostępny jest dość duży zestaw funkcji standardowych 
-funkcje konwersji typu, 
-funkcje arytmetyczne i matematyczne, 
-funkcje porównania, 
-funkcje wyboru, 
-funkcje operujące na danych typu STRING, 
-funkcje operujące na danych typu czasowego, 
Niektóre (nie wszystkie) systemy PLC umożliwiają budowę własnych funkcji podczas budowy oprogramowania. 
Zmienna globalna -Zmienna dostępna dla wszystkich elementów programu, zasobu lub konfiguracji. 
-Zmienne globalne umożliwiają szybką wymianę danych w obrębie programu, 
-Zaburzona jest sekwencyjność wykonania programu, 
-„Dobre narzędzie do budowy zupełnie niezrozumiałych programów”, 
-Szczegóły definiowania i stosowania zależne są od konkretnego systemu. 
Zmienna bezpośrednio reprezentowana -Zmienna, której nazwą jest adres(wejścia, wyjścia lub komórki pamięci wewnętrznej). 
Zasady adresacji są zależne od systemu i pomimo ogólnych podobieństw różnią się pomiędzy sobą. 
Przykładowo: adresy wejścia binarnego w 3 systemach: 
SIEMENS: 10.0, GEFANUC: %l1, ALLEN_BRADLEY: l1:0.0/0 
Ścieżka dostępu –Element oprogramowania zapaeniający wymianę danych z innymi konfiguracjami lub konfiguracją a innym elementem(np. systemem SCADA) 
 

background image

 
„Nieformalne” elementy organizacyjne oprogramowania PLC – W 
każdym rzeczywistym systemie PLC są również do dyspozycji różne 
nietypowe (charakterystyczne tylko dla tego systemu) elementy 
oprogramowania, 
- Zasady ich konfiguracji i wykorzystania są różne i zależą od 
konkretnej platformy 
-Przykłady zostaną omówione dla systemów ALLEN – BRADLEY i 
SIEMENS 
ALLEN-BRADLEY: ogólna struktura oprogramowania: 

 

SIEMENS SIMATIC S7 300 W tym systemie jest możliwość 
samodzielnego definiowania FC i FB ponadto są stosowane 
następujące elementy „nieformalne”: 
-Bloki organizacyjne (OB.) 
-Bloki danych (DB), 
Typy danych definiowane przez użytkownika (User – Defined Data 
Types:UDT 
Blok organizacyjny (OB) to rodzaj „pomost” pomiędzy programem 
użytkownika i systemem operacyjnym. 
-OB. To jedyny element oprogramowania uaktywniany bezpośrednio z 
poziomu OS. 
- Każdy element programu aby mógł być wykonany musi być 
wywołany z jakiegoś OB. Element nie wywołany w żadnym OB nie 
będzie wykonany. 
- Jest możliwy zapis programu lub jego części bezpośrednio w OB 
-Różne części programu mogą być wywoływane przez różne bloki 
organizacyjne. 
-Są dostępne różne typy bloków, uaktywniane w różny sposób. 
-Każdy OB Ma nazwę zastrzeżoną: OB<numer> ale można tym 
nazwom przypisać także nazwy symboliczne. 
Bloki danych (DB) – Blok danych nie zawiera żadnych 
wykonywalnych instrukcji, służy on wyłącznie do przechowywania 
danych. 
-DB może być interpretowany  jako struktura i dostęp do jego 
elementów jest taki, jak do elementów struktury. 
-Nazwa jest zastrzeżona: DB<numer>, ale nazwy symboliczne są 
dozwolone i ich użycie jest zalecane. 
- Przydział pamięci dla DB jest wykonywany automatycznie przez 
kompilator, 
-Niektóre typy danych mogą być przechowywane wyłącznie w DB 
(np. STRING) 
-Dostęp do DB spoza konfiguracji jest możliwy przy stosowaniu 
firmowego oprogramowania SCADA SIEMENS(WinCC, 
ProTool/Pro), 
-Pewne bloki danych mogą być zapamiętywane po wyłączeniu 
zasilania PLC (należy to zdefiniować podczas konfiguracji sprzętu) 
Typ danych definiowany przez użytkownika (UDT ). UDT-szablon 
bloku danych. [UDT]->DB1 i ->DB2  i ... i ->DBn 
Ideą UDTjest budowa „szablonu” bloku danych, który może być 
sklonowany w dużej liczbie bloków. 
-Wszystkie bloki stowarzyszone z tym samym UDT mają tę samą 
strukturę, ale są w pełni niezależne od siebie. 
-Konstrukcja przydatna podczas budowy dużych aplikacji oraz 
automatycznego generowania kodów źródłowych. 
 
Typy danych stosowane w systemach PLC  
- Norma 61131 dopuszcza do stosowania w systemach PLC wiele 
różnych typów danych. 
-Dostępność znormalizowanych typów danych na rożnych platformach 
jest różna. 
 
[1Typy danych] 
[2Elementarne – liczbowe: całkowite, rzeczywiste, binarne; ciąg 
znaków; czasowe: czas trwania, godzina dnia, data i godzina] 
[2Rodzaje danych] 
[2Pochodne – złożone: tablica, struktura;  proste: okrojone, 
wyliczeniowe] 
Typy zmiennych stosowane w systemach PLC 
Typ zmiennej- Słowo kluczowe do deklaracji- Opis 
Wewnętrzna- VAR- Zmienna lokalna, widoczna wyłącznie wewnątrz 
danej POU 
Wejściowa- VAR_INPUT- Zmienna służąca do podawania wartości 
wejściowych nie może być modyfikowana 
Wejściowa modyfikowana- VAR_IN_OUT- Zmiennawejściowa która 
może być modyfikowana wewnątrz danej POU 
Wyjściowa- VAR_OUTPUT- Zmienna służąca do podawania na 
zewnątrz wyników działania POU 
Tymczasowa- VAR_TEMP- Zmienna której wartość jest kasowana po 
zakończeniu wykonywania danej POU 
Zewnętrzna- VAR_EXTERNAL- Zmienna lokalna która może być 
widoczna na zewnątrz POU(deklaracja używana wewnątrz POU) 
Globalna - VAR_GLOBAL- Zmienna globalna 
Bezpośrednia reprezentowana- Nie deklaruje się- Zmienna której 
nazwa to adres dostępnej przestrzeni adresowej sterownika 
[1Języki programowania PLC]-[Graf sekwencji] 
[2Graficzne – język drabinkowy LD; język schematów blokowych 
FBD] 
[2Tekstowe – lista instrukcji IL; tekst strukturalny ST] 

background image

Język drabinkowy LD 
-Sposób budowy programu jest zbliżony do projektowania układu 
sterowania logicznego zrealizowanego w technice przekaźnikowej. 
-Działanie programu jest analogiczne, jak działanie układu sterowania 
logicznego zrealizowanego w technice przekaźnikowej 
-Podstawowym elementem języka jest obwód lub  szczebel, 
przyłączony do szyn prądowych. Lewa szyna prądowa ma wysoki 
potencjał (stan „1” logicznej), prawa może być interpretowana jako 
masa. 
-Wykonanie programu to „przepływ prądu” od lewej do prawej szyny, 
sterowany stykami. 
-Obwody są budowane ze styków, cewek oraz bloków 
reprezentujących funkcje i instancje bloków funkcyjnych. 
-Bloki reprezentujące funkcje i instancje FB są elementem „wtórnym”, 
dodanym później. 
 
Podstawowe elementy obwodu w języku LD: 
Styki: 
<***> 
--||-- normalnie otwarty 
--|/|-- normalnie zamknięty 
--|P|-- reagujący na zbocze dodatnie 
--|P|-- reagujący na zbocze ujemne 
Styk reaguje na wartość logiczną zmiennej typu BOOL, która jest z 
nim skojarzona. Ze stykiem można skojarzyć zmienne: wejściowe, 
wyjściowe i wewnętrzne. Styk nie może modyfikowac wartości 
zmiennej skojarzonej z nim. 
Cewki 
<***> 
--( )—cewka zwykła 
--( /)—cewka negująca 
--( S)—cewka ustawiająca 
--( R)—cewka kasująca 
--(M )—cewka z pamięcią 
--( SM)—cewka ustawiająca z pamięcią 
--(RM )—cewka kasująca z pamięcią 
--(P )—cewka reagująca na zbocze rosnące 
--( N)—cewka reagująca na zbocze malejące 
Cewka modyfikuje wartość zmiennej typu BOOL, która jest z nią 
skojarzona. Z cewkami można skojarzyć zmienne wewnętrzne i 
wyjściowe a nie można wyjściowych  
Choć nie jest to nigdzie wprost podane w normie, to w większości 
środowisk programowych cewka powinna być ostatnim elementem 
obwodu. 
 
Wywoływanie funkcji i instancji bloków funkcyjnych w języku LD: 

 
EN – służy do uruchomienia wykonania bloku – blok jest 
wykonywany tylko wtedy gdy EN=1, a nie wykonywany, gdy EN =0. 
ENO=1 – informuje, że blok został wykonany poprawnie, ENO = 0 – 
blok nie wykonywany lub wykonany niepoprawnie 
1.Wykonanie żadnego elementu obwodu nie zaczyna się dopóki ni 
wyznaczono jego wszystkich wejść. 2.Wykonanie żadnego elementu 
obwodu nie jest zakończone dopóki nie wyznaczono wszystkich jego 
wyjść. 3.Wykonanie programu nie jest zakończone dopóki nie 
wyznaczono wszystkich wyjść z tego programu. 4. W obrębie obwodu 
elementy są wykonywane  od strony lewej do prawej, a kolejne 
obwody są wykonywane od góry do dołu, chyba że zastosowano 
instrukcje skoku, która zmieniła tę kolejność 
 
Podsumowanie: 
1.Język LD jest przeznaczony do realizacji układów sterowania 
logicznego oraz prostszych układów regulacji ciągłej (nie 
zawierających złożonych operacji matematycznych, zbyt 
rozbudowanych warunków i alternatywnych ścieżek wykonania). 
2.LD dobrze się nadaje także do łączenia w całość mniejszych 
elementów oprogramowania, napisanych z użyciem innych języków. 
3.Interpretacja i kolejność wykonania programu jest jasna i 
jednoznaczna. 
4.łatwa diagnostyka błędów dzięki wyjściu ENO. 
5. Nie jest zalecane używanie instrukcji skoków, w przypadku aplikacji 
wymagających użycia tej konstrukcji lepiej użyć Graf Sekwencji SFC 

background image

Język listy instrukcji IL 
Jest to język tekstowy typu asembler. W wielu przypadkach jest on 
bezpośrednio interpretowany przez CPU (nie jest kompilowany). Ma 
on największe możliwości ze wszystkich omawianych języków.  
Program w IL to sekwencja instrukcji, z których każda się zaczyna w 
nowej linii. 
Wszystkie operacje są wykonywane na zawartości roboczej komórki 
pamięci CPU, nazywanej akumulatorem. 
Sposób realizacji akumulatora jest zależny od sprzętu: GE FANUC:  1 
akumulator liczbowy 32bitowy i 1 binarny (oba definiowane przez 
użytkownika) SIEMENS: 2 lub  4 akumulatory 32 bitowe i bit RLO 
jako akumulator binarny. 
 
Składnia pojedynczej liniii: 
(etykieta)—operator—(modyfikator) – operand //komentarz 
Interpretacja wykonania instrukcji: 
ACC

n

:=ACC

p

{operator}OPERAND gdzie: n-nowa zawartość 

akumulatora p-poprzednia zawartość akumulatora. 
 
-Norma IEC 1131 definiuje podstawowy zestaw operatorów Listy 
instrukcji. Operatory te obejmują wszystkie podstawowe operacje 
logiczne i arytmetyczne. 
-IL zapewnia także możliwość wywoływania wszystkich funkcji oraz 
instancji bloków funkcyjnych dostępnych na danym 
sterowniku(standardowych i definiowanych przez użytkownika) 
 
-Należy zawsze zwracać uwagę na zgodność zawartości akumulatora i 
operandu. W szczególności powinny one być tego samego typu. 
-Nazwy instrukcji i składnia języka dla poszczególnych systemów PLC 
mogą się różnić, ale „filozofia” programowania jest ta sama 
 
Podsumowanie: 
1.Język IL jest przeznaczony do realizacji niewielkich, krytycznych 
pod względem funkcjonalności, jakości i szybkości działania 
fragmentów programów(np.FC lub FB), które mogą być wywoływane 
w programach napisanych w innych językach 
2.Wadą znormalizowanego IL jest brak diagnostyki błędow. W 
niektórych systemach(SIEMENS) jest diagnostyka niektórych błędów. 
3.Interpretacja programu nie jest zdefiniowana w normie, w 
szczególności nie wiadomo, w jaki sposób są wykonywane operacje na 
złożonych typach danych. 
Język Schematów funkcyjnych FBD – Język graficzny, budowa 
programu jest podobna do budowy np. diagramu w SIMULINK-u. 
Język zbliżony do języka drabinkowego  
Tekst Strukturalny ST – Język tekstowy wysokiego poziomu zbliżony 
do PASCALA. Dostępne są pętle i instrukcje wyboru oraz wyrażenia 
(nawet bardzo złożone). Plik źródłowy musi być kompilowany. 
Graf Sekwencji – Jest to graficzne narzędzie programowe, bazujące na 
metodologii sieci Petriego typu P/T, umożliwiające realizację 
algorytmów sterowania sekwencyjnego(tj. takich, w których da się 
wyróżnić poszczególne etapy i wykonywane w nich działania oraz 
zdefiniować warunki przejścia od jednego etapu do następnego). 
Podstawowe elementy grafu: 
1.Etapy , 2.Przejścia, 3.Działania 
Etap określa, w którym miejscu realizacji program się aktualnie 
znajduje. Powinien mieć unikalną nazwę skojarzeniową. Każdy etap 
może tylko jeden raz występować w jednym grafie. Graficzna 
reprezentacja etapu jest następująca: 
[nazwa] – etap początkowy 
    | 
 
    | 
[nazwa] – etap 
    | 
Przejście – określa warunki logiczne, jakie muszą być spełnione aby 
nastąpiło przejście od etapu poprzedniego do następnego. Warunki te 
mogą być zapisane w każdym z wcześniej omówionych języków: 
Działanie opisuje, co ma być wykonane w etapie, z którym jest ono 
skojarzone. Reprezentacja graficzna działania jest następująca: 
kwalifikator|nazwa działania|zmienna zwrotna 
instrukcje 
Kwalifikator działania  
Określa korelację czasową pomiędzy czasem aktywności etapu i 
czasem aktywności działania. W najprostszym przypadku działanie jest 
wykonywane przez cały czas aktywności etapu(Inne kalifaktory – zob 
Legierski, Lewis) 
Podstawowe typy sekwencji:pojedyncza,wyboru,współbieżne  
Aby zakończenie było możliwe, to wszystkie etapy współbieżne muszą 
być aktywne! 
Podstawowe reguły budowy i wykonania SFC:  
Każde 2 etapy muszą być rozdzielone przejściem i każde 2 przejścia 
musza być rozdzielone etapem, 
Aby nastąpiło przejście do następnego etapu to: 
-Poprzedni etap musi być aktywny, 
- Musi być spełniony warunek logiczny na przejście. 

 

background image

Sieci komputerowe są obecnie stosowane powszechnie w przemyśle na wszystkich poziomach sterowania, zarówno na niższych (sterowanie bezpośrednie) jak i na wyższych 
(sterowanie decyzyjne).                                                                             Na różnych poziomach hierarchicznego systemu sterowania są stosowane różne typy sieci:                   -na 
poziomach niższych – sieć przemysłowa                                                                                                                    -na poziomach wyższych- sieć biurowa 

Wymaganie 

Sieć biurowa 

S. 

przemysłowa 

Ilość 

danych 

Duża [Mb] 

Mała 

[bity,bajty] 

Determiniz
m czasowy 

Nie wymagany 

wymagany 

Szybkość 

dzialania 

mała 

duża 

Natężenie 

przepływu 

danych w 

sieci 

Duże 

wiadomości o 

zmiennym i 

nieprzewidywal

nym natężeniu 

Duża liczba 

krótkich 

wiadomości o 
prawie stałym 

i dającym się 

oszacować 

natężeniu. 

Dodatkowe wymagania wobec sieci przemysłowej: - łatwość dołączania prostych urządzeń                        - możliwość zasilania elementów sieci przez magistralę                                                                                            
- łatwość lokalizacji uszkodzeń                                                                 -  odporność na błędy w montażu i konfiguracji             -  odporność na zakłócenia                                
Przykłady sieci przemysłowych: HART, Profibus, Modbus, DeviceNet, LonWorks, Ethernet(wersja przemysłowa). 
 
Model sieci wg OSI. (7warstwowy) 
 
7 aplikacji 
6 prezentacji  
5 sesji 
4transportowa 
3sieciowa 
2łącza danych 
1fizyczna 
 
 
 
Funkcje wartwy fizycznej OSI:                                        
- specyfikacje medium fizycznego                                           - definiowanie sygnałów elektrycznych, optycznych                              -  taktowanie interfejsu                                                   
- specyfikacje interfejsu NIC -Network interface card - sprawdzanie błędów transmisji                                    - kodowanie binarne                                               Funkcje warstwy 
łącza danych
: -mostkowanie i przełączanie ramek                                                           – ramkowanie danych                                                     – tworzenie architektury sieci 
fizycznej                                – synchronizacja transmisji                                                   – kontrola błędów (suma kontrolna)                                     – sterowanie i kontrola 
przepływu danych                          – adresowanie portów (adres MAC)                      Warstwa liniowa- 2 podwartwy : wyższa LCC, niższa MAC.                                                                                
Funkcje warstwy aplikacji OSI:                                        -jest najbliżej użytkownika                                                      - steruje integralnością danych i odtwarzaniem błędnych 
informacji                                                                 -aplikacje np. sterownik „soft PLC”  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Topologie sieci przemysłowych: 
Nazwa 

Zalety  

Wady 

magistra
lowa 

Prosta budowa, 
mała ilość 
przewodów, 
awaria jednego 
węzła nie 
powoduje 
awarii sieci, 
łatwość 
rozbudowy 

Trudna 
diagnostyka 
błędów, awaria 
terminatora lub 
kabla 
uniemożliwia 
działanie, 
możliwe 
opóźnienia 

pierście
niowa 

Proste 
okablowanie, 
łatwa 
diagnostyka 
błędów 

Awaria jednego 
węzła lub kabla 
uniemożliwia 
działanie, 
złożona 
konstrukcja 
węzłów 

gwiaździ
sta 

Awaria jednego 
węzła nie 
powoduje 
awarii sieci, 
łatwość 
rozbudowy, 
łatwa 
diagnostyka 
błędów i awarii 

Wymagany 
HUB, awaria 
HUBa- awaria 
sieci, duża ilość 
kabli 

Siatkow

(mieszan
a) 

Wysoka 
niezawodność 
(każdy węzeł 
można osiągnąć 

Duża ilość 
kabli, złożona 
komunikacja 
(wiadomości 

7 aplikacji 
6 prezentacji  
5 sesji 
4transportowa 
3sieciowa 
2łącza danych 
1fizyczna 

System otwarty A                          System 
otwarty B 

 
System otwarty B 

 

background image

różnymi 
drogami awaria 
węzła nie 
powoduje 
awarii całości  

przechodzą 
przez węzły 
pośrednie) 

 
Protokoły dostępu do medium:                                              -CSMA/CD – nie używana w sieciach przemysłowych( nie zapewnia determinizmu czasowego)                                                                        
protokoły znacznikowe – z przekazywaniem znacznika (token passing), pierścień znacznikowy (token ring) : pomiędzy węzłami sieci przekazywany jest znacznik – token, 
prawo do nadawania w danej chwili ma tylko ten węzeł z tok enem, maksymalny czas posiadania tokena i kolejność jego przekazywania są zdefiniowane,  ZALETY: determinizm 
czasowy, brak ograniczeń na minimalną długość wiadomości, niezależność szybkości działania od obciążenia  
WADY: skomplikowana obsługa błędów związanych ze zgubieniem bądź powieleniem znacznika, konieczność ciągłego przekazywania znacznika pomiędzy węzłami. 
  –odpytywanie – polling (sieci typu master/slave) komunikacja odbywa się wyłącznie pomiędzy master a slave na zasadzie transakcji – pytanie-odpowiedz. Slave – nie 
inicjalizuje komunikacji, może odpowiedzieć na zapytanie, Master – ma uprawienie do wysyłania danych i zapytań do stacji slave, może inicjalizować komunikację. ZALETY: 
prostota, slave nie musi być komputerem WADY: całkowity rozpad sieci w wyniku awarii mastera. 
 
Na poziomie warstwy łącza logicznego (wyższej) stosowane są protokoły:         
 -bezpołączeniowe (datagram)  - wiadomość jest odpowiednio formatowana i wysyłana, brak sprawdzenia czy wiadomość dotarła do odbiorcy, nie odebranie wiadomości przez 
odbiorcę lub błąd w transmisji prowadzą do utraty wiadomości        
-połączeniowe (connection – oriented)- etap I- nawiązanie połączenia, etap II – wymiana danych w obie strony(dowolne dane i komunikaty), etap III- zamknięcie połączenia. 
Poprawność odbioru jest kontrolowana i są wysyłane potwierdzenia odbioru. W razie błędu przesyłane jest żądanie powtórzenia transmisji, długotrwały brak potwierdzenia lub 
żądania retransmisji powoduje powtórne wysłanie ostatniego komunikatu, brak odpowiedzi po kilku próbach oznacza awarię odbiorcy. ZALETY: pewność i niezawodność 
transmisji, łatwość wykrycia awarii WADY: mniejsza szybkość, konieczność przesyłania potwierdzeń, duża złożoność obsługi.  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Sieć przemysłowa PROFIBUS: 
Jeden z najbardziej rozpowszechnionych standardów sieci przemysłowych, 3 wersje standardu: FMS – najbardziej rozbudowany i uniwersalny, pozwala na realizację złożonych 
zdań komunikacji i na łączenie z prostymi urządzeniami. DP – najszybsza wersja przeznaczona do łączenia rozproszonych konfiguracji sterowników PLC. PA – wersja 
iskrobezpieczna i pozwalająca na zasilanie urządzeń z magistrali, dedykowana do współpracy z przetwornikami inteligentnymi.  
3 warstwy modelu OSI dla PROFIBUSa:  
warstwa 1- fizyczna (medium fizyczne – skrętka lub światłowód, maksymalnie 32 urządzenia w segmencie max 128 w całej sieci- ograniczeniem długość pola adresowego, 
topologia pojedynczego segmentu magistralowa, max. długość doprowadzeń węzłów 0.3m, prędkość transmisji- 9.6, 19.2, 93.75,187.5, 1500, 12000 kbit/s, węzły sieci dołączane 
9cio stykowym złączem ISO, topografia styków w złączu1-SHIELD ,2-RP,3-RxD/TxD-P(dane sygnał „+”),4-CNTR-P,5-DGND,6-VP,7-RP,8-RxD/TxD-N(dane sygnał „-
”),9-CNTR-N
) bity kodowane napięciem różnicowym między stykami 3 a 8 – stałe napięcie dodatnie „1”, stałe napięcie ujemne „0”, nadajnik powinien być zabezpieczony przed 
kolizjami , nie pracujące nadajniki w stanie wysokiej impedancji. Stan spoczynkowy linii to „1” i musi on być zapewniony przez terminatory, najprostszy terminator to rezystor 
150 Ohm załączony pomiędzy stykami 3 i 8.  
warstwa 2-liniowa- protokół dostępu do kabla jest złożeniem protokołu znacznikowego oraz metody odpytywania. W sieci mogą występować wezły czynne MASTER jak i bierne 
SLAVE ( w sieci DP-1 węzeł MASTER + 1rodzaju + 1 MASTER 2 rodzaju – programator). Transakcja odbywa się z wykorzystaniem usług realizowanych przez węzły 
nadrzędne. 4 rodzaje usług: a). wysyłanie danych z potwierdzeniem, b) wysyłanie danych bez potwierdzenia c) wysyłanie danych i odebranie odpowiedzi d) cykliczne wysyłanie 
danych i odebranie odpowiedzi.  
warstwa 7 aplikacjiVFD- wirtualne urządzenie sieciowe, OD –słownik obiektów- zawiera listę wszystkich obiektów, które mają się komunikować z innymi. Inne węzły mają 
dostęp tylko do danych zdefiniowanych w tej liście. Wymiana danych odbywa się wg. Schematu klient-serwer. Dla każdej pary portów w obu węzłach jest tworzona osobna 
relacja komunikacyjna dostępna dla programów wykonywanych w tym węźle. Obiekt jest podstawowym elementem na którym wykonywane są usługi. Obiektami są: zmienne, 
typy danych , zdarzenia opisujące wyjątki lub szczególnie stany powstałe w programie. Domena – obszar pamięci do którego można załadować program, dane czy parametry. 
Program który można zatrzymać, uruchomić itp. Obiekt fizyczny opisany przez jego adres i długość ale o nieznanej strukturze wewnętrznej. Usługi udostępniają programom w 
innych węzłach obiekty zdefiniowane w dowolnym węźle. Usługa zdefiniowana przez 4 operacje: REQUEST- wywołanie usługi, INDICATION-sygnalizacja odebrania 
wywołania, RESPONSE- przekazanie potwierdzenia, CONFIRM- sygnalizacja odebrania potwierdzenia
 Schemat wywołania usługi: 
 
KLIENT    SERWER 

Rodzaj usługi 

Request->indication  
Confirm<-response 

Usługa potwierdzana 

Indication<-request 

Usługa nie 
potwierdzana 

 
 
 
 
 
 
 
 

background image

 

background image

SCADA 

– Zdalny system monitorowania i nadzoru procesów 

technologicznych.  

 

ma z założenia zastępować tablice synoptyczne 
stosowane w sterownikach. 

 

współpracuje zawsze z urządzeniami mającymi 
możliwości komunikacji cyfrowej (regulatory cyfrowe, 
przetworniki inteligentne). 

  pracuje zawsze w czasie rzeczywistym. 

Typowe funkcje systemu SCADA: 

 

uruchamianie i zatrzymywanie całej instalacji lub jej 
części. 

 

nadzór przebiegu procesu 

 

wykrywanie i sygnalizacja stanów awaryjnych 

  archiwizacja danych procesowych 

 

zadawanie parametrów regulatorów pracujących na 
stopniu bezpośrednim 

 

sterowanie zdalne (automatyczne lub ręczne) 

Dodatkowe funkcje: 

 

samostrojenie i autoadaptacja algorytmów regulacyjnych 

 

optymalizacja sterowania na poziomie 

bezpośrednim 

W typowej sytuacji 

różne grupy użytkowników mają dostęp 

do różnych funkcji systemu. Każda powinna mieć dostęp do 
swojej części i nie powinna mieć dostępu do innych 

Architektura systemu SCADA 

Każdy system SCADA jest budowany ściśle pod kątem 
wymagań określonego systemu, który ma nadzorować. 
Składniki systemu: 

 

sterownik PLC, system akwizycji danych lub urządzenie 
inteligentne 

 

system komunikacyjny ( port komunikacyjny, sieć, 
łączność bezprzewodowa) 

 

komputer, który pełni funkcje: (stacja robocza, serwer 
komunikacyjny, serwer danych) 

Rozbudowany SCADA zawiera 5 poziomów 

1. 

urządzenia polowe: przetworniki inteligentne, sterowniki 
PLC 

2.  Stacje akwizycji danych z urz. polowych (RTU) 
3. 

system komunikacyjny zrealizowany z użyciem sieci 
przemysłowej lub urządzeń bezprzewod. 

4.  Stacje operatorskie z zaimplementowanymi aplikacjami 

użytkownika 

5. 

System komputerowy na poziomie zarządu 

Wymiana danych w systemie SCADA 

Najczęściej wymiana danych odbywa się wg schematu 
klient-

serwer gdzie klientem jest aplikacja użytkownika, a 

serwerem jest: 

- sterowni

k PLC połączony z aplikacją za pośrednictwem 

drivera komunikacyjnego (prostsze przypadki). Komunikacja 
jest wykonywana na końcu cyklu programowego. 

- serwer danych aplikacji 

Elementem niezbędnym do komunikacji jest zawsze driver 
komunikacyjny, który jest dedykowany do określonego 
sprzętu. 

Komponenty systemu SCADA 

1. 

Sprzętowe: - sprzęt sieciowy, - serwery danych, - serwery 
aplikacji, - 

stacje robocze: (panel operatorski o różnych 

możliwościach i złożoności, lub komputer klasy PC) 

2.  Programowe: - oprogramowanie komunikacyjne 

środowisko uruchomieniowe 

- system operacyjny 

background image

- oprogramowanie baz danych 

środowisko konfiguracyjne 

Oprogramowanie i jego elementy 

 

Środowisko konfiguracyjne, umożliwiające budowę i 
testowanie aplikacji (symulator) 

 

Środowisko uruchomieniowe (runtime), zapewniające 
uruchomienie i działanie aplikacji w czasie rzeczywistym 

 

Driver komunikacyjny, pozwalający na realizację 
komunikacji pomiędzy aplikacją i urządzeniem. 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

background image

Podstawowe elementy 

z których budowana jest 

aplikacja SCADA: 

-zmienne (Tags), - obiekty graficzne,  

- archiwa,  -skrypty i funkcje, -receptury 

Znaczna część aplikacji użytkownika ma charakter 
graficzny i pogrupowana jest na „ekrany”     

Zmienne („Tagi”) 

 

Wewnętrzne, lokalne: są to zmienne wewnętrzne 
aplikacji, które nie mają możliwości połączenia ze 
zmiennymi sterownika. Ich ilość jest limitowana. 

 

Wejścia/wyjścia globalne: są to zmienne, które mają 
przypisane adresy w przestrzeni adresowej 
urządzenia, z którym się komunikują i ich wartości 
mogą być zmieniane zarówno z poziomu urządzenia, 
jak i z poziomu aplikacji. 

Możliwe są następujące typy: -binarne (dyskretne), - 
całkowite, - czasowe, -tekstowe 

- rzeczywiste, - timery, - liczniki. 

Zmienne mogą mieć też przypisane dodatkow atrybuty 
ułatwiające budowę aplikacji (definiowane podczas 
konfiguracji zmiennych), np.: 

wartości początkowe, 

zakresy dopuszczalnych wartości 

alarmy różnych typów 

- przypisanie zmiennej do archiwum 

częstotliwość odczytu/zapisu (tylko global.) 

Obiekty graficzne 

okienka wejściowe  

okienka wyjściowe  

-elementarne figury geometryczne 

-

przyciski, przełączniki, suwaki, lampki 

-

wskaźniki analogowe, pola tekstowe 

Mogą być powiązane z określonymi zmiennymi 
(pokazuje wartość, zmienia wart.) 

Mogą być powiazane z funkcjami, skryptami. 

Skrypty i funkcje 

Elementy oprogramowania wykonujące różne operacje 
na zmiennych: oper. obliczeniowe, zapis i odczyt do 
archiwum itp. 

background image

Są pisane z użyciem zestawu instrukcji 
charakterystycznego dla danego środowiska lub np. z 
użyciem języka Visual Basic. 

Metody aktywacji skryptów/funkcji 

 

Jednorazowo podczas startu lub zatrzymania 

 

cyklicznie podczas pracy aplikacji (w sposób ciągły 

lub z zadanym okresem próbkowania 

 

z użyciem przycisku – różne opcje 

 

przy zmianie wartości określonej zmiennej 

 

przy wystąpieniu alarmu/ostrzeżenia 

Archiwa i bazy danych 

Archiwizacja danych związanych z prowadzeniem 
procesu jest jednym z fundamentalnych zadań aplikacji 
SCADA. 

Dane procesowe archiwizowane w typowych formatach 
np. w pliku .csv lub w bazie danych (MS Access, MS 
SQL Server). Archiwizacja uruchamiana w różny 
sposób:  

-cyklicznie 

-po aktywacji przyciskiem 

-

po zmianie wartości określonej zmiennej 

Receptury 

Stosowane przy wytwarzaniu produktów, które są 
zestawiane z pojedynczych składników w różnych 
proporcjach i w zależności od proporcji tych samych 
składników wejściowych możemy otrzymać różne 
produkty. Receptura ma postać rekordu danych, w 
którym są opisane poszczególne składniki oraz ich 
ilości. 

 

background image

 
Minimalizacja bezpośrednich wskaźników jakości regulacji – zadanie optymalizacyjne 
najczęściej realizowane na poziomie sterowania bezpośredniego;  
Bezpośrednie wskaźniki jakości – wskaźniki, których wartość jest wyznaczana 
bezpośrednio na podst. przebiegu czasowego uchybu regulacji w układzie; w wielu 
wypadkach mają bezpośredni związek z wymaganiami konkretnego procesu 
technologicznego. 
1. czas regulacji T – czas po jakim uchyb regulacji jest w sposób trwały mniejszy od 
założonej wartości Δ (najczęściej Δ=5%) 
2. odchylenie maksymalne e

3. przeregulowanie χ (

Modele matematyczne obiektów regulacji na poziomie sterowania bezpośredniego:  
Niezależnie od systemu sterowania konstrukcja regulatora optymalnego jest dokonywana w 
oparciu o model matematyczny sterowanego procesu (proces = wszystko, co jest poniżej 
elementu decyzyjnego). 
Model matematyczny – narzędzie pozwalające przewidzieć i ocenić zachowanie się 
systemu pod wpływem różnych oddziaływań sterujących; jest też podstawą przy budowie 
narzędzi informatycznych służących do badań symulacyjnych. W przypadku jego braku 
należałoby wykonywać eksperymenty na rzeczywistym systemie (b. niekorzystne). Model 
jest zawsze pewnym uproszczeniem rzeczywistości; klasyfikacja modeli jest dość złożona; 
przed budową modelu można próbować dokonać dekompozycji lub agregacji systemu. 
Dekompozycja – podział złożonego systemu na mniejsze, niezależne części, mogące być 
analizowane, modelowane oddzielnie; b. ułatwia analizę systemu (analiza części jest 
prostsza niż całości). 
Agregacja – podczas budowy modelu uwzględnia się tylko te cechy procesu które są 
istotne z punktu widzenia sterowania; b. ułatwia budowę modelu (pominięcie nieistotnych, 
a komplikujących budowę modelu szczegółów). 
Cele modelowania. Jakiemu celowi model ma służyć? (inny model do symulacji 
zachowania sie procesu, inny do budowy algorytmu sterowania procesem) – odp. na to 
pytanie determinuje wybór kategorii i struktury modelu.  
Kategoria i struktura modelu – określana na podstawie teorii opisującej procesy zachodzące 
w obiekcie i wyników doświadczalnych; ściśle związana z algorytmem sterowania, który 
chcemy zbudować w oparciu o model. 
Identyfikacja – jej celem wyznaczenie liczbowych wartości parametrów modelu, 
zaproponowanego w poprzednim etapie od strony jakościowej. 2 metody identyfikacji:  
-bierna – gdy nie możemy wykonać eksperymentu na obiekcie; mierzymy sygnały 
wejściowe i wyjściowe obiektu podczas normalnej pracy systemu, następnie 
identyfikujemy parametry modelu metodami statystycznymi na podst. korelacji wejścia i 
wyjścia; skomplikowana i mało dokładna 
-czynna – stosujemy ją zawsze gdy można; przeprowadzamy zaplanowany eksperyment na 
obiekcie i na jego podstawie wyznaczamy parametry modelu; 
Równanie stanu systemu dynamicznego ciągłego w dziedzinie czasu 

 

 

f(..)-funkcja nieliniowa, niestacjonarna, opisująca związek między stanem w chwili 
następnej a sterowaniem i stanem w chwili poprzedniej; g(..) – funkcja nieliniowa, 
niestacjonarna, opisująca związek między sterowaniem, stanem i wyjściem. 
Równanie stanu dla sytemu liniowego stacjonarnego o parametrach skupionych: 

 

 

 

A-macierz stanu systemu, B –sterowań, C – wyjść, D – bezpośrednich sterowań  
Transmitancja operatorowa 
U(s)->obiekt->Y(s) 
U(s)-transformata Laplace’a wejścia (sterowania); Y(s) – tr. L. wyjścia 
zał. warunki początkowe na wszystkie zmienne stanu są zerowe. 
Transmitancja operatorowa G(s) obiektu regulacji – stosunek transformaty Laplace’a 
wyjścia obiektu Y(s) do tr. L. sterowania U(s) przy zerowych warunkach początkowych: 

 

Opisuje ona tylko sterowalną i obserwowalną częśc systemu. Wzór na transmitancję, dla 
rzeczywistego systemu dynamicznego może być wyprowadzony  z równania stanu ( o 
parametrach skupionych). 
Transmitancja zastępcza - jej parametry mogą być wyznaczone w prosty sposób (na podst. 
odpowiedzi skokowej obiektu, bez konieczności znajomości modelu dokładnego). 
Model Kupfmullera I rzędu: G(s)=(k*exp(-τs))/(Ts+1). Transmitancja ta jest nazywana 
transmitancją zastępczą obiektu regulacji; jej parametry(nazywane parametrami 
zastępczymi obiektu): -stała czasowa T, -czas opóźnienia (martwy) τ . 
Model Kupfmullera II rzędu: G(s)=(k*exp(-τ_2*s))/[(T_1*s+1) (T_2*s+1)]. Parametry 
zast.: stałe czasowe T1 i T2, -czas martwy τ2 . 
Model Strejca bez opóźnienia: G(s)=k/ (T_n*s+1)^n. Parametry zast.: rząd transmitancji n, 
stała czasowa Tn. 
Model Strejca z opóźnieniem: G(s)= [k*exp(-τ_n*s)]/[(T_n*s+1)^n]. Parametry zast: rząd 
transmitancji n, stała czasowa Tn, czas martwy τ_n 
Ogólna idea identyfikacji parametrów transmitancji zastępczej na przykładzie transmitancji 
zgodnie z modelem Kupfmullera I rzędu (na wykresie zależność y(t)): 

 

 

Parametry transmitancji zast. dobieramy tak, by odpowiedzi skokowe: modelu i obiektu jak 
najmniej się między sobą różniły. Dobór parametrów można wykonać metodami: 
graficzną, najmniejszych kwadratów. Z wykorzystaniem modelu zast. można zbudować 
regulator suboptymalny (lub optymalny). 
Synteza suboptymalnego regulatora PID: 
Rozważmy układ zamknięty regulacji: 

 

R(s) - transf. Laplace’a wartości zadanej; E(s) –tr. L uchybu regulacji; U(s)-tr.L. 

background image

sterowania; Y(s)- tr. L. wielkości regulowanej; G(s) – transmitancja obiektu regulacji; 
G_r(s)-transmitancja regulatora. 
Załóżmy, że obiekt regulacji jest opisany transmitancją zastępczą zgodnie z modelem 
Kupfmullera I rzędu, której parametry wyznaczono na podst. identyfikacji. 
Regulatorem jest idealny regulator PID (proporcjonalno-calkująco-różniczkujący) o 
transmitancji: G_r(s)=k_r+(k_r/T_i)(1/s)+k_r*T_d*s. PID jest najcześciej stosowany w 
przemyśle (80% wszystkich aplikacji). 
Parametry regulatora PID: k_r – wzmocnienie proporcjonalne regulatora, T_i - czas 
całkowania ( zdwojenia, izodromu), T_D – czas różniczkowania(wyprzedzenia).  
Synteza regulatora optymalnego polega na doborze takich parametrów, które zapewnią 
minimalną wartość przyjętej funkcji kosztu.  
Dobór parametrów zawsze dokonywany z użyciem modelu. Może być dokonany 
metodami: -analitycznymi, -numerycznymi, -z wykorzystaniem gotowych wzorów. 
Zakładamy, że regulator ma zapewnić suboptymalne sterowanie w sensie następujących 
funkcji kosztu: 1. I_1=T_r , χ≈0% 2. I_2=T_r, χ≤20% 3. I_3=

 

Realizacja algorytmów sterowania optymalnego z wykorzystaniem techniki cyfrowej. 
T.cyfr. pozwala na łatwą realizację każdego algorytmu sterowania (warunek: 
realizowalność fizyczna). Sterowniki i regulatory są zróżnicowane pod wzgl. możliwości i 
ceny, ale ich zasadnicze elementy działania są wspólne dla wszystkich rozwiązań. Każdy 
regulator cyfrowy jest systemem czasu rzeczywistego. Znaczny wpływ na wartość funkcji 
kosztu w ukł. sterowania cyfrowego jest okres próbkowania. 
Cyfrowa realizacja regulatora PID. Dyskretne algorytmy PID otrzymujemy po 
dyskretyzacji algorytmu ciągłego o postaci: 

dt

t

de

T

k

d

e

T

k

t

e

k

t

u

d

r

t

i

r

r

)

(

)

(

)

(

)

(

0

 

Założenia do dyskretyzacji: 
-okres próbkowania jest stały i równy T

_p; 

-Dyskretne chwile czasu  są oznaczane przez 1, 2, …, n-1, n, n+1, ….   
-Wartości sterowania i uchybu w dyskretnych chwilach czasu oznaczamy przez u

_n

  oraz 

e

_n

.  

-Pochodną zastępujemy ilorazem różnicowym, 
-Całkę zastępujemy w najprostszym wypadku sumą. 
Algorytm pozycyjny PID:  

1

0

2

1

1

n

r

p

n

n

d

r

i

p

n

n

T

e

e

kT

e

T

kT

ke

u

 

Zalety: Możliwość realizacji każdej wersji algorytmu ( P, PD, PI, PID ) 
Wady: Konieczność zabezpieczania przed przepełnieniem części całkującej;Duża 
złożoność obliczeniowa ( wyznaczanie wartości całki w każdym kroku );Brak 
zabezpieczenia przed dużymi skokami wartości sterującej  
Algorytm przyrostowy PID: Jest otrzymany po zróżnicowaniu algorytmu pozycyjnego. W 
każdym kroku jest liczony  przyrost sterowania w stosunku do poprzedniego kroku. 
Oznaczenia: 

3

2

1

1

2

2

1

1

1

2

n

n

n

n

n

n

n

n

n

n

e

e

e

e

e

e

e

u

u

u

 

W każdym kroku liczony jest przyrost sygnału sterującego w stosunku do sygnału w kroku 
poprzednim: 

1

2

1

1

n

p

d

n

i

p

n

n

e

T

kT

e

T

kT

e

k

u

 

Zasady poprawnego doboru okresu próbkowania 
1.Okres próbkowania T_p jest jednym z najważniejszych parametrów pracy każdego 
układu cyfrowego. 
2.Poprawny dobór okresu próbkowania ma kluczowe znaczenie dla poprawnego działania 
układu regulacji cyfrowej: zapewnia optymalną jakość regulacji i częściową filtrację 
zakłóceń. 
3. Okres T_p można dobrać na podst.: ch-ki częstotliwościowej układu zamkniętego 
(regulator+obiekt); parametrów odpowiedzi skokowej obiektu regulacji. 
 
Ch-ka częstotl (ta po lewej).: ω

f

 – pulsacja rezonansowa, ω

b

 – szerokość pasma 

przepustowości,  

 

Odpowiedź skokowa: T – zastępcza stała czasowa, τ - zastępczy czas martwy, T

95

 – czas, 

po jakim odpowiedź obiektu osiąga 95% odpowiedzi ustalonej.  
 
Zasady doboru okresu próbkowania 

Tw Shannona 

 

Częstotliwość 
własna
 

 

95% stanu 
ustalonego,
 

 

Stała czasowa 

 

Czas 
różniczkowania 
regulatora 
 

 

 

 

f

p

T

1

)

8

/

1

16

/

1

(

95

)

6

/

1

12

/

1

(

T

T

p

T

T

p

)

5

.

0

25

.

0

(

d

p

T

T

)

5

.

0

1

.

0

(

b

p

T

background image

Klasyfikacja sprzętu do realizacji sterowania cyfrowego: 
Urządzenie sterowania cyfrowego: 
1) Urządzenie specjalizowane: 
- regulator wielofunkcyjny 
- sterownik PLC 
- regulator PID  
- przetwornik inteligentny z algorytmem PID 
2) Komputer klasy PC (biurowy lub przemysłowy) 
- z kartą przemysłową 
- z układem akwizycji danych 
- z kartą sieciową (PROFIBUS, ETHERNET) i rozproszonym układem 
wejść/wyjść. 
Konstrukcja regulatora cyfrowego 
Podstawowym wymaganiem jest zapewnienie wysokiej niezawodności 
działania. Jest to realizowane przez: 

 

Eliminację pamięci dyskowych (zamiast nich pamięci 
półprzewodnikowe) 

 

Konstrukcja zapewniająca chłodzenie bez użycia wentylatorów 

 

Stosowanie obudów i wykonań o zwiększonej odporności na 
warunki przemysłowe (wibracje, zapylenie, wilgoć itp) 

 

Stosowanie ekranów dotykowych w panelach operatorskich 

 

Stosowanie starszych ale dopracowanych i sprawdzonych rozwiązań 
sprzętu i jego elementów 

Układy pamięci 

1.  Pamięć stała (np. EPROM): zawiera dane i oprogramowanie, które 

nie powinno być dostępne dla użytkownika (system operacyjny, 
biblioteki funkcji standardowych, algorytmy).  Rekonfiguracja 
możliwa tylko w serwisie. 

2.  Pamięć zapisywalna (RAM, EEPROM): zawiera dane zmieniane 

podczas pracy sterownika oraz definiowane przez użytkownika 
(bieżąca konfiguracja, program użytkownika, dane robocze, aktualne 
parametry).  
RAM – krótki czas dostępu ale wymaga podtrzymywania (bateria lub 
kondensator) 
EEPROM – długi czas dostępu, ale bez podtrz. 

Układ Watch Dog – jest to układ kontrolujący poprawność pracy 
procesora. Jeśli odbiera sygnały z procesora to OK, jeśli ich nie dostanie 
to interpretuje to jako awarię i wykonuje czynności: 
- blokada procesora 
-ustawianie wyjść analogowych zgodnie z ustawioną opcją 
- zerowanie wyjść binarnych 
- blokada komunikacji 
- wysyłanie sygnałów o awarii 
Wejścia binarne – dokonują zamiany sygnałów logicznych (0,1) na 
sygnały możliwe do dalszej interpretacji przez sterownik. 

 

Wejścia analogowe – zamieniają znormalizowane sygnały analogowe z 
przetworników pomiarowych na ich reprezentację maszynową. Na 
wejścia mogą być podawane sygnały np. prądowe, napięciowe, 
rezystancyjne, z czujników temperatury, ciśnienie. 
Wejścia są konstruowane jako różnicowe albo jednokońcówkowe. Na 
wejściu różnicowym konwertowana jest różnica napięć pomiędzy 
wejściem + i -. Na jedno-końcówkowym różnica pomiędzy + a masą. 
Wejście różnicowe jest mniej wrażliwe na zakłócenia. 
Podstawowe parametry wejść analogowych 

1.  Rozdzielczość (ang. Resolution) – miara błędu kwantowania, 

określonego przez wagę LSB. Jest wyrażana jako waga najmniej 
znaczącego bitu 

2.  Dokładność (ang. Accuracy) – definiowana analogicznie jak klasa 

dokładności przyrządów pomiarowych. Jest to wielkość 
maksymalnej różnicy pomiędzy wielkością zmierzoną i oczekiwaną. 
Jest zależna m.in. od temp. układu. 

3.  Liniowość (ang. Linearity) – różnica pomiędzy zmierzonymi 

zmianami dla dwóch sąsiednich kanałów pomiarowych dokładnie o 1 
bit LSB 

4.  Czas uaktualnienia (ang. Update Rate) – wybranej liczby kanałów – 

jest zależny od parametrów sprzętu, czasem może być definiowany. 

 
 
Wykład dotyczy: 
1.Konstrukcja regulatora cyfrowego dokończenie  
2.Sterowniki PLC/PAC   
 
Podstawowe układy konstrukcyjne wejść analogowych:  
1/ z jednym przetwornikiem A/C( polewej); 
Z kiloma 
przetwornikami ( po prawej) 

background image

 

 
W układach wejść analogowych stosowane są następujące 
typy przetworników A/C: 
-Kompensacyjne – b. szybkie, ale kosztowne i 
skomplikowane w obsłudze, 
-Integracyjne – ok.. 1000 razy wolniejsze, ale o rząd 
wielkości tańsze, niż kompensacyjne, 
-Napięcie – częstotliwość, 
-Czasem przetwornik A/C jest częścią mikrokontrolera ( 
zwłaszcza w prostszych rozwiązaniach regulatorów )  

 

Wyjścia binarne  
Funkcją wyjść binarnych jest zamiana binarnych sygnałów 
wyjściowych z regulatora  na sygnały binarne, które mogą 
być podane na obiekt ( mogą to być zarówno sygnały 
sterujące, jak i np. sygnalizujące stany procesu lub 
diagnostyczne).  
Są budowane w 3 standardach: 
-Wyjścia 24 V DC: „0” 0V, „1” 24V DC, 
-Wyjścia 230 V AC: „0” 0V, „1” 230 V AC, 
-Wyjścia przekaźnikowe: normalnie zwarte, normalnie 
rozwarte i przełączne. Czasem są stosowane wyjścia mocy do 
bezpośredniego sterowania obiektem. 
W obwodach wyjść binarnych są stosowane układy ochrony 
przeciwprzepięciowej ( ze względu na ich współpracę z 
przekaźnikami ).  
 
Uproszczony schemat wyjścia binarnego DC: [Ochrona 
przeciwprzepięciowa zrealizowana z użyciem diod.  ] 

 

 
Układy zabezpieczeń przeciwprzepięciowych w układach 
wyjść 230 V AC:

 

 

W wielu przypadkach wyjścia binarne są jedynymi wyjściami 
sterownika ( np. w przypadku regulatora PID z wyjściem 
PWM ).  
Sterowanie PWM może być zastosowane do sterowania 
procesów wysokiego rzędu. Typowe przykłady to: 
-Regulacja temperatury, 
-Sterowanie silnikami elektrycznymi, 
-Układ zasilania wtryskowego paliwem w silniku 
samochodowym. 
 
Funkcją wyjść analogowych jest zamiana ciągłego sygnału 
sterującego wyliczonego przez regulator w postaci 
maszynowej ( np.  słowo, słowo podwójne ) na jego postać 
możliwą do podania na wejście analogowe siłownika lub 
innego elementu wykonawczego.  
 
Istotnym problemem jest zdefiniowanie działania wyjścia 
w sytuacji STOP- u awaryjnego CPU. Nie zawsze 
dopuszczalne jest wyłączenie wyjścia  ( ustawienie go na 
zero ) . W praktyce stosowane są 3 możliwości:
  
1.Podtrzymanie ostatniej wartości sygnału sterującego sprzed 
awarii, 
2.Przełączenie sygnału sterującego na wartość zastępczą, 
3.Zerowanie wyjścia ( jeśli jest to dopuszczalne) 
Przykład gdzie nie można ustawiać na 0 – piec ze stopionym 
metalem/szkłem 
 
Dodatkowo w układach wyjśc analogowych można stosować 
tzw "rezerwę analogową" 
Uproszczony schemat wyjścia analogowego napięciowego 
z rezerwą analogową: 

background image