Upload
raymond-fowler
View
219
Download
0
Embed Size (px)
Citation preview
DD
Control System Overview
J. Frederick Bartlett
Fermilab
June 1,1999
DD
Outline
Introduction EPICS Architecture Channel Access Scanning Database Access Levels Process Variables Detector Access
DD
The DØ Control System
History Run I - CDAQ
Built at DØ VMS and Pascal
Platform Independence Decree Run II - EPICS
Shared with HEP Community Runs on many platforms
The Standard (Control) Model Operator Interface (OPI) Local Area Network (LAN) Input/Output Controller (IOC)
DD
The Standard Model
OPIOPI
IOCIOC
OPIOPI
IOCIOC
LAN
DD
Operating Systems
OPI (Host) Operating System
UNIX (including Digital UNIX) Linux Windows NT
IOC (Front End) Operating System
VxWorks Windows NT (Portable CA only) Linux (Portable CA only)
Platforms Motorola 68K (MVME-162) Motorola Power PC (MVME-230x) Intel (Portable CA only)
DD
EPICS Characteristics
Maintained by HEP and astronomy community
Tools and building blocks for a control system
Distributed database Scalable architecture
OPI’s and IOC’s may be added dynamically
Channel Access (CA) servers and clients Event driven Portable CA Server
Written in C++
DD
EPICS Characteristics
High performance (records processed per second) MVME-162 (68K)
>5000 MVME-230x (Power PC)
>50000
Extensive collection of applications Database editors Display programs Alarm handler Archiver Many more
DD
EPICS Channel Access
Channel access provides network transparent access to IOC databases
CA Services Search - Find a process
variable (PV) by name Get - Get a PV value + optional
information PUT - Change the value of a PV Add Event - Add a change-of-
state callback to a PV
DD
EPICS Channel Access
Items returned with a GET Value
String Integer (char, short, int, long) Floating point (float, double) Enumerated menu string
Optional Status and severity Time stamp Graphics and alarm limits Control limits
Channel access transforms numeric formats native types
DD
Asynchronous
Provides a callback mechanism for change of state Alarms Value change
Any Deadband Archival
DD
EPICS IOC Components
Channel Access
Database Access
Record Support
Device Support
Driver
VME
Scanners
DB Load
Ethernet LAN
IOC Database
DD
OPI Components
UserApplication
Ethernet LAN
ChannelAccess Client
ChannelAccess Client
EPICS FileExtractor
HardwareDatabaseHardwareDatabase
EPICS.DB File
EPICS.DB File
CAInterface
ChannelAccess Server
ChannelAccess Server
DØProject
DD
Scanning
Periodic - Process at a periodic rate Standard
0.1, 0.2, 0.5, 1, 2, 5, 10 seconds DØ may add other periods
Event - Process when an event is posted 255 events Begin run, End run, ...
I/O Event - Process on an external interrupt
Passive - Process only when requested
DD
Database Access Levels - Record
Record Provides a generic user view
of a device + attributes Simple records may be linked
to provide complex behavior
rm
AD00
DA00
ai
INP
VAL
ao
OUT
VAL
DD
Database Access Levels - Record
Record Monitors
Alarm conditions Change of value
Transforms Linear scaling Table look-up
Sub-field operations (shift and mask)
DD
Database Access Levels - Record
Record Types
Value relatedai and ao - Analogbi and bo - Boolean longin and longout - Binarymbbi and mbbo - Multi-bit
fieldsstringin and stringout -
Character stringswaveform - Block (array) inputcalc - General expression
evaluationdfanout - Data replication
DD
Database Access Levels - Record
Record Types
Functionalsubroutine - Procedure calltimer - Time delayfanout - Scan propagationseq - Sequence orderingevent - Event generation
Complexpid - Close-loop controllerhistogram - Frequency countssteppermotor - Positioningscan - Peak finding
DD
Database Access Levels - Device
Device Transforms device-specific
properties to record-specific requirements
Types Bus-specific
VMEMIL-1553BGPIBCANBUSCAMAC
DD
Database Access Levels - Device
Device Types
IOC-internalSoft (linked to another record)Symbolic (linked to global
object)Function (call interface) IOC resource measurement
Detector-specificRack monitorHigh voltageSMT sequencer
DD
Database Access Levels - Driver
Driver Required when a device
generates interrupts DØ uses MIL-1553B bus
DD
Process Variables
Application programs access process variables (PV)
A PV is associated with an instance of an EPICS record
EPICS records and, therefore, PVs have many fields (properties) that control its behavior A field name is usually four
characters or less and is always upper case
DD
Process Variables
D0 PV naming convention Concatenation of fields
bounded by separators Fields
Detector - i.e. CALN (calorimeter north)
Device - i.e. HV (high voltage channel)
Locator - i.e. Attribute - i.e. CUR (current)Field - i.e. HIHI (high alarm
limit) Separators
underscore (_)slash (/)dot (.)
DD
Process Variables
D0 PV naming convention Examples
CALN_HV_001/CUR.HIHI CTL_IOC_11/CPU MUO_PDT_231/ADC
DD
Detector Access
Detector component Calorimeter
Central, North, South ICD
Central Fiber Tracker Barrels and Disks Central and Forward Preshower
Forward Proton DetectorForward Proton Detector Luminosity Monitor Silicon Microstrip Tracker Silicon Track Trigger (future) MUON
Central and Forward
DD
Detector Access
Accelerator Gateway link to ACNET system Data access only
Cryogenics and Gas Gateway link to DMACS
system Data access only