Смекни!
smekni.com

А. К. Платонов, А. А. Кирильченко, М. А. Колганов (стр. 4 из 5)

В случае присутствия силы трения F

Механическая работа силы трения L×F завиcит от длины траектории L. В случае достаточно большой величины F

все траектории имеют ограниченную длину

Практически, установка очень большой величины F на границах препятствий эквивалентна условию v = 0. При использовании F = const длина потоков может быть ограничена, поэтому, увеличивая величину F, можно добиться отсеивания путей большей длины, оставляя лишь пути, длины которых близки к оптимальным.

Для тестов данного метода использовался 4-х колесный МР на полигоне 60м ´ 100м с препятствиями [13]. Внешняя сила f задавалась в виде

где m – масса МР, q - угол наклона участка поверхности в направлении движения, Kf – коэффициент трения между колесами и поверхностью.

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

4. Описание метода и его реализаций

Две основные характеристики метода потенциалов составляют:

1) Законы движения подвижной точки.

2) Способы задания функции отталкивания от препятствий.

Согласно теоретической механике, в данном случае уравнения движения задаются в виде (будем считать, что препятствия представляют собой окружности радиуса ri):


где fi – сила отталкивания от i–ой окружности, f0 - сила притяжения к цели, r - вектор, направленный в точку цели. Однако, как показано в [1], такой способ задания уравнения движения является нецелесообразным, поскольку траектория после «соударения» с препятствием будет сильно отбрасываться назад, т.к. инерция в этом случае гасится не сразу. Поэтому путь робота строится на основе решения специального уравнения движения, которое в простейшем случае имеет вид:


где x – координаты робота, f0 – сила притяжения к целевой точке, fi - сила отталкивания от i-го препятствия. В общем случае уравнение движения для построения трассы запишется в виде:

где x0– координаты цели, l - коэффициент зон влияния, pi - параметры i–го препятствия, A - матрица поворота системы. В простейшем случае построение трассы представляет собой реализацию метода градиентного спуска с постоянным шагом.

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

k, c являлись варьируемыми параметрами. Изменяя их, можно получить качественно различные виды траекторий. Так, взяв большое значение параметра k, получим траекторию, сходную с обходом препятствия по контуру – точка будет отклоняться от препятствия лишь на небольшое расстояние. С другой стороны, при малых значениях параметра k, точка будет отклоняться от препятствия раньше, однако, сферы действия различных препятствий в этом случае могут перекрываться (если препятствия расположены близко друг от друга) и возможность прохода между ними может быть пропущена.

В текущей версии алгоритма сила отталкивания от препятствий формируется на основе данных, полученных от дальномера. Фильтрация полученных дальностей до препятствия организована так, что все дальности расположенные между «скачками» (пороговое значение «скачка» задается и «скачок» фиксируется, если разность между соседними дальностями в секторе обзора превышает этот порог) считаются принадлежащими контуру одного препятствия. Далее вычисляется расстояние до видимого участка контура по минимальной дальности. Полученное минимальное расстояние до участка контура является аргументом функции отталкивания.

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

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

b. Угол поворота j МР на каждом шаге не должен превышать заданной величины.

c. Учитываются только те препятствия, которые попадают в сектор обзора ±(90+j)° относительно направления на цель.

d. При попадании в достаточно близкую окрестность препятствия робот производит разворот, стоя на месте.

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

Такой подход может быть реализован при введении так называемых зон влияния препятствия – областей в секторе обзора, каждая из которых имеет свой коэффициент. Использовались две зоны влияния:

1) Сектор ±45° относительно направления на цель – коэффициент 1.

2) Оставшиеся области – коэффициент 0,25.

Можно выделять и четыре зоны влияния так, как это показано на рис. 5.

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

При исследовании оказалось удобным рассматривать следующие характеристики построенной трассы:

1) Угол g между векторами текущего направления на цель и текущего перемещения. Если g принимает значения, близкие к нулю, то это означает, что МР движется в направлении к цели. Большие значения угла означают, что робот слабо перемещается в направлении к цели.

2) Параметр l:

l = rs / r0 ,

где rs – длина построенной трассы, r0 – расстояние от точки цели до исходной точки. Чем меньше l, тем более короткую трассу удается построить.

На рис. 6, 7 приведены примеры реализации численного моделирования алгоритма выбора пути на основе метода потенциалов в случае задания функции отталкивания от препятствия как в виде показательной функции (рис. 6а), так и в виде степенной (рис. 7а). На рис. 6б и рис. 7б приведены соответствующие графики функции g.

На основе испытаний алгоритма получена таблица эффективностей l путей, которые были определены выше, в зависимости от параметра с функции отталкивания e-cx (с для удобства реализации бралось равным (pm)-1, где m – величина шага движения):

p

l

20

1,124

50

1,131

100

1,135

200

1,139

1000

1,143

Данные соответствуют среде, изображенной на рис. 6а. Из рисунка и таблицы видно, что для более гладких функций, задающих силу отталкивания, мы получаем и более гладкие траектории, однако величина l при этом возрастает (т.е. возрастает длина пути). Это связано с тем, что хотя робот и начинает при более гладких функциях обходить препятствия раньше, но обходит его, держась на более значительном расстоянии, чем в случае более «крутых» функций.

Кроме того, было исследовано влияние величины угла сканирования местности ( например, величины шага угла луча лазерного дальномера) на качество получаемой трассы. Выяснилось, что при данной реализации метода потенциалов это влияние незначительно:

j, °

l

5

1,116

10

1,125

30

1,137

40

1,120

5. Использование метода для управления движением распределенной мобильной системы