30
PLC Steuerung via FESA

PLC Steuerung via FESA€¦ · R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 6 IEPLC Framework • Erstellt am CERN (Frank Locci, Stefano Magnoni) • standardisierter Kommunikationsweg

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • PLC Steuerung

    via FESA

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 2

    Inhalt

    • PLC Aufbau & Einsatzgebiete

    • IEPLC Framework vom CERN

    • FESA Klasse für Kameraobjektive

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 3

    PLC / SPS

    PLC: Programmable Logic Controller

    SPS: Speicherprogrammierbare Steuerung

    !

    Aufbau: CPU, Kommunikationsprozessor (optional) und I/O Module

    (DAC, ADC, Relais, Regler, HMI für grafische Oberfläche)

    Symbolbild (c) by Siemens

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 4

    PLCs in der Strahldiagnose

    • BIF System: Fesa 2.10 Klasse für Iris, Bildverstärker, LED,

    Digital Outs, 6x an Unilac & TK

    !

    • Linosobjektive: Fesa 3, Iris und Focus, LED, Digital In, HTA,

    HHT, HTP

    !

    • LEDs (Digital Outs) für Cryring, im Lab

    !

    • Pressluftantriebe: Bachelorarbeit, noch nicht in Fesa

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 5

    BIF, Bilderverstärker & LEDs

    PCaPAC 2010

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 6

    IEPLC Framework

    • Erstellt am CERN (Frank Locci, Stefano Magnoni)

    • standardisierter Kommunikationsweg (nicht nur) für PLCs

    • unterstützte Hardware: Siemens S7 300/400, Schneider,

    Beckhoff, Rabbit Mikrocontroller, National Instruments

    Hardware

    !

    • Sammlung von Programmen und Skripten (Python/C++)

    • stellt C++ Library zur Kommunikation über Ethernet bereit

    • generiert Sourcecode für die PLC

    • NEU: generiert Fesaklasse mit passenden Datenfeldern und

    Kommunikationsfunktionen

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 7

    Vorgehensweise

    1) Hardware anschaun

    2) Equipment class

    !

    3) Mapping

    !

    4) Codegenerierung

    !

    5) FESA Klasse und PLC jeweils „ausprogrammieren“

    !

    6) Testen mit „Diagnostic Tool“ und Fesa Explorer

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 8

    Vorgehensweise

    Equipment class (Registerbeschreibung)

    Mapping (welche Module/Programme sind

    auf welcher PLC)

    IEPLC Scripts

    PLC Code !„Datenumschlagplatz“

    FESA Klasse Datenfelder/Kommunikation/get&set

    XML für Library (Registerbeschreibung)

    orange = Benutzereingabe

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 9

    Equipment class

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 10

    Equipment class

    !

    Blöcke & Register

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 11

    Mapping

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 12

    Mapping

    PLC Name

    Klassen und Instanzen die auf dieser PLC laufen

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 13

    Vorgehensweise

    Equipment class (Registerbeschreibung)

    Mapping (welche Module/Programme sind

    auf welcher PLC)

    IEPLC Scripts

    PLC Code !„Datenumschlagplatz“

    FESA Klasse Datenfelder/Kommunikation/get&set

    XML für Library (Registerbeschreibung)

    orange = Benutzereingabe

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 14

    Test mit Diagnostic Tool

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 15

    Vorgehensweise

    IEPLC Scripts

    PLC Code !„Datenumschlagplatz“

    FESA Klasse Datenfelder/Kommunikation/get&set

    XML für Library (Registerbeschreibung)

    orange = Benutzereingabe

    PLC Code Hardwareansteuerung

    FESA Klasse GSI spezifische Felder hinzufügen

    Init/Programmlogik

    separates C++ Programm linkt Library, liest XML Registerbeschreibung

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 16

    Klasse zur Objektivansteuerung

    LinosMevisCm (Name des Objektivs)

    !

    • erstellt mit älterer IEPLC Version -> keine generierte

    Fesaklasse

    !

    • steuert mehrere Hardwaremodule:

    • Regler für Iris und Fokus (float Werte)

    • LED zum Beleuchten der Kammer (bool bzw int)

    • Digital In (im Moment unbenutzt)

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 17

    LinosMevisCm Satellit

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 18

    LinosMevisCm Satellit

    Power Supply

    Satelliten Controller ET 200M

    3x Regler FM355C

    Digital Out SM325

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 19

    Settings (in „GUI Einheiten“)

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 20

    CUPID

    Slider

    Slider

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 21

    Experiment GUI an HTP

    Eingabe als Spannung

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 22

    Acquisition

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 23

    Guru Acquisition

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 24

    Fesaklasse

    Singleton !

    Init & Verbindung zur Hardware via IEPLC lib

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 25

    Realtime Action

    Wert von der PLC holen und in die FESA Datenfelder schreiben

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 26

    Server Action

    Wert an die PLC senden

    Herausforderung: Repräsentation der Daten Float Wert als Integer Zahl 0.34071153 = 1079643694

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 27

    Status und Zukunft

    Status Quo

    • läuft relativ stabil über Monate

    • kann theoretisch von anderen Gruppen benutzt werden

    !

    ToDos

    • Umstellung aller Instanzen auf 64bit Library

    • noch keine Unterstützung für S7 1500 CPUs in IEPLC

    • generierte Klasse + GSI FESA 3 testen

    • IEPLC Framework selbst Updaten

    • BIF auf neues IEPLC & FES 3.0 umziehen

  • 28

    Nothing can stop

    automation

    kthxbye

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 29

    Backup

  • R. Haseitl, Beam Instrumentation PLC Steuerung via FESA 30

    Guru Settings (Volt als Integer)