Цифровой линейный интерполятор
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
).Л ь ИЗОБ ПИСА ЕТЕНИЯ АВТОРСКОМ ИДЕТЕЛ ЬСТВ рукторско-техно " Винницкого п Романюк, В.С. Сенчик орока и Н.Ф, Гейван ельстэо СС 19/415, 6 0 15/353,ельство ССВ 19/18, 198 ике устыми ках с орых чные вышение точ ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМПРИ ГКНТ СССР(71) Специальное конгическое бюро "Модуитехнического институт(57) Изобретение относится к автоматике и вычислительной технике и может быть использовано в выходных графических устройствах с линейными матричными органами регистрации, а также в станках с программным управлением, в которых применяются линейные и матричные органы.Цель изобретения - повышение точности Изобретение относится к автомат вычислительной технике и может бы пользовано в выводных графичес 1 и ройствах с линейными матрич органами регистрации, а также в ста программным управлением, в кот использованы линейные и матри органы. Цель изобретения - по сти Интерполяции, 2интерполяции. Цифровой интерполятор содержит блок выделения нуля, регистр остатка, три коммутатора, накапливающий сумматор, регистр меньшего приращения, блок инверторов, два двоичных сумматора, блок управления, регистр многоразрядных приращений, выходной коммутатор. В интерполяторе в каждый тактовый промежуток времени на -выходах формируются многоразрядные шаговые приращения. В первом такте формируется многоразрядное приращение (К+1)/2, В последующие тактовые промежутки на информационном выходе интерполятора формируются многозарядные приращения К или К+1, порядок следования которых определяется по знаковому разряду накапливающего сумма- гора. Последнее многоразрядное приращение определяется по первому, поичем в нем запрещается формирование злементарного шага по ведомой координате. В интерполяторе за счет симметрирования многоразрядных приращений и отслеживания отклонения их от идеальной прямой достигнута максимальная точность аппроксимации, 1 з, и. ф-лы, 11 ил., 2 табл,На фиг. 1 изображена структурная схема интерполятора; на фиг. 2 - функциональная схема блока управления; на фиг. 3 - граф-схема алгоритма работы интерполятора; на фиг. 4- временная диаграмма работы блока управления при М -16, й -5; на фиг, 5- аппроксимация отрезка прямой при М = =1 6, М = 5; на фиг. 6 - график распределения погрешностей аппроксимации отрезка прямой многоразрядными приращениями приления й тактов на вычтз сщий вход счетчика 46 на его выходе формируется сигнал переноса (логическая единица), передний фронт которого поступает на вход элемента ИЛИ 35. Следовательно, на выходе элемента ИЛИ 35 формируется передний фронт импульса, который устанавливает триггер 36 в нулевое состояние, твк как на О-входе выставлен логический нуль),На прямом выходе триггера 36 устанавливается логический нуль. Сигнал логического нуля с выхода 32 поступает на младший разряд первого входа коммутатора 13, Следовательно, в последнем интерполяционном такте отсутствует диагональный шаг. Импульс переноса счетчика 46 поступает через элемент И 42 и устанавливает в нулевое состояние триггер 45, а также выставляет на выходе элемента И 50 значение логического нуля.В последнем интерполяционном такте при нечетном К, остатке= О и единичном состоянии переноса счетчика нз выходе элемента 31 формируется сигнал единичного уровня, следовательно, на адресном входе коммутатора 12 формируется адрес АО, рзв. ный значению логической единицы, Старший разряд А 1 равен значению логического нуля, так как триггер 45 обнулен ранее, Указанное приводит к выдаче на выходе коммутатора 12 значения П = ,К+1)2 - 1, В ;ротивном случае на входе младшего разряда адреса коммутатора 12 сигнал равен нулю, Указанное приводит к выдаче на Выходе ,коммутатора 2 значения Щ:. - . (К+1)2,Каждое значение цифровых сегментов, выставленное на выходах 23 и 24, сопровождается передним фронтом стробирующего импульса, формируемого нз выходе элемента 43.Формула изобретения1. Цифровой линейный интерполятор, содержащий регистр оста ка, регистр меньшего приращения, первый и выходной коммутаторы, блок управления, первый двоичный и накапливающий сумматоры, информационные входы регистра остатка и регистра меньшего приращения являются соответственно первым и вторым информационными входами интерполятора, вход записи интерполятора соединен с входом записи регистра остатка и регистра меньшеГо приращения, пуск интерполятора соединен с первым входом блока управления, первый выход блока управления подключен к управляющему входу накапливающего сумматора, второй выход блока управления подключен к выходу конца интерполяции интерполятора, третий выход блока управления подключен к стробирующему выходуинтерполятора, группа информационныхвыхОдов выходного коммутатора подлючена к выходам цифрового сегмента интерполятора, о т л и ч а ю щ и й с я тем, что, сцелью повышения точности, введены второй и третий коммутаторы, регистр многоразрядного приращения, второй двоичныйсумматор, блок инверторов, блок выделения нуля, выход которого подключен к второму входу блока управления, вход блока выделения нуля соединен с выходом регистра остатка и с первым входом первого двоичного сумматора, второй вход которого соединен с выходом блошка инверторов, а вход переноса - с выходом логической единицы интерПОлятооз, выход перВОГО двоичного сумматора подключен к первой и второй руппам информационных входов пеового коммутатора, причем во второй группе информационных входов коммутатора каждый+1)-й разряд подключен к -разрядному выходу перваго двоичного сумматора,= 1, и,где и - разрядность информационной шины первого сумматора, младший разряд второйгруппы информационных входов первого коммутатора подключен к общей шине,группа информационных входов которого ;юдключена к выходу реп стра остатка, поичем каждый-й разряд выхода регистра остат. а подключен к Г+)-му разряду третьей гру,Г 1 ы входов первого коммутатора,==,;в, где Гп - разрядность информационной шины регистра остатка, младший разряд третьей группы информационных входов первого ксммутатора подключен кобщей шине, группа водо первого коммутатора подключена к группе входов накапливающего сумматора, вход переноса которого подключен к общей шине., а В-вход сбросз подключен к входу записи интерполятора, к третьему входу блока управления и к управляющему входу регистра многооаэрядных приращений, вход которого соединен с входом цифрового сегмента интерполятора, а Выход - с группой информационных входов второго двоичного сумматора и с первой и второй группами информационных входов третьего коммутатора, причем каждый -й разряд четвертой группы информационных входов третьего коммутатора подключен к ( + 1)-му разряду регистра многоразрядных приращений,= 1, и - 1, где и - разрядность информационной шины регистра многоразрядных приращений, третья и четвертая группы информационных входов третьего коммутатора подключены к выходу второго сумматора, причем каждый -й,разряд чет 15935925 10 50 вертай группы информационных входов третьего коммутатора подклачен к ф+1)-му разряду второго сумматора,= 1, и - 1, где и - разрядность информационной шины второго сумматора, младший разряд четвертой группы информационных входов первого коммутатора подключен к общей шине, а вход переноса подключен к выходу логической единицы: старший и младший разряды адресного входа третьего коммутатора г.одключены соответственно к четвертому и пятому выходам блока управления, четвертый вход которого подключен к младшему разряду регистра многоразрядных приращений, шестой выход блока управления подключен к младшему разряду первой группы информационных входов выходного коммутатора, старшие разряды которой подключены к общей шине, вторая группа информационных входов выходного коммутатора подключена к группе выходов третьего коммутатора, адресный вход выходного коммутатора соединен с седьмым выходом блока управления, восьмой выход которого подключен к адресному входу второго коммутатора, группа выходов которого подключена к группе входов блока инверторов, э первая и вторая группы информационных входов - к разрядным выходам регистра , меньшего приращения, причем каждый 1-й разряд регистра меньшего приращения соединен с (+1)-м разрядом перв-й группы информационных входов второго комму 1 этора,= 1, и, где и - разрядность первой группы информационных входов второго коммутатора, младший разряд которой соединен с общей шиной. девятый выход блока управления подключен к старшему разряду. адресного входа первого коммутатора, младший разряд адресного входа которого соединен с выходом знакового разряда накапливающего сумматора и с пятым входом блока управления, шестой и седьмой входы которого подключены соответственно к входу начальной установки и входу признака интерполятора, информационный вход блока управления соединен с входом меньшего приращения интерполятора.2, Интерполятор по и. 1, о т л и ч а ющ и й с я тем, что блок управления содержит с первого по шестой О-триггеры, семь элементов И, первый, второй и третий элементы ИЛИ, счетчик, формирователь импульсов, элемент ИСКЛЮЧАЮ.- ЩЕЕ ИЛИ, выход которого подключен к управляющему С-входу первого О-триггера,.инверсный выход которого подключен к информационному О-входу первого О-триггера, прямой выход которого подключен к девятому выходу блока управления, седь 15 20 25 ЗО 35 40 45 мой выход которого соединен с прямым вы-, ,. ходом второго О-триггера, информационный О-вход которого подключен к седьмому входу блока управления, восьмой вход которого подключен к управляющему С-входу второго О-триггера, к управляющему 3-входу счетчика и к вторым инверсным входам первого и второго элементов И, шестой вход блока управления соединен с инверсными Й-входами третьего и четвертого О-триггеров и с первыми входами первого и второго элементов И, выход первого элемента И подключен к инверсным В-входам пятого и первого О-триггеров; первый вход блока управления подключен к первому входу первого элемента ИЛИ, выход которого соединен с управляющим С-входом третьего О-триггера, инверсный выход которого подключен к информационному О-входу третьего триггера, прямой выход которого соединен с информационным О-входом четвертого триггера и с шестым выходом блока управления, восьмой выход которого подключен к выходу второго элемента ИЛИ, первый вход которого соединен с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, прямым выходом пятого триггера. с информационным О-входом шестого триггера и с.вторым входом третьего элемента И, первый вход которого подключен к прямому выходу формирователя импульсов, инверсный выход которого соединен с втооым входом четвертого элемента И, управляющим С-входом четвертого О-триггера и с управляющим С-входом пятого О-триггера, управ-. ляющий О-вход которого подключен к первому входу четвертого элемента И и к прямому выходу четвертого триггера, инверсный выход которого соединен с первйм входом пятого элемента И, инверсный вход которого соединен с выходом третьего элемента И, третьим выходом блока управления, управляющим С-входом счетчика и с управляющим С-входом шестого триггера, прямой выход которого подключен к второму входу элемента ИСКЛЮЧАЮЩЕЕ ИЛИ ик четвертому выходу блошка управления, четвертый вход которого соединен с инверсным вторым входом второго элемента ИЛИи с первым входом шестого элемента И, выход которого соединен с первым входомтретьего элемента ИЛИ, выход которого подключен к пятому выходу блока управления, второй вход котороо соединен с инверсным вторым входом шестого элемента И, третий вход которого соединен с вторым инверсным входом седьмого элемента И,третьим инверсным входом второго элемента И, вторым входом первого элемента ИЛИ и выходом счетчика, информационный входкоторого соединен с информационным входом блока управления, второй и первый выходы которого подключены соответственно к выходам пятого и четвертого элементов И, выход второго элемента И соединен с В-входом шестого триггера, пятый вход блока управления подключен к первому входу седьмого элемента И, выход которого подключен к второму входу третьего элемента 5 ИЛИ.1693592П рямоР г 1 уол элемент 38 Инверсий выход элеменямой вохе емента Зб Прямой вех элемента У Выход элеменрямой вцходлемента 44 Выходлемента 52Выход элемента 46с,О1693592 Составитель И. ШвецТехред М.Моргентал Корректор В, Гирняк Редактор А, Козориз Заказ 4078 Тираж ПодписноеВНИМАЙ Государственного комитета по изобретениям и открытиям при ГКНТ СССР113035, Москва, Ж, Раушская наб., 4/5 Производственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина, 101условии их центрироеания; на фиг. 7 - схемы расположения единичного элемента при левом и поавом центрирОвании; на фиг. 8- 1 Осхемы коммутэто)ОВ; на фиГ, 11 - сеГ" ментыЦифровой линейный интерполятор (фиг. 1) содержит блок 1 выделения нуля, регистр 2 остатка, первый коммутатор 3, накапливающий сумматор 4, регистр 5 меньшего приращения, второй коммутатор 6, блок 7 инверторов, первый двоичный сумматор 8, блок 9 управления, регистрО мнаГОразрядных при)ащений, вторсй двоичный сумматор 11, третий коммутатор 12, выходной коммутатор 13,Интерполятор имеет вход 4 остатка, вход 15 записи, вход 16 меньшего приращения, вход 17 "Пуск", вхо 18 начальной установки, вход 19 признака, Вход 22 цифрового сегмента, выход 2 О конца интерполяции,стробирующий выход 21, первый информа-. цион ный ВыхОД 23 многоразрядных и ри)ащений, второй информационный выход 24 многоразрядных приращений, Позициями 25-34 обозначены входы и выходы блока 9, 25Блок 9 управления (фиг. 2) содержглт элемент ИЛИ 35, О-триггеры 36 и 37, формирователь 38 импульсов, зле 4 енты И 39-43, О-триггер 44 и 45, с етчик 46 импульсов, О-тоиггер 47, элемент 1 ЛИ 48, элементы И 49 и 50, элемент ИЛИ 51, элемент ИСКЛСЧАОЩ-. Б ИЛИ 52 и ) Три Гдр 1".,3 Комму) а тор 6 содержит группу мультиплексоров 54 - 54 п. Коммутатор 2 содесжит группу мультиплексоров 55 лп. Коммутатор 3 соДержю группу мул ьтиглексоров 56. - 56 в.Регистр 2 остатка служит для храненля остатка Ь от деления (М - й)/й при М =.2 и ИУ(М-И) при М2 й, где М - большее приращение, Н - меньшее приращение, Остаток поступает от внешнего устрой:тва по первому входу 14 интерполятора. Запись в регистр 2 осущесгвляется передним фронтом сигнала, поступающегс на Вход5 записи интерполятора от внешнего устройства, Управляющий вход регистра 2 соединен с управляющим входом регистра 5, первым входом блока управленля, К-входом (входом сброса) накапливающего сумматора 4 и управляк)щим Входом )егистра 1 О многораз. рядных приращений, Информационный вход регистра 2 остатка подклк)чен : информационному входу блока 1, первому информационному входу первого сумматора 8, первому входу первоо коммутатора 3, на первый вход которого ггоступает удвоенное значение содержимогО; реглстра 2 остатка.Удвоенное значение достигаегся монтажной коммутацией пеового входа комму татора 3. Для этого каждый -й разрядвыхода регистра 2 подключен к (+1)-му разряду первого входа коммутатора 3, ( . 1, и где и) - разрядность регистра 2, младший разряд первого информационного входа коммутатора 3 заземлен.Блок 1 выделения нуля служитдля выделения нулевого значения остатка ), Выход блока 1 соединен с вторым входом 26 блока 9 управления, Первый коммутатор 3 обеспечивает передачу на свой вход содержимого одного из трех входов В зависимости от значения адресного входа (табл, 1). Выход перВого коммутатора 3 подключен к информационному входу накапливающего сумматора 4. Старший разряд адресного входа (А 1) первого коммутатора 3 подключен к второму выходу 27 блока 9 управления, Младший разряд адресного входа (АО) первого коммутатора 3 соединен с выходом переноса накапливающего сумматора 4 и с третьим входом 29 блока 9 управления.Таблица 1Накапливающий сумматор 4 представляет собой накапливающий сумматор и осуществляет суммирование значения с его информационного входа со значением, хранящимся в его Внутреннем регистре. Сигнал с выхода знакового разряда сумматора поступает на третий 29 вход блока 9 управления и на старший разряд адреса первого 3 коммутатора. Сигнал записи суммы во внутренний регистр сумматора 3 осуществляется передним фронтам сигнала, поступающего с третьего выхода блока 9 управления, Сброс внутреннего регистра сумматора 3 производится активным сиГнэлом логической единицы, поступающей на В-вход сумматора 3, Перенос младшего разряда сумматора 3 заземлен,Регистр 5 меньшего приращения служит для хранения меньшего приращения М задающего отрезка аппроксимируемой прямой, Запись в регистр 5 осуществляется передним фронтом сигнала записи, поступающего на вход 15 записи интерпо лятора, Информационный вход регистра; соединен с вторым входом 16 интерполято ра и с информационным входом блока 5 управления, Выход регистра 5 соединен спервым и вторым входами второго коммутатора, причем на первый вход коммутатора 6поступает удвоенное значение регистра 5. Удвоенное значение достигается мантэх:.- ной комутацией входа коммутаторов, Для этого каждый 1-й разряд выхода регистра 5подключен к(1+1)-му разряду первого входакоммутатора 6, причем = 1, и, где и - разрядность выходной информационной шины регистра 5, младший разряд первого входа коммутатора 6 заземлен. При значении логического нуля на управляющем входе коммутатора 6 последний осуществляетпередачу операнда со своего первого входа на выход. При значении логического нуля на управляющем входе коммутатора 6 последний осуществляет передачу операнда сосвоего первого входа на выход. При значении логической единицы на управляющемвходе коммутатора 6 осуществляется передача операнда со своего второго входа навыход, Выход коммутатора 6 подключен кблоку 7 инверторов. Управляющий вход второго коммутатора 6 соединен с блоком 9управления.Сумматор 8 представляет собой комбинационный сумматор и осуществляет сложение операндов, поступающих нэ первый 20 и второй суммирующие входы. Вхсд слматора 8 переноса подключен к выходу лагической единицы,Выход сумматора 8 соединен с вторыми третьим входами первого комму.этарэ 3,причем на его второй вход поступает удвоенное значение содержимого первого сумматора 8. Удвоенное значение достигаетсямонтажной коммутацией входа коммутатора 3. Для этого каждый 1-й разряд выходасумматора 8 подключают к +1)-му разрядувторого входа коммутатора 3, причем 1 = 1, 40и - 1, где и - разрядность информационнойшины сумматора 8, Младший разряд второго информационного входа коммутатора 3заземлен.Блок 9 управления осуществляет управление операционными узлами интерполятора в соответствии с алгоритмом работы, Павходу 17 интерпалятара происходит запускинтерполятора передним фронтам сигнала.Вход интерпалятора соединен с входом 50блока 9 управления. Па входу 18 интерполятора уровнем логического нуля происходитначальная установка интерпалятора. Единичное значение сигнала на четвертом вхо-.де 19 интерполятора указывает, что 55интерполирование будет происходить вовтором полуоктанте. Значение логическогонуля на входе 19 указывает, что интерполирование производится в первом полуоктэнте. Вход 19 соединен с входом блока 9 упаавления. Единичное значение младшего,разряда регистра 10, поступающее на вход 30 блока управления, указывает о нечетном значении К. На выходе 20 блока 9 управления формируется сигнал "Конец интерполяц,и". Сигнал логического нуля на укаэанном выходе сигнализирует об интерполяции отрезка в заданный момент времени, т, е. о занятости интерполятора. При значении логической единицы на выходе 20 блока 9 управления интерполятор готов к приему исходного задания отрезка прямой. Выход 20 блока 9 управления соединен с выходом 20 конец интерполирования интерполятора.Пад воздействием сигнала, формируемого на страбирующем выходе 21 интерполятора, осуществляется стробирование выходных многоразрядных приращений.Стробиравание происходит передним франтам сигнала. Выход 21 (стробирующий) интерпапятарэ соединен с выходом 21 блока 9 уп 1.эвления.Регистр 10 многоразрядных приращен й служит для хранения К, определяющего :,исла элементарных шаговых приращений па ведущей координате, приходящееся на единичное перемещение по ведомой координате, Информационный вход регистра 10 соединен с входам 22 интерпаляторэ, а выход соединен с входам сумматора 11, с третьим и четвертым входами коммутатора 10, причем на четвертый вход коммутатора 12 поступает половина значения содержи.".ага оегистра 10,. равного 1 К/2). Половина значения сацержимога регистра 10 достига.ется монтажной коммутацией четвертого входа коммутатора 12. Для этого каждый 1-й разряд входа третьего коммутатора 12 подключают к 1+1)-му разряду регистра 10, причем= 1, п, где и - разрядность информационной шины регистра 10,Двоичный сумматор 11 представляет собой комбинационный сумматор и осуществляет суммирование операнда, поступающего нэ ега второй информационный вход со значением логической единицы, поступающей на ега вход переноса, Информационный вход сумматора 11 заземлен. Половина значения содержимого сумматора 11 ростигается монтажной коммутацией второго входа коммутатора 12, Для этого каждый 1-й разряд входа коммутатора 12 подключают к (и+Я-му разряду сумматора 11, причем 1=1,п, где п - разрядность информационной шины, Коммутатор 12 обеспечивает передачу нэ свой выход значения содержимого из четырех ега входов в зависимости от значения адресного входа (табл. 2). Выход комму- татара 12 подключен к входу выходного коммутатора, Старший разряд адресноговхода (А 1) коммутатора 3 подключен к выходу 34 блока 9 управгенля, Младший разрядадресного входа (АО) кбммутатора 3 подключен к входу 31 блока 9 управления. Таблица 2 Значениее анда н а коммутатс12 оп р с выходе коммутатора 12(о.1)/К Выходной коммутатор 13 обеспечивает передачу значений со своих входов на информационный выход 23 и информацион ный выход 24 интерполятора в зависимости. от адресного входа.При г = 0 (признак принадлежности отрезка прямой первому полуоктанту) на выход 23 выдается значение многоразрядного 25 приращения от коммутатора 12, а на выход 24 - значение логической единицы от входа коммутатора 13, Следовательно внешним устройством будет воспринят цифровой сегмент,показанный на фиг. 11 а, 30При г = 1 (признак принадлежности отрезка прямой второму полуоктанту) на выход 24 выдается значение многоразрядного приращения от коммутатора 13, Внешним устройством будет воспринят цифровой сег мент, показанный на фи:. 11 б.Таким образом, информация на выходе 24 определяет число диагональных шагов, а на выходе 23 - горизонтальных шагов.Адресный вход коммутатора 13 совди нен с выходом 33 блока 9 управления, Все разряды первого информационного входа заземлены за исклочением младшего разряда, который подключен к выходу блока 9 управления. 45Счетчик 46 предназначен для определения окончания процесса интерполяции, Призадании отрезка прямой в него записывается значение меньшего приращения, Запись в счетчик 46 обеспечивается активным уров нем сигнала, поступающего с входа 15 записи интерполятора, соединенного с входом блока 9 управления.Триггеры 36 и 37 предназначены для присинхрониэированного каналеработы к им пульсной последовательности, вырабатываемой формирователем 38 импульсов после поступления сигнала "Запуск интерполятора". Вход 17 блока 9 управления соединен с входом первого элемента ИЛИ 35, выход которого подключен к управляющему С-входу О-триггера, выход которого - к выходу 32 блока 9 управления.Сигнал "Начальная установка" служит для обнуления первого 36, второго 37, третьего 44, четвертого 45, шестого 53 О-триггеров, Сигнал "Начальная установка" поступает на вход 18 блока 9 управления, на И-входы первого Зб и второго 37 О-триггеров и на первье входы третьего 41 и четвертого 42 элементов И.Формирователь 38 импульсов служит для выработки импульсов, тактирующих работу блока 9 управления. Элемент И 39 совместно с инверсным выходом триггера 37 служит для выработки сигнала "Конец интерполяции". Элемент И 40 служит для формирования требуемой импульсной последовательности для накапливающего сумматора, Элемент И 43 служит для формирования требуемой импульсной последовательности стробирования значения на информационных выходах 23 и 24 интерполятора,Триггеры 44, 45 и 53, элементы И 49 и 50, элемент ИЛИ 51 и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 52 служат для формирования адреса для коммутаторов 3 и 12. Сигнал на прямом выходе триггера 45 соответствует старшему разряду адреса коммутатора 12.Сигнал на выходе элемента ИЛИ 51 соответствует младшему разряду адреса коммутатора 12. Сигнал на прямом выходе триггера 53 соответствует старшему разряду адреса коммутатора 3. Элемент ИЛИ 48 служит для управления эторого коммутатора 6,Триггер 47 служит для хранения признака о принадлежности интерполируемого отрезка прямой й конкретному полуоктанту. Запись в триггеры 36, 47 и 53 осуществляется передним фронтом сигнала, поступающего на их управляющие С-входы. Запись в триггеры 37, 44 и 45 осуществляется передним фронтом сигналапоступающего на их управляющие С-входы.В предлагаемом интерполяторе разрядность и регистров 5 и 10 совпадают, Максимальное значение К на единицу меньше значения максимального большего приращения (при БПмкс = 2" - 1, МПмкс " 1,М - И иКмакс =М2 -2), а разрядность большего приращения равняется разрядности меньшего приращения (БПмкс = 2 - 1; МПмакс= БП -1 = 2"-2 = Кмэкс).Максимальное значение остатка не превышает половины большего приращения, а следовательно, разрядность в регистра 2 равна и - 1, т. е. гп = и - 1.1693592 10 Для определения работы интерполятора синтезируют алгоритм аппроксимации отрезка прямой многоразрядными приращениями, обеспечивающий максимальную точность.Пусть исходный отрезок прямой, заданный приращениями М и Й, расположен в первом полуоктанте (МО, йО, М2 М) с началом в точке с координатами (0,0), Отрезки прямых с приращениями М, И, принадлежащие второму полуоктанту (МО, йО, М 2 И), получают путем инвертирования значений интерполяционных шагов по ведомой координате при интерполировании дтрезка с приращениями М, (М - й), принадлежащего первому полуоктанту. Изменение знаков. приращений и замена координатных направлений позволяют получить отрезки с любым расположением и ориентацией по отношению к координатным осям. Указанные эквивалентные преобразования позволяют существенно упростить алгоритм интерполяции, сводя его только к аппроксимирующим действиям в первом полуокта нте.Многоразрядное приращение (цифровой сегмент) длиной 3 определяет п = Я - 1 единичных шагов перемещений по ведущей координате и следующее за ними диагональное перемещение. Последнее соответствует одновременной выдаче единичных шаговых приращений по ведущей и ведомой координатам,Исходный отрезок. прямой может быть аппроксимирован цифровыми сегментами двух длин, отличающихся на единицу, значение которых находят вычисляя неравномерностные характеристики первого. порядка, которые для первого полуоктанта принимают вид: г 1 = О,К = ЦМ - И)/Кц,4. Параметр К определяет число элементарных шаговых приращений по ведущей координате, приходящихся на единичное перемещение по ведомой координате, а параметр г 1=4 . - преобладание количества интерполяционных тактов, для которых шаговые приращения по ведомой координате не формируются, Для второго полуоктанта - г 1 - 1. М 1 М - и 2 М 2 2 М(3)При нечетном К возможны два вариантацентрирования многоразрядного приращения. При левом центрировании диагональ ный шаг формируется после (К + 1)/2 - 1горизонтальных, а при правом - после (К++3)/2 -1 горизонтальных шагов (фиг. 7).Отклонение д 1 от идеальной прямойпри левом центрировании (фиг. 7 а) опреде ляется согласно выражению И 1+ Ь40 2 М 2+ 2 М(4) 55 1ю +2 М При соответствующем выборе алгоритма следования цифровых сегментов только длиной (К+1) и (К+2) можно достичь погрешности аппроксимации, не превышающей шага дискретизации. Дальнейшее уменьшение модуля погрешности невозможно, поскольку параметр К находят путем выделения целой части отношения (М - И)/й при М Мй или М(М - й) при М 2 й и дробная часть указанных отношений можетприближаться к единице,Известно, что уменьшения погрешности аппроксимации можно достичь при цен 5 трировании (симметричном размещенииединицы среди нулей) в многоразрядномприращении (фиг, 61,Отклонение д 2 от идеальной прямой вточке (К + 1) при отработке первого много 10 разрядного приращения (К + 1) равно И й М - Йд 2 =1 -- (к+1) =1 -- ( 1 + М М й ц 15 М М - К й з +1) =1 -- ( -- +1) = - , (1) М й М М где й - остаток от деления (М - Й) на М. При отработке многоразрядного прира 20 щения (К+ 2) отклонение дз от идеальной(2) Поскольку ( - ( К ,знаки1 й 130 отклонений А и дз от идеальной прямойпротивоположные.Значение погрешности аппроксимациид 1 зависит от четности или нечетности К, Причетном К35 д - 1 М. К+2 1+(1 И К+1 М 2 2 2 М 2 д 1 =1 --М К+1 1 - Ь/М М 2 2 Из последнего вь.ражения следует, что при левом центрировании и нечетном эначении К модуль погрешности аппроксимации превышает половину шага дискретизации,В случае правого центрирования отклонение д 1 от идеальной прямой (фиг. 7 б) равноК +3 1 1 2-(5)2 М 2 2 МПоскольку 2 МЬ, то 1 дт 1;: 1/2, Поэтому при нечетном К используют правое центрирование,В общем случае для первого многоразрядного приращения длиной (К + 1) диагональный шаг формируют после К+ 1)/2)ц,4 горизонтальных.Обобщая выражения (3) и (5), можно записать2 И - Ь(6)2 2 Мгде 7 1 при нечетном К.При четном К 7. -- О,Шаговая интерполяция нижнего уровня, заключающаяся в преобразовании цифровых сегментов, аппроксимирующих заданный Отрезок прямой, в управляющие унитарные сигналы исполнительных органов, значительно упрощается при генерации диагонального шага в конце аппроксимирующей группы. Смежные участки двух соседних цифровых сегментов между диагональными шагами имеют длину К или (К - 1). Это позволяет интерполироьать воспроизведение отрезка прямой цифр.вымо сегментами с диагональными ШатПМИ. ФОРМИРУЕМЫМИ В КОНЦЕ ГРУППЫ,При этом аппроксимирующие преобразования сводятся к следующему. Формируют первое многоразрядное приращение равным К + 1)2,ц.4+ 1, Все последующие приращения, за исключением последнего, принимают равным (К + 1) или (К + 2) в зависимости от результатов отслеживания отклонения аппроксимирующей точки от идеальной прямой. Последнее приращение принимают равным первому без генерации диагонального шага. Зто следует из свойства симметрии последовательности значений щаговых приращений по ведомой координате относительно своего центрального элемента при отклонении от идеальной прямой, не превышающем половины шага дискретизации, Исключение составляет случай для вектора с М = 1 и четном М и Ь -- =О, В этом случае, в сипу правого центрирования, последнее многоразрядное. приращение по ведущей координате на один элементарный шаг меньше по сравнению с первым многоразрядным приращением,Рассмотрим алгоритм следования цифровых сегментов, обеспечивающий погрешность аппроксимации, не превышающую половины шага дискретизации,Обозначим через д 1 отклонение от идеальной прямой после выполнения )-го диагонального шага. Поскольку ордината точки Х = К + 1 идеальной прямой смещена вниз относительно аппроксимирующего отрезкана величину д 2, то значение погрешности д при замене)-го участка идеальной прямой10 цифровым сегментом длиной (К+ 1) равноIзначению д;-1 + д 2, При аппроксимациицифровым сегментом длиной (К + 2) значение погрешности д 1 находят путем вычитания из погрешности д 1-1 величиныдз 1,15 Учитывая указанный характер накопления погрешности д 1, можно предложитьследующий алгоритм линейной интерполяции,Первое многоразрядное приращение20 формируют равным целой части отношенияЦК+ 1)/2)ц.4+ 1. При этом погрешность аппроксимации после выполнения первого диагонального шага достигает значения д,Последовательно прибавляют значение д 2к д до момента выхода указанной, суммы запределы допустимой погрешности, формируя в каждом интерполяционном такте многоразрядное приращение (К,+ 1), т. е. для .каждого 1 последоватепьно проверяется условиед 1 +)д 2 1/2,где ) - число интерполяционных тактов после выдачи первого многоразрядного приращения.С учетом выражений (1) и (6) последнеенеравенство можно записать в виде1 2 М - 1 п+ 1 12 2 М М 2После эквивалентных преобразованийокончательно получают2 г 11211,ОТаким образом, к значению 1 - 2 М последовательно прибавляют величину 2 И домомента выхода суммы из отрицательнойобласти, формируя в каждом интерполяционном такте многоразрядное приращение(К+ 1). В такте, соответствующем выполнению условия (7), формируют многоразрядное приращение (К + 2), что согласновыражению (2) обеспечивает уменьшениемодуля погрешности на величину(И - Ь)/М.Последнее эквивалентно вычислению излевой части неравенства (7) величины(2 М - Ь). Однако, поскольку прогнозирующее вычисление проводилось для многоразрядного приращения (К т 1), а формируетсяприращение (К + 2), то с целью коррекциирезультата из левой части неравенства (7)вычитают значение 2 Ь+ 2(1 ч - и) = 2 М, Процедуру коррекции можно совместить с вычислением значения следующего многоразрядного приращения, для чего к левой частинеравенства (7) дополнительно прибавляют. значение 2 п. При положительном значении 5результата формируют многоразрядноеприращение (К+ 1), в противном случае -(К+ 2), повторяя описанные вычисления.Группы (К + 1) или (К + 2) формируют йраз, Последнее многоразрядное приращение принимают равным первому беэ генерации диагоНального шага, за исключениемслучая, оговоренного ранее. Процесс интерполяции отрезка прямой на этом заканчивается. Граф-схема рассмотренного 15алгоритма линейной интерполяции приведена на фиг. 3, где Е - значение дополнительной функции, знак которой определяетдлину цифрового сегмента на данном интерполяционномтакте;с- признак,определяющий наличие или отсутствие в цифровомсегменте диагонального шага, причем приС = 0 диагональный шаг формируется; П1) - .участок цифрового сегмента ЯЦ 1) до диагонального шага на )-м интерполяционном 25такте,В соответствии с полученным алгорит мом предлагается структурная схема интерполятора (фиг, 1),Интерполятор работает следующим образом,На второй информационный вход 16 устройства поступает значение меньшегоприращения й, которое записывается в регистр.5 и блок 9 управления, активный уровень сигнала записи - на входе 15. При этомв регистре 10 запоминается значение К,где К= (.(М-й)/й.) при М 2 й;К = (. й/(М - й)при М2 й,а также остаток и, получаемый внешним устройством при определении К,где п=М- Кй при М 2 й;и = й - К(й - М) при М2 й, .Единичным уровнем сигнала на входе15 осуществляется обнуление накапливающего сумматора 4, Передним фронтом сигнала на входе 15 в блоке 9 управлениязаписывается признак, принимающий нулевое значение при М2 й (первый полуоктакт), и значение логической единицы при 50М 2 й (второй полуоктант), Единичнымуровнем сигнала на входе 15 в счетчик 46блока 9 управления записывается значениеменьшего приращения й.На выходе коммутатора 13 формируется 55значение (К + 1)/2, получаемое на второмвходе коммутатора 12, Для этого в сумматоре 11 к значению К прибавляется единица,т, е. формируется операнд (К+ 1), Монтажным путем из операнда (К + 1) на в 1 ором. входе коммутатора 12 получают значение (К + 1)/2, которое является первым многоразрядным приращением исходного отрезка прямой. Значение операнда на выходе сумматора 8 определяет начальное значение оценочной функции Г, которое переда. ется в накапливающий сумматор 4 в зависимости от четности К;Ео = й - й при четном К;Ро = и - 2 й при нечетном К.Это достигается следующим образом. Младший разряд К, по значению которого судято четности К, поступает с информационного выхода регистра 10 на вход 30 блока 9 управления. При четном К на выходе 25 блока 9 управления формируется значение логической единицы, поступающей на управляющий вход коммутатора 6, что приведет к передаче значения й на вход 7 блока инверторов. С выхода блока 7 инверторов на вход сумматора 8 поступает обратный код й, Поскольку на вход сумматора 8 от регистра 2 поступает значение и, а на вход переноса - значение логической единицы, то на выходе сумматора 8 получают значение и - й. При нечетном К на выходе 25 блока управления формируется значение логического нуля, что приводит к передаче на выход коммутатора 6 значения 2 й, Следовательно, на выходе сумматора 8 получают значение и - 2 й,После указанных действий на выходе коммутатора 13 формируется многоразрядное приращение (К+ 1)/2. От внешнего устройства на вход 17 интерполятора поступает сигнал "Пуск"., после чего в первом такте на третьем выходе 28 блока 9 управления формируется передний фронт импульса, позволяющий записать содержимое накапливающего сумматора 4 в его внутренний регистр (табл. 1), На выходе 21 интерполятора формируется передний фронт сопроводительного импульса, подтверждающий действительное значение многоразрядного приращения.Начиная с второго интерполяционного такта, на выходе 25 блока 9 управления формируется значение логической единицы, которое обеспечивает значение на выходе блока 6 значения й. Следовательно, на выходе сумматора 9, начиная с второго такта, формируется значение (и - й), которое поступает на третий вход коммутатора 3. На второй вход коммутатора 3 со сдвигом влево на один разряд поступает значение(п - й), т. е. формируется значние 2(й - й). К содержимому накапливающего сумматора 4 прибавляется значение 2 п, получаемое монтажнымпутем на первом входе первого коммутатора 3, т. е, формируется значениеЕ 1= Ро+ 2 Ь.Наличие единичного сигнала на выходезнакового разряда накагеливающего сумматора 4 указывает на положительное значение оценочной функции, в противном случаеоценочная функция принимает отрицательное значение.По знаку оценочной функции Р 1 на выход коммутатора 12 передается одно из значений П(2) = К; П(2) = К+ 1, Отрицательномузначению оценочной функции Р 1 соответст.вует приращение П(2) = К, а положительному- П(2) = К+1,В дальнейшем оценочная функция вычисляется в соответствии со следуеощимисоотношениями;Ее+1 = Ре+ 2 Ь при Ре О;Ее+1= Ре(й- е 1) при Ре ЖПри Ее0 на выходе коммутатора 12.формируется операнд П = К, а при РеО - П:=К+ 1,ОпЕранды 2 Ь, 2(еч - е 1) суммируются со.ответственно на первом и втором входахкоммутатора 3, а операнды П =: К и П = К+"- на третьем и первом входах коммутатора12. Значения оценочной функцели определяются в накопительном сумматоре 4,С каждым интерполяционным тактомсодержимое счетчика 46 блока управленияуменьшается на единицу. При достиженииим нулевого состояния на его выходе переноса формируется сигнал единичного урсвня, указывающий о необходимости выдачипоследнего многоразрядного приращения,Согласно алгоритму работы последнее многоразрядное приращение может ееринимат ьодно из двух значений:П(И+1) =- П(1)-1 при Ь =О, К- нечетное;П(М + 1) = П(1) - в осталь еых случаях.При Ь = О на выходе элемента ИЛИ 1формируется сигнал нулевого уровня, котсрый поступает на вход 26 блока 9 управления. При единичном уровне сигнала навходе 30 блока 9 управления на входах 34 и31 формируются сигналы соответственно1нулевого и единичного уровней, что, в свою. очередь, приводит к передаче на вцхсд коммутатора 12 значения еК/2 т. е, П(1)- 1,Во всех остальных случаях в последнеминтерполяционном такте на входах 34 и 31блока 9 управления формируются нулевыезначения, что обеспечивает передачу на выход коммутатора 12 значения (К 1-1)/2, т, е,П(1),В последнем интерполяционном тактена выходе 32 формируется сигнал нулевогоуровня, запрещающий формирование диа 5 10 15 20 25 30 35 45 50 55 гонального шага при М2 М или горизонтального шага при ММ,Выдача шагов, приращений на выход коммутатора осуществляется в соответствии со значением признака, определяющего соответствие генерируемого отрезка первому или второму полуоктанту.При г = 0 (признак принадлежности отрезка прямой первому полуоктанту) на выход 23 выдается значение многоразрядного приращения от коммутатора 12, а на выход 24 - значение логической единицы от первого входа коммутатора 13.Следовательно, внешним устройством воспринимается цифровой сегмент, показанный на фиг, 11 в.При е = 1 (признак принадлежности отрезка прямой второму полуоктанту) на выход 24 выставляется значение многоразрядного приращения от коммутатора 12, е на выход 23 - значение логической единицы с первого входа коммутатора 13. Внешним устройством воспринимается цифровой сегмент,. показаннцй на фиг. 11 г.Таким образом, информация на выходе 24,определяет число диагональных шагов, а на выходе 23 - горизонтальных шагов, Граф- схема алгоритма работы интерполятора приведена на фиг, 3.Рассмотрим работу блока 9 управления. Для избежания гонок и состязаний при синтезе блока использован принцип единой врс,атее еной организации.В цикле поде сетавки в триггер 47 передним фронтом сигнала на входе 15 записи интерполятора запоминается признак, определяюеций принадлежность интерполируемаго отрезка первому или второму полуоктанту, г =. 0 - соответствует принадлежности отрезка прямой первому полуоктанту, а г = 1второму,Единичное значение сигнала на входе 15 интерполятора производит запись меньшего приращения еч в счетчик 46, а также устанавливает в нулевое состояние триггеры 44, 45 и 53.Передним фронтом сигнала "Пуск" на входе 17 интерполятора разрешается работа интерполятора. В этом случае устанавливается в единичное состояние триггер 36. При появлении после этого заднего фронта сигнала на выходе формирователя 38 импульсов григгер 37 устанавливается в единичное состояние, что разрешает прохождение импульсной последовательности от формирователя 38 на выход элемента 40, Укаэанные действия по запуску интерполятора обеспечивают присинхронизированную его работу к импульсной последовательности от формирователя 38 после55 поступления сигнала "Пуск" (передний фронтсигнала на третьем входе 17 интерполятора). Нулевое состояние сигнала на инверсном выходе триггера 37, поступающее через элемент 39 на выход 20 "Конец интерполяции", указывает о занятости интерполятора.Рассмотрим формирование начального значения оценочной функции и засылку ее в накапливающий сумматор 4. Функция формируется нэ выход сумматора 8 в зависимости от четности К. Если К нечетное (его младший разряд равен единице), значение которого поступает на второй вход элемента ИЛИ 48, на его выходе 25 формируется логический нуль, значение которого на адресном входе коммутатора б обеспечивает передачу на его выход значения 2 М, Если К - четное (его младший разряд равен нулю), в свою очередь, на выходе 25 формируется логическая единица, значение которой на адресном входе коммутатора 6 обеспечивает передачу на его выход значения й,Таким образом, на выходе сумматора 8 формируется значениеГо = й - И при четном К;Го = ий при нечетном К.На адресном входе первого коммутатора выставлен логический нуль, так как григгер переноса сумматора 4 и триггер 53 блока управления обнулены, Единичное состояние триггера 37 обеспечивает прохождение импульсной последовательности нэ выход 28. В дальнейшем каждым передним фронтом указанной последовательности производится засылка суммы во внутренний регистр сумматора 4, В первом такте после сигнала "Пуск" (табл. 1) происходит засылка во внутренний регистр сумматора содержимого третьего входа первого 3 коммутатора (регистр сумматора обнулен в подготовительном цикле).Последующил задний фронт импульса, поступающего с формирователя 38 импульсов, устанавливает триггер 44 в единичное состояние. В дальнейшем на третьем входе коммутатора 3 формируется значение и - Й, а следовательно, на втором входе коммутатора 3 - значение 2(п - И), Значение логической единицы с выхода триггера 44 поступает на первый входэлемента ИЛИ 48, что приводит к появлению на выходе 25 блока 9 управления значения логической единицьг, которое будет неизменным втечение всего цикла интерполяции, Поскольку блоки 6 - 8 комбинационные, то указанные действия обеспечат формирование на втором входе блока 3 значение 2(п - М), которое необходимо для формирования последую 5 10 15 20 25 30 35 40 45 50 гцих после Го значений оценочной функции.Г (см. алгоритм).Сформированная единица нэ прямомвыходе триггера 44 приводит к появлениюна выходе элемента 52 переднего фронтасигнала и устанавливает триггер 53 в единичное состояние, при этом старший разрядкоммутатора 3 устанавливается в единичноесостояние, В дальнейшем изменение адреса коммутатора 3 определяется сигналомпереноса, поступающего с накапливающегосумматора 4, в соответствии с алгоритмомработы (табл, 1, фиг. 3).Единичное состояние триггера 44обеспечивает передачу импульсной последовательности от прямого выхода формирователя 38 импульсов через элемент 43 навыход 21, Передним фронтом сигнала навыходе 21 осуществляется стробированиемногоразрядных выходных приращений навыходах 23 и 24 интерполятора.Рассмотрим работу блока 9 управленияпри формировании цифровых сегментов, Впервом интерполяционном такте триггер 45обнулен сигналом "Пуск", а перенос накапливающего сумматора 29 равен нулю(так как происходит только первая засылка),поэтому на адресном входе коммутатора 12выставлены нули, На выходе коммутатора12 выставлен цифровой сегмент (К + 1)/2(табл. 2),Пеовым задним фронтом импульснойпоследовательности, поступающим с элемента И 43 триггер 45 устанавливается вединичное состояние, тэк как прямой выходтриггера 44 установлен в единичное состояние ранее. Единичное состояние триггера45 изменяет старший адрес коммутатора 12(устанавливает его в единичное состояние)и готовит элемент 52 для формирования переднего фрон тэ им пул ьса.Все последующие значения цифровыхсегментов, выставленных на выходе коммутатора 12, зависят от значения сигнала переноса сумматора 4. При нулевом значениисигнала переноса и отсутствии перекосасчетчика 46 (логический нуль) на выходе элемента 50 формируется уровень логическогонуля, а следовательно, и на выходе 31 блока9 управления. На выходе коммутатора 12формируется цифровой сегмент К (табл. 2),При единичном значении сигнала переносасумматора 4 на выходе 31 формлруется уровень логического нуля. На выходе коммутатора 2 формируется цифровой сегмент (К+1) (табл. 2),С каждым приодом заднего фронта импульса импульсной последовательности с выхода элемента И 43 содержимое счетчика 46 уменьшается на единицу. После поступ
СмотретьЗаявка
4721756, 24.07.1989
СПЕЦИАЛЬНОЕ КОНСТРУКТОРСКО-ТЕХНОЛОГИЧЕСКОЕ БЮРО "МОДУЛЬ" ВИННИЦКОГО ПОЛИТЕХНИЧЕСКОГО ИНСТИТУТА
СТАХОВ АЛЕКСЕЙ ПЕТРОВИЧ, РОМАНЮК АЛЕКСАНДР НИКИФОРОВИЧ, СЕНЧИК ВЛАДИМИР СЕРГЕЕВИЧ, ШЕБУКОВ ВЛАДИМИР АЛЕКСАНДРОВИЧ, СОРОКА НАДЕЖДА ИВАНОВНА, ГЕЙВАНДОВА НАДЕЖДА ФЕДОРОВНА
МПК / Метки
МПК: G05B 19/4103
Метки: интерполятор, линейный, цифровой
Опубликовано: 23.11.1991
Код ссылки
<a href="https://patents.su/17-1693592-cifrovojj-linejjnyjj-interpolyator.html" target="_blank" rel="follow" title="База патентов СССР">Цифровой линейный интерполятор</a>
Предыдущий патент: Устройство для управления прецизионным пьезоэлектрическим шаговым двигателем
Следующий патент: Система контроля устройства управления электромеханическим объектом
Случайный патент: Устройство для контроля и регистрации работы оборудования