Есть робот на четырехколесной базе. Написал простенький код по ориентированию в пространстве по показаниям дальномеров. Полевые испытания показали, что робот движется в пространстве очень хаотично, то есть не получается своего рода исследования местности. Робот просто ограничивает себе пространство и выходит на движение по многоугольнику. Хочется добавить немного ума и расширить кругозор робота. Ясно, что несу чушь, но просто не могу нормально объяснить.
В общем, надо, чтобы робот везде по возможности совал свой нос) Максимально использовал данное ему пространство.
А какова конечная цель? То есть просто хаотичное перемещение или, скажем, составление карты местности; перемещение из одной точки в другую оптимальным путём или что?
составление карты местности - это слишком круто, пока, тем более, что не хочу загоняться с энкодерами. Тут надо просто добавить ума в перемещение. Да, как вариант оптимальный путь. Есть вектор движения, на пути появляются случайные препятствия, но робот все равно после их обхода пытается вернуться на нужное направление. Где, может, про это можно почитать?
В идеале, будет помещение, по нему надо будет ездить, пусть катается вдоволь, главное, чтобы не застрял в одном прямоугольнике.
Можно на лету строить в памяти карту местности. Для начала предположить, что поле состоит из квадратов определённого размера. Оно чистое и свободное. А по мере натыкания на препятствия запоминать, что такой-то квадрат занят. Далее пользоваться алгоритмом A-Star для поиска кратчайшего пути в заданную точку (квадрат).