WPS2 Manual

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


Thermal Expansion
Dynamic Range


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.


The WPS2 is a Wire Position Sensor. It provides absolute accuracy 5 μm rms and precision of 1 μm rms in its 12 mm × 8 mm dynamic range. Each WPS2 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-B, 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: Left View of WPS2-B with Cover Off. The two cameras are the black parts mounted to the end wall. The LED array is helt up by a post. The Wire Position Sensor Head (A3022) circuit with its RJ-45 socket is to the right. 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, we can see it in the Rear Right view of the WPS2-A. We also have a Rear Left view of the WPS2-A.

The WPS2 obtains excellent images with a 20-ms exposure and adequate images with a 5-ms exposure. The WPS2-A uses the TC255 image sensor in a 0.3-in ceramic package. The WPS2-B, and all versions of the WPS1, use the TC255P in a 0.4-in plastic package. The WPS2 is almost identical to the WPS1-D. The WPS1 sensor plates were glued in place rather than screwed. The WPS1 used infrared light rather than red light, and its apertures were usually less than 500 μm, which meant it required longer exposure times to obtain a clear image.

Figure: The WPS2 Lens Holder. On the left, the top view showing the threaded light baffle. On the right, bottom view showing the 500-μm copper apperture.

The TC255P image sensor has been obsolete for ten years, but small stocks still exist in the United States. We bought enough in 2015 to make dozens of WPS2-Bs.


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 for 0.3-in Package.
CCD Holder: Drawing of CCD Holder for 0.4-in Package.
LED Holder: Drawing of LED Array Holder.
Geometry Sketch: Sketch of WPS2 optical geometry, showing field of view.
Mounting Plate: Drawing of Mounting Plate.
WPS Head: Manual for the WPS2 Head (A3022A).


The following table gives the properties of the WPS2 optics.

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
Relative Precision1 μm rms
Absolure Accuracy5 μm rms
Dynamic Range12 mm × 8 mm
Optical Center(41.0 mm, 63.2 mm, −5 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 optical center of the WPS2 is the place where the two camera center lines intersect, as shown in this sketch. The nominal position of this intersection is (38.0 mm, 63.2 mm, −5 mm). The actual location of the intersection is within 0.5 mm of the nominal location. The overlapping field of view of the two cameras is not symmetric about the optical center. The guaranteed square dynamic range of the WPS2 for a thin wire is ±6 mm in x, ±4 mm in y about the point (41.0 mm, 63.2 mm, −5 mm). We calibrate the WPS2-B in an area 12 mm wide in x and 8 mm high in y. Because the WPS2 can be mounted in any orientation, we can orient the rectangle of its dynamic range with the long side horizontal or vertical. When the long side is vertical, the instrument can accommodate up to 12 mm variation in wire sag.

Assuming we know where its mounting balls are with sufficient precision, we can place a wire anywhere in the WPS2 dynamic range, and the WPS2 will tell us the location of the wire with an absolute accuracy of better than 5 μm rms. As the wire moves, the WPS2 will measure wire movement with a precision of better than 1 μm rms. The time to acquire one measurement is roughly 500 ms when used with the LWDAQ Driver (A2071E). The following table gives the properties of the WPS2 electronics.

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.


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. The WPS Instrument, shown below, captures images from both WPS cameras at once and displays them one above the other, with the image from 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_6.tcl 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 daq_device_name = A3022 and daq_device_element = 1. There are two plugs on the WPS Head (A3022) for RTDs. The WPS end-wall RTD is connected to P1. We can connect another RTD to P2 and read it out as device element 2. The RTD_1.tcl 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_6.tcl to obtain wire position, and another with a script like RTD_1.tcl 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.tcl 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.

Thermal Expansion

The mechanical structure of the WPS2 is made entirely of aluminum. The same is true of all versions of the WPS1. The image sensor itself, however, is made of silicon. When the aluminum chassis warms up, its shape can change if there is a temperature gradient from one side to the other. We measured wire position with fluctuations in temperature in WPS1 Performance. With daily 1.5°C changes in temperature over a period of a week, the measured position was stable to better than 0.5 μm rms. In the face of sudden 1°C changes in ambient temperature, we the measured position jumped by 2 μm and settled back to its previous value. Here we concern ourselves with the change in measured position that results from a slower change in temperature, so that we can assume the entire sensor is in thermal equilibrium.

Let us suppose we calibrate our sensor perfectly at some known temperature Tc. The coefficient of thermal expansion of aluminum is kAl = 25 ppm/K. For the moment, let us assume that all parts of the device, including the image sensors, share the same coefficient of expansion. Thus we assume that at temperature T, every dimension of the sensor is larger by (TTc) kAl. Now let p(T) be the point that the sensor measures to be at mount coordinates (x, y) when the sensor is at temperature T. Because of thermal expansion, the actual position of p varies with temperature. But at Tc, we have p(Tc) = (x, y). The sensor is held in place by its cone ball, and the center of this ball is the origin of our mount coordinates. As the sensor expands, the coordinates of the origin do not change. Because the sensor expands uniformly, it does not rotate upon its kinematic mount.

p(T) = (TTc)(x, y)kAl.

Consider the point p(Tc) = (38 mm, 64 mm), which lies near the center of the WPS1 and WPS2 field of view. With our assumption of uniform expansion, we have:

dp(T)/dT = (x, y)kAl = (38 mm, 64 mm) × 0.000025/K = (+0.95, +1.6) μm/K.

By definition, we will measure the position of p(T) to be (x, y) at any temperature, so uniform thermal expantion kAl introduces a measurement error of −0.95 μm/K in x and −1.6 μ/K in y. If we warm up our sensor by 10°C above its calibration temperature, the center of its field of view moves up by 9.5 μm and sideways by 16 μm.

Now suppose we now move our point p(T) a distance w across the field of view at temperature T. The sensor will report a movement:

w(T) = |Δp(T)| = w(1−(TTc))kAl.

If we warm up our sensor by 10°C above Tc, it will measure a 10-mm movement to be only 9.9975 mm, for a net error of −2.5 μm, which is small enough to ignore. We see that change in temperature of one or two degrees will introduce measurement errors less than 5 μm rms, but larger changes we must account for. We have always measured the temperature of the sensors during calibration, and now the WPS2 provides its own on-board thermometer to determine the relative change in temperature with respect to calibration. By adding 0.95 μm/K to x and 1.6 μm/K to y we can correct the WPS measurement at the center of its field of view.

Let us now consider the silicon image sensor. In the direction perpendicular to the wire image, the sensor package is held in a 10-mm aluminum aperture. The package is plastic in the WPS1 and ceramic in the WPS2. Both have coefficients of thermal expansion that are much smaller than that of aluminum. The gap between the aperture and the sensor is filled with a thin layer of glue. When the aperture warms by 10°C, it will tend to expand by 2.5 μm, while the image sensor package will not. Stress will develop between them. The stress resists the widening of the aperture encourages some stretching of the sensor package. To the first approximation, the center of the silicon image sensor will not move with respect to the center of the aperture. Thus we expect the non-expansion of silicon to have no effect upon the position of the center of the field of view of the WPS. When a wire is at the center of the field of view, its images lie upon the center of both image sensors.

Now consider a wire at the edge of the field of view. The coefficient of thermal expansion of silicon is only 2.6 ppm/K. We previously assumed that the sensor expanded by 25 ppm/K. If the width of 100 pixels was 1 mm at 20°C, we assumed theiy would expand to 1.00025 mm at 30°C. But now we see that the width of 100 pixels will expand only to 1.00003 mm at 30°C. Because we assumed the pixels had expanded by 25 ppm/K, we figured the WPS would under-report displacements by 25 ppm/K. Now we see that the WPS will under-report displacements by only 2.6 ppm/K. In our equation for w(T), we should use kSi = 2.6 ppm/K instead of 25 ppm/K. A WPS that is 10°C above its calibration temperature observing a 10-mm movement of a wire will report this movement to be only 0.26 μm less than 10 mm, which is an effect so small we can ignore it.

We conclude that the expansion of the aluminum chassis causes a displacement of the entire field of view of the WPS1 and WPS2 by +0.95 μm/K in x and +1.6 μm/K in y, but no significant change in the scale of its measurements within the field of view, nor any significant rotation of the field of view. To correct WPS measurements for temperature, we add (T-Tc)(0.95, 1.6) μm/K to the sensor measurement, where (T-Tc) is the amount by which the current temperature is above the calibration temperature.


Calibration of the WPS2 uses the same procedure we developed for the WPS1. At each pin position in the calibration, we use the Acquisifier with script WPS_Acquire.tcl to measure wire edge positions and rotations, WPS2 temperature, and CMM temperature. The Acquisifier writes all these values to a text file, and also stores the combined top and bottom camera image as obtained from the WPS Instrument. 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 -3.4858 88.3578 -5.0164 -12.7522 93.8360 -5.0101 -1564.727  -1.190 -501.328 10.765  1.8
C0584_2 -3.1045 39.4025 -4.8897 -12.3314 34.1424 -4.9835  1570.411  -4.260  522.362 10.621  1.6
C0585_1 -3.6850 88.3330 -5.1424 -12.8687 94.0633 -5.0198 -1576.082  16.447 -555.258 10.825  2.5
C0585_2 -3.3292 39.2889 -5.1974 -12.5287 33.8389 -5.2820  1569.332 -18.081  547.339 10.693  1.8
Q0216_1 -3.5591 88.5890 -4.9124 -12.2187 93.8527 -4.8770 -1555.264 -22.240 -506.775 10.134  4.1
Q0216_2 -3.3179 39.6788 -4.7670 -11.7975 34.4772 -4.8075  1583.882   1.952  546.866  9.948  3.3
Q0217_1 -3.7363 88.0171 -5.1652 -12.3476 93.1622 -5.3174 -1570.841  -2.356 -523.955 10.032  4.1
Q0217_2 -3.7764 39.2806 -5.2529 -12.4793 33.8572 -5.4969  1579.514 -14.634  537.788 10.257  3.4
Q0218_1 -3.5813 88.2743 -5.0126 -12.3336 93.4845 -5.2073 -1577.138 -17.503 -501.868 10.188  2.7
Q0218_2 -3.0523 39.2724 -5.0193 -11.6411 34.0799 -5.1460  1587.486 -16.533  524.898 10.037  3.5
Q0219_1 -3.8767 88.2140 -4.7340 -12.6789 93.3891 -4.6100 -1570.961 -12.751 -512.679 10.212  2.1
Q0219_2 -4.0764 38.9668 -5.0679 -12.8813 33.7422 -5.2887  1564.115   4.237  515.015 10.241  1.6
Q0220_1 -3.8005 88.5382 -4.7380 -12.5620 93.8282 -4.6276 -1566.102  -2.963 -518.161 10.235  1.6
Q0220_2 -3.8483 39.3110 -5.1357 -12.6152 34.0222 -5.2907  1582.789  -2.921  523.668 10.240  2.0
Q0221_1 -3.3437 88.5564 -4.9704 -12.1553 93.9007 -5.2349 -1564.318 -27.889 -536.436 10.309  2.4
Q0221_2 -3.3022 38.9191 -5.1785 -12.5569 33.2544 -5.2791  1572.362  -5.979  508.251 10.851  2.7
Q0222_1 -3.5868 88.5916 -5.0083 -12.2011 93.8793 -5.1198 -1572.243  -4.076 -507.009 10.108  1.5
Q0222_2 -3.6320 38.9257 -5.1766 -12.2432 33.7289 -5.3273  1588.764  -7.073  530.035 10.059  2.2
Q0223_1 -3.2018 88.1766 -4.7839 -11.9541 93.4684 -4.8056 -1556.855 -12.150 -538.599 10.228  2.9
Q0223_2 -3.6389 39.1648 -5.1051 -12.4195 33.8758 -5.2099  1574.238   7.316  497.997 10.251  2.4
Q0224_1 -3.1788 88.0793 -4.7190 -11.9091 93.3991 -4.7437 -1571.332  -3.309 -517.308 10.223  1.5
Q0224_2 -3.2386 39.0490 -4.8937 -11.8836 33.8782 -4.9505  1576.488   1.762  513.098 10.074  1.6
Q0225_1 -4.0589 88.3720 -4.8995 -12.8287 93.5064 -4.9055 -1553.095  -4.769 -522.098 10.162  1.5
Q0225_2 -3.3123 39.3407 -5.0090 -11.8970 34.3197 -5.2214  1571.366  -6.593  525.225  9.948  1.8
Q0226_1 -3.6464 88.1116 -4.8707 -12.2739 93.3026 -4.8040 -1569.563   1.982 -532.738 10.069  1.7
Q0226_2 -3.3656 39.1447 -5.9433 -13.4427 33.1344 -6.2755  1561.946  -6.834  539.483 11.738  3.7
Q0227_1 -3.9777 88.4234 -4.7618 -12.7566 93.7305 -4.7552 -1555.219 -19.688 -518.563 10.258  1.8
Q0227_2 -3.1953 39.3071 -4.7512 -11.8001 34.1020 -4.9436  1569.442 -10.096  520.840 10.058  2.2
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.

[05-JUN-13] The C0584 and C0585 calibrations have line error 4.4 μm and 3.1 μm respectively, but they are measured over a larger field of view. The calibration spans 12 mm in x and 8 mm in y.

[01-DEC-15] We have 12 completed WPS2Bs. We calibrate Q0218 over a region 18 mm in x and 8 mm in y. See Q0218 for pin locations and errors. Calibration line error is 3.9 μm, which is consistent with the calibration error of our WPS2A devices over a 12 mm × 8 mm region.

Figure: Calibration Error versus Reference Plane for Wire Measurement.

[02-DEC-15] By default, we calculate wire position where the measured wire center line crosses the plane z = −5 mm. The graph above shows how the calibration error varies with our choice of z-plane. We provide plots for our new Q0218, a WPS2B, and two WPS2As. We note that the calibration range for the WPS2As is smaller.

[03-DEC-15] We calibrate Q0216 (4.6 μm), Q0217 (4.6 μm), Q0219 (3.3 μm), Q0221 (4.0 μm), and Q0222 (1.9 μm).

[07-DEC-15] We calibrate Q0220 (2.4 μm), Q0223 (4.1 μm), Q0224 (2.8 μm), Q0225 (2.8 μm), and Q0227 (2.7 μm). We have two pin positions with the pin touching the edge of the field of view in our Q0226_A calibration, so we calibrate with only sixteen pin positions, Q0226 (5.0 μm).

[08-DEC-15] We will ship Q0217-Q0225, and Q0227 to CERN, to make a total of 10. We keep back Q0216, but we accept its calibration. We keep back Q0226 but reject its calibration. We re-align the bottom camera on Q0226, and we intend to re-calibrate.

Dynamic Range

[05-JUN-13] The WPS2-A is provides a dynamic range of ±5 mm in x and y centered about on (41.0 mm, 63.2 mm, −5mm) in mount coordinates. Our original calibration routine explored 38±6 mm in x and 63± 3 mm in y. We re-calibrate sensors C0584 and C0585 with a grid of 37 points covering 41±6 mm in x and 63±4 mm in y. The following two plots show the location of the calibration pin in mount coordinates, as measured by the CMM, and the exaggerated error of the calibrated WPS in measuring these same pin positions.

Figure: Line Calibration Error of C0584, Measurement C. The errors are exaggerated by ×100.

The line error of C0584_C is 4.4 μm, and that of C0585_B is 3.2 μm.

Figure: Line Calibration Error of C0585, Measurement B. The errors are exaggerated by ×100.

We are unable to calibrate the sensor over a ±5 mm range in y. Each sensor does have a ±5 mm dynamic range in y, but the center of this range varies by ±1 mm from one sensor to the next. Furthermore, the pin we use in calibration has diameter 1.6 mm, which is far larger than the 0.4-mm wires we expect to use with the WPS2. The thickness of the pin subtracts another 0.6 mm from our calibration range. The result is we calibrate over 12 mm × 8 mm instead of 10 mm × 10 mm.

[01-DEC-15] We calibrate Q0218 over a region 18 mm in x and 8 mm in y. The plot below shows the calibration points and the exaggerated errors.

Figure: Line Calibration Error of Q0218, Measurement B. This is a WPS2B. The errors are exaggerated by ×100.

The steel pin we use for calibration is 1.6 mm in diameter. The calibration points are such that the edge of the pin is at least one diameter away from the edge of the dynamic range. We have set the center of the field of view to within ±0.5 mm. With a 0.8-mm Vectran® wire, we expect the guaranteed dynamic range to be roughly 10 mm high and 20 mm wide.


[29-JUL-15] The absolute calibration of the WPS2-B appears to be good to 4 μm rms within the range of the calibration measurements. With our original calibration measurement positions, the accuracy across the entire advertized range of the device is only 10 μm rms. With an expanded calibration range, the accuracy improves to 4 μm in the advertised range. Measurements at CERN with a motorized stage produce larger errors than we obtain with our own coordinate measuring machine, but the accuracy still appears to be better than 5 μm rms. We are making ten WPS2-Bs for CERN now, and hope to obtain ±5 mm dynamic range overlapping for all sensors, with a well-defined center.



[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.

[12-SEP-12] At CERN, the survey group has a motorized x-y stage with a WPS mount. They place a WPS on the stage, keep the wire stationary, and move the WPS so that the wire moves around in its field of view. We receive images for both Vectran® and metal wire measurements. We analyze the images and find that there are some with only one wire. We eliminate these. There are some with the wire touching the edge. We eliminate these. We find that our analysis with pre-smoothing introduces a shift in image position with these sharp images, especially when the wire is near the image edges. We resturn to our original derivative analysis with no pre-smoothing and no joining of parallel clusters.

The x and y stages are not perpendicular, nor are they parallel to the WPS mount coordinates. At CERN they measure the rotation of the stage with respect to the WPS mount and obtain −0.8 mrad in x and −1.7 mrad in y. We rotate the stage coordinates and add an offset to move the stage origin to the WPS mount coordinate origin. We subtract the stage measurements from the WPS measurement and so obtain a plot of the disagreement between the WPS and the Stage.

Figure: C0564 Disagreement with X-Y Stage, Exaggerated by ×50. The blue squares mark the stage positions and the orange squares mark the disagreements. The line from the blue square to the nearest orange square is the error vector. One square width is an error of 20 μm. The rms error in x and y are both 3 μm, and the rms error length is 4 μm. For spreadsheet of data see here (Open Office).

We see that the disagreement between C0564 and the X-Y stage is 4 μm rms. If we add a scaling factor to the account for thermal expansion of the stage or WPS, we find that we can reduce the disagreement to 2.8 μm rms. But the scaling factor required to achieve this reduction is 1.0005, or +500 ppm, which is far too large to be explained by thermal expansion of aluminum. A 500 ppm expansion occurs in aluminum with a 20°C change in temperature.

[26-SEP-12] At CERN, our collaborators obtan an almost identical error map from the same images as we did above, as you can see here. We used the same analysis (no smoothing, no merging, analysis_enable = 1) and threshold (analysis_threshold = "20 #").

[19-NOV-12] We place sensor C0582 on our test stand in Boston. We have a short length of black Vectran® wire held tight by springs. We perform a series of experiments designed to test the relative accuracy of the calibration. We start by taking ten measurements without touching the sensor. We take ten measurements each time removing and replacing the cover. We take ten measurements removing the entire sensor and replacing it on the three balls. We place seven calibrated sensors (Q0129, P0203, P0223, P0225, C0582, C0583, C0584, C0585) on the mount one after the other and took measurements for each. We used the WPS_5.tcl Acquisifier script to translate image measurements to wire position. The calibration of C0584 was off by over 100 μm, and so removed it from our test. The table below summarizes our observations.

Experimentσ(x) (μm)σ(y) (μm)
Repeat Measurement Without Touching0.50.2
Repeat With Cover Replacement0.30.2
Repeat with Re-Mounting of Sensor0.40.3
Replacing One Sensor With Another5.63.2
Table: Resolution, Mounting Accuracy, and Calibration Consistency.

We had to take great care not to touch the wire when replacing the cover or the sensor. If we touched it, it would move by tens of microns. We had to be sure to hold down the sensor with two fingers on either side of the mounting screw to make sure it was seated properly. Having practiced the procedure, we were able to obtain the above results. The mounting accuracy appears to be better than 1 μm. The cover appears to have little effect upon the measured wire position.

Figure: Measurement of the Same Wire By Various WPS Devices. We excluded C0584 because its disagreement was over 100 μm.

We conclude that the calibration resolution for replacement of one sensor with another is of order 6 μm in x and 3 μm in y. We do not have enough WPS2s to estimate the replacement error of WPS2s only.


[10-MAY-13] We rebuild C0584 with an anodized aluminum base supplied by CERN. In place of the flat depression, this base has a flat pin inserted in a hole while cold, so as to make a press fit with the base metal. We expand the calibration process to include more points over a wider range, and obtain the following plot of errors. The standard deviation of the error is 2.0 μm.

Figure: Line Calibration Error of C0584, Measurement B. The errors are exaggerated by ×100. We rebuilt C0584 with a hardened aluminum base and added points to the calibration procedure.

The micrometer attached to the vertical stage of our calibration stand does not give vertical movement directly. When we move the micrometer 10 mm, the stage goes up by only 7 mm. Our new calibration procedure was supposed to span a 10 mm × 10 mm area, but instead spans only 7 mm × 10 mm.

[05-JUN-13] We calibrate again with a 12 mm × 8 mm grid. See the Dynamic Range section for details. Line error is 4.4 μm for C0584 and 3.1 μm for C0585 over the entire range.

[10-JUN-13] We now have two calibrations of C0585 with our 12 mm × 8 mm grid. When we apply the C0585_B calibration constants to the C0585_B pin positions, we get a line error of 3.1 μm rms. Figure C0585_B_Errors.gif is a map of the line errors ×100. When we apply the C0585_C calibration constants to the C0585_C pin positions, we get a line error of 2.9 μm rms. Figure C0585_C_Errors.gif is a map of the line errors ×100. The difference between the two error maps is less than 1 μm rms, which suggests that the calibration errors are a function of the C0584 optics. When we apply the B constants to the C positions we get 4.1 μm line error, and when we do the converse, we also get 4.1 μm.

We have two calibrations of C0584 with our 12 mm × 8 mm grid. When we apply the C0584_C calibration constants to the C0584_C pin positions, we get a line error of 4.4 μm rms. Figure C0584_C_Errors.gif is a map of the line errors ×100. When we apply the C0584_D calibration constants to the C0584_D pin positions, we get a line error of 2.2 μm rms. Figure C0584_D_Errors.gif is a map of the line errors ×100. The difference between the two error maps is more than 5 μm in several places, especially in the lower right points. We suspect that these points were imperfect in C0584_C because when we remove them, the C0584_C calibration error drops to 3.3 μm.

[25-JUL-13] Patrick Bestmann at CERN measures the relative error of C0584 and C0585 with a black Vectran® wire. The plot below gives the error he measured in a 10 mm × 10 mm field of view. He has zeroed the error on the lower-left corner for the relative test.

Figure: Line Calibration Error of C0584, Measurement B. The errors are exaggerated by ×100. We rebuilt C0584 with a hardened aluminum base and added points to the calibration procedure.

We do not understand why Patrick's errors are so much larger than the ones we measure in the overlap between his measurement range and our calibration range, but we are looking into the question.


[27-OCT-15] We have twelve assembled WPS2-B without covers, awaiting calibration, shown here. Ten of these are to fulfill and order placed by CERN.


[26-APR-16] CERN has 10 of WPS2-B. One of them, Q0224, they send it back to us, saying it is faulty. One of the flex cables is unplugged. When we restore the cable, Q0224 works perfectly. We have two spare WPS2-Bs here at OSI on the shelf. At CERN, they check linearity and replacement error, as they describe in their Short Report oWPS. For their nine sensors, the standard deviation of the difference between their two-dimensional stage and the WPS2-B in x or y is between 1.1 and 3.4 μm. Assuming the x and y errors are independent, the difference in xy appears to be 3-5 μm rms. When CERN mounts the same sensor repeatedly, their standard deviation in position measurement is of order 1 μm, according to an e-mail. When they exchange sensors, the standard deviation is around 3 μm, if we ignore two outliers Q0222 and Q0218, which produce errors of +8 μm and −10 μm in x.

[20-JUN-16] We have Q0224 back from CERN again, returned for re-calibration, following these measurements showing that its measurements were offset by 20 μm. We obtain a new calibration, Q0224_B. The table below shows the original and new calibration constants for the two cameras on Q0224.

                  pivot (mm)              sensor (mm)            rot (mrad)         pivot-  error
Camera       x      y        z       x      y        z         x        y       z   ccd (mm) (um)
Q0224_A_1 -3.1980 88.0950 -5.0056 -11.9307 93.4184 -5.0737 -1571.533 -3.859 -514.367 10.228  2.5
Q0224_B_1 -3.1788 88.0793 -4.7190 -11.9091 93.3991 -4.7437 -1571.332 -3.309 -517.308 10.223  1.5
Q0224_A_2 -3.2454 39.0263 -5.0504 -11.8872 33.8536 -5.1274  1576.393  3.672  510.063 10.072  1.1
Q0224_B_2 -3.2386 39.0490 -4.8937 -11.8836 33.8782 -4.9505  1576.488  1.762  513.098 10.074  1.6

When we use the Q0224_A calibration constants with the Q0224_A wire positions, we get line error 2.8 μm. The Q0224_A calibration constants applied to the Q0224_B measurements produce line error 6.4 μm. The Q0224_B calibration constants applied to the Q0224_B measurements give us a line error of 2.4 μm rms. Figure Q0224_B_Errors_x100 shows the line error across the calibration range. When applied to the Q0224_A measurements, the Q0224_B calibration constants give a line error of 6.9 μm.

The two calibration are inconsistent, which suggests that some movement of the cameras took place between the calibrations. The maximum disagreement between the calibrations is only 10 μm in the calibration range. So we are not confident we have discovered the source of the 20-μm offset observed at CERN.


[19-SEP-18] We want to make 1500 m of wire suitable for use with our WPS2B sensors. We start with the same non-conducting, three-stranded, white Vectran® wire chosen by our collaborators at CERN. We can buy 20 kg of this wire for $5000, which will be roughly 100 km of wire. The white wire shows up well in our red-light illumination, so we have no need to change its color. But we must give the wire electrical conductivity or else it will be possible for electrostatic charge to build up on the wire, causing the wire to move by electrostatic attraction. Such movement was observed at SLAC when using a monofilament fishing line. The wires moved by up to 5 mm. Back in 2015, CERN addressed the problem of conducting wire by sputtering silver onto the three strands, then winding the strands together. The resulting wire had resistance roughly 1 kOhm/m. We have a sample of this silver-coated wire we received several years ago from CERN. We measure its resistance. No matter how we try to make contact with the wire, twist it, or stretch it, the resistance is >10 GΩ/cm. So far as we can tell, it is insulating.

Figure: Painting Wire in Place. Vectran® wire stretched with 0.5-kg load coated with graphite paint along a 30-cm section and with silver paint along another section. In the background we see a sample of silver-coated wire from CERN, and a small spool of un-coated Vectran® wire.

We impregnate white wire with graphite and silver paint. After trying, and before any agitation of the wire, the graphite gives resistance of less than 1 kΩ/cm and the silver wire less than 10 Ω/cm. After we rub, bend, and twist the wire, it becomes insulating. We stretch a wire with a 0.5-k load and coat it with graphite and silver using a sponge. We squeeze the sponge around the wire. The sponge leaves no drips behind. After half an hour we rub between our fingers to remove any excess graphite or silver. The silver-coated section is insulating. The graphite-coated section has resistance 8 MΩ over 30 cm, or 250 kΩ/cm. We coil up and uncoil the graphite-coated section and take a photograph with a microscope.

Figure: Vectran® Wire Under 0.5-kg Load With Graphite Coating. The wire is roughly 400 μm in diameter. Resistancer of this wire is roughly 5 MΩ/cm.

We return to the silver-coated wire from CERN. When we load the wire with 2 kg we are able to find 5-cm sections with resistance 1 GΩ. We find a 1-cm section that shows resistance >10 GΩ when slack, dropping to 1 kΩ when loaded with 2 kg. We move one alligator clip 1 cm farther along the wire and the 2-cm length has resistance >10 GΩ for 0-4 kg of load. The resistance of our 20 cm length of graphite-coated wire remains roughly 100 MΩ regardless of load.

[21-SEP-18] We measure the resistance of a 20-cm length of graphite-impregnated Vectran® wire. We first place one alligator clip on the left, and move the other to the right. Then we place one clip on the right, and move the other to the left.

Figure: Resistance versus Length of 20-cm Graphite-Impregnated Vectran® Wire.

The resistance is the sum of the contact resistance of each clip on the wire, and the resistance of the impregnated wire itself. The right-side plot suggests a wire resistance of 670 kΩ/cm for length 0-15 cm. The contact resistance is 30 MΩ or 90 MΩ at the left end of the wire, where the impregnation is fading. We rub the wire twenty times between our finger nails. Its resistance rises to 200 MΩ.

We coat 120 cm of wire with a sponge soaked in graphite paint. We fold the sponge over around the wire and slide the sponge along the wire from one end to the other two times. The wire is stretched by 0.5-kg weights. The entire 120 cm is coated in under ten seconds. The paint is dry to the touch in a few minutes. After half an hour, we measure resistance versus distance.

Figure: Resistance versus Length of 120-cm Graphite-Impregnated Vectran® Wire.

We scrape the wire six times along its entire length with our fingernails. We increase the tension to 3.0 kg. We repeat our measurement. The resistance of the full 120 cm is 20 MΩ before and 85 MΩ after. We obtain the following images of bare and graphite-coated wire with a WPS2B.

Figure: WPS2B Images for Bare (Left) and Graphite-Impregnated (Right) Vectran® Wire (Close-Ups). For the full images to which we applied analysis, see Bare_Vectran and Graphite_Vectran.

The image contrast is better for the graphite wire, which is black. The bare wire is white. We note that the width of the graphite-coated wire varies along its length. We use the following Toolmaker script to divide each of the above wire images into 22 horizontal strips, each 10 pixels high, in which we calculate the position of the left and right edges of the wire on the image sensor.

set im [LWDAQ_read_image_file [LWDAQ_get_file_name]]
catch {image destroy wps}
image create photo wps
label $f.l -image wps
pack $f.l
for {set top 2} {$top <= 230} {set top [expr $top + 10]} {
	lwdaq_image_manipulate $im none -bottom [expr $top + 10] -top $top
	set wps [lwdaq_wps $im \
		-num_wires 1 \
		-pixel_size_um 10 \
		-threshold "30 # 10" \
		-reference_um [expr $top + 5] \
		-pre_smooth 1 \
		-merge 1] 
	LWDAQ_print $t "$top $wps"
lwdaq_image_destroy $im

We fit a straight line to the center of the wire position in each strip versus row number. The plot below shows the residuals from this straight line fit versus row number, as well as the image width versus row number.

Figure: Wire Shape Effect for Bare and Graphite-Impregnated Wire Under 3-kg Load. Wire width for graphite (G_Width) and bare wire (B_Width). Residuals for graphite (G_Resid) and for bare wire (B_Resid).

The standard deviation of the residuals is 20-μm for the bare wire and 10 μm for the graphite-impregnated wire. The width measurement is poorly-behaved in these thin strips. In the bare-wire image the width ranges from 20-200 μm, and in the graphite-impregnated image the width varies from 60-150 μm.

We wind 100-cm of graphite-impregnated line into a 1-cm coil and place it on our scale. It weighs 176 mg. Afterwards, we uncoil and find that it no longer conducts electricity from one end to the other. A 100-cm length of bare line weighs 152 mg, and silver-coated line from CERN weighs 158 mg.

[24-SEP-18] We consider how a linear increase in line density from one end of a span to the other will disturb the parabolic shape of the line that we expect for a line of uniform density.

Figure: Sag of a Wire With Density Increasing Linearly With Distance. For consistency checks of the derivation, see here. With ρ = 0.18 g/m, a = 0, g = 10 m/s/s, and T = 150 N, and l = 200 m, the sag at the center is 60 mm. For a comparison of Vectran® wire to other materials, see here.

Suppose we string three lines of the same length, each with the same density at the center of the span, but with differing total variation from one end to the other. We use the above result to determine how the shape of the line changes as we increase the variation in density.

Figure: Deviation of 200-m Graphite-Impregnated Line from Parabola versus Fractional Distance Along Line Span. The density of the lines is 0.18 g/m at the center of a 200-m span, with tension 150 N, gravity 10 m/s/s. The density variation is 1% (yellow) 5% (blue) and 10% (orange). For all lines, the sag at x/l = 0.5 is 60 mm.

In order for the line shape to be within ±5 μm of parabolic, its density variation must be <0.25%. We have no reason to believe that the line, as suppied by the manufacturer, has density variation <0.25%. Assuming the line density perfectly uniform, we consider the effect of our graphite impregnation. Two coats of graphite paint add 24 mg/m to the line density. If we can control the density of this coat to ±2.4 mg, the maximum deviation deviation from parabolic will be ±100 μm. Applying more tension to the line and keeping it shorter gives us a dramatic reduction in the deviation from parabolic.

Figure: Deviation of 100-m Bare Line from Parabola versus Fractional Distance Along Line Span. The density of the lines is 0.15 g/m at the center of a 100-m span, with tension 300 N, gravity 10 m/s/s. The density variation is 1% (yellow) 5% (blue) and 10% (orange). For all lines, the sag at x/l = 0.5 is 6.2 mm.

According to our table of wire properties, the breaking strain of Vectran® line is 2.7 GPa and its bulk density is 1.1 g/cm3. Our bare line's linear density is 0.15 g/m, so it's cross section is 1.4×10−7 m2 and its breaking strain 370 N. If we load the bare line to 370 N over a 100-m span, the sag will be 5.1 mm (according to our derivation above, and also our table).

[25-SEP-18] We purchase some braided fishign line made of Dyneema® fiber, which compares well to the Vectran® fiber. Its density is 0.98 g/cm3 and strength 3.4 GPa (see Table 1). The sag of a 100-m span loaded to its breaking strain will be only 3.6 mm.

[01-OCT-18] We apply Carbon Black acrylic paint to white 70-kg breaking strain, braided Dyneema fishing line. The paint soaks all the way into the braid, so that a cross-sectional cut through the fiber is entirely black. The paint dries in ten minutes and if flexible. One day later, we measure the resistance of 20 cm of painted line and find it to be >100 GΩ. This paint does not conduct electricity.

We impregnate 1 m of the same 70-kg braided line with our original graphite paint. We wait ten minutes and take the following photograph of the line suspended over a piece of paper, but under no tension.

Figure: Braided Dyneema Line, Impregnated with Graphite Paint, No Tension. Resistance is 1 MΩ/m.

The braided line does not unwind when it is loose. The graphite paint soaks right into the braid to the center. The resistance is 1 MΩ for the 1-m length. We coil the 1-m and tie into a ball to measure its mass. We get 357 mg. We cut ten 1-m lengths of uncoated line and obtain average weight 355 mg with standard deviation 1.8%. We cut ten 10-m lengths of uncoated line and obtain average 3539 mg with standard deviation 1.0%. The slope of weight with distance along the original 100-m section is 1.3%, but not statistically significant. We uncoil our graphite-impregnated braid. Its resistance is now >100 GΩ.

[19-OCT-18] We have a 2-m span of 70-kg braided line running over two pullies at either end and loaded with 1 kg that we can increase to 20 kg. We impregnate in place with graphite paint with a sponge wrapped around the line, passing twice along the span. After three days, the resistance of the entire span is 1.0 MΩ. We increase the tension to 20 kg weight and the resistance of the span increases to 1.5 MΩ. After six days it is 1.0 MΩ. We run a paper towel up and down the line six times and remove graphite dust. The resistance of the entire span is now >4 MΩ. We slide our two resistance probes along the line, separated by 30 cm, pressing one down on the line and the pulling the other up, so as to maintain a firm contact. The resistance of the 30-cm segment varies from 1.4 MΩ to 3.5 MΩ along the 2-m span.

Figure: Braided Dyneema Line, 70-kg Strength, Impregnated with Graphite Paint. Left 1 kg tension, Right 25 kg tension. Click to enlarge.

We apply a 25-kg load and measure the resistance of a 30-cm section. We get 2.5 MΩ. We relax tension and get 1.5 MΩ.

[04-DEC-18] Our 2-m section of stretched line we have removed from the pullies, set aside, and restored to the pullies three times. Its total resistance is now >40 GΩ, which we measure with a 10-V power supply and a multimeter. We replace the line and coat with graphite while under 1-kg load. After two hours, resistance of 2-m span is 1.4 MΩ. We increase tension to 25 kg and resistance increases to 2.5 MΩ. As we repeately cycle the load from 1 kg to 25 kg, the resistance at 1 kg is increasing. The wire snaps at one of our knots. We restore the line. Under no load its resistance is 16 MΩ. We impregnate the ends of the line and place them over the pullies. We connect our voltmeter to the pullies. Resistance is 7.5 MΩ.

[18-DEC-18] Resistance between the pullies that support our 2-m stretched line is 6.0 MΩ. We apply roughly 15 kg load by hand to the wire, then relax, twenty times. Resistance of the wire is no 10 MΩ.

[28-DEC-18] Resistance between pullies is 9 MΩ. We increase tension until the wire breaks at one of the knots beyond a pully. The wire springs away and lands on the floor. We pick up, tie the load on again, and lay over the pullies. Resistance between pullies is no >100 GΩ. By moving our probes along the wire, we find one 10-mm section with resistanc >100 GΩ, 20 cm from one end. The remaining 180 cm to the pully has resistance 50 MΩ.


[15-MAR-19] We coat 18 m of 30-lb (14-kg) Dyneema braided line and coat once with water-based carbon conducting paint. We are pulling the line off its 300-m spool with a larger hand-held spool, in which we have secured a foam layer as a base for the line. As the line moves six meters from its origin, we coat with paint using a sponge. We allow to dry on the spool for 30 min then unwind around the columns in our office. There are four breaks in the conductive coating. Three are obvious because the wire is white for a short distance. One is not obvious. We re-coat the entire 18 m except where it wraps around the columns. Resistance is now 7 MΩ.

We coat 6 m of 80-lb (36-kg) Dyneema braided line, hanging under its own weight. We apply the paint with a sponge going over the entire length three times. We allow to dry for twenty minutes. We measure resistance of the entire length to obtain resistivity in MΩ/m. We wind up the line onto our spool, then let it out again, and measure resistivity again. We repeat until we accidentaly snag the line, and ruin the coating. We re-coat the damaged section and start again after ten minutes. We deliberately damage the coating by kinking it after another eleven re-windings, re-coat, and start again after five minutes.

Figure: Resistivity of Dyneema Line versus Re-Winding Trial. The line is 36-kg strength impregnated with carbon paint. Colors indicate that we damaged the coating by kinking, re-coated the damaged section, waited for at least five minutes, then continuted.

We observe that the resistance of the paint is greater than we can measure when it is first applied, even if the application is over a few centimeters. After five minutes, the resistance drops to close to its final value, and the paint is dry to the touch.