The recent burgeoning interest in massive multiobject spectroscopy has pushed the development of massive optical fiber positioning systems. These systems rely on precise fiber placement to detect the light spectra of many stars and galaxies. One successful approach is the use of robotic fiber positioners, which allow one to automate and scale up observations. However, due to the need for high precision and accuracy, each positioner must be calibrated and verified to comply with the requirements. The calibration measurements are nontrivial, and the large number of the robotic positioners up to thousands can lead to a prohibitively long time for calibration. We describe and validate an optical calibration setup and procedure for robotic fiber positioning systems. Based on the measurements results, we have developed models describing the behavior of the positioners and we introduce new performance metrics that allow one to verify the stringent positioner specifications and furthermore help to identify and analyze design and manufacturing flaws.

## 1.

## Introduction

An increasing demand for massive spectroscopic surveys has led to the development of several new multiobject spectrograph (MOS) projects. These instruments are capable of measuring the spectra of hundreds of galaxies or stars simultaneously, whereas several have already been built (e.g., Sloan Digital Sky Survey/Baryon Oscillation Spectroscopic Survey,^{1} Large Sky Area Multi-object Fibre Spectroscopic Telescope,^{2} Multi-Espectrógrafo en GTC de Alta Resolución para Astronomía (MEGARA),^{3} and TAIPAN^{4}) many are currently under development (e.g., dark energy spectroscopic instrument (DESI),^{5} prime focus spectrograph (PFS),^{6} WHT enhanced area velocity explorer,^{7} multiobject optical and near-infrared spectrograph (MOONS),^{8} and 4-metre multi-object spectroscopic telescope^{9}). All these new robotic fiber-fed instruments rely on small, high-precision mechanisms for the accurate positioning of optical fibers. In order to capture the light of the stars or galaxies, the fiber ends are precisely positioned at the telescope’s focal surface, such that the fiber cores match their designated targets on the sky. One successful positioning approach is the use of robotic positioners with two axes of rotation such as used for MEGARA,^{10} MOONS,^{11} PFS,^{12}^{,}^{13} DESI,^{14}^{,}^{15} and more recently for SDSS-V^{16} and also proposed by others.^{17}^{–}^{24} These positioners carry out Cartesian ($x,y$) planar movements using two actuated rigid arms serially linked. They have SCARA-like kinematics with two motorized rotational joints. A sketch is shown in Fig. 1. By commanding the motors, the fiber ends can accurately be maneuvered to their targets on the focal surface. Instrument performance depends largely on $x,y$ position precision and correct angular alignment of the fiber ends. Fiber positioning errors and fiber end misalignment lead to a throughput loss due to vignetting and focal ratio degradation, respectively. Therefore, the pointing performance of every single positioner has to be verified and crucial parameters have to be characterized in order to ensure accurate positioning and alignment. Furthermore, the number of positioners used in a single telescope has been steadily increasing and ranges in recent project from 500 (SDSS-V) up to 5000 (DESI) units. It is to be expected that this number will continue to grow for future projects. Therefore, it is important to facilitate quality control and to minimize overall verification and characterization time per positioner.

The position accuracy is usually measured by equipping the positioners with a back-illuminated optical fiber. The position of the fiber is then accurately tracked with a single camera installed in front of the positioners.^{25}^{,}^{26} Existing methods that verify the correct alignment of the positioner use a back illuminated fiber with a focal lens and a camera.^{10}^{,}^{27} MOONS uses a project specific approach for alignment verification. Their positioners are designed so that all fibers, independent of fiber end location, always point to a common focal point. The fiber is back-illuminated, and a screen is placed at the focal distance. The correct fiber alignment is verified when the projection of the light cone on the screen does not move for different motor configurations of the positioner.^{28}

This paper proposes an automatic procedure that can characterize, calibrate, and validate SCARA-like fiber positioners for MOSs. First (Sec. 2), we describe the functional principle of the metrology setup, which allows one to measure the $x,y$ position and the angular alignment of the fiber end as we have introduced previously.^{27} Then (Sec. 3), we discuss calibration aspects of the metrology system needed for precise measurements. In Sec. 4, we derive parametric models describing the behavior of the positioners. Finally (Sec. 5), we introduce different performance metrics such as absolute position accuracy, repeatability, and hysteresis, which allow one not only to characterize the positioners but also to specifically identify possible design and manufacturing flaws such as problems with bearings, reduction gears, backlash compensation, and misalignments of individual axes of rotation. The introduced procedure can not only validate the positioners by predicting the positioning performance but also calibrate parameters such as arm lengths and offsets, which are used by the controller in order to minimize positioning errors.

## 2.

## Description of the Metrology System

The metrology system measures the $x,y$ position of the fiber and also the angle of the exiting light cone coming out of the fiber end (Fig. 2). The system can measure positioners of different sizes with a maximum measurement surface diameter of 60 mm, which allows one to test positioners with a combined arm length (alpha + beta) of up to 30 mm. The positioner to test is fixed on a V-groove and equipped with a single-mode fiber, which is back illuminated with a 600-nm laser. The position and tilt of the exiting cone at the fiber end are measured with two optical cameras. Camera 1 measures the $x,y$ position of the fiber end by setting its focus onto the fiber measurement plane, in which the fiber end moves. The exposure time is set so that only the light spot of the fiber is visible. A centroid finding image processing algorithm calculates then the $x,y$ position of the fiber. Camera 2 measures the tilt of the light cone and hence the angle of the fiber end with respect to the positioner’s V-groove fixation. The light cone exits the fiber, passes through a convex lens with a focal length of one meter and is finally projected onto a screen that is placed at the focal distance of the lens (Fig. 3). The projection of the light cone on the screen is, therefore, decoupled from pure translations and moves only when the tilt of the cone changes. An angle change of $\omega $ degrees corresponds to a translation of the light spot of $\mathrm{\Delta}d={l}_{\text{focal}}\text{\hspace{0.17em}}\mathrm{tan}(\omega )$ mm on the screen. A CCD detector can also be used to measure directly the light intensity of the cone. However, due to the big size of the projected light cone we use an opal diffusing glass as a screen that transmits and diffuses the incident light. The light spot can then be detected by focusing camera 2 onto the screen. The center of the projected light spot and hence the tilt is found by fitting a 2-D Gaussian distribution on the image. The described system can be reduced to a simple $x,y$ position metrology system if the tilt measurements are not needed such as shown in Fig. 2, in the right. The advantage of the reduced system is that it is not limited to single-mode fibers and that a slight position measurement improvement is achieved (Table 1) since the fiber viewing camera is not anymore compromised by the distortion of the tilted camera and convex lens.

## Table 1

Test set up performance.

Unit | Position set up | Position and alignment set up | |
---|---|---|---|

Position repeatability | $\mu \mathrm{m}$ RMS | 0.3 | 0.3 |

Position accuracy absolute | $\mu \mathrm{m}$ RMS | 2.3 | 4.8 |

Angle repeatability | deg RMS | — | 0.0005 |

Angle accuracy absolute | deg RMS | — | 0.007 |

Measurement surface diameter | mm | 60 | 60 |

## 3.

## Calibration of the Metrology System

The measurement system has to be well calibrated. The calibration procedure consists in determining and correcting of the lens distortion of the cameras, the focal distance of the convex lens, and finally, the alignment of the V-groove fixation is used as a zero-angle reference for the alignment of the rotation axes.

## 3.1.

### Camera Distortion

The images taken with the cameras are distorted with respect to the measurement surface, which is the plane in which the fiber end moves ($x,y$ plane) for camera 1 and the diffuser screen ($u,v$ plane) for camera 2 (Fig. 2). The origins of these effects are, for example, the optical aberration in the camera lenses and the tilt of the camera with regards to the measurement surface. Camera 1 also sees through the convex lens, which creates an additional distortion that has to be corrected. The purpose of this calibration step is to get an undistorted image of the measurement surface. This is achieved by placing an accurate checkerboard pattern in the measurement surface. The edges of the checkerboard are then identified with image processing. Figure 4(a) shows, for example, the image taken of the checkerboard pattern of camera 1 with the identified points. The next step consists in calculating a correction vector for each identified point such that the final grid of points corresponds to an undistorted square grid. This can be achieved by creating a matrix ${\mathbf{P}}_{\text{board}}$, which contains the vectors of regular placed grid points with spacing of 1 pixel:

## Eq. (1)

$${\mathbf{P}}_{\mathrm{board}}=\left[\begin{array}{ccccccccc}0& 0& 0& 0& \dots & m& m& m& m\\ 0& 1& \dots & n& \dots & 0& 1& \dots & n\end{array}\right].$$The corresponding vectors of the identified checkerboard points on the taken image are stored in the matrix ${\mathbf{P}}_{\text{identified}}$. Now the matrix ${\mathbf{P}}_{\text{board}}$ is rotated and stretched in such a way that the difference between identified checkerboard points and regular grid points is minimized [see Eq. (2)], whereas ${s}_{f}$ is the scale factor, ${\mathbf{t}}_{\mathrm{rot}}$ is the center of rotation, and $\psi $ is the rotation angle:

## Eq. (2)

$$\underset{{s}_{f},{\mathbf{t}}_{\mathrm{rot}},\psi}{\mathrm{min}}\parallel \left[\begin{array}{cc}\mathrm{cos}(\psi )& \mathrm{sin}(\psi )\\ -\mathrm{sin}(\psi )& \mathrm{cos}(\psi )\end{array}\right]({s}_{f}{\mathbf{P}}_{\mathrm{board}}+{\mathbf{t}}_{\mathrm{rot}})-{\mathbf{P}}_{\mathrm{identified}}{\parallel}_{2}^{2}.$$This allows one now to calculate the correction vectors ${\mathbf{v}}_{\mathrm{corr}}$ between all the rotated and stretched grid points and the identified checkerboard points [Fig. 4(b)]. These vectors are stored in the matrix ${\mathbf{V}}_{\mathrm{corr}}$:

## Eq. (3)

$${\mathbf{V}}_{\mathrm{corr}}=\mathbf{R}(\psi )({s}_{f}{\mathbf{P}}_{\text{board}}+{\mathbf{t}}_{\mathrm{rot}})-{\mathbf{P}}_{\text{identified}}.$$As a last step, a correction vector is calculated for every pixel of the image. This is simply done by linearly interpolating the correction vectors between the grid points. Finally, the conversion of the results from pixels to millimeters is obtained by knowing the absolute size of the checkerboard quadrant in millimeters. Now for every image taken by camera 1 and camera 2 the measured intensities of each pixel are shifted by the calculated and interpolated correction vectors ${\mathbf{v}}_{\mathrm{corr}}$ resulting in undistorted images.

## 3.2.

### Focal Length

For accurate tilt measurements, the distance between the opal diffuser screen and the lens should correspond to the focal length of the lens. The placement of the lens at the right distance to the screen is done in an iterative manner. First, a fiber end is mounted on a translation stage and moved [Fig. 5(c)] in increments along either the $x$ or the $y$ axis while camera 2 records the corresponding shifts of the resulting light spot on the screen. If the distance between the lens and the screen corresponds to the focal distance, the light spot on the screen does not move more than $150\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ regardless of any ferrule translation along $x$ or $y$. The $150\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ corresponds to about the achieved absolute tilt angle accuracy (0.007 deg). In case the light spot moves too much on the screen, the screen distance is wrong, and it is adjusted accordingly.

## 3.3.

### Zero Reference and Absolute Tilt

The V-groove of the set up is the zero-angle reference so that absolute tilt angles of the positioners can be measured. This zero-angle is calibrated with the help of a calibration cylinder with high-precision roundness [Fig. 5(a)]. The calibration cylinder has a fiber attached at one end so that the fiber has a small angle between the fiber ferrule axis and the cylinder axis. The cylinder is then mounted onto the V-groove and successive images are taken as the cylinder is rotated around the $z$ axis. This produces a series of images on camera 2, whereas the light spots will lie around the circumference of a circle. The center of this circle gives then the absolute angle of the V-groove axis, which will be set as zero tilt angle for the positioner. Figure 6(a) shows three measured circles with three different angles between the fiber ferrule axis and cylinder axis. The three circles are fit onto the data, such that they have the same center that defines the zero tilt reference. Figure 6(a) also shows the data obtained with a tilt stage [Fig. 5(b)]. A fiber is fixed to the tilt stage and small horizontal and vertical angle increments are measured with camera 2. The small angle increments are compared to the position increments measured by the camera in order to calculate the correct focal length according to ${l}_{\text{focal}}=d/\mathrm{tan}(\omega )$.

## 3.4.

### Measurement Performances

The measurement performance depends largely on the thoroughly executed calibration and the quality of the cameras, lenses, and checkerboard pattern. The performance is further improved by capturing and averaging multiple images per measured position. The performance of the described set-up is summarized in Table 1. In principle, the measurements obtained with the calibration cylinder result in perfect circles. Therefore, we can get an estimation of the absolute tilt accuracy of the set up, by calculating the radial deviation from the fitted circle for every measured angle obtained with the cylinder. Note that the fit of the data is done such that the circles have the same center, and therefore, a radial error also represents possible concentricity error of the circles. Similarly, the measurements obtained with the tilt stage can also be used to estimate the absolute tilt accuracy. A straight line with equally spaced increments is fitted on the measured angles. The model fit errors from the tilt stage measurements, together with the radial deviations from the calibration cylinder are shown in Figs. 6(a) and 6(b). All measured RMS errors are within 0.007 deg.

The same approach is used to validate the absolute position accuracy. Compared to the tilt measurements, a zero reference is not needed for the position measurements. Therefore, instead of the calibration cylinder, a motorized axis with high-precision ball bearings is used to draw circles with different fixed arm lengths. This allows for a more quantitative analysis with 200 measured points per circle. As with the tilt stage, a translation stage is used to measure equally spaced position increments. The measured data as seen by camera 1 are shown in Fig. 7(a) for the position and alignment measurement system and in Fig. 7(c) for the reduced position-only measurement set up. The errors have been amplified by a factor of 200 to make them more visible. The corresponding histogram of the deviation errors is shown in Figs. 7(b) and 7(d). As mentioned before, the reduced set up without the convex lens has a slightly better position accuracy of $2.3\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ RMS compared to $4.8\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ RMS for the tilt set up. The translation stage is also used to verify the absolute scale factor of the set up obtained by the checkerboard. One millimeter measured with the camera corresponds to 1.0041 mm on the translation stage for the position and alignment system and 1.0018 mm for the reduced system. Note that the verification of the test bench accuracy is limited by the quality of the calibration cylinder, ball bearings, tilt stage, and translation stage.

## 4.

## Description of the Fiber Positioner Models

In the following, we derive the positioner models that describe the $x\u2013y$ position and the angular alignment of the rotation axes.

## 4.1.

### Position Model

The model describing the position vector ${\mathbf{r}}_{\mathrm{tot}}$ of the fiber end is depicted in Fig. 8, Whereas ${l}_{a}$ and ${l}_{b}$ are the arm lengths, ${\mathbf{r}}_{\text{center}}$ gives the coordinates of the identified center, and finally the angles $\alpha $ and $\beta $ are the output angles of the actuators. The zero configuration ($\alpha ,\beta =0$) is defined such that the alpha actuator is at its negative hard stop and the beta arm is fully extended. The angle ${\alpha}_{\mathrm{off}}$ is the angular offset of the alpha arm between the $x$ axis of the camera frame and the hard stop. Similar ${\beta}_{\mathrm{init}}$ is the angle between the extended beta arm and the beta arm hard stop. The position model is subdivided in a model describing the transmission of the motors and a rigid body model, which includes a wobbling motion of the rotation axes.

## 4.1.1.

#### Nonlinear transmission

The motors of the positioner are normally equipped with a reduction gear, which is needed not only for sufficient output torque and to ensure nonbackdrivability but also to achieve a higher positioning resolution, as there is usually not enough space to install high-precision encoders at the output of the rotation axes. However, the reduction gear ratio $k$ is not constant and hence a simple linear relation between motor input and actuator output such as $\alpha ={k}_{a}\xb7{\alpha}_{\mathrm{motor}}$ degrades the position precision (e.g., Table 3). The nonlinear transmission model of the gear includes a correction factor $\delta $, which depends on the output angle of the gear:

## Eq. (4)

$${\alpha}_{\text{motor}}=\frac{1}{{k}_{a}}\xb7[\alpha +{\delta}_{a}(\alpha )]\phantom{\rule[-0.0ex]{1em}{0.0ex}}{\beta}_{\mathrm{motor}}=\frac{1}{{k}_{b}}\xb7[\beta +{\delta}_{b}(\beta )+{\beta}_{\mathrm{init}}].$$Note that for the beta motor the parameter ${\beta}_{\mathrm{init}}$ is included in the transmission model since it is intrinsic to the positioner and unlike ${\alpha}_{\mathrm{off}}$ does not change if the positioner is fixed in a different set up. The correction factor $\delta $ is determined by subtracting the measured output angle $\alpha $ by the motor position ${\alpha}_{\mathrm{motor}}$ multiplied by the average gear ratio.

## 4.1.2.

#### Rigid body model

A simple rigid body model is used to describe the behavior of the positioner:

## Eq. (5)

$${r}_{\mathrm{tot}}={r}_{\mathrm{center}}+{l}_{a}\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}})\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}})\end{array}\right]+{l}_{b}\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}}+\beta )\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}}+\beta )\end{array}\right].$$The model parameters ${\mathbf{r}}_{\text{center}},{l}_{a},{l}_{b},{\alpha}_{\mathrm{off}},{\beta}_{\mathrm{init}}$ are found by fitting the position model on the measurement data. Therefore, the difference between the measured ${\mathbf{r}}_{\mathrm{meas}}$ and calculated positions ${\mathbf{r}}_{\mathrm{meas}}$ are minimized for all $h$ measured configurations:

## Eq. (6)

$$\underset{{\mathbf{r}}_{\text{center}},{l}_{a},{l}_{b},{\alpha}_{\mathrm{of}f},{\beta}_{\mathrm{init}}}{\mathrm{min}}{\Vert \left(\begin{array}{c}{\mathbf{r}}_{{\mathrm{tot}}_{1}}-{\mathbf{r}}_{{\mathrm{meas}}_{1}}\\ {\mathbf{r}}_{{\mathrm{tot}}_{2}}-{\mathbf{r}}_{{\mathrm{meas}}_{2}}\\ \dots \\ {\mathbf{r}}_{{\mathrm{tot}}_{\mathrm{h}}}-{\mathbf{r}}_{{\mathrm{meas}}_{h}}\end{array}\right)\Vert}_{2}^{2}.$$## 4.1.3.

#### Roundness of rotation axes

The exact center of rotation of the positioner’s arm can vary depending on the rotation angle. The rigid body model can be extended to also include this wobbling of the rotation axes. It can be modeled by adding a deflection vector to each rotation axis [denoted ${\mathbf{v}}_{a}(\alpha )$ and ${\mathbf{v}}_{b}(\beta )$], which depends on the actual orientation of the output angle $\alpha $ or $\beta $, respectively

## Eq. (7)

$${\mathbf{r}}_{\mathrm{tot}}={\mathbf{r}}_{\mathrm{center}}+{l}_{a}\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}})\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}})\end{array}\right]+{\mathbf{v}}_{a}(\alpha )+{l}_{b}\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}}+\beta )\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}}+\beta )\end{array}\right]+{\mathbf{v}}_{b}(\beta ).$$Figure 9(a) shows that any configuration with beta arm length ${l}_{b}$, orientation output $\beta $, and deflection vector ${v}_{b}$ can be transformed to an output angle of $\beta +{\delta}_{{b}_{v}}$ and an arm length of ${l}_{b}+\mathrm{\Delta}{l}_{b}$ for the same fiber position. By measuring only the fiber end, the angle ${\delta}_{{b}_{v}}$ cannot be distinguished from the reduction gear correction factor ${\delta}_{b}$ and is hence already included in the latter. Therefore, for the beta deflection ${v}_{b}$ only the component radially to the beta arm $\mathrm{\Delta}{l}_{b}$ can be determined. This is done by calculating the deviation from a perfect circle with radius ${l}_{b}$ for the measured beta circles. The model is adapted to

## Eq. (8)

$${\mathbf{r}}_{\mathrm{tot}}={\mathbf{r}}_{\mathrm{center}}+{l}_{a}\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}})\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}})\end{array}\right]+{\mathbf{v}}_{a}(\alpha )+[{l}_{b}+\mathrm{\Delta}{l}_{b}(\beta )]\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}}+\beta )\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}}+\beta )\end{array}\right].$$The deflection vector ${v}_{a}$ cannot be regarded by a simple radial change of the alpha arm length since the position of the beta arm has to be taken into consideration too. It can be obtained by comparing the alpha circle deviations for a given $\alpha $ angle with different $\beta $ values such as shown in Fig. 9(b). The ${v}_{a}(\alpha )$ vector is obtained by first determining the radial deflection $\mathrm{\Delta}{l}_{\beta i}$ from a perfect circle when alpha is actuated and beta is fixed. We repeat this measurement for $i$ different beta configurations by calculating different $\mathrm{\Delta}{l}_{\beta i}$ deflections for the fixed ${\beta}_{i}$ angles. The corresponding ${v}_{a}(\alpha )$ vector is then obtained with a minimization since ${v}_{a}(\alpha )$ can be projected on all determined $\mathrm{\Delta}{l}_{\beta i}$ [small box in Fig. 9(b)].

## 4.2.

### Tilt Model

The model describing the alignment of the rotation axes is described in the following and shown in Figs. 1 and 10. The test set up is calibrated so that a light cone emitted parallel to the V-groove is measured as zero angle (tilt angle with magnitude zero $\omega =0$). A single measurement of a mounted positioner with back illuminated optical fiber gives, therefore, the absolute angle between the V-groove axis (denoted $\mathbf{G}$) and the ferrule axis of the fiber (denoted $\mathbf{F}$). This angle consists of not only the magnitude $\omega $ but also of an orientation angle ${\omega}_{O}$. This orientation angle indicates the direction of the magnitude $\omega $ with respect to the $u$ axis of camera 2 (counter clock wise as seen from the camera). Given the center of the light spot measured by camera 2 in Cartesian coordinates $({c}_{u};{c}_{v})$, the magnitude and orientation of the angle measurement can be calculated by $\omega =\mathrm{atan}[{({c}_{u}^{2}+{c}_{v}^{2})}^{0.5}/{f}_{\text{focal}}]$ and ${\omega}_{O}=\mathrm{atan}2({c}_{v},{c}_{u})$, respectively. Passing from polar to Cartesian coordinates, we can define every angle relative to the V-groove as $\omega =[\omega \xb7\mathrm{cos}({\omega}_{O}),\omega \xb7\mathrm{sin}({\omega}_{O})]$. The tilt model of the positioner describing the overall angle between V-groove $\mathbf{G}$ and fiber tip $\mathbf{F}$ depends on the relative alignment and orientation of the rotation axes (denoted $\mathbf{\Theta}$ and $\mathbf{\Phi}$). The angles describing the misalignment between the axis $\mathbf{G}\text{\u2013}\mathbf{\Theta}$, $\mathbf{\Theta}\text{\u2013}\mathrm{\Phi}$, and $\mathbf{\Phi}\text{\u2013}\mathbf{F}$ are denoted $\theta $, $\varphi $, and $f$, respectively.

The angle ${\theta}_{O}$ describes similar to ${\omega}_{O}$ the orientation of the angle $\theta $ with respect to the $u$ axis. The angles ${\varphi}_{O}$ and ${f}_{O}$ are on the other hand defined as orientation with respect to direction of the arm ${l}_{a}$ and ${l}_{b}$, respectively. Using a small angle approximation, the overall tilt angle ${\mathit{\omega}}_{\mathrm{tot}}$ of the positioner at motor positions $\alpha $ and $\beta $ can, therefore, be obtained by adding the alignment angles $\theta $, $\varphi $, and $f$ as vector sum, which is shown in Fig. 10(b) and defined by

## Eq. (9)

$${\omega}_{\mathrm{tot}}=\theta \xb7\left[\begin{array}{c}\mathrm{cos}({\theta}_{O})\\ \mathrm{sin}({\theta}_{O})\end{array}\right]+\varphi \xb7\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}}+{\varphi}_{O})\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}}+{\varphi}_{O})\end{array}\right]+f\xb7\left[\begin{array}{c}\mathrm{cos}(\alpha +{\alpha}_{\mathrm{off}}+\beta +{f}_{O})\\ \mathrm{sin}(\alpha +{\alpha}_{\mathrm{off}}+\beta +{f}_{O})\end{array}\right].$$Similar to the position model, a minimization can be used to find the parameters ($\theta ,{\theta}_{O},\varphi ,{\varphi}_{O},f,{f}_{O}$) of the rigid body model describing the alignment of the rotation axes, whereas the alignment measurements are denoted by ${\mathit{\omega}}_{{\mathrm{meas}}_{i}}$ for $i=1,\dots ,h$

## Eq. (10)

$$\underset{\theta ,{\theta}_{O},\varphi ,{\varphi}_{O},f,{f}_{O}}{\mathrm{min}}{\Vert \left(\begin{array}{c}{\mathit{\omega}}_{{\mathrm{tot}}_{1}}-{\mathit{\omega}}_{{\mathrm{meas}}_{1}}\\ {\mathit{\omega}}_{{\mathrm{tot}}_{2}}-{\mathit{\omega}}_{{\mathrm{meas}}_{2}}\\ \dots \\ {\mathit{\omega}}_{{\mathrm{tot}}_{h}}-{\mathit{\omega}}_{{\mathrm{meas}}_{h}}\end{array}\right)\Vert}_{2}^{2}.$$## 5.

## Evaluation Procedure and Performance Metrics

With the described test set up and introduced positioner models, it is possible to characterize, calibrate, and validate the performance of the positioner. Here we introduce first the measurement procedure and then we show how those measurements can be used to characterize the positioner with some performance metrics. We also analyze how well the derived parametric position and tilt models describe the behavior of the positioner. Finally, we show how the predicted performance can be validated. In the following, actual measurements from different positioners are shown to illustrate the discussed measurement results. The used positioners are prototypes for SDSS-V with an alpha arm length of 7.4 mm and a beta arm length of 15 mm.

## 5.1.

### Datum Initialization

Once the positioner is calibrated, the exact angular position of both motors (${\alpha}_{\mathrm{motor}}$, ${\beta}_{\mathrm{motor}}$) relative to the hard stop has to be known in order to ensure the $x,y$ precise absolute position at the output. The SDSS-V positioners use hall sensors to keep track of the absolute motor position. However, they only provide angular position between 0 and 360 deg on the motor side, and therefore, the microcontroller must count the number of full turns to keep track of the complete motor travel. The DESI positioner on the other hand uses a sensorless vector control where the rotor follows a commanded rotating magnetic field. In this case, also the number of full turns of the rotating magnetic field can be tracked. Similarly, if stepper motors are used, such as for MOONS, the number of commanded steps is tracked. The SDSS-V positioner has the capability of detecting any power loss and uses the remaining fading energy stored in the capacitors to immediately stop the motors and store both motor positions in the flash memory. This ensures that the absolute angular motor position is not lost and can be retrieved at startup. It is nevertheless favorable to have the possibility to reinitialize the motor positions as a backup. Figure 11(a) shows the functionality of a drive-end switch similar to those used on the MOONS positioner for reinitialization. The positioner is driven backward until the rotating arm presses against the ball, which triggers a microswitch and, in turn, determines the zero position. The repeatability has been proven to be very accurate to a precision of $0.7\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ RMS,^{21} respectively, $2\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$.^{11} The SDSS-V positioner uses hard stops for recalibration of the motor position [Fig. 11(b)]. In this case, the positioner is driven backward till it collides with the hard stops, this is detected with the hall sensors on the motor side, which resets the number of turns to zero for initialization. This has been verified by reinitializing the motor 500 times, and then driving the motor to a fixed position. After every such move, the camera measures the output position to verify the repeatability. Figure 12 shows that the hard stop initialization procedure of the alpha motor is repeatable to $1.13\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ RMS, which corresponds to 0.004 deg at the output of the reduction gear.

## 5.2.

### Measurements

For the calibration, the fiber is measured for different motor positions. First, the positioner is set to its starting configuration by driving the motors to its drive-end switches or hard stops. Then the motors are commanded to predefined alpha and beta configurations and for every point the actual fiber position and alignment angle is measured. Both rotation axes are measured independently. Either the alpha motor is actuated to sweep a circle for different fixed beta orientations [Fig. 13(a)] or vice versa [Fig. 13(b)]. Overall $m$ circles are measured per axis with $n$ positions per circle, which results in a total of $h=2\text{\hspace{0.17em}\hspace{0.17em}}mn$ measurements.

## 5.3.

### Repeatability

The most important parameter is the repeatability of the targets, as it represents a lower bound of the achievable positioning accuracy. During the measurement process all targets are commanded to the same motor position several times. For every set of targets with the same commanded motor angles, the deviation to their mean is defined as the repeatability error. Figure 14(a) shows an example of measured repeatability errors defined in the reference frame of the camera. Figure 14(b) shows the histogram of the Euclidean norm of the $x,y$ repeatability error. The measured positioner shows very good overall repeatability with less than a micron of RMS error.

## 5.4.

### Roundness

The roundness of the rotation axes, as defined in the model above, depends on the quality of the ball bearings and whether the preload of the bearings is properly applied. Figure 15(a) shows the wobbling movement of the vector ${\mathbf{v}}_{a}$ of the alpha axis for a full rotation with its radial and tangential projections along the alpha arm. Figure 15(b) shows the radial change $\mathrm{\Delta}{l}_{b}$ of the beta arm length for a full rotation. In this case, it can be seen that repeated measurements are well within $2\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ indicating no radial play, and therefore, properly preloaded bearings. The deviation from a perfect circle is $<6\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ for the alpha and beta rotation axes, which comes from the imprecisions of the ball bearing (e.g., inner cage, outer cage, and balls). These imprecisions are amplified by the lever length between the ball bearings and the fiber end.

## 5.5.

### Reduction Gear Analysis

No encoders exist for small positioners with a resolution high enough to satisfy the required angular precision. Therefore, the reduction gears are used to increase angular positioning accuracy. The use of reduction gears, however, has some limitations such as nonconstant reduction ratio, elasticity, and hysteresis. With a good design, the nonconstant reduction ratio is repeatable and can, therefore, be calibrated and included in the control, which increases positioning accuracy greatly. Figure 16(a) shows an example of a measured correction factor of the beta motor of one of the SDSS-V prototypes with deviations up to 0.17 deg compared to a constant reduction factor. This would results in several tens of micrometer of positioning error if not corrected. Figure 16(b) shows the beta correction factor repeatability for a total of 15 repetitions. The colors indicate measurements with different alpha motor angles. This allows one to verify the actuators angular repeatability and hence identify problems related to compliance, friction, and backlash over the actuators range of motion. The gear shows good values only for angles between 150 deg and 210 deg and indicates a problem especially for angles higher than 210 deg. There the correction factor for the beta motor depends highly on the alpha motor configuration. This is an indicator of increased compliance in combination with an alpha motor configuration-dependant external torque. This torque comes mainly from the pulling of the optical fiber and the self weight of the positioner. The origin of the increased compliance may lie either in a problem with the backlash reduction spring or a spatially limited weakness in the reduction gear.

It is possible to study the reduction gear correction factor more into detail.^{29} Two main effects for a nonconstant reduction ratio could be identified. We can illustrate them on simple two pinion reduction gear (Fig. 17). On the one hand, the manufactured pinions have teeth with a nonperfect involute gear profile, which leads to a line of action deviating from a straight line [Fig. 17(a)]. In addition, every pinion tooth combination can have its own distinctive line of action. The second effect for a changing reduction ratio is that the base circle of a gear is not perfectly circular. Causes are manufacturing uncertainties, which result in a wobbling rotation axis of the gear or nonround base circles. The consequence is that the line of action shifts over a full turn [Fig. 17(b)].

The overall reduction ratio consists of both effects summed over all pinions of the reduction gear. For a full turn at the output, each pinion rotates $x$ times, and therefore, the effect of a single noncircular pinion repeats also $x$ times. If we assume that all pinion teeth combinations are similar, the effect for a nonstraight line of action repeats $x\times z$ times per pinion for a full turn at the output, whereas $z$ is the number of teeth of the pinion. For every pinion, the overall amplitude of the reduction correction gets smaller the further it is from the gear output, as the pinions amplitude is diminished by the reduction ratio of the following pinions. With constant manufacturing tolerances, the influence of the last reduction stage is, therefore, the largest. Figure 18(a) shows the reduction correction factor for a measured 6 mm planetary gear. The influence of the 36 teeth of the ring gear from the last stage shows clearly a not perfect involute profile on its teeth. Even higher frequencies with lower amplitudes are repeatable as shown in Fig. 18(b).

A frequency analysis shows how much each gear is contributing to the correction factor. Fig. 19 shows that most amplitude peaks can be attributed to either one of the effect. This kind of analysis can, therefore, exactly identify if a specific gear does not meet the manufacturing tolerances.

## 5.6.

### Hysteresis

If one compares the encoder position of the motor with the measured angular position of the rotation axis at the output, it can be seen that the output position does not only depend on the current motor position but also on its recent course of position. The cause is a combination of backlash, compliance, and friction in the reduction gear as depicted in Fig. 20.

In order to get good repeatability for a given motor position, the target approach movement has to be the same every time the target is revisited. Figure 21(a) shows the reduction ratio correction factor for several repetitions with either a clockwise or a counter clockwise approach to the target. The difference between counter clockwise and clockwise approach is defined here as hysteresis [Fig. 21(b)]. The hysteresis can be reduced by minimizing backlash, friction, and by maximizing rigidity of the drive train. Figure 21 shows that the hysteresis is repeatable and is different for different output positions. This shows that compliance and backlash depends on the exact interlock configuration of individual gear teeth. To ensure repeatability, the controller has to approach a target with a monotone increasing (or decreasing) position trajectory with a position change greater than the measured hysteresis. Even if we approach the target from the same side every time, in some cases, we still want to minimize the hysteresis because it reduces the amplitude of the final approach, which simplifies the collision avoidance algorithm of the positioners.^{30}^{,}^{31}

## 5.7.

### Parametric Tilt Model

Unlike the $x\u2013y$ position, the correct angular alignment of the fiber end is not actively controlled and has to be ensured by design. Table 2 shows an example for the measured alignment of all axes as introduced in the tilt model. This positioner has the requirement that the fiber end should point always to the same focal point regardless of the motor configuration. This can be achieved by tilting the angles $\varphi $ and $f$ slightly in the design for orientations of ${\varphi}_{O}={f}_{O}=180\text{\hspace{0.17em}\hspace{0.17em}}\mathrm{deg}$. Table 2 shows the absolute angular error for every axis, which is the angular distance between the required and measured alignment. The sum of those errors gives the worst case alignment error of the positioner. Figure 22(b) shows a graphical representation of those errors. The misalignment between the V-groove and the first rotation axis is fixed, and therefore, represented as a point on the polar plot. The orientation of the misalignment between the first and second rotation axis depends on the motor position $\alpha $, and therefore, the error can be anywhere on a circle centered on the error of the first rotation axis. Similarly, the overall alignment error depends on both motor positions ($\alpha $ and $\beta $) and lies, therefore, on a circular ring. This measurement procedure allows one to determine the specific contributors to the overall misalignment error. Figure 22(a) shows the error between the measured and model predicted alignment of the fiber end. This allows one to verify how well the measurements fit the alignment model.

## Table 2

Axes alignment results.

Unit | Meas. value | Req. value | Absolute error | |
---|---|---|---|---|

${\theta}_{O}$ | deg | 356.3 | — | |

$\theta $ | deg | 0.028 | 0 | 0.028 |

${\varphi}_{O}$ | deg | 132.4 | 180 | |

$\varphi $ | deg | 0.089 | 0.05 | 0.067 |

${f}_{O}$ | deg | −158.9 | 180 | |

$f$ | deg | 0.202 | 0.1 | 0.115 |

Worst case total error | deg | 0.21 |

## 5.8.

### Parametric Position Model

Once the parametric model has been calibrated, it is possible to investigate how well it represents the measured data. Figure 23 shows the position error between the calibration measurements and the predicted positions $({\mathbf{r}}_{\mathrm{tot}}-{\mathbf{r}}_{\mathrm{meas}})$ with three different models. Note that for every calculated error, the reference frame has been rotated so that the $y$ axis points perpendicular to the beta arm (along the beta movement direction) and the $x$ axis points radially to the beta arm. This allows one to see the influence of roundness and reduction gear errors to the overall model fit. Figure 23(a) shows the model fit error for the simple rigid body model with only the arm lengths as calibrated parameters. Figure 23(b) shows the model fit error where in addition to the arm lengths, the reduction gear correction factor is included in the model. Finally, Fig. 23(c) also includes the roundness correction. It can be seen that the data fits well on the models. Adding the gear correction to the model allows one to reduce the RMS error along the beta rotation direction from 24.9 to $2.8\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$. The correction of the roundness reduces the radial RMS error from 4.1 to $1.3\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$.

## 5.9.

### Validation

Once all parameters have been calibrated, the positioner is commanded to targets spread across its work-space in order to validate the parametric models. At every point, the reached position is measured, which is then compared with the predicted position of the three models. Figure 24 shows a validation grid example with the corresponding arm configurations.

As before, the validation measurements can be used to assess the three models. The analysis was done with the same data set for the three models. Figure 25 shows the position error between validation measurements and predicted positions for the same models as above. These figures allow one to predict the true position accuracy and to verify if the calibration data has been overfit. A comparison between the calibration and validation model fit for the three different models is given in Table 3. The validation model fit error indeed validates the first two models. The third model, which includes the roundness correction, behaves as predicted by reducing the radial error along the beta arm to 2.2 from $3.8\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ for the model with gear correction only. However, the model with roundness correction has an overall RMS error of $5.4\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ for the validation compared to $2.5\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ for the calibration. This overfit of the third model can be explained by the uncertainties of the positioner repeatability of $0.8\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ and the absolute measurement accuracy of $3\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ of the test set up. It indicates that this specific positioner is close to the measurement resolution of the test bench. In order to ultimately validate the roundness model, a more accurate metrology measurement system is necessary.

## Table 3

Comparison between the model fit error of the calibration and validation.

Unit | Rigid body model | Rigid body with gear correction | Rigid body with gear correction and roundness | |
---|---|---|---|---|

Calibration model fit | $\mu \mathrm{m}$ RMS | 25.6 | 5 | 2.5 |

Validation model fit | $\mu \mathrm{m}$ RMS | 24.7 | 6.1 | 5.4 |

Figure 26(a) shows an amplification of the remaining errors for every measured grid point that cannot be predicted by the model. It can be seen that the errors are uniformly distributed over the whole workspace indicating that there are no unmodeled elements of the positioner left. It is possible to further decrease these positioning errors. Every grid point is first approached in open loop (blind move), which means that no feedback from the cameras is used to command the motors. The positioner can then be commanded to reach the target more precisely in an iterative procedure with feedback from camera 1. Some systems such as MOONS or MEGARA require a good absolute open loop accuracy since they are not equipped with a metrology system for position feedback during observations. Other systems such as DESI and SDSS-V have a dedicated metrology system, and therefore, the position accuracy is increased by the closed loop iterations. Nevertheless, it is usually desirable to possess a good open loop performance in order to minimize the number of required camera iterations and hence to minimize repositioning time. Figure 26(b) shows a measurement example of the number of iterations needed to bring all targets within a maximum positioning error of $7\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$. For the measured positioner after one iteration, 98.2% of all grid points are within the required $7\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$.

## 5.10.

### Lifetime Test

A lifetime test is a useful tool to predict the performance change during normal use. For example, if a parametric model is used to accurately command the fiber end, it has to be ensured that the calibrated parameters do not change over the lifetime of the telescope without requiring recalibration. Parameters may change due to wear and environmental influences. A simple lifetime test is to run positioners continuously by performing the described calibration and validation procedure over and over. Figure 27 shows the lifetime test of the reduction gear correction factor for two different motors. Every iteration with calibration and validation consist of 15,260 moves. The motor in the left [Fig. 27(a)] shows very stable correction parameters over 109 iterations, whereas the motor shown in the right [Fig. 27(b)] has significant correction factor changes, which would require periodic recalibration over its lifetime. In the case of drifting calibration parameters, the lifetime test enables to estimate how much the blind move precision degrades over time. The metrology camera system used in SDSS-V and DESI is able to correct these first move precision degradations with the expense of a few more correction iterations [Fig. 26(b)]. The metrology system can also be used to regularly perform a recalibration, if the requirement of the blind move precision deteriorates too much. If no fixed metrology system is installed, project specific solutions have to be found, such as insertion of a metrology system into the optical path of the telescope during downtime for recalibration.

## 6.

## Conclusion

In this section, we have designed, developed, and validated a testing setup and protocol for the calibration of SCARA-like robotic fiber positioners for use in MOSs. Our setup consisted of a metrology system that was calibrated to accurately measure $x,y$ fiber position and ferrule axis alignment up to an accuracy of $2.3\text{\hspace{0.17em}\hspace{0.17em}}\mu \mathrm{m}$ for position and 0.007 deg for alignment measurements. The diameter of the measurement surface is 60 mm, which allows one to test positioners with a combined arm length (alpha + beta) of 30 mm. We then demonstrated the use of this system to automatically calibrate and validate a parametric model describing the position of the fiber tip. The accuracy of this model is essential for issuing correct movement commands for the fiber positioner. Finally, we demonstrated the use of our testing setup to evaluate positioners based on performance metrics such as repeatability, hysteresis, and absolute position accuracy. We are able to not only accurately assess these metrics but also diagnose and identify sources of positioner errors such as ball bearings, reduction gears, rotation axes alignment, and backlash compensation. Taken together, our results show the utility of our test bench and protocol, both in terms of useful features and also simplicity of use. With the rising demand for ever larger MOSs, automated and accurate calibration systems are a necessity.

## Acknowledgments

This project was supported by the Swiss National Science Foundation (Schweizerische Nationalfonds) Grants (MOONS-1: 20FL21-166919, SDSS-V: 20FL21-185771, and DESI: 20FL21-160476) and through contribution from the ARC/SDSS-V funding. The authors would like to thank Hans Georg Limberger (EPFL), Toralf Scharf (EPFL), and Gyger Flavien (EPFL) for fruitful discussions. Disclosures: The authors declare that there are no conflicts of interest.