Go Down

Topic: Automated focus stacking controller (Read 5372 times) previous topic - next topic


Feb 09, 2013, 02:11 am Last Edit: Feb 09, 2013, 02:28 am by Rylee_Isitt Reason: 1
Hi everyone,

While new to the Arduino forum, I've been an avid Arduino fan for several years now. Using it, I have been able to bring together three of my favorite hobbies: photography, programming, and electronics.

Using Arduino, I have built an automated "focus stacking" controller. This is for high-magnification macro or microphotography. What it does is incrementally move a platform driven by a stepper motor, holding either the camera or the object being photographed, while simultaneously controlling the camera's shutter. The result is numerous photographs at evenly spaced sequential focus points, which can be combined using software into a single image with extended depth of field. It can also be used to make 3d representations of an object using a single lens. This technique is not new, and commercial products exist to do this. A plethora of similar hobbiest projects also exist, but many are based around solderless breadboards, jumpers, and seem to be prototypes rather than finished products. I wanted to document a project meant to look more professional (and not get you into trouble with airport security), as well one that I think leaves plenty of room for expansion into other realms (time-lapse photography, driving equatorial mounts, and so on).

The project is intended to work with a large variety of two-phase bipolar steppers that draw about 300-800ma when both windings are energized. Technically, the quad half-H bridge chip can drive more powerful steppers, but heat will become an issue, necessitating better airflow (rather than the closed case I've used here). It also should work with any digital camera on the market that has a three-conductor shutter release port (that is the vast majority of digital SLRs).

I intentionally avoided motor shields. I have my long list of reasons, but in general, I was happier with a single inexpensive quad half-H-bridge chip that I can much more easily wrap my head around.

It is a pretty sizable document, so rather than paste it here, I will direct you to the article on my website (no ads, no products being sold, I make no money from it): http://www.ryleeisitt.ca/articles/building-a-focus-stacking-controller/


"Pete, it's a fool (who) looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.
I speak for myself, not Arduino.


Looks really nice!! How did you make your housing for it?



Thanks for the comments!


I purchased the housing from SparkFun (it's called the Arduino Project Enclosure). It seems designed to fit an Arduino, battery, and Ethernet shield (with a little plastic removable tab for the Ethernet port). In practice I found that the space for the battery was perfect for my circuit, and the space for the Ethernet Shield was just enough space for some panel-mount jacks and the LCD screen.

It's a bit on the small side, so it's a little cramped in there. But it works!


A friend sent me a link a couple of weeks back where someone hacked the carriage of a flat-bed scanner to use for this very purpose.
"Pete, it's a fool (who) looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.
I speak for myself, not Arduino.


A plethora of similar hobbiest projects also exist

A plethora of similar hobbiest hobbyist projects also exist.

If you play the guitar, you are a guitarist.  If you don't wear clothes, you are a nudist.  If you engage in some hobby, you are a hobbyist.  In general, X-ist means "one who does X".

If you are bigger than everyone else, you are the biggest.  If you are richer than everyone else, you are the richest.  If you do your hobby better than anyone else you are... a professional.  Not a 'hobbiest'.

If you are very small and round, wear waistcoats, and traipse about Middle Earth, you are a hobbit.  No relation.

I don't wish to be tediously pedantic, while knowing that correcting the grammar of strangers on the internet is something only the hobbiest  8) of pedants do.  But as an EE design engineer I participate in many job interviews, vetting recent EE grads for the type of design position that tends to appeal to hardware hackers, and over the past year or so I've seen dozens of otherwise bright - sometimes potentially brilliant - candidates go down in flames when HR read the bit in their résumés about their "hobbiest" activities.

My role in these interviews is to determine the suitability of the candidate for the position, so I rarely even read their résumés (especially with new grads who might not have prior professional experience).  I give them a couple of problems and ask them to communicate their thought process as they solve them; the point is not to see if they can solve those problems, but to see how they approach solving problems in general.  I'm looking for signs of the kind of hard-won intuition that is found in most tinkerers, but only some students.

The people in Human Resources, however, get most of their information from the candidate's résumé.  One of the things they are looking for is a measure of the candidate's ability to communicate well, and they pay special attention to the candidate's technical writing abilities.  An inability to distinguish between adjectives and (pro)nouns, even in a case as seemingly irrelevant as this one, is taken by them to be potentially symptomatic of larger communication problems and/or professional, interpersonal, perhaps moral failings on the part of the candidate.  Which means it doesn't matter how talented I think the person is, HR simply isn't going to give them the job.

tl;dr: Be a hobbyist, but don't be the 'hobbiest' hobbyist... the career you save might be your own.


Feb 19, 2013, 02:27 pm Last Edit: Feb 19, 2013, 02:37 pm by retrolefty Reason: 1
Which means it doesn't matter how talented I think the person is, HR simply isn't going to give them the job.

Which means your company has it's hiring process and priorities messed up such that you are not able to hire the best candidate in your judgement, unless you too think grammar should be a prescreened show stopper. HR should have 'veto' on legal things like background checks, immigration status, valid drivers licence, maybe even credit check, but to allow them to pre-screen candidates based on resume grammar is just giving your competition a leg up.

I too was involved in a lot of candidate interviews as team leader of hiring for electronics technical positions in a large oil refinery. HR did have first shot at eliminating candidates, but their mandate was just for legal requirements and that basic job requirements were met, with no judgement based on resume content, that was in our mandate along with the candidate interview. In the last session I lead we had over 700 applicants apply for the positions being offered.

We too designed about six 'open ended' questions that made the candidates verbally explain their thought process to work through problems and I believe it did a good job of separating the wannabes from the been there done that types. We were hiring for experienced people so I imagine that if would be somewhat more difficult selecting from only recent graduates with minimum prior employment experience. The last round I lead we had to give 30 interviews over five days and 'force rank' them for our higher management (not HR management) to select how many they wished to hire from the list. They hired 12 of them and five years later 8 of them had been promoted to supervisory positions so I think our process was well designed and executed.


Go Up