background image

AUTOMATYKA • 2005 • Tom 9 • Zeszyt 1–2

* 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  przemyœle  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¿liwoœci 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-

œciwoœci 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. Doœwiadczalnie 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);

background image

170

Iwona Oprzêdkiewicz

– obs³uga danych wejœciowych i wyjœciowych (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 wejœciowych

OpóŸnienie wejœæ 

Ustawienia i sprawdzenia 

systemowe 

Wykonanie programu 

u¿ytkownika 

Obs³uga danych 

wyjœciowych 

Czas odpowiedzi T

omin 

OpóŸnienie wyjœæ 

 

 

Ustawienia i sprawdzenia 

systemowe 

Wykonanie programu 

u¿ytkownika 

Obs³uga danych wejœciowych

Obs³uga danych 

wyjœciowych 

 

Diagnostyka 

Komunikacja systemowa 

Przerwania 

Czas cyklu T

c

background image

Spe³nienie wymagañ czasu rzeczywistego w obrêbie rodziny sterowników PLC

171

Czas odpowiedzi T

o

 

 to czas pomiêdzy zmian¹ stanu wejœcia a zmian¹ stanu na wyjœciu.

Jego d³ugoœæ zale¿y od czasu cyklu oraz opóŸnieñ zwi¹zanych z wejœciami i wyjœciami.

W zwi¹zku z faktem, ¿e odczyt sygna³u wejœciowego 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  wejœciowego  nast¹pi  odpowiednio  wczeœnie  przed  obs³ug¹

wejœæ i wyjœæ, je¿eli natomiast czas miêdzy wyst¹pieniem sygna³u wejœciowego a obs³ug¹

wejœæ i wyjœæ bêdzie mniejszy ni¿ czas opóŸnienia (za³¹czania) sygna³u wejœcia wtedy od-

czyt sygna³u wejœciowego 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 wejœciowych

OpóŸnienie wejœæ 

Ustawienia i sprawdzenia 

systemowe 

Wykonanie programu 

u¿ytkownika 

Diagnostyka 

Czas odpowiedzi T

omax 

Obs³uga danych wejœciowych

Ustawienia i sprawdzenia 

systemowe 

Wykonanie programu 

u¿ytkownika 

Obs³uga danych 

wyjœciowych 

 

Obs³uga danych 

wyjœciowych 

 

OpóŸnienie wyjœæ 

background image

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 oczywiœcie oszacowanie dla

najmniej korzystnej sytuacji, czyli rzeczywiste pomiary konkretnych czasów powinny byæ

krótsze od wartoœci obliczonej [3, 6].

Czas odpowiedzi T

o

  waha  siê  pomiêdzy  wartoœci¹  minimaln¹  T

omin

  i  maksymaln¹

T

omax

, czyli:

T

omin 

< T

< 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 wartoœci¹ sta³¹, lecz zale¿y np. od liczby i rodzaju prze-

rwañ oraz szybkoœci 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 doœwiadczalne 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).

background image

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¿noœci

od liczby segmentów zadajnika. Aby odczytaæ wartoœci 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ñ doœwiadczalnych

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  4–6  przedstawiaj¹  histogramy  wyst¹pieñ  poszczególnych  czasów  cyklów,

przy czym czasy cyklów mierzono z dok³adnoœci¹ 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ñ  doœwiadczalnych  okaza³y  siê  znacz-

nie krótsze ni¿ wynika³oby to z teoretycznych oszacowañ. Wyniki przedstawiono na rysun-

kach 4–6.

 P1  P2  P3 

312 IFM 

ok. 200 ms 

ok. 3400 ms 

ok. 3000 ms 

315 

ok.100 ms 

ok. 3400 ms 

ok. 2900 ms 

background image

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 doœwiadczalnie.

Literatura

[1] Kwaœniewski 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

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

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

p

ieñ

312 IFM
315

background image

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

background image

176

Iwona Oprzêdkiewicz