MAX_MIN4 - максимум и минимум из 4 входов

Назначение.
Функциональный блок MAX_MIN4 применяется для сравнения до 4 сигналов (вещественных чисел) и вывода максимального и минимального из них.
Состав структурной переменной.
Переменная со структурным типом MAX_MIN4 будет добавлена в локальный словарь автоматически при добавлении блока в редактор.

Описание алгоритма.
На входы X1..X4 передаются сравниваемые сигналы (вещественные числа). На вход M передается количество входных сигналов X, значения которых будут сравниваться. Значения сигналов с номером больше M не используются в процессе сравнения. При M>4, входному параметру M присваивается максимальное значение по умолчанию M=4. Если M<1, выходы Y и N равны нулю.
В результате выполнения блока сравниваются значения сигналов X1..XM, при этом максимальное значение передается на выход Ymax, а минимальное на выход Ymin.
Номера входных каналов с максимальным и минимальным значениями выводятся на выходы Nmax и Nmin соответственно. Если имеется группа одинаковых сигналов, значения которых являются максимальными или минимальными, то на выходы Nmax и Nmin передаются минимальные номера каналов из группы.
Пример синтаксиса на языке ST.
//вызов функционального блока
Block.MAX_MIN4(3, 2.6, 5.4, 5.4, 1.1);
//чтение максимального сигнала и его номера, Ymax=5.4 и Nmax=2
Ymax := Block.Ymax;
Nmax := Block.Nmax;
//чтение минимального сигнала и его номера, Ymax=2.6 и Nmax=1
Ymin := Block.Ymin;
Nmin := Block.Nmin;
|
