30.21 - S7-200 PLC LERĐN PPI MASTER MODUNDA BĐRBĐRLERĐ ĐLE HABERLEŞMESĐ : Aşağıdaki 9 pinli d-sub bağlantısı yapılarak ( 1-2-3-7-8 ) RS-485 üzerinden 16 baytlık bilgiyi 24 ayrı operasyon ile ağa yazıp-okuma işlemi, 2 ile 126 dahil istasyon numaraları arasındaki plc lere kurulum sihirbazını kullanarak yaptırılabilir. Microwin32 3.2 versiyon ve üstü yazılım versiyonlarında instruction wizard düğmesiyle açılan netr/netw tıklandığında diyalog kutuları kolaylıkla doldurulup onaylandığında sihirbaz size konfigürasyonu, altprogramı, veri alanlarını oluşturur. 1 2 3 4 5 6 7 7 9 Đki PLC yi kendi aralarında haberleştirebilmek için haberleşme wizard ını oluşturmanız gerekmektedir. Bu işlem için tools menüsünden Instrucion Wizard seçeneğini tıklamalısınız. Instrucion Wizard tıklandığında aşağıdki pencere ekrana gelir. Bu pencereden NETR/NETW (ağ okuma / ağ yazma) seçeneğini tıkladıktan sonra Next ikonunu tıklayınız. 497
Next ikonu tıklandığıda aşağıdaki pencere ekrana gelir. Burada iletişim ağında kaç operasyon konfigüre etmek istiyorsunuz sorusu sorulmaktadır. Siz aşağıda yapacağımız örnek için 1 rakamını seçmelisiniz. Bu sayı yapacağınız operasyon sayısı ile değişmektedir. Next ikonunu tıklayınız. Next ikonunu tıkladığınızda aşağıdaki pencere ekrana gelir. Bu pencerede haberleşme için PLC nin hangi portunu kullanacağınız sorulmakadır. CPU 226 lar da port 0 ve port 1 bu - lunmaktadır. CPU nun özelliğine göre seçiminizi 0 veya 1 olarak yapınız ve Next ikonunu tıklayınız. NET_EXE bölümüne siz haberleşme yazabilirsiniz. 498
Next ikonunu tıkladığınızda aşağıdaki pencere ekrana gelir. Burada NETR (ağ okuma) için Local PLC adresi 2 ve Remote PLC adresi 3 olmalıdır. Eğer haberleşecek olan PLC sayısı 2 den fazla ise Remote adres 3 ten sonra 4 5 6 şeklinde olabilir. Adresleme konusu sayfa 89 da gösterilmiştir. NETR seçeneğinin altında uzak PLC den kaç bayt lık bilgi alışverişi sağlanağı sorulmaktadır. Bu değer 1 ile 16 arasındadır. Biz örneğimizde 1 bayt lık bilgi akışı sağlayacağımızdan bu değer 1 olmalıdır. Local PLC istasynu 2 nolu istasyon olup 3 nolu istasyondaki REMOTE PLC den 0 nolu giriş baytını(ib0) okumalı ve bu bilgileri kendi üzerindeki çıkış baytına yazmalı (aktarmalı)dır. 499
Next ikonunu tıkladığınızda aşağıdaki pencere açılır. Instrucion Wizard programı 11 baytlık bir alan işgal ettiğinden projenizde kullanmadığınız VB alanlarını Wizard için rezerve edebilirsiniz. Burada suggest address ikonuna her tıklayışınızda rezerve edeceğiniz VB alanı değişmektedir. Size uygun olan VB alanını kullanınız. Burada örnek olarak VB 60 VB 70 alanları kullanılmıştır. Next ikonunu tıkladığınızda aşağıdaki pencere açılır. Bu ekranda Finish ikonunu tıklayarak Wizard işlemini bitirmiş olursunuz. 500
Local plc 2 nolu istasyondur. Remote plc den ( 3 istasyon nolu), 0.Giriş baytını okuyacak ve bu bilgiyi kendi üzerindeki 0.çıkış baytına aktaracaktır. Her iki plc nin sistem bloklarından istasyon adresleri düzenlenip programlar yüklenecektir. Kilitli NET_EXE bloğunda Timeout: 0 haberleşme zamanı önemsiz. ( Saniye cinsinden sayılmıyor.) Cycle: Döngü var biti Error: Hata var biti Local PLC için program : Next _ EXE komut kutusu için Call subroutines den Next_EXE tıklanmalıdır. Remote PLC için program : Bu programı ayrı bir Micro WIN32 açıp remote PLC ye yüklemeniz gerekmektedir. Bu yazılımda uzak (remote) PLC nin girişleri Remote PLC ye yazılır ve Local (yakın) PLC tarafından okunarak kendi (local PLC nin) çıkışına aktarılır. Đletişim için sistem blok açılarak PLC adresi 3 yapılmalıdır. 501
Okuma ve yazma komutları : Đletişim ağından oku : Đletişim ağına yaz: EN NETR OPERANTLAR : EN NETW OPERANTLAR : ENO TABLE : VB, MB, *VD, *AC ENO TABLE : VB, MB, *VD, *AC TABLE PORT PORT : 0, 1 (1 iki portlu PLC ler için kullanılabilir. CPU 226 ve 226XM de 1 portu vardır TABLE PORT NETR açıklama : Bu komut kutusu, tablodaki açıklamalara göre belirli bir port u (PORT 0 veya PORT1) kullanarak bir iletişim ağındaki cihazdan tabloda tanımlandığı şekilde bilgi okur. NETR komut kutusu ile okunabilecek; NETW ile okunabilecek veri 16 bayt tır. Programınızda kullanabileceğiniz Network oku ve yaz komutlarının bir sınırı yoktur. Ancak bir seferde toplam en fazla 8 NETR veya NETW komut kutusu çalıştırılabilir. Örneğin : 2 NETR ve 6 NETW ya da 4 NETR ve 4 NETW gibi NETW açıklama : Bu komut kutusu, tablodaki açıklamalara göre belirli bir port u (PORT 0 veya PORT1) kullanarak bir iletişim ağındaki cihaza veri aktarır. NETR komut kutusu ile okunabilecek; NETW ile okunabilecek veri 16 bayt tır. Programınızda kullanabileceğiniz Network oku ve yaz komutlarının bir sınırı yoktur. Ancak bir seferde toplam en fazla 8 NETR veya NETW komut kutusu çalıştırılabilir. Örneğin : 2 NETR ve 6 NETW ya da 4 NETR ve 4 NETW gibi Aşağıda TBL parametresiyle belirlenen tablonun açılımı ve hata kodları görülmektedir. D : Bitti yani işlem tamamlandı. 0= bitmedi 1= bitti A : Aktif (işlem devam ediyor). 0= akif değil 1= aktif E : Hata (Đşlem hatayla sonuçlandı) 0= hata yok 1= hata var 7 0 PORT : 0, 1 (1 iki portlu PLC ler için kullanılabilir. CPU 226 ve 226XM de 1 portu vardır 0 1 2 3 4 5 6 7 8 22 D A E 0 Hata kodu Uzak istasyon adresi Uzak istasyondaki veri alanına pointer (I,Q, M veya V) Veri uzunluğu Data bayt 0 Data bayt 1 Data bayt 15 1- Uzak istasyon adresi : Erişilecek PLC in adresi 2 5 -uzak istasyondaki veri alanına pointer : Ulaşılacak veri alanı için endirekt bir pointer 6 Veri uzunluğu : uzak istasyonda erişilecek verinin bayt olarak uzunluğu (1 16 bayt) 7..22 Alım veya iletim veri alanı : 1 ile 16 bayt lık alan. NETR (oku) : için bu alan, uzak istasyondan okunacak verilerin yazılacağı rezerve yerdir. NETW (yaz): için bu alana uzak istasyona gönderilecek veriler burada bulunmalıdır ve komut çalıştırılmadan önce yerleştirilmelidir 502
Hata kodu : Açıklama : 0 Hata yok 1 Zaman aşımı hatası 2 Alım hatası; yanıtta,çerçeve veya checksum hatası 3 Offline hatası; çift tanımlanan adresler veya hatalı donanım nedeniyle veriler çarpıştı 4 Görev aşımı hatası; 8 den fazla NETR/NETW kutusu çalıştırılmış 5 Protokol ihlali; SMB30 da PPI/Master ayarı yapılmadan NETRNETW çalıştırılmış. 6 Geçersiz parametre ; NETR/NETW tablosu geçersiz değer içeriyor. 7 Kaynak yok; Uzak istasyon meşgul (yükleme ve okuma işlemi yapılıyor) 8 Seviye 7 hatası ; uygulama protokolu ihlali. 9 Mesaj hatası; Yanlış veri adresi veya geçersi veri uzunluğu. A ile F kullanılmıyor (rezerve) Aşağıda NETR/NETW (network oku / network yaz) komutlarının uygulaması ile ilgili bir örnek verilmiştir. Bu örnekte; kaplar gıda maddesi (örneğin margarin)ile doldurulmakta ve dört kutulama makinasından birine gönderilmektedir. Makina,8 kabı bir koliye paketlemek lemektedir. Bir dağıtıcı makina gıda maddesi (margarin) kaplarıyla paketleme makinaları arasındaki akışı kontrol etmektedir. Dört adet S7-200 PLC paketleme makinalarını ve bir adet S7-200 PLC ve ona bağlı bir TD 200 de dağıtıcı makinaya kumanda etmektedir. paketleme # 1 istasyon 2 paketleme # 2 istasyon 3 paketleme # 3 istasyon 4 paketleme # 4 istasyon 5 Dağıtıcı istasyon istasyon 6 TD 200 istasyonu VW201 durum VW201 durum VW201 durum VW201 durum VB300 Alım alanı VB400 Đletim alanı VB201 VB202 f e e e o g b t Paketlenen kutu sayısı Durum MSB LSB VB300 VB310 VB320 Đstasyon 2 alanı Đstasyon 3 alanı Đstasyon 4 alanı VB400 VB410 VB420 Đst.2 iletim alanı Đst.3 iletim alanı Đst.4 Đletim alanı t= Kap eksik b= kutu eksik g= zamk eksik f= hata göstergesi eee= Hata kodu VB330 Đstasyon 5 alanı VB430 Đst.5 Đletim alanı Yukarıdaki şekilde istasyon 2 ye erişim sırasında kullanılan alım alanı (VB300) ve iletim alanı (VB400) olarak görülmektedir. S7-200 Network oku komutu ile her bir paketleme sisteminden durum ve kontrol bilgilerini sürekli olarak okumaktadır. Her bir paketleme makinasının 50 koli paketlediği her durumda dağıtıcı bunu not eder ve durum Word nün silinmesi için Network yaz komutuyla bu bilgi gönderilir. 503
Paketleme makinası # 1 den okumak için alım alanı paketleme makinesı # 1 in sayımını silmek için iletim alanı 7 0 7 0 VB300 D A E 0 Hata kodu VB400 D A E 0 Hata kodu VB301 Uzak istasyon adresi = 2 VB401 Uzak istasyon adresi = 2 VB302 Uzak istasyon VB402 Uzak istasyon VB303 Verisine VB403 Verisine VB304 erişim VB404 erişim VB305 Đçin pointer = (&) VB405 Đçin pointer = (&VB201) VB306 Veri uzunluğu = 3 bayt VB406 Veri uzunluğu = 2 bayt VB307 VB407 0 VB308 Durumu (MSB) VB408 0 Durumu (LSB) Network oku ve Network yaz komutları : Network 1 : Đlk taramada, PPI master moduna geç ve alım ve iletim alanlarını sıfırla. LD SM0.1 MOVB 2, SMB30 FILL +0, VW300, 68 Network 2 : // NETR bitti biti (V300.7 set olunca), // ve 50 koli paketlenince: // 1.paketleme makinası #1 in adresini yükle. // 2. uzak istasyon verisi için pointer yükle. 3. iletilecek veri uzunluğunu yükle. //4. iletilecek veriyi yükle. //5. paketleme makinası # 1 in kutu sayısını resetle LD V300.7 AW= VW308, +50 MOVB 2, VB401 MOVD &VB201, VD402 MOVB 2, VB406 MOVW +0, VW407 NETW VB400, 0 504
Network 2 nin devamı : Network 3 : // NETR bit i set olunca paketleme makinesı #1 in bilgileri kaydedelir. LDN SM0.1 AN V300.5 AN V300.6 LD V300.7 MOVB VB307, VB500 Network 4 : // Eğer ilk tarama değilse ve hata yoksa: // 1. paketleme makinesı #1 in adresini yükle. // 2. uzak istasyon adresini gösteren pointer yükle. // 3. Alınacak veri uzunluğunu yükle. // 4. Paketleme makinası #1 in kontrol ve durum bilgisini oku. AN V300.5 AN V300.6 MOVB 2, VB301 MOVD &, VD302 MOVB 3, VB306 NETR VB300, 0 505