Download as pdf or txt
Download as pdf or txt
You are on page 1of 146

P R O G R A M I R A NJ E

INDUSTRIJSKIH

KONTROLERA
- materijal za pripremu ispita (smer: EKIS, VII semestar)

SADRAJ
1

UVOD ................................................................................................................................ 4
1.1 Istorijat PLC-ova ......................................................................................................... 4
1.2 Prednosti i nedostaci PLC-ova .................................................................................... 6
1.2.1 Prednosti .............................................................................................................. 6
1.2.2 Nedostaci.............................................................................................................. 8
1.3 PLC sistem .................................................................................................................. 9
1.3.1 Konstrukcija PLC-a ............................................................................................. 9
1.3.2 CPU i PM ........................................................................................................... 10
1.3.3 PLC ulazni i izlazni moduli ............................................................................... 12
1.4 Ureaji sa kojima se PLC povezuje .......................................................................... 12
1.4.1 Ulazni ON/OFF ureaji...................................................................................... 12
1.4.2 Ulazni analogni ureaji ...................................................................................... 13
1.4.3 Izlazni ON/OFF ureaji ..................................................................................... 15
1.4.4 Izlazni analogni ureaji ...................................................................................... 16
2 CPU jedinica PLC kontrolera .......................................................................................... 17
2.1 Sken ciklus ................................................................................................................ 17
2.2 Osnovne karakteristike CPU jedinice ....................................................................... 18
2.2.1 CPU jedinica kontrolera SLC 500 ..................................................................... 19
2.3 Organizacija memorije .............................................................................................. 19
2.3.1 Programske datoteke .......................................................................................... 20
2.3.2 Datoteke podataka .............................................................................................. 20
3 Diskretni U/I moduli ........................................................................................................ 25
3.1 Diskretni ulazni moduli ............................................................................................. 26
3.1.1 Povezivanje digitalnih senzora .......................................................................... 28
3.2 Diskretni izlazni moduli ............................................................................................ 29
3.3 SLC 500 diskretni U/I moduli ................................................................................... 31
3.4 Sprezanje diskretnih U/I modula sa kontrolerom ...................................................... 32
4 Leder programiranje......................................................................................................... 34
4.1 Rang .......................................................................................................................... 34
4.2 Bit naredbe ................................................................................................................ 35
4.2.1 Bit naredbe za definisanje uslova ...................................................................... 35
4.2.2 Bit naredbe za postavljanje vrednosti izlaza ...................................................... 36
4.2.3 Bit triger naredba ............................................................................................... 36
4.3 Kontakti ..................................................................................................................... 37
4.4 Start/stop kolo ........................................................................................................... 40
4.5 Primeri ....................................................................................................................... 42
4.6 Metod konanih automata ......................................................................................... 57
4.6.1 Realizacija konanog automata u leder jeziku ................................................... 60
4.6.2 ASM dijagrami................................................................................................... 71
5 Naredbe za merenje vremena i prebrojavanje dogaaja tajmeri i brojai ..................... 76
5.1 Naredbe za merenje vremena .................................................................................... 76
5.1.1 Parametri tajmera ............................................................................................... 77
5.1.2 Datoteka podataka o tajmerima (timer data file) ............................................... 77
5.1.3 Naredbe asovnika ............................................................................................. 78
5.2 Naredbe za prebrojavanje dogaaja .......................................................................... 82
5.2.1 Parametri brojaa ............................................................................................... 82
5.2.2 Datoteka podataka o brojau (counter data file) ................................................ 82
5.2.3 Naredbe brojaa ................................................................................................. 83
5.3 Primeri korienja tajmera i brojaa.......................................................................... 84
2

Naredbe za operacije nad podacima .............................................................................. 101


6.1 Naredbe za poreenje .............................................................................................. 101
6.2 Matematike naredbe .............................................................................................. 103
6.2.1 Aritmetike i logike binarne operacije ........................................................... 103
6.2.2 Unarne operacije .............................................................................................. 103
6.2.3 Sloene matematike naredbe .......................................................................... 104
6.2.4 Naredbe za manipulaciju sa numerikim podacima ........................................ 105
6.3 Primeri ..................................................................................................................... 106
7 Analogni PLC moduli .................................................................................................... 109
7.1 Analogni ulazni moduli ........................................................................................... 109
7.2 Analogni izlazni moduli .......................................................................................... 109
7.3 SLC 500 analogni U/I moduli ................................................................................. 109
7.4 Sprezanje analognih modula sa kontrolerom .......................................................... 110
7.5 Primeri ..................................................................................................................... 111
8 Sekvencijalno upravljanje .............................................................................................. 129
8.1 Naredbe za sekvencijalni rad sa datotekama ........................................................... 130
8.1.1 Korienje SQL naredbe .................................................................................. 133
8.1.2 Korienje SQO naredbe.................................................................................. 134
8.1.3 Korienje SQC naredbe .................................................................................. 134
8.2 Primeri ..................................................................................................................... 135
9 PLC moduli specijalne namene ..................................................................................... 139
9.1 Izdvojeni ulazno-izlazni moduli .............................................................................. 139
9.2 Komunikacioni moduli ............................................................................................ 139
9.3 PLC moduli za kontrolu pozicije ............................................................................ 140
9.4 Moduli za vizuelnu kontrolu ................................................................................... 141
9.5 Bar-kod moduli ....................................................................................................... 142
9.6 Moduli za PID upravljanje ...................................................................................... 142
9.7 Radio-frekvencijski moduli ..................................................................................... 145
9.8 Operatorski terminali............................................................................................... 146

1 UVOD
Industrijski kontroler ili PLC od Programmable Logic Controller - programabilni logiki kontroler.
PLC - digitalni elektronski ureaj koji poseduje programabilnu memoriju za smetanje instrukcija
kojima se realizuju specifine funkcije, kao to su logike i aritmetike operacije, redosledno
izvrenje razliitih akcija, odmeravanje vremenskih intervala, prebrojavanje dogaaja itd, a sve u cilju
upravljanja razliitim mainama i procesima putem digitalnih i/ili analognih ulazno/izlaznih jedinica.
PLC - namenski elektronski ureaj, zasnovan na mikroprocesoru, koji je u mogunosti da obavlja
brojne tipove upravljakih funkcija razliitog nivoa sloenosti.
PLC - industrijski raunar iji su hardver i softver posebno prilagoeni radu u industrijskim
uslovima, a koji se lako moe programirati i ugraivati u nove i postojee industrijske sisteme.
PLC - (Programmable) - oznaava mogunost programiranja. Program rada se priprema unapred i
smeta u permanentu memoriju PLC kontrolera. PLC program se razvija u jeziku lestviastih
(ladder) dijagrama, koji je nastao po ugledu na tzv. relejne eme.
PLC - (Logic) - mogunost obavljanja logikih (bulovih) funkcija je jedna od glavnih
funkcionalnih karakteristika PLC kontrolera. PLC generie diskretne (digitalne) izlazne signale u
funkciji (logikoj) diskretnih ulaznih signala - karakteristino za prvobitne tipove PLC kontrolera.
Savremeni PLC-ovi, pored logikih mogu dodatno da obavljaju aritmetike operacije, odmeravaju
vremenske intervale, prebrojavaju dogaaje, a prihvataju i generiu, pored diskretnih, i analogne
signale.
PLC (Controller)- Glavnu primenu PLC-ovi nalaze u industriji (proizvodnoj) gde se koriste za
automatsko upravljanje procesima - prati kljune parametre procesa (posredstvom prikljuenih
senzora i davaa, i shodno memorisanom programu, generie pobudu kojom deluje na proces
(posredstvom aktuatora) - Sl. 1-1.

Sl. 1-1 PLC - upravljaka jedinica procesa.

PLC vs. PC. PLC kontroler se razlikuje od raunarskog sistema opte namene po tome to ne
poseduje spoljnu memoriju (diskove), kao i niz standardne ulazno/izlazne opreme (mi, tastatura, ...).
Pored toga, operativni sistem PLC-a je jednostavniji i prua komparativno manje mogunosti od
raunara opte namene. Zapravo, PLC je koncipiran i projektovan za jedan relativno uzak i jasno
definisan obim poslova vezanih za nadzor i upravljanje pojedinim ureajima, mainama i procesima,
to je rezultovalo u njegovoj izuzetnoj efikasnosti i jednostavnosti. U izvesnom smislu, podruje
primene PLC kontrolera isto je kao i za specijalizovane mikroraunarske kontrolere ili signal
procesore. Kljuna razlika lei u injenici da korienje PLC-a ne zahteva od korisnika gotovo
nikakvo predznanje o arhitekturi mikroraunarskih sistema i programiranju. Drugim reima, korisnik
PLC kontrolera je u najveoj moguoj meri osloboen reavanja razliitih problema vezanih za isto
raunarski aspekt, i moe da se u punoj meri skoncentrie na projektovanje same aplikacije.

1.1

Istorijat PLC-ova

Nastanak PLC-ova se vezuje za kasne 60 i rane 70 godine prolog veka, a nastali su na bazi
konvencionalnih raunar tog vremena. Njihova prvobitna primena bila je u automobilskoj industriji, a
sa ciljem da se skrati vreme zastoja u proizvodnji usled promene proizvodnog procesa. Priprema
pogona za proizvodnju novog modela automobila trajala je mesecima, to je zahtevalo prepovezivanje

UVOD

panela i ormara prepunih provodnika, relea, tajmera, sklopki i drugih, uglavnom elektro-mehanikih
komponenti, pomou kojih su se, u to vreme, realizovale upravljake funkcije. Uvoenje PLC-a,
omoguilo je da se reprogramiranje upravljake logike obavi preko tastature i da se, uz minimalna
dodatna prepovezivanja, vreme zastoja proizvodnje skrati do tek nekoliko dana.
Glavni problem sa raunarima/PLC-ovima iz 70 godina odnosio se upravno na njihovo
reprogramiranje. Programi su bili pisani na niskom nivou (asembler), a time i komplikovani, a njih su
moguli da sastavljaju samo visoko-struni i iskusni programeri. Kasnih 70 godina uinjen je izvestan
napredak u pogledu pojednostavljenja procedure programiranja. 1972 godine pojavlju se
mikroprocesori, koji, zahvaljujui povoljnom odnosu performanse/cena brzo nalaze iroku primenu u
mnogim oblastima elektronike, pa i industrijske automatizacije. Od tog vremena, pa do danas, PLCovi se neprestano usavravaju, kako u pogledu preformasi (moi obrade), softverske podrke,
mogunosti sprezanja sa najrazliitijim ureajima, tako u pogledu naina i procedura programiranja,
kao i jezika koji se koriste za njihovo programiranje. Na taj nain, PLC-ovi su postali razumljiviji
iroj populaciji industrijskih inenjera.
80 godina dolazi do eksponecijalnog rasta trita PLC-ova, a njihova primena se iri van industrijskih
pogona, i to na sisteme kao to su elektro-enrgetska postrojenja, sistemi automatizacije
stambenih/poslovnih objekata, sistemi obezbeenja i nadzora itd. Danas, PLC-ovi se sve vie
primenjuju i u oblastima kao to je medicinska oprema i ureaji, kuni aparati i sl.
Prvi PLC kontroleri su bili jednostavni ureaji za on/off upravljanje i prevashodno su se koristili za
zamenu zastarele relejne tehnike. Meutim, takvi PLC kontroleri nisu mogli da obezbede sloenije
upravljanje, kao to je upravljanje temperaturom, pritiskom, pozicijom. U meuvremenu, proizvoai
PLC kontrolera razvili su i ugradili u PLC kontrolere brojna poboljanja i funkcionalna unapreenja.
Savremeni PLC kontroleri imaju mogunost obavljanje izuzetno sloenih zadataka kako to je
upravljanje preciznim pozicioniranjem i upravljanje sloenim tehnolokim procesima. Takoe, brzina
rada PLC kontrolera je znaajno poveana, kao i lakoa programiranja. Razvijeni su brojni moduli
specijalne namene za primene kao to je radio komunikacija, vizija ili ak prepoznavanje govornih
komandi.
Smatra se da inenjer sa znanjem relejne logike moe ovladati osnovnim PLC funkcijama u roku od
nekoliko sati. Slino vai i za inenjere sa znajem digitalne elektronike. Za ovladavanje sloenijim
funkijama i mogunostima PLC-a dovoljano je nekoliko nedelja ili jedan kurs.
Danas postoji veliki broj razliitih tipova PLC kontrolera koji se razlikuju po veliini, izgledu i moi
obrade, poev od malih jedinica sa malim i ogranienim brojem ulaza i izlaza do velikih, modularnih
sistema koji se mogu konfigurisati za rad sa vie stotina ili ak hiljada ulaza/izlaza. Na Sl. 1-2 je
prikazan izgled PLC kontrolera iz familije Allen Bradley SLC 500 Modular Controllers. PLC se
sastoji iz asije (rack) koja ima odreeni broj slotova u koje se stavljaju pojedini moduli. Prvi dva slota
u asiji zauzimaju ureaj za napajanje i procesorski modul, dok je raspored modula u preostalim
slotovima proizvoljan. U zavisnosti od broja modula, PLC moe imati i vie od jedne asije. Svaka
asija ima sopstveno napajanje, dok se procesorski modul nalazi samo u prvoj asiji. Programabilni
logiki kontroleri iz familije Allen Bradley SLC 500 Modular Controllers mogu imati najvie tri
asije sa najvie 30 slotova. Pri tom, postoje asije sa 4, 7, 10 i 13 slotova.

Sl. 1-2 Izgled komponenti modularnog PLC sistema.

Istorijat PLC-ova
Na Sl. 1-3(a) je prikazan kontrolni panel starijeg datuma koji se koristio u nekom proizvodnom
pogonu za upravljanje procesom proizvodnje. Panel je velikih dimenzija i sadri veliki broj ica,
konektora, relae, to moe stvoriti velike probleme u odravanju i servisiranju. Na Sl. 1-3(b) je
prikazan PLC sistem koji u potpunosti zamenjuje relejni sistem sa Sl. 1-3(a). PLC sistem je manjih
dimenzija i pouzdaniji. U sluaju promene naina rada, relejni sistem se mora prepovezati, dok se PLC
moe veoma brzo reprogramirati.

(a)
(b)
Sl. 1-3 (a) relejni panel; (b) PLC sistem

1.2

Prednosti i nedostaci PLC-ova

1.2.1 Prednosti
Fleksibilnost. U prolosti, svaka elektrino-upravljana maina za proizvodnju zahtevala je svoju
sopstvenu upravljaku jedinicu; u pogonu sa 15 maina, postojalo je 15 razliitih, namenski
projektovanih, upravljakih jedinica. Danas je mogue isti model PLC-a koristiti za upravljanje bilo
kojom od 15 maina. Uz to, verovatno nee biti potrebe za 15 PLC-ova, jer jedan PLC lako moe da
opslui vie nezavisnih maina, tako to e, konkurentno, za svaku prikljuenu mainu izvravati
poseban, namenski program.
Laka promena programa i korekcija greaka. Kod tradicionalih, relejnih panela, svaka promena
programa rada zahtevala je znaajan utroak vremena radi prepovezivanje panela i ureaja. S druge
strane, kod PLC-a, promena programa je laka i brza. Novi program se preko tastature ili na neki drugi
nain uitava u PLC, a prepovezivanje obino nije potrebno, tako da celokupna aktivnost ne traje due
od nekoliko minuta. Takoe, uoene nepravilnosti u radu sistema, koje su posledica greke u
programu mogu se lako i brzo ispraviti.
Relejni vs. PLC sistem. Pre pojave PLC kontrolera, za upravljanje mainama i industrijskim
postrojenjima koriena su mehaniki ureaji, kao to su prekidai i relei povezani icama. Na Sl.
1-4(a) prikazano je jedno veoma jednostavno iano (relejno) kolo. Prikazano kolo realizuje trivijalnu
logiku: kada je prekida zatvoren, sijalica svetli, a kada je prikida otvoren, sijalica ne svetli. Dva para
prekida-sijalica su nezavisni zato to su vezani paralelno i tako ne utiu jedan na drugog. Ukoliko sada
elimo da promenimo logiku rada kola, tako da, na primer, ukljuenje sijalice 2 iskljui sijalicu 1,
moramo, najpre, nacrtati novu emu veze, a zatim, raskinuti postojee veze izmeu prekidaa i sijalica i
po novoj emi iznova povezati prekidae i sijalice. Ako se nakon toga javi potreba da se logika rada
ponovo promeni, tako da se, na primer, sijalica 1 ukljuuje samo ako su oba prekidaa zatvorena, dok
se sijalica 2 ukljuuje bilo kojim od dva prekidaa, kolo se mora jo jednom rastaviti i ponovo
povezati. Industrijske maine i postrojenja su mnogo sloeniji od ovog jednostavnog primera. Pored
obino velikog broja prikljuenih ulaznih i izlaznih ureaja, upravljanje ovakvim sistemima treba da
obezbedi obavljanje sloenih operacija u tano odreenom redosledu, kako i vie razliitih reima rada
(manuelni, korak-po-korak, automatski) i slino. Realizacija jednog takvog upravljakog sistem
zahtevala bi na stotine releja, povezanih kilometrima ice smetenih u glomaznim ormarima. Jasno je
da pod ovakvim uslovima svaka promena upravljake logike predstavlja dugotrajnu, mukotrpnu i
skupu aktivnost.

UVOD

(a)

(b)

Sl. 1-4 Relejni sistem v.s. PLC sistem. (a) relejni sistem; (b) PLC sistem
Pojavom PLC kontrolera postalo je mogue zameniti celokupnu upravljaku logiku, slienosti i vie
stotina relea, jednim kompaktnim elektroniskim ureajem. Na Sl. 1-4(b) je prikazano kako bi se PLC
kontroler iskoristio u prethodno razmatranom primeru. Moe se uoiti nekoliko razlika u odnosu na
prvobitno reenje. Prvo, prekidai nisu direktno povezani sa slijalicama. Umesto toga, prekidai su
povezani na ulazni, a sijalice na izlazni modul PLC kontrolera. Drugo, ulazni i izlazni moduli nisu
direktno povezani, ve posredno, preko logike (procesorske) jedinice koja shodno programu
upravljanja ukljuuje/iskljuuje sijalice u zavisnosti od stanja prekidaa. Na primer, da bi se ralizovala
funkcija sa Sl. 1-4(a), logika jedinica treba biti tako programirana da generie pobudu za sijalicu 1 za
sve vreme dok je prikida 1 zatvoren, i u isto vreme, generie pobudu za sijalicu 2 za sve vreme dok je
prekida 2 zatvoren. Program po kome logika jedinica radi se unosi u memoriju logike jedinice preko
tastature ili na neki drugi nain, gde ostaje zapamen sve dok se ne unese novi program. Oigledno,
promena logike rada sistema, ne zahteva nikakvo ponovno povezivanje i oiavanje.

Veliki broj kontakta. Funkcija relejne upravljake jedinice se realizuje povezivanjem relea
(kontakta) koji imaju ulogu elektro-mehanikih logikih kola ili flip-flopova. Broj relea u jednom
relejnom panelu je ogranien (npr. fizikim dimenzijama panela), to ograniava i sloenost funkcije
koja se moe realizovati. Moe se desiti da u sluaju promene programa rada upavljake jedice, broj
rasploivih relea vie nije dovoljan da bi se realizovala nova funkcija. U takvim sluajevima,
neophodno je ugraditi dodatne relee ili relejne blokove, to moe biti dugotrajna operacija skopana s
neizbenim mehanikim intervencijama. S druge strane, PLC moe realizovati funkcije ija je
sloenost ograniena jedino raspoloivom memorijom - moe se zamisliti da svaki bit interne
memorije PLC-a predstavlja jedan kontakt (rele); za realizaciju jednog tajmera ili brojaa koriste se tri
16-bitne rei memorije itd. Tipina memorija PLC je veliine vie KB.
Niska cena. Uporedo s napretkom tehnologije, implementacione mogunosti PLC-ova neprestano
rastu. Danas je mogue, po ceni ispod 100$, nabaviti PLC sa ogromnim brojem interno-raspoloivih
virtuelnih relea, tajmera, brojaa, sekvencera i drugih funkcija (od kojih neke nemaj pandam u
relejnom svetu).
Mogunost probnog rada. Rad PLC-a se moe ispitati u laboratoriji, pre ugradnje u proizvodni
pogon. Program se pie, testira, analizira i, ako je nophodno, modifikuje sve do trenutka kada se
proceni da su sve zahtevane funkcije korektno realizovane. Tek tada se program prenosi u PLC koji se
instalira (ili je ve instaliran) u proizvodni pogon. Na ovaj nain, postie se velika uteda skupog
fabrikog vremena (nema zastoja u proizvodnji). Nasuprot tome, testiranje konvencionalnih relejnih
sistema se moe obaviti samo u fabrikoj hali, to moe biti veoma vremenski neracionalno.
Mogunost vizuelnog praenja rada. Rad PLC-a se moe direktno pratiti na ekranu monitora - na
pogodan nain se u grafikom obliku prikazuju stanja ulaza i izlaza PLC-a uz osvetljeno
prikazivanje logikih putanja koje su trenutno aktivne i ispisivanje obavetenja o evetualnom
neispravnom radu sistema ili o nastanku nekih izuzetnih situacija. Na taj nain, svaka kritina
situacija se moe uoiti istog trenutka kada se i desila, to olakava pronalaene nastalih kvarova.
Naime, kod naprednih PLC sistema, postoji mogunost programiranja poruka za svako mogue
neispravno ponaanje, koje e se prikazati onog trenutka kada se takva situacija detektuje od strane
PLC-a, (kao npr. MOTOR #7 je preoptereen).
Brzina rada. U poreenju sa releima koji su, s obzirom na svoju elektro-mehaniku prirodu, spori,
brzina izvrenja PLC programa je veoma velika. Brzina rada PLC-a odreena je trajanjem tzv. sken

Prednosti i nedostaci PLC-ova


ciklusa, to je reda miliskundi (vie o sken ciklusu, kasnije). Drugim reima, vreme koje protekne od
trenutka kada se promeni stanje ulaza PLC-a do trenutka kada PLC-a reaguje postavljajui svoje
izlaze tipino nije due od nekoliko do maksimalno nekoliko desetina milisekundi.
Leder programiranje. Za programiranje PLC kontrolera koristi se jezik lestviastih logikih
dijagrama (ili leder dijagrama - ladder diagram), koji je ve dugi niz godina u upotrebi u industriji pri
projektovanju logikih i sekvencijalnih relejnih upravljakih jedinica. Ovaj jezik koristi grafiku
notaciju koja je po vizuelnom izgledu i logici rada slina dijagramima relejnih ema (kao to je ema
sa Sl. 1-4(a)) i zbog toga je lako razumljiv industrijskim inenjerima. Drugim reima, industrijski
inenjeri ne moraju biti eksperti za programiranje da bi u svojim sistemima koristili PLC-ove.
Pouzdanost i lakoa odravanja. Poluprovodnike komponente, od kojih je PLC sainjen, su,
generalno, pouzdanije od mehanikih sistema ili relea i tajmera. Uz to, za realizaciju PLC-ovi se
koriste komponente sa veoma visokim faktorom pouzdanosti. Iz tog razloga, trokovi odravanja
upravljakih sistema zasnovanih na PLC-u su nii, a vreme zastoja krae.
Jednostavnost naruivanja komponenti upravljakog sistema. PLC je jedan uraaj. Kada narueni
PLC stigne u industrijski pogon, svi brojai, relei, i druge virtuelne komponente sadrane u PLC-u
su takoe stigle. Situacija je potpuno drugaija kada se projektuje relejni panel. Na primer, potrebno
je 20 rezliitih tipova relea i tajmera koji se nabavljaju od 12 razliitih dobavljaa, sa razliitim
rokovima isporuke i potencijalnim problemima sa dostupnou traenih komponenti. Ako projektant
propusti da narui samo jednu komponentu, celokupan projekat se odlae za vreme isporuke te
komponente. Kod PLC-ova uvek postoji jedan rele vie - pod uslovom da je naruen PLC sa
izvesnom rezervom u moi izraunavanja.
Dokumentacija. Leder dijagrami, kao grafiki prikazi, su u toj meri samo-deskriptivni da obino nije
neophodna neka dodatna dokumentacija koja bi upotpunjavala opis rada PLC-a i naina na koji su
realizovane njegove funkcije. Leder dijagram se uvek moe odtampati, a poto se isti dijagram
koristi i kao program, ne postoji opasnost da dokumentacija bude neaurna, to je esto sluaj sa
dijagramima i emama relejnih panela (kada inenjer nakon uinjene intervencije ne unese izmenu u
relejnu emu).
Bezbednost. Program PLC-a se ne moe promeniti pre nego to je PLC otkljuan (svaki PLC ima
prekida s kljuem - bez kljua nije mogue menjati program).
Mogunost reprogramiranja. Osobina brzog reprogramiranja PLC-a otvara mogunost za postizanje
neke vrste adaptivnog proizvodnog procesa, gde se program rada menja shodno karakteristikama
svakog pojedinanog prizvoda ili varijacijama u procesu proizvodnje.

1.2.2 Nedostaci
Nova tehnologija. Pokazalo se da je teko promeniti nain razmiljanja industrijskih inenjera sa
relejne logike na PLC koncept. Meutim, zahvaljujui sve iroj primeni, ne samo u domovima i
kancelarijama ve sve vie i u fabrikim halama, raunari postaju i sredstvo za postizanje vee
prodiktivnosti proizvodnje.
Aplikacije sa fiksim programom. Pojedine aplikacije zasnovane su na samo jednoj funkciji koja se
veoma retko ili nikada ne menja. U ovakvim sluajevima, zamena postojee opreme PLC-om ne
donosi veliki dobitak, jer se njihova glavna osobenost mogunost reprogramiranja praktino ne
koristi. PLC je najbolje reenje kada su neophodne periodine promene u nainu rada.
Uslovi rada. Ekstremnim uslovi rada, kao to su: visoka temperatura, vlanost, vibracije, elektrine
smetnje, a koji su karakteristini za pojedine proizvodne procese, mogu uticati na rad PLC-a i
ograniiti njegovu primenu i/ili ivotni vek.
Bezbednost u radu. Kod relejnih sistema uvek postoji tzv. Stop prekida, kojim se u bilo kom
momentu moe trenutno prekinuti rad sistema (iskljuenjem napajanja). Pri tome, relejni sistem se
automatski ne resetuje kada se napajanje ukljui, ve zadrava stanje u kome je bio kada je napajanje
iskljueno. Ovakvo ponaanje se svakako moe programski ostvariti i kod PLC-a, tako to e se Stop
prekida povezati na jedan od ulaza PLC-a. Meutim, ovakvo reenje nije bezbedno (ako PLC otkae,

UVOD

prekida Stop gubi funkciju!) Ovaj nedostatak se moe prevazii ugradnjom bezbedonosnih relea na
izlazima PLC-a (vie detalja kasnije).

1.3

PLC sistem

Na Sl. 1-5 su prikazane etiri osnovne jedinice svakog PLC sistema kao i nain na koji su meusobno
povezane:
1. Centralna procesorksa jedinica (CPU) ili logika jedinica. Predstavlja mozak sistema, a
sastoji se iz sledee tri podjedinice:
a. Mikroprocesor.
b. Memorija za uvanje sistemskog softvera i korisnikog programa
c. Izvor napajanja - obezbeuje napajanje mikroprocesora, memorije, ulaznog i
izlaznog modula.
2. Programator/Monitor (PM). PM je ureaj koji se koristi za komunikaciju sa PLC-om.
Primeri PM-ova su: runi terminali, industrijski terminali i personalni raunari. Sa jedne
strane, prema operateru, ovi ureaji poseduju ekran i tastaturu, dok sa druge, prema PLC-u,
odgovarajui komunikacioni interfejs za prenos programa, podataka, statusnih informacija
ka/iz PLC-a.
3. U/I moduli. Ulazni modul poseduje terminale (prikljune take) na koje se dovode elektrini
signali koje generiu senzori ili prevarai. Izlazni modul poseduje terminale preko koji PLC
alje izlazne signale kojima pobuuje relee, solenoide, motore, displeje i druge izlazne
ureaje ili aktuatore.
4. Rekovi i asije. Delovi PLC sistema CPU, PM i U/I moduli smetaju se u metalne ormare
tzv. rekove.

Sl. 1-5 PLC sistem.

1.3.1 Konstrukcija PLC-a


Razlikuju se dva osnovna naina konstrukcije PLC kontrolera:
(a) kompaktni PLC kontroleri i
(b) modularni PLC sistemi.
Kompaktni PLC kontroleri su nezavisni, zatvoreni ureaji sa fiksnim brojem ulaza/izlaza, bez
mogunosti proirenja (Sl. 1-6). U jednom kuitu, obino manjih dimenzija, smeetni su: izvor
napajanj, procesorska jedinica i ulazni i izlazni modul. Kompaktni PLC kontroleri predstavalju
ekonomino reenje, predvieno za upravljanje sistemima i procesima male sloenosti. Tipino,
poseduju do 16 ulaza i 16 izlaza i memoriju od nekoliko KB.

PLC sistem

Sl. 1-6 Kompaktni PLC. (Uoavaju se prikljuci za ulaze, izlaze i napajanje, konektor za vezu sa
programatorom i slot za memorijski modul)

Modularni PLC sistemi se sastoje od veeg broja modula koji su smeteni unutar mehanikog okvira,
tj. asije, koji se zove rek (rack) (Sl. 1-7). Rek poseduje vei broj slotova za smetanje modula. Svaki
slot ini par voica du gornje i donje stranice reka koje slue za mehaniko uvrenje modula kao i
konektor na zadnjoj ploi reka za prikljuuje modula na zajedniku magistralu izvedenu na tampanoj
ploi zadnje stranice reka. Po pravilu, prvi slot je namenjen modulu izvora napajanja, koji se
prikljuuje na mreni napon (220Vac) i generie jednosmerne napone potrebne za rad ostatka sistema.
Sledei, drugi slot se koristi za modul logike jedinice, tj. procesorski modul koji izvrava korisniki
program i upravlja radom ostalih modula. Preostali slotovi se koriste za module specijalne namene,
kao to su U/I moduli, memorijski moduli i sl. Ovakav nain kontrukcije omoguava lako proirenje
sistema Na primer, ako je potrebno poveati broj ulaza/izlaza dovoljno je ugraditi dodatni U/I modul.
Ili, ako zbog poveanih zahteva obrade, postojei procesorski modul vie nije odgovarajui, on se
moe zameniti novim, monijim, a da pri tome ostali modili ne moraju biti zamenjeni. Broj slotova u
jednom PLC reku je, tipino, od 4 do 16. Mogunost proirenja PLC sistema nije ograniena samo na
jedan rek. Uz pomo posebnih modula za proirenje mogue je povezati dva ili vie reka, to
omoguuje da se jednim procesorskim modulom upravlja velikim brojem dodatnih modula.

Sl. 1-7 Modularni PLC.

1.3.2 CPU i PM
CPU je srce PLC sistema. Na Sl. 1-8 je prikazana tipina CPU jedinica u spoju sa
programatorom/monitorom (PM) oblika runog terminala. CPU jedinca moe biti vea ili manja od
one prikazane na Sl. 1-8, zavisno od veliine i sloenosti procesa kojim upravlja.
Jedan od glavnih parametara o kome se mora voditi rauna prilikom izbora CPU jedinice jeste
veliina interne memorije. Za upravljanje jednostavnim procesom, dovoljan je mali PLC sa
ogranienom memorijom; za upravljanje veim sistemom, neophodan je vei PLC, koji podrava
naprednije funkcije i poseduje veu koliinu memorije. Kod nekih PLC-ova postoji mogunost da se
naknadno ugradi dodatna memorija; kod drugih ta mogunost ne postoji.

10

UVOD

Sl. 1-8 CPU i PM.

Na samoj CPU jedinici obino se mogu nai razliiti konektori za kablove koji slue za povezivanje
sa drugim PLC-ovima.
Mnoge CPU jedinice poseduju ugraenu tzv. backup bateriju, koja omoguavaju da se u sluaju
nestanka eksternog napajanja sauva uitani korisniki leder program. Za razliku od operativnog
sistem PLC-a koji uva se u permanentnoj memoriji (ROM), korisniki program se uva u RAM-u,
koji, kao to znamo, gubi upisani sadraj onog momenta kada se napajanje iskljui. Kada PLC
detektuje prestanak eksternog napajanja, backup baterija se automatski ukljuuje da bi se obezbedio
napon napajanja za RAM i tako sauvao njegov trenutni sadraj do dolaska eksternog napajanja.
CPU jedinica se postavlja u odgovarajui reim rada pomou jednog posebnog vie-poloajnog
prekida. Da bi se spreio neovlaen pristup PLC-u, za okretanje ovog prekidaa neophodan je klju.
Tipino, pozicije prekidaa su:
OFF - sistem nije operativan niti se moe programirati
RUN - sistem je operativan (radi), ali se ne moe programirati.
DISABLE - Iskljuuje sve izlaze, tj. postavlja ih u neaktivno stanje.
MONITOR - ukljuuje ekran na kome e se prikazivati trenutne operativne informacije
RUN/PROGRAM - Sistem je operativan, a modifikacije programa su dozvoljene. Ovaj nain
rada se mora oprezno koristiti, jer se svaka modifikacija programa trenutno manifestuje u radu
sistema.
PROGRAM - sistem nije operativan, ali se moe programirati ili reprogramirati.
Na Sl. 1-9(a) je prikazan tipian programator/monitor (PM) sa CRT ekranom. Tipian runi terminal
prikazan je na Sl. 1-9(b). PM sa Sl. 1-9(a) moe pruiti potpuniji uvid u rad i trenutni status PLC-a, ali
zato runi terminal prenosiv.

(a)

(b)

Sl. 1-9 (a) PM sa CRT ekranom; (b) PM oblika runog terminala.

PM se povezuje sa CPU-om pomou odgovarajueg kabla. Nakon to je CPU programiran, PM nije


vie neophodan i veza sa CPU-om se moe raskinuti, isti PM se moe koristiti za programiranje svih
PLC-ova u jednom proizvodnom pogonu.

11

PLC sistem

1.3.3 PLC ulazni i izlazni moduli


PLC pribavlja informacije iz okruenja posredstvom ulaznih, a predaje informacije okruenju putem
izlaznih modula. Pristupne take (terminali) ulaznog modula primaju signale senzora i pretvaraa. Na
pristupnim takama izlaznog modula generie se napon za pobudu aktuatora (motori, sklopke, ...) i
ureaja za indikaciju (svetiljke, displeji, ...)
UI modul moe imati 4, 8, 12 ili 16 terminala. Modul moe biti ulazni, izlazni ili kombinovani (U/I)
sa podjednakim ili razliitim brojem ulaznih i izlaznih terminala (npr. 12 ulaza i 8 izlaza).
Kod manjih sistema, CPU, ulazni i izlazni moduli se smetaju u isti rek. Kod veih PLC sistema,
ulazni i izlazni moduli su smeteni u posebne rekove koji su sa CPU-om povezuju pomou
odgovarajueg vieinog kabla.
Ako je u jednom reku smeteno vie modula, tada je neophodno podesiti (konfigurisati) adresu (redni
broj) svakog od njih. Nain kako se postavlja adresa modula zavisi od tipa PLC sistema. Kod nekih,
to se postie pomou niza mikroprekidaa na samom modulu. Kod drugih, adrese se postavljaju
programski, pomou PM-a. Kod manjih PLC sistema, adresa modula se ne postavlja, ve je unapred
odreena pozicijom modula u reku.
Najvanija karakteristika U/I modula je opseg napona ili struje koji modul prihvata, odnosno generie.
Naponski i strujni opseg modula mora biti usaglaen sa elektrinim karakteristikama sistema ili
ureaja s kojim se PLC modul povezuje. Na primer, ulazni modul deklarisan za 24V DC, nee raditi
ako ureaj s kojim je povezan daje 120V AC - ta vie, bie oteen. Ili, aktuator koji se pobuuje
strujom od 4.5A, ne moe se povezati na izlazni modul koji moe da d samo 2A. Da bi se zadovoljili
najrazliitiji zahtevi u pogledu naponskih i strujnih opsega, proizvoai PLC sistema nude palete
ulaznih i izlaznih modula deklarisanih za razliite naponske/strujne opsege.
Pored diskretnih ulaznih i izlaznih modula (prihvataju i generiu diskretne - digitalne, tj. ON/OFF
signala), u upotrebi su i i analogni ulazni i izlazni moduli koji prihvataju i generiu analogne signale.
Takvi moduli poseduju ugraene A/D, odnosno D/A konvertore.
Pored diskretnih i analognih ulaznih i izlaznih PLC modula, proizvoai PLC sistema, takoe, nude i
najrazliitije PLC module specijalne namene, kao to su: modul za PID kontrolu, radio-frekvencijski
modul, modul za pozicioniranje, komunikacioni moduli, moduli za vizuelnu kontrolu i td..
U nekim sluajevima, proces koji se upravlja PLC-om moe se nalaziti na velikom rastojanju od CPU
jedinice. Usled prenosa du vodova velike duine, normalni ulazni i izlazni signali bili bi oslabljeni do
nivoa da postaju neprepoznatljivi za ulazni PLC modul, odnosno za ureaj koji se pobuuje izlaznim
PLC modulom. U takvim situacijama, postupa se tako to se rek sa ulaznim/izlaznim modulima
postavlja u blizini samog procesa, a sa CPU-om se povezuje komunikacionim interfejsima za prenos
podataka, pri emu se kao prenosni medijum koriste iani ili fiber optiki kablovi.

1.4

Ureaji sa kojima se PLC povezuje

1.4.1 Ulazni ON/OFF ureaji


Na Sl. 1-10 su prikazani neki od brojnih tipova ulaznih diskretnih (ON/OFF) ureaja (prekidaa) koji
se mogu povezati na ulazni PLC modul.

Sl. 1-10 Razliiti tipovi prekidaa i tastera.

12

UVOD

Na Sl. 1-11(a) su prikazane razliite konfiguracije prekidaa u obliku ematskih simbola. Varijante A
G prikazuju preklopnike, dok su varijante H K tasteri. Preklopnici, imaju dva ploaja (kao
prekida za svetlo u sobi), a okretanjem ili pritiskom se prebacuju iz jednog u drugi poloaj. Tasteri
(kao taster za zvono) imaju trenutno dejstvo koje traje samo dok su pritisnuti. Kada se spreu sa PLCom, jedan kraj prekidaa je povezan na masu, a drugi na terminal (taku) ulaznog modula. Na primer,
za preklopnike tip A i B, kraj M treba povezati na masu, a kraj N na terminal ulaznog modula. Jedan
poloaj prekidaa se uvek smatra normalnim (podrazumevanim). U normalnom poloaju prekida
moe biti otvoren (kontakti prekidaa nisu spojeni), na ta ukazuje oznaka NO (Normally Open normalno otvoren) ili zatvoren (kontakti prekidaa su spojeni), na ta ukazuje oznaka NC (Normally
Closed - normalno zatvoren).

(a)
(b)
Sl. 1-11 Prekidai i tasteri: (a) Elektrini prekidai i tasteri; (b) granini prekidai.

Druga vrsta ulaznih ON/OFF ureaja su granini prekidai (Sl. 1-11(b)). Granini prekidai nisu
predvieni da se runo ukljuuju/iskljuuju, ve poseduju specifine mehanike aktuatore koji se u
fizikom kontaktu sa nekim predmetom ili objektom pomeraju i tako zatvaraju/otvaraju kontatke
prekidaa.
U grupu ulaznih ON/OFF ureaja spadaju i brojni tipovi diskretnih senzora, koje moemo zamisliti
kao prekidae koji se zatvaraju/otvaraju pod dejstvom toplote, svetlosti, magnetskog polja, vlanosti,
odnosno kada temperatura, intenzitet svetlosti, jaina magnetnog polja ili nivo vlanosti dostigne
unapred podeenu graninu vrednost.

1.4.2 Ulazni analogni ureaji


Za razliku od ulaznih ON/OFF ureaja, koji mogu biti samo ukljueni (ON) ili iskljueni (OFF),
ulazni analogni ureaji generiu promenljive elektrine signale promenljivog napona ili struje, koji se
vode na odgovarajue (analogne) PLC ulazne module.
Na Sl. 1-12(a) je prikazan ugljeni, a na Sl. 1-12(a) iani potenciometar. U oba sluaja, otpornosti
izmeu srednjeg i krajnjih izvoda se menja okretanjem klizaa, a shodno tome i izlazni analogni,
jednosmerni (DC) napon.

13

Ureaji sa kojima se PLC povezuje

(a)
(b)
Sl. 1-12 Potenciomatar: (a) ugljeni, (b) iani.

Na Sl. 1-13 je prikazan linearni varijabilni diferencijalni transformator (LVDT). Naizmenini (AC)
izlazni napon LVDT-a varira, kako se jezgro pomera (uvlai/izvlai). Zavisnost izmeu izlaznog
napona i pozicije jezgra je linearna, tako da se LVDT moe koristiti za indikaciju pozicije nekog
mehanikog sklopa koji je fiziki spojen sa jezgrom.

Sl. 1-13 Linearni varijabilni diferencijalni transformator - LVDT

Za indikaciju (merenje) temperature, esto se koriste termoparovi (Sl. 1-14). Termopar je spoj dva
metala. Izmeu spojeva se generie napon koji zavisi od razlike temperatura spojeva. Ovaj napon je
obino veoma mali (reda nekoliko desetina uV/0C), a uz to zavisnost napona od temperature nije
linearna.

Sl. 1-14 Princip termopara.

Osim navedenih, u industriji su u upotrebi i brojni drugi analogni ulazni ureaji, kao to su
temperaturski, optiki, magnetski, elektro-mehaniki pretvarai, senzori protoka, pritiska nivoa
tenosti i sl.
Da bi se omoguila sprega sa najrazliitijim tipovima anlognih ulaznih ureaja, proizvoai PLC-ova
nude serije tipiziranih ulaznih PLC modula, za jednosmeran/naizmenini ulazni napon ili struju, za
razliite opsege napona/struje, za spregu sa specifinim anlognim ulaznim ureajima (kao to su
termoparovi) i sl.

14

UVOD

1.4.3 Izlazni ON/OFF ureaji


Izlazni PLC moduli se mogu povezati sa mnotvom najrazliitih tipova izlaznih ON/OFF ureaja (ili
ON/OFF aktuatora). Jedan od najvanijih takvih ureaja je solenoid. Solenoid je elektromehaniki
aktuator, ijim radom se upravlja pomou elektromagnetne sile proizvedene u namotaju. U principu,
rad solenoida zasniva se na struji koja postoji u namotaju i koja proizvodi magnetno polje. U
zavisnosti od smera struje, menja se i smer sile magnetnog polja koja privlai gvozdeno jezgro ka
centru namotaja ili ga odbija od centra. Postoje dva tipa solenoidnih aktuatora:

Jednosmerni solenoid kod koga postoji samo jedan izvod za napajanje, tako da struja ima uvek
isti smer, to znai da se i jezgro pod dejstvom magnetne sile moe pomerati samo u jednom
smeru. U odsustvu napajanja solenoida, mehanika opruga vraa jezgro u poetni poloaj.

Dvosmerni solenoid kod koga postoje dva izvoda za napajanje, tako da smer struje, odnosno
odgovarajue magnetne sile zavisi od toga na koji izvod je prikljueno napajanje. U skladu sa
time i jezgro se kree u jednom od dva mogua smera. Ukoliko se napajanje dovede na oba
izvoda, jezgro se nee pomerati, Isto tako, ukoliko ni na jednom kraju nema napajanja, jezgro e
ostati u zateenom poloaju, uz uslov da ne postoji neka mehanika sila (npr. sila zemljine tee,
ako je solenoid u vertikalnom poloaju) koja bi izazvala njegovo kretanje. Drugim reima, u
odsustvu napajanja, solenoid se nalazi u slobodnom stanju.

ematski dijagram oba tipa solenoida prikazan je na Sl. 1-15. Potrebno je da se istakne da solenoid po
pravilu ima i dva granina prekidaa koji omoguavaju da se detektuje kada jezgro doe u krajnji
desni ili krajnji levi poloaj. Solenoidi koriste kao mehaniki aktuatori za uprvaljanje drugim
(mehanikih) ureaja, kao to je npr. ventil.

(a)
(b)
Sl. 1-15 Solenoid: (a) dvosmerni; (b) jednosmerni.

Na Sl. 1-16 je prikazano elektro-mehaniko rele, jo jedan uobiajeni tip ON/OFF ureaja kojim se
moe upravljati putem izlaznog PLC modula. Izlazni PLC modul se povezuje sa kalemom relea.
Struja koju daje PLC modul, a koja protie kroz kalem stvara magnetno polje koje prilai kotvu i
zatvara (ili otvara) kontakt, koji dalje upravlja nekim drugim uraajem. Prednost korienja relea
umesto direktnog korienja kontakta izlaznog modula su: (1) rele obino poseduje ne samo jedan ve
vie kontakta od kojih su neki NO, a drugi NC tipa; (2) kontakti relea su elektrino izolovani od PLC
modula i (3) kroz kontakte relea moe proticati vea struja, a kontakt moe prekidati vie napone nego
kontakt izlaznog modula. Relei za veoma velike struje se nazivaju kontaktorima.

Sl. 1-16 Standardno rele.

15

Ureaji sa kojima se PLC povezuje

Starter motora je varijanta relea/kontaktora. Kontakti startera motora su konstruisani na nain da


mogu da izdre velike povratne struje koje se javljaju kada se sa induktivnih namotaji motora ukloni
napon (tj. kada se motor iskljui). Obino, starter motora poseduje ugraena elektrina kola za
detekciju preoptereenja motora koja iskljuuju napajanje motora kada struja prekorai dozvoljenu
maksimalnu vrednost. Takoe, postoje dualni starteri motora koji se koriste za napred-nazad
upravljanje motorom putem kojih je mogue ne samo ukljuiti/iskljuiti motor, ve i promeniti smer
okretanja motora (promenom smera struje kroz namotaje motora). Osim startera za jednosmerne i
naizmenine motore, postoje i starteri za sinhrone (trofazne) motore.

1.4.4 Izlazni analogni ureaji


Osim izlaznih ON/OFF ureaja kod kojih se upravljanje svodi na prosto ukljuivanje/iskljuivanje, u
upotrebi su i analogni izlazni ureaji (ili analogni aktuatori) kojim se upravlja na kontinualan nain,
pomou analognog (promenljivog) napona ili struja. Primer takvog aktuatora je sevo motor ija se
brzina rotiranja regulie kontinualno, pomou posebne vrste analognog izlaznog PLC modula. Jo
jedan primer analognog aktuatora je hidraulini servo ventil. Za razliku od ON/OFF ventila koji se
moe samo da se otvori ili zatvori, pozicija (tj. otvorenost) servo ventila se moe fino, kontinualno
regulistati. Po pravilu, upravljanje analognim izlaznim ureajem podrazumeva postojanje povratne
informacije o trenutnoj poziciji aktuatora. Za indikaciju pozicije koriste se ureaji koji se nazivaju
enkoderima.

16

CPU jedinica PLC kontrolera

2 CPU jedinica PLC kontrolera


Bez obzira na veliinu PLC-a, centralna procesorska jedinica, tj. CPU, ili samo procesorska jedinica,
uvek objedinjuje mikroprocesor i memoriju. Kod veih PLC-ova, CPU sadri samo mikroprocesor i
memoriju, dok kod manjih, dodatno, sadri U/I interfejs i izvor za napajanje. Takoe, mogue je da
CPU sadri mikroprocesor, memoriju i izvor napajanja, a da je U/I interfejs realizovan eksternim U/I
modulima. Jedna takva organizacija, prikazana je blok dijagramom sa Sl. 2-1. Fiksna memorija sadri
program (ili programe) koje je u postavio proizvoa. Ovo su programi operativnog sistema PLC-a,
koji imaju slinu namenu, mada sa neuporedivo manjim mogunostima, kao npr. DOS operativni
sistem kod starijih PC raunara, Windows kod novijih ili UNIX kod radnih stanica. Programi
operativnog sistema su smeteni u posebnom memorijskom integrisanom kolu tipa ROM. Kao to
znamo, sadraj ROM-a se ne moe brisati niti menjati, a ostaje nepromenjen i nakon iskljuenja
napajanja. Promenljiva memorija, realizovana pomou RAM memorijskih ipova, podeljena je na
vei broj sekcija koje sadre korisniki program, programske promenljive, trenutne stusne informacije
kontrolera itd. (o organizaciji memorije PLC kontrolera, neto kasnije u ovom poglavlju).

Sl. 2-1 CPU.

2.1

Sken ciklus

Operativni sistem PLC kontrolera je projektovan tano za odreenu vrstu primene. Naime,
predpostavlja se da e u svojoj osnovnoj formi, PLC biti korien za realizaciju izvesnih logikih
funkcija koje preslikavaju signale sa senzora u signale koji se prenose na aktuatore. Otuda se od PLCa oekuje da periodino oitava (unosi) signale sa senzora, izvrava odreen broj aritmetiko-logikih
operacija (u skladu sa zadatom funkcijom) iji rezultati se prenose na izvrne organe ili neke druge
indikatorske ureaje. Pored toga, sa istom ili nekom drugom uestanou, PLC treba da odrava
komunikaciju (razmenjuje podatke) sa nekim drugim raunarskim sistemima u mrei. Polazei od
ovog zahteva, operativni sistem PLC kontrolera projektovan je tako da, u toku rada sistema,
automatski obezbedi ciklino ponavljanje navedenih aktivnosti (Sken ciklus) kao to je to ilustrovano
na Sl. 2-2.

17

Sken ciklus

Sl. 2-2 Sken ciklus PLC kontrolera.

Sken ciklus zapoinje sa ulaznim skenom u okviru koga PLC oitava sadraj ulaznih linija (registara
ulaznih modula). Oitani podaci se prenose u odreeno podruje memorije slika ulaza. Zatim se
aktivira programski sken u okviru koga procesor izvrava programske naredbe kojima su definisane
odgovarajue aritmetiko-logike funkcije. Podaci (operandi) koji se koriste u programskim
naredbama uzimaju se iz memorije i to iz podruja oznaenog kao slika ulaza (ako su operandi ulazni
podaci) ili iz podruja gde se smetaju interne promenljive. Rezultati obrade se smetaju u posebno
podruje memorije slika izlaza. Vano je istai da se pri izvravanju programskih naredbi podaci ne
uzimaju direktno sa ulaznih modula, niti se rezultati direktno postavljaju na izlazne module, ve
program razmenjuje podatke isljuivo sa memorijom (Sl. 2-3). Po zavretku programskog skena,
operativni sistem PLC kontrolera aktivira izlazni sken u okviru koga se podaci iz slike izlaza prenose
na izlazne linije (registre izlaznih modula). Na ovaj nain stvara se utisak da je PLC sve operacije
definisane programom obavio u isto vreme. etvrti deo sken ciklusa komunikacija - namenjen je
realizaciji razmene podataka sa ureajima koji su povezani sa PLC-om. Nakon toga, operativni sistem
dovodi PLC u fazu odravanja u okviru koje se auriraju interni tajmeri i registri, obavlja upravljanje
memorijom kao i niz drugih poslova vezanih za odravanje sistema, o kojima korisnik i ne mora da
bude informisan. U zavisnosti od tipa ugraenog mikroprocesora ulazni i izlazni sken ciklus
izvravaju se u vremenu reda milisekundi (od 0.25ms do 2,56ms). Trajanje programskog skena,
svakako zavisi od veliine programa.

Sl. 2-3 Razmena podataka za vreme sken ciklusa.

2.2

Osnovne karakteristike CPU jedinice

Kao to je ve reeno, CPU modul sadri mikroprocesor i memoriju. Mikroporcesor obuhvata


aritmetiko-logiku jedinicu (ALU), registre i upravljaku jedinicu. U funkcionalnom smislu
mikroprocesor PLC-a se bitno ne razlikuje od mikroprocesora bilo kog mikroraunara opte namene.
Meutim, razlika postoji u programskom jeziku; dok se za programiranje mikroraunara koristi
asemblerski jezik ili neki vii programski jezik (npr. C), za programiranje PLC-ova se koristi, kao to
je ranije reeno, jezik leder dijagrama. U osnovi, osnovna razlika se ogleda u skupu naredbi koji je
odabran tako da se zadovolje osnovni zahtevi u pogledu korienja PLC-a.

18

CPU jedinica PLC kontrolera

Osnovne karakteristike procesorskog modula izraavaju se preko sledeih elemenata:


Memorija(RAM) karakterie se svojom veliinom, mogunou proirenja i konfigurisanja
za smetanja programa ili podataka.
U/I take karakterie se najveim brojem lokalnih U/I adresa koje podrava procesor u toku
ulaznog i izlaznog skena, kao i mogunou proirenja preko udaljenih U/I. (Pod udaljenim
U/I podrazumeva se posebna asija koja sadri U/I module koji razmenjuju podatke sa PLCom).
Komunikacione opcije - odnose se na raznovrsnost ureaja za spregu (komunikacionog
interfejsa) koji podravaju razliite topologije mrea i razliite komunikacione protokole.
Opcije trajnog pamenja - odnose se na raspoloivost razliitih tipova memorijskih EPROM
modula koji obezbeuju trajno pamenje podataka.
Performasa - specificira se preko vremena programskog skeniranja potrebnog za izvrenje
1Kbajt programa, preko vremena potrebnog za ulazni i izlazni sken, kao i vremena
izvravanja jedne bit naredbe.
Programiranje - specificira se u odnosu na broj podranih razliitih naredbi leder jezika.

2.2.1 CPU jedinica kontrolera SLC 500


U tabeli T. 1 dat je pregled osnovnih karakteristika procesora SLC 5. Oznaka UI odnosi se na
naredbe korisnikog programa, dok je sa DW oznaena podatak duine jedne rei.
T. 1 Osnovne karakteristike procesorskog modula SLC 5.
Specifikacija
SLC 5/01
SLC 5/02
Memorija

1K UI ili 4K DW
4K UI ili 16K DW

Lokalni U/I
Udaljeni U/I

256 digitalnih

Trajno
pamenje
Tipino vreme
programskog
skeniranja
Izvravanje
bit naredbe
Broj mainskih
naredbi

EEPROM ili
UVPROM

2.3

nema

SLC 5/03

SLC 5/04
12K UI i 4K DW
4K UI ili 16K DW
12K UI i 4K DW
28K UI i 4K DW
60K UI i 4K DW
480 digitalnih
960 digitalnih
960 digitalnih
Kapacitet zavisi od vrste napajanja i veliine programske memorije
- najvie moe biti 4096 ulaza i 4096 izlaza EEPROM ili
Fle EPROM
Fle EPROM
UVPROM

8 ms/K

4.8 ms/K

1 ms/K

0.9 ms/K

4 s

2.4 s

.44 s

.37 s

52

71

99

99

Organizacija memorije

Operativni sistem PLC kontrolera, koji realizuje sken cikluse, upravlja i zauzeem RAM memorije,
koja je organizovana na poseban nain. U principu, RAM memorija se deli na program files
(programske datoteke) i data files (datoteke podataka) Sl. 2-4. Skup programa i datoteka podataka
koje su formirane za jednu aplikaciju ini processor file (procesorsku datoteku). Ona sadri sve
naredbe, podatke i specifikaciju modula koji su relevantni za datu aplikaciju, odnosno korisniki
program. Procesorska datoteka ini jednu celinu koja se moe prenositi sa jednog procesorskog
modula na drugi. To zapravo znai da se jedna aplikacija moe razviti na jednom sistemu i zatim u
celini preneti i koristiti na drugom sistemu.

19

Organizacija memorije

Sl. 2-4 Organizacija memorije PLC kontrolera.

2.3.1 Programske datoteke


Programske datoteke sadre informacije o samom kontroleru, glavni korisniki program i
potprograme. Svaka aplikacija (procesorska datoteka) mora da ima sledee tri programske
datoteke:
System Program sistemski program (file 0) - sadri razliite informacije o samom
sistemu kao to su tip procesora, konfiguracija U/I modula, ime procesorske datoteke,
lozinku i niz drugih relevantnih podataka.
Reserved datoteka rezervisna za potrebe operativnog sistema (file 1)
Main Ladder Program glavni leder program (file 2) program koji formira sam
korisnik i u okviru koga se definie niz operacija koje PLC treba da izvede.
Subroutine Ladder Program - potprogrami (file 3 - 255) korisniki potprogrami koji
se aktiviraju u skladu sa naredbama za njihovo pozivanje koje se nalaze u glavnom
programu.

2.3.2 Datoteke podataka


Datoteke podataka sadre podatke koji se obrauju pomou naredbi leder programa. Pri tome se pod
pojmom podaci podrazumevaju konvertovane (numerike) vrednosti signala koji se preko
ulazno/izlaznih modula unose u kontroler, ili se iz kontrolera prenose na izlazne ureaje, kao i interne
promenljive koje se koriste kao operandi u razliitim operacijama.
Datoteke podataka organizovane su u skladu sa tipom promenljivih koje sadre. To zapravo znai da
jedna datoteka sadri samo jedan tip (vrstu) podataka. Jedna procesorska datoteka moe da ima
najvie 256 datoteka podataka.

20

CPU jedinica PLC kontrolera

2.3.2.1 Tipovi promenljivih i datoteka


Osnovna karakteristika datoteke podataka je njen tip. Kao to je ve istaknuto tip datoteke, zapravo
ukazuje na vrstu promenljivih koje se u njoj pamte. To nadalje podrazumeva da tip datoteke ujedno
odreuju i njenu organizaciju, koja zavisi od vrste podatka i usvojenog naina za njegovo prikazivanje
u raunaru.
Datoteka se oznaava pomou rednog broja, koji jednoznano odreuje mesto te datoteke u nizu
datoteka podataka koje se nalaze u procesorskoj datoteci i slova kojim se identifikuje tip datoteke.
Prvih devet datoteka imaju unapred definisan tip koji ne moe da se menja. Tipove preostalih datoteke
korisnik sam odabira i definie u skladu sa aplikacijom koju razvija.
File 0 Tip O - output (izlaz) sadri sliku izlaza; sadraj datoteke se prenosi na izlazne
linije za vreme izlaznog skena.
File 1 Tip I - input (ulaz) - sadri sliku ulaza; u ovu datoteku se za vreme ulaznog skena
smetaju vrednosti sa ulaznih linija.
File 2 Tip S - status - sadri podatke vezane za rad kontrolera.
File 3 Tip B - bit sadri interne promenljive bit tipa.
File 4 Tip T - timer (asovnik) - sadri podatke koji se koriste za interne asovnike.
File 5 Tip C - counter (broja) - sadri podatke koji se koriste za interne brojae.
File 6 Tip R - control (upravljanje) sadri duinu, poloaj pokazivaa i bitove statusa za
odreene naredbe kao to su naredbe za pomeranje sadraja registara i sekvenci.
File 7 Tip N - integer (celobrojna) sadri podatke celobrojnog tipa.
File 8 Tip F - floating point (realna) - sadri podatke predstavljene u formatu pokretnog
zareza kao 32-bit brojeve u opsegu (1.1754944e-38 to 3.40282347e+38).
File 9 do file 255 Tip definie korisnik - korisnike datoteke ove datoteke definie
korisnik kao datoteke tipa B, T, C, N.

2.3.2.2

Element datoteke

Osnovna jedinica datoteke je jedan element. Svaki elemenat se sastoji iz nekoliko (jedne ili vie) 16bitnih rei. Broj rei koje ine jedan element zavisi od tipa datoteke, odnosno vrste podataka koji se u
nju smetaju.
Kao to je ve istaknuto, podaci koji su smeteni u datotekama predstavljaju operande (promenljive)
koji se koriste u pojedinim programskim naredbama. Ove promenljive se u programu pozivaju preko
svojih simbolikih imena koja predstavljaju logike adrese. Pri tome, adrese omoguavaju da se
pozove ne samo elemenat u celini, ve i njegov deo. To znai da se mogu adresirati pojedine rei u
okviru elementa ili pojedini bitovi u okviru rei. Budui da su podaci u izvesnom smislu hijerarhijski
organizovani: 1 elemenat sadri nekoliko rei, a 1 re 16 bitova, to su i odgovarajue adrese
struktuirane po istom hijerahijskom principu. Pojedine rei i bitovi u nekim datotekama imaju i
pridruene akronime (slovne skraenice), to dodatno olakava njihovo korienje.

Adresa elementa u principu, svaki element u okviru datoteke se identifikuje pomou njegovog
relativnog poloaja u odnosu na poetak datoteke (nulti, prvi, drugi, element). U skladu s tim
adresa elementa ima izgled kao na Sl. 2-5.

Sl. 2-5 Adresa elementa.

21

Organizacija memorije

Adresa rei jedna re elementa se identifikuje ili pomou relativnog poloaja te rei u okviru
elementa, ili pomou posebnog akronima (ukoliko je isti definisan). Fromat adrese jedne rei
prikazan je na Sl. 2-6.

Sl. 2-6 Adresa rei

Adresa bita Jedan bit u okviru rei identifikuje se ili preko njegovog relativnog poloaja u
okviru te rei (nulti, prvi, drugi, bit brojano s desna u levo) ili preko relativnog poloaja u
odnosu na poetak odgovarajueg elementa kome pripada re iji se bit adresira (Sl. 2-7).

Sl. 2-7 Adresa bita.

Duine elemenata u pojedinim datotekama date su u tabeli T. 2. Potrebno je istai da se u svakoj


datoteci mogu adresirati i elemenat u celini i njegove rei i bitovi. U tabeli T. 2 su, meutim,
navedene samo one adrese koje sa aspekta vrste podatka i naina organizacije datoteke imaju smisla.
Podrazumeva se pri tome da je:

adresirani bit 0 b 15
adersirni element 0 e 255

Moe se uoiti da su iz tabeli izostavljene ulazne i izlazne datoteke (I i O). Ovo je uinjeno zato to
one donekle odstupaju od navedenog pravila. Naime, kao to e se kasnije videti, kod ovih datoteka
elementi mogu biti duine od jedne ili dve rei, to zavisi od tipa U/I modula. Elemenat ovih datoteka
je zapravo odreen slotom u asiji u koji se modul postavlja.
T. 2 Veliine elemenata pojedinih datoteka
Tip datoteke

Duina elementa

B, N, A

1 re

2 rei

T, C, R

3 rei

Adresira se
bit b - Xf:e/b ;
element e Xf:e
element e Xf:e
bit b u rei 0 Xf:e.0/b ; (indikatori stanja su bitovi rei 0)
re w Xf:e.w ; w = {1,2}, promenljive su u reima 1 ili 2
re w - Xf:e.w ; 0 w 41
element e Xf:e

U cilju ilustracije organizacije datoteka posmatrajmo binarnu datoteku bit file (tipa B). Maksimalna
veliina ove datoteke iznosi 256 elemenata. Svaki elemenat je jedna 16-bitna re, to znai da ova
datoteka moe imati najvie 4096 bitova. U skladu sa izloenim nainima adresiranja, jedan bit moe
biti adresiran pomou rednog broja elementa (0 - 255) i rednog broj bita u okviru elementa (0 15)
ili pomou rednog broja bita u okviru datoteke (0 4095), kao to je to ilustrovano u tabeli T. 3. Bit
oznaen sa X je jedanaesti bit u drugom elementu, odnosno etrdesetetvrti bit u celoj datoteci. Prema
tome njegova adresa je B3:2/11 ili B3/44. Iz tabele se takoe vidi da je mogue da se adresira i ceo
element ove datoteke.

22

CPU jedinica PLC kontrolera


T. 3 - Datoteka 3 Bit
Adresa
elementa
B3:0
B3:1
B3:2
B3:3
.
.
.
B3:255

Data file 3 Bit file


Adrese pojedinih bitova
15
B3:0/0 B3:0/15
B3/0 B3/15
B3:1/0 B3:1/15
B3/16 B3/31
B3:2/0 B3:2/15
B3/32 B3/47
B3:3/0 B3:3/15
B3/48 B3/63
.
.
.
B3:255/0 B3:255/15
B3/4080 B3/4095

14

13

12

11

10

bitovi
9 8 7

Potrebno je da se zapazi da e u svakoj datoteci tipa bit koju korisnik sam definie adrese biti iste, s
tim to e se umesto broja datoteke (3) staviti broj koji korisnik pridruuje svojoj datoteci (9 - 255).

2.3.2.3

Kreiranje datoteka i zauzee memorije

Jedna datoteka podataka zauzima memorijski prostor koji obuhvata niz susednih rei. Broj rei koje
zauzima jedna datoteka odreen je najveom adresom elementa te datoteke koji se koristi u
programskim naredbama. Naime, sa izuzetkom datoteke statusa S, koja se kreira automatski, sve
ostale datoteke podataka ne postoje a priori same po sebi, ve se formiraju u toku kreiranja programa i
to navoenjem odgovarajue adrese u programu. Prvo navoenje broja datoteke inicijalizuje njeno
kreiranje. Pri tome tip datoteke koji je naveden u adresi odreuje broj rei koje se pridruuju jednom
elementu, dok adresa elementa odreuje niz uzastopnih elemenata za koje se u memoriji rezervie
prostor. Taj niz poinje od nule, a zavrava se sa adresom elementa koja je navedena u naredbi. Ako
se kasnije pojavi vea adresa elementa iste datoteke onda se prethodno rezervisani prostor proiri tako
da ukljui i tu adresu.
Predpostavimo da se u programskim naredbama pojavljuju redom adrese operanada F8:3, F8:1 i F8:5.
U tom sluaju, pri kreiranju prve naredbe rezervisae se memorijski prostor za datoteku 8 i zauzeti
ukupno 8 rei (elementi 0,1,2 i 3 ; svaki element po dve rei). Kada se kasnije naie na adresu F8:1,
ona nee prouzrokovati nikakve promene u zauzeu memorije, jer je memorijski prostor za taj
element ve zauzet. Meutim, adresa F8:5, dovee do poveanja zauzetog prostora na ukupno 12 rei
(6 elemenata), kao to je to ilustrovano na Sl. 2-8. Ovde je takoe predpostavljeno da su pre nailaska
na pomenute tri naredbe, nekim drugim naredbama ve kreirane datoteka N7 i korisnika datoteka 9,
kojoj je pridruen tip B.
Potrebno je da se istakne da veliina datoteke nije odreena stvarnim brojem elemenata koji se
koriste, ve najveem adresom. U posmatranom primeru se tako koriste samo tri elementa datoteke 8,
ali je zauzet prostor za 6 elemenata. To nadalje znai, da se paljivim izborom adresa elemenata moe
ostvariti uteda u zauzetom memorijskom prostoru.

23

Organizacija memorije
adrese
RAM-a
24

adrese
RAM-a
24

25

adrese
RAM-a
24

25

25

N7
integer

N7
integer
28

28

29

29

B9
bit

adrese
RAM-a
24
25

N7
integer

N7
integer

28
29

re 0

28
29

re 0

re 1

re 1

re 2

re 2

re 3

re 3

re 0
re 1
re 2

F8:1

re 3

33

33

re 4

33

re 4

33

re 4

34

34

re 5

34

re 5

34

re 5

re 6
36

re 7

37

F8:3

re 6
36
37

B9
bit
RAM

re 7

B9
bit

re 6
36

re 7

37

re 8
re 9
re 10

40

41

41

41

42

42

42

RAM
RAM

posle
obrade
prve
naredbe

posle
obrade
druge
naredbe

F8:5

B9
bit

45
46

pre
kreiranja
naredbi

re 11

RAM
posle
obrade
tree
naredbe

Sl. 2-8 Promena zauzea RAM memorije pri kreiranju naredbi.

Kao to je ve reeno, dozvoljeno je kreiranje najvie 256 datoteka podataka. Samo se po sebi razume
da e broj kreiranih datoteka zavisiti od promenljivih koje korisnik definie u programu. Pri tome sve
kreirane datoteke reaju se u nizu jedna iza druge. U formiranoj aplikaciji, datoteke podataka
zauzimaju jedan neprekidan memorijski prostor. Redni brojevi ovih datoteka poreani su u rastuem
nizu, ali ne moraju da ine kontinualni niz.

24

3 Diskretni U/I moduli


Uprkos injenici da diskretni senzori i aktuatori koji se nalaze na nekom procesu ili postrojenju mogu
imati veoma razliite tehnike karakteristike, zahtev koji se postavlja pri njihovom vezivanju za
kontroler je uvek isti. Naime, od kontrolera se oekuje da obezbedi konverziju digitalnog (binarnog)
signala koji dolazi sa senzora u numeriku vrednost 0 ili 1 i da taj podatak smesti kao jedan bit na
odgovarajue mesto u memoriji, ili da oita numeriku vrednost (sadraj) nekog bita u memoriji, da
ga konvertuje u binarni signal koji se vodi na aktuator. Ova injenica omoguila je projektovanje i
izradu tipiziranih U/I kola koja su u stanju da obrauju gotovo sve signale koji se sreu kod
industrijske merne opreme i izvrnih organa. Pored toga, nekoliko U/I kola su grupisana zajedno i
ine Diskretni U/I modul, ija veza sa kontrolerom se ostvaruje jednostvanim ubacivanjem u
odgovarajui slot na asiji.
asija
napajanje

slot
U/I moduli

indik
atori

opis
pino
va
xnn

xnn

xnn
xnn

xnn

procesorski
modul
(CPU)

xnn

xnn

U/I

xnn
xnn
xnn

pinovi

xnn
xnn

xnn
xnn

xnn
xnn

Sl. 3-1 Digitalni U/I modul.

Izgled tipinog U/I modula prikazan je na Sl. 3-1. Na prednjoj ploi U/I modula nalazi se odreeni
broj pinova (terminal points) za koje se vezuju izlazi sa mernih instrumenata, odnosno ulazi u izvrne
organe. Svaki pin je zapravo ulazna ili izlazna taka odgovarjueg kola za spregu sa kontrolerom. U
skladu sa time svaki pin se identifikuje svojim tipom (ulaz ili izlaz) i brojem koji odredjuje poloaj
U/I kola u okviru modula, i koji zapravo predstavlja adresu pina. Opis pinova dat je na unutranjoj
strani vrata na modulu. Pored U/I pinova, na prednjoj ploi modula nalaze se i pinovi koji su interno
povezani sa napajanjem (DC ili AC), sa zajednikom (nultom) takom i sa masom. Nain sprezanja
pojedinog ureaja sa modulom zavisi od specifinosti samog ureaja, kao i karakteristika modula,
detaljna ema sprege vezivanja data je uz svaki modul.
Za vreme rada U/I modula, stanje svakog pina se prikazuje na odogovarajuem LED indikatoru.
Indikator koji je povezan sa ulaznim pinom svetli ako je ulazni signal u stanju logike jedinice.
Indikator povezan sa izlaznim pinom svetli ako je, kao rezultat obrade programa, na izlazni pin
postavljena logika jedinica.
Postoje tri tipa U/I modula: ulazni, izlazni i kombinovani ulazno/izlazn modul. Oni se izrauju sa
razliitim gustinama pinova (4, 8, 16 i 32 pina po modulu) i mogu se sprezati sa AC, DC i TTL
naponskim nivoima.
Kao to se vidi na Sl. 3-1 U/I moduli se smetaju u slotove na asiji. Maksimalni broj modula koji se
moe direktno povezati sa jednim kontrolerom, zavisi od veliine asije i broja slobodnih slotova.
Budui da svaki slot ima svoju adresu unutar asije, to znai da je samim stavljanjem modula u slot
odreena i njegova adresa. Konano, kao to je ve istaknuto, i svaki pin unutar jednog modula ima

Diskretni ulazni moduli

svoju adresu. U skladu sa time svaki pin ima u okviru kontrolera jedinstvenu adresu, koja je odreena
adresom slota u koji se modul postavljai adresom pina unutar modula. Potrebno je da se naglasi da je
adresa pina odreena automatski stavljanjem modula u asiju kontrolera i da se ne moe programski
menjati.

3.1

Diskretni ulazni moduli

Ulazni modul PLC kontrolera obavljaju sledea dva osnovna zadatka: (1) prihvataju ulazne signale iz
spoljnjeg sveta i (2) tite logiku jednicu od spoljnjeg sveta. Ulazni modul konvertuje logike nivoe
napona iz spoljnjeg sveta u logike nivoe koje zahteva procesorska jedinica.
Opto-izolacija

Ulazni
prikljuak

Ulazno
kolo

0/5V

Sl. 3-2 Princip opto-izolacije.

Za zatitu logike jedinice najee se koristi opto-izolacija (skraeno od optika izolacija). Princip
opto-izolacije ilustrovan je na Sl. 3-2. Kao to se moe videti, izmeu spoljnjeg prikljuka ulaznog
modula i CPU jedinice ne postoji elektrina veza. Signal prisutan na ulazu modula se konvertuje u
svetlost. Svetlost obasjava foto-prijenik koji se pod dejstvom svetlosti ukljuuje. Komponente koje se
koriste za opto izolaciju, a objedinjuju u jednom zalivenom kuitu foto-predajnik (LED) i fotoprijemnik (foto-tranzistor) zovu se. opto-kapleri.
Diskretni ulazni modul sadre ugraena kola za eliminaciju treperenja ulaznog signala. Naime,
mnogi ulazni ureaji su mehanike komponente i imaju kontakte. Pri otvaranju ili zatvaranju kontakta
elektrini spoj se ne raskida, odnosno ne uspostavlja, trenutno ve se javlja prelazni reim u tokom
kojeg se spoj vei broj puta upostavlja/raskida pre nego to se uspostavi konano stanje. Ova pojava
se zove treperenje kontakta i moe imati neeljene posledice ukoliko se ne eliminie budui da
procesorska jedinica moe protumaiti svaki treptaj kao novu aktivaciju ulaznog signala.
Pored jednostavnih mehanikih prekidaa, kao ulazni ureaji esto se koriste i senzori. Postoji veliki
broj razliitih tipova senzora koji se koriste za detekciju prisustva predmeta, brojanje proizvoda,
merenje temperature, pritiska, teine i sl.
PLC kontroler moe razmenjivati proste, digitalne, on/off signale i sa drugim pametnim ureajima,
kao to su roboti, raunari, sistemi za viziju i sl. Ovi signali se koriste za usklaivanje zajednikog
rada nezavisnih delova sistema. Na primer, robot moe da poalje signal PLC kontroleru u trenutku
kada je zavrio neku operaciju. Po prijemu ovog signala PLC moe da aktivira neki drugi ureaj koji
nastavlja obradu proizvoda. Ovakav nain koordinacije, kada ureaji jedan drugom daju dozvolu za
obavljanje neke operacije, a s ciljem da se postignu odgovarajue performanse i obezbedi bezbednost
rada, zove se hendejk (handshake). Komunikacija digitalnim (on/off) signalima zove se primitivna
komunikcija.
Ulazni moduli, najee, zahtevaju eksterno napajanje. Nain povezivanja prikazan je na Sl. 3-3. U
emi veze uoava se izvor napajanja, ulazni ureaj (npr. prekida), ulazni put (prikljuak preko koga u
modul ulazi struja), ulazno kolo modula (ulazni deo opto-izolatora) i povratni put (prikljuak preko
koga struja izlazi iz modula). Kada je prekida zatvoren, strujno kolo je zatvoreno i struja tee; kada
je prekida otvoren, struja ne tee. Naalost, ovakav nain povezivanja zahteva dva prikljuka po
ulazu. Iz tog razloga veina ulaznih modula poseduje grupu ulaza koji dele zajedniki povratni put
COMMON (ili COM) (Sl. 3-4). Neki ulazni modulu imaju vie od jedne grupe sa zajednikim
prikljukom za napajanje (Sl. 3-5). Niz prekidaa je povezan sa ulaznim modulom PLC kontrolera
tako to je jedan kraj svakog prekidaa povezan s jednim od signalih ulaza, dok su drugi krajevi svih
prekidaa meusobno spojeni i posredstvom eksternog izvora napajanja spojeni sa zajednikim
prikljukom COM. Ako je potrebno, razdvojeni prikljuci za napajanje se mogu eksterno kratkospojiti
(Sl. 3-6), ime se dobija konfiguracija kao na Sl. 3-4.

26

Diskretni U/I moduli

Sl. 3-3 Tipina sprega ulaznog ureaja i ulaznog PLC modula. (Main path ulazni put; Return path
povratni strujni put; Field Device ulazni ureaj)

Sl. 3-4 Ulazni PLC modul sa zajednikim prikljukom.

Sl. 3-5 Ulazni modul sa dva zajednika prikljuka.

Sl. 3-6 Spajanje zajednikih prikljuaka.

Pored diskretnih ulaznih modula za jednosmeran, DC, napon, u upotrebi su i diskretni ulazni moduli
za naizmenini, AC, napon, za sluaj kada se umesto jednosmernog koristi naizmenini, eksterni izvor
napajanja. U ovom sluaju, na samim ulazima modula obavlja se AC-DC konverzija, npr. pomou
diodnog mosta, kao to je prikazano na slici. Na taj nain, naizmenini ulazni napon se transformie u
jednosmerni i nakon ispravljanja, nadalje obrauje na identian nain kao kod DC ulaznih diskretnih
modula (optoizolacija, filtriranje, ...). Napomenimo da treba praviti razliku izmeu AC diskretnih
ulaznih modula i analognih ulaznih modula. Kod prvih, zadatak modula je da detektuje
prisustvo/odsustvo ulaznog AC napona (to se konvertuje u binarnu vrednost 0 ili 1), dok je zadatak
drugih konverzija ulaznog, promenljivog napona u numeriku (viebitnu) vrednost.

Sl. 3-7 AC ulazni diskretni modul.

27

Diskretni ulazni moduli

3.1.1 Povezivanje digitalnih senzora


Digitalni senzori/prekidai su raspoloivi u dve varijante: sa normalno-zatvorenim i normalnootvorenim izlaznim kontaktima. Pojam normalno se odnosi na stanje senzora/prekidaa kada on ne
detektuje prisustvo objekta, odnosno kada nije pritisnut. Pojmovi zatvoreno i otvoreno se odnose na
stanje izlaza senzora/prekidaa. Dakle, senzor/prekida sa normalno-zatvorenim kontaktima je u
stanju on za sve vreme dok senzor ne detektuje prisustvo objekta, odnosno dok prekida nije pritisnut,
a prelazi u stanje off kada senzor detektuje objekat, odnosno kada se prekida pritisne. Za
senzore/prekidae sa normalno-otvorenim kontaktima vai suprotno.
Nain povezivanja senzora na ulazni modul PLC kontrolera se donekle razlikuje od naina
povezivanja prekidaa. Veina senzora poseduje ogranienje u pogledu maksimalne izlazne struje, tj.
struje koju moe da prihvati izlazni stepen senzora kada je senzor u stanju on. Tipino, izlazna struja
je ograniena na 100mA. To praktino znai da u izlaznom kolu senzora, kada je on prikljuen na
PLC ili neki drugi ureaj mora postojati otpornost koja e ograniiti struju kroz senzor. Ako se senzor
vezuje na PLC ovaj uslov je ispunjen jer sam ulaz PLC kontrolera poseduje dovoljno veliku ulaznu
otpornost koja u veini sluajeva ograniava struju kroz senzor na prihvatljiv nivo. Ukoliko otpornost
ulaza PLC kontrolera nije dovoljno velika, na red sa senzorom treba vezati eksterni otpornik.
Senzori zahtevaju napajanje da bi obavljali svoju funkciju, ak i kada nisu ativirani spoljnom
pobudom. Struja koja je neophodna za rad senzora se zove struja curenja. S obzirom da se struja
curenja protie kroz ulazno kolo PLC modula, moe se desiti da izazove aktiviranje ulaza PLC
konrolera. Struja curenja je mala i obino nije vea od 2mA i u veini sluajeva je dovoljno mala tako
da ne dolazi do lanog aktiviranja ulaza PLC kontrolera. Ako ipak postoji mogunost da se to desi,
paralelno sa senzorom treba vezati otpornik.
Pored senzora sa dva izlazna prikljuka, u upotrebi su i senzori sa tri prikljuka. Jedan od prikljuaka
je predvien za napajanje (+V ili GND) dok su druga dva izlazni kontakti senzora. Postoje dva tipa
senzora sa tri prikljuka: NPN i PNP.
Senzora NPN tipa se moe predstaviti kao na Sl. 3-8. Kao to se moe videti, kod senzora NPN tipa,
struja izlazi iz ulaznog prikljuka PLC modula (sourcing tipa) i ulazi u senzor kroz izlazni prikljuak
senzora (zato se kae i da je senzor sinking tipa). Sprega senzor PNP tipa sa PLC modulom prikazana
je na Sl. 3-9. U ovom sluaju, struja izlazi iz izlaznog prikljuka senzora (zato se kae i da je senzor
sourcing tipa) i ulazi u ulazni prikljuak PLC modula, koji je sinking tipa.

Sl. 3-8 Povezivanje senzora NPN tipa na ulazni PLC modul.

Sl. 3-9 Povezivanje senzora PNP tipa na ulazni PLC modul.

28

Diskretni U/I moduli

3.2

Diskretni izlazni moduli

Digitalni (ili diskretni) izlazni modul obezbeuje spregu PLC kontrolera i izlaznih ureaja koji
zahtevaju on/off upravljanje. Digitalni izlazni moduli funkcioniu kao prekidai. Izlazni ureaji mogu
biti: starteri motora, svetiljke, relei, solenoidi i sl. Digitalni izlazni moduli, u zavisnosti od tipa, mogu
generisati DC (jednosmeran) ili AC (naizmenian) napon. Izlazni moduli su dostupni u
konfiguracijama od po 8, 16 i 32 izlaznih taaka.
Vaan parametar u specifikaciji izlaznog modula je maksimalna izlazna struja, koja se uobiajeno
navodi kao maksimalna struja celokupnog modula i maksimalna struja po jednom izlazu, pri emu je
obino ukupna maksimalna struja manja od zbira maksimalnih struja pojedinanih izlaza. Na primer,
maksimalna struja pojedinanog izlaza moe biti ograniena na 1A, a makslimalna ukupna struja na
5A.
Svaki izlaz izlaznog modula je zatien posebnim osiguraem. Kod mnogih modula postoji svetlosna
indikacija pregorelog osiguraa.
Digitalni izlazni moduli obino imaju vie od jednog prikljuka za masu. To omoguava korienje
razliitih naponskih nivoa na istom modulu (Sl. 3-10). Korisnik moe krakospojiti ove prikljuke, ali
je onda ogranien na korienje samo jednog eksternog izvora napajanja (Sl. 3-11).

Sl. 3-10 Digitalni izlazni modul sa dva zajednika prikljuka.

Sl. 3-11 Kratkospojeni zajedniki prikljuci.

Izlazni stepen digitalnog izlazno modula se realizuje pomou: tranzistora, triaka ili relea. Tranzistorksi
izlazi se koriste za DC (jednosmerne) izlaze. Triaci se koriste za AC (naizmenine) izlaze, dok se
releini izlazi mogu koristiti kako za DC tako i za AC izlaze. ta vie, kod modula sa releinim
izlazima, pojedini izlazi mogu imati DC, a drugi AC pobudu (Sl. 3-12). Na (Sl. 3-13) je prikazana
struktura releinog izlaznog stepena. U sluajevima kada se releini izlaz povezuje sa induktivnim
optereenjem, izlazi bi trebali biti zatieni diodama kako bi se produio ivotni vek kontakta relea.
Naime, prilikom ukljuenja/iskljuenja izlaza dolazi do pojave naponskih pikova na krajevima
induktivnog optereenja (kontra-elektromotorna sila) koji mogu izazvati varnienje kontatka izlaznog
relea. Ugradnom diode, na nain kao na (Sl. 3-14), ovi pikovi se eliminiu.

29

SLC 500 diskretni U/I moduli

Sl. 3-12 Primena digitalnog izlaznog modula sa relejinim izlazima. (L - optereenje)

Sl. 3-13 Relejni izlazni stepen.

Sl. 3-14 Sprega induktivnog optereenja na izlazni digitalni modul.

Na Sl. 3-15 i Sl. 3-16 prikazano je kako se tranzistoriski izlaz povezuje sa izlaznim ureajem iji je
ulaz PNP, odnosno NPN tipa. Kao to se vidi tranzistoriski izlaz je tipa otvoreni drejn, to znai da u
sluaju pobude ureaja NPN tipa mora biti ugraen eksterni pull-up otpornik kako bi se obezbedila
struja pobude kada je izlazni tranzistor zakoen. Vano je pravilno dimenzionisati pull-up otpornik.
Ako pull-up otpornih isuvie velike otpornosti, struja pobude moe biti nedovoljna za pobudu ulaza
prikljuenog ureaja. Sa druge strane, ako pull-up otpornik ima malu otpornost, disipacija na
otporniku kada je izlazni tranzistor provodan bie velika.

Sl. 3-15 Sprega izlaznog PLC modula sinking (NPN) tipa i izlaznog ureaja sourcing (PNP) tipa.

Sl. 3-16 Sprega izlaznog PLC modula sourcing (PNP) tipa i izlaznog ureaja sourcing (NPN) tipa.

30

Diskretni U/I moduli

3.3

SLC 500 diskretni U/I moduli

Serija diskretnih ulaznih i izlaznih moduli predvienih za spregu sa PLC kontrolerima tipa SLC 500
nosi oznaku 1746 i sadri 39 razliitih jedinica. Moduli iz ove serije imaju 4, 8, 16 ili 32 ulaza/izlaza.
Postoje varijante sa AC, DC ili TTL ulaznim elektrinim interfejsima. Moduli obezbeuju ulazno
filtriranje, optiku izolaciju. Dostupni su ulazni moduli sa ulazima sourcing ili sinking tipa. Postoje
varijante izlaznih modula sa tranzistorkim AC, tranzistorskim DC i releinim izlazima. Takoe, ova
serija diskretnih modula sadri i kombinovane ulazno-izlazne module sa po 2-ulaza/2-izlaza, 4ulaza/4-izlaza i 6-ulaza/6-izlaza. Na Sl. 3-17 dat je pregled diskretnih modula serije 1746.

31

SLC 500 diskretni U/I moduli

Sl. 3-17 Diskretni ulazni i izlazni moduli iz serije 1746.

3.4

Sprezanje diskretnih U/I modula sa kontrolerom

Vrednost binarnog signala koji dolazi na ulazni pin nekog U/I modula oitava se za vreme ulaznog
dela sken ciklusa. U zavisnosti od toga da li oitana vrednost predstavlja logiku nulu ili jedinicu
formira se odgovarajua vrednost bita (0 ili 1) i upisuje na mesto u datoteci 0 (Input image file) koje
odgovara adresi ulaznog pina. Isto tako, vrednost bita koji treba da se prenese na izlazni pin
kontrolera kao binarni signal, nalazi se u datoteci 1 (output image file). Za vreme izlaznog dela sken
ciklusa ova vrednost se oitava, konvertuje u odgovarajui signal i prenosi na izlazni pin ija adresa
odgovara mestu u datoteci na kome se nalazi posmatrani bit.

Sl. 3-18 Format adresa binarnih U/I signala.

Svakom modulu koji nema vie od 16 pinova pridruuje se po jedna 16-bitna re u datoteci 0
odnosno 1. Ako modul ima manje od 16 pinova, onda se ne koriste svi bitovi u pridruenoj rei. Ako
modul ima 32 pina, njemu se pridruuju dve susedne 16-bitne rei. Pri tome, koja re e biti
pridruena modulu zavisi od slota u kome se modul nalazi. Format adresiranja prikazan je na Sl. 3-18.
Da bi se ilistrovao nain povezivanja adresa modula sa odgovarajuim datotekama posmatrae se
kontroler koji se sastoji iz jedne asije sa 7 slotova koja je povezana sa asijom od 10 slotova kao to
je to ilustrovano na Sl. 3-19. Kao to se vidi prva asija sadri procesorski modul u slotu 0;
kombinovani U/I modul sa 6 ulaza i 6 izlaza u slotu 1; ulazni modul sa 32 ulazna pina u slotu 2 itd. U
drugoj asiji koriste se samo prva etiri slota, dok se preostali slotovine koriste. Struktura datoteka 0 i
1 koje odgovaraju datoj konfiguraciji prikazana je u tabelama T. 4 i T. 5.

Sl. 3-19 Konfiguracija kontrolera.

32

Diskretni U/I moduli

T. 4 Organizacija datoteke 0
Slot U/I tip
(pinovi)
1 - out
(0-5)
3 - out
(0-15)
4 out
(0-7)
5 out
(0-15)
5 out
(16-32)
9 out
(0-15)
10 out
(0-15)

Adresa Adrese
rei
bitova
O:1
O:3
O:4
O:5
O:5.1
O:9
O:10

Data file 0 Output image


bitovi
15 14 13 12 11 10

O:1/0
Ne koristi se
O:1/5
O:3/0
O:3/15
O:4/0
Ne koristi se
O:4/7
O:5/0
O:5/15
O:5.1/0 ...
O:5.1/15
O:9/0
O:9/15
O:10/0
O:10/15

T. 5 Organizacija datoteke 1
Slot U/I tip
(pinovi)
1 - in
(0-5)
2 - in
(0-15)
2 in
(16-32)
4 in
(0-7)
6 in
(0-15)
7 in
(0-15)
8 in
(0-7)

Adresa Adrese
rei
bitova
I:1
I:2
I:2.1
I:4
I:6
I:7
I:8

I:1/0
I:1/5
I:2/0
I:2/15
I:2.1/0
I:2.1/15
I:4/0
I:4/7
I:6/0
I:6/15
I:7/0
I:7/15
I:8/0
I:8/7

Data file 1 Input image


bitovi
15 14 13 12 11 10
Ne koristi se

Ne koristi se

Ne koristi se

Potrebno je da se istakne da su I i O datoteke jedine dve datoteke kod kojih elementi nisu poreani u
neprekidnom nizu i kod kojih su elementi promenljive duine. U ovom primeru tako posle elementa
O:1, kao susedna re u memoriji nalazi se element O:3. Isto tako posle elementa O:5 koji zauzima dve
rei dolazi elemnat O:9 koji zauzima jednu re. Ovo je, naravno, prirodna posledica injenice da su
redni brojevi elemenata vezani za slotove, a da je njihova duina odreena brojem pinova na modulu.

33

4 Leder programiranje
Ako se PLC posmatra kao mikroprocesorski sistem, to on i jeste, onda bi se moglo oekivati da se za
njegovo programiranje koriste standardni programski jezici. Meutim, ako se poe od injenice da je
PLC projektovan kao namenski mikroprocesorski sistem za upravljanje i nadzor rada nekog procesa, i
da u skladu s tim ima poseban operativni sistem koji obezbeuje periodino ponavljanje sken ciklusa,
onda je logino oekivati da je za njegovo programiranje razvijen i poseban programski jezik. Kao to
je ve ranije istaknuto, PLC je poetno razvijen sa idejom da zameni relejne sisteme. To znai da se
oekivalo da on realizuje odgovarajuu vremensku sekvencu logikih operacija. Pored toga, uspena
primena PLC-a u praksi, zahtevala je i da se njegovo programiranje prilagodi tehnici koja je svim
korisnicima relejnih sistema dobro poznata. Iz svih ovih razloga, za projektovanje PLC-ova razvijen
je programski jezik zasnovan na leder (lestviastim) dijagramima leder programski jezik.

4.1

Rang

Jedna programska linija leder jezika sastoji se iz niza grafikih simbola (programskih naredbi) koji
predstavljaju razliite logike elemente i druge komponente kao to su tajmeri i brojai, koji su
poreani du horizontalne linije rang (rung) koja je na oba kraja spojena sa dvema vertikalnim
linijama. Prema tome, leder dijagram ima izgled lestvica, odakle potie i njegov naziv (ladder
lestvice).
Svaki rang leder dijagrama sastoji se iz dva dela. Na levoj strani ranga nalazi se uslov izraen u formi
kontaktne (prekidake) logike, dok se na desnoj strani ranga nalazi akcija koja treba da se izvri
ukoliko je uslov ispunjen (true) (Sl. 4-1).

Uslov Grafiki simboli na levoj strani ranga odnose se ili na stanja signala koji predstavljaju
fizike ulaze PLC-a, i ije su vrednosti tokom ulaznog dela sken ciklusa smetene u slici ulaza
(input image file), ili na stanja internih promenljivih, ije su vrednosti smetene u odgovarajuim
datotekama. Svaki simbol predstavlja jednu unarnu binarnu operaciju kojoj je pridruena
odgovarajua tablica istinitosti. Uz grafiki simbol naznaava se i adresa promenljive koja
predstavlja operand. Pri ispitivanju istinitosti uslova smatra se da se nad svim simbolima u jednoj
liniji (redna, serijska veza) obavlja logika I operacija. To znai da je uslov istinit ukoliko je
svaki pojedinani iskaz istinit. Na levoj strani ranga dozvoljena su i granjanja (paralelene veze).
Pri ispitivanju istinitosti uslova paralelene veze se tretiraju kao logika ILI operacija. To znai
da e iskaz predstavljen nizom paralelnih grana biti istini, ako bar jedna od grana sadri istinit
iskaz. Potrebno je da se istakne da leva strana ranga moe biti formirana i tako da na njoj nema ni
jednog simbola. U tom sluaju smatra se da je uslov koji se na taj nain definie uvek istinit.

Akcija Grafiki simboli na desnoj strani ranga odnose se ili na fiziki izlaz (promenljive
smetene u slici izlaza (output image file), koje e biti prenete na izlaze kontrolera u toku
izlaznog dela sken ciklusa) ili na interne promenljive, ije su vrednosti smetene u
odgovarajuim datotekama. Svaki simbol predstavlja jednu naredbu koja se izvrava ako je uslov
na levoj strani istinit. Uz simbol se naznaava i adresa promenljive ija se vrednost menja
prilikom izvravanja naredbe, ili koja na bilo koji drugi nain uestvuje u realizaciji naredbe (npr.
otpoinjanje ili zaustavljanje neke aktivnosti, skok na neki drugi rang, poziv potprograma itd.).
Serijska veza na desnoj strani ranga nije dozvoljena, dok paralelna veza oznaava da se vie
razliitih naredbi izvravaju kao rezultat ispitivnja istinitosti jednog istog uslova.

U literaturi je uobiajeno da se i simboli koji oznaavaju uslov i simboli koji oznaavaju akciju
oznaavaju kao naredbe. Otuda je neophodno da se istakne sutinska razlika izmeu naredbi uslova i
naredbi akcije. Naime, izvravanje naredbi uslova obavlja se tako to se u zavisnosti od vrednosti
operanda, prema pridruenoj tablici istinitosti, naredbi dodeljuje vrednost (0 ili 1). Dakle, naredbe
uslova se izvravaju u svakom sken ciklusa i rezultat njihovog izvoenja je vrednost naredbe. Za
razliku od toga naredbama akcije se ili dodeljuje vrednost nekoj promenljivoj ili izvrava neka druga

Leder programiranje

aktivnost. Ove naredbe se izvravaju samo ako je uslov koji im prethodi istinit (dodeljena mu je
vrednost 1). Pri tome se samim naredbama akcije ne dodeljuje nikakva vrednost.
x1

x2

x3
x4

Y1
x5

uslov

akcija

Sl. 4-1 Leder rang

Leder program se izvrava u toku programskog dela sken ciklusa i to tako to se obrauje rang po
rang po redosledu kako su oni poreani u leder dijagramu. U svakom rangu ispituje se istinitost uslova
i ukoliko je uslov istinit izvravaju se odgovarajue naredbe u desnom delu ranga. To znai da
promenljive u desnom delu ranga mogu menjati svoju vrednost samo jedanput u toku sken ciklusa, i
to upravo onda kada se odgovarajui rang ispituje. Potrebno je zapaziti da ukoliko se promenljiva na
desnoj strani ranga odnosi na fiziki izlaz, vrednost izlaza nee biti promenjena u istom trenutku
vremena. Naime, za vreme programskog skena menjaju se samo vrednosti promenljivih smetenih u
slici izlaza. Tek kasnije, za vreme izlaznog dela sken ciklusa, sve promenljive iz slike izlaza bie
prenete na odgovarajue izlazne linije. Ista stvar vai i za ulazne promenljive. Drugim reima, za
vreme programskog skena ispitivanje istinitosti uslova odnosi se na vrednosti promenljivih u slici
ulaza, koje su tu upisane za vreme ulaznog dela sken ciklusa koji je prethodio programskom skenu, a
ne na trenutne vrednosti promenljivih na ulaznim linijama. Naravno, svi uslovi i naredbe koji su
vezani za interne promenljive izvravaju se u trenutku skaniranja pojedinog ranga.

4.2

Bit naredbe

Bit naredbe su, kao to samo ime kae naredbe iji su operandi bitovi. S gledita lokacije operanada,
to znai da se oni najee nalaze u datoteci 3 (bit file - B), digitalnim ulaznim ili izlaznim
datotekama (input image file 1 ili output image file 0) ili u korisnikim datotekama bit tipa. Pored
toga, adresirani operand moe da se nalazi i u bilo kojoj drugoj datoteci u okviru koje je mogue
adresirati pojedini bit. Za vreme programskog skena u okviru bit naredbi ispituje se stanje pojedinog
bita, ili se njegova vrednost postavlja na 1 (set) ili na 0 (reset).

4.2.1 Bit naredbe za definisanje uslova


Ove naredbe se postavljaju na levoj strani ranga i definiu uslov koji se odnosi na stanje bita ija je
adresa definisana u naredbi. Kao rezultat izvoenja naredba dobija istinosnu vrednost true (istinit) ili
false (neistinit).

XIC - Examine if closed (ispitivanje da li je kontakt zatvoren)

XIO - Examine if open (ispitivanje da li je kontakt otvoren)

35

Bit naredbe

Nazivi ove dve naredbe potiu od ispitivanja binarnih signala koji dolaze sa prekidakih kola. U tom
smislu, XIC naredba se odnosi na normalno otvoren prekida, dok se XIO naredba odnosi na
normalno zatvoren prekida.

4.2.2 Bit naredbe za postavljanje vrednosti izlaza


Ovim naredbama se bitu ija je adresa navedena u naredbi dodeljuje vrednost 1 ili 0. Podsetimo se da
se ove nardbe nalaze na desnoj strani ranga, to znai da e se one izvriti samo ako je iskaz (uslov)
na levoj strani ranga istinit.

OTE - Output energize (pobuivanje izlaza)

Potrebno je da se zapazi da se ovom naredbom vrednost bita ija je adresa a moe promeniti samo
jedanput za vreme sken ciklusa. Ova vrednost ostae neizmenjena sve do sledeeg sken ciklusa, kada
e se pri skeniranju odgovarajueg ranga ponovo ispitati uslov i izvesti odgovarajua akcija.

OTL - Output latch (pamenje izlaza)

OTL naredbom se adresirani bit moe iskljuivo postaviti na 1. Naime, za razliku od OTE naredbe
kojom se vrednost bita moe postavljati na 0 ili 1 svaki put kad se rang skenira, kod OTL naredbe
vrednost bita se postavlja (leuje) na 1 u prvom skenu u kome je uslov istinit. Nakon toga ova naredba
postaje neosetljiva na istinosnu vrednost uslova. To znai da e vrednost bita ostati neizmenjena bez
obzira na to kako se menja vrednost uslova.

OTU - Output unlatch (resetovanje izlaza)

OTU naredbom se adresirani bit moe iskljuivo postaviti na 0. Pri tome, vrednost bita se postavlja
(leuje) na 0 u prvom skenu u kome je uslov ispunjen. Nakon toga ova naredba postaje neosetljiva na
vrednost uslova.
Potrebno je da se istakne da se OTL i OUT naredba koriste uvek u paru, pri emu se u obe naredbe
adresira isti bit.

4.2.3 Bit triger naredba

OSR - One-shot rising (uzlazna ivica)


Tablica istinitosti
adresa bita
a
OSR

Bit na adresi
"a" dobija
vrednost

Ako je uslov

Vrednost naredbe je

True

True, u sken ciklusu u kome


uslov postaje istinit

set (1)

False

False, u ostalim sken


ciklusima

reset (0)

a
uslov

OSR

akcija

36

Leder programiranje

OSR naredba omoguava da se obezbedi izvodjenje neke akcije samo jedanput. Ova naredba je
specifina po tome to istovremeno pripada i kategoriji uslova i kategoriji akcije. Naime ova naredba
se postavlja u rangu izmeu dela koji predstavlja uslov i dela koji predstavlja akciju. Kada se u toku
sken ciklusa detektuje da je uslov promenio svoju vrednost sa neistinit na istinit (uzlazna ivica) onda
OSR naredba takoe dobija vrednost istinit (to ovu naredbu svrstava u kategoriju naredbi uslova).
Istovremeno se i bitu ija je adresa pridruena toj naredbi dodeljuje vrednost 1 (po emu se ova
naredba svrstava i u kategoriju akcija). Obe ove vrednosti ostaju nepromenjene do sledeeg sken
ciklusa, kada naredba dobija vrednost neistinit, dok se adresirani bit postavlja na vrednost 0 ili 1 u
zavisnosti od vrednosti uslova. U narednim sken ciklusima vrednost naredbe ostaje nepromenjena sve
dok se u uslovu (koji predstavlja ulaz u OSR) ponovo ne detektuje prelaz neistinit/istinit.
Potrebno je istai da bit ija je adresa pridruena ovoj naredbi ne predstavlja vrednost naredbe.
Naime, ovaj bit se koristi kao interna promenljiva i slui za pamenje vrednosti uslova koji prethodi
OSR naredbi. Vrednost ovog bita je 1 ako je uslov istinit, odnosno 0 ako je uslov neistinit. U tom
smislu, sa aspekta dodeljivanja vrednosti bitu ija se adresa navodi u OSR naredbi, ova naredba je
identina sa OTE naredbom. Navedeni bit se moe nalaziti u bilo kojoj bit-adresibilnoj datoteci izuzev
datoteke ulaza i izlaza.
Vrednost koju dobija OSR naredba koristi se kao uslov za izvoenje naredbe akcije koja se nalazi na
desnoj strani ranga (neposredno iza OSR naredbe). Shodno tome, naredba akcije bie izvravana po
jedanput pri svakom prelazu uslova neistinit/istinit.
Iza OSR naredbe se moe nalaziti samo jedna naredba akcije.

4.3

Kontakti

Veina ulaza u PLC su jednostavni ureaji koji mogu biti u stanju ukljueno (on) ili u stanju
iskljueno (off). Ovakvi ulazi su prekidai i digitalni senzori koji detektuju uslove tipa: objekat je
prisutan, puno/prazno itd. U leder programu, stanje prekidaa se ispituje naredbama XIC, za normalno
otvorene prekidae/senzore, i XOC, za normalno zatvorene prekidae/senzore.

Sl. 4-2 Jenostavan leder dijagram.

Prekida za zvono na ulaznim vratima je primer normalno otvorenog prekidaa. Pritiskom na


prekida, zvono se spaja sa izvorom napajanja, struje poinje da tee i zvono zvoni. (Ukoliko
bi smo za ovu namenu koristili normalno zatvoren prekida, zvono bi zvonilo za sve vreme
dok je prekida nepritisnut, a ne bi zvonilo samo dok je prekida pritisnut, to je oigledno
neeljeno ponaanje.) Odgovarajui leder dijagram prikazan je na Sl. 4-2. Program se sastoji
iz samo jednog ranga, koji u delu uslova sadri XIC naredbu, koja predstavlja prekida, a u
delu akcija OTE naredbu, koja predstavlja zvono. Ako je uslov taan (prekida pritisnut),
akcija se izvrava (zvono se pobuuje). Konceptualni prikaz PLC sistema za ovu namenu dat
je na Sl. 4-3 (iako je sasvim jasno da PLC predstavlja krajnje neracionalno reenje za ovu
namenu). Prekida je preko eksternog izvora napajanja prikljuen na ulaz 1, dok je zvono,
takoe preko eksternog izvora napajanja, prikljueno na izlaz 1 PLC kontrolera. Centralni
deo slike prikazuje logiku po kojoj procesor odreuje izlaz u zavisnosti od ulaza.

37

Sl. 4-3 Konceptualni pogled na PLC sistem.

Zamislimo senzor koji treba da detektuje prisustvo metalnog predmeta na pokretnoj traci. I za ovu
namenu, senzor sa normalno otvorenim kontaktima predstavlja logian izbor senzor se ukljuuje
kada metalni predmet doe ispred senzora; kada metalni proe, senzor ponovo prelazi u iskljueno
stanje.
Normalno zatvoreni prekidai/senzori se tipino koriste kada treba obezbediti veu sigurnost sistema.
Ovakav prekida je u stanju zatvoreno (proputa struju) za sve vreme dok nije pritisnut, dok se
pritiskom na prekida njegovi kontakti otvaraju (struja ne tee). Alarmni sistem je primer sistema gde
je poeljno koristiti normalno zatvorene prekidae. Pretpostavimo da alarmni sistem treba da
detektuje otvaranje ulaznih vrata. Ova jednostavna funkcija se moe ostvariti pomou normalnootvorenog prekidaa (sluno kao u primeru zvona na ulaznim vratima): kada se vrata otvore, prekida
se zatvara i alarm se ukljuuje. Meutim, reenje sa normalno-otvorenim prekidaem ima jedan
ozbiljan nedostatak. Pretpostavimo da se prekida pokvario ili da se ica kojom je prekida povezan
sa PLC modulom prekinula. Oito, u tom sluaju, alarm se nikada nee ukljuiti, bez obzira da li su
ulazna vrata otvorena ili ne. Drugim reima, vlasnik kue nije dobio informaciju da se sistem
pokvario i zato nastavlja da koristi sistem kao da je sve u redu.
Ispravno reenje je ono koje moe da obezbedi aktiviranje alarma kada se vrata otvore, ali i onda kada
sistem otkae. Bolja varijanta je da se alarm aktivira zato to je sistem otkazao, iako nema provalnika,
nego da je provala u toku, a alarm uti zato to je prekida pokvaren. Ovakvo ponaanje se moe
lako realizovati uz pomo normalno-zatvorenog prekidaa otvaranje vrata i prekid ice (sluajan ili
nameran) ima isti efekat: prekid strujnog kola.
Slina razmatranja imaju ak i vei znaaj kada se radi o industrijskim primenama, gde otkaz neke
maine moe uzrokovati veliku tetu ili povrede ljudi. Zato se prilikom projektovanja sistema i
razvoja leder programa posebna panja posveuje bezbednosti s ciljem da u sluaju otkaza sistem
bude postavljen u stanje koje e biti bezbedno za ljude i sam proces.
Razmotrimo sistem sa (Sl. 4-4). Slika predstavlja proizvodnu eliju u kojoj radi robot. elija je
ograena ogradom sa jednim ulaznim vratima. Kao kontroler elije koristi se PLC. Da bi se osiguralo
da niko ne moe ui u eliju dok robot radi, iskorien je sigurnosni prekida. Ako neko ue u eliju,
PLC e detektovati da je prekida otvoren i ukljuie alarm. Za ovu namenu treba koristiti normalnozatvoren prekida. Ako se ica koja povezuje prekida sa PLC kontrolerom prekine, PLC e misliti
da je neko uao u eliju i aktivirae alarm. Kae se da je ovako projektovan sistem bezbedan na
otkaze.

38

Leder programiranje

Sl. 4-4 Obezbeenje proizvodne elije. (Normally Closed Switch Normalno zatvoren prekida)

Sl. 4-5 Rang leder dijagrama sa normalno-zatvorenim prekidaem.

Na Sl. 4-5 je prikazan leder program za prethodno opisanu primenu. Leder program se sastoji iz samo
jednog ranga koji u delu uslova sadri XCI naredbu, koja predstavlja normalno-zatvoreni prekida, a
u delu akcija OTE naredbu, koja predstavlja alarm. Uslov e biti taan i akcija e biti izvrena, ako je
na odgovarajuem ulazu PLC modula prisutna 0, odnosno ako je prekida otvoren, tj. pritisnut.
U istom rangu moe se nai vie od jednog prekidaa. Na primer, zamislimo mainu za buenje rupa.
Motor builice se ukljuuje pod uslovom da je predmet koji se bui prisutan i da je operater pritisnuo
oba sigurnosna prekidaa (Sl. 4-6). Na Sl. 4-7 je prikazan odgovarajui leder program. Program se
sastoji iz samo jednog ranga koji u delu uslova sadri serijsku vezu tri XIO naredbi od kojih prva
odgovara senzoru za detekciju prisustva predmeta, dok druge dve odgovaraju sigurnosnim
prekidaima. Seriska veza prekidaa realizuje logiki AND uslov (da bi se akcija obavila, svi
prekidai moraju biti ukljueni).

Sl. 4-6 Builica sa sigurnosnim prekidaima.

Sl. 4-7 Rang leder dijagrama sa serijskom vezom prekidaa.

esto se javlja potreba da se izlaz aktivira ako je ispunjen barem jedan od vie uslova. Zamislimo
zgradu sa glavnim i sporednim ulazom. Na oba ulaza postoje prekidai za zvono. Pritisak na bilo koji
od ova dva prekidaa ukljuuje zvono. Na Sl. 4-8 je prikazan odgovarajui leder program. Leder
program se sastoji iz samo jedan rang, koji u delu uslova sadri grananje, tj. dve paralelne putanje (ili
uslova) koje mogu ukljuiti zvono. Grananje predstavlja logiku OR operaciju nezavisnih uslova.
Zvono zvoni ako je pritisnut prekida na glavnom ulazu ili prekida na sporednom ulazu ili oba
prekidaa istovremeno.

39

Sl. 4-8 Rang leder dijagrama sa paralelnom vezom prekidaa.

U optem sluaju, rang leder dijagrama moe sadrati proizvoljnu kombinaciju redno i paralelno
vezanih prekidaa (Sl. 4-9).

Sl. 4-9 Rang sa redno-paralelnom vezom prekidaa.

4.4

Start/stop kolo

Start/stop kolo se veoma esto koristi u industrijskim primenama. Na primer, maina moe imati start
taster za poetak rada i stop taster za zaustavljanje. Primer leder dijagrama start/stop kola prikazan je
na Sl. 4-10. U ovom primeru, Start je normalno-otvoren, a Stop normalno-zatvoren taster. Pritiskom
na taster Start, uslov ranga postaje taan, a izlaza Y1 se aktivira. Uoimo da se izlaz Y1 koristi i kao
ulaz (nalazi se i u delu ranga za uslov). S obzirom da je sada Y1=1, uslov ostaje taan, a izlaz aktivan
i nakon otputanja prekidaa Start. Pritiskom na prekida Stop, uslov ranga postaje netaan, a izlaz se
deaktivira. Poto je sada Y1=0, uslov ostaje netaan, a izlaz neaktivan i nakon otputanja tastera Stop.
Da bi se izlaz ponovo aktivirao potrebno je ponovo pritisnuti taster Start. Opisani postupak formiranja
start/stop kola se zove samodranje, s obzirom da izlazna promenljiva zadrava vrednost i posle
prestanka uslova za njeno aktiviranje.

Sl. 4-10 Start/stop kolo.

Ponaanje Start/stop kola je identino ponaanju SR lea, pri emu prekida Start ima ulogu
setovanja, a Stop ulogu resetovanja lea.
Osim u leder programima, Start/stop kolo se esto realizuje i u relejnoj tehnici, uz pomo relea sa dva
normalno-otvorena kontakta. Na Sl. 2-4-11 je prikazana realizacija start/stop kola za upravljanje
motorom. Jedan kontakt relea, A1, kontrolie napajanje motora, dok se drugi kontakt, A2, koristi za
realizaciju start/stop kola. Pritiskom na taster Start, kroz namotaj relea poinje da tee struja, oba
kontakta, A1 i A2 se zatvaraju i motor poinje da radi. Ovakvo stanje se zadrava i nakon otputanja
tastera Start, jer struja za namotaj relea nastavlja da tee kroz zatvoren kontakt A2. Pritiskom na taster
Stop, struja kroz namotaje relea se prekida, kontakti A1 i A2 se otvaraju, motor prestaje da radi a kroz
namotaje relea vie ne protie struja.

40

Leder programiranje

Sl. 2-4-11 Realizacija Start/Stop kola pomou relea.

Na prvi pogled ini se da start/stop kolo predstavlja neracionalno reenje, jer se ista funkcija (prosto
aktiviranje/deaktiviranje izlaza) moe ostvariti pomou samo jednog, dvo-poloajnog prekidaa, koji
bi direktno upravljao izlazom. Razlog za korienje start/stop kola je bezbednost. Pretpostavimo da u
sistemu sa Sl. 2-4-11, motor radi (kroz namotaje relea tee struja) i da u jednom trenutku doe do
nestanka elektrine energije. Motor se zaustavlja, a kontakti relea otvoraju. Kada naknadno eletrina
energija doe, motor ostaje iskljuen, a da bi se ponovo ukljuio neophodno je pritisnuti taster Start.
Ako bi smo za upravljanje motorom koristili samo jedan prekida koji bi direktno kontrolisao
napajanje motora, motor bi po dolasku elektrine energije nastavio da radi, zato to je prekida ostao
ukljuen, to moe biti kritino sa stanovita bezbednosti.
Start/stop kolo se moe realizovati i uz pomo naredbi OTL i OTU, kao to je prikazano na slici.
Uoimo da su sada oba ulaza, Start i Stop, sa normalno-otvorenim kontaktima i da se obe naredbe
OTL i OTU odnose na isti izlaz, Y1. Postavljanjem ulaza Start na 1, izvrava se naredba OTL, koja
postavlja izlaz Y1 na 1 (Y1 se setuje), koji ostaje 1 i kada se Start vrati na 0. Da bi se izlaz Y1
postavio na 0 (tj. resetovao), potrebno je postaviti Stop=1, to aktivira naredbu OTU. Izlaz Y1
zadrava vrednost 0 i nakon postavljanja ulaza Stop na 0.

Sl. 4-12 Realizacija start/stop kola pomou naredbi OTL i OTU.

U reenju sa Sl. 4-12, kritina situacija je ona kada su oba prekidaa, Start i Stop, zatvorena (=1).
Naime, ovakva situacija nesme da se javi na ulazu, jer pod tim uslovom kolo moe poeti da osciluje.
Da bi se predupredilo ovakvo neeljeno ponaanje, leder program sa Sl. 4-12 moe se proiriti XIC
naredbom u prvom rangu koja e spreiti da pri Start=1 uslov postane taan ako je Stop=1 (Sl. 4-13).
Oigledno, u reenju sa Sl. 4-13 ulaz Stop ima vii prioritet, tako da se pri Start=Stop=1 kolo resetuje.

Sl. 4-13 Start/stop kolo koje reava problem Start=Stop=1.

41

Primeri

4.5

Primeri

Primer 1. Napisati leder program za PLC koji zamenjuje elektrino kolo prikazano na Sl. 4-14, u
kome se pomou prekidaa vri paljenje i gaenje sijalice. Kao to se vidi, sijalica S e svetleti kada je
zatvoren prekida P1 i jedan od prekidaa P2 ili P3.

Sl. 4-14 Elektrono kolo.

Reenje: Za formiranje programa neophodno je raspolagati informacijom o vrsti prekidaa kao i


nainu njihovog vezivanja za U/I modul. Neka su P1, P2 i P3 tasteri, pri emu su P1 i P3 u normalnom
stanju otvoreni, a P2 je u normalnom stanju zatvoren. To znai da e pritisak na P1 ili P3 dati digitalni
signal koji predstavlja logiku jedinicu, dok e pritisak na P2 dati logiku nulu. Predpostavimo da su
prekidai P1, P2 i P3 kao i sijalica S prikaeni na kombinovani digitalni U/I modul koji je smeten u
slot 1 PLC-a. Pretpostavimo nadalje da se linije sa prekidakih kola dovode na pinove 0, 1 i 2 ulaznog
dela modula, dok je kolo u kome se nalazi sijalica vezano za pin 0 izlaznog dela modula. Shodno
tome, adrese prekidaa P1, P2 i P3 su respektivno I:1/0, I:1/1 i I:1/2, dok je adresa sijalice O:1/0.
U cilju formiranja levog dela ranga treba uoiti da je uslov za paljenje sijalice da se istovremeno
pritisne taster P1 i jedan od tastera P2 ili P3. Budui da su tasteri P1 i P3 normalno otvoreni, pritisak na
njih dovodi do zatvaranja odgovarajuih prekidakih kola, tako da se moe detektovati pomou XIC
naredbe, koja e dobiti vrednost istinit kada su vrednosti odgovarajuih bitova u slici ulaza
postavljene na 1. Pritisak na taster P2 koji je normalno zatvoren, dovodi do otvaranja njegovog
prekidakog kola, to znai da se moe detektovati pomou XIO naredbe, koja e dobiti vrednost
istinit kada je vrednost odgovarajueg bita u slici ulaza postavljena na 0. Konano, kako se nad
tasterima 2 i 3 zahteva logika ILI opreracija, to odgovarajue naredbe moraju biti vezane paralelno.
Ispunjenost uslova treba da obezbedi da se na izlaznom pinu generie naponski signal koji e da
prouzrokuje paljenje sijalice. Ovaj zahtev se moe ostvariti OTE naredbom. U skladu sa time
odgovarajui rang leder programa ima izgled kao na Sl. 4-15.

Sl. 4-15 Rang leder programa koji realizuje elektrino kolo.

Svakom bitu koji se koristi u leder programu moe se pridruiti simboliko ime. U principu nema
nikakvih posebnih pravila u pogledu davanja imena. Ipak praksa je pokazala da je pogodno da se ime
formira tako da to vernije opisuje fiziko znaenje signala na koji se odnosi. Pored toga, u cilju lake
provere ispravnosti programa, pogodno je da se ime formira tako da odgovara stanju pri kome bit ima
vrednost 1. Potujui taj princip, u ovom primeru je bitu I:1/0 dato ime p1_pritisnut, dok je bitu I:1/1
dato ime p2_nepritisnut. U skladu sa time prva XIC naredba koja ispituje vrednost bita na adresi I:1/0
dobie vrednost istinit ako bit ima vrednost 1 to znai da taster P1 jeste pritisnut. Isto tako XIO
naredba koja ispituje vrednost bita na adresi I:1/1 dobie vrednost istinit ukoliko bit nema vrednost 1,
to znai da taster P2 nije nepritisnut.
Opisani sistem e ispravno raditi samo dotle dok se odgovarajui tasteri dre pritisnuti. Naime, im se
taster otpusti on se vraa u normalni poloaj i u sledeem sken ciklusu, uslov vie nee biti ispunjen,

42

Leder programiranje

pa e se sijalica ugasiti. Prirodno je meutim da se zahtev postavi tako da sijalica nastavi da svetli i
posle otputanja tastera.
Postavljeni zadatak moe se reiti tako to e se na neki nain upamtiti da je uslov za paljenje sijalice
u nekom trenutku bio ispunjen. U tu svrhu moe se na izlaznom delu ranga umesto OTE naredbe
postaviti OTL naredba koja e obezbediti trajno postavljanje (leovanje) izlaza (Sl. 4-16).

Sl. 4-16 Trajno postavljanje izlaznog bita

Umesto korienjem naredbe OTL isti efekat se moe postii i postupkom samodranja. Naime, ako
se u delu ranga koji predstavlja uslov doda jo jedna paralelna grana sa XIC naredbom u kojoj se
ispituje upravo bit koji se postavlja kao izlaz tog ranga (Sl. 4-17) onda e, im se pritiskanjem tastera
uslov prvi put ispuni, odgovarajui bit biti postavljen na 1, to znai da e u sledeim sken ciklusima
naredba u paralelnoj grani stalno imati vrednost istinit, pa se vrednost izlaznog bita nee menjati sa
promenom stanja tastera.

Sl. 4-17 Postupak samodranja

Potrebno je istai da su poslednja dva primera formirana tako da e sijalica kad se jedanput upali
nastaviti da svetli neogranieno dugo.

Sl. 4-18 Paljenje i gaenje sijalice pomou naredbi za leovanje

Da bi se omoguilo i gaenje sijalice neophodno je da se sistemu doda jo jedan taster (Stop).


Pritiskom na ovaj taster, jedanput upaljena sijalica, bi bila iskljuena. Ako se pretpostavi da je ovaj
taster normalno otvoren i da je vezan na pin 3 istog ulaznog modula, onda se postavljeni zadatak
moe realizovati na nain koji je prikazan na slikama Sl. 4-18 i Sl. 4-19. Ovde je na red sa delom ranga
kojim se ostvaruje paljenje sijalice, vezan uslov kojim se proverava da li Stop taster nije pritisnu. Sve
dok Stop taster nije pritisnut, vrednost tog dela uslova je istinita, dakle on ne utie na ponaanje
sijalice. Kad se Stop taster pritisne, vrednost tog dela uslova postaje neistinita, a budui da je to redni

43

Primeri

(serijski) uslov, i vrednost celog ranga postaje neistinita, pa se aktivira se naredba unletch (Sl. 4-18),
odnosno izlazni bti se OTE naredbom postavlja na 0 (Sl. 4-19).

Sl. 4-19 Paljenje i gaenje sijalice pomou postupka samodranja

Naravno, ceo problem oko paljenja i gaenja sijalice bio bi reen rangom koji je prikazan na Sl. 4-15,
da su umesto tastera korieni dvopoloajni prekidai.
Primer 2. Sl. 4-20 prikazuje pokretnu traku (dvosmernu). Traka se pokree pomou dva motora, M1 i
M2. Kada je M1 ukljuen, a M2 iskljuen, traka se kree u smeru napred; kada je M1 iskljuen, a
M2 ukljuen, traka se kree u smeru nazad, a kada su oba motora iskljuena, traka se ne kree.
Traka se pokree u eljenom smeru pritiskom na jedan od tastera: F, za napred, i R za nazad, oba sa
normalno otvorenim kontaktima (NO). Takoe, postoji i taster STOP (sa normalno zatvorenim
kontaktima) koji slui za momentalno zaustavljanje trake. Smer kretanja trake se moe promeniti
samo ako traka stoji. To znai da se traka mora zaustaviti pre nego to se prokene u suprotnom smeru.

Sl. 4-20 Sistem pokretne trake.

Leder dijagram koji regulie rad opisanog sistema prikazan je na Sl. 4-21. Radi se o tzv. naprednazad kolu. Postoje dva ranga, od kojih svaki upravlja jednim izlazom (motorom). U okviru svakog
ranga realizovano je samodranje (da bi traka nastavila da se kree i nakon otputanja tastera F ili R),
i zakljuavanje (onemoguava da se aktivira izlaz iz datog ranga, ako je izlaz onog drugog ranga
aktivan - onemoguava naglu promenu smera kretanja trake). Takoe, pritiskom na taster STOP
njegovi kontakti se otvaraju, to raskida oba ranga i iskljuuje oba motora.

Sl. 4-21 Leder dijagram napred-nazad kola.

44

Leder programiranje

Na Sl. 4-22 je prikazana jedna mogua ema veze, koja pokazuje spregu tastera i motora sa ulaznim i
izlaznim modulom PLC sistema. Ulazni modul je smeten u slot 1, a izlazni u slot 2. Takoe, sa slike
vidimo na koje pinove su povezani tasteri STOP, F, i R, odnosno motori M1 i M2.

Sl. 4-22 ema veze

Shodno emi veze u sledeoj tabeli su navedene njihove odgovarajue adrese:


Signal
STOP
F
R
M1
M2

Ulaz/Izlaz
Ulaz
Ulaz
Ulaz
Izlaz
Izlaz

Adresa
I:1/0
I:1/1
I:1/2
O:2/0
O:2/1

Na osnovu poznatih adresa ulaza i izlaza u mogunosti smo da nacrtamo leder dijagram u konanom
obliku, sa navedenim fizikim adresama umesto simbolikih imena ulaza i izlaza (Sl. 4-23).
Slot 1

Slot 2

I:1

I:1

O:2

O:2

1
O:2

0
I:1

I:1

O:2

O:2

1
O:2

1
Sl. 4-23 Leder dijagram napred-nazad kola sa fizikim adresama ulaza i izlaza.

Primer 3. Viestruko start-stop kolo.


Sistem za ventilaciju u nekoj hal se moe ukljuivati/iskljuivati sa tri razliita mesta. Na svakom
mestu postoji start i stop taster. Start tasteri su sa normalno otvorenim (NO), a stop sa normalno
zatvorenim (NC) kontaktima. Kreirati leder dijagram.
Ulazi u PLC su tri para tastera: START_i, STOP_i, i=1, 2 i 3. Izlaz iz PLC-a je signal V koji upravlja
sistemom za ventilaciju. Leder dijagram je prikazan na Sl. 4-24. Uoimo paralelnu vezu start i rednu
vezu stop tastera. Stop tasteri su sa NC tipa i u nepritisnutom stanju su zatvoreni, tj. daju logiku
vrednost 1. Sa druge strane, kontakti start tastera su NO tipa i nepritisnutom stanju su otvoreni, tj. daju
logiku vrednost 0. To znai da pritisak na bilo koji start taster pobuuje izlaz V, to ima za posledicu
aktiviranje samodranja. Pritisak na bilo koji stop taster raskida uslov ranga i iskljuuje izlaz V.

45

Primeri

Sl. 4-24 Leder dijagram za primer 3.

Primer 4. Hidraulinim cilindrom se upravlja pomou dva jednosmerna solenoida, A i B. Solenoid A


upravlja ventilom za dovod komprimovanog vazduha kojim se cilindar izvlai, dok slolenoid B
upravlja ventilom za dovod vakuuma kojim se cilindar uvlai (Sl. 4-25). Postoje dva granina
prekidaa, GMIN i GMAX, za indikaciju krajnjeg uvuenog (GMIN) i krajnjeg izvuenog poloaja
cilindra. Izvlaenje cilindra se startuje tasterom PUSH, a uvlaenje tasterom PULL (oba NO tipa).
Cilindar se uvek izvlai do krajnje izvuene pozicije (GMAX) kada se ukida dovod komprimovanog
vazduha. Slino, cilindar se uvek uvlai do krajnje uvuene pozicije (GMIN), kada se ukida dovod
vakuuma. Dakle, ulazi u PLC sistem su: tasteri PUSH i PULL i granini prekidai GMAX i GMIN,
dok su izlazi: SolA (za pobudu solenoida A) i SolB (za pobudu solenoida B). Realizovati leder
dijagram. Obezbediti da oba ventila nikada ne budu istovremeno otvorena.

Sl. 4-25 Hidraulini cilindar

Leder dijagram je prikazan na Sl. 4-26. Dva ranga realizuju start-stop kola za pobudu solenoida A i B.
Start signal u prvom rangu je PUSH, a stop GMAX. U drugom rangu, start signal je PULL, a stop
GMIN. Ispitivanje izlaznog bita SolB u prvom i izlaznog bita SolA u drugom rangu obezbeuje
zakljuavanje odgovarajueg ranga za vreme dok traje pobuda izlaza u onom drugom rangu.

Sl. 4-26 Leder dijagram za primer 4.

Primer 5. Primer industrijskog procesa - poluautomatska presa za buenje (Sl. 4-27).


U ovom primeru razmotriemo postupak kreiranja leder programa za jedan tipini industrijski proces.
Postupak ini nekoliko koraka. Prvo, neophodno je razjasniti i razumeti nain rada, odnosno tok
odvijanja procesa, kao i ulogu svih senzora i aktuatora pomou kojih se proces nadgleda i preko kojih
se procesom upravlja. Nakon toga, u drugom koraku, potrebno je definisati sekvencu operacija koje
ine jedan ciklus rada procesa. Tipino, proces se startuje, obavi jedan ciklus rada, a zatim se

46

Leder programiranje

automatski resetuje i vraa u poetni poloaj, spreman za novo startovanje. U treemo koraku, treba
identifikovati sve ulaze i izlaze, tj. signale koji se povezuju na ulazne i izlazne PLC module, a potiu
od prikljuenih senzora i aktuatora. Takoe, treba definisati fizike adrese ulaza i izlaza. Konano, u
etvrtom koraku, kreira se leder dijagram.
Korak 1 (Opis sistema je tipino obuhvaen tekstom zadatka i prateom slikom). Poluautomatska
presa za buenje prikazana je na Sl. 4-27. Presu ine: (a) pokretna builica, (b) zatitni, pokretni oklop
i (c) podloga za postavljanje predmeta koji se bui. Builica poseduje svoj motor koji okree burgiju
(signal MotB), a sputa se nanie pomou pneumatskog cilindra. Ventil za dovod/isputanje
komprimovanog vazduha u/iz pneumatskog cilindara se otvara/zatvara pomou jednosmernog
solenoida (signal SolB). Pojednostavljeno, aktiviranjem signala SolB, (SolB=ON), builica se sputa
nanie; dekativiranjem signala SolB (SolB=OFF), builica se pod dejstvom opruge, vraa u prvobitni,
gornji poloaj. Slino vai i za zatitni oklop, koji takoe ima svoj pneumatski cilindar za sputanje,
kojim se takoe upravlja jednosmernim solenoidom (signal SolO; SolO=ON - oklop se sputa; SolO
=OFF - oklop se podie pod dejstvom opruge u polazni, gorni poloaj). U sastavu prese su i tri
granina prekidaa: GPOD - za indikaciju krajnjeg donjeg poloaja zatitnog oklopa; GPPP - za
indikaciju da je na podlogu za buenje postavljen predmet i GPBD - za indikaciju da je burgija probila
predmet.

Sl. 4-27 Poluautomatska presa za buenje.

Presom se upravlja preko komandnog pulta na kome se nalaze etiri tastera i jedna, tzv. pilot svetiljka
(PS). MSTART i MSTOP su master tasteri, pomou kojih se celokupan sistem ukljuuje/iskljuuje.
Pritiskom na taster MSTART sistem se ukljuuje, a svetiljka PS pali; pritiskom na taster MSTOP
sistem se iskljuuje, a svetiljka PS gasi i pri tom trenutno prekida pobuda svih aktuatora. Pojedinani
ciklusi buenja se startuju istovremenim pritiskom na dva tastera, LSTART i RSTART. Dejstvo ovih
tastera je omogueno samo dok je sistem ukljuen (PS svetli), a na mestu za buenje je prisutan
predmet za buenje (aktivan je granini prekida GPPP).
Radi postizanja vee bezbednosti u radu, predvieno je da se pre ukljuivanja motora builice najpre
spusti zatitni oklop, uz zahtev da za sve vreme sputanja zatitnog oklopa oba tastera, LSART i
RSTART moraju biti pritisnuti. Kada se oklop, pod dejstvom pneumatskog cilindra spusti u krajnji
donji poloaj (aktivan je granini prekida GPOD), builica se automatski ukljuuje, a tasteri
LSTART i RSTART mogu da se otpuste. Ciklus buenja se zavrava kada se aktivira granini
prekida GPBD, to treba da iskljui pobudu solenoida, a builica i zatiti oklop se, pod dejstvom
opruga, vraaju u polazni, gornji poloaj.
Korak 2. Poto smo razjasnili nain rada sistema, potrebno je kreirati listu operacija koje ine jedan
ciklus rada. Ova lista pomoie nam da kreiramo leder dijagram. U konkretnom primeru, sled
operacija je sledei:
1. Postaviti predmeta na mesto za buenje, tako da aktivira GPPP.
2. Pritisnuti istovremeno tastere LSTART i RSTART.
47

Primeri

3.
4.
5.
6.

Zatitni oklop se sputa i kada stigne u donji poloaj aktivira granini prekidaa GPOD.
Builica poinje da se okree i sputa.
Burgija probija predmet i aktivira granini prekida GPBD.
Aktuatori se iskljuuju, a builica i zatitni oklop se podiu u gornji poloaj.

Korak 3. U ovom koraku, treba identifikovati sve ulaze i izlaze sistema i definisati njihove fizike
adrese. Ispod je data tabela ulaza/izlaza za konkretan primer:
Opis
Master start taster
Master stop taster
Levi start taster builice
Desni start taster builice
Granini prekida donjeg poloaja oklopa
Granini prekida za predmet na poziciji buenja
Granini prekida donjeg poloaja builice
Pilot svetlo
Motor builice
Solenoid pneumatskog cilindra builice
Solenoid pneumatskog cilindra zatitnog oklopa

Naziv
MSTART
MSTOP
LSTART
RSTART
GPOD
GPPP
GPBD
PS
MotB
SolB
SolO

Ulaz/Izlaz
Ulaz
Ulaz
Ulaz
Ulaz
Ulaz
Ulaz
Ulaz
Izlaz
Izlaz
Izlaz
Izlaz

Fizika adresa
I:1/0
I:1/1
I:1/2
I:1/3
I:1/4
I:1/5
I:1/6
O:2/0
O:2/1
O:2/2
O:2/3

Korak 4. U ovom trenutku trebalo bi da imamo jasnu i preciznu predstavu o nainu rada sistema i o
svim ulazim i izlazima i njihovoj ulozi, to je preduslov za uspeno kreiranje leder dijagrama.
Leder dijagram za upravljanje poluautomatskom builicom prikazan je na Sl. 4-28. Rang 1 upravlja
pilot svetlom (PS), koje se pali tasterom MSTART, a gasi tasterom MSTOP. U ovom rangu je
realizovano samodranje, tako da svetlo ostaje upaljeno i nakon otputanja tastera MSTART. Rang 2
upavlja solenoidom zatitnog oklopa, a rand 3 solenoidom i motorom builice. Uoimo da isljuenje
pilot svetla, tasterom MSTOP, takoe iskljuuje i sve aktuatore, ako su ukljueni, zato to se bit PS
nalazi u uslovu ranga 2, a izlazni bit SolO u uslovu ranga 3 (PS=OFF, garantuje
SolO=SolB=MotB=OFF). Solenoid oklopa (SolO) se aktivira pod uslovom da je na podlogu za
buenje postavljen predmet (GPPP=ON) i da su pritisnuta oba tastera LSTART i RSTART. U
trenutku kada se oklop spusti u krajnji donji poloaj (GPOD=ON) aktivira se samodranje u rangu 2,
koje obezbeuje da e SolO ostati aktivan i ako se tasteri LSTART i RSTART otpuste (oklop je
sputen i radnik moe slobodno da skloni ruke sa tastera). Takoe, u trenutku kada se oklop spusti do
kraja (GPOD=ON) aktiviraju se motor i solenoid builice (rang 3). Kada builica probije predmet,
aktivirae se granini prekida GPBD=ON, to raskida uslov ranga 2 i iskljuuje pobudu solenoida
zatitnog oklopa (SolO=OFF). SolO=OFF u rangu 3 iskljuuje motor i solenoid builice
(SolB=MotB=OFF). Bez pobude solenoida, zatitni oklop i builica se pod dejstvom opruga vraaju u
prvobitni, gorni poloaj. Time je jedan ciklus buenja zavren, i sistem je spreman za novi ciklus.

Sl. 4-28 Leder dijagram poluautomatske builice.

48

Leder programiranje

Primer 6. Kreirati leder dijagram za PLC koji upravlja sistemom sa Sl. 4-29 (maina za peatiranje
kutija). Postavljanjem kutije na pokrentu traku, na poziciju 1 (aktivan je granini prekida GP1), traka
se automatski pokree (ukljuuje se motor, M=ON) i prenosi kutiju do pozicije 2. Kada kutija stigne
na poziciju 2 (granini prekida GP2 je aktivan), traka se zaustavlja (M=OFF), da bi se kutija
peatirala. Za peatiranje se koristi poseban mehanizam kojim se upravlja pomou dva signala UP i
DN. Za DN=ON, klip na ijem kraju je peat se sputa, a za UP=ON podie. Za indikaciju graninih
pozicija klipa se koriste dva granina prekidaa: GPKG (klip je u krajnjem gornjem poloaju) i GPKD
(klip je u krajnjem donjem poloaju). Dakle, kada kutija stigne na poziciju 2, aktivira se signal DN
sve dok se klip ne spusti do nivoa prekidaa GPKN. Zatim se DN iskljuuje, a ukljuuje UP, da bi se
klip vratio u gornji poloaj, do nivoa prekidaa GPKG. Nakon obavljenog peatiranja, traka se
ponovo pokree, kako bi se kutija prenela do pozicije 3 (granini prekida GP3). U tom momentu,
traka se ponovo zaustavlja, a kutija se manuelno uklanja sa trake.

Sl. 4-29 Maina za peatiranje kutija.

Definiimo najpre sekvencu operacija u toku jednog ciklusa rada sistema:


1. Postaviti kutiju na poziciju 1, tako da aktivira granini prekida GP1.
2. Motor se ukljuuje i traka se kree sve dok kutija ne stigne na poziciju 2 i aktivira GP2.
3. Motor se iskljuuje, a signala DN se aktivira, to sputa klip do pozicije graninog prekidaa
GPKD.
4. Pobuda DN se iskljuuje, a UP ukljuuje to podie klip do nivoa graninog prekidaa
GPKG.
5. Pobuda UP se iskljuuje, a motor pokretne trake ukljuuje, ime se kutija prenosi do pozicije
3 (GP3).
6. Motor se iskljuuje
7. (Pretpostavka je da e peatirana kutija biti manuelno sklonjena sa pozicije 3, pre nego to se
na poziciju 1 postavi nova - korak 1).
Zadatak emo reiti tako to emo najpre, za svaki izlazni signal (M, DN i UP), da definiemo uslove
pod kojim se taj signal aktivira i deaktivira, a zatim emo izvedene uslove iskoristiti za kreiranje
uslova rangova kojima se signal setuje (naredbom OTL), odnosno resetuje (naredbom OTU).
Motor (signal M) se ukljuuje pod sledeim uslovima:

kutija je postavljena na poziciju 1: GP1, ili


zavreno peatiranje - tj. kutija je na poziciji 2, pobuda UP je ukljuena i klip se upravo vratio u
gornji poloaj: GP2UPGPKG

Dakle, objedinjeni logiki uslov za setovanje signala M glasi:


GP1 + GP2UPGPKG
Motor se iskljuuje pod sledeim uslovima:

kutija je stigla na poziciju 2 - tj. kutija je na poziciji 2, pobuda UP je iskljuena i klip je u


gornjem poloaju: GP 2 UP GPKG ili
kutija je na poziciji 3: GP3

49

Primeri

Objedinjeni uslov za iskljuenje motora glasi:


GP 2 UP GPKG + GP3

Signal za sputanje klipa (DN) se setuje pod uslovom:

kutija je na poziciji 2, klip je u gornjem poloaju i signal za pobudu motora nije aktivan:
GP 2 GPKG M

Signal za sputanje klipa (DN) se resetuje pod uslovom:

klip je stigao u krajnji donji poloaj: GPKD

Signal za podizanje klipa (UP) se setuje pod uslovom:


klip je stigao u krajnji donji poloaj: GPKD
Signal za podizanje klipa se resetuje pod uslovom:
klip je u krajnjem gornjem poloaju i kutija je napustila poziciju 2: GPKG GP 2
Sa izvedenim uslovima za setovanje i resetovanje izlaznih signala, kreiranje leder dijagram je
trivijalan zadatak (Sl. 4-30).

Sl. 4-30 Leder dijagram za problem 6.

Primer 7. Relizovati leder dijagram kontrolera motora (Sl. 4-31) prema sledeim zahtevima:
Ulazi u PLC su:
SW0 - glavni on/off prekida. (Kada je OFF, svi izlazi su OFF).
SW1 - start taster motora. Normalno-otvoren.
SW2 - stop taster motora. Normalno-zatvoren.
SW3 - senzor temperature. SW3=ON - temperatura motora je nia od granine;
SW3=OFF - temperatura motora je via od granine.
Izlazi iz PLC-a su:
G - zelena svetiljka. (G = ON, svetiljaka svetli)
R - crvena svetiljka. (R = ON, svetiljaka svetli)
M - pobuda motora. (M = ON, motor radi)
50

Leder programiranje

Naina rada:
Kada je temperatura motora normalna, zelena svetiljaka svetli, ak iako je motor
zaustavljen.
Kada se motor pregreje treba zaustaviti motor i upaliti crvenu svetiljku, koja ostaje
upaljena sve dok se motor ne ohladi.
Kada se ohladi, motor se automatski pokree, osim ako u meuvremenu nije pritisnut
stop taster (SW2).

Sl. 4-31 Kontroler motora za problem 7

Reenje: Leder dijagram je prikazan na Sl. 4-32. Uveden je pomoni bit RUN, koji se
postavlja start-stop kolom iz ranga 1. RUN predstavlja dozvolu rada sistema. RUN se setuje
start tasterom, pod uslovom da je glavni prekida u poloaju ON, a resetuje pritiskom na
taster stop ili prebacivanjem glavnog prekidaa u poloaj OFF. Rang 2 definie uslov pod
kojima je aktivan motor, rang 3 uslov pod kojim je upaljena crvena, a rang 4 uslove pod
kojima je upaljena zelena sijalica.

Sl. 4-32 Leder dijagram za problem 7

Primer 8. Kreirati leder program za upravljanje hemijskim procesom prema sledeim


zahtevima. Proces poinje pritiskom na taster START, i odvija se u sledeih pet koraka:
-

Nalivanje tenosti Q1 do nivoa H1.


Grejanje do temperature T1.
Nalivanje tenosti Q2 do nivoa H2.
Meanje i hlaenje do temperature T2.
Isputanje smee.

Sl. 4-33

51

Primeri

Ulazi i izlazi sistema su:


START

Start prekida

SH0

Senzor nivoa tenosti postavljen na dno rezervoara

SH1

Senzor nivoa tenosti postavljen u rezervoaru na visini


H1.

SH2

Senzor nivoa tenosti postavljen u rezervoaru na visini


H2.

V1

Ventil za dovod tenosti Q1.

V2

Ventil za dovod tenosti Q2.

V3

Ispusni ventil rezerovara.

TS1

Temperaturski senzor podeen na temp. T1

ON - temperatura vie od T1 (T2)

TS2

Temperaturski senzor podeen na temp. T2

OFF - temperatura nia od T1 (T2)

Motor mealice

Greja

ON - senzor prekriven tenou


OFF senzor nije prekriven tenou

ON ventil otvoren
OFF zatvoren

Reenje:
Proces ini niz koraka (sekvenca operacija), a
u svakom koraku aktivan je jedan od aktuatora
(izlaznih signala). Prvi korak se inicira
pritiskom na taster START, dok se svaki
sledei korak inicira uslovom koji zavrava
prethodni korak. Na primer, korak 1 (punjenje
do nivoa H1) zavrava se kada tenost dostigne
nivo H1. Identian uslov (nivo tenosti je H1)
predstavlja znak za poetak drugog koraka
(grejanje do temperature T1). Slino, uslov
koji prekida korak 2 (temperatura je dostigla
T2 0C) je u isto vreme i uslov koji zapoinje
(startuje) korak 3 (nalivanje tenosti do nivoa
H2) itd.
Leder dijagram je prikazan na Sl. 4-34. Kao to
vidimo, dijagram sadri 4 ranga, po jedan za
svaki izlazni signal. Svaki rang realizuje
start/stop kolo, gde je uslov za start
identian uslovu za stop iz prethodnog ranga.

Sl. 4-34 Leder dijagram za problem 8

52

Leder programiranje

Primer 9. U TV studiju nalaze se tri pulta za


tri uesnika u kvizu. Na svakom pultu je
postavljen jedan taster i jedna sijalica.
Takmiarima se postavlja pitanje, a onaj ko
prvi pritisne svoj taster dobija priliku da d
odgovor. Taster koji je prvi pritisnut pali
sijalicu tog takmiara koja ostaje upaljena
sve dok voditelj kviza ne pritisne taster za
resetovanje. Sijalice preostala dva takmiara
ostaju ugaene bez obzira da li su oni
pritisnuli svoje tastere ili ne. Realizovati
odgovarajui leder dijagram.
Reenje: Ulazi u PLC sistem su: tasteri
takmiara, TT1, TT2 i TT3, i taster voditelja
TV. Izlazi PLC sistema su tri sijalice
takmiara: ST1, ST2 i ST3.

Sl. 4-35 Leder dijagram za problem 9

Primer 10. Realizovati leder dijagram upravljake jedinice lifta koji se koristi za prenos
paketa sa prizemlja na prvi sprat (Sl. 4-36).
Lift se podie/sputa pomou hidraulinog cilindra. Da bi se lift podigao potrebno je otvoriti
ventil VUP (VUP=ON), a da bi se spustio ventil VDN (VDN=ON). Sve dok su oba ventila
zatvorena, lift miruje na zateenoj poziciji.
Pozicija lifta se detektuje pomou dva granina prekidaa PUP i PDN. Gornji granini
prekida se zatvara (PUP=ON) kada lift stigne na prvi sprat, a donji (PDN=ON) kada se lift
spusti u prizemlje.
Prisustvo paketa na platformi lifta se detektuje pomou optikog senzora OS. Senzor prelazi
u stanje ON kada se na platformu stavi paket, a vraa u stanje OFF kada se sa platforme
skloni paket.
Inicijalno, lift je u prizemlju. Kada se na platformu lifta postavi paket (korak (1)), lift se
podie na prvi sprat (kork (2)) i ostaje na toj poziciji sve dok se paket ne skloni s platforme
(korak (3)), a zatim se sputa u prizemlje (korak (4)).

Sl. 4-36 Upravljaka jedinica lifta

Reenje:
Rang 1: Ventil VUP se otvara kada je platforma je u prizemlju (PDN=ON) i paket stavljen na
platformu (OS=ON)
Rang 2: Ventil VUP se zatvara kada platforma stigne na prvi sprat (PUP=ON)
Rang 3: Ventil VDN se otvara kada je platforma na prvom spratu (PUP=ON) i paket se skloni
s platforme (OS=OFF)

53

Primeri

Rang 4: Ventil VDN se zatvara kada je platforma u prizemlju (PDN=ON).

Sl. 4-37 Leder dijagram za problem 10

Primer 11. Realizovati funkciju T flip-flopa u leder jeziku. Ulaz je T, a izlaz Q. Svaka
promena ulaza T sa 0 na 1 menja (komplementira) stanje izlaza Q. (Primena OSR naredbe).
Reenje: Tev je pomoni bit, iz interne memorije PLC kontrolera, koji je jednak 1 samo u
onim sken ciklusima kada se T menja sa sa 0 na 1. U svim ostalim sken ciklusima, Tev je 0.
Polazei od injenice da se leder program izvrava rang-po-rang, u redosledu kako su rangovi
poreani u dijagramu, moe se uiniti da reenje sa Sl. 4-38 nije ispravno. Pretpostavimo da je
Q=0 i da je T upravo postalo 1. U prvom rangu, postavlja se Tev=1; u drugom, zbog Tev=1 i
Q=0, Q se setuje i postaje Q=1 i u treem rangu, zbog Tev=1 i sada Q=1, Q se resetuje i vraa
na Q=0 ! Meutim, ovakvo zakljuivanje nije dobro iz razloga to su efekti svih akcija
uinjenih na bitovima u toku jednog programskog skena vidljivi tek na kraju tog sken ciklusa.
Drugim reima, sva postavljanja vrednosti bitova uinjena u jednom prolasku kroz leder
dijagram se odlau do kraja tog sken ciklusa. Ili, leder program u tokom jednog sken ciklusa
barata sa vrednostima koje su bitovi imali na poetku sken ciklusa, bilo da se ti isti bitovi
modifikuju leder programom ili ne. Model izvravanja leder programa je slian modelu
izvravanja VHDL procesa, kod kojih se takoe, kao to znamo, promene uinjene nad
signalima u toku jednog izvrenja procesa prenose na signale tek na kraju procesa. U
konkretnom primeru to znai da u drugom rangu Tev=1 i Q=0 ne setuje Q istog momenta,
ve e se setovanje obaviti tek kada se izvre svi rangovi, a da e se u uslovu treeg ranga
koristiti stara vrednost Q-a, tj. vrednost koju je bit Q imao na poetku sken ciklusa, tj. Q=0.
Zbog toga e uslov u treem rangu biti netaan, konani efekat na kraju sken ciklusa e biti
Q=1 !

Sl. 4-38 Leder dijagram za problem 11

Primer 12. Sistem za upravljanje garanim vratima (Sl. 4-39).


Vrata se sputaju/podiu pomou dvosmernog motora. Motorom se upravlja pomou dva
signala MotV i MotD. Za MotV=ON motor je ukljuen, a za MotV=OFF iskljuen. MotD
odreuje smer rotacija motora, tako da se za MotD=ON vrata sputaju, a za MotD=OFF
podiu.
Vrata se mogu spustiti/podignuti pomou tastera na zidu u garai (TZ) ili pomou tastera na
daljinskom upravljau. Signal iz daljinskog upavaljaa se prenosi do prijemnika, a izlaz iz
prijemnika (DU) i taster u garai su ravnopravni u smislu uticaja na rad sistema.
54

Leder programiranje

Sl. 4-39 Sistem za upravljanje garanim vratima

Pritisak na bilo koji od dva taster za vreme dok su vrata u pokretu, zaustavlja vrata. Sledei
pritisak ponovo pokree vrata, ali u suprotnom smeru.
Granini prekidai GG i GD slue za indikaciju krajnje gornje (GG) i krajnje donje (GD)
pozicije vrata. Vrata, kada su jednom pokrenuta, sputaju se do nivoa prekidaa GD, odnosno
podiu do nivoa prekidaa GG, osim ako sputanje/podizanje nije prekinuto pritiskom na
taster (TZ ili DU).
Dakle, ulazi u PLC sistem su: TZ, DU, GG i GD, a izlazi MotV i MotD.
Reenje:
Zadatak emo reiti tako to emo najpre identifikovati dogaaje koji se javljaju u sistemu, a
zatim emo definisati kako dogaaji utiu na rad (stanje) motora. Dogaaj je promena stanja
nekog ulaznog signala. Od interesa su sledea dva dogaaja:
-

Pritisnut taster (TZ ili DU).

Aktiviran granini prekida (GG ili GD)

Razmatrano na apstraktnom nivou, dogaaj nema trajanje, tj. moemo ga zamisliti kao
impuls beskonano kratkog trajanja koji ima dejstvo samo u trenutku kada se desio. Na
primer, nije od interesa stanje graninog prekidaa (0 ili 1) ve samo trenutak promene sa 0
na 1 (trenutka zatvaranja njegovih kontakta).
Dogaaji utiu na stanje sistema, tj. menjaju stanje izlaza, tako to setuju ili resetuju izlazne
signale. Na primer, dogaaj aktiviran granini prekida iskljuuje motor (tj. resetuje signal
MotV). Dejstvo dogaaja pritisnut taster je neto sloenije, jer zavisi od trenutnog stanja
sistema (da li vrata stoje, da li se sputaju ili podiu ili da li su u krajnjem gornjem ili
krajnjem donjem poloaju).
U leder jeziku, apstrakciju dogaaja moemo ostvariti pomoi naredbe OSR koja detektuje
rastuu ivicu uslova koji joj prethodi u rangu i postavlja bit, koji sledi u naredi akcije, na 1 u
trajanju od jednog sken ciklusa.
Leder dijagram je prikazan na Sl. 4-40. Prva dva ranga slue za detekciju dva dogaaja koja
su od interesa za upravljanje sistemom. Svakom dogaaju odgovara jedan pomoni bit (iz
interne memorije PLC kontrolera, tj. iz datoteke B). Bit dogaaja (Tev ili Gev) e imati
vrednost 1 samo u onom sken ciklusu kada se dogaaj desio.
Smer kretanja vrata se postavlja u trenutku ukljuena motora (Tev=ON i MotV=OFF), a da li
e smer biti postavljen na sputanje (MotD=ON) ili podizanje (MotD=OFF), zavisi od
dodatnih uslova (rangovi 3 i 4).

55

Primeri

Rang 3. Smer sputanje se postavlja (setovanje izlaznog bita MotD) ako su vrata u krajnjem
gornjem poloaju ili ako su prilikom podizanja vrata pre vremena zaustavljena (tj. GG nije
aktivan i smer je podizanje).
Rang 4. Smer podizanje se postavlja (resetovanje izlaznog bita MotD) ako su vrata u
krajnjem donjem poloaju ili ako su prilikom sputanja vrata pre vremena zaustavljena (tj.
GD nije aktivan i smer je sputanje).
Signali motora, MotV i MotD, se postavljaju pomou naredbi OTL i OTU. Setovanje,
odnosno resetovanje izlaza MotV i MotD uvek je inicirano dogaajima, tj. bitovima Tev i
Gev, a da li e se setovanje ili resetovanje desiti ili ne, dodatno zavisi od trenutnog stanja
sistema.
Rang 5. Motor se ukljuuje:
-

pritiskom na taster, pod uslovom da je motor iskljuen.

Rang 6. Motor se iskljuuje:


-

pritiskom na taster, pod uslovom da je motor ukljuen.

aktiviran granini prekida

Sl. 4-40 Leder dijagram za problem 12

56

Leder programiranje

4.6

Metod konanih automata

Veina sistema u oblasti automatskog upravljanja su sekvencijalni po svojoj prirodi. Tokom


noramalnog rada, sekvencijalni sistem prolazi kroz vie koraka, tj. faza ili stanja. U svakom stanju,
sistem se ponaa na drugaiji nain. Na primer, zamislimo semafor za regulisanje saobraaja. Jedno
stanje semafora moe biti ono kada je dozvoljen saobraaj u jednom, a drugo kada je dozvoljen
saobraaj u drugom smeru. Svakom stanju semafora odgovara jedna specifina kombinacija upaljenih
crvenih, utih i zelenih svetala, a stanja se izmenjuju po unapred utvrenom redosledu, tj. sekvenci.
Ova sekvenca moe biti fiksna (nepromenljiva), ali se moe i menjati pod dejstvom nekih specifinih
ulaznih uslova. Na primer, ako na semaforu postoji peako dugme, tada e redosled u kome se
izmenjuju semaforska svetla svakako zavisiti i od toga da li je dugme pritisnuto ili ne. Dakle, pod
stanjem se moe smatrati vremenski interval u kojem su izlazi sistema stabilni (ne menjaju se) i u
kome sistem reaguje na ulaznu pobudu na nain specifian za to stanje.
Sekvencijalni sistemi su po pravilu sloeni, a njihovo projektovanje je oteano obiljem detalja o
kojima treba voditi rauna. Zbog toga, direktno projektovanje, gde se na osnovu polazne specifikacije,
a bez neke vee razrade, odmah pristupa implementaciji (pisanju programa, ili crtanju leder
dijagrama) ima ogranien domet, a dobijena reenja esto nisu ispravna ili zahtevaju naknadno
temeljno testiranje i ispravljanje uinjenih graaka. Iz tog razloga, razvijeno je vie, u osnovi srodnih,
metoda projektovanja sekvencijalnih sistema kod kojih je naglasak upravo na razradi problema sa
ciljem da se, pre same implementacije, detaljnom analizom identifikuju karakteristike sistema, kao to
su stanja, prelazi i dogaaji, na osnovu kojih se kreira apstraktni model ponaanja sistema koji se
potom koristi za neposrednu implementaciju. Jedan od takvih metoda je upravo metod konanih
automata. Ovaj metod se primenjuje ne samo za opis ponaanja sistema automatskog upravljanja, ve
i u mnogim drugim oblastima, kao to je projektovanje upravljakih jedinica digitalnih sistema, ili
projektovanje konkurentnog softvera.
Model konanog automata zasnovan je na konceptu stanja i prelaza izmeu stanja. U svakom
trenutku, automat je u jednom od konanog broja svojih stanja. Pod dejstvom dogaaja ili uslova, a u
zavisnosti od tekueg stanja i trenutne vrednosti ulaza, automat prelazi u novo stanje i generie
odgovarajue izlaze. Konani automat se moe predstaviti dijagramom (grafom) stanja. U ovom
dijagramu, krugovima su predstavljena stanja, a strelicama (granama) prelazi izmeu stanja.
Dijagram stanja prikazan na Sl. 4-41(a) ima dva stanja State 1 i State 2. Ako je sistem u stanju State 1
i desi se dogaaj A, sistem prelazi u stanje State 2, inae ostaje u stanju State 1. Slino, ako je sistem
u stanju State 2 i desi se dogaaj B, sistem se vraa u stanje State 1, inae ostaje u stanju State 2.
Grane na Sl. 4-41(a) oznaene sa else vae u sluajevima kada ni jedan uslov naveden na izlaznim
granama iz dataog stanja nije ispunjen. Uobiajeno je da se ove grane ne crtaju, ve se
podrazumevaju, tj. ako ni jedan uslov koji vodi sistem u neko drugo stanje nije ispunjen, sistem ostaje
u zateenom stanju.
Dijagram stanja sa Sl. 4-41(a) moe se iskoristiti za modelovanje ponaanja kontrolera osvetljenja,
kao to je prikazano na Sl. 4-41(b). Stanjima su sada data imena koja ukazuju na reim rada sistema.
U stanju Light off svetlo je ugaeno, a u stanju Ligth on svetlo je upaljeno. Dogaaj koji prevodi
sistem iz stanja Light off u stanje Light on je prekida ukljuen ili detektovan pokret. Dogaaj koji
gasi svetlo, tj. prevodi sistem iz stanja Ligth on u stanje Light off je isteklo vreme od 1h ili

prekida iskljuen. Strelica usmerena ka stanju Light off i oznaena sa reset ukazuje na
poetno stanje sistema, tj. na stanje u koje e sistem biti postavljen kada pone sa radom.

(a)
(b)
Sl. 4-41. (a) Dijagram stanja sa dva stanja; (b) dijagram stanja kontrola osvetljenja.

57

Primeri

Pr. 4-1. Dijagram stanja upravljake jedinice lift


Razmatramo projektovanje upravljake jedinice lifta koja se koristi za prenos tereta izmeu prizemlja
i I sprata (Sl. 4-42). Sistem ine: a) pokretna platforma; b) start/stop prekida (X0; u poloaju start
vai X0=ON, a u poloaju stop X0=OFF); c) gore/dole prekida (X1; u poloaju gore vai X1=ON, a
u poloaju dole X1=OFF); d) dva senzora za indikaciju krajnjih pozicija platforme (S0 platforma je
u prizemlju; S1 platforma je na I spratu); e) motor za podizanje platforme (M1) i f) motor za
sputanje platforme (M0).
Prebacivanjem prekidaa X0 iz poloaja stop u poloaj start, platforma se sputa u prizemlje, bez
obzira na svoju trenutnu poziciju.
Prebacivanjem prikidaa X0 iz poloaja start u poloaj stop, platforma se trenutno zaustavlja.
Ako je prekida X1 u poloaju gore, platforma se podie na I sprat. Ako se u trenutku prebacivanja
prekidaa u poloaj gore plaforma kree nanie, platforma se sputa do prizemlja, a zatim podie na I
sprat.
Ako je prekida X1 u poloaju dole, platforma se sputa u prizemlje. Ako se u trenutku prebacivanja
prekidaa u poloaj dole, plaforma kree navie, platforma se podie do I sprata, a zatim sputa u
prizemlje.

Sl. 4-42 Lift.

Prvi i esto najvaniji korak u postupku projektovanja podrazumeva kreiranje dijagrama stanja. Pri
tome, prilikom identifikovanja stanja sistema, treba imati na umu sledee:

Stanja su stvar subjektivnog izbora projektanta. Razmatrajui isti sistem, dva projektanta mogu
doi razliitih skupova stanja i kreirati razliite dijagrame stanja, a da oba dijagrama budu
korektna.

Stanja su svojstvena konkretnom sistemu i imaju smisla samo u kontekstu sistema koji se opisuje.

Prethodna i sledea stanja nekog stanja nisu deo tog stanja. Drugim reima, ponaanje sistema u
nekom stanju ne zavisi od ponaanja sistema u nekom drugim stanjima, tj. sistem se u nekom
stanju S ponaa uvek isto, bez obzira iz kog stanja je sistem stigao u stanje S, odnosno u koje
naredno stanje e sistem prei.

Izmeu stanja treba da postoji jasno razgranienje (po funkcijama koje su im pridruene).

Podelu na stanja treba vriti na takav nain da u toku svakog stanja, sistem obavlja jednu
aktivnost koja ima svoj poetak i kraj (ta aktivnost moe biti i prosto ekanje da se neto desi).

Razmatrajui specifikaciju rada lifta, u mogunosti smo da identifikujemo sledeih pet stanja ovog
sistema:
Stanje
Iskljueno
Dole
Gore
Podizanje
Sputanje

Opis
Lift je iskljuen
Lift je u prizemlju
Lift je na I spratu
Lift se podie na I sprat
Lift se sputa u prizemlje

58

Leder programiranje

Stanja su dobro identifikovana ako:

U svakom stanju svi izlazi sistema imaju definisanu, nepromeljivu vrednost. U konkretnom
sistemu, postoje dva izlaz, M1 i M0, koji upravljaju motorima za podizanje (M1) i sputanje (M0)
lifta. Motor M1 je ukljuen (M1=ON) u stanju Podizanje, a iskljuen u svim ostalim stanjima.
Slino, motor M0 je ukljuen (M0=ON) u stanju Sputanje, a iskljuen (M0=OFF) u svim ostalim
stanjima.
Stanje
Iskljueno
Dole
Gore
Podizanje
Sputanje

Izlazi
M1 M0
0
0
0
0
0
0
1
0
0
1

U svakom stanju, sistem eka na ispunjenje uslov (ili pojavu dogaaja) koji e ga prevesti u
sledee stanje. Stanju moe biti pridruen jedan ili vie uslova (prelaza). U konkretnom sistemu,
stanje Iskljueno se naputa kada se prekida X0 prebaci u poloaj Start, tj. X0=1, a novo stanje je
Sputanje. U stanju Dole postoje dva uslova (dogaaja) koji uslovljavaju naputanje ovog stanja:
X0 prebaen u poloaj STOP (novo stanje je Iskljueno) ili prekida X1 prebaen u poloaj Gore
(novo stanje je Podizanje). Uslov za kraj stanja Gore je osim X0=0 i prebacivanje prekidaa X1 u
poloaj Dole (X1=0), to vodi sistem u stanje Sputanje. Uslov za kraj stanja Podizanje i
Sputanje je aktiviranje graninog prekidaa. Stanje Podizanje se zavrava kada se aktivira S1, to
ukazuje da je lift na I spratu, odnosno da sistem treba da pree u stanje Gore. Sputanje se
zavrava kada se aktivira S0 (lift je u prizemlju), a novo stanje je Dole:
Stanje

Uslov

Novo
stanje

Iskljueno

X0=1
X0=0
X1=1
X0=0
X1=0
X0=0
S1=1
X0=0
S0=1

Sputanje
Iskljueno
Podizanje
Iskljueno
Sputanje
Iskljueno
Gore
Iskljueno
Dole

Dole
Gore
Podizanje
Sputanje

Primetimo da je u stanjima Podizanje i Sputanje, sistem neosetljiv na promene prekidaa X1. To


znai da e sistem, uprkos promeni poloaj ovog prekidaa nastaviti da se podie, odnosno sputa do
svoje krajnje pozicije, Gore ili Dole, a tek e onda ispitati X1 i zapoeti kretanje u suprotnom smeru
ako je X1 promenjeno (to je u skladu za postavkom zadatka).
Na osnovu uvedenih stanja i identifikovanih prelaza izmeu stanja, lako moemo nacrtati dijagram
stanja (Sl. 4-43).

59

Primeri

Sl. 4-43 Dijagram stanja upravljake jedinice lifta.

4.6.1 Realizacija konanog automata u leder jeziku


Model konanog automata uvodi pojam stanja. Dakle, pored ulaza i izlaza, sistem u svom radu
dodatno manipulie i stanjima. Informacija o tekuem stanju mora da se pamti, kako bi sistem znao u
kom je stanju i shodno tome kako da reaguje. Za pamenje tekueg stanja koriste se bitovi iz interne
memorije PLC kontrolera (iz datoteke B). Po pravilu, koristi se one-hot kodiranje stanja. To znai da
se svakom stanju pridruuje jedan bit koji ima vrednost 1 dok je sistem u tom stanju. Kada sistem
menja stanje, bit tekueg stanja se resetuje, a bit sledeeg stanja setuje. Na ovaj nain, uvek je setovan
tano jedan bit stanja, dok su ostali resetovani.
U tabeli ispod uvedeni su bitovi stanja za primer upravljake jedinice lifta. Radi kompletnosti dati su i
spiskovi ulaza i izlaza zajedno sa njihovim usvojenim fizikim adresama.
Stanje

Stanja
Simboliko
ime

Ulazi
Simboliko
ime
X0

Bit
stanja

Iskljueno

ST0

B3:1/0

Ulazni
ureaja
Prekida
start/stop

Fizika
adresa
I:1/0

Dole

ST1

B3:1/1

Prekida
gore/dole

X1

I:1/1

Gore

ST2

B3:1/2

Gran.
prek. u
prizemlju
Gran.
prek. na I
spratu

S0

I:1/2

Podizanje

ST3

B3:1/3

S1

I:1/3

Sputanje

ST4

B3:1/4

Izlazni
ureaj
Motor za
podizanje
lifta
Motor za
sputanje
lifta

Izlazi
Simboliko
ime
M1

Fizika
adresa
O:2/0

M0

O:2/1

U leder dijagramu koji realizuje konani automat mogu se uoiti vie delova, od kojih se svaki odnosi
na jedan aspekt rada sistema. Prvi deo se bavi postavljanjem sistema u inicijalno stanje. Naime,
neophodno je obezbediti da na poetku rada, sistem bude postavljen u odgovarajue poetno stanje, tj.
potrebno je setovati bit inicijalnog stanja i resetovati bitove svih ostalih stanja. Za ovu namenu se
moe koristiti jedan poseban bit iz statusne datoteke PLC kontolera koji ima vrednost 1 samo u toku
prvog sken ciklusa, a u svim ostalim vrednost 0. Ovaj bit se zove first scan bit, a njegova adresa kod
kontrolera SLC 500 je S2:1/14. Na Sl. 4-44 je prikazan segment leder dijagrama upravljake jedinice
lifta koji se bavi inicijalizacijom stanja. Kao to vidimo, ovaj deo leder dijagrama se sastoji iz samo
jednog ranga koji za sluaj da je first scan bit jednak 1, setuje bit ST0 (bit inicijalnog stanja, tj.
stanja Iskljueno), a resetuje bitove svih ostlih stanja.

60

Leder programiranje

Sl. 4-44 Leder dijagram upravljake jedinice lifta (Inicijalizacija).

Drugi deo leder dijagrama se bavi pobuivanjem izlaza. Svaki izlaz je pobuen u jednom ili vie
stanja. Za svaki izlaz se formira jedan rang, koji pobuuje taj izlaz, a iji je uslov formiran ORovanjem bitova stanja u kojima izlaz ima vrednost 1. Ovaj deo leder dijagrama upravljake jedinice
lifta prikazan je na Sl. 4-45. Motor M1 je ukljuen dok se lift podie (tj. dok je sistem u stanju
Podizanje - ST3); motor M0 je ukljuen dok se lift sputa (stanje Sputanje - ST4).

Sl. 4-45 Leder dijagram upravljake jedinice lifta (Postavljanje izlaza).

Trei deo leder dijagrama je zaduen za promenu stanja. Za svaki prelaz iz dijagrama stanja kreira se
jedan rang. Uslov ranga kombinuje bit izvornog stanja i uslov koji odgovara tom prelazu. U delu
akcije, resetuje se bit izvornog (tekueg), a setuje bit odredinog (sledeeg) stanja. Na Sl. 4-46 je
prikazan deo leder dijagrama upravljake jedinice lifta koji se bavi prelazima. Uoimo da za svaki
prelaz (granu) iz dijagrama stanja, u ovom delu leder dijagrama postoji jedan rang. Uslov ranga je
AND operacija nad bitom stanja i uslovom koji je pridruen odgovarajuem prelazu. U delu akcije
ranga, uvek postoje dve naredbe, jedna resetuje bit tekueg, a druga setuje bit sledeeg stanja.

61

Primeri

ST2

X1

S1

=0

Gore

es

et

=1

X0=0

ST4

ST0
X0=0
Sputanje

Iskljueno

ST3
X0=0

Podizanje

X1

=
S0

X0=0

=1

X0=1

Dole
ST1

Sl. 4-46 Leder dijagram upravljake jedinice lifta (Promena stanja).

Leder dijagram upravljake jedinice lifta (Sl. 4-46) dobijen je na osnovu dijagrama stanja sa Sl. 4-43.
primenom jednostavnih pravila konverzije. Najopirniji deo dijagrama je onaj koji regulie prelaze
izmeu stanja. Veliki broj rangova u ovom delu je posledica toga to se svaka tranzicija razmatra
nezavisno. Meutim, ako se uoe izvesne zakonitosti u ponaanju sistema, koje vae za vie razliitih
prelaza, dijagram se moe uprostiti (smanjiti broj rangova). Na primer, prebacivanjem prekidaa X0 u
poloaj Stop (X0=0), sistem prelazi u stanje Iskljueno (tj. u inicijalno stanje), bez obzira u kom
stanju se sistem trenutno nalazi. Ovo zapaanje nam omoguava da iz leder dijagrama eliminiemo
rangove koji odgovaraju ovim tranzicijama, a uslov X0=0 pridruimo prvom delu leder dijagrama,
koji se bavi inicijalizacijom sistema. Kompletan leder dijagram, nakon uinjene optimizacije,
prikazan je na Sl. 4-47.

62

Leder programiranje
ST0

S2:1

L
14

ST1

X0

ST0

U
ST2

U
ST3

U
ST4

U
ST3

M1

ST4

M0

ST0

ST0

X0

U
ST4

L
ST1

X0

X1

ST1

U
ST3

L
ST2

X0

X1

ST2

U
ST4

L
ST3

X0

S1

ST3

U
ST2

L
ST4

X0

S0

ST4

U
ST1

Sl. 4-47 Konani leder dijagram upravljake jedinice lifta.

4.6.1.1

Jednaina stanja

Alternativni nain za konverziju dijagrama stanja u leder dijagram sastoji se u tome da se dijagram
stanja najpre prevede u logike jednaine koje se potom prevode u leder dijagram. Pri tom, mogua su
dva pristupa. Prvi je da se dijagram stanja prevede u jednaine stanja, a drugi da se dijagram stanja
prevede u jednaine prelaza. U ovom odeljku, razmotriemo jednaine stanja.
Postupak konverzije podrazumeva da se za svako stanje pie se jedna logika jednaina. Formalna
definicija jednaine stanja data je ispod. Pojednostavljeno reeno, dato stanje bie ON ako je ve ON
ili je postavljeno na ON prelazom iz nekog drugog stanja i pri tome nije ispunjen ni jedan uslov za
naputanje tog stanja. Prvi deo jednaine (u zagradama) ukljuuje stanje, a drugi ga iskljuuje.
Napomenimo da jednainu inicijalnog stanja treba proiriti lanom + FS, gde je FS first scan bit .

63

Primeri
n

m
STATEi STATEi (T j ,i STATE j ) (Ti , k STATEi )

k 1
j 1

gde je,
STATEi - bit stanja i
n - broj prelaza u stanje i
m - broj prelaza iz stanja i
Tj,i - logiki uslov za prelaz iz stanja j u stanje i
Ti,k - logiki uslov za prelaz iz stanja i u stanje k
Napiimo jednaine stanja za primer upravljake jednice lifta shodno dijagramu stanja sa Sl. 4-43.
Ponimo od stanja Dole. U ovo stanje se dolazi iz stanja Sputanje kada se aktivira senzor S0, a iz
ovog stanja se odlazi kada se lift iskljui (X0=0) ili se X1 prebaci u poloaj gore (X1=1). Dakle,
jednaina stanja Dole glasi:
ST 1 ( ST 1 ST 4 S 0 X 0) ST 1 X 0 ST 1 X 1

U stanje Dole uvire samo jedna grana (izvire iz stanja Sputanje) i zato u zagradi, pored ST1 postoji
samo jedan dodatni lan, ST 4 S 0 X 0 , koji odgovara ovom prelaza. Uoimo da je pored uslova

S0=1, ovim lanom obuhvaen i uslov X0=1, koji nije naveden kao uslov na grani koja
povezuje stanja Sputanje i Dole. Iz stanja Sputanje izviru dve grane, jedna ka stanju Dole, a
druga ka stanju Iskljueno (za sluaj X0=0). U takvim situacijama, kada iz nekog stanja
izvire vie od jedne grane, moe se desiti da bude zadovoljeno vie od jednog uslova za
naputanje stanja (npr. moe se desiti da dok je sistem u stanju Sputanje istovremeno se X0
promeni na 0 i S0 na 1. Postavlja se pitanje u koje stanje e sistem prei. Da bi se razreila
ova dilema, izlaznim granama se dodeljuju prioriteti, a sistem prelazi u stanje u koje vodi
grana (sa ispunjenim uslovom) najvieg prioriteta. U konkretnom sluaju, za stanje Sputanje,
vii prioritet se daje grani koja ovo stanje povezuje sa stanjem Iskljueno. To znai da ako se
u stanju Sputanje u isto vreme prekida X0 prebaci u poloaj stop i aktivira senzor S0,
sistem e prei u stanje Iskljueno. Upravo je to razlog za prisustvo bita X0 u lanu
ST 4 S 0 X 0 (X0=0, ponitava S0=1 i sistem nee prei u stanje ST1, tj. Dole).
Uoimo, takoe da jednaina stanja Dole nije pogodna za direktnu realizaciju pomou leder
naredbi. Problem je u komplementiranim lanovima na desnom kraju jednaine (u leder
jeziku ne postoji naredba za komplement logikih izraza sloenijih od jedne promenljive).
Zato je neohodno, primenom DeMorganovih pravila eliminisati dugake komplemente:
ST 1 X 0 ST 1 X 1 ( ST 1 X 0)( ST 1 X 1) ST 1 X 0 X 1

Konano:
ST 1 ( ST 1 ST 4 S 0 X 0)( ST 1 X 0 X 1)

Na slian nain moemo da izvedemo i jednaine za stanja Gore, Podizanje i Sputanje:


ST 2 ( ST 2 ST 3 S1 X 0)( ST 2 X 0 X 1)
ST 3 ( ST 3 ST 1 X 1 X 0)( ST 3 X 0 S1)
ST 4 ( ST 4 ST 2 X 1 X 0)( ST 4 X 0 S 0)

Konano, razmotrimo i inicijalno stanje, Iskljueno. Sledei optu jednainu stanja (uz dodatak bita
FS) dolazimo do sledeeg izraza:
ST 0 ( ST 0 ST 1 X 0 ST 2 X 0 ST 3 X 0 ST 4 X 0)( ST 0 X 0) FS

64

Leder programiranje

Uoimo da lanovi iz prve zagrade koji odgovaraju granama koje uviru u stanje Iskljueno sadre
uvek samo uslov X0=0. To je iz razloga to svaka od ovih grana imaju vii prioritet u odnosu na
drugu granu koja izvire iz istog stanja. Takoe, primetimo da izraz u prvoj zagradi moe da se svede
na:
( ST 0 ST1 X 0 ST 2 X 0 ST 3 X 0 ST 4 X 0) ST 0 ST 0 X 0 ST 0 X 0

zato to je ST 1 ST 2 ST 3 ST 4 isto to i ST 0 . Konano, u kombinaciji sa preostalim delo izraz,


dolazimo do jednaine stanja Iskljueno u obliku:
ST 0 X 0 FS

Poto smo izveli jednaine svih stanja, spremni smo za crtanje leder dijagrama. Deo leder dijagrama
koji postavlja izlaze (Sl. 4-45) ostae isti, dok delove koji se bave inicijalizacijom (Sl. 4-44) i
prelazima izmeu stanja (Sl. 4-46) zamenjujemo rangovima koji realizuju jednaine stanja (Sl. 4-48).

Sl. 4-48 Leder dijagram upravljake jedinice lifta kreiran na osnovu jednaina stanja.

Lako moemo uoiti pravilnost u strukturi rangova stanja. Svaki rang koji regulie bit stanja u delu
uslova sadri dve redno vezane paralelne sekcije. Prva (leva) sekcija je zaduena za ulazak u dato
stanje i samodranje dok je sistem u datom stanju. Duga sekcija regulie naputanje datog stanja, tj.
definie uslove pod kojima sistem vie nije u datom stanju. Razmotrimo rang za stanje ST1. Na Sl.
4-49 je prikazan tok signala prilikom ulaska u stanje ST1 (Sl. 4-49a), za vreme dok je u stanju ST1
(Sl. 4-49b) i prilikom naputanja stanja ST1 (Sl. 4-49c).

65

Primeri
(a)

ST4

S0

ST1

ST1

ST1
X0

X0

X1

(b)

ST4

S0

ST1

ST1

ST1
X0

X0

X1

(c)
Sl. 4-49 Upravljanje bitom stanja: (a) ulazak u stanje (ST1=OFF, i ST4=S0=X0=ON => ST1=ON); (b)
samodranje (ST1=ON i X0=ON i X1=OFF => ST1=ON); (c) naputanje stanja (ST1=ON i X0=OFF ili
X1=ON => ST1=OFF).

4.6.1.2

Jednaine prelaza

Dijagram stanja se moe konvertovati u leder dijagram i tako to e se najpre izvesti jednaine za
prelaze koje e se potom iskoristiti za pisanje jednaina stanja. U ovom sluaju, za svaki prelaz
(granu) iz dijagrama stanja uvodimo poseban pomoni bit (bit prelaza) koji dobija vrednost 1 kada je
sistem u stanju iz kojeg prelaz izvire i uslov pridruen prelazu taan, inae dobija vrednost 0. Na ovaj
nain se pojednostavljuju jednaine stanja, jer umesto celokupnih uslova prelaza u njima sada figuriu
samo bitovi prelaza.
Razmotrimo, ponovo, problem upravljake jedinice lifta i izvedimo jednaine prelaza shodno
dijagramu stanja sa Sl. 4-50(a). Dijagram stanja sadri 10 grana (raunajui i reset granu). Meutim,
kao i do sada, prelaze koje sistem vode u stanje Iskljueno razmatraemo objedinjeno, to smanjuje
broj prelaza za koje emo pisati jednaine na 5. U tom cilju, rezervisaemo 5 bit-promenljivih, T1,
T2, T3, T4 i T5 - jedan bit za svaki prelaz (Sl. 4-50a). Odgovarajue jednaine prelaza su date na Sl.
4-50b.

T 0 ST 0 X 0

T 1 ST1 X 1 X 0
T 2 ST 2 X 1 X 0
T 3 ST 3 S1 X 0
T 4 ST 4 S 0 X 0

(a)
(b)
Sl. 4-50 Tranzicije u grafu stanja upravljake jedinice lifta: (a) oznaavanje tranzicija; (b) jednaine
prelaza.

Sa jednainama prelaza na raspolaganju u mogunosti smo da napiemo jednaine stanja:


ST1 ( ST1 T 4) T1
ST 2 ( ST 2 T 3) T 2
ST 3 ( ST 3 T 1) T 3

ST 4 ( ST 4 T 2) T 4

66

Leder programiranje

Opti oblik jednaine stanja je identian onome koji smo ve koristili: Sistem je u datom stanju ako je
ve u tom stanju ili je ispunjen uslov (tranzicije) za ulazak u to stanje (izrazi u zagradi); sistem nije
vie u datom stanju ako je uspunjen uslov izlazne tranzicije iz tog stanja.
Jednaina stanje Iskljueno je, kao i ranije:
ST 0 X 0 FS

Na Sl. 4-51 je prikazan leder dijagram kreiran na osnovu izvedenih jednaina.


ST0

X0

T0

ST1

X1

X0

T1

ST2

X1

X0

T2
Jednacine
prelaza

ST3

S1

X0

T3

ST4

S0

X0

T4

ST0

FS

X0

ST1

T1

ST1

T2

ST2

T4

ST2

Jednacine
stanja
T3

ST3

T3

ST3

T4

ST4

T1

ST4

T2

ST3

M1

ST4

M0

Postavljanje
izlaza

Sl. 4-51 Leder dijagram upravljake jedinice lifta kreiran na osnovu jednaina prelaza i stanja.

67

Primeri

Pr. 4-2 Maina za presovanje.


Na Sl. 4-52 je prikazana maina za presovanje metalnih odlivaka. Elementi maine su:
(a) Pokretna traka i motor za pokretanje trake M (upravlja se signalom MotV);
(b) Tri granina prekidaa, GP1, GP2 i GP3, za detekciju prisustva objekta na tri karakteristine
pozicije.
(c) Dva optika senzora, OSH i OSL, za proveru visine objekta - OSL je postavljen na visini h1, a
OSH na visini h2. Ako je objekat nii od h1, vai OSL=OSH=OFF; ako je objekat vii od h1, a
nii od h2, vai OSL=ON, OSH=OFF i ako je objekat vii od h2, vai OSL=ON i OSH=ON.
(d) Presa. Presom se upravlja pomou dva jednosmerna solenoida koji otvaraju/zatvaraju ventile
za dovod/isputanje komprimovanog vazduha. Solenoidima se upravlja signalima UP i DN. Klip
prese se izvlai (sputa) ako je DN=ON, a uvlai (podie) ako je UP=ON. Dva granina
prekidaa, GDKD i GPKG, detektuju krajnji donji, odnosno krajnji gornji poloaj klipa.
(e) Jednosmerni solenoid za uklanjanje objekta sa mesta za presovanje. Ovaj solenoid se pobuuje
(izvlai) ako je signal SolA=ON. GPS je granini prekida koji se koristi za indikaciju krajnjeg
izvuenog poloaja solenoida. Nakon ukidanja pobude (SolA=OFF), solenoid se pod dejstvom
opruge automatski vraa u uvuen poloaj.
(f) Dvopoloajni prekida MP za ukljuivanje/iskljuivanje maine (MP=ON - maina je
ukljuena; MP=OFF - maina je iskljuena).
Traka poinje da se kree kada se na poziciju graninog prekidaa GP1 postavi objekat za presovanje.
Kada se na poziciji za presovanje nae objekat (GP2=ON), ispituje se njegova visina.
(i) Ako je objekat nii od h1, traka se zaustavlja, a objekat se uklanja sa trake pomou solenoida
(SolA). Traka ostaje nepokretna sve dok se na poziciju GP1 ne postavi novi objekat.
(ii) Ako je objekat vii od h1, ali nii od h2, traka se ne zaustavlja, a objekat se prenosi sve do
pozije GP3 kada traka konano staje. Oekuje se da e objekat biti manuelno uklonjen sa pozicije
GP3. Tek nakon toga, na poziciji GP1 dozvoljeno je postaviti novi objekat.
(iii) Ako je objekat vii od h2, zapoine presovanje s ciljem da se njegova visina smanji ispod h2.
Presovanje moe da traje jedan ili vie ciklusa. Ciklus presovanja podrazumeva sputanje klipa
prese do pozicije GPKD i povratak na poetnu poziciju GPKG. Na kraju svakog ciklusa (kada je
klip ponovo na poziciji GPKG) ispituje se visina objekata. Ako je objekat jo uvek vii od h2,
presovanje se ponavlja. Ako je, kojim sluajem objekat postao nii od h1, postupa se kao u taki
(i). Ako je visina objekta postala manja od h2, ali ne i manja od h1, zadatak je ispunjen; traka se
ponovo pokree da bi odnela objekat do pozicije GP3, gde e objekat biti manuelno uklonjen sa
trake.
Prebacivanje prekidaa MP u poloaj OFF trenutno zaustavlja rad maine (iskljuuje sve aktuatore i
onemoguava pokretanje), ako se traka kree. Meutim, ako je u toku ciklus presovanja ili sklanjaje
objekta sa trake pomou solenoida SolA, iskljuenje maine se odlae do momenta kada se ciklus
presovanja ili sklanjanje zavri.

Sl. 4-52 Maina za presovanje.

68

Leder programiranje

Maina za presovanje se odlikuje sloenijim ponaanjem u odnosu na primere koje smo do sada
razmatrali. Rad sistema iz veine prethodno razmatranih primera se svodio na niz uzastopnih koraka
koji su se izmenjivali jedan za drugim, a iskakanje iz definisane sekvence se deavalo samo pod
izuzetnim okolnostima (npr. aktiviran stop). Maina za presovanje se karkterie razgranatijim
ponaanjem, jer se tok koraka usmerava pod dejstvom vie razliitih uslova. Na primer, objekat sa
pozicije presovanja moe odmah biti sklonjen sa trake, moe se obaviti jedan ili vie ciklusa
presovanja, a nakon presovanja objekat e biti sklonjen sa trake ili e se se preneti do mesta za
manuelno uklanjanje. Iako na prvi pogled sloeni, problemi ovog tipa se relativno lako mogu reiti
primenom metoda konanih automata.
Prvi korak u postupku reavanja datog problema podrazumeva identifikaciju stanja sistema. Potpuno
razumevanje problema koji se reava je preduslov za uspeno izdvajanje stanja. Studentima se
preporuuje da pre crtanja dijagrama stanja, paljivo, i vie puta proitaju teksta zadatka i saine listu
operacija, kako bi otklonili bilo kakve nedoumice o tome ta i kako sistem treba da radi.
Nulto stanje, Iskljuceno, je stanje u kome sistem boravi dok je iskljuen (dok je MP=OFF). Ovo
stanje je ujedno i inicijalno stanje sistema (stanje u koje se sistem postavlja odmah nakon ukljuenja
napajanja). Stanje Iskljueno se naputa prebacivanjem prekidaa MP u poloaj ON.
Prvo stanje, ekanjeNaObjekat bi bilo ono dok maina eka da na pokretnu traku bude postavljen
novi objekat za presovanje. Ovo stanje se zavrava kada GP1 postane ON.
Drugo stanje, PrenosNaP2, je stanje koje traje dok se objekat sa pozicije graninog prekidaa GP1
prenosi na poziciju graninog prekidaa GP2 (pozicija P2). Za vreme ovog stanja, ukljuen je motor
pokretne trake, a stanje se zavrava kada se aktivira GP2.
Podsetimo se da je stanje dobro definisano, ako u toku trajanja stanja svi izlazi sistema imaju
konstantnu vrednost i ako je uslov za zavretak stanja jasno definisan.

Tree stanje, SputanjePrese, odnosi se na vremenski interval kada se klip prese izvlai i deluje silom
na objekat koji se presuje. U toku ovog stanja, aktivan je signal DN (DN=ON), a stanje se zavrava
kada klip stigne u krajnji izvueni poloaj (GPKD=ON).
etvrto stanje, PodizanjePrese, je ono kada se klip prese uvlai. U ovom stanju vai UP=ON, a uslov
za kraj stanja je GPKG=ON.
Peto stanje Sklanjanje, traje dok traje sklanjanje objekta sa mesta za presovanje pomou solenoida A.
U ovom stanju vai SolA=ON, a stanje je zavreno kada GPS=ON.
U estom stanju, PrenosNaP3, vri se prenos objekta sa pozicije P2 na poziciju P3. Motor pokretne
trake je ukljuen (MotV=ON), a stanje traje sve dok se ne aktivira granini prekida GP3.
Konano, sedmo stanje, ekanjeNaUklanjanje, je stanje u kome maina eka da sa pozicije P3 bude
uklonjen objekat. Svi aktuatori su neaktivni, a stanje se zavrava kada GP3=OFF.
U tabeli su navedena stanja zajedno sa simbolikim imenima pridurenih bitova stanja i vrednostima
izlaza u svakom stanju.
Stanje

Bit stanja

Iskljueno
ekanjeNaObjekat
PrenosNaP2
SputanjePrese
PodizanjePrese
Sklanjanje
PrenosNaP3
ekanjeNaUklanjanje

ST0
ST1
ST2
ST3
ST4
ST5
ST6
ST7

MotV
0
0
1
0
0
0
1
0

Izlazi
DN UP
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0

SolA
0
0
0
0
0
1
0
0

Nakon to smo identifikovali stanja sistema, crtamo dijagram stanja. Dijagram stanja, osim stanja
sadri i prelaze izmeu stanja. Dok stanja opisuju statiko ponaanje sistema, prelazi opisuju

69

Primeri

dinamiku sistema - pod kojim uslovima se iz jednog prelazi u neko drugo stanje. Moemo da
poenemo od dijagrama koji sadri samo stanja (Sl. 4-53), a onda za svako stanje da dodajemo
prelaze koji izviru iz tog stanja.

Sl. 4-53 Prazan dijagram stanja maine za presovanje.

Iz stanja Iskljueno izvire samo jedna grana koja vodi sistem u stanje ekanjeNaObjekat onda kada se
sistem ukljui (MP=ON).
Iz stanja ekanjeNaObjekat postoje dva prelaza. Prvi ka stanju PrenosNaP2, iji je uslov GP1=ON
(na poziciji P1 postavljen objekat), i drugi nazad ka stanju Iskljueno, pod uslovom da je sistem
iskljuen (MP=OFF).
Za stanje PrenosNaP2 vezuju se ak etiri izlazne grane. Prva grana vraa sistem nazad na Iskljueno
(MP=OFF). Preostala tri prelaza uslovljena su dolaskom objekta na poziciju za presovanje
(GP2=ON), a u koje sledee stanje e sistem otii zavisi od visine objekta. Za visinu manju od h1
(OSL=OFF), sledee stanje je Sklanjanje, za visinu veu od h1 i manju od h2 (OSL=ON i
OSH=OFF), sledee stanje je PrenosNaP3, a za visinu veu od h2 (OSH=ON), sledee stanje je
SputanjePrese.
Iz stanja SputanjePrese ne postoji povratna grana ka Iskljueno, zato to je zabranjeno prekinuti
zapoeti ciklus presovanja. Jedina grana koja izvire iz ovog stanja ogovara prelazu u stanje
PodizanjePrese pod uslovom da je klip stigao u krajnji izvuen poloaj (GPKD=ON).
Uslov za zavretak stanja PodizanjePrese je povratak klipa u krajnji gornji poloaj (GPKG=ON), a u
koje sledee stanje e sistem prei zavisi od toga da li je u meuvremenu sistem iskljuen (MP=OFF povratak u Iskljueno), ili, ako nije, da li je visina objekta postala nia od h1 (OSL=OFF - za prelaz u
Sklanjanje), da li je u granicama izmeu h1 i h2 (za prelaz u PrenosNaP3) ili je jo uvek vea od h2
(za povratak na SputanjePrese).
Kompletan dijagram stanja prikazan je na Sl. 4-54. Uoimo da uslovi koji su pridrueni granama nisu
pisani na nain kao u prethodnom primeru, navoenjem vrednosti ulaza, ve u obliku logikih
jednaina. Tako, MP na grani znai MP=ON, ili MP GPKG znai MP=OFF i GPKG=ON. Takoe,
prilikom definisanja uslova vodilo se rauna o prioritetima prelaza, tako da prelaz usled iskljuenja
sistema ima najvii prioritet.

Iz stanja Sklanjanje se izlazi kada se aktivira granini prekida solenoida A (GPS=ON), to je znak da
je predmet sklonjen sa pokretne trake, a novo stanje je stanje ekanjeNaObjekat. Kao i u stanju
SputanjePrese, uslov MP=OFF se ne ispituje.
Stanje PrenosNaP3 se zavrava ako se sistem iskljui, ili ako se aktivira granini prekida GP3. Prvi
prelaz vraa sistem u stanje Iskljueno, a drugi vodi sistem u stanje ekanjeNaUklanjanje.
Iz stanja ekanjeNaUklanjanje, takoe, postoje dva prelaza. Prvi ka Iskljueno, a drugi (pod uslovom
da je objekat uklonjenjen - GP3=OFF) ka stanju ekanjeNaObjekat.

70

Leder programiranje
GPKGMP
ST3
FS

MP

ST0
Iskljueno

ST2

ST1
MP

ekanjeNa
Objekat

GP1

Sputanje
Prese

SH
O
P2
G
P

ST6
ST4
MPGPKGOSHOSL
Podizanje
PrenosNaP3
Prese

MP
G
PK
G
OS
H

PrenosNaP2
MP
G
P2
O
SL

MP

GP
KD

ST5

SL
O
KG
P
G
MP

Sklanjanje

GPS

MPGP2OSHOSL
MP

MP
G
P3

ST7

P
MPG

ekanjeNa
Uklanjanje
MP

Sl. 4-54 Kompletan dijagram stanja maine za presovanje.

Jednaine stanje. Oznaimo sa Ti,j jednainu prelaz iz stanja STi u stanje STj. Jednaine Ti,j
dobijamo kada izraz napisan na grani koja spaja stanja STi i STj proirimo lanom STi. Na primer,
T2,3=ST2MPGP2OSH. Jednaine stanja su:
ST 0 ( ST 0 T1,0 T2,0 T4,0 T6,0 T7,0 ) T0,1 FS

ST1 ( ST1 T0,1 T5,1 T7,1 ) T1,0 T1, 2


ST 2 ( ST 2 T1, 2 ) T2,0 T2,3 T2,5 T2,6
ST 3 ( ST 3 T2,3 T4,3 ) T3, 4
ST 4 ( ST 4 T3, 4 ) T4,0 T4,3 T4,5 T4,6
ST 5 ( ST 5 T2,5 T4,5 ) T5,1
ST 6 ( ST 6 T4,6 T2,6 ) T6,0 T6,7
ST 7 ( ST 7 T6,7 ) T7,0 T7,1

Jedan nain kako se moe kreirati leder dijagram jeste da se uvedu bitovi prelaza koji e se postavljati
na osnovu jednaina prelaza, a da se potom bitovi prelaza koriste za realizaciju rangova koji
postavljaju bitove stanja. Dugi nain je da se u jednaine stanja zamene jednaine prelaza i izvri
pojednostavljenje dobijenih izraza. Broj rangova i utroenih pomonih bitova e biti manji, ali e zato
rangovi stanja biti neto sloeniji.
Treba primetiti da e se pojedine jednaine stanja zanaajno uprostiti nakon zamene jednaina
prelaza. Na primer, razmotrimo stanje PrenosNaP2 (ST2). Uslov za naputanje ovog stanja je MP
prebaen u poloaj OFF ili aktiviran granini prekida GP2, tj. MP GP 2 . To znai da e deo
jednaine stanja ST2, T2,0 T2,3 T2,5 T2,6 , da se svede na ST 2 MP GP 2 . Slino zapaanje vai i za
stanje ST4 jer se deo jednaine za naputanje stanja svodi na: ST 4 MP GPKG

4.6.2 ASM dijagrami


Dijagrami stanja su pogodno sredstvo za predstavljanje konanih automata sa malim brojem ulaza i
izlaza. Meutim, za opis sloenijih automata, projektanti obino koriste tzv. algoritamske maine

71

Primeri

stanja, ili ASM dijagrame (prema eng. Algorithmic State Machine). U sutini, ASM dijagrami su vrsta
dijagrama toka prilagoenih za predstavljanje stanja, prelaza izmeu stanja i generisanje izlaza
konanog automata. Na Sl. 4-55 su predstavljena tri osnovna grafika simbola koji se koriste za
crtanja ASM dijagrama: blok stanja, blok grananja i blok uslovnog izlaza.

(a)

(b)

(c)

Sl. 4-55 Grafiki simboli za crtanje ASM dijagrama: (a) blok stanja; (b) blok grananja; (c) blok uslovnog
izlaza.

Blok stanja se crta u vidu pravougaonika i slui za predstavljanje jednog stanja konanog automata.
Ekvivalentan je krugu u dijagramu stanja. Ime stanja pie se izvan bloka, obino uz njegov gornji levi
ugao. Unutar bloka navedeni su izlazi koji su aktivni (postavljeni) u konkretnom stanju. Za preostale
signale se podrazumeva da su neaktivni. Na primer, da bi se naglasilo da u datom stanju izlaz z ima
vrednost 1, dovoljno je napisati z umesto z=1.
Blok grananja se crta kao romb koji sadri uslov koji odreuje koja e od dve izlazne grane biti
izabrana. Uslov kombinuje jedan ili vie ulaza konanog automata u logiki izraz ija vrednost moe
biti tano (1) ili netano (0). Na primer, w napisano u bloku grananja znai da je odluka zasnovana na
vrednosti signala w (ako je w=0, nastavljamo putem tano, a ako je w=1, putem netano). Slino,
uslov w1w2 znai da e biti grana tano biti izabrana ako su oba signala jednaka 1, tj. w1=w2=1, a da e
u svim ostalim sluajevima automat slediti granu netano.
Pr. 4-3 ASM dijagram maine za presovanje

ASM dijagram maine za presovanje prikazan je na Sl. 4-56.ASM dijagram je esto preglednija
predstava rada sistema od konanog automata. Prvo, ASM dijagram sadri informaciju o vrednostima
izlaza u svakom stanju. Drugo, prioriteti prelaza su ugraeni u sam dijagram, tj. odreeni su
redosledom u kome su blokovi grananja poreani ispod bloka stanja. Razmotrimo, na primer stanje
ST2. Najvii prioritet ima prelaz u stanje iskljueno (ako je MP=OFF); zatim, ako je MP=ON, ispituje
se granii prekida GP2, a tek onda, ako je GP2=ON, dalje se ispituju optiki senzori OSH i OSL.
Takoe, jednaine prelaza se mogu lako izvesti. Dovoljno je pratiti putanju od izvornog do
odreditnog stanja kroz blokove grananja. Na primer, da bi sistem preao iz stanja ST4 u stanje ST6
potrebno je da vai: ST4=ON (da je sistem u stanju ST4), GPKG=ON, OSH=OFF i OSL=ON, tj.
jednaina prelaza iz stanja ST4 u ST6 glasi: ST 4 GPKG OSH OSL .
Postupak realizacije leder dijagrama na osnovu ASM dijagrama je identian postupku koji se koristi
kada se konani automat opisuje dijagramom stanja.

72

Leder programiranje

Sl. 4-56 ASM dijagram maine za presovanje.

73

Primeri
Pr. 4-4 Upravljaka jedinica lifta

Lift se podie/sputa pomou dvosmernog motora (Sl. 4-57). Motorom se upravlja pomou
dva signala: MotV i MotD. Za MotV=ON motor je ukljuen, za MotV=OFF iskljuen. MotD
odreuje smer rotacije motora, taka da se za MotD=ON motor sputa a za MotD=OFF motor
podie.
Lift se moe spustiti/podii pomou taster u liftu TG/TD. Pritisak na bilo koji od tastera
ukoliko se lift kree zaustavlja lift.
Granini prekidai GG i GD slue za indikaciju krajnjeg gornjeg i krajnjeg donjeg poloaja
lifta. Na meuspratovima postoje prekidai GPS koji detektuju prolazak lifta.
Lift se ne kree ukoliko vrata nisu zatvorena, to se indukuje pomou prekidaa GPV
(GPV=ONN - zatvorena) Posle pokretanja, lift se kree samo do narednog sprata i zaustavlja
se posle ega je za dalje kretanje potrebno ponovo pritisnuti taster u liftu.

Sl.
Sl. 4-57 Lift iz Pr. 4-4

4-58 Konani automat za Pr. 4-4

Reenje:
Uoena stanja su:
KG - kretanje na gore
KD - kretanje na dole
SS - stoji na spratu
SM - stoji na meuspratu
Jednaine prelaza su:

Jednaine stanja:

T 1 KG (GPS GP)

SS ( SS FS T 1 T 3) T 2 T 4

T 2 SS (TG GPS GPV )

KD ( KD T 4 T 5) T 3 T 6

T 3 KD TD GPP GPV )

SM ( SM T 7 T 5) T 5 T 8

T 4 SS (GPS GPP)
T 5 SM TD GPV

KG ( KG T 2 T 8) T 7 T 1

T 6 KD ((TG TD ) (GPS GPD) GPV )

Postavljanje izlaza:

T 7 KG ((TG TD ) (GPS GPG ) GPV )

MotV KG KD

T 8 SM TG GPV

MotD KD

Na Sl. 4-59 i Sl. 4-60 je prikazan leder dijagram za automat.

74

Leder programiranje

KG

T1

GPS
GPG

SS

TD

GPS

GPV

T2

KD

TD

GPP

GPV

T3

SS

T2

T4

SS

T3

T6

KD

T5

T8

SM

T7

T1

KG

FS
T1

SS

T4

GPS

T3
KD

GPP

T4
SM

TD

TG

KD

T5

GPV
GPS GPD

T6

T5
SM
T7

TD

T6
GPV
TG

KG

KG
GPS GPG

T7

T2
T8

TD

MotV
KG

GPV

SM

TG

GPV

KD
T8

Sl. 4-59 Leder dijagram za Pr. 4-4

KD

MotD

Sl. 4-60 Nastavak leder dijagrama za Pr. 4-4

75

Primeri

5 Naredbe za merenje vremena i prebrojavanje dogaaja


tajmeri i brojai
Prilikom upravljanja ili nadzora procesa esto je potrebno da se neka aktivnost otpone ili zaustavi
posle odreenog vremenskog perioda, ili da se ponovi odreeni broj puta. U tom smislu neophodno je
da PLC kontroler koji e se koristiti za upravljanje procesom prui mogunost za merenje vremena i
prebrojavanje dogaaja. Prebrojavanje dogaaja obavlja broja (counter), koji nakon registrovanja
unapred zadanog broja dogaaja generie odgovarajui signal. Merenje vremena ostvaruje se pomou
asovnika, tj. tajmera (timer). U sutini tajmer izraava vreme kao umnoak odreenog osnovnog
intervala (vremenska baza). To zapravo znai da tajmer radi kao broja protoka osnovnih intervala i
da nakon isteka odreenog, unapred zadanog intervala vremena, generie odgovarajui signal.

5.1

Naredbe za merenje vremena

PLC naredbe za merenje vremena su, posle bit naredbi, najee koriene naredbe u leder
programiranju. Podrka za programsko merenje vremena, u vidu specijalizovanih, tzv. tajmerskih
naredbi, postoji kod svih danas rasploivih familija PLC kontrolera. Iako nain rada i mogunosti
ovih naredbi zavise od tipa PLC kontrolera, uopteno govorei, u leder programiranju se koriste tri
vrste tajmera: delay_on tajmer (ili TON), delay_off tajmer (ili TOF) i RTO tajmer.
Tajmeri su naredbe akcija. Uslov koji prethodi tajmeru upravlja tajmerom tako to mu omoguava ili
brani rad. Tajmer, za vreme dok je omoguen, odbrojava osnovne vremenske intervale i, nakon
dostizanja zadate vrednosti, postavlja odreeni bit (ili bitove) iz interne memorije PLC kontrolera,
koji se mogu koristiti u drugim rangovima za formiranje uslova. Sl. 5-1 ilustruje razliku izmeu
delay-on i delay-off tajmera. TON je omoguen dok je uslov taan, a TOF dok je uslov netaan. TON
se iskljuuje trenutno, a ukljuuje po isteku zadatog vremena, T. Nasuprot tome, TOF se ukljuuje
trenutno, a iskljuuje po isteku zadatog vremena, T. (Ovde se pod ukljuivanjem/iskljuivanjem
smatra setovanje/resetovanje bita koji tajmer kontrolie TON_Out, odnosno TOF_Out). Drugim
reima, TON kasni ukljuivanje, a TOF iskljuivanje. Na primer, TON se moe iskoristiti da odloi
poetak nekog proizvodnog procesa za vreme potrebno da se komora zagreje; TOF se moe iskoristiti
da ventilator, koji hladi komoru, ostane ukljuen neko zadato vreme nakon to je sistem iskljuen.
X

TON

TOF

TON_Out

X
Y
(TON_Out)

TOF_Out

Z
(TOF_Out)

(a)
(b)
Sl. 5-1 Delay-on i delay-off tajmer: (a) leder dijagram; (b) vremenski dijagram.

TON i TOF tajmeri uvek poinju svoj rad od nule, tj. promena uslova na vrednost koja brani rad
tajmera ujedno i resetuje tajmer tako da kada sledei put tajmer bude puten u rad, njegova poetna
vrednost bie 0. Za razliku od toga, RTO tajmer (ili, retencioni tajmer) sumira (akumulira) vreme za
koje je omoguen. Kada je ponovo omoguen, RTO nastavlja odbrojavanje osnovnih vremenskih
intervala poev od vrednosti koju je imao u trenutku kada je zaustavljen. Za resetovanje RTO tajmera
koristi se posebna naredba.

76

Leder programiranje

5.1.1 Parametri tajmera


U seriji kontrolera SLC 5 tajmeri i brojai su realizovani softverski, i koriste se kao naredbe akcije.
Ne postoji nikakvo posebno ogranienje u pogledu njihovog broja. Jedino ogranienje potie od
veliine raspoloive RAM memorije.
Pri korienju tajmera neophodno je da se definiu sledei parametri.

Vremenska baza (time base) odreuje duinu osnovnog intervala vremena. Kod kontrolera SLC
5 bira se jedna od dve mogue vrednosti: 0.01 s ili 1.0 s.
Zadata vrednost (preset value - PRE) je vrednost kojom se definie eljeni broj osnovnog
intervala vremena (ime se odreuje ukupno vreme koje asovnik treba da izmeri) koje tajmer
treba da registruje pre nego to se generie signal koji oznaava da je tajmer zavrio.
Zadata vrednost za asovnik moe da se kree u intervalu od 0 do +32767, to odgovara vremenu
od maksimalno 327.67 s (za vremensku bazu 0.01 s), odnosno maksimalno 32767 s, ili priblino
9h i 6min (za vremensku baz 1 s).
Akumulirana vrednost (accumulated value - ACC) predstavlja broj osnovnih vremenskih
intervala koje je asovnik izbrojao u nekom trenutku. Kada akumulirana vrednost postane vea ili
jednaka od zadate vrednosti asovnik, odnosno broja, zavravaju svoj rad.

5.1.2 Datoteka podataka o tajmerima (timer data file)


S obzirom da je tajmer realizovan softverski, parametri koji definiu njegov rad moraju biti smeteni u
memoriji kontrolera. Za pamenje podataka o tajmerima koristi se datoteka podataka broj 4 (timer file
T). U ovoj datoteci moe se definisati najvie 256 razliitih asovnika. Ukoliko je potrebno da se
koristi vei broj tajmera, korisnik moe definisati i dodatne datoteke (korisniki definisane datoteke)
iji su brojevi od 9 do 255.
Svakom tajmeru pridruuje se po jedan element u odgovarajuoj datoteci. Osnovni element ovih
datoteka sastoji se od tri 16-bitne rei:

Re 0 je kontrolna re koja sadri tri bita koja ukazuju na stanje asovnika, kao i bitove za interno
upravljanje radom asovnika

Re 1 sadri zadatu vrednost (PRE)

Re 2 sadri akumuliranu vrednost (ACC)

Sl. 5-2 Elemenat datoteke tajmera i adresiranje tajmera.

Na Sl. 5-2 prikazan je jedan elemenat datoteke tajmera, kojim se definie jedan tajmer. Pored toga,
prikazan je format adrese tajmera. Treba zapazi da broj elementa definie jedan odreeni tajmer
unutar jedne datoteke tajmera. Svaki od tri bita stanja, kao i zadata i akumulirana vrednost mogu se

77

Primeri

posebno adresirati i to bilo na standardan nain na koji se formira adresa u bilo kojoj datoteci
podataka, bilo preko odgovarajuih simbola. To zapravo znai da su sledee adrese meusobno
ekvivalentne:
Tf:e.1 ili Tf:e.PRE
Tf:e.2 ili Tf:e.ACC
Tf:e.0/15 ili Tf:e/15 ili Tf:e/EN
Tf:e.0/14 ili Tf:e/14 ili Tf:e/TT
Tf:e.0/13 ili Tf:e/13 ili Tf:e/DN

5.1.3 Naredbe asovnika


Kao to je ve reeno naredbe tajmera su naredbe akcije, to znai da se nalaze na desnoj strani ranga
u leder programu. Postoje tri tipa naredbi kojima se realizuju tri vrste tajmera, i jedna naredba kojom
se stanje tajmera resetuje.
Potrebno je istai da se sam tajmer i nain njegovog rada definie preko naredbe koja se uvrtava u
leder program. Drugim reima, kad se u program stavi jedna od mogue tri naredbe i u njoj naznai
adresa tajmera u odgovarajuem formatu, onda operativni sistem PLC kontrolera sam zauzme
naznaeni element (tri rei) u datoteci koja je navedena u adresi i popuni ga odgovarajuim sadrajem.

Timer on-delay (TON)

Kao to je ve reeno, stavljanjem ove naredbe u leder program automatski se definie prva vrsta
tajmera i zauzimaju tri rei koje ine elemenat e u datoteci asovnika f. Prilikom formiranja naredbe
specificaraju se i vremenska baza (tx) i zadata vrednost (ns).
TON naredba zapoinje rad tajmera (prebrojavanje osnovnih vremenskih intervala) za vreme onog
programskog sken ciklusa u kome uslov u rangu u kome se naredba nalazi prvi put postaje istinit
(prelaz neistini/istinit uzlazna ivica). U svakom sledeem sken ciklusu, sve dok je uslov istinit
asovnik vri auriranje akumulirane vrednosti (ACC) u skladu sa proteklim vremenom izmeu dva
ciklusa. Kada akumulirana vrednost dostigne zadatu vrednost, tajmer prekida svoj rad i postavlja DN
bit na 1. Pri tom, ako u nekom sken ciklusu uslov postane neistinit, tajmer prekida svoj rad i
akumulirana vrednost se postavlja na 0, bez obzira da li je tajmer pre toga izmerio zahtevano vreme ili
ne.
Bitovi stanja asovnika menjaju se u toku programskog sken ciklusa na sledei nain:
DN - Timer done bit se postavlja na 1 kada je ACC PRE. On se resetuje na 0 kad uslov u
rangu postane neistinit.
EN - Timer enable bit se postavlja na 1 kada je uslov u rangu istinit i resetuje na 0 kada
uslov postane neistinit.
TT - Timer timing bit se postavlja na 1 kada je uslov istinit i ako je ACC PRE. On se
resetuje na 0 kada uslov postane neistinit ili kada se DN bit postavi na 1, odnosno kada se
zavri merenje vremena.
U vezi sa radom tajmera potrebno zapaziti nekoliko injenica. Pre svega tajmer radi samo dok je
uslov istinit (signal na ulazu u asovnik je u stanju on). Istinitosnu vrednost uslova pokazuje bit EN.
Drugim reima, ovaj bit ima vrednost 1 onda kada je uslov istinit i to oznaava da je rad tajmera
omoguen (enable). Kad je uslov neistinit, EN bit ima vrednost 0, to znai da je rad tajmera
onemoguen. Meutim, injenica da EN bit ima vrednost 1 ne mora da znai da tajmer zaista i radi,

78

Leder programiranje

jer je on mogao i da zavri rad zbog isteka zadatog vremena, a da pri tome uslov i nadalje ostane
istinit. Rad tajmera indicira TT bit. Naime, taj bit je postavljen na 1 za sve vreme za koje tajmer
aktivno meri vreme (timer timing), i postavlja se na 0 kada tajmer ne radi. Konano, kada je vrednost
DN bita 1, onda to znai da je tajmer zavrio (done) svoj posao, tj. izmerio zadato vreme. Pri tom, DN
bit ne govori o tome kada je tajmer zavrio sa poslom, jer e on ostati na vrednosti 1 sve dok uslov ne
postane neistinit. Vremenski dijagram rada tajmera ilustrovan je na Sl. 5-3.
Stanje tajmera se moe resetovati posebnom RES naredbom, o emu e kasnije biti vie rei.
1

Uslov

7
4

12

2-a

EN bit

8-a
5
13

TT bit
10

Zadano
vreme (PRE)

3
2-b

8-b 9

14
11

ACC vrednost

DN bit

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

vreme

Trenutci obrade ranga


sken ciklus

Sl. 5-3 Vremenski dijagram izvravanja TON naredbe.

Timer off-delay (TOF)

Ovom naredbom se definie druga vrsta tajmera i zauzimaju tri rei koje ine elemenat e u datoteci
tajmera f. Prilikom formiranja naredbe specificaraju se i vremenska baza (tx) i zadata vrednost (ns).
Akumulirana vrednost se automatski postavlja na 0.
TOF naredba zapoinje rad tajmera za vreme onog programskog sken ciklusa u kome uslov u rangu u
kome se naredba nalazi prvi put postaje neistinit (prelaz istini/neistinit silazna ivica). U svakom
sledeem sken ciklusu, sve dok je uslov neistinit asovnik vri auriranje akumulirane vrednosti
(ACC) u skladu sa proteklim vremenom izmeu dva ciklusa. Kada akumulirana vrednost dostigne
zadatu vrednost, tajmer prekida svoj rad. Pri tom, ako u nekom sken ciklusu uslov postane istinit,
tajmer prekida svoj rad i akumulirana vrednost se postavlja na 0, bez obzira da li je tajmer pre toga
izmerio zahtevano vreme ili ne.

79

Primeri
1

Uslov

12

EN bit
5

2-a

8-a
13

TT bit
10

Zadano
vreme (PRE)

3
6

2-b

8-b
9

14

ACC vrednost
11
DN bit

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

vreme

Trenutci obrade ranga


sken ciklus

Sl. 5-4 Vremenski dijagram izvravanja TOF naredbe

Bitovi stanja TOF tajmera menjaju se u toku programskog sken ciklusa na sledei nain:
DN - Timer done bit se postavlja na 1 kada je uslov istinit. On se resetuje na 0 kada je uslov
neistinit i pri tome je ACC PRE.
EN - Timer enable bit se postavlja na 1 kada je uslov istinit, i resetuje na 0 kada je uslov
neistinit.
TT - Timer timing bit se postavlja na 1 kada je uslov neistinit i pri tome je ACC PRE. One
se resetuje na nulu kada uslov postane istinit ili kada se DN bit resetuje.
U vezi sa radom TOF tajmera potrebno je da se zapazi nekoliko injenica. Pre svega tajmer radi samo
dok je uslov neistinit (signal na ulazu u tajmer je u stanju off). Istinitosnu vrednost uslova pokazuje
EN, ali za razliku od TON naredbe, ovde on onemoguava rad tajmera. Drugim reima, ovaj bit ima
vrednost 1 onda kada je uslov istinit i to oznaava da je rad tajmera onemoguen. Kada je uslov
neistinit, EN bit ima vrednost 0, to znai da je rad tajmera omoguen. Meutim, injenica da EN bit
ima vrednost 0 ne mora da znai da tajmer zaista i radi, jer je on mogao i da zavri rad zbog isteka
zadatog vremena, a da pri tom uslov i nadalje ostane neistinit. Rad tajmera indicira TT bit. Naime, taj
bit je postavljen na 1 za sve vreme za koje tajmer aktivno meri vreme (timer timing), i postavlja se na
0 kada tajmer ne radi. Konano, kada je vrednost DN bita 0, onda to znai da je tajmer zavrio (done)
svoj posao, tj. izmerio zadato vreme. Pri tom, DN bit ne govori o tome kada je asovnik zavrio sa
poslom, jer e on ostati na vrednosti 0 sve dok uslov ne postane istinit. Vremenski dijagram rada
asovnika ilustrovan je na Sl. 5-4.

Retentive Timer (RTO)

Ovom naredbom se definie trea vrsta tajmera i zauzimaju tri rei koje ine elemenat e u datoteci
asovnika f. Prilikom formiranja naredbe specificaraju se i vremenska baza (tx) i zadata vrednost
(ns). Akumulirana vrednost se automatski postavlja na 0.

80

Leder programiranje
1

Uslov

7
4

12
8

2-a

EN bit

5
13

TT bit
10
Zadano
vreme (PRE)

3
6

2-b

9
14
11

ACC vrednost

DN bit

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

vreme

Trenutci obrade ranga


sken ciklus

Sl. 5-5 Vremenski dijagram izvravanja RTO naredbe

RTO naredba se razlikuje od TON naredbe samo po tome to se akumulirana vrednost ne resetuje, ve
zadrava i onda kada uslov postane neistint. Drugim reima, ovaj tajmer poinje da radi kada uslov
postane istinit, i nastavlja sa radom poveavajui akumuliranu vrednost sve dok je uslov istinit. Kada
uslov postane neistinit, tajmer prekida rad, ali se akumulirana vrednost pri tome ne menja. To znai da
e kada uslov ponovo postane istinit, tajmer nastaviti sa radom i prethodno izmerenom vremenu
(ACC) dodavati nove vrednosti. Na taj nain ovaj tajmer omoguuje da se kumulativno mere intervali
vremena u kojima je uslov bio istinit (Sl. 5-5).
Bitovi stanja RTO tajmera menjaju se u toku programskog sken ciklusa na sledei nain:
DN - Timer done bit se postavlja na 1 kada je ACC PRE (asovnik je izmerio zadato
vreme). On se resetuje na 0 pomou posebne RES naredbe.
EN - Timer enable bit se postavlja na 1 kada je uslov u rangu istinit (rad asovnika je
omoguen) i resetuje na 0 kada uslov postane neistinit (rad asovnika je onemoguen).
TT - Timer timing bit se postavlja na 1 kada je uslov istinit i ako je ACC PRE (asovnik
radi). On se resetuje na 0 kada uslov postane neistinit ili kada se DN bit postavi na 1
(asovnik prestaje sa radom).

Reset naredba (RES)

RES naredba je naredba akcije i koristi se za resetovanje tajmera. Kada je uslov istinit ova naredba se
izvrava tako to se u tajmeru ija je adresa navedena u RES naredbi, resetuju na nulu bitovi DN, TT i
EN, kao i akumulirana vrednost (ACC). S obzirom na nain rada oigledno je da se RES naredbe ne
sme koristiti za TOF tip asovnika.

5.1.3.1

Nain rada tajmera

Sve dok asovnik radi, u svakom sken ciklusu poveava se akumulirana vrednost. Pri tome, iznos za
koji e se poveati ACC vrednost zavisi od duine trajanja sken ciklusa. Naime, kada se prilikom

81

Primeri

obrade ranga ustanovi da su se stekli uslovi da asovnik pone sa radom onda se istovremeno startuje
jedan interni asovnik, koji se aurira preko prekida (interapta) na svakih 0,01 sec. Broj registrovanih
vremenskih intervala se smeta u interni 8-bitni registar (bitovi 0-7 u prvoj rei). Ukoliko je u pitanju
asovnik ija je vremenska baza 0,01 sec, onda se u sledeem programskom skenu, kada se naie na
dati rang, vrednost internog registra, koja zapravo predstavlja interval vremena koji je protekao
izmeu dva sukcesivna sken-a, dodaje akumuliranoj vrednosti. Nakon toga se interni rgistar resetuje
na 0 i poinje ponovo da meri vreme do sledeeg skena. Budui da je maksimalna vrednost koju moe
da ima interni registar oko 2,5 sec (255x0,01), moe se oekivati da e tajmer raditi ispravno samo
ako sken ciklus ne traje due od 2,5 sekundi. Ukoliko se tajmer koristi u programu iji sken ciklus
traje due, onda je neophodno da se ista naredba za asovnik postavi na vie mesta u programu ime
e se obezbediti da se rangovi koji sadre taj asovnik obrauju sa uestanou koja nije vea od 2,5
sekundi.
Ukoliko asovnik radi sa vremenskom bazom od 1 sekunde obrada asovnika je donekle sloenija.
Ovde se, naime i dalje koristi interni asovnik koji se aurira na svakih 0,01 sekundi, ali se pri tome u
toku obrade ranga akumulirana vrednost aurira samo ako je akumulirana vrednost vea ili jednaka od
1 sekunde. Pri tome se akumulurina vrednost uveava za 1, dok se eventualni ostatak vremena pamti u
internom brojau i na njega se dodaju sledei inkrimenti od po 0,01 sekunde. Postupak auriranja
akumulirane vrednosti je takav da se moe oekivati da e asovnik raditi ispravno ako sken ciklus ne
traje due od 1,5 sekundi. Naravno, i ovde se problem cikulusa dueg trajanja moe prevazii
stavljanjem naredbe asovnika na vie mesta u programu.
Potrebno je da se naglasi da je pri korienju asovnika neophodno da se posebna panja posveti
naredbama za skok. Naime, i ako je trajanje sken ciklusa u dozvoljenim granicama, moe se desiti da
se nekom od naredbi za skok u jednom ili vie suskcesivnih sken ciklusa preskoi rang koji sadri
asovnik. Jasno je da se u tom sluaju nee vriti auriranje akumulirane vrednosti. To nadalje znai
da je neophodno da se obezbedi da u sluaju bilo kakvog programskog skoka, naredba za asovnik ne
bude iskljuena iz obrade u periodu koji je dui od maksimalno dozvoljenog vremena.

5.2

Naredbe za prebrojavanje dogaaja

5.2.1 Parametri brojaa


Svakom brojau pridruena su sledea dva parametra:

Zadata vrednost (preset value - PRE) je vrednost kojom se definie ukupni broj dogaaja koje
broja treba da registruje pre nego to se generie signal koji oznaava da je broja zavrio rad.
Zadata vrednost za broja moe da se kree u intervalu od 0 do +32767.

Akumulirana vrednost (accumulated value - ACC) predstavlja broj dogaaja koje je broja
registrovao u nekom trenutku.

5.2.2

Datoteka podataka o brojau (counter data file)

Budui da je broja, isto kao i asovnik, realizovan softverski, parametri koji definiu njegov rad
moraju biti smeteni u memoriji kontrolera. Za pamenje podataka o brojaima koristi se datoteka
podataka broj 5 (counter file C). U ovoj datoteci moe se definisati najvie 256 razliitih brojaa.
Ukoliko je potrebno da se koristi vei broj brojaa, korisnik moe definisati i dodatne datoteke
(korisniki definisane datoteke) iji su brojevi od 9 do 255.
Svakom brojau pridruuju se po jedan element u odgovarajuoj datoteci (Sl. 5-6). Osnovni element
ovih datoteka sastoji se od tri 16-bitne rei:

Re 0 je kontrolna re koja sadri 6 bitova koji ukazuju na stanje brojaa.

Re 1 sadri zadatu vrednost (PRE)

Re 2 sadri akumuliranu vrednost (ACC)

82

Leder programiranje

Sl. 5-6 Elemenat datoteke brojaa i adresiranje brojaa.

5.2.3 Naredbe brojaa


Postoje dva osnovna tipa brojaa broja unapred (CTU count up) i broja unazad (CTD count
down). Obe naredbe su naredbe akcije, to znai da se smetaju u desni deo ranga. Oba brojaa broje
promene vrednosti uslova sa neistinit na isitinit (uzlazna ivica). Pri svim ostalim vrednostima uslova,
oni zadravaju prebrojani iznos i ekaju sledei prelaz. Drugim reima, brojai se niti putaju u rad,
niti zaustavljaju. Oni neprekidno rade i belee (broje) svaki prelaz istinit/neistinit. Dostizanje zadate
vrednosti se signalizira postavljavanjem odgovarajueg bita done bit (DN) na 1, ali se brojanje i
dalje nastavlja. Prebrojani iznos se moe izbrisati jedino posebnom RES naredbom.
Jedina razlika izmeu dva tipa brojaa sastoji se u tome to prvi (CTU) broji unapred od 0 do 32767, i
postavlja overflow bit (OV) na 1 kad pree 32767, dok drugi (CTD) broji unazad, od 0 do 32768, i
postavlja underflow bit (UN) kad pree 32768.

Count up (CTU)

Bitovi stanja brojaa menjaju se u toku programskog sken ciklusa na sledei nain:
OV - Count up overflow bit se postavlja na 1 kada akumulirana vrednost (ACC) prelazi sa
32767 na 32768 (u binarnoj aritmetici drugog komplementa sa 16-bitnom rei vai: 32767+1=
32768), i nastavlja brojanje unapredi.
DN - done bit se postavlja na 1 kada je ACC PRE;
CU - Count up enable bit se postavlja na 1 kada je uslov istinit, a resetuje na 0 kada je uslov
neistinit ili kada se aktivira odgovarajua RES naredba.

83

Primeri

Count down (CTD)


CTD naredba, grafiki simbol i poloaj u rangu
CTD
uslov

CD
COUNT DOWN
Counter
Preset
Accum

Cf:e
ns
na

DN

Bitovi stanja brojaa menjaju se u toku programskog sken ciklusa na sledei nain:
UN - Count down underflow bit se postavlja na jedan kada akumulirana vrednost (ACC)
prelazi sa 32768 na 32767 (u binarnoj aritmetici drugog komplementa, sa 16-bitnom rei, vai:
32768-1= 32767), i nastavlja da broji unazad od te vrednosti.
DN - done bit se postavlja na 1 kada je ACC PRE;
CD - Count down enable bit se postavlja na 1 kada je uslov istinit, a resetuje na 0 kada je uslov
neistinit ili kada se aktivira odgovarajua RES naredba.

5.3

Primeri korienja tajmera i brojaa

Pr. 5-1 One-shot kolo


Zadatak: Ulaz u sistem je signal Start, a izlaz signal Alarm. Start=1 postavlja Alarm=1 u trajanju od
17s. (Start je impulsni signal ije trajanje moe biti krae ili due od 17s.)
Reenje: Sistem funkcionie kao monostabilni multivibrator gde signal Start igra ulogu okidnog
impulsa. Reenje je dato na Sl. 5-7. U prvom rangu, Start=1 postavlja Alarm=1, to u drugom rangu
omoguava tajmer koji se koristi za odmeravanje vremena od 17s. Po isteku 17s, tajmer setuje svoj
DN bit, to raskida Start/Stop kolo iz prvog ranga i resetuje signal Alarm.

Sl. 5-7 Reenje zadatka iz Pr. 5-1.

Pr. 5-2 Generator impulsa


Zadatak: Sve dok je ulazni signal Enable=1, na izlazu Pulse generiu se kratkotrajni impulsi periode
1s. Za Enable=0, vai Pulse=0.
Reenje: Reenje sadri dva ranga (Sl. 5-8). Tajmer iz prvog ranga je zaduen za odmeravanje
vremena od 1s. Uvek kada zavri odmeravanje jedne periode, tajmer resetuje samog sebe (bitom DN)
i kree iz poetka (DN=1 resetuje tajmer, ali i postavlja DN=0, to ponovo omoguava rad tajmera).
Dakle, DN=1 se javlja po isteku svake sekunde i traje tano jedan sken ciklus. U drugom rangu,
vrednost bita DN se prenosi na izlaz.

84

Leder programiranje

Sl. 5-8 Reenje zadatka iz Pr. 5-2.

Pr. 5-3 Generator signala pravougaonog talasnog oblika


Zadatak: Sve dok je ulaz A=1, na izlazu B se generie signal periode 5s pravougaonog talasnog
oblika s jednakim trajanjem impulsa i pauze,.
Reenje: Reenje koristi dva TON tajmera koji su meusobno povezani tako da rade naizmenino. Na
poetku, dok je A=0, oba tajmera su resetovana i onemoguena i oba done bita imaju vrednost 0.
Kada A postane 1, proradie samo prvi tajmer (zbog T4:1/DN = 0), dok e drugi ostati zakoen (zbog
T4:0/DN = 0). Kada prvi tajmer dostigne do svoju preset vrednosti, njegov done bit se postavlja na
DN=1, to omoguava drugi tajmer koji poinje da odbrojava osnovne vremenske jedinice. Uoimo
da done bit prvog tajmera ostaje 1, zbog uslova u prvom rangu koji je jo uvek taan. Kada drugi
tajmer stigne do svoje zadate vrednosti, njegov done bit se setuje, to ima za posledicu resetovanje
prvog tajmera. Meutim, done bit drugog tajmera ima vrednost 1 samo u toku jednog sken ciklusa, a
ve u prvom sledeem sken ciklusu dobija vrenost 0 i tako resetuje drugi tajmer. U ovom trenutku,
uslovi su kao na samom poetku: oba done bita su 0; prvi tajmer poinje sa radom, dok drugi ostaje
zakoen. Trei rang pobuuje izlaz B: B ima vrednost 1 dok je A=1 i prvi tajmer je aktivan.

Sl. 5-9 Reenje zadatka iz Pr. 5-3.

Pr. 5-4 Delay-off kolo


Zadatak: Postoji jedan ulaz, A, i dva izlaza, B i C. Izlaz B prati promene ulaza A, tj. B=A. Izlaz C se
ukljuuje kada i A=1, a iskljuuje 20 s nakon A=0.
Reenje: Ovaj zadatak je tipian primer primene TOF tajmera (zakanjene iskljuivanja). Za vreme
dok je A=1, TOF tajmer iz drugog ranga je zakoen, a njegov done bit ima vrednost DN=1 (Sl. 5-10).
Tajmer poinje sa radom kada A=0. Po isteku zadatog vremena, tajmer se zaustavlja, a njegov DN bit
dobija vrednost DN=0. done bit zadrava vrednost 0 sve do sledeeg aktiviranja ulaza A. done bit
tajmera je iskorien u treem rangu, zajedno sa ulazom A, za formiranje Start/Stop kola koje
pobuuje izlaz C. C se setuje ulazom A, tj. sa A=1, a resetuje done bitom, tj. sa DN=0. Vremenski
dijagrami sa Sl. 5-10 ilustruju dve mogue situacije koje nastaju kada je vreme od poetka rada
sistema pa do prvog aktiviranja ulaza A krae, odnosno due od 20s. Poto na poetku A ima vrednost
0, tajmer e biti omoguen iako se A ne postavi na 1 pre isteka 20s, tajmer e stii do kraja i
resetovae svoj done bit (prvi sluaj). Meutim, ako je vreme do prvog aktiviranja ulaza A krae od
20s, tajmer ne stie do kraja, a njegov done bit zadrava vrednost 1. Kao to vidimo, u oba sluaja,
zahvaljujui Start/Stop kolu, izlaz C se generie ispravno.

85

Primeri

TOF
Timer Off Delay
Timer
Time Base
Preset
Accum

T4:0

T4:0
1
20
0

(EN)
(DN)

DN

Sl. 5-10 Reenje zadatka iz Pr. 5-4.

Pr. 5-5 Delay-on kolo


Zadatak: Jedan ulaz (A) i jedan izlaz (B). B se setuje 8s nakon to se A postavi na 1, a resetuje
istovremeno kada A=0.
Reenje: Ovaj zadatak ilustruje tipinu primenu delay-on tajmera (odloeno ukljuenje). Reenje
sadri samo dva ranga. Prvi rang sadri tajmer koji se kontrolie ulazom A. Kada je A=0, tajmer je
onemoguen i DN=0. Kada A postane 1, tajmer poine da radi, a nakon odmerenog zadatog vremena
njegov DN bit postaje 1. Drugi rang prenosi vrednost DN bitna na izlaz B.

Sl. 5-11 Reenje zadatka iz Pr. 5-5.

Pr. 5-6 Dvostruko delay-off kolo


Zadatak: Jedan ulaz, A, i dva izlaza, B i C. Oba izlaza se ukljuuju kad i A. Izlaz B se iskljuuje sa
zakanjenjem od 10s, a C sa zakanjenjem od 20s u odnosu na A=0.

Reenje: Zadatak moemo reiti po ugledu na reenje zadatka iz Pr. 5-4, s tom razlikom to
sada treba koristiti dva para TOF tajmer - Start/Stop kolo. Oba tajmera se kontroliu ulazom
A. Tajmer za izlaz B je podeen na 10s, a tajmer za izlaz C na 20s. (Sl. 5-12)
Pr. 5-7 Dvostruko delay-on kolo
Zadatak: Jedan ulaz, A, i dva izlaza B i C. U odnosu na A, B se ukljuuje sa zakanjenjem od 2s, a C
sa zakanjenjem od 5s. A=0, iskljuuje oba izlaza (B=C=0).
Reenje: Zadatak moemo reiti po ugledu na zadatak iz Pr. 5-5. Koristimo dva TON tajmera, jedan
koji kontrolie izlaz B, a drugi izlaz C. Tajmer za B je podeen na 2s, a tajmer za C na 5s. (Sl. 5-13)
Drugo reenje bi bilo da se tajmeri poveu redno, tako da se tajmer za C omoguava DN bitom
tajmera za B. Tajmer za B je podeen na 2s, a tajmer za C na 3s (5-2s).

86

Leder programiranje

TOF
Timer Off Delay
Timer
Time Base
Preset
Accum

T4:0

TON
Timer On Delay
Timer
Time Base
Preset
Accum

DN
T4:0

T4:0
1
2
0

(EN)
(DN)

TOF
Timer Off Delay
Timer
Time Base
Preset
Accum

(EN)
(DN)

T4:0
1
10
0

T4:1

T4:1
1
20
0

(EN)
(DN)

DN
A

TON
Timer On Delay
Timer
Time Base
Preset
Accum

DN

T4:1

T4:1
1
5
0

(EN)
(DN)

DN

Sl. 5-12 Dvostruko delay-off kolo

Sl. 5-13 Dvostruko delay-on kolo

Pr. 5-8 Pomereni impuls


Zadatak: Jedan ulaz, A, jedan izlaz, B. A=0 => B=0. Za vreme dok je A=1, na izlazu B se generie
impuls koji poinje 8.7s nakon A=1 i traje 7.3s (Sl. 5-14).

Sl. 5-14 Vremenski dijagram za zadatak iz Pr. 5-8.

Reenje: Potrebna su dva TON tajmera, prvi (T4:0) podeen na vreme 8.7s, a drugi (T4:1) na 16s (8.7
+ 7.3). Oba tajmera se kontroliu ulazom A (Sl. 5-15). Na vremenskom dijagramu sa Sl. 5-15 vidimo
kako se menjaju Done bitovi tajmera: T4:0/DN postaje 1 8.7s nakon A=1, dok T4:1/DN postaje 1 16s
nakon A=1. Lako je uoiti da izlaz B ima vrednost 1 kada je T4:0/DN = 1 i T4:1/DN = 0.

Sl. 5-15 Reenje zadatak iz Pr. 5-8.

Pr. 5-9 Povorka impusla


Zadatak: Jedan ulaz, A, i jedan izlaz, B. Za vreme dok je A=1, na izlazu B se generie signal kao na
Sl. 5-16.

87

Primeri

Sl. 5-16 Vremenski dijagram za zadatak iz Pr. 5-9

Reenje:
Zadatak se reava uvoenjem pomonih
bitova X1, X2, X3 i X4, Sl. 5-17. Odgovarajui
leder dijagram je prikazan na Sl. 5-18

TON
Timer On Delay
Timer
Time Base
Preset
Accum

T4:0

(EN)
(DN)

T4:0
0.01
870
0

X1

DN
X1

TON
Timer On Delay
Timer
Time Base
Preset
Accum

T4:1

(EN)
(DN)

T4:1
0.01
730
0

X2

DN
X2

TON
Timer On Delay
Timer
Time Base
Preset
Accum

Sl. 5-17 Talasni dijagram sa uvedenim pomonim


bitovima

(EN)
(DN)

T4:2
0.01
510
0

T4:2
DN
X3

TON
Timer On Delay
Timer
Time Base
Preset
Accum

T4:3

(EN)
(DN)

T4:3
0.01
490
0

X4

DN
X1

X4

X2

X3

X2

X3

Sl. 5-18 Povorka impulsa

Pr. 5-10: Kontrola zagrevanja penice


Zadatak: Sistem ine: greja, G, ventilator, V, sirena, S, i dva tastera, Start i Stop. Sistem se puta u
rad tasterom Start. Ventilator odmah poinje sa radom, a sirena emituje zvuni signal upozorenja u
trajanju od 5s. Po isteku 5s, ukljuuje se i greja. Pritiskom na taster Stop, greja se iskljuuje, a
ventilator nastavlja da radi jo 10s.
Reenje: Jasno je da tastere Start i Stop treba povezati u Start/Stop kolo (Sl. 5-19). Neka je Auto bit za
samodranje (Auto se setuje sa Start, a resetuje sa Stop). U odnosu na bit Auto, ukljuivanje grajaa
kasni 5s, a iskljuivanje ventilatora za 10s. To znai da za upravljanje grejaem moemo iskoristiti
TON kao u Pr. 5-5, a za upravljanje ventilatorom TOF tajmer, kao u Pr. 5-4. Leder dijagram je
prikazan na Sl. 5-19. Uoimo da se sirena pobuuje bitom TT TON tajmera, jer sirena treba da radi
samo u prvih 5s nakon putanja sistema u rad, tj. samo dok TON tajmer ne zavri rad.

88

Leder programiranje
START

Auto

STOP

Auto

Auto

TON
Timer On Delay
Timer
Time Base
Preset
Accum

Auto

T4:0
0.01
500
0

(EN)
(DN)

TOF
Timer Off Delay
Timer
Time Base
Preset
Accum

T4:1
0.01
1000
0

(EN)
(DN)
S

T4:0
TT

T4:0
DN
Auto

T4:1

DN

Sl. 5-19 Leder dijagram sistema za zagrevanje penice.

Pr. 5-11: Pozicioniranje predmeta na pokretnoj traci


Zadatak: Pokretna traka se pokree motorom M. Motor se ukljuuje Start, a iskljuuje Stop tasterom.
Za pozicioniranje predmeta koji se prenosi trakom koristi se optiki senzor, OS. Traka se zaustavlja
1.5s nakon to OS detektuje prolazak predmeta, ostaje zaustavljena 2s i ponovo se pokree (Sl. 5-20).

Sl. 5-20 Vremenski dijagram za zadatak Pr. 5-11

Reenje: Koriste se dva TON tajmera, koja su slino kao u primeru Pomereni impuls, podeeni na
vremena 1.5s i 3.5s (1.5+2). Uvedena su dva pomona bita, Run i Auto. Bit Run, koji se postavlja
Start/Stop kolom koje formiraju ulazi Start i Stop (rang 1), predstavlja dozvolu rada sistema. Bit Auto
se postavlja Start/Stop kolom u rangu 2. Auto se setuje signalom senzora OS, sa OS=1, a resetuje
kada tajmer T4:1 odmeri zadato vreme (tj. nakon 3.5s). Auto se koristi kao dozvola rada tajmera i
dodatno je uslovljen Run bitom, tako da dok je sistem stopiran (Run=0) i Auto ostaje 0, a tajmeri su
onemogueni. Kada se na ulazu OS javi 1, tajmeri poinju da rade (zbog Auto=1). T4:0/DN postaje 1
nakon 1.5s, a T4:1/DN posle 3.5s. Pojava T4:1/DN=1 resetuje bit Auto (u rangu 2), to ima za
posledicu da se ve u sledeem sken ciklusu resetuju i onemogue oba tajmera. Na taj nain su
pripremljeni uslovi za novi ciklus rada. Na osnovu vremenskih dijagrama lako je uoiti da izlazni
signal M treba da ima vrednost 0 kada je T4:0/DN = 1 uz dodatni uslov Run=1 - sistem je startovan
(rang 5).

89

Primeri

Sl. 5-21 Vremenski dijagram za zadatak iz Pr. 5-11

Pr. 5-12 RTO tajmer


Zadatak: Motor M se ukljuuje pomou Start, a iskljuuje pomou Stop tastera. Motor ne sme biti
ukljuen due od 5 min i automatski se iskljuuje ako se ovo vreme prekorai. Takoe, meri se i
ukupno vreme rada motora. Nakon to se dostigne vreme od 8h rada, vie nije mogue ukljuiti
motor, a pali se signalna lampa L koja upozorava da treba obaviti servisiranje. Po obavljenom
servisiranju, sistem se resetuje tasterom R.
Reenje: U ovom primeru se koristi TON tajmer za merenje maksimalno dozvoljenog vremena
neprekidnog rada motora i RTO tajmer za merenje ukupnog vremena rada motora. Kao to vidimo,
oba tajmera se kontroliu bitom M, koji pobuuje motor; dok motor radi, rade i oba tajmera. Istek
zadatog vremena bilo kog od dva tajmera trenutno iskljuuje motor (prvi rang). U sluaju da je
prekoraeno vreme RTO tajmera, jedini nain da se sistem ponovo pokrene je resetovanje tasterom R.

Sl. 5-22 Reenje zadatka iz Pr. 5-12

90

Leder programiranje

Pr. 5-13 Ogranieni broj ukljuivanja


Zadatak: Sijalica S se pali pomou Start, a gasi pomou Stop tastera. Potrebno je ograniiti broj
paljenja sijalice na 10. Postoji i taster Reset, koji resetuje broj ukljuivanja.
Reenje: Preset vrednost brojaa je 11, tako da 11. pokuaj paljenje sijalice dovodi do C5:5/DN = 1,
to u prvom rangu onemoguava paljenje sijalice (Sl. 5-23). Reset=1, resetuje broja, tj. postavlja
C5:5.ACC=0 i C5:5/DN=0. Na taj nain, omogueno je paljenje sijalice, a brojanje paljenja kree iz
poetka.

Sl. 5-23 Reenje zadatka iz Pr. 5-13.

Pr. 5-14 Zadati broj okretaja motora


Zadatak: Pritiskom na taster Start pokree se motor M. Nakon 100 rotacija motor se zaustavlja. Na
osovini motora je ugraen tzv. enkoder, E, koji registruje obrtaje i za svaki obrtaj daje jedan impusl.
Reenje: Motorom se upravlja pomou Start/Stop kola (prvi rang), kod koga taster Start setuje, a done
bit brojaa resetuje izlazni bit M. Broja broji impulse sa enkodera, a njegova preset vrednost je 100.
Nakon 100 impulsa C5:1/DN postaje 1, to kao posledicu ima iskljuene motora (prvi rang) i
resetovanje brojaa (trei rang), ime je ujedno sistem pripremljen za novo startovanje.

Sl. 5-24 Reenje zadatka iz Pr. 5-14.

Pr. 5-15 Tajmer i broja (1)


Zadatak: Nakon izbrojanih 15 impulsa sa senzora S, izlaz P se pobuuje (P=1) u trajanju od 25s.
Taster R slui za resetovanje sistema.

91

Primeri

Reenje: Reenje (Sl. 5-25) koristi broja za brojanje impulsa i tajmer za merenje vremena. Broja
broji unapred (CTU) i podeen je na zadatu vrednost 15. Tajmer je TON tipa i podeen je na zadato
vreme od 25s. Izlaz P se setuje kada broja dostigne zadatu vrednost (Done bitom brojaa).
Istovremeno, izlaz P se koristi kao dozvola rada tajmera. Izlaz P se resetuje kada tajmer dostigne
zadatu vrednost (Done bitom tajmera). Taster R posredstvom RES naredbi, resetuje broja i tajmer.
Nakon resetovanja, sistem je spreman za novi ciklus rada.

Sl. 5-25 Reenje zadatka iz Pr. 5-15.

Pr. 5-16 Tajmer i broja (2)


Zadatak: Brojanje impusla koji potiu sa senzora S poine 1h nakon ukljuenja sistema. Nakon
izbrojanih 150 impulsa, aktivira se izlaz P. Taster R slui za resetovanje sistema.
Reenje: U datom reenju (slika), u rangu koji sadri tajmer na postoji uslov. To znai da tajmer radi
neprekidno (uslov je uvek taan) i moe se resetovati samo naredbom RES.
TON
Timer On Delay
Timer
Time Base
Preset
Accum

T4:0
DN

C5:1

(EN)
(DN)

T4:0
1
3600
0

CTU
Count Up
Counter
Preset
Accum

(CU)
(DN)

C5:1
150
0

DN
R

C5:1
RES
T4:0
RES

Sl. 5-26 Reenje zadatka iz Pr. 5-16.

92

Leder programiranje

Pr. 5-17 Brojanje proizvoda na pokretnoj traci


Zadatak: Potrebno je doi do informacije o broju proizvoda koji se trenutno nalaze na pokretnoj traci.
Postavljena su dva senzora za detekciju prolaska proizvoda: prvi, S1, na poetku i drugi, S2, na kraju
trake. S1 registruje proizvode koji se stavljaju na traku, a S2 proizvode koji naputaju traku.
Informacija koju traimo je P = N(S1) - N(S2), gde je N(Si) broj proizvoda koje je registrovao senzor
Si. Kako e ta informacija dalje biti koriena nije problem koji treba reavati u ovom zadatku.
Reenje: Koristimo dva brojaa: jedan tipa CTU (broji napred) koji broji impulse sa senzora S1 i
drugi tipa CTD (broji unazad) koji broji impulse sa senzora S2 (Sl. 5-27). Treba zapaziti da oba
brojaa dele isti element iz datoteke brojaa, C5:0. To znai da e oba brojaa aurirati isti registar
(ACC) kada odbrojavaju impulse. Svaki impuls sa senzora S1 uveae vrednost u C5:0.ACC za jedan,
dok e svaki impuls sa senzora S2 umanjiti ovu vrednost za 1. Dakle, traena informacija je prisutna u
registru C5:0.ACC.
Napomenimo da u konfiguraciji preklopljenih brojaa kao sa Sl. 5-27 (kada dva brojaa koriste istu
adresu), preset vrednosti moraju biti iste, a DN bit se postavlja na 1 kada ACC PRE (tj. kao da se
radi o CTU brojau). U konkretnom primeru, DN bit se ne koristi, pa iz tog razloga preset (PRE)
vrednost nije od znaaja.
S1

CTU
Count Up
Counter
Preset
Accum

S2

C5:0
100
0

(CU)
(DN)

C5:0
100
0

(CU)
(DN)

CTD
Count Down
Counter
Preset
Accum

C5:0

RES

Sl. 5-27 Reenje zadatka iz Pr. 5-17.

Pr. 5-18 Sistem za pakovanje jabuka u kutije


Zadatak: Na Sl. 5-28 je prikazan sistem za pakovanje jabuka u kutije. Sistem se puta u rad tasterom
Start, a zaustavlja tasterom Stop. Pokretna traka za kutije se pokree motorom MK, a traka za jabuke
motorom MJ. Prisustvo kutije na mestu za punjenje detektuje se senzorom SK, dok se za detekciju
jabuka koristi senzor SJ. Kada se na mestu za punjenje detektuje kutija, traka za kutije se zaustavlja, a
pokree traka za jabuke. Nakon izbrojanih 5 jabuka, traka za jabuke se zaustavlja, a traka za kutije
ponovo pokree.

Sl. 5-28 Sistem za pakovanje jabuka u kutije

93

Primeri

Reenje: Jasno je da za brojanje jabuka treba


koristiti broja koji se taktuje signalom SJ.
Takoe je jasno da dok radi MK ne radi MJ i
obrnuto. Motorom MJ se moe upravljati
start/stop kolom kod koga e SK imati ulogu
start, a done bit brojaa ulogu stop bita. Izlaz MK
e biti komplement bita MJ. Naravno, Start i Stop
tastere treba povezati u start/stop kolo, a pomoni
bit koji se koristi za samodranje upotrebiti kao
dodatni uslov za pobudu motora. Uz to, broja
jabuka treba resetovati uvek nakon izbrojanih 5
jabuka (done bitom brojaa) (Sl. 5-29).

Sl. 5-29 Leder dijagram za Pr. 5-18.

Pr. 5-19 Upravljanje rotacijom osovine


Zadatak: Na Sl. 5-30(a) prikazan je sistem za
upravljanje rotacijom osovine koja je deo nekog
sloenijeg elektro-mehanikog sistema. Blok
POBUDA, koji sadri motor i prateu
elektroniku, okree osovinu u zadatom smeru. Za
M=0, osovina miruje; za M=1 i S=0, osovina se
okree u jednom, a za M=1 i S=1 u drugom
smeru. Blok ENKODER registruje obrtaje
osovine i generie jedan impuls, E, za svaki
obrtaj. Realizovati leder program za PLC
kontroler koji e omoguiti da osovina
naizmenino rotira po 100 obrtaja u oba smera sa
pauzom od 1s pri svakoj promeni smera.

(a)

(b)
Sl. 5-30 Sistem za upravljanje rotacijom osovine: (a) blok dijagram sistema; (b) leder dijagram.

Reenje: Sistem ne poseduje tastere za startovanje i zaustavljanje. Zato emo pretpostaviti da odmah
nakon ukljuenja napajanja sistem poinje sa svojim normalnim radom. Za realizaciju leder dijagrama
iskoristiemo broja, za brojanje obrtaja, i tajmer za omeravanje pauze nakon zavrene rotacije u
jednom smeru. Izlaz M, koji ukljuuje/iskljuuje motor, moe se pobuivati start/stop kolom, kod
koga e Done bit tajmera imati ulogu start, a Done bit brojaa ulogu stop uslova. (Kada broja odbroji
100 obrtaja, motor se zaustavlja; kada tajmer odmeri 1s, motor se pokree.) Da bi smo obezbedili da

94

Leder programiranje

odmah po ukljuenu napajanja motor poen da se okree, dodatni uslov za setovanje izlaza M bie
first scan bit, FS. Izlazni bit S se menja pri svakom novom ukljuenu motora, odnosno uvek kada
Done bit tajmera postane 1. Uslov za rad tajmera je motor iskljuen, a uslov za dozvolu brojanja
motor ukljuen. Uslov za resetovanje brojaa je, kao i za promenu smera, Done bit tajmera je 1.
Leder dijagram je prikazan na Sl. 5-30(b). Primetimo da T4:0/DN=1 traje tano jedan sken ciklus. Da
to nije tako, setovanje i resetovanje izlaznog bita S ne bi bilo regularno.
Studentima se predlae da ovaj zadatak ree primenom metoda konanih automata.
Pr. 5-20 Upravljanje automaskom builicom
Zadatak: Kreirati leder dijagram za PLC koji upravlja automatskom builicom (Sl. 5-31). Operacije i
uslovi su sledei: (1) Kada se na radnu povrinu postavi komad za buenje (detektuje se senzorom
S1), ukljuuju se motor builice, B, i motor koji pokree builicu nanie, M. (2) Kada je komad
probuen (detektuje se senzorom S2), motor M se iskljuuje, a builica se pod dejstvom opruge vraa
u polazni poloaj. 3) motor builice B se iskljuuje 5s nakon zavrenog buenja, pod uslovom da u
meuvremenu na radnu povrinu nije postavljen novi komad za buenje. Zadatak reiti primenom
metoda konanih automata.

Sl. 5-31 Automatska builica

Reenje: Analizom problema moemo doi do zakljuka da sistem poseduje sledea etiri stanja:
F0 - inicijalno (neaktivno) stanje sistema, u kome se eka na postavljanje komada na mesto za
buenje (na aktiviranje senzora S1).
F1 - buenje, u kome su ukljueni motor builice i motor za sputanje builice (M=B=1). Ovo
stanje se zavrava u trenutku kada burgija probije predmet koji se bui (aktiviran senzor S2).
F2 - ekanje da se probueni predmet ukloni. U ovom stanju, motor builice je i dalje
ukljuen (B=1). Motor za sputanje je iskljuen (M=0) tako da se builica pod dejstvom
opruge vraa u svoj gornji poloaj. Takoe, u ovom stanju je omoguen tajmer koji odmerava
vreme ekanja, podeeno na 5s. Usvojiemo da se rad tajmera kontrolie bitom TE. U ovom
stanju vai TE=1. Stanje se zavrava kada se sa mesta za buenje ukloni predmet (deaktivira
senzor S1).
F3 - ekanje na novi predmet ili istek vremena ekanja. U ovom stanju, motor builice jo
uvek radi (B=1), a tajmer aktivno meri vreme (TE=1). Stanje se zavrava u momentu kada se
predmet ukloni (S1=1) ili istekne zadato vreme (Done bit tajmera je aktiviran, TDN=1). U
prvom sluaju, (S1=1), sistem se vraa u stanje F1, a u drugom (TDN=1) u stanje F0.
Odgovarajui ASM dijagram je prikazan na Sl. 5-32(a).
Jednaine stanja su:
F 0 ( F 0 F 3 S1 TDN ) F 0 S1 ( F 0 F 3 S1 TDN ) ( F 0 S1) FS
F1 ( F1 F 0 S1 F 3 S1) F1 S 2 ( F1 F 0 S1 F 3 S1) ( F1 S 2)

F 2 ( F 2 F1 S 2) F1 S 2 ( F 2 F1 S 2) ( F 2 S 2)

F 3 ( F 3 F 2 S1) F 3 S1 F 3 S1 TDN ( F 3 F 2 S1) ( F 3 S1 TDN )

95

Primeri

Sistem poseduje dva fizika izlaza, M i B. Meutim, i bit za kontrolu tajmera, TE, se moe smatrati
izlazom. Primetimo da se tajmer, kao takav, ne pojavljuje u ASM dijagramu, ve se tretira kao
eksterna jedinica kojom se upravlja bitom TE. Shodno ASM dijagramu, bit M je aktivan u stanju F1,
tj. M=F1; bit B je aktivan u stanjima F1, F2 i F3, tj. B=F1+F2+F3= F 0 , dok je bit TE aktivan u
stanjima F2 i F3, tj. TE=F2+F3.
Leder dijagram je prikazan na Sl. 5-32(b).
U prikazanom reenju, u stanju F2 sistem eka na sklanjanje probuenog predmeta bez vremenskog
ogranienja. To znai da e builica ostati ukljuena sve dok se predmet ne skloni bez obzira da li e
do momenta sklanjanja proi manje ili vie od 5 s. Studentima se preputa da modifikuju dato reenje
na nain da sistem vodi rauna o vremenu ekanja na uklanjanje probuenog predmeta i iskljui
builicu ako i posle 5 s predmet nije sklonjen sa mesta za buenje.

F0
Neaktivno stanje
eka se na
postavljanje
komada
0

S1
1

F1

B=1, M=1

Buenje

S2
F2

Buenje zavreno,
builica radi
ekanje da se
komad skloni

B=1, TE=1

1
S1

Postavljen
novi komad

F3

0
Komad je sklonjen
ekamo da se
stavi novi komad
ili istekne zadato
vreme

B=1, TE=1

S1

Isteklo 5s
0
1

TDN

TE dozvola rada tajmera


TDN signal DONE tajmera

(a)
(b)
Sl. 5-32 Reenje zadatka iz Pr. 5-20 : (a) ASM dijagram; (b) leder dijagram.

96

Leder programiranje

Pr. 5-21 Dvosmerna pokretna traka


Zadatak: Dvosmerana pokretna traka se pokree motorima M1 i M2 (Sl. 5-33). Motorima se upravlja
pomou dva dvopoloajna (ON/OFF) prekidaa, START i SMER. Za START=OFF, oba motora su
iskljuena (traka se ne kree). Za START=ON i SMER=OFF, motor M1 je ukljuen, a M2 iskljuen
(traka se kree u smeru LEVO); za START=ON i SMER=ON, M1 je iskljuen, a M2 ukljuen (traka
se kree u smeru DESNO). Realizovati leder program koji e obezbediti pauzu od 1s pri promeni
smera kretanja.
Na primer, ako se u toku kretanja trake, promeni poloaj prekidaa SMER, traka se zaustavlja i
nastavlja kretanje u suprotnom smeru posle 1s. Ako se pre isteka 1s prekida SMER vrati u prvobitni
poloaj, traka trenutno nastavlja kratanje u istom smeru. Pauzu od 1s treba obezbediti i u sledeoj
situaciji: kretanje trake je zaustavljeno prekidaem START (START=OFF), zatim je promenjen
poloaj prekidaa SMER i prekida START vraen u poloaj ON i sve tu u vremenu kraemo od 1 s.

Sl. 5-33 Dvosmerna pokretna traka.

Reenje: Ulazi u sistem su stanja prekidaa START i SMER, a izlazi signali za upravljenje motorima
M1 i M2. Meutim, nain na koji se (START, SMER) preslikava na (M1, M2), zavisi od tekueg
stanja sistema. Na primer, sistem na jedan nain reaguje na prekidae ako se traka kree, na drugi ako
je od trenutka zaustavljanja trake prolo manje od 1s, a na trei ako traka stoji due od jedne sekunde.
Stanja sistema su:
S1 - neaktivno stanje; sistem je iskljuen i eka se na START=1.
S2 - kretanje u smeru levo; motor M1 radi, a M2 je iskljuen. Ovo stanje se prekida kada se
promeni poloaj bilo kog prekidaa (kada START=0, ili SMER=1).
S3 - pauza nakon prekida kretanja u smeru levo. Traka stoji i omoguen je tajmer za merenje 1s.
Uslovi za naputanje ovog stanja su: 1) prekidaima je ponovo postavljen smer kretanja ulevo
(START=1 i SMER=0); 2) istekla pauza.
S4 - kretanje u smeru desno. Motor M1 je iskljuen, a motor M2 radi. Ovo stanje se prekida
kada se promeni poloaj bilo kog prekidaa (kada START=0, ili SMER=1).
S5 - pauza nakon prekida kretanja u smeru levo. Traka stoji i omoguen je tajmer za merenje 1s.
Uslovi za naputanje ovog stanja su: 1) prekidaima je ponovo postavljen smer kretanja u desno
(START=1 i SMER=1); 2) istekla pauza.
Odgovarajui ASM dijagram je prikazan na Sl. 5-34. Nakon putanja u rad (START=1), sistem
prelazi u stanje S1 ili S2, zavisno od poloaja prekidaa SMER. U toku kretanja, svaka promena
poloaja bilo kog prekidaa, START ili STOP, zaustavlja kretanje i omoguava rad tajmera koji se
koristi za odmeravanje pauze od 1s (stanje S3 ili S5). Ako se za vreme pauze, prekidai postave u
poloaje koji odgovaraju smeru kretanju koji je vaio neposredno pre zaustavljanja, sistem
momentalno nastavlja kretanje u tom smeru. U suprotnom, ako se to ne desi, ve istekne zadato vreme
ekanja, sistem se vraa u poetno stanje, S1. Moe se desiti da se sistem vrati u poetno stanje iako
je START=1. U tom sluaju, sistem ostaje u stanju S1 samo jedan sken ciklus, da bi odmah zatim
preao u stanje S2 ili S3. Na Sl. 5-35 prikazan je odgovarajui leder dijagram. Jednaine stanja su:

97

Primeri
T START * SMER
K START SMER
SI ( SI S 3 T DN S 5 K DN ) S1 START FS ( S1 DN ( S 3 T S 5 K )) ( S1 START ) FS
S 2 ( S 2 T S1 T S 3) S 2 T ( S 2 T ( S1 S 3)) ( S 2 T )
S 4 ( S 4 S1 K S 5 K ) ( S 4 K ) ( S 4 K ( S1 S 5)) ( S 4 K )
S 3 ( S 3 S 2 T ) S 3 T S 3 T DN T ( DN S 3 DN S 2 S 2 S 3)
S 5 ( S 5 S 4 K ) S 5 K S 5 K DN K ( DN S 5 DN S 4 S 4 S 5)
START

SMER

START

SMER

S1

S1

S1

DN

S3

S5

START

FS

S2
T

M1 S 2
M 2 S4
TMR S 3 S 5

S3
S4
K

S1

SMER

S4
M2

START = 1 i SMER = 0

START = 1 i SMER = 1

S5

TMR

START = 1 i SMER = 0

START = 1 i SMER = 1

0
DN

TMR

0
0

S3

DN

S2

DN

S2

S3

S5

DN

S4

DN

S4

S5

S3

M1

S3

S5

START

S4

S4

S2

S1

S1

S2

S2

DN

Sl. 5-34 ASM dijagram za Pr. 5-21

S5

S2

M1

S4

M2

TMR

TON
Timer On Delay
Timer
Time Base
Preset
Accum

T4:0
0.01
100
0

(EN)
(DN)

Sl. 5-35 Leder dijagram za Pr. 5-21

Pr. 5-22 Sistem za punjenje boca


Zadatak: Na Sl. 5-36 prikazan je sistem za punjenje boca. Sistem ine: (a) pokretna traka koja se
pokree motorom M; (b) rezervoar iz kojeg se tenost isputa ventilom sa ON/OFF upravljanjem, V;
(c) senzora SB koji detektuje prisustvo boce na mestu za punjenje; (d) elektro-mehanikog

98

Leder programiranje

mehanizma za sklanjane napunjenih boca sa trake, koji se pokree jednosmernim solenoidom, SL, i
(e) PLC kontrolera. Kada boca stigne na mesto za punjenje, traka se zaustavlja i ventil rezervoara
otvara. Punjenje traje 2s, a zatim se ventil zatvara. Na svakih 5 napunjenih boca, pokree se
mehanizam koji uklanja napunjene boce sa trake. Kreirati odgovarajui leder dijagram.

Sl. 5-36 Sistem za punjenje boca.

Reenje: Detaljan opis rada sistema, u vidu ASM dijagrama, prikazan je na Sl. 5-37(a). PLC koristi
tajmer za odmeravanje vremena punjenja i broja za brojanje napunjenih boca. TMR je bit koji
omoguava rad tajmera, a TDN Done bit tajmera. N je tekua vrednost brojaa boca. Sistem ostaje u
stanju ST0 u kojem se traka kree (M=ON) sve do aktiviranja senzora boce (SB). Kada senzor
detektuje pisustvo boce (SB=ON), broja boca se uveava za jedan i sistem prelazi u stanje ST1. U
ovom stanju dozvoljen je rad tajmera (TMR=1), a ventil rezervora je otvoren (V=1). Po isteku zadatog
vremena punjenja (TDN=1), proverava se broj napunjenih boca. Ako je napunjeno manje od 6 boca,
sistem se vraa u poento stanje, ST1, gde se traka ponovo pokree. Inae, ako je izbrojano 6 boca,
tada se broja boca resetuje (N=0) i sistem prelazi u stanje ST2. U ovom stanju aktivna je pobuda
solenoida (SL=1). Kada je seolenoid izvuen do kraja (aktivan je granini prekida - GS=1), sistem se
vraa u poetno stanje.
ASM dijagram sa Sl. 5-37(a) je specifian po tome to sadri zaobljene pravougaonike, tj. blokove
uslovnog izlaza. Kao to znamo, na ovaj nain se prestavljaju tzv. Milijevi izlazi konanog automata,
tj. izlazni signali koji zavise ne samo od tekueg stanja automata, ve i od nekog dodatnog uslova. U
konkretnom sluaju, inkrementiranje brojaa se inicira kada je sistem u stanju ST0, ali samo pod
uslovom ako je SB=ON. Slino, broja se resetuje kada je sistem u stnju ST1 i pri tome je tajmer
odmerio zadato vreme (TDN=1) i broja odbrojao do zadatog broja.
Izvedimo, napre, jednaine izlaza. U sistemu postoje tri fizika izlaza, M, V i SL, i tri virtuelna
izlaza: uslov za omoguavanje tajmera, TMR, uslov za taktovanje (inkrementiranje) brojaa
(oznaimo ga sa CNT_INC), i uslov za resetovanje brojaa (uslov emo oznaiti sa CNT_RES, a
Done bit brojaa sa CDN). Na osnovu ASM dijagrama sledi:
M ST 0
V TMR ST 1
SL ST 2
CNT _ INC ST 0 SB

CNT _ RES ST 2 TDN CDN

Uoimo da uslovni (tj. Milijevi) izlazi, CNT_INC i CNT_RES, traju tano jedan sken ckulus, to je
svakako dovoljno da obave svoju funkciju.
Jednaine stanja su:
ST 0 ( ST 0 ST 1 TDN CDN ST 2 GS ) ST 0 SB
ST 1 ( ST 1 ST 0 SB) ST 1 TDN
ST 2 ( ST 2 ST 1 TDN CDN ) ST 2 GS

99

Primeri

Leder dijagram je prikazan na Sl. 5-37(b). Primetimo da dijagram moe pojednostaviti ako se umesto
bitova stanja ST0, ST1 i ST2 koriste bitovi M, V i SL, respektivno (s obzirmo na M=ST0, V=ST1 i
SL=ST2). Takoe, primetimo da u leder dijagramu nisu predvieni posebni bitovi za uslove TMR,
CNT_INC i CNT_RES ve su oni realizovani direktno u rangovima gde se koriste.
ST0

ST0

ST1 T4:0/DN C5:0/DN


ST2

ST0

SB

GS

FS

ST0

ST1

ST0

T4:0/DN

SB

N=N+1

ST2

ST2

Inkrementiranje
brojaca

ON

ST1 T4:0/DN C5:0/DN

ST1
TMR
V

TDN
1
N=6

ST1

ST2

SL

TON
Timer On Delay
Timer
Time Base
Preset
Accum

N=0

ST0

SB

ST2
OFF

T4:0

(EN)
(DN)

C5:0
6
0

(CU)
(DN)
C5:0

C5:0

RES
DN

(a)

T4:0
0.01
200
0

CTU
Count Up
Counter
Preset
Accum

SL

GS

GS
M

ST1

ST2

ST2

ST0

Resetovanje
brojaca

DA

ON

ST1

OFF

SB

NE

ST1

DN

(b)

Sl. 5-37 Reenje zadatka iz Pr. 5-22 : (a) ASM dijagram; (b) leder dijagram

100

Leder programiranje

6 Naredbe za operacije nad podacima


U realizaciji razliitih algoritama esto je potrebno da se izvre odreena izraunavanja, da se prenesu
odgovarajue poruke ili da se u zavisnosti od vrednosti nekih parametara promeni algoritam obrade. U
osnovi svih navedenih aktivnosti nalaze se promenljive podaci koji predstavljaju operande ili
rezultate u razliitim matematikim ili logikim operacijama.

Operandi
Kao to je ve reeno, promenljive se u memoriji kontrolera pamte kao numeriki podaci ili
alfanumeriki podaci stringovi. Numeriki podaci se pri tome mogu pamtiti kao celobrojne
vrednosti (integers) ili decimalni brojevi prikazani u formatu pokretnog zareza (floating point).
Razliiti tipovi numerikih podataka smetaju se u datoteke podataka odgovarajueg tipa.
U principu, operandi mogu biti promenljive iz bilo koje datoteke. Potrebno je uoiti, meutim, da
iako se dozvoljava korienje bit-adresibilnih datoteka (B,I,O), podaci smeteni u njima se u ovim
operacijama mogu koristiti samo kao cele rei (elementi), to znai da se operacija ne moe
izvoditi nad pojedinim bitovima. Pored toga, u datotekama asovnika i brojaa (T i C) mogu se
kao operandi koristiti samo druga i trea re elementa koje predstavljaju akumuliranu vrednost
(ACC) i zadanu vrednost (PRE). Konano, kao operandi se mogu javiti i neke promenljive iz
kontrolne datoteke (R). O znaenju i ulozi ovih promenljivih bie rei kasnije.
Pored promenljivih, operandi u pojedinim operacijama mogu biti i programske konstante
nepromenljive veliine koje se definiu eksplicitnim navoenjem vrednosti u okviru naredbe. Pri
tome, nije dozvoljeno da oba operanda budu programske konstante. Samo se po sebi razume da se
programska konstanta ne moe koristiti kao rezultat.

Operacije
Operacija koja treba da se izvri nad operandima definie se u okviru naredbe. Najvei broj ovih
naredbi pojavljaju se kao naredbe akcije. Ovo je sasvim prirodno ako se ima u vidu da je glavna
svrha ovih naredbi da se obavi neka aritmetika ili logika operacija nad operandima i dobijeni
rezultat upamti kao odgovarajua promenljiva. Drugim reima, sam proces izraunavanja
predstavlja jednu akciju, ije izvravanje moe biti uslovljeno istinosnom vrednou nekog uslova
koji se nalazi u levom delu ranga. Izuzetak su jedino naredbe za poreenje, koje opet, po svojoj
prirodi, proveraju da li je neka relacija izmeu operanada ispunjena ili nije odnosno da li njena
vrednost istinita ili neistinita. Shodno tome, takve naredbe moraju biti naredbe uslova, tako da je
rezultat njihovog izvoenja.

6.1

Naredbe za poreenje

Naredbe za poreenje su naredbe uslova. U okviru ovih naredbi proverava se istinosna vrednost
relacije izmeu dva operanda. Kao rezultat provere naredba dobija vrednost istinit ili neistinit. Jedna
grupa naredbi za poreenje ima oblik kao to je to prikazano na Sl. 6-1. U tabeli T. 6 dat je pregled
svih naredbi za poreenje iz ove grupe. Prvi operand je uvek promenljiva, dok drugi operand moe
biti ili promenljiva ili programska konstanta.
Naredbe za poreenje, grafiki simbol i poloaj u rangu

CDE
IME
Source A
Source B

akcija
fn:w
fn:w

CDE - kod naredbe (tri slova)


IME - naziv naredbe
Source A - prvi operand (adresa promenljive)
Source B - drugi operand (adresa ili konstanta)
fn:w - adresa promenljive

Sl. 6-1 Opti izgled naredbe za poreenje.

101

Primeri
T. 6 Grupa naredbi za poreenje
Kod
Ime naredbe
naredbe
EQU
NEQ
LES
LEQ
GRT
GEQ

relacija
istinita ako je

Equal (jednako)
Not equal (nejednako)
Less than (manje)
Less than or equal (manje ili jednako)
Greater than (vee)
Greater than or equal (vee ili jednako)

neistinita ako je
AB
A=B

A=B
AB
A<B

AB
A>B

AB
A>B

A B
A<B

AB

Pored navedenih naredbe meu naredbama za poreenje postoje i sledee dve naredbe.

MEQ - masked comparison for equal (maskirano ispitivanje jednakosti)


MEQ naredba, grafiki simbol, poloaj u rangu i realizacija

MEQ
MASKED EQUAL
Source
fn:w
Mask
fn:w
Compare
fn:w

Source - prvi operand (adresa promenljive)


Mask - maska (adresa promenljive ili konstanta)
Compare - referenca (adresa promenljive)
fn:w - adresa promenljive

akcija

15 14 13 12 11 10

source
mask

bitovi koji se
porede

1 0 1 0 0 0 1 0 1 1 0 1 0 0 1 0

compare

Ova naredba slui za poreenje delova pojedinih rei. Naime na poloaju onih bitova koji ne
uestvuju u poreenju (maskirani bitovi) u maski se stavljaju nule. Ostali bitovi maske, koji
odgovaraju bitovima koji se porede (nemaskirani bitovi), se postavljaju na 1. Ukoliko su bitovi
operanda i reference koji nisu maskirani meusobno jednaki naredba ima vrednost istinit. U
protivnom ona ima vrednost neistinit. Pri definisanju maske, pogodno je koristiti heksadecimalnu
konstantu ili promenljivu.

LIM Limit test (ispitivianje granica)


LIM naredba, grafiki simbol, poloaj u rangu i realizacija

LIM
LIMIT TEST
Low lim
Test
High lim

akcija
fn:w
fn:w
fn:w

neistinit
-32768

istinit

Low lim

istinit

-32768

Low lim- donja granica (adresa promenljive ili konstanta)


Test - operand (adresa promenljive ili konstanta)
High lim - gornja granica (adresa promenljive ili konstanta)
fn:w - adresa promenljive

neistinit

High lim

istinit

neistinit

High lim

32767

Low lim

32767

LIM naredbom se proverava da li se vrednost operanda Test nalazi unutar datih granica. Ako je donja
granica manja od gornje granice, vrednost naredbe je istinita ako operand pripada segmentu koji
odreuju granice. Potrebno je obratiti panju na injenicu da donja granica moe biti i vea od

102

Leder programiranje

gornje granice. U tom sluaju naredba je istinita ako se operand nalazi izvan granica ili na njima, a
neistinita ako operand pripada intervalu koji odreuju granice.
Ako je operand test konstanta, onda obe granice moraju biti adrese promenljivih. Meutim, ukoliko je
test adresa promenljive, onda granice mogu biti bilo adrese promenljivih bilo konstante.

6.2

Matematike naredbe

Kako im i samo ime kae, matematike naredbe slue za realizaciju razliitih operacija nad
operandima. Ove naredbe su naredbe akcije i u najveem broju sluajeva imaju dva operanda.
Izvravanjem naredbe obavlja se zahtevana matematika operacija nad operandima i dobija rezultat
ija se vrednost pamti. Operandi mogu biti programske promenljive ili konstante, s tim to oba
operanda ne mogu biti konstante.
U odnosu na broj operanada i tip operacije koja se izvrava, matematike naredbe se mogu podeliti u
nekoliko grupa.

6.2.1 Aritmetike i logike binarne operacije


Opti oblik naredbe za aritmetike i logike binarne operacije dat je na Sl. 6-2, dok je u tabeli T. 7 dat
prikaz svih naredbi iz ove grupe.
Aritmetike i logike operacije, grafiki simbol i poloaj u rangu

CDE
uslov

IME
Source A
Source B
Dest

fn:w
fn:w
fn:w

CDE - kod naredbe (tri slova)


IME - naziv naredbe
Source A - prvi operand
Source B -drugi operand
Dest - rezultat
fn:w adresa promenljive (ili konstanta)

Sl. 6-2 Opti oblik naredbe za aritmetike i logike binarne operacije.


T. 7 Pregled naredbi za aritmetike i logike binarne operacije.
Postavlja indikatorske bitove
Kod
Ime naredbe
Operacija
naredbe
C bit V bit (ako je S:2/14=0)
Add (sabiranje)
d = a + b uvek 0 1 za prekoraenje opsega
ADD
Subtract (oduzimanje)
d = a b uvek 0 1 za prekoraenje opsega
SUB
Multiply (mnoenje)
d = ab
uvek 0 1 za prekoraenje opsega
MUL
Divide (deljenje)
d = a/b
uvek 0 1 za prekoraenje opsega
DIV
y
X to the power of Y
d=x
uvek 0 1 za prekoraenje opsega
XPY
AND

And (logiko i)

OR

Or (logiko ili)

XOR

Exclusive OR
(ekskluzivno ili)

d = ab
bit po bit
d = ab
bit po bit
d = ab
bit po bit

Z bit
1 za d=0
1 za d=0
1 za d=0
1 za d=0
1 za d=0

S bit
1 za d<0
1 za d<0
1 za d<0
1 za d<0
1 za d<0

uvek 0 uvek 0

1 za d=0

1 za d<0

uvek 0 uvek 0

1 za d=0

1 za d<0

uvek 0 uvek 0

1 za d=0

1 za d<0

6.2.2 Unarne operacije


U grupu unarnih operacija svrstane su i aritmetike i logike unarne operacije. Sve ove naredbe imaju
isti opti oblik (Sl. 6-3). Pregledsvih naredbi dat je u tabeli T. 8.

103

Primeri

Unarne operacije i funkcije, grafiki simbol i poloaj u rangu

CDE
uslov

IME
Source

fn:w

Dest

fn:w

CDE - kod naredbe (tri slova)


IME - naziv naredbe
Source - operand
Dest - rezultat
fn:w adresa promenljive (ili konstanta)

Sl. 6-3 Opti oblik naredbe za unarne operacije.


T. 8 Pregled naredbi za unarne operacije.
Kod
Ime naredbe
naredbe

Operacija

Postavlja indikatorske bitove


C bit

V bit (ako je S:2/14=0) Z bit

S bit

NEG

Negate (negacija)

d = -a

0 za d=0 1 za prekoraenje opsega


ili V=1 (samo ako je a=-32768)

1 za d=0

1 za d<0

NOT

Not (komplement)

d = a
bit po bit

uvek 0

uvek 0

1 za d=0

1 za d<0

DDV

Double divide (deljenje d = reg/a


32-bitnog celog broja iz
mat. reg. sa 16-bitnim (rezultat
zaokruen)
operandom)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

SQR

Square Root
(kvadratni koren)

d a

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

ABS

Absolute
vrednost)

d =|a|

uvek 0

1 samo ako je a=-32768

1 za d=0

uvek 0

SIN

Sine

d = sin(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

COS

Cosine

d = cos(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

TAN

Tangent

d = tg(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

ASN

Arc Sine

d = arcsin(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

ACS

Arc Cosine

d = arccos(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

ATN

Arc Tangent

d = artg(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

LN

Natural log
(prirodni logaritam)

d = ln(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

LOG

Log to the base 10


(dekadni logaritam)

d = log(a)

uvek 0

1 za prekoraenje opsega

1 za d=0

1 za d<0

(apsolutna

6.2.3 Sloene matematike naredbe

CPT Compute (izraunavanje aritmetikog izraza)


CPT naredba, grafiki simbol i poloaj u rangu

CPT
uslov

COMPUTE
Dest
fn:w
expression

Dest - rezultat
expression - aritmetiki izraz koji ima najvie 255
znakova rasporeenih u linijama. Svaka linija moe
imati najvie 28 znakova.
fn:w - adresa promenljive

Pri formiranju izraza koriste se promenljive, konstante i sledei operatori: ili NEG (unarni minus),
+, ,* , | ili DIV, ** ili XPY, SQR, ABS, SIN, COS, TAN, ASN, ACS, ATN, LN, LOG, NOT, AND,
OR, XOR, TOD, FRD, DEG, RAD.

104

Leder programiranje

SCP Scale with parameters (parametarsko skaliranje podatka)


SCP naredba, grafiki simbol i poloaj u rangu

SCP
uslov

Input- ulazna promenljiva (operand)

SCALE W/parameters
Input
fn:w
Input min.
fn:w
Input max.
fn:w
Scaled min.
fn:w
Scaled max.
fn:w
Scaled output fn:w

Input min. - najmanja vrednost ulaza


Input max. - najvea vrednost ulaza
Scaled min. -najmanja vrednost rezultata
Scaled max. - najvea vrednost rezultata
Scaled output - rezultat
fn:w adresa celobrojne ili realne promenljive
(moe biti konstanta za min. i max. vrednosti)

Ovom naredbom se ostvaruje linearno preslikavanje ulazne promenljive, prema relaciji


scaled_output

scaled_max. - scaled_min.
input - input_min. scaled_min.
input_max. - input_min.

Potrebno je da se istakne da se u ovoj naredbi pojmovi najmanja i najvea vrednost ulaza i rezultata
zapravo koriste samo za odreivanje dve take kroz koje se provlai prava linija koja odreuje
preslikavanje. To znai da vrednost ulazne promenljive ne mora biti unutar intervala odreenog sa
(input_min., input_max.), niti da vrednost input_min. mora biti manja od input_max.

SCL - Scale data (skaliranje podatka)


SCL naredba, grafiki simbol i poloaj u rangu

SCL
uslov

SCALE
Source
Rate [/1000]
Offset
Dest

fn:w
fn:w
fn:w
fn:w

SCL - kod naredbe (tri slova)


SCALE - naziv naredbe
Source - operand
Rate - promenljiva ili konstanta u opsegu
(-32768, 32767)
Offset - promenljiva ili konstanta
Dest - rezultat
fn:w adresa promenljive

Ova naredba je slina naredbi SCP, jer se i pomou nje ostvaruje linearno skaliranje promenljive.
Razlika je samo u nainu definisanja parametara skaliranja. Skaliranje ulaza se izvodi prema sledeoj
relaciji:

6.2.4 Naredbe za manipulaciju sa numerikim podacima

CLR Clear (postavi na nulu)


CLR naredba, grafiki simbol i poloaj u rangu

CLR
uslov

CLEAR
Dest

fn:w

Dest - rezultat, promenljiva ija se vrednost


postavlja na nulu
fn:w adresa promenljive

Adresirana promenljiva se postavlja na nulu.

MOV Move (postavljanje vrednosti promenljive)


Mov naredba, grafiki simbol i poloaj u rangu

MOV
uslov

MOVE
Source

fn:w

Dest

fn:w

Source - operand (promenljiva ili konstanta)


Dest - rezultat (jednak vrednosti operanda)
fn:w adresa promenljive (ili konstanta)

105

Primeri

MVM Masked move (postavljanje vrednosti pojedinih bitova)


MVM naredba, grafiki simbol, poloaj u rangu i realizacija

MVM
uslov

Source - prvi operand (adresa promenljive)


Mask - maska (adresa promenljive ili konstanta)
Compare - referenca (adresa promenljive)
fn:w - adresa promenljive

MASKED MOVE
Source
fn:w
Mask
fn:w
Dest
fn:w

15 14 13 12 11 10

source
mask

1 0 1 0 0 0 1 0 1 1 0 1 0 0 1 0

bitovi koji se
prenose iz
source u dest

Dest

Maskiranim bitovima, koji se ne prenose u dest u maski odgovaraju vrednosti 0, dok nemaskiranim
bitovima odgovaraju vrednosti 1.

6.3

Primeri

Pr. 6-1 Brojanje predmeta na pokretnoj traci (varijanta 1)


Zadatak: Senzor S1 se koristi za brojanje predmeta koji se stavljaju na poetak pokretne trake, a
senzor S2 za brojanje predmeta koji naputaju pokretnu traku. Ako je na traci trenutno manje od 45
predmeta, svetli crvena svetiljka (CS), ako je na traci tano 45 predmeta, svetli zelena (ZS) i ako je
broj predmeta na traci vei od 45, svetli plava svetiljka (PS).
Reenje: Koristimo dva brojaa: jedan tipa CTU (broji napred) koji broji impulse sa senzora S1 i
drugi tipa CTD (broji unazad) koji broji impulse sa senzora S2 (Sl. 6-4). Treba zapaziti da oba brojaa
dele isti element iz datoteke brojaa, C5:0. To znai da e oba brojaa aurirati isti registar (ACC)
kada odbrojavaju impulse. Svaki impuls sa senzora S1 poveava vrednost u C5:0.ACC za jedan, dok
svaki impuls sa senzora S2 smanjuje ovu vrednost za 1. Dakle, traena informacija je prisutna u
registru C5:0.ACC. Za poreenje koristimo naredbe LES (manje) i GRT (vee), koje porede sadraj
akumulatora brojaa C5:0 sa konstantom 45. Kao to se moe videti, umesto tree naredbe poreenja
(EQU - jednako), koja bi pobuivala zelenu sijalicu, koristi se uslov da ako broj proizvoda na traci
nije ni vei ni manji od 45, tada mora biti jednak 45.

Sl. 6-4 Reenje zadatka iz Pr. 6-1.

106

Leder programiranje

Pr. 6-2 Brojanje predmeta na pokretnoj traci (varijanta 2)


Zadatak: Senzor S1 se koristi za brojanje predmeta koji se stavljaju na poetak pokretne trake, a
senzor S2 predmete koji naputaju pokretnu traku. Svetiljka SV se pali kada broj predmeta na traci
postane vei od 27, a gasi kada postane manji od 23.
Reenje: Za brojanje predmeta na traci koriste se dva brojaa na identian nain kao u prethodnom
primeru. Svetiljkom SV se upravlja pomou naredbi za setovanje/resetovanje. Ako je broj predmeta
na traci manji od 23, SV e biti resetovana (ugaena) naredbom LES, a ako je vei od 27, svetiljka e
biti setovana (upaljena) naredbom GRT. Ako je broj predmeta izmeu 23 i 27, svetiljka e zadrati
svoje stanje (upaljeno/ugaeno) sve dok ovaj broj ne izae iz datog opsega.
S1

CTU
Count Up
Counter
Preset
Accum

S2

C5:0
100
0

(CU)
(DN)

C5:0
100
0

(CU)
(DN)

CTD
Count Down
Counter
Preset
Accum

SV

LES
Less than
Source A
Source B

C5:0.ACC
23

SV

GRT
Greater than
Source A
Source B

C5:0.ACC
27

Sl. 6-5 Reenje zadatka iz Pr. 6-2.

Pr. 6-3 Kolika je produktivnost?


Zadatak: Senzor S registruje predmete koji naputaju pokretnu traku. Na svaki sat (1h), pali se jedna
od tri sijalice, crvena (CS), zelena (ZS) ili plava (PS). Ako je broj predmeta koji su u prethodnom satu
napustili traku manji od 95, pali se crvena, ako je u granicama izmeu 95 i 105, pali se zelena i ako je
vei od 105 pali se plava svetiljka.
Reenje: Reenje koristi tajmer za odmeravanje vremena od 1h, broja za brojanje predmeta koji
naputaju traku i naredbe poreenja koje ispituju uslove za paljenje sijalica. U ovom primeru vidimo
da se naredbe poreenja mogu kombinovati sa drugim naredbama uslova u istom rangu. U trenutku
kada tajmer odmeri zadato vreme (DN=1), a u zavisnosti od trenutne vrednosti brojaa, uslov e biti
taan u samo jednom od tri ranga koji ispituju vrednost brojaa, to e upaliti odgovarajuu svetiljku,
a ugasiti ostale dve. Takoe, DN=1 resetuje broja i tajmer, ime zapoinje odmeravanje vremena i
brojanje proizvoda za sledei sat.

107

Primeri

Sl. 6-6 Reenje zadatka iz Pr. 6-3.

Pr. 6-4 Primena MEQ naredbe


Zadatak: Na pinove 0, 3, 5 i 7, ulaznog modul, smetenog u slotu 2, povezana su etiri ON/OFF
davaa. Pobuditi svetiljku, povezanu na pin 4 izlaznog modula smetenog u slotu 3, ako su stanja
davaa, redom, 1, 0, 1, 1. Koristiti naredbu MEQ.
Reenje: Naredba za maskirano ispitivanje jednakosti (MEQ) omoguava da se uz pomo samo jedne
naredbe ispita sloeniji logiki uslov. Maska ukazuje na bitove iz izvorne rei koji se ispituju. Poto
ispitujemo bitove 0, 3, 5 i 7, vrednost maske, u binarnom obliku je: 00000000010101001, odnosno
00A9h u heksadecimalnoj notaciji. Parametar Compare sadri oekivane vrednosti bitova izabranih
maskom, tj. imae vrednosti 1, 0, 1, 1 na pozicijama 0, 3, 5 i 7, respektivno: 00000000010100001,
odnosno 00A1h.

Sl. 6-7 Reenje zadatka iz Pr. 6-4.

108

Leder programiranje

7 Analogni PLC moduli


7.1

Analogni ulazni moduli

Analogni ulazni moduli prihvataju analognu informaciju sa analognih senzora i konvertuju u digitalnu
informaciju za dalju obradu u PLC kontroleru. Zato se zovi i A/D moduli. Postoje dva osnovna tipa
A/D modula: sa strujnim i sa naponskim ulazom.
Analogni modili sa naponskim ulazom dostupni su dve varijante: unipolarni i bipolarni. Unipolarni
moduli privataju napon jednog polariteta, na primer od 0 do +10V. Bipolarni moduli mogu prihatati
ulazni napon oba polariteta, na primer od -10V do +10V.
Analogni moduli sa strunim ulazom, standardno prihvataju struju u opsegu od 4mA do 20mA, pri
emu ulazna struja od 4mA predstavlja najmanju, a ulazna struja od 20mA najveu ulaznu vrednost.
(Uoimo da dozvoljeni opseg ulazne struje ne obuhvata 0A. To je uinjeno iz razloga kako bi se
omoguila detekcija prekida veze izmeu senzora i ulaznog modula. Ako veza postoji, izmeu
senzora i uzlaznog modula uvek tee struja vea od 4mA. Ako je veza u prekidu, struje nema.)
Veina analognih ulaznih modula se moe konfigurisati od strane korisnika. Konfiguracijom se
podeava naponski ili strujni opseg. Postoje moduli i sa naponskim i sa strujnim ulazima, tako da
korisnik moe koristiti ulaz koji odgovara konkretnoj primeni.
Tipino, A/D moduli za industrijske primene imaju 12-bitnu rezoluciju, to znai da se puni opseg
ulaznog napona ili struje preslikava na 4096 (=212) digitalnih rei.
Tipino, analogni moduli imaju od jednog do osam nezavisnih analognih ulaza ili kanala.
Dostupni su i analogni moduli specijalne namene, kao to su moduli za spregu sa termoparovima.
Radi se o A/D modulu koji je prilagoen za prihvatanje izlaza termopara. Izlazni signal termopara je
veoma malog napona, to znai da mora biti pojaan pre nego to se obavi A/D konverzija.
Konverzija napona termopara u temperaturu zahteva odreene kompenzacije i korekcije, to je takoe
funkcija koju obavlja ovaj specijalizovan analogni ulazni modul.

7.2

Analogni izlazni moduli

Namena analognih izlaznih modula je konverzija digitalne izlazne informacije koju generie PLC
kontroler u analogni napon ili struju koja se koristi za upravljenje nekog specifinog izlazni ureaj.
Na primer, analogni izlaz se moe koristiti za upravljanje brzinom rotacije motora ili upravljanje
strujom kroz greja. Dostupni su analogni izlazni moduli sa naponskim ili strujnim izlazom. Analogni
izlazni moduli generiu signale iji napon ili struja moe biti proizvoljan u okviru fiksnog opsega.
Tipian opseg izlaznog napona je 0 do 10V, a opseg struja 4mA do 20mA.
Pored analognih PLC modula koji su iskljuivo ulazni ili iskljuivo izlazni, u upotrebi su i
kombinovani analogni U/I moduli, koji poseduju odreeni broj analognih ulaza i analognih izlaza
(npr. 2 ulaza i 2 izlaza).

7.3

SLC 500 analogni U/I moduli

Serija analognih U/I moduli predvienih za spregu sa PLC kontrolerima tipa SLC 500 nosi oznaku
1746 i sadri 9 razliitih modula:
-

NI4 ulazni

NIO4I, NIO4V, FIO4I i FIO4V ulazno/izlazni moduli

NO4I i NO4V izlazni moduli

NT4 ulazni modul za spregu sa termoparom

NR4 ulazni modul za spregu sa otpornim temperaturnim senzorima (RTD)

109

Primeri

Prvo slovo u oznaci modula oznaava rezoluciju. Moduli sa oznakom N poseduju 16-bitnu, a moduli
sa oznakom F 12-bitnu ulaznu (A/D) rezoluciju. Izlazna rezolucija (D/A) kod svih modula je 14-bitna.
Drugo, odnosno drugo i tree slovo ukazuju na tip modula: I ulazni, O- izlazni, IO-ulazno/izlazni
modul, T-modul za spregu sa termoparovima, R-modul za spregu sa RTD senzorima. Broj koji sledi
ukazuje na broj analognih kanala, koji je kod svih modula iz ove serije 4 (IO moduli imaju 2 ulazna i
2 izlazna kanala). Poslednje slovo ukazuje na tip analognih izlaza: V naponski analogni izlazi; I
strujni naponski izlazi. Svaki ulazni analogi kanal se moe konfigurisati kao naponski (opseg: -10V +10V) ili strujni ulaz (-20mA - +20mA). Detaljna specifikacija A/D i D/A karakteristika analognih
modula iz serije 1746 data je na Sl. 7-1 i Sl. 7-2.

Sl. 7-1 A/D karakteristike ulaza analognih modula iz serije 1746. (Znaenje kolona: Ulazni opseg,
Decimalni opseg, Broj znaajnih bita, Nominalna rezolucija).

Sl. 7-2 D/A karakteristike izlaza analognih modula iz serije 1746. (Znaenje kolona: Modul, Izlazni opseg,
Decimalni opseg, Broj znaajnih bitova, Rezolucija).

7.4

Sprezanje analognih modula sa kontrolerom

Analogi moduli se ugrauju u slot reka i direktno su spregnuti sa PLC kontrolerom preko sistemske
magistrale. Komunikacija izmeu PLC kontrolera i analognih modula je pod kontrolom operativnog
sistema i obavlja se automatski (Sl. 7-3). Svakom ulazom kanalu prikljuenog analognog modula
odgovara jedna 16-bitna re u slici ulaza, a svakom izlaznom kanalu jedna re u slici izlaza PLC
kontrolera. U svakom ulaznom skenu (input scan), konvertovane vrednosti analoginih signala
prisutnih na ulaznim kanalima (input channels) analognog modula se prenose na odgovarajue mesto
u slici ulaza (input image). U toku izlaznog skena (output scan) vrednosti iz odgovarjuih rei slike

110

Leder programiranje

izlaza (output image) se alju analognim modulima gde se konvertuju u analogne signale. Nain
adresiranja pojedinanih kanala analognog modula iustrovan je na Sl. 7-4. Na primer, izlazni kanal 0,
modula NIO4I koji je smeten u slotu 3, adresira se sa: O:3.0.

Sl. 7-3 Sprega PLC i analognih modula.

Sl. 7-4 Adresiranje analognih modula.

7.5

Primeri

Pr. 7-1 Adresiranje, ispitivanje opsega i skaliranje analognog ulaza.


Zadatak: Analogni modul NI4 smeten je u slotu 1 modularnog PLC kontrolera. Temperaturni senzor
sa naponskim izlazom opsega 0-10V povezan je na ulazni kanal 1 ovog analognog modula. Izlazni
napon temeraturnog senzora direktno je srazmeran temperaturi iz opsega 1000C (0V) 5000C (10V).
Temperatura procesa mora ostati u opsegu 275-3000C. Ako je temperatura izvan ovog opsega, treba
aktivirati alarm koji je vezan za pin 0 diskretnog izlaznog modula smetenog u slotu 2. Vrednost
temperature izraenu u fizikim jedinicama (stepenima Celzijusa) treba smestiti u re N7:0 radi dalje
obrade.
111

Primeri

Reenje: Analogi modul NI4 obavalja 16 bitnu A/D konverziju za opseg ulaznog napona -10V +10V. Rezultujua izlazna digitalna re dostupna je u formatu potpunog komplementa. Poto je u
konkretnom primeru ulazni napon unipolaran, opseg izlaznih rei bie: od 0 (za 0V) do 32767=215-1
(za 10V). Izmeu digitalnih rei i temperature postoji linearna zavisnost, kao to je prikazano na Sl.
7-5. Na dijagramu sa Sl. 7-5 takoe je naznaen radni temperaturni opseg. Najnioj temperaturi
radnog opsega ogovara digitalna vrednost Dd (donja granica), a najvioj vrednost Dg (gornja granica).

Sl. 7-5 Zavisnost izmeu ulazne digitalne rei i temperature.

Vrednosti Dd i Dg moemo izraunati na sledei nain:


T

T max T min
( D D min) T min - jednaina prave T(D)
D max D min

za konkretne vrednosti dobijamo:


T

500 100
400
( D 0) 100
D 100 [ 0 C ]
32767 0
32767

odnosno:
D (T 100 0 C )

32767 , odakle sledi


400

Dd = D(275) = 14344
Dg = D(300) = 16383
Na Sl. 7-6, prikazan je lader program koji ispituje da li ulazna digitalna re pripada radnom opsegu;
aktivira alarm ako je temperatura izvan opsega, odnosno, obavlja konverziju ulazne digitalne rei u
0
C, ako je temperatura u radnom opsegu. Lader program sa Sl. 7-6 koristi naredbe poreenja i
standardne matematike naredbe.

112

Leder programiranje

Ako je temperatura ispod opsega, postavi indikator neodgovarajue temperature


LES
0000

LESS THAN
Source A
Source B

IZVAN_OPSEGA
B:3
I:1.1

( )

14344

Ako je temperatura iznad opsega, postavi indikator neodgovarajue temperature


GTR
0001

GREATER THAN
Source A
Source B

IZVAN_OPSEGA
B:3
I:1.1

( )

16383

Ako je temperatura izvan opsega, ukljui alarm


ALARM
O:2

IZVAN_OPSEGA
B:3

( )

0002

0003

0
0
Ako je temperatura unutar opsega, skaliraj ulaznu analognu vredost i smesti
Pomnoiti ulaznu vrednost
rezultat u N7:0
sa opsegom skaliranja
IZVAN_OPSEGA
MUL
B:3
MULTIPLY
Source A
I:1.1
0

Source B

400

Dest

N7:0

Podeliti rezultat ulaznim


opsegom
DIV
DIVIDE
Source A
Source B
Dest

N7:0
32767
N7:0

Dodaj ofset.
N7:0 sadri temperaturu u 0C.

0004

ADD
ADD
Source A

N7:0

Source B

100

Dest

N7:0

(END)

Sl. 7-6 Skaliranje analogne ulazne vrednosti (relizacija pomou standardnih aritmetikih naredbi).

Leder program se moe pojednostaviti ako se iskoriste naredba za ispitivanje granica (LIM) i naredba
za linearno parametarsko skaliranje podataka (SCP), kao to je prikazano na Sl. 7-7.

113

Primeri

Sl. 7-7 Skaliranje analogne ulazne vrednosti (relizacija pomou LIM i SCP naredbi).

Umesto naredbe SCP, za linearno skaliranje ulazne analogne vrednosti moemo koristiti i naredbu
SCL. Prethodno je potrebno odrediti parametre Rate i Offset naredbe SCL:
Rate = (400/32767)x10000 = 122
Offset = 100
Na Sl. 7-8 je prikazan blok naredbe SCL sa navedenim konkretnim parametrima.

Sl. 7-8 SCL naredba koja odgovara SCP naredbi iz leder dijagrama sa Sl. 7-7

Pr. 7-2 Skaliranje izlazne analogne veliine


Zadatak: Neka je u slotu 2 modularnog PLC kontrolera prisutan analogni modul NIO4I (strujnog tipa,
-21 - 21mA, 16-bitna konverzija). Aktuator elektrinog ventila povezan je na izlazni kanal 0
analognog modula. Aktuator se pobuuje strujom opsega 4 20mA. Otvor ventila je proporcionalan
struji, tako da struja od 4 mA potpuno zatvara ventil (otvorenost ventila od 0%), a struja od 20 mA
potpuno otvara ventil (otvorenost ventila od 100%). Aktuator ventila ne sme biti pobuivan strujom
koja je izvan dozvoljenog opsega. Nacrtati leder dijagram za odreivanje izlazne analogne vrednosti,
pod pretpostavkom da je procenat otvorenosti ventila (0-100%) dostupan u registru N7:0.

114

Leder programiranje

Reenje: Analogni modul NIO4I poseduje dva analogna strujna izlaza. Opseg izlazne struje je -21mA
- +21mA. Ulazne digitalne vrednosti su 16 bitne i predstavljene su u formatu potpunog (dvojinog)
komplementa. U konkretnom primeru, izlazna struja je ograniena na pozitivan podopseg 4-20mA.
Granicama dozvoljenog opsega izlazne struje odgovaraju sledee digitalne vrednosti:
4mA -> (32767 / 21)x4 = 6242

(scaled_min)

20mA -> (32767 / 21)x20 = 31208

(scaled_max)

Zavisnost skalirane izlazne vrednosti, scaled_value (digitalna vrednost koja se alje analognom
modulu) od ulazne vrednosti, input_value, (procenat otvorenosti ventila) prikazana je na Sl. 7-9, a
odreena je sledeom jednainom:
scaled_value = (input_value x slope) + offset,
gde je slope nagib prave odreene krajnjim takama ulaznog i izlaznog opsega:
slope

= (scaled_max scaled_min)/(input_max input_min)


= (31208 6242)/(100-0) = 24966/100

dok je offset:
offset = scaled_min (input_min x slope) = 6242 (0x(24966/100)) = 6242
Dakle, ako je input_value u opsegu dozvoljenih vrednosti (0-100), scaled_value (vrednost koja se
alje analognom modulu) odreuje se shodno izvednoj jednaini. Ako je input_value manje od 0%
(podkoraenje), scaled_value se postavlja na 6242 (scaled_min). Ako je input_value vee od 100%
(prekoraenje), scaled_value se postavlja na 31208 (scaled_max).

Sl. 7-9 Zavisnost izlazne vrednosti od zadate procentualne otvorenosti ventila.

Treba uoiti da obe vrednosti slope i offet pripadaju dozvoljenom opsegu celih brojeva (integers), (32768 - +32767), te je stoga za izraunavanje skalirane izlazne vrednosti mogue direktno primeniti
standardne matematike naredbe. Leder program koji koristi standardne matematike naredbe i
naredbe poreenja prikazan je na Sl. 7-10. Na Sl. 7-11 je prikazan leder program kod koga se za
skaliranje izlazne vrednosti koristi SCP naredba.

115

Primeri

Sl. 7-10 Leder program za pobudu aktuatora ventila (varijanta sa matematikim naredbama).

116

Leder programiranje

Sl. 7-11 Leder program za pobudu aktuatora ventila (varijanta sa SCP naredbom).

Pr. 7-3 Skaliranje za ofset vei od 32767 ili manji od -32768


Zadatak: Neka su uslovi iz prethodnog primera promenjeni tako da opsegu struja 4-20mA odgovara
otvorenost ventila od 90-100%. Analogni modul NIO4I postavljen je u slot 2, a aktuator elektrinog
ventila povezan je na izlazni kanal 0 analognog modula.
Reenje: Na Sl. 7-12 prikazana je zavisnost skalirane izlazne vrednosti od ulazne vrednosti. Kao to
se moe videti, minimalna ulazna vrednost (input_min) iznosi 90% i njoj odgovara minimalna
skalirana izlazna vrednost scaled_min=6242 (za struju od 4mA). Maksimalna ulazna vrednost iznosi
input_max=100% i njoj odgovara maksimalna izlazna skalirana vrednost scaled_max=31208 (za
struju od 20mA). Na osnovu ovih podataka moemo odrediti jednainu skaliranja:
scaled_value = (input_value x slope) + offset, gde je:
slope

= (scaled_max scaled_min)/(input_max input_min) =


= (31208 6242)/(100-90) = 24966/10

offset = scaled_min (input_min x slope) = 6242 (90x(24966/100)) = -218452, odnosno

117

Primeri

scaled_value=(input_value) x (24966/10) 218452


Uoimo da je vrednost offset-a manja od -32768, odnosno manja od najmanje negativne vrednosti
koja se moe predstaviti sa 16 bita to onemoguava direktnu primenu matematikih naredbi.
Da bi se pojednostavilo izraunavanje, linearna zavisnost se moe translirati du ose ulaznih vrednosti
ka koordinatnom poetku, kao na Sl. 7-13. Ova zavisnost se dobija nakon uvedene smene
input_value = input_value input_min.
S obzirom na to, jedanina skaliranja sada glasi:
scaled_value= ((input_valueinput_min)x slope) + offset, gde je:
slope=(scaled_max scaled_min)/(input_max input_min) = (31208 6242)/(100-90) = 24966/10
offset = scaled_min = 6242
scaled_value=(input_value - 90) x (24966/10) + 6242
Oigledno, offset je smanjen i moe se predstaviti kao integer. Odgovarajui leder program prikazan
je na Sl. 7-14. Kao i u prethodnim primerima, umesto standardnih matematikih naredbi moemo
koristi naredbu za skaliranje podatak SCP ili SCL.

Sl. 7-12 Zavisnost skaliranja sa velikom negativnom vrednou offset-a.

Sl. 7-13 Translirana zavisnost skaliranja.

118

Leder programiranje

Sl. 7-14 Leder program za transliranu zavisnost skaliranja.

Pr. 7-4 Analogni ulaz/izlaz


Zadatak: U slotu 1 modularnog PLC kontrolera smeten je analogni modul NIO4V. Senzor pritiska za
opseg 0 200 psi (paskala) povezan je na ulazni kanal 0 analognog modula. Senzor pritiska daje
struju 4mA-20mA, tako da struja od 4mA odgovara pritisku od 0psi, a struja od 20mA odgovara
119

Primeri

pritisku od 200psi. Ulaznu vrednost dobijenu od analognog modula treba najpre testirati kako bi se
proverilo da li pripada dozvoljenom opsegu, a zatim skalirati na opseg napona 0-2.5V i proslediti
voltmetru koji je povezan na izlazni kanal 0 analognog modula. Ako je oitana ulazna vrednost izvan
dozvoljenog opsega, treba postaviti indikator IZVAN_OPSEGA.
Reenje: Opseg pune skale ulaznog kanala analognog modula NIO4V, konfigurisanog kao strujni
ulaz, iznosi +/-20mA. Opsegu pune skale odgovara decimalni opseg +/-16384. Na osnovu ovih
podataka, lako dolazimo do graninih vrednosti decimalnog opsega koji odgovara ulaznoj struju od
4mA do 20mA:
input_min = (16384/20mA) x 4mA = 3277
input_max = (16384/20mA) x 20mA = 16384
Izlazni kanal analognog modula NIO4V, na koji je povezan voltmetar, je naponskog tipa sa opsegom
pune skale +/-10V. Opsegu pune skale odgovara decimalni opseg -32768 - +32764. Na osnovu ovih
podataka moemo odrediti decimalni opseg koji odgovara eljenom naponskom opsegu od 0-2.5V:
scaled_min = 0
scaled_max = (32764/10V) x 2.5V = 8192
Na Sl. 7-15 je prikazana zavisnost izmeu decimalnih vrednosti ulazne veliine (input_value) i
rezultujuih skaliranih vrednosti izlazne veliine (scaled_value).

Sl. 7-15 Zavisnost skaliranja.

Jednaina skaliranja je oblika:


scaled_value = (input_value x slope) + offset, gde je:
slope = (scaled_max scaled_min)/(input_max input_min)
= (8192 0)/(16384-3277) = 8192/13170
offset = scaled_min (input_min x slope)
= 0 (3277x(8192/13107)) = -2048, odnosno
scaled_value=(input_value) x (8192/13017) 2048
Na Sl. 7-16 je prikazan odgovarajui leder program. Program, najpre ispituje da li oitana ulazna
vrednost pripada dozvoljenom opsegu. Ako je ulazna vrednost izvan dozvoljenog opsega, postavlja se
idikator IZVAN_OPSEGA. Ako je ulazna vrednost pripada dozvoljenom opsegu, izraunava se
izlazna decimalna vrednost i prosleuje analognom modulu. Skaliranje ulazne vrednosti na zadati
opseg izlaznih vrednosti obavlja se uz pomo naredbe SCP.

120

Leder programiranje

Sl. 7-16 Leder program

Pr. 7-5 Ventilator i greja


Zadatak: Dat je sistem koji sadri PLC kontroler, senzor temperatore za opseg 0 1000C i ventilator
sa dve brzine okretanja. Senzor temperature daje struju 4-20mA, tako da struja od 4mA odgovara
temperaturi od 00C, a struja od 20mA temperaturi od 1000C. Senzor temperature je povezan na kanal
0 analognog modula (nalazi se u slotu 1) koji je konfigurisan kao strujni ulaz za opseg struja +/-20mA
i decimalni opseg +/-16384. Ventilatorom se upravlja pomou dva ON/OFF signala: U i B. Signal U
ukljuuje (U=1) i iskljuuje (U=0) ventilator, dok B regulie brzinu okretanja (B=0 - sporo, B=1 brzo).
Kreirati leder program tako da je ventilator iskljuen za temperaturu manju od 180C, okree se
manjom brzinom, za temperaturu viu od 180C i manju od 250C, odnosno veom za temeraturu viu
od 250C.
Reenje: Upravljaki signali ventilatora, U i B, zavise od temperature na sledei nain:

0 za T 180 C
,
U
0
za
T

C
1
18

0 za T 250 C
B
0
1 za T 25 C

PLC kontroleru je dostupna digitalizovana vrednost temperature. Neka je Dd decimalna vrednost koja
odgovara temperaturi od T=180C, a Dg decimalna vrednost koja odgovara temperaturi od T=250C.

121

Primeri

Odgovarajui leder dijagram prikazan je na Sl. 7-17. Za pobudu izlaza U koristi se prva naredba GEQ
koja ispituje uslov T180C, a za pobudu izlaza B druga naredba GEQ koja ispituje uslov T250C.

Sl. 7-17 Leder dijagram za zadatak iz Pr. 7-5.

Da bi zadatak bio kompletan potrebno je na osnovu raspoloih podataka o karakteristikama


temperaturskog senzora i analognog modula izraunati decimalne vrednosti Dd i Dg.
Zavisnost decimalne vrednosti od struje analognog modula:

D( I )

16384
I
20mA

Zavisnost struje od temperature temperaturskog senzora:

I (T )

20mA 4mA
T 4mA
1000 C

Za temperaturu T=180C, senzor daje struju I(180C)=6.88mA, koja se u analognom modulu digitalizuje
na decimalnu vrednost Dd=D(6.88mA)=5636.
Temperaturi T= 250C odgovara struja I(120C)= 8mA, odnosno decimalna vrednost Dg=6554.
Pr. 7-6: Potenciometar i ventil
Zadatak: Sistem se sastoji od: ventila sa elektriim upravljanjem, PLC kontrolera i potenciometra za
regulaciju otvorenosti ventila (vidi sliku). Ventil se upravlja strujom opsega 4-20mA (za 4mA ventil
je zatvoren, a za 20mA u potpunosti otvoren) i povezan je na analgni izalaz PLC kontrolera strujnog
tipa sa decimalnim opsegom od -16384 do +16384 i analognim opsegom -20 - +20mA. Napon na
potenciometru se menja od 0V (za poziciju MIN) do 4V (za poziciju MAX). Potenciometar je
povezan na anlogni ulaz PLC kontrolera naponskog tipa sa decimalnim opsegom 0-16384 i analognim
opsegom 0 - 10V. Realizovati leder dijagram tako da otvorenost ventila prati poziciju potenciometra.

Reenje: Zadatak PLC-a je da konvertuje napon potenciometra (Vp) u odgovarajuu struju za pobudu
ventila (IV). Zavisnost struje ventila od napona potenciometra:

122

Leder programiranje
Iv [mA]
20mA

4mA
0V

4V

Vp [V]

ili, u analitikom obliku:


20mA 4mA
V p 4mA (4V p 4)[mA]
4V

IV

(1)

U ulaznom analognom modulu, napon potenciometra, Vp, se konvertuje u digitalnu veliinu (DP),
zatim se skalira na digitalnu vrednost izlazne struje (DV), koja se u izlaznom analognom modulu
konvertuje u struju IV.
Dp

IV

16384
Vp ,
10V

20mA
DV
16384

odnosno V p

10V
Dp
16384

(2)

16384
IV
20mA

(3)

, odnosno DV

Smenom (2) u (1), a potom (1) u (3), dolazimo do funkcije skaliranja:


DV 2 DP 3276

(4)

Funkcija (4) se realizuje pomou dve matematike naredbe, kao to je prikazano na Sl. 7-18.
Pretpostavka je da su adrese prikljuaka za potenciometar i ventil I:1.1 i O:2.0, respektivno.
MULTIPLY
Source A
Source B
Dest

I:1.1
2
N7:0

ADD
Source A
Source B
Dest

N7:0
3276
O:2.0

Sl. 7-18 Leder dijagram za zadatak iz Pr. 7-6.

Pr. 7-7 Punjenje posude


Zadatak: Na Sl. 9 je prikazan sistem za punjenje posuda zadatom koliinom tenosti. Sistem se sastoji
od: (a) ventila sa ON/OFF upravljanjem za dovod tenosti u posudu; (b) elektronske vage koja za
oseg teina 0-100kg daje analogni napon, Va, iz opsega 0-10V; (c) posude koja se runo postavlja na
vagu; (d) tastera START za startovanje procesa punjenja i (e) PLC kontrolera. Izlaz elektronske vage
povezan je na analogni PLC modul za opseg napona 0-10V i decimalni opseg 0-16384. Kreirati leder
program prema sledeim zahtevima:
Nakon pritiska na taster START, PLC odmerava i pamti teinu posude, WP. Ako je Wp<1 kg, PLC
ignorie zahtev za punjenje (smatra da posuda nije prisutna). Ako je WP>1 kg, PLC otvara ventil i
prati porast teine. PLC zatvara ventil kada teina postane vea od Wp+WT, gde je WT zadata teina
tenosti.
Usvojiti da je zadata teina tenosti, WT, izraena u kilogramima, dostupna u promenljivoj N7.1.

123

Primeri

VENTIL
START
PLC

POSUDA

VAGA

Va

Reenje:
Va - analogni napon elektronske vage (0-10V)
Da - decimalni ekvivalent analognog napona (0-16384) (dostupan preko I:1.1)
W - izmerena (trenutna) teina (0-100kg), (bie smetena u N7.2), W = (16384/100)*Da [kg]
Decimalni ekvivalent 1kg iznosi 164 (= 16384/100)
WT - zadata teina tenosti (dostupna u N7.1)
WP - teina posude (bie smetena u N7.3)
Dijagram stanja
Dijagram stanja sistema prikazan je na Sl. 7-19(a). U stanju S0 sistem neprekidno oitava teinu sa
vage, Wp, i nadgleda taster START. Nakon pritiska tastera (START=1), sistem proverava da li je
trenutna teina vea od 1 kg i ako jeste, prelazi u stanje S1. U stanju S1, aktivan je signal VENT, koji
otvara ventil. Takoe, u ovom stanju sistem prati porast teine i naputa stanje S1 (ime se ventil
zatvara) onda kada teina, W, postane vea od WT + WP.
Leder dijagram
Stanje sistema se predstavlja jednim pomonim bitom, ST. Za ST=0, sistem je u stanju S0, a za ST=1
u stanju S1 (Sl. 7-19(b))
Leder program neprekidno, nezavisno od tekueg stanja: (a) oitava analogni napon sa vage i
konvertuje ga u teinu (W). (b) izraunava WT + WP (c) postavlja pomoni bit L1 ako je izmerena
teina manja od 1kg i (d) postavlja pomoni bit L2 ako je teina manja od WT + WP.
Poslednja tri ranga reguliu prelaze izmeu stanja i aktiviranje ventila.

124

Leder programiranje
DIV
DIVIDE
Source A
Source B
Dest

I1:1
16384
N7:2

Izracunava
W=(Da/16384)*100

MUL
MULTIPLY
Source A
Source B
Dest

N7:2
100
N7:2
Izracunava WT+WP

ADD
ADD
Source A
Source B
Dest
LES
Source A

S0
Wp = W

Postavlja L1=1 ako je


tezina manja od 1kg

( )

164

LES

L2
B:3

Source A

N7:2

( )

Source B

N7:4

Postavlja L2=1 ako je


W<WT+WP

START
1

DA

ST

START

NE

ST

VENT
O:2

ST

Prelaz u stanje S1

Aktivira ventil

( )

VENT

W < WT + WP

L1

(L)

WP < 1 kg
S1

NE

L1
B:3

N7:2

Source B

N7:1
N7:3
N7:4

DA

ST

L2

Prelaz u stanje S0

ST

(U)

Sl. 7-19 Reenje zadatka iz Pr. 7-7: (a) ASM dijagram; (b) leder dijagram.

Pr. 7-8 Grejanje vode u bojleru


Realizovati leder dijagram za PLC koji odrava temperaturu u bojleru u opsegu 60-700C. Ulaz u
sistem je napon temperaturskog senzora, a izlaz ON/OFF signal za upravljanje grejaem. Greja se
ukljuuje ako je temperatura nia od 600C, a iskljuuje ako je via od 700C. Temperaturski senzor
konvertuje temperaturu iz opsega 0 1000C u napon 0-5V, i povezan je na analogni PLC modul sa
naponskim ulazom za opseg napona 10V i decimalni opseg 16384. U sistemu, takoe, postoje i dve
sijalice S1 i S2. Sijalica S1 je upaljena ako je temperatura via od 600C. Sijalica S2 je upaljena za
vreme dok je greja ukljuen.
Pr. 7-9 Presovanje
Realizovati leder dijagram upravljake jedinice prese. Presa se puta u rad pritiskom na taster START
(uslovljava PRESS=ON). Od tog momenta klip prese poinje da se sputa delujui na objekat koji se
presuje silom koja se postepeno poveava. Pritisak prese na objekat se meri senzorom pritiska za
opseg 0 - 100 kPa i strujnim izlazom opsega 4-20 mA. Senzor je povezan na analogni PLC modul za
strujni opseg 0-20 mA i decimalni opseg 0-16384. Presovanje se zavrava (PRES=OFF) kada pritisak
prese postane jednak ili vei od 50 kPa ili kada istekne maksimalno dozvoljeno vreme presovanja od
5s. Takoe, rad prese se moe prekinuti u bilo kom trenutku pritiskom na taster STOP.

125

Primeri

Pr. 7-10 Punjenje rezervoara

Na slici je prikazan sistem za kontrolisano dolivanje/isputanje vode u/iz rezervoara. Voda se


sipa u rezervoar kroz ventil V1, a isputa kroz ventil V2, oba sa ON/OFF upravljanjem. Nivo
vode se meri posredno, pomou senzora pritiska sa analognim strujnim izlazom (4-20mA)
koji je postavljen na dno rezervoara i prikljuen na analogni PLC modul sa strujnim ulazom
za opseg struja 0-20mA i decimalni opseg 0-16384. Ako je rezervoar prazan, senzor P daje
struju od 4mA; ako je rezervoar pun (nivo vode je 10m), senzor P daje struju od 10mA. Nivo
vode se prati na voltmetru sa opsegom pune skale od 5V ija je skala badarena u metrima
(0-10m). Voltmetar je prikljuen na analogni izlazni PLC modul sa naponskim izlazom za
opseg napona 0-10V i decimalni opseg 0-16384. Taster X0 slui za dolivanje, a X1 za
isputanje vode. Pri tome, treba onemoguiti dolivanje vode ako je rezervoar pun. Realizovati
odgovarajui leder dijagram.

Pr. 7-11 Impulsno-irinski modulator

Razviti leder dijagram koji e u PLC sistemu sa Sl. 1 realizovati funkciju impulsno-irinskog
modulatora. PLC sistem je opremljen: (a) ulaznim analognim modulom (AM) sa naponskim
ulazima za opseg napona 10V i decimalni opseg 16384 i (b) izlaznim digitalnim modulom
(DM). Na ulaz analognog modula dovodi se analogni napon Ua iz opsega 0-4 V, dok se na
izlazu digitalnog modula generie signal pravouganog talasnog oblika fiksne periode T = 1 s
(1000 ms), ali promenljivog trajanja impulsa. Trajanje impulsa je srazmerno ulaznom
analognom naponu, tako da je pri Ua = 0 V trajanje impulsa najkrae i iznosi 10 ms, a pri Ua
= 4 V najdue i iznosi 990 ms.

Sl. 1.
Pr. 7-12 Grejanje tenosti u kotlu

Realizovati leder dijagram za PLC sa slike iji je zadatak odravanje zadate temperature
tenosti u kotlu. Temperatura tenosti se meri pomou temperaturskog senzora, koji

126

Leder programiranje

temperaturu iz opsega 0 1000C konvertuje u napon 0-5V. Tenost se zagreva pomou


grejaa sa ON/OFF upravljanjem. Ciljna temperatura se postavlja pomou kliznog, linearnog
potenciometra koji je badaren u stepenima celzijusa sa skalom od 10 - 90 0C. Kada je kliza
u poloaju 100C, na izlazu potenciometra je napon 0V, a kada je u poloaju 900C, napon na
izlazu potenciometra je 10V. Temperaturski senzor i potenciometar su povezani na analogni
PLC modul sa naponskim ulazima za opseg napona 10V i decimalni opseg 16384.
Neka je TZ zadata, a TM izmerena temperatura tenosti. Greja se ukljuuje kada razlika
izmeu zadate i izmerene temperature postane vea od 10C (TZ - TM > 10C), a iskljuuje kada
razlika izmeu izmerene i zadate temperature postane vea od 10C (TM - TZ > 10C).

Pr. 7-13 Podeavanje izlaznog napona

CPU

PLC sistem ine: digitalni ulazni modul i analogni izlazni modul (Sl. 2). Karakteristike analognog
izlaznog modula su: naponski izlaz sa opsegom -10 - +10V i decimalni opseg: -16384 - +16384.
Napon sa izlaza 0 analognog modula, Vout, se koristi za upravljanje nekim ureajem, kao to je npr.
ventil. Zahtev je da radni opseg ovog napona bude u granicama 0 - 5V sa mogunou manuelnog
podeavanje u koracima od po 0.1V. Za manuelno podeavanje napona Vout koriste se dva para tastera
povezanih na digitalni ulazni modul. Tasteri G+ i G- se koriste za grubo, a tasteri F+ i F- za fino
podeavanje napona Vout. Svaki pritisak na taster G+ (G-) uveava (umanjuje) napon Vout za 1V, dok
svaki pritisak na taster F+ (F-) uveava (umanjuje) napon Vout za 0.1V. Realizovati odgovarajui leder
dijagram.

Pr. 7-14 Kotao


Na slici 10 prikazani su elementi sistema za upravljanje zagrevanjem tenosti u kotlu. Sistem se
sastoji od grejaa, G, analognog senzora temperature, ST, analognog senzora pritiska, SP,
sigurnosnog ventila sa ON/OFF upravljanjem, V i start tastera, START. Senzor ST konvertuje
temperaturu iz opsega 0 3000C u struju 4-20mA, dok senzor SP konvertuje pritisak iz opsega 0

127

Primeri

200psi u struju 4-20mA. Senzori ST i SP su povezani na analogni PLC modul sa strujnim ulazima za
opseg 20mA i decimalni opseg 16384. Nacrtati leder dijagram po sledeim zahtevima: 1) Nakon
pritiska na taster START, ukljuuje se greja G. 2) Kada temperatura dostigne vrednost TG 0C, greja
se iskljuuje; 3) Ako u toku zagrevanja pritisak u kotlu postane vei od PG psi, greja se iskljuuje i
ventil V otvara. 4) Ventil se ponovo zatvara kada pritisak padne ispod vrednosti PD psi. Usvojiti da su
vrednosti TG, PG i PD smetene u registrima N7:0, N7:1 i N7:2, respektivno.

128

Leder programiranje

8 Sekvencijalno upravljanje
Jedan od estih zadataka pri upravljanju procesima je sekvencijalno upravljanje. Ovim upravljanjem
se izvrnim ureajima na procesu zadaje niz naredbi binarnog tipa (ukljui/iskljui, napred/nazad,
kreni/stani i sl.) koje se smenjuju u vremenu, pri emu svaka aktivnost traje odreeni, unapred
definisani interval vremena, ili dok se ne detektuje nastanak nekog dogaaja. Zamislimo, na primer,
proizvodnu liniju za punjenje boca nekom tenou. Proces se odvija tako to se boce najpre stavljaju
na liniju, a zatim peru, pune, zatvaraju, proveravaju i konano pakuju dakle, niz (sekvenca) uvek
istih operacija. Maina za pranje rublja je dobar primer sekvencijalnog upravljanja. Bitno obeleje
sekvencijalnog naina upravljanja je da je sekvenca unapred potpuno odreena i da se niz aktivnosti
moe definisati kao sukcesivan niz binarno kodiranih rei, kod kojih se svaki bit odnosi na pojedini
izvrni organ, koji je vezan za kontroler preko odgovarajueg digitalnog izlaznog modula. Kako se
proces odvija, tako se na izlazni modul prenosi re po re iz upravljake sekvence.
U prolosti, za realizaciju sekvencijalnog upravljanja korien je dobo-programator. Dobo je oblika
cilindra sa udubljenim rupama, koje su ravnomerno rasporeene du veeg broja paralelnih, krunih
staza. U svaku rupu se moe postaviti trn, a raspored trnova du jedne staze odgovara binarnoj
sekvenci za pobudu jednog izvrnog organa (Sl. 8-1). Neposredno uz dobo postavljen je niz
prekidaa, pri emu svaki prekida upravlja jednim izvrnim ureajem. Kako se dobo okree, tako
trnovi zatvaraju prekidae na ijim se izlazima generie eljena sekvenca binarno kodiranih
upavljakih rei. Dobo okree motor, ija brzina rotiranja moe da se regulie. Dobo-programator se
lako programira. Korisnik najpre formira tabelu koja za svaki korak (fazu procesa) pokazuje koji
izvrni ureaji su aktivni u tom koraku (Sl. 8-2). Meutim, dobo-programator ima i niz nedostataka.
Na primer, iako brzina rotiranja doboa, a time i brzina odvijanja procesa moe da se regulie uz
pomo motora, ne postoji mogunost programiranja trajanja pojedinih koraka svi koraci imaju isto
trajanje. Takoe, dobo-programator nije u stanju da ispituje ulazne informacije o tekuem stanju
procesa i da na osnovu tih informacija, eventualno promeni radnu sekvencu.

Sl. 8-1 Dobo-programer. (Output Switches izlazni prekidai; Step 3-1 koraci 3-1, svaki red trnova
odgovara jednom koraku, tj. fazi)

Sl. 8-2 Primer izlazne sekvence dobo-programatora sa Sl. 8-1. (Input Pump ulazna pumpa; Heater
greja; Add Cleaner dodaj sredstvo za ienje; Sprayer prskalica; Output Pump izlazna pumpa)

Mnoga ogranienja karakteristina za dobo-programatior mogu se prevazii ako se za sekvencijalno


upravljanje koristi PLC kontroler. Za razliku od dobo-programatora, kod koga svi koraci imaju isto
trajanje, kod PLC realizacije, s obzirom na daleko veu fleksibilnost programiranja, uobiajeno se
koristi pristup kod koga je prelazak sa jedne na drugu aktivnost uslovljen stanjem u pojedinim
delovima procesa. To znai da je neophodno da se, pod odreenim uslovima, oitavaju stanja
indikatora na procesu i porede sa unapred definisanim stanjima. U zavisnosti od rezultata poreenja,
odluuje se da li je dolo vreme za sledeu aktivnost. Kada je odgovor potvrdan, onda je izvesno da

129

Primeri

proces ulazi u sledeu fazu, te da se nadalje stanje mora porediti sa drugim nizom vrednosti koji
ukazuje na zavretak sledee faze. Dakle, mogue je da se svi parametri koji uestvuju u poreenju,
urede u jedan niz binarno kodiranih rei, i da se stanje procesa, koje se uitava preko digitalnih
ulaznih modula poredi sa odgovarajuom rei iz niza.
Nema nikakve sumnje da bi se opisane operacije mogle izvesti kombinovanjem naredbi za unoenje i
iznoenje digitalnih podataka i naredbi za poreenje. Meutim, poto je potreba za ovim operacijama
izuzetno izraena, predviene su posebne naredbe kojima se one u celosti mogu realizovati.

8.1

Naredbe za sekvencijalni rad sa datotekama

U okviru ovih naredbi bar jedan od operanada je datoteka u kojoj se nalazi niz podataka. Pri tome se
dozvoljava rad samo sa onim datotekama iji elementi su duine jedne rei. Adrese pojedinih
podataka odreuju se pomou bazne adrese koja se definie u naredbi i pointera koji predstavlja
upravljaki paramater, ija se vrednost menja u toku ponovljenih izvravanja naredbe. Pri tome se
adresa operanda dobija kao zbir bazne adrese i vrednosti pointera. U naredbama se definie poetna
vrednost pointera kao i ukupna duina niza.
Ako neka aplikacija zahteva da se sekvencijalna obrada izvri nad podacima koji su dui od 16 bitova,
onda se ti podaci moraju podeliti na vie datoteka. Tada se u svakom rangu na izlazu kao naredbe
akcije mogu paralelno staviti vie istih naredbi kojima se adresiraju sve definisane datoteke.
Svakoj datoteci koja se specificira u okviru neke sekvencijalne naredbe pridruuje se po jedan
elemenat upravljake datoteke R. U okviru ovog elementa pamte se indikatorski bitovi, kao i vrednost
pointera i duina same datoteke. O formatu jednog elementa ove datoteke bie kasnije vie rei.
Samo kada se uslov u rangu menja sa neistinit na istinit menja se vrednost pointera i on ukazuje na
drugi podatak. Meutim, ako uslov posle toga ostane i dalje istinit, pointer ne menja vrednost ve se
naredba izvrava sa podatkom koji je uzet pri poslednjoj promeni pointera.

SQL Sequencer Load (sekvencijalno punjenje datoteke)

Svaki put kada se uslov menja sa neistinit na instinit, ova naredba se izvrava tako to se vrednost
pointera povea za 1 i podatak koji je odreen kao source prenese u datoteku file na onu adresu na
koju pokazuje pointer. Na taj nain se pri svakom sledeem izvravanju naredbe menja sadraj
sledee rei u nizu. Ukoliko se kao source adresa navede konstanta onda se ceo niz postavlja na istu
vrednost. Ako je source adresa promenljiva (fn:s), onda svaka re niza dobija vrednost koju
promenljiva ima u trenutku izvoenja naredbe. Meutim, ako se kao source adresa navede datoteka
(#fn:s), onda se ta adresa uzima kao bazna adresa izvorne datoteke, to znai da se pri izvoenju
naredbe podatak uzima sa one adrese na koju u izvornoj datoteci pokazuje pointer. Pri tome se
podrazumeva da obe datoteke imaju istu duinu, definisanu kao length. Pri sledeim sken ciklusima,
za sve vreme za koje uslov ostaje istinit, vrednost pointera se ne menja, ve se isti, prethodno
odreeni, podatak prenosi u promenljivu oznaenu sa dest.

SQO Sequencer output (sekvencijalno upravljanje)

130

Leder programiranje

Svaki put kada se uslov menja sa neistinit na instinit, ova naredba se izvrava tako to se vrednost
pointera (position) povea za 1 i uzme ona re iz datoteke file (#fn:w) na koju pokazuje pointer. Ta re
se filtrira kroz masku mask i rezultat filtracije se prenosi u promenljivu oznaenu sa dest. Ako je kao
dest navedena datoteka #fn:d onda e se rezultat upisati u onu re te datoteke na koju pokazuje pointer
(Sl. 8-3). Isto tako, ako je kao mask navedena datoteka #fn:m onda i maska prestaje da bude fiksna,
ve se svaki put kao maska uzima ona re iz datoteke na koju pokazuje pointer. Potrebno je zapaziti
da se u rei koja oznaena sa dest menjaju samo oni bitovi koji su nemaskirani (odgovorajui bitovi
maske su postavljeni na 1). Pri sledeim sken ciklusima, za sve vreme za koje uslov ostaje istinit,
vrednost pointera se ne menja, ve se isti, prethodno odreeni, podatak prenosi u promenljivu
oznaenu sa dest.

Sl. 8-3 Ilustracija izvravanja SQO naredbe.

SQC Sequencer compare (sekvencijalno poreenje)

Svaki put kada se uslov menja sa neistinit na instinit, SQC naredba se izvrava tako to se vrednost
pointera (position) povea za 1 i uzme ona re iz datoteke #fn:w na koju pokazuje pointer. Ta re se
poredi sa filtriranim podatkom koji sadri promenljiva oznaena kao source i rezultat poreenja se
upisuje u odgovarajui indikatorski bit. Filtracija podatka vri se pomou maske mask i to tako da u
poreenju uestvuju samo oni bitovi kojima u maski odgovara vrednost bita 1 (nemaskirani bitovi).
Ako je kao source navedena datoteka #fn:s onda e se podaci koji uestvuju u poreenju uzimati iz
one rei te datoteke na koju pokazuje pointer (Sl. 8-4). Isto tako, ako je kao mask navedena datoteka
#fn:m onda i maska prestaje da bude fiksna, ve se svaki put kao maska uzima ona re iz datoteke na
koju pokazuje pointer. Pri sledeim sken ciklusima, za svo vreme za koje uslov ostaje istinit, vrednost
pointera se ne menja, ve se isti, prethodno odreeni, podatak (source) uzima kao podatak za
poreenje.

Sl. 8-4 Ilustracija izvravanja SQC naredbe.

131

Primeri

Datoteka R Control
Naredbama za sekvenciranje pridruuju se indikatorski bitovi i upravljaki parametri. Ove informacije
se smetaju u upravljaku datoteku tipa R. Pri tome se moe koristiti sistemska upravljaka datoteka
broj 6, ili korisnika datoteka (brojevi od 9 do 255). Jedan elemenat ove datoteke, koji se odnosi na
SQO i SQC naredbu ima izgled kao na Sl. 8-5.

Sl. 8-5 Elemenat upravljake datoteke za SQO i SQC naredbu.

Bitovi stanja u elementu datoteke R menjaju se na sledei nain:


EN Enable bit se postavlja na 1 kada uslov prelazi sa neistinit na istinit. Postavljanje ovog bita
prouzrokuje da se izvri naredba i vrednost pointera povea za 1. Pri svakom sledeem prolazu kroz
ovaj rang, sve dok je uslov istinit, EN bit zadrava vrednost 1, ali se vrednost pointera ne menja, ve
se naredba izvrava sa istom vrednou pointera. Kada uslov postane neistinit, EN bit se resetuje na 0.
DN Done bit se postavlja na 1 kada vrednost pointera, posle niza izvoenja SQL, SQO ili SQC
naredbe, doe do kraja niza u zadanoj datoteci. Ovaj bit e biti resetovan na 0 tek u onom sken ciklusu
u kome uslov, poto je prethodno postao neistinit, ponovo postaje istinit (kada se EN bit ponovo
postavi na 1).
ER Error bit se postavlja na 1 kada se u programu detektuje negativna vrednost pointera, ili
negativna ili nulta vrednost duine niza. Ako se ovaj bit ne resetuje pre kraja sken ciklusa nastae
znaajna greka.
FD Found bit se postavlja na 1 ako je rezultat poreenja u SQC naredbi istinit. Drugim reima ovaj
bit ukazuje na to da su nemaskirani bitovi podataka jednaki odgovarajuim bitovima u datoteci
referentnih vrednosti.
Length i position
Promenljive length se pamti u prvoj rei datoteke R i predstavlja broj rei koji se nalazi u nizu u
jednoj sekvencijalnoj datoteci. Maksimalna vrednost duine je 255. Pri definisanju duine, potrebno je
voditi rauna o injenici da navedena adresa rei w u datoteci #fn:w zapravo predstavlja nultu,
poetnu poziciju. To znai da se za datu duinu l u datoteci koristi zapravo l+1 re. Ovo se naravno
odnosi i na mask, source i dest ukoliko su u naredbi specificirane kao datoteke.
Vrednost pointera, oznaena kao position, pamti se u drugoj rei datoteke R. Poetna vrednost
pointera se definie pri specifikaciji naredbe. Vrednost pointera se kree od 1 do l i ukazuje na rei u
datoteci od fn:(w+1) do fn:(w+l+1). Kada pointer stigne do poslednje rei u datoteci, postavlja se
DN-bit na 1 i pri tome se u prvom sledeem sken ciklusu u kome uslov ima prelaz sa neistinit na
istinitinit (isiti ciklus u kome se resetuje DN bit) vrednost pointera automatski vraa na 1. Pri
definiciji poetne vrednosti pointera potrebno je obratiti panju na injenicu da se ona povea za 1 pre
prvog izvoenja naredbe.

132

Leder programiranje

Ako se kao poetna vrednost pointera definie 0, onda e pri izvoenju SQC naredbe obrada poeti od
rei u datoteci ija je adresa fn:(w+1). Meutim kod SQO naredbe nain izvoenja operacije zavisi od
istinitosti uslova u prvom sken ciklusu. Ako je uslov istinit naredba se izvrava poev od nulte rei,
ija je adresa fn:(w+0). Meutim, ako je uslov neistinit, izvravanje naredbe se odlae sve dok uslov
ne postane istinit i tada se uzima prva re, ija je adresa.
Konano, vano je da se istakne da se prilikom eventualne programske promene duine i pozicije
mora voditi rauna da se ne prekorai veliina definisanog niza u datoteci.
Resetovanje parametara
Ukoliko se iz nekog razloga eli prekinuti sekvencijalno upravljanje ili poreenje, to se moe ostvariti
pomou RES naredbe u kojoj se navodi adresa nulte rei elementa datoteke R koji je vezan za
naredbu iji se rad eli resetovati Rn:e. RES naredbom se vrednosti svih indikatorskih bitova, izuzev
FD-bita, postavljaju na 0. Istovremeno se i vrednost pointera postavlja na 0 (ova vrednost e se
poveati na 1 pre prvog sledeeg izvoenja naredbe).

8.1.1 Korienje SQL naredbe


Na Sl. 8-6 je prikazan primer SQL naredbe. Paremetri SQL naredbe su tako podeeni da je ulazna re
I:1.0 izvor podataka, a da se proitani podaci smetaju u odredinu datoteku #N7:30 veliine 4 rei.
Kada se uslov ranga promeni sa neistina na istina, pointer SQL naredbe se uveava za jedan i podatak
oitan sa ulaza I:1.0 se upisuje na poziciju u odredinom fajlu na koju ukazuje pointer. SQL naredba
nastavlja da prenosi podatke sa ulaza na istu poziciju odredine datoteke sve dok je uslov ranga istinit.
Nakon to je korak 4 zavren, setuje se bit DN. Sledea promena uslova sa neistina na istina, vraa
pointer na poziciju 1 (element N7:31). Da je umesto ulazne rei I:1.0, kao izvor navedena interna
datoteka, npr. #N7:40, tada bi obe datoteka odredina i izvrna bile iste duine (4), a SQL nardba bi,
praktino, kopirala sadraj izvorene datoteke u odredinu.

Sl. 8-6 Primer SQL naredbe.

133

Primeri

8.1.2 Korienje SQO naredbe


SQO naredba ita rei specificiranog fajla iji su bitovi namenjeni upravljanju izvrnih organa. Kada
uslov ranga koji sadri SQO naredbu postane istinit, naredba ita sledeu re iz fajla. Proitana re
prolazi kroz masku i prenosi se na odredinu adresu. Samo oni bitovi proitane rei kojima u maski
odgovara bit 1 se prenose. Bit DONE postaje 1 nakon to je iz fajla proitana poslednja re. Sledei
promena uslova ranga sa neistina na istina uslovie da SQO naredba krene iz poetka, sa pointerom
koji je resetovan na poetnu vrednost 1.
Na Sl. 8-7 je ilustrovan rad SQO naredbe. SQO naredba sa slike definie sekvencu od 5 rei smetenu
u datoteci B10, poev od rei B10:1. Poetna vrednost pointera je 2, to znai da e kao prva re iz
izvorinog fajla biti proitana re B10:3. Odredina adresa je prva re izlazne datoteke O:14. (Dugim
reima, odredite proitanih rei iz ulaznog fajla je izlazni digitalni modul sa adresom 14.) Naredba
SQO definie masku ija je heksadecimalna vrednost 0F0F. To znai da se na odredite ne prenose svi
bitovi proitanih rei, ve samo osam bita, naznaenih jedinicama u maski (to su bitovi 0-3 i bitovi 811). Naravno, sadraj izvorinog fajla mora biti unapred pripremljen, prema zahtevima aplikacije, i
upisan u odgovarajue rei naznaene datoteke. Oigledno, SQO naredba predstavlja softverski
ekvivalent dobo-programatora.

Sl. 8-7 Primer SQO naredbe

8.1.3 Korienje SQC naredbe


SQC naredba radi tako to poredi sve ne-maskirane bitove iz izvorine rei sa odgovarajuim
bitovima referencirane rei. Ako na svim bitskim prozicijama postoji slaganje, naredba SQC postavlja
bit FD kontrolne rei na 1. U suprotnom, ako postoji nesleganje barem na jednoj poziciji, bit FD se
postavlja na 0. Na Sl. 8-8 je prikazan primer SQC naredbe. Ova SQC naredba definie referentni fajl
duine 5 rei meten u datoteci B10, poev od rei 11 ove datoteke. Izvorina adresa (I:3.0) ukazuje
na na prvu re ulazne datoteke I3 (odgovara ulaznom digitalnom modulu sa adresom 3). Tekua
pozicija pointera je 2, to znai da se vrednost proitana sa ulaza I:3.0 poredi sa reju B10:13. Ne
porede se celokupne rei ve samo viih 12 bita, to je definisano maskom 0FFF. Poto su u
konkretnom primeru svi odgovarajui ne-maskirani bitovi identini, SQC naredba setuje FD bit, tj. bit
R6:21/FD.

134

Leder programiranje

Sl. 8-8 Primer SQC naredbe.

8.2

Primeri

Pr. 8-1 Primena SQO naredbe


Zadatak: Realizovati leder program za upravljanje semaforom. Semafor ima tri sijalice: ZELENO,
ZUTO i CRVENO, koje naizmenino svetle u trajanju od:
ZELENO
ZUTO
CRVENO

60s
15s
30s

Reenje: Usvajamo da su semaforska svetla povezana na izlazni modul na sledei nain:


ZELENO
ZUTO
CRVENO

O:3/0
O:3/1
O:3/2

Leder program je prikazan na Sl. 8-9. Leder program koristi TON naredbu za merenje vremena i SQO
naredba za realizaciju sekvencijalnog upravljanja. Uvek kada tajmer dostigne zadatu vrednost,
izvravaju se dve SQO naredbe. Rang 0 realizuje regenerativni tajmer. Po dostizanju zadate vrednosti,
bit DONE (DN) tajmera postaje 1. S obzirom da se bit DN koristi kao uslov u rangu 1, dostizanje
zadate vrednosti tajmera inicira izvrenje dve SQO instrukcije. Prva SQO naredba ita sledeu re iz
svog izvornog fajla i prenosi je na izlazni modul koji pobuuje sijalice. Sadraj izvornog fajla prve
SQO naredbe prikazan je na Sl. 8-10(a). Druga SQO naredba ita sledeu re iz svog izvornog fajla i
upisuje je u registar PRE tajmera, ime se definie vreme u toku kojeg e upravo upaljeno svetlo
ostati upaljeno. Sadraj izvornog fajla druge SQO naredbe prikazan je na Sl. 8-10(b).

135

Primeri

Sl. 8-9 Leder dijagram kontrolera jednostavnog semafora.


Podatak (binarno)
Adresa
Podatak (decimalno)
15-3
2 1 0
N7:1
00
0 0 1
N7:6
6000
N7:2
00
0 1 0
N7:7
1500
N7:3
00
1 0 0
N7:8
3000
(a)
(b)
Sl. 8-10 (a) sadraj izvorine datoteke sekvencera SVETLA; (b) sadrzaj izvorne datoteke sekvencera
TRAJANJE SVETLA.

Adresa

Pr. 8-2 Realizacija sekvence


Zadatak: Dat je sistem koji sadri jedan jednosmerni solenoid (A) i dva dvosmerna (B i C). Potrebno
je realizovati sledeu sekvencu pomeranja klipova: A+ B+ C+ B- A- C- . Pri tome se predpostavlja da
su u poetnom trenutku svi klipovi uvueni. Granini prekidai koji indiciraju uvuenost klipa A i B
su normalno zatvoreni, dok su svi ostali granini prekidai normalno otvoreni. Sistem se puta u rad
pomou pritiska na taster i prestaje sa radom kada se jedanput izvri zahtevana sekvenca
Reenje: Zadatak e biti reen korienjem naredbi SQO i SQC. Sistem ima 7 ulaza, SWA-, SWA+,
SWB-, SWB+, SWC-, SWC+ i START i 5 izlaza, MOVE_A+, MOVE_B+, MOVE_B-, MOVE_C+ i
MOVE_C-. U poetnom stanju (korak 0), klipovi sva tri solenoida su uvueni, a da bi se otpoelo sa
radom eka se pritisak na prekida START. Kada se pritisne prekida START, sistem prelazi na
korak 1. U ovom koraku, aktivan je izlaz MOVE_A+ (klip solenoida A se izvlai) i eka se da klip
doe u krajnji izvueni poloaj (SWA+ = 1). U koraku 2, koji poinje kada klip solenoida A dostigne
krajnji izvueni poloaj, obavlja se izvlaenje klipa solenoida B: MOVE_B+ = 1 i eka se na SWB+ =
1. Pri tome, zadrava se pobuda solenoida A kako bi klip solenoida A ostao u krajnjem izvuenom
poloaju (tj. MOVE_A+ = 1). Dakle, sistem prolazi kroz sekvencu koraka pri emu su za svaki korak
definisani aktivni izlazi kao i stanje ulaza na koje se eka kako bi sistem preao na sledei korak. Za
postavljanje izlaza bie koriena naredba SQO, a za ispitivanje uslova za prelaz na sledei korak
naredba SQC. Izvorne datoteke obe naredbe imae istu duinu, jednaku broju koraka sekvence
uveanom za 1. Ove dve naredbe rade u paru, sinhronizovano, tako da pointeri u izvornim datotekama
obe naredbe ukazuju na iste pozicije. Par rei sa istih pozicija dve izvorne datoteke odgovara jednom
koraku. Re iz izvorne datoteke naredbe SQO definie stanje izlaza, a re iz izvorne datoteke naredbe
SQC na uslov prelaska na novi korak. Najjednostavni nain za sihnhronizaciju dve naredbe je da one

136

Leder programiranje

dele isti kontrolni registar. Kao to se vidi sa Sl. 8-5, kontrolni registar naredbe sekvenciranja pored
indikatorskih bitova sadri i tekuu poziciju pointera na izvornu datoteku. Ako dve naredbe dele isti
kontrolni registar, onda e one deliti zajedniki pointer, tj. uveanje pointera u okviru jedne naredbe
znaiti i uveanje pointera one druge naredbe. Pri tome, leder dijagram e biti tako konstruisan da je
naredba SQC uvek aktivna, a da se naredba SQO aktivira samo kada je indikator FD postavljen na 1,
tj. kada oitani ulaz postane jednak oekivanoj vrednosti. S obzirom da naredba SQO/SQC obavlja
inkrementiranje pointera uvek kada se uslov ranga promeni sa neistinit na istinit, inkrementiranje
pointera obavljae samo naredba SQO. Leder program je prikazan na Sl. 8-11. Rang 0 resetuje
sekvencer u prvom sken ciklusu. Rang 1 sadri SQC naredbu koja je uvek aktivna (izvrava se u
svakom sken ciklusu). Rang 2 sadri SQO naredbu koja se izvrava samo u onim sken ciklusima kada
je FD=1, tj. kada treba prei na sledei korak. Sadraj izvornih datoteka naredbi SQC i SQO definisan
je tabelama T. 9, T. 10 i T. 11. Datoteka maski naredbe SQC definie bitove ulazne rei koji e biti
poreeni sa bitovima odgovarajue rei iz ulazne datoteke podataka. Na primer, u prvom koraku, od
interesa je samo stanje prekidaa START. Zato maske za prvi korak ima vrednost 1 na poziciji bita 6
(odgovara ulazu START) i sve nule na ostalim pozicijama.
T. 9 Sadraj datoteke podataka za poreenje naredbe SQC
Adresa 15..7 6
5
4
3
2
START SWC+ SWC- SWB+ SWBN7:1
0..0
1
0
0
0
0
N7:2
0..0
0
0
0
0
0
N7:3
0..0
0
0
0
1
0
N7:4
0..0
0
1
0
0
0
N7:5
0..0
0
0
0
0
1
N7:6
0..0
0
0
1
0
0
N7:7
0..0
0
0
0
0
0

1
SWA+
0
1
0
0
0
0
0

0
SWA0
0
0
0
0
0
1

T. 10 Sadraj datoteke maski naredbe SQC


Adresa 15..7 6
5
4
3
START SWC+ SWC- SWB+
N7:11 0..0
1
0
0
0
N7:12 0..0
0
0
0
0
N7:13 0..0
0
0
0
1
N7:14 0..0
0
1
0
0
N7:15 0..0
0
0
0
0
N7:16 0..0
0
0
1
0
N7:17 0..0
0
0
0
0

1
SWA+
0
1
0
0
0
0
0

0
SWA0
0
0
0
0
0
1

2
SWB0
0
0
0
1
0
0

T. 11 Sadraj izvorne datoteke naredbe SQO.


Adresa 15..5 4
5
4
MOVE_C- MOVE_C+ MOVE_BN7:21 0..0
0
0
0
N7:22 0..0
0
0
0
N7:23 0..0
0
0
0
N7:24 0..0
0
1
0
N7:25 0..0
0
1
1
N7:26 0..0
1
0
1
N7:27 0..0
1
0
1

3
MOVE_B+
0
0
1
1
0
0
0

2
MOVE_A+
0
1
1
1
1
1
0

137

Primeri

Sl. 8-11 Leder dijagram sekvencera koji koristi naredbe SQC i SQO.

138

Leder programiranje

9 PLC moduli specijalne namene


9.1

Izdvojeni ulazno-izlazni moduli

Upravljanje pojedinim procesima zahteva da U/I moduli budu locirani na razliitim lokacijama. U
nekim sluajevima maine su fiziki udaljene. U takvim sluajevima poeljno je pozicionirati U/I
modul izvan PLC kontrolera, to blie maini ili procesu kojom upravjaju ili koga nadgledaju. Za
spregu PLC kontrolera sa izdvojenim U/I modulima koriste se specijalizovani moduli (adapteri) koji
se smeaju u rek PLC kontrolera.
Veza izmeu PLC kontrolera i izdvojenih U/I modula moe biti ostvarena na razliite naine. Po
pravilu se koristi neka vrsta magistale za prenos podataka. Preko magistrale PLC kontroler i izdvojeni
U/I moduli razmenjuju poruke. Dva uobiajena metoda za fiziko povezivanje su kablovi sa
upletenim provodnicima i optiki kablovi. Kablovi sa upletenom provodnicima (twisted-pair) su
ekonominije reenje. Dva provodnika su upeletna jedan oko drugoga i povezana izmeu PLC
kontrolera i izdvojenog U/I modula. Upletanje smanjuje elektrinu interferenciju (um). Sa druge
strane, fiber-optiki kablovi su imuni na um, zato to se podaci prenose putem svetlosi. Takoe,
brzina prenosa podataka fiber-optikim kablom je daleko vea, kao i rastojanje maskimalno rastojanje
izmeu dva ureaja.
Na Sl. 9-1 je prikazan primer U/I magistrale firme GE Func. U/I magistrala ini kabl sa upletenim
provodnicima koji povezuje kontroler magistrale najvie 31 izdvojeni U/I modul. Sistemi upravljanja
zasnovani na konceptu izdvojenih U/I modula predstavljaju svaremeni trend u industrijskoj
automatizaciji.

Sl. 9-1 Primer sprege PLC kontrolera sa izdvojenim U/I modulima: GE Func Genious I/O bus.

9.2

Komunikacioni moduli

Komunikacija postaje sve znaajniji zadatak PLC kontrolera. U jednom integrisanom sistemu, javlja
se potreba razmene podataka izmeu razliitih komponenti sistema. PLC kontroleri moraju biti u
stanju da komuniciraju sa raunarima, CNC mainama, robotima, pa ak i sa drugim PLC
kontrolerima. Na primer, u jednom fleksibilnom sistemu, PLC moe da poalje program CNC maini.
CNC maina prima program i izvrava ga. Originalni PLC kontroleri nisu bili projetovani da obavljaju
ovakve zadatke, dok su danas na raspolaganju brojni tipovi kominukacionih modula.
Razlikuju se dva tipa komunikacionih modula: host-link i peer-to-peer (od take ka taki).
Host-link moduli se koristi za komunikaciju PLC kontrolera sa host (glavnim) raunarom. Host moe
biti raunar ili drugi PLC kontroler (Sl. 9-2). Veina PLC kontrolera poseduju ugraen softver koji
omoguava prenos programa od hosta u PLC kontroler.

139

Primeri

Sl. 9-2 Sprega host raunara i PLC posredstvom Host-Link modula.

Tipina primena host-link modula je u realizaciji tzv. integrisanih proizvodnih elija. Zamislimo
promenljivu u lader dijagramu. Promenljiva moe da sadri broj komada koje treba proizvesti u eliji.
Sada zamislimo host raunar koji upisuje broj u ovu promenljivu. Ovakav scenario je omoguen hostlink komunikacijom. Za host-link komunikaciju tipino se koristi RS232 komunikacija.
Host-link komunikacija se takoe moe koristiti za prenos podataka od PLC kontrolera ka raunaru.
Na ovaj nain raunar moe pratiti vreme proizvodnje, broj proizvedenih komada i sl.
Peer-to-peer moduli se koriste za komunikaciju izmeu PLC kontrolera istog tipa (Sl. 9-3). U
ovakvom jednom sistemu, svakom PLC kontroleru dodeljena je jedinstvena adresa (npr. broj iz
opsega 0 do 255). Veina komunikacionih modula ovog tipa nije standardizovana ve predstavlja
jedinstveno reenje proizvoaa PLC sistema.

Sl. 9-3 Peer-to-peer komunikacija.

9.3

PLC moduli za kontrolu pozicije

Za upravljanje pozicioniranjem na raspolaganju su PLC moduli kako za upravljanje u otvorenoj tako i


za upravljanje u zatvorenoj petlji. Sistemi sa zatvorenom petljom poseduju povratnu spregu to
obezbeuje da e komanda biti izvrena.
Upravljanje u otvorenoj petlji
Za upravljenje pozicijom u otvorenoj petlji koriste se step-motori u kombinaciji sa odgovarajuim
PLC drajverskim modulima (Sl. 9-4). PLC modul izdaje komandu motoru i pri tome podrazumeva da
e komanda biti izvrena, tj. povratna sprega ne postoji. Step motori se koriste u primenama koje ne
zahtevaju veliku brzinu i veliku snagu. Preciznost pozicioniranja je veoma velika. PLC moduli za
pobudu step motora su projektovani tako da u to veoj meri olakaju integraciju step motora u
sistem. Tipino, poseduju ugraene funkcije za ubrzanje/usporenje, a u nekim varijantama i funkcije
uenja. Moduli poseduju i ulaze koji se mogu koristiti za dovoenje motora u referntnu poziciji, kao i
za zatitu od prekoraenja.

Sl. 9-4 Upravljanje step motorom pomocu specijalizovanog PLC modula.

140

Leder programiranje

Na Sl. 9-5 je prikazana jedna tipina primena step motora. Uoimo da PLC modul generie povorku
impulsa (Pulse), gde svaki impuls predstavlja komandu step motoru da uini jedan korak, i signal koji
odreuje smer kretanja motora (Direction).

Sl. 9-5 Upravljanje step motorom.

Upravljanje pozicijom u zatvorenoj petlji


Tipini primeri aplikacija kod kojih se koristi pozicioniranje u zatvorenoj petlji su roboti i CNC
maine. Kod ovih primena koriste se AC ili DC motori. Na raspolaganju su PLC moduli za praanje i
upravljanje brzinom i pozicijom. U sistemima za pozicioniranje u zatovorenoj petlji postoje dve petlje
(Sl. 9-6). Petlja poziciji je zatvorena (tj. nadgleda se) preko enkodera, koji je sastavni deo motora, i
upravljake jedinice (u ovom sluaju PLC). Petlja brzine se obino zatvara preko tahometra, koji je
sastavni deo motora i drajvera motora. PLC zadaje brzinu kretanja, komandom u obliku analogog
signal sa naponom iz opsega -10V do +10V. Spoj za sumiranje, koji je deo drajvera motora, poredi
komandu i povratni signal iz tahometra i odreuje signal greke koji slui za pobudu motora. Dakle,
brzina se kontinualno nadgleda i regulie od strane drajvera motora, dok poziciju nadgleda PLC.

Sl. 9-6 Upravljanje pozicijom u zatvorenoj petlji pomou specijalizovanog PLC modula.

PLC moduli za upravljanje pozicijom u zatvorenoj petlji tipino poseduju mogunost sprege sa
jednim ili dva motora. Varijante za dva motora omoguavaju upravljaje pozicijom u ravni, po dvema
osama. U noramalnom reimu rada, ose se nezavisno kontroliu. U prateem reimu rada, modul je u
stanju da koordinira kretanje po osama kako bi se obavilo neko zadato, sloeno ravansko kretanje.

9.4

Moduli za vizuelnu kontrolu

Vizelna inspekcija predstavlja vaan zadatak proizvodnog procesa. Obino se obavlja na kraju
proizvodnog procesa, u okviru izlazne kontroler kvaliteta, od strane radnika. Napredak u elektronici i
raunarstvu omoguio je da se pojedini zadaci vizelne kontrole danas mogu obaviti automatski.
Automatizacija zadatka vizelne kontroler ima brojne prednosti u odnosu na klasian pristup.
Automatska vizelna kontrola je bra i zato se moe sprovoditi jo u toku samog procesa proizvodnje,
a ne samo na kraju kada je proizvod ve sklopljen. Na bazi vizelne kontrole, mogue je uvesti
korekcije u toku procesu proizvodnje i time spreiti greke. Na taj nain, kvalite gotovih prizvoda i
produktivnost mogu biti znaajno poboljani.
Sistemi za vizelnu kontrolu mogu da obave i do hiljadu inspekcija u minuti. Naroito su pogodni za
primene za koje ovek nije dovoljno efikasan onda kada zadatak treba biti obavljen brzo, kada
ukljuuje pregled velikog broja vizuelnih detalja i kada inspekcija ukljuuje merenje dimenzija
proizvoda i sl.

141

Primeri
Kamera

Osvetljenje

Vizioprocesor

Proizvod

Izlaz

Sl. 9-7 Blok ema sistema za vizuelnu kontrolu.

Blog dijagram jednog tipinog sistema za vizelnu kontrolu prikazan je na Sl. 9-7. Sistem ine: jedna
ili vie kamera, osvetljenje, video monitor i vizio-procesor. U tano odreenim vremenskim
trenucima, slika sa kamera se prenosi do vizio-procesora koji obrauje sliku tako to sliku poredi sa
zapamenim ablonom, pronalazi u slici krakteristine detalje ili obavlja odreena merenja
karakteristinih dimenzija proizvoda. Za primenu kod PLC sistema, razvijeni su specijalizovani PLC
moduli za vizuelnu kontrolu, koji mogu da obavljaju automatsku vizelnu inspekciju brzinom do 1800
objekata u minuti. Vaan aspekt PLC modula za vizelnu kontrolu jeste nain obuke sistema. Naime,
takvi moduli se ne projektuju za neku tano odreenu namenu, ve omoguavaju da se sistem na licu
mesta naui kako da prepoznaje ispravne proizvode. To se radi tako to se u fazi uenja ispred kamere
postavi ispravan proizvod tako da se na monitoru dobije slika proizvoda. Osim slike proizvoda na
monitoru se nalazi i vei broj ikona od kojih svaka predstavlja jedan tip zadatka vizelne inspekcije
kao to je prosto prepoznavanje da li je proizvod prisutan ili nije, izdvajanje pojedinih oblasti u slici,
izdvajanje karakteristinih detalja i slino.

9.5

Bar-kod moduli

Automatska identifikacija proizvoda dobija sve iru primenu u industriji. Postoji vie tipova
automatske identifikacije, kao to su: vizija, bar-kod i radio-frekvencijska identifikacija (RFID). Barkodiranje (Sl. 9-8) se standardno primenjuje u trgovini, ali u novije vreme nalazi primenu i u
industrijkim procesima. Iz tog razloga, razvijeni su specijalizovani PLC moduli, tzv. bar-kod moduli
koji omoguavaju laku spregu PLC sistema sa bar-kod itaima. Tipina aplikacija moe biti sledea:
bar-kod modul oitava bar-kod zapis sa kutija koje se kreu pokretnom trakom. Na osnovu proitanog
zapisa, PLC kontroler usmerava kutiju na odgovarajuu proizvodnu liniju.

Sl. 9-8 Bar-kod zapis.

9.6

Moduli za PID upravljanje

PID je skraenica koja ukazuje na tehniku automatskog upravljanja poznatu pod imenom
proporcionalno-integraciono-diferencijalno upravljanja. Proizvoai PLC sistema prilaze problemu
PID upravljanja na dva razliita naina: neki proizvoai nude specijalizovane module za PID
kontrolu, dok drugi koriste standardne analogno/digitalne U/I module praene specijalizovanim
softverom za PID kontrolu. PID se moe koristiti za upravljanje fizikih veliina kao to su:
temperatura, pritisak, koncentracija, vlanost. PID se iroko koristi u industriji kako bi se ostvarilo
precizno upravljanje pod najrazliitijim uslovima i poremeajima koji se mogu javiti u toku
proizvodnog procesa. U sutini PID je jednaina koju upravljaka jedinica koristi kako bi izraunala
izlaznu, upravljaku veliinu na osnovu signala greke. Upravljana veliina (npr. temperatura) se
meri, a izmerena vrednost se prosleuje upravljakoj jedinici u vidu signala povratne sprege.
Upravljaka jedinica poredi izmerenu vrednost upravljane veliine sa zadatom vrednou i generie

142

Leder programiranje

signal greke. Greka se ispituje na tri razliita naina: proporcionalni, integracioni i diferencijalni.
Svaki od ova tri faktora se moe tretirati kao pojaanje koje na neki specifian nain utie na
izraunavanje odziva na datu greku. Upravljaka jedinica koristi ova pojaanja (proporcionalno
pojaanje, integraciono pojaanje i diferencijalno pojaanje) za izraunavanje vrednosti komande
(izlaznog signala) za korekciju izmerene greke.
Tipian sistem sa PID upravljanjem prikazan je na Sl. 9-9. Sistem je rezervoar u kome se obavlja
sagorevanje tenog goriva. Za upravljanje sistemom koristi se PLC. Logika jedinica PLC kontolera
dobija vrednost izmerene temperature od ulaznog analognog modula, obalja PID izraunavanje,
generie signal greke koga alje izlaznom modulu (digitalnom ili analognom) koji upraljva ventilom
preko koga se u rezervoar dovodi gorivo. Podeavanje sistema i nagledanje rada sisteme obavlja se uz
pomo izdvojenog raunara koji je sa PLC kontrolerom u vezi preko host-link komunikacije.

Sl. 9-9 Blok dijagram procesa kojim se upravlja PID kontrolerom. (Loop Configuration and Monitoring
konfiguracija i nadgledanje petlje; Loop Calculation izraunavanje parametara petlje; Manufacturing
Process proizvodni proces; Process Variable promenljiva procesa; Control Output upravljaki izlaz)

Proporcionalno upravljanje uzima u obzir samo magintudu signala greke i obino ima najvei uticaj
na rad sistema. Proporcionalno upravljanje reaguje srazmerno trenutom iznosu greke. to je greka
vea, vei je i odziv. Proporcionalno upravljanje obino nije dovoljno za uspeno upravljanje
sistemom. Proporcionalno upravljanje nije u stanju da koriguje male greke, tzv. offset-e ili greke
stabilnog-stanja. To su greke, iji je iznos mali, ali se njihov efekat akumulira tokom vremena.
Integraciono upravljanje ima zadatak da koriguje upravo offset-e, koji ne mogu biti korigovani
proporcionalnim upravljanjem. Integraciono upravljanje predstalja reakciju sistema za integral greke
(proizvod greke i vremena). Male greke koje kratko traju nisu od znaaja. Meutim, ak iako je
greka mala ali je zato stalno prisutna, vremenom njen znaaj raste i znaajnije utie na odziv.
Integracioni faktor (zove se i brzina resetovanja reset rate) se moe podeavati. Brzina resetovanja
ima dimenziju vremena i to je manja to je i korekcija akumulirane greke bra. Meutim, isuvie
male vrednosti mogu uzrokovati nestabilanosti u radu sistema.
Diferencijalno upravljanje reaguje na brzinu promene greke. Naime, u sluajevima kada je deluju
nagli i jaki proremeaji, proporcionalno upravljanje nije dovoljno da koriguje greku. Proporcionalno
upravljanje reaguje samo na trenutnu vrednost greke, pa se zato moe desiti da i pored oziva koji tei
da smanji greku, greka nastavlja da raste. Drugim reima, proporcionalno upravljanje nije u
mogunosti da predviti ta e se desiti u budunosti kako bi pojaanim odzivom predupredilo
oekivanu greku. Diferencijlno upavljanje uslovie da odziv sistema bude vei kada je brzina
promene greke velika, nego kada je brzina promene greke mala. Drugim reima, diferencijalno
upravljanje nadgleda tendenciju promene greke i utie na odziv sistema tako da se u izraunavanje
odziva ukljui i pretpostavljeno ponaanje sistema u bliskoj budunosti. Diferencijlano upravljanje je
znaajno kod brzih sistema koji moraju brzo korigovati greke. Kod takvih sistema proporcionalno
pojaanje mora biti veliko. Meutim, veliko proporcionalno pojaanje moe usloviti premaenje.
Svrha diferencijalnog upravljanja je upravo eliminacija premaenja.

143

Primeri

PID jednaina je sledeeg oblika:


t

Co K ( E

1
Edt KD ( E E (n 1)) / dt ) const , gde je
Ti 0

C0 izlazna veliina
E sistemska greka
E(n-1) - greka poslednjeg odmerka
K ukupno (proporcionalno) pojaanje
1/Ti integracioni lan
KD diferencijalni lan
dt vreme izmeu dva odmeravanja signala greke

Sl. 9-10 Blok dijagram PID izraunavanja.

Na Sl. 9-10 je prikazano kao se u PLC kontroleru realizuje PID algoritam. Uoimo tabelu (loop table)
koja sadre vrednosti za svako od tri pojaanja. PID algoritam uvek radi na isti nain, a jedine
promenljive ovog algirtma su vrednosti pojaanja i uestanost odmeravanja signala greke.
Podeavanje PID kontrolera se sastoji u izboru vrednosti pojaanja koje e obezbediti optimalne
performase sistema u konkretnim dinamikim uslovima. Podeavanje pojedinanih pojaanja se
obavlja uz pomo potenciometra ili direktnim unosom, preko tastature, numerikih vrednosti
pojaanja. U optem sluaju procedura podeavanja se odvija na sledei nain:
1. Postaviti sva pojaanja na nulu.
2. Poveavati proporcionalno pojaanje sve dok sistem ne pone da osciluje
3. Smanjiti proporcionalno pojaanje tako da sistem prestane da osciluje, a zatim dodatno
smanjiti proporcionalno pojaanje za 20%.
4. Poveati diferencijalni faktor kako bi se poboljala stabilnost sistema
5. Poveavati integracioni faktor sve dok sistem ne dostigne taku nestabilnosti, zatim neznatno
smanjiti integracioni faktor.
Veina PLC sistema nudi mogunost PID upravljanja u obliku softvera i analognih U/I modula (Sl.
9-11). Manji broj proizvoaa PLC kontrolera nudi specijalizovane PID module.

144

Leder programiranje

Sl. 9-11 Komponente PLC sistema neophodne za softversku realizaciju PID upravljanja.

9.7

Radio-frekvencijski moduli

Radio-frekvencijski (RF) modulu se koriste za identifikaciju objekata, praenje proizvoda, kontrolu


proizvodnje i drugo. Oni eliminiu neke od problema koji su karakteristini za bar-kodove. Bar
kodovi moraju biti isti, a oitavanje bar koda zahteva dobru optiku vidljivost. RF moduli nisu
osetljivi na prainu, ulje i druge oblike zaprljanja. Takoe, nisu osetljivi na elektromagnetski um,
koji se generie u fabrikim postrojenjima, a potie od motora, sklopki, transformatora.
Sistem za RF identifikaciju se sastoji od RF tagova (priveska) koji se mogu lako prikaiti za objekte
ili proizvode. RF tagovi se realizuju kao poluprovodiniki ipovi koji se mogu identifikovati RF
modulom kada se nau u njegovoj blizini. Izmeu taga i RF modula uspostavlja se radio
komunikacija, putem koje je mogue proitati informacije zapisane u tagu ili ak upisati neku
informaciju u tag. Tipina aplikacija prikazana je na slici. Du pokretne trake kreu se proizvodi koji
jedan za drugim ulaze u RF polje. Dodatni senzor (optiki, induktivni,..) detektuje prisustvo proizvoda
i aktivira antenu preko koje se obavlja itanje/upis taga.

Sl. 9-12 Tipina primena RF modula. (Package Detect Senzor - senzor za detekciju paketa)

Zamislimo proces proizvodnje automobila i RF tag na automobili koji se kree du proizvodne linije.
Tag moe da sadri, osim identifikacionog broja automobila i neke karakteristine informacije koje se
tiu specifikacije, ukljuujui na primer opcije koje je kupac naruio. Kako se automobil kree od
jedne do druge proizvodne elije, tako svaka elija moe da oita sadraj taga i shodno tome ugradi ili
ne odgovarajuu opciju. Kada automobil doe do kraja proizvodne linije, u tag se moe upisati
celokupna istorija njegove proizvodnje (koji sastavni delovi su ugraeni, i sl.). Tipino, tagovi koji se
koriste u industriji poseduju memoriju od 100 do 2000 bajtova.
Postoje dva tipa RF tagova: aktivni i pasivni. Aktivni tag sadri bateriju, dok je pasivni tag ne sadri.
Za napajanje pasivnog taga se koristi elektromagnetno polje koje emituje RF modul. Drugim reima,
pasivni tag je operativan samo dok se nalazi u neposrednoj blizini RF modula. Zbog toga je domet RF
taga relativno mali. Aktivni tagovi su skuplji, ali je njihov domet vei.

145

Primeri

9.8

Operatorski terminali

Operatorski terminali nalaze se u proizvodnom programu mnogih proizvoaa PLC sistema.


Najjednostavniji tipovi operatorskih terminala su u mogunosti da prikazuju samo kratke tekstualne
poruke. Sloeniji moduli imaju mogunost prikaza grafike i teksta uz dodatnu mogunost prihvatanja
operatorskog ulaza sa tastature, touch-screen ekrana, bar-kod itaa i td. Kod sistema koji se
upravljaju PLC kontrolerima, mnoge bitne informacije o procesu se nalaze memoriji PLC kontrolera.
Operatorski terminali predstavljaju neku vrstu prozora u memoriju PLC kontrolera.
Za formiranje prikaza koriste se specijalizovani razvojni softveri koji se izvravaju na PC raunarima.
Ovi softveri omoguavaju korisniku da nacrta grafiki prikaz i odlui koje e promenljive iz PLC
kontrolera biti prikazane. Korisnik, takoe, definie kakav ulaz je neophodan od strane operatera.
Nakon to je prikaz dizajniran, on se moe preneti u permanentnu memoriju operatorskog terminala.
Ovakvi tipovi terminala mogu u svojoj memoriji da zapamte na stotine stranica. PLC, slanjem
odgovarajuih poruka daje instrukcije terminalu koju od zapamenih stranica i koje informacije da
prikae na ekranu. Ekrani obino sadre grafike prikaze pojedinih delova procesa, dok promenljive
tipino predstavljaju neka karakterisina vremena, broj proizvedenih komada ili bilo koju drugu
informaciju koja moe biti od pomoi operateru u praenju procesa ili pranalaenju eventualnih
otkaza.

146

You might also like