Стартовая страница › Форумы › Понять, как работает ПО › Формулы › Использование формул
- В этой теме 90 ответов, 11 участников, последнее обновление 5 часов, 20 минут назад сделано
Mikhail.
-
АвторЗаписи
-
14.04.2025 в 12:50 #38055
alexandr1803
УчастникРебят добрый день. Подскажите несколько вопросов:
1)Возможно ли в таблице сделать отчет времени не с 00:00 до 23:00, а с 8:00 до 20:00 и с 20:00 до 8:00 (рабочие смены по 12 часов)?
2)Имеется счетчик Овен СИ30 с него в скаде текущее значение, можно ли через формулу из текущего значения вычитать архивное привязанное ко времени?
3)Организовать подсчет времени работы и простоя по изменению показания счетчика (показания не меняются по истечении n минут — станок стоит, меняются — работает)?14.04.2025 в 12:57 #38056
manjey73Участник1. Делать свою таблицу вроде. Хоть рисунком, и скорее всего при помощи js тянуть данные из нужных часов
2. из уже существующей БД ? или из самого счетчика? из существующих только при помощи JS вероятно.
3. а это по идее можно обычными скриптами.
14.04.2025 в 13:13 #38058alexandr1803
Участник1 Это для меня сложно будет, т.к не знаком с js
2 Из самой скады14.04.2025 в 13:20 #38060
manjey73УчастникПридется знакомиться 🙂
з.ы. один из вариантов вроде настроить плагин Гибкий отчет, и вытягивать его на представление в виде html14.04.2025 в 14:21 #38061alexandr1803
УчастникМожно пожалуйста пример написания скрипта, и как и куда его вставлять в скаде?
14.04.2025 в 14:34 #38064
MikhailМодераторДобрый день!
1. В табличном представлении можно выбрать диапазон часов. Возможно, в данном случае будет удобен плагин Гибкий отчёт.
2. Наверное да, но вопрос не совсем ясен.
3. Да. Поищите на форуме темы, где вычисление времени работы уже обсуждалось.
-
Ответ изменён 1 год, 5 месяцев назад пользователем
Mikhail.
14.04.2025 в 14:36 #38066
MikhailМодераторЭта тема по формулам очень обобщённая. Напишите вопрос в более конкретной теме. Проверьте поиском, если подходящей темы нет, создайте новую.
07.10.2025 в 14:41 #40564mr_serg
УчастникДобрый день, по формуле канала Cnl/256 получаю значение к примеру 23.1243, как из этого взять цело число? Если ставлю в свойствах канала формат D, то он округляет.
-
Ответ изменён 1 год назад пользователем
mr_serg.
07.10.2025 в 16:12 #40566
a80808УчастникMath.Truncate(Cnl/256)
Целая часть вроде
07.10.2026 в 06:04 #45295V52
УчастникНе разобрался с формулой. Тема новая для меня. Помогите, если не затруднит. Вот получаю я с регистра устройства скажем значение уставки (тип: short 2 байта) в виде целого числа например -203 , к полученному значению применяю формулу Cnl/10.0 и указываю формат отображения D.D, все замечательно отображается десятичное число с одним знаком после запятой -20.3 ,вопрос возникает как отправить команду в регистр используя десятичный формат ввода -25.6, и чтобы регистр получал это в целочисленном виде 256 (пока сумел отправлять целые числа, контроллер их прекрасно принимает, но хотелось бы сделать это в нативном формате)?
И если позволите еще вопрос. Хотелось бы дистанционно включать разморозку и выключать холодильник на контроллере Dixell XR75CX. В самой скаде разобрался как сделать кнопки на отправку команд и прекрасно получается менять holding registers параметры дефроста, гистерезис, уставка и остальные из мануала. Но не разобрался с coils нужны включения /выключения (у самого контроллера есть такая возможность как выключения его с кнопки) и alarm. Может эта информация не является открытой и лучше не ломать копья?
07.10.2026 в 06:19 #45296
manjey73УчастникВыходная, Cmd*10
Coils если, то просто 0 или 1 посылаете и все вроде.Они доступны на запись.07.10.2026 в 15:27 #45305
MikhailМодераторДобрый день!
с coils нужны включения /выключения (у самого контроллера есть такая возможность как выключения его с кнопки) и alarm
Посмотрите в журнале линии связи, что отвечает прибор на команду записи.
07.10.2026 в 19:57 #45315V52
УчастникОтвет устройства адекватное. Ладно, будем искать.
Попробую спросить еще, вы уж простите великодушно.
Котроллер eliwell 974
Дело в том, что если послать контроллеру команду на включение 32865 bit6, он ее проигнорирует. Для того что бы он ее не проигнорировал нужно запустить таймер в течение работы которого он принимает команды. Делается это записью времени в секундах в 115 регистр. То есть сначала записываем в 115 регистр время в секундах, а потом в течение этого времени успеваем дать команду которую надо выполнить
Как бы это выразить скриптом?07.10.2026 в 20:37 #45316
manjey73УчастникСкриптом никак, вернее без Модуля авто управления скрипт бесполезен.
07.10.2026 в 20:40 #45317V52
УчастникБлагодарю за ответ.
-
Ответ изменён 1 год, 5 месяцев назад пользователем
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.