iRobot Roomba 560 Он движется хаотично. Есть два основных элемента: шататься случайно (столкнувшись со стеной или просто потому что захотелось, развернуться куда угодно и топать дальше) и идти по стеночке аккуратно повторяя её повороты. Он эти два элемента сочетает, опять же, случайно между ними переключаясь. Случайное шатание даёт хорошее покрытие площади комнаты, а хождение по стеночке во-первых гарантирует, что он везде заберётся (даже под стул, у которого расстояние между ножками где-то всего на 2см больше ширины робота), а во-вторых гарантирует тщательную вычистку пыли вдоль плинтусов (захват пыли находится под пузом, но сбоку есть специальная вертящаяся щётка, которая от плинтуса всё сгребает под пузо). И есть ещё один специализированный вид движения: если он чует под собой грязь (правда, чует! сам наблюдал!), то он на корпусе зажигает специальную лампочку и некоторое время наматывает спирали-круги по этому месту с особой тщательностью. В процессе уборки комнаты, исходя из частоты столкновений с предметами, максимальных длин участков, которые удаётся пройти без столкновения и регулярности срабатывания датчика загрязнённости, он непрерывно прикидывает, за сколько времени хаотичным тынянием ему удастся вычистить вверенную территорию. Собственно, это время (как я понимаю, непрерывно уточняемое) он и работает. Как мы видим из построенной зоны покрытия, такими прикидочными методами ему таки удаётся достигнуть хороших результатов (собственно, для того и строил - самому интересно было :) Да, оно никогда не будет идеально равномерным: где-то он пройдёт 3 раза, а где-то 6. Ну а завтра будет наоборот. Режима работы у него два: штатная уборка (всё вышеописанное) и точечная: приносишь его туда, где что-то рассыпал, нажимаешь кнопку точечной уборки, он начинает кататься по раскручивающейся спирали до круга диаметром где-то в метр-полтора, потом по спирали "скручивается" обратно в центр и останавливается. Плюс ещё есть третья управляющая кнопка: команда вернуться на базу. Также он возвращается на базу после уборки, если с неё стартовал или в процессе уборки где-то её заметил. Если стартовал не с базы и в процессе уборки её нигде не видел - останавливается где угодно (кажется, старается при этом выехать куда-нибудь подальше от стен - чтобы не завершить уборку, например, под диваном), но обязательно сперва возвращается в ту комнату, откуда начал уборку (о навигации по комнатам - см. ниже). Базу находит по инфракрасному. Когда он решает, что хочет на базу, он продолжает штатно случайно тыняться (не переставая убирать - он вообще убирает всегда, когда ползает), пока не попадёт в её навигационный луч. Тогда по лучу идёт на парковку. В видео парковки можно увидеть: где-то на 12 секунде он тычется в стену, чуть поворачивается, начинает ехать от неё и практически сразу вдруг сбавляет скорость. Вот это сбавление скорости - это он почуял базу. Дальше он мучительно пытается к ней придти :) Надо сказать, что этот столик (с которым в видео парковки он долго мучается, пытаясь обойти его не с той стороны) - особо подлое препятствие: через него инфракрасное проходит, а проехать нельзя :) Но, что радует, хоть и мучительно (приведённое видео - один из самых неудачных походов на базу), но он всегда добивается своего. Ведь по-хорошему, мне совершенно неинтересно, сколь тернист был его путь. Главное чтобы к моему приходу домой припарковался и заряжался. Работать без подзарядки, говорят, может ~2.5 часа. С учётом того, что нашу комнату он выдраивает где-то за час, я ещё ни разу не видел, чтобы у него кончался заряд. Разве что когда принесли, всё чего я от него "из коробки" добился - это он с криками "ой, голодно мне" дополз до базы и присосался :) Я не стал его беспокоить. У него даже реализовано поддержание боевого духа в аккумуляторе: иногда (ещё не видел, описываю по мануалу), если его долго не трогать и он видит, что до ближайшего выезда по расписанию времени вагон, он проделывает цикл полной разрядки-зарядки аккумулятора. При этом мигает особым образом, сигнализируя, что этот процесс лучше не прерывать. Он гудит. Наверное, тише, чем современный нормальный (достаточно мощный) пылесос но тут разница в том, что пылесос гудит, когда ты им пылесосишь. То есть занят этим процессом. А когда ты занят своими делами, а эта штука пол часа путается под ногами и гудит - за пол часа достаёт. И именно в этом месте рулит шедалер (чтобы процесс происходил по заданным дням в моё отсутствие). Ещё бывают стенки/маяки. Это один и тот же девайс, на нём просто переключатель режима. Оба они вещают прямо перед собой луч, который пылесос не пересекает. В случае стены - вообще никогда, в случае маяка - пока не уберёт эту комнату. Убрав комнату, пылесос спинговывается по радио с нужным маяком, маяк высвечивает два навигационных (инфракрасных) луча и по ним пылесос проходит в соседнюю комнату. Подробно с картинками описано тут: http://robopark.ru/content/view/140/145/ При этом пылесос запоминает свой путь через маяки по комнатам, чтобы потом вернуться в ту комнату, откуда стартовал и пристыковаться к базе, если там таковая есть. У него есть датчики соударения с препятствием, инфракрасные датчики, направленные вперёд (он на подъезде к предмету, если предмет достаточно крупен, ощутимо сбавляет скорость, легонько в него тыкается, затем разворачивается и уезжает дальше), инфракрасные, направленные вниз (просекать, что он собирается прыгнуть, например, с лестницы, и отказывать от такого суицида), датчики движения разного рода (в принципе, он может застрять и тогда не биться головой об стену, а перестать рыпаться и громко вопить, призывая хозяина), датчики вращения щёток (чтобы зажевав туда, например, провод или шнурки от ботинок, понять, что это не проглотить, повертев щётки в другую сторону, выплюнуть бяку и спокойно работать дальше), уже помянутый датчик грязи (у меня пока только гипотезы, как он работает, но работает, зараза!) и ещё целая пачка датчиков самодиагностики. Вот здесь можно посмотреть ролики о фичах: http://www.irobot.com/hrd_right_rail/roomba_rr/roomba_560/Roomba560_rr_howitworks.html На сколько я сейчас могу судить, ролики практически не приукрашивают - всё действительно так и есть и работает. Отдельный рулез (см. последний ролик) - это то, что он разбирается практически на 100% (и эта процедура _предполагается_ к исполнению по необходимости простым потребителем и описана в инструкции), состоит из грамотно продуманных элементарных деталей. Все детали заменяемы, все продаются отдельно. В общем, девайс очень грамотно устроен. Объясняется это очень просто: "...iRobot (фирма-производитель) was founded in 1990 by Rodney Brooks, Colin Angle and Helen Greiner after working in MIT's Artificial Intelligence Lab." MIT - это многое объясняет :) -- Erelen http://melda.ru/