0% found this document useful (0 votes)
17 views4 pages

Model-Based Design in Software Engineering

Model-based design (MBD) is a mathematical and visual methodology used for designing complex control, signal processing, and communication systems, particularly in fields like aerospace and automotive. The approach involves four main steps: plant modeling, controller analysis and synthesis, simulation, and deployment, offering advantages such as early error detection and design reuse. However, it also faces challenges like version control issues and may not always be suitable for real-world production environments.

Uploaded by

Andres
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views4 pages

Model-Based Design in Software Engineering

Model-based design (MBD) is a mathematical and visual methodology used for designing complex control, signal processing, and communication systems, particularly in fields like aerospace and automotive. The approach involves four main steps: plant modeling, controller analysis and synthesis, simulation, and deployment, offering advantages such as early error detection and design reuse. However, it also faces challenges like version control issues and may not always be suitable for real-world production environments.

Uploaded by

Andres
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd

From Wikipedia, the free encyclopedia

Model-based design of software is not to be confused with model-based definition of


physical objects.

This article needs additional citations for verification. Please help improve this
article by adding citations to reliable sources. Unsourced material may be
challenged and removed.
Find sources: "Model-based design" – news · newspapers · books · scholar · JSTOR
(August 2018) (Learn how and when to remove this message)
Model-based design (MBD) is a mathematical and visual method of addressing problems
associated with designing complex control,[1] signal processing[2] and
communication systems. It is used in many motion control, industrial equipment,
aerospace, and automotive applications.[3][4] Model-based design is a methodology
applied in designing embedded software.[5][6][7]

Overview
Model-based design provides an efficient approach for establishing a common
framework for communication throughout the design process while supporting the
development cycle (V-model). In model-based design of control systems, development
is manifested in these four steps:

modeling a plant,
analyzing and synthesizing a controller for the plant,
simulating the plant and controller,
integrating all these phases by deploying the controller.
The model-based design is significantly different from traditional design
methodology. Rather than using complex structures and extensive software code,
designers can use Model-based design to define plant models with advanced
functional characteristics using continuous-time and discrete-time building blocks.
These built models used with simulation tools can lead to rapid prototyping,
software testing, and verification. Not only is the testing and verification
process enhanced, but also, in some cases, hardware-in-the-loop simulation can be
used with the new design paradigm to perform testing of dynamic effects on the
system more quickly and much more efficiently than with traditional design
methodology.

History
As early as the 1920s two aspects of engineering, control theory and control
systems, converged to make large-scale integrated systems possible. In those early
days controls systems were commonly used in the industrial environment. Large
process facilities started using process controllers for regulating continuous
variables such as temperature, pressure, and flow rate. Electrical relays built
into ladder-like networks were one of the first discrete control devices to
automate an entire manufacturing process.

Control systems gained momentum, primarily in the automotive and aerospace sectors.
In the 1950s and 1960s, the push to space generated interest in embedded control
systems. Engineers constructed control systems such as engine control units and
flight simulators, that could be part of the end product. By the end of the
twentieth century, embedded control systems were ubiquitous, as even major
household consumer appliances such as washing machines and air conditioners
contained complex and advanced control algorithms, making them much more
"intelligent".

In 1969, the first computer-based controllers were introduced. These early


programmable logic controllers (PLC) mimicked the operations of already available
discrete control technologies that used the out-dated relay ladders. The advent of
PC technology brought a drastic shift in the process and discrete control market.
An off-the-shelf desktop loaded with adequate hardware and software can run an
entire process unit, and execute complex and established PID algorithms or work as
a Distributed Control System (DCS).

Steps
The main steps in model-based design approach are:

Plant modeling. Plant modeling can be data-driven or based on first principles.


Data-driven plant modeling uses techniques such as System identification. With
system identification, the plant model is identified by acquiring and processing
raw data from a real-world system and choosing a mathematical algorithm with which
to identify a mathematical model. Various kinds of analysis and simulations can be
performed using the identified model before it is used to design a model-based
controller. First-principles based modeling is based on creating a block diagram
model that implements known differential-algebraic equations governing plant
dynamics. A type of first-principles based modeling is physical modeling, where a
model consists in connected blocks that represent the physical elements of the
actual plant.
Controller analysis and synthesis. The mathematical model conceived in step 1 is
used to identify dynamic characteristics of the plant model. A controller can then
be synthesized based on these characteristics.
Offline simulation and real-time simulation. The time response of the dynamic
system to complex, time-varying inputs is investigated. This is done by simulating
a simple LTI (Linear Time-Invariant) model, or by simulating a non-linear model of
the plant with the controller. Simulation allows specification, requirements, and
modeling errors to be found immediately, rather than later in the design effort.
Real-time simulation can be done by automatically generating code for the
controller developed in step 2. This code can be deployed to a special real-time
prototyping computer that can run the code and control the operation of the plant.
If a plant prototype is not available, or testing on the prototype is dangerous or
expensive, code can be automatically generated from the plant model. This code can
be deployed to the special real-time computer that can be connected to the target
processor with running controller code. Thus a controller can be tested in real-
time against a real-time plant model.
Deployment. Ideally this is done via code generation from the controller developed
in step 2. It is unlikely that the controller will work on the actual system as
well as it did in simulation, so an iterative debugging process is carried out by
analyzing results on the actual target and updating the controller model. Model-
based design tools allow all these iterative steps to be performed in a unified
visual environment.
Disadvantages
The disadvantages of model-based design are fairly well understood this late in
development lifecycle of the product and development.

One major disadvantage is that the approach taken is a blanket or coverall approach
to standard embedded and systems development. Often the time it takes to port
between processors and ecosystems can outweigh the temporal value it offers in the
simpler lab based implementations.
Much of the compilation tool chain is closed source, and prone to fence post
errors, and other such common compilation errors that are easily corrected in
traditional systems engineering.
Design and reuse patterns can lead to implementations of models that are not well
suited to that task. Such as implementing a controller for a conveyor belt
production facility that uses a thermal sensor, speed sensor, and current sensor.
That model is generally not well suited for re-implementation in a motor controller
etc. Though its very easy to port such a model over, and introduce all the software
faults therein.
Version control issues: Model-based design can encounter significant challenges due
to the lack of high-quality tools for managing version control, particularly for
handling diff and merge operations. This can lead to difficulties in managing
concurrent changes and maintaining robust revision control practices. Although
newer tools, such as 3-way merge, have been introduced to address these issues,
effectively integrating these solutions into existing workflows remains a complex
task.[8]

While Model-based design has the ability to simulate test scenarios and interpret
simulations well, in real world production environments, it is often not suitable.
Over reliance on a given toolchain can lead to significant rework and possibly
compromise entire engineering approaches. While it's suitable for bench work, the
choice to use this for a production system should be made very carefully.

Advantages
Some of the advantages model-based design offers in comparison to the traditional
approach are:[9]

Model-based design provides a common design environment, which facilitates general


communication, data analysis, and system verification between various (development)
groups.
Engineers can locate and correct errors early in system design, when the time and
financial impact of system modification are minimized.
Design reuse, for upgrades and for derivative systems with expanded capabilities,
is facilitated.
Because of the limitations of graphical tools, design engineers previously relied
heavily on text-based programming and mathematical models. However, developing
these models was time-consuming, and highly prone to error. In addition, debugging
text-based programs is a tedious process, requiring much trial and error before a
final fault-free model could be created, especially since mathematical models
undergo unseen changes during the translation through the various design stages.

Graphical modeling tools aim to improve these aspects of design. These tools
provide a very generic and unified graphical modeling environment, and they reduce
the complexity of model designs by breaking them into hierarchies of individual
design blocks. Designers can thus achieve multiple levels of model fidelity by
simply substituting one block element with another. Graphical models also help
engineers to conceptualize the entire system and simplify the process of
transporting the model from one stage to another in the design process. Boeing's
simulator EASY5 was among the first modeling tools to be provided with a graphical
user interface, together with AMESim, a multi-domain, multi-level platform based on
the Bond Graph theory. This was soon followed by tool like 20-sim and Dymola, which
allowed models to be composed of physical components like masses, springs,
resistors, etc. These were later followed by many other modern tools such as
Simulink and LabVIEW.

See also
Control theory
Functional specification
Model-driven engineering
Scientific modelling
Specification (technical standard)
Systems engineering
References
Reedy, J.; Lunzman, S. (2010). Model Based Design Accelerates the Development of
Mechanical Locomotive Controls. SAE 2010 Commercial Vehicle Engineering Congress.
doi:10.4271/2010-01-1999. SAE Technical Paper 2010-01-1999.
Ahmadian, M.; Nazari, Z. J.; Nakhaee, N.; Kostic, Z. (2005). Model based design
and SDR (PDF). 2nd IEE/EURASIP Conference on DSP Enabled Radio. pp. 19–99.
doi:10.1049/ic:20050389 (inactive 12 July 2025). ISBN 0-86341-560-1.
A Software Safety Certification Plug-in for Automated Code Generators: Feasibility
Study and Preliminary Design
General Motors Developed Two-Mode Hybrid Powertrain With MathWorks Model-Based
Design; Cut 24 Months Off Expected Dev Time
Model-based design for mechatronics systems, Machine Design, November 21, 2007
Archived November 25, 2010, at the Wayback Machine
Nicolescu, Gabriela; Mosterman, Pieter J., eds. (2010). Model-Based Design for
Embedded Systems. Computational Analysis, Synthesis, and Design of Dynamic Systems.
Vol. 1. Boca Raton: CRC Press. ISBN 978-1-4200-6784-2.
"Model-based design reshaping Disney parks". Archived from the original on 2016-
08-28. Retrieved 2016-02-18.
Sauceda, Jeremias; Kothari, Suraj (2010-04-12). "Modern Revision Control and
Configuration Management of Simulink Models". SAE 2010 World Congress & Exhibition.
SAE Technical Paper Series. 1 2010-01-0940. SAE International: 10.
doi:10.4271/2010-01-0940.
Automakers Opting for Model-Based Design, Design News, November 5, 2010 Archived
November 25, 2010, at the Wayback Machine

Common questions

Powered by AI

Graphical modeling tools offer significant advantages in model-based design by providing a common design environment that facilitates communication, error correction, and system verification early in the design process. They improve system design efficiency by breaking models into manageable hierarchies of design blocks, allowing engineers to substitute elements to achieve different levels of fidelity easily. This enhances conceptualization and transportation across design stages. However, graphical models can lead to unsuitable implementations, particularly if they are over-relied upon without understanding the contextual application needs. Despite improving design communication and reusability, the limitations in managing version control and handling specific production settings outside bench work remain challenges to their efficiency .

Model-based design addresses the complexity of model designs by breaking them into hierarchies of individual design blocks, simplifying conceptualization and enabling multiple fidelity levels. This hierarchical approach allows designers to substitute blocks to achieve desired outputs, aiding in the customization of models without altering the overall structure severely. The benefits of managing complexity in this manner include reduced error rates, facilitated debugging, enhanced communication among development teams, and streamlined transitions between different design stages. These advantages translate into more efficient and cost-effective engineering projects .

The evolution of control systems has significantly influenced the development of model-based design. In the 1920s, control systems were primarily used in industrial environments for regulating continuous variables, evolving through discrete control devices like electrical relays. The 1950s and 1960s saw a push for embedded systems in the automotive and aerospace sectors that fostered significant advancements such as the development of engine control units and flight simulators. The introduction of computer-based controllers in 1969, which mimicked processes using programmable logic controllers (PLCs), marked a turning point by integrating PC technology allowing sophisticated processes like PID algorithms execution. These advancements laid the groundwork for MBD, supporting complex control, signal processing, and communication system designs with visual and mathematical methodologies .

Model-based design significantly improves the design and verification process compared to traditional methods by offering a unified design environment. This facilitates communication between development groups, speeding up error detection and correction early in the design phase when changes are less costly. Unlike traditional text-based programming, which is time-consuming and error-prone, graphical modeling tools streamline processes by enabling multiple fidelity levels and simplifying transitions between design stages. They promote design reusability and system conceptualization, reducing complexity and improving the implementation of different configurations efficiently .

Model-based design involves several distinct stages: plant modeling, controller analysis and synthesis, simulation (offline and real-time), and deployment. Unlike traditional methodologies that rely heavily on complex structures and extensive software code, MBD uses mathematical algorithms and visual representations, enabling designers to model plant dynamics either through data-driven methods or first principles. This allows for improved communication throughout the design process and enhances prototyping, software testing, and hardware-in-the-loop simulation, leading to more efficient and effective testing of dynamic system effects. By contrast, traditional methods often require painstaking manual code development and debugging, which can be time-consuming and error-prone .

While model-based design excels in simulation and testing, its real-world production application can be less suitable due to several factors. The approach may fail when moving from lab-based implementation to production, due to reliance on specific toolchains and closed-source compilation tool chains prone to common errors. The complexity of integrating these models into production without introducing faults or encountering version control issues can outweigh their initial temporal value. These challenges make MBD more appropriate for prototyping and bench work rather than real-world production without careful consideration and adaptation .

Over-relying on model-based design tools in real-world applications can lead to several disadvantages. These tools, while excellent for simulation and preliminary testing, may not cope well with the complexities of production environments, leading to significant rework if not carefully adapted for practical use. The closed-source nature of many compilation chains can introduce errors difficult to resolve outside of traditional engineering methods. Moreover, version control issues present challenges in managing code changes effectively. These factors can detract from the anticipated value of MBD tools in real-world applications, emphasizing the importance of judicious integration into production workflows .

Several historical technological developments have contributed to the rise of model-based design in engineering. In the early 20th century, the convergence of control theory and control systems laid foundational principles. The introduction of computer-based and programmable logic controllers in the late 1960s shifted industries to digital control methodologies, harnessing PCs' power for complex computation and processes. Additionally, advancements in embedded system design within the automotive and aerospace sectors propelled embedded control systems to the forefront, integrating advanced simulation capabilities and setting the stage for modern model-based design .

Model-based design supports rapid prototyping and hardware-in-the-loop simulation by utilizing mathematical and visual methodologies that allow for the creation of plant models with continuous and discrete-time blocks. These models, through simulation tools, enhance testing and verification processes, allowing for dynamic system effects to be tested efficiently. Hardware-in-the-loop simulation is facilitated through the integration of controller models with real-time plant models, enabling real-time code generation and interoperability testing without the immediate need for physical prototypes, thus accelerating development cycles .

Using closed-source compilation tool chains in model-based design can have significant implications, including introducing potential errors that are not as readily fixed compared to open-source or traditional systems. These tool chains can create dependencies on specific software vendors, potentially limiting customization and flexibility in addressing project-specific issues. Furthermore, they may complicate troubleshooting, exposing projects to risks associated with updates and changes in proprietary algorithms and code practices, ultimately impacting the responsiveness and adaptability of engineering teams in dynamic production environments .

You might also like