s7-300 ladder_programlama
Transkript
s7-300 ladder_programlama
s Önsöz, İçindekiler Bitsel Mantık Komutları SIMATIC S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic - LAD) Karşılaştırma Komutları Dönüştürme Komutları Sayıcı Komutları Veri Bloğu Komutları Referans El Kitabı Mantıksal Kontrol Komutları 4 5 6 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8 Taşıma-Atama (Move) Komutları 9 Durumsal Bit Komutları Zamanlayıcı (Timer) Komutları Word Mantıksal Komutları 10 11 12 13 14 Ekler Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış Programlama Örnekleri A5E00261407-01 3 7 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Basım 01/2004 2 Tamsayı Matematiksel Komutları Program Kontrol Komutları Bu el kitabı sipariş numarası verilen dokümantasyon paketine aittir: 6ES7810-4CA07-8BW1 1 Merdiven Mantığı İle Çalışma İndeks A B C Güvenlik Yönergeleri Bu el kitabı, personel güvenliği ve bunun yanında ürün ve ürünlerin ve bağlantılı oldukları ekipmanın hasardan korunması için gereken hatırlatmaları içerir. Bu hatırlatmalar aşağıda gösterilen simgelerle ifade edilmiş ve ciddiyetlerine göre aşağıdaki metinlerle belirtilmiştir: Tehlike Uygun önlemler alınmadığı takdirde ölüm, ciddi personel yaralanması veya büyük maddi hasara yol açacağını belirtir. Uyarı Uygun önlemler alınmadığı takdirde ölüm, ciddi personel yaralanması veya büyük maddi hasara yol açabileceğini belirtir. Dikkat Uygun önlemler alınmadığı takdirde hafif personel yaralanmasına yol açabileceğini belirtir. Dikkat Uygun önlemler alınmadığı takdirde hafif maddi hasara yol açabileceğini belirtir. Hatırlatma Özellikle ilgilenilmesi gereken ürün üzerindeki önemli bir bilgiye, ürün idaresine veya dokümantasyonun belirli bir bölümüne dikkatinizi çeker. Kalifiye Personel Bu ekipmanın yalnızca kalifiye personel tarafından kurulup çalıştırmasına izin verilmelidir. Kalifiye personel, mevcut güvenlik uygulama ve standartları çerçevesinde devre, ekipman ve sistemleri teslim etme, kurma ve çalıştırma yetkisine sahip kişiler olarak tanımlanmıştır. Doğru Kullanım Aşağıdakileri dikkate alın: Uyarı Bu cihaz ve bileşenleri yalnızca katalog veya teknik tanımlamada açıklanmış uygulamalarda ve sadece Siemens tarafından onaylanmış ve tavsiye edilen cihaz ve bileşenlerle bağlantılı olarak kullanılabilir. Bu ürün, yalnızca doğru şekilde taşınmış, saklanmış, kurulmuş ve yerleştirilmiş ise ve tavsiye edildiği şekilde kullanılıp bakımı yapılırsa doğru ve güvenli şekilde çalışabilir. Ticari Markalar SIMATIC®, SIMATIC HMI® ve SIMATIC NET®, SIEMENS AG.'nin tescilli ticari markalarıdır. Bu dokümanda bahsi geçen diğer ticari isimleri kendi amaçları doğrultusunda kullanan üçüncü kişiler, ticari isim sahiplerinin haklarını ihlal edebilirler. Telif Hakkı© Siemens AG 2004 Tüm hakları saklıdır Sorumluluk Kabul Edilmeyecek Durumlar Bu doküman veya içeriğinin yazılı izin alınmaksızın tekrar oluşturulması, aktarılması veya kullanılması yasaktır. Oluşabilecek zarar, buna uygunsuz davrananların sorumluluğundadır. Patentli ve kayıtlı araçsal model veya tasarım hakları da dahil olmak üzere, tüm hakları saklıdır. Biz bu dokümanın içeriğini, kabul edilen donanım ve yazılım tanımları açısından kontrol ettik. Hatalar tümüyle öngörülemediğinden, tam kabul garantisi veremeyiz. Ancak, bu el kitabındaki veri düzenli olarak gözden geçirilmekte ve gerekli düzeltmeler sonraki basımlara eklenmektedir. Gelişim için önerilerinizi bekleriz. Siemens AG Bereich Kontrol ve Otomasyon Geschaeftsgebiet Endüstriyel Otomasyon Sistemleri Postfach 4848, D- 90327 Nuernberg ©Siemens AG 2004 Teknik veri değiştirilebilir. Siemens Aktiengesellschaft A5E00261407-01 Önsöz Önsöz Amaç Bu el kitabı, Merdiven Mantığı (LAD) programlama dili ile kullanıcı programları oluşturmak için kılavuzunuzdur. Bu el kitabı aynı zamanda, sentaks ve Merdiven Mantığı dil bileşenlerinin işlevlerini açıklayan bir referans bölümü içermektedir. Gerekli Temel Bilgi Bu el kitabı, S7 programcıları, operatörleri ve bakım/servis personeli için hazırlanmıştır. Bu el kitabını anlayabilmek için, otomasyon teknolojisi hakkında genel bilgi sahibi olunması gereklidir. Bilgisayar terimlerine ek olarak MS Windows 2000 Professional veya MS Windows XP Professional işletim sistemi altında PC benzeri diğer çalışma ekipmanları (örneğin programlama cihazları) bilgisi gereklidir. El Kitabının Geçerlilik Alanı Bu el kitabı, STEP 7 programlama yazılım paketinin 5.3 sürümü için geçerlidir. IEC 1131-3 İle Uyumluluk LAD, Uluslararası Elektroteknik Komisyonu (International Electrotechnical Commission) standardı IEC 1131-3 “Mantık Merdiveni“ (“Ladder Logic”) diline karşılık gelmektedir. Daha fazla ayrıntı için STEP 7 dosyası NORM_TBL.WRI içindeki standartlar tablosuna bakınız. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 iii Önsöz Gerekliler Bu Mantık Merdiveni el kitabını etkin biçimde kullanabilmeniz için, STEP 7 çevrimiçi yardımda dokümante edilmiş olan S7 programları arkasındaki teoriye aşina olmanız gerekmektedir. Dil paketleri de STEP 7 standart yazılımını kullanmaktadırlar, dolayısıyla bu yazılıma ve beraberindeki dokümantasyona da aşina olmanız gerekmektedir. Bu el kitabı, STEP 7 Referans dokümantasyon paketinin bir parçasıdır. Aşağıdaki tablo STEP 7 dokümantasyonunun bir özetini göstermektedir. Dokümantasyon Amaç Sipariş Numarası Teknik personel için kontrol görevlerini STEP 7 ve S7-300/400 programlanabilir kontrolörlerle gerçekleyebilme yöntemlerini açıklayan temel bilgi. 6ES7810-4CA07-8BW0 LAD, FBD ve STL programlama dillerini ve standart ve sistem işlevlerini açıklayıp referans bilgi sunarak STEP 7 temel bilgi düzeyini arttırır. 6ES7810-4CA07-8BW1 Çevrimiçi yardımlar Amaç Sipariş Numarası STEP 7 için yardım Çevrimiçi yardım şeklinde STEP 7 ile programlama ve donanım ayarlarının yapılması temel bilgisi. STEP 7 parçası Standart yazılım Aşağıdakiler için STEP 7 temel bilgisi • STEP 7 V5.3, başlangıç el kitabı ile çalışma • STEP 7 V5.3 ile programlama • Donanım ve haberleşme bağlantıları ayarlarının yapılması, STEP 7 V5.3 • S5'ten S7'ye dönüştürme el kitabı Aşağıdakiler için STEP 7 Referansı • S7-300/400 el kitapları için Merdiven Mantığı (Ladder Logic LAD) / İşlev Blok Şeması (Function Block Diagram - FDB) / İfade Listesi (Statement List - STL) • S7-300/400 için standart ve sistem işlevi AWL/KOP/FUP hakkında referans yardımlar SFB'ler/SFC'ler hakkında referans yardımlar Organizasyon blokları hakkında referans yardım iv STEP 7 parçası Standart yazılım Bağlam-duyarlı referans bilgisi S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Önsöz Çevrimiçi Yardım Bu el kitabı, yazılıma tümleşik bir çevrimiçi yardım ile bütünlenmektedir. Bu çevrimiçi yardım, size yazılımı kullanırken ayrıntılı destek sağlamak içindir. Yardım sistemi, yazılıma birkaç arayüz üzerinden tümleştirilmiştir: • Bağlam-duyarlı yardım, size üzerinde çalıştığınız içerik hakkında bilgi vermektedir, örneğin açık bir diyalog kutusu veya aktif pencere. Bağlam-duyarlı yardımı Yardım > Bağlam-Duyarlı Yardım (Help > Context-Sensitive Help) menü komutuyla veya F1 tuşuna basıp araç çubuğundaki soru işareti simgesi ile kullanabilirsiniz. • STEP 7 hakkında genel yardımı Yardım > İçerik (Help > Contents) veya bağlam-duyarlı yardım penceresinde "STEP 7 Yardımı" ("Help on STEP 7") düğmesi ile çağırabilirsiniz. • Tüm STEP 7 uygulamaları için terimler listesini "Terimler" ("Glossary") düğmesi ile çağırabilirsiniz. Bu el kitabı, "Merdiven Mantığı Yardım" ("Help on Ladder Logic") 'dan çıkartılmıştır. El kitabı ve çevrimiçi yardım aynı yapıyı paylaştıklarından, el kitabı ve çevrimiçi yardım arasında geçiş yapmak kolaydır. İlave Destek Teknik sorularınız olursa, Siemens temsilcisi veya acente yetkilisi ile temasa geçiniz. İletişime geçeceğiniz kişiyi şuradan bulabilirsiniz: http://www.siemens.com/automation/partner Eğitim Merkezleri Siemens sizi SIMATIC S7 otomasyon sistemine alıştırmak için bazı eğitim kursları sunmaktadır. Ayrıntılar için lütfen bölgenizdeki eğitim merkezi ile veya D 90327 Nuremberg, Almanya'daki eğitim merkezi ile temasa geçin. Telefon: +49 (911) 895-3200. İnternet: http://www.sitrain.com S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 v Önsöz A&D (Kontrol ve Otomasyon) Teknik Destek Tüm dünyada, günün 24 saati hizmette: Nurenberg Johnson City Pekin Tüm Dünya İçin (Nuernberg) Teknik Destek Günün 24 saati, yılda 365 gün Tel: +49 (180) 5050-222 Faks: +49 (180) 5050-223 E-Mail: [email protected] GMT: +1:00 Avrupa / Afrika (Nuernberg) Onay ABD (Johnson City) Teknik Destek ve Onay Asya / Avustralya (Pekin) Teknik Destek ve Onay Yerel saat: Pzt.-Cum. 08:00 - 17:00 Yerel saat: Pzt.-Cum. 08:00 - 17:00 Yerel saat: Pzt.-Cum. 08:00 - 17:00 arası arası arası Tel: +49 (180) 5050-222 Tel: +1 (423) 262 2522 Tel: +86 10 64 75 75 75 Faks: +49 (180) 5050-223 Faks: +1 (423) 262 2289 Faks: +86 10 64 74 74 74 E-Mail: [email protected] E-Mail: simatic.hotline@ E-Mail: adsupport.asia@ GMT: +1:00 sea.siemens.com siemens.com GMT: GMT: -5:00 +8:00 SIMATIC çağrı ve onay merkezlerinin dilleri genellikle İngilizce veya Almancadır. vi S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Önsöz İnternet Üzerinden Servis & Destek Dokümantasyonumuza ek olarak, bilgi birikimimizi de internet üzerinden çevrimiçi olarak şu adreste sunuyoruz: http://www.siemens.com/automation/service&support Bu adreste aşağıdakileri bulabilirsiniz: • Ürünleriniz hakkında sürekli güncel bilgileri bulabileceğiniz haber postası. • Servis & Destek altındaki arama işlevi üzerinden erişebileceğiniz doğru dokümanlar. • Tüm dünyadan kullanıcı ve uzmanların tecrübe alışverişinde bulundukları bir forum. • Kontrol & Otomasyon için yerel temsilciniz. • Saha hizmetleri, tamir, yedek parça ve daha fazlası hakkında bilgi "Servisler" ("Services") altındadır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 vii Önsöz viii S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 İçindekiler İçindekiler 1 Bitsel Mantık Komutları 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 Bitsel Mantık Komutlarına Genel Bakış ---| |--- Normalde Açık Kontakt (Adres) ---| / |--- Normalde Kapalı Kontakt (Adres) XOR Bit Exclusive OR (Aynıları Dışlayan VEYA) --|NOT|-- Ters Enerji Akışı ---( ) Çıkış Bobini ---( # )--- Hat Arası Çıkış ---( R ) Reset Bobini ---( S ) Set Bobini RS Reset-Set Flip Flop SR Set-Reset Flip Flop ---( N )--- Negatif RLO Ayrıt Tespiti (Ayrıt Sezimi - Edge Detection) ---( P )--- Pozitif RLO Ayrıt Tespiti ---(SAVE) RLO'yu BR Belleğine Kaydet NEG Adres Negatif Ayrıt Tespiti POS Adres Pozitif Ayrıt Tespiti Anlık Okuma Anlık Yazma 2 Karşılaştırma Komutları 2.1 2.2 2.3 2.4 Karşılaştırma Komutlarına Genel Bakış CMP ? I Tamsayı Karşılaştır CMP ? D Tamsayı Karşılaştır CMP ? R Tamsayı Karşılaştır 3 Dönüştürme Komutları 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 Dönüştürme Komutlarına Genel Bakış BCD_I BCD'den Tamsayıya I_BCD Tamsayıdan BCD'ye I_DINT Tamsayıdan Double Tamsayıya BCD_DI BCD'den Double Tamsayıya DI_BCD Double Tamsayıdan BCD'ye DI_REAL Double Tamsayıdan Gerçel Sayıya INV_I Birin Tümleyeni Tamsayı INV_DI Birin Tümleyeni Double Tamsayı NEG_I İkinin Tümleyeni Tamsayı NEG_DI İkinin Tümleyeni Double Tamsayı NEG_R Gerçel Sayıyı Negatif Yap ROUND Double Tamsayıya Yuvarla TRUNC Double Tamsayı Kısmını At CEIL Tavan FLOOR Taban S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-1 1-1 1-2 1-3 1-4 1-5 1-6 1-8 1-9 1-11 1-12 1-14 1-16 1-17 1-18 1-19 1-20 1-21 1-23 2-1 2-1 2-2 2-3 2-4 3-1 3-1 3-2 3-3 3-4 3-5 3-6 3-7 3-8 3-9 3-10 3-11 3-12 3-13 3-14 3-15 3-16 ix İçindekiler 4 Sayıcı Komutları 4.1 Sayıcı Komutlarına Genel Bakış 4.2 S_CUD Yukarı-Aşağı Sayıcı 4.3 S_CU Yukarı Sayıcı 4.4 S_CD Aşağı Sayıcı 4.5 ---( SC ) Sayıcı Değeri Atama 4.6 ---( CU ) Yukarı Sayıcı Bobini 4.7 ---( CD ) Aşağı Sayıcı Bobini 5 Veri Bloğu Komutları 5.1 ---(OPN) Veri Bloğu Aç: DB veya DI 5-1 5-1 6 Mantıksal Kontrol Komutları 6.1 Mantıksal Kontrol Komutlarına Genel Bakış 6.2 ---(JMP)--- Şartsız Atla (Jump) 6.3 ---(JMP)--- Şartlı Atla 6.4 ---( JMPN ) Atla-Eğer-Değilse 6.5 LABEL Etiketle 6-1 6-1 6-2 6-3 6-4 6-5 7 Tamsayı Matematiksel Komutları 7-1 7.1 7.2 7-1 7-2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 7.10 7.11 8 Tamsayı Matematiksel Komutlarına Genel Bakış Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturma ADD_I Tamsayı Topla SUB_I Tamsayı Çıkart MUL_I Tamsayı Çarp DIV_I Tamsayı Böl ADD_DI Double Tamsayı Topla SUB_DI Double Tamsayı Çıkart MUL_DI Double Tamsayı Çarp DIV_DI Double Tamsayı Böl MOD_DI Double Tamsayı Kalanı Döndür 7-3 7-4 7-5 7-6 7-7 7-8 7-9 7-10 7-11 Gerçel Sayı ( Kayan Nokta) Matematiksel Komutları 8-1 8.1 8.2 8-1 8-2 Gerçel Sayı Matematiksel Komutlarına Genel Bakış Gerçel Sayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturma 8.3 Temel Komutlar 8.3.1 ADD_R Gerçel Sayı Topla 8.3.2 SUB_R Gerçel Sayı Çıkart 8.3.3 MUL_R Gerçel Sayı Çarp 8.3.4 DIV_R Gerçel Sayı Böl 8.3.5 ABS Gerçel Sayının Mutlak Değerini Hesapla 8.4 Ek Komutlar 8.4.1 SQR Karesini Hesapla 8.4.2 SQRT Karekökünü Hesapla 8.4.3 EXP Üstel Değerini Hesapla 8.4.4 LN Doğal Logaritmasını Hesapla 8.4.5 SIN Sinüs Değerini Hesapla 8.4.6 COS Kosinüs Değerini Hesapla 8.4.7 TAN Tanjant Değerini Hesapla 8.4.8 ASIN Ark Sinüs Değerini Hesapla 8.4.9 ACOS Ark Kosinüs Değerini Hesapla 8.4.10 ATAN Ark Tanjant Değerini Hesapla x 4-1 4-1 4-3 4-5 4-7 4-9 4-10 4-12 8-3 8-3 8-4 8-5 8-6 8-7 8-8 8-8 8-9 8-10 8-11 8-12 8-13 8-14 8-15 8-16 8-17 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 İçindekiler 9 Taşıma-Atama (Move) Komutları 9.1 MOVE Değer Ata 10 Program Kontrol Komutları 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.9 10.10 10.11 10.12 10.13 10.14 11 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.1.5 11.1.6 11.1.7 11.2 11.2.1 11.2.2 11.2.3 12 Program Kontrol Komutlarına Genel Bakış ---(Call) Bobinden FC SFC Çağır (Parametresiz) CALL_FB Kutudan FB Çağır CALL_FC Kutudan FC Çağır CALL_SFB Kutudan Sistem FB Çağır CALL_SFC Kutudan Sistem FC Çağır Çoklu Çalışma Çağır Kütüphaneden Bir Blok Çağır MCR İşlevlerinin Kullanımına Dair Önemli Notlar ---(MCR<) Ana Kontrol Rölesi Açık ---(MCR>) Ana Kontrol Rölesi Kapalı ---(MCRA) Ana Kontrol Rölesini Aktive Et ---(MCRD) Ana Kontrol Rölesini Deaktive Et ---(RET) Dön Öteleme Komutları Öteleme Komutlarına Genel Bakış SHR_I Tamsayıyı Sağa Ötele SHR_DI Double Tamsayıyı Sağa Ötele SHL_W Word'ü Sola Ötele SHR_W Word'ü Sağa Ötele SHL_DW Double Word'ü Sola Ötele SHR_DW Double Word'ü Sağa Ötele Dönel Öteleme (Rotate) Komutları Dönel Öteleme Komutlarına Genel Bakış ROL_DW Double Word'ü Sola Dönel Ötele ROR_DW Double Word'ü Sağa Dönel Ötele Durumsal Bit (Status Bit) Komutları 12.1 12.2 12.3 12.4 12.5 12.6 12.7 12.8 12.9 12.10 12.11 Durumsal Bit Komutlarına Genel Bakış OV ---| |--- İstisna Biti Taşması OS ---| |--- İstisna Biti Taşması Kaydedildi UO ---| |--- Geçersiz İstisna Biti BR ---| |--- İstisna Biti İkilik Sonucu ==0 ---| |--- Sonuç Biti Sıfıra Eşit <>0 ---| |--- Sonuç Biti Sıfırdan Farklı >0 ---| |--- Sonuç Biti Sıfırdan Büyük <0 ---| |--- Sonuç Biti Sıfırdan Küçük >=0 ---| |--- Sonuç Biti Sıfırdan Büyük veya Eşit <=0 ---| |--- Sonuç Biti Sıfırdan Küçük veya Eşit S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 9-1 9-1 10-1 10-1 10-2 10-4 10-6 10-8 10-10 10-12 10-12 10-13 10-14 10-16 10-18 10-19 10-20 11-1 11-1 11-1 11-2 11-3 11-5 11-6 11-7 11-9 11-11 11-11 11-11 11-13 12-1 12-1 12-2 12-3 12-5 12-6 12-7 12-8 12-9 12-10 12-11 12-12 xi İçindekiler 13 Zamanlayıcı (Timer) Komutları 13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 13.9 13.10 13.11 13.12 13-1 Zamanlayıcı Komutlarına Genel Bakış Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcının Bileşenleri S_PULSE Vurumlu (Pulse) S5 Zamanlayıcı S_PEXT Ek Vurumlu (Extended Pulse) S5 Zamanlayıcı S_ODT Gecikmeli (On-Delay) S5 Zamanlayıcı S_ODTS Hafızalı Gecikmeli (Retentive On-Delay) S5 Zamanlayıcı S_OFFDT Gecikmesiz (Off-Delay) S5 Zamanlayıcı ---( SP ) Vurum Zamanlayıcı Bobin (Pulse Timer Coil) ---( SE ) Ek Vurum Zamanlayıcı Bobin (Extended Pulse Timer Coil) ---( SD ) Gecikmeli Zamanlayıcı Bobini (On-Delay Timer Coil) ---( SS ) Hafızalı Gecikmeli Zamanlayıcı Bobin (Retentive On-Delay Timer Coil) ---( SF ) Gecikmesiz Zamanlayıcı Bobin (Off-Delay Timer Coil) 13-1 13-2 13-5 13-7 13-9 13-11 13-13 13-15 13-17 13-19 13-21 13-23 14 Word Mantıksal Komutları 14.1 Word Mantıksal Komutlarına Genel Bakış 14.2 WAND_W (Word) AND Word - (W VE W) 14.3 WOR_W (Word) OR Word - (W VEYA W) 14.4 WAND_DW (Word) AND Double Word - (W VE DW) 14.5 WOR_DW (Word) OR Double Word - (W VEYA DW) 14.6 WXOR_W (Word) Exclusive OR Word - (W XOR W) 14.7 WXOR_DW (Word) Exclusive OR Double Word - (W XOR DW) A Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış A-1 A.1 A-1 A.2 B Programlama Örnekleri B.1 B.2 B.3 B.4 B.5 B.6 C İngilizce Simgesellerine (Mnemonics) Göre Sıralanmış LAD Komutları (Uluslararası) Almanca Simgesellerine (Mnemonics) Göre Sıralanmış LAD Komutları (SIMATIC) 14-1 14-1 14-2 14-3 14-4 14-5 14-6 14-7 A-5 B-1 Programlama Örneklerine Genel Bakış Örnek: Bitsel Mantık Komutları Örnek: Zamanlayıcı Komutları Örnek: Sayıcı ve Karşılaştırma Komutları Örnek: Tamsayı Matematiksel Komutları Örnek: Word Mantıksal Komutları Merdiven Mantığı İle Çalışma C.1 EN/ENO Mekanizması C.1.1 EN ve ENO Bağlı Olan Toplayıcı (Adder) C.1.2 EN Bağlı, ENO Bağlı Olmayan Toplayıcı C.1.3 EN Bağlı Değil, ENO Bağlı Olan Toplayıcı C.1.4 EN ve ENO Bağlı Olmayan Toplayıcı C.2 Parametre Aktarımı B-1 B-2 B-6 B-10 B-12 B-13 C-1 C-1 C-2 C-3 C-3 C-4 C-4 İndeks xii S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1 1.1 Bitsel Mantık Komutları Bitsel Mantık Komutlarına Genel Bakış Tanım Bitsel mantık komutları iki basamak ile çalışır, 1 ve 0. Bu iki basamak, ikilik sistem denilen bir sayı sisteminin temelini oluşturur. Bu iki basamak, 1 ve 0, ikilik basamak veya bit olarak adlandırılırlar. Kontakt ve bobinlerin dünyasında 1 aktive edilmiş veya enerji verilmişi, 0 ise aktive edilmemiş veya enerji verilmemişi temsil eder. Bitsel mantık komutları 1 ve 0 sinyal seviyelerini ifade eder ve onları Boole cebiri mantığı ile bütünleştirir. Bu kombinasyonlar 1 veya 0 sonucunu verir ki buna "mantıksal işlemin sonucu" denir. (“result of logic operation” - RLO). Mantıksal komutlarca tetiklenen mantıksal işlemler birçok işlev görürler. Aşağıdaki işlevleri gören bitsel mantık komutları mevcuttur: • • • • • • • ---| |-----| / |-----(SAVE) XOR ---( ) ---( # )-----|NOT|--- Normalde Açık Kontakt (Adres) Normalde Kapalı Kontakt (Adres) RLO'yu BR Belleğine Kaydet Bit Exclusive OR (Aynıları Dışlayan VEYA) Çıkış Bobini Hat Arası Çıkış Ters Enerji Akışı Aşağıdaki komutlar RLO'nun 1 değerine tepki verirler: • • • • ---( S ) ---( R ) SR RS Set Bobini Reset Bobini Set-Reset Flip Flop Reset-Set Flip Flop Diğer komutlar pozitif veya negatif ayrıt geçişine aşağıdaki işlevleri görmek üzere tepki verirler. • • • • • • ---(N)-----(P)--NEG POS Anlık Okuma Anlık Yazma Negatif RLO Ayrıt Tespiti Pozitif RLO Ayrıt Tespiti Adres Negatif Ayrıt Tespiti Adres Pozitif Ayrıt Tespiti S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-1 Bitsel Mantık Komutları 1.2 ---| |--- Normalde Açık Kontakt (Adres) Simge <adres> ---| |--- Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, L, D, T, C İşaretlenmiş bit Tanım ---| |--- (Normalde Açık Kontakt), belirtilen <adres> 'te saklanan bit değeri "1" 'e eşit olunca kapatılır. Kontakt kapatılınca, merdiven ray enerjisi kontakt üzerinden akar ve mantıksal işlem sonucu (RLO) = "1" olur. Aksi halde, eğer belirtilen <adres> 'teki sinyal durumu "0" ise, kontakt açıktır. Kontakt açıkken, enerji kontakt üzerinden akmaz ve mantıksal işlem sonucu (RLO) = "0" olur. Seri olarak kullanıldığında, ---| |--- RLO'ya AND (VE) mantığı ile bağlıdır. Paralel olarak kullanıldığında, RLO'ya OR (VEYA) mantığı ile bağlıdır. Durum Word'ü (Status Word) Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Örnek I 0.0 I 0.1 I 0.2 Aşağıdaki şartlardan biri oluşursa, enerji akar: I0.0 ve I0.1 girişlerinde sinyal seviyesi "1" ise Veya I0.2 girişinde sinyal seviyesi "1" ise 1-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1.3 ---| / |--- Normalde Kapalı Kontakt (Adres) Sembol <adres> ---| / |--Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, L, D, T, C İşaretlenmiş bit Tanım ---| / |--- (Normalde Kapalı Kontakt), belirtilen <adres> 'te saklanan bit değeri "0" 'a eşit olunca kapatılır. Kontakt kapatılınca, merdiven ray enerjisi kontakt üzerinden akar ve mantıksal işlem sonucu (RLO) = "1" olur. Aksi halde, eğer belirtilen <adres> 'teki sinyal durumu "1" ise, kontakt açılır. Kontakt açılınca, enerji kontakt üzerinden akmaz ve mantıksal işlem sonucu (RLO) = "0" olur. Seri olarak kullanıldığında, ---| / |--- RLO'ya AND (VE) mantığı ile bağlıdır. Paralel olarak kullanıldığında, RLO'ya OR (VEYA) mantığı ile bağlıdır. Durum Word'ü BR Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - - X X X 1 Örnek I 0.0 I 0.1 I 0.2 Aşağıdaki şartlardan biri oluşursa, enerji akar: I0.0 ve I0.1 girişlerinde sinyal seviyesi "1" ise Veya I0.2 girişinde sinyal seviyesi "1" ise S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-3 Bitsel Mantık Komutları 1.4 XOR Bit Exclusive OR (Aynıları Dışlayan VEYA) Normalde açık ve normalde kapalı kontaktlar, XOR işlevi için, aşağıda gösterildiği şekilde oluşturulmalıdır. Semboller <adres1> <adres2> <adres1> <adres2> Parametre Veri Tipi Bellek Alanı Tanım <adres1> BOOL I, Q, M, L, D, T, C Okunan bit <adres2> BOOL I, Q, M, L, D, T, C Okunan bit Tanım Eğer belirtilen bitlerin durumları birbirinden farklı ise, XOR (Bit Exclusive OR), RLO = "1" sonucunu oluşturur. Örnek I 0.0 I 0.1 I 0.0 I 0.1 Q 4.0 Q4.0'ın sonucu "1" 'dir, eğer (I0.0 = "0" AND I0.1 = "1") OR (I0.0 = "1" AND I0.1 = "0"). 1-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1.5 --|NOT|-- Ters Enerji Akışı Sembol ---|NOT|--- Tanım ---|NOT|--- (Ters Enerji Akışı) RLO bitini negatifler. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - - 1 X - Örnek Q 4.0 I 0.0 NOT I 0.1 I 0.2 Eğer aşağıdaki şartlardan biri mevcutsa, Q4.0 'ın çıkış sinyal durumu "0"'dır: I0.0 girişinde sinyal seviyesi "1" ise Veya I0.1 ve I0.2 girişlerinde sinyal seviyesi "1" ise. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-5 Bitsel Mantık Komutları 1.6 ---( ) Çıkış Bobini Sembol <adres> ---( ) Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, L, D Yazılan bit Tanım ---( ) (Çıkış Bobini), röle mantık şemasındaki bir bobin gibi çalışır. Eğer bobin üzerinde enerji akışı varsa (RLO = 1), <adres> bölgesindeki bit "1" olarak atanır. Eğer bobin üzerinde enerji akışı yoksa (RLO = 0), <adres> bölgesindeki bit "0" olarak atanır. Bir çıkış bobini, bir merdiven basamağının sadece sağ bitimine yerleştirilebilir. Çoklu çıkış elemanları (Maks. 16) mümkündür (Örneğe bakınız). Negatiflenmiş bir çıkış, --- |NOT|--- (ters enerji akışı) elemanı kullanılarak gerçeklenebilir. MCR (Ana Kontrol Rölesi - Master Control Relay) Bağımlılığı MCR bağımlılığı ancak bir çıkış bobini aktif bir MCR bölgesi içine yerleştirilirse aktive edilir. Aktive edilmiş MCR bölgesi dahilinde, eğer MCR açıksa ve çıkış bobini üzerinde enerji akışı varsa; adreslenmiş olan bit, o andaki enerji akış durumuna işaretlenir. Eğer MCR kapalı ise, enerji akış durumundan bağımsız olarak, bir mantıksal "0" belirlenen adrese yazılır. Durum Word'ü Değeri: 1-6 BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 X - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları Örnek I 0.0 I 0.2 I 0.1 Q 4.0 I 0.3 Q 4.1 Eğer aşağıdaki şartlardan biri mevcutsa, Q4.0 'ın çıkış sinyal durumu "1"'dır: I0.0 ve I0.1 girişlerinde sinyal seviyesi "1" ise Veya I0.2 girişinde sinyal seviyesi "0" ise Eğer aşağıdaki şartlardan biri mevcutsa, Q4.1 'ın çıkış sinyal durumu "1"'dır: I0.0 ve I0.1 girişlerinde sinyal seviyesi "1" ise Veya I0.2 girişinde sinyal seviyesi "0" ve I0.3 girişinde sinyal seviyesi "1" ise. Eğer örnek basamaklar, aktive edilmiş bir MCR bölgesi içindeyse: MCR açıkken, Q4.0 ve Q4.1 yukarıda açıklandığı şekilde, enerji akışına bağlı olarak işaretlenir. MCR kapalıyken (=0), Q4.0 ve Q4.1, enerji akışından bağımsız şekilde "0" olarak işaretlenir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-7 Bitsel Mantık Komutları 1.7 ---( # )--- Hat Arası Çıkış Sembol <adres> ---( # )--Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, *L, D Yazılan bit * Bir L bölgesi adresi, ancak mantıksal blok (FC, FB, OB) bildirim tablosunda TEMP olarak bildirilmişse kullanılabilir. Tanım ---( # )--- (Hat Arası Çıkış), RLO bitini (enerji akış durumu) belirlenen bir <adres> 'e kaydeden ara bir atama elemanıdır. Hat arası çıkış elemanı, kendisinden önde çalışmakta olan dal elemanlarının mantıksal sonucunu saklar. <diğer kontaktlarla seri konumdayken, ---( # )--- bir kontakt gibi araya eklenir. Bir ---( # )--- elemanı asla enerji rayına veya bir dal bağlantısının hemen sonrasına veya bir dalın sonuna bağlanamaz. Negatiflenmiş bir ---( # )---, ---|NOT|--- (ters enerji akışı) elemanı kullanılarak elde edilebilir. MCR (Ana Kontrol Rölesi - Master Control Relay) Bağımlılığı MCR bağımlılığı ancak bir hat arası çıkış bobini aktif bir MCR bölgesi içine yerleştirilirse aktive edilir. Aktive edilmiş MCR bölgesi dahilinde, eğer MCR açıksa ve hat arası çıkış bobini üzerinde enerji akışı varsa; adreslenmiş olan bit, o andaki enerji akış durumuna işaretlenir. Eğer MCR kapalı ise, enerji akış durumundan bağımsız olarak, bir mantıksal "0" belirlenen adrese yazılır. Durum Word'ü Değeri: 1-8 BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 X - 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları Örnek I 1.0 I 1.1 M 0.0 I 2.2 I 1.3 (#) M 1.1 NOT (#) NOT M 2.2 Q 4.0 (#) ( ) I 1.0 I 1.1 M 0.0'ın RLO'su I 1.0 I 1.1 I 2.2 I 1.3 M 1.1'in RLO'su NOT M 2.2 tüm bit mantıksal kombinasyonunun RLO'sunu içerir 1.8 ---( R ) Reset Bobini Sembol <adres> ---( R ) Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, L, D.T,C Reset biti Tanım ---( R ) (Reset Bobini) sadece eğer önceki komutun RLO'su "1" ise çalıştırılır (Bobine enerji akar). Eğer bobine enerji akarsa (RLO = "1"), elemanın belirlenmiş <adres> 'i "0" 'a resetlenir. "0" değerli bir RLO (bobine enerji akışı yok) hiçbir etki yaratmaz ve elemanın belirlenmiş adresteki durumu değişmeden kalır. <adres>, aynı zamanda zaman değeri "0" 'a resetlenmiş bir zamanlayıcı (T no.) veya "0" 'a resetlenmiş bir sayıcı (C no.) olabilir. (T no.) MCR (Ana Kontrol Rölesi - Master Control Relay) Bağımlılığı MCR bağımlılığı ancak bir reset bobini aktif bir MCR bölgesi içine yerleştirilirse aktive edilir. Aktive edilmiş MCR bölgesi dahilinde, eğer MCR açıksa ve reset bobini üzerinde enerji akışı varsa; adreslenmiş olan bit, "0" durumuna resetlenir. Eğer MCR kapalı ise, enerji akış durumundan bağımsız olarak, elemanın belirlenmiş adresteki durumu aynı kalır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-9 Bitsel Mantık Komutları Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 X - 0 Örnek Devre 1 I 0.0 I 0.1 Q 4.0 R I 0.2 Devre 2 I 0.3 T1 R I 0.4 C1 Devre 3 R Eğer aşağıdaki şartlardan biri mevcutsa, Q4.0 'ın çıkış sinyal durumu "0"'a resetlenir: I0.0 ve I0.1 girişlerinde sinyal seviyesi "1" ise Veya I0.2 girişinde sinyal seviyesi "0" ise Eğer RLO "0" ise, Q4.0 çıkışının sinyal durumu değişmeden kalır. T1 zamanlayıcısının sinyal durumu ancak şu şart altında değişir: I0.3 girişinde sinyal seviyesi "1" ise C1 sayıcısının sinyal durumu ancak şu şart altında değişir: I0.4 girişinde sinyal seviyesi "1" ise Eğer örnek basamaklar, aktive edilmiş bir MCR bölgesi içindeyse: MCR açıkken, Q4.0, T1 ve C1 yukarıda açıklandığı şekilde reset edilir. MCR kapalıyken, Q4.0, T1 ve C1 RLO'nun durumundan (enerji akış durumu) bağımsız olarak değişmeden kalırlar. 1-10 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1.9 ---( S ) Set Bobini Sembol <adres> ---( S ) Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, L, D Set edilen bit Tanım ---( S ) (Set Bobini) sadece eğer önceki komutun RLO'su "1" ise çalıştırılır (Bobine enerji akar). Eğer RLO "1" ise, elemanın belirlenmiş <adres> 'i, "1" set edilir. "0" değerli bir RLO hiçbir etki yaratmaz ve elemanın belirlenmiş adresteki durumu değişmeden kalır. MCR (Ana Kontrol Rölesi - Master Control Relay) Bağımlılığı MCR bağımlılığı ancak bir set bobini aktif bir MCR bölgesi içine yerleştirilirse aktive edilir. Aktive edilmiş MCR bölgesi dahilinde, eğer MCR açıksa ve set bobini üzerinde enerji akışı varsa; adreslenmiş olan bit, "1" durumuna set edilir. Eğer MCR kapalı ise, enerji akış durumundan bağımsız olarak, elemanın belirlenmiş adresteki durumu aynı kalır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 X - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-11 Bitsel Mantık Komutları Örnek I 0.0 I 0.1 Q 4.0 S I 0.2 Eğer aşağıdaki şartlardan biri mevcutsa, Q4.0 'ın çıkış sinyal durumu "1"'dır: I0.0 ve I0.1 girişlerinde sinyal seviyesi "1" ise Veya I0.2 girişinde sinyal seviyesi "0" ise Eğer RLO "0" ise, Q4.0 çıkışının sinyal durumu değişmeden kalır. Eğer örnek basamaklar, aktive edilmiş bir MCR bölgesi içindeyse: MCR açıkken, Q4.0, yukarıda açıklandığı şekilde set edilir. MCR kapalıyken, Q4.0, RLO'nun durumundan (enerji akış durumu) bağımsız olarak değişmeden kalır. 1.10 RS Reset-Set Flip Flop Sembol <adres> RS S Q R 1-12 Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, L, D Set veya reset biti S BOOL I, Q, M, L, D Reset komutu mümkün R BOOL I, Q, M, L, D Reset komutu mümkün Q BOOL I, Q, M, L, D <adres> 'in sinyal durumu S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları Tanım RS (Reset-Set Flip Flop), eğer R girişindeki sinyal durumu "1" ve S girişindeki sinyal durumu "0" ise resetlenir. Aksi halde, R girişindeki sinyal durumu "0" ve S girişindeki sinyal durumu "1" ise flip flop setlenir. Her iki girişte de RLO "1" ise, sıralama yüksek önem taşır. RS flip flop önce reset komutunu, daha sonra da belirlenen <adres> 'teki set komutunu yerine getirir ve böylece bu adres program aramanın kalanı için set edilmiş olarak kalır. S (Set) ve R (Reset) komutları yalnızca RLO "1" iken çalıştırılırlar. "0" değerli RLO bu komutlar üzerinde hiçbir etki yaratmaz ve komutta belirlenmiş adres değişmeden kalır. MCR (Ana Kontrol Rölesi - Master Control Relay) Bağımlılığı MCR bağımlılığı ancak bir RS flip flop aktif bir MCR bölgesi içine yerleştirilirse aktive edilir. Aktive edilmiş MCR bölgesi dahilinde, eğer MCR açıksa, adreslenmiş olan bit yukarıda açıklandığı şekilde, "0" 'a reset veya "1" 'e set edilir. Eğer MCR kapalı ise, giriş durumlarından bağımsız olarak, elemanın belirlenmiş adresteki durumu aynı kalır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Örnek I 0.0 M 0.0 RS R Q Q 4.0 I 0.1 S Eğer I0.0 girişinde sinyal durumu "1" ve I0.0 girişinde "0" ise, M0.0 bellek biti set edilir ve Q4.0 çıkışı "0" olur. Aksi halde eğer I0.0 girişinde sinyal durumu "0" ve I0.1 girişinde "1" ise, M0.0 bellek biti reset edilir ve Q4.0 çıkışı "1" olur. Eğer her iki sinyal durumu "0" ise, hiçbir şey değişmez. Eğer her iki sinyal durumu "1" ise, set komutu öncelik sebebiyle baskın çıkar; M0.0 set edilir ve Q4.0 "1" olur. Eğer örnek, aktive edilmiş bir MCR bölgesi içindeyse: MCR açıkken, Q4.0, yukarıda açıklandığı şekilde reset veya set edilir. MCR kapalıyken, Q4.0, giriş durumlarından bağımsız olarak değişmeden kalır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-13 Bitsel Mantık Komutları 1.11 SR Set-Reset Flip Flop Sembol <adres> SR S Q R Parametre Veri Tipi Bellek Alanı Tanım <adres> BOOL I, Q, M, L, D Set veya reset biti S BOOL I, Q, M, L, D Reset komutu mümkün R BOOL I, Q, M, L, D Reset komutu mümkün Q BOOL I, Q, M, L, D <adres> 'in sinyal durumu Tanım SR (Set-Reset Flip Flop), eğer S girişindeki sinyal durumu "1" ve R girişindeki sinyal durumu "0" ise set edilir. Aksi halde, S girişindeki sinyal durumu "0" ve R girişindeki sinyal durumu "1" ise flip flop resetlenir. Her iki girişte de RLO "1" ise, sıralama yüksek önem taşır. SR flip flop önce set komutunu, daha sonra da belirlenen <adres> 'teki reset komutu yerine getirir ve böylece bu adres program aramanın kalanı için reset edilmiş olarak kalır. S (Set) ve R (Reset) komutları yalnızca RLO "1" iken çalıştırılırlar. "0" değerli RLO bu komutlar üzerinde hiçbir etki yaratmaz ve komutta belirlenmiş adres değişmeden kalır. MCR (Ana Kontrol Rölesi - Master Control Relay) Bağımlılığı MCR bağımlılığı ancak bir SR flip flop aktif bir MCR bölgesi içine yerleştirilirse aktive edilir. Aktive edilmiş MCR bölgesi dahilinde, eğer MCR açıksa, adreslenmiş olan bit yukarıda açıklandığı şekilde, "1" 'e set veya "0" 'a reset edilir. Eğer MCR kapalı ise, giriş durumlarından bağımsız olarak, elemanın belirlenmiş adresteki durumu aynı kalır. Durum Word'ü Değeri: 1-14 BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - X X X 1 - S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları Örnek I 0.0 M 0.0 SR S Q Q 4.0 I 0.1 R Eğer I0.0 girişinde sinyal durumu "1" ve I0.0 girişinde "0" ise, M0.0 bellek biti set edilir ve Q4.0 çıkışı "1" olur. Aksi halde eğer I0.0 girişinde sinyal durumu "0" ve I0.1 girişinde "1" ise, M0.0 bellek biti reset edilir ve Q4.0 çıkışı "0" olur. Eğer her iki sinyal durumu "0" ise, hiçbir şey değişmez. Eğer her iki sinyal durumu "1" ise, reset komutu öncelik sebebiyle baskın çıkar; M0.0 reset edilir ve Q4.0 "0" olur. Eğer örnek, aktive edilmiş bir MCR bölgesi içindeyse: MCR açıkken, Q4.0, yukarıda açıklandığı şekilde set veya reset edilir. MCR kapalıyken, Q4.0, giriş durumlarından bağımsız olarak değişmeden kalır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-15 Bitsel Mantık Komutları 1.12 ---( N )--- Negatif RLO Ayrıt Tespiti Sembol <adres> ---( N ) Parametre <adres> Veri Tipi BOOL Bellek Alanı I, Q, M, L, D Tanım RLO'nun önceki sinyal durumunu saklayan ayrıt bellek biti Tanım ---( N )--- (Negatif RLO Ayrıt Tespiti) adresteki "1" 'den "0" 'a sinyal değişimini tespit eder ve bunu komuttan sonra RLO = "1" olarak görüntüler. RLO'nun o andaki sinyal durumu, adresteki yani ayrıt bellek biti sinyal durumu ile karşılaştırılır. Eğer adresteki sinyal durumu "1" ise ve RLO komuttan önce "0" idiyse, komuttan sonra RLO "1" (vurum-pulse), diğer tüm durumlarda "0" olacaktır. Komuttan önceki RLO, adreste saklanır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 X X 1 Örnek I 0.0 I 0.1 M 0.0 N CAS1 JMP I 0.2 M0.0 ayrıt bellek biti, önceki RLO durumunu saklar. RLO'da "1" 'den "0" 'a sinyal değişimi olduğunda, program CAS1 etiketine (LABEL) atlar (JUMP). 1-16 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1.13 ---( P )--- Pozitif RLO Ayrıt Tespiti Sembol <adres> ---(P)--Parametre <adres> Veri Tipi BOOL Bellek Alanı I, Q, M, L, D Tanım RLO'nun önceki sinyal durumunu saklayan ayrıt bellek biti Tanım ---( P )--- (Pozitif RLO Ayrıt Tespiti) adresteki "0" 'dan "1" 'e sinyal değişimini tespit eder ve bunu komuttan sonra RLO = "1" olarak görüntüler. RLO'nun o andaki sinyal durumu, adresteki yani ayrıt bellek biti sinyal durumu ile karşılaştırılır. Eğer adresteki sinyal durumu "0" ise ve RLO komuttan önce "1" idiyse, komuttan sonra RLO "1" (vurum-pulse), diğer tüm durumlarda "0" olacaktır. Komuttan önceki RLO, adreste saklanır. Durum Word'ü Değeri: BR - CC 1 - CC 0 - OV - OS - OR 0 STA X RLO X /FC 1 Örnek I 0.0 I 0.1 M 0.0 CAS1 P JMP I 0.2 M0.0 ayrıt bellek biti, önceki RLO durumunu saklar. RLO'da "0" 'dan "1" 'e sinyal değişimi olduğunda, program CAS1 etiketine atlar. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-17 Bitsel Mantık Komutları 1.14 ---(SAVE) RLO'yu BR Belleğine Kaydet Sembol ---(SAVE) Tanım ---(SAVE) (RLO'yu BR Belleğine Kaydet) RLO'yu Durum Word'ü BR bitine kaydeder. İlk kontrol biti /FC reset edilmez. Bu sebeple, BR bitinin durumu bir sonraki devredeki VE (AND) mantıksal işlemine eklenir. "SAVE" komutu için (LAD, FBD, STL), aşağıdakiler el kitabında ve çevrimiçi yardımda önerilen kullanım değildir ancak geçerlidir: Biz, SAVE komutunu kullanıp daha sonra aynı blok veya alt blok içinde BR'yi kontrol etmenizi tavsiye etmiyoruz, çünkü BR biti bu aradaki birçok komut tarafından değiştirilebilir. SAVE komutunu bir bloktan çıkmadan önce kullanmak tavsiye edilebilir, çünkü ENO çıkışı (=BR) o anda RLO bitinin değerine eşitlenir ve o zaman bloktaki hatalar için bunu kontrol edebilirsiniz. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X - - - - - - - - Örnek I 0.0 I 0.1 SAVE I 0.2 Dalın durumu (=RLO) BR bitinde saklanır. 1-18 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1.15 NEG Adres Negatif Ayrıt Tespiti Sembol <adres1> NEG Q <adres2> M_BIT Parametre <adres1> Veri Tipi BOOL Bellek Alanı I, Q, M, L, D Tanım Okunan sinyal <adres2> BOOL I, Q, M, L, D <adres1> 'in önceki sinyal durumunu saklayan M_BIT ayrıt bellek biti Q BOOL I, Q, M, L, D Bir defalık çıkış Tanım NEG (Adres Negatif Ayrıt Tespiti) <adres1> 'in sinyal durumu ile <adres2> 'de saklanan bir önceki okumadaki sinyal durumunu karşılaştırır. Eğer o andaki RLO durumu "1" ise ve önceki durum "0" idiyse (yükselen ayrıt), bu komuttan sonra RLO biti "1" olacaktır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X - - - - X 1 X 1 Örnek I 0.0 I 0.1 I 0.2 M 0.0 I 0.3 NEG Q I 0.4 I 4.0 ( ) M_BIT Aşağıdaki şartlar mevcutsa Q4.0'ın çıkışındaki sinyal durumu "1" olur: • I0.0, I0.1 ve I0.2 girişlerindeki sinyal durumu "1" ise • Ve I0.3 girişinde negatif ayrıt varsa • Ve I0.4 girişinde sinyal durumu "1" ise. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-19 Bitsel Mantık Komutları 1.16 POS Adres Pozitif Ayrıt Tespiti Sembol <adres1> POS Q <adres2> M_BIT Parametre <adres1> Veri Tipi BOOL Bellek Alanı I, Q, M, L, D Tanım Okunan sinyal <adres2> BOOL I, Q, M, L, D Q BOOL I, Q, M, L, D <adres1> 'in önceki sinyal durumunu saklayan M_BIT ayrıt bellek biti Bir defalık çıkış Tanım POS (Adres Pozitif Ayrıt Tespiti) <adres1> 'in sinyal durumu ile <adres2> 'de saklanan bir önceki okumadaki sinyal durumunu karşılaştırır. Eğer o andaki RLO durumu "1" ise ve önceki durum "0" idiyse (yükselen ayrıt), bu komuttan sonra RLO biti "1" olacaktır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X - - - - X 1 X 1 Örnek I 0.0 I 0.1 I 0.2 M 0.0 I 0.3 POS Q I 0.4 I 4.0 ( ) M_BIT Aşağıdaki şartlar mevcutsa Q4.0'ın çıkışındaki sinyal durumu "1" olur: 1-20 • I0.0, I0.1 ve I0.2 girişlerindeki sinyal durumu "1" ise • Ve I0.3 girişinde pozitif ayrıt varsa • Ve I0.4 girişinde sinyal durumu "1" ise. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1.17 Anlık Okuma Tanım Semboller, Anlık Okuma işlevi için, aşağıdaki örnekte gösterildiği şekilde oluşturulmalıdır. Zaman-kritik uygulamalar için, sayısal bir girişin o andaki durumu normaldekinden daha hızlı olarak her OB1 okuma döngüsünde bir kez okunabilir. Bir Anlık Okuma, bir giriş modülünden Anlık Okuma dalı okunduğunda sayısal bir girişin durumunu alır. Aksi halde, I bellek alanının P bellek durumu ile güncelleneceği, bir sonraki OB1 okuma döngüsünün sonunu beklemelisiniz. Bir giriş modülünden, bir girişin (veya girişlerin) anlık okunması için giriş (I) bellek alanı yerine, çevre (peripheral) giriş (PI) bellek alanını kullanın. Çevre giriş bellek alanı bir bayt, word veya double word olarak okunabilir. Dolayısıyla sayısal tek bir giriş, bir kontakt (bit) elemanı üzerinden okunamaz. Anlık giriş şartına bağlı olarak gerilim aktarımı: 1. PI belleğinin bir wordlük ilgili giriş verisi CPU tarafından okunur. 2. Giriş biti "1" olursa, PI belleği word'ü, bir sabitle AND'lenerek sıfırdan farklı bir sonuç üretir. 3. Biriktirici (accumulator), sıfırdan farklı durum için test edilmiştir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-21 Bitsel Mantık Komutları Örnek I1.1 Çevre Girişinden Anlık Okumalı Merdiven Devresi I 4.1 PIW1 16#0002 WAND_W ENO EN IN1 OUT IN2 <>0 I 4.5 MWx * * MWx, devreyi kaydedebilmek için belirlenmelidir. x izin verilen herhangi bir sayı olabilir. WAND_W komutunun tanımı: PIW1 0000000000101010 16#0002 0000000000000010 Sonuç 0000000000000010 Bu örnekte I1.1 anlık girişi, I4.1 ve I4.5 ile seridir. PIW1 word'ü I1.1 'in anlık durumunu tutar. PIW1 W#16#0002 ile AND'lenir. Eğer PB1'deki I1.1 (ikinci bit) doğru ise ("1") sonuç sıfırdan farklıdır. Eğer WAND_W komutunun sonucu sıfırdan farklı ise kontakt A<>0 gerilimi iletir. 1-22 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Bitsel Mantık Komutları 1.18 Anlık Yazma Tanım Semboller, Anlık Yazma işlevi için, aşağıdaki örnekte gösterildiği şekilde oluşturulmalıdır. Zaman-kritik uygulamalar için, sayısal bir çıkışın o andaki durumu normaldekinden daha hızlı olarak her OB1 okuma döngüsü sonunda bir kez çıkış modülüne gönderilebilir. Bir Anlık Yazma, Anlık Yazma dalı okunduğunda, bir giriş modülüne sayısal bir çıkış yazar. Aksi halde, Q bellek alanının P bellek durumu ile güncelleneceği, bir sonraki OB1 okuma döngüsünün sonunu beklemelisiniz. Bir çıkış modülüne, bir çıkış (veya çıkışların) anlık yazılması için çıkış (Q) bellek alanı yerine, çevre (peripheral) çıkış (PQ) bellek alanını kullanın. Çevre çıkış bellek alanı bir byte, word veya double word olarak okunabilir. Dolayısıyla sayısal tek bir çıkış, bir bobin elemanı üzerinden güncellenemez. Bir sayısal çıkışın durumunu bir çıkış modülüne anlık olarak yazmak için, ilgili biti içeren bir byte, word veya double wordlük Q belleği şartlı olarak, karşılık gelen PQ belleğine (direkt çıkış modül adresleri) kopyalanır. Dikkat • Q belleğinin bütün byte içeriği bir çıkış modülüne yazıldığından, anlık çıkış gerçekleştirildiğinde bu bayt içindeki tüm çıkış bitleri güncellenir. • Eğer bir çıkış bitinde, program akışında çıkış modülüne gönderilmemesi gereken ara durumlar oluşuyorsa (1/0), Anlık Yazma, tehlikeli şartlar oluşturabilir. (Ara vurumlar transient pulses) • Genel bir tasarım kuralı olarak programda, dışsal bir çıkış modülü sadece bir kez bir bobin olarak gösterilmelidir. Eğer bu tasarım kuralına uyarsanız, potansiyel anlık yazma problemlerinin çoğu engellenebilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 1-23 Bitsel Mantık Komutları Örnek Modül 5, kanal 1 çevresel sayısal çıkış anlık yazma merdiven devresi eşdeğeri. Adreslenmiş Q bayt (QB5) çıkışı bit durumları değişir veya değişmeden kalır. Devre 1'de Q5.1'e I0.1'in sinyal durumu atanmıştır. QB5, karşılık gelen direkt çevresel çıkış bellek alanına (PQB5) kopyalanır. PIW1 word değeri, I1.1'in anlık durumunu içerir. PIW1, W#16#0002 ile AND'lenir. Eğer PB1'deki I1.1 (ikinci bit) doğru ise ("1") sonuç sıfırdan farklıdır. Eğer WAND_W komutunun sonucu sıfırdan farklı ise kontakt A<>0 gerilimi iletir. Devre 1 I 0.1 Q 5.1 Devre 2 MOVE EN ENO QB5 IN OUT PQB5 Bu örnekte Q5.1 istenen anlık çıkış bitidir. PQB5 bayt değeri, Q5.1 bitinin anlık çıkış durumunu içerir. PQB5'in diğer 7 biti de MOVE (kopya) komutu ile güncellenir. 1-24 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Karşılaştırma Komutları 2 Karşılaştırma Komutları 2.1 Karşılaştırma Komutlarına Genel Bakış Tanım IN1 ve IN2 sizin seçtiğiniz karşılaştırma tipine bağlı olarak karşılaştırılır:: == IN1 eşittir IN2 <> IN1 eşit değildir IN2 > IN1 büyüktür IN2 < IN1 küçüktür IN2 >= IN1 küçük eşit IN2 <= IN1 büyük eşit IN2 Eğer karşılaştırma doğru ise, işlevin RLO'su "1" olur. Eğer karşılaştırma elemanı seri olarak kullanılırlarsa, bir dal devreye AND ile; eğer kutu paralel olarak kullanılırsa OR ile bağlıdır. Aşağıdaki karşılaştırma komutları kullanılabilir: • CMP ? I Tamsayı Karşılaştır • CMP ? D Tamsayı Karşılaştır • CMP ? R Tamsayı Karşılaştır S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 2-1 Karşılaştırma Komutları 2.2 CMP ? I Tamsayı Karşılaştır Semboller CMP == I CMP >I CMP >= I IN1 IN1 IN1 IN2 IN2 IN2 CMP <> I CMP <I CMP <= I IN1 IN1 IN1 IN2 IN2 IN2 Parametre kutu girişi kutu çıkışı Veri Tipi BOOL BOOL Bellek Alanı I, Q, M, L, D I, Q, M, L, D IN1 INT IN2 INT I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit Tanım Önceki mantıksal işlemin sonucu Karşılaştırmanın sonucu, daha ileri işlem ancak kutu girişindeki RLO = 1 ise yapılır Karşılaştırılacak ilk değer Karşılaştırılacak ikinci değer Tanım CMP ? I (Tamsayı Karşılaştırma) normal bir kontakt gibi kullanılabilir. Normal bir kontaktın yerleştirilebileceği herhangi bir pozisyonda yerleştirilebilir. IN1 ve IN2 sizin seçtiğiniz karşılaştırma tipine bağlı olarak karşılaştırılır: Eğer karşılaştırma doğru ise, işlevin RLO'su "1" olur. Eğer kutu seri olarak kullanılırlarsa, tüm dala AND ile; paralel olarak kullanılırsa OR ile bağlıdır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X 0 - 0 X X 1 Örnek I 0.0 I 0.1 MW0 MW2 CMP >= I Q 4.0 S IN1 IN2 Aşağıdaki şartlar mevcutsa Q4.0 set edilir: • I0.0 ve I0.1 girişlerindeki sinyal durumu "1" ise • VE MW0 >= MW2 2-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Karşılaştırma Komutları 2.3 CMP ? D Tamsayı Karşılaştır Semboller CMP == D CMP >D CMP >= D IN1 IN1 IN1 IN2 IN2 IN2 CMP <> D CMP <D CMP <= D IN1 IN1 IN1 IN2 IN2 IN2 Parametre kutu girişi kutu çıkışı Veri Tipi BOOL BOOL Bellek Alanı I, Q, M, L, D I, Q, M, L, D IN1 DINT IN2 DINT I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit Tanım Önceki mantıksal işlemin sonucu Karşılaştırmanın sonucu, daha ileri işlem ancak kutu girişindeki RLO = 1 ise yapılır Karşılaştırılacak ilk değer Karşılaştırılacak ikinci değer Tanım CMP ? D (Double Tamsayı Karşılaştırma) normal bir kontakt gibi kullanılabilir. Normal bir kontaktın yerleştirilebileceği herhangi bir pozisyonda yerleştirilebilir. IN1 ve IN2 sizin seçtiğiniz karşılaştırma tipine bağlı olarak karşılaştırılır: Eğer karşılaştırma doğru ise, işlevin RLO'su "1" olur. Eğer karşılaştırma elemanı seri olarak kullanılırlarsa, bir dal devreye AND ile; eğer kutu paralel olarak kullanılırsa OR ile bağlıdır. Durum Word'ü Değeri: BR X CC 1 X CC 0 X OV 0 OS - OR 0 STA X RLO X /FC 1 Örnek I 0.0 I 0.1 MD0 MD4 CMP >= D I 0.2 Q 4.0 S IN1 IN2 Aşağıdaki şartlar mevcutsa Q4.0 set edilir: • I0.0 ve I0.1 girişlerindeki sinyal durumu "1" ise • Ve MD0 >= MD4 • Ve I0.2 girişinde sinyal durumu "1" ise. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 2-3 Karşılaştırma Komutları 2.4 CMP ? R Tamsayı Karşılaştır Semboller CMP == R CMP >R CMP >= R IN1 IN1 IN1 IN2 IN2 IN2 CMP <> R CMP <R CMP <= R IN1 IN1 IN1 IN2 IN2 IN2 Parametre kutu girişi kutu çıkışı Veri Tipi BOOL BOOL Bellek Alanı I, Q, M, L, D I, Q, M, L, D IN1 REAL IN2 REAL I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit Tanım Önceki mantıksal işlemin sonucu Karşılaştırmanın sonucu, daha ileri işlem ancak kutu girişindeki RLO = 1 ise işlenir Karşılaştırılacak ilk değer Karşılaştırılacak ikinci değer Tanım CMP ? R (Gerçel Sayı Karşılaştırma) normal bir kontakt gibi kullanılabilir. Normal bir kontaktın yerleştirilebileceği herhangi bir pozisyonda yerleştirilebilir. IN1 ve IN2 sizin seçtiğiniz karşılaştırma tipine bağlı olarak karşılaştırılır: Eğer karşılaştırma doğru ise, işlevin RLO'su "1" olur. Eğer kutu seri olarak kullanılırlarsa, tüm dala AND ile; paralel olarak kullanılırsa OR ile bağlıdır. Durum Word'ü Değeri: BR X CC 1 X CC 0 X OV X OS X OR 0 STA X RLO X /FC 1 Örnek I 0.0 I 0.1 MD0 MD4 CMP >= R I 0.2 Q 4.0 S IN1 IN2 Aşağıdaki şartlar mevcutsa Q4.0 set edilir: • I0.0 ve I0.1 girişlerindeki sinyal durumu "1" ise • Ve MD0 >= MD4 • Ve I0.2 girişinde sinyal durumu "1" ise. 2-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3 Dönüştürme Komutları 3.1 Dönüştürme Komutlarına Genel Bakış Tanım Dönüştürme komutları giriş (IN) parametrelerini okur ve bunları dönüştürür veya işaret değiştirir. Sonuç, çıkış (OUT) parametresinden sorgulanabilir. Aşağıdaki dönüştürme komutları kullanılabilir: • BCD_I BCD'den Tamsayıya • I_BCD Tamsayıdan BCD'ye • BCD_DI BCD'den Double Tamsayıya • I_DINT Tamsayıdan Double Tamsayıya • DI_BCD Double Tamsayıdan BCD'ye • DI_REAL Double Tamsayıdan Gerçel Sayıya • INV_I Birin Tümleyeni Tamsayı • INV_DI Birin Tümleyeni Double Tamsayı • NEG_I İkinin Tümleyeni Tamsayı • NEG_DI İkinin Tümleyeni Double Tamsayı • NEG_R Gerçel Sayıyı Negatif Yap • ROUND Double Tamsayıya Yuvarla • TRUNC Double Tamsayı Kısmını At • CEIL Tavan • FLOOR Taban S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-1 Dönüştürme Komutları 3.2 BCD_I BCD'den Tamsayıya Sembol BCD_I EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL WORD INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver BCD sayı BCD sayının tamsayı değeri Tanım BCD_I (BCD'yi Tamsayıya Dönüştür) IN parametresinin içeriğini üç basamaklı BCD kodlanmış bir sayı (+/- 999) olarak okur ve bir tamsayı değerine (16-bit) dönüştürür. Tamsayı sonuç OUT parametresinde verilir. ENO, her zaman EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR 1 CC 1 - CC 0 - OV - OS - OR 0 STA 1 RLO 1 /FC 1 Örnek I 0.0 MW10 BCD_I EN ENO IN OUT Q4 .0 NOT MW12 Eğer I0.0 girişi "1" ise, MW10'un içeriği üç basamaklı BCD kodlanmış sayı olarak okunur ve tamsayıya dönüştürülür. Sonuç MW12'de saklanır. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). 3-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3.3 I_BCD Tamsayıdan BCD'ye Sembol I_BCD EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL INT WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Tamsayı BCD sayının tamsayı değeri Tanım I_BCD (Tamsayıyı BCD'ye Dönüştür) IN parametresinin içeriğini bir tamsayı (16-bit) olarak okur ve üç basamaklı BCD kodlanmış bir sayıya (+/- 999) dönüştürür. Sonuç OUT parametresinde verilir. Eğer bir taşma oluşursa, ENO "0" olur. Durum Word'ü Değeri: BR X CC 1 - CC 0 - OV X OS X OR 0 STA X RLO X /FC 1 Örnek I 0.0 MW10 I_BCD EN ENO IN OUT Q 4.0 NOT MW12 Eğer I0.0 "1" ise, MW10'un içeriği bir tamsayı olarak okunur ve üç basamaklı BCD kodlanmış sayıya dönüştürülür. Sonuç MW12'de saklanır. Eğer taşma oluşursa veya komut çalıştırılmazsa (I0.0 = 0), Q4.0 çıkışı "1" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-3 Dönüştürme Komutları 3.4 I_DINT Tamsayıdan Double Tamsayıya Sembol I_DINT EN IN ENO OUT Parametre EN ENO IN Veri Tipi BOOL BOOL INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DINT I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Dönüştürülecek tamsayı değeri Double tamsayı sonuç Tanım I_DINT (Tamsayıyı Double Tamsayıya Dönüştür) IN parametresinin içeriğini bir tamsayı (16-bit) olarak okur ve bir double tamsayıya (32-bit) dönüştürür. Sonuç OUT parametresinde verilir. ENO, her zaman EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR 1 CC 1 - CC 0 - OV - OS - OR 0 STA 1 RLO 1 /FC 1 Örnek I 0.0 MW10 I_DINT EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MW10'un içeriği bir tamsayı olarak okunur ve double tamsayıya dönüştürülür. Sonuç MD12'de saklanır. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). 3-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3.5 BCD_DI BCD'den Double Tamsayıya Sembol BCD_DI EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL DWORD DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver BCD sayı BCD sayının double tamsayı değeri Tanım BCD_DI (BCD'yi Double Tamsayıya Dönüştür) IN parametresinin içeriğini yedi basamaklı BCD kodlanmış bir sayı (+/- 9999999) olarak okur ve bir double tamsayı değerine (32-bit) dönüştürür. Double tamsayı sonuç OUT parametresinde verilir. ENO, her zaman EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR 1 CC 1 - CC 0 - OV - OS - OR 0 STA 1 RLO 1 /FC 1 Örnek I 0.0 MD8 BCD_DI EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in içeriği yedi basamaklı BCD kodlanmış sayı olarak okunur ve double tamsayıya dönüştürülür. Sonuç MD12'de saklanır. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-5 Dönüştürme Komutları 3.6 DI_BCD Double Tamsayıdan BCD'ye Sembol DI_BCD EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL DINT DWORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Double tamsayı Double tamsayının BCD değeri Tanım DI_BCD (Double Tamsayıyı BCD'ye Dönüştür) IN parametresinin içeriğini double tamsayı (32-bit) olarak okur ve yedi basamaklı BCD kodlanmış bir sayıya (+/9999999) dönüştürür. Sonuç OUT parametresinde verilir. Eğer bir taşma oluşursa, ENO "0" olur. Durum Word'ü Değeri: BR X CC 1 - CC 0 - OV X OS X OR 0 STA X RLO X /FC 1 Örnek I 0.0 MD8 DI_BCD EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in içeriği double tamsayı olarak okunur ve yedi basamaklı BCD sayıya dönüştürülür. Sonuç MD12'de saklanır. Eğer taşma oluşursa veya komut çalıştırılmazsa (I0.0 = 0), Q4.0 çıkışı "1" olur. 3-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3.7 DI_REAL Double Tamsayıdan Gerçel Sayıya Sembol DI_REAL EN IN ENO OUT Parametre EN ENO IN Veri Tipi BOOL BOOL DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT REAL I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Dönüştürülecek double tamsayı değeri Gerçel sayı sonuç Tanım DI_REAL (Double Tamsayıyı Gerçel Sayıya Dönüştür) IN parametresinin içeriğini double tamsayı olarak okur ve gerçel sayıya dönüştürür. Sonuç OUT parametresinde verilir. ENO, her zaman EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR 1 CC 1 - CC 0 - OV - OS - OR 0 STA 1 RLO 1 /FC 1 Örnek I 0.0 MD8 DI_REAL EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in içeriği double tamsayı olarak okunur ve gerçel sayıya dönüştürülür. Sonuç MD12'de saklanır. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-7 Dönüştürme Komutları 3.8 INV_I Birin Tümleyeni Tamsayı Sembol INV_I EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL INT INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş tamsayı değeri Birin Tümleyeni Tamsayı IN Tanım INV_I (Birin Tümleyeni Tamsayı) IN parametresinin içeriğini okur ve W#16#FFFF onaltılık (hexadecimal) maskesi ile Boole mantığı XOR işlevi uygular. Bu komut her biti tersi duruma çevirir. ENO, her zaman EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC 1 - - - - 0 1 1 1 Örnek I 0.0 MW8 INV_I EN ENO IN OUT Q 4.0 NOT MW10 Eğer I0.0 "1" ise, MW8'in her biti tersine çevrilir, örneğin: MW8 = 01000001 10000001 sonucu MW10 = 10111110 01111110. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). 3-8 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3.9 INV_DI Birin Tümleyeni Double Tamsayı Sembol INV_DI EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL DINT DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş double tamsayı değeri Birin Tümleyeni Double Tamsayı IN Tanım INV_DI (Birin Tümleyeni Double Tamsayı) IN parametresinin içeriğini okur ve W#16#FFFF FFFF onaltılık maskesi ile Boole mantığı XOR işlevi uygular. Bu komut her biti tersi duruma çevirir. ENO, her zaman EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR 1 CC 1 - CC 0 - OV - OS - OR 0 STA 1 RLO 1 /FC 1 Örnek I 0.0 MD8 INV_DI EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in her biti tersine çevrilir, örneğin: MD8 = F0FF FFF0 sonucu MD12 = 0F00 000F. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-9 Dönüştürme Komutları 3.10 NEG_I İkinin Tümleyeni Tamsayı Sembol NEG_I EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL INT INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş tamsayı değeri İkinin Tümleyeni Tamsayı IN Tanım NEG_I (İkinin Tümleyeni Tamsayı) IN parametresinin içeriğini okur ve ikinin tümleyeni komutu uygular. İkinin tümleyeni komutu, (-1) ile çarpma işlemine özdeştir ve işareti değiştirir. (örneğin: pozitiften negatif bir değere). ENO, şu istisna dışında her zaman EN ile aynı sinyal durumundadır: EN sinyal durumu = 1 ise ve taşma oluşursa, ENO sinyal durumu = 0 olur. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek I 0.0 MW8 NEG_I EN ENO IN OUT Q 4.0 NOT MW10 Eğer I0.0 "1" ise, MW8'in değerinin ters işaretlisi OUT parametresi ile MW10'a çıkartılır. MW8 = + 10 sonucu MW10 = - 10. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). EN sinyal durumu = 1 ise ve taşma oluşursa, ENO sinyal durumu = 0 olur. 3-10 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3.11 NEG_DI İkinin Tümleyeni Double Tamsayı Sembol NEG_DI EN IN ENO OUT Parametre EN ENO IN Veri Tipi BOOL BOOL DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DINT I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş double tamsayı değeri İkinin tümleyeni değeri IN Tanım NEG_DI (İkinin Tümleyeni Double Tamsayı) IN parametresinin içeriğini okur ve ikinin tümleyeni komutu uygular. İkinin tümleyeni komutu, (-1) ile çarpma işlemine özdeştir ve işareti değiştirir. (örneğin: pozitiften negatif bir değere). ENO, şu istisna dışında her zaman EN ile aynı sinyal durumundadır: EN sinyal durumu = 1 ise ve taşma oluşursa, ENO sinyal durumu = 0 olur. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek I 0.0 MD8 NEG_DI EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in değerinin ters işaretlisi OUT parametresi ile MW12'ye çıkartılır. MD8 = + 1000 sonucu MD12 = - 1000. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). EN sinyal durumu = 1 ise ve taşma oluşursa, ENO sinyal durumu = 0 olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-11 Dönüştürme Komutları 3.12 NEG_R Gerçel Sayıyı Negatif Yap Sembol NEG_R EN IN ENO OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Gerçel sayı giriş değeri OUT REAL I, Q, M, L, D Negatif işaretli gerçel sayı IN Tanım NEG_R (Gerçel Sayıyı Negatifle) IN parametresinin içeriğini okur ve işaretini değiştirir. Komut, (-1) ile çarpma işlemine özdeştir ve işareti değiştirir. (örneğin: pozitiften negatif bir değere). ENO, her zaman EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR X CC 1 - CC 0 - OV - OS - OR 0 STA X RLO X /FC 1 Örnek I 0.0 MD8 NEG_R EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in değerinin ters işaretlisi OUT parametresi ile MW12'ye çıkartılır. MD8 = + 6.234 sonucu MD12 = - 6.234. Eğer dönüştürme yapılmazsa Q4.0 çıkışı "1" olur (ENO = EN = 0). 3-12 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3.13 ROUND Double Tamsayıya Yuvarla Sembol ROUND EN IN ENO OUT Parametre EN ENO IN OUT Veri Tipi BOOL BOOL REAL DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Yuvarlanacak değer IN en yakın tamsayıya yuvarlanır Tanım ROUND (Double Tamsayıyı Yuvarla) IN parametresinin içeriğini gerçel sayı olarak okur ve double tamsayıya dönüştürür. (32-bit). Sonuç en yakın tamsayı değeridir ("Round to nearest"). Eğer gerçel sayı, iki tamsayının ortasında ise çift olan sayı döndürülür. Sonuç OUT parametresinde verilir. Eğer bir taşma oluşursa, ENO "0" olur. Durum Word'ü Değeri: BR X CC 1 - CC 0 - OV X OS X OR 0 STA X RLO X /FC 1 Örnek I 0.0 MD8 ROUND EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in içeriği gerçel sayı olarak okunur ve en yakın double tamsayıya dönüştürülür. Bu "En yakına yuvarla" ("Round to nearest") işlevinin sonucu MD12'de saklanır. Eğer taşma oluşursa veya komut çalıştırılmazsa (I0.0 = 0), Q4.0 çıkışı "1" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-13 Dönüştürme Komutları 3.14 TRUNC Double Tamsayı Kısmını At Sembol TRUNC EN IN ENO OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DINT I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Dönüştürülecek gerçel sayı değeri IN değerinin tam kısmı Tanım TRUNC (Double Tamsayı Kısmını At) IN parametresinin içeriğini gerçel sayı olarak okur ve double tamsayıya dönüştürür. (32-bit). "Sıfıra yuvarla modu" ("Round to zero mode") double tamsayı sonucu OUT parametresinde verilir. Eğer bir taşma oluşursa, ENO "0" olur. Durum Word'ü Değeri: BR X CC 1 - CC 0 - OV X OS X OR 0 STA X RLO X /FC 1 Örnek I 0.0 MD8 TRUNC EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in içeriği gerçel sayı olarak okunur ve double tamsayıya dönüştürülür. Gerçel sayının tamsayı kısmı sonuçtur ve MD12'de saklanır. Eğer taşma oluşursa veya komut çalıştırılmazsa (I0.0 = 0), Q4.0 çıkışı "1" olur. 3-14 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Dönüştürme Komutları 3.15 CEIL Tavan Sembol CEIL EN IN ENO OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DINT I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Dönüştürülecek gerçel sayı değeri Daha büyük en küçük double tamsayı Tanım CEIL (Tavan) IN parametresinin içeriğini gerçel sayı olarak okur ve double tamsayıya dönüştürür. (32-bit). Sonuç, gerçel sayıdan büyük olan en küçük tamsayıdır. ("Round to + infinity"). Eğer bir taşma oluşursa, ENO "0" olur. Durum Word'ü Değeri*: Değeri**: BR X 0 CC 1 - CC 0 - OV X - OS X - OR 0 0 STA X 0 RLO X 0 /FC 1 1 * İşlev çalıştırılır (EN = 1) ** İşlev çalıştırılmaz (EN = 0) Örnek I 0.0 EN MD8 IN Q 4.0 CEIL ENO NOT OUT MD12 Eğer I0.0 "1" ise, MD8'in içeriği gerçel sayı olarak okunur ve yuvarlama (Round) işlevi kullanılarak en yakın double tamsayıya dönüştürülür. Sonuç MD12'de saklanır. Eğer taşma oluşursa veya komut çalıştırılmazsa (I0.0 = 0), Q4.0 çıkışı "1" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 3-15 Dönüştürme Komutları 3.16 FLOOR Taban Sembol FLOOR EN IN ENO OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DINT I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Dönüştürülecek gerçel sayı değeri Daha küçük en büyük double tamsayı değeri Tanım FLOOR (Taban) IN parametresinin içeriğini gerçel sayı olarak okur ve double tamsayıya dönüştürür. (32-bit). Sonuç, gerçel sayıdan küçük olan en büyük tamsayı bileşenidir. ("Round to + infinity"). Eğer bir taşma oluşursa, ENO "0" olur. Durum Word'ü Değeri: BR X CC 1 - CC 0 - OV X OS X OR 0 STA X RLO X /FC 1 Örnek I 0.0 MD8 FLOOR EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 "1" ise, MD8'in içeriği gerçel sayı olarak okunur ve sonsuza yuvarlama modu kullanılarak en yakın double tamsayıya dönüştürülür. Sonuç MD12'de saklanır. Eğer taşma oluşursa veya komut çalıştırılmazsa (I0.0 = 0), Q4.0 çıkışı "1" olur. 3-16 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları 4 4.1 Sayıcı Komutları Sayıcı Komutlarına Genel Bakış Bellek Alanı Sayıcılar, CPU'nuzun belleğinde kendilerine ayrılmış bir alana sahiptirler. Bu bellek alanı, her sayıcı adresi için bir 16-bit word ayırır. Merdiven mantık komut seti 256 sayıcı destekler. Sayıcı komutları,sayıcı bellek alanına erişebilen yegane işlevlerdir. Sayaç Değeri Sayıcı word'ünün 0'dan 9'a kadar olan bitleri ikilik sayaç değerini içerir. Sayaç değeri, bir sayıcı kurulduğunda sayıcı word'üne taşınır. Sayaç sınırı 0'dan 999'a kadardır. Sayaç değerini bu sınırlar dahilinde aşağıdaki komutları kullanarak değiştirebilirsiniz: • S_CUD Yukarı-Aşağı Sayıcı • S_CD Aşağı Sayıcı • S_CU Yukarı Sayıcı • ---( SC ) Sayıcı Değeri Atama • ---( CU ) Yukarı Sayıcı Bobini • ---( CD ) Aşağı Sayıcı Bobini S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 4-1 Sayıcı Komutları Sayıcı İçindeki Bit Konfigürasyonu Bir sayıcıya 0 ile 999 arasında bir ilk değer girebilirsiniz, örneğin şu formatta 127: C#127. C#, ikilik kodlanmış onluk (binary coded decimal) formatında (BCD format: her dört bitlik set, bir onluk değerin ikilik kodunu içerir). Sayıcı word'ünün 0'dan 11'a kadar olan bitleri BCD formatında sayaç değerini içerir. Aşağıdaki şema, 127 sayaç değerini yüklediğinizde sayıcının içeriğini ve sayaç kurulduktan sonra sayıcı hücresinin tüm içeriğini gösterir. 15 14 13 12 11 10 9 0 ilişiksiz 0 0 78 6 45 3 2 1 0 01 0 01 0 1 1 1 1 2 7 BCD olarak sayaç değeri (0'dan 999'a) 15 14 13 12 11 10 9 8 7 56 4 3 2 1 0 0 0 0 11 1 1 1 1 1 ilişiksiz 4-2 İkilik sayaç değeri S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları 4.2 S_CUD Yukarı-Aşağı Sayıcı Sembol İngilizce Almanca C no. Z no. S_CUD ZAEHLER CU Q CD S PV R CV CV_BCD ZV ZR S ZW R Q DUAL DEZ İngilizce Parametre C no. Almanca Parametre Z no. Veri Tipi Bellek Alanı Tanım COUNTER C CU CD S ZV ZR S BOOL BOOL BOOL I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D PV ZW WORD PV R CV ZW R DUAL WORD BOOL WORD I, Q, M, L, D veya sabit I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D CV_BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Sayıcı kimlik numarası, sınırları CPU'ya bağlıdır Yukarı sayaç girişi Aşağı sayaç girişi Sayıcıya ilk değer vermek için sayacı kur Sayıcı değerini C#<değer> şeklinde 0-999 aralığında gir Sayıcıya verilecek ilk değer Girişi resetle Şu andaki sayıcı değeri, onaltılık sayı Şu andaki sayıcı değeri, BCD kodlanmış Sayıcı durumu S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 4-3 Sayıcı Komutları Tanım S_CUD (Yukarı-Aşağı Sayıcı) Eğer S girişinde pozitif ayrıt varsa PV girişindeki ilk değer ile kurulur. R girişi 1 ise sayıcı resetlenir ve sayaç sıfıra eşitlenir. CU girişi "0" 'dan "1" durumuna değişirse ve sayaç değeri 999'dan küçükse sayıcı bir arttırılır. CD girişinde bir pozitif ayrıt varsa ve sayaç değeri 0'dan büyükse sayıcı bir azaltılır. Her iki girişte de pozitif bir ayrıt varsa her iki komut da çalıştırılır ve sayaç değeri değişmeden kalır. Eğer sayıcı kurulmuşsa ve CU/CD girişlerinde RLO = 1 ise, sayıcı sonraki okuma döngüsünde, pozitiften negatife veya tersi bir ayrıt değişimi olmasa bile, uygun olarak sayacaktır. Eğer sayaç sıfırdan büyükse, Q çıkışındaki sinyal durumu "1"; sıfır ise "0" olur. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Not Bir sayıcıyı programın birçok noktasında kullanmaktan kaçının (Sayma hataları riski). Örnek C10 S_CUD Q 4.0 I 0.0 CU I 0.1 I 0.2 CD S I 0.3 MW10 Q PV CV CV_BCD R Eğer I0.2 "0" 'dan "1" 'e değişirse, sayıcı ilk değer olarak MW10'u alır. Eğer I0.0'ın sinyal durumu "0" 'dan "1" 'e değişirse, C10 sayıcısının değeri bir arttırılır - C10 değerinin "999" olması durumu hariç. Eğer I0.1'in sinyal durumu "0" 'dan "1" 'e değişirse, C10 sayıcısının değeri bir azaltılır - C10 değerinin "0" olması durumu hariç. Eğer C10 sıfırdan farklı ise Q4.0 "1" olur. 4-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları 4.3 S_CU Yukarı Sayıcı Sembol İngilizce Almanca C no. Z no. Z_VORW S_CU CU Q ZV PV Q S S ZW CV CV_BCD DUAL DEZ R R Parametre İngilizce C no. Parametre Almanca Z no. Veri Tipi Bellek Alanı Tanım COUNTER C CU S ZV S BOOL BOOL I, Q, M, L, D I, Q, M, L, D PV ZW WORD I, Q, M, L, D veya sabit PV ZW WORD I, Q, M, L, D R CV R DUAL BOOL WORD I, Q, M, L, D I, Q, M, L, D CV_BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Sayıcı kimlik numarası, sınırları CPU'ya bağlıdır Yukarı sayaç girişi Sayıcıya ilk değer vermek için sayacı kur Sayıcı değerini C#<değer> şeklinde 0-999 aralığında gir Sayıcıya verilecek ilk değer Girişi resetle Şu andaki sayıcı değeri, onaltılık sayı Şu andaki sayıcı değeri, BCD kodlanmış Sayıcı durumu Tanım S_CU (Yukarı Sayıcı) Eğer S girişinde pozitif ayrıt varsa PV girişindeki ilk değer ile kurulur. R girişi 1 ise sayıcı resetlenir ve sayaç sıfıra eşitlenir. CU girişi "0" 'dan "1" durumuna değişirse ve sayaç değeri 999'dan küçükse sayıcı bir arttırılır. Eğer sayıcı kurulmuşsa ve CU girişinde RLO = 1 ise, sayıcı sonraki okuma döngüsünde, pozitiften negatife veya tersi bir ayrıt değişimi olmasa bile, uygun olarak sayacaktır. Eğer sayaç sıfırdan büyükse, Q çıkışındaki sinyal durumu "1"; sıfır ise "0" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 4-5 Sayıcı Komutları Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Not Bir sayıcıyı programın birçok noktasında kullanmaktan kaçının (Sayma hataları riski). Örnek C10 S_CU Q 4.0 I 0.0 CU Q I 0.2 S I 0.3 MW10 PV R CV CV_BCD Eğer I0.2 "0" 'dan "1" 'e değişirse, sayıcı ilk değer olarak MW10'u alır. Eğer I0.0'ın sinyal durumu "0" 'dan "1" 'e değişirse, C10 sayıcısının değeri bir arttırılır - C10 değerinin "999" olması durumu hariç. Eğer C10 sıfırdan farklı ise Q4.0 "1" olur. 4-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları 4.4 S_CD Aşağı Sayıcı Sembol İngilizce Almanca C no. Z no. S_CD Z_RUECK CD Q ZR S PV Q S ZW CV CV_BCD DUAL DEZ R R Parametre Parametre Veri Tipi İngilizce Almanca Bellek Alanı Tanım C no. Z no. COUNTER C CU S ZV S BOOL BOOL I, Q, M, L, D I, Q, M, L, D Sayıcı kimlik numarası, sınırları CPU'ya bağlıdır Yukarı sayaç girişi Sayıcıya ilk değer vermek için sayacı kur PV ZW WORD I, Q, M, L, D veya sabit Sayıcı değerini C#<değer> şeklinde 0999 aralığında gir PV ZW WORD I, Q, M, L, D Sayıcıya verilecek ilk değer R CV R DUAL BOOL WORD I, Q, M, L, D I, Q, M, L, D Girişi resetle Şu andaki sayıcı değeri, onaltılık sayı CV_BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Şu andaki sayıcı değeri, BCD kodlanmış Sayıcı durumu Tanım S_CD (Aşağı Sayıcı) Eğer S girişinde pozitif ayrıt varsa PV girişindeki ilk değer ile kurulur. R girişi 1 ise sayıcı resetlenir ve sayaç sıfıra eşitlenir. CD girişi "0" 'dan "1" durumuna değişirse ve sayaç değeri 0'dan büyükse sayıcı bir azaltılır. Eğer sayıcı kurulmuşsa ve CD girişinde RLO = 1 ise, sayıcı sonraki okuma döngüsünde, pozitiften negatife veya tersi bir ayrıt değişimi olmasa bile, uygun olarak sayacaktır. Eğer sayaç sıfırdan büyükse, Q çıkışındaki sinyal durumu "1"; sıfır ise "0" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 4-7 Sayıcı Komutları Durum Word'ü BR Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - - X X X 1 Not Bir sayıcıyı programın birçok noktasında kullanmaktan kaçının (Sayma hataları riski). Örnek C10 C_CD Q 4.0 I 0.0 CD Q I 0.2 S I 0.3 MW10 PV R CV CV_BCD Eğer I0.2 "0" 'dan "1" 'e değişirse, sayıcı ilk değer olarak MW10'u alır. Eğer I0.0'ın sinyal durumu "0" 'dan "1" 'e değişirse, C10 sayıcısının değeri bir azaltılır - C10 değerinin "0" olması durumu hariç. Eğer C10 sıfırdan farklı ise Q4.0 "1" olur. 4-8 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları 4.5 ---( SC ) Sayıcı Değeri Atama Sembol İngilizce Almanca <C no.> <Z no.> ---( SC ) ---( SZ ) <ilk değer> <ilk değer> Parametre İngilizce <C no.> Parametre Almanca <Z no.> Veri Tipi Bellek Alanı Tanım COUNTER C <ilk değer> <ilk değer> WORD I, Q, M, L, D veya sabit Sayıcının alması gereken ilk sayı BCD (0'dan 999'a) ilk değer Tanım ---( SC ) (Sayıcı değerini ata) ancak RLO'da pozitif ayrıt varsa çalıştırılır. O zaman ilk değer, belirlenen sayıcıya aktarılır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X - - - - 0 X - 0 Örnek I 0.0 C5 SC C#100 I0.0 girişinde pozitif ayrıt varsa ("0" 'dan "1" 'e değişim) C5 sayıcısı 100 ilk değerini alır. Pozitif ayrıt yoksa, C5 sayıcısının değeri değişmeden kalır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 4-9 Sayıcı Komutları 4.6 ---( CU ) Yukarı Sayıcı Bobini Sembol İngilizce Almanca <C no.> <Z no.> ---( CU ) ---( ZV ) Parametre İngilizce <C no.> Parametre Almanca <Z no.> Veri Tipi Bellek Alanı Tanım COUNTER C Sayıcı kimlik numarası, sınırları CPU'ya bağlıdır Tanım ---( CU ) (Yukarı Sayıcı Bobin) RLO'da pozitif ayrıt varsa ve belirlenen sayıcının değeri 999'dan küçükse, sayıcının değerini bir arttırır. Eğer RLO'da pozitif ayrıt yoksa veya sayıcının değeri zaten "999" olmuşsa, sayıcının değeri değişmeden kalır. Durum Word'ü Değeri: 4-10 BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 - - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları Örnek Devre 1 I 0.0 C10 SC C#100 Devre 2 Devre 3 I 0.1 C10 CU I 0.2 C10 R Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), 100 ilk değeri C10 sayıcısına yüklenir. Eğer I0.1' girişinin sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), C10 değerinin "999" olması durumu hariç C10 sayıcısının sayaç değeri bir arttırılır. RLO'da pozitif ayrıt yoksa, C10'un değeri değişmeden kalır. Eğer I0.2'nin sinyal durumu "1" ise, C10 sayıcısı "0" 'a resetlenir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 4-11 Sayıcı Komutları 4.7 ---( CD ) Aşağı Sayıcı Bobini Sembol İngilizce Almanca <C no.> <Z no.> ----(CD) ---( ZD ) Parametre İngilizce <C no.> Parametre Almanca <Z no.> Veri Tipi Bellek Alanı Tanım COUNTER C Sayıcı kimlik numarası, sınırları CPU'ya bağlıdır Tanım ---( CD ) (Aşağı Sayıcı Bobin) RLO'da pozitif ayrıt varsa ve belirlenen sayıcının değeri 0'dan büyükse, sayıcının değerini bir azaltır. Eğer RLO'da pozitif ayrıt yoksa veya sayıcının değeri zaten "0" olmuşsa, sayıcının değeri değişmeden kalır. Durum Word'ü Değeri: 4-12 BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 - - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları Örnek Devre 1 I 0.0 Z10 SC C#100 Devre 2 I 0.1 C10 CU C10 Q 4.0 I 0.2 C10 R Devre 3 Devre 4 "0" sayaç değeri tespit edici Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), 100 ilk değeri C10 sayıcısına yüklenir. Eğer I0.1' girişinin sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), C10 değerinin "0" olması durumu hariç C10 sayıcısının sayaç değeri bir azaltılır. RLO'da pozitif ayrıt yoksa, C10'un değeri değişmeden kalır. Eğer sayaç değeri = 0 ise, Q4.0 açılır. Eğer I0.2 girişinin sinyal durumu "1" ise, C10 sayıcısı "0" 'a resetlenir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 4-13 Sayıcı Komutları 4-14 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Sayıcı Komutları 5 Veri Bloğu Komutları 5.1 ---(OPN) Veri Bloğu Aç: DB veya DI Sembol <DB no.> veya <DI no.> ---(OPN) Parametre <DB no.> <DI no.> Veri Tipi BLOCK_DB Bellek Alanı DB, DI Tanım DB/DI sayısı; sınırı CPU'ya bağlı Tanım ---(OPN) (Veri Bloğu Aç) paylaşılan bir veri bloğu (DB) veya çalışma veri bloğu (DI) açar. ---(OPN) işlevi şartsız bir veri bloğu çağrımıdır. Veri bloğunun sayısı DB veya DI yazmacına aktarılır. Sonraki DB ve DI komutları yazmaç içeriğine bağlı olarak, karşılık gelen bloklara erişir. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - - - - - Örnek Devre 1 Devre 2 DB10 OPN DBX0.0 Q 4.0 Veri bloğu 10 (DB10) açılır. Kontakt adresi (DBX0.0), DB10 içeriğindeki o anki veri kaydının sıfırıncı baytının sıfırıncı bitini gösterir. Bu bitin sinyal durumu Q4.0 çıkışına atanır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 5-1 Veri Bloğu Komutları 5-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Mantıksal Kontrol Komutları 6 6.1 Mantıksal Kontrol Komutları Mantıksal Kontrol Komutlarına Genel Bakış Tanım Mantıksal kontrol komutlarını tüm mantıksal bloklarda kullanabilirsiniz: organizasyon blokları (OB'er), işlev blokları (FB'ler) ve işlevler (FC'ler). Aşağıdaki işlevleri gören mantıksal kontrol komutları mevcuttur: • ---( JMP )--- Şartsız Atla • ---( JMP )--- Şartlı Atla • ---( JMPN )--- Değilse Atla Adres Olarak Etiketle Bir Atla (Jump) komutunun adresi bir etikettir (Label). Bir etiket, azami dört karakterden oluşur. İlk karakter alfabeden bir harf olmalıdır; öteki karakterler harf veya rakam olabilir (örneğin, SEG3). Atlama etiketi, programın gitmesini istediğiniz hedefi gösterir. Hedef Olarak Etiketle Hedef etiketi, bir devrenin başında olmalıdır. Devrenin başındaki hedef etiketi, merdiven mantığı gözatıcısından (LAD browser) LABEL'ı seçilerek girilir. Boş bir kutu açılır. Kutuya etiketin adı yazılır. Devre 1 SEG3 JMP Devre 2 Q 4.0 I 0.1 = . . Devre X SEG3 Q 4.1 I 0.4 R S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 6-1 Mantıksal Kontrol Komutları 6.2 ---(JMP)--- Şartsız Atla(Jump) Sembol <etiket ismi> ---( JMP ) Tanım ---( JMP ) (1 ise blok içinde atla) Sol enerji rayı ile komut arasında merdiven elemanı yoksa mutlak atla gibi işlev görür (örneğe bakın). Her ---( JMP ) için bir hedef (LABEL) bulunmak zorundadır. Atla komutu ile etiket arasındaki komutların tümü işlenmeden atlanır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - - - - - Örnek Devre 1 CAS1 JMP : : : : Devre X CAS1 I 0.4 Q 4.1 R Atla, her zaman çalıştırılır ve atla komutu ile atlama etiketi aradaki komutlar çalıştırılmaz. 6-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Mantıksal Kontrol Komutları 6.3 ---(JMP)--- Şartlı Atla Sembol <etiket ismi> ---( JMP ) Tanım ---( JMP ) (1 ise blok içinde atla) bir önceki mantıksal işlemin RLO'su "1" ise şartlı atla gibi çalışır. Her ---( JMP ) için bir hedef (LABEL) bulunmak zorundadır. Atla komutu ile etiket arasındaki komutların tümü işlenmeden atlanır. Eğer bir şartlı atla çalıştırılmamışsa, atla komutundan sonra RLO "1" 'e değişir. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 1 1 0 Örnek Devre 1 I 0.0 Devre 2 CAS1 JMP I 0.3 Q 4.0 R I 0.4 Q 4.1 R Devre 3 CAS1 Eğer I0.0 = "1" ise, CAS1 etiketine atla çalıştırılır. Atla sebebiyle, I0.3 "1" olsa bile Q4.0 çıkışını resetle komutu çalıştırılmaz. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 6-3 Mantıksal Kontrol Komutları 6.4 ---( JMPN ) Atla-Eğer-Değilse Sembol <etiket ismi> ---( JMPN ) Tanım ---( JMPN ) (Değilse Atla) ROLO "0" iken çalıştırılan bir "etikete atla" komutuna karşılık gelir. Her ---( JMPN ) için bir hedef (LABEL) bulunmak zorundadır. Atla komutu ile etiket arasındaki komutların tümü işlenmeden geçilir. Eğer bir şartlı atla çalıştırılmamışsa, atla komutundan sonra RLO "1" 'e değişir. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 1 1 0 Örnek Devre 1 I 0.0 Devre 2 CAS1 JMP I 0.3 Q 4.0 R I 0.4 Q 4.1 R Devre 3 CAS1 Eğer I0.0 = "0" ise, CAS1 etiketine atla çalıştırılır. Atla sebebiyle, I0.3 "1" olsa bile Q4.0 çıkışını resetle komutu çalıştırılmaz. 6-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Mantıksal Kontrol Komutları 6.5 LABEL Etiketle Sembol LABEL Tanım LABEL atla komutunun hedefinin belirleyicisidir. İlk karakter alfabeden bir harf olmalıdır; öteki karakterler harf veya rakam olabilir (örneğin, CAS1). Her ---( JMP ) veya ---( JMPN ) için bir atlama hedefi (LABEL) bulunmak zorundadır. Örnek Devre 1 I 0.0 Devre 2 CAS1 JMP I 0.3 Q 4.0 R I 0.4 Q 4.1 R Devre 3 CAS1 Eğer I0.0 = "1" ise, CAS1 etiketine atla çalıştırılır. Atla sebebiyle, I0.3 "1" olsa bile Q4.0 çıkışını resetle komutu çalıştırılmaz. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 6-5 Mantıksal Kontrol Komutları 6-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tamsayı Matematiksel Komutları 7 7.1 Tamsayı Matematiksel Komutları Tamsayı Matematiksel Komutlarına Genel Bakış Tanım Tamsayı matematiğini kullanarak, aşağıdaki işlemleri iki tamsayı (16 ve 32 bit) ile yapabilirsiniz: • ADD_I Tamsayı Topla • SUB_I Tamsayı Çıkart • MUL_I Tamsayı Çarp • DIV_I Tamsayı Böl • ADD_DI Double Tamsayı Topla • SUB_DI Double Tamsayı Çıkart • MUL_DI Double Tamsayı Çarp • DIV_DI Double Tamsayı Böl • MOD_DI Double Tamsayı Kalanı Döndür S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 7-1 Tamsayı Matematiksel Komutları 7.2 Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturma Komutlar Tanım Tamsayı matematiği komutları durum word'ünün aşağıdaki bitlerini etkiler: CC1 ve CC0, OV ve OS. Aşağıdaki tablolar, tamsayı (16 ve 32 bit) komutlarının sonuçları için, durum word'ünün bitlerinin sinyal durumunu gösterir:: Sonuç İçin Geçerli Aralık 0 (sıfır) 16 bit: -32 768 <= sonuç < 0 (negatif sayı) 32 bit: -2 147 483 648 <= sonuç < 0 (negatif sayı) 16 bit: 32 767 >= sonuç > 0 (pozitif sayı) 32 bit: 2 147 483 647 >= sonuç > 0 (pozitif sayı) CC 1 0 0 CC 0 0 1 OV 0 0 OS * * 1 0 0 * Sonuç İçin Geçersiz Aralık Alt taşma (toplama) 16 bit: sonuç = -65536 32 bit: sonuç = -4 294 967 296 Alt taşma (çarpma) 16 bit: sonuç < -32 768 (negatif sayı) 32 bit: sonuç < -2 147 483 648 (negatif sayı) Taşma (toplama, çıkartma) 16 bit: sonuç > 32 767 (pozitif sayı) 32 bit: sonuç > 2 147 483 647 (pozitif sayı) Taşma (çarpma, bölme) 16 bit: sonuç > 32 767 (pozitif sayı) 32 bit: sonuç > 2 147 483 647 (pozitif sayı) A1 0 A0 0 OV 1 OS 1 0 1 1 1 0 1 1 1 1 0 1 1 Alt taşma (toplama, çıkartma) 16 bit: sonuç < -32. 768 (negatif sayı) 32 bit: sonuç < -2 147 483 648 (negatif sayı) 1 0 1 1 1 1 1 1 A1 0 1 A0 0 1 OV 1 1 OS 1 1 OS biti komutun sonucundan etkilenmez. Sıfıra Bölme İşlem +D: sonuç = -4 294 967 296 /D veya MOD: 0'a bölme 7-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tamsayı Matematiksel Komutları 7.3 ADD_I Tamsayı Topla Sembol ADD_I EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL INT IN2 INT OUT INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Toplama için ilk değer Toplama için ikinci değer Toplama sonucu Tanım ADD_I (Tamsayı Topla) İmkan ver (Enable - EN) girişinde mantıksal bir "1" ile aktiflenir. IN1 ve IN2 toplanır ve sonuç OUT'dan okunabilir. Eğer sonuç bir double tamsayı (16-bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek I 0.0 MW0 MW2 ADD_I EN IN1 IN2 ENO NOT OUT MW10 Q 4.0 S ADD_I kutusu, eğer I0.0 = "1" ise aktiflenir. MW0 + MW2 toplamasının sonucu MW10'a yerleştirilir. Eğer sonuç bir tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 7-3 Tamsayı Matematiksel Komutları 7.4 SUB_I Tamsayı Çıkart Sembol SUB_I EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL INT IN2 INT OUT INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Çıkartma için ilk değer Çıkartılacak değer Çıkartma sonucu Tanım SUB_I (Tamsayı Çıkart) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN2, IN1'den çıkartılır ve sonuç OUT'dan okunabilir. Eğer sonuç bir double tamsayı (16bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek SUB_I I 0.0 MW0 MW2 EN IN1 IN2 ENO NOT OUT MW10 Q 4.0 S SUB_I kutusu, eğer I0.0 = "1" ise aktiflenir. MW0 - MW2 çıkartmasının sonucu MW10'a yerleştirilir. Eğer sonuç bir tamsayı için geçerli aralığın dışında kalırsa veya I0.0 = 0 ise Q4.0 set edilir. 7-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tamsayı Matematiksel Komutları 7.5 MUL_I Tamsayı Çarp Sembol MUL_I EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL INT IN2 INT OUT INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Çarpma için ilk değer Çarpma için ikinci değer Çarpma sonucu Tanım MUL_I (Tamsayı Çarp) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1 ve IN2 çarpılır ve sonuç OUT'dan okunabilir. Eğer sonuç bir double tamsayı (16-bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek I 0.0 MW0 MW2 MUL_I EN IN1 IN2 ENO NOT OUT MW10 Q 4.0 S MUL_I kutusu, eğer I0.0 = "1" ise aktiflenir. MW0 x MW2 çarpmasının sonucu MW10'a yerleştirilir. Eğer sonuç bir tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 7-5 Tamsayı Matematiksel Komutları 7.6 DIV_I Tamsayı Böl Sembol DIV_I EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL INT IN2 INT OUT INT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Bölünen Bölen Bölme sonucu Tanım DIV_I (Tamsayı Böl) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1, IN2'ye bölünür ve sonuç OUT'dan okunabilir. Eğer sonuç bir double tamsayı (16bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek DIV_I I 0.0 MW0 MW2 EN IN1 IN2 ENO NOT OUT MW10 Q 4.0 S DIV_I kutusu, eğer I0.0 = "1" ise aktiflenir. MW0 / MW2 bölmesinin sonucu MW10'a yerleştirilir. Eğer sonuç bir tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. 7-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tamsayı Matematiksel Komutları 7.7 ADD_DI Double Tamsayı Topla Sembol ADD_DI EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL DINT IN2 DINT OUT DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Toplama için ilk değer Toplama için ikinci değer Toplama sonucu Tanım ADD_DI (Double Tamsayı Topla) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1 ve IN2 toplanır ve sonuç OUT'dan okunabilir. Eğer sonuç bir double tamsayı (32-bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü BR Değeri: X CC 1 CC 0 OV OS OR STA RLO /FC X X X X 0 X X 1 MD0 MD4 EN IN1 IN2 Örnek ADD_DI I 0.0 ENO NOT OUT MD10 Q 4.0 S ADD_DI kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 + MD4 toplamasının sonucu MD10'a yerleştirilir. Eğer sonuç bir double tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 7-7 Tamsayı Matematiksel Komutları 7.8 SUB_DI Double Tamsayı Çıkart Sembol SUB_DI EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL DINT IN2 DINT OUT DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Çıkartma için ilk değer Çıkartılacak değer Çıkartma sonucu Tanım SUB_DI (Double Tamsayı Çıkart) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN2, IN1'den çıkartılır ve sonuç OUT'dan okunabilir. Eğer sonuç bir double tamsayı (32-bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek SUB_DI I 0.0 MD0 MD4 EN IN1 IN2 ENO NOT OUT MD10 Q 4.0 S SUB_DI kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 - MD4 çıkartmasının sonucu MD10'a yerleştirilir. Eğer sonuç bir double tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. 7-8 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tamsayı Matematiksel Komutları 7.9 MUL_DI Double Tamsayı Çarp Sembol MUL_DI EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL DINT IN2 DINT OUT DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Çarpma için ilk değer Çarpma için ikinci değer Çarpma sonucu Tanım MUL_DI (Double Tamsayı Çarp) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1 ve IN2 çarpılır ve sonuç OUT'dan okunabilir. Eğer sonuç bir double tamsayı (32-bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek MUL_DI I 0.0 MD0 MD4 EN IN1 IN2 ENO NOT OUT MD10 Q 4.0 S MUL_DI kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 x MD4 çarpmasının sonucu MD10'a yerleştirilir. Eğer sonuç bir double tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 7-9 Tamsayı Matematiksel Komutları 7.10 DIV_DI Double Tamsayı Böl Sembol DIV_DI EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL DINT IN2 DINT OUT DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Bölünen Bölen Bölme sonucunun tam kısmı Tanım DIV_DI (Double Tamsayı Böl) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1, IN2'ye bölünür ve sonuç OUT'dan okunabilir. Double Tamsayı Böl elemanı kalan oluşturmaz. Eğer sonuç bir double tamsayı (32-bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek DIV_DI I 0.0 MD0 MD4 EN IN1 IN2 ENO NOT OUT MD10 Q 4.0 S DIV_DI kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 : MD4 işleminin sonucu MD10'a yerleştirilir. Eğer sonuç bir double tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. 7-10 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tamsayı Matematiksel Komutları 7.11 MOD_DI Double Tamsayı Kalanı Döndür Sembol MOD_DI EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL DINT IN2 DINT OUT DINT Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Bölünen Bölen Bölme kalanı Tanım MOD_DI (Double Tamsayı Kalanı Döndür) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1, IN2'ye bölünür ve kalan OUT'dan okunabilir. Eğer sonuç bir double tamsayı (32-bit) için geçerli aralığın dışında kalırsa, OV ve OS bitleri mantıksal "1" olur, ENO mantıksal "0" olur ve böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturmaya bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 MD0 MD4 EN IN1 IN2 Örnek MOD_DI I 0.0 ENO NOT OUT MD10 Q 4.0 S DIV_DI kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 : MD4 bölmesinin kalanı MD10'a yerleştirilir. Eğer kalan bir double tamsayı için geçerli aralığın dışında kalırsa Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 7-11 Tamsayı Matematiksel Komutları 7-12 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.1 Gerçel Sayı Matematiksel Komutlarına Genel Bakış Tanım IEEE 32-bit gerçel sayılar REAL denilen veri tipine aittir. iki adet 32-bit IEEE gerçel sayıları kullanarak aşağıdaki matematiksel işlemleri gerçekleştirmek için gerçel sayı matematik komutlarını kullanabilirsiniz: • ADD_R Gerçel Sayı Topla • SUB_R Gerçel Sayı Çıkart • MUL_R Gerçel Sayı Çarp • DIV_R Gerçel Sayı Böl Gerçel sayı matematiğini kullanarak, bir 32-bit IEEE gerçel sayı ile aşağıdaki işlemleri yapabilirsiniz: • Mutlak Değerini (ABS) hesapla • Karesini (SQR) ve Karekökünü (SQRT) hesapla • Doğal Logaritmasını (LN) hesapla • e (= 2,71828) tabanında Üstel Değerini (EXP) hesapla • 32-bit IEEE gerçel sayı ile ifade edilen açının aşağıdaki trigonometrik değerlerini hesapla - Sinüs (SIN) ve Ark Sinüs (ASIN) - Kosinüs (COS) ve Ark Kosinüs (ACOS) - Tanjant (TAN) ve Ark Tanjant (ATAN) Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-1 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.2 Gerçel Sayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturma Tanım Gerçel sayı komutları durum word'ünün aşağıdaki bitlerini etkiler: CC1 ve CC0, OV ve OS. Aşağıdaki tablolar, gerçel sayı (32 bit) komutlarının sonuçları için, durum word'ünün bitlerinin sinyal durumunu gösterir:: Sonuç İçin Geçerli Aralık CC 1 CC 0 OV OS +0, -0 (sıfır) 0 0 * 0 -3.402823E+38 < sonuç < -1.175494E-38 (negatif sayı) 0 1 0 * +1.175494E-38 < sonuç < 3.402824E+38 (pozitif sayı) 1 0 0 * CC 1 0 CC 0 OV 0 1 OS 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 * OS biti komutun sonucundan etkilenmez. Sonuç İçin Geçersiz Aralık Alt Taşma1.175494E-38 < sonuç < 1.401298E-45 (negatif sayı) Alt Taşma +1.401298E-45 < sonuç < +1.175494E-38 (pozitif sayı) Taşma Sonuç < -3.402823E+38 (negatif sayı) Taşma Sonuç > 3.402823E+38 (pozitif sayı) Geçerli bir gerçel sayı değil veya geçersiz komut (giriş değeri geçerli aralık dışında) 8-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.3 Temel Komutlar 8.3.1 ADD_R Gerçel Sayı Topla Sembol ADD_R EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL REAL IN2 REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Toplama için ilk değer Toplama için ikinci değer Toplama sonucu Tanım ADD_R (Gerçel Sayı Topla) İmkan ver (Enable - EN) girişinde mantıksal bir "1" ile aktiflenir. IN1 ve IN2 toplanır ve sonuç OUT'dan okunabilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa (taşma veya alt taşma), OV ve OS bitleri mantıksal "1" ve ENO "0" olur, böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek I 0.0 MD0 MD4 ADD_R ENO EN IN1 OUT IN2 Q 4.0 NOT S MD10 ADD_R kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 + MD4 toplamasının sonucu MD10'a yerleştirilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa veya eğer program bildirimi çalıştırılmazsa (I0.0 = 0) Q4.0 çıkışı set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-3 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.3.2 SUB_R Gerçel Sayı Çıkart Sembol SUB_R EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL REAL IN2 REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Çıkartma için ilk değer Çıkartılacak değer Çıkartma sonucu Tanım SUB_R (Gerçel Sayı Çıkart) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN2, IN1'den çıkartılır ve sonuç OUT'dan okunabilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa (taşma veya alt taşma), OV ve OS bitleri mantıksal "1" ve ENO "0" olur, böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 Örnek I 0.0 MD0 MD4 SUB_R ENO EN IN1 OUT IN2 Q 4.0 NOT S MD10 SUB_R kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 - MD4 çıkartmasının sonucu MD10'a yerleştirilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa veya eğer program bildirimi çalıştırılmazsa Q4.0 çıkışı set edilir. 8-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.3.3 MUL_R Gerçel Sayı Çarp Sembol MUL_R EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL REAL IN2 REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Çarpma için ilk değer Çarpma için ikinci değer Çarpma sonucu Tanım MUL_R (Gerçel Sayı Çarp) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1 ve IN2 çarpılır ve sonuç OUT'dan okunabilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa (taşma veya alt taşma), OV ve OS bitleri mantıksal "1" ve ENO "0" olur, böylece bu matematik kutusu sonrasındaki ENO (katlı kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR X CC 1 X CC 0 X OV X OS X OR 0 STA X RLO X /FC 1 Örnek I 0.0 MD0 MD4 MUL_R ENO EN IN1 OUT IN2 Q 4.0 NOT S MD10 MUL_R kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 x MD4 çarpmasının sonucu MD0'a yerleştirilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa veya eğer program bildirimi çalıştırılmazsa Q4.0 çıkışı set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-5 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.3.4 DIV_R Gerçel Sayı Böl Sembol DIV_R EN ENO IN1 IN2 OUT Parametre EN ENO IN1 Veri Tipi BOOL BOOL REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit Tanım Girişe imkan ver Çıkışa imkan ver Bölünen IN2 REAL Bölen OUT REAL I, Q, M, L, D veya sabit I, Q, M, L, D Bölme sonucu Tanım DIV_R (Gerçel Sayı Böl) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. IN1, IN2'ye bölünür ve sonuç OUT'dan okunabilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa (taşma veya alt taşma), OV ve OS bitleri mantıksal "1" ve ENO "0" olur, böylece bu matematik kutusu sonrasındaki ENO (katlı - kaskad düzeni) ile bağlı diğer işlevler çalıştırılmaz. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü BR Değeri: X CC 1 CC 0 OV OS OR STA RLO /FC X X X X 0 X X 1 Örnek I 0.0 MD0 MD4 DIV_R ENO EN IN1 OUT IN2 Q 4.0 NOT S MD10 DIV_R kutusu, eğer I0.0 = "1" ise aktiflenir. MD0 / MD4 bölmesinin sonucu MD10'a yerleştirilir. Eğer sonuç bir gerçel sayı için geçerli aralığın dışında kalırsa veya eğer program bildirimi çalıştırılmazsa Q4.0 çıkışı set edilir. 8-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.3.5 ABS Gerçel Sayının Mutlak Değerini Hesapla Sembol ABS EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının mutlak değeri Tanım ABS Gerçel Sayının Mutlak Değerini Hesaplar. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC 1 - - - - 0 1 1 1 Örnek I 0.0 MD8 ABS EN ENO IN OUT Q 4.0 NOT MD12 Eğer I0.0 = "1" ise,MD8'in mutlak değeri MD12'ye yerleştirilir. MD8 = + 6.234, MD12 = 6.234 verir. Dönüştürme yapılmadığında Q4.0 çıkışı "1" olur (ENO = EN = 0). S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-7 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4 Ek Komutlar 8.4.1 SQR Karesini Hesapla Sembol SQR EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: Gerçel Sayının karesi Tanım SQR gerçel sayının karesini hesaplar. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: 8-8 BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.2 SQRT Karekökünü Hesapla Sembol SQRT EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının kare kökü Tanım SQRT gerçel sayının karekökünü hesaplar. Verilen adres "0" 'dan büyük olduğunda bu komut pozitif sonuç oluşturur. Tek istisna: -0 'ın karekökü -0 'dır. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-9 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.3 EXP Üstel Değerini Hesapla Sembol EXP EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının üstel değeri Tanım EXP gerçel sayının e (=2,71828...) tabanında üstel değerini hesaplar. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: 8-10 BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.4 LN Doğal Logaritmasını Hesapla Sembol LN EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının doğal logaritması Tanım LN gerçel sayının doğal logaritmasını hesaplar. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-11 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.5 SIN Sinüs Değerini Hesapla Sembol SIN EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının sinüsü Tanım SIN gerçel sayının sinüs değerini hesaplar. Burada gerçel sayı, radyan cinsinden bir açıyı temsil eder. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: 8-12 BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.6 COS Kosinüs Değerini Hesapla Simge COS EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının kosinüsü Tanım COS gerçel sayının kosinüs değerini hesaplar. Burada gerçel sayı, radyan cinsinden bir açıyı temsil eder. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-13 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.7 TAN Tanjant Değerini Hesapla Simge TAN EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının tanjantı Tanım TAN gerçel sayının tanjant değerini hesaplar. Burada gerçel sayı, radyan cinsinden bir açıyı temsil eder. Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: 8-14 BR X CC 1 X CC 0 X OV X OS X OR 0 STA X RLO X /FC 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.8 ASIN Ark Sinüs Değerini Hesapla Simge ASIN EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının ark sinüsü Tanım ASIN gerçel sayının -1 <= giriş değeri <= 1 tanım aralığında ark sinüs değerini hesaplar. Burada sonuç, tanım aralığı içerisinde radyan cinsinden bir açıyı temsil eder. -π/2 ≤ çıkış değeri ≤ +π/2 burada π = 3.1415.... Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-15 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.9 ACOS Ark Kosinüs Değerini Hesapla Simge ACOS EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının ark kosinüsü Tanım ACOS gerçel sayının -1 <= giriş değeri <= 1 tanım aralığında ark kosinüs değerini hesaplar. Burada sonuç, tanım aralığı içerisinde radyan cinsinden bir açıyı temsil eder. 0 ≤ çıkış değeri ≤ +π burada π = 3.1415.... Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: 8-16 BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8.4.10 ATAN Ark Tanjant Değerini Hesapla Simge ATAN EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL REAL OUT REAL Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Giriş değeri: gerçel sayı Çıkış değeri: gerçel sayının ark tanjantı Tanım ATAN gerçel sayının ark tanjant değerini hesaplar. Burada sonuç, tanım aralığı içerisinde radyan cinsinden bir açıyı temsil eder. -π/2 ≤ çıkış değeri ≤ +π/2 burada π = 3.1415.... Tamsayı Matematiğini Kullanarak Durum Word'ünün Bitlerini Oluşturmaya da bakın. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X X 0 X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-17 Gerçel Sayı (Kayan Nokta) Matematiksel Komutları 8-18 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Taşıma-Atama (Move) Komutları 9 9.1 Taşıma-Atama (Move) Komutları MOVE Değer Ata Simge MOVE EN ENO IN OUT Parametre EN ENO IN Veri Tipi BOOL BOOL Tüm temel veri tiplerinin uzunlukları 8, 16 veya 32 bittir Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D veya sabit Tanım Girişe imkan ver Çıkışa imkan ver Kaynak değeri OUT Tüm temel veri tiplerinin uzunlukları 8, 16 veya 32 bittir I, Q, M, L, D Hedef adresi Tanım MOVE (Değer Atama) İmkan Ver EN Girişi tarafından aktive edilir. IN girişinde belirtilen değer, OUT çıkışında belirtilen adrese kopyalanır. ENO, EN ile aynı mantıksal durumdadır. MOVE sadece BYTE, WORD, or DWORD veri nesnelerini kopyalayabilir. Kullanıcı tarafından tanımlanmış dizi veya yapı gibi veri tipleri "BLKMOVE" (SFC 20) sistem işlevi kullanılarak kopyalanmak zorundadır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC 1 - - - - 0 1 1 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 9-1 Taşıma-Atama (Move) Komutları MCR (Ana Kontrol Rölesi - Master Control Relay) Bağımlılığı MCR bağımlılığı ancak bir taşıma kutusu aktif bir MCR bölgesi içine yerleştirilirse aktive edilir. Aktive edilmiş MCR bölgesi dahilinde, eğer MCR açıksa ve imkan verme girişi üzerinde enerji akışı varsa; adreslenmiş olan veri yukarıda açıklandığı şekilde kopyalanır. Eğer MCR kapalı ise ve MOVE çalıştırılırsa, o andaki giriş durumundan bağımsız olarak, bir mantıksal "0" belirlenen çıkış (OUT) adresine yazılır. Not Bir değeri farklı uzunluktaki veri tipine taşırken, yüksek değerli baytlar gerekli şekilde kırpılır veya sıfırla doldurulur: Örnek: Double Word Atama (Move) double worde: bayta: worde: Örnek: Bayt Atama (Move) bayta: worde: double worde: 1111 1111 Sonuç 1111 1111 0000 1111 1111 0000 0101 0101 0000 1111 1111 0000 0101 0101 0101 0101 1111 0000 0101 0101 1111 0000 Sonuç 1111 0000 1111 0000 1111 0000 Örnek I 0.0 MW10 MOVE EN ENO IN OUT Q 4.0 DBW12 Eğer I0.0 "1" ise komut çalıştırılır. MW10'un içeriği o anda açık DB'nin veri word'ü 12'ye kopyalanır. Eğer komut çalıştırılırsa Q4.0 "1" olur. Eğer örnek basamaklar, aktive edilmiş bir MCR bölgesi içindeyse: 9-2 • MCR açıkken, MW10 verisi, yukarıda açıklandığı şekilde DBW12'ye kopyalanır. • MCR kapalıyken, DBW12'ye "0" yazılır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları 10 Program Kontrol Komutları 10.1 Program Kontrol Komutlarına Genel Bakış Tanım Aşağıdaki program kontrol komutları kullanılabilir: • ---(CALL) Bobinden FC SFC Çağır (Parametresiz) • CALL_FB Kutudan FB Çağır • CALL_FC Kutudan FC Çağır • CALL_SFB Kutudan Sistem FB Çağır • CALL_SFC Kutudan Sistem FC Çağır • Çoklu Çalışma Çağır • Kütüphaneden Bir Blok Çağır • MCR İşlevlerinin Kullanımına Dair Önemli Notlar • ---(MCR<) Ana Kontrol Rölesi Açık • ---(MCR>) Ana Kontrol Rölesi Kapalı • ---(MCRA) Ana Kontrol Rölesini Aktive Et • ---(MCRD) Ana Kontrol Rölesini Deaktive Et • RET Dön S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-1 Program Kontrol Komutları 10.2 ---(Call) Bobinden FC SFC Çağır (Parametresiz) Simge <FC/SFC no.> ---( CALL ) Parametre <FC/SFC no.> Veri Tipi BLOCK_FC BLOCK_SFC Bellek Alanı - Tanım FC/SFC sayısı; sınırı CPU'ya bağlı Tanım ---(Call) ( FC veya SFC parametresiz çağır) parametre geçirmeden işlev (FC) veya sistem işlevi (SFC) çağırmak için kullanılır. Bir çağrı sadece CALL bobininde RLO "1" ise çalıştırılır. Eğer ---(Call) çalıştırılırsa, • Çağrı bloğu geri dönüş adresi saklanır, • Önceki yerel veri alanı yeni yerel veri alanı ile değiştirilir, • MA biti (aktif MCR biti) B yığınına (B stack) ötelenir, • Çağrılan işlev için yeni bir yerel veri alanı yaratılır. Bundan sonra, program işlenmesi çağrılan FC veya SFC'den devam eder. Durum Word'ü BR Şartsız: Şartlı: 10-2 Değeri: Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - 0 0 0 0 1 1 1 0 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları Örnek . . . DB10 . . . . . . OPN MCRA FC10 CALL I 0.0 . . . . . . I 0.1 Q 4.0 MCRD FC11 CALL Yukarıda gösterilen merdiven basamakları, bir kullanıcı tarafından yazılan bir işlev bloğunun program bölümleridir. Bu FB'de, DB10 açılır ve MCR işlevselliği aktive edilir. Eğer şartsız FC10 çağrımı çalıştırılırsa, aşağıdakiler oluşur: Çağrımı yapan FB artı DB10 için seçim verisinin ve çağıran FB için çalışma veri bloğunun geri dönüş adresi saklanır. MCRA komutunda "1" yapılan MA biti, B yığınına itilir ve sonra çağrılan blok (FC10) için "0" yapılır. Program akışı FC10'dan devam eder. Eğer FC10, MCR işlevselliğine gerek duyuyorsa, FC10 içinde tekrar aktive edilmelidir. FC10 çalışması bittiğinde, program akışı çağıran FB'ye geri döner. MA biti eski haline getirilir, DB10 ve kullanıcı tarafından yazılan FB çalışma veri bloğu, FC10'un hangi DB'leri kullanmış olduğu önemsenmeksizin tekrar o andaki FB haline getirilir. Program, I0.0 mantıksal durumunu Q4.0 çıkışına atayarak sıradaki basamak ile devam eder. FC11 çağrımı şartlı bir çağrımdır. Yalnızca eğer I0.1 "1" ise çalıştırılır. Eğer çalıştırılırsa, FC11'e program kontrolünü bırakıp alma işlemi, FC10 için açıkladığımız şekilde gerçekleşir. Not Çağıran bloğa geri dönüldüğünde, daha önce açık olan DB her zaman hala açık olmayabilir. Lütfen README dosyasındaki notu okuduğunuzdan emin olun. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-3 Program Kontrol Komutları 10.3 CALL_FB Kutudan FB Çağır Simge <DB no.> FB no. EN ENO Simgeler, FB'ye bağlıdır (parametresi olup olmaması, kaç tane olduğu). EN, ENO ve FB'nin ismi veya numarasını içermelidir. Parametre EN ENO FB no. Veri Tipi BOOL BOOL BLOCK_FB Bellek Alanı I, Q, M, L, D I, Q, M, L, D - DB no. BLOCK_DB - Tanım Girişe imkan ver Çıkışa imkan ver FB/DB sayısı; sınırı CPU'ya bağlı Tanım CALL_FB (Kutudan İşlev Bloğu Çağır) EN "1" ise çalıştırılır. Eğer CALL_FB çalıştırılırsa, • Çağrı bloğu geri dönüş adresi saklanır, • O andaki veri blokları seçim verisi (DB ve çalışma DB'si) saklanır, • Önceki yerel veri alanı yeni yerel veri alanı ile değiştirilir, • MA biti (aktif MCR biti) B yığınına ötelenir, • Çağrılan işlev bloğu için yeni bir yerel veri alanı yaratılır. Bundan sonra, program işlenmesi çağrılan işlev bloğu içerisinden devam eder. BR biti, ENO'yu öğrenmek için okunur. Kullanıcı, ---(SAVE) kullanarak çağrılan blokta BR bitine ihtiyaç duyulan durumu (hata işleme) atamalıdır. Durum Word'ü BR Şartsız: Şartlı: 10-4 Değeri: X Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - 0 0 0 0 X X X X X X - - S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları Örnek . . . DB10 OPN . . . . . . . DB11 FB11 MCRA Q 4.0 EN ENO . . DB10 OPN Yukarıda gösterilen merdiven basamakları, bir kullanıcı tarafından yazılan bir işlev bloğunun program bölümleridir. Bu FB'de, DB10 açılır ve MCR işlevselliği aktive edilir. Eğer şartsız FB11 çağrımı çalıştırılırsa, aşağıdakiler oluşur: Çağrımı yapan FB artı DB10 için seçim verisinin ve çağıran FB için çalışma veri bloğunun geri dönüş adresi saklanır. MCRA komutunda "1" yapılan MA biti, B yığınına itilir ve sonra çağrılan blok (FB11) için "0" yapılır. Program akışı FB11'den devam eder. Eğer FB11, MCR işlevselliğine gerek duyuyorsa, FB11 içinde tekrar aktive edilmelidir. RLO durumu, çağıran FB'de hataların işlenebilmesi için ---(SAVE) komutu ile BR bitinde saklanmalıdır. FB11 çalışması bittiğinde, program akışı çağıran FB'ye geri döner. MA biti eski değerine geri alınır ve kullanıcı tarafından yazılan FB'nin çalışma veri bloğu tekrar açılır. Eğer FB11 doğru olarak çalıştırıldıysa, ENO = "1" olur ve böylece Q4.0 = "1" olur. Not Bir FB veya SFB açılırken, daha önce açık olan DB numarası kaybolur. Gereken DB tekrar açılmalıdır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-5 Program Kontrol Komutları 10.4 CALL_FC Kutudan FC Çağır Simge FC no. no. EN ENO Simge, FC'ye bağlıdır (parametresi olup olmaması, kaç tane olduğu). EN, ENO ve FC'nin ismi veya numarasını içermelidir. Parametre EN ENO FC no. Veri Tipi BOOL BOOL BLOCK_FC Bellek Alanı I, Q, M, L, D I, Q, M, L, D - Tanım Girişe imkan ver Çıkışa imkan ver FC sayısı; sınırı CPU'ya bağlı Tanım CALL_FC (Kutudan İşlev Çağır) bir işlevi (FC) çağırmak için kullanılır. Çağrım eğer EN "1" ise çalıştırılır. Eğer CALL_FC çalıştırılırsa, • Çağrı bloğu geri dönüş adresi saklanır, • Önceki yerel veri alanı yeni yerel veri alanı ile değiştirilir, • MA biti (aktif MCR biti) B yığınına ötelenir, • Çağrılan işlev için yeni bir yerel veri alanı yaratılır. Bundan sonra, program işlenmesi çağrılan işlevden devam eder. BR biti, ENO'yu öğrenmek için okunur. Kullanıcı, ---(SAVE) kullanarak çağrılan blokta BR bitine ihtiyaç duyulan durumu (hata işleme) atamalıdır. Eğer bir işlevi çağırırsanız ve çağrılan bloğun değişken bildirim tablosunda IN, OUT ve IN_OUT bildirimleri varsa, bu değişkenler çağıran blok için parametre değişkenleri listesi olarak programa eklenirler. İşlevi çağırırken, çağırma yerinde gerçek parametreleri parametre değişkenlerine mutlaka atamalısınız. İşlev bildirimindeki herhangi bir ilk değerin anlamı yoktur. Durum Word'ü BR Şartsız: Şartlı: 10-6 Değeri: X Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - 0 0 0 0 X X X X X X S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları Örnek . . . DB10 OPN . . . MCRA . . . FC10 FC11 Q 4.0 . EN ENO EN ENO . . Yukarıda gösterilen merdiven basamakları, bir kullanıcı tarafından yazılan bir işlev bloğunun program bölümleridir. Bu FB'de, DB10 açılır ve MCR işlevselliği aktive edilir. Eğer şartsız FC10 çağrımı çalıştırılırsa, aşağıdakiler oluşur: Çağrımı yapan FB artı DB10 için seçim verisinin ve çağıran FB için çalışma veri bloğunun geri dönüş adresi saklanır. MCRA komutunda "1" yapılan MA biti, B yığınına itilir ve sonra çağrılan blok (FC10) için "0" yapılır. Program akışı FC10'dan devam eder. Eğer FC10, MCR işlevselliğine gerek duyuyorsa, FC10 içinde tekrar aktive edilmelidir. RLO durumu, çağıran FB'de hataların işlenebilmesi için ---(SAVE) komutu ile BR bitinde saklanmalıdır. FC10 çalışması bittiğinde, program akışı çağıran FB'ye geri döner. MA biti önceki değerine döndürülür. FC10'un çalıştırılmasından sonra, program akışı çağıran FB'den ENO'nun aşağıdaki değerlerine bağlı olarak devam eder: ENO = "1" FC11 çalıştırılmıştır ENO = "0" çalıştırma, bir sonraki devrede başlar Eğer FC11 aynı zamanda doğru şekilde çalıştırılmışsa, ENO = "1" olur ve böylece Q4.0 = "1" olur. Not Çağıran bloğa geri dönüldüğünde, daha önce açık olan DB her zaman hala açık olmayabilir. Lütfen README dosyasındaki notu okuduğunuzdan emin olun. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-7 Program Kontrol Komutları 10.5 CALL_SFB Kutudan Sistem FB Çağır Simge <DB no.> SFB no. EN ENO Simgeler, SB'ye bağlıdır (parametresi olup olmaması, kaç tane olduğu). EN, ENO ve SFB'nin ismi veya numarasını içermelidir. Parametre EN ENO SFB no. Veri Tipi BOOL BOOL BLOCK_SFB Bellek Alanı I, Q, M, L, D I, Q, M, L, D - DB no. BLOCK_DB - Tanım Girişe imkan ver Çıkışa imkan ver FC sayısı; sınırı CPU'ya bağlı Tanım CALL_SFB (Kutudan Sistem İşlev Bloğu Çağır) EN "1" ise çalıştırılır. Eğer CALL_SFB çalıştırılırsa, • Çağrı bloğu geri dönüş adresi saklanır, • O andaki veri blokları seçim verisi (DB ve çalışma DB'si) saklanır, • Önceki yerel veri alanı yeni yerel veri alanı ile değiştirilir, • MA biti (aktif MCR biti) B yığınına ötelenir, • Çağrılan sistem işlev bloğu için yeni bir yerel veri alanı yaratılır. Bundan sonra, program işlenmesi çağrılan SFB'den devam eder. Eğer SFB çağrıldıysa (EN = "1") ve hata oluşmazsa, ENO "1" olur. Durum Word'ü BR Şartsız: Şartlı: 10-8 Değeri: X Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - 0 0 0 0 X X X X X X S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları Örnek . . . DB10 OPN . . . MCRA . . . DB 8 SFB 8 EN M11.0 REQ ID R_ID DW12 DW14 DW16 SD_1 Q 4.0 ENO DONE ERROR STATUS READY M10.0 CODE SD_2 SD_3 SD_4 DB10 OPN Yukarıda gösterilen merdiven basamakları, bir kullanıcı tarafından yazılan bir işlev bloğunun program bölümleridir. Bu FB'de, DB10 açılır ve MCR işlevselliği aktive edilir. Eğer şartsız SFB8 çağrımı çalıştırılırsa, aşağıdakiler oluşur: Çağrımı yapan FB artı DB10 için seçim verisinin ve çağıran FB için çalışma veri bloğunun geri dönüş adresi saklanır. MCRA komutunda "1" yapılan MA biti, B yığınına itilir ve sonra çağrılan blok (SFB8) için "0" yapılır. Program akışı SFB8'den devam eder. SFB8 çalışması bittiğinde, program akışı çağıran FB'ye geri döner. MA biti eski değerine geri alınır ve kullanıcı tarafından yazılan FB'nin çalışma veri bloğu o andaki çalışma DB'si olur. Eğer SFB8 doğru olarak çalıştırıldıysa, ENO = "1" olur ve böylece Q4.0 = "1" olur. Not Bir FB veya SFB açılırken, daha önce açık olan DB numarası kaybolur. Gereken DB tekrar açılmalıdır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-9 Program Kontrol Komutları 10.6 CALL_SFC Kutudan Sistem FC Çağır Simge SFC no. no. EN ENO Simgeler, SFC'ye bağlıdır (parametresi olup olmaması, kaç tane olduğu). EN, ENO ve SFC'nin ismi veya numarasını içermelidir. Parametre EN ENO Veri Tipi BOOL BOOL Bellek Alanı - SFC no. BLOCK_SFC - Tanım Girişe imkan ver Çıkışa imkan ver SFC sayısı; sınırı CPU'ya bağlı Tanım CALL_SFC (Kutudan Sistem İşlevi Çağır) bir SFC çağırmak için kullanılır. Çağrım eğer EN "1" ise çalıştırılır. Eğer CALL_SFC çalıştırılırsa, • Çağrı bloğu geri dönüş adresi saklanır, • Önceki yerel veri alanı yeni yerel veri alanı ile değiştirilir, • MA biti (aktif MCR biti) B yığınına ötelenir, • Çağrılan sistem işlevi için yeni bir yerel veri alanı yaratılır. Bundan sonra, program işlenmesi çağrılan SFCden devam eder. Eğer SFC çağrıldıysa (EN = "1") ve hata oluşmazsa, ENO "1" olur. Durum Word'ü BR Şartsız: Şartlı: 10-10 Değeri: X Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - 0 0 0 0 X X X X X X S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları Örnek . . . DB10 OPN . . . MCRA . . . SFC20 EN DBDW12 Q 4.0 ENO SRCBLK RET_VAL . . . DSTBLK MW10 MOTOR.SPEED Yukarıda gösterilen merdiven basamakları, bir kullanıcı tarafından yazılan bir işlev bloğunun program bölümleridir. Bu FB'de, DB10 açılır ve MCR işlevselliği aktive edilir. Eğer şartsız SFC20 çağrımı çalıştırılırsa, aşağıdakiler oluşur: Çağrımı yapan FB artı DB10 için seçim verisinin ve çağıran FB için çalışma veri bloğunun geri dönüş adresi saklanır. MCRA komutunda "1" yapılan MA biti, B yığınına itilir ve sonra çağrılan blok (SFC20) için "0" yapılır. Program akışı SFC20'den devam eder. SFC20 çalışması bittiğinde, program akışı çağıran FB'ye geri döner. MA biti önceki değerine döndürülür. SFC20'nin çalıştırılmasından sonra, program akışı çağıran FB'den ENO'nun aşağıdaki değerlerine bağlı olarak devam eder: ENO = "1" Q4.0 = "1" ENO = "0" Q4.0 = "0" Not Çağıran bloğa geri dönüldüğünde, daha önce açık olan DB her zaman hala açık olmayabilir. Lütfen README dosyasındaki notu okuduğunuzdan emin olun. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-11 Program Kontrol Komutları 10.7 Çoklu Çalışma Çağır Simge #Değişke n ismi EN ENO Parametre Veri Tipi Bellek Alanı Tanım EN ENO #Değişken ismi BOOL BOOL FB, SFB I, Q, M, L, D I, Q, M, L, D - Girişe imkan ver Çıkışa imkan ver Çoklu çalışma ismi Tanım Bir çoklu çalışma, işlev bloğu veri tipli bir statik değişken bildirilerek yaratılır. Program eleman kataloğuna sadece bildirilmiş olan çoklu çalışmalar koyulur. Bir çoklu çalışmanın simgesi parametre olup olmaması ve kaç tane olduğuna bağlı olarak değişir. EN, ENO ve değişken ismi her zaman mevcuttur. Durum Word'ü Değeri: 10.8 BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - 0 0 X X X Kütüphaneden Bir Blok Çağır SIMATIC Yöneticisi içerisinde bulunan ve bir blok seçmek için kullanabileceğiniz kütüphaneler 10-12 • CPU işletim sisteminize tümleşik (Versiyon 3 STEP 7 projelerinde "Standard Library" ve versiyon 2 için "stdlibs (V2)" kütüphaneleri) • Çok defa kullanabilmek üzere sizin bir kütüphane içine kaydettiğiniz. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları 10.9 MCR İşlevlerinin Kullanımına Dair Önemli Notlar Ana Kontrol Rölesinin MCRA ile aktive edildiği bloklarla dikkatli olun: • Eğer MCR deaktive edilirse, ---(MCR<) ve ---(MCR>) arasındaki tüm parçalar tarafından 0 değeri yazılır. Bu, bloklara parametre aktarımı da dahil, parametre atama içeren tüm kutular için geçerlidir. • Bir MCR< komutundan önce RLO = 0 ise MCR deaktive edilir. Tehlike :PLC durdu veya tanımsız çalışma zamanı öğeleri! (PLC in STOP or undefined runtime characteristics!) Derleyici aynı zamanda, adres hesaplamak için VAR_TEMP'te tanımlanmış geçici değişkenlerin üzerine yerel veri yazma erişimi kullanır. Bu da aşağıdaki komut dizilerinin PLC'nin durmasına veya tanımsız çalışma zamanı öğeleri oluşmasına yol açar: Parametre değişkenleri erişimi • STRUCT, UDT, ARRAY, STRING tiplerinde karmaşık FC parametreleri bileşenlerine erişim • STRUCT, UDT, ARRAY, STRING tiplerinde karmaşık FB parametreleri bileşenlerine versiyon 2 bloğunda IN_OUT alanından erişim • Adresi 8180.0'dan büyük olan versiyon 2 işlev bloğu parametrelerine erişim • Versiyon 2 işlev bloğundan BLOCK_DB tipinde DB0'ı açan parametreye erişimi. Sonraki herhangi bir veriye erişim CPU'yu durdurur. T 0, C 0, FC0 veya FB0 da her zaman TIMER, COUNTER, BLOCK_FC ve BLOCK_FB için kullanılırlar. Parametre aktarımı • İçinde parametre aktarılan çağrımlar. LAD/FBD • Merdiven veya FBD'de RLO=0 olarak başlayan T dalları ve hat arası çıkışları. Çözüm Üstteki komutları, MCR'ye bağımlılıklarından kurtarın: 1. Ana Kontrol Rölesini Deaktive Et (Master Control Relay Deactivate) komutunu bahsi geçen ifade veya devreden önce kullanarak MCR'yi deaktive edin. 2. Ana Kontrol Rölesini Aktive Et (Master Control Relay Activate) komutunu bahsi geçen ifade veya devreden sonra kullanarak MCR'yi aktive edin. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-13 Program Kontrol Komutları 10.10 ---(MCR<) Ana Kontrol Rölesi Açık MCR İşlevlerinin Kullanımına Dair Önemli Notlar Simge ---(MCR<) Tanım ---(MCR<) (Ana Kontrol Rölesi Alanı Aç) MCR yığınındaki RLO'yu kaydeder. MCR yuvalama yığını, bir LIFO (last in, first out - son giren ilk çıkar) yığınıdır. ve sadece 8 yığın girişi (yuvalama seviyeleri) mümkündür. Yığın zaten doluysa, --(MCR<) işlevi MCR yığın hatası (MCRF-MCR Fault) oluşturur. Aşağıdaki elemanlar MCR-bağımlıdırlar ve bir MCR alanı açılırken MCR yığınına saklanan RLO durumundan etkilenirler: • ---( # )--- Hat Arası Çıkış • ---( ) Çıkış • ---( S ) Çıkışı Set Et • ---( R ) Çıkışı Reset Et • RS Reset Flip Flop • SR Set Flip Flop • MOVE Değer Ata Durum Word'ü BR Değeri: - 10-14 CC 1 CC 0 OV OS OR STA RLO /FC - - - - 0 1 - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları Örnek Devre 1 MCRA Devre 2 I 0.0 Devre 3 Devre 4 MCR< I 0.1 MCR< Q 4.0 S I 0.3 Devre 5 MCR alanı 2 MCR alanı 1 MCR> Devre 6 I 0.4 Q 4.1 Devre 7 MCR> Devre 8 MCRD MCR işlevselliği MCRA basamağı tarafından aktive edilir. O zaman 8'e kadar yuvalanmış MCR alanı yaratmak mümkün olur. Örnekte iki MCR alanı vardır. İşlevler şu şekilde çalıştırılır: I0.0 = "1" (MCR, alan 1 için ON (açık)): I0.4'ün mantıksal durumu Q4.1'e atanır I0.0 = "0" (MCR, alan 1 için OFF (kapalı)): I0.4'ün mantıksal durumundan bağımsız olarak Q4.1 "0" olur I0.1 = "1" (MCR, alan 2 için ON (açık)): I0.3 "1" ise, Q4.0 "1" set edilir I0.1 = "0" (MCR, alan 2 için OFF (kapalı)): I0.3'ün mantıksal durumundan bağımsız olarak Q4.0 değişmeden kalır S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-15 Program Kontrol Komutları 10.11 ---(MCR>) Ana Kontrol Rölesi Kapalı MCR İşlevlerinin Kullanımına Dair Önemli Notlar Simge ---(MCR>) Tanım ---(MCR>) (son açılan MCR alanını kapat) MCR yığınından bir RLO'yu çıkartır. MCR yuvalama yığını, bir LIFO (last in, first out - son giren ilk çıkar) yığınıdır. ve sadece 8 yığın girişi (yuvalama seviyeleri) mümkündür. Yığın zaten boşsa, --(MCR>) MCR yığın hatası (MCRF) oluşturur. Aşağıdaki elemanlar MCRbağımlıdırlar ve MCR alanı açılırken MCR yığınına saklanan RLO durumundan etkilenirler: • ---( # )--- Hat Arası Çıkış • ---( ) Çıkış • ---( S ) Çıkışı Set Et • ---( R ) Çıkışı Reset Et • RS Reset Flip Flop • SR Set Flip Flop • MOVE Değer Ata Durum Word'ü Değeri: 10-16 BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 1 - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları Örnek Devre 1 MCRA Devre 2 I 0.0 Devre 3 Devre 4 MCR< I 0.1 MCR< Q 4.0 S I 0.3 Devre 5 MCR alanı 2 MCR alanı 1 MCR> Devre 6 I 0.4 Q 4.1 Devre 7 MCR> Devre 8 MCRD MCR işlevselliği ---(MCRA) basamağı tarafından aktive edilir. O zaman 8'e kadar yuvalanmış MCR alanı yaratmak mümkün olur. Örnekte iki MCR alanı vardır. İlk --(MCR>) (MCR OFF) basamağı ikinci ---(MCR<) (MCR ON) basamağına aittir. Aradaki tüm basamaklar MCR alanı 2'ye aittir. İşlevler şu şekilde çalıştırılır: I0.0 = "1": I0.4'ün mantıksal durumu Q4.1'e atanır I0.0 = "0": I0.4'ün mantıksal durumundan bağımsız olarak Q4.1 "0" olur I0.1 = "1": I0.3 "1" ise, Q4.0 "1" set edilir I0.1 = "0": I0.3'ün mantıksal durumundan bağımsız olarak Q4.0 değişmeden kalır S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-17 Program Kontrol Komutları 10.12 ---(MCRA) Ana Kontrol Rölesini Aktive Et MCR İşlevlerinin Kullanımına Dair Önemli Notlar Simge ---(MCRA) Tanım ---(MCRA) (Ana Kontrol Rölesi Alanı Aktive Et) ana kontrol rölesi işlevini aktive eder. Bu komuttan sonra, MCR alanlarını aşağıdaki komutlarla programlamak mümkündür: • ---(MCR<) • ---(MCR>) Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - - - - - Örnek Devre 1 MCRA Devre 2 I 0.0 Devre 3 . . . MCR< I 0.3 Q 4.0 S I 0.4 Q 4.1 . Devre n MCR> Devre n + 1 MCRD MCR işlevselliği MCRA basamağı tarafından aktive edilir. MCR< ve MCR> arasındaki basamaklar (Q4.0, Q4.1 çıkışları) şu şekilde çalıştırılırlar: I0.0 = "1" (MCR, ON): Eğer I0.3 "1" ise, Q4.0 "1" 'e set edilir veya eğer I0.3 "0" ise ve I0.4'ün mantıksal durumu Q4.1'e atanırsa değişmeden kalır. I0.0 = "0" (MCR, OFF): Q4.0, I0.3'un mantıksal durumundan bağımsız olarak değişmeden kalır ve Q4.1, I0.4 'ün mantıksal durumundan bağımsız olarak "0" olur Bir sonraki basamakta, ---(MCRD) komutu MCR'yi deaktive eder. Bu da ---(MCR<) ve ---(MCR>) komutlarını kullanarak daha fazla MCR alanı programlayamayacağınız anlamına gelir. 10-18 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Program Kontrol Komutları 10.13 ---(MCRD) Ana Kontrol Rölesini Deaktive Et MCR İşlevlerinin Kullanımına Dair Önemli Notlar Simge ---(MCRD) Tanım ---(MCRD) (Ana Kontrol Rölesi Alanı Deaktive Et) MCR işlevselliğini deaktive eder. Bu komuttan sonra, MCR alanları programlayamazsınız. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - - - - - Örnek Devre 1 MCRA Devre 2 I 0.0 Devre 3 . . . MCR< I 0.3 Q 4.0 S I 0.4 Q 4.1 . Devre n MCR> Devre n + 1 MCRD MCR işlevselliği MCRA basamağı tarafından aktive edilir. MCR< ve MCR> arasındaki basamaklar (Q4.0, Q4.1 çıkışları) şu şekilde çalıştırılırlar: I0.0 = "1" (MCR, ON): Eğer I0.3 mantıksal "1" ise Q4.0 "1" 'e set edilir ve I0.4'ün mantıksal durumu Q4.1'e atanır. I0.0 = "0" (MCR, OFF): Q4.0, I0.3'un mantıksal durumundan bağımsız olarak değişmeden kalır ve Q4.1, I0.4 'ün mantıksal durumundan bağımsız olarak "0" olur Bir sonraki basamakta, ---(MCRD) komutu MCR'yi deaktive eder. Bu da ---(MCR<) ve ---(MCR>) komutlarını kullanarak daha fazla MCR alanı programlayamayacağınız anlamına gelir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 10-19 Program Kontrol Komutları 10.14 ---(RET) Dön Simge ---( RET ) Tanım RET (Dön) şartlı olarak bloklardan çıkmak için kullanılır. Bu çıkış için, bundan önce bir mantıksal işleme ihtiyaç vardır. Durum Word'ü Şartlı Dön (RLO = "1" ise dön): Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC * - - - 0 0 1 1 0 * RET işlemi, içsel olarak "SAVE; BEC, " sıralamasında gösterilmiştir. Bu aynı zamanda BR bitini de etkiler. Örnek . . . . . . I 0.0 RET Eğer I0.0 "1" ise bloktan çıkılır. 10-20 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11.1 11.1.1 Öteleme Komutları Öteleme Komutlarına Genel Bakış Tanım Öteleme komutlarını IN girişin tüm içeriğini bit bit sağa veya sola taşımak için kullanabilirsiniz (CPU Yazmaçlarına da bakınız). Sola ötelemek, IN girişinin içeriğini 2 üzeri n ile çarpar. (2 n ); sağa ötelemek 2 üzeri n'e böler (2 n ). Örneğin, onluk 3 sayısının ikilik eşdeğerini sola 3 bit ötelerseniz, biriktiricide 24 onluk sayısının ikilik karşılığını elde edersiniz. Eğer 16 onluk sayısının ikilik eşdeğerini sağa 2 bit ötelerseniz, biriktiricide 4 onluk sayısının ikilik karşılığını elde edersiniz. N giriş parametresine verdiğiniz sayı, ötelenecek bit sayısını belirler. Öteleme komutu ile boşalan bit yerleri ya sıfırla doldurulur veya işaret bitinin sinyal durumu (pozitif için 0 ve negatif için 1) ile doldurulur. Son ötelenen bitin sinyal durumu durum word'ünün CC 1 bitine yüklenir. Durum word'ünün CC 0 ve OV bitleri 0'a reset edilir. CC 1 bitini hesaplamak için atla komutlarını kullanabilirsiniz. Aşağıdaki öteleme komutları kullanılabilir: • SHR_I Tamsayıyı Sağa Ötele • SHR_DI Double Tamsayıyı Sağa Ötele • SHL_W Word'ü Sola Ötele • SHR_W Word'ü Sağa Ötele • SHL_DW Double Word'ü Sola Ötele • SHR_DW Double Word'ü Sağa Ötele S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 11-1 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11.1.2 SHR_I Tamsayıyı Sağa Ötele Simge SHR_I EN ENO IN OUT N Parametre EN ENO IN N Veri Tipi BOOL BOOL INT WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT INT I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Ötelenecek değer Ötelenecek bit pozisyonları sayısı Öteleme komutunun sonucu Tanım SHR_I (Tamsayıyı Sağa Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. SHR_I komutu, IN girişinin 0'dan 15'e kadar bitlerini sağa, birer birer ötelemek için kullanılır. 16'dan 31'e kadar olan bitler etkilenmezler. N girişi, ötelenecek bit sayısını belirler. Eğer N 16'dan büyükse, komut N 16 imiş gibi davranır. Solda boşalan bit pozisyonlarına, ilk değerin 15. bitinin (tamsayının işaret biti) mantıksal durumu atanır. Bu da bu bit pozisyonlarına, eğer ilk değer pozitifse "0", negatifse "1" atanacağı anlamına gelir. Öteleme komutunun sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti SHR_D I tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. IN N OUT 15... 1 0 1 0 ...8 7... 1 1 1 1 0 0 0 0 4 yer İşaret biti 1 1 1 1 1 0 1 0 Boşalan yerler, işaret bitinin sinyal durumu ile doldurulur. 11-2 ...0 1 0 1 0 1 1 1 1 0 0 0 0 1 0 1 0 Bu dört bit kaybolur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X - X X X 1 MW0 MW2 EN IN N Örnek SHR_I I 0.0 ENO OUT Q 4.0 S MW4 SHR_I kutusu, eğer I0.0 = "1" ise aktiflenir. MW0, MW2 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sağa ötelenir. Sonuç MW4'e yazılır. Q4.0 set edilir. 11.1.3 SHR_DI Double Tamsayıyı Sağa Ötele Simge SHR_DI EN ENO IN OUT N Parametre Veri Tipi Bellek Alanı Tanım EN ENO IN N OUT BOOL BOOL INT WORD INT I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Girişe imkan ver Çıkışa imkan ver Ötelenecek değer Ötelenecek bit pozisyonları sayısı Öteleme komutu sonucu S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 11-3 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Tanım SHR_DI (Double Tamsayı Sağa Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. SHR_DI komutu, IN girişinin 0'dan 31'e kadar bitlerini sağa, birer birer ötelemek için kullanılır. N girişi, ötelenecek bit sayısını belirler. Eğer N 32'den büyükse, komut N 32 imiş gibi davranır. Solda boşalan bit pozisyonlarına, ilk değerin 31. bitinin (double tamsayının işaret biti) mantıksal durumu atanır. Bu da bu bit pozisyonlarına, eğer ilk değer pozitifse "0", negatifse "1" atanacağı anlamına gelir. Öteleme komutunun sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti SHR_DI tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. Durum Word'ü BR Değeri: X CC 1 CC 0 OV OS OR STA RLO /FC X X X - X X X 1 Örnek SHR_DI I 0.0 MD0 MW4 EN IN N ENO OUT Q 4.0 S MD10 SHR_DI kutusu, eğer I0.0 = "1" ise aktiflenir. MD0, MW4 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sağa ötelenir. Sonuç MD10'a yazılır. Q4.0 set edilir. 11-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11.1.4 SHL_W Word'ü Sola Ötele Simge SHL_W EN ENO IN OUT N Parametre EN ENO IN N Veri Tipi BOOL BOOL WORD WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT WORD I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Ötelenecek değer Ötelenecek bit pozisyonları sayısı Öteleme komutunun sonucu Tanım SHL_W (Word'ü Sola Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. SHL_W komutu, IN girişinin 0'dan 15'e kadar bitlerini sola, birer birer ötelemek için kullanılır. 16'dan 31'e kadar olan bitler etkilenmezler. N girişi, ötelenecek bit sayısını belirler. Eğer N 16'dan büyükse, komut OUT çıkışına "0" yazar ve durum word'ündeki CC 0 ve OV bitlerini "0" yapar. N tane sıfır da sağdan boşalan bit pozisyonlarına yerleştirilir. Öteleme komutunun sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti SHL_W tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. 15... 0 0 0 0 IN ...8 7... 1 1 1 1 0 1 0 1 N OUT ...0 0 1 0 1 6 yer 0 0 0 0 1 1 1 1 0 1 0 1 0 1 Bu altı bit kaybolur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 0 1 0 0 0 0 0 0 Boşalan bitler sıfırla doldurulurlar. 11-5 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Durum Word'ü BR Değeri: X CC 1 CC 0 OV OS OR STA RLO /FC X X X - X X X 1 Örnek SHL_W I 0.0 MW0 MW2 EN IN N ENO OUT Q 4.0 S MW4 SHL_W kutusu, eğer I0.0 = "1" ise aktiflenir. MW0, MW2 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sola ötelenir. Sonuç MW4'e yazılır. Q4.0 set edilir. 11.1.5 SHR_W Word'ü Sağa Ötele Simge SHR_W EN ENO IN OUT N 11-6 Parametre EN ENO IN N Veri Tipi BOOL BOOL WORD WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT WORD I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Ötelenecek değer Ötelenecek bit pozisyonları sayısı Öteleme komutunun sonucu S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Tanım SHR_W (Word'ü Sağa Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. SHR_W komutu, IN girişinin 0'dan 15'e kadar bitlerini sağa, birer birer ötelemek için kullanılır. 16'dan 31'e kadar olan bitler etkilenmezler. N girişi, ötelenecek bit sayısını belirler. Eğer N 16'dan büyükse, komut OUT çıkışına "0" yazar ve durum word'ündeki CC 0 ve OV bitlerini "0" yapar. N tane sıfır da soldan boşalan bit pozisyonlarına yerleştirilir. Öteleme komutunun sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti SHR_W tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X - X X X 1 Örnek I 0.0 MW0 MW2 SHR_W EN IN N ENO OUT Q 4.0 S MW4 SHR_W kutusu, eğer I0.0 = "1" ise aktiflenir. MW0, MW2 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sağa ötelenir. Sonuç MW4'e yazılır. Q4.0 set edilir. 11.1.6 SHL_DW Double Word'ü Sola Ötele Simge SHL_DW EN ENO IN OUT N Parametre EN ENO IN N Veri Tipi BOOL BOOL DWORD WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Ötelenecek değer Ötelenecek bit pozisyonları sayısı OUT DWORD I, Q, M, L, D Öteleme komutunun double word sonucu S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 11-7 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Tanım SHL_DW (Double Word'ü Sola Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. SHL_DW komutu, IN girişinin 0'dan 31'e kadar bitlerini sola, birer birer ötelemek için kullanılır. N girişi, ötelenecek bit sayısını belirler. Eğer N 32'den büyükse, komut OUT çıkışına "0" yazar ve durum word'ündeki CC 0 ve OV bitlerini "0" yapar. N tane sıfır da sağdan boşalan bit pozisyonlarına yerleştirilir. Öteleme komutunun double word sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti SHL_DW tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. Durum Word'ü Değeri: BR X CC 1 X CC 0 X OV X OS - OR X STA X RLO X /FC 1 Örnek SHL_DW I 0.0 MD0 MW4 EN IN N ENO OUT Q 4.0 S MD10 SHL_DW kutusu, eğer I0.0 = "1" ise aktiflenir. MD0, MW4 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sola ötelenir. Sonuç MD10'a yazılır. Q4.0 set edilir. 11-8 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11.1.7 SHR_DW Double Word'ü Sağa Ötele Simge SHR_DW EN ENO IN OUT N Parametre EN ENO IN N Veri Tipi BOOL BOOL DWORD WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DWORD I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Ötelenecek değer Ötelenecek bit pozisyonları sayısı Öteleme komutunun double word sonucu Tanım SHR_DW (Double Word'ü Sağa Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. SHR_DW komutu, IN girişinin 0'dan 31'e kadar bitlerini sağa, birer birer ötelemek için kullanılır. N girişi, ötelenecek bit sayısını belirler. Eğer N 32'den büyükse, komut OUT çıkışına "0" yazar ve durum word'ündeki CC 0 ve OV bitlerini "0" yapar. N tane sıfır da soldan boşalan bit pozisyonlarına yerleştirilir. Öteleme komutunun double word sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti SHR_DW tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. IN 31... 1111 1111 0101 N OUT ...16 15... 0101 1010 1010 1111 ...0 1111 3 yer 0001 1111 1110 1010 1011 Boşalan bitler sıfırla doldurulurlar. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 0101 0101 1111 111 Bu üç bit kaybolur. 11-9 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC X X X X - X X X 1 Örnek SHR_DW I 0.0 MD0 MW4 EN IN N ENO OUT Q 4.0 S MD10 SHR_DW kutusu, eğer I0.0 = "1" ise aktiflenir. MD0, MW4 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sağa ötelenir. Sonuç MD10'a yazılır. Q4.0 set edilir. 11-10 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11.2 Dönel Öteleme (Rotate) Komutları 11.2.1 Dönel Öteleme Komutlarına Genel Bakış Tanım Dönel ötele komutlarını IN girişin tüm içeriğini bit bit sağa veya sola ötelemek için kullanabilirsiniz. Boşalan bitler, IN girişinden dışarı ötelenen bitlerin sinyal durumları ile doldurulurlar. N giriş parametresine verdiğiniz sayı, dönel ötelenecek bit sayısını belirler. Komuta bağlı olarak, dönel öteleme durum word'ünün CC 1 üzerinden gerçekleşir. Durum word'ünün CC 0 biti 0 yapılır. Aşağıdaki dönel öteleme komutları kullanılabilir: 11.2.2 • ROL_DW Double Word'ü Sola Dönel Ötele • ROR_DW Double Word'ü Sağa Dönel Ötele ROL_DW Double Word'ü Sola Dönel Ötele Simge ROL_DW EN ENO IN OUT N Parametre EN ENO IN N Veri Tipi BOOL BOOL DWORD WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DWORD I, Q, M, L, D S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tanım Girişe imkan ver Çıkışa imkan ver Dönel ötelenecek değer Dönel ötelenecek bit pozisyonları sayısı Dönel öteleme komutunun double word sonucu 11-11 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Tanım ROL_DW (Double Word'ü Sola Dönel Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. ROL_DW komutu, IN girişinin tüm içeriğini sola dönel ötelemek için kullanılır. N girişi, dönel ötelenecek bit sayısını belirler. Eğer N 32'den büyükse, double word giriş IN ((N-1) modulo 32)+1 pozisyon kadar dönel ötelenir. Boşalan bit pozisyonlarına, soldan dışarı ötelenen bitlerin mantıksal durumları atanır. Dönel öteleme komutunun double word sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti ROL_DW tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. 31... 1111 IN 0000 1010 ...16 15... 1010 0000 0000 ...0 1111 3 yer N OUT 1111 111 1000 0101 0101 0000 0111 1000 Dışarı ötelenen üç bütün sinyal durumları, boşalan yerlere yerleştirilir. 0111 1111 Bu üç bit kaybolur. Durum Word'ü Değeri: BR X CC 1 X CC 0 X OV X OS - OR X STA X RLO X /FC 1 Örnek ROL_DW I 0.0 MD0 MW4 EN IN N ENO OUT Q 4.0 S MD10 ROL_DW kutusu, eğer I0.0 = "1" ise aktiflenir. MD0, MW4 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sola dönel ötelenir. Sonuç MD10'a yazılır. Q4.0 set edilir. 11-12 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları 11.2.3 ROR_DW Double Word'ü Sağa Dönel Ötele Simge ROR_DW EN ENO IN OUT N Parametre EN ENO IN N Veri Tipi BOOL BOOL DWORD WORD Bellek Alanı I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D OUT DWORD I, Q, M, L, D Tanım Girişe imkan ver Çıkışa imkan ver Dönel ötelenecek değer Dönel ötelenecek bit pozisyonları sayısı Dönel öteleme komutunun double word sonucu Tanım ROR_DW (Double Word'ü Sağa Dönel Ötele) İmkan ver (EN) girişinde mantıksal bir "1" ile aktiflenir. ROR_DW komutu, IN girişinin tüm içeriğini sağa dönel ötelemek için kullanılır. N girişi, dönel ötelenecek bit sayısını belirler. Eğer N 32'den büyükse, double word giriş IN ((N-1) modulo 32)+1 pozisyon kadar dönel ötelenir. Boşalan bit pozisyonlarına, soldan dışarı ötelenen bitlerin mantıksal durumları atanır. Dönel öteleme komutunun double word sonucu OUT çıkışından okunabilir. Eğer N = 0 değilse, CC 0 biti ve OV biti ROR_DW tarafından "0" yapılır. ENO, EN ile aynı sinyal durumundadır. IN 31... 1010 1010 0000 N OUT ...16 15... 1111 0000 1111 0101 ...0 0101 0001 1110 1010 3 yer 1011 0101 0100 0001 1110 Dışarı ötelenen üç bütün sinyal durumları, boşalan yerlere yerleştirilir. Durum Word'ü Değeri: BR X CC 1 X CC 0 X OV X OS - S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 OR X STA X RLO X /FC 1 11-13 Öteleme (Shift) Ve Dönel Öteleme (Rotate) Komutları Örnek ROR_DW I 0.0 MD0 MW4 EN IN N ENO OUT Q 4.0 S MD10 ROR_DW kutusu, eğer I0.0 = "1" ise aktiflenir. MD0, MW4 tarafından belirlenen bit sayısı kadar bitle doldurulur ve sağa dönel ötelenir. Sonuç MD10'a yazılır. Q4.0 set edilir. 11-14 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Durumsal Bit Komutları 12 Durumsal Bit (Status Bit) Komutları 12.1 Durumsal Bit Komutlarına Genel Bakış Tanım Durumsal bit komutları, durum word'ünün bitleri ile çalışan bitsel mantık komutlarıdır. Bu komutların her biri, durum word'ündeki bir veya daha çok biti ile gösterilen aşağıdaki şartlara tepki verirler: • İkilik Sonuç (Binary Result) bitinin (BR ---I I---) set edilmesi (1 sinyal durumu). • Taşma (Overflow, OV ---I I---) veya Saklanmış Taşma (Stored Overflow, OS ---I I---) içeren bir matematiksel işlevin varlığı. • Matematiksel bir işlevin sonucunun geçersiz (unordered, UO ---I I---) oluşu. • Matematiksel bir işlevin sonucu, 0 ile aşağıdaki şekillerde ilişkilidir: == 0, <> 0, > 0, < 0, >= 0, <= 0. Durum biti komutları seri bağlı iken, kendi sinyal durumunun sonucunu önceki mantıksal işlem sonucu ile Ve doğruluk tablosuna göre birleştirir. Durum biti komutları paralel bağlı iken, kendi sonucunu önceki RLO ile Veya doğruluk tablosuna göre birleştirir. Durum Word'ü Durum Word'ü CPU'nuzun belleğindeki, bit ve word mantıksal komutlarının adreslerinde başvurabileceğiniz bitleri içeren bir yazmaçtır. Durum word'ü yapısı: Durum word'ünün bitlerini şu şekillerde elde edebilirsiniz: • Tamsayı Matematiksel İşlevleri İle • Gerçel Sayı İşlevleri İle. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 12-1 Durumsal Bit Komutları 12.2 OV ---| |--- İstisna Biti Taşması Simge OV OV / veya negatifleme Tanım OV ---| |--- (İstisna Biti Taşması) veya OV ---| / |--- (Negatiflenmiş İstisna Biti Taşması) kontakt simgeleri, son çalıştırılan matematiksel işlevdeki taşmayı algılamak için kullanılırlar. Bu da işlev çalıştırıldıktan sonra, komutun sonucunun, izin verilen negatif veya pozitif sınırın dışında olduğu anlamına gelir. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü BR - Değeri: CC 1 - CC 0 - OV - OS - OR X STA X RLO X /FC 1 Örnek Devre 1 I 0.0 IW0 IW2 SUB_I EN ENO IN1 IN2 OUT MW10 Devre 2 OV I 0.1 I 0.2 Q 4.0 S I 0.2 Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer "IW0 -IW2" matematiksel işlevinin sonucu bir tamsayı için geçerli aralığın dışında kalırsa OV biti set edilir. OV'de okunan sinyal seviyesi "1" ise OV'de okunan sinyal durumu "1" ve devre 2'nin RLO'su "1" ise, Q4.0 set edilir. Not OV ile okuma sadece iki ayrı devre varlığı nedeniyle gereklidir. Aksi halde matematiksel işlevin, sonucun izin verilen aralık dışında olması durumunda "0" olan ENO çıkışını almak mümkündür 12-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Durumsal Bit Komutları 12.3 OS ---| |--- İstisna Biti Taşması Kaydedildi Simge OS OS / veya negatifleme Tanım OS ---| |--- (İstisna Biti Taşması Kaydedildi) veya OS ---| / |--- (Negatiflenmiş İstisna Biti Taşması Kaydedildi) kontakt simgeleri, bir matematiksel işlevdeki taşmayı algılamak ve saklamak için kullanılırlar. Eğer komutun sonucu bir tamsayı için geçerli negatif veya pozitif aralığın dışında kalırsa, durum word'ünün OS biti set edilir. Sonraki matematiksel işlevler için yeniden yazılan OV bitinin aksine, OS bir taşma oluşunca saklar. Bloktan çıkılana kadar OS set edilmiş olarak kalır. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 12-3 Durumsal Bit Komutları Örnek Devre 1 I 0.0 IW0 IW2 MUL_I EN ENO IN1 IN2 OUT MW10 Devre 2 I 0.01 IW0 IW2 ADD_I EN ENO IN1 IN2 OUT MW12 Devre 3 OS Q 4.0 S MUL_I kutusu, eğer I0.0'daki sinyal durumu "1" ise aktiflenir. ADD_I kutusu, eğer I0.1 = "1" ise aktiflenir. Eğer matematiksel işlevlerden birinin sonucu bir tamsayı için geçerli aralığın dışında kalırsa, durum word'ünün OS biti "1" 'e set edilir. Eğer OS okuması mantıksal "1" ise Q4.0 set edilir. Not OS ile okuma sadece iki ayrı devre varlığı nedeniyle gereklidir. Aksi halde ilk matematiksel işlevin ENO çıkışını almak ve ikinci devrenin EN çıkışı ile bağlamak mümkündür (katlı bağlama). 12-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Durumsal Bit Komutları 12.4 UO ---| |--- Geçersiz İstisna Biti Simge UO UO / veya negatifleme Tanım UO ---| |--- (Geçersiz İstisna Biti) veya UO ---| / |--- (Negatiflenmiş Geçersiz İstisna Biti) kontakt simgeleri, gerçel sayılar üzerinde çalışan matematiksel işlevlerde geçersizlikleri algılamak için kullanılır (yani, matematiksel işlevdeki bu değerlerden herhangi birinin geçersiz bir gerçel sayı olup olmadığı). Gerçel sayılarla çalışan bir matematiksel işlevin sonucu (UO) geçersizse, okunan sinyal durumu "1" olur. CC 1 ve CC 0'daki mantıksal işlem "geçersiz" gösteriyorsa, sinyal durumu okuma sonucu "0" olur. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Örnek I 0.0 ID0 ID4 UO DIV_R EN ENO IN1 IN2 OUT Q 4.0 S MD10 Q 4.1 S Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer ID0 veya ID4'ün değeri geçersiz bir gerçel sayı ise, matematiksel işlev geçersizdir. Eğer EN sinyal durumu "1" ise (aktive edilmiş) ve DIV_R işlevinin çalışması sırasında bir hata oluşursa, ENO sinyal durumu "0" olur. DIV_R çalıştırılmış ancak değerlerden biri geçersiz bir gerçel sayı ise Q4.1 çıkışı set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 12-5 Durumsal Bit Komutları 12.5 BR ---| |--- İstisna Biti İkilik Sonucu Simge BR BR / veya negatifleme Tanım BR ---| |--- (İstisna Biti BR Belleği) veya BR ---| / |--- (Negatiflenmiş İstisna Biti BR Belleği) kontakt simgeleri, durum word'ündeki BR bitini test etmek için kullanılır. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. BR biti den word işlemeden bit işlemeye geçişte kullanılır. Durum Word'ü BR Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - - X X X 1 Örnek I 0.0 BR Q 4.0 S I 0.2 I0.0 is "1" veya I0.2 "0" ise ve bu RLO'ya ek olarak BR bitinin mantıksal durumu "1" ise Q4.0 set edilir. 12-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Durumsal Bit Komutları 12.6 ==0 ---| |--- Sonuç Biti Sıfıra Eşit Simge ==0 ==0 / veya negatifleme Tanım ==0 ---| |--- (Sonuç Biti Eşittir 0) veya ==0 ---| / |--- (Negatiflenmiş Sonuç Biti Eşittir 0) kontakt simgeleri, matematiksel bir işlevin sonucunun "0" olduğunu algılamak için kullanılır. Komutlar, sonucun "0" olup olmadığını anlamak için durum word'ündeki CC 1 ve CC 0 komut kod bitlerini okur. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü Değeri: BR - CC 1 - CC 0 - OV - OS - OR X STA X RLO X /FC 1 Örnekler I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 ==0 Q 4.0 S MW10 Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer IW0'ın değeri IW2'nin değerine işitse "IW0 -IW2" matematiksel işlevinin sonucu "0" olur. İşlev doğru olarak çalıştırılırsa ve sonuç "0" ise, Q4.0 set edilir. I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 ==0 Q 4.0 S MW10 İşlev doğru olarak çalıştırılırsa ve sonuç "0" değilse, Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 12-7 Durumsal Bit Komutları 12.7 <>0 ---| |--- Sonuç Biti Sıfırdan Farklı Simge <>0 veya negatifleme <>0 / Tanım ==0 ---| |--- (Sonuç Biti Eşit Değildir 0) veya ==0 ---| / |--- (Negatiflenmiş Sonuç Biti Eşit Değildir 0) kontakt simgeleri, matematiksel bir işlevin sonucunun "0" olmadığını algılamak için kullanılır. Komutlar, sonucun "0" olup olmadığını anlamak için durum word'ündeki CC 1 ve CC 0 komut kod bitlerini okur. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü Değeri: BR - CC 1 - CC 0 - OV - OS - OR X STA X RLO X /FC 1 Örnekler I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 <>0 Q 4.0 S MW10 Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer IW0'ın değeri IW2'nin değerinden farklıysa "IW0 -IW2" matematiksel işlevinin sonucu "0" 'dan farklı olur. İşlev doğru olarak çalıştırılırsa ve sonuç "0" değilse, Q4.0 set edilir. I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 <>0 Q 4.0 S MW10 İşlev doğru olarak çalıştırılırsa ve sonuç "0" ise, Q4.0 set edilir. 12-8 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Durumsal Bit Komutları 12.8 >0 ---| |--- Sonuç Biti Sıfırdan Büyük Simge >0 >0 / veya negatifleme Tanım >0 ---| |--- (Sonuç Biti 0'dan Büyük) veya >0 ---| / |--- (Negatiflenmiş Sonuç Biti 0'dan Büyük) kontakt simgeleri, matematiksel bir işlevin sonucunun "0" 'dan büyük olduğunu algılamak için kullanılır. Komutlar, sonucun "0" 'dan büyük olup olmadığını anlamak için durum word'ündeki CC 1 ve CC 0 komut kod bitlerini okur. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü BR Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - - X X X 1 Örnek I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 >0 Q 4.0 S MW10 Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer IW0'ın değeri IW2'nin değerinden büyükse "IW0 -IW2" matematiksel işlevinin sonucu "0" 'dan büyük olur. İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan büyük ise, Q4.0 set edilir. I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 >0 Q 4.0 S MW10 İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan büyük değilse, Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 12-9 Durumsal Bit Komutları 12.9 <0 ---| |--- Sonuç Biti Sıfırdan Küçük Simge <0 veya negatifleme <0 / Tanım <0 ---| |--- (Sonuç Biti 0'dan Küçük) veya <0 ---| / |--- (Negatiflenmiş Sonuç Biti 0'dan Küçük) kontakt simgeleri, matematiksel bir işlevin sonucunun "0" 'dan küçük olduğunu algılamak için kullanılır. Komutlar, sonucun "0" olup olmadığını anlamak için durum word'ündeki CC 1 ve CC 0 komut kod bitlerini okur. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü Değeri: BR - CC 1 - CC 0 - OV - OS - OR X STA X RLO X /FC 1 Örnek I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 <0 Q 4.0 S MW10 Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer IW0'ın değeri IW2'nin değerinden küçükse "IW0 -IW2" matematiksel işlevinin sonucu "0" 'dan küçük olur. İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan küçük ise, Q4.0 set edilir. I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 <0 Q 4.0 S MW10 İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan küçük değilse, Q4.0 set edilir. 12-10 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Durumsal Bit Komutları 12.10 >=0 ---| |--- Sonuç Biti Sıfırdan Büyük veya Eşit Simge >=0 >=0 / veya negatifleme Tanım >=0 ---| |--- (Sonuç Biti Büyük Eşit 0) veya >=0 ---| / |--- (Negatiflenmiş Sonuç Biti Büyük Eşit 0) kontakt simgeleri, matematiksel bir işlevin sonucunun "0" 'dan büyük veya eşit olduğunu algılamak için kullanılır. Komutlar, sonucun "0" 'dan büyük olup olmadığını anlamak için durum word'ündeki CC 1 ve CC 0 komut kod bitlerini okur. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Örnek I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 >=0 Q 4.0 S MW10 Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer IW0'ın değeri IW2'nin değerinden büyük veya eşitse "IW0 -IW2" matematiksel işlevinin sonucu "0" 'dan büyük veya eşit olur. İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan büyük veya eşit ise, Q4.0 set edilir. I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 >=0 Q 4.0 S MW10 İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan büyük veya eşit değilse, Q4.0 set edilir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 12-11 Durumsal Bit Komutları 12.11 <=0 ---| |--- Sonuç Biti Sıfırdan Küçük veya Eşit Simge <=0 <=0 / veya negatifleme Tanım <=0 ---| |--- (Sonuç Biti Küçük Eşit 0) veya <=0 ---| / |--- (Negatiflenmiş Sonuç Biti Küçük Eşit 0) kontakt simgeleri, matematiksel bir işlevin sonucunun "0" 'dan küçük veya eşit olduğunu algılamak için kullanılır. Komutlar, sonucun "0" olup olmadığını anlamak için durum word'ündeki CC 1 ve CC 0 komut kod bitlerini okur. Seri olarak kullanıldığında, okumanın sonucu RLO'ya AND ile, paralel olarak kullanıldığında RLO'ya OR ile bağlıdır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Örnekler I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 <=0 Q 4.0 S MW10 Kutu, eğer I0.0 sinyal durumu "1" ise aktiflenir. Eğer IW0'ın değeri IW2'nin değerinden küçük veya eşitse "IW0 -IW2" matematiksel işlevinin sonucu "0" 'dan küçük veya eşit olur. İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan küçük veya eşit ise, Q4.0 set edilir. I 0.0 IW0 IW2 SUB_I ENO EN IN1 OUT IN2 <=0 Q 4.0 S MW10 İşlev doğru olarak çalıştırılırsa ve sonuç "0" 'dan küçük veya eşit değilse, Q4.0 set edilir. 12-12 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13 Zamanlayıcı (Timer) Komutları 13.1 Zamanlayıcı Komutlarına Genel Bakış Tanım Doğru zamanı kurma ve seçme hakkında bilgiyi "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcı Bileşenleri" altında bulabilirsiniz. Aşağıdaki zamanlayıcı komutları kullanılabilir: • S_PULSE Vurumlu (Pulse) S5 Zamanlayıcı • S_PEXT Ek Vurumlu (Extended Pulse) S5 Zamanlayıcı • S_ODT Gecikmeli (On-Delay) S5 Zamanlayıcı • S_ODTS Hafızalı Gecikmeli (Retentive On-Delay) S5 Zamanlayıcı • S_OFFDT Gecikmesiz (Off-Delay) S5 Zamanlayıcı • ---( SP ) Vurum Zamanlayıcı Bobin (Pulse Timer Coil) • ---( SE ) Ek Vurum Zamanlayıcı Bobin (Extended Pulse Timer Coil) • ---( SD ) Gecikmeli Zamanlayıcı Bobini (On-Delay Timer Coil) • ---( SS ) Hafızalı Gecikmeli Zamanlayıcı Bobin (Retentive On-Delay Timer Coil) • ---( SA ) Gecikmesiz Zamanlayıcı Bobin (Off-Delay Timer Coil) S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-1 Zamanlayıcı Komutları 13.2 Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcının Bileşenleri Bellek Alanı Zamanlayıcılar, CPU'nuzun belleğinde kendilerine ayrılmış bir alana sahiptirler. Bu bellek alanı, her zamanlayıcı adresi için bir 16-bit word ayırır. Merdiven mantık komut seti 256 zamanlayıcı destekler. Mümkün olan zamanlayıcı word'leri sayısı için CPU'nuzun teknik bilgisine başvurun. Aşağıdaki işlevler, zamanlayıcı bellek bölgesine erişime sahiptirler: • Zamanlayıcı komutları • Saat zamanlama açısından zamanlayıcı word'lerini güncellemek. RUN (çalışma) modunda CPU'nuzun bu işlevi, zaman tabanı ile belirtilen aralıklarla, verilen zaman değerini sıfıra ulaşana kadar bir birim azaltır. Zaman değeri Zamanlayıcı word'ünün 0'dan 9'a kadar olan bitleri ikilik zaman değerini içerir. Zaman değeri birimlerin adetini belirler. Zaman güncellemesi, zaman tabanı ile belirtilen aralıklarla, zaman değerini bir birim azaltır. Azaltma, zaman değeri sıfıra eşit olana kadar devam eder. Bir zaman değerini biriktirici 1'in alçak word'üne ikilik, onaltılık veya ikilik kodlanmış onluk (BCD) formatında yükleyebilirsiniz. Aşağıdaki formatlardan herhangi birini kullanarak bir zaman değerini ön-yükleyebilirsiniz: • W#16#wxyz - Burada w = zaman tabanı (yani, zaman aralığı veya çözünürlük) - Burada xyz = ikilik kodlanmış onluk (BCD) formatında zaman değeri • S5T#aH_bM_cS_dMS - Burada H = saat, M = dakika, S = saniye ve MS = milisaniye; a, b, c, d kullanıcı tarafından tanımlanır. - Zaman tabanı otomatik olarak seçilir ve değer o tabandaki bir sonraki en küçük sayıya yuvarlanır. Girebileceğiniz en büyük zaman değeri 9,990 saniye veya 2H_46M_30S'dir. S5TIME#4S = 4 saniye s5t#2h_15m = 2 saat ve 15 dakika S5T#1H_12M_18S = 1 saat, 12 dakika ve 18 saniye Zaman Tabanı 13-2 Zamanlayıcı word'ünün 12. ve 13. bitleri ikilik olarak zaman tabanını içerir. Zaman tabanı, zaman değerinin bir birim azaltılacağı aralığı tanımlar. En küçük zaman tabanı 10 ms, en büyüğü 10 s'dir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları Zaman Tabanı 10 ms 100 ms 1s 10 s Zaman Tabanı İçin İkilik Kod 00 01 10 11 2h46m30s'yi geçen kabul edilmez. Çözünürlüğü tanım sınırlarına göre çok büyük olan (örneğin, 2h10ms) değer, geçerli bir çözünürlüğe indirgenir. S5TIME için genel format tanım aralığı ve çözünürlük açısından aşağıdaki sınırları içerir: Çözünürlük 0.01 saniye 0.1 saniye 1 saniye 10 saniye Tanım Aralığı 10MS - 9S_990MS 100MS - 1M_39S_900MS 1S - 16M_39S 10S - 2H_46M_30S Zaman Hücresi İçindeki Bit Konfigürasyonu Bir zamanlayıcı başlatıldığında, zamanlayıcı hücresi içeriği zaman değeri olarak kullanılır. Zamanlayıcı hücresinin 0'dan 11'e kadar olan bitleri, zaman değerini ikilik kodlanmış onluk olarak tutarlar. (BCD formatı: her dört bitlik set, bir onluk değerin ikilik kodunu içerir). 12. ve 13. bitler ikilik olarak zaman tabanını tutar. Aşağıdaki şekil, zaman değeri olarak 127 ve zaman tabanı olarak 1 saniye ile doldurulmuş bir zamanlayıcı hücresinin içeriğini gösterir: 15... x ...8 7... x 1 0 0 0 0 1 Zaman Tabanı 1 saniye 1 0 ...0 0 1 0 0 2 1 1 1 7 BCD olarak zaman değeri (0'dan 999'a) İlişiksiz Bu bitler zamanlayıcı başlatıldığında gözardı edilirler. Zaman ve Zaman Tabanını Okuma Her bir zamanlayıcı kutusu, bir word yerleşimi işaretleyebileceğiniz, BI ve BCD olmak üzere iki adet çıkış sunar. BI çıkışı, zaman değerini ikilik formatta sağlar. BCD çıkışı, zaman tabanı ve zaman değerini BCD formatında sağlar. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-3 Zamanlayıcı Komutları Doğru Zamanlayıcı Seçimi Bu genel bakış, size zamanlama işiniz için doğru zamanlayıcıyı seçmenizde yardımcı olmak içindir. I 0.0 Q 4.0 S_PULSE t Q 4.0 S_PEXT t Q 4.0 S_ODT t Q 4.0 S_ODTS t Q 4.0 S_OFFDT Zamanlayıcı Tanım S_PULSE Vurumlu zamanlayıcı Çıkış sinyalinin 1'de kaldığı en uzun süre, programlanmış t zaman değeri kadardır. Eğer giriş sinyali 0'a değişirse, çıkış sinyali 1'de daha kısa süreyle kalır. S_PEXT Çıkış sinyali, programlanmış zaman süresince, giriş sinyalinin 1'de Ek vurumlu zamanlayıcı ne kadar kaldığından bağımsız olarak 1 olarak kalır. S_ODT Gecikmeli zamanlayıcı Çıkış sinyali, sadece programlanmış zaman dolduğunda ve giriş sinyali hala 1 ise 1'e değişir. S_ODTS Hafızalı gecikmeli zamanlayıcı Çıkış sinyali, sadece programlanmış zaman dolduğunda, giriş sinyalinin 1'de ne kadar kaldığından bağımsız olarak 0'dan 1'e değişir. Çıkış sinyali, giriş sinyali 1'e değişirse veya zamanlayıcı çalıştığı S_OFFDT sürece 1'e değişir. Süre, giriş sinyali 1'den 0'a değiştiğinde Gecikmesiz zamanlayıcı başlatılır. 13-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.3 S_PULSE Vurumlu (Pulse) S5 Zamanlayıcı Simge İngilizce Almanca T no. T-Nr. S_PULSE S_IMPULS S TV R Q S BI TW R BCD Q DUAL DEZ Parametre İngilizce T no. Parametre Almanca T-Nr. Veri Tipi Bellek Alanı Tanım TIMER T S TV R BI S TW R DUAL BOOL S5TIME BOOL WORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır Girişi başlat İlk zaman değeri Girişi resetle Kalan zaman değeri, tamsayı formatında Kalan zaman değeri, BCD formatında Zamanlayıcı durumu Tanım S_PULSE (Vurumlu S5 Zamanlayıcı) başla (S) girişinde pozitif ayrıt olduğunda belirlenen zamanlayıcıyı çalıştırır. Bir zamanlayıcı için, bir sinyal değişimi her zaman gereklidir. Zamanlayıcı, S girişindeki sinyal durumu "1" olduğu sürece çalışır, ancak en uzun süre, TV girişindeki zaman değeri ile belirlenir. Zamanlayıcı çalıştığı sürece, Q çıkışındaki sinyal durumu "1" olur. S girişinde zaman aralığı dolmadan "1" 'den "0" 'a bir değişim olursa, zamanlayıcı durdurulur. Bu durumda Q çıkışındaki sinyal durumu "0" olur. Zamanlayıcı çalışırken zamanlayıcının reset (R) girişi "0" 'dan "1" 'e değişirse, zamanlayıcı resetlenir. Aynı zamanda, o andaki zaman ve zaman tabanı da sıfıra set edilir. Zamanlayıcı çalışmıyorken zamanlayıcının R girişindeki mantıksal "1" hiçbir etki yaratmaz. O andaki zaman değeri, BI ve BCD çıkışlarından okunabilir. BI zaman değeri ikilik, BCD değeri BCD kodlanmıştır. O andaki zaman değeri ilk TV değeri eksi zamanlayıcın başlatıldığı andan beri geçen zaman kadardır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-5 Zamanlayıcı Komutları Zamanlama Şeması Vurumlu zamanlayıcı karakteristikleri: t t t S girişindeki RLO R girişindeki RLO Zamanlayıcı çalışıyor "1" için okuma "0" için okuma t = Programlanmış zaman Durum Word'ü Değeri: BR - CC 1 - CC 0 - OV - OS - OR X STA X RLO X Örnek I 0.0 I 0.1 S5TIME#2S T5 S_PULSE S Q TV R Q 4.0 BI BCD Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Zamanlayıcı, belirlenmiş olan iki saniye (2 s) süresinde, I0.0 "1" olduğu sürece çalışmaya devam edecektir. Eğer I0.0 girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "1" 'den "0" 'a değişirse, zamanlayıcı durdurulur. Eğer I0.1 girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "0" 'dan "1" 'e değişirse, zamanlayıcı resetlenir. Q4.0 çıkışı, zamanlayıcı çalıştığı sürece mantıksal "1" ve zaman dolduğunda veya resetlendiğinde "0" olur. 13-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.4 S_PEXT Ek Vurumlu (Extended Pulse) S5 Zamanlayıcı Simge İngilizce Almanca T no. T-Nr. S_PEXT S_VIMP S TV R Q S BI TW Q R BCD DUAL DEZ Parametre İngilizce T no. Parametre Almanca T-Nr. Veri Tipi Bellek Alanı Tanım TIMER T S TV R BI S TW R DUAL BOOL S5TIME BOOL WORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır Girişi başlat İlk zaman değeri Girişi resetle Kalan zaman değeri, tamsayı formatında Kalan zaman değeri, BCD formatında Zamanlayıcı durumu Tanım S_PEXT (Ek Vurumlu S5 Zamanlayıcı) başla (S) girişinde pozitif ayrıt olduğunda belirlenen zamanlayıcıyı çalıştırır. Bir zamanlayıcı için, bir sinyal değişimi her zaman gereklidir. Zamanlayıcı, TV girişinde verilmiş olan ön değer zamanı süresince, S girişi zaman dolmadan "0" 'a değişse bile çalışır. Zamanlayıcı çalıştığı sürece, Q çıkışındaki sinyal durumu "1" olur. Eğer zamanlayıcı çalışırken, S girişindeki sinyal durumu "0" 'dan "1" 'e değişirse, zamanlayıcı ön yüklenmiş zaman değeriyle tekrar çalıştırılır (tekrar tetiklenir). Zamanlayıcı çalışırken reset (R) girişi "0" 'dan "1" 'e değişirse, zamanlayıcı resetlenir. O andaki zaman ve zaman tabanı sıfıra set edilir. O andaki zaman değeri, BI ve BCD çıkışlarından okunabilir. BI zaman değeri ikilik, BCD değeri BCD kodlanmıştır. O andaki zaman değeri ilk TV değeri eksi zamanlayıcın başlatıldığı andan beri geçen zaman kadardır. "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcının Bileşenleri" 'ne de bakınız. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-7 Zamanlayıcı Komutları Zamanlama Şeması Ek vurumlu zamanlayıcı karakteristikleri: t t t t S girişindeki RLO R girişindeki RLO Zamanlayıcı çalışıyor "1" için okuma "0" için okuma t = Programlanmış zaman Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Örnek T5 S_PEXT I 0.0 S I 0.1 S5TIME#2S TV R Q 4.0 Q BI BCD Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Zamanlayıcı, belirlenmiş olan iki saniye (2 s) süresinde, S girişindeki negatif ayrıttan etkilenmeksizin çalışmaya devam edecektir. Eğer I0.0 girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "0" 'den "1" 'a değişirse, zamanlayıcı tekrar tetiklenir. Q4.0 çıkışı, zamanlayıcı çalıştığı sürece mantıksal "1" olur. 13-8 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.5 S_ODT Gecikmeli (On-Delay) S5 Zamanlayıcı Simge İngilizce Almanca T no. T-Nr. S_ODT S_EVERZ S TV R Q S BI TW R BCD Q DUAL DEZ Parametre İngilizce T no. Parametre Almanca T-Nr. Veri Tipi Bellek Alanı Tanım TIMER T S TV R BI S TW R DUAL BOOL S5TIME BOOL WORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır Girişi başlat İlk zaman değeri Girişi resetle Kalan zaman değeri, tamsayı formatı Kalan zaman değeri, BCD formatında Zamanlayıcı durumu Tanım S_ODT (Gecikmeli S5 Zamanlayıcı) başla (S) girişinde pozitif ayrıt olduğunda belirlenen zamanlayıcıyı çalıştırır. Bir zamanlayıcı için, bir sinyal değişimi her zaman gereklidir. Zamanlayıcı, S girişindeki sinyal durumu pozitif olduğu sürece, TV girişinde belirlenen zaman aralığında çalışır. Zamanlayıcı hatasız bittiğinde, Q çıkışındaki sinyal durumu "1" ve S girişinde hala "1" olur. S girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "1" 'dan "0" 'e değişirse, zamanlayıcı durdurulur. Bu durumda Q çıkışındaki sinyal durumu "0" olur. Zamanlayıcı çalışırken reset (R) girişi "0" 'dan "1" 'e değişirse, zamanlayıcı resetlenir. O andaki zaman ve zaman tabanı sıfıra set edilir. O zaman Q çıkışındaki sinyal durumu "0" olur. Zamanlayıcı çalışmazken, R girişinde mantıksal "1" varsa ve S girişindeki RLO "1" ise de resetlenir. O andaki zaman değeri, BI ve BCD çıkışlarından okunabilir. BI zaman değeri ikilik, BCD değeri BCD kodlanmıştır. O andaki zaman değeri ilk TV değeri eksi zamanlayıcın başlatıldığı andan beri geçen zaman kadardır. "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcının Bileşenleri" 'ne de bakınız. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-9 Zamanlayıcı Komutları Zamanlama Şeması Gecikmeli zamanlayıcı karakteristikleri: t t t S girişindeki RLO R girişindeki RLO Zamanlayıcı çalışıyor "1" için okuma "0" için okuma t = Programlanmış zaman Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - X X X 1 Örnek T5 S_ODT I 0.0 S I 0.1 S5TIME#2S TV R Q 4.0 Q BI BCD Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Eğer iki saniyelik süre dolarsa ve I0.0 girişindeki sinyal durumu hala "1" ise, Q4.0 çıkışı "1" olur. Eğer I0.0 girişinin sinyal durumu "1" 'den "0" 'a değişirse, zamanlayıcı durdurulur ve Q4.0 "0" olur (Eğer I0.1'in sinyal seviyesi "0" 'dan "1" 'e değişirse, zamanlayıcının çalışıp çalışmamasından bağımsız olarak zaman resetlenir.) 13-10 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.6 S_ODTS Hafızalı Gecikmeli (Retentive On-Delay) S5 Zamanlayıcı Simge İngilizce Almanca T no. T-Nr. S_ODTS S TV R S_SEVERZ Q S BI TW R BCD Q DUAL DEZ Parametre İngilizce T no. Parametre Almanca T-Nr. Veri Tipi Bellek Alanı Tanım TIMER T Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır S TV R BI S TW R DUAL BOOL S5TIME BOOL WORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Girişi başlat İlk zaman değeri Girişi resetle Kalan zaman değeri, tamsayı formatında Kalan zaman değeri, BCD formatında Zamanlayıcı durumu Tanım S_ODTS (Hafızalı Gecikmeli S5 Zamanlayıcı) başla (S) girişinde pozitif ayrıt olduğunda belirlenen zamanlayıcıyı çalıştırır. Bir zamanlayıcı için, bir sinyal değişimi her zaman gereklidir. Zamanlayıcı, TV girişinde verilmiş olan ön değer zamanı süresince, S girişi zaman dolmadan "0" 'a değişse bile çalışır. Zamanlayıcı bittiğinde, Q çıkışındaki sinyal durumu, S girişindeki sinyal durumundan bağımsız olarak "1" olur. Eğer zamanlayıcı çalışırken, S girişindeki sinyal durumu "0" 'dan "1" 'e değişirse, zamanlayıcı ön yüklenmiş zaman değeriyle tekrar çalıştırılır (tekrar tetiklenir). Zamanlayıcının reset (R) girişi "0" 'dan "1" 'e değişirse, RLO'dan bağımsız olarak zamanlayıcı resetlenir. O zaman Q çıkışındaki sinyal durumu "0" olur. O andaki zaman değeri, BI ve BCD çıkışlarından okunabilir. BI zaman değeri ikilik, BCD değeri BCD kodlanmıştır. O andaki zaman değeri ilk TV değeri eksi zamanlayıcın başlatıldığı andan beri geçen zaman kadardır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-11 Zamanlayıcı Komutları Zamanlama Şeması Hafızalı gecikmeli zamanlayıcı karakteristikleri: t t t t S girişindeki RLO R girişindeki RLO Zamanlayıcı çalışıyor "1" için okuma "0" için okuma t = Programlanmış zaman Durum Word'ü BR Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - - X X X 1 T5 S_ODTS S Q Q 4.0 Örnek I 0.0 I 0.1 S5TIME#2S TV R BI BCD Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Zamanlayıcı, I0.0'daki "1" 'den "0" 'a sinyal değişiminden bağımsız olarak çalışır. Eğer zamanlayıcı bitmeden I0.0'un sinyal durumu "0" 'dan "1" 'e değişirse, zamanlayıcı tekrar tetiklenir. Zaman dolduğunda Q4.0 çıkışı "1" olur. (Eğer I0.1'in sinyal durumu "0" 'dan "1" 'e değişirse, zaman S girişindeki RLO'dan bağımsız olarak resetlenir.) 13-12 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.7 S_OFFDT Gecikmesiz (Off-Delay) S5 Zamanlayıcı Simge İngilizce Almanca T no. T-Nr. S_OFFDT S_AVERZ S TV R Q S BI TW Q DUAL R BCD DEZ Parametre İngilizce T no. Parametre Almanca T-Nr. Veri Tipi Bellek Alanı Tanım TIMER T S TV R BI S TW R DUAL BOOL S5TIME BOOL WORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D BCD DEZ WORD I, Q, M, L, D Q Q BOOL I, Q, M, L, D Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır Girişi başlat İlk zaman değeri Girişi resetle Kalan zaman değeri, tamsayı formatında Kalan zaman değeri, BCD formatında Zamanlayıcı durumu Tanım S_OFFDT (Gecikmesiz S5 Zamanlayıcı) başla (S) girişinde negatif ayrıt olduğunda belirlenen zamanlayıcıyı çalıştırır. Bir zamanlayıcı için, bir sinyal değişimi her zaman gereklidir. S girişindeki sinyal durumu "1" ise veya zamanlayıcı çalışırken, Q çıkışındaki sinyal durumu "1" olur. Zamanlayıcı çalışırken S girişindeki sinyal durumu "0" 'dan "1" 'e giderse zamanlayıcı resetlenir. Zamanlayıcı, S girişindeki sinyal durumu "1" 'den "0" 'a değişene kadar tekrar çalıştırılmaz. Zamanlayıcı çalışırken reset (R) girişi "0" 'dan "1" 'e değişirse, zamanlayıcı resetlenir. O andaki zaman değeri, BI ve BCD çıkışlarından okunabilir. BI zaman değeri ikilik, BCD değeri BCD kodlanmıştır. O andaki zaman değeri ilk TV değeri eksi zamanlayıcın başlatıldığı andan beri geçen zaman kadardır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-13 Zamanlayıcı Komutları Zamanlama Şeması Gecikmesiz zamanlayıcı karakteristikleri: t t t S girişindeki RLO R girişindeki RLO Zamanlayıcı çalışıyor "1" için okuma "0" için okuma t = Programlanmış zaman Durum Word'ü BR Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - - X X X 1 Örnek I 0.0 I 0.1 S5TIME#2S T5 S_OFFDT S Q TV R Q 4.0 BI BCD Eğer I0.0'nin sinyal durumu "1" 'den "0" 'a değişirse zamanlayıcı çalıştırılır. I0.0 "1" iken veya zamanlayıcı çalışıyorken Q4.0 "1" olur. (eğer I0.1 girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "0" 'dan "1" 'e değişirse, zamanlayıcı resetlenir). 13-14 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.8 ---( SP ) Vurum Zamanlayıcı Bobin (Pulse Timer Coil) Simge İngilizce Almanca <T no..> <T no.> ---( SP ) ---( SI ) <zaman değeri> <zaman değeri> Parametre <T no.> Veri Tipi TIMER Bellek Alanı T <zaman değeri> S5TIME Tanım Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır İlk zaman değeri I, Q, M, L, D Tanım ---( SP ) (Vurum Zamanlayıcı Bobin) <zaman değeri> ile belirlenen zamanlayıcıyı, RLO durumunda bir pozitif ayrıt olduğunda başlatır. Zamanlayıcı, belirlenmiş zaman aralığında, RLO pozitif ("1") olduğu sürece çalışmaya devam eder. Sayıcı çıkışı, zamanlayıcı çalıştığı sürece mantıksal "1" olur. RLO'da, zaman aralığı dolmadan "1" 'den "0" 'a bir değişim olursa, zamanlayıcı durdurulur. Bu durumda bir "1" için okuma her zaman "0" sonucunu oluşturur. "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcı Bileşenleri" ve S_PULSE (Vurumlu S5 Zamanlayıcısı)'a da bakınız. Durum Word'ü BR Değeri: - CC 1 CC 0 OV OS OR STA RLO /FC - - - - 0 - - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-15 Zamanlayıcı Komutları Örnek Devre 1 I 0.0 T5 SP S5T#2S Devre 2 T5 Q 4.0 I 0.1 T5 R Devre 3 Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Zamanlayıcı, belirlenmiş olan iki saniye süresinde, I0.0 sinyal durumu "1" olduğu sürece çalışmaya devam edecektir. Eğer I0.0 girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "1" 'den "0" 'a değişirse, zamanlayıcı durdurulur. Q4.0 çıkışı, zamanlayıcı çalıştığı sürece mantıksal "1" olur. I0.1 girişindeki "0" 'dan "1" 'e değişim T5 zamanlayıcısını resetler, bu da zamanlayıcıyı durdurur ve kalan zaman değerini sıfırlar. 13-16 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.9 ---( SE ) Ek Vurum Zamanlayıcı Bobin (Extended Pulse Timer Coil) Simge İngilizce Almanca <T no.> <T no.> --- ( SE ) ---( SV ) <zaman değeri> <zaman değeri> Parametre <T no.> Veri Tipi TIMER <zaman değeri> S5TIME Bellek Alanı T Tanım Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır I, Q, M, L, D İlk zaman değeri Tanım ---( SE ) (Ek Vurumlu Zamanlayıcı Bobin) <zaman değeri> ile belirlenen zamanlayıcıyı, RLO durumunda bir pozitif ayrıt olduğunda başlatır. Zamanlayıcı, belirlenmiş zaman aralığında, RLO zaman dolmadan "0" 'a değişse bile çalışmaya devam eder. Sayıcı çıkışı, zamanlayıcı çalıştığı sürece mantıksal "1" olur. Eğer zamanlayıcı çalışırken, RLO "0" 'dan "1" 'e değişirse, zamanlayıcı ön yüklenmiş zaman değeriyle tekrar çalıştırılır (tekrar tetiklenir). "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcı Bileşenleri" ve S_PEXT (Ek Vurumlu S5 Zamanlayıcısı)'e de bakınız. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 - - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-17 Zamanlayıcı Komutları Örnek Devre 1 I 0.0 T5 SE S5T#2S Devre 2 T5 Q A.0 I 0.1 T5 R Devre 3 Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Zamanlayıcı, RLO'daki bir negatif ayrıttan bağımsız olarak çalışmaya devam eder. Eğer I0.0 girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "0" 'den "1" 'a değişirse, zamanlayıcı tekrar tetiklenir. Q4.0 çıkışı, zamanlayıcı çalıştığı sürece mantıksal "1" olur. I0.1 girişindeki "0" 'dan "1" 'e değişim T5 zamanlayıcısını resetler, bu da zamanlayıcıyı durdurur ve kalan zaman değerini sıfırlar. 13-18 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.10 ---( SD ) Gecikmeli Zamanlayıcı Bobini (On-Delay Timer Coil) Simge İngilizce Almanca <T no.> <T no.> ---( SD ) ---( SE ) <zaman değeri> <zaman değeri> Parametre <T no.> Veri Tipi TIMER Bellek Alanı T Tanım Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır <zaman değeri> S5TIME I, Q, M, L, D İlk zaman değeri Tanım ---( SD ) (Gecikmeli Zamanlayıcı Bobin) <zaman değeri> ile belirlenen zamanlayıcıyı, RLO durumunda bir pozitif ayrıt olduğunda başlatır. Zamanlayıcının <zaman değeri> hatasız bittiğinde ve RLO hala "1" iken, zamanlayıcının sinyal durumu "1" olur. Zamanlayıcı çalışırken, RLO "1" 'den "0" 'a değişirse, zamanlayıcı resetlenir. Bu durumda bir "1" için okuma her zaman "0" sonucunu oluşturur. "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcı Bileşenleri" ve S_ODT (Gecikmeli S5 Zamanlayıcısı)'a da bakınız. Durum Word'ü Değeri: BR - CC 1 - CC 0 - OV - OS - S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 OR 0 STA - RLO - /FC 0 13-19 Zamanlayıcı Komutları Örnek Devre 1 I 0.0 T5 SD S5T#2S Devre 2 T5 Q A.0 I 0.1 T5 R Devre 3 Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Eğer iki saniyelik süre dolarsa ve I0.0 girişindeki sinyal durumu hala "1" ise, Q4.0 çıkışının sinyal durumu "1" olur. I0.0 girişinin sinyal durumu "1" 'den "0" 'a değişirse, zamanlayıcı durgun kalır ve Q4.0 çıkışının sinyal durumu "0" olur. I0.1 girişindeki "0" 'dan "1" 'e değişim T5 zamanlayıcısını resetler, bu da zamanlayıcıyı durdurur ve kalan zaman değerini sıfırlar. 13-20 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.11 ---( SS ) Hafızalı Gecikmeli Zamanlayıcı Bobin (Retentive On-Delay Timer Coil) Simge İngilizce Almanca <T no.> <T no.> ---( SS ) ---( SS ) <zaman değeri> <zaman değeri> Parametre <T no.> Veri Tipi TIMER Bellek Alanı T <zaman değeri> S5TIME Tanım Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır İlk zaman değeri I, Q, M, L, D Tanım ---( SS ) (Hafızalı Gecikmeli Zamanlayıcı Bobin) belirlenen zamanlayıcıyı, RLO durumunda bir pozitif ayrıt olduğunda başlatır. Zamanın dolması halinde zamanlayıcının sinyal durumu "1" olur. Zamanlayıcının tekrar başlatılması ancak dışsal olarak resetlenmesi ile mümkündür. Sadece bir reset, zamanlayıcının sinyal durumunu "0" 'a set edilmesine neden olur. Zamanlayıcı, eğer çalışırken RLO "0" 'dan "1" 'e değişirse belirlenen zaman değeri ile tekrar başlar. "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcı Bileşenleri" ve S_ODTS (Hafızalı Gecikmeli S5 Zamanlayıcısı)'ye de bakınız. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 - - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-21 Zamanlayıcı Komutları Örnek Devre 1 I 0.0 T5 SS S5T#2S Devre 2 T5 Q A.0 I 0.1 T5 R Devre 3 Eğer I0.0 girişindeki sinyal durumu "0" 'dan "1" 'e değişirse (RLO'da pozitif ayrıt), T5 zamanlayıcısı başlatılır. Eğer I0.0 girişindeki sinyal durumu, zamanlayıcı süresi dolmadan, "0" 'den "1" 'a değişirse, zamanlayıcı tekrar tetiklenir. Zaman dolduğunda Q4.0 çıkışı "1" olur. I0.1 girişindeki "0" 'dan "1" 'e değişim T5 zamanlayıcısını resetler, bu da zamanlayıcıyı durdurur ve kalan zaman değerini sıfırlar. 13-22 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Zamanlayıcı Komutları 13.12 ---( SF ) Gecikmesiz Zamanlayıcı Bobin (Off-Delay Timer Coil) Simge İngilizce Almanca <T no.> <T no.> ---( SF ) ---( SA ) <zaman değeri> <zaman değeri> Parametre <T no.> Veri Tipi TIMER Bellek Alanı T <zaman değeri> S5TIME Tanım Zamanlayıcı kimlik numarası, sınırları CPU'ya bağlıdır İlk zaman değeri I, Q, M, L, D Tanım ---( SF ) (Hafızasız Gecikmeli Zamanlayıcı Bobin) belirlenen zamanlayıcıyı, RLO durumunda bir negatif ayrıt olduğunda başlatır. Zamanlayıcı, ROLO "1" olduğunda veya <zaman değeri> süresince çalışırken "1" olur. Zamanlayıcı, çalışırken RLO "0" 'dan "1" 'e değişirse resetlenir. Zamanlayıcı, RLO "1" 'den "0" 'a değiştiğinde her zaman yeniden başlatılır. "Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcı Bileşenleri" ve S_OFFDT (Gecikmesiz S5 Zamanlayıcısı)'ye de bakınız. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC - - - - - 0 - - 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 13-23 Zamanlayıcı Komutları Örnek Devre 1 I 0.0 T5 SF S5T#2S Devre 2 T5 Q A.0 I 0.1 T5 R Devre 3 Eğer I0.0 girişinin sinyal durumu "1" 'den "0" 'a değişirse zamanlayıcı çalıştırılır. Q4.0 çıkışının sinyal durumu, I0.0 "1" ise veya zamanlayıcı çalışıyorsa "1" olur. I0.1 girişindeki "0" 'dan "1" 'e değişim T5 zamanlayıcısını resetler, bu da zamanlayıcıyı durdurur ve kalan zaman değerini sıfırlar. 13-24 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Word Mantıksal Komutları 14 Word Mantıksal Komutları 14.1 Word Mantıksal Komutlarına Genel Bakış Tanım Word mantıksal komutları word (16 bit) ve double word (32 bit) çiftlerini bit bit Boole mantığına göre karşılaştırır. OUT çıkışındaki sonuç 0 değilse, durum word'ünün CC 1 biti "1" set edilir. OUT çıkışındaki sonuç 0 ise, durum word'ünün CC 1 biti "0" set edilir. Aşağıdaki word mantıksal komutları kullanılabilir: • WAND_W (Word) AND Word - (W VE W) • WOR_W (Word) OR Word - (W VEYA W) • WXOR_W (Word) Exclusive OR Word - (W XOR W) • WAND_DW (Word) AND Double Word - (W VE DW) • WOR_DW (Word) OR Double Word - (W VEYA DW) • WXOR_DW (Word) Exclusive OR Double Word - (W XOR DW) S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 14-1 Word Mantıksal Komutları 14.2 WAND_W (Word) AND Word - (W VE W) Sembol WAND_W EN ENO IN1 IN2 OUT Parametre Veri Tipi Bellek Alanı Tanım EN BOOL I, Q, M, L, D Girişe imkan ver ENO BOOL I, Q, M, L, D Çıkışa imkan ver IN1 BOOL I, Q, M, L, D Mantıksal işlem için ilk değer IN2 BOOL I, Q, M, L, D Mantıksal işlem için ikinci değer OUT BOOL I, Q, M, L, D Mantıksal işlemin sonuç word'ü Tanım WAND_W (Word'leri AND'le) EN girişindeki "1" sinyal durumu ile aktive olur ve IN1 ve IN2 girişlerindeki word değerlerini bit bit AND'ler. Değerler saf bit dizilimi olarak yorumlanırlar. Sonuç, çıkış (OUT) parametresinden okunabilir. ENO, EN ile aynı mantıksal durumdadır. Durum Word'ü Değeri: BR 1 CC 1 X CC 0 0 OV 0 OS - OR X STA 1 RLO 1 /FC 1 Örnek I 0.0 Q 4.0 WAND_W MW0 2#0000000000001111 EN IN1 IN2 ENO OUT MW2 Eğer I0.0 "1" ise komut çalıştırılır. MW0'ın sadece 0'dan 3'e kadar olan bitleri alakalıdır, diğerleri IN2 girişindeki word biti dizilimi tarafından maskelenirler: MW0 = 01010101 01010101 IN2 = 00000000 00001111 MW0 AND IN2 = MW2 = 00000000 00000101 Eğer komut çalıştırılırsa Q4.0 "1" olur. 14-2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Word Mantıksal Komutları 14.3 WOR_W (Word) OR Word - (W VEYA W) Sembol WOR_W EN ENO IN1 IN2 OUT Parametre Veri Tipi Bellek Alanı Tanım EN BOOL I, Q, M, L, D Girişe imkan ver ENO IN1 IN2 OUT BOOL WORD WORD WORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Çıkışa imkan ver Mantıksal işlem için ilk değer Mantıksal işlem için ikinci değer Mantıksal işlemin sonuç word'ü Tanım WOR_W (Word'leri OR'la) EN girişindeki "1" sinyal durumu ile aktive olur ve IN1 ve IN2 girişlerindeki word değerlerini bit bit OR'lar. Değerler saf bit dizilimi olarak yorumlanırlar. Sonuç, çıkış (OUT) parametresinden okunabilir. ENO, EN ile aynı mantıksal durumdadır. Durum Word'ü Değeri: BR 1 CC 1 X CC 0 0 OV 0 OS - OR X STA 1 RLO 1 /FC 1 Örnek I 0.0 Q 4.0 WOR_W MW0 2#0000000000001111 EN IN1 IN2 ENO OUT MW2 Eğer I0.0 "1" ise komut çalıştırılır. MW0'ın 0'dan 3'e kadar bitleri "1" set edilir, diğer tüm MW0 bitleri değişmeden kalır. MW0 = 01010101 01010101 IN2 = 00000000 00001111 MW0 OR IN2 = MW2 = 01010101 01011111 Eğer komut çalıştırılırsa Q4.0 "1" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 14-3 Word Mantıksal Komutları 14.4 WAND_DW (Word) AND Double Word - (W VE DW) Sembol WAND_DW EN ENO IN1 IN2 OUT Parametre Veri Tipi Bellek Alanı Tanım EN BOOL I, Q, M, L, D Girişe imkan ver ENO BOOL I, Q, M, L, D Çıkışa imkan ver IN1 DWORD I, Q, M, L, D Mantıksal işlem için ilk değer IN2 DWORD I, Q, M, L, D Mantıksal işlem için ikinci değer OUT DWORD I, Q, M, L, D Mantıksal işlemin sonuç word'ü Tanım WAND_DW (Double Word'leri AND'le) EN girişindeki "1" sinyal durumu ile aktive olur ve IN1 ve IN2 girişlerindeki word değerlerini bit bit AND'ler. Değerler saf bit dizilimi olarak yorumlanırlar. Sonuç, çıkış (OUT) parametresinden okunabilir. ENO, EN ile aynı mantıksal durumdadır. Durum Word'ü Değeri: BR 1 CC 1 X CC 0 0 OV 0 OS - OR X STA 1 RLO 1 /FC 1 Örnek I 0.0 Q 4.0 WAND_DW MD0 DW#16#FFF EN IN1 IN2 ENO OUT MD4 Eğer I0.0 "1" ise komut çalıştırılır. MD0'ın sadece 0 ve 11. bitleri alakalıdır, diğerleri IN2 girişindeki bit dizilimi tarafından maskelenirler: MD0 = 01010101 01010101 01010101 01010101 IN2 = 00000000 00000000 00001111 11111111 MD0 AND IN2 = MD4 = 00000000 00000000 00000101 01010101 Eğer komut çalıştırılırsa Q4.0 "1" olur. 14-4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Word Mantıksal Komutları 14.5 WOR_DW (Word) OR Double Word - (W VEYA DW) Sembol WOR_DW EN ENO IN1 IN2 OUT Parametre Veri Tipi Bellek Alanı Tanım EN BOOL I, Q, M, L, D Girişe imkan ver ENO IN1 IN2 OUT BOOL DWORD DWORD DWORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Çıkışa imkan ver Mantıksal işlem için ilk değer Mantıksal işlem için ikinci değer Mantıksal işlemin sonuç word'ü Tanım WOR_DW (Double Word'leri OR'la) EN girişindeki "1" sinyal durumu ile aktive olur ve IN1 ve IN2 girişlerindeki word değerlerini bit bit OR'lar. Değerler saf bit dizilimi olarak yorumlanırlar. Sonuç, çıkış (OUT) parametresinden okunabilir. ENO, EN ile aynı mantıksal durumdadır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC 1 X 0 0 - X 1 1 1 Örnek I 0.0 Q 4.0 WOR_DW MD0 DW#16#FFF EN IN1 IN2 ENO OUT MD4 Eğer I0.0 "1" ise komut çalıştırılır. MW0'ın 0'dan 11'e kadar bitleri "1" set edilir, diğer tüm MD0 bitleri değişmeden kalır. MD0 = 01010101 01010101 01010101 01010101 IN2 = 00000000 00000000 00001111 11111111 MD0 OR IN2 = MD4 = 01010101 01010101 01011111 11111111 Eğer komut çalıştırılırsa Q4.0 "1" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 14-5 Word Mantıksal Komutları 14.6 WXOR_W (Word) Exclusive OR Word - (W XOR W) Sembol WXOR_W EN ENO IN1 IN2 OUT Parametre Veri Tipi Bellek Alanı Tanım EN BOOL I, Q, M, L, D Girişe imkan ver ENO IN1 IN2 OUT BOOL WORD WORD WORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Çıkışa imkan ver Mantıksal işlem için ilk değer Mantıksal işlem için ikinci değer Mantıksal işlemin sonuç word'ü Tanım WXOR_W (Word'leri XOR'la) EN girişindeki "1" sinyal durumu ile aktive olur ve IN1 ve IN2 girişlerindeki word değerlerini bit bit XOR'lar. Değerler saf bit dizilimi olarak yorumlanırlar. Sonuç, çıkış (OUT) parametresinden okunabilir. ENO, EN ile aynı mantıksal durumdadır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC 1 X 0 0 - X 1 1 1 Örnek I 0.0 Q 4.0 WXOR_W MW0 2#0000000000001111 EN IN1 IN2 ENO OUT MW2 Eğer I0.0 "1" ise komut çalıştırılır. MW0 = 01010101 01010101 IN2 = 00000000 00001111 MW0 XOR IN2 = MW2 = 01010101 01011010 Eğer komut çalıştırılırsa Q4.0 "1" olur. 14-6 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Word Mantıksal Komutları 14.7 DW) WXOR_DW (Word) Exclusive OR Double Word - (W XOR Sembol WXOR_DW EN ENO IN1 IN2 OUT Parametre Veri Tipi Bellek Alanı Tanım EN BOOL I, Q, M, L, D Girişe imkan ver ENO BOOL I, Q, M, L, D Çıkışa imkan ver IN1 IN2 OUT DWORD DWORD DWORD I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Mantıksal işlem için ilk değer Mantıksal işlem için ikinci değer Mantıksal işlemin sonuç word'ü Tanım WXOR_DW (Double Word'leri XOR'la) EN girişindeki "1" sinyal durumu ile aktive olur ve IN1 ve IN2 girişlerindeki word değerlerini bit bit XOR'lar. Değerler saf bit dizilimi olarak yorumlanırlar. Sonuç, çıkış (OUT) parametresinden okunabilir. ENO, EN ile aynı mantıksal durumdadır. Durum Word'ü Değeri: BR CC 1 CC 0 OV OS OR STA RLO /FC 1 X 0 0 - X 1 1 1 Örnek I 0.0 Q 4.0 WXOR_DW MD0 DW#16#FFF EN IN1 IN2 ENO OUT MD4 Eğer I0.0 "1" ise komut çalıştırılır. MD0 = 01010101 01010101 01010101 01010101 IN2 = 00000000 00000000 00001111 11111111 MW2 = MD0 XOR IN2 = 01010101 01010101 01011010 10101010 Eğer komut çalıştırılırsa Q4.0 "1" olur. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 14-7 Word Mantıksal Komutları 14-8 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış A Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış A.1 İngilizce Simgesellerine (Mnemonics) Göre Sıralanmış LAD Komutları (Uluslararası) İngilizce Almanca Program Elemanları Simgeseller Simgeseller Kataloğu Tanım ---| |--- ---| |--- Bitsel Mantık Komutu Normalde Açık Kontakt (Adres) ---|/|--- ---|/|--- Bitsel Mantık Komutu Normalde Kapalı Kontakt (Adres) ---( ) ---( ) Bitsel Mantık Komutu Çıkış Bobini ---( # )--- ---( # )--- Bitsel Mantık Komutu Hat Arası Çıkış ==0 ---| |--- ==0 ---| |--- Durum bitleri Sonuç Biti Sıfıra Eşit >0 ---| |--- >0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Büyük >=0 ---| |--- >=0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Büyük Veya Eşit <=0 ---| |--- <=0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Küçük Veya Eşit <0 ---| |--- <0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Küçük <>0 ---| |--- <>0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Farklı ABS ABS Gerçel Sayı Komutu Gerçel Sayının Mutlak Değerini Hesapla ACOS ACOS Gerçel Sayı Komutu Ark Kosinüs Değerini Hesapla ADD_DI ADD_DI Tamsayı Matematiksel Komutu Double Tamsayı Topla ADD_I ADD_I Tamsayı Matematiksel Komutu Tamsayı Topla ADD_R ADD_R Tamsayı Matematiksel Komutu Gerçel Sayı Topla ASIN ASIN Gerçel Sayı Komutu Ark Sinüs Değerini Hesapla ATAN ATAN Gerçel Sayı Komutu Ark Tanjant Değerini Hesapla BCD_DI BCD_DI Dönüştür BCD'den Double Tamsayıya BCD_I BCD_I Dönüştür BCD'den Tamsayıya BR ---| |--- BIE ---| |--- Durum bitleri İstisna Biti İkilik Sonucu ----(CALL) ----(CALL) Program kontrol Bobinden FC SFC Çağır (Parametresiz) CALL_FB CALL_FB Program kontrol Kutudan FB Çağır CALL_FC CALL_FC Program kontrol Kutudan FC Çağır CALL_SFB CALL_SFB Program kontrol Kutudan Sistem FB Çağır S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 A-1 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış A-2 İngilizce Almanca Program Elemanları Simgeseller Simgeseller Katalog (Mnemonics) Tanım CALL_SFC CALL_SFC Program kontrol Kutudan Sistem FC Çağır ----(CD) CEIL CMP >=D ----(ZR) CEIL CMP >=D Sayıcılar Dönüştür Karşılaştır Aşağı Sayıcı Bobin Tavan Double Tamsayı Karşılaştır (==, <>, >, <, >=, <=) CMP >=I CMP >=R COS ----(CU) DI_BCD CMP >=I CMP >=R COS ---( ZV ) DI_BCD Karşılaştır Karşılaştır Gerçel Sayı Komutu Sayıcılar Dönüştür Tamsayı Karşılaştır (==, <>, >, <, >=, <=) Gerçel Sayı Karşılaştır (==, <>, >, <, >=, <=) Kosinüs Değerini Hesapla Yukarı Sayıcı Bobin Double Tamsayıdan BCD'ye DI_R DIV_DI DI_R DIV_DI Dönüştür Tamsayı Matematiksel Komutu Double Tamsayıdan Gerçel Sayıya Double Tamsayı Böl DIV_I DIV_I Tamsayı Matematiksel Komutu Tamsayı Böl DIV_R EXP DIV_R EXP Gerçel Sayı Komutu Gerçel Sayı Komutu Gerçel Sayı Böl Üstel Değerini Hesapla FLOOR I_BCD I_DI INV_I FLOOR I_BCD I_DI INV_I Dönüştür Dönüştür Dönüştür Dönüştür Taban Tamsayıdan BCD'ye Tamsayıdan Double Tamsayıya Birin Tümleyeni Tamsayı INV_DI ---(JMP) ---(JMP) ---(JMPN) INV_DI ---(JMP) ---(JMP) ---(JMPN) Dönüştür Atla (Jumps) Atla Atla Birin Tümleyeni Double Tamsayı Şartsız Atla Şartlı Atla Değilse Atla LABEL LN ---(MCR>) ---(MCR<) ---(MCRA) LABEL LN ---(MCR>) ---(MCR<) ---(MCRA) Atla Gerçel Sayı Komutu Program kontrol Program kontrol Program kontrol Etiketle Doğal Logaritmasını Hesapla Ana Kontrol Rölesi Kapat Ana Kontrol Rölesi Aç Ana Kontrol Rölesi Aktive Et ---(MCRD) MOD_DI ---(MCRD) MOD_DI Program kontrol Tamsayı Matematiksel Komutu Ana Kontrol Rölesi Deaktive Et Double Tamsayı Kalanı Döndür MOVE MUL_DI MOVE MUL_DI Atama Tamsayı Matematiksel Komutu Değer Ata Double Tamsayı Çarp MUL_I MUL_I Tamsayı Matematiksel Komutu Tamsayı Çarp MUL_R ---(N)--- MUL_R ---(N)--- Gerçel Sayı Komutu Bitsel Mantık Komutu Gerçel Sayı Çarp Negatif RLO Ayrıt Tespiti S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış İngilizce Simgeseller Almanca Simgeseller Program Elemanları Tanım Katalog NEG NEG Bitsel Mantık Komutu Adres Negatif Ayrıt Tespiti NEG_DI NEG_I NEG_R ---|NOT|--- NEG_DI NEG_I NEG_R ---|NOT|--- Dönüştür Dönüştür Dönüştür Bitsel Mantık Komutu İkinin Tümleyeni Double Tamsayı İkinin Tümleyeni Tamsayı Gerçel Sayıyı Negatif Yap Ters Enerji Akışı ---( OPN ) OS ---| |--OV ---| |-----(P)--- ---( OPN ) OS ---| |--OV ---| |-----(P)--- DB çağrımı Durum bitleri Durum bitleri Bitsel Mantık Komutu Veri Bloğunu Aç: DB veya DI İstisna Biti Taşması Kaydedildi İstisna Biti Taşması Pozitif RLO Ayrıt Tespiti POS ---( R ) ---(RET) ROL_DW POS ---( R ) ---(RET) ROL_DW Adres Pozitif Ayrıt Tespiti Reset Bobini Dön Double Word'ü Sola Dönel Ötele ROR_DW ROR_DW Bitsel Mantık Komutu Bitsel Mantık Komutu Program kontrol Öteleme (Shift) / Dönel Öteleme (Rotate) Öteleme / Dönel Öteleme ROUND RS ---( S ) ---(SAVE) ---( SC ) ROUND RS ---( S ) ---(SAVE) ---( SZ ) Dönüştür Bitsel Mantık Komutu Bitsel Mantık Komutu Bitsel Mantık Komutu Sayıcılar Double Tamsayıya Yuvarla Reset-Set Flip Flop Set Bobini RLO'yu BR Belleğine Kaydet Sayıcı Değeri Ata S_CD S_CU S_CUD ---( SD ) Z_RUECK Z_VORW ZAEHLER ---( SE ) Sayıcılar Sayıcılar Sayıcılar Zamanlayıcılar Aşağı Sayıcı Yukarı Sayıcı Yukarı-Aşağı Sayıcı Gecikmeli Zamanlayıcı Bobin ---( SE ) ---( SV ) Zamanlayıcılar Ek Vurum Zamanlayıcı Bobin (Extended Pulse Timer Coil) ---( SF ) SHL_DW ---( SA ) SHL_DW Zamanlayıcılar Öteleme / Dönel Öteleme Gecikmesiz Zamanlayıcı Bobin Double Word'ü Sola Ötele SHL_W SHL_W Öteleme / Dönel Öteleme Word'ü Sola Ötele SHR_DI SHR_DI Öteleme / Dönel Öteleme Double Tamsayıyı Sağa Ötele SHR_DW SHR_DW Öteleme / Dönel Öteleme Double Word'ü Sağa Ötele SHR_I SHR_I Öteleme / Dönel Öteleme Tamsayıyı Sağa Ötele SHR_W SHR_W Öteleme / Dönel Öteleme Word'ü Sağa Ötele SIN S_ODT S_ODTS S_OFFDT SIN S_EVERZ S_SEVERZ S_AVERZ Gerçel Sayı Komutu Zamanlayıcılar Zamanlayıcılar Zamanlayıcılar Sinüs Değerini Hesapla Gecikmeli S5 Zamanlayıcı Hafızalı Gecikmeli S5 Zamanlayıcı Gecikmesiz S5 Zamanlayıcı ---( SP ) S_PEXT S_PULSE SQR ---( SI ) S_VIMP S_IMPULS SQR Zamanlayıcılar Zamanlayıcılar Zamanlayıcılar Gerçel Sayı Komutu Vurum Zamanlayıcı Bobin Ek Vurum S5 Zamanlayıcı Vurum S5 Zamanlayıcı Karesini Hesapla Double Word'ü Sağa Dönel Ötele S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 A-3 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış A-4 İngilizce Simgeseller Almanca Program Elemanları Simgeseller Katalog Tanım SQRT SQRT Gerçel Sayı Komutu Kare Kökünü Hesapla SR SR Bitsel Mantık Komutu Set-Reset Flip Flop ---(SS) ---(SS) Zamanlayıcılar Hafızalı Gecikmeli Zamanlayıcı Bobin SUB_DI SUB_DI Tamsayı Matematiksel Komutu Double Tamsayı Çıkart SUB_I SUB_I Tamsayı Matematiksel Komutu Tamsayı Çıkart SUB_R SUB_R Gerçel Sayı Komutu Gerçel Sayı Çıkart TAN TAN Gerçel Sayı Komutu Tanjant Değerini Hesapla TRUNC TRUNC Dönüştür Double Tamsayı Kısmını At UO ---| |--- UO ---| |--- Durum bitleri Geçersiz İstisna Biti WAND_DW WAND_DW Word Mantık Komutu Double Word'ü AND'le WAND_W WAND_W Word Mantık Komutu Word'ü AND'le WOR_DW WOR_DW Word Mantık Komutu Double Word'ü OR'la WOR_W WOR_W Word Mantık Komutu Word'ü OR'la WXOR_DW WXOR_DW Word Mantık Komutu Double Word'ü XOR'la WXOR_W WXOR_W Word Mantık Komutu Word'ü XOR'la S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış A.2 Almanca Simgesellerine Göre Sıralanmış LAD Komutları (SIMATIC) Almanca İngilizce Program Simgeseller Simgeseller Program Kataloğu Tanım ---| |--- ---| |--- Bitsel Mantık Komutu Normalde Açık Kontakt (Adres) ---|/|--- ---|/|--- Bitsel Mantık Komutu Normalde Kapalı Kontakt (Adres) ---( ) ---( # )--- ---( ) ---( # )--- Bitsel Mantık Komutu Bitsel Mantık Komutu Çıkış Bobini Hat Arası Çıkış ==0 ---| |--- ==0 ---| |--- Durum bitleri Sonuç Biti Sıfıra Eşit >0 ---| |--- >0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Büyük >=0 ---| |--<=0 ---| |--- >=0 ---| |--<=0 ---| |--- Durum bitleri Durum bitleri Sonuç Biti Sıfırdan Büyük Veya Eşit Sonuç Biti Sıfırdan Küçük Veya Eşit <0 ---| |--- <0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Küçük <>0 ---| |--- <>0 ---| |--- Durum bitleri Sonuç Biti Sıfırdan Farklı ABS ACOS ABS ACOS Gerçel Sayı Komutu Gerçel Sayı Komutu Gerçel Sayının Mutlak Değerini Hesapla Ark Kosinüs Değerini Hesapla ADD_DI ADD_DI Tamsayı Matematiksel Komutu Double Tamsayı Topla ADD_I ADD_I Tamsayı Matematiksel Komutu Tamsayı Topla ADD_R ADD_R Gerçel Sayı Komutu Gerçel Sayı Topla ASIN ASIN Gerçel Sayı Komutu Ark Sinüs Değerini Hesapla ATAN ATAN Gerçel Sayı Komutu Ark Tanjant Değerini Hesapla BCD_DI BCD_I BCD_DI BCD_I Dönüştür Dönüştür BCD'den Double Tamsayıya BCD'den Tamsayıya BIE ---| |--- BR ---| |--- Durum bitleri İstisna Biti İkilik Sonucu ----(CALL) CALL_FB ----(CALL) CALL_FB Program kontrol Program kontrol Bobinden FC SFC Çağır (Parametresiz) Kutudan FB Çağır CALL_FC CALL_FC Program kontrol Kutudan FC Çağır CALL_SFB CALL_SFB Program kontrol Kutudan Sistem FB Çağır CALL_SFC CALL_SFC Program kontrol CEIL CEIL Dönüştür Kutudan Sistem FC Çağır Tavan CMP >=D CMP >=D Karşılaştır Double Tamsayı Karşılaştır (==, <>, >, <, >=, <=) CMP >=I CMP >=R CMP >=I CMP >=R Karşılaştır Karşılaştır Tamsayı Karşılaştır (==, <>, >, <, >=, <=) Gerçel Sayı Karşılaştır (==, <>, >, <, >=, <=) COS COS Gerçel Sayı Komutu Kosinüs Değerini Hesapla DI_BCD DI_BCD Dönüştür Double Tamsayıdan BCD'ye S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 A-5 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış Almanca İngilizce Program Simgeseller Simgeseller Program Kataloğu A-6 Tanım DI_R DI_R Dönüştür Double Tamsayıdan Gerçel Sayıya DIV_DI DIV_DI Double Tamsayı Böl DIV_I DIV_I DIV_R DIV_R Tamsayı Matematiksel Komutu Tamsayı Matematiksel Komutu Gerçel Sayı Komutu EXP EXP Gerçel Sayı Komutu Üstel Değerini Hesapla FLOOR FLOOR Dönüştür Taban I_BCD I_BCD Dönüştür Tamsayıdan BCD'ye I_DI I_DI Dönüştür Tamsayıdan Double Tamsayıya INV_I INV_I Dönüştür Birin Tümleyeni Tamsayı Tamsayı Böl Gerçel Sayı Böl INV_DI INV_DI Dönüştür Birin Tümleyeni Double Tamsayı ---(JMP) ---(JMP) Atla Şartlı Atla ---(JMP) ---(JMP) Atla Şartsız Atla ---(JMPN) ---(JMPN) Atla Değilse Atla LABEL LABEL Atla Etiketle LN LN Gerçel Sayı Komutu Doğal Logaritmasını Hesapla ---(MCR>) ---(MCR>) Program kontrol Ana Kontrol Rölesi Kapat ---(MCR<) ---(MCR<) Program kontrol Ana Kontrol Rölesi Aç ---(MCRA) ---(MCRA) Program kontrol Ana Kontrol Rölesi Aktive Et ---(MCRD) ---(MCRD) Program kontrol Ana Kontrol Rölesi Deaktive Et MOD_DI MOD_DI Double Tamsayı Kalanı Döndür MOVE MOVE Tamsayı Matematiksel Komutu Atama MUL_DI MUL_DI Double Tamsayı Çarp MUL_I MUL_I MUL_R MUL_R Tamsayı Matematiksel Komutu Tamsayı Matematiksel Komutu Gerçel Sayı Komutu ---(N)--- ---(N)--- Bitsel Mantık Komutu Negatif RLO Ayrıt Tespiti NEG NEG Bitsel Mantık Komutu Adres Negatif Ayrıt Tespiti NEG_DI NEG_I NEG_DI NEG_I Dönüştür Dönüştür İkinin Tümleyeni Double Tamsayı İkinin Tümleyeni Tamsayı NEG_R NEG_R Dönüştür Gerçel Sayıyı Negatif Yap ---|NOT|--- ---|NOT|--- Bitsel Mantık Komutu Ters Enerji Akışı ---( OPN ) ---( OPN ) DB çağrımı Veri Bloğunu Aç: DB veya DI OS ---| |--- OS ---| |--- Durum bitleri İstisna Biti Taşması Kaydedildi OV ---| |--- OV ---| |--- Durum bitleri İstisna Biti Taşması ---(P)--- ---(P)--- Bitsel Mantık Komutu Pozitif RLO Ayrıt Tespiti Değer Ata Tamsayı Çarp Gerçel Sayı Çarp S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış Almanca İngilizce Program Simgeseller Simgeseller Program Kataloğu Tanım POS POS Bitsel Mantık Komutu Adres Pozitif Ayrıt Tespiti ---( R ) ---( R ) Bitsel Mantık Komutu Reset Bobini ---(RET) ---(RET) Program kontrol Dön ROL_DW ROL_DW Double Word'ü Sola Dönel Ötele ROR_DW ROR_DW ROUND ROUND Öteleme / Dönel Öteleme Öteleme / Dönel Öteleme Dönüştür RS RS Bitsel Mantık Komutu Reset-Set Flip Flop ---( S ) ---( S ) Bitsel Mantık Komutu Set Bobini ---( SA ) ---( SF ) Zamanlayıcılar Gecikmesiz Zamanlayıcı Bobin ---(SAVE) ---(SAVE) Bitsel Mantık Komutu RLO'yu BR Belleğine Kaydet S_AVERZ S_OFFDT Zamanlayıcılar Gecikmesiz S5 Zamanlayıcı ---( SE ) ---( SD ) Zamanlayıcılar Gecikmeli Zamanlayıcı Bobin S_EVERZ S_ODT Zamanlayıcılar Gecikmeli S5 Zamanlayıcı SHL_DW SHL_DW Double Word'ü Sola Ötele SHL_W SHL_W SHR_DI SHR_DI SHR_DW SHR_DW SHR_I SHR_I SHR_W SHR_W ---( SI ) ---( SP ) Öteleme / Dönel Öteleme Öteleme / Dönel Öteleme Öteleme / Dönel Öteleme Öteleme / Dönel Öteleme Öteleme / Dönel Öteleme Öteleme / Dönel Öteleme Zamanlayıcılar Double Word'ü Sağa Dönel Ötele Double Tamsayıya Yuvarla Word'ü Sola Ötele Double Tamsayıyı Sağa Ötele Double Word'ü Sağa Ötele Tamsayıyı Sağa Ötele Word'ü Sağa Ötele Vurum Zamanlayıcı Bobin S_IMPULS S_PULSE Zamanlayıcılar Vurum S5 Zamanlayıcı SIN SIN Gerçel Sayı Komutu Sinüs Değerini Hesapla SQR SQR Gerçel Sayı Komutu Karesini Hesapla SQRT SQRT Gerçel Sayı Komutu Kare Kökünü Hesapla SR SR Bitsel Mantık Komutu Set-Reset Flip Flop ---(SS) ---(SS) Zamanlayıcılar Hafızalı Gecikmeli Zamanlayıcı Bobin S_SEVERZ S_ODTS Zamanlayıcılar Hafızalı Gecikmeli S5 Zamanlayıcı SUB_DI SUB_DI Double Tamsayı Çıkart SUB_I SUB_I SUB_R SUB_R Tamsayı Matematiksel Komutu Tamsayı Matematiksel Komutu Gerçel Sayı Komutu ---( SV ) ---( SE ) Zamanlayıcılar S_VIMP S_PEXT Zamanlayıcılar Ek Vurum Zamanlayıcı Bobin (Extended Pulse Timer Coil) Ek Vurum S5 Zamanlayıcı ---( SZ ) ---( SC ) Sayıcılar Sayıcı Değeri Ata TAN TAN Gerçel Sayı Komutu Tanjant Değerini Hesapla TRUNC TRUNC Dönüştür Double Tamsayı Kısmını At UO ---| |--- UO ---| |--- Durum bitleri Geçersiz İstisna Biti Tamsayı Çıkart Gerçel Sayı Çıkart S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 A-7 Tüm Merdiven Mantığı (LAD) Komutlarına Genel Bakış Almanca İngilizce Program Simgeseller Simgeseller Program Kataloğu Tanım WAND_DW WAND_DW Word Mantık Komutu Double Word'ü AND'le WAND_W WAND_W Word Mantık Komutu Word'ü AND'le WOR_DW WOR_DW Word Mantık Komutu Double Word'ü OR'la WOR_W WOR_W Word Mantık Komutu Word'ü OR'la WXOR_DW WXOR_DW Word Mantık Komutu A-8 Double Word'ü XOR'la WXOR_W WXOR_W Word Mantık Komutu Word'ü XOR'la ZAEHLER S_CUD Sayıcılar Yukarı-Aşağı Sayıcı ----(ZR) ----(CD) Sayıcılar Aşağı Sayıcı Bobin Z_RUECK S_CD Sayıcılar Aşağı Sayıcı ---( ZV ) ----(CU) Sayıcılar Yukarı Sayıcı Bobin Z_VORW S_CU Sayıcılar Yukarı Sayıcı S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Programlama Örnekleri B Programlama Örnekleri B.1 Programlama Örneklerine Genel Bakış Pratikte Uygulamalar Bu el kitabında açıklanan her merdiven mantığı komutu, belirlenmiş bir işlemi tetikler. Bu komutları bir program olarak bir araya getirdiğinizde, geniş bir yelpazede otomasyon görevlerini yerine getirebilirsiniz. Bu bölüm pratikte aşağıdaki merdiven mantığı komutları uygulama örneklerini sunmaktadır: • Bitsel mantık komutlarını kullanarak taşıyıcı bant kontrolü • Bitsel mantık komutlarını kullanarak bir taşıyıcı bantın hareket yönünü tespit etme • Zamanlayıcı komutlarını kullanarak saat vurumu oluşturma • Sayıcı ve karşılaştırma komutlarını kullanarak saklama alanı takibi • Tamsayı matematiksel komutlarını kullanarak bir problemi çözme • Bir fırının çalışma süresini ayarlama Kullanılan Komutlar Simgeseller Program Elemanları Kataloğu Tanım WAND_W WOR_W --- (CD) --- ( CU ) ---( R ) ---( S ) ---(P) ADD_I DIV_I MUL_I CMP <=I, CMP >=I ---| |-----| / |-----( ) ---( JMPN ) ---( RET ) MOVE --- ( SE ) Word mantık komutu Word mantık komutu Sayıcılar Sayıcılar Bitsel Mantık Komutu Bitsel Mantık Komutu Bitsel Mantık Komutu Gerçel sayı komutu Gerçel sayı komutu Gerçel sayı komutu Karşılaştır Bitsel mantık komutu Bitsel mantık komutu Bitsel mantık komutu Atlar Program kontrol Atama Zamanlayıcılar (Word) Ve Word (Word) Veya Word Aşağı Sayıcı Bobin Yukarı Sayıcı Bobin Reset Bobini Set Bobini Pozitif RLO Ayrıt Tespiti Tamsayı Topla Tamsayı Böl Tamsayı Çarp Tamsayı Karşılaştır Normalde Açık Kontakt Normalde Kapalı Kontakt Çıkış Bobini Değilse Atla Dön Değer Ata Ek Vurum Zamanlayıcı Bobin S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 B-1 Programlama Örnekleri B.2 Örnek: Bitsel Mantık Komutları Örnek 1: Taşıyıcı Bant Kontrolü Aşağıdaki şekil, elektriksel olarak aktive edilebilen bir taşıyıcı bantı gösterir. Bantın başında iki adet basma düğmesi anahtarı mevcuttur: START için S1 ve STOP için S2. Bantın sonunda da iki adet basma düğmesi anahtarı mevcuttur: START için S3 ve STOP için S4. bantı çalıştırıp durdurmak bantın her iki ucundan da mümkündür. Aynı zamanda, S5 algılayıcısı da bant üzerindeki cismin bantın sonuna varmasıyla bantı durdurur. S5 Algılayıcısı (Sensor) S1 S2 MOTOR_ON O Başla O Dur S3 S4 O Başla O Dur Mutlak ve Simgesel Programlama Taşıyıcı bantı kontrol edecek programı, mutlak değerler veya taşıyıcı sisteminin değişik bileşenlerini temsil edecek simgeler kullanarak yazabilirsiniz. Mutlak değerler için seçtiğiniz simgelerle karşılıklı getirebilmek için bir simge tablosu yapmanız gerekir. (STEP 7 Çevrimiçi Yardıma bakınız). Sistem Bileşeni Başlat Basma Düğmesi Anahtarı Durdur Basma Düğmesi Anahtarı Başlat Basma Düğmesi Anahtarı Durdur Basma Düğmesi Anahtarı Algılayıcı Motor B-2 Mutlak Adres I 1.1 Simge S1 Simge Tablosu I 1.1 S1 I 1.2 S2 I 1.2 S2 I 1.3 S3 I 1.3 S3 I 1.4 S4 I 1.4 S4 I 1.5 Q 4.0 S5 MOTOR_ON I 1.5 S5 Q 4.0 MOTOR_ON S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Programlama Örnekleri Taşıyıcı Bantı Kontrol Etmek İçin Merdiven Mantığı Programı Devre 1: İki başlat anahtarından birine basmak motoru çalıştırır. S1 I 1.1 Q 4.0 S S3 I 1.3 Devre 2: Bantın sonundaki normalde kapalı olan kontaktı açan iki durdur anahtarından birine basmak motoru durdurur. S2 I 1.2 Q 4.0 R S4 I 1.4 S5 I 1.5 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 B-3 Programlama Örnekleri Örnek 2: Bir Taşıyıcı Bantın Hareket Yönünü Tespit Etmek Aşağıdaki şekil, bir paketin bant üzerinde hangi yöne hareket ettiğini tespit etmek için tasarlanmış iki fotoelektrik bariyeri (PEB1 ve PEB2) olan bir taşıyıcı bantı göstermektedir. Her bir fotoelektrik ışık bariyeri normalde açık kontakt gibi çalışmaktadır. Q 4.0 PEB2 PEB1 Q 4.1 Mutlak ve Simgesel Programlama Taşıyıcı bant sistemi için bir yön gösterimini aktive edecek programı, mutlak değerler veya taşıyıcı sisteminin değişik bileşenlerini temsil edecek simgeler kullanarak yazabilirsiniz. Mutlak değerler için seçtiğiniz simgelerle karşılıklı getirebilmek için bir simge tablosu yapmanız gerekir. (STEP 7 Çevrimiçi Yardıma bakınız). B-4 Sistem Bileşeni Mutlak Adres Simge Simge Tablosu Fotoelektrik bariyer 1 I 0.0 PEB1 I 0.0 PEB1 Fotoelektrik bariyer 2 I 0.1 PEB2 I 0.1 PEB2 Sağa hareket için gösterim Q 4.0 RIGHT Q 4.0 RIGHT Sola hareket için gösterim Q 4.1 LEFT Q 4.1 LEFT Vurum bellek biti 1 M 0.0 PMB1 M 0.0 PMB1 Vurum bellek biti 2 M 0.1 PMB2 M 0.1 PMB2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Programlama Örnekleri Bir Taşıyıcı Bantın Hareket Yönünü Tespit Etmek İçin Merdiven Mantığı Programı Devre 1: Eğer I 0.0 girişi sinyal durumunda 0'dan 1'e bir geçiş (pozitif ayrıt) varsa ve aynı zamanda I 0.1 girişi sinyal durumu 0 ise, bant üzerindeki paket sola hareket ediyordur. PEB1 I 0.0 PMB1 M 0.0 PEB2 I 0.1 P LEFT Q 4.1 S Devre 2: Eğer I 0.1 girişi sinyal durumunda 0'dan 1'e bir geçiş (pozitif ayrıt) varsa ve aynı zamanda I 0.0 girişi sinyal durumu 0 ise, bant üzerindeki paket sola hareket ediyordur. Eğer fotoelektrik bariyerlerden biri kırılmışsa, bu bant üzerinde bir paket olduğu anlamına gelir. PEB2 I 0.1 PMB2 M 0.1 PEB1 I 0.0 P RIGHT Q 4.0 S Devre 3: Eğer fotoelektrik bariyerlerden hiçbiri kırılmamışsa, bu bant üzerinde bir paket olmadığı anlamına gelir. Yön göstericisi kapanır. PEB1 I 0.0 PEB2 I 0.1 RIGHT Q 4.0 R LEFT Q 4.1 R S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 B-5 Programlama Örnekleri B.3 Örnek: Zamanlayıcı Komutları Saat Vurumu jeneratörü Periyodik olarak tekrarlayan bir sinyal oluşturmanız gerektiğinde bir saat vurumu jeneratörü kullanabilirsiniz. Bir saat vurumu jeneratörü, gösterge lambalarının yanmasını kontrol eden bir sinyalizasyon sisteminde sıkça kullanılır. S7-300 kullandığınızda, saat vurum jeneratörü işlevini, özel organizasyon bloklarındaki zaman-yönetimli işleme yöntemi kullanarak, gerçekleyebilirsiniz. Ancak aşağıdaki mantık merdiveni programı örneği, zamanlayıcı işlevlerini saat vurumu elde etmek üzere kullanmayı gösterir. Örnek program, zamanlayıcı kullanarak serbest dönümlü saat vurumu jeneratörü gerçeklemeyi gösterir. Saat Vurumu Elde Etmek İçin Merdiven Mantık Programı (vurum görev etmeni pulse duty factor 1:1) Network 1: Eğer T1 zamanlayıcısının sinyal durumu 0 ise, T1'e 250 ms zaman değerini yükleyin ve T1'i ek vurumlu bir zamanlayıcı olarak başlatın. M0.2 T1 SE S5T#250MS Devre 2: Zamanlayıcının sinyal durumu geçici olarak bir dışsal bellek işaretleyicide saklanır. T1 M0.2 Devre 3: Eğer T1 zamanlayıcısının sinyal durumu "1" ise, M001 etiketine atla. M0.2 M001 JMP Devre 4: T1 zamanlayıcısının zamanı dolunca, bellek word'ü 100 bir arttırılır. ADD_I B-6 EN ENO MW100 IN1 OUT 1 IN2 MW100 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Programlama Örnekleri Devre 5: MOVE komutu, Q12.0'den Q13.7'ye kadar çıkışlarda değişik saat frekanslarında vurumlar çıkartmanızı sağlar. M001 MOVE MW100 EN ENO IN OUT AW12 Sinyal Kontrolü T1 zamanlayıcısı üzerinde bir sinyal kontrolü, M0.2 açıcısı için aşağıdaki mantıksal işlem sonucunu (RLO) yaratır. 1 0 250 ms Zaman biter bitmez, zamanlayıcı tekrar başlatılır. Bundan dolayı, ––| / |–– M0.2 tarafından yapılan kontrol, düzgün bir "1" sinyal durumu oluşturur. Negatiflenmiş RLO: 1 0 250 ms Her 250 ms'de RLO biti 0 olur. Atlama (jump) dikkate alınmaz ve MW100 bellek word'ünün içeriği 1 arttırılır. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 B-7 Programlama Örnekleri Belirli Bir Frekansı Elde Etmek MB101 ve MB100 bellek baytlarının bitlerinden aşağıdaki frekansları elde edebilirsiniz: MB101/MB100 Bitleri Hz Olarak Frekans M 101.0 2.0 Süre M 101.1 1.0 1 s(0.5 s açık / 0.5 s kapalı) M 101.2 0.5 2 s(1 s açık / 1 s kapalı) M 101.3 0.25 4 s(2 s açık / 2 s kapalı) M 101.4 0.125 8 s(4 s açık / 4 s kapalı) M 101.5 0.0625 16 s(8 s açık / 8 s kapalı) M 101.6 0.03125 32 s(16 s açık / 16 s kapalı) M 101.7 0.015625 64 s(32 s açık / 32 s kapalı) M 100.0 0.0078125 128 s(64 s açık / 64 s kapalı) M 100.1 0.0039062 256 s(128 s açık / 128 s kapalı) M 100.2 0.0019531 512 s(256 s açık / 256 s kapalı) M 100.3 0.0009765 1024 s(512 s açık / 512 s kapalı) M 100.4 0.0004882 2048 s(1024 s açık / 1024 s kapalı) M 100.5 0.0002441 4096 s(2048 s açık / 2048 s kapalı) M 100.6 0.000122 8192 s(4096 s açık / 4096 s kapalı) M 100.7 0.000061 16384 s(8192 s açık / 8192 s kapalı) 0.5 s(250 ms açık / 250 ms kapalı) MB 101 Belleği Bitlerinin Sinyal Durumları B-8 Okuma Turu Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 ms Olarak Zaman Değeri 0 1 2 3 4 5 6 7 8 9 10 11 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 250 250 250 250 250 250 250 250 250 250 250 250 250 0 1 0 1 0 1 0 1 0 1 0 1 0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Programlama Örnekleri MB 101 Bit 1 Sinyal Durumu (M 101.1) Frekans = 1/T = 1/1 s = 1 Hz T M 101.1 1 0 Zaman 0 250 ms 0.5 s 0.75 s 1 s 1.25 s 1.5 s S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 B-9 Programlama Örnekleri B.4 Örnek: Sayıcı ve Karşılaştırma Komutları Sayıcı Ve Karşılaştırıcı İle Saklama Alanı Aşağıdaki şema, iki taşıma bantlı bir sistemi ve aralarında bir geçici saklama alanını göstermektedir. Taşıma bantı 1, paketleri saklama alanına taşımaktadır. Taşıma bantı 1'in saklama alanı tarafındaki bir fotoelektrik bariyeri kaç paketin saklama alanına ulaştırıldığını belirler. Taşıma bantı 2, paketleri geçici saklama alanından, kamyonların paketleri alıp müşterilere ulaştırdığı bir yükleme istasyonuna taşır. Taşıma bantı 2'nin saklama alanı tarafındaki bir fotoelektrik kaç paketin saklama alanından çıkıp yükleme alanına doğru yola çıktığını belirler. Beş lambalı bir gösterge paneli, geçici saklama alanının doluluk durumunu gösterir. Gösterge Paneli Saklama alanı boş Saklama alanı boş değil (Q 12.0) Giren paketler (Q 12.1) Saklama alanı 50% dolu (Q 15.2) I 12.0 (Q 15.3) (Q 15.4) Çıkan paketler I 12.1 100 paket için geçici saklama alanı Taşıyıcı bant 1 Taşıyıcı bant 2 Fotoelektrik bariyer 1 B-10 Saklama alanı Saklama alanı 90% dolu Kapasite dolu Fotoelektrik bariyer 2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Programlama Örnekleri Gösterge Panelindeki Lambaları Aktive Eden Merdiven Mantık Programı Devre 1: C1 sayıcısı CU girişindeki her “0” 'dan “1” 'e sinyal değişiminde artar ve her “1” 'den “0” 'a sinyal değişiminde azalır. S girişinde “0” 'dan ”1” 'e bir sinyal değişiminde sayıcı değeri PV değerine atanır. R girişinde “0” 'dan ”1” 'e bir sinyal değişiminde sayıcı değeri "0" 'a resetlenir. MW200, C1'in o andaki sayıcı değerini içerir. Q12.1 "saklama alanı boş değil" ifade eder. C1 I 12.0 Q 12.1 S_CUD CU Q I 12.1 CD I 12.2 S C#10 CV MW210 R CV_BCD MW200 PV I 12.3 Devre 2: Q12.0 "saklama alanı boş" ifade eder. Q 12.1 Q 12.1 Devre 3: Eğer 50, sayıcı değerinden küçük veya eşitse (diğer bir deyişle eğer o andaki sayıcı değeri 50'den büyük veya eşitse), "saklama alanı 50% dolu" gösterge lambası yakılır. CMP <= I 50 IN1 MW210 IN2 Q 15.2 Devre 4: Devre 4: Eğer sayıcı değeri 90'dan büyük veya eşitse, "saklama alanı 90% dolu" gösterge lambası yakılır. CMP >= I MW210 IN1 90 IN2 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Q 15.3 B-11 Programlama Örnekleri Devre 5: Eğer sayıcı değer 100'den büyük veya eşitse, "saklama alanı dolu" gösterge lambası yakılır. Q 15.4 CMP >= I B.5 MW210 IN1 100 IN2 Örnek: Tamsayı Matematiksel Komutları Matematiksel bir problemi çözme Örnek problem, üç tamsayı matematiksel komutunun aşağıdaki denklemle aynı sonucu doğuracak şekilde nasıl kullanılacağını gösterir: MW4 = ((IW0 + DBW3) x 15) / MW0 Merdiven Mantığı Programı Devre 1: DB1 Veri Bloğunu Aç. DB1 OPN Devre 2: IW0 giriş word'ü paylaşılan veri word'ü DBW3'e eklenir (veri bloğu tanımlı ve açık olmalıdır) ve sonuç MW100 bellek word'üne yüklenir. Sonra MW100 15 ile çarpılır ve sonuç MW102 bellek word'ünde saklanır. MW102, MW0'a bölünür ve sonuç MW4'te saklanır. MUL_I ADD_I EN IW0 IN1 DBW3 IN2 B-12 ENO EN MW100 OUT MW100 15 ENO IN1 IN2 DIV_I OUT EN MW102 IN1 MW0 IN2 MW102 ENO OUT MW4 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Programlama Örnekleri B.6 Örnek: Word Mantıksal Komutları Bir Fırını Isıtma Fırının operatörü, başlatma düğmesine basarak ısıtmayı başlatır. Operatör ısıtma süresini şekilde gösterilen döner anahtarla ayarlayabilir. Operatörün ayarladığı değer BCD formatında saniyeleri gösterir. BCD basamaklarını ayarlamak için döner anahtarlar. Fırın 4 Isı Q 4.0 7.... ...0 XXXX 0001 4 7... ...0 1001 IB0 4 0001 IB1 Bitler IW0 Baytlar Başlat basma düğmesi I 0.7 Sistem Bileşeni Mutlak Adres Başlat Basma Düğmesi I 0.7 Birler için döner anahtar Onlar için döner anahtar I 1.0'dan I 1.3'e I 1.4'ten I 1.7'ye Yüzler için döner anahtar Isıtma başlar I 0.0'dan I 0.3'e Q 4.0 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 B-13 Programlama Örnekleri Merdiven Mantığı Programı Devre 1: Eğer zamanlayıcı çalışıyorsa, ısıtıcıyı çalıştır. T1 Q 4.0 Devre 2: Zamanlayıcı çalışıyorsa, Return komutu burada işlemi bitirir. T1 RET Devre 3: Giriş bitlerini I 0.4'den I 0.7'ye kadar maskele (0'a resetle). Döner anahtarların bu bitleri kullanılmaz. Döner anahtar girişlerinin 16 biti W#16#0FFF ile (Word) And Word komutuna göre kombine edilirler. Sonuç bellek word'ü MW1'e yüklenir. Zaman tabanını saniye cinsinden ayarlayabilmek için ön yükleme değeri W#16#2000 ile (Word) Or Word komutuna göre, 13'ten 1'e bitler set ve 12'den 0'a bitler reset edilerek kombine edilir. WAND_W IW0 W#16#FFF EN ENO IN1 OUT IN2 WOR_W MW1 MW1 16#2000 EN ENO IN1 OUT MW2 IN2 Devre 4: Basma düğmesine basılınca T 1 zamanlayıcısını bir ön yükleme değerini MW2 bellek word'ü gibi yükleyerek (yukarıdaki mantıktan türeterek) ek vurum zamanlayıcısını olarak başlat. I 0.7 T1 SE MW2 B-14 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Merdiven Mantığı İle Çalışma C Merdiven Mantığı İle Çalışma C.1 EN/ENO Mekanizması FBD/LAD kutularının imkan ver (EN) ve çıkışa imkan ver (ENO) değerleri BR biti ile alınır. Eğer EN ve ENO düzeltilmişse, aşağıdakiler oluşur: ENO = EN AND NOT (kutu hatası) Hata oluşmazsa (kutu hatası = 0), ENO = EN. EN/ENO mekanizması şunlar için kullanılır: • Matematiksel komutlar, • Aktarım ve dönüştürme komutları, • Öteleme ve dönel öteleme komutları • Blok çağrımları. Bu mekanizma şu amaçlarla kullanılmaz: • Karşılaştırmalar, • Sayıcılar, • Zamanlayıcılar. Kutunun içinde, gerçekte olan komutların etrafında, önceki ve sonraki mantıksal işlemlere bağımlı olarak ek STL komutları da EN/ENO mekanizması için yaratılır. Olası dört durum, bir toplayıcı örneğinde gösterilmiştir: 1. EN ve ENO Bağlı Olan Toplayıcı (Adder) 2. EN Bağlı, ENO Bağlı Olmayan Toplayıcı 3. EN Bağlı Değil, ENO Bağlı Olan Toplayıcı 4. EN ve ENO Bağlı Olmayan Toplayıcı S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 C-1 Merdiven Mantığı İle Çalışma Kendi Bloklarınızı Yaratmanız Üzerine Not Eğer FBD veya LAD içinden çağıracağınız blokları programlamak istiyorsanız, bloktan çıkarken BR bitinin set edildiğinden emin olmalısınız. Dördüncü örnek bunun otomatik olarak oluşan bir durum olmadığını gösterir. BR'yi bir bellek biti olarak kullanamazsınız çünkü EN/ENO mekanizması tarafından sürekli üzerine yazılmaktadır. Bunun yerine, oluşacak hataları saklamak üzere geçici bir değişken kullanın. Bu değişkeni 0 ile önceleyin. Blok içinde başarısız bir komutun tüm blok için hata sonucunu oluşturacağını düşündüğünüz her noktada EN/ENO mekanizmasını kullanarak bu değişkeni set edin. Bir NOT (değil) ve bir SET bobini bu iş için yeterli olacaktır. Blok programının sonunda aşağıdaki devre: end: Bir hata SAVE Bu devrenin her durumda çalıştırılacağından emin olun, yani blok içinde BEC'yi kullanıp bu devreyi atlamamak zorundasınız. C.1.1 EN ve ENO Bağlı Olan Toplayıcı (Adder) Eğer toplayıcıya bir EN ve bir ENO bağlanmışsa, aşağıdaki STL komutları tetiklenir: 1 2 3 4 5 6 7 8 9 10 11 A I 0.0 JNB _001 L in1 L in2 +I T out AN OV SAVE CLR _001: A BR = Q 4.0 // // // // // // // // // // EN bağlantısı RLO'yu BR'ye ötele ve eğer RLO = 0 ise atla Kutu parametresi Kutu parametresi Gerçek toplama Kutu parametresi Hata yakalama Hatayı BR'ye sakla İlk Kontrol BR'yi RLO'ya ötele Takip edersek, 1. satırda RLO bir önceki mantıksal işlemin sonucunu içerir. JNB komutu RLO'yu BR bitine kopyalar ve ilk kontrol bitini set eder. C-2 • Eğer RLO = 0 ise, program 10. satıra atlar ve bir BR ile döner. Toplama çalıştırılmamış olur. 10. satırda BR tekrar RLO'ya kopyalanır ve sonuçta çıkışa 0 atanır. • Eğer RLO = 1 ise, program atlamaz, yani toplama işlenir. 7. satırda program, toplama sırasında bir hata oluşup oluşmadığını bulur ve sonra 8. satırda bu BR'ye saklanır. 9. satır ilk kontrol bitini set eder. Şimdi 10. satırda BR biti tekrar RLO'ya kopyalanır ve böylece çıkış toplamanın başarılı olup olmadığını gösterir. BR biti 10. ve 11. satırlar tarafından değiştirilmez, böylece toplamanın başarılı olup olmadığını gösterir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 Merdiven Mantığı İle Çalışma C.1.2 EN Bağlı, ENO Bağlı Olmayan Toplayıcı Eğer toplayıcıda bir EN var fakat hiçbir ENO bağlı değilse, aşağıdaki STL komutları tetiklenir: 1 2 3 4 5 6 7 A L I 0.0 JNB _001 in1 L in2 +I T _001: NOP out 0 // // // // // // EN bağlantısı RLO'yu BR'ye ötele ve eğer RLO = 0 ise atla Kutu parametresi Kutu parametresi Gerçek toplama Kutu parametresi 1. satırdaki RLO, mantıksal işlemin sonucunu içerir. JNB komutu RLO’yu BR’ye kopyalar ve ilk kontrol bitini set eder. C.1.3 • Eğer RLO = ise, program 7. satıra atlar ve toplama çalıştırılmamış olur. RLO ve BR 0’dır. • Eğer RLO 1 ise, program atlama yapmaz, yani toplama çalıştırılır. Program, toplama sırasında bir hata oluşup oluşmadığını belirlemez. RLO ve BR 1’dir. EN Bağlı Değil, ENO Bağlı Olan Toplayıcı Eğer toplayıcıda EN yok fakat bir ENO bağlı ise, aşağıdaki STL komutları tetiklenir: 1 2 3 4 5 6 7 8 9 L in1 L in2 +I AN T OV SAVE out CLR A = Q BR 4.0 // // // // // // // // Kutu parametresi Kutu parametresi Gerçek toplama Kutu parametresi Hata yakalama Hatayı BR'ye sakla İlk kontrol BR'yi RLO'ya ötele Toplama, her ihtimalde çalıştırılır. 5. satırda program, toplama sırasında bir hata oluşup oluşmadığını belirler ve bu daha sonra 6. satırda BR’de saklanır. 7. satır birince kontrol bitini set eder. Şimdi BR biti, 8. satırda tekrar RLO’ya kopyalanır ve böylece çıkış, toplamanın başarılı olup olmadığını gösterir. BR bit 8. ve 9. satırlar tarafından değiştirilmez, dolayısıyla o da toplamanın başarılı olup olmadığını gösterir. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 C-3 Merdiven Mantığı İle Çalışma C.1.4 EN ve ENO Bağlı Olmayan Toplayıcı Eğer toplayıcıya hiçbir EN ve hiçbir ENO bağlanmamışsa, aşağıdaki STL komutları tetiklenir: 1 2 L 3 4 T 5 L in2 in1 +I out NOP 0 // // // // Kutu parametresi Kutu parametresi Gerçek toplama Kutu parametresi Toplama çalıştırılmış olur. RLO ve BR biti değişmeden kalır. C.2 Parametre Aktarımı Bir bloğun parametreleri bir değer olarak aktarılırlar. İşlev bloklarıyla çalışma veri bloğundaki gerçek parametre değerlerinin bir kopyası çağrılan blokta kullanılır. İşlevlerle birlikte gerçek değerin bir kopyası yerel veri yığınında tutulur. Göstericiler kopyalanmazlar. Çağrımdan önce giriş (INPUT) değerleri çalışma DB'sine veya L yığınına kopyalanırlar. Çağrımdan sonra çıkış (OUTPUT) değerleri tekrar değişkenlere geri kopyalanırlar. Çağrılmış blok dahilinde sadece kopya üzerinde çalışabilirsiniz. Bunun için gereken STL komutları çağıran blokta yer alırlar ve kullanıcıdan saklanmış şekilde dururlar. Not Eğer bir işlevin bellek bitleri, girişler, çıkışlar veya çevre giriş/çıkışları (peripheral I/Os) gerçek adresler olarak kullanılırlarsa, diğer adreslerden farklı şekilde davranılırlar. Bu durumda, güncellemeler dışarıya L yığını üzerinden değil, direkt olarak taşınırlar. İstisna: Eğer karşılık gelen parametre değişkeni BOOL veri tipinde bir giriş parametresiyse, o andaki parametreler L yığını üzerinden güncellenirler. Dikkat Çağrılan bloğu programlarken, çıkış (OUTPUT) olarak bildirilen parametrelerin de yazıldığından emin olun. Aksi halde döndürülen değerler rastgele olur! İşlev blokları ile değer, son çağrımda yazılan çalışma DB'sindeki değer olacaktır; işlevlerle ise değer, L yığınındaki değer olacaktır. Aşağıdakileri noktaları dikkate alın: C-4 • Eğer mümkünse tüm çıkış (OUTPUT) parametrelerine ilk değer verin. • Set ve Reset komutlarını kullanmamaya çalışın. Bu komutlar RLO'ya bağımlıdırlar. Eğer RLO'nun değeri 0 ise, rastgele değer alınacaktır. • Eğer blok içinde atlama yaparsanız, çıkış (OUTPUT) parametrelerinin yazıldığı bir adımı atlamadığınızdan emin olun. BEC'yi ve MCR komutlarının etkisini unutmayın. S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 İndeks İndeks < ( ---( ) ---( # )-----( CD ) --- ( CU ) ---( JMPN ) ---( R ) ---( RET ) ---( S ) ---( SA ) ---( SC ) ---( SD ) ---( SE ) ---( SF ) ---( SI ) ---( SP ) ---( SS ) ---( SV ) ---( SZ ) ---( ZR ) ---( ZV ) ---(Call) ---(JMP)-----(MCR<) ---(MCR>) ---(MCRA) ---(MCRD) ---(N)-----(OPN) ---(P)-----(SAVE) (Word) AND Double Word (Word) AND Word (Word) OR Double Word (Word) OR Word (Word) XOR Double Word (Word) XOR Word 1-6 1-8 4-12 4-10 6-4 1-9 10-20 1-11 13-23 4-9 13-19 13-17, 13-19 13-23 13-15 13-15 13-21 13-17 4-9 4-12 4-10 10-2 6-2, 6-3 10-14 10-16, 10-17 10-18 10-19 1-16 5-1 1-17 1-18 14-4 14-2 14-5 14-3 14-7 14-6 | ---| |-----| |-----| / |----|NOT|-- 12-1 1-2 1-3, 12-1 1-5 <=0 ---| |--<=0 ---| / |--<>0 ---| |--<>0 ---| / |--<0 ---| |--<0 ---| / |--- 12-12 12-12 12-8 12-8 12-10 12-10 = ==0 ---| |--==0 ---| / |--- 12-7 12-7 > >=0 ---| |-->=0 ---| / |-->0 ---| |-->0 ---| / |--- 12-11 12-11 12-9 12-9 A ABS ACOS ADD_DI ADD_I ADD_R Adres Negatif Ayrıt Tespiti Adres Pozitif Ayrıt Tespiti Almanca Simgesellerine Göre Sıralanmış LAD Komutları (SIMATIC) Ana Kontrol Rölesi Aç Ana Kontrol Rölesi Aktive Et Ana Kontrol Rölesi Deaktive Et Ana Kontrol Rölesi Kapat Anlık Okuma Anlık Yazma Ark Kosinüs Değerini Hesapla Ark Sinüs Değerini Hesapla Ark Tanjant Değerini Hesapla ASIN Aşağı Sayıcı Aşağı Sayıcı Bobin ATAN Atlama Komutları S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 8-7 8-16 7-7 7-3 8-3 1-19 1-20 A-5 10-14 10-18 10-19 10-16 1-21, 1-22 1-23, 1-24 8-16 8-15 8-17 8-15 4-7 4-12 8-17 6-5 İndeks B BCD_DI BCD_I BCD'den Double Tamsayıya BCD'den Tamsayıya Bir Zamanlayıcının Bellekteki Yerleşimi ve Zamanlayıcının Bileşenleri Birin Tümleyeni Double Tamsayı Birin Tümleyeni Tamsayı Bit Exclusive OR (Aynıları Dışlayan VEYA) Bitsel Mantık Komutları Genel Bakış Bobinden FC SFC Çağır (Parametresiz) BR ---| |--BR ---| / |--- 3-5 3-2 3-5 3-2 13-2 10-2 Double Tamsayı Topla Double Tamsayıdan BCD'ye Double Tamsayıdan Gerçel Sayıya Double Tamsayıya Yuvarla Double Tamsayıyı Sağa Ötele Double Word'ü Sağa Dönel Ötele Double Word'ü Sağa Ötele Double Word'ü Sola Dönel Ötele Double Word'ü Sola Ötele Dön Dönel Öteleme Komutları Genel Bakış Dönüştürme Komutları Genel Bakış Durum word'ünün bitlerini oluşturma 12-6 12-6 E 3-9 3-8 1-4 1-1 C 10-4 CALL_FB CALL_FC CALL_SFB CALL_SFC CEIL CMP ? D CMP ? I CMP ? R COS Çıkış Bobini Çoklu Çalışma Çağır 10-6 10-8 10-10 3-15 2-3 2-2 2-4 8-13 1-6 10-12 D Değer Ata Değilse Atla DI_BCD DI_REAL DIV_DI DIV_I DIV_R Doğal Logaritmasını Hesapla Double Tamsayı Böl Double Tamsayı Çarp Double Tamsayı Çıkart Double Tamsayı Kalanı Döndür Double Tamsayı Kısmını At 9-1 6-4 3-6 3-7 7-10 7-6 8-6 8-11 7-10 7-9 7-8 7-11 3-14 7-7 3-6 3-7 3-13 11-3 11-13 11-9 11-11 11-7 10-20 11-11 3-1 8-2 Ek Vurum S5 Zamanlayıcı 13-7 Ek Vurum Zamanlayıcı Bobin 13-17 EN Bağlı Değil, ENO Bağlı Olan C-3 Toplayıcı EN Bağlı, ENO Bağlı Olmayan Toplayıcı C-3 EN ve ENO Bağlı Olan Toplayıcı C-2 (Adder) EN ve ENO Bağlı Olmayan Toplayıcı C-4 EN/ENO Mekanizması C-1, C-2 Etiketle 6-5 EXP 8-10 F FLOOR Gecikmeli S5 Zamanlayıcı Gecikmeli Zamanlayıcı Bobin Gecikmesiz S5 Zamanlayıcı Gecikmesiz Zamanlayıcı Bobin Geçersiz İstisna Biti Gerçel Sayı Böl Gerçel Sayı Çarp Gerçel Sayı Çıkart Gerçel Sayı Matematiksel Komutları Gerçel Sayı Matematiksel Komutlarına Genel Bakış Gerçel Sayı Topla Gerçel Sayının Mutlak Değerini Hesapla 3-16 13-9 13-19 13-13 13-23 12-5 8-6 8-5 8-4 8-2 8-1 8-3 8-7 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 İndeks Gerçel Sayıyı Negatif Yap Hafızalı Gecikmeli S5 Zamanlayıcı Hafızalı Gecikmeli Zamanlayıcı Bobin Hat Arası Çıkış 3-12 13-11 13-21 1-8 I I_BCD I_DINT INV_DI INV_I İkinin Tümleyeni Double Tamsayı İkinin Tümleyeni Tamsayı İngilizce Simgesellerine Göre Sıralanmış LAD Komutları (Uluslararası) İstisna Biti İkilik Sonucu İstisna Biti Taşması İstisna Biti Taşması Kaydedildi 3-3 3-4 3-9 3-8 3-11 3-10 A-1 12-6 12-2 12-3 J Kare Kökünü Hesapla Karesini Hesapla Karşılaştırma Komutları Genel Bakış Kosinüs Değerini Hesapla Kutudan FB Çağır Kutudan FC Çağır Kutudan Sistem FB Çağır Kutudan Sistem FC Çağır Kütüphaneden Bir Blok Çağır 8-9 8-8 2-1 8-13 10-4 10-6 10-8 10-10 10-12 L LABEL LN 6-5 8-11 M Mantıksal Kontrol Komutları Genel Bakış MCR İşlevlerinin Kullanımına Dair Önemli Notlar MOD_DI MOVE MUL_DI MUL_I MUL_R 6-1 10-13 7-11 9-2 7-9 7-5 8-5 N NEG NEG_DI NEG_I NEG_R Negatif RLO Ayrıt Tespiti Negatiflenmiş İstisna Biti Geçersiz Negatiflenmiş İstisna Biti İkilik Sonucu Negatiflenmiş İstisna Biti Taşması Negatiflenmiş İstisna Biti Taşması Kaydedildi Negatiflenmiş Sonuç Biti Sıfıra Eşit Negatiflenmiş Sonuç Biti Sıfırdan Büyük Negatiflenmiş Sonuç Biti Sıfırdan Büyük Veya Eşit Negatiflenmiş Sonuç Biti Sıfırdan Farklı Negatiflenmiş Sonuç Biti Sıfırdan Küçük Negatiflenmiş Sonuç Biti Sıfırdan Küçük Veya Eşit Normalde Açık Kontakt (Adres) Normalde Kapalı Kontakt (Adres) 1-19 3-11 3-10 3-12 1-16 12-5 12-6 12-2 12-3 12-7 12-9 12-11 12-8 12-10 12-12 1-2 1-3 O OS ---| |--OS ---| / |--OV ---| |--OV ---| / |--Örnek Bitsel Mantık Komutları Sayıcı ve Karşılaştırma Komutları Tamsayı Matematiksel Komutları Zamanlayıcı Komutları Word Mantıksal Komutları Öteleme Komutları Genel Bakış 12-3 12-3 12-2 12-2 B-2 B-10 B-12 B-6 B-13 11-1 P Parametre Aktarımı POS Pozitif RLO Ayrıt Tespiti Pratikte Uygulamalar Program Kontrol Komutlarına Genel Bakış Programlama Örnekleri Genel Bakış S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01 C-4 1-20 1-17 B-1 10-1 B-1 İndeks R Reset Bobini Reset-Set Flip Flop RLO'yu BR Belleğine Kaydet ROL_DW ROR_DW ROUND RS 1-9 1-12 1-18 11-12 11-13, 11-14 3-13 1-13 S S_AVERZ S_CD S_CU S_CUD S_EVERZ S_IMPULS S_ODT S_ODTS S_OFFDT S_PEXT S_PULSE S_SEVERZ S_VIMP Sayıcı Değeri Ata Sayıcı Komutları Genel Bakış Set Bobini Set-Reset Flip Flop SHL_DW SHL_W SHR_DI SHR_DW SHR_I SHR_W SIN Simgeseller İngilizce (Uluslararası) Almanca (SIMATIC) Sinüs Değerini Hesapla Sonuç Biti Sıfıra Eşit Sonuç Biti Sıfırdan Büyük Sonuç Biti Sıfırdan Büyük Veya Eşit Sonuç Biti Sıfırdan Farklı Sonuç Biti Sıfırdan Küçük Sonuç Biti Sıfırdan Küçük Veya Eşit SQR SQRT SR SUB_DI SUB_I SUB_R Şartlı Atla Şartsız Atla 13-13 4-7 4-5 4-3 13-9 13-5 13-9 13-11 13-13 13-7 13-5 13-11 13-7 4-9 4-1 1-11 1-14 11-8 11-5, 11-6 11-4 11-9, 11-10 11-2, 11-3 11-7 8-12 A-1 A-5 8-12 12-7 12-9 12-11 12-8 12-10 12-12 8-8 8-9 1-14 7-8 7-4 8-4 6-3 6-2 T Taban Tamsayı Böl Tamsayı Çarp Tamsayı Çıkart Tamsayı Matematiksel Komutları Genel Bakış Tamsayı Matematiksel Komutlarını Kullanarak Durum Word'ünün Bitlerini Oluşturma Tamsayı Topla Tamsayıdan BCD'ye Tamsayıdan Double Tamsayıya Tamsayıyı Sağa Ötele TAN Tanjant Değerini Hesapla Tavan Ters Enerji Akışı TRUNC 3-16 7-6 7-5 7-4 7-1 7-2 7-3 3-3 3-4 11-2 8-14 8-14 3-15 1-5 3-14 U UO ---| |--UO ---| / |--Üstel Değerini Hesapla Veri Bloğu Aç DB veya DI Vurum S5 Zamanlayıcı Vurum Zamanlayıcı Bobin 12-5 12-5 8-10 5-1 13-5 13-15 W WAND_DW WAND_W WOR_DW WOR_W Word Mantıksal Komutlarına Genel Bakış Word'ü Sağa Ötele Word'ü Sola Ötele WXOR_DW WXOR_W 14-4 14-2 14-5 14-3 14-1 11-6 11-5 14-7 14-6 X XOR Yukarı Sayıcı Yukarı Sayıcı Bobin Yukarı-Aşağı Sayıcı 1-4 4-5 4-10 4-3 Z Z_RUECK Z_VORW ZÄHLER Zamanlayıcı Komutları Genel Bakış 4-7 4-5 4-3 13-1 S7-300 ve S7-400 Programlama İçin Merdiven Mantığı (Ladder Logic, LAD) A5E00261407-01