Jeffrey Hill.  LANSCE Requirements – a Review  EPICS Paradigm Shift – a Review  Status – What is Implemented  What is an Abstract Data Type?  Benefits.

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

1 1999/Ph 514: Channel Access Concepts EPICS Channel Access Concepts Bob Dalesio LANL.
EPICS V4/areaDetector Integration
EPICS Base R and beyond Andrew Johnson Computer Scientist, AES Controls Group.
Channel Access Enhancements J. Hill. R3.14 Enhancements Large array support in the portable server –nearly complete –a priority for SNS Port syntax for.
Jeffrey O. Hill LANSCE / LANL.  Requirements, a review  Design, a review  Application Programming Interface (API)  Status  Benefits, a review.
Current Status of Virtual Accelerator at J-PARC 3 GeV Rapid Cycling Synchrotron H. Harada*, K. Shigaki (Hiroshima University in Japan), H. Hotchi, F. Noda,
Jeff Hill. Next Gen CA Server – Overview  LANSCE Requirements a Review  Server Design Fundamentals a Review  Demo  Data Access – a Review and Recent.
Solving Automation Reporting Problems with Dream Report Renee Sikes Applications Engineer Dream Report Brand Manager.
Module: Definition ● A logical collection of related program entities ● Not necessarily a physical concept, e.g., file, function, class, package ● Often.
Software Frameworks for Acquisition and Control European PhD – 2009 Horácio Fernandes.
V4 – Executive Summary 1.Provide online add/delete of I/O to support continuous operation. 2.Provide redundant control of remote I/O to support improved.
November 12, 2008 Controls Software D. Fairley LCLS Feedback.
SQL Reporting Services Overview SSRS includes all the development and management pieces necessary to publish end user reports in  HTML  PDF 
Dynamics AX Technical Overview Application Architecture Dynamics AX Technical Overview.
Terralite Solutions.  TCP/IP setting for communications  Subscription  Unicast  Multicast  UDP  Communications troubleshooting.
OPC and EPICS M. Clausen EPICS workshop Trieste’99 1 OPC Introduction and EPICS Perspectives Matthias Clausen.
Jeffrey O. Hill LANSCE / LANL. Requirements, a Review Design, a Review Design Changes Status, this project and others Lessons Learned Benefits, a Review.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
JavaIOC Marty Kraimer EPICS Collaboration Meeting ICALEPCS October
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
This presentation is the property of Paradigm Information Systems It is confidential to the intended recipient for the purpose of evaluating FMS Any other.
Virtualization. Virtualization  In computing, virtualization is a broad term that refers to the abstraction of computer resources  It is "a technique.
History Server & API Christopher Larrieu Jefferson Laboratory.
Imperial College Tracker Slow Control & Monitoring.
J. Hill. Overview  Introduction  LANSCE Requirements  EPICS Event Queue  Event Queue Upgrade  Milestones.
Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila.
ICS – Software Engineering Group 1 GeneralTime Proposal Status at SNS and Ideas for EPICS base David Thompson Sheng Peng Kay-Uwe Kasemir.
1/15 G. Manduchi EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 INTEGRATION OF EPICS AND MDSplus G. Manduchi, A. Luchetta, C. Taliercio, R.
(Business) Process Centric Exchanges
Bookkeeping Tutorial. Bookkeeping & Monitoring Tutorial2 Bookkeeping content  Contains records of all “jobs” and all “files” that are created by production.
1 Channel Access Concepts – EPICS Training – K.Furukawa – Mar EPICS Channel Access Concepts Kazuro Furukawa, KEK, ( ) (Bob Dalesio, LANL,
Replay Compilation: Improving Debuggability of a Just-in Time Complier Presenter: Jun Tao.
General Time Update David Thompson Epics Collaboration Meeting June 14, 2006.
Refining middleware functions for verification purpose Jérôme Hugues Laurent Pautet Fabrice Kordon
K.Furukawa, Nov Database and Simulation Codes 1 Simple thoughts Around Information Repository and Around Simulation Codes K. Furukawa, KEK Nov.
Issues in Accelerator Control Bob Dalesio, December 23, 2002.
Jeff Hill.  LANSCE Requirements – a Review  EPICS Paradigm Shift  Magic Pipes  Data Access, is it Easy CA?  Database CA Service  Server Upgrades.
Controls Group Archiving at Jefferson Lab (Presentation of work by Chris Larrieu)
EPICS EPICS Limitations Bob Dalesio Marty Kraimer.
EPICS Release 3.15 Bob Dalesio May 19, Features for 3.15 Support for large arrays - done for rsrv in 3.14 Channel access priorities - planned to.
BROOKHAVEN SCIENCE ASSOCIATES Advanced Monitor/Subscription Mechanisms Ralph Lange EPICS Collaboration Meeting October 11, 2009.
EPICS Development for the ASKAP Design Enhancements Program ASTRONOMY AND SPACE SCIENCE Craig Haskins 18 th October 2015 EPICS User Meeting – Melbourne.
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
EPICS Release 3.15 Bob Dalesio May 19, Features for 3.15 Support for large arrays Channel access priorities Portable server replacement of rsrv.
ERP Implementation Lifecycle
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
1 Object-Oriented Analysis and Design with the Unified Process Figure 13-1 Implementation discipline activities.
1 Channel Access Concepts – IHEP EPICS Training – K.F – Aug EPICS Channel Access Concepts Kazuro Furukawa, KEK (Bob Dalesio, LANL)
EPICS and LabVIEW Tony Vento, National Instruments
IBM Express Runtime Quick Start Workshop © 2007 IBM Corporation Deploying a Solution.
Control System Overview J. Frederick Bartlett Fermilab June 1,1999.
Chapter 9: Coupling & Cohesion Omar Meqdadi SE 273 Lecture 9 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Module 5: Managing Content. Overview Publishing Content Executing Reports Creating Cached Instances Creating Snapshots and Report History Creating Subscriptions.
1 BROOKHAVEN SCIENCE ASSOCIATES EPICS Version 4 – Normative V4 Team – presented by Bob Dalesio EPICS Meeting October 7, 2011.
Monitoring Dynamic IOC Installations Using the alive Record Dohn Arms Beamline Controls & Data Acquisition Group Advanced Photon Source.
Control System Tools for Beam Commissioning Timo Korhonen Controls Division Chief Engineer April 8, 2014.
Artificial Intelligence In Power System Author Doshi Pratik H.Darakh Bharat P.
LCLS Commissioning & Operations High Level Software
Graphical Data Engineering
JavaIOC Overview and Update
Web Technologies IT230 Dr Mohamed Habib.
Data collection methodology and NM paradigms
LCLS Commissioning & Operations High Level Software
Programmable Logic Controllers (PLCs) An Overview.
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Server-Side Plugins Andrew Johnson, Ralph Lange
Channel Access Concepts
The Lua Chunk Vault, an enhancement to epics base
Channel Access Concepts
Presentation transcript:

Jeffrey Hill

 LANSCE Requirements – a Review  EPICS Paradigm Shift – a Review  Status – What is Implemented  What is an Abstract Data Type?  Benefits of Abstract Types  A New EPICS Database Field Type for Abstract Data  LANSCE Schedule  Conclusion

LANSCE, a versatile machine – Originally producing H+, H-, and polarized H- Each with different intensities, duty factors, and even energies – depending on experimental and medical isotope production needs LANSCE timing and flavoring of data – Flavoring Selection based on - logical combinatorial of beam gates – Timing Selection based on - time window sampling Many permutations – Too many to, a-priori, install records for all of them – Subscription update filtering is needed

Distributed Control Data Acquisition Physics Control Open Source Vendor Neutral OS Neutral Small Footprint EPICS

 What is a Data Acquisition System? Replacing …

 What is a Distributed Data Acquisition System?  Must efficiently filter, and archive data  Selecting interesting occurrences  for future processing /evaluation  Flexible reconfigurable by clients at runtime ▪ Don’t expect to know initially, when designing/compiling runtime system, what experiments/filters might be devised later on ▪ Experiments/filters configured when client subscribes ▪ Don’t expect to know initially, when designing/compiling runtime system, what data aggregations will be on different data branches to different clients

 Current weaknesses deploying EPICS into Data Acquisition situations? Record processing provides good flexibility to create event filters, but …  Frequently, it isn't possible to know all of the experiments when the IOC’s database is designed  A distributed data acquisition system needs runtime reconfiguration, initiated by client side tools  Limited data model  No runtime aggregation, or user defined types

 Current weaknesses deploying EPICS into Data Acquisition situations? No support for site specific tagging of the data  If a site needs to filter for LANSCE H- beam, then forcing this to occur based on the time-stamp  Inflexible solution - from a LANSCE perspective  Our solution  Site specific parasitic PV attribute data can be filtered by the CA server

Alarm State PV ValueSignal Data Time Stamp Device Support Record Support DB Common CA Server Record Specific Values Device Specific Values

CA Client Multicast Enhancements CA Server Multicast Enhancements Implemented Mostly Implemented  Multicast Enhancements Simplified configuration of EPICS Systems with  Multiple IOCs on one host  Installations with multiple subnets

Device Support CA Server Event Queue Upgrade Database Enhancements Database CA Service Implemented Under Design LANSCE Specific CA Server Event Filtering Upgrade CA Server Service Interface Upgrade

 Subscription update event filtering >camonitor "fred$F $(PV:)>30 && $(PV)<40" fred$F $(PV:)>30 && $(PV)< :58: fred$F $(PV:)>30 && $(PV)< :58: fred$F $(PV:)>30 && $(PV)< :58: fred$F $(PV:)>30 && $(PV)< :58: fred$F $(PV:)>30 && $(PV)< :58: fred$F $(PV:)>30 && $(PV)< :58: >camonitor "fred$F $(PV:flavor)==30 " fred$F $(PV:flavor)== :58: fred$F $(PV:flavor)== :58: fred$F $(PV:flavor)== :58: fred$F $(PV:flavor)== :58: fred$F $(PV:flavor)== :58:

 An Abstract Data Type is defined by  Operations that may be performed on it  Some mathematical constraints on these operations  Our goal, always … Separation of interface from implementation  Isolate from each other …  The details of the internal encoding of the data structures of the implementation  The interface used to manipulate the implementation

 Defining Abstract Data Type’s Interface Specify Abstract Type’s name Specify Abstract Type’s N methods  Specify method’s name  Specify method’s I input, and O output, parameters  The parameter’s name  The parameter’s data type class  i.e. integer, real, string, enumerated  The parameter’s acceptable range  The parameter’s optional default

 Type Safety – user specified parameter must match with the specification of the interface All parameters passed by users must match  The parameter’s name  The parameter’s data type class  i.e. integer, real, string, enumerated  The parameter’s acceptable range Input Parameters  All input parameters must be supplied if the interface doesn't specify a default Output Parameters  All interface specified output parameters must be supplied  Additional optional output parameters may be present w/o violating interface specification  If properly qualified by a standardized path name – i.e. project/LANSCE/flavor

 Users can manipulate an entity more complex than a Process Variable  Implementation is free to evolve without impacting the users  We can pass in N parameters atomically Example, we can set the x, y, z coordinates together as a unit  We can pass out N parameters atomically Example, we can extend the set of parameters passed with a subscription update to include the LANSE flavor

 New field type Field size is sizeof ( pointer ) Field content  Reference counting C++ smart pointer  Smart pointer points to C++ pure virtual interface class  This is the C++ interface used to interface to an Abstract Data Type

 How do database links work? If the source is ordinary data and the destination is an Abstract Data Type instance  Not permitted unless the destination abstract type has value set method If the source is an Abstract Data Type instance and the destination is ordinary data  Not permitted unless the source abstract type has value get method If the source is an Abstract Data Type instance and and the destination is an Abstract Data Type instance  Not permitted unless  Both source and destination have same Abstract Data Type name  If permitted then smart pointer in the destination is simply changed to become a new reference to the source  Or there is a matching set/get

 Implementation issues Parameter interfacing  Presumably Data Access interface is used Parameter conversion and range checking  Presumably Data Access library is used

 Implementation issues Presumably these capabilities are evaluated first only in new record types  Therefore, minimal impact on existing installations

 Data Access, is it Easy CA? In the EPICS community we have – Application developers (well adjusted, etc) EPICS database, screens, matlab, python, tcl, etc – System programmers (geeks) Device drivers, EPICS internals, etc Implementing Data Access interface for particular data structure / class System programmer job

Data Access, is it Easy CA? Once interfaced with Data Access – A high level (i.e. easy ca interface is available) – DA is not the data manipulation interface used by application level users – Users use the public interface of the data structure / class which has been interfaced – Communities develop around the data structures / classes standardized by particular applications, industries, and instruments

 Orders for our new klystrons are in place  We will provide production subscription update filtering capabilities for the LANSCE upgraded RF system and the LANSCE upgraded diagnostic systems in 2013  Prototypes will need to function considerably before that time frame

 A significant upgrade for EPICS is in progress, significant milestones have been completed Multicasting – easier configuration Subscription update filtering – client specified filter expression Upgraded server event queue – optimal order preservation and transport of user defined types Upgraded server interface – user defined types  Others are in early design phases New Abstract Data EPICS database field types  A delivery schedule is in place at LANSCE