EC software SIS/ESR Kickers

Outline

Each kicker contains up to 9 kicker modules. Each of these kicker modules is equipped with two power supplies, to provide for two kicks within short timing distance, and one control unit, handling (setting and reading) module specific parameters. For each kicker one timing unit handles triggering the kickers. The interfacing hardware makes use of modulebus components. Only the high voltage power supplies are are connected by standard interface boards.

The EC software for the kickers is implemented in an object oriented way. The class design reflects the outline of the kicker hardware. The kicker software makes use of classes which are centrally provided for modulebus components.

Kicker Classes

The kicker specific classes are (see class diagram):
LogDev - class to represent the kicker (with all its kicker modules and the timng unit)
Logical Device class for equipment model MK
  Composition of the kicker from kicker modules is handled in attribute:
  • _mkModules : MKModules
MKModCtrl - class representing the parameter handling for kicker modules (module control)
ModCtrl-class contains module control (parallel I/O- and MUX-ADC-hardware) for up to 3 kicker modules
composition from module bus cards is handled by attributes:
  • _crModCtrl: MBCrate*
  • _mkAdc [C_MODCTRL_CNT] : MBMkAdc
  • _mkInl [C_MODCTRL_CNT] : MBMkInl
    with
    C_MODCTRL_CNT : number of kikcker modules handled by one module control crate (SIS and ESR: 3, Q-kicker: 1)
MKModules - class representing one kicker module
Each kicker has at least 1 and up to 9 modules. The modules-class handles all componenents that belong to 1 kicker: - 1 timing module - 1 modules-class object (that contains up to 9 kicker modules)
Composition of the kicker module from module control units, power supplies (two per kicker module) and timing unit is handled by attributes:
  • _mkModCtrl [C_MAX_CTRL_NR] : MKModCtrl
  • _mkPS1 [C_MAX_MODULE_CNT] : IFB
  • _mkPS2 [C_MAX_MODULE_CNT] : IFB
  • _mkTiming [C_MAX_CTRL_NR] : MKTiming
    with
    C_MAX_MODULE_CNT : number of kicker modules (SIS: 9, ESR: 3, Q-kikcer: 1)
    C_MAX_CTRL_NR : number of control units (SIS: 3, ESR: 1, Q-kicker: 1), each handles up to 3 modules
MKTiming - class representing the timing unit (the trigger unit) for one kicker
Kicker timing-claass contains modulbus hardware for all kicker modules (up to 9 kicker modules):
- 1 or 2 kicker counter modules
- 1 Trigger module
- 1 Interlock module
composition from module bus cards is handled by attributes:
  • _crTiming : MBCrate*
  • _mkCnt : MBMkCnt
  • _mkTrgCompLevel : MBMkTrg
  • _mkTrgInl : MBMkInl
  • _mkTrgStartLevel : MBMkTrg

Modulebus Classes

The equiment software for the kicker uses general modulebus classes which are provided for several types of modulebus components (see class diagram).

General modulebus classes:
MBCrate - One modulebus crate
equipped with several modulebus components
MBCrateList - Several modulebus crates
Interfacing may combine several crates
MBModul - Module
Base class for modulebus cards
MBIO32 - 32-Bit-IO-Card
Parallel digital I/O

Classes for modulebus components, which are developed specifically for the kickers:
MBMkAdc - Kicker-ADC
ADCs only
MBMkCnt - Kicker-Counter
Counters, used to measure time
MBMkInl - Kicker-Interlock
Based on 32-bit I-O
MBMkTrg - Kicker-Trigger
Set some levels

UML Diagrams

Two class diagrams are provided, one for the classes modelling kicker elements (diagram kicker classes) and one for centrally provided classes for modulebus elments (diagram modulebus classes). The diagrams are generated from the code implementation, using the Umbrello UML modeller.
Topic attachments
I Attachment Action Size Date Who Comment
kicker.pdfpdf kicker.pdf manage 29 K 01 Jul 2021 - 13:23 UdoKrause Class diagram for the equipment software for SIS/ESR kicker
modulbus.pdfpdf modulbus.pdf manage 28 K 01 Jul 2021 - 13:24 UdoKrause Class diagram for modulebus classes which are used by the equipment software for SIS/ESR kicker
Topic revision: r6 - 01 Jul 2021, UdoKrause
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