Teaser_MOC2.png

ctrlX AUTOMATION - Model Connect

KarstenK
Community Moderator
Community Moderator

The Model Connect App serves as a mediator for the connection of ctrlX OS devices to powerful market toolchains for Model-Based Software Development (MBSD). Through the use of the ctrlX Data Layer these toolchains benefit directly from data feeds written by other ctrlX OS apps,  e.g. connecting fieldbus participants. With this architecture even use cases beyond MBSD, such as simulation, virtual commissioning, and live condition monitoring are approachable - all with the powers of the connected tools.

A first and widely sought connection product is the integration of MathWorks Simulink® models from our ctrlX World Partner MathWorks®. As of December 2023 it is now possible to integrate not only Simulink® library elements and ctrlX Data Layer variables, but also MATLAB® functions/scripts into the model.

The Model Connect app can feed model inputs with data from other apps via the ctrlX Data Layer.The Model Connect app can feed model inputs with data from other apps via the ctrlX Data Layer.

Why use Model-Based Software Development?

MBSD uses descriptive design languages to define system behavior and functionality to auto-generate control code. The code design process is eased through the use of models, which may be graphical or textual notations, such as UML diagrams, state charts, or block diagrams in simulation environments. The goal of MBSD is to improve the quality, efficiency, and maintainability of software development. It promotes the usage of templates and nested structures, as well as black-box thinking, allowing developers to focus on the functionality and behavior of the software instead of struggling with implementation details: a low-code software development alternative.

ctrlX OS Target for Simulink®

Dive into MBSD and the powers of MathWorks Simulink® through a Simulink® plugin targeting ctrlX OS devices, such as the ctrlX CORE. Check out the How-To on usability and user stories.

Generate C++ code from a Simulink® model and deploy to a ctrlX OS device using Model Connect.Generate C++ code from a Simulink® model and deploy to a ctrlX OS device using Model Connect.

Key Features
  • A freely available Simulink® Support Package to model inputs from external components and ctrlX Data Layer variables. Also includes templates and samples and can be found in the Rexroth Download-Center.
  • Comfortable, automated, and deterministic deployment of C++ from Simulink® to ctrlX OS devices with the press of one button (requires MATLAB Coder and Simulink or Embedded Coder).
  • A runtime environment on the ctrlX OS device within the Model Connect App to compile, run, and manage multiple real-time models. Advanced "synchronous bundle" allows for harmonisation with scheduler.
  • A live and real-time data connection to manipulate and visualize the ctrlX OS behavior from Simulink® and from the Model Connect app

What does working with Model Connect and Simulink® feel like?

Developing software is a continous process, also with MBSD. Therefore, we made the process to generate, deploy, compile, test, and view modeled control behavior as easy as possible: at the press of a button. This keeps developers focused on functionality and makes changes in models and submodels easy.

At the press of a button models from Simulink® are running and explorable on the ctrlX OS device.At the press of a button models from Simulink® are running and explorable on the ctrlX OS device.

Currently the Model Connect app is available in two versions

The Basic License delivers a lightweight scope to model control systems with a limited scope of direct input into the model:  max. 3 Simulink® Library elements (e.g. external sensors, aggregates, or simple integers) PLUS max. 3 MATLAB® functions/scripts PLUS max. 3 inputs from ctrlX Data Layer variables. The executed model runs "freely" outside the scheduler scope. Model outputs are unlimited.

The Performance License enables the development of models with an unlimited amount of inputs form all types: unlimited Simulink® library elements (e.g. external sensors, aggregates, or simple integers), unlimited MATLAB® functions/scripts, and unlimited amount of inputs from ctrlX Data Layer variables. Additionally, the enablement of "synchronous mode" is available to harmonize the model execution with the scheduler and its tasks on the ctrlX OS device. Model outputs are unlimited.

Prerequisites
  • MATLAB (version R2022a or higher) & Simulink, incl. the following tool boxes
    • MATLAB Coder
    • Simulink Coder or Embedded Coder
    • C Compiler: Simulink Coder or Embedded Coder
  • Simulink Support Package: ctrlX OS Target for Simulink® (Toolbox provided by Bosch Rexroth)
Support

Forum ctrlX WORKS

Related Links
SKoenig
SKoenig
Hi, I am Sonja, the product manager for simulation and digital twin products in ctrlX AUTOMATION. Contact me anytime to learn more about our solutions!
Editorial work by: KarstenK
1 Comment
Must Read
Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist