Стартовая страница › Форумы › Вопросы без категории › Использование формул
- В этой теме 74 ответа, 9 участников, последнее обновление 2 месяца, 1 неделя назад сделано manjey73.
-
АвторСообщения
-
08.10.2022 в 19:25 #25321alexandr1803Участник
Ребят, спасибо всем кто откликнулся на мои вопросы, но вопросов меньше не стало, поэтому создал еще одну тему.
Подскажите как работать с диапазоном значений, датчик от -20 до +80 (modbus), но необходимо вытащить из входного канала в дорасчетный только от +21 до +24, все что ниже или выше буде равнятся этим числам.
Или вариант намбер ту: как в дорасчетном вычесть число 21 из входного канала (Val(1231)-21)/0.002 не работает, тупо делит val на 0.002 и все.08.10.2022 в 20:27 #25322manjey73УчастникОчень странный подход к работе датчика 🙂
Какие значения передает modbus? именно от -20 до +80 или типа от 0 до 1000 или иной вариант?
08.10.2022 в 20:31 #25323RomirosУчастникДействительно странно. Можно попробовать что-то типа такой формулы. Не проверял пишу с телефона:
Val(1231)>=21?Val(1231):Val(1231)<=24?Val(1231):2408.10.2022 в 20:57 #25324alexandr1803УчастникПока решил проблему так: создал еще дубликаты входных каналов с другим номером и прописал формулу (Cnl*0,1-21)/0.002+3500
И в дорасчетном сложил три таких канала и поделил на 3. Весь этот геморрой затеял для задания частоты на ПЧ. Старт не ниже 35Гц к нему прибавляю по 0,5Гц на каждый 0,1*С. 21*С минимальная частота, 24*С частота 50Гц. Просто я пока незнаю умеет ли это модуль автоматизации (завтра буду пробовать), если нет, то ему ведь надо ткуда-то задание брать в автомате? Просвятите если кто заморачивался с этим.
Частотник настроен на сон при частоте ниже 34,5Гц.08.10.2022 в 21:04 #25325alexandr1803УчастникVal(1231)>=21?Val(1231):Val(1231)<=24?Val(1231):24 Выдает ответ 42 почему-то? Значение текущее Val(1231)=23,3
08.10.2022 в 21:08 #25326alexandr1803УчастникПо тому решению, которое применил задание частоты показывает 46,67Гц/23,3*С, Впринцыпе и так сойдет, т.к. частотник не будет работать на частоте ниже 35 и выше 50 (запрет в параметрах)
08.10.2022 в 21:27 #25327alexandr1803УчастникКакие значения передает modbus? именно от -20 до +80 или типа от 0 до 1000 или иной вариант? Модбас передает именно температуру без запятой (233)- это 23,3*С датчик сам на борту с модбасом (китай)
08.10.2022 в 21:46 #25328a80808УчастникModBus передает что скажешь (точнее что производитель устройства придумал). ModBus оперирует регистрами а уж тип регистра может быть разный: Indeger, Unsigned Integer, Short, Unsigned Short, Double… Понятно что Unsigned знак не передают. Интерпретация ложится на клиента.
08.10.2022 в 21:46 #25329a80808УчастникПередается двоичное данное
08.10.2022 в 21:47 #25330alexandr1803УчастникМу-ака я кусок. Спасибище ОГРОМНОЕ, формула рабочая, я не тот канал указал (1231 это ср. влажность); (1232 ср. температура).
08.10.2022 в 21:48 #25331a80808УчастникБывает 🙂
08.10.2022 в 21:48 #25332alexandr1803УчастникRomiros спасибо за формулу.
09.10.2022 в 06:40 #25333alexandr1803УчастникРебят как создать переменную в канале управления пустого КП, чтоб ее значение отображалось во входном дорасчетном канале пустого КП? (для задания уставки влажности)? Или это есть в модуле автоматизации?
09.10.2022 в 07:36 #25334RomirosУчастникВам необходимо создать дорасчетный канал. В нем прописать следующую формулу: Val();Stat(). Это позволит значению уставки не уходить в неопределенное значение. Далее создать канал управления с формулой SetVal(..) или SetData(…). Я для таких целей обычно создаю дорасчетный канал и канал управления с одинаковыми номерами, чтобы формула была универсальная без номеров каналов.
09.10.2022 в 08:01 #25335alexandr1803УчастникRomiros, не подскажешь, как из твоей формулы вычесть 21*С? Иначе не получается прибавить температуру к стартовой частоте в 3500 Примерно так: (Val(1232)-21)/0.002+3500
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.