30 th Tango Collaboration meeting SardanaIce PAP Based
30 th Tango Collaboration meeting Sardana/Ice. PAP Based Control System for elliptically polarized Undulator at Max IV vid. juvan@cosylab. com
2 Undulator q Undulator is an insertion device, consisting of a periodic structure of dipole magnets. The static magnetic field is alternating along the length of the undulator. Electrons traversing the periodic magnetic structure are forced to undergo oscillations and thus emmit light in the x-ray spectrum. The radiation is guided through the beamlines. 1. Magnets 2. Electron beam 3. Synchrotron radiation
3 Project q Client q Max. IV q Device q Elliptically polarized undulator (EPU) ¢ Length: 4 m q Task q Adaptation of the existing motion control system ¢ Redesign of the Galil box motion control system to Ice. PAP controller q Motion Control Design q Control System Software Implementation
4 Agenda q EPU Motion Control Design q Undulator Mechanics q Motion Control Hardware q Control System Architecture q EPU Control System Software q q Environment Control Software Design Machine Calibration Gap Correction Mechanism q Technical Issues
EPU MOTION CONTROL DESIGN
6 Undulator Mechanics
7 Undulator Mechanics
8 Undulator Mechanics q Phase q Closed loop on absolute encoder q Gap q Closed loop on rotary encoder q Software closed loop on absolute encoders !!!
9 Motion Control System Hardware q Ice. PAP Motion Controller q Stepper motor controller q Firmware: 3. 161 q Digitax ST 1401 B/1402 B Servo Drives q Unimotor FM Servo Motors q Linear Absolute Encoders (Renishaw RL 26 BAS 005 C 99 F)
10 Control System Architecture
EPU CONTROL SYSTEM SOFTWARE
12 Control Software Environment / Dependencies q Language q Python 2. 7 q Ice. PAP q py. Ice. PAP 0. 2 q Tango 8 q Sardana 1. 6. q Extended Sardana Icepap. Controller (Ice. PAPCtrl)
13 Control Software Elements q Individual motor movements q Compound movements (synchronization) q q Gap Offset Taper Phase q Secure, corrected, concurrent movements q Moving phase to 0, prior to changing phase mode q Moving taper to 0, prior to changing gap/offset, and resetting the taper afterwards q Moving gap, offset, taper simultaneously q Corrections prior and after movements q Gap Correction mechanism q Calibration q …
14 Control software design q Software aggregated in the Sardana layer. q Sardana elements split into two groups: “Gap group” and “Phase group”. ¢ ¢ ¢ Motors and pseudo motors Motor controllers and pseudo motor controllers Macros
15 Sardana Motors and Controllers Sardana motor controller Sardana motor Sardana motor
16 Sardana Motors and Controllers Sardana motor controller Sardana motor Sardana pseudo motor controller Sardana pseudo motor Sardana motor Sardana pseudo motor controller Sardana pseudo motor Attribute A B C D Gap Offset Taper Phase Mode
17 Sardana Macros q Move. GAP ¢ Gap in um q Move. Phase. A, B, C, D ¢ Phase value in um q Move. OFFSET ¢ Offset in um q Move. TAPER ¢ Taper in um q Move. GOT ¢ q Calibrate. Gap ¢ Meassured positions of main girders q Calibrate. Phase ¢ Assume zero position Gap, Offset, Taper in um q Correct. GAPMotors q Move. OFFSETSecure ¢ Offset in um q Move. GAPSecure ¢ Gap in um ¢ Optional tolerance
18 Machine Calibration q Phase Calibration q Position feedback: ¢ Position for each motor (encoder counts) q Required measurements: ¢ Actual physical positions for every sub-girder (micro meters) ¢ Zero position q Conversion (not required): ¢ Encoder count to um q Objective: ¢ Adjust motor position offsets ¢ They must reflect the actual positions q Use-case: ¢ Calibrated once
19 Machine Calibration q Gap Calibration q Position feedback: q Calibration use-case: Position for each motor (motor steps) ¢ Abs. linear encoder readouts (encoder counts) ¢ Floor x 2 ¢ Gap x 2 ¢ q Required measurements: ¢ Actual physical girder positions (micro meters) Floor x 2 ¢ Gap x 2 ¢ q Conversion: Motor steps per encoder count ¢ Encoder count to um ¢ q Objective: Adjust motor position offsets ¢ Adjust abs. linear encoder readout offsets ¢ q While shimming: ¢ Calibration on daily bases q In production: ¢ Calibrated once
20 Gap Correction Mechanism q Required Accurate positioning of main girders (1 um) ¢ Bending girders ¢ Backlash ¢ Gap between where a motor and the scale are mounted to the girder ¢ q While tolerance not satisfied ¢ Assumed positions of the girders ¢ According to the motor position readout ¢ Actual positions of the girders ¢ In respect to the absolute linear encoder readout ¢ Adjust motor position offsets ¢ Motor positions change accordingly ¢ ¢ Must reflect the actual state of the undulator Issue movements to the last setpoints
21 Gap Correction Mechanism
22 Gap Correction Mechanism q Convergence ¢ All gap motors corrected simultaneously ¢ One affects the other ¢ When calculating corrections, the difference between where motor and the scale are mounted is neglected ¢ Slightly slower convergence ¢ The difference is negligible ¢ Convergence satisfactory ¢ Linear convergence ¢ Up to 5 iterations for 1 um precision
THANK YOU! COSYLAB Vid Juvan Vid. juvan@cosylab. com
TECHNICAL ISSUES
25 Technical issues q Following error on phase motors ¢ Do motors follow the set trajectory?
26 Technical issues q Following error on phase motors ¢ Do motors follow the set trajectory? Velocity reference ¢ Backlash? Velocity feedback
27 Technical issues q Phase motors backlash ¢ Measured backlash q Gap motors backlash ¢ ¢ 100 um ¢ 120 um ¢ Problems ¢ Required 1 um precision ¢ Magnetic forces are strong enough to shift the girders ¢ Closed loop in MC on rotary encoder, not on absolute shift the sub-girders ¢ Measured backlash Solution ¢ Set the following error range to measured backlash ¢ Closed loop manages to accommodate for the error ¢ Solution ¢ No need to increase following error range ¢ Periodically issue the gap correction mechanism when settling the gap
THANK YOU! COSYLAB Vid Juvan Vid. juvan@cosylab. com
29 Motion Control Algorithms q Motion control algorithms for positioning linear axes q Gap axes: ¢ 2 linear axes moving the upper main girder ¢ 2 linear axes moving lower main girder q Phase axes: ¢ 4 linear axes moving the individual sub-girders q The movement of particular axes is to be synchronized q The synchronization is achieved at the motion controller level ¢ Ice. PAP – group movements
30 Motion Control – Phase Axes q Position Control q q q Position of linear axes is controlled via Ice. PAP motion controller. Ice. PAP receives the position demand from a Sardana motor controller Tango device server and the position feedback from the absolute linear encoder. Using these two inputs Ice. PAP ’s closed loop algorithm produces position reference which is passed to Digitax ST via SM-Universal Encoder Plus expansion module.
31 Motion Control – Phase Axes q Digitax q q The position reference is passed to Digitax ST internal Position controller Digitax uses the drive encoder ¢ ¢ q Speed feedback Position feedback Digitax produces the final speed reference which is used in the subsequent speed loop.
32 Motion Control – Phase Axes q Motion Control q The main position loop is closed within the Ice. PAP motion controller ¢ q (used by the control system for positioning and following error monitoring) The internal position loop, speed loop and current loop are closed within the Digitax ST drive.
33 Motion Control – Gap Axes q Position Control q q Due to the particular layout of the vertical linear encoders and Ice. PAP hardware limitations, the position loops for individual motors are closed using the on-motor rotary encoders. The rotary encoder information is buffered on the Digitax ST drive ¢ q Quadrature incremental signal. Linear absolute encoder readback is not used, formwarded to Sardana Ice. PAP controller (SW) ¢ The information from the linear encoders is used for establishing absolute reference for the incremental rotary inputs prior movement. Post movement the information is used to compensate possible errors due to bending of the girders. This is done in the software.
34 Motion Control q Phase Axes q Gap Axes
Motion Control q Limit switches, kill switches, tilt meters q Safety PLC interlock q NEnable, NReady, Alarm signals q Break control q Safe Torque Off q Correction coils q…
- Slides: 35