Creating an EPICS Based Test Stand Development System
Creating an EPICS Based Test Stand Development System for the BPM Digitizer Farah Memon San Jose State University SULI, Science Undergraduate Laboratory Internship August 12, 2010
Linac Coherent Light Source (LCLS) � � � Provides movies of molecular activities. X-ray pulses are short in wavelength. Photon energy ranges from 540 e. V to 9. 0 ke. V. Highest x-ray pulse energy is 3 m. J. Advances in medicine, chemistry, and materials science.
BPM Digitizer � � � Beam Position Monitor (BPM) Digitizer is used to obtain the location of the electron bunches in the LCLS. 4 different input channels capture signals from four different sides of the beam. The signals are converted at a low intermediate frequency (IF). – Radio Frequency (RF). The RF signals are digitized using analog to digital converters (ADC). The Digitizer has four 16 K by 18 bit buffers; one for each channel. The ADC acquires data at each rising each of the clock where the external clock rate is 119 MHz and internal clock rate is 125 MHz.
BPM Digitizer � The process of acquiring RF signals and keeping them as digitized samples in the buffer.
Monitoring the Digitizer Controlled using an IOC (Input/Output Controller) and an OPI (Operator Interfaces) � � The IOC is the VME 64 x Crate with the Motorola Microprocessor. Consists of EPICS Core and Application Database. LAN � � The OPI is a Dell Linux Machine (Service Tag: GGQXPDI). Allows the user to view process variables on ioc. Console or EDM (EPICS GUI).
Monitoring the Digitizer Example of a record: record(waveform, "$(digi): WAV") { field(DESC, "Raw VMEDIGI Data") field(DTYP, "VMEDigi-Waveform") field(INP, "#C$(card)S 0@") field(FTVL, "SHORT") field(EGU, "Counts") field(HOPR, "32768") field(LOPR, "-32767") } � Each field of a record is called a Process Variable (PV).
Project Guidelines � � Matlab is currently used to test the digitizer with Matlab Guide being the GUI. Similar as well as advanced functionalities need to be transferred over to EPICS to develop an improved test stand development system. All the previous functionalities need to be provided. Added functionality of logging of data also needs to be incorporated.
The GUI for Matlab Scripts The Matlab Guide providing the existing functionalities.
Setting up Equipment � � � Hardware Equipments: Power-One Hybricon VME 64 x crate with VME 64100 Microcontroller in Slot 1 and the BPM Digitizer in Slot 4. Cisco Systems Catalyst 3750 Series Switch Digi Port Server TS 16 serial port HP Signal Generator (Model 8648 C Stanford Research Systems Digital Delay Generator (Model DG 645). Power-One Hybricon VME 64 x crate, Cisco Systems Catalyst 3750 Series Switch, and digi Port Server TS 16 serial port below.
Equipment � � Driver Code: R 5 -3 -0 of BPM Application Code was used. Simulation functions of the driver code were neglected. Stanford Research Systems Digital Delay Generator (Model DG 645) above. HP Signal Generator (Model 8648 C) below.
Functionalities by the driver code The following EDM Panel was provided with R 5 -3 -0 vme. Digi driver code
Implementation in EPICS Displaying four waveforms � � � gen. Sub Record employed for illustrating the four different waveform signals. The gen. Sub module was incorporated into the IOC. The record allows easy passage of PVs as inputs. The gen. Sub record was invoked periodically and called a subroutine, written in C language, to perform division of the combined waveform signal. In the subroutine, the gen. Sub record is passed as a pointer to a structure. The outputs of the function, the four distinct input signals, were displayed onto the EDM panel.
Implementation in EPICS The four input signals are clearly illustrated on the main EDM panel.
Implementation in EPICS Mathematical Calculations � � � wave. Proc 1 -0 module was incorporated with the existing source code. Four instances of wave. Anl records are added. Each waveform is passed as an input to the record. The mathematical and statistical data relevant to the waveform are contained in the PVs. All the PVs are exposed on the Wave Analysis Record panels. These panels are attached to the main EDM panel via a button.
Implementation in EPICS The Wave Analysis Record panel is linked to the main EDM panel.
Implementation in EPICS Fast Fourier Transform � � � Matlab lab. CA is utilized. Matlab Client intefaces with the IOC through Channel Access and has access to the PVs. Matlab is used to perform the fast Fourier transform (FFT) and compute the power spectrum of the four waveforms. The program also finds the carrier frequency. Matlab lab. CA commands obtain the waveform signals and change the contents of the four power spectrum signals. The four power density signals are displayed on a separate EDM panel and linked to the main panel via the button ‘FFT’.
Implementation in EPICS The FFT EDM Panel displaying the power density of he four waveform signals with respect to the frequency.
Implementation in EPICS Logging functionality � � Six different files created for logging: � Four files for the RF signals from four input channels. � One file for the combined waveform. � One generic log file for hardwarespecific information, i. e, serial, firmware, and hardware revision number. Files are created on demand – upon a click of a button For data corresponding to waveforms, a function in the wav. Anl record was written. For the generic log file, a subroutine was created.
Implementation in EPICS Logging functionality – waveform log files
Implementation in EPICS Logging functionality – generic log file
Future Work � � � Add buttons that bring up PDF files that assist the user in configuring the BPM digitizer. Ability to change between engineering units; currently the default units are ‘samples’. � For example: going from samples to volts. The test stand system can be used as a template to design test stand systems for other types of digitizers, including the PAD digitizer.
References [1] J. Frisch et al. Beam Position in LCLS [Online]. Available: http: //www. als. lbl. gov/biw 08/papersfinal/MOIOTIO 02. pdf [2] LCLS FAQ [Online]. Available: https: //slacportal. slac. stanford. edu/sites/lclscore_public/Lists/LCLS_FAQ/FAQ. aspx [3] R. Lill et al. Design and Performance of the LCLS Cavity BPM System[Online]. Available: http: //accelconf. web. cern. ch/accelconf/p 07/PAPERS/FRPMN 111. PDF [4] W. Ross, “SLAC BPM Digitizing Module 144 -045 -1 Programming Module” [5] (2008, March 10). EPICS I[Online]. Available: https: //confluence. slac. stanford. edu/download/attachments/67503315/LCLS-EPICSIntro. pdf? version=1&modification. Date=1257093082000 [6] B. Dalesio. (1999). Channel Access Concepts [Online]. Available: http: //www. slac. stanford. edu/comp/unix/package/epics/training/documents/02_CA_Concepts. pdf [7] A. Foster. (2003, March 12). The EPICS gen. Sub Record Reference Manual [Online]. Available: http: //www. slac. stanford. edu/grp/ssrl/spear/epics/site/gen. Sub. Manual. pdf [8] E. Norum. Wave. Proc [Online]. Available: http: //www. aps. anl. gov/epics/modules/soft/wave. Proc/index. html [9] E. A. Medvedko et al. LCLS Stripline BPM System Commissioning [Online]. Available: http: //trshare. triumf. ca/~pac 09 proc/Proceedings/papers/th 6 rep 036. pdf
- Slides: 22