8 Farklı Datanın sıralanması sorunu

Utkuknr

Üye
Katılım
4 Mar 2018
Mesajlar
17
Puanları
1
Yaş
29
Konum
Gaziantep-Mersin
Merhaba, harici olarak haberleştiğim CPU'dan aldığım databloktan 8 farklı data alacağım. İstediğim ise gelen dataların öncelik sıralamasına göre sıralamak. Örn: Datalara ( d1,d2,d3,d4,d5,d6,d7,d8),Sıralama(s1,s2,s3,s4,s5,s6,s7,s8) diyelim. Farz edelim ki bana gelen data öncelik sıralaması d3,d2,d6,d7,d8,d1,d4,d5(ilk gelen d3,ikinci d2... gibi ) sıralamanın şu şekilde olmasını istiyorum ;

s1:d3
s2:d2
s3:d6
s4:d7
s5:d8
s6:d1
s7:d4
s8:d5

Ladder diagramla yapmak pek mümkün mü emin değilim ancak SCL ile kolay bir şekilde yapılabilir diye düşünüyorum. Fonksiyon Bloğunun içine yazabileceğim SCL kodlarını yazabilecek olan varsa çok memnun olurum
 
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.
Merhaba.Bir array yapınız ve for döngüsü ile gelen dataları istedğiniz indexe yazdırabilirsiniz.
 
Merhaba, malesef SCL hiç bilmiyorum acaba bahsettiğiniz algoritmayı SCL olarak yazabilir misiniz
 
Kod:
PROGRAM PLC_PRG
VAR
    i: INT;
    s_array : ARRAY[0..10] OF REAL;
    YeniDataGeldi: BOOL;
    YeniData: REAL;
    reset: BOOL;
    j: INT;
END_VAR

Kod:
    IF YeniDataGeldi THEN
       YeniDataGeldi  := FALSE;
       IF i <=10 THEN
           s_array[i] := YeniData;
           i          := i+1;
       END_IF
    END_IF

    IF reset THEN
        reset := 0;
        i     := 0;
        FOR j:=0 TO 10 DO
            s_array[j] := 0;
        END_FOR
    END_IF
 
Son düzenleme:

Forum istatistikleri

Konular
128,189
Mesajlar
915,708
Kullanıcılar
449,957
Son üye
sezercakmak

Yeni konular

Geri
Üst