Alexor | Date: Wednesday, 28.05.2014, 11:09 | Message # 1 |
Major general
Group: Administrators
Messages: 311
Status: Offline
| Binary.Logic
|
|
| |
denzhig | Date: Wednesday, 28.05.2014, 11:09 | Message # 2 |
Lieutenant
Group: Users
Messages: 46
Status: Offline
| Вечер добрый. Что-то не могу разобраться с последней версией: 1. создаю соединение с PLCSIM, в нём создаю байтовую переменную (item7). 2. в этой переменной у меня моргает один бит, хочу его выделить и вывести на панель, создаю внутреннюю булевую переменную flash_bit. 3. для этого создаю внутренний байт (bit_6), записываю в него 64 (нужно выделить 6-ой бит). 4. создаю сим.объект, бинарная логика: Input1=item7, Input2=bit_6, операция "AND", Value=flash_bit. Вроде бы должно работать, но нет. В PLCSIM-е бит моргает, в item7 бит моргает, а в сим.объекте и переменной flash_bit - не моргает.
|
|
| |
Alexor | Date: Wednesday, 28.05.2014, 11:09 | Message # 3 |
Major general
Group: Administrators
Messages: 311
Status: Offline
| Здравствуйте,
Дело в том, что объект Binary.Logic на входе принимает только bool. Если туда передать, например, byte, то он будет считать всё что >0 как true, а всё что =0 как false. Если у вас в item7 есть ещё биты которые true постоянно, то результат будет всегда true. Соответственно если (item7 > 0) AND (64 > 0) будет всегда true.
Могу предложить два варианта решения: 1) Считать бит из PLCSIM, а не byte. 2) Использовать Script.CSharp с таким кодом: 'Internal.flash_bit' = ((byte)'PLCSIM.item7' & 64) > 0; В настройках скрипта установите Trigger Time = 1, так будет быстрее.
Вообще я подумаю над вашим применением объекта Binary.Logic. Может имеет смысл его модифицировать, ну или сделать новый тип объекта … посмотрим.
|
|
| |
denzhig | Date: Wednesday, 28.05.2014, 11:09 | Message # 4 |
Lieutenant
Group: Users
Messages: 46
Status: Offline
| собственно сделал так из-за соображений уменьшения объёма данных, читаемых из PLCSIM: вместо 8 переменных (как я понимаю каждая отдельно запрашивается) читается одна.
|
|
| |
Alexor | Date: Wednesday, 28.05.2014, 15:06 | Message # 5 |
Major general
Group: Administrators
Messages: 311
Status: Offline
| Да, всё так и есть - каждая запрашивается отдельно. ... В новой версии (2.0.5263) добавил чтений Q и запись I массивом.
|
|
| |