Уфа : УГ АТУ, 2 0 10
гётпш,к, QjrAQ'HQj
Т . 1 4 , № 2 (37). С . 1 7 0- 1 7 7
УПРАВЛЕНИЕ, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И ИНФОРМАТИКА • АВТОМАТИЗАЦИЯ И УПРАВЛЕНИЕ ТЕХНОЛОГИЧЕСКИМИ...
УДК 621.91
Н. Г. ЧИКУРОВ
РЕШЕНИЕ СЛОЖНЫХ ТРАЕКТОРНЫХ ЗАДАЧ В УСТРОЙСТВАХ ЧПУ КЛАССА ЮЧС
Рассматриваются математические алгоритмы управления формообразованием сложнопрофильных деталей для компьютерных систем ЧПУ. Приведена методика воспроизведения на станках с ЧПУ сложных пространственных траекторий, основанная на численных методах решения систем дифференциальных уравнений в реальном масштабе времени. Управление формообразованием сложнопрофильных деталей; компьютерные системы ЧПУ; численные методы решения систем дифференциальных уравнений
ВВЕДЕНИЕ
Управление обработкой сложнопрофильных деталей на металлорежущих станках с ЧПУ сводится к воспроизведению на станке заданных траекторий, по которым движется инструмент относительно детали. В системах ЧПУ класса ICNC (Industrial Computer Numerical Control) [1] управление сложными движениями рабочих органов металлорежущих станков основано на решении систем обыкновенных дифференциальных уравнений численными методами в реальном масштабе времени. Такую вычислительную процедуру в устройствах ЧПУ называют интерполяцией. Выбирая в системе дифференциальных уравнений в качестве независимой переменной путь вдоль дуги s, можно регулировать скорость движения текущей точки вдоль этой дуги простым изменением шага интегрирования As.
Обратимся теперь к анализу численных методов, которые можно использовать для решения дифференциальных уравнений в компьютерных устройствах ЧПУ. Для этой цели более подходят методы типа Рунге - Кутта. Если задать оптимальное значение периода таймерных прерываний T =10 мс, то на рабочих подачах (F < 1,5 м/мин) накопленная погрешность решения системы дифференциальных уравнений окружности методом Рунге - Кутта не превышает одной дискреты (1 мкм). При высокоскоростной обработке, когда контурная скорость рабочей подачи может составлять 6 и более метров в минуту, погрешность решения задачи превышает допустимую величину. На ускоренных подачах порядка 60 м/мин, погрешность на
Контактная информация: (347) 252-99-77
дуге окружности диаметром О = 50 мм составляет около 30 мкм.
Погрешность воспроизведения на станке кубических сплайн-функций значительно больше. Если кривизна вдоль дуги сплайна изменяется резко, то уже при скорости подачи 1,52 м/мин численное решение системы дифференциальных уравнений становится неустойчивым. Требуемый для нормальной работы сплайнового интерполятора период таймерных прерываний Т так мал (менее 0,05 мс), что использовать метод Рунге - Кутта 4-го порядка для решения рассматриваемого класса задач весьма затруднительно.
Обобщая изложенное, можно сделать следующее заключение: для интерполяции в устройствах ЧПУ сложных траекторий необходимы численные методы решения систем дифференциальных уравнений с порядком точности выше 4-го.
ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ В ФОРМЕ ШЕННОНА
Английским математиком К. Шенноном [2] приводится доказательство теоремы, согласно которой систему обыкновенных дифференциальных уравнений, не содержащую гипертрансцендентные функции, можно решить с применением только интеграторов и сумматоров.
Уравнения Шеннона отличаются тем, что содержат лишь операции умножения и суммирования. Отсутствие функциональных преобразований позволяет упростить и унифицировать процесс численного интегрирования дифференциальных уравнений в форме Шеннона. Для этого достаточно в исходных уравнениях, заданных в нормальной форме Коши, произвести простую замену переменных.
В отличие от уравнений в форме Коши в уравнениях Шеннона отсутствует общий для всех уравнений множитель Ох, представляющий собой дифференциал независимой переменной. Это означает, что уравнения Шеннона требуют интегрирования не по Риману, а по Стилтьесу. Для этой цели необходимы специальные формулы численного интегрирования по Стилтьесу, которые будут рассмотрены далее.
Интегратор Стилтьеса принято изображать в виде ориентированного пятиугольника (рис. 1), где у(0 - подынтегральная функция; х(0 - интегрирующая функция; ^ - независимый аргумент.
Рис. 1. Изображение интегратора Стилтьеса
К уравнениям Шеннона можно привести рациональные, алгебраические и трансцендентные функции. Исключение составляют лишь довольно редко встречающиеся гипертрансцендентные (трансцендентно-трансцендентные) функции, например гамма-функция или дзета-функция Римана.
Раньше дифференциальные уравнения в форме Шеннона использовались в цифровых дифференциальных анализаторах (ЦДА) [3], а также в механических решающих устройствах. Покажем на двух простых примерах методику записи дифференциальных уравнений в форме Шеннона.
Воспроизведение тригонометрической функции y = sin x
Получение этой функции сводится к решению системы дифференциальных уравнений
■ =
ах ах
В форме Шеннона система принимает вид: ёу = zdx, = - уах,
У(х0)= Уo, 2(х0 ) = 20.
Структурная схема, соответствующая уравнениям Шеннона, состоит из двух последовательно соединенных интеграторов (рис. 2).
Рис. 2. Схема вычисления y = sin х
Наряду с функцией y = sin х в рассматриваемой схеме вычисляется функция z = cos х. Поэтому данное вычислительное устройство можно рассматривать как модель кругового интерполятора.
Воспроизведение гиперболы y = ^ 1—)
Продифференцируем эту функцию по t и введем новую переменную z, которую, в свою очередь, продифференцируем по y.
dy , 2
- = -ky = z,
dt
— = -2ky.
dy
Запишем полученную систему дифференциальных уравнений в стандартной форме Шеннона.
=-2куау, у (¿0 )= У0; 2 (¿0 ) = ¿0.
На основании уравнений Шеннона строим структурную схему вычислительного устройства, которое содержит два интегратора (рис. 3).
Другие примеры записей дифференциальных уравнений в форме Шеннона можно найти, обратившись к ранее опубликованным работам
[2], [3].
Рис. 3. Схема вычисления функции y =
k (t0 + t)
РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ В ФОРМЕ ШЕННОНА С ПОМОЩЬЮ СТЕПЕННЫХ РЯДОВ
Рассмотрим новую методику численного решения дифференциальных уравнений в форме Шеннона с использованием степенных ря-
1
172
УП РАВЛ Е НИ Е , В Ы Ч ИСЛ ИТЕЛ Ь Н АЯ Т ЕХ НИ КА И ИН ФО Р МА Т ИКА • А ВТОМ АТИ ЗА ЦИ Я И УП РА ВЛЕ Н ИЕ.
дов. Методика основана на применении интегралов Римана и интегралов Стилтьеса.
Интеграл Римана (частный случай интеграла Стилтьеса)
Рассмотрим дифференциальное уравнение
ах{г)
или
= и(?),
ах(?)=и (¿а
(1)
(2)
Проинтегрируем уравнение (2) с помощью интеграла Римана:
I
х(г) = | и (га,
(3)
где 1 - независимая переменная.
Для интегрирования применим специальное устройство - интегратор Римана (рис. 4).
Рис. 4. Интегратор Римана
Таким интегратором может служить операционный усилитель.
Предположим, что подынтегральная функция и(1) задана в виде степенного ряда:
и(1) = и0 + и1А1 + и2 А?2 + и3А?3 +
(4)
где и0, и1, и2,... - коэффициенты ряда.
Требуется найти коэффициенты степенного ряда переменной х(1) на выходе интегратора:
х(1) = х0 + х1А? + х2 А?2 + х3А?3 + ..., (5)
где х0, х1, х2,. - коэффициенты ряда.
Для решения задачи продифференцируем выражение (5).
ах = (х1 + 2 х2 Аt + 3х3 А?12 + ..
(6)
но
ах = иа? = (и0 + и1А? + и2А?2 + и3А?3 + .. (7)
Приравнивая в (6) и (7) коэффициенты, при одинаковых степенях получаем
х0 — ил,
2 2 1
3 3 2
х4 = и* 3 ,
4 4 3
(8)
Интеграл Стилтьеса
Рассмотрим дифференциальное уравнение
ds(t)
= и(л),
или
ах(л) = и(л)ал(1). (9)
Проинтегрируем уравнение (9) по Стилтье-
су.
л
х(л) = | и(л)ал(?),
(10)
где и(л) - подынтегральная функция; ал(1) - интегрирующая сложная функция, зависящая от 1.
Для интегрирования применим интегратор Стилтьеса (рис. 5).
Рис. 5. Интегратор Стилтьеса
Моделью такого интегратора может служить механическое решающее устройство (рис. 6).
Рис. 6. Модель интегратора Стилтьеса
Интегратор имеет два входа и один выход. Дифференциал приращения аи изменяет расстояние г от центра фрикционного диска до прижимного ролика, а дифференциал приращения ал определяет угол поворота этого диска. Угловое положение х выходного валика определяется интегралом Стилтьеса:
х = к | и (?) ал (?),
где и(1) - подынтегральная функция; л(1) - интегрирующая функция; к - постоянный коэффициент.
Положим, что заданы степенные функции:
0
0
х1 = и0
1
а
1
1
5 = + + АГ2 + 53 А^3 + ...
01 2 2 3 3 (И)
и = и0 + и1Аг + и2А + пъА +...
Требуется найти коэффициенты степенного ряда:
х(г) = х0 + х1Аг + х2 Аг2 + х3Аг3 + ... (12)
Решаем задачу. Продифференцируем уравнения (11) и (12).
= (51 + 252 Аг + 38ъАг2 + dx = (х1 + 2 х2 Аг + 3х3Аг2 + ...)о^,
(13)
но
(14)
dx = = (и0 + и1Аг + и2 Аг2 + и3Аг3 +...) х
х (51 + 252Аг + 353Аг2 + ..^г.
Для облегчения вычислений выражение (14) можно записать в виде:
Из соотношений (13) и (14) получаем:
(15)
Х2 = -(2и0 52 +
Х3 — (3и0 53 + 2и1 ^2 + и2 51),
х4 = 1(4и0 54 + 3и153 + 2и2 52 + и3 51)
АЛГОРИТМ СФЕРИЧЕСКОИ ИНТЕРПОЛЯЦИИ
Алгоритм сферической интерполяции [4] может применяться для управления обработкой сложнопрофильных деталей на металлорежущих станках фрезерной группы, а также на многокоординатных станках. Кроме того, этот алгоритм удобен для управления промышленными роботами, рабочие органы которых перемещаются по сложным пространственным траекториям.
Сущность сферической интерполяции сводится к воспроизведению на технологической машине дуг окружностей, ориентированных произвольно в пространстве. Соединяя участки дуг разных радиусов и ориентируя в пространстве плоскости, в которых расположены эти дуги, соответствующим образом, можно доста-
точно точно аппроксимировать разнообразные кривые, по которым движется режущий инструмент или рука робота. Важно, что при таком способе аппроксимации кривых первая производная на границе смежных участков не терпит разрыва, т. е. аппроксимирующая функция гладкая.
Чтобы вывести алгоритм сферической интерполяции, рассмотрим в пространстве дугу окружности (рис. 7). Чтобы ее получить, рассечем сферу с центром в начале координат плоскостью, проходящей также через начало координат и ориентированной в пространстве с помощью единичного вектора нормали к плоскости В0.
Рис. 7
Решаем совместно уравнение сферы и уравнение центральной плоскости.
х2 + у2 + г2 - Я2 = ^(х, у, z) = 0, Ах + Ву + Сг = / (х, у, г) = 0,
где Я - радиус сферы; А, В, С - направляющие косинусы единичного вектора нормали В0 к плоскости.
Нас интересует решение задачи в виде системы дифференциальных уравнений, для которых интегральной кривой является рассматриваемая окружность. С этой целью вычислим частные производные:
17' , Э^ , Э^
гх =-= 2х; г = — = 2у; = — = 2г;
Эх Эу Эг
=£ = А; = В; // = С,
Эх у Эу Эг
и запишем систему линейных уравнений для неявных функций.
+у+=0; /:+/уу+/Ж=0.
174
УП РАВЛ Е НИ Е , В ЫЫ Ч ИСЛ ИТЕЛ Ь Н АЯ Т ЕХ НИ КА И ИН ФО Р МА Т ИКА • А ВТОМ АТИ ЗА ЦИ Я И УП РА ВЛЕ Н ИЕ.
(16)
Решение системы дает
' _ ау _Сх - А* ах в* - Су' ' _ а? _Ау - Вх ах в* - Су'
, = ах = 1
ах
Заменим в системе (16) параметр х параметром л. Для этого рассмотрим дифференциал дуги
откуда
ал ах
Ч( у )2+(- )2+(х' )2 -
=7( у )2+(* )2+(х )2 =
х/{Сх-А1)г+(Ау-Вх^+(ВГ-су)
В* - Су
л
В* - Су
Подставим последнее выражение в уравнения (16). В результате после упрощений система дифференциальных уравнений окружности, ориентированной произвольно в пространстве, принимает вид:
^ = ф( В* - Су),
5=ф(сх -*),
^ = ф( Ау - Вх),
(17)
где ф =
1 Я
Введем новые переменные: В2 - Су = Е,
Сх - А* = О, (18)
Ау - Вх = Н.
Чтобы определить неизвестные Е, О и Н, продифференцируем уравнения (18), и тогда система дифференциальных уравнений сферической интерполяции принимает окончательный вид:
= ф Е, ах - = ф Бал,
= ф о, ау-- = ф Оал,
= Ф Н, а* = ф Нал ,
- = -ф х, аБ = -ф хал,
- = -ф У, аО = -ф уал ,
г = -ф *, аН = -ф а
ао
ан
Структурная схема сферического интерполятора включает шесть интеграторов Римана (рис. 8). Коэффициенты рядов Тейлора, в которые раскладываются функции х, у, Е, О и Н, находим по рекуррентным формулам (8).
Применив эти формулы для каждого из шести интеграторов, получим:
X. = ф у. =ф о. 1, * н. 1, е = -ф х. 1,
111 I
О =-фу. .,Н = -ф,,. = 1,2,...,Р.
. . -1 1 . -1 I I
(19)
Здесь Р - порядок точности. Выбирая необходимый порядок точности Р, можно уменьшить погрешность дискретизации при решении задачи сферической интерполяции до сколь угодно малой величины. Практически для высокоскоростной обработки 4 < Р < 12. Заметим, что вычислять коэффициенты рядов с помощью формул (19) следует по строкам, т. е. в последовательности хьу!, Еь О], Нь затем х2,у2,... и т. д.
Далее полученные значения переменных принимаются за начальные значения, и выполняется очередной шаг интегрирования.
Перед отработкой кадра управляющей программы в режиме сферической интерполяции необходимо задать начальные значения параметров Я, х0, у0, *0, направляющие косинусы плоскости интерполяции А, В, С, вычислить начальные значения переменных Е0 = В*0 - Су0, О0 = Сх0 - А*0, Н0 = Ау0 - Вх0 и задать шаг интегрирования Ал. Величина этого шага определяет скорость движения инструмента по контуру обработки. Изменяя шаг интегрирования в процессе работы, можно осуществлять режимы разгона или торможения электроприводов подачи по желаемому закону [5].
Рис. 8. Структурная схема сферического интерполятора
АЛГОРИТМ сплайновой ИНТЕРПОЛЯЦИИ
Рассмотрим сегмент кубической параметрической кривой, которая описывается векторным уравнением (рис. 9).
г(и) = аи3 + Ьи2 + си + ^
0 < и < 1,
где и - скалярный параметр; а, Ь, с, d - векторные коэффициенты.
Рис. 9
Запишем эту систему уравнений в скалярном виде.
х = ахиъ + Ьхи2 + схи + dx,
у = амъ + Ьуи2 + си + йу,, (20)
•/у у уу '
г = агиъ + Ьги2 + сги + dz. Продифференцируем уравнения (20)
(лл- _ 2 л, т г
— = 3ахи + 2Ь„и + с, = У„.
du
х х
-и = Ъауи2 + 2Ьуи + Су = Гу,
(21)
— = 3аги2 + 2Ь,и + с = V,. du
г г
где
V = 3а и + 2Ь и + с
х х'
Vy = 3а уи + 2Ьуи + су, V = 3а и2 + 2Ьи + с .
(22)
г г'
Продифференцируем уравнения (22). dV
"■ = 6а и + 2Ъ = Ж.
хх
du
су,
-V = 6а'и + 2ьу = Ж,
dV7
—^ = 6а,и + 2Ь = Ж,
(23)
где
Жх = 6а хи + 2Ьх,
Жу = 6ауи + 2Ьу,
Ж = 6аги + 2Ьг.
г г г
Продифференцируем уравнения (24).
dW „ = 6а ,
(24)
du
= 6а„
(25)
dW,
= 6а .
Запишем дифференциал дуги сплайна:
Vx2 + V/ + V,2,
откуда
у[2Р
= Ф =
1
где Р = (у1 + V2 + V/); ф - новая переменная.
Найдем производную ф по dP и приравняем ее к новой переменной Q.
ф =-М-1 Р~ 2)=-ф3 = Q.
dP у/2 2
(26)
Найдем производную Q по dф и приравняем ее к новой переменной Я.
& = -3ф2 = Я.
d ф
Найдем производную Я по с
1
1
176
УПРАВЛЕНИЕ, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И ИНФОРМАТИКА • АВТОМАТИЗАЦИЯ И УПРАВЛЕНИЕ.
йЯ — = -6ф. й ф
(28)
Продифференцируем сложную функцию Р\У(и)\ по переменной и.
йР йи
ЭР йУ ЭР йУу ЭР йУ
л
ЭУ йи
ЭУу йи
ЭУ йи
т. йУх йУу йУг
Ух-х + У -у + у-
йи йи йи
(29)
На основе уравнений (21), (23), (25), (26), (27), (28), (29), составляем систему дифференциальных уравнений в форме Шеннона, описывающую алгоритм сплайновой интерполяции \6\.
йи = ф йз, йЖ2 = 6агйи, йх = Ухйи, й ф = QdP, йу = Ууйи, dQ = Яй ф, йг = Угйи, йЯ = -6ф й ф, йУх = Жхйи, йР = йРх + йРу + йРг, (30) йР = УйУ,
йУу = Жуйи, йУ = Жйи,
г 2 ~
йЖх = 6ахйи,
йР
■ УйУ,
уу
йР = УйУ.
уу
Систему уравнений (2.32) можно представить в виде схемы соединений интеграторов Стилтьеса и Римана (рис. 10). Каждому уравнению системы (30) отвечает определенный интегратор.
Теперь применим к данной схеме рекуррентные формулы (8) и (15), с помощью которых определим коэффициенты степенных рядов, аппроксимирующих переменные на выходе каждого интегратора.
Для первых 4 интеграторов получим следующие выражения:
1
и =~ф, 1
Ж = 6а и
Жу, = 6ауЩ ;
Ж = 6а и
Для оставшихся интеграторов аналогичные выражения имеют следующий вид:
1 ,-1
Ух,=11 (/ - ])ЖХ
1
и ,
х '-} -
1 =0
1 г-1
Уу, =12 (, -
1 1 =0 г -1
и ,
у] г - 1 '
1 г'-1
V* =12 (г -1 )Ж
г ] =0
и ,
2] г-1 -
х =
у,
2 =
г -1 2> 1 =0 -1 )Ух1
г -1 ЕС- 1 =0 -1 У
г-1 2> 1 =0
1 г-1. 1 г-1
Р = 1 2 (, - ), фг = 12 (' - ]] 1 ,
] =0
1 г-1 1 г-1.
Р =12 (г - ])УЛ(г-^ Q =12 (г - ])Я1 фг - ] ,
г 1=
] =0
1
1=0
1 '-1 1 г-1
Р. =12 (г - 1)УУ2 (г-^ Я =-12 (г - ф фг-1.
1 =0
Рис. 10. Структурная схема сплайнового интерполятора
Значения переменных в конце каждого шага интегрирования найдем в виде степенных рядов, вычисляемых по схеме Горнера, аналогично тому, как мы это делали для режима сферической интерполяции.
ЗАКЛЮЧЕНИЕ
Методика построения сложных интерполяционных траекторий, основанная на решении систем обыкновенных дифференциальных уравнений численными методами, является универсальной. Она может применяться в компьютерных устройствах ЧПУ, предназначенных для управления обработкой сложнопро-фильных деталей, а также в системах управления сложными движениями манипуляционных роботов. Интегрирование дифференциальных уравнений с помощью степенных рядов позволяет значительно уменьшить ошибку дискретизации численного метода, что необходимо для управления высокоскоростной обработкой деталей на металлорежущих станках с ЧПУ.
и
и
и
СПИСОК ЛИТЕРАТУРЫ
1. Чикуров Н. Г., Махмутов Б. Р. Система ЧПУ класса ICNC для управления обработкой сложно-профильных деталей на многокоординатных станках // СТИН. 2003. №. 3. С. 11-16.
2. Shannon С. Mathematical theory of the differential analyzer // J. Math. and Phys. 20, № 4 (1941). P. 337.
3. Каляев А. В. Теория цифровых интегрирующих машин и структур. М.: Советское радио, 1970. 471 с.
4. Сферический интерполятор. Пат. 2124227 РФ, кл. 6 G 06 F 7/64. Заявлено 11.09.96. Бюл. № 36.
5. Чикуров Н. Г., Кирьянов Д. Н. Управление контурной скоростью в системах ЧПУ класса ICNC // СТИН. 2007. №. 11. С. 18-21.
6. Сплайновый интерполятор. Пат. 2228536 РФ, кл. 7G05B 19/4103. Заявлено 30.09.02 Бюл. № 13.
ОБ АВТОРЕ
(Чикуров Николай Георгиевич,
доц. Дипл. инж. по станкостроению и технол. машиностр. (УАИ, 1965). Канд. техн. наук по В ^^^ электрооборудованию металло-Ш^^Н реж. станков (МОССТАНКИН, 1971). Иссл. в обл. компьютерн. ЩЩ^ШЯ систем ЧПУ класса ЮЖ.