roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 13:24

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




Начать новую тему Ответить на тему  [ Сообщений: 45 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Робот не путайся под ногами
СообщениеДобавлено: 21 янв 2006, 14:33 
Не в сети
Аватара пользователя

Зарегистрирован: 05 окт 2005, 12:03
Сообщения: 3340
Откуда: Литва
прог. языки: asm
Уважаемый форум, посоветуйте как принципиально осуществить уход робота от движущихся предметов.
Робот - самодвижущаяся платформа с такими составляющими - задний и передний контактные бамперы; ФД реагирующий на свет: света нет - спим, свет есть "гуляем" или ищем источник света при помощи ещё двух ФД; два ИК датчика (спереди): при полной зарядке как ИК бамперы, а при истощении источника питания отключается ИК светодиод, а ИК датчики определяют направление движения робота на ИК маяк к зарядной станции, на этом пути работают контактные бамперы, которые до этого за ненадобностью бездействовали. Вот теперь захотелось добавить ему (роботу) функцию ухода от неожиданного появления движущегося предмета сбоку от робота или сзади(человек, кошка и т.д.), спереди то ИК локаторы они сработают, а вот сбоку или сзади - нет.
Я так понимаю что датчики движения здесь не подходят - робот и так в движении, зачит все предметы относительно него ужЕ двигаются.
Может дополнительных ИК локаторов наставить? Или, где-то встречал, круговой ИК локатор? А может ещё есть варианты?
___________
С уважением
Vovan


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 21 янв 2006, 19:28 
Не в сети

Зарегистрирован: 23 окт 2005, 15:22
Сообщения: 34
Откуда: Москва
А про ультразвуковые датчики не думали???


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 21 янв 2006, 19:37 
Не в сети
Мастер Самоделкин
Аватара пользователя

Зарегистрирован: 11 окт 2004, 19:20
Сообщения: 3678
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич
Тепловые заставят его шарахаться от батарей отопления, а емкостные - от любых массивных предметов... Тут универсального решения нет. По крайней мере проще и дешевле в любом случае будут ИК-барьеры. Чуть дороже - дальномеры. Сложнее- крутящийся радар, но он уже позволит определить откуда и с какой скоростью на него идут.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 21 янв 2006, 20:33 
Не в сети
Модератор

Зарегистрирован: 11 ноя 2004, 03:18
Сообщения: 1274
Откуда: Москва
Скорее всего ИК-датчики, или вращающиеся, или несколько расположенных по кругу. С ультразвуковыми датчиками сложнее, двигатели сильно фонят.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 21 янв 2006, 21:25 
Не в сети
Аватара пользователя

Зарегистрирован: 05 окт 2005, 12:03
Сообщения: 3340
Откуда: Литва
прог. языки: asm
Спасибо за участие!
Что-то меня на вращающийся локатор потянуло :D  Хоть и сложно, но тем интереснее!
Однако, наверное, есть другой путь... Всё же для этих датчиков нет разницы движется предмет в направлении робота или просто робот мимо него проходит и в соответствии с "показаниями" датчиков меняет свою траекторию, например проходя мимо табуретки справа "на всякий случай" обходит её с запасом, а слева ещё одна табуретка - тупик! А ведь по габаритам он там запросто пройдёт. Сдаётся мне что тут дальномером пахнет?
А может всё же датчики движения? :idea:  Выглядит это так (грубо, образно ну вобщем пока только принципиально, не вдаваясь в детали): прошёл некоторое расстояние остановился, включил датчики движения (ДД), типа посмотрел не движется ли кто в его направлении, отключил ДД  дальше пошёл, опять остановка и т.д... Может так? Тоже что-то не очень красиво... Хотя таким поведением напоминает многих представителей животного мира...
Продолжаю думать :?:
___________
С уважением
Vovan


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 09:09 
Не в сети
Мастер Самоделкин
Аватара пользователя

Зарегистрирован: 11 окт 2004, 19:20
Сообщения: 3678
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич
Датчик движения (от сигнализации) загружается секунд 5, так что это не годится... БЫла у меня мысль об ультразвуковом датчике с эффектом Допплера, но думаю будет это дико сложно...  :roll:  Проще уж ИК-дальномер раскрутить...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 12:05 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
обычные ДД собраны на ПИИР элементах, а они реагируют только на перепад температур, т.е. движение предметов не отличающихся по температуре от окружения замечено не будет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 12:46 
Не в сети
Мастер Самоделкин
Аватара пользователя

Зарегистрирован: 11 окт 2004, 19:20
Сообщения: 3678
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич
Телевизор и батарея отопления тоже являются такими объектами...  :wink:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 13:56 
Не в сети
Аватара пользователя

Зарегистрирован: 05 окт 2005, 12:03
Сообщения: 3340
Откуда: Литва
прог. языки: asm
<Датчик движения (от сигнализации) загружается секунд 5> - мда... об этом я не подумал...
А сложность меня не пугает, наборот интереснее! Даже если и не удастся реализовать - изучение вопроса всё равно на пользу.
___________
С уважением
Vovan


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 14:02 
Не в сети
Модератор

Зарегистрирован: 11 ноя 2004, 03:18
Сообщения: 1274
Откуда: Москва
Ну если сложность не пугает тогда и на ИК-датчиках можно программным путем создать систему определяющую приближается ли робот к неподвижному объекту или к стоящему/движущемуся роботу приближается другой объект.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 14:40 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
По ИК-датчикам - вопрос только в времени отклика - сколько нужно времени ИК-датчику, чтобы определить расстояние?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 15:17 
Не в сети
Модератор

Зарегистрирован: 11 ноя 2004, 03:18
Сообщения: 1274
Откуда: Москва
Для Шарповских аналоговых 45 миллисекунд плюс время обработки в контроллере. С этим проблем не должно возникнуть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 15:33 
Не в сети
Аватара пользователя

Зарегистрирован: 05 окт 2005, 12:03
Сообщения: 3340
Откуда: Литва
прог. языки: asm
<Ну если сложность не пугает тогда и на ИК-датчиках можно программным путем создать систему определяющую приближается ли робот к неподвижному объекту или к стоящему/движущемуся роботу приближается другой объект.> - вот я и спрашиваю (пусть в общих словах) как работает такая система? Где ента тонкая разница между тем что робот движется относительно предметов и тем что предметы двигаются относительно робота? :)  Я не могу никак догадаться...  :( Прогу написАть никак не выходит без конкретной задачи... т.е. что-то типа такой: ИК СД посылает пачки, ИК ФД их получил (отражённые) и .... что дальше?  :?:  
___________
С уважением
Vovan


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 16:25 
Не в сети
Модератор

Зарегистрирован: 11 ноя 2004, 03:18
Сообщения: 1274
Откуда: Москва
Тут придется делать хитрый, двухуровневый радар. Один датчик, постоянно крутится сканируя окружение, пара других наводится на ближайший объект замеченный первым датчиком. Этой же парой меряем расстояние до объекта и изменение его по времени.

Далее алгоритм при стоящем роботе и движущемся объекте:
Первый датчик сканирует пространство на 360-ти градусах и выделяет ближайший объект, второй датчик (состоящий из двух) поворачивается в сторону найденного ближайшего объекта и по разнице сигналов на своих двух сенсорах центрируется на нем и измеряет расстояние.
Первый датчик при этом продолжает крутится, и на следующем обороте опять определяет ближайший объект, при этом если объект движется не прямо на/от робота, а под каким либо углом к нему второму датчику нужно будет заново навестись на него ну и соответственно еще раз измерить расстояние.
Зная две точки на плоскости и временной интервал между ними мы уже определили вектор, направление и скорость движения объекта.

Если робот движется то добавится еще две переменных ? его скорость и направление.

В общем все довольно просто.... На словах :)

P.S. Кстати, забавный радар получается, почему я до такого раньше не додумался?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 янв 2006, 16:31 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Маловато будет такой скорости - это получается не более 20 измерений в секунду, даже если забыть, что нам нужно 20 раз повернуться и остановиться на 45мс, значит при 1fps всего 20 точек по кругу можно заснять - очень-очень мало. Ногу будет не заметить скорее всего. Тем более что это всего 1 тест в секунду получится, а за секунду робота и пнуть можно :)

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 45 ]  На страницу 1, 2, 3  След.

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


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

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


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

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