150 likes | 326 Views
EPICS Developments at the Australian Synchrotron. DSP EPICS driver for the General Standards 16AIO analog card EPICS driver for the Galil range of motor controllers Author: Mark Clift Presented by Nicholas Hobbs. 1. Analog Acquisition.
E N D
EPICS Developments at the Australian Synchrotron DSP EPICS driver for the General Standards 16AIO analog card EPICS driver for the Galil range of motor controllers Author: Mark Clift Presented by Nicholas Hobbs
1. Analog Acquisition • Many Analog acquisition cards are used, the 16AIO from General Standards is the most commonly used on site • 16AIO card linearity and noise characteristics are average for a 16 bit card • 16AIO is faster than average (300K samples cumulative), allowing DSP methods to be applied within the EPICS driver • The 16AIO is a mezzanine board and is available in many form factors, we use PCI at the Australian Synchrotron
16AIO EPICS Driver • The 16AIO EPICS Driver was created using the IP330 driver as initial basis • It has an Asyn based structure and is compatible with the fast PID feedback software written by Mark Rivers • 16AIO hardware includes a 32Kb sample buffer which allows rapid data acquisition • At the driver layer, sample rates up to 30 KHz are used • The maximum EPICS update rate is 1.5 KHz • Achievable speed depends on computing hardware, operating system, and machine load.
16AIO Updates to registered clients (eg. EPICS) • The 16AIO driver functionality is based on regular updates to registered clients (eg. EPICS layer) via Interrupt I/O • Fundamental frequency of updates to clients is specified by the LcaioSetup comand • Update frequency of individual signals is specified by a combination of the fundamental update frequency and the LcaioAiSignalSetup command. The LcaioAiSignalSetup command simply divides the fundamental update frequency by an integer
16AIO DSP methods • Two very basic DSP methods are employed by the 16AIO driver, they are: • Sample Averaging • Effective number of bits (ENOB) • The ENOB and averaging algorithms do not operate when only one sample is available per client update period, multiple samples are required • The effective bit (ENOB) resolution of the resultant data is calculated from the following • Fos = 4w x fs • Fos = Sampling frequency used • fs = Original sampling frequency requirement • W = Extra bit(s) of resolution
Uses of 16AIO at the Australian Synchrotron • Fast feedback system on the Microspectroscopy beamline • General analog inputs at the Imaging beamline • Booster and Storage ring current measurement (see below, red line)
2. Galil EPICS driver for motor control • The Galil driver has a native EPICS driver/device layer, and does not use Asyn • Galil driver interfaces with the motor record and a collection of standard EPICS records • The standard records are used to provide control/monitor interfaces for features that the motor record does not support (e.g. gear ratio) • The Galil driver is compatible with all motor controllers in the Galil range • The Galil driver has an extensive list of parameters which can be difficult for first time users to comprehend
Galil EPICS driver The Galil driver has many unique features including: • Ability to accept and work with user-written Galil code • Ability to read two encoders at all times per motor. The encoder used in the motor record can be swapped at run time while the motor is stopped • A generic interface is provided so new functionality can be added to the driver, whilst providing a full EPICS interface • Allows master/slave relationships amongst motors • Has closed loop stepper control that is compatible with master/slave relationships
Galil EPICS driver Further features: • Stall detection of any active encoder that is related to a motor • EGU travelled after limit activation can be specified, useful for tricky switches, or fast moving heavy loads
MC – 8000 Based on the 2183 Galil motor controller Eight axis, integrated parker drive system Beamline and End station motors Front Internal Rear Galil controller models that we use
MC – 4000/2000 Based on the 2143/2123 Galil motor controller Four/two axis, external drive system Insertion devices, and heavy equipment (e.g. SAXS/WAXS table) IVU Control rack IVU Galil controller models that we use
Galil motor controllers, our impression Reliable, had no hardware failures Easy to use and quick to get going In comparison we have had many hardware failures in PC-104 Delta Tau controllers, particularly the communications board AS very satisfied with Galil support (e.g. They provided generic SSI encoder interface firmware)
Thank you for your attention Australian Synchrotronwww.synchrotron.vic.gov.au www.synchrotron.org.au
For more information and software: DSP EPICS drivers for 16AIO analog card EPICS drivers for Galil motor controllers Mark Clift mark.clift@synchrotron.org.au ftp.synchrotron.org.au/pub/EPICS09