Интересный робот-манипулятор на Arduino

Содержание

Робот-манипулятор на Arduino

Интересный робот-манипулятор на Arduino

Создаем робот-манипулятор с использованием дальномера, реализуем подсветку. Резать основание будем из акрила. В качестве двигателей используем сервопривода.

Общее описание проекта робота-манипулятора

В проекте использовано 6 серводвигателей. Для механической части использован акрил толщиной 2 миллиметра. В качестве штатива пригодилось основание от диско-шара (один из двигателей вмонтирован внутрь). Также использован ультразвуковой датчик расстояния и светодиод диаметром 10 мм.

Для управления роботом используется Arduino плата питания. Сам источник питания – блок питания компьютера.

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

Основные узлы для проекта манипулятора

Давайте начнем разработку. Вам понадобятся:

  • 6 серводвигателей (я использовал 2 модели mg946, 2 mg995, 2 futuba s3003 (mg995/mg946 по характеристикам лучше, чем futuba s3003, но последние намного дешевле);
  • акрил толщиной 2 миллиметра (и небольшой кусок толщиной 4 мм);
  • ультразвуковой датчик расстояния hc-sr04;
  • светодиды 10 мм (цвет – на ваше усмотрение);
  • штатив (используется в качестве основания);
  • схват аллюминиевый (стоит около 10-15 долларов).

Для управления:

  • Плата Arduino Uno (в проекте использована самодельная плата, которая полностью аналогична Arduino);
  • плата питания (вам придется ее сделать самим, к этому вопросу мы вернемся позже, он требует отдельного внимания);
  • блок питания (в данном случае используется блок питания компьютера);
  • компьютер для программирования вашего манипулятора (если вы используете для программирования Arduino, значит, среда Arduino IDE)

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

Сборка механической части

Перед началом разработки механической части манипулятора, стоит отметить, что чертежей у меня нет. Все узлы делались “на коленке”. Но принцип очень простой.

У вас есть два звена из акрила, между которыми надо установить серводвигатели. И другие два звенья. Тоже для установки двигателей. Ну и сам схват. Подобный схват проще всего купить в интеренете.

Практически все устанавливается с помощью винтов.

Длина первой части около 19 см; второй – около 17.5; длина переднего звена около 5.5 см. Остальные габариты подбирайте в соответсвии с размерами вашего проекта. В принципе, размеры остальных узлов не так важны.

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

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

Можно обойтись и без него.

Для установки ультразвукового датчика, используется акрил толщиной 2 мм. Тут же снизу можно установить светодиод.

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

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

После сборки механической части, мы можем перейти к “мозгам” нашего манипулятора.

Схват манипулятора

Для установки схвата вам понадобится серводвигатель и несколько винтов.

Итак, что именно необходимо сделать.

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

После установки сервы, проворачиваете ее в крайнее левое положение и сжимаете губки схвата.

Теперь можно установить серву на 4 болта. При этом следите, чтобы двигатель был все так же в крайнем левом положении, а губки схвата закрыты.

Можно подключить сервопривод к плате Arduino и проверить работоспособность схвата.

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

Добавление подсветки на манипулятор

Можно сделать ваш проект ярче, добавив на него подсветку. Для этого использовались светодиоды. Делается несложно, а в темноте выглядит очень эффектно.

Места для установки светодиодов зависят от вашего креатива и фантазии.

Электросхема

Можно использовать вместо резистора R1 потенциометр на 100 кОм для регулировки яркости вручную. В качестве сопротивлени R2 использовались резисторы на 118 Ом.

Перечень основных узлов, которые использовались:

  • R1 – резистор на 100 кОм
  • R2 – резистор на 118 Ом
  • Транзистор bc547
  • Фоторезистор
  • 7 светодиодов
  • Переключатель
  • Подключение к плате Arduino

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

Подключив мультиметр к красному и черному кабелям, вы увидите 5 вольт (которые используются для серводвигателей и ультразвукового датчика расстояния). Желтый и черный дадут вам 12 вольт (для Arduino).

Делаем 5 коннекторов для сервомоторов, параллельно подключаем позитивные к 5 В, а негативные – к земле. Аналогично с датчиком расстояния.

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

Кроме того, на плате питания был установлен светодиод-индикатор питания. Реализуется это несложно. Дополнительно использовался резистор на 100 Ом между 5 В и землей.

10 миллиметровый светодиод на роботе тоже подключен к Arduino. Резистор на 100 Ом идет от 13 пина к к позитивной ноге светодиода. Негативный – к земле. В программе его можно отключить.

Для 6 серводвигателей использовано 6 коннекторов, так как 2 серводвигателя снизу используют одинаковый сигнал управления. Соответствующие проводники соединяются и подключаются к одному пину.

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

Обратите внимание, что коннекторы от серв подключаются к ШИМ-выходам Arduino. Возле каждого такого пина на плате есть условное обозначение ~. Ультразвуковой датчик расттояния можно подключить к пинам 6, 7. Светодиод – к 13 пину и земле. Это все пины, которые нам понадобятся.

Теперь мы можем перейти к программированию Arduino.

Перед тем как подключить плату через usb к компьютеру, убедитесь, что вы отключили питание. Когда будете тестировать программу, также отключайте питание вашей робо-руки. Если питание не выключить, Arduino получит 5 вольт от usb и 12 вольт от блока питания. Соответственно, мощность от usb перекинется к источнику питания и он немного “просядет”.

На схеме подключения видно, что были добавлены потенциометры для управления сервами. Потенциометры не являются обязательным звеном, но приведенный код не будет работать без них. Потенциометры можно подключить к пинам 0,1,2,3 и 4.

#define trigPin 7                            //toevoegen aan code#define echoPin 6         #define led 13

#include

Источник: http://mikrobord.do.am/blog/robot_manipuljator_na_arduino/2016-11-07-7

Сборка робота-манипулятора. Часть 1

Интересный робот-манипулятор на Arduino

Для сборки нам понадобится крепеж для сборки

Наименование Количество, шт.
1Гайка М310
2Винт М3х69
3Винт М3х810
4Винт М3х105
5Винт М3х127
6Винт М3х204

:

Шаг 1

ВНИМАНИЕ!!! Если Вы используете для сборки Микросервопривод MG90S, необходимо отклеить с него наклейки!!! в противном случае он будет очень туго устанавливаться, в результате чего можете поломать крепеж!

Список деталей к Шагу 1.

Номер позиции Количество Название
11Основание
34М3х20мм винт
44М3 гайка
51Опорная пластина
61Крепление
71Сервопривод
82М3×8мм винт

Шаг 2

Список деталей к Шагу 2.

Номер позиции Количество Название
12М3 гайка
21Крепление
31Сервопривод
42М3х8 винт
51Основа левой руки
61Параллельное крепление
71Рычаг руки
81М3×6мм винт
91Серво рычаг
102М3х12мм винт
111Осевой серверный винт
121Фиксирующий серверный винт

Шаг 3

Список деталей к Шагу 3.

Номер позиции Количество Название
12М3 гайка
21Крепление
31Сервопривод
42М3х8 винт
51Параллельное крепление
61М3х6мм винт
71Серво рычаг
82М3×6мм винт
91Рычаг правой руки
101Основание правой руки
111Осевой серверный винт
121Фиксирующий серверный винт

Шаг 4

Список деталей к Шагу 4.

Номер позиции Количество Название
11Крепление вкладки левой руки
21М3х6мм винт
31Балка левой руки
41Верхняя крышка
51Двойной серво рычаг
62Фиксирующий серверный винт.

Шаг 5

Список деталей к Шагу 5.

Номер позиции Количество Название
12М3 гайка
22М3х12мм винт
31Траверса основания манипулятора
41Соединительное ребро жесткости

Шаг 6

Список деталей к Шагу 6.

Номер позиции Количество Название
12М3×6мм винт
21Фиксирующий серверный винт
31Балка левого запястья

Шаг 7

Список деталей к Шагу 7.

Номер позиции Количество Название
11Параллельная балка
21М3х6мм винт
31Коннектор
41Балка правого запястья
51Прокладка
62M3x10 винт

Шаг 8

Список деталей к Шагу 8.

Номер позиции Количество Название
11Левый захват
21Правый захват
31Приводной рычаг
41Левое крепление запястья
51Правое крепление запястья
61Нижнее крепление сервопривода
71Верхнее крепление сервопривода.
81Приводной рычаг
91Осевой серверный винт.
101Серво рычаг
111Сервопривод
124М3х8мм
133М3х6мм
141Фиксирующий серверный винт
151М3х12мм винт
162Прокладка

Шаг 9

Список деталей к Шагу 9.

Номер позиции Количество Название
11Прокладка
23М3х10мм винт

Вы можете скачивать данную инструкцию по ссылке: Сборка робота-манипулятора. Часть 1

Источник: https://lesson.iarduino.ru/page/sborka-robota-manipulyatora-chast-1/

Настольная робо-рука манипулятор из оргстекла на сервоприводах своими руками или реверс-инжиниринг uArm

Интересный робот-манипулятор на Arduino

Привет, гиктаймс!

Хочу поделиться с вами результатами реверс-инжиниринга uArm – простого настольно манипулятора из оргстекла на сервоприводах.

Проект uArm от uFactory собрал средства на кикстартере уже больше двух лет назад.

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

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

Сейчас моя робо-рука выглядит так:

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

Пробы и ошибки

Начиная работать над чертежами, я хотел не просто повторить uArm, а улучшить его. Мне казалось, что в моих условиях вполне можно обойтись без подшипников. Так же мне не нравилось то, что электроника вращается вместе со всем манипулятором и хотелось упростить конструкцию нижней части шарнира. Плюс я начал рисовать его сразу немного меньше.

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

Как правило, механика которую я рисовал до манипулятора, была достаточно простая, и мне не приходилось задумываться о процессе сборки. Но все-таки я его собрал и попробовал запустить, И рука почти не двигалась! Все детли крутились вокруг винтов и, сли я затягивал их так, чтобы было меньше люфтов, она не могла двигаться.

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

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

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

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

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

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

Меня удручает то, что я не смог привнести ничего принципиально нового в проект uArm. К тому времени, как я начал рисовать финальную версию, они уже выкатили 3D-модели на GrabCad. В итоге я только немного упростил клешню, подготовил файлы в удобном формате и применил очень простые и стандартные комплектующие.

Особенности манипулятора

До появления uArm, настольные манипуляторы подобного класса выглядели достаточно уныло.

У них либо не было электроники вообще, либо было какое-нибудь управление с резисторами, либо было свое проприетарное ПО.

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

  1. Система тяг, позволяющих разместить мощные я тяжелые двигатели в основании манипулятора, а также удерживающие захват параллельно или перпендикулярно основанию
  2. Простой набор комплектующих, которые легко купить или вырезать из оргстекла
  3. Подшипники почти во всех узлах манипулятора
  4. Простота сборки. Это оказалось действительно сложной задачей. Особенно трудно было продумать процесс сборки основания
  5. Положение захвата можно менять на 90 градусов
  6. Открытые исходники и документация. Все подготовлено в доступных форматах. Я дам ссылки для скачивания на 3D-модели, файлы для резки, список материалов, электронику и софт
  7. Arduino-совместимость. Есть много противников Arduino, но я считаю, что это возможность расширения аудитории. Профессионалы вполне могут написать свой софт на C — это же обычный контроллер от Atmel!

Механика

Для сборки необходимо вырезать детали из оргстекла толщиной 5мм:

… и 3мм:

С меня за резку всех этих деталей взяли около $10.

Основание монтируется на большом подшипнике:

Особенно трудно было продумать основание с точки зрения процесса сборки, но я подглядывал за инженерами из uArm. Качалки сидят на штифте диаметром 6мм. Надо отметить, что тяга локтя у меня держится на П-образном держателе, а у uFactory на Г-образном. Трудно объяснить в чем разница, но я считаю у меня получилось лучше.

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

В конце статьи я дам ссылку на суперподробную инструкцию по сборке в фотографиях. За пару часов можно уверенно все это скрутить, если все необходимое есть под рукой. Также я подготовил 3D-модель в бесплатной программе SketchUp. Её можно скачать, покрутить и посмотреть что и как собрано.

Электроника

Чтобы заставить руку работать достаточно всего навсего подключить пять сервоприводов к Arduino и подать на них питание с хорошего источника. У uArm использованы какие-то двигатели с обратной связью. Я поставил три обычных двигателя MG995 и два маленьких двигателя с металлическим редуктором для управления захватом.

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

С другой стороны как-то раз мне подвернулась возможность дешево изготовить платы (о чем я тоже писал).

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

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

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

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

Программирование

Самое интересное, это управление манипулятором с компьютера. У uArm есть удобное приложение для управления манипулятором и протокол для работы с ним. Компьютер отправляет в COM-порт 11 байт.

Первый из них всегда 0xFF, второй 0xAA и некоторые из оставшихся — сигналы для сервоприводов. Далее эти данные нормализуются и отдаются на отработку двигателям.

У меня сервоприводы подключены к цифровым входам/выходам 9-12, но это легко можно поменять.

Терминальная программа от uArm позволяет позволяет изменять пять параметров при управлении мышью. При движении мыши по поверхности изменяется положение манипулятора в плоскости XY.

Вращение колесика — изменение высоты. ЛКМ/ПКМ — сжать/разжать клешню. ПКМ + колесико — поворот захвата. На самом деле очень удобно.

При желании можно написать любой терминальный софт, который будет общаться с манипулятором по такому же протоколу.

Я буду здесб приводить скетчи — скачать их можно будет в конце статьи.

работы

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

Ссылки

Файлы для резки оргстекла, 3D-модели, список для покупки, чертежи платы и софт можно скачать в конце моей основной статьи.
Подробная инструкция по сборке в фотографиях (осторожно, траффик).

ssg1712

Источник

Источник: https://www.pvsm.ru/arduino/106172

Арт-робот на базе Ардуино своими руками

Интересный робот-манипулятор на Arduino

Перевёл alexlevchenko для mozgochiny.ru

Доброго времени суток! Перед вами, дорогие мозгочины, арт-робот, который может разрисовывать различные сферические или яйцевидные предметы размером от 4 до 9 см.

Для его изготовления понадобится 3D-принтер, набор стандартных инструментов + Arduino.

Примечание: Не стоит ставить крест на проектах, в которых используются 3D-принтер. При желании всегда можно найти место или способ, где можно заказать печать необходимых для проекта деталей.

Шаг 1: Немного о роботе

Арт-робот — двухосевая самоделка, которая может наносить рисунок на большинстве сферических поверхностей. Робот настраивается под определённый тип предмета (шары для пинг-понга, рождественские украшения, лампочки и яйца (утиные, гусиные, куриные …).

Для вращения сферического предмета и перемещения манипулятора используются высокоточные шаговые двигатели с высоким крутящим моментом, а для подъёма механизма ручки — тихий и надежный сервопривод SG90.

Шаг 2: Необходимые детали

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

  • 2x подшипника 623;
  • Шпилька диаметром 3 мм и длиной 80-90 мм;
  • 1x пружина (длиной 10 мм и диаметром 4,5 мм);
  • 2x шаговых двигателя NEMA 17 (крутящий момент 4,4 кг / см);
  • Кабели для двигателей (длиной 14 + 70 см);
  • USB-кабель;
  • 1x сервопривод SG90;
  • Arduino Leonardo;
  • shield JJRobots;
  • 2xA4988 драйвера для шаговых двигателей;
  • Блок питания 12В / 2A;
  • 11x винтов M3 6 мм ;
  • 4x винта M3 16 мм;
  • 4x гайки M3;
  • 2x 20-мм присоски;
  • 1x гайка-барашек M3;
  • 1x маркер;
  • Части напечатанные на 3D-принтере.

Шаг 3: Общая схема

В качестве «шпаргалки» можете воспользоваться данной схемой.

Шаг 4: Давайте начинать!

Робот двигает манипулятором, с закрепленным на нём маркером, что приводится в действие шаговым двигателем. Другой шаговый двигатель отвечает за поворот объекта, на который наносится рисунок (яйцо, шарик …).

Для удерживания предмета на месте используются две присоски: одна, прикрепленная к шаговому двигателю, а другая на противоположной стороне предмета. Маленькая пружина будет давить на присоску, помогая ей удерживать предмет.

Для поднятия/опускания маркера используется сервопривод SG90.

Шаг 5: Манипулятор

Установим гайку в отверстие, подготовленное для неё и закрутим 16 мм винт. Сделаем то же самое для держателя предметов (справа на изображении выше). При создании шарнира для манипулятора использовались 2 16 мм винта. Этот шарнир должен свободно вращаться после закручивания винтов.

Шаг 6: Присоски

Установим одну из присосок внутрь отверстия в держателе предметов.

Шаг 7: Крепление шаговых двигателей

Закрепим оба шаговых двигателя к основной раме с помощью 8-ми винтов.

Шаг 8: Ось вращения

Разместим все элементы, как показано на изображении выше.

  • Присоска;
  • Гайка;
  • Верхняя часть;
  • Пружина;
  • Подшипник 623 (должен быть встроен в левую чашку);
  • Левая чашка;
  • Свободное пространство для основной рамы;
  • Правая чашка;
  • Подшипник 623;
  • Разделительное кольцо;
  • Гайка-барашек (M3).

Шаг 9: Размещаем все по своим местам

Вставим собранный манипулятор на ось шагового двигателя.

Установим левую опору на ось шагового двигателя.

Маркер и яйцо установлены в качестве примера (сейчас размещать их не нужно).

ПРИМЕЧАНИЕ: Сервопривод потребует корректировок. Нужно будет повторно установить его угол во время процесса калибровки.

Шаг 10: Электроника

Закрепим электронику на тыльной стороне основной рамы с помощью винтов (2-х будет достаточно).

Подключим кабеля.

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

Шаг 11: Программирование Arduino Leonardo

Запрограммируем Arduino Leonardo с помощью программной среды Arduino IDE (v 1.8.1).

  • Загрузим Arduino IDE (v 1.8.1) и установим программу;
  • Запустим программное обеспечение. Выберем плату Arduino Leonardo и соответствующий COM-ПОРТ в меню «tools-> board»;
  • Откроем и загрузим код Sphere-O-Bot. Распакуем все файлы внутрь одной папки и назовём её «Ejjduino_ARDUINO».

Шаг 13: Управление роботом

Программное обеспечение Inkscape. Загрузим и установим программное обеспечение Inkscape (рекомендую стабильную версию 0.91).

Загрузим и установим расширение EggBot Control (версия 2.4.0 была полностью протестирована).

Расширение EggBot Control для Inkscape — это инструмент, который необходимо использовать при тестировании и калибровке EggBot, а также перенесении рисунки на яйцо. Сначала нужно запустить Inkscape.

После запуска Inkscape появится меню «Расширения», а в нём уже нужно выбрать подменю «Eggbot». Если не видите подменю Eggbot, то вы неправильно установили расширения.

Выполните резервное копирование и внимательно следуйте инструкциям по установке расширений.

На этом всё, спасибо за внимание!)

Sphere-O-Bot-CODE_ARDUINO — программное обеспечение

Sphere-O-Bot_eggbot_MOD

Руководство по сборке на англ

(A-z Source)

Источник: http://mozgochiny.ru/electronics-2/art-robot-na-baze-arduino-svoimi-rukami/

Программирование и первый запуск

Для управления использовано 5 потенциометров (вполне можно заменить это на 1 потенциометр и два джойстика). Схема подключения с потенциометрами приведена в предыдущей части. Скетч для Arduino находится здесь.

Снизу представлены несколько видео робота-манипулятора в работе. Надеюсь, вам понравится.

На видео сверху представлены последние модификации арма. Пришлось немного изменить конструкцию и заменить несколько деталей. Оказалось, что сервы futuba s3003 слабоваты. Их получилось использовать только для схвата или поворота руки. Так что виесто них были установлены mg995. Ну а mg946 вообще будут отличным вариантом.

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

// управляются привода с помощью переменных резисторов – потенциометров.

#include

int led = 13;

Servo myservo1;

Servo myservo2;

Servo myservo3;

Servo myservo4;

Servo myservo5;

int potpin = 0; // аналоговый пин для подключения потенциометра

int potpin1 =1;

int potpin2 =2;

int potpin3 =3;

int potpin4 =4;

int val; // переменная для считывания данных с аналогового пина

void setup()

{

myservo1.attach(3);

myservo2.attach(5);

myservo3.attach(9);

myservo4.attach(10);

myservo5.attach(11);

pinMode(led, OUTPUT);

}

void loop()

{ //servo 1 analog pin 0

val = analogRead(potpin); // считывает значение потенциометра (значение между 0 и 1023)

val = map(val, 0, 1023, 0, 179); // масштабирует полученное значение для использования с сервами (получаем значение в диапазоне от 0 до 180)

myservo1.write(val); // выводит серву в позицию в соответствии с рассчитанным значением

delay(15); // ждет, пока серводвигатель выйдет в заданное положение

val = analogRead(potpin1); // серва 2 на аналоговом пине 1

val = map(val, 0, 1023, 0, 179);

myservo2.write(val);

delay(15);

val = analogRead(potpin2); // серва 3 на аналоговом пине 2

val = map(val, 0, 1023, 0, 179);

myservo3.write(val);

delay(15);

val = analogRead(potpin3); // серва 4 на аналоговом пине 3

val = map(val, 0, 1023, 0, 179);

myservo4.write(val);

delay(15);

val = analogRead(potpin4); //серва 5 на аналоговом пине 4

val = map(val, 0, 1023, 0, 179);

myservo5.write(val);

delay(15);

}

Скачать исходник кода

Скетч с использованием ультразвукового датчика расстояния

Это, наверное, одна из самых эффектных частей проекта. На манипулятор устанавливается датчик расстояния, который реагирует на препятствия вокруг.

Основные пояснения к коду представлены ниже

#define trigPin 7

#define echoPin 6

#define led 13

#include

Мы добавили в наш код серводвигатели, светодиод и датчик расстояния. Здесь изменять ничего не надо.

Следующий кусок кода:

Servo myservo1;

Servo myservo2;

Servo myservo3;

Servo myservo4;

Servo myservo5;

Мы присвоили всем 5-ти сигналам (для 6 приводов) названия (могут быть любыми)

Следующее:

void setup() {

Serial.begin (9600);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);

pinMode(led, OUTPUT);

myservo1.attach(3);

myservo2.attach(5);

myservo3.attach(9);

myservo4.attach(10);

myservo5.attach(11);

}

Мы сообщаем плате Arduino к каким пинам подключены светодиоды, серводвигатели и датчик расстояния. Изменять здесь ничего не стоит.

Идем дальше:

void position1(){

digitalWrite(led, HIGH);

myservo2.writeMicroseconds(1300);

myservo3.writeMicroseconds(1300);

myservo4.writeMicroseconds(800);

myservo5.writeMicroseconds(1000);

}

Здесь кое-что можно менять. Я задал позицию и назвал ее position1. Она будет использована в дальнейшей программе. Если вы хотите обеспечить другое движение, измените значения в скобках в диапазоне от 0 до 3000.

После этого:

void position2(){

digitalWrite(led,LOW);

myservo2.writeMicroseconds(1200);

myservo3.writeMicroseconds(1300);

myservo4.writeMicroseconds(1400);

myservo5.writeMicroseconds(2200);

}

Аналогично предыдущему куску, только в данном случае это position2. По такому же принципу вы можете добавлять новые положения для перемещения.

Дальше будет следующая запись:

void loop() {

long duration, distance;

digitalWrite(trigPin, LOW);

delayMicroseconds(2);

digitalWrite(trigPin, HIGH);

delayMicroseconds(10);

digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);

distance = (duration/2) / 29.1;

Теперь начинает отрабатывать основной код программы. Не стоит его изменять. Основная задача приведенных выше строк – настройка датчика расстояния.

После этого:

if (distance

Источник: http://arduino-diy.com/arduino-robot-manipulyator

Что купить вместо Arduino Starter Kit: обзор готовых ардуино-роботов

Интересный робот-манипулятор на Arduino

Обычно знакомство с ардуино-совместимыми платами начинается с набора Arduino Starter Kit, но можно идти по пути обратного инжиниринга и купить готового робота. В сегодняшнем обзоре 5 образовательных моделей.

Чтобы начать изучение Arduino самостоятельно можно купить набор Arduino Starter Kit и воспользоваться онлайн-уроками для начинающих.

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

Любой вариант подойдет для первого знакомства. Очень удобны для освоения и при этом дешево стоят наборы производства Maker Studio:

Вы можете ознакомится с нашим подробным обзором, как выбрать и купить Arduino начинающему.

Но можно приступить к обучению и с другой стороны — купить готового робота. Для школьников это может быть более интересно. Собрать готовую модель и воспользоваться уже написанным программным кодом легче, чем создать робота с нуля. Игра и природная любознательность подтолкнут к обучению.

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

Робот-автомобиль, управляемый по Bluetooth

В предыдущий обзор готовых Arduino-роботов был включен 4WD-автомобиль. 2WD-модификация дешевле. Такая машинка, управляемая по bluetooth, стоит $59. Производство Maker Studio.

2WD робот-машинка с управлением по Bluetooth. Фото Aliexpress.

Фото робота-машинки в разобранном виде:

2WD робот-машинка с управлением по Bluetooth в разобранном виде. Фото Aliexpress.

В наборе есть все для сборки корпуса, включая отвертку, колеса, зарядное устройство для аккумуляторов, электронные компоненты: плата аналог Arduino UNO, плата прототипирования, драйвер моторов, ультразвуковой дальномер, датчик линии, Bluetooth-модуль.

Гусеничный робот (танк)

Классический ардуино-робот на гусеничном шасси компании Dagu Electronics идеально подходит для любого небольшого робототехнического проекта. Ардуино-танк поставляется в 4 различных конфигурациях.

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

В наборе кроме деталей корпуса,кронштейнов и гусениц: плата-аналог Arduino, ультразвуковой датчик расстояния, датчик Холла.

Робот-танк Dagu. Фото Aliexpress.

с этим роботом:

Робот-танк Dagu можно купить на Aliexpess за $160.

Шестиногий робот-паук

Этот робот-гексапод производства Dagu Electronics имеет 12 степеней свободы.  Шасси простое, сделано дешево, насколько это только возможно.

Управление может осуществляться, например, при помощи пульта дистанционного управления от телевизора. Основа корпуса выполнена из акрилового листа. Для управления ногами используются 12 сервоприводов.

Обратите внимание, что плата c контроллером, изображенная на фотографии, не входит в комплект. Ее нужно покупать отдельно.

Можно использовать различные платы, но производитель рекомендует специализированный контроллер DAGU-паук (ATMEGA 1280 16 мГц). Его стоимость $65.

Робот-гексапод Dagu. Фото Aliexpress.

:

Шестиногого робота-паука можно купить на Aliexpress за 150 долларов.

Робот рука-манипулятор

Роботизированная рука — автоматизированное механическое устройство, в настоящее время наиболее широкий применяемое в различных областях: промышленное производство, конвейеры, лечение, развлекательные услуги, военная разведка, космос и т.д. Этот алюминиевый манипулятор имеет 6 степеней свободы. Коготь позволяет захватывать предметы. Для управления используется плата-аналог Arduino.

Роботизированная рука-манипулятор. Фото Aliexpress.

Роботизированная рука может быть установлена стационарно или на шасси (не включено в комплект). Если закрепить манипулятор на шасси, получится такой робот:

Робот шасси с рукой-манипулятором. Фото Aliexpress.

:

Стоимость роботизированной руки на Aliexpress $218.

BalanBot — балансирующий робот

Балансирующий ардуино-робот — интересная образовательная игрушка. Что подарить ребенку? Возможно, BalanBot производства Maker Studio — отличная идея.

Балансирующий arduino-робот. Фото Aliexpress.

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

Балансирующий arduino-робот в разобранном виде. Фото indiegogo.com.

Помимо деталей корпуса, двигателей, платы аналога Arduino Uno R3 в набор  входит специализированная плата расширения (шилд). Шилд содержит модуль MPU6050 — 3-х осевой гироскоп и 3-х осевой акселерометр, а также драйвер L298P — для подключения моторов.

:

Дополнительно можно приобрести Bluetooth-модуль и модуль Wi Fi. Это позволит управлять роботом со смартфона. Производитель придерживается принципов Open Source, предоставляет исходный код и приложение для мобильных устройств.

Балансирующий робот стоит $129 на Aliexpress.

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

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

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

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

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

Обучение Arduino

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

Учебный курс “Arduino для начинающих”: главная страница.

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

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

Список рекомендованных магазинов.

Все цены приведены на дату публикации поста.

Александр С. Гагарин.

arduino, arduino проект, headline, балансирующий робот, видео, выбор, для начинающих, игрушки, конструкторы, корпус, обзор, паук, подарки, робот-танк, роботизированная рука

Источник: http://edurobots.ru/2015/04/chto-kupit-kupit-vmesto-arduino-starter-kit-obzor-gotovyx-arduino-robotov/

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.