Middleware concept


The middleware concept

Every modern computer system can be described in layers. The top layer is usually the application that is based on an operating system (2nd layer), which itself runs on the hardware (3rd layer) and controls and communicates with it.

The user usually only sees and interacts with the application. The operating system and hardware act as intermediaries between the application and the outside world (I/O, network). This method assumes that the application is programmed specifically for the operating system. I/O functions and many more fieldbuses often have to be integrated with great effort in a hardware-specific manner. A more flexible approach introduces a new layer between application and operating system – middleware. The application now only communicates with an interface provided by the middleware. The additional effort for programming the communication that would otherwise arise is no longer necessary. Programming is reduced exclusively to the pure application.

Integration at uniform data level

Middleware technologies connect machines and provide the relevant data. In this way they pave the way from the classic automation pyramid to the modern, data-centric approach. This enables end-to-end communication from the individual sensor to the cloud. Open interfaces, for example, allow existing machines that have not yet been designed to meet the requirements of the digital factory to be integrated into a service-oriented architecture. They allow the machine manufacturer as a supplier of production to introduce adaptable machine controls that can be easily integrated into existing production networks.



Gamma VI offers a wide range of integrated functions that can easily be included in your application to help minimize development effort:

  • Multidimensional, hierarchical process variable structures with aliases
  • Application specific functionality of variables through properties
  • Powerful selection tools using browsing and wildcards
  • Simulation / Failure Injection for test systems or for testing middleware-based controls
  • Time model with functions for process control (also in multicore mode), e.g. Scheduler
  • Data logging with numerous database adaptations due to an open interface
  • Automatic limit and threshold checking
  • Easy integration of I/O hardware and field buses via plug-ins:
    • IoT protocols: Connext DDS, MQTT, OPC-UA
    • Field buses: EtherCAT, emBRICK, Modbus, CAN, ARINC429, AFDX etc.
    • Digital and analog I/O and special functions: Synchro/Resolver, LVDT etc.
    • More than 70 buses and I/O Interfaces currently available

I/O Integration

Connecting data to the outside world is easier than ever in Gamma VI. Each I/O channel can be mapped directly to a process variable and the data can be automatically scaled and filtered in various ways. Read accesses to the process variable (PV) now provide the value applied to the hardware. Accordingly, the value at an output is set to the linked process variable by a write access. The configuration is done via XML or via the configuration tool Ga_Builder delivered with Gamma.


The open interfaces of the Gamma-VI platform allow you to connect a variety of I/O hardware and protocols directly to your application. Gamma VI supports common fieldbuses from industry and automation, as well as avionics and automotive. Current middleware and IoT interfaces are also supported. In addition, there are numerous I/O interfaces from basic functions such as analog and digital I/O or stepper motors to demanding precision interfaces like Synchro/ Resolver or LVDT.

  • Common Field Buses
  • Automation and Industrial Field Buses
  • Field buses for avionics and automotive
  • Middleware and IoT-Interfaces
  • I/O Boards and Interfaces
  • Special measuring instruments via GPIB or LXI

Hundreds of other I/O boards can be directly adapted to the middleware via Comedi interface. Plug-ins for new I/O hardware can be created with little programming effort and are immediately supported by the Ga_Builder configuration tool so that they can be connected directly to the middleware. Thus Gamma VI is open for individual hardware solutions and future-proofed for new developments.

Extensive tools

All aspects of the middleware can be configured via XML files. In addition, various tools are available to support you:

Gamma Builder: Configuration tool for easy creation of projects

With Gamma Builder (Ga_Builder) it is possible to create complex data and time models with all I/O functions. The tree structure provides a quick overview of the data model, the time model and the adapted hardware components with the respective linked I/O channels. New elements are added via an easy-to-use context menu. Drag’n’drop operations are available as well as the clipboard. The properties of all objects are directly available for editing. All inputs are checked against an XML schema and any errors that occur are displayed immediately. A double click on the error message automatically opens the incorrect entry and allows a quick correction. Particularly convenient: The Ga_Builder enables browsing of the I/O hardware via the respective I/O plug-in. Within seconds, the available I/O channels for Modbus, EtherCAT or emBRICK terminals or others are available in the configurator for further linking. PLC controllers such as Siemens S7 or TwinCAT are also identified directly and linked to the process data model.


Gamma Explorer: user-friendly tool for manual control of the system

The Gamma Explorer (Ga_Explorer) is a typical implementation and maintenance tool. It offers extensive possibilities for the user to interact directly with the middleware and the running system. For local applications, Ga_Explorer can configure and start the core Gamma Service. For both local and networked data models, the Explorer provides direct access to all process variables in the system.


From here, the user can not only track all values in real time, but can also intervene directly in the process at any time. The Explorer allows direct read and write access to the entire model, both to local and remote process variables. Integrated function generators, which can be linked to any variable, allow the user to generate values via simple functions such as sine waves or saw teeth and feed them into the data model. During runtime, these generators can be edited in frequency and amplitude and switched on and off at any time.


Plots can also be used for graphing the value progression of each variable. Trends can be identified quickly, value ranges can be compared optically and interactions can be traced directly. Although plots do not replace full visualization but they are extremely helpful for diagnostic purposes during development or for monitoring non-visualized systems.

GUI Designer: Freely configurable visualization

The GUI Designer is a convenient way to quickly design simple visualizations and user interfaces for Gamma-based systems. By closely linking our tools, graphical elements in the GUI Designer can be directly linked to the data model. Graphical displays can map any variable in the system, values can be manipulated using slide or rotary controls, and buttons can trigger processes and actions.


The Gamma ecoystem

The Gamma VI middleware is an ideal platform on which different technologies from different manufacturers can be combined.

Together with our partners, we can offer numerous solutions for the Gamma platform. These include vector-based visualization solutions, soft PLC solutions (IEC61131 and IEC61499), textual and graphical, partly model-based, programming methods that are directly based on the data model, as well as development environments connected to the Gamma API. Special tools, e.g. for model-based tests for HIL, MIL and SIL applications, are also available for the test area. The result is a far-reaching ecosystem from which customer-specific solutions can be assembled precisely.

  • For the customer, optimal systems tailored to his needs are created, in which his own core competence can easily be integrated.
  • An easily adaptable system platform is available for the system partner, which also makes it possible to market their own products.