Страница 66 из 111 ПерваяПервая ... 1656646566676876 ... ПоследняяПоследняя
Показано с 651 по 660 из 1109

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

  1. #651

    По умолчанию

    Судя по всему это ошибка. Мы с ней разберемся.
    Пока сделайте на уровне тега. Потом перенесете.
    Спасибо.

  2. #652

    По умолчанию

    На уровне тега уже сделано. Т.е. в каждом теге находится запрос под определенный адрес для вывода значения. Но т.к. память устройства считывается по маленьким кускам, то опрос происходит долго. Из-за этого было решено считывать память не по маленьким кусочкам, а по 256 байт и выводить нужные значения по тегам. И судя по логике этот запрос должен находиться в скрипте узла (уже устройства). Можно ли как-то еще реализовать задачу?

  3. #653

    По умолчанию

    Как вариант - сделать один тег, в нем выполнять запросы, а затем раскладывать значения по другим тегам с помощью WriteTagByRelaitveName.
    То есть скрипт будет только в одном теге, а осталные только для записи в них значений
    Спасибо.

  4. #654

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    И ответ нужно контролировать - проверять код ошибок, что dest не nil и содержин нужное количество элементов
    А можете подсказать как это реализовать? Например, чтобы проверить dest на nil пишу:
    if (dest == nil) then
    - заношу в тег с плохим качеством
    else
    - заношу в тег с хорошим качеством
    Так не работает

  5. #655

    По умолчанию

    А что не работает? Нужно еще контролировать первый параметры который возвращается sendandrecive - там код ошибки или количество принятых байт.
    Посмотрите описание функции в справке (там есть примеры) и эту документацию:
    https://insat.ru/products/Universal_...ver_API_UG.pdf
    Спасибо.

  6. #656

    По умолчанию

    Добрый день. При запуске опроса устройства, качество тегов меняется только после того, как полностью прочитается скрипт. В скрипте 8 запросов. Например, если во 2 из 8 запросов качество тега изменилось на BAD, то MPC изменит качество с GOOD на BAD только после завершения чтения скрипта. Как сделать, так чтобы после завершения 2 запроса, если он BAD, качество поменялось сразу, а не после чтения остальных запросов?

  7. #657

    По умолчанию

    Не совсем понятно что вы имеете ввиду.
    У вас есть один скрипт и в нем 8 запросов? Так если один из них был неуспешным, сразу прерывайте скрипт, записываете BAD в теги
    Спасибо.

  8. #658

    По умолчанию

    После прерывания скрипта запросы остановятся? Или вы имеете ввиду при неудачном запросе записывать BAD и продолжать остальные запросы? И как прервать ?

  9. #659

    По умолчанию

    Цитата Сообщение от daniel23 Посмотреть сообщение
    В скрипте 8 запросов.
    Условно говоря у вас 8 строчек с 8 запросами, так?
    Ну вот если один не прошел, то ставьте в тег Bad и делайте return;
    Спасибо.

  10. #660

    По умолчанию

    После каждого запроса сделал return, когда тег Bad, то запрос зацикливается и не переходит на следующий запрос, надо, если один из запросов Bad, то переходим к следующему

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

Ваши права

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