Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 21

Тема: Кнопка... или это не кнопка? Скрипт... или это не скрипт?

  1. #1
    Пользователь Аватар для dimioks
    Регистрация
    01.10.2016
    Адрес
    Самара
    Сообщений
    31

    По умолчанию Кнопка... или это не кнопка? Скрипт... или это не скрипт?

    Снова начинаю работать в MaterSCADa 3.12.
    Задача: по быстрому накидать экран для Заказчика, 200-300 тегов через OPC UA, частично дублировав управление от HMI.
    PLC давно в работе на линии, управление сейчас через HMI Weintek.

    Имеем:
    Аналоговый тег OPC типа int, Only Write.
    Цифровой тег OPC тип bool, Only Write.
    SCADa может быть запущена, или закрыта, независимо от тех.процесса линии, т.е. рандомно, т.е. даже в моменты процессов запуска, останова или паузы линии, т.е запуск/останов SCADa никак не должны отражаться на тех.процессе.

    Задача:
    С помощью одной кнопки установить значения этих тегов ТОЛЬКО по нажатию ЛКМ, и никак иначе.
    Ни при каких обстоятельствах запись в эти теги не должна производиться, кроме как по решению оператора в строго определённые моменты тех.процесса.

    Я попробовал:
    - Поставил некую сущность "Команда", в закладке "Действия" которой назначил установку значений этих тегов. Результат: Не пойдёт, пишет нули в эти теги при старте Runtime. "Опрос" в настройка этой самой "команды", обратная связь не пойдёт .
    - Написал скрипт, запуск с помощью "команды". Не пойдёт, пишет значения в коде в теги при старте Runtime. После изменения тега в PLC НЕ пишет тег, пока с помощью другой "команды" не изменишь выходное(!!!) значение скрипта.
    - В скрипте объявил счётчик кол-ва запусков скрипта для контроля разных вариантов запуска.
    - В настройках скрипта менял опрос с цикла на изменение переменных - всё равно срабатывает при старте Runtime.
    - Удалил "команду" с действием запуска скрипта. Скрипт всё равно сработал при старте Runtime!!! Хотя даже макроса нет для запуска данного скирта. Вообще ни одной команды, ни в одном месте на запуск срипта!!! Это как вообще???
    - "Опрос", обратная связь, и всё, что с этим связано в настройках, - невозможно из-за Only Write.

    Вопрос: Какие ещё есть варианты установки значения тега OPC только по событию "одинарное нажатие ЛКМ", при условии, что целевые теги OPC UA Only Write?
    Последний раз редактировалось dimioks; 12.02.2026 в 23:19.

  2. #2
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    13,219

    По умолчанию

    в MasterScada так все печально для каналов Only Write ?

  3. #3

    По умолчанию

    Цитата Сообщение от dimioks Посмотреть сообщение
    - Поставил некую сущность "Команда", в закладке "Действия" которой назначил установку значений этих тегов. Результат: Не пойдёт, пишет нули в эти теги при старте Runtime. "Опрос" в настройка этой самой "команды", обратная связь не пойдёт .
    Не должно быть такого - если значения до опроса у параметров не заданы, то ничего писаться при старте не должно.
    Приложите ваш проект (Проект - Экспортировать), укажите путь к проблемной команде.
    Спасибо.

  4. #4
    Пользователь Аватар для dimioks
    Регистрация
    01.10.2016
    Адрес
    Самара
    Сообщений
    31

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Не должно быть такого - если значения до опроса у параметров не заданы, то ничего писаться при старте не должно.
    Приложите ваш проект (Проект - Экспортировать), укажите путь к проблемной команде.
    Ссылка на проект:
    https://mega.nz/file/c18wzZrC#RC_ooU...5H-yWWuA35-rKM

    Спасибо за ответ! Умом я понимаю, что так не должно быть. Но по факту...
    Пример скрипта:
    public partial class ФБ : ScriptBase
    {
    int iTemp_1 = 0;
    public override void Execute()
    {
    iTemp_1 = iTemp_1 + 1;
    iCount = iTemp_1;
    }
    }

    , где: iCount - выходной параметр, аналог. Если в Runtime с помощью команды изменить значение входа скрипта, то получается бесконечная рекурсия какая то...
    Настройки скрипта: опрос по изменению входов.
    bIn1 - цифровой вход, предназначен только для пуска скрипта.

    Путь к проблемному скрипту:
    Объект -> MainForm -> Управление В1 - > № картинки и другое v2
    Скрипт запускается командой Объект -> MainForm -> Управление В1 - > Скрипт (временно в виде кнопки на главном экране). При старте скрипт срабатывает 2 раза. В Runtime при запуске с кнопки "Скрипт" уходит в бесконечную рекурсию.

    Путь к проблемным кнопкам:
    Объект -> MainForm -> Управление ХХХ - > Команду пуск
    , где "Управление ХХХ" - это все экземпляры шаблона "Объект.Шаблоны.Ручное управления станками". Во всех экземплярах эта команда ведёт себя подобным образом. В случае, если запустить Runtime во время работы, все станки тупо останавливаются...

    ЗЫ: Обновление: дело не в кнопке, а в переменных шаблона:
    Объект.Шаблоны.Ручное управления станками.iReqMode
    Объект.Шаблоны.Ручное управления станками.bPusk
    Скорее всего, дело в том, что в "значение" не могу установить периодический опрос. Доступны только константа и имитация.

    ЗЫ: Теперь в проекте в целом не могу поставить новое "Значение" с циклическим опросом. Что происходит??? Ключ активации работает, Runtime запускается...
    Пару дней назад "Значение" вставлялась с любыми вариантами опроса...

    Где тут собака порылась?

  5. #5
    Пользователь Аватар для dimioks
    Регистрация
    01.10.2016
    Адрес
    Самара
    Сообщений
    31

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    в MasterScada так все печально для каналов Only Write ?
    Не знаю. Эта SCADa для меня новая. Обычно я работаю с другими.

  6. #6

    По умолчанию

    Цитата Сообщение от dimioks Посмотреть сообщение
    Не знаю. Эта SCADa для меня новая. Обычно я работаю с другими.
    "Повторитель по условию" из библиотеки "Обработка сигналов" не поможет? По-моему на этом элементе такие штуки делались

  7. #7
    Пользователь Аватар для dimioks
    Регистрация
    01.10.2016
    Адрес
    Самара
    Сообщений
    31

    По умолчанию

    Цитата Сообщение от 1exan Посмотреть сообщение
    "Повторитель по условию" из библиотеки "Обработка сигналов" не поможет? По-моему на этом элементе такие штуки делались
    Попробую...

  8. #8

    По умолчанию

    Цитата Сообщение от dimioks Посмотреть сообщение
    Не качается отсюда. Выложите на Yandex.Disk или Google.Drive
    Спасибо.

  9. #9
    Пользователь Аватар для dimioks
    Регистрация
    01.10.2016
    Адрес
    Самара
    Сообщений
    31

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Не качается отсюда. Выложите на Yandex.Disk или Google.Drive
    https://disk.yandex.ru/d/leJh9UJU_bpN6w

  10. #10

    По умолчанию

    На какую ОРС переменную поступает значение при старте? Укажите путь к ней.
    Спасибо.

Страница 1 из 3 123 ПоследняяПоследняя

Похожие темы

  1. Отчёт+скрипт
    от mars_atakuet в разделе Телемеханика ЛАЙТ
    Ответов: 0
    Последнее сообщение: 06.05.2025, 15:38
  2. Скрипт
    от BSA в разделе Master SCADA 3
    Ответов: 26
    Последнее сообщение: 04.04.2019, 13:23
  3. Python скрипт
    от @ND в разделе СПК1xx (архив)
    Ответов: 0
    Последнее сообщение: 13.08.2015, 07:04
  4. С-скрипт документация
    от Falvik в разделе Master SCADA 3
    Ответов: 1
    Последнее сообщение: 18.03.2014, 10:56
  5. скрипт для МастерСкада
    от yurgin_777 в разделе Помощь Разработчикам
    Ответов: 17
    Последнее сообщение: 06.12.2012, 18:41

Ваши права

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