(5) ЦИФРОВО|{ ФУНКЦИОНАЛЬНЫЙ ПРЕОБРАЗОВАТЕЛЬ
название | год | авторы | номер документа |
---|---|---|---|
Цифровой генератор функций | 1982 |
|
SU1019423A1 |
Устройство для преобразования полярных координат вектора в прямоугольные | 1978 |
|
SU771682A1 |
Функциональный генератор | 1983 |
|
SU1141427A1 |
Функциональный преобразователь | 1983 |
|
SU1107131A1 |
Устройство для аппроксимации функций | 1980 |
|
SU934481A1 |
Устройство для воспроизведения функций | 1989 |
|
SU1644177A1 |
Многоканальный функциональный преобразователь | 1980 |
|
SU1023348A2 |
Многоканальный функциональный преобразователь | 1981 |
|
SU980110A1 |
Многоканальное устройство для восстановления непрерывных функций по дискретным отсчетам | 1987 |
|
SU1416973A1 |
Устройство для вычисления массы нефти и нефтепродуктов в резервуарах | 1983 |
|
SU1117653A1 |
1
Изобретение относится к автоматике и вычислительной технике, предназначено для воспроизведения во времени функциональных зависимостей. Оно может найти применение при построении устройств управления приводами станков с программным управлением, роботов-манипуляторов, в инфорЛационноизмерительных системах, обрабатывающих информацию, представленную в виде кода и частотно-импульсных сигналов .
Известен цифровой генератор функций времени, который содержит счетчик ординаты, управляемый делитель частоты (блок пересчета времени), блок памяти, счетчик участков аппроксимации (коммутатор участков), преобразователь скважность-период, блок переписи, буферный запоминающий блок, блок пересчета ординат.
В устройстве используется кусочнолинейная аппроксимация воспроизвоДИМОЙ функции с неравномерным разбиением области определения D3- ,
Недостатками устройства являются излишние аппаратурные затраты и ограниченные функциональные возможности, т.е. отсутствие автоматической настройки на воспроизведение заданной кривой.
Наиболее близким по технической
10 сущности к предлагаемому является функциональный генератор, содержащий управляемый делитель частоты (счетчик аргумента), подключенный к импульсному входу блока число-импульс5 ного умножения (набор генераторов фиксированных частот и элементов И, ИЛИ), счетчик ординаты, импульсным входом соединенный с первым входом блока число-импульсного умножения,
20 а потенциальным - со знаковым выходом блока памяти (предлагается,-что блок есть в прототипе), первая группа потенциальных входов которого подключена к выходам счетчика участ ков аппроксимации (регистр сдвига), а вторая группа выходов соединена со входами блока число-импульсного умножения. В этом устройстве, наряду с кусо но-линейной аппроксимацией и неравн мерным шагом разбиения области опре деления воспроизводимой функции, используется более рациональный спо соб формирования временных интервалов, Пропорциональных участкам аппроксимации, что приводит к меньшим аппаратурным затратам 2j. Отметим, что информация о воспро изводимой кривой в виде кодов прира ний между узловыми ординатами и кодо длины участков аппроксимации хранят ся в блоке памяти устройства. Перестройка на воспроизведение другой функции может быть осуществлена изм нением содержимого блока памяти, по предварительно подсчитанным данным. В ряде случаев возникает необходимость воспроизведения функции, которая повторяет изменения некоторого реального физического параметра во времени (например, цифрового кода с выхода какого-либо датчика). Такая задача, в частности, стоит при создании ррботов-манипул5 9|-оров, многократно повторяющих движение ра бочего инструмента по траектории, предварительно запомненной в режиме обучения. В этом случае изменение содержимого блока памяти должно быть осуществлено автоматически в процессе обучения. Таким образом, недостатком является отсутствие возможности автоматического выбора интервала аппроксимации и расчета приращений кода между узловыми ординатами функций, заданной нелинейно изменяющимся во времени двоичным кодом. Цель изобретения - расширение класса решаемых задач за счет автоматического формирования оптимального шага ломаной кривой, аппроксимирующей заданную. Поставленная цель достигается тем, что в преобразователь, содержащий управляемый делитель частоты, блок памяти, счетчик участков аппроксимации, блок число-импульсного умножения и счетчик ординат, потенциальный вход которого соединен с выходом знака блока памяти, первая группа входов которого соединена с выходами счетчика участков аппроксимации, первая группа выходов блока памяти соединена с потенциальными входами блока число-импульсного умножения, первый выход которого соединен с импульсным входом счетчика ординат, импульсный вход блока число-импульсного умножения соединен с первым импульсным выходом управляемого делителя частоты, дополнительно введены блок вычисления конечных разностей, коммутатор кода, шифратор и коммутатор импульсов, причем первая и вторая группы выходов блока конечных разностей соединены соответственно со второй группой входов блока памяти и входами шифратора, выходы которого со единены с первой группой входов коммутатора кода, вторая группа выходов и управляющие входы которого соединены соответственно со второй группой выходов и входами задания режима блока памяти, третья группа входов которого соединена с потенциальными выходами управляемого делителя частоты, потенциальные входы которого подключены к выходам коммутатора кодов, первый импульсный выход управляемого делителя частоты соединен с управляющим входом блока памяти и импульсным входом блока вычисления конечных разностей, тактовый вход которого соединен с первым тактовым входом преобразователя, второй тактовый вход которого соединен с импульсным входом управляемого делителя частоты, второй импульсный выход которого подключен к первому входу коммутатора импульсов, управляющие входы которого соединены с управляющими входами задания режима преоб|Ьазователя и управляющими входами коммутатора кодов, второй вход которого подключен ко второму выходу блока число-импульсного умножения, информационные входы блока вычисления конечных разностей и счетчика ординат соединены соответственно с первым и вторым информационными входами преобразователя . При этом блок вычисления конечных разностей содержит три регистра, три сумматора, делитель частоты и четыре элемента задержки, причем импульсный вход блока вычисления конечных разностей соединен с уп5равляющими входами первого сумматора и через первый элемент задержки с управляющим входом первого .регист ра, информационный вход которого со единен с информационным входом блока вычисления конечных разностей и первыми входами первого и второго сумматоров, второй вход и выходы второго сумматора соединены соответ ственно с выходом первого регистра и первой группой выходов блока вычисления конечных разностей, вторая группа выходов которого соединена с выходами третьего сумматора, первый и второй входы которого соедине ны соответственно с выходом второго сумматора, информационным входом второго регистра и выходом второго регистра, управляющий вход которого соединен через второй элемент задержки с управляющим входом третьег сумматора и входом третьего элемент задержки, вход которого соединен с управляющим входом второго сумматора и через делитель частоты - с тактовым входом блока вычисления конечных разностей, первый вход вто рого сумматора соединен с информационным входом блока вычисления конечных разностей и информационным входом третьего регистра, выход и управляющий вход которого соединены соответственно со вторым входом второго сумматора и выходом четвертого элемента задержки, вход которого соединен с выходом второго элемента задержки. На фиг. 1 представлена блок-схема цифрового функционального преобра зователя; на фиг. 2 - схема блока конечных разностей. Цифровой функциональный преобразователь содержит блок 1 вычисления конечных разностей, шифратор 2, ком мутатор 3 кода, управляемый делител k частоты, коммутатор 5 импульсов, блок 6 число-импульсного умножения, блок 7 памяти, счетчик 8 участков аппроксимации, счетчик 9 ординат, тактовые входы 10 и 11 преобразователя, вход 12 задания режима. Блок 1 вычисления конечных разностей содержит элементы 13-16 задержки, регистры 17-19, сумматоры 20-22, делитель 23 частоты. Цифровой генератор функции с автоматической перестройкой работает, в двух режимах. Обучение, в котором устройство по изменению входного кода N(t) форми7 рует параметры аппроксимирущей кривой и заносит их в блок памяти. Воспроизведение в цифровом коде ломаной кривой, аппроксимирующей с требуемой точностью заданную в режиме обучения функцию N.(t). В первом режиме управляющий сигнал с входа задания режима подключает через коммутатор кодов выходы шифратора 2 ко входам управляемого делителя частоты, блок 7 памяти устанавливает в режим записи и подключает через коммутатор 5 импульсов второй выход управляемого делителя частоты ко входу счетчика 8 участков аппроксимации. В основу работы устройства в рассматриваемом режиме положен принцип определения j-ro интервала аппроксимации. Tj .функции N(t) по величине второй производной N(t) текущего значения N(t) в соответствии с известной формулой tj 8Yum/N(t), (1) где t t « tj ДП1 - погрешность аппроксимации. Для вычисления второй производ-ной используется приближенное равенство«. ДМ - вторая конечная разность; дТ - приращение аргумента t, С учетом (1) и (2) запишем 8 АГв начальный момент времени t О входной код N(t) заносится в счетчик 9 ординат. Затем на вход управляемого делителя частоты подается тактовая частота Fy, а на блок 1 вычисления конечных разностей изменяклцийся во времени код N{t). Блоком вычисления конечных разностей через фиксированные интервалы времени дТ осуществляется последовательное вычисление конечностей разносveйiN..,-M,-.2, ., л н--й;м1-лм 1
где N
, , NI - значения вход -iного кода N(t) в моменты времени t
Ч
1-1
1-а
. А Ч N,
- первые конечные разности. Значение кода второй конечной разности подается на шифтер 2, с выхода которого снимается код N пропорциональный fj . Зависимость от может быть легко найдена из (З), если учесть, что
NC tjF,
а интервал ЛТ формировать тактовой частотой F и принят
равным ЛГ ...
Таким образом,
N 8.-Cj ° дан
с выхода шифратора 2
Код NT: поступает на
схему сравнения управляемого делителя частоты, где сравнивается с линейно изменяющимся кодом счетчика делителя, В момент сравнения кодов схема формирует импульс, .который является импульсом первого выхода управляемого делителя k частоты и соответствует моменту, времени t; .
По этому импульсу в блоке 1 вычисления конечных разностей вычисляется приращение функции
j N(t.,) - N(t)
(5)
значение функции в
начальный момент времени;
значение N(t) в конце интервала t; - и осуществляется закода uN.;, и содержиуправляемого делителя
(6)
V. адресу N:, который указывается счетчиком 8 участков аппроксимации. Затем осуществляемся увеличение содержимого счетчика 8 на единицу и устройство снова подготовлено к работе на следующем интервале.
Таким образом осуществляется автоматическое формирование значени кодов длины участка аппроксимации и приращений ординат функций между угловыми точками, т.е. автоматическая перестройка цифрового генератора функций на воспроизведение
заданной зависимости. Причем длина участков аппроксимации на каждом интервале различная и определяется допустимой величиной погрешности лт воспроизведения функции, что обеспечивает оптимальное разбиение области определения функции.
Следует отметить, что предлагаемб1й принцип формирования параметров аппроксимирующей кривой позволяет использовать в качестве блока вычисления конечных разностей простейшее из существующих арифметических устройств с жесткой программой, обеспечивающей реализацию выражений (3) и (5).
Для этого блок 1 вычисления конечных разностей должен содержать сумматор, программное устройство
N
И регистры для хранения ,
1-Ч UN.H ,. дМ, , N(t.,- )
N
N(tj) и ,
Шифратор 2 представляет собой комбинационную схему, реализующую зависимость (k).
В режиме воспроизведения функции управляющий сигнал с входа задания режима подключает к схеме сравнения управляемого делителя k частоты через коммутатор 3 кода выходы блок 7 памяти, с которых считываются коды интервалов , блок 7 памяти устанавливает в режим чтения информации, а к счетчику 8 участков аппроксимации через коммутатор 5 импульсов подключает второй выход блока 6 число-импульсного умножения
В этом режиме преобразователь работает аналогично с прототипом и при генерировании функции реализует интерполяционный полином первой степени, который для неравномерного разбиения оси аргумента на j-ом участке аппроксимации с учетом информации, хранимой в блоке 7 памяти запишется в виде
N(t)-N.,+TSrV.
(7)
N&t,j. 2
де N -j.-f
код начального значения функции на j-ом участке j 1,2...;
код приращения функции
ДМ.,между -1 и JI узлами аппроксимации;
текущее приращение аргуUX мента функции С в числе импульсов), которое пропорционально приращению времени, т.е. АХ &t t - t ; .. - код величины интервала аппроксимации; масштабный коэффициент, характерный для использу емого в устройстве блока 6 число-импульсного умножения . На импульсный вход управляемого делителя k частоты подается тактовая частота t.. . а на его потенци txальные входы с выхода коммутатора 3 управляющий код N Управляемы делитель k частоты выполняет операцию деления, в соответствии с которой количество импульсов дх опорной частоты F-j-j делится на значение управляющего кода N/i и на выходе его формируется количество импульсов .; - Х NAt,; Импульсы с выхода управляемого д лителя частоты подаются на блок 6 число-импульсного умножения, на потенциальные Ьходы которого поступает код приращения функции со второй группы выходов блока 7 памяти. Блок 6 число-импульсного умножения е качестве которого может использоваться двоичный умножитель, реализующий зависимости &ZANJ j Eut . Здесь п - разрядность блока числоимпульсного умножения. Импульсы ду подаются на вход реверсивного счетчика 9 ординаты, где вычитается из кода N: , либо прибавляются к нему в зависимости от знака slgnuN,} приращения функции на данном участке, который поступает так же с выхода блока 7 памяти. Таким образом, на реверсивном счетчике 9 ординаты происходит развертывание во времени кода N(t) в соответствии с выраже-нием (7). . Управление выбором из блока 7 памяти значений bN;, , signAN осуществляется счетчиком 8 участков которого аппроксимации, состояние 5 импульменяется через коммутатор сами переноса j Eut-« co второго выхода блока 6 мисло-14 пульсного унножения. За время развертывания N(t) в течение интервала времени t; - t/ аргумент функции получает приращение н-u а на счетчик 9 ординаты поступает количество импульсов uNj - , 2 Nut которое должно быть равно приращению uNj между узловыми ординатами j - 1 и J. Исходя из этого йх Nut, Последнее соотношение позволяет найти значение тактовой частоты Е.. , которая должна подаваться на устройство в режиме воспроизведения. Учитывая (6), получаем, что Таким образом, для воспроизведения функции N(t) без изменения масштаба времени по сравнению с режимом обучения должно выполняться соотношение (8). Предлагаемый цифровой функцональный преобразователь имеет более широкие функциональные возможности,чем существующие устройства подобного типа, за счет автоматической настройки своих параметров на воспроизведение заданной во времени зависимости. Причем выбранный способ формирования участков аппроксимации позволяет при высокой точности воспроизведения функции наиболее экономично использовать объем запоминающего устройтва, которое, например, при непосред ственном запоминании каждого его значения в такте опорной частоты, может достигать недопустимой емкости. Кроме того, предлагаемое устройство позволяет значительно экономить время подготовки устройства к работе. К достоинству устройства следует отнести простоту изменения масштаба времени генерирования функции, которое достигается путем изменения тактовой частоты FT . 119 Изобретение легко реализуется на современной элементной базе цифровой техники и может найти применение при построении интерполяторов для станков с числовым управлением в системе автоматического управления роботами-манипуляторами. Формула изобретения 1. Цифровой функциональный преобразователь, содержащий управляемый делитель частоты, блок памяти, счетчик участков аппроксимации, блок число-импульсного умножения и счетчик ординат, потенциальный вход которого соединен g выходом знака блока памяти, первая группа входов которого соединена с выходами счетчика участков аппроксимации, первая группа выходов блока памяти соединена с потенциальными входами блока число-импульсного умножения, первый выход которого соединен с импульсным входом счетчика ординат, импульсный вход блока число-импульсного умножения соединен с первым импульсным выходом управляемого делителя частоты, отличающийс я тем, что,.с целью расширения класса решаемых задач за счет автома тического формирования оптимального шага ломаной кривой, аппроксимирующе заданную, в него введены блок вычисления конечных разностей, коммутатор кода, шифратор и коммутатор импульсов, причем первая и вторая группы выходов блока конечных разностей соединены соответственно со второй группой входов блока памяти и входам шифратора, выходы которого соединены с первой группой входов коммутатора кода, вторая группа выходов и управляющие входь которого соединены соответственно со второй группой выходов и входами режима блока памяти, третья группа входов которого соединена с потенциальными выходами управ ляемого делителя частоты, потенциаль ные входы которого подключены к выходам коммутатора кодов, первый импульсный выход управляемого делителя частоты соединен с управляющим входо блока памяти и импульсным входом бло ка вычисления конечных разностей, тактовый вход которого соединен с первым тактовым входом преобразовате ЛЯ, второй тактовый вход которого соединен с импульсным входом управляемого делителя частоты, второй импульсный выход которого подключен к первому входу коммутатора импульсов, управляющие входы которого соединены с управляющими в оэдами задания режима преобразователя и управляющими входами коммутатора кодов, второй вход которого подключен ко второму выходу блока число-импульсного умножения, информационные входы блока вычисления конечных разностей и счетчика ординат соединены соответственно с первым и вторым информационными входами преобразователя. 2. Преобразователь по п. 1, отличающийся тем, что блок вычисления конечных разностей содержит три регистра, три сумматора, делитель частоты и четыре элемента задержки, причем импульсный вход блока конечных разностей соединен с управляющими входами первого сумматора и через первый элемент задержки с управляющим входом первого регистра, информационный вход которого соединен с информационным входом блока вычисления конечных разностей и первыми входами первого и второго сумматоров , второй вход и выходы второго сумматора соединены соответственно с выходом первого регистра и первой группой выходов блока вычисления конечных разностей, вторая группа выходов которого соединена с выходами третьего сумматора, первый и второй входы которого соединены соответственно с выходом второго сумматора, информационным входом второго регистра и выходом второго регистра, управляющий вход которого соединен через второй элемент задержки с управляющим входом третьего сумматора и входом третьего элемента задержки, вход которого соединен с управляющим входом второго сумматора и через делитель частоты - с тактовым входом блока вычисления конечных разностей,. первый вход второго сумматора соединен с информационным входом блока вычисления конечных разностей и информационным входом третьего регистра, выход и управляющий вход которого соединены соответственно со вторым входом второго сумматора и выходом четвертого элемента задержки, вход которого
139 2034I
соединен с выходом второго элемента 1, Авторское свидетельство СССР задержки.
Источники информации,
принятые во внимание при экспертизе 5 (прототип).
N(t)
1
№ 506015, кл. G Об F 7/38, 1976.
Авторы
Даты
1982-07-07—Публикация
1980-05-28—Подача