baybars
Üye
- Katılım
- 16 Nis 2007
- Mesajlar
- 253
- Puanları
- 1
- Yaş
- 40
Merhaba arkadaşlar.
simatic manager da scl de WORD1 isimli word değişkenimin bitlerinin değerini öğrenebileceğim bir komut varmıdır.
yapmaya çalıştığım 0-->15 e kadar her bir biti bir olduğun başka bir bool değişkeni bir yapmak.
codesys de çok kolay yapılan bu uygulama siemens de zorlayıcı nedense.
ne demek istediğimi daha iyi anlatabilmek için codesys örneğini paylaşıyorum ;
FUNCTION_BLOCK W_TO_BIT
VAR_INPUT
WORD1: INT;
END_VAR
VAR_OUTPUT
B0: BOOL;
B1: BOOL;
B2: BOOL;
B3: BOOL; (* *)
B4: BOOL; (* *)
B5: BOOL; (* *)
B6: BOOL; (* *)
B7: BOOL; (* *)
B8: BOOL; (* *)
B9: BOOL; (* *)
B10: BOOL;
B11: BOOL; (* *)
B12: BOOL; (* *)
B13: BOOL; (* *)
B14: BOOL; (* *)
B15: BOOL; (* *)
END_VAR
VAR
END_VAR
(*************************)
B0:= WORD1.8;
B1:= WORD1.9;
B2:= WORD1.10;
B3:= WORD1.11;
B4:= WORD1.12;
B5:= WORD1.13;
B6:= WORD1.14;
B7:= WORD1.15;
B8:= WORD1.0;
B9:= WORD1.1;
B10:= WORD1.2;
B11:= WORD1.3;
B12:= WORD1.4;
B13:= WORD1.5;
B14:= WORD1.6;
B15:= WORD1.7;
simatic manager da scl de WORD1 isimli word değişkenimin bitlerinin değerini öğrenebileceğim bir komut varmıdır.
yapmaya çalıştığım 0-->15 e kadar her bir biti bir olduğun başka bir bool değişkeni bir yapmak.
codesys de çok kolay yapılan bu uygulama siemens de zorlayıcı nedense.
ne demek istediğimi daha iyi anlatabilmek için codesys örneğini paylaşıyorum ;
FUNCTION_BLOCK W_TO_BIT
VAR_INPUT
WORD1: INT;
END_VAR
VAR_OUTPUT
B0: BOOL;
B1: BOOL;
B2: BOOL;
B3: BOOL; (* *)
B4: BOOL; (* *)
B5: BOOL; (* *)
B6: BOOL; (* *)
B7: BOOL; (* *)
B8: BOOL; (* *)
B9: BOOL; (* *)
B10: BOOL;
B11: BOOL; (* *)
B12: BOOL; (* *)
B13: BOOL; (* *)
B14: BOOL; (* *)
B15: BOOL; (* *)
END_VAR
VAR
END_VAR
(*************************)
B0:= WORD1.8;
B1:= WORD1.9;
B2:= WORD1.10;
B3:= WORD1.11;
B4:= WORD1.12;
B5:= WORD1.13;
B6:= WORD1.14;
B7:= WORD1.15;
B8:= WORD1.0;
B9:= WORD1.1;
B10:= WORD1.2;
B11:= WORD1.3;
B12:= WORD1.4;
B13:= WORD1.5;
B14:= WORD1.6;
B15:= WORD1.7;