roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 07:18

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 747 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9, 10 ... 50  След.
Автор Сообщение
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 23 ноя 2012, 17:25 
Не в сети
Аватара пользователя

Зарегистрирован: 12 окт 2008, 12:40
Сообщения: 369
Откуда: Красногорск, Подмосковье
Теория триангуляционного определения расстояния, которой пользовался я, дана в начале темы.
По поводу TSL1401 - на самом деле, это не ПЗС, а "128 × 1 array of photodiodes". Управление ей описано в даташите, довольно подробно также оно описано здесь: http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4244.pdf

Расскажу вкратце про управление. TSL1401 - интегрирующая, то есть она накапливает заряд, пока на пиксель падает свет(у каждого фотодиода есть 2 конденсатора). Управление микросхемой ведется при помощи всего двух выводов - синхронизации и стартового. Для того, чтобы считать данные, нужно послать одиночный стартовый импульс (микросхема начинает новый захват данных), после чего, подавая на TSL1401 тактовые импульсы, с ее аналогового выхода считываем значения яркости, которые были захвачены в предыдущий раз.

По поводу сверхразрешения - я использую алгоритм нахождения центроида.
В массиве яркостей сначала нахожу максимальное значение, выделяю небольшой участок яркостей рядом с максимумом, потом по нижеприведенной формуле рассчитываю более точные координаторы центра.
LaTeX: P=\frac{\sum_{i}^{n} Int[i]\cdot i}{\sum_{i}^{n} Int[i]}

_________________
OpenSimpleLidar - проект простого самодельного лидара.


Последний раз редактировалось citizen 26 янв 2016, 15:56, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 03 дек 2012, 21:18 
Не в сети
Аватара пользователя

Зарегистрирован: 12 окт 2008, 12:40
Сообщения: 369
Откуда: Красногорск, Подмосковье
Снял видео, в котором показано, как работает дальномер, установленный на роботе.

_________________
OpenSimpleLidar - проект простого самодельного лидара.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 03 дек 2012, 22:02 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
круть какая...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 03 дек 2012, 22:28 
Не в сети
Аватара пользователя

Зарегистрирован: 21 май 2007, 22:57
Сообщения: 600
Откуда: Калининград
прог. языки: C++
нет слов - замечательно!

_________________
RoboCraft.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 04 дек 2012, 21:39 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
citizen писал(а):
Снял видео, в котором показано, как работает дальномер, установленный на роботе.

Управляется вручную? Есть ли идеи по векторизации карты?
Мой результат на скрине (исходные данные введены вручную, дальномера пока нет).
Есть идея, как на векторизованной карте находить собственные координаты.


Вложения:
2.JPG
2.JPG [ 28.93 КиБ | Просмотров: 3147 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 04 дек 2012, 22:34 
Не в сети
Аватара пользователя

Зарегистрирован: 12 окт 2008, 12:40
Сообщения: 369
Откуда: Красногорск, Подмосковье
Да, пока управляется вручную.
По поводу векторизации тоже есть определенные наработки, но сейчас нет времени писать код дальше. Определенной проблемой является то, что на больших расстояниях (> 2м) падает точность определения координат, начинается их зашумление. Плюс предметы в самой комнате мешают(стул на фотографии разрывает линию).
Хотя было бы интересно услышать любые предложения.

_________________
OpenSimpleLidar - проект простого самодельного лидара.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 04 дек 2012, 23:02 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
1.Разрывы линий устранять в процессе векторизации (например, зачем учитывать то, куда робот проехать не сможет), пусть будут сплошными.
2.По нахождению положения на карте:
Изначально в памяти пусто. После включения робота и сканирования окружающего пространства, производится запоминание элементов карты (элементы - линии в полярной системе координат). При перемещении робота, на вновь сформированном "кадре" последовательно ищутся элементы карты (по длине и взаимному расположению). Искать все элементы не нужно, достаточно 3-4 штук. Далее определяется расположение робота, учитывая расстояние до элементов и относительный угол (т.е. угол поворота дальномера).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 04 дек 2012, 23:10 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
citizen писал(а):
Хотя было бы интересно услышать любые предложения.

Можно поставить два лазера под разными углами, один вдаль, второй вблизь. Включать по очереди. Эдак можно повысить точность.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 04 дек 2012, 23:43 
Не в сети
Аватара пользователя

Зарегистрирован: 12 окт 2008, 12:40
Сообщения: 369
Откуда: Красногорск, Подмосковье
Лазер и так установлен для достижения максимальной точности на больших расстояниях. На близких расстояниях при такой установке точность нормальная получается.

_________________
OpenSimpleLidar - проект простого самодельного лидара.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 06 дек 2012, 20:38 
Не в сети
Аватара пользователя

Зарегистрирован: 04 сен 2012, 00:39
Сообщения: 1536
Откуда: Украина
ФИО: Владимир
а он на 360 градусов врашается:-)

_________________
Самое важное в жизни- найти человека , который смотрит на мир, так же как и ты:)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 25 янв 2013, 00:13 
Не в сети
Аватара пользователя

Зарегистрирован: 12 окт 2008, 12:40
Сообщения: 369
Откуда: Красногорск, Подмосковье
Удалось кое-как запустить hector slam под ROS.
В результате получилась вот такая карта:
Изображение
Как видно, из-за погрешности не все стены параллельны - накапливается угловая ошибка.
По какой-то причине возникла ошибка локализации в верхней части карты, в результате чего карта частично исказилась. Пришлось вручную указывать положение робота на карте.
Часть ошибок, вероятно, связана с искажением данных на выходе дальномера при вращении робота вокруг оси - 3 оборота в секунду - достаточно низкая скорость для дальномера.

_________________
OpenSimpleLidar - проект простого самодельного лидара.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 25 янв 2013, 00:35 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
Вообще-то круто весьма, несмотря на мелкие покосы


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 25 янв 2013, 08:19 
Не в сети
Аватара пользователя

Зарегистрирован: 21 май 2007, 22:57
Сообщения: 600
Откуда: Калининград
прог. языки: C++
супер!

_________________
RoboCraft.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 25 янв 2013, 14:47 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
Круть! А вертикальную ось (У) не планируете добавить, да бы 3D модель получить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сканирующий лазерный дальномер
СообщениеДобавлено: 25 янв 2013, 16:58 
Не в сети
Аватара пользователя

Зарегистрирован: 12 окт 2008, 12:40
Сообщения: 369
Откуда: Красногорск, Подмосковье
Нет. Для этих целей есть kinect, при этом обработка таких массивов данных достаточно сложна.

_________________
OpenSimpleLidar - проект простого самодельного лидара.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 747 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9, 10 ... 50  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO