Профессиональный 360° фото-турнит: автоматическое вращение для идеальных снимков
Компоненты и материалы
| Компонент | Количество |
|---|---|
| Arduino UNO | 1 |
| Инкрементальный энкодер с кнопкой | 1 |
| LCD-дисплей 16x2 (белый на синем) | 1 |
| Драйвер шагового двигателя A4988 (SparkFun) | 1 |
Приложения и сервисы
- circuito.io — генератор кода и схем
О проекте
Фото-турниты — круглые платформы для съёмки объектов или людей в 360°. Объект помещается в центр, платформа вращается (вручную или автоматически), позволяя снять продукт со всех сторон.
Что особенного в этом турните?
- Полная автоматизация — не нужно вращать стол или нажимать спуск камеры вручную.
- Синхронизация камера-турнит — программа запускает и вращение, и спуск затвора (пока только для Canon, Nikon — позже). Нажал кнопку — можешь отдыхать.
- Точность и простота настройки — шаговый двигатель даёт высокую точность и контроль угла съёмки.
Механика
Лазерная резка деталей
Турнит состоит из 4 деталей из белого акрила (плексигласа) разной толщины. Pololu предлагает доступный сервис лазерной резки.
Детали:
- Круговая платформа — 10 мм акрил
- 2 шестерни — 8 мм акрил
- Корпус основания — 3 мм акрил
Файлы .ai доступны на Thingiverse.
Шестерни спроектированы на geargenerator.com, экспортированы в Illustrator, добавлены отверстия для крепления. На малой шестерне отверстия чуть меньше — для плотного посадки на вал шагового двигателя. Корпус спроектирован в makercase с T-образными пазами, склеен. После проектирования файл экспортирован в Illustrator, вырезано окно под LCD.
Материалы и инструменты для сборки
- Подшипник Lazy Susan
- 4 × M3×12 мм болты
- 4 × M3×16 мм болты
- 8 × M4×12 мм болты + 8 гайок M4
- 4 × M3 латунные вставки с резьбой
- 8 × M3×5 мм латунные шестигранные распорки (или вставки)
- Акриловый клей
- Суперклей
- Дрель, паяльник, штангенциркуль
Электроника
Основные компоненты
- Arduino Uno
- Шаговый двигатель
- Ротационный энкодер
- LCD 16×2 I2C
- IR-светодиод (для спуска камеры)
Дополнительные компоненты
- EasyDriver (драйвер шагового двигателя)
- Транзистор + резистор (для IR-светодиода)
- Розетка питания (Barrel jack)
Схемотехника
Подробная схема: ссылка.
Пошаговое руководство и код — во вкладке Bill of Materials → «project guide». После проверки на макетной плате рекомендуется сделать небольшой шилд — для постоянных схем это надёжнее и компактнее.
Почему выбраны эти компоненты
- Шаговый двигатель — точный, простой в программировании: можно задать число шагов между углами.
- IR-светодиод для спуска камеры — беспроводная связь с минимальной настройкой. Найден IR-код для Canon, настроен соответствующим образом. Для Nikon — аналогично.
- Ротационный энкодер — локальное меню с LCD. Можно добавить Wi-Fi-модуль и создать IoT-панель для беспроводного управления.
Код
Этапы использования кода
- Загрузить тестовый код от circuito.io для проверки схемы.
- Перейти в GitHub-репозиторий.
- Скачать
photo-turntable.ino. - Скопировать код со строки 16 (оставляя «include libraries» и «pin definitions» из исходного кода).
- Проверить корректность назначения пинов.
- Загрузить новый скетч.
Логика программы
Код реализует простое меню на LCD 16×2 с энкодером (имеет кнопку).
В Firmware.ino видно:
- Объявления пинов
- Настройки компонентов
- Конструкторы
setup()от circuito.io
Функция loop() начинается с опроса энкодера (влево/вправо) и его кнопки.
Меню реализовано как конечный автомат (switch-case) с состояниями:
- VIDEO — режим видео
- CHANGESPEED — установка скорости 0–100%
- SPEED
- VIDSTART — запуск вращения в режиме видео
- VIDBACK — возврат в HOME
- STILLS — режим фото
- CHANGEANGLES — установка числа углов
- ANGLES
- STILSTART — запуск в режиме фото
- STILBACK — возврат в HOME
- HOME — ожидание
Переключение состояний — вращением энкодера. Выбор — нажатием кнопки.
Состояния SPEED и ANGLES позволяют менять переменные: число стоп-точек в фото-режиме и скорость вращения в видео-режиме.
VIDSTART вызывает video():
- Отправляет IR-код «начать запись» камере через IR-светодиод.
- Запускает вращение стола на выбранной скорости на один полный оборот.
- Отправляет IR-код «остановить запись».
Примечание: для плавного пуска/остановки реализовано кубическое ускорение/замедление на первых и последних 600 шагах.
STILSTART вызывает stills():
- Делит полный оборот на заданное число углов.
- Для каждого угла отправляет IR-код «одиночный кадр» камере.
- Вращает стол до следующего угла.
Примечание: аналогично — кубическое ускорение/замедление на первых/последних 600 шагах.
Сборка
- Для быстрой сборки использован Prototype Shield — удобное подключение джамперов и male-заголовков.
- Джамперы: 2-pin (IR LED), 4-pin (LCD), 5-pin (энкодер).
- Питание: сделан удлинитель с DC Barrel Jack Plug – Male и DC Barrel Jack – Panel Mount, провода припаяны к GND и VCC. Панельная розетка закреплена на задней стенке, male-разъём — на Arduino. Питание подключается к задней панели.
Инструкции со фото приведены ниже (много этаповых фото сборки).
Ресурсы
- Код для фото-турнита: GitHub
- Библиотека Multi Camera IR Control: GitHub
- CAD-файлы деталей (плексиглас): Thingiverse
- Кнопка энкодера: Thingiverse
- Схема: bit.ly/photo-turntable-circuit
Производственный процесс
- Ручные vs автоматические спецификации (BOM): почему автоматизация повышает эффективность
- Понимание автоматических прессов: функция, особенности и преимущества
- Автоматические станки для сверления и нарезки резьбы: полный обзор
- Автоматические водяные насосы: принцип работы и значение
- Автоматические прессовые станки: принцип работы, преимущества и применение
- Универсальные вендинг-машины для еды: от снеков до свежих сэндвичей
- Что такое автоматический силовой пресс? — Ультимативный станок для формовки листового металла
- Автоматические кованые прессы: особенности, преимущества и применение
- Автоматический сварщик шляпчатых гайок: мастерство точной сварки гайок
- Автоматический швовой сварочный аппарат: точность и эффективность для крупносерийной швовой сварки