PLC S7 200 ile Otomasyon (İleri Düzey)

Transkript

PLC S7 200 ile Otomasyon (İleri Düzey)
İLERİ PLC & OTOMASYON
TEORİK & UYGULAMALI
EĞİTMEN
• AD SOYAD
• TECRÜBE
• OKUL
: FAHRETTİN ERDİNÇ
: 1996’DAN BERİ
: 1995 DEÜ ELK-ELKTR MÜH.
LÜTFEN DİKKAT!
• SINIFTAKİ BAŞARIMIZIN MAKSİMUM DÜZEYDE
OLMASI İÇİN:
•
•
•
•
DEVAMSIZLIK YAPMAYINIZ; KAÇIRDIĞINIZ DERSLER
SONRAKİ KONULARA TEMEL OLUŞTURDUĞUNDAN
SONRAKİ DERSLERİ DE ANLAYAMAZSINIZ
DERSLERE ZAMANINDA GELİNİZ; KAÇIRILAN DERSLERİN
TELAFİSİNİN YAPILMADIĞINI UNUTMAYINIZ
ANLAMADIĞINIZ KONU OLDUĞUNDA HEMEN EĞİTMENE
SORUNUZ
DERS SLAYTLARI VE DİĞER DÖKÜMANLARI SUNUCUDAN
ALINIZ
• Windows Gezgini ->Adres Çubuğu -> \\sunucu\ depo\
LÜTFEN DİKKAT!
• DERSLERDE CEP TELEFONU V.B. CİHAZLARI
KAPATINIZ
• EĞİTMEN DERS ANLATIRKEN TELEFON, MAKYAJ
V.B. ŞEYLERLE İLGİLENMEYİNİZ
• SINIFIN DİKKATİNİ DAĞITACAK DAVRANIŞLARDAN
KAÇININIZ
LÜTFEN DİKKAT!
• LABORATUVARDAKİ BİLGİSAYAR V.B.
CİHAZLARIN BOZULMAMASI İÇİN:
• SINIFTA YİYECEK-İÇECEK TÜKETMEYİNİZ; SIVI VE
SUSAM GİBİ MADDELER CİHAZLARA ZARAR
VERİR VE DÜZGÜN ÇALIŞMASINI ENGELLER
• CİHAZLARI KURCALAMAYINIZ; CİHAZDA ARIZA
OLDUĞUNU DÜŞÜNÜYORSANIZ BİR KAĞIDA NOT
BIRAKINIZ
LÜTFEN DİKKAT!
• ADI GEÇEN TÜM MARKA VE LOGOLAR İLGİLİ
FİRMALARIN TESCİLLİ ÜRÜNLERİDİR
– SIEMENS, TIA PORTAL, MICROWIN, SIMATIC,
SIMATIC MANAGER, ABB, WEINTEK VE DİĞER
MARKALAR VE LOGOLARI İLGİLİ FİRMALARIN
TESCİLLİ ÜRÜNLERİDİR
LÜTFEN DİKKAT!
• ADI GEÇEN TÜM MARKA VE LOGOLAR İLGİLİ
FİRMALARIN TESCİLLİ ÜRÜNLERİDİR
– ADOBE, PHOTOSHOP, BRIDGE VE DİĞER
MARKALAR VE LOGOLARI ADOBE FİRMASININ
TESCİLLİ ÜRÜNLERİDİR
LÜTFEN DİKKAT!
• YAZILIM İSTEMEYİNİZ. KORSAN YAZILIM
SUÇTUR; HAPİS VE PARA CEZASI VARDIR
• LİSANSLI OLARAK SATIN ALINAN YAZILIMLARIN
YÜKLENMESİNDE YARDIMCI OLUNABİLİR
KONULAR
•
•
•
•
•
•
•
•
•
•
•
SAYI SİSTEMLERİ & DÖNÜŞÜMÜ
BIT LOJİK KOMUTLARI
VERİ TAŞIMA & DÖNDÜRME
MATEMATİKSEL İŞLEMLER
DOĞRUSAL / YAPISAL PROGRAMLAMA & ALTPROGRAMLAR
PALS FONKSİYONLARI, PTO & PWM
GERÇEK ZAMAN SAATİ UYGULAMALARI
ANALOG PORTLAR, ANALOG SENSÖRLER VE ANALOG SİNYAL İŞLEME
GERÇEK ZAMAN SAATİ UYGULAMALARI
OPERATÖR PANELLER & OPERATÖR PANEL UYGULAMALARI
HIZLI SAYICI & ENCODER UYGULAMALARI
SAYI SİSTEMLERİ
SAYI SİSTEMLERİ
• ELEKTRONİK VE DİJİTAL SİSTEMLER İKİLİ
SAYILARI TEMEL ALARAK ÇALIŞTIKLARI İÇİN
ÖZELLİKLE İKİLİ SAYILAR OLMAK ÜZERE, ONLU
VE ONALTILI SAYI SİSTEMLERİNİ BİLMEK ÇOK
ÖNEMLİDİR.
• NOT:
– BİR SAYININ SIFIRINCI KUVVETİ BİRDİR.
SIFIR VE BİR
• SİNYAL VAR YADA YOK DURUMUDUR.
V
0
0
YOK
1
1
0
1
0
0
0
1
VAR
0
0
t
BIT
İKİLİ SAYILAR
• 0 VE 1 LERDEN OLUŞAN, PC’LERİN İLETİŞİM
KURMASINDA KULLANILAN SAYI SİSTEMİDİR.
• ÖRNEĞİN;00100011
• DİJİTAL CİHAZLAR SADECE 0 VE 1’LERİ
ALGILAYABİLDİĞİ İÇİN,
BIT
• İKİLİ SAYILARI OLUŞTURAN HER RAKAMA
BINARY DIGIT KELİMELERİNİN KISALTILMIŞI
OLAN BIT DENİR.
• BİR BİT 0 VEYA 1 OLABİLİR.
• BİLGİSAYARDA EN KÜÇÜK BİLGİ BİRİMİ BİTTİR.
• 11010011
BİT
NIBBLE
• 4 BİTİN BİR ARAYA GELMESİYLE NIBBLE
OLUŞUR.
• ESKİ 4 BİTLİK İŞLEMCİLER ZAMANINDA ÇOK
KULLANILIYORDU.
• ARTIK 4 BİTLİK İŞLEMCİLER PEK ÜRETİLMEDİĞİ
İÇİN FAZLA KULLANILMIYOR.
BYTE
• 8 BİTİN BİR ARAYA GELMESİYLE BYTE OLUŞUR.
• BİR BYTE İÇERİSİNDE 0-255 ARASINDA OLMAK
ÜZERE 256 DEĞER OLABİLİR.
– (İKİLİK) 00000000 = 0 (ONLUK)
– (İKİLİK) 11111111 = 255 (ONLUK)
• GÖRÜLDÜĞÜ GİBİ BİR BAYT’IN ALABİLECEĞİ EN
YÜKSEK DEĞER 255 VE EN DÜŞÜK DEĞER 0’DIR.
WORD
• 16 BİTİN BİR ARAYA GELMESİYLE WORD
OLUŞUR.
– (İKİLİK) 00000000 00000000 = 0 (ONLUK)
– (İKİLİK) 11111111 11111111 = 65535 (ONLUK)
• BİR WORD’UN ALABİLECEĞİ EN YÜKSEK DEĞER 65535
VE EN DÜŞÜK DEĞER 0’DIR.
• BU DA BİR WORD İÇERİSİNDE 65536 FARKLI DEĞER
SAKLANABİLECEĞİ ANLAMINA GELİR. (216=65536)
DWORD
• 32 BİTİN BİR ARAYA GELMESİYLE LONG
OLUŞUR.
• 0 İLE 232 ARASI DEĞERLER ALABİLİR.
BIT, BYTE, WORD & DWORD
HAFIZA
0 1 1 0 0 0 1 1
BIT
1 1 0 0 0 1 1 0
BYTE
1 0 1 0 0 0 1 1
WORD
DWORD
0 0 0 0 0 1 0 0
1 0 1 0 0 0 1 1
1 0 1 0 0 0 1 1
WORD
ONLUK SAYI SİSTEMİ
• GÜNLÜK HAYATIMIZDA KULLANDIĞIMIZ SAYI
SİSTEMİDİR.
• 0,1,2, … ,9 RAKAMLARINDAN OLUŞUR.
• (20)10
• (825)10
• (3359)10
İKİLİ SAYI SİSTEMİ
• MİKROİŞLEMCİLERİN VE DİĞER TÜM DİJİTAL
AYGITLARIN KULLANDIĞI SAYI SİSTEMİDİR.
• 0 VE 1 RAKAMLARINDAN OLUŞUR.
• (10)2
• (1001)2
• (10011101)2
ONALTILI SAYI SİSTEMİ
• ÖZELLİKLE BELLEKLERİ ADRESLEMEK İÇİN
KULLANILAN SAYI SİSTEMİDİR.
• AYRICA ASSEMBLY’DE KAYITÇILARA DEĞER
YÜKLEMEK İÇİN DE KULLANILIR.
• 0,1,2, … , 9, A, B, C, D, E, F KARAKTERLERİNDEN
OLUŞUR
• (1A)16
• (3B5)16
SAYI SİSTEMLERİNİN ÇEVRİLMESİ
• BAZEN SAYI SİSTEMLERİ ARASINDA
ÇEVİRMELER YAPMAK ZORUNDA KALACAĞIZ.
• İKİLİ SAYILARI ONLUYA
• ONLU SAYILARI ANALTILIYA
• ONALTILI SAYILARI İKİLİYE
İKİLİ SAYILARIN ONLUK SAYI SİSTEMİNE
ÇEVRİLMESİ
• SAYIYI 2’NİN KUVVETLERİ OLARAK YAZIP
SONUÇLARI TOPLAMAMIZ GEREKİYOR.
• (10)2=1x21+0x20=2+0=(2)10
• (101)2=1x22+0x21+1x20=(5)10
ONLUK SAYILARIN İKİLİK SAYI SİSTEMİNE
ÇEVRİLMESİ
• SAYIYI SÜREKLİ OLARAK BÖLÜM BİTENE
KADAR 2’YE BÖLMEMİZ VE KALANI ALMAMIZ
GEREKMEKTEDİR.
• (5)10=(101)2
• (28)10=(11100)2
• (65)10=(1000001)2
İKİLİ SAYILARIN ONALTILIK SAYI
SİSTEMİNE ÇEVRİLMESİ
• SAYIYI 4 BİTLİK GRUPLARA AYIRIP HER
GRUBUN ONALTILI EŞİDİNİ YAZMAMIZ
GEREKİR.
İKİLİ SAYILARIN ONALTILIK SAYI
SİSTEMİNE ÇEVRİLMESİ
•
•
•
•
•
•
•
•
0000 – 0
0001 – 1
0010 – 2
0011 – 3
0100 – 4
0101 – 5
0110 – 6
0111 -- 7
•
•
•
•
•
•
•
•
1000 – 8
1001 – 9
1010 – A
1011 – B
1100 – C
1101 – D
1110 – E
1111 -- F
İKİLİ SAYILARIN ONALTILIK SAYI
SİSTEMİNE ÇEVRİLMESİ
• 1001 11112=9F16
• 1110 1111 0000 11102=EF0E16
ONALTILIK SAYILARIN İKİLİ SAYI
SİSTEMİNE ÇEVRİLMESİ
• ONALTILI SAYININ HER KARAKTERİ İÇİN EŞİDİ
OLAN 4 BİTLİK İKİLİ SAYI YAZILIR.
• A916=1010 10012
• FE3C16=1111 1110 0011 11002
ONALTILIK SAYILARIN ONLUK SAYI
SİSTEMİNE ÇEVRİLMESİ
• SAYIYI 16’NIN KUVVETLERİ İLE ÇARPIP
SONUÇLARI TOPLUYORUZ.
• EE16=14x161+14x160
• 2AC16=2x162+10x161+12x160
ONLUK SAYILARIN ONALTILIK SAYI
SİSTEMİNE ÇEVRİLMESİ
• SAYIYI BÖLÜM BİTENE KADAR 16 İLE BÖLÜNÜZ
VE KALANI ALINIZ.
• (238)10=(EE)16
• (684)10=(2AC)16
PLC ÇALIŞMA MANTIĞI & HAFIZALAR
PLC NASIL ÇALIŞIR?
• S7-200 SÜREKLİ OLARAK GİRİŞE GELEN
SİNYALLERİ OKUR, GEREKEN İŞLEMİ YAPAR VE
SONUÇLARI ÇIKIŞA GÖNDERİR.
• PLC, SAHİP OLDUĞU HIZA BAĞLI OLARAK, BU
İŞLEMİ SANİYEDE YÜZLERCE DEFA YAPABİLİR.
ÇEVRİM
GİRİŞ
ELEMANLARI
ÇEVRİM
BUTONLAR
MOTORLAR
SENSÖRLER
SINIR
ANAHTARLARI
OPTİK
ALGILAYICILAR
ÇIKIŞ
ELEMANLARI
SELENOİD VALFLER
PROGRAM
KONTAKTÖRLER
GÖSTERGE
LAMBALARI
S7-200, İŞLEMLERİ BİR TARAMA DÖNGÜSÜNDE GERÇEKLEŞTİRİR
BIT LOJİK KOMUTLARI
•
•
•
•
KONTAKLAR
BOBİNLER
P/N KONTAKLAR
KİLİTLEME DEVRELERİ
– KLASİK, S/R BOBİMLERİ, SR/RS FLİP-FLOP
• SAYICILAR
– CU, CD, CTUD
• KARŞILAŞTIRMA KOMULARI
• ZAMANLAYICILAR
– TON, TOF, TONR
UYGULAMA
• PLC’NİN I0.0 GİRİŞİNE BASINÇ ŞALTERİ
BAĞLANMIŞTIR. BASINÇ ŞALTERİ DEĞİŞİK
ZAMANLARDA 60SN KAPALI KALDIĞINDA Q0.0
ÇIKIŞINA BAĞLI ALARM ÇALMAYA BAŞLASIN
• ALARM EN FAZLA 5 DAKİKA ÇALSIN
• ALARMI SUSTURMAK İÇİN I0.1 RESET
BUTONUNA BASILSIN
UYGULAMA
I/O ADRESLERİ
• PLC, DIŞARIDAN ALDIĞI VERİLERİ VEYA ÇIKIŞA
GÖNDERECEĞİ VERİLERİ BİZİM TARAFIMIZDAN
BELİRLENEN ADRESLERE KOYAR.
• I/O ADRES SAYISI (Byte) MODELE GÖRE
DEĞİŞİR.
• GİRİŞ ADRESİ “I” İLE, ÇIKIŞ ADRESİ İSE “Q” İLE
GÖSTERİLİR.
I/O ADRESLERİ
Bitler
I 0 . 3
I 3 . 4
Bit
Byte
Giriş/Çıkış(I/O)
HAFIZA ALANLARI & VERİYE ERİŞİM
• BİR HAFIZA ALANINDAKİ BELLİ BİR BİTE ERİŞİM
İÇİN ADRES TARİF EDİLİR.
• BU ADRES, BAYT VE BİT ADRESLERİYLE HAFIZA
ALANI BELİRTECİNDEN OLUŞUR.
GİRİŞ KÜTÜĞÜ (PII): I
• S7–200, HER TARAMANIN BAŞINDA FİZİKSEL GİRİŞİ
OKUR VE BU DEĞERLERİ PII OLARAK TANIMLANAN
HAFIZA ALANINA YAZAR.
• GİRİŞ KÜTÜĞÜNE BİT, BAYT, WORD VEYA DOUBLE
WORD OLARAK ERİŞEBİLİRSİNİZ:
– Bit: I[bayt addresi].[bit adresi]
I0.1
– Bayt, Word veya Double Word: I[boyut][başlangıç bayt adresi]
IB4
ÇIKIŞ KÜTÜĞÜ (PIQ): Q
• HER TARAMANIN SONUNDA ÇIKIŞ KÜTÜĞÜNDE
BULUNAN DEĞERLER FİZİKSEL ÇIKIŞ NOKTALARINA
KOPYALANIR.
• ÇIKIŞ KÜTÜĞÜNE BİT, BAYT, WORD VEYA DOUBLE
WORD OLARAK ERİŞEBİLİRSİNİZ:
– Bit: Q[bayt addresi].[bit adresi]
– Bayt, Word veya Double Word: Q[boyut][başlangıç bayt adresi]
Q1.1
QB5
DEĞİŞKEN HAFIZA ALANI (VARİABLE
MEMORY AREA): V
• V HAFIZA ALANINI KUMANDA PROGRAMI AKIŞI
SIRASINDA OLUŞAN ARA SONUÇLARI SAKLAMAK İÇİN
KULLANABİLİRSİNİZ.
• V HAFIZA ALANI AYRICA PROSESİNİZ İÇİN GEREKEN
DİĞER DEĞİŞKENLERİ, SABİTLERİ YAZMAK İÇİN DE
KULLANILIR.
• ÇIKIŞ KÜTÜĞÜNE BİT, BAYT, WORD VEYA DOUBLE
WORD OLARAK ERİŞEBİLİRSİNİZ:
– Bit: V[bayt addresi].[bit adresi]
– Bayt, Word veya Double Word: V[boyut][başl. bayt adresi]
V10.2
VW100
BİT HAFIZA ALANI: M
• BİT HAFIZA ALANINI (M HAFIZA) BİR İŞLEMİN ARA
SONUCU OLARAK, TIPKI BİR YARDIMCI RÖLE GİBİ
KULLANABİLİRSİNİZ.
• M HAFIZA ALANI KÜTÜĞÜNE BİT, BAYT, WORD VEYA
DOUBLE WORD OLARAK ERİŞEBİLİRSİNİZ:
– Bit: M[bayt addresi].[bit adresi]
– Bayt, Word veya Double Word: V[boyut][başlangıç bayt adresi]
M26.7
MD20
ZAMAN RÖLESİ HAFIZA ALANI: T
• S7–200, 1 MSN, 10 MSN VEYA 100 MSN’NİN KATLARI
OLARAK AYARLANABİLECEK ZAMAN RÖLELERİ
SAĞLAR.
• BİR ZAMAN RÖLESİNİN İKİ DEĞİŞKENİ BULUNUR:
– ANLIK DEĞER: BU 16 BİTLİK İŞARETLİ TAMSAYI, ZAMAN
RÖLESİ TARAFINDAN SAYILMIŞ OLAN SÜREYİ GÖSTERİR.
– ZAMAN RÖLESİ BİTİ: BU BİT, ANLIK DEĞERLE AYAR
DEĞERİNİN KARŞILAŞTIRMA İŞLEMİ SONUCUNDA 1 VEYA 0
OLUR.
SAYICI HAFIZA ALANI: C
• S7–200, HERBİRİ SAYICI GİRİŞLERİNİN DÜŞÜK SİNYALDEN
YÜKSEK SİNYALE GEÇİŞİNDE (YÜKSELEN KENARDA) SAYAN ÜÇ
TİP SAYICI İÇERİR: BİR TİP SADECE YUKARI SAYAR, BİR DİĞERİ
SADECE AŞAĞI SAYAR, DİĞERİ İSE HEM AŞAĞI HEM DE YUKARI
SAYAR.
• BİR SAYICININ İKİ DEĞİŞKENİ BULUNUR:
– ANLIK DEĞER: BU 16 BİTLİK İŞARETLİ TAMSAYI, SAYICI TARAFINDAN
SAYILMIŞ OLAN DEĞERİ GÖSTERİR.
– SAYICI BİTİ: BU BİT, ANLIK DEĞERLE AYAR DEĞERİNİN KARŞILAŞTIRMA
İŞLEMİ SONUCUNDA 1 VEYA 0 OLUR.
HIZLI SAYICILAR: HC
• HIZLI SAYICILAR, YÜKSEK SÜRATLİ DARBE GİRİŞLERİNİ CPU
TARAMA SÜRESİNDEN BAĞIMSIZ OLARAK SAYARLAR.
• HIZLI SAYICILARIN 32 BİTLİK BİR SAYMA (VEYA ANLIK) DEĞERİ
VARDIR. BU DEĞERE ERİŞİM İÇİN HAFIZA TİPİ (HC) İLE HIZLI
SAYICI NUMARASINI BİRLİKTE KULLANIRSINIZ (ÖRNEĞİN HC0).
• ANLIK DEĞER, SALT-OKU DEĞERDİR VE SADECE DOUBLE
WORD (32 BİT) OLARAK ERİŞİLEBİLİR.
– Format: HC[hızlı sayıcı numarası]
HC1
AKÜMÜLATÖRLER: AC
• AKÜMÜLATÖRLER, OKUMA VE YAZMA YAPILABİLECEK HAFIZA
BENZERİ ALANLARDIR.
• ÖRNEĞİN, BİR ALTPROGRAMA PARAMETRE ATAMAK İÇİN
ÇEŞİTLİ DEĞİŞKENLERİ AKÜMÜLATÖRLER İÇİNE YAZAR VE
ALTPROGRAMDA BU DEĞERLERİ KULLANABİLİRSİNİZ.
• S7–200’DE DÖRT ADET 32 BİT AKÜMÜLATÖR BULUNUR (AC0,
AC1, AC2 VE AC3). AKÜMÜLATÖR İÇERİĞİNE BAYT, WORD VEYA
DOUBLE WORD OLARAK ERİŞEBİLİRSİNİZ.
ANALOG GİRİŞLER: AI
• S7–200 (SICAKLIK VEYA BASINÇ GİBİ) ANALOG DEĞERLERİ 16
BİTLİK DİJİTAL BİR DEĞER HALİNE ÇEVİRİR.
• BU DEĞERLERE ALAN BELİRTECİ (AI), VERİ BOYUTU (W) VE
BAŞLANGIÇ BAYT ADRESİ İLE ERİŞİLİR.
• ANALOG GİRİŞLER 2 BAYTLIK DEĞERLER OLDUĞUNDAN VE
HER ZAMAN ÇİFT SAYIYLA BAŞLADIKLARINDAN, ONLARA
ERİŞİM DE SADECE ÇİFT SAYILI BAYT ADRESLERİYLE OLUR
(AIW0, AIW2, AIW4 GİBİ).
– Format: AIW[başlangıç bayt adresi] AIW4
ANALOG ÇIKIŞLAR: AQ
• S7–200 16 BİTLİK BİR DEĞERİ, DİJİTAL DEĞERLE ORANTILI BİR
AKIM VEYA VOLTAJ DEĞERİNE DÖNÜŞTÜREBİLİR. BU
DEĞERLERE ALAN BELİRTECİ (AQ), VERİ BOYUTU (W) VE
BAŞLANGIÇ BAYT ADRESİ İLE ERİŞİLİR.
• ANALOG ÇIKIŞLAR 2 BAYTLIK DEĞERLER OLDUĞUNDAN VE
HER ZAMAN ÇİFT SAYIYLA BAŞLADIKLARINDAN, ONLARA
ERİŞİM DE SADECE ÇİFT SAYILI BAYT ADRESLERİYLE OLUR
(AQW0, AQW2, AQW4 GİBİ
– Format: AQW[başlangıç bayt adresi] AQW4
ÖZEL DAHİLİ RÖLELER (SM)
• ÖZEL DAHİLİ RÖLELERE ÖZEL HAFIZA BİTLERİ
DE DENİR.
• BU HAFIZA BİTLERİ, CPU İLE PROGRAM
ARASINDA İLETİŞİM SAĞLAYARAK ÇEŞİTLİ
KONTROL FONKSİYONLARINI GERÇEKLEŞTİRİR.
• BU ALANLARA BİT, BAYT, WORD VE DOUBLE
WORD OLARAK ERİŞİM MÜMKÜNDÜR.
SMB0
• SM0.0: HER ZAMAN AKTİFTİR.
• SM0.1: İLK TARAMA BİTİ. İLK TARAMADA “1”
SONRA “0” OLUR. SAYICILAR VE KALICI TİP
ZAMAN RÖLELERİNİN ÇIKIŞI BU BİT İLE RESET
EDİLİR.
• SM0.2: ENERJİ VERİLDİ BİTİ. ENERJİ
VERİLDİKTEN SONRAKİ İLK TARAMADA “1”
SONRA “0” OLUR.
SMB0
• SM0.4: 30 SN “0”, 30 SN “1” OLUR.
• SM0.5: 0,5 SN “0”, 0,5 SN “1” OLUR.
• SM0.6: TARAMA JENERATÖRÜ. BİR TARAMADA
“0”, BİR TARAMADA “1” OLUR.
• SM0.7: PLC STOP KONUMUNDAYSA “0”, RUN
KONUMUNDAYSA “1” OLUR.
TAŞIMA, KAYDIRMA &
DÖNDÜRME KOMUTLARI
MOVE KOMUTLARI
• BAYT (MOVB), WORD (MOVW), DOUBLE
WORD (MOVD) VE REEL SAYI (MOVR)
TAŞI KOMUTLARI, IN’DE YER ALAN
DEĞERİ OUT’DA YER ALAN HAFIZA
BÖLGESİNE TAŞIR (KOPYALAR).
• GİRİŞ DEĞERİ DEĞİŞMEZ.
• EN GİRİŞİNE YENİ BİR SİNYAL GELENE
KADAR ÇIKIŞTAKİ BİLGİ KALICIDIR.
ÖRNEK-1
• I0.0 AKTİF OLDUĞUNDA IN GİRİŞİNDEKİ 85
SAYISI QB0’A ATANIR.
QB0=01010101
ÖRNEK-2
• I0.0 AKTİF OLDUĞUNDA IN GİRİŞİNDEKİ 10753
SAYISI QW0’A ATANIR.
QW0=0010101000000001
ÖRNEK-3
• SMB28 İLE GİRİŞ DEĞERİ DEĞİŞTİRİLİR. I0.0 İLE
GİRİŞ ÇIKIŞA TAŞINIR.
SHIFT (KAYDIRMA)
• BİR BAYTA SAĞA KAYDIRMA (RİGHT SHİFT) İŞLEMİ
UYGULANIRSA 7. BİT 6.NIN YERİNE, 6. BİT 5.NİN
YERİNE, 5. BİT 4.NÜN YERİNE .... GEÇER.
• BOŞ KALAN 7. BİT POZİSYONUNA 0 YAZILIR VE 0. BİT
İÇERSİNDEKİ 1 DEĞER DIŞARIYA ATILIR.
• SOLA KAYDIRMA (LEFT SHIFT) İŞLEMİ DE AYNI
ŞEKİLDE GERÇEKLEŞTİRİLMEKTEDİR.
• BU SEFER BOŞ KALAN 0. BİT POZİSYONUNA 0 YAZILIR
VE 7. BİT İŞLEM DIŞI KALIR.
SHIFT (KAYDIRMA)
• 10111001
• 0 1 0 1 1 1 0 0 -> SAĞA KAYDIRMA SONRASI
• 0 1 1 1 0 0 1 0 -> SOLA KAYDIRMA SONRASI
KAYDIRMA KOMUTLARI
• KAYDIRMA KOMUTLARI, “IN”’DE VERİLEN GİRİŞ
DEĞERİNİ “N” BİT KADAR SAĞA VEYA SOLA KAYDIRIR
VE SONUCU OUT’A YAZAR. KAYDIRILAN HER BİTİN
YERİNE 0 DOLDURULUR.
• SAĞA KAYDIR:
– SHR-B, SHR-W, SHR-DW
• SOLA KAYDIR :
– SHL-B, SHL-W, SHR-DW
ROTATE (DÖNDÜRME)
• DÖNDÜRME (ROTATE) İŞLEMİNDE DE YİNE
KAYDIRMA İŞLEMİNDE OLDUĞU GİBİ BİTLER BİR
SAĞA VEYA SOLA KAYDIRILIR FAKAT BURADA BOŞ
KALAN 7. VEYA 0. BİT YERİNE SIFIR DEĞİL DE 7. BİT
İÇİN 0. BİTİN VE 0. BİT İÇİN DE 7. BİTİN DEĞERİ
YERLERİNE YAZILIR.
• YANİ YUKARIDAKİ BAYTIMIZA SIRASIYLA SAĞA VE
SOLA DÖNDÜRME İŞLEMLERİ UYGULANIRSA
AŞAĞIDAKİ GİBİ SONUÇLAR ELDE EDİLİR.
ROTATE (DÖNDÜRME)
• 10111001
• 1 1 0 1 1 1 0 0 -> SAĞA DÖNDÜRME SONRASI
• 0 1 1 1 0 0 1 1 -> SOLA DÖNDÜRME SONRASI
DÖNDÜRME KOMUTLARI
• DÖNDÜRME KOMUTLARI, “IN”’DE VERİLEN
GİRİŞ DEĞERİNİ “N” BİT KADAR SAĞA VEYA
SOLA DÖNDÜRÜR VE SONUCU OUT’A YAZAR.
DIŞARI TAŞAN BİTLER ÖBÜR TARAFA GİDER.
• SAĞA DÖNDÜR:
– ROR-B, ROR-W, ROR-DW
• SOLA KAYDIR :
– ROL-B, ROL-W, ROR-DW
UYGULAMA
• PLC ÇIKIŞINA BAĞLANAN 8 RÖLE/KONTAKTÖR
İLE YÜRÜYEN IŞIK
• MOVE, ROTATE VEYA SHIFT KOMUTLARI
KULLANILACAK
UYGULAMA
• START’A BASINCA ÇIKIŞA
(QB0) 1 YAZDIRILIR
• HER 1 SANİYEDE SOLA
KAYDIRMA YAPILIP ÇIKIŞA
YAZDIRILIR
• EĞER ÇIKIŞIN SON BİTİNDE
İSE ÇIKIŞA TEKRAR 1
YAZDIRILIR
SAYISAL İŞLEMLER
• 16 BIT SAYILARLA TOPLAMA, ÇIKARMA, ÇARPMA,
BÖLME VE KAREKÖK ALMA GİBİ İŞLEMLER
YAPILABİLİR.
–
–
–
–
İŞLEM SONUCU=0 İSE SM1.0 LOJİK1,
İŞLEM SONUCU TAŞMA OLDUYSA SM1.1 LOJİK1,
İŞLEM SONUCU (-) İSE SM1.2 LOJİK1,
SIFIRA BÖLME YAPILDIYSA SM1.3 LOJİK1 OLUR
SAYISAL İŞLEMLER
•
•
•
•
TOPLAMA: ADD_I, ADD_DI, ADD_R
ÇIKARMA: SUB_I, SUB_DI, SUB_R
ÇARPMA: MUL_I, MUL_DI, MUL_R
BÖLME: DIV_I, DIV_DI, DIV_R
TOPLAMA
OUT=IN1+IN1
ÇIKARMA
OUT=IN1-IN2
ÇARPMA
OUT=IN1*IN2
BÖLME
• 90 TAMSAYISININ 6
TAMSAYISINA
BÖLÜNMESİ
ARTTIRMA & AZALTMA
KOMUTLARI
• “EN” GİRİŞİ AKTİF OLDUĞUNDA “IN” GİRİŞİNE
GELEN DEĞERİ 1 ARTTIRAN VEYA AZALTAN VE
“OUT” ÇIKIŞINA VEREN KOMUTLARDIR.
• DEĞER BYTE, WORD VEYA DOUBLE WORD
OLABİLİR.
ARTTIRMA & AZALTMA
KOMUTLARI
IN+1->OUT
IN-1->OUT
UYGULAMA
• B1 BANDINDAN GEÇEN ÜRÜNLERİ S1 SAYICISI,
B2 BANDINDAN GEÇEN ÜRÜNLERİ S2 SAYICISI
SAYMAKTADIR
• SAYICILARIN TOPLAMI 10 OLUNCA HER İKİ
BANT DURSUN VE PAKETLEME MAKİNASI 5
SN. ÇALIŞSIN
• PAKETLEME DURUNCA BANT OTOMATİK
ÇALIŞMAYA BAŞLASIN
MANTIK İŞLEMLERİ
• MİKROİŞLEMCİLERDE BAZI İŞLERİN VE
HESAPLARIN YAPILMASI İÇİN MANTIK
İŞLEMLERİ KULLANILIR.
• BUNLAR AND, OR, XOR VE NOT GİBİ
İŞLEMLERDİR.
AND (VE) İŞLEMİ
0=ANAHTAR AÇIK
1=ANAHTAR KAPALI
A
B A AND B
0
0
0
0
1
0
1
0
0
1
1
1
OR (VEYA) İŞLEMİ
0=ANAHTAR AÇIK
1=ANAHTAR KAPALI
A
B
A OR B
0
0
0
0
1
1
1
0
1
1
1
1
NOT (DEĞİL) İŞLEMİ
BIT 0 İSE SONUÇ
LOJİK 1, 1 İSE
SONUÇ LOJİK 0 OLUR.
0=ANAHTAR AÇIK
1=ANAHTAR KAPALI
A
NOT A
0
1
1
0
LOJİK İŞLEM KOMUTLARI
• BYTE, WORD VEYA DOUBLE WORD TİPİNDEKİ
VERİLERİN AYNI KONUMDAKİ HER BİTİNE
“AND”, “OR”, VEYA “XOR” İŞLEMLERİ
GERÇEKLEŞTİRLİR.
• AŞAĞIDAKİ KOMUTLAR VARDIR:
– WAND_B, WAND_W, WAND_DW
– WOR_B, WOR_W, WOR_DW
– WXOR_B, WXOR_W, WXOR_DW
LOJİK İŞLEM KOMUTLARI
LOJİK İŞLEM KOMUTLARI
• IN1 VE IN2’DE YER ALAN GİRİŞLERİN
KARŞILIKLI BİTLERİNİ LOJİK OLARAK
AND/OR/XOR İŞLEMİNE TABİ TUTAR VE
SONUCU OUT’A YAZAR.
INVERTING
• BAYT (INVB), WORD (INVW) VE DOUBLE
WORD (INVD) TERS ÇEVİRME KOMUTLARI,
“IN”DE YER ALAN DEĞİŞKENİN 1’Lİ
TÜMLEYENİNİ ALIR VE SONUCU “OUT”A
YAZAR.
ALGORİTMA & YAPISAL
PROGRAMLAMA
ALGORİTMA NEDİR?
• BİR PROGRAMIN KODLARINI YAZMAYA
BAŞLAMADAN ÖNCE YAPILACAK İŞLERİN YAZIYLA
VEYA ŞEMAYLA BELİRLENMESİDİR.
• YA DA BİR PROBLEMİN ÇÖZÜMÜNE YÖNELİK
OLARAK HAZIRLANAN ANLAŞILIR ADIM YA DA
İŞLEMLERİN ARD ARDA TANIMLANMASI VE
İZLENECEK YÖNTEMİN ORTAYA KOYULMASI.
ALGORİTMANIN FAYDALARI
• PROGRAMIN DAHA ANLAŞILIR OLMASI
SAĞLANIR. PROGRAMIN AKIŞI KOLAYCA TAKİP
EDİLİR.
• UZUN VE KARIŞIK PROGRAMLAR DAHA BASİT
PARÇALARA AYRILIR.
• PROGRAMDA KARŞILAŞILABİLECEK HATALARIN
ÖNCEDEN TESPİTİNİ SAĞLAR.
AKIŞ DİYAGRAMLARI
• ALGORİTMANIN GRAFİK SEMBOLLER
KULLANILARAK İFADE EDİLMESİYLE AKIŞ
DİYAGRAMLARI OLUŞUR.
• PROGRAMIN DAHA ANLAŞILIR OLMASINI
SAĞLANIR.
• MANTIKSAL HATALARIN OLMASI ENGELLENİR.
SEMBOLLER
BAŞLA / DUR
X,Y
T=X+Y
VERİ GİRİŞİ
İŞLEM
SEMBOLLER
SORGU / KARAR
DÖNGÜ
ÇIKTI
KLAVYEDEN GİRİLEN İKİ SAYININ TOPLAMINI
EKRANA YAZ
BAŞLA
•
•
•
•
•
BAŞLA
OKU A,B
TOP=A+B
YAZ TOP
DUR
A,B
TOP=A+B
TOP
DUR
KLAVYEDEN GİRİLEN İKİ SAYININ BÜYÜĞÜNÜ
EKRANA YAZ
•
•
•
•
•
•
•
BAŞLA
OKU A,B
EĞER A>B
YAZ “A BÜYÜK”
DEĞİLSE
YAZ “B BÜYÜK”
DUR
BAŞLA
A,B
EVET
A>B?
HAYIR
B BÜYÜK
A BÜYÜK
DUR
DUR
PROGRALAMA
• PROGRAMLAMA TEMELDE İKİ FARKLI
YÖNTEMLE YAPILABİLİR
– YAPISAL
– DOĞRUSAL
DOĞRUSAL PROGRAMLAMA
• TÜM KOMUTLAR ALT
ALTA YAZILIR VE
SIRAYLA ÇALIŞTIRILIR
• SON KOMUTA GELİNCE
TEKRAR BAŞA
DÖNÜLÜR
KOMUT1
KOMUT2
KOMUT3
KOMUT4
….
YAPISAL PROGRAMLAMA
• BİR ANA PROGRAM VE ALT ROGRAMLARDAN
OLUŞAN PROGRAMLAMA MANTIĞIDIR
• ÇOK SIK OLARAK ÇALIŞTIRILAN KODLAR BİR ALT
PROGRAM OLARAK KAYDEDİLİR VE GEREKTİĞİNDE
ÇAĞIRILIR
• ALT PROGRAMIN İŞİ BİTTİĞİNDE ANA PROGRAM
KALDIĞI YERE GERİ DÖNER VE ALTTAKİ KOMUTTAN
ÇALIŞMAYA DEVAM EDER
YAPISAL PROGRAMLAMA
ALT_1
KOMUT1
ALT_1
KOMUT2
KOMUT3
ALT_2
KOMUT4
….
KOMUT 5
KOMUT6
KOMUT7
ALT_2
KOMUT 8
KOMUT9
NEDEN YAPISAL PROGRAMLAMA
• İŞLEMLER DAHA BASİT KÜÇÜK PARÇALARA
BÖLÜNDÜĞÜ İÇİN DAHA KOLAY
PROGRAMLAMA İMKANI SAĞLAR
• AYNI KODLARI TEKRAR TEKRAR YAZMAKTAN
KURTULURUZ
• PROGRAMIN OKUNMASI VE ANLAŞILMASI
DAHA KOLAY OLUR
AKIŞ KONTROLÜ
• AKIŞ KOMUTLARI, PROGRAMI DURDURMAYA,
ALTPROGRAM ÇAĞIRMAYA, ANA PROGRAMA
GERİ DÖNMEYE, BAŞKA BİR AĞA DALLANMAYA
YARAYAN KOMUTLARDIR
• ÇOK DAHA GELİŞMİŞ PROGRAMLAR YAZMAYA
YARAR
AKIŞ KONTROL KOMUTLARI
•
•
•
•
•
•
•
•
•
•
END
STOP
JMP
LABEL
SBR
RET
FOR
NEXT
WDR
SCR
END
• END KOMUTU AKIF OLURSA ANA PROGRAMI
SONLANDIRIR
• MICROWIN32 OTOMATİK OLARAK END
KOMUTUNU PROGRAM SONUNA EKLER
• SADECE ANA PROGRAMDA KULLANILMALI,
ALT PROGRAM VE KESME PROGRAMLARINDA
KULLANILMAMALIDIR
END
• EĞER I0.2 AKTİF
İSE PROGRAMI
SONLANDIR VE
TARAMAYA
YENIDEN BASLA
STOP
• STOP KOMUTU ÇALIŞTIĞINDA PLC’Yİ RUN
KONUMUNDAN STOP KONUMUNA GETİRİR VE
PROGRAMIN ÇALIŞMASINI DURDURULUR
• PROGRAMIN ÇALIŞMAYA DEVAM ETMESİ İÇİN
PLC’NİN RUN KONUMUNA (SWITCH İLE VEYA
EDİTORDEN > İLE) ALINMASI GEREKİR
STOP
• STOP KOMUTU KESME PROGRAMLARINDA
UYGULANIRSA, KESME PROGRAMI
SONLANDIRILIR, TÜM SIRADA BEKLEYEN
KESMELER İPTAL EDİLİR, O TARAMADAKİ
İŞLEMLERLE BİRLİKTE ANA PROGRAMIN
ÇALIŞMASI DA DURDURULUR
JMP & LABEL
• JMP KOMUTU ROGRAMI BELİRTİLEN ETİKETE
(NETWORK’E) GÖNDERİR
• BÖYLECE, BAZI ŞARTLAR GERÇEKLEŞTİĞİNDE
ÇALIŞMASINI İSTEMEDİĞİMİZ KOMUTLARDAN
KURTULMUŞ OLURUZ
JMP & LABEL
• YANDAKİ PROGRAMDA
EĞER I0.2 AKTİFSE
PROGRAM NETWORK4’E
ATLAR VE ORADAN
İTİBAREN ÇALIŞMAYA
DEVAM EDER
ALT PROGRAM
• PROGRAMDA SIK SIK TEKRAR EDİLEN İŞLER
(KOMUTLAR) BİR ALT PROGRAM OLARAK YAZILIR VE
GEREKTİĞİNDE ÇAĞRILIR
ALT_1
KOMUT1
ALT_1
KOMUT2
KOMUT3
ALT_2
KOMUT4
….
KOMUT 5
KOMUT6
KOMUT7
ALT_2
KOMUT 8
KOMUT9
SBR & RET
• ALT PROGRAM ÇAĞIRMAK İÇİN «SBR» ALT
POGRAMDAN GERİ DÖNMEK İÇİN İSE «RET»
KOMUTU KULLANILIR
KOMUT1
KOMUT2
SBR_1
KOMUT3
KOMUT4
KOMUT5
SBR_1
KOMUT7
KOMUT 8
KOMUT9
UYGULAMA
• I0.2 AKTIFSE SAGA_KAYAN_LAMBA
ALTPROGRAMI, DEĞİLSE SOLA_KAYAN_LAMBA
ALTPROGRAMI ÇALIŞSIN
ANA PROGRAM
SAGA_KAYAN_LAMBA
SOLA_KAYAN_LAMBA
RET
• ----| |-------(RET)
• ÖNÜNDEKİ KONTAKLAR AKTİF İSE ALT
PROGRAMDAN ÇIKIP ANA PROGRAMA
DÖNDÜRÜR
• MICROWIN 3.2 VE DAHA ÜSTÜ SÜRÜMLERDE
EN SONA (GÖRÜNMESE DE) OTOMATİK
KOYULUR
FOR - NEXT
• FOR İLE NEXT ARASINDA OLAN KOMUTLARIN
BELİRLİ SAYIDA ÇALIŞMASINI SAĞLAR
– FOR
• KOMUT1
• KOMUT2
•…
– NEXT
FOR - NEXT
• INIT: BAŞLANGIÇ DEĞERİ
• FINAL:BİTİŞ DEĞERİ
• INDX: DÖNGÜNÜN KAÇ DEFA
ÇALIŞTIĞINI TUTAR
UYGULAMA
• FOR-NEXT VE INC KOMUTLARIYLA 1’DEN 5’E
KADAR SAYDIRALIM
UYGULAMA
UYGULAMA
• BİR OTO YIKAMACIDA
SU DEPOSU VARDIR.
ŞEBEKEDE SU VARSA
DEPO
KULLANILMAYACAK,
ŞEBEKE SUYU
KESİLDİYSE POMPA
ÇALIŞARAK SU
BASACAKTIR
I0.0
BASINÇ
ANAHTARI
I0.3
KAP.
SENSÖR
Q0.1
VALF1
SU >>
DEPO
I0.4
KAP. SENSÖR
Q0.3
VALF3
Q0.2 VALF2
Q0.4
POMPA
UYGULAMA
• ŞEBEKEDE SU VARSA I0.0 AKTİFTİR
• ŞEBEKEDE SU OLDUĞU SÜRECE VALF2 ÇALIŞSIN, AYNI
ZAMANDA POMPA DA ÇALIŞTIRILABİLSİN
• ŞEBEKEDE SU YOKSA VALF2 KAPANSIN, VALF3 AÇILSIN, POMPA
ÇALIŞTIRILABİLSİN
• DEPO DOLU İSE I0.3 AKTIF OLUR VE VALF1 KAPANIR
• DEPO BOŞ İSE VE ŞEBEKEDE SU VARSA VALF3 KAPANSIN
• ŞEBEKEDE SU YOKSA VE DEPO BOŞ İSE POMPA
ÇALIŞTIRILAMASIN
INTERRUPT & INTERRUPT
ALTPROGRAMLARI
ÇEVRİM ZAMANI
• PLC, GİRİŞE GELEN SİNYALLERİ OKUR, PROGRAM
İÇİNDE ÇALIŞTIRIR VE İŞLEM SONUÇLARINI ÇIKIŞLARA
YAZAR; BUNA ÇEVRİM DENİR
• PLC’DEKİ ÇEVRİM SÜRESİNİ ÖĞRENMEK İÇİN
– PLC\ INFORMATION
• KOMUT SAYISI NE KADAR FAZLA İSE ÇEVRİM SÜRESİ
DE O KADAR FAZLA OLUR
ÇEVRİM ZAMANI
• SON ÇEVRİMİN SÜRESİ, MAX. VE MIN. ÇEVRİM
SÜRELERİ ÖĞRENİLEBİLİR
INTERRUPT
• EĞER PLC ÇEVRİM SÜRESİ ÇOK UZUN VE
GİRİŞTEKİ SİNYALLER ÇEVRİMDEN DAHA KISA
SÜREDE DEĞİŞİYORSA BU SORUN OLABİLİR
• ÖRNEĞİN İLK ÇEVRİMDE I0.0 LOJİK0 OLDU,
ÇEVRİM DEVAM EDERKEN LOJİK1 VE DAHA
ÇONRA TEKLAR LOJİK0 OLDUYSA BU GİRİŞ
SİNYALİ İŞLENMEZ
INTERRUPT
TARAMA SÜRESİ
GİRİŞLERİ
OKU
I0.0
PROGRAMI ÇALIŞTIR
ÇIKIŞLARA
YAZ
INTERRUPT
• EĞER GİRİŞTEKİ SİNYALLER ÇEVRİMDEN ÇOK
DAHA HIZLI DEĞİŞİYORSA BU DURUMDA
INTERRUP (KESİNTİ) KULLANILIR
• PLC BİR KESİNTİ ALDIĞINDA O ANDA YAPTIĞI
İŞİ BIRAKIR, SİNYAL GELEN PORTUN İŞİNİ
GÖRÜR VE DAHA SONRA KALDIĞI YERDEN
DEVAM EDER
INTERRUPT
• PLC, BİR
KESİNTİ
ALDIĞINDA
İLGİLİ ALT
PROGRAMI
ÇALIŞTIRIR
INT_1
KOMUT1
INT_1
KOMUT2
KOMUT3
INT_2
KOMUT4
….
KOMUT 5
KOMUT6
KOMUT7
INT_2
KOMUT 8
KOMUT9
KESME TİPLERİ
• FARKLI İŞLEMLER FARKLI KESMELER
OLUŞTURABİLİR. KESME TİPLERİ AŞAĞIDAKİ
GİBİDİR:
– GİRİŞ-ÇIKIŞ KESMELERİ
– İLETİŞİM PORTU KESMELERİ
– ZAMANA BAĞLI KESMELER
GİRİŞ-ÇIKIŞ KESMELERİ
• GİRİŞ VE ÇIKIŞLARDA ELDE EDİLEN
SİNYALLERİN OLUŞTURDUĞU KESMELERDİR.
• ÖRNEĞİN I0.0’A BİR YÜKSELEN KENAR
GELDİĞİNDE, EVENT=2 OLAYI GERÇEKLEŞİR;
BU OLAY GERÇEKLEŞTİĞİNDE, (ATCH) KOMUTU
KULLANILARAK BİR ALT PROGRAM
ÇALIŞTIRILIR
ATCH
• ATCH KOMUTU BİR
SİNYAL GELDİĞİNDE
BELLİ BİR
ALTPROGRAMIN
ÇALIŞTIRILMASINI
SAĞLAR
ATCH
• «INT» GİRİŞİ HANGİ ALT
PROGRAMIN
ÇALIŞACAĞINI, «EVNT»
GİRİŞİ İSE HANGİ OLAY
GERÇEKLEŞTİĞİNDE ALT
PROGRAMIN
ÇALIŞACAĞINI BELİRLER
ATCH
• YANDAKİ KOMUTTA
EVENT=0
OLDUĞUNDAN DOLAYI
I0.0 YÜKSELEN
KENARINDA INT_0 ALT
PROGRAMI ÇALIŞIR
ATCH
• «EVNT» GİRİŞİNDEKİ OLAYLAR İÇİN S7-200
EDİTÖRÜNDE «ATCH» KOMUTUNUN ÜZERİNE GELİP
«F1» TUŞUNA BASIN
INTERRUP EVENT PRIORITY TABLE
DTCH
• DAHA ÖNCEDEN (ATCH) KOMUTU İLE
BELİRTİLEN İLİŞKİYİ KALDIRIR VE OLAY
GERÇEKLEŞTİĞİNDE KESİNTİ ALT
PROGRAMININ ÇALIŞMASINI ENGELLER
ENI & DESI
• CPU «RUN» KONUMUNA ALINDIĞINDA KESME
ALT PROGRAMLARI DEVREDE DEĞİLDİR
• KESME ALT PROGRAMLARININ ÇALIŞABİLMESİ
İÇİN (ENI) KOMUTU ÇALIŞTIRILMALIDIR
• (DISI) KOMUTU İSE (ENI) KOMUTUNUN TAM
TERSİNİ YAPAR, YANİ, KESME ALT
PROGRAMLARINI ENGELLER
RETI
• KESME ALTPROGRAMININ BİTİRİLMESİ VE ANA
PROGRAMA DÖNÜLMESİNİ SAĞLAR
• -----| |----------(RETI)
• MICROWIN 3.2 VE DAHA ÜSTÜ SÜRÜMLER BU
KOMUTU (GÖRÜNMEZ OLARAK) SATIR
SONUNA OTOMATİK KOYAR
ANINDA KOMUTLAR
• PLC GİRİŞLERİNE GELEN SİNYALLERİN
ÇEVRİMDEN BAĞIMSIZ OLARAK
ÇALIŞTIRILMASINI VE İŞLEM SONUÇLARININ
ÇIKIŞLARA GÖNDERİLMESİNİ SAĞLAR
• BU KOMUTLARIN KESİNTİ ALTPROGRAMLARI
İÇİNDE KULLANILMASI GEREKİR
UYGULAMA
• I0.1 AKTIF OLDUĞUNDA Q0.0 AKTIF OLSUN
• I0.2 AKTIF OLDUĞUNDA İSE ÇEVRİMİN
BİTMESİNE GEREK KALMADAN HEMEN
KAPATILSIN
ANA PROGRAM
INT_0
UYGULAMA
• İKİ MOTORLU BİR SİSTEMDE ÇALIŞTIRMA VE
DURDURMA İÇİN 4 BUTON
KULLANILMAKTADIR
– I0.0: 1. MOTORU ÇALIŞTIR
– I0.1: 1.MOTORU YÜKSELEN KENAR M1 KESİNTİ
ALTPROGRAMI İLE DURDUR
– I0.2: 2. MOTORU ÇALIŞTIR
– I0.3: 2. MOTORU DÜŞEN KENAR M2 KESİNTİ
ALTPROGRAMI İLE DURDUR
ANA PROGRAM(1/2)
ANA PROGRAM(2/2)
M1 INTTERRUPT
M2 INTERRUPT
İLETİŞİM PORTU KESMELERİ
• PORT_0 VE VARSA PORT_1’İN OLUŞTURDUĞU
KESMELERDİR.
• ÖRNEĞİN İLETİM TAMAMLANDIĞINDA
EVENT=9 OLAYI GERÇEKLEŞİR
• (ATCH) KOMUTUYLA BU OLAYA BİR ALT
PROGRAM İLİŞTİRİLEBİLİR
İLETİŞİM PORTU KESMELERİ
• PORT_0: KARAKTER ALIMI = EVENT8
• PORT_0: İLETİM TAMAMLANDI = EVENT9
• PORT_0: MESAJ ALIMI TAMAMLANDI = EVENT23
• PORT_1: KARAKTER ALIMI = EVENT25
• PORT_1: İLETİM TAMAMLANDI = EVENT26
• PORT_1: MESAJ ALIMI TAMAMLANDI = EVENT24
ZAMANA BAĞLI KESMELER
• BELİRLİ ZAMAN ARALIKLARIYLA KESME ALT PROGRAMLARININ
ÇALIŞMASINI VEYA BİR OLAY GERÇEKLEŞTİKTEN BELLİ BİR
SÜRE SONRA BİR ALT PROGRAMIN ÇALIŞMASINI SAĞLAR
• SÜRE, 1-255 MS ARASI OLABİLİR
• ARALIKLI KESMELERDE EVNT=10 İÇİN SMB34 ADRESİNE,
EVNT=11 İÇİN SMB35 ADRESİNE DEĞER TAŞINIR VE SÜRE
BELİRLENİR
• GEÇİKMELİ KESMELER İÇİN T32 VE T96 ZAMANLAYICILARI
KULLANILIR
UYGULAMA
• 5MS’DE BİR KAZANDAKİ SICAKLIĞI OKUYAN
KESME ALTPROGRAMI
– SICAKLIK SENSÖRÜ PLC’NİN İLK ANALOG PORTU
OLAN «AIWO» ADRESİNE BAĞLI
ANA PROGRAM
ALTPRORAM
GERÇEK ZAMAN SAATİ
GERÇEK ZAMAN SAATİ
• GÜNÜN BELİRLİ SAATLERİNDE BELİRLİ
İŞLEMLERİN YAPILMASINI SAĞLAR
• ÖRNEĞİN SABAH SAAT 8’DE IŞIKLARIN
AÇILMASI VE 17’DE KAPANMASI GİBİ…
• 224 VE 226 CPU’LARDA ENTEGRE OLARAK GZS
VARDIR; DİĞER CPU’LARA BİR PİL
TAKILMALIDIR
GERÇEK ZAMAN SAATİ
• AŞAĞIDAKİ BİLGİLER BİLİNMELİ VE VBXX
ADRESİNE SIRAYLA YAZILMALIDIR
–
–
–
–
–
–
–
–
YIL
AY
GÜN
SAAT
DAKİKA
SANİYE
BOŞ
GÜN
:00-99  16#72  (VB200)
:01-12  16#07  (VB201)
:01-31  16#07  (VB202)
:00-23  16#15  (VB203)
:00-59  16#00  (VB204)
:00-59  16#00  (VB205)
:01-07  16#01 (VB207)
GERÇEK ZAMAN SAATİ
VB ADRESLERİ
YIL (00-99)
SET RTC
AY (01-12)
GÜN (01-31)
READ RTC
SAAT (00-23)
TARİH
AYARLANIR
DAKİKA(00-59)
SANİYE(00-59)
BOŞ
GÜNLER
TARİH
OKUNUR
VE KULLANILIR
GERÇEK ZAMAN SAATİ
• SET_RTC KOMUTU DONANIMA
GERÇEK ZAMAN SAATİNİ VBXX
ADRESİNDEN BAŞLAYARAK 8 BYTE
OLARAK YAZAR
• READ_RTC KOMUTU İSE
DONANIMDAM GERÇEK ZAMAN
SAATİNİ VBXX ADRESİNDEN
BAŞLAYARAK 8 BYTE OLARAK
OKUR
UYGULAMA
• PLC GEÇEK ZAMAN SAATİNİ 19 MAYIS 2012
SAAT 09.00 OLARAK AYARLAYALIM
UYGULAMA
UYGULAMA
UYGULAMA-2
• HER GÜN SAAT 08.00’DA VE 17.30’DA Q0.0 10
SN AKTİF OLSUN
ANALOG GİRİŞ ÇIKIŞ İŞLEMLERİ
DİJİTAL GİRİŞ/ÇIKIŞ ELEMANLARI
• PLC GİRİŞLERİNE LOJİK0 VEYA LOJİK1
UYGULAYAN ELEKTROMEKANİK
ELEMANLARDIR:
–
–
–
–
–
–
–
TRANSİSTÖR SVİÇLER
YAKLAŞIM SENSÖRLERİ
FOTOSELLER
LİMİT SVİÇLER
TERMOSTATLAR
BASINÇ SVİÇLERİ
ENCODER
ANALOG GİRİŞ/ÇIKIŞ ELEMANLARI
• PLC ANALOG GİRİŞLERİNE 8 VEYA 12 BIT
SİNYAL GÖDEREN ELEKTROMEKANİK
ELEMANLARDIR
– SICAKLIK
– AĞIRLIK
– BASINÇ
– DEBİ
– NEM
– V.B SENSÖRLERDİR…
ANALOG GİRİŞ ELEMANLARI
• ANALOG SENSÖRLER PLC’NİN SADECE
ANALOG GİRİŞLERİNE BAĞLANABİLİR
• BU NEDENLE, YA YENİ ALINAN PLC’DE
ENTEGRE ANALOG PORT OLMALI YA DA
MODÜL SATIN ALINMALIDIR
ANALOG TO DIGITAL CONVERTER
(ADC)
• PLC KENDİ İÇİNDE SADECE DİJİTAL SAYILARLA
(10001101) ÇALIŞIR
• BU NEDENLE ANALOG GİRİŞLERE BAĞLANAN
SENSÖR DEĞERLERİ GENLİĞİ İLE ORANTILI
OLARAK İKİLİ SAYIYA DÖNÜŞTÜRÜLÜR
• ADC GİRİŞİ AKIM VEYA GERİLİM OLABİLİR
ANALOG TO DIGITAL CONVERTER
(ADC)
• ADC ÇIKIŞINDAKİ BİT SAYISI GİRİŞE
UYGULANAN SİNYALİN KAÇA BÖLÜNECEĞİNİ
GÖSTERİR
• 8 BİTLİK ADC, GİRİŞİ 256’YA BÖLER
D0
ANALOG
GİRİŞ
ADC
CPU
D7
ANALOG TO DIGITAL CONVERTER
(ADC)
• 12 BITLIK ADC, 0-10V ARALIĞINDAKİ GERİLİMİ
AŞAĞIDAKİ ARALIKTA BÖLER
– 10 VOLT / 2 12 -1=2.44mV
• YANİ:
– 0V GELİRSE
– 2.44mV GELİRSE
– 4.88mV GELİRSE
– 10V GELİRSE
000000000000
000000000001
000000000010
111111111111
ANALOG GİRİŞ PORTU
• ANALOG GİRİŞ PORTU, GİRİŞİNE UYGULANAN
ANALOG SİNYALİ 12 BİTLİK DİJİTAL SAYIYA
ÇEVİRİP BELLEKTE BULUNAN 16 BİTLİK AIWX
ADRESİNE YERLEŞTİRİR
ANALOG GİRİŞ PORTLARI
• FARKLI PLC’LERDE FARKLI ANALOG PORTLAR
MEVCUTTUR. BU PORTLAR AŞAĞIDAKİ
SİNYALLERLE ÇALIŞABİLİR:
– 0-10V VEYA -10/+10V (GERİLİM)
– 0-20mA VEYA 4-20mA (AKIM)
• PLC’DEKİ ANALOG PORTA GÖRE SENSÖR SATIN
ALINMALIDIR
ANALOG GİRİŞ PORTLARI
• S7-200/224XP MODELİNDE 2 ADET ANALOG
GİRİŞ PORTU VARDIR
• GEREKİRSE MODÜL TAKILARAK ANALOG GİRİŞ
SAYISI ARTTIRILABİLİR
• ANALOG GİRİŞ ADRESLERİ:
– AIW0
– AIW2
DIGITAL TO ANALOG CONVERTER
(DAC)
• GİRİŞE UYGULANAN DİJİTAL VERİNİN
BÜYÜKLÜĞÜNE BAĞLI OLARAK ÇIKIŞA AKIM
VEYA GERİLİM UYGULAYAN DEVRELERDİR
D0
CPU
DAC
D7
ANALOG
ÇIKIŞ
DIGITAL TO ANALOG CONVERTER
(DAC)
• 12 BITLIK DAC, 0-10V ARALIĞINDAKİ GERİLİMİ
AŞAĞIDAKİ ARALIKTA BÖLER
– 10 VOLT / 2 12 -1=2.44mV
• ÇIKIŞ (ANALOG)
– 0V
– 2.44mV
– 4.88mV
– 10V
VERİ(DİJİTAL)
000000000000
000000000001
000000000010
111111111111
ANALOG ÇIKIŞ PORTLARI
• S7-200/224XP MODELİNDE 1 ADET ANALOG
ÇIKIŞ PORTU VARDIR
• GEREKİRSE MODÜL TAKILARAK ÇIKIŞ SAYISI
ARTTIRILABİLİR
• ANALOG ÇIKIŞ ADRESLERİ:
– AQW0
UYGULAMA-1
• AIW0 ADRESİNDEKİ DEĞERİ AQW0 ADRESİNE
GÖNDERELİM
UYGULAMA-2
• AIW0 ADRESİNE BASINÇ SENSÖRÜ
BAĞLANMIŞTIR.
• BASINÇ 0-10 BAR ARASINDA DEĞİŞTİĞİNDE
ANALOG GİRİŞE 0-10V GERİLİM
UYGULANMAKTADIR
• ANALOG MODÜL 12 BİTLİKTİR
UYGULAMA-2
• ANALOG MODÜLÜN HİSSEDECEĞİ EN KÜÇÜK
GERİLİM NEDİR?
• BASINÇ 5.8 BAR İSE AIWO ADRESİNİN DEĞERİ
(İKİLİ+ONLU) NE OLUR?
• BASINÇ 5.8 BAR’IN ÜSTÜNE ÇIKTIĞINDA Q0.0
ADRESİNE BAĞLI SİREN 0.5 SN ARALIKLARLA
ÇALSIN
UYGULAMA-2
• ANALOG MODÜL 12 BİT OLDUĞUNA GÖRE
ADIM SAYISI=2 12 -1=4095
• ANALOG GİRİŞİN HİSSEDECEĞİ EN KÜÇÜK
GERİLİM:
– 10/4095=2.44mV
UYGULAMA-2
• BASINÇ 5.8 BAR OLDUĞUNDA AIW0 ADRESİNE
5.8V UYGULANIR
• ANALOG GİRİŞE 10V/10 BAR GELİRSE DİJİTAL
OLARAK 111111111111, DECIMAL OLARAK
32.760 OLUR
– 10 BAR 32760 ÜRETİRSE
– 5.8 BAR 19.001 ÜRETİR
----|AIW0
> ı |-----|SM0.5|-----(Q0.0)
19001
UYGULAMA-3
• AIWO ADRESİNE UYGULANAN 0-10V ARASI
GERİLİM İLE FARKLI FREKANSLARDA KARE
DALGA ÜRETİMİ
YÜKSEK HIZLI ÇIKIŞLAR, PTO &
PWM
YÜKSEK HIZLI ÇIKIŞLAR
• PLC’LERDE NORMAL TARAMA DÖNGÜSÜ
DIŞINDA ÇALIŞAN HIZLI PALS (PTO) VE
GENİŞLİK MODÜLASYONU (PWM) ÇIKIŞLARI
VARDIR
• S7-200 AİLESİNDE Q0.1 VE Q0.2 ADRESLERİ
HIZLI ÇIKIŞ OLARAK KULLANILABİLİR
PTO
• «PULSE TRAIN OUTPUT» KELİMELERİNİN
KISALTILMIŞIDIR
• YÜKSEK FREKANSTA KARE DALGA ELDE ETMEK
İÇİN KULLANILIR
OFF
1/2
CYCLE
ON
1/2
PTO
• YÜKSEK HIZLI KARE DALGALAR (PTO)
GENELLİKLE STEP MOTOR KONTROLÜNDE
KULLANILIRLAR
SÜRÜCÜ
KARE DALGA
STEP MOTOR
PTO
• PTO SİNYALİ ELDE ETMEK İÇİN SİHİRBAZ
KULLANILIR
PWM
• «PULSE WIDTH MODULATION»
KELİMELERİNİN KISALTILMIŞIDIR
• DALGANIN ON/OFF SÜRESİNİ DEĞİŞTİREREK
ELDE EDİLEN SİNYALDİR; BÖYLECE ORTALAMA
ÇIKIŞ VOLTAJI DA DEĞİŞİR
• ÇIKIŞ VOLTAJI=NORMAL ÇIKIŞ VOLTAJI x PALS
GENİŞLİĞİ / PERİYOT
PWM
• T=4 SN İSE
– ÇIKIŞ VOLTAJI=24 x 1/4 = 6 VOLT
24V
OFF
3/4T
T
ON
1/4T
PWM
• PWM GENELLİKLE DC MOTOR HIZ
KONTROLÜNDE KULLANILIR
PWM DALGA
DC MOTOR
PWM
• PWM SİNYALİ ELDE ETMEK İÇİN SİHİRBAZ
KULLANILIR
HIZLI SAYICILAR
HIZLI SAYICILAR
• NORMAL ÇEVRİM HIZIYLA YAKALANAMAYAN
YÜKSEK HIZLI GİRİŞLERİ SAYMAK AMACIYLA
KULLANILAN SAYICILARDIR
• HIZLI SAYICILARDA MAKSİMUM OKUMA
FREKANSI 20KHZ İLE 200KHZ ARASI
DEĞİŞEBİLİR; FREKANSA GÖRE PLC TERCİH
EDİLMELİDİR
HIZLI SAYICILAR
TARAMA SÜRESİ
GİRİŞLERİ
OKU
I0.0
PROGRAMI ÇALIŞTIR
ÇIKIŞLARA
YAZ
HIZLI SAYICILAR
• KLASİK SAYICILARDA OLDUĞU GİBİ, YUKARI,
AŞAĞI VE YUKARI-AŞAĞI SAYABİLİRLER
• HIZLI SAYICILARIN GİRİŞ SİNYALİ TEK SİNYAL
OLABİLDİĞİ GİBİ ÇİFT SİNYAL DE OLABİLİR
• HIZLI SAYICILARA GENELDE GİRİŞ SİNYALİ
OLARAK ENCODER ÇIKIŞI VERİLİR
ENCODER
• BİR MİLİN DÖNÜŞÜ İLE BELLİ BİR MİKTARDA
KARA DALGA ÜRETEN CİHAZLARDIR
• ÖRNEĞİN MİLİN/MOTORUN BİR TURUNDA
8,16, …, 100, 200 VEYA 360 KARE DALGA
ÜRETEBİLİRLER; BÖYLECE KARE DALGA
SAYISINA BAKARAK MOTORUN DÖNÜŞÜ
KONTROL EDİLİR
ENCODER
• ÇOK DEĞİŞİK BOY VE
ÖZELLİKLERDE
ENCODER
BULUNMAKTADIR
• TEK FAZLI, ÇİFT FAZLI,
ARTIMLI VE MUTLAK
ENCODERLAR
BULUNMAKTADIR
ENCODER
HIZLI SAYICI GİRİŞLERİ
• FARKLI HIZLI SAYICI ADRESLERİ FARKLI PALS
GİRİŞİ, YÖN KONTROL, RESET VE START
GİRİŞLERİ KULLANIR
• BU NEDENLE HANGİ SAYICI KULLANILACAKSA
ONA GÖRE BAĞLANTI VE AYAR YAPILMALIDIR
• SONRAKİ SLAYTTA HIZLI SAYICILAR VE GİRİŞ
PORTLARI GÖRÜLÜR
HIZLI SAYICI GİRİŞLERİ
ENCODER MODLARI
• ENCODER’LAR HIZLI SAYICILARDA 12 FARKLI
MODDA ÇALIŞTIRILABİLİR
• BİR SONRAKİ SLAYTTA HANGİ MOD’UN HANGİ
PORTLARLA ÇALIŞTIĞINI VE İŞLEVİNİN NE
OLDUĞUNU BELİRTEN TABLOYU
GÖREBİLİRSİNİZ
ENCODER MODLARI
HS SİHİRBAZI
OPERATÖR PANELLER
OPERATÖR PANELLER
• OPERATÖR PANELLER, PLC’DEKİ VERİLERİ
İZLEMEYE VEYA DEĞİŞTİRMEYE YARAYAN
METİN VEYA GRAFİK YABANLI EKRANLARDIR
• ÖRNEĞİN BİR SAYICININ DEĞERİ İZLENEBİLİR
VEYA BİR REZİSTANSIN ÇALIŞACAĞI
MAKSİMUM SICAKLIK GİRİLEBİLİR
TD 200
• SIEMENS’İN EN UCUZ VE EN KÜÇÜK
OPERATÖR PANELİDİR
• METİN TABANLIDIR; GRAFİK DESTEĞİ YOKTUR
• MICROWIN İLE PROGRAMLANIR; DİĞER
PANELLER GİBİ AYRI BİR YAZILIMA İHTİYAÇ
DUYMAZ
TD 200
• 2 SATIRx20 KARAKTER EKRANI VE 8 ADET
FONKSİYON TUŞU VARDIR
TD 200
• F1-F4 TUŞLARI DOĞRUDAN ÇALIŞIR
• F5-F8 TUŞLARI İÇİN «SHIFT» TUŞUNA DA
BASILMALIDIR
• «ESC» TUŞU VERİ GİRİŞİNİ İPTAL ETMEK,
«ENTER» TUŞU İSE VERİ GİRİŞİNİ ONAYLAMAK
İÇİN KULLANILIR
• YUKARI-AŞAĞI YÖN TUŞUYLA MESAJLAR
ARASINDA GEZEBİLİRSİNİZ
TD 200
• VERSİYONA GÖRE, ÜZERİNDEKİ FONKSİYON
TUŞLARI YA MX.Y ADRESİNDEKİ BİTLERİ SET
EDER, YA DA DOĞRUDAN KONTAKLARI AÇIP
KAPATIR
• V2.1 VE SONRASI DOĞRUDAN KONTAKLARI
KONTROL EDER
MX.7
MX.6
MX.5
MX.4
MX.3
MX.2
MX.1
MX.0
F8
F7
F6
F5
F4
F3
F2
F1
TD 200BAĞLANTI
• TD 200 SERİ KABLO İLE PLC PORTUNA
BAĞLANIR VE BU ŞEKİLDE PLC İLE HABERLEŞİR
• AYRICA 24V BESLEME GEREKLİDİR
• TD 200 İÇİNE YAZILIM ATILMAZ; YAZILIM
S7200 PLC İÇİNDE ÇALIŞIR
TD 200 SİHİRBAZI
UYGULAMA-1
• M1 İSİMLİ MOTOR ÇALIŞIYORSA «MOTOR
ÇALIŞIYOR», ÇALIŞMIYORSA «MOTOR
ÇALIŞMIYOR» MESAJI YAZSIN
UYGULAMA-2
• M1 MOTORUNU F1 İLE START, F2 İLE STOP
EDELİM
UYGULAMA-3
• SAYICI DEĞERİ 5 OLDUĞUNDA M1 MOTORU
ÇALIŞSIN, SAYICI DEĞERİ OPERATÖR
PANELDEN İZLENEBİLSİN

Benzer belgeler