Skip to content. | Skip to navigation

Personal tools
You are here: Home Events Modelica'2017 Partners Tutorials and vendor sessions

Tutorials and vendor sessions

Confirmed tutorials and vendor sessions


The call for tutorials has already been closed. Here is a list of confirmed tutorials in aphabetical order.


1. Dassault Systèmes: Test-Driven Library Development: Best practices and usage of Modelica testing solutions including the novel Testing Library

This tutorial gives an introduction to existing Modelica testing solutions including the novel Testing Library of Dassault Systèmes. It is shown in detail how tests for Modelica classes can be crated and run.

Due to the component based and object oriented modelling approach Modelica classes typically depend on a big number of other classes. Hence it is hard to ensure that no unwanted changes or errors are introduced anywhere if a class is modified. Also the upgrade to a new library or tool version is a critical process: developers must check if their classes behave like they did before the upgrade was performed.  Running unit tests helps to discover such problems and they gained wide acceptance in software development, like junit for Java programming or nose and py.test in python. We will discuss how the concept of unit tests can be applied in the Modelica world and show which possibilities exist to create and identify tests and what effort is needed to maintain the test models.

The Modelica landscape already has a big number of testing solutions to offer, so we will have a look on the different implementations and analyse their capabilities. The new Testing library from Dassault Systèmes will also be presented in the tutorial. It contains the required components to create test models and to generate reference results. The library was designed such that test models can be created and maintained with low effort - all within Dymola. Finally it is shown how the Testing library can be used to run the tests periodically using Python and Jenkins.

In the hands-on session the course participants can implement their own test model with the Testing Library. As it is not released yet, a copy of the library with a time limited license will be handed out.

At the end of the workshop the participants should be able to create test models with the testing solution that is tailored to their needs.

Dassault Systemes Tutorial Slides


2. Cancelled


3. DLR: Multilevel modelling using the Actuator Library and systematical introduction of faults using the FaultTriggering Library

The tutorial is aimed at advanced Modelica users. It introduces attendees to the concept of multi-level modelling, the Actuator Library and the open source FaultTriggering Library. An example design of an Electromechanical Actuator (EMA) will be created. This creation involves all steps of the model design process, from pre-design up to detailed design stage.

For this multi-level modelling approach, Modelicas object orientation features will be extensively used to create a model which can grow with the modelling needs of the user. The design will be started from a simple representation of an actuator using ideal transformers. Gradually, more complex models will be introduced to include the nonlinear behavior of the components (e.g. backlash, load dependent friction and motor saturation). As last step, non-nominal behavior in case of faults will be introduced. The modelling of such faulty behavior plays, among others, an important role in the development of Health Monitoring (HM) and Fault Detection (FD) functions. The FaultTriggering library will be used to systematically introduce a fault in a bearing model. Finally, a model with multiple faults will be analyzed.

DLR tutorial slides


4. ESI: Modeling of a Mobile Inverted Pendulum System (MIPS)

Powerful, miniaturized and cheap single board computers such as BeagleBone, Raspberry Pi® or Arduino are increasingly utilized in education, for realization of hobby projects or as prototyping hardware for embedded systems. During this tutorial the possibility will be shown how SimulationX can be beneficially used for the development of systems with such hardware. A self-balancing two-wheeled vehicle was developed and built as a demonstrator for model based development. This mechatronic system shall meet the following requirements:

The proposed tutorial “Modeling of a Mobile Inverted Pendulum System” is both listening, modeling and hopefully learning. The tutorial is based on the V-cycle of the development process, that is starting from requirements, component design, system integration and prototyping resulting in virtual and real testing via several design iterations. It features hands-on-experience as you will get and use SimulationX (Windows 7 or newer required), perform modeling tasks based on the provided templates and libraries and watch the real vehicle in action. The real benefit for you is to see the design and development process in action where Modelica is the method of choice. Please check the PDF that includes comprehensive figures for a better understanding of the objective of the tutorial.

Materials are provided upon request.


5. KTH: Cyber-Physical Modeling of Electrical Power Systems using OpenIPSL and OpenModelica

The Modelica language, being standardized and equation-based, has proven valuable for the for model exchange, simulation and even for model validation applications in actual power systems. These important features have been now recognized by the European Network of Transmission System Operators, which have adopted the Modelica language for dynamic model exchange in the Common Grid Model Exchange Standard (v2.5, Annex F).

Following previous FP7 project results, within the ITEA 3 openCPS project, the presenters have continued the efforts of using the Modelica language for power system modeling and simulation, by developing and maintaining the OpenIPSL library:

The tutorial first gives an overview of the origins of the openIPSL and it’s models, it contrasts it against typical power system tools, and an introduction the OpenIPSL library.

The new project features that help in the OpenIPSL maintenance (use of continuous integration, regression testing, documentation, etc.) are also described.

The second part of the tutorial consists of working with three examples, we assume you have very little experience with OpenModelica and the Modelica language, so detailed instructions are provided.

In the first example, you will work setting up a power system from scratch and performing simulations using OpenModelica and the OpenIPSL. The second example consists on performing linear analysis and implementing a power system stabilizer for the model of example one.Finally, in the third example, you will perform simulations of a typical IEEE 9-Bus power systems and perform a simple analysis of results.

Youtube Videos! See an overview of OpenIPSL here:

Materials can be found at github.


6. Modelon: Optimized control and operation of coupled energy systems

In this workshop, new co-simulation and optimization tools applied to interacting energy systems will be presented through hands on case studies and examples.

Energy production has become increasingly diverse with the rise of renewable generation (wind, solar, hydro, geothermal, etc.) in combination with traditional generation approaches. With an increasing focus on efficiency, energy consumption is also undergoing change in terms of the spatial and temporal aspects of energy usage (i.e. load shifting and storage, distributed and co-generation, demand limiting consumption, etc.). These factors present challenges to modeling, simulation, control and optimization. In this tutorial, we will discuss new tools and techniques to address them.

Several institutions participating in the IEA EBC Annex 60 are developing models for energy systems, these libraries span different technological domains and adopt various paradigms in terms of library structure and interfaces. Using co-simulation via the open source Modelon PyFMI package, examples of techniques to simulate the interaction between energy producers (power generation) and consumers (i.e. a commercial building from the LBL library) will be presented. Optimization of the control of these interconnections (amount of energy flow and timing) will be demonstrated using open source python-based tools.

Accurate model predictions are needed for optimization of energy systems and one section of the tutorial will be devoted to parameter estimation and tuning using dynamic optimization techniques. Once assimilated to data, dynamic optimization will again be used to demonstrate optimal control of a large chiller system.

The tutorial leverages new features in, an open source tool for simulation and optimization of Modelica models.

Please find attached the installation instructions to have all software installed before the tutorial starts. On site we will have limited bandwidth, and use time better spent in the tutorial. In case you don’t manage to install JModelica before the tutorial, we will have USB-sticks with the installers available on-site as well.


7. OpenModelica: Introduction to Modeling, Simulation, Debugging and Optimization with Modelica and OpenModelica

This tutorial gives an introduction to the Modelica language, the OpenModelica environment, and an overview of modeling and simulation in a number of application areas. Moreover, an introduction to debugging Modelica  models will be given, and an introduction of model-based dynamic optimization with OpenModelica including  goal functions, constraints, convergence. Some advanced features of OpenModelica will be demonstrated,  including clocked synchronous support, real-time embedded code generation, enhanced OMPython. A number of hands-on exercises will be done during the tutorial, both graphical modeling using the Modelica standard library and textual modeling. Bring your laptop for exercises. 

Approximate Schedule: 1. Modelica background. 2. Graphical modeling and simulation introductory exercise. 3. Overview of the OpenModelica environment. 4. Hands-on model debugging exercise. 5. Modelica language concepts. 6. Hands-on textual modeling. 7. Modelica discrete event, hybrid, clocked synchronous, state machine. 8. Small discrete-event and small state machine exercise. 9. Modelica concepts of components, connectors and connections 10.  Short overview of the Modelica standard library. 11. More advanced Graphical modeling exercise. 12. Model-based dynamic optimization with OpenModelica and exercise. More information...


8. OTH: Control of Electric Drives

Based on the equations of an electric drive and the inverter the principles of cascaded control of electric drives will be explained. Starting with the innermost current controller, proceeding with the speed controller, and adding a position controller, the choice of controller types and the optimal controller parameterization are illustrated with examples in Modelica. Topics like feed-forward, limited controller output and anti-windup are adressed.

Basic knowledge in Modelica and control engineering are required.

The participants will receive a hand-out of the presentation and the Modelica library used and implemented during the workshop on an USB-stick.

The workshop is based on lectures held at East-Bavarian University of Applied Sciences Regensburg.

Either the participants work on their own notebooks, having a Modelica tool already installed, or computers with an installed Modelica tool are available on-site.

 OTH tutorial slides and source codes.


9. Cancelled


10. UDK: Continuous Integration: Testing Modelica libraries

This tutorial gives an introduction to Continuous Integration (CI) for Modelica library developers. The tutorial assumes the developer already knows and uses git in combination with github and wants to run tests on a daily basis or triggered by events (e.g. a Pull Request). The participants can choose between a tutorial for Jenkins+Dymola or a tutorial for TravisCI+OpenModelica.

Material provided includes a step-by-step manual collaboratively written as a github wiki, a github repositry with Modelica code that can be forked, edited and tested, various possible test scripts for different use cases, a VirtualBox image running Ubuntu, Jenkins and Dymola (in demo mode), and a TravisCI configuration file for running OpenModelica on Ubuntu.

Slides from the tutorial.


11. Wolfram: Build your Own Hardware Lab with Modelica and Arduino!

By combining Modelica and Arduino it is possible to quickly create prototypes and hardware labs of a wide-variety of systems. You can use your Arduino to either control some physical system, like a robot, or to actuate on a virtual system. This blog includes several examples of things you could do, from controlling a physical robot to disturbing a virtual inverted pendulum modeled in Modelica.

In this hands-on tutorial you will develop a small hardware lab using Wolfram SystemModeler and the Wolfram ModelPlug Library. We will also show case larger systems and hand out the "recipe" to create your own replica of these hardware labs.

It is very important that these programs are installed before the tutorial, as it might take a lot of time to download and install them due to limited bandwidth:

The hardware needed (except your laptops), including Arduinos, sensors and actuators, will be provided by Wolfram.

If you encounter any problems during download/installation, or have any other questions prior to the tutorial, you can contact us at

Previous knowledge about Modelica and Arduino is not necessary.

Wolfram hardware tutorial slides and examples


Vendor sessions   


1. Dassault Systèmes: Dymola and 3DEXPERIENCE evolutions - Key messages from Dassault Systèmes.

This presentation provides with the new enhancements for Dymola applications and 3DEXPERIENCE evolutions, recently available. 

Presenters: Dag BRÜCK, Johannes GERL, Fabrice PINOT



Presentation and demo of the latest DACCOSIM 2016 with new features like the Matryoshka (a DACCOSIM multi-FMU co-simulation exported as an FMU) or a DSL (DACCOSIM Script Language) to automatise the calculation graph design.

Presenter: Jean-Philippe Tavella


3. ESI group: New in SimulationX 3.8 

As of January 2016, ITI is part of the ESI Group. This acquisition provides an opportunity to significantly extend the field of application of ESI Group’s virtual engineering solution, which will from this point be able to offer the combined real-time simulation of two fundamental but separate stages in a product’s development cycle: concept development enabled by realistic modeling of 0D-1D systems and multi-domain virtual prototyping deployed in a 3D-4D immersive environment. In this session we will present new features in SimulationX 3.8 and outline the roadmap for planned interfaces between SimulationX and other ESI solutions such as Mineset. SimulationX 3.8 includes seven new and revised libraries including Belt Drives (MBS), Green City, Non-Newtonian Fluids, Microfluidics, Hydraulic Brake Systems, Electric Machines, and Hydraulic Lubrication. Furthermore, SimulationX 3.8 contains the ability to use the BDF and MEBDF solvers with compiled models resulting in increased performance, and introduces E-Learning, a self-guided course on SimulationX. ESI MINESET enables interactive exploration of data through an advanced suite of visual tools for faster discovery of meaningful trends and cause-effect relationships. The solution is linked to the variant wizard in SimulationX and includes integrated Visualization and Machine Learning (ML) algorithms with collaboration capabilities.

Presenter: Alex Magdanz


4. MapleSoft: MapleSim

MapleSim combines system-level modeling and simulation with powerful analytic capabilities. Our goal with MapleSim is to provide engineers with an easy to use tool for design exploration and simulation.  In this session we will provide an update on MapleSim’s support of the MSL, its support of FMI 2.0, as well as a demonstration of how MapleSim’s unique offerings can benefit those working with Modelica models.


5. Modelon: Modelica and FMI Products from Modelon

This session presents Modelon’s offerings of Modelica and FMI solutions. Modelica libraries for several physical domains, including automotive, aerospace and energy, is highlighted and demonstrated for selected applications along with Modelon’s platforms for Model compilation and Testing. New features of Modelon’s FMI connectivity products, including the FMI toolbox for MATLAB and the FMI Add-in for Excel, are presented. 

Presenters: Johan Åkesson and Johan Andreasson


6. OpenModelica: Status and News on Simulation, Debugging, FMI, and Optimization

OpenModelica - Status and News on Simulation, Debugging, FMI, and Optimization

Presenters: Peter Fritzson, Francesco Casella, Bernhard Bachmann, Adrian Pop, Rüdiger Franke


7. Ricardo: Ricardo - IGNITE

This session will present current status of Ricardo IGNITE. Latest features such as extended Modelica support, new model libraries and usability improvements will be presented.

Presenter: Vratislav Ondrák


8. Wolfram: SystemModeler 5

In this session you will learn about the latest features of SystemModeler 5, including extended Modelica and FMI support, advanced model analytics, and new model libraries.

Presenters: Jan Brugard and Patrik Ekenberg


9. XRG Score: A new Excel-based tool for FMU simulations  

In this session the brandnew XRG SCORE Excel Add-In is presented and demonstrated. SCORE is a summary of useful Excel extensions for users of the Dymola Software (product of Dassault Systemes) or users of Functional Mockup Units (FMU).

With SCORE the user has the option to write scripts out of Excel sheets for serial simulation, run simultaneously simulations (multithreading) and read the results into Excel for post-processing. The SCORE software reads the results and fills predefined Excel sheets with formulas and diagrams.

Presenter: Stefan Wischhusen


Tutorials on Monday - May 15, 2017

Tutorials Web

Vendor Sessions on Monday - May 15, 2017

Vendors Web

Document Actions