Делаем робота-змею DIY: Sneel на основе Arduino

Делаем робота-змею DIY: Sneel на основе Arduino

Материалы и инструменты для изготовления:
– нейлоновый трос;
– 5x скобок формы С Lynxmotion;
– 5x скобок для сервоприводов Lynxmotion;
– 5x специальных литых петель;
– шланг размером 5/16″;
– свернутый шланг;
– кусок трубы 5/16″;
– вакуумные редукторы от 2.5 до 1.25″ (нужно два);
– уплотнитель уретановый;
– смазка (специальная морская);
– эпоксидный уплотнитель (морской);
– уплотнительные кольца;
– три куска углеродных волокна размерами 1/32 “, 1” x12 “;
– кусочек резины размерами 1/8 ” и толщиной 2″ x10 “;
– зеленый локтит.



В качестве дополнения понадобится клапан или внутренняя трубка для повышенного давления, для этих целей подойдет велосипедный насос. Еще нужно пару упаковок геля кремниевой кислоты.

Ну и естественно для работы нужно иметь хороший запас инструментов.

Шаг первый. Герметизируем серводвигатель
В первую очередь серводвигатели нужно хорошо загерметезировать, чтобы в них не попала вода. Нужно взять морскую смазку и с помощью нее хорошенько промазать места стыков и выхода проводов. Также нужно промазать места, где находятся шурупы.

Затем нужно снять верхнюю часть сервопривода и также хорошенько все смазать вокруг зубчатого вала.





Шаг пятый. Установка сервоприводов на скобки
В комплекте к сервоприводу идут резиновые прямоугольные резинки. Такие резинки должны быть на всех четырех отверстиях кронштейна сервопривода. Плоская сторона резинки должна быть развернута наружу.

На пяти сервоприводах нужно установить литые петли. Далее сервопривод ставится на скобку, они крепятся с помощью болтами с гайками размером 4×40.











Шаг десятый. Способ управления роботом
Для управления роботом можно сделать либо пульт дистанционного управления, либо же управлять им с помощью схемы xbee+компьютер.


Чтобы загерметизировать крышки, их нужно хорошенько замазать при помощи смазки.

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



Вот и все, робот создан. Теперь его можно испытать в реальных условиях. Конечно, конструкция такой самоделки довольно сложная и требует довольно серьезных навыков в плане роботостроения, но и полезность такой самоделки неоспорима.

Собираем змейку на Arduino

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

Змейка — очень благодатная тема для программистов, и вот почему:

  • понятные и простые правила,
  • минимум логики, которую нужно запрограммировать,
  • примитивная графика,
  • простое управление,
  • море кайфа.

У нас уже был разбор того, как в неё играет искусственный интеллект, и статья о том, как за 10 минут сделать змейку для браузера. Теперь шагнём дальше и не только напишем код, но и соберём железо. Результат — ваша собственная змейка на микропроцессорной плате, с экраном.

Что понадобится

Есть много вариантов платформы Adruino, но нам нужна одна из самых простых — микросхема на плате с ножками для монтажа в специальную плату. Обратите внимание: при покупке вам нужно указать, что хотите плату с уже припаянными ногами (soldered headers / soldered pins). Иначе придётся паять ноги на плату, а смысл был в том, чтобы не паять.

Примерно вот так мы соединим между собой все элементы на плате.

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

Обычный переменный резистор на 10 кОм. Суть этих устройств в том, что, вращая регулятор, мы можем изменять сопротивление резистора. В нашем проекте он будет отвечать за скорость движения змейки. Если она двигается слишком быстро — крутите ручку и змейка замедлится.

Читайте также:
Видео: монтаж МДФ и ПВХ панелей своими руками

Работает так же, как на обычной приставке. Им мы будем управлять змейкой.

Самый кайф этого проекта в том, что нам не придётся паять, чтобы собрать все модули вместе. Вместо этого используем провода с разными разъёмами, поэтому лучше сразу заказать полный комплект.

Загружаем код игры

Мы сейчас не будем разбирать особенности программирования под Arduino, а вместо этого сразу дадим готовый скетч. Скетч — это программа для Arduino, которая написана на C++ и которую сохранили как файл с расширением .ino.

Чтобы загрузить код игры в микроконтроллер, вам понадобится:

  1. Сохранить программу в виде .ino-файла.
  2. Подключить плату к компьютеру с помощью USB-кабеля.
  3. Установить Arduino IDE — среду разработки под Arduino для компьютера.
  4. Настроить компьютер для работы с платой. Нужно поставить драйверы для контроллера и убедиться, что компьютер всё распознал верно. Чтобы понять, как это правильно сделать, поищите в интернете «Как подключить arduino nano к компьютеру» или почитайте эту статью (не нашу).
  5. Открыть в Arduino IDE наш файл с программой.
  6. Там же нажать кнопку «Загрузить».
  7. Подождать сообщения о том, что программа загружена.

Собираем и запускаем

Главное на этом этапе — не спешить и делать всё по картинке. Чтобы подключить провода к Arduino, нужно вставить его в центр белой пластиковой монтажной платы и подключить нужные провода рядом с нужными входами. «Рядом» — то есть на том же, грубо говоря, столбце: дырки на монтажной плате соединены как бы поперёк платы, то есть все провода, которые вы воткнёте в один столбец, будут соединены.

Если всё равно непонятно, что и куда подключать, посмотрите видео:

Чтобы игра заработала после сборки, достаточно подключить плату к любому блоку питания или компьютеру.

Робот_змея_своими_руками

Материалы и инструменты для изготовления:
— нейлоновый трос;
— 5x скобок формы С Lynxmotion;
— 5x скобок для сервоприводов Lynxmotion;
— 5x специальных литых петель;
— шланг размером 5/16″;
— свернутый шланг;
— кусок трубы 5/16″;
— вакуумные редукторы от 2.5 до 1.25″ (нужно два);
— уплотнитель уретановый;
— смазка (специальная морская);
— эпоксидный уплотнитель (морской);
— уплотнительные кольца;
— три куска углеродных волокна размерами 1/32 “, 1” x12 “;
— кусочек резины размерами 1/8 ” и толщиной 2″ x10 “;
— зеленый локтит.



В качестве дополнения понадобится клапан или внутренняя трубка для повышенного давления, для этих целей подойдет велосипедный насос. Еще нужно пару упаковок геля кремниевой кислоты.

Ну и естественно для работы нужно иметь хороший запас инструментов.

Шаг первый. Герметизируем серводвигатель
В первую очередь серводвигатели нужно хорошо загерметезировать, чтобы в них не попала вода. Нужно взять морскую смазку и с помощью нее хорошенько промазать места стыков и выхода проводов. Также нужно промазать места, где находятся шурупы.

Затем нужно снять верхнюю часть сервопривода и также хорошенько все смазать вокруг зубчатого вала.





Шаг пятый. Установка сервоприводов на скобки
В комплекте к сервоприводу идут резиновые прямоугольные резинки. Такие резинки должны быть на всех четырех отверстиях кронштейна сервопривода. Плоская сторона резинки должна быть развернута наружу.

Читайте также:
Виды экспертизы проектной документации

На пяти сервоприводах нужно установить литые петли. Далее сервопривод ставится на скобку, они крепятся с помощью болтами с гайками размером 4×40.











Шаг десятый. Способ управления роботом
Для управления роботом можно сделать либо пульт дистанционного управления, либо же управлять им с помощью схемы xbee+компьютер.


Чтобы загерметизировать крышки, их нужно хорошенько замазать при помощи смазки.

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



Вот и все, робот создан. Теперь его можно испытать в реальных условиях. Конечно, конструкция такой самоделки довольно сложная и требует довольно серьезных навыков в плане роботостроения, но и полезность такой самоделки неоспорима.

Роботы-змеи. Где их можно применить и какие у них преимущества?

Змея, с ее подвижностью и возможностью проникнуть почти в любое труднодоступное место, вдохновляет ученых-робототехников уже несколько десятилетий. Однако есть ли у таких роботов будущее? Давайте поразмышляем на эту тему…

Уже несколько десятилетий

Работы по созданию роботов-змей проводятся уже несколько десятилетий. Первый в мире змеиный робот был разработан профессором Сигео Хиросэ в Токийском технологическом институте в Японии в 1972 году. И сейчас многие страны, такие как Япония, Израиль, США и другие, успешно используют робо-змей для проведения поисково-спасательных операций и военных операций, которые могут быть слишком опасными или труднодоступными, для работы людей.

Отличная подвижность

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

Змея — одно из существ, которое демонстрирует отличную подвижность на различных рельефах. Они способны передвигаться по узким проходам и подниматься по неровной местности. Это свойство мобильности пытаются воссоздать в роботах, которые выглядят и двигаются как змеи.

Вот пример подводной робо-змеи, разработанной в токийской HiBot:

Змеиные роботы чаще всего обладают высокой степенью свободы и им не нужны колеса или ноги для передвижения. Они подходят для широкого спектра применений. Одним из многих примеров являются спасательные миссии в сейсмоопасных районах. Змеиный робот может проползти сквозь разрушенные здания в поисках людей, а также доставить им небольшое количество продовольствия или воды до прибытия спасателей. Робот может также использоваться для наблюдения и технического обслуживания сложных и потенциально опасных сооружений, таких как атомные станции или трубопроводы. В городе он может осмотреть канализационную систему в поисках утечек или помочь пожарным.

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

При стихийных бедствиях

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

После землетрясения пострадавшие могут быть погребены под развалинами, где спасение очень важно в первые 48 часов. Однако эти операции очень опасны для работников и даже для обученных полицейских собак. Кроме того, места, в которых обычно находится большинство жертв часто бывают недоступны с использованием традиционных методов и существующих технологий. Это важные причины, которые могут побудить исследователей направить усилия на разработку практических и полезных поисково-спасательных роботов, похожих на змей.

Читайте также:
Как бороться с пылью дома: лучшие способы

У роботов-змей большие возможности

У змеиных роботов большие возможности и может быть большое будущее (с точки зрения применимости).

Возможно, они будут более широко применяться в сельском хозяйстве, санитарии, пожаротушении, наблюдении и техническом обслуживании сложных и потенциально опасных сооружений или систем (атомные электростанции или трубопроводы), аварийно-спасательных и поисковых операциях, инспекции и обслуживании на промышленных предприятиях, археологических исследованиях и подводных операциях.

Робот-змея исследовал АЭС

Ранее в этом году Университет Карнеги-Меллон проверил практичность своего модульного робота-змеи путем испытания его в заброшенной атомной электростанции, где он сделал четкие, хорошо освещенные фотографии из внутренних труб.

Цвентендорфская атомная электростанция является идеальным полигоном для проверки роботов. Завод был построен в 1970-х годах, но никогда не работала, так что там нет никакого излучения. В последнее время было разработано несколько роботов для изучения атомной электростанции Фукусима, которая была повреждена в 2011 году от землетрясения и цунами. Однако большинство станций содержат много миль труб, поэтому другие роботы не могут провести соответствующий осмотр. Робот-змея, оснащенный камерой и светодиодами, встроенными в голову, пролез в пятнадцатисантиметровый паропровод, обеспечивая операторов четкими снимками о том, что внутри. Робот движется спиральными движениями, поэтому видеопоток автоматически корректируется программным обеспечением для согласования с гравитацией.

“Наш робот может пройти в местах, где не смогут люди, особенно в районах электростанций, загрязненных радиоактивно”, объясняет профессор робототехники Хоуи Чосет.

Робот, который всего 2 дюйма (5 см) в диаметре и 37 дюймов (97 см) в длину, имеет 16 суставов, что позволяет ему двигаться как змея не только вперед и назад, но и вверх или вниз. Единственная проблема в привязке к силовому и контрольному кабелю. Во время эксперимента исследователи проверили больше 18 метров (60 футов), но это далеко не предел. В будущем команда планирует сделать робота водонепроницаемым.

Опыт создания первого робота на Ардуино (робот-«охотник»)

В данной статье я хочу описать процесс сборки своего первого робота на ардуино. Материал будет полезен другим таким же новичкам, как и я, которые захотят изготовить какую-нибудь «самобеглую тележку». Статья представляет собой описание этапов работы с моими дополнениями по различным нюансам. Ссылка на итоговый код (скорее всего, не самый идеальный) дана в конце статьи.

По мере возможности я привлекал к участию своего сына (8 лет). Что именно с ним получалось, а что нет — на это я выделил часть статьи, возможно, кому-то пригодится.

Общее описание робота

Вначале несколько слов о самом роботе (идея). Собирать что-то типовое на старте не очень хотелось. В то же время, набор компонентов был довольно стандартным — шасси, двигатели, ультразвуковой датчик, датчик линии, светодиоды, пищалка. Вначале из этого «супового набора» был придуман робот, который охраняет свою территорию. Он едет на нарушителя, который пересек линию круга, а потом возвращается в центр. Однако в этом варианте была нужна прочерченная линия, плюс лишняя математика, чтобы постоянно оставаться в круге.

Поэтому после некоторых обдумываний я несколько изменил идею и решил делать робота-«охотника». На старте он поворачивается вокруг своей оси, выбирая поблизости цель (человека). Если «жертва» обнаружена, «охотник» включает мигалку и сирену, и начинает ехать на нее. Когда человек отходит/отбегает, робот выбирает новую цель и преследует ее, и так далее. Такому роботу не нужен ограниченный круг, и он может работать на открытой территории.

Читайте также:
Выбор, установка и подключение к электросети светодиодного светильника Армстронг

Как видите, это во многом напоминает игру «догонялки». Хотя в итоге робот и не получился достаточно резвым, но он честно взаимодействует с окружающими его людьми. Особенно это нравится детям (иногда, правда, кажется, что они вот-вот растопчут его, аж сердце ёкает. ). Думаю, для популяризации технического конструирования это хорошее решение.

Структура робота

Итак, мы определились с идеей, перейдем к компоновке. Список элементов формируется из того, что должен уметь робот. Тут всё вполне очевидно, поэтому сразу посмотрим на нумерацию:

«Мозги» робота — плата arduino uno (1); была в заказанном из Китая наборе. Для наших целей ее вполне хватает (ориентируемся на количество используемых пинов). Из этого же набора мы взяли готовое шасси (2), на которое крепятся два ведущих колеса (3) и одно заднее (свободно вращающееся) (4). Также в наборе был готовый батарейный отсек (5). Спереди у робота стоит ультразвуковой датчик (HC-SR04) (6), сзади — драйвер двигателей (L298N) (7), по центру — светодиод-мигалка (8), и чуть в стороне — пищалка (9).

На этапе компоновки мы смотрим:

— чтобы все влезло
— чтобы было сбалансировано
— чтобы было рационально размещено

Частично это уже сделали за нас китайские коллеги. Так, тяжелый батарейный отсек поставлен в центр, и примерно под ним стоят ведущие колеса. Все остальные платы легкие, их можно размещать по периферии.

  1. В шасси из набора есть много заводских отверстий, но какая в них логика — я так и не разобрался. Двигатели и аккумуляторный блок закрепились без проблем, дальше началась «подгонка» со сверлением новых отверстий, чтобы закрепить ту или иную плату.
  2. Весьма выручили латунные стойки и прочий крепеж из запасников (иногда приходилось выкручиваться).
  3. Шины от каждой платы пропускал через зажимы (опять же нашел в запасниках). Весьма удобно, все провода лежат красиво и не болтаются.

Отдельные блоки

Теперь пройдусь по блокам и расскажу персонально про каждый.

Батарейный отсек

Понятно, что робот должен иметь хороший источник энергии. Варианты могут быть разные, я выбрал вариант с 4 аккумуляторами АА. В сумме они дают примерно 5 В, и такое напряжение можно прямо подать на пин 5V платы arduino (минуя стабилизатор).

Некоторая настороженность, конечно, у меня была, но это решение вполне работоспособно.

Так как питание нужно везде, то для удобства я сделал по центру робота два разъема: один «раздает» землю (справа), а второй — 5 В (слева).

Двигатели и драйвер

Сначала про крепление двигателей. Крепление заводское, но сделано с большими допусками. Другими словами, двигатели могут «вихлять» на пару миллиметров влево-вправо. Для нашей задачи это не критично, а вот где-то может и влиять (робота начнет уводить в сторону). На всякий случай я выставил двигатели строго параллельно и зафиксировал клеем.

Для управления двигателями, как я писал выше, используется драйвер L298N. По документации у него три пина на каждый двигатель: один для изменения скорости и пара пинов для направления вращения. Тут есть один важный момент. Оказывается, если напряжение питания 5 В, то регулировка скорости просто не работает! То есть либо совсем не крутит, либо крутит по максимуму. Вот такая особенность, из-за которой я «убил» пару вечеров. В конце концов, нашел упоминание где-то на одном из форумов.

Вообще говоря, низкая скорость вращения мне требовалась при развороте робота — чтобы он имел запас времени просканировать пространство. Но, так как с такой задумкой ничего не вышло, пришлось делать по другому: небольшой поворот — остановка — поворот — остановка и т. д. Опять же, не столь изящно, но работоспособно.

Читайте также:
Балконные ограждения

Еще здесь добавлю, что после каждого преследования робот выбирает случайное направление нового поворота (по или против часовой стрелки).

Ультразвуковой датчик

Еще одна железяка, где пришлось искать компромиссное решение. Ультразвуковой датчик на реальных препятствиях дает нестабильные цифры. Собственно, это было ожидаемо. Идеально он работает где-нибудь на соревнованиях, где есть гладкие, ровные и перпендикулярные поверхности, а вот если перед ним «мелькают» чьи-то ноги — тут нужно вводить дополнительную обработку.

В качестве такой обработки я поставил медианный фильтр на три отсчета. Исходя из тестов на реальных детях (во время тестов ни один ребенок не пострадал!), его оказалось вполне достаточно для нормализации данных. Физика здесь простая: у нас есть сигналы, отраженные от нужных объектов (дающие требуемое расстояние) и отраженные от более далеких, например, стен. Вторые представляют собой случайные выбросы в измерениях вида 45, 46, 230, 46, 46, 45, 45, 310, 46… Именно их медианный фильтр и отсекает.

После всей обработки у нас получается расстояние до ближайшего объекта. Если оно меньше некоторой пороговой величины — тогда мы включаем сигнализацию и едем прямо на «нарушителя».

Мигалка и сирена

Пожалуй, самые простые элементы из всего перечисленного. Их видно на фотографиях выше. По железу здесь писать нечего, поэтому теперь перейдем к коду.

Программа управления

Расписывать детально код я смысла не вижу, кому нужно — ссылка в конце статьи, там всё достаточно читабельно. А вот общую структуру было бы неплохо объяснить.

Первое, что пришлось осмыслить: робот — это устройство реального времени. Точнее, вспомнить, потому что и раньше, и сейчас все равно занимаюсь электроникой. Значит, сразу забываем про вызов delay(), который очень любят использовать в скетчах-примерах, и который просто «замораживает» программу на указанный промежуток времени. Вместо этого, как советуют опытные люди, вводим таймеры на каждый блок. Прошел требуемый промежуток — выполнили действие (увеличили яркость светодиода, включили двигатель и так далее).

Таймеры могут быть взаимосвязаны. Так, например, пищалка работает синхронно с мигалкой. Это чуть упрощает программу.

Естественно, всё разбиваем на отдельные функции (мигалка, звук, поворот, движение вперед и так далее). Если так не делать, то потом уже не разобраться, что откуда и куда.

Нюансы педагогики

Все, что было описано выше, я делал в свободное время по вечерам. В неспешном режиме я потратил на робота где-то недели три. На этом можно было бы и завершиться, но я еще обещал вам рассказать о работе с ребенком. Что выполнимо в таком возрасте?

Работа по инструкции

Каждую деталь мы сначала проверяли отдельно — светодиоды, пищалка, моторы, датчики и т. д. Есть большое количество готовых примеров — какие-то прямо в среде разработки, другие можно найти в интернете. Это, несомненно, радует. Берем код, подключаем деталь, убеждаемся, что работает, далее уже начинаем изменять под свою задачу. Подключения по схеме и под некоторым моим контролем ребенок делает сам. Это хорошо. Работать четко по инструкции тоже надо уметь.

Порядок работы («от частного к общему»)

Читайте также:
Видео — утепление крыши и кровли

Вот это сложный пункт. Нужно приучать, что большой проект («сделать робота») состоит из мелких задач («подключить датчик», «подключить моторы». ), а те, в свою очередь, из еще более мелких шагов («найти программу», «подключить плату», «загрузить прошивку». ). Выполняя более-менее понятные задачи нижнего уровня, мы «закрываем» задачи среднего уровня, а из них уже складывается общий результат. Объяснял, но, думаю, осознание придет еще не скоро. Где-то, наверное, к подростковому возрасту.

Сверление, резьбы, винты, гайки, пайка и запах канифоли — куда же без этого. Ребенок получил базовый скилл «Работа с паяльником» — удалось спаять несколько соединений (я чуть-чуть помогал, не скрою). Не забывайте про объяснение техники безопасности.

Работа на компьютере

Программу для робота писал я, но каких-то попутных результатов все-таки удалось достичь.

Первое: английский. В школе его только-только начали, поэтому мы «со скрипом» разбирали, что такое pishalka, migalka, yarkost и прочий транслит. Поняли хотя бы это. Я осознанно не стал использовать родные английские слова, так как до этого уровня мы еще не дошли.

Второе: эффективная работа. Учили горячие комбинации клавиш, как быстро выполнять типовые операции. Периодически, когда писали программу, мы менялись с сыном местами, и я говорил, что нужно сделать (замену, поиск и т.д.). Приходилось повторять снова и снова: «выдели двойным кликом», «зажми Shift», «зажми Ctrl» и так далее. Процесс обучения здесь не быстрый, но, я думаю, навыки постепенно отложатся «в подкорку».

Третье: слепая печать. Комментарии в коде я доверил печатать ребенку (пусть тренируется). Сразу поставили правильно руки, чтобы пальцы постепенно запоминали расположение клавиш.

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

Кстати, про перспективу…

Дальнейшее развитие

Робот сделан, ездит, мигает и пищит. Что же теперь? Воодушевившись достигнутым, мы планируем дорабатывать его дальше. Есть задумка сделать дистанционное управление — по типу лунохода. Было бы интересно, сидя за условным пультом, контролировать движение робота, который ездит совсем в другом месте. Но это уже будет отдельная история…

И в конце, собственно, герои этой статьи (видео по клику):

Готовые Arduino роботы

Начинать изучать Arduino можно не только с самой платы и подробных видео-уроков, но и с покупки готового полноценного робота на базе этой платы. Для детей начальной школы или дошкольного возраста такое готовые проекты Arduino даже предпочтительней, т.к. «неожившая» плата выглядит скучновато. Такой способ подойдет и для тех, кого электрические схемы не особо привлекают.

Приобретая работающую модель робота, т.е. фактически готовую высокотехнологичную игрушку, можно разбудить интерес к самостоятельному проектированию и созданию роботов. Наигравшись в такую игрушку и разобравшись в том, как она работает, можно приступать к совершенствованию модели, разобрать все на части и начать собирать новые проекты на Arduino, используя высвободившиеся плату, приводы и датчики. Открытость платформы Arduino позволяет из одних и тех же составных частей мастерить себе новые игрушки.

Мы предлагаем небольшой обзор готовых роботов на плате Arduino.

Машинка на Arduino, управляемая через Bluetooth

Машинка, управляемая через Bluetooth, стоимостью чуть менее $100. Поставляется в разобранном виде. Помимо корпуса, мотора, колес, литиевой батарейки и зарядного устройства, получаем плату Arduino UNO328, контроллер мотора, Bluetooth адаптер, пульт дистанционного управления и прочее.

Видео с участием этого и еще одного робота:

Читайте также:
10 способов использования кофейной гущи в домашнем хозяйстве

Более подробное описание игрушки и возможность купить на сайте интернет-магазина DealExtreme.

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

Робот-черепаха Arduino

Комплект для сборки робота-черепахи стоимостью около $90. Не хватает только панциря, все остальное, необходимое для жизни этого героя, в комплекте: плата Arduino Uno, сервоприводы, датчики, модули слежения, ИК-приемник и пульт, батарея.

Черепаху можно купить на сайте DealExtreme, аналогичный более дешевый робот на Aliexpress.

Гусеничная машина на Arduino, управляемая с сотового телефона

Гусеничная машина, управляемая по Bluetooth с сотового телефона, стоимостью $94. Помимо гусеничной базы получаем плату Arduino Uno и плату расширения, Bluetooth плату, аккумулятор и зарядное устройство.

Гусеничную машину также можно купить на сайте DealExtreme, там же подробное описание. Может быть, более интересный железный Arduino-танк на Aliexpress.

Arduino-автомобиль, проезжающий лабиринты

Автомобиль, проезжающий лабиринты, стоимостью $83. Помимо моторов, платы Arduino Uno и прочего необходимого cодержит модули слежения и модули обхода препятствий.

Видео с этим роботом:

Страница машины на сайте DealExtreme, такой же робот на Aliexpress стоит чуть дороже.

Arduino насекомое

Оригинальный мини-робот насекомое на базе Arduino-совместимой схемы стоимостью менее $50. Помимо Arduino-совместимой платы имеет микросервоприводы и датчик для обнаружения препятствий.

Подробный обзор этого проекта на Arduino мы выполнили здесь. Приобрести можно на сайте DealExtreme или Aliexpress.

Готовый робот или каркас для робота

Помимо рассмотренного в обзоре варианта использования готовых комплектов для создания роботов Arduino, можно купить отдельно каркас (корпус) робота — это может быть платформа на колесиках или гусенице, гуманоид, паук и другие модели. В этом случае начинку робота придется делать самостоятельно. Обзор таких корпусов приведен в нашей статье.

Где еще купить готовых роботов

В обзоре мы выбрали наиболее дешевых и интересных на наш взгляд готовых Arduino-роботов из китайских интернет-магазинов. Если нет времени ждать посылку из Китая — большой выбор готовых роботов в интернет-магазинах Амперка и DESSY. Низкие цены и быструю доставку предлагает интернет-магазин ROBstore. Список рекомендованных магазинов здесь.

Возможно вас также заинтересуют наши обзоры проектов на Arduino:

  • Arduino робот-художник;
  • arduino-робот Sparki;
  • деревянный робот-машинка KAKU.
  • робот-насекомое.

Обучение Arduino

Не знаете, с чего начать изучение Arduino? Подумайте, что вам ближе — сборка собственных простых моделей и постепенное их усложнение или знакомство с более сложными, но готовыми решениями?

Посты по урокам:

  1. Первый урок: Светодиод.
  2. Второй урок: Кнопка.
  3. Третий урок: Потенциометр.
  4. Четвертый урок: Сервопривод.
  5. Пятый урок: Трехцветный светодиод.
  6. Шестой урок: Пьезоэлемент.
  7. Седьмой урок: Фоторезистор.
  8. Восьмой урок: Датчик движения (PIR) на Arduino. Автоматическая отправка E-mail.
  9. Девятый урок: Подключение датчика температуры и влажности DHT.

Все посты сайта “Занимательная робототехника” по тегу Arduino.

Все цены приведены по состоянию на 30.03.14. Фото с сайта DealExtreme.

Делаем самобалансирующего робота на Ардуино

Рассказываем о том как можно использовать Ардуино для создания самобалансирующего робота, который балансирует как Сигвей.

Как работает балансировка?

Сигвей от англ. Segway – двухколесное средство передвижения стоя, оснащенное электроприводом. Еще их называют гироскутерами или электрическими самокатами.

Вы когда-нибудь задумывались, как работает Сигвей? В этом уроке мы постараемся показать вам, как сделать робота Ардуино, который уравновешивает себя точно так же, как Segway.

Чтобы сбалансировать робота, двигатели должны противодействовать падению робота. Это действие требует обратной связи и корректирующих элементов.

Читайте также:
Инсталляция для подвесного унитаза

Элемент обратной связи – гироскоп-акселерометр MPU6050, который обеспечивает как ускорение, так и вращение во всех трех осях (основы MP26050 I2C). Ардуино использует это, чтобы знать текущую ориентацию робота. Корректирующим элементом является комбинация двигателя и колеса.

В итоге должен получиться примерно такой друг:

Схема робота

Сначала подключите MPU6050 к Ардуино и проверьте соединение, используя коды в этом учебном руководстве по интерфейсу IMU. Если данные теперь отображаются на последовательном мониторе, вы молодец!

Продолжайте подключать остальные компоненты, как показано выше. Модуль L298N может обеспечить +5В, необходимый для Ардуино, если его входное напряжение составляет +7В или выше. Тем не менее, мы выбрали отдельные источники питания для двигателя и схемы.

Создание робота

Корпус робота изготовлен в основном из акрилового пластика с двумя редукторными двигателями постоянного тока:

Основная печатная плата, состоящая из Arduino Nano и MPU6050:

Модуль драйвера двигателя L298N:

Мотор редуктора постоянного тока с колесом:

Самобалансирующийся робот по существу является перевернутым маятником. Он может быть лучше сбалансирован, если центр массы выше относительно колесных осей. Высший центр масс означает более высокий момент инерции массы, что соответствует более низкому угловому ускорению (более медленное падение). Вот почему мы положили батарейный блок на верх. Однако высота робота была выбрана исходя из наличия материалов 🙂

Завершенный вариант самостоятельно балансирующего робота можно посмотреть на рисунке выше. В верхней части находятся шесть Ni-Cd-батарей для питания печатной платы. В промежутках между моторами используется 9-вольтовая батарея для драйвера двигателя.

Теория

В теории управления, удерживая некоторую переменную (в данном случае позицию робота), требуется специальный контроллер, называемый ПИД (пропорциональная интегральная производная). Каждый из этих параметров имеет «прирост», обычно называемый Kp, Ki и Kd. PID обеспечивает коррекцию между желаемым значением (или входом) и фактическим значением (или выходом). Разница между входом и выходом называется «ошибкой».

ПИД-регулятор уменьшает погрешность до наименьшего возможного значения, постоянно регулируя выход. В нашем самобалансирующем роботе Arduino вход (который является желаемым наклоном в градусах) устанавливается программным обеспечением. MPU6050 считывает текущий наклон робота и подает его на алгоритм PID, который выполняет вычисления для управления двигателем и удерживает робота в вертикальном положении.

PID требует, чтобы значения Kp, Ki и Kd были настроены на оптимальные значения. Инженеры используют программное обеспечение, такое как MATLAB, для автоматического вычисления этих значений. К сожалению, мы не можем использовать MATLAB в нашем случае, потому что это еще больше усложнит проект. Вместо этого мы будем настраивать значения PID. Вот как это сделать:

  1. Сделайте Kp, Ki и Kd равными нулю.
  2. Отрегулируйте Kp. Слишком маленький Kp заставит робота упасть, потому что исправления недостаточно. Слишком много Kp заставляет робота идти дико вперед и назад. Хороший Kp сделает так, что робот будет совсем немного отклоняться назад и вперед (или немного осциллирует).
  3. Как только Kp установлен, отрегулируйте Kd. Хорошее значение Kd уменьшит колебания, пока робот не станет почти устойчивым. Кроме того, правильное Kd будет удерживать робота, даже если его толькать.
  4. Наконец, установите Ki. При включении робот будет колебаться, даже если Kp и Kd установлены, но будет стабилизироваться во времени. Правильное значение Ki сократит время, необходимое для стабилизации робота.

Поведение робота можно посмотреть ниже на видео:

Код Ардуино самобалансирующего робота

Нам понадобилось четыре внешних библиотеки, для создания нашего робота. Библиотека PID упрощает вычисление значений P, I и D. Библиотека LMotorController используется для управления двумя двигателями с модулем L298N. Библиотека I2Cdev и библиотека MPU6050_6_Axis_MotionApps20 предназначены для чтения данных с MPU6050. Вы можете загрузить код, включая библиотеки в этом репозитории.

Читайте также:
Виды креплений для установки микроволновки на стену

Значения Kp, Ki, Kd могут работать или не работать. Если они этого не делают, выполните шаги, описанные выше. Обратите внимание, что наклона в коде установлен на 173 градуса.

Вы можете изменить это значение, если хотите, но обратите внимание, что это угол наклона, которым должен поддерживаться роботом. Кроме того, если ваши двигатели слишком быстры, вы можете отрегулировать значения:

  1. motorSpeedFactorLeft
  2. motorSpeedFactorRight

Автономные роботы на контроллере Arduino

Робототехника становится частью быта человека. Пылесосы, кухонные комбайны, умные дома — все эти устройства работают за счет соединения сложной электроники и программного обеспечения. Но собрать простого робота можно и без помощи навыков программирования. Например, на основе платы Ардуино.

Что такое Ардуино?

С этим названием чаще всего ассоциируют программируемые печатные платы. Ардуино — это бренд, который принадлежит компании Arduino AG. Она основана в 2016 году, однако началом ее работы принято считать 2003 год. Тогда команда энтузиастов создала форк программно-аппаратной платформы Wiring, который был назван Arduino.

Справка! Основной разработчик и автор Arduino — Массимо Банци. Система написана на «С++». Аппаратная платформа — AVR.

Основные разработчики компании Arduino AG

Под Arduino принято понимать программно-аппаратную среду, при помощи которой можно прототипировать и строить различные модели в области радиоэлектроники, автоматики и робототехники. Проще говоря, Ардуино — это плата-контроллер, которая состоит из двух основных компонентов:

  • открытой программной оболочки (IDE);
  • аппаратной части, состоящей из готовых смонтированных печатных плат.

Система устроена так, чтобы пользователь смог построить простые автономные электронные системы с минимальным порогом знаний в области электроники и программировании.

Роботы на Arduino: описание и назначение

Если сравнить робота на Ардуино, например, с живым существом, то его смело можно назвать мозгом. Все проекты на данном контроллере можно разбить на две условные группы: простые и сложные. В зависимости от поставленной задачи потребуются разные платы:

Arduino Uno. Простая плата, которая подойдет для начального уровня. Очень простая и надежная. В качестве основы используется чип ATmega328 на тактовой частоте 16 МГц, 2 Кб оперативной памяти. 1 Кб EEPROM, 32 Кб на флеш. На плате распаяны 14 входов (выходов) для подключения сенсоров, приводов и других устройств в цифровом формате, а также 6 аналоговых входов. Этот контроллер подойдет для сборки простых роботов: пауков, машинок, манипуляторов и прочих.

Arduino Mega / Mega 2560. Подойдет для более сложных проектов. В данной плате есть большее количество входов и выходов: 48 и 54 (для Mega и Mega 2560 соответственно). Для нужд оперативной памяти отведено 8 Кб, 4 Кб EEPROM. Количество флеш-памяти: 128 Кб или 256 Кб (Mega 2560). Этот контроллер используют в сложных проектах, например для построения робота-пылесоса с несколькими датчиками ориентира в пространстве.

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

Готовые роботы на базе Arduino

Сегодня рынок радиоэлектроники переживает второе рождение. Это происходит не без участия компании Arduino AG. «Ардуино» внесла огромный вклад в развитие и продажу разных сервоприводов, датчиков, контроллеров и прочих элементов для сборки автономных систем. И, естественно, без нее практически невозможно представить современный мир робототехники. Готовые роботы на базе Arduino можно найти:

Читайте также:
Идеи применения малярной ленты в строительстве

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

2. В интернет-магазинах. Часто это киты-конструкторы в комплекте с обучающей литературой. Набор помогает разобраться в базовых принципах аппаратной и софтовой части Ардуино.

Роботы-игрушки. Разные машинки, гуманоидоподобные роботы. Продаются в виде кит-комплектов или разборных (готовых) моделей. Ими играют как есть, либо дополняют и модифицируют с помощью других компонентов и деталей.

Однако большую популярность имеют именно самодельные модели, которые изготавливают сами пользователи по готовым схемам.

Интересно! Ардуино имеет огромный успех именно в форме конструктора. Являясь основным контролером, он позволяет собирать сложные автономные системы, которые можно настроить под собственные нужды.

Проекты Arduino Robot

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

Интересно! В 2020 году группа энтузиастов запустила самодельный «черный ящик» на орбиту земли. В основе устройства лежал контроллер Arduino Mega 2560. Аппарат успешно выдержал испытание вакуумом, работая при температуре -50 °С.

Устройство «черного ящика» на орбите земли

В качестве примера рассмотрим схему построения детской игрушки с датчиками приближения (расстояния), двигателем для движения, сервоприводом и датчиками линии. Часто этот проект используют как основное шасси для более сложных моделей.

Устройство и особенности механизма автономного робота на Ардуино

При разработке или сборке робота на Ардуино, нужно учесть ряд особенностей:

  1. Контроллер не переносит большие нагрузки по току. Это нужно учитывать, например, при подключении мощного двигателя. Специально для этих целей используют «драйверы двигателя». Этот компонент поможет избежать перегрузок на основной плате.
  2. Питание. Чтобы робот был по-настоящему автономным, нужно подобрать правильный элемент питания. Здесь нужно отталкиваться от реального потребления всех компонентов, плюс учитывать параметры тока.
  3. Комплектующие. Все компоненты автономной системы должны быть рассчитаны заранее. То есть они должны работать в одной электросхеме с заданными параметрами. Данный фактор нужно учесть еще на этапе проектирования.

Это основные характеристики, которые стоит учесть при проектировании автономного робота на Ардуино.

Преимущества и перспектива роботов Ардуино

Платформа ежегодно развивается и растет. Компания разрабатывает новые печатные платы, сенсоры и датчики. К достоинствам Ардуино можно отнести:

  1. Низкую стоимость разработки. Основная плата обойдется в $20 — $25.
  2. Простой вход в теоретическую часть. Изучить базовые принципы программирования может даже школьник.
  3. Проект Ардуино полностью открыт. Его можно изменять и дополнять.
  4. Для постройки робота не нужен программатор.
  5. Кроссплатформенная среда разработки.

Контроллер набирает популярность во всем мире. Подтверждением этому могут стать тысячи сайтов с готовыми проектами, схемами и FAQ по данной системе. Стандартизация выводов и входов для подключаемых устройств делает Arduino довольно привлекательной для сторонних производителей техники.

Контроллер Ардуино — это самый бюджетный мостик в мир робототехники. Освоить базу можно за несколько недель. А первый робот обойдется всего в пару тысяч рублей, если собирать его самостоятельно.

  • 20 декабря 2020
  • 324
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Foundation-Stroy.ru
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: