Expand this Topic clickable element to expand a topic
Skip to content
Optica Publishing Group

Step-by-step guide to 3D print motorized rotation mounts for optical applications

Open Access Open Access

Abstract

Motorized rotation mounts and stages are versatile instruments that introduce computer control to optical systems, enabling automation and scanning actions. They can be used for intensity control, position adjustments, etc. However, these rotation mounts come with a hefty price tag, and this limits their use. This work shows how to build two different types of motorized rotation mounts for $1^{\prime \prime}$ optics, using a 3D printer and off-the-shelf components. The first is intended for reflective elements, such as mirrors and gratings, and the second for transmissive elements, such as polarizers and retarders. We evaluate and compare their performance to commercial systems based on velocity, resolution, precision, backlash, and axis wobble. Also, we investigate the angular stability using Allan variance analysis. The results show that our mounts perform similarly to systems costing as much as $\$ 2500\,\rm USD $, while also being quick to build and costing less than $\$ 220\,\rm USD$. As a proof of concept, we show how to control lasers used in an optical tweezers and Raman spectroscopy setup. When used for this, the 3D printed motorized rotational mounts provide intensity control with a resolution of 0.03 percentage points or better.

© 2021 Optical Society of America under the terms of the OSA Open Access Publishing Agreement

1. INTRODUCTION

Rotation mounts and rotary stages are essential in many optical systems. They are versatile and can be used to adjust the polarization direction in an attenuator setup, rotate the grating in a spectrometer, or change the position of mirrors and filters, among other things [1,2]. Having these optical elements motorized and controlled by a computer increases their usability by allowing higher accuracy and repeatability, as well as the possibility for automation and scanning actions. Unfortunately, commercial rotation mounts and their corresponding drivers come with a hefty price tag, discouraging their use.

On the contrary, 3D printers nowadays come with a fair price tag due to the Do-It-Yourself community [3] and they have gained significance in experimental research groups to develop laboratory-specific equipment [4,5]. This development has in turn made key components of both 3D printers and rotation mounts, such as stepper motors and drivers, inexpensive and readily available. Based on this, would it be possible to design rotation mounts that combine the advantages of 3D printing with the accessibility of its components? If so, how would its performance and cost compare to similar systems made by industry-leading manufacturers?

Previous papers addressing in-house rotation mounts [6,7] use fabrication techniques outside of the capabilities of the common laboratory. They developed rotation mounts that were either unsuitable for standard optics or used components that are not feasible to produce a low-cost product. They also used piezoelectric rotors, which are known to cause vibrations that can disturb sensitive measurements. Therefore, in this work, we design multipurpose rotation mounts for applications that uses $1^{\prime \prime}$ optics ($1 \;{\rm in}. = 2.54 \; {\rm cm}$). We build the mounts using a commercial 3D printer [Ultimaker $2 +$] then test and evaluate their performance. We constrain the budget to $\$ 220\,\rm USD $ per mount (incl. driver) and provide in-depth instructions and examples for building and integrating them into an optical setup.

2. MATERIALS AND METHODS

A. 3D Printing Rotational Mounts

There are two main configurations of the rotation mount, the reflective mount intended for reflective optical elements, and the transmissive mount intended for transmissive optical elements. The reflective mount seen in Fig. 1(a) has its axis of rotation along the optical element’s surface and is suitable for applications involving mirrors and gratings. The transmissive mount, seen in Fig. 1(b), instead has its axis of rotation perpendicular to the surface of the optical element and is more suitable for applications involving polarizers and retarders. Both setups include a selection of holders for different optical elements and applications, such as filter revolvers and universal base plates. The setups are made to be mounted on posts, where they can slide and be clamped down in any (square) direction to fit most applications. We provide 3D files with mounts for both metric and imperial post sizes, i.e., $\varnothing 12 \;{\rm mm}$ or $\varnothing 0.5\; {\rm in}.$, as well as the open-source 3D CAD model for further customization.

 figure: Fig. 1.

Fig. 1. (a) Reflective mount and (b) transmissive mount are 3D printed rotation mounts for different optical elements. Arrows show the rotation (solid) and position adjustment (dashed) for the mounts, which can be clamped to optical posts (omitted).

Download Full Size | PDF

1. Components

We divide the components used for the rotation mount into two categories, 3D printed parts and off-the-shelf components. Parts that can be 3D-printed include a base mount (the frame) and various rotor wheels used for different applications. They are designed in Rhinoceros 3D [Rhino 6, Robert McNeel & Associates], and the 3D CAD model (.3dm-file) can be found in [8,9], along with exported.stl (stereolithography) and.stp-files (AP 214, ISO 10303-21). These parts are designed to be made with a fusion deposition modeling (FDM) printer, allowing for rapid prototyping and in-house manufacturing.

Our mounts require a rigid and strong material to function properly. Common plastics such as polylactic acid (PLA), acrylonitrile butadiene styrene (ABS), and polyethylene terephthalate (PET/PETG) are all suitable alternatives, with the latter providing more durability [10]. We designed the mounts to print on almost any 3D printer without using support material with a wide range of parameter settings. We recommend a layer height of 0.4 mm and nozzle size of 0.6 mm, or less. The infill can be as low as 20%, and to increase the strength, the number of perimeters (shells) should be three or more. Further, which parts are needed depends on the application. To help select what parts to print, we provide a guide in Table 1. In places where tight tolerances are needed, such as thru-holes for shafts and rods, finishing work can be required. If a hole is too tight, it can be honed out with a simple hand drill.

The off-the-shelf components also depend on the configuration and, for this, part lists are provided in Appendix A. Even so, all rotation mounts use a standard NEMA 17 series stepper motor. We have in this work used the cheapest and most common one [17H2A4413, MotionKing], with a rotor resolution of 200 fullsteps/revolution (1.8°) and a holding torque of $40 {\rm N \cdot cm}$, which is the recommended minimum. There is an option to use factory-made aluminum pulleys for the transmissive mount, which is what we used in the early stages of development. However, these require extra machining to fit our application, and we noted no significant changes when shifting to the 3D printed equivalent. If selected, the lower drive wheel [21T5/16-2, RS PRO] needs a spacer for the drive shaft in the form of a $L21 \times {\varnothing _{\rm{in}}}\;5 \times {\varnothing _{\rm{out}}}\;6 \; {\rm mm}$ brass sleeve, and the upper rotor wheel [21T5/32-2, RS PRO] needs machining work, as described by Fig. S2 in Supplement 1.

Last, we manage to build the rotation mount described here for less than $\$ 180\,\rm USD $, using the components specified in Appendix A and assuming access to a 3D printer and basic tools. Note that the price for some parts might increase due to minimum order quantity requirements for some suppliers. As an example, we show the components needed for a transmissive mount in Fig. S1.

2. Build Guide

The assembly of a rotation mount starts by fitting the four ${\rm M6} \times 16\; {\rm mm}$ screws and nuts to the base mount (the frame); these are used to clamp it to the mounting posts. After this, the stepper motor is inserted and secured through the front with four ${\rm M3} \times 8\; {\rm mm}$ screws. Now, depending on the configuration, the following procedure will differ. For the reflective mount, a rotor base plate is mounted directly to the drive shaft of the stepper motor with an ${\rm M3} \times 6\; {\rm mm}$ set screw and nut. To this, an optic element holder is attached by a clockwise quarter rotation of the pretensioning fork (different rotors/holders are available). The optical element is clamped down from the top by an ${\rm M4}\;{\times}\;{6}\;{\rm mm}$ set screw and nut. The position of its front face can be adjusted to align it with the rotation axis, and this is done with an ${\rm M4}\;{\times}\;{25}\;{\rm mm}$ screw and nut. Two additional nuts are used to lock the screw and remove the slack (a spring can be used instead).

For the transmissive mount, the drive wheel is mounted to the stepper motor with an ${\rm M3}\;{\times }\;{6}\;{\rm mm}$ set screw and nut. The drive belt then transfers this rotation to the rotor wheel, and this is mounted to the cage rotation mount [CRM1/M, Thorlabs] with four No. ${4}\;{\times}\;{6}\;{\rm mm}$ screws. With the drive belt wrapped around both wheels, the cage rotation mount can be secured from the sides by four more No. ${4}\;{\times}\;{6}\;{\rm mm}$ screws. This should be done to give the drive belt suitable tension, and a good starting point is at 4 mm belt movement when applying 0.5 kg of force, as discovered while measuring backlash in Section 3.B. Last, with all the parts and tools at hand, the construction and incorporation of this rotation mount into an optical system can be done within a day, and that includes the building of a control unit (driver), as described next.

 figure: Fig. 2.

Fig. 2. Minimum electronics and wiring needed to run a rotation mount when using the MWE code. This setup uses an Arduino Nano microcontroller, a TMC2130 stepper driver, and a NEMA 17 stepper motor, all mounted to a half-size solderless breadboard.

Download Full Size | PDF

B. Building the Controller

1. Components and Wiring

To control the rotation mounts, we designed a controller based on a standard Arduino board [11] and a SilentStepStick stepper motor driver [TMC2130, TRINAMIC]. There are many Arduino board models suitable for this controller, and here we show the two most common models that can be used. The first is the Arduino Nano; its small size and PCB compatible headers are perfect for permanent installations and enclosures. The second is the Arduino Uno; its larger size and accessibility are handy for bench testing and experimentation. However, both of these have similar performance and wiring.

The control unit can be powered by a 9–12 VDC power adapter, and to stabilize the supply, a 100 µF (C1) electrolytic capacitor is connected between the supply rail and ground (GND). The supply rail is connected to the raw input of the Arduino (VIN) and the motor input of the driver (VM). The regulated output from the Arduino (5 V) is connected to the logical input of the driver (VIO), and a Schottky diode (D1) is connected back to the supply rail, with the cathode at the supply rail (allowing for a safe connection of USB before power supply).

In addition, a switch (S1) or a jumper can be used to toggle the auto-reset mode of the microcontroller on/off (used for uploading code), where a closed connection turns the mode off (this allows the controller to remain running during the loss of USB connection). On some Arduino boards (e.g., Nano V3.0), this can be realized by wiring the switch in series with a $120 \Omega$ resistor (R1) and connecting them between the reset pin of the Arduino (RST) and the regulated output (5 V). However, on other Arduino boards (e.g., Uno R3), there are two solder pads (RESET EN) that can be cut and connected to a switch with the same function.

The rest of the connections are described in Fig. 2, along with all the electrical components (see Appendix A) and wiring needed to control a rotation mount. Note that the wire colors of the stepper motor (M1) may vary between manufacturers and that each coil can be found with a basic continuity measurement. We show the wiring for a bi-polar (four wires) stepper motor, but a uni-polar (six wires) stepper motor can also be used by connecting the center tap of each of the two coils together. Additionally, the stepper motor driver can be fitted with a small heat flange on top to increase system stability, and these are often provided by the manufacturer.

2. Programming

The controller needs to be programmed before it can be used to control a rotation mount, and for this, we provide a minimal working example (MWE) code called RotorMountController_MWE. With this code, the angle of a rotation mount can be controlled from a computer and with floating-point precision. A more comprehensive code called RotorMountController_Multiple is also provided, and both of these are available in [12]. The latter shows how to control four different rotation mounts (and drivers) simultaneously using one Arduino Nano/Uno, as well as how to incorporate software (SW) emulated origins, backlash compensation, intensity control, and more.

To compile and upload code to the board, we used the open-source Arduino IDE (V.1.8.12). This requires some additional (open-source) libraries to be downloaded, and these are described in the code. When proceeding, remember to select the correct rotor resolution, gear ratio, and step size (microsteps); these are defined in the code. However, in case of problems with compiling the code or downloading libraries, pre-compiled binary files (.ino.hex) of the MWE code can be found in [12] for both Arduino boards and rotation mounts (for a rotor resolution of 200 fullsteps/revolution and a step size of 128 microsteps). The procedure for uploading a binary file in Windows is described in detail in Appendix B.

The USB interface of the controller can be accessed directly by the serial monitor in Arduino’s IDE or one such as RealTerm. It can also be integrated into larger automation SW, such as LabVIEW, because of its command-based interface. The interface for the MWE consists of two functions, one for setting the rotor angle (“SRA_<DEGREES>”) and one for getting the rotor angle (“GRA” $\to$ DEGREES) from the mount. A help function (“HELP”) is also included to aid the operator while testing. When using a serial monitor to talk with the controller, it is important to have chosen the correct Baud rate (57600) and EoL character (${\rm CR} + {\rm LF}$) for the current system.

3. TEST AND COMPARISON

A. Measuring Setup

Before we can compare our 3D printed rotation mounts to commercially available systems, we need to measure and evaluate their most relevant attributes. To perform these tests, the MWE code is modified by adding single-stepping capabilities, and a simple setup is constructed. This setup is used for both reflective and transmissive mounts and can be seen under test conditions in Fig. 3, except now with ambient light present. The rotation mounts are positioned to rotate in the plane of the table, i.e., with the axis of rotation oriented vertically. Each mount is fitted with a $1^{\prime\prime}$ flat mirror [5101-VIS, New Focus, Inc.], mounted with its reflective surface along this axis. The rotation of the mounts can then be determined from trigonometry by reflecting a laser beam and measuring its position.

 figure: Fig. 3.

Fig. 3. Setup used to test 3D printed rotation mounts, here seen with the reflective mount (RM). A laser beam is reflected by the rotating mirror (M), and its position is measured by the PSD. The remaining light is reflected to a beam dump (BD) and absorbed.

Download Full Size | PDF

For this, a He–Ne laser (633 nm, 7 mW) [1137/P, JDS Uniphase] is used, and it is reflected towards a $20 \times 20 \; {\rm mm}$ position sensitive detector (PSD) [2L20_SU9, SiTek]. This is mounted a given distance $D$ after the rotating mirror, which limits the measurement range of the flat detector plane to ${\pm}15 \; {\rm mrad}$ (2°). The stage rotation is calculated by $\omega = 0.5 \cdot {\rm arctan} (d/D)$, where the spot distance $d$ on the detector is calibrated from the PSD signal and for one fullstep. The signal is collected with a computer, using a data acquisition unit (DAQ) [BNC-2090, National Instruments]. To avoid aliasing, a low-pass filter [SR640, Stanford Research Systems Inc.] is used with a cutoff frequency of 4 kHz, while sampling just above the Nyquist frequency (8192 Hz). Data are processed from the DAQ in a custom LabVIEW program [2018_V.18.0f2, National Instruments] (Fig. S4) and further analyzed in MATLAB [R2020a, MathWorks]. To aid in measurement accuracy, the setup is built upon a Nexus vibration isolated optical table [T1020CK, Thorlabs] and situated in a temperature controlled room ($296 \pm 1 \;{\rm K}$).

 figure: Fig. 4.

Fig. 4. Minimum incremental motion at different step sizes for the (a) reflective mount and (b) transmissive mount, calculated from the step response data in Fig. S5. A stepper motor with 200 fullsteps/revolution (1.8°) resolution is used, and we measure over a stage rotation of 1°–2°, resulting in different sample sizes ($n$) for each set.

Download Full Size | PDF

B. Evaluation Criteria

We evaluate the reflective and transmissive mount separately, because of their difference in construction. The results are then compared to manufacturer specifications for commercial mounts with clear apertures of $\varnothing 20 {-} 40 \; {\rm mm}$; see Table 2.

1. Velocity

The rotation of these stages is made in discrete steps, since we are using stepper motors, and the size of these steps can be reduced by dividing them into microsteps. A maximum step rate of 4,000 microsteps/s is allowed by the controller when using an Arduino Nano/Uno (clock-rate limited). This is equivalent to 6.4 s/rev and 12.8 s/rev, for the reflective and transmissive mounts, respectively, and at a resolution of 128 microsteps. If greater velocities are required, the resolution can be lowered by using fewer microsteps. The maximum velocity for our setups is reliably achieved at a resolution of 8 microsteps, to 0.4 s/rev and 0.8 s/rev, respectively. This is limited by the strength of our stepper motor but is still higher than that reported for most commercial systems.

2. Resolution

The minimum incremental motion, here denoted (angular) resolution, is a property dependent on the stepper motor, the transmission, and the controller. It is defined as the change in steady-state angle between consecutive steps, and this is to disregard intermediate overshoots, as seen in Fig. S5a. We start by investigating the reflective mount with its direct transmission (1:1). Since we always use the same stepper motor, the step size of the driver becomes decisive for the final resolution, and this driver can divide each fullstep into a much as 256 microsteps.

Looking at the median resolution for each step size in Fig. 4(a), it can be assumed that the experimental data are in good accordance with the theoretical design resolution, and this would give a “typical” resolution of $110 \pm 60\;\unicode{x00B5}{\rm rad}$ at 256 microsteps for the reflective mount. However, we would argue that the maximum value for each set would constitute a better estimate for its nominal resolution. On this basis and while taking into account the decline in stepper motor torque (and hence acceleration) for smaller step sizes, a value of 128 microsteps seems to give an adequate step size and a “guaranteed” resolution of 310 µrad.

Now, looking at the transmissive mount with its belt transmission (2:1) in Fig. 4(b), a “typical” resolution of $70 \pm 30\; \unicode{x00B5}{\rm rad}$ is achieved at 256 microsteps, but the departure from the design resolution has become more apparent. It shows an increasing number of outliers at smaller step sizes, and these are caused by the delay and (non-returning) overshoot of steps, so-called stick-slip behavior. These can be seen in the raw step response data in Fig. S5b and are a result of static friction in the cage rotation mount [CRM1/M, Thorlabs] and play (clearance) in the belt transmission. Consequently, this will reduce the “guaranteed” resolution, and a value of 310 µrad is again observed at 128 microsteps.

The maximum resolution is on par with many (but not all) commercial stages, and this is a compromise done to lower cost and ease manufacturing. With that said, for many applications, this resolution is more than adequate. For example, in an optical attenuator setup, the transmitted intensity $I$ is given by Malus’s law [13] as

$$I = {I_0} \cdot {\cos}^2 {\theta _i} ,$$
where ${I_0}$ is the input intensity (or irradiance) of the light, and ${\theta _i}$ is the angle between the light’s polarization and the fast axis of the polarizing element. Its derivative describes the final resolution in intensity for the setup and can be written as $I^\prime = - {I_0}\sin 2\theta$, which decreases at low intensities (${\theta _i} \to \pi /2 {\rm rad}$). Thus, the resolution is much better ($I^\prime \to 0$) at low intensities, where it is often needed the most, compared to in the middle. Even so, a “guaranteed” resolution of 0.03 percentage points intensity is achieved in the middle for both rotation mounts, and this is usually more than enough.

3. Precision

The uni-directional repeatability is commonly used as a measure for precision, and it shows how close to a reference position it will come while returning from the same direction and a suitable (angular) distance away. Here we measured this by rotating the stages in increments of full revolutions ($2\pi {\rm rad}$) and finding the maximum deviation between these. This results in a precision of 250 µrad and 600 µrad, for the reflective and transmissive mounts, respectively, and at 128 microsteps resolution—a precision that falls within that of most commercial mounts. Moreover, the absolute position is not defined when using an open-loop system such as a stepper motor. So to aid in repeatability, a homing switch is usually incorporated into the setup. For the sake of simplicity, we instead show how to implement SW emulated origins in the program of the controller.

4. Backlash

The backlash, also called bi-directional repeatability or hysteresis, is a measure of the total accumulated play in a system and is noticeable as an angular loss when altering rotational direction [14]. For the reflective mount (direct drive), there is no significant mechanical play in the system, but rather the backlash is a product of the stepper motor torque and bearing friction. For the transmissive mount (belt drive), the backlash is dominated by the transmission and is a product of the belt tension. Removing slack in the belt by increasing its tension will generally decrease the backlash. However, if the belt tension is too high, excess friction in the cage rotation mount [CRM1/M, Thorlabs] will arise, resisting the torque of the stepper motor and instead contributing to an increase in backlash.

A compromise between these must therefore be found, and for our mount, this is at 4 mm movement when applying 0.5 kg of (normal) force to the belt, midway between the wheels. This results in a backlash of 700 µrad and 7000 µrad, for the reflective and transmissive mounts, respectively, and at 128 microsteps resolution. Additionally, an alternative technique for backlash reduction can be implemented in the SW, and this is shown in RotorMountController_Multiple. With this compensation algorithm tuned for the transmissive mount, the backlash can be reduced by a factor of 10 or more, and this results in backlash smaller than that for most commercial mounts.

To optimize the belt tension and tune the algorithm, a setup for measuring stage rotation (similar to above) is needed. First, move the rotation mount a relative distance $d$ away from the start position ($d$ needs to be more than the expected backlash) and measure this reference position ${p_{\rm{ref}}}$. After that, rotate in the same direction a distance $d$. Finally, rotate back by a distance $d$ and measure this final position ${p_{\rm{fin}}}$. If the return rotation stopped short, not reaching ${p_{\rm{ref}}}$, there is backlash in the system. The distance between ${p_{\rm{ref}}}$ and ${p_{\rm{fin}}}$ indicates the extent of the backlash. Using this approach, start by finding a suitable belt tension to minimize the backlash. After that, the remaining backlash can be compensated for in the code by one of the stepper settings in the config file. If you cannot measure the backlash, we suggest using our default setting presented above.

5. Axis Wobble

Changes in tilt of the rotation axis during stage movements are called axis wobble. We estimate this with the same setup as before; however, we now measure the departure from the horizontal axis. This is done by sampling the vertical position of the spot on the PSD. The results, seen in Fig. S6, show the axis wobble for a stage rotation of 2°. The 95% confidence bounds give an axis wobble of ${\pm}52\;\unicode{x00B5}{\rm rad}$ and ${\pm}35\;\unicode{x00B5}{\rm rad}$, for the reflective and transmissive mounts, respectively. This is less wobble than that for most commercial mounts, and, as expected, the plain bearing in the cage rotation mount (transmissive) gives smoother operation than the ball bearing in the stepper motor (reflective). Note that these measurements were done only for a limited range and are dependent on the quality of the components used.

 figure: Fig. 5.

Fig. 5. Optical attenuator setup uses a transmissive mount (TM) to rotate a retarder ($\lambda /2$) and change the polarization direction, thus controlling the output power of the laser. This shows an application for the rotation mount, using it to remotely control parameters in an optical system. (a) Multiple attenuator setups each using a TM, and one is mounted upside down to allow for a lower beam path. (b) Schematic representation of the optical attenuator setup. The dashed (blue) and solid (red) lines represent the linear polarization components of the laser light, propagating from right to left. The first gets reflected by the polarizing beam splitter (PBS) and absorbed by the beam dump (BD), while the second gets transmitted towards the optical fiber.

Download Full Size | PDF

6. Stability

Angular stability is crucial for the reflective mount to not introduce disturbances into the optical system. We estimated the stability by measuring the angle of a stationary rotation mount for long periods of time and using Allan deviation calculations [15,16]. The result is presented in Fig. S7, and it shows that there is no increase in fluctuations when turning on the stepper motor power as opposed to when it is turned off. The predominant deviations are observed at the highest frequencies (1 kHz) and most likely originate in electrical interference of the measurement equipment. Still, the angular fluctuations of the mount are in both cases negligible and orders of magnitude smaller than the resolution, at less than 2 µrad. Moreover, the low stepper noise of this setup is important while performing sensitive measurements, and this would not be possible using the piezoelectric rotor from previous works. This capability is introduced by StealthChop technology, found in newer stepper motor drivers.

4. EXAMPLE APPLICATION

As a proof of concept, we show how a rotation mount can be used to control the output power of multiple lasers used for optical tweezers and Raman spectroscopy measurements [17,18]. To fill the back aperture of our microscope objective and to get a strong lateral optical trap, we need an attenuator that can handle a beam diameter up to 20 mm. A detailed description of the system is shown in [19], and the attenuator setup is seen in Fig. 5. An earlier iteration of the transmissive mount is used to rotate a retarder ($\lambda /2$) at the exit of each laser. In conjunction with a polarizing beam splitter (PBS), this allows for attenuation of the laser output before coupling it towards the optical tweezers setup (via optical fibers). This gives us control of the trap stiffness and composition without affecting the enclosed system’s stability (thermal/mechanical). The transmissive mount is suitable for in-line optical elements and can be further developed for other applications, such as spatial filtering (aperture control), etc. The reflective mount came about with the intent to allow for the construction of spectrometers and other scanning applications. However, it can also be used as a beam selector, filter revolver, or other application requiring stable and silent rotation [20].

5. CONCLUSION

We show an easy way of constructing rotation mounts using tools and equipment available in most laboratories. By keeping the design simple and implementing functions in the program of the control unit, we have reduced the number of components, the price, and the build time considerably in comparison to previous works. A rotation mount and driver can be built within a day for no more than $\$ 220\,\rm USD$. Still, their performance is sufficient enough for most applications and on par with commercial systems costing as much as $\$ 2500\,\rm USD $.

We provide component lists, build instructions, and example codes for two types of rotation mounts. We also provide open-source 3D models for the manufacturing and further modifications of the system. A comprehensive list of commercial stages and their specifications are given in Table 2, to aid researchers in need of a motorized rotation mount.

Tables Icon

Table 1. Selection Guide with All 3D Printed Components Available for a Rotation Mounta

Tables Icon

Table 2. Comprehensive List of Commercial Motorized Rotation Mounts (360°) for 20–40 mm Optics, Including Corresponding Controllers and Sorted after the Total Price for One Mount and Controllera

APPENDIX A: OFF-THE-SHELF COMPONENT LIST

Transmissive Mount:

  • • 1 pc–NEMA 17 Stepper Motor [17H2A4413, MotionKing]
  • • 1 pc–Drive Belt [10/T5/245SS, Contitech] (see Fig. S3)
  • • 1 pc–Cage Rotation Mount [CRM1/M, Thorlabs]
  • • 2 pcs–$\varnothing {12}\;{\times}\;{150}\;{\rm mm}$ Optical Post [TR150/M-JP,Thorlabs]
  • • 4 pcs–${\rm M6}\;{\times }\;{16}\;{\rm mm}$ Socket Screw [HK76168, Holo-Krome]
  • • 4 pcs–M6 Hex Nut [189-591, RS PRO]
  • • 8 pcs–No. ${4}\;{\times}\;{6}\;{\rm mm}$ Socket Screw [HK72018, Holo-Krome]
  • • 4 pcs–${\rm M3}\;{\times}\;{8}\;{\rm mm}$ Socket Screw [HK76012, Holo-Krome]
  • • 1 pc–${\rm M3}\;{\times}\;{6}\;{\rm mm}$ Set Screw [529-911, RS PRO]
  • • 1 pc–M3 Hex Nut [189-563, RS PRO]

Reflective Mount:

  • • 1 pc–NEMA 17 Stepper Motor [17H2A4413, MotionKing]
  • • 4 pcs–$\varnothing {12}\;{\times}\;{50}\;{\rm mm}$ Optical Post [TR50/M-JP, Thorlabs]
  • • 4 pcs–${\rm M6}\;{\times}\;{16}\;{\rm mm}$ Socket Screw [HK76168, Holo-Krome]
  • • 4 pcs–M6 Hex Nut [189-591, RS PRO]
  • • 1 pc–${\rm M4}\;{\times}\;{25}\;{\rm mm}$ Socket Screw [HK76080, Holo-Krome]
  • • 1 pc–${\rm M4}\;{\times}\;{6}\;{\rm mm}$ Set Screw [529-949, RS PRO]
  • • 4 pcs–M4 Hex Nut [527-252, RS PRO]
  • • 4 pcs–${\rm M3}\;{\times}\;{8}\;{\rm mm}$ Socket Screw [HK76012, Holo-Krome]
  • • 1 pc–${\rm M3}\;{\times}\;{6}\;{\rm mm}$ Set Screw [529-911, RS PRO]
  • • 1 pc–M3 Hex Nut [189-563, RS PRO]

Control Unit:

  • • Microcontroller Board [Nano V3.0 or Uno R3, Arduino]
  • • SilentStepStick Driver Board [TMC2130, TRINAMIC]
  • $12 VDC$ Power Adapter [GST36E12-P1J, MEAN WELL]
  • • 100 µF Electrolytic Capacitor [ECA1CM101, Panasonic]
  • • Schottky Diode [1N5402RLG, ON Semiconductor]
  • ${2.1}\;{\times}\;{5.5}\;{\rm mm}$ Barrel Jack [RND 205-00905, RND Connect]
  • • Slide Switch (SPST) [MFS 131 D, KNITTER-SWITCH]
  • $120 \Omega$ Axial Resistor [174-2788, RS PRO]
  • • Add’l: Breadboard, jumper cables, enclosure, USB-cable.

APPENDIX B: UPLOAD COMPILED BINARY FILE WITH ARDUINO IDE (V.1.8.12) IN WINDOWS (7/8/10)

  • 1. Connect the Arduino board to a computer via USB.
  • 2. Start the Arduino IDE and open the Blink sketch (File $\to$ Example $\to$ 1.Basic).
  • 3. Choose the correct board type and serial port (Tools $\to$ Board/Port).
  • 4. Turn on output during uploading (File $\to$ Preferences $\to$ Settings $\to$ Show verbose output during: upload).
  • 5. Upload the sketch (Sketch $\to$ Upload).
  • 6. In the output panel of the IDE, find and copy the AVR-Dude call, i.e., the first line after the “Global variables use…” line.
  • 7. Paste this command into any text editor and replace the rightmost file path: (C:\Users\…\arduino_build_XXXXXX/ Blink.ino.hex:i) with the absolute file path to the new binary file (C:\Users\…/RotorMountController_MWE.ino.hex).
  • 8. For Windows 8 or newer: put all three (3) file paths inside quotation marks (-CC:\Users\…/avrdude.conf $\Rightarrow-{\rm C}^{\prime\prime}$C:\Users\…/avrdude.conf”, etc.).
  • 9. Open the Command Prompt (Ctrl$+$Esc $\to$“cmd”), then paste and run the modified command.

Funding

Stiftelsen för Strategisk Forskning (2019-04016); Vetenskapsrådet (2019-04016).

Disclosures

The authors declare no conflicts of interest.

Data Availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

Supplemental document

See Supplement 1 for supporting content.

REFERENCES

1. H. Lotem, A. Eyal, and R. Shuker, “Variable attenuator for intense unpolarized laser beams,” Opt. Lett. 16, 690–692 (1991). [CrossRef]  

2. F. Fueten, “A computer-controlled rotating polarizer stage for the petrographic microscope,” Comput. Geosci. 23, 203–208 (1997). [CrossRef]  

3. J. J. Tully and G. N. Meloni, “A scientist’s guide to buying a 3D printer: how to choose the right printer for your laboratory,” Anal. Chem. 92, 14853–14860 (2020). [CrossRef]  

4. T. Baden, A. M. Chagas, G. Gage, T. Marzullo, L. L. Prieto-Godino, and T. Euler, “Open labware: 3-D printing your own lab equipment,” PLoS Biol. 13, e1002086 (2015). [CrossRef]  

5. B. J. Winters and D. Shepler, “3D printable optomechanical cage system with enclosure,” HardwareX 3, 62–81 (2018). [CrossRef]  

6. D. P. Shelton, W. M. O’Donnell, and J. L. Norton, “Note: fast, small, accurate 90 rotator for a polarizer,” Rev. Sci. Instrum. 82, 14–17 (2011). [CrossRef]  

7. A. Rakonjac, K. O. Roberts, A. B. Deb, and N. Kjærgaard, “Note: computer controlled rotation mount for large diameter optics,” Rev. Sci. Instrum. 84, 026107 (2013). [CrossRef]  

8. D. Nilsson, “Motorized optical mounts/stages,” 2021, https://www.thingiverse.com/thing:4401441.

9. D. Nilsson, “Rotormount_cad,” figshare (2021), https://figshare.com/articles/dataset/RotorMount_CAD/14054873/1.

10. M. M. Hanon, R. Marczis, and L. Zsidai, “Anisotropy evaluation of different raster directions, spatial orientations, and fill percentage of 3D printed PETG tensile test specimens,” Key Eng. Mater. 821, 167–173 (2019). [CrossRef]  

11. Y. A. Badamasi, “The working principle of an Arduino,” in Proceedings of the 11th International Conference on Electronics, Computer and Computation (ICECCO) (2014).

12. D. Nilsson, “Rotormountcontroller_code,” figshare (2021), https://figshare.com/articles/software/RotorMountController_Code/14054855/1.

13. E. Collett, Field Guide to Polarization (SPIE, 2005).

14. R. Merzouki, J. C. Cadiou, and N. K. M’Sirdi, “Compensation of friction and backlash effects in an electrical actuator,” Proc. Inst. Mech. Eng. Part I J. Syst. 218, 75–84 (2004). [CrossRef]  

15. D. W. Allan, “Statistics of atomic frequency standards,” Proc. IEEE 54, 221–230 (1966). [CrossRef]  

16. M. Hopcroft, “Allan.m (v.2.28),” MATLAB Central File Exchange (2021) [retrieved 12 April 2021], https://www.mathworks.com/matlabcentral/fileexchange/13246-allan.

17. T. Stangner, T. Dahlberg, P. Svenmarker, J. Zakrisson, K. Wiklund, L. B. Oddershede, and M. Andersson, “Cooke–triplet tweezers: more compact, robust, and efficient optical tweezers,” Opt. Lett. 43, 1990–1993 (2018). [CrossRef]  

18. D. Malyshev, T. Dahlberg, K. Wiklund, P. O. Andersson, S. Henriksson, and M. Andersson, “Mode of action of disinfection chemicals on the bacterial spore structure and their Raman spectra,” Anal. Chem. 93, 3146–3153 (2021). [CrossRef]  

19. D. Nilsson, “Development of next-generation optical tweezers: the new Swiss army knife of biophysical and biomechanical research,” Master’s thesis (Umeå University/Department of Physics, 2020).

20. T. Stangner, H. Zhang, T. Dahlberg, K. Wiklund, and M. Andersson, “Step-by-step guide to reduce spatial coherence of laser light using a rotating ground glass diffuser,” Appl. Opt. 56, 5427–5435 (2017). [CrossRef]  

Supplementary Material (1)

NameDescription
Supplement 1       Supplemental figures

Data Availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

Cited By

Optica participates in Crossref's Cited-By Linking service. Citing articles from Optica Publishing Group journals and other participating publishers are listed here.

Alert me when this article is cited.


Figures (5)

Fig. 1.
Fig. 1. (a) Reflective mount and (b) transmissive mount are 3D printed rotation mounts for different optical elements. Arrows show the rotation (solid) and position adjustment (dashed) for the mounts, which can be clamped to optical posts (omitted).
Fig. 2.
Fig. 2. Minimum electronics and wiring needed to run a rotation mount when using the MWE code. This setup uses an Arduino Nano microcontroller, a TMC2130 stepper driver, and a NEMA 17 stepper motor, all mounted to a half-size solderless breadboard.
Fig. 3.
Fig. 3. Setup used to test 3D printed rotation mounts, here seen with the reflective mount (RM). A laser beam is reflected by the rotating mirror (M), and its position is measured by the PSD. The remaining light is reflected to a beam dump (BD) and absorbed.
Fig. 4.
Fig. 4. Minimum incremental motion at different step sizes for the (a) reflective mount and (b) transmissive mount, calculated from the step response data in Fig. S5. A stepper motor with 200 fullsteps/revolution (1.8°) resolution is used, and we measure over a stage rotation of 1°–2°, resulting in different sample sizes ( $n$ ) for each set.
Fig. 5.
Fig. 5. Optical attenuator setup uses a transmissive mount (TM) to rotate a retarder ( $\lambda /2$ ) and change the polarization direction, thus controlling the output power of the laser. This shows an application for the rotation mount, using it to remotely control parameters in an optical system. (a) Multiple attenuator setups each using a TM, and one is mounted upside down to allow for a lower beam path. (b) Schematic representation of the optical attenuator setup. The dashed (blue) and solid (red) lines represent the linear polarization components of the laser light, propagating from right to left. The first gets reflected by the polarizing beam splitter (PBS) and absorbed by the beam dump (BD), while the second gets transmitted towards the optical fiber.

Tables (2)

Tables Icon

Table 1. Selection Guide with All 3D Printed Components Available for a Rotation Mount a

Tables Icon

Table 2. Comprehensive List of Commercial Motorized Rotation Mounts (360°) for 20–40 mm Optics, Including Corresponding Controllers and Sorted after the Total Price for One Mount and Controller a

Equations (1)

Equations on this page are rendered with MathJax. Learn more.

I = I 0 cos 2 θ i ,
Select as filters


Select Topics Cancel
© Copyright 2024 | Optica Publishing Group. All rights reserved, including rights for text and data mining and training of artificial technologies or similar technologies.