Известия РАН. Теория и системы управления, 2021, № 2, стр. 126-137

ПОСТРОЕНИЕ ПРОГРАММНЫХ ДВИЖЕНИЙ МЕХАНИЧЕСКИХ СИСТЕМ С УЧЕТОМ ОГРАНИЧЕНИЙ ПРИ ПОМОЩИ МНОГОЧЛЕНОВ ТРЕТЬЕГО ПОРЯДКА

А. Е. Голубев *

МГТУ им. Н.Э. Баумана
Москва, Россия

* E-mail: v-algolu@hotmail.com

Поступила в редакцию 25.02.2020
После доработки 28.02.2020
Принята к публикации 30.03.2020

Полный текст (PDF)

Аннотация

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

Введение. Одним из эффективных способов построения программных движений динамических систем с управлением является метод обратных задач динамики [1, 2], основная идея которого заключается в следующем. Сначала с учетом имеющихся требований и ограничений формируются желаемые значения переменных состояния системы, например как функции независимой переменной. Далее построенные функции подставляются вместо переменных состояния в уравнения динамической системы и полученная в результате этой подстановки система алгебраических уравнений относительно управляющих переменных решается аналитически или численно. Результатом решения является программное управление.

При синтезе программных движений на основе концепции обратных задач динамики часто используется подход, основанный на применении полиномов от независимой переменной [3, 4]. Решение различных терминальных задач управления с помощью многочленов рассматривалось, например, в [517]. Однако следует отметить, что указанный подход, как он используется в большинстве работ, не позволяет явным образом учитывать ограничения, наложенные на переменные состояния и управления. Численные процедуры синтеза программных движений механических систем с учетом ограничений, основанные на применении полиномов от независимой переменной, рассматривались, например, в [11, 12]. Некоторые идеи аналитического построения программных траекторий механических систем с учетом ограничений можно найти в книге [8] и, например, в работах [14, 18]. В [16, 1921] для представленных классов дифференциально плоских динамических систем предложено аналитическое решение терминальных задач управления, удовлетворяющее ограничениям на переменные состояния. Тем не менее, задача синтеза программных движений с учетом ограничений, в том числе при помощи многочленов от независимой переменной, остается актуальной и до конца нерешенной.

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

1. Постановка задачи. Рассматривается задача синтеза программных движений для динамических систем, имеющих структуру уравнений Эйлера–Лагранжа и записанных в виде

(1.1)
$M(q)\ddot {q} + C(q,\dot {q})\dot {q} + D\dot {q} + G(q) = u,$
где $q = {{\left( {{{q}_{1}}, \ldots ,{{q}_{m}}} \right)}^{{\text{T}}}} \in {{\mathbb{R}}^{m}}$ – вектор обощенных координат; $u = {{\left( {{{u}_{1}}, \ldots ,{{u}_{m}}} \right)}^{{\text{T}}}} \in {{\mathbb{R}}^{m}}$ – вектор управляющих сил и моментов; M(q) – матрица кинетической энергии, $M\left( q \right) = {{M}^{{\text{T}}}}\left( q \right) > 0$ при всех $q \in {{\mathbb{R}}^{m}}$; $C(q,\dot {q})\dot {q}$ – центробежные и кориолисовы силы; $D\dot {q}$ – демпфирование; $G(q) = {{[\partial P(q){\text{/}}\partial q]}^{{\text{T}}}}$, где P(q) – потенциальная энергия системы.

Программное движение системы (1.1) представляет собой пару функций $q = {{q}_{r}}\left( t \right)$, $u = {{u}_{r}}\left( t \right)$, такую, что уравнения системы (1.1) превращаются в тождества на заданном отрезке изменения независимой переменной $t \in \left[ {0,T} \right]$. В статье решается задача аналитического построения программных движений, удовлетворяющих фиксированным начальным и конечным условиям на переменные состояния q, $\dot {q}$ системы (1.1), а также ограничениям

(1.2)
$\left| {{{q}_{i}}\left( t \right)} \right| \leqslant {{B}_{i}},\quad \left| {{{{\dot {q}}}_{i}}\left( t \right)\left| { \leqslant {{N}_{i}},\quad } \right|{{{\ddot {q}}}_{i}}\left( t \right)} \right| \leqslant {{Q}_{i}}\quad {\text{при}}\;{\text{всех}}\quad t \in \left[ {0,T} \right],$
где Bi, Ni и Qi – некоторые заданные положительные числа, $i = \overline {1,m} $. Предполагается, что при синтезе программных движений для системы (1.1) есть свобода выбора времени движения T  и/или при всех $i = \overline {1,m} $ каких-либо величин среди начальных qi(0), ${{\dot {q}}_{i}}\left( 0 \right)$ и конечных qi(T), ${{\dot {q}}_{i}}\left( T \right)$ значений соответственно обобщенных координат и скоростей.

Заметим, что в случае локальной липшицевости функций переменных состояния q, $\dot {q}$, стоящих в левой части системы (1.1), для любой дважды кусочно непрерывно дифференцируемой программной траектории $q = {{q}_{r}}\left( t \right)$ кусочно непрерывное программное управление системой (1.1), найденное при помощи метода обратных задач динамики, запишется как

(1.3)
$u = {{u}_{r}}\left( t \right) = M\left( {{{q}_{r}}(t)} \right){{\ddot {q}}_{r}}(t) + C({{q}_{r}}(t),{{\dot {q}}_{r}}(t)){{\dot {q}}_{r}}(t) + D{{\dot {q}}_{r}}(t) + G\left( {{{q}_{r}}(t)} \right),\quad t \in \left[ {0,T} \right].$

Следовательно, если для программной траектории $q = {{q}_{r}}\left( t \right)$ выполнены условия (1.2), то для программного управления (1.3) справедлива оценка ${\text{||}}{{u}_{r}}\left( t \right){\text{||}} \leqslant L$ при всех $t \in \left[ {0,T} \right]$, где постоянная L > 0 зависит от свойств матриц в (1.3) (например, их спектральных норм) и значений Bi, Ni и Qi, $i = \overline {1,m} $. Здесь ||⋅|| – евклидова норма в ${{\mathbb{R}}^{m}}$.

2. Синтез программных движений для одной степени свободы. Рассмотрим сначала уравнения изменения состояния для одной из степеней свободы механической системы (1.1), записанные в виде динамической системы:

(2.1)
$\begin{gathered} {{{\dot {x}}}_{{1i}}} = {{x}_{{2i}}}, \\ {{{\dot {x}}}_{{2i}}} = {{f}_{i}}\left( {t,{{x}_{i}}} \right) + {{g}_{i}}\left( {t,{{x}_{{1i}}}} \right){{u}_{i}}, \\ \end{gathered} $
где ${{x}_{i}} = \left( {{{x}_{{1i}}},{{x}_{{2i}}}} \right) = \left( {{{q}_{i}},{{{\dot {q}}}_{i}}} \right) \in {{\mathbb{R}}^{2}}$, значение i, $1 \leqslant i \leqslant m$, фиксировано, qi – обобщенная координата, ${{u}_{i}} \in \mathbb{R}$ – компонента вектора управляющих воздействий u, функции ${{f}_{i}}\left( {t,{{x}_{i}}} \right)$ и ${{g}_{i}}\left( {t,{{x}_{{1i}}}} \right)$ кусочно непрерывны по t и локально липшицевы по xi и x1i соответственно, причем ${{g}_{i}}\left( {t,{{x}_{{1i}}}} \right) \ne 0$ при всех ${{x}_{{1i}}} \in \mathbb{R}$ и $t \geqslant 0$. Здесь зависимость функций ${{f}_{i}}\left( {t,{{x}_{i}}} \right)$ и ${{g}_{i}}\left( {t,{{x}_{{1i}}}} \right)$ от t неявная и связана с возможной зависимостью этих функций от других, отличных от qi и ${{\dot {q}}_{i}}$ обобщенных координат и скоростей.

Фиксируем произвольные начальные и желаемые конечные значения положения и скорости:

${{x}_{{1i}}}\left( 0 \right) = {{x}_{{0i}}},\quad {{x}_{{2i}}}\left( 0 \right) = {{\dot {x}}_{{0i}}},\quad {{x}_{{1i}}}\left( T \right) = {{x}_{{*i}}},\quad {{x}_{{2i}}}\left( T \right) = {{\dot {x}}_{{*i}}},$
удовлетворяющие условиям

(2.2)
$\max \{ {\text{|}}{{x}_{{0i}}}{\text{|}},{\text{|}}{{x}_{{*i}}}{\text{|}}\} \leqslant {{B}_{i}},\quad \max \{ {\text{|}}{{\dot {x}}_{{0i}}}{\text{|}},{\text{|}}{{\dot {x}}_{{*i}}}{\text{|}}\} \leqslant {{N}_{i}}.$

Будем полагать, что состояние $({{x}_{{*i}}},{{\dot {x}}_{{*i}}})$ системы (2.1) достижимо [4] из состояния $\left( {{{x}_{{0i}}},{{{\dot {x}}}_{{0i}}}} \right)$. Здесь T – время движения из точки $\left( {{{x}_{{0i}}},{{{\dot {x}}}_{{0i}}}} \right)$ в точку $({{x}_{{*i}}},{{\dot {x}}_{{*i}}})$ на фазовой плоскости $\left( {{{x}_{{1i}}},{{x}_{{2i}}}} \right)$. Далее без ограничения общности будем считать, что начальные и конечные значения переменных x1i, x2i для искомой программной траектории удовлетворяют неравенствам

(2.3)
${{\dot {x}}_{{0i}}}{{\dot {x}}_{{*i}}} \geqslant 0,\quad \dot {x}_{{0i}}^{2} + \dot {x}_{{*i}}^{2} \ne 0,\quad ({{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}})({{x}_{{*i}}} - {{x}_{{0i}}}) > 0.$

Отметим, что, если условия (2.3) не выполнены, то при построении программной траектории на фазовой плоскости из начальной точки $\left( {{{x}_{{0i}}},{{{\dot {x}}}_{{0i}}}} \right)$ в конечную $({{x}_{{*i}}},{{\dot {x}}_{{*i}}})$ всегда можно использовать дополнительные промежуточные точки. Тогда за счет выбора их координат добьемся для каждой из промежуточных программных траекторий, образующих искомую траекторию как составную, выполнения соответствующих неравенств, аналогичных (2.3). Например, если имеет место равенство $\dot {x}_{{0i}}^{2} + \dot {x}_{{*i}}^{2} = 0$, то можно рассмотреть, как минимум, одну промежуточную точку с координатами $\left( {{{x}_{{li}}},{{{\dot {x}}}_{{li}}}} \right)$ на фазовой плоскости и построить сначала программную траекторию из начальной точки $\left( {{{x}_{{0i}}},{{{\dot {x}}}_{{0i}}}} \right)$ в промежуточную $\left( {{{x}_{{li}}},{{{\dot {x}}}_{{li}}}} \right)$, а затем из промежуточной точки в конечную $({{x}_{{*i}}},{{\dot {x}}_{{*i}}})$. При этом годятся любые значения xli и ${{\dot {x}}_{{li}}}$, удовлетворяющие условиям

${{x}_{{li}}} \in (\min {\text{\;}}\{ {{x}_{{0i}}},{{x}_{{*i}}}\} ,\max {\text{\;}}\{ {{x}_{{0i}}},{{x}_{{*i}}}\} ),~\quad 0 < \left| {{{{\dot {x}}}_{{li}}}} \right| \leqslant {{N}_{i}},~\quad {{\dot {x}}_{{li}}}({{x}_{{*i}}} - {{x}_{{0i}}}) > 0.$

Далее, в качестве t – параметризованной кривой на фазовой плоскости $\left( {{{x}_{{1i}}},{{x}_{{2i}}}} \right)$, соединяющей точки $\left( {{{x}_{{0i}}},{{{\dot {x}}}_{{0i}}}} \right)$ и $({{x}_{{*i}}},{{\dot {x}}_{{*i}}})$, используем фазовый график [4] ${{\bar {p}}_{i}}(t) = ({{p}_{i}}(t),{{\dot {p}}_{i}}(t))$, $t \in [0,T]$, многочлена

(2.4)
${{p}_{i}}\left( t \right) = {{x}_{{0i}}} + {{\dot {x}}_{{0i}}}t + {{c}_{{1i}}}{{t}^{2}} + {{c}_{{2i}}}{{t}^{3}},$
где коэффициенты c1i, c2i находятся из условий ${{p}_{i}}(T) = {{x}_{{*i}}}$, ${{\dot {p}}_{i}}\left( T \right) = {{\dot {x}}_{{*i}}}$ и имеют вид

(2.5)
$\begin{gathered} {{c}_{{1i}}} = - ((2{{{\dot {x}}}_{{0i}}} + {{{\dot {x}}}_{{*i}}})T + 3({{x}_{{0i}}} - {{x}_{{*i}}})){\text{/}}{{T}^{2}}, \\ {{c}_{{2i}}} = (({{{\dot {x}}}_{{0i}}} + {{{\dot {x}}}_{{*i}}})T + 2({{x}_{{0i}}} - {{x}_{{*i}}})){\text{/}}{{T}^{3}}. \\ \end{gathered} $

В силу ограничений (1.2) для многочлена (2.4) и его производных по времени первого и второго порядков при всех $t \in [0,T]$ необходимо выполнить условия $\left| {{{p}_{i}}\left( t \right)} \right| \leqslant {{B}_{i}}$, $\left| {{{{\dot {p}}}_{i}}\left( t \right)} \right| \leqslant {{N}_{i}}$ и $\left| {{{{\ddot {p}}}_{i}}\left( t \right)} \right| \leqslant {{Q}_{i}}$ соответственно. Заметим, что в случае справедливости неравенств (2.2) и (2.3) для выполнения при всех $t \in [0,T]$ ограничений $\left| {{{p}_{i}}\left( t \right)} \right| \leqslant {{B}_{i}}$ и $\left| {{{{\dot {p}}}_{i}}\left( t \right)} \right| \leqslant {{N}_{i}}$ достаточно обеспечить монотонность функций pi(t) и ${{\dot {p}}_{i}}\left( t \right)$ на отрезке $t \in [0,T]$. При этом, если выполнены условия (2.2), (2.3), для строгой монотонности многочлена (2.4) и монотонности его производной по времени на отрезке $t \in [0,T]$ необходимо и достаточно, чтобы вторая производная многочлена, имеющая вид

(2.6)
${{\ddot {p}}_{i}}\left( t \right) = 2{{c}_{{1i}}} + 6{{c}_{{2i}}}t,$
была знакопостоянной на интервале $t \in \left( {0,T} \right)$. Отметим, что функция (2.6) линейная и в случае ${{c}_{{2i}}} \ne 0$ обращается в ноль при $t = - {{c}_{{1i}}}{\text{/}}(3{{c}_{{2i}}})$. Тогда для знакопостоянства второй производной по времени многочлена (2.4) на интервале $t \in \left( {0,T} \right)$ необходимо и достаточно, чтобы выполнялись условия c2i = 0 или
(2.7)
${{c}_{{2i}}} \ne 0,\quad - {{c}_{{1i}}}{\text{/}}(3{{c}_{{2i}}}) \leqslant 0$,
или

(2.8)
${{c}_{{2i}}} \ne 0,\quad - {\kern 1pt} {{c}_{{1i}}}{\text{/}}(3{{c}_{{2i}}}) \geqslant T.$

Наконец, в силу линейности по переменной t функция (2.6) при любых значениях ${{x}_{{0i}}}$, ${{\dot {x}}_{{0i}}}$, ${{x}_{{*i}}}$, ${{\dot {x}}_{{*i}}}$ и T > 0 является монотонной на отрезке $t \in \left[ {0,T} \right]$. Следовательно, для выполнения ограничения $\left| {{{{\ddot {p}}}_{i}}\left( t \right)} \right| \leqslant {{Q}_{i}}$ при всех $t \in \left[ {0,T} \right]$ необходимо и достаточно, чтобы было справедливо неравенство

(2.9)
$\max {\text{\;}}\{ \left| {{{{\ddot {p}}}_{i}}\left( 0 \right)\left| , \right|{{{\ddot {p}}}_{i}}\left( T \right)} \right|\} = \max {\text{\;}}\{ 2\left| {{{c}_{{1i}}}\left| {,~2} \right|{{c}_{{1i}}} + 3{{c}_{{2i}}}T} \right|\} \leqslant {{Q}_{i}}.$

Отметим, что соответствующая компонента ui программного управления (1.3), реализующая программную траекторию ${{x}_{{1i}}} = {{p}_{i}}\left( t \right)$, ${{x}_{{2i}}} = {{\dot {p}}_{i}}\left( t \right)$, $t \in \left[ {0,T} \right]$, системы (2.1), согласно [3, 4], имеет вид

(2.10)
${{u}_{i}} = {{u}_{{ir}}}(t) = \frac{1}{{{{g}_{i}}\left( {t,{{p}_{i}}(t)} \right)}}\left( { - f\left( {t,{{{\bar {p}}}_{i}}(t)} \right) + {{{\ddot {p}}}_{i}}(t)} \right),\quad t \in \left[ {0,T} \right].$

Тогда в силу непрерывности функций ${{f}_{i}}\left( {t,{{x}_{i}}} \right)$ и ${{g}_{i}}\left( {t,{{x}_{{1i}}}} \right)$ в правой части системы (2.1) для любой положительной константы Li > 0 можно подобрать такие значения постоянных Bi, Ni и Qi, что при всех $t \in [0,T]$ имеет место неравенство $\left| {{{u}_{{ir}}}\left( t \right)} \right| \leqslant {{L}_{i}}$.

2.1. Учет ограничений за счет выбора времени движения. Воспользуемся свободой выбора времени T движения на фазовой плоскости из рассматриваемой начальной точки $\left( {{{x}_{{0i}}},{{{\dot {x}}}_{{0i}}}} \right)$ в конечную $({{x}_{{*i}}},{{\dot {x}}_{{*i}}})$. Используем далее обозначения

(2.11)
${{T}_{{1i}}} = \frac{{2({{x}_{{*i}}} - {{x}_{{0i}}})}}{{{{{\dot {x}}}_{{*i}}} + {{{\dot {x}}}_{{0i}}}}},\quad {{T}_{{2i}}} = \frac{{3({{x}_{{*i}}} - {{x}_{{0i}}})}}{{2{{{\dot {x}}}_{{0i}}} + {{{\dot {x}}}_{{*i}}}}},\quad {{T}_{{3i}}} = \frac{{3({{x}_{{*i}}} - {{x}_{{0i}}})}}{{{{{\dot {x}}}_{{0i}}} + 2{{{\dot {x}}}_{{*i}}}}}$
и

${{I}_{{Ti}}} = [\min {\text{\;}}\{ {{T}_{{2i}}},{{T}_{{3i}}}\} ,\max {\text{\;}}\{ {{T}_{{2i}}},{{T}_{{3i}}}\} ].$

Справедлива следующая теорема.

Теорема 1. Пусть значения x0i, ${{\dot {x}}_{{0i}}}$ и ${{x}_{{*i}}}$, ${{\dot {x}}_{{i*}}}$, такие, что выполнены условия (2.3). Многочлен (2.4) с коэффициентами (2.5) и его производная по времени обладают соответственно свойством строгой монотонности и монотонности по переменной t на отрезке $t \in \left[ {0,T} \right]$ тогда и только тогда, когда $T \in {{I}_{{Ti}}}$. При этом ${{I}_{{Ti}}} = \left[ {{{T}_{{2i}}},{{T}_{{3i}}}} \right]$, если ${{T}_{{2i}}} \leqslant {{T}_{{1i}}}$, и ${{I}_{{Ti}}} = \left[ {{{T}_{{3i}}},{{T}_{{2i}}}} \right]$ в случае ${{T}_{{1i}}} \leqslant {{T}_{{2i}}}$.

Доказательство. Согласно условиям теоремы в силу справедливости неравенств (2.3) значения T1i, T2i и T3i конечны и положительны.

Рассмотрим сначала неравенства (2.7), которые эквивалентны выполнению условий ${{c}_{{1i}}} \leqslant 0$, ${{c}_{{2i}}} < 0$ или ${{c}_{{1i}}} \geqslant 0$, ${{c}_{{2i}}} > 0$. Неравенства ${{c}_{{1i}}} \leqslant 0$, ${{c}_{{2i}}} < 0$ в силу соотношений (2.5) можно представить в виде $T \geqslant {{T}_{{2i}}}$, $T < {{T}_{{1i}}}$ при ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$ и $T \leqslant {{T}_{{2i}}}$, $T > {{T}_{{1i}}}$ в случае ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$. Аналогично неравенства ${{c}_{{1i}}} \geqslant 0$, ${{c}_{{2i}}} > 0$ эквивалентны выполнению условий $T \leqslant {{T}_{{2i}}}$, $T > {{T}_{{1i}}}$, если ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$, и $T \geqslant {{T}_{{2i}}}$, $T < {{T}_{{1i}}}$ при ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$.

Далее заметим, что для выполнения условий (2.8) необходимо, чтобы были справедливы неравенства ${{c}_{{1i}}} < 0$, ${{c}_{{2i}}} > 0$ или ${{c}_{{1i}}} > 0$, ${{c}_{{2i}}} < 0$. Условия ${{c}_{{1i}}} < 0$, ${{c}_{{2i}}} > 0$, $ - {{c}_{{1i}}}{\text{/}}\left( {3{{c}_{{2i}}}} \right) \geqslant T$ с учетом соотношений (2.5) эквивалентны неравенствам $T > \max {\text{\;}}\{ {{T}_{{1i}}},{{T}_{{2i}}}\} $, $T \leqslant {{T}_{{3i}}}$ при ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$ и T < ${\text{min\;}}\{ {{T}_{{1i}}}$, T2i}, $T \geqslant {{T}_{{3i}}}$ в случае ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$. Неравенства ${{c}_{{1i}}} > 0$, ${{c}_{{2i}}} < 0$, $ - {{c}_{{1i}}}{\text{/}}\left( {3{{c}_{{2i}}}} \right) \geqslant T$ примут вид T < < ${\text{min\;}}\{ {{T}_{{1i}}},{{T}_{{2i}}}\} $, $T \geqslant {{T}_{{3i}}}$, если ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$, и $T > \max {\text{\;}}\{ {{T}_{{1i}}},{{T}_{{2i}}}\} $, $T \leqslant {{T}_{{3i}}}$ в случае ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$.

Следовательно, в случае ${{T}_{{2i}}} \leqslant T < {{T}_{{1i}}}$ выполнено ${{c}_{{1i}}} \leqslant 0$, ${{c}_{{2i}}} < 0$, если ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$, и ${{c}_{{1i}}} \geqslant 0$, ${{c}_{{2i}}} > 0$ при ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$. Далее легко показать, что при $0 < {{T}_{{2i}}} < {{T}_{{1i}}}$ справедливo неравенство ${{T}_{{3i}}} > {{T}_{{1i}}}$. Тогда в случае ${{T}_{{2i}}} < {{T}_{{1i}}} < T \leqslant {{T}_{{3i}}}$ получим, что ${{c}_{{1i}}} < 0$, ${{c}_{{2i}}} > 0$, $ - {{c}_{{1i}}}{\text{/}}\left( {3{{c}_{{2i}}}} \right) \geqslant T$ при ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$ и ${{c}_{{1i}}} > 0$, ${{c}_{{2i}}} < 0$, $ - {{c}_{{1i}}}{\text{/}}\left( {3{{c}_{{2i}}}} \right) \geqslant T$, если ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$. Таким образом, если выполнены условия ${{T}_{{2i}}} < {{T}_{{1i}}}$, ${{T}_{{2i}}} \leqslant T \leqslant {{T}_{{3i}}}$, $T \ne {{T}_{{1i}}}$, то функция (2.6) является знакопостоянной на интервале $t \in \left( {0,T} \right)$.

Аналогичным образом при ${{T}_{{1i}}} < {{T}_{{2i}}}$ доказывается знакопостоянство функции (2.6) на интервале $t \in \left( {0,T} \right)$, где ${{T}_{{1i}}} < T \leqslant {{T}_{{2i}}}$ или ${{T}_{{3i}}} \leqslant T < {{T}_{{1i}}}$. Наконец, при $T = {{T}_{{1i}}}$ имеет место равенство c2i = 0, функция (2.6) является постоянной величиной и, следовательно, знакопостоянна. Достаточность доказана.

Для доказательства необходимости условий теоремы заметим, что в случае ${{c}_{{1i}}} \leqslant 0$, ${{c}_{{2i}}} < 0$ функция (2.6) отрицательна при всех $t \in \left( {0,T} \right]$ и, следовательно, ${{\dot {x}}_{{*i}}} < {{\dot {x}}_{{0i}}}$. Если ${{c}_{{1i}}} \geqslant 0$, ${{c}_{{2i}}} > 0$, то вторая производная по времени многочлена (2.4) положительна при всех $t \in \left( {0,T} \right]$ и ${{\dot {x}}_{{*i}}} > {{\dot {x}}_{{0i}}}$. Далее при ${{c}_{{1i}}} < 0$, ${{c}_{{2i}}} > 0$ если функция (2.6) сохраняет знак на интервале $t \in \left( {0,T} \right)$, то она отрицательна при всех $t \in \left[ {0,T} \right)$ и имеет место неравенство ${{\dot {x}}_{{*i}}} < {{\dot {x}}_{{0i}}}$. Аналогично в случае ${{c}_{{1i}}} > 0$, ${{c}_{{2i}}} < 0$ для знакопостоянства на интервале $t \in \left( {0,T} \right)$ функции (2.6) необходимым условием является ее положительность при всех $t \in \left[ {0,T} \right)$ и, следовательно, справедливость неравенства ${{\dot {x}}_{{*i}}} > {{\dot {x}}_{{0i}}}$.

Отметим, что при ${{\dot {x}}_{{0i}}}{{\dot {x}}_{{*i}}} \geqslant 0$, ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} \ne 0$ двойное неравенство $0 < {{T}_{{2i}}} \leqslant {{T}_{{1i}}}$ имеет место тогда и только тогда, когда справедливы неравенства ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$, ${{x}_{{*i}}} > {{x}_{{0i}}}$, ${{\dot {x}}_{{*i}}} \leqslant {{\dot {x}}_{{0i}}}$ или ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$, ${{x}_{{*i}}} < {{x}_{{0i}}}$, ${{\dot {x}}_{{*i}}} \geqslant {{\dot {x}}_{{0i}}}$.

Следовательно, если имеют место неравенства ${{c}_{{1i}}} \geqslant 0$, ${{c}_{{2i}}} > 0$ или ${{c}_{{1i}}} \leqslant 0$, ${{c}_{{2i}}} < 0$, то при 0 < < ${{T}_{{2i}}} \leqslant {{T}_{{1i}}}$ выполнены условия ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$ или ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$ соответственно и справедливо неравенство ${{T}_{{2i}}} \leqslant T < {{T}_{{1i}}}$. Далее при ${{c}_{{1i}}} < 0$, ${{c}_{{2i}}} > 0$ и ${{c}_{{1i}}} > 0$, ${{c}_{{2i}}} < 0$ получим, что в случае $0 < {{T}_{{2i}}} \leqslant {{T}_{{1i}}}$ имеют место соответственно неравенства ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} > 0$ и ${{\dot {x}}_{{0i}}} + {{\dot {x}}_{{*i}}} < 0$ и при $ - {{c}_{{1i}}}{\text{/}}\left( {3{{c}_{{2i}}}} \right) \geqslant T$ выполняется условие ${{T}_{{1i}}} < T \leqslant {{T}_{{3i}}}$.

В случае ${{T}_{{1i}}} \leqslant {{T}_{{2i}}}$ аналогичным образом можно показать, что из неравенств ${{c}_{{1i}}} \geqslant 0$, ${{c}_{{2i}}} > 0$ или ${{c}_{{1i}}} \leqslant 0$, ${{c}_{{2i}}} < 0$ следует двойное неравенство ${{T}_{{1i}}} < T \leqslant {{T}_{{2i}}}$, а для выполнения условий ${{c}_{{1i}}} < 0$, ${{c}_{{2i}}} > 0$ или ${{c}_{{1i}}} > 0$, ${{c}_{{2i}}} < 0$ при $ - {{c}_{{1i}}}{\text{/}}\left( {3{{c}_{{2i}}}} \right) \geqslant T$ необходимым является условие ${{T}_{{3i}}} \leqslant T < {{T}_{{1i}}}$.

Наконец, равенство ${{c}_{{2i}}} = 0$ эквивалентно условию T = T1i. Необходимость доказана.

В частности, заметим, что в случае ${{\dot {x}}_{{0i}}} = {{\dot {x}}_{{*i}}} \ne 0$ имеют место равенства ${{T}_{{1i}}} = {{T}_{{2i}}} = {{T}_{{3i}}}$ и ${{c}_{{1i}}} = {{c}_{{2i}}}$ = 0.

Следствием теоремы 1 является следующий результат.

Следствие 1. Пусть значения x0i, ${{\dot {x}}_{{0i}}}$ и ${{x}_{{*i}}}$, ${{\dot {x}}_{{*i}}}$ такие, что справедливы неравенства (2.2) и (2.3). Тогда для любого $T \in {{I}_{{Ti}}}$ многочлен (2.4) с коэффициентами (2.5) и его производная по времени при всех $t \in \left[ {0,T} \right]$ удовлетворяют ограничениям $\left| {{{p}_{i}}\left( t \right)} \right| \leqslant {{B}_{i}}$ и $\left| {{{{\dot {p}}}_{i}}\left( t \right)} \right| \leqslant {{N}_{i}}$.

Далее исследуем соответствующее условие $\left| {{{{\ddot {p}}}_{i}}\left( t \right)} \right| \leqslant {{Q}_{i}}$, $t \in \left[ {0,T} \right]$, на вторую производную по времени многочлена (2.4) с коэффициентами (2.5). Рассмотрим выражения ${{\ddot {p}}_{i}}(0) = 2{{c}_{{1i}}}$ и ${{\ddot {p}}_{i}}(T) = 2{{c}_{{1i}}}$ + 6c2iT в неравенстве (2.9) как функции переменной $T \in {{I}_{{Ti}}}$. Заметим, что первая и вторая производные по переменной T выражения для ${{\ddot {p}}_{i}}\left( 0 \right)$ обращаются в ноль при $T = 2{{T}_{{2i}}}$ и $T = 3{{T}_{{2i}}}$ соответственно. Аналогично первая и вторая производные по переменной T выражения для ${{\ddot {p}}_{i}}(T)$ равны нулю соответственно, если $T = 2{{T}_{{3i}}}$ и $T = 3{{T}_{{3i}}}$. Можно показать, что в случае выполнения условий теоремы 1 справедливы неравенства $2{{T}_{{2i}}} > {{T}_{{3i}}}$ и $2{{T}_{{3i}}} > {{T}_{{2i}}}$. Следовательно, для поиска максимальных по модулю значений ${{\ddot {p}}_{i}}(0)$ и ${{\ddot {p}}_{i}}(T)$ как функций переменной $T \in {{I}_{{Ti}}}$ достаточно проверить значения этих функций при $T = {{T}_{{2i}}}$ и $T = {{T}_{{3i}}}$.

При $T = {{T}_{{2i}}}$ имеют место равенства ${{c}_{{1i}}} = 0$, ${{c}_{{2i}}} = ({{\dot {x}}_{{*i}}} - {{\dot {x}}_{{0i}}}){\text{/}}(3T_{{2i}}^{2})$ и ${{\ddot {p}}_{i}}(0) = 0$. Таким образом, максимальное по модулю значение второй производной по времени многочлена (2.4) на отрезке $t \in \left[ {0,{{T}_{{2i}}}} \right]$ достигается при $t = {{T}_{{2i}}}$ и равно

(2.12)
${{\ddot {p}}_{i}}\left( {{{T}_{{2i}}}} \right) = 6{{c}_{{2i}}}{{T}_{{2i}}} = \frac{{2({{{\dot {x}}}_{{*i}}} - {{{\dot {x}}}_{{0i}}})(2{{{\dot {x}}}_{{0i}}} + {{{\dot {x}}}_{{*i}}})}}{{3({{x}_{{*i}}} - {{x}_{{0i}}})}}.$

В случае $T = {{T}_{{3i}}}$ справедливы равенства ${{c}_{{1i}}} + 3{{c}_{{2i}}}{{T}_{{3i}}} = 0$, ${{c}_{{1i}}} = ({{\dot {x}}_{{*i}}} - {{\dot {x}}_{{0i}}}){\text{/}}{{T}_{{3i}}}$ и ${{\ddot {p}}_{i}}\left( {{{T}_{{3i}}}} \right) = 0$. Следовательно, максимальное по модулю значение второй производной многочлена (2.4) на отрезке $t \in \left[ {0,{{T}_{{3i}}}} \right]$ достигается при t = 0 и равно

(2.13)
${{\ddot {p}}_{i}}(0) = 2{{c}_{{1i}}} = \frac{{2({{{\dot {x}}}_{{*i}}} - {{{\dot {x}}}_{{0i}}})({{{\dot {x}}}_{{0i}}} + 2{{{\dot {x}}}_{{*i}}})}}{{3({{x}_{{*i}}} - {{x}_{{0i}}})}}.$

В частности, при $T = {{T}_{{1i}}}$ имеют место равенства ${{c}_{{2i}}} = 0$, ${{c}_{{1i}}} = ({{\dot {x}}_{{*i}}} - {{\dot {x}}_{{0i}}}){\text{/}}\left( {2{{T}_{{1i}}}} \right)$ и вторая производная по времени многочлена (2.4) при всех $t \in \left[ {0,{{T}_{{1i}}}} \right]$ является постоянной величиной:

${{\ddot {p}}_{i}}(t) = 2{{c}_{{1i}}} = \frac{{\dot {x}_{{*i}}^{2} - \dot {x}_{{0i}}^{2}}}{{2({{x}_{{*i}}} - {{x}_{{0i}}})}}.$

Таким образом, имеет место следующая теорема.

Теорема 2. Пусть значения x0i, ${{\dot {x}}_{{0i}}}$ и ${{x}_{{*i}}}$, ${{\dot {x}}_{{*i}}}$, такие, что справедливы неравенства (2.3) и

(2.14)
${\text{max}}\left\{ {\left| {\frac{{2({{{\dot {x}}}_{{*i}}} - {{{\dot {x}}}_{{0i}}})(2{{{\dot {x}}}_{{0i}}} + {{{\dot {x}}}_{{*i}}})}}{{3({{x}_{{*i}}} - {{x}_{{0i}}})}}} \right|,\left| {\frac{{2({{{\dot {x}}}_{{*i}}} - {{{\dot {x}}}_{{0i}}})({{{\dot {x}}}_{{0i}}} + 2{{{\dot {x}}}_{{*i}}})}}{{3({{x}_{{*i}}} - {{x}_{{0i}}})}}} \right|} \right\} \leqslant {{Q}_{i}}.$

Тогда для любого $T \in {{I}_{{Ti}}}$ вторая производная по времени многочлена (2.4) с коэффициентами (2.5) при всех $t \in \left[ {0,T} \right]$ удовлетворяет ограничению $\left| {{{{\ddot {p}}}_{i}}\left( t \right)} \right| \leqslant {{Q}_{i}}$.

На основе следствия 1 и теоремы 2 сформулируем следующий результат.

Теорема 3. Пусть значения x0i, ${{\dot {x}}_{{0i}}}$ и ${{x}_{{*i}}}$, ${{\dot {x}}_{{*i}}}$, такие, что справедливы неравенства (2.2), (2.3) и (2.14). Тогда для любого $T \in {{I}_{{Ti}}}$ многочлен (2.4) с коэффициентами (2.5) и его первая и вторая производные по времени при всех $t \in \left[ {0,T} \right]$ удовлетворяют ограничениям $\left| {{{p}_{i}}\left( t \right)} \right| \leqslant {{B}_{i}}$, $\left| {{{{\dot {p}}}_{i}}\left( t \right)} \right| \leqslant {{N}_{i}}$ и $\left| {{{{\ddot {p}}}_{i}}\left( t \right)} \right| \leqslant {{Q}_{i}}$ соответственно.

Заметим, что, если требуемое значение времени движения T задано в постановке задачи, то выполнение условия $T \in {{I}_{{Ti}}}$ в теоремах 1–3 и следствии 1 обеспечим за счет выбора тех значений из x0i, ${{\dot {x}}_{{0i}}}$, ${{x}_{{*i}}}$ и ${{\dot {x}}_{{*i}}}$, которые не фиксированы в условиях задачи. В этом случае соотношения в (2.11) для подходящих величин T2i и T3i рассмотрим как систему линейных алгебраических уравнений относительно соответствующих начальных и/или конечных значений положения и скорости. При этом необходимо, чтобы время движения T было таким, что полученные значения удовлетворяют условиям (2.2) и (2.3). Выполнение ограничения (2.14) требует дополнительной проверки.

3. Синтез программных движений для многих степеней свободы. Далее будем полагать, что для каждой из m степеней свободы механической системы (1.1) уравнения системы, соответствующие рассматриваемой степени свободы, могут быть представлены в виде (2.1), где ${{g}_{i}}\left( {t,{{x}_{{1i}}}} \right) \ne 0$ при всех ${{x}_{{1i}}} \in \mathbb{R}$ и $t \geqslant 0$, $i \in \overline {1,m} $.

Фиксируем произвольные начальные ${{x}_{{1i}}}\left( 0 \right) = {{x}_{{0i}}}$, ${{x}_{{2i}}}\left( 0 \right) = {{\dot {x}}_{{0i}}}$, $i = \overline {1,m} $, и желаемые конечные ${{x}_{{1i}}}\left( T \right) = {{x}_{{*i}}}$, ${{x}_{{2i}}}\left( T \right) = {{\dot {x}}_{{*i}}}$, $i = \overline {1,m} $, значения переменных qi и ${{\dot {q}}_{i}}$, $i \in \overline {1,m} $. Здесь T – время движения в фазовом пространстве $\left( {{{q}_{1}},{{{\dot {q}}}_{1}}, \ldots ,{{q}_{m}},{{{\dot {q}}}_{m}}} \right)$ системы (1.1) из начальной точки c координатами $\left( {{{x}_{{01}}},{{{\dot {x}}}_{{01}}}, \ldots ,{{x}_{{0m}}},{{{\dot {x}}}_{{0m}}}} \right)$ в конечную точку c координатами $({{x}_{{*1}}},{{\dot {x}}_{{*1}}}, \ldots ,{{x}_{{*m}}},{{\dot {x}}_{{*m}}})$. Справедлива теорема, являющаяся следствием теоремы 3.

Следствие 2. Пусть значения x0i, ${{\dot {x}}_{{0i}}}$ и ${{x}_{{*i}}}$, ${{\dot {x}}_{{*i}}}$, $i \in \overline {1,m} $, такие, что справедливы соответствующие неравенства (2.2), (2.3), (2.14) и множество ${{I}_{T}} = {{I}_{{T1}}} \cap \ldots \cap {{I}_{{Tm}}}$ непустое. Тогда для любого $T \in {{I}_{T}}$ при всех $i \in \overline {1,m} $ многочлены (2.4) с коэффициентами (2.5) и их первые и вторые производные по времени удовлетворяют на отрезке $t \in \left[ {0,T} \right]$ ограничениям $\left| {{{p}_{i}}\left( t \right)} \right| \leqslant {{B}_{i}}$, $\left| {{{{\dot {p}}}_{i}}\left( t \right)} \right| \leqslant {{N}_{i}}$ и $\left| {{{{\ddot {p}}}_{i}}\left( t \right)} \right| \leqslant {{Q}_{i}}$, $i \in \overline {1,m} $.

Отметим, что, если множество IT пустое при заданных значениях x0i, ${{\dot {x}}_{{0i}}}$ и ${{x}_{{*i}}}$, ${{\dot {x}}_{{*i}}}$, $i \in \overline {1,m} $, то необходимо добиться непустоты IT за счет выбора с учетом условий (2.2), (2.3) и (2.14) тех значений из x0i, ${{\dot {x}}_{{0i}}}$ и ${{x}_{{*i}}}$, ${{\dot {x}}_{{*i}}}$, $i \in \overline {1,m} $, которые не фиксированы в постановке задачи.

Наконец, каждая из компонент ui, $i = \overline {1,m} $, программного управления (1.3) имеет вид (2.10).

3.1. Движение с нулевыми начальными и конечными значениями обобщенных скоростей. В частности, рассмотрим задачу построения программных движений при условии, что ${{\dot {x}}_{{0i}}} = {{\dot {x}}_{{*i}}} = 0$, $i = \overline {1,m} $. Отметим, что для выполнения условий теорем 1–3 и следствий 1, 2 необходимо, чтобы хотя бы одно из соответствующих значений ${{\dot {x}}_{{0i}}}$ и ${{\dot {x}}_{{*i}}}$ было отлично от нуля, что в данном случае не выполняется при всех $i = \overline {1,m} $. Дополнительно к ограничениям (1.2) потребуем, чтобы искомая программная траектория удовлетворяла условиям ${{\ddot {q}}_{i}}(0) = {{\ddot {q}}_{i}}(T)$ = 0, $i = \overline {1,m} $.

Для синтеза программной траектории из начальной точки $\left( {{{x}_{{01}}},0, \ldots ,{{x}_{{0m}}},0} \right)$ в конечную точку $({{x}_{{*1}}},0, \ldots ,{{x}_{{*m}}},0)$ в пространстве состояний $\left( {{{q}_{1}},{{{\dot {q}}}_{1}}, \ldots ,{{q}_{m}},{{{\dot {q}}}_{m}}} \right)$ системы (1.1) используем дополнительные промежуточные точки с координатами $\left( {{{x}_{{j1}}},{{{\dot {x}}}_{{j1}}}, \ldots ,{{x}_{{jm}}},{{{\dot {x}}}_{{jm}}}} \right)$, $j = \overline {1,4} $, где значения xji, ${{\dot {x}}_{{ji}}}$, $j = \overline {1,4} $, $i = \overline {1,m} $, удовлетворяют условиям

(3.1)
${{x}_{{ji}}} \in (\min {\text{\;}}\{ {{x}_{{0i}}},{{x}_{{*i}}}\} ,\max {\text{\;}}\{ {{x}_{{0i}}},{{x}_{{*i}}}\} ),\quad ({{x}_{{j,i}}} - {{x}_{{j - 1,i}}})({{x}_{{*i}}} - {{x}_{{0i}}}) > 0,\quad j = \overline {1,4} ,\quad i = \overline {1,m} ,$
(3.2)
${{\dot {x}}_{{ji}}}\left( {{{x}_{{*i}}} - {{x}_{{0i}}}} \right) > 0,\quad {{\dot {x}}_{{2i}}} = {{\dot {x}}_{{3i}}},\quad \max {\text{\;}}\{ \left| {{{{\dot {x}}}_{{1i}}}\left| , \right|{{{\dot {x}}}_{{4i}}}} \right|\} < \left| {{{{\dot {x}}}_{{2i}}}} \right| \leqslant {{N}_{i}},\quad j = \overline {1,4} ,\quad i = \overline {1,m} .$

Параметризованные временем кривые

(3.3)
${{x}_{{1i}}} = {{p}_{{ji}}}\left( t \right),\quad {{x}_{{2i}}} = {{\dot {p}}_{{ji}}}\left( t \right),\quad t \in \left[ {\mathop \sum \limits_{k = 0}^{j - 1} {{T}_{k}},\mathop \sum \limits_{k = 0}^j {{T}_{k}}} \right],\quad j = \overline {1,5} ,\quad i = \overline {1,m} ,$
в фазовом пространстве системы (1.1), соединяющие соответственно точки с координатами $\left( {{{x}_{{j - 1,1}}},{{{\dot {x}}}_{{j - 1,1}}}, \ldots ,{{x}_{{j - 1,m}}},{{{\dot {x}}}_{{j - 1,m}}}} \right)$ и $\left( {{{x}_{{j1}}},{{{\dot {x}}}_{{j1}}}, \ldots ,{{x}_{{jm}}},{{{\dot {x}}}_{{jm}}}} \right)$, $j = \overline {1,5} $, где T0 = 0, ${{T}_{1}} + \ldots + {{T}_{5}} = T$, ${{x}_{{5i}}} = {{x}_{{*i}}}$, ${{\dot {x}}_{{5i}}} = {{\dot {x}}_{{*i}}} = 0$, $i = \overline {1,m} $, зададим при помощи многочленов

(3.4)
${{p}_{{ji}}}\left( t \right) = {{x}_{{j - 1,i}}} + {{\dot {x}}_{{j - 1,i}}}\left( {t - \mathop \sum \limits_{k = 0}^{j - 1} {{T}_{k}}} \right) + {{c}_{{1{{i}_{j}}}}}{{\left( {t - \mathop \sum \limits_{k = 0}^{j - 1} {{T}_{k}}} \right)}^{2}} + {{c}_{{2{{i}_{j}}}}}{{\left( {t - \mathop \sum \limits_{k = 0}^{j - 1} {{T}_{k}}} \right)}^{3}},\quad j = \overline {1,5} ,\quad i = \overline {1,m} .$

Здесь коэффициенты ${{c}_{{1{{i}_{j}}}}}$, ${{c}_{{2{{i}_{j}}}}}$, $j = \overline {1,5} $, $i = \overline {1,m} $, следующие:

${{c}_{{1{{i}_{j}}}}} = - ((2{{\dot {x}}_{{j - 1,i}}} + {{\dot {x}}_{{ji}}}){{T}_{j}} + 3({{x}_{{j - 1,i}}} - {{x}_{{ji}}})){\text{/}}T_{j}^{2},\quad {{c}_{{2{{i}_{j}}}}} = (({{\dot {x}}_{{j - 1,i}}} + {{\dot {x}}_{{ji}}}){{T}_{j}} + 2({{x}_{{j - 1,i}}} - {{x}_{{ji}}})){\text{/}}T_{j}^{3}.$

Согласно следствию 2, рассмотренному для каждой из пяти промежуточных траекторий, образующих составную программную траекторию (3.3) из начальной точки с координатами $\left( {{{x}_{{01}}},0, \ldots ,{{x}_{{0m}}},0} \right)$ в конечную точку $({{x}_{{*1}}},0, \ldots ,{{x}_{{*m}}},0)$, значения Tj, $j = \overline {1,5} $, и xji, ${{\dot {x}}_{{ji}}}$, $j = \overline {1,4} $, $i = \overline {1,m} $, выбираются таким образом, что имеют место соотношения

(3.5)
$\frac{{3\left( {{{x}_{{ji}}} - {{x}_{{j - 1,i}}}} \right)}}{{2{{{\dot {x}}}_{{j - 1,i}}} + {{{\dot {x}}}_{{ji}}}}} \leqslant \left( \geqslant \right){{T}_{j}} \leqslant \left( \geqslant \right)\frac{{3\left( {{{x}_{{ji}}} - {{x}_{{j - 1,i}}}} \right)}}{{{{{\dot {x}}}_{{j - 1,i}}} + 2{{{\dot {x}}}_{{ji}}}}},\quad j = \overline {1,5} ,\quad j \ne 3,\quad i = \overline {1,m} ,$
(3.6)
${{T}_{3}} = \frac{{{{x}_{{3i}}} - {{x}_{{2i}}}}}{{{{{\dot {x}}}_{{2i}}}}},\quad i = \overline {1,m} .$

Далее, условия ${{\ddot {q}}_{i}}\left( 0 \right) = {{\ddot {p}}_{{1i}}}\left( 0 \right) = 0$ и ${{\ddot {q}}_{i}}\left( T \right) = {{\ddot {p}}_{{5i}}}\left( T \right) = 0$, $i = \overline {1,m} $, обеспечим, выбрав соответственно значения T1, ${{x}_{{1i}}}$, ${{\dot {x}}_{{1i}}}$ и T5, ${{x}_{{4i}}}$, ${{\dot {x}}_{{4i}}}$, $i = \overline {1,m} $, такие, что

(3.7)
${{T}_{1}} = \frac{{3\left( {{{x}_{{1i}}} - {{x}_{{0i}}}} \right)}}{{{{{\dot {x}}}_{{1i}}}}},\quad {{T}_{5}} = \frac{{3({{x}_{{*i}}} - {{x}_{{4i}}})}}{{{{{\dot {x}}}_{{4i}}}}},\quad i = \overline {1,m} .$

Заметим, что для непрерывности вторых производных по времени составных функций ${{x}_{{1i}}} = {{x}_{{1i}}}\left( t \right)$, $t \in \left[ {0,T} \right]$, $i = \overline {1,m} $, в (3.3) при $t = {{T}_{1}} + {{T}_{2}}$ и $t = {{T}_{1}} + {{T}_{2}} + {{T}_{3}}$ необходимо и достаточно, чтобы имели место равенства ${{\ddot {p}}_{{2i}}}\left( {{{T}_{1}} + {{T}_{2}}} \right) = 0$ и ${{\ddot {p}}_{{4i}}}\left( {{{T}_{1}} + {{T}_{2}} + {{T}_{3}}} \right) = 0$, $i = \overline {1,m} $. Указанные условия на значения вторых производных соответствующих многочленов выполним за счет выбора значений T2, ${{x}_{{2i}}}$, ${{\dot {x}}_{{2i}}}$ и T4, ${{x}_{{3i}}}$, $i = \overline {1,m} $, удовлетворяющих соотношениям

(3.8)
${{T}_{2}} = \frac{{3\left( {{{x}_{{2i}}} - {{x}_{{1i}}}} \right)}}{{{{{\dot {x}}}_{{1i}}} + 2{{{\dot {x}}}_{{2i}}}}},\quad {{T}_{2}} = \frac{{3\left( {{{x}_{{4i}}} - {{x}_{{3i}}}} \right)}}{{{{{\dot {x}}}_{{4i}}} + 2{{{\dot {x}}}_{{2i}}}}},\;i = \overline {1,m} .$

Наконец, производные второго порядка ${{\ddot {x}}_{{1i}}}\left( t \right)$, $t \in \left[ {0,T} \right]$, $i = \overline {1,m} $, для составной программной траектории (3.3) непрерывны при t = T1 и $t = {{T}_{1}} + {{T}_{2}} + {{T}_{3}} + {{T}_{4}}$ тогда и только тогда, когда имеют место равенства

(3.9)
${{\ddot {p}}_{{1i}}}\left( {{{T}_{1}}} \right) = \frac{{2\dot {x}_{{1i}}^{2}}}{{3\left( {{{x}_{{1i}}} - {{x}_{{0i}}}} \right)}} = \frac{{2\left( {{{{\dot {x}}}_{{2i}}} - {{{\dot {x}}}_{{1i}}}} \right)\left( {{{{\dot {x}}}_{{1i}}} + 2{{{\dot {x}}}_{{2i}}}} \right)}}{{3\left( {{{x}_{{2i}}} - {{x}_{{1i}}}} \right)}} = {{\ddot {p}}_{{2i}}}\left( {{{T}_{1}}} \right),\quad i = \overline {1,m} ,$
(3.10)
${{\ddot {p}}_{{4i}}}\left( {\mathop \sum \limits_{k = 1}^4 {{T}_{k}}} \right) = \frac{{2\left( {{{{\dot {x}}}_{{4i}}} - {{{\dot {x}}}_{{2i}}}} \right)\left( {2{{{\dot {x}}}_{{2i}}} + {{{\dot {x}}}_{{4i}}}} \right)}}{{3\left( {{{x}_{{4i}}} - {{x}_{{3i}}}} \right)}} = \frac{{2\dot {x}_{{4i}}^{2}}}{{3({{x}_{{4i}}} - {{x}_{{*i}}})}} = {{\ddot {p}}_{{5i}}}\left( {\mathop \sum \limits_{k = 1}^4 {{T}_{k}}} \right),\quad i = \overline {1,m} .$

Условия (3.9) выполним, выбрав

(3.11)
${{\dot {x}}_{{1i}}} = \frac{{{{{\dot {x}}}_{{2i}}}}}{{{{\varepsilon }_{1}}}},\quad {{x}_{{1i}}} = \frac{{{{x}_{{2i}}} + \left( {{{\varepsilon }_{1}} - 1} \right)\left( {1 + 2{{\varepsilon }_{1}}} \right){{x}_{{0i}}}}}{{{{\varepsilon }_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right)}},\quad i = \overline {1,m} ,$
где ε1 > 1 – произвольный параметр. Аналогично добьемся справедливости равенств (3.10) за счет выбора

(3.12)
${{\dot {x}}_{{4i}}} = \frac{{{{{\dot {x}}}_{{2i}}}}}{{{{\varepsilon }_{2}}}},\quad {{x}_{{4i}}} = \frac{{{{x}_{{3i}}} + \left( {{{\varepsilon }_{2}} - 1} \right)\left( {1 + 2{{\varepsilon }_{2}}} \right){{x}_{{*i}}}}}{{{{\varepsilon }_{2}}\left( {2{{\varepsilon }_{2}} - 1} \right)}},\quad i = \overline {1,m} ,\quad {{\varepsilon }_{2}} > 1.$

Отметим, что при любых значениях параметров ε1 > 1, ε2 > 1 и переменных x2i, ${{\dot {x}}_{{2i}}}$, x3i, $i = \overline {1,m} $, удовлетворяющих условиям (3.1) и (3.2), для значений x1i, ${{\dot {x}}_{{1i}}}$, $i = \overline {1,m} $, (3.11) и x4i, ${{\dot {x}}_{{4i}}}$, $i = \overline {1,m} $, (3.12) выполнены соотношения в (3.1) и (3.2).

В случае справедливости равенств (3.11), (3.12) имеют место соотношения ${{T}_{2}} = ({{\varepsilon }_{1}} - 1){{T}_{1}}$, ${{T}_{4}} = ({{\varepsilon }_{2}} - 1){{T}_{5}}$ и условия (2.14) для составной программной траектории (3.3) примут вид

(3.13)
$\begin{gathered} \max \left\{ {\frac{{2\dot {x}_{{1i}}^{2}}}{{3\left| {{{x}_{{1i}}} - {{x}_{{0i}}}} \right|}}} \right.,\;\,\left. {\frac{{2\dot {x}_{{4i}}^{2}}}{{3\left| {{{x}_{{4i}}} - {{x}_{{*i}}}} \right|}}} \right\} = \\ = \max \left\{ {\frac{{6\left| {{{x}_{{2i}}} - {{x}_{{0i}}}} \right|}}{{{{\varepsilon }_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right)T_{1}^{2}}},\;\,\frac{{6\left| {{{x}_{{3i}}} - {{x}_{{*i}}}} \right|}}{{{{\varepsilon }_{2}}\left( {2{{\varepsilon }_{2}} - 1} \right)T_{5}^{2}}}} \right\} \leqslant {{Q}_{i}},\quad i = \overline {1,m} .~ \\ \end{gathered} $

Далее если требуемое значение времени движения T задано в постановке задачи, возьмем произвольные положительные значения T1, T3, T5 и ε1 > 1, ε2 > 1 таким образом, чтобы было выполнено условие ${{\varepsilon }_{1}}{{T}_{1}} + {{T}_{3}} + {{\varepsilon }_{2}}{{T}_{5}} = T$. Тогда, рассмотрев соотношения (3.6) и (3.7) как систему линейных алгебраических уравнений относительно переменных x2i, ${{\dot {x}}_{{2i}}}$ и x3i, $i = \overline {1,m} $, при условии, что имеют место равенства (3.11), (3.12), получим

(3.14)
${{x}_{{2i}}} = \frac{{{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right){{x}_{{*i}}} + \left( {3{{T}_{3}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right)} \right){{x}_{{0i}}}}}{{{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right) + 3{{T}_{3}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right)}},\quad i = \overline {1,m} ,$
(3.15)
${{x}_{{3i}}} = \frac{{\left( {{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right) + 3{{T}_{3}}} \right){{x}_{{*i}}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right){{x}_{{0i}}}}}{{{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right) + 3{{T}_{3}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right)}},\quad i = \overline {1,m} ,$
(3.16)
${{\dot {x}}_{{2i}}} = \frac{{3\left( {{{x}_{{*i}}} - {{x}_{{0i}}}} \right)}}{{{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right) + 3{{T}_{3}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right)}},\quad i = \overline {1,m} .$

Отметим, что для любых значений ${{x}_{{0i}}} \ne {{x}_{{*i}}}$, $i = \overline {1,m} $, и положительных T1, T3, T5, ε1 > 1, ε2 > 1 значения переменных x2i, $i = \overline {1,m} $, (3.14) и x3i, $i = \overline {1,m} $, (3.15) удовлетворяют соответствующим условиям в (3.1). При этом для выполнения ограничений $\left| {{{{\dot {x}}}_{{2i}}}} \right| \leqslant {{N}_{i}}$, $i = \overline {1,m} $, на переменные ${{\dot {x}}_{{2i}}}$, $i = \overline {1,m} $, записанные в виде (3.16), необходимо и достаточно, чтобы значения x0i, ${{x}_{{*i}}}$, $i = \overline {1,m} $, и T1, T3, T5, ε1 > 1, ε2 > 1 удовлетворяли неравенствам

(3.17)
$\frac{{3\left| {{{x}_{{*i}}} - {{x}_{{0i}}}} \right|}}{{{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right) + 3{{T}_{3}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right)}} \leqslant {{N}_{i}},\quad i = \overline {1,m} .$

В этом случае для значений (3.16) выполнены соответствующие условия в (3.2).

Наконец, неравенства (3.13) для x2i, ${{\dot {x}}_{{2i}}}$ и x2i, $i = \overline {1,m} $, имеющих вид (3.14)–(3.16), запишутся следующим образом:

(3.18)
$\frac{{6\left| {{{x}_{{*i}}} - {{x}_{{0i}}}} \right|}}{{{{\varepsilon }_{1}}{{T}_{1}}\left( {{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right) + 3{{T}_{3}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right)} \right)}} \leqslant {{Q}_{i}},\quad i = \overline {1,m} ,$
(3.19)
$\frac{{6\left| {{{x}_{{*i}}} - {{x}_{{0i}}}} \right|}}{{{{\varepsilon }_{2}}{{T}_{5}}\left( {{{T}_{1}}\left( {2{{\varepsilon }_{1}} - 1} \right) + 3{{T}_{3}} + {{T}_{5}}\left( {2{{\varepsilon }_{2}} - 1} \right)} \right)}} \leqslant {{Q}_{i}},\quad i = \overline {1,m} .$

4. Построение программных движений для параллельного дельта-робота. Рассмотрим динамику параллельного дельта-робота, записанную в виде [22]

(4.1)
$\ddot {\theta } = {{M}^{{ - 1}}}\left( \theta \right)\left( {\tau - C\left( {\theta ,\dot {\theta }} \right)\dot {\theta } - G\left( \theta \right)} \right),$
где $\theta = {{\left( {{{\theta }_{1}},{{\theta }_{2}},{{\theta }_{3}}} \right)}^{{\text{T}}}} \in {{\mathbb{R}}^{3}}$ – углы между неподвижным основанием и рычагами; $\tau \in {{\mathbb{R}}^{3}}$ – моменты, создаваемые силовыми приводами и действующие на рычаги; $M\left( \theta \right) = {{M}^{{\text{T}}}}\left( \theta \right) > 0$ – матрица моментов инерции; $C(\theta ,\dot {\theta })$ – слагаемые, связанные с центробежными и кориолисовыми силами; G(θ) – слагаемые, связанные с действием силы тяжести. Положение подвижной конечной платформы робота в пространстве описывается при помощи вектора $X = {{\left( {x,y,z} \right)}^{{\text{T}}}}$ в прямоугольной декартовой системе координат.

Отметим, что одна из типовых задач управления движением дельта-робота состоит в подхвате и переносе различных объектов из одного положения в пространстве в другое при помощи инструмента, установленного на подвижной платформе. При этом подвижная платформа совершает перемещение в пространстве из некоторого начального положения ${{X}_{0}} = {{\left( {{{x}_{0}},{{y}_{0}},{{z}_{0}}} \right)}^{{\text{T}}}}$ в соответствующее конечное положение ${{X}_{*}} = {{({{x}_{*}},{{y}_{*}},{{z}_{*}})}^{{\text{T}}}}$. С использованием обратной кинематики робота [22] начальное X = X0 и конечное $X = {{X}_{*}}$ положения подвижной платформы можно записать в переменных θ как $\theta = {{\theta }_{0}} = {{\left( {{{\theta }_{{01}}},{{\theta }_{{02}}},{{\theta }_{{03}}}} \right)}^{{\text{T}}}}$ и $\theta = {{\theta }_{*}} = {{({{\theta }_{{*1}}},{{\theta }_{{*2}}},{{\theta }_{{*3}}})}^{{\text{T}}}}$.

Решим задачу синтеза программного движения $\theta = {{\theta }_{r}}\left( t \right)$, $\tau = {{\tau }_{r}}\left( t \right)$, переводящего систему (4.1) из начального состояния $\theta \left( 0 \right) = {{\theta }_{0}}$, $\dot {\theta }\left( 0 \right) = 0$ при $\ddot {\theta }\left( 0 \right) = 0$ в конечное состояние $\theta \left( T \right) = {{\theta }_{*}}$, $\dot {\theta }(T) = 0$ таким образом, что $\ddot {\theta }\left( T \right) = 0$. При этом необходимо, чтобы искомая программная траектория $\theta = {{\theta }_{r}}\left( t \right)$ удовлетворяла при всех $t \in \left[ {0,T} \right]$ геометрическим ограничениям $\left| {{{\theta }_{{ir}}}\left( t \right)} \right| \leqslant \pi {\text{/}}2$, ограничениям на значения угловых скоростей $\left| {{{{\dot {\theta }}}_{{ir}}}\left( t \right)} \right| \leqslant {{N}_{i}}$ и ограничениям на значения угловых ускорений $\left| {{{{\ddot {\theta }}}_{{ir}}}\left( t \right)} \right| \leqslant {{Q}_{i}}$, $i = \overline {1,3} $. Здесь Ni, Qi, $i = \overline {1,3} $, – заданные положительные значения. Будем также полагать, что время движения T не задано в постановке задачи.

Фиксируем произвольные положительные значения T1, T3, T5 и ε1 > 1, ε2 > 1. Для синтеза программной траектории из начальной точки с координатами $\left( {{{\theta }_{{01}}},0,{{\theta }_{{02}}},0,{{\theta }_{{03}}},0} \right)$ в конечную точку $({{\theta }_{{*1}}},0,{{\theta }_{{*2}}},0,{{\theta }_{{*3}}},0)$ в фазовом пространстве системы (4.1) используем дополнительные промежуточные точки с координатами $\left( {{{\theta }_{{j1}}},{{{\dot {\theta }}}_{{j1}}},{{\theta }_{{j2}}},{{{\dot {\theta }}}_{{j2}}},{{\theta }_{{j3}}},{{{\dot {\theta }}}_{{j3}}}} \right)$, $j = \overline {1,4} $. Здесь значения θji, ${{\dot {\theta }}_{{ji}}}$, $j = \overline {1,4} $, $i = \overline {1,3} $, удовлетворяют условиям ${{\dot {\theta }}_{{2i}}} = {{\dot {\theta }}_{{3i}}}$, $i = \overline {1,3} $, и соответствующим соотношениям (3.11), (3.12), (3.14)–(3.16), записанным в обозначениях θ.

Программная траектория $\theta = {{\theta }_{r}}\left( t \right)$, $t \in \left[ {0,T} \right]$, запишется покомпонентно следующим образом:

(4.2)
${{\theta }_{i}} = {{\theta }_{{ir}}}\left( t \right) = \left\{ {{{p}_{{ji}}}\left( t \right),t \in \left[ {\mathop \sum \limits_{k = 0}^{j - 1} {{T}_{k}},\mathop \sum \limits_{k = 0}^j {{T}_{k}}} \right],j = \overline {1,5} } \right\},\quad i = \overline {1,3} ,$
где $T = {{\varepsilon }_{1}}{{T}_{1}} + {{T}_{3}} + {{\varepsilon }_{2}}{{T}_{5}}$, ${{T}_{2}} = \left( {{{\varepsilon }_{1}} - 1} \right){{T}_{1}}$, ${{T}_{4}} = \left( {{{\varepsilon }_{2}} - 1} \right){{T}_{5}}$, многочлены pji(t), $j = \overline {1,5} $, $i = \overline {1,3} $, имеют соответствующий вид (3.4), записанный в обозначениях θ.

Заметим, что для выполнения заданных ограничений на значения функций (4.2) и их первых и вторых производных по времени необходимо и достаточно, чтобы выбранные значения T1, T3, T5 и ${{\varepsilon }_{1}} > 1$, ${{\varepsilon }_{2}} > 1$ удовлетворяли соответствующим неравенствам (3.17), (3.18) и (3.19), записанным в обозначениях θ.

Искомое программное управление, являющееся решением рассматриваемой терминальной задачи для системы (4.1), имеет вид

(4.3)
$\begin{array}{*{20}{l}} \tau &{ = {{\tau }_{r}}\left( t \right) = M\left( {{{\theta }_{r}}\left( t \right)} \right){{{\ddot {\theta }}}_{r}}\left( t \right) + C\left( {{{\theta }_{r}}\left( t \right),{{{\dot {\theta }}}_{r}}\left( t \right)} \right){{{\dot {\theta }}}_{r}}\left( t \right) + G\left( {{{\theta }_{r}}\left( t \right)} \right),\quad t \in \left[ {0,T} \right].} \end{array}$

Результаты численного моделирования системы (4.1) с управлением (4.3) для значений физических и геометрических параметров модели, взятых из работы [22], представлены на рис. 1–4. В качестве начальных и конечных значений угловых координат рассматривались соответственно ${{\theta }_{0}} = {{( - 0.9106, - 0.2294,0.2568)}^{{\text{T}}}}$ и ${{\theta }_{*}} = {{\left( { - 0.516,1.04,0.4541} \right)}^{{\text{T}}}}$. При этом начальное и конечное положения подвижной конечной платформы робота в декартовой системе координат следующие: ${{X}_{0}} = {{\left( {0.2,0.1, - 0.5} \right)}^{{\text{T}}}}$ и ${{X}_{1}} = {{\left( {0.4, - 0.2, - 0.6} \right)}^{{\text{T}}}}$. Допустимые максимальные по модулю значения угловых скоростей и ускорений взяты соответственно Ni = 7 рад ⋅ c–1 и ${{Q}_{i}} = 150$ рад ⋅ c–2, $i = \overline {1,3} $. При планировании программной траектории были выбраны значения $T = 0.3$ с, ${{\varepsilon }_{1}} = {{\varepsilon }_{2}} = 2$; T1 = $T{\text{/}}(3{{\varepsilon }_{1}})$, ${{T}_{5}} = T{\text{/}}(3{{\varepsilon }_{2}})$.

Рис. 1.

Угловые координаты θ как функции времени

Рис. 2.

Угловые скорости $\dot {\theta }$ как функции времени

Рис. 3.

Угловые ускорения $\ddot {\theta }$ как функции времени

Рис. 4.

Управляющие моменты τ как функции времени

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

Список литературы

  1. Крутько П.Д. Обратные задачи динамики управляемых систем. Линейные модели. М.: Наука, 1987. 304 с.

  2. Крутько П.Д. Обратные задачи динамики управляемых систем. Нелинейные модели. М.: Наука, 1988. 326 с.

  3. Жевнин А.А., Крищенко А.П. Управляемость нелинейных систем и синтез алгоритмов управления // Докл. АН СССР. 1981. Т. 258. № 4. С. 805–809.

  4. Краснощеченко В.И., Крищенко А.П. Нелинейные системы: геометрические методы анализа и синтеза. М.: Изд-во МГТУ им. Н.Э. Баумана, 2005. 520 с.

  5. Ермошина О.В., Крищенко А.П. Синтез программных управлений ориентацией космического аппарата методом обратных задач динамики // Изв. РАН. ТиСУ. 2000. № 2. С. 155–162.

  6. Велищанский М.А., Крищенко А.П., Ткачев С.Б. Синтез алгоритмов переориентации космического аппарата на основе концепции обратной задачи динамики // Изв. РАН. ТиСУ. 2003. № 5. С. 156–163.

  7. Канатников А.Н., Крищенко А.П. Терминальное управление пространственным движением летательных аппаратов // Изв. РАН. ТиСУ. 2008. № 5. С. 51–64.

  8. Biagiotti L., Melchiorri C. Trajectory Planning for Automatic Machines and Robots. Springer, 2008. 514 p.

  9. Ryu J.C., Agrawal S.K. Planning and Control of Under-actuated Mobile Manipulators Using Differential Flatness // Auton. Robots. 2010. V. 29. № 1. P. 35–52.

  10. Tang C.P., Miller P.T., Krovi V.N., Ryu J., Agrawal S.K. Differential-flatness-based Planning and Control of a Wheeled Mobile Manipulator – Theory and Experiment // IEEE/ASME Trans. on Mechatronics. 2011. V. 16. № 4. P. 768–773.

  11. Mohseni N.A., Fakharian A. Optimal Trajectory Planning for an Omni-directional Mobile Robot with Static Obstacles: a Polynomial Based Approach // AI and Robotics (IRANOPEN). 2015. P. 1–6.

  12. Mohseni N.A., Fakharian A. Optimal Trajectory Planning for Omni-directional Mobile Robots using Direct Solution of Optimal Control Problem // Proc. 4th Intern. Conf. on Control, Instrumentation, and Automation (ICCIA). Qazvin, 2016. P. 172–177.

  13. Голубев А.Е., Крищенко А.П. Решение терминальной задачи управления для аффинной системы при помощи многочленов // Наука и образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2015. № 2. С. 101–114. https://doi.org/10.7463/0215.0758826

  14. Jond H., Nabiyev V., Benveniste R. Trajectory Planning using High Order Polynomials under Acceleration Constraint // J. Optimization in Industrial Engineering. 2016. V. 10. P. 1–6.

  15. Richter C.A., Bry A.P., Roy N. Polynomial Trajectory Planning for Aggressive Quadrotor Flight in Dense Indoor Environments // Robotics Research. 2016. V. 114. P. 649–666.

  16. Golubev A.E., Krishchenko A.P., Utkina N.V., Velishchanskiy M.A. Solution of a Terminal Control Problem under State Constraints // IFAC-PapersOnLine. 2017. V. 50 (1). P. 10679–10684.

  17. Golubev A.E., Botkin N.D., Krishchenko A.P.  Backstepping Control of Aircraft Take-off in Windshear // IFAC-PapersOnLine. 2019. V. 52 (16). P. 712–717.

  18. Велищанский М.А. Движение летательных аппаратов в вертикальной плоскости при наличии ограничений на состояния // Вестн. МГТУ им. Н.Э. Баумана. Сер. Естественные науки. 2016. № 3. С. 70–81.

  19. Белинская Ю.С., Четвериков В.Н. Метод накрытий для терминального управления с учетом ограничений // Дифференц. уравнения. 2014. Т. 50. № 12. С. 1629–1639.

  20. Касаткина Т.С. Решение терминальных задач для систем второго порядка при наличии ограничений на состояния // Вестн. МГТУ им. Н.Э. Баумана. Сер. Естественные науки. 2016. № 1. С. 17–26.

  21. Белинская Ю.С. Решение задачи терминального управления для плоской системы с учетом ограничений заменой плоского выхода // Вестн. МГТУ им. Н.Э. Баумана. Сер. Естественные науки. 2016. № 6. С. 122–134.

  22. Olsson A. Modeling and Control of a Delta-3 Robot. Master thesis. Lund: Lund University, 2009.

Дополнительные материалы отсутствуют.