Страница 18 из 111 ПерваяПервая ... 816171819202868 ... ПоследняяПоследняя
Показано с 171 по 180 из 1123

Тема: Modbus Universal MasterOPC Server новый OPC сервер от компании ИнСАТ

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Зачем?
    Может быть просто опрашивать каждый канал отдельным запросом?
    Спасибо.

  2. #2

    По умолчанию

    192 - это константа признака качества GOOD
    Спасибо.

  3. #3

    По умолчанию

    Меня смутил знак "~=". Погуглил, понял,что имелось ввиду "!="
    Последний раз редактировалось energvk; 12.12.2014 в 16:45. Причина: погуглил)

  4. #4

    По умолчанию

    На языке Lua оператор "Не равно" обозначается как ~=
    Спасибо.

  5. #5

    По умолчанию

    Ясно, не вникал ещё в Lua, спасибо.

  6. #6

    По умолчанию

    Настройкой у устройства имелось ввиду сделать количество повторов.
    Либо можно получить количество повторов устройства через функцию server.GetCurrentDeviceRetry( );
    То есть, как я понял в настройках устройства нужно выставить выполнение скрипта и ,соответственно, в скрипте прописать server.SetCurrentDeviceRetry(2). Только почему то не работает...

  7. #7

    По умолчанию

    Не нужно ничего этого делать.
    Все это описывалось если вы хотите сделать количество повторов не константой, а изменяемым значением. Если нужно чтобы количество повторов равнялось заданному в устройстве, то просто измените код на:
    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
    Спасибо.

  8. #8

    По умолчанию

    Понял) То есть без дополнительного тэга никак.
    Последний раз редактировалось energvk; 15.12.2014 в 15:41.

  9. #9
    Пользователь
    Регистрация
    30.11.2012
    Адрес
    40RUS
    Сообщений
    321

    По умолчанию

    Подскажите, пожалуйста:
    Объявляю в конфигурации ПЛК 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 ?
    Напильник, велосипед, бубен, грабли и костыли - основные инструменты программиста.

  10. #10

    По умолчанию

    Ошибка проявилась.
    Ошибка будет исправлена в следующей версии (3.1.3)
    Спасибо.

Страница 18 из 111 ПерваяПервая ... 816171819202868 ... ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •