roboforum.ru

Технический форум по робототехнике.

Сканирующий лазерный дальномер

Re: Сканирующий лазерный дальномер

Чугунный Дятел » 11 янв 2015, 21:35

Хорошие результаты, поздравляю! :wink: Как только руки дотянутся до робота, который гоняет до 2мс, тоже будем прикручивать коррекцию для скана, которая будет исправлять искажения от перемещения робота.

Зеркала, по нашим наблюдениям, никак не портят работу SLAM. Разве что проблема в поиске пути, который не против сгонять в зазеркалье.

A от hector_slam, как я и говорил, много не следует ждать, как из любых алгоритмов класса scanmatching/mapmatching. Они, увы, фундаментально не способны долго бороться с накоплением ошибки.

Вы, кстати, Karto SLAM не пробовали? У них есть опенсорсная версия. (Да простит меня начальство за упоминание конкурентов ))) )

Re: Сканирующий лазерный дальномер

citizen » 12 янв 2015, 09:33

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

Про Karto SLAM впервые услышал. Насколько я понял, у них нет готовых узлов для ROS - узел для работы SLAM придется под себя писать.

Re: Сканирующий лазерный дальномер

sned » 14 янв 2015, 11:24

Создал новую тему:"Система навигации для домашнего робота".
Кому интересно, что за надстройки появились на башне моего лидара смотрите
в темах Наши проекты.
20150112_124331.jpg

Re: Сканирующий лазерный дальномер

citizen » 25 янв 2015, 23:18

Доработал свою программу-фильтр для ROS - добавил в нее возможность публиковать экстраполированные сканы при вращении робота. Данные одометрии с робота идут чаще, чем с сканы с дальномера, так что удается между реальными сканами публиковать несколько экстраполированных. Таким образом, при вращении робота частота сканов увеличивается. Благодаря этому теперь hector SLAM нормально работает при скорости вращения робота 0.6 рад/сек (оборот за 10 сек). Раньше можно было использовать только 0.3 рад/сек, что совсем мало.
Результат работы:
hector_filt.png


Теперь ковыряюсь с move_base. Уже удалось заставить работать его вместе с hector SLAM, робот едет куда ему указываешь, но локальный путь робота строится как-то странно - вместо того, чтобы ехать по прямо по глобальному пути, move_base строит локальный путь дугами, причем часто довольно большими и сильно уходящими от глобального пути, из-за чего робот сталкивается со стенами.

Re: Сканирующий лазерный дальномер

Чугунный Дятел » 30 янв 2015, 14:34

Можешь записать заезд в rosbag? Исходный скан+одометрия+TF с относительным положением дальномера. Интересно потестировать на нашей навигации.

Re: Сканирующий лазерный дальномер

kantengri » 30 янв 2015, 16:10

Какие еще сламы пробовали использовать ?

Re: Сканирующий лазерный дальномер

citizen » 30 янв 2015, 23:25

Чугунный Дятел писал(а):Можешь записать заезд в rosbag?

В ближайшее время постараюсь.
kantengri писал(а):Какие еще сламы пробовали использовать ?

Пробовал только gmapping и hector slam. gmapping давно уже не запускал, про него в интернете упоминают, что он хуже hector по производительности и точности построения карты.

Re: Сканирующий лазерный дальномер

citizen » 03 фев 2015, 00:46

Опять проблемы с большим пингом до Raspberry вылезли, похоже, нужно менять wifi донгл.
Так что получившаяся запись вышла не совсем хорошая и достаточно короткая - воспроизводить ее нужно до 75 секунды, дальше данные через ROS перестали идти.
Правда, там кроме scan, odom, tf записались еще темы от rviz.
Вложения
data6.zip
(467.4 КиБ) Скачиваний: 0

Re: Сканирующий лазерный дальномер

Madf » 03 фев 2015, 12:57

пишку очень грузит все типы защищенного подключения (SSL), можно подключаться не через пути, а через обычный терминал, меньше нагрузки и лаги

Re: Сканирующий лазерный дальномер

Чугунный Дятел » 03 фев 2015, 14:54

Да, вижу, на 80й секунде затык, а потом секунд через 20 все данные "внезапно" прибыли. Видимо был затык в wifi и TCP долго молчал. По этому поводу лучше rosbag прямо на Pi пытаться запускать, выйдет чуть стабильнее, или брать ещё одну пи, подключать эзернетом и заводить запись на ней (вот блин за такую возможность я и люблю ROS).

Мы немеряно сил потратили чтобы у нас SLAM и всё навигационное работало прямо на бортовом компе (Odroid-U3)

Правка: отредактировал сумку, теперь все сообщения отсортированы по времени создания, а не по времени прибытия. 20секундный затык вычищен (вроде бы). Спасибо надёжной доставке TCP и магии с rosbag. Исправленое во вложении.
Вложения
fixed.bag.bz2
Воспроизводится напрямую через rosbag play fixed.bag.bz2
(367.39 КиБ) Скачиваний: 0

Re: Сканирующий лазерный дальномер

citizen » 03 фев 2015, 19:06

Обычно у меня таких проблем не возникает, можно долго кататься по всей квартире, и данные будут приходить сразу же. Но тут явно проблемы со связью - пинг в определенные моменты становится больше 200 мс. Похоже, что проблемы с древним wifi-модулем.

В своем SLAM мои данные не пробовали запустить?

Re: Сканирующий лазерный дальномер

Чугунный Дятел » 04 фев 2015, 13:45

Прикручиваю исправление искажений дальномера при езде робота. Без него всё уезжает, и(ли) требует черезчур много вычислений. На 40Гц дальномере нас такая проблема не сильно мучала )

Re: Сканирующий лазерный дальномер

Чугунный Дятел » 05 фев 2015, 15:10

Без фильтрации получается пока вот такая вот картина:
Изображение
Это в первые 80сек, дальше данные всё-таки битые, даже в моей попытке исправить. На них заодно ещё и rviz падает.
Дальномер нехило шумит в "дальней" зоне, те дальности тоже надо хорошенько фильтровать. Правда новый алгоритм, который сейчас мы делаем, будет без проблем проглатывать и такое, без дополнительных фильтров.

Можешь подлинее трек записать? В идеале прямо на малине, в стиле rosbag record ... & disown, чтобы оторваться от ssh терминала и проблем со связью.

Re: Сканирующий лазерный дальномер

citizen » 05 фев 2015, 23:51

В принципе, достаточно хорошо получилось - в hector slam без фильтрации при вращении карта начинает разваливаться уже на первом полуобороте.
Дальномер нехило шумит в "дальней" зоне, те дальности тоже надо хорошенько фильтровать.

У меня при векторизации в фильтре это учитывается.
На всякий случай - можно заметить, что в комнате (на вашей карте сверху) на стене иногда появляться "углубление". Оно там действительно есть - на фотографиях в самом начале темы видно, что там ступенька перед дверью на балкон. Новый дальномер расположен немного ниже ступеньки, так что даже при небольших наклонах робота она появляется.

Можешь подлинее трек записать? В идеале прямо на малине, в стиле rosbag record ... & disown, чтобы оторваться от ssh терминала и проблем со связью.

Нужен более длинный трек по времени, или по пространству? Просто в той области, что сейчас на карте, роботом еще можно управлять визуально, а дальше - только до данным с дальномера, которые приходится наблюдать по rviz. Тут-то и вылезают проблемы с wi-fi.
Если уж и удастся записать трек, то только на выходных.

Re: Сканирующий лазерный дальномер

Чугунный Дятел » 07 фев 2015, 01:55

И то и другое: неплохо было бы объехать всю квартиру, общим временем минуты на 4


Rambler\'s Top100 Mail.ru counter