SCADA

(Supervisory Control and Data Aquisation)

 

Seminarski rad iz S.P.V.P. – a

 

 

 

1.         Uvod

 

 

2. Hardware

 

 

                Zamislimo jednostavan integrirani krug prikazan slikom 1. sastavljen od prekidača i žaruljice. Žaruljica omogućuje operatoru da sazna da li je sklopka zatvorena ili otvorena. Sklopka nam može biti direktno reprezent stanja nekog motora, ventila... Zamislimo da je ta sklopka udaljena 100 km od operatora. Polaganje kablova ne dolazi u obzir, pa stoga uvodimo komunikacijsku opremu. Zakoplicirajmo još malo situaciju, pa zamislimo da imamo jako veliki broj sličnih 

 

 

 

 

 

 

 


Slika 1.

 

strujnih krugova, koji prate neke procese u industriji. Operateru ne bi ni malo bilo jednostavno pratiti toliki broj stanja (npr. 10000) i donositi odluke. Moramo uzeti u obzir da neka stanja mogu sugerirati na alarm. Kako se tehnologija razvila i računala su postala sve brža i jeftinija, tada nam se i nameće zaključak da sva ta stanja zapravo prati računalo i prikaže ih na zaslon terminala. Računalo će obavijestiti operatera samo o alarmantnim situacijama, dok će se, naravno, u realnom vremenu omogućiti praćenje cijelog procesa. Upravo ta cijela konfiguracija sastavljena od ulaznih elemenata (sklopki) komunikacijskog kanala, indikacije podržane računalom, naziva se SCADA.

 

 

OSNOVNI ELEMENTI SCADA-e

 

            Blok shema SCADA-e prikazana je slikom 2.

 

 

 

 

 

 

 

 

 

 

 

 


Slika 2.

 

           

 

 

Kao što je slikom prikazano SCADA se sastoji od:

 

1.      Pretvornici i aktuatori (na slici: Instrumentation)

2.      Remote terminal unit (na slici: Remote station)

3.      Komunikacijska mreža (na slici: Communication network)

4.      Centralna stanica ili Master terminal unit (na slici: Central monitoring station)

 

2.1. Pretvornici i aktuatori

 

            Pretvornici i aktuatori predstavljaju početak lanca. Oni su električki ili mehanički vezani na proces koji promatramo. Zadaća pretvornika je da prate vrijednosti tlaka, protoka, temperature, brzine... te da u analognom ili digitalnom obliku informaciju o trenutnom stanju mjerene veličine proslijede RTU-u. Aktuatori primaju informaciju od RTU-a te npr. zatvaraju ili otvaraju ventile.

 

Remote terminal unit

 

            Praćenje i kontrolu pretvornika i aktuatora vrši RTU. Ujedno njegova zadaća je i komunikacija sa centralnim SCADA sustavom, i izvršavanje naredbi dobivenih od istog. O samoj arhitekturi RTU-a biti će više riječi u daljnjem tekstu.

 

Komunikacijska mreža

 

            Komunikacijska mreža ima zadaću prijenosa podataka između RTU-a i MTU-a. Ona može biti izvedena radio komunikacijom, putem telekomunikacijske mreže ili položenim vodovima. Koji će se način primjeniti, specifičan je za svaku aplikaciju. Položeni vodovi se koriste najviše u industriji, tj. na kratkim udaljenostima unutar postrojenja. Telekomunikacijskom mrežom se koristimo sa običnim modemima, ili modemima spojenim poprečnim vezama. Ovo potonje riješenje je skuplje, pa tako ako nam ne treba stalna veza sa RTU-om, koristimo obične modeme. Radio komunikacija, je primjerena velikim udaljenostima RTU-a i MTU-a.

 

Master terminal unit

 

            Na kraju SCADA lanca imamo master terminal unit. Njegova zadaća je sakupljanje podataka sa RTU-a, kojih može biti više. Master terminal unit može biti dio računalne mreže, te omogući da više operatera nadgleda proces. MTU pristupa operateru preko sučelja (man-machine interface), koje prikazuje graičkim simbolima, grafovima, tablicama itd. stanje procesa.

 

 

2.2. RTU

 

            RTU dakle služi za kontrolu i praćenje stanja  pretvornika i aktuataora. Obavezno ima u sebi ugrađeno komunikacijsko skolopovlje za komunikaciju sa MTU-om. To su vrlo robusne naprave namjenjene vanjskoj i unutrašnjoj ugradnji, te zadovoljavaju visoke industrijske standarde. Postoje single board RTU-i i u modularnoj izvedbi. Single board RTU, ima fiksni broj analognih ili digitalnih ulaza i izlaza, te predstavlja jeftinije rješenje. Oni često ne zadovoljavaju zahtjeve sofisticiranijih sistema, kod kojih  su moguća proširenja. Skuplju verziju prestavljaju modularni RTU-i, koji su izvedeni kao ormari (rack) u koje je moguće utaknuti različite kartice, bilo to u svrhu povećanja broja izlaza ili ulaza, dodavanja novog komunikacijskog sučelja ili npr. povećanju procesorske snage.

 

Sklopovlje unutar RTU-a

 

Jedna od vrlo čestih izvedbi RTU-a sadrži sklopovlje prikazano na slici 3. Svi sastavni dijelovi prikazanog RTU-a nisu standardni. Ovise o samoj veličini RTU-a o čemu će biti govora kasnije.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Slika 3.

 

Sastavni dijelovi RTU-a:

1.      Napajanje (na slici: power supply) – ima zadaću da opskrbi energijom RTU, te kod malo složenijih izvedbi RTU-a, opskrbi energijom aktuatore i pretvornike. Napajanje mora biti besprekidno, i mora zaštiti uređaj od naponskih ili strujnih šiljaka.

2.      Procesor (na slici: CPU) – koji obrađuje podatke i izvršava zadane funkcije

3.      RAM (na slici: volatile memory) – u nju se pohranjuju međurezultati rada procesora

4.      ROM (na slici: non volatile memory) – u njoj je sadržan programski kod, te konstante bitne za rad RTU-a

5.      Analogni i digitalni ulazi i izlazi (na slici: analog i/o, digital i/o) – služe za komunikaciju i upravljanje pretvornicima i aktuatorima.

6.      Komunikacijsko sučelje (na slici: modem) – brine se o komunikaciji sa MTU-om

7.      Centralna sabirnica (na slici: central bus) – na nju su spojeni svi do sad navedeni dijelovi, odnosno moduli kod modularnog RTU-a (npr. VME sabirnica).

Ostali mogući dijelovi unutar RTU-a su ''watch-dog timer'' koji resetira procesor ako ''zaglavi'' negdje u programskom kodu, dodatni portovi koji omogućuju direktan pristup RTU-u pomoću npr. prijenosnog računala, real-time sat itd.

 

Programsko sučelje RTU-a

 

            Operativni sistem RTU-a može biti izveden kao specifičan real-time sustav, ili može biti izveden kao beskonačna petlja koja u svakom prolazu skenira sve ulaze i izlaze, te komunikacijsko sučelje RTU-a. Tu naravno moraju postojati driveri za pojedine ulaze i izlaze, kao i za komunikacijsko sučelje. Neki RTU-i dopuštaju njihovo konfigururanje, pa za to mora postojati programska podrška. Kod naprednijih RTU-a postoji sistem datoteka te samodijagnostika.

 

Način komunikacije MTU - RTU

 

            Primarna zadaća RTU je skeniranje ulaza i to najčešće na vrlo visokoj frekvenciji, tj. puno višoj od frekvencije kojom MTU skenira RTU-ove. Potom išćekuje da bude prozvan od strane RTU-a, ili da sam inicira poziv MTU-a, te preda trenutno stanje njegovih ulaza. Išćekivanje proziva je jednostavan proces, ne događaju se kolizije na mreži, te nestanak veze se lako detektira. Ali pri takvom načinu komunikacije MTU se ne može brzo obavijestiti o alarmima, vrijeme čekanja proziva se povećava sa brojem RTU-a, te komunikacija između dva RTU-a (ako je moguća), mora se odvijati preko MTU-a. Hitna obavijest MTU-a o alarmima unutar procesa, može se riješiti na način da RTU-i sami iniciraju poziv, time smo ujedno spriječili i bespotreban tok podataka, i omogućili komunikaciju između RTU-a. Nedostaci takvog načina komunikacije su moguće kolizije na mreži, te se nestanak veze ukoliko RTU dugo nije poslao poziv,  može detektirati samo prozivom sa strane MTU-a.

 

Mali i veliki RTU-i

 

            Evo još jedne moguće podjele RTU-a, na način koji najčešće susrećemo na tržištu:

1.      Najmanji RTU-i (tiny stand-alone) – imaju baterijsko napajanje dostatno za cijelu godinu. Podaci se spremaju u EPROM ili FLASH memoriju, i ne podržavaju složenije komunikacijske protokole.

2.      Mali RTU-i (small stand-alone) – napajaju se periodično tj. uključuju se kad su prozvani od strane MTU-a. Također imaju baterijsko napajanje, potpomognuto npr. solarnim ćelijama, te mogu ujedno napajati pretvornike. Podržavaju složenije komunikacijske protokole.

3.      Srednji RTU-i – oni su vrlo često modularnog tipa, sadrže industrijske PC-e, VME sabirnica....

4.      Veliki RTU-i – za velika postrojenja, komuniciraju preko brzih LAN-ova, čak sadrže zvona i zviždaljke.

 

2.3. PLC vs RTU

 

            Razlika između PLC i RTU-a se sve više smanjuje. Naime, PLC-i (programmable logic controller) su u početku bili namjenjeni kao zamjena za relejsku logiku. Njegovi ulazi i izlazi su slični onima koje ima RTU. Program unutar PLC-a vrti se u zatvorenoj petlji, skenirajući stanja na ulazima, te na temelju tih stanja, donosio odluke. Orginalno PLC su zamišljeni bez komunikacijskog sučelja, ali danas se ono u njih ugrađuje i po funkciji postaju slični RTU-ima.

            RTU-i su korišteni u aplikacijama gdje je uz kontrolu i praćenje, postojao naglasak na komunikaciji. Za razliku od PLC, programabilnost je vrlo loša, no danas su veću svojeni standardi za programiranje (IEC 1131-1) te se programabilnošću RTU-i približuju PLC-ima.

 

2.4. Primjeri RTU-a

 

http://www.scada-rtus.com/html/mp925_rtu.htm

 

http://www.scadalink.com/sl900mb.htm

 

 

2.5. Literatura

 

http://members.iinet.net.au/~ianw/rtu.html

 

http://www.micrologic-systems.com/primers/scada1.htm

 

 

 

 

3. Software

3.1. Što znači SCADA ?

SCADA nije potpuno upravljiva, nego je više orijentirana na nadzor. Kao takav je čisti softverski paket koji je instaliran na hardveru koji je povezan sa PLC-ovima ili nekim drugim hardverskim modulom. SCADA sistemi se ne koriste samo u industriji nego i u proizvodnji energije, kemiji, eksperimentalnim laboratorijima kao istraživanje nuklearne fuzije. Broj ulazno-izlaznih kanala može biti od 1000 do 10,000. SCADA se brzo razvija i sada se u razvoju sistemi sa blizu 1,000,000 ulazno-izlaznih kanala. SCADA sistemi se uglavnom rade za DOS, Windows, UNIX i sada je u razvoju SCADA za Linux.

                    

3.2. Arhitektura hardvera.

Dva osnovna sloja SCADA sistema su klijentski sloj koji služi za interakciju između mašine i čovjeka, i sloj podatkovnog servera koji obrađuje većinu procesnih veličina. Podatkovni server komunicira sa uređajima kroz polje procesnih kontrolera. Procesni kontroler npr. PLC, RTU može biti povezan s

podatkovnim serverom direktno ili preko mreže. Podatkovni serveri obično su povezani međusobno ili sa klijentima preko Ethernet LAN-a.

 

 

3.3. Arhitektura softvera.

Prozvodi su multi-tasking i bazirani su na real-time bazi podataka koja se može nalaziti na jednom ili više servera. Serveri su odgovorni za traženje i obradu podataka (npr. čitanje s kontrolera, provjera alarma, izačunavanje, arhiviranje) obično za grupu parametara na koju su spojeni. Možemo imati server koji će raditi samo jednu funkciju (npr. provjeru alarma).

 

3.4. Komunikacija.

 

Unutarnja komunikacija.

Klijent-server i server-server komunikacija se event-driven bazirana, i koristi se TCP/IP protokol za komunikaciju. Klijent opiše parametar koji ima pojedini server, i samo promjene tog parametra se vračaju klijentu.

 

Pristup uređajima.

Serveri periodički čitaju podatak sa kontrolera. Brzina čitanja može biti različita za različite parametre. Kontroler daje zahtijevani parametar serveru. Ako kontroler i komunikacijski protokol koriste asinkroni prijenos tada će ga i proizvodi također podržavati.

 

Proizvodi omogućavaju komunikacijske driver-e za većinu PLC-ova i široko rasprostranjene sabirnice.

 

Podatkovni server može podržavati više komunikacijskih protokola, onoliko koliko ima slobodnih mjesta za komunikacijske kartice.

Za razvoj novih driver-a potrebno je 2–6 tjedna ovisno o kompleksnosti i sličnosti sa postojećim driver-ima, i za to se koristi driver development toolkit.

 

Kontrola

 

 

3.5. Sučelje.

Sučelje aplikacije.

Najveća prednost OPC-a  je razvoj. Još uvijek postoji nedostatak driver-a i kontrolera koje podržava OPC server softver, ali to se brzo popravlja jer su

proizvođači kontrolera aktivno uključeni u razvoj OPC standarda.

Proizvodi također omogućavaju:

Open Data Base Conectivity (ODBC) sučelje za podatke u arhivu, ali ne i u konfiguracijskoj bazi podataka.

ASCII ulazno-izlaznu datoteku za konfiguraciju podataka.

API funkcije podržane u C, C++, VB za pristup podacima u RTDB i arhivu.

Proizvodi za PC podržavaju Microsoft-ove proizvode (DDE, DLL, OLE)

Baza podataka.

Konfiguracijski podaci su pohranjeni u bazu koja je logički jedinstvena ali se fizički može nalaziti na više računala i spremljeni su u određenom formatu.

Zbog veće brzine RTDB je rezidentna u memoriji servera i također je u određenom formatu.

Format za arhiviranje i logiranje je određeni zbog veće brzine, ali neki proizvodi podržavaju logiranje u Relational Data Base Management System (RDBMS) kao sporija varijanta.

Skalabilnost.

To je mogućnost proširenja SCADA sistema dodavanjem novih procesnih varijabli, novih specijalnih servera, ili novih klijenata. Proizvodi postižu skalabilnost tako da podržavaju više servera priključeno na više procesnih kontrolera. Svaki server ima svoju konfiguracijsku bazu podataka i RTDB je odgovorna za obradu procesnih parametara.

                    

 

3.6. Funkcionalnost.

Kontrola pristupa.

Korisnici su grupirani u skupine koje imaju definirane privilegije procesnim parametrima u sistemu.

MMI (Man to Machine Interface).

Proizvod podržava višestruki prikaz. Također podržava generičke grafičke objekte sa vezama procesnih varijabli. Ti objekti mogu se uzeti iz baze i ubaciti u neki dijagram. Podržane su standardne operacije s prozorima, npr. uvećavanje, pomicanje itd. Mogu se stvoriti veze među prikazanih prozorima tako da se olakša navigacija iz jednog pogleda u drugi.

Obrada alarma.

Obrada alarma je bazirana na granicama i provjeri statusa i izvršava se u podatkovnom serveru. Mogu se koristiti složeni aritmetički i logički izrazi za stvaranje parametara nad kojima se vrši provjera granice ili statusa. Alarmi se logički obrađuju na jednom mjestu, informacija postoji na jednom mjestu i svi korisnici vide isti status, i višestruki  prioriteti alarma su podržani. Moguće je grupirati više alarma i obrađivati ih kao entitete(npr. filtrirati cijelu grupu ili samo neki u grupi). Može se generirati E-mail ili neka druga akcija ako se neki alarm aktivira.

 

3.7. Logiranje/arhiviranje.

Logiranje je srednje vremensko pohranjivanje podataka na disk, dok je arhiviranje dugoročno pohranjivanje podataka na disk ili na neki drugi medij. Logiranje se tipično izvršava u cikličkim periodima. Jednom kada se dostigne kvota ili je prošlo određeno vrijeme podaci se brišu. Logiranje podataka se može periodički ponavljati ili kada se dogodi neki predefinirani događaj. Logirani podaci se mogu prebaciti u arhivu kada je kvota puna. Logiranje korisnikovih akcija se pohranjuje zajedno sa njegovom identifikacijom.

 

3.8. Generiranje izvještaja.

Proizvodi mogu izvještaj automatski generirati, ispisati i pohraniti u arhivu.

 

3.9. Razvoj aplikacije.

Aplikacija se razvija u dva dijela. Prvi dio je definiranje parametara. Drugi dio je povezivanje parametara, grafički prikaz, obrada alarma itd.

Razvojni alati.

Grafički editor sa standardnim mogućnostima (crtanje linija, krivulja, kružnica itd.). Moguće je uvesti neki crtež izvana. Ima još i bazu podataka sa generičkim simbolima koji se dinamički mijenjaju kako se mijenja neka veličina.

Skriptni jezik.

API funkcije podržane od C, C++, VB

Driver development toolkit za razvoj driver-a za hardver koji ne podržava SCADA .

 

3.10. Novosti.

Web tehnologija, Java, Active X, itd.

OPC za komunikaciju među klijent i server modulima. Omogućava priključivanje OPC modula dugog proizvođača u SCADA sustav.

 

3.11. Prednosti.

Velika funkcionalnost.

Dugoročnost.

Pouzdanost i robusnost.

Jednostavno održavanje i tehnička podrška.

 

3.12. Literatura.

[1] A.Daneels, W.Salter, "Technology Survey Summary of Study Report

[2] A.Daneels, W.Salter, "Selection and Evaluation of Commercial SCADA Systems for the Controls of the CERN LHC Experiments

[3] G.Baribaud et al., "Recommendations for the Use of Fieldbuses at CERN in the LHC Era",

 

 

 

4. Linkovi

http://www.dorsight.co.il

http://www.datac-control.com/

http://www.automatedsolutions.com/      

http://www.racoman.com

5. Autori

 

Tvrtko Mandic

Marko Dvecko

Mitar Maric