The Model-Integrated Computing Toolsuite: Metaprogrammable Tools for Embedded Control System Design (original) (raw)
Related papers
2006 IEEE Conference on Computer-Aided Control Systems Design, 2006
The design of advanced embedded control systems requires a systematic approach in handling their increasing complexity and in particular integration of the different aspects and parts of a product worked on by different experts. Several variants of model-based approaches are today advocated to facilitate systems integration. This paper describes a number of representative efforts that address multiple concerns or views including modeling languages such as AADL and EAST-ADL as well as model integration environments such as GeneralStore, ToolNet, and Fujaba. We present a characterization of the approaches and thereby highlight their commonalities and differences regarding basic integration mechanisms and engineering support. We conclude with a prospect for future work.
A model-driven approach to embedded control system implementation
2007
The work presented here is on setting up methodological support, including (prototype) tools, for the design of distributed hard real-time embedded control software for mechatronic products. The use of parallel hardware (CPUs, FPGAs) and parallel software is investigated, to exploit the inherent parallel nature of embedded systems and their control. Two core models of computation are used to describe the behavior of the total mechatronic system (plant, control, software and I/O): discrete event system (DES) and continuous time system (CTS). These models of computation are coupled via co-simulation, to be able to do consistency checking at the boundaries. This allows for integration of discipline-specific parts on the model level (during design phases) instead of on the code level (during realization and test phases). Crossview design-change influences get specific attention, to allow for relaxation of the tension between several dependability issues (like reliability and robustness), while keeping design time (and thus design costs) under control. Furthermore, the design work can be done as a stepwise refinement process. This yields a shorter design time, and a better quality product. The method is illustrated with a case using the tools being prototyped.
Model-integrated development of embedded software
Proceedings of The IEEE, 2003
The paper describes a model-integrated approach for embedded software development that is based on domain-specific, multiple-view models used in all phases of the development process. Models explicitly represent the embedded software and the environment it operates in, and capture the requirements and the design of the application, simultaneously. Models are descriptive , in the sense that they allow the formal analysis, verification, and validation of the embedded system at design time. Models are also generative, in the sense that they carry enough information for automatically generating embedded systems using the techniques of program generators. Because of the widely varying nature of embedded systems, a single modeling language may not be suitable for all domains; thus, modeling languages are often domain-specific. To decrease the cost of defining and integrating domain-specific modeling languages and corresponding analysis and synthesis tools, the model-integrated approach is applied in a metamodeling architecture, where formal models of domain-specific modeling languages-called metamodels-play a key role in customizing and connecting components of tool chains. This paper discusses the principles and techniques of model-integrated embedded software development in detail, as well as the capabilities of the tools supporting the process. Examples in terms of real systems will be given that illustrate how the model-integrated approach addresses the physical nature, the assurance issues, and the dynamic structure of embedded software.
Metamodeling Languages and Metaprogrammable Tools
Chapman & Hall/CRC Computer & Information Science Series, 2007
The convergence of control systems and software engineering is one of the most profound trends in technology today. Control engineers build on computing and communication technology to design robust, adaptive and distributed control systems for operating plants with partially known nonlinear dynamics. Systems engineers face the problem of designing and integrating large scale systems where networked embedded computing is increasingly taking over the role of "universal system integrator". Software engineers need to design and build software that needs to satisfy requirements that are simultaneously physical and computational. This trend drives the widespread adoption of model-based design techniques for computer-based systems. The use of models on different levels of abstraction have been a fundamental approach in control and systems engineering. Lately, model-based software engineering methods, such as OMG's Model-Driven Architecture (MDA) [13][7] have gained significant momentum in the software industry, as well. The confluence of these factors has led to the emergence of model-driven engineering (MDE) that opens up the opportunity for the fusion of traditionally isolated disciplines. Model-Integrated Computing (MIC), one practical manifestation of the general MDE vision, is a powerful model-based design approach and tool suite centered on the specification and use of semantically-rich,
Model-based control system design improves quality, shortens development time, lowers engineering cost, and reduces rework. Evaluating a control system's performance, functionality, and robustness in a simulation environment avoids the time and expense of developing hardware and software for each design iteration. Simulating the performance of a design can be straightforward (though sometimes tedious, depending on the complexity of the system being developed) with mathematical models for the hardware components of the system (plant models) and control algorithms for embedded controllers. This paper describes a software tool and a methodology that not only allows a complete system simulation to be performed early in the design cycle, but also greatly facilitates the construction of the model by automatically connecting the components and subsystems that comprise it. A key element of this technique is the software-in-the-loop (SIL) capability, which permits compiled legacy source ...
Journal of Systems and Software, 2015
Model based system engineering (MBSE) is a systematic approach of modeling which is frequently used to support requirement specification, design, verification and validation activities of system development. However, it is difficult to customize MBSE approach for the development of embedded systems due to their diverse behavioral aspects. Furthermore, appropriate tools selection to perform particular MBSE activities is always challenging. This paper focuses on the identification and classification of recent research practices pertaining to embedded systems development through MBSE approach. Consequently, a comprehensive analysis of various MBSE tools has been presented. Systematic literature review (SLR) has been used to identify 61 research practices published during 2008-2014. The identified researches have been classified into six different categories to analyze various aspects of MBSE approach for embedded systems. Consequently, 39 preliminary tools are identified that have been used in recent researches. Furthermore, classification and evaluation of tools have been presented. This research highlights important trends and approaches of MBSE to support development of embedded systems. A comprehensive investigation of tools in this article facilitates researchers, practitioners and developers to select appropriate tools according to their requirements.
Methodological and Tool Support for Embedded Control Systems
2005
The benefits of significant advances in general software engineering support environments in recent years have yet to be realized in the area of embedded control systems, due to a particularly demanding set of requirements. A toolset providing methodological and tool support is presented which addresses specific challenges to system development in the control domain including component-oriented development, reusability, object-oriented design, integration of third-party tools, and validation. Copyright © 2005 IFAC
A flexible model driven software development process for component based embedded control systems
2012
Embedded Systems can characterize themselves for having dedicated hardware with limited resources. Moreover, non-functional requirements, such as reliability and response time, can be critical. Hence, programming languages with small memory footprint, low performance overhead and hardware dependability are selected to implement their software. C is often the language of choice. However, this software can have maintainability problems in the long run due to the lack of characteristics such as encapsulation and replaceability of this language. In order to enhance the implementation of such systems with these features, this paper presents a semi-automatic Model Driven Software Development (MDSD) process that allows the transformation of a KOBRA model to a reduced ANSI C implementation. Apart from the maintainability increase, the application of MDSD decouples the high-level system design from the implementation platform and improves communication among the multidisciplinary team involv...