SIMATIC ROS Connector - ROSie¶
ROSie is a command-line-based code generation tool designed to facilitate the integration of ROS 2 with SIMATIC Software PLC connections based on shared memory. It operates based on a YAML configuration file to generate the required code.
⚠️ Disclaimer: The usage of this software for safety-related applications is not intended.
The process to integrate the communication between the systems consist of two steps:
- Generator creates a SCL source file that needs to be imported into your TIA-Portal project. It contains all program blocks required for the data exchange with ROS 2.
- ROS 2 package is generated, which contains the connection to the Software PLC.
After the generation process, both programs can be executed on suitable devices.
Requirements¶
To utilize ROSie there are two systems involved:
- Engineering System: Used to run the ROSie generator (e.g., an engineering machine with a Linux operating system).
- Runtime System: Used to execute the generated code (e.g., a SIMATIC Industrial OS system with RIB and Software PLC).
1. Engineering System Requirements¶
Hardware¶
- Any x86/x64 based system with at least 1 GB of free disk space
Software (all of the listed)¶
- Linux operating system (e.g. SIMATIC Industrial OS, Ubuntu, Debian)
- ROS 2 Humble / Jazzy (running natively in Linux, dockerized if installation is mounted to host to be accessible by ROSie container)
- Docker (+ Docker Compose plugin) >= v20.x.y
- TIA Portal v19
The use of virtual machines or WSL (Windows subsystem for Linux) is recommended in order to have TIA Portal and ROS 2 running in parallel in the same system.
Please refer to the Engineering System Setup for a detailed step by step instruction on how to prepare your engineering system.
2. Runtime System Requirements¶
Hardware (one of the listed)¶
All of the listed devices have been tested and verified to work with ROSie generated code.
This list is non-exhaustive and other devices might work with ROSie too as long as they fulfil the following software requirements.
Software (all of the listed)¶
- SIMATIC Industrial OS = v3.4.2
- Realtime Information Backbone (RIB) = v2.1.1
- SIMATIC S7-1500 Software Controller (PLC) = v30.1 (CPU 1505SP (F) pre-installed on the Open Controller; CPU 1507S - (F), CPU 1508S - (F) are independent products that need to be bought in addition to an IPC)
- ROS 2
Humble
/Jazzy
environment to run the generated ROS 2 package (native or via container)