24
European Synchrotron Radiation Facility Grenoble, France Stretched-Wire Measurement Bench User’s Manual Author G. Le Bec Date 23/02/2017 Version 2.7

Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

European Synchrotron Radiation Facility

Grenoble, France

Stretched-Wire Measurement Bench

User’s Manual

Author G. Le Bec Date 23/02/2017 Version 2.7

Page 2: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

2

Contents

1 Warnings ......................................................................................................................................... 4

2 Introduction .................................................................................................................................... 4

2.1 General features ..................................................................................................................... 4

2.2 Linear stages and towers ........................................................................................................ 4

2.3 Control and measurement unit .............................................................................................. 5

3 Handling .......................................................................................................................................... 5

4 Wiring diagrams .............................................................................................................................. 5

5 Using the bench .............................................................................................................................. 7

5.1 Introduction ............................................................................................................................ 7

5.2 Initialization ............................................................................................................................. 8

5.2.1 Open and close a measurement ..................................................................................... 8

5.2.2 Modifying the measurement metadata .......................................................................... 8

5.2.3 Load and save measurement parameters ...................................................................... 8

5.3 Moving the stages ................................................................................................................... 9

5.3.1 Stage control using the Igor interface ............................................................................. 9

5.3.2 XPS motion controller access from the navigator........................................................... 9

5.4 Stretching the wire .................................................................................................................. 9

5.5 Magnetic measurements ...................................................................................................... 10

5.5.1 Abort a measurement ................................................................................................... 10

5.5.2 Alignment ...................................................................................................................... 10

5.5.3 Circular measurements ................................................................................................. 12

5.5.4 Compensated measurement ........................................................................................ 14

5.5.5 Linear measurements ................................................................................................... 14

5.5.6 Repeatability analysis .................................................................................................... 15

5.5.7 Exporting data ............................................................................................................... 15

5.6 Command lines ..................................................................................................................... 15

5.7 Wave description .................................................................................................................. 16

5.8 Computing field and gradient ............................................................................................... 21

6 Calibration ..................................................................................................................................... 21

6.1 Accuracy of linear stages ...................................................................................................... 21

6.2 Stage perpendicularity .......................................................................................................... 22

6.3 Procedure for stage calibration ............................................................................................ 22

6.4 Stage roll angles .................................................................................................................... 23

Page 3: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

3

6.5 Position of the wire support ................................................................................................. 23

7 Installation of software updates ................................................................................................... 23

8 Configuration files ......................................................................................................................... 23

9 Replacement of the XPS controller ............................................................................................... 24

10 Source codeSWLab ftp server ................................................................................................... 24

11 References ................................................................................................................................ 24

Page 4: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

4

1 Warnings The stretched-wire magnetic measurement bench contains some moving parts. Please read the

related warnings in the ILS-100CC and IMS-100V linear stages user’s manuals. This documentation is

attached to the current manual.

General warnings and cautions are indicated in the XPS user’s manual, page 4.

Safety precautions are indicated in the Keithley 2182 user’s manual, page 5.

The bench shall be connected to the ground.

2 Introduction

2.1 General features The Stretched Wire Measurement (SWM) bench version 3 is an evolution of the benches built by the

ESRF ID lab. A first bench was used for dipole, quadrupole and sextupole measurements. A second

bench was built to measure four magnets installed on the same girder. The assembly of the linear

stages has been revised to significantly reduce the position errors. On a third version, the wire

supports have been redesigned to obtain a better wire positioning and for compatibility with

Vibrating Wire Measurements.

The SWM bench can be used for magnet fiducialization, field strength measurements and higher

order multipole measurements. Linear field measurements, circular measurements and multipole

compensated measurements are available. The typical repeatability of the main measurements is

given in Table 1. The values given in the table are indicative: it depends on the magnet under test,

measurement method, duration of the measurement, etc.

The bench is composed of two towers (Figure 1) and a control and measurement unit.

Table 1. Typical repeatability obtained with the ESRF SWM bench. Alignment repeatability have been obtained with a 20 T/m, 50 cm long, 33 mm bore radius quadrupole.

Typ. repeatability

Magnetic center position 2 µm Pitch and yaw angles 0.1 mrad Roll angle 0.1 mrad Integrated field 0.2 G m

2.2 Linear stages and towers The horizontal and vertical linear stages are assembled in cross to improve the position accuracy

(Figure 1). This implies installing a vertical stage strong enough to support the horizontal stage. The

stage specifications are given in the table below. The stages are mounted on a standard Newport

EQ180 bracket.

A wire support is fastened on the tower. This support is used for wire positioning, wire tension

tuning and for connecting the wire to the measurement unit. The tuning of the wire tension is

manual. A reference cone is machined on the top of the wire support for fiducialization purposes.

Page 5: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

5

Table 2. Linear stage specifications.

Model Range Repeatability

Vertical Newport IMS100V 100 mm 0.5 µm Horizontal Newport ILS100CC 100 mm 1 µm

Figure 1. CAD view of one of the bench towers. The tower is an assembly of two linear stages, a wire support and a few mechanical parts.

2.3 Control and measurement unit The main components of the control and measurement unit are a high performance Newport XPS

motion controller and a Keithley 2182 nanovoltmeter. Also included is an industrial PC working with

the Windows 7 operating system, and an auxiliary data acquisition board used for wire tension

tuning and temperature measurements.

3 Handling Take care when handling the XZ groups of stages. These stages have been calibrated with a

micrometric accuracy. Use the stage stands (Newport EQ180 bracket) for handling, do not use the

horizontal stage for this purpose.

4 Wiring diagrams The wiring of the main elements of the bench is described in Figure 2. Figure 3 describes the wiring

of the linear stages. The trigger link installed between the Newport XPS motion controller and the

Keithley 2182 voltmeter is described in Figure 4.

The connections between the patch panel, the Keithley 2182 voltmeter, the NI-DAQ connector block

and the stretched wire are described in Figure 2.

Better noise performances are obtained if a twisted pair is used for connecting the stretched wire to

the Keithley voltmeter.

The return loop should be as small as possible to minimize the noise induced by ambient varying

fields.

Page 6: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

6

Figure 2. Control and measurement rack wiring diagram.

Figure 3. Linear stages wiring diagram.

Page 7: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

7

Figure 4. Trigger link wiring diagram.

Figure 5. Small signal wiring diagram.

5 Using the bench

5.1 Introduction The bench is interfaced with the Igor Pro software. The bench routines can be accessed through

three Igor Pro menus:

− SWLab Measurement, for measurement sequences;

− SWLab Processing, for magnetic measurement data processing;

− SWLab Motion, for wire motions.

Most of the measurement routines are written in C++. The analysis routines and the user interface

are written in Igor language.

Page 8: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

8

5.2 Initialization Power on the industrial PC, the voltmeter and the motion controller.

Launch Igor.

5.2.1 Open and close a measurement

Initialize the bench with SWLab Measurement > Initialization > Open. The Open command initialize

the measurement bench, the voltmeter and the motion controller. The stages move to their

references after each reboot of the motion controller.

Igor Pro opens a dialog. The requested parameters will be associated to the measurements. The N-

poles parameter is mandatory and should take one of the following values: “2-poles”, “4-poles”, “6-

poles” or “8-poles”.

The measurement data will be saved in the Measurement Directory specified during the

initialization.

In the case an error message is displayed, please check if the voltmeter and the controller are

powered on.

The following Igor data folders are created:

− K2182 is used to drive the voltmeter

− XPS2d is used to drive the XPS motion controller

− Multipole is used to store the measurement parameters and the measurement results

Use the SWLab Measurement > Initialization > Close command to close the measurement. It is

important to close the connection before closing Igor or opening another Igor experiment. If this has

not been done and if error messages are displayed, try to set the variables K2182:path and

XPS2d:path to 1.

5.2.2 Modifying the measurement metadata

The measurement metadata can be modified on an opened measurement, with the command

SWLab Measurement > Metadata. This allows to modify e.g. the serial number without closing and

reopening the measurement.

5.2.3 Load and save measurement parameters

Use the SWLab Measurement > Measurement Parameters > Load for loading predefined

measurement parameters. These parameters may include: the nominal centre and axis of the bench,

the measurement radius, the velocity, the number of points, etc.

A measurement parameter file can be created with the SWLab Measurement > Measurement

Parameters > Save command. This command will save the parameters stored in the root:Multipole

Igor data folder. Undefined parameters are set to their default values.

By default, the measurement parameters are stored in the C:\ConfigurationFolder\MeasParameters

directory.

Page 9: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

9

5.3 Moving the stages

5.3.1 Stage control using the Igor interface

The SWLab Motion Igor menu can be used to perform basic motions.

5.3.1.1 Homing

Select SWLab Motion > Reference to home the stages. Note that the home position of the vertical

stage is offset by 9 mm.

5.3.1.2 Moving the stages

Select SWLab Motion > Velocity > Set Velocity to modify the velocity of the stages (unit: mm/s). The

maximum velocity is 20 mm/s.

Select SWLab Motion > Acceleration > Set Acceleration to modify the acceleration of the stages (unit:

mm/s2). The maximum acceleration is 80 mm/s2.

Select SWLab Motion > Pitch and Yaw > Set Pitch and Yaw to modify the offset between the stages

(unit: mm). Enter NaN if you do not want to change one of the offsets.

The velocity, the acceleration and the offsets entered with the above commands are taken into

account for manual motion only (i.e. not for magnetic measurements). To modify these values

during magnetic measurements, please refer to the Magnetic Measurements section.

Select SWLab Motion > Position > Set Absolute Position to run an absolute motion. Enter the final

position in the stage reference system. Enter NaN if you do not want to move one of the axis.

Select SWLab Motion > Position > Set Relative Position to run a relative motion. Enter the relative

position with respect to the current point. Enter NaN if you do not want to move one of the axis.

5.3.1.3 Stop the motion and emergency stop

Select SWLab Motion > Abort or SWLab Measurement > Abort to stop a motion in progress.

Any motion will be stopped if the emergency button is pressed. The stages must be send to their

references after an emergency stop. Select SWLab Motion > Reference.

5.3.2 XPS motion controller access from the navigator

The XPS motion controller can also be driven from Firefox or Internet Explorer. Enter the address

http://192.168.0.254/ in the navigator, then login as Administrator (password Administrator).

Select Front Panel, Move to move the stages independently. It is necessary to initialize and to home

the stages after any rebooting of the controller.

If necessary, please refer to the motion controller configuration manual.

5.4 Stretching the wire Place a magnet close to the wire (the field of a multipole magnet should be sufficient if the wire is

not located at the centre of the magnet).

Run the WireTension.exe application (Figure 6).

Page 10: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

10

Flick the wire and read the frequency with the application. The frequency should be a multiple of

50 Hz.

It is recommended to use 0.1 mm diameter titanium/aluminium/vanadium (Ti 90/Al 6/ V 4) wire.

Copper-beryllium can be used also (the sag is larger with CuBe wire).

The sag is approximately 232s g f , where 9.81g m/s2 and f is the fundamental frequency of

the wire. The wire tension is 2 24 lT m L f where ml is the wire mass by unit length1 and L is its length.

Figure 6. Interface of the WireTension application.

5.5 Magnetic measurements

5.5.1 Abort a measurement

Select SWLab Measurement > Abort to abort a measurement in progress.

5.5.2 Alignment

The current values of the magnetic centre and axis are stored in the Igor waves

root:Multipole:MagCentre and root:Multipole:MagAxis. The values stored in these waves are used as

default values for the magnetic measurements.

The last measured values (to be validated by the operator) of the magnetic centre and axis are

stored in the Igor waves root:Multipole:MagCentreLastMeas and root:Multipole:MagAxisLastMeas.

1 ml = 35 mg/m for Ti90/Al6/V4 and ml = 65 mg/m for Cu98/Be2, for d = 0.1 mm.

Page 11: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

11

Use the SWLab Measurement > Set Centre and Axis to Last Measured Values for setting the current

values to these values.

The default values, corresponding the nominal values of the measurement bench, are stored in the

waves root:Multipole:BenchCentre and root:Multipole:BenchAxis. The current values can be set to

the default values with the command SWLab Measurement > Reset Centre and Axis.

5.5.2.1 Quadrupole centre and axis from linear measurements

Select SWLab Measurement > Alignment > 4-poles > Centre to determine the magnetic centre. The

wire is moved linearly and the centre is defined as the point with zero integrated field. In the Igor

dialog, check the value of the centre and axis, the measurement range, the number of points and the

number of averages.

Select SWLab Measurement > Alignment > 4-poles > Axis to determine the magnetic axis (i.e. the

pitch and yaw angles) of a quadrupole magnet.

The result is printed in the Igor history and is stored in the root:Multipole:MagCentreLastMeas and

the root:Multipole:MagAxisLastMeas Igor waves.

The measurement of the centre and axis can be done iteratively with the command SWLab

Measurement > Alignment > 4-poles > Centre and Axis – Iterative. The centre and axis values at each

iteration are stored in the root:Multipole:IterativeAlignment Igor data folder.

Use the command SWLab Measurement > Set Centre and Axis to Last Measured Values to set the

root:Multipole:MagCentre and root:Multipole:MagAxis to the last values measured. It will make the

measured values available for initializing the next measurements.

The wire can be moved to the magnet center with the commands SWLab Motion > Move to Centre >

No Sag (assumes a zero sag) and SWLab Motion > Move to Centre > Correct Sag (computes the sag

and correct the position)

5.5.2.2 Sextupole centre and axis from linear measurements

Use the SWLab Measurement > Alignment > 6-poles menu for measuring the centre and axis of a

sextupole magnet. (To be developed.)

The routines used for sextupole alignment are similar to the quadrupole routines. Please see the

section 5.5.2.1 for details.

5.5.2.3 Multipole centre from harmonic analysis

The magnetic centre of any multipole magnet can be obtained from the harmonic analysis. If a

circular measurement has been done and analysed, select SWLab Processing > Magnetic Centre. The

magnetic centre is computed from the data located in the current data folder. If the current data

folder is the root:Multipole folder, the root:Multipole:MagCentre wave is updated and will be used

as default value for the next measurements. The magnetic centre is computed with all harmonics

with a numerical method.

The magnetic centre is defined as the point with zero gradient for the 2(2n+1) pole magnets

(dipoles, sextupoles, etc.) and the point with zero field for the 2(2n) pole magnets (quadrupoles,

octupoles, etc.).

Page 12: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

12

5.5.2.4 Multipole axis from harmonic analysis

Function to be developed.

5.5.3 Circular measurements

5.5.3.1 Measurement radius

Circular measurements can be performed at one or several radii. These radii are stored in the

root:Multipole:Radius wave.

The Radius wave can be edited directly in the root:Multipole data folder, or with the SWLab

Measurement > Radius > Edit command.

The values in the Radius wave should be sorted in decreasing order2.

The maximum number of measurement radii is 1024. This can be used for stacking several

measurements. For example, for stacking 256 measurements at 10 mm radius, the Radius wave can

be created with the Igor command Make/O/N=256 root:Multipole:Radius = 10.

A radius wave can be created automatically with the command SWLab Measurement > Circular

Measurement > Radius > New Radius Wave. It create a given number of radius in a specified range.

The obtained values can be randomized to reduce the effect of systematic errors. In that case, the

first value of the wave is set to Maximum Radius in order to keep the normalization radius fixed.

5.5.3.2 Measurement

Select SWLab Measurement > Circular Measurement > Circular Measurement and check the

parameters in the dialog.

Please note that Points per turn x Number of turns should be less or equal to 1024. More data can be

stacked using the Radius wave, see the section 5.5.3.1 for details.

The sampling period should be set to a multiple of 20 ms in order to filter out the 50 Hz noise. The

maximum ratio of the integration time to the sampling period is 0.8 (Figure 7), leading to the

following condition:

0.8 2Velocity Integration Time Number of Points Radius

The measurement routine terminates with an error is this condition is not verified. This ratio is taken

into account during the data processing.

The drift of the voltmeter can be estimated and corrected if the measurement is performed on more

than one turn. The drift is modelled as a polynomial. Drift correction is disabled if Order of drift

correction is set to 0 or if Number of turns is set to 1.

2 This can be done with the Igor command Sort/R Radius, Radius

Page 13: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

13

Figure 7. Sampling period and integration time.

The measurement results are stored in the root:Multipole data folder:

− The FieldIntegral wave contains the measurements in [T mm]

− The XPosition and ZPosition waves contain the wire position in [mm]

− The TrajAngle wave contains the angle of the wire trajectory in [rad]

The measurement date and time are stored in the MeasStr wave and the measurement parameters

are stored in the MeasParameters wave.

The analysis routine is automatically launched at the end of the measurement. This routine will

ceate the root:Multipole:MultipoleData folder and copy the measurement results in it, and compute

the multipole components.

The root:Multipole:MultipoleData folder can be drag and drop to any convenient location. If not, it

will be overwritten by the next measurement.

The maximum input voltage can be checked with the command SWLab Processing > Tools >

Maximum Input Voltage. This tool may be useful to determine the voltmeter range.

5.5.3.3 Multipole analysis

The analysis routine is launched automatically after a circular measurement [1].

The analysis routines stores the multipoles in the an, anNorm, bn and bnNorm waves. The analysis

parameters are stored in the AnalysisParameters wave.

The analysis parameters can be modified with the command SWLab Processing > Multipole Analysis

> Multipole Analysis. The analysis will be performed after the validation of the parameters in the

dialogs. This command can be applied to any folder containing the FieldIntegral, XPosition, ZPosition

and TrajAngle waves.

5.5.3.4 Reference radius

The reference radius can be changed with the command SWLab Processing > Change Reference

Radius. The new multipole coefficients are stored in the waves an_<New Radius>mm, bn_<New

Radius>mm, anNorm_<New Radius>mm and bnNorm_<New Radius>mm. This command acts on the

current directory.

5.5.3.5 Gradient, strength and roll angle

The menus SWLab Processing > 4-poles and SWLab Processing > 6-poles can be used for computing

the strength and the roll angle of magnet. The results are stored in the IntegratedGradient wave

Page 14: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

14

(quadrupole) or in the IntegratedStrength wave (sextupole). The roll angle is stored in the RollAngle

wave. All results are printed in the Igor history. The strength of a sextupole is defined as half the

second derivative of the field.

5.5.3.6 Dipole and dipole-quadrupole measurements

The field and gradient integrals along a curved trajectory can be computed with the command

SWLab Processing > Curved magnets > Field and Gradient Integrals. A dialog asks a few parameters;

the defauts values corresponds to the DQ magnets of the EBS.

The parabolic trajectory is described by the Magnetic Length and the Deflection Angle. The

corresponding curvature radius is computed and printed in the Igor history.

The Nominal Field Integral (Curved) parameter corresponds to the field integrated along a parabola.

This value is needed to compute the magnetic centre. The Nominal Gradient Integral (Curved) is

used to check the gradient specification.

All these parameters are stored in the DQParameters wave.

The straight multipoles an and bn are converted to “curved” multipoles named anCurved and

bnCurved. Please note that only the two first components of anCurved and bnCurved are accurate.

The other ones are for information only.

5.5.4 Compensated measurement

Compensated measurements can be performed with the command SWLab Measurement > Other

Measurement > Compensated Measurement [1].

The measurement parameters are almost the same as the circular measurement parameters. The

Average parameter sets the number of averages per measurement points and the Integration length

parameter sets the length of the measurement.

The Radius wave should contain at least two measurement points, e.g. 𝑅0 and 𝑅0 2⁄ .

The measurement results are stored in the root:Multipole folder with the names given in

section 5.5.3.2. The analysis routine is launched automatically at the end of the measurement.

The analysis routine compute the multipoles and store it in the an and the bn waves. The normalized

coefficients are not computed because the main multipole component is not measured.

All the results are stored in the root:Multipole:MultipoleData folder. This folder can be drag and

drop in any convenient location.

5.5.5 Linear measurements

Field integral measurements can be measured along a straight line with the command SW

Measurement > Other Measurement > Linear Measurement. As this measurement sequence is not

used in standard measurements, all parameters must be set manually. Try for instance the following

set of parameters:

XBegin = -20; ZBegin = 0; XEnd = 20; ZEnd = 0; (values in [mm])

NumberOfPoints = 21 (i.e. 2 mm steps, corresponding to one turn of the encoders)

Integration time = 0.04 (value in [s])

Page 15: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

15

Acceleration = 80 (value in [mm/s2])

NumerOfAverages = 2

The measurement results are stored in the root:Multipole folder, with the usual names.

5.5.6 Repeatability analysis

The repeatability of the bench can be checked as follows.

Stack several time the same radius (or the same sequence of radii) in the Radius wave. Set the

measurement parameters and run the measurement.

At the end of the measurement, launch the command SWLab Processing > Repeatability and check

the parameters prompted in the dialog. In the Repeatability Analysis Parameters dialog, set the

number of measurements you want to average, and select the order of the multipole you want to

study (by default, this parameter is set to the main multipole).

The results are stored in the RepeatabilityAnalysis folder. The evolution of the measured multipoles

are stored in the RepeatAn and RepeatBn waves.

5.5.7 Exporting data

Select the SWLab Processing> Export Data for saving the measurement results in a tab delimited text

file. It saves the data present in the current data folder, or in the root:Multipole:MultipoleData if the

current data folder is root:Multipole.

The ExportParameters wave can be used for specifying export parameters.

The file name is generated automatically. If a file with the same name already exists, the new data

are appended at the end of the previous file.

5.6 Command lines All of the Igor Pro commands can be typed directly in the command window, without using the

SWLab menus.

The main command lines are listed in the table below. The function parameter may differ from the

table below, please check the function templates in the Igor procedure files.

Table 3. Main command lines

MultipoleAbort() MultipoleOpen() MultipoleClose() MultipoleLoadParam() MultipoleSaveParam() MultipoleFindCentre() MultipoleFindAxis() MultipoleFindCentreAxis() MultipoleSetCentreAxis() CI(d, b) MultipoleNewRadius() CCI()

Abort a measurement and stop the motion of the stages Initialize the bench and open a measurement Close a measurement Load measurement parameters from a file Save measurement parameters to a file Find the centre of a quadrupole magnet Find the axis of a quadrupole magnet Iterative measurement of the centre and axis of a quadrupole Set the centre and axis to the last measured values Circular field integral measurement Create a new radius wave Compensated circular field integral measurement

Page 16: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

16

MultipoleIsMeasuring() MultipoleGetLastErr()

Check if a measurement is in progress Get the last error message

MPMultipoleAnalysisDialog(d) MPMultipoleCompAnalysisDialog(d) MPChangeRadius(r) MPMultiFindCentre(s) MPQuadGradientRoll() MPQuadGradient(p) MPQuadRoll(p) MPSextuStrengthRoll() MPSextuStrength(p) MPSextuRoll(p) MPRepeatability() MPExportData() MPField(p) MPGrad(p) MPDQAnalysisDialog(d)

Run the analysis routine, with (d=1) or without (d=0) dialog Run the analysis routine for compensated measurements Compute the multipoles a radius r Find the magnetic centre from the multipoles and (if s=1) set the MagCentre wave to the last measured values Compute the gradient and roll of a quadrupole Compute the gradient of a quadrupole Compute the roll of a quadrupole Compute the strength and roll of a sextupole Compute the strength of a sextupole Compute the roll of a sextupole Run the repeatability analysis routine Export the data to a delimited text file Field computations from multipoles Gradient computations from multipoles Field, gradient and roll for dipole-quad magnets

SWMoveToCentre(s) Move the wire to the magnetic centre, with (s=1) or without (s=0) correcting the sag

Axis2DRef(path) P_MoveAbs(path, “w”, x, z) P_MoveRel(path, “w”, dx, dz) P_ReadPos(path)

Move the stages to their references Absolute stage motion Relative stage motion Read stage position

5.7 Wave description Table 4. an

Index Description Unit

k kth skew multipole T mm

Table 5. anNorm

Index Description Unit

k Normalized kth skew multipole (normalized at Radius[0]) 10−4

Table 6. an_<radius>mm

Index Description Unit

k kth skew multipole (normalized at radius) T mm

Table 7. anNorm_<radius>mm

Index Description Unit

k Normalized kth skew multipole (normalized at radius) 10−4

Table 8. AnalysisParameters

Index Description Unit

Page 17: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

17

0 Reference radius mm 1 Magnet type (1: dipole, 2: quadrupole, etc.) 2 Number of multipole coefficients 3 X and Z axis perpendicularity error rad 4 Pitch correction (1: on, 2: off) 5 Vertical offset for pitch correction 6 Bench roll angle rad

Table 9. AnalysisParametersStr

Index Description

0 Name of the field integral wave 1 Name of the trajectory angle wave 2 Name of the horizontal position wave 3 Name of the vertical position wave 4 Path to the pitch correction wave

Table 10. BenchAxis

Index Description Unit

0 Default horizontal offset between the wire extremities (yaw = this value / length)

mm

1 Default vertical offset between the wire extremities (pitch = this value / length)

mm

Table 11. BenchCentre

Index Description Unit

0 Default horizontal position of the magnet centre mm 1 Default vertical position of the magnet centre mm

Table 12. bn

Index Description Unit

k kth normal multipole T mm

Table 13. bnNorm

Index Description Unit

k Normalized kth normal multipole (normalized at Radius[0]) 10−4

Table 14. bn_<radius>mm

Index Description Unit

k kth normal multipole (normalized at radius) T mm

Table 15. bnNorm_<radius>mm

Index Description Unit

Page 18: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

18

k Normalized kth normal multipole (normalized at radius) 10−4

Table 16. CentreMeasParameters

Index Description Unit

0 Horizontal position of the centre before measurement mm 1 Vertical position of the centre before measurement mm 2 Horizontal offset before measurement (yaw angle = h. offset / wire length) mm 3 Vertical offset before measurement (pitch angle = v. offset / wire length) mm 4 Range (the centre and offsets are searched within +/- Range) mm 5 Number of points 6 Number of averages 7 Number of iterations

Table 17. CompAnalysisParameters

Index Description Unit

0 Reference radius mm 1 Magnet type (1: dipole, 2: quadrupole, etc.) 2 Number of multipole coefficients 3 X and Z axis perpendicularity error rad 4 Pitch correction (1: on, 2: off) 5 Vertical offset for pitch correction 6 Bench roll angle rad

Table 18. CompMeasParameters

Index Description Unit

0 Horizontal position of the centre mm 1 Vertical position of the centre mm 2 Number of points 3 Number of averages per point 4 Integration length mm 5 Velocity mm/s 6 Acceleration mm/s2

Table 19. Current

Index Description Unit

0 Current A

Page 19: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

19

Table 20. DQParameters

Index Description Unit

0 Field integral along a parabola T mm 1 Gradient integral along a parabola T 2 Magnetic length mm 3 Curvature radius mm 4 Deflection angle rad

Table 21. ExportParameters. The test results defined here depends on the magnets and must be configured by the user. See the TestResult wave.

Index Description Unit

0 Save the result of the magnetic centre test (if 1) 1 Save the result of the roll angle test (if 1) 2 Save the result of the higher order multipole test (if 1) 3 Save the dimensions of the shims (if 1) 4 Specified GFR radius to be saved in .dat files 5 Save the raw data (if 1) 6 Horizontal distance between shims mm

Table 22. FieldIntegral

Index Description Unit

k Measured field integral at point k T mm

Table 23. MagAxis

Index Description Unit

0 Current horizontal offset between the wire extremities (yaw = this value / length)

mm

1 Current vertical offset between the wire extremities (pitch = this value / length)

mm

Table 24. MagAxisLastMeas

Index Description Unit

0 Last measured horizontal offset between the wire extremities (yaw = this value / length)

mm

1 Last measured vertical offset between the wire extremities (pitch = this value / length)

mm

Page 20: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

20

Table 25. MagCentre

Index Description Unit

0 Current horizontal position of the magnet centre mm 1 Current vertical position of the magnet centre mm

Table 26. MagCentreLastMeas

Index Description Unit

0 Last measured horizontal position of the magnet centre mm 1 Last measured vertical position of the magnet centre mm

Table 27. MeasParameters

Index Description Unit

0 Horizontal position of the centre mm 1 Vertical position of the centre mm 2 Number of points 3 Number of turns 4 Integration time s 5 Velocity mm/s 6 Acceleration mm/s2

7 Polynomial order of the drift correction (no correction if 0) 8 First wire mode Hz

Table 28. MeasStr

Index Description

0 Name of the company (or name of the project) 1 Name of the operator 2 Date at the end of the measurement 3 Time at the end of the measurement 4 Serial number 5 Magnet type (“2-poles”, “4-poles”, etc.) 6 Path to the measurement directory

Table 29. Radius

Index Description Unit

k Radius k mm

Table 30. RandRadiusParam

Index Description Unit

0 Maximum radius mm 1 Large radius specification mm 2 Small radius specification mm 3 Standard deviation specification mm 4 Number of radii

Page 21: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

21

Table 31. TrajAngle

Index Description Unit

k Angle of the wire trajectory at point k rad

Table 32. TestResult All values set to 0 by default. The user may develop functions to set some values to 1 if the magnet is within specifications.

Index Description Unit

0 Magnetic centre within specifications 1 Roll angle within specifications 2 Higher order multipoles within specifications

Table 33. XPosition

Index Description Unit

k Horizontal position at point k (centre of the integration interval) mm

Table 34. ZPosition

Index Description Unit

k Vertical position at point k (centre of the integration interval) mm

5.8 Computing field and gradient The field and gradients can be computed from the multipoles with the MPField() and MPGrad()

commands, as shown in the example below.

// Initialize two waves

Make/c/n=100 bw, gw

// Set the x axis to +/- 10 mm

SetScale/I x, -10, 10, bw, gw

// Compute the field and gradient along the x axis

bw=MPField(cmplx(x, 0), bn, an, 10) // assuming the measurement radius is 10 mm

gw=MPGrad(cmplx(x, 0), bn, an, 10) // assuming the measurement radius is 10 mm

6 Calibration

6.1 Accuracy of linear stages The typical repeatability of the linear stages is 0.7 µm for the ILC100CC and 0.2 µm for the IMS100V

whereas the typical accuracy is 2.5 µm for the ILC100CC and 1.5 µm for the IMS100V. Systematic

errors can reach 5 µm in the worst case3.

As the stretched wire multipole measurements rely on accurate wire motions, it is important to

check the calibration of the linear stages after the installation of the bench. Correction tables can be

3 Please see the Newport IMS100V and ILC100C user’s manual (joined to the present manual)

Page 22: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

22

loaded to the motion controller if needed. Please see the Newport XPS motion controller user’s

manual, chapter Motion tutorial, Compensation, Positioner mapping.

The stage position measurements can be done with a laser interferometer or with a Coordinate

Measuring Machine (CMM).

6.2 Stage perpendicularity Perpendicularity errors between the horizontal and the vertical stages may lead to spurious skew

multipoles. Two types of methods can be used: one relying on a coordinate measuring machine

(CMM) and the other one relying on a laser interferometer. As the CMM calibration is

straightforward, it will not be detailed in this manual.

Figure 8 shows the stage group calibration set up. A compact laser interferometer, e.g. the Renishaw

RLE system, is convenient for this calibration. The detailed operation of interferometer

measurements, including beam alignment, is not presented here. Please refer to your

interferometer user’s manual.

The procedure for angle calibration is as follow:

Measure the scales of the linear stages (interferometer head in position 1 and 2).

With the interferometer head in position 3, measure the distance while running a

synchronous motion of the horizontal and the vertical stages (i.e. a 45° motion).

The angle between the stages is given by 𝜃 = cos−1 (𝑑𝑋𝑌

2−𝑑𝑋2−𝑑𝑌

2

2𝑑𝑋𝑑𝑌), where 𝑑𝑋 and 𝑑𝑌 are

the distances measured on the horizontal and vertical stages, and 𝑑𝑋𝑌 is the distance

measured with the interferometer head at position 3.

Insert shims below the horizontal stage and check the angle with the same method.

Figure 8. Stage group calibration with a laser interferometer.

6.3 Procedure for stage calibration For time efficiency, it is recommended to use the following procedure for stage calibration:

Measure the displacement of the stages with the interferometer head in position 1, 2 and 3

Compute the angle and install a shim if necessary

Measure again the distance with the interferometer in position 3, and modify the shim until

the angular tolerance is reached

Page 23: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

23

Measure the displacement along the horizontal and vertical axis and generate correction

tables

Please refer the XPS controller’s user manual for a complete description of the correction tables

(chapter Motion tutorial, Compensation, Positioner mapping). The correction tables are entered in

the files Mapping_ StageType_SerialNumber.txt. The file names, the number of points and the

maximum absolute value of the correction tables are entered in the file stages.ini. The system (i.e.

which stage is connected to which plug, etc.) is described in the file system.ini. Correction table

templates in Excel format are provided with the bench.

6.4 Stage roll angles The stage roll angle, with respect to the magnet girder, can be measured with a CMM (laser tracker,

Faro Arm, etc.) or deduced from two measurements of the same magnet rotated by 180 ° around

the vertical axis.

6.5 Position of the wire support The position of the two prismatic reference blades which support the wire can be measured directly

with a portable CMM (Faro Arm type) or with a ½ inch laser tracker reflector. No additional

calibration is needed.

A cone has been machined on the top of the supports and can be used optionally. The position of

the cone with respect to the reference blades can be measured with a CMM.

7 Installation of software updates Please check the SWLab ftp server for software updates:

http://ftp.esrf.fr/pub/InsertionDevices/SWLab/

The bench software includes different files:

− Multipole.xop, Axis2D.xop and KeithXop.xop are dynamic linked library

− SWLabMeas.ipf, SWLabProc.ipf and SWLabXPS.ipf are Igor procedure files

Any new version of the *.xop file must be paste in the C:\Program Files (x86)\WaveMetrics\Igor Pro

Folder\Igor Extensions\SW Igor Extensions. The SW Igor Extension file must contain an up-to-date

XPS_Q8_drivers.dll file.

Any new version of the *.ipf files must be paste in the C:\Program Files (x86)\WaveMetrics\Igor Pro

Folder\Igor Procedures\SW Igor Procedures.

The previous versions of the updated files must be deleted.

The present version works with Igor Pro 6.3x and has not been fully tested with Igor Pro 7.

8 Configuration files The bench resource files are located in the directory C:\ConfigurationFolder. It includes *.conf

configuration files for the bench, the voltmeter and the motion controller, a PitchW.ibw file which

Page 24: Stretched-Wire Measurement Bench User’s Manualftp.esrf.fr/pub/InsertionDevices/SWLab/Manual/SW... · 2017-03-06 · Stretched-Wire Measurement Bench User’s Manual Author G. Le

24

may be used for correcting the pitch of the stages (pitch correction is disabled by default and need

additional calibration which is not needed if the stages are assembled as shown in Figure 3).

The C:\ConfigurationFolder\MeasParameters directory contains specific measurement parameters.

These parameters can be created by the user using the SWLab Measurement > Measurement

Parameters > Save command.

9 Replacement of the XPS controller Please use the following procedure for replacing the XPS controller in case of failure.

Shutdown the XPS controller and unplug the stages, the trigger link installed on the GPIO1 and the

emergency stop button.

Install the new XPS and plug the stages on the same driver cards (the driver card names are written

on the stages). Plug the trigger link on the GPIO1 and the emergency stop button on the INHIBIT

port.

Turn on the XPS.

A backup of the configuration files is located in the following directory:

My Documents\Calibration\<Bench Name>\Config

Copy all the files of this directory in the Config file of the XPS controller, using the XPS’s ftp server

(connect to ftp://192.168.0.254 as an administrator (Login: Administrator, password: Administrator

or use the Computer\XPS shortcut).

Reboot the XPS controller: in the XPS web interface, select Stages, Modify, Reboot.

10 Source codeSWLab ftp server The SWLab software is under a GNU license. The source code is available on the ESRF ftp server:

http://ftp.esrf.fr/pub/InsertionDevices/SWLab/

11 References [1] G. Le Bec, J. Chavanne, and C. Penel, "Stretched wire measurement of multipole accelerator

magnets," Physical Review Special Topics - Accelerators and Beams, vol. 15, p. 022401, 2012.