Оглавление:

Рука для рисования: 5 шагов
Рука для рисования: 5 шагов

Видео: Рука для рисования: 5 шагов

Видео: Рука для рисования: 5 шагов
Видео: КАК РИСОВАТЬ РУКИ? Уроки рисования для начинающих. 2024, Ноябрь
Anonim
Рука для рисования
Рука для рисования

Привет! Для школьного проекта я сделал рисовальную руку Боба Росс, управляемую джойстиком и двумя сервоприводами. Конечно, вы можете украсить руку так, как хотите, но я решил сделать из нее Боба Росса. В этом проекте я использую математическую библиотеку, поэтому, когда мы вводим координаты x и y, математическая библиотека вычисляет, под каким углом они должны находиться, чтобы добраться до этой позиции x, y. В этой инструкции я объясню, как мне это удалось.

Шаг 1. Расходные материалы

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

- Arduino uno

- 2x Micro Servo 180 градусов

- 1x джойстик

- Макетная плата

- Провода

- Женский - мужской провода

- Тиврапс

- деревянные палочки 13 см

- картон

- Моментальный клей

- Прищепка

Шаг 2: создание руки

Создание руки
Создание руки

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

Шаг 3: Подключение проводов

Подключение проводов
Подключение проводов
Подключение проводов
Подключение проводов

Третий шаг - подключить сервоприводы. На данный момент мы используем Arduino uno и клеммные колодки. У сервоприводов есть три цветных провода: желтый, красный и коричневый.

Для того, чтобы подключить клеммную колодку к ардуино, мы вставляем один провод в отверстие в клеммной колодке, а другой конец вставляем в GND. Мы делаем то же самое со вторым проводом, но вставляем его в одно из отверстий рядом с ним и вставляем конец в 5V на ардуино.

Как прикрепить провода сервопривода 1:

Желтый -> Цифровой 7

Красный -> 5 В / + в клеммной колодке

Коричневый -> GND / - в клеммной колодке

Как прикрепить провода сервопривода 2:

Желтый -> Цифровой 4

Красный -> 5 В / + в клеммной колодке

Коричневый -> GND / - в клеммной колодке

Теперь подключим джойстик. Вот как это делается:

GND -> GND в Arduino

+ 5 В -> 5 В / + в клеммной колодке

URX -> A0

URY -> A1

Шаг 4: кодирование

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

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

// radialen naar gradenconst float radTodegree = 180 / PI;

#define ARMLENGTH 130 // длина руки в мм

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

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

// как минимум x en y как van joystickvoid loop () {joyVa1 = analogRead (joyX); joyVa1 = map (joyVa1, 0, 1023, -границы, границы); // изменение значения от 0-1023 naar -130-130 if (abs (joyVa1)> 30) {

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

posX = ограничение (posX, -bounds, bounds);

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

// выводим postitievoid PrintPosition () {if (Serial.available ()> 0) {posX = Serial.parseInt (); posY = Serial.parseInt ();

}

// Serial.print (posX); Serial.print (","); Serial.println (posY); }

После этого есть код для вычисления углов сервопривода. Эта часть кода сделана tomasdecamino. Пожалуйста, загрузите полный код, чтобы увидеть все. Теперь вы можете перемещать руку с помощью джойстика! Вы можете редактировать то, что хотите, например moveSpeed и constrain.

Шаг 5: Украшаем руку

Украшение руки
Украшение руки
Украшение руки
Украшение руки
Украшение руки
Украшение руки
Украшение руки
Украшение руки

Пришло время придать вашей руке тело! Вы можете делать все, что захотите. Я решил сделать из этого Боба Росса. В одной руке он держит палитру с красками, а в другой - рисовальщик. Сначала я сделал прототип из обычной 80-граммовой бумаги, чтобы убедиться, что все подойдет. Я сделал туловище, шею, руку и голову из плотного картона и склеил их мгновенным клеем. Затем я дразнил шерсть, чтобы она выглядела как вьющиеся волосы, и приклеила ее на место. Затем я вырезал и прибил блузку по размеру моего проекта, разрезал рукава и застегнул липучку, чтобы я мог легко одевать и раздевать тело, если вам нужно что-то отредактировать под ним. Наконец, я проделал отверстие в корпусе, чтобы провода могли пройти, не дестабилизируя весь проект.

Теперь вы можете положить карандаш в руку своему проекту, дать ему лист бумаги и рисовать!

Рекомендуемые: