Зачем?
Может быть просто опрашивать каждый канал отдельным запросом?
Зачем?
Может быть просто опрашивать каждый канал отдельным запросом?
Спасибо.
192 - это константа признака качества GOOD
Спасибо.
Меня смутил знак "~=". Погуглил, понял,что имелось ввиду "!="
Последний раз редактировалось energvk; 12.12.2014 в 16:45. Причина: погуглил)
На языке Lua оператор "Не равно" обозначается как ~=
Спасибо.
Ясно, не вникал ещё в Lua, спасибо.
То есть, как я понял в настройках устройства нужно выставить выполнение скрипта и ,соответственно, в скрипте прописать server.SetCurrentDeviceRetry(2). Только почему то не работает...Настройкой у устройства имелось ввиду сделать количество повторов.
Либо можно получить количество повторов устройства через функцию server.GetCurrentDeviceRetry( );
Не нужно ничего этого делать.
Все это описывалось если вы хотите сделать количество повторов не константой, а изменяемым значением. Если нужно чтобы количество повторов равнялось заданному в устройстве, то просто измените код на:
count=0;
-- Initialization
function OnInit()
end
-- Uninitialization
function OnClose()
end
-- Processing
function OnRead()
val,qual=server.ReadCurrentTag();
if qual~=192 and count<server.GetCurrentDeviceRetry( ) then
server.PollCurrentDevice( );
count=count+1;
end;
end
Спасибо.
Понял) То есть без дополнительного тэга никак.
Последний раз редактировалось energvk; 15.12.2014 в 15:41.
Подскажите, пожалуйста:
Объявляю в конфигурации ПЛК MODBUS TCP Master, создаю в нём несколько тэгов и среди них тэг: 32bit output module
Создаю в Master OPC Server Modbus TCP SLAVE с соответствующим набором тэгов.
Присваиваю 32bit output module в ПЛК значение 16#FFFFFF00 - вижу в сервере правильное значение,
Присваиваю 16#FFFFFF01, значение в сервере не меняется - 16#FFFFFF00, хотя вижу в "запросах" данные передаются корректно.
Присваиваю 16#FFFFFFFF, значение в сервере 0.
Меняю в сервере свойство тэга "тип данных в сервере" с UINT32 на DOUBLE и всё становится хорошо.
Вопрос: почему не работает тип данных в устройстве UINT32 = в сервере UINT32 - для тэга ПЛК 32bit output module ?
Напильник, велосипед, бубен, грабли и костыли - основные инструменты программиста.
Ошибка проявилась.
Ошибка будет исправлена в следующей версии (3.1.3)
Спасибо.