S7200 DE BİT MANTIĞI NASIL KURARIM

tekinyaz

Üye
Katılım
6 Şub 2008
Mesajlar
3
Puanları
1
Yaş
40
Merhaba Arkadaşlar,

Ben panelden girdiğim herhangi bir sayının bayt karşılığını fiziksel çıkışlara nasıl atarım. Aslında yapmak istediğim 4 adet çıkışla 12 olasılık yapmak istiyorum. Bunu uzun uzun yazabilirim atıyorum değer 5 ise Q0.1 VE Q0.2 yi aktif et buysa bunları vs. Ama bunu daha kısa yoldan nasıl yapabilirim?

Teşekkürler..
 
Network 1

LD I0.0
MOVB VB0, QB0

ladder a çevirip de bakabilirsin.
ayrıca tam oalrak ne yapmak istediğini detaylı anlatırsan farklı daha pratik daha sağlam yolalrda bulabilriiz buradan ..
 
tam olarak 4 çıkış ile 12 olasılık yapmak istiyorum. Yani panelden yapılan seçime göre örneğin 1. olasılık tüm çıkışlar 0, 2. olasılık Q0.1 1 diğerleri 0, 3. olasılık Q0.1 ve Q0.2 1 diğerleri 0 vs. bunu kısa yoldan nasıl yapabilirim.
 
Sanırım 4 girişin durumuna göre 12 çıkışı kontrol etmek istiyorsun ve aslında bunu nasıl yapacağınıda biliyorsun. Ama olasılıkları yazmadan (her olasılık için giriş kontaklarını kullanmadan) nasıl yaparım diye soruyorsun.
Eğer doğru anladımsa, bildiğim kadarı ile bu cihazların altıncı hissi yok... :)
 
Ben arkadaşın nedemek istediğini anladım galiba. 4 cıkısla max.15 kontrol yapabilirsin. Yada başka bir deyişle , max. 15 farklı sayıyı veya değişkeni 4 cıkışa atıyabilirsin.
1-2-4-8 ( ikili sistemi kullanarak)
 
EK'teki komutu kullanarak Op den girdiğin integer sayıyıyı direkt çıkışlara atabilirsin, yalnız çıkışta 1 Byte lık yani 8 bit harcarsın bunu önlemek için ara bir değişken kullanıp o değişkenin bitlerini istedigin durum sayısınca(4 bit istiyorsun anladığım kadarıyla) maskelemen gerekecek.
Op --- Çıkışlar(Q0.7..Q0.0)
1 --- 0000 0001
2 --- 0000 0010
3 --- 0000 0011
4 --- 0000 0100
5 --- 0000 0101
6 --- 0000 0110
7 --- 0000 0111
8 --- 0000 1000
9 --- 0000 1001
10 ---0000 1010
11 ---0000 1011
12 ---0000 1100
 

Ekli dosyalar

  • IntegerToByte.JPG
    IntegerToByte.JPG
    10.3 KB · Görüntüleme: 33
Son düzenleme:
EK'teki komutu kullanarak Op den girdiğin integer sayıyıyı direkt çıkışlara atabilirsin, yalnız çıkışta 1 Byte lık yani 8 bit harcarsın bunu önlemek için ara bir değişken kullanıp o değişkenin bitlerini istedigin durum sayısınca(4 bit istiyorsun anladığım kadarıyla) maskelemen gerekecek.
Op --- Çıkışlar(Q0.7..Q0.0)
1 --- 0000 0001
2 --- 0000 0010
3 --- 0000 0011
4 --- 0000 0100
5 --- 0000 0101
6 --- 0000 0110
7 --- 0000 0111
8 --- 0000 1000

Evet dediğim bu. 12 ye kadar tamamlıyalım eksik kalmasın. Ben bunu genelde inputlarda sayı olarak sıkıntı varsa kullanırdım. :))

Op --- Çıkışlar(Q0.7..Q0.0)
1 --- 0000 0001
2 --- 0000 0010
3 --- 0000 0011
4 --- 0000 0100
5 --- 0000 0101
6 --- 0000 0110
7 --- 0000 0111
8 --- 0000 1000
9 --- 0000 1001
10 --- 0000 1010
11 --- 0000 1011
12 --- 0000 1100
13 --- 0000 1101
14 --- 0000 1110
15 --- 0000 1111 ( 4 Output için max. 15)
 
yapmak istediğiniz anladığım kadarıyla bu şekilde bir şey

Network 1 // Network Title
// Network Comment
LDW= VW10, 1
= M0.0
Network 2
LDW= VW10, 2
= M0.1
Network 3
LDW= VW10, 3
= M0.2
Network 4
LDW= VW10, 4
= M0.3
Network 5
LDW= VW10, 5
= M0.4
Network 6
LDW= VW10, 6
= M0.5
Network 7
LDW= VW10, 7
= M0.6
Network 8
LDW= VW10, 8
= M0.7
Network 9
LDW= VW10, 9
= M1.0
Network 10
LDW= VW10, 10
= M1.1
Network 11
LDW= VW10, 11
= M1.2
Network 12
LDW= VW10, 12
= M1.3
Network 13
LD M0.0
O M0.2
O M0.4
O M0.6
O M1.0
O M1.2
= Q0.0
Network 14
LD M0.1
O M0.2
O M0.5
O M0.6
O M1.1
O M1.2
= Q0.1
Network 15
LD M0.3
O M0.4
O M0.5
O M0.6
O M1.3
= Q0.2
Network 16
LD M0.7
O M1.0
O M1.1
O M1.2
O M1.3
= Q0.3
 
Son dört biti(Q0.3-Q0.0) göstermek için aklımdaki Ek'teki çözüm...
 

Ekli dosyalar

  • IntegerToByte.JPG
    IntegerToByte.JPG
    21.8 KB · Görüntüleme: 39
Sn elektronikmuh. resimdeki gibi olur değil mi? (tabii move lar gereksiz o değerler panelden gelecek)
 

Ekli dosyalar

  • 1111.jpg
    1111.jpg
    58.4 KB · Görüntüleme: 43
  • 1112.jpg
    1112.jpg
    26.7 KB · Görüntüleme: 19

Forum istatistikleri

Konular
130,059
Mesajlar
932,624
Kullanıcılar
453,039
Son üye
mertşahin44

Yeni konular

Geri
Üst