WPS2 Manual

© 2011-2012, Kevan Hashemi, Open Source Instruments Inc..

Contents

Warning
Introduction
Design
Specification
Operation
Calibration
Tests
Conclusion

Warning

Device Mounting: Use a torque wrench to tighten the WPS mounting screw. Do not exceed torque 0.17 Nm (24 in-oz) or you will damage the kinematic mounting surfaces and ruin the absolute calibration of the instrument.

Introduction

A Wire Position Sensor contains two cameras that take pictures of the same section of the same stretched wire from two different angles. Calibration of each camera allows us to determine for each image a plane that contains the center-line of the wire. By intersecting these two planes, we obtain the center-line itself. Thus each camera produces a plane, and each pair of cameras produces a line. We call these planes wire planes, and their intersections are wire lines.


Figure: Front View of the WPS2, showing identity number label, calibration stickers over camera mounting screws, and a view of the nine-LED array inside. The wire will pass through the opening between the cover metal and the front wall. To remove the cover, we loosen the two screws that hold it to the base plate.

The camera lens is a 6-mm diameter, 9-mm focal length plano-convex 32469. The aperture is a 500-μm hole drilled in a 250-μm thick brass disk. The aperuture is pressed against the lens in the manner shown here. The image sensors are TC255s from Texas Instruments. Illumination comes from an array of nine OVSA1 LEDs, each of which emit roughly 20 mW of 620-nm red light. The WPS Head (A3022) allows simultaneous exposure of both images followed by sequential readout. The circuit also provides two connections for 1-kΩ RTD sensors. The WPS2 provides a single RTD glued to the end wall. The cover is secured in place by two thumb screws, so that the entire device may be mounted upside down.


Figure: Rear Right View of the WPS2. For the Rear Left view see here. The two cameras are visible on the back wall, the post that holds the LED array, the Wire Position Sensor Head (A3022) circuit with its RJ-45 socket, and the temperature sensor glued to the end wall. The white screen against which the cameras view the wire is stuck to the inside of the cover.

The WPS2 is almost identical to the WPS1-D. The TC255 image sensor is electrically compatible with the TC255P used in the WPS1, but comes in a 0.3-in ceramic package rather than the 0.4-in plastic package. The sensor plates are fastened to the end wall by screws. The WPS1-B used 850-nm infra-red LEDs and a 200-μm aperture. It required an exposure time of around 50 ms to obtain an adequate image of a black wire. The image sensor is more responsive to the red light used by the WPS2, and the WPS2's aperture is 500 μm. The WPS2 obtains excellent images with a 20-ms exposure and adequate images with a 5-ms exposure.

The WPS2 is the last WPS instruments we make with the TC255P or TC255 image sensors, which have been obsolete for five years. We have a stock of them at OSI that we will use to supply up to thirty WPS2s. If we are ever called upon to build a WPS3, we will do so with a newer CCD, most likely one from Sony.

Design

Schematic View: Schematic view of WPS2 assembly.
End Wall: Drawing of End Wall.
Base Plate: Drawing of Base Plate.
Lens Holder: Drawing of Lens Holder.
CCD Holder: Drawing of CCD Holder.
LED Holder: Drawing of LED Array Holder.
Geometry Sketch: Sketch of WPS2 Optical Geometry.
Mounting Plate: Drawing of Mounting Plate.
WPS Head: Manual for the WPS2 Head (A3022A).

Specification

The following table gives the properties of the WPS2 optics.

ParameterValue
Aperture-CCD10.8 mm
Aperture Diameter500 μm
Aperture Centering±100 μm
Lens Focal Length9 mm
Lens Diameter6 mm
Lens Thickness1.75 mm
CCD Width3.4 mm
CCD Height2.4 mm
CCD Pixel Size10 μm × 10 μm
Field of View±150 mrad × ±110 mrad
Aperture Height Above End Wall15.8 mm
Aperture to Front of CCD Mounting Plate1.9 mm
Exposure Time for Black Wire20 ms
Depth of Field30 mm to 130 mm
Table: Specification of WPS2 Optics.

The WPS2, when combined with its calibration constants, measures wire position in mount coordinates. For the definition of mount coordinates with respect to the three mounting balls, see here. Wires run parallel to the z-axis. The dynamic range of the instrument for wire-detection is guaranteed to include the 10-mm square centered upon point (38.0 mm, 62.4 mm, −5mm).

The WPS2 will locate wires within its field of view with absolute accuracy 5 μm or better. With a radially-symmetric, sharp-edged wire, the absolute accuracy should be better than 2 μm. Measurement time when used with the LWDAQ Driver (A2071E) is roughly 500 ms. When used with the LWDAQ Driver (A2037E), measurement time is roughly 1500 ms.

The following table gives the properties of the WPS2 electronics.

ParameterValue
Operating Temperature0-75°C
Thermometer Accuracy±0.3°C
Thermometer Precision±0.05°C
Thermometer Stability±0.05°C
Image Noise<0.2 ADC counts rms
Image Dark Current<25 ADC counts/s at 20°C
Image Dynamic Range>150 ADC counts
Image Intensity Precision0.5%, 8-bit counts
Minimum Exposure time<10 ms
Table: Specification of WPS2 Electronics.

The operating temperature range is determined by the radiation-resistant diode-chain voltage regulator in the A3022 circuit, as we describe in Diode Regulator.

Operation

The WPS2 is a LWDAQ Device. Plug it into a LWDAQ Driver or LWDAQ Multiplexer, open the LWDAQ Software and select the WPS Instrument from the Instrument Menu. Set the instrument's internet protocol address, driver socket, and multiplexer socket to select the target WPS. Press Acquire.

In LWDAQ 7.5 and earlier, the WPS Instrument acquires an image from only one of the cameras. Starting with LWDAQ 7.6, the instrument captures images from both WPS cameras at once and displays them one above the other, with the image crom camera one on top. With daq_simultaneous set to 1, the images are illuminated by the same flash of the LED array. With the same parameter set to 0, two separate flashes are used. This latter setting is useful for debugging the simultaneous data acquisition, and is also required by the WPS1 electronics, which do not support simultaneous exposures.


Figure: The WPS Instrument on MacOS, LWDAQ 7.6+. Note the two images acquired and displayed simultaneously. The WPS Instrument combines them into one tall image and analyzes the top and bottom halves separately. The top half is the image taken from the top camera, which is camera one.

The WPS instrument analyzes both images in the same way, whether thay were acquired simultaneously or separately. The results of analysis are displayed on the screen. For details of the types of analysis available, and how the results will be displayed, see WPS Instrument. We can use the Acquisifier to obtain measurements from multiple wire position sensors. The WPS_5.txt is an example Acquisifier script that obtains wire edge positions from multiple WPS1 or WPS2 instruments and combines these with calibration constants to obtain measurements of wire position in the coordinates of the instrument mounting balls.

The WPS2 comes with one 1-kΩ RTD sensor glued to the end wall to measure the temperature of the WPS frame. To read out the RTD, use the Thermometer Instrument with device name "A3022" and device element 1. The RTD_1.txt is an example Acquisifier script that obtains temperature measurements from WPS2s.

The following plot shows data we obtained from one instance of the LWDAQ Software, using two separate Acquisifier scripts. We open the Acquisifier from the Tool menu, then press Spawn to create a second Acquisifier. We use one with a script like WPS_5.txt to obtain wire position, and another with a script like RTD_1.txt to obtain temperature measurements. We set the wire position script to execute every five seconds, by setting its cycle period seconds parameter to 5. We set the temperature script to execute every sixty seconds by setting its cycle period seconds to 60.


Figure: WPS2 Resolution. We see temperature every minute and position every five seconds. Flash time is 10 ms and the wire is black vectran. We obtained this data simultaneously with two acquisifier scripts, one for position and one for temperature.

The graph above shows us the short-term resolution of the WPS2 with a black vectran wire and flash time 10 ms. We can operate equally well, perhaps with slightly improved resolution, with 20 ms or 30 ms flash times. Once we get to 40 ms, however, there is a chance of saturating the CCD. The resolution in x is 0.4 μm and in y is 0.4 μm. We expect the y-resolution to be better because the triangulation angle of the cameras favors the vertical direction over the horizontal.

When combined with a LWDAQ Driver (A2071E), exposure time 20 ms, and simultaneous image captures, the WPS Instrument acquires image pairs from the WPS2 at 2.3 Hz. With separate flashes, the rate drops to 2.0 Hz. With the older A2037E driver, the rate with simultaneous exposure is 0.7 Hz.

The Wire Position Sensor Express script (WPSX) allows us to connect to six WPS2s simultaneously and acquire images from them in parallel. Open LWDAQ Version 7.6.4+ and run the script with Run Tool from the Tool menu. We see a window with separate sections for six sensors. Each sensor can be a WPS2 or WPS1 depending upon the WPS2 checkbox. You can enable individual sensors with another checkbox. Each sensor gets its own IP address, flash time, driver socket, and name. We can connect several sensors to the same driver if we like, but the fastest acquisition will occur when each sensor has its own driver. When it acquires the images, it displays a miniature version of each image in the window. There are no analysis results overlayed upon these miniature images, but if you click on one of them, another window opens up giving you a larger version of the image, and this one will have the results of analysis overlayed.

The WPSX tool uses the name to look up the sensor's calibration constants in a calibration table that is embedded in the script itself. The WPSX analysis looks up each sensor in the list and converts the wire image positions into actual wire measurements in mount coordinates. It displays these on the screen in the same format as the WPS_5.txt Acquisifier script. There is a timestamp at the start of the result line, followed by sensor name, x, and y in millimeters for each sensor. If the WPSX cannot find the sensor in its calibration table, it will print the measurement in blue, having used the calibration constants for the first camera in its calibration list. If the WPS analysis returns an error, the measurement will be red, with x and y set to −1. With Save checked, the WPSX saves the result line to a result file. You pick the file with buttons in the Configuration panel. The Draw and Analysis buttons enable the drawing of images in the WPSX window, which takes a little time, and the analysis of the images also.

With a fast local ethernet connecting the data acquisition computer to the six drivers, and a fast computer to display and analyze the images, data acquisition should proceed at the same rate we would obtain from a single sensor. We turned off image display and drawing on our old lap-top computer, and acquired images from six sensors on our departmental network from six A2037E drivers. The time taken to acquire the six images varied from 1.5 s to 4 s, so that our average rate was around 0.4 Hz. The variability in the rate suggests traffic on our local internet is slowing down the image transfers. In theory, with six A2071E drivers and an isolated 100-MBit/s Ethernet, we can obtain a sustained acquisition rate from six sensors of 2.0 Hz.

We can control the WPSX through the LWDAQ System Server. Open the System Server from the File menu and set it to execute. Open the WPSX also and configure it to acquire data as you like. From another computer, open a socket to the System Server and send the command "WPSX_execute Acquire". Now read back the line that this command returns, which will arrive once the acquisition and analysis is complete.

Calibration

Calibration of the WPS2 uses the same procedure we developed for the WPS1. Here are the calibration constants for the existing WPS2s. We use calib_extract_1.tcl to combine the CMM and WPS calibration measurements into a single data file. We use calib_calc_6.pas to read this data file and determine the calibration constants. We later use calib_check_1.tcl to determine the calibration error of the two cameras acting together. If we need to re-calculate the wire edge positions in the image we use calib_reanalyze_2.tcl.

------------------------------------------------------------------------------------------------
                pivot (mm)              sensor (mm)            rot (mrad)          pivot-  error
Camera     x      y        z       x      y        z         x        y       z    ccd (mm) (um)
------------------------------------------------------------------------------------------------
C0562_1 -3.5814 88.8400 -4.9796 -12.6389 94.3849 -4.9598 -1558.772  -0.344 -566.827 10.620  1.6
C0562_2 -3.2934 39.0816 -4.9960 -12.3827 33.6002 -5.1009  1582.496  -3.005  536.976 10.615  1.0
C0563_1 -3.5214 88.9127 -5.1230 -12.7312 94.5887 -5.0763 -1575.969   5.514 -542.610 10.819  1.5
C0563_2 -3.3509 39.2680 -4.9734 -12.5065 33.7752 -4.9481  1551.272  19.575  539.416 10.677  1.1
C0564_1 -3.9747 88.5415 -4.7928 -13.1483 94.0905 -4.6594 -1569.021  -8.746 -512.315 10.722  1.4
C0564_2 -3.9695 39.3654 -4.7458 -13.1743 34.0412 -4.7220  1593.724   4.024  520.136 10.634  0.9
C0565_1 -3.5672 88.6207 -5.0629 -12.6076 94.2726 -4.9598 -1567.705  10.392 -546.849 10.662  1.0
C0565_2 -3.4484 39.8043 -5.2642 -12.5624 34.5183 -5.4396  1565.119  -3.078  508.839 10.537  1.3
C0566_1 -3.8859 88.6454 -5.2273 -12.9857 94.2809 -5.1865 -1582.320 -20.841 -534.469 10.704  1.1
C0566_2 -3.7466 39.2677 -5.0547 -12.9736 33.8539 -5.0552  1563.256 -13.310  543.711 10.698  0.7
C0567_1 -3.5694 88.6711 -5.0861 -12.6712 94.3061 -5.0781 -1580.440  -5.260 -537.937 10.705  1.0
C0567_2 -3.7736 39.4031 -4.8684 -12.9777 33.9881 -4.9191  1572.537   0.816  536.695 10.679  0.9
C0568_1 -3.3093 88.3844 -5.1412 -12.5615 93.9346 -5.1872 -1570.244  16.832 -516.928 10.789  1.5
C0568_2 -3.3202 39.7891 -5.0332 -12.5296 34.4080 -5.0489  1574.662 -22.893  523.054 10.666  1.4
C0569_1 -3.7589 88.3002 -5.1047 -12.8801 93.9368 -4.9732 -1572.172   0.810 -521.804 10.723  1.1
C0569_2 -3.3012 39.2002 -5.0119 -12.4385 33.8331 -5.0350  1567.840   9.412  527.534 10.597  0.8
C0570_1 -3.2442 88.4068 -4.9615 -12.2915 94.0330 -4.7980 -1567.418  13.082 -564.814 10.655  0.8
C0570_2 -3.6587 39.5604 -4.7582 -12.8826 34.2429 -4.8317  1571.667   8.676  507.737 10.647  1.0
C0571_1 -3.4310 88.3453 -4.9420 -12.4542 94.0619 -4.8731 -1574.059  11.026 -545.430 10.682  0.7
C0571_2 -2.9100 39.2205 -4.8333 -12.0803 33.9034 -4.8948  1586.120  -3.044  523.163 10.601  1.9
C0572_1 -3.3310 88.4273 -5.0365 -12.3326 94.0394 -5.0141 -1572.532  -3.147 -584.894 10.608  1.1
C0572_2 -3.3205 39.1416 -4.6273 -12.5399 33.8051 -4.6120  1585.005  35.942  502.761 10.653  1.6
C0573_1 -3.0105 88.0131 -5.0867 -12.1858 93.5084 -5.0842 -1566.850   1.849 -529.929 10.695  1.7
C0573_2 -3.1108 39.4726 -5.1132 -12.4342 34.2241 -5.4606  1583.793 -19.189  474.527 10.705  1.7
C0574_1 -3.7672 88.0655 -5.1314 -12.9420 93.6321 -5.1718 -1563.151 -11.060 -502.908 10.732  1.0
C0574_2 -3.4638 39.1504 -4.9903 -12.7721 33.8712 -4.9789  1582.060   9.463  476.708 10.701  1.0
C0575_1 -3.5899 88.2808 -4.8065 -12.7710 93.7388 -4.5779 -1555.422   0.226 -533.660 10.683  0.9
C0575_2 -3.4780 39.4648 -5.2590 -12.6939 34.0032 -5.3275  1574.193  -9.697  540.351 10.713  1.1
C0576_1 -3.6122 88.3072 -5.2199 -12.6852 93.9971 -5.2623 -1559.916  -9.041 -552.198 10.710  1.7
C0576_2 -3.5002 38.8492 -5.1328 -12.8716 33.4424 -5.3060  1579.434  -1.799  505.294 10.821  1.6
C0577_1 -3.0532 88.1737 -4.6874 -12.1139 93.7990 -4.6121 -1575.027  11.455 -531.172 10.665  1.0
C0577_2 -3.1468 39.4506 -4.9204 -12.5241 34.1552 -4.9024  1574.531 -12.994  499.106 10.769  1.0
C0578_1 -3.6175 88.0932 -5.0633 -12.7138 93.6782 -4.9648 -1572.136  12.085 -541.722 10.674  0.7
C0578_2 -3.3534 39.2265 -4.9850 -12.5076 33.7612 -4.9016  1565.918  11.386  492.205 10.662  0.9
C0579_1 -3.3659 88.2530 -5.1653 -12.4633 93.8897 -5.1154 -1564.642   8.264 -536.941 10.702  1.8
C0579_2 -3.7198 38.9574 -4.9004 -13.0884 33.5283 -4.9737  1571.121 -15.314  507.540 10.828  1.1
C0580_1 -3.4580 88.3465 -4.9325 -12.6421 94.0081 -4.8300 -1575.557   9.820 -548.068 10.789  1.7
C0580_2 -2.8809 39.4290 -5.0137 -12.1095 33.9672 -5.1403  1567.693  -6.918  543.600 10.724  1.6
C0581_1 -3.6676 88.2095 -5.3032 -12.9480 93.6797 -5.2093 -1570.081  12.812 -494.762 10.773  0.8
C0581_2 -3.3130 39.2144 -5.5655 -12.5075 33.7681 -5.7888  1571.064   2.444  529.898 10.689  1.6
C0582_1 -3.2097 88.1029 -4.8020 -12.2649 93.7537 -4.6914 -1568.776   5.256 -547.926 10.674  0.9
C0582_2 -3.4677 39.2683 -4.5794 -12.7149 33.8733 -4.7029  1567.015   3.807  535.636 10.707  1.1
C0583_1 -2.9301 88.2465 -5.0233 -12.0009 93.7958 -5.0725 -1575.312  -8.390 -546.042 10.634  1.3
C0583_2 -3.2566 39.5093 -5.0483 -12.6026 34.1069 -5.1614  1571.859 -26.316  537.762 10.796  1.7
C0584_1 -2.6671 88.1845 -5.3647 -11.8561 93.6596 -5.4282 -1564.383  -4.015 -507.552 10.697  0.8
C0584_2 -3.3693 39.0436 -4.5476 -12.7588 33.7395 -4.6014  1569.947  -5.566  501.326 10.784  2.0
C0585_1 -3.2273 88.1285 -5.1464 -12.3034 93.8127 -5.0275 -1576.955  15.395 -566.329 10.710  1.6
C0585_2 -3.7851 39.0673 -4.8461 -13.0856 33.5745 -4.8614  1568.647 -18.698  531.014 10.801  1.9
------------------------------------------------------------------------------------------------
Table: Calibration Constants for Existing WPS2s. Note that the error is given for the cameras individually, and is in units of microns.

The micrometer stage failed after the second calibration and we re-built the calibration procedure using a new probe. The ray errors for the subsequent WPS2s average around 0.9 μm, as compared to 1.8 μm for the WPS1s (Versions B, C, and D). Thus we see a factor of two improvement with respect to the WPS1, and we suspect that this is due to improvement in the calibration accuracy, not the fundamental accuracy of the instrument.

Tests

[25-JAN-12] Here is a picture of the CERN test stand taken today. There are two lines of WPS2s looking at a silver-coated white vectran wire. There are two lines of capacitive wire sensors also, looking at carbon fiber wire. The vectran wire is under tension of a 15 kg weight.


Figure: CLIC Test Stand at CERN.

Half of the WPS2s are mounted upside down like this one.


Figure: WPS2 Mounted Upside Down. The lid stays on.

[30-APR-12] We receive back from CERN four WPS2s. Numbers C0562 and C0563 they sent back because we were suspicious of our original calibration. Numbers C06565 and C0568 they sent back because they were damaged in shipping. The RJ-45 connectors on the main circuit board had been forced up, breaking the shielding tabs. We repaired the damaged sensors and re-calibrated all four. We apply the new calibration constants to the old calibration measurements. The following figure attempts to show how the sensor has changed.


Figure: Change in Calibration of C0568, Exaggerated by ×10. The blue points are the wire positions for calibration, as measured by the CMM. The vector from each blue point to its nearest red point is ten times the error we obtain when we apply the calibration constants we obtain from Calibration B (after shipping) to the images we obtained in Calibration A (before shipping).

The C0568_B calibration constants applied to the C0568_A images give us a line error of 29 μm. The figure shows that the errors are correlated. The error is greater for positions at which the pin is rotated. When we perform the same comparison for C0565 we obtain a line error of 11 μm, also strongly correlated from one point to the next. These errors are consistent with changes in the positions of the optical components due to physical damage.

The C0562 and C0563 sensors disagree with their past calibration constants by roughly 6.9 μm and 5.3 μm respectively. The following figure shows how C0563 has changed.


Figure: Change in Calibration of C0563, Exaggerated by ×100. Meaning of points as above.

We see that the error in the center of the field of view is negligible, and increases towards a maximum of around 10 μm at the edges of the field of view. The original calibration we performed at 18.5°C. The new calibration we performed at 16.7°C. The same plot of exaggerated errors for C0562 shows a similar error pattern. The original C0562 calibration took place at 18.3°C and the new one at 16.5°C. We note that our CMM is self-compensating for the expansion of steel, which is 13 ppm/°C, while our WPS2 is made out of aluminum with expansion coefficient 25 ppm/°C.

Conclusion

[25-JAN-12] We await the results of performance tests.