48277 (588532), страница 5
Текст из файла (страница 5)
(2.10)
Далее вычисляется направление движения в полярных координатах, free, и соответствующий ему сектор kfree в H. Алгоритм выбирает более «проходимое» направление и, вместе с тем, как можно более приближенное к текущему направлению на цель targ.
Скорость движения МР в начальной точке устанавливается максимальной (Smax), а затем определяется на каждом шаге в соответствии с формулой:
(2.11)
где h``c = min (h`c, hm);
h`c – сглаженная полярная плотность препятствий в выбранном направлении движения;
hm – эмпирически установленная константа.
При этом отношение (*) гарантирует S` 0 при h``c hm.
Статья [13] посвящена методу построения гладких трасс движения мобильного робота (МР), основанному на физической аналогии. Основными достоинствами метода являются устойчивое решение и работа не только с двоичными (препятствие или свободное пространство), но и с разнородными средами, поверхность которых может иметь неравные коэффициенты трения или углы наклона на различных участках.
В основе метода лежат физические принципы гидродинамики. Если предположить, что вся среда заполнена жидкостью, то потоки жидкости позволяют добраться из начальной точки в целевую. В этом случае оптимальным путем будет поток, направленный вдоль градиента давления, в котором достигается стационарное движение жидкости; локальный минимум не может быть достигнут, поскольку во всех точках потока удовлетворяется уравнение Лапласа. Для учета неоднородностей среды вводится внешняя сила, учитывающая силу трения и влияние проходимых препятствий, поэтому рассматриваются потоки вязкой жидкости. Основным уравнением движения вязкой несжимаемой жидкости является уравнение Навье-Стокса:
(2.12)
где – плотность жидкости;
v – вектор скорости движения жидкости;
t – время;
f – внешняя сила;
p – давление;
– коэффициент вязкости жидкости.
Упрощенное уравнение выглядит следующим образом:
(2.13)
Здесь неизвестными являются вектор скорости v и абсолютная координата x.
Граничные условия:
(2.14)
где – границы препятствий, n – внешняя нормаль к границе препятствия.
Начальные условия:
(2.15)
где xS – начальная точка, xG – целевая точка.
Для решения уравнения в двумерном пространстве методом конечных разностей уравнение представляется следующим образом:
(2.16)
где
(2.17)
Если число точек сетки N, то необходимо решить разреженную систему из 3N линейных уравнений.
Результатом работы рассматриваемого алгоритма является множество так называемых «коридоров». Каждый коридор начинается в окрестности стартовой точки и заканчивается в окрестности целевой. Следование МР по осевой линии коридора гарантирует его безопасность.
Далее рассматривается случай, когда внешняя сила не равна нулю, что позволяет учитывать разнородность среды.
Полная потенциальная энергия частицы в потоке:
(2.18)
где S – начальная точка, G – целевая точка, T – вектор, касательный к траектории, pG – pS – разность давлений в xS и xG.
В случае присутствия силы трения F:
(2.19)
Механическая работа силы трения LF зависит от длины траектории L. В случае достаточно большой величины F:
(2.20)
Все траектории имеют ограниченную длину
(2.21)
Практически, установка очень большой величины F на границах препятствий эквивалентна условию v = 0. При использовании F = const длина потоков может быть ограничена, поэтому, увеличивая величину F, можно добиться отсеивания путей большей длины, оставляя лишь пути, длины которых близки к оптимальным.
Для тестов данного метода использовался 4-х колесный МР на полигоне 60 м 100 м с препятствиями [13]. Внешняя сила f задавалась в виде:
(2.22)
где m – масса МР, – угол наклона участка поверхности в направлении движения, Kf – коэффициент трения между колесами и поверхностью.
Следует отметить также направление, связанное с достаточно сложным по своей структуре заданием потенциальной функции, которая не имеет локальных минимумов [4, 5]. Однако при этом задание подобной потенциальной функции может оказаться очень сложным.
3. Управление мобильным роботом на основе конечно-автоматного подхода
73.1 Предпосылки создания алгоритма
Распределенные системы, в том числе робототехнические, в последнее время привлекают все большее внимание исследователей. Одна из причин этого состоит в том, что системы такого класса все чаще используются как для промышленных, так и непромышленных приложений: действительно, объединение параллельно функционирующих подсистем позволяет выполнять такие задания, которые не под силу каждой из компонент сложной системы. На рис. 3.1 приведен пример такой многокомпонентной системы, включающей мобильные роботы разного назначения: погрузчики, исследователи и т.д. С другой стороны, управление системами такого класса представляет собой нетривиальную задачу: если управление каждой из подсистем, составляющих сложную систему, задача, вообще говоря, решенная (например, перевод манипулятора из точки в точку по заданной траектории), то управление согласованным поведением группы роботов, объединенных общей целью, является сложной проблемой. Заметим, что задача управления существенно усложняется, если часть подсистем преследует конфликтующие цели.
Рис. 3.1 – Многокомпонентная робототехническая система
В статье предлагается подход к решению задачи координации взаимодействия подсистем, составляющих сложную систему, базирующийся на описании всех подсистем как конечных автоматов и использующий сеть специальным образом построенных автоматов для координации работы подсистем в процессе выполнения предварительно сформированного задания. Кроме того, предложены способы планирования поведения сложной системы, использующие методы искусственного интеллекта.
83.2 Многокомпонентность интеллектуального робота
Многокомпонентная система это система, включающая в свой состав множество подсистем, объединенных общим заданием.
Можно дать ее более точное определение.
Пусть задание T может быть представлено как множество подзаданий ti:
T = {t1, t2,…, tm} (3.1)
Введем отношение следования F на T, так что tiFtj означает, что задание ti может быть выполнено только, если выполнено tj. Если такая структуризация задания T проведена, тогда можно построить описывающий T ориентированный граф:
G = (T, A), (3.2)
где T = {ti} – множество вершин графа G, A = {ai} T T – множество направленных дуг, при этом дуга a A соединяет ti с tj тогда и только тогда, когда tiFtj.
Пусть система S состоит из подсистем si (далее называемых локальными системами или терминалами):
S = {s1, s2,…, sN}, (3.3)
при этом Ti T – задание, выполняемое системой si.
Тогда систему:
CS = (S, T), (3.4)
будем называть T‑сложной системой (далее – сложной системой), если выполнены следующие условия:
(3.5)
Условия C1, C2 можно интерпретировать следующим образом:
C1: Сложная система представляет собой набор подсистем, которые в состоянии выполнить задание T.
С2: Действия всех подсистем, входящих в состав сложной системы, должны координироваться в процессе выполнения задания. Под координацией здесь мы понимаем обмен данными (или командами) между подсистемами.
Если одна из подсистем si S является роботом, то такую сложную систему будем называть многокомпонентной робототехнической системой (МРС).
93.3 Выбор способа организации управления робототехнической системой
Обсудим сначала следующий вопрос: «Что мы понимаем под управлением МРС?» В действительности, каждая из подсистем Si, входящая в состав МРС, обладает собственной системой управления, способной обеспечить выполнение всех функций, свойственных этой подсистеме. Однако, возникающая для рассматриваемого класса систем необходимость взаимодействовать в процессе исполнения задания, ставит задачу формирования для подсистемы именно того задания, выполнение которого диктуется сложившейся обстановкой. Таким образом, задача управления распределенными системами состоит в планировании действий подсистем до начала исполнения и последующей координации в процессе исполнения.
Организация процедуры планирования и координации является чрезвычайно важной: она оказывает существенное влияние на используемые методы управления.
3.3.1 Централизованное управление
Этот метод организации предполагает наличие центральной системы управления, которая планирует действия всех подсистем и затем координирует их взаимодействие в процессе исполнения (рис. 3.2) в соответствии с предварительно разработанным планом. Центральная система управления (ЦСУ) передает подсистеме задание, исполнение которого не требует какой-либо координации между подсистемами. Результат исполнения возвращается в ЦСУ. В зависимости от присланного результата ЦСУ посылает подсистеме следующее задание, и далее процесс повторяется. Заметим, что физически ЦСУ может быть реализована либо как отдельное устройство, либо на базе системы управления одной из компонент МРС.
3.3.2 Распределенное управление
При таком способе организации управления отсутствует центральная система, и процессы планирования заданий и координация в процессе исполнения реализуются путем обмена сообщениями между подсистемами (рис. 3.3). На этапе планирования осуществляется переговорный процесс, результатом которого является согласованный план исполнения задания. Реализация этого плана происходит на этапе исполнения и состоит в выполнении подзаданий и обмене результатами их исполнения. Строго говоря, при такой организации нельзя говорить об управлении распределенной системой, поскольку, в отличие от централизованной организации, отсутствует явно выраженный носитель управления, обеспечивающий требуемое поведение системы: все подсистемы являются равноправными как на этапе планирования, так на этапе исполнения.
Таким образом, централизованное управление реализует иерархический способ организации системы, состоящий в частности в том, что управление является многоуровневым с явным подчинением нижних уровней (локальных систем управления) верхним (центральной системе управления). Все обмены сообщениями между подсистемами происходит не напрямую, а через верхний уровень. Распределенное управление реализует гетерархический способ организации, когда все компоненты системы равноправны и процесс планирования осуществляется параллельно всеми подсистемами.
3.3.3 Выбор архитектуры подсистем интеллектуального робота
Архитектура каждой компоненты МРС обусловлена тем набором функций, которые она должна выполнять, а именно:
F1 – иметь возможность обмениваться данными либо с центральной системой управления (для централизованного способа управления), либо с локальными подсистемами (для распределенного способа).