Scientific journal
Modern problems of science and education
ISSN 2070-7428
"Перечень" ВАК
ИФ РИНЦ = 0,931

IDENTIFICATION CONTROL SYNTHESIS FOR MOBILE ROBOT BY METHOD OF NETWORK OPERATOR

Dang F.T. 1 Diveev A.I. 2 Kazaryan D.E. 1 Sofronova E.A. 1
1 Peoples Friendship University of Russia
2 Institution of Russian Academy of Sciences Dorodnicyn Computing Centre of RAS
Рассматривается задача синтеза идентификационного управления мобильным роботом. На первом этапе решается задача идентификации математической модели мобильного робота методом сетевого оператора. При решении задачи идентификации использовались заданное управление в виде функции времени и состояния робота, полученные в результате эксперимента. Математическая модель ищется в виде системы обыкновенных дифференциальных уравнений. На втором этапе решается задача синтеза системы управления для полученной модели робота также методом сетевого оператора. В задаче синтеза системы управления необходимо обеспечить движение робота по заданной траектории, отличной от экспериментальной. Приведен пример синтеза идентификационного управления мобильным роботом Lego NXT. Поиск оптимального решения в обеих задачах осуществляется генетическим алгоритмом, построенным на основе принципа вариаций базисного решения.
A problem of identification control synthesis for mobile robot. Initially, we identify mathematical model of mobile robot in the form of ODE using method of network operator. We use given control as a time function and state of the object obtained from the experiment. When mathematical model is found we solve the problem control system synthesis also using method of network operator. Synthesized control system should guarantee movement of robot over the given trajectory which differs from the experimental one. An example of identification control synthesis for mobile robot Lego NXT is given. The search of the optimal solution in both problems was done by genetic algorithm based on the principle of basis solution variation.
genetic algorithm
network operator method
control systems synthesis
control systems identification

Введение

Задача идентификационного управления [1] возникает в условиях, когда математическая модель объекта управления неизвестна. Такие задачи встречаются при управлении сложными техническими объектами, в том числе при управлении мобильными роботами. Задача синтеза идентификационного управления состоит из двух задач: задачи идентификации математической модели объекта и задачи синтеза системы управления для полученной модели. Настоящая работа посвящена решению задачи синтеза идентификационного управления методом сетевого оператора [2-10].

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

В качестве практического примера метод синтеза идентификационного управления применяем для технического объекта, мобильного гусеничного робота Lego NXT.

1. Задача синтеза идентификационного управления

Задано множество экспериментальных данных:

, (1)

где – вектор входного управления в момент , – вектор выходных переменных в момент , – число точек наблюдения, , .

Задана размерность модели объекта управления.

Задана функция определения вектора наблюдения по вектору состояния объекта

, (2)

где .

Задано множество начальных условий для объекта

. (3)

Задана цель управления

, (4)

где – время окончания процесса управления определяется выполнением условия (4).

Задан критерий качества

(5)

Необходимо найти решение в виде

(6)

где – вектор параметров для задачи синтеза, .

Для решения задачи первоначально находим математическую модель объекта управления в виде системы обыкновенных дифференциальных уравнений

(7)

где – вектор искомых параметров, который вводится в правые части дифференциальных уравнений для расширения пространства поиска, , размерность определяется исследователем по сложности задачи и объекта,

.

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

, (8)

(9)

Для решения задачи идентификации (1), (2), (7)-(9) используем метод сетевого оператора [1-7]. В результате решения задачи идентификации получаем систему обыкновенных дифференциальных уравнений (7).

На втором этапе решаем задачу синтеза системы управления (3)-(6) для математической модели (7), полученной на первом этапе. При решении задачи также используем метод сетевого оператора. Подробно метод сетевого оператора описан в работах [2-10].

2. Практический пример

В качестве эксперимента было рассмотрено решение задачи синтеза идентификационного управления для робота LEGO NXT [11] (рис. 1).

Рис.1. Робот LEGO NXT.

Робот имеет 4 колеса с радиусом см. Расстояния, пройденные колесами робота, рассчитываются по формулам

,

где , – расстояния, пройденные, соответственно, левой и правой парами колес, – углы вращения колес в радианах.

В эксперименте для получения исходных данных управление роботом осуществлялось с помощью функции времени

,

где .

Было проведено несколько экспериментов по 21 точке. Вычислялись средние значения по всем экспериментам. Экспериментальные данные приведены в табл.1 .

Таб. 1. Экспериментальные данные

t, c

,см

,см

1

0

0

0

0

100

2

0.1

0

0.8430

10

100

3

0.2

0.1134

2.1590

20

98

4

0.3

0.5288

3.5692

30

96

5

0.4

1.2235

5.0004

39

92

6

0.5

2.0385

6.4542

48

88

7

0.6

2.9164

7.9011

56

83

8

0.7

3.8956

9.3532

64

76

9

0.8

4.9690

10.7809

72

70

10

0.9

6.1453

12.1597

78

62

11

1

7.4316

13.4931

84

54

12

1.1

8.8191

14.7952

89

45

13

1.2

10.2416

16.0919

93

36

14

1.3

11.6815

17.3486

96

27

15

1.4

13.1092

18.5424

99

17

16

1.5

14.5351

19.6297

100

7

17

1.6

15.9593

19.9509

100

-3

18

1.7

17.3695

19.6158

99

-13

19

1.8

18.7867

19.2178

97

-23

20

1.9

20.1917

18.6785

95

-32

21

2

21.5845

17.9769

91

-42

При решении задачи идентификации было выбрано следующее базисное решение

,

,

.

Базисные значения параметров: , , . В результате была получена следующая матрица сетевого оператора:

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

, (10)

(11)

, (12)

(13)

где

, , , , ,

Параметры генетического алгоритма: размерность популяции – 256, количество скрещиваемых пар в поколении – 64, количество поколений – 256, число поколений между эпохами – 30, длина структурной части хромосомы – 8, число постоянных параметров – 6, количество бит под целую часть параметра – 2, количество бит под дробную часть параметра – 6, вероятность мутации – 0,7, шаг интегрирования – 0.001, размерность матрицы сетевого оператора – 22 х 22. Расчет проводился на программном комплексе NOP4C-I для идентификации систем управления методом сетевого оператора, разработанном на кафедре кибернетики и мехатроники РУДН [7]. Время расчета составляло 2,2 часа на ЭВМ с частотой процессора 2,2 ГГц, тип процессора Intel Core i5.

Результаты моделирования полученной модели системы управления представлены на рис. 5 - 7. Кружками отмечены экспериментальные данные из таблицы 1.

Рис. 7. График фазовой траектории .

Как видно из графиков, решения, полученные в результате идентификации модели, соответствуют исходным данным.

На втором этапе осуществляем синтез системы управления мобильным роботом Lego NXT с учетом полученной на этапе идентификации модели. Для решения задачи синтеза также применяем метод сетевого оператора.

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

. (14)

Для модели (10)-(13) необходимо найти управление в форме

, (15)

которое минимизирует отклонение траектории робота от заданной траектории (14) по значениям критериев (8)-(9) при начальных условиях , . Управление ограничено значениями

Заданная траектория огибает препятствие и приведена на рис. 8.

Рис. 8. Заданная траектория

Выбираем базисное решение в виде:

,

где , .

При решении использовали следующие параметры генетического алгоритма: размерность популяции – 256, количество скрещиваемых пар в поколении – 64, количество поколений – 256, число поколений между эпохами – 30, длина структурной части хромосомы – 8, число постоянных параметров – 6, количество бит под целую часть параметра – 4, количество бит под дробную часть параметра – 4, вероятность мутации – 0,7, шаг интегрирования – 0.001, размерность матрицы сетевого оператора – 16х16. Расчет проводился на программном комплексе NOP4C-S для идентификации систем управления методом сетевого оператора, разработанном на кафедре кибернетики и мехатроники РУДН [8]. Время расчета составляло 2 часа на ЭВМ с частотой процессора 2,2 ГГц, тип процессора Intel Core i5.

В результате было получена следующая матрица сетевого оператора:

.

Данная матрица соответствует следующему математическому выражению:

где

На рис.9 – 12 приведены результаты моделирования полученной системы управления.

Для сравнения на рис. 12 приведена траектория движения робота, использованная при решении задачи идентификации. Как видно из графиков, полученная при идентификации математическая модель позволяет синтезировать систему управления роботом LEGO NXT, которая обеспечивает качественное движение по заданной траектории.

3. Заключение

В результате применения метода сетевого оператора была решена задача синтеза идентификационного управления мобильным роботом LEGO NXT. Результаты экспериментов показали удовлетворительное качество решения задач идентификации и синтеза управления.

Работа выполнена по теме грантов РФФИ №13-08-00523-а «Исследование и разработка численного метода идентификации моделей интеллектуальных систем управления»,
№ 14-08-00008-а «Исследование методов синтеза систем управления в условиях неопределенности».

Рецензенты:

Забудский Е.И., д.т.н., профессор, ФГБОУ ВПО «Московский агроинженерный университет им. В.П. Горячкина», г. Москва.

Юрков Н.К., д.т.н., профессор, ФГБОУ ВПО «Пензенский государственный университет», г. Пенза.