Научная статья на тему 'База правил для нечеткой системы управления движением мобильного робота'

База правил для нечеткой системы управления движением мобильного робота Текст научной статьи по специальности «Механика и машиностроение»

CC BY
687
157
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОБИЛЬНЫЙ РОБОТ / НЕЧЕТКАЯ СИСТЕМА УПРАВЛЕНИЯ / БАЗА ПРОДУКЦИОННЫХ ПРАВИЛ / MOBILE ROBOT / FUZZY CONTROL SYSTEM / THE BASE OF PRODUCTION RULES

Аннотация научной статьи по механике и машиностроению, автор научной работы — Леденева Т.М., Кашко В.В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

THE BASE OF RULES OF FUZZY CONTROL SYSTEM MOBILE ROBOT MOTION

The article presents the results of a fuzzy control system, which ensures the movement of the mobile robot to the goal that avoids obstacles

Текст научной работы на тему «База правил для нечеткой системы управления движением мобильного робота»

УДК 681.518

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

Т.М. Леденева, В.В. Кашко

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

Ключевые слова: мобильный робот, нечеткая система управления, база продукционных правил

Введение

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

Цель исследования заключается в разработке структуры навигационной системы управления (НСУ) мобильным роботом, которая обеспечивает его движение к цели без столкновения с препятствиями, на основе принципов нечеткого управления [2,3].

Общая задача навигации включает две подзадачи [4,5]: планирование глобального пути к цели и планирование локального движения.

Можно выделить следующие основные действия, выполняемые роботом при его движении к цели:

- движение вдоль определенной траектории согласно выбранному направлению;

- объезд выпуклых препятствий, возникающих на пути движения робота до целевой точки.

При выполнении перечисленных действий робот должен «знать» не только координаты

начальной (х0, у0) и целевой (х*, у*) точек, но и координаты текущей точки (х,, у,), в которой он находится в данный момент времени /. Тогда, если положение целевой точки известно и известно текущее положение робота, то для выявления факта достижения цели достаточно сравнить соответствующие координаты. Возникновение препятствий на траектории движения будем рассматривать как состояние окружающей среды.

Для моделирования поведения робота введем ряд предположений:

1. В начальной точке (х0, у0) робот

ориентирован на целевую точку (х*, у*),

координаты которой известны, при этом соответствующее направление будем называть основным. Корректировка всех направлений движения робота будет осуществляться относительно основного направления. Возможное

Леденева Татьяна Михайловна - ВГТУ, д-р техн. наук, профессор, e-mail: ledeneva-tm@yandex.ru Кашко Василий Васильевич - ВГТУ, студент, тел. (473) 243-77-18

направление движения характеризуется углом отклонения от основного направления.

2. Робот движется с постоянной скоростью V , причем его движение дискретно во времени, тогда за время робот переместится в выбранном направлении на расстояние VII/.

3. Для определения имеется ли препятствие на пути робота к цели, используется ультразвуковой дальномер, угол обзора которого изменяется в диапазоне от 0 до 180 градусов. С помощью этого датчика можно определить не только наличие препятствия, но и расстояние до него, при этом, поскольку робот имеет определенные размеры, то необходимо знать не только действительное расстояние Вгя^"' (?) , но и безопасное (/).

4. Будем считать, что препятствия имеют выпуклую форму, при этом для объезда препятствий можно использовать правый или левый поворот.

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

1. Структура навигационной системы управления

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

Цель управления заключается в том, что нечеткие рекомендации управления, генерируемые для каждого типа поведения, комбинируются для разработки управляющего воздействия на приводы робота [5]. Структура НСУ представлена на рис. 1. Заметим, что она включает две нечеткие системы управления, которые проектируют режим движения к цели и режим объезда препятствий. НСУ переключается между двумя режимами в зависимости от расстояния до препятствия.

Основной алгоритм выполняется в каждом цикле управления и состоит из следующих четырех этапов:

1. Запуск движения в направлении цели с заданной начальной скоростью V.

2. Определение расстояния с помощью датчика.

3. Если обнаружено препятствие, то перейти к шагу 4, иначе перейти к шагу 5.

4. Проверка необходимости управляющего воздействия (изменить скорость? изменить направление?). Если необходимости нет, то перейти к шагу 2, иначе к шагу 5.

5. Определить допустимое направление движения и перейти к шагу 6.

6. Движение со скоростью V в заданном направлении в течение промежутка времени Д1.

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

Рис. 1. Структура навигационной системы управления

2. Вычисление угла поворота при объезде препятствий

Пусть в проекции робот представляет собой прямоугольник. Будем считать, что его центр тяжести с координатами (х,, у) определяет

положение робота в текущий момент времени г. Также в координатной плоскости определим

координаты целевой точки (х*, у*) , которая служит для робота перспективной целью, и координаты начального положения (х0, у0) .

Уравнение прямой, соединяющей начальную и

целевую точки, имеет вид

* * *

.у -Уо , Уох -х0у

У = —

• х + -

= кох + Ьо . (1)

Прямая (1) определяет начальное целевое направление. Угол 9 , который образован целевой прямой (1) и прямой, проходящей через центр тяжести робота, назовем целевым углом.

Ориентация на цель (х*, у*) может быть определена из любой текущей точки (х1, у,), в

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

(х*,у*) , назовем текущим целевым направлением.

Прямая, определяющая текущее целевое направление в момент времени г, задается уравнением

* * *

у=—

• х + -

- = к,х + Ь,. (2)

Заметим, что 9, = 9 + т,, при этом tg9t = к, -тангенс угла наклона прямой, которая определяет текущее целевое направление в момент времени г. Определим величину изменения т,. Положим х = х0 + а,, у, = у0 + р,, где а, - приращения соответствующих координат к моменту времени г. .у -Уо _ У _

к = ; ко =

х хо X

где 9 - целевой угол.

(3)

Рис. 2. Перемещение робота из точки (x0, у0) в точку (xt, у)

К =

у- y, = y'~ Уо^ = У-Р, x* - x х* - х, -а, X - а;

Вычислим

tgx =

к, К

а,&е-р,

1+кко ,ge(y-p,)+(х-а,

(4)

(5)

где а, ,Р( - изменения координат при перемещении из начальной точки (х0, у0) в текущую точку

(х,, у,).

3. База правил для управления объездом препятствий

Нечеткие системы управления подробно рассмотрены в [2,3,6]. Успех их практического использования во многом определяется качеством базы знаний, которая состоит из базы продукционных правил и базы данных, содержащей информацию о параметрах правил. Методы построения оптимальной базы правил, в частности, представлены в [7,8]. Рассмотрим методы формирования базы правил для управления движением робота.

Основная стратегия управления в режиме объезда препятствия заключается в том, чтобы выбрать возможное направление, которое имеет наименьший угол отклонения по отношению к целевому направлению. Таким образом, если датчики показывают, что препятствия нет, то робот движется по прямой, которая определяет текущее целевое направление. Текущее целевое направление в точке (х1, у) будем называть разрешенным, если

датчики не показывают препятствия, иначе направление назовем запрещенным. Если имеется препятствие, то при его объезде слева или справа текущей координатой робота становится точка (х, у,), при этом целевой угол 9 увеличивается на

величину т,, тангенс которого определяется формулой (5).

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

Прежде чем приступить к проектированию нечёткой системы управления для объезда препятствия, необходимо определить входные и выходные переменные. Будем считать, что термы лингвистических переменных определяются в форме нечетких трапециевидных чисел ц/ет7Я = (a, b, l, r) , где [a, b] - промежуток, на котором

функция принадлежности равна 1, l (r) - левый

(правый) коэффициенты неопределенности.

Для регистрации возникновения препятствия введем лингвистическую переменную Dist = расстояние, которой соответствует шкала Term (Dist) = (aj = малое, а2 = среднее, а3 =

большое}, причем каждый терм определим в виде трапециевидного нечеткого числа следующим образом:

^ малое =(0,20,0,20) ,

^ среднее =(40,60,20,20) ,

цй =(80,100,20,0)

^большое \ ' ' J '

Заметим, что при возникновении препятствия необходима дополнительная информация об окружающей среде для безопасного объезда. Введем еще одну лингвистическую переменную DirectMotion = положение препятствия, которая указывает, в каком направлении от оси робота располагается препятствие. Данной переменной поставим в соответствие следующее множество значений Set(DirectMotion) = (а! = слева, а2 = впереди, а3 = справа}.

Таким образом, мобильный робот способен определять расстояние до препятствия и определять положение препятствия относительно его оси. Следовательно, для объезда необходимо осуществлять движение в направлении, противоположном направлению препятствия. Поэтому в качестве выходной переменной будем

рассматривать переменную DirectSteer = рулевое направление, которая принимает значения из множества Set(DirectSteer) ={ai = влево, a2 =

вперёд, a3 = вправо}.

Соответствие между введенными входными и выходной переменными представлено в табл. 1.

Таблица 1

Соответствие между входными переменными и переменной рулевое направление

DirectSteer Dist = малое Dist = среднее Dist = большое

DirectMotion = справа влево влево вперед

DirectMotion = впереди вправо вправо вперед

DirectMotion = слева вправо вправо вперед

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

AngleRotation = угол поворота, принимающая

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

значения в шкале Term (AngleRotation) = {ai =

малый, a2 = средний, a3 = большой}, причем каждому терму соответствует трапециевидное число, определенное на универсальном множестве

U = [о, 45]. Соответствующие термам

трапециевидные числа имеют следующий вид:

V мы =( о,15,о,2о ),

Vсредний =(2о,3о, 5,5), Vбольшой =(35,45,5,о) .

Соответствие между входными переменными и переменной угол поворота представлено в табл. 2.

Таблица 2

Соответствие между входными переменными и переменной угол поворота

DirectSteer Dist = малое Dist = среднее Dist = большое

DirectMotion = справа большой средний малый

DirectMotion = впереди большой средний малый

DirectMotion = слева большой средний малый

На основе таблиц 1 и 2 построена база правил для нечёткого контроллера рулевого управления, включающая следующие продукционные правила:

1) если расстояние = большое и положение препятствия = справа, то рулевое направление = вперёд и угол поворота = малый;

2) если расстояние = большое и положение препятствия = впереди, то рулевое направление = вперёд и угол поворота = малый;

3) если расстояние = большое и положение препятствия = слева, то рулевое направление = вперёд и угол поворота = малый;

4) если расстояние = среднее и положение препятствия = справа, то рулевое направление = влево и угол поворота = средний;

5) если расстояние = среднее и положение препятствия = впереди, то рулевое направление = вправо и угол поворота = средний;

6) если расстояние = среднее и положение препятствия = слева, то рулевое направление = вправо и угол поворота = средний;

7) если расстояние = малое и положение препятствия = справа, то рулевое направление = влево и угол поворота = большой;

8) если расстояние = малое и положение препятствия = впереди, то рулевое направление = вправо и угол поворота = большой;

9) если расстояние = малое и положение препятствия = слева, то рулевое направление = вправо и угол поворота = большой.

Особенностью приведенной базы правил является то, что в ней комбинируются значения лингвистических и символьных переменных, что отражается на механизме логического вывода [3]. База правил удовлетворяет требованиям, которые предъявляются к ней на этапе проектирования нечетких систем управления [9].

Заключение

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

Литература

1. Юревич, И.Е. Основы робототехники [Текст]: учеб. пособие для вузов / И.Е. Юревич. - 2-е изд., перераб. и доп. - СПб.: БХВ-Петербург, 2005. - 416 с.

2. Пегат, А. Нечёткое моделирование и управление [Текст] / А. Пегат. - М.: БИНОМ. Лаборатория знаний, 2009. - 798 с.

3. Леденева, Т.М. Особенности проектирования систем нечеткого логического вывода [Текст] / Т.М. Леденева, Д.С. Татаркин // Вестник Воронежского государственного университета. Сер. Системный анализ и информационные технологии. - 2006. - № 2. - С. 110-118.

4. Dorst, L. Optimal path planning by cost wave propagation in metric configuration space [Text] / L. Dorst, K. Travato // Mobile Robots. - 1988 . - Vol. 1007. - № 3. -P. 186-197.

5. Payton, D.W. Plan guided reaction [Text] / D.W. Payton, J.K. Rosenblatt, D.M. Keirsey // IEEE Trans. Syst. Man Cyber. - 1990. - Vol. 20. - № 6. - P. 1370-1382.

6. Леденева, Т.М. Исследование систем нечеткого логического вывода / Т.М. Леденева, Д.С. Татаркин // Информационные технологии. - 2007. - № 7. - С. 12-19.

7. Ledeneva, T.M. Optimal Design of Fuzzy Rule Base [Text] / / T.M. Ledeneva, M.A. Sergienko // Automation and Remote Control. - 2012. - Vol. 73. - № 11. - P. 19441949.

8. Леденева, Т.М. Формирование оптимальной базы нечетких правил [Текст] / Т.М. Леденева, М.А. Сергиенко // Нечеткие системы и мягкие вычисления. -2008. - Т. 3. - № 1. - С. 57-70.

9. Леденева, Т.М. О проблеме обеспечения некоторых требований к базе знаний в нечетких системах [Текст] / Т.М. Леденева, С.А. Моисеев // Вестник Воронежского государственного университета. Сер. Системный анализ и информационные технологии. -2012. - № 1. - С. 149-156.

10. Podvalny, S.L. Intelligent Modelling Systems: Design Principles [Text] / S.L. Podvalny, T.M. Ledeneva // Automation and Remote Control. - 2013. - Vol. 73. - № 7. -P. 2001-2010.

Воронежский государственный технический университет

THE BASE OF RULES OF FUZZY CONTROL SYSTEM MOBILE ROBOT MOTION

T.M. Ledeneva, V.V. Kashko

The article presents the results of a fuzzy control system, which ensures the movement of the mobile robot to the goal that avoids obstacles

Key words: mobile robot, fuzzy control system, the base of production rules

i Надоели баннеры? Вы всегда можете отключить рекламу.