160 likes | 269 Vues
Learn about the EPICS control system implemented at DØ, its shared history with the HEP community, platform independence, scalable architecture, Channel Access functionalities, and utilization of Operating Systems. This overview covers EPICS characteristics, extensive applications, tools, and building blocks, as well as key components like Operator Interface, Local Area Network, and Input/Output Controllers. Discover the EPICS Channel Access services, including network-transparent database access and various data types supported. Gain insights into EPICS asynchronous capabilities, alarm handling, database access levels, and components like IOC Database and Channel Access Server in this comprehensive guide.
E N D
Control System Overview J. Frederick Bartlett Fermilab June 1,1999
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)
The Standard Model OPI OPI LAN IOC IOC
Operating Systems • OPI (Host) • Operating System • UNIX • Digital UNIX • Linux • Windows NT • IOC (Front End) • Operating System • VxWorks • Real-Time Linux (later?) • Platforms • Motorola 68K (MVME-162) • Motorola Power PC (MVME-230x)
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++
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
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
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
Asynchronous • Provides a callback mechanism for change of state • Alarms • Value change • Any • Deadband • Archival
Database Access Database Load Scanners Record Support Interrupt Receiver Device Support Device Driver IOC Components Ethernet LAN Channel Access Server IOC Database VME Bus
User Application EPICS File Extractor Ethernet LAN OPI Components Hardware Database CA Interface EPICS .DB File Channel Access Client
Record 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
ai rm INP VAL AD00 DA00 ao OUT VAL Database Access Levels • Record • Provides a generic user view of a device + attributes • Simple records may be linked to provide complex behavior
Database Access Levels • Device • Transforms device-specific characteristics • Types • VME bus • MIL-1553B bus • GPIB bus • CANbus • CAMAC • Soft (linked to another record) • Symbol (linked to
Database Access Levels • Driver • Required when a device generates interrupts