/Projects/Turntable Photography Equipment

A friend asked me if I could build him a device that would allow him to take photos of his products in 360 degrees. That kind of photo is actually an animation that consists of several photos of the same product but from different angles. It means that we need a device that can be controllable and that could take pictures on even intervals.

UPDATE: English version of software is now available for download here.

The idea:

turnphotoilustracijaen
Ilustracija rješenja

As we can see from the picture above, a device called "Turn Photo" controls the digital camera (focus and shutter) and the device itself is controlled by a PC application written in Delphi 7.

All project files are available for download by clicking on the red download button below.

Turn Photo - hardware
Roughly, the device consists of PIC16F628A microcontroller, USB<->Serial PL2303 converter IC, ULN2803A IC transistor array, 2 opto-couplers and one stepper motor. Electronics are powered from USB port, actually from a PL2303 PCB Module, and motor is powered by independent 12V power source.

sch
Circuit schematics of controller hardware

pcb
PCB of controller

Two versions of this device were built. The first one was with stepper motor from an old 5.25" floppy drive TEAC 14769070-90. That is a unipolar motor with 4 coils inside, and it has a resolution of 1.8 degrees per step which makes 200 steps in total per one complete revolution. When we drive it with half-stepping method, it doubles to 400 steps per revolution. A problem with this realization was that I didn't use gears between the motor and the rotating plate (a circular plexiglass sheet that holds/rotates the product) - it was a direct-drive. A thing to note here is that we need to rotate objects with the smallest speed possible to avoid them dancing all over the plate. So, with a direct-drive and slow motor speed it produced massive vibrations. When motor speeds up - vibrations disappear, but we don't want it speeding around. After testing and trying to fix the problem by changing stepper motor driver parameters and using dampers I decided to abandon this direct-drive design.

prvaverzija1
First version with stepper from floppy driver and direct-drive - in the making

prvaverzija2
Finished first version - ...abandoned later

Second version of mechanics (the winning combination) is done by using a stepper motor M35ST-7P from an old HP scanner which was also unipolar with 4 coils but with a much smaller resolution of just 7.5 degrees per step. It means that the motor makes just 48 steps per one revolution. The good thing is that two gears came with this motor and the steps were prescaled by 25 (1:25 gear ratio) which means we now have 360/48/25 = 0.3 degrees per step. Another good thing here is that we can drive it faster because the speed also reduces by 25 x. This solves the vibrations problem totally and now we also have a maximum of 1200 steps or even 2400 with half-stepping per one revolution of final "drive" gear.

DSC06445

DSC06446
Stepper motor - 12V (40 ohm)

A 15.5cm diameter circular plexiglass plate is fitted to the final "driving" gear which holds the photographed product. Here cou can see a video of CNC machine drilling the plexiglass circle (warning: very bad video quality).

DSC06448
Photo of finished device - without the working plate (plexiglass)

DSC06443
Connectors at the back: USB, 12V source and female stereo jack for camera remote controller cable

rszp1020101
rszp1020103
Photo of finished device

Turn Photo - firmware
The PIC16F628A has a job to receive and respond to commands that arrive from the PC application, to control the stepper motor and also to control the camera (focus and shutter). Firmware is written in HI-TECH C language and is also available for download.

Camera is controlled with two 4N35 NPN opto-couplers and they are connected to 3.5mm female stereo jack that accepts a cable for virtually any camera. My friend has a Nikon D700 camera so I made a cable for it from the Nikon's "remote".

rsznikonremote
Camera "remote" that will be converted to a cable

PIC microcontroller receives commands from the PC application over USB<->Serial converter IC, completes the requested command and answers back to the PC application. PIC supports these commands:

1. Type of stepping (normal or half-stepping)
2. Motor speed/period
3. Direction of rotation
4. Making a photo (focusing and shooting with custom focus and shutter durations)
5. Delay after shooting

PC application
Application is written in Delphi 7 and has a very simple environment where all parameters can be adjusted. Please note that application is currently only in Bosnian/Croatian/Serbian language, so if anyone is interested, I could translate it to English. Source-code is available for download on request.

scr1
Screenshot of PC application for control

After entering the number of required photos (usually 30-40 is enough for a smooth animation), the application will calculate how many steps it needs to make and the process can start. As the camera is making pictures, they automatically appear at the bottom of the application (the white space) and after the process completes, a single click will copy all photos from that session to a custom directory. This allows a certain amount of automation especially when you need to photograph many products in series.

PC application supports stepper motors with different/custom gear ratio. We simply enter number of steps per one complete revolution and gear ratio (if there are gears attached to the motor) and that is it:

scr3
Motor parameters

If the device is used to make 360 degrees photos of different products (different weight - speed, number of photos per product, different parameters, ...) it would be a great idea to save settings for each product type. This is done by saving those settings into "profiles" and loading them later.

scrprofili
Application profiles

This makes it possible to speed up the process of photography even more because there is no need to punch in the numbers every time, we simply re-load them.

Video of the device in action
Coming soon! - I actually gave this device to a friend the moment I finished it, so I never got the chance to make a proper video presentation. I hope to see him soon and make a video of device in action. In the meantime check out the video of stock devices (it is the same thing): http://bit.ly/Hxk2tN

Author (sent by): Trax

Download counter: 948

Rating: (2.97, votes 3955)

Vote:

Date: 10-04-2012

Lokalna verzija ove stranice: Oprema za fotografisanje u 360 stepeni

832_turn_photo.rar

Bookmark and Share Comments (60)

similar content

comment [30]

You need unipolar motor with 5 or 6 wires. If you have 5 wires - OK, but if you have 6 wires, you must connect two middle wires together like this: http://bit.ly/14uH2Re You can connect the motor with your plate like in your picture, just make sure that your plate can make a full rotation of 360 degrees by turning motor shaft by "whole number" turns. What I mean is that your motor must make (for example) 123 turns in order to turn your plate 360 degrees. The ratio must be a whole number such as 1:123, an
IP: n/a

comment [29]

The problem now is that i cannot find a stepper motor... 4 wires or 6 wires http://www.robot-italy.com/it/stepper-motors.html Can I use the unipolar six wire?
IP: 62.173.182.62

comment [28]

Sorry but I have a lot of questions :) In your project you fix the rotating plate to the stepper motor (with reduction). To avoid any vibration I want to fix the motor like in this sample image: http://media.dday.it/roby/test.jpg With your software can I handle a situation like this? I can add a wheel betweet the rotating table and the motor, but with a full motor ritation I have about 5° plate rotation!
IP: 62.173.182.62

comment [27]

Roberto, there is a red download button just above these comments you are reading right now. Download it, and there you will find original PCB drawing in Cadsoft Eagle. Download Cadsoft Eagle and open it, and print the original.
IP: n/a

comment [26]

Thank you, I received today from Farnell all the component I need. Now I must to retouch the board jpg to print the pcb (maybe you have the 1:1 pdf to upload somewhere). I'm not a developer, but I think that could be useful to add in the software some alignment guide to center the object on the rotation axis. By the way thank you, you project is fantastic. I will send the photo of my turntable when i finish.
IP: 93.62.195.210

comment [25]

Hello, your cable IS compatible - do not worry. Just connect everything properly. You can use bigger plate, and for the motor - use the one you have at hand :-) It must have 5 pins (4 coils and 1 common).
IP: n/a

comment [24]

Second question: the control cable for the 5D is quite different. I have an old cable, can you look here if it works without changes at the circuit? http://www.doc-diy.net/photo/eos_wired_remote/
IP: 62.173.182.62

comment [23]

Amazing software and hardware. I will buy the components this week and I will try with my Canon 5D. I have a question: your plate is quite small: i need to take picture of electronic devices, so I need biggest plate. I think to use this one: http://www.ikea.com/it/it/catalog/products/90074483/ Which type of motor do you suggest?
IP: 62.173.182.62

comment [22]

trax: Sweet! These DIY projects are always so creative.
IP: 66.215.112.137

comment [21]

Hi Michael, thanks for the imajize.com suggestion, it is great. I don't have a video of it running, I made this for a friend and he is using it with his Canon camera. I never made a video and now I regret that... There is someone building it right now and I hope they will send me a video of it rotating, so wait a little :-)
IP: n/a


Comment page: <123456>


add comment

name

e-mail (will not be published)

website

How much is = also add letter "a" at the end of your result! Eg.: 7a

Please log-in!

You can log-in on forum link: Login page. After logging-in, return to this page and click refresh in your browser.

site friends

sponsored links

ads