Home > Products & Services > Software components > Orchestra
Product Information
Overview
Description
Using RT-LAB Orchestra
Download Brochure
 
Related Documents
Related Products

RT-LAB Orchestra overview

RT-LAB Orchestra is a software application that facilitates integration and interoperability between co-simulation components. Using the RT-LAB Orchestra API, components connect to an RT-LAB framework and exchange data with other co-simulation components, synchronously or asynchronously.

Why is co-simulation required?

  • Multiple simulation domains might be involved
  • Different teams work together
  • Various languages and simulation tools are used
  • Government agencies may require legacy code to be re-used

As a result, models can be heterogeneous or require data hiding.

How it works

The core of Orchestra′s architecture is a user configurable communication layer, sitting on top of the RT-LAB framework, whose role is to provide a transport layer between distributed simulation nodes, and to act as a real-time scheduler for co-simulation. The communication layer consists of a set of shared-memory segments, one per domain. As a result, co-simulation components are co-located within the same RT-LAB simulation node.

Co-simulation components exchange simulation data via the communication layer by calling functions of the Orchestra RT-API, described below. Orchestra distinguishes two types of co-simulation components, namely the RT-LAB framework itself, and external components. Logically, an external component is a process that is not part of the Simulink-based model that the RT-LAB framework instantiates for real-time execution.

Physically, an external component is a cohesive software entity that embeds calls to the RT-API, and that is compiled and linked to form a stand-alone process. A single domain participant acts as a reader or a writer by using the RT-API to send or receive data respectively.

Orchestra is designed to be extensible; this is accomplished by clearly decoupling the RT-API from its implementation on the RT-LAB framework side. As a result, different domains may rely on separate implementations of the communication layer.