Siemens (6ES7241-1AA22-0XA0) SIMATIC S7-200 Bilgisayarlarda Kullanılan Haberleşme Ara Birim Cihazları
Karakterler Karakterler
Mesaj başlangıcı: Zaman- Mesaj zaman aşımı:
layıcı çalışmaya başlar Mesaj alımı sonlandırılır ve mesaj alım interruptı
oluşturulur
Resim 6–12 Mesaj Zaman Aşımının Al Komutunu Sonlandırmak için Kullanılması
4. Maksimum karakter sayısı: Her durumda Al komutuna alınacak maksimum karakter sayısı SMB94
veya SMB194 ile bildirilmelidir. Alınan karakter sayısı bu değere eşit olur veya aşar ise mesaj alımı
sonlandırılır. Alım işleminin kesilmesi istenmese bile buraya bir değer girilmelidir, aksi taktirde
alınan baytlar kullanıcının tanımlanan alım alanının hemen sonrasındaki verilerinin üzerine
yazılabilir.
Maksimum karakter sayısıyla iletişimin sonlandırılması yöntemi, alınacak mesaj uzunluğunun sabit
olduğu durumlar için uygundur. Yöntem, bitiş karakteri saptama, karakterler arası zaman aşımı
veya mesaj zaman aşımı ile birlikte kullanılabilir.
5. Parite hataları: Donanım, bir parite hatası saptarsa alım işlemi otomatik olarak sonlanır. Ancak,
SMB30 veya SMB130’da parite seçimi yapılmış olmalıdır. Seçildikten sonra bu fonksiyonun verdiği
hatalar ihmal edilemez, zira donanımdan (örneğin iletişim kablosunda parazitten) kaynaklanan
geçersiz bilgi alımı sözkonusudur.
6. Kullanıcı talebi ile: Kullanıcı, yürürlükte olan alma işlemini SMB87 veya SMB187’de yer alan EN
bitini kullanarak yeni bir alma işlemi ile sonlandırabilir. Bu durumda mesaj alma fonksiyonu anında
sonlanır (ve yeni alım işlemine geçilir).
Veri Alımında İnterrupt’ın Kullanımı
Mutlaka gerekli olmamakla beraber bazı protokollerde Al komutunu hiç kullanmadan karakter alım
interrupt’ı da kullanmanız gerekebilir. S7-200, bu amaçla her karakter alımında bir interrupt oluşturma
yeteneğine sahip olarak donatılmıştır. İlişkilendirilen interrupt altprogramına sıçranmadan önce alınan
karakter SMB2’ye yerleştirilir ve (eğer seçildiyse) parite durumu SM3.0’da yer alır. SMB2, freeport
modundaki karakter alım alanıdır. Freeport konumunda alınan her bir karaktere (ancak bir anda sadece
bir karakter olmak üzere) buradan da erişilebilir. SMB3, yine freeport modunda kullanılır ve sıfırıncı bit,
alınan karakterde parite hatası olup olmadığını gösterir. Bu biti kullanarak alınan karakteri geçersiz
saymanız veya mesajın hatalı olduğunu belirtmeniz mümkündür. SMB3’deki diğer bitler rezervedir.
Yüksek iletişim hızlarında (38.4 kbaud ila 115.2 kbaud), interrupt’lar arası zaman çok kısadır. Örneğin,
38.4 kbaud için bu değer 260 mikrosaniye, 57.6 kbaud için 173 mikrosaniye ve 115.2 kbaud için
86 mikrosaniyedir. İnterrupt altprogramının taranması için gereken süre bu sürelerden uzun ise Al
komutunu kullanın, aksi taktirde bazı karakterlerin alınması mümkün olmayabilir.
Bilgi Notu
İki portlu cihazların her iki portunun da freeport mesaj alımı için kullanılması durumunda şunları dikkate
alınız:
SMB2 ve SMB3, Port 0 ve Port 1 tarafından ortak olarak kullanılır. İnterrupt olgusu 8 gerçekleştiğinde
port 0’dan veri alınmış demektir. Bu durumda SMB2’deki değer port 0’dan alınan değeri ve SMB3 de bu
alımla ilgili pariteyi gösterir. İnterrupt olgusu 25 gerçekleştiğinde ise, port 1’den alım vardır, ama yine de
alınan değer SMB2’den, parite SMB3’den okunacaktır.
85