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

Робот-художник на тележке. | MOC

Обновлено: 30 нояб. 2020 г.

Робот-художник на тележке, который рисует картинки на листе бумаги формата А4.


Это моя конструкция, так что смело могу добавить к названию буквы MOC (My Own Creation).

Вообще-то, если быть точнее, что-то похожее я видел у Карандаша-Самоделкина в видеоролике https://www.youtube.com/watch?v=jxIhz4zHlMs&t=95s .

Но пару замечаний не с целью критики, а почему та конструкция меня не устроила.

Как видно из ролика, тот робот рисовал только буквы.

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

И ещё, отсутствие понижающей передачи для поворотного плеча приведёт к недостаточной точности (с моей точки зрения) позиционирования пера, порядка 2-3 мм. Но если рисунок будет несложный и на нём не будет мелких деталей, то этого вполне хватит.

Поэтому я свой робот поставил на рельсу из гусеницы, чтобы избежать углового смещения оси вперёд-назад, и добавил понижающие передачи и для мотора вперёд-назад, и для мотора поворота плеча робота.



В чём идея такого робота?

Робот катается вперёд-назад вдоль оси Y.

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

А длина рабочей зоны, то есть полоса в направлении вперёд-назад, ничем не ограничена. Если у вас робот будет ехать 100 метров, то и эта полоса будет тоже 100 метров. У меня она ограничена длиной рельсы, то есть чтобы робот рисовал на листе формата А4, а дальше увеличивать эту длину для моего робота смысла нет.

При движении робота вперёд-назад точка шарнира поворотного плеча робота всегда находится на оси Y.

Чтобы подвести перо к заданной точке, робот должен подъехать по оси Y на определённое расстояние и повернуть плечо L на определённый угол. Какое именно расстояние и какой именно угол – это и является нашей задачей.

Это можно найти, если посмотреть на кинематическую схему робота:


Наша задача заключается в том, что координаты точки (x,y) надо перевести в углы поворота моторов робота. То есть на какой угол надо повернуть мотор тележки, чтобы она проехала длину y2 и на какой угол angl повернуть плечо L, чтобы подвести перо к точке с координатами (x,y).

Из схемы видно, что катеты x, y1 и гипотенуза L образуют прямоугольный треугольник.

Тогда мы можем найти катет y1:




Расстояние y2, которое должен проехать робот:

y2 = y – y1


И угол angl, на который надо повернуть плечо L:

angl = arctg(x / y1)


Эти формулы и являются расчётными для углов поворота моторов робота.

Подставим в эти формулы конкретные значения длин в миллиметрах и передаточных коэффициентов шестерёнчатых передач моего робота:

Длина плеча L = 120 мм

Диаметр колеса тележки примерно 40 мм.

Длина окружности = π * 40 = 120 мм


Тогда из пропорции:

360˚ - 120 мм

x˚ - y2 мм


находим угол поворота мотора А x˚ = y2 * 360 /120 = y2 * 3


С учётом передаточного числа = 5:


и направления вращения мотора А, окончательное выражение y2 * 3 * (-5)


Передаточное число поворотного плеча = 40:


Поэтому угол поворота мотора В:

angl = arctg(x / y1) * 40


Эти окончательные формулы занесём в программе в «Мой блок» XY_Angl (подробнее о программе для робота смотри «Программируем блок EV3 робота-художника» ).


Мотор А – движение тележки по оси Y. Мотор В – поворот плеча L .


Файл с координатами мы получаем используя сцену Scratch (подробнее смотри 2 видео на моём канале «Картинка для робота. Часть1.» и «Картинка для робота. Часть2.»). Эта сцена представляет собой прямоугольное поле альбомной ориентации размером 480х360 точек с началом координат в центре этого поля. Нам надо перевести его в лист формата А4 книжной ориентации с началом координат 120 мм ниже нижнего края листа.



Масштаб вычислим исходя из меньшей стороны (210мм), т.е.

210/(180+180) = 0,5833333333333


Тогда вертикальный размер 480 * 0,5833333333333= 280


x= 0,5833333333333 * x” = - 0,5833333333333 * Y


y = 0,5833333333333* y” + (120+300/2) = 0,5833333333333 * y” + 270 = =0,5833333333333 *X + 270



Конструкция робота


Фото робота с разных ракурсов.

Вид сверху со снятым блоком EV3.




Вид снизу:



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


Вид на подъёмный механизм со снятыми направляющими и кареткой.


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


Вид на мотор подъёма пера с кривошипом (зелёным).


Каретка, к которой крепится фломастер. Канцелярская резинка сперва пропускается под резиновой балкой.

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



И о крепеже направляющей гусеницы.

Из 40 пластиковых траков соединил гусеничную ленту.

В листе ДСП я просверлил 8 отверстий диаметром 5 мм в начале и конце гусеницы и через 13 траков. В отверстия вставил тройные синие штифты. Подложил картонку, чтобы робот не прыгал на бортиках штифтов. Закрепил ленту на этих штифтах.



У этого робота нет никаких датчиков, поэтому выставлять в начальную позицию (точку парковки) надо вручную. Для этого плечо робота должно быть направлено вперёд, для поворота покрутите 4-х зубым колёсиком мотор В. Перо должно быть поднято. Перо поднимать не очень удобно, так как сложно (но можно) вращать шестерню подъёма, поэтому старайтесь выключать робот с поднятым пером, или проверните мотор С через меню EV3. Робот поставьте задним колесом на край гусеничной ленты. Лист бумаги зафиксируйте так, чтобы нижний край был под пером, и перо было посредине нижнего края.







667 просмотров0 комментариев

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

Смотреть все

Comentários


bottom of page