Upload
brice-osborne
View
218
Download
0
Embed Size (px)
DESCRIPTION
ACNET vs EPICs at Fermilab 3 EPICS What is EPICS What EPICS is not Who uses EPICS Comparison of EPICS and ACNET Other Solutions The Future
Citation preview
ACNET vs EPICS at FermilabACNET vs EPICS at Fermilab
Accelerator Physics and Technology Seminar
Sharon Lackey
3/14/2006
ACNET vs EPICs at Fermilab 2
Special Thanks to:Special Thanks to:
Ned Arnold – APS Fritz Bartlett – D0 Dennis Nicklaus – AD/Controls Jim Patrick – AD/Controls Charlie Briegel – AD/Controls Brian Hendricks – AD/Controls
ACNET vs EPICs at Fermilab 3
EPICSEPICS
What is EPICS What EPICS is not Who uses EPICS Comparison of EPICS and ACNET Other Solutions The Future
ACNET vs EPICs at Fermilab 4
EPICS is …EPICS is …
Experimental Physics and Industrial Control System A toolkit that Allows a Controls System to be built with
configuration rather than programming A set of tools with well defined interfaces Written and Maintained by a Collaboration of Controls
groups Client/Server based Distributed, Two Tiered Architecture Allows Communication between any two points Limited primarily by Network Bandwidth Written in C and C++
*Courtesy of N. Arnold ACNET vs EPICs at Fermilab 5
What is EPICS? *What is EPICS? *
Any tool/program/application that abides by the Channel Access protocol could be described as “EPICS Compliant”.
My Accelerator Simulator
Code(PVs)
CAS
My Special Data
Collection Program
CAC
EPICS can be viewed as a “toolkit” of EPICS compliant programs. One can select the appropriate tool for their need or develop their own.
StripTool MEDM
CACCAC
iocCore(PVs)
LabView(PVs)
CAS CAC CAS CAC
ACNET vs EPICs at Fermilab 6
CA Clients may run on:
Unix, Windows, VxWorks or VMS
VME,VXI, PCI, ISA, or embedded processors
Servers running under:
VxWorks, RjTEMS, Solaris, Linux, Windows,
Ethernet TCP/IP & UDP
ACNET vs EPICs at Fermilab 7
EPICS IS…EPICS IS… EPICS Core:
Channel Access Client and Server
Process Database Scanners Monitors Database Configuration Tools Build Tools Source/Release
EPICS Extensions: GUI Builders:
• EDD/DM (LNAL)• MEDM (ANL)• EDM (ORNL)• DM2K (BESSY)• JoiMint (DESY)
Alarm Handler
Channel Archiver Sequencer (State Machine) BURT (Back up and Restore Tool) Gateway APIs
• Python• LabVIEW• TCL/TK
Data Display Tools• ADT (Array Display Tool)• StripTool (Strip Chart Plotting
Tool)• Yviewer (Data Visualization
Tool) Database
Configuration/Management Tools• DCT (Tcl/Tk – deprecated)• GDCT (Graphical – deprecated)• JDCT (Java)• VDCT (Visual)• CapFast (Commercial schematic
capture Tool… More we won’t mention…
*Courtesy of F. Bartlett ACNET vs EPICs at Fermilab 8
Inside a VME IOC *Inside a VME IOC *
Ethernet LAN
Channel Access
Database Access
Record Support
Device Support
Driver
VME
Scanners
DB Load
IOC Database
CustomizingElements
*Courtesy of N. Arnold ACNET vs EPICs at Fermilab 9
Channel Access Server
Channel Access in One Slide *Channel Access in One Slide *
CA Server
CA Client
Process Variables:
S1A:H1:CurrentAO
S1:P1:x
S1:P1:y
S1:G1:vacuum
Channel Access Client
Who has a PV named “S1A:H1:CurrentAO”?
I do.
What is its value?
25.5 AMPS
Change its value to 30.5
“connection request” or “search request”
OK, it is now
30.5
30.5 is too high. It is now set to the maximum value of 27.5.
You are not authorized to
change this value
Notify me when the
value changes
It is now 20.5 AMPS
It is now 10.5 AMPS
It is now -0.0023 AMPS
“put” or “caPut”
“get” or “caGet”
“set a monitor”
“post an event”or
“post a monitor”
“put complete”
or
or
ACNET vs EPICs at Fermilab 10
EPICS is NOT…EPICS is NOT…
A Control System “in a box” The total solution for all your controls needs Going to allow you to get rid of the controls dept. & all
programming Object Oriented
ACNET vs EPICs at Fermilab 11
Channel Access RecordsChannel Access Records Analog
Input (double float) Output Long Input (32 bit integer) Long output
Binary Input Out Multi-bit Input (16 bits) Multi-bit Output Multi-bit Input Direct (16 bit integer to char[16] ) Multi-bit Output Direct ( char[16] to 16 bit integer)
Archive
Calculation Calculation Out Compression CPID and PID fanout and dfanout (data fanout) Event (hardware int. handler) Histogram Permissive (client-server
communication) Pulse
Counter (counts pulses) Delay (generates pulses) Train (generates pulse trains)
Scan (used to scan detectors)
ACNET vs EPICs at Fermilab 12
Channel Access RecordsChannel Access Records Select (12 input mux) Sequence (triggers up to 10 other records and sends values) State ( ASCII string representing the current state of a state program ) Stepper Motor String
Input Output
Array Waveform Sub Array ( reads part of a waveform)
Subroutine (calls a C routine with up to 12 input links) Timer ( drives an output to latch data) Wait – obsolete, replaced by calc out
ACNET vs EPICs at Fermilab 13
Who Uses EPICS ? (an incomplete list)Who Uses EPICS ? (an incomplete list)
SNS & ORNL JLAB APS & ANL LBL LANL DESY BESSY CosyLab Kinetic Systems Intuit FNAL (D0 & SMTF)
ACNET vs EPICs at Fermilab 14
Comparison of EPICS and ACNETComparison of EPICS and ACNET
ACNET 3 Tiers Central Services Client/Server Uses UDP Uses Multicasts Multiple protocols
• Snapshot• FTP• Data acquisition
(RetDat/SetDat)• Network (Acnet)
Single Site • More Control• Less help
Lots of Specialized User Applications
Limited to Six Character Names FTDs
EPICS 2 Tiers Distributed Services Client/Server Uses TCP/IP Uses Broadcasts Single protocol
• Data Acquisition (Channel Access)
Collaboration• More Help• Less Control
One GUI Application can be used to create many displays
Names can be very long Data scan rate set in database
*Courtesy of J. Patrick ACNET vs EPICs at Fermilab 15
ACNET Control System Overview *ACNET Control System Overview *
ConsoleApplications
CentralServices
IRMFront-Ends
JavaApplications
WebApplications
MOOCFront-Ends
LabviewFront-Ends
Open AccessClients
Field Hardware
ethernet
CAMAC, VME, PMC, IP, Multibus, CIA, GPIB, …
field bus: VME, SLD, Arcnet, ethernet, …
Servlets Database
Application
Central
Front-End
ACNET vs EPICs at Fermilab 16
EPICS Use at FermilabEPICS Use at Fermilab
D0 slow controls Using EPICS since beginning of Run 2 Extended EPICS by:
• Adding support for new device types• Added Global Event reporting system• Added a Central Database• Added support for MIL/STD1553B bus• Detector configuration tool
Proton Driver Plans to use EPICs
Meson Test Facility Using EPICS, DOOCs and ACNET
ACNET vs EPICs at Fermilab 17
OAC
Local Applications
Application 1
ACNET on One Slide ACNET on One Slide
Central Services
Console
Database Entries
SQL Server
Front Ends
Data Pool Manager
Read M:OUTTMP
What is its value?
Already getting this data?
No
MOOC
I’ll get the info and calculate the value
Retdat/Setdat Client
Application 2
SQL Client RetDat/SetDat Client
Retdat/Setdat Server
Methods
MOOCRetdat/Setdat
ClientRetdat/Setdat
Server
Methods
Local Applications
MOOCRetdat/Setdat Client Retdat/Setdat Server
MethodsLocal Applications
ConsoleRead C:LUMIN
ACNET vs EPICs at Fermilab 18
Meson Test FacilityMeson Test Facility
EPICS used for Cryogenics Controls interface to Siemens-Moore PLCs Implemented in Software IOCs on the PCs that run the APACS+
software Communicate with the PLCs via OPC
(OLE for Process Control )
EPICs driver for DESY’s SimCon 3.1 LLRF board Edm used as the GUI builder Using extensions: Plan to use:
Alarm handler BURT StripTool for plots Channel Archiver
ACNET vs EPICs at Fermilab 19
Brown Refrigerator GUI Display in edmBrown Refrigerator GUI Display in edm
ACNET vs EPICs at Fermilab 20
Alarm Handler for Meson Test Facility CryoAlarm Handler for Meson Test Facility Cryo
ACNET vs EPICs at Fermilab 21
Strip Tool PlotterStrip Tool Plotter
ACNET vs EPICs at Fermilab 22
ACNET vs EPICs at Fermilab 23
Why Use EPICS @ Meson & ILC Test Facility?Why Use EPICS @ Meson & ILC Test Facility?
Test Facility will be used by many visitors from various labs
EPICs is used at more labs than other controls systems Argonne personnel have expertise D0 personnel have expertise EPICs or its successor may be considered for the ILC FNAL needs to develop expertise in EPICS in order to
fully evaluate it
ACNET vs EPICs at Fermilab 24
Why not use EPICS Now at Fermilab?Why not use EPICS Now at Fermilab?
ACNET is a stable, full featured controls system Operators are familiar with ACNET Huge investment in existing code Users can easily write applications for ACNET ACNET is now ported to Linux We can modify ACNET without the approval of a
collaboration Switching controls systems would be a monumental task We would lose functionality
ACNET vs EPICs at Fermilab 25
Why Should We Switch to EPICS at Fermilab?Why Should We Switch to EPICS at Fermilab?
We can benefit from the collaboration of laboratories We can influence the characteristics of Version 4.0 EPICS or its successor may be the choice for the ILC Professional development of staff
ACNET vs EPICs at Fermilab 26
What Does ACNET have that EPICS doesn’t?What Does ACNET have that EPICS doesn’t?
The Parameter Page Ability to add a data channel on the fly Data has associated error status on each return Redirection Consolidation of requests to front ends Wild card devices Snapshot plots Automatic downloads of settings on reboot Automatic logging of settings SDA Consolidated Error reports An integrated Console environment
ACNET vs EPICs at Fermilab 27
ACNET Parameter PageACNET Parameter Page
ACNET vs EPICs at Fermilab 28
ACNET vs EPICs at Fermilab 29
What Does EPICS have that ACNET Doesn’t?What Does EPICS have that ACNET Doesn’t?
Longer More Descriptive names Distributed database Wide user base and on-line Tech-Talk help Front ends can be “programmed” by configuring database
records with minimal real programming
ACNET vs EPICs at Fermilab 30
Some Other Control SystemsSome Other Control Systems
Tango (Collaboration of Light Sources) LHC (new system using Java, CORBA & C++) DOOCS (DESY Object Oriented Controls System) ALMA Common Software (Large Array Telescope)
ACNET vs EPICs at Fermilab 31
The FUTURE: Version 4.0The FUTURE: Version 4.0
Provide online add/delete of I/O to support continuous operation.
Provide redundant control of remote I/O to support improved reliability.
Provide name introspection and domain control in support of seamless integration of large control systems
Provide triggers, filters, and rate limits to improve resource use of network and client side processing
Provide hierarchical devices to support higher level view of application in the front-end processors.
ACNET vs EPICs at Fermilab 32
Version 4.0 cont.Version 4.0 cont.
Provide automatic backup and restore to support bump-less reboot and synchronization of redundant controllers.
Provide atomic read, write, and write with read-back to multiple channels to support synchronized access of arbitrary sets of channels.
Support international users with uni-code and time. Remove limitations on string lengths, device states,
number of input links to support arbitrary sizes. Internationalize Time Stamps
ACNET vs EPICs at Fermilab 33
Allow definition and access to complex devices and multi-dimensional arrays
Name hierarchy in Channel Access <arbitrary string>.structure. Element[n]
e.g. Arc3PwrSupply.readback.status, ArcPwrSupply.readback.value
Device description in database Support arbitrary number of inputs to calculations and
subroutines. Support multi-state devices of an arbitrary number of
states
Version 4.0 cont.Version 4.0 cont.
ACNET vs EPICs at Fermilab 34
Version 4.0 cont.Version 4.0 cont.
Allow wildcard searches Allow request to send all names supported in the IOC Support redundancy by allowing connections to specify
that they are not active Support multiple name servers by allowing connections
to specify how close to the source they are. Support Name aliases
ACNET vs EPICs at Fermilab 35
Another InitiativeAnother Initiative
EPICs OfficeLed by Matthias Clausen of DESY Initiative to provide an Integrated Development
Environment for EPICsProvide a common look and feel across EPICs
applications
ACNET vs EPICs at Fermilab 36
Status of Version 4.0 as of Feb 3, 2006Status of Version 4.0 as of Feb 3, 2006
Ned Arnold (for the APS Team) wrote in TechTalk: Upon review of last year's efforts and accomplishments, we have realized that
EPICS Version 4 is too large of a development to successfully undertake with the part-time resources that can be leveraged from operating facilities. In addition, the ambitious redesign of major portions of EPICS core (database, communications API, device support interface) would be a significant impediment for operating facilities to migrate to Version 4.
Therefore, under the current EPICS collaborative structure (and funding model), we have made a decision to focus on small incremental evolutionary steps (3.15, 3.16, etc) rather than revolutionary leaps. We will evaluate the desired features of V4 and develop a roadmap for incorporating some of these features into Version 3. More significant changes/features will have to wait until new opportunities present themselves to fund substantial developments (there are a few ideas on the table, however).
ACNET vs EPICs at Fermilab 37
Andrew Johnson has taken over responsibility of "keeper of the source". His primary emphases will be reliability, maintainability and establishing a well-defined forward migration path for existing applications as new features are added. Some features already identified for possible incorporation into 3.x include enhancement of the build system; unbundling BASE into Core, Channel Access, and IOC; variable length strings; etc. Because of our limited resources, we will be looking for significant assistance in developing these features (i.e. the timeline for delivery is directly proportional to available resources).
Some V4 research and development will continue, but not led or coordinated by Argonne. One effort will include investigation of hierarchical records, "devices", and emerging protocols. An initial implementation of some of these ideas will be in a Java IOC (Marty Kraimer is working on this development). Another emerging development effort is the Control System Studio (a.k.a EPICS Office) and IOC redundancy driven by DESY. Any successes in these areas will be considered for integration somewhere in the future. Contact Bob Dalesio or Matthias Clausen if you are interested in these activities.