AUTOMATYKA 2005 Tom 9 Zeszyt 12
* Katedra Automatyzacji Procesów AGH Kraków
169
Iwona Oprzêdkiewicz
Spe³nienie wymagañ czasu rzeczywistego
w obrêbie rodziny sterowników PLC
1. Wprowadzenie
Systemy sterowania wykorzystuj¹ce sterowniki PLC w przemyle stosowane s¹ od
wielu lat. Nie mog¹ byæ one jednak stosowane do sterowania wszystkimi rodzajami proce-
sów [1, 6]. G³ównymi ograniczeniami s¹ tutaj zbyt ma³e mo¿liwoci obliczeniowe sterow-
nika oraz za ma³a szybkoæ dzia³ania jednostki centralnej sterownika do sterowania proce-
sami wymagaj¹cymi pracy w czasie rzeczywistym. Dlatego istotne z punktu widzenia pracy
w systemach czasu rzeczywistego jest opracowanie optymalnego czasowo oprogramowa-
nia, czyli takiego, które cechuje siê maksymalnym skróceniem czasu cyklu bez utraty w³a-
ciwoci funkcyjnych. Na d³ugoæ tego czasu, obok typu sterownika, ma g³ównie wp³yw
z³o¿onoæ programu u¿ytkownika oraz szybkoæ obs³ugi urz¹dzeñ peryferyjnych. Tworz¹c
program spe³niaj¹cy wymagania czasu rzeczywistego, nale¿y zwróciæ uwagê na liczbê
i rodzaj u¿ytych instrukcji. W pracy zaprezentowano procedury testuj¹ce spe³nienie zadañ
czasu rzeczywistego podczas realizacji typowych zadañ sterowania. Dowiadczalnie wy-
znaczone czasy cyklów porównano z oszacowaniami wykonanymi na podstawie informacji
udostêpnianych przez producenta testowanych sterowników.
2. Podstawowe zagadnienia zwi¹zane z czasem rzeczywistym
w systemach PLC
Czas cyklu i czas odpowiedzi [1, 2], to podstawowe pojêcia, które nale¿y zdefiniowaæ
przed analiz¹ zagadnieñ zwi¹zanych ze spe³nieniem wymagañ czasu rzeczywistego sterow-
ników PLC.
Czas cyklu T
c
to czas, który up³ywa podczas jednego cyklu programu (rys. 1).
Na jego d³ugoæ wp³ywaj¹:
ustawienia systemowe i sprawdzenie magistrali wejæ/wyjæ, pamiêci, autotest CPU
itp. (czas sta³y dla danego typu sterownika);
170
Iwona Oprzêdkiewicz
obs³uga danych wejciowych i wyjciowych (dla danego typu sterownika sta³a);
czas wykonywania programu u¿ytkownika (wartoæ zmienna);
obs³uga urz¹dzeñ peryferyjnych.
Rys. 1. Etapy cyklu sterownika
Rys. 2. Minimalny czas odpowiedzi T
omin
Obs³uga danych wejciowych
Opónienie wejæ
Ustawienia i sprawdzenia
systemowe
Wykonanie programu
u¿ytkownika
Obs³uga danych
wyjciowych
Czas odpowiedzi T
omin
Opónienie wyjæ
Ustawienia i sprawdzenia
systemowe
Wykonanie programu
u¿ytkownika
Obs³uga danych wejciowych
Obs³uga danych
wyjciowych
Diagnostyka
Komunikacja systemowa
Przerwania
Czas cyklu T
c
Spe³nienie wymagañ czasu rzeczywistego w obrêbie rodziny sterowników PLC
171
Czas odpowiedzi T
o
to czas pomiêdzy zmian¹ stanu wejcia a zmian¹ stanu na wyjciu.
Jego d³ugoæ zale¿y od czasu cyklu oraz opónieñ zwi¹zanych z wejciami i wyjciami.
W zwi¹zku z faktem, ¿e odczyt sygna³u wejciowego mo¿e nast¹piæ na pocz¹tku lub na
koñcu cyklu, uzasadnione jest wprowadzenie pojêæ minimalnego T
omin
i maksymalnego
T
omax
czasu odpowiedzi. Z min
imalnym czasem odpowiedzi (rys. 2) mamy do czynienia
wtedy, gdy zmiana sygna³u wejciowego nast¹pi odpowiednio wczenie przed obs³ug¹
wejæ i wyjæ, je¿eli natomiast czas miêdzy wyst¹pieniem sygna³u wejciowego a obs³ug¹
wejæ i wyjæ bêdzie mniejszy ni¿ czas opónienia (za³¹czania) sygna³u wejcia wtedy od-
czyt sygna³u wejciowego nast¹pi dopiero na pocz¹tku nastêpnego cyklu, co spowoduje
wyd³u¿enie czasu odpowiedzi o jeden cykl. W takim wypadku czas odpowiedzi bêdzie
maksymalny (rys. 3).
Rys. 3. Maksymalny czas odpowiedzi T
omax
Obs³uga danych wejciowych
Opónienie wejæ
Ustawienia i sprawdzenia
systemowe
Wykonanie programu
u¿ytkownika
Diagnostyka
Czas odpowiedzi T
omax
Obs³uga danych wejciowych
Ustawienia i sprawdzenia
systemowe
Wykonanie programu
u¿ytkownika
Obs³uga danych
wyjciowych
Obs³uga danych
wyjciowych
Opónienie wyjæ
172
Iwona Oprzêdkiewicz
3. Teoretyczne oszacowanie czasu cyklu i odpowiedzi
Szacowanie czasu
cyklu i odpowiedzi mo¿na zrealizowaæ w oparciu o dane dostarczo-
ne przez producenta konkretnego typu sterownika. Bêdzie to oczywicie oszacowanie dla
najmniej korzystnej sytuacji, czyli rzeczywiste pomiary konkretnych czasów powinny byæ
krótsze od wartoci obliczonej [3, 6].
Czas odpowiedzi T
o
waha siê pomiêdzy wartoci¹ minimaln¹ T
omin
i maksymaln¹
T
omax
, czyli:
T
omin
< T
o
< T
omax
(1)
T
omin
=T
R
+T
os
+T
u
+T
w
+T
Di
+T
Do
+T
t
(2)
T
omax
=2T
R
+2T
os
+2T
u
+2T
w
+T
Di
+T
Do
+T
t
+2T
DP
(3)
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 opónienia zwi¹zanego z odczytem/zapisem wejæ/wyjæ,
T
t
czas wykonania siê timerów u¿ytych w programie,
T
DP
czas komunikacji z sieci¹.
Czas cyklu równie¿ nie jest wartoci¹ sta³¹, lecz zale¿y np. od liczby i rodzaju prze-
rwañ oraz szybkoci komunikacji systemowej. Szacuj¹c jego wartoæ nale¿y uwzglêdniæ
T
c
= T
R
+T
os
+T
u
+T
w
+T
Di
+T
Do
+T
t
+T
DP
(4)
W zaproponowa
nych wzorach nie uwzglêdniono czasu przeznaczonego na diagnosty-
kê, gdy¿ jest on pomijalnie ma³y w stosunku do pozosta³ych czasów.
4. Procedury testuj¹ce spe³nienie wymagañ czasu rzeczywistego
podczas realizacji typowych zadañ sterowania
Badania dowiadczalne zosta³y wykonane na sterownikach PLC SIEMENS SIMATIC
S7-300 z jednostkami centralnymi: 312 IFM oraz 315. Na ka¿dej z tych jednostek urucho-
miono procedury testowe realizuj¹ce nastêpuj¹ce typowe zadania sterowania:
sterowanie logiczne (procedura P1),
sterowanie ci¹g³e z wykorzystaniem algorytmu PID (procedura P2),
sterowanie z zakresu robotyki (zagadnienie kinematyki prostej) (procedura P3).
Spe³nienie wymagañ czasu rzeczywistego w obrêbie rodziny sterowników PLC
173
Sterowanie logiczne zrealizowano w procedurze obs³uguj¹cej zadajnik cyfrowy
(thumbwheel switch) [1]. Umo¿liwia on wprowadzanie do sterownika cyfry w zale¿noci
od liczby segmentów zadajnika. Aby odczytaæ wartoci z zadajnika, konieczne by³o napisa-
nie procedury z krocz¹c¹ jedynk¹, która umo¿liwi³a odczytanie kolejnych wyjæ.
Do testów algorytmu regulacji ci¹g³ej wykorzystano typowy uk³ad regulacji (sterowa-
nie w uk³adzie zamkniêtym) z regulatorem PID w g³ównej linii regulacji.
Proste zagadnienie kinematyki jest to zadanie statyczno-geometryczne polegaj¹ce na
obliczaniu pozycji i orientacji cz³onu roboczego manipulatora. Maj¹c dane wszystkie
wspó³rzêdne konfiguracyjne, nale¿y obliczyæ pozycjê danego punktu zwi¹zanego z robo-
tem wzglêdem globalnego uk³adu wspó³rzêdnych. Z punktu widzenia sterowania jest to
problem wymagaj¹cy wielokrotnego wykorzystania czasoch³onnych funkcji trygonome-
trycznych.
5. Wyniki badañ dowiadczalnych
Przeprowadzone badania mia³y na celu oszacowanie czasów cyklów w poszczegól-
nych procedurach sterowania w oparciu o dane udostêpnione przez producenta sterowni-
ków SIEMENS [2], a nastêpnie zweryfikowanie ich podczas rzeczywistego sterowania.
Do wyznaczenia oszacowañ wykorzystano wzór (4). Po wstêpnych oszacowaniach
okaza³o siê, ¿e decyduj¹cy wp³yw na d³ugoæ czasu cyklu ma z³o¿onoæ (rodzaj i liczba
u¿ytych instrukcji) procedury steruj¹cej. Suma czasów: T
os
(czas wykonania systemu ope-
racyjnego sterownika), T
R
, T
w
(czas odczytu i zapisu odpowiednio wejæ i wyjæ), T
Di
, T
Do
(czas opónienia zwi¹zanego z odczytem/zapisem wejæ/wyjæ) oraz T
DP
(czas komunika-
cji z sieci¹) w obu u¿ytych sterownikach wynosi³a oko³o 2 ms. Czasy wykonania pojedyn-
czych instrukcji s¹ na tyle krótkie, ¿e dla umo¿liwienia ich odczytu zdecydowano siê na
pomiar czasu cyklu dla tysi¹ckrotnego wykonania danej procedury w pêtli.
Rysunki 46 przedstawiaj¹ histogramy wyst¹pieñ poszczególnych czasów cyklów,
przy czym czasy cyklów mierzono z dok³adnoci¹ do 10 ms, natomiast tabela 1 zawiera
oszacowania maksymalnych czasów cyklu dla analizowanych procedur na podstawie da-
nych dotycz¹cych czasów wykonania poszczególnych instrukcji, podanych przez produ-
centa sprzêtu [4].
Tabela 1
Oszacowanie maksymalnych czasów cyklów dla procedur testuj¹cych
typowe zadania sterowania P1, P2, P3
Czasy cy
klów wyznaczone w wyniku badañ dowiadczalnych okaza³y siê znacz-
nie krótsze ni¿ wynika³oby to z teoretycznych oszacowañ. Wyniki przedstawiono na rysun-
kach 46.
P1 P2 P3
312 IFM
ok. 200 ms
ok. 3400 ms
ok. 3000 ms
315
ok.100 ms
ok. 3400 ms
ok. 2900 ms
174
Iwona Oprzêdkiewicz
Rys. 4. rednia liczba wyst¹pieñ poszczególnych
Rys. 5. rednia liczba wyst¹pieñ poszcze-
czasów cyklów dla procedury P1
gólnych czasów cyklów dla procedury P2
Rys. 6. rednia liczba wyst¹pieñ poszczególnych czasów
cyklów dla procedury P3
6. Wnioski
Przeprowadzone badania wiadcz¹ o tym, ¿e teoretyczne oszacowanie czasu cyklu
mo¿na traktowaæ jako maksymalny mo¿liwy czas cyklu. W praktyce, rzeczywiste czasy
cyklów najczêciej s¹ kilka, a nawet kilkunastokrotnie krótsze. Wynika to prawdopodobnie
z faktu, ¿e producent podaje najd³u¿szy mo¿liwy czas wykonania danej operacji. Na pod-
stawie zamieszczonych histogramów mo¿na zaobserwowaæ, ¿e stosuj¹c jednostkê CPU 315
mo¿na znacz¹co skróciæ czasy cyklów (w stosunku do jednostki 312 IFM) w procedurach
opartych na sterowaniu logicznym (rys. 4). Czasy cyklów w procedurach realizuj¹cych ste-
rowanie ci¹g³e oraz proste zadanie kinematyki s¹ zbli¿one i to zarówno w oszacowaniach
teoretycznych jak i wyznaczonych dowiadczalnie.
Literatura
[1] Kwaniewski J.: Programowalne sterowniki przemys³owe w systemach sterowania. Kraków, 1999
[2] Siemens. Simatic S7-300 Programmable Controller. Manual. Edition 03/99. Installation and
Hardware
0
50
100
150
200
10 20 30 40 50 60 70 80 90 100
Czas y cyklu [m s]
r
ed
ni
a
licz
ba
w
yst
¹p
ie
ñ
312 IFM
315
0
10
20
30
40
50
60
70 80 90 100 110 120 130 140 150 160
Czas cyk lu [ms ]
r
ed
ni
a
licz
ba
w
yst
¹p
ie
ñ
312 IFM
315
0
20
40
60
80
100
120
40
50 60
70
80 90 100 110 120
C zas cyk lu [m s ]
r
ed
n
ia li
cz
b
a w
ys
t¹
p
ieñ
312 IFM
315
Spe³nienie wymagañ czasu rzeczywistego w obrêbie rodziny sterowników PLC
175
[3] Tadeusiewicz R. i in.: Modelowanie komputerowe i obliczenia wspó³czesnych uk³adów automaty-
zacji. Kraków, UWND AGH 2004, ISBN 83-89388-62-6
[4] Siemens. Simatic S7-300 Programmable Controller. Instruction List
[5] Berger H.: Automating with STEP7 in STL and SCL. SIMATIC S7-300/400. Programmable Con-
trollers. Publicis MCD Corporate Publishing, 2001
[6] Oprzêdkiewicz K.: Spe³nienie wymagañ czasu rzeczywistego w rodowisku sprzêtowo-programo-
wym soft PLC podczas realizacji predykatora Smitha. Instytut Matematyki i Informatyki, Poli-
technika Czêstochowska, Informatyka teoretyczna i stosowana, r. 4, nr 7, 2004
176
Iwona Oprzêdkiewicz