Model-Based Design (MBD) is a mathematical and visual method of addressing problems associated with designing complex control, signal processing and communication systems. It is used in many motion control, industrial equipment, aerospace, and automotive applications. Model-based design is a methodology applied in designing embedded software.
Model-based design provides an efficient approach for establishing a common framework for communication throughout the design process while supporting the development cycle ("V" diagram). 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, and
- integrating all these phases by deploying the controller.
The model-based design paradigm is significantly different from traditional design methodology. Rather than using complex structures and extensive software code, designers can use Model-based design to define 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.
The dawn of the electrical age brought many innovative and advanced control systems. 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 White goods such as washing machines and air-conditions 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).
Model-based design 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 protoyping 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 automatic 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.
Some of the notable advantages Model-based design offers in comparison to the traditional approach are:
- Model-based design provides a common design environment, which facilitates general communication, data analysis, and system verification between development groups and power electronic application.
- 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
Modeling and simulation tools have long been in use, but traditional text-based tools are inadequate for the complex nature of modern control systems[according to whom?]. Because of the limitations of graphical tools, design engineers previously relied heavily on text-based programming and mathematical models. However, developing these models was difficult, time-consuming, and highly prone to error. In addition, debugging text-based programs was 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.
These challenges are overcome by the use of graphical modeling tools, used today in all aspects of design[according to whom?]. These tools provide a very generic and unified graphical modeling environment, 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 are also the best way to document engineers’ ideas. It helps engineers to conceptualize the entire system and simplifies 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 tools.
When developing embedded control systems, designers are squeezed by two trends —- shrinking development cycles and growing design intricacy. The divide-and-conquer strategy for developing these complex systems means coordinating the resources of people with expertise in a wide range of disciplines. The traditional, text-based approach of embedded system design is not efficient enough to handle such advanced, complex systems[according to whom?].
- 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.
- Model Based Design Accelerates the Development of Mechanical Locomotive Controls, SAE article 2010
- 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. 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
- Nicolescu, Gabriela; Mosterman, Pieter J., eds. (2010). Model-Based Design for Embedded Systems. Computational Analysis, Synthesis, and Design of Dynamic Systems 1. Boca Raton: CRC Press. ISBN 978-1-4200-6784-2.
- Automakers Opting for Model-Based Design, Design News, November 5, 2010