Оглавление:

Основы аниматроники - серводвигатель: 8 шагов
Основы аниматроники - серводвигатель: 8 шагов

Видео: Основы аниматроники - серводвигатель: 8 шагов

Видео: Основы аниматроники - серводвигатель: 8 шагов
Видео: ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14] 2024, Июль
Anonim
Image
Image

Будь то веселый праздничный показ в витрине универмага или страшная шутка на Хэллоуин, ничто так не привлекает внимание, как анимированная марионетка.

Эти анимации с электронным управлением иногда называют «аниматрониками», и в этом руководстве вы узнаете, как сделать самый простой вид анимации, управляемый одним серводвигателем.

Мы будем использовать микроконтроллер Arduino в качестве мозгов, и мы увидим, как внутри работают потенциометр и сервопривод, а также научим вас создавать три различных метода управления:

1 - Непрерывно повторяющееся движение

2 - Дистанционное управление движением

3 - Движение по срабатыванию (с помощью светового датчика)

Шаг 1: Список деталей

Список деталей
Список деталей
Список деталей
Список деталей

Вам понадобится микроконтроллер (на первом изображении показан Arduino с https://adafru.it вместе с их бюджетным комплектом запчастей на общую сумму 30 долларов) и серводвигатель (небольшая версия Tower показана на втором рисунке. вместе с некоторыми деталями разъема из того же магазина по цене 12 долларов). Вам также понадобится небольшой конденсатор или более мощный источник напряжения, если вы используете несколько серводвигателей (подойдет настенное зарядное устройство на 9 В для Arduino).

Микроконтроллер - это целый компьютер на одной микросхеме. Очевидно, он не такой мощный, как ваш домашний компьютер, у него очень мало оперативной памяти, нет дисковода, клавиатуры или мыши, но он действительно хорош в управлении вещами (отсюда и название). Вы найдете один из этих чипов во многих предметах повседневного обихода, таких как стиральные машины и компьютеры с автомобильными топливными форсунками.

Бренд микроконтроллеров «Arduino» также добавляет некоторые другие схемы, которые соединяют их с внешним миром, и помещают их на удобную плату.

Обратите внимание, что в «комплекте бюджетных деталей» есть несколько проводов, резисторы, светодиодные лампы и пара синих ручек, называемых потенциометрами. Подробнее о потенциометрах в следующем шаге.

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

Шаг 2: Обзор потенциометра

Обзор потенциометра
Обзор потенциометра
Обзор потенциометра
Обзор потенциометра
Обзор потенциометра
Обзор потенциометра
Обзор потенциометра
Обзор потенциометра

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

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

На крайнем левом изображении показан фактический горшок с верхним и нижним проводами, подключенными к напряжению +5 и заземлением, а средний провод выводит желаемое напряжение. На средней диаграмме показан символ горшка, а на последней диаграмме - эквивалентная схема.

Изображения любезно предоставлены Wikimedia.org.

Шаг 3: обзор серводвигателя

Серводвигатель Обзор
Серводвигатель Обзор
Серводвигатель Обзор
Серводвигатель Обзор
Серводвигатель Обзор
Серводвигатель Обзор

Серводвигатель состоит из четырех основных частей.

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

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

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

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

Части 1 и 2 показаны на первом изображении. Обратите внимание, что часть 2 - это потенциометр.

Часть 3 показана на втором изображении.

Часть 4 показана на третьем изображении.

Шаг 4: повторяющееся движение

Повторяющееся движение
Повторяющееся движение
Повторяющееся движение
Повторяющееся движение
Повторяющееся движение
Повторяющееся движение

Здесь мы собираемся заставить голову нашей марионетки «Бендер» поворачиваться влево и вправо, взад и вперед, пока питание подключается через USB-кабель. Это отлично подходит для веселой праздничной демонстрации, которую вы хотите продвигать весь день.

Arduino поставляется с интегрированной средой разработки (IDE), которая представляет собой причудливый способ сказать, что она поставляется с приложением для вашего ПК, которое позволяет вам давать ему инструкции (значок Arduino IDE - это цифра 8, расположенная сбоку). Эти инструкции остаются на плате, даже если вы отключите компьютер, и они снова начнут работать, когда вы снова подключите питание к Arduino. В этом случае мы будем использовать программное обеспечение под названием «Sweep», которое вы можете найти в примерах IDE в категории «Servo».

Затем вы подключите сервопривод к конденсатору, стабилизированному на 5 вольт (красный провод сервопривода к Arduino +5, коричневый провод сервопривода к GND Arduino) и к управляющему сигналу (желтый провод сервопривода к выходному контакту 9 Arduino). Голова куклы не обязательна;-)

ДЕТАЛИ:

Если приведенное выше было немного запутанным, подробные инструкции следующие:

Шаг A - Программирование Arduino

  • Откройте IDE Arduino (на рабочем столе должна появиться цифра 8).
  • В разделе «Инструменты» убедитесь, что для параметра «Плата» установлено значение «Arduino / Genuino Uno».
  • Подключите оборудование Arduino к компьютеру с помощью USB-кабеля.
  • Убедитесь, что параметр «Порт» в разделе «Инструменты» также настроен для Arduino.
  • В разделе «Файлы» выберите «Пример» под названием «Очистить» (вы можете найти его в разделе «Сервоприводы»).
  • Перед тем, как использовать или редактировать этот файл, пожалуйста, «Сохранить как» с другим именем файла (может быть ваше имя или другое имя по вашему выбору). Это сохранит файл без изменений для следующего ученика, использующего этот компьютер.
  • Используйте кнопку со стрелкой (или в разделе «Эскиз» выберите «Загрузить»), чтобы загрузить эскиз развертки в Arduino.

Шаг B - Подключение серводвигателя к уборочной машине

В этой части мы будем создавать варианты схем, описанных в https://learn.adafruit.com/adafruit-arduino-lesso … Мы подключим красный и коричневый провода сервопривода к +5 и GND Ardiuno, соответственно. Мы также поместим конденсатор выравнивания напряжения на это напряжение и, наконец, подключим желтый провод сервопривода к выходному контакту 9 Arduino.

  • Отключите Arduino от USB-порта, когда собираете схему.
  • Мы будем использовать 5 В и землю с платы Arduino, поэтому подключите их к макетной плате, используя красный и зеленый провода соответственно.
  • Поскольку питание от порта USB может быть немного нестабильным (небольшой ток, а серводвигатель может вызвать сброс платы Arduino из-за низкого тока), мы подключим конденсатор к этому напряжению, убедившись, что провод с маркировкой «минус -» «Находится на наземной стороне.
  • Теперь подключите красный (+5) и коричневый (земля) провода сервопривода к макетной плате.
  • Последнее электрическое соединение - это соединение управляющего сигнала. Программа SWEEP будет использовать контакт № 9 Arduino для отправки управляющего сигнала, поэтому подключите его к желтому (управляющему) проводу серводвигателя.
  • ДОПОЛНИТЕЛЬНО - Вы можете разместить аниматронную головку по вашему выбору и ее основание на серводвигателе до его тестирования. Пожалуйста, будьте осторожны, так как посадка не идеальна и пластиковые детали ломаются.
  • Вы должны иметь возможность подавать питание от USB к Arduino, и программа SWEEP должна запуститься, заставляя серводвигатель двигаться вперед и назад.

Шаг C - Изменение программы SWEEP

  • Перед тем, как использовать или редактировать этот файл, пожалуйста, «Сохранить как» с другим именем файла (может быть ваше имя или другое имя по вашему выбору). Вероятно, вы уже сделали это на шаге A. Для каждой из приведенных ниже частей запишите свои наблюдения, а также любые изменения, которые вы внесли в код.
  • С помощью секундомера измерьте, сколько времени нужно, чтобы пройти весь путь и обратно _
  • Вы будете вносить изменения в программное обеспечение (иногда называемое «кодом» или «эскизом»).
  • Измените оба значения «Задержка» с 15 на другое большее число (выберите округленное значение, кратное 15, для простоты вычислений). Какое значение вы использовали? _. Как вы думаете, какое будет новое время SWEEP? _. Измерьте новое время SWEEP и обратите внимание на любые расхождения _.
  • Измените Задержки обратно на 15, а теперь измените позиционные углы со 180 на 90 (оба эти значения). Каков новый диапазон движения серводвигателя (90 градусов или более или менее?) _.
  • Оставив диапазон движения на 90 градусов, уменьшите «Задержку» до числа меньше 15. Насколько маленьким из числа вы можете перейти, прежде чем сервопривод начнет работать хаотично или перестанет завершать весь диапазон движения? _

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

Шаг 5: Дистанционное управление движением

Дистанционное управление движением
Дистанционное управление движением
Дистанционное управление движением
Дистанционное управление движением
Дистанционное управление движением
Дистанционное управление движением

Вместо того, чтобы повторять одно и то же движение снова и снова в течение всего дня, на этом шаге мы будем дистанционно управлять положением нашей аниматронной марионетки «C3PO», чтобы смотреть влево и вправо и любое положение между ними. Поскольку управление выполняет человек, мы называем это управлением «разомкнутым контуром».

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

  • Нам понадобится еще одно место на макетной плате, которое имеет +5 и 0 (заземление) вольт. Протяните эти перемычки, чтобы разделить ряды на макетной плате, и сделайте их на один ряд отдельно друг от друга, чтобы они совпали с внешними контактами потенциометра, которые мы добавим через мгновение.
  • Теперь добавьте потенциометр. Прежде чем вставлять контакты потенциометра в макетную плату, убедитесь, что все три из них совпадают с правильными отверстиями, а затем нажмите на контакты прямо вниз, чтобы они не погнулись. Центральный вывод потенциометра будет подключен к нулю аналогового входа (A0) на Arduino. Для этого добавляется дополнительный провод.
  • Чтобы считывать напряжение с потенциометра и использовать его для управления серводвигателем, мы воспользуемся программным обеспечением «KNOB», которое также можно найти в меню «Файл» -> «Примеры» -> «Сервопривод». Запустите программу, поверните ручку и запишите то, что вы наблюдаете.

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

Шаг 6: Триггерное движение (с использованием датчика)

Запускаемое движение (с использованием датчика)
Запускаемое движение (с использованием датчика)
Запускаемое движение (с использованием датчика)
Запускаемое движение (с использованием датчика)
Запускаемое движение (с использованием датчика)
Запускаемое движение (с использованием датчика)

Иногда вы хотите, чтобы ваша марионетка внезапно пошевелилась - особенно для страшных розыгрышей на Хэллоуин или для привлечения еще большего внимания. На этом шаге мы изменим конфигурацию нашей марионетки «Голова острова Пасхи», чтобы она быстро поворачивалась лицом к лицу с проходящим мимо и отбрасывающим тень на датчик освещенности.

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

  • Мы снимем потенциометр и заменим его схемой замещения двух резисторов. В этом случае один из двух резисторов (R2) будет датчиком освещенности.
  • Чтобы дать нам немного места, мы разложили клеммы заземления + 5 В (слева) и 0 В (справа), чтобы мы могли добавить резистор 10 кОм и датчик освещенности, подключенные в центре в том же ряду, что и соединительный кабель, ведущий к аналоговому входу. ноль (A0) на плате Arduino.
  • Используйте тень руки, чтобы скрыть датчик освещенности, и используйте другие способы, чтобы датчик освещенности получал максимальное и минимальное количество света. Можете ли вы получить полный диапазон движения на 180 градусов?

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

Шаг 7. Теперь попробуйте

Теперь попробуйте!
Теперь попробуйте!
Теперь попробуйте!
Теперь попробуйте!

Теперь вы освоили три основных типа аниматронного движения, которое можно создать с помощью одного серводвигателя.

- Повторяющееся движение

- Дистанционное управление движением

- Движение по срабатыванию с помощью датчиков

Вы можете перейти на следующий уровень, используя различные виды марионеток, движения, элементы управления и, естественно, артистичность, которую можете создать только вы!

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