Skip to content
Login / Sign Up

SIMulation Workbench

Powering the world’s most sophisticated simulators

Get A Quote

SIMulation Workbench Release 2024.1-0 introduces async model support, UEI hardware integration, improved rFpro IP handling, MATLAB R2023b compatibility, CAN DBC record saving, time tracking in SimWBStats, and Windows installation via WSL!

What is SIMulation Workbench?

SIMulation Workbench™ (SimWB) provides a comprehensive framework for developing and executing real-time hardware-in-the-loop and man-in-the-loop simulations.

The SimWB real-time core is organized around a very fast memory resident database (RTDB). Simulation models and I/O processes have direct access to the RTDB with very low latency. Models, I/O processes, and their corresponding digital twins run sequentially during the real-time loop with their execution dispatched by the SimWB scheduler. This modular design allows for complete I/O independence from the various models with a point-and-click GUI. It provides scalability across multiple cores as the number of simulation models and hardware I/O devices increase. SimWB leverages the powerful features of Concurrent’s RedHawk™ Linux® real-time operating system and is fully optimized for multi-channel applications.

Architecture

Real-Time Host – The real-time system hosts the memory resident real-time database (RTDB) and runs the data input and output tasks as well as the MATLAB RTW and user (Script) programs.

SIMulation Workbench Scheduler — initiates, monitors and dispatches the execution of one or more models/processes. Models and/or processes are executed according to their run position in the simulation loop.

SIMulation Workbench Data Logging — Each individual item defined in the RTDB can be logged at a configurable period. Whether an item is logged and at what period it should be logged is defined in the RTDB.Whenever the CVT value, alternate value or real-time flag associated with the item changes, the item is placed in a data logger record for the specific fame under execution.

I/O tasks — SimWB I/O tasks handle the specifics of talking to a hardware device. By keeping the separation between I/O tasks, Models and Scripts, the user can write his/her application models and scripts transparently.

Supports WAVE-RT, SIMPACK, rFPro, Simulink, DYNA4, LMS Motion & AMESIM, GL STUDIO, PreScan, CarSim, ADAMS, Genesis RTX, MapleSim, GT-SUITE, VIGrade, FlightGear, and Dymola

Features

SIMulation Workbench on Windows

SIMulation Workbench is now available on Windows through Windows Subsystem for Linux 2. Learn more about how SIMulation Workbench on Windows supports model preperation before deployment to hard real-time Linux environments.

Real-Time Linux Simulation Platform

SimWB is delivered on fully-integrated Concurrent iHawk multiprocessor platforms running the RedHawk Linux real-time operating system, specifically designed for embedded software applications. iHawk systems are based on COTS components offering the latest processor, chipset, memory, and I/O bus technology. Concurrent’s state-of-the-art COTS-based iHawk systems offer significantly greater performance than simulation solutions that use proprietary hardware, making them an excellent choice for demanding embedded software scenarios. All I/O devices and Linux drivers required for a simulation are fully integrated and tested by Concurrent.

Support for Industry Standard Tools

SimWB supports modeling environments such as Simulink®, VI-grade, SIMPACK, AMESim, Dymola, veDYNA, MapleSim®, GTSuite and CarSim®. SimWB also supports the environment-independent FMI standard. An extensive API allows hand-written C, C++ and Fortran models to be integrated directly into SimWB and executed along with other models.

SimWB’s MLToolkit component is fully integrated with MathWorks® Simulink. Models can be easily imported from Simulink using a SimWB tool without a need for inserting hardware specific S-function blocks. Model parameters are automatically extracted from Simulink models and mapped into the RTDB allowing them to be modified at run-time. SimWB natively supports multi-rate simulation models developed using Simulink by targeting different rates to different CPU cores.

SimWB interfaces with products such as GenesisIG from Diamond Visionics™, rFpro, PreScan, FlightGear, X-Plane®, etc. SimWB provides a comprehensive API to allow customers to implement interfaces to other external environments.

Real-Time Database

The RTDB stores definitions of all data items used by the simulation such as model variables and their mapping to I/O boards and model parameters. RTDBs can be automatically created from Simulink and other modeling tools via a GUI. RTDBs provide for complete I/O independence from models. All the information necessary to configure I/O points and data bus protocols, and to read, convert, write and store simulation variables is maintained in the RTDB.

Complete GUI Control

SimWB’s platform-independent Control Center (Windows® or Linux) provides the front end to configure and manage the real-time engine. The Control Center is a network client that can run on any system connected to the SimWB real-time machine.

Simulation Playback

SimWB’s Playback tool allows recorded test runs to be replayed into the system. The user selects the recorded session and simply starts a test run in playback mode. The playback interface allows a user to forward to a specified time within a recorded session as well as stepping through its execution frame-by-frame.

MLToolkit/PYToolkit

MLToolkit

Provides support for integrating MATLAB/Simulink models seamlessly into the SimWB environment. The MLToolkit is installed as a part of the MATLAB/Simulink environment and provides access to real-time host from within Simulink via the MLToolkit GUI and within MATLAB via the SimWB API. This MLToolkit GUI and the command line API provide an easy workflow which facilitates the generation of SimWB compliant code from Real-Time Workshop® (RTW) a.k.a. Simulink Coder(MATLAB R2011b and later). Simulink model parameters are automatically extracted from the RTW model and mapped into the RTDB so they can be accessed at run-time. 

PYToolkit

SIMulation Workbench’s python toolkit, PYToolkit, provides a complete client-side API for all of the SimWB capabilities related to test manipulation and control.  

Data Recorder

With the SimWB Data Recorder tool, any RTDB point can be logged in real-time. Hardware and engineering unit values as well as run-time flags and time stamps are recorded. Depending on the performance required, data recording can be run on the real-time host or on a separate networked server. Data recording can be turned on and off during simulation runs by GUI command, real-time script or user program.

Data Visualization and Plotting

SimWB provides a GUI viewer tool to display and plot RTDB items in real-time. Values are refreshed in real-time and time plots can be zoomed in, paused and configured as needed. In addition, the viewer can be used to set RTDB item values. SimWB also provides a platform-independent HMI environment to build custom displays including charts, gauges, knobs and image animation. These widgets allow an operator to interact with a running test in real-time.

Test Management via Real-Time Scripting

Swm, an easy-to-use scripting language, provides full control and visibility into SimWB test runs. Swm gives the user realtime access to simulation model data values as well as frame timing information and data recording functions. Users can directly read and modify data, test for logical conditions, trace their test execution and generate a complete HTML report of a test run. A Swm file is automatically compiled to a C executable and then run once per simulation cycle.

Back to top