You are on page 1of 92

Univerzitet u Niu

Elektronski fakultet
Katedra za elektroniku
Mikroprocesorski sistemi

SEMINARSKI RAD
Projekat:

Primena tajmera, brojaa i pomerakih registara


u PLC-ovima

Student:
Milan Giki u Niu,
Br. indeksa 9596 jun, 2008.godine
Sadraj:

1. Programibilni logiki kontroleri........................................................................................4


1.1. ta je programibilni logiki kontroler............................................................................5
1.2. Relejna lestviasta logika...............................................................................................6
1.2.1. Elektromehaniko rele........................................................................................7
1.2.2. Relejno upravljaki sistemi.................................................................................8
1.3. PLC sistem...................................................................................................................11
1.4. PLC tipovi....................................................................................................................15
1.4.1. Rack/slot adresno bazirani PLC-ovi..................................................................15
1.4.2. Tag zasnovani PLC-ovi.....................................................................................16
1.4.3. Soft PLC-ovi ili PC zasnovano upravljanje......................................................16
1.5. Programiranje ladder logike PLC-a.............................................................................17
1.5.1. PLC reenje.......................................................................................................17
1.5.2. Princip rada ladder logike.................................................................................19
1.5.3. Alternativno reenje..........................................................................................20
1.6. Prednosti PLC-ova.......................................................................................................23
2. Tajmeri, brojai i pomeraki registri..............................................................................24
2.1. Tajmeri.........................................................................................................................24
2.1.1. Tipovi tajmera...................................................................................................24
2.1.2. Programibilni tajmeri........................................................................................25
2.1.2.1.Redosled operacija (Sequencing)................................................................26
2.1.2.2.Kaskadni (redni) tajmeri.............................................................................27
2.1.2.3.On-Off ciklini tajmer.................................................................................28
2.1.3. Off-delay tajmeri...............................................................................................28
2.1.4. Impulsni tajmeri................................................................................................30
2.1.5. Primeri programiranja.......................................................................................31
2.2. Brojai..........................................................................................................................33
2.2.1. Tipovi brojaa...................................................................................................33
2.2.2. Programiranje...................................................................................................33
2.2.2.1.Primena brojaa..........................................................................................35
2.2.3. Brojanje navie i nanie....................................................................................37
2.2.4. Tajmeri sa brojaima.........................................................................................38
2.2.5. Programator.......................................................................................................39
2.3. Pomeraki registri........................................................................................................42
2.3.1. Pomeraki registri.............................................................................................42
2.3.2. Ladder programi...............................................................................................43
2.3.2.1.Sekvencijalna primena................................................................................45
2.3.2.2.Odravanje razmaka izmeu predmeta.......................................................46
2.4. Manipulisanje podacima..............................................................................................48
2.4.1. Registri i bitovi..................................................................................................48
2.4.2. Manipulisanje podacima...................................................................................49
2.4.2.1.Pomeranje podataka....................................................................................49
2.4.2.2.Poreenje podataka.....................................................................................50
2.4.3. Aritmetike funkcije..........................................................................................52
2.4.3.1.Aritmetike operacije..................................................................................52
2.4.4. Zatvorena upravljaka petlja.............................................................................53
2.4.4.1.Naini kontrole............................................................................................54
2.4.4.2.PID kontrola kod PLC-a.............................................................................55
3. Mikrokontroler AT89S8253.............................................................................................56
3.1. Karakteristike mikrokontrolera AT89S8253...............................................................56
3.2. Opis mikrokontrolera AT89S8253..............................................................................56
2
3.3. Konfiguracija i opis pinova..........................................................................................57
3.4. Blok dijagram...............................................................................................................60
3.5. Tajmeri/Brojai............................................................................................................61
4. Hardverska realizacija......................................................................................................64
5. Softverska realizacija........................................................................................................70
5.1. Korienje programa Keil uVision 3............................................................................70
5.2. Definisanje projektnog zadatka....................................................................................72
5.3. Programiranje softvera.................................................................................................73
5.4. Softverski kod..............................................................................................................73
5.5. Flash-ovanje mikrokontrolera.....................................................................................84
5.6. Algoritam za program LED.........................................................................................87
6. Laboratorijska veba........................................................................................................89
6.1. Zadatak laboratorijske vebe.......................................................................................89
6.2. Laboratorijska veba....................................................................................................89
7. Zakljuak...........................................................................................................................90
8. Literatura...........................................................................................................................91
9. Biografija...........................................................................................................................92

3
1 Programibilni logiki kontroleri

Proizvodi firme Allen Bradley

Tipina arhitektura

4
1.1 ta je programibilni logiki kontroler

Definicija: Programibilni logiki kontroleri (PLC- Programmable Logic Controller) su


industrijski kontroleri specijalne namene koji se koriste za upravljanje razliitih tipova
fabrikih maina i sistema.
Alternativna definicija bi bila: PLC je specijalizovan elektronski uredjaj zasnovan na
jednom ili veem broju mikroprocesora koji se koriste za upravljenje industrijskih maina.
Pojam "industrijski" ukazuje da su PLC-ovi u sutini raunari koji su projektovani da
rade u fiziko- i elektriko-nepovoljnim ambijentalnim uslovima koji su tipini za
proizvodnju u industriji (vea-vlanost, vie neistoa, poveana temperatura, elektrine
smetnje od motora, i dr.).
Prvobitno, PLC-ovi su se nazivali programibilni kontroleri (PC- Programmable
Controller), ali je kasnije, medju inenjerima i projektantima, skraenica PC postala iroko
koriena za personalni raunar (PC- Personal Computer).
PC i PLC imaju neke osobine koje su zajednike, ali i mnoge koje ih ine razliitim.
Obe arhitekture su sline i baziraju se na osnovnoj ploi (motherboard) na koju se nalazi
procesor, memorija i interfejs elektronika za spregu sa ulazno-izlaznim modulima. U principu
PLC ne poseduje fiksnu memoriju tipa kruti disk ili removable memoriju kakvi su flopi
diskovi, CD-ROM-ovi, i dr, nego ima ugradjeno poloprovodniku ROM ili RAM memoriju u
koju se uvaju program i podaci. Takodje PLC-ovi nemaju monitor, ali koriste HMI (Human
Machine Interface) tipa ravan displej koji se koristi za prikaz procesa ili statusa maine.
Obino PC izvrava vei broj zadataka, dok PLC-ovi obavljaju samo jedan zadatak, koji je
namenjen za upravljanje procesima ili mainama.

5
1.2 Relejna lestviasta logika
Nezavisno od impozantnog napretka koji je zadnjih etiri decenija uinjen na polju
elektronike automatizacija u industriji i dan danas se zasniva na relejima koji se koriste za
upravljanje sekvencom operacija u mainama. Sekvencijalni upravljaki sistemi nazvani
relejna-lestviasta logika (relay ladder logic) su dugo godina, sve do pojave prvih PLC-ova,
bili jedini upravljaki sistemi koji su se koristili u industriji. ta vie, zbog velikog iskustva i
akumuliranog znanja u eksploataciji i proizvodnji relejne logike, prvobitni PLC-ovi su bili
projektovani da podseaju na relejnu-logiku. Da bi shvatili kako PLC obavlja svoj zadatak,
neophodno je dobro razumeti rad releja i relejno-lestviaste logike. Na slici 1 prikazano je pet
tipova releja i identifikovani su svi delovi ove elektromehanike komponente.

Slika 1 Elektromehaniki releji

6
1.2.1 Elektromehaniko rele

Kao to je prikazano na slici 1 rele ine sledee tri komponente:


1. elektromagnet- to je magnet koji se kreira (formira) prolaskom struje kroz ice
namotane oko gvozdenog jezgra.
2. armatura- to je obeena metalna ploa koja se nalazi iznad kalema. Ploa se privlai ka
elektromagnetu kada se kalem aktivira (pobudi). Kada kalem nije aktiviran, opruga
udaljava armaturu od kalema.
3. kontakti- kreiraju jedan elektrini put izmedju normalno-zatvorenih kontakata (NC
Normally Closed contacts), a drugi elektrini put preko normalno-otvorenih kontakata
(NO- Normally Open conatcts) kada je kalem aktiviran (armatura nanie).

Na slici 1 a) prikazano je jedno-polno-dvo-poloajno rele (SPDT- single pole double


throw). Ovo rele ima jedan zajedniki kontakt (single pole ili armatura) i dve pozicije, NC i
NO, koje se nazivaju throws. Kada kalem nije aktiviran, opruga zadrava (povlai) armaturu u
poziciju navie. U ovoj poziciji ostvaruje se direktna veza (nulta otpornost) izmedju common
kontakta i NC kontakta. Kada se kalem aktivira, armatura se privlai nanie pri emu se
prekida veza sa NC kontaktom. U ovoj poziciji ostvaruje se direktna veza izmedju common
kontakta i NO kontakta. Izolator (insulator) koji je deo armature koristi se da izoluje
elektrino-prekidake-kontakte releja od ostatka relejnih komponenata.
Na slici 1 b) prikazane su jedno-polne-jedno-poloajne (SPST- single pole single
throw) relejne konfiguracije.
Na slici 2 ilustrovane su razliite ematske prezentacije releja sa slike 1. Simboli
relejnih kontakata koji se koriste kao ematske prezentacije elektronskih kola razlikuju se u
odnosu na one simbole koji se koriste kod ema koje sreemo kod upravljanja. Simbol NO-
kontakt ine dve paralelne linije, koje ukazuju na otvoreno kolo, dok simbol NC-kontakt ima
dve paralelne linije precrtane jednom linijom koja ukazuje na zatvoreni kontakt.

Slika 2 Standardni simboli za jedno-polne releje sa dva kontakta

Na tritu se danas nude releji razliitog oblika i obima u odnosu na broj kontaktnih
konfiguracija. Na slici 3 a) prikazano je SPST rele sa elektronskim simbolom na levoj strani, a
upravljakim simbolom na desnoj strani. Na slikama 3 b) i 3 c) dati su simboli za dvo-polno-
dvo-poloajni (2PDT- two-pole-double throw) i tro-polni-dvo-poloajni (3PDT- three pole
double throw) releji. Isprekidana linija ukazuje da kalem releja istovremeno aktivira sve
skupove kontakata, NC i NO, releja.

7
Slika 3 Releji sa veim brojem polova i kontakata

1.2.2 Relejno upravljaki sistemi

Da bi pokazali na koji nain se releji koriste za upravljanje radom maine


analiziraemo jedan jednostavan upravljaki problem. Rezervoar, skiciran na slici 4 a), puni
se preko elektrino upravljanog ventila, a prazni se preko pumpe koja se pobudjuje motorom.
Upravljanje radom ventila i pumpe mora da zadovolji sledee kriterijume:
a) pumpa moe da radi samo kada je ulazni ventil rezervoara otvoren,
b) ulazni ventil se moe otvoriti kada pumpa radi ili ne radi.

8
Slika 4 Upravljanje punjenjem i pranjenjem rezervoara

Elektrina ema data na slici 4 b) ilustruje reenje koje se odnosi na problem


upravljanja. Isto reenje, ali koje umesto elektronske-ematske-simbole koristi sada
upravljako-ematske-simbole prikazano je na slici 4 c). Ovaj nain prezentacije upravljanja
se naziva relejno-lestviasti-dijagram (relay ladder logic diagram ili two-wire diagram).

Princip rada eme sa slike 4 se odvija na sledei nain:

1. Kada se prekida S1 runim putem postavi u poziciji zatvoreno elektromagnetno rele


A se aktivira
2. Kada se rele aktivira (slika 4 b), polovi A1 i A2 prelaze od NC pozicija u NO pozicije.
Na slici 4 c), kontakti A1 i A2 su zatvoreni to znai da su ispunjeni uslovi za punjenje
rezervoara.
3. Na slici 4 c), promena stanja kontakta A2 omoguava da se otvori ulazni ventil i
obezbedi protok tenosti u rezervoar.
4. Promena stanja kontakta A2 ne uzrokuje neposrednu akciju.
5. Runim zatvaranjem prekidaa S2 obezbedjen je uslov da pumpa radi.

9
Kao to smo ve napomenuli upravljaki-tip simbola za komponente u upravljakoj
konfiguraciji se naziva relejno-lestviasti (ladder) logiki dijagram. Kod ovih dijagrama (vidi
sliku 4) postoje dve vertikalne linije, jedna na levoj strani oznaena sa L1, a druga na desnoj
strani oznaena sa L2. Pri tome L1 se obino naziva left power rail a koristi se za dovod
vrueg-pola od izvora napajanja (faza kod AC napajanja, ili "+" pol kod DC napajanja), a L1
koju nazivamo right power rail, predstavlja povratna linija (nula ili neutral kod AC napajanja,
a masa kod DC napajanja).
Na slici 4 b) motor je direktno povezan na prekida i kontakte releja. Ipak treba
naglasiti da se ovakvo reenje sree samo kod industrijsko-upravljakih aplikacija koje su
tipine za korienje motora malih snaga. Na slici 4 c) prikazano je jedno preferirano reenje
koje koristi specijalno-rele za start motora (identifikovano kao M1), nazvano kontaktor, koje
je namenjeno da komutira (prekida/ukljuuje) napajanje motora pumpe. Kontaktori
ukljuuju/iskljuuju visok-napon i struju za pobudu motora. Na slici 4 d) prikazani su
normalno otvoreni M1 kontakti kontaktora motora koji je povezan na napajanje. Za zatitu
rada motora koriste se dva skupa kontakta od preoptereenja (overload) koje nazivamo OL
kontakte. Termika preotereenja su nacrtana izmedju kontakta i motora na slici 4 d), a
optereenja kontaktora su nacrtana na preagi lestvice (ladder rung) izmedju kalema M i linije
za napajanje L2. Dogovorno, samo OL kontakti se prikazuju na preagi u lestvici, i to tako da
se crta samo jedna za svaki skup polova.

10
1.3 PLC sistem

Na slici 5 prikazan je blok dijagram PLC sistema.

Slika 5 Blok dijagram PLC sistema

Srce PLC-a je PLC-procesor. Procesor je okruen ulaznim modulima na levoj strani


slike 5, izlaznim modulima na desnoj, i napajanjem sa gornje strane.
Programiranje PLC-a se moe obaviti na sledea tri naina:
a) manuelno pomou runog programera;
b) direktno preko povezane PC maine; i
c) pomou raunara preko mrene konekcije.
PLC komunicira sa ulazno-izlaznim uredjajima preko ulazno-izlaznih (U/I) modula. S
obzirom da je broj U/I uredjaja koji se povezuju na PLC sistem dosta veliki, specifian, i
raznorodan u odnosu na njihov princip rada, to znai da e biti veliki broj i U/I modula koji se
povezuju na procesor.
Zadnjih desetak godina sve je izrazitija tendencija da se PLC-procesor spree sa U/I
uredjajima preko mrenih konekcija formirajui na taj nain, na nivou fabrike ili objekta
upravljanja, lokalne raunarske mree (LAN- Local Area Network). Ovakvim nainom
povezivanja mogue je daljom nadgradnjom ostvariti vezu sa svetskom mreom Internet.

11
Kod sistema automatskog upravljanja koji su veeg obima, PLC blokovi se montiraju
u rack-ove (vidi sliku 6). Rack obezbedjuje podrku za mehaniku montau kao i podrku za
sve elektrine interkonekcije. Pored toga rack se koristi za realizaciju interfejsa za prenos
podataka izmedju svih PLC modula, koji za potrebe prenosa podataka koriste strukturu
magistrale tipa backplane. (Backplane koristi bakarne provodnike, preko kojih se prenosi
napajanje do modula, a takodje poseduje i magistralu za razmenu i prenos podataka izmedju
modula i procesora. Moduli se ubaciju u rack pri emu u rack-u svaki zauzme odgovarajue
mesto. Broj slotova u rack-u je obino ogranien i odredjen brojem i tipovima modula).

Slika 6 PLC rack i pogled na backplane

PLC procesor obavlja sva logika i aritmetika izraunavanja, a realizuje se pomou


nekog mikroprocesora ili mikrokontrolera. Blok za napajanje obezbedjuje energiju za sve
moduke koji se ubacuju u rack.
Uredjaj za programiranje se koristi za unos i download-ovanje programa, ili za
editovanje postojeih programa u PLC.
U/I interfejs koji se koristi kod PLC-a moe da ima jedan od sledea dva oblika:
a) fiksni- ovi tipovi se realizuju kao mikro-PLC sistemi kod kojih su sve funkcije
integrisane u jedinstvenu jedinicu. Broj U/I portova, u okviru svakog modula, je
fiksiran i ne moe se menjati.
b) modularni- ovi tipovi U/I interfejsa (vidi sliku 6) koriste rack u kome se smetaju U/I
moduli tako da broj i tip U/I modula moe da varira.

12
Ulaznim interfejsima se ostvaruje veza izmedju PLC-procesora i spoljnih uredjaja koji
se koriste za merenje (procenu) fizikih i elektrinih veliina okoline. Ulazni uredjaji najee
imaju ugradjeno prekidae, senzore, pojaavae i drugu elektroniku kondicionerskog tipa..
Ovi uredjaji se esto nazivaju field uredjaji (instaliraju se na licu mesta procesa) to ukazuje
da oni nisu deo (ne pripadaju) PLC-ovog hardvera.
Komunikacioni moduli (vidi sliku 5) ostvaruju vezu izmedju PLC-procesora i drugih
raunarsko-kontrolisanih maina i uredjaja koji dele iste podatke i zahteve za daljinskim
upravljanjem sa PLC-sistemom. Na slici 7, islustracije radi, prikazan je nain sprezanja sa
razliitim tipovima mrea ukljuujui DeviceNet,ControlNet, Ethernet/IP,
SERCOS interfejs, Smart I/O interfejs, i ASCII I/O interfejs.

Slika 7 Komunikacione mrene opcije kod PLC upravljakih sistema

DeviceNet- je jevtina komunikaciona mrea koja na PLC povezuje pametne


(smart) ili inteligentne U/I field uredjaje kakvi su senzori ili aktuatori. Smart field
uredjaj obino u svoju elektroniku ima ugradjeno mikroprocesor ili mikrokontroler.
ControlNet- je otvoreni mreni standard koji je sa aspekta hijerarhijskog
upravljanja nivo iznad DeviceNet-a. Dok je primarna funkcija DeviceNet-a
podredjena umreavanju U/I uredjaja, ControNet koristi mreni model tipa
proizvodja-potroa za potrebe efikasne razmene informacije kod vremensko-
kritinih aplikacija u sistemima upravljanja.

13
Ethernet/IP (IP se odnosi u ovom sluaju na Industrijski Protokol)- je otvoreni
mreni standard koji koristi prednosti koje se nude od strane Ethernet
komunikacionih uredjaja i fizikog medijuma za prenos podataka.
SERCOS interfejs (Serial Real-time Communication System)- je digitalna pokretna
upravljaka mrea koja predstavlja interfejs za pokretne upravljake module kod PLC-
a sa servo-motorom preko optikog kabla.
Smart I/O interfejsi- proizvodjai PLC-ova koriste privatne mrene protokole
preko kojih se ostvaruje komunikacija sa U/I uredjajima (tipino je to za
DataHighway-vidi sliku 7).
Remote Racks- sa ciljem da se ostvari distribuirano upravljanje kod velikih i
sloenih upravljakih sistema, proizvodjai PLC-ova nude remote-rack mogunost. U
konkretnom sluaju PLC procesor preko odgovarajueg komunikacionog modula alje
komande udaljenom uredjaju.
ASCII I/O interfejs- prenos podataka se ostvaruje preko standardnih interfejsa
kakvi su RS 232, RS 422 i dr.

14
1.4 PLC tipovi

U zavisnosti od operativnih karakteristika PLC-ovi se mogu grupisati u sledee


kategorije:
a. rack ili adresno-zasnovani sistemi;
b. tag- zasnovani sistemi; i
c. soft-PLC-ovi ili PC-zasnovani sistemi.
Ukazaemo sada u kratkim crtama na osnovne osobine pomenutih PLC-ova.

1.4.1 Rack/slot adresno-bazirani PLC-ovi

PLC sistem prikazan na slici 6 predstavlja jedan tipian rack/slot adresno-bazirani


sistem kod koga slot lokacije ulazno-izlaznih modula u rack-u definiu PLC adrese ulazno-
izlaznih signala koji su povezani na taj modul. Fiziki, ulazno-izlazni moduli, standardno, se
smetaju u rack-u desno u odnosu na procesor. Tipovi uredjaja koji su povezani na PLC kao i
tipovi signala koji oni generiu (signali mogu biti AC, DC, diskretni, analogni, naponski ili
strujni), diktiraju tipove ulazno-izlaznih kartica (modula) koje se smetaju u slotove. U
principu, ulazno-izlazni moduli obavljaju sledee dve funkcije:
ostvaruju korektnu spregu (mehaniku i elektrinu) sa uredjajima koji su locirani na
licu mesta procesa (field device)
kondicioniraju signal (u elektrinom smislu- vre pojaanje, filtriranje od smetnji, i
dr.).
Nivo signala koji je prisutan na svakom ulazu predstavlja se unutar PLC-a kao
promenljiva, a oznaava se slovom I iza koga sledi adresa referentnog broja. Naglasimo da
nezavisno od toga to svaki proizvodja rack/slot adresno-zasnovanih sistema koristi razliite
adresne eme, ipak adresa se odredjuje na osnovu:
1. tipa prisutnog modula (ulazni, I, izlazni, O);
2. rack/slot broj u kome se taj modul ubacuje; i
3. terminalni broj koji se koristi za konektiranje.
Ilustracije radi, sledea sintaksa se koristi za adresiranje diskretnih ulaza kod Allen-
Bradley SLC 500 sistema:
I: (rack/slot_broj)/(terminal_broj)
Slovo I ukazuje da se radi o ulazu, simbol ":" predstavlja delimiter koji razdvaja tip modula
(I- ulazni, a O-izlazni) od broja slot modula; simbol "/" je delimiter koji razdvaja broj slot
modula od terminal broja , tj. broja prikljuka.

###########################################################################
Primer 1

Kod Allen-Bradley SLC 500 sistema (vidi sliku 6 b)) koji koristi rack/slot zasnovano
adresiranje odrediti:
a) adresu diskretnog ulaznog signala povezan na terminal 5 DC-ulaznog modula u slotu 2.
b) adresu diskretnog izlaznog field uredjaja povezan na terminal 12 AC izlaznog modula u
slotu 5.
Odgovor
a) I: 2/5
b) O: 5/12
###########################################################################
15
Kompanija Mitsubishi kod svojih PLC-ova ulazima dodeljuje adrese
X400,X401,X402, i td., a izlazima Y430,Y431,Y432, i td. Toshiba koristi slian sistem.
Kod Siemens SIMATC S5, ulazi i izlazi su ofredjeni u grupama od po 8. Svaka grupa od 8 se
naziva bajt, a svaki ulaz ili izlaz u okviru 8 nazivamo bit. Ulazima i izlazima se dodeljuju
adrese koje se izraavaju u funkciji broja bajta i bita, efektivno ofdredjujui na taj nain broj
modula iza koga sledi broj terminala. Pri tome, broj modula je razdvojen od broja terminala
simbolom ".". Sledea notacija objanjava ovaj nain adresiranja:

I=ulaz

} X YY. Z broj bita


Q=izlaz
broj bajta

Tako na primer notacija I0.1 se odnosi na bit 1 bajt 0, a Q2.0 predstavlja izlaz bit 0
bajta 2.
Postoje kompanije koje kod adresiranja koriste sledeu notaciju. Slovom A se oznaava ulaz,
a slovom B izlaz. Notaciju A.3.02 se odnosi na ulaz na terminalu 02 modula 3, a B5.12 na
izlaz na terminalu 12 modula 5.

1.4.2 Tag zasnovani PLC-ovi

Tag-zasnovani PLC-ovi se koriste kod svih adresno zasnovanih modela PLC-ova.


Tipino su to PLC-ovi iz familije Control-Logix kompanije Allen Bradley, ili neki slini
PLC-ovi kompanija Telemecanique i Siemens. Tag ime koje se koristi kod ovih sistema je isto
kao i promenljiva deklarisana kod viih programskih jezika kakav je C. Kod ovog tipa
adresnih sistema, ulazima i izlazima field uredjaja, u trenutku projektovanja sistema
upravljanja, dodeljuju se imena promenljivih (variable names). Kompanija Allen Bradley
koristi termin tag umesto variable. Kasnije ime promenljive (variable) ili tag se dodeljuje
ulazno-izlaznom modulu i specifinom terminal broju. Tag je jedina referenca koja se koristi
kada se razvija program koristei se (pomou) PLC-ovog ladder logikog programa. Kada se
tag-ovi ili variable-e definiu, deklarie se i tip podataka koji se prestavlja od strane tag-a.

1.4.3 Soft PLC-ovi ili PC-zasnovano upravljanje

PC-bazirani upravljaki sistemi, alternativno nazvani soft PLC-ovi, predstavljaju


emulaciju PLC-a koja se izvodi softverom PC-maine. Ova implementacija koristi
industrijsku PC-mainu, U/I karticu za spregu sa field uredjajem, i aplikacioni softver koji ini
da se PC-maina ponaa kao PLC.
Jedan drugi tip implementacije koristi standardni PLC sa industrijskim PC-modulom
smeten u jednom od PLC rack-slotova. Kod ove verzije PC ima pristup backplane-u a time i
svim U/I modulima u PLC rack-u. Soft PLC reenje koriste jednu od pomenute dve
implementacije.
U principu soft PLC-ovi predstavljaju dobar projektanski izbor kod onih reenja gde se
zahteva velika memorija za uvanje podataka, intezivnije matematike manipulacije u toku
upravljanja procesom, kao i grafiki prikaz procesa.

16
1.5 Programiranje ladder logike PLC-a

Ladder logika je grafika programska tehnika koja se koristi kod kreiranja programa
za upravljanje radom PLC-ova. Relejno logiko reenje za upravljanje radom pumpe, problem
prikazan na slici 8 a) i b), slian je PLC-ovom ladder logikom programu koji se koristi za
reavanje istog problema. Ipak jedna suptilna razlika izmeu ova dva naina koja se odnose
na upravljanje radom sistema esto stvara konfuziju koja je posebno izrazita kod neiskusnih
korisnika PLC-ova. Zbog ovoga, sa ciljem da se otklone ove nedoumice ukazaemo u tekstu
koji sledi na osnovne razlike izmeu ova dva koncepta.

1.5.1 PLC reenje

Kada se ladder logiko reenje koje se odnosi na upravljanje radom punjenja


rezervoara sa slike 8 a) zameni PLC programom, field ureaj i dalje ostaje prisutan ali se
eliminie mehaniko rele. Field ureaj je opti naslov za sve tipove ulaznih ureaja i izlaznih
aktuatora. Izlazni aktuatori kod PLC sistema su mehaniki, pneumatiki, hidrauliki, ili
elektrini ureaji koji uzrokuju neko mehaniko pokretanje kao odziv na elektrini pobudni
signal.

Slika 8 Upravljaki sistem za kontrolu rada rezervoara

Na slici 9 prikazano je kako se prekidai i aktuatori povezuju kod PLC-a. Naglasimo


da se ulazni prekidai (ilustrovani korienjem standardnog simbola za selektor prekida)
povezuju na PLC-ov ulazni modul, a aktuatori se vezuju na izlazni modul. Zavrnice ulaznih i
izlaznih modula identifikuju se terminalnim brojevima. Tako na primer, prekidai se povezuju
na terminale 1 i 2 ulaznog modula a solenoidi pumpe su povezani na sline terminalne brojeve
izlaznog modula. Sa slike 9 se vidi da su PLC procesor i program locirani izmeu ulaznih i
izlaznih modula.

17
Slika 9 PLC reenje za upravljanje radom pumpe iz problema sa slike 8

PLC ladder logiki program kojim se ostvaruje isto logiko upravljanje kao i kalem na
slici 8 b) prikazano je na slici 9 b). Uporeivanjem slike 8 b) sa slikom 9 b) mogu se
identifikovati slinosti ali i razlike, a one su sledee:
1. upravljako kolo sa slike 9 b) postoji u formi fizikih komponenata i ica, dok ladder
logiki program kod slike 9 b) egzistira samo kao skup instrukcija i logikih iskaza
koji su smeteni u memoriji.
2. mehaniko rele u relejnoj logici zamenjeno je softverom ili virtuelnim relejom (CR1)
u PLC ladder logici. Softver ili virtuelno rele postoji samo u memoriji PLC-a.
3. izlaz PLC-ove preage [-( )-] u literaturi se esto naziva kalem (coil) ali ne treba ga
koristiti kada se pozivamo na PLC-ov ladder izlaz. Bolji termin je diskretna izlazna
instrukcija koja je u sutini bit koji samo egzistira u memoriji.
4. svaka preaga (rung) kod PLC-ove ladder logike predstavlja logiki iskaz koji se
softverski izvrava sa ulazime na levoj i izlazima na desnoj strani preage. Ako su
ulazi true, tada e i izlaz biti true ili aktivan. Tako na primer, ako je instrukcija I1 (-||-)
true (prisutna je neprekidnost veze) tada e i izlaz CR1 biti aktivan. Treba imati u vidu
da je ovo virtuelni tok, dok aktuelni tok ne postoji. Ako je CR1 aktivan tada e ulazna
instrukcija sa adrese CR1 u preagi 01 biti true pa e izlaz O1 biti aktivan. Ulazna
instrukcija I1 bie true ako je prekida S1 zatvoren pa je napon prisutan na terminalu 1
ulaznog modula. Ako je ulaz O1 aktivan, tada terminal 1 izlaznog modula se postavlja
na potenciajlu mase ime je obezbeen uslov da se propusti struja kroz solenoid (turn
on solenoid value).
5. broj virtuelnih releja, izlaznih instrukcija, i referenciranih ulaznih instrukcija kod PLC
ladder logike je ogranien jedino obimom PLC memorije, dok je broj kontakata kod
mehanikog releja ogranien brojem polova koji postoji kod izabranog releja.
6. ulazne i izlazne instrukcije kod PLC ladder logike na direktni nain ne predstavljaju
prekidae i aktuatore. PLC-ove ulazne instrukcije su logiki simboli koji su pridrueni

18
ulaznim signalima (naponski) prisutni na terminalima ulaznog modula. Izlazni simbol
se pridruuje signalu (naponu) koji e biti prisutan (predstavljen) na aktuatoru koji se
povezuje na izlazni modul.
7. ulazni i izlazni ureaji imaju svoje posebne izvore za napajanje koji su izolovani od
napajanja PLC procesora.

Reenje prikazano na slici 9 se koristi da ukae da se kod PLC-ovih reenja field


ureaji spreu sa PLC-ovim ulaznim i izlaznim modulima, a da PLC-ov logiki povezuje
ulazne ureaje na izlazne preko ladder logikog programa. PLC-ovi ladder logiki ulazi se
nazivaju instrukcije a ne kontakti iz razloga to se ulazne instrukcije predstavljaju binarnim
vrednostima koje se uvaju u memoriji PLC-a.
Drugim reima, svim simbolima u relejno logikom dijagramu odgovaraju stvarne (realno
postojee) komponente i kontakti koji su prisutni u sistemu upravljanja, dok se ulazni (-||-) i
izlazni (-( )-) simboli instrukcija kod PLC-ove ladder logike predstavljaju samo vrednostima
koje su smetene (uvaju) u PLC-ovoj memoriji.

1.5.2 Princip rada ladder logike

PLC reenje sa slike 9 b) ima tri preage (rungs) sa ulaznim instrukcijama na levoj
strani a izlaznim instrukcijama na desnoj. Ulazne instrukcije u preagama 00 i 02 imaju
adrese-podataka za I1 i I2, tako da naponi prisutni na ulaznim terminalima 1 i 2 odreuju da li
su stanja ovih instrukcija true ili false. Naponi na ulaznim terminalima se postavljaju u
zavisnosti od toga u kojim pozicijama se nalaze spoljani prekidai S1 i S2 na slici 9 a).
Ulazna instrukcija na preagi 01 je kontrolisana uslovom koji definie virtuelno rele CR1.
Izlazne instrukcije na preagama 01 i 02 imaju adrese-podataka za O1 i O2, tako da
njihova stanja, koja mogu biti true ili false, odreuju stanja , on ili off, izlaznih ureaja koji su
povezani na izlazne terminale 1 i 2. Tako na primer, ako je O1 aktivan, tada kroz kalem
solenoida tee struja, tj. on je aktivan (turned on).
Izlaz preage 00, CR1, je virtuelno rele sa ulaznim instrukcijama koje ga referenciraju
u preagama 01 i 02. Ako je izlaz CR1 aktivan tada sve instrukcije koje su pridruene tom
virtuelnom releju su true. Rad ladder logike se moe sumirati na sledei nain:
a) preaga 00 : izlazna instrukcija CR1 je aktivna jer je ulazna instrukcija I1 true (na
ulaznom terminalu 1 prisutan je napon jer je prekida S1 zatvoren). Ako je CR1
aktivan tada obe ulazne instrukcije pridruene izlazu CR1 u preagama 01 i 02 su
aktivne.
b) preaga 01 : izlazna instrukcija O1 je aktivna jer je ulazna instrukcija CR1 true. Ako
je O1 aktivan tada je kalem solenoida u stanju on i ulazni ventil za protok-fluida je
otvoren.
c) preaga 02 : izlazna instrukcija O2 je aktivna samo ako su obe ulazne instrukcije CR1
i I2 true. Ako je izlaz O2 aktivan tada kontaktor pumpe motora povezan na izlaznom
terminalu 2 je on i pumpa je ukljuena. To znai da bi pumpa radila potrebno je da
izlaz CR1 bude true (prekida S1 je zatvoren a ulazni ventil otvoren) i prekida S2
zatvoren (prekida za upravljanje radom pumpe je on).

Kao zakljuak koji se odnosi na programiranje i nain sprezanja PLC-a sa slike 9


mogli bi da kaemo sledee:
1. ulazni field ureaji, prekidai i senzori, se povezuju na terminalima ulaznog ureaja
2. izlazni field ureaji se povezuju na terminalima izlaznog modula

19
3. ulazne instrukcije sa adresama za svaki field ureaj se nalaze na levoj strani ladder
logike preage, a izlaznim instrukcijama sa odgovarajuim adresama za svaki izlazni
field ureaj se nalaze na desnoj strani preage. Na istoj preagi se mogu paralelizirati.
4. virtuelni releji, i kombinacije ulaznih instrukcija se smetaju na ladder preagama sa
ciljem da se ostvari eljena kontrola izlaza.

1.5.3 Alternativno reenje

Na slici 10 prikazano je alternativno reenje ladder logike sa slike 9. Uoimo da je


virtuelno rele, CR1, izbaeno i da multipl ulazne instrukcije ija je adresa I1 su iskoriene da
se ostvari isto logiko upravljanje. Kod relejnog ladder logikog reenja, slika 8 b),
selektorski prekida field ureaja koji kontrolie rad ventila ima samo jedan skup kontakata.
Jedan (single) kontakt kontrolie dva razliita ureaja tako da je potrebno instalirati rele sa
dva prekidaka kontakta (2PST). Nasuprot tome, instrukcija I1 kod PLC ladder logike ne
predstavlja fiziki kontakt nego je virtuelni koji se kreira u memoriji. Jedinstveni kontakt od
prekidaa ventila S1 obezbeuje ulazni uslov na terminalu 1 (napon moe biti prisutan ili ne).
Skoro neogranieni broj instrukcija I1 se moe koristiti kod PLC ladder logike, i svaka bie
true ako je S1 u stanje on. Broj ovih instrukcija je ogranien obimom memorije. Alternativno
reenje prikazuje da postoji vei broj reenja za izvoenje upravljanja, ali je pri tome samo
jedno optimalno. Sa dve preage kod alternativnog reenja, koristi se manje memorije, a i
izvrenje programa je bre.

Slika 10 Alternativno ladder logiko reenje za problem rada jedne pumpe

###########################################################################
###
Primer
Kod upravljanja radom punjenja / pranjenja rezervoara sa slike ... i slike 9 koristi se i druga
pumpa koja se ukljuuje kod pranjenja rezervoara. Ova pumpa bie u stanje on ako su true
sledei uslovi: (1) ulazni ventil je otvoren; (2) pumpa 1 je on, i (3) selektor prekida 2 nove
pumpe 2 je zatvoren.
Izvesti neophodne promene u relejno logikom reenju sa slike ... i PLC reenju sa slike 9.
Odgovor

20
Druga pumpa kao i selektor-prekida pumpe mora biti dodat (ugraen) kod obe varijante
izvoenja, PLC-a i relejno logikog reenja. Druge promene, kod fizikog sistema, koje se
odnose na PLC reenje prikazano na slici 11 a) nisu potrebne. Ipak, na slici 11 b) prikazane su
tri glavne izmene koje je potrebno izvesti kod relejno-logikog reenja, a to su: (1) treba
ugraditi novo rele sa tri dvopoloajna kontakta (three double throw poles); (2) da se zameni
prvobitni jedno-polni kontrolni prekida pumpe sa dvo-polnim tipom; i (3) da se obave
ekstenzivne (brojne) modifikacije u relejno kontrolnom oiavanju. Uporediti sada novo
relejno ladder logiko reenje ilustrovano na slici 11 b) i PLC ladder logiko reenje
prikazano na slici 12 a).
###########################################################################
###

Slika 11 Reenje sa dve pumpe koje koristi PLC i relejnu ladder logiku

21
Slika 12 PLC ladder logiko reenje za rad sa dve pumpe

22
1.6 Prednosti PLC-ova

Kod sistema upravljanja baziranih na PLC-ovima jedino fiziko oiavanje u sistemu


predstavljaju interfejsi (sprege) koji se izvode izmeu ulaznih i izlaznih field ureaja i ulaznih
i izlaznih PLC-ovih modula. Svi elementi ladder programskih preaga, kao to su virtuelni
releji, instrukcije za virtuelne releje, ulazne instrukcije field ureaja, i izlazne instrukcije,
postoje samo u softveru i uvaju se u memoriji PLC-a. Kao rezultat ovakve koncepcije PLC
ladder logika ima vei broj prednosti u odnosu na konvencionalnu relejnu logiku, a koje se
ogledaju u sledeem:
1. jednostavnije i preglednije oiavanje
2. jednostavnije i preglednije oiavanje
3. vea pouzdanost mehaniki releji i elektro-mehaniki ureaji su daleko
nepouzdanije komponente u odnosu na softver
4. efikasnije je odravanje i bre se nalaze kvarovi
5. off-line programiranje ranije PLC-ovi su se programirali preko specijalnih
programskih kontrolera koji su bili isporuivani od strane proizvoaa. Dananji
sistemi koriste mikroraunare, obino PC maine, kao maine za programiranje. Nova
programska softverska sredstva omoguuju da se program za PLC razvije na samoj PC
maini, zatim testira pomou emulatorskog softvera i pronau greke u programiranju
pre nego to se instalira softver u PLC-u. Nove verzije softvera omoguavaju da se
PLC download-uje preko serijske konekcije, ili preko Internet-a. Kod najveeg broja
aplikacija, programiranje za datu aplikaciju se obavlja koristei hardverske i
softverske resurse PC maine dok se sam proces programiranja izvrava na taj nain
to se program upisuje u memoriju PLC-a. Ovaj proces se naziva off-line
programiranje, a omoguava da se PLC programira bez da se on vadi iz rack-a, tj.
odstranjuje od procesa upravljanja.
6. on-line programiranje ovaj nain programiranja omoguava programeru da edituje
ladder logike preage (rungs) dok PLC izvrava program. Promene se izvode u
specijalnom on-line reimu rada, a kada su promene u potpunosti obavljene nova
ladder logika postaje aktivni deo tekueg ladder programa.
7. iri krug aplikacija PLC softver podrava iri opseg analognih i diskretnih aplikacija
na koje nailazimo kod upravljanja u industrijskim postrojenjima.
8. niske cene i male dimenzije cena i gabarit PLC-a su znaajno smanjeni zadnjih 10
godina. Recimo, cena jednog mikro-PLC-a je reda $300.
9. mogunosti upravljanja PLC-a zahvaljujui ugradnji savremenih VLSI IC-ova a i
sve efikasnijeg softvera mogunosti novijih verzija PLC-ova su zaista impresivne.
Pored ostalog omogueno je kreiranje mreno-distribuirano upravljanje i povezivanje
na Internet.

23
2 TAJMERI, BROJAI I POMERAKI REGISTRI

2.1 TAJMERI

U mnogim kontrolnim zadacima postoji potreba za kontrolisanjem vremena. Na


primer, motor ili pumpa mogu biti kontrolisani tako da rade u odreenom vremenskom
intervalu, ili moda da se ukljue posle odreenog vremenskog intervala. PLC-ovi zbog toga
imaju tajmere kao ugraene komponente. Tajmeri broje delove sekunde ili sekunde koristei
unutranji takt CPU-a. Ovo poglavlje pokazuje kako takvi tajmeri kogu biti programirani da
izvravaju kontrolne zadatke.

2.1.1 Tipovi tajmera

Proizvoai PLC-ova se razlikuju po tome kako bi tajmeri trebali biti programirani i


na osnovu toga kako oni mogu biti razmatrani. Uopteni pristup je razmatranje tajmera koji se
ponaaju kao relei sa namotajima koji prilikom pobuivanja otvaraju ili zatvaraju kontakte
posle nekog zadatog vremena. Tajmer je stoga tretiran kao izlaz za preagu sa kontrolom koja
se izvodi preko parova kontakta (Slika 2.1.1(a)). Neki tretiraju tajmer kao blok za kanjenje,
koji kada se ubaci u preagu zakasni signale na izlazu te preage (Slika 2.1.1(b)).

Slika 2.1.1 Razmatranje tajmera

Postoji nekoliko razliitih oblika tajmera koji se mogu da nai kod PLC-ova. Kod
malih PLC-ova oni su najee u jednom obliku, on-delay tajmeri. Ovo su tajmeri koji
nastupaju posle odreenog vremenskog kanjenja (Slika 2.1.2(a)). Off-delay tajmeri su
ukljueni u fiksnom vremenskom periodu pre iskljuivanja (Slika 2.1.2(b)). Drugi tip tajmera
koji se javlja je pulse (impulsni) tajmer. Ovaj tajmer se ukljuuje ili iskljuuje u fiksnom
vremenskom periodu (Slika 2.1.2(c)). Slika 2.1.3 prikazuje simbole IEC 1131-3 standarda za
tajmere. TON se koristi da oznai on-delay, TOF off-delay, a TP pulse tajmere. On-delay se
takoe predstavlja kao T-0, a off-delay kao 0-T.

24
Slika 2.1.2 Tajmeri: (a) On-delay, (b) Off-delay, (c) Pulse

Slika 2.1.3 IEC 1131-1 standardi. BOOL predstavlja Bulovski ulaz/izlaz, tj. on/off. IN je izlaz.
ET je ukupno vreme izlaza. PT je ulaz korien da oznai vreme.

Vreme za koje je tajmer podeen se oznaava kao zadato vreme a podeeno je u


umnocima koriene vremenske baze. Neke vremenske baze su tipino 10 ms, 100 ms, 1 s,
10 s i 100 s. Stoga zadata vrednost 5 sa vremenskom bazom 100 ms je vreme od 500 ms. Radi
olakanja, kada se tajmeri pomilju u ovom tekstu, koristi se vremenska baza od 1 s.

2.1.2 Programibilni tajmeri


Svi PLC-ovi, generalno, imaju delay-on tajmere, a mali PLC-ovi imaju samo ovaj tip
tajmera. Slika 2.1.4(a) prikazuje ladder dijagram sa preagama koji obuhvata delay-on tajmer.
Slika 2.1.4(a) je tipino Mitsubishi. Tajmer je kao rele sa namotajem koji je pobuen kada se
javlja ulaz In 1 (preaga 1). On zatim zatvara, posle nekog zadatog vremena kanjenja,
njegove kontakte na preagi 2. Stoga se izlaz javlja posle nekog zadatog vremena kada se javi
ulaz In 1. Slika 2.1.4(b) prikazuje tajmer kao kanjenje u preagi, a ne kao rele, to primenjuje
Siemens. Kada se signal na startnom ulazu tajmera menja od 0 ka 1, tajmer startuje i radi u
programiranom vremenu, dajui svoj izlaz na izlazni namotaj. Izlaz vrednosti vremena (TV)
se moe iskoristiti za odreivanje iznosa preostalog vremena u bilo kom trenutku. Ulazni
signal na ulazu za resetovanje resetuje tajmer bilo da radi ili ne. Tehnike za unoenje
vrednosti zadatog vremena se razlikuju. esto se zahteva unoenje komande konstante K
praene vremenskim intervalom u umnocima koriene vremenske baze. Slika 2.1.4(c), (d) i
(e), prikazuju ladder dijagrame Telemecanique, Toshiba i Allen-Bradley.

S je Bulovski startni ulaz. TV je trajanje specifikacije vremena. R je Bulovski reset. BI


je sadanja vremenska vrednost u binarnoj rei. BCD je sadanja vremenska vrednost u BCD
rei. Q je Bulovski izlaz, i predstavlja stanje tajmera.
25
Bit dozvole EN je podeen na 1 kada postoji logika linija za vreme. Done bit
prikazuje stanje tajmera i podeen je na 1 kada je akumulirana vrednost jednaka zadatoj
vrednosti.

Slika 2.1.4 Tajmeri: (a) Mitsubishi, (b) Siemens, (c) Telemecanique, (d) Toshiba, (e)
Allen-Bradley

2.1.2.1 Redosled operacija (Sequencing)


Kao ilustacija korienja tajmera, razmatramo ladder dijagram prikazan na slici
2.1.5(a). Kada je ulaz In 1 ukljuen, izlaz Out 1 se ukljuuje. Kontakti povezani sa ovim
izlazom, zatim ukljuuju tajmer. Kontakti tajmera e se zatvoriti posle nekog zadatog
vremenskog kanjenja, u ovom sluaju 5.5 s. Kada se ovo desi, izlaz Out 2 se ukljuuje.
Stoga, pratei ulaz In 1, Out 1 se ukljuuje i posle 5.5 s ukljuuje se Out 2. Ovo ilustruje kako
se moe postii vremenski raspored izlaza. Slika 2.1.5(b) prikazuje istu operaciju gde je
format korien od strane PLC proizvoaa tajmera takav da pokree kanjenje signala.

Slika 2.1.5 Redosled izlaza

Slika 2.1.6 prikazuje dve verzije kako tajmeri mogu biti korieni da pokrenu tri
izlaza, npr. tri motora, po definisanom redosledu posle pritiskanja start dugmeta. U sluaju (a)
tajmeri su programirani kao kalemovi, dok u sluju (b) oni su programirani kao kanjenja.
Kada se start dugme pritisne postoji jedan izlaz iz unutranjeg relea IR1. On baferuje startni

26
ulaz. On takoe pokree oba tajmera, T1 i T2, i motor 1. Kada zadato vreme za tajmer T1
protekne onda se njegovi kontakti zatvaraju i motor 2 se ukljuuje. Kada zadato vreme za
tajmer T2 protekne onda se njegovi kontakti zatvaraju i motor 3 se ukljuuje. Sva tri motora
sa zaustavljaju pritiskajui dugme stop. Dok se ovo posmatra kao kompletan program, koristi
se instrukcija end.

Slika 2.1.6 Redosled operacija motora

2.1.2.2 Kaskadni (redni) tajmeri


Tajmeri mogu biti povezani zajedno, i koristi se termin kaskadni da se prui due
vreme kanjenja od onog koje je mogue sa samo jednim tajmerom. Slika 2.1.7(a) prikazuje
ladder dijagram za takav raspored. Stoga trebamo imati tajmer 1 sa vremenom kanjenja 999
s. Ovaj tajmer se ukljuuje kada postoji ulaz na In 1. Kada vreme od 999 s istekne, kontakti za
tajmer 1 se zatvaraju. Tako onda startuje tajmer 2. On ima kanjenje od 100 s. Kada ovo
vreme istekne, kontakti tajmera 2 se zatvaraju i postoji izlaz iz Out 1. Stoga se izlaz javlja
1099 s posle ulaza Out 1. Slika 2.1.7(b) prikazuje Mitsubishi verziju ovog ladder dijagrama i
programske naredbe za ovu ladder.

Slika 2.1.7 Kaskadni (redni) tajmeri

27
2.1.2.3 On-Off ciklini tajmer

Slika 2.1.8 prikazuje kako on-delay tajmeri mogu biti korieni za stvaranje on-off
ciklinog tajmera. Tajmer je dizajniran da ukljui izlaz za 5 s, onda iskljui za 5 s, onda
ukljui za 5 s, onda iskljui za 5 s, i tako redom. Kada postoji ulaz na In 1 i kada su njegovi
kontakti zatvoreni, tajmer 1 startuje. Tajmer 1 je podeen da kasni 5 s. Posle 5 s, ukljuuje se
tajmer 2 i izlaz Out 1. Tajmer 2 ima kanjenje od 5 s. Posle 5 s, kontakti tajmera 2, koji su
obino zatvoreni, otvaraju se.Ovo rezultuje da tajmer 1, u prvoj preagi, biva iskljuen. Ovo
onda prouzrokuje da se njegovi kontakti u drugoj preagi otvaraju i iskljuuju tajmer 2. Ovo
rezultuje da kontakti tajmera 2 nastavljaju da imaju uobiajen zatvoren poloaj i tako ulaz na
In 1 uzrokuje da ciklus poinje sve iznova.

Slika 2.1.8 On-off ciklini tajmer

Slika 2.1.9 prikazuje kako e gornji ladder dijagram izgledati u korienom formatu sa
tajmerom razmatranim kao kanjenje a ne kao namotaj. Ovo bi bilo, na primer, kod Siemens i
Toshiba. Kada se ulaz In 1 zatvara, tajmer T1 startuje. Posle isteka njegovog zadatog
vremena, javlja se izlaz na Out 1 i tajmer T2 startuje. Posle isteka njegovog zadatog vremena,
javlja se izlaz na unutranjem releu IR1. Ovaj otvara njegove kontakte i zaustavlja izlaz iz Out
1. Ovaj onda iskljuuje tajmer T2. Potpuni ciklus moe se zatim ponavljati.

Slika 2.1.9 On-off ciklini tajmer

2.1.3 Off-delay tajmeri

Slika 2.1.10 prikazuje kako on-delay tajmer moe biti korien za stvaranje off-delay
tajmera. Sa jednim takvim rasporedom, kada postoji trenutan ulaz na In 1, oba, izlaz Out 1 i
tajmer se ukljuuju. Budui da je ulaz baferovan od strane kontakata Out 1, izlaz ostaje da
bude ukljuen. Posle zadatog vremena kanjenja tajmera, kontakti tajmera, koji su obino

28
zatvoreni, otvaraju se i iskljuuju izlaz. Stoga izlaz startuje kao ukljuen i ostaje ukljuen sve
dok ne protekne vreme kanjenja.

Slika 2.1.10 Off delay tajmer

Neki PLC-ovi imaju, osim on-delay tajmera, ugraene i off-delay tajmere i stoga nije
potrebno koristiti on-delay tajmer za izgradnju off-delay tajmera. Slika 2.1.11 ilustruje ovo za
Siemens PLC, dajui ladder dijagram i listu naredbi. Zapazimo da se kod ovog proizvoaa
tajmer posmatra kao kanjenje u preagi, a ne kao rele. U pravougaonom simbolu koji se
koristi za tajmer, 0 prethodi T i ozanava da je on-delay tajmer.

Slika 2.1.11 Off delay tajmer

Kao ilustracija korienja off-delay tajmera, razmotrimo Allen-Bradley program


prikazan na slici 2.1.12. TOF se koristi da naznai da je to off-delay, a ne on-delay (TON)
tajmer. Vremenska baza je podeena na 1:0 to je 1 s. Podeenost je na 10 tako da je tajmer
poseen na 10 s.

Slika 2.1.12 Upotreba jednog off-delay tajmera

29
U prvoj preagi, izlaz tajmera je uzet od EN (za ukljuivanje) kontakata. Ovo znai da
ne postoji vreme kanjenja izmeu ulaza na I:012/01 i EN izlaza. Kao rezultat EN kontakti u
preagi 2 se zatvaraju odmah gde se nalazi I:012/01 ulaz. Stoga javlja se izlaz O:013/01
odmah posle pojave ulaza I:012/01. TT kontakti u preagi 3 se napajaju upravo za vreme dok
tajmer radi. Zbog toga to je tajmer off-delay tajmer, on je ukljuen 10 s pre nego se iskljui.
Stoga TT kontakti e se zatvoriti kada se podeeno vreme od 10 s pokrene. Dakle izlaz
O:012/02 je ukljuen za ovo vreme od 10 s. DN kontakti koji su obino zatvoreni, se otvaraju
posle 10 s i stoga izlaz O:013/03 se javlja posle 10 s. DN kontakti koji su obino otvoreni,
zatvaraju se posle 10 s i tako izlaz O:013/04 odlazi posle 10 s.

2.1.4 Impulsni tajmeri

Impulsni tajmeri se koriste da stvore konano vreme trajanja izlaza od nekog


zapoetog ulaza. Slika 2.1.13(a) ladder dijagram za sistem koji e dati izlaz na Out 1 za
prethodno zadatu konanu duinu vremena dok postoji ulaz na In 1, tajmer koji obuhvata
jedan namotaj. Postoje dva izlaza za ulaz In 1. Kada postoji ulaz na In 1, postoji izlaz iz Out 1
i tajmer startuje. Kada prethodno zadato vreme protekne kontakti tajmera se otvaraju. On
iskljuuje izlaz. Stoga izlaz ostaje ukljuen u vremenu koje je specificirao tajmer.

Slika 2.1.13 Impulsni-on tajmer

Slika 1.13(b) prikazuje ekvivalentan ladder dijagram slici 2.1.13(a) ali primenjuje
tajmer koji izaziva kanjenje u vremenu koje je potrebno signalu da se pojavi na izlazu.
Na slici 2.1.13, impulsni tajmer je imao izlaz ukljuen od strane ulaza za prethodno
zadato vreme, a onda se iskljuuje. Slika 2.1.14 prikazuje drugi impulsni tajmer koji ukljuuje
izlaz za prethodno zadato vreme posle prekidanja ulaza. On koristi tajmer i dva unutranja
relea. Kada postoji ulaz na In 1, unutranji rele IR 1 se napaja. Tajmer nee startovati u ovom
trenutku jer obino zatvoreni In 1 kontakti su otvoreni. Zatvaranje kontakata IR 1 znai da se
unutranji rele IR 2 napaja. Ne postoji, meutim, izlaz iz Out 1 u ovoj fazi jer, na dnu preage,
imamo otvorene kontakte na In 1. Kada se prekine ulaz na In 1, oba unutranja relea ostaju
napojeni i tajmer startuje. Posle podeenog vremena, kontakti tajmera, koji su obino
zatvoreni, otvaraju se i iskljuuju IR 2. On naizmenice iskljuuje IR 1 . On takoe na dnu
preage iskljuuje izlaz Out 1. Stoga izlaz je iskljuen za vreme dok je ukljuen ulaz, onda
biva ukljuen za unapred odreenu duinu vremena.

30
Slika 2.1.14 Impulsni tajmer on, kada je izlaz prekinut

2.1.5 Primeri programiranja

Razmotrimo program (slika 2.1.15) koji moe biti korien za ukljuivanje ili
iskljuivanje svetla dok se javlja neki izlaz. Stoga treba da imamo oba, tajmer 0 i tajmer 1
podeeni na 1 s. Kada se javi izlaz, onda tajmer 0 startuje i ukljuuje se posle 1 s. Ovaj
zatvara kontakte tajmera 0 i startuje tajmer 1. Ovaj se ukljuuje posle 1 s i, na taj nain,
iskljuuje tajmer 0. Na taj nain on iskljuuje i sebe. Sijalica je jedino ukljuena kada je
tajmer 0 ukljuen i tako imamo program koji ukljuuje i iskljuuje sijalicu dok postoji izlaz.

Slika 2.1.15 Treperenje svetla

Kao ilustracija programiranja koje ukljuuje tajmere razmatramo semafor koji daje sekvencu
crveno, crveno i uto, zeleno, uto, a zatim se ponavlja. Jednostavan sistem moe samo imati
sekvencu koja se vremenski okida, gde se sva mogua stanja javljaju u sekvenci u fiksnom
vremenskom intervalu. Slika 2.1.16 prikazuje sekvencijalni funkcijski dijagram i mogui
ladder program za datu sekvencu.

31
Slika 2.1.16 Sekvenca semafora

32
2.2 BROJAI

Brojai su dati kao ugraeni elementi u PLC-ovima i omoguavaju brojanje pojavljivanja


ulaznih signala.Ovo je potrebno gde moramo brojati objekte kao npr. kada oni prolaze du
prenosne trake, ili broji obrtaje osovine, ili broj ljudi koji prolaze kroz vrata. Ovo poglavlje
opisuje kako takvi brojai mogu biti programirani.

2.2.1 Tipovi brojaa

Broja je podeen na neku zadatu vrednost i kada se prihvati ova vrednost ulaznih impulsa on
e promeniti stanje kontakata. Stoga obino otvoreni kontakti bi bili zatvoreni, a zatvoreni bi
bili otvoreni.
Postoje dva tipa brojaa, mada PLC-ovi ne moraju imati oba tipa. Ovi su brojai
nanie i brojai navie. Brojai nanie broje nanie od zadate vrednosti do nule, tj. dogaaji
se oduzimaju od podeene vrednosti. Kada broja dostigne nulu njegovi kontakti menjaju
stanje. Veina PLC-ova nude brojanje nanie. Brojai navie broje od nule do zadate
vrednosti, tj. dogaaji se sabiraju sve dok broj ne dostigne zadatu vrednost. Kada broja
dostigne podeenu vrednost njegovi kontakti menjaju stanje.
Razliiti proizvoai PLC-ova se ophode prema brojaima na razliite naine. Neki
broje nanie (CTD) ili navie (CTU), i resetuju odnosno tretiraju broja kao da je namotaj
relea odnosno izlaz preage. Na ovaj nain brojai se mogu razmatrati kao da se sastoje od
dva osnovna elementa: jedan namotaj relea za brojanje ulaznih impulsa i jedan za resetovanje
brojaa, odgovarajui kontakti brojaa koji se koriste u drugim preagama. Slika 2.2.1(a)
ilustruje ovo. Mitsubishi je primer ovakvog tipa proizvoaa. Drugi tretiraju broja kao
meublok u preagi iz koje signali izlaze kada je brojanje zavreno. Slika 2.2.1(b) ilustruje
ovo. Siemens je primer ovakvog tipa proizvoaa.

Slika 2.2.1 Oblici predstavljanja brojaa. Kod (a) RST je reset. Kod (b),
predstavljanje IEC 1131-3, CD je ulaz brojanja nanie, LD je za uitavanje ulaza, PV je za
zadatu vrednost, CV je trenutna vrednost brojanja, CU je ulaz brojanja navie i R je za ulaz
resetovanja

2.2.2 Programiranje

Slika 2.2.2 prikazuje osnovno brojako kolo. Kada postoji ulazni impuls na In 1,
broja se resetuje. Kada postoji ulaz na In 2, broja poinje sa brojanjem. Ako je broja
podeen za, recimo, 10 impulsa, onda kada 10-ti impuls bude primljen na In 2, kontakti
brojaa e se zatvoriti i postojae izlaz iz Out 1. Ako u bilo kom trenutku za vreme brojanja
postoji ulaz na In 1, broja e se resetovati i poee sve izpoetka i brojae 10 impulsa.

33
Slika 2.2.2 Osnovni program brojaa

Slika 2.2.3(a) prikazuje kako e gornji program, i njegova lista naredbi izgledati kod
Mitsubishi PLC-a. Resetovanje i brojanje elemenata su ujedinjeni u jednu celinu obuhvatajui
dve preage. Moe se posmatrati pravougaonik koji obuhvata dva brojaka ( ) izlaza na slici
2.2.2. Brojna vrednost je podeena od strane K programske naredbe. Slika 2.3(b) prikazuje isti
program kod Siemens PLC-a. Sa ovim ladder programom, broja se razmatra kao element
kanenja u izlaznoj liniji ( kao na slici 2.2.1(a)). Broja resetuje ulaz I0.1 i broji impulse sa
ulaza I0.0. CU oznaava broja sa brojanjem navie, a CD oznaava broja sa brojanjem
nanie. Podeena vrednost brojaa je oznaena brojem LKC. Slika 2.2.3(c) je program za
Toshiba a slika 2.2.3(d) za Allen-Bradley.

Slika 2.2.3 (a) Mitsubishi, (b) Siemens, (c) Toshiba, (d) Allen-Bradley programi

34
2.2.2.1 Primena brojaa

Kao ilustracija primene brojaa razmatramo problem prolaska objekata du


transportne trake, a prolazak pojedinanog objekta se registruje preko prekida svetlosnog
zraka koji putuje prema fotoelektrinoj eliji, a posle odreenog broja alje se signal koji
obavetava da je premaen podeen broj i traka se zaustavlja. Slika 2.2.4(a) prikazuje osnovne
elemente Siemens programa koji se koristiti. Signal za resetovanje omoguuje resetovanje
brojaa i ponovo startovanje brojanja. Signal podeavanja se koristi za aktiviranje brojaa.
Slika 2.2.4(b) prikazuje osnovne elemente Allen-Bradley programa. Kada broja premai
zadatu vrednost zavrni bit je 1 i javlja se O:013/01 izlaz, a odgovarajui kontakti su otvoreni
i traka se zaustavlja.

Slika 2.2.4 (a) Siemens, (b) Allen-Bradley program za brojanje

Kao sledeu ilustraciju primene brojaa razmotrimo problem kontrole maine koja se
zahteva za usmeravanje 6 konzervi du putanje gde se pakuju u paketu, a zatim 12 konzervi
du druge putanje za pakovanje u drugi paket (slika 2.2.5). Ravan deflektora se moe
kontrolisati fotoelijskim senzorom koji daje izlaz svaki put kada konzerva proe. Stoga broj
impulsa iz senzora se mora brojati i iskoristiti za kontrolu deflektora. Slika 2.2.6 prikazuje
ladder program koji se moe koristiti. Korieno je Mitsubishi oznaavanje.

Slika 2.2.5 Ureaj za brojanje Slika 2.2.6 Ladder program za ureaj sa slike 2.2.5

35
Kada postoji impulsni ulaz na X400, oba brojaa su resetovana. Ulaz za X400 moe
biti taster koji se koristi za pokretanje trake. Ulaz koji se broji je X401. Ovo moe biti ulaz iz
fotoelijskog senzora koji detektuje prisustvo konzervi koje prolaze du trake. C460 poinje
brojanje posle zatvaranja X400. Kada je C460 izbrojao 6 objekata,zatvara svoje kontakte i
daje izlaz ka Y430. Ovo moe biti solenoid koji se koristi za aktiviranje deflektora da skrene
objekte u jedan ili drugi boks. Stoga deflektor moe biti u poziciji koja prvo proputa 6
konzervi u 6-to paketni boks, a zatim se deflektor pomera da omogui prolaz konzervama u
12-to paketni boks. Kada C460 stopira brojanje on zatvara svoje kontakte i omoguuje
startovanje brojanja kod C461. C461 broji 12 impulsa ka X401 i zatim zatvara svoje kontakte.
Ovo dovodi do resetovanja oba brojaa i ceo proces se moe ponoviti.
Brojai se mogu koristiti da osiguraju da se odreeni deo sekvence ponavlja odreeni
broj puta. Ovo je ilustrovano programom koji sledi a koji je dizajniran da omogui
trocilindrinom sklopu sa duplim solenoidom (slika 2.7(a)) da da sekvencu A+, A-, A+, A-,
A+, A-, B+, C+, B-, C-. Sekvenca A+, A- se ponavlja tri puta pre nego to se javi B+, C+, B-,
C-. Moemo koristiti broja za izvoenje ovog ponavljanja. Slika 2.7(b) prikazuje mogui
program. Broja dozvoljava da se B+ javi samo posle prijema tri ulaza koji su tri A- signali.

Slika2.2.7 (a) Trocilindrini sistem, (b) program

36
2.2.3 Brojanje navie i nanie

Mogue je programirati brojae koji imaju mogunost da broje navie i da broje


nanie. Razmotrimo zadatak brojenja proizvoda kako dolaze na pokretnu traku i kako je
naputaju, ili moda automobile kako ulaze na parkiralite i kako ga naputaju. Izlaz se okida
ako broj objekata/automobila koji ulaze je neki broj vei od broja koji naputaju, tj. broj na
parkiralitu je dostigao vrednost zasienja. Izlaz moe biti osvetljeni znak Nema praznih
mesta. Pretpostavimo da koristimo broja navie za objekte koji ulaze i broja nanie za
objekte koji izlaze. Slika 2.2.8(a) prikazuje osnovni oblik ladder programa za takvu jednu
primenu. Kada objekat ue, on daje impuls na ulazu In 1. Ovaj poveava sadraj brojaa za
jedan. Stoga svaki objekat koji ue poveava akumuliran sadraj za jedan. Kada jedan objekat
odlazi on daje ulaz na In 2. Ovaj oduzima broj za jedan. Stoga se svaki objekat koji naputa
oduzima od akumuliranog sadraja za jedan. Kada akumulirana vrednost premai zadatu
vrednost, izlaz Out 1 se ukljuuje. Slika 2.2.8(b) prikazuje implementaciju ovog programa sa
Allen-Bradley programom.

Slika 2.2.8 (a) Korienje borjaa navie i nanie, (b) Allen-Bradley program

Brojai navie nanie su dostupni kao jedinstvene celine. Slika 2.2.9 prikazuje IEC
1131-3 stardadni znak. Broja ima dva ulaza CU i CD i broji navie broj impulsa
detektovanih na ulazu CU i broji nanie broj impulsa detektovanih na ulazu CD. Ako ulaz
brojaa dostigne nulu, QD izlaz prelazi u stanje on i brojanje nanie se zaustavlja. Ako
brojanje dostigne maksimalnu vrednost PV, QU izlaz prelazi u stanje on i brojanje navie se
zaustavlja. CV je vrednost sadraja brojaa. LD se moe koristiti za podeavanje izlaza
brojaa CV sa vrednou PV. Reset R brie ulaz brojaa na nulu.

Slika 2.2.9 IEC 1131-3 standardni znak za brojae navie-nanie

37
Slika 2.2.10 prikazuje kako gornji sistem moe izgledati kod Siemens PLC-a i
odgovarajuu listu programskih naredbi. CU je ulaz za brojanje navie, a CD za brojanje
nanie. R je reset. Podeena vrednost akomulatora se uitava preko F0.0, i ovo je neki
unutranji rele.

Slika 2.2.10 Brojanje navie i nanie kod Siemens PLC-a

2.2.4 Tajmeri sa brojaima

Tipian tajmer moe brojati do 16 binarnih bita podataka, to odgovara 32767


osnovnih vremenskih jedinica. Stoga, ako imamo vremensku bazu od 1 s, onda maksimalno
vreme sa kojim moe raditi tajmer je upravo preko 546 minuta ili 9.1 sat. Ako je vremenska
baza 0.1 s onda je maksimalno vreme 54.6 minuta ili malo krae od jednog sata. Spajanjem
tajmera sa brojaem, mogu se brojati dua vremena. Slika 2.2.11 ilustruje ovo sa Allen-
Bradley programom. Ako tajmer ima vremensku bazu od 1 s i zadatuu vrednost od 3600, onda
on moe brojati do jedan sat. Kada se ulaz I:012/01 aktivira, tajmer poinje da poveava
vreme za jednu sekundu. Kada vreme dostigne zadatu vrednost od jednog sata, DN bit se
podesi na 1 i broja se povea za 1. DN bit podeen na 1 takoe resetuje tajmer i tajmer
poinje da meri vreme ispoetka. Kada opet dostigne zadato vreme od jednog sata, DN bit se
ponovo podeava na 1 i broja se poveava za 1. Kod brojaa sa podeenom zadatom
vrednosti na 24, DN bit brojaa se podesi na 1 kada brojanje premai 24 i izlaz O:013/01 se
ukljuuje. Stoga imamo tajmer koji je u stanju da broji sekunde za vreme jednog dana i koji
e biti sposoban da ukljui neki ureaj posle 24 sata.

Slika 2.2.11 Korienje brojaa da proiri opseg tajmera

38
2.2.5 Programator

Cilindrini programator je oblik brojaa koji se koristi za kontrolu redosleda. On


zamenjuje mehaniki cilindrini programator koji se koristio za kontrolu maina koje imaju
stepenasti niz ponavljanja operacija. Jedan oblik mehanikog cilindrinog programatora se
sastoji od cilindra iz kojeg viri nekoliko klinova (slika 2.2.12). Kada se cilindar rotira,
kontakti u liniji sa klinovima bivaju zatvoreni kada klin udari u njih i otvaraju se kada klin
proe. Stoga, za raspored prikazan na slici 2.2.12, dok cilindar rotira, u prvom koraku klin za
izlaz 1 se aktivira, u drugom koraku klin za trei izlaz, u treem koraku klin za drugi izlaz, i
tako dalje. Razliiti izlazi se mogu kontrolisati od strane klinova smetenih na razliitim
odstojanjima du cilindra. Drugi oblik se sastoji od niza vorova na istoj osovini, a oblik
vorova se koristi da ukljui i iskljui kontakte.

Slika 2.2.12 Cilindrini programator

PLC programator sadri glavni broja koji ima opseg zadatog brojanja koji odgovaraju
razliitim koracima i tako, kako napreduje sa brojanjem, kada se premai svaka zadata
vrednost moe se iskoristiti za kontrolu izlaza. Svaki korak u redosledu brojanja se odnosi na
odreeni izlaz ili grupu izlaza. Izlazi su unutranji relei, i bivaju korieni za kontrolu
spoljanjih izlaznih ureaja.
Pretpostavimo da elimo da izlaz 1 bude ukljuen 5 s posle startovanja i ostane
ukljuen dok ne dostigne 10 s, izlaz 2 da se ukljui za 10 s i ostane ukljuen dok ne bude 20 s,
izlaz 3 da se ukljui za 15 s i ostane ukljuen dok ne bude 25 s, itd. Moemo predstaviti ove
zahteve vremenskim sekvencijalnim dijagramom, slika 2.2.13 koji prikazuje zahtevanu
vremensku sekvencu.

Slika 2.2.13 Vremenski dijagram

Moemo transformisati vremenski dijagram u oblik cilindrine sekvence. Uzimajui


da svaki korak cilindrine sekvence traje 5 s dobijamo dijagram prikazan u tabeli 2.2.1. Stoga
u prvom koraku zahtevamo da izlaz 1 bude ukljuen i da ostane ukljuen dok ne preemo na
korak 2. U drugom koraku zahtevamo da izlaz bude ukljuen i da ostane ukljuen dok ne
39
preemo na korak 4. U treem koraku zahtevamo da izlaz 3 bude ukljuen i da ostane
ukljuen dok ne preemo na korak 5. U petom koraku zahtevamo da izlaz 4 bude ukljuen i
da ostane ukljuen dok ne preemo na korak 6.

Tabela 2.2.1 Zahtevi programatora

Kod PLC-a, kao to je Toshiba, programator se podeava ukljuivanjem Step


Sequence Initialize (STIZ) funkcijskog bloka R500 (slika 2.2.14). Ovaj podeava korak za 1 i
R501. Ovaj rele onda ukljuuje izlaz Y020. Sledei korak je ukljuivanje R502. On ukljuuje
izlaz Y021 i takoe delay-on tajmer tako da R503 nije ukljuen dok tajmer ima pauzu. Onda
R503 ukljuuje Y022 i takoe sledei korak u sekvenci.

Slika 2.2.14 Programator kod Toshiba PLC-ova

40
Kod Allen-Bradley oblika PLC-a programator se programira korienjem sekvence
binarnih rei u obliku zahtevanih izlaza, na primer onih u tabeli 2.2.1. Stoga mi bi imali
sledeu sekvencu rei stavljenu u program korienjem ureaja za programiranje.

41
2.3 POMERAKI REGISTRI

Pojam registar se koristi za elektronski ureaj u kome se podaci mogu uvati.


Unutranji rele je takav ureaj. Pomeraki registar je nekoliko unutranjih relea grupisanih
zajedno koji omoguuje pomeranje memorisanih bitova sa jednog relea na drugi. Ovo
poglavlje govori o pomeraakim registrima i kako oni mogu biti korieni gde se zahteva
redosled operacija ili da obelei posebne delove u sistemu proizvodnje.

2.3.1 Pomeraki registri

Registar je nekoliko unutranjih relea zajedno grupisanih, obino 8, 16 ili 32. Svaki unutranji
rele je ili otvoren ili zatvoren, i ova stanja bivaju oznaena kao 0 i 1. Pojam bit se koristi za
svaki takav binarni digit. Prema tome, ako imamo osam unutranjih relea u registru moemo
sauvati osam 0/1 stanja. Stoga moemo imati:

Unutranji relei
1 2 3 4 5 6 7 8

i svaki rele moe zapamtiti jedan on-off signal pa je stanje registra u nekom trenutku:
1 0 1 1 0 0 1 0

tj. rele 1 je ukljuen, rele 2 je iskljuen, rele 3 je ukljuen, rele 4 je ukljuen, rele 5 je
iskljuen, itd. Takvo ureenje se naziva 8-mo bitni registar. Registri mogu da se koriste za
smetanje podataka iz ulaznih izvora drugaijih od jednostavnih on-off ureaja kao to su
prekidai.
Kod pomerakih registara mogue je pomerati smetene bitove. Pomeraki registri
zahtevaju tri ulaza, jedan da uita podatke na prvo mesto u registru, jedan kao naredba za
pomeranje podataka za jedno mesto i jedan za resetovanje ili ienje registra od podataka. Da
bi ilustrovali ovo, razmotrimo sledeu situaciju gde poinjemo sa 8-mo bitnim registrom sa
sledeim stanjem:

1 0 1 1 0 0 1 0

Pretpostavimo da sada primimo ulazni signal 0. Ovo je ulazni signal na prvom unutranjem
releu.
Ulaz 0
1 0 1 1 0 0 1 0

0 1 0 1 1 0 0 1
Prelivanje 0
Stoga grupa unutranjih relea koji su inicijalno bili on, off, on, on, off, off, on, off su sada off,
on, off, on, on, off, off, on.
Zajedniko grupisanje unutranjih relea koji formiraju pomeraki registar se radi
automatski so strane PLC-a kada je funkcija pomerakog registra izabrana. Kod Mitsubishi
PLC-a, ovo se radi koristei programski kod SFT (shift) na osnovu broja unutranjih relea koji
treba da bude prvi u registarskom nizu. Ovo onda prouzrokuje blok relea, koji poinje od tog
poetnog broja, a koji je rezervisan za pomeraki registar.

42
2.3.2 Ladder programi

Razmotrimo 4-oro bitni pomeraki registar i kako on moe biti predstavljen u ladder
programu (slika 2.3.1(a)). Ulaz In 3 se koristi da resetuje pomeraki registar, tj. postavlja sve
vrednosti na 0. Ulaz In 1 se koristi kao ulaz prvog unutranjeg relea u registar. Ulaz In 2 se
koristi da pomeri stanja unutranjeg relea za 1. Svaki od unutranjih relea u registru, tj. IR 1,
IR 2, IR 3 i IR 4, je povezan na jedan izlaz, a to su Out 1, Out 2, Out 3 i Out 4.

Slika 2.3.1 Pomeraki regisrar

Pretpostavimo da smo poeli sa dovoenjem ulaza na In 3. Svi unutranji relei su onda


poseeni na 0 i tako stanja etiri unutranja relea IR 1, IR 2, IR 3 i IR 4 su 0, 0, 0, 0. Kada se
In 1 trenutno zatvori postoji 1 ulaz u prvi rele. Stoga stanja unutranjih relea IR 1, IR 2, IR 3 i
IR 4 su sada 1, 0, 0, 0. Kontakti IR 1 se zatvaraju i stoga imamo izlaz na Out 1. Ako sada
dovedemo ulaz na In 2, 1 je pomeren sa prvog relea na drugi. Stanje unutranjih relea je sada
0, 1, 0, 0. Sada nemamo ulaz sa Out 1 ali imamo izlaz na Out 2. Ako dovedemo drugi ulaz na
In 2, pomeramo stanja relea za jedno mesto, i dobijamo 0, 0, 1, 0. Izlazi 1 i 2 su sada
iskljueni ali Out 3 je ukljuen. Ako dovedemo neki drugi ulaz na In 2 ponovo pomeramo
stanje relea za jedan i imamo 0, 0, 0, 1. Stoga sada, izlazi 1, 2, i 3 su iskljueni i izlaz 4 biva
ukljuen. Kada se neki drugi ulaz dovede na In 2 pomeramo stanja relea za jedan i imamo 0,
0, 0, 0 sa 1 prekoraenjem koji biva izgubljen. Svi izlazi su onda iskljueni. Stoga efekat
redosleda ulaza na In 2 daje redosled izlaza Out 1, praen sa Out 2, praen sa Out 3, praen sa
Out 4. Slika 2.3.1(b) prikazuje redosled signala.

Slika 2.3.2 prikazuje Mitsubishi verziju gornjeg ladder programa i pridruenu listu
naredbi. Umesto tri odvojena izlaza za resetovanje, izlaz i pomeranje, Mitsubishi pomeraki
registar se pojavljuje u programu kao jedan funkcijski boks, kao to je prikazano na slici. Kod
Mitsubishi pomerakog registra, M140 je adresa prvog relea u registru.

43
Slika 2.3.2 Mitsubishi program

Slika 2.3.3 prikazuje ladder program za pomeraki registar za Toshiba PLC. Kod
Toshiba R016 je adresa prvog relea u registru. (08) pokazuje da postoji osam takvih relea. D
se koristi za ulaz podataka, S za pomeranje ulaza, E za dozvolu ili resetovanje ulaza i Q za
izlaz.

Slika 2.3.3 Pomeraki registar

44
Slika 2.3.4 prikazuje IEC 1131-3 standardni znak za pomeraki registar. Vrednost koja
se pomera je na ulazu IN a broj pomeranja je na ulazu N.

Slika 2.3.4 IEC 1131-3 znak za pomeraki registar

Slika 2.3.5 prikazuje Siemens znak za pomeraki registar. Ako je ulaz dozvole EN 1,
funkcija pomeranja se izvrava i ENO je onda 1. Ako je EN 0, funkcija pomeranja se ne
izvrava i ENO je 0. Pomeraka funkcija SHL_W pomera sadraje rei na ulazu IN bit po bit
ulevo za broj specificiran na ulazu N. Pomerena re je na izalzu Out.

Slika 2.3.5 Znak pomerakog registra za Siemens

2.3.2.1 Sekvencijalna primena

Razmotrimo zahteve za program za dva dvostruka solenoidna cilindra, sa postavljenim


rasporedom kao to je prikazano na slici 2.3.6(a), da dobijemo sekvencu A+, B+, A-, B-. Slika
2.3.6(b) prikazuje program za ostvarivanje ove sekvence koristei pomeraki registar.

45
Slika 2.3.6 Sekvencijalni cilindri

2.3.2.2 Odravanje razmaka izmeu predmeta

Do sada smo prikazali kako se pomeraki registri mogu koristiti za sekvenciranje. Druga
primena je za odravanje razmaka izmeu predmeta. Na primer, semzor se moe koristiti da
detektuje neispravne predmete koji se kreu du pokretne trake i za odravanje razmaka
izmeu predmeta tako da kada dostigne odgovarajuu taku mehanizam za izbacivanje se
aktivira da ga ukloni sa pokretne trake. Slika 2.3.7 ilustruje ovo ureenje i tip ladder
programa koji se moe koristiti.

46
Slika 2.3.7 Odravanje razmaka izmeu neispravnih predmeta

Svaki put kada se otkrije neispravan predmet, impulsni signal se javlja na ulaz X400.
On unosi 1 u pomeraki registar na unutranjem releu M140. Kada se predmeti pomeraju, dali
neispravni ili ne, postoji impuls na ulazu X401. On pomera 1 du registra. Kada 1 dospe na
unutranji rele M144, on aktivira izlaz Y430 i mehanizam za izbacivanje uklanja neispravan
predmet sa transportne trake. Kada je predmet uklonjen javlja se ulaz na X403. On se koristi
da resetuje mehanizam tako da se ne izbacuju nadalje predmeti sve dok se signal za
izbacivanje ne javi na M144. On to ini dajui izlaz na unutranji rele M100 koji baferuje ulaz
X403 i iskljuuje izlaz za izbacivanje Y430. Ovo su samo osnovni elementi sistema. Praktini
sistem obuhvata druge unutranje relee kako bi se osiguralo da je mehanizam za izbacivanje
iskljuen kada se ispravni predmeti kreu du pokretne trake i takoe da onemogue ulaz na
X400 kada se javlja pomeranje.

47
2.4 MANIPULISANJE PODACIMA

Tajmeri, brojai i pojedinani unutranji relei rade sa pojedinanim bitovima, tj. sa


pojedinanim on-off signalima. Pomeraki registri sadre nekoliko bitova koji su spojeni sa
grupom unutranjih relea. Blok podataka u registru je manipulisan. Ovo poglavlje je o PLC
operacijama sadravajui blokove podataka predstavljajui vrednost, i takvi blokovi se
nazivaju rei. Blok podataka je potreban kad trebamo predstavljati brojeve a ne jedini on-off
ulaz. Manipulisanje podacima se sastoji od radnji kretanja ili prenoenja numerikih
informacija smetenih iz jedne memorijske lokacije u drugu, poreenje vrednosti podataka i
izvravanje jednostavne aritmetike opreacije. Na primer, moe biti potrebno uporediti
numeriku vrednost sa podeenom vrednou i pokrenuti postupak ako je stvarna vrednost
manja od podeene vrednosti.

2.4.1 Registri i bitovi

Registar je tamo gde podatak moe biti sauvan. Kod PLC-a postoji nekoliko takvih registara.
Svaki registar podataka moe smestiti binarnu re od obino 8 ili 16 bitova. Broj bitova
odreuje veliinu broja koji moe biti smeten. Binarni sistem koristi samo dva simbola, 0 i 1.
Stoga moemo imati 4-oro bitni broj 1111. Ovo je decimalni broj 15. Stoga 4-oro bitni
registar moe sauvati broj izmeu 0 i 15. 8-mo bitni registar moe sauvati pozitivan broj
izmeu 0 i 255. 16-to bitni registar moe sauvati pozitivan broj izmeu 0 i 216-1 tj. 65535.
Stoga 16-to bitna re se moe koristiti za pozitivne brojeve u opsegu od 0 do +65535.
Ako se zahtevaju negativni brojevi, najznaajniji bit se koristi da predstavi znak, 1 predstavlja
negativan broj i 0 pozitivan broj i format korien za negativne brojeve je dvojini
komplement. Dvojini komplement je nain pisanja negativnih brojeva tako da kada
saberemo +5 i -5 dobijamo 0. Stoga u ovom formatu, 1011 predstavlja negativan broj -5 i
0101 pozitivan broj +5; 1011 + 0101 = 0000 sa (1) koja se za 4-oro bitni broj gubi.

Format binarnog koda za decimalne cifre (BCD) se esto koristi kod PLC-ova kada su
povezani na ureaje kao to su digitalni displeji. Kod prirodnog binarnog broja ne postoji
jednostavna veza izmeu razdvojenih znakova decimalnog broja i ekvivalentnog binarnog
broja. Mora se aritmetiki odreivati broj iz jednog brojnog sistema u drugi. Kod binarno
kodiranog decimalnog sistema, svaki decimalni broj je predstavljen, redom, 4-oro bitnim
binarnim brojem (etiri je najmanji broj binarnih bitova koji daje decimalni broj vei od 10, tj.
2n>10). Da ilustrujemo ovo, razmotrimo decimalni broj 123. 3 je predstavljena 4-oro bitnim
binarnim brojem 0011, 2 4-oro bitnim brojem 0010 i 1 kao 0001. Stoga binarni kodirani
decimalni broj od 123 je 0001 0010 0011. Binarni kod za decimalne cifre je pogodan sistem
za korienje kod spoljanjih ureaja koji su podeeni za decimalni format, npr. dekadni
prekidai i digitalni displeji. Zato 4-oro binarni bitovi se mogu koristiti za svaki decimalni
broj. PLC-ovi zbog toga esto imaju ulaze ili izlaze koji mogu biti programirani da konvertuju
binarni kod za decimalne cifre od spoljanih ulaznih ureaja u binarni oblik potreban unutar
PLC-a i od binarnog oblika koji se koristi u PLC-u u binarno kodirani decimalni oblik za
spoljane izlazne ureaje.
Tasterski prekida sa vraanjem se nairoko koristi kao sredstvo za manuelno
unoenje BCD podataka u PLC. On ima etiri kontakata koji mogu biti otvoreni ili zatvoreni
da daju 4-oro binarne bitove koji predstavljaju decimalni broj (slika 2.4.1). Kontakti se
otvaraju ili zatvaraju rotiranjem toka koristei taj taster. Koristei nekoliko ovakvih
prekidaa, podaci mogu biti uneeni u BCD formatu.

48
Slika 2.4.1 Tasterski prekida sa vraanjem

2.4.2 Manipulisanje podacima

Slede primeri instrukcija za manipulisanje podacima koji se mogu nai kod PLC-a.

2.4.2.1 Pomeranje podataka

Strukturalni tekstualni program unosa za MOVE operaciju je :- sa adresama odredita


koje su prvo date i onda posle :- vrednost koja e biti pomerena na odredite, tj.
Result:-value

Kod ladder programa, slika 2.4.2 ilustruje zajedniku vebu korienja jedne preage
ladder programa ta svaku operaciju pomeranja, prikazujui oblik korien od strane tri
proizvoaa, Mitsubishi, Allen-Bradley i Siemens. Za prikazanu preagu, kada postoji ulaz na
| | u preagi, pomeranje se javlja sa adrese oznaenog izvora na adresu oznaenog odredita.
Za manipulisanje podacima kod ovih PLC-ova, tipian ladder program sadri instrukcije za
rad sa podacima, izvornu adresu (S) sa koje se uzimaju podaci i odrdinu adresu (D) na koju
se pomeraju. Ovakav pristup korien od strane nekih proizvoaa, npr. Siemens, se odnosi na
pomeranje podataka kao dve odvojene naredbe, uitavajui podatak iz izvora u akumulatoru i
onda prenose podatke iz akumulatora na odredite. Slika 2.4.2(c) prikazuje Siemens znak za
MOVE funkciju. Podatak se pomera iz IN ulaza na OUT izlaz kada je EN odobren.

Slika 2.4.2 Pomeranje podataka: (a) Mitsubishi, (b) Allen-Bradley (c) Siemens
Premetanje podataka moe biti prenoenje zadate vrednosti u tajmeru ili brojau, ili
memorisanje vrednosti tajmera ili brojaa u neki registar, ili podaci iz ulaza u registar ili iz
registra na izlaz. Slika 2.4.3 prikazuje preagu, u Allen-Bradley formatu, koji moe biti
korien da prenese broj zadran na adresi N7:0 u zadati tajmer T4:6 kada su uslovi na ulazu

49
te preage ispunjeni. Prenos podataka iz akumulirane vrednosti u brojau na registar imae
adresu izvora oblika C5:18.ACC i adresu odredita u obliku N7:0. Prenos podataka sa ulaza
na registar moe imati izvornu adresu oblika I:012 i odredinu adresu oblika N7:0. Prenos
podataka iz registra na izlaz moe imati izvornu adresu oblika N7:0 i odredinu adresu oblika
O:030.

Slika 2.4.3 Pomeranje broja na zadati tajmer

2.4.2.2 Poreenje podataka

Naredbe poreenja podataka omoguuju da se uporede dve vrednosti podataka u PLC-


u. Stoga on moe porediti digitalnu vrednost proitanu iz nekog ulaznog ureaja sa drugom
vrednou sadranu u registru. Na primer, moda elimo da neki posao bude pokrenut kada sa
senzora temperature dobijemo digitalnu vrednost koja je manja od podeene vrednosti
sauvane u registru podatka u PLC-u. PLC-ovi, generalno, mogu uporeivati za manje od (<
ili LD ili LES), jednako (= ili = = ili EQ ili RQU), manje ili jednako od ( ili <= ili LE ili
LEQ), vee od (> ili GT ili GRT), vee ili jednako od ( ili >= ili GE ili GEQ) i nije jednako
( ili <> ili NE ili NEQ). Zagrade oko svakog termina oznaavaju uobiajeno izraavanje koji
se koristi u programiranju. Kao ilustracija, strukturni tekst bi izgledao:
(*Provera da je pritisak bojlera P2 manji od pritiska P1*)
Izlaz:- P2<P1;

Kod ladder programa, za poreenje podataka tipina naredba e sadrati naredbu


prenosa podataka, adresu izvora (S) odakle je podatak pristigao za poreenje i adresu
odredita (D) podataka sa kojim se vri poreenje. Naredbe obino koriene za uporeivanje
su termini prikazani u gornjeim zagradama. Slika 2.4.4 prikazuje tipove oblika koriene od
strane dva proizvoaa koristei oblik poreenja vee od. Slini oblici se koriste za druge
oblike poreenja. Na slici 2.4.4(a) je oblik poreenja koji koristi Mitsubishi, S oznaava izvor
vrednosti podataka za poreenje i D odredite ili vrednost sa kojom se poreenje treba uraditi.
Stoga ako je vrednost izvora vea od vrednosti odredita, izlaz je 1. Na slici 2.4.4(b) koristi se
Allen-Bradley oblik. Ovde izvor podataka biva poreen ako je dat kao akumulirana vrednost u
tajmeru 4.0 i podatak sa kojim on biva poreen je broj 400. Slika 2.4.4(c) prikazuje Siemens
oblik. Vrednosti koje e biti poreene su na ulazima In 1 i In 2 a rezultat poreenja je na
izlazu i biva 1 ako je poreenje uspeno u protivnom je 0. R se koristi da oznai realne
brojeve, tj. brojeve sa pokretnom takom, I se koristi za celobrojne, tj. brojeve sa fiksnom
takom koji sadre 16 bitova, i D za brojeve sa fiksnom takom koji sadre 32 bita. Oba ulaza
trebaju biti istog tipa podataka, npr. REAL.

50
Slika 2.4.4 Poreenje vee od: (a) Mitsubishi, (b) Allen-Bradley, (c) Siemens

Kao ilustracija korienja takvog poreenja, razmotrimo zadatak sviranja alarma ako
senzor prikae da se temperatura podigla preko neke vrednosti, recimo 100 oC. Alarm se
oglaava za vreme dok temperatura ne padne ispod 90oC. Slika 2.4.5 prikazuje ladder
dijagram koji se moe koristiti. Kada podizanje temperature postane jednako ili vee od
100oC, onda element poreenja vee od daje 1 na izlazu i tako podeava unutranji rele. Tada
postoji izlaz. Ovaj izlaz baferuje element poreenja vee od i tako izalz postaje aktivan, ak i
kada temperatura padne ispod 100oC. Izlaz se ne iskljuuje sve dok na izlazu ne bude manje
od 90oC i dok se ne resetuje unutranji rele.

Slika 2.4.5 Program za alarm

Drugi primer korienja poreenja je kada je, recimo, potrebno da etiri izlaza u nizu
budu startovana, tj. izlaz 1 startuje kada je poetni prekida zatvoren, praen neko vreme
kasnije izlazom 2, neko vreme kasnije izlazom 3 i neko vreme kasnije izlazom 4. Mada ovo
moe biti uraeno korienjem tri tajmera, druga mogunost je korienje jednog tajmera sa
elementima vei od ili jednako. Slika 2.4.6 prikazuje mogui ladder dijagram.

Slika 2.4.6 Sekvencijalno ukljuivanje

51
Kada se kontakti X401 zatvore, izlaz Y430 startuje . Takoe i tajmer startuje. Kada
akumulirana vrednost tajmera pree 5 s onda element vee od ili jednako ukljuuje Y431.
Kada akumulirna vrednost tajmera pree 15 s onda element vee od ili jednako ukljuuje
Y433. Kada tajmer dostigne 25 s onda njegovi kontakti ukljuuju Y433.

2.4.3 Aritmetike funkcije

Veina PLC-ova obezbeuje BCD u binarnu i binarnu u BCD konverziju za korienje kada
ulaz tasterski prekida sa vraanjem ili izlaz na decimalni displej. Slika 2.4.7(a) prikazuje
tipian oblik naredbi za korienje u takvim situacijama, a slika 2.4.7(b) oblika korien od
strane Siemens.

Slika 2.4.7 Konverzije: (a) BCD u binarnu i binarna u BCD, (b) BCD u celobrojnu i
celobrojna u BCD

2.4.3.1 Aritmetike operacije

Neki PLC-ovi su opremljeni za izvravanje samo aritmetikih operacija sabiranja i


oduzimanja, drugi za etiri osnovne aritmetike operacije sabiranja, oduzimanja, mnoenja i
deljenja, dok ostali mogu ostvariti ove i niz drugih funkcija kao to je eksponencijalna.
Operacije sabiranja i oduzimanja se koriste da izmene vrednost podataka zadranih u
registrima. Na primer, ovo moe biti upravo podeavanje oitavanja ulaza ili moda dobijanje
vrednosti oduzimanjem vrednosti dva senzora ili promena zadatih vrednosti korienih od
strane tajmera i brojaa. Mnoenje moe biti korieno da umnoi neki ulaz pre moda
njegovog sabiranja ili oduzimanja od drugog.
Naini na koje su PLC-ovi programirani da izvre takve operacije variraju. Allen-
Bradley u nekom od svojih PLC-ova koristi naredbu izraunavanja (CPT). Ovo je izlazna
naredba koja izvrava definisane operacije i onda upisuje rezultate u naznaenim odredinim
mestima. Slika 2.4.8 prikazuje format naredbe. Kada je naredba izraunavanja na ekranu
programiranja, odredite se prvo unosi, a zatim izraz. Stoga moemo imati odredite
T4:1.ACC i izraz (N7:1 + N10:1)*3.5. Znak * se koristi za mnoenje. Izraz znai da se
vrednosti N7:1 dodaje vrednost N10:1. Ovaj zbir se onda mnoi sa 3.5. Rezultat se onda alje
na odredite koje je akumulisana vrednost u tajmeru 4.1.

Slika 2.4.8 Allen-Bradley format

52
Slika 2.4.9 prikazuje osnovni oblik Siemens naredbi za aritmetike funkcije. Kod
celobrojnih funkcija koriste se ADD_1 za sabiranje, SUB_1 za oduzimanje, MUL_1 za
mnoenje i DIV_1 za deljenje sa kolinikom kao rezultatom. Aritmetike funkcije se
izvravaju ako imamo 1 na ulazu UN.

Slika 2.4.9 Siemens oblik

2.4.4 Zatvorena upravljaka petlja

Moe se kontrolisati temperatura sobe ukljuujui elektrinu grejalicu. Grejalica e zagrejati


sobu do maksimalne temperature koja je mogui rezultat razlike brzine kojom grejalica greje
sobu i brzine kojom soba gubi toplotu. Ovo se oznaava kao otvorena upravljaka petlja u
kojoj ne postoji povratna veza ka grejalici koja bi modifikovala brzinu kojom se greje soba.
Da bi uradili ovo potreban nam je termostat koji moe biti podeen da ukljui grejalicu kada
je temperatura sobe ispod zahtevane vrednosti i iskljuuje je kada pree iznad. Postoji
povratna veza informacije o temperaturi u ovom sistemu i kao to je to nazvano zatvorena
upravljaka petlja.
Zatvorena upravljaka petlja neke promenljive, npr. kontrola temperature u sobi, je
postignuta uporeivanjem stvarne vrednosti za promenljive sa podeenom eljenom
vrednou i onda dajui izlaz, kao to je ukljuivanje grejaa, da smanji razliku. Slika 2.4.10
ilustruje ovo pomou blok dijagrama. Stvarna vrednost promenljive se poredi sa podeenom
vrednou i dobijeni signal predstavlja razliku ili greku. Kontroler onda uzima ovaj signal
razlike i daje izlaz na aktuatoru da da odgovor za korekciju neusaglaenosti. Takav sistem se
naziva zatvorena upravljaka petlja.

Slika 2.4.10 Zatvorena upravljaka petlja

Slika 2.4.11 prikazuje raspored koji moe biti korien kod PLC-ova koristei za
vebanje zatvorene upravljake petlje. Pretpostavlja se da su aktuator i merena vrednost
analogni i stoga zahtevaju prevoenje u digitalni; stoga su prikazane jedinice analogni u
digitalni i digitalni u analogni konverzija.

53
Slika 2.4.11 PLC za Zatvorenu upravljaku petlju

2.4.4.1 Naini kontrole

Kod proporcionalne kontrole, kontroler daje izlaz na aktuatoru koji je proporcionalan razlici
izmeu stvarne vrednosti i podeene vrednosti promenljive, tj. greke (slika 2.4.12(a)). Takav
oblik kontrole moe biti dat od strane PLC-a sa osnovnom aritmetikom. Podeena vrednost i
stvarna vrednost su najee analogni i stoga se konvertuju u digitalni a zatim stvarna
vrednost se oduzima od podeene vrednosti i razlika se mnoi nekom konstantom,
proporcionalna konstanta Kp, da da izlaz, koji posle prevoenja u analogni je korekcioni
signal koji se dovodi na aktuator:
Izlaz kontrolera = Kp x greka

Slika 2.4.12 Kontrole: (a) proporcionalna, (b) integralna, (c) izvedena

Proporcionalna kontrola ima nedostatak zbog inherentnih vremenskih kanjenja u


sistemu, korekcioni signal koji se dovodi na aktuator uzrokuje oscilovanje promenljive oko
podeene vrednosti. Ono to je potrebno je korekcioni signal koji je smanjen kada se
promenljiva pribliava podeenoj vrednosti. Ovo je postignuto PID kontrolom, kontroler
dajui signal korekcije koji je izraunat od proporcionalnog elementa, izraz P, element koji se
odnosi na prethodnu vrednost promenljive, integral I, i element koji se odnosi na brzinu
promene promenljive, izvod D. Kod integralne kontrole izlaz kontrolera ja proporcionalan
integralu greke sa vremenom, tj. povrina ispod grafika greke (slika 2.4.12 (b)).
Izlaz kontrolera = K1 x integral funkcije greke
Kod izvedene kontrole izlaz kontrolera je proporcionalan brzini promene greke, tj.
nagiba funkcije greke (slika 2.4.12(c)):
Izlaz kontrolera = KD x procena promene greke
Izraz tuning se koristi za odreivanje optimalne vrednosti za KP, K1 i KD da bude
korien za pojedinanu kontrolu sistema. Vrednost KD/KP se naziva izvedeno vreme TD,
vrednost KP/K1 vreme integraljenja TI i postoje termini Kp, TD i TI koji su uopteno
specificirani.

54
2.4.4.2 PID kontrola kod PLC-a

Mnogi PLC-ovi obezbeuju PID izraunavanje da bi odredili izlaz kontrolera kao standardnu
rutinu. Sve ovo je onda neophodno za prenos eljenih parametara, tj. vrednosti KP, K1 i KD i
mesta ulaz/izlaz u rutinu preko PLC programa. Slika 2.4.13 prikazuje IEC 1131-3 standardni
znak za funkciju PID kontrole. Kada je AUTO podeen funkcijski blokovi raunaju izlaznu
vrednost XOUT potrebnu da dovedu promenljivu blie zahtevanoj podeenoj vrednosti.

Slika 2.4.13 IEC 1131-3 standardni znak

55
3 MIKROKONTROLER AT89S8253

3.1 Karakteristike mikrokontrolera AT89S8253

Kompatibilan je sa Microsoft-51 procesorom


12KB fle memorija
2KB EEPROM memorija
64-bajtna korisnika matrica
Napon napajanja od 2.7V do 5.5 V
Frekvencija od 0 do 24 MHz
Memorijsko zakljuavanje u 3 nivoa
256 x 8-bitni unutranji RAM
32 I/O linije za programiranje
Tri 16-bitna Tajmera/Brojaa
9 generatora prekida
Poboljani UART serijski port sa centriranjem detekcije greke i automatskim
prepoznavanjem adrese
Poboljani SPI serijski interfejs
Male snage napajanja
Uspostavljanje prekida u niskom reimu rada
Programabilni tajmeri
Dvostruki pokaziva podataka
Iskljuivanje pomou znaka (Power-off Flag)
Fleksibilni ISP programator (Page mode: 64 byte/page za kodnu memoriju, 32
byte/page za memoriju podataka)
4-nivo poboljani kontrolor prekida
Programabilna x2 clock opcije
Unutranji Power-on Reset
42-pin PDIP model kuita za redukovanje EMS emisije
Zelena (Pb/Holide-free) opcija kuita

3.2 Opis mikrokontrolera AT89S8253

AT89S8253 je CMOS 8-bitni mikrokontroler visokih performansi, male potronje


snage, sa 12 KB fle memorijom I 2 KB EEPROM memorijom. Ureaj je napravljen
korienjem Atmelovu tehnologiju postojane memorije velike gustine I kompatibilan je se
industrijskim standardom MCS-51. Reprogramiranje memorije je mogue pomou SPI
serijskog ulaza ili pomou konvencionalnog programatora memorija. Kombinovanjem
razliitih 8-bitnih CPU-a sa ugraenom programibilnom fle memorijom na monolitnom ipu,
ATMEL AT89S8253 je snaan mikrokontroler koji obezbeuje visoku fleksibilnost i sa
niskom cenom je naao veliku primenu kod mnogih kontrolnih aplikacija.
AT89S8253 ukljuuje standardne osobine poput 12 KB fle memorije, 2 KB
EEPROM, 256 B RAM memorije, 32 I/O linije, programibilni clock/tajmer, dvostruki
pokaziva, tri 16 bit-na clock/counter, 6 vektorske arhitekture prekida sa 2 nivoa, potpuni
serijski ulaz, eksterni sopstveni oscilator I elektrino kolo sata. U stvari AT89S8253, uz
pomo statike logike, se koristi za operacije niskih frekvencija, potpomognut sa 2
softverska moda. IDLE mod zaustavlja CPU dok doputajui RAM, clock/counter, serijski
port I sistem prekida se koriste za nastavak funkcionisanja. Niski mod uva RAM sadraj ali I
zamrzava oscilator iskljuujui sve ostale funkcije u kolu sve dok naide sledei spoljanji
prekid ili hardverski reset.

56
FLASH memorija se moze menjati pomou serijskog SPI pristupa. Zadravanje Reset
opcije SPI omoguava da memorija bude upisana ili proitana od stane bita koji su bili
aktivni.

3.3 Konfiguracija i opis pinova

Slika 3.3.1 40P6-40-lead PDIP

Port 1 (od 1 do 8)
Ovaj port je 8-bitni dvosmerni ulazno-izlazni port sa neprekidnim unutranjim
napajanjem. Izlazne posebne memorijske lokacije PORT1 mogu pobuditi 4 TTL
logicka kola. Kada je 1 s upisana na port 1 pinovi su na visokom nivou uz pomo
unutranjeg neprekidnog napajanja i mogu se koristiti kao ulazi. Poetna ulazna
struja je Iul=150A zbog unutranjeg neprekidnog napajanja. Neki PORT 1 pinovi
mogu imati i druge dodatne funkcije P.1.0 i P.1.1 mogu sluiti kao 2 spoljanja
TIMER/COUNTER ulaza (P 1.0/T2) i 2. aktivni ulaz (P 1.1/T2 EX)
CLOCK/COUNTER respektivno. Osim toga P 1.4, P 1.5, P 1.6, P 1.7 mogu sluiti za
pomone portove. DATA INPUT/OUTPUT i CLOCK INPUT/OUTPUT pinovi su
prikazani u tabeli:

Pin porta Razne funkcije


P1.0 T2 (spoljni brojaki ulaz do tajmera/brojaa 2), izlaz takta
P1.1 T2EX (triger hvatanja/punjenja tajmera/brojaa 2 i kontrola smera)
P1.5 MOSI (koriste se za programiranje u sistemu)
P1.6 MISO (koriste se za programiranje u sistemu)
P1.7 SCK (koriste se za programiranje u sistemu)

57
Reset 9
Visok logiki nivo na ovom ulazu resetuje sve interne registre (registre dovodi u
stanje 00000000), sa sledeim izuzecima: - P0, P1, P2 i P3 (izlazni registri svih spoljnih
portova) se dovode u stanje 11111111
- SBUF se ne menja
- SP se dovodi u stanje 00000111 (07h)
- Neki bitovi u registrima IP, IE i PCON fiziki ne postoje, pa tako ne mogu ni
da se resetuju

Port 3 (od 10 do 17)


Ovo je 8 bit-ni dvosmerni I/O port sa neprekidnim unutranjim napajanjem. PORT 3
pomone memorije mogu pobuditi 6 TTL ulaza. Kada se upisuju podaci na PORT3 ovaj
PORT dosta energije vue od unutranjeg neprekidnog napajanja i tada se mogu koristiti
ulazi. Kod ovih ulaza uz pomo spoljanjeg napajanja struja je tipino 150 A zbog slabog
unutranjeg napajanja. PORT 3 takoe prihvata i pojedine kontrolne signale za
programiranje FLASH memorije. PORT3 takoe predstavlja i servis specijalnih
promenljivih osobina AT89S 8253 koji su prikazani u tabeli.
Ako se koristi kao univerzalni ulaz ili izlaz, po svemu je slian portu 1, ali na svakoj
noici ima jo po neku specijalnu funkciju:
Pin porta Razne funkcije
P3.0 RXD (serijski ulaz za asinhronu komunikaciju (mod 1, 2 i 3) ili
serijski izlaz za sinhronu komunikaciju (mod 0))
P3.1 TXD (serijski izlaz za asinhronu komunikaciju (mod 1, 2 i 3) ili taktni
(clock) izlaz sa sinhronu komunikaciju (mod 0))
P3.2 INT0 (ulaz za prekid (interapt) 0)
P3.3 INT1 (ulaz za prekid (interapt) 1)
P3.4 T0 (spoljnji ulaz tajmera 0)
P3.5 T1 (spoljnji ulaz tajmera 1)
P3.6 WR (signal za upis u spoljnu memoriju)
P3.7 RD (signal za itanje iz spoljne memorije)

Pinovi 18 i 19
Izlaz i ulaz internog oscilatora. Ako se koristi kvarc-kristal za stabilizaciju
uestanosti oscilatora (to je najei sluaj), on se vezuje za ove dve noice, s tim to na
svaku noicu (prema masi) treba dodati po jedan kondenzator od 20-40pF. Ovo je
potrebno da bi se spreilo oscilovanje na nekom viem harmoniku. Opseg uestanosti je
od 1 do 12 MHz, a izrauju se i mikrokontroleri koji rade i na znatno viim
frekvencijama.

Pin 20 Masa

Port 2 (od 21 do 28) ili adrese (A8 A15)


Port 2 je 8 bit-ni dvosmerni I/O port sa unutranjim neprestanim napajanjem.
Izlazne pomone memorije PORT-a 2 mogu prihvatiti/napajati 6 TTL ulaza. Kada je 1 s na
ulazu porta 2 on je na visokom nivou uz pomo neprekidnog unutranjeg napajanja i mogu
se koristiti kao ulazi. Kod ovih ulaza tipina ulazna stuja je 150 A zbog slabog unutranjeg
neprekidnog napajanja. PORT 2 emituje adrese visokih naredbi u toku donoenja podataka
od spoljanje memorije i u toku prihvatanja podataka iz spoljanje memorije koje koriste 16-
bitne adrese (MOVX i DPTR). U ovom slucaju PORT2 kada emituje 1 s koristi jako
unutranje napajanje. U toku prihvatanja podataka iz spoljanje memorije tada PORT 2
korist 8bit-ne adrese (MOVX i RI). PORT2 takoe ima i specijalne funkcije registra.
PORT 2 takoe prihvata adresne bitove visokog zahteva i neke kontrolne signale u toku
programiranja i potvrde FLASH memorije.

58
Ako se koristi mikrokontroler sa internim ROM-om i nema spoljnjeg ROM-a ili
RAM-a, mogu se koristiti sve linije ovog porta kao univerzalni ulazi ili izlazi. Ako se koristi
spoljna memorija, onda su ovo visoki adresni izlazi, od A8 do Al5. U tom sluaju, ak i ako se
koriste samo neke adrese, preostale noice ovog porta ne mogu da se koriste kao ulazi ili
izlazi.
NAPOMENA: Svi pinovi u PORT 1 i PORT 2 kao i pinovi PORT 3 (izuzev P32
INTO 1 P 3.3 INT 1) imaju sopstveno nepekidno napajanje koje je nedostupno u POWER-
DOWN modu. Pinovi P 3. 2 (INTO) i P 3.3 (INT 1) su aktivni podjednako i u POWER -
DOWN modu (da bi mogli da potrazuju prekide za izlaz iz POWER-DOWN modu) uz stalno
ukljueno unutranje napajanje.

Pin 29 PSEN {Program Store Enable (aktiviranje spoljanjeg ROM-a)}


Omoguuje uvanje programa. PSEN ita strobe za programiranje spoljanje
memorije. Kada AT89S8253 izgubi kod od izlazne memorije programa, PSEN je aktivan
dvostruko u toku svakog ciklusa maine izuzev 2PSEN u toku svakog prihvatanja
podataka od spoljanje memorije.
Normalno se ovaj izlaz spaja sa CS ili OE ulazom na spoljnom EPROM-u, jer ga
mikrokontroler aktivira (dovodi na nizak nivo) svaki put kad ita bajt iz programske
memorije (za kontrolu spoljanjeg RAM-a se koriste druge noice).

Pin 30 - ALE/PROG: Address Latch Enable (Upis u adresni registar)


Omoguuje blokiranje podataka. ALE/PROG je ustvari izlaz koji blokira niske bajt
adrese u toku prihvatanja spoljanje memorije. Ovaj pin je takoe ulazni impuls programa u
(PROG) u toku programiranja FLASH-a. U normalnom radu ALE traje 1/6 frekvencije
oscilovanja i moe biti upotrebljen za spoljanji counter i clock. Vano je meutim da je
ALE impuls preskoen u toku svakog prihvatanja podataka iz spoljanje memorije. ALE
operacija moe biti onemoguena postavljanjem bita 0 AUX R SFR na lokaciju 8EH. Sa
umetanjem bita, ALE je aktivan samo u toku MOVX ili MOVC instrukcije. Postavljanjem
ALE disable, bit nema efekta na mikrokontroler u spoljanjem izvrnom modu.
Da bi se sve funkcije spakovale u standardno kuite od samo 40 noica,
pribegnuto je multipleksiranju nekih signala. Tako je port P0 dobio dve funkcije, izlazne
adrese A0-A7 i ulaz/izlaz podataka D0-D7. Pre svakog oitavanja programa iz spoljne
memorije ili prozivanja RAM-a mikrokontroler na P0 prosleuje nii bajt adresnog
registra i aktivira izlaz ALE. Spoljni registar na visok nivo ALE memorie stanje P0, a izlazi
ovog registra se koriste kao A0-A7. U drugom delu mainskog ciklusa mikrokontrolera
P0 se koristi kao magistrala podataka (Data Bus).

Pin 31 - EA: External Access (Spoljni pristup)


Ako je ovaj ulaz nizak, mikrokontroler e sve instrukcije itati iz spoljnog ROM-a.

Port 0 (od 32 do 39) ili adrese (A0 do A7)


Slino portu P2, i port P0 moe da se koristi kao univerzalni ulaz i izlaz samo ako se ne
koristi spoljna memorija Ako se koristi, tada je P0 adresni izlaz za A0-A7 kad je ALE visok,
a magistrala podataka (Data Bus) kada je ALE nizak.

Pin 40 VCC Napajanje +5V

59
3.4 Blok dijagram

Na slici 3.4.1 prikazan je blok dijagram mikrokontrolera AT89S8253. Ovde se vide


komponente kao to su aritmetiko-logika jedinica (ALU) sa parom registara (TMP1,
TMP2) za privremeno upisivanje podataka, akumulator (ACC) sa pomonim registrom B,
statusni registar (PSW), registar naredbi sa dekoderom, programski broja (PC) i registar za
inkrementiranje (poveanje za 1) programskog brojaa (PC-incrementer).

Slika 3.4.1 Blok dijagram mikrokontrolera AT89S8253

Pomoni registar B, koji se naziva multiplikativnim registrom, s1ui za smetanje


drugog operanda za aritmetike operacije mnoenja i deljenja Posle izvrene operacije
mnoenja iii deljenja u njemu se nalazi vii bajt rezultata mnoenja ili ostatak deljenja,
respektivno Zajedno sa ACC pomoni registar B ini registarski par. Pokaziva steka (SP-
Stack Pointer) s1ui za adresiranje vrha (najvie lokacije) stek memorije Ovaj registar se
inkrementira prilikom upisivanja podataka u stek a dekrementira prilikom itanja
podataka iz ove memorije.
DPTR praktino sadri dva registra: DPH(Data pointer High) i DPL(Data pointer
Low). Njegov zadatak je da dri 16-bitnu adresu. Moe biti iskorien kao 16-bitni registar
i kao dva nezavisna 8-bitna registra. Obino se koristi za privremeno pamenje podataka.

60
Mikrokontroler AT89S53 poseduje 4 prihvatna registra (LATCH-a) za uvanje stanja
izlaza na portovima P0, P1, P2 i P3 .
Serial data bufer (SBUF) s1ui za upis podatka koji se a1je i itanje podatka koji se
prima preko serijske veze.
Registarski parovi (TH0,TL0), (TH1,TL1) i (TH2,TL2) su 16-bitni brojaki registri za
broja 0,1 i 2 respektivno.
Registarski par (RCAP2H,RCAP2L) su capture registri za Timer 2 capture-mode. U
ovom modu u odzivu transmisije AT89S52 T2EX pinu, TH2 i TL2 su kopirani u RCAP2H
i RCAP2L. Timer 2 takoe ima 16-bitni auto-reload mode i RCAP2H i RCAP2L
zadravaju reloadveliinu za ovaj mod.
Za kontrolu i upisivanje statusa prilikom prekida za tajmere, brojae i za serijski prenos
podataka koriste se registri specijalne namene IP, IE, TMOD, TCON, T2CON, T2MOD,
SCON i PCON.

3.5 Tajmeri/brojai

Mikrokonroler AT89S53 sadri tri tajmersko-brojaka registra. Prva dva


zajednika su za sve modele iz familije 8051, dok je trei dodat modelima 8052.
Oznaavaju se kao tajmeri 0,1 i 2. Sva tri registra se mogu konfigurisati da rade i kao tajmeri
i kao brojai. U projektnom zadatku korien je tajmer 2, vie informacija o tajmerima 0 i 1
moe se nai na zvaninom internet sajtu Atmel-a (www.atmel.com).
Kao to je ranije reeno, u projekrnom zadatku korien je tajmer 2. Tajmer 2 je 16-
bitni Tajmer/Broja koji moe podjednako da radi i kao tajmer i kao broja. Ovo se
odreduje selekcijom bita CP/T2 u registru specijalne namene T2CON. Tajmer/Broja
registar dat je na sl. 3.5.1. Tajmer 2 se razlikuje od prethodna dva tajmera jer ovaj tajmer
ima dva 8-bitna registra. TH2 i TL2 su vezana serijski i formiraju 16-bitni brojaki registar.
Druga dva, RCAP2H i RCAP2L takoe su vezana serijski, i njihova glavna uloga zahvat
"capture " sadraja brojakog registra.

61
Slika 3.5.1 Tajmer/Broja registar

Glavna prednost ove organizacije ogleda se u jednostavnoj zameni mesta


podataka jednostavno instrukcijom i ne zahteva dodatne programske akrobacije. Takoe i ovaj
tajmer ima nekoliko razliitih modova rada. Tajmer 2 se kontrolie registrom T2CON
(Slika 3.5.2), a u tabeli 3.5.1 objanjen je svaki njegov bit.

Slika 3.5.2 T2CON-Tajmer/Broja kontrolni registar

Simbol Funkcija
TF2 Indikator stanja prekoraenja tajmera 2 i on se automatski aktivira kada
broja detektuje prekoraenje. Da bi registar mogao da detektuje naredno
prekoraenje, ovaj bit se mora izbrisati softverski. Ako su aktivirani bitovi
RCLK=1 ili TCLK=1, prekoraenje nema efekta na TF2
EXF2 Ovaj bit se automatski aktivira kada se desi transfer iz brojaa u bafer ili
obrnuto. Ako je aktiviran, on generie prekid, ukoliko nije postavlja se bit
DCEN u T2MOD-u. EXF2 se brie softverski.
RCLK Prihvatni okidni impuls. Kada je na jedinici koristi impulse prekoraenja
Tajmera 2, a kada je na nuli impulse prekoraenja Tajmera 1.
TCLK Prenosni okidni impuls. Takoe kada je na jedinici serijski port koristi
impulse prekoraenja Tajmera 2 a kaka je na nuli impulse prekoraenja
Tajmera 1.
EXEN2 Spoljanje aktiviranje tajmera 2. Kada je EXEN2=1 vri se reloadovanje
Tajmera 2 koje moe bit ili izazvano opadajuom ivicom na spoljnjem ulazu
T2EX. Kada je EXEN2=0 Tajmer 2 ignorie dogaaje na T2EX.
TR2 Kontrola start-1/stop-0 za Tajmer 2. Logoka jedinica staruje rad tajmera.
C/T2 Selekcija tajmera ili brojaa. C/T2 = 0 interni broja (osc/12), C/T2 = 1
eksterni broja dogaaja (okidanje zadnjom ivicom).
CP/RL2 Selekcija stanja Capture/Reload. CP/RL2 = 1 javlja se captures stanje pri
negativnom prenosu T2EX ako je EXEN2=1. Kada je CP/RL2 = 0 javlja se
auto-reload stanje, bez obzira na prekoraenje Tajmera 2 ili negativnom
prenosu na T2EX kada EXEN2=1. Kada je bilo koji RCLK=1 ili TCLK=1,
ovi bitovi su onemogueni i Tajmer 2 je prinuen da auto-reload-uje
prekoraenje na Taj meru 2.
Tabela 3.5.1

62
Tajmer 2 ima tri operativna moda: capture, auto-reload i generator brzine bauda
koji su selektovani bitovima u T2CON registru a prikazani su na sl.3.5.3.

RCLK+TCLK CP/RL2 TR2 MODE


0 0 1 16-bit Auto-reload
0 1 1 16-bit Capture
1 X 1 Baud Rate Generator
X X 0 (Off)
Slika 3.5.3 Operativni modovi tajmera 2

Tajmer 2 kao izvor taktovanja moe da koristi sistemski clock, sistemski clock
podeljen sa 12 i opadajuu ivicu na spoljnem ulazu (T2 pin).
U tkzv. capture modu (modu 0) negativna ivica na spoljnjem ulaznom pinu T2EX
izaziva prepisivanje trenutne vrednosti tajmera 2 (TH2 i TL2) u registre RCAP2H i
RCAP2L. Ovaj mod je jako koristan kod aplikacija u kojima je potrebno meriti
vremenske intervale do pojave nekog dogadaja. 16-bitni registri (TH2+TL2) dre broj od koga
poinje da se broji. Postavljanjem bita TR2 na jedinici u registru TCON startuje se tajmer,
svaki dolazei impuls poveava vrednost za jedan. Kada se oba registra napune, impulsi
prouzokuju prekoraenje (decimalna vrednost 65536), tada se resetuju i poinju da broje od
nule.
U modu auto-reload (Up or Down Counter) - (mod 1) Tajmer 2 se moe
isprogramirati da radi kao up/down broja ukoliko je konfugurisan u auto-reload reimu. Ovo
mogunost je prozvana DCEN (Down Counter Enable) a ovaj bit se nalazi u specijalnom
registru T2MOD. Kada je aktiviran bit DCEN, Tajmer 2 broji gore ili dole zavisno od
vrednosti T2EX pina. Kada tajmer odbroji, postavlja se odgovarajui marker, tajmer se
reload-uje tako to se u njegove registre prepisuje vrednost iz registara RCAP2H i
RCAP2L i automatski restartuje.
U modu 2, tajmer dva odreduje brzinu serijskog prenosa podataka preko UART-a, jer
on odreuje stopu prenosa (baud rate). Naime, Tajmer 2 u ovom modu radi isto kao i u modu
auto-reload, stim to po odbrojavanju se ne postavlja fleg niti se generie zahtev za prekid,
ve taj dogaaj slui kao takt za seriski prenos (i za slanje i za prijem nezavisno). U ovom
modu opadajua ivica na spoljnjem ulazu T2EX nema nikakvog uticaja na serijski prenos,
ve taj pin moe biti iskorien kao izvor zahteva za dodatni spoljni prekid.
Detaljniji opis tajmera 2 kao i mikrokontrolera AT89S8253 moe se nai na
zvaninom internet sajtu Atmel-a (www.atmel.com), kao i na datashit-u (AT89S8253.pdf)
priloenom na CD-u.

63
4 Hardverska realizacija
Za realizaciju hardvera u ovom projektnom zadatku koriena je ranije realizovana
ploca (PCB ploa) na kojoj je smeten mikrokontroler i veina elemenata, kao i raster ploa sa
prekidaima i diodama koje slue za vizuelnu demonstraciju projekta. Blok ema elemenata
smetenih na PCB ploi data je na slici 4.1, dok su layout gornje i donje strane PCB ploe dati
na slikama 4.2 i 4.3 respektivno.

Slika 4.1 Blok ema elemenata smetenih na PCB ploi

64
Slika 4.2 Layout gornje strane PCB-a

65
Slika 4.3 Layout donje strane PCB-a

66
Blok ema elemenata smetenih na raster ploi data je na slici 4.4.

Slika 4.4 Blok ema elemenata smetenih na raster ploi

67
Spisak komponenti korienih za realizaciju ovog projekta dati su u tabeli 4.1.

Naziv komponente Koliina

1. C AT89S8253 1

2. Podnoje 40-to pinsko DIP 1

3. Oktalni bafer 74HC373 1

4. Podnoje 20-to pinsko DIP 1

5. Kristal-oscilator f=11.0592 MHz 1

6. Linearni naponski regulator 7805 1

7. Gratz-ov spoj 1

8. Mreni trafo 220/12 1

9. Keramiki kondenzator 22pF 2

10. Keramiki kondenzator 100nF 4

11. Elektrolitski kondenzator 2.2F 1

12. Elektrolitski kondenzator 10F 1

13. Elektrolitski kondenzator 47F 1

14. Otpornik 10k 8

15. Otpornik 33 8

16. Otpornik 4.7k 2

17. LED dioda zelena 8

18. LED dioda crvena 1

19. Push button dvopinski 1

20. Push button etvoropinski 8

21. Switch-er (4 kontakta) 1

22. Click-clack prekida 1

23. Hladnjak za lin. nap. generator 7805 1

Tabela 4.1 Spisak korienih komponenti

68
Napajanje mikrokontrolera je ostvareno klasinom procedurom i komponentama kao i
kod drugih kontrolera. Naizmenini napon napajanja iz mreze 220V se preko transformatora
tansformie na 9V pa zatim ispravlja preko greca i kondenzatora. Posle toga se signal vodi
na stabilizator napona realizovan kao IC LM 7805 i takav signal se vodi na procesor i ostale
digitalne periferne uredjaje i slui kao napajanje konstantnom vrednou napona. Elektrina
ema izvora napajanja je data na sledeoj slici:

Slika4.5 ema napajanja

Izgled realizovanog hardvera prikazan je na slici 4.5.

Slika 4.5 Izgled realizovanog hardvera

69
5 Softverska realizacija

5.1 Korienje programa Keil uVision 3

Program za realizaciju projektnog zadatka je napisan u Keil uVision 3 IDE-u. Klikom


na ikonicu ovg programa koja se nalazi na desktopu otvara se prozor prikazan na slici 5.1.

Slika 5.1 Pokretanje programa Keil uVision 3

Definisanje novog projekta obavlja se na sledei nain: levim klikom mia na padajui
meni Project biramo NewuVision Project koji posle unoenja imena snimamo u odreeni
folder na raunaru. Ovaj postupak je prikazan na slici 5.2.

Slika 5.2
70
Nakon snimanja otvara se prozor Select Device for Target u kome biramo Atmel a
zatim AT89S8253 i onda Ok. Ovaj postupak je prikazan na slici 5.3. Posle ovoga otvara se
prozor Copy Standard 8051 Code to Project Folder and Add File to Project gde izabiramo
No.

Slika 5.3

Poslednji korak je kreiranje Text editora to se postie na sledei nain: levi klik mia
na padajui meni File odakle biramo New posle ega se otvara Text editor (Text 1), koji zatim
snimamo odabirom Save as iz padajueg menija File. Snimanje se vri tako to za programe
koji se piu u C51 jeziku posle imena stavljamo ekstenziju .c, dok za programe pisane u A51
jeziku stavljamo ekstenziju .src. Slika 5.4 prikazuje izgled otvorenog Text editora.

Slika 5.4
71
Kada zavrimo sa pisanjem dela programa, pointer mia postavimo na Source Group
1, zatim biramo Add Files to Group Source Group 1, klikom na njega dodajemo dati fajl. Na
isti nain kreiramo sve fajlove potrebne za projektni zadatak.
Nakon pisanja programa i uspenog testiranja, ikonicom Rebuild all target files kreira
se hex fajl koji je prethodno ekiran kao izlazna opcija (Output options).

Slika 5.5 prikazuje izgled jednog dela programa pisanog u programu Keil uVision 3.

Slika 5.5

5.2 Definisanje projektnog zadatka

Na hardveru, konkretno na raster ploi, postoje osam push button-a (oznaenih sa P1,
P2, P3, P4, P5, P6, P7 i P8 respektivno), kao i osam zelenih LED dioda (oznaenih sa D1, D2,
D3, D4, D5, D6, D7 i D8 respektivno). Za projektni zadatak upotrebljeno je pet push button-a
i svih osam LED dioda.

Projektni zadatak je definisan u sledeih pet koraka:

kada se pritisne push button P1, dioda D1 se pali i svetli 2 s i onda se gasi;
kada se pritisne push button P2, posle 5 s dioda D2 se pali i svetli 2 s nakon ega se
gasi;
kada se pritisne push button P3 i dri se pritisnutim, dioda D3 svetli, a kada se pusti
dioda se gasi;
kada se pet puta pritisne push button P4, dioda D4 se pali, a kada se ponovo pet puta
pritisne push button P4, dioda D4 se gasi;
kada se pritisne push button P5, onda se naizmenino pale diode P5, P6, P7, P8, pa
zatim opet P5, P6, P7, P8, i ovaj ciklus se ponavlja dokle god se ponovo ne pritisne
push button P5 i neko kratko vreme zadri pritisnutim.

72
5.3 Programiranje softvera
Pre ukljuivanja sistema, korisnik hardverski pomou click-clack prekidaa, koji se
nalazi na raster ploi hardvera, odabira reim rada, odnosno projektni zadatak. Ovo je uraeno
tako to nakon dela programa inicijalizacije softver ispituje stanje pina P3.0. Ukoliko je na
pinu P3.0 1 softver ulazi u deo programa projektnog zadatka paljenja i gaenja dioda (LED
program), a u sluaju da je na pinu P3.0 0 akrivira se deo programa koji je vezan za
stepenino osvetljenje, odnosno deo programa koji se odnosi na laboratorijsku vebu o emu
e vie rei biti u poglavlju 7 ovog rada.
Program za deo projektnog zadatka koji se odnosi na paljenje i gaenje LED dioda je
uraen na asemblerskom jeziku A51, dok je program za deo projektnog zadatka stepenino
osvetljenje uraen na programskom jeziku C51. Razlozi zbog ega je to ovako uraeno su
sledei:
1. Broja od 3600 tajmerskih prekida ima heksadecimalnu vrednost E10 pa ga je lake
predstaviti promenljivom tipa Integer (16-to bitna vrednost), a neto tee
asemblerskim jezikom koji uglavnom radi sa 8-o bitnim registrima, i
2. veliki broj uslovnih koraka koje je lake realizovati sa switch-case strukturom.

5.4 Softverski kod

Napisani program startuje sa glavnim programom (main), napisanim u C51 jeziku, u


kome je proces inicijalizacije i ispitivanja pina P3.0. Za P3.0=1 aktivira se softver koji
realizuje projektni zadatak paljenja i gaenja dioda to je u programu pokriveno fajlovim
main.c, main_LED.src i delay.src. Delovi programa kojima je je pokrivena laboratorijska
veba su main.c, svetlo_zgrada.c i prekid_3min.c.

Izgled napisanog programa prikazan je u tekstu koji sledi:

##############################################################

//***********Projekat***************//
// //
//------------verzija 1.0-----------//
//////////////////////////////////////

//*Deo programa, u Keil-u oznaen kao fajl main.c u kome se vri


ispitivanje pina P3.0*//

#include <Definicija.h>
#include <REG8253.H>

extern code Init_Timer2();


extern code Wait();
extern code Floor_Light();

sbit Taster = P3^0;


bit Status_modul;

void main (void)

{
Init_Timer2();
Diode = 0x00;

73
while (1)
{
if (Taster==0)
{
Status_modul =1;
Floor_Light();

while ( (Tasteri == 0xff)); //while ( !(Tasteri & 0x00) );

}
else
{
Status_modul = 0;
Wait();
}
}

//*Deo programa, u Keil-u oznaen kao fajl main_LED.src koji se odnosi na


paljenje i gaenje dioda*//

$NOMOD51

#include <REG8253.H>
#include <Definicija.h>

;
/*************************************************************************/

//NOVA VREDNOST JE 3F23hex odnosno 16163 dec odnosno 49 373 * 1,0127 us =


50000,0371 us == 50 ms

#define MSB_reload_value 0x4B /* msb reload value


za generisanje vremenskog prekida na 50 ms */

#define LSB_reload_value 0xFD /* lsb reload value


za generisanje vremenskog prekida na 50 ms */

//#define MSB_reload_value 0x3F /* msb reload value


za generisanje vremenskog prekida na 50 ms */

//#define LSB_reload_value 0x23 /* lsb reload value


za generisanje vremenskog prekida na 50 ms */

#define Led_dioda_1_vreme 40 /*vreme od 40*50ms = 2s za


diodu D1*/

#define Led_dioda_2_vreme 100 /*vreme od 100*50ms =


5s za diodu D2 nakon detektovanja da je taster pritisnut*/

#define Led_dioda_2_vreme_svetli 40 /*vreme od 40*50ms =


2s za diodu D2*/

///////////////////////////////////////////////////////////////////////////

EXTRN CODE (DELAY,Prekid_3_min)


EXTRN BIT (Status_modul)

74
PUBLIC Init_Timer2, Wait

Flegovi segment bit


Magacin segment idata

rseg Magacin
stack: DS 10

rseg Flegovi
LED1: dbit 1
LED2: dbit 1
LED3: dbit 1
LED4: dbit 1
LED5: dbit 1
LED6: dbit 1
LED7: dbit 1
LED8: dbit 1

cseg at 002bh

jmp Timer2_Interrupt

/*Procedura za ispitivanje statusa Tastera definisana kroz petlju sto pruza


mogucnost generisanja procedure za bilo koji Taster i odgovarajucu diodu*/

Wait: jnb Taster_5,$


Wait1: mov a,Tasteri
cjne a,#0xFF,Taster_pritisnut
jmp Wait1
Pritisnut: jnb Taster_5,Wait
Ret

/*Ispitivanje koji je Taster pritisnut i preduzimanje odogovarajuceg


algoritma za dati taster*/

Taster_pritisnut:

Ispitaj_1: jb Taster_1,Ispitaj_2
jnb Taster_1,$
setb Led_1
setb TR2
setb LED1
mov R3,#Led_dioda_1_vreme
jmp Idle

Ispitaj_2: jb Taster_2,Ispitaj_3
jnb Taster_2,$
setb TR2
setb LED2
mov R3,#Led_dioda_2_vreme
jmp Idle

Ispitaj_3: jb Taster_3,Ispitaj_4
setb Led_3
jnb Taster_3,$
clr Led_3

75
Ispitaj_4: jb Taster_4,Ispitaj_5
jb LED4,Gasenje
inc R0
jnb Taster_4,$
cjne R0,#5,Wait
setb LED4
mov r0,#0
setb Led_4
jmp Wait

Gasenje: inc R0
jnb Taster_4,$
cjne R0,#5,Wait
clr LED4
mov r0,#0
clr Led_4

Ispitaj_5: mov r0,#0


jb Taster_5,Ispitaj_6
jnb Taster_5,$
inc r4
cjne r4,#2,Next
mov r4,#0
jb Taster_5, Wait //jmp Wait
Next: call Setajuca

Ispitaj_6: jmp Wait

Setajuca: setb Led_5


mov r6,#0x07
mov r7,#0xD0
call DELAY
clr Led_5
call Pritisnut
setb Led_6
mov r6,#0x07
mov r7,#0xD0
call DELAY
clr Led_6
call Pritisnut
setb Led_7
mov r6,#0x07
mov r7,#0xD0
call DELAY
clr Led_7
call Pritisnut
setb Led_8
mov r6,#0x07
mov r7,#0xD0
call DELAY
clr Led_8
call Pritisnut
jmp Setajuca

/*************************************************************************/

Init_Timer2: mov TH2,#MSB_reload_value ; /* Init msb_value */


mov TL2,#LSB_reload_value ; /* Init lsb_value */
mov RCAP2H,#MSB_reload_value ;/* reload msb_value */
mov RCAP2L,#LSB_reload_value ;/* reload lsb_value */

setb EA ;/* interupt enable */

76
setb ET2 ; /* enable timer2 interrupt */

ret

/*************************************************************************/

Timer2_Interrupt: clr TF2


//ubaciti kod za stepenisno svetlo tako sto
//ce da se koristi flag koji ce da se postavi
//na 1 kada se koristi C kod

jnb Status_modul,Next_code
call Prekid_3_min
jmp Kraj
Next_code: jnb LED1,Ispitaj_LED2
djnz R3,Kraj
clr LED1
clr Led_1
clr Led_2
clr TR2
jmp Kraj

Ispitaj_LED2: jnb LED2,Kraj


djnz R3,Kraj
clr LED2
mov R3,#Led_dioda_2_vreme_svetli
setb Led_2
setb LED1
jmp Kraj

Kraj: reti

/*************************************************************************/

Idle: mov PCON,#0x01


jb LED1, Idle
jmp Wait

/*************************************************************************/

end

//*Deo programa, u Keil-u oznaen kao fajl delay.src koji se odnosi na


paljenje i gaenje dioda*//

NAME EXAMPLE

?PR?_DELAY_LOOP_Wait?EXAMPLE SEGMENT CODE

PUBLIC DELAY

RSEG ?PR?_DELAY_LOOP_Wait?EXAMPLE

DELAY:
CLR A
MOV R5,A
MOV R4,A
?C0001:
SETB C
MOV A,R5

77
SUBB A,R7
MOV A,R4
SUBB A,R6
JNC ?C0007
CLR A
MOV R3,A
MOV R2,A
?C0004:
INC R3
CJNE R3,#00H,?C0008
INC R2
?C0008:
MOV A,R3
XRL A,#079H
ORL A,R2
JNZ ?C0004
?C0003:
INC R5
CJNE R5,#00H,?C0009
INC R4
?C0009:
SJMP ?C0001

?C0007:
RET

END

//*Deo programa, u Keil-u oznaen kao fajl svetlo_zgrada.c koji se odnosi


na stepenino osvetljenje*//

/*Zgrada ima 8 spratova.


Kada se na nekom do spratova, recimo X-tom spratu, pritisne prekidac,
svetlo
se pali na X-tom, na X+1, na X+2, na X-1, i na X-2. Svetlo gori 3 minuta.
Ako se u meuvremenu pritisne prekidac na nekom drugom spratu, onda se
svetlo
pali na tom spratu i na dva sprata iznad i na dva sprata ispod. Ukoliko na
nekom do spratova vec gori svetlo a obuhvacen je pritiskanjem drugog
prekidaca
onda se njegovo trajanje svetla resetuje na novih 3 minuta.
Na spratovima na kojima gori svetlo a obuhvaceni su prvim pritiskom
prekidaca
a nisu obuhvaceni drugim pritiskom prekidaca svetlo gori dok ne istekne
prvih
3 minuta (oni se ne resetuju).
*/

#include <REG8253.H>
#include <Definicija.h>

//extern code Loop_Delay(void);

void Section1(void);
void Section2(void);
void Section3(void);
void Section4(void);
void Section5(void);
void Section6(void);
void Section7(void);
void Section8(void);

78
unsigned char Temp;
int data Broj;
bit Status_flag;
bit Status_flag_1;

void Floor_Light (void)


{

//TR2 = 0;

if (Tasteri != 0xff)
{
Temp = ~Tasteri;
switch(Temp)
{
case 1:
Section1();
break;
case 2:
Section2();
break;
case 4:
Section3();
break;
case 8:
Section4();
break;
case 16:
Section5();
break;
case 32:
Section6();
break;
case 64:
Section7();
break;
case 128:
Section8();
break;

void Section1(void)
{
if (Status_flag ==1)
{
while ((P2_0 == 0));
P1 |= 0x07;
Broj = 1; //LEDStatus = 0x07;
Status_flag_1 =1;
Status_flag =0;
// Loop_Delay();
// Tasteri = 0xff;

79
}
else
{
while ((P2_0 == 0));
P1 =0x07;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

void Section2(void)
{
if (Status_flag ==1)
{
while ((P2_1 == 0));
P1 |= 0x0f;
Broj = 2; //LEDStatus = 0x0f;
Status_flag_1 =1;
Status_flag =0;
//Loop_Delay();
//Tasteri = 0xff;
}
else
{
while ((P2_1 == 0));
P1 =0x0f;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

void Section3(void)
{
if (Status_flag ==1)
{
while ((P2_2 == 0));
P1 |= 0x1f;
Broj = 3; //LEDStatus = 0x1f;
Status_flag_1 =1;
Status_flag =0;
//Loop_Delay();
//Tasteri = 0xff;
}
else
{
while ((P2_2 == 0));
P1 =0x1f;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

void Section4(void)
{
if (Status_flag ==1)
{
while ((P2_3 == 0));
P1 |= 0x3e;

80
Broj = 4; //LEDStatus = 0x3e;
Status_flag_1 =1;
Status_flag =0;
//Loop_Delay();
//Tasteri = 0xff;
}
else
{
while ((P2_3 == 0));
P1 =0x3e;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

void Section5(void)
{
if (Status_flag ==1)
{
while ((P2_4 == 0));
P1 |= 0x7c;
Broj = 5; //LEDStatus = 0x7c;
Status_flag_1 =1;
Status_flag =0;
//Loop_Delay();
//Tasteri = 0xff;
}
else
{
while ((P2_4 == 0));
P1 =0x7c;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

void Section6(void)
{
if (Status_flag ==1)
{
while ((P2_5 == 0));
P1 |= 0xf8;
Broj = 6; //LEDStatus = 0xf8;
Status_flag_1 =1;
Status_flag =0;
//Loop_Delay();
//Tasteri = 0xff;
}
else
{
while ((P2_5 == 0));
P1 =0xf8;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

81
void Section7(void)
{

if (Status_flag ==1)
{
while ((P2_6 == 0));
P1 |= 0xf0;
Broj = 7; //LEDnew = 0xf0;
Status_flag_1 =1;
Status_flag =0;
//Loop_Delay();
//Tasteri = 0xff;
}
else
{
while ((P2_6 == 0));
P1 =0xf0;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

void Section8(void)
{
if (Status_flag ==1)
{
while ((P2_7 == 0));
P1 |= 0xe0;
Broj = 8; //LEDnew = 0xe0;
Status_flag_1 =1;
Status_flag =0;
//Loop_Delay();
//Tasteri = 0xff;
}
else
{
while ((P2_7 == 0));
P1 =0xe0;
Status_flag =1;
TR2 = 1;
//Tasteri = 0xff;
}

//*Deo programa, u Keil-u oznaen kao fajl prekid_3min.c koji se odnosi na


stepenino osvetljenje*//

#include <Definicija.h>
#include <REG8253.H>

extern data Diode_old;


extern data Broj;
extern bit Status_flag;
extern bit Status_flag_1;

int Counter_1;
int Counter_2;

82
void Prekid_3_min (void)
{
// static unsigned char tab[8]={0x07,0x0f,0x1f,0x3e,0x7c,0xf8,0xf0,0xe0};
// unsigned char *point;
// point = tab;

if (Status_flag_1 ==1)

{ if (++Counter_1 == 3600)

{
switch(Broj)
{
case 1:
P1 = 0x07; //Section1();
Counter_1 = 0;
break;
case 2:
P1 = 0x0f; //Section2();
Counter_1 = 0;
break;
case 3:
P1 = 0x1f; //Section3();
Counter_1 = 0;
break;
case 4:
P1 = 0x3e; //Section4();
Counter_1 = 0;
break;
case 5:
P1 = 0x7c; //Section5();
Counter_1 = 0;
break;
case 6:
P1 = 0xf8; //Section6();
Counter_1 = 0;
break;
case 7:
P1 = 0xf0; //Section7();
Counter_1 = 0;
break;
case 8:
P1 = 0xe0; //Section8();
Counter_1 = 0;
break;

//P1 = *(point + Broj - 1); */

else if (++Counter_2 == 3600)

{
P1 = 0;
Counter_2 = 0;
Counter_1 = 0;
TR2 = 0;

83
}

}
else if (++Counter_1 == 3600)

{
P1 = 0;
Counter_1 = 0;
TR2 = 0;

###########################################################################

5.5 Flash-ovanje mikrokontrolera


Nakon denerisanja hex fajla u Keil-u aktiviramo softver Microcontroller ISP Software
firme Atmel (ISP In System Programator) i vrimo izbor mikrokontrolera, to je ilustrovano
slikama 5.5.1 i 5.5.2 respektivno.

Slika 5.5.1 Izbor mikrokontrolera se vri u meniju Options

84
Slika 5.5.2 Izbor mikrokontrolera AT89S8253

Na slici 5.5.3 prikazan je izgled bafera pre uitavanja koda.

Slika 5.5.3 Izgled bafera pre uitavanja koda

85
Nakon uitavanja hex fajla bafer e imati izgled prikazan na slici 5.5.4.

Slika 5.5.4 Izgled bafera nakon uitavanja koda

Sledei koraci podrazumevaju eventualno podeavanje bitova zakljuavanja (Lock


bits) kojima se softverski titi kod, programiranje (upis) koda (Write), verifikaciju
(Verification) itd. Poslednje dve operacije se nalaze meniju Instructions. Posle toga, mogue
je izabrati (selektovati) opciju Auto Program (meni Instructions) kojom e se sadraj bafera
programa prepisati u mikrokontroler.

86
5.6 Algoritam za program LED

87
88
6 Laboratorijska veba

Za uspeno izvoenje ove laboratorijske vebe neophodno je da student paljivo


proui sadraj ovog projekta to e mu pomoi razumevanju i reavanju laboratorijske vebe.
Sama laboratorijska veba, kao i projektni zadatak (poglavlje 5 ovog projekta) su podloni
modifikacijama tako da studenti eksperimentisanjem mogu uvideti velike mogunosti koje
prua mikrokontroler AT89S8253.

6.1 Zadatak laboratorijske vebe


Zadatak ove laboratorijske vebe ogleda se u realizaciji stepeninog osvetljenja
zgrade. Konkretno za ovu vebu zgrada ima osam spratova, a uslovi za realizaciju su sledei:
Kada se na nekom do spratova, recimo X-tom spratu, pritisne prekida, svetlo se pali
na X-tom, na X+1, na X+2, na X-1, i na X-2 sptatu. Svetlo mora biti upaljeno 3 minuta.
Ako se u meuvremenu pritisne prekida na nekom drugom spratu, onda se svetlo pali na tom
spratu i na dva sprata iznad i na dva sprata ispod tog sprata. Ukoliko na nekom do spratova
ve gori svetlo a obuhvaen je pritiskanjem drugog prekidaa onda se njegovo trajanje svetla
resetuje na novih 3 minuta.
Na spratovima na kojima gori svetlo, a obuhvaeni su samo prvim pritiskom prekidaa a nisu
obuhvaeni drugim pritiskom prekidaa, svetlo gori dok ne istekne prvih 3 minuta (oni se ne
resetuju).
U praksi, to se ogleda na sledei nain:
Ukoliko, recimo, pritisnemo prekida na treem spratu, svetlo se pali na treem,
etvrtom, petom, drugom i prvom spratu, i ona ostaju upaljena 3 minuta. Ukoliko se u
meuvremenu pritisne prekida na, recimo, estom spratu, pali se svetlo na estom, sedmom i
osmom spratu, a trajanje svetla na petom i etvrtom spratu se resetuje na novih 3 minuta.
Svetla e na prvom, drugom i treem spratu goreti dok ne istekne 3 minuta od pritiskanja
prvog prekidaa (njihovo trajanje se ne resetuje jer nisu obuhvaeni pritiskanjem drugog
prekidaa).

6.2 Laboratorijska veba


Nakon inicijalizacije programa i ispitivanja pina P3.0 ulazi se u odgovarajui projektni
zadatak (paljenje i gaenje LED dioda ili stepenino osvetljenje, a nain na koji se to radi je
opisan napred u tekstu ovog rada). Za sluaj projektnog zadatka Stepenino osvetljenje
program ispituje status tastera koji su hardverski vezani na port 2. Za sluaj da ni jedan taster
nije pritisnut program je u statusu ekanja. Nakon detektovanja da je neki od tastera
pritisnut, u skladu sa definisanim projektnim zadatkom, pali se dioda odgovarajueg tastera i
po dve diode gore i dole. Program krene sa merenjem vremena od 3 minuta, kako je i
definisano trajanje upaljenih dioda iz projektnog zadatka. Merenje vremena se realizuje
pomou tajmerskog prekida od 50 ms i brojaa od 3600 tajmerskih prekida. Ako se u nekom
trenutku pritisne neki drugi tasteer pali se dioda za taj taster i po dve diode gore i dole.
Merenje vremena se vri na prethodno objanjen nain stim to se merenje vremena za diode
koje su ve gorele pritiskanjem prvog prekidaa, a obuhvaene su i pritiskanjem drugog
prekidaa resetuje na novih 3 minuta.
Kao to je ve reeno, program za laboratorijsku vebu je uraen u programskom
jeziku C51, a razlozi za to su objanjeni u prethodnom delu ovog teksta.. Softverski kod za
laboratorijsku vebu se nalazi u poglavlju 5 ovog rada. Prilikom pisanja programa u Keil-u
laboratorijska veba je pokrivena fajlovima main.c, svetlo_zgtrada.c i prekid_3min.c, kao to
je i oznaeno u poglavlju 5.

89
7 Zakljuak
Prvo poglavlje ovog projekta odnosi se na Programibilne logike kontrolere ili
PLC-ove. Obraena su pitanja ta je to programabilni logiki kontroler, zatim, relejna
lestviasta logika, PLC sistemi, PLC tipovi, programiranje ladder logike PLC-a, kao i same
prednosti PLC ladder logike u odnosu na konvencionalnu relejnu logiku.
Drugo poglavlje obuhvata razmatranje Tajmera, Brojaa i Pomerakih registara. Ovde
je detaljno objanjen pojedinano svki od njih, kao i manipulisanje podacima sa kratkim
primerima.
Tree poglavlje se bavi mikrokontrolerom AT89S8253. Opisane su njegove
karakteristike, konfiguracija i pinovi, dat je blok dijagram, i objanjen je Tajmer 2 ovog
mikrokontrolera. Uz priloeni CD dat je i datashit AT89S8253.pdf u kome je on detaljnije
opisan.
ervrto poglavlje obuhvata hardversku realizaciju ovog projekta. Prikazane su ploe
sa rasporedom korienih elemenata, i data je tabela sa korienim komponentama.
Peto poglavlje se odnosi na softversku realizaciju. Objanjeno je korienje programa
Keil uVision 3, u kome je napisan program, definisan je projektni zadatak, dat je softverski
kod i objanjeno je upisivanje koda u mikrokontroler, odnosno njegovo fleovanje.
esto poglavlje obuhvata laboratorijsku vebu. Izvreno je definisanje i detaljno
objanjenje laboratorijske vebe.
Na priloenom CD-u dati su Datasheet-ovi za AT89S8253, 74HC373 i TS7805.

90
8 Literatura
1. Programmable Logic Controllers (Fourth Edition), Chapters 9,10,11,12, W.Bolton
2. Programiranje industrijskih kontrolera (http://es.elfak.ni.ac.yu)
3. http://www.atmel.com
4. Atmel AT89S8253 Datasheet (AT89S8253.pdf)
5. 74HC373 Datasheet (74HC373.pdf)
6. TS7805 Datasheet (TS7805.pdf)

91
9 Biografija

Ime Milan
Prezime Giki
Datum roenja 30.11.1979.
Adresa stanovanja Vojvode Stepe 1, Lebane
E-mail adresa gikicm@yahoo.com
Obrazovanje Gimnazija Stojan Ljubi
Smer Telekomunikacije
Windows okruenje, MS Office, Adobe Photoshop,
Poznavanje softvera
CorelDRAW, OrCAD
Interesovanja Sport, raunari

92

You might also like