LBTO PMC Subsystem February 13, 2007 Chris Biddick 1 cjb
Introduction The PMC controls the primary mirror position and figure (shape) Gets commands from the GUI and PSF Sends command to the ECS Essentially finished Reference Documents 481s041 PMC Reference Manual 481s s042 PMC User’s Manual 481s s043 Actuator Firmware Reference Manual 481s s044 Hard Point Firmware Reference Manual 481s s045 PMC Thermal System Description 481s045 2 cjb
Components Hardware Actuators Hard points Software Firmware Real time Subsystem GUI
Mirror cell nomenclature (1) ‘Actuator’ A one or two axis pneumatic device for applying force to the back of the mirror – 160 per cell ‘Hard point’ An almost magical mechanical/pneumatic device for determining the position of the mirror – 6 per cell Measures force and position Has a stepper motor to change length Is stiff until the force is too high, when it collapses or extends to avoid damaging the mirror ‘Breakaway’ What a hard point does when the force on it is too high 4 cjb
Mirror cell nomenclature (2) ‘Magic position’ Position where mirror travel is approximately centered Becomes the mirror coordinate system origin ‘Panic’ What happens when VxWorks determines that a seriously bad or unsafe condition exists The air pressure is allowed to bleed off so the mirror settles down on the static supports ‘Static supports’ Small wire “baskets” with an attachment bolt that hold the mirror in the cell when the actuators are not active – 426 per cell (one per puck) 5 cjb
Mirror cell nomenclature (3) ‘Load spreader’ One, two, or three puck frame that attaches an actuator to the mirror ‘Puck’ An attachment pad glued to the mirror or glass wedge ‘Glass wedge’ A glass piece glued to the mirror that provides the attachment point for hard points ‘Outer loop’ PI feedback loop calculated in software to minimize the hard point forces and moments – 6 per cell 6 cjb
Mirror cell nomenclature (4) ‘Raise’ The process of gradually applying actuator forces to the mirror to bring it off the static supports and to the magic position ‘Floating’ When the mirror is fully off the static supports ‘Lower’ The opposite of raising 7 cjb
Mirror cell nomenclature (5) ‘Chasing’ Moving the hard points while keeping their forces near zero and either Keeping the actuator forces constant (outer loops off) Allowing the actuator forces to change (outer loops on) ‘Outer count’ A pitiful kluge to reduce the effective feedback gain in the outer loops to help avoid mirror oscillations (no longer used) 8 cjb
Mirror cell nomenclature (6) ‘Elevation feed forward’ Using the mount elevation angle to improve the response of the outer loops as the telescope changes elevation ‘Ventilation’ The process of blowing air into the back of the mirror to control its temperature ‘Zernike coefficients’ Coefficients of polynomials describing optical distortions 9 cjb
Software (1) The PMC is composed of several programs running on different computers Real time software Actuator and hard point control firmware Written in C, compiled on Windows Runs on PIC 18F252 processor VxWorks – real time control of entire cell Written in C, compiled on Windows Runs on PowerPC 7410 VMEbus system 10 cjb
Software (2) Linux software Thermal data readout Written in C Runs on thermal computer (PC in lower left tree house) PMC subsystem Written in C++ Runs on TCS server PMC GUI Written in C++ (QT designer) Runs on TCS TO station 11 cjb
Firmware Provides serial port communication and status for actuators and hard points Provides local force feed back control on actuators 12 cjb
VxWorks (1) Communicates with the firmware over serial ports, has digital outputs for air pressure and hard point control, and analog inputs for air pressures and voltages Communicates with PMC using TCP sockets 13 cjb
VxWorks (2) Controls Individual actuator forces Individual hard point motors Air pressures Mirror position Forces and moments (outer loops) Mirror figure changes 14 cjb
VxWorks (3) Status Actuators Air pressure sensors Errors Forces and moments Hard points Position Outer loop data 15 cjb
VxWorks (4) Performs safety checks on forces and moments Provides various special commands through a telnet interface 16 cjb
Thermal computer Reads cell thermocouples and thermistors, converts to degrees C Takes about 50 seconds Runs one server process for each cell Returns last data read when asked Also runs ECS thermal readout 17 cjb
Subsystem (1) Nine threads for VxWorks Actuators – 21 commands, status at 5 Hz AirPressure – 4 commands, status at 4 Hz AsyncMessages – 0 commands, status at 4 Hz Hardpoint – 3 commands, status at 37 Hz Mirror – 20 commands, status at 3.33 Hz, sends elevation angle at 10 Hz Motor – 7 commands, status at 4 Hz PMC – 6 commands, status at 4 Hz PMCLogger – 0 commands, status at 4 Hz ServoLoop – 11 commands, status at 4 Hz 18 cjb
Subsystem (2) One thread for thermal computer 1 command, status at 0.1 Hz (only changes every 50 seconds), sends computed ventilation temperature set point to ECS at 0.1 Hz 19 cjb
PSF requests Move to position Stop move to position Load new figure forces Clear figure forces 20 cjb