With the growing complexity of systems in areas such as automotive, aerospace, and communications, integrating software, hardware, and mechanical components is becoming more and more challenging. In many engineering organizations, the design of complex systems often requires the cooperation of several teams from different domains of expertise using different development and validation tools. Before actual implementation, system engineers today need to be able to validate the whole system behavior as early as possible in the development- cycle and at different abstraction levels.
In contrast to a point-to-point solution, where one simulator is able to communicate with only one other simulator, CosiMate uses an open architecture based on a co-simulation bus.
This solution offers two major advantages, an open architecture enabling multi-point integration and communication of heterogeneous simulators, and the ability to simulate models across the network optimizing CPU usage and simulation performance.
CosiMate's open architecture enables engineers to connect an unlimited number of simulation environments together. Once the co-simulation process is launched, users can interact with the native simulators transparently as if CosiMate were not present.
Models representing different abstraction levels can be mixed and matched providing a high degree of flexibility. Additionally, overall system quality is ensured because individual engineers can work in their familiar environment.
CosiMate can be used as a test environment by integrating C/C++ debuggers or monitors as well as Test & Measurement tools such as LabVIEW or LabWindows/CVI. Specialized tools such as CarSim, which simulates and animates dynamic tests of cars and trucks, can also be supported.
CosiMate provides a set of utilities such as the Automatic Bench Generator to facilitate the development of models or code without co-simulating the full system. The generated C code allows an easy way to test a part of the system by using co-simulation techniques.
CosiMate has the ability to co-simulate a model at different levels of abstraction. This capability provides a complete environment to verify a non regression of the model functionality along the design flow.
Working with our OEM customers, Chiastek has proved the concept of software-in-the-loop (SIL) verification using CosiMate. Our customers created a complete framework for testing production control software against various plant models on PCs. The focus is mainly on software communication (direct I/O, CAN, ...), software initialization (calibration), system synchronization (task scheduling).
CosiMate's networked architecture is well adapted to the concept of multi-disciplinary development teams. Because of its networked nature, CosiMate also supports the study of system behavior in a multi tasking mode by partitioning the model and distributing the simulation of the various parts across several different machines. In a number of customer benchmarks, this technique has contributed to significant improvements in simulation speed.
CosiMate technology offers a solution to overcome the difficulty in simulating integrated, large-scale, dynamic systems. A potential speed up of 2 to 11 was measured on an actual large Simulink model. Significant reduction in simulation time is achieved by the traditional technique of partitioning (splitting the full-order model into several smaller parts) and simulating on single or multiple computers.
Users configure the co-simulation session using a graphical drag & drop interface and must define the following set of parameters: simulator list (types, network addresses, etc.), connection types between simulators, and simulation start mode. A data manager controls data synchronization between the different environments throughout the co-simulation process. Internal scopes are also available to follow the activity on the co-simulation bus.
An important CosiMate feature is the easy way to interact with the user’s preferred simulator. In addition to the default CosiMate user interface to control the co-simulation, CosiMate allows execution in the native simulation environment. As a result, CosiMate users can easily work in their familiar environment controlling, debugging, and monitoring simulations as if they are running in a stand-alone mode.
The Interface Development Package is a set of tools, resources and documents to facilitate the integration of new simulators into the CosiMate framework. The new interface code is developed and compiled within the Eclipse CDT environment. The end user manages the components of the CosiMate library by using graphical XML editing capabilities in the Eclipse environment. The CosimMate API documentation is available and integrated in the Eclipse IDE.
In addition to creating new interfaces, users have the ability to customize the interfaces to simulators such as Simulink and Saber which are currently supported in the standard CosiMate offering.
FMI defines an open interface to exchange models (FMI for Model-Exchange) between various simulation environments, or to co-simulate the models together (FMI for Co-simulation).
The integration done with the CosiMate platform allows co-simulation between FMI and non-FMI models as Simulink®, Saber® or other type of simulator. Moreover, the CosiMate environment is enough powerful and flexible to enable co-simulation between FMI for co-simulation and FMI for model-exchange models.
Windows 32 and 64-bits: XP Pro SP2+, Vista, 7, 10.