You are here: Foswiki>Epics Web>EpicsProjectsAndActivities (revision 1.7)EditAttach
Epics@GSI Webhome

Projects & Activities

EPICS installations

Installations of EPICS at GSI – step-by-step

This section 'EPICS Installation at GSI' explains step-by-step with code snippets the installation of all parts used at GSI.
Status: ongoing
-- PeterZumbruch - 14 Jul 2009

Hardware Platforms

    Introduction

    In contrast to the standard EPICS installations, cross compiler and several other things are needed first.

    Generic steps:
    • Prerequisites
      • Installation of cross compiler (could be included already in the normal gnu compiler suite)
      • Installation of software development kit (if available)
    • then
      • ... either (recommended) using the cross compiler for EPICS build
        • create/modify EPICS target and host specific CONFIG/CONFIG_SITE files
        • built target specific executables, libraries and applications
      • ... or compile on target system specific OS
        • Download of all sources (LINUX kernel and driver)
        • Compilation of the kernel plus tools (busybox for example)
        • transfer to the target hardware
        • Compilation of EPICS inside the development package
    • Finally
      • (Transfer to the target hardware)
      • Test the IOC on the target machine.
    How-to's by EPICS wiki
      Have a look at the How-Tos at the epics wiki, especially at:
      -- PeterZumbruch - 10 Nov 2011


    Architecture: ETRAX's CRIS by AXIS

      The ETRAX 100LX MCM from AXIS (Wikipedia: en/de) is the core of several boards (e.g. HADControl (HadCon), TRB) developed at our department.
      To implement EPICS for this architecture two options are offered:

      • Cross compiling EPICS for the ETRAX CRIS architecture
        • using the build system of EPICS
          • contained in the in EPICS base since release 3.14.10

      • DIM as intermediate protocol with DIM API compiled for ETRAX CRIS
        • using the EPICS-DIM Interface


      ... more see Cris Architecture Page

      Status: completed (host:x86); documentation:50% :
      -- PeterZumbruch - 10 Nov 2009

    Plugcomputer: DreamPlug / GuruPlug / SheevaPlug

      The so-called plug computer family of GLOBALSCALE technologies is an interesting platform based on ARM5 Marvell core to have a quite powerful front-end PC available. Ways to run EPICS on it are documented.

      ... more see PlugComputer

      Status: starting documentation:1% :
      -- PeterZumbruch - 04 Sep 2013

    HadCon / HadShoPoMo / HadControl - Multipurpose Control Board

      edit

      HadCon is a general purpose IO module for detector and experiment control as well as for small data acquisition systems.

      hadcon

      (HADControl general purpose board) Since its first application has been a power monitor for the Hades Shower Detector it has been formerly introduced and well known as HadShoPoMo (Hades Shower Power Monitor (HADControl/HadShoPoMo general purpose board).

      HadCon has an SoC on-board, ETRAX 100LX MCM 4+16 from AXIS (Wikipedia: en/de) - which will be discontinued, see the new HadCon2.

      Running a standard Linux the Etrax provides "Connectivity to the world" via TCP/IP.
      On the other side it connects via its internal serial interface to an ATMEL AT90CAN128 microcontroller and optionally to an Xilinx CPLD.
      Via this junction the ATMEL provides a multitude of possible connections to field buses and general I/O ports.

      EPICS base and its applications, modules, and extensions can be cross-compiled to run on Etrax Axis' CRIS architecture (see section Architecture: ETRAX's CRIS by AXIS

      • Summarizing:
        • CPU: AXIS ETRAX 100LX MCM 4+16
        • Microcontroller: ATMEL AT90CAN128
          • I2C (internal)
            • 2 × 4-channel 8-Bit DAC - Digital-to-Analog Converter
          • CANbus
            • galvanically isolated CAN - High-speed CAN Transceiver
              • optional external power supply
          • SPI
          • ADCs
          • RS232
          • 32 digital I/Os
        • CPLD: Xilinx XCR3064XL-6CS48C
        • 2 × Rotary Code Switches, hexadecimal coding
        • Ericsson PME 5218TS switching regulator for up to 6A 3.3V power usable for other boards
        • full EPICS support


      ... more see HadCon

      Status:Just a hardware documentation:100% :
      -- PeterZumbruch - 21 Mar 2013

    HadCon 2 - Multipurpose Control Board

      HadCon2 is a credit-card sized general purpose I/O module for detector and experiment controls as well as for small data acquisition systems.

      hadcon2

      It is the successor of the discontinued first version HadCon ( HADControl/HadShoPoMo general purpose board, HadCon @ Epics Wiki).

      The module has an ATMEL AT90CAN128 microcontroller providing a multitude of connectivity:
      I2C (8/4 fold (intern/extern) multiplexer), 6 channel 1-wire master, 8-channel 8bit DAC, galvanically isolated CAN - high-speed transceiver, 8-channel 10-bit SAR ADC, byte-oriented SPI, in total up-to 53 programmable I/O lines and optionally a Lattice MachX02 FPGA for fast data processing tasks.

      While the discontinued precursor HadCon had an SoC on-board, its successor HadCon2 has broken up this concept in favour of a more open access:
      It doesn't have any CPU on board, but a USB connector to directly allow communication with any type and size of computer (e.g. PC, raspberry PI, dreamplug, ...) having an USB port on one side and at the other end the microcontroller and the FGPA. This communication is based on an ASCII-based protocol in view of easy implementation in detector control systems like e.g. EPICS and LabVIEW.

      • Summarizing:
        • Microcontroller: ATMEL AT90CAN128
          • I2C
          • CANbus
          • SPI
          • ADCs
          • ...
        • FPGA: Lattice MachX02-1200-HC
        • FTDI USB to serial UART interface
          • USB 2.0 connector
          • Power over USB
        • I2C devices
          • 6 × Single-Channel 1-Wire Master
          • 1 × 8-channel I2C-bus multiplexer with reset
          • 2 × 4-channel 8-Bit DAC - Digital-to-Analog Converter
        • galvanically isolated CAN - High-speed CAN Transceiver
          • optional external power supply
        • 2 × Rotary Code Switches, hexadecimal coding
        • Reset Button for ATMEL
        • 11 × LED's, free programmable


      ... more see HadCon2

      Status:Just a hardware documentation:100% :
      -- PeterZumbruch - 18 Jul 2013

    OWADC1 - 1-wire 8-channel ADC board

      OWADC1 (w/o) connector J1/J2

      OWADC1 is a small, compact board designed by M.Traxler and S.Voltz (GSI/EE) to provide an 8 channel, max. 16bit ADC to be accessed by 1-wire protocol

      ... more see OWADC1 - 1-wire 8-channel ADC board

      Status:Just a hardware documentation:25% :
      -- PeterZumbruch - 16 Feb 2012

    HADES I/O Box

      Based upon the HadCon2 multi I/O board, the DreamPlug Plug Computer, and the 1-wire based ADC board OwAdc a small, slim, multi analog/digital I/O box is built.

      Its first use case will be the replacement of old hardware in the HADES experiment at GSI. It provides:
      • CPU/OS:
        • ARM based "standard" Linux
      • Data access
        • internal USB interface
        • via ASCII-based protocol
        • EPICS compliant
      • I/O
        • 16 (differential/single ended) ADC analog input channels 0-5/10 Volts
        • 16 I/O channels
        • 16 DAC channels
        • 6 "separate" 1-wire busses (common GND/Power)
        • CAN bus interface
      • adaptable 1U 19" housing

      ... more see HADES I/O Box

      Status:Kick off meeting :
      -- PeterZumbruch - 12 Sep 2011


Attic

The project activites within this section are considered to be discontinued or only resumed upon request.
    Virtex4/5, Spartan

    Discontinuation

    • Meanwhile there seems to be no longer interest in this project from the side of CBM. Therefore this project is considered to be closed and discontinued.

    • At ICALEPCS 2009, Miroslaw Dach, PSI, mailto:miroslaw.dach_at_psi.de, presented running solutions for EPICS application embedded into an Virtex 4 or even Virtex 5.
      During private coversation he stated, that it took him several years to have it running, but now he is confident to present solution for new application and Virtex based platforms within a day.

    • Another Solution - Linux 2.6 available on Virtex4 FX 12. Have a look at my FREEDAC Ljubljana Notes on Victor Pucknell, Daresbury

    -- PeterZumbruch - 10 Nov 2009

    The future FAIR Experiment CBM intends to use Virtex4 based front-end electronics.
    ... more see Project page
    Status: development discontinued
    -- PeterZumbruch - 10 Nov 2009
-- PeterZumbruch - 10 Nov 2009


Device Driver/device support modules and Interfaces

    EPICS DIM interface

    The basic idea of this device support module for EPICS is to provide an interface to the DIM protocol in order to read/write EPICS data seen from the DIM world and to act from EPICS as client/server for services and commands in the DIM regime.

    ... see EPICS DIM interface for further information.
    Status: running system, documentation: 50%
    -- PeterZumbruch - 18 May 2010
      DABC extension to the EPICS DIM interface

      Based upon the existing EPICS DIM interface several data structures provided by DABC (Data Acquisition Backbone Core) transporting values together with additional attributes, similar to EPICS records, via the transport mechanisms of DIM should be able to be accessed from EPICS via an extension to the above mentioned original interface.

      ... see DABC extension to the EPICS DIM interface for further information.
      Status: project init phase, documentation: 5%
      -- PeterZumbruch - 26 May 2010

    HADCon(trol) / TRB based controls

    The HADCon(trol) general purpose board provides access to many external interfaces and devices. This section is about interconnecting those with the EPICS technology.
      Temperature measurement HADCon(trol)

      The HADControl general purpose board provides access to many external interfaces and devices.
      The task is to replace the already running ansatz of the HADES MDC Gas Monitor temperature measurement by a pure EPICS based design.

      ... more see Project Page
      Status: implemented:100%; documentation: <10%
      -- PeterZumbruch - 21 Mar 2013

      CANbus implementation on HADCon(trol) and control via access

      The objective of this project is the implementation of a software on the HADCon(trol) board's AVR micro controller. This software enables the control of AVR micro controller's CANbus Interface using an (ASCII based) Application Programming Interface (API). Integrated via streamDevice driver into EPICS the control of CANbus devices will be possible within EPICS.

      ... more see Project Page

      Status: implemented 90%; documentation:50% :
      -- LindaFouedjio - 02 Feb 2009

      Multi-purpose control implementation on HADCon(trol) for HADES

      edit

      HadCon is a general purpose IO module for detector and experiment control as well as for small data acquisition systems.

      hadcon

      (HADControl general purpose board) Since its first application has been a power monitor for the Hades Shower Detector it has been formerly introduced and well known as HadShoPoMo (Hades Shower Power Monitor (HADControl/HadShoPoMo general purpose board).

      HadCon has an SoC on-board, ETRAX 100LX MCM 4+16 from AXIS (Wikipedia: en/de) - which will be discontinued, see the new HadCon2.

      Running a standard Linux the Etrax provides "Connectivity to the world" via TCP/IP.
      On the other side it connects via its internal serial interface to an ATMEL AT90CAN128 microcontroller and optionally to an Xilinx CPLD.
      Via this junction the ATMEL provides a multitude of possible connections to field buses and general I/O ports.

      EPICS base and its applications, modules, and extensions can be cross-compiled to run on Etrax Axis' CRIS architecture (see section Architecture: ETRAX's CRIS by AXIS

      • Summarizing:
        • CPU: AXIS ETRAX 100LX MCM 4+16
        • Microcontroller: ATMEL AT90CAN128
          • I2C (internal)
            • 2 × 4-channel 8-Bit DAC - Digital-to-Analog Converter
          • CANbus
            • galvanically isolated CAN - High-speed CAN Transceiver
              • optional external power supply
          • SPI
          • ADCs
          • RS232
          • 32 digital I/Os
        • CPLD: Xilinx XCR3064XL-6CS48C
        • 2 × Rotary Code Switches, hexadecimal coding
        • Ericsson PME 5218TS switching regulator for up to 6A 3.3V power usable for other boards
        • full EPICS support

      This projects' objective is to combine all existing HadCon (HADControl general purpose board) implementations into one μController code for its ATMEL AT90CAN128:
      • CANbus (based on the thesis and work of L.Fouedjou, see Project Page)
      • One-Wire bus implementation
        • ADC
        • DAC
        • Temperature
        • Switches
      • HadCon's internals
        • DACs
        • ADCs
      • ...


      ... more see Project Page

      Status: implemented 50%; documentation:10% :
      -- PeterZumbruch - 29 Mar 2010

      Multi-purpose control implementation on HADCon(trol) 2 for HADES

      HadCon2 is a credit-card sized general purpose I/O module for detector and experiment controls as well as for small data acquisition systems.

      hadcon2

      It is the successor of the discontinued first version HadCon ( HADControl/HadShoPoMo general purpose board, HadCon @ Epics Wiki).

      The module has an ATMEL AT90CAN128 microcontroller providing a multitude of connectivity:
      I2C (8/4 fold (intern/extern) multiplexer), 6 channel 1-wire master, 8-channel 8bit DAC, galvanically isolated CAN - high-speed transceiver, 8-channel 10-bit SAR ADC, byte-oriented SPI, in total up-to 53 programmable I/O lines and optionally a Lattice MachX02 FPGA for fast data processing tasks.

      While the discontinued precursor HadCon had an SoC on-board, its successor HadCon2 has broken up this concept in favour of a more open access:
      It doesn't have any CPU on board, but a USB connector to directly allow communication with any type and size of computer (e.g. PC, raspberry PI, dreamplug, ...) having an USB port on one side and at the other end the microcontroller and the FGPA. This communication is based on an ASCII-based protocol in view of easy implementation in detector control systems like e.g. EPICS and LabVIEW.

      • Summarizing:
        • Microcontroller: ATMEL AT90CAN128
          • I2C
          • CANbus
          • SPI
          • ADCs
          • ...
        • FPGA: Lattice MachX02-1200-HC
        • FTDI USB to serial UART interface
          • USB 2.0 connector
          • Power over USB
        • I2C devices
          • 6 × Single-Channel 1-Wire Master
          • 1 × 8-channel I2C-bus multiplexer with reset
          • 2 × 4-channel 8-Bit DAC - Digital-to-Analog Converter
        • galvanically isolated CAN - High-speed CAN Transceiver
          • optional external power supply
        • 2 × Rotary Code Switches, hexadecimal coding
        • Reset Button for ATMEL
        • 11 × LED's, free programmable

      This project's objective is to adopt the project specification made for the Multi-purpose control implementation on HadCon to the new but very similar hardware of HadCon2. This includes the access to the different devices via an ASCII based protocol. This provides:

      • ATMEL's internal
        • ADC, SPI, CANbus, I2C, Registers
      • Communication with MachX02
      • I2C
        • 1-Wire bus implementation via I2C
          to access 1-wire sensors and actuators:
          • ADCs
          • Temperature sensors
          • Switches
        • DACs
      • Relay applications
      • ...


      ... more see Project Page

      Status: implemented 10%; documentation:30% :
      -- PeterZumbruch - 14 Jun 2012

    PLC Industrial Control devices

    In this section several industrial control devices running PLC or SPS programs are addressed
      SattCon 200, ABB, HADES cryo control

        There is a request of HADES to be able to integrate readings from the control system of their cryo system control into the EPICS control system of HADES Maybe, in a second step, also changing of values is of interest.
        Right now the system runs a PLC on an ABB SattCon 200 system, which can be accessed by a Windows based control PC, via the ABB Automation PC-based programming tool DOX 10.

        ... more see Project Page

        Status: evaluation whether it becomes a project - turned out to be not feasible; documentation:10% :
        -- PeterZumbruch - 29 Jul 2011


      Beckhoff Device Access via EPICS ModBus
      - CBM RICH test mirror positioning system
      - Summer Student Project 2011

        As part of the summer student program 2011 at GSI this projects objective is to develop, evaluate an exemplary motor control, on basis of basic existing components which will
        • use Beckhoff devices
        • be accessed via modBus
        • be controlled via EPICS
        • be displayed, e.g. with CSS
        • (offered to be) used for TASCA, CBM, HADES

        UPDATE
        Meanwhile the project became more detailed, since CBM showed interest to have a RICH mirror setup motor controlled. This setup requires to have 2 servo motors with a gear reduction to tilt a gimbal mounted planar mirror element (400 mm × 400 mm) in 2 directions. It is foreseen to use this setup during CBM's next test beam time.
        TASCA
        Until the ordered parts have arrived, we could use spare equipment of TASCA to develop and test. Thank you.


        ... more see Project Page

        Status: project finished; documentation:75%
        -- PeterZumbruch - 10 Aug 2011





CSS developments & projects

Integration of DIM into CSS

Martin Feldmann faced the project of integrating the DIM protocol into CSS to be able to be accessed with in the Control System Suite.
... more see Project Page
-- PeterZumbruch - 29 Jun 2010


Collection of connections and evaluation on connecting to other control systems

There have been and for sure will be some requests on the question “How can I read/write/monitor variables from control system XYZ?”
In some cases this is realized in writing a device support module for a soft device, in other cases it means teaching the opponent to use the Channel Access protocol of EPICS, or using an intermediate Data Access Layer, or something else.
This section summarizes and collects some existing - mostly external - solutions and trials - mostly internal - to let EPICS “talk” to “others”.

    LabVIEW® by National Instruments

    ... for details have a look at: Connecting LabVIEW® and EPICS

    MonALISA

    ... for details have a look at: Connecting MonALISA and EPICS

    DAL by cosylab

    ... for details have a look at: Using DAL to connect EPICS to other systems

    CSS - Control System Studio by DESY

    ... for details have a look at: Using CSS - Control System Studio to connect to EPICS
-- PeterZumbruch - 05 Jun 2008

Applications

    HADES MDC Gas Monitor

    The large scale HADES Experiment at GSI uses drift chambers for particle tracking purposes. In order to monitor the gas pressure of the filling gas the MDC Gas Monitor NIM module has been developed. It serves primarily as an interlock for the high voltage in case the pressure is out of its working range. For the remote controlling and monitoring of the pressure, of the interlocks thresholds and of several temperatures of critical electronic components the general purpose board HADControl (aka HADSHOPOMO) is used. This board, designed and developed by the EE department of GSI (M.Traxler) is based on the ETRAX single chip computer by AXIS running Linux.

    This projects tasks is
    • to monitor via EPICS
      • the temperatures which are read out via single-wire bus protocol
      • the voltage, representing the gas pressure
    • to control and monitor via EPICS
      • lower and upper threshold settings for the interlock for the HV supply, which reacts on the gas pressure.

    For this purpose the results of several projects of the EPICS and HADES groups at GSI are used.


    ... more see Project Page for details
    Status: running system, documentation: 80%
    -- PeterZumbruch - 23 Mar 2007

    HADES RPC Threshold setting and Temperature/Voltage/Current Monitoring

    The large scale HADES Experiment at GSI upgrades the new RPC (resistive plate chamber) detector of HADES.
    The readout is based upon the TRBv2: General Purpose Trigger and Readout Board (pdf)
    Therefore the RPC setup requires control and monitoring elements to set and read two threshold settings for each RPC channel.
    In addition 1-Wire© bus based temperature sensors on DAQ boards have to be monitored.
    These data are collected via the AXIS' ETRAX FS chip on the TRBv2 board responsible for the DAQ. Since EPICS can be run on ETRAX's cris architectures, EPICS will be used to provide this functionality.
    As a further device the proposed Low Voltage Supply Board's temperature, voltages and currents have to be monitored via the ETRAX LX based HADcon(trol) general purpose board module (a.k.a. HADShoPoMo).


    ... more see Project page for details.
    Status: currently developed
    -- ElenaCastro - 10 Oct 2007

    HADES RPC Gas System Monitor

    Besides the Threshold setting and Temperature/Voltage/Current Monitoring the RPC (resistive plate chamber) detector of HADES requires EPICS based monitoring of their gas system parameters.
    The data of the gas system are retrieved by a proprietary hardware controller controlling/monitoring flow (set/get), and (differential) pressure (get). It is accessible via CANbus. This CANbus is connected to a HADcon(trol) general purpose board, where an EPICS Server is running. This IOC collects the data provided by the HADcon's microcontroller via the streamDevice protocol and provides them to EPICS clients such as a CSS based BOY GUI build for this purpose.

    boy gui


    ... more see Project page for details.
    Status: running remote setup (Coimbra), documentation: 110%, project finished, extended on request
    -- PeterZumbruch - 03 May 2011

    HADES Magnet Hall Sensor - Magnetic Field Monitor

    Using the port folio of HadCon based applications the objective of this project is to realize a reading of several hall sensor values to be available inside HADES EPICS based control system.

    The major components are:

    Notes:
    • For this application 2 sensors are planned which feed separate 1-wire buses.


    ... more see Project page for details.
    Status:design started, documentation: 10%
    -- PeterZumbruch - 21 Mar 2013

    HADES DAQ Monitor

    The HADES data acquisition system is based on the trbnet architecture. Its status and controls are accessed via the command (shell,library) trbnet. Up to now its (ASCII) output is efficiently parsed by perl routines and displayed in an ASCII view or forwarded to gnu-plot. Those plots are dynamically created depending on the data return of trbnet and its dynamic configuration.
    In view of an integration of at least the monitoring features into the already used EPICS system at HADES this data flow should be extended/replaced.
    Possible problems might occur due to missing features for dynamic behavior of the gui (maybe solved by JavaScript scripts, using BOY GUIs of CSS (SNS)), insufficient performance, and/or complex data structures to transport.


    ... more see Project page for details.
    Status: first dummy implementation for playground, documentation: 50%
    -- PeterZumbruch - 14 Apr 2011

    HADES DAQ Event Builders

    HADES data acquisition's event builders have dedicated IOCs which:

    • - by methods of memory mapping -
      provides information about the status,
    • AND
      - by a master and slave mechanism -
      provides an efficient method to synchronize and load balance up to 16 event builder cores each of it having up to 25 input streams.

    This EPICS based design has been originally develloped and maintained by Sergey Yurevich, HADES, GSI. Since he left GSI, the HADES collaboration, and science at all, I (PZ) have been asked to take over maintenance and further requests.

    Event Builder IOC concept Event Builder Database design Event Builder Main GUI

    The objective of this project is therefore to provide an additional documentation of the system and a collection of links to the existing documentation of the HADES collaboration's wiki.


    ... more see Project page for details.
    Status: in principle a summary and collection of links for maintainance an existing system, documentation: 5%
    -- PeterZumbruch - 06 Jul 2011

    trbnet 2 EPICS implementation (Documentation)

    Starting within the HADES project, an EPICS application for the readout of the CTU (central trigger unit) has been built by Burkhard Kolb. This EPICS IOC connects to the "==trbnet== command server" and, reads and writes array blocks of information, using the libtrbnet library into EPICS asub records. In a second step, up-to-now: integrated, but to be disentangled in future, the CTU specific information is derived by breaking the information down into single units of information by properly decoding the basic information. When writing this information has to be combined before writing again to the trbnet.

    The following elements are used and/or described:


    ... more see Project page for details.
    Status: , documentation: 10%
    -- PeterZumbruch - 16 May 2011

    FOPI mbsMonitor

    MBS status IOC.
    • In order to connect to the MBS status port an IOC was programmed by Jörn Adamczewski.
    • A medm user interface is available from Hans Essel.

    The FOPI experiment at GSI is/was(?) using this interface to monitor the status of its MBS experiment.
    ... more on FOPI's usage of the MBS monitor
    Status: running system
    -- PeterZumbruch - 14 Sep 2007
    -- PeterZumbruch - 06 Sep 2007

Documentation and Overview of HADES slow control system

Collaboration(s)

HADES

CBM

PANDA

-- PeterZumbruch - 27 Jan 2011


-- PeterZumbruch - 12 Jan 2010
Edit | Attach | Print version | History: r10 | r8 < r7 < r6 < r5 | Backlinks | View wiki text | Edit WikiText | More topic actions...
Topic revision: r7 - 28 Feb 2011, 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 Foswiki? Send feedback