1. sayfa (Toplam 1 sayfa)

Bit'in Durumuna Göre Farklı Bir Biti ON/OFF Yapma

Gönderilme zamanı: 25 Ara 2020, 04:05
gönderen gurkan.ozdem
Merhaba,

İki adet Push butonum mevcut, ilki ile PLC'nin M405 ine diğeriylede M406 sına lojik 0-1 verilerini yazıyorum. Ancak bu verilerin PLC ye gönderilmeden önce ekran üzerinde M9, M12 ve M2 bitlerinin üçününde lojik durumlarını ve/and(&&) mantığı ile lojik-1 olduklarını doğruladıktan sonra gönderilmesini sağlamak istiyorum ve M405 veya M406 tuşlarından herhangi birine bastığımda M9, M12 ve M2 bitlerinden herhangi biri lojik-0 ise bir Popup sayfasında bu M9, M12 ve M2 bitlerinin lojik 0/1 durumlarını gözlemlemek istiyorum bunu nasıl yapabilirim?

İyi çalışmalar dilerim.

ÖRNEK;
M405 'e basıldı ancak M9 biti lojik-0 o zaman bir popup sayfası açıldı ve M9, M2 ve M12 bitlerinin durumu gözlendi
M9 = OFF
M12 = ON
M2 = ON
Hepsi ON olduğu zaman
Geri dön tuşuna basıldı ve tekrardan M405 push butonuna basılıp PLC ye lojik-1 verisi gönderildi.

Re: Bit'in Durumuna Göre Farklı Bir Biti ON/OFF Yapma

Gönderilme zamanı: 25 Ara 2020, 09:53
gönderen Turhan
Merhaba,

Bu işlemi birden farklı yöntem ile gerçekleştirebilirsiniz. Mesajınızı yorumladığım kadarı benim önerim şu şekilde olabilir.

HMI'da sayfa kontrol datası'nın D0 olduğunu varsayalım. ve M2, M9 ve M12 bit adreslerini $0 datasına binary olarak taşırsak aynı zamanda bu bitler aktif ise $10 datası 1+2+4=7 sayısına eşit olacaktır.

$0.0 gibi boş bir yazma adresli butona basıldığında butonun on makrosu çalışacak ve eğer $10 datasının durumu 7'ye eşit ise M392 biti set edilecek, değil ise D0 datasına 2 sayısı gönderilerek 2 numaralı sayfa(altsayfa no) açılacaktır.

Kod: Tümünü seç

#Bit durumlarını $10 datasına taşıma
$10.0 = GETB ({Link2}1@M2)
$10.1 = GETB ({Link2}1@M9)
$10.2 = GETB ({Link2}1@M12)

#$10 Datasını karşılaştırma

IF $10 == 7
BITON ({Link2}1@M392)
ELSE
({Link2}1@D0) = 2
ENDIF
END
.

Re: Bit'in Durumuna Göre Farklı Bir Biti ON/OFF Yapma

Gönderilme zamanı: 25 Ara 2020, 12:18
gönderen gurkan.ozdem
Turhan yazdı: 25 Ara 2020, 09:53 Merhaba,

Bu işlemi birden farklı yöntem ile gerçekleştirebilirsiniz. Mesajınızı yorumladığım kadarı benim önerim şu şekilde olabilir.

HMI'da sayfa kontrol datası'nın D0 olduğunu varsayalım. ve M2, M9 ve M12 bit adreslerini $0 datasına binary olarak taşırsak aynı zamanda bu bitler aktif ise $10 datası 1+2+4=7 sayısına eşit olacaktır.

$0.0 gibi boş bir yazma adresli butona basıldığında butonun on makrosu çalışacak ve eğer $10 datasının durumu 7'ye eşit ise M392 biti set edilecek, değil ise D0 datasına 2 sayısı gönderilerek 2 numaralı sayfa(altsayfa no) açılacaktır.

Kod: Tümünü seç

#Bit durumlarını $10 datasına taşıma
$10.0 = GETB ({Link2}1@M2)
$10.1 = GETB ({Link2}1@M9)
$10.2 = GETB ({Link2}1@M12)

#$10 Datasını karşılaştırma

IF $10 == 7
BITON ({Link2}1@M392)
ELSE
({Link2}1@D0) = 2
ENDIF
END
.
Merhaba, Turhan bey

Yorumunuz doğrudur, istediğim çalışma şekli yazdığınız gibidir. Yardımlarınız için çok teşekkür ediyorum. İyi çalışmalar dilerim.