Оглавление:

Стрекоза качается головой: 11 шагов
Стрекоза качается головой: 11 шагов

Видео: Стрекоза качается головой: 11 шагов

Видео: Стрекоза качается головой: 11 шагов
Видео: Иван Дорн - Бигуди / Лова Лова (Slider & Magnit Remix) :: www.slamdjs.ru 2024, Ноябрь
Anonim
Качающаяся голова стрекоза
Качающаяся голова стрекоза

Я сделал стрекозу. Стрекоза качает головой с помощью датчика жестов и серводвигателя.

компоненты

  • Arduino UNO
  • Seeed Grove - Жест
  • Микро сервопривод непрерывного вращения FS90R

Шаг 1: Конституция

Конституция
Конституция

Обнаружение движения пальца с помощью датчика жестов и управление направлением вращения сервопривода непрерывного вращения на 360 ° с помощью Arduino.

Шаг 2: Создайте Стрекозу - Голова 1 -

Создание стрекозы - Голова 1
Создание стрекозы - Голова 1

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

Шаг 3: Создайте Стрекозу - Голова 2 -

Создание стрекозы - Голова 2
Создание стрекозы - Голова 2

Глаза и рот были украшены блестящими ювелирными печатями. Пишу пером рот.

Шаг 4: Создание стрекозы - голова 3 -

Создание стрекозы - Голова 3
Создание стрекозы - Голова 3

Соединение между головой и грудью (сервопривод) выполнено с помощью гайки. Прикрепите перья и гайки к сервоприводу мгновенным клеем.

Шаг 5: Создание стрекозы - тело 1 -

Создание стрекозы - Тело 1
Создание стрекозы - Тело 1

Сделайте серводвигатель к груди стрекозы. Приклеил винт M6 длиной 60 мм в качестве живота.

Шаг 6: Создание Стрекозы - Тело 2 -

Создание стрекозы - Тело 2
Создание стрекозы - Тело 2

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

Шаг 7: Создание Стрекозы - Тело 3 -

Создание стрекозы - Тело 3
Создание стрекозы - Тело 3

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

Шаг 8: Создание стрекозы - тело 4 -

Создание стрекозы - Тело 4
Создание стрекозы - Тело 4

Вкрутите головку в гайку и стрекоза готова. Активируйте сервопривод и поверните его.

Шаг 9: сервопривод непрерывного вращения на 360 градусов

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

  • Серво стоп с входом 90 градусов
  • Поверните по часовой стрелке с вводом от 0 до 89 градусов. Скорость вращения увеличивается от 90 градусов.
  • Поверните против часовой стрелки при вводе от 91 до 180 градусов. Скорость вращения увеличивается от 90 градусов.

Шаг 10: Код Arduino

Подключите сервопривод и датчик жестов к Arduino UNO.

В библиотеке датчика жестов используется следующее.

Я посмотрел пример кода paj7620_9gestures.ino.

Этот жест заставил его распознать направление пальца по часовой стрелке и направление против часовой стрелки.

Цифровой 8-контактный разъем Arduino подключен к GND, так что сервопривод медленно вращается против часовой стрелки, так что винт с головкой можно повернуть в гайку.

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

#include #include "paj7620.h" #include Servo myservo; // создаем сервообъект для управления сервоприводом

void setup () {uint8_t error = 0; Serial.begin (9600); myservo.attach (A0); // подключает сервопривод на выводе 9 к сервообъекту pinMode (8, INPUT_PULLUP); error = paj7620Init (); // инициализировать регистры Paj7620 if (ошибка) {Serial.print ("INIT ERROR, CODE:"); Serial.println (ошибка); } else {Serial.println ("НАЧАТЬ ОК"); } Serial.println («Введите жесты: / n»); }

void loop () {uint8_t data = 0, data1 = 0, error; если (digitalRead (8) == LOW) {myservo.write (90 + 15); } else {error = paj7620ReadReg (0x43, 1, & данные); // Считываем Bank_0_Reg_0x43 / 0x44 для результата жеста. если (! ошибка) {переключатель (данные) {case GES_CLOCKWISE_FLAG: Serial.println ("По часовой стрелке"); myservo.write (90 - 20); задержка (800); перерыв; case GES_COUNT_CLOCKWISE_FLAG: Serial.println («против часовой стрелки»); myservo.write (90 + 20); задержка (800); перерыв; по умолчанию: myservo.write (90); перерыв; }}}}

Шаг 11: Эксплуатация

Операция
Операция

Получилась красивая стрекоза с качающейся головой!

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