AUTOMATYKA 2005 Tom 9 Zeszyt 1 2 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 procesów [1, 6]. G³ównymi ograniczeniami s¹ tutaj zbyt ma³e mo liwoœci obliczeniowe sterownika oraz za ma³a szybkoœæ dzia³ania jednostki centralnej sterownika do sterowania procesami wymagaj¹cymi pracy w czasie rzeczywistym. Dlatego istotne z punktu widzenia pracy w systemach czasu rzeczywistego jest opracowanie optymalnego czasowo oprogramowania, 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 wyznaczone 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 sterownikó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); * Katedra Automatyzacji Procesów AGH Kraków 169
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. Obs³uga danych wejœciowych Przerwania Ustawienia i sprawdzenia systemowe Wykonanie programu u ytkownika Obs³uga danych wyjœciowych Czas cyklu T c Komunikacja systemowa Diagnostyka Rys. 1. Etapy cyklu sterownika OpóŸnienie wejœæ Obs³uga danych wejœciowych Ustawienia i sprawdzenia systemowe Wykonanie programu u ytkownika Czas odpowiedzi T omin Obs³uga danych wyjœciowych OpóŸnienie wyjœæ Rys. 2. Minimalny czas odpowiedzi T omin
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 minimalnym 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 odczyt 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). OpóŸnienie wejœæ Obs³uga danych wejœciowych Ustawienia i sprawdzenia systemowe Wykonanie programu u ytkownika Obs³uga danych wyjœciowych Diagnostyka Czas odpowiedzi T omax Obs³uga danych wejœciowych Ustawienia i sprawdzenia systemowe Wykonanie programu u ytkownika Obs³uga danych wyjœciowych OpóŸnienie wyjœæ Rys. 3. Maksymalny czas odpowiedzi T omax
172 Iwona Oprzêdkiewicz 3. Teoretyczne oszacowanie czasu cyklu i odpowiedzi Szacowanie czasu cyklu i odpowiedzi mo na zrealizowaæ w oparciu o dane dostarczone 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 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, czas komunikacji z sieci¹. T DP Czas cyklu równie nie jest wartoœci¹ sta³¹, lecz zale y np. od liczby i rodzaju przerwañ 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 zaproponowanych wzorach nie uwzglêdniono czasu przeznaczonego na diagnostykê, 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 uruchomiono 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 noœci od liczby segmentów zadajnika. Aby odczytaæ wartoœci z zadajnika, konieczne by³o napisanie 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 (sterowanie 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 robotem wzglêdem globalnego uk³adu wspó³rzêdnych. Z punktu widzenia sterowania jest to problem wymagaj¹cy wielokrotnego wykorzystania czasoch³onnych funkcji trygonometrycznych. 5. Wyniki badañ doœwiadczalnych Przeprowadzone badania mia³y na celu oszacowanie czasów cyklów w poszczególnych procedurach sterowania w oparciu o dane udostêpnione przez producenta sterownikó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 operacyjnego 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 komunikacji z sieci¹) w obu u ytych sterownikach wynosi³a oko³o 2 ms. Czasy wykonania pojedynczych 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 danych dotycz¹cych czasów wykonania poszczególnych instrukcji, podanych przez producenta sprzêtu [4]. Tabela 1 Oszacowanie maksymalnych czasów cyklów dla procedur testuj¹cych 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 Czasy cyklów wyznaczone w wyniku badañ doœwiadczalnych okaza³y siê znacznie krótsze ni wynika³oby to z teoretycznych oszacowañ. Wyniki przedstawiono na rysunkach 4 6.
174 Iwona Oprzêdkiewicz 200 60 Œrednia liczba wyst¹pieñ 150 100 50 0 10 20 30 40 50 60 70 80 90 100 Czas y cyklu [m s] 312 IFM 315 Œrednia liczba wyst¹pieñ 50 40 30 20 10 0 70 80 90 100 110 120 130 140 150 160 Czas cyk lu [ms ] 312 IFM 315 Rys. 5. Œrednia liczba wyst¹pieñ poszcze- gólnych czasów cyklów dla procedury P2 Rys. 4. Œrednia liczba wyst¹pieñ poszczególnych czasów cyklów dla procedury P1 Œrednia liczba wyst¹pieñ 120 100 80 60 40 20 0 40 50 60 70 80 90 100 110 120 Czas cyklu [m s] 312 IFM 315 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 podstawie 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 sterowanie 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
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 automatyzacji. 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 Controllers. Publicis MCD Corporate Publishing, 2001 [6] Oprzêdkiewicz K.: Spe³nienie wymagañ czasu rzeczywistego w œrodowisku sprzêtowo-programowym soft PLC podczas realizacji predykatora Smitha. Instytut Matematyki i Informatyki, Politechnika Czêstochowska, Informatyka teoretyczna i stosowana, r. 4, nr 7, 2004
176 Iwona Oprzêdkiewicz