|Session 1: Tango Control System for newbies
|Organized by ESRF and SOLEIL, France
- Concepts (30')
- How to develop a Tango server (1H30)
- Tango applications (30')
- Bindings with scientific tools (python, MATLAB, Labview,etc..) (30')
- Tango collaboration organization (30')
|Session 2: Introduction to the CSS Toolbox- a Tutorial (hands on)
Organized by DESY, Germany
Introduction to the CSS Toolbox – a Tutorial (hands on)
CSS is well known as a graphical user interface for synoptic displays and alarm tables. But CSS is much more. It provides a rich set of diagnostic tools and configuration tools. We will guide you through your first steps to configure an EPICS IOC database. Create displays for your channels and display alarms and other kind of messages and diagnose problems.
- Introduction to CSS
- Configure an EPICS database using DCT
- Create a synoptic display (introduction to behaviors and scripts)
- Debugging displays - finding channels in displays etc.
- Alarms, messages and logging: Configuration and display
- Configure trends and archives
- Using basic diagnostic tools like caSnooper, probe, PV Hierachy, Record Property
- Create your own maintenance displays with SDS
Session 3: Set up for success - Creating a development environment from scratch (part I)
|Organized by Softwareschneiderei GmbH, Germany
Most software projects don't leverage today's possibilities of development tool support. In this hands-on workshop, we will set up a platform and language agnostic development environment from scratch using only freely available tools.
We will then incorporate all tools in our work on a little but non-trivial software project. You are invited to mimic the presentation on your own notebook with your favourite programming language and IDE. A list of required and recommended downloads will be published beforehand.
The tools comprise of:
- Version control - We will use Git to store our source code.
- Issue tracking - Redmine contains a issue tracker that suits most basic needs.
- Project documentation - Redmine also contains a sufficiently powerful wiki.
- Continuous integration - Our project will be supervised and built by Jenkins.
- Tests - The main presentation will make use of JUnit (with Java and Eclipse), but you are free to choose your own favourite test framework.
|Session 4: Set up for success - Creating a development environment from scratch (part II)
|(practical exercises require part I, listen any time)
|Session 5: Introduction into the Web2cToolkit
|organized by DESY, Germany
The Web2cToolkit provides a suite of Web-based services for accelerator controls. It allows accessing various control systems including TINE, DOOCS, TANGO, EPICS and STARS. In addition it is used as a test bed to explore novel man-machine-interface MMI) technologies known from the mass market. The tutorial will explain how to install and use the Web2cToolkit and will demonstrate the novel MMI features implemented and the resulting consequences for the design of control applications.
|Session 6: Introduction to noSQL DBs
|Organized by INFN, Italy
Non-relational databases are gaining mindshare as an alternative model for database management especially where speed, performance, flexibility and scalability is an issue. This tutorial will introduce you to noSQL key/value databases focusing on MongoDB, a noSQL implementation, and teach you how to get started with the platform, with special attention to data acquisition services for control systems.
|Session 7: Introductory workshop on programmable hardware
|Organized by KIT, Karlsruhe
The goal of this workshop is to give the attendees an overview of programmable hardware, hardware description languages and the corresponding design flow. The course combines lectures and hands on exercises using state of the art field programmable gate arrays (FPGAs) from Xilinx. During the course attendees will explore the architecture and the available programming methods and tools for these FPGAs.