Simulink

14,000,000 Leading Edge Experts on the ideXlab platform

Scan Science and Technology

Contact Leading Edge Experts & Companies

Scan Science and Technology

Contact Leading Edge Experts & Companies

The Experts below are selected from a list of 202107 Experts worldwide ranked by ideXlab platform

Vera Pantelic - One of the best experts on this subject based on the ideXlab platform.

  • FASE - SL2SF: Refactoring Simulink to Stateflow
    Fundamental Approaches to Software Engineering, 2019
    Co-Authors: Stephen Wynn-williams, Zinovy Diskin, Vera Pantelic, Curtis Milo, Moustapha Diab, Gehan M K Selim, Mark Lawford, Feisel Weslati
    Abstract:

    In the Matlab Simulink environment, systems can be modelled using Simulink block diagrams and Stateflow state charts. While stateful logic is more naturally modelled using Stateflow, in practice complex block diagrams are often used instead, resulting in models that are hard to understand and maintain. In order to improve the maintainability and understandability of large industrial models, this paper presents a strategy for refactoring Simulink block diagrams implementing stateful logic into functionally equivalent Stateflow state charts that more naturally represent the intended behaviour. To bridge the gap between the syntax of block diagrams and state charts, Mealy machines represented by tabular expressions are used as an intermediate representation. The compositional language of block diagrams is used to combine tables modelling individual blocks into a table for the entire block diagram which describes the high level state machine encoded in the Simulink subsystem. A prototype tool that performs the translation from Simulink to Stateflow automatically is discussed.

  • Software engineering practices and Simulink: bridging the gap
    International Journal on Software Tools for Technology Transfer, 2018
    Co-Authors: Vera Pantelic, Mark Lawford, Steven Postma, Monika Jaskolka, Bennett Mackenzie, Alexandre Korobkine, Marc Bender, Jeff Ong, Gordon Marks, Alan Wassyng
    Abstract:

    Although widely used in embedded systems design, Matlab/Simulink is not considered a state-of-the-art design environment by the software engineering community. This paper is aimed at improving design with Simulink from the software engineering perspective by developing automated support for the application of some traditional software engineering principles when developing with Simulink. We present four tools: the Signature Tool , the Reach/Coreach Tool , the Data Store Rescope Tool , and the Auto Layout Tool . The Signature Tool extracts the interface of a Simulink subsystem, enabling developers to better understand the implicit data flow in Simulink models and use it more effectively, while also producing useful documentation. The Data Store Rescope Tool improves modularity of Simulink models by properly scoping data stores , the Simulink equivalent of variables in traditional languages. The Reach/Coreach Tool highlights data and control dependencies in Simulink models, making them easier to understand. Also, the tool supports debugging, reverse-engineering, refactoring, and static analysis of the models. Finally, the Auto Layout Tool automatically improves the layout of Simulink models, reducing the effort developers invest in graphical layout to comply with modeling guidelines and improve readability of their models.

  • MODELSWARD - A toolset for Simulink: Improving software engineering practices in development with Simulink
    Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development, 2015
    Co-Authors: Vera Pantelic, Mark Lawford, Steven Postma, Bennett Mackenzie, Alexandre Korobkine, Jeff Ong, Marc Bender
    Abstract:

    This paper presents a set of tools that provide automatic support for application of some of the traditional software engineering practices when developing with Simulink. The tools are the: Signature Tool, Reach/Coreach Tool, Data Store Push-Down Tool, and Auto Layout Tool. The Signature Tool extracts the interface of a Simulink subsystem, identifying the subsystem's explicit, and implicit data flow mechanisms, empowering developers to use the implicit mechanisms more effectively. The Reach/Coreach Tool identifies data and control flow dependencies in a Simulink model and uses the information for model slicing. The view of dependencies offered by the tool significantly eases the comprehension of large models. The dependencies can also serve as indicators of alternative designs, and facilitate more effective testing and verification. The Data Store Push-Down Tool restricts the scope of Simulink's data stores thereby providing improved encapsulation, and increasing modularity. Finally, the Auto Layout Tool significantly decreases the manual effort developers spend in achieving proper layout of models during design and refactoring, and can be used by automated refactoring and transformation tools.

Mark Lawford - One of the best experts on this subject based on the ideXlab platform.

  • FASE - SL2SF: Refactoring Simulink to Stateflow
    Fundamental Approaches to Software Engineering, 2019
    Co-Authors: Stephen Wynn-williams, Zinovy Diskin, Vera Pantelic, Curtis Milo, Moustapha Diab, Gehan M K Selim, Mark Lawford, Feisel Weslati
    Abstract:

    In the Matlab Simulink environment, systems can be modelled using Simulink block diagrams and Stateflow state charts. While stateful logic is more naturally modelled using Stateflow, in practice complex block diagrams are often used instead, resulting in models that are hard to understand and maintain. In order to improve the maintainability and understandability of large industrial models, this paper presents a strategy for refactoring Simulink block diagrams implementing stateful logic into functionally equivalent Stateflow state charts that more naturally represent the intended behaviour. To bridge the gap between the syntax of block diagrams and state charts, Mealy machines represented by tabular expressions are used as an intermediate representation. The compositional language of block diagrams is used to combine tables modelling individual blocks into a table for the entire block diagram which describes the high level state machine encoded in the Simulink subsystem. A prototype tool that performs the translation from Simulink to Stateflow automatically is discussed.

  • Software engineering practices and Simulink: bridging the gap
    International Journal on Software Tools for Technology Transfer, 2018
    Co-Authors: Vera Pantelic, Mark Lawford, Steven Postma, Monika Jaskolka, Bennett Mackenzie, Alexandre Korobkine, Marc Bender, Jeff Ong, Gordon Marks, Alan Wassyng
    Abstract:

    Although widely used in embedded systems design, Matlab/Simulink is not considered a state-of-the-art design environment by the software engineering community. This paper is aimed at improving design with Simulink from the software engineering perspective by developing automated support for the application of some traditional software engineering principles when developing with Simulink. We present four tools: the Signature Tool , the Reach/Coreach Tool , the Data Store Rescope Tool , and the Auto Layout Tool . The Signature Tool extracts the interface of a Simulink subsystem, enabling developers to better understand the implicit data flow in Simulink models and use it more effectively, while also producing useful documentation. The Data Store Rescope Tool improves modularity of Simulink models by properly scoping data stores , the Simulink equivalent of variables in traditional languages. The Reach/Coreach Tool highlights data and control dependencies in Simulink models, making them easier to understand. Also, the tool supports debugging, reverse-engineering, refactoring, and static analysis of the models. Finally, the Auto Layout Tool automatically improves the layout of Simulink models, reducing the effort developers invest in graphical layout to comply with modeling guidelines and improve readability of their models.

  • MODELSWARD - A toolset for Simulink: Improving software engineering practices in development with Simulink
    Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development, 2015
    Co-Authors: Vera Pantelic, Mark Lawford, Steven Postma, Bennett Mackenzie, Alexandre Korobkine, Jeff Ong, Marc Bender
    Abstract:

    This paper presents a set of tools that provide automatic support for application of some of the traditional software engineering practices when developing with Simulink. The tools are the: Signature Tool, Reach/Coreach Tool, Data Store Push-Down Tool, and Auto Layout Tool. The Signature Tool extracts the interface of a Simulink subsystem, identifying the subsystem's explicit, and implicit data flow mechanisms, empowering developers to use the implicit mechanisms more effectively. The Reach/Coreach Tool identifies data and control flow dependencies in a Simulink model and uses the information for model slicing. The view of dependencies offered by the tool significantly eases the comprehension of large models. The dependencies can also serve as indicators of alternative designs, and facilitate more effective testing and verification. The Data Store Push-Down Tool restricts the scope of Simulink's data stores thereby providing improved encapsulation, and increasing modularity. Finally, the Auto Layout Tool significantly decreases the manual effort developers spend in achieving proper layout of models during design and refactoring, and can be used by automated refactoring and transformation tools.

Takuya Azumi - One of the best experts on this subject based on the ideXlab platform.

  • ISORC - MATLAB/Simulink Benchmark Suite for ROS-based Self-driving Software Platform
    2019 IEEE 22nd International Symposium on Real-Time Distributed Computing (ISORC), 2019
    Co-Authors: Shota Tokunaga, Keita Miura, Takuya Azumi
    Abstract:

    In recent years, self-driving systems have been developed worldwide, and the technology has been making remarkable progress. One approach to the development of the autonomous vehicle is using ROS which is an open-source middleware framework used for developing robot applications. On the other hand, the popular approach in the automotive industry is using MATLAB/Simulink which is the software for modeling, simulating, and analyzing. MATLAB/Simulink has an interface connecting ROS and MATLAB/Simulink. However, it is not used much in the development of self-driving systems because there are not enough samples for the self-driving systems. Therefore, we provide a MATLAB/Simulink benchmark suite for a ROS-based self-driving system called Autoware. Autoware provides an abundant set of self-driving modules and enables to simulate and operate the autonomous vehicle. The provided benchmark is a set of MATLAB code and Simulink model samples. They assist to design the self-driving systems using MATLAB/Simulink.

  • ICCPS - MATLAB/Simulink benchmark suite for ROS-based self-driving system: demo abstract
    Proceedings of the 10th ACM IEEE International Conference on Cyber-Physical Systems - ICCPS '19, 2019
    Co-Authors: Shota Tokunaga, Noriyuki Ota, Yoshiharu Tange, Keita Miura, Takuya Azumi
    Abstract:

    This paper proposes a MATLAB/Simulink benchmark suite for an open-source self-driving system based on Robot Operating System (ROS). In recent years, self-driving systems have been developed around the world. One approach to the development of self-driving systems is the utilization of ROS which is an open-source middleware framework used in the development of robot applications. On the other hand, the popular approach in the automotive industry is the utilization of MATLAB/Simulink which is software for modeling, simulating, and analyzing. MATLAB/Simulink provides an interface between ROS and MATLAB/Simulink that enables to create functionalities of ROS-based robots in MATLAB/Simulink. However, it is not been fully utilized in the development of self-driving systems yet because there are not enough samples for self-driving, and it is difficult for developers to adopt co-development. Therefore, we provide a MATLAB/Simulink benchmark suite for a ROS-based self-driving system called Autoware. Autoware is popular open-source software that provides a complete set of self-driving modules. The provided benchmark contains MATLAB/Simulink samples available in Autoware. They help to design ROS-based self-driving systems using MATLAB/Simulink.

Manar H. Alalfi - One of the best experts on this subject based on the ideXlab platform.

  • Clone detection in MATLAB Stateflow models
    Software Quality Journal, 2016
    Co-Authors: Jian Chen, Thomas R. Dean, Manar H. Alalfi
    Abstract:

    MATLAB Simulink is one of the leading tools for model-based software development in the automotive industry. One extension to Simulink is Stateflow, which allows the user to embed Statecharts as components in a Simulink model. These state machines contain nested states, an action language that describes events, guards, conditions, actions, and complex transitions. As Stateflow has become increasingly important in Simulink models for the automotive sector, we extend previous work on clone detection of Simulink models to Stateflow components. While Stateflow models are stored in the same file as the Simulink models that host them, the representations differ. Our approach incorporates a pretransformation that converts the Stateflow models into a form that allows us to use the SIMONE model clone detector to identify candidates and cluster them into classes. In addition, we push the results of the Stateflow clone detection back into the Simulink models, improving the accuracy of the clones found in the host Simulink models. We validated our approach on the MATLAB Simulink/Stateflow demo set. Our approach showed promising results on the identification of Stateflow clones in isolation, as well as integrated components of the Simulink models that are hosting them.

Sabine Glesner - One of the best experts on this subject based on the ideXlab platform.

  • Slicing MATLAB Simulink models
    Proceedings - International Conference on Software Engineering, 2012
    Co-Authors: Robert Reicherdt, Sabine Glesner
    Abstract:

    MATLAB Simulink is the most widely used industrial tool for developing complex embedded systems in the automotive sector. The resulting Simulink models often consist of more than ten thousand blocks and a large number of hierarchy levels. To ensure the quality of such models, automated static analyses and slicing are necessary to cope with this complexity. In particular, static analyses are required that operate directly on the models. In this article, we present an approach for slicing Simulink Models using dependence graphs and demonstrate its efficiency using case studies from the automotive and avionics domain. With slicing, the complexity of a model can be reduced for a given point of interest by removing unrelated model elements, thus paving the way for subsequent static quality assurance methods.

  • ICSE - Slicing MATLAB Simulink models
    2012 34th International Conference on Software Engineering (ICSE), 2012
    Co-Authors: Robert Reicherdt, Sabine Glesner
    Abstract:

    MATLAB Simulink is the most widely used industrial tool for developing complex embedded systems in the automotive sector. The resulting Simulink models often consist of more than ten thousand blocks and a large number of hierarchy levels. To ensure the quality of such models, automated static analyses and slicing are necessary to cope with this complexity. In particular, static analyses are required that operate directly on the models. In this article, we present an approach for slicing Simulink Models using dependence graphs and demonstrate its efficiency using case studies from the automotive and avionics domain. With slicing, the complexity of a model can be reduced for a given point of interest by removing unrelated model elements, thus paving the way for subsequent static quality assurance methods.