[Documentation] [TitleIndex] [WordIndex

text describing image

What is modelica_bridge?

modelica_bridge establishes a bridge between `Modelica`, a component-oriented equation-centric modeling language, and ROS. The connection is done via TCP/IP sockets; in ROS, the modelica_bridge provides a node to run the server socket. `ROS_Bridge`, modelica_bridge's companion package in Modelica, contains a block component which runs a client socket connection to ROS. Using TCP/IP sockets allow the messages transmitted between Modelica and ROS with preservation of order and content. The combination of modelica_bridge and ROS_Bridge lets Modelica models and ROS control architectures communicate with each other without any additional internal configurations.

To get a better understanding of the way the bridge works, view the image below, depicting the flow of information between Modelica and ROS.

text describing image

Further, the discrete steps taken by the ROS node are shown below:

text describing image

System Requirements

modelica_bridge is a ROS package, and so can only be run in Linux; ROS_Bridge similarly can only be run on *nix systems, due to the current method of implementing sockets. Below is a list of Modelica tools and operating systems ROS_Bridge has been tested on:


Here are a few tutorials that explain how to use the modelica_bridge package in detail:



Subscribed Topics

/control_values (modelica_bridge/ModComm)

Published Topics

/model_values (modelica_bridge/ModComm)


port_num_ (int, default: 9091)

update_rate_ (int, default: 20)

2024-07-20 13:23