Составление роботом векторной карты

Материал из roboforum.ru Wiki
Версия от 12:16, 19 декабря 2007; =DeaD= (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

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


Типичная информация поступающая от сенсоров - "на расстоянии D в направлении A обнаружено препятствие".


При этом, если нет препятствий размером меньше клетки, то здесь есть 2 составляющие: А) В клетке с координатами D*cos(A),D*sin(A) относительно нашего робота есть препятствие. Б) Во всех клетках с локальными координатами относительно нашего робота от 0,0 до D*cos(A),D*sin(A) препятствий нет.


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

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

2. Определить минимальную форму препятствия и занести её на карту (объединить с уже имеющимися многоугольниками, определяющими препятствия) (как проводить эту операцию смотрите в разделе Прикладная геометрия).