Motion Control Developments at Diamond Light Source Matthew

  • Slides: 12
Download presentation
Motion Control Developments at Diamond Light Source Matthew Pearson DLS Controls Group 17 th

Motion Control Developments at Diamond Light Source Matthew Pearson DLS Controls Group 17 th Oct 08 Matthew Pearson - Motion Control at DLS 1

People involved in motion control / software at DLS: EPICS / Control Software •

People involved in motion control / software at DLS: EPICS / Control Software • Tom Cobb • Peter Denison (now left DLS) • Andy Foster (Contract) • Ian Gillingham • Pete Leicester • Matthew Pearson • Ulrik Pederson • Nick Rees (Boss) • Austen Rose (Insertion devices) Motion Hardware / Tuning • Trevor Bates (Contract) • Paul Dunne (Contract) • Lee Hudson • Iain Johnson • Brian Nutter (Boss) Agenda: • What DLS is doing in motion control • New ethernet controller from Delta Tau • Work on EPICS drivers and motor record • Recent work with coordinated motion • Future plans 17 th Oct 08 Matthew Pearson - Motion Control at DLS 2

What motion control is DLS doing? Motion Controllers (beamlines) Newport XPS Delta. Tau Turbo

What motion control is DLS doing? Motion Controllers (beamlines) Newport XPS Delta. Tau Turbo PMAC 2 VME Applications: Diffractometers, DCMs, mirror systems, slits, diagnostics hexapods, optical tables, …… Also, nanomotors, various piezo controllers (PI, Queensgate), new Aerotech Ensemble controller (for specific ‘position compare’ app) 17 th Oct 08 Matthew Pearson - Motion Control at DLS 3

PMAC 2 VME Optical link 17 th Oct 08 UMAC Crate (I/O, encoder, limits)

PMAC 2 VME Optical link 17 th Oct 08 UMAC Crate (I/O, encoder, limits) (Amplifier Crate Extra) Matthew Pearson - Motion Control at DLS 4

New 8 -axis integrated ethernet Delta. Tau controller (Geobrick LV) • Fewer cables •

New 8 -axis integrated ethernet Delta. Tau controller (Geobrick LV) • Fewer cables • Ethernet + USB + Serial • Lower cost than PMAC+UMAC+Amplifiers • Easy to replace • Andy Foster / Pete Leicester / Matthew Pearson / Brian Nutter have worked on adapting EPICS PMAC driver + testing new controller. • Is now DLS ‘standard’ controller • First batch arrived and is being built into 32 -axis motion rack. 17 th Oct 08 Matthew Pearson - Motion Control at DLS 5

Recent EPICS motor software work at DLS: Motor Record: • New HOMED bit in

Recent EPICS motor software work at DLS: Motor Record: • New HOMED bit in status word (for controllers that support it) (see tech-talk discussion in Aug 08) PMAC and XPS driver are ASYN based (see EPICS meeting June 2006) Asyn device support layer (in motor support module): • Eases development of new drivers (see backup slide) • Clean interface to motor record • Enables multiple records to use same ASYN port • Enables the use of ASYN interpose layer PMAC driver (tpmac support module): • Adapted for new ethernet controller. Also have a new ASYN interpose layer to handle PMAC ethernet headers. • Correct setting of ATHM and HOMED bit. • Set fatal following error. • Made polling rates more flexible • Implemented deferred moves 17 th Oct 08 Matthew Pearson - Motion Control at DLS 6

Recent EPICS motor software work at DLS (cont…): XPS driver: Added functionality (set position,

Recent EPICS motor software work at DLS (cont…): XPS driver: Added functionality (set position, for autosave). Set fatal following error bit. Set HOMED & ATHM. Implemented deferred moves. Deferred moves (Coordinated motion) caput {device}: defer 1 (turn on deferred moves) caput {device}: motor 1 10. 0 caput {device}: motor 2 12. 0 caput {device}: motor 3 13. 0 caput {device}: defer 0 (turn off deferred moves and execute any pending moves) Can take advantage of controller synchronised moves, or provides synchronisation at EPICS driver level. 17 th Oct 08 Matthew Pearson - Motion Control at DLS 7

Deferred moves (Cont…) The {device}: defer is a binary output, like: file bo. template

Deferred moves (Cont…) The {device}: defer is a binary output, like: file bo. template { pattern {P, R, DTYP, OUT, ZNAM, ONAM, SCAN } {device: , defer, asyn. UInt 32 Digital, "@asyn. Mask(PMAC 1, 1, 1)DEFER", "OFF", "ON", Passive } } Asyn port When moves are executed in driver: For PMAC: #1 J=100 #2 J=200 #3 J=150 etc. (standard axes) X(100)Y(200) etc. (for coordinate systems) For XPS: Group. Move. Absolute(int sock. ID, char *group. Name, int Nb. Axes, double position[]) 17 th Oct 08 Matthew Pearson - Motion Control at DLS 8

Motion programs / Coordinate systems on PMAC Can define on PMAC new coordinate systems

Motion programs / Coordinate systems on PMAC Can define on PMAC new coordinate systems that look (almost) the same as a standard motor. We use a customised PMAC driver to operate/readback the coordinate systems. Example: Table with 3 jacks Advantages: • Synchronised motion Y 1 Y 2 Y 3 #1 J=100 • Pushes complexity down into controller Disadvantages: • Requires EPICS PMAC driver changes • Hard to maintain 17 th Oct 08 Pitch Angle - X Height - Y X(0. 5)Y(100) Have to do this in a motion program run on PMAC Matthew Pearson - Motion Control at DLS 9

Future work • New Delta. Tau PMAC controller: • Deploy on new beamlines •

Future work • New Delta. Tau PMAC controller: • Deploy on new beamlines • Easier to free issue to equipment suppliers • Increase use of PMAC controller coordinate systems. • Improve error reporting For example, make use of EPICS alarm handler to notify us about limit violations, fatal following errors, communication errors, etc. • Started ASYN based OMS VME 58/MAXv driver (Nick/Austen). 17 th Oct 08 Matthew Pearson - Motion Control at DLS 10

Backup Slides 17 th Oct 08 Matthew Pearson - Motion Control at DLS 11

Backup Slides 17 th Oct 08 Matthew Pearson - Motion Control at DLS 11

Layers dev. Asyn. Float 64 dev. Motor. Asyn XPS = Asyn Port dev. Motor.

Layers dev. Asyn. Float 64 dev. Motor. Asyn XPS = Asyn Port dev. Motor. Asyn XPS drv. Motor. Asyn PMAC Motor. API drv. Motor. XPS drv. Motor. PMAC drv. Asyn. IPPort drv. Asyn. Serial. Port Ethernet RS 232 XPS Controller Peter Denison – EPICS 2006 PMAC Controller