You are on page 1of 28

İÇİNDEKİLER

1. Giriş 2
2. PLC Yapısı 3
3. PLC ile Röle Sistemi Arasındaki Farklar 3
4. PLC Seçim Ölçütleri 4
5. S7-200 PLC Ve Genel Özellikleri 4
6. İşletim Sistemi 5
7. PLC Programlanması 6
8. Zamanlayıcı ve Sayıcılar 9
9. Matematiksel İşlemler 16
10. Deneysel Çalışmalar 27
1. Asenkron Motora Yolverme Yöntemleri
2. Asenkron Motora Yıldız Üçgen Yolverme
3. Taşıyıcı Nakil Aracı Kontrolü
4. Boya Kazanı Denetimi
5. Dolum Tesisi Otomasyonu
6. Zaman (Time ) Diyagramlarında PLC Programının Yazılması
7. Otomatik Giriş Kapısının PLC Üzerinden Denetimi
8. Bilgi Yarışması Otomasyon Düzeneği Denetimi

1. Giriş

1
Endüstriyel otomasyon sistemleri, her geçen gün, artan bir hızla gelişmekte ve üretim
sürecindeki işlevleri artmaktadır. Otomasyon sistemlerinin tasarımı ve etkin kullanımı için
gerekli olan temel unsur bilgi ve bilgiye erişim hızıdır.

Günümüzde, en iyi, en hızlı ve en verimli üretimi sağlamanın temel çözümü olan


endüstriyel otomasyon, bütün dünyada büyük bir hızla gelişmekte ve yaygınlaşmaktadır.
Bu durum, bu konuda her geçen gün yetişmiş insan gücüne olan gereksinimi
arttırmaktadır. Ülkemizde de üretimi dünyadaki gelişmiş ülkeler seviyesine yükseltmek
için endüstriyel otomasyona önem verilmeli ve "üretim nasıl arttırılmalı?" sorusuna cevap
aranmalıdır. İşte bu soruya verilen cevaplardan biriside seri üretim ve seri üretim
bantlarının kontrolüdür. Bant sistemlerinin yerinden ve yeni gelişen teknoloji sayesinde
internet aracılığı ile bir merkezden kontrolü ve bu işlem için hangi yöntemin
kullanılacağının tespitidir. İşte PLC (Programmable Logic Controller: Programlanabilir
Lojik Denetleyici) bize bu isteklerimize cevap verebilecek bir otomasyon cihazıdır.

Günümüzde endüstriyel otomasyon cihazları denilince ilk akla gelen cihaz PLC’dir.
Teknolojinin gelişmesine bağlı olarak da PLC’ ler de gelişmiş ve ilk PLC’lere göre epey
gelişmeye uğramıştır. Teknik gelişmeler ile PLC’ lere eklenen yeni özellikle ise;
• PID denetin kontrolünü yapabilmesi ,
• Denetim yerinden farklı mesafelerden PLC’lere internet aracılığı ile kontrol verilerinin
üretici firma tarafından belirlenen belirli protokoller aracılığı ile aktarılabiliyor olması,
• Step motor denetiminin ayrı sürücü sistemlerine ihtiyaç duyulmada PLC’ye ilave
edilecek ilave modüller aracılığıyla direkt olarak yapılabiliyor olması,
• Termokupl gibi sıcaklık algılayıcılarının ilave modüller aracılığıyla PLC’ye doğrudan
bağlanabilmesi,
• Hızlı darbe üreten sensörlerin, yaklaşım anahtarları v.b. gibi cihazların ürettikleri
darbeleri algılamak için geliştirilen modüller,
• Ve en önemlisi ise PLC’nin endüstriyel otomasyonda yaygınlığının artması için
firmalar tarafından hazırlanan paket yazılım programlarının teknik elemanların daha
kolay anlayabileceği ve kullanabileceği hale getirilmesi.

İşte bu gelişmeler sayesinde PLC’ler otomasyon sistemlerinde diğer sistemlere karşı


ciddi bir rakip olarak, teknolojik evrimini sürdürmektedirler.

PLC’ler çeşitli sanayi kuruluşlarının denetim ihtiyaçları düşünülerek, özel bilgisayar


kontrol sistemi olarak geliştirilmiştir. Bu yöntem kullanılarak kontrol işlemi oldukça
basitleştirilmiştir. PLC’ler sanayinin kumanda ihtiyacının duyulduğu her bölümde
kullanılabilmektedir.

PLC’ler giriş ve çıkış terminalleri bulunan basit bir kutu görünümündedir. Bunun
yanında bir programlama ünitesi ve ihtiyaca göre giriş ve çıkışların sayısını arttırmak için
ilave modüller bulunabilmektedir.

Günümüzde endüstriyel otomasyon sistemlerinin önemli bir alanını oluşturan kumanda ve


geri beslemeli kontrol sistemleri programlanabilir lojik denetleyici (PLC) veya
Programlanabilir Denetleyici (PCs) olarak adlandırılan aygıtlar ile gerçekleştirilir. PLC,
bu tür sistemlerin uygulanması için gerekli yazılım ve donanım özelliklerini taşır.

2
Kumanda sistemlerinin gerçekleşmesinde, lojik anahtarlama, zamanlama ve sayma gibi
işlevleri sağlayan yazılım özellikleri ve kumanda işaretlerinin dönüştürmesini sağlayan
giriş-çıkış birimleri kullanılır. Geri beslemeli kontrol sistemlerinde ise analog giriş-çıkış
birimleri, kontrol algoritmasının gerçekleşmesi için matematik işlem komutları ve kontrol
algoritmasının ön görülen örnekleme zamanlarında işletilmesini sağlayan ek özellikler
aranır.

Bir PLC, diğer sayısal veri işleme makineleri gibi merkezi işlem birimi, bellek birimi ve
giriş-çıkış birimlerinden oluşur. Ayrıca, programı yedeklemek yada başka bir PLC ’ye
aktarmak için ayrılabilir bir EEPROM belleği, giriş-çıkış sayısını artırmak için ayrık
genişleme birimi, analog giriş-çıkış birimi, enerji kesilmeleri durumunda PLC ’yi besleyen
yedek güç kaynağı gibi birimler de bulunur.

Merkezi işlem birimi, PLC’nin çalışmasını düzenleyen aritmetik ve lojik işlemleri


gerçekleyen, zamanlama, sayma gibi işlevleri sağlayan en önemli birimdir.

Bellek birimi; Giriş görüntü belleği, veri belleği, program belleği gibi kısımlara ayrılmış
olup, bu bellek alanları farklı işlevler için kullanılır.

Giriş birimi, kontrol edilen sistemle ilgili algılama ve kumanda elemanlarından gelen
elektriksel işaretleri PLC ’de işlenecek lojik gerilim seviyelerine dönüştüren birimdir.
Kontrol edilen sisteme ilişkin basınç, seviye, sıcaklık algılayıcıları, kumanda düğmeleri
sınır ve yakınlık anahtarı gibi elemanlardan gelen iki değerli işaretler (var-yok , 1 veya 0)
giriş birimi üzerinden alınır. Giriş birimi işaret seviyesi değerleri 24V, 48V, 100V-120V,
200V-240V doğru veya alternatif akım olabilir.

Çıkış birimi, PLC ’de hesaplanan çıkış noktalarına ilişkin lojik gerilim seviyelerini,
kontrol edilen sistemdeki kontaktör, röle, selenoid gibi kumanda elemanlarını sürmeye
uygun elektriksel işaretlere dönüştüren birimdir. Çıkış birimi röle, triyak yada transistörlü
devrelerden oluşabilir. Yüksek hızlı açma ve kapama gerektiren durumlarda, doğru
akımda transistörlü, alternatif akımda triyaklı çıkış birimleri diğer durumlarda genellikle
röleli çıkış birimleri kullanılır.

Her bir PLC, bir programlayıcı birimi ile programlanır. Programlayıcı birimi, kumanda
devresine ilişkin programın yazılması, PLC ’ye aktarılması yada PLC ’deki programın
alınması ve yeniden düzenlenmesi gibi amaçlar için kullanılan bir el programlayıcısı yada
kişisel bilgisayarlarda çalışan bir programlama yazılımı olabilir. Her PLC üreticisi firma,
özellikle kumanda devreleri ile ilgili kişilerin çok hızlı ve kolay uyum sağlayabilecekleri
programlama yazılımları geliştirmişlerdir.

2. PLC Yapısı

PLC’nin içinde bir mikroişlemci vardır. Yapılacak işlemler bir program haline getirilip
bellekte saklanır. Bellek elemanı olarak RAM, ROM PROM, EPROM veya EEPROM
kullanılır. Bellekte saklanılan program mikroişlemci tarafından okunarak işleme konur.

3
PLC’ ye programlar teknolojideki gelişmelere bağlı olarak FAX-MODEM kullanılarak
telefon hattından, klasik bir yöntem olan tuş takımı kullanılarak veya bilgisayar (PC) ile
RS 232 üzerinden aktarılabilir.

Anahtarlar Butonlar Sensörler Kontrol


Sinyalleri
Giriş Elemanı

Giriş terminalleri
LCD
program PLC GÖSTERGE
layıcı Çıkış birimleri LER

Çıkış Elemanları
Motor Selenoid Sürücü Elemanlar Yükler

PLC Kumanda Sisteminin Yapısı

PLC kumanda sistemi üç ana kısımdan oluşur.


A – Giriş Elemanı
B – Kontrol Ünitesi
C – Çıkış Elemanı

PLC’leri dört temel bölümden oluşmaktadır.


1) Merkezi İşlem Birimi ( CPU )
2) Bellek Birimi ( RAM,ROM, PROM vb.. )
3) Giriş Birimi ( IN )
4) Çıkış Birimi ( OUT )

2.1. Merkezi İşlem Birimi (CPU)

CPU, bellekle birlikte bir PLC’ye zeka veren kısım olup bellekte saklı programın
gerektirdiği bütün aritmetik, mantık ve veri işleme gibi operasyonlar bu birimde
gerçekleştirilir. Temelinde mikroişlemci denilen, çok yüksek oranda tümleşik devre
teknolojisinin bir ürünü yer alır. İki ayrı yapımcı aynı mikroişlemciyi kullanabilir, fakat
değişik işletim sistemleri nedeni ile sonuç PLC’ lerin yetenekleri farklı olabilir. İşletim
sistemi yapımcı tarafından hazırlanmış olup genelde PLC kullanıcısına açık değildir.
İşletim sistemi diyagnostik prosedürleri de içerir. Bu prosedürler genelde ilk başlangıçta
kendinden çalışan veya kullanıcı tarafından çalıştırılan olmak üzere iki genel türe
ayrılırlar. Birinci tür diyagnostikler, genelde, sadece işletim sisteminin kullandığı belleği
test ederler.Kullanıcı tarafından geliştirilen diyagnostikler ise bütün belleği ve iletişim
kapıları gibi diğer unsurları teste tabi tutarlar.

İ I/O işleme
Ş
L
E Diagnostikler Denetim
T Uygulama
CPU
İ Denetim prog. Programı
M çalıştırılması
4
Yukarıda belirtilen bütün operasyonlar bazı PC’lerde bir tek mikroişlemci ile
gerçekleştirilir. Günümüzde daha yaygın olan yaklaşım işletim sisteminin görevlerini
birkaç mikroişlemci arasında bölmektir. Bu yaklaşımda (multi-processing) her-bir
mikroişlemcinin belirli görevleri vardır. Yaygın olarak kullanılan çift mikro-işlemcili
yaklaşımda mikroişlemcilerden biri denetim diğeri ise mantık işlemlerini üstlenir. Denetim
mikroişlemcisi denetim çevirimindeki denklemleri, operatörle etkileşim gibi daha
karmaşık hesap ve veri işlemlerini yapar. Diğeri ise zamanlama, mantık ve sayma gibi
işlemlerle birlikte uygulama programının taramasını gerçekleştirir. Programın bir yerinde
kendi yeteneğinin üstüne çıkan bir işlemle karşılaşırsa bunu denetim mikroişlemcisine
aktarır ve taramaya devam eder.
Son yıllarda ortaya çıkan yeni bir gelişme de akıllı I/O arabağlarıdır. Bu I/O’ların
bir mikroişlemcisi ve belleği ve de uygulama programına bağlı olmayan bir mini işletim
programı vardır. Böyle akıllı bir modüle örnek olarak PID (Proportional –Integral –
Derivative ) denetim modülü gösterilebilir.

2.2. Giriş Çıkış Ara Birimleri

2.2.1. Ayrık I/O

En yaygın olarak kullanılan arabirim türü ayrık I/O arabirim olup CPU’ nun “1” veya “0”
türü çıkışı olan giriş elemanları veya “1” veya “0” türlü bir çıkışla denetlenebilecek
anahtarları, limit anahtarları, düzey anahtarları, motor kontaktör veya röle kontakları,
seçici anahtarlar, fotoelektrik gözler sayılabilir. Ayrık I/O arabirim ile denetlenebilecek
çıkış elemanları için ise alarmlar, denetim röleleri, selenoidler, motor starterleri, fanlar,
v.b. birer örnek olarak gösterilebilir.

Giriş/çıkış elemanlarının çeşitli düzeyde gerilimlerle beslenmesi gerekebileceğinden I/O


arabirimlerinin nominal gerilimi (A.A. veya D.A.) değerleri de çeşitlilik gösterir. Şekil
2.1’ de A.A. veya D.A. besleme gerektiren giriş elemanları ile TTL düzeyde çıkış veren
elemanların arabağ bağlantı şekli gösterilmiştir. Şekil 2.2’de ise çıkış elemanlarının
arabağa bağlantılarının tipik olarak nasıl yapıldığını açıklamaktadır.

A.A. veya
D.A. besleme

1 V
2 1
3 2

C -V

5
Şekil 2.1 Giriş elemanı için bağlantı şekli.
a. A.A. veya D.A. besleme gerektiren elemanlar
b. TTL düzeyde çıkış gerektiren elemanlar
A.A. veya
D.A. besleme

L1 +V

1 1

2 2

C -V

Şekil 2.2 Çıkış elemanı için bağlantı şekli.

a. A.A. veya D.A. besleme gerektiren elemanlar


b. TTL düzeyde giriş gerektiren elemanlar

3. PLC ile Röle Sistemi Arasındaki Fark

Röle sistemlerinde her türlü kumanda işlemleri rölelerle yapılırken, PLC’ de bu işlemler
mikroişlemci tarafından gerçekleştirilmektedir. Mikroişlemcinin bir entegre olduğu
düşünülürse kapladığı alan ve kullanım kolaylığı açısından röleli sistemlerden çok üstün
olduğu görülmektedir.
Bir kumanda sistemini analiz edersek, temel elemanlar şunlardır:
1) kumanda edecek elemanlar (giriş elemanları)
2) kumanda edilecek elemanla, kumanda eden elemanlar arasındaki kontrol
bölümü (kontrol ünitesi)
3) kumanda edilecek elemanlar (çıkış elemanları)

Kumanda Edecek Kumanda Edilecek


Kontrol Bölümü
Elemanlar Elemanlar

Kumanda Sistemi Analizi

6
Röleli sistemlerde kontrol bölümü röle bağlantıları ile yapılır. PLC sisteminde ise bu işlem
mikroişlemci ve bellekten oluşan bir elektronik devre ile yapılmaktadır.

Röleli sistemler ile yapılacak kontrol işlemleri röle bağlantıları ile sınırlıdır. Karmaşık
işlemlerde kullanılan röle sayısının artması sebebiyle kontrol işleminin hacmi büyümüş
olur. Ayrıca mevcut sitemde bir değişiklik yapmak oldukça zordur.

PLC sisteminde kontrol ünitesinin yapabileceği işlem miktarı PLC içindeki mikroişlemci
ve bellek kapasitesine bağlı olarak değişir. PLC sistemlerinde röleli sistemlerde
bulunmayan sayıcı, zamanlayıcı, shift register, flip-flop vb. elemanlar kontrol ünitesi
tasarımını kolaylaştırır.

4. PLC Seçim Ölçütleri

Bir kumanda sistemi için PLC seçiminde göz önüne alınması gereken özellikler şu şekilde
sıralanabilir;
- İki seviyeli kumanda işaretlerinin bağlandığı ayrık (lojik, dijital) giriş-çıkış
noktası sayısı ve elektriksel özellikleri,
- Program ve veri belleği kapasitesi,
- Komut işleme hızı,
- Zamanlayıcı ve sayıcı sayısı,
- Gerçek-zaman saati,
- Kesme işletim yeteneği,
- İletişim olanakları,
- Program yedekleme olanağı,
- Şifre koruması,
PLC ’nin geri beslemeli kontrol sistemlerinde kullanımı için ayrıca analog giriş-çıkış
sayısı, matematik işlem yeteneği ve komutların işlenme hızları gibi özellikler de aranır.

.
5. S7-200 PLC ve Genel Özellikleri

SIMATIC S7-200 ailesi programlanabilir denetleyicileri, maksimum 64 giriş, 64 çıkış


noktası bulunan küçük boyutlu otomasyon sistemlerinin kumanda devreleri ve 12 analog
giriş, 4 analog çıkış noktası gerektiren geri beslemeli kontrol devrelerinin gerçekleşmesi
için geliştirilmiş bir otomasyon aygıtıdır.

S7-200 serisinin CPU-210, CPU-212, CPU-214, CPU-215, CPU-216 olarak beş ayrı
modeli vardır. CPU-210 modeli, çok küçük boyutlu basit kumanda devrelerinin
gerçekleşmesinde kullanılır. Diğer modeller hem kumanda devreleri hem de geri beslemeli
kontrol devrelerinin gerçekleşmesi için kullanılabilir. Ancak, CPU-214, CPU-215 ve
CPU-216 modellerinde gerçek sayılar üzerinde matematiksel işlem yapabilme olanağı
sağlayan komutlar bulunduğundan geri beslemeli kontrol algoritmaları veya sayısal filtre
yazılımları daha kolay gerçekleşebilir. CPU-215, CPU-216 modellerinde ise endüstriyel
kontrol sistemlerinde yaygın olarak kullanılan PID denetleyici işlevini doğrudan
gerçekleyen PID fonksiyon komutu bulunur.

S7-200 serisi birçok otomasyon uygulamalarını çözebilecek şekilde üretilmiş ve kendi


içinde farklı CPU’lar (Central Processing Unit = Merkezi İşleme Ünitesi) ihtiva eden çok

7
kullanışlı bir PLC’dir. Optimum tasarımı, genişletilebilir üniteleri, fiyat avantajı ve güçlü
komut seti ile S7-200 geniş uygulamalarda çok iyi sonuçlar vermektedir.

S7-200 ailesi kullanıcılara geniş bir CPU yelpazesi sunmaktadır. Tablo 1’de S7-200
ailesinin kapasiteleri, birbirinden farklı olan CPU üniteleri genel olarak verilmiştir.

Tablo 1. S7-200 CPU özellikleri.

Özellik CPU 212 CPU 214 CPU 215 CPU 216


Giriş/Çıkış 8 Giriş 14 Giriş 14 Giriş 24 Giriş
Sayısı 6 Çıkış 10 Çıkış 10 Çıkış 16 Çıkış
Genişletme 2 modül 7 modül 7 modül 7 modül
ünitesi(max)
Lojik komut 1.2µ sn 0.8µ sn 0..8µ sn 0.8µ sn
işleme hızı
Sayıcı/zamanla 64/64 128/128 256/256 256/256
yıcı
Dahili hafıza 128 256 256 256
biti

.
6. İşletim Sistemi

Kalıcı ve yalnız okunabilir bir bellek alanına üretici firma tarafından yazılmış olan işletim
sistemi programı, PLC’nin çalışmasını düzenler ve kullanıcı programının yürütülmesini
sağlar. Genel olarak bir işletim sistemi programı;

1- Giriş noktalarındaki işaret durumlarının giriş görüntü belleğine yazılması


2- Programın yürütülmesi
3- Haberleşme isteklerinin gerçekleştirilmesi
4- İşlemci, çevre birimleri ve bellek durumlarının incelenmesi
5- Çıkış görüntü belleğindeki değerlerin çıkış birimine aktarılması gibi işlevleri
yerine getirir. Denetleyici, çalıştırıldıktan (RUN) sonra durma (STOP) moduna alınıncaya
kadar bu işlemler sürekli tekrarlanır ve bu bir tarama çevrimi (scan) olarak adlandırılır.

Programın yürütülmesi, birinci komuttan, son komuta kadar (END) bütün komutların
sırayla işlenmesi biçiminde olur. Alt program kullanılması durumunda, alt programın
işletilmesine ilişkin koşullar sağlandığında program akışı alt programa geçer, alt programa
yazılan komutlar sırayla işlendikten sonra tekrar ana programa dönülür. Kesme ile
işletilen alt programlar kesme koşulları sağlandığı anda, program tarama çevriminin
herhangi bir yerinde işletilebilir.

8
Program tarama süresinden hızlı değişen işaretlerin değerlendirilmesi ve belirli kumanda
işaretlerinin işletilmesi için yüksek hız sayıcıları veya dış (donanım) kesme işaretleri ile
işletilen kesme alt programları kullanılır.

7. PLC Programlanması

PLC programlama yöntemleri genel olarak dört temel başlık altında toplanabilir.
Bunlar;
1 – Ladder ( Merdiven ) Programlama dili,
2 – Boolean ( Deyimsel ) Programlama dili,
3 – İşlevsel Bloklar ( Lojik Kapılar ) ile Programlama,
4 – İngilizce Bildirimler ile Programlama,

İlk iki programlama dili temel programlama dili olup en çok kullanılan PLC programlama
dilleridir.

Programlama teknikleri yazılış biçimine göre, doğrusal programlama ve yapısal


programlama olarak iki gruba ayrılabilir. Doğrusal programlamada bütün komutlar
ardarda yazılır ve yazılış sırasına göre yürütülür. Yapısal programlamada ise program
blokları biçiminde yapılar kullanılır. Her iki programlama tekniğinde de işlem komutları
ile programlanan ve merdiven diyagramı ile programlama biçimleri kullanılabilir.
Merdiven diyagramı biçiminde programlama, kontaklı kumanda devrelerinin ANSI
standartları devre simgeleri ile gösterilişine benzeyen bu grafiksel programlama yöntemi
olup program girişi grafiksel olarak yapılır. Bu programlama tekniğinde komutlar yerine
normalde açık kontak, normalde kapalı kontak, hatlar, röle bobini, zamanlayıcı ve sayıcı
gibi elemanları simgeleyen kutular kullanılır.
7.1.Ladder (Merdiven) Programlama dili

Röleli kumanda sisteminde sistemin dizaynında kullanılan röleli kontrol diyagramına çok
benzer. Bu yüzden teknik elemanların bir çoğu programlamada bu metodu kullanmayı
tercih etmektedir. Fakat röle diyagramlarında bulunmayan birçok ilave fonksiyonlar ve
işlevsel bloklar bu yöntemde bulunmaktadır. Örneğin zamanlayıcı, sayıcı, matamatiksel
işlevler ve PID gibi üst düzey otomasyon komutları.

Simatic S-7 ile programlama yapılırken dikkat edilmesi gereken önemli bir özellik ise her
network içinde sadece bir temel akış diyagramının olmasıdır.

7.2. Boolean (Deyimsel) Programlama dili

Bu programlama dilinde, denetim uygulama programı ilk olarak röleli sistem olarak
tasarlanır. Daha sonra uygun deyimsel komutlar kullanılarak program boolean diline
çevrilir. Bu dilin uygulamasının güç olmasına karşın tercih edilmesinin en önemli sebebi
PLC terminalinin yanında PC bulunmamasıdır. Bu yüzden PLC programlama aracı
olarak kullanılan tuş takımı ile programlamada genelde bu programlama dili kullanılır. En
büyük dezavantajı ise her PLC markasında boolean dilindeki komut karşılıklarının farklı
olmasıdır.

7.3. S7-200 PLC Programlanması

9
S7-200 serisi denetleyicilerini programlamak için hem komut (deyim) listesi (statement
list, STL) hem de merdiven diyagramı (ladder diyagram,LAD) programlama teknikleri
bulunan programlama yazılımları kullanılır.

S7 serisi PLC ’lerde DOS ortamında çalışan STEP 7-MICRO/DOS ve Windows


ortamında çalışan MICROWIN/WINDOWS programlama yazılımları ile hem komut
listesi (STL) hem de merdiven diyagramı (LAD) tekniği kullanılarak programlama
yapılabilir. Programlama için kullanılan yazılımlar programlama dışında, programın
işleyişini gözlemek, veri alanındaki çeşitli adreslerin içeriğini gözlemek, değiştirmek gibi
amaçlarla da kullanılabilir.

Kullanıcı programı veri bolluğu ve denetleyiciye ilişkin konfigirasyon verilerini


denetleyiciye yüklenmesi için programlama yazılımı editör menüsünden ‘DOWNLOAD’ ,
denetleyici RAM belleğinde bulunan programı editöre alınması için ‘UPLOAD’ seçeneği
kullanılır.

RAM belleğe yüklenen kullanıcı programı, konfigürasyon verileri ve veri bloğunda kalıcı
(retentive) olarak tanımlanan alanlar, aynı zamanda EEPROM belleğine aktarılır.
Böylece, denetleyicinin uzun süreli enerjisiz kalması durumunda kullanıcı programı,
konfigürasyon bilgileri ve kalıcı veri alanı korunur. Kalıcı veri alanları (retentive range)
programlama yazılımı ile tanımlanır. Denetleyici RAM belleği, yüksek kapasiteli bir
kondansatör ile beslendiğinden, RAM belleğindeki bütün veriler CPU-212 modelinde 50
saat ve CPU-214, CPU-215 ve CPU-216 modellerinde 190 saate kadar korunabilir.

7.4. PLC Kumanda Komutları

Röleli geleneksel kumanda devreleri, röle kontaklarından oluşan lojik anahtarlama


devreleri olup, bu tür devreler VE (AND), VEYA (OR) ve DEĞİL (NOT) gibi lojik
işlem komutları kullanılarak gerçeklenebilir. Aşağıdaki çizelgede anahtarlama
devrelerinin gerçekleşmesine ilişkin komutlar verilmiştir.

KOMUT ADI KOMUT SİMGESİ (S7-200)


Yükle (LOAD) LD
Tümleyenini Yükle (LOAD NOT) LDN
VE (AND) İşlemi A
Tümleyenine VE (AND NOT) İşlemi AN
VEYA (OR) İşlemi O
Tümleyenine Veya (OR NOT) İşlemi ON
Lojik Tümleyen (NOT) NOT
Çıkışa Atama =
Kurma (SET) S
Silme (RESET) R
VE Blok (AND BLOCK) ALD
VEYA Blok (OR BLOCK) OLD
Program Sonu MEND

10
Bu komutlara ek olarak, zamanlayıcı, sayıcı ve karşılaştırma işlevlerini yerine getiren
komutlar kullanılarak, her türlü geleneksel kumanda devresi PLC ile gerçeklenebilir.

7.5. Komutların Yürütülmesi ve Lojik Yığın

S7-200 PLC’de komutlar, koşullu işletilen ve koşulsuz işletilen komutlar olarak iki gruba
ayrılır. Koşulsuz işletilen komutlar işlem sırası geldiğinde hiçbir koşula bağlı olmadan
yürütülen komutlardır. Koşullu işletilen komutlar ise, lojik yığın belleğinin birinci
seviyesindeki değere bakılarak yürütülen komutlardır. Bu tür komutlar, işlem sırası
geldiğinde yığının birinci seviyesinin içeriği bir ise yürütülür, sıfır ise yürütülmez. Şimdi
bu komutları ayrıntılı olarak inceleyelim;

8. Zamanlayıcılar ve Sayıcılar

8.1. Giriş

Programlanabilir denetleyiciler ile gerçekleştirilen kumanda devrelerinde geleneksel


kumanda devrelerindeki zaman rölelerinin işlevi zamanlayıcılar ile elektro-mekanik veya
elektronik sayıcıların işlevi ise sayıcılar ile gerçeklenir. Bilindiği gibi zamanlayıcılar
zamana bağlı, sayıcılar ise olay sayılarına bağlı kumanda işaretlerinin üretilmesinde
kullanılır. Bu bölümde zamanlayıcı ve sayıcı komutları tanıtılacaktır.

8.2. Zamanlayıcılar

S7-200 PLC’de iki tür zamanlayıcı vardır. Gecikmeli çalışan (on- delay timer) ve kalıcı
gecikmeli çalışan zamanlayıcı (retentive on-delay timer). Zamanlayıcı içeriği 16 bitlik bir
veri alanında tutulur ve zamanlayıcı durumu aynı simgelerle adreslenen 1 bitlik bir veri
alanında bulunur.

Zamanlayıcı adresleri ile ilgili bir işlem yapılırken uygulanan komuta bağlı olarak
zamanlayıcı içeriği yada zamanlayıcı biti kullanılır. Örneğin, 1 bitlik işlem yapan komutlar
yürütüldüğünde zamanlayıcı biti, 16 bitlik işlem yapan komutlar yürütüldüğünde
zamanlayıcı kaydedicisi içeriği (16 bit) ile ilgili işlem yapılır.

8.2.1. Gecikmeli Çalışan Zamanlayıcı

11
TON Txxx,PT

Gecikmeli çalışan zamanlayıcı yukarıdaki komut ile programlanır. Bu komutun etkin


olması (işletilmesi) için yığın belleği birinci seviyesindeki değerin 1 olması gerekir. Komut
işletildiğinde Txxx adresindeki zamanlayıcı içeriği belirli zaman aralıkları ile artar.
Txxx>=PT olduğunda zamanlayıcı biti Txxx=1 olur. PT istenen gecikme süresine bağlı
olarak 1 ile 32767 arasında herhangi bir tamsayı ya da 16 bitlik bir veri adresi (VW, T, C,
IW, QW....) olabilir. Txxx yerine;

Txxx:T32~T63 (T32,T33,...,T63) ( CPU-212)


Txxx:T32~T63, T96~T127 (T96, T97, ... ,T127) (CPU-214)
Txxx:T32~T63, T96~T255 (T96, T97, ... ,T255) (CPU-215 ve CPU-216)

Zamanlayıcı adresleri kullanılır. Zamanlayıcı komutu koşullu işletilen bir komut


olduğundan, zamanlayıcı kaydedicisi, yığın belleğinin birinci seviyesindeki değer 1 ise
etkin duruma geçer ve içeriği belirli zaman değerleri ile artar. Zamanlayıcı kaydedicisi
içeriği;

Çözünürlük Maksimum Zaman CPU 212 CPU 214 CPU 215/216

1 ms 32.767 sn T32 T32, T96 T32,T96

10 ms 327.67 sn T33-T36 T33-T36 T33-T36


T97-T100 T97-T100

100 ms 3276.7 sn T37-T63 T37-T63 T37-T63


T101-T127 T101-T255

Operandlar: PDS 210:


Txxx (word): Tx: T0 - T3
CPU 212: 32-63
CPU 214: 32-63, 96-127
CPU 215/216: 32-63, 96-255

PT (word):
VW, T, C, IW, QW, MW, SMW, SW, AC, AIW, Sabit, *VD, *AC
PT: 0

NOT : CPU 212, 214, 215, 216 için Açıklama:

12
Gecikmeli çalışan zaman rölesi (TON) kutusu, tetikleyen giriş (IN) geldiğinde maksimum
zaman değerine kadar çalışır. Eğer Txxx >= Ayar Değeri (PT) ise, çıkış biti T set edilir.
Sayma esnasında IN girişi 0 olursa sayma durur ve röle sıfırlanır. Aşağıdaki tabloda CPU
'lardaki zaman rölesi numarasına göre sayma kademesi (veya çözünürlük) görülmektedir.
Zaman rölesinin ayarı PT değeri ile bu kademenin çarpılmasıyla oluşur.

Örneğin T32 için PT= 10000 ise, bu 10.000 x 1 ms= 10 sn'ye karşılık gelir. Yani zaman
rölesi IN girişi geldiği sürece 10 sn bekleyecek (ama bu esnada 1 ms'lik kademeler
halinde sayacak), sonra çıkışı 1 olacaktır.

Sayma her durumda maksimum değere ulaşılınca durur ki bu da PT değerinin alabileceği


en yüksek değerdir (32767). Bir başka deyişle bir zaman rölesini en fazla 3276.7 sn (yakl.
54 dakika)'ye ayarlayabilirsiniz.

Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak
izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir.
Word olarak izlediğinizde anlık değer görüntülenir.

8.2.2. Kalıcı Gecikmeli Çalışan Zamanlayıcı

TONR Txxx,PT

Kalıcı gecikmeli çalışan zamanlayıcı yukarıdaki komut ile programlanır. Burada PT, 1 ile
32767 değerleri arasında herhangi bir tamsayı yada 16 bitlik veri adresi ve Txxx ise;

CPU-212 için; Txxx:T0~T31 (T0, T1, ..., T31)


CPU-214 için; Txxx:T0~T31,T64~T95 (T64, T65,..., T95)
CPU-215 ve
CPU-216 için; Txxx:T0~T31,T64~T95 (T64, T65, ..., T95)
Adresleri ile erişilen zamanlayıcı veri alanlarıdır. Bu zamanlayıcıda kaydedici içeriği;

Çözünürlük Maksimum Zaman CPU 212/214 CPU 214/215/216


1 ms 32.767 sn T0 T64
10 ms 327.67 sn T1-T4 T65-T68
100 ms 3276.7 sn T5-T31 T69-T95

Operandlar:

Txxx (word): CPU 212: 0-31


CPU 214/215/216: 0-31, 64-95
PT (word): VW, T, C, IW, QW, MW, SMW, SW,
AC, AIW, Sabit, *VD, *AC

13
NOT : Açıklama

Gecikmeli çalışan zaman rölesi (TON) kutusu, tetikleyen giriş (IN) geldiğinde maksimum
zaman değerine kadar çalışır. Eğer Txxx >= Ayar Değeri (PT) ise, çıkış biti T set edilir.
Sayma esnasında IN girişi 0 olursa sayma durur ancak röle sıfırlanmaz, yani IN girişi
gelince saymaya kaldığı yerden devam eder. Aşağıdaki tabloda CPU 'lardaki zaman rölesi
numarasına göre sayma kademesi (veya çözünürlük) görülmektedir. Zaman rölesinin
ayarı PT değeri ile bu kademenin çarpılmasıyla oluşur. Örneğin T0 için PT= 10000 ise, bu
10.000 x 1 ms= 10 sn'ye karşılık gelir. Yani zaman rölesi IN girişi geldiği sürece 10 sn
bekleyecek (ama bu esnada 1 ms'lik kademeler halinde sayacak), sonra çıkışı 1 olacaktır.

Sayma her durumda maksimum değere ulaşılınca durur ki bu da PT değerinin alabileceği


en yüksek değerdir (32767). Bir başka deyişle bir zaman rölesini en fazla 3276.7 sn (yakl.
54 dakika)'ye ayarlayabilirsiniz.

Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak
izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir.
Word olarak izlediğinizde anlık değer görüntülenir.

8.2.3 İki Zaman Rölesi Tipi Arasındaki Fark

S7-200 iki ayrı zaman rölesi sunar: Gecikmeli çalışan (TON) ve alıcı gecikmeli çalışan
(TONR). İki zaman rölesi tipi arasında girişe verilen tepkiye göre farklılık vardır.

Her iki zaman rölesi de giriş varken sayar.


İki zaman rölesi de giriş yokken saymaz.

Giriş gittiğinde TON sıfırlanır. Oysa, TONR sıfırlanmaz, daha önce saydığı sayma (veya
zaman) değerini saklar. TONR zaman rölesi tekrar enerjilendiğinde (enable) önceki
sayma değerinin üzerine ekleyerek çalışır.

O halde, TON zaman rölesi tek bir aralığın zaman kontrolu için uygunken, TONR birden
çok aralığın zaman kontroluna daha yatkındır.

8.3. Sayıcılar

8.3.1. İleri Sayıcılar

S7-200 denetleyicisinde ileri sayma için CTU ve ileri/geri sayma için CTUD komutları
kullanılır. Her sayıcı veri alanı aynı simge ile gösterilen iki kısımdan oluşur: Birinci kısım
sayıcı kaydedicisi içeriğin bulunduğu 16 bitlik alan ve ikinci kısım 1 bitlik sayıcı biti
alanıdır. Herhangi bir işlem yapılırken hangi verinin kullanılacağı, zamanlayıcılarda
olduğu gibi, yürütülen komutla belirlenir. Örneğin, bit işlemi yapan komutlar
yürütüldüğünde sayıcı biti, kelime işlemi yapan komutlar yürütüldüğünde sayıcı içeriği
(16 bit) işlenir.

S7-200 CPU-212 modelinde toplam 64 sayıcı (C0~C63)


S7-200 CPU-214 modelinde toplam 128 sayıcı (C0~C128)

14
S7-200 CPU-215 ve S7-200 CPU-216 modellerinde ise toplam 256 sayıcı
(C0~C256) bulunur.

İleri sayıcıda (CTU), yığın belleğinin ikinci seviyesindeki verinin 0’dan 1 değerine her
geçişinde sayıcı kaydedicisi içeriği 1 artar. Yığın belleğinin birinci seviyesindeki değer 1
olduğunda sayıcı içeriği ve sayıcı biti sıfırlanır. Sayıcı içeriği PV (preset value ) değerine
eşit ve büyük olduğunda sayıcı biti bir değerini alır. Sayıcı kaydedicisi içeriğinin geçerli en
büyük değeri 32767 olup bu değere ulaşıldığında, sayıcı içeriğindeki artış durur.

Yukarı Sayıcı (CTU) kutusu, CU girişinin her pozitif yükselen kenarında (0'dan 1'e
dönüşünde) sayar. Eğer Cxxx >= Ayar Değeri (PV) ise, çıkış biti set edilir. Reset (R)
girişi gelirse sıfırlanır. Maksimum sayma ve ayar değeri 32767'dir.

Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak
izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir.
Word olarak izlediğinizde anlık değer görüntülenir.

LD I0.0 //ileri sayma


LD I0.1 //sayıcı içeriğini silme
CTU C0.5 //C0 ileri sayıcısı PV=5

Biçiminde veya merdiven diyagramı programlama tekniği ile aşağıdaki gibi programlanır.
Sayıcı PV değeri için 16 bitlik herhangi bir veri adresi de kullanılabilir.

15
.

8.3.2. İleri - Geri Sayıcılar

İleri – geri sayıcıda (CTUD), yığın belleğinin üçüncü seviyesindeki değerin 0’dan 1’e her
geçişinde, sayıcı kaydedicisinin içeriği 1 artar; yığın belleğinin ikinci seviyesindeki değerin
0’dan 1 değerine her geçişinde sayıcı içeriği 1 azalır. Yığın belleğinin birinci seviyesindeki
değer 1 olduğunda sayıcı içeriği ve sayıcı biti sıfırlanır. Sayıcı içeriği PV (preset value)
değerine eşit ve büyük olduğunda sayıcı biti 1 değerini alır. Sayıcı kaydedicisi içeriği en
küçük -32767, en büyük 32767 değerlerini alabilir.

İleri – geri sayıcı komutu kullanıldığında sayıcı içeriği, ileri sayıcıdan farklı olarak,
-32767 ve 32767 değerleri arasında değişebilir. Sayıcı ileri sayımda iken, en büyük işaretli
tam sayı olan +32767 değerine ulaşıldıktan sonra sayıcı içeriğinin alacağı değer, en küçük
işaretli tam sayı olan –32767 değeridir. Bu değerden sonra sayıcı içeriği artarak (-32767,
-32766, -32765,...,0,...,+32765, +32766, +32767) değişir. Sayıcı geri sayımda iken,
-32768 değeri aşıldığında sayıcı içeriği en büyük işaretli tam sayı olan 32767 değerini alır
ve bu değerden sonra azalarak değişir.

Bir İleri – geri sayıcı, CTUD komutu ile ;


LD I0.0 //ileri sayma
LD I0.1 //geri sayma
LD I0.2 //sıfırlama
CTUD C48,3 //C48 sayıcısı PV=3

biçiminde programlanır. Bu program yürütüldüğünde I0.0 girişine uygulanan işaretin her


yükselen kenarı ile C48 sayıcı kaydedicisi içeriği bir artar, I0.1 girişine uygulanan işaretin
her yükselen kenarı ile 1 azalır. I0.2 girişine işaret uygulandığında (I0.2=1) sayıcı içeriği
ve sayıcı biti sıfırlanır.

16
İleri – geri sayıcının merdiven diyagramı programlama tekniği aşağıdaki şekilde
görüldüğü gibidir;

Yukarı/Aşağı Sayıcı (CTUD) kutusu, yukarı say (CU) girişinin her pozitif yükselen
kenarında (0'dan 1'e dönüşünde) yukarı sayar. Aşağı say (CD) girişinin her pozitif
yükselen kenarında aşağı sayar. Reset (R) girişi gelirse sıfırlanır.

CPU 212, 214, 215, 216: Eğer Cxxx >= Ayar Değeri (PV) ise, çıkış biti set edilir.
Maksimum sayma ve ayar değeri 32767'dir. Yukarı sayma maksimum değere (32,767),
aşağı sayma minimum değere (-32,768) ulaşınca durur.

Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak
izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir.
Word olarak izlediğinizde anlık değer görüntülenir.

CPU 210: Maksimum sayma değerine ulaştıktan sonra gelecek bir yukarı say girişi sayma
değerini minimum (-32,768) yapar. Minimum sayma değerine ulaştıktan sonra gelecek
aşağı say girişi sayma değerini maksimum (32,767) yapar.

9. Matematiksel İşlemler

9.1. Tam Sayı Toplama

Sembol:
ADD_I
EN

IN1

IN2 OUT

17
Operandlar:

IN1, IN2 (word): Bu iki değer toplanacak olan tamsayı değerleridir. Bu değerler sabit
sayı olduğu gibi bir word adresinden de atama yapılabilir.

OUT (word): Sonuç burada belirtilen adreste saklanır.

Bu kutu, iki tane 16 bit tam sayıyı (IN1, IN2), toplar ve sonucu 16 bit olarak çıkışa
(OUT) yazar, yani: IN1 + IN2 = OUT

Not: ADD komutu tam sayı, double word ve gerçel sayı toplama işlemlerinde de
kullanılır.

9.2. Tam Sayı Çıkarma

Sembol:
SUB_I
EN

IN1

IN2 OUT

Operandlar:

IN1, IN2 (word): Bu iki değer çıkarılacak olan tamsayı değerleridir. Bu değerler sabit
sayı olduğu gibi adresten de atama yapılabilir.

OUT (word): Sonuç burada belirtilen adreste saklanır.

Açıklama:
Bu kutu, iki tane 16 bit tam sayıyı (IN1, IN2) çıkarır ve sonucu 16 bit olarak çıkışa
(OUT) yazar, yani: IN1 - IN2 = OUT
Not:
OUT negatif olursa SM 1.2 (negatif) biti set edilir.
Not: SUB komutu tam sayı, double word ve gerçel sayı toplama işlemlerinde kullanılır.

9.3. Tam Sayı Çarpma

Sembol:
MUL
EN

IN1

IN2 OUT

Operandlar:

18
IN1, IN2 (word): Bu iki değer çarpılacak olan tamsayı değerleridir. Bu değerler sabit
sayı olduğu gibi adresden de atama yapılabilir.

OUT (word): Sonuç burada belirtilen adreste saklanır.

Açıklama:
Bu kutu, iki tane 16 bit tam sayıyı (IN1, IN2) çarpar ve sonucu 32 bit olarak çıkışa
(OUT) yazar, yani: IN1 * IN2 = OUT

Not:Çıkış ve giriş operandları arasındaki çakışmalar komutu geçersiz kılar.

9.4. Tam Sayı Bölme

Sembol:
DIV
EN

IN1

IN2 OUT

Operandlar:

IN1, IN2 (word): Bu iki değer bölünecek olan tamsayı değerleridir. Bu değerler sabit
sayı olduğu gibi adresden de atama yapılabilir.

OUT (word): Sonuç burada belirtilen adreste saklanır.

Açıklama:
Bu kutu, iki 16 bit tam sayıyı (IN1, IN2) böler ve sonuç ve kalanı 32 bit olarak OUT'a
yazar, yani IN1/IN2=OUT. OUT double word'ünün küçük word'ü kalanı, büyük word'ü
bölümü içerir.

Not:Çıkış ve giriş operandları arasındaki bazı çakışmalar komutu geçersiz kılar.


32 bit sonuç (OUT) ikinci girişle (IN2) aynı adrese sahip olamaz.

9.5. Baytı Arttır

Sembol:

INC_B
EN

IN OUT
Operandlar:

IN (byte): Değeri arttırılacak olan sayı değeri sabit olarak veya bir adresten atanabilir.
OUT (byte): Sonuç burada belirtilen adrese atanır.

19
Açıklama:
Bu komut, giriş bayt değerine (IN) 1 ilave eder ve çıkış baytına (OUT) yazar. Yani, IN +
1 = OUT
Not: Bu komut bayt , word ve double word işlemleri içinde gerçekleştirebilir.

9.6. Baytı Azalt

Sembol:
DEC_B
EN

IN OUT
Operandlar:

IN (byte): Değeri azaltılacak olan sayı değeri sabit olarak veya bir adresten atanabilir.
OUT (byte): Sonuç burada belirtilen adrese atanır.
Açıklama:

Bu kutu, giriş bayt değerinden (IN) 1 çıkartır ve çıkış baytına (OUT) yazar. Yani, IN - 1
= OUT

Not: Bu komut bayt , word ve double word işlemleri içinde gerçekleştirilebilir.

10. Program Akış Denetim Komutları

Son

Semboller:

Koşullu Son
END

Koşulsuz Son
END
Açıklama:
Koşullu Son, önceki mantığa göre (bobine enerji geliyorsa) programı bitirir.
Koşulsuz Son, kullanıcı programını bitirmek için kullanılır. Her zaman için ana programın
(alt programlar hariç) son devresini oluşturur.
Bir programda Koşullu Son (END) bulunmayabilir veya birden çok bulunabilir, ancak
mutlaka ve yalnızca bir adet Koşulsuz Son bulunmalıdır.

Dur

Sembol:

STOP
20
Açıklama:
CPU'yu STOP konumuna getirerek program akışını keser.
Not:
CPU'nun tekrar RUN konumuna geçirilmesi elle (programlama paketinden ya da
CPU'nun üzerindeki anahtardan) yapılacağı için çok dikkatli kullanılmalıdır.
Eğer STOP komutu bir interrupt alt programı içersinde çalıştırılırsa, alt program anında
sonlandırılır, bütün diğer bekleyen interruptlar ihmal edilir. Ana program sonuna kadar
icra edilir ve o tarama sonunda RUN’dan STOP’a geçilir.

Gözetleyiciyi Resetle

Sembol:

WDR

Açıklama:
Program tarama süresinin belli bir süreyi (300 milisaniye) aşması durumunda dahili
Gözetleyici devreye girer ve CPU'yu STOP konumuna sokar. Gözetleyiciyi Resetle,
Gözetleyicinin saydığı süreyi sıfırlayarak program tarama süresinin uzatılmasını sağlar.

Not:
Bir döngü içerisine yerleştirilecek Anında Giriş Kontağı ve Gözetleyiciyi Resetle çıkışıyla
CPU'nun hiçbir işlem yapmadan o girişi beklemesi sağlanabilir.

Uyarı:
Tarama süresinin hiç gözetlenmeden sınırsız olarak uzatılmasına izin verilmesi girişlerin
geç okunmasına ya da hiç okunmamasına neden olabilir. Bu da hayati ya da maddi tehlike
yaratabilir.

Program taramasının 300 msn’yi aşmasını ya da bir interrupt olgusunun ana programa
dönüşü 300 msn’den daha çok geciktireceğini düşünüyorsanız bu komutu
kullanabilirsiniz.
Aşağıdaki işlemler taramanın sonunda yapıldığından, programın bir döngüye sokulması
bu işlemleri engelleyecektir:

· İletişim (freeport modu hariç)


· Giriş/Çıkış güncelleme (anında giriş/çıkışlar hariç)
· Forse güncelleme
· SM bitleri güncelleme (SM0, SM5 ila SM29 güncellenmez)
· Runtime hataları teşhisi
· 25 saniyeyi geçen tarama süreleri için 10 ms ve 100 ms’lik zaman röleleri düzgün
çalışmaz
· Interrupt alt programı içersindeki STOP komutu

Not: CPU üzerindeki anahtarın STOP konumuna alınması STOP konumuna 1.4 saniye
içinde geçilmesiyle sonuçlanacaktır.

21
Sıçra
Sembol: n

JMP

Bu komut, program içersinde belirtilen etikete (n) atlama sağlar.

Etiket

Sembol:
n
LBL

Etiket, Atla (JMP) komutuyla yapılacak atlamanın hedefini (n) gösterir.

Çağır

Sembol:

CALL

Program akış kontrolunu n numaralı alt programa aktarır.

Altprogram

Sembol:
n
SBR

n numaralı alt programın başlangıcını gösterir.

.
Geri Dön

Semboller:

Alt programdan koşullu


RET dön

Alt programdan
RET
koşulsuz dön

22
Açıklama:
Koşullu Geri Dön, önceki mantığa göre (komuta enerji geliyorsa) alt programı bitirir.
Koşulsuz Geri Dön, alt programını bitirmek için kullanılır. Her zaman için alt programın
son devresini oluşturur.
Bir alt programda Koşullu Geri Dön bulunmayabilir veya birden çok bulunabilir, ancak
mutlaka ve yalnızca bir adet Koşulsuz Geri Dön bulunmalıdır.

For

Sembol:
FOR
EN

INDEX

INITIAL

FINAL

Açıklama:

NEXT kutusuyla birlikte kullanılan bu kutu, ikisi arasında yer alan komutların döngüsünü
sağlar. Başlangıç değeri (INITIAL) ile son değer (FINAL) arasındaki fark kadar döngü
tekrarlanır. Döngünün her icrasında kutu, INDEX değerini bir arttırır. INDEX değeri
FINAL değerinden büyük olduğu anda döngü sona erer. FINAL değeri 32766'dan büyük
olamaz.
Başlangıç değeri, son değerden büyükse komut icra edilmez.
Örneğin, INITIAL değeri 1, FINAL değeri 10 olsun. Bu durumda, FOR ve NEXT
kutuları arasındaki komut(lar) 10 defa icra edilir ve her döngüde INDEX değeri 1,2,...10
şeklinde arttırılır.

Her FOR komutu bir NEXT’i gerektirir. FOR/NEXT döngülerini 8 kademeye kadar
dallandırabilirsiniz (Döngü içersinde bir başka FOR/NEXT döngüsü).

Not:
Çok fazla sayıda döngü, program tarama süresinin uzamasına ve CPU'nun Gözetleyici
tarafından STOP konumuna sokulmasıyla sonuçlanabilir.

Next

Sembol:

NEXT

FOR ile tanımlanan döngünün sonunu gösterir.

İşlem Yok

Sembol:
n

NOP 23
Açıklama:
Kullanıcı programının icrası üzerinde hiçbir etkisi yoktur. n sayısı 1 ila 255 arasında
olabilir.

TAŞI/DOLDUR/TABLO

Bayt Taşı

Sembol:
MOV_B
EN

IN OUT

Operandlar:
IN (bayt): Taşınacak olan değer sabit veya adresi burada bildirilir.

OUT (bayt): Taşınılacak olan adres burada bildirilir.

Açıklama:
Bu kutu, giriş baytını (IN) çıkış baytına (OUT) taşır. Giriş baytı taşımadan etkilenmez.

Not: bu işlem bayt, word, double word ve gerçel sayılar için gerçekleştirilebilir.

.
Bayt Blok Taşı

Sembol:
BLKMOV_B
EN

IN

N OUT

Açıklama:
Bu kutu, IN baytından başlayan N adet baytı OUT adresinden başlayan bölgeye yazar. N,
1 ila 255 arasında olabilir. Giriş, taşımadan etkilenmez.
Not: bu işlem bayt, word, double word ve gerçel sayılar için gerçekleştirilebilir.

Baytı Sağa Kaydır

Sembol: SHR_B
EN

IN
24
N OUT
Açıklama:

Bu kutu, bayt değerini (IN) N adet bit kadar sağa kaydırır, sonuç çıkış baytına (OUT)
yazılır. Taşıma alanının dışında kalan bitler sıfırlanır. N, 8’den büyük olsa bile kaydırma
işlemi 8 bitle sınırlandırılır.

SM1.0 (sıfır) = 1 eğer OUT = 0

SM1.1 (taşma)= 1 dışarı kaydırılan son bit = 1

Not: IN ¹ OUT iken:


Eğer N endirekt bir adresse ve OUT, endirekt adres pointer'ının bir baytını kapsayan bir
direkt adresse, komut geçersizdir. Eğer N ve OUT endirekt adres pointer'larıysa ve
pointer'lar eşitse, komut geçersizdir.

Baytı Sağa Döndür

Sembol:
ROR_B
EN

IN

N OUT
Açıklama:
Bu kutu, bayt değerini (IN) sağa doğru N bit kadar döndürür (dışarı atılacak bitler diğer
başa yazılır) ve sonuç çıkış baytına (OUT) yazılır.
Eğer N, 8’e eşit veya büyükse, N’in 8‘li modu alınır. Sonuç değeri üzerinden döndürme
yapılır.
SM1.0 (sıfır) = 1 eğer OUT = 0
SM1.1 (taşma) = 1 döndürülen son bit = 1
Not: IN ¹ OUT iken:

Eğer N endirekt bir adresse ve OUT, endirekt adres pointer'ının bir baytını kapsayan bir
direkt adresse, komut geçersizdir. Eğer N ve OUT endirekt adres pointer'larıysa ve
pointer'lar eşitse, komut geçersizdir.

Shift Register Bit

Sembol:
SHRB
EN

DATA

S_BIT

N 25
Açıklama:

Malzeme ve veri akış kontrolu için büyük kolaylık sağlayan bu komut, bir bit (DATA)
değerini N ve S_BIT ile tanımlanan kütüğe (register) yazar ve kaydırır. S_BIT, kütüğün
başlangıç adresini, N ise bit olarak uzunluğunu tanımlar. N pozitif olursa kütüğün son biti
S_BIT + N'dir ve DATA(lar)'ın hareket yönü küçük adresten büyüğe doğrudur. N negatif
olursa kütüğün son biti S_BIT - N'dir ve hareket yönü terstir. Örneğin, S_BIT= V100.0
ve N=4 olsun. Bu durumda kütüğün ilk adresi (DATA'nın yazılacağı yer) V100.0, ve son
adresi de V100.3'tür. Bu iki adres arasındaki bitlerin durumuna göre örneğin dört
sensörden geçen bir bant hattındaki malzemelerin takibi yapılabilir. Shift register’in
maksimum değeri pozitif veya negatif 64’dür. Bir taramada en fazla bir kaydırma
yapılabilir.

Hafızayı Doldur

Sembol:
FILL_N
EN

IN

N OUT
Açıklama:

Bu komut, başlangıç adresi OUT ile tanımlanan bölgeye IN word'ündeki değer N word
kere yazılır. N'in değeri 1 ila 255 arasında olabilir.

İNTERRUPT

Interrupt İlişkilendir

Sembol:
ATCH
EN

INT

EVEN
Operandlar:

INT (bayt): CPU 212: 0-31


CPU 214/215/216: 0-127

EVENT (bayt): CPU 212: 0, 1, 8-10, 12


CPU 214: 0-20
CPU 215: 0-23
CPU 216: 0-26

26
Açıklama:
Bu komut, bir interrupt olgusunu (EVENT) bir interrupt altprogramıyla (INT)
ilişkilendirir ve interrupt olgusuna izin verir. Interruptlar öncelik grubuna göre CPU
tarafından “ilk gelen ilk hizmet alır” prensibiyle işlenir. Bir anda sadece bir interrupt aktif
olabilir. Bir interrupt çalışırken başka biri oluşursa (önceliği olsa bile) sonraki sıraya alınır
(kaybolmaz). Eğer sistemin taşıyacağından daha fazla sayıda interrupt oluşursa, interrupt
görevi taşma özel hafıza biti set edilir. Görev alanı boşalınca ve program akış kontrolu
ana programa dönünce bu bit resetlenir.

Bir taşma oluşmadan, görev için aşağıdaki sayıda interrupt bekleyebilir.


Interrupt Tipi CPU 212 CPU 214 CPU 215 CPU 216
İletişim 4 4 4 8
Giriş/Çıkış 4 16 16 16
Zaman kontrollu 2 4 8 8

Interrupt İlişkisini Kaldır

Sembol:

DTCH
EN

EVEN
Operandlar:
EVENT (bayt): CPU 212: 0, 1, 8-10, 12
CPU 214: 0-20
CPU 215: 0-23
CPU 216: 0-26
Açıklama:

Bu komut, bir interrupt olgusunun (EVENT) bütün interrupt altprogramlarıyla ilişkisini


keser ve interrupt olgusunu engeller.

Interrupt Altprogramı

Sembol:

INT

Operandlar:

n (word): CPU 212: 0-31


CPU 214/215/216: 0-127
Açıklama:

27
Interrupt altprogramı (n) başlangıcını gösterir.

Interruptlara İzin Ver

Sembol:

ENI

Bu bobin, ilişkilendirilmiş bütün interrupt olgularının işlenmesine izin verir.

Interrupt İznini Kaldır

Sembol:

DISI

Açıklama:

Bütün interruptların işlenmesini engeller.

Interrupttan Dönüş

Sembol:

R Koşullu Geri Dön


ETI

R
ETI Koşulsuz Geri Dön

Açıklama:

Koşullu dön bobini, öncesindeki mantık 1 ise interrupt altprogramını sona erdirir. (CPU
210 tarafından desteklenmez.)
Koşulsuz geri dön bobini her interrupt programının son devresi olarak bulunmalıdır.

28

You might also like