Professional Documents
Culture Documents
nterrupt kelime anlamyla kesme demek olup , PLC deki alma biimi genel itibari ile u
ekildedir.
Ana programn almas esnasnda gelen kesme isteine gre yrtt program keserek
kesme alt programna dallanlr.Buradaki programn altrlmas ve bitimine mteakipde ana
programda kald yere dnerek almasn icra eder.
a) Harici Interruptlar : (I001, X0), (I101, X1), (I201, X2), (I301, X3), (I401, X4),(I501, X5), 6
nokta
b) Zaman Ayarl Interruptlar : I6** 1 tane (** = 10-99 aras) Zaman Birimi : 1 ms
(Versiyon 5.7 ve zeri modeller iin)
c) Haberleme interruption : 1 adet I150 (Versiyon 5.7 ve zeri modeller iin)
a) Harici Interruptlar : (I001, X0), (I101, X1), (I201, X2), (I301, X3) 4 nokta
b) Zaman Ayarl Interruptlar : I6** , I7** 2 tane (** = 10-99 aras) Zaman Birimi : 1ms
c) Yksek hzl sayc interruptlar: I010, I020, I030, I040 4 nokta. (API 53 DHSCSkomutu ile
birlikte kullanlr.)
d) Belirli wordleri akmak iin kullanlan haberleme interruptlar. (I150)
e) Interrupt pointerleri aktif etme sras : Yksek hzl sayc interrupt, Harici interrupt, Zaman
ayarl Interrupt ve Haberleme Interrupt
f) 6 interrupt no (I001,I010), (I101,I020), (I201,I030), (I301,I040), (I401,I050),(I501,I060)
iftlerinden sadece 1 tanesi programda kullanlabilir. Eer iftlerin ikiside ayn program iinde
kullanlrsa syntax (szdizimi) yazlm hatas oluur.
a) Harici interrupt: I00 (X0), I10 (X1), I20 (X2),I30(X3), I40 (X4), I50 (X5) olmak zere 6
tanedir. = 1 ise ykselen kenar tetikleme, = 0 ise den kenar tetikleme
b) Zaman Ayarl (Timed) Interrupt: I6** , I7** 2 tane (** = 10-99 aras) Zaman Birimi: 1 ms ,
I8** , 1 tane (** = 10-99 aras) Zaman Birimi : 0.1 ms
c) Yksek hzl sayc interrupt : I010, I020, I030, I040, I050, I060 olmak zere 6 tanedir. (API
53 DHSCS komutu ile birlikte kullanlr.)
d) Pulse k interuptlar I110, I120 (pulse k tamamland zaman tetiklenir) ve
I130, I140 (ilk pulse k geldiinde tetiklenir) aktif olduu zaman, program taramas
kesilir ve tanmlanan interrupt subroutine atlar.
e) Haberleme interrupt : I150, I160, I170
f) Frekans lm Card Interrupt : 1 adet I180
g) Interrupt pointer ileme sras : Harici interrupt, Zaman ayarl interrupt, Yksekhzl
sayc interrupt, Pulse interrupt, Haberleme interrupt, Frekans lm card Interrupt
Interrupt Pointer : Interrupt pointerler API 04 (EI), API 05 (DI), API 03 (IRET) komutlar ile
birlikte kullanlr. 6 eit interrupt pointer vardr. Hangi interrupt kullanlyor olursa olsun
yukardaki komutlarla ilikilendirilmesi gerekir.
1-) Harici Interrupt : CPUnun donanmnn zel dizaynna bal olarak, X0-X5 den gelen
ykselen ve den kenar giriler tarama sayklndan etkilenmez. Mevcut taranan program
aniden kesilir ve tarama nceden tanmlanan I00 (X0), I10 (X1), I20 (X2),I30(X3), I40
(X4), I50 (X5) interrupt subroutinelere atlar.( = 1 ise ykselen kenar tetikleme, = 0 ise
den kenar tetikleme). Tarama subroutine iinde IRET komutuna ulatktan sonra
almasna normal programda kald yerden devam eder.
Harici interruptla yaplm rnek program aada verilmitir. (SV serisi PLC kullanlmtr)
Program EI - DI komutlar arasn tararken X1den sinyal gelirse interrupt aktif olur ve
program kesilerek I101 satrna atlar.Interrupt subroutine iinde IRET komutu tarandktan
sonra program ilk balad yere geri dnerek kald yerden program srdrecektir.
X2 konta aktif ve program almasna (ana programda) devam ediyorken herhangi bir
anda X1 kontana bir tetik gelirse program I101 interrupt pointerna atlar.X2 n art
saland iin Y3 k aktif olacaktr. Interrupt subroutine programnda IRET tarandktan
sonra program ana programda kald yere geri dnerek ilemleri burada srdrmeye devam
eder.Bu srada X2 konta pasif edilirse Y3 knn hala aktif olduu gzlemlenecektir.X1
aktif olduunda kesme programna dallanlr ve X2 aktif olmad iin (Y3n n art
salanmayacandan) Y3 k pasif hale gelecektir.
2-) Zaman Ayarl (Timed) Interrupt : PLC otomatik olarak mevcut alan program ayarlanan
sabit peryotda bir keser ve tanmlanan interrupt subroutine atlar.
Zaman ayarl interruptla ilgili rnek program aada verilmitir.(SV serisi PLC kullanlmtr)
Program EI - DI arasn tararken zaman ayarl bir interrupt yardmyla I601 interrupt
pointerna atlar.M1013 1 sn de bir clock pals reten bir kontaktr.Her 1 sn de bir D500
datasnn iindeki deer 1 artmaktadr.Program bu ekilde yrtlrken kullanlan zaman
ayarl interrupt sayesinde 1 ms aralklarla kesme uygulanarak kesme alt programna atlanr.
Burada D500 datasnn ierii D600 ile karlatrlarak eitlik olutuunda Y0 kontann aktif
olmas salanmtr.
3-) Sayma hedef deere ulatnda interrupt : DCNT deeri Yksek hzl sayc karlatrma
komutu API 53 DHSCS de belirlenen hedef deerine ulat zaman mevcut program kesilir
ve I010, I020, I030, I040, I050, I060 ile tanmlanan interrupt subroutine atlar.
Hzl sayc interruptla ilgili rnek program aada verilmitir.(SV serisi PLC kullanlmtr)
Programda hzl sayc olarak C251 kullanlmtr.DHSCS hzl sayc karlatrma komutu
olup C251 saycsnn deeri 100 olduunda tarama aniden I010 interrupt pointerna atlar ve
Y1 k aktif olur.Bundan sonra program ana programa geri dner ve kald yerden devam
ederek D300 datasnn iine C251 Counternn deeri olan 100 deerini atacaktr.
4-) Pulse Interrupt : Pulse k komutu API 57 PLSY ilk pulse kn verdiinde M1342 ve
M1343 bitleri kullanlarak I130 ve I140 interrupt subroutineleri aktif edilebilir. Ayrca PLSY
komutu son pulse kn verdii zaman M1340 ve M1341 bitleri kullanlarak I110 ve I120
interrupt subroutineleri aktif edilebilir.
Pulse interruptla ilgili rnek program aada verilmitir.(SV serisi PLC kullanlmtr)
Programda ilk balangta M1340 , M1342 zel bitleri aktif edilmitir.M1340 biti ; 1. grup pals
k CH0 ( y0 ,y1) gnderildikten sonra I110 interrupt aktif eder.M1342 biti ; 1. grup pals
k CH0 (y0,y1) gnderilirken I130 interruptn aktif eder.DPLSY pals komutuyla istenilen
frekans deerinde ve pals adedinde y0 kndan pals retilir.M0 konta aktif edildii anda
(d550 ve d560 datalarnda frekans ve puls adedi girilmise) y0 kanalndan pals k
alnmaya balanacaktr.Bu esnada program aniden I130 interrupt pointerna atlar.Burada
d300 datasnn iine 1 gnderilir ve ayn zamanda M1 konta set edilir ve program tekrar
normal taramasna geri dnecektir.. Belirtilen pals adedi kanaldan gnderildikten sonra ise
tarama aniden bu sefer I110 interrupt pointernn bulunduu satra atlar.Burada d300
datasnn ieriine 0 gnderilir ve M0 , M1 kontaklar resetlenir.
M1295 puls k interrupt I110 pasif etme bitidir.Bu bit en bata aktif edilirse M1342 biti aktif
edilse dahi interrupt almayacaktr.
I170 Interrupt rnei (Slave moda data alma ilemi tamamlandktan sonra)
D1020 datasndan PLC girileri cevap zaman ayarlanabilir. Hzl sayc ve interrupt girileri
iin kullanlan giriler iin herhangi bir ayar yapmaya gerek yoktur.
Programn iindeki I170 subroutine program ile, COM 2 slave modda iken eer haberleme
datas geliyorsa PLC bu datay hemen ileyip gerekli cevap kodunu gnderecektir.
Not : I170 kullanlaca zaman program on-line update yapmaynz.PLC tarama zaman
biraz uzayabilir.
6-) Frekans lm kart tetikleme interrupt : PLC M1019 ve D1034 kullanlarak frekans lm
kart mod 1 (pulse saykl lm) veya mod 3 (pulse says sayma) ayarland zaman I180
kullanlr.
EI/DI : Komutun almas iin nne herhangi bir art konulmasna gerek yoktur.
Interrupt sinyali pulse genilii en az 200 mikro saniye olmaldr.
FEND : Normal programn sonu olduu anlamna gelir. Interrupt programlar FEND
komutunun altna yazlmal ve IRET komutu ile sonlandrlmaldr. Eer birden fazla FEND
komutu kullanlacak ise interrupt subroutineler FEND ve END arasna yazlmaldr.
Notlar :
EI komutu harici interrupt, zaman ayarl interrupt ve yksek hzl sayc interrupt gibi interrupt
subroutinelere izin verir.
Program EI ve DI komutlar arasnda sinyal geldii zaman interrupt aktif eder. Eer
programda interrupt pasif etmek gerekmiyorsa sadece EI kullanmak yeterli olur. DI
kullanlmasna gerek yoktur.
Birok interrupt aktif olursa, ncelik ilk verilen interrupttadr. Eer aniden birok interrupt
aktif olursa daha kk pointer numaral interruptlarn ncelii vardr.
DI ve EI komutlar arasnda bir interrupt sinyali gelirse bu komut hemen deil tarama izin
verilen EI ve DI komutlar aras tarand zaman aktif olur.
Interrupt ilemi srasnda ani I/O gerekli ise, I/O durumlarn update etmek iin program
iinde REF komutunu kullannz.
Subroutine (Alt Program) Timer: T192-T199 aras subroutine veye interrupt subroutinelerde
kullanlr.
SA serisi CPUlar iin program END komutuna ulat zaman bir kere ilenir ve program
END komutunu tarad zaman eer set deerine ulatysa k ON olur.
EH/EH2/SV CPUlar iin program TMR veya END komutuna ulat zaman bir kere ilenir.
ve program TMR veya END komutuna ulat zaman PV=SV ise k ON olur.
Eer subroutinelerde ve interrupt subroutinelerde genel amal timer kullanlyor ise fakat
subroutine taranmyor ise timer doru olarak alamayacaktr.
SA/SC/SX serisi CPUlarda DHSCS komutu DHSCR komutu ile birlikte 6 kereden fazla
kullanlamaz. DHSZ komutuda 6 kereden fazla kullanlamaz. DHSCS komutu I interrupt ile
birlikte kullanlyorsa, kullanlan bu yksek hzl sayc baka DHSCS,DHSCR ve DHSZ
komutu iinde kullanlamaz.
DHSCS komutu ile Hzl sayc belirlenen deere ulat zaman I010 I060 yksek hzl
sayc interruptlar aktif eder.
SA/SX/SC serisi PLCler yksek hzl sayc interruptlar destekler. DHSCS komutunda
yksek hzl sayc interrupt kullanldysa kullanlan yksek hzl sayc baka DHSCS,
DHSCS ve DHSZ komutunda kullanlamaz.
SA/SX/SC serisi PLClerde sayc deeri ayarlanan deere ulat zaman interrupt aktif olur.
I010 interrupt subroutine aktif etmek iin X0 girii, I020 iin X1 girii, I030 iin X2 girii, I040
iin X3 girii, I050 iin X4 girii, I060 iin X5 girii kullanlr. Toplam 6 tanedir.
Eer I0X0 subroutine ayarlanacaksa, C243 iin I020, C245 iin I040 ve C250,C255 iin
I060a karlk gelir.
M1340 : 1. Grup pulse k CH0 (Y0,Y1) gnderildilkten sonra I110 interrupt aktif eder.
M1341 : 1. Grup pulse k CH1 (Y2,Y3) gnderildilkten sonra I120 interrupt aktif eder.
M1342 : 1. Grup pulse k CH0 (Y0,Y1) gnderilirken I130 interrupt aktif eder.
M1343 : 1. Grup pulse k CH1 (Y2,Y3) gnderilirken I140 interrupt aktif eder.
D1168 : RS komutu iinde spesifik wordleri almak iin I150 interrupt istei.
D1169 : RS komutu iinde spesifik wordleri almak iin I160 interrupt istei.
D1180 : I401 interrupt tarafndan alnan dk word yksek-hzl sayc deeri
D1181 : I401 interrupt tarafndan alnan yksek word yksek-hzl sayc deeri
D1198 : I501 interrupt tarafndan alnan dk word yksek-hzl sayc deeri
D1199 : I401 interrupt tarafndan alnan yksek word yksek-hzl sayc deeri
D1020 datasndan PLC girileri cevap zaman ayarlanabilir. Hzl sayc ve interrupt girileri iin
kullanlan giriler iin herhangi bir ayar yapmaya gerek yoktur.
C409 hata kodu (D1004 iinde) Subroutine veya Interrupt subroutine iinde STL/RET
komutlarnn kullanlmas hatasdr.
C40A hata kodu (D1004 iinde) Subroutine veya Interrupt subroutine iinde MC/MCR
komutlarnn kullanlmas hatasdr.
b) M1083 = ON ise FROM/TO komutlar taranrken interrupt sinyali aktif olursa, ilk
nce interrupt subroutine ilenir (100 mikrosaniye gecikme ile) ve FROM/TO komutlar
almas durdurulur. Interrupt subroutine taramas tamamlandktan sonra program
FROM/TO komutunun kullanld satrn altndan almasna devam eder.
Program EI ve DI komutlar arasn tararken X0dan sinyal gelirse interrupt aktif olur ve program
kesilerek I001 satrna atlar. Interrupt subroutine iinde IRET komutu tarandktan sonra program
kald yerden normal taramasna devam eder.
__________________________________________________________________________
Interrupt subroutinelerin ne kadar sre altn test etmek iin Interrupt subroutineler
iinde RTMU ve RTMD komutlar kullanlabilir. Fakat test ilemi tamamlandktan sonra bu
komutlarn silinmesi nerilir.
Aadaki rnek uygulamada X0 girii OFFdan ONa getii zaman I001 interrupt subroutine
aktif olur. RTMU 8-bit timer aktif eder. (Birimi 10 mikro saniye komut 2. Parametreden
ayarlanr) ve RTMD (D = 0 iken) timer kapatr ve deerini komutta belirtilen D datas iine
kaydeder. (D1156 - D1165 aras K0 K9 olarak komut 1.parametreden ayarlanr.)
DELAY komutu rnei :