roboforum.ru

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

Робот-гусеница

Робот-гусеница

Radist » 21 мар 2014, 21:49

Однажды на просторах интернета я увидел вот такого робота: http://samodelniy.ru/samodelnyj-robot-inchworm-na-baze-arduino-nano. Идея мне понравилась, захотелось сделать своего робота с блэкджэком и ... датчиками. Простое радиоуправление мне не интересно, поэтому я задумал обучить его разным штукам. Но сперва о конструкции.
Робот движется при помощи трех серв HXT900. Он спаян из фольгированного стеклотекстолита. Четыре восьмиугольных платы образуют ребра гусеницы, девять треугольников образуют сочленения, еще есть три держателя серв и пятнадцать треугольников жесткости. Питается все от четырех аккумуляторов никель-металл-гидридных размера ААА, разделенных на две группы. Передняя плата содержит AVR Tiny25, работает ИК-бампером и получает информацию от датчиков цвета поверхности, сливает информацию в последовательном коде в мозг гусеницы. Задняя плата содержит AVR Tiny25, принимает команды от ИК пульта (работа в ручном режиме, а также выбор модели поведения) и передает их в мозг параллельным кодом (3 бита). Вторая плата спереди является мозгом, мозг на AVR Mega8, туда сходятся все провода-нервы. Четвертая плата электроники не содержит.
Сделав робота, я начал учить его разным штукам. Для начала научил его ходить, как ходил прототип (как гусеница, как краб, как перекати-поле). Вот результат:

Затем я стал учить робота лайнтрейсу. Это было непросто из-за дискретности шага, а также из-за того, что при повороте робот имеет отброс назад. Но все получилось, смотрим ролик.

Затем я стал учить робота кегельрингу. Это было самое сложное. А вся проблема в том, что глаз у робота один и конус зрения относительно большой. То есть цель видна при накрывании краем конуса, при этом робот по цели промажет. Пришлось изобретать хитрые алгоритмы. Тоже получилось, результат ниже. Кто досмотрит до конца - тот молодец. Вы увидите, что я кручу ринг - это потому, что робот видит и за рингом и упирается взглядом в шкаф. По регламенту вокруг ринга должно быть пусто. Поэтому сбитые кегли я убирал.

Ну и напоследок захотел продемонстрировать применение ИК-бампера в еще одном деле. Но по той же причине получилось не очень наглядно: робот ползет по столу и видит его край, соответственно заранее поворачивает. Видео вот:

Ну и напоследок немного фотографий.
Вложения
PICT3765.JPG
PICT3766.JPG
PICT3767.JPG
PICT3768.JPG
PICT3769.JPG
PICT3770.JPG
PICT3771.JPG
PICT3775.JPG

Re: Робот-гусеница

AGENT » 21 мар 2014, 21:57

красиво!
люблю когда так делают

Re: Робот-гусеница

Vovan » 21 мар 2014, 22:57

Radist респект! :good: Свежая струя прям! Понравилось!
А чё если носок какой-ньдь на него одеть? как живой червь получится...

Re: Робот-гусеница

Radist » 21 мар 2014, 23:13

Теоретически возможно. Но не силен в рукоделии. Мне так больше нравится. Мне бы терминатор больше понравился в виде скелета, чем в виде Шварценнегера.

Re: Робот-гусеница

RootAdmin » 22 мар 2014, 14:14

Классно сделано! Представляю себе алгоритм перемещения... Такую кинематику считать наверно сложней чем механику сделать.

Re: Робот-гусеница

Vovan » 22 мар 2014, 14:40

Тоже об этом подумал, к тому же всё на ассемблере! :shock:
Пора Radista "раскулачивать" :wink: , в смысле нужно его пытать на предмет алгоритмов.
Вот ползанье я себе вроде представляю, ну и развороты тож примерно, а "покатушки" как?
И ваще неплохо было бы подробнее узнать обо всём...
Ну это уж если конечно он сам захочет делиться :oops:

Re: Робот-гусеница

Duhas » 22 мар 2014, 17:40

Шикарное исполнение, присоединяюсь к комментариям Vovan на счет алгоритмов!

Re: Робот-гусеница

Radist » 22 мар 2014, 18:00

На самом деле сложно мне было не учить робота ходить по всякому, а именно лайнтрейсу и кегельрингу. Но это из-за специфики движения. А сами движения простые. С удовольствием про них расскажу.
Шаг вперед: 0. перед ровно 1. Подогнуть чуть зад (зад приподнимется). 2. Подогнуть чуть перед (перед приподнялся - робот выровнялся) 3. Передом и задом одновременно, перед загнуть еще сильнее, зад выровнять. Переход на начало.
Шаг назад - точно также, только в обратной последовательности.
Поворот направо: 1. Голову поднять, зад ровно 2. Середину повернуть направо 3. Голову опустить, зад поднять. Переход на начало.
Поворот налево аналогично.
Ходьба боком: перед и зад поднять, середину согнуть в нужную сторону, перед и зад опустить так, чтоб середина поднялась, середину загнуть в другую сторону. Если сменить последовательность поворотов - пойдет в другую сторону.
И на сладкое, как он катится колбаской: точно также как и ходьба боком, только надо середину сильнее загибать/разгибать, чтоб центр тяжести вышел из проекции опоры.
Считать я ничего не считал, написал технологичку и опытным путем нашел числа, которые надо выдавать на сервы.
так что проект не будет сложным даже для начинающих (как пишет автор прототипа - он сделал робота буквально за день).

Re: Робот-гусеница

Vovan » 22 мар 2014, 19:43

т.е. задержки определялись, в основном, эксперементально, да?
И ещё вопросик:
на какой угол позволяет конструкция поднять перед\зад? (это я к тому, что возможно ли на небольшое препятствие забраться? например журнал, тонкая книга...)

Re: Робот-гусеница

Radist » 22 мар 2014, 19:53

Экспериментально определялись не задержки, а "ширины" управляющих импульсов серв. А задержки "на глазок" с запасом, чтобы серва гарантированно успела приехать на новое место. Угол поворота от среднего положения гарантированно плюс/минус 80 градусов (неохота рисковать пластмассовым редуктором). А вот насчет преодоления препятствий я сильно сомневаюсь - сцепление с полом очень плохое, он и по ровному ламинату проскальзывает. В другой комнате еще деревянный пол с линолеумом, естественная волнистость, а уже не дает ему ползать - на месте елозит. Так что если кто будет делать аналог - обратите внимание.

Re: Робот-гусеница

avr123.nm.ru » 22 мар 2014, 20:26

Кайф! Аж завидно. Хорошая идея. Прямо под резку лазером из оргстекла. :ROFL:

А может звенья на 120 град повернуть?

Re: Робот-гусеница

Radist » 22 мар 2014, 20:39

Отвечу фотографией. Это я его выключенного согнул. Прототип, кстати, так умел делать.
Вложения
PICT3776.JPG

Re: Робот-гусеница

avr123.nm.ru » 23 мар 2014, 01:55

я не спрашивал может ли он. я предложил смещать оси поворота в соседних звеньях не на 180 а на 120 градусов.

Re: Робот-гусеница

lorry » 23 мар 2014, 02:41

Класс!!!
:good:

Re: Робот-гусеница

Radist » 23 мар 2014, 08:11

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


cron
Rambler\'s Top100 Mail.ru counter