Робот-пылесос

Обсуждаем рождающиеся мысли и результаты экспериментов.

Сообщение =DeaD= » 15 авг 2006, 07:22

Вопрос не в алгоритме, а в привязке к местности и корректировке своего положения, это если хочется близко к 100% результата подобраться. А если знать где находишься - вопрос решается тупо - берешь и чистишь все что не почищено. А если не знать - 100% результата врядли можно эффективно достичь.
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Сообщение Vovan » 15 авг 2006, 11:23

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

Сообщение lebaon » 16 авг 2006, 12:28

вован, для возврата на базу проще ик маяк использовать :wink:
можно сначало вдоль стенки проехать, границы определить,
а потом как в мониторной развертке :arrow:
Аватара пользователя
lebaon
Безбашенный Теоретик
 
Сообщения: 1137
Зарегистрирован: 07 янв 2006, 18:30
Откуда: Подмосковье

Сообщение Vovan » 16 авг 2006, 15:58

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

Сообщение Johnny Bravo » 16 авг 2006, 18:55

Прочитав ОЧЕНЬ краткое описание пылесоса самсунг "Робо-пылесосы в состоянии запоминать расстановку мебели в доме для оптимизации уборки в следующий раз, возвращаться к зарядному устройству и самостоятельно подзаряжаться, когда энергия на исходе" ничего кроме компаса в голову не лезет. Возможно он составляет карту по компасу относительно базы.
Johnny Bravo
 
Сообщения: 400
Зарегистрирован: 26 фев 2006, 15:21
Откуда: Омск

Сообщение Vovan » 16 авг 2006, 22:25

ничего кроме компаса в голову не лезет. Возможно он составляет карту по компасу относительно базы.

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

Сообщение Кирилл » 17 авг 2006, 17:21

А нужна ли карта в голове у робота?
не проше ли ииспользовать алгоритм который исключает непочишенных участков и пребывание в одном и том же участке повторно(если это не зависит от обстановки)
пропущу пока поиск базы:
алгоритм представляю так:
на роботе стоит 4 дальномера с каждой стороны
в начале движения робот смотрит во все стороны и решает в какую сторону начинать.
по показаниям с дальномера он условно разобьет свой путь на квадраты которые соответствуют размеры робота
сделав шаг(проехав квадрат) он опять снимает показания с дальномеров учитывая что он недолжен ехать назад и делает следующий ход.
также надо включить в програму правило что он недолжен поворачивать больши 2 раз в одну и туже сторону (возможно исключение)

ну вот вроде все :wink:
Кирилл
 
Сообщения: 432
Зарегистрирован: 20 окт 2005, 16:11
Откуда: Вильнюс,Литва
прог. языки: Basic

Сообщение Vovan » 17 авг 2006, 19:21

Интересно!
Однако, возникает слишком много вопросов (поиск базы пропускаем):
в начале движения робот смотрит во все стороны и решает в какую сторону начинать.

Рассуждаю: Как он решает? Ну наверное случайным образом, или в сторону с наибольшими показаниями дальномера.
Итак: Смотрит во все стороны и "видит" с двух сторон стена (угол, он в углу), с третьей стороны, например, тумба в 1 метре от него, с четвёртой в 2-х метрах шкаф.
по показаниям с дальномера он условно разобьет свой путь на квадраты которые соответствуют размеры робота
Свой путь он целиком видеть не может (мешает мебель), а следовательно и на квадраты разбить может только участок (см. выше) 1м х 2м... Здесь как бы верно, только можно и проще - просто объехать ентот участок без пропусков (покрыть траекторией).
сделав шаг(проехав квадрат) он опять снимает показания с дальномеров учитывая что он недолжен ехать назад и делает следующий ход.
Согласен! Однако где теперь "назад"? А где следующий участок? Как он определит? В процессе уборки первого квадрата он неднократно разворачивался и вполне может начать убирать убранный участок, следовательно нужна навигация, а значит компас!
также надо включить в програму правило что он недолжен поворачивать больши 2 раз в одну и туже сторону (возможно исключение)
А если сектор уборки слишком мал? Тогда как ни крути 2 раза придётся повернуться...
ЗЫ: "карта в голове у робота" довольно условная, имелась ввиду... Даже это и картой, наверное нельзя назвать, а просто его траектория обсчитаная хозяином и зашитая ему в "мозги" (с  учётом всех препятствий и ньюансов).
Как сказал =DeaD=:
Вопрос не в алгоритме, а в привязке к местности

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

Сообщение avr123.nm.ru » 18 авг 2006, 15:29

аот такую штуку надо делать:

http://store.irobot.com/home/index.jsp

"без шума, без пыли"
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Сообщение Myp » 21 сен 2006, 14:31

$149.99 тарелка на колёсиках
120 минут время автономной работы
пожалуй это уже достаточно дёшево чтобы можно было покупать и у нас(может купить?)


а вобще подходящий всасыващий насос делали в старых совецких пылесосах
там на двигатель надевали последовательно несколько центробежных "пропеллеров" (2 алюминиевых блина диаметром ~20 см. в одном блине по центру отверстие, расстояние между блинами около сантиметра в этом пространстве между блинами установленные изогнутые лопатки. смысл в том что если этот бутерброд раскрутить, воздух за счёт центробежных сил будет засасываться через отверстие в центре одного блина и выдуваться по периметру блина)

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

и для ориентирования я думаю вовсе необязательно придумывать алгоритмы 100% очистки комнаты. если такой девайс каждый день будет выползать из угла и пылесосить пока я на работе то я думаю за 14 часов общей работы в неделю он полюбому очистит 100% поверхности пола куда может доползтиоднако если поставить в комнате табуретку то в 4х ножках он может глобально потеряться...
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Сообщение -= Александр =- » 21 сен 2006, 15:07

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

Сообщение Light » 29 ноя 2006, 19:41

Купил готовый робот-пылесос RV-2. Это самая простая и дешевая модель. Выяснилось, что проходимость невысока, и он не может работать без присмотра (то забуксует, то еще чего).
В итоге решил переделывать. Аккумулятор у него - 12 аккумуляторов размера АА, по 800 мА/ч. Хватает на час работы-проверял. Далее он просто выключается, включая красный светодиод.

Имеется: насос с центробежной крыльчаткой, 2 привода колес (для разворота он использует разность направления вращения, для перемещения по спирали - разность скоростей вращения), бампер контактного типа.

Планирую переделать так:
+ несколько кнопок для того чтобы выбирать программу движения или размер комнаты;
+ датчик вращения переднего колесика (маленького) - когда он буксует, его ведущие колеса крутятся, зато переднее вывешено обычно. Часто достаточно сдать назад с разворотом, чтобы выбраться из ситуации. Это проблемно, так как колесико крутится на 360 градусов и провода не подвести, нужно видимо искать другой способ определения движения.
+ добавить 2-3 ИК-датчика препятствий по бокам - часто он не замечает что уперся в диван (бампер только спереди, причем высокий только по центру, а к бокам узенькая полосочка, которая определяет препятствия не выше 2 см от пола). Из-за его "невнимательности" он уже исцарапал себе весь корпус, которым трется о мебель.
+ сделать зарядочную базу, добавить еще 1-2 датчика чтобы он ее находил.
+ сделать возможность ИК-барьеров.
+ может еще пульт, но это не знаю как делать.

Планирую использовать: ИК-датчики на TSAL+TSOP+attiny, есть 1 готовый и проверенный.
Основной контроллер - ATMega 32 (какой есть:) ) - желательно 2 шим, 1 ацп (для того чтобы узнавать о низком уровне заряда).

Кто что может посоветовать в плане реализации?
Особенно интересует как сделать ИК-барьеры (он же должен видеть перпендикулярный ему луч света барьера, а не направленный на него)
Правильный ли я выбрал метод определения заряда аккумуляторов (через АЦП)? (Потребуется выключать вакуумный мотор заранее, чтобы он сумел найти зарядку, поэтому нужно довольно точное определение уровня заряда)
Как все-таки понадежнее сделать датчик того, что он не движется? (на ведущих колесах бессмысленно, нужно где-то еще)
Light
 
Сообщения: 28
Зарегистрирован: 06 авг 2006, 17:59
Откуда: Москва

Сообщение Валерос » 01 дек 2006, 14:57

:shock: Выкладывай фото ентого монстра (китайцы наверное делали?).
На счет МК: закажи бесплатно на TI.COM MSP430 пришлют быстро и много, у ентих МК переферия богатая и потребление мизерное, проги короткие и т. д. а примеры использования здесь http://www.gaw.ru/html.cgi/txt/app/micr ... ndex.htm... 8)
Аватара пользователя
Валерос
 
Сообщения: 364
Зарегистрирован: 30 сен 2006, 19:05
Откуда: Санкт-Петербург

Сообщение Light » 01 дек 2006, 16:25

Фотки:
Общий вид:
Изображение
Без крышки:
[url]Изображение[/url]
Снизу:
[url]Изображение[/url]
Редуктор:
[url]Изображение[/url]
Насос вакуумный:
Изображение
Плата:
[url]Изображение[/url]
Разобранный вид:
[url]Изображение[/url]

Прочитал, но не нашел чем эти МК лучше ATMega. Я так просчитывал, вроде бы у атмеги всего хватает для реализации, и опыт работы с ним имеется, хоть и небольшой.

Как видно на фотке снизу, есть еще и заднее колесико, оно неповоротное, зато подпружиненное. может на него оптопару как вставить...

А еще нехватает возможностей драйвера L293D - надо же 2 движка вперед-назад+выключение насоса, пока он ищет зарядник.
Light
 
Сообщения: 28
Зарегистрирован: 06 авг 2006, 17:59
Откуда: Москва

Сообщение avr123.nm.ru » 01 дек 2006, 16:56

Light писал(а):Прочитал, но не нашел чем эти МК лучше ATMega.


прочитай повнимательней.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Пред.След.

Вернуться в Идеи

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

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