In the scope of my PhD, I would like to build an automated microscopy set-up that should take images of a sample of 2cm by 2cm. This should be done by taking pictures of 500 micrometers by 500 micrometers.

Therefore I need to design an XY-stage moving my sample over the optical setup. I would use a Raspberry Pi to steer all the hardware.

Could you direct me to material about how to best make an XY-stage ? My questions are about what types of motors to use (stepper?), how many, how to create a good sliding mechanism to avoid jerky steps, etc.

Simple links to basic engineering of such set-ups would be more than enough for me to start, as I am a complete layman in this field.

EDIT: I have found this blogpost. It does what I require, if I get small enough angle step stepper motors.

EDIT2: I need a maximal range of motion of 10 cm in both directions. The overall size should not exceed 30x30 cm^2. Step sizes should not exceed 10 microns. I do not care about moving speed. Based upon the design in the link, buying a stepper motor with a 100:1 gear box could allow my very small radial steps (<0.05 deg) which would result in about 5 micron steps, assuming a rotor radius of about 1cm. As far as price goes, it should not exceed commercially available options which start at about 5k USD

  • $\begingroup$ Hello, as it stands now you're asking a very open-ended design question that's liable to get closed. You want how "to best" make an XY-stage with a "good" sliding mechanism and no "jerky" steps. As there are plenty of options to be found on Google, is there some particular reason you're wanting to build your own? I'm assuming you have some limits; e.g., you need it to be of some size (to fit under a microscope), you need to have some position resolution (how much overlap between pictures? etc.) - these criteria drive the system design. $\endgroup$
    – Chuck
    Jul 13, 2015 at 13:11
  • $\begingroup$ Why don't you just buy a 3d printer and reprograms it? @Chuck: Most xy-tables will have a much higher resolution. 0.5mm are rather large steps. $\endgroup$
    – FooTheBar
    Jul 13, 2015 at 14:03
  • $\begingroup$ Yeah, maybe so, but my point is there are no numbers given; OP is asking us to design a "good" table with no criteria. $\endgroup$
    – Chuck
    Jul 13, 2015 at 18:03
  • $\begingroup$ Mathusalem, please edit your question to add some specs, per previous comments; eg required accuracy, required speed. Also, why does it matter to you if the steps are jerky? Presumably you wait for the stage to stop moving before taking a micrograph. (I agree that in general smooth motion may be better but why does it matter in this particular case?) $\endgroup$ Jul 13, 2015 at 18:31
  • $\begingroup$ If you could edit your question to be a practical, answerable question based on actual problems that you face then we can see if we can get this re-opened. Even if you do provide specs though, it sounds like you make be talking about a off the shelf product, in which case shopping questions are off topic too, as you should know. $\endgroup$
    – Mark Booth
    Jul 14, 2015 at 17:22

2 Answers 2


Simple X-Y stages are well understood and form the basis for the many open source hardware projects for 3D printers.

Each axis of an XY stage can be made from a pair of 6mm stainless steel rods, three LM6UU 6mm Linear Ball Bearings, a stepper motor (typically a NEMA14/17/23 motor) and stepper driver electronics. These axes can then be connected to the Digital IO on your Raspberry Pi.

If you have access to a 3D printer, then many of the components needed to link these elements together can be downloaded and printed out. If you don't, and don't want the expense of getting a bureau to print these parts for you, then they could be fabricated in a workshop by drilling and cutting plastic, metal or even wooden blocks. If you can find appropriate the 3D (as used by 3D printers), you should be able to extract all of the information you need to fabricate them manually.

In terms of driver electronics, I would suggest that you have a look at the Open Source dual stepper motor driver by folknology, as this is a simple double sided PCB design which uses entirely through-hole components (great if you aren't too handy with the surface mount soldering required by many designs).

The XY Table blog post you posted by Geir Andersen provides a pretty good example of how to do this. The only thing I would question would be the use of two bearings on the upper stage (one per rod) and what appears to be 4 bearings on the lower stage (two per rod). I would suggest using three on each instead.

You might assume that you would want each rod to have two bearings each (the symmetry appeals aesthetically), but you get better performance, stability and accuracy by putting two bearings on one rod (usually the one closest to the drive belt) and only one bearing on the other rod, so you effectively have a leader and a follower. This prevents over-constraint, where movement is not smooth because one end is fighting the other (both trying to be 'leaders' keeping the beam perpendicular to the rod).

Similarly, only two bearings is under constrained. This is fine when your load and/or speed is low, but doesn't do as well with keeping your beam perpendicular to the rod as a three bearing system would.

  • $\begingroup$ Thank you for your answer. I'll pay attention to your recommendations about the drivers and the bearings. I should have a prototype in the following weeks. I'll come back and post the result if it can be of any interest. $\endgroup$
    – Mathusalem
    Jul 15, 2015 at 12:03
  • $\begingroup$ Absolutely, once you have the hardware built I'm sure there will be plenty of questions about the rest of the system. *8') $\endgroup$
    – Mark Booth
    Jul 15, 2015 at 12:09

You mentioned step size of 10 microns...It is not certain that you can achieve this precision with conventional stepper motors and diy hardware. the backlash in the gearbox (especially if multi stage) would exceed your required precision...I would recommend looking into precision piezo actuators...

These come to mind: http://www.physikinstrumente.com/products.html

To my knowledge they have high precision x-y tables and suitable controller for them that you can interface also form an arduino (or something else, e.g. Matlab). Should be right around your budget, maybe a bit higher... You can also look for different manufacturer for piezo linear actuators...


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.