Круговой интерполятор
Иллюстрации
Показать всеРеферат
Изобретение может быть использовано в системах числового программного управления, а также в устройствах отображения графической информации на дисплеях или графопостроителях . Цель изобретения - повьшение быстродействия и точности интерполятора . Интерполятор содержит блок 1 определения шага, два реверсивных счетчика 2 и 3, два сумматора-нако (Л о: ел ГС 4ib CD
А1
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
„„SU,»13524 1 (59 4 G 05 В 19/18
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (54) КРУГОВОЙ ИНТЕРПОЛЯТОР
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 4074045/24-24 (22) 04.05.86 (46) 15. 11. 87, Бюл. К- 42 (7 1) Харьков ский политехнический институт им. В.И. Ленина (72) О.Г. Простаков, Ю.А, Раисов, В.Н, Спасский и А.Н. Сухер (53) 621.503.55(088.8) (56) Авторское свидетельство СССР.
У. 1024880, кл. G 05 В 19/4 13, 1983, Авторское свидетельство СССР
У 1259218, кл. G 05 В 19/18, 1985. (57) Изобретение может быть использовано в системах числового программного управления, а также в устройствах отображения графической информации на дисплеях или графопостроителях. Цель изобретения — повышение быстродействия и точности интерполятора. Интерполятор содержит блок 1 определения шага, два реверсивных счетчика 2 и 3, два сумматора-нако13524 пителя 11 и 14, два блока элементов
И 5 и б, два регистра 7 и 9 координат конечной точки, пять блоков сравнения 4, 8, 10, 13 и 15, элемент И 12 и блок 16 вывода приращений по координатам. Третий блок сравнения 4 определяет, какое из текущих значений коордичат больше, четвертый и пятый блоки сравнения 13 и 15 — содержимое первого сумматора-накопителя 11 (модуль функции И) больше или нет значения радиуса дуги окружности R, находящегося во втором сумматоре-нако- пителе 14. Блок 1 определения шага 1 по комбинации сигналов с третьего, четвертого, пятого блоков сравнения
61
4, 13, 15 и знаковому сигналу с первого сумматора-накопителя 11,выдает приращения на каждом тактовом импульсе или по одной координате, или по обеим — диагональный шаг, а также осуществляет перенос слагаемых в соответствии с алгоритмом работы в первый сумматор-накопитель 11 из реверсивных счетчиков 2, 3, где хранятся текущие значения координат, и изменяет содержимое последних на +1, При равенстве текущих значений координат конечным, что определяется первым и вторым блоками сравнения 8 и 10, интерполяция заканчивается. 1 з.п. ф-лы, 4 ил.
Изобретение относится к технике автоматизированного управления производственными процессами и может быть использовано в системах числового программного управления станками.
Цель изобретения — повышение быстродействия и точности интерполятора.
На фиг. 1 приведена функциональная схема кругового интерполятора, на фиг. 2 — схема блока определения шага; на фиг. 3 — схема блока вывода координат; на фиг, 4 — пример аппроксимации дуги окружности радиуса R=20.
Интерполятор содержит блок 1 определения шага, реверсивные счетчики
2, 3, третий блок 4 сравнения, блоки
5, б элементов И, регистр 7 координат конечной точки, блок 8 сравнения, регистр 9 координат конечной точки, блок 10 сравнения, первый сумматорнакопитель 11, элемент И 12, четвертый блок 13 сравнения, второй сумматор-накопитель 14, пятый блок 15 сравнения, блок 16 вывода прираще- 25 ний по координатам.
Блок 1 содержит элементы И 17-22, элементы ИЛИ 23-26.
Блок 16 содержит RS-триггера 27, 28, элементы И 29-32. 30
Интерполятор работает следующим образом.
При движении по часовой стрелке в первом квадранте предварительно до образования приращений по координатам вычисляется новое значение функции U, равное:
U -2У + 1, если Х; 6 Y
U +2Х; + 1, еслиХ; У
I(U
После каждого шага по координате происходит изменение ее текущего значения на 1. При равенстве, текущих координат конечным вычисления заканчиваются.
Из приведенного видно, что для вычисления последующего значения функции U в и+1-разрядный сумматор-накопитель 11, где хранится текущее значение функции, необходимо добавлять либо прямой код числа 2К;+1, либо дополнительный код числа 2У -1. В U5 разрядных реверсивных счетчиках 2,3 находятся текущие значения Х; и У соответственно. Если делается диагоI
U =U+ 2Х; + 1, еслиХ, «
U =U-2Y +1 еслиХ >У
Ф 1 °
При значении модуля функции U меньше значения радиуса дуги окруж1 ности R(/U /(R) делается шаг по координате, текущее значение которой меньше. При значении модуля функции
U больше или равного значению радиу-!
ca R(/U / R) делается диагональный шаг с одновременным вычислением слеII дующего значения функции U равного:
13524 нальный шаг или шаг по оси Х, то пря. мой код из реверсивного счетчика 2 подается со сдвигом на один разряд в сторону старшего в сумматор-накопитель 11 и прибавляется "1" в его первый разряд. Следовательно, в сумматор-накопитель 11 подается прямой код числа 2Х;+1.
При диагональном шаге или шаге по 10 оси У в сумматор-накопитель 11 необходимо подать число, равное 2""—
-(2Y-1) — это дополнительный код числа 2У-1.
61 и из координаты начальной точки Х вычитается 1 перед началом отработки.
При диагональном шаге или по оси Х прямой код из реверсивного счетчика 2 подается со сдвигом на один разряд в сторону старшего в сумматорнакопитель 11 и прибавляется 1 в его первый разряд. Следовательно, в сумматор-накопитель 11 подается прямой код необходимого числа:
2(Х,-1)+1 = 2Х;
55
niI и
2 -(2У-1) =2 (2 -1-(Y-1)) +1, где выражение, стоящее в квадратных скобках, равно обратному коду содержимого реверсивного счетчика 3, предварительно уменьшенного на "1". Координата Y при движении по часовой стрелке уменьшается, реверсивный счетчик 3 работает на вычитание и из координаты начальной точки Y вычитается "1" перед началом отработки.
Если обратный код иэ реверсивного счетчика 3 передавать со сдвигом на один разряд в сторону старшего в сумматор-накопитель 11 и прибавлять "1" в его первый разряд, то в сумматорнакопитель 11 подается дополнительный код числа 2У-1.
При движении против часовой стрелки в первом квадранте до образования приращений по координатам новое знаI чение функции U вычисляется следующим образом:
U = U + 2X — 1 если Х Ó ! У У
U = U — 2У вЂ” 1 если Х o Y..
1 э 1 J
В случае /U / c R делается шаг по координате, текущее значение которой меньше. При /U / R делается диагональный шаг с вычислением следующего
1( значения функции U
II
U = U — 2У -1 если Х Y
Э Э (U =U +2Х;-1, еслиХ, о У
Следовательно, для вычисления последующего значения функции U в сумматор-накопитель 11 необходимо добавлять либо прямой код числа 2Х; -1, либо дополнительный код числа 2У +1.
Координата X при движении против часовой стрелки уменьшается, реверсивный счетчик 2 работает на вычитание, При диагональном шаге или шаге по оси Y обратный код иэ реверсивного счетчика .3, равный 2 -1-Y подается со сдвигом на один разряд в сторону старшего в сумматор-накопитель 11 и прибавляется 1 в его первый разряд:
2(2 -1-У; )+1 = 2 -(2У. +1), (1 что является дополнительным кодом необходимого числа 2У +1, Иэ приведенного описания видно,что стратегия вычислений, структура, связи, состав предлагаемого кругового интерполятора сохраняются без изменений при движении как по часовой, так и против часовой стрелки. При шаге по оси X или диагональном шаге иэ реверсивного счетчика 2 через блок 5 передается удвоенный прямой код в сумматор-накопитель 11 и добавляется
1 на его вход, после чего изменяется текущее значение Х в реверсивном
1 счетчике 2 на +1 в зависимости от направления движения. При шаге по оси Y или диагональном шаге из реверсивного счетчика 3 через блок 6 передается удвоенный обратный код в сумматор-накопитель 11 и добавляется
1 на его вход после чего изменяется
) текущее значение У> в реверсивном счетчике 3 на +1.
Перед началом отработки дуги окружности в реверсивные счетчики 2 и
3 вводятся значения координат начальной точки Х и Y соответственно, а в регистры 7 и 9 — значения координат конечной точки Х „ и Y На установочные входы блока 16 вывода координат подается 1 при наличии команд движения в отрицательном направлении -Х и -Y соответственно. В сумматор-накопитель 14 заносится прямой код радиуса дуги окружности. Сумматор-накопитель 14 необходим для получения дополнительного кода радиуса. путем прибав1 б чении функции U правильный результат сравнения присутствует на выходе блока 15, где происходит сравнение дополнительных кодов, а на знаковом выходе сумматора-накопителя 11 положительный потенциал. При положительном значении функции U правильный результат сравнения — на выходе блока
13, где сравниваются прямые коды, а на знаковом выходе сумматора-накопителя 11 нулевой потенциал, Знаковый выход сумматора-накопителя 11 соединен через пятый вход блока 1 с первым прямым входом элемента И 17 и с первым инверсным входом элемента И 22. Выход блока 15, на котором при /U/ + R положительный потенциал, а при /U/ Rнулевой, соединен с первым инверсным входом элемента И 17, выход блока 13, на котором при U (R положительный потенциал, а при U R — нулевой, соединен с вторым инверсным входом элемента 22. При Х; < Yj o÷åðåäíoé импульс из рабочей тактовой последовательности f,,поступающий на вторые входы элемейтов 18, 21 через второй вход блока 1, проходит через элементы
21, 23, появляется на первом выходе блока 1 как шаг по оси Х, а при U R и положительном значении функции U этот же импульс .проходит еще через элементы И 23 и ИЛИ 24, появляется на втором выходе блока 1 как шаг по оси
U а также проходит через элемент
ИЛИ 26 и появляется на четвертом выходе блока 1, осуществляя перенос числа из реверсивного счетчика 3 через блок 6 в сумматор-накопитель 11 в соответствии с алгоритмом. При Х > Yj очередной импульс из тактовой последовательности Ер проходит через элементы И 18 и ИЛИ 24, появляется на втором выходе блока 1 как шаг по оси
У, а при /U/ «> R и отрицательном значении функции U этот же импульс проходит еще через элементы И 17 и ИЛИ
23, появляется на первом выходе блока
1 как шаг по оси Х, а также проходит через элемент ИЛИ 25, появляется на третьем выходе блока 1, осуществляя перенос числа из реверсивного счетчика 2 через блок 5 в сумматор-накопитель 11 в соответствии с алгоритмом работы. . Приведенное построение блока 1 возможно потому, что при Х > У положительные значения функции U никогда не превьппают значения радиуса R u
5 135246 ления 1 к обратному коду. С первого выхода сумматора-накопителя 14 на второй вход блока 13 сравнения подается прямбй код радиуса, а с второго выхода на второй вход блока 15 сравне5 ния подается дополнительный код радиуса. Сумматор-накопитель 14 можно заменить двумя регистрами, причем в первый заносить прямой код радиуса, а во второй — дополнительный. Использование регистров вместо сумматора приводит к усложнению подготовки кодированной программы, в которой необ-, ходимо иметь помимо прямого кода ра» диуса еще и дополнительный. На первый и второй входы блока 4 подаются для сравнения прямые коды текущих координат Х; и Y из реверсивных счетчиков 2 и 3. С выхода блока 4 через шестой вход блока 1 на прямые входы элементов 18, 20 и инверсные входы элементов 19, 21 подается положительный потенциал при Х; > У и ну„J левой — при Х Y . Очередной сигнал
1 j из тактовой последовательности синхронизации f, поступающий на первый вход блока 1, появляется либо на третьем выходе блока 1, проходя через элементы И 19 и ИЛИ 25, если Х; У, gp либо на четвертом выходе блока 1,проходя через элементы И 20 и ИЛИ 26, если Х > Y . Сигнал с третьего выj хода блока 1 подается на блок 5, осуществляет перенос удвоенного прямого . кода из реверсивного счетчика 2 в сумматор-накопитель 11 и поступает на его первый разряд, добавляя 1. В сумматоре-накопителе 11 образуется новое значение функции U, равноелибо 4О
U = U + 2X, +1 при движении по часо-! вой стрелке, либо U = U +2X; -1 при движении против часовой стрелки.
Сигнал с четвертого выхода блока 1 подается на блок 6, осуществляя пере- 45 нос удвоенного обратного кода из реверсивного счетчика 3 в сумматор-накопитель 11 и поступает на его первый разряд, добавляя 1. В сумматоре-накопителе;11 образуется новое значение ВО
I функции U: либо U = U — 2Y +1 при
5 движении по часовой стрелке, либо
U = U -2Y -1 при движении против
5 часовой стрелки.
Выход сумматора-накопителя 11 подается на объединенные первые входы блоков 13, 15, в которых происходит сравнение по величине модуля функции
U и радиуса R. При отрицательном зна1. Круговой интерполятор, содержащий первый сумматор-накопитель,элемент И, блок вывода приращений по координатам и координатные каналы, каждый из которых содержит реверсивный счетчик, блок элементов И, регистр координаты конечной точки и блок сравнения, который первым входом соединен с выходом регистра координаты конечной точки, вторым вхолом — с прямым выходом реверсивного счетчика, а выходом — с входом элемента И, выход которого является первым выходом устройства, первый вход первого сумматора-накопителя сое,динен с выходом первого блока элемен-; тов И, первый вход которого соединен с прямым выходом реверсивного счетчика первого координатного канала, а второй вход первого сумматора-накопителя — с выходом второго блока элементов И, первый вход которого соединен с инверсным выходом реверсивного счетчика второго координатного канала, установочные входы блока вы.-вода приращений по координатам, реверсивного счетчика и регистра координаты конечной точки каждого координатного канала соединены с входами устройства, а выходы блока вывода приращений по координатам — с выходами
7 135246 элемент И 2 1 закрыт, а при Х; У„ отрицательные значения функции U никогда не превышают значения R и. элемент И 18 закрыт.
Сигналы из последоватетельности f. опережают сигналы из последовательности f на время, равное времени образованйя в сумматоре-накопителе 11 нового значения функции U при переносе слагаемого из реверсивного счетчика 2 или 3 плюс время установления результата сравнения на выходе блоков 13 или 15 сравнения. Сигнал с первого выхода блока 1 — шаг по оси
Х вЂ” поступает на вход реверсивного счетчика 2, изменяя его состояние на + 1 (+1 при движении по часовой стрелке; -1 при движении против часовой стрелки), и на объединенные входы элементов И 29, 30 через первый вход блока 16. При наличии команды
"-Х" триггер 27 установлен в единичное состояние по S-входу и сигналы, соответствующие приращению по оси Х, 25 проходят через элемент И 29 на выход устройства движения по оси Х в отрицательном направлении. При движении в положительном направлении триггер
27 сбрасывается по R-входу в нулевое состояние и сигналы проходят через элемент И 30 . на выход устройства.
Сигнал с второго выхода блока 1— шаг по оси Y — - поступает на вход реверсивного счетчика 3, изменяя его состояние на +1 (+1 при движении против часовой стрелки; -1 при движении по часовой стрелке) и на объединенные входы элементов 31, 32 через второй вход блока 16. При наличии команды
"-Y" триггер 28 устанавливается в единичное состояние по .S. — âõîäó и сиг.налы координатного приращенйя по оси
"Y" проходят через, элемент; И 31 на выход устройства движения по оси Y
45 в отрицательном нанравлении. При движении в положительном направлении триггер 27 сбрасывается по R-входу в нулевое состояние и сигналы проходят через элемент И 32 на выход уст50 ройства.
При равенстве координат Х; = Х на выходе блока 8 сравнения появляется положительный потенциал, а. положительный потенциал появляется на выходе блока 10 сравнения. В момент совпадения положитель ных потенциалов на входах элемента
И 12 интерполяция заканчивается.
8
В предлагаемом устройстве методическая погрешность аппроксимации дуги окружности снижена до 0,5 шага интерполяции, а аппаратная реализация интерполятора значительно проще известных, позволяющих получить сравнимую точность. Диагональные шаги сокращают общее количество тактовых сигналов из последовательности f, что увеличивает быстродействие интерполятора. Введение тактовой последовательности синхронизации f для промежус точного вычисления функции U не снижает быстродействия устройства, так как время между сигналами из последовательности fс и f значительно меньше.минимального периода частоты fp, соответствующего максимальным подачам станков с ЧПУ.
Интерполятор целесообразно использовать в устройствах с числовым программным управлением, где требуется высокая точность и большое быстродействие при обработке круговых участков.
Формула изобретения
135246 1
35 устройства, отличающийся тем, что, с целью повышения быстродействия и точности интерполятора, в него введены блок определения шага, второй сумматор-накопитель и третий, четвертый, пятый блоки сравнения,причем выход первого сумматора-накопителя соединен с первыми входами четвертого и пятого блоков сравнения, вторые входы которых соединены соответственно с первым и вторым выходами второго сумматора-накопителя,первый и второй входы блока определения шага являются входами устройства, выходы четвертого и пятого блоков сравнения соединены с третьим и четвертым входами блока определения шага, пятый вход которого соединен со знаковым выходом первого сумматоранакопителя, первый и второй выходы блока определения шага соединены соответственно с входами первого и второго реверсивных счетчиков и первым, вторым входами блока определения выво да координат, шестой вход блока определения шага соединен с выходом третьего блока сравцения, первый и второй входы которого соединены соответственно с прямыми выходами первого и второго реверсивных счетчиков, вто.рые входы первого и второго блоков элементов И соединены соответственно с третьим и четвертым входами первого сумматора-накопителя и третьим, четвертым выходами блока определения шага.
2. Интерполятор по п ° 1, о т л и— ч а ю шийся тем, что блок определения шага содержит шесть элементов И и четыре элемента ИЛИ, причем инверсные входы третьего и пятого элементов И и первые прямые входы второго и четвертого элементов И соединены с шестым входом блока определения шага, второй прямой вход второго и прямой вход пятого элементов
И соединены с вторым входом блока определения шага, прямой вход третьего и второй прямой вход четвертого элементов И соединены с первым вхолом блока определения шага„ первый прямой вход первого элемента И и первый инверсный вход шестого элемента И соединены с пятым входом блока определения шага, инверсный вход первого и второй инверсный вход шестого элементов И соединены соответственно с четвертым и третьим входами блока определения шага, выход второго элемента И соединен с вторым прямым входом первого элемента И и первым входом третьего элемента ИЛИ,второй вход которого соединен с первым входом четвертого элемента ИЛИИ выходом шестого элемента И, выход пятого элемента И соединен с прямым входом шестого элемента И и первым входом второго элемента ИЛИ, второй вход которого соединен с первым входом пер-. вого элемента ИЛИ и выходом первого элемента И, вторые входы первого и четвертого элементов ИЛИ соединены с выходом соответственно третьего и четвертого элементов И, выходы первого и четвертого элементов ИЛИ соединены соответственно с третьим и четвертым выходами блока определения шага, первый и второй выходы которого соединены с выходами соответственно второго и третьего. элементов ИЛИ.
1352461
1352461
Составитель А. Исправникова
Техред.А.Кравчук Корректор Г. Решетник
Редактор И. Циткина
Заказ 5565/47 Тираж 863 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Иосква, Ж-35, Раутская наб., д. 4/5
Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4