Epics@GSI Webhome

1st PANDA - EPICS tutorial & workshop - September 10, 2009

Date and Location

  • Location:
    • PANDA XXXth Collaboration Meeting, IKP Seminar Room Schulungsraum DVEE, Forschungszentrum Jülich
  • Time and Date:
    • September 10, 2009, 14 - 18:30

Organizers:

  • Peter Zumbruch, ITEE/KS, GSI
  • Dan Protopopescu, Glasgow, UK

Topic

EPICS tutorial
4 hour class introduction to EPICS - Experimental Physics and Industrial Control System

    Introductory talks

    Tools Overview
    • EPICS Clients:
      • CSS Control System Suite: Download CSS from http:\\css.desy.de for your system, if windows then also the TestIoc

    Hands-On
    Examples
    StreamDevice / ASYN driver
    • Agilent Power supply (BK)
      • http://cp.literature.agilent.com/litweb/pdf/5989-1330EN.pdf
      • asynDriver
        • st.cmd
          ...
          drvAsynIPPortConfigure ("ps002" ,"hadpszzz.gsi.de:xxyy") ; where xxy is the port number

          ...
      • streamDevice
        • .db files
          field (OUT, "@Agilent.proto debug ps002 ")
          field (DTYP, "stream")
        • protocol - file Agilent.proto:
          #
          # Agilent.proto (stream device protocol file)
          #
          # Genesys/Agilent/Lambda DC Power Supply
          # Connect a stringout record to this to get
          # a generic command interface.
          # After processing finishes, the record contains the reply.
          debug {
          ExtraInput = Ignore;
          out "%s"; in "%39c"}
        • st.cmd
          ...
          epicsEnvSet ("STREAM_PROTOCOL_PATH","...some path...")
          ...
    • Motor driver
      • corvus.proto: CBM protocol for stream device driving corvus motors
        • protocol - file corvus.proto:
          InTerminator="\r\n";
          OutTerminator=" ";
          debug {
          ExtraInput=Ignore;
          out "%s"; in "%39c";
          }

          status {
          out "st"; in "%d";
          }
          getpos {
          out "pos"; in "%(\$1.VAL)f" "%f";
          }
          setpos {
          out "%(\$1.VAL)f %(\$2.VAL)f move";
          }

          # get number of axes
          getdim {
          out "getdim"; in "%d";
          }


          zero {
          out "cal";
          }
          range {
          out "rm";
          }

more complex example of HADControl general purpose access via serial device
from ( http://wiki.gsi.de/pub/EE/EEMeetVortragArch/Vortrag-08-06-2009.pdf )

CSS - CBM synoptic displays



-- PeterZumbruch - 30 Nov 2011

This topic: Epics > WebHome > EpicsTraining > EpicsTrainingPandaTutorialAndWorkshopSeptember2010
Topic revision: 2018-01-08, PeterZumbruch
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding GSI Wiki? Send feedback | Imprint (german) | Privacy Policy (german)