A Brief History of XAL at SNS - What went right / wrong J. Galambos XAL Workshop at the 2007 EPICS / ICALEPS meeting Knoxville TN.

Slides:



Advertisements
Similar presentations
Control and IT Systems status and strategy ALBA, Piotr Goryl on behalf of Michał Ostoja-Gajewski, Krzysztof Wawrzyniak, Łukasz Żytniak, Tadeusz.
Advertisements

Paul Chu FRIB Controls Group Leader (Acting) Service-Oriented Architecture for High-level Applications.
1 Generic logging layer for the distributed computing by Gene Van Buren Valeri Fine Jerome Lauret.
Web Applications Development Using Coldbox Platform Eddie Johnston.
XAL Recent Development
Model Server for Physics Applications Paul Chu SLAC National Accelerator Laboratory October 15, 2010.
EPICS Meeting 2005ORNL Rdb systems at SNS Jeff Patton and cast April 27-29, 2005 EPICS Meeting 2005.
Patrick Krejcik LCLS June 16-18, 2008 High Level Applications Facility Advisory Committee Meeting June 17, 2008 Applications Team.
CSE 219 COMPUTER SCIENCE III PROPERTIES OF HIGH QUALITY SOFTWARE.
Types and Techniques of Software Testing
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
Rapid Application Development Environment based on LabVIEW A. Raimondo (AB/CO) ATC/ABOC Days, January 2008.
Managed by UT-Battelle for the Department of Energy Open XAL Open Development of the XAL Accelerator Application Framework Christopher K. Allen Tom Pelaia.
8/21/2015J-PARC1 Data Management Machine / Application State Data.
The ESS vacuum team has overall responsibility for all technical vacuum systems used on the: Accelerator, Target and Neutron Scattering Instruments and.
JCE A Java-based Commissioning Environment tool Hiroyuki Sako, JAEA Hiroshi Ikeda, Visible Information Center Inc. SAD Workshop.
SNS Integrated Control System EPICS Collaboration Meeting SNS Machine Protection System SNS Timing System Coles Sibley xxxx/vlb.
High level & Low level language High level programming languages are more structured, are closer to spoken language and are more intuitive than low level.
Introduction to Programming Lecture 1 – Overview
LC Software Workshop, May 2009, CERN P. Mato /CERN.
Jozef Stefan Institute Igor Verstovsek Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,
Configuration Database MICE Collaboration Meeting 28, Sofia David Forrest University of Glasgow Antony Wilson Science and Technology Facilities Council.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Key Principles of Software Architecture and Design (III) adapted from Dave Penny’s.
ATF Control System and Interface to sub-systems Nobuhiro Terunuma, KEK 21/Nov/2007.
1 Planning for Reuse (based on some ideas currently being discussed in LHCb ) m Obstacles to reuse m Process for reuse m Project organisation for reuse.
A (very brief) intro to Eclipse Boyana Norris June 4, 2009.
IRMIS: a practical Ansatz for an Accelerator Operations DB? S. Herb,
Operational SNS Karen S. White Controls Group Leader 10/11/10.
An Overview of XAL XAL - A High-Level Control Application Framework Christopher K. Allen Los Alamos National Laboratory KEK - February 18, 2005.
Managed by UT-Battelle for the Department of Energy SNS Beam Commissioning Tools and Experience Andrei Shishlo on Behalf of SNS Team HB2008, Nashville,
12/3/2015J-PARC1 High Level Physics Applications XAL – An Accelerator Hierarchy Day 1: Accelerator View from the Physicist.
Paul Chu SLAC App. 10/14/ SLAC (LCLS) Application Plans P. Chu for SLAC High-Level Application Team.
A U.S. Department of Energy Office of Science Laboratory Operated by The University of Chicago Argonne National Laboratory Office of Science U.S. Department.
A Puzzle for You. Puzzle Someone is working for you for 7 days You have a gold bar, which is segmented into 7 pieces, but they are all CONNECTED You have.
Nachos Overview Lecturer: Hao-Hua Chu TA: Chun-Po Wang (Artoo) Date: 2008/09/18 Material Provided by Yuan-Hao Chang, Yung-Feng Lu.
 Programming - the process of creating computer programs.
1 BROOKHAVEN SCIENCE ASSOCIATES High Level Applications Infrastructure and Current Status Guobao Shen, Lingyun Yang* Controls Group & Accelerator Physics.
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC Michigan State.
2/20/2016J-PARC1 Virtual Accelerator An Accelerator Simulator.
Observing the Current System Benefits Can see how the system actually works in practice Can ask people to explain what they are doing – to gain a clear.
An Analysis of some Software Engineering Tools in the Market Neelesh Sahay CSC532 Dr. Box.
TRIUMF HLA Development High Level Applications Perform tasks of accelerator and beam control at control- room level, directly interfacing with operators.
Collaboration diagrams. Deployment diagrams. Lesson 4.
Software Test Plan Why do you need a test plan? –Provides a road map –Provides a feasibility check of: Resources/Cost Schedule Goal What is a test plan?
Page Beam Instrumentation mini- workshop Conclusions from the Hardware, Timing and MPS mini-workshop Lund, Miha Reščič Deputy Head of
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC , the State of Michigan.
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC , the State of Michigan.
ADE Alessandro Raimondo (ICE/MTA) ICE workshop, 23 th April 2009.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Fermilab Control System Jim Patrick - AD/Controls MaRIE Meeting March 9, 2016.
SNS Integrated Control System ORACLE –JERI DB Generation April 27, 2004 Coles Sibley Jeff Patton.
Control System Tools for Beam Commissioning Timo Korhonen Controls Division Chief Engineer April 8, 2014.
Mary Ganesan and Lora Strother Campus Tours Using a Mobile Device.
Introduction to Programming Lecture 1 – Overview
LCLS Commissioning & Operations High Level Software
Laboratorio per dottorandi 2017 Particle Accelerators Control System
A (very brief) intro to Eclipse
Software Engineering and Best Practices
FESA evolution and the vision for Front-End Software
CSCI/CMPE 3334 Systems Programming
LCLS Commissioning & Operations High Level Software
Lecture-5 Implementation of Information System Part - I Thepul Ginige
ACS ALMA Common software Demo Setup
Chapter 7 –Implementation Issues
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005
Applying Use Cases (Chapters 25,26)
Chapter 2. Problem Solving and Software Engineering
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Nominal Technologies for Modelling and High Level Applications of LCLS
CSCE156: Introduction to Computer Science II
Presentation transcript:

A Brief History of XAL at SNS - What went right / wrong J. Galambos XAL Workshop at the 2007 EPICS / ICALEPS meeting Knoxville TN.

XAL – The Origins Guiding Principles : Wanted an Accelerator Hierarchy Hide the control system from the developer A single point accelerator configuration “Online” beam model Excuses: Had a hard deadline – beam commissioning Really did not understand much about control systems and accelerators in the beginning – good thing we did not write detailed requirements More-or-less right

XAL – The Origins Circa 1999 – Started worrying about “Application Programs”  Had a workshop to evaluate options SDDS, Cdev, UAL, FORTRAN examples Database! Need an internal “champion” 2000  Evaluated the SDDS, Cdev  Started populating database 2001  Started collaboration with UAL which morphed into XAL

Notes from June 14, 2001 Accelerator Hierarchy being defined Basic Architecture of the model

History II 2002 – wrote first few apps, virtual accelerator, scripting, commissioned the Front End at ORNL 2003: Application Framework, 10 apps, commissioned DTL1 2004: commissioned DTL – CCL, too many apps Spring 2002: Test XAL app in control room at ORNL – MEBT at LBNL

Commissioning Schedule – Staged Approach - Useful SNS was an entirely new facility – “green-field” Staged commissioning approach with early deployment gave XAL development time to test approaches and adjust afterwards. This was critical DTL Tanks 1-3 Front-End DTL Tank 1 DTL/CCL SCL Ring Target

What Did Not Work Keep it pure  Almost all applications have SNS specific idiosyncrasies  Some of the Node implementations have idiosyncrasies (e.g. wire-scanner)  Driven in large part by schedule  Parts written by physicists (e.g. me) Documentation  apologies

What Worked Database  Absolutely recommend to any new project for all the usual database reasons  Also use it for measured data Accelerator hierarchy / hide the control system  Allows for transparent code  Opened the door for neophyte physicist programmers + generic apps

Odds & Ends – Right Choices Online model:  Need it to unravel beam observations  Same model - entire accelerator – generic apps  Same model - different data sources (design, machine, pv- logger)  Separate “view” than the device “view” Virtual Accelerator  Debug apps before beam time – good for neophyte real- time programmers to learn with Java  Never want to go back to C++  GUI, Swing, database connectivity, ~ no memory leaks  Speed no problem for us

What Worked The “Application GUI Framework”  A common starting point to create new apps  Good for neophyte physicist programmers  Good for neophyte physicist commissioners Save/open app setup Error logging Toolbar for common actions Html help Accelerator navigating

What Worked Accelerator Physicist Programmers  Good for writing apps – 1 person responsible for making a beam commissioning activity happen  Bad for infrastructure development Also need good software developers for this (which we were fortunate to have)

What Worked Scripting  Absolute necessity for commissioning  Good for algorithm testing (and examples)  Java makes this very easy (no glue code). Trivial python / XAL interface.  Good for high level studies, but you need a robust control system (MPS) to protect equipment

Collaboration Success and Failures  XAL was born from a failed collaboration with UAL  Our lack of precise requirements made collaboration non-trivial The online model was developed at LANL, and used during commissioning at ORNL At SNS there was a tremendous amount of “internal collaboration”  Need to trust each other and share components