Introduction

Desktop personal computer–based simulation has become the primary method for analyzing and studying the behavior of dynamic systems. Such simulation includes executing on a digital computer mathematical models for engineered systems that comprise physics and interact with humans. To address the temporal aspect of the system dynamics, events are to be simulated in a time frame in which they would naturally occur, which is known as real-time simulation. Real-time simulation thus captures how the behavior of a system unfolds as time passes, all with high fidelity in correspondence to natural time scales.

CONTENT

The utility of real-time simulation is evidenced by its popularity in many engineering domains, for example, in the design of complex systems such as aircraft and automobiles, flight simulators to train pilots, fluid dynamics, weather forecasting, and the design of robots, including their control algorithms. The importance of timing accuracy of these simulations strongly depends on the application but in general, a certain degree of timing accuracy is crucial in ensuring intended system performance. For example, engineered systems are increasingly designed in a virtual representation, which necessitates incrementally closing the gap between the virtual domain and the physical domain, so as to gradually reveal the detailed actual effects of design decisions. Real-time simulation then faithfully produces the temporal characteristics of the dynamic behavior of a system. While real-time simulation must account for the pertinent time constants in the system that is simulated, there is substantial variation of these between application domains. Moreover, depending on the application domain, some variation on response times can be accepted, whereas in other domains (e.g., feedback control), tighter time bounds are strictly necessary.

In addition, not only must the algorithm for simulation support real time, an implementation can only be achieved by merit of real-time capable platforms and protocols. These protocols are particularly challenging to develop when the simulation is executing on a distributed platform. Whereas aspects such as a distributed nature, the modalities of interface technologies, and quality of service characteristics such as latency are domain specific, the core real-time simulation theory and methodologies transcend these domains to form the foundation for a technology that supports a terrific spectrum of applications ranging from embedded systems to training systems.

This book contains a compilation of work from internationally renowned authors on fundamentals and basic techniques of real-time simulations for complex and diverse systems. It elaborates on practices of real-time simulation and addresses the main facets in the context of large application domains, including the current state of the art, important challenges, and successful trends.

As such, this book provides a basis for scholars who wish to study real-time simulation as a fundamental and foundational technology and to develop principles that are applicable across a broad variety of application domains while further developing the domain-specific refinement and idiosyncrasies. The collected material enables different levels of insight and understanding, ranging from attaining a cursory familiarization to developing a high level of expertise in a given domain. This is made possible thanks to a comprehensive introduction to concepts related to modeling and simulation of systems followed by detailed chapters on real-time simulation for system design, parallel and distributed simulations, industrial tools, and a large set of applications.

ORGANIZATION

This book is divided into four parts: Section I: Basic Simulation Technologies and Fundamentals, Section II: Real-Time Simulation for System Design, Section III: Parallel and Distributed Real-Time Simulation, and Section IV: Tools and Applications. The following presents an overview of each of the parts along with a brief introduction to the contents of each of the chapters.

SECTION I: BASIC SIMULATION TECHNOLOGIES AND FUNDAMENTALS

Section I establishes the fundamentals of real-time simulation and sets the stage for further exploring the opportunities that real-time simulation provides as discussed in the sections that follow.

Chapter 1 introduces real-time simulation of discrete-event behavior and of continuous-time behavior possibly interspersed with discontinuities. The chapter defines the discrete and continuous simulations as two different approaches to the modeling of dynamic systems with a hybrid model being one that includes elements of both discrete and continuous models. The relevant features of discrete and continuous models are addressed first before delving into the intricacies of real-time simulation in case of hybrid models.

Chapter 2 focuses on exploiting the Discrete Event System Specification (DEVS) as a formal approach for the design of a real-time distributed computer systems. The chapter demonstrates (1) how DEVS can serve as a fundamental system design tool for distributed real-time computer systems; (2) how DEVS is employed to validate designs of complex real-time computer systems, such as distributed virtual environments, distributed real-time peer-to-peer systems, and distributed simulation systems; and (3) how DEVS can be utilized as a fundamental technology for building a more advanced framework to support design of distributed real-time systems, such as cooperative robotic systems.

Chapter 3 proposes a new methodology to verify simulation models of real-time applications based on the DEVS formalism. This methodology defines a new class of Rational Time Advance DEVS (RTA-DEVS) and a transformation to obtain a timed automata (TA) that is behaviorally equivalent to RTA-DEVS. The resulting TA models are a subset of deterministic safety automata and can be used in the UPPAAL (or other similar) model checkers.

Chapter 4 presents a set of software engineering techniques for improving performance of real-time simulations through code generation and metaprogramming. It applies C++ template metaprogramming to DEVS in the simulation domain. The “metasimulator” employs specific static pieces of information of the models such as component names to evaluate certain parts of the simulation during template instantiation and generates a residual simulator specialized for a given model, where only the dynamic operations remain. Thanks to this, several improvements are obtained over more classical approaches that do not use metaprogramming.

Chapter 5 introduces basic modeling capabilities of the Unified Modeling Language (UML). UML provides a built-in extension mechanism through profiles, which allows tailoring the UML to a particular domain or target platform. One such extension, the profile for Modeling and Analysis of Real-Time and Embedded Systems (MARTE) is specifically directed toward real-time simulation. The MARTE profile is described followed by a discussion on remaining challenges on the road toward a systematic and effective model-driven engineering approach utilizing the UML.

Chapter 6 addresses the modeling and simulation of safety-critical embedded applications where timing requirements are specified in the Timing Definition Language (TDL), which supports the Logical Execution Time abstraction. It further describes the TDL constructs and sketches the seamless integration of TDL with two simulation environments: the MATLAB® and Simulink® products from MathWorks and the open-source Ptolemy framework from the University of California, Berkeley.

SECTION II: REAL-TIME SIMULATION FOR SYSTEM DESIGN

Section II focuses on the importance of real-time simulation in system design and how computational modeling and simulation help identify critical issues in the design while assisting in feasibility studies and design space exploration.

Chapter 7 presents a progressive simulation-based design methodology that uses fast and real-time simulations at different stages of the design process for networked real-time embedded systems. The methodology supports systematic transitions from simulation models to system realization. The methodology is applied to the development of a cognitive radio network that exploits the functionality of software-defined radio and includes experimental results.

Chapter 8 describes a new simulation environment called Validator for verification and validation of the real-time behavior of embedded systems. The corresponding tool suite offers advanced features for debugging the timing behavior of embedded systems and as such fills the timing gap between conventional hardware-in-the-loop and software-in-the-loop simulation environments. The simulation tool is used in the validation of an engine controller system.

Chapter 9 provides an introduction to and overview of real-time simulators after it first defines real-time simulation. Particular application focus is on electromagnetic transients, power systems modeling and simulation, and control prototyping techniques.

Chapter 10 presents a transaction-level technique for the modeling, simulation, and analysis of real-time applications that execute on a multiprocessor systems-on-chip architecture. The novelty of the technique is that it is based on an application-transparent emulation of the operating system primitives, including support for real-time operating system elements. The proposed methodology enables a quick evaluation of the real-time performance of an application with different design choices, including the study of system behavior as task deadlines become stricter or looser. The approach has been verified on a large set of multithreaded, mixed-workload (real-time and non-real-time) applications and benchmarks.

Chapter 11 introduces a compositional framework for system-level performance estimation of heterogeneous embedded systems. The framework is simulation based and allows performance estimation to be carried out throughout all design phases ranging from early functional to cycle accurate and bit true descriptions of the system implementation. The key strengths of the framework are the flexibility and refinement opportunities as well as the possibility of having components described at different levels of abstraction coexist and communicate within the same model instance.

Chapter 12 discusses various approaches to address the consistency checking problem in UML models used for real-time modeling. The chapter first identifies a set of core requirements to address the consistency problem of the UML and then analyzes the existing approaches in the literature and evaluates how they fulfill these requirements. The approach is to define an explicit ontology that captures the modeled target domain and to define a simple execution framework based on this target ontology.

SECTION III: PARALLEL AND DISTRIBUTED REAL-TIME SIMULATION

Section III focuses on how to apply parallel and distributed simulation techniques to enable and reduce simulation time of large-scale applications in an effort to harness the computing resources of parallel computers.

Chapter 13 describes the process of flight control system (FCS) development where simulation plays a critical role in interactive design, validation, and verification. After a number of simulation-based platforms are introduced, one such interactive FCS development and real-time simulation test bed is presented as a case study. The design case study uses a business jet aircraft model to illustrate the interactive FCS developments and is followed by a summary of challenges and lessons learned.

Chapter 14 documents an approach to developing virtual supervisory control and data acquisition (SCADA) models and validating the models using a local test bed. Moreover, it shows how other researchers can use the local test bed to validate their own technologies. First, the chapter gives a background on the network communications simulator Real-Time Immersive Network Simulation Environment, which provides the basis for the SCADA models. Then, it details the unique characteristics of the power grid, the primary protocols used in SCADA, and the main steps taken to develop the virtual test bed.

Chapter 15 provides a basic overview of distributed real-time Simulation-Based Training (SBT), which is a specific application area of parallel and distributed simulations. The chapter opens with a brief description of distributed real-time SBT and its development, after which it lists the recurrent challenges faced by such systems with respect to instructional best practices, technology, and use.

Chapter 16 presents a real-time simulation approach for the online optimization of Discrete Event Systems (DES). Key to the approach is an observer that collects information (e.g., event lifetimes) from the sample path of the DES. This information is then concurrently processed by real-time simulation modules that construct the sample paths of the system under different parameter or policy settings. From the constructed sample-path estimate, various performance metrics can be estimated and used to select, in real time, the best possible such setting.

SECTION IV: TOOLS AND APPLICATIONS

Section IV focuses on industrial real-time simulation tools and applications in many engineering domains, ranging from design of large-scale and complex systems such as automobiles, including their control algorithms, to operator training.

Chapter 17 discusses time dilation as a new technology for accurate simulation of large-scale systems. The time dilation mechanism in the simulation context attempts to correct clock drifts in a distributed system allowing for closer approximation of target behavior by simulated tests. A prototype of this time dilation technology called DieCast has been implemented by researchers at the University of California at San Diego. This chapter explores the benefits of this technology to date, summarizes what testers must consider when using DieCast, and describes future work necessary to mature time dilation techniques and tools for simulation of large-scale distributed systems.

Chapter 18 describes the development of and experience with a simulator to train replacing the rolls of a steel rolling mill. Because production is fully automated and operating continuously, the actual machine is not available for training. Instead, an operator-training simulator replaces the functionality of the actual machine by its simulation. To attain a high level of fidelity, the machine simulation executes with a replica of the actual electronic control system hardware in the loop.

Chapter 19 describes a real-time platform for controller design, test, and redesign. Emphasis is on recreating actual operating conditions for examining and analyzing the real-time performance of designed controllers while still having the opportunity to modify and tune the controller candidates based on their performance. The controller design, test, and redesign platform was developed to provide a high level of flexibility in choosing from various controller and plant models in the early stages of the controller design while creating conditions as close as possible to the physical world in the final design stage.

Chapter 20 describes important aspects of how automotive development benefits from real-time techniques for modeling and simulations and hardware-in-the-loop methods. Real-time simulation is discussed as a key enabler of earlier and more informed design tradeoffs and decisions. Prerequisites for and results of successful detailed real-time engine simulation are included.

Chapter 21 continues the specific automotive perspective by presenting specification and simulation of applications using the Automotive Open System Architecture (AUTOSAR). AUTOSAR was created to develop an open industry standard with a common software infrastructure based on standardized interfaces for software component specification and integration at different layers. The chapter provides an introduction to AUTOSAR as a language for system-level modeling and software component modeling.

Chapter 22 introduces the modeling language Modelica as a modeling platform to support real-time simulations of physical systems. A brief introduction to the Modelica language and its fundamental language features are given while highlighting its applicability to a wide range of engineering domains and key features that make it a convenient modeling platform to support real-time simulation. Selected simulations show the computational impact of symbolic model formulation and manipulation.

Chapter 23 presents real-time simulations of multidomain physical systems using Simscape™ of MathWorks to support model-based design. This chapter outlines the steps in moving from desktop to real-time simulation by illustrating how to find a combination of model complexity, solver choice, solver settings, and real-time target that permits execution in real time. These steps are formulated such that they apply to real-time simulation irrespective of which real-time hardware is used.

Chapter 24 develops a systematic approach to designing models of plant or actuator dynamics that are used to validate the performance of a controller. The approach maintains the inherent nonlinear behavior of a hydraulic circuit while being based on a simplified representation of fluid dynamics. The approach is demonstrated on a circuit consisting of a servo valve controlling the fluid pressure in a closed pipe.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
13.59.107.152