<< Click to Display Table of Contents >> Navigation: Приложения > Библиотека OSCAT > OSCAT.Функции > OSCAT.Функции.Обработка сигналов > SCALE_B2 (OSCAT) |
SCALE_B2 - функция масштабирования двух входных величин.
Вид функции в редакторе программ языка FBD:
Входы и выходы функции:
Название |
Тип |
Описание |
Входы |
||
in1 |
BYTE |
Первый вход. |
in2 |
BYTE |
Второй вход. |
K |
REAL |
Множитель. |
O |
REAL |
Смещение. |
in1_min |
REAL |
Нижняя граница диапазона, в который масштабируется IN1. |
in1_max |
REAL |
Верхняя граница диапазона, в который масштабируется IN1. |
in2_min |
REAL |
Нижняя граница диапазона, в который масштабируется IN2. |
in2_max |
REAL |
Верхняя граница диапазона, в который масштабируется IN2. |
Выходы |
||
Q |
REAL |
Результат масштабирования. |
SCALE_B2 масштабирует IN1 и IN2, суммирует результаты, затем умножает сумму на множитель K и прибавляет смещение O:
Q:=(in1*(in1_max-in1_min)/255+in1_min+in2*(in2_max-in2_min)/255+in2_min)*K + O
SCALE_B2 может быть использована, например, для вычисления расхода воздуха в вентиляционной системе, а также в любой системе, в которой есть смеситель, и требуется вычислить некоторое результирующее значение.
IN0 – воздушный клапан, который регулирует приток воздуха в диапазоне от 100м3/ч до 600м3/ч при изменении IN0 в диапазоне [0, 255].
IN1 – вытяжка, от 0м3/ч до 400м3/ч при изменении IN1 в диапазоне [0, 255].
Для данного случая конфигурация функции должна быть следующей: IN1_MIN = 100, IN1_MAX = 600, IN2_MIN = 0, IN2_MAX = -400.
Результирующий расход воздуха при K = 1 и O = 0 будет варьироваться от -300 (IN0 = 0 и IN1 = 255) до +600 (IN0 = 255 и IN1 = 0).
Результат для входных значений IN0 = 128 (задвижка 50%) и IN1 = 128 (вентилятор 50%) показан на рисунке:
Входное смещение может быть использовано для каскадного подключения функции (см. пример в описании функции SCALE_X2 (OSCAT)).