SCADA(Supervisory Control and Data
Aquisation)
Seminarski rad iz S.P.V.P. – a

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)
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.
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.
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.
http://www.scada-rtus.com/html/mp925_rtu.htm
http://www.scadalink.com/sl900mb.htm
http://members.iinet.net.au/~ianw/rtu.html
http://www.micrologic-systems.com/primers/scada1.htm
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.
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.

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).
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.

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.

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.
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.
Proizvodi mogu izvještaj automatski generirati,
ispisati i pohraniti u arhivu.
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 .
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.
Velika funkcionalnost.
Dugoročnost.
Pouzdanost i robusnost.
Jednostavno održavanje i tehnička podrška.
[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",
http://www.automatedsolutions.com/
Tvrtko
Mandic
Marko
Dvecko
Mitar
Maric