PLC Library Documentation for Siemens PLC Integration with ProfiNet
PLC library sample project
Realtime Robotics GSDML
Introduction
Purpose
This document provides an overview of integrating Realtime Robotics controller with Siemens PLC using the Function Blocks (FBs) and Data Blocks (DBs). It is designed for customers who need guidance on efficiently setting up and using the PLC library.
This PLC library is an implementation example. Users are free to modify or create a new implementation of this library.
Prerequisites
Siemens PLC model: There is no preferred PLC model, as our product works with Profinet communication. However, note that certain models, such as the S1200, may have limitations and cannot use the GRAPH functionality included in the library example.
TIA Portal Version: V17 and greater
Rapidplan version: V2.9 and greater
Audience
This document is intended for engineers and technicians who are familiar with Siemens PLC programming and the basics of function blocks and data blocks.
Hardware Configuration
Overview
Provides instructions for setting up and configuring the Siemens PLC hardware to work with Realtime Robotics controller
Steps for Setup
Step 1
Connect the PLC to the Profinet interface of the [Product Name] controller. The controller has two interfaces:
Robot Interface: Communicates exclusively with the connected robots.
Profinet/Ethernet IP Interface: Communicates with the PLC and other Profinet devices.
Ensure that the PLC is connected to the Profinet interface, which can be configured directly on the controller.
Step 2
Set up IP addresses for the devices in TIA Portal. It is important to configure the PLC, Realtime Robotics controller (Profinet interface), and other Profinet devices to be on a different IP segment than the robot interface to avoid network overload, however both ProfiNet and Robots can be configured in the same IP network.
For example:
Profinet interface
PLC IP: 172.168.10.20
Realtime Robotics controller (Profinet interface): 172.168.10.25
Other Profinet devices: 172.168.10.30, 172.168.10.31, etc.
Robot interface
Realtime Robotics controller (Robot Interface): 172.168.20.30
Robot 1: 172.168.20.35
Robot 2: 172.168.20.40
Step 3
In the hardware configuration (Device View) of TIA Portal, allocate I/O byte ranges for the Realtime Robotics controller:
The first 16 bytes are reserved for Controller inputs.
The next 32 bytes are allocated for ObjectStates inputs.
The next 48 bytes are reserved for CommandModule inputs.
Each robot connected to the controller has 64 bytes allocated for inputs and outputs.
The first robot (ID 0) uses the first 64 bytes.
The second robot (ID 1) uses the next 64 bytes, and so on, up to 16 robots.
Ensure that robots are assigned their sequence based on the downloaded lookup table. The robot with ID 0 will occupy the first 64 bytes, the robot with ID 1 will occupy the next 64 bytes, and so on.
Step 5
Adjust the Watchdog time to prevent loss of communication during Profinet exchanges. You can modify the Update time as needed (default is 2 miliseconds).
Recommendation: Update time to 4 miliseconds and Accepted update cycles without IO data to 16.
Step 6
Verify that all IP addresses, connections, and byte allocations are correctly configured in TIA Portal. To confirm communication between the PLC and the Realtime Robotics controller, check the third bit of the first byte (PNIOLoopback). This bit should blink, indicating successful communication between the PLC and the Realtime Robotics controller.
Function and Data Blocks Overview
Please contact Realtime Robotics support to schedule a training session on how the PLC code works.