Среда разработки Unimod PRO 2 (версия 2.3.40)
 Руководство по программированию
×

ADDM - суммирование с выделением модуля и знака


Назначение.
Функциональный блок ADDM применяется для масштабирования и суммирования двух вещественных чисел (сигналов) с выделением модуля итоговой суммы и знака.
Состав структурной переменной.
Переменная со структурным типом ADDM будет добавлена в локальный словарь автоматически при добавлении блока ADDM в редактор.
Описание алгоритма.
На вход блока подаются четыре параметра: X1 и X2 - вещественные числа (сигналы), KM1 и KM2 - коэффициенты масштабирования. В процессе выполнения блока сначала умножаются сигналы X1 и X2 на соответствующие им коэффициенты KM1 и KM2, после чего выполняется операция суммирования полученных значений, определения модуля и знака итоговой суммы.
На выходе блока формируется три параметра:
  • Y = КM1*Х1 + КM2*Х2 (итоговая сумма);
  • MY=|Y| (модуль итоговой суммы);
  • SY = false, если Y >= 0, иначе SY=true.
Пример синтаксиса на языке ST.
//вызов функционального блока ADDM
Block.ADDM(5.0, 2.5, -7.0, 3.1);
//итоговая сумма Y = 5.0*2.5 - 7.0*3.1 = -9.2
Y := Block.Y;
//модуль суммы MY = 9.2
MY := Block.MY;
//знак суммы отрицательный, поэтому SY = true
SY := Block.SY;