Tutorials and vendor sessions
Confirmed tutorials and vendor sessions
The call for tutorials has already been closed. Here is a list of submitted tutorials in aphabetical order. Not all might be taking place, if they do not reach enough attendees.
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.
Learn using Modelica with a tool of your choice
This tutorial offers a basic hands-on introduction in modeling and simulation with Modelica. The tutorial is aimed at people with little or no practical experience in using Modelica. All participants have the opportunity to create a model of a controlled inverse pendulum in a graphical way. This model will demonstrate the strength of Modelica by combining different fields of engineering. To this end, mechanical, electrical, and control components are simulated in a single environment.
For the tutorial, you can use any Modelica tool that supports graphical modeling. For participants with no tool at hand, demo versions will be provided by tool vendors. According to the current planning, at least Dymola, OpenModelica, SimulationX, and SystemModeler will be provided
In addition to the basic modeling task, background knowledge is presented that explains six key elements of the Modelica language: Equation-based modeling, Non-causal system description and index-reduction, Physical connectors and signals, Object-orientation, Graphical modeling, Modelica Standard Library.
As final step, tasks like the modeling of hybrid systems will be carried out by introducing dry-friction and backlash to the gear model, and adapting the controller.
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.
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 whole 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 a few design iterations. It has some hands-on-experience as the audience will get and use SimulationX (Windows OS required), do some modeling tasks based on the provided templates and libraries and watch the real vehicle in action. The real benefit for the audience is seeing the design and development process in action where Modelica is the method of choice. I attached the abstract as PDF where you can also see some figures for a better clarification.
This new tutorial already was given to SimulationX user once with great feedback from the students because it is not purely software but has a real device as target. From my last Modelica conferences I know that listening and following a tutorial is not in all cases the hands-on-experience the lecturer actually intends. The audience usually is too heterogeneous for such kind of interactive tasks.
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: https://github.com/SmarTS-Lab/OpenIPSL
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: https://youtu.be/H6h9s4iMzA8?t=3616
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 JModelica.org, an open source tool for simulation and optimization of Modelica models.
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.
9. Ricardo: Power-split controls in hybrid vehicles
This tutorial presents the example analysis of hybrid vehicles equipped with a power-split transmission in IGNITE. The controls of the power-split are explained with respect to different modes of operations (regenerative braking, launch assist, start stop, electric only). A well designed control strategy is the key to operating the combustion engine and electric motor under more efficient conditions. The participants of this tutorial session will have the opportunity to build the vehicle model focused on the power-split and its controls while understanding Modelica principles used for this simulation approach. The model will be then analysed in terms of the fuel economy and performance for different driving scenarios.
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.
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.
Before the session you will receive a link to download and install SystemModeler and the ModelPlug library on your laptop (Win, OS X, or Linux). We will bring Arduino boards and hardware that you can use during the session.
Previous knowledge about Modelica and Arduino is not necessary.
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,
2. EDF: DACCOSIM 2017
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: Josef Fulem
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