Оглавление:

Таймлапс с контролем движения: 7 шагов (с изображениями)
Таймлапс с контролем движения: 7 шагов (с изображениями)

Видео: Таймлапс с контролем движения: 7 шагов (с изображениями)

Видео: Таймлапс с контролем движения: 7 шагов (с изображениями)
Видео: Как сделать ТАЙМЛАПС в движении? (HYPERLAPSE) 2024, Июль
Anonim
Image
Image
План
План

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

В этом руководстве я покажу вам, как я создал устройство, которое добавит движения в вашу замедленную съемку. Давайте начнем!

Шаг 1: План

Я хотел, чтобы камера двигалась в двух направлениях, то есть по горизонтальной (X) и вертикальной (Y) оси. Для этого мне понадобятся два мотора.

У нас должна быть возможность выбрать начальную и конечную позиции для обеих осей.

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

Чтобы получить такой точный контроль, я буду использовать сервомоторы.

Кроме того, мы должны иметь возможность установить временной интервал.

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

И, наконец, мозгом, который будет управлять всем этим, будет Arduino. ATMega328p будет использоваться как отдельный микроконтроллер.

Я выбрал камеру GoPro, так как она маленькая и с ней легко снимать таймлапс. Вы можете использовать любую другую маленькую камеру или свой мобильный телефон.

Шаг 2: Список компонентов

Список компонентов
Список компонентов
Список компонентов
Список компонентов
Список компонентов
Список компонентов

1x ATmega328p (с загрузчиком Arduino)

2x сервомотор MG995

1x MT3608 повышающий преобразователь

1x TP4056 LiPo модуль зарядки аккумулятора

1x переключатель SPDT

1x 16 МГц кристалл

2x 22 пФ конденсатор

2 резистора 10 кОм

1x потенциометр (любое значение)

1x кнопка (нормально открытая)

По желанию:

3д принтер

Шаг 3: проектирование печатной платы

Проектирование печатной платы
Проектирование печатной платы
Проектирование печатной платы
Проектирование печатной платы
Проектирование печатной платы
Проектирование печатной платы

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

Когда все работает правильно на макетной плате, мы можем начинать процесс проектирования печатной платы. Я выбрал EasyEDA для проектирования, поскольку он упрощает работу таких новичков, как я.

Проверяйте, проверяйте и проверяйте! Убедитесь, что вы ничего не пропустили. Когда вы полностью уверены, нажмите «Создать файл фабрики», чтобы загрузить файлы Gerber, или вы можете заказать его напрямую в JLCPCB всего за 2 доллара, используя опцию, приведенную ниже.

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

После пайки очистите печатную плату изопропиловым спиртом, чтобы удалить остатки флюса.

Шаг 4: соединяем все вместе

Собираем вещи вместе
Собираем вещи вместе
Собираем вещи вместе
Собираем вещи вместе
Собираем вещи вместе
Собираем вещи вместе
Собираем вещи вместе
Собираем вещи вместе

Вам не понадобится модный 3D-принтер. Детали можно легко собрать с помощью подходящих инструментов. Недавно у меня появился 3D-принтер, и я очень хотел использовать его в своем проекте. Я нашел некоторые детали из Thingiverse.

Крепление GoPro:

Серво рог:

Припаяйте провода к выключателю питания, горшку и кнопке с гнездовыми разъемами и подключите их к штекерным разъемам на печатной плате.

Загрузите и откройте прикрепленный файл в Arduino IDE и загрузите код в свой Arduino. После загрузки кода снимите ИС с платы Arduino и вставьте ее на свою печатную плату.

/ * Автор: IndoorGeek YouTube: www.youtube.com/IndoorGeek Спасибо за загрузку. Надеюсь, вам понравится проект. * /

#включают

Servo xServo;

Servo yServo;

int potPin = A0;

int val, xStart, xStop, yStart, yStop; int button = 2; unsigned long timeInterval;

void setup () {

pinMode (кнопка, ВВОД); xServo.attach (3); yServo.attach (4); }

void loop () {

xAxis (); задержка (1000); xStart = val; yAxis (); задержка (1000); yStart = val; xAxis (); задержка (1000); xStop = val; yAxis (); задержка (1000); yStop = val; setTimeInterval (); задержка (1000); timelapseStart (); }

void xAxis () {

while (digitalRead (кнопка)! = ВЫСОКИЙ) {val = analogRead (A0); val = карта (val, 0, 1023, 0, 180); xServo.write (значение); }}

void yAxis () {

while (digitalRead (кнопка)! = ВЫСОКИЙ) {val = analogRead (A0); val = карта (val, 0, 1023, 0, 180); yServo.write (val); }}

void setTimeInterval () {// Измените временные интервалы в соответствии с настройками таймлапса вашей камеры

while (digitalRead (кнопка)! = ВЫСОКИЙ) {val = analogRead (A0); if (val> = 0 && val = 171 && val = 342 && val = 513 && val = 684 && val = 855 && val <1023) {timeInterval = 60000L; }}}

void timelapseStart () {

беззнаковый длинный lastMillis = 0; xServo.write (xStart); yServo.write (yStart); while (xStart! = xStop || yStart! = yStop) {если (millis () - lastMillis> timeInterval) {if (xStart xStop) {xServo.write (xStart); lastMillis = millis (); xStart--; } если (yStart xStop) {yServo.write (yStart); lastMillis = millis (); yStart--; }}}}

Шаг 5: Работа

Работающий
Работающий
Работающий
Работающий

Включите главный выключатель.

Ось X будет активна. Поверните горшок в положение, с которого вы хотите начать таймлапс. Нажмите кнопку выбора, чтобы подтвердить начальное положение. После этого ось Y станет активной. Сделайте то же самое, чтобы выбрать начальную позицию оси Y.

Повторите описанную выше процедуру для положения остановки по осям X и Y.

Теперь, используя горшок, выберите временной интервал между выстрелами. Вращение кастрюли делится на 6 частей по интервалам 1 сек, 2 сек, 5 сек, 10 сек, 30 сек и 60 сек. Вы можете изменить интервалы в функции setTimeInterval (), как показано на рисунке. Нажмите кнопку Выбрать, чтобы подтвердить его.

Сервоприводы вернутся в исходное положение и переместятся на 1 градус по истечении указанного временного интервала.

Последовательность:

  1. Установить начальное положение оси X
  2. Установить начальное положение оси Y
  3. Установить положение остановки по оси X
  4. Установить положение остановки оси Y
  5. Установите временной интервал

Шаг 6: будущие обновления

Будущие обновления
Будущие обновления

1) В настоящее время из-за 1 кадра на градус максимальное количество фотографий, которые мы можем получить, составляет 180, поскольку сервоприводы могут вращаться от 0 до 180 градусов. Добавление шестерен увеличит разрешение. Таким образом, у нас будет больше снимков и, следовательно, более плавные таймлапсы. Я хорошо разбираюсь в электронике, но не в механике. С нетерпением жду возможности улучшить его.

2) Потенциометр можно заменить на датчик угла поворота.

3) Беспроводное управление, может быть ?!

Есть чему поучиться

Шаг 7: Наслаждайтесь

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

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