Например, Бобцов

ИСПОЛЬЗОВАНИЕ ПАРАМЕТРИЧЕСКОЙ АППРОКСИМАЦИИ ПРИ ПЛАНИРОВАНИИ ТРАЕКТОРИЙ ДВИЖЕНИЯ АППАРАТОВ

Использование параметрической аппроксимации при планировании траекторий

11

УДК 629.12:621.396.9.1

Г. М. ДОВГОБРОД, Л. М. КЛЯЧКО, А. В. РОГОЖНИКОВ
ИСПОЛЬЗОВАНИЕ ПАРАМЕТРИЧЕСКОЙ АППРОКСИМАЦИИ ПРИ ПЛАНИРОВАНИИ ТРАЕКТОРИЙ ДВИЖЕНИЯ АППАРАТОВ
Рассматривается методика построения планируемых траекторий движения аппаратов в форме параметрических полиномиальных кривых степени не ниже пятой. Показано, что планируемые траектории имеют максимально возможный минимальный радиус кривизны, заданные положение, направление движения и кривизну в начальных и конечных точках.
Ключевые слова: траектории движения, подвижные аппараты, полиномы Бернштейна, число обусловленности.
Введение. При планировании траекторий перемещения подвижных аппаратов, управляемых автоматически или человеком, необходимо учитывать физические ограничения. Траектории должны быть как минимум С2-гладкими функциями на отрезке [a, b]. Кроме того, существуют ограничения на величину радиусов кривизны траекторий. Использование физически реализуемых планируемых траекторий при автоматическом или ручном управлении аппаратами позволяет повысить точность следования заданным траекториям движения.
Перечислим некоторые задачи, связанные с подвижными аппаратами, в которых целесообразно использовать планируемые криволинейные траектории:
— планирование в реальном масштабе времени траектории вывода аппарата на заданную прямолинейную траекторию после значительного отклонения от нее;
— стабилизация аппарата на заранее спланированном маршруте, задаваемом в виде ломаной линии; в окрестности точки сочленения отрезков прямых необходимо формировать физически реализуемую планируемую траекторию перехода с одного ее участка на следующий.
Применение высокопроизводительных микроконтроллеров в системах управления движением аппаратов позволяет увеличить объем вычислений при сохранении неизменным длительности цикла управления. В частности, можно выполнять управляемое движение по планируемым траекториям, сформированным из отрезков прямых и дуг окружностей [1]. Такие траектории в точках соединения дуг и отрезков прямых при совпадении направлений левой и правой касательных имеют разрывную вторую производную, следовательно, и функция кривизны в точке соединения имеет разрыв. Точное движение по такой траектории физически нереализуемо. Если для построения расчетной траектории использовать отрезки прямых и участки параметрических полиномиальных кривых [2, 3], задаваемых полиномами пятой степени, то можно обеспечить непрерывное изменение кривизны на всей планируемой траектории.
Постановка задачи. Задача состоит в определении участка кривой, задаваемого векторной функцией R(u) = (x(u), y(u))T . При этом скалярные функции x(u), y(u) имеют:
а) непрерывные вторые производные на замкнутом отрезке [0, 1]; б) радиус кривизны не меньше некоторого заданного Rmin при всех значениях параметра u∈[0, 1].
Кроме того, функции x(u), y(u) удовлетворяют следующим граничным условиям: 1) граничные точки R(0) и R(1) участка плоской кривой совпадают с заданными точ-
ками r0 = (x0 , y0 )T и r1 = (x1, y1)T на плоскости, т.е. R(0) = r0 и R(1) = r1;

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2009. Т. 52, № 9

12 Г. М. Довгоброд, Л. М. Клячко, А. В. Рогожников

2) векторы касательных в граничных точках имеют направления, заданные единичными векторами e0 = (sin α0 , cos α0 )T и e1 = (sin α1, cos α1)T соответственно;
3) кривизна траектории в граничных точках r0 и r1 равна заданным значениям k0 и k1 соответственно.
Для описания траекторий будем использовать векторные вещественные полиномы [3]:

Rn (u) = a0 f0 (u) + a1 f1(u) + … +an fn (u),

(1)

где a0 , a1, ..., an — постоянные двумерные векторы; f0 (u), f1(u), ..., fn (u) — скалярные ба-
зисные полиномы. Решение задачи. Для решения задачи докажем следующее утверждение. Утверждение. Векторный полином, удовлетворяющий условиям „а“, „б“, 1—3, должен
иметь степень не ниже пятой. Доказательство. Для полиномов степени не ниже пятой условие „а“ выполняется ав-
томатически.
Так как расположение граничных точек произвольно, то r0 и r1 — свободные параметры.
Варьирование длин d0 и d1 касательных векторов r10 и r11 в граничных точках позво-
ляет обеспечить выполнение условия „б“, так как форма кривой, задаваемой векторным полиномом, в значительной степени зависит от длин касательных векторов [2]. Следовательно,

r10 = e0 ⋅d0 и r11 = e1 ⋅d1

(2)

— свободные параметры.

Локальная кривизна траектории зависит от первой R′(u) и второй R′′(u) производных

векторной функции [2]. Пусть r20 = R′′(0) и r21 = R′′(1) , тогда r20 и r21 должны быть свободными параметрами для удовлетворения условия 3. Следовательно, для выполнения условий

„б“, 1—3 векторный полином Rn (u) должен определяться шестью векторными параметрами:

r0 , r1, r10 , r11, r20 , r21 — и, значит, должен быть полиномом степени не ниже пятой, имеющим

не менее шести коэффициентов a0 , a1, ..., an .



Рассмотрим возможность определения значений параметров r0 , r1, r10 , r11, r20 , r21 из ус-

ловий 1—3. Значения параметров r0 и r1 непосредственно следуют из условия 1. В предпо-

ложении, что длины d0 и d1 заданы, значения параметров r10 и r11 можно определить по

формулам (2), учитывая условия 2.

Надлежащий выбор значений параметров r20 и r21 позволит обеспечить выполнение условия 3. Согласно работе [2] локальная кривизна k траектории, заданной параметрически,

определяется выражением

( )k

(u

)

=

x

′(u) y′′(u)− y′(u) x′2 (u)+ y′2 (u)

x′′(u)
32

.

Это выражение при u = 0 и заданных k0 = k(0) и r10 = (x′(0), y′(0)) является уравнением прямой линии относительно x′′(0) и y′′(0) . В качестве значений x′′(0) и y′′(0) можно принять координаты точки, ближайшей к началу координат. Тогда для вычисления r20 и r21 получаем следующие выражения:
r20 = (−k0d0 y0′ , k0d0 x0′ ) ,
r21 = (−k1d1 y1′, k1d1x1′) .

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2009. Т. 52, № 9

Использование параметрической аппроксимации при планировании траекторий

13

Теперь при любых заданных значениях d0 и d1 можно построить участок плоской кривой, заданной векторным полиномом R5(u), u ∈ [0, 1], такой что выполняются условия „а“, 1—3. Можно подобрать такие d0 и d1, чтобы выполнялось условие „б“. Рассмотрим мини-
максную задачу:

km

=

min
d0 ,d1

max
u∈[0, 1]

k

(u

)

.

Если 1/ km ≥ Rmin , то искомая траектория найдена, иначе, при заданных условиях ис-

пользование полинома пятой степени не позволяет найти необходимую траекторию в виде

одного участка.

Рассмотрим вопрос о том, какие полиномы целесообразно выбрать для определения

R5 (u) . Наиболее часто для векторных полиномов используется мономиальный базис

u, u2, …, nn ,

в котором произвольный полином n-й степени может быть вычислен по схеме Горнера. Однако число обусловленности полинома, построенного на основе мономиального базиса,

больше или равно числу обусловленности этого же полинома, построенного на основе базис-

ных полиномов Bin (u) , предложенных Бернштейном (см. Приложение). Следовательно, по-
линомы, построенные на основе базисных полиномов Бернштейна, обладают большей вычислительной устойчивостью.

Полиномы Бернштейна определяются формулой

Bin

(u)

=

i

n! !⋅(n −

i)!

ui

(1−

u)n−i

,

i = 0, 1,..., n,

u∈[0,1].

Функция R5 (u) , построенная на основе базисного полинома Бернштейна пятой степени, и ее первая и вторая производные могут быть представлены выражениями

5
∑R5 (u) = ai Bi5 (u); i=0

∑R5′

(u

)

=

5

⎛ ⎝⎜⎜

4 i=0

(ai+1



ai

)Bi4

(u)

⎞ ⎠⎟⎟

,

∑R5′′(u)

=

20

⎛ ⎜⎜⎝

3 i=0

(ai+2



2ai+1

+

ai

)

Bi3

(u)

⎞ ⎟⎟⎠

.

Векторные коэффициенты ai вычисляются как решения неоднородной системы линей-

ных уравнений шестого порядка, если параметры r0 , r1, r10 , r11, r20 , r21 заданы не равными ну-

лю одновременно:

r0 = R5 (0), r10 = R5′ (0), r20 = R5′′(0),⎫

r21 = R5′′(1), r11 = R5′ (1), r1 = R5 (1).

⎬ ⎭

Определитель этой системы равен –1⋅104, т.е. имеет полный ранг, и система может быть разрешена относительно ai :

a0 = r0 , a1 = r10 / 5, a2 = r20 / 20+ 2r10 / 5+ r0 ,⎫

a3

=

r1,

a4

=

r11

/

5,

a5

=

r21

/

20+ 2r11

/

5+ r1.

⎬ ⎭

Полиномы Бернштейна вычисляются по схеме Горнера с помощью формул

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2009. Т. 52, № 9

14 Г. М. Довгоброд, Л. М. Клячко, А. В. Рогожников

Bin

(u)

=

(1−u)n

⋅⎜⎛ ⎝

n i

⎟⎞⋅ti ⎠

,

t

=

u 1−u

на

отрезке [0,

1

2];

Bin

(u)

=

u

n

⋅⎛⎜ ⎝

n i

⎞⎟⋅t ⎠

n−i

,

t

=

1−u u

на

отрезке [1

2,

1].

Если параметры r0 , r1, r10 , r11, r20 , r21 задавать как трехмерные векторы, то расчетные траектории будут кривыми в трехмерном пространстве.
Рассмотрим ряд примеров, в которых координаты X, Y заданы в местной декартовой системе координат с осью Y, направленной на север; размерность координат — метры; минимальный радиус кривизны траектории составляет не менее 50 м; отношение Smv/Sbv обобщенных оценок чисел обусловленности (см. Приложение) находится в диапазоне 12—16.
Пример 1. Рассмотрим построение расчетной траектории движущегося объекта. Начало траектории в точке A = (–100, –1020), курс 240°, окончание в точке B = (0, 0), курс 0, в граничных точках кривизна траектории равна нулю: kA = kB= 0.
b

–500 –400 –300 –200 –100

Направление касательной (курс) в конечной B граничной точке 0 100

–200

–400 –600

Траектория 1

–800

a

–1000 A

Направление касательной (курс) в начальной граничной точке

–1200
Рис. 1
С помощью изложенной выше методики получены двумерные векторные коэффициенты базисного полинома Бернштейна (см. табл. 1), который задает траекторию 1, показанную на рис. 1.

Координата X Y

а0 –100
–1,02E+3

а1 –456,118
–1,226E+3

а2 –812,236
–1,431E+3

а3 0
–79,52

Таблица 1
а4 а5 00
–39,76 0

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2009. Т. 52, № 9

Использование параметрической аппроксимации при планировании траекторий

15

График кривизны траектории 1 приведен на рис. 2. Минимальный радиус кривизны траектории 1 равен 51,8 м. Для полиномов с мономиальным базисом и базисом Бернштейна обобщенные оценки чисел обусловленности равны соответственно Smv=7823 и Sbv =515, Smv/Sbv =15,2.
На рис. 3 показаны верхние границы четырех допустимых областей для начальных точек расчетных траекторий, представленных в виде параметрических полиномиальных кривых пятого порядка. Четыре области соответствуют четырем значениям курса объекта в начальной точке траектории: 0, 30, 60, 90º. В каждой области возможно построение расчетной траектории, начинающейся в любой точке этой области, с начальной кривизной траектории, равной нулю, и заканчивающейся в точке (0, 0) с курсом 0 и кривизной, равной нулю. Допустимая область, соответствующая начальному курсу 90º, на рис. 3 заштрихована.

Y

0,02 А
0

B

–0,02
–0,04 0

0,2

0 –50 –100 –150 –200 –250

0,4 0,6 Рис. 2

0,8 1
Курс 0 30° 60°

Х

–300 –350

90°

–400 –100

–50 0 Рис. 3

50 100

Пример 2. Рассмотрим вариант построения расчетной траектории летательного аппарата,
которая обеспечивает разворот на 180° с набором высоты. После горизонтального прямолиней-
ного полета по траектории a аппарат начинает разворот в точке A = (–100, 0, 100) с курса 180°, приходит в точку B = (0, 0, 150) с курсом 0 и продолжает горизонтальный полет по прямой b. В граничных точках А и В кривизна траектории равна нулю: kA = kB= 0. С использованием приведенной методики получены трехмерные векторные коэффициенты базисного полинома Бернштейна (см. табл. 2), который задает траекторию 2, показанную на рис. 4.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2009. Т. 52, № 9

16 Г. М. Довгоброд, Л. М. Клячко, А. В. Рогожников
b B Траектория 2

а А
0 –20 –40 –60 –80

–100 –80 –60 –40 –20 Рис. 4

Координата X Y Z

а0 –100
0
0

а1 –100
–54,68
0

а2 –100
–109,361
0

а3 0
–109,36
50

150 140 130 120
110 100 0

Таблица 2

а4 а5 00

–54,68

0

50 0

Заключение. Предложенная в статье методика расчета планируемых траекторий перемещения на плоскости аппаратов, управляемых автоматически или человеком, позволяет обеспечить повышение точности следования заданным траекториям, а также выявить ситуации, когда выход на заданную траекторию по расчетной, состоящей из одного участка, невозможен; кроме того, несложное обобщение представленной методики позволяет применить ее к расчету траекторий в трехмерном пространстве.

ПРИЛОЖЕНИЕ
В работе [3] вводятся числа обусловленности Sm(u) и Sb(u) для вычисления полиномов с мономиальным базисом и базисом Бернштейна соответственно:

n
∑Sm (u) = ck uk ; k =0

n
∑Sb (u) = ak Bkn (u) , k =0

где ck и ak — числовые коэффициенты. Выражения Sm(u)ε и Sb(u)ε оценивают погрешности вычисленных результатов для соот-
ветствующих полиномов, вызванные изменением их коэффициентов на некоторую относи-
тельную величину ε. Из выкладок, приведенных в работе [3, разд. 3.4, доказательство теоремы 1], следует, что число обусловленности полинома в мономиальным базисе не меньше числа обусловленности этого полинома в базисе Бернштейна:

Sm (u) ≥ Sb (u) .

В работе [4] доказано, что алгоритм вычисления полинома по схеме Горнера является обратно устойчивым. Поэтому числа обусловленности полиномов с мономиальным базисом и базисом Бернштейна могут использоваться для оценки погрешности результатов соответствующих полиномов, вызванных погрешностями округления в арифметических операциях.
Для оценки на отрезке [0, 1] чисел обусловленности соответствующих полиномов можно использовать усредненные числа обусловленности Sm и Sb:

1
∫Sm = Sm (u)du, 0

1
∫Sb = Sb (u)du. 0

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2009. Т. 52, № 9

Использование параметрической аппроксимации при планировании траекторий

17

Так как в настоящей статье рассматриваются полиномы с векторными коэффициентами, то каждый такой полином можно интерпретировать как соответствующий размерности векторных коэффициентов набор полиномов со скалярными коэффициентами. В качестве обобщенной оценки числа обусловленности векторного полинома используется евклидова норма вектора, составленного из усредненных чисел обусловленности. Для полиномов с мономиальным базисом и базисом Бернштейна обобщенные оценки чисел обусловленности обозначаются символами Smv и Sbv соответственно.

СПИСОК ЛИТЕРАТУРЫ

1. Пелевин Л. К., Каменская А. А. О синтезе оперативных траекторий при стабилизации судна на системе галсов и заданном маршруте // Сб. трудов XXXI Всерос. конф. „Управление движением морских судов и специальных аппаратов“. М.: ИПУ РАН, 2004.

2. Фокс А., Пратт М. Вычислительная геометрия. М.: Мир, 1982.

3. Farouki R. T., Rajan V.T. On the numerical condition of polynomials in Bernstein form // Computer Aided Geometric Design, North-Holland. 1987. N 4. Р. 191—216.

4. Деммель Дж. Вычислительная линейная алгебра. М.: Мир, 2001.

Сведения об авторах

Георгий Моисеевич Довгоброд

— канд. техн. наук; ЦНИИ „Курс“, Москва; вед. науч. сотрудник;

E-mail: grsud@kyrs.ru

Лев Михайлович Клячко

— канд. техн. наук; ЦНИИ „Курс“, Москва; генеральный директор;

E-mail: klyachko@kyrs.ru

Андрей Владимирович Рогожников — канд. техн. наук; ЦНИИ „Курс“, Москва; зам. главного инженера;

E-mail: rav@kyrs.ru

Рекомендована кафедрой систем автоматического управления МГТУ им. Н. Э. Баумана

Поступила в редакцию 15.10.08 г.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2009. Т. 52, № 9