Стартовая страница › Форумы › Понять, как работает ПО › Триггер на событие в ModAutoControl
Помечено: ModAutoControl
- В этой теме 77 ответов, 6 участников, последнее обновление 7 месяцев назад сделано
Sem13@nxt.ru.
-
АвторЗаписи
-
20.03.2025 в 14:15 #37377
MikhailМодераторФормула GetDefaultData() предназначена для расчётного канала.
Зачем использовать драйвер Simulator в реальном проекте — непонятно.20.03.2025 в 14:16 #37379Sem13@nxt.ru
УчастникВариант рабочий спасибо.
Есть нюанс. Если создать устройство симулятор и добавить каналы через волшебную палочку, то есть каналы будут отображаться линии связи — устройство — свойства, незнаю правильно ли будет сказать, что каналы привязаны к драйверу.
То если перевести канал в расчётный выходной, то команды не отправляются.
Я добавлял каналы через, основные таблицы — каналы, в свойствах прописал тег канала и тогда работает.20.03.2025 в 14:21 #37382
manjey73УчастникМне тоже непонятно, зачем использовать драйвер симулятора, ради значения 0 или 1 в канале?
Вам же сам драйвер симулятор ничего не делает в реальности.
Достаточно расчетных каналов для таких вещей. Обычно проблема в сохранении значения при перезагрузках Сервера. И только.20.03.2025 в 14:23 #37386Sem13@nxt.ru
УчастникА команду как отправлять? Делал разные каналы, команды не работают
20.03.2025 в 14:39 #37391
manjey73УчастникТочно так же как и другие. Указать канал Расчетный/Выходной в выходной формуле указать
SetVal(CnlNum, Cmd)а так же можно указать перечисление для команды и даже формулу проверки значения. Если в простом варианте то числовой ввод, соответственно из Модуля управления 0 или 1 можете посылать.21.03.2025 в 08:37 #37409Sem13@nxt.ru
УчастникМожет в пятой версии посылает, в шестой нет. Пробовал на пустом устройстве, каналы разные, так же не посылает.
21.03.2025 в 08:47 #37412
manjey73Участникстранно, мы логику ротации кондиционеров делали, использовали расчетно/выходные каналы. Все вроде посылается.
Или у вас проблема связана с тем, что у вас какая-то общая команда на устройство но не в конкретный канал?Можете сделать имитацию на пустом проекте где у вас не посылается?
Типа в HelloWord добавить нужное. но при этом не использовать Симулятор.Я 5-й версии с выхода 6-й не пользуюсь…
-
Ответ изменён 1 год, 3 месяца назад пользователем
manjey73.
24.03.2025 в 08:25 #37448Sem13@nxt.ru
УчастникРазвернул скаду на другом компе, в проекте HelloWord сделал имитацию, на симуляторе поднимается 1, на других каналах нет.
24.03.2025 в 08:29 #37449
manjey73Участниквыложите проект имитации. МАУ пофигу какой тип канала и куда что-то посылать.
Скорее всего не хватает формул для команд расчетных каналов для их записи.Драйвер ведь самостоятельно управляет входными каналами, а расчетными должны управлять вы сами.
24.03.2025 в 08:39 #37450Sem13@nxt.ru
Участник24.03.2025 в 09:02 #37453
manjey73УчастникТакое ощущение, что вы читаете между строк.
Примитив:
Входная формулаVal()
Выходная формулаSetVal(CnlNum, Cmd)
ФорматOff-OnМау прекрасно изменяет канал, посылая 1.

Попробуйте без формул в ручную подать команду, у вас тоже ничего не получится в расчетном канале.
-
Ответ изменён 1 год, 3 месяца назад пользователем
manjey73.
24.03.2025 в 12:48 #37472Sem13@nxt.ru
Участник«Входная формула Val()»
Ключевое слово, без него не работает. Спасибо за помощь.24.03.2025 в 13:46 #37473
manjey73УчастникНо Val() имеет некоторый недостаток. При перезагрузке там будет 0 и вам придется руками изменять (вы писали об этом выше)
Если надо чтобы сохранялось, выше давал формулу от Михаила с выставлением дефолтного значения или того, что было.24.03.2025 в 14:22 #37474Sem13@nxt.ru
УчастникЯ о том, что нужно…
Входная формула Val()
Выходная формула SetVal(CnlNum, Cmd)
Обе формулы нужны.Тогда работает как мне нужно.
Что бы новичкам как я, было проще.24.03.2025 в 14:54 #37475
manjey73УчастникЯ о другом 🙂
Иногда надо так. ВходнаяGetDefaultData(1)с соответствующей формулой в Скриптах
А выходная так жеSetVal(CnlNum, Cmd) -
Ответ изменён 1 год, 3 месяца назад пользователем
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.
