200602s39.pdf

(275 KB) Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Problemy oszacowania parametrów statystycznych
rozk∏adów czasów cyklu sterowników PLC
IWONA OPRZ¢DKIEWICZ
Stale wzrastajàca niezawodnoÊç i moc obliczeniowa
systemów sterowania wykorzystujàcych sterowniki
PLC sk∏ania do coraz szerszego zastosowania ich
w przemyÊle. Systemy te realizujà bardzo odpowie-
dzialne zadania, a wspó∏czesna technologia stawia
coraz powa˝niejsze wymagania zwiàzane przede
wszystkim z zagwarantowaniem czasu najd∏u˝sze-
go cyklu sterowania [1, 2]. To w∏aÊnie zmusza do
przeprowadzenia szczegó∏owej analizy mo˝liwoÊci
stosowanych systemów pod wzgl´dem minima-
lizownia czasu cyklu. Istniejà mechanizmy pozwala-
jàce na pomiar czasu ka˝dego cyklu sterownika.
Mo˝na równie˝ zadaç maksymalny czas trwania
tego cyklu, którego przekroczenie jest sygnalizowa-
ne. Dlatego istotne ze wzgl´du na prac´ w systemach
czasu rzeczywistego jest opracowanie optymal-
nego czasowo oprogramowania, czyli takiego, które
cechuje si´ maksymalnym skróceniem czasu cyklu
bez utraty w∏aÊciwoÊci funkcjonalnych. Analizujàc
przyczyny zmiennoÊci czasu trwania cyklu sterownika
nale˝y wziàç pod uwag´:
Typ sterownika – poszczególne sterowniki ró˝nià
si´ mi´dzy sobà nie tylko szybkoÊcià wykonywania
instrukcji, ale i liczbà dost´pnych instrukcji. Dlatego
rozwiàzujàc problem nale˝y wziàç pod uwag´ fakt,
˝e w jednym sterowniku do rozwiàzania zadania mo˝e
wystarczyç jedna instrukcja, podczas gdy w innym
konieczne jest zastosowanie ciàgu instrukcji.
Z∏o˝onoÊç programu u˝ytkownika – rozwiàzu-
jàc zadanie nale˝y dà˝yç do zastosowania jak naj-
mniejszej liczby instrukcji o najkrótszym czasie wy-
konywania (czasy te sà podawane przez producentów
sterowników). W praktyce najcz´Êciej musimy wy-
braç, czy korzystniejsze b´dzie zastosowanie jednej
instrukcji bardziej skomplikowanej (o d∏ugim czasie
wykonania), czy sekwencji instrukcji prostszych. Du˝e
znaczenie majà tak˝e typy danych, na jakich wyko-
nywane sà poszczególne operacje. Przyk∏adowo,
operacje na zmiennych typu REAL trwajà znacznie
d∏u˝ej ni˝ na zmiennych typu DINT o tej samej
precyzji.
Liczb´ po∏àczeƒ z urzàdzeniami peryferyjnymi
i innymi sterownikami – obs∏uga tych urzàdzeƒ mo˝e
zajmowaç znaczàcà cz´Êç czasu trwania cyklu ste-
Dr in˝. Iwona Oprz´dkiewicz pracuje w Katedrze Auto-
matyzacji Procesów AGH w Krakowie.
ROK WYD. LXV
ZESZYT 2/2006
39
842786078.049.png 842786078.050.png 842786078.051.png 842786078.052.png
rownika, dlatego skrcenie czasu cyklu moýna uzys-
ka, ograniczajc w programie liczb« tych po¸czeÄ
lub (jeýeli b«dzie to korzystne) rozdzielajc czas
transmisji na kilka kolejnych cykli. Istnieje rwnieý
moýliwoæ ustalenia w sterowniku maksymalnego
czasu niezb«dnego do obs¸ugi urzdzeÄ peryferyj-
nych (w procentach wartoæci czasu cyklu). Waýne jest
takýe wy¸czenie nieuýywanych wejæ i wyjæ w mo-
du¸ach oraz ich poprawna konfiguracja (np. roz-
dzielczoæ przetwornikw A/C).
Czas trwania cyklu sterownika ma decydujcy
wp¸yw na dzia¸anie uk¸adw czasu rzeczywistego.
Jednym z g¸wnych warunkw poprawnego wyko-
rzystania programu w tego typu systemach jest
warunek nieprzekraczania wczeæniej narzuconej
wartoæci czasu cyklu. Konsekwencj przekroczenia
tego czasu moýe by nawet wstrzymanie pracy ste-
rownika. Dýy si« rwnieý do zmniejszenia fluktuacji
czasu trwania cyklu. W tym celu w wielu sterowni-
kach istnieje moýliwoæ ustawienia minimalnego
czasu cyklu.
Z przedstawionych informacji wynika, ýe tworzc
oprogramowanie na konkretnym sterowniku, spe¸-
niajce wymagania czasu rzeczywistego naleýy zwr-
ci szczegln uwag« na liczb« i rodzaj uýytych in-
strukcji oraz na efektywn obs¸ug« urzdzeÄ pery-
feryjnych, gdyý najwi«kszy wp¸yw na czas trwania
cyklu ma czas wykonywania programu uýytkowego.
Teoretyczne oszacowanie czasu cyklu moýna zrea-
lizowa na podstawie danych dostarczonych przez
producenta konkretnego typu sterownika. B«dzie
to oczywiæcie oszacowanie dla najmniej korzyst-
nej sytuacji, czyli rzeczywiste pomiary konkretnych
czasw powinny by krtsze od wartoæci obliczonej
[3, 4].
Czas cyklu nie jest wartoæci sta¸, lecz zaleýy np.
od liczby i rodzaju przerwaÄ oraz szybkoæci komu-
nikacji systemowej. Szacujc jego wartoæ naleýy
uwzgl«dni [5]:
T c = T R +T os +T u +T w +T Di +T Do +T t +T DP (1)
gdzie:
T R , T w Ð czas odczytu i zapisu odpowiednio
wejæ i wyjæ,
T u Ð czas wykonania programu uýytkownika,
T os Ð czas wykonania systemu operacyjnego
sterownika,
T Di , T Do Ð czas opnienia zwizanego z od-
czytem/zapisem wejæ/wyjæ,
T t Ð czas wykonania cykli (timerw) uýytych
w programie,
T DP Ð czas komunikacji z sieci.
W zaproponowanym wzorze nie uwzgl«dniono
czasu przeznaczonego na diagnostyk«, gdyý jest on
pomijalnie ma¸y w stosunku do pozosta¸ych czasw.
Wyznaczanie ærednich
i maksymalnych cyklw sterownikw PLC
Badania doæwiadczalne zosta¸y wykonane na ste-
rownikach PLC SIEMENS SIMATIC S7-300 z jed-
nostkami centralnymi: 312 IFM oraz 315. Na kaýdej
z tych jednostek uruchomiono procedury testowe
realizujce nast«pujce typowe zadania sterowania:
I
Czas wykonywania cyklu przez sterownik
Spe¸nienie za¸oýeÄ czasu rzeczywistego w czasie
pracy sterownika wymaga, aby podczas cyklicznego
wykonania programu czas cyklu nie przekracza¸ na-
rzuconej wartoæci. Jest to g¸wne kryterium oceny
poprawnoæci wykonywania programu. Dlatego czas
cyklu sterownika jest waýnym czynnikiem, ktry
naleýy omwi.
Czas trwania cyklu T c to czas, ktry up¸ywa podczas
jednego cyklu programu (rys. 1). Na jego d¸ugoæ
wp¸ywaj:
sterowanie logiczne (procedura P1),
sterowanie cig¸e z wykorzystaniem algorytmu
PID (procedura P2),
I
I
sterowanie z zakresu robotyki (zagadnienie kine-
matyki prostej)(procedura P3).
Sterowanie logiczne zrealizowano w procedurze P1
obs¸ugujcej zadajnik cyfrowy (ang. thumbwheel
switch) [1]. Umoýliwia on wprowadzanie do ste-
rownika kolejno cyfr z poszczeglnych segmentw
zadajnika. Aby odczyta wartoæci z zadajnika, ko-
nieczne by¸o napisanie procedury z ãkroczc je-
dynkÓ, ktra umoýliwi¸a odczytanie kolejnych wyjæ.
Realizacja tej procedury wymaga¸a obs¸ugi wy¸cz-
nie wejæ i wyjæ binarnych przez sterownik.
Do testw algorytmu regulacji cig¸ej wykorzysta-
no typowy uk¸ad regulacji (sterowanie w uk¸adzie
zamkni«tym) z regulatorem PID w g¸wnej linii re-
gulacji (procedura P2), ktrego schemat blokowy
przedstawiono na rys. 2. Celem stawianym uk¸adowi
Rys. 1. Etapy cyklu sterownika
ustawienia systemowe i sprawdzenie magistrali
wejæ/wyjæ, pami«ci, autotest CPU itp. (czas sta¸y dla
danego typu sterownika),
I czas obs¸ugi danych wejæciowych i wyjæciowych
(dla danego typu sterownika sta¸a),
I
I
Rys. 2. Schemat blokowy uk¸adu regulacji wykorzystanego
w procedurze P2
regulacji by¸o takie sterowanie napi«ciem zasilaj-
cym wentylatory, aby wirujca masa (osiem meta-
lowych ¸opatek osadzonych na rdzeniu) osign«¸a
ýdan pr«dkoæ obrotow [6]. Realizacja procedury
czas wykonywania programu uýytkownika (war-
toæ zmienna),
I
czas obs¸ugi urzdzeÄ peryferyjnych.
ROK WYD. LXV O ZESZYT 2/2006
40
842786078.001.png 842786078.002.png
P2 wymaga¸a obs¸ugi wejæ i wyjæ zarwno binar-
nych, jak i analogowych (do modu¸u SM 334 pod-
¸czono wentylatory sterujce). Funkcj« czujnika
pr«dkoæci obrotowej spe¸nia¸ enkoder firmy Omron
(E6C2-CWZ6C) i zosta¸ on pod¸czony do jednostki
centralnej CPU.
W systemach rzeczywistych relacja mi«dzy wejæ-
ciem a wyjæciem jest reprezentowana przez czas
odpowiedzi, ktry w zaleýnoæci od momentu zadzia-
¸ania sygna¸u wejæciowego w stosunku do czasu
cyklu zmienia si« w granicach od 1,5 do 2. W dalszych
rozwaýaniach ograniczono si« tylko do czasu cyklu,
gdyý ma on istotny wp¸yw na d¸ugoæ czasu odpo-
wiedzi i moýna go w prosty sposb zmierzy.
Proste zagadnienie kinematyki jest to zadanie sta-
tyczno-geometryczne polegajce na obliczaniu pozy-
cji i orientacji cz¸onu roboczego manipulatora. Majc
dane wszystkie wsp¸rz«dne konfiguracyjne, naleýy
obliczy pozycj« danego punktu zwizanego z ro-
botem wzgl«dem globalnego uk¸adu wsp¸rz«d-
nych. Przy uwzgl«dnieniu wymagaÄ czasu rzeczy-
wistego jest to problem wymagajcy wielokrotnego
wykorzystania czasoch¸onnych funkcji trygonomet-
rycznych (procedura P3). Realizacja tej procedury
wymaga¸a obs¸ugi wejæ i wyjæ binarnych i ana-
logowych.
Cykl programowy w kaýdej procedurze testujcej
wykonywany jest zgodnie ze schematem z rys. 1.
årednie i maksymalne czasy cyklu sterownikw
wyznaczano korzystajc z Module Information dost«p-
nego w pakiecie Step 7 [7]. Z uwagi na bardzo krtki
czas wykonania pojedynczej instrukcji (rz«du
w pierwszej fazie badaÄ zaj«to si« wyznaczaniem tych
w¸aænie czasw.
Na rys. 3 Ð 8 przedstawiono histogramy wystpieÄ
poszczeglnych ærednich czasw cyklw, przy czym
czasy cyklw mierzono z dok¸adnoæci do 10 ms. Na
podstawie analizy histogramw (dla procedur P1, P2,
Rys. 3. årednia liczba wystpieÄ poszczeglnych czasw
cyklw sterownika 312 IFM dla procedury P1
s)
i w zwizku z tym na niemoýliwoæ jego precyzyjnego
odczytu, zdecydowano si« na pomiar czasu cyklu dla
tysickrotnego wykonania danej procedury w p«tli.
m
Rezultaty przeprowadzonych badaÄ
Przeprowadzone badania mia¸y na celu oszacowa-
nie czasw cyklw w poszczeglnych procedurach
sterowania w oparciu o dane udost«pnione przez
producenta sterownikw SIEMENS [2], a nast«pnie
zweryfikowanie ich podczas pracy rzeczywistego
systemu sterowania.
Do wyznaczenia oszacowaÄ wykorzystano wzr (1).
Po wst«pnych oszacowaniach okaza¸o si«, ýe decy-
dujcy wp¸yw na d¸ugoæ czasu cyklu ma z¸oýonoæ
(rodzaj i liczba uýytych instrukcji) procedury steru-
jcej. Suma czasw: T os (czas wykonania systemu
operacyjnego sterownika), T R , T w (czas odczytu i za-
pisu odpowiednio wejæ i wyjæ), T Di , T Do (czas
opnienia zwizanego z odczytem/zapisem wejæ/
wyjæ) oraz T DP (czas komunikacji z sieci) w obu
uýytych sterownikach wynosi¸a oko¸o 2 ms. Tabela
zawiera oszacowania maksymalnych czasw cyklu
Rys. 4. årednia liczba wystpieÄ poszczeglnych czasw
cyklw sterownika 315 dla procedury P1
Oszacowanie maksymalnych czasw cyklw dla procedur
testujcych typowe zadania sterowania P1, P2, P3
P1
P2
P3
312 IFM
ok. 200 ms
ok. 3400 ms
ok. 3000 ms
315
ok. 100 ms
ok. 3400 ms
ok. 2900 ms
dla analizowanych procedur na podstawie danych
dotyczcych czasw wykonania poszczeglnych in-
strukcji, podanych przez producenta sprz«tu [8].
Aby zorientowa si«, ile czasu ærednio trwa cykl
sterownika przy realizacji analizowanych procedur,
Rys. 5. årednia liczba wystpieÄ poszczeglnych czasw
cyklw sterownika 312 IFM dla procedury P2
ROK WYD. LXV O ZESZYT 2/2006
41
842786078.003.png 842786078.004.png 842786078.005.png 842786078.006.png 842786078.007.png 842786078.008.png 842786078.009.png 842786078.010.png 842786078.011.png 842786078.012.png 842786078.013.png 842786078.014.png 842786078.015.png 842786078.016.png 842786078.017.png 842786078.018.png 842786078.019.png 842786078.020.png
 
pakiet Matlab. Na kaýdym rysunku lini zaznaczono
rozk¸ad g«stoæci wyznaczonego rozk¸adu normalnego.
Funkcja g«stoæci dla rozk¸adu normalnego ze
æredni
jest
przyk¸adem funkcji Gaussa zdefiniowanej za pomoc
nast«pujcego wzoru:
m
i odchyleniem standardowym
s
(2)
årednie czasy cyklw wyznaczone w wyniku ba-
daÄ doæwiadczalnych okaza¸y si« znacznie krtsze,
niý wynika to z teoretycznych oszacowaÄ. Wyniki
przedstawiono na rys. 3 Ð 8. Obok siebie zestawiono
wyniki otrzymane dla tej samej procedury realizo-
wanej dla dwch rýnych jednostek centralnych
312 IFM i 315.
Maksymalny czas cyklu sterownika jest istotniej-
szy przy projektowaniu systemw sterowania pra-
cujcych w czasie rzeczywistym niý czas æredni cyklu,
ktry pozwala tylko na oszacowanie najcz«æciej wy-
st«pujcego czasu cyklu sterownika. Wiýe si« to
z faktem, ýe projektant musi zagwarantowa nie-
przekraczalny czas pojedynczego cyklu w nawet
najbardziej niekorzystnej sytuacji.
Przedstawiono wyniki badaÄ przeprowadzone dla
tych samych co poprzednio procedur testujcych
(rys. 9 Ð 14). Maksymalne czasy cyklw wyznaczano
Rys. 6. årednia liczba wystpieÄ poszczeglnych czasw
cyklw sterownika 315 dla procedury P2
Rys. 7. årednia liczba wystpieÄ poszczeglnych czasw
cyklw sterownika 312 IFM dla procedury P3
Rys. 9. årednia liczba wystpieÄ maksymalnych czasw cyklw
sterownika 312 IFM dla procedury P1
dla 10-sekundowych (czas bardzo d¸ugi w stosunku
do czasu cyklu) okresw pracy analizowanej pro-
cedury sterujcej, a nast«pnie badano liczb« wyst-
pieÄ tych czasw w poszczeglnych przedzia¸ach
(co 10 ms). Dla otrzymanych histogramw rwnieý
wyznaczono odpowiadajce im rozk¸ady normalne.
Wnioski
Rys. 8. årednia liczba wystpieÄ poszczeglnych czasw
cyklw sterownika 315 dla procedury P3
Przeprowadzone badania æwiadcz o tym, ýe teo-
retyczne oszacowanie czasu cyklu moýna traktowa
jako bardzo zawyýony, maksymalny moýliwy czas
cyklu. W praktyce, rzeczywiste czasy cyklw naj-
cz«æciej s kilka-, a nawet kilkunastokrotnie krtsze.
Wynika to z faktu, ýe producent podaje najd¸uýszy
P3) moýna stwierdzi, ýe zmienna losowa, jak jest
czas cyklu, jest opisana rozk¸adem normalnym. Z tego
wzgl«du podj«to prb« aproksymacji otrzymanych
rozk¸adw rozk¸adem normalnym i okreælenia pa-
rametrw tych rozk¸adw, wykorzystujc do tego celu
ROK WYD. LXV O ZESZYT 2/2006
42
842786078.021.png 842786078.022.png 842786078.023.png 842786078.024.png 842786078.025.png 842786078.026.png 842786078.027.png 842786078.028.png 842786078.029.png 842786078.030.png 842786078.031.png 842786078.032.png 842786078.033.png 842786078.034.png
potwierdzaj rwnieý histogramy cz«stoæci wyst-
pieÄ maksymalnych czasw cyklw dotyczcych
procedury P1 (rys. 9 i 10). Czasy cyklw w proce-
durach realizujcych sterowanie cig¸e oraz rozwi-
zujcych proste zadanie kinematyki s zbliýone i to
zarwno w oszacowaniach teoretycznych, jak i wyz-
naczonych doæwiadczalnie.
Rys. 10. årednia liczba wystpieÄ maksymalnych czasw
cyklw sterownika 315 dla procedury P1
Rys. 13. årednia liczba wystpieÄ maksymalnych czasw
cyklw sterownika 312 IFM dla procedury P3
Rys. 11. årednia liczba wystpieÄ maksymalnych czasw
cyklw sterownika 312 IFM dla procedury P2
Rys. 14. årednia liczba wystpieÄ maksymalnych czasw
cyklw sterownika 315 dla procedury P3
Przedstawione w pracy aproksymacje otrzymanych
wynikw rozk¸adem normalnym naleýy uzna za
poprawne i dobrze odzwierciedlajce cz«stoæ wy-
stpieÄ poszczeglnych czasw cyklw. Zaprezen-
towane wyniki oszacowaÄ teoretycznych i prak-
tycznych mog u¸atwi poprawny dobr typu ste-
rownika do okreælonych zadaÄ pod wzgl«dem spe¸-
nienia wymagaÄ czasu rzeczywistego.
Rys. 12. årednia liczba wystpieÄ maksymalnych czasw
cyklw sterownika 315
LITERATURA
dla procedury P2
1. Kwaæniewski J.: Programowalne sterowniki przemys¸owe
w systemach sterowania. Krakw 1999.
2. Siemens. Simatic S7-300 Programmable Controller. Instruc-
tion List.
moýliwy czas wykonania danej instrukcji. Z zamiesz-
czonych histogramw wynika, ýe stosujc jednost-
k« CPU 315 moýna znaczco skrci czasy cyklw
(w stosunku do jednostki 312 IFM), zw¸aszcza w od-
niesieniu do procedur logicznych (rys. 4). Wniosek ten
3
Tadeusiewicz R.: Modelowanie komputerowe i obliczenia
wsp¸czesnych uk¸adw automatyzacji. Wyd. AGH, Krakw
2004.
E
ROK WYD. LXV O ZESZYT 2/2006
43
842786078.035.png 842786078.036.png 842786078.037.png 842786078.038.png 842786078.039.png 842786078.040.png 842786078.041.png 842786078.042.png 842786078.043.png 842786078.044.png 842786078.045.png 842786078.046.png 842786078.047.png 842786078.048.png
Zgłoś jeśli naruszono regulamin