Аппроксиматор монотонных функций
Изобретение относится к автоматике и вычислительной технике и может найти применение в специализированных вычислительных и информационно-измерительных системах. Целью изобретения является повышение точности за счет реализации кусочно-квадратичной зависимости. Аппроксиматор содержит управляемый делитель частоты, генератор импульсов, счетчик номера участка, преобразователь кода в частоту, счетчик функции, счетчик импульсов, ключ, преобразователь кода в интервал времени и счетчик длины участка, а управляемый делитель частоты выполнен в виде последовательно соединенных кодовыми шинами мультиплексора и преобразователя кода в частоту. 1 ил.
Изобретение относится к автоматике и вычислительной технике и может найти применение в специализированных вычислительных и информационно-измерительных системах, в системах автоматического управления при воспроизведении и вычислении методом кусочно-квадратичной аппроксимации монотонных функций, аргумент которых представлен число-импульсным кодом.
Известен аппроксиматор монотонных функций, аргумент которых представлен число-импульсным кодом, содержащий два преобразователя кода в частоту, каждый из которых включает в себя группу элементов И и элемент ИЛИ и общий для обоих преобразователей делитель частоты, последовательно соединенные кодовыми шинами счетчик функции, дешифратор узлов аппроксимации, счетчик номера участка и дешифратор номера участка, два блока памяти коэффициентов давления и блок суммирования [1]. Наиболее близким к изобретению техническим решением выбранным в качестве прототипа, является аппроксиматор монотонных функций, аргумент которых представлен число-импульсным кодом, содержащий генератор импульсов, управляемый делитель частоты, последовательно соединенные кодовыми шинами блок памяти и регистр, счетчик номера участка, переключатель каналов, элемент ИЛИ, формирователь импульсов и преобразователь кода в частоту, включающий в себя элемент И-ИЛИ и делитель частоты, частотный вход которого, являющийся частотным входом преобразователя кода в частоту, соединен с частотным выходом управляемого делителя частоты, частотный вход которого соединен с входом аппроксиматора, выход которого соединен с частотным выходом преобразователя кода в частоту, являющимся выходом элемента И-ИЛИ, причем частотный выход делителя частоты соединен с первым входом элемента ИЛИ, выход которого через формирователь импульсов соединен со счетным входом счетчика номера участка, кодовый вход преобразователя кода в частоту соединен с кодовым выходом регистра, кодовые входы блока памяти соединены с кодовыми выходами переключателя каналов и счетчика номера участка, а выход генератора импульсов соединен с вторым входом элемента ИЛИ и входами установки в ноль делителя частоты, счетчика номера участка и управляемого делителя частоты, управляющий вход которого соединен с кодовым выходом переключателя каналов [2]. Общим недостатком вышеперечисленных аналога и прототипа является пониженная точность воспроизведения функциональных зависимостей, обусловленная применением метода кусочно-линейной аппроксимации. Целью изобретения является повышение точности за счет реализации кусочно-квадратной аппроксимации. На чертеже представлена функциональная схема аппроксиматора. Аппроксиматор монотонных функций содержит счетчик 1 функции, счетчик 2 импульсов и преобразователь 3 кода в частоту (ПКЧ), управляемый делитель 4 частоты (УДЧ), выполненный в виде последовательно соединенных кодовыми шинами мультиплексора 5 и ПКЧ 6, счетчик 7 длины участка и счетчик 8 номера участка, ключ 9, генератор 10 импульсов и преобразователь 11 кода в интервал времени (ПКИВ), вход 12 аргумента аппроксиматора, первый 13, второй 14 и третий 15 установочные входы и аппроксиматора. Функцию воспроизведения, диапазон изменения аргумента которой разбит на m равных по длине участков, каждый из которых аппроксимирован полиномом второй степени, на любом i-м участке аппроксимации можно представить в виде Y=a
























Ti=k







f



n - число разрядов ПКЧ 3, равное числу разрядов счетчика 2 импульсов;
N1i - выходной код счетчика 2 импульсов на i-м участке. В каждый момент времени t в интервале длительности Тi на любом i-м участке выходной код N1i счетчика 2 импульсов, поступающий на кодовые шины ПКЧ 3, равен
N



A



f


fУДЧi-1 и fУДЧi - выходные частоты УДЧ 4 на (i-1)-м и i-м участках соответственно, равные выходным частотам ПКЧ 6;
р - число разрядов ПКЧ 6, равное числу разрядов мультиплексора 5;
А2i- выходной код мультиплексора 5 на i-м участке. Знаки полярности "+" либо "-" в выражениях (9) и (10) употребляются в зависимости от режима, в котором должен работать счетчик 2 импульсов, - в суммирующем либо в вычитающем соответственно, при этом выходной код счетчика 2 импульсов в начальный момент аппроксимации на первом участке соответствует записанной в него ранее начальной уставке А11. Подставляя выражение (9) в выражение (8) и используя формулу (11), получают
f




С частотного выхода ПКЧ 3 за время преобразования Тi на вход счетчика 1 функции поступает число импульсов
Ni=


Подставляя формулу (12) в выражение (13) и производя интегрирование с использованием выражения (6), получают
Ni=




К моменту окончания длительности Т, соответствующему концу цикла воспроизведения и вычисления монотонной функции, выходной код Nyсчетчика 1 функции соответствует числу импульсов
Ny= A

A


Ni-1=



NY=A




Сопоставляя формулы (1) и (18), можно отметить, что при соблюдении равенства
a



a



a



выполняется соотношение, выражающее прямо пропорциональную зависимость выходного кода NY счетчика 1 функции от значения функции воспроизведения (1), аргумент которой представлен напряжением
NY =










Используя равенство (21), получают соотношение
a






Таким образом, разбиение на участки диапазона изменения число-импульсного кода nx аргумента должно производиться при условии отсутствия в узлах аппроксимации разрыва не только функции воспроизведения (1), но и ее первой производной, т.е. вышеуказанное разбиение должно осуществляться путем сплайн-аппроксимации полиномами второй степени. Что касается соблюдения равенства (21) при заданных

Tп=



k1 = k



Выходные импульсы счетчика 7 длины участка с периодом Tп поступают на вход счетчика 8 номера участка, в результате чего последний поочередно устанавливается в одно из m состояний, начиная с второго. Установка счетчика 8 номера участка в первое состояние, соответствующее первому участку, и тем самым дальнейшее установление соответствия между номерами участков и состояниями счетчика 8 номера участка производится путем подачи импульса обнуления (цепь сброса на чертеже не показана), в тот же момент, что и для счетчика 7 длины участка, а именно перед работой ПКИВ 11, например, в момент записи начальных уставок А01 и А11. Последовательно сменяемая по мере перехода с участка на участок кодовая комбинация с выходных шин счетчика 8 номера участка поступает на управляющие входы мультиплексора 5, в результате чего на выходе последнего в моменты перехода с (i-1)-го на i-й участок устанавливается необходимое i-у участку число А2i из ряда мультиплексируемых с третьего установочного входа 15 чисел А2i ...А2m, шины которых соединены с информационными входами мультиплексора 5. Установление необходимых чисел А2i на входе ПКЧ 6 может производиться не только с помощью мультиплексора 5, но и с помощью, например, дешифратора, преобразователя кода на программируемой логической матрице или ПЗУ, в котором заранее "прошиты" вышеуказанные числа. При этом для каждого из заменяющих элементов входным кодом (для ПЗУ адресным), как и для мультиплексора 5, является код выходных шин счетчика 8 номера участка, а их выходным кодом - код чисел А2i , полученный в результате операции дешифрирования, преобразования или выборки. Таким образом, реализация сплайн-аппроксимации функции воспроизведения (1) сводится к установлению в счетчиках 1 и 2 начальных уставок А01 и А11, соответствующих первому участку аппроксимации, и установлению с помощью мультиплексора 5 на кодовом входе ПКЧ 6 числа А2i. соответствующего i-у участку, начиная с первого. При этом нет необходимости в начале каждого из последующих участков производить запись в счетчиках 1 и 2 чисел А0i и А1i, так как эти числа на кодовых выходах указанным счетчиком устанавливаются автоматически в силу непрерывного (без скачков), ими счета импульсов, соответствующего непрерывности функции воспроизведения (1) и ее первой производной, что, как отмечалось выше, характерно для сплайн-аппроксимации. Упоминаемые ранее режимы работы счетчиков 1 и 2 на сложение либо на вычитание устанавливаются заранее, исходя из знаков полярности производных функции воспроизведения (1), а именно если знак полярности первой производной на любом без исключения i-м участке положителен, т.е. если функция воспроизведения (1) монотонно возрастающая, то счетчик 1 функции необходимо устанавливать в режим сложения, а если отрицателен, то в режим вычитания; если полярность произведения знаков полярности первой и второй производных на любом без исключения i-м участке положительна, то счетчик 2 импульсов необходимо устанавливать в режим сложения, а если отрицательна, то в режим вычитания. Учитывая, что в аппроксиматоре рассматривается функция воспроизведения (1), у которой полярность первой и второй производных неизменна во всем диапазоне изменения число-импульсного кода nxаргумента, в том числе и при nx = nxiн, учет знаков полярности вышеуказанных производных при выборе режимов работы счетчиков 1 и 2 можно заменить на более простой учет знаков полярности перед коэффициентами а1i и а2i функции воспроизведения (1), каждый из которых, как указывалось выше, одинаков для любого из m участков, а именно если перед коэффициентом a1i знак "+", то счетчик 1 функции необходимо устанавливать в режим сложения, а если знак "-", то в режим вычитания; если полярность произведения знаков полярности перед коэффициентами а1i и а2i положительна, то счетчик 2 импульсов необходимо устанавливать в режим сложения, а если отрицательна, то в режим вычитания. Необходимо подчеркнуть, что в силу одинаковости знаков полярности перед одноименными коэффициентами функции воспроизведения (1) на каждом из m ее участков режимы работы счетчиков 1 и 2 на сложение либо на вычитание, заранее устанавливаемые согласно вышеуказанным знакам, также одинаковы на каждом из этих участков. Следует отметить, что если функция воспроизведения (1) представлена в более краткой форме
Y= b




b






b





b2i = a2i (31)
Учитывая прямо пропорциональную зависимость длительности Т интервала времени от число-импульсного кода nx аргумента, можно отметить, что на первом участке при Т = 0 код аргумента nx1н= 0. При этом выражения (29)...(31) для первого участка принимают вид
b01 = a01; b11 = a11; b21 = a21 т.е. для первого участка имеет место идентичность рассматриваемых коэффициентов, согласно которым, как указывалось выше, устанавливаются начальные уставки А01, А11 и число А21. Таким образом, благодаря новым связям, элементам и возможности установки различного сочетания режимов работы счетчиков 1 и 2 обеспечивается с учетом масштабирования аппаратурная реализация воспроизведения и вычисления монотонных функций, как возрастающих, так и убывающих, выпуклых как вверх, так и вниз (в зависимости от знака полярности перед коэффициентом а2i), воспроизводимых путем сплайн-аппроксимации, аргумент которых может быть представлен число-импульсным кодом. Кроме того, повышается точность воспроизведения функции за счет реализации кусочно-квадратичной аппроксимации, как более точной по сравнению с кусочно-линейной, применяемой в прототипе.
Формула изобретения
РИСУНКИ
Рисунок 1