Eclipse-based HMIs for the Embedded World - a Model driven approach
The creation of system-specific HMIs for embedded applications is usually a tedious process requiring a lot of engineering effort. In cooperation with an industry partner a MDD tool chain based on EMF, GEF, and GMF has been developed. It allows the graphical definition of rich project-related HMIs. First experiences with productive client projects showed that development costs could be reduced significantly by the graphical modeling approach. Due to the convincing experiences, the tool chain became an integral part of the companies SCADA solution and basically consists of two central components: (1) a graphical HMI model editor and (2) a HMI runtime component. The graphical GMF-based HMI model editor allows the development of interactive HMIs using widgets from an easily extensible palette of graphical components. These widgets include simple display components such as labels as well as rich animation widgets. Each widget can be connected to the input- and output-signals of the embedded control application that is accessible through a web service access layer. The HMI runtime component renders the widgets using standard SWT and JFace widgets as well as Draw2D for more complex animations. In the presentation the implementation of the MDD tool chain will presented. Additionally, some examples for the various application areas of the modeling chain will be shown. The extensibility of the tooling chain as well as the underlying graphical HMI DSL will be demonstrated.
Daniel is a software engineer, consultant, lecturer and author. Working on various large scale Java SE/EE, embedded and rich client projects for different international companies he gained an experience of 7+ years of professional Java development and 3+ years in the Eclipse RCP field. Daniel is also giving lectures on Java programming, model driven development and rich client application development to bachelor and master students at Beuth Hochschule für Technik Berlin - University of Applied Sciences. Additionally Daniel is speaker and author in the Java / Eclipse and rich client field. Besides being a passionate runner and triathlete he is interested in various Eclipse frameworks (such as RAP, EMF, GMF, GEF), dynamic languages and model-driven development.