Giter Site home page Giter Site logo

sathyanc / tinker-slider-v1.0 Goto Github PK

View Code? Open in Web Editor NEW
6.0 1.0 0.0 3.47 MB

DIY Linear Camera Slider

License: GNU General Public License v3.0

C++ 100.00%
diy stepper-motor arduino esp8266 encoder rotary-encoder camera slider esp32-arduino oled-display-ssd1306

tinker-slider-v1.0's Introduction

Tinker-Slider-v1.0

I have never seen a commercial slider. As a YouTuber, I wanted a Camera slider for taking b-rolls for my videos. So as a weekend project I started this project, and it took several weekends to complete.

The following parts were used to build the single axis slider.

1.M3 and M4 Machine Screw Box 2.Tripod Mount 1/4 Screw Adapter x 2 3.Tripod Mount Screw 4.Linear Motion Bearing x 4 5.Heat shrink tubes 6.Endstop modules x 2 7.GT2 6mm, 2M timing belt 8.ESP32 NodeMcu Dev board 9.A4988 Stepper motor 10.Perf board 11.Male and Female Headers 12.SD1306 128x64 OLED display module 13.Belt tensioner spring 14.Rotary encoder 15.Linear, smooth rods 8mm, 500mm x 2 16.Wire Pipe 480mm 17.Linear Rail supports x 4

At the heart of the project sits the ESP32 microcontroller. Initially, I tried with ESP8266, but there were not enough pins, and then I tried with Arduino Pro Mini, but then the memory was minimal to use the LCD.

The ESP32 runs Arduino Core.

alt text

I used a 2 phase NEMA17 Hybrid motor that has a holding torque of 4000. The motor needs 1.7A per phase. It has a resolution of 1.8 degrees per step. So to complete a single revolution, we need to step the motor 200 times. However, we need the resolution as low as 1 degree per step to be able to capture the super smooth moving time-lapse videos.

The ESP32 Controls the stepper motor through the A4988 Stepper motor driver chip. This driver chip supports up to 1/16th Microstepping mode which enables us to achieve rotational accuracy up to 0.0625degrees per step.

Awesome!

The SSD1306 0.96" OLED display module enables us to see an configure the display even under bright sunlight.

The Rotary Encoder can be used to precisely control the position of the motor and also as a selection tool for the menu. Several Modes like manual and automatic time-lapse, real-time control, tried and tested presets to shoot flowers, people, gadgets are supported.

Libraries required: Accelstepper - https://github.com/adafruit/AccelStepper Adafruit GFX - https://github.com/adafruit/Adafruit-GFX-Library Adafruit SSD1306 - https://github.com/adafruit/Adafruit_SSD1306

References: https://github.com/Wogified/Arduino-Motorized-Camera-Slider

To-Do: WiFi Control by App / Custom Remote, 3 Axis Conversion, CNC Milled Design

tinker-slider-v1.0's People

Contributors

sathyanc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

tinker-slider-v1.0's Issues

New to ESP32, first project

Hey, i've built a simple timelapse slider in the past based on atmel328, and was looking to expand some of its features. Found your project and had an ESP32 laying around. First time trying to use one. I get it to compile and upload fine, but am getting errors in serial monitor.

Tinker Slider V1.0!!
Guru Meditation Error: Core 1 panic'ed (IntegerDivideByZero). Exception was unhandled.

I'm new to this, any tip on how to overcome this? Maybe library issue?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.