APPROX | АППРОКСИМАТОР

Алгоритм позволяет:
реализовать одну или две кусочно-линейных функции, каждая из которых определяют до 100 точек, разделяющих линейные участки функции;
выбирать функцию входной командой;
вместо второй кусочно-линейной функции задавать функцию Y = X или Y = CONST;
определять номер участка, содержащего текущий входной сигнал.
На крайних участках, уходящих до предела диапазона действительных чисел, сигнал Y равен ординате граничной точки. На остальных участках – определяется интерполяцией.
Если настройка FUNC2_ON = FALSE, то значение выхода определяется кусочно-линейной функцией FUNC1. Число точек FUNC1_N должно быть не менее двух.
Если настройка FUNC2_ON = TRUE, то значение выхода определяется функцией FUNC2. Вид функции FUNC2 определяется числом FUNC2_N. Если число точек FUNC2_N = 0, то функция FUNC2 повторяет на выходе входной сигнал Y=X. Если FUNC2_N = 1, то функция FUNC2 выдает на выходе константу Y= FUNC2 [1].Y. Если точек больше одной (FUNC2_N > 1), то функция FUNC2 является кусочно-линейной.
Абсцисса любой точки должна быть не меньше абсциссы любой предыдущей точки. Иначе кусочно-линейная функция не работает, формируется ошибка. Ошибка формируется также, если абсцисса одной точки равна абсциссе другой точки.
Каждая точка начинает участок с ее номером, однако, если точка, предшествует точке разрыва, то участок с ее номером отсутствует.
Выходные сигналы формируются при любом качестве сигнала X. Качество выходного сигнала Y определяет качество входного сигнала X:
Y.QUALITY = X.QUALITY
|
