EPICS

EPICS

Version vom 17. August 2017, 13:23 Uhr von imported>Mfb (Hinweis zur Kamera EPICS)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
EPICS
EPICS Logo
Erscheinungsjahr 1994
Aktuelle Version 3.16.1
(2. Juni, 2017)
Betriebssystem Cross-platform
Programmiersprache Lua-Fehler in Modul:Wikidata, Zeile 708: attempt to index field 'wikibase' (a nil value)
Kategorie Open Source
Lizenz EPICS Open License
aps.anl.gov/epics/

EPICS (für Experimental Physics and Industrial Control System) ist eine Softwareumgebung, um verteilte Kontrollsysteme für Großexperimente wie Teilchenbeschleuniger oder Teleskope zu entwickeln und zu realisieren. EPICS bietet dabei SCADA-Unterstützung.

EPICS verwendet Client-Server- und Publish-Subscribe-Methoden für die Kommunikation zwischen den verschiedenen verwendeten Computern. Eine Sorte von Computern, die Input/Output-Controller (IOC), sammelt dabei in Echtzeit über die angeschlossenen Messinstrumente Experiment- und Kontrolldaten. Über ein spezielles Netzwerkprotokoll namens Channel Access (CA) werden diese Informationen an eine weitere Rechnersorte, die Clients, weitergegeben. CA unterstützt dabei weiche Echtzeit-Anforderungen, wie sie in wissenschaftlichen Experimenten anfallen.

Input/Output-Controller

Bei den IOCs handelt es sich entweder um handelsübliche Personalcomputer oder Standard-VME-Prozessoren, die bestimmte Module (etwa GPIB oder RS232) verwalten, die wiederum mit Kontrollsystem-Instrumenten (Oszilloskope, Netzwerkanalysatoren) und -Geräten (Motoren, Thermoelemente, Schalter und so weiter) in Verbindung stehen.

Auf dem IOC läuft eine Datenbank mit Records, die entweder Geräte oder Eigenschaften der zu steuernden Geräte repräsentieren. IOC-Software für harte Echtzeitbedingungen verwendet normalerweise RTEMS oder VxWorks, wenngleich an einer Portierung auf weitere Systeme gearbeitet wird. IOC-Software für weiche Echtzeitbedingungen läuft manchmal auf Linux- oder Windows-Systemen.

Weitere Rechner im Netzwerk können mit den IOC über das Konzept der Channels kommunizieren. Als Beispiel diene ein Teilchenbeschleuniger mit Ventilen zwischen einzelnen Abschnitten. Zu einem Ventil gäbe es typischerweise mehrere Channels: Einen Ausgabe-Channel, um das Ventil ferngesteuert zu öffnen oder zu schließen; einen Eingabe-Channel, um den Zustand des Ventils abzufragen (z. B. geschlossen, offen, in Bewegung); und vielleicht weitere analoge Eingabe-Channels, die Druck und Temperatur auf jeder Seite des Ventils repräsentieren.

Häufig wird auf den Clients ein GUI-Paket wie EDM (Editor/Display Manager) oder MEDM (Motif EDM) eingesetzt. Diese ermöglichen die Erzeugung und Verwendung von Skalen, Zeigern, Textboxen, einfachen Animationen usw.

Weblinks