SIMOTION SIMOTION SCOUT Communication

SIMOTION SIMOTION SCOUT Communication
Foreword
Introduction
SIMOTION
SIMOTION SCOUT
Communication
System Manual
Overview of the
communication functions and
services
2
PROFIBUS
3
PROFINET IO
4
Ethernet: General
information (TCP and UDP
connections)
5
Routing - communication
across network boundaries
6
SIMOTION IT
7
PROFIsafe
8
PROFIdrive
9
Appendix
11/2010
1
10
Legal information
Warning notice system
This manual contains notices you have to observe in order to ensure your personal safety, as well as to prevent
damage to property. The notices referring to your personal safety are highlighted in the manual by a safety alert
symbol, notices referring only to property damage have no safety alert symbol. These notices shown below are
graded according to the degree of danger.
DANGER
indicates that death or severe personal injury will result if proper precautions are not taken.
WARNING
indicates that death or severe personal injury may result if proper precautions are not taken.
CAUTION
with a safety alert symbol, indicates that minor personal injury can result if proper precautions are not taken.
CAUTION
without a safety alert symbol, indicates that property damage can result if proper precautions are not taken.
NOTICE
indicates that an unintended result or situation can occur if the corresponding information is not taken into
account.
If more than one degree of danger is present, the warning notice representing the highest degree of danger will
be used. A notice warning of injury to persons with a safety alert symbol may also include a warning relating to
property damage.
Qualified Personnel
The product/system described in this documentation may be operated only by personnel qualified for the specific
task in accordance with the relevant documentation for the specific task, in particular its warning notices and
safety instructions. Qualified personnel are those who, based on their training and experience, are capable of
identifying risks and avoiding potential hazards when working with these products/systems.
Proper use of Siemens products
Note the following:
WARNING
Siemens products may only be used for the applications described in the catalog and in the relevant technical
documentation. If products and components from other manufacturers are used, these must be recommended
or approved by Siemens. Proper transport, storage, installation, assembly, commissioning, operation and
maintenance are required to ensure that the products operate safely and without any problems. The permissible
ambient conditions must be adhered to. The information in the relevant documentation must be observed.
Trademarks
All names identified by ® are registered trademarks of the Siemens AG. The remaining trademarks in this
publication may be trademarks whose use by third parties for their own purposes could violate the rights of the
owner.
Disclaimer of Liability
We have reviewed the contents of this publication to ensure consistency with the hardware and software
described. Since variance cannot be precluded entirely, we cannot guarantee full consistency. However, the
information in this publication is reviewed regularly and any necessary corrections are included in subsequent
editions.
Siemens AG
Industry Sector
Postfach 48 48
90026 NÜRNBERG
GERMANY
Copyright © Siemens AG 2010.
Technical data subject to change
Foreword
Foreword
Content
This document is part of the System and Function Descriptions documentation package.
Scope of validity
This manual is valid for SIMOTION SCOUT V4.2:
● SIMOTION SCOUT V4.2 (engineering system for the SIMOTION product range)
Chapters in this manual
This manual describes the communications possibilities for SIMOTION systems.
● Communications functions and services overview
General information about the communications possibilities provided by SIMOTION.
● PROFIBUS
Information about the DPV1 communication, and the setup and programming of the
communication between SIMOTION and SIMATIC devices.
● PROFINET IO
Information about configuring PROFINET with SIMOTION
● Ethernet introduction (TCP/IP and UDP connections)
Information about the the setup and programming of the Ethernet communication
between SIMOTION and SIMATIC devices.
● Routing - communication across network boundaries
General information about routing
● SIMOTION IT
General information about the IT and Web functions provided by SIMOTION.
● PROFIsafe
General information on configuring failsafe controls.
● PROFIdrive
Description of the PROFIdrive profile.
● Index
Keyword index for locating information
Communication
System Manual, 11/2010
3
Foreword
SIMOTION Documentation
An overview of the SIMOTION documentation can be found in a separate list of references.
This documentation is included as electronic documentation in the scope of delivery of
SIMOTION SCOUT. It comprises 10 documentation packages.
The following documentation packages are available for SIMOTION V4.2:
● SIMOTION Engineering System
● SIMOTION System and Function Descriptions
● SIMOTION Service and Diagnostics
● SIMOTION IT
● SIMOTION Programming
● SIMOTION Programming - References
● SIMOTION C
● SIMOTION P
● SIMOTION D
● SIMOTION Supplementary Documentation
Hotline and Internet addresses
Additional information
Click the following link to find information on the the following topics:
● Ordering documentation/overview of documentation
● Additional links to download documents
● Using documentation online (find and search in manuals/information)
http://www.siemens.com/motioncontrol/docu
Please send any questions about the technical documentation (e.g. suggestions for
improvement, corrections) to the following e-mail address:
[email protected]
My Documentation Manager
Click the following link for information on how to compile documentation individually on the
basis of Siemens content and how to adapt this for the purpose of your own machine
documentation:
http://www.siemens.com/mdm
Communication
4
System Manual, 11/2010
Foreword
Training
Click the following link for information on SITRAIN - Siemens training courses for automation
products, systems and solutions:
http://www.siemens.com/sitrain
FAQs
You can find Frequently Asked Questions on the Service&Support pages under Product
Support:
http://support.automation.siemens.com
Technical support
Country-specific telephone numbers for technical support are provided on the Internet under
Contact:
http://www.siemens.com/automation/service&support
Communication
System Manual, 11/2010
5
Foreword
Communication
6
System Manual, 11/2010
Table of contents
Foreword ................................................................................................................................................... 3
1
Introduction.............................................................................................................................................. 13
1.1
2
3
4
The communications subject in the SIMOTION documentation..................................................13
Overview of the communication functions and services........................................................................... 15
2.1
2.1.1
2.1.2
2.1.3
2.1.4
2.1.5
2.1.6
Network options ...........................................................................................................................15
Introduction ..................................................................................................................................15
PROFINET ...................................................................................................................................15
Industrial Ethernet........................................................................................................................16
PROFIBUS...................................................................................................................................16
MPI (Multi-Point Interface) ...........................................................................................................17
Point-to-point communication (PtP) .............................................................................................17
2.2
2.2.1
2.2.2
2.2.3
2.2.4
2.2.5
2.2.6
2.2.7
2.2.8
Communications services (or network functions) ........................................................................18
Introduction ..................................................................................................................................18
PG/OP communication services ..................................................................................................19
S7 communication services .........................................................................................................19
S7 basic communication services................................................................................................19
"Global data" communication service ..........................................................................................20
PROFINET communication services ...........................................................................................21
Industrial Ethernet communication services ................................................................................21
PROFIBUS communication services ...........................................................................................22
2.3
Additional services for the exchange of information ....................................................................23
PROFIBUS .............................................................................................................................................. 25
3.1
3.1.1
PROFIBUS communication .........................................................................................................25
PROFIBUS communication (overview)........................................................................................25
3.2
3.2.1
3.2.2
3.2.2.1
3.2.2.2
3.2.2.3
3.2.3
3.2.3.1
3.2.3.2
3.2.3.3
3.2.4
3.2.4.1
3.2.4.2
Communication with SIMATIC S7................................................................................................25
Possible communication connections between SIMOTION and SIMATIC .................................25
SIMOTION as DP slave on a SIMATIC S7..................................................................................26
Introduction ..................................................................................................................................26
Connecting SIMOTION to a SIMATIC S7 as DP slave with the aid of a GSD file.......................27
Connecting SIMOTION as an I-slave to a SIMATIC S7 ..............................................................27
SIMATIC S7 as DP slave on a SIMOTION..................................................................................29
Introduction ..................................................................................................................................29
Connecting SIMATIC to a SIMOTION device as DP slave with the aid of a GSD file.................30
Connecting a SIMATIC S7 CPU as an I-slave to a SIMOTION device .......................................30
PROFIBUS master-master connection between SIMATIC and SIMOTION ...............................33
Introduction ..................................................................................................................................33
SIMATIC S7 system functions for a PROFIBUS connection.......................................................33
PROFINET IO.......................................................................................................................................... 39
4.1
4.1.1
4.1.2
PROFINET IO overview...............................................................................................................39
PROFINET IO ..............................................................................................................................39
Application model.........................................................................................................................39
Communication
System Manual, 11/2010
7
Table of contents
4.1.3
4.1.4
4.1.5
4.1.6
4.1.7
4.1.7.1
4.1.7.2
4.1.7.3
4.1.7.4
4.1.7.5
4.1.7.6
4.1.7.7
4.1.8
4.1.9
4.1.10
4.1.11
4.1.12
4.1.13
IO controller................................................................................................................................. 40
IO device ..................................................................................................................................... 40
PROFINET IO system................................................................................................................. 40
iDevice......................................................................................................................................... 41
RT classes................................................................................................................................... 41
RT classes for PROFINET IO ..................................................................................................... 41
Send clock and update time........................................................................................................ 42
Adjustable send clocks and update times................................................................................... 43
Setting RT classes ...................................................................................................................... 45
PROFINET IO with RT ................................................................................................................ 46
PROFINET IO with IRT - Overview............................................................................................. 47
PROFINET IO with IRT (High Performance) .............................................................................. 48
Sync domain ............................................................................................................................... 49
Isochronous operation and isochronous mode with PROFINET ................................................ 50
Addressing of PROFINET IO devices......................................................................................... 51
Planning and topology for a PROFINET network ....................................................................... 52
Isochronous applications with PROFINET.................................................................................. 57
Acyclic communication via PROFINET....................................................................................... 59
4.2
4.2.1
4.2.2
4.2.2.1
4.2.2.2
4.2.2.3
4.2.3
4.2.3.1
4.2.3.2
4.2.3.3
4.2.3.4
4.2.4
4.2.5
4.2.6
Properties of PROFINET IO with SIMOTION ............................................................................. 59
Introduction ................................................................................................................................. 59
Cycle clock scaling...................................................................................................................... 62
Cycle clock scaling with PROFINET IO on SIMOTION devices ................................................. 62
Cycle clock scaling for IO accesses............................................................................................ 64
Bus cycle clocks that can be adjusted for cycle clock scaling to SIMOTION devices ................ 65
Task system and time response ................................................................................................. 66
Overview of SIMOTION task system and system cycle clocks .................................................. 66
BackgroundTask, MotionTask, and IPOSynchronousTask ........................................................ 67
ServoSynchronousTask .............................................................................................................. 69
Fast I/O processing in the ServoSynchronousTask.................................................................... 71
Connection between sync domain and IO systems.................................................................... 71
Redundant sync master .............................................................................................................. 72
Quantity structures ...................................................................................................................... 73
4.3
4.3.1
4.3.2
4.3.3
4.3.3.1
4.3.3.2
4.3.3.3
4.3.3.4
4.3.4
4.3.5
4.3.6
4.3.7
4.3.8
4.3.9
4.3.9.1
4.3.9.2
4.3.9.3
4.3.10
4.3.11
Configuring PROFINET IO with SIMOTION ............................................................................... 75
New with SIMOTION SCOUT V4.2 or higher ............................................................................. 75
Procedure for configuring PROFINET IO with IRT High Performance ....................................... 76
Inserting and configuring SIMOTION D ...................................................................................... 76
General information on inserting and configuring SIMOTION D................................................. 76
Inserting and configuring SIMOTION D4x5-2/D410 PN ............................................................. 77
Inserting and configuring SIMOTION D4x5 incl. CBE30 ............................................................ 80
Adding and configuring a CBE30-PROFINET board .................................................................. 82
Adding and configuring SIMOTION P ......................................................................................... 84
Adding and configuring SIMOTION C......................................................................................... 87
Creating a sync domain .............................................................................................................. 90
Defining send clock and refresh times ........................................................................................ 92
Servo_fast, scaling down of cycle clocks to the servo at the PROFINET interface.................... 96
Configuring a topology ................................................................................................................ 98
Topology...................................................................................................................................... 98
Topology editor (graphical view) ................................................................................................. 99
Interconnecting ports via the topology editor (table view)......................................................... 101
Creating an IO device ............................................................................................................... 102
Inserting and configuring the SINAMICS S120......................................................................... 104
Communication
8
System Manual, 11/2010
Table of contents
5
4.3.12
4.3.13
4.3.14
IP address and communication name .......................................................................................108
Assigning device names and IP addresses to IO devices.........................................................110
IP address and communication name via user program/DCP (Mini-IP-Config) ........................113
4.4
4.4.1
4.4.2
4.4.3
Configuring direct data exchange between IO controllers.........................................................116
Introduction ................................................................................................................................116
Configuring the sender...............................................................................................................118
Configuring the receiver.............................................................................................................119
4.5
4.5.1
4.5.2
4.5.3
4.5.4
4.5.5
4.5.6
4.5.7
Configuring the iDevice..............................................................................................................120
PROFINET IO and I device........................................................................................................120
I device functionality with SIMOTION SCOUT V4.2 or higher...................................................125
Creating an I device ...................................................................................................................127
Exporting the GSD file for the I device.......................................................................................129
Creating a substitute I device.....................................................................................................129
Inserting a substitute I device in the higher-level IO controller ..................................................131
Deleting a substitute I device .....................................................................................................135
4.6
4.6.1
Loading the communication configuration .................................................................................135
Loading the PROFINET IO configuration ..................................................................................135
4.7
4.7.1
4.7.2
4.7.3
Data exchange between SIMATIC and SIMOTION via PROFINET..........................................136
Data exchange through the use of iDevices ..............................................................................136
PN-PN coupler ...........................................................................................................................137
Communication using standard protocols..................................................................................138
4.8
4.8.1
4.8.2
4.8.3
4.8.4
4.8.5
4.8.6
4.8.7
4.8.8
4.8.9
4.8.9.1
4.8.9.2
4.8.9.3
Diagnostic and alarm behavior ..................................................................................................139
PROFINET IO alarm and diagnostic messages to SIMOTION .................................................139
Diagnostics model......................................................................................................................139
Alarms on the IO controller ........................................................................................................141
Alarms from the IO device to the IO controller...........................................................................142
Alarms for direct data exchange between IO controllers...........................................................144
Alarms for SINAMICS S120 drives ............................................................................................144
System functions for the diagnostics for PROFINET or PROFIBUS .........................................145
PROFINET device diagnosis in STEP 7....................................................................................147
PROFINET IO and DS0 diagnostic interrupts............................................................................148
Diagnostic interrupt PROFINET IO maintenance concept ........................................................148
Device model for IO device........................................................................................................149
PROFINET IO and DS0 diagnostic interrupts............................................................................151
Ethernet: General information (TCP and UDP connections) .................................................................. 155
5.1
5.1.1
5.1.2
5.1.3
Ethernet interfaces.....................................................................................................................155
Overview of Ethernet .................................................................................................................155
Properties of the SIMOTION Ethernet interfaces ......................................................................155
Using the Ethernet interface ......................................................................................................156
5.2
LCom communications library....................................................................................................156
5.3
5.3.1
5.3.2
5.3.2.1
5.3.2.2
5.3.2.3
5.3.2.4
5.3.2.5
TCP communication...................................................................................................................157
Overview of TCP communication...............................................................................................157
SIMOTION system functions for TCP communication ..............................................................160
Overview of SIMOTION system functions .................................................................................160
_tcpOpenServer() system function.............................................................................................161
_tcpOpenClient() system function ..............................................................................................161
_tcpSend() system function........................................................................................................162
_tcpReceive() system function ...................................................................................................163
Communication
System Manual, 11/2010
9
Table of contents
6
7
8
5.3.2.6
5.3.2.7
5.3.3
5.3.3.1
5.3.3.2
5.3.3.3
5.3.4
5.3.4.1
5.3.4.2
5.3.4.3
_tcpCloseConnection() system function.................................................................................... 164
_tcpCloseServer() system function ........................................................................................... 164
SIMATIC communication blocks, onboard Ethernet interface .................................................. 165
Overview of SIMATIC communication blocks ........................................................................... 165
UDT65 structure and parameterization..................................................................................... 166
Description of communication blocks........................................................................................ 168
SIMATIC communication blocks for Ethernet CP ..................................................................... 171
Overview of SIMATIC communication blocks ........................................................................... 171
Ethernet CP configuration ......................................................................................................... 172
Description of communication blocks........................................................................................ 176
5.4
5.4.1
5.4.2
5.4.2.1
5.4.2.2
5.4.2.3
5.4.2.4
5.4.2.5
5.4.3
5.4.3.1
5.4.4
5.4.4.1
5.4.4.2
UDP communication ................................................................................................................. 177
Overview of UDP communication ............................................................................................. 177
SIMOTION system functions for UDP communication ............................................................. 179
Overview of SIMOTION system functions ................................................................................ 179
_udpSend() system function...................................................................................................... 179
_udpReceive() system function ................................................................................................. 180
_udpAddMulticastGroupMembership() system function ........................................................... 181
_udpDropMulticastGroupMembership() system function.......................................................... 182
SIMATIC communication blocks, onboard Ethernet interface .................................................. 182
Overview of SIMATIC communication blocks ........................................................................... 182
SIMATIC communication blocks for Ethernet CP ..................................................................... 183
Overview of S7 communication blocks, UDP............................................................................ 183
Ethernet CP configuration ......................................................................................................... 184
Routing - communication across network boundaries............................................................................ 187
6.1
What does routing mean? ......................................................................................................... 187
6.2
Configuration of S7 routing ....................................................................................................... 188
6.3
Routing for SIMOTION.............................................................................................................. 189
6.4
Routing with SIMOTION D (example of D4x5 with CBE30) ..................................................... 190
6.5
Routing with SIMOTION D4x5-2 (example of D455-2 DP/PN)................................................. 193
6.6
Routing for SIMOTION D to the SINAMICS integrated ............................................................ 196
6.7
Routing for SIMOTION P350 .................................................................................................... 197
6.8
Routing for SIMOTION P320 .................................................................................................... 199
SIMOTION IT......................................................................................................................................... 201
7.1
SIMOTION IT - overview........................................................................................................... 201
7.2
Web access to SIMOTION........................................................................................................ 202
7.3
SIMOTION IT DIAG .................................................................................................................. 203
7.4
SIMOTION IT OPC XML DA ..................................................................................................... 205
7.5
FTP data transfer ...................................................................................................................... 206
PROFIsafe............................................................................................................................................. 207
8.1
Communication relationships for drive-based safety ................................................................ 207
8.2
Message frames and signals in drive-based safety.................................................................. 209
8.3
SIMOTION F proxy functions .................................................................................................... 210
Communication
10
System Manual, 11/2010
Table of contents
8.4
PROFIsafe properties for configuration .....................................................................................212
8.5
8.5.1
8.5.2
8.5.3
8.5.4
8.5.4.1
8.5.4.2
8.5.4.3
8.5.5
8.5.5.1
8.5.5.2
8.5.5.3
8.5.5.4
8.5.5.5
PROFIsafe via PROFINET ........................................................................................................215
Principles of I device failsafe proxy............................................................................................215
Supported devices and software requirements for I device failsafe proxy ................................216
Detailed description/properties of I device failsafe proxy ..........................................................218
Topology overviews I device F-Proxy ........................................................................................219
Topology for I device failsafe proxy for PROFIBUS drive units .................................................219
Topology for I device failsafe proxy for PROFINET drive units .................................................220
Topology for I device failsafe proxy for PROFIBUS and PROFINET drive units.......................221
Configuring I device failsafe proxy .............................................................................................222
Basic configuration process for I device failsafe proxy ..............................................................222
Configuration example for SIMOTION D435 and SINAMICS S120 via PROFINET .................224
Adapting the F address in the existing project...........................................................................230
Configuration of D435 with S120 on PROFINET and integrated PROFIBUS ...........................233
Upgrading an existing system with PROFIsafe via PROFIBUS to PROFIsafe via
PROFINET .................................................................................................................................237
General information on failsafe addresses with I device F-Proxy..............................................239
Shared device via PROFINET ...................................................................................................240
General information on shared device.......................................................................................240
Shared device in a STEP 7 project............................................................................................241
Configuring C240 PN and F-CPU with S120 as a shared device..............................................246
8.5.5.6
8.5.6
8.5.6.1
8.5.6.2
8.5.6.3
9
8.6
8.6.1
8.6.2
8.6.3
8.6.3.1
8.6.3.2
8.6.3.3
8.6.4
8.6.4.1
8.6.4.2
8.6.4.3
PROFIsafe via PROFIBUS ........................................................................................................252
General information about PROFIsafe on PROFIBUS..............................................................252
Supported devices and software requirements for PROFIsafe on PROFIBUS.........................252
I-slave failsafe proxy ..................................................................................................................253
Principles of I-slave failsafe proxy..............................................................................................253
Topology for I-slave failsafe proxy for PROFIBUS drive units...................................................254
PROFIsafe via PROFIBUS when SIMOTION D is used ...........................................................254
Failsafe data exchange broadcast.............................................................................................260
Principles of failsafe data exchange broadcast .........................................................................260
Topology of failsafe data exchange broadcast via PROFIBUS .................................................260
PROFIsafe via PROFIBUS with failsafe data exchange broadcast taking the example of
SIMOTION D..............................................................................................................................261
8.7
PROFIsafe configuration - acceptance test and reports............................................................265
8.8
Additional information on SIMOTION and PROFIsafe...............................................................265
PROFIdrive............................................................................................................................................ 267
9.1
Why profiles? .............................................................................................................................267
9.2
PROFIdrive overview .................................................................................................................268
9.3
PROFIdrive base/parameter model ...........................................................................................269
9.4
Segmentation in application classes..........................................................................................273
9.5
PROFIdrive-specific data types .................................................................................................275
9.6
9.6.1
9.6.2
9.6.3
9.6.4
9.6.5
Acyclic communication (Base Mode Parameter Access) ..........................................................279
Acyclic communication...............................................................................................................279
Reading and writing parameters with Base Mode Parameter Access.......................................280
Parameter request/response data set .......................................................................................282
Specifications for PROFIBUS and PROFINET IO .....................................................................286
Error assessment.......................................................................................................................287
Communication
System Manual, 11/2010
11
Table of contents
9.6.6
9.6.7
9.6.7.1
9.6.7.2
9.6.7.3
9.6.7.4
9.6.8
9.6.8.1
9.6.8.2
9.6.8.3
9.6.8.4
9.6.8.5
9.6.9
9.6.9.1
9.6.9.2
9.6.9.3
9.6.9.4
9.6.9.5
9.6.9.6
9.6.9.7
9.6.10
9.6.10.1
9.6.10.2
9.6.10.3
9.6.11
9.6.11.1
10
Additional information for the parameters of a PROFIdrive drive ............................................. 290
System commands in SIMOTION............................................................................................. 291
_writeRecord/_readRecord SIMOTION system commands ..................................................... 291
_writeDrive.../_readDrive... SIMOTION system commands...................................................... 292
Comparison of the system commands...................................................................................... 293
Deleting _readDrive and _writeDrive jobs ................................................................................. 294
Rules for using _readRecord and _writeRecord ....................................................................... 294
Rule 1 - the job has its own job reference................................................................................. 294
Rule 2 - system functions for asynchronous programming....................................................... 294
Rule 3 - read/write data record per PROFIdrive drive unit........................................................ 297
Rule 4 - the last call wins for SIMOTION .................................................................................. 297
Rule 5 - a maximum of eight concurrent calls is possible in SIMOTION .................................. 299
Rules for SIMOTION _writeDrive.../_readDrive... commands................................................... 301
Scope for the rules .................................................................................................................... 301
Rule 6 - repeated call of system function for asynchronous programming............................... 301
Rule 7 - multiple concurrent calls per target device.................................................................. 302
Rule 8 - release the interlocking after the complete processing of a job .................................. 304
Rule 9 - canceling jobs for an asynchronous call ..................................................................... 305
Rule 10 - management of sixteen jobs ..................................................................................... 308
Rule 11 - parallel jobs for different drive devices ...................................................................... 308
Special features ........................................................................................................................ 310
Rule 12 - data buffering of up to 64 drive objects ..................................................................... 310
Rule 13 - a mix of system functions can be used ..................................................................... 310
Rule 14 - interlocking for the mixed use of commands............................................................. 312
Program examples .................................................................................................................... 312
Programming example .............................................................................................................. 312
Appendix................................................................................................................................................ 317
10.1
Standard PROFIBUS/PROFINET data types (only available in English) ................................. 317
10.2
Profile-specific PROFIBUS/PROFINET data types (only available in English) ........................ 328
Index...................................................................................................................................................... 335
Communication
12
System Manual, 11/2010
Introduction
1.1
1
The communications subject in the SIMOTION documentation
Overview
You can find information on the subject of communication in the individual Manuals, in the
Programming Manuals and in this Communication Manual.
Communication manual
This Communication Manual provides, in particular, information that is important for the
communication of SIMOTION devices with devices that are not part of the SIMOTION family,
especially SIMATIC devices.
This manual contains explanations of the required configuration steps that must be
performed on both communication partners in order to obtain an error-free, functioning
communication relationship.
Therefore, this manual deals very intensively with the settings and the programming of the
SIMATIC S7 stations as communication partners of the SIMOTION devices.
Product manuals and programming manuals
The product manuals deal with the subject of communication from the point of view of the
devices themselves, i.e. with respect to the electrical properties of the available interfaces as
well as the setting options with the SIMOTION SCOUT engineering system.
You will also find further information in the manuals entitled Modular Machine Concepts and
Base Functions, which are part of the SIMOTION documentation package.
There is no information here how the partner stations are set.
Communication
System Manual, 11/2010
13
Introduction
1.1 The communications subject in the SIMOTION documentation
Communication
14
System Manual, 11/2010
Overview of the communication functions and
services
2.1
Network options
2.1.1
Introduction
2
As an integral part of "Totally Integrated Automation" (TIA), the SIMOTION and SIMATIC
network solutions provide the necessary flexibility and performance characteristic for the
communication requirements of your application, irrespective of how simple or complex it is.
Note
This section provides a general description of the communication functions and services
included in Siemens' automation technology. This does not necessarily imply that all
functions mentioned also are available for SIMOTION. You will find details concerning the
functions supported by SIMOTION in chapters 4 - 8.
SIMOTION and SIMATIC networks for all applications
The SIMOTION products support a variety of network options. With these network solutions,
you can combine the SIMOTION devices in accordance with the requirements of your
application.
For further optimization of the network solutions, SIMOTION products provide integrated
communication services and functions to extend the performance capability of the network
protocol.
2.1.2
PROFINET
Overview
PROFINET is based on the open Industrial Ethernet standard for industrial automation for
company-wide communication and extends the capability for data exchange of your
automation components through to the office environment, so that your automation
components, even the distributed field devices and drives, can be connected to your local
area network (LAN).
Because PROFINET connects all levels of your organization – from the field devices through
to the management systems – you can perform the plant-wide engineering using normal IT
standards. As for all solutions based on Industrial Ethernet, PROFINET supports electrical,
optical and wireless networks.
Communication
System Manual, 11/2010
15
Overview of the communication functions and services
2.1 Network options
As PROFINET is based on Industrial Ethernet and not implemented as a derived form of
"PROFIBUS for Ethernet", PROFINET can utilize the previously installed Ethernetcompatible devices. Even if PROFINET is not a master/slave system, the PROFINET IO and
PROFINET CBA communication services provide the functionality required by automation
systems:
● With PROFINET IO, you can connect distributed field devices (e.g. digital or analog
signal modules) and drives directly to an Industrial Ethernet subnet.
● PROFINET CBA (Component-Based Automation) supports modular solutions for
machine and plant construction. You define your automation system as autonomous
components, whereby each component consists of independent, self-contained tasks.
Both communication services provide real-time functionality to make PROFINET a real-time
implementation. PROFINET also enables the simultaneous existence of the real-time
communication of your automation process and your other IT communication, at the same
time in the same network, without the real-time behavior of your automation system being
impaired.
The PROFIsafe profile communicates with the fail-safe devices via the PROFINET subnet
for further support of fail-safe or "safety-relevant" applications.
2.1.3
Industrial Ethernet
Overview
As Industrial Ethernet provides a communication network for the connection of command
levels and cell levels, you can extend the data exchange capability of your automation
components into the office environment with Industrial Ethernet.
Industrial Ethernet is based on the standards IEEE 802.3 and IEEE 802.3u for
communication between computers and automation systems and enables your system to
exchange large data volumes over long distances.
2.1.4
PROFIBUS
Overview
PROFIBUS is based on the standards IEC 61158 and EN 50170 and provides a solution
with open field bus for the complete production and process automation. PROFIBUS
provides fast, reliable data exchange and integrated diagnostic functions. PROFIBUS
supports manufacturer-independent solutions with the largest third-party manufacturer
support worldwide. A variety of transmission media can be used for your PROFIBUS subnet:
electrical, optical and wireless.
Communication
16
System Manual, 11/2010
Overview of the communication functions and services
2.1 Network options
PROFIBUS provides the following communication services:
● PROFIBUS DP (Distributed Peripherals) is a communication protocol that is especially
suitable for production automation.
PROFIBUS DP provides a fast, cyclic and deterministic exchange of process data
between a bus DP master and the assigned DP slave devices. PROFIBUS DP supports
isochronous communication. The synchronized execution cycles ensure that the data is
transmitted at consistently equidistant time intervals.
● PROFIBUS PA (Process Automation) expands PROFIBUS DP to provide intrinsically
safe data and power transmission according to the IEC 61158-2 standard.
● PROFIBUS FMS (Fieldbus Message Specification) is for communication on the cell level,
where the controllers communicate with one another. Automation systems from different
manufacturers can communicate with one another by means of PROFIBUS FMS.
● PROFIBUS FDL (Fieldbus Data Link) has been optimized for the transmission of
medium-sized data volumes to support error-free data transmission on the PROFIBUS
subnet.
In addition, PROFIBUS uses profiles to provide communication options for the needs of
specific applications, such as PROFIdrive (for the motion control) or PROFIsafe (for fail-safe
or "safety-relevant" applications).
2.1.5
MPI (Multi-Point Interface)
Overview
MPIs are integrated interfaces for SIMOTION and SIMATIC products (SIMOTION devices,
SIMATIC S7 devices, SIMATIC HMI as well as SIMATIC PC and PG).
MPI provides an interface for PG/OP communication. In addition, MPI provides simple
networking capability using the following services: communication via global data (GD), S7
communication and S7 basic communication.
The electric transmission medium for MPI uses the RS 485 standard, which is also used by
PROFIBUS.
2.1.6
Point-to-point communication (PtP)
Overview
SIMOTION devices can be programmed so that they exchange data with another controller
in the network. Even if the point-to-point communication is not considered as a subnet, the
point-to-point connection provides serial transmission (e.g. RS232 or RS485) of data
between two stations, e.g. with a SIMATIC controller or even with a third-party device that is
capable of communication.
Communication
System Manual, 11/2010
17
Overview of the communication functions and services
2.2 Communications services (or network functions)
CP modules (e.g. a CP340) or ET200 modules can be used for point-to-point communication
to read and write data between two controllers. Point-to-point communication thus
represents a powerful and cost-effective alternative to bus solutions, particularly when only a
few devices are connected to the SIMOTION device.
Point-to-point communication provides the following capabilities:
● Using standard procedures or loadable drivers to adapt to the protocol of the
communication partner
● Using ASCII characters to define a user-specific procedure
● Communication with other types of devices, such as operator panels, printers or card
readers
Additional references
You will find additional references concerning point-to-point communication in the
descriptions of the CP or ET200 modules.
2.2
Communications services (or network functions)
2.2.1
Introduction
SIMOTION and SIMATIC devices support a set of specific communication services, which
control the data packets that are transmitted via the physical networks. Each communication
service defines a set of functions and performance characteristics, e.g. the data to be
transferred, the devices to be controlled, the devices to be monitored and the programs to be
loaded.
Communication services of the SIMOTION and SIMATIC products
Communication services, also often referred to as network functions, are the software
components that utilize the physical hardware of the networks. Software interfaces (e.g. S7
system functions) in the end device (e.g. SIMOTION device, SIMATIC S7 device or PC)
provide access to the communication services. However, a software interface does not
necessarily have all of the communication functions for the communication service. Such a
service can be provided in the respective end system with different software interfaces.
Communication
18
System Manual, 11/2010
Overview of the communication functions and services
2.2 Communications services (or network functions)
2.2.2
PG/OP communication services
Overview
PG/OP services are the integrated communication functions with which SIMATIC and
SIMOTION automation systems communicate with a programming device (e.g. STEP 7) and
operator control and monitoring system. All SIMOTION and SIMATIC networks support the
PG/OP communication services.
2.2.3
S7 communication services
Overview
S7 communication services provide data exchange using communication system function
blocks (SFBs) and communication function blocks (FBs) for configured S7 connections.
All SIMOTION devices and SIMATIC S7 devices have integrated S7 communication services
that allow the user program in the controller to initiate the reading or writing of data. These
functions are independent of specific networks, allowing you to program S7 communication
via any network (MPI, PROFIBUS, PROFINET or Industrial Ethernet).
For transferring data between the controllers, you must configure a connection between both
controllers. The integrated communication functions are called up by the SFB/FB in the
application. You can transfer up to 64 KB of data between SIMOTION and SIMATIC S7
devices.
You can access data in the controller with your HMI device, programming device (PG), or PC
as the S7 communication functions are integrated in the operating system of the SIMOTION
devices and SIMATIC S7 devices. This type of peer-to-peer link does not require any
additional connection equipment. (However, if you configure a connection to one of these
devices, you can access the data via the symbolic names.)
Note
SFBs may not be used with SIMOTION.
2.2.4
S7 basic communication services
Overview
S7 basic communication services provide data exchange using communication system
functions (SFCs) for non-configured S7 connections. These SFCs (e.g. X_GET or X_PUT)
read or write the data to a SIMATIC controller, so that small data volumes can be transferred
via an MPI subnet to another S7 station (S7 controller, HMI or PC).
Communication
System Manual, 11/2010
19
Overview of the communication functions and services
2.2 Communications services (or network functions)
The SFCs for the S7 basic communication do not communicate with stations in other
subnets. You do not need to configure connections for the S7 basic communication. The
connections are established when the user program calls the SFC.
Note
You can only use the S7 basic communication services via an MPI connection between
SIMATIC S7-300, S7-400 or C7-600 controllers.
2.2.5
"Global data" communication service
Overview
In addition to the other options for the network communication, you can configure a 'global
data' communication connection (GD) to provide cyclic data transmission between SIMATIC
controllers that are connected to an MPI network. The data exchange runs as part of the
normal process image exchange, as the global data communication is integrated in the
operating system of the SIMATIC controller.
As the global data communication is a process for transferring data, the receipt of the global
data is not acknowledged. A publisher (data source) sends the data to one or several
subscriber(s) (data sink) and subscribers receive the data. The publisher does not receive an
acknowledgement from the subscribers that they have received the transmitted data.
Note
You can only use the global data communication via an MPI connection between SIMATIC
S7-300, S7-400 or C7-600 controllers.
GD communication does not require any special programming or program blocks in your
STEP 7 user program. The operating systems of the individual controllers process the global
data exchange. Using STEP 7, you configure a global data (GD) table with the source path
of the data to be transmitted to the subscribers. This GD table is downloaded with the
hardware configuration for both the publisher and the subscribers.
Global data is not available for SIMOTION.
Communication
20
System Manual, 11/2010
Overview of the communication functions and services
2.2 Communications services (or network functions)
2.2.6
PROFINET communication services
Overview
PROFINET provides the following communication services:
● You can connect I/O devices and drives via a Ethernet physics to the SIMOTION or
SIMATIC controller with the communication service PROFINET IO. The user program
executed in the controller can process the input and output data of the I/O devices with
PROFINET IO. You configure the addressing for PROFINET IO in STEP 7 or SIMOTION
SCOUT.
● With PROFINET CBA, you can define your automation system as autonomous subunits
or components. These components can be PROFINET IO, PROFIBUS DP or third-party
devices or subnets.
If you want to use the PROFINET CBA communication services for a component-based
solution, configure the SIMATIC controllers and the I/O devices in individual components in
STEP 7. Then configure the communication between the various components with SIMATIC
iMAP.
Both PROFINET IO and PROFINET CBA communication services provide the real-time
communication required by automation systems.
Note
PROFINET CBA is only available for SIMATIC devices, not for SIMOTION devices.
2.2.7
Industrial Ethernet communication services
Overview
Industrial Ethernet is based on the IEEE 802.3 and IEEE 802.3u standards and connects the
automation systems with your business system, so that you also have access to the data in
the office.
Industrial Ethernet provides the following communication services:
● The ISO transfer provides services for transmitting data via connections that support
error-free data transmission. The ISO transfer is only possible with STEP7.
● TCP/IP allows you to exchange contiguous data blocks between the controllers and
computers in PROFINET or Industrial Ethernet networks. With TCP/IP, the controller
transmits contiguous data blocks.
● ISO-on-TCP (RFC 1006) supports error-free data transmission. For SIMOTION only
when going though SCOUT ONLINE. If the communication is performed from the user
program, an RFC must be programmed.
Communication
System Manual, 11/2010
21
Overview of the communication functions and services
2.2 Communications services (or network functions)
● UDP (User Datagram Protocol) and UDP multi-cast provide simple data transmission
without acknowledgment. You can transmit related data blocks from one station to
another, such as between a SIMOTION and SIMATIC controller, a PC or a third-party
system.
● Information technology (IT) communication allows you to share data using standard
Ethernet protocols and services (such as FTP, HTTP and e-mail) via PROFINET or
Industrial Ethernet networks.
2.2.8
PROFIBUS communication services
Overview
PROFIBUS provides the following communication services:
● PROFIBUS DP (Distributed Peripherals) supports the transparent communication with the
distributed I/O. The SIMOTION/STEP 7 user program accesses the distributed I/O in the
same manner as it accesses the I/O on the central rack of the controller (or the PLC).
PROFIBUS DP enables the direct communication with the distributed I/O. PROFIBUS DP
complies with the EN 61158 and EN 50170 standards.
● PROFIBUS PA (Process Automation) facilitates the direct communication with process
automation (PA) instruments. This includes both cyclic access to I/O, typically with a PLC
master, as well as acyclic access to the potentially large set of device operating
parameters, typically with an engineering tool such as Process Device Manager (PDM).
PROFIBUS PA complies with the IEC 61158 standard.
● PROFIBUS FMS (Fieldbus Message Specifications) enables the transmission of
structured data (FMS variables). PROFIBUS FMS complies with the IEC 61784 standard.
● PROFIBUS FDL (Fieldbus Data Link) has been optimized for the transmission of
medium-sized data volumes to support error-free data transmission on the PROFIBUS
subnet. PROFIBUS FDL supports the SDA function (Send Data with Acknowledge).
Note
SIMOTION devices only support the PROFIBUS DP communication service.
For fail-safe communication, SIMOTION and SIMATIC devices use the PROFIsafe profile
for PROFIBUS DP.
SIMOTION devices use the PROFIdrive profile for communication between SIMOTION
devices through to the connected drives.
Additional references
You can find a comparison of the SIMATIC S7 and SIMOTION system functions in the
2_FAQ directory on the Utilities & Applications CD.
Communication
22
System Manual, 11/2010
Overview of the communication functions and services
2.3 Additional services for the exchange of information
2.3
Additional services for the exchange of information
In addition to supporting the standard communication networks, SIMOTION and SIMATIC
also provide additional means for sharing information via networks.
Sharing data with other applications via OPC (OLE for Process Control)
OPC (OLE for Process Control) allows Windows applications to access process data,
making it easy to combine devices and applications produced by different manufacturers.
OPC not only provides an open, manufacturer-independent interface, but also an easy-touse client/server configuration for the standardized data exchange between applications
(e.g. HMI or office applications) that do not require a specific network or protocol.
The OPC server provides interfaces for connecting the OPC client applications. You
configure the client application for access to data sources, e.g. addresses in the memory of a
PLC. Because several different OPC clients can access the same OPC server at the same
time, the same data sources can be used for any OPC-compliant application.
In addition to OPC servers, SIMATIC NET also provides applications for configuring and
testing OPC connections: Advanced PC Configuration (APC) and OPC Scout (used to test
and commission an OPC application or OPC server). You use these tools to connect
SIMOTION and SIMATIC S7 products to other OPC-compliant applications.
The SIMATIC NET OPC servers support the following communication services:
● PROFINET IO (by means of PROFINET or Industrial Ethernet subnet)
● PROFINET CBA (by means of PROFINET or Industrial Ethernet subnet)
● TCP/IP (by means of PROFINET or Industrial Ethernet subnet)
● PROFIBUS DP (by means of PROFIBUS subnet)
● PROFIBUS FMS (by means of PROFIBUS subnet)
● S7 communication
● S5compatible communication
Using information technology (IT) for sharing data in an office environment
SIMOTION and SIMATIC use standard IT tools (such as e-mail, HTTP Web server, FTP and
SNMP) with PROFINET and Industrial Ethernet networks to expand the data-sharing
capabilities into the office environment.
For SIMOTION devices, the corresponding functions are made available through SIMOTION
IT DIAG, see SIMOTION IT Ethernet-based HMI and Diagnostic Functions.
Communication
System Manual, 11/2010
23
Overview of the communication functions and services
2.3 Additional services for the exchange of information
Communication
24
System Manual, 11/2010
3
PROFIBUS
3.1
PROFIBUS communication
3.1.1
PROFIBUS communication (overview)
Description
PROFIBUS DP (Decentralized Peripherals) is designed for fast data exchange at the field
level. The communication is performed in a class 1 PROFIBUS master (e.g. a SIMOTION
controller) and PROFIBUS slaves (e.g. a SINAMICS S120 drive). The data exchange with
decentralized devices is mainly performed cyclically (DP V0 communication). In this case,
the central controller (SIMOTION controller) reads the input information cyclically from the
slaves and writes the output information cyclically to the slaves. Moreover, diagnostics
functions are made available through the cyclic services. The following figure shows the data
protocol on PROFIBUS DP.
7'3
7';
'DWDWUDQV
PLVVLRQRQ
WKHEXV
W
*OREDO
$F\FOLFGDWD
FRQWURO &\FOLFGDWDGDWD
H[FKDQJH
Figure 3-1
5HVHUYH
Data protocol on PROFIBUS
3.2
Communication with SIMATIC S7
3.2.1
Possible communication connections between SIMOTION and SIMATIC
The following section describes how a SIMOTION and a SIMATIC S7 device can
communicate with one another via PROFIBUS.
There are various possibilities:
● A SIMOTION device is connected as DP slave to a DP master system of a SIMATIC S7.
● A SIMATIC S7 device is connected as DP slave to a DP master system of a SIMOTION.
● A master-master communication is used between SIMOTION and SIMATIC S7.
Communication
System Manual, 11/2010
25
PROFIBUS
3.2 Communication with SIMATIC S7
There are two additional variants for the connection as DP slave:
● Connection as standard slave by means of a GSD file.
● Connection as intelligent DP slave (I-slave).
An I-slave is a station that has a separate intelligence, and whose range of functions as a DP
slave is specified through dedicated programming.
This means that these stations have to be completely configured first with respect to their
communication structure before they can be used as an I-slave.
The available I-slaves can be found in the HW catalog of HW Config in the "Preconfigured
stations" folder.
Difference: "Normal" DP slave (standard slave) - intelligent DP slave (I slave)
With a "normal" DP slave such as a compact (ET 200eco) or modular (ET 200M) DP slave,
the DP master accesses the distributed inputs/outputs.
With an intelligent DP slave, the DP master does not access the connected inputs/outputs of
the intelligent DP slave, but accesses instead a transfer area in the input/output address
area of the "preprocessing CPU". The user program of the preprocessing CPU must handle
the data exchange between the operand area and inputs/outputs.
Note
The configured I/O areas for the data exchange between the master and slaves must not be
"occupied" by I/O modules.
3.2.2
SIMOTION as DP slave on a SIMATIC S7
3.2.2.1
Introduction
The following section describes how a SIMOTION device can be connected as PROFIBUS
DP slave to a PROFIBUS network.
There are two possibilities:
● The SIMOTION device is connected as standard slave to a DP master system by means
of a GSD file.
● The SIMOTION device is integrated as what is known as an intelligent DP slave (I-slave)
into the DP master system.
Communication
26
System Manual, 11/2010
PROFIBUS
3.2 Communication with SIMATIC S7
3.2.2.2
Connecting SIMOTION to a SIMATIC S7 as DP slave with the aid of a GSD file
Procedure
The GSD files for the various SIMOTION platforms must first be imported into STEP 7 HW
Config.
You will find the corresponding GSD files on the SIMOTION SCOUT DVD "Add-on" in the
respective device directory under Firmware and Version.
Table 3- 1
GSD file
Device
Name of the GSD file
SIMOTION C
Si0480aa.gsd
SIMOTION D
Si0280ab.gsd
SIMOTION P
Si0380fa.gsd
(This file can be used for all SIMOTION D)
After these GSD files have been imported from the Options - Install GSD file menu into the
STEP 7 HW Config, the devices appear in the HW catalog under Additional field devices PLC - SIMATIC - SIMOTION and can be inserted from there into a DP master system of a
S7 station.
Note
SIMOTION devices that have been connected to a SIMATIC S7 by means of a GSD file
cannot be accessed with SIMOTION SCOUT via a routed connection.
The name of a GSD file depends on its version, e.g. S10180AA and S10280AA.
Note
Through a network node it is also possible to route to drives that have been inserted as
single drives.
It is thus also possible to route to SIEMENS drives that have been configured in
SCOUT/STARTER, if these are configured as GSD slave / GSDML device in HW Config.
However, the limitation that a network transition point can be set using the subnet ID, by
setting the online access parameter (Target device > Online access), applies.
Moreover, the GSD file is named according to the version.
3.2.2.3
Connecting SIMOTION as an I-slave to a SIMATIC S7
Requirement
● SIMOTION SCOUT and thus STEP 7 must have been installed on the engineering PC.
● The SIMATIC S7 and the SIMOTION station must be in the same project.
If these requirements are fulfilled, SIMOTION can also be connected as what is known as an
I-slave to the PROFIBUS DP network of the SIMATIC.
Communication
System Manual, 11/2010
27
PROFIBUS
3.2 Communication with SIMATIC S7
Procedure
It is recommended that the SIMOTION station is first completely configured as DP slave
before it is placed as slave on the DP line of the SIMATIC CPU.
Below you will find a description of the procedure for a SIMOTION C. The procedure is
identical apart from the selection of the SIMOTION platform.
1. Configuring a station as DP slave, e.g. SIMOTION C2xx
Double-click on the desired interface (e.g. DP2/MPI) in the configuration table and select
the DP slave option on the Operating mode tab.
2. Configuring the local I/O addresses
You can set the local I/O addresses and the diagnostics address in the Configuration tab.
3. Switch to the configured SIMATIC station that is to be DP master for the SIMOTION.
4. Creating an I-slave
Drag the station type "C2xx/P3xx/D4xx I-Slave" from the Hardware catalog window
("Preconfigured stations" folder) and drop it on the symbol for the DP master system of
the SIMATIC station.
5. Specifying the intelligent DP slave
Double-click the symbol for the intelligent SIMOTION DP slave and select the Link tab. In
this tab, assign the station that is to represent the intelligent DP slave. This dialog box
displays all the stations that are already available in the project and that are potential link
partners.
Figure 3-2
DP slave properties
6. Select the appropriate SIMOTION and click Connect. The configured SIMOTION station
is now connected as intelligent DP slave to the SIMATIC.
Communication
28
System Manual, 11/2010
PROFIBUS
3.2 Communication with SIMATIC S7
7. Select the Configuration tab and assign the addresses:
Figure 3-3
Properties - configuration
– For the data exchange with the DP master via I/O areas, select the MS (Master-Slave)
mode
– For the direct data exchange with a DP slave or DP master, select the DX (Direct Data
Exchange) mode
8. Confirm the settings by clicking OK.
Configuration of the SIMOTION station as intelligent DP slave on the SIMATIC station is now
complete and data can be exchanged via the specified I/O addresses.
3.2.3
SIMATIC S7 as DP slave on a SIMOTION
3.2.3.1
Introduction
The following section describes how a SIMATIC station can be connected as PROFIBUS DP
slave to a PROFIBUS network.
There are two possibilities:
● The SIMATIC station is connected as standard slave to the DP master system of a
SIMOTION by means of a GSD file.
● The SIMATIC station is integrated as what is known as an I-slave into the DP master
system of a SIMOTION.
Communication
System Manual, 11/2010
29
PROFIBUS
3.2 Communication with SIMATIC S7
3.2.3.2
Connecting SIMATIC to a SIMOTION device as DP slave with the aid of a GSD file
Procedure
The GSD files for the various SIMATIC stations must first be imported into STEP 7 HW
Config.
You will find the corresponding GSD files in Product Support under:
http://support.automation.siemens.com/ww/view/en/113652.
After these GSD files have been imported from the Options - Install GSD file menu into the
STEP 7 HW Config, the devices appear in the HW catalog under Additional field devices PLC - SIMATIC and can be inserted from there into a DP master system of a SIMOTION
station.
SIMATIC S7 devices that have been connected to a SIMOTION by means of a GSD file,
cannot be accessed with STEP 7 via a routed connection.
3.2.3.3
Connecting a SIMATIC S7 CPU as an I-slave to a SIMOTION device
Prerequisites
● SIMOTION SCOUT and thus SIMATIC STEP 7 have been installed on the engineering
PC.
● The SIMATIC S7 and the SIMOTION station must be in the same project.
If these requirements are fulfilled, the SIMATIC can also be connected as an I-slave to the
PROFIBUS DP network of the SIMOTION.
Procedure
It is recommended that the SIMATIC station is first completely configured as DP slave before
it is placed as slave on the DP line of the SIMOTION.
Below you will find a description of the procedure for a CPU 315-2 D. The procedure is
identical apart from the selection of the CPU types, also for an S7-400.
1. Configure a station, for example, with the CPU 315-2 DP, as DP slave. Double-click on
line 2.1 (interface) in the configuration table and select the DP slave option in the
Operating mode tab.
2. You can set the local I/O addresses and the diagnostics address in the Configuration tab.
3. Switch to the configured SIMOTION station that is to be DP master for the SIMATIC.
4. Drag the appropriate station type, CPU 31x or CPU 41x, from the Hardware catalog
window (folder of already configured stations) and drop it on the symbol for the DP
master system of the SIMOTION station.
Communication
30
System Manual, 11/2010
PROFIBUS
3.2 Communication with SIMATIC S7
5. Double-click the icon for the intelligent SIMOTION DP slave and select the Link tab. In
this tab, assign the station that is to represent the intelligent DP slave. This dialog box
displays all the stations that are already available in the project and that are potential link
partners.
Figure 3-4
Properties - link
6. Select the appropriate S7 station and click Connect. The configured S7 station is now
connected as intelligent DP slave to the SIMOTION.
Communication
System Manual, 11/2010
31
PROFIBUS
3.2 Communication with SIMATIC S7
7. Select the Configuration tab and assign the addresses:
Figure 3-5
Configuration - address selection
– For the data exchange with the DP master via I/O areas, select the MS (Master-Slave)
mode
– For the direct data exchange with a DP slave or DP master, select the DX (Direct Data
Exchange) mode
8. Confirm the settings by clicking OK.
The configuration of the SIMATIC station as intelligent DP slave on the SIMOTION station is
now completed and data can be exchanged via the specified I/O addresses.
Communication
32
System Manual, 11/2010
PROFIBUS
3.2 Communication with SIMATIC S7
3.2.4
PROFIBUS master-master connection between SIMATIC and SIMOTION
3.2.4.1
Introduction
Master-master communication
A master-master communication connection between a SIMATIC S7 and a SIMOTION
device via PROFIBUS is created using the SFC65 (XSEND) and SFC66 (XRECEIVE)
system functions on the SIMATIC side and the _Xsend and _Xreceive system functions on
the SIMOTION side. It is not necessary to configure a communication connection in NetPro.
Table 3- 2
Master-master communication
Log
SIMATIC device
Function
SIMOTION device Function
PROFIBUS
S7-300 CPU
SFC65 (XSEND)
SIMOTION C
_Xsend
S7-400 CPU
SFC66 (XRCV)
SIMOTION D
_Xreceive
SIMOTION P
The PROFIBUS addresses are assigned in HW Config. All further block parameters are
specified for the connection by the user and also transferred when the function is called. The
PROFIBUS connection between SIMATIC and SIMOTION is therefore similar to a TCP/IP
connection between a SIMATIC station with integrated Ethernet interface and a SIMOTION
device and vice versa. The parameters important for communication are specified by the
user and transferred with the block or function call.
The following section describes parameterization of the system functions on the SIMATIC S7
side and the functions on the SIMOTION side in more detail.
3.2.4.2
SIMATIC S7 system functions for a PROFIBUS connection
Introduction
The PROFIBUS connection between a SIMATIC S7 station and a SIMOTION device was
explained in the previous section. The following contains a detailed explanation of the
parameterization of the SIMATIC S7 system functions and the SIMOTION functions for a
PROFIBUS connection.
SIMATIC S7 system functions
On the SIMATIC S7 side, the two system functions SFC65 X_SEND and SFC66 X_RCV are
used for the communication between a SIMATIC S7 station and a SIMOTION device.
SIMOTION functions:
CALL "X_SEND"
REQ:=M1.0
CONT:=FALSE
DEST_ID:=W#16#2
//This is the DP address of the
//communication partner (SIMOTION P350)
Communication
System Manual, 11/2010
33
PROFIBUS
3.2 Communication with SIMATIC S7
REQ_ID:=DW#16#2
//The REQ_ID must match the MessageID on
SD:=P#DB100.0DBX0.0 BYTE 10 //the SIMOTION receive side!
//
RET_VAL:=MW64
BUSY:=M1.1
Parameterization of the SFC65 X_SEND system function
The SFC65 X_SEND system function is called on the SIMATIC S7 side to send data via a
PROFIBUS connection from a SIMATIC S7 station to a SIMOTION device.
The data transfer is controlled via the REQ parameter, i.e. when the parameter is set to 1,
the data transfer is started. If there is no connection to the communication partner at this
time, it is established before the data is sent.
The CONT parameter is used for the parameterization of the connection behavior after
completion of the data transfer. If value 1 is entered in the CONT parameter, the connection
is maintained after completion of the data transfer. If 0 is entered as value, the connection is
cleared after the data transfer.
The DEST_ID parameter contains the PROFIBUS address of the SIMOTION device. It is
specified in STEP 7 HW Config.
REQ_ID identifies the send data, i.e. the sent data can be uniquely assigned to the S7
station in the SIMOTION device via the value in the REQ_ID parameter. The value assigned
here is confirmed in the messageid parameter in the receive function on the SIMOTION side.
SD specifies the area from where the send data originates.
The RET_VAL and BUSY parameters are used to monitor the status of the transmission
process. BUSY indicates that the send job is still running or has already been completely
executed. RET_VAL can be used for a detailed diagnosis when an error occurs.
CALL "X_RCV"
EN_DT:=M0.0
RET_VAL:=MW50
REQ_ID:=MD52
NDA:=M0.1
RD:=P#DB110.DBX0.0 BYTE 10
Call example of the system function SFC66 X_RCV
If data from a SIMOTION device is to be received on a SIMATIC S7 station, the SFC66
X_RCV system function must be called in the S7 program.
The "EN_DT" input of the system function specifies:
● Whether the function should only check if new data is received (EN_DT=0) or
● Whether the received data should be copied from the queue to the area specified by "RD"
(EN_DT=1).
The user can monitor the status of the function call with the RET_VAL parameter. If an error
occurs, the user receives detailed information on the cause.
Communication
34
System Manual, 11/2010
PROFIBUS
3.2 Communication with SIMATIC S7
REQ_ID identifies the receive data, i.e. the received data can be uniquely assigned to a
SIMOTION device via the REQ_ID parameter. The value received here corresponds to the
value in the messageid parameter in the relevant send function on the SIMOTION side.
The NDA parameter indicates whether new data has been received. If NDA is 1, new data is
available and can be transferred to the receive data area. If NDA is 0, no new data is
available.
The RD parameter specifies where the received data is stored.
SIMOTION functions
RetVal_PB_Senden:=
_xsend(PB_Senden_CommunicationMode, PB_Senden_Address,
PB_Senden_MessageID, PB_Sender_NextCommand, PB_Senden_CommandID,
PB_Sende_Daten, PB_Sende_Daten_Laenge);
Example for calling the SIMOTION _xsend function
If the SIMATIC S7 station and the SIMOTION device communicate via PROFIBUS, the
_xsend function is called on the SIMOTION side for sending purposes.
Note
It is only possible to send data (_xsend()) to a SIMOTION DP slave if a check mark has been
placed in Programming, status/force, or other PG functions and non-configured
communication connections possible.
The "communicationmode" parameter informs the called function of what is to happen to the
connection after the successful data transfer. The function data type can assign the
ABORT_CONNECTION or HOLD_CONNECTION values. If ABORT_CONNECTION is
assigned to the parameter, the connection will be removed after the data transfer. The
HOLD_CONNECTION value is used to parameterize the function so that the connection will
be retained after a successful data transfer.
The address parameter contains a structure of the StructXsendDestAddr data type, which
also consists of various parameters. This structure contains all the information about the
communication partner address of the SIMOTION device.
Parameter structure "StructXsendDestAddr
The individual parameters of the structure are listed and explained in the following.
The deviceid parameter is used for the respective SIMOTION hardware. The physical
connection point is specified with the parameter. The value 1 is entered for interface X8 for a
SIMOTION C2. The value 2 is entered for interface X9. If a SIMATIC S7 station is connected
to X101 of a SIMOTION P, the value 1 is assigned in the deviceid parameter. The value 2 is
written in the deviceid parameter for the X102 interface. For the SIMOTION D, the value 1 is
entered for the X126 interface and the value 2 for the X136 interface in the deviceid
parameter.
Communication
System Manual, 11/2010
35
PROFIBUS
3.2 Communication with SIMATIC S7
Because no subnet mask is specified for communication via MPI or PROFIBUS, a value of 0
is pre-assigned to the remotesubnetidlength parameter. Consequently, the assignment of the
remotesubnetid parameter is irrelevant.
The value 1 is set in the remotestaddrlength parameter for the MPI or PROFIBUS
communication.
The nextstaddrlength parameter specifies the length of the router address. As a router is not
used for the MPI or PROFIBUS communication between the SIMATIC S7 station and the
SIMOTION device, the value 0 is assigned for this parameter. Consequently, the nextstaddr
parameter is also irrelevant (see below).
The following remotesubnetid parameter identifies the subnet mask and has, as already
mentioned above, no significance for the communication via MPI or PROFIBUS.
The remotestaddr parameter specifies the actual destination address. The parameter is an
array. However, only the first index is used for the MPI or PROFIBUS communication. The
other five indices have no significance.
The nextstaddr parameter is used to specify the router address. The same applies for this
parameter as for the remotesubnetid parameter. Its assignment is also irrelevant for the
communication via MPI or PROFIBUS.
The messageid parameter is assigned by the user for the identification of the SIMOTION on
the receive side. The value entered enables an assignment on the SIMATIC S7 station via
the REQ_ID parameter. The value can be fetched there from the messageid parameter.
The behavior of this function with respect to the advance when called is parameterized with
the nextcommand parameter. There are two setting options: IMMEDIATELY and
WHEN_COMMAND_DONE. With the first value, the advance is immediately and with the
second value, after completion of the command.
When the function is called, a system-wide unique number is assigned in the commandid
parameter to allow tracking of the command status.
The send data is specified with the data variable when the function is called.
The datalength parameter specifies the length of the data to be transferred from the send
area.
The return value of the _xsend function to the user program is of data type DINT. The
various return values indicate any problems that occurred during the execution of the
function. There is also a confirmation when the data has been successfully sent.
RetVal_PB_Empfanen:=
_xreceive(PB_Empfangen_MessageID,
PB_Empfangen_NextCommand,PB_Empfangen_CommandID);
Call example of the SIMOTION _xreceive function
The example shows the use of the _xreceive function. The function is used when data from a
SIMATIC S7 station is to be received via PROFIBUS.
The messageid parameter is transferred to the _xreceive function for the identification of the
S7 station from which the data is to be received. The entered value is that what was
assigned on the S7 page in the REQ_ID parameter of the corresponding _xsend system
function.
Communication
36
System Manual, 11/2010
PROFIBUS
3.2 Communication with SIMATIC S7
The behavior of this function with respect to the advance when called is parameterized with
the nextcommand parameter. There are two setting options: IMMEDIATELY and
WHEN_COMMAND_DONE. With the first value, the advance is immediately and with the
second value, after completion of the command.
When the function is called, a system-wide unique number is assigned in the commandid
parameter to allow tracking of the command status.
The structure returned from the function to the user program contains the functionresult,
datalength and data parameters. The receive status can be queried via the functionresult
parameter. The datalength parameter returns the number of received useful data bytes after
a successful call of the _xreceive function. The received useful data can be accessed via the
data parameter.
Communication
System Manual, 11/2010
37
PROFIBUS
3.2 Communication with SIMATIC S7
Communication
38
System Manual, 11/2010
PROFINET IO
4.1
PROFINET IO overview
4.1.1
PROFINET IO
4
In machine construction, there is a clear trend toward distributed machine concepts and
mechatronic solutions. This increases the demands on the drive networking. A large number
of drives and shorter cycle times as well as the use of IT mechanisms are increasingly
gaining in importance.
The two successful solutions, PROFIBUS DP and Ethernet, are combined under PROFINET
IO. PROFINET IO is based on many years of experience with the successful PROFIBUS DP
and combines the normal user operations with the simultaneous use of innovative Ethernet
technology concepts. This ensures the smooth migration of PROFIBUS DP into the
PROFINET world.
PROFIBUS DP is a bus system where only one node can have "send" access to the bus at
any one time (half-duplex operation). PROFINET IO uses the switching technology which is
also found with Ethernet. This involves separating all the network segments, thereby
enabling sending and receiving to be performed on all lines at the same time (full-duplex
operation). In this way, the network can be used much more efficiently through the
simultaneous data transfer of several nodes. The bandwidth has also been increased to 100
Mbps.
Note
Detailed descriptions on the subject of PROFINET can be found in the
SIMATIC PROFINET System Description System Manual.
4.1.2
Application model
During the development of PROFINET IO, special emphasis was placed on the protection of
investment for users and device manufacturers. The application model is retained for the
migration to PROFINET IO. Compared with PROFIBUS DP, the process data view remains
unchanged for:
● I/O data (access to the I/O data via logical addresses)
● Data records (storage of parameters and data) and
● Connection to a diagnostic system (reporting of diagnostic events, diagnostics buffer)
This means that the familiar view for access to the process data is used in the user program.
Existing programming know-how can continue to be used. This also applies to device
profiles, such as PROFIdrive, which is also available with PROFINET IO.
Communication
System Manual, 11/2010
39
PROFINET IO
4.1 PROFINET IO overview
The engineering view also has a familiar "look and feel". The engineering of the distributed
I/O is performed in the same way and with the same tools, as already used for PROFIBUS.
4.1.3
IO controller
The PROFINET IO controller has the same functions as the PROFIBUS DP master. The IO
controller of, for example, a SIMOTION D 4x5-2 DP/PN with onboard PROFINET interface
exchanges data cyclically with the I/O devices assigned to it (PROFINET IO devices),
such as the SINAMICS S120.
,2&RQWUROOHU
6,027,21
'['331
6,027,21
3
2QERDUG
2QERDUG
6,0$7,&6
&38
2QERDUG
352),1(7,2
&831
,2'HYLFH
6,1$0,&6
Figure 4-1
4.1.4
(76
Examples of IO controllers and IO devices
IO device
Distributed field devices such as I/O components (e g. ET200) or drives (e.g. SINAMICS
S120 with CU320-2 PN) are referred to as IO devices. The function is comparable to a
PROFIBUS DP slave.
See also
Creating an IO device (Page 102)
4.1.5
PROFINET IO system
A PROFINET IO system consists of a controller and the devices assigned to it.
Communication
40
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
4.1.6
iDevice
The PROFINET I device functionality is comparable with that of the I-slave for PROFIBUS,
i.e. a SIMOTION CPU can accept the role of an IO device and thereby exchange data with a
different IO controller.
Whereas with PROFIBUS an interface can be either a master or slave only, with PROFINET
it is possible to be both an IO controller and IO device at the same time on a single
PROFINET interface.
4.1.7
RT classes
4.1.7.1
RT classes for PROFINET IO
Description
PROFINET is based on the Ethernet standard. This means that all standard Ethernet-based
protocols (e.g. HTTP, FTP, TCP, UDP, IP, etc.) can be transferred via the PROFINET
network.
In addition to the protocols associated with the types of office-based applications known
throughout the world, PROFINET offers two protocols (transmission modes) adapted to the
requirements of the automation sector. These are PROFINET IO with RT and PROFINET IO
with IRT.
Both these transmission modes are optimized for cyclic IO communication within a network
involving small amounts of data.
RT
RT communication uses the option of prioritizing telegrams (as described in the Ethernet
standard). This mechanism is also used for Voice over IP, for example. For more detailed
information, see PROFINET IO with RT (Page 46).
IRT
A time slot procedure is superimposed on the Ethernet for PROFINET IO with IRT. This
means there are 2 slots. IRT telegrams are transferred in the first and RT and IP telegrams
in the second. Under this arrangement, a transmission bandwidth guaranteed to cope with
any load/overload situation is reserved for the IRT data. IRT requires devices to be
synchronized so that all devices involved know when the time slot begins.
The IRT transmission mode makes a distinction between two RT classes: High Flexibility
and High Performance.
IRT - High Flexibility
The IRT High Flexibility RT class corresponds to the IRT transmission mode which has just
been described. A uniform IRT slot is defined for the entire network in the engineering
system.
Communication
System Manual, 11/2010
41
PROFINET IO
4.1 PROFINET IO overview
IRT - High Performance
In addition to the bandwidth reservation, a schedule for the cyclic telegrams is developed
with consideration given to the topology. This makes it possible for the engineering system to
determine the required bandwidth for each individual cable. As a result, the IRT time interval
can be minimized and transmission optimized to a greater extent when compared with IRT
High Flexibility.
As well as synchronizing the IRT transmission network, IRT High Performance enables the
application (e.g. SIMOTION position controller and interpolator) to be synchronized in the
devices (isochronous application). This mirrors the behavior of the isochronous PROFIBUS.
This is an essential requirement for closing control loops across the network and
isochronous switching of inputs and outputs in the network.
Note
Only IRT High Performance is used for SIMOTION. Whenever "IRT" is referred to in the rest
of this document, this means IRT High Performance.
For more detailed information, see PROFINET IO with IRT (High Performance) (Page 48).
Comparing RT and IRT
Table 4- 1
The major differences between RT and IRT
Property
RT
IRT (High Flexibility)
IRT (High Performance)
Real-time class
Real-time class 1
Real-time class 2
Real-time class 3
Transfer mode
Prioritization of cyclic RT data
using Ethernet-Prio (VLAN
tag)
Bandwidth reservation, i.e.
Bandwidth reservation optimized
reservation of a time range
by the engineering system on the
in which only cyclic IRT data basis of topology information
(but no RT or IP telegrams)
is transmitted
Determinism
Variance of the transmission
duration for cyclic RT data
using TCP/IP telegrams
Guaranteed transmission of
cyclic IRT data within the
reserved IRT time interval
Transmission and receiving times
for cyclic IRT data are precisely
defined and guaranteed for all
kinds of topologies.
Isochronous
application
Not supported
Not supported
Supported
Hardware support
using special
Ethernet controller
No
Yes
Yes
4.1.7.2
Send clock and update time
Description
The PROFINET system makes a distinction between two cycle clocks known as the send
clock and update time. The send clock is the basic cycle clock for cyclic communication. The
update time indicates the cycle in which a device is supplied with data.
Communication
42
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
Send clock
This is the period between two successive intervals for IRT or RT communication. The send
clock is the shortest possible transmit interval for exchanging data. The send clock therefore
corresponds to the shortest possible update time. During this time, IRT data and non-IRT
data (RT, TCP/IP) is transmitted. All devices within a sync domain work with the same send
clock.
Update time
The update time can be configured separately for each IO device and determines the interval
at which data is sent from the IO controller to the IO device (outputs) as well as from the IO
device to the IO controller (inputs). The calculated/configured update times are always a
multiple (2n) of the send clock.
Relationship between the update time and send clock
The calculated update times are multiples (1, 2, 4, 8, ..., 512) of the send clock. The
minimum possible update time thus depends on the minimum send clock for the IO controller
that can be set and the efficiency of the IO controller and the IO device.
4.1.7.3
Adjustable send clocks and update times
Description
The table below describes the send clocks which can be set for SIMOTION devices with
PROFINET IO, as well as the down-scalings which are dependent on them and can be set
for IRT and RT. The adjustable send clocks are divided into two ranges: the "even" range
and the "odd" range. Update times are obtained by multiplying down-scalings by the send
clock.
Note
The versions below relate to the use of the first servo cycle clock. Other restrictions may
apply under some circumstances if Servo_fast and IPO_fast are used. If Servo_fast and
IPO_fast are used, then the PROFINET must be operated isochronously.
Table 4- 2
Adjustable send clocks and update times when using first servo
Send clock
"Even"
range
Down-scaling (update time = factor * send clock)
RT
IRT High Performance
250, 500, 1,000 µs
1,2,4,8,16,32,64,128,256,512
1 Note 2)
2,000 µs
1,2,4,8,16,32,64,128,256
4,000 µs
1,2,4,8,16,32,64,128
Communication
System Manual, 11/2010
43
PROFINET IO
4.1 PROFINET IO overview
Down-scaling (update time = factor * send clock)
"Odd"
range
Note 1)
375, 625, 750, 875, 1,125, 1,250 µs
... 3,875 µs
(increment 125 µs)
Not supported
1
If there is no sync master configured in a PROFINET IO system (no PROFINET IRT), the
send clock for the PROFINET IO system concerned can be set on an individual basis at the
relevant IO controller using the <PROFINET interface> properties on the PROFINET tab
under the send clock or using the PROFINET IO system properties on the tab for the update
time. There is a default setting for the send clock of 1 ms. On the IO cycle tab, the fixed
factor or fixed update time can be set using the mode and the down-scaling for the update
time can be set using the factor.
As soon as a sync master is configured in the PROFINET IO system, the send clock is
defined under the sync domain properties. The controllers assigned to the sync domain
accept this value. Update times can be set independently for each IO device.
Note 1) Mixed operation, RT/IRT High Performance
Odd send clocks can only be used if there is no RT IO device in the IO systems involved in
the sync domain. If there are IO devices with RT class "RT" in a sync domain, it is only
possible to set send clocks from the "even" range.
Note 2) Down-scaling (factor) and isochronous application
A number of IO devices support factors of 2, 4, 8, and 16 with IRT High Performance, as well
as a factor of 1.
Where IO devices (e.g. ET200S IM151-3 PN HS, SINAMICS S) are operated with an
isochronous application, it is usually only possible to set a factor of 1.
In these cases, the mode for the update time must always be set to fixed factor to ensure
STEP 7 does not automatically adapt the update time to always match the send clock.
Communication
44
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
Send clock mode for update time
● Fixed factor,
fixed send clock down-scaling for the update time
● Fixed update time,
update time is set
● Automatic
STEP 7 automatically adjusts the down-scaling if the factor selected is too low
Note
It is recommended that you work with the Fixed factor setting.
Figure 4-2
4.1.7.4
Update time and factor
Setting RT classes
RT classes
The IO controller determines which RT class its IO system supports, by setting the real time
class at its controller interface. RT devices can always be operated, even if IRT classes are
set.
Communication
System Manual, 11/2010
45
PROFINET IO
4.1 PROFINET IO overview
Setting the RT class
You can set the RT class in the HW Config for the associated PROFINET device.
1. In HW Config, double-click the PROFINET interface in the module.
The Properties dialog box is called.
2. Select the realtime class for RT class in the Synchronization tab. With SIMOTION, IRT
High Performance is automatically set for IRT.
3. Click OK to confirm.
Note
Only IRT High Performance is used for motion control applications with SIMOTION and
SINAMICS.
4.1.7.5
PROFINET IO with RT
PROFINET IO with RT is the optimal solution for the integration of I/O systems without
particular requirements in terms of performance and isochronous mode. This is a solution
that uses standard Ethernet IC (Ethernet Controller) and commercially available industrial
switches as infrastructure components. A special hardware support is not required.
Communication
46
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
Not isochronous
Although standard Ethernet and PROFINET IO with RT do not offer any synchronization
mechanisms for devices, this does not mean that such arrangements are impossible.
However, it does mean that isochronous data transmission is impossible, and there is no
isochronous application for motion control as a result.
Data exchange
Communication via PROFINET IO with RT and IRT is based on the Ethernet frame and the
MAC address. This means that cross-network communication via a router using RT and IRT
is not possible. PROFINET IO telegrams have priority over IT telegrams in accordance with
IEEE802.1Q. This ensures the availability of the real-time properties required in automation
applications (e.g. for standard IOs).
Update time
The adjustable update time is in the range of 0.25 - 512 ms. The selected update time
depends on the process requirements, the number of devices, and the amount of IO data.
Given the improved performance offered by PROFINET compared to field buses, the bus
cycle is generally no longer the variable which determines the system cycle.
4.1.7.6
PROFINET IO with IRT - Overview
Overview
PROFINET IO with IRT satisfies communication requirements which go beyond the sending
of standard signals. As far as IRT is concerned, the jitters which may still be encountered
with RT during communication are significantly reduced by synchronizing the network.
A time-slot procedure is required at a level above that of the Ethernet network. One time slot
is reserved for the IRT telegrams and another for the RT and IP-based telegrams. This type
of approach requires all devices involved in IRT communication to be synchronized.
,57SDUW
7&3,3
SDUW
,57SDUW
6HQGFORFNLQWHUYDO
7&3,3
SDUW
,57SDUW
6HQGFORFNLQWHUYDO
7&3,3
SDUW
6HQGFORFNLQWHUYDO
HJPVSRVLWLRQFRQWUROOHUFORFNF\FOH
,VRFKURQRXVFRPPXQLFDWLRQ
,57
Figure 4-3
7&3,3FRPPXQLFDWLRQ
,2GDWD
57
7&3,3GDWD
157
RSWLRQDO
IRT Communication - Overview
Communication
System Manual, 11/2010
47
PROFINET IO
4.1 PROFINET IO overview
PROFINET IO with IRT is available in two versions:
● IRT High Flexibility with fixed bandwidth reservation
● IRT High Performance (Page 48) with optimized bandwidth reservation and scheduled
IRT communication
For PROFINET IO with IRT, all IRT devices are synchronized on a shared sync master. See
also Isochronous operation and isochronous mode with PROFINET (Page 50).
4.1.7.7
PROFINET IO with IRT (High Performance)
The performance capability of motion control applications is significantly increased with
PROFINET IO IRT (High Performance). If field buses such as PROFIBUS are used, devices
are connected in parallel to the bus. This has a number of consequences. Firstly, only 1
device can transmit at any one time. Secondly, the parallel connection of all devices means
that the physical limit is reached at approximately 12 Mbps.
PROFINET is based on Ethernet technology, which is in turn based on point-to-point
connections. Point-to-point connections support a significantly higher transmission rate when
compared with arrangements based on parallel wiring. PROFINET uses 100 Mbps. Using
this in conjunction with switching technology means that all connecting cables are decoupled
from each other, enabling each cable to both transmit and receive at the same time.
Scheduling the message frame traffic for IRT High Performance enables data traffic to be
optimized to a considerably higher degree, as only the bandwidth which is actually required
is reserved.
IRT (High Performance) is particularly suitable for:
● The control and synchronization of axes via PROFINET IO
● A fast, isochronous I/O integration with short terminal-terminal times
Send clock
The send clock can be set between 250 µs and 4 ms for PROFINET IRT High Performance.
In mixed operation involving RT and IRT High Performance, only values of 0.5, 1.0, 2.0, or
4.0 can be set.
The actual send clock used depends on various factors:
● The process; communication should be no faster than required. This reduces the bus and
CPU loads.
● The bus load (number of devices and the amount of IO data per device)
● Computing power available in the controller
● Supported send clocks in the participating PROFINET devices of a sync domain
A typical send clock is, for example, 1 ms. However, it can be set in a 125 µs grid within the
limits of 250 µs to 4 ms. See also Adjustable send clocks and update times (Page 43).
The supported send clocks can be found in the corresponding manuals of the respective
SIMOTION devices. A minimum cycle time of 250 µs is only supported by selected
components (SIMOTION P320-3, P350-3, D445-2 DP/PN, D455-2 DP/PN, and ET 200S HS
modules).
Communication
48
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
Isochronous application
Isochronous data transmission and an application synchronized with the bus system satisfy
the requirements associated with demanding motion control applications. This makes it
possible to close control loops via the bus system and achieve minimum guaranteed
response times (terminal-to-terminal time response). In addition, a high-performance and
isochronous connection to the application with low load on the application CPU is ensured.
In contrast to standard Ethernet and PROFINET IO with RT, the transmission of message
frames for PROFINET IO with IRT High Performance is scheduled.
Time-scheduled data transmission
Scheduling is the specification of the communication paths and the exact transmission times
for the data to be transferred. The bandwidth can be optimally utilized through
communication scheduling and therefore the best possible performance achieved. This
requires the network topology to be configured, with the engineering system automatically
calculating the communication schedule from the configured topology (see also Topology).
The data relevant to PROFINET IO is transmitted by means of a download from HW Config
to the IO controller. The highest determinism quality is achieved through the scheduling of
the transmission times which is especially advantageous for an isochronous application
connection.
Data exchange
PROFINET IO with IRT High Performance and PROFINET IO with IRT High Flexibility only
run within a sync domain. These must not however be mixed in one IO system. In other
words, a sync domain may consist of 2 or more IO systems which can all be synchronized
with one another. Within the IO system, either IRT High Flexibility or IRT High Performance
is used.
4.1.8
Sync domain
A sync domain is a group of PROFINET devices synchronized to a common cycle clock. The
sync master sets the cycle clock. The sync slave synchronizes itself with the cycle clock set
by the sync master. A sync domain has one sync master.
See also
Creating a sync domain (Page 90)
Communication
System Manual, 11/2010
49
PROFINET IO
4.1 PROFINET IO overview
4.1.9
Isochronous operation and isochronous mode with PROFINET
Description
PROFINET IO with IRT is based on Ethernet with a higher-level time-slot procedure. This
arrangement requires all bus interfaces involved in communication to be synchronized. In
PROFINET IO with IRT High Performance and IRT High Flexibility, a sync master generates
a synchronization message to which all sync slaves synchronize themselves.
Sync master, slaves, and domain
The sync master and sync slave device roles are assigned during the configuration. An IO
controller or SCALANCE 200 IRT switches can be assigned a sync master role.
A sync domain can consist of both PROFINET devices with IRT High Performance and
PROFINET devices with IRT High Flexibility. PROFINET devices with RT may also be
located at the ends (spur lines), but not between two PROFINET IO devices with IRT (High
Flexibility or High Performance).
A line (network) must not contain a mixture of IRT High Flexibility or IRT High Performance,
as these must always be connected to each other directly.
Compatibility
Communication between and through different sync domains via PROFINET IO with RT is
possible.
6\QFGRPDLQ
6\QFGRPDLQ
(76
,2GHYLFH
6,027,21',2
FRQWUROOHU
6,027,21',2
FRQWUROOHU
6,027,213,2
FRQWUROOHU
3*
6ZLWFK
6\QFVODYHV
Figure 4-4
6\QFPDVWHU
6\QFVODYHV
6ZLWFK
PROFINET isochronous mode
IRT-compatible switches, such as SCALANCE X204 IRT, are used in the structure. All
devices involved in IRT communication are connected to each other directly. As the
programming device in the center of the network is connected via a spur line, it does not
interrupt the IRT path.
See also
Isochronous applications with PROFINET (Page 57)
Communication
50
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
4.1.10
Addressing of PROFINET IO devices
A globally unique MAC (Media Access Control) address is used for data exchange via
Ethernet and forms part of the Ethernet telegram. The MAC address is linked to the
hardware and cannot be modified.
Ethernet-based protocols such as HTTP (Web applications) or FTP (file transfer) use the IP
protocol. Addressing is based on the IP address. This is a logical address, which can be
assigned by the user.
PROFINET uses a device name (NameOfStation) to identify PROFINET devices, in addition
to the two items of address information already known in connection with Ethernet. The
device name is a string that fulfills the requirements of a DNS (Domain Name Service) name.
This device name, also known as the communication name, must be unique across the
PROFINET network.
During the commissioning phase, each PROFINET device (identified via the MAC address)
is assigned a device name once via the configuration tool and this is stored retentively in the
PROFINET device (a process known as node initialization). A device is referenced in the
configuration via the device name. If a device is replaced, e.g. because of a defect, the new
device has another MAC address. If it is initialized with the same device name as the
replaced device (e.g. by reconnecting a removable medium that stores the device name
retentively), it can take over the function of the replaced device without any changes in the
configuration.
Alternatively, the device can be initialized automatically by the controller on the basis of
topology information. This is only possible if topology information (who is wired to whom) is
stored in the engineering system. During ramp-up, the controller identifies the connected
devices using the device names, before assigning the IP address defined in the engineering
system to the device. The station can then be accessed via IP services. The IP address can
be taken from a configured sequence of numbers or configured individually.
A PROFINET device has the following addresses by which it can be addressed:
● MAC address (part of the Ethernet telegram, stored on the device, and cannot be
modified)
● IP address (IP-based communication such as engineering access, must be assigned to
all devices)
● Device name, communication name (devices identified by the controller during ramp-up)
See also
Assigning device names and IP addresses to IO devices (Page 110)
Communication
System Manual, 11/2010
51
PROFINET IO
4.1 PROFINET IO overview
4.1.11
Planning and topology for a PROFINET network
Planning guidance
Fundamental questions must be resolved before implementing the design of a PROFINET
network. In this chapter, you will find broad guidelines to support you in defining
requirements and creating planning documentation. Planning is an iterative process, i.e.
some requirements influence each another and therefore necessitate changes in the overall
plan.
Content of the planning documentation
Once the requirements have been specified and the planning process has come to an end,
the following information should be available to you:
● System configuration
● Topology
● Selection of components
● Selection of transmission medium
● Connector selection
● Communication relationships
● Estimate of the data volumes to be transferred
Preliminary considerations and analysis during the planning stage
1. Selecting the devices
Create a list of devices. The selection of devices is based, among other things, on the
application class (conformance class), the time and communication requirements, the
function, environmental influences, and the degree of protection.
2. Position of the devices in the machine
The position of the devices in the machine has implications for the degree of protection,
EMC, device dimensions and the cables used, e.g. whether fiber-optic cable should be
used rather than copper cable. This in turn influences device selection.
3. Defining the communication properties
The time requirements concerning the application (isochronous/cyclic) and
communication via PROFINET must be defined, i.e. does communication take place in
real-time (IRT/RT) or is it acyclic via TCP/IP or UDP/IP.
Communication
52
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
4. Network planning (topology)
Specify the network topology (ring, star, line). Depending on the type of topology
selected, the following must be taken into account: switches (with IRT capability), EMC,
extent of network, WLAN (IRT not possible) and, if applicable, media redundancy MRP
(not possible with SIMOTION/SINAMICS).
– Set up your PROFINET in a point-to-point architecture where this is useful
(for example, use a switch to branch off into a point-to-point topology downstream of a
CPU).
– In the case of PROFINET with IRT, a line structure with 64 IRT devices is permissible.
The amount of data transmitted has certain implications. If longer message frame
lengths are configured for each device, the possible number of devices per line may
be reduced. However, this is detected early on during configuration with HW Config
and signaled by means of an error message. The 64 IRT devices in the line are only
applicable to PROFINET after V2.2.
– Maintain a low interconnection depth for the switches. This will reduce the effect of a
worst-case jitter scenario with RT communication. With IRT High Flexibility, the
bandwidth requirement determined by the engineering software is reduced.
Topology
Star
If you connect communication nodes to a
switch, you automatically create a star-shaped
network topology.
With this structure (unlike with other structures),
if an individual PROFINET device fails, this
does not automatically lead to the failure of the
entire network. Only the failure of a switch
causes the failure of devices downstream of the
switch.
Tree
If you interconnect several star-shaped
structures, you obtain a tree network topology.
Line
All the communication nodes are connected in
series as a bus.
If a switch fails, communication downstream of
the failed switch is no longer possible.
Devices with a 2-port switch must be used in
order to set up a linear structure.
Linear network structures require the least
amount of cabling.
5. Defining the communication relationships (logical assignment of partners)
Specify which communications partners are connected as well as the spatial and
functional assignment of these partners.
Communication
System Manual, 11/2010
53
PROFINET IO
4.1 PROFINET IO overview
6. Defining the data volumes
Define the possible data volumes of the network nodes and those at the communication
junctions.
Note
Communication within a PROFINET network should only be as fast as the technology of
the system requires it to be and not as fast as technically possible.
7. Defining the sending cycle and update time
The sending cycle is determined by the PROFINET device which has to be updated the
most frequently. The update time is a multiple of the sending cycle and determines the
PROFINET network load. The network load generated by PROFINET should always
remain below 50% to allow reserve capacity for peak loads. Please note that the
PROFINET network load increases in linear relation to the number of PROFINET devices
and the sending cycle.
Note
Always configure the update times as required by the process, even if the bus system
allows for a very large number of shorter update times. This reduces the PROFINET
network load and the load on the PROFINET controller to what is strictly necessary.
Communication
54
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
8. Checking the network load
In order to determine the network load, you must take into account the PROFINET
network load as well as the network load generated by standard Ethernet devices. These
can take the form of video cameras for monitoring the system or data servers for
production data, for example. Ethernet devices with a low data volume such as
engineering workstations or HMIs, for example, are normally non-critical. To prevent the
PROFINET RT data stream from being compromised, you should, if necessary, adapt the
network topology in cases where high network utilization by Ethernet nodes is
anticipated. However, you also need to make sure you have sufficient bandwidth
reserves for future expansion.
Note
Devices which exert a high IP load on the network should be located, where possible, in a
separate area of the network. The diagnostics server and HMI server are examples of
such devices.
9. Connection to the company network
Various points must be considered if the automation system is to be connected to the
company network. Normally, you should establish the connection via a router or a
SCALANCE S with firewall to prevent unauthorized access. PROFINET IRT or RT
communication via routers is not possible. You should only establish further connections
(such as remote access or VPN, for example) in individual cases following consultation
with the IT department.
Communication
System Manual, 11/2010
55
PROFINET IO
4.1 PROFINET IO overview
2IILFH(WKHUQHW
5RXWHU
(QJLQHHULQJ
&RQWUROOHU
+0,
0RWLRQFRQWURO
GULYHV
'LVWULEXWHG
,2
,QGXVWULDO(WKHUQHW
SURGXFWLRQ
Figure 4-5
Optimized topology of a company network connection
Configuring the topology
Communication scheduling requires knowledge of the network topology. This includes
information about interconnecting the individual devices to create a communication network.
Topology scheduling is only relevant for IRT High Performance. The topology editor that has
been integrated in the hardware configuration enables user-friendly configuration of the
network topology.
Communication
56
System Manual, 11/2010
PROFINET IO
4.1 PROFINET IO overview
4.1.12
Isochronous applications with PROFINET
As with PROFIBUS, in the case of PROFINET IO with IRT High Performance the application
can be synchronized with the transmission network's cycle clock. Distributed motion control
applications and terminal-to-terminal response times of less than a millisecond require all
PROFINET devices with IRT High Performance to be synchronized with a common time
base.
Note
Isochronous mode for the application on the bus is only possible for PROFINET IO with IRT
High Performance.
Configuration model for isochronous mode, V4.2 and higher
The configuration model for isochronous mode has changed as of V4.2. The Application tab
for the properties of the IO device has been replaced with settings on the controller and on
the IO cycle tab of the IO device. You can find a more detailed outline of the procedure for
making settings in isochronous applications in the section titled Inserting and configuring the
SINAMICS S120 (Page 104)
Communication
System Manual, 11/2010
57
PROFINET IO
4.1 PROFINET IO overview
Procedure
When configuring isochronous applications, proceed as follows:
1. On controllers and devices, choose the setting "IRT High Performance"; with SIMOTION
(controller) V4.2 or higher, this setting is made automatically.
Figure 4-6
Setting IO device synchronization to Sync slave and setting IRT High Performance.
2. On the devices, set the Update time mode to Fixed factor and select the cycle clock
under Assign IO device isochronously. This is normally the servo cycle clock.
Communication
58
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
4.1.13
Acyclic communication via PROFINET
Description
Similarly to PROFIBUS DP, it is also possible for PROFINET IO to operate acyclic
communication (Base Mode Parameter Access). You will find a detailed description hereof
under DP V1 communication (Page 279).
4.2
Properties of PROFINET IO with SIMOTION
4.2.1
Introduction
Requirement
To work with SIMOTION using PROFINET IO, you must have PN slots available. These can
be found directly on the controller or added by inserting Option Boards.
Communication
System Manual, 11/2010
59
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
Connection possibilities:
● SIMOTION D4x5 with Option Board CBE30
● SIMOTION D4x5-2 DP/PN
● SIMOTION P350 PN or SIMOTION P320-3
● SIMOTION D410 PN
● SIMOTION C240 PN
(QJLQHHULQJ
V\VWHP
&RQWUROOHU
+0,
0RWLRQ&RQWURO
'ULYHV
'LVWULEXWHG
,2
Figure 4-7
System topology with PROFINET
Communication
60
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
PROFINET devices support the simultaneous operation of:
● IRT High Performance - isochronous realtime Ethernet
– Operation of IRT I/O (e.g. ET200S HS for IRT High Performance)
– Operation of a SINAMICS S120 as an IO device
– Data exchange between controllers via IRT High Performance (e.g. distributed
synchronous operation)
● RT - realtime Ethernet
– Operation of RT - peripherals (e.g. ET 200S, ET 200pro)
– ASi link via IE/AS interface link PN IO for the PROFINET IO gateway to AS interface
– SINAMICS as PROFINET IO with an RT device
● TCP/IP, UDP, HTTP, … standard Ethernet services
Note
For mixed operation of IRT High Performance and RT, it must be ensured that the IRT
High Performance-compatible devices are directly connected to one another In other
words, there must not be any devices that are not IRT-compatible between the IRT
devices.
Note
With SIMOTION SCOUT, it is possible to access a maximum of 10 PROFINET nodes
ONLINE simultaneously. If you have installed SIMATIC NET, you will be able to establish
more than 10 connections.
PROFINET V2.2
SIMOTION SCOUT supports PROFINET V2.2. Older versions are no longer supported as
standard or must be changed over in the hardware.
When inserting SIMOTION devices and/or SINAMICS drives, only PROFINET V2.2 versions
are inserted in SIMOTION SCOUT. If you want to configure older versions, you need to
explicitly add the hardware as PROFINET V2.1 in HW Config.
Note
All IRT nodes must comply with the PROFINET V2.2 standard. Mixed configurations
involving older versions are not permissible.
The hardware supplied as standard is PROFINET V2.2. If you are upgrading existing
systems or downgrading new hardware, please get in touch with Siemens Support.
Communication
System Manual, 11/2010
61
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
Overview of configuration for PROFINET V2.2 with STEP7 5.4 SP4 and SCOUT V4.1.2
Table 4- 3
PROFINET configuration
Configuration step
IRT according to PN V2.2
Configuration of the RT class in HW Config
IRT High Performance
Configuration of SINAMICS S120 via GSD
GSD V2.2 and higher
Configuration of SINAMICS S120 via DeviceOM
Supported
SIMOTION
4.1.2 and higher
SINAMICS
2.5.1.10 and higher
SCALANCE X200 IRT switch
V4.1 and higher
4.2.2
Cycle clock scaling
4.2.2.1
Cycle clock scaling with PROFINET IO on SIMOTION devices
Description (PROFINET IO with IRT High Performance)
An isochronous application (e.g. position controller) on an IO controller must be
synchronized with the send clock for IRT High Performance. It can, however, be
synchronized with a multiple of the send clock of the data. This multiple is designated as
CACF (Controller Application Cycle Factor). Cycle clock scaling is configured in SCOUT with
the execution system via the Expert > Set system cycle clocks context menu.
Example: The data on the network is transferred with a send clock time of 1 ms. However,
the servo should run with 2 msec. Therefore, the application cycle must be 2. For this
purpose, set the ratio 2 at Set system cycle clocks for the servo.
Note
Isochronous mode is not possible for PROFINET IO with IRT High Flexibility.
The CACF is set on the IO device, see e.g. Inserting and configuring the SINAMICS S120
(Page 104).
V4.2 and higher, two servo cycle clocks (servo, Servo_fast)
With V4.2 and higher, Servo_fast is introduced as a second servo task for fast applications.
The second servo cycle clock enables you to operate two bus systems in different
application cycle clocks (PROFINET and PROFIBUS). An assigned servo cycle clock and
IPO cycle clock are available for each of the two application cycle clocks. This enables you
to divide your application into a slow section (servo and IPO) and a fast section (Servo_fast
and IPO_fast). If a Servo_fast is configured, it is linked to the send clock of PROFINET IRT
at a ratio of 1:1. The cycle clock of the servo can then be set again as a multiple of
Servo_fast. In this case, the CACF continues to be the factor between the send
clock/Servo_fast and servo.
Communication
62
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
The functions described below mainly relate to configurations without the option of a second
servo (Servo_fast).
Note
You can find a detailed description of the Servo_fast option in the SIMOTION SCOUT Basic
Functions Manual, Chapter 6.
Description
Scaling to the send clock with SIMOTION controllers is possible in the case of PROFINET
with IRT High Performance under the following conditions:
● The SINAMICS Integrated of a D4xx and an isochronous DP master interface always run
simultaneously to the servo cycle clock.
● For a SIMOTION P350 the isochronous DP master interface always runs simultaneously
with the servo cycle clock.
● For drives (e.g. S120) which are connected via SINAMICS Integrated or as an external
drive unit, the servo cycle clock must always be counted in the first send clock.
This means that down-scaling is possible, although the position controller must be
counted in a send clock.
The following general conditions apply to cycle clocks and cycle clock scalings for a
SIMOTION controller
● If IRT High Performance is configured for a SIMOTION device, but the SIMOTION device
itself neither sends nor receives any IRT data (e.g. there is only a router for IRT data),
then the servo cycle clock will not be synchronized with the send clock. Only the
PROFINET interface is synchronized with the send clock. For example:
– Only TCP/IP via PROFINET interface
– Only RT devices on the PROFINET interface
– PROFINET interface, only router for IRT High Performance data to other devices
Note
Only the SIMOTION device acting as the Sync-Master synchronizes itself
automatically with the higher-level bus. If the SIMOTION device has no PROFIBUS
DP interface configured as an isochronous DP master, the Sync-Slaves synchronize
themselves automatically too.
If a PROFIBUS DP interface is configured as an isochronous DP master for lowerlevel drives, the device will have to be synchronized by means of the application. This
application is programmed in the StartupTask via the
_enableDPInterfaceSynchronizationMode command.
Communication
System Manual, 11/2010
63
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
Combinations of cycle clocks and cycle clock sources for PROFIBUS and PROFINET IO
● Servo can be scaled in integral multiples (1, 2, ...n) of the send clock.
● If a Servo_fast is configured, it is permanently set at a ratio of 1:1 to the send clock. As
before, the CACF can be adjusted as the ratio of the send clock/Servo_fast to servo.
● Cycle clocks for SINAMICS Integrated and isochronous DP master interfaces must run
simultaneously with the servo cycle clock.
4.2.2.2
Cycle clock scaling for IO accesses
Description of PROFINET IRT data transmission
The following must be observed for cycle clock scaling (PROFINET and PROFIBUS):
● PROFINET IO IRT data is always read at the beginning of the position control cycle clock
and written at the end of the position control cycle clock.
● PROFINET IO RT data is read at the beginning of the IPO or IPO2 cycle clock and written
at the end of the IPO cycle clock.
● At the end of a IPOSynchronousTask, the process image is output with the next possible
servo (Data Out) (= response-time-optimized). If the position control cycle clock is downscaled to the IPO cycle clock (position control < IPO), this can lead to the data being
output one or more position control cycle clocks earlier or later within an IPO cycle clock,
if the I/O accesses are performed via the IPOSynchronousTask. This is the case if the
runtime for the IPO cycle clock is not constant and, as a result, data is transmitted earlier
or later on the bus with a faster position control cycle clock.
● At the end of the position control execution level, the process image of the
ServoSynchronousTask is output with the next possible bus cycle clock (= response-timeoptimized).
● Even if PROFINET is being used and the PROFINET cycle clock is down-scaled to the
servo cycle clock (PROFINET < servo), the data is always output in the first PROFINET
cycle clock.
● For PROFIBUS, the data is always output with the first bus clock cycle, since the servo
priority class must always be finished with the first bus clock cycle. In case of a different
runtime of the servo priority class in the individual cycles, the terminal-terminal time may
vary as a result.
Communication
64
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
If an always constant response time is to be achieved instead of a response-time-optimized
behavior, the following must be set:
● For PROFIBUS:
– A reduction ratio servo: IPO = 1 : 1 so that the I/O accesses from the
IPOSynchronousTask are always implemented in isochronous mode.
– Comment: IO accesses from the ServoSynchronousTask are always isochronous for
PROFIBUS
● For PROFINET:
– A reduction ratio bus clock cycle: Servo: IPO = 1 : 1 : 1 so that the I/O accesses from
the IPOSynchronousTask are always implemented in isochronous mode
– A reduction ratio bus clock cycle: servo = 1 : 1 so that the I/O accesses from the
ServoSynchronousTask are always implemented in isochronous mode
4.2.2.3
Bus cycle clocks that can be adjusted for cycle clock scaling to SIMOTION devices
Overview of the possible bus cycle clocks
PROFIBUS
PROFINET
IRT High Performance
PROFINET
IRT High Performance
Servo
Minimum
Minimum
Maximum
Minimum
SINAMICS S120
CU320
1 ms
0.5 ms
4.0 ms
0.5 ms
SINAMICS S120
CU310
1 ms
0.5 ms
4.0 ms
0.5 ms
SINAMICS S120
CU310-2
1 ms
0.5 ms
4.0 ms
0.5 ms
SINAMICS S120
CU320-2
1 ms
0.5 ms
4.0 ms
0.5 ms
SINAMICS S110
CU305
1 ms
1 ms
4 ms
1 ms
C230-2
1.5 ms
-
-
1.5 ms
C240 PN
1 ms
0.5 ms
4.0 ms
0.5 ms
C240
1 ms
-
-
0.5 ms
D410 PN
-
0.5 ms
4.0 ms
2.0 ms
D410 DP
2 ms
-
-
2.0 ms
D425
2 ms
0.5 ms
4.0 ms
2.0 ms
D435
1 ms
0.5 ms
4.0 ms
1.0 ms
D445/D445-1
1 ms
0.5 ms
4.0 ms
0.5 ms
D445-2 DP/PN
1 ms
0.25 ms1)
4.0 ms
0.25 ms1)
D455-2 DP/PN
1 ms
0.25 ms1)
4.0 ms
0.25 ms1)
P350-3
1 ms
0.25 ms
4.0 ms
0.25 ms
Servo_fast
Communication
System Manual, 11/2010
65
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
PROFIBUS
PROFINET
IRT High Performance
PROFINET
IRT High Performance
Servo
Minimum
Minimum
Maximum
Minimum
P320-3
-
0.25 ms
4.0 ms
0.25 ms
ET200S HS
-
0.25 ms
4.0 ms
0.25 ms
Servo_fast
1) Explanation:
● 0.5 ms in conjunction with SINAMICS S120 (incl. SINAMICS Integrated/CX32-2)
● 0.25 ms in conjunction with Servo_fast and IPO_fast for fast I/O processing or highperformance hydraulic applications. The sensors and actuators are connected via highspeed PROFINET IO I/O modules
Cycle clock scaling with PROFINET IO
Cycle clock Servo
Min
Cycle clock 1 x bus
Cycle clock
Cycle clock
IPO
IPO2
Max
Min
Max
Min
Max
16 x bus
1 x servo
6 x servo
2 x IPO
64 x IPO
Servo_fast
IPO_fast
Min
Max
Min
Max
1 x bus
1 x bus
1 x Servo_fast
4 x Servo_fast
4.2.3
Task system and time response
4.2.3.1
Overview of SIMOTION task system and system cycle clocks
Overview
If IRT data is transmitted via the bus using PROFINET IO, the cycle clock execution times
fall between reading and writing the data (e.g. axis data), depending on which task in the
execution system the application is executed in. You can find examples of applications in
different tasks (execution levels) in the chapters that follow.
Communication
66
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
4.2.3.2
BackgroundTask, MotionTask, and IPOSynchronousTask
MotionTask/BackgroundTask
The data is transmitted via the bus using PROFINET IO with IRT High Performance, and
accepted by the communication interface at the start of the position control cycle clock. The
logic signals are generally evaluated in a MotionTask or BackgroundTask. Here, a distinction
is made as to which machine function is activated; for example, "position-controlled
traversing of axis". The traversing profile required is counted in the next IPO cycle clock.
Based on the position setpoints determined here, the speed setpoints for controlling the axis
are calculated in the next position control cycle clock. These are transmitted to the drive in
the next cycle, via PROFINET IO with IRT High Performance.
M/B
Task
Traversing profile
is interpolated
Servo
IPO
M/B
Task
A
M/B
Task
Servo
D
IPO
M/B
Task
M/B
Task
F
Write
Position control
for axis
Read
B
Write
Read
Evaluation of input
=> Start axis
Write
Read
M/B Task:
Motion/Background Task
Servo
IPO
M/B
Task
C
E
IRT data read in at
start of position
control cycle clock
Figure 4-8
BackgroundTask
or MotionTask
IRT data transmitted to
communication interface
at end of position control Data transmitted in
cycle clock
IRT time slot
Logic evaluation for an axis in the BackgroundTask or MotionTask
Boundary conditions
The option of two servo cycle clocks is not activated (i.e. no Servo_fast and IPO_fast). The
bus cycle clock, position control cycle clock, and IPO cycle clock have a 1:1:1 ratio. Other
ratios may result in longer response times. With a 1:1:2 ratio, the IPO execution may be
extended to two position control cycle clocks, which can lead to the response time increasing
by one position control cycle clock.
Additionally, the BackgroundTask may be processed over several position control cycle
clocks, meaning that the system is unable to make sure the data is evaluated in the first
position control cycle clock. This may also lead to an increased response time.
Assigning the variables to a process image has an impact on the response time as well. The
process images are made available to other tasks or to the communication interface at the
end of the respective task, rather than after the variables are updated.
Communication
System Manual, 11/2010
67
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
IPOSynchronousTask
In order to optimize the time response and enable synchronous triggering of actions (e.g.
starting axes simultaneously), in the IPOSynchronousTask it is possible to process the part
of the application that triggers axis commands. If this option is used, it is counted before the
IPO. In this way, the axis command can be issued before the IPO is executed, and the
resulting position setpoint then calculated in the IPO. Based on this, the speed setpoint for
the drive is calculated in the next position control cycle clock. Once the position control cycle
clock has finished, the data is passed on to the communication interface and transmitted in
the next PROFINET IRT send clock. Unlike processing in a MotionTask/BackgroundTask,
where the response time equals the maximum BackgroundTask runtime + one IPO cycle
clock + one position control cycle clock, in this case you can be assured that the response
time will be one IPO cycle clock + one position control cycle clock until new data is output.
IPO-synchronous
Traversing profile
evaluation
is interpolated
of input
=> Axis command
M/B
Task
IPO
Servo
A
M/B
Task
M/B
Task
Figure 4-9
Servo
IPO
M/B
Task
C
E
IRT data read in at
start of position
control cycle clock
F
Write
D
B
Position control
for axis
Read
Read
Write
M/B Task:
Motion/Background Task
IRT data transmitted to
communication interface Data transmitted in
at end of position control IRT time slot
cycle clock
Logic evaluation for an axis in the IPOSynchronousTask
Communication
68
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
4.2.3.3
ServoSynchronousTask
ServoSynchronousTask
It is possible to optimize the time response even further and reduce the response time to one
servo cycle clock. This option can be used for high-speed actual-value synchronous
operations, e.g. flying knife/shear. Within this context, the part of the application that triggers
axis commands for selected axes is processed in the ServoSynchronousTask. Additionally,
the IPO part of the system for the axes involved is counted before the position controller in
the servo task. In this way, the speed setpoints may be transmitted as soon as the next IRT
time slot.
Servo-synchronous
evaluation of
input
=> Axis command
Traversing profile for
"fast" axes is interpolated
D
Read
Write
B
M/B
Task
Servo
IPO
A
C
IPO
M/B
Task
G
E
F
Position control
for axes
M/B Task:
Motion/Background Task
IRT data transmitted to
communication interface
at end of position control
cycle clock
Data transmitted in
IRT time slot
Figure 4-10
Logic evaluation for an axis in the ServoSynchronousTask
Boundary conditions
Using this function increases the CPU load and, therefore, the position control cycle clock;
for this reason it should only be used when necessary.
Activating
This feature must be activated explicitly for the axes in SIMOTION SCOUT as part of axis
configuration.
Figure 4-11
Determining the processing cycle clock for the axis
Communication
System Manual, 11/2010
69
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
If the option of two servo cycle clocks is configured with Servo_fast, the axis can also be
assigned to the Servo_fast processing cycle clock if the axis is linked to the faster bus.
Position control
The position controller responds within one position control cycle clock. The data is read out
from the communication interface at the start of the position control cycle clock. The position
controller is counted in the position control cycle clock. The new speed setpoints are copied
to the communication interface at the end of the position control cycle clock and, therefore,
transmitted in the next IRT time slot.
Read
B
M/B
Task
Servo
Write
Position control
=> Generation of new
speed setpoint
IPO
M/B
Task
A
IRT data read in at
start of position
control cycle clock
M/B Task:
Motion/Background Task
Figure 4-12
IRT data transmitted to
communication interface
at end of position control
cycle clock
Data transmitted in
IRT time slot
Position control time response with ServoSynchronousTask
Communication
70
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
4.2.3.4
Fast I/O processing in the ServoSynchronousTask
Fast I/O processing in the ServoSynchronousTask
Fast I/Os (e.g. ET200S HS) are evaluated in the ServoSynchronousTask, resulting in a
system response time of one cycle. Due to the terminal-terminal response, there is a delay of
Ti + servo cycle clock + To.
Servo-synchronous
evaluation of input
=> Set output
M/B Task:
Motion/Background Task
Read
Write
B
M/B
Task
IPO
Servo
IPO
M/B
Task
A
C
IRT data
transmitted at start
of position control
cycle clock
IRT data transmitted to
communication interface
at end of position control
cycle clock
Data transmitted in
IRT time slot
Figure 4-13
Fast IOs in the ServoSynchronousTask
If the option of two servo cycle clocks is configured with Servo_fast, fast I/O processing in
the ServoFastSynchronousTask can also take place in the Servo_fast cycle clock. This
requires the I/Os to be configured on the fast bus.
4.2.4
Connection between sync domain and IO systems
The devices of several IO systems can be synchronized by a single sync master, provided
they are connected to the same Ethernet subnet and belong to a sync domain.
Conversely, an IO system may only belong to a single sync domain.
Communication
System Manual, 11/2010
71
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
4.2.5
Redundant sync master
Description
With certain systems (e.g. printing machines), it must be possible to operate system
components on either a stand-alone basis or while connected to another component as part
of a synchronous arrangement. If the entire system has has one sync. master, the other
component would not be capable of functioning independently. The "redundant sync master"
function was developed for this very reason. Under this arrangement, a sync master is
defined for every component. One of these is defined as the "sync master", and the other as
the "sync master (redundant)". Provided the system components are combined during
operation, the "sync master (redundant)" will synchronize itself with the sync master.
If the sync master ceases to function, the sync master (redundant) will continue operating
independently and synchronize itself with its assigned sync slaves. The sync slaves
assigned to the sync master will lose their synchronization and cease to operate.
Limitations of use
The two sync masters must be connected directly via a single cable with no switch. If the
transmission link between the sync master and sync master (redundant) fails, leaving 2
subnets with one sync master each, both subnets remain synchronized with the remaining
sync master in each case. This results in two independent synchronized subnets that drift
apart due, among other things, to the temperature drift of the quartzes. Once the
transmission link has been reestablished, there can be no smooth synchronization of the
sync master (redundant) with the sync master, i.e. the drives assigned to the sync master
(redundant) would lose synchronization and fail for a short time. Synchronization can only be
reestablished after stopping the application.
Communication
72
System Manual, 11/2010
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
Configuring the second sync master
1. Add a second SIMOTION module and configure PROFINET to satisfy your requirements.
2. Right-click with the mouse on the PROFINET board to open the Properties - <PROFINET
board> -- (R0/S2.6) dialog.
3. Select the Sync master (redundant) entry under Synchronization type on the
Synchronization tab.
Figure 4-14
4.2.6
Configuring the second sync master
Quantity structures
The following maximum values apply for IO controllers of the SIMOTION platform.
A maximum of 64 communication relationships are possible; these can be divided up as
follows:
● Connection of up to 64 IO devices.
● Maximum 64 RT.
● Up to 64 IRT High Performance devices
● Up to 64 controller-controller data exchange broadcast relationships may be set up
between IO controllers.
● If a SIMOTION has been configured as an I device, it counts as a device; in other words,
only another 63 devices can be connected.
Communication
System Manual, 11/2010
73
PROFINET IO
4.2 Properties of PROFINET IO with SIMOTION
● A SIMOTION device can receive data from up to 64 other SIMOTION devices in the
context of data exchange broadcast between controllers and can send data to any
number of SIMOTION devices.
● The amount of data involved must be taken into consideration where the data exchange
broadcast is between controllers. A data exchange broadcast only counts as a
connection if the amount of data involved does not exceed a certain level. Where a
second telegram is required, the data exchange broadcast does not require two
connections.
Mixed operation of IO devices and controller-controller data exchange broadcast
You can calculate the possible number of devices in mixed operation using the following
formula:
IRT High Performance
RT + IRT High Performance IO device + data exchange broadcast frame <= 64
Note
In a data exchange broadcast relationship, it is not the number of configured slots (lines in
the lug receiver - see Configuring the receiver (Page 119)) that is intended for IRT High
Performance data exchange broadcast configuration, but rather the number of Ethernet
frames received for the data exchange broadcast. An Ethernet frame can contain up to 768
bytes of exchange broadcast useful data.
One slot has up to 254 bytes and 3,072 bytes of useful data can be exchanged during data
exchange broadcast (divided into 4 frames of 768 bytes each). The value will depend on the
sizes of the slot chosen. This means a transmitter can receive more than one slot, although
these must be transmitted within a single message frame.
Each provider sends its exchange broadcast data in an Ethernet frame. Every other
SIMOTION device can read the data in this frame. This means there is a counting
connection to each transmitting SIMOTION.
Where data exchange broadcast is taking place between a controller and a device, the frame
contains 1,440 bytes of useful data.
During the compilation of the project, HW Config verifies the configured quality structure
based on the formulas mentioned above.
Address space
A maximum of 4 KB each may be assigned for PROFINET IO data for the input and output
data in the logical address space of an IO controller. The rest of the 16 KB large address
space can be used, for example, for PROFIBUS data or diagnostic data.
Communication
74
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4.3
Configuring PROFINET IO with SIMOTION
4.3.1
New with SIMOTION SCOUT V4.2 or higher
IRT synchronization process
SIMOTION: only IRT High Performance. With PROFINET IRT, this synchronization process
is set automatically.
Controllers with integrated PN interface
With SIMOTION D4x5-2 DP/PN, new SIMOTION D controllers with integrated PN interfaces
are available.
Isochronous operation for applications has been simplified.
The typical isochronous applications for Motion Control have been made much more
straightforward. The Ti/To time constants can be calculated automatically for all IO devices.
The configuration in HW Config has been enhanced to allow the object properties of
isochronous tasks to be set to automatic on the controller.
I device
The I device functionality has been improved with the release of Step 7 V5.5. If SIMOTION
SCOUT projects use a lower version than V4.2, certain points must be considered when
upgrading. You can find more information in the I device chapter.
I device F-Proxy
Using the I device F-Proxy you can produce a PROFIsafe configuration with an F host (FCPU SIMATIC) on PROFINET with SIMOTION devices (SIMOTION D4xx, SIMOTION P3xx,
SIMOTION C240 PN) for the lower-level drives.
Second servo cycle clock (Servo_fast)
The second servo cycle clock enables you to operate two bus systems in different
application cycle clocks. An assigned servo cycle clock and IPO cycle clock are available for
each of the two application cycle clocks. This enables you to divide your application into slow
and fast sections (Servo_fast and IPO_fast).
Communication
System Manual, 11/2010
75
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4.3.2
Procedure for configuring PROFINET IO with IRT High Performance
Procedure
The following steps need to be performed when configuring PROFINET IO with IRT High
Performance V2.2:
1. Insert the SIMOTION module.
Select the Device followed by the Device version. Only PROFINET V2.2 variants are
possible. A PROFINET interface is already integrated in devices labeled with PN.
– With SIMOTION C and SIMOTION P, you only select the SIMOTION version e.g.
V4.2.
– With SIMOTION D, depending on the version you select SIMOTION version V4.2, the
option module and the SINAMICS drive and version.
You can select the CBE30 option module for PROFINET here or enter it later in HW
Config from the hardware catalog from SIMOTION Drive Based > SIMOTION D4xx >
6AUxx > V4.2 - PN-V2.2xx.
2. Insert IO devices:
Insert IO devices from the hardware catalog in HW Config into the I/O system. The IO
devices can be found in the hardware catalog under PROFINET IO.
3. Configure sync domain and specify send clock:
Configure the PROFINET IO node as sync master (clock generator) and define the
associated sync slaves. Specify the send clock.
4. Generate the topology:
Define the topology, i.e. specify how the individual ports of the PROFINET IO devices are
interconnected with one another. The topology only needs to be configured for
PROFINET IO with IRT High Performance. If topology-based initialization is to be used,
the topology will need to be configured for all PROFINET devices.
5. Controller-controller data exchange broadcast:
Specify which address areas are to be used for sending and receiving.
4.3.3
Inserting and configuring SIMOTION D
4.3.3.1
General information on inserting and configuring SIMOTION D
General information
You have created a project and want to configure a SIMOTION D using a PROFINET
interface.
With SIMOTION D, the Control Units feature an onboard PROFINET interface (D410 PN,
D4x5-2 DP/PN) or an option module CBE30 for PROFINET (D4x5), depending on the
version concerned.
Communication
76
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
You can select the CBE30 in the dialog or insert it at a later point via HW Config by selecting
it from the hardware catalog under SIMOTION Drive-based > SIMOTION D4x5 > 6AUxx >
V4.2 - PN-V2.2xx.
Implementing the PROFINET interface:
● Already integrated in the case of D410 PN D4x5-2 DP/PN
● Available as an option in the case of D4x5 (option module CBE30)
The procedure is explained in the following sections.
4.3.3.2
Inserting and configuring SIMOTION D4x5-2/D410 PN
General information
You have created a project and want to configure a SIMOTION D4x5-2 DP/PN or SIMOTION
D410 PN using the internal PROFINET interface. The procedure for this will be explained
using the example of a SIMOTION D4x5-2 DP/PN.
Procedure
1. Click on Insert SIMOTION device in the project navigator to open the device selection
dialog.
2. Select SIMOTION D under Device and click on a Device version e.g. D455-2 DP/PN.
Communication
System Manual, 11/2010
77
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
3. Select SIMOTION Version V4.2 and SINAMICS S120 Integrated.
Figure 4-15
Inserting a SIMOTION device
4. Activate the Open HW Config check box to add e.g. an option module or an IO system.
5. Click OK to confirm.
Communication
78
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
6. The dialog box for creating a PROFINET subnet will be displayed. Create a new subnet
using New... and enter the IP address and subnet mask. Click OK to confirm.
Figure 4-16
Creating a new Ethernet subnet
7. Select the PG/PC interface from the next dialog box and click OK to confirm. The device
is inserted, HW Config opens, and the module with the configured PROFINET subnet is
displayed.
Communication
System Manual, 11/2010
79
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Figure 4-17
SIMOTION D455-2 DP/PN in HW Config
See also
Adding and configuring a CBE30-PROFINET board (Page 82)
4.3.3.3
Inserting and configuring SIMOTION D4x5 incl. CBE30
Requirement
You have already created a project and now want to insert a SIMOTION D4x5 with option
module CBE30 for PROFINET. If you are working with a SIMOTION D4x5 without integrated
PN interfaces, you must use the option module CBE30.
Communication
80
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Procedure:
1. Click on Insert SIMOTION device in the project navigator to open the device selection
dialog box.
2. Select SIMOTION D under Device and click on the Device version, e.g. D435.
3. Select SIMOTION Version V4.2 and CBE for the Option module.
You can also insert the option module CBE30 in HW Config at a later point (see Section
).
Figure 4-18
Creating SIMOTION D435 with CBE30 for PROFINET
4. Activate the Open HW Config checkbox to insert an IO system, for example.
Communication
System Manual, 11/2010
81
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
5. Click OK to confirm. The dialog box for creating a PROFINET subnet will be displayed.
Create a new subnet using New... and enter the IP address and subnet mask. Click OK
to confirm.
6. Select the PG/PC interface from the next dialog box and click OK to confirm. The device
is inserted, HW Config opens, and the module with the configured PROFINET subnet is
displayed.
Figure 4-19
SIMOTION D435 in HW Config
See also
Adding and configuring a CBE30-PROFINET board (Page 82)
4.3.3.4
Adding and configuring a CBE30-PROFINET board
Requirement
You have already created a project and inserted a SIMOTION D4x5 device.
When adding a device in SIMOTION SCOUT, you can add a CBE30 as standard. You can
also insert the option module in HW Config at a later point.
Communication
82
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Procedure
1. In the project navigator, double-click the module (in this case D435). HW Config is
displayed with the corresponding module.
2. In the hardware catalog, select the appropriate option module under SIMOTION Drivebased > SIMOTION D4x5 > 6AUxx > V4.2 - PN-V2.2xx. Note the CPU type and version.
3. Click PROFINET module CBE30-PN. As soon as the appropriate CBE30-PN is selected,
X1400 in the rack turns green.
4. Drag the CBE30-PN to the corresponding interface of the SIMOTION module (X1400).
The Properties - Ethernet Interface CBE30-PN (R0/S2.6) window opens.
5. Click New to create a new subnet. The Properties – New subnet Industrial Ethernet
dialog box is displayed.
Communication
System Manual, 11/2010
83
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
6. Click OK to confirm these entries. A new Ethernet subnet will be created, e.g.
Ethernet(4).
7. Select the subnet.
8. Assign the required IP address.
9. Accept the settings by clicking OK.
4.3.4
Adding and configuring SIMOTION P
Requirement
You have already created a project and want to insert a SIMOTION P with PROFINET. The
procedure for this will be explained using the example of a SIMOTION P350.
Communication
84
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Procedure
1. Click on Insert SIMOTION device to open the device selection dialog box.
2. Under Device, select SIMOTION P, then click on a Device version (e.g. P350 PN), and
select SIMOTION Version V4.2.
3. Activate the Open HW Config checkbox to insert an IO system, for example.
4. Click OK to confirm. The dialog box for creating a PROFINET subnet will be displayed.
Communication
System Manual, 11/2010
85
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
5. Enter the IP address and the subnet mask here. Click OK to confirm.
6. Select the PG/PC interface from the next dialog box and click OK to confirm.
The HW Config opens and displays the module with the configured PROFINET subnet.
Communication
86
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4.3.5
Adding and configuring SIMOTION C
Requirement
You have already created a project and now want to insert a SIMOTION C with PROFINET.
The procedure for this will be explained using the example of a SIMOTION C240-PN.
Communication
System Manual, 11/2010
87
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Procedure
1. Click on Insert SIMOTION device to open the device selection dialog box.
2. Under Device, select SIMOTION C, then click on a Device version (e.g. C240-PN), and
select SIMOTION Version V4.2.
Figure 4-20
Creating a new C240 PN device
3. Activate the Open HW Config checkbox to insert an IO system, for example.
Communication
88
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4. The dialog box for creating a PROFINET subnet will be displayed. Enter the IP address
and the subnet mask here. Click OK to confirm.
Figure 4-21
Creating a new Ethernet for C240 PN
5. Select the PG/PC interface from the next dialog box and click OK to confirm.
The HW Config opens and displays the module with the configured PROFINET subnet.
Communication
System Manual, 11/2010
89
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Figure 4-22
4.3.6
HW Config with PROFINET for C240 PN
Creating a sync domain
A sync domain is a group of PROFINET devices synchronized to a common cycle clock.
One device has the role of the sync master (clock generator), all other devices have the role
of sync slave.
Note
All devices that exchange data via IRT must belong to a single Sync-Domain and be directly
connected to one another; i.e. the connection must not be interrupted by devices that do not
support IRT, as this will prevent the synchronization information from being passed on.
Communication
90
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Procedure
1. In HW Config, open the station with the PROFINET devices to be involved in IRT
communication and select, for example, the PROFINET interface PNxIO in the case of a
SIMOTION D455-2 DP/PN.
2. Select the Edit > PROFINET IO > Domain Management menu command. A dialog tab
with the list of all the devices opens. A default sync domain is created and the devices
are already assigned.
3. Select the station in the upper field and in the lower field double-click the device that is to
be configured as the Sync-Master, e.g. SIMOTION D. This opens the Properties dialog
box for the device.
Figure 4-23
Selecting synchronization
4. Set the synchronization type to Sync-Master. IRT High Performance is the standard
setting on SIMOTION controllers.
5. Confirm the settings with OK.
6. Then, select all devices which are to be configured as sync slaves (keep the Ctrl key
depressed and select the devices one after the other).
7. Then, click on the Properties device button.
8. Set the synchronization type to Sync-Slave in the dialog box.
9. Confirm the settings with OK.
Note
Any devices for which not synchronized is selected will not be involved in IRT
communication, but will automatically take part in RT communication.
Communication
System Manual, 11/2010
91
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4.3.7
Defining send clock and refresh times
PROFINET RT and IRT are forms of cyclic communication; the basic cycle clock is the send
clock. The update time is a multiple (2n) of the send clock and the devices are supplied with
data in this cycle clock. Individual update times can be set for each device.
Note
With IRT High Performance, the devices are supplied with data during each sending cycle
(sending cycle = update time). SIMOTION CPUs only support IRT High Performance.
As far as SINAMICS is concerned, however, the controller can be used to define an
application cycle whereby SINAMICS is only supplied with new data every n cycles.
Communication
92
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
How to set the send clock
1. In HW Config, open the Domain Management dialog box.
Figure 4-24
Domain Management
2. Select an appropriate send clock for the process. The transmission cycle clock is the
smallest possible transmission interval. The send clock is preset to 1 ms.
Note
Communication should be no faster than required, irrespective of what the maximum
communication speed may be. This will reduce the bandwidth requirement and the
relieve the load that the devices need to support.
Communication
System Manual, 11/2010
93
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Defining update times for PROFINET IO using PROFINET devices with RT
Update times for IO data exchange of PROFINET IO using PROFINET devices with RT are
set in the Properties PROFINET IO System dialog box.
1. Click the path for the PROFINET IO system in HW Config and select Object properties
from the context menu. The dialog is displayed.
2. Switch to the Update time tab and select the device from the overview containing all the
IO devices.
3. Click Edit. You can select the refresh time in the Edit refresh time dialog.
4. Click OK to confirm.
Send clock/DP cycle ratio for SINAMICS_Integrated (SIMOTION D) with IRT High Performance
If a SINAMICS drive is being operated on a SIMOTION D via PROFINET IO IRT High
Performance, the DP cycle for the integrated PROFIBUS must be the same as the position
control cycle. The DP cycle is set to 3 ms by default. In most cases, this will not be the same
as the servo cycle clock selected for PROFINET applications. If the DP cycle does not
correspond to the position control cycle clock, an error message is generated in SCOUT
during the consistency check.
You set the DP cycle in the DP slave properties:
1. Double-click SINAMICS_Integrated in HW Config. The DP slave properties window
appears.
2. Switch to the Isochronous Operation tab and activate the "Synchronize drive to
equidistant DP cycle" checkbox.
Communication
94
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
3. Set the factor for DP cycle Tdp. The DP cycle must be the same as the position control
cycle clock. For example, if the position control cycle clock is 1 ms, you will need to enter
a factor of 8 (8 x [base time of 0.125 ms] = 1 ms).
4. Click OK to confirm.
When PROFINET is operated isochronously, the position control cycle clock must always
correspond to the PROFIBUS cycle clock. The position control cycle clock and the
PROFIBUS cycle clock can be scaled to the PROFINET cycle clock.
Example:
PROFINET send clock = 0.5 ms
PROFIBUS cycle clock = position control cycle clock = 1 ms
The PROFIBUS cycle clock can operated relative to the PROFINET cycle clock at a ratio of
1:1 to 1:16.
Communication
System Manual, 11/2010
95
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4.3.8
Servo_fast, scaling down of cycle clocks to the servo at the PROFINET
interface
Cycle clock scaling to the servo using Servo_fast
The second servo cycle clock enables you to operate two bus systems in different
application cycle clocks. An assigned servo cycle clock and IPO cycle clock are available for
each of the two application cycle clocks. This enables you to divide your application into slow
and fast sections (Servo_fast and IPO_fast).
● The I/O on the fast bus system are used isochronously in the fast Servo_fast/IPO_fast.
● The I/O on the slow bus system are used isochronously in the slow Servo/IPO/IPO_2.
Options available for isochronous use
For isochronous use, the application cycle is set in HW Config on the I/O module:
● The MACF (master application cycle) is set for the DP slave. Only MACF=1 is supported
if you are also using PROFINET IO. All PROFIBUS devices run in the slow position
control cycle clock.
● The CACF (Controller Application Cycle Factor) is set for I/O devices. With V4.2 or
higher, you can also select the position control cycle clock (Servo_fast) on I/O devices.
The following settings are possible:
Product version
Property
PROFINET IO
PROFIBUS DP
Before V4.2
1 position control cycle
clock
Servo
Servo
V4.2
2 position control cycle
clocks
Servo_fast
Servo
Application cycle of the devices on
Communication
96
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Configuring the Servo_fast using the example of a D455-2 DP/PN
A precondition is that a D455-2 DP/PN must be configured with PROFINET IO system and
PROFIBUS DP.
1. In HW Config, select the SIMOTION device module, e.g. D455, and choose Edit > Object
properties in the menu.
2. Activate the checkbox Use Servo_fast/IPO_fast on the Isochronous Tasks tab.
Figure 4-25
Configuring Servo_fast in HW Config
3. Click on the Details... button next to the Servo: field.
4. On the Isochronous operation tab of the PROFIBUS DP, enter a factor for the DP cycle
Tdp, e.g. System cycle clock PROFINET=1ms and PROFIBUS DP=4ms.
Communication
System Manual, 11/2010
97
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
5. Confirm by selecting OK and save and compile the project in HW Config.
6. Switch to SIMOTION SCOUT and select Set system cycle clocks in the context menu of
the SIMOTION CPU. The values for the servo and Servo_fast are displayed here; in the
example, the cycle clock ratio is 1:4.
Figure 4-26
Servo and Servo_fast system cycle clocks
Note
For further information, refer to the SIMOTION SCOUT Basic Functions Function Manual.
4.3.9
Configuring a topology
4.3.9.1
Topology
Introduction
With IRT High Performance, the topology must be configured and settings made to
determine which device is to be connected via which port to which other devices.
Note
With IRT High Flexibility or RT, topology configuration is optional. It may be required for
topology-based initialization or diagnostics purposes, for example.
Communication
98
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
There are two options for defining the properties of the cables between the ports of the
switches:
Using the topology editor (Page 101)
4.3.9.2
Topology editor (graphical view)
Procedure
With the topology editor you have an overview of all ports in the project and can interconnect
them centrally.
The topology editor is started with the Edit > PROFINET IO > Topology menu command in
HW Config or NetPro (PROFINET device must be selected).
The topology editor offers the user two options for displaying the topology graphically
(STEP7 V5.4 SP2 or higher) or in a tabular format. The graphic view is more suitable for
situations involving interconnection.
Description
In the topology editor, you can:
● Interconnect ports
● Modify the properties of the interconnection
● Add passive components
● Arrange for an offline/online comparison to be displayed in online mode
Procedure
1. In SCOUT, double-click on the SIMOTION module in order to access HW Config.
2. Select the PROFINET module, e.g. PNxIO in the case of a D445-2 DP/PN.
3. Perform Edit > PROFINET IO > Topology. The topology editor opens.
Communication
System Manual, 11/2010
99
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4. Click Graphical view to bring the tab into the foreground.
Figure 4-27
Topology editor (graphical view)
5. Establish connections between ports by pressing and holding down the left mouse button
and drawing a line between the two ports to be connected. The Interconnection
Properties window opens.
Communication
100
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
6. The port interconnection is displayed: You can configure the cable data: A cable length of
< 100 m is set by default (recommended length). Alternatively, you can configure the
signal propagation delay:
7. Click OK to confirm.
Offline/online comparison
When you switch to online mode, the topology in the editor is compared with the actual
topology. Any components which are not recognized are highlighted by a question mark,
while connections and components in RUN are highlighted in green.
4.3.9.3
Interconnecting ports via the topology editor (table view)
Procedure
Ports can be interconnected in the Tabular view of the topology editor.
The topology editor is started with the Edit > PROFINET IO > Topology menu command in
HW Config or NetPro (PROFINET device must be selected).
Communication
System Manual, 11/2010
101
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Figure 4-28
Topology editor
All configured PROFINET IO devices with their ports are listed in the interconnection table
on the left-hand side. You can use the Filter dialog to select whether all ports, only the ports
that have not yet been interconnected or only the ports that have already been
interconnected are to be displayed.
Interconnecting ports in the tabular overview
1. To interconnect ports of different devices, select the port of a device that you want to
interconnect in the right-hand field.
2. Drag this port to the desired port of a device in the interconnection table. The
"Interconnection Properties" dialog opens.
3. Configure the cable data. A cable length of < 100 m should be set by default.
4. Confirm your entries with OK.
4.3.10
Creating an IO device
Requirement
You have already created a PROFINET IO system and configured a PROFINET IO module,
e.g. SIMOTION D455-2 PN (see Inserting and configuring SIMOTION D4x5-2/D410 PN
(Page 77)).
Communication
102
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Procedure for PROFINET IO devices using the hardware catalog
1. Double-click the corresponding module in SIMOTION SCOUT to open HW Config.
2. Under PROFINET IO in the hardware catalog, select the module you wish to connect to
the PROFINET IO system.
3. Drag the module to the path of the PROFINET IO system. The IO device is inserted.
4. Save and compile the settings in HW Config.
Procedure for third-party manufacturer PROFINET IO devices
1. Double-click the corresponding module to open HW Config.
2. Select the Options > Install GSD files menu command.
3. Select the GSD file to be installed in the Install GSD Files dialog box.
4. Click the Install button.
5. Close the dialog box by clicking the Close button.
6. Under PROFINET IO in the hardware catalog, select the module you wish to connect to
the PROFINET IO system.
7. Drag the module to the path of the PROFINET IO system. The IO device is inserted.
8. Save and compile the settings in HW Config.
Communication
System Manual, 11/2010
103
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4.3.11
Inserting and configuring the SINAMICS S120
Requirement
You have inserted a SIMOTION D4x5-2 with integrated PROFINET interface in your project,
a PROFINET IO subnet has already been created and the Sync-Master is configured.
Note
The configuration is almost identical for all SINAMICS S120 and SIMOTION D devices.
Procedure
1. Select PROFINET IO > Drives > SINAMICS in the HW Config hardware catalog. Then
select the module, e.g. SINAMICS S120 CU320-2 PN.
2. Click the entry and drag the drive, e.g. V4.4 , to the PROFINET IO subnet. The Properties
- Ethernet Interface SINAMICS-S120xCU320x2xPN window opens.
A suggested IP address will already be displayed here and the subnet will be selected.
3. Click OK to accept the setting.
4. In HW Config, select Station > Save and Compile Changes.
Setting message frame in SIMOTION SCOUT V4.2 or higher
For isochronous communication, a message frame must be configured (e.g. message frame
105) which enables the drive to be synchronized with PROFINET. The message frame is
automatically set in SCOUT during the configuration of the drive unit and following the
assignment of an axis.
1. If you have not yet configured a supply and drive, click Configure drive unit in the SCOUT
project navigator and drive unit.
2. Run the drive unit configuration wizard.
3. After you have closed the wizard, click Communication > Telegram configuration under
the drive unit in the project navigator. Tab IF1: PROFIdrive PZD telegrams contains a list
of telegrams. A message frame has still not been configured after drive commissioning.
4. Therefore, insert a new axis TO and run through the axis wizard. In the wizard,
interconnect the axis to the corresponding drive object of the S120 and a corresponding
message frame will automatically be created (symbolic assignment).
5. Select Project > Save and compile all from the menu. This means that the addresses will
be set up automatically with symbolic assignment. You can also trigger symbolic
assignment of addresses using the menu item Project > Set up addresses.
6. Once the axis configuration process is complete, click Communication > Message frame
configuration under the drive unit in the project navigator. Tab IF1: PROFIdrive PZD
message frames now lists the message frame for the drive (e.g. SIEMENS message
frame 105).
Communication
104
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Telegram in HW Config
Alternatively, you can assign the telegram in HW Config. This is only possible if the drive unit
and the drive have already been configured in SCOUT. You will then be able to proceed as
follows in HW Config.
Note
Symbolic assignment in SIMOTION SCOUT is recommended for message frame
interconnection. For this purpose, make sure that a check mark is applied for Project > Use
symbolic assignment in the menu.
If you are using symbolic assignment, SCOUT is entirely responsible for managing the
message frame between SIMOTION and the drive DO. In other words, SCOUT
independently creates message frames that all contain the necessary signals according to
the technological configuration. SCOUT automatically manages the positioning of signals in
the message frame and its size; the user is no longer able to influence this process or make
any changes.
1. Select the inserted SINAMICS drive and double-click the entry SIEMENS / Standard
message frame xx. in the lower table.
The Properties SIEMENS / Standard message frame xx dialog box is called.
2. Select the corresponding telegram. After it is saved, the telegram can be also be selected
in SCOUT, under <"Drive_device_xx"> - Communication > Telegram configuration in the
project navigator. Alignment with HW Config is possible.
Settings for isochronous mode (V4.2 or higher)
For isochronous mode, the drive unit must be synchronized with the PROFINET cycle clock.
You can make these settings at the PN interface of the drive unit and on the SIMOTION
device (Sync-Master).
Settings on SIMOTION device (Sync-Master)
1. In HW Config, select the SIMOTION device module, e.g. D455, and choose Edit > Object
properties in the menu.
2. Click the Details... button on the Isochronous tasks tab.
Communication
System Manual, 11/2010
105
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
3. Select the Automatic setting in the Details for servo dialog box under Ti/To mode. The
cycle clocks and time constants for all IO devices (Sync-Slaves) on the PROFINET are
then calculated automatically by the system.
Figure 4-29
Configuring an isochronous task on the SIMOTION device.
4. Click OK to close both dialog boxes.
Communication
106
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Settings on the SINAMICS drive (Sync-Slave)
1. Select the SINAMICS drive on the PROFINET IO system and double-click on the entry of
the PROFINET interface in the lower table, e.g. PN-IO.
The Properties PN--IO dialog box is displayed.
2. Select the Servo entry on the IO cycle tab under Assign IO device isochronously. The
drive is operated isochronously. The time constants are calculated automatically.
Figure 4-30
Configuring an isochronous task on the PROFINET IO device
3. You can see the current cycle clock in Application cycle. To configure cycle clock scaling,
you need to configure down-scaling by selecting Set system cycle clocks in the execution
system. This is required if the servo cycle clock is slower than the IRT cycle clock, for
example, although the servo cycle clock must already have been taken into account in
the IRT cycle clock.
4. If necessary, switch to the Synchronization tab to select the Synchronization type, Sync
slave in this case. This can also be set under Domain Management.
5. Confirm the entries with OK.
Note
During the next steps, you must include the drive in the sync domain (see Creating a
sync domain), load the IP address to the drive (see Assigning device names and IP
addresses to IO devices (Page 110)), and interconnect the ports (see Interconnecting
ports via the topology editor (table view) (Page 101) ).
Communication
System Manual, 11/2010
107
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
See also
Creating a sync domain (Page 90)
4.3.12
IP address and communication name
Introduction
Devices and controllers have a fixed MAC address, a configurable IP address, and a
communication name. The IP address, subnet mask, and communication name are defined
within the Ethernet interface properties in the engineering software. This ensures the devices
within the project have their own unique assignment.
You can find the communication name (device name) in the Properties - Interface dialog by
double-clicking on the device or the controller. Click on Properties in the dialog to define the
IP address. See also Adding and configuring a CBE30-PROFINET board (Page 82).
Communication name guidelines
The communication name for the device is the same as the device name (e.g. Drive1 for a
drive). The communication name for a controller is the name of the PROFINET interface
(e.g. CBE30xPNxIO for a CBE30 on SIMOTION D).
Communication names are subject to certain syntax rules, i.e. they must always be DHCPcompliant. Additional boundary conditions also apply to SIMOTION and SIMATIC.
● Letters a-z and numbers 0-9 may be used.
● Special characters are not permitted: these include ! " § $ % & / ( ) = ? * ' _ : ; > < , # + | ~
\}][{
● The name may consist of more than one part.
– Label.Label.Label.Label
– Periods are used as separators.
– The label must start and end with a letter.
– Labels must not exceed 63 characters.
– Labels must not begin with "xn-".
● The total maximum length for a name is 240 characters.
● Reserved names "port-xyz" or "port-xyz-abcde"
● No distinction is made between upper and lower case. However, since all names are
shown in lower case in the engineering system, you should use lower-case letters only.
● Minus signs "-" must not be used for SCOUT.
● The engineering software replaces impermissible characters with an x.
Communication
108
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Initialization of the controller and devices in online mode
As the controller and devices do not have a communication name or IP address when
delivered, these will need to be assigned at the outset. When assigning addresses (i.e. the
IP address and communication name - a process also referred to as initialization), a
distinction is made between controllers and devices. You can adopt different approaches
when initializing devices and controllers.
Controller initialization
● Download the application
● Engineering software
– HW Config, NetPro, SCOUT
– Primary Setup Tool (PST)
● Via the application (the _setNameofStation system function for SIMOTION)
Note
When using engineering software for initialization, and particularly where larger systems
are involved, you should establish direct connections with the device to ensure the device
to be initialized is clearly identifiable. Alternatively, the Flash feature can be used,
whereby devices can be identified by a flashing LED.
Device initialization
● Engineering software
– HW Config, NetPro
– SCOUT, STARTER
– Primary Setup Tool (PST)
● Write to the MMC or CF card beforehand and then plug in.
Topology-based initialization for devices
Devices can also be initialized without an MMC or CF card. This method is known as
topology-based initialization and is only supported as of certain software versions.
● SIMATIC S7-300 FW ≥ V 2.7
● SIMATIC S7-400 FW ≥ V 5.2
● SIMOTION FW ≥ V4.1.2 with PN V2.2
● SINAMICS FW ≥ V2.5.1.10 with PN V2.2
● ET 200S FW ≥ 6.0
● ET 200S HS FW ≥ 2.0
Communication
System Manual, 11/2010
109
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
4.3.13
Assigning device names and IP addresses to IO devices
Introduction
You can only go online with the engineering software of a device (or controller) if it has been
assigned an IP address in the engineering software. Devices must also be assigned a
communication name which is unique across the network. This enables the controller to
identify the devices assigned to it.
You can specify the IP address in the Properties - Ethernet interface….dialog (double-click
on the device to open this). Moreover, a default name is entered that you can modify. The
default setting Assign IP address through Controller is active. In other words, when powering
up the controller identifies the devices assigned to it via the communication names and then
assigns the IP address defined in Engineering to them. We recommend leaving this function
activated.
Figure 4-31
Properties SINAMICS S120
Communication
110
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
IO device initialization
Note
If you are connecting the programming device/PC directly to the device's PROFINET
interface, you can use a patch or crossover cable.
During commissioning, we recommend that the device to be initialized is connected directly
to the programming device/PC.
1. In HW Config or NetPro, select the Target system - Ethernet - Edit Ethernet Node menu
item. The Edit Ethernet node dialog box is displayed.
2. Click the Browse button.
Communication
System Manual, 11/2010
111
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
3. The Browse Network dialog box opens. The connected nodes are displayed.
4. Click the device to be initialized and confirm with OK.
5. Enter the IP address and subnet mask you specified in the Properties – Ethernet interface
… dialog.
6. The default setting (Do not use router) for the gateway remains unchanged.
7. Click the Assign IP configuration button. The IP address is then assigned to the device
online.
8. Enter the device name that you have defined in HW Config, see figure Properties
SINAMICS S120.
9. Click the Assign name button. The device name is assigned to the device.
Communication
112
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
As an alternative, you can perform node initialization in SIMOTION SCOUT.
You can also perform the node initialization in SCOUT.
● In SCOUT, execute Reachable nodes and, in the dialog box displayed, right-click the
device that you want to edit.
● Execute Edit Ethernet nodes. The corresponding dialog box is displayed.
Figure 4-32
Edit Ethernet nodes
● Enter a device name, a subnet mask and an IP address.
● Confirm your entries.
The device name and IP address are transferred to the device and stored there.
4.3.14
IP address and communication name via user program/DCP (Mini-IP-Config)
Description
It was previously only for I devices that SIMOTION supported the allocation of the IP address
and device name (NameOfStation) from the user program or via the Discovery Configuration
Protocol (DCP). With SIMOTION V4.2 and Step 7 V5.5 or higher, this must be configured in
HW Config and applies to all IO devices and IO controllers. To do this, you need to select the
checkboxes for free allocation in the Properties of the Ethernet interface and the PROFINET
interface.
This mechanism allows the IP addresses and station names to be adjusted without making
changes to the project. The IP settings can be changed locally, especially for series
machines.
Communication
System Manual, 11/2010
113
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Obtaining the IP address using a different method
1. In HW Config, open the Properties dialog box for the PROFINET interface and click on
the Properties button on the General tab.
2. Switch to the Parameter tab in the Properties dialog box that opens for the Ethernet
interface.
3. Activate the Obtain IP address using a different method checkbox and confirm by clicking
OK.
Figure 4-33
Obtaining the IP address using a different method
Communication
114
System Manual, 11/2010
PROFINET IO
4.3 Configuring PROFINET IO with SIMOTION
Obtaining the device name using a different method
1. In HW Config, open the Properties dialog box for the PROFINET interface.
2. Activate the Obtain device name using a different method checkbox on the General tab
and confirm by clicking OK.
Figure 4-34
Obtaining the device name using a different method
General information on modifying the IP address
● The IP address can be modified at any time.
● You can power up without a valid IP address.
● It is also possible to change the IP suite (IP address, subnet, router address, device
name), which includes the transition to an invalid IP address, in RUN mode and during
actual communication. During this process, a brief interruption in the application can be
tolerated.
● While the IP suite is being changed, the failure and restoration of the PROFINET IO
Controller can be tolerated.
● Where there is a fixed application relation (AR) to a higher-level IO controller, no negative
acknowledgement is issued when the IP address is modified via DCP. This behavior also
applies during use as an I device.
● When the IP address is modified via the user program, the AR to the higher-level IO
controller is aborted locally and the change is accepted. This results in a CPU stop on the
higher-level IO controller.
Communication
System Manual, 11/2010
115
PROFINET IO
4.4 Configuring direct data exchange between IO controllers
General information on changing the device name
● The device name can be changed at any time.
● You can power up without a valid device name.
● It is also possible to change the IP suite (IP address, subnet, router address, device
name), which includes the transition to an invalid IP address, in RUN mode and during
actual communication. During this process, a brief interruption in the application can be
tolerated.
● Changing the device name, which includes the transition to an "empty" device name, is
possible in RUN mode and during actual communication. During this process, a brief
interruption in the application can be tolerated.
● Changing the device name via DCP with a fixed application relation causes the
application relation to be aborted. This also applies during use as an I device.
● With an IO controller, all existing application relations to lower-level IO devices are
aborted and reestablished when the device name is changed.
● The unique device name is not checked; duplication can only be detected on the higherlevel IO controller or in the LifeList.
Diagnostics when an error occurs
For the purpose of error diagnostics, a diagnostics buffer entry is created on the SIMOTION I
device CPU if a DCP request to set the device name or IP address for the I device could not
be carried out because the relevant checkboxes are not activated in HW Config.
4.4
Configuring direct data exchange between IO controllers
4.4.1
Introduction
I/O data areas can be exchanged cyclically between two or more SIMOTION controllers via
IRT High Performance. This is also referred to as controller-controller data exchange
broadcast. Controller-controller data exchange broadcast is only possible between
SIMOTION controllers via PROFINET IO with IRT High Performance.
For data exchange to take place, the devices must be located in a common sync domain and
configured accordingly as sync master and sync slaves.
Note
This function is not available for SIMATIC CPUs.
Communication
116
System Manual, 11/2010
PROFINET IO
4.4 Configuring direct data exchange between IO controllers
There are in fact two types of data exchange broadcast. One is automatically created by the
system (e.g. distributed synchronous operation), while the other can be applied by the user
in his or her application. You can configure this second type of data exchange broadcast.
Note
The user must not use the engineering tools to make changes (e.g. amending the address
areas) to the data exchange broadcast which has been automatically configured by the
system. Doing so will result in error states.
Recommendation
We recommend, initially configure the send areas for all PROFINET devices and then the
receive areas. Adopting this procedure will enable you to assign the previously defined send
areas when defining the receive areas. This prevents invalid inputs.
Data volume
Around 3 KB of data can be transmitted. 24 bytes are needed for each configured
synchronous operation relationship. In other words, if 5 following axes were defined for one
master axis, the system needs 5 * 24 bytes. The remaining data is available for applicationspecific data exchange broadcast.
Note
An FAQ section on the subject of PROFINET configuration is provided in SIMOTION Utilities
& Applications. SIMOTION Utilities & Applications is provided as part of the SIMOTION
SCOUT scope of delivery.
This FAQ section deals with the subjects of distributed gearing and controller-controller data
exchange broadcast.
Communication
System Manual, 11/2010
117
PROFINET IO
4.4 Configuring direct data exchange between IO controllers
4.4.2
Configuring the sender
Procedure
1. Open the Properties dialog of the PROFINET interface (double-click the corresponding
row in the configuration table of HW Config).
2. Select the Sender tab.
3. Click the New button.
4. Enter in the Properties dialog of the sender, the start address from the I/O area and the
length of the address area to be used for sending. Comment the data area so that you
will be able to identify the data transmitted via this area later on. A variable may not
exceed 254 bytes in size.
5. Confirm the settings with OK.
6. Repeat steps 3 to 5 for further send areas.
7. Change the preset diagnostics address for the send areas, if required.
8. Confirm your entries with OK.
A single diagnostics address must be assigned for the communication relationship in which a
PROFINET interface is the transmitter for direct data exchange.
Communication
118
System Manual, 11/2010
PROFINET IO
4.4 Configuring direct data exchange between IO controllers
4.4.3
Configuring the receiver
Procedure
1. Open the Properties dialog of the PROFINET interface (double-click the corresponding
row in the configuration table of HW Config).
2. Select the Receiver tab.
3. Click the New button.
4. Click the Assign sender button in the Properties receiver dialog.
5. In the Assign sender dialog, select the data area of the desired node which is to be
received by the local controller.
6. Confirm your selection with OK.
7. In the Properties dialog box of the receiver, enter the start address of the address area
via which the reception is to be implemented. The length of the address area must not be
changed as it is automatically adapted to the length of the send area. The configuration
can only be compiled if the send and receive areas have identical lengths!
8. Repeat steps 3 to 7 for further receive areas.
9. A diagnostics address is reserved for each assigned sender via which the receiver can
detect a failure of the sender.
10.Click the Diagnostics addresses button if you want to edit these addresses.
11.Confirm your entries with OK.
Communication
System Manual, 11/2010
119
PROFINET IO
4.5 Configuring the iDevice
4.5
Configuring the iDevice
4.5.1
PROFINET IO and I device
Introduction
Up to SIMOTION 4.0, direct coupling (of SIMATIC and SIMOTION via PROFINET, for
example) was only possible via TCP or UDP, or via additional hardware (PN/PN coupler,
SIMATIC CP). With SIMOTION V 4.1.1.6 or higher, the direct coupling of controls - a familiar
feature with PROFIBUS - has been introduced for PROFINET IO. It is possible, for example,
to connect the SIMOTION as an I slave to the SIMATIC CPU via PROFIBUS. A similar
function, referred to as "I device", is also available for PROFINET IO. This supports data
exchange between the controls via I/O areas, with the communication programming required
for TCP or UDP being replaced by configuring and system functionality. In addition, the costs
associated with the hardware solutions used previously no longer apply (PN/PN coupler,
SIMATIC-CP).
An I device is a controller which also assumes the function of an IO device. The term "I
device" is used to refer to an intelligent IO device. Intelligent I devices are characterized by
the fact that their input/output data is pre-processed in the I device, rather than being made
directly available to the higher-level IO controller by actual inputs/outputs.
When operating as an I device, a SIMOTION device can be used for data exchange with a
SIMATIC station, for example. A SIMOTION device acting as an I device may also be used
as a feeder for a modular machine. Please see the description of functions titled Motion
Control basic functions for modular machines.
Another application for a SIMOTION device acting as an I device involves providing
distributed synchronous operation beyond the limits of a project (see the Motion Control
Technology Objects Synchronous Operation, Cam Function Manual).
Note
An I device can only be created using SIMOTION V4.1.1.6 or higher.
Properties of an I device
As well as performing the role of an IO device on a higher-level IO controller, an I device can
set up its own local PROFINET IO system with built-in local IO devices, thereby acting as an
IO controller itself. Both these functions are implemented via the same PROFINET interface
on the device.
With SIMOTION, the I device is available for PROFINET IO with RT and IRT High
Performance.
Communication
120
System Manual, 11/2010
PROFINET IO
4.5 Configuring the iDevice
The following boundary condition applies in terms of the options available for combining
functions:
Table 4- 4
RT and IRT I device combination options with SIMOTION
SIMOTION function
Possible additional functions
RT I device
RT I device
RT controller
IRT I device
IRT controller
X
-
X
RT controller
X
-
X*
X*
IRT I device
-
X
-
-
IRT controller
X
X
-
*Either an IRT I device or an IRT controller
As with any other IO device, an I device's PROFINET interface requires parameter
assignment data in order to operate. With IO devices, this data is usually loaded via the
associated IO controller in the form of parameter assignment data sets. Two options are
available for I devices. An I device's interface and PROFINET interface ports can either be
parameterized by the higher-level IO controller or by the I device itself on a local level. The
preferred option can be selected as part of the I device's configuration.
If parameters are being assigned locally, the required data is loaded to the I device while the
Engineering System is being downloaded. Parameter assignment data for the PROFINET
interface is contained in the device download data. The higher-level IO controller does not
need be used for parameterizing the PROFINET interface of the I device. However, this
option should be used if the I device is to be operated with RT.
If the higher-level IO controller is being used for parameter assignment, the parameter
assignment data for the I device's PROFINET interface must be loaded by the IO controller
together with the remaining parameter assignment data. For this purpose, the IO controller
loads parameter assignment data sets for the PROFINET interface to the I device. If the I
device is to be operated with IRT, the parameter assignment data will need to be loaded by
the IO controller.
If the I device is being operated with IRT, the I device's send clock must be set to match the
send clock for the sync domain of the higher-level IO controller's PROFINET IO system. If
the I device is being operated with RT, the I device's update time must be either set to match
the send clock for the sync domain of the higher-level IO controller's PROFINET IO system,
or down-scaled by a multiple of this send clock.
The table below contains details of the send clocks and update times which must be set,
along with their possible combinations.
Communication
System Manual, 11/2010
121
PROFINET IO
4.5 Configuring the iDevice
Table 4- 5
Send clocks/update times of an I device
Higher-level IO controller and I device with IRT, no local PROFINET IO system or local PROFINET
IO system with IO devices with RT

I device send clock:
–
Must be the same as the send clock for the higher-level IO controller
–
To be set on the I device in <PROFINET Interface> properties using the "Sending cycle" dropdown list box on the PROFINET tab
Higher-level IO controller with IRT and I device with RT, local PROFINET IO system with IRT

I device update time:
–
Must be an integral multiple of the send clock for the higher-level IO controller and the send
clock for the IO controller on the I device
–
To be set on the substitute I device in <Profinet Interface> properties, under the update time
on the "IO Cycle" tab
Higher-level IO controller and I device with RT, no local PROFINET IO system

I device update time:
–
Any of the possible update times for the I device may be set.
–
To be set on the substitute I device in <PROFINET Interface> properties, under the update
time on the IO cycle tab
Higher-level IO controller and I device with RT, local PROFINET IO system with IRT:

I device update time:
–
Must be less than or equal to the send clock for the IO controller in the I device
–
To be set on the substitute I device in <PROFINET Interface> properties, under the update
time on the IO cycle tab
The figure below shows how an I device can be configured on a higher-level IO controller.
The higher-level IO controller sets up a PROFINET IO system containing the I device. The I
device is able to set up a local PROFINET IO system. Each of these PROFINET IO systems
can belong to its own sync domain. However, the I device must only be assigned to one of
the possible sync domains, as a PROFINET interface can only belong to a single sync
domain.
Communication
122
System Manual, 11/2010
PROFINET IO
4.5 Configuring the iDevice
H W C a ta lo g
P re co n fig u re d S ta tio n s
D435
,QVWDOO*6'ILOH
I-D e v R T
,QVHUWVXEVWLWXWH,GHYLFH
*6'ILOH
+LJKHUOHYHO,2FRQWUROOHUSURMHFW
&UHDWH*6'ILOHIRU,GHYLFH
,2
FRQWUROOHU
,57
+LJKHUOHYHO,2FRQWUROOHUIRU352),1(7,2V\VWHP
,2
GHYLFH
,2
GHYLFH
,GHYLFHSURMHFW
,GHYLFH
,2
FRQWUROOHU
,GHYLFHIRUORFDO352),1(7,2V\VWHP
,2
GHYLFH
,2
GHYLFH
,GHYLFHPD\RQO\EHORQJWRRQHV\QFGRPDLQ
Figure 4-35
I device configuration
Configuration procedure
● The I device itself and the IO controller on which it is to be operated should be created in
different projects.
● The PROFINET interface's I device mode must be active for the I device. In addition, the
input and output ranges in the I device must be configured for data exchange with the
higher-level IO controller.
● After an I device has been created and configured, a GSD file needs to be created and
installed for its substitute I device. The substitute I device will then be available in the
hardware catalog under "Preconfigured Stations".
● The next step involves inserting the substitute I device from "Preconfigured Stations" in
the hardware catalog into the higher-level IO controller's PROFINET IO system.
Since a manual process in the hardware catalog is required to create a substitute I device,
there is no automatic alignment between the project with the I device and the corresponding
substitute I device in the GSD file. As a result, no subsequent amendments can be made to
the I device configuration. If an amendment is made, however, a new GSD file will have to
be created and installed. Where numerous amendments have subsequently been made to
the configuration of a given I device, with multiple GSD files created and installed by the I
device, the version shown under "Preconfigured Stations" in the hardware catalog will
always be the most recent one. The version will only be updated, however, if the identifier
used for the substitute I device when creating and installing the GSD file remains the same.
Only the input and output addresses for data exchange may be amended in the project for
the higher-level IO controller.
Communication
System Manual, 11/2010
123
PROFINET IO
4.5 Configuring the iDevice
Since I devices connected to their higher-level IO controller and IO devices connected on the
PROFINET IO system of a single I device are connected via one and the same PROFINET
interface, they will also be located in one and the same Ethernet subnet. This means that the
device names and IP addresses of all these devices must be different from each other, and
the subnet masks must be identical. It is particularly important to bear this in mind if the
higher-level IO controller and the I device are in different projects, as HW Config cannot
check that device names, IP addresses, and subnet masks are consistent across different
projects.
Device name (NameOfStation) for the I device
As with all IO devices on PROFINET IO, a device name also has to be defined for the I
device in the configuration. As the device name (NameOfStation) for the I device is set in the
properties for its PROFINET interface, it is identical to the device name of the IO controller in
the I device. The name set is written to the GSD file for the substitute I device when this file
is created and installed. When the substitute I device is inserted into the higher-level IO
controller's PROFINET IO system, the device name previously assigned in the GSD file will
be accepted into the configuration. In all cases, it is important to ensure that the device name
in the configuration of the higher-level IO controller is the same as the device name defined
for the I device. As a result, device names must not be amended after the higher-level IO
controller has been added to the PROFINET IO system.
If the device names are different, the higher-level IO controller will be unable to power up the
relevant I device and, consequently, be unable to commence cyclic exchange of input/output
data.
The following scenarios result in different device names and must therefore be avoided:
● If you use a SIMOTION device as the higher-level IO controller, the device name
(NameOfStation) of the I device may not contain any "-" marks, as these will be changed
into "x" when you insert the I device into the PROFINET IO system.
● Since a device name must not be used twice within an Ethernet subnet, any device name
which already exists will be amended when a substitute I device is inserted into the
PROFINET IO system of its higher-level IO controller. In view of this, it is important to
ensure that the device name previously assigned in the GSD file is not used at this stage.
● If more than one substitute I device from the same "Preconfigured Stations" entry is
inserted into the higher-level IO controller's PROFINET IO system, the device name
previously assigned in the GSD file will be amended. With this in mind, a substitute I
device must also be created for every I device to be used in a PROFINET IO system.
See also
Creating an I device (Page 127)
Communication
124
System Manual, 11/2010
PROFINET IO
4.5 Configuring the iDevice
4.5.2
I device functionality with SIMOTION SCOUT V4.2 or higher
Description
With Step 7 5.5 or higher, SIMATIC CPUs can also be configured as I devices. The I device
functionality of SIMOTION CPUs and SIMATIC CPUs has been consistently standardized. In
the context of this standardization process, the GSD version has been set as V2.25. With
SIMOTION projects that use a lower version than V4.2, the I device must therefore be reexported/reinstalled and integrated into the project of the newly designated higher-level
controller when upgrading to V4.2. If you edit projects without re-exporting and reinstalling
the GSD file, a diagnostics buffer entry will be created on the CPU of the I device when
establishing a connection via PROFINET.
Note
Boundary conditions for I device V4.2 or higher
Step 7 V5.5 must be used for configuration on the higher-level controller, as this is the
minimum version required to import the GSD V2.25 file.
When upgrading older versions of the SIMOTION CPU V4.2, the I device becomes
"incompatible" and it is absolutely essential to export/import the GSD.
Below you will find a list of various scenarios which illustrate I device compatibility.
Use case 1: Old project involving SIMOTION devices lower than V4.2 without modification to the I
device.
1. Open an old project involving SCOUT V4.2/Step 7 5.5. The project contains RT I devices
for communication with a SIMATIC CPU.
2. Change the project, but do not make any changes to the I device configuration.
3. Compile the SIMOTION project, including HW Config, and save it as SIMOTION SCOUT
V4.1.
4. The project can be reloaded without any problems.
Use case 2: Old project involving SIMOTION devices lower than V4.2 with modification to the I device
interface.
1. Open an old project involving SCOUT V4.2/Step 7 5.5. The project contains RT I devices
for communication with a SIMATIC CPU.
2. Change the project and make changes to the I device configuration. Changes are
automatically implemented on the I device interface and an IO slot is added.
3. Create a new GSD V2.25 from the I device.
Communication
System Manual, 11/2010
125
PROFINET IO
4.5 Configuring the iDevice
4. Install the exported I device and replace it on the higher-level SIMATIC CPU.
Note
If you use the new GSD in a different project, it will still only be possible to edit it using
STEP 7 V5.5, as this is the only way to ensure compatibility with GSD V2.25.
5. Compile the SIMOTION project, including HW Config, and save it as SIMOTION SCOUT
V4.1.
6. The project can be reloaded without any problems.
Use case 3: Higher-level SIMATIC CPU and SIMOTION I device lower than V4.2 and upgrade to
V4.2.
1. Open the project with a SIMOTION CPU and higher-level SIMATIC CPU. The SIMATIC
CPU communicates as a PN controller with the I device of the SIMOTION CPU.
2. Upgrade the SIMOTION CPU to SIMOTION V4.2.
3. Export the I device of the SIMOTION CPU.
4. Diagnostics addresses and station numbers have changed compared to what they were
in the previous I device. If these are used as absolute values in system calls in the
SIMOTION application, the application program will need to be adapted accordingly.
5. Delete the previous I device of the SIMOTION CPU in the project of the higher-level
SIMATIC CPU. Make sure that the input and output addresses of the new I device are
identical to those of the old I device, so that the previous S7 application can be used.
6. Import the new GSD file into the project of the higher-level SIMATIC CPU.
7. Compile the SIMOTION project, including HW Config, and save it as SIMOTION SCOUT
V4.2. The project has now been upgraded to V4.2.
Use case 4: Higher-level SIMOTION CPU and several SIMOTION I devices lower than V4.2 and
upgrade to V4.2.
1. Open the project with several SIMOTION CPUs as I devices and a higher-level SIMATIC
CPU. The higher-level SIMOTION CPU communicates as a PN controller with the I
device of the SIMOTION CPU.
2. Upgrade the SIMOTION CPUs to SIMOTION V4.2.
3. Diagnostics addresses and station numbers have changed compared to what they were
in the previous I device. If these are used as absolute values in system calls in the
SIMOTION application, the application program will need to be adapted accordingly.
4. Export the I device of the SIMOTION CPUs and import the GSD file into the project of the
higher-level SIMOTION CPU.
5. Compile the SIMOTION project, including HW Config, and save it as SIMOTION SCOUT
V4.2. The project has now been upgraded to V4.2.
Communication
126
System Manual, 11/2010
PROFINET IO
4.5 Configuring the iDevice
4.5.3
Creating an I device
Requirement
You have already created a project and created a station with rack or a SIMOTION controller
in HW Config (SIMATIC Manager or SIMOTION SCOUT). You have configured the
PROFINET IO system and now want to configure the I device.
Note
When configuring the I device, pay attention to the possible settings for the RT class, see
PROFINET IO and I device (Page 120).
Procedure
1. Double-click the interface module of the CPU. The Properties dialog box opens.
2. Select the General tab and, if necessary, change the device name (without any "-").
3. Select the I device tab.
4. Activate the I device mode checkbox.
Figure 4-36
I device Properties dialog box
Communication
System Manual, 11/2010
127
PROFINET IO
4.5 Configuring the iDevice
5. You have to activate different checkboxes depending on whether I device communication
is to take place on the higher-level controller using RT or IRT.
– I device using RT:
Activate the I device mode checkbox only.
– I device using IRT:
If the I device is to be operated on the higher-level IO controller using IRT, you also
have to activate the Parameterization of PN interface and its ports on higher-level
controller and Operate total I device (all submodules) isochronously checkboxes. This
will also result in ports being created in the GSD file and parameter assignment data
sets being loaded to the I device's controller on start-up. If you do not select this
option, cyclic communication between the higher-level IO controller and the I devices
can only take place via RT. On the substitute I device, this selection causes the IO
cycle tab to appear in the Properties dialog box for the substitute I device's PROFINET
interface. It will then be possible to select the Servo entry under Assign I device
isochronously on this tab so that the I device can be operated isochronously. If an I
device is to be operated with IRT, the PN interface and its ports have to be
parameterized on the higher-level IO controller and Assign I device isochronously
must be set.
Note
Please note that if the I device is to work in IRT mode, the device name and IP
address of the controller must be assigned. You therefore have to set this option on
the I device. To do this, refer to chapter IP address and communication name via user
program/DCP (Mini-IP-Config) (Page 113) and Inserting a substitute I device in the
higher-level IO controller (Page 131).
6. If the I device is being operated with IRT, its send clock will have to be set. To do this,
select the PROFINET tab and set the send clock as appropriate.
7. Click New... each time to create the virtual subslots (input and output address transfer
area), and configure these according to your requirements. By doing this, you are
configuring the I/O range for the I device via which data is exchanged with the higherlevel IO controller. Do not perform any further settings in the Sender and Receiver tabs.
8. Click OK to accept these settings and save the project.
9. Continue by creating the substitute I device.
Communication
128
System Manual, 11/2010
PROFINET IO
4.5 Configuring the iDevice
4.5.4
Exporting the GSD file for the I device
The GSD file always needs to be exported so that an I device in a project can be used on
another PC.
Requirement
You have already configured the module to be used as an I device.
1. First save the project.
2. Select Options > Create GSD file for I device .... The "Create GSD file for I device" dialog
opens.
3. Select the I device and enter a name for the substitute I device. The substitute I device
will appear under this name in "Preconfigured Stations" in the HW catalog.
4. Click Create and then Export. The Find folder dialog opens.
5. Select the path in which the GSD file of the substitute I device is to be stored and click on
OK.
4.5.5
Creating a substitute I device
There are two different ways of creating a substitute I device. The first, Options > Install GSD
files ... , involves a previously exported GSD file. The second involves the Create GSD file
for I device dialog.
Requirement
You have already configured the module to be used as an I device and exported the GSD
file from this.
Procedure 1:
1. First save the project.
2. Create an I device as described in Chapter Exporting the GSD file for the I device
(Page 129). There is no need to export the file; instead, it is installed immediately.
Communication
System Manual, 11/2010
129
PROFINET IO
4.5 Configuring the iDevice
3. Click Create and then Install.
4. Click Close. The substitute I device will now be available under "Preconfigured Stations".
Procedure 2:
1. Select Options > GSD files.... The "Install GSD files" dialog box opens.
2. Click Browse... . The Find folder dialog opens.
3. Select the path in which the GSD files of the substitute I device are stored and click on
OK.
Communication
130
System Manual, 11/2010
PROFINET IO
4.5 Configuring the iDevice
4. Select the required GSD files and click Install.
5. Click Close. The substitute I devices will now be available under "Preconfigured Stations".
Figure 4-37
4.5.6
I device entry in the hardware catalog
Inserting a substitute I device in the higher-level IO controller
Requirement
You have already created a substitute I device. A project is open and an IO controller with a
PROFINET IO system has already been configured.
Communication
System Manual, 11/2010
131
PROFINET IO
4.5 Configuring the iDevice
Inserting a substitute I device
1. Open the hardware catalog.
2. Drag the relevant substitute I device from the hardware catalog (PROFINET IO >
Preconfigured stations) to the PROFINET IO system. The substitute I device is displayed
as a normal IO device on the PROFINET IO system. Whether or not ports are displayed
depends on whether Parameter assignment of the PN interface and its ports on higherlevel IO controller is selected.
Figure 4-38
I device on the IO controller
The number of submodules corresponds to the number of the configured submodules of the
I device in the GSD file. The module and the submodules (virtual subslots) cannot be
deleted.
Communication
132
System Manual, 11/2010
PROFINET IO
4.5 Configuring the iDevice
Figure 4-39
Interconnecting I device ports
Assigning the IP address for the substitute I device
1. Double-click the I device to display the Properties dialog.
2. Deactivate the Assign IP address via IO controller option.
The IP address should not be assigned by the higher-level IO controller, since it is
already allocated in the Step7 project of the I device.
This option is only available if you have previously activated Obtain device name using a
different method and Obtain IP address using a different method under Properties (see
also Mini-IP-Config (Page 113)).
Communication
System Manual, 11/2010
133
PROFINET IO
4.5 Configuring the iDevice
Setting the synchronization type and isochronous mode for an I device with IRT
1. Double-click the Interface entry in the rack to display the Interface properties dialog box.
2. In the Synchronization tab, select Sync-Slave and IRT as synchronization type and RT
class respectively.
3. On the IO cycle tab, select automatic Mode under update time and select Assign IO
device isochronously Servo under isochronous mode.
Figure 4-40
Setting isochronous mode on the I device
Setting the update time and send clock
I device with RT
● The update time needs to be set for I devices with RT. Double-click the PROFINET IO
system and select the Update time tab in the PROFINET subnet properties dialog. Set
the update time there.
I device with IRT
● The update time needs to be set for I devices with IRT. The setting made for the send
clock in the I device's project must be the same as for the send clock in the higher level
IO controller's project. Set the send clock for the higher-level project in HW Config using
Edit > PROFINET IO > Domain Management.
Communication
134
System Manual, 11/2010
PROFINET IO
4.6 Loading the communication configuration
4.5.7
Deleting a substitute I device
The GSD files for the substitute I device can be found under "Preconfigured Stations" in the
following directory:
<Program Files>\Siemens\Step7\S7DATA\GSD,
e. g. GSDML-V2.25-#Siemens-PreConf_D455-2_IRT-20100830-132044.xml.
Here, D455-2_IRT is the name of the substitute I device. You can delete the substitute I
device by deleting the corresponding XML files. The substitute I devices displayed under
"Preconfigured Stations" are only updated when a new GSD file is created and installed.
4.6
Loading the communication configuration
4.6.1
Loading the PROFINET IO configuration
Requirement
A PG/PC with which you can go ONLINE is connected.
Procedure
The configuration data must be loaded to all participating controllers once PROFINET IO
configuration has been successfully completed.
1. In NetPro, select the Ethernet subnet and then select the Target system > Loading in
current project > Nodes on the subnet menu command.
Communication
System Manual, 11/2010
135
PROFINET IO
4.7 Data exchange between SIMATIC and SIMOTION via PROFINET
4.7
Data exchange between SIMATIC and SIMOTION via PROFINET
4.7.1
Data exchange through the use of iDevices
Description
SIMATIC and SIMOTION can be linked using the following functions:
● TCP/UDP*) user communication
● PROFINET IO/RT, via S7-300 CP as a device
● PROFINET IO/RT, via PN/PN coupler
● PROFINET IO/RT, via I device
6,027,21
6,0$7,&
Figure 4-41
Data exchange between SIMOTION and SIMATIC
Note
An FAQ section on the subject of coupling a PROFINET RT I device between a
SIMOTION control and a SIMATIC control is provided in SIMOTION Utilities &
Applications. SIMOTION Utilities & Applications is provided as part of the SIMOTION
SCOUT scope of delivery.
It looks at the following three application cases:
Case A: Two separate projects: SIMATIC and the SIMOTION as an I device in a project;
SIMOTION as a controller in a second, separate project
Case B: One project for all components
Case C: Multiple use of an I device
For more detailed information on the configuration of I devices, please refer to Chapter
Configuring the iDevice (Page 120).
Please also refer to the FAQ on configuration I device FAQ
(http://support.automation.siemens.com/WW/view/en/29578823).
Communication
136
System Manual, 11/2010
PROFINET IO
4.7 Data exchange between SIMATIC and SIMOTION via PROFINET
4.7.2
PN-PN coupler
Description
The PN/PN coupler is used to link two PROFINET IO system with one another and to
exchange data between them. The maximum size of the data which can be transferred is
256-byte input data and 256-byte output data.
As a device, the PN/PN coupler has two PROFINET interfaces, each of which is linked to
another subnet.
During configuration, two IO devices are derived from a PN/PN coupler which means that
there is one IO device for each controller with its own subnet. The other part of PN/PN
coupler in each case is known as the bus node. Once configuring is complete, the two parts
are joined.
0DFKLQH%
0DFKLQH$
6
,2FRQWUROOHU
(76
,2GHYLFH
23
6,027,21',2
FRQWUROOHU
3*
6,027,213,2
FRQWUROOHU
3131
FRXSOHU
6ZLWFK
;
;
6ZLWFK
6ZLWFK
Figure 4-42
Coupling two PROFINET subnets with one PN/PN coupler
The two machines in the figure are isolated via the PN/PN coupler. If it is also possible, for
example, to use the programming device of machine B to go online on machine A, a jumper
can be inserted between ports 2 and 3 in the PN/PN coupler. This removes the isolation.
Note
Detailed information about the PN/PN coupler is contained in the appropriate device
documentation.
Communication
System Manual, 11/2010
137
PROFINET IO
4.7 Data exchange between SIMATIC and SIMOTION via PROFINET
Configuring the PN-PN coupler
Two PROFINET devices are created for the purpose of configuring the PN/PN coupler: one
on the left (X1) and one on the right (X2). You use HW Config to configure the PN/PN
coupler. Once both subnets in a project have been configured, you can use STEP 7 to
configure the PN/PN coupler for both subnets. Once the subnets in various projects have
been configured, you must configure the coupler in each project.
Note
The PN/PN coupler is used for data exchange between SIMOTION and SIMATIC. It is also,
however, the preferred solution for fast exchange of F signals between SIMATIC CPUs.
4.7.3
Communication using standard protocols
Description
TCP and UDP can be used to exchange data between SIMOTION, SIMATIC, other controls,
and third-party systems. The PROFINET interface is a standard Ethernet interface and
supports these protocols. The user program must handle the management of the connection.
You can use this connection, for example, to exchange data between a SIMATIC CPU and
SIMOTION controller via PROFINET.
UDP is a connection-less protocol; this means transmission is not followed by feedback
indicating whether the receiver actually received the message. TCP is a connection-based
protocol; this means a logical connection is established at the outset. Transmission only
begins once this connection is present. The connection (i.e. message receipt) is monitored.
Data exchange via TCP:
● Establishing a connection
● Data management
● Connection monitoring
● Connection termination
The use of the system commands is described in detail in the Introduction to Ethernet
(TCP/IP and UDP connections) section.
See also
Overview of SIMOTION system functions (Page 160)
Overview of SIMOTION system functions (Page 179)
Communication
138
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
4.8
Diagnostic and alarm behavior
4.8.1
PROFINET IO alarm and diagnostic messages to SIMOTION
Description
For PROFINET IO there is an alarm and diagnostic functionality for PROFINET devices.
352),1(7GHYLFHGLDJQRVLV
,QWKUHHOHYHOV
GHYLFHVORW
FKDQQHOIRUQHWZRUNFRPSRQHQWV
DGGUHVV
IDXOWORFDWLRQ
/HYHO
)DXOWLQWKHGHYLFH
HJYDOYHVWDWLRQ
2SHQQHWZRUNGLDJQR
VLV,3DGGUHVV
ORFDWLRQVWDWLVWLFV
Figure 4-43
2SHQQHWZRUNGLDJQRVLV
6103
:HE
0RGXOH
0RGXOH
&KDQQHO &KDQQHO
&KDQQHO
&KDQQHO &KDQQHO
&KDQQHO
&KDQQHO &KDQQHO &KDQQHO
...
...
&KDQQHO
Q[
&KDQQHO
Q[
...
/HYHO
)DXOWLQWKHPRGXOH
HJDQDORJLQSXW
PRGXOH
/HYHO
&KDQQHOIDXOWHJ
ZLUHEUHDNDJHRQ
FKDQQHO
Diagnostics overview using the example of ET200
Device diagnostics
The device diagnosis can be divided into three levels. For detailed information, see
"Diagnostic model".
4.8.2
Diagnostics model
PROFINET IO uses completely standardized diagnostics mechanisms. This is especially
helpful for manufacturer-wide device and system diagnostics.
Because of the large quantity structures, it is not possible to keep the status information of all
stations in the IO controller. Therefore only the current diagnostic events are transferred to
the IO controller via the standardized alarms.
Communication
System Manual, 11/2010
139
PROFINET IO
4.8 Diagnostic and alarm behavior
The use of an acknowledged service enables the transfer of the diagnostic events in causal
sequence. A station saves its status, which can be fetched directly by a diagnostics unit at
any time using standardized data sets, see corresponding STEP7 documentation and
documentation on the _readRecord( ) system function.
Access to the alarm and diagnostic data
For PROFINET IO, a differentiation is made between the following alarm and diagnostic
messages:
● Alarms sent from IO devices to the IO controller
● Alarms that occur in the IO controller
The following figure shows the access possibilities to the diagnostic data:
1. Diagnostics on PG
The PG reads the diagnostics directly from the IO device. Visualization takes place in the
PG.
2. Diagnostics on controller
The IO device sends the diagnostics to the IO controller, the response to the fault takes
place in the controller.
3*3&
,2&RQWUROOHU
1
2
,2'HYLFH
(76
Figure 4-44
Access to the diagnostic data
Communication
140
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
4.8.3
Alarms on the IO controller
Description
A number of alarms are issued on the IO controller. Occurring alarms are listed with the
corresponding EventID in the diagnostics buffer of SIMOTION. The following alarms are
possible:
● Alarms for direct data exchange between IO controllers
● Station alarms reported by the PROFINET interface
The following table shows PROFINET IO alarms as they are represented in SIMOTION:
Alarm (TSI#InterruptId)
TSI#eventCl TSI#faultId
ass
Meaning
Station failure
(_SC_STATION_DISCONNECTED
( = 202))
16#39
16#CA
PROFINET IO system error: in this case there is only
an incoming event; an outgoing event is represented
on 16#38 - 16#CB for each IO device present.
16#CB
Station failure of an IO device
16#CC
IO device fault present.
Channel diagnostics or manufacturer-specific
diagnostics pending.
16#CB
An IO device has been reconnected without errors
16#CC
IO device error corrected
16#CD
An IO device has been reconnected, but with an
error: set configuration <> actual configuration
16#CE
An IO device has been reconnected, but error during
module parameterization
Station reconnection
(_SC_STATION_RECONNECTED
( = 203)
16#38
Use of the TaskStartInfo
Information concerning the TaskStartInfo for the PeripheralFaultTask is contained in the
Base Functions manual.
Communication
System Manual, 11/2010
141
PROFINET IO
4.8 Diagnostic and alarm behavior
4.8.4
Alarms from the IO device to the IO controller
Description
The alarms are transferred using the PROFINET alarm mechanism from the IO device to its
associated IO controller. The alarms are entered in the diagnostic buffer and can be
evaluated using the PeripheralFaultTask. The following table shows how alarms are
represented as PeripheralFaultTask.
Alarm (TSI#InterruptId)
TSI#event
Class
TSI#faultId
Meaning
Diagnosis (incoming)
16#39
16#42
Incoming diagnostic interrupt
Diagnosis disappears (outgoing)
Multicast Communication Mismatch
Port Data Change Notification
Sync Data Changed Notification
Isochronous Mode Problem Notification
Network component problem notification
(_SC_DIAGNOSTIC_INTERRUPT (=201))
16#38
16#42
Outgoing diagnostic interrupt
Process interrupt (_SC_PROCESS_INTERRUPT
( = 200)
16#11
16#41
Process interrupt
Pull Alarm
16#39
16#51
PROFINET IO module has been
removed or cannot be addressed.
16#54
PROFINET IO submodule has been
removed or cannot be addressed.
16#54
PROFINET IO module or submodule
has been inserted, module type OK
(actual configuration = set configuration)
16#55
PROFINET IO module or submodule
has been inserted, but wrong module
type (actual configuration <> preset
configuration)
16#56
PROFINET IO module or submodule
has been inserted, but error during
module parameterization
16#58
IO status of a module has changed from
BAD to GOOD
Plug Alarm
16#38
Plug Wrong Submodule Alarm
Return of Submodule Alarm
(_SC_PULL_PLUG_INTERRUPT (=216))
Status
Not Supported
Update
Not supported
Time data changed notification
Not supported
Upload and storage notification
Not supported
Pull module
Not supported
Manufacturer-specific
Not supported
Profile-specific
Not Supported
Alarm types indicated as "not supported" are acknowledged by the SIMOTION controller with
"not supported" and not entered in the diagnostic buffer.
Communication
142
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
Use of the TaskStartInfo
Information about using the TaskStartInfo for the PeripheralFaultTask is contained in the
SIMOTION Basic Functions manual.
Transfer diagnostic data
The exact reason for the alarm is provided as diagnostic data. The _readDiagnosticData()
function can be used to read out this data. The length is restricted to 240 bytes.
With V4.2 or higher, you can read out station/module diagnostic data of up to 65,535 bytes
with the function block _readVariableDiagnosticData() and the user program.
Example of program for reading out TSI# information of the PeripheralFaultTask
; ....
; Variable declaration
PHERIPHERIE_Alarminfo
: STRUCT
ALH_internalID
ALH_EingangsAdresse
ALH_AusgangsAdresse
ALH_DiagnoseAdresse
ALH_Details
ALH_Starttime
ALH_EventClass
ALH_FaultID
; ....
; Reading out the I/O fault task information:
P_ALH_Info[p_alhcount].ALH_internalID
:=
P_ALH_Info[p_alhcount].ALH_EingangsAdresse :=
P_ALH_Info[p_alhcount].ALH_AusgangsAdresse :=
P_ALH_Info[p_alhcount].ALH_DiagnoseAdresse :=
P_ALH_Info[p_alhcount].ALH_Details
:=
P_ALH_Info[p_alhcount].ALH_Starttime
:=
P_ALH_Info[p_alhcount].ALH_EventClass
:=
P_ALH_Info[p_alhcount].ALH_FaultID
:=
; ....
:
:
:
:
:
:
:
:
UDINT;
DINT;
DINT;
DINT;
DWORD;
DATE_AND_TIME;
UINT;
UINT;
TSI#interruptID;
TSI#logbaseadrin ;
TSI#logbaseadrout ;
TSI#logdiagadr ;
TSI#details ;
TSI#starttime ;
TSI#eventClass ;
TSI#faultID ;
Communication
System Manual, 11/2010
143
PROFINET IO
4.8 Diagnostic and alarm behavior
4.8.5
Alarms for direct data exchange between IO controllers
Description
For PROFINET IO with IRT, communication monitoring takes place between IO controllers. If
this establishes that IRT data is no longer being received (either there is no data arriving, or
it is arriving too late) a station failure alarm is generated. If communication is re-established,
a station reconnection alarm is generated. If IRT data arrives late on three occasions, a
station failure alarm is reported.
Note
During communication monitoring, only the receiver slot is monitored.
The following table shows PROFINET IO alarms between IO controllers involved in direct
data exchange as they are represented in SIMOTION:
Alarm (TSI#InterruptId)
TSI#eventCl TSI#faultId
ass
Meaning
Station failure
(_SC_STATION_DISCONNECTED
( = 202))
16#39
16#F3
The receiver in the direct data exchange is no longer
receiving data.
Station reconnection
(_SC_STATION_RECONNECTED
( = 203)
16#38
16#F0
The transmitter in the direct data exchange has
started up and is able to transmit.
16#F1
The receiver in the direct data exchange has started
up without errors and the receiver is receiving data
again (all receiving areas are available).
16#F2
The receiver in the direct data exchange has started
up with errors and the receiver is receiving data
again (at least one receiving area not available).
4.8.6
Alarms for SINAMICS S120 drives
Description
Alarms initiated by the SINAMICS S120 CU320/CBE20 or SINAMICS S120 CU310 PN are
issued using the PROFINET alarm channel. Two types are possible for alarms:
● Alarms issued by the PROFINET interface that directly concern PROFINET.
● Alarms issued by the application/technology in the drive.
Communication
144
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
PROFINET alarms
The following alarms are supported via the SINAMICS module that can be used with
PROFINET:
Alarm
Description
Port data change notification
A detailed description can be found under Alarms on the IO
controller (Page 141)
Sync Data Changed Notification
Isochronous mode problem notification
Multicast Communication Mismatch
Technology/application alarms
Alarms are not sent to the controller as standard PROFINET alarms, but instead are mapped
as PROFIdrive alarms. The alarm buffer can be fetched by means of a parameter job (trigger
in status word Bit7).
4.8.7
System functions for the diagnostics for PROFINET or PROFIBUS
Overview of system and diagnostics functions
The following table provides an overview of the various system and diagnostics functions for
PROFINET IO. Differences with PROFIBUS DP are also indicated.
You will find detailed information about each of the functions in the reference list for functions
List Manual, SIMOTION system functions/variables for devices.
Function
Note
PROFIBUS
_getStateOfSingleDpSlave()
The function determines the Logical diagnostic address of Logical diagnostics address
status of communication with the DP slave
of the IO device
a cyclic communications
partner (device - PROFINET,
slave - PROFIBUS,
transmitter or receiver
controller-controller data
exchange broadcast PROFINET).
_getStateOfDpSlave()
_getStateOfDpSlave
provides information
concerning whether the
PROFIBUS DP slave or the
PROFINET IO device is
activated or deactivated.
Logical diagnostic address
DP slave
PROFINET
Logical diagnostics address
of the IO device
Communication
System Manual, 11/2010
145
PROFINET IO
4.8 Diagnostic and alarm behavior
Function
Note
PROFIBUS
PROFINET
_getStateOfAllDPStations()
The system function
determines the status of the
communication with cyclic
communications partners
(device - PROFINET, slave PROFIBUS, transmitter or
receiver controller-controller
data exchange broadcast PROFINET). In addition to
the activation status,
information on availability is
also provided.
Logical diagnostics address
of the interfaces
Logical diagnostics address
of the interfaces
_getStateOfIO()
4.2 and higher
With PROFINET IO devices,
this system function forms a
group signal from the
modules present in the
device. This means that the
function can also tell the user
program when modules have
been removed or are faulty
by using the device feedback
values for this purpose.
This function provides the
user program with
information on the status of
the DP stations, modules,
and submodules. It also
provides this information in
detail for modules and
submodules.
The following are supported:

Interfaces such as
PROFIBUS DP or
PROFINET
Stations (slaves,
devices), modules, or
submodules
This function provides a
logical diagnostics address
or logical I/O address to
identified modules, and a list
of assigned submodules.

_getNextLogAddress()
All configured logical
addresses of a segment can
be determined using this
function.
Logical diagnostics address
Logical diagnostics address
Communication
146
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
Function
Note
PROFIBUS
PROFINET
_readDiagnosticData()
_getStateOfDiagnosticDataC
ommand()
This function is used to
output diagnostic data for a
DP slave via the user
program.
Logical diagnostic address
DP slave
Logical diagnostics address
of the device, of the
module/slot
or IO address of the
channel/subslot
For PROFIBUS, the
diagnostics for the slave are
read out, i.e. the slave
supplies the complete
diagnostic information. The
structure of the diagnostic
data is described in IEC
61158-6-3.
For PROFINET, the subslotspecific diagnostics are read
(i.e. the data set 0x800A).
The diagnostics for a subslot
are supplied. The structure
of the diagnostic data is
described in IEC 61158-610.
_readVariableDiagnosticData This function block is used to ()
read out diagnostic data of a
station or module via the
user program. The
diagnostics format for
PROFINET IO V2.2 and
PROFIBUS DP is described
in the IEC 61158-6 standard.
_readDriveFaults()
SINAMICS only
(ET200FC, S120, etc.)
4.8.8
This function is used to read
the current fault buffer entry
in the drive.
The _readVariableRecord FB
can be used to read data
sets with a total length of >
240 bytes. This function can
be used for PROFIBUS and
PROFINET. The device only
returns data sets of > 240
bytes in the case of
PROFINET.
Logical start address of drive Each valid logical I/O
(slot).
address of the subslot
concerned or diagnostic
address of the PAP (for
modules without cyclic data)
PROFINET device diagnosis in STEP 7
Device diagnosis in STEP 7
In SCOUT, HW Config can be used to perform an online device diagnosis via PROFINET.
The diagnosis supplies not only the slot and the channel number, but also the error type. The
diagnosis operates similar to that for PROFIBUS.
Communication
System Manual, 11/2010
147
PROFINET IO
4.8 Diagnostic and alarm behavior
Procedure
1. Go online and open HW Config for the appropriate SIMOTION device.
2. Select Target system > Diagnose, monitor/control Ethernet node.
HW Config searches for all network nodes. The (Diagnosis) ONLINE window opens and
displays the network nodes.
3. Right-click the required node and select Properties. The detailed diagnosis is displayed.
The associated fault is displayed here.
4.8.9
PROFINET IO and DS0 diagnostic interrupts
4.8.9.1
Diagnostic interrupt PROFINET IO maintenance concept
Description
A device or module of an automation system can essentially adopt one of two states: either
'good' or 'failure'. With a view to increasing the availability of sensors/actuators, devices, and
modules, these same components also supply information concerning necessary
maintenance work in addition to these two states. This additional information includes details
about the maintenance state, state of wear, and remaining life time, etc. This constitutes
what is known as an 'extended maintenance concept'. The aim of the extended maintenance
concept is to detect and eliminate potential faults early on - before they lead to production
outages. For this purpose, the 'good' and 'failure' states are supplemented by states called
'maintenance required' and 'maintenance demanded'.
Communication
148
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
The above states can be depicted on the following maintenance state model.
Figure 4-45
PROFINET IO maintenance state model
Maintenance state model
● Good (green): no action required
● Maintenance required (yellow): maintenance is to be scheduled
● Maintenance demanded (orange): maintenance is to be carried out
● Failure (red): fault
4.8.9.2
Device model for IO device
Description
The PROFINET IO device model stipulates that an IO device is to be divided into slots and
subslots. A slot represents a module (= physical assembly) and a subslot represents a
submodule (= physical subassembly).
Every submodule can be used for the following objects:
● Cyclic data (I/O interface useful data for process control)
● Alarms (e.g. diagnostic interrupt)
● Data sets
Communication
System Manual, 11/2010
149
PROFINET IO
4.8 Diagnostic and alarm behavior
● Parameters
● Diagnostics
Figure 4-46
Classification of channel, diagnostic states and group information
In the PROFINET IO device model, channels are defined below submodules for the
diagnostics. A channel is a logical substructure of a submodule. A submodule can contain up
to 65,536 channels. Defined diagnostic functions (e.g. short-circuit, wire breakage,
overtemperature) are monitored within the channels. A channel can also monitor several
diagnostic functions in parallel.
This monitoring results in channel diagnostics. Several different sets of channel diagnostics
can occur in a submodule at the same time. Channel diagnostics from different submodules
can, of course, also occur. Channel diagnostics are signaled via a diagnostic interrupt. The
diagnostic interrupt message is issued for each submodule in which channel diagnostics
occur.
Communication
150
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
4.8.9.3
PROFINET IO and DS0 diagnostic interrupts
Description
If a diagnostics-related event occurs (e.g. failure or maintenance required) in an IO device, a
diagnostic interrupt is generated and sent to the associated IO controller. The SIMOTION
device acting as the IO controller then issues a diagnostic interrupt via the
PeripheralFaultTask using TSI#interruptId = _SC_DIAGNOSTIC_INTERRUPT (= 201). Data
set 0 (DS0) for the diagnostic interrupt can be found under the TSI#InterruptId. Data set 0
(DS0) supplies the group states for the channels of a submodule. A diagnostic interrupt can
occur as an incoming diagnostic interrupt with TSI#eventClass = 0x38, TSI#faultId = 0x42
and as an outgoing diagnostic interrupt with TSI#eventClass = 0x39, TSI#faultId = 0x42.
A diagnostic interrupt contains the following group states in data set 0 (DS0) in the form of
the group bits below. The information relates to the sum total of all diagnostic functions of the
channels within a submodule:
● Group failure: DS0.Byte0.Bit 0
● Group maintenance requirement: DS0.Byte1.Bit 7
● Group maintenance demand: DS0.Byte2.Bit7
The group bits are formed by the logical ORing of the respective individual bits of all
diagnostic functions of the channels for a submodule. The three group bits are independent
of each other and do not influence each other. The group bits are therefore set and/or reset
independently of each other.
If just one modification is made to the maintenance states, individual maintenance
requirements or maintenance demands are still pending in the submodule, and there is no
failure, an incoming diagnostic interrupt is signaled. The following group bits are set
accordingly in DS0: group maintenance requirement/group maintenance demand. If all
maintenance states have disappeared and there is no failure, an outgoing diagnostic
interrupt is signaled and the two group bits (group maintenance requirement/group
maintenance demand) are set to 0. Normally, this means that the rule which applies is that
an incoming diagnostic interrupt is signaled as soon as at least one of the group bits (group
failure or group maintenance requirement or group maintenance demand) is set to 1.
However, when all of the group bits (group failure or group maintenance requirement or
group maintenance demand) are no longer set to 1, an outgoing diagnostic interrupt is
signaled.
Explanation of the DS0 data set bits
Table 4- 6
Table: DS0 byte 0
Bit
Description
Comment
Bit 0
Module Fault/OK
Group failure (diagnostics) for a submodule:
Bit 1
Internal error

0: No group failure (diagnostics) pending

1: Group failure (diagnostics) pending
Always 0
Bit 2
External error existent
Has the same content as bit 0
Bit 3
Channel error existent
Has the same content as bit 0
Communication
System Manual, 11/2010
151
PROFINET IO
4.8 Diagnostic and alarm behavior
Bit
Description
Comment
Bit 4
External auxiliary power missing
Always 0
Bit 5
Front connector missing
Always 0
Bit 6
Module not parameterized
Always 0
Bit 7
Wrong parameters in module
Always 0
Table 4- 7
Table: DS0 byte 1
Bit
Description
Comment
Bit 0-3
Type class of module
3: Type class 3 is to be understood as a
distributed I/O and as such also includes
PROFINET IO.
Bit 4
Channel information existent
0: No readable channel information present
1: Readable channel information is present in
the interrupt data of the diagnostic interrupt.
The interrupt data can be read out using the
_readDiagnosticData system function.
Bit 5
User information existent
0: No channel diagnostics or manufacturerspecific diagnostics available
1: At least one set of channel diagnostics
and/or manufacturer-specific diagnostics is
available
Bit 6
Diagnosis alarm from proxy
Always 0
Bit 7
Maintenance Required
Group maintenance requirement for a
submodule:
Table 4- 8

0: No group maintenance requirement
pending

1: Group maintenance requirement pending
Table: DS0 byte 2
Bit
Description
Comment
Bit 0
-
Always 0
Bit 1
-
Always 0
Bit 2
-
Always 0
Bit 3
-
Always 0
Bit 4
-
Always 0
Bit 5
-
Always 0
Bit 6
-
Always 0
Bit 7
Maintenance Demanded
Group maintenance demand for a submodule:

0: No group maintenance demand pending

1: Group maintenance demand pending
Communication
152
System Manual, 11/2010
PROFINET IO
4.8 Diagnostic and alarm behavior
Table 4- 9
Table: DS0 byte 3
Bit
Description
Comment
Bit 0
-
Always 0
Bit 1
-
Always 0
Bit 2
-
Always 0
Bit 3
-
Always 0
Bit 4
-
Always 0
Bit 5
-
Always 0
Bit 6
-
Always 0
Bit 7
-
Always 0
If detailed information on the channels of a submodule is required in the diagnostic interrupt,
the interrupt data for the diagnostic interrupt must be read out and evaluated accordingly
using the _readDiagnosticData system function.
Communication
System Manual, 11/2010
153
PROFINET IO
4.8 Diagnostic and alarm behavior
Communication
154
System Manual, 11/2010
Ethernet: General information (TCP and UDP
connections)
5.1
Ethernet interfaces
5.1.1
Overview of Ethernet
5
Overview
Below is a description of how to configure TCP and UDP Ethernet connections between
communications partners. TCP and UDP are based on Ethernet and the IP protocol.
5.1.2
Properties of the SIMOTION Ethernet interfaces
Ethernet interfaces
Depending on the device, SIMOTION has one or two onboard Ethernet interfaces. You can
connect an Industrial Ethernet with a transmission rate of 10/100 Mbps or 1,000 Mbps to the
8-pin RJ45 sockets with D4x5-2 DP/PN.
For modules with two Ethernet interfaces, there is no HUB/switch functionality; i.e. message
frames are not forwarded from one interface to the other. The interfaces belong to separate
Ethernet subnets. The SIMOTION devices do not have IP router functionality; they do not
forward the message frames from one subnet to another.
With two interfaces, the TCP/IP timeout parameters can be set once for both interfaces. The
transmission rate/duplex can be set separately for the two interfaces. "Utilities via TCP" are
supported for both Ethernet interfaces. This enables S7 routing from the Ethernet interfaces
to the PROFIBUS interfaces. "Utilities via TCP" are not routed from one Ethernet interface to
the other.
Alternatively, you can even connect an Industrial Ethernet through the PROFINET modules,
such as CBE30 of a SIMOTION D4x5 (100 Mbps).
The MAC addresses of the Ethernet interfaces can be seen on the outside of the housing.
Communication
System Manual, 11/2010
155
Ethernet: General information (TCP and UDP connections)
5.2 LCom communications library
5.1.3
Using the Ethernet interface
Using the Ethernet interface
● For communication with STEP 7, SIMOTION SCOUT, and SIMATIC NET OPC via a
PG/PC
● For communication via UDP (User Datagram Protocol) with other components, e.g. other
SIMOTION devices, SIMATIC devices, or PCs
● For communication via TCP (Transfer Control Protocol) with other components, e.g. other
SIMOTION devices, SIMATIC S7 stations, or PCs
● For connecting SIMATIC HMI devices such as MP277, MP370, or PC-based HMIs
● For communication by means of SIMOTION IT DIAG and SIMOTION IT OPC XML DA
(no license required as of V4.2)
● For communication by means of SIMOTION VM (separate license required)
5.2
LCom communications library
LCom library
The LCom library is based on TCP and simplifies the use of both SIMOTION system
functions and SIMATIC communication blocks in order to establish communication between
multiple machines.
Note
You can find the LCom library on the SIMOTION SCOUT DVD "Documentation, Utilities &
Applications". The DVD also contains an example project and comprehensive
documentation for the library.
Types of control
The LCom library supports the following control types and combinations:
● SIMOTION ↔ SIMOTION
● SIMATIC ↔ SIMATIC
● SIMOTION ↔ SIMATIC
Communication
156
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
Functions
● The send and receive data must be of data type BYTE. Outside of the
FBLComMachineCom, any user structures can be converted into an ARRAY OF BYTES
via marshalling.
● Bi-directional operation
– A logical point-to-point connection is established between two controls.
– Each control can send and receive via a connection at the same time.
● Alignment of configuration settings between communications partners (e.g. send clock)
– Assignment of communication parameters to the communications partner
– Changing the configuration during operation
● Types of data transmission
– Cyclic transmission (transmission at fixed periods of time)
– Transmission when data is changed
– One-off transmission
● Sending and receiving max. 64 kB useful data
● Acknowledgment and monitoring of received data
● The number of message frames that can be transmitted without having been
acknowledged may vary (adjustable u8SlidingWindow). The LCom block for the SIMATIC
control only supports u8SlidingWindow = 1.
● Sign-of-life monitoring
● Time-of-day synchronization
5.3
TCP communication
5.3.1
Overview of TCP communication
Communication with TCP (Transfer Control Protocol)
Communication via TCP is connection-oriented, i.e. data can only be transferred once a
connection to the communications partner has been established.
The main features of a communication connection are two end points. An end point is a
controlled pair consisting of an IP address and a port. The port on the client may be the
same as or different from the port on the server. Usually, one end point represents a server
and the other end point a client. There must be at least one client and one server when
establishing a TCP connection.
The client-server relationship is only valid until the connection is established. After the
connection is established, both communications partners are equivalent, i.e. each of the two
can send or receive or close the connection at any point in time.
Communication
System Manual, 11/2010
157
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
Principle of TCP communication (see figure)
● Server waits at port (1)
● Client announces connection request at this port (2). If a port is not announced on the
server, there is a wait with TimeOut (system setting)
● Server creates internal communication port with connection announcement and releases
server port for new connection. The internal communication port is identified via the
connectionId (3)
● Possible to send/receive data via this connection not only from the client, but also from
the server (4)
● Further connections can be established at the server port (5)
● An existing connection can be closed on the client or server side (6)
● Server port to establish connection is closed on the server side (7)
&OLHQW
&OLHQW
8VHUSURJUDP
8VHUSURJUDP
3RUW
3RUW
3RUW
6HUYHU
3RUW
3RUW
8VHUSURJUDP
Figure 5-1
Schematic diagram showing TCP communication sequence
Principles of port assignment:
● The port on the client can be the same as the port on the server.
● The port on the client can be different from the port on the server.
Communication
158
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
Data exchange between user program and TCP stack
3RUW[
6RFNHW[
7&36WDFN
BWFS6HQG
BWFS5HFHLYH
8VHUSURJUDP
Figure 5-2
Data exchange between user program and TCP stack
Data packets
With TCP communication, the send data from the TCP stack is divided into subpackets of
any size (up to 1,456 bytes per packet). This means that data packets of different sizes may
arrive at the receiver side.
The following scenarios are possible on the receiver side:
● Subpackets:
received data packet < sent data packet
● Several packets combined into a large data packet:
received data packet > sent data packet
The order of the data is maintained. Users must ensure that these subpackets are restored
to the length of the sent data packet in their user program.
With TCP communication, the useful data received is buffered in the TCP stack and must be
read out from here by the application. The size of the buffered useful data per connection
depends on the control involved.
Table 5- 1
Useful data and control
Control
Buffer size in bytes
SIMOTION
4.096
SIMATIC
8.192
The buffered useful data must be fetched promptly by the user program, otherwise it will not
be possible for any other data to be received. However, by contrast none of the useful data
is discarded, as TCP has a flow control facility. In this state, the communications partner
does not send any additional data and alerts its application to this fact.
Communication
System Manual, 11/2010
159
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
5.3.2
SIMOTION system functions for TCP communication
5.3.2.1
Overview of SIMOTION system functions
Maximum number of possible TCP connections
The table below contains examples of the number of possible communication connections
for a SIMOTION CPU acting as a client. The values relate to a local network without any
other external load sources, and a SIMOTION D435 acting as a server.
Table 5- 2
Communication connections in relation to a SIMOTION CPU
SIMOTION CPU (client)
Number of communication connections
C240
45
D410
45
D435
75
P3x0
40
Function call
The SIMOTION system functions for TCP communication may only be called in the
BackgroundTask or in a MotionTask. In the BackgroundTask, it should be noted that the
system functions are executed asynchronously (nextCommand=IMMEDIATELY). In the
MotionTask, however, the system functions can be executed synchronously
(nextCommand=WHEN_COMMAND_DONE).
Note
To ensure reliable cyclic communication, you should use standard mechanisms such as
those found in PROFIBUS DP or PROFINET IRT systems.
See also
_tcpOpenServer() system function (Page 161)
_tcpOpenClient() system function (Page 161)
_tcpSend() system function (Page 162)
_tcpReceive() system function (Page 163)
_tcpCloseConnection() system function (Page 164)
_tcpCloseServer() system function (Page 164)
Communication
160
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
5.3.2.2
_tcpOpenServer() system function
Overview
This system function is used in order to initiate passive establishment of a connection.
Table 5- 3
Call example
sRetValueTcpOpenServer := _tcpOpenServer(
port
:= 3456
,backLog
:= 5
,nextCommand := IMMEDIATELY
);
//StructRetTcpOpenServer
//UINT, 1024-65535
//DINT
//EnumTcpNextCommandMode
To parameterize the function, the locally assigned SIMOTION port is transferred for the port
parameter.
The maximum number of parallel connection requests for this port that are to be permitted
from other controllers is also specified as a further parameter for backLog.
The behavior of this function with respect to the advance when called is also parameterized
with the nextCommand parameter. There are two setting options: IMMEDIATELY and
WHEN_COMMAND_DONE. With the first value the advance is immediate and with the
second value it is after completion of the command.
When the _tcpOpenServer() function is called, the structure returned to the user program
contains the following parameters.
The status of establishing the connection can be queried via the functionResult parameter.
The connectionId parameter is used as an (input) parameter for the call of the _tcpSend()
and _tcpReceive() functions and assigns a unique TCP connection to these functions. This
return value is referred to in the above call examples.
The clientAddress parameter returns the client IP address from which the connection is
activated; this takes the form of an array.
The port number designated as the local port number of the client is specified in the
clientPort parameter.
The port number is in the range 1024 to 65535.
5.3.2.3
_tcpOpenClient() system function
Overview
The _tcpOpenClient() system function is used to actively establish a connection.
Table 5- 4
Call example
sRetValueTcpOpenClient :=_TCPOpenClient( // StructRetTcpOpenClient
Communication
System Manual, 11/2010
161
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
port
,serverAddress
,serverPort
,nextCommand
);
:=
:=
:=
:=
3456
au8ServerAddress
3456
IMMEDIATELY
//
//
//
//
UINT, 1024-65535
ARRAY [0...3] OF UINT
UINT, 1024-65535
EnumTcpNextCommandMode
When called, the locally assigned SIMOTION port is transferred to the function for the port
parameter.
The serverAddress parameter is the IP address of the communications partner, which is
transferred in an array.
The port number designated as the local port number is transferred to the function in the
serverPort parameter.
The port number is in the range 1024 to 65535.
The behavior of this function with respect to the advance when called is parameterized with
the nextCommand parameter. There are two setting options: IMMEDIATELY and
WHEN_COMMAND_DONE. With the first value the advance is immediate and with the
second value it is after completion of the command.
When the _tcpOpenClient() function is called, the structure returned to the user program
contains the following parameters.
The status of establishing the connection can be queried via the functionResult parameter.
The connectionId parameter is used as an (input) parameter for the call of the _tcpSend(),
_tcpReceive(), and _tcpCloseConnection() functions and assigns a unique TCP connection
to these functions.
5.3.2.4
_tcpSend() system function
Overview
The _tcpSend() system function is used for sending data.
Table 5- 5
Call example
i32RetValue := _tcpSend(
connectionId
:= sRetValueTcpOpenClient.ConnectionId
,nextCommand
:= IMMEDIATELY
,dataLength
:= 4096
,data
:= ab8SendData
);
//
//
//
//
//
DINT
DINT
EnumTcpNextCommandMode
UINT, 0-4096
ARRAY [0..4095] OF BYTE
For the connectionId parameter, the connectionId return value of the _tcpOpenClient() or
_tcpOpenServer() function is transferred, depending on whether the communication node
that executes the function is a server or client.
Communication
162
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
The behavior of this function with respect to the advance when called is also parameterized
with the nextCommand parameter. There are two setting options: IMMEDIATELY and
WHEN_COMMAND_DONE. With the first value the advance is immediate and with the
second value it is after completion of the command.
The dataLength parameter informs the function of the useful data length in bytes that has to
be transferred (max. 4,096 bytes per function call).
The data parameter specifies the useful data area in which the send data that is to be
transferred with the function is located.
The return value of the function to the user program is of data type DINT. The various return
values indicate any problems that occurred during execution of the function. There is also a
confirmation when the data has been successfully sent. Negative values in functionResult
indicate a data transmission error. In this case, the connection must be closed by calling
_tcpCloseConnection().
5.3.2.5
_tcpReceive() system function
Overview
The _tcpReceive() system function is used for receiving data.
Table 5- 6
Call example
sRetValueTcpReceive
connectionId
,nextCommand
,receiveVariable
);
:=
:=
:=
:=
_tcpReceive(
sRetValueTcpOpenClient.connectionId
IMMEDIATELY
ab8ReceiveData
//
//
//
//
StructRetTcpReceive
DINT
EnumNextCommandMode
ARRAY [0..4095] OF BYTE
For the connectionId parameter, the connectionId return value of the _tcpOpenClient() or
_tcpOpenServer() function is transferred, depending on whether the communication node
that executes the function is a server or client.
The behavior of the __tcpReceive() function with respect to the advance when called is also
parameterized with the nextCommand parameter. There are two setting options:
IMMEDIATELY and WHEN_COMMAND_DONE. With the first value, the advance is
immediate and with the second value it is after completion of the command.
For each function call, up to 4,096 bytes of receive data can be read out from the TCP stack.
Please note that it will not be possible to predict the sizes of the packets received. On the
receiver side, you must take care to ensure that all useful data is present before the
evaluation and further processing. For this purpose, the nextCommand parameter should be
set to IMMEDIATELY.
The receiveVariable parameter is used to inform the function of the useful data area in which
the receive data is to be stored. The received data is available in the receiveVariable
parameter in the length dataLength, if the return value in the functionresult = 16#0. At the
next function call, the ReceiveVariable parameter is overwritten with new data in the length
dataLength.
Communication
System Manual, 11/2010
163
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
When the _tcpReceive() function is called, the structure returned to the user program
contains the following parameters. The receive status can be queried via the functionResult
parameter. The dataLength parameter signals the number of received useful data bytes
once the _tcpReceive() function has been successfully called.
Negative values in functionResult indicate a data transmission error. In this case, the
connection must be closed by calling _tcpCloseConnection().
5.3.2.6
_tcpCloseConnection() system function
Overview
The _tcpCloseConnection() function is used for closing a connection that has been actively
established by the communication node executing the function (client).
Table 5- 7
Call example
sRetValueTcpCloseConnection := _tcpCloseConnection(
connectionId := sRetValueTcpOpenClient.ConnectionId
);
// DINT
// DINT
The return value of the _tcpOpenClient() function is transferred at the connectionId
parameter in order to clearly identify which connection is to be closed.
The return value of the function to the user program is of data type DINT and indicates any
problems that occurred during execution of the function or signals if the connection has been
closed successfully.
5.3.2.7
_tcpCloseServer() system function
Overview
The _tcpCloseServer() function is used for closing a connection that has been passively
established by the communication node executing the function (server).
Table 5- 8
Call example
sRetValueTcpCloseServer := _tcpCloseServer(port := 3456); //1024 - 65535
The server port is transferred at the port parameter.
Communication
164
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
The return value of the function to the user program is of data type DINT and indicates any
errors that occurred during parameterization of the function or signals if the port has been
closed successfully.
5.3.3
SIMATIC communication blocks, onboard Ethernet interface
5.3.3.1
Overview of SIMATIC communication blocks
Overview
The following function blocks are available for TCP communication with a SIMATIC and its
onboard Ethernet interfaces.
● TSEND (FB63)
● TRCV (FB64)
● TCON (FB65)
● TDISCON (FB66)
To establish the connection, FB65 TCON requires the data structure UDT65 TCON_PAR. By
way of a return value, the data structure receives a connection ID which must be transferred
when the communication blocks are called. The FB66 TDISCON function block is used to
close the connection. Useful data is sent and received using the FB63 TSEND and FB64
TRCV blocks.
Maximum number of connections
Table 5- 9
Control types and max. number of connections
SIMATIC
CPU 315(F)-2 PN/DP
8
CPU 317(F)-2 PN/DP
8
CPU 319(F)-2 PN/DP
32
CPU 414-3 PN/DP
30
CPU 416(F)-3 PN/DP
62
IM151-8(F) PN/DP CPU
8
See also
Overview of SIMATIC communication blocks (Page 182)
Communication
System Manual, 11/2010
165
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
5.3.3.2
UDT65 structure and parameterization
Overview
In the case of communication with a SIMATIC control and integrated Ethernet interface, the
connection is not configured in NetPro. Instead, it is configured using the data structure
UDT65 TCON_PAR in the user program (see figure below).
Figure 5-3
Declaration view of UDT65 TCON_PAR in the LAD/STL/FBD editor
The structure and parameterization of the UDT65 is described in detail below.
In principle, there are two different scenarios when it comes to parameterizing the UDT65 or
the data block derived from this:
1. The connection is established actively from the S7 station (client).
2. The S7 station passively waits for the connection to be established from the
communications partner (server).
You can find the most important parameters in the tabular overview (distinction made
between client and server). Parameters that are not referred to are usually left at their default
values or 0. For more information, please refer to the online help for the UDT65 data block.
Communication
166
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
Table 5- 10
Data block UDT65, parameterization with TCP/UDP
Parameter
Description
Value for TCP
Value for UDP
block_length
Length of a
parameterization block
64 hex
64 hex
id
A separate number
must be assigned for
each connection via the
id parameter (value
range 1-0FFF hex).
This reference is
required for
parameterizing the
TCON, TSEND, TRCV,
and TDISCON function
blocks.
In the relevant block,
you must specify the
value of this parameter
for ID.
In the relevant block,
you must specify the
value of this parameter
for ID.
connection_type
Connection type
11 hex
13 hex
local_device_id
The local_device_id
parameter is dependent
upon the CPU type.
You can obtain the
values for it from the
STEP 7 online help.
-
local_tsap_id_len
Used length of the
2 hex
local_tsap_id parameter
2 hex
rem_staddr_len
Length of the address
for the remote
4 hex
0, not used
active_est
1: Active connection
establishment
TRUE
FALSE
2: Passive connection
establishment
FALSE
FALSE
connection end point
Communication
System Manual, 11/2010
167
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
Parameter
Description
Value for TCP
Value for UDP
rem_staddr
For 1 and 2,
IP address of the
communications
partner, e.g.
192.168.0.1
(SIMOTION device).
rem_staddr[1] =
B#16#C0 (192),
0, not used
rem_staddr[2] =
B#16#A8 (168),
rem_staddr[3] =
B#16#00 (0),
rem_staddr[4] =
B#16#01 (1),
rem_staddr[5-6]=
B#16#00 (reserved)
rem_tsap_id
For 1,
B#16#11:
remote port no. values rem_tsap_id[1] = high
apply to
byte for port no. in
connection_type 11hex.
hexadecimal
representation,
0, not used
rem_tsap_id[2] = low
byte for port no. in
hexadecimal
representation,
rem_tsap_id[3-16] =
B#16#00
For 2
0, not used
0, not used
The next section contains descriptions of communication blocks.
See also
Overview of SIMATIC communication blocks (Page 182)
5.3.3.3
Description of communication blocks
Function blocks for establishing a connection
Below is a description of the function blocks that can be used to program the establishment
of a connection.
TCON (FB65)
Table 5- 11
Call example
CALL "TCON" , DB66
REQ
:=M1.0
ID
:=W#16#1
DONE
:=M2.0
Communication
168
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
BUSY
ERROR
STATUS
CONNECT
:=M3.0
:=M4.0
:=MW100
:=P#DB1.DBX0.0 BYTE 64
If data is to be received or sent on an S7 station with integrated Ethernet interface, a
connection must first be established between the S7 station and the communications partner
via the TCON (FB65) function block.
Establishment of the connection is controlled via the REQ parameter. If the parameter is set
to 1 and, therefore, an edge is created, the data (connection description) from the area
specified under CONNECT is transferred to the function block in order to establish the
connection.
A reference to the desired connection that is to be established is specified via the ID
parameter.
The parameters DONE, BUSY, and ERROR can be used to query the processing status of
the function block. In addition to the information that an error has occurred (ERROR = 1), the
user also receives detailed information about the type of error via the STATUS parameter.
As already mentioned above, the CONNECT parameter contains the addresses and length
of the connection description. This address refers to a data block area whose structure
corresponds to the UDT65.
TSEND (FB63)
Table 5- 12
Call example
Call "TSEND" , DB63
REQ
:=M5.0
ID
:=W#16#1
LEN
:=10
DONE
:=M6.0
BUSY
:=M7.0
ERROR
:=M8.0
STATUS
:=MW200
DATA
:=DB10.DBBO
If a communication connection is established, this data can be sent. This is performed by
calling the TSEND (FB63) function block.
Sending is activated on a rising edge at the REQ parameter. When called for the first time,
the data from the area specified with the DATA parameter is transferred to the function
block.
The communication connection with which the data is to be sent is referenced via the ID
parameter. The LEN parameter specifies the length of the data to be sent in bytes.
Communication
System Manual, 11/2010
169
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
The parameters DONE, BUSY, and ERROR also specify the processing status of the
function block in this case. In addition to the information that an error has occurred (ERROR
= 1), the user also receives detailed information about the type of error via the STATUS
parameter.
As already mentioned above, the DATA parameter contains the address and length of the
send area.
TRCV (FB64)
Table 5- 13
Call example
CALL "TRCV" ,
EN_R
ID
LEN
NDR
BUSY
ERROR
STATUS
RCVD_LEN
DATA
DB64
:=M8.0
:=W#16#1
:=10
:=M9.0
:=10.0
:=11.0
:=MW300
:=MW310
:=DB20.DBB0
Data can also be received using the TRCV (FB64) function block via an established
connection.
Receiving is controlled using the EN_R parameter. This means that if the EN_R parameter is
assigned the value 1, data can be received.
The ID is used to select a specific communication connection to be used for receiving the
data.
There are two principle parameterizations for the LEN parameter. If the parameter is
assigned the value 0, the length of the expected receive data is implicitly specified via an
ANY pointer on the DATA block input. As soon as data is received, the data is provided in
the receive buffer and this is signaled via the NDR parameter. The length of the received
data can be taken from the RCVD_LEN parameter and it can also be shorter than the size
stored in the DATA parameter. If the LEN parameter is assigned a value other than 0, the
received data is temporarily stored in the receive buffer and only provided when the
configured length is reached. The NDR parameter also signals when the data has been
completely received.
The NDR parameter signals the partial or complete reception of data.
For reception, the parameters DONE, BUSY, and ERROR display the processing status of
the function block. In addition to the information that an error has occurred (ERROR = 1), the
user also receives detailed information about the type of error via the STATUS parameter.
The meaning of the RCVD_LEN parameter has already been explained above. If the LEN
parameter has been assigned the value 0, the number of data items contained in the data
block received last is specified in the RCVD_LEN parameter. If a value other than 0 has
been assigned in the LEN parameter, then the same value is present in RCVD_LEN.
Communication
170
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
The DATA parameter contains the address and length of the send area. The received data
can be taken from here for further processing.
FDISCON (FB66)
Table 5- 14
Call example
CALL
"TDISCON" , DB66
REQ
:=M12.0
ID
:=W#16#1
DONE
:=M13.0
BUSY
:=M14.0
ERROR
:=M15.0
STATUS :=MW400
The TDISCON (FB66) function block is used to close an existing connection. To close the
connection, the input parameter REQ is set to 1. The closing of the connection is, therefore,
triggered by the rising edge.
The ID parameter informs the function block which connection is to be closed. This
parameter specifies a reference to a connection which has already been established and
which is defined by means of a structure of type TCON_PAR.
The parameters DONE, BUSY, and ERROR can be used to query the processing status of
the function block. In addition to the information that an error has occurred (ERROR = 1), the
user also receives detailed information about the type of error via the STATUS parameter.
5.3.4
SIMATIC communication blocks for Ethernet CP
5.3.4.1
Overview of SIMATIC communication blocks
Overview
The following communication blocks are available:
● AG_SEND (FC5)
● AG_RECV (FC6)
● AG_LSEND (FC50)
● AG_LRECV (FC60)
● AG_SSEND (FC53)
● AG_SRECV (FC63)
Communication
System Manual, 11/2010
171
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
The section below only describes SIMATIC communication blocks AG_SEND and
AG_RECV.
For more information, please refer to the SIMATIC NET functions (FC) and function blocks
(FB) for SIMATIC NET S7 CPs Programming Manual.
Note
For the CP 300, the maximum send and receive length per function call (AG_SEND and
AG_RECV) is 8,192 bytes.
The AG_SEND and AG_RECV functions can also be used for the CP 400. However, the
transferable data length in this case is generally limited to <= 240 bytes per job.
5.3.4.2
Ethernet CP configuration
Procedure
1. The connection table of the S7 station must be displayed in NetPro in order to create and
configure the communication connection. For this purpose, the CPU within the S7 station
is selected. The connection table is then displayed in the lower working area of NetPro. A
connection table cannot be displayed for the SIMOTION device in NetPro.
Figure 5-4
Selected S7 CPU and the associated connection table
2. Double-clicking an empty line in the connection table opens the Insert New Connection
dialog box for inserting a new communication connection. The dialog box is the same for
TCP and UDP connections. With the CPU selected, the dialog box can also be opened
via the context menu Insert > New connection… or by clicking the button in the menu bar.
Communication
172
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
3. In the Insert New Connection dialog box, select the connection partner.
Note
In the case of communication between an S7 CP and a SIMOTION device, select the
setting "(unspecified)".
Figure 5-5
"Insert New Connection" dialog box with selected TCP/IP connection
4. The desired connection type (TCP connection) is selected in the Connection field.
Note
In the case of UDP communication, select UDP connection here.
Communication
System Manual, 11/2010
173
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
5. If you exit the Insert New Connection dialog box with OK, a prompt appears to inform you
that connections are also possible via subnets and that the router addresses may have to
be checked.
Once you have acknowledged this prompt, in the case of a TCP connection the
Properties dialog box will open.
Figure 5-6
"Properties - TCP Connection" dialog box - "Addresses" tab
6. The IP address and the port for the local communications partner are already preassigned in the Addresses tab. The settings still have to be made for the remote
communications partner. The IP address of the communications partner must be entered
in the IP (DEZ) field. A port, specified by the user for the communications partner for this
connection, must be entered in the Port (DEZ) field. Boundary conditions must be met for
the port on the S7 side, i.e. a port between 2000 and 5000 must be selected on the S7
side.
Note
SIMOTION supports port 1024 to 65535.
Communication
174
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
7. In the Block parameters field on the General tab, the ID and LADDR parameters for the
S7 communication blocks can be used. ID assigns the communication connection a
unique reference. Additionally, the address of the CP is specified as LADDR.
The Active connection buildup checkbox can be used to specify whether the connection
is to be established from the S7 station. If active connection establishment is selected on
the S7 side, the communications partner must be configured as a server.
If active connection establishment is not selected on the S7 side, however, the
communications partner must be configured as a client.
Figure 5-7
"Properties - TCP Connection" dialog box - "General" tab
8. If the Properties dialog box is now exited with OK, the Insert New Connection dialog box
must also be closed (by clicking the Close button) to finish the connection configuration. If
you wish to configure additional connections, you can do this by selecting the required
connection type and then clicking the Accept button.
Once you have finished configuring the communication connection, the parameters for
establishing the connection are permanently defined with a communications partner.
Communication
System Manual, 11/2010
175
Ethernet: General information (TCP and UDP connections)
5.3 TCP communication
5.3.4.3
Description of communication blocks
Overview
Below is a description of the communication blocks that can be used to program the
establishment of a connection.
AG_SEND (FC5)
Table 5- 15
Call example
CALL "AG_Send"
Act :=M0.0
ID :=1
LADDR :=W#16#3FFC
SEND :=P#DB100.DBX0.0 BYTE 1000
LEN :=1000
DONE :=M0.1
ERROR :=M0.2
STATUS :=MW10
The ID and LADDR parameters are displayed when creating the connection in NetPro and
must be transferred for this connection when the functions are called. Sending is triggered
on a positive edge at the ACT input. The SEND parameter defines the send data and the
length to be sent is specified via LEN. The parameters DONE, ERROR, and STATUS are
used for diagnostics or to return the status of the send job.
AG_RECV (FC6)
Table 5- 16
Call example
Call "AG_RECV"
ID :=1
LADDR :=W#16#3FFC
RECV :=P#DB110.DBX0.0 BYTE 1000
NDR :=M2.0
ERROR :=M2.1
STATUS :=MW14
LEN :=MW16
The parameters ID and LADDR are specified by NetPro when creating the connection in
NetPro and must be transferred for this connection when the functions are called.
Communication
176
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
At the RECV parameter, a pointer is transferred; this indicates the data area in which the
received data is stored. TRUE at the NDR output informs the user that new data has been
received. The LEN parameter specifies how many bytes have been read out. The
parameters ERROR and STATUS return a diagnosis or the status of the receive call.
Note
In the case of TCP communication, the NDR output is only set once the data area for the
received data is full.
5.4
UDP communication
5.4.1
Overview of UDP communication
Communication with UDP (User Datagram Protocol)
UDP offers a method of sending and receiving data over Ethernet from the user program
with a minimum use of protocol mechanisms. No information concerning the transferred data
is returned in the case of communication via UDP. Communication takes place via ports on
both the send and receive sides. Unlike TCP, you do not need to program any connection
establishment or closing.
Principle of UDP communication
● For reception, in the command you address the port that you want to use on your
component for the communication job.
● When sending data, you specify the IP address and port number of the target system, as
well as the port number of the local control.
● You can specify whether the port should remain reserved on your end after the
communication job has been executed.
UDP is not a secured model. Therefore, data may be lost during transmission if it is not
read from the buffer in good time. You must program a secured method of data
transmission via your application, e.g. by acknowledging receipt of the data.
● At the very least, the following data is required for sending:
– IP address of communications partner
– "Own" port number
– Port number of communications partner
● UDP is not a secured transfer protocol. You must program feedback concerning the
success of data transmission in the user program yourself.
Communication
System Manual, 11/2010
177
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
Data exchange between user program and UDP stack
The following figure shows the UDP communication model at the SIMOTION end.
3RUW[
6RFNHW[
8'36WDFN
BXGS6HQG
BXGS5HFHLYH
8VHUSURJUDP
Figure 5-8
Data exchange between user program and UDP stack
With UDP communication, the useful data received is buffered in the UDP stack and must be
read out from here by the application. The size of the buffered useful data per connection
depends on the control involved. If the receive buffer is not read out in good time, the UDP
message frames received will be lost.
Table 5- 17
Useful data and control
Control
Buffered useful data in bytes
SIMOTION
1,470 (SIMOTION V4.1 SP4 and higher)
1,400 (up to SIMOTION V4.1 SP4)
SIMATIC
Up to 2,048
(depending on CPU and communication via
Ethernet CP or integrated Ethernet interface)
Communication
178
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
5.4.2
SIMOTION system functions for UDP communication
5.4.2.1
Overview of SIMOTION system functions
Function call
The SIMOTION UDP system functions may only be called in the BackgroundTask or in a
MotionTask.
Data is sent via _udpSend(). If data is to be received on the SIMOTION side, the
_udpReceive() function is used. The sections that follow describe the functions.
Note
To ensure reliable cyclic communication, you should use standard mechanisms such as
those found in PROFIBUS DP or PROFINET IRT systems.
See also
_udpSend() system function (Page 179)
_udpReceive() system function (Page 180)
_udpAddMulticastGroupMembership() system function (Page 181)
_udpDropMulticastGroupMembership() system function (Page 182)
5.4.2.2
_udpSend() system function
Overview
The _udpSend() system function is used for sending data.
Table 5- 18
Call example
i32RetValue :=_udpSend(
sourcePort
:=
,destinationAddress :=
,destinationPort
:=
,communicationMode :=
,dataLength
:=
,data
:=
);
3456
au8DestinationAddress
u16DestinationPort
CLOSE_ON_EXIT
u32DataLength
ab8SendData
//UINT, 1024 - 65535
//ARRAY[0..3] OF USINT
//UINT, 1024 - 65535
//EnumUdpCommunicationMode
//UDINT
//ARRAY[0..1469] OF BYTE
When the _udpSend() function is called, the local port is transferred for the sourcePort
parameter. The destinationAddress parameter is the IP address which is transferred in an
array. The IP address can be configured and read out in HW Config.
Communication
System Manual, 11/2010
179
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
The port of the communications partner is transferred as the destinationPort.
The user can use communicationMode to specify whether the communication resources are
to be released after sending (CLOSE_ON_EXIT) or not released after sending
(DO_NOT_CLOSE_ON_EXIT).
The datalength and data parameters specify the data length to be sent or the area where
the send data is stored.
The status of the send job can be checked via the return value of the function.
Note
Up to SIMOTION 4.1 SP4, the length of the send data (data) was limited to 1,400 bytes.
5.4.2.3
_udpReceive() system function
Overview
The _udpReceive() system function is called for receiving data.
Table 5- 19
Call example
sRetValueUdpReceive :=_udpReceive(
port
:= 3456
,communicationMode := CLOSE_ON_EXIT
,nextCommand
:= IMMEDIATELY
,receiveVariable
:= ab8ReceiveData
);
//UINT, 1024 - 65535
//EnumUdpCommunicationMode
//EnumNextCommandMode
//ARRAY[0..1469] OF BYTE
When the function is called, the local port is transferred for the port parameter.
In this case too, the user can use communicationMode to specify whether the
communication resources are to be released after reception (CLOSE_ON_EXIT) or not
released after reception (DO_NOT_CLOSE_ON_EXIT).
The behavior of this function with respect to the advance when called is parameterized with
the nextCommand parameter. There are three setting options for this parameter:
IMMEDIATELY, WHEN_COMMAND_DONE, and ABORT_CURRENT_COMMAND. With the
first two values advance is either immediate or after completion of the command. With the
third value, if the same port number as in the previous function call is transferred, the active
function is aborted.
The receiveVariable parameter specifies the buffer in which the receive data is stored.
When the _udpReceive() system function is called, the structure returned to the user
program contains the following parameters. The call status of the receive function can be
queried in the functionResult parameter.
The sourceAddress parameter is an array that contains the IP address. The sourcePort
parameter of the structure also contains the local port.
Communication
180
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
The number of received useful data bytes after a successful call of the _udpReceive()
system function can be read out in the dataLength parameter.
Note
Up to SIMOTION 4.1 SP4, the length of the receive data (receiveVariable) was limited to
1,400 bytes.
5.4.2.4
_udpAddMulticastGroupMembership() system function
Overview
This function is used to join a multicast group on a selected Ethernet interface.
A maximum of three multicast groups can be created on an Ethernet interface. These can
occupy the same port or different ports.
myRetDINT :=
_udpAddMulticastGroupMembership(
multicastIPAddress :=
,interfaceIPAddress :=
,multicastPort :=
// ,multicastTTL := 1
// ,multicastLOOP := 1
,nextCommand :=
);
Note
In the case of UDP multicast communication, the _multicastPort must correspond to the
sourcePort for function _udpSend().
Note
The UDP multicast functions (_updAddMulticastGroupMembership(),
updDropMulticastGroupMembership()) can only be used on Ethernet interfaces. PROFINET
interfaces are not supported.
Communication
System Manual, 11/2010
181
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
5.4.2.5
_udpDropMulticastGroupMembership() system function
Overview
This system function is used to exit a multicast group on a selected Ethernet interface.
myRetDINT :=
_udpDropMulticastGroupMembership(
multicastIPAddress :=
,interfaceIPAddress :=
,multicastPort :=
,nextCommand :=
);
Note
The UDP multicast functions (_updAddMulticastGroupMembership(),
updDropMulticastGroupMembership()) can only be used on Ethernet interfaces. PROFINET
interfaces are not supported.
5.4.3
SIMATIC communication blocks, onboard Ethernet interface
5.4.3.1
Overview of SIMATIC communication blocks
Overview
For UDP communication with a SIMATIC and its onboard Ethernet interfaces, the same
communication blocks are available as for TCP communication. You can find an overview in
the section titled Overview of SIMATIC communication blocks (Page 165).
The structure and parameterization of the UDT65 is described in detail below.
You can find a detailed explanation of parameterizing the UDT65 and the data block derived
from this in the section titled UDT65 structure and parameterization (Page 166). The Value
for UDP column contains the required settings for UDP configuration. The only feature that
does not exist with UDP is the distinction between active and passive connection
establishment. Therefore, the active_est parameter is set to FALSE.
See also
Description of communication blocks (Page 168)
Communication
182
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
5.4.4
SIMATIC communication blocks for Ethernet CP
5.4.4.1
Overview of S7 communication blocks, UDP
Overview
The functions used for this application are the same as the S7 functions that have already
been described (see Overview of SIMATIC communication blocks (Page 171)).
The sequence of configuration steps for UDP communication is similar to the one for TCP
communication. UDP-specific parameters only need to be selected when configuring a
connection in NetPro. Additionally, there is no need to define active or passive connection
establishment.
Note
For the CP 300, the maximum send and receive length per function call (AG_SEND and
AG_RECV) is 2,048 bytes.
The AG_SEND and AG_RECV functions can also be used for the CP 400. However, the
transferable data length in this case is generally limited to <= 240 bytes per job.
Communication
System Manual, 11/2010
183
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
5.4.4.2
Ethernet CP configuration
Specific configuration settings for UDP communication
The configuration process is similar to the one for TCP. The following section only describes
the differences between the two configuration processes; therefore, please make sure you
take note of the one for TCP too (see Ethernet CP configuration (Page 172)).
1. The desired connection type UDP connection is selected in the Connection field.
Figure 5-9
"Insert New Connection" dialog box with selected UDP connection
2. In the Block parameters field on the General tab, the ID and LADDR parameters for the
S7 communication blocks can be used. ID assigns the communication connection a
unique reference. Additionally, the address of the CP is specified as "LADDR".
Communication
184
System Manual, 11/2010
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
Figure 5-10
"Properties - UDP Connection" dialog box - "General" tab
Communication
System Manual, 11/2010
185
Ethernet: General information (TCP and UDP connections)
5.4 UDP communication
Communication
186
System Manual, 11/2010
Routing - communication across network boundaries
6.1
6
What does routing mean?
Routing is the transfer of information from Network x to Network y.
There is a fundamental difference between intelligent, self-learning routing (e.g. IP routing in
the Internet) and routing according to previously specified routing tables (e.g. S7 routing).
IP routing
IP routing is a self-learning routing procedure (which can also be performed manually), used
exclusively in Ethernet communication networks which operate with the IP protocol, such as
the Internet.
The function is performed by special routers that pass on the information to adjacent
networks based on the IP address, when the IP address is not detected in the own network.
Note
IP routing is NOT supported by SIMOTION. It is possible to have S7 routing between the
Ethernet interfaces.
S7 routing
S7 routing is a routing procedure based on previously configured routing tables, but which
can also exchange information between different communication networks, e.g. between
Ethernet, PROFIBUS and MPI. These routing tables can be created as interconnection
tables in NetPro.
S7 routing does not work with the IP address, but with the so-called subnet IDs within the S7
protocol.
● Information transfer from Ethernet to MPI and vice versa
● Information transfer from Ethernet to PROFIBUS and vice versa
● Information transfer from MPI to PROFIBUS and vice versa
● Information transfer from Ethernet to Ethernet (SIMOTION V4.1.2 or higher, including
PROFINET; CP343, CPU 315-2 PN/DP...)
Communication
System Manual, 11/2010
187
Routing - communication across network boundaries
6.2 Configuration of S7 routing
CIDR Classless Inter-Domain Routing
Classless Inter-Domain Routing (CIDR) describes a process for a more efficient use of the
existing 32-bit IP address space (IPv4). It was introduced to reduce the size of routing tables
and utilize the available address areas more effectively. The CIDR (Classless Inter-Domain
Routing) function includes subnetting and supernetting.
Note
CIDR is supported by all SIMOTION devices. In the case of SIMATIC devices, please refer
to the notes in the manuals.
PG / PC assignment
Modification of the PG assignment may be required for S7 routing. You can do this now in
the toolbar in SIMOTION SCOUT above the Assign PG button. This calls the properties
window for PG assignment, where you modify the assignment and "activate" it (S7ONLINE
access).
Note
You will find further notes on Ethernet/PROFINET and the settings required for routing in the
SIMOTION SCOUT Overview of Service and Diagnostics Options product information as
well as in the online help on this topic.
6.2
Configuration of S7 routing
S7 routing is configured in STEP 7 / SIMOTION SCOUT with the aid of the "NetPro" network
configuration.
All stations contained in the network configuration can exchange information between one
another. Connection tables must be created in NetPro for this purpose. The required routing
tables are automatically generated during the compilation of the project, but must then be
loaded to all the participating stations.
Communication
188
System Manual, 11/2010
Routing - communication across network boundaries
6.3 Routing for SIMOTION
6.3
Routing for SIMOTION
With routing you can, for example, access devices connected to subnets ONLINE via a
PG/PC. S7 routing is supported by SIMOTION, i.e. information (engineering accesses) can
be routed by a SIMOTION device from higher-level networks such as Ethernet and MPI to
lower-level networks such as PROFIBUS or PROFINET/Ethernet (4.1.2 and higher).
Boundary conditions
The following boundary conditions must be taken into account in the "DP slave" mode when
routing information on an isochronously operated PROFIBUS.
● The functions "Equidistant bus cycle" (requirement for isochronous applications) and
"Active station" (requirement for routing to a lower-level network segment) mutually
exclude each other.
● It is not possible to operate an active I slave on the isochronous bus.
Figure 6-1
DP slave mode: Active station: Testing, commissioning, routing
Communication
System Manual, 11/2010
189
Routing - communication across network boundaries
6.4 Routing with SIMOTION D (example of D4x5 with CBE30)
The "Programming, status/control or other PG functions …" check box must be activated if,
for example, you frequently want to perform PG functions required for commissioning and
testing via this interface, or if you want to access (S7 routes) SINAMICS drives on the
cascaded, lower-level DP master interface of the SIMOTION with PG functions (e.g. Starter).
If the "Programming, Status/Force or other PG functions..." option is activated, the interface
becomes the active node on the PROFIBUS (i.e. the interface participates in the token
rotation of the routing PROFIBUS). The following functions are then possible:
● Programming (e.g. loading)
● Test (status/control)
● S7 routing (I-slave as gateway)
The bus cycle time can be prolonged. Therefore, this option should not be activated for timecritical applications and when S7 routing and the client functionality are not required for the
communication.
Note
When the "Programming, Status/Force or other PG functions …" check box is not activated,
the interface only operates as a server for cyclic data, i.e. S7 routing is not possible.
6.4
Routing with SIMOTION D (example of D4x5 with CBE30)
Routing between the different interfaces
The two standard Ethernet interfaces X120 and X130 of the SIMOTION D each form a
separate subnet, all ports on the CBE30 also form a common subnet.
● Routing from subnet to subnet (IP routing) is not supported. You can use an external IP
router for this
● The S7 routing from a PROFINET/Ethernet subnet to a PROFIBUS is possible.
There are three options for connecting a PG/PC or HMI via S7 routing to a SIMOTION D with
CBE30.
Note
The Ethernet interfaces X120 and X130 and the CBE30 must be in different subnets for S7
routing.
Communication
190
System Manual, 11/2010
Routing - communication across network boundaries
6.4 Routing with SIMOTION D (example of D4x5 with CBE30)
Engineering system to PROFINET (CBE30)
Figure 6-2
Example for PG/PC to CBE30
● S7 routing to the (master) PROFIBUS interfaces (only if configured)
● S7 routing to PROFIBUS Integrated
● S7 routing to the standard Ethernet interfaces ET1/ET2 (X120, X130) (V4.1.2 and higher)
● Access to the components on the same subnet (CBE30) via the switch functionality
Communication
System Manual, 11/2010
191
Routing - communication across network boundaries
6.4 Routing with SIMOTION D (example of D4x5 with CBE30)
Engineering system / HMI to PROFIBUS
Figure 6-3
Example for PG/PC to PROFIBUS
● S7 routing to the other (master) PROFIBUS interfaces (only if configured)
● S7 routing to PROFIBUS Integrated
● S7 routing to X1400 on the CBE30
● S7 routing to the standard Ethernet interfaces (X120, X130) (V4.1.2 and higher)
● Access to nodes on the same network, e.g. HMI
Communication
192
System Manual, 11/2010
Routing - communication across network boundaries
6.5 Routing with SIMOTION D4x5-2 (example of D455-2 DP/PN)
Engineering system / HMI to Ethernet
Figure 6-4
Example for PG/PC to Ethernet X120, X130
● S7 routing to the other (master) PROFIBUS interfaces (only if configured)
● S7 routing to PROFIBUS Integrated
● S7 routing to X1400 on the CBE30
● S7 routing between the Ethernet interfaces
● Access to nodes on the same network, e.g. HMI
6.5
Routing with SIMOTION D4x5-2 (example of D455-2 DP/PN)
Routing between the different interfaces
The two Ethernet interfaces of the D4x5-2 DP/PN (X127 P1 or X130 P1) each form a
separate subnet.
The D4x5-2 DP/PN onboard PROFINET IO interface (X150, P1-P3) also forms a separate
subnet. All ports of a PROFINET IO interface always belong to the same subnet.
● Routing from subnet to subnet (IP routing) is not supported. You can use an external IP
router for this
● S7 routing from a PROFINET/Ethernet subnet to PROFIBUS is possible.
There are therefore the following options for connecting a PG/PC or HMI device to a
SIMOTION D using S7 routing.
Communication
System Manual, 11/2010
193
Routing - communication across network boundaries
6.5 Routing with SIMOTION D4x5-2 (example of D455-2 DP/PN)
Engineering system / HMI to PROFINET
Figure 6-5
Example of PG/PC to PROFINET interface (PNxIO, X150)
● S7 routing to the (master) PROFIBUS interfaces (only if configured)
● S7 routing to the PROFIBUS Integrated
● S7 routing to the Ethernet interfaces PN/IE (X127 P1) and PN/IE-NET (X130 P1)
● Access to the components on the same subnet via the switch functionality of the
PROFINET IO interface
Communication
194
System Manual, 11/2010
Routing - communication across network boundaries
6.5 Routing with SIMOTION D4x5-2 (example of D455-2 DP/PN)
Engineering system / HMI to PROFIBUS
Figure 6-6
Example of PG/PC to PROFIBUS interface (DP, X126)
● S7 routing to the other (master) PROFIBUS interfaces (only if configured)
● S7 routing to the PROFIBUS Integrated
● S7 routing to the onboard PROFINET IO interface (X150, P1-P3)
● S7 routing to the Ethernet interfaces PN/IE (X127 P1) and PN/IE-NET (X130 P1)
Communication
System Manual, 11/2010
195
Routing - communication across network boundaries
6.6 Routing for SIMOTION D to the SINAMICS integrated
Engineering system / HMI to Ethernet
Figure 6-7
Example of PG/PC to Ethernet interface (PNxIE, X127)
● S7 routing to the other (master) PROFIBUS interfaces (only if configured)
● S7 routing to the PROFIBUS Integrated
● S7 routing to the onboard PROFINET IO interface (X150, P1-P3)
● S7 routing between the Ethernet interfaces
6.6
Routing for SIMOTION D to the SINAMICS integrated
S7 routing to the internal PROFIBUS on SINAMICS Integrated
All SIMOTION D have an integrated SINAMICS drive control. In order to be able to access
drive parameters, the telegrams must be routed from the external SIMOTION D interfaces to
the internal PROFIBUS DP. S7 routing can be used to access the integrated PROFIBUS.
Here, the internal PROFIBUS DP forms a separate subnet. This must be especially taken
into account for the communication to several routing nodes.
Communication
196
System Manual, 11/2010
Routing - communication across network boundaries
6.7 Routing for SIMOTION P350
6.7
Routing for SIMOTION P350
Description
S7 routing is possible:
● From PROFIBUS (IsoPROFIBUS board) on PROFINET subnet to MCI-PN board
● From PROFINET subnet to MCI-PN board on PROFIBUS (IsoPROFIBUS board)
● From SCOUT on SIMOTION P via softbus through the runtime on PN devices to the MCIPN board and IsoPROFIBUS board
● From onboard Ethernet interfaces on PROFIBUS (IsoPROFIBUS board) and on
PROFINET
● S7 routing between the Ethernet interfaces
IP routing is not possible via the P350 Ethernet interfaces.
Routing from PROFIBUS to PROFINET
Figure 6-8
Example for P350 routing from PROFIBUS to PROFINET
Communication
System Manual, 11/2010
197
Routing - communication across network boundaries
6.7 Routing for SIMOTION P350
Routing from PROFINET on PROFIBUS
Figure 6-9
Example for P350 routing from PROFINET to PROFIBUS
Communication
198
System Manual, 11/2010
Routing - communication across network boundaries
6.8 Routing for SIMOTION P320
6.8
Routing for SIMOTION P320
Description
S7 routing is possible:
● From the onboard Ethernet interface to the PROFINET subnet and the drive units or
SIMOTION devices on the PROFINET subnet
Routing from Ethernet to PROFINET
Figure 6-10
Routing for SIMOTION P320
Communication
System Manual, 11/2010
199
Routing - communication across network boundaries
6.8 Routing for SIMOTION P320
Communication
200
System Manual, 11/2010
7
SIMOTION IT
7.1
SIMOTION IT - overview
Description
SIMOTION IT offers the option of accessing the SIMOTION control via standard web
services (HTTP).
This provides the following advantages.
● Location-independent open diagnosis / process monitoring
● Client device independent of the operating system (Windows, Linux, ...)
● Standardized communication interface for manufacturer-specific tools
● Independent of engineering system
● No version conflict between client application and SIMOTION RT (runtime)
● Series commissioning without engineering system
Figure 7-1
SIMOTION IT overview
SIMOTION IT consists of the following function packages:
● SIMOTION IT DIAG
● SIMOTION IT OPC XML DA
● Trace via SOAP
Communication
System Manual, 11/2010
201
SIMOTION IT
7.2 Web access to SIMOTION
● File download using FTP (File Transfer Protocol)
● SIMOTION IT Virtual Machine
Further references
A detailed description of the SIMOTION IT products can be found in theSIMOTION IT
Ethernet-based HMI and Diagnostic Functions product information on the SIMOTION
SCOUT Documentation DVD.
You will find further information on SIMOTION VM in the SIMOTION – IT Virtual Machine
Programming Manual.
See also
Web access to SIMOTION (Page 202)
SIMOTION IT DIAG (Page 203)
SIMOTION IT OPC XML DA (Page 205)
7.2
Web access to SIMOTION
Description
The following figure shows the various possibilities to access the data in a SIMOTION
module.
6WDQGDUGDSSOLFDWLRQ
6,027,21,7',$*
>%[email protected]
0DFKLQHVSHFLILF
$SSOLFDWLRQ
6,027,21,723&;0/'$
FOLHQW
3URGXFWVSHFLILF
DSSOLFDWLRQ>6&[email protected]
3URMHFWGDWD
+773SURWRFRO
+70/IRUPDW
6\PEROLFDGGUHVVHV
+773SURWRFRO
62$3IRUPDW
6\PEROLFDGGUHVVHV
6SURWRFRO
6IRUPDW
3K\VLFDODGGUHVVHV
23&;0/'$VHUYHU
+70/VHUYHU
5XQWLPHGDWD
3URMHFWGDWD
,FRQV
6SURWRFRO
6IRUPDW
'DWDEORFNV
6,027,2157
Figure 7-2
Access to SIMOTION
Communication
202
System Manual, 11/2010
SIMOTION IT
7.3 SIMOTION IT DIAG
See also
SIMOTION IT DIAG (Page 203)
SIMOTION IT OPC XML DA (Page 205)
7.3
SIMOTION IT DIAG
Description
SIMOTION IT DIAG allows a PC to use any Internet browser to access the HTML pages in
SIMOTION.
Standard diagnostic pages
SIMOTION provides the following standard diagnostic pages:
● Start page
● Device Info/IP-Config
(information about the firmware, devices, device components, technology packages, and
data of the SIMOTION device Ethernet interface)
● Diagnostics
(CPU utilization, memory use, operating mode, display of task runtimes, trace for devices
and system, service overview)
● Message&Logs
(diagnostics buffer, SIMOTION alarms and drives, syslog and userlog)
● Machine Overview
(modules and topology of a machine as well as hardware configuration information)
● Manage Config
(loading IT DIAG configurations, device updates, saving device data)
● Settings
(setting the time zone, switching operating modes, changing the display of user-defined
pages)
● Files
(accessing the SIMOTION file system, uploading and downloading files, creating folders,
and storing additional data, e.g. documentation)
Simplified standard pages
To enable the best possible display of IT DIAG pages on devices such as cell phones or
PDAs, a set of special pages is provided for version 4.1.3 and higher. These contain a
simplified representation of information from the standard pages. The start page of the
simplified standard pages can be reached at the address http://<IPAddr>/BASIC.
Communication
System Manual, 11/2010
203
SIMOTION IT
7.3 SIMOTION IT DIAG
Configuration via WebCfg.xml
There are two files which can be used to configure IT DIAG:
● WebCfg.xml
● WebCfgFrame.xml
The WebCfg.xml configuration file is used to configure user-relevant settings in the web
server. The WebCfgFrame.xml file contains the manufacturer's IT DIAG settings.
User-defined pages
SIMOTION IT DIAG offers the option of integrating individually designed web pages. Two
mechanisms are available for accessing SIMOTION variables:
● JavaScript libraries opcxml.js and appl.js
● MiniWeb Server Language (MWSL)
User-defined pages can be displayed in the "User's Area". For this purpose, they must be
stored in the FILES folder of the SIMOTION file system.
Trace via SOAP
The WebTrace is identical to the SIMOTION SCOUT trace, with the only exception being
that the data format output is different.
The "Trace via SOAP" function package enables SIMOTION variables to be written to a
buffer. The values are packed in a file and can be retrieved asynchronously via an HTTP
request. This interface can only be used by client applications.
The trace can be parameterized via a web interface and the recording viewed immediately
using a TraceViewer.
Variable access
The variable access for the SIMOTION IT applications is implemented using a variable
provider. There are currently four variable providers.
● MiniWeb
● SIMOTION
● SIMOTION diagnostics
● UserConfig
This makes it possible to access the following variables:
● Device system variables
● TO system variables
● Global unit variables from the interface section
● TO configuration data
● Also global device variables and I/O variables as of 4.2
Communication
204
System Manual, 11/2010
SIMOTION IT
7.4 SIMOTION IT OPC XML DA
● Drive parameters
● Setting of the operating mode, execute RamToRom, execute ActiveToRom
● Technological alarms
● Diagnostics buffer
Secure HTTPS connection
The Secure Socket Layer protocol (SSL) enables encrypted data transmission between a
client and the SIMOTION device. The Secure Socket Layer protocol forms the basis for
HTTPS access. Encrypted access can take place via both SIMOTION IT OPC XML DA and
SIMOTION IT DIAG.
7.4
SIMOTION IT OPC XML DA
Description
The SIMOTION IT OPC XML DA server enables access via Ethernet to data and operating
modes of the SIMOTION device. As of V4.2, a separate license is no longer required for
SIMOTION IT OPC XML DA.
OPC is the abbreviation for "OLE for Process Control" and describes a standard interface for
communication in automation systems. With OPC XML DA, it is possible to communicate
with a control using Ethernet-based standard message frames. Commands are transmitted
via the SOAP (Simple Object Access Protocol) communication protocol.
A customer-specific application created on a client PC, which, for example, is programmed
with the C#, Visual Basic, or Java programming language, uses the SIMOTION IT OPC XML
DA services and properties:
● Open communication using HTTP, SOAP, OPC XML between client and SIMOTION
device
● Uses the OPC XML DA 1.0 specification of the OPC Foundation
● Access to SIMOTION variables
– Reading/writing
– Cyclic reading subscriptions
– Browsing
● Trace using SOAP; this function is an extension of the OPC specification
● Clients on any hardware with various operating systems (Windows, Linux, etc.)
● Creating client applications using C#, Java, C++. You must implement the application that
you want to access on the SIMOTION OPC XML DA server yourself.
● Access protection with user groups, user ID, and password
The following figure is a schematic representation of access to the OPC XML DA server.
Communication
System Manual, 11/2010
205
SIMOTION IT
7.5 FTP data transfer
&OLHQWDSSOLFD
WLRQ
RSF[POZVGO
5HTXHVW5($'
WR$[LVBPRWLRQ6WDWH'D
WDDFWXDO9HORFLW\
5HVSRQVHಯಯ
6,027,21
5XQWLPH
6\VWHP
8QLWYDULDEOH
6\VWHP9DU
7RYDULDEOH
23&;0/'$
VHUYHU
'LDJQRVWLFYDU
ZHEFIJ[PO
Figure 7-3
7.5
Access to the OPC XML DA server
FTP data transfer
File access using FTP
You can use the FTP server of the SIMOTION control to access the SIMOTION file system
specifically. FTP is protected through access protection.
You can use FTP, for example, to perform firmware updates or load user-defined pages.
The FTP service does not require its own license.
Communication
206
System Manual, 11/2010
8
PROFIsafe
8.1
Communication relationships for drive-based safety
Description
The drive-based safety functions in the drive can be controlled either by using safe terminals
directly on the drive or from a fail-safe control (F control) via PROFIBUS/PROFINET.
The control signals for the drive-based safety functions, as well as the feedback relating to
the safety function status, are safety-oriented and must be transmitted via a communication
channel that is secured by means of the PROFIsafe protocol. The figure below contains a
diagram providing a general overview of how interaction between the various control and
drive processes works, as well as the communication relationships between them that are
required for this purpose.
6LJQDOIORZIRUVHOHFWLQJDQGGHVHOHFWLQJWKHGULYHEDVHGVDIHW\IXQFWLRQV
DQGWKHLUVLJQDOLQJWRWKHGULYHFRQWUROSURFHVV
)DLOVDIHFRQWURO
SURFHVV
)HHGEDFNVWDWXVRI
VDIHW\IXQFWLRQV
'ULYHFRQWURO
SURFHVV
6HOHFWLRQRIVDIHW\
IXQFWLRQV
'ULYH6DIHW\
3URFHVV
,QIRUPDWLRQDERXW
DFWLYHDQGDFWLYDWHG
VDIHW\IXQFWLRQV
'ULYHFRQWUROYLD
VWDQGDUGWHOHJUDP
'ULYHಭ&RQWURO
3URFHVV
'ULYHD[LV352),GULYH'2
$PHQGPHQW352),GULYHRQ352),VDIH
352),GULYHSURILOH
5HOHYDQWVWDQGDUGL]DWLRQGRFXPHQWVIRUDGGLWLRQDOLQIRUPDWLRQ
Figure 8-1
Communication relationships for drive-based safety
The "drive safety process" interfaces to the F control and drive control are PROFIdrive
interfaces; their functions are defined in /1/ and /2/.
Communication
System Manual, 11/2010
207
PROFIsafe
8.1 Communication relationships for drive-based safety
The F control introduces and monitors a drive-based safety function via the PROFIsafesecured transmission channel between the F control and the drive (drive axis). The
respective statuses of the drive-based safety functions in the drive also have repercussions
on the drive interface to the drive control, since the drive priority switches between the drive
control and drive safety process in the case of some drive-based safety functions.
In order for the F control and drive control to be coordinated effectively, therefore, an
information channel from the "drive safety process" to the drive control is also required so
that the drive control can respond to the required or activated drive-based safety functions
accordingly.
Communication
208
System Manual, 11/2010
PROFIsafe
8.2 Message frames and signals in drive-based safety
8.2
Message frames and signals in drive-based safety
Description
Since SIMOTION does not have a safe logic function, it cannot attend to the F control
process. Instead, this is carried out using a second controller featuring F functionality
(usually a SIMATIC F-CPU). The image below shows how this setup works, using the
example of a SINAMICS axis. A PROFIsafe-secured communication channel runs between
the DO drive and the SIMATIC F-CPU. Standard message frame 30, consisting of a safety
control word and status word (among other things), is normally available for this
communication channel. With the user program on the F-CPU, the safety control word is
used to select or deselect the configured drive-based safety functions in the drive (drive
safety process). The feedback from the active safety functions is sent in the input data to the
F-CPU, via the safety status word. A safe process in the drive is used to send the feedback
from the active safety functions via a secured communication channel; therefore, the
feedback may be used for activating protection zones and doors via the F-CPU.
6LJQDOIORZIRUVHOHFWLQJGHVHOHFWLQJGULYHEDVHGVDIHW\IXQFWLRQVDQGVLJQDOLQJ
RIWKHVHWRWKH6,027,21XVHUSURJUDPRU,32
6,027,21
)3/&
6,0$7,&
)&38
6,027,2183
,32
352),VDIHGULYHU
6DIHW\PHVVDJHIUDPH
6,'%
6WDQGDUGPHVVDJHIUDPH;
6,'%
352),VDIHGULYHU
'ULYHVDIHW\SURFHVV
'ULYHFRQWURO
SURFHVV
'ULYHD[LV6,1$0,&6'2
YLDPHVVDJHIUDPHH[WHQVLRQ
Figure 8-2
Telegrams and signals in drive-based safety
Communication
System Manual, 11/2010
209
PROFIsafe
8.3 SIMOTION F proxy functions
In addition to controlling safety functions in the drive via the PROFIsafe channel, you have
the option of transmitting statuses and activation states of the drive-based safety functions
from the drive to SIMOTION via a safety information channel (SIDB Safety Data Block). This
information channel is not secured and is implemented in practice by extending the standard
message frame to include the SIDB data block. The purpose of the safety information
channel is to provide the option of integrating the drive motion control (IPO, SERVO) and the
entire user program (UP) into the higher-priority execution of both drive-based safety
functions and the F-control user program. Typical SIMOTION responses are, for example:
● Recognition of safety-related, autonomous handling of the drive (e.g. braking ramp for
SS1 and SS2, and switching to follow-up mode)
● Recognition that a safety function has been selected, and the associated programmed
SIMOTION response to the selected safety function (e.g. control-based braking ramp with
reduction in velocity for SOS and SLS)
8.3
SIMOTION F proxy functions
Description
SIMOTION features integrated F-Proxy functionality for the purpose of PROFIsafe
connection of integrated SIMOTION D drives, as well as SINAMICS drives that are
controlled by SIMOTION but are in a different communication domain from the F-CPU, for
example. The F proxy functionality enables transparent routing of safety message frames
from the SIMOTION I slave or I device interface to the respective SIMOTION master or
controller interface on which the drive is configured. Despite the SIMOTION routing function,
PROFIsafe communication between the F-CPU and drive is secured, as the PROFIsafe
drivers in the end points (F-CPU, drive) monitor communication securely.
In order to use F proxy functionality, the two paths of communication - from the F-CPU to
SIMOTION and from SIMOTION to the drive - need to be configured separately.
Communication
210
System Manual, 11/2010
PROFIsafe
8.3 SIMOTION F proxy functions
)3/&
6,0$7,&
)&38
6LJQDOIORZIRUVHOHFWLQJDQGGHVHOHFWLQJGULYHEDVHG
VDIHW\IXQFWLRQVDQGVLJQDOLQJRIWKHVHWRWKH
6,027,21XVHUSURJUDPRU,32
352),VDIHGULYHU
6DIHW\PHVVDJH
IUDPH
6,027,21
6,027,21
)3UR[\
6DIHW\PHVVDJH
IUDPH
6,027,2183
,32
6WDQGDUGPHVVDJHIUDPH;
6,'%
6,'%
352),VDIHGULYHU
'ULYHVDIHW\SURFHVV
'ULYHFRQWURO
SURFHVV
'ULYHD[LV6,1$0,&6'2
YLDPHVVDJHIUDPHH[WHQVLRQ
Figure 8-3
Routing the PROFIsafe channel with F proxy functionality
Communication
System Manual, 11/2010
211
PROFIsafe
8.4 PROFIsafe properties for configuration
8.4
PROFIsafe properties for configuration
Mechanisms with PROFIsafe
Basically the PROFIsafe can communicate both via PROFINET and PROFIBUS. F-Proxy
mechanisms and/or a data exchange broadcast variant are available for this purpose.
For all the mechanisms, the F data is managed by the F-CPU and the Motion Control data
by the SIMOTION CPU. The PROFIsafe properties required are set in the HW Config for the
failsafe parameters.
Note
For SIMOTION projects (RT version) < V4.2, secured PROFIsafe communication is only
possible via PROFIBUS. Therefore, with SIMOTION devices < V4.2 with PROFIBUS and
PROFINET interfaces, you can only implement PROFIsafe via the PROFIBUS interface and
the Motion Control tasks (for example) via the PROFINET interface. However, mixed
operation (Motion Control via PROFINET and PROFIsafe via PROFIBUS) is only possible
with integrated SIMOTION D drives. It is not permissible if you are using external drives
(e.g. S120 CU320-2) on a SIMOTION CPU.
Communication
212
System Manual, 11/2010
PROFIsafe
8.4 PROFIsafe properties for configuration
Overview of failsafe parameters for PROFIsafe during configuration
To access the PROFIsafe dialog box, double-click the PROFIsafe entry in the drive rack in
HW Config.
Figure 8-4
Properties of PROFIsafe taking the example of I device failsafe proxy
Communication
System Manual, 11/2010
213
PROFIsafe
8.4 PROFIsafe properties for configuration
F_CRC_Length and F_Par_Version
Identifies not only the length of the failsafe useful data but also the PROFIsafe MODE.
● PROFIsafe V1-MODE
F_CRC_Length = 2 to useful data length of 12 bytes
F_CRC_Length = 3 from useful data length of 13 bytes
F_Par_Version = 0
● PROFIsafe V2-MODE
F_CRC_Length = 3 to useful data length of 12 bytes
F_CRC_Length = 4 from useful data length of 13 bytes
F_Par_Version = 1
Note
PROFIsafe V2 mode is not supported by all devices and/or firmware versions. Before
configuration, find out which mode is available as of which version.
SINAMICS G120 CU240D DP F and SINAMICS G120 CU240S DP F only support V2
mode as of firmware version V3.2.
F_Dest_Add: 1-65534
F_Dest_Add determines the PROFIsafe destination address of the drive object.
Any value within the range is allowed, although it must be manually entered again in the
Safety configuration of the drive in the SINAMICS drive unit and/or entered when configuring
Safety Integrated (drive parameters p9610/p9810).
F_WD_Time: 10- 65535
A valid current safety telegram must be received from the F-CPU within the monitoring time.
The drive will otherwise switch to the safe state.
The monitoring time should be of sufficient length to ensure not only that the communication
functions tolerate message time delays, but also that the fault response is triggered as
quickly as possible if a fault occurs (e.g. interruption of the communication connection).
For additional information on F Parameters, refer to the online help of the PROFIsafe dialog
box.
Communication
214
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5
PROFIsafe via PROFINET
8.5.1
Principles of I device failsafe proxy
Short description
Using the I device F-Proxy you can produce a PROFIsafe configuration with an F host (FCPU SIMATIC) on PROFINET with SIMOTION devices (SIMOTION D, SIMOTION P,
SIMOTION C) for the lower-level drives. The routing of cyclic PROFIsafe data to SINAMICS
Integrated and SINAMICS drives on external PROFIBUS or PROFINET is therefore
possible.
A failsafe host communicates with the drives via the I device interface and an F-Proxy of a
SIMOTION CPU. These drives may be located on PROFIBUS DP external, PROFIBUS DP
integrated and the PROFINET IO system of the SIMOTION CPU. The SIMOTION CPU's
communication segments feature SINAMICS S120/S110, incl. SINAMICS
Integrated/CX32/CX32-2 and G120.
The higher-level project with the F-CPUs is the master project. There may be several FCPUs in the master project. The lower-level projects with SIMOTION CPUs are designated
as subprojects. All F slaves of all segments (PROFIBUS/PROFINET) which originate from
SIMOTION are mapped by the F-Proxy as n F submodules in an F-Proxy module.
During configuration, a failsafe I device is produced as a substitute of a SIMOTION device
with drives and imported into the F-CPU master project.
6,0$7,&)&38
6,027,21'31
ZLWK6,1$0,&6BLQWHJUDWHG
Figure 8-5
6,1$0,&6&8
6,1$0,&6&8
Example topology for F-CPU master with SIMOTION D and lower-level drives
Communication
System Manual, 11/2010
215
PROFIsafe
8.5 PROFIsafe via PROFINET
Module/submodule structure
The submodules of the drive with the safety message frame are mapped to submodules of
the PROFINET I device interface, regardless of whether the drive is connected to SIMOTION
via PROFIBUS, integrated PROFIBUS, or PROFINET.
With an I device failsafe proxy, all failsafe proxy submodules of a SIMOTION device are
depicted in one single module (module 2).
The diagram below shows an F-CPU as the master, to which a SIMOTION with integrated
and lower-level drives is subordinate.
)&386,0$7,&
0HVVDJHIUDPH
0RGXOH
0RGXOH
6XEPRGXOH
6XEPRGXOH
6XEPRGXOH
6XEPRGXOH
6XEPRGXOH
,GHYLFH)3UR[\
LQWHUIDFH
0HVVDJHIUDPH
0HVVDJHIUDPH
'ULYHREMHFW
LQWHJUDWHG
'ULYHREMHFW
LQWHJUDWHG
6,027,21
Figure 8-6
8.5.2
0HVVDJHIUDPH 0HVVDJHIUDPH
/RZHUOHYHOGULYHV
'ULYHREMHFW
'ULYHREMHFW
6
0HVVDJHIUDPH
'ULYHREMHFW
*
Master project with a sub-project as the I device failsafe proxy
Supported devices and software requirements for I device failsafe proxy
Software requirement
● Step7 V5.5 or higher
● SINAMICS S120, V2.6 or higher
● SINAMICS G120, V3.2 or higher
● SIMOTION, V4.2 or higher
Communication
216
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
● S7 F Configuration Pack, V5.5 SP7 or higher (if using Safety/PROFIsafe)
● Valid from PROFIsafe V2
Supported devices
Drive units
● SINAMICS Integrated
● SINAMICS Controller Extension (CX32, CX32-2)
● SINAMICS devices on lower-level PROFIBUS
● SINAMICS devices on lower-level PROFINET
Devices with I device failsafe proxy functionality
● SIMOTION D4xx, D4x5-2
● SIMOTION C240 PN
● SIMOTION P350-3, P320-3
● F-CPU V3.2 or higher
Table 8- 1
The table shows which SIMOTION devices support the I device F-Proxy and which
SINAMICS devices can be accessed via the I device F-Proxy.
Overview of devices capable of I device failsafe proxy functions
SIMOTION IO Controller V4.2
Controller Based
C240 PN
PC Based
P320-3
P350-3
Drive-based (blocksize)
D410 PN
Drive-based (booksize)
D425
D435
D445
D445-1
D445-2 DP/PN
D455-2 DP/PN
SINAMICS IO devices and DP slaves
S120 CX32
CX32
CX32-2
S120
CU320 DP
CU320 CBE20
CU320-2 DP
CU320-2 DP CBE20
CU310-2 DP
CU310 DP
CU310 PN
CU310-2 PN
CU320-2 PN
Communication
System Manual, 11/2010
217
PROFIsafe
8.5 PROFIsafe via PROFINET
Overview of devices capable of I device failsafe proxy functions
8.5.3
S110
CU305
CU305 PN
G120
CU240S PN F
CU240D PN F
Detailed description/properties of I device failsafe proxy
Specific properties of I device failsafe proxy
Acyclic services on I device failsafe proxy
The current I device interface does not support acyclic data transfer. The I device failsafe
proxy submodules do not have parameter access (Parameter Access Point PAP) and cannot
convey alarms.
If an alarm channel is to be used, the drive must be operated on PROFINET and directly
incorporated in SIMOTION and the F-CPU using the Shared Device function. Here the F
data of the F-CPU and the Motion Control data are managed by SIMOTION.
Supported telegrams
As a rule all PROFIsafe telegrams are supported. In V4.2 this is only telegram 30 and/or
telegram 900 for SINAMICS G120.
Isochronous mode
The F-Proxy submodules on the SIMOTION CPU are RT and can be operated nonisochronously.
Supported lower-level bus systems
Drives on PROFIBUS integrated, PROFIBUS external and PROFINET external are
supported. All these bus interfaces can also be routed via the I device failsafe proxy at the
same time.
Supported I device interfaces
All PROFINET-capable SIMOTION devices are supported.
Supported number of failsafe proxy submodules
A maximum of 128 I device submodules are supported. Of these, up to 64 submodules can
be used for Safety. The other 64 are available for standard IOs.
Reaction times - Transmission time for I device F-Proxy
If data is transmitted from the F-CPU via the I device F-Proxy, this extends the runtime for
the SINAMICS drives via the I device F-Proxy by a maximum of 2 servo cycle clocks per
transmit direction. Use the servo cycle clock of the lower-level system as the servo cycle
clock.
Communication
218
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5.4
Topology overviews I device F-Proxy
8.5.4.1
Topology for I device failsafe proxy for PROFIBUS drive units
Example of topology
The diagram below shows a topology in diagrammatic form in which the Safety drives are
connected to the SIMOTION CPU via PROFIBUS DP.
,VRFKURQRXVPRGHUHTXLUHG
,VRFKURQRXVPRGHQRWUHTXLUHG
0&
0RWLRQ
&RQWURO
)
)DLOVDIH
6W83 6WDQGDUGXVHUSURJUDP
)83
)DLOVDIHXVHUSURJUDP
6,0$7,&)&38
6W$:3
)$:3
,2&RQWUROOHU
352),1(7
)352;<
352),%86'3 '3,QWHJUDWHG
,QWHJUDWHG
RQO\LQWKHFDVHRI
6LPRWLRQ'
Figure 8-7
352),%86'3
)
0& )
0& )
0& )
&;
,QWHJUDWHG
0&
'30DVWHU
&8
0&
&8
6,027,21
,'HYLFH
Topology for I device failsafe proxy for PROFIBUS drive units
Communication
System Manual, 11/2010
219
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5.4.2
Topology for I device failsafe proxy for PROFINET drive units
Example of topology
The diagram below shows a topology in schematic form in which the Safety drives are
connected to the SIMOTION CPU via PROFINET and/or internally via PROFIBUS DP
Integrated.
,VRFKURQRXVPRGHUHTXLUHG
,VRFKURQRXVPRGHQRWUHTXLUHG
0&
0RWLRQ
&RQWURO
)
)DLOVDIH
6W83 6WDQGDUGXVHUSURJUDP
)83
)DLOVDIHXVHUSURJUDP
6,0$7,&)&38
6W$:3
)$:3
,2&RQWUROOHU
352),1(7
)352;<
352),%86'3 '3,QWHJUDWHG
,QWHJUDWHG
RQO\LQWKHFDVHRI
6LPRWLRQ'
,2&RQWUROOHU
352),1(7
Figure 8-8
0& )
0& )
&;
,QWHJUDWHG
0& )
0& )
&8
0&
&8
6,027,21
,'HYLFH
Topology for I device failsafe proxy for PROFINET drive units
Communication
220
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5.4.3
Topology for I device failsafe proxy for PROFIBUS and PROFINET drive units
Example of topology
The diagram below shows a topology in schematic form in which the Safety drives are
connected to the SIMOTION CPU via PROFINET and PROFIBUS DP.
,VRFKURQRXVPRGHUHTXLUHG
,VRFKURQRXVPRGHQRWUHTXLUHG
0&
0RWLRQ&RQWURO
)
)DLOVDIH
6W83 6WDQGDUGXVHUSURJUDP
)83
)DLOVDIHXVHUSURJUDP
6,0$7,&)&38
)83
6W83
,2&RQWUROOHU
352),1(7
352),1(7
,2&RQWUROOHU
Figure 8-9
&8
)
'30DVWHU
352),%86'3
)
0& )
&;
,QWHJUDWHG
0&
0&
0&
0& )
)
&8
'3,QWHJUDWHG
352),%86'3
,QWHJUDWHG
RQO\LQWKHFDVHRI
6LPRWLRQ'
)352;<
)
&8
0&
0&
&8
6,027,21
,'HYLFH
Topology for I device failsafe proxy for PROFIBUS and PROFINET drive units
Communication
System Manual, 11/2010
221
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5.5
Configuring I device failsafe proxy
8.5.5.1
Basic configuration process for I device failsafe proxy
Configuration requirements
A failsafe host communicates with the drives via the I device interface and an F-Proxy of a
SIMOTION CPU. These drives may be located on PROFIBUS DP external, PROFIBUS DP
integrated and the PROFINET IO system of the SIMOTION CPU.
Communication
222
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
Basic configuration process
&RQILJXUHZLWK
RUSURMHFWV
3URMHFWFRQWDLQV)KRVWDQG
6,027,21&38
3URMHFWVKRXOGFRQWDLQ)KRVW
3URMHFWVKRXOGFRQWDLQ6,027,21&38
&UHDWHRYHUYLHZGLDJUDPRIIDLOVDIHDGGUHVVHV)B'HVWB$GGDQG)B6RXUFHB$GG
IRUDOO,GHYLFH)3UR[\V7KHVHPXVWEHXQLTXHWKURXJKRXWWKHSURMHFW,Q+:
&RQILJ\RXFDQGHILQHDVWDUWDGGUHVVIRUWKH)DGGUHVVHVHJRURQ
WKH)3UR[\WDERIWKH3URSHUWLHVGLDORJER[IRUWKH&38
&RQILJXUH6,027,21&38&'[[RU3[[DQGWKHQ31,2FRQWUROOHULI
QHFHVVDU\
&RQILJXUH),2'3VODYHVDQG31,2GHYLFHVRQWKH6,027,21&38
6,1$0,&6HJ&8DQG&;PD\DOVREHSDUWRIWKH),2
&RQILJXUHGULYHREMHFWVIRU'3VODYHV31,2GHYLFHVXVLQJ6,027,216&287
&RQILJXUHPHVVDJHIUDPHVIRUWKHGULYHREMHFWVDVZHOODV352),VDIHPHVVDJH
IUDPHVXVLQJ6,027,216&287
$OLJQZLWK+:&RQILJ7KLVFUHDWHVWKH352),VDIHPRGXOHVLQ67(3
&RQILJXUH)SDUDPHWHUVIRUWKH352),VDIHPRGXOHV
,Q+:&RQILJLQVHUWWKH31,2FRQWUROOHU&%(0&,31%2$5'LQWKH
6,027,21&38LIQHFHVVDU\7KLVHQDEOHVWKHDFFHVVSRLQWWREHFRQILJXUHGIRU)
&RQILJXUHWKH),GHYLFHLQWHUIDFHDQG)3UR[\LQWKH31,2FRQWUROOHU
&UHDWH),GHYLFHH[SRUWDV*6'0/7KHH[SRUWHG,GHYLFHLVGLVSOD\HGLQWKH
+:&RQILJFDWDORJXQGHU3UHFRQILJXUHG6WDWLRQV
,QVHUW)KRVW6,0$7,&)&38
,PSRUW),GHYLFHDQGVHW)SDUDPHWHUVDW31,2V\VWHPRI
)KRVW
&DUU\RXW352),VDIHFRQILJXUDWLRQRIGULYHVLQ6&2876DIHW\FRQILJXUDWLRQ
)RSHUDWLRQ
Figure 8-10
Basic configuration process for I device failsafe proxy
Communication
System Manual, 11/2010
223
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5.5.2
Configuration example for SIMOTION D435 and SINAMICS S120 via PROFINET
Configuration example for I device failsafe proxy
In the example below, you will configure a SIMATIC F-CPU 317F-2PN/DP V3.2. In addition,
you will use a SIMOTION D435 with a SINAMICS S120 CU320 PN, which is connected to
the SIMOTION via the PN interface (CBE30). The exported I device F-Proxy of the lowerlevel SIMOTION CPU is then imported into the higher-level F-CPU. In the example, only one
project is used in the configuration represented.
Configuring an I device F-Proxy
1. Create an overview diagram with the F-CPU, SIMOTION CPU and the drives intended to
support PROFIsafe. In the example, there is just one SIMOTION CPU and a SINAMICS
S120. Enter the start addresses of the CPU and the required drives into this overview
diagram. The specified addresses are to be used later during configuration. The overview
diagram is only required for larger projects.
2. Create a new project in SIMOTION SCOUT.
You can find further information on configuration with PROFINET in Section Configuring
PROFINET IO with SIMOTION (Page 75).
3. Add a SIMOTION D435 V4.2. The check box Open HW Config must be activated. Click
OK to confirm. HW Config opens.
4. In HW Config, enter a start address for the F addresses under SIMOTION CPU. All
F_Dest_Add for the lower-level drives then use this start address, making them easier to
manage in the case of more extensive projects. If you use 4000 as a start address,
for example, the first F_Dest_Add of the drive is allocated as 400, etc. Start address 2000
is used as standard.
5. Insert a CBE30 if necessary and configure the PROFINET network.
6. Add a SINAMICS S120 CU320 PN (V2.6 or higher) to HW Config and configure the
interface.
7. Configure the drive unit in SIMOTION SCOUT with the help of the wizard.
8. Therefore, insert a new axis TO and run through the axis wizard. In the wizard, you link
the axis with the corresponding drive object of the S120, and a corresponding message
frame (use symbolic assignment) is created automatically.
9. Save and compile the project.
10.After configuration, you have to select the PROFIsafe telegram. In the SIMOTION
SCOUT project navigator, under the drive unit double-click on <"Drive unit_xx"> Communication > Message frame configuration. The telegrams appear in the working
area.
Communication
224
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
11.Mark the appropriate drive in the tab IF1: PROFIdrive PZD telegram of the telegram
overview and in the bottom part of the window under Adapt telegram configuration select
the entry Add PROFIsafe. The PROFIsafe telegram is added.
Figure 8-11
Adding PROFIsafe telegram
12.Save and compile the project.
13.Click on Set up address to run alignment between SIMOTION and HW Config.
Configuration in SIMOTION SCOUT is completed by saving.
14.Move to HW Config and configure SYNC master and slave and an isochronous
application.
15.Double-click in the SIMOTION D435 station overview on X1400 P1 and select the drive
unit assignment in the Topology tab under Partner port. Click OK to confirm.
Communication
System Manual, 11/2010
225
PROFIsafe
8.5 PROFIsafe via PROFINET
16.Double-click in the station on the PN IO interface to activate I device mode in the
properties. In the I device tab, activate the check box I device mode. Click on New... and
select the failsafe periphery entry in the dialog which opens under transfer area type.
Figure 8-12
Properties of I device transfer area
Communication
226
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
17.Click on the Select I/O button and select the corresponding PROFIsafe channel in the
dialog which opens. Confirm both dialogs with OK.
This completes configuration of the lower-level drive. All you need do now is save and
compile the station.
Figure 8-13
Selecting PROFIsafe channel of I/O
Communication
System Manual, 11/2010
227
PROFIsafe
8.5 PROFIsafe via PROFINET
18.You can view the PROFIsafe settings for the drive unit. The detail view for the rack
contains the entry PROFIsafe. Double-click on this to display the properties.
The PROFIsafe tab contains the failsafe address under F_Dest_Add. This address must
be unique within the entire project. If you are using several failsafe proxies, you must
ensure that this address is only issued once. Change this value as required. The failsafe
address is displayed in HW Config in the detail view in the station window under
comments. This allows for clear assignment if using several participants.
The parameters F_CRC_Length=3-Byte-CRC and F_Par_Version=1 indicate PROFIsafe
V2 mode. Please note these values because an I device F-Proxy configuration is only
possible with this version and higher.
For more information about the failsafe parameters, see PROFIsafe properties for
configuration (Page 212)
Figure 8-14
Setting failsafe address (F_dest_Add)
Communication
228
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
19.The failsafe address must match the PROFIsafe address during Safety configuration of
the drive in SIMOTION SCOUT. In the example, this is address 200 dec or C8H. You
enter the address in the Configuration window when configuring Safety Integrated. The
value is stored in drive parameters p9610/p9810.
Figure 8-15
Entering F_Dest_Add as PROFIsafe address
20.Now produce the GSD file for the I device F-Proxy. In the menu, select Options > Create
GSD file for I device. In the dialog which opens, click on Create and then Install. The I
device is displayed under Preconfigured Stations in the hardware catalog.
21.You can now create a new project with F-CPU or open and use the existing project in the
SIMATIC Manager. In our example, open the existing project in the SIMATIC Manager.
22.In the menu, select e.g. Insert > Station > SIMATIC 300 Station. Double-click on the
station and then the entry Hardware. HW Config opens.
23.From the hardware catalog, insert e.g. an S7 300 rack if you want to select an F-CPU
from the S7 300 series.
Communication
System Manual, 11/2010
229
PROFIsafe
8.5 PROFIsafe via PROFINET
24.Insert the F-CPU, e.g. CPU317-2 PN/DP. This must at least be version V3.2.
25.Use drag&drop to move the I device previously created under Preconfigured Stations to
the PROFINET IO network. Once saved and compiled, configuration is complete.
Figure 8-16
8.5.5.3
Master project with an I device failsafe proxy submodule
Adapting the F address in the existing project
Adapting the F address (F_Dest_Add) for the entire project
In an existing project, you can check whether the F address for the I device F-Proxy has
been set correctly at a later point. The F address must be the same at the following
locations:
● PROFIsafe slot of the drive on the SIMOTION CPU (HW Config)
● PROFIsafe slot of the I device for the SIMOTION CPU (HW Config)
● Safety configuration for drive in SIMOTION (SIMOTION SCOUT)
If you want to change the F address at a later point without having to create and install the I
device again, you must make the change at the three locations referred to above.
Communication
230
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
In the example below, you set the F address to the value 300 (12CHex) for a SIMOTION
CPU with a drive on PROFINET and an F-CPU in the same project.
How to check whether the F address is identical
1. Open the SIMOTION CPU project in HW Config.
2. In the detail view of the drive unit, double-click PROFIsafe. In the window that opens,
switch to the PROFIsafe tab. The value 300 must be present next to F_Dest_Add. To
change F_Dest_Add, click the Change Value button and enter 300 in the dialog box that
appears.
Figure 8-17
F address for PROFIsafe slot on drive unit
3. Confirm by selecting OK and save and compile the project.
4. Open the project with the F-CPU in HW Config.
Communication
System Manual, 11/2010
231
PROFIsafe
8.5 PROFIsafe via PROFINET
5. In the detail view of the I device, double-click the PROFIsafe I/O, e.g. B. 6I/6O FPeriphery. In the window that opens, switch to the PROFIsafe tab. The value 300 must be
present next to F_Dest_Add. To change F_Dest_Add, click the Change Value button and
enter 300 in the dialog box that appears.
Figure 8-18
F address for I device on F-CPU
6. Confirm by selecting OK and save and compile the project.
7. Open the SIMOTION project in SIMOTION SCOUT.
8. In the project navigator, navigate to the drive (e.g. D435 > S120xCU320xCBE20 > Drives
> Drive_1).
9. Under Functions in the project navigator, double-click Safety Integrated.
10.Click the Configuration button. The Configuration window appears.
Communication
232
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
11.Under PROFIsafe address, check the value 12CHex (300) and change it if necessary.
Figure 8-19
F address for Safety Integrated configuration
12.Confirm by selecting Close and save and compile the project.
8.5.5.4
Configuration of D435 with S120 on PROFINET and integrated PROFIBUS
Integrated drive on D435 for PROFIsafe
In the previous example you configured an S120 on D435 with PROFINET and imported it
as an I device. A SINAMICS_Integrated is now added to the project using the internal
PROFIBUS DP.
This is how you configure a SINAMICS_Integrated
You have configured a project with D435 and SINAMICS S120 and imported it as an I device
to an F-CPU.
1. In SIMOTION SCOUT, configure the drive unit on SINAMICS_Integrated and insert a
PROFIsafe message frame (see points 7-10 in the example Configuration example for
SIMOTION D435 and SINAMICS S120 via PROFINET (Page 224)).
2. In HW Config highlight SINAMICS_Integrated and double-click on the PROFIsafe module
in the rack's detail view.
3. In the Configuration tab of the dialog which opens, highlight PROFIsafe telegram and
click on PROFIsafe... . In the PROFIsafe properties dialog box, you can see and change
the F Parameters.
(If the PROFIsafe... button is not shown, you first have to click on the Activate button to
make changes.)
Communication
System Manual, 11/2010
233
PROFIsafe
8.5 PROFIsafe via PROFINET
4. Double-click on the PN IO interface of the SIMOTION CPU. In the I device tab in the
dialog which opens, activate the check box I device mode. Click on New... and select the
failsafe periphery entry in the dialog which opens under Transfer area type. Click on the
Select I/O button and select the corresponding PROFIsafe channel in the dialog which
opens.
Figure 8-20
Releasing PROFIsafe module for SINAMICS_Integrated for transfer area
Communication
234
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
5. Click OK to confirm the dialog box. In the Properties transfer area dialog box, the
inputs/outputs are assigned and an automatically generated comment is displayed. This
comment includes, among other things, the subslot, the SIMOTION device name, the
connection, and the device name of the drive. The F_Dest_Add is at the end. You can
change the comment if necessary.
Figure 8-21
Properties of I device transfer area, comment
Communication
System Manual, 11/2010
235
PROFIsafe
8.5 PROFIsafe via PROFINET
6. Click OK to confirm this dialog box. The failsafe data for the two drives is displayed in the
transfer area.
This concludes configuration of the lower level drive. All you need do now is save and
compile the station.
Figure 8-22
I device transfer area
7. Now produce the GSD file for the I device F-Proxy. In the menu, select Options > Create
GSD file for I device. In the dialog which opens, click on Create and then Install. The I
device is displayed under Preconfigured stations in the hardware catalog.
Communication
236
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
8. As in the previous example, create an F-CPU in the project and add the SIMOTION
module's I device.
The diagram shows the project with F-CPU and I device failsafe proxy with one drive on
PROFINET and one drive on SINAMICS_Integrated on a D435.
Figure 8-23
8.5.5.5
F-CPU with I device failsafe proxy on PROFINET and integrated PROFIBUS
Upgrading an existing system with PROFIsafe via PROFIBUS to PROFIsafe via
PROFINET
PROFIBUS to PROFINET
If PROFIsafe communication on an existing system has been operated via PROFIBUS up
until now and you want to switch it to PROFINET, then you will need to upgrade the system.
How to carry out the upgrade
1. Delete the old I slave link.
2. If necessary, switch the DP interface from DP slave to DP master (SIMOTION CPU).
3. The PROFIsafe message frame configuration settings for the drives can remain
unchanged.
Communication
System Manual, 11/2010
237
PROFIsafe
8.5 PROFIsafe via PROFINET
4. If necessary, create the F parameters F_Par_Version = 1 and F_CRC_Length = 3-ByteCRC in order to use the PROFIsafe V2 standard. This will mean that a link cannot be
established in the I device. V2 is automatically selected when the new PROFIsafe slots
are created.
Figure 8-24
Properties of PROFIsafe taking the example of I device failsafe proxy
5. Select I device mode in HW Config on the CBE30.
6. Select New , followed by failsafe periphery under transfer area type to select the I/O and
create a submodule.
7. Then create a new GSD via Options > Create GSD file for I device... and install it.
8. Link the GSD file to the S7 F-CPU.
Communication
238
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5.5.6
General information on failsafe addresses with I device F-Proxy
Communication addresses for failsafe source and/or F_Destination-Address
Create new failsafe hosts, failsafe modules/submodules in HW Config. HW Config then
suggests the default failsafe source/destination address. You can change or overwrite this
default setting. The default failsafe addressing is based on the failsafe start address
parameter on the F-CPU and also on the SIMOTION CPU if applicable.
Figure 8-25
PROFIsafe start address
The F_Source_Address is assigned using the same process as for Siemens failsafe modules
with OM:
● PROFIsafe start address of CPU + number of DP master system for PROFIBUS
● PROFIsafe start address of CPU for PROFINET
● 1, if the CPU does not have a PROFIsafe start address parameter (standard CPU and FH-CPU)
Guidelines for addressing
● The full range of values between 1...65534 is used for addressing.
● The F_Destination_Address is issued automatically.
● Automatic issuing takes place when plugging in as with the other failsafe modules in
Step7: starting with an start value and working upwards, the system looks for the next
free address.
Communication
System Manual, 11/2010
239
PROFIsafe
8.5 PROFIsafe via PROFINET
● The start value is the PROFIsafe start address of the CPU/10 (or 1022, if there is no
PROFIsafe start address or if it is greater than 10000).
● If the failsafe start address is changed (CPU parameter), then F-Source and F-Dest
addresses already issued are not updated (remain in place). The change only affects the
default address of newly created submodules.
● Several F-Source addresses may be issued in an F-CPU. The F-Source address and FDest address are included in the PROFIsafe CRC total.
● If addresses from an issued range of addresses are no longer used (when failsafe
submodules are subsequently deleted), the gaps are filled first when new addresses are
issued.
Note
If you want to use Safety to work beyond the project limits / proxies, you must ensure that
the F-Source and F-Destination addresses are unique within the entire project. Before
starting configuration, you should have/produce a failsafe addresses plan where unique
ranges of failsafe addresses are assigned to particular sub-projects.
8.5.6
Shared device via PROFINET
8.5.6.1
General information on shared device
Description
With the new Shared Device functionality, you can configure access to an IO device with
several IO controllers using PROFINET. This enables channels/modules to be flexibly
assigned to different IO controllers. This option is available for inputs and outputs. You can
use this mechanism to access the failsafe data of a drive configured below a SIMOTION
CPU via the F-CPU, for example.
Note
When configuring PROFIsafe, it is recommended that you use the I device F-Proxy instead
of the Shared Device function.
Communication
240
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
Schematic diagram of Shared Device
,2&RQWUROOHU
,2&RQWUROOHU
,2'HYLFH
Figure 8-26
Schematic diagram of Shared Device
Software requirements
● SIMATIC Step 7 V5.5 or higher
● SINAMICS firmware and Support Packages V4.3.2 or higher
● SIMOTION SCOUT V4.2 or higher
● S7 F Configuration Pack, V5.5 SP7 or higher (if using Safety/PROFIsafe)
● GSDML file V2.25 or higher
8.5.6.2
Shared device in a STEP 7 project
Introduction
In the following example, the simplest configuration of a shared device is described: Two IO
controllers (SIMOTION D445-2 DP/PN and CPU 317F-2 PN/DP) share the submodules of
an IO device (ET200S HF). The two IO controllers are in the same STEP 7 project with the
advantage that the consistency check is made automatically.
Communication
System Manual, 11/2010
241
PROFIsafe
8.5 PROFIsafe via PROFINET
Procedure
To be able to use the shared device function, you need to take certain configuration steps in
SIMOTION SCOUT, SIMATIC Manager, and HW Config.
Preparatory steps for SIMOTION CPU
1. In SIMOTION SCOUT, create a project called Shared device project.
2. Insert a SIMOTION D445-2 DP/PN and configure it.
3. Open the SIMOTION CPU in HW Config and configure the PROFINET interface.
4. Configure a PROFINET IO device ET 200S (IM151-3PN HF) with several submodules as
shown in the figure below.
Figure 8-27
SIMOTION D445-2 DP/PN with IO device ET200S
5. Save and compile in HW Config.
Preparatory steps for SIMATIC CPU
1. Open the project you created in the SIMATIC Manager.
2. Insert a SIMATIC 300 station and open it in HW Config.
Communication
242
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
3. Insert a CPU 317F-2 PN/DP, for example, and configure the PROFINET interface.
4. Save and compile in HW Config.
Creating the shared device
1. Open one of the SIMOTION CPUs you created in HW Config.
2. Copy the IO device ET200S you created using the context menu (right mouse button).
3. Save the hardware configuration and close the configured station.
4. Open the station you created previously with the SIMATIC F-CPU in HW Config.
5. In order to add the IO device as a shared device, right click on the PROFINET IO system.
Select the context menu command Paste shared.
Figure 8-28
SIMATIC CPU 317F-2 PN/DP with shared device ET200S
6. Save the hardware configuration and close the configured station.
You have successfully created the shared device, now set the assignments of the
submodules to the configured stations.
Communication
System Manual, 11/2010
243
PROFIsafe
8.5 PROFIsafe via PROFINET
Assigning submodules
The submodules must be assigned separately for each station. Remember that changes to a
station will also impact the other station(s)! A submodule can only ever be assigned to one
station!
1. Open the Properties dialog box of the PROFINET IO device for the SIMOTION CPU.
2. Click the Access tab.
3. Configure the access to the individual submodules. To do this, select the type of access
from the drop-down list in the Value column. You can select from the following:
– No access to the submodule: "- - -"
– Full access to the submodule: "full"
Note that the setting "Full" automatically leads to the setting "- - -" in the other station(s).
Figure 8-29
SIMOTION D445-2 DP/PN access to ET200S
4. Save and compile the station and close it.
Communication
244
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
5. Repeat steps 1 to 4 for the shared device on the SIMATIC F-CPU.
Figure 8-30
SIMATIC CPU 317F-2 PN/DP access to shared device ET200S
6. Then download the configuration to the stations.
Shared device in the user program
The shared device has no special role in the user program. The submodules assigned in the
station are addressed as usual through your addresses, the other submodules do not
receive addresses.
Communication
System Manual, 11/2010
245
PROFIsafe
8.5 PROFIsafe via PROFINET
8.5.6.3
Configuring C240 PN and F-CPU with S120 as a shared device
Description
In this chapter, you will find broad guidelines on how to configure a SINAMICS S120 as a
shared device. In the example, the Motion Control tasks are carried out using the SIMOTION
C240 PN and PROFIsafe monitoring is achieved with a SIMATIC F-CPU, e.g. 317F-2PN/DP.
Note
Constraints
Using the shared device function with SINAMICS on SIMOTION is currently still subject to
some constraints. The shared device function can only be used with SINAMICS on
SIMOTION by using the GSD files for SINAMICS during drive configuration in HW Config,
and no device OM. This means that it is not possible to use alignment mechanisms between
SCOUT, Starter, and HW Config. Instead, you need to ensure consistency in the message
frame configuration manually in the individual configuration steps.
Therefore, the following configuration instructions should only be viewed as explaining the
shared device function in more detail. When using PROFIsafe on PROFINET with
SIMOTION and SINAMICS, communication should always take place via the I device FProxy, as described in the section titled Principles of I device failsafe proxy (Page 215).
Configuring a shared device using the example of SINAMICS S120 and SIMOTION C240 PN
1. Create a new project in SIMOTION SCOUT using a SIMOTION C240 PN.
2. Open the hardware in HW Config and configure the C240 PN as an IRT Sync-Master.
3. Install the S120 GSD file. This can be found as a zip file on the CompactFlash Card of
the drive in folder SIEMENS\SIMATIC\DATA\CFG\ (CBE20GSD.ZIP, for example).
4. Drag the installed GSD from the PROFINET IO/SINAMICS/GSD/SINAMICS S120/S150
CU320-2 PN Shared Device hardware catalog and drop it onto the PROFINET network.
Communication
246
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
5. Insert the DO control unit and DO servo subslots from the GSD in the hardware catalog
into the rack and configure the the message frames including, among others, PROFIsafe
message frame 30.
Figure 8-31
Shared device S120 on SIMOTION C240 PN
Communication
System Manual, 11/2010
247
PROFIsafe
8.5 PROFIsafe via PROFINET
6. Open the Object properties of the drive unit and set the slots on the Access tab. On the
PROFIsafe message frame 30 slot, "- - - "must be set as the value.
Figure 8-32
Shared device S120 access from C240 PN
7. Configure the drive as a Sync-Slave isochronous to the C240 PN servo and interconnect
the topology.
8. Open the project in SIMATIC Manager and insert a SIMATIC 300 station. Open this in
HW Config.
9. Insert a SIMATIC CPU 317F-2PN/DP in HW Config. Interconnect and configure this as
not synchronized.
10.In HW Config, switch to the project with the C240 PN, select the drive unit and choose
Copy in the context menu.
Communication
248
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
11.In the project with the F-CPU, select the PROFINET IO system and choose Paste shared
in the context menu. The S120 is inserted and displayed in the rack.
Figure 8-33
Shared device S120 on SIMATIC CPU 317F-2PN/DP
Communication
System Manual, 11/2010
249
PROFIsafe
8.5 PROFIsafe via PROFINET
12.Open the Object properties of the drive unit and set the slots on the Access tab. On the
PROFIsafe message frame 30 slot, "Full"must be set as the value. The others remain set
to "- - -".
Figure 8-34
Shared Device S120 access from CPU 317-F
Communication
250
System Manual, 11/2010
PROFIsafe
8.5 PROFIsafe via PROFINET
13.Interconnect the topology and save and compile the projects.
Figure 8-35
Topology of shared device S120 on C240 PN and CPU 317-F
14.In SIMOTION SCOUT, there is no configurable drive in the C240 PN project due to GSD
integration. Insert an S120 CU320-2 single drive unit and configure it in SIMOTION
SCOUT.
Note
The IP address and device name of the single drive unit must be identical to the S120
inserted via the GSD.
15.Configure the safety functions, remembering to pay attention to the F_Dest_Add when
using PROFIsafe.
16.The shared devices functionality of the drive must be activated with parameter p8929. To
do this, set p8929 to (2) Automation and safety. This will mean that the two PROFINET
controllers can access the drive at the same time (SIMOTION CPU and SIMATIC FCPU).
Note:
With a CU320-2 PN via integrated interface: Parameter 8929
With a CU320-2 DP with CBE20: Parameter 8829
Communication
System Manual, 11/2010
251
PROFIsafe
8.6 PROFIsafe via PROFIBUS
8.6
PROFIsafe via PROFIBUS
8.6.1
General information about PROFIsafe on PROFIBUS
Two possibilities for PROFIsafe
There are basically two possible forms of PROFIsafe communication on PROFIBUS:
● I-slave F-Proxy
F-CPU is the DP master in the project and monitors the drives on the lower-level
SIMOTION I-slave
● Failsafe data exchange broadcast
SIMOTION is the DP master in the project and the F-CPU monitors the drives as the Islave.
The procedure for configuring PROFIsafe communication is virtually the same in both cases.
The sections below each contain a brief example.
8.6.2
Supported devices and software requirements for PROFIsafe on PROFIBUS
Software packages to be installed on the programming device:
● SIMATIC Manager STEP7 version 5.4 SP2 or higher
● S7 F Configuration Pack Version 5.5 SP3 or higher
● S7 Distributed Safety Programming Version 5.4 SP3 or higher
● SIMOTION SCOUT Version 4.1.1 HF6 or higher
● SINAMICS firmware Version 2.5 or higher
Note
As of SIMOTION firmware 4.1.1 HF10 and SINAMICS firmware 2.5 SP1 HF10, five drives
can be configured with a CX32. With earlier firmware versions, a maximum of 4 drives
can be configured.
You will find the components suited to PROFIsafe in the S120 Safety Integrated Function
Manual.
Communication
252
System Manual, 11/2010
PROFIsafe
8.6 PROFIsafe via PROFIBUS
Supported devices
Table 8- 2
Device overview
SIMOTION CPU
Controller Based
C240
C240 PN
PC Based
P350-3
Drive-based (blocksize)
D410 DP
Drive-based (booksize)
D425
D435
D445
D445-1
D445-2 DP/PN
D455-2 DP/PN
SINAMICS drive units
S120 CX32
CX32
CX32-2
S120
CU320 DP
CU320-2 DP
CU310 DP
CU310-2 DP
S110
CU305 DP
Number of drive axes supported
With PROFIBUS, only 16 drive axes can be used per PROFIBUS interface.
8.6.3
I-slave failsafe proxy
8.6.3.1
Principles of I-slave failsafe proxy
Short description
Using the I slave F-Proxy you can produce a PROFIsafe configuration with an F host (F-CPU
SIMATIC) on PROFIBUS with SIMOTION devices (SIMOTION D, SIMOTION P350,
SIMOTION C) for the lower-level drives. Cyclic PROFIsafe data can then be routed to
SINAMICS drives on SINAMICS_Integrated / PROFIBUS DP.
A failsafe host communicates with the drives via the I-slave interface and a failsafe proxy of
a SIMOTION CPU. The drives may be located on the PROFIBUS DP of the SIMOTION
CPU. The SIMOTION CPU's communication segments feature SINAMICS S120/S110 and
SINAMICS Integrated/CX32/CX32-2.
Communication
System Manual, 11/2010
253
PROFIsafe
8.6 PROFIsafe via PROFIBUS
8.6.3.2
Topology for I-slave failsafe proxy for PROFIBUS drive units
Example of topology for I-slave failsafe proxy
The diagram below shows a topology in diagrammatic form in which the Safety drives are
connected to the SIMOTION CPU via PROFIBUS DP and this is connected to the F-CPU via
PROFIBUS DP.
,VRFKURQRXVPRGHUHTXLUHG
,VRFKURQRXVPRGHQRWUHTXLUHG
6,0$7,&)&38
6W83
0&
)
6W83
)83
)83
'30DVWHU
0RWLRQ&RQWURO
)DLOVDIH
6WDQGDUGXVHUSURJUDP
)DLOVDIHXVHUSURJUDP
352),%86'3
0&
)352;<
'3,QWHJUDWHG
'30DVWHU
352),%86'3
,QWHJUDWHGRQO\LQWKH
FDVHRI6,027,21'
Figure 8-36
8.6.3.3
0& )
0& )
0& )
&8
)
&;
,QWHJUDWHG
0&
352),%86'3
&8
6,027,21
,6ODYH
Topology for I-slave failsafe proxy for PROFIBUS drive units
PROFIsafe via PROFIBUS when SIMOTION D is used
The next sections deal with the configuration of PROFIsafe communication via PROFIBUS
between the integrated drive unit SINAMICS S120 of a SIMOTION D or CX32 and a higherlevel SIMATIC F-CPU.
Communication
254
System Manual, 11/2010
PROFIsafe
8.6 PROFIsafe via PROFIBUS
Topology (network view of the project)
The basic topology of the components involved in PROFIsafe communication via PROFIBUS
(SIMATIC F-CPU and D4x5 integrated with SINAMICS S120 or CU320) can be found in the
previous section.
The drive unit (SINAMICS) and the SIMATIC F-CPU are located on different PROFIBUS
subnets. In this case, a PROFIsafe router to SIMOTION D is configured so that the
necessary data is copied from one network to the other (see also point 7).
Configuring PROFIsafe communication
The next sections describe the configuration of PROFIsafe communication between a
SIMATIC F-CPU and a drive object of an integrated SINAMICS drive unit of a SIMOTION D.
The procedure for configuring PROFIsafe communication between a drive unit of a CU320
and a SIMATIC F-CPU is basically the same and is not covered separately.
1. Create an F-CPU (e.g. CPU 317F-2) and a SIMOTION D4x5 controller (with integrated
SINAMICS S120) in accordance with the hardware installed.
2. Define a SIMOTION CPU for operation as DP slave and the F-CPU as associated DP
master.
3. Configure the SINAMICS drive unit in SIMOTION SCOUT in accordance with your
hardware configuration.
4. Therefore, insert a new axis TO and run through the axis wizard. In the wizard,
interconnect the axis to the corresponding drive object of the S120 and a corresponding
message frame will automatically be created (symbolic assignment).
5. Save and compile the project.
Communication
System Manual, 11/2010
255
PROFIsafe
8.6 PROFIsafe via PROFIBUS
6. Create a PROFIsafe slot in the configuration of the SINAMICS drive unit.
For this purpose, select in tab IF1 the following: PROFIdrive PZD message frames - the
drive object which is to communicate with the SIMATIC F-CPU via PROFIsafe. Click on
the Adapt message frame configuration button and select Add PROFIsafe.
Figure 8-37
Inserting a PROFIsafe slot
Figure 8-38
PROFIBUS telegram
7. Save and compile the project.
8. Transfer the new PROFIsafe slot to HW Config by clicking on the Set up address button.
Communication
256
System Manual, 11/2010
PROFIsafe
8.6 PROFIsafe via PROFIBUS
9. In HW Config for the F-CPU, connect the preconfigured SIMOTION station to the F-CPU
(hardware catalog: PROFIBUS DP > Preconfigured stations ...).
Note
To configure the SINAMICS Safety Integrated extended functions by means of
SIMOTION, the telegrams must be extended. To do so, a safety data block is appended
to the PROFIdrive actual value telegram. Configuration and parameter assignment of this
Safety data block are described in the Function Manual SIMOTION Motion Control TO
Axis electric/hydraulic, external encoder.
10.You can display the F-communication parameters via the DP slave properties (doubleclick on SIMOTION I-slave). To do this, go to the F configuration tab and click on New.
Mode: Displays the communication relationship. F-MS module represents safety-related
master-slave communication with SIMOTION.
DP partner (F I/O): SINAMICS drive properties.
Here you can select the relevant PROFIsafe drive via DP address or Address.
local: Properties of the SIMOTION CPU.
Enter the logical start address for F-communication of the SIMOTION CPU in the
"Address" row.
The send and receive safety telegrams are assigned an address space of 6 bytes which
must be located outside the process image of the SIMOTION-CPU ( >= 64).
Master (safety program): SIMATIC F-CPU properties.
The logical start address for F communication of the SIMATIC F-CPU must be entered
here under "Address" (LADDR).
The address space for sending and receiving safety message frames is 6 bytes and
must lie within the process image of the SIMATIC F-CPU.
In the SIMATIC F-CPU safety program, this address space can be used to access the
PROFIsafe control or status words.
Figure 8-39
Master-slave coupling in PROFIsafe
Communication
System Manual, 11/2010
257
PROFIsafe
8.6 PROFIsafe via PROFIBUS
11.Open the SIMOTION CPU project in HW Config.
Figure 8-40
SIMOTION D configuration
12.Double-click on the icon of the SINAMICS drive unit and select the Details tab in the
Configuration tab.
Figure 8-41
PROFIsafe configuration for SINAMICS drive unit
Communication
258
System Manual, 11/2010
PROFIsafe
8.6 PROFIsafe via PROFIBUS
13.Click on the PROFIsafe… button and then define the F parameters which are important
to F communication. As of STEP7 V5.5, PROFIsafe V2 is used by default.
(If the PROFIsafe… button cannot be used, you need to activate it using the Activate...
button.)
For more information about the failsafe parameters, see PROFIsafe properties for
configuration (Page 212)
Figure 8-42
PROFIsafe properties (F-parameters)
14.Compile HW Config of the SIMOTION CPU. Compile the F-CPU configuration data in HW
Config.
Note
For information about creating a safety program and accessing PROFIsafe useful data
(e.g STW and ZSW) within the safety program, refer to the SIMATIC, S7 Distributed
Safety - Configuring and Programming Programming and Operating Manual.
Safety configuration (online) in the SINAMICS drive
1. Call the configuration for Safety Integrated by selecting "Functions" at the SINAMICS
drive entry in the tree structure.
2. Configure Safety Integrated and set to hex representation the F_Dest_Add parameter
already defined under the drive's PROFIsafe address (p9610/p9810).
3. Finally, perform a POWER ON. The safety configuration is now active in the drive.
Note
For further information on safety configuration, see the SINAMICS S120 Safety
Integrated Function Manual.
Communication
System Manual, 11/2010
259
PROFIsafe
8.6 PROFIsafe via PROFIBUS
8.6.4
Failsafe data exchange broadcast
8.6.4.1
Principles of failsafe data exchange broadcast
Method of operation
SIMOTION CPU is the DP master for failsafe data exchange broadcast. The SIMATIC FCPU is the DP slave on PROFIBUS DP and controls failsafe communication, e.g. with a
CU320 of the SINAMICS S120.
Note
Control for the Safety Integrated functions cannot be routed to the SINAMICS Integrated of
the SIMOTION D, Controller Extension CX32/CX32-2, or any other DP network in this
constellation.
8.6.4.2
Topology of failsafe data exchange broadcast via PROFIBUS
Example of topology for failsafe data exchange broadcast for PROFIBUS
The diagram below shows a topology in diagrammatic form in which the Safety drives are
connected to the SIMOTION CPU via PROFIBUS DP and the SIMATIC F-CPU is the
PROFIBUS I-slave for failsafe communication.
6,027,21
,VRFKURQRXVPRGHUHTXLUHG
,VRFKURQRXVPRGHQRWUHTXLUHG
0&
)
6W83
)83
0&
'30DVWHU
0RWLRQ&RQWURO
)DLOVDIH
6WDQGDUGXVHUSURJUDP
)DLOVDIHXVHUSURJUDP
352),VDIHYLDGDWDH[FKDQJHEURDGFDVW
352),%86'3
Figure 8-43
0& )
0&
)
)SURJU
&8
6W83
&8
6,0$7,&)&38
,6ODYH
Topology of failsafe data exchange broadcast for PROFIBUS drive units
Communication
260
System Manual, 11/2010
PROFIsafe
8.6 PROFIsafe via PROFIBUS
8.6.4.3
PROFIsafe via PROFIBUS with failsafe data exchange broadcast taking the example
of SIMOTION D
PROFIsafe communication is to be configured between a SINAMICS S120, SIMOTION D as
DP master and SIMATIC F-CPU as I-slave via PROFIBUS.
Topology (network view of the project)
The basic topology of the components involved in PROFIsafe communication via PROFIBUS
(SIMATIC F-CPU and D4x5 integrated with SINAMICS S120 or CX32) can be found in the
following section:
The drive unit (SINAMICS) and the SIMATIC F-CPU are located in the same PROFIBUS
subnet.
Configuring PROFIsafe communication via failsafe data exchange broadcast
1. In HW Config, create an F-CPU (e.g. CPU 317F-2), a SIMOTION D4x5 control and a
SINAMICS S120 CU320 in accordance with the hardware installed.
2. Define a SIMOTION CPU for operation as DP master and the F-CPU as associated DP
slave.
3. Configure the SINAMICS drive unit in SIMOTION SCOUT in accordance with your
hardware configuration.
4. Therefore, insert a new axis TO and run through the axis wizard. In the wizard,
interconnect the axis to the corresponding drive object of the S120 and a corresponding
message frame will automatically be created (symbolic assignment).
5. Save and compile the project.
6. Create a PROFIsafe slot in the configuration of the SINAMICS drive unit.
For this purpose, select in tab IF1 the following: PROFIdrive PZD message frames - the
drive object which is to communicate with the SIMATIC F-CPU via PROFIsafe. Click on
the Adapt message frame configuration button and select Add PROFIsafe.
Figure 8-44
PROFIBUS telegram
Communication
System Manual, 11/2010
261
PROFIsafe
8.6 PROFIsafe via PROFIBUS
7. Save and compile the project.
8. Transfer the new PROFIsafe slot to HW Config by clicking on the Set up address button.
9. In HW Config for the SIMOTION station, connect the preconfigured F-CPU to the
SIMOTION station.(HW catalog: PROFIBUS DP > Preconfigured stations...).
10.The F-communication parameters are displayed in the DP slave (F-CPU) properties, tab
F Configuration.
Mode: Displays the communication relationship. F-DX modules must be selected for data
exchange broadcast. This represents a safety-related I-slave-slave relationship.
DP partner (F I/O): SINAMICS drive properties.
Here you can select the relevant PROFIsafe drive via DP address or Address.
local (safety program): SIMATIC F-CPU properties.
The logical start address for F communication of the SIMATIC F-CPU must be entered
here under Address (LADDR). The address space for sending and receiving safety
message frames is 6 bytes and must lie within the process image of the SIMATIC F-CPU.
In the SIMATIC F-CPU safety program, this address space can be used to access the
PROFIsafe control or status words.
Master address: Properties of the SIMOTION-CPU.
Enter the logical start address for F communication of the SIMOTION CPU under Input
address.
The send and receive safety message frames are assigned an address space of 6 bytes
which must be located outside the process image of the SIMOTION-CPU (>= 64).
Figure 8-45
Properties of failsafe configuration for data exchange broadcast
Communication
262
System Manual, 11/2010
PROFIsafe
8.6 PROFIsafe via PROFIBUS
11.Open the SIMOTION CPU project in HW Config.
Figure 8-46
HW Config failsafe data exchange broadcast
Communication
System Manual, 11/2010
263
PROFIsafe
8.6 PROFIsafe via PROFIBUS
12.Double-click on the icon of the SINAMICS drive unit and select the Details tab in the
Configuration tab. Click the PROFIsafe… button to specify the relevant F Parameters for
failsafe communication.
(If the PROFIsafe… button cannot be used, you need to activate it using the Activate...
button.)
For more information about the failsafe parameters, see PROFIsafe properties for
configuration (Page 212)
Figure 8-47
PROFIsafe properties failsafe data exchange broadcast mode V1
13.Compile HW Config of the SIMOTION CPU. Compile the F-CPU configuration data in HW
Config.
Safety configuration (online) in the SINAMICS drive
1. Call the configuration for Safety Integrated by selecting the Functions entry in the
structure tree where it says SINAMICS drive.
2. Configure Safety Integrated and set to hex representation the F_Dest_Add parameter
already defined under the drive's PROFIsafe address (p9610/p9810).
3. Finally, perform a POWER ON. The safety configuration is now active in the drive.
Note
For further information on Safety configuration, see the SINAMICS S120 Safety
Integrated Function Manual.
Communication
264
System Manual, 11/2010
PROFIsafe
8.7 PROFIsafe configuration - acceptance test and reports
8.7
PROFIsafe configuration - acceptance test and reports
Acceptance tests and acceptance reports
Once configuring and commissioning has been successfully completed, an acceptance test
of the drive safety functions must be carried out. This involves checking correct parameter
assignment of the safety functions. The tests carried out are documented in reports.
Note
When carrying out the acceptance test for PROFIsafe communication, please note the
information provided in the SIMATIC, S7 Distributed Safety - Configuring and Programming
Programming and Operating Manual and the SINAMICS S120 Safety Integrated Function
Manual of the drive used.
8.8
Additional information on SIMOTION and PROFIsafe
Description
Additional information on the subject of PROFIsafe is available in the following documents:
● For information on how to connect an axis to a SINAMICS drive with Safety Integrated,
please refer to the TO Axis / External Encoder Function Manual.
● For information on how to configure a SINAMICS S120 drive or SINAMICS S110 drive
with Safety Integrated, please refer to the following:
– SINAMICS S120 Function Manual
– SINAMICS S120 Safety Integrated Function Manual
– SINAMICS S110 Function Manual.
Communication
System Manual, 11/2010
265
PROFIsafe
8.8 Additional information on SIMOTION and PROFIsafe
Communication
266
System Manual, 11/2010
PROFIdrive
9.1
9
Why profiles?
Profiles used in automation technology define certain characteristics and responses for
devices, device groups or whole systems which specify their main and unique properties.
Only devices with manufacturer-independent profiles can behave in exactly the same way on
a fieldbus and thus fully exploit the advantages of a fieldbus for the user.
Profiles are specifications defined by manufacturers and users for certain characteristics,
performance features and behaviors of devices and systems. They aim to ensure a certain
degree of interoperability of devices and systems on a bus which are part of the same
product family due to "profile-compliant" development.
Different types of profiles can be distinguished such as so-called application profiles (general
or specific) and system profiles.
● Application profiles mainly refer to devices, in this case drives, and contain an agreed
selection of bus communication methods as well as specific device applications.
● System profiles describe system classes and include the master functionality, program
interfaces and integration methods.
PROFIdrive
The PROFIdrive profile is a specific application profile. It contains a detailed description of
how the communication functions "data exchange broadcast", "equidistance" and
"isochronous operation" are used appropriately in drive applications. In addition, it specifies
all device characteristics which influence interfaces connected to a controller over
PROFIBUS or PROFINET. This also includes the State machine (sequential control), the
encoder interface, the normalization of values, the definition of standard telegrams, the
access to drive parameters, the drive diagnostics, etc.
The PROFIdrive profile supports both central as well as distributed motion control concepts.
The basic philosophy: – Keep it simple –
The PROFIdrive profile tries to keep the drive interface as simple as possible and free from
technology functions. This philosophy ensures that reference models as well as the
functionality and performance of the PROFIBUS/PROFIDRIVE master have no or very little
effect on the drive interface.
Communication
System Manual, 11/2010
267
PROFIdrive
9.2 PROFIdrive overview
9.2
PROFIdrive overview
The PROFIdrive Profile
The PROFIdrive profile defines the device behavior and the access procedure to drive data
for electrical drives on PROFIBUS and on PROFINET, from simple frequency converters up
to high performance servo controllers.
PROFIdrive consists of a general part and a bus-specific part. The following properties are
defined in the general part:
● Base model
● Parameter model
● Application model
The following assignments are made in the bus-specific part:
● PROFIdrive to PROFIBUS
● PROFIdrive to PROFINET
Details of where to find a precise description of the PROFIdrive profile are given below.
Literature note
PROFIdrive profile
PROFIBUS Profile PROFIdrive – Profile Drive Technology
Version V4.1, May 2006,
PROFIBUS User Organization e. V.
Haid-und-Neu-Strasse 7, 76131 Karlsruhe (Germany)
http://www.profibus.com
Order Number 3.172, specifically Chap. 6
Standards
IEC 61800 standard
Communication
268
System Manual, 11/2010
PROFIdrive
9.3 PROFIdrive base/parameter model
9.3
PROFIdrive base/parameter model
Description
The PROFIdrive base model describes an automation system in terms of a number of
devices and their interrelationships (application interfaces, parameter access). The base
model distinguishes between the following device classes:
PROFIdrive
PROFIBUS DP
PROFINET IO
Controller (higher-level control
or host of the automation
system)
Class 1 DP master
IO controller
Peripheral device (P device)
DP slave (I slaves)
IO device
Supervisor (engineering station)
Class 2 DP master
IO Supervisor
PROFIdrive device classes
Communication
System Manual, 11/2010
269
PROFIdrive
9.3 PROFIdrive base/parameter model
Example of a PROFIdrive automation concept
The graphic below shows a typical automation concept.
&RQWURO
6XSHUYLVRUGHYLFH
6XSHUYLVRU
$FWXDOYDOXHV
6HWSRLQWV
,QWHUIDFHVGHILQHGLQ
352),GULYH
DSSOLFDWLRQFODVVHV
3DUDPHWHUDFFHVV
&RQWURO
DSSOLFDWLRQ
&RPPXQLFDWLRQV\VWHP
3DUDPHWHUDFFHVV
$FWXDOYDOXHV
'ULYH
DSSOLFDWLRQ
'ULYH
DSSOLFDWLRQ
'ULYHXQLW
Figure 9-1
'ULYHXQLW
Automation concept
Communication
270
System Manual, 11/2010
PROFIdrive
9.3 PROFIdrive base/parameter model
Communication services
Two communication services are defined in the PROFIdrive profile; namely, cyclic data
exchange and acyclic data exchange.
● Cyclic data exchange via a cyclic data channel
Motion control systems need cyclically updated data during operation for open- and
closed-loop control purposes. This data must be sent to the drive units in the form of
setpoints or transmitted from the drive units in the form of actual values, via the
communications system. Transmission of this data is usually time-critical.
● Acyclic data exchange via an acyclic data channel
In addition to cyclic data exchange, there is an acyclic parameter channel for exchanging
parameters between the control/supervisor and drive units. Access to this data is not
time-critical.
● Alarm channel
Alarms are output on an event-driven basis, and show the occurrence and expiry of error
states.
Communication
System Manual, 11/2010
271
PROFIdrive
9.3 PROFIdrive base/parameter model
The graphic below shows the data model and data flow in the P device.
)UDPH
%XVOHYHO
6HUYLFHOHYHO
FRPPXQLFDWLRQ
$F\FOLFGDWDFKDQQHO
6HUYLFHOHYHO
SURILOHV
3DUDPHWHUPDQDJHU
352),GULYH
ZULWH
3DUDPHWHU
OHYHO
3[[
&\FOLFGDWDFKDQQHO
$ODUPFKDQQHO
'DWDPDSSLQJ
352),GULYHPHVVDJHIUDPH
(UURUFRGH
352),GULYH
ZULWH
UHDG
3[[
6HWSRLQWV
ಹ
3[[
3[[
UHDG
3[[
3URFHVVGDWD
ಹ
3[[
$FWXDOYDOXHV
ಹ
3URFHVV
3URFHVVOHYHO
(UURUPHVVDJH
HYHQWFRQWUROOHG
Figure 9-2
Data model and data flow in the P device
Alarms and error messages
Alarms are output on an event-driven basis, and show the occurrence and expiry of error
states.
Communication
272
System Manual, 11/2010
PROFIdrive
9.4 Segmentation in application classes
Parameter model
The parameter model in the PROFIdrive profile makes a distinction between profile
parameters and manufacturer-specific parameters:
● Profile parameters are defined for objects derived from the device model of the
PROFIdrive profile. These may include general functions such as drive identification, fault
buffer, or drive control, for example. These parameters are the same for all drives.
● All other parameters are manufacturer-specific. The parameters are defined by the
interface for the application process, rather than by the profile.
Access to a parameter's elements (values, parameter descriptions, text elements) essentially
works on an acyclic basis (with the exception of G120 drives, which can exchange data
cyclically with PIV). An independent request/response data structure is defined for this
purpose.
9.4
Segmentation in application classes
Integration of drives in automation solutions
The integration of drives into automation solutions depends strongly upon the drive task. To
cover the extensive range of drive applications from the most simple frequency converter up
to highly dynamic, synchronized multi-axis systems with a single profile, PROFIdrive defines
six application categories which can be applied to most drive applications.
Table 9- 1
Table 3-1 Application/utilization categories
Category
Drive
Category 1
Standard drives (such as pumps, fans, agitators, etc.); implemented in
SIMOTION and SINAMICS
Category 2
Standard drives with technology functions
Category 3
Positioning drives; implemented in SIMOTION and SINAMICS
Category 4
Motion control drives with central, higher-level motion control intelligence and the
"Dynamic Servo Control" position control concept; implemented in SIMOTION
and SINAMICS
Category 5
Motion control drives with central, higher-level motion control intelligence and
position setpoint interface
Category 6
Motion control drives with distributed, motion control intelligence integrated in the
drives
PROFIdrive defines a device model based on function modules which cooperate in the
device and generate the intelligence of the drive system.
Objects are assigned to these modules that are described in the profile and defined in terms
of their function. The overall functionality of a drive is therefore described through the sum of
its parameters.
In contrast to other drive profiles, PROFIdrive defines only the access mechanisms to the
parameters as well as a subset of approx. 70 profile parameters such as the fault buffer,
drive control and device identification.
Communication
System Manual, 11/2010
273
PROFIdrive
9.4 Segmentation in application classes
All other parameters are manufacturer-specific which gives drive manufacturers great
flexibility with respect to implementing control functions. The elements of a parameter are
accessed acyclically using what is known as "Base Mode Parameter Access".
Note
Jobs involving Base Mode Parameter Access are coded in a way you may already know
from data set 47 (DPV1 communication from PROFIBUS). For any differences, please refer
to Specifications for PROFIBUS and PROFINET IO (Page 286).
PROFIdrive uses DP V0, DP V1, and the DP V2 expansions for PROFIBUS, and the slave
data exchange broadcast and isochronous operation functions contained within them as the
communication protocol.
PROFIdrive for PROFINET contains the functions for IO controller-to-IO device
communication and isochronous operation.
Utilization categories
Utilization category 4 is the most important for highly dynamic and highly complex motion
control tasks. This application category describes in detail the master/slave relationship
between the controller and the drives which are connected to each other over PROFIBUS
and PROFINET.
$SSOLFDWLRQ&ODVV
$XWRPDWLRQ
7HFKQRORJ\
,QWHUSRODWLRQ
3RV&RQWURO
&ORFN
&RQWURO:RUG6SHHG6HWSRLQW
6WDWXV:RUG$FWXDO3RVLWLRQ
&ORFNV\QFKURQLVP
0
Figure 9-3
'ULYH
'ULYH
'ULYH
&ORVHG/RRS
6SHHG&WUO
&ORVHG/RRS
6SHHG&WUO
(QFRGHU
0
&ORVHG/RRS
6SHHG&WUO
(QFRGHU
0
(QFRGHU
Utilization categories
Communication
274
System Manual, 11/2010
PROFIdrive
9.5 PROFIdrive-specific data types
The DSC (Dynamic Servo Control) function significantly improves the dynamic response and
stiffness of the position control loop. With SIMOTION, this improvement usually relates to the
dead times which occur for speed setpoint interfaces (transmission time, computing time for
the controller and device), which are minimized by an additional, relatively simple feedback
network in the drive. The position controller is pre-controlled in the drive by the SIMOTION
controller using precontrol and position deviation, which enables very fast position control
cycle clocks (e.g. 125 μs for servo in SINAMICS S), thereby restricting dead times to the
control behavior alone.
9.5
PROFIdrive-specific data types
Description
A range of data types have been defined for the purpose of using communication that is
compliant with PROFIdrive. You will find detailed information on this in the following
standards:
● IEC 61800-7-203
● IEC 61800-7-303
● IEC 61158-5
These standards contain detailed descriptions of the data types. The most important data
types are listed below. Data types are provided by the _readDriveParameterDescription
function, for example.
Note
For S7 communication or communication with SINAMICS, you will have to use the
AnyType_to_BigByteArray or BigByteArray_to_AnyType system functions to perform a type
conversion for different data types (normalized value N2, N4; normalized value X2, X4; fixedpoint value E2 and time constants T2 and T4).
PROFIdrive profile-specific data types
Data types used in the PROFIdrive profile
Definition
Coding
(dec.)
Boolean
Boolean (IEC 61158-5)
1
Integer8
Integer8 (IEC 61158-5)
2
Integer16
Integer16 (IEC 61158-5)
3
Integer32
Integer32 (IEC 61158-5)
4
Unsigned8
Unsigned8 (IEC 61158-5)
5
Unsigned16
Unsigned16 (IEC 61158-5)
6
Unsigned32
Unsigned32 (IEC 61158-5)
7
FloatingPoint32
Float32 (IEC 61158-5)
8
Communication
System Manual, 11/2010
275
PROFIdrive
9.5 PROFIdrive-specific data types
Data types used in the PROFIdrive profile
Definition
Coding
(dec.)
FloatingPoint64
Float64 (IEC 61158-5)
15
VisibleString
VisibleString (IEC 61158-5)
9
OctetString
OctetString (IEC 61158-5)
10
TimeOfDay (with date indication)
TimeOfDay (IEC 61158-5)
11
TimeDifference
TimeDifference (IEC 61158-5)
12
Date
Date (IEC 61158-5)
13
TimeOfDay (without data indication)
TimeOfDay (IEC 61158-5)
52
TimeDifference (with data indication)
TimeDifference (IEC 61158-5)
53
TimeDifference (without data indication)
TimeDifference (IEC 61158-5)
54
Specific data types
See below for description
N2 (normalized value (16-bit))
113
N4 (normalized value (32-bit))
114
V2 bit sequence
115
L2 nibble
116
R2 reciprocal time constant
117
T2 time constant (16-bit)
118
T4 time constant (32-bit)
119
D2 time constant
120
E2 fixed-point value (16-bit)
121
C4 fixed-point value (32-bit)
122
X2 normalized value, variable (16-bit)
123
X4 normalized value, variable (32-bit)
124
Normalized value N2, N4
Linear normalized value, 0% corresponds to 0 (0x0), 100% corresponds to 212 (0x4,000) for
N2, or 228 (0x40,000,000) for N4. The length is 2 or 4 octets.
Coding
Represented in two's complement; MSB (most significant bit) is the first bit after the sign bit
(SN) of the first octet.
● SN = 0; positive numbers with 0
● SN = 1; negative numbers
Range of values
N2, N4
Resolution N2, N4
-200% ≤ i ≤ (2002-14)%
2-12 =
-200% ≤ i ≤ (200230)%
2-28 = 9.3 * 10-8%
0.0061%
Cod. N2,
N4 (dec.)
113
114
Octet
Bit
8
7
6
5
4
3
2
1
1
SN
20
2-1
2-2
2-3
2-4
2-5
2-6
2
2-7
2-8
2-9
2-10
2-11
2-12
2-13
2-14
3
2-15
2-16
2-17
2-18
2-19
2-20
2-21
2-22
4
2-23
2-24
2-25
2-26
2-27
2-28
2-29
2-30
Communication
276
System Manual, 11/2010
PROFIdrive
9.5 PROFIdrive-specific data types
Normalized value X2, X4 (example X = 12/28)
Linear normalized value, 0% corresponds to 0 (0x0), 100% corresponds to 2x. These
structures are identical to N2 and N4, except that normalization is variable. Normalization
can be determined from the parameter descriptions. The length is 2 or 4 octets.
Coding
Represented in two's complement; MSB (most significant bit) is the first bit after the sign bit
(SN) of the first octet.
● SN = 0; positive numbers with 0
● SN = 1; negative numbers
Range of values
X2, X4
Resolution X2, X4 Cod. X2,
X4 (dec.)
Octet
-800% ≤ i ≤ 8002-12)%
2-12
-800% ≤ i ≤ 8002-28)%
2-28
123
124
Bit
8
7
6
5
4
3
2
1
1
SN
22
21
20
2-1
2-2
2-3
2-4
2
2-5
2-6
2-7
2-8
2-9
2-10
2-11
2-12
3
2-13
2-14
2-15
2-16
2-17
2-18
2-19
2-20
4
2-21
2-22
2-23
2-24
2-25
2-26
2-27
2-28
Fixed-point value E2
Linear fixed-point value with four places after the decimal point. 0 corresponds to 0 (0x0),
128 corresponds to 214 (0x4,000). The length is 2 octets.
Coding
Represented in two's complement; MSB (most significant bit) is the first bit after the sign bit
(SN) of the first octet.
● SN = 0; positive numbers with 0
● SN = 1; negative numbers
Range of values E2
Resolution
-256+2-7
2-7
7
≤i≤
256-2-
=
0.0078125
Cod.
(dec.)
121
Octet
Bit
8
7
6
5
4
3
2
1
1
SN
27
26
25
24
23
22
21
2
20
2-1
2-2
2-3
2-4
2-5
2-6
2-7
Fixed-point value C4
Linear fixed-point value with four places after the decimal point. 0 corresponds to 0 (0x0),
0.0001 corresponds to 20 (0x0000 0001).
Coding
As with Integer32, the weighting of the bits has been reduced by a factor of 10,000.
Range of values
Resolution
Coding (dec.)
Length
-214,748.3648 ≤ i ≤ 214,748.3648
10-4 = 00001
122
4 octets
Communication
System Manual, 11/2010
277
PROFIdrive
9.5 PROFIdrive-specific data types
Bit sequence V2
Bit sequence for checking and representing application functions. 16 Boolean variables are
combined to form 2 octets.
Range of values
Resolution
Cod.
(dec.)
Octet
115
Bit
8
7
6
5
4
3
2
1
1
15
14
13
12
11
10
9
8
2
7
6
5
4
3
2
1
0
Nibble (half-byte) L2
Four associated bits make up a nibble. Four nibbles are represented by two octets.
Coding
Range of values
Resolution
-
-
Bit
Cod.
(dec.)
Octet
116
1
Nibble 3
Nibble 2
2
Nibble 1
Nibble 0
8
7
6
5
4
3
2
1
Time constants T2 and T4
Time data as a multiple of sampling time Ta. Interpreted value = internal value * Ta
Coding
● T2: As with Unsigned16, with a restricted range of values of 0 ≤ x ≤ 32,767.
When interpreted, internal values that fall outside this range of values are set to 0.
● T4: As with Unsigned32
The values for the time parameters of types D2, T2, T4, and R2 always relate to the
specified, constant sampling time Ta. The associated sampling time (parameter p0962) is
required to interpret the internal value.
Range of values
Resolution
Coding (dec.)
Length
0 ≤ i ≤ 32,767 * Ta
Ta
118
2 octets
0 ≤ i ≤ 4,294,967,295 * Ta
Ta
119
4 octets
Time constant D2
Time data as a fraction of the constant sampling time Ta. Interpreted value = internal value *
Ta/16,348
Coding
● T2: As with Unsigned16, with a restricted range of values of 0 ≤ x ≤ 32,767.
When interpreted, internal values that fall outside this range of values are set to 0.
Communication
278
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Range of values
Resolution
Coding (dec.)
Length
0 ≤ i ≤ (2-2-14) * Ta
Ta
120
2 octets
Time constant R2
Time data as a reciprocal multiple of the constant sampling time Ta. Interpreted value =
16,348 * Ta/internal value
Coding
● T2: As with Unsigned16, with a restricted range of values of 0 ≤ x ≤ 16,384.
When interpreted, internal values that fall outside this range of values are set to 16,384.
Range of values
Resolution
Coding (dec.)
Length
1 * Ta ≤ i ≤ 16,384 * Ta
Ta
117
2 octets
Note
Further data types:
Standard PROFIBUS/PROFINET data types (only available in English) (Page 317)
Profile-specific PROFIBUS/PROFINET data types (only available in English) (Page 328)
See also
Parameter request/response data set (Page 282)
9.6
Acyclic communication (Base Mode Parameter Access)
9.6.1
Acyclic communication
Description
PROFIdrive drive devices are supplied with control signals and setpoints by the controller
and return status signals and actual values.
These signals are normally transferred cyclically (i.e. continuously) between the controller
and the drive.
In addition, PROFIdrive drive units recognize parameters that contain other required data,
such as error codes, warnings, controller parameters, motor data. This data is normally not
transferred cyclically (namely, continuous), but "acyclically" when required. Commands for
the drive can also be transferred using parameter accesses.
Communication
System Manual, 11/2010
279
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
The reading/writing of parameters from PROFIdrive units is always performed acyclically,
using what is known as "Base Mode Parameter Access". "Base Mode Parameter Access"
can be used with both PROFIBUS and PROFINET. For differences between PROFIBUS and
PROFINET, please refer to Specifications for PROFIBUS and PROFINET IO (Page 286).
This service is defined and provided by PROFIdrive, and it can be used in parallel to the
cyclic communication on the relevant bus. The PROFIdrive profile specifies precisely how
this basic mechanism is used for write access to parameters of a PROFIdrive-compliant
drive.
9.6.2
Reading and writing parameters with Base Mode Parameter Access
Description
Base Mode Parameter Access, whose structure is defined in the PROFIdrive profile, is
always used for communicating the writing/reading parameters for PROFIdrive units such as
SINAMICS S120. The structure is also contained, for example, in the Acyclic communication
section of the SINAMICS S120 Function Manual.
Under this arrangement, parameter access always consists of two elements:
● Write request ("Write data set")
● Read request ("Read data set")
This sequence must be observed, irrespective of whether read or write access is involved.
A "Write data record" is used to transfer the parameter job (for example, read parameter x).
A "Read data record" is used to fetch the response for this parameter job (value of
parameter x).
Communication
280
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
'3PDVWHU,2FRQWUROOHU
7LPHOLQH
,VODYH,2GHYLFH
3DUDPHWHUUHTXHVW
ZLWKGD
:ULWH
UHTXHV
W
WDSDUD
PHWHU
UHTXHV
W
3DUDPHWHUUHTXHVWZLWK
BZULWH5HFRUGODVWV
DSSUR[PV
UHVSRQVH
:ULWH
GDWD
ZLWKRXW
(UURUDVUHVSRQVH
QRW\HWDYDLODEOHNHHS
ZULWLQJUHTXHVWXQWLO
DSSHDUV
ZLWKVD
:ULWH
PHGDWD UHTXHVW
SDUDP
HWHUUH
T
XHVW
3DUDPHWHUSURFHVVLQJ
VSRQVH
:ULWHUH
D
DW
WG
RX
ZLWK
$IWHUSRVLWLYHDFNQRZOHGJH
PHQWRIBZULWH5HFRUG
'DWDSURFHVVHGDQG
DYDLODEOH
5HDG
UHTXHV
W
ZLWKRX
WGDWD
3DUDPHWHUUHVSRQVH
'DWDYDOLG
Figure 9-4
HVSRQVH
5HDGU
QVH
HWHUUHVSR
DP
DU
S
D
ZLWKGDW
3DUDPHWHUUHVSRQVHZLWK
BUHDG5HFRUG
Reading and writing acyclically
The figure Reading and writing acyclically shows that both "Write data set" and "Read data
set" consist of the following elements:
● Request
● Response
The controller does not process this "Request Reference". However, the user program can
or should process this reference.
Writing parameter records
Initially, data (P request/response data set) is transmitted to the job structure for the purpose
of writing (one or more) parameter values. The data is subsequently transmitted with "Write
data set" using _writeRecord. Repeated instances of "Read data set" (_writeRecord without
data) can be used to monitor the status until a positive acknowledgment is given. Once this
has been done, _readRecord ("Read data set") continues to be sent until the slave supplies
the data.
Note
An instance of "Write data set" without data enables the status of "Write data set" with data
to be determined until the positive acknowledgment is given.
If "Write data set" is successfully completed, this only signifies that the data set has been
transmitted via the communication path without any errors; it does not signify that the action
has been executed without any errors in the target device.
Communication
System Manual, 11/2010
281
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Reading parameter records
For the purpose of reading parameter values, the data block for determining which
parameter(s) is/are to be read is created first. This data set is transmitted to the drive by
means of the "Write data set"-"Read data set" pair of commands (first _writeRecord and then
_readRecord). A subsequent "Read data set" then returns the required values once (the
same job reference will also be returned in the response).
The processes are also represented above in the form of a diagram.
The PROFIdrive profile specifies how data larger than one byte is to be transferred. The socalled "Big Endian" format, the highest value parts are transferred first, is used:
WORD
DOUBLE WORD
High Byte (Byte 1)
Low Byte (Byte 2)
High Word
High Byte (Byte 1)
Low Byte (Byte 2)
Low Word
High Byte (Byte 3)
Low Byte (Byte 4)
WORD and DWORD representation in Big Endian format
Since the control has a different internal data representation in certain cases, an explicit
conversion must be performed when grouping and evaluating the data in the P
request/response data block (data set 47).
A conversion may be required for SIMOTION, see Program example.
See also
Rule 5 - a maximum of eight concurrent calls is possible in SIMOTION (Page 299)
Parameter request/response data set (Page 282)
9.6.3
Parameter request/response data set
Structure of the P request/response data set
This always consists of:
● A header (job identifier, target axis/drive object, number of parameters in the job)
● A request reference; a reference for identifying jobs
● Job data (attribute, number of elements/indexes, parameter number and subindex), plus
the values for write jobs
● Values transferred to the function
The data transmitted for a WRITE or READ request has the following structure.
Header
Job parameters
Byte n+1
Byte
Offset
Request Header
Request
Reference
RequestID
0
Axis
Number of
parameters
2
Communication
282
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Details
Job parameters
Byte n+1
Byte
Offset
1. parameter
Attribute
Number of
elements
4
Parameter number
6
Subindex
8
...
Attribute
nth parameter
Number of elements
Parameter number
Subindex
Values only for
write access
1. parameter value(s)
Format
Number of values
Values
....
...
Format
nth parameter value(s)
Number of values
Values
...
Structure after Base Mode Parameter Access - Parameter Request
The following structure is defined for the subsequent Parameter Response. This must be
retrieved with _readRecord.
Values only for
read access
Parameter
response
Byte n+1
Byte
Offset
Request Header
Request
Reference
mirrored
RequestID
mirrored or error
0
Axis no./DO ID
mirrored
Number of
parameters
2
Format
Number of values
4
1. parameter
value(s)
Values or error codes
6
...
...
nth parameter
Error values for
negative response value(s)
only
Format
Number of values
Values or error codes
...
Structure after Base Mode Parameter Access - Parameter Response
The exact coding of the individual parts of the data structure can be obtained from the
PROFIdrive profile or the SINAMICS S120 Function Manual. The assignment of "Request"
and "Response", and "Write data record" and "Read data record" using the "Request
Reference" job reference in the above table is important.
Communication
System Manual, 11/2010
283
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Request Reference
The "Request Reference" is used for the assignment of the write request to the following
read request, because the control can, in principle, process several actions (as many as 8) in
parallel for different target devices using the same fieldbus.
Description of fields in parameter job and response
Field
Job reference
Data type
Unsigned8
Values
Comments
0x01 to 0xFF
Unique identification of the job/response pair for the master. The master changes the job
reference with each new job. The slave mirrors the job reference in its response.
Job identifier
Unsigned8
0x01
0x02
Read job
Write job
Specifies the type of job.
In the case of a write job, the changes are made in a volatile memory (RAM). A save
operation is needed in order to transfer the modified data to the non-volatile memory
(p0971, p0977).
Response ID
Unsigned8
0x01
0x02
0x81
0x82
Read job (+)
Write job (+)
Read job (-)
Write job (-)
Mirrors the job identifier and specifies whether job execution was positive or negative.
Negative means:
Cannot execute part or all of job.
The error values are transferred instead of the values for each subresponse.
Drive object
number
Unsigned8
Number of parameters
Unsigned8
0x01 to 0xFE
Number
Setting for the drive object number on a drive unit with more than one drive object. Different
drive objects with separate parameter number ranges can be accessed over the same
DPV1 connection.
0x01 to 0x27
No. 1 to 39
Limited by DPV1 message-frame
length
Defines the number of adjoining areas for the parameter address and/or parameter value
for multi-parameter jobs.
The number of parameters = 1 for single jobs.
Attribute
Unsigned8
0x10
0x20
0x30
Value
Description
Text (not implemented in the case
of SINAMICS)
Type of parameter element accessed
Number of elements
Unsigned8
Parameter number
Unsigned16
0x00
0x01 to 0x75
Special function
No. 1 to 117
Limited by DPV1 message-frame
length
Number of array elements accessed
0x0001 to 0xFFFF
No. 1 to 65535
Addresses the parameter accessed
Communication
284
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Field
Data type
Subindex
Unsigned16
Values
0x0000 to 0xFFFE
Comments
No. 0 to 65534
Addresses the first array element of the parameter to be accessed
Format
Unsigned8
0x02
0x03
0x04
0x05
0x06
0x07
0x08
Other values
Data type integer8
Data type integer16
Data type integer32
Data type unsigned8
Data type unsigned16
Data type unsigned32
Data type floating point
See PROFIdrive profile V3.1
0x40
Zero (without values as a positive
subresponse to a write job)
Byte
Word
Double word
Error
0x41
0x42
0x43
0x44
The format and number specify the adjoining space containing values in the telegram.
Data types in conformity with PROFIdrive Profile shall be preferred for write access. Bytes,
words, and double words are also possible as a substitute.
Number of values
Unsigned8
0x00 to 0xEA
No. 0 to 234
Limited by DPV1 message-frame
length
Specifies the number of subsequent values.
Error values
Unsigned16
0x0000 to 0x00FF
Meaning of error values
--> see table 4-29
The error values in the event of a negative response.
If the values make up an odd number of bytes, a zero byte is appended. This ensures the
integrity of the word structure of the telegram.
Values
Unsigned16
0x0000 to 0x00FF
The values of the parameter for read or write access.
If the values make up an odd number of bytes, a zero byte is appended. This ensures the
integrity of the word structure of the telegram.
For more information on coding PROFIdrive data types, see PROFIdrive-specific data types
(Page 275).
See also
Programming example (Page 312)
Reading and writing parameters with Base Mode Parameter Access (Page 280)
Communication
System Manual, 11/2010
285
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.4
Specifications for PROFIBUS and PROFINET IO
Global and local parameters
PROFIdrive makes a distinction between two parameter ranges:
● Global parameters; these are assigned to the drive unit as a whole. If you want to
address different DOs on a drive unit, a global parameter will always show the same
value.
● Local parameters; these parameters are specific to an axis or a DO. Axis-specific and
DO-specific parameters can have different values for each axis/DO.
In view of this, there are two different types of access under Base Mode Parameter Access:
● Base Mode Parameter Access - local (BMPL)
● Base Mode Parameter Access - global (BMPG)
Specific properties of acyclic communication with PROFIBUS
For communication via PROFIBUS, data set 47 (0x002F) is used to access parameters in
PROFIdrive drives.
● Base Mode Parameter Access – global; the drive unit's parameters (all DOs, global and
local parameters) can be addressed via the drive unit's PAPs.
Note
The PROFIdrive standard specifies that in PROFIdrive drives no pipelining of jobs is
supported, namely, only one "Read/write data record" is possible concurrently for a single
drive device. If, however, more than one PROFIdrive drive unit is connected to a control
via PROFIBUS, a job can be processed in parallel for each of these drive units. The
maximum number then depends on the controller. The data for SIMOTION is specified in
Rule 5 - a maximum of eight concurrent calls is possible in SIMOTION (Page 299).
Specific properties of acyclic communication with PROFINET IO
When PROFINET is used, the basic processes do not change, although the data set number
is then 0xB02E ("Base Mode Parameter Access - local") and 0XB02F ("Base Mode
Parameter Access - global").
In principle, with both BMPL and BMPG it is possible to access global parameters of a drive
via any parameter access point (PAP/MAP) of the drive.
With BMPL, when accessing local parameters (DO), addressing automatically takes place at
the local parameters of the DO to which the PAP/MAP is assigned. Therefore, there is no
need to specify the DO ID in the parameter request structure, or this will be ignored by the
drive.
Use case:
Each axis (DO) has its own parameter access point (this is necessarily the case in singleaxis drives). The axis is selected using the logical address; the user does not need to worry
about managing the DO IDs.
Communication
286
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
With BMPG, it is possible to access not only local parameters of a specific DO via the
PAP/MAP of the DO, but also local parameters of other DOs. The required DO is addressed
via the DO ID in the parameter request structure. This means that in the case of BMPG, a
valid DO ID must also be transferred in all cases.
Use case:
If access to the parameters of a multi-axis drive is only to take place via a PAP/MAP (logical
address), or if parameters are to be read to DOs that do not have a dedicated MAP/PAP
(particularly PROFIBUS devices). In the case of BMPG, the user is responsible for managing
the DO IDs for this purpose.
9.6.5
Error assessment
Description
Two different types of errors can occur in conjunction with Base Mode Parameter Access
services:
● Error in the communication (transfer of data)
For example, the addressed device may not exist and is not switched on. This type of
error is indicated with the return values of the system functions and is defined in the
description of the system functions in the SIMOTION reference lists.
● Error during the processing of the jobs themselves
For example, an attempt is made to write to a read-only parameter.
Error codes for this second type of error are defined for PROFIdrive-compliant drives in
the PROFIdrive standard and listed below.
The ID 0x81 (hex) or 0x82 (hex) response indicates an error for the parameter access.
Error codes are returned in the drive unit's response in the P response/request data block
(see table below). The "Format" field in the parameter response can be used to
distinguish whether the queried parameter represents an error code or a "true" value. See
the Structure after Base Mode Parameter Access - parameter response (Page 282) table,
offset 4, "Format".
This table also contains the coding for the "Format" field. Code 0x44 (hex) indicates an
error code in the "Values" field. Other "Format" values specify the number format (e.g.
Bool, Byte, Integer8, etc.) with which the value in the "Values" field was returned.
Note
The error codes up to 0x19 correspond to the PROFIdrive profile. The error codes from
0x65 onwards are manufacturer-specific and may, therefore, vary from drive to drive.
Communication
System Manual, 11/2010
287
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Error codes in Base Mode Parameter Access responses
Error
code
Meaning
Comments
Additional
info
0x00
Illegal parameter number
Access to a parameter which does not exist
–
0x01
Parameter value cannot be changed.
Modification access to a parameter value which cannot be
changed
Subindex
0x02
Lower or upper value limit exceeded
Modification access with value outside value limits
Subindex
0x03
Invalid subindex
Access to a subindex which does not exist
Subindex
0x04
No array
Access with subindex to non-indexed parameter.
–
0x05
Wrong data type
Modification access with a value which does not match the –
data type of the parameter
0x06
Setting not allowed (only reset
allowed)
Modification access with a value not equal to 0 in a case
where this is not allowed
Subindex
0x07
Description element cannot be
changed.
Modification access to a description element which cannot
be changed
Subindex
0x09
No description data
Access to a description which does not exist (the
parameter value exists)
–
0x0B
No operating priority
Modification access with no operating priority
–
0x0F
No text array exists
Access to a text array which does not exist (the parameter
value exists)
–
0x11
Job cannot be executed due to
operating mode.
Access is not possible temporarily for unspecified reasons. –
0x14
Illegal value
Modification access with a value which is within the limits
but which is illegal for other permanent reasons
(parameter with defined individual values)
Subindex
0x15
Response too long
The length of the present response exceeds the maximum
length that can be transferred.
–
0x16
Illegal parameter address
Impermissible or unsupported value for attribute, number
of elements, parameter number, subindex, or a
combination of these
–
0x17
Illegal format
Write job: illegal or unsupported parameter data format
–
0x18
No. of values inconsistent
Write job: a mismatch exists between the number of
values in the parameter data and the number of elements
in the parameter address.
–
0x19
Drive object does not exist.
You have attempted to access a drive object that does not
exist.
–
0x65
Presently deactivated
You have tried to access a parameter that, although
available, is currently inactive (e.g. n control set and
access to parameter from V/f control).
–
0x6B
Parameter %s [%s]: no write access
with enabled controller
–
–
0x6C
Parameter %s [%s]: unit unknown
–
–
0x6D
Parameter %s [%s]: Write access
only in the commissioning state,
encoder (p0010 = 4).
–
–
Communication
288
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Error
code
Meaning
Comments
Additional
info
0x6E
Parameter %s [%s]: Write access
only in the commissioning state,
motor (p0010 = 3)
–
–
0x6F
Parameter %s [%s]: Write access
only in the commissioning state,
power unit (p0010 = 2)
–
–
0x70
Parameter %s [%s]: Write access
only in the quick commissioning
mode (p0010 = 1)
–
–
0x71
Parameter %s [%s]: Write access
only in the ready state (p0010 = 0)
–
–
0x72
Parameter %s [%s]: Write access
only in the commissioning state,
parameter reset (p0010 = 30)
–
–
0x73
Parameter %s [%s]: Write access
only in the commissioning state,
safety (p0010 = 95)
–
–
0x74
Parameter %s [%s]: Write access
–
only in the commissioning state, tech.
application/units (p0010 = 5)
–
0x75
Parameter %s [%s]: Write access
only in the commissioning state
(p0010 not equal to 0)
–
–
0x76
Parameter %s [%s]: Write access
only in the commissioning state,
download (p0010 = 29)
–
–
0x77
Parameter %s [%s] may not be
written in download.
–
–
0x78
Parameter %s [%s]: Write access
–
only in the commissioning state, drive
configuration (device: p0009 = 3)
–
0x79
Parameter %s [%s]: Write access
only in the commissioning state,
define drive type (device: p0009 = 2)
–
–
0x7A
Parameter %s [%s]: Write access
only in the commissioning state, data
set basis configuration
(device: p0009 = 4)
–
–
0x7B
Parameter %s [%s]: Write access
only in the commissioning state,
device configuration
(device: p0009 = 1)
–
–
0x7C
Parameter %s [%s]: Write access
only in the commissioning state,
device download
(device: p0009 = 29)
–
–
Communication
System Manual, 11/2010
289
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Error
code
Meaning
Comments
Additional
info
0x7D
Parameter %s [%s]: Write access
only in the commissioning state,
device parameter reset
(device: p0009 = 30)
–
–
0x7E
Parameter %s [%s]: Write access
only in the commissioning state,
device ready (device: p0009 = 0)
–
–
0x7F
Parameter %s [%s]: Write access
only in the commissioning state,
device (device: p0009 not equal to 0)
–
–
0x81
Parameter %s [%s] may not be
written in download.
–
–
0x82
Transfer of the control authority
(master) is inhibited by BI: p0806.
–
–
0x83
Parameter %s [%s]: requested BICO
interconnection not possible
BICO output does not supply float values. The BICO input, –
however, requires a float value.
0x84
Parameter %s [%s]: parameter
change inhibited
(refer to p0300, p0400, p0922)
–
–
0x85
Parameter %s [%s]: access method
not defined.
–
–
0xC8
Below the valid values
Modification job for a value that, although within "absolute"
limits, is below the currently valid lower limit
–
0xC9
Above the valid values
Modification job for a value that, although within "absolute"
limits, is above the currently valid upper limit (e.g.
governed by the current inverter rating)
–
0xCC
Write access not permitted
Write access is not permitted because an access key is
not available.
–
9.6.6
Additional information for the parameters of a PROFIdrive drive
Description
From a PROFIdrive drive device, not only the values of parameters, but also the descriptions
of the parameters, can be read.
The P response/request data block in the "Attribute" field is used to express a preference
when sending the "parameter request":
Attribute = 0x10 (hex)
Value
Attribute = 0x20 (hex)
"Parameter Description" parameter description
Attribute 0 0x30 (hex)
Parameter Text
Communication
290
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
If, rather than the value of a parameter, its "Parameter Description" is requested, the "Value"
field in the "Parameter Response" contains the description (data type, possibly the number
of indexes of the parameter, ...).
Note
Normally, parameter descriptions are read-only.
9.6.7
System commands in SIMOTION
9.6.7.1
_writeRecord/_readRecord SIMOTION system commands
Description
A "write data record" can be performed in SIMOTION using the _writeRecord() system
command. A "read data record" can be performed in SIMOTION using the _readRecord()
system command. This makes it also possible to read, write or fetch the description of
parameters in a PROFIdrive drive.
The description of the system functions, their input parameters and return values is
contained in the SIMOTION system documentation:
● C2xx reference list
● D4XX reference list
● P3xx reference list
The _write/_readRecord system commands can be used universally, not just for PROFIdrive
drives, but, for example, also for intelligent sensors on the PROFIBUS or other peripheral
modules that support the so-called DP V1 services for PROFIBUS.
Note
For SIMATIC, the corresponding system functions are
SFB52 WR_REC Write data record
SFB53 RD_REC Read data record
The following is required to be able to use the SIMOTION system commands
_write/_readRecord:
● PROFIBUS DP: Access is possible via a logical I/O address as well as a diagnostics
address.
● PROFINET IO: Access is only possible via the diagnostics address of a Parameter
Access Point (PAP).
Furthermore, the DO ID is only relevant for data set 47 (0x002f) and Global Access
(PROFINET 0xb02f). The diagnostics address of the corresponding PAP is relevant for Local
Access (PROFINET IO 0xb02e), the DO ID is not analyzed.
Communication
System Manual, 11/2010
291
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
As a result, for example in connection with PROFIdrive units, the telegram start address of
the PROFIdrive telegram exchanged cyclically with the device is required.
If a drive has several axes (with a shared PROFIBUS interface connection) on a drive
device, to differentiate the axes in the same device, the "Axis-No." or "DO-ID" in data set 47
is also required. SIMODRIVE 611universal and SINAMICS S120 are examples for such
multi-axis drives. To determine the "DO-ID" for SINAMICS S120, refer to the Acyclical
Communication section in the SINAMICS S120 Commissioning Manual.
"Axis-No." or "DO-ID" = 0 can be used to access the so-called "global parameters".
Examples of such "global parameters" are:
● P0918: PROFIBUS address
● P0964: Device identification (manufacturer, version, number of axes, etc.)
● P0965: Profile number (the implemented PROFIdrive version)
● P0978: List of the DO Ids (the set "Axis-No." or "DO-ID")
9.6.7.2
_writeDrive.../_readDrive... SIMOTION system commands
Description
Whereas the _readRecord and _writeRecord system functions can be used universally for all
devices on PROFIBUS that support the so-called "read/write data record" DP V1 services,
the following commands are specially tailored to PROFIdrive drives using the PROFIdrive
profile:
● _read/writeDriveParameter (reads/writes a, possibly indexed, drive parameter)
● _read/writeDriveMultiParameter (reads/writes several, possibly indexed, drive parameters
for a drive or drive object)
● _readDriveFaults (reads the current fault buffer entry of a drive or drive object)
● _readDriveParameterDescription (reads the descriptive data of a parameter from the
drive or drive object)
● _readDriveParameterDescription (reads the descriptive data of several parameters from
the drive or drive object)
The commands create internally the data set 47 required for the individual functions in
accordance with PROFIdrive profile using the parameters transferred by the user when the
system functions are called, and independently handle the communication to the PROFIdrive
drive using "read/write data record".
The commands are described in the SIMOTION system documentation, refer to the
reference lists for the associated platform.
See also
Scope for the rules (Page 301)
Communication
292
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.7.3
Comparison of the system commands
Description
The following table shows the most important differences between the two groups of system
commands:
Command group
Advantage
_readRecord

Generally usable, not just for 
DP V1 services for drives
The user must create the
data record

Assumes only the

knowledge of some I/O
address on the drive device
and the "DO-ID" or "Axis-No" 
on the drive device
The user must program two
calls for parameter accesses
in a PROFIdrive drive
_writeRecord
_readDrive...

_writeDrive...


Tailored for the typical
communication with
PROFIdrive drives
The user does not need to
know the structure of data
set 47
Disadvantages
Users may need to perform
the required data
conversions themselves

"DO-ID" or "Axis-No" must
be known

Assumes the presence or
knowledge of an I/O address
of the associated drive
object

An I/O address for a drive
object exists only for cyclical
communication (with
PROFIBUS) to the drive
object, possibly, for
example, not for TB30 and
TMxx I/O expansion
modules used exclusively in
the drive

The user must make any
required data conversions
Reduced programming effort
for the user for
communication to drives
Properties of the system commands
The use of the drive-specific _write/_readDrive... system commands on the one hand makes
it easier for you than using general _write/_readRecord commands, since you do not need to
know the structure of data set 47 and do not need to program the successive _writeRecord
and _readRecord calls in sequencers. Because the general usability of these system
functions means the structure of the transferred data records is not known to the system, you
may need to perform the required conversion into the representation in accordance with the
PROFIdrive profile for sending and receiving yourself, see Program example (Page 312).
Up to SIMOTION V4.1, the use of the _write/_readDrive... commands is restricted to those
cases for which there is cyclic data traffic to the associated drive object, because this is
required as an input parameter. From this version up, it is possible to transfer the DO ID or
axis no. via the doId parameter of the system functions. This means that it is possible to
communicate with every DO, even if acyclic data traffic is involved.
Communication
System Manual, 11/2010
293
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
In contrast, _write/_readRecord can also be used to access drive objects even when no
cyclical data traffic exists (or when the I/O address is not known in the application). This
succeeds with _write/_readRecord because the explicit knowledge of the "DO-ID" or "AxisNo." and the knowledge of some I/O address on the device suffices to construct the data set
47. This can be advantageous, for example, when individual drive objects are used only
drive-internal (namely, without cyclical telegram traffic for control) or they are not generally
known for "generic programming".
9.6.7.4
Deleting _readDrive and _writeDrive jobs
Description
You can use the following functions to cancel or delete incorrect read or write jobs, which, for
example, were called with the _readDriveParameter:
● _abortReadWriteRecordJobs, for the _readRecord or _writeRecord functions
● _abortAllReadWriteDriveParameterJobs, for the following functions:
– _readDrive(Multi)ParameterDescription
– _readDrive(Multi)Parameter
– _writeDrive(Multi)Parameter
– _readDriveFaults
You can call the functions without needing to know or read the CommandID.
9.6.8
Rules for using _readRecord and _writeRecord
9.6.8.1
Rule 1 - the job has its own job reference
Each job has its own job reference
This is required so that different jobs can be assigned. The job reference can be reused
when the assignment is clear because of some other characteristic, such as the
chronological sequence.
9.6.8.2
Rule 2 - system functions for asynchronous programming
Description
R2: For asynchronous programming, you must repeatedly call the system function with the
same IDs until the function is terminated ("longrunner"). The correct use of the system
functions _writeRecord and _readRecord based on communication with SINAMICS S120 is
shown in the figure Correct processing with the _readRecord and _writeRecord system
functions.
Communication
294
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
The communication for reading and writing parameters for the SINAMICS S120 is always
performed using data set 47, whose structure is described in the documentation for the
SINAMICS S120, refer to the Acyclical Communication section in the SINAMICS S120
Commissioning Manual.
Communication
System Manual, 11/2010
295
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
$SSOLFDWLRQ
LQWHUIDFH
3DUDPHWHUUHTXHVW
6,027,21
%DVHPRGHLQWHUIDFH
6,1$0,&6
%DVHPRGHLQWHUIDFH
VWF D
OOBZUL
WH5HF
ZLWK
RUGZ
VWF RP
ULWHHQ
PDQG
WU \
,'
PXVW
HDWH
EHUHS
GLQWK
HQH[
W
3DUDP
HWHUUH
TXH VW
G
PPDQ
RN
&R
LDO
LVVLRQ
F\FOH,QLW
UDQVP
W
P
WD
UD
D
J
SUR
QRIG
LWLDWLR
F DOOLQ
7LPHW
QGF
DOOBZ
ULWH
ZLWK
VWF RP 5HF RUGZ
ULWHHQ
PDQG
WU \
,'
HDWH
EHUHS
PXVW F DOO
PDQG
WH
P
R
LD
G
&
UPH
F\FOH,QWH WLOODFWLYH
P
VV
SURJUD VPLVVLRQL
UDQ
GDWDW
H
GLQWK
QH[ W
QWKF D
OOBZUL
WH5HF
ZLWK
RUGZ
VWF RP
ULWHHQ
PDQG
WU \
,'
\RN
WDHQWU ERN
RIGD
-R
Q
LR
OW
V
X
LV
V
LYHUH
UDQVP
7 GZLWKSRVLW
WH
RPSOH
-REF
VWF D
OOB UHD
G 5H F
ZLWK
RUGUH
QGF R
DGHQ
PPDQ
WU \
G,'
H[ W
QWKHQ
DWHGL
UHSH
H
E
W
V
GPX
PPDQ
OO
&R
LDOF D
F\FOH,QLW
LRQRN KURQRXVO\
VPLVV
P
QF
Q
UD
UD
J
W
GDV\
WD
SUR
D
WH
G
LW
I
P
QV
RQR
LQLWLDWL RPPDQGWUD
IF
RQO\L
QGF
DOOB UH
D G 5H
ZLWK
F RUG
QGF R
UHDGH
PPDQ
QWU \
G,'
H
GLQWK
HSHDWH
VWEHU X
P
G
OO
D
PPDQ
LDWHF
&R
QO\LI
UPHG
F\FOH,QWH WLOODFWLYHR VO\
V
P
V
UD
L
Q
URQRX
K
LR
F
V
SURJ
Q
LV
\
V
UDQVP VPLW WHGD
GDWDW
Q
DQGWUD
F RPP
QH[ W
QWKF D
OOB UHD
G 5H F
ZLWK
RUGUH
QGF R
DGHQ
PPDQ
WU \
G,'
3DUDP
3DUDPHWHUUHVSRQVH
ZLWKGDWDEORFN
Figure 9-5
HWHUUH
VS RQV
H
RN
RN
PHWHUV
ISDUD UHVXOW-RE
R
J
LQ
G
H
D
LY
H
LW
V
5
R
LWKS
WHGZ
RPSOH
-REF
Correct processing with the _readRecord and _writeRecord system functions
Communication
296
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.8.3
Rule 3 - read/write data record per PROFIdrive drive unit
Only one read/write data record per PROFIdrive drive device concurrently
The PROFIdrive profile specifies that PROFIdrive drives do not perform any pipelining and
consequently only one job will be processed at any one time. Consequently, this is also
described for SINAMICS S120 in the Commissioning Manual.
Note
It does not matter which system functions are used for the transmission in the controller. A
PROFIdrive drive can process only one job at any one time.
Note
It is certainly possible for other devices on the PROFIBUS that they support several
"read/write data record" in parallel.
Note
Because the _write/_readRecord system functions can be used universally, no interlock is
performed on the controller side to limit only one "read/write data record" per PROFIdrive
drive to be initiated at any one time.
Consequence for the application on the controller:
An interlock must be set to prevent the application or different parts of the application from
sending overlapping jobs to the same PROFIdrive drive device, also refer to section
Interlocking of several calls (Page 302).
9.6.8.4
Rule 4 - the last call wins for SIMOTION
In case of doubt, the last call "wins" for SIMOTION
If Rule 3 "Only one read/write data record per PROFIdrive drive device concurrently" is
violated by a second _writeRecord command being issued to the same drive in the
meantime, the response of the first job can then no longer be read. The attempt to read the
drive response to the first job can no longer be processed by the drive and will be
acknowledged with an error and terminated. The chronological sequence is shown in the
figure The second _writeRecord call wins in case of doubt.
To differentiate between the jobs at the controller, a separate commandID was used for each
of the calls of the _writeRecord and _readRecord system functions.
To also differentiate between the jobs at the drive, unique job references for the first and
second job were assigned in data set 47.
Communication
System Manual, 11/2010
297
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
6,027,21
%DVHPRGHLQWHUIDFH
$SSOLFDWLRQ
LQWHUIDFH
VWSDUDPHWHUUHTXHVW
VWF D
OOBZUL
WH5HF
ZLWK
RUGZ
VWF RP
ULWHHQ
PDQG
WU \
,'
DQGP
UHSH
XVWEH
DWHGL
QWKHQ
H[ W
VWSD
UD
PP
QRN
&R
PLVVLR
F\FOH
WUDQV
WD
D
P
G
RI
SURJUD
LDWLRQ
OOLQLW
VWF D
QGSDUDPHWHUUHTXHVW
PHWHU
UHTXH
VW
VWF D
OOBZUL
WH5HF
ZLWK
RUGZ
QGF R
ULWHHQ
PPDQ
WU \
G,'
WEHU
GPXV
7LPHW
6,1$0,&6
%DVHPRGHLQWHUIDFH
HSHDWH
GLQWK
HQH[
W
QGS
DUDPH
WHUUH
N
PPDQ
VLRQR
&R
QVPLV
F\FOH
DWDWUD
P
G
I
UD
J
R
Q
SUR
LDWLR
OOLQLW
VWF D
TXH VW
VWF D
OOBZUL
WH5HF
ZLWK
RUGZ
QGF R
ULWHHQ
PPDQ
WU \
G,'
\RN
WDHQWU ERN
RIGD
-R
Q
LR
OW
V
X
LV
V
LYHUH
UDQVP
7 GZLWKSRVLW
WH
RPSOH
-REF
VWF D
OOB UHD
G5
ZLWK
UGF RP HF RUGUHD
GHQWU
PDQG
\
,'
3DUDPH
WHUUHVS
RQVH
QWKF D
OOB UHD
G5
ZLWK
UGF RP HF RUGUHD
GHQWU
PDQG
\
,'
DUD
QGS
QGSDUDPHWHU
UHVSRQVH
UHVSR
PHWHU
QVH
WU \RN DWDHQ
N
-RER
QRIG
LR
OW
V
X
LV
V
HUH
QVP
RVLWLY
7UD
S
K
LW
WHGZ
RPSOH
-REF
VWF D
OOB UHD
G5
ZLWK
WKF RP HF RUGUHD
GHQWU
PDQG
\
,'
VWSDUDPHWHUUHVSRQVHFRXOG
QRWEHUHFHLYHG
Figure 9-6
DERUW
UURUMRE
G
) )(
H[HFXWH
)))
H
E
W
R
Q
QF DQ
)XQFWLR
HG
The second _writeRecord call wins in case of doubt
Communication
298
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.8.5
Rule 5 - a maximum of eight concurrent calls is possible in SIMOTION
SIMOTION can manage a maximum of eight _write/_readRecord calls concurrently
Although according to rule 3 (see Rule 3 (Page 297)) only a single job can be processed at
any given time for a single PROFIdrive drive device, it is still possible for the control program
to issue several jobs in parallel.
Although this does not make any sense for a single PROFIdrive drive, it can be sensible for
communication to several drives in parallel (or possibly for other devices that support this).
For SIMOTION, resources are reserved to permit a maximum of eight _write/_readRecord
calls to be managed. The _write/_readRecord commandID is used to differentiate between
the calls. If an attempt is made to issue a ninth concurrent call, this will be acknowledged by
the controller with an error and suppressed.
The chronological sequence is shown in figure Managing 8 jobs simultaneously.
Initially seven _writeRecord jobs are initiated but not completed (no further _writeRecord
calls to complete the jobs). The eighth _writeRecord job will be initiated and further
processed until completion. It is then possible to issue a ninth call (which, however, is not
further processed by the user program). The SIMOTION _writeRecord system function then
acknowledges the attempt to issue the tenth job with error 16#80C3, because this would
have been the ninth "open" job.
Note
The upper limit applies to each SIMOTION controller, not to each bus segment on the
controller. This means it does not matter whether the addressed target devices operate on a
single PROFIBUS segment or are assigned to several PROFIBUS segments.
Note
Because the _write/_readRecord system functions can be used universally, no interlock is
performed on the controller side to limit only one "read/write data record" per PROFIdrive
drive to be initiated at any one time.
Communication
System Manual, 11/2010
299
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
$SSOLFDWLRQ
LQWHUIDFH
3DUDPHWHUUHTXHVW
VWF D
OOBZUL
WH5
ZLWK
WKF RP HF RUGZUL
WHHQWU
PDQG
\
,'
DQGP
7LPHW
6,027,21
%DVHPRGHLQWHUIDFH
6,027,21
%DVHPRGHLQWHUIDFH
UHS
XVWEH
HDWHG
LQWKH
QH[ W
3DUDP
HWHUUH
TXH V
W
PP
QRN
&R
PLVVLR
F\FOH
WUDQV
WD
D
P
G
I
R
SURJUD
LDWLRQ
OOLQLW
VWF D
VWF D
OOBZUL
WH5
ZLWK
WKF RP HF RUGZUL
WHHQWU
PDQG
\
,'
HSH
VWEHU
DWHGL
QWKHQ
H[ W
GPX
PPDQ
RN
&R
LVVLRQ
UDQVP
W
\FOH
WD
F
D
P
RIG
SURJUD
LDWLRQ
OOLQLW
VWF D
QWKF D
OOBZUL
WH5
ZLWK
WKF RP HF RUGZUL
WHHQWU
PDQG
,'
\
RN
HQWU \ RN
IGDWD
OW-RE
VLRQR
X
LV
V
H
P
U
V
LYH
UDQ
7 GZLWKSRVLW
WH
RPSOH
-REF
VWF D
OOBZUL
WH5
ZLWK
WKF RP HF RUGZUL
WHHQWU
PDQG
\
,'
VWEH
QGPX
UHSH
DWHGL
QWKHQ
H[ W
PPD
RN
&R
LVVLRQ
F\FOH
UDQVP
P
GDWDW
I
UD
J
R
Q
UR
S
LDWLR
OOLQLW
VWF D
QWKF D
OOBZUL
WH5HF
ZLWK
RUGZ
WKF R
ULWHHQ
PPDQ
WU \
G,'
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWV
LVEORFNHG
Figure 9-7
GXUL
HUURU
LVVLRQ
UDQVP EH
7
&
Q
QGF D
)))
)
RPPD
TXLUHG
O\5H
QWU \F
GDWDH LPPHGLDWH VVLJQHG
G
D
WH
\
D
WO
UHSH
XUUHQ
FWLRQ
LW \LVF
UGIXQ
F DSDF ZULWH5HF R
B
H
K
W
,Q
HQWU \
ZULWH RGXOH
P
H
K
W
,Q
QJ
Managing 8 jobs simultaneously
Communication
300
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Note
If the error 16#80C3 occurs, you must set the CPU to STOP and then back to RUN. This
deletes the job buffer. In order to prevent the error, you should end the job with an abort
command, if you are unable to end the job.
9.6.9
Rules for SIMOTION _writeDrive.../_readDrive... commands
9.6.9.1
Scope for the rules
Description
The following examples are shown using the _readDriveParameter system function . The
descriptions also apply similarly for the previously mentioned _writeDrive.../_readDrive...
system functions.
9.6.9.2
Rule 6 - repeated call of system function for asynchronous programming
Description
For asynchronous programming, the user must call repeatedly the system function with the
same IDs until the function is terminated ("longrunner").
Communication
System Manual, 11/2010
301
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
The following figure shows the correct use of the _readDriveParameter system function.
$SSOLFDWLRQ
LQWHUIDFH
7LPHW
6,1$0,&6
%DVHPRGHLQWHUIDFH
6,027,21
%DVHPRGHLQWHUIDFH
VWF D
OO
B UHDG
ZLWK
VWF RP
'ULYH
PDQG
3DUDP
HWHU
,'
3DUDP
LQWKH
HSHDWHG
I
XVWEHU
LWLDWLRQR
PDQGP
P
LQ
R
OO
D
&
,QLWLDOF
F\FOH
P
UD
J
QH[ WSUR
RQRN
QVPLVVL
GDWDWUD
QGF
DOOB UH
ZLWK
VWF RP
DG'UL
PDQG
YH3DUD
HWHUUH
TX H VW
PHWHU
,'
WKH
SHDWHGLQ VWEHUH
DOOGDWD
DQGPX
F
P
WH
P
R
LD
G
H
&
OH,QWHUP
JUDPF\F
QH[ WSUR
OODFWLYH
WL
V
Q
R
VL
WUDQVPLV
QWKF D
OOB UHD
ZLWK
VWF RP
G'ULY
PDQG
H3DUD
PHWHU
,'
3DUDP
HWHUUH
VSRQV
H
N
HWHUVR RERN
SDUDP
LQJRI LWLYHUHVXOW
G
D
H
5 GZLWKSRV
WH
RPSOH
-REF
Figure 9-8
9.6.9.3
Correct processing with the _writeDriveParameter and _readDriveParameter system
functions
Rule 7 - multiple concurrent calls per target device
Description
The PROFIdrive standard specifies that PROFIdrive units do not perform any pipelining and
consequently only one job will be processed at any one time. Consequently, this is also
documented for SINAMICS S120 in the SINAMICS S120 Commissioning Manual.
Communication
302
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Because the SIMOTION _write/_readDrive... system commands have been created for the
frequent use with PROFIdrive units, this is already handled by the controller.
Note
It does not matter which system functions are used for the transmission in the controller. A
PROFIdrive drive can process only one job at any one time.
Consequence for the application on the controller:
An interlock must be set to prevent the application or different parts of the application from
sending overlapping jobs to the same PROFIdrive drive device.
The figure below shows the behavior when this is not handled. The attempt to issue a
second job (with unique commandID) to the same target device will be acknowledged with
an error. A further job to the same target device can then be issued only when the first job
has completed or has been canceled, see Section Releasing the Interlocking (Page 304).
$SSOLFDWLRQ
LQWHUIDFH
7LPHW
6,027,21
%DVHPRGHLQWHUIDFH
6,1$0,&6
%DVHPRGHLQWHUIDFH
VWF D
OOB UHD
G'
ZLWK
VWF RP ULYH3DUDP
HWHU
PDQG
,'
VWSD
UD
LQWKH
SHDWHG
VWEHUH
X
QRI
R
P
WL
G
LD
Q
PD
OOLQLW
&RP
LWLDOF D
\FOH,Q
QRN
R
F
WL
P
S
UL
UD
F
J
V
QH[ WSUR SDUDPHWHUGH
JRI
UHDGLQ
PHWHU
UHTXH
VW
VWF D
OOB UHD
G'ULY
ZLWK
H3
QGF R
PPDQ DUDPHWHU
G,'
QGS
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWV
LVEORFNHG
Figure 9-9
DUDP
HWHUUH
TX H VW
Q
DQGF D
UF RPP DOHUUR
F\FOH
,QWHUQ
P
&
UD
J
))
WHGWR
H[ WSUR
))
UDQVPLW
QWKHQ
EHHQW
HDWHGL
\
S
G
H
D
U
H
H
OU
E
VD
UMREKD
$ QRWKH
YH WKHVOD
Interlocking of several _readDriveParameter jobs on a target device
Communication
System Manual, 11/2010
303
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.9.4
Rule 8 - release the interlocking after the complete processing of a job
Enable the interlock only after the processing of a job has been completed
The following figure shows that it does not suffice to wait for "something", but rather the
_read/_writeDrive... system functions must be called repeatedly until the job has been
processed completely. The interlock will not be freed and the internal management
resources released beforehand.
The number of calls has been selected so that the SIMOTION DP V1 interface answers each
subsequent call for the first job with 16#7002 and thus is not processed completely.
Depending on the loading of the bus and the drive, this can also be necessary very
frequently (>25 times). This means an estimate cannot be given.
$SSOLFDWLRQ
LQWHUIDFH
7LPHW
6,027,21
%DVHPRGHLQWHUIDFH
6,1$0,&6
%DVHPRGHLQWHUIDFH
VWF D
OOB UHD
G'
ZLWK
VWF RP ULYH3DUDP
HWHU
PDQG
,'
3DUDP
WKH
HDWHGLQ
EHUHS
I
GPXVW
LDWLRQR
Q
LW
D
P
LQ
P
OO
&R
LWLDOF D
\FOH,Q
QRN
R
F
WL
P
S
UL
UD
J
VF
QH[ WSUR SDUDPHWHUGH
JRI
UHDGLQ
HWHUUH
TXH VW
QGF
DOOB UH
DG
ZLWK
VWF RP 'ULYH3DUDP
PDQG
HWHU
,'
GLQWKH
HSHDWH
J
XVWEHU
UHDGLQ
WHF DOO
PDQGP
LD
P
G
R
H
&
WHUP
,Q
J
LQ
OH
R
\F
OORQJ
JUDPF
WLRQVWL
QH[ WSUR
GHVF ULS
PHWHU
RISDUD
WKF
DOO
ZLWK B UHDG'ULY
H3DUD
VWF RP
PHWHU
PDQG
,'
GLQWKH
HSHDWH
LQJ
XVWEHU
OOUHDG
PDQGP
LDWHF D
P
G
R
H
&
UP
WH
\FOH,Q
QJRLQJ
JUDPF
QVWLOOR
QH[ WSUR
VFULSWLR
HWHUGH
P
UD
D
S
RI
VWF D
OOB UHD
G'ULY
ZLWK
H3
QGF R
PPDQ DUDPHWHU
G,'
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWV
LVEORFNHG
Figure 9-10
Q
DQGF D
F RPP
OHUURU
\FOH
QWHUQD
F
,
P
&
UD
J
WR
))
[ WSUR
VPLW WHG
))
WKHQH
HQWUDQ
HDWHGLQ
DG\EH
H
OU
EHUHS
D
V
UMREKD
$ QRWKH
YH
WKHVOD
Complete processing of a _readDriveParameter required to release the interlock
Communication
304
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.9.5
Rule 9 - canceling jobs for an asynchronous call
CommandID is needed to cancel jobs for an asynchronous call
To re-enable the DP V1 service for the target device,
● either the first job must have completed (repeated calls with the commandID of the first
job)
● or cancelled (again a call of the _readDriveParameter function with the same commandID
as for the first initiation of the job. In addition, the nextCommand input parameter must
have the ABORT_CURRENT_COMMAND value).
Note
From V4.1 and up, it is possible to cancel without knowing the commandID, see Deleting
_readDrive and _writeDrive jobs (Page 294) .
A sample call of the _readDriveParameter function with the first commandID (id1) and
ABORTED_CURRENT_COMMAND has the following form:
Return_Par_read_delete :=
readDriveParameter(
ioId:=INPUT,
logAddress := 256,
parameterNumber := number,
numberOfElements := 0,
subIndex:= 0,
nextCommand :=
ABORT_CURRENT_COMMAND,
commandId := id1);
Communication
System Manual, 11/2010
305
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
The figure below shows the chronological sequence.
$SSOLFDWLRQ
LQWHUIDFH
7LPHW
6,1$0,&6
%DVHPRGHLQWHUIDFH
6,027,21
%DVHPRGHLQWHUIDFH
$X
IU XIB
UHDG'
'ULYH
ULYH
3DUD
PHWHU 3DUDPHWHU
%HIH
OHVHQ
KOV ,'
PLW
F R
PPDQ
G,'
H
GLQWK
3DUDP
HWHUUH
TXH V
W
QH[ W
SHDWH
WEHUH
N
GPXV
Q
D
P
SWLRQR
P
OO
&R
GHVF UL
LDOF D
U
LW
WH
,Q
H
OH
UDP
PF\F
RISD
SURJUD RIUHDGLQJ
RQ
LQLWLDWL
$X
IU XIB
UHDG'
'ULYH
ULYH
3DUD
PHWHU 3DUDPHWHU
%HIH
OHVHQ
KOV ,'
PLW
F R
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWVLV
EORFNHG
PPDQ
G,'
F DQ
PDQG
UF RP OH
OHUUR
F
D
\
UQ
F
QWH
UDP
&,
WSURJ UDQVPLW WHG
)))
HQH[
W
)
GLQWK
EHHQ
\
WH
G
D
D
H
H
S
DOU
EHUH
EKDV
MR
U
H
$ QRWK
VODYH
WRWKH
QGF
DOOB UH
DG'UL
ZLWK
YH3DUD
VWFRP
PHWHU
P DQ G
$ %2 5
,'DQ
7B&8
G
5 5 (1
7B&2
00$
1'
)XUWKHUXVH
RISDUDPHWHUUHTXHVWV
LVSRVVLEOH7KHEORFN
KDVEHHQOLIWHG
Figure 9-11
5
JRI
HDGLQ
SDUDP
HWHUVD
ERUWH
G
Canceling a _readDriveParameter job with known commandID
The process in the following figure shows that it is not possible to cancel a job without
knowledge of the original commandID. Not the first job, but rather the cancel attempt will be
canceled. The reason is that the commandID is used for managing the various jobs in the
system.
Communication
306
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
$SSOLFDWLRQ
LQWHUIDFH
7LPHW
6,027,21
%DVHPRGHLQWHUIDFH
6,1$0,&6
%DVHPRGHLQWHUIDFH
VWF D
OOB UHD
G'
ZLWK
VWF RP ULYH3DUDP
HWHU
PDQG
,'
3DUDP
GL
HSHDWH
VWEHU
QGPX
D
P
P
OO
&R
LDOF D
N
F\FOH,QLW
VLRQR
P
QVPLV
SURJUD RIGDWDWUD
RQ
LQLWLDWL
QWKHQ
HWHUUH
TXHV
W
H[ W
QGF
DOOB UH
DG'UL
ZLWK
YH3DUD
QGF R
PHWHU
PPDQ
G,'
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWV
LVEORFNHG
F DQ
PDQG
UF RP PF\FOH
OHUUR
D
UD
J
UQ
WH
H[ WSUR
&,Q
WHGLQWKHQ
HHQ
HD
HDG\E
EHUHS MREKDVDOU
H
Y
U
H
OD
$ QRWK
RWKHV
LW WHGW
WUDQVP
UGFD
OOB UHD
G'ULY
ZLWK
H3DUD
QGFR
PHWHU
P P DQ
$ %2 5
G,'
7B&8
55(1 DQG
7B&2
00$
1'
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWV
LVEORFNHG
Figure 9-12
WLYH
RUMRE
RQ DF
DOHUU
,QWHUQ WRDERUWDQ
(
SW
P
H
WW
HG$
DERUW
RQ
IXQFWL
No cancelation of a _readDriveParameter job with new CommandID
Note
It is therefore important that the user program retains the commandID of the jobs until the job
has completed or has been canceled.
Note
Take particular care, for example, through control by other conditions, that in the user
program the processing of the _write/_readDrive... functions is not bypassed before they
have completed.
Communication
System Manual, 11/2010
307
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.9.6
Rule 10 - management of sixteen jobs
SIMOTION manages a maximum of 16 calls in parallel for different devices
The controller has limited resources (memory space) available for storing the management
data for _write/_readDrive... system function calls. If too many calls are issued in parallel, an
error message will be issued, similar to the limit for _read/_writeRecord in Section Maximum
Number of Calls (Page 299).
For SIMOTION, resources are reserved to permit a maximum of sixteen calls of
_writeDrive.../_readDrive... system functions to be managed. The commandID is used to
differentiate between the calls. If an attempt is made to issue a seventeenth concurrent call,
this will be acknowledged by the controller with an error and suppressed.
9.6.9.7
Rule 11 - parallel jobs for different drive devices
Parallel jobs to different drive units are possible
The figure Parallel processing of _readDriveParameter jobs to different drive devices of a
controller shows that parallel jobs can be processed with different drive devices.. The
SIMOTION D445 controller uses the SINAMICS Integrated of a D445 (for example) as first
PROFIdrive drive unit and the CX32 expansion module as second PROFIdrive drive unit.
In the example, a total of three read jobs (two jobs to the first drive device (SINAMICS
Integrated) and one job to the second drive device (CX32)) are issued with the
_readDriveParameter system function.
● The first read job for the SINAMICS Integrated is intentionally called just once so that the
interlock acts.
● The second read job is then issued to the second PROFIdrive drive device (CX32). This
job is processed successfully.
● The third read job is addressed again to the first drive device (SINAMICS Integrated) and
can no longer be executed successfully because the first job is still running.
Communication
308
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
6,027,21
LQWHUIDFH
7LPHW
6,1$0,&6
%DVHPRGHLQWHUIDFH
6,027,21
%DVHPRGHLQWHUIDFH
VWF D
OOB UHD
G'
ZLWK
VWF RP ULYH3DUDP
HWHU
P
WR&8
IURP6 DQG,'
,1$0
,&6,Q
WHJUD
WHG
VWSD
UD
PHWH
UUHTX
H
VW
LQWKH
SHDWHG
VWEHUH
QRI
DQGPX
QLWLDWLR
P
L
P
OO
R
D
F
&
LWLDO
\FOH,Q
F
P
UD
J
N
QH[ WSUR GHVFULSWLRQR
HWHU
SDUDP
VWF D
OOB UHD
G'ULY
ZLWK
H3DUD
QG
PHWHU
WR&8 F RPPDQG
,'
IURP&
; LQWKH
SHDWHG
VWEHUH
X
QRI
R
P
WL
G
LD
Q
PD
DOOLQLW
&RP
,QLWLDOF
F\FOH
P
UD
J
N
QH[ WSUR GHVFULSWLRQR
HWHU
SDUDP
QGS
DUDP
HWHUUH
TXH V
W
QGF
DOOB UH
DG'UL
ZLWK
YH3DUD
QG
PHWHU
WR&8 F RPPDQG
,'
IURP&
; DWHGLQ
HUHSH
F DOO
PXVWE
G
WH
Q
LD
D
G
P
H
&RP
,QWHUP
VWLOO
PF\FOH
F ULSWLRQ
WSURJUD
WHUGHV
H
WKHQH[
P
UD
SD
I
R
J
LQ
UHDG
J
RQJRLQ
QWKF D
OOB UHD
G'ULY
ZLWK
H3DUD
QG
PHWHU
WR&8 F RPPDQG
,'
IURP&
; QGSD
N-RE
HWHUVR
SDUDP
I
N
R
R
J
E
R
LQ
G
XOW 5HD
LYHUHV
KSRVLW
WHGZLW
F RPSOH
UDPHWH
UUHVSR
QVH
VWF D
OOB UHD
G'ULY
ZLWK
H3DUD
UG
PH
IURP6 F RPPDQG
,'WR& WHU
,1 $ 0
,& 6,
QWHJUD 8
WHG
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWV
WR6,1$0,&6,QWHJUDWHG
'3VODYHLVEORFNHG
Figure 9-13
F DQ
PPDQG
UURUF R
\FOH
WHUQDOH
Q
F
,
P
&
UD
J
G
))
H[ WSUR
))
QVPLW WH
QWKHQ
HHQWUD
HDWHGL
OUHDG\E
EHUHS
D
V
D
K
UMRE
$ QRWKH
ODYH
WRWKHV
Parallel processing of _readDriveParameter jobs to different drive devices of a
controller
Communication
System Manual, 11/2010
309
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.10
Special features
9.6.10.1
Rule 12 - data buffering of up to 64 drive objects
SIMOTION buffers the data of up to 64 drive objects
The first call to the functions _write/_readDrive... after system power-up runs considerably
longer than subsequent calls to the same drive object.
● The system must first set up internal management information that can be accessed
faster in subsequent calls to the same drive object.
In SIMOTION, the data of up to 64 drive objects can be stored for use with
_write/_readDrive... The distinction is made using the I/O address.
9.6.10.2
Rule 13 - a mix of system functions can be used
A mix of the _writeRecord/_readRecord and _writeDrive.../_readDrive... system functions can be used
A mixed use of the following system commands is generally possible:
● _writeRecord/_readRecord SIMOTION system commands
● _writeDrive.../_readDrive... SIMOTION system commands
Note
However, it is important to appreciate that a missing interlock of the system commands
from the two command groups means several jobs could be issued to a PROFIdrive drive
(see following section), which a PROFIdrive drive cannot process. Handling the systeminternal interlocking for _write/_readDrive....
The figure Mixed use of _readDrive... and _read/_writeRecord shows that the
_write/_readRecord functions, in particular, can be used for the same target device when,
because of a running _readDriveParameter job, further jobs with the same command are
suppressed by the system – this situation must be blocked by the user because it cannot be
processed by a PROFIdrive.
Communication
310
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
6,027,21
%DVHPRGHLQWHUIDFH
$SSOLFDWLRQ
LQWHUIDFH
6,1$0,&6
%DVHPRGHLQWHUIDFH
VWF D
OOB UHD
G'
ZLWK
VWF RP ULYH3DUDP
HWHU
PDQG
,'
7LPHW
DWHG
HUHSH
LQWKH
QH[ W
VWSD
UD
PHWH
UUHTX
H
E
PXVW
PDQG
&RP
F DOO
O
LD
N
LW
OH,Q
VLRQR
PF\F
QVPLV
SURJUD RIGDWDWUD
RQ
LQLWLDWL
VW
VWF D
OOB UHD
G'ULY
ZLWK
H3
QGF R
PPDQ DUDPHWHU
G,'
)XUWKHUXVHRI
SDUDPHWHUUHTXHVWV
LVEORFNHG
QGSDUDPHWHUUHTXHVW
F DQ
PDQG
UF RP PF\FOH
OHUUR
D
UD
J
UQ
G
WH
H[ WSUR WUDQVPLW WH
&,Q
WHGLQWKHQ
HHQ
E
\
G
D
D
H
H
EHUHS MREKDVDOU
HU
$ QRWK
H
Y
OD
V
WRWKH
VWF D
OOBZUL
WH5
ZLWK
UGF RP HF RUGZUL
WHHQWU
PDQG
\
,'
QGS
W
HQH[
GLQWK
SHDWH
H
U
H
E
W
GPXV
RN
PPDQ FDOO
ULSWLRQ
&R
UGHVF
LWLDO
WH
,Q
H
P
OH
F
DUD
PF\
JRIS
SURJUD
UHDGLQ
RQRI
LQLWLDWL
DUDP
HWHUUH
TXH VW
QWKF D
OOBZUL
WH5
ZLWK
UGF RP HF RUGZUL
WHHQWU
PDQG
,'
\
RN
HQWU \ RN
IGDWD
R
RE
Q
LR
OW
LVV
VX
LYHUH
UDQVP
7 GZLWKSRVLW
WH
RPSOH
-REF
VWF D
OOB UHD
G5
ZLWK
WKF RP HF RUGUHD
GHQWU
PDQG
\
,'
UHSH
XVWEH
DWHGL
QWKHQ
H[ W
GP
PPDQ
OO
&R
LDOF D
N
F\FOH,QLW
VLRQR
P
QVPLV
SURJUD RIGDWDWUD
RQ
LQLWLDWL
QWKF D
OOB UHD
G5
ZLWK
WKF RP HF RUGUHD
GHQWU
PDQG
\
,'
QGSDUDPHWHUUHVXOW
Figure 9-14
DUD
QGS
PHWHU
UHVSR
QVH
\RN
WDHQWU ERN
RIGD
R
Q
LR
OW
V
LV
VX LYHUH
UDQVP
7 GZLWKSRVLW
WH
RPSOH
-REF
Mixed use of _readDrive... and _read/_writeRecord
Communication
System Manual, 11/2010
311
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
9.6.10.3
Rule 14 - interlocking for the mixed use of commands
The user must interlock for the mixed use of the commands from the two command groups
When the following system commands are used together, it is possible that more than one
"read/write data record" is issued concurrently to a single device because for SIMOTION
interlocking and buffering is performed only within the command groups but not between
command groups.
● _writeRecord/_readRecord SIMOTION system commands
and
● _writeDrive.../_readDrive... SIMOTION system commands
If necessary, this must be interlocked by the user to prevent data loss/overlapping because
the PROFIdrive profile specifies that a PROFIdrive drive does not perform any pipelining and
consequently can process only one job at any given time.
9.6.11
Program examples
9.6.11.1
Programming example
Description
The following example shows how the _writeRecord and _readRecord system commands
can be used to fetch the error code from parameter p0945 of a SINAMICS drive (drive object
DO3, I/O address 256).
Example
The sample program can be called, for example, in the BackgroundTask, because so-called
"asynchronous programming" is used.
//=========================================================================
// demonstrate reading parameter 945 (fault code) via data set 47
// using SIMOTION system functions _write/_readRecord (asynchronous call)
// INPUT address 256 is assumed to address the SINAMICS
// drive is DO3 in SINAMICS S120
//=========================================================================
INTERFACE
PROGRAM record;
// declare request type
TYPE
// declare struct of header request
Header_Type_Request : STRUCT
Request_Reference : USINT;
Request_Id : USINT;
Communication
312
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Axis : USINT;
Number_Of_Parameter : USINT;
END_STRUCT;
// declare struct of parameter address request
Parameter_Address_Request : STRUCT
Attribute : USINT;
Number_Of_Elements : USINT;
Parameter_Number : UINT;
SubIndex : UINT;
END_STRUCT;
// declare struct of request
Request : STRUCT
Header : Header_Type_Request;
ParameterAddress : Parameter_Address_Request;
END_STRUCT;
// declare struct of header response
Header_Type_Response : STRUCT
Response_Reference : USINT;
Response_Id : USINT;
Axis : USINT;
Number_Of_Parameter : USINT;
END_STRUCT;
// declare struct of parameter address response
Parameter_Address_Response : STRUCT
Format : USINT;
Number_Of_Elements : USINT;
Value_Or_Error_Value : DWORD; // dependent on format
END_STRUCT
// declare struct of response
Response : STRUCT
Header : Header_Type_Response;
ParameterAdress : Parameter_Address_Response;
END_STRUCT;
END_TYPE
// declare global variables
VAR_GLOBAL
// declare variable, that represents the dataset 47 request
myRequest : Request;
// declare variable, that represents the dataset 47 response
myResponse : Response;
// declare variable, that returns a value after calling _writeRecord
myRetDINT : DINT;
// declare variable, that returns a struct after calling _readRecord
myRetstructretreadrecord : StructRetReadRecord;
// declare array of byte,
// which helps to create the request/response
// with marshalling function
Communication
System Manual, 11/2010
313
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
bytearray : ARRAY[0..239] OF BYTE;
// declare array of USINT,
// because the systemfunctions _writeRecord and _readRecord
// use this array
usintarray : ARRAY[0..239] OF USINT;
// declare command ids
id_write, id_read : commandidtype;
// declare the variable, to control step by step execution
// start cycle with setting to 0 by user
program_step : USINT := 3; // initially idle;
END_VAR
END_INTERFACE
Implementation
// ==================================================================
IMPLEMENTATION
PROGRAM record
CASE program_step OF
// initialize ------------------------------------------------------0:
// get command ids for calling system functions
id_write := _getcommandid();
id_read := _getcommandid();
// header from the request
// here: Axis-No / DO-ID is 3
// read Parameter 945 (drive fault code)
myRequest.Header.Request_Reference := 16#10; // arbitrary no.
myRequest.Header.Request_Id := 16#1; // read request
myRequest.Header.Axis := 16#3; // axis no 3
myRequest.Header.Number_Of_Parameter := 16#1; // one parameter
// parameter address from the request
myRequest.ParameterAddress.Attribute := 16#10; // read value
myRequest.ParameterAddress.Number_Of_Elements := 16#1; // one index
myRequest.ParameterAddress.Parameter_Number := 945; // parameter no.
myRequest.ParameterAddress.SubIndex := 0;
// convert myRequest to a BIBBYTEARRAY to use the marshalling functions
// two step conversion from user defined data type
// to usintarray type required by system functions
bytearray := ANYTYPE_TO_BIGBYTEARRAY(myRequest,0);
usintarray := BIGBYTEARRAY_TO_ANYTYPE(bytearray,0);
// next step
program_step := 1;
// execute _writeRecord ---------------------------------------------1:
Communication
314
System Manual, 11/2010
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
// the systemfunctions _writeRecord and _readRecord
// have to be called in sequence.
// the functions occur always as pair.
// call systemfunction _writeRecord to send the request
myRetDINT := _writerecord(
ioid := INPUT,
logaddress := 256, // io address
recordnumber := 47, // data set 47 for DPV1
offset := 0,
datalength := 240,
data := usintarray, //
nextcommand := IMMEDIATELY, // use asynchronous
commandid := id_write // use known commandID
);
// check the return value
// keep calling until _writeRecord ready
IF(myRetDINT = 0)THEN
// next step
program_step := 2;
END_IF;
// wait for requested data ----------------------------------------------// execute _readRecord
2:
// call systemfunction _readRecord to receive the data
myRetstructretreadrecord := _readrecord(
ioid := INPUT,
logaddress := 256, // io address
recordnumber := 47, // data set 47 for DPV1
offset := 0,
datalength := 240,
nextcommand := IMMEDIATELY, // use asynchronous
commandid := id_read // use known commandID
);
// check the return value
// keep calling until _readRecord ready
IF(myRetstructretreadrecord.functionresult = 0)THEN
// next step
program_step := 3; // --> done
// get data
// two step conversion into user defined data type
// from usintarray type given by system functions
bytearray :=ANYTYPE_TO_BIGBYTEARRAY(
myRetstructretreadrecord.data,0);
myResponse := BIGBYTEARRAY_TO_ANYTYPE(bytearray,0);
// received data can now be read from myResponse...
END_IF;
END_CASE;
END_PROGRAM
END_IMPLEMENTATION
Communication
System Manual, 11/2010
315
PROFIdrive
9.6 Acyclic communication (Base Mode Parameter Access)
Communication
316
System Manual, 11/2010
10
Appendix
10.1
Standard PROFIBUS/PROFINET data types (only available in
English)
Subset of IEC 61158-5 standard data types for use in PROFIBUS/PROFINET profiles
Coding of most of the data types in these profile guidelines is defined in IEC 61158-6:2003,
clause 6.2. However, the usage in practice is different in some cases. Thus it is highly
recommended to follow the definitions and hints within this annex. The next edition of IEC
61158 is supposed to comply with the content of this annex.
Boolean
A Boolean is representing a data type that only can have two different values i.e. TRUE and
FALSE. Hint: for efficiency reasons this data type is not used in application profiles.
Numeric Identifier
Data type name
Value range
Resolution
Length
1
Boolean
True/false
-
1 Octet
Bits
7
6
5
4
3
2
1
0
True
x
x
x
x
x
x
x
x
0x01 to
0xFF
False
0
0
0
0
0
0
0
0
0x00
Integer16
An Integer16 is representing a signed number depicted by 16 bits.
Numeric Identifier
Data type name
Value range
Resolution
Length
3
Integer16
-32768 ≤ i ≤ 32767
1
2 Octets
In two’s complement; the most significant bit (MSB) is the bit after the sign (SN) in the first
Byte.
SN = 0: positive numbers and zero
SN = 1: negative numbers
Bits
7
6
5
Octets 1
SN
2
Octets 2
27
26
14
2
4
13
25
2
3
12
24
2
2
11
23
2
1
10
22
2
0
9
28
21
20
Communication
System Manual, 11/2010
317
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
Integer32
An Integer32 is representing a signed number depicted by 32 bits.
Numeric Identifier
Data type name
Value range
Resolution
Length
4
Integer32
-2 ≤ i ≤ 2 -1
1
4 Octets
31
31
In two’s complement; the most significant bit (MSB) is the bit after the sign (SN) in the first
Byte.
SN = 0: positive numbers and zero
SN = 1: negative numbers
Bits
7
6
Octets 1
SN
Octets 2
5
4
2
2
21
2
28
2
20
2
2
27
2
19
1
2
26
2
18
0
2
2
2
22
Octets 3
215
214
213
212
211
210
29
28
Octets 4
27
26
25
24
23
22
21
20
23
29
3
30
2
25
224
2
17
216
Integer64
An Integer64 is representing a signed number depicted by 64 bits.
Numeric Identifier
Data type name
Value range
Resolution
Length
55
Integer64
-2 ≤ i ≤ 2 -1
1
8 Octets
62
62
In two’s complement; the most significant bit (MSB) is the bit after the sign (SN) in the first
Byte.
SN = 0: positive numbers and zero
SN = 1: negative numbers
Bits
7
6
Octets 1
SN
Octets 1
5
4
2
2
54
Octets 1
247
246
245
244
243
Octets 1
239
238
237
236
235
Octets 1
2
2
2
2
2
Octets 2
223
222
221
220
219
Octets 3
215
214
213
212
211
Octets 4
2
2
2
2
2
31
7
30
6
2
2
53
29
5
2
60
2
52
2
2
55
61
3
62
28
4
2
59
2
51
27
3
1
2
58
2
50
0
2
57
256
2
49
248
252
241
240
234
233
232
2
2
25
224
218
217
216
210
29
28
2
2
20
26
2
1
Communication
318
System Manual, 11/2010
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
Unsigned8
An Unsigned8 is representing an unsigned number depicted by 8 bits ("enumerated"). Some
application profiles (e.g. PROFIsafe) are using this data type for the coding of individual
single bits.
Numeric Identifier
Data type name
Value range
Resolution
Length
5
Unsigned8
0 ≤ i ≤ 255
1
1 Octet
Table 10- 1
Enumerated:
Bits
7
Octets 1
2
Table 10- 2
6
2
7
5
6
2
4
5
2
3
4
2
2
2
3
1
2
2
0
20
1
Single bits:
Bits
7
6
5
4
3
2
1
0
Octets 1
7
6
5
4
3
2
1
0
Unsigned16
An Unsigned16 is representing an unsigned number depicted by 16 bits ("enumerated").
Some application profiles (e.g. PROFIsafe) are using this data type for the coding of
individual single bits.
Numeric Identifier
Data type name
Value range
Resolution
Length
6
Unsigned16
0 ≤ i ≤ 65535
1
2 Octets
Table 10- 3
Enumerated:
Bits
7
Octets 1
Octets 2
Table 10- 4
Bits
6
2
15
2
7
5
2
14
2
6
4
2
13
2
5
3
2
12
2
4
2
2
11
2
3
1
2
10
2
2
0
2
9
28
2
1
20
Single bits:
7
6
5
4
3
2
1
0
Octets 1
15
14
13
12
11
10
9
8
Octets2
7
6
5
4
3
2
1
0
Communication
System Manual, 11/2010
319
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
Unsigned32
An Unsigned32 is representing an unsigned number depicted by 32 bits ("enumerated").
Some application profiles (e.g. PROFIsafe) are using this data type for the coding of
individual single bits.
Numeric Identifier
Data type name
Value range
Resolution
Length
7
Unsigned32
0 ≤ i ≤ 4294967295
1
4 Octets
Table 10- 5
Enumerated:
Bits
7
Octets 1
6
5
2
22
2
29
2
21
3
2
28
2
20
2
2
27
2
19
1
2
26
2
18
0
2
Octets 2
2
23
Octets 3
215
214
213
212
211
210
29
28
Octets 4
27
26
25
24
23
22
21
20
Table 10- 6
2
30
4
31
2
25
224
2
17
216
Single bits:
Bits
7
6
5
4
3
2
1
0
Octets 1
31
30
29
28
27
26
25
24
Octets 2
23
22
21
20
19
18
17
16
Octets 3
15
14
13
12
11
10
9
8
Octets 4
7
6
5
4
3
2
1
0
Unsigned64
An Unsigned64 is representing a signed number depicted by 64 bits.
Numeric Identifier
Data type name
Value range
Resolution
Length
56
Unsigned64
0 ≤ i ≤ 264-1
1
8 Octets
In two’s complement; the most significant bit (MSB) is the bit after the sign (SN) in the first
Byte.
SN = 0: positive numbers and zero
SN = 1: negative numbers
Bits
7
6
5
4
3
2
1
Octets 1
263
262
261
260
259
258
257
256
Octets 2
2
2
2
2
2
2
2
49
248
Octets 3
247
246
245
244
243
252
241
240
Octets 4
239
238
237
236
235
234
233
232
Octets 5
2
2
2
2
2
2
2
25
224
Octets 6
223
222
217
216
55
31
54
30
53
29
221
52
28
220
51
27
219
50
26
218
0
Communication
320
System Manual, 11/2010
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
Bits
7
6
Octets 7
2
Octets 8
2
15
7
5
2
14
2
6
4
2
13
2
5
3
2
12
2
4
2
2
11
2
3
1
2
10
2
2
0
2
9
28
2
1
20
Float32
A Float32 is representing a number defined by ANSI/IEEE 754 as single precision.
Numeric Identifier
Data type name
Value range
Resolution
Length
8
Float32
refer to ANSI/IEEE 754
refer to ANSI/IEEE 754
4 Octets
SN: sign 0 = positive, 1 = negative.
Bits
7
6
5
4
3
SN
27
26
25
24
20
2-1
2-2
2-3
2-4
2-8
2-9
2-10
2-11
2-16
2-17
2-18
2-19
Octets 1
Octets 2
2
1
0
23
22
21
2-5
2-6
2-7
2-13
2-14
2-15
2-21
2-22
2-23
Exponent (E)
(E)
Fraction (F)
Octets 3
Fraction (F)
Octets 4
2-12
Fraction (F)
2-20
Float64
A Float64 is representing a number defined by ANSI/IEEE 754 as single precision.
Numeric Identifier
Data type name
Value range
Resolution
Length
15
Float64
refer to ANSI/IEEE 754
refer to ANSI/IEEE 754
8 Octets
SN: sign 0 = positive, 1 = negative.
Bits
7
6
5
4
3
Octets 1
2
1
0
26
25
24
2-2
2-3
2-4
2-10
2-11
2-12
2-18
2-19
2-20
2-26
2-27
2-28
2-34
2-35
2-36
Exponent (E)
SN
210
23
22
Octets 2
29
28
Exponent (E)
21
27
Fraction (F)
20
Octets 3
2-1
Fraction (F)
2-5
2-6
2-7
2-8
2-13
2-14
2-15
2-16
2-21
2-22
2-23
2-24
2
2
2
2
Octets 4
2-9
Fraction (F)
Octets 5
2-17
Fraction (F)
Octets 6
2-25
Fraction (F)
-29
Octets 7
-30
-31
-32
2-33
Fraction (F)
Communication
System Manual, 11/2010
321
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
Bits
7
6
5
2
2
2
-37
-38
4
2
-39
3
2
-40
Octets 8
2
2
-41
1
-42
2
0
-43
2-44
2-51
2-52
Fraction (F)
2-45
2-46
2-47
2-48
2-49
2-50
Visible String
This data type is defined as the ISO 646 string type. Characters are based on 8 Bit ASCII.
Numeric Identifier
Data type name
Value range
Resolution
Length
9
VisibleString
refer to ISO 646
-
variable
Bits
7
6
5
4
3
Octets 1
1. Character
Octets 2
2. Character
...
2
1
0
...
Octets n
n. Character
OctetString
An OctetString is an ordered sequence of Bytes, numbered from 1 to n.
Numeric Identifier
Data type name
Value range
Resolution
Length
10
OctetString
-
-
variable
Bits
7
6
5
4
3
Octet 1
1. Character
Octet 2
2. Character
...
2
1
0
...
Octet n
n. Character
BYTE
A Byte is 1 octet.
Numeric Identifier
Data type name
Value range
Resolution
Length
22
Byte
-
-
1 Octet
Bits
Octet 1
7
6
5
4
3
2
1
0
1. Byte
Communication
322
System Manual, 11/2010
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
WORD
A Word is an ordered sequence of 2 octets.
Numeric Identifier
Data type name
Value range
Resolution
Length
23
Word
-
-
2 Octets
Bits
7
6
5
4
3
Octet 1
1. Byte
Octet 2
2. Byte
2
1
0
DWORD
A DWord is an ordered sequence of 4 octets.
Numeric Identifier
Data type name
Value range
Resolution
Length
24
DWord
-
-
4 Octets
Bits
7
6
5
4
3
Octet 1
1. Byte
Octet 2
2. Byte
Octet 3
3. Byte
Octet 4
4. Byte
2
1
0
LWORD
A LWord is an ordered sequence of 8 octets.
Numeric Identifier
Data type name
Value range
Resolution
Length
25
LWord
-
-
8 Octets
Bits
7
6
5
4
3
Octet 1
1. Byte
Octet 2
2. Byte
Octet 3
3. Byte
Octet 4
4. Byte
Octet 5
5. Byte
Octet 6
6. Byte
Octet 7
7. Byte
Octet 8
8. Byte
2
1
0
Communication
System Manual, 11/2010
323
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
TimeOfDay
This data type is composed of two elements of unsigned values representing the time of day
and the date. The first element is an Unsigned32 data type and contains the number of
milliseconds since midnight, where midnight = 0.
The second element is of type Unsigned 16 containing the number of completed days since
January 1, 1984.
Numeric Identifier
Data type name
12
TimeOfDay
Value range
Resolution
Length
0 ≤ i ≤ (228-1) ms
-
6 Octets
0 ≤ i ≤ (216-1) days
The time is interpreted as 32 bit value. The first 4 (MSB) bits have the value zero. The date
indication is coded as 16 bit value.
Bits
7
6
5
4
3
2
1
Octets 1
0
0
0
0
227
226
225
224
Octets 2
2
2
2
2
2
2
2
2
Octets 3
215
214
213
212
211
210
29
28
Octets 4
27
26
25
24
23
22
21
20
Octets 5
2
15
2
14
2
13
2
12
2
11
2
10
2
9
28
Octets 6
2
7
2
6
2
5
2
4
2
3
2
2
2
1
20
23
22
21
20
19
18
0
17
Number of
millisecond
s since
midnight
16
days since
January 1st,
1984
TimeDifference
This data type is composed of two elements of unsigned values and expresses the
difference in time. The first element is an Unsigned32 data type that contains the fractional
portion of one day in milliseconds. The optional second element is an Unsigned16 data type
that contains the difference in days.
Numeric Identifier
Data type name
Value range
Resolution
Length
13
TimeDifference
0 ≤ i ≤ (232-1) ms
-
4 or 6 Octets
0 ≤ i ≤ (2 -1) days
16
The time is interpreted as 32 bit value. The first 4 (MSB) bits have the value zero. The date
indication is coded as 16 bit value.
Bits
7
Octets 1
6
5
2
30
2
22
4
2
21
2
20
2
19
2
Octets 3
215
214
213
212
211
210
29
28
Octets 4
2
7
2
6
2
5
2
4
2
3
2
2
2
1
20
Octets 5
2
15
2
14
2
13
2
12
2
11
2
10
2
9
28
Octets 6
27
21
20
23
2
26
2
18
0
Octets 2
24
2
27
1
23
25
2
28
2
2
26
2
29
3
31
22
2
25
224
2
17
216
Number of
millisecond
s (of one
day)
Number of
days
(optional)
Communication
324
System Manual, 11/2010
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
Date
This data type is composed of six elements of unsigned values and expresses calendar date
and time. The first element is an Unsigned16 data type and gives the fraction of a minute in
milliseconds. The second element is an Unsigned8 data type and gives the fraction of an
hour in minutes. The third element is an Unsigned8 data type and gives the fraction of a day
in hours with the most significant bit indicating Standard Time or Daylight Saving Time. The
fourth element is an Unsigned8 data type. Its upper three (3) bits give the day of the week
and its lower five (5) bits give the day of the month. The fifth element is an Unsigned8 data
type and gives the month. The last element is Unsigned8 data type and gives the year. The
values 0 ... 50 correspond to the years 2000 to 2050; the values 51 ... 99 correspond to the
years 1951 to 1999.
Numeric Identifier
Data type name
Value range
Resolution
Length
50
Date
0 ms ≤ i ≤ 99 years
-
7 Octets (Unsigned16 + 5
x Unsigned8)
Bits
7
6
5
4
3
2
1
Octet 1
215
214
213
212
211
210
29
28
Octet 2
2
2
6
2
2
2
2
2
2
Octet 3
res
res
25
24
23
22
21
20
0...59
minutes
Octet 4
SU
res
res
24
23
22
21
20
0...23 hours
22
21
20
24
23
22
21
20
1...7 day of
week
Octet 6
res
res
25
24
23
22
21
20
1...12
month
Octet 7
res
26
25
24
23
22
21
20
0...99 years
Octet 5
7
5
day of week
4
3
2
0
1
0
day of month
0...59999
millisecond
s
1...31 day
of month
SU: Standard Time = 0; Daylight Saving Time = 1
day of week: 0 Monday = 1; Tuesday =2.....Sunday = 7
res = reserved
TimeOfDay without date indication
This data type consists of one element of an unsigned value and expresses the time of day
without date indication. The element is an Unsigned32 data type and contains the time after
midnight in milliseconds.
Numeric Identifier
Data type name
Value range
Resolution
Length
52
TimeOfDay without date
indication
0 ≤ i ≤ (228-1)
ms
4 Octets (Unsigned32)
The time is interpreted as 32 bit value.
Communication
System Manual, 11/2010
325
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
Bits
7
6
5
4
3
Octet 1
0
0
0
0
Octet 2
2
Octet 3
215
214
213
212
211
210
29
28
Octet 4
27
26
25
24
23
22
21
20
23
2
22
2
21
2
20
2
2
27
2
19
1
2
26
2
18
0
2
25
224
2
17
216
Number of
millisecond
s since
midnight
TimeDifference with Date indication
This data type is composed of two elements of unsigned values that express the difference
in time. The first element is an Unsigned32 data type that provides the fractional portion of
one day in milliseconds. The second element is an Unsigned16 data type that provides the
difference in number of days.
Numeric Identifier
Data type name
Value range
Resolution
Length
53
TimeDifference with date
indication
0 ≤ i ≤ (232-1) ms
ms, days
6 Octets (Unsigned32 +
Unsigned16)
0 ≤ i ≤ (216-1) days
The time is interpreted as 32 bit value. The date indication is coded as 16 bit value.
Bits
7
6
Octet 1
2
Octet 2
223
222
221
220
219
Octet 3
215
214
213
212
Octet 4
2
7
2
6
2
5
2
4
Octet 5
2
15
2
14
2
13
2
12
Octet 6
27
31
2
5
30
26
2
4
29
25
2
3
28
24
2
2
218
217
216
211
210
29
28
2
3
2
2
2
1
20
2
11
2
10
2
9
28
21
20
26
22
2
0
224
23
2
1
25
27
Number of
millisecond
s (of one
day)
Number of
days
TimeDifference without Date indication
This data type consists of one element of an unsigned value that expresses the difference in
time. he element is an Unsigned32 data type providing the fractional portion of one day in
milliseconds.
Numeric Identifier
Data type name
Value range
Resolution
Length
54
TimeDifference without
date indication
0 ≤ i ≤ (232-1) ms
ms, days
4 Octets (Unsigned32)
The time is interpreted as 32 bit value.
Bits
7
6
Octet 1
2
Octet 2
223
222
221
220
219
Octet 3
215
214
213
212
Octet 4
2
2
2
2
31
7
2
5
30
6
2
4
29
5
2
3
28
4
2
2
218
217
216
211
210
29
28
2
2
2
20
26
2
2
0
224
3
2
1
25
27
1
Number of
millisecond
s (of one
day)
Communication
326
System Manual, 11/2010
Appendix
10.1 Standard PROFIBUS/PROFINET data types (only available in English)
NetworkTime
This data type is based on the RFC 1305 standard and composed of two unsigned values
that express the network time related to a particular date. Its semantic has changed in IEC
61158-6:2003.
The first element is an Unsigned32 data type that provides the network time in seconds
since 1.1.1900 0.00,00(UTC) or since 7.2.2036 6.28,16(UTC) for time values less than
0x9DFF4400, which represents the 1.1.1984 0:00,00(UTC). The second element is an
Unsigned32 data type that provides the fractional portion of seconds in 1/232 s. Rollovers
after 136 years are not automatically detectable and are to be maintained by the application.
Numeric Identifier
Data type name
Value range
Resolution
Length
58
NetworkTime
Byte 1 to 4:
0 ≤ i ≤ (232-1)
S
8 Octets
Byte 5 to 8:
0 ≤ i ≤ (232-1)
(1/232) s
(Unsigned32 +
Unsigned32)
Bits
7
Octet 1
6
5
Octet 3
215
214
213
212
211
210
29
28
Octet 4
2
2
2
2
2
2
2
1
20
Octet 5
231
230
229
228
227
226
225
224
Octet 6
223
222
221
220
219
218
217
216
Octet 7
215
214
213
212
211
210
29
28
Octet 8
2
2
2
2
2
2
2
20
5
5
2
2
20
4
4
2
2
19
3
3
2
26
2
18
0
2
6
2
21
27
1
Octet 2
6
2
28
2
23
7
2
22
29
3
2
7
2
30
4
31
2
2
2
25
224
2
17
216
1
Number of
seconds
since
1.1.1900.
Rollover
after 136
years.
Thus, next
would be
7.2.2036.
Fractional
portion of
seconds:
1/232 s
The Time Stamp mechanism in PROFIBUS DP is using this data type. However, the
semantic is slightly different:
● The least significant Bit of the fractional portion (20) is device internally used to indicate a
synchronized or unsynchronized state of the clock time.
NetworkTimeDifference
This data type is composed of an integer value and of an unsigned value that express the
difference in network time. The first element is an Integer32 data type that provides the
network time difference in seconds. The second element is an Unsigned32 data type that
provides the fractional portion of seconds in 1/232 s.
Numeric Identifier
Data type name
Value range
Resolution
Length
59
NetworkTimeDifference
Byte 1 to 4:
-231 ≤ i ≤ (231-1)
S
8 Octets
Byte 5 to 8:
0 ≤ i ≤ (232-1)
(1/232) s
(Integer32 + Unsigned32)
Communication
System Manual, 11/2010
327
Appendix
10.2 Profile-specific PROFIBUS/PROFINET data types (only available in English)
Bits
7
6
5
4
3
2
1
0
Octet 1
SN
230
229
228
227
226
225
224
Octet 2
223
222
221
220
219
218
217
216
Octet 3
215
214
213
212
211
210
29
28
Octet 4
2
2
2
2
2
2
2
1
20
Octet 5
231
230
229
228
227
226
225
224
Octet 6
2
2
2
2
2
2
2
2
Octet 7
215
214
213
212
211
210
29
28
Octet 8
27
26
25
24
23
22
21
20
7
23
6
22
5
21
4
20
3
19
2
18
17
Signed
number of
seconds
Fractional
portion of
seconds:
1/232 s
16
See also
PROFIdrive-specific data types (Page 275)
10.2
Profile-specific PROFIBUS/PROFINET data types (only available in
English)
Existing PROFIBUS/PROFINET profile specific data types
This topic contains the profile specific data types of PROFIBUS/PROFINET.
Float32+Unsigned8 (former "DS33")
This data structure consists of the value and the status of a Float32 parameter. The
parameter can be an input or output..
Numeric Identifier
Data type name
Value range
Resolution
Length
101
Float32 +Unsigned8
See Float32 and
Unsigned8
-
5 Octets
SN: sign 0 = positive, 1 = negative
Bits
7
6
5
4
SN
27
26
25
Octets 1
Octets 2
2
1
0
23
22
21
2-5
2-6
2-7
2-13
2-14
2-15
Exponent (E)
(E)
24
Fraction (F)
20
2-1
2-2
2-3
2-8
2-9
2-10
2-11
2-16
2-17
2-18
2-19
2-20
2-21
2-22
2-23
27
26
25
24
23
22
21
20
Octets 3
2-4
Fraction (F)
Octets 4
Octet 5
3
2-12
Fraction (F)
Communication
328
System Manual, 11/2010
Appendix
10.2 Profile-specific PROFIBUS/PROFINET data types (only available in English)
Unsigned8+Unsigned8 (former "DS34")
This data structure consists of the value and the status of the Unsigned8 parameter. The
parameter can be an input or output.
Numeric Identifier
Data type name
Value range
Resolution
Length
102
Unsigned8 + Unsigned8
See Unsigned8
-
2 Octets
In two’s complement; the most significant bit (MSB) is the bit after the sign (SN) in the first
Byte.
Bits
7
6
Octet 1
2
Octet 2
2
7
7
5
2
6
2
6
4
2
5
2
5
3
2
4
2
4
2
2
3
2
3
1
2
2
2
2
0
2
1
20
2
1
20
OctetString2+Unsigned8 (former "DS35")
This data structure consists of the value and the status of the OctetString parameter. The
parameter can be input or output.
Numeric Identifier
Data type name
103
OctetString2 + Unsigned8 see OctetString2 and
Unsigned8
Bits
7
6
Value range
5
4
Length
-
3 Octets
3
Octet 1
2
1
0
22
21
20
1. Byte
Octet 2
Octet 3
Resolution
2. Byte
27
26
25
24
23
Unsigned16_S
This data structure consists of the value and the status embedded in an unsigned 16 data
type. The parameter using this data type can be input or output.
Numeric Identifier
Data type name
Value range
Resolution
Length
104
Unsigned16_S
0 to 213 + 0 to 3
1
2 Octets
Bits
7
6
Octets 1
2
2
Octets 2
25
24
13
5
12
2
4
11
23
2
3
10
22
2
2
9
21
2
1
8
20
2
0
7
St1
26
St0
Communication
System Manual, 11/2010
329
Appendix
10.2 Profile-specific PROFIBUS/PROFINET data types (only available in English)
st1 (bit1)
st0 (bit0)
0
0
Meaning
input channel: bad (value is fail-safe value)
output channel: reserved
0
1
input channel: simulation
output channel: reserved
1
0
input channel: uncertain
output channel: reserved
1
1
input channel: good
output channel: reserved
Integer16_S
This data structure consists of the value and the status embedded in an integer 16 data type.
The parameter using this data type can be input or output.
Numeric Identifier
Data type name
Value range
Resolution
Length
105
Integer16_S
- 212 to 212 –1
1
2 Octets
+ 0 to 3
SN: sign 0 = positive, 1 = negative
Bits
7
6
5
4
3
2
1
0
Octets 1
SN
212
211
210
29
28
27
26
Octets 2
2
2
2
2
2
2
St1
St0
5
4
st1 (bit1)
st0 (bit0)
0
0
3
2
1
0
Meaning
input channel: bad (value is fail-safe value)
output channel: reserved
0
1
input channel: simulation
output channel: reserved
1
0
input channel: uncertain
output channel: reserved
1
1
input channel: good
output channel: reserved
Unsigned8_S
This data structure consists of the value and the status embedded in an Unsigned8 data
type. The parameter using this data type can be an input or output.
Numeric Identifier
Data type name
Value range
Resolution
Length
106
Unsigned8_S
0 to 2
1
1 Octet
5
+ 0 to 3
Communication
330
System Manual, 11/2010
Appendix
10.2 Profile-specific PROFIBUS/PROFINET data types (only available in English)
Bits
7
6
Octets 1
2
2
5
5
2
4
st1 (bit1)
st0 (bit0)
0
0
4
3
2
3
2
2
2
2
1
0
1
0
St1
St0
Meaning
input channel: bad (value is fail-safe value)
output channel: reserved
0
1
input channel: simulation
output channel: reserved
1
0
input channel: uncertain
output channel: reserved
1
1
input channel: good
output channel: reserved
OctetString_S
This data structure consists of the value and the status embedded in an octet string data
type. The parameter using this data type can be an input or output.
In the scope of this profile, this is the preferred data type for digital values. It contains the
value of a binary channel as a bit in a value field (ch(x)), and a status information in a status
field (st1(x) and st0(x)) coded as shown below. If a channel is unused, its position in the
value field and in the status field has to be set to 0.
The value field and the status field are packed into an OctetString with the bit coding as
shown below. This data type is defined as OctetString_S.
Numeric Identifier
Data type name
Value range
Resolution
Length
107
OctetString_S
See OctetString and
below
-
n Octets
Bits
bit7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
Octet 1
ch(8)
ch(7)
ch(6)
ch(5)
ch(4)
ch(3)
ch(2)
ch(1)
***
***
***
***
***
***
***
***
***
Octet m
ch(n)
ch(n-1)
ch(n-2)
ch(n-3)
ch(n-4)
ch(n-5)
ch(n-6)
ch(n-7)
Octet m+1
st1(4)
st0(4)
st1(3)
st0(3)
st1(2)
st0(2)
st1(1)
st0(1)
***
***
***
***
***
***
***
***
***
Octet 3*m
st1(n)
st0(n)
st1(n-1)
st0(n-1)
st1(n-2)
st0(n-2)
st1(n-3)
st0(n-3)
ch(x) value for channel x; st(x) status information for channel x; 1<x≤n
Communication
System Manual, 11/2010
331
Appendix
10.2 Profile-specific PROFIBUS/PROFINET data types (only available in English)
st1 (bit1)
st0 (bit0)
0
0
Meaning
input channel: bad (value is fail-safe value)
output channel: reserved
0
1
input channel: simulation
output channel: reserved
1
0
input channel: uncertain
output channel: reserved
1
1
input channel: good
output channel: reserved
F message trailer with 4 octets
This data structure consists of the status/control byte, consecutive number, and 2 byte CRC
parameters in PROFIsafe's V1-mode or status/control byte and 3 byte CRC parameters in
PROFIsafe's V2- mode. This data type can be associated with input or output data up to 12
byte. So far the data type "OctetString" with numeric identifier "10" has been used for the
coding of the F message trailer. For new product developments the new data type
specification shall be considered.
Numeric Identifier
Data type name
Value range
Resolution
Length
110
F message trailer with 4
octets
PROFIsafe: V1-mode
and V2-mode
-
4 Octets
Bits
7
6
5
4
3
2
Octet 1
Status/Control octet
Octet 2
Consecutive number (V1-mode) or High-octet
1
0
CRC(V2-mode) *)
Octet 3
CRC *)
Octet 4
Low-byte CRC (least significant octet) *)
* Byte ordering according to IEC 61158-5 Type 3
F message trailer with 5 octets
This data structure consists of the status/control byte and 4 byte CRC parameters in
PROFIsafe's V2-mode. This data type can be associated with input or output data up to 122
byte.
Numeric Identifier
Data type name
Value range
Resolution
Length
111
F message trailer with 5
octets
PROFIsafe: V2-mode
-
5 Octets
Communication
332
System Manual, 11/2010
Appendix
10.2 Profile-specific PROFIBUS/PROFINET data types (only available in English)
Bits
7
6
5
4
3
2
Octet 1
Status/Control octet
Octet 2
1. byte CRC (most significant octet) *)
Octet 3
2. byte CRC *)
Octet 4
3. byte CRC *)
Octet 5
4. byte CRC (least significant octet) *)
1
0
* Byte ordering according to IEC 61158-5 Type 3
F message trailer with 6 octets
This data structure consists of the status/control byte, consecutive number and 4 byte CRC
parameters in PROFIsafe's V1-mode. This data type can be associated with input or output
data up to 122 byte. So far the data type "Octet String" with numeric identifier "10" has been
used for the coding of the F message trailer. For new product developments the new data
type specification shall be considered.
Numeric Identifier
Data type name
Value range
Resolution
Length
111
F message trailer with 6
octets
PROFIsafe: V1-mode
-
6 Octets
Bits
7
6
5
4
3
2
Octet 1
Status/Control octet
Octet 2
Consecutive number
Octet 3
1. byte CRC (most significant octet) *)
Octet 4
2. byte CRC *)
Octet 5
3. byte CRC *)
Octet 6
4. byte CRC (least significant octet) *)
1
0
* Byte ordering according to IEC 61158-5 Type 3
See also
PROFIdrive-specific data types (Page 275)
Communication
System Manual, 11/2010
333
Appendix
10.2 Profile-specific PROFIBUS/PROFINET data types (only available in English)
Communication
334
System Manual, 11/2010
Index
B
_
_readRecord
Application, 294
_tcpCloseConnection
TCP communication, 164
_tcpCloseConnection system function, 164
_tcpCloseServer
TCP communication, 164
_tcpCloseServer system function, 164
_tcpOpenClient
TCP communication, 161
_tcpOpenClient system function, 161
_tcpOpenServer
TCP communication, 161
_tcpOpenServer system function, 161
_tcpReceive
TCP communication, 163
_tcpReceive system function, 163
_tcpSend
TCP communication, 162
_tcpSend system function, 162
_udpAddMulticastGroupMembership, 181
_udpAddMulticastGroupMembership system
function, 181
_udpDropMulticastGroupMembership, 182
_udpReceive, 180
_udpReceive system function, 180
_udpSend, 179
_udpSend system function, 179
_writeRecord
Application, 294
_xreceive, 36
_xsend, 35
A
Acyclic communication, 279
AG_LRECV (FC60), 171
AG_LSEND (FC50), 171
AG_RECV (FC6), 171
AG_SEND (FC5), 171
AG_SRECV (FC63), 171
AG_SSEND (FC53), 171
Base Mode Parameter Access, 279
C
CIDR
Classless Inter-Domain Routing, 188
Commissioning
PROFIsafe with Scout, 254, 261
Communication
Between SIMOTION and SIMATIC, 25
SIMATIC as an I-slave, 30
SIMATIC as DP slave, 30
SIMOTION as an I-slave, 27
SIMOTION as DP slave, 27
Configuring
Shared Device, 241
Configuring the sender, 118
Controller Application Cycle Factor, 62
Cycle clock scaling, 62
D
Data block (PAP), 282
Diagnostics model, 139
DP cycle
PROFINET IO, 94
DP slave
SIMOTION, 27
DP V1 communication
Program example, 312
Drive Based Safety
Functions, 207
Message frames, 209
E
Ethernet
LCom library, 156
Properties of the subnets, 155
Using interface, 156
Ethernet CP communication
Configuring, 172, 184
Communication
System Manual, 11/2010
335
Index
F
F-Proxy
I device F-Proxy, 215
PROFIsafe, 210
FTP file transfer, 206
I
I device F-Proxy
Basic information, 215
Configuring, 224, 233
Configuring procedure, 222
Failsafe address, 239
PROFIBUS integrated, 221
PROFIBUS topology, 219
PROFINET, 220
Properties, 218
Requirement, 216
Runtime, 218
Insert PROFINET board, 82
IRT High Performance, 48
I-slave
SIMATIC, 30
SIMOTION, 27
I-slave-F-Proxy, 253
L
LCom library, 156
P
PN/PN coupler, 137
PROFIBUS
Acyclic communication, 279
Cyclic services, 25
DPV1 communication, 279
PROFIBUS master-master
S7 system functions, 33
SIMOTION functions, 35
PROFIBUS telegram, 256, 261
PROFIdrive
Application classes, 273
Profile, 267
PROFINET
Inserting CBE30, 82
PROFINET IO
IO controller, 40
IO device, 40
RT, 46
SIMATIC - SIMOTION data exchange, 138
PROFIsafe
Adapting F addresses for the entire project, 230
Basic information, 207
Configuring SIMOTION D, 254
Failsafe data exchange broadcast, 252, 261
F-Proxy, 210
I-slave F-Proxy, 252
Master-slave coupling, 257
PROFIBUS I slave F-Proxy, 254
PROFIBUS, requirement, 252
Upgrading PROFIBUS to PROFINET, 237
PROFIsafe communication, 254, 261
PROFIsafe slot, 256, 261
R
Recipients
Configuring, 119
References, 4
Routing
S7 routing, 188
S
S7 communication blocks, TCP
Ethernet CP, 171, 176
Onboard Ethernet interface, 165
UDT65, 166, 168
S7 communication blocks, UDP
Ethernet CP, 183
Onboard Ethernet interface, 182
Send clock
DP cycle, 94
Shared device
Configuring, 246
Shared Device
Basic information, 240
Configuring, 241
SIMATIC F-CPU, 254, 261
SIMOTION IT
IT-DIAG, 203
OPC XML DA, 205
Variable access, 204
SINAMICS drive unit, 256, 261
SP slave
SIMATIC, 30
Speed controller
Automatic controller setting, 207
Sync domain, 49
creating, 90
Communication
336
System Manual, 11/2010
Index
Sync master
Redundant, 72
T
TCP communication, 157
LCom library, 156
SIMOTION system functions, 160
Topology
Configuring, 98
U
UDP communication, 177
System functions, 179
UDT65, 166, 168
X
X_RCV, 34
X_SEND, 33
Communication
System Manual, 11/2010
337
Index
Communication
338
System Manual, 11/2010
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement