top of page
Поиск
  • Фото автораpates00n

Робот-художник print3rbot. Программирование в среде LEGO Education EV3.

Обновлено: 6 дек. 2020 г.

 



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


Автором этого проекта является Christophe Avenel. Страничку проекта вы можете найти здесь.

Конструкция этого робота была переработана Алексеем Валуевым c целью его сборки из базового образовательного набора LEGO Mindstorms EV3 (45544). Инструкция по сборке такого робота вы можете найти здесь.

Но эта удачная конструкция, которую хочется повторить, отпугивает начинающих необходимостью программировать этот робот на языке Python, для чего надо установить Debian Linux на LEGO Mindstorms EV3.

Кроме того, надо создать SVG файл для прорисовки в программе Inkscape.

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


Я же предлагаю способ научить print3rbot рисовать в привычной среде визуального проектирования LEGO Education EV3.

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

 

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

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





1. Кинематическая схема робота-художника





















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

Для левого плеча звено с1 надо повернуть на угол α1+ α'1.

Для правого плеча звено с2 надо повернуть на угол α2+ α'2.


2. Формулы для расчёта углов поворота моторов







3. Рабочая зона print3rbot


Рабочая зона print3rbot ограничена сверху суммарной длиной двух звеньев, а снизу двумя окружностями:


За пределами рабочей зоны робот нарисовать не может, эта зона вне пределов его досягаемости. Поэтому нам надо вписать прямоугольное поле для рисунка внутрь рабочей зоны. Это поле должно быть с соотношением сторон 4х3, так как именно такое отношение сторон у поля Scratch 480х360, на котором мы будем создавать текстовый файл с координатами для нашего робота. У меня это поле рисунка получилось размером примерно 100х72 мм.


Точка с координатами (0,0) является точкой начала координат. Она лежит посередине отрезка линии, соединяющей оси ведущих 40-зубчатых шестерен.



Точка с координатами (0,100) является точкой парковки. Она совпадает с нижней точкой рабочей зоны и конструкция робота спроектирована так, что именно в этой точке срабатывают оба датчика касания робота.

Точка с координатами (0,180) является центром прямоугольного поля рисунка. И именно в эту точку нам надо перенести центр поля сцены Scratch - программы.


4. Перенос поля сцены Scratch в поле рисунка print3rbot

Сцена в Scratch – это прямоугольное поле с координатами:

по X - от -240 до +240

по Y – от -180 до +180

с началом координат (0,0) в центре данного прямоугольника


Нам же надо перенести его в поле рисунка 100х72 мм, причём центр этого поля будет в точке (0,180).


Тогда коэффициент масштабирования будет = 100/480 = 0,2083333333333333

а сдвиг по оси Y =180.

Вот так выглядит пересчёт координат X и Y в моём блоке XY_Angl 2:



Кроме блока XY_Angl 2, который выполняет пересчёт координат точки X,Y в углы поворотов моторов правого и левого плеча робота, программа ничем не отличается от программы для робота V-plotter, которая очень подробно рассмотрена в моём видео ролике "Программируем блок EV3 робота-художника". Поэтому нет смысла повторять этот обзор.


То же самое можно сказать и создании файла с координатами для робота-художника в среде программирования Scratch.

Файл с координатами, созданный этой программой, одинаково можно использовать как для робота V-plotter, так и для этого робота print3rbot.


5. Инструкция по созданию робота print3rbot.


1. Пользуясь инструкцией по сборке с сайта http://www.proghouse.ru соберите робота:


Подключите моторы и датчики в соответствии с рисунком:




2. Скачайте готовую программу print3r.ev3 и текстовые файлы с координатами:

3. Запустите среду программирования LEGO Education EV3, откройте проект print3r.ev3, и загрузите этот проект print3r.ev3 в блок EV3



4. Архив с текстовыми файлами координат содержит файлы для прорисовки трёх рисунков:


Выберите любой из трёх файлов pict_coord.rtf и загрузите его в блок EV3 в проект print3r. выбрав в меню Инструменты --> Обозреватель памяти:



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


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

Как это делать - подробно рассмотрено в моих двух видео на эту тему:








3 104 просмотра2 комментария

Недавние посты

Смотреть все

2 Comments


pates00n
pates00n
Nov 27, 2020

Здравствуйте. Можно спросить здесь, или по почте:

pates00n@gmail.com

Like

vdohnovenje
Nov 27, 2020

Здравствуйте! Спасибо за описание. Как с Вами связаться? есть вопросы по выставлению координат)

Like
bottom of page