Задание роботу вектора движения

Тема в разделе "Arduino & Shields", создана пользователем Makhonin, 1 дек 2012.

  1. Makhonin

    Makhonin Гик

    Есть робот на четырехколесной базе. Написал простенький код по ориентированию в пространстве по показаниям дальномеров. Полевые испытания показали, что робот движется в пространстве очень хаотично, то есть не получается своего рода исследования местности. Робот просто ограничивает себе пространство и выходит на движение по многоугольнику. Хочется добавить немного ума и расширить кругозор робота. Ясно, что несу чушь, но просто не могу нормально объяснить.
     
  2. Makhonin

    Makhonin Гик

    В общем, надо, чтобы робот везде по возможности совал свой нос) Максимально использовал данное ему пространство.
     
  3. nailxx

    nailxx Официальный Нерд Администратор

    А какова конечная цель? То есть просто хаотичное перемещение или, скажем, составление карты местности; перемещение из одной точки в другую оптимальным путём или что?
     
  4. Makhonin

    Makhonin Гик

    составление карты местности - это слишком круто, пока, тем более, что не хочу загоняться с энкодерами. Тут надо просто добавить ума в перемещение. Да, как вариант оптимальный путь. Есть вектор движения, на пути появляются случайные препятствия, но робот все равно после их обхода пытается вернуться на нужное направление. Где, может, про это можно почитать?
     
  5. Makhonin

    Makhonin Гик

    В идеале, будет помещение, по нему надо будет ездить, пусть катается вдоволь, главное, чтобы не застрял в одном прямоугольнике.
     
  6. nailxx

    nailxx Официальный Нерд Администратор

    Можно на лету строить в памяти карту местности. Для начала предположить, что поле состоит из квадратов определённого размера. Оно чистое и свободное.

    А по мере натыкания на препятствия запоминать, что такой-то квадрат занят. Далее пользоваться алгоритмом A-Star для поиска кратчайшего пути в заданную точку (квадрат).