Ardışık data adreslerini taşıma sorunu...

huh

Profesyonel Üye
Katılım
10 Şub 2007
Mesajlar
1,523
Puanları
281
S7-1200 için;

MW0- MW2- MW4- MW6- MW8 şeklinde sıralı 5 adet WORD büyüklüğündeki datayı,

datablock içerisindeki

veri[0]- veri[1]- veri[2]- veri[3]- veri[4] şeklinde sıralı beş adet değişkene atamak istiyorum.

MOVE komutunu beş kez kullanmak zorunda kalmadan tek bir komut ile taşıyabileceğim bir komut var mı?

MOVE_BLK ve MOVE_BLK_VARIANT komutlarını denedim ancak başaramadım.
 
KNX Standardı, küçük bir rezidansın içerisindeki aydınlatma, perde panjur, klima kontrolünden, Dünya’nın en büyük havalimanlarındaki aydınlatma otomasyonu gibi çözümler için tercih edilen bir Dünya standardıdır.
Yazımızda endüstrinin can damarı sayılabilecek PLC’yi inceleyeceğiz.
ladder da yazıyorsun sanırım bir scl satırı aç
veri1:=mw0
veri2:=mw1...
gibi yazarbilirsin "veriler int tipinde olmalı "
 
SCATTER komutu var word tipindeki değişkeni çıkış olarak oluşturduğun db içerisindeki ARARRAY[0...15]BOOL olarak transfer ediyor aynı şekilde GATHER komutu var buda tam tersi olarak çalışıyor help kısmından inceliyebilirsin
 
İhtiyaç duyduğum komutlar bunlar değil sanırım.
Ayrıca daha WORD datayı girer girmez resimlerdeki gibi uyarı çıkıyor.

Komutlar için yardım menüsünde şu bilgi verilmiş.

SCATTER
"Bit dizisini ayrı bitlere ayrıştır" komutu, BYTE, WORD, DWORD veya LWORD veri tipinin bir etiketini ayrı bitlere ayrıştırır ve bunları bir BOOL DİZİSİ, anonim bir STRUCT veya yalnızca Boole öğeleriyle bir PLC veri türünde kaydeder. "

GATTER
Ayrı bitleri bir bit dizisinde birleştir" komutu, BOOL ARRAY, anonim STRUCT veya yalnızca Boole öğeleriyle bir PLC veri türündeki bitleri bir bit dizisi halinde birleştirir. Bit dizisi, BYTE, WORD, DWORD veya LWORD veri türünün bir etiketine kaydedilir.
 

Ekli dosyalar

  • tia.jpg
    tia.jpg
    35.9 KB · Görüntüleme: 15
PHP:
j := 0;
FOR i := 0 TO 8  BY 2 DO
  veri[ j ] := MW[ i ];
  j         := j+1;
END_FOR;
 
Son düzenleme:

Forum istatistikleri

Konular
128,273
Mesajlar
916,375
Kullanıcılar
450,098
Son üye
akaremir31
Geri
Üst