Карта движения по трассе

Тема в разделе "Моторы, сервоприводы, робототехника", создана пользователем DIYMan, 24 сен 2017.

  1. DIYMan

    DIYMan Гуру

    Всем привет!

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

    Вот подумалось: а что нам мешает избавиться от линии чуть более, чем полностью, когда речь идёт о заранее известных, пусть и сложных, маршрутах (возможно, со всякими остановками на пути)? Допустим, мы имеем сложную трассу и 10 остановок, по условиям задачи - робот должен уметь останавливаться на каждой из них (т.е. сказали ему - остановиться в пункте номер 8 - он это и сделал). Понятно, что эту проблему можно решить с помощью линии и перекрёстков, но вот какая мысль пришла, но сначала - вводные:

    1. Два мотора-привода;
    2. На каждом из них - датчик Холла (или оптический энкодер, короче - понятно, для чего).

    Теперь, собственно, мысль: переводим робота в режим запоминания трассы, и начинаем вести его по трассе (либо толкая вручную, либо - с помощью пульта ДУ). Робот считает импульсы с датчиков, запоминает. При достижении промежуточной точки останова - нажимается кнопка, робот помечает эту точку, как точку останова. Всё.

    Проблема погрешностей измерений решается тоже, навскидку - введением как начальной калибровочной точки (например, большой чёрный прямоугольник), так и, при необходимости - промежуточных калибровочных точек.

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

    Из минусов - а давайте обсудим минусы, а? Вот доделаю и закрою тему с контроллером теплицы - возможно, возьмусь за подобный проект, тема интересна, хотя бы как хобби ;)

    Приглашаю всех интересующихся, возможно, уже набивших шишки - к обсуждению ;)
     
  2. ИгорьК

    ИгорьК Давно здесь

    Может перенять опыт роботов-пылесосов, когда они ищут базу для зарядки?
    Робот вызывает по радио необходимый маяк и едет к нему.
     
    DIYMan нравится это.
  3. rkit

    rkit Гуру

    Под колесо попадает камешек размером с горошину, робот отклоняется на один градус, и через некоторое время неизбежно упирается в стену.
     
    BAR__MEN и DIYMan нравится это.
  4. DIYMan

    DIYMan Гуру

    Вот кстати, как там реализован поиск маяка? Подозреваю, что по времени отклика, да?
    Да, это может стать проблемой, согласен. Впрочем, с нарисованной линией тоже не всё гладко - идеал он вообще - недостижим ;) По поводу камешка первое, что приходит в голову (помимо требования убирать камешки, конечно :D) - это проверка показаний с датчиков во время движения на соответствие заложенной трассе - т.е. если у нас, например, 1000 импульсов с двух моторов одинаковы по трассе (едем строго прямо), и в показаниях датчиков рассинхрон - этот рассинхрон надо, естественно, учитывать. Плюс, конечно, я не снимаю с повестки дня контрольные точки. Задача-то, собственно, проста - по-максимуму избавиться от сплошных линий, оставив нечто вроде контрольных точек - при таких раскладах можно очень быстро менять трассы, не перекрашивая поверхность пола, а просто обучив одного робота, потом слить эту трассу другим. Ну и раскидать контрольные точки. Как-то так.

    Короче, надо слабые места в этой теории - выявлять и давить нещадно, продолжаем. Про камешки и маяк - спс, есть чего обдумать ;)
     
  5. DIYMan

    DIYMan Гуру

    Потом, по контрольным точкам - можно поступить следующим образом: на потолке раскиданы девайсы, дающие строго вниз волновой конус определённого (в рамках допустимой погрешности) диаметра в точке приёма роботом. Фиксация заезда в этот конус является фактом прохождения контрольной точки. Тут дело в том, что камешек-камешком, однако во многих случаях СТРОГОЕ следование траектории - не нужно, достаточно следовать в пределах погрешности между контрольных точек (особенно это актуально, когда на пути могут возникать временные препятствия, которые надо объехать, скажем - тут строгая траектория противопоказана).

    Фактом выезда с трассы будет являться, например, факт непрохождения контрольной точки по каким-то критериям, например, 5% импульсов между точками. При этом можно включать алгоритм поиска точки. Согласен, задача не самая тривиальная, однако - интересно ведь :) Для начала все тонкие места хочется продумать, а то вдруг окажется, что задача неподъёмная и пупок развяжется :)
     
  6. Arkad_snz

    Arkad_snz Гик

    Контрольный конус сделать легко - подвесьте фонарики, и ловить/искать их легко.
    Настройкой отражателя и линзы фонарика можно получить конус любой формы с максимумом в центре.
    Вот только сам луч в темноте не видно, и придется искать светлое пятно на полу, а потом достигать максимума-центра "наощупь".
    Два "глаза" в потолок - на передке и на макушке - дадут возможность довольно точно найти максимум-центр конуса.
     
    Последнее редактирование: 24 сен 2017
  7. Arkad_snz

    Arkad_snz Гик

    Летит девайс на автопилоте по курсу, подул ветер, девайс отклоняется и упирается в какую-то башню на Махэттене.
    А, безпилотные (сиречь - роботы) не сбиваются с курса никаким ветром, и не упираются в стены, а достигают цели с точностью до 10м.
    Побочные отклонения от курса ловятся гироскопами/акселерометрами, и компенсируются соотв. рулями.
    Понятно, что такой метод хорош, когда задача - выдержать курс, а не достичь заданной точки (точка все же будет достигнута, если правильно рассчитан и взят курс).
     
  8. ostrov

    ostrov Гуру

    Так это для уличного робота или в помещении? Или вообще, в принципе? Если о тележке в цехе, например, то можно насверлить в полу дыр, натолкать туда маячков, закрыть чем нибудь. Ну или маячить светильником, а на робота поставить вращающийся сканер. Это я в порядке бреда.
     
  9. Arkad_snz

    Arkad_snz Гик

    Как сборной РФ выиграть ЧМ: минируем свою штрафную зону, а на перекладину ворот сажаем снайпера. Враг не пройдет!
    Поле для соревнований предоставляется организатором, насверлить и натолкать никто не даст.
    Вообще, стратегия - если робот не справляется с предоставленной обстановкой, то давайте исправим обстановку - может дать положительные результаты.
    Недавно почитал в одной статье задачи отечественной робототехники (с т.з. ученых) в далекой перспективе.
    Одна из задач (две):
    1. автономный робот для лунной базы,
    2. автономный робот для базы на Марсе.
    Если, что-то пойдет не так - будем сверлить Луну/Марс, и наталкивать маячки? Чем?
     
    Последнее редактирование: 25 сен 2017
  10. Arkad_snz

    Arkad_snz Гик

    Имея карту обстановки в обычных декартовых координатах можно двигаться в целевую точку кратчайшим путем - по прямой, не повторяя трассы запоминания.
    Карта показаний с датчиков - это т.н. "легенда", по которой, обычно, и строят топографические карты, и довольно успешно.
     
    DIYMan нравится это.
  11. ANV

    ANV Оракул

    Поставить камеру с мозгами, которая будет разпознавать на стенах AprilTag
    https://m.seeedstudio.com/detail/2855
    На выходе по uart получаете координаты и размер каждой метки в кадре
     
    DIYMan нравится это.
  12. Arkad_snz

    Arkad_snz Гик

    Сам метки развесил, а потом - "А, ну-ка, умный робот, скажи мне где я повесил метки, у меня что-то с памятью - забыл совсем.".
    Прям - советские пионеры - сами себе придумывали сложности, а потом успешно с ними боролись.
    На Луне вы тоже намерены быстренько сгонять - развесить метки, а потом запускать робота их собирать?
    В Чернобыле перед Моботом сами возьметесь идти - метки развешивать?
    Может туда нужно было брать не робота-Мобота, и метки, а лопату? Дешевле вышло бы.
    Одна из задач робототехники - механизм, способный действовать в среде, недоступной для человека! А, у вас человек идет впереди, и везет робота на веревочке-метках!
     
    Последнее редактирование: 25 сен 2017
    BAR__MEN нравится это.
  13. DIYMan

    DIYMan Гуру

    В помещении, для уличного пока не рассматриваем;)
     
  14. DIYMan

    DIYMan Гуру

    Я не рассматриваю сферического коня в вакууме, задача предельно проста: помещение, трасса, возможность удобно менять трассы (считаем, что от сплошной линии отказываемся, а всякие маячки контрольные можно легко по потолку перевесить, скажем). Никто не ведёт речь об универсальном девайсе ;)
     
  15. DIYMan

    DIYMan Гуру

    Ещё раз: мне не надо объять необъятное, и задача вполне из области робототехники. Представьте: выставочный зал, робот-экскурсовод, например. От экспозиции к экспозиции маршрут меняется, перекрашивать дубовый паркетный пол никто не даст (чтобы там линии рисовать). При чём тут Марс и Луна - у вас заело и вы неспособны придумать другие применения описываемой задаче? По-моему, я, насколько это возможно, предельно конкретен и вводные вполне понятны.
     
  16. Arkad_snz

    Arkad_snz Гик

    Так, в чем же задача - построить робота к трассе соревнований, или перестроить регламентированную трассу организатора под возможности робота?
    Нас все пугают, что мир в будущем изменится - кругом будут роботы!
    А, оказывается - мир изменится - будет изменен под роботов, чтобы им полегче было
     
  17. DIYMan

    DIYMan Гуру

    При чём тут соревнования? Я привёл совершенно прозрачный пример из жизни, не про соревнования, понимаете? Соревнования мне неинтересны, также, как и ваш флуд не по теме.
     
  18. ANV

    ANV Оракул

    Что за словесный понос?
    У автора в постановке задачи - известная трасса.
    О SLAM, самообучении и нейронных сетях тут речи и не было.
    Все ваши примеры мимо по одной простой причине: что луноходы, что чернобыльские, что фукусимские роботы управляются в контуре с человеком.
     
    DIYMan нравится это.
  19. Arkad_snz

    Arkad_snz Гик

    Ну, и забудьте про соревнования! Вы их сами помянули здесь три раза, и ни слова "из жизни".
    Ну, привели пример, а дальше - что? Просто пример, и все!? Зачем, к чему?
    М.б. идея какая-нить? Нет, просто пример!
    Задача? Нет - пример!
    Может доказать что-то? Глупо! Никаким примером нельзя ничего доказать.
    Еще сны свои начните рассказывать! Просто так - для примера.
     
  20. DIYMan

    DIYMan Гуру

    У вас всё в порядке, не? Перечитайте стартовый пост, плз, и прекратите нести херню. Ваш словесный понос мне неинтересен, в игнор, пожалуй.