13 research outputs found

    The OpenModelica integrated environment for modeling, simulation, and model-based development

    Get PDF
    OpenModelica is a unique large-scale integrated open-source Modelica- and FMI-based modeling, simulation, optimization, model-based analysis and development environment. Moreover, the OpenModelica environment provides a number of facilities such as debugging; optimization; visualization and 3D animation; web-based model editing and simulation; scripting from Modelica, Python, Julia, and Matlab; efficient simulation and co-simulation of FMI-based models; compilation for embedded systems; Modelica- UML integration; requirement verification; and generation of parallel code for multi-core architectures. The environment is based on the equation-based object-oriented Modelica language and currently uses the MetaModelica extended version of Modelica for its model compiler implementation. This overview paper gives an up-to-date description of the capabilities of the system, short overviews of used open source symbolic and numeric algorithms with pointers to published literature, tool integration aspects, some lessons learned, and the main vision behind its development.Fil: Fritzson, Peter. Linköping University; SueciaFil: Pop, Adrian. Linköping University; SueciaFil: Abdelhak, Karim. Fachhochschule Bielefeld; AlemaniaFil: Asghar, Adeel. Linköping University; SueciaFil: Bachmann, Bernhard. Fachhochschule Bielefeld; AlemaniaFil: Braun, Willi. Fachhochschule Bielefeld; AlemaniaFil: Bouskela, Daniel. Electricité de France; FranciaFil: Braun, Robert. Linköping University; SueciaFil: Buffoni, Lena. Linköping University; SueciaFil: Casella, Francesco. Politecnico di Milano; ItaliaFil: Castro, Rodrigo Daniel. Consejo Nacional de Investigaciones Científicas y Técnicas. Oficina de Coordinación Administrativa Ciudad Universitaria. Instituto de Investigación en Ciencias de la Computación. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Instituto de Investigación en Ciencias de la Computación; ArgentinaFil: Franke, Rüdiger. Abb Group; AlemaniaFil: Fritzson, Dag. Linköping University; SueciaFil: Gebremedhin, Mahder. Linköping University; SueciaFil: Heuermann, Andreas. Linköping University; SueciaFil: Lie, Bernt. University of South-Eastern Norway; NoruegaFil: Mengist, Alachew. Linköping University; SueciaFil: Mikelsons, Lars. Linköping University; SueciaFil: Moudgalya, Kannan. Indian Institute Of Technology Bombay; IndiaFil: Ochel, Lennart. Linköping University; SueciaFil: Palanisamy, Arunkumar. Linköping University; SueciaFil: Ruge, Vitalij. Fachhochschule Bielefeld; AlemaniaFil: Schamai, Wladimir. Danfoss Power Solutions GmbH & Co; AlemaniaFil: Sjolund, Martin. Linköping University; SueciaFil: Thiele, Bernhard. Linköping University; SueciaFil: Tinnerholm, John. Linköping University; SueciaFil: Ostlund, Per. Linköping University; Sueci

    An Integrated Framework for Traceability and Impact Analysis in Requirements Verification of Cyber-Physical Systems

    No full text
    In the field of model-based design of Cyber-Physical Systems (CPS), seamless traceability of the process, from requirements to models to simulation results, is becoming increasingly important. It can be used to support several activities such as variant handling, impact analysis, component reuse, software maintenance and evolution, verification, and validation. Despite the fact that the relevance of traceability in the model-based design of CPSs is well known, current tools that support traceability management are inadequate in practice. The lack of comprehensive whole-lifecycle systems engineering support in a single tool is one of the main causes of such ineffective traceability management, where traceability relationships between artifacts are still manually generated and maintained. This paper aims at presenting an approach and a prototype for automatically generating and maintaining the appropriate traceability links between heterogeneous artifacts ranging from requirement models, through design models, down to simulation and verification results throughout the product life cycle in model-based design of CPSs. A use case study is presented to validate and illustrate the proposed method and prototype.Funding Agencies|Swedish Government; European Union in the H2020 INTO-CPS project; Vinnova in the ITEA OPENCPSVinnova; EMBRACE project; Open Source Modelica Consortium</p

    An Eco-System Approach to Project-Based Learning in Software Engineering Education

    No full text
    Contribution: This article identifies the participation of external stakeholders as a key contributing factor for positive outcomes in project-based software engineering courses. A model for overlapping virtuous circles of lasting positive impact on both stakeholders and students from such courses is proposed. Background: Project-based courses are widespread in software engineering education, and there are numerous designs for such courses presented in literature. It is found that the needs and motivations of external stakeholders, from industry and government sectors, in these courses has received limited attention in related work. Intended Outcomes: A course design that prepares students for graduate level studies and professional life, through close proximity to external stakeholders in a highly realistic setting, working on "live" projects. Application Design: Building on a long tradition of university-industry collaboration dating back to 1977, as well as findings in related work, students are assigned to live projects proposed by external stakeholders from industry and government, working in close proximity with their respective stakeholders throughout the project. The course places great emphasis on coaching over instruction, treating the many unforeseen challenges of such projects as a valuable part of the learning experience. Findings: Based on interviews with stakeholders and students, it is found that stakeholder and student outcomes are interdependent and build upon one another, and that positive outcomes for both groups are necessary for the sustainability of the course over multiple iterations

    An Approach to Automated Model Composition Illustrated in the Context of Design Verification

    No full text
    Building complex systems form models that were developed separately without modifying existing code is a challenging task faced on a regular basis in multiple contexts, for instance, in design verification. To address this issue, this paper presents a new approach for automating the dynamic system model composition. The presented approach aims to maximise information reuse, by defining the minimum set of information that is necessary to the composition process, to maximise decoupling by removing the need for explicit interfaces and to present a methodology with a modular and structured approach to composition. Moreover the presented approach is illustrated in the context of system design verification against requirements using a Modelica environment, and an approach for expressing the information necessary for automating the composition is formalized

    Model-Based Dependability Analysis of Physical Systems with Modelica

    No full text
    Modelica is an innovative, equation-based, and acausal language that allows modeling complex physical systems, which are made of mechanical, electrical, and electrotechnical components, and evaluates their design through simulation techniques. Unfortunately, the increasing complexity and accuracy of such physical systems require new, more powerful, and flexible tools and techniques for evaluating important system properties and, in particular, the dependability ones such as reliability, safety, and maintainability. In this context, the paper describes some extensions of the Modelica language to support the modeling of system requirements and their relationships. Such extensions enable the requirement verification analysis through native constructs in the Modelica language. Furthermore, they allow exporting a Modelica-based system design as a Bayesian Network in order to analyze its dependability by employing a probabilistic approach. The proposal is exemplified through a case study concerning the dependability analysis of a Tank System

    Empirical Study of Requirements Engineering in Cross Domain Development

    No full text
    Shortened time-to-market cycles and increasingly complex systems are just some of the challenges faced by industry. The requirement engineering process needs to adapt to these challenges in order to guarantee that the end product fulfils the customer expectations as well as the necessary safety norms. The goal of this paper is to investigate the way engineers work in practice with the requirement engeneering processes at different stages of the development, with a particular focus on the use of requirements in cross domain development and to compare this to the existing theory in the domain

    An Aeronautic Case Study for Requirement Formalization and Automated Model Composition in Modelica

    No full text
    Building complex systems from models that have been developed separately without modifying existing code is a challenging task faced on a regular basis in multiple contexts including design verification. To address this issue an approach has been developed for automating dynamic system model composition by defining the minimum set of information that is necessary to the composition process. In this paper a design and implementation of this approach for standard Modelica is presented in the context of an application case study – the verification of a new design for spoiler activation against requirements

    Formal Requirements Modeling for Simulation-Based Verification

    Get PDF
    This paper describes a proposal on how to model formal requirements in Modelica for simulation-based verification. The approach is implemented in the open source Modelica_Requirements library. It requires extensions to the Modelica language, that have been prototypically implemented in the Dymola and Open-Modelica software. The design of the library is based on the FOrmal Requirement Modeling Language (FORM-L) defined by EDF, and on industrial use cases from EDF and Dassault Aviation. It uses 2- and 3-valued temporal logic to describe requirements

    Open Source Languages and Methods for Cyber-Physical System Development : Overview and Case Studies

    No full text
    Industrial cyber-physical system products interleave hardware, software, and communication components. System complexity is increasing simultaneously with increased demands on quality and shortened time-to-market. To effectively support the development of such systems, we present languages and tools for comprehensive integrated model-based development that cover major phases such as requirement analysis, design, implementation, and maintenance. The model-based approach raises the level of abstraction and allows to perform virtual prototyping by simulating and optimizing system models before building physical products. Moreover, open standards and open source implementations enable model portability, tool reuse and a broader deployment. In this paper we present a general overview of the available solutions with focus on Modelica/OpenModelica, Bloqqi, and Acumen. The paper presents contributions to these languages and environments, including symbolic-numeric modeling, requirement verification, code generation, model debugging, design optimization, graphical modeling, and variant handling with traceability, as well a general discussion and conclusions.Funding Agencies|Strategic Research Area ELLIIT - Swedish government; Vinnova in the ITEA OPENPRODVinnova; Vinnova in the ITEA MODRIO projectVinnova; Vinnova in the ITEA OPENCPS projectVinnova; Vinnova in the ITEA EMPHYSIS projectVinnova; Vinnova in the ITEA EMBRACE projectVinnova; Swedish Strategic Research Foundation (SSF) in the LargeDyn project; Open Source Modelica Consortium</p

    OMJulia: An OpenModelica API for Julia-Modelica Interaction

    No full text
    Modelica is an object oriented, acausal equation-based language for describing complex, hybrid dynamic models. About ten Modelica implementations exist, of which most are commercial and two are open source; the implementations have varying levels of tool functionality. Many Modelica implementations have limited support for model analysis. It is therefore of interest to integrate Modelica tools with a powerful scripting and programming language, such as Julia. Julia is a modern and free language for scientific computing. Such integration would facilitate the needed analysis possibilities and can speed up the development of effient simulation models. A number of design choices for interaction between Julia and Modelica tools are discussed. Next, Julia package OMJulia is introduced with an API for interaction between Open-Modelica and Julia. Some discussion of the reasoning behind the OMJulia design is given. The API is based on a new class ModelicaSystem within package OMJulia, with systematic methods which operate on instantiated models. OMJulia supports handling of FMU and Modelica models, setting and getting model values, as well as some model operations. Results are available in Julia for further analysis. OMJulia is a further development of a previous OMPython package; a key advantage of Julia over Python is that Julia has better support for control engineering packages. OMJulia represents a first effort to interface a relatively complete Modelica tool to Julia, giving access to an open source set-up for modeling and analysis, including control synthesis, easily installable from a unified package manager. Some possibilities of OMJulia are illustrated by application to a few simple, yet industrially relevant problems within control design. Keywords: Modelica, FMI, FMU, OpenModelica, Julia, Julia API, OMJulia
    corecore