Mi carrito | Mi perfil | Ayuda | English Site    

Productos:
 Búsqueda rápida:
 
Soluciones para:
Mi perfil:
Sobre Aertia:
 

Altia Connections -Simulation Graphics-

de Altia

Altia Connections incorpora módulos que conectan sus prototipos virtuales, gráficos de simulación e interfaces de usuario embedidos desarrollados con Altia Design con su propio código de aplicación o bien modelos de simulación.

Descripción | Más información | Demos | Precios | Sectores | Plataformas

Why Simulation Graphics ? - A White Paper -

Pagina nueva 1


Simulation Graphics - a White Paper

Maximizing Your Modeling Investment to Reduce Cycle Times


Abstract

This paper explores the costs and benefits of using graphics as part of the embedded systems modeling and simulation effort. It defines the term "simulation graphics" and positions it in the context of the overall development process. Finally, it offers guidelines for how and when to use graphics to optimize the cost- benefit ratio.


Introduction

Before explicitly defining the term "simulation graphics", it is helpful to look at an example that illustrates the need for simulation graphics.

An automobile company?s marketing department determines that a "smart" cruise control system will differentiate it from the competition. This system has radar to detect the position of other cars and is meant to maintain safe following distances while maximizing speed. Unlike its predecessor, this new cruise control can automatically slow down the car and even apply the brakes.

These new capabilities seem straightforward enough, but they affect a notable number of sub-systems in complex, untested ways. Besides requiring a significant rewrite in the cruise control software, this feature affects the engine control system, the braking system, the suspension, and countless other components and electronics. The people involved in the design and implementation of this new feature include industrial designers, embedded programmers, electronics engineers, mechanical engineers, control systems engineers and even technical writers.

Because of its complex nature, the engineering team decides to create a complete system-level model of the new feature and the affected sub-systems. The engineers start the modeling process using the written specifications from the marketing department. They simulate the design, find defects and rapidly fix them. After six months of effort, each of the participating engineering teams feels comfortable with the results.

Before finalizing detail specifications to be used in the implementation process, the engineering team decides to check the model with the marketing department, company executives and a few prospective customers. They start by showing the marketing department their block diagrams, graphical plots and statistical analysis of simulation results. Because of the abstract, dry nature of this representation, the marketing manager becomes confused quickly. He provides no useful feedback. The marketing manager tells engineering to proceed by building a physical prototype.

Unsatisfied with the prospect of building an expensive physical prototype without adequate initial feedback from marketing, engineering builds an interactive, photo-realistic graphical model of a dashboard that looks and behaves like a car?s real dash. Figure 1 shows this view and the attached control system model. They add a few other cars to simulate road conditions and connect this graphical model to their simulation. The entire "virtual prototype" is sent back to marketing. It is immediately put through its paces and within five short minutes, a problem is found. Someone hits the brakes and expects the cruise to turn off completely. Instead, the cruise control begins to accelerate the car after the brake is released. The driver of this virtual vehicle crashes into another car.

The team analyzes the cause of the problem. The marketing department never explicitly accounted for this case in the written specifications, so the software engineer made some assumptions based on his own experience. "Of course you would want the car to accelerate under these conditions. Why else would you want a smart cruise control?" At this point, the programmer asserts that the marketing manager was wrong to expect the cruise control to turn off under these conditions. The marketing manager argues that it does not matter whether he was right or wrong. The fact remains that he crashed the car, and it is likely that other drivers would do the same. The programmer agrees.


 

Figure 1: Simulation graphics for a cruise control model.
 

More testing is done and twelve equally critical problems are found. The specifications are rewritten and the model is fixed. A total of one month is spent on the fixes. The team estimates that the fix would have taken nine months if the problems were not found at the early modeling stage using simulation graphics. In addition, it would have cost over $250,000 to build the hardware prototype needed to find the same bugs. More importantly, the amount of revenue lost during this extra eight-month period would have been several million dollars.

This example illustrates an essential benefit of simulation graphics. You can find mistakes early in the design process. This saves money and reduces cycle time.


Modeling and Simulation Tools

Simulation graphics software is used to enhance the value of modeling and simulation tools. Simulation graphics do not stand alone. For this reason, a short discussion of the available modeling and simulation tools is necessary.

Figure 2 is a chart of the simulation and modeling tools for embedded systems development. From left to right the tool chart covers the engineering disciplines involved including mechanical, electrical, system and software design. From top to bottom the chart spans the range of high-level design tools to low-level tools used at the implementation stage.

 

Figure 2: Embedded system modeling and simulation tool chart.
 

Manufacturers have used low-level tools as a standard part of the development process for many years. CAD/CAM software, board layout tools and software compilers are now mainstream products. These tools are necessary to build embedded products. The high-level tools are not yet necessary, but those who use them gain a significant competitive advantage. As systems become more complex and competition strengthens, these tools will change from being optional to necessary.

System simulation tools help manufacturers understand and design very complex systems that integrate hardware and software. Their most important contribution is to create an executable version of the specifications, without the cost of building a physical prototype. This executable specification is often referred to as a "virtual prototype". The virtual prototype is valuable because, unlike a physical prototype, it is relatively inexpensive, quick to change and easy to re-test when an error is found.

While the value of these system simulation tools is high, they have serious drawbacks. They can be very complex, and those unfamiliar with them, such as managers and customers, do not typically understand their operation or results. The purpose of simulation graphics is to make the benefits of these tools accessible to the customers and managers who must make the critical decisions about the product?s development and marketing direction.

Simulation graphics software links to the high-level design tools because it is the first representation a customer sees. However, the value of graphics can be further enhanced if it also links to low-level tools and various tools across engineering disciplines. This provides a common view to the customer and enables high-level testing at the low-level implementation stage of development.


Simulation Graphics

To understand the benefits and purpose of simulation graphics, we must first define the term. Simulation graphics are the graphical user interface components for viewing simulation data and interacting with the simulation model. By simulation graphics, we do not mean the graphical block diagrams used to build the basic model structure. Nor do we mean the GUI that?s used to build this model. Simulation graphics are classified into four major categories.

  1. Simulation Data Display
  2. Simulation User Interface
  3. System Visualization
  4. Virtual Front Panel


1. Simulation Data Display

Simulations produce a large amount of data. The more complex the model, the more data produced. The usefulness of these simulations not only depends on the completeness and accuracy of the model, but also on the ability to view the resultant data in an organized, convenient and comprehensive manner.

 

Figure 3: Simulation data display components
including plots and strip charts.

 

Data display graphics show this data in several forms. They include plots, strip charts and numeric displays. These are "output-only" graphics, that is, the user simply views them. The user does not add input that affects the simulation. Data display graphics can be viewed in real-time or post-processed when the simulation completes. Figure 3 is an example of such a display.

There are several benefits to a well thought out graphical data display screen. First, when viewing data in real-time, information is displayed quickly. A properly organized data screen allows the user to see bugs and optimizations at a glance, even if the data is scrolling by rapidly. Second, data is not only important by itself, but also in relationship to other data. For example, a falling tachometer by itself is not abnormal. However, if at the same time, the speed is increasing and the accelerator is being pressed, then you know there is a problem with the model. A well-designed data display can help you catch these interactions. Third, the number of interesting data streams can grow rapidly until, eventually, you have multiple pages of data displays. The advantage of a good data display package is that it allows you to collect your most important data and arrange it in one or several well designed screens for easy viewing and navigation. With the additional use of audible and visual alarms, colors, line styles, large and bold fonts, etc., we can catch error conditions or optimization opportunities that otherwise would have gone unnoticed. The ultimate result is a shortened development cycle because mistakes in the model and specifications are found as early as possible.

Data display graphics are typically for internal use only. They are a debugging, optimizing and design tool. Although in some cases, a well designed data display screen can be used to communicate results to those who are not using the modeling tool directly. This type of communication, however, is usually reserved for the photo-realistic, virtual front panel stage of simulation graphics. We will discuss this later.

Most modeling and simulation tools come with a basic set of data display components. These have the advantage of being tightly integrated and easy to use. They have the disadvantage of limited functionality and are often difficult, if not impossible, to extend. In this situation, the modeler must create his own display software from scratch or use a third-party graphics package. If he is displaying real-time graphics, this package must be integrated with the simulation tool. If the data is being post-processed, the graphics package must be able to read from files.

An advantage of going to a third party graphics package is that the graphics displays can be re-used by other members of the development team who are using different simulation tools. The basic built-in graphics that are packaged with the simulation software, on the other hand, can only be used with one tool. In addition, having a common screen shared by different parts of the design process allow for a consistent view of the data. This consistency is helpful as subsystems are integrated to create the complete embedded product.


2. Simulation User Interface

All modeling and simulation software comes with some type of Graphical User Interface (GUI). These GUIs allow the modeler to create the graphical diagram and set parameters of the models. These GUIs are typically general purpose and relatively complicated to learn; therefore, only the modeling expert is qualified to change the model or its parameters. Quite often, however, it is desirable to have an application expert, who is not the modeler, make changes to the model and its attributes so he can perform "what-if" scenarios to test and optimize the system.

A high-level simulation user interface allows the modeler to create a "model specific" GUI that others can use with little or no training. It allows the application expert to set parameters and make limited changes quickly and easily, without learning the modeling tool. This saves significant time because the application expert does not have to wait for help from the modeler. It also allows the application expert ample time to "play" with the model without worrying that he is tying up the modeler?s time and resources. This "pressure-free" environment results in better, more complete model testing. Figure 4 is an example of a simulation user interface that can be used by a application expert to optimize conditions.

 

Figure 4: Simulation user interface for an automobile
engine control system.

 

Modelers can also use the simulation user interface to log events created by the application expert. This provides an elegant and efficient method of generating regression tests. This simulation user interface often takes the form of simple, off-the-shelf input or control components such as sliders, dials and numeric input objects. They have the ability to work in run-time as well as the development environment. The simulation user interface can even be run over the web while the simulation is being run on a server in a central location.


3. System Visualization

Most embedded products work as part of a larger system, so the design of these products requires a simulation of the entire system, not just the stand-alone product.

 

Figure 5: System visualization of an airplane flight control system.
 

In these cases, it is useful to create an animated graphical representation of the entire system. For example, a traffic pattern of cars must accompany the car that is being simulated and tested. Traffic lights, streets and pedestrians might also be represented. In addition to interacting with other products, the product itself is nothing more than a collection of sub-systems, which interact and must be simulated and visualized. For example, besides showing the cockpit of an airplane, which provides the obvious view into the airplane?s engine parameters and status, you might want to see an external view of the airplane to observe its pitch or yaw. You may want to see the ailerons and rudder move while you view the artificial horizon in the cockpit. You might also want to see a schematic view of the hydraulic system and light up sections of the diagram as pressure is rising or falling. Figure 5 shows this airplane system view just described.

Unlike basic data displays, system visualizations provide a more custom, application-specific view. An airplane?s pitch is represented by an airplane, which moves on the screen at the appropriate angle. It is not simply a number or plot that represents that pitch. This provides several advantages. First, an application-specific system visualization is much easier for the modeler to understand at a glance. There is less time spent mentally converting abstract representations and more time reconciling different conditions and parameters to determine bugs and optimizations. This could be the difference between catching a bug or missing it. The second advantage is that the application-expert can understand and use the model.

The disadvantage is that it takes additional work to create application-specific graphics. With data display components, you can simply pull them out of a library. Some system visualization components, however, require custom graphics work. This will take some additional effort and the value added must be weighed against the benefits.


4. Virtual Front Panel.

One of the most powerful and dramatic benefits of simulation graphics is achieved by allowing your customers to participate in the modeling and simulation effort. This helps in two ways. First, the customer will find mistakes in the specifications and model that the systems engineers will most certainly miss. Second, it will help solidify the customer?s idea of what he really wants, not what he originally told you he wanted. This is critical, since the goal is to build products that customers will ultimately buy.

 

Figure 6: Virtual front panel of an airplane cockpit.
 

Creating simulation graphics for customers is much different than for internal use. The graphics must be much more realistic, accurate and complete. This is for several reasons. First, a customer cannot easily understand abstract representations. The modeler understands the model thoroughly. The customer, however, is less sophisticated and knowledgeable, so nothing must be left to the imagination. Second, the customer?s impression of your product is at stake. Even if you tell them "it is only an early prototype", they will judge your product based on that first impression.

So how do you create impressive graphics without breaking the bank or schedule? After all, don?t these 3-D, virtual reality style animations take years of work, hundreds of programmers and massive graphics workstations to create? No ? and the answer lies in re-use and selective graphics design. The important thing is that the prototype looks good, is interactive, has real-time response and is accurate. It does not have to be a Hollywood production.

The looks are actually the easiest part. With today?s plethora of excellent graphics packages such as PhotoShop, Freehand and CorelDraw you can cheaply and easily create high-quality, photo-realistic images. You can also import bitmap images from sources such as scanners, digital cameras and 3-D rendering software. Such renderings are often readily available as part of the early mechanical design and prototyping process. These photo-realistic images provide more than enough graphics fidelity. These images have the look of a 3-D prototype but the interactive speed and ease of manipulation of 2-D graphics. At this point you can add the interaction, behavior and animation to bring the graphics to life. You connect the animated graphics to your simulation model and you have a customer ready virtual prototype. The key is that these graphics can be created quickly and do not require expensive hardware to run in real-time.

When creating virtual front panels for customer use, it is recommended that a graphics or industrial designer help create the graphics images and animations. These people are much more effective at creating realistic looking models, and they are a lot cheaper to use than systems or software engineers. For example, the cockpit display in figure 6 was created by a graphics designer at ¼ the cost and ½ the time of a software engineer. More importantly, the result is much more impressive.


Benefits of Simulation Graphics

As we discussed the different types of simulation graphics, we touched on the benefits that each provides. This section summarizes those benefits. Simulation graphics significantly enhance and optimize the simulation and modeling process. Specifically, simulation graphics provide the following advantages.

  1. Involve Customers
  2. Enable Collaboration
  3. Accelerate Debugging

To understand the benefits of simulation graphics we must understand the development process. This means knowing where mistakes are made, and what is the cost of those mistakes. This cost is quantified in time, money and lost opportunity. A typical product development process follows the following stages.

  1. Marketing researches customer needs
  2. Marketing writes product specification
  3. System engineering partitions and defines specs for functional sub-systems
  4. Individual engineering teams design and implement sub-systems
  5. System engineering integrates and tests
  6. Marketing tests prototype
  7. Back to step 2.

This loop continues until a) they get it right, b) they run out of time, c) the project is cancelled.

Modeling and simulation are used to shorten this cycle. By simulating at stage three, the development team can test designs, architectures and assumptions about the specifications and market research. A mistake caught here can save a significant amount of time and expense. The absolute savings, of course, can vary from company to company. For large automotive companies, the savings is in the millions for each new car program. For a smaller company, it may save ten to a hundred thousand dollars in product development cost. In either case, the savings go right to the bottom line.

 

Figure 7: Benefits of graphics -- reduced cycle times and cost.
 

Figure 7 illustrates these savings. The dotted line represents the current process, without simulation or graphics. In this case, engineering resources are spent at a steady state until a deadline approaches. At this time, it is discovered that resources must be added to make the deadline, and even then, it is often too late. In this case, adding extra resources at the beginning does not help because there is nothing for them to do until hardware prototypes are built. Also, you do not know what kind of people to add until you have a better feel for the over-all architecture.

Simulating provides a mechanism to get started on these problems earlier. It takes additional effort to create the simulation model, but then bottlenecks can be identified and the appropriate resources can be brought into the project. In addition, you can begin the software test and debug process long before hardware prototypes are ready. This alone can make the difference in meeting the deadline.

Graphics accelerate this process even more. Since customers can get involved early, many of the specification errors can be identified and a full-force implementation effort, without fear of significant re-design, can begin as early as possible.

As enumerated above, the three advantages that graphics provide include involving customers, enabling collaboration and accelerating the debug process. These benefits are discussed in more detail in the following pages.

  1. Involve Customers
    The only way to involve customers early is with simulation graphics. Customers cannot use or understand the simulation models directly. As discussed in the "virtual front panel" section above, the advantages of involving customers early are clear. First, the customer will find mistakes in the specifications and model that the systems engineers will most certainly miss. Second, it will help solidify the customer?s idea of what he really wants, not what he originally told you he wanted. This is critical, since the goal is to build products that customers will ultimately buy.


     
  2. Enable Collaboration.
    By collaboration, we mean three things. Sharing designs between 1) different engineering disciplines, 2) multiple locations, 3) different companies.

    Models are complex and the tools to build and simulate them are expensive and require significant computer power. For this reason, they cannot be readily shared. Creating a graphics front end can mitigate this problem. If the graphics architecture is defined properly, a separate graphical user interface can be made transportable and re-usable. This allows easy sharing, and in some cases the simulation user interface can be viewed on the web over multiple locations and computer operating systems, while the simulation is running on a single, high-end server that can accommodate the stringent performance and operating system requirements of the simulation. This can save large amounts of computer hardware and travel expenses. More importantly, engineers work together early and often. The result is a better product produced quicker.


     
  3. Accelerates model debugging.
    The first two benefits focus on the interaction of the modeler with the outside world. However, simulation graphics have something to offer the modeler alone. Simulation graphics, even in its simplest form, can help the modeler visualize his system and thus find bugs quicker. Although a modeler may know his model thoroughly, a new perspective can offer a substantial advantage. Simulation graphics provide that new perspective. Even if the graphics help to uncover only one additional bug, they are well worth the effort because that bug can make the difference between the product?s success or failure.

     

     

Guidelines for Using Simulation Graphics

For all its benefits, simulation graphics can be improperly used. This section lists some guidelines for creating and using simulation graphics so you optimize the benefits while minimizing the costs.

  1. If possible, separate the simulation graphics from your model. This enables re-use and collaboration. It also ensures that your graphics are not tied to any particular methodology. Therefore, if you change modeling tools or methodologies, you can still use the same graphics.

     
  2. If you are just working on a self-contained algorithm that does not require visualization and nobody but the modeler will see the model, then do not use custom, photo-realistic graphics. Use off-the-shelf data visualization or simulation GUI components.

     
  3. Get in the habit of using graphics immediately. Even for simple data displays. It creates a solid foundation for you to build graphics displays easily as the model gets complex.

     
  4. If customers, executives or managers are going to see your model, get help from a graphics professional. Compared to engineering talent, it is relatively inexpensive. People notice good graphics and it can enhance the perception of the accuracy and validity of the model. It also provides a good first impression of your product.

     
  5. If you are going to collaborate across multiple locations, build a web page early in the process. It will be well worth the effort. As you get further along in the process, you will have a hard time justifying the need to create the web page, and you will regret not doing it. Conversely, having this web page will help your model get significant attention, which may translate to more resources from customers and company executives.


Summary

Modeling and simulation has become an essential part of the design process. Simulation graphics can significantly enhance the value of these powerful yet costly models. Simulation graphics take on many forms ranging from simple data visualization components to photo-realistic virtual front panels. The degree of graphics fidelity required depends on the purpose of the model. If customers are involved, photo-realistic graphics are necessary. Likewise, if project funding is on the line, impressive graphics are recommended. On the other hand, if the model is going to be used for internal use only, then off-the-shelf, general-purpose graphics components should be sufficient.

While there are many benefits of simulation graphics, a modeler must also consider the cost. If used appropriately, however, the cost of creating simulation graphics is typically negligible when compared to the overall cost of the modeling effort.

The benefits of graphics include involving customers, enabling collaboration and accelerating the model debugging process. These benefits translate into shorter development cycles, lower cost and better products.

 
Más información relacionada
Why Simulation Graphics ? - A White Paper -
 
  ACCIONES
» Enviar a un amigo
» Imprimir página
» Suscribirse a este producto

» Ver precios
» Ver productos de Altia
 

 
© 2004-2005 Aertia Software  •  C/ Sardenya, 229, Sat. 5  •  08013 Barcelona
Teléfono: 93 2651320  •  Fax: 93 2652351  •  E-mail: info@aertia.com