Das Experimental Physics and Industrial Control System (EPICS) ist eine Reihe von Softwarewerkzeugen und Anwendungen zur Entwicklung und Implementierung eines Prozessleitsystem zum Betreiben von Geräten wie Teilchenbeschleuniger, Teleskope und anderen großen Experimente. Die Tools wurden entwickelt, um die Entwicklung von Systemen zu unterstützen, die oft mit einer großen Anzahl von Computernetzwerken ausgestattet sind, die Kontrolle und Feedback liefern. EPICS bieten auch SCADA-Funktionen.
EPICS 7
| |
---|---|
![]() | |
Basisdaten
| |
Entwickler | Freie-Software-Bewegung |
Erscheinungsjahr | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an. |
Aktuelle Version | 3.15.6 (Format invalid) |
Aktuelle Vorabversion | 7.0.3 (Format invalid) |
Betriebssystem | Plattformunabhängigkeit |
Kategorie | Open Source |
Lizenz | EPICS Open License |
https://epics-controls.org |
Architektur
EPICS verwendet Client-Server-Modell und Publish/Subscribe-Techniken zur Kommunikation zwischen Computern. Die " Input/Output-Controller" (IOCs) sammeln Experiment- und Kontrolldaten in Echtzeit mit den daran angeschlossenen Messgeräten. Diese Informationen werden dann den Clients über den hochbandbreiten Channel Access (CA) oder das kürzlich hinzugefügte pvAccess-Netzwerkprotokoll zur Verfügung gestellt, die für Computer-Echtzeitanwendungen wie wissenschaftliche Experimente ausgelegt sind.
IOCs halten und führen eine Datenbank mit "Aufzeichnungen", die entweder Geräte oder Aspekte der zu steuernden Geräte darstellen. Sie können entweder von Standardservern oder PCs, oder von VME oder MicroTCA-Standard-Eingebettetes System-Prozessoren gehostet werden. Für 'harte Echtzeit'-Anwendungen werden in der Regel die Betriebssysteme RTEMS oder VxWorks verwendet, während 'weiche Echtzeit'-Anwendungen unter Linux oder Microsoft Windows laufen.
Daten, die in der Datenbank der Protokolle gespeichert sind, werden durch eindeutige Identifikatoren dargestellt, die als Prozessvariablen (PVs) bezeichnet werden. Diese PVs sind über die Kanäle zugänglich, die vom Channel Access Netzwerkprotokoll bereitgestellt werden.
Datenbankaufzeichnungen sind für verschiedene Arten von Ein- und Ausgängen (z.B. analog oder binär) oder zur Bereitstellung eines unterschiedlichen Funktionsverhaltens, wie z.B. eines Berechnungsprotokolls, verfügbar. Es ist auch möglich, benutzerdefinierte Satzarten zu erstellen. Jeder Datensatz besteht aus einer Reihe von Feldern, die seine Daten enthalten und sein Verhalten festlegen. Die meisten Satzarten sind im EPICS-Referenzhandbuch aufgeführt.
Es stehen Grafische Benutzeroberfläche-pakete zur Verfügung, mit denen Benutzer PV-Daten über typische Anzeige-Widgets wie Zifferblätter und Textfelder anzeigen und mit ihnen interagieren können. Beispiele sind EDM (Extensible Display Manager), MEDM (Motif/EDM) und CSS.
Jede Software, die das CA/pvAccess-Protokoll implementiert, kann PV-Werte lesen und schreiben. Erweiterungspakete sind verfügbar, um Unterstützung für MATLAB, LabVIEW, Perl, Python, Tcl, ActiveX, etc. zu bieten. Diese können verwendet werden, um Skripte zu schreiben, die mit EPICS-gesteuerten Geräten interagieren.