Диссертация (1149527), страница 5
Текст из файла (страница 5)
Кроме того, при использовании S-процедуры увеличивается размер матричных неравенств, в то время как подход, основанный на неопределенностяхиз политопа, увеличивает количество матричных неравенств, что приводит увеличению вычислительной сложности при численном решении линейных матричных неравенств.3.3Синхронизация трех мобильных роботовВ текущем разделе рассматривается пример синхронизации трех мобильных роботов в случае,когда шаг дискретизации является постоянным. Сравниваются оценки верхней границы шагадискретизации, полученные с помощью двух методов: подхода, описанного в главе 2, и методана основе пассификации из [23].Рассмотрим систему состоящую из трех мобильных трехколесных роботов, в которой однатележка является ведущей, а остальные ведомыми. Считая, что роботы движутся с небольшой33скоростью, выпишем модель данной системы [23, 31, 52]:˙ 1 () = cos(1 ()), ˙ 2 () = cos(2 ()), ˙ 3 () = cos(3 ())˙ 1 () = sin(1 ()),˙ 2 () = sin(2 ()),˙ 3 () = sin(3 ()),˙ 1 () = ,˙ 2 () = 1 (),˙ 3 () = 2 (),(3.7)где (), () – координаты -го робота ( = 1, 2, 3), – углы между осью шасси и направлениемдвижения -го робота, – постоянная линейная скорость, одинаковая для каждого робота, –постоянная угловая скорость ведущего робота, 1 (), 2 () – управляющие воздействия.Под синхронизацией роботов понимается следующее: повторение ведомыми роботами движения ведущего, находясь на некотором расстоянии друг от вруга вдоль оси , т.е.⎧⎪⎪2 → 1 ,⎪⎪⎪⎪⎨ → ,21(3.8)⎪⎪3 → 1 ,⎪⎪⎪⎪⎩ → .31Введем следующие обозначения:1 () = 1 () − 2 (),2 () = 1 () − 3 (),1 () = 1 () − 2 (),2 () = 1 () − 3 (),˜1 () = sin(1 ()) − sin(2 ()) + 2 () − 1 (),˜2 () = sin(1 ()) − sin(3 ()) + 3 () − 1 ().Задача синхронизации системы (3.7) в смысле (3.8) может быть заменена задачей стабилизацииследующей системы:˙ 1 () = 1 () + 1 (1 , ), ˙ 2 () = 2 () + 2 (2 , )˙1 () = − 1 (),(3.9)˙2 () = − 2 (),где1 () + +1 () ()sin− () = ˜ (), = 1, 2.(3.10)221 () + +1 ()Введем обозначение () = cosи перепишем (3.10) следующим образом:2 ( (), ) = 2 cos ((), ) = 2 () sin ()− (), = 1, 2.2(3.11)Нелинейности (3.11) для всех > 0 удовлетворяют условию (см.
Рис.3.2):− 2 2 6 6 0, = 1, 2.34(3.12)20ξ100−10−20−10−505ε10Рисунок 3.2: Секторная нелинейностьПредположим, что управление задано в следующем виде: () = + 1 ( ) + 2 ( ), = 1, 2, 6 < +1 ,(3.13)где +1 − = ℎ.Тогда систему (3.9), (3.13) с параметрами = 0.1, 11 = 21 = 3, 12 = 22 = 1.1 можнопереписать следующим образом:˙()= () + ( ) + 1 1 (, ()) + 2 2 (, ()),(3.14)⎡⎡ ⎤⎤⎡⎤⎡ ⎤⎡ ⎤0 0.10 00 00.10⎢⎢ 1⎥⎥⎢⎥⎢ ⎥⎢ ⎥⎢⎢ ⎥⎥⎢⎥⎢ ⎥⎢ ⎥⎢ 0 0⎢1 ⎥⎢1 0⎥⎢0⎥⎢0⎥0 0 ⎥⎥, = ⎢⎥, = ⎢⎥, 1 = ⎢ ⎥ , 2 = ⎢ ⎥ ,where = ⎢⎢⎢ ⎥⎥⎢⎥⎢ ⎥⎢ ⎥⎢ 0 0⎢2 ⎥⎢0 0⎥⎢0⎥⎢0.1⎥0 0.1 ⎥⎣⎣ ⎦⎦⎣⎦⎣ ⎦⎣ ⎦20 1000 00 0⎡⎤−3 −1.1 00⎦,=⎣00−3 −1.1В Таблице 3.3 представлены максимальные значения ℎ, для которых система (3.14) устойчива, полученные с помощью Теоремы 2 из [30], Теоремы 2.2 и моделирования.Теорема 2 из [30]ℎ = 0.16Теорема 2.2ℎ = 1.32Моделированиеℎ = ℎ* , 1.80 < ℎ* <1.82Таблица 3.3: Максимальная граница на шаг дискретизации35Из Таблицы 3.3 видно, что в данном примере оценка, полученная с помощью предлагаемогоподхода значительно точнее оценки, полученной с помощью метода из [23].На рисунках (3.3) - (3.7) приведено поведение траекторий системы (3.14) для различногошага дискретизации.2.5e1(t)ε1(t)2e2(t)1.5ε2(t)10.50−0.5−1−1.5−2−2.50510152025t3035404550Рисунок 3.3: Отклонения и , = 1, 2 в системе (3.14) для ℎ = 0.155e (t)1ε1(t)4e2(t)3ε (t)2210−1−2−3−4−50510152025t30354045Рисунок 3.4: Отклонения и , = 1, 2 в системе (3.14) для ℎ = 1.3236506e1(t)ε1(t)e2(t)4ε2(t)20−2−4−60510152025t3035404550Рисунок 3.5: Отклонения и , = 1, 2 в системе (3.14) для ℎ = 1.58e (t)1ε1(t)6e2(t)ε (t)2420−2−4−6−801020304050t60708090Рисунок 3.6: Отклонения и , = 1, 2 в системе (3.14) для ℎ = 1.813710050e1(t)ε1(t)40e2(t)30ε2(t)20100−10−20−30−40−50050100150200250t300350400450500Рисунок 3.7: Отклонения и , = 1, 2 в системе (3.14) для ℎ = 1.823.4Маятник на тележкеПусть маятник вращается на оси, установленной на тележке (Рис.
3.8). Тележка движется в горизонтальном направлении перпендикулярно оси вращения маятника под действием силы тяги [3]. Требуется, изменяя эту силу, раскачать маятник до вертикального положения и стабилизировать в нем, при этом обеспечивая стабилизацию тележки в нулевом положении.Рисунок 3.8: Система «маятник на тележке»38Выпишем математическую модель системы, которая приведена в [3, 9]:⎧⎨ ¨ = − sin − cos ,⎩ ¨ = 1 ,(3.15)где и – масса и длина маятника соответственно, () – угол отклонения маятника ( = 0в нижнем положении), – момент инерции относительно центра тяжести, – масса тележки, + 2() – перемещение тележки, =- эффективная длина маятника.
Заметим, что данная2модель является приближенной: предполагается отсутствие трения, и ≫ .Поставленную цель можно разбить на две подзадачи: вначале раскачать маятник до желаемого уровня энергии ( * = 2) и стабилизировать тележку, т.
е.⎧⎨ lim ()˙ = 0,→∞⎩lim ( ( (), (),˙(), ()˙ ) − * ) = 0,(3.16)→∞где – полная энергия маятника:1 = 2 ˙ 2 + (1 − cos ),2(3.17)а затем стабилизировать систему в состоянии, соответствующем вертикальной позиции маятникаи начальной позиции тележки, т. е.lim () = [, 0, 0, 0],→∞(3.18)где () = [ ( ), (˙ ), ( ), (˙ ) ] .3.4.1Алгоритмы раскачки и стабилизацииЗадача раскачки решается с помощью метода скоростного градиента (см. раздел 1.2). Используя (3.16) можно ввести целевую функцию в виде:11 = ( − * )2 + ˙ 2 .22(3.19)Согласно методу скоростного градиента алгоритм управления (в конечной форме) принимаетвид:(︂)︂1* − = − ( − )˙ cos − ˙ ,(3.20)где > 0 – коэффициент усиления. Подробный вывод и свойства данного управления можнонайти в [62, 64].39Когда маятник раскачивается до положения, близкого к вертикальному (а именно входит взону − ¯ 6 6 + ),¯ происходит переключение на алгоритм стабилизации.
В качествестабилизирующего управления используется дискретный алгоритм (2.3), т.е.() = ( ), 6 < +1 , +1 − 6 ℎ, ∀ > 0,(3.21)где = [ − , ,˙ , ]˙ , ℎ > 0.В таблце 3.4 и на Рис. 3.9 приведены результаты оценивания верхней границы на шаг дискретизации, полученные с помощью теорем 2.1 и 2.2 для системы (3.15), (3.21) со следующимипараметрами: = 1, = 0.1, = 2, = 9.8, , ¯ = 8∘ , (следовательно, 0.99 6 | cos | 6 1), = 5, = [−21, −4.04, 0.001, 0.02].Теорема 2.1Теорема 2.2Моделированиеℎ = 0.182ℎ = 0.331ℎ = ℎ* , 0.401 < ℎ* < 0.403Таблица 3.4: Верхняя граница на шаг дискретизацииРисунок 3.9: Зависимость верхней границы шага дискретизации от скорости затуханияНиже приведены результаты моделирования системы (для ℎ = 0.16) (3.15), (3.20), (3.21) всреде Matlab Simulink.
Графики состояния, управления и энергии приведены на Рис. 3.10–3.15.40Рисунок 3.10: Угол Рисунок 3.11: Угловая скорость ˙41Рисунок 3.12: Перемещение тележки Рисунок 3.13: Скорость тележки ˙42Рисунок 3.14: Управление Рисунок 3.15: Энергия 3.4.2Лабораторные установки маятниковых системВ текущем разделе описано несколько вариантов экспериментальных установок системы «маятник на тележке», управляемых программным блоком LEGO Mindstorms NXT [17–19, 53, 63].Каждая установка обладает уникальной конструкцией и своими отличительными особенностямив реализации ходового механизма и измерительных систем. Движение тележки осуществляетсяс помощью сервомоторов NXT, соединенных с программным блоком NXT.43Для первой модели (Рис. 3.16), измерение угла осуществляется с помощью светового датчика (Lego Light Sensor) и картонного диска, закрашенного градациями серого цвета разнойгустоты. Такой способ привлекателен в плане отсутствия трения, создаваемого датчиком, однакопогрешность таких измерений довольно высока(порядка 7-8 градусов).Рисунок 3.16: Система со световым датчиком угла и датчик углаВо второй установке (Рис.
3.17) для измерения использован датчик из сервомотора LEGO.Показания считываются благодаря шестеренке, вдоль границы которой нанесены миниатюрныеотверстия, и сенсору, считывающему их. Точность таких измерений составляет около 3-х градусов. Однако, необходимость вращения шестеренок вместе с маятником незначительно препятствует его движению.В первых двух системах для получения значений угловой скорости маятника показания датчиков численно дифференцируются, что дополнительно увеличивает погрешность. В третьеймодели (Рис. 3.18) используется датчик-гироскоп (Gyro Sensor). Он позволяет получать напрямую значения угловой скорости.
Но главная проблема такого способа состоит в наличии сопротивления, создаваемого проводами датчика. Поэтому масса маятника, а также сила тяги ходовогомеханизма были увеличены.44Рисунок 3.17: Система с редукторным датчиком угла и датчик углаРисунок 3.18: Система с гироскопическим датчикомВ четвертой модели (Рис.