» » » Собираем робота-художника на Arduino

Собираем робота-художника на Arduino

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

Материалы и инструменты для самоделки:
- железный конструктор (Mechanix kit);
- гайки и болты;
- прищепка (или другой держатель для карандаша);
- два колеса (для опор);
- контроллер типа Arduino uno;
- питание (источник 5В 2А);
- макетная плата;
- USB-кабель;
- три серводвигателя;
- дрель, отвертка, ключ;
- необходимое программное обеспечение (Arduino uno, Matlab).
Собираем робота-художника на Arduino

Процесс изготовления робота:

Шаг первый. Разработка механических элементов робота
Механическая часть собирается очень просто, это делается из конструктора. С такой задачей справится и пятилетний ребенок.
Собираем робота-художника на Arduino
Собираем робота-художника на Arduino
Собираем робота-художника на Arduino

1. В качалках от серводвигателя нужно просверлить два отверстия. Отверстия должны находиться на определенном расстоянии, каком именно, видно на фото.
2. Теперь нужно сделать крепеж для основания с приводом. Нужно просверлить четыре отверстия для крепления привода и затем зафиксировать его с помощью винтов. Привод будет использоваться в качестве неподвижного основания для робота-руки.
3. Алюминиевые звенья конструктора нужно прикрутить к качалкам приводов. Желательно, чтобы расстояние между качалками составляло 20 см.
4. Одну качалку нужно прикрепить к неподвижному основанию, а вторую ко второму двигателю. Перед тем как качалки будут зафиксированы, сервоприводы нужно откалибровать. Их нужно установить таким образом, чтобы вал находился под углом 90 градусов. Серводвигатель у основания должен располагаться параллельно звеньям, а привод на свободном конце должен быть размещен перпендикулярно.
5. Далее берутся звенья конструктора и крепятся параллельно к свободному концу и серводвигателю.
6. К нижней части конструкции нужно прикрепить колеса, они нужны для балансировки робота и его поддержки.
7. Последний мотор должен быть подключен к окончанию второго звена из пятого пункта.

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

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

Шаг второй. Электрическая схема робота
На рисунке можно увидеть, как подключается контроллер Arduino. Для подключения можно использовать макетную плату или же можно спаять шилд.
Собираем робота-художника на Arduino

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

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

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

Теперь можно переходить к настройке Matlab и Arduino для того чтобы код отрабатывал. Сперва в Matlab нужно установить плагин Arduino IO. Далее файл под названием arduino.m нужно заменить тем, который прикреплен проекту под точно таким названием.

Файлы finaldraw.m и draw.m нужно сохранить в директорию с Matlab. Файл под названием adioes.ino загружается на плату.
На следующем этапе нужно проверить, к какому порту подключена плата Arduino, открыть файл finaldraw.m и заменить порт COM3 на нужный.

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

Затем нужно открыть файл finaldraw.m и заменить там emma.png на название рисунка, который нужно нарисовать.
Как видно на картинке, в качестве теста используется фотография Эммы Уотсон.


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

adioes.rar [17,81 Kb] (cкачиваний: 216)
скачать dle 11.1смотреть фильмы бесплатно
Чтобы написать комментарий необходимо войти на сайт через соц. сети (или зарегистрироваться):
Обычная регистрация
1 комментарий
  1. Vladimir_2016
    здравствуйте! какие серводвигатели подойдут для данного робота?можно ли купить в интернет-магазине?
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Онлайн чат

Опрос
Сколько по времени, чаше всего, Вы делаете самоделку?

Последние комментарии

    Делаюсам
    Господа, очередная просьба к вам, "МИНУСИТАМ".Я не минусую вашу точку зрения, хотя она опирается не на личный опыт, а на "слышал-прочитал а интернете" и сделал свои выводы.
    voytan
    Я включаю воображение и делюсь с вами: возле станка на "козле" разматывается бабина с тросиком и подается на станок где происходит операция соединения т.е петля и обрезание , получается
    Делаюсам
    Старый я стал, совсем молодежь не понимаю. Сообразить не могу УЖе, какой должен быть простейший СТАНОЧЕК, который сможет..."тросик в ПВХ диаметром 2мм заводиться петлей и зажимается железной
    Делаюсам
    Цитата: ДелаюсамЦитата: ВалерийА зачем тут станок? Обычного рубанка хватит, если доска неструганая... А вы будете стругать разные доски (что попалось под руку) ? При этом со всех сторон и желательно
    pogranec
    А с чего она должна быть неструганая? Так можно дофантазировать, что дерево в лесу растет и из него кресло нужно сделать. Доска, скорей всего, с какой то тары.
Все комментарии

Комментаторы за месяц

Делаюсам Комментариев: 926 Публикаций: 31
1
Иван_Похмельев Комментариев: 868 Публикаций: 0
2
Валерий Комментариев: 1117 Публикаций: 33
3
pogranec Комментариев: 356 Публикаций: 144
4
alexgameplay Комментариев: 34 Публикаций: 6
5