Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 18 из 18

Тема: Универсальный Modbus Сервер Инсат и 200 контроллеров ПЛК-100

  1. #11

    По умолчанию

    Цитата Сообщение от lomtik Посмотреть сообщение
    Помогите немного со скриптами разобраться: мне надо сделать чтобы при качестве тэга bad значение тэга было бы всегда false. Тот скрипт, который последний указан выше не работает или я что то сделал не то.
    Когда он должен всетаки выполняться - перед чтением или после?
    вы написали:
    Что значит не работает?
    Не меняется признак? Что выводится в логи скриптов?
    Посмотрите видеопримеры, в них есть примеры работы со скриптами.
    http://www.masteropc.ru/prices/info.php?pid=6944

    если вам нужно чтобы скрипт просто сбрасывал в False при плохом качества, то нужно использовать такой скрипт:
    val,qual=server.ReadCurrentTag();
    if qual==OPC_QUALITY_BAD then
    server.WriteCurrentTag(false,OPC_QUALITY_BAD );
    end;


    Цитата Сообщение от lomtik Посмотреть сообщение
    Когда он должен всетаки выполняться - перед чтением или после?
    После чтения

    Цитата Сообщение от lomtik Посмотреть сообщение
    а в сервере у каждого тэга скрипт можно запустить только после чтения.
    У тега скрипт можно включать после чтения и перед записью.
    Спасибо.

  2. #12
    Пользователь
    Регистрация
    25.11.2011
    Адрес
    Москва
    Сообщений
    135

    По умолчанию

    я имел ввиду то, что скрипт откомпилирован без ошибок, запускается в момент обращения к тэгу, но не меняется значение тэга при качестве bad. Делал значение специально true , потом обрывал связь, и тэг должен был по идее поменяться на false, но он не менялся. А логи скрипта смотреть на закладке сообщения скриптов? Там пусто.
    Да, видеопримеры смотрел, это здорово, что есть и такая помощь, по ним очень хорошо изучать
    теперь в понедельник еще попробую.

    кажись я понял почему у меня не меняется значения тэга считанного с контроллера при отсутствии связи, т.е. качестве bad:
    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    если у вас не удается установить соединение, то скрипты в узле не выполняются (так как данных нет).
    это поэтому, да? это прокатывает только если на сервере тэг - server_only?

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Мы планируем сделать в скриптах отдельную функцию OnError которая будет вызываться в момент ошибки.
    т.е. этого еще нет в существующем сервере? и когда планируете?
    Последний раз редактировалось lomtik; 20.10.2012 в 23:41.

  3. #13

    По умолчанию

    Цитата Сообщение от lomtik Посмотреть сообщение
    кажись я понял почему у меня не меняется значения тэга считанного с контроллера при отсутствии связи, т.е. качестве bad:
    Скрипт не выполняется если не удается открыть порт, в сообщения в этом случае выводится:
    [22.10.2012 8:39:58.906] Information : попытка соединения 127.0.0.1 502
    [22.10.2012 8:40:03.890] Error : ошибка установления соединения 127.0.0.1 502
    В таком случае скрипты выполняться не будут. Потому как порт закрыт и данных нет.

    Цитата Сообщение от lomtik Посмотреть сообщение
    т.е. этого еще нет в существующем сервере? и когда планируете?
    В текущей версии этого нет. В ближайшее время этот функционал добавить не удастся.

    Можете пока что создавать конфигурацию с включенными скриптами и исполнением скриптов из файла. Пример в приложении.
    Файлы ScriptDevice.lua и ScriptTag.lua нужно положить в папку
    c:\Documents and Settings\All Users\Application Data\Insat\MasterOPC Universal Modbus Server\MODULES\
    У тега и у устройства нужно прописать строку загрузки кода из файла.
    Вложения Вложения
    Последний раз редактировалось SCADAMaster; 22.10.2012 в 09:03.
    Спасибо.

  4. #14
    Пользователь
    Регистрация
    25.11.2011
    Адрес
    Москва
    Сообщений
    135

    По умолчанию

    ок, техподдержка ответила также, скрипты не выполняются если нет связи. В принципе, на первое время достаточно увеличив период опроса - основные ошибки пропали, остались несколько контроллеров, которые через wi-fi обмениваются, но это уже не критично. Вопрос другой: есть контроллер ПЛК-100, который удален физически от сервера на несколько километров, связи проводной с ним нет, и его надо тоже опрашивать. Подскажите, я правильно понял что мне нужно докупить: модем ПМ-01 + антенна. У провайдера заказываю статический IP для модема ПМ-01, который будет установлен у ПЛК-100 и через компьютер с уже приобритенным универсальным ОПС-сервером Модбас и выходом в интернет я точно также зная IP-шник контроллера подключаюсь через ОПС сервер и вижу все переменные? Я прав? Больше ничего не надо?

  5. #15

    По умолчанию

    Может потребоваться чтобы компьютер и контроллеры находились в одной "локальной" сети.
    Подробнее вам нужно уточнить в техподдержке ОВЕН.
    Спасибо.

  6. #16
    Пользователь
    Регистрация
    25.11.2011
    Адрес
    Москва
    Сообщений
    135

    По умолчанию

    подскажите примерные сроки выхода нового опс от инсат с поддержкой работы скриптов в off-line режиме когда нет связи с плк?
    И все таки, можно ли как то тогда уже не дожидаясь нового опс в мастер скаде сделать так, чтобы при отсутствии связи с прибором значение одной переменной было бы всегда false?
    спс.

  7. #17

    По умолчанию

    Цитата Сообщение от lomtik Посмотреть сообщение
    подскажите примерные сроки выхода нового опс от инсат с поддержкой работы скриптов в off-line режиме когда нет связи с плк?
    Сроков пока что назвать не можем - этот функционал не простой, а программист сейчас занят.

    Цитата Сообщение от lomtik Посмотреть сообщение
    И все таки, можно ли как то тогда уже не дожидаясь нового опс в мастер скаде сделать так, чтобы при отсутствии связи с прибором значение одной переменной было бы всегда false?
    В скаде в принципе можно.
    У нас есть функциональный блоки для работы с признаками качества. Например можно использовать ФБ "Вывод признаков качества".
    Также можно использовать модуль "Событие", у него есть функция для определения признака качества - OPCQuality( ). С помощью этой функции можно определить признак качества переменной, и выдать на выход события "Ложь" если признак качества.
    Можно использовать модуль "Скрипт C#" - в нем также можно работать с признаками качествами. Пример такого скрипта есть в библиотеке - Примеры скриптов - Получение признака качества.
    Спасибо.

  8. #18
    Пользователь
    Регистрация
    25.11.2011
    Адрес
    Москва
    Сообщений
    135

    По умолчанию

    огромное спасибо за подзсказки.

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Ответов: 1108
    Последнее сообщение: 21.03.2024, 08:54
  2. ОРС сервер для приборов ModBus Си8
    от Sumsee в разделе Сетевые технологии
    Ответов: 1
    Последнее сообщение: 05.04.2012, 15:45
  3. Modbus-сервер и трм138
    от Fix_m в разделе Сервисное ПО
    Ответов: 3
    Последнее сообщение: 20.07.2011, 15:30
  4. Owen OPC Modbus сервер
    от Slev в разделе Сервисное ПО
    Ответов: 15
    Последнее сообщение: 10.12.2010, 11:26
  5. ПЛК110-32 и сервер Lectus Modbus
    от Viktor40 в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 04.06.2010, 15:09

Ваши права

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